!function(){for(var d="function"==typeof Object.defineProperties?Object.defineProperty:function(d,A,N){if(N.get||N.set)throw new TypeError("ES3 does not support getters and setters.");d!=Array.prototype&&d!=Object.prototype&&(d[A]=N.value)},A="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global&&null!=global?global:this,N=["String","prototype","repeat"],$=0;$>>=1)&&(A+=A);return N};r!=n&&null!=r&&d(A,t,{configurable:!0,writable:!0,value:r});var i=this;function a(d,A){var N,$=d.split("."),e=i;$[0]in e||!e.execScript||e.execScript("var "+$[0]);for(;$.length&&(N=$.shift());)$.length||void 0===A?e=e[N]?e[N]:e[N]={}:e[N]=A}function o(d,t){function A(){}A.prototype=t.prototype,d.$=t.prototype,d.prototype=new A,(d.prototype.constructor=d).w=function(d,A,N){for(var $=Array(arguments.length-2),e=2;e