"use strict";Array.prototype.indexOf||(Array.prototype.indexOf=function(r,t){var n;if(null==this)throw new TypeError('"this" is null or not defined');var e=Object(this),o=e.length>>>0;if(0===o)return-1;var i=+t||0;if(Math.abs(i)===1/0&&(i=0),i>=o)return-1;for(n=Math.max(i>=0?i:o-Math.abs(i),0);o>n;){if(n in e&&e[n]===r)return n;n++}return-1}),Array.prototype.forEach||(Array.prototype.forEach=function(r){var t,n;if(null==this)throw new TypeError("this is null or not defined");var e=Object(this),o=e.length>>>0;if("function"!=typeof r)throw new TypeError(r+" is not a function");for(arguments.length>1&&(t=arguments[1]),n=0;o>n;){var i;n in e&&(i=e[n],r.call(t,i,n,e)),n++}}),Array.prototype.filter||(Array.prototype.filter=function(r,t){if("Function"!=typeof r&&"function"!=typeof r||!this)throw new TypeError;var n=this.length>>>0,e=new Array(n),o=this,i=0,f=-1;if(void 0===t)for(;++f!==n;)f in this&&r(o[f],f,o)&&(e[i++]=o[f]);else for(;++f!==n;)f in this&&r.call(t,o[f],f,o)&&(e[i++]=o[f]);return e.length=i,e});