(function(){var f;function aa(a,b){var c="";void 0===b?b=8:8=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function h(a){return aa(a,2)}function p(a){return aa(a,4)}function ba(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));return b}var ca={"&":"&","<":"<",">":">",'"':""","'":"'"};function da(a){return a.replace(/[&<>"']/g,function(a){return ca[a]})}function r(){return Date.now()||+new Date} function s(a,b,c,d,e){b=!!b;var g=0,k=null,n=ba(a),m=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(m.onreadystatechange=function(){4===m.readyState&&(m.onreadystatechange=void 0,k=m.responseText,200!=m.status&&(g=m.status||-1),d&&e&&e.call(d,n,k,g,void 0))});if(c){var l="",q;for(q in c)c.hasOwnProperty(q)&&(l&&(l+="&"),l+=q+"="+encodeURIComponent(c[q]));l=l.replace(/%20/g,"+");m.open("POST",a,b);m.setRequestHeader("Content-type","application/x-www-form-urlencoded"); m.send(l)}else m.open("GET",a,b),m.send();a=[];b||(k=m.responseText,200!=m.status&&(g=m.status||-1),d&&e&&e.call(d,n,k,g,void 0),a=[g,k]);return a}function u(a){window?window.alert(a):console.log(a)}function v(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function ea(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0=a.La?a.Gb:a.speed+1,!0)}}(this),a=!0}return a}; f.U=function(a,b,c){this.a=a;this.Z=b;this.pc=c-b+1;this.Xa=this.Z+this.pc;this.Z?u("unsupported CPU address buffer offset ("+this.Z+")"):this.O()};f.aa=function(a,b){if(a&&!this.B){this.M=b;(this.l=L(b,"debugger"))&&this.l.Kf();var c=L(b,"video");c&&(this.qc=function(a){return function(){ua(a)}}(c),this.V=function(a){return function(){a.V()}}(c));this.B=!0;this.reset(!0);this.update()}};function va(a,b,c,d,e){0>wa(a.Ba,b,c,d,e)&&(a.lc>b&&(a.lc=b),a.mc=a.Ba[d][0]&&b<=a.Ba[d][1]&&a.Ba[d][3].call(a.Ba[d][2],b,c)}function N(a,b,c,d,e){0>wa(a.ra,b,c,d,e)&&(a.Kb>b&&(a.Kb=b),a.Lb=a.ra[d][0]&&b<=a.ra[d][1]&&a.ra[d][3].call(a.ra[d][2],b,c)}function wa(a,b,c,d,e){for(var g=0;ga.Gb&&a.ta&&(d=a.ta);d>a.lb&&a.speedc?c=0:a.speed==a.nd?a.ta<=a.lb&&(c=0):a.speed==a.La&&(c=0);a.xc+=a.pb;return c} f.xa=function(){if(H(this,!0)){this.fa||(M(this),this.M&&this.M.start(),this.fa=!0,this.q.run&&(this.q.run.innerHTML="Halt"),this.V());this.xc>=this.ob&&Aa(this,!0);this.pb=0;this.Sf=r();try{do{this.step(this.Vb);var a=this.ua-this.D;this.Wa+=a;this.pb+=a;this.ua=this.D=0;this.nb-=this.Vb;0>=this.nb&&(this.nb+=this.Gd,this.qc());this.mb-=this.Vb;0>=this.mb&&(this.mb+=this.Fd,Ba(this));this.Ua-=this.Vb;if(0>=this.Ua){this.Ua+=this.uc;break}}while(this.fa)}catch(b){this.S();this.update();H(this,!1); K(this,b.message||b);return}setTimeout(function(a){return function(){a.xa()}}(this),Da(this))}else this.update(),this.M&&this.M.stop(this.Ed,this.Wa)}; f.step=function(a){var b=!0;this.b=this.h=-1;var c;if(c=a)if(c=this.l)c=this.l,c=0=d.Ca.length&&(d.jb=0));d=!!g}if(d){b=void 0;this.S();break}this.d++;this.s[a].call(this);if(0<=this.b){this.b>=this.lc&&this.b<=this.mc&&xa(this,this.b,this.d);if(d=c)d=this.l,e=!1,Ea(d,this.b,d.Aa,"read")&&(e=!0),d=!!e;if(d){b= !1;this.S();break}this.b=-1}else if(0<=this.h){this.h>=this.Kb&&this.h<=this.Lb&&za(this,this.h,this.d);if(d=c){d=this.l;var e=this.h,g=this.a[this.h],k=!1;(g&255)!=g&&(G(d,"invalid value at "+p(e)+": "+g),k=!0);Ea(d,e,d.Da,"write")&&(k=!0);d=!!k}if(d){b=!1;this.S();break}this.h=-1}this.D-=this.zf[a]}while(0>1)&128?64:0),b=b|(a.f&128?128:0);return a.v&60|b} function Ha(a){a.v|=8;a.s[97]=a.bg;a.s[101]=a.dg;a.s[105]=a.ag;a.s[109]=a.Yf;a.s[113]=a.cg;a.s[117]=a.eg;a.s[121]=a.$f;a.s[125]=a.Zf;a.s[225]=a.ri;a.s[229]=a.ti;a.s[233]=a.qi;a.s[237]=a.ni;a.s[241]=a.si;a.s[245]=a.ui;a.s[249]=a.pi;a.s[253]=a.oi}function Ia(a){a.v&=-9;a.s[97]=a.Sd;a.s[101]=a.Ud;a.s[105]=a.Rd;a.s[109]=a.Od;a.s[113]=a.Td;a.s[117]=a.Vd;a.s[121]=a.Qd;a.s[125]=a.Pd;a.s[225]=a.$d;a.s[229]=a.be;a.s[233]=a.Zd;a.s[237]=a.Wd;a.s[241]=a.ae;a.s[245]=a.ce;a.s[249]=a.Yd;a.s[253]=a.Xd} function P(a,b,c){var d=a.c&256?1:0,e=(b&15)+(c&15)+d;10<=e&&(e=e+6&15|16);e+=(b&240)+(c&240);a.u=b^c;a.t=e;a.f=e&255;160<=e&&(e+=96);512<=e&&(e-=256);a.c=e;a.g=b+c+d&255;a.D--;return e&255}function Q(a,b,c){var d=a.c&256?0:1,e=(b&15)-(c&15)-d;0>e&&(e=(e-6&15)-16);e+=(b&240)-(c&240);0>e&&(e-=96);a.f=a.g=(a.c=b-c-d)&255;a.u=b^c;a.t=a.c;a.c^=256;a.D--;return e&255}function ta(a){a.e=0;a.m=0;a.o=0;a.p=256;a.v=0;a.f=0;a.g=0;a.u=0;a.t=0;a.c=0;a.d=0;a.b=-1;a.h=-1;a.ta=0;a.Wa=a.ua=a.D=0} f.Ag=function(){this.d++;this.a[this.p--]=this.d>>8;this.p|=256;this.a[this.p--]=this.d&255;this.p|=256;this.v|=16;this.v=Ca(this);this.a[this.p--]=this.v;this.p|=256;this.v&=239;this.b=65534;this.d=this.a[this.b]|this.a[this.b+1]<<8};f.Uh=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e|=this.a[this.b]};f.Wh=function(){this.b=this.a[this.d++];this.f=this.g=this.e|=this.a[this.b]}; f.qg=function(){this.h=this.a[this.d++];this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};f.Zh=function(){this.v=Ca(this);this.a[this.p--]=this.v;this.p|=256};f.Th=function(){this.b=this.d++;this.f=this.g=this.e|=this.a[this.b]};f.pg=function(){this.c=this.e<<1;this.f=this.g=this.e=this.c&255};f.Qh=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e|=this.a[this.b]}; f.ng=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};f.zg=function(){this.d+=(this.f&128?0:(this.D--,this.a[this.d]<<24>>24))+1};f.Vh=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.f=this.g=this.e|=this.a[this.b]};f.Xh=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.e|=this.a[this.b]}; f.rg=function(){this.h=this.a[this.d++]+this.m&255;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};f.Dg=function(){this.c=0};f.Sh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.e|=this.a[this.b]};f.Rh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e|=this.a[this.b]};f.og=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255}; f.rh=function(){this.b=this.d++;this.a[this.p--]=this.d>>8;this.p|=256;this.a[this.p--]=this.d&255;this.p|=256;this.d=this.a[this.b]|this.a[this.b+1]<<8};f.jg=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e&=this.a[this.b]};f.wg=function(){this.b=this.a[this.d++];this.g=this.e&this.a[this.b];this.f=this.f&127|this.a[this.b]&128;this.t=0;this.u=this.a[this.b]&64?128:0};f.lg=function(){this.b=this.a[this.d++];this.f=this.g=this.e&=this.a[this.b]}; f.ei=function(){this.h=this.a[this.d++];this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.ai=function(){this.p=this.p+1&255|256;this.v=this.a[this.p];this.c=this.v&1?256:0;this.g=this.v&2?0:1;this.f=this.v&128;this.t=0;this.u=this.v&64?128:0};f.ig=function(){this.b=this.d++;this.f=this.g=this.e&=this.a[this.b]}; f.di=function(){this.c=this.c&65280|this.e;this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.e=this.c&255};f.vg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.g=this.e&this.a[this.b];this.f=this.f&127|this.a[this.b]&128;this.t=0;this.u=this.a[this.b]&64?128:0};f.fg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e&=this.a[this.b]}; f.bi=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.xg=function(){this.d+=(this.f&128?(this.D--,this.a[this.d]<<24>>24):0)+1};f.kg=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.f=this.g=this.e&=this.a[this.b]};f.mg=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.e&=this.a[this.b]}; f.fi=function(){this.h=this.a[this.d++]+this.m&255;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.vi=function(){this.c=256};f.hg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.e&=this.a[this.b]};f.gg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e&=this.a[this.b]}; f.ci=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.li=function(){this.p=this.p+1&255|256;this.v=this.a[this.p];this.c=this.v&1?256:0;this.g=this.v&2?0:1;this.f=this.v&128;this.t=0;this.u=this.v&64?128:0;this.p=this.p+2&255|256;this.d=this.a[this.p-1|256]|this.a[this.p]<<8}; f.fh=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e^=this.a[this.b]};f.hh=function(){this.b=this.a[this.d++];this.f=this.g=this.e^=this.a[this.b]};f.Nh=function(){this.h=this.a[this.d++];this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255};f.Yh=function(){this.a[this.p--]=this.e;this.p|=256};f.eh=function(){this.b=this.d++;this.f=this.g=this.e^=this.a[this.b]}; f.Mh=function(){this.c=this.c&65279|(this.e&1?256:0);this.e=(this.c=this.c&65280|this.e>>1)&255;this.f=this.g=this.c&255};f.qh=function(){this.b=this.d;this.d=this.a[this.b]|this.a[this.b+1]<<8};f.ah=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e^=this.a[this.b]};f.Kh=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; f.Bg=function(){this.d+=((this.t&255^this.u^this.t>>1)&128?0:(this.D--,this.a[this.d]<<24>>24))+1};f.gh=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.f=this.g=this.e^=this.a[this.b]};f.ih=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.e^=this.a[this.b]};f.Oh=function(){this.h=this.a[this.d++]+this.m&255;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; f.Fg=function(){this.v&=251};f.dh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.e^=this.a[this.b]};f.bh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e^=this.a[this.b]};f.Lh=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; f.mi=function(){this.p=this.p+2&255|256;this.d=(this.a[this.p-1|256]|this.a[this.p]<<8)+1};f.Sd=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.bg=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.e=P(this,this.e,this.a[this.b])}; f.Ud=function(){this.b=this.a[this.d++];this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.dg=function(){this.b=this.a[this.d++];this.e=P(this,this.e,this.a[this.b])};f.ji=function(){this.h=this.a[this.d++];this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};f.$h=function(){this.p=this.p+1&255|256;this.f=this.g=this.e=this.a[this.p]}; f.Rd=function(){this.b=this.d++;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.ag=function(){this.b=this.d++;this.e=P(this,this.e,this.a[this.b])};f.ii=function(){this.c=this.c&65280|this.e;this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.e=this.c&255};f.ph=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.d=this.a[this.b]|this.a[this.b+1]<<8}; f.Od=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.Yf=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.e=P(this,this.e,this.a[this.b])};f.gi=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255}; f.Cg=function(){this.d+=((this.t&255^this.u^this.t>>1)&128?(this.D--,this.a[this.d]<<24>>24):0)+1};f.Td=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.cg=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.e=P(this,this.e,this.a[this.b])}; f.Vd=function(){this.b=this.a[this.d++]+this.m&255;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.eg=function(){this.b=this.a[this.d++]+this.m&255;this.e=P(this,this.e,this.a[this.b])};f.ki=function(){this.h=this.a[this.d++]+this.m&255;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};f.xi=function(){this.v|=4}; f.Qd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.$f=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.e=P(this,this.e,this.a[this.b])};f.Pd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255}; f.Zf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.e=P(this,this.e,this.a[this.b])};f.hi=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};f.Bi=function(){this.h=this.a[this.d++]+this.m&255;this.h=this.a[this.h]|this.a[this.h+1]<<8;this.a[this.h]=this.e};f.Ji=function(){this.h=this.a[this.d++];this.a[this.h]=this.o}; f.Di=function(){this.h=this.a[this.d++];this.a[this.h]=this.e};f.Gi=function(){this.h=this.a[this.d++];this.a[this.h]=this.m};f.$g=function(){this.f=this.g=this.o=this.o-1&255};f.Pi=function(){this.f=this.g=this.e=this.m};f.Ii=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.o};f.yi=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.e};f.Fi=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.m}; f.sg=function(){this.d+=(this.c&256?0:(this.D--,this.a[this.d]<<24>>24))+1};f.Ci=function(){this.h=this.a[this.d++];this.h=(this.a[this.h]|this.a[this.h+1]<<8)+this.o;this.a[this.h]=this.e};f.Ki=function(){this.h=this.a[this.d++]+this.m&255;this.a[this.h]=this.o};f.Ei=function(){this.h=this.a[this.d++]+this.m&255;this.a[this.h]=this.e};f.Hi=function(){this.h=this.a[this.d++]+this.o&255;this.a[this.h]=this.m};f.Ri=function(){this.f=this.g=this.e=this.o}; f.Ai=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.a[this.h]=this.e};f.Qi=function(){this.p=this.m|256};f.zi=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.a[this.h]=this.e};f.Hh=function(){this.b=this.d++;this.f=this.g=this.o=this.a[this.b]};f.wh=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e=this.a[this.b]};f.Ch=function(){this.b=this.d++;this.f=this.g=this.m=this.a[this.b]}; f.Ih=function(){this.b=this.a[this.d++];this.f=this.g=this.o=this.a[this.b]};f.yh=function(){this.b=this.a[this.d++];this.f=this.g=this.e=this.a[this.b]};f.Dh=function(){this.b=this.a[this.d++];this.f=this.g=this.m=this.a[this.b]};f.Ni=function(){this.f=this.g=this.o=this.e};f.vh=function(){this.b=this.d++;this.f=this.g=this.e=this.a[this.b]};f.Mi=function(){this.f=this.g=this.m=this.e};f.Fh=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.o=this.a[this.b]}; f.sh=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e=this.a[this.b]};f.Ah=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.m=this.a[this.b]};f.tg=function(){this.d+=(this.c&256?(this.D--,this.a[this.d]<<24>>24):0)+1};f.xh=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.f=this.g=this.e=this.a[this.b]};f.Jh=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.o=this.a[this.b]}; f.zh=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.e=this.a[this.b]};f.Eh=function(){this.b=this.a[this.d++]+this.o&255;this.f=this.g=this.m=this.a[this.b]};f.Gg=function(){this.u=this.t=0};f.uh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.e=this.a[this.b]};f.Oi=function(){this.f=this.g=this.m=this.p&255};f.Gh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.o=this.a[this.b]}; f.th=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e=this.a[this.b]};f.Bh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.m=this.a[this.b]};f.Tg=function(){this.b=this.d++;this.f=this.g=this.c=this.o-this.a[this.b];this.c^=256};f.Lg=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256}; f.Ug=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.o-this.a[this.b];this.c^=256};f.Ng=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Xg=function(){this.h=this.a[this.d++];this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.oh=function(){this.f=this.g=this.o=this.o+1&255};f.Kg=function(){this.b=this.d++;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Zg=function(){this.f=this.g=this.m=this.m-1&255}; f.Sg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.o-this.a[this.b];this.c^=256};f.Hg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Vg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.yg=function(){this.d+=(this.g&255?(this.D--,this.a[this.d]<<24>>24):0)+1}; f.Mg=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Og=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Yg=function(){this.h=this.a[this.d++]+this.m&255;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.Eg=function(){Ia(this)}; f.Jg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Ig=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Wg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.Qg=function(){this.b=this.d++;this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256}; f.$d=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ri=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.e=Q(this,this.e,this.a[this.b])};f.Rg=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256}; f.be=function(){this.b=this.a[this.d++];this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ti=function(){this.b=this.a[this.d++];this.e=Q(this,this.e,this.a[this.b])};f.lh=function(){this.h=this.a[this.d++];this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};f.nh=function(){this.f=this.g=this.m=this.m+1&255}; f.Zd=function(){this.b=this.d++;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.qi=function(){this.b=this.d++;this.e=Q(this,this.e,this.a[this.b])};f.Ph=function(){};f.Pg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256}; f.Wd=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ni=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.e=Q(this,this.e,this.a[this.b])};f.jh=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};f.ug=function(){this.d+=(this.g&255?0:(this.D--,this.a[this.d]<<24>>24))+1}; f.ae=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.si=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.e=Q(this,this.e,this.a[this.b])}; f.ce=function(){this.b=this.a[this.d++]+this.m&255;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ui=function(){this.b=this.a[this.d++]+this.m&255;this.e=Q(this,this.e,this.a[this.b])};f.mh=function(){this.h=this.a[this.d++]+this.m&255;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};f.wi=function(){Ha(this)}; f.Yd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.pi=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.e=Q(this,this.e,this.a[this.b])}; f.Xd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.oi=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.e=Q(this,this.e,this.a[this.b])};f.kh=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255}; f.Li=function(){var a;a=this.a[this.d++];switch(a){case this.tf:G(this,"HALT");this.S();break;case this.md:a=this.d;for(var b="";a=c&&(c+=32);a.Ia=a.Ia.substr(1);Na(a,c)}0=b&&(b+=32),Pa(a,b),U(a,b,!0,a.ld)&&(a.k.speed==a.k.La?U(a,b,!1,a.rf):(c=!1,a.ca[b]&&(clearTimeout(a.ca[b]),c=!0),c=Oa(a,c),a.ca[a.wa=b]=setTimeout(function(a){return function(){U(a,b,!1,a.sf)}}(a),c),a.l&&T(a.l,a.l.ya)&&a.l.message("keyPressSimulate("+h(b)+"): setTimeout()")),c=!0));a.l&&T(a.l,a.l.ya)&&a.l.message("keyPressSimulate("+h(b)+"): "+(c?"true":"false"));return c} function U(a,b,c,d){var e=!1;c||(a.ca[b]=null,a.wa==b&&(a.wa=0));var g=0,k=a.j[b];void 0===k&&(1<=b&&26>=b&&(b+=64,g=a.yb),k=a.j[b]);void 0!==k&&(b=k>>12,e=k>>8&15,g||(g=k&255),c?(a.L[b]|=1<d||d>=this.Tf}a&&(d=this.ic.shift(),void 0!==d&&(this.ud=d),this.Ac=0,this.Hd=c);for(d=c=0;8>d;d++)this.vd&1<d[g][0]&&(k=d[g][0]),n=a.Bd&&(d-=a.Bd,dMissing <canvas> support; try a new web browser.";break}e.setAttribute("class","c1pjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var g=new Image,k=e.getContext("2d"),e=new Ra(d,e,k,g);g.onload=function(a){return function(){a.O()}}(e,d.charSet);g.src=d.charSet;E(e,c)}}); function Ua(a){z.call(this,"C1PSerialPort",a);this.B=!1;this.Ad=a.demo;this.vf=0;this.uf=1;this.reset()}B(Ua);f=Ua.prototype;f.reset=function(){2!=this.Ea&&(this.Mb=this.nc=0,this.Ya='10 PRINT "HELLO OSI #'+ia(this)+'"\n',this.Ea=this.Tb=0)};f.start=function(){this.F&&this.Ad&&(V(this.F," C\n\n",3E3),setTimeout(function(a){return function(){a.Ea=1;V(a.F,"LOAD\n")}}(this),12E3));this.Ad=!1}; f.H=function(a,b,c,d){switch(c){case "listSerial":return this.q[c]=d,!0;case "loadSerial":return this.q[c]=d,d.onclick=function(a){return function(){a.q.listSerial&&s(a.q.listSerial.value,!0,null,a,a.Mf)}}(this),!0}return!1};f.U=function(a,b,c,d){this.a=a;this.Cc=b;this.Cf=c-b+1;this.Nd=this.Cc+this.Cf;if(this.k=d)va(d,b,c,this,this.G),N(d,b,c,this,this.N);this.O()};f.aa=function(a,b){a&&!this.B&&(this.B=!0,this.M=b,this.F=L(b,"keyboard"),this.l=L(b,"debugger"))}; f.Mf=function(a,b,c){b?(this.Ya=b,this.Ea=this.Tb=0,this.M&&this.F&&this.k.fa?(G(this,"auto-loading "+a),this.k.V(),"."!=this.Ya.charAt(0)?(this.Ea=1,V(this.F,"NEW\nLOAD\n")):(this.Ea=2,this.M.reset(!0),V(this.F,"ML"))):G(this,a+" ready to load")):G(this,a+" load error ("+c+")")};f.G=function(a,b){void 0!==b&&(a&1?Va(this):this.Ya&&!this.Tb&&Va(this))};f.N=function(a,b){void 0!==b&&this.l&&S(this.l,this,a,b,this.l.Pc,!0)}; function Va(a){if(void 0!==a.Ya){a.nc=0;a.Mb=0;if(a.Tb=--d.Va&&(0=d.Ld&&(d.ga=d.Ld),0>d.ga&&(d.ga=0),d.Va=20,a.Ga.update(a.Ga.r|a.hc),Za(a))}this.r=c;a.Yb.r&a.Ja&&W(a,a.kd,this)}}(a)};a.Yb={r:0,$:function(){},update:function(a){return function(c){void 0!==c&&(this.r=c&~(a.Kc|a.Lc));W(a,a.gd,this);a.rb.update();a.fe.update()}}(a)};a.Si={r:0,$:function(){},update:function(a){return function(c){void 0!==c&&((c&a.Mc)==a.Mc&&(a.Ha.r=a.rd|a.pd|a.od),this.r=c);a.Ha.update()}}(a)};a.Ha={r:a.rd|a.pd|a.od,$:function(){},update:function(a){return function(c){void 0=== c&&(c=a.Ha.r);c&=~a.qd;0<=a.J&&0<=a.T[a.J].Ta&&(c|=a.qd);this.r=c;W(a,a.of,this)}}(a)};a.Gc={r:0,$:function(a){return function(){$a(a)}}(a),update:function(a){return function(c){void 0!==c&&(this.r=c);W(a,a.hd,this)}}(a)};a.Ti={r:0,$:function(){},update:function(){return function(){}}(a)}} f.H=function(a,b,c,d){switch(c){case "listDisk":return this.q[c]=d,!0;case "loadDisk":return this.q[c]=d,d.onclick=function(a){return function(){if(a.q.listDisk){var b=a.q.listDisk.value,c=b;".json"!=b.substr(b.length-5)&&(c="http://"+window.location.host+"/api/v1/dump?disk="+b);G(a,"loading "+ba(b)+"...");s(c,!0,null,a,a.Lf)}}}(this),!0}return!1};f.U=function(a,b,c,d){this.a=a;this.kc=b;if(this.k=d)va(d,b,c,this,this.G),N(d,b,c,this,this.N);this.O()}; f.aa=function(a,b){a&&!this.B&&(this.B=!0,this.l=L(b,"debugger"))}; f.Lf=function(a,b,c){if(c)G(this,"disk load error ("+c+")");else{c=[];G(this,"mounting "+a+"...");try{if(c=eval("("+b+")"),c.length)if(c[0].length){var d=c[0];if(void 0===d[0].trackNum)G(this,"data error: "+d[0]);else if(this.T[0]){for(b=0;b>8&255);a.push(b&255)}function ab(a,b,c){b=b[c];if(void 0===b)throw"missing signature: "+c;for(c=0;cb?b&=3:32>b&&(b&=17);switch(b){case a.jd:a=a.Xb.r&a.Ja?a.Ga:a.ee;break;case a.fd:a=a.Xb;break;case a.kd:a=a.Yb.r&a.Ja?a.rb:a.fe;break;case a.gd:a=a.Yb;break;case a.lf:a=c?a.Si:a.Ha;break;case a.hd:a=a.Gc;break;default:a=a.Ti}return a}f.G=function(a,b){if(void 0!==b){var c=cb(this,a-this.kc,!1);this.l&&S(this.l,this,a,b,this.l.Ka,!1,c.ge);c.$()}}; f.N=function(a,b){if(void 0!==b){var c=this.k.G(a),d=cb(this,a-this.kc,!0);if(this.l&&T(this.l,this.l.Ka|this.l.bc)&&(S(this.l,this,a,b,this.l.Ka,!0,d.ge),d.xf))for(var e=128,g=d.r^c;g&&e;)g&e&&this.l.message(" changed "+d.ge+"."+d.xf[e]+" to "+(c&e?"1":"0")),e>>=1;d.update(c)}};function Ya(a,b,c){var d=-1;void 0!==b&&void 0!==c&&(d=0,c&a.kf||(d|=2),a.Ga.r&a.ad||(d|=1));a.J!=d&&(a.J=d,a.Ha.update())}function Za(a){0<=a.J&&(a.T[a.J].Ta=-1,a.Gc.update(255),a.Ha.update())} function $a(a){var b=null;if(0<=a.J){var b=a.T[a.J],c=b.Ib[b.ga];void 0!==c&&(0<=b.Ta&&b.Ta>24)}f.G=function(a){var b;a>=this.Z&&a=this.Xa?G(this,"invalid address: "+p(a)):(this.a[this.Z+a]=b&255,za(this.k,a),this.k.update())};function lb(a,b){Y(a.qa,b,void 0)||a.qa.push(b);return!0} function Y(a,b,c){for(var d=!1,e=0;ek&&(l+=" ;'"+String.fromCharCode(k)+"'")}if(e==a.k.ec&&(k< a.sd.length&&(l=a.sd[k]),k==a.k.md)){m=0;for(l='"';k=a.G(b++);)16>m?l+=String.fromCharCode(k):16==m&&(l+="\u2026"),m++;l+='"'}l&&(d+=" "+l);c&&(d=(d+" ").substr(0,30),d+=";"+c.toString());a.Wf=b;return d} function Z(a,b){var c=a.va;if(void 0!==b){var d=16;"$"==b.charAt(0)?b=b.substr(1):"0x"==b.substr(0,2)?b=b.substr(2):"."==b.charAt(b.length-1)&&(d=10,b=b.substr(0,b.length-1));c=parseInt(b,d);isNaN(c)&&(G(a,"invalid base-"+d+" address: "+b),c=void 0)}void 0!==c&&(c=a.Xa)&&(G(a,"address out of range: "+aa(c)),c=void 0);return c} function ob(a,b){if("?"==b)G(a,"\nfrequency commands:"),G(a,"clear\tclear all frequency counts");else{var c=0,d;if(a.ea)if("clear"==b){for(d=0;da.yf.indexOf(n)&&(e=a.A);e==a.Qc&&n!=a.Eb&&(e=a.A)}else G(a,"unknown operand: "+m),n=-1;if(0<=n){l=-1;for(k=0;kl)l=k;else{G(a,"too many instruction matches (both "+h(l)+" and "+h(k)+")");l=-2;break}if(0<=l){if(d.push(l),void 0!==e)if(g=a.X[l][1],m=m.match(/[0-9A-F]+/),null!==m)for(m=parseInt(m[0],16),1==g&&e==a.W&&(m-=c+2,-128>m||127>>=8;else g&& G(a,"instruction missing "+g+" bytes")}else G(a,"unknown instruction: "+g+" "+m+"")}}e=d;if(e.length){for(c=0;cn&&el?String.fromCharCode(l):".",e++;G(a,p(k)+" "+g+m)}a.va=e}break;case "e":e=c[1];if(void 0===e)G(a,"missing address");else if(e=Z(a,e),void 0!==e)for(d=2;dd.length&&(G(a,"note: only "+d.length+" available"),g=d.length); void 0!==m&&(a.wc=0,G(a,g+" instructions earlier:"));m=a.wc?a.wc:1;c-=g;for(0>c&&(c=d.length-1);e&&c!=a.jb;){k=d[c];if(0>k)break;G(a,nb(a,k,m++));++c==d.length&&(c=0);e--;g--}a.Vf=g;a.wc=m}10==e&&G(a,"no history available");break;case "r":ib(a,c);break;case "s":a.G(a.k.d)==a.k.Fb?(mb(a,a.k.d+3),a.Sa=!0,a.xa()||a.k.V()):pb(a);break;case "t":pb(a,c[1]);break;case "u":hb(a,c[1],c[2],8);break;case "?":case "help":G(a,"\ncommands:\n?\thelp\na [#]\tassemble\nb [#]\tbreakpoint\nd [#]\tdump memory\ne [#]\tedit memory\nf\tdump frequencies\ng [#]\trun to [#]\nh\thalt\no\toptions\np [#]\tdump history\nr\tdump/edit registers\ns\tstep over instruction\nt [#]\tstep instruction(s)\nu [#]\tunassemble"); G(a,"note: frequency and history commands operate only when breakpoints are set");break;default:G(a,"unknown command: "+b)}}}x(function(){for(var a=F(window.document,"c1pjs","debugger"),b=0;b");b&&b.aa(!0,a)} x(function(){for(var a=F(window.document,"c1pjs","computer"),b=0;b');return}}if(void 0===k){u(' definition must appear first in the specification'); break}if(e=C("debugger",d.id))g["debugger"]=[e],e.U&&e.U(k,n,m,g.cpu[0]);(e=C("panel",d.id))&&(g.panel=[e]);d=new $(d,g);E(d,c);qb(d)}});function rb(a,b,c,d){var e=s(a);if(e[0])throw Error(e[1]);return sb(e[1],a,b,c,d)} function sb(a,b,c,d,e){var g=null;if(a){if(e)for(var k=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;g=k.exec(a);){var n=g[2],m=s(n),l=m[1];if(m[0]||!l)throw c="unable to resolve XML reference: "+g[0]+" ("+m[0]+")",Error(c);if(m=g[3]){var q=l.match(new RegExp("<"+g[1]+"[^>]*>"));if(q){for(var n=q[0],t,ya=/( [a-z]+=)(['"])(.*?)\2/g;t=ya.exec(m);)n=0>n.indexOf(t[1])?n.replace(">",t[0]+">"):n.replace(new RegExp(t[1]+"(['\"])(.*?)\\1"),t[0]);q[0]!=n&&(l=l.replace(q[0],n))}else throw c="missing <"+g[1]+"> in "+n, Error(c);}l=l.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(g[0],l);k.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/\s*/g,"")),g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+ (255