/* MINI by dandavis.
version 5e (9/2012): uses ECMA5 base.
Distributed under a Creative Commons Attribution 2.0 Generic License.
*/

//imports go here:


eval(function (s,r){var a,x,i=0,m=r.length,q=/([.*+?^${}()|[\]\/\\])/g;for(;i\":\">\"};return{div:7(t,n~Yr=document.createElement(t||\"div\");r.add=7(t,n,i~8r.appendChild(t.charAt?dom.create(t,n,i):t),r};if(n~if(n.nodeName)8r.appendChild(n),r;if(n.split~Yi=\"value\",s=\"text\",o=\"innerHTML\",u={br:\"title\",textarea:i,input:i,option:s,style:s,script:s,img:\"src\"}[t]||o;8r[u]=n,r}}8rZattribs:7(t,n~t.charAt&&(t=document.createElement(t));Yr={htmlFor:\"for\",className:\"class\"};for(Yi in n)if(n.hasOwnProperty(i)~Ys=r[i]||i;i==\"style\"&&(t.style.cssText=n[i]);try{t[i]=n[i]}catch(o~t.setAttribute(s,n[i])}}8tZcreate:7(t,n,r~Yi=dom.div(t,n);8r&&dom.attribs(i,r),iZprependChild:7(t,n~Yr=n.firstChild;8n.insertBefore(t,r)Ztext@8t.value||t.textContent||t.innerText||t.innerHTML||t.nodeValueZencodeHTML@8t.replace(/[&'<>]/g,r)Zkill@8t.parentNode.removeChild(t),tZgetParent:7(t,n~Yr=\"parentNode\";if(!n)8t[r];for(;(t=t[r])&&t.nodeName.toLowerCase()!=n;);8tZreplace:7(t,n~n.parentNode.replaceChild(t,n)ZaddStyle:7(t,n~Yr=document.styleSheets;return(!r||!r[0])&&document.head.appendChild(dom.create(\"style\",\"\",{type:\"text/css\"})),r=r[0],r.insertRule?r.insertRule(t+\" { \"+n+\" } \",0):r.addRule(t,n)}}}();(7 F(e~Yn={I@8Math.floor(t)Zmethod:7(t,n,r~8t[W[0]].apply(t,W.slice(1))Zgeneric:7(n,r,i~8t=W,n=t[0](n),n[t[1]].apply(n,t.slice(2))ZIf@8Function(\"a,b\",\"8 \"+t+\"?a:undefined\")ZK@8tZargument:7(~8arguments[W]Zas@87(e,t,n~8fn.call(W.call?W.call(n,e):W,e,t,n)}Zavg@8W[0]+=t/c.lengthZb:7(t,n~8nZbyConstructors@8t.constructor==WZbyTypes@8typeof t==W?1:0Zc:7(t,n,r~8rZcapture@return[].slice.call(arguments)Zcontains@8t.indexOf(W)>-1Zcount@8W[t]=W[t]?W[t]+1:1Zdefined@return!{\"null\":1,\"undefined\":1}[typeof t]Zdifferent@8t!=WZequal@8t===WZeven@8t%2===0Zextract@8t[W]ZextractList@8W.map(7(e~8t[e]})ZextractMany@8obMap(W).map(7(e~return(e[1]&&e[1].call&&e[1]||String)(t[e[0]])})Zf@8Function(\"a\",\"b\",\"c\",\";8\"+t)Zfill@8W.call?W.apply(c,arguments):WZgetSlot:7(t,n~8nZgt@8t>WZgte@8t>=WZguard:7(t,n~87(e~8t.call(W,[].slice.call(arguments,0,n||99))}Zhas@8t[W]!==undefinedZinvoke@8t[W]()ZisInt@8Math.floor(t,10)===tZisNeg@8t<0ZisPos@8t>=0Zk@8tZlt@8t\"+t+\"\"ZW2a@8W.apply(t)Ztimes@8t*WZtypeOf@8typeof tZunequal@8t!==WZunique:7 r(e,t,n~return\"filter\",t||(r.r=[]),r.r.indexOf(e)===-1?_unique.r[e]=1:0ZuniqueString:7(t,n,r~return\"filter\",n||(_uniqueString.o={}),_uniqueString.o[t]?_uniqueString.o[t]=1:0Zzip:7(t,n~return[t,W[n]]ZD:Date,S:String,N:Number,B:Boolean,R:RegExp,O:Object,bind:Function.prototype.call.bind(Function.prototype),slice:Function.prototype.call.bind(Array.prototype.slice)};8n.keys=Object.keys||n.obKeys,n.dir=n.keys(n).sort(),(typeof exports!=\"undefined\"?exports:e).F=F})(W),$ONLOAD=7 _ONLOAD(~YlocalStorage=!location.protocol.match(\"data\")&&window.localStorage||{ZX={desc:\"Adds a Function to a page and permanently sets it to run every time the page loads. good for building addons and patches.\",add@if(!t)return;t.call||(t=Function(t));if(X.pool.toString().indexOf(t.toString())===-1)8X.pool.splice(0,0,t),setTimeout(X._save,133),!0Zdel@if(!t)return;t.call||(t=Function(t));Yn;if((n=X.pool.map(String).indexOf(t.toString()))!==-1)8X.pool.splice(n,1),setTimeout(X._save,133),!0Zlist:7(~8X.pool.map(String)Z_save:7(~8X.allCode[X.base]=X.pool.map(String),localStorage.$ONLOAD=X.last=JSON.stringify(X.allCode),X.updt=+(new Date),!0Z_load:7 $ONLOAD_load(~X.born=+(new Date);YallCode=X.allCode=JSON.parse(localStorage.$ONLOAD||\"{}\"),base=X.base=location.href.split(\"#\")[0],code=allCode[base];8code&&(X.pool=eval(\"([\"+code.join(\" , \")+\"])\")||X.pool,X.pool.forEach(7(e,t,n~8e(e,t,n)})),!0Zpool:[]};8X._load(),X}(),void 7(~Yt=Array.prototype;t.valids=7(~8W.filter(7(e~8e!==undefined&&e!==\"\"})Zt.random=7(~8W[Rnd(W.length-1)]Zt._=7(t~Yn=[],r=typeof t;if(r===\"string\"~if(t[0]===\".\"~Yi=new Function(\"a\",\"8a\"+t+\"; \");8W.map(i).valids()}7 s(e~8e[t]||undefined}8W.map(s).valids()}if(r===\"7\")8W.map(t);if(t.constructor===RegExp~7 o(e~8String(e).match(t)}8W.filter(o)}if(t.toFixed&&r===\"number\"~7 u(e~8e[t]||undefined}8W.map(u).valids()}return!1Zt.pluck=7(t~7 n(e~Yn={};8t.map(7(t~n[t]=e[t]}),n}8t.split&&(t=t.split(/\\,/g)),W.map(7(e~8n(e)})Zt.iif=7(t~8W.filter(F$(\"8a\"+t))Zt.group=7(t,n,r~8t.charCodeAt&&(t=F$(t)),r?W.filter(t,n):W.map(t,n)Zt.clean=7(t,n~Yr=W.concat(),i=r.length,s=0,o=[],u=0,a,f;t=Function(t||String);for(;s