80386 development

This commit is contained in:
jeffpar 2015-03-26 09:47:06 -07:00
commit 70bca48b17
127 changed files with 1039 additions and 958 deletions

View file

@ -26,10 +26,10 @@ this.mh.drawImage(this.Pd,0,0,a,b,this.rr,this.ur,this.Pq,this.Sq)}};
function hb(a,b,c){if(a.mh&&a.Pd&&a.ze){var d=a.Pd.width;a.ze.fillStyle="black";a.ze.fillRect(0,360,d,360);ib(a,378,a.Pd,a.ze,a.canvas.style.color);jb(a,24);if(null==b)u(a,"Mouse over memory to dump");else{u(a,"0x"+ca(b),null,0,1);for(var e=1;16>=e;e++){for(var f="",g=1;8>=g;g++){var h=wb(a.ga,b++);u(a,ca(h,2),null,1);f+=32<=h&&128>h?String.fromCharCode(h):"."}u(a,f,null,0,1)}}c&&a.mh.drawImage(a.Pd,0,360,d,360,a.pr,a.sr,a.Nq,a.Qq)}}
function ib(a,b,c,d,e){var f,g=a.Np=10;a.Nc=g;a.Xe=b;a.sf=a.bl=18;f||(f=a.Yk||a.bl+"px Monaco, Lucida Console, Courier New");a.Ah=a.Yk=f;c&&(a.Wm=c);d&&(a.dd=d,a.Ym=e||"white")}function jb(a,b){a.Ci=a.Wm.width/b|0}function kb(a,b){a.Nc=a.Np;a.Xe+=(a.sf+2)*(b||1)}function u(a,b,c,d,e){a.dd.font=a.Ah;a.dd.fillStyle=a.Ym;a.dd.fillText(b,a.Nc,a.Xe);a.Nc+=a.Ci;null!=c&&(b=c.toString(),16==a.Co&&(b="0x"+ca(c,a.Do)),a.dd.fillText(b,a.Nc,a.Xe),a.Nc+=a.Ci);d&&(a.Nc+=a.Ci*d);e&&kb(a,e)}
function cb(){for(var a=!1,b=Ra(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=Pa(d),f=Na(e.id);f||(a=!0,f=new Ya(e));Qa(f,d);a&&p(f)}}za(cb);function xb(a,b,c){n.call(this,"Bus",a,xb);this.S=b;this.Ua=c;this.xf=a.buswidth||20;this.oi=Math.pow(2,this.xf);this.Um=this.Ya=this.oi-1|0;this.Ia=20>=this.xf?12:24>=this.xf?14:15;this.rb=1<<this.Ia;this.Gk=this.rb>>2;this.xa=this.rb-1;this.Vf=this.oi/this.rb|0;this.uc=this.Vf-1;this.Qg=[];this.Rg=[];this.aj();p(this)}La(n,xb);
var eb=131071,fb=18,gb=1023;k=xb.prototype;k.aj=function(){this.ia=Array(this.Vf);for(var a=0;a<this.Vf;a++)this.ia[a]=new Ab(a*this.rb);this.S.aj(this.ia,this.Ia,this.xa,this.uc);this.S.Ya=this.Ya};k.reset=function(){Bb(this,!0)};k.Zb=function(a,b){b||this.reset();return!0};
function Cb(a,b,c,d,e){for(var f=b>>>a.Ia;0<c&&f<a.ia.length;){var g=a.ia[f],h=f*a.rb,r=c>a.rb?a.rb:c;if(g&&g.size){if(g.type==d&&g.T==e){if(b+c<=g.Pf)return g.fi+=g.Pf-b,g.Pf=b,!0;if(b>=g.Pf+g.fi){r=g.size-(b-h);r>c&&(r=c);g.fi=b-g.Pf+r;c-=r;b=h+a.rb;continue}}return Db(1,b,c)}a.ia[f++]=new Ab(b,r,a.rb,d,e);c-=r;b=h+a.rb}return 0<c?Db(2,b,c):!0}function Bb(a,b){if(void 0!==b&&20<a.xf){var c=a.Ya&-1048577|(b?1048576:0);c!=a.Ya&&(a.Ya=c,a.S&&(a.S.Ya=c))}}
k.di=function(a,b,c){if(!(a&this.xa||!b||b&this.xa)){for(var d=a>>>this.Ia;0<b;){var e=this.ia[d];if(!e.T)return Db(5,a,b);e.od(c);b-=this.rb;d++}return!0}return Db(3,a,b)};function Eb(a,b,c){if(!(b&a.xa||!c||c&a.xa)){for(var d=b>>>a.Ia;0<c;)b=d*a.rb,a.ia[d++]=new Ab(b),c-=a.rb;return!0}return Db(4,b,c)}function Fb(a,b,c){var d=[];for(b>>>=a.Ia;0<c&&b<a.ia.length;)d.push(a.ia[b++]),c-=a.rb;return d}
function Gb(a,b,c,d,e){for(var f=0,g=b>>>a.Ia;0<c&&g<a.ia.length;){var h;void 0===e?h=d[f++]:(h=new Ab(b),h.clone(d[f++],e));a.ia[g++]=h;c-=a.rb}}k.pc=function(a){return this.ia[(a&this.Ya)>>>this.Ia].Ab(a&this.xa)};function wb(a,b){return a.ia[(b&a.Ya)>>>a.Ia].bk(b&a.xa)}k.ja=function(a){var b=a&this.xa;a=(a&this.Ya)>>>this.Ia;return b!=this.xa?this.ia[a].tm(b):this.ia[a++].Ab(b)|this.ia[a&this.uc].Ab(0)<<8};
var eb=131071,fb=18,gb=1023;k=xb.prototype;k.aj=function(){this.ia=Array(this.Vf);for(var a=0;a<this.Vf;a++)this.ia[a]=new yb(a*this.rb);this.S.aj(this.ia,this.Ia,this.xa,this.uc);this.S.Ya=this.Ya};k.reset=function(){zb(this,!0)};k.Zb=function(a,b){b||this.reset();return!0};
function Cb(a,b,c,d,e){for(var f=b>>>a.Ia;0<c&&f<a.ia.length;){var g=a.ia[f],h=f*a.rb,r=c>a.rb?a.rb:c;if(g&&g.size){if(g.type==d&&g.T==e){if(b+c<=g.Pf)return g.fi+=g.Pf-b,g.Pf=b,!0;if(b>=g.Pf+g.fi){r=g.size-(b-h);r>c&&(r=c);g.fi=b-g.Pf+r;c-=r;b=h+a.rb;continue}}return Db(1,b,c)}a.ia[f++]=new yb(b,r,a.rb,d,e);c-=r;b=h+a.rb}return 0<c?Db(2,b,c):!0}function zb(a,b){if(void 0!==b&&20<a.xf){var c=a.Ya&-1048577|(b?1048576:0);c!=a.Ya&&(a.Ya=c,a.S&&(a.S.Ya=c))}}
k.di=function(a,b,c){if(!(a&this.xa||!b||b&this.xa)){for(var d=a>>>this.Ia;0<b;){var e=this.ia[d];if(!e.T)return Db(5,a,b);e.od(c);b-=this.rb;d++}return!0}return Db(3,a,b)};function Eb(a,b,c){if(!(b&a.xa||!c||c&a.xa)){for(var d=b>>>a.Ia;0<c;)b=d*a.rb,a.ia[d++]=new yb(b),c-=a.rb;return!0}return Db(4,b,c)}function Fb(a,b,c){var d=[];for(b>>>=a.Ia;0<c&&b<a.ia.length;)d.push(a.ia[b++]),c-=a.rb;return d}
function Gb(a,b,c,d,e){for(var f=0,g=b>>>a.Ia;0<c&&g<a.ia.length;){var h;void 0===e?h=d[f++]:(h=new yb(b),h.clone(d[f++],e));a.ia[g++]=h;c-=a.rb}}k.pc=function(a){return this.ia[(a&this.Ya)>>>this.Ia].Ab(a&this.xa)};function wb(a,b){return a.ia[(b&a.Ya)>>>a.Ia].bk(b&a.xa)}k.ja=function(a){var b=a&this.xa;a=(a&this.Ya)>>>this.Ia;return b!=this.xa?this.ia[a].tm(b):this.ia[a++].Ab(b)|this.ia[a&this.uc].Ab(0)<<8};
function Hb(a,b){var c=b&a.xa,d=(b&a.Ya)>>>a.Ia;return c!=a.xa?a.ia[d].Ep(c):a.ia[d++].bk(c)|a.ia[d&a.uc].bk(0)<<8}k.$k=function(a){var b=a&this.xa;a=(a&this.Ya)>>>this.Ia;if(b<this.xa-2)return this.ia[a].md(b);var c=(b&3)<<3;return this.ia[a].md(b&-4)>>>c|this.ia[a+1&this.uc].md(0)<<32-c};k.Re=function(a,b){this.ia[(a&this.Ya)>>>this.Ia].Db(a&this.xa,b&255)};
k.Ga=function(a,b){var c=a&this.xa,d=(a&this.Ya)>>>this.Ia;c!=this.xa?this.ia[d].Lm(c,b&65535):(this.ia[d++].Db(c,b&255),this.ia[d&this.uc].Db(0,b>>8&255))};function Ib(a,b,c){var d=b&a.xa;b=(b&a.Ya)>>>a.Ia;d!=a.xa?a.ia[b].Mp(d,c&65535):(a.ia[b++].kk(d,c&255),a.ia[b&a.uc].kk(0,c>>8&255))}
k.Gm=function(a,b){var c=a&this.xa,d=(a&this.Ya)>>>this.Ia;if(c<this.xa-2)this.ia[d].If(c,b);else{var e,f=(c&3)<<3,c=c&-4;e=this.ia[d].md(c);this.ia[d].If(c,e&~(-1<<f)|b<<f);d=d+1&this.uc;e=this.ia[d].md(0);this.ia[d].If(0,e&-1<<f|b>>>32-f)}};
@ -37,12 +37,12 @@ function Jb(a){for(var b=0,c=[],d=0;d<a.Vf;d++){var e=a.ia[d];if(e.Da||e.Ok){c[b
function Kb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,r=c[e];if(void 0!==r)for(var t=e+d;t<=g;t++)void 0!==f.Qg[t]?m("Input port 0x"+ca(t,4)+" registered by "+f.Qg[t][0].id+", ignoring "+h.id):f.Qg[t]=[h,r,!1,!1]}}function Lb(a,b,c){var d=255;a=a.Qg[b];void 0!==a&&a[1]&&(d=a[1].call(a[0],b,c));return d}
function Mb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,r=c[e];if(void 0!==r)for(var t=e+d;t<=g;t++)void 0!==f.Rg[t]?m("Output port 0x"+ca(t,4)+" registered by "+f.Rg[t][0].id+", ignoring "+h.id):f.Rg[t]=[h,r,!1,!1]}}function Nb(a,b,c,d){a=a.Rg[b];void 0!==a&&a[1]&&a[1].call(a[0],b,c,d)}function Db(a,b,c){m("Memory block error ("+a+","+ca(b)+","+ca(c)+")");return!1}var Ob;
if(Va){var Pb=new ArrayBuffer(2);(new DataView(Pb)).setUint16(0,256,!0);Ob=256===(new Uint16Array(Pb))[0]}else Ob=!1;var Qb=Ob;
function Ab(a,b,c,d,e){this.ea=null;this.offset=0;this.Pf=a;this.fi=b;this.size=c||0;this.type=d||Rb;this.wh=d==Sb;this.T=null;this.Da=this.Ok=!1;if(c)if(e)this.T=e,a=e.al(a),this.ea=a[0],this.offset=a[1],this.od(e.Wi());else if(Va)this.buffer=new ArrayBuffer(c),this.Vd=new DataView(this.buffer,0,c),this.Fb=new Uint8Array(this.buffer,0,c),this.Xg=new Uint16Array(this.buffer,0,c>>1),this.ea=new Int32Array(this.buffer,0,c>>2),this.od(Qb?Tb:Ub);else{this.ea=Array(c>>2);for(e=0;e<this.ea.length;e++)this.ea[e]=
function yb(a,b,c,d,e){this.ea=null;this.offset=0;this.Pf=a;this.fi=b;this.size=c||0;this.type=d||Rb;this.wh=d==Sb;this.T=null;this.Da=this.Ok=!1;if(c)if(e)this.T=e,a=e.al(a),this.ea=a[0],this.offset=a[1],this.od(e.Wi());else if(Va)this.buffer=new ArrayBuffer(c),this.Vd=new DataView(this.buffer,0,c),this.Fb=new Uint8Array(this.buffer,0,c),this.Xg=new Uint16Array(this.buffer,0,c>>1),this.ea=new Int32Array(this.buffer,0,c>>2),this.od(Qb?Tb:Ub);else{this.ea=Array(c>>2);for(e=0;e<this.ea.length;e++)this.ea[e]=
0;this.od(Vb)}else this.od()}var Rb=0,Sb=2,Wb=["NONE","RAM","ROM","VIDEO","H/W"],Xb=["black","blue","green","cyan"];function Yb(){return 0}function Zb(){}function $b(a){return this.Fb[a]}function bc(a){return this.Fb[a]}function cc(a){return this.Vd.getUint16(a,!0)}function dc(a){return a&1?this.Fb[a]|this.Fb[a+1]<<8:this.Xg[a>>1]}function ec(a){return this.Vd.getInt32(a,!0)}function fc(a){return a&3?this.Fb[a]|this.Fb[a+1]<<8|this.Fb[a+2]<<16|this.Fb[a+3]<<24:this.ea[a>>2]}
function gc(a,b){this.Fb[a]=b;this.Da=!0}function hc(a,b){this.Fb[a]=b;this.Da=!0}function ic(a,b){this.Vd.setUint16(a,b,!0);this.Da=!0}function jc(a,b){a&1?(this.Fb[a]=b,this.Fb[a+1]=b>>8):this.Xg[a>>1]=b;this.Da=!0}function kc(a,b){this.Vd.setInt32(a,b,!0);this.Da=!0}function lc(a,b){a&3?(this.Fb[a]=b,this.Fb[a+1]=b>>8,this.Fb[a+2]=b>>16,this.Fb[a+3]=b>>24):this.ea[a>>2]=b;this.Da=!0}
var Vb=[function(a){return this.ea[a>>2]>>>((a&3)<<3)&255},function(a){var b=a>>2;a=(a&3)<<3;var c=this.ea[b]>>a;return 24>a?c&65535:c&255|(this.ea[b+1]&255)<<8},function(a){var b=a>>2;a=(a&3)<<3;var c=this.ea[b];a&&(c=c>>>a|this.ea[b+1]<<32-a);return c},function(a,b){var c=a>>2,d=(a&3)<<3;this.ea[c]=this.ea[c]&~(255<<d)|b<<d;this.Da=!0},function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.ea[c]=this.ea[c]&~(65535<<d)|b<<d:(this.ea[c]=this.ea[c]&16777215|b<<24,c++,this.ea[c]=this.ea[c]&-256|b>>8);this.Da=
!0},function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<<d;this.ea[c]=this.ea[c]&~e|b<<d;c++;this.ea[c]=this.ea[c]&e|b>>>32-d}else this.ea[c]=b;this.Da=!0}];if(Va)var Ub=[$b,cc,ec,gc,ic,kc],Tb=[bc,dc,fc,hc,jc,lc];
Ab.prototype={constructor:Ab,parent:null,clone:function(a,b){this.size=a.size;b&&(this.type=b,this.wh=b==Sb);Va?(this.buffer=a.buffer,this.Vd=a.Vd,this.Fb=a.Fb,this.Xg=a.Xg,this.ea=a.ea,this.od(Qb?Tb:Ub)):(this.ea=a.ea,this.od(Vb))},save:function(){var a,b;if(this.T)a=null;else if(Va)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.Vd.getInt32(b<<2,!0);else a=this.ea;return a},restore:function(a){if(this.T)return null==a;if(a&&this.size==a.length<<2){var b;if(Va)for(b=0;b<a.length;b++)this.Vd.setInt32(b<<
yb.prototype={constructor:yb,parent:null,clone:function(a,b){this.size=a.size;b&&(this.type=b,this.wh=b==Sb);Va?(this.buffer=a.buffer,this.Vd=a.Vd,this.Fb=a.Fb,this.Xg=a.Xg,this.ea=a.ea,this.od(Qb?Tb:Ub)):(this.ea=a.ea,this.od(Vb))},save:function(){var a,b;if(this.T)a=null;else if(Va)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.Vd.getInt32(b<<2,!0);else a=this.ea;return a},restore:function(a){if(this.T)return null==a;if(a&&this.size==a.length<<2){var b;if(Va)for(b=0;b<a.length;b++)this.Vd.setInt32(b<<
2,a[b],!0);else this.ea=a;return this.Da=!0}return!1},od:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.Ab=c[0]||Yb;this.tm=c[1]||Yb;this.md=c[2]||Yb;b&&(this.bk=c[0]||Yb,this.Ep=c[1]||Yb);c=a;this.Db=!this.wh&&c[3]||Zb;this.Lm=!this.wh&&c[4]||Zb;this.If=!this.wh&&c[5]||Zb;b&&(this.kk=c[3]||Zb,this.Mp=c[4]||Zb)}};
function mc(a,b){n.call(this,"CPU",a,mc);var c=a.cycles||b,d=a.multiplier||1;this.R={};this.R.hd=c;this.R.be=d;this.R.Fh=Math.round(this.R.hd/1E4)/100;this.R.Je=this.R.Fh*this.R.be;this.ba.Gb=!1;this.ba.Vk=!1;this.ba.Ii=a.autoStart;this.ba.Pk=!1;c=Fa.autostart;void 0!==c&&(this.ba.Ii="true"==c?!0:"false"==c?!1:null);this.ba.rh=!1;this.R.Jh=this.R.yf=0;this.R.Kh=a.csStart;this.R.mg=a.csInterval;this.R.ng=a.csStop;var e=this;this.Ho=function(){nc(e)};p(this)}La(n,mc);k=mc.prototype;
k.yc=function(a,b,c,d){this.ga=b;this.Ua=d;this.wa=a;this.video=bb(a,"Video");this.aa=bb(a,"ChipSet");p(this)};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Zb=function(a,b){if(!b){if(a&&this.restore){oc(this);if(!this.restore(a))return!1;pc(this)}else this.reset();this.jc("No debugger detected")}qc(this);this.Fd();return!0};k.Yb=function(a){return a&&this.save?this.save():!0};function rc(a){(!0===a.ba.Ii||null===a.ba.Ii&&void 0===a.la.run)&&nc(a)}k.Zk=function(){return 0};
@ -79,7 +79,7 @@ a.va){a.Qc=0;a.df=65535;a.ke=new Hc(a,5,"LDT",!0);a.fb=new Hc(a,4,"TSS",!0);a.Hb
function Pd(a,b){var c=a.sk[b];null!=c&&(c(--a.ih),delete a.sk[b])}function Nd(a,b){void 0===b&&(b=!!(a.kc&1));b||a.$b("returning to real-mode");a.vk=b?Qd:jd;Jc(a.ka,b);Jc(a.cb,b);Jc(a.pa,b);Jc(a.Ma,b)}
k.save=function(){var a=new Rd(this);a.set(0,[this.G,this.C,this.I,this.J,w(this),this.H,this.F,this.D,this.zf]);a.set(1,[v(this),this.ka.save(),this.cb.save(),this.pa.save(),this.Ma.save(),null!=this.Qc?[this.kc,this.Qc,this.df,this.Rc,this.ef,this.ke.save(),this.fb.save(),this.zf]:null,mb(this)]);a.set(2,[this.eb.ai,this.Mc.ai,this.P,this.ta,this.ib,this.X,this.Ca]);a.set(3,[0,this.Ne,this.R.be]);a.set(4,Jb(this.ga));return a.data()};
k.restore=function(a){var b=a[0];this.G=b[0];this.C=b[1];this.I=b[2];this.J=b[3];var c=b[4];this.H=b[5];this.F=b[6];this.D=b[7];this.zf=b[8]||0;b=a[1];this.ka.restore(b[1]);this.cb.restore(b[2]);this.pa.restore(b[3]);this.Ma.restore(b[4]);var d=b[5];d&&d.length&&(this.kc=d[0],this.Qc=d[1],this.df=d[2],this.Rc=d[3],this.ef=d[4],this.ke.restore(d[5]),this.fb.restore(d[6]),this.zf=d[7],Nd(this));Zc(this,b[6]);$c(this,b[0],this.ka.qa);x(this,c);ad(this,this.pa.qa);b=a[2];this.eb=null!=b[0]&&Sd(this,b[0])||
this.cb;this.Mc=null!=b[1]&&Sd(this,b[1])||this.pa;this.P=b[2];this.ta=b[3];this.ib=b[4];this.X=b[5];this.Ca=b[6];b=a[3];this.Ne=b[1];wc(this,b[2]);a:{b=this.ga;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.Gk){for(var f=0,g=Array(b.Gk),h=0;h<e.length-1;)for(var r=e[h++],t=e[h++];r--;)g[f++]=t;e=g}f=b.ia[d];if(!f||!f.restore(e)){m("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Bb(b,a[c]);b=!0}return b};
this.cb;this.Mc=null!=b[1]&&Sd(this,b[1])||this.pa;this.P=b[2];this.ta=b[3];this.ib=b[4];this.X=b[5];this.Ca=b[6];b=a[3];this.Ne=b[1];wc(this,b[2]);a:{b=this.ga;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.Gk){for(var f=0,g=Array(b.Gk),h=0;h<e.length-1;)for(var r=e[h++],t=e[h++];r--;)g[f++]=t;e=g}f=b.ia[d];if(!f||!f.restore(e)){m("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&zb(b,a[c]);b=!0}return b};
function Sd(a,b){switch(b){case "CS":return a.ka;case "DS":return a.cb;case "SS":return a.pa;case "ES":return a.Ma;case "NULL":return a.Em;default:return[0,b,0,0,""]}}function Td(a,b){var c=v(a);a.ha=a.ka.load(b)+c;a.Cf=a.ka.ra+a.ka.Xb;a.P|=a.Mg}function Ud(a,b){a.cb.load(b);a.P|=a.Mg}function ad(a,b,c){var d=w(a);a.Jc=a.pa.load(b)+d;a.pa.Oi?(a.vm=a.pa.ra+a.pa.ca,a.wm=a.pa.ra+a.pa.Xb):(a.vm=a.pa.ra+a.pa.Xb,a.wm=a.pa.ra);c||(a.P|=4)}function Vd(a,b){a.Ma.load(b);a.P|=a.Mg}
function v(a){return a.ha-a.ka.ra}function B(a,b){a.ha=a.ka.ra+(b&65535)}function $c(a,b,c,d){a.ka.Ki=d;a.dk=b;b=a.ka.load(c);return b!==q?(a.ha=b+a.dk,a.Cf=b+a.ka.Xb,a.ka.yh):null}function w(a){return a.Jc-a.pa.ra}function x(a,b){a.Jc=a.pa.ra+b}function Wd(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&Xd(a),g&2&&Yd(a),g&4&&Zd(a),g&8&&$d(a),g&16&&ae(a),g&32&&be(a))}f?(a.Ff=d,a.Ef=b):(a.Ff=b,a.Ef=d);a.Hg=c;a.Gf=d;a.resultType=e}
function ce(a,b,c,d,e){a.resultType=c|26;a.Gf=b;d?de(a):ee(a);e?fe(a):ge(a)}function Xd(a){a.resultType&1&&(a.Y&=~vb,(a.Ff^(a.Ff^a.Hg)&(a.Hg^a.Ef))&a.resultType&-2147450752&&(a.Y|=vb),a.resultType&=-2);return a.Y&vb}function Yd(a){a.resultType&2&&(a.Y&=~ub,38505>>((a.Gf^a.Gf>>4)&15)&1&&(a.Y|=ub),a.resultType&=-3);return a.Y&ub}function Zd(a){a.resultType&4&&(a.Y&=~tb,(a.Ef^a.Ff^a.Hg)&16&&(a.Y|=tb),a.resultType&=-5);return a.Y&tb}
@ -422,252 +422,252 @@ a[4].call(this,this.G,b.call(this))},function(a,b){this.I=a[4].call(this,this.I,
function(a,b){this.I=a[5].call(this,this.I,b.call(this))},function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.C=a[5].call(this,this.C,b.call(this))},function(a,b){x(this,a[5].call(this,w(this),b.call(this)))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.D=a[5].call(this,this.D,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.I=a[6].call(this,
this.I,b.call(this))},function(a,b){this.J=a[6].call(this,this.J,b.call(this))},function(a,b){this.C=a[6].call(this,this.C,b.call(this))},function(a,b){x(this,a[6].call(this,w(this),b.call(this)))},function(a,b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.D=a[6].call(this,this.D,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.J=
a[7].call(this,this.J,b.call(this))},function(a,b){this.C=a[7].call(this,this.C,b.call(this))},function(a,b){x(this,a[7].call(this,w(this),b.call(this)))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))},function(a,b){this.D=a[7].call(this,this.D,b.call(this))}];
function T(a){n.call(this,"ChipSet",a,T);this.va=(this.va=a.model)?parseInt(this.va,10):Uf;this.Sb=0;var b=a.sw1;if(b)this.Sb=Vf(b,Wf|Xf.Qm);else{this.Id=[360,360];(b=a.floppies)&&b.length&&(this.Id=b);if(b=this.Id.length)this.Sb|=Yf.gi,b--,this.Sb|=(b&3)<<Yf.Lf;if(b=a.monitor||(this.va<Zf?"mono":"ega"),void 0!==$f[b])this.Sb|=$f[b]<<Xf.Lf}this.me=Vf(a.sw2||"11110000",0);this.uo=this.va==Uf?16:64;this.hh=this.Xf=1;this.va>=Zf&&(this.hh=this.Xf=2);this.Xd=a.scaleTimers||!1;this.Kp=a.rtcDate;this.Uk=
!1;a.sound&&(this.zi=this.cg=null,window&&(this.zi=window.AudioContext||window.webkitAudioContext),this.zi&&(this.cg=new this.zi));this.reset(!0);p(this)}La(n,T);var Uf=5150,Zf=5170,$f={none:0,tv:1,color:2,mono:3,ega:0},Yf={gi:1,ONE:0,Aq:64,yq:128,Yp:192,Kf:192,Lf:6},Wf=12,Xf={zq:16,Qp:32,Qm:48,Kf:48,Lf:4};k=T.prototype;
k.Cb=function(a,b,c){switch(b){case "sw1":return this.la[b]=c,ag(this,b,c,this.Sb,{0:this.va==Uf?"Bootable Floppy Drive":"Loop on POST",1:this.va==Uf?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.va==Uf)return this.la[b]=c,ag(this,b,c,this.me,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.la[b]=c,!0}return!1};
k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;this.wa=a;this.ya=bb(a,"Keyboard");this.Rh=c.R.hd/1193181;Kb(b,this,bg);Mb(b,this,cg);this.va<Zf?(Kb(b,this,dg),Mb(b,this,eg)):(Kb(b,this,fg),Mb(b,this,gg))};k.Zb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.Yc=this.Sb;this.Te=this.me;hg(this);this.Wa=Array(this.hh);for(b=0;b<this.hh;b++)ig(this,b);this.Tb=Array(this.Xf);jg(this,0,32);1<this.Xf&&jg(this,1,160);this.ui=null;this.Jb=Array(3);for(b=0;b<this.Jb.length;b++)kg(this,b);this.Uf=this.si=this.tc=this.eh=null;this.dh=0;if(this.va>=Zf){this.hb=16;this.sd=0;this.rd=16;this.Yg=0;this.se=160;512<=lg(this)&&(this.se|=16);3==mg(this)&&(this.se|=64);this.pi=3;this.ah=0;this.Ub=Array(7);this.gf=0;a&&(this.Z=Array(64));ng(this,
this.Kp);for(a=21;24>=a;a++)this.Z[a]=0;for(a=14;46>a;a++)void 0===this.Z[a]&&(this.Z[a]=0);this.Z[20]=this.Yc&(Xf.Kf|2|Yf.gi|Yf.Kf);this.Z[16]=og(this,0)<<4|og(this,1);pg(this)}};
function ng(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.jc("CMOS date invalid ("+b+"), using "+c)):b&&a.jc("CMOS date: "+c);a.Z[0]=c.getSeconds();a.Z[1]=0;a.Z[2]=c.getMinutes();a.Z[3]=0;a.Z[4]=c.getHours();a.Z[5]=0;a.Z[6]=c.getDay()+1;a.Z[7]=c.getDate();a.Z[8]=c.getMonth()+1;c=c.getFullYear();a.Z[9]=c%100;c/=100;a.Z[50]=c%10|c/10<<4;a.Z[10]=38;a.Z[11]=2;a.Z[12]=0;a.Z[13]=128;a.Cg=a.Af=0;a.pm=a.Ph=null}
function qg(a){var b;void 0===b&&(b=a.Ph);a.Af=Ac(a.S,a.Xd)+b;a.Z[11]&64&&xc(a.S,b)}function pg(a){for(var b=0,c=16;46>c;c++)b+=a.Z[c];a.Z[47]=b&255;a.Z[46]=b>>8}
function T(a){n.call(this,"ChipSet",a,T);this.va=(this.va=a.model)&&Uf[this.va]||Vf;this.Sb=0;var b=a.sw1;if(b)this.Sb=Wf(b,Xf|Yf.Qm);else{this.Id=[360,360];(b=a.floppies)&&b.length&&(this.Id=b);if(b=this.Id.length)this.Sb|=Zf.gi,b--,this.Sb|=(b&3)<<Zf.Lf;if(b=a.monitor||(this.va<$f?"mono":"ega"),void 0!==ag[b])this.Sb|=ag[b]<<Yf.Lf}this.me=Wf(a.sw2||"11110000",0);this.uo=this.va==Vf?16:64;this.hh=this.Xf=1;this.va>=$f&&(this.hh=this.Xf=2);this.Xd=a.scaleTimers||!1;this.Kp=a.rtcDate;this.Uk=!1;a.sound&&
(this.zi=this.cg=null,window&&(this.zi=window.AudioContext||window.webkitAudioContext),this.zi&&(this.cg=new this.zi));this.reset(!0);p(this)}La(n,T);var Vf=5150,$f=5170,Uf={5150:Vf,5160:5160,5170:$f,deskpro386:5180},ag={none:0,tv:1,color:2,mono:3,ega:0},Zf={gi:1,ONE:0,Aq:64,yq:128,Yp:192,Kf:192,Lf:6},Xf=12,Yf={zq:16,Qp:32,Qm:48,Kf:48,Lf:4};k=T.prototype;
k.Cb=function(a,b,c){switch(b){case "sw1":return this.la[b]=c,bg(this,b,c,this.Sb,{0:this.va==Vf?"Bootable Floppy Drive":"Loop on POST",1:this.va==Vf?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.va==Vf)return this.la[b]=c,bg(this,b,c,this.me,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.la[b]=c,!0}return!1};
k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;this.wa=a;this.ya=bb(a,"Keyboard");this.Rh=c.R.hd/1193181;Kb(b,this,cg);Mb(b,this,dg);this.va<$f?(Kb(b,this,eg),Mb(b,this,fg)):(Kb(b,this,gg),Mb(b,this,hg))};k.Zb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.Yc=this.Sb;this.Te=this.me;ig(this);this.Wa=Array(this.hh);for(b=0;b<this.hh;b++)jg(this,b);this.Tb=Array(this.Xf);kg(this,0,32);1<this.Xf&&kg(this,1,160);this.ui=null;this.Jb=Array(3);for(b=0;b<this.Jb.length;b++)lg(this,b);this.Uf=this.si=this.tc=this.eh=null;this.dh=0;if(this.va>=$f){this.hb=16;this.sd=0;this.rd=16;this.Yg=0;this.se=160;512<=mg(this)&&(this.se|=16);3==ng(this)&&(this.se|=64);this.pi=3;this.ah=0;this.Ub=Array(7);this.gf=0;a&&(this.Z=Array(64));og(this,
this.Kp);for(a=21;24>=a;a++)this.Z[a]=0;for(a=14;46>a;a++)void 0===this.Z[a]&&(this.Z[a]=0);this.Z[20]=this.Yc&(Yf.Kf|2|Zf.gi|Zf.Kf);this.Z[16]=pg(this,0)<<4|pg(this,1);qg(this)}};
function og(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.jc("CMOS date invalid ("+b+"), using "+c)):b&&a.jc("CMOS date: "+c);a.Z[0]=c.getSeconds();a.Z[1]=0;a.Z[2]=c.getMinutes();a.Z[3]=0;a.Z[4]=c.getHours();a.Z[5]=0;a.Z[6]=c.getDay()+1;a.Z[7]=c.getDate();a.Z[8]=c.getMonth()+1;c=c.getFullYear();a.Z[9]=c%100;c/=100;a.Z[50]=c%10|c/10<<4;a.Z[10]=38;a.Z[11]=2;a.Z[12]=0;a.Z[13]=128;a.Cg=a.Af=0;a.pm=a.Ph=null}
function rg(a){var b;void 0===b&&(b=a.Ph);a.Af=Ac(a.S,a.Xd)+b;a.Z[11]&64&&xc(a.S,b)}function qg(a){for(var b=0,c=16;46>c;c++)b+=a.Z[c];a.Z[47]=b&255;a.Z[46]=b>>8}
k.save=function(){var a=new Rd(this);a.set(0,[this.Sb,this.me,this.Yc,this.Te]);for(var b=[],c=0;c<this.Wa;c++){for(var d=this.Wa[c],e=d,f=[],g=0;g<e.tb.length;g++){var h=e.tb[g];f[g]=[h.zd,h.Ug,h.Vb,h.Ra,h.Sa,h.mode,h.fh,h.Fp,h.Hp]}b[c]=[d.Od,d.qi,d.Dk,d.vb,f]}a.set(1,[b]);b=[];for(c=0;c<this.Tb.length;c++)d=this.Tb[c],b[c]=[d.sg,d.Oc,d.Bd,d.ad,d.Lb,d.Cc,d.te,d.Tf];a.set(2,[b]);b=[];for(c=0;c<this.Jb.length;c++)d=this.Jb[c],b[c]=[d.Vb,d.wc,d.Sa,d.Be,d.Fk,d.mode,d.$h,d.Sd,d.Ae,d.fd,d.ig,d.Fe,d.Ad];
a.set(3,[this.ui,b]);a.set(4,[this.eh,this.tc,this.si,this.Uf,this.dh]);this.va>=Zf&&(a.set(5,[this.hb,this.sd,this.rd,this.Yg,this.se,this.pi]),a.set(6,[this.ah,this.Ub,this.gf,this.Z,this.Cg,this.Af]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Sb=b[0];this.me=b[1];this.Yc=b[2];this.Te=b[3];b=a[1];for(c=0;c<this.hh;c++)ig(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.Xf;c++)jg(this,c,0===c?32:160,b[0][c]);b=a[3];this.ui=b[0];for(c=0;c<this.Jb.length;c++)kg(this,c,b[1][c]);b=a[4];this.eh=b[0];this.tc=b[1];this.si=b[2];this.Uf=b[3];this.dh=b[4];if(b=a[5])this.hb=b[0],this.sd=b[1],this.rd=b[2],this.Yg=b[3],this.se=b[4],this.pi=b[5];if(b=a[6])this.ah=b[0],this.Ub=b[1],this.gf=b[2],this.Z=b[3],
this.Cg=b[4],this.Af=b[5],ng(this);return!0};var rg=[0,null,null,0,Array(4)];function ig(a,b,c){var d=a.Wa[b];d||(d={tb:Array(4)});c=c&&5==c.length?c:rg;d.Od=c[0];d.qi=c[1];d.Dk=c[2];d.vb=c[3];d.yo=b<<2;for(var e=0;e<d.tb.length;e++)sg(d,e,c[4][e]);a.Wa[b]=d}var tg=[!0,[0,0],[0,0],[0,0],[0,0]];
function sg(a,b,c){var d=a.tb[b];d||(d={Ug:[0,0],Vb:[0,0],Ra:[0,0],Sa:[0,0]});c=c&&8==c.length?c:tg;d.zd=c[0];d.Ug[0]=c[1][0];d.Ug[1]=c[1][1];d.Vb[0]=c[2][0];d.Vb[1]=c[2][1];d.Ra[0]=c[3][0];d.Ra[1]=c[3][1];d.Sa[0]=c[4][0];d.Sa[1]=c[4][1];d.mode=c[5];d.fh=c[6];d.T=a;d.dl=b;ug(d,c[8],c[9]);a.tb[b]=d}function ug(a,b,c,d){"string"==typeof b&&(b=Na(b));b&&(a.nh=null,a.Fp=b.id,a.Hp=c,a.lh=b,a.Vi=b[c],a.Th=d)}var vg=[0,Array(4)];
function jg(a,b,c,d){var e=a.Tb[b];e||(e={Oc:[null,null,null,null]});d=d&&8==d.length?d:vg;e.port=c;e.fr=b<<3;e.sg=d[0];e.Oc[0]=d[1][0];e.Oc[1]=d[1][1];e.Oc[2]=d[1][2];e.Oc[3]=d[1][3];e.Bd=d[2];e.ad=d[3];e.Lb=d[4];e.Cc=d[5];e.te=d[6];e.Tf=d[7];a.Tb[b]=e}var wg=[[0,0],[0,0],[0,0],[0,0]];
function kg(a,b,c){var d=a.Jb[b];d||(d={Vb:[0,0],wc:[0,0],Sa:[0,0],Be:[0,0]});c=c&&13==c.length?c:wg;d.Vb[0]=c[0][0];d.Vb[1]=c[0][1];d.wc[0]=c[1][0];d.wc[1]=c[1][1];d.Sa[0]=c[2][0];d.Sa[1]=c[2][1];d.Be[0]=c[3][0];d.Be[1]=c[3][1];d.Fk=c[4];d.mode=c[5];d.$h=c[6];d.Sd=c[7];d.Ae=c[8];d.fd=c[9];d.ig=c[10];d.Fe=c[11];d.Ad=c[12];a.Jb[b]=d}function lg(a,b){return((((b?a.Sb:a.Yc)&12)>>2)+1)*a.uo+32*((b?a.me:a.Te)&15)}function xg(a,b){var c=b?a.Sb:a.Yc;return a.va!=Uf||c&Yf.gi?((c&Yf.Kf)>>Yf.Lf)+1:0}
function og(a,b){if(b<xg(a)){if(!a.Id)return 1;if(b<a.Id.length)switch(a.Id[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function mg(a,b){return((b?a.Sb:a.Yc)&Xf.Kf)>>Xf.Lf}
function ag(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+g)+'" class="'+h+'" data-value="0">'+g+"</div>\n"}c.innerHTML=f;b=Ra(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)null!=e&&null!=e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),yg(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");yg(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Sb=
a.Sb&~e|(c?0:e);break;case "sw2":a.me=a.me&~e|(c?0:e)}hg(a)}}(a,b[g])}function yg(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function hg(a){var b=a.la.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(null!=b){var d;d=""+(lg(a,!0)+"Kb");d+=", "+c[mg(a,!0)]+" Monitor";d+=", "+xg(a,!0)+" Floppy Drives";if(null!=a.Yc&&a.Yc!=a.Sb||null!=a.Te&&a.Te!=a.me)d+=" (Reset required)";b.textContent=d}}
function zg(a,b,c){a=a.Wa[b];var d=a.tb[c],e=d.Ra[a.vb];a.vb^=1;b||0!=c||a.vb||(d.Ra[0]++,255<d.Ra[0]&&(d.Ra[0]=0,d.Ra[1]++,255<d.Ra[1]&&(d.Ra[1]=0)));return e}function Ag(a,b,c,d){a=a.Wa[b];c=a.tb[c];c.Ra[a.vb]=c.Ug[a.vb]=d;a.vb^=1}function Bg(a,b,c){a=a.Wa[b];var d=a.tb[c],e=d.Sa[a.vb];a.vb^=1;b||0!=c||a.vb||(d.Sa[0]--,0>d.Sa[0]&&(d.Sa[0]=255,d.Sa[1]--,0>d.Sa[1]&&(d.Sa[1]=255)));return e}function Cg(a,b,c,d){a=a.Wa[b];c=a.tb[c];c.Sa[a.vb]=c.Vb[a.vb]=d;a.vb^=1}
function Dg(a,b){var c=a.Wa[b],d=c.Od|1;c.Od&=-16;return d}function Eg(a,b,c){a=a.Wa[b];b=c&3;a.Od=a.Od&~(16<<b)|(c&4)<<b+2;a.Dk=c}function Fg(a,b,c){b=a.Wa[b];var d=c&3,e=b.tb[d];e.zd=!!(c&4);e.zd||Gg(a,b.yo+d)}function Hg(a,b){for(var c=a.Wa[b],d=0;d<c.tb.length;d++)sg(c,d)}function Ig(a,b,c){return a.Wa[b].tb[c].fh}function Ng(a,b,c,d){a.Wa[b].tb[c].fh=d}function Og(a,b,c,d,e){ug(a.Wa[b>>2].tb[b&3],c,d,e)}
function Gg(a,b,c){b=a.Wa[b>>2].tb[b&3];b.lh&&b.Vi&&b.Th?(c&&(b.nh=c),b.zd||te(a,b,!0)):c&&c(!0)}function te(a,b,c){c&&(b.count=b.Sa[1]<<8|b.Sa[0],b.Mm=b.mode&12,b.Xk=b.ed=!1);for(var d=!1;0<=b.count&&(c=b.fh<<16|b.Ra[1]<<8|b.Ra[0],4==b.Mm?(d=!0,function(c){b.Vi.call(b.lh,b.Th,-1,function(f,g){0>f&&(b.Xk||(b.Xk=!0),f=255);b.zd||a.ga.Re(c,f);(d=g)&&setTimeout(function(){Pg(b)||te(a,b)},0)})}(c)):8==b.Mm?(c=a.ga.pc(c),0>b.Vi.call(b.lh,b.Th,c)&&(b.ed=!0)):b.ed=!0),!d&&!Pg(b););}
function Pg(a){if(!a.ed&&0<=--a.count&&(a.mode&32?(a.Ra[0]--,0>a.Ra[0]&&(a.Ra[0]=255,a.Ra[1]--,0>a.Ra[1]&&(a.Ra[1]=255))):(a.Ra[0]++,255<a.Ra[0]&&(a.Ra[0]=0,a.Ra[1]++,255<a.Ra[1]&&(a.Ra[1]=0))),!a.zd))return!1;var b=a.T;b.Od=b.Od&~(16<<a.dl)|1<<a.dl;a.mode&16||(a.zd=!0,a.lh=a.Th=null);a.nh&&(a.nh(!a.ed),a.nh=null);return!0}function Qg(a,b){var c=0,d=a.Tb[b];if(null!=d.Tf)switch(d.Tf&3){case 2:c=d.Lb;break;case 3:c=d.Cc}return c}
function Rg(a,b,c){var d=a.Tb[b];if(c&16)d.Bd=0,d.Oc[d.Bd++]=c,d.ad=0,d.te=7,d.Lb=d.Cc=0,d.Tf=10;else if(c&8)c&100&&(a.sa("PIC"+b+"("+ea(d.port)+"): unsupported OCW3 command: "+ea(c)),uc(a.S)),d.Tf=c;else{var e=c&224;if(e&32){var f,g=0;if(96==(e&96))g=1<<(c&7);else for(f=d.te+1;;){f&=7;var h=1<<f;if(d.Cc&h){g=h;break}if(f++==d.te)break}d.Cc&g&&(d.Cc&=~g,Sg(a));e&128&&(a.sa("PIC"+b+"("+ea(d.port)+"): unsupported OCW2 rotate command: "+ea(c)),uc(a.S))}else 192==e?d.te=c&7:(a.sa("PIC"+b+"("+ea(d.port)+
"): unsupported OCW2 automatic EOI command: "+ea(c)),uc(a.S))}}function Tg(a,b,c){var d=a.Tb[b];d.Bd<d.Oc.length?(d.Oc[d.Bd++]=c,2==d.Bd&&d.Oc[0]&2&&d.Bd++,3!=d.Bd||d.Oc[0]&1||d.Bd++):(d.ad=c,d=a.S,d.P|=4,Sg(a,b||253!=c?0:6))}function Ug(a,b,c){var d=a.Tb[b>>3];b=1<<(b&7);d.Lb&b||(d.Lb|=b,d.sg=c||0,Sg(a))}function Vg(a,b){var c=a.Tb[b>>3],d=1<<(b&7);c.Lb&d&&(c.Lb&=~d,Sg(a))}
function Sg(a,b){var c,d=-1;1<a.Xf&&(c=a.Tb[1],d=~(c.Cc|c.ad)&c.Lb);c=a.Tb[0];0<=d&&(c.Lb=d?c.Lb|4:c.Lb&-5);var d=~(c.Cc|c.ad)&c.Lb,e=a.S;e.aa&&(e.ib=d?e.ib|1:e.ib&-2);d&&b&&(c.sg=b)}function re(a,b){void 0===b&&(b=0);var c=-1,d=a.Tb[b];if(d.sg)c=-2,d.sg--;else for(var e=d.Lb&((d.Cc|d.ad)^255),f=d.te+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.Oc[1]+f:re(a,1);0<=c&&(d.Cc|=g,d.Lb&=~g);break}if(f++==d.te)break}return c}
function Wg(a,b){var c=a.Jb[b];c.Sd==c.Ae&&Xg(a,b);if(c.ig)return c.Be[c.Sd++];Yg(a,b);return c.Sa[c.Sd++]}function Zg(a,b,c){var d=a.Jb[b];d.Sd==d.Ae&&Xg(a,b);d.Vb[d.Sd++]=c;d.Sd==d.Ae&&(d.Fe&&0!=d.mode&&8!=d.mode||(d.ig=!1,d.Sa[0]=d.wc[0]=d.Vb[0],d.Sa[1]=d.wc[1]=d.Vb[1],d.Ad=Ac(a.S,a.Xd),d.Fe=!0,d.fd=0!=d.mode,0==b&&(Vg(a,0),c=$g(a,0)*a.Rh|0,6==d.mode&&(c>>=1),xc(a.S,c))),2==b&&Bc(a))}k=T.prototype;k.oo=function(){return null};
k.yp=function(a,b){this.ui=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var g=this.Jb[c];g.$h=f;g.mode=e;g.Fk=d;g.Vb=[0,0];g.Sa=[0,0];g.Be=[0,0];g.fd=!1;g.ig=!1;g.Fe=!1;Xg(this,c);0==c&&Vg(this,0);2==c&&255==this.Tb[0].ad&&77==this.tc&&(c=this.Jb[0],c.wc[0]=c.Vb[0],c.wc[1]=c.Vb[1],c.Ad=Ac(this.S,this.Xd))}else Yg(this,c),d=this.Jb[c],d.Be[0]=d.Sa[0],d.Be[1]=d.Sa[1],d.ig=!0,Xg(this,c)}};function $g(a,b){var c=a.Jb[b],d=c.Vb[1]<<8|c.Vb[0];d||(d=1==c.Ae?256:65536);return d}
function Dc(a,b){var c=a.Jb[b],d=c.wc[1]<<8|c.wc[0];d||(d=1==c.Ae?256:65536);return d}function Xg(a,b){var c=a.Jb[b];c.Sd=32==c.$h?1:0;c.Ae=48==c.$h?2:1}
function Yg(a,b,c){var d=a.Jb[b];if(d.Fe&&(2!=b||a.tc&1)){var e=Ac(a.S,a.Xd),f=(e-d.Ad)/a.Rh|0;0>f&&(d.Ad=e,f=0);var g=$g(a,b),h=Dc(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.fd=!0,d.Fe=!1,b||Ug(a,0))):4==d.mode?(d.fd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.wc[0]=h&255,d.wc[1]=h>>8,d.Ad=e,!b&&d.fd&&Ug(a,0))):6==d.mode&&(h-=f,0>=h&&(d.fd=!d.fd,h=g+h,0>=h&&(h=g),d.wc[0]=h&255,d.wc[1]=h>>8,d.Ad=e,!b&&d.fd&&Ug(a,0)));d.Sa[0]=h&255;d.Sa[1]=h>>8;c&&(a.Ad=0)}return d}
function Cc(a,b){for(var c=0;c<a.Jb.length;c++)Yg(a,c,b);if(a.va>=Zf){var c=a.S.R.hd,d=Ac(a.S,a.Xd);null==a.Ph&&(a.Cg=Ac(a.S,a.Xd),a.pm=1024,a.Ph=Math.floor(a.S.R.hd/a.pm),qg(a));d>=a.Af&&(a.Z[12]|=64,a.Z[11]&64&&(a.Z[12]|=128,Ug(a,8)),a.Af=d+a.Ph);a.Z[0]==a.Z[1]&&a.Z[2]==a.Z[3]&&a.Z[4]==a.Z[5]&&(a.Z[12]|=32,a.Z[11]&32&&(a.Z[12]|=128,Ug(a,8)));var e=d-a.Cg,f=Math.floor(e/c);if(f&&!(a.Z[11]&128)){for(;f--;)if(60<=++a.Z[0]&&(a.Z[0]=0,60<=++a.Z[2]&&(a.Z[2]=0,24<=++a.Z[4]))){a.Z[4]=0;a.Z[6]=a.Z[6]%7+
1;var g;g=a.Z[9];var h=ma[a.Z[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++a.Z[7]>g&&(a.Z[7]=1,12<++a.Z[8]&&(a.Z[8]=1,a.Z[9]=(a.Z[9]+1)%100))}a.Z[12]|=16;a.Z[11]&16&&(a.Z[12]|=128,Ug(a,8))}a.Cg=d-e%c}}k.fo=function(){var a=this.eh;if(this.Uf&16)if(this.tc&128)a=this.Yc;else if(this.ya){var a=this.ya,b=0;a.Kb.length&&(b=a.Kb[0]);a=b}return a};k.rp=function(a,b){this.eh=b};k.ho=function(){return this.tc};k.sp=function(a,b){ah(this,b);this.ya&&bh(this.ya,b&128?!1:!0,b&64?!0:!1)};
function ah(a,b){var c=!!(b&2),d=!!(a.tc&2);a.tc=b;c!=d&&Bc(a,c)}k.io=function(){var a=0,a=this.va==Uf?this.tc&4?a|this.Te&15:a|this.Te>>4&1:this.tc&8?a|this.Yc>>4:a|this.Yc&15;this.tc&1&&Yg(this,2).fd&&(a=this.tc&2?a|32:a|16);return a};k.tp=function(a,b){this.si=b};k.jo=function(){return this.Uf};k.up=function(a,b){this.Uf=b};k.vn=function(){var a=this.Yg;this.hb&=-258;this.ya&&ch(this.ya);return a};
k.Jo=function(a,b){if(this.hb&8)switch(this.sd){case 96:dh(this,b);break;case 209:eh(this,b);break;default:if(dh(this,this.rd&-17),this.ya){var c=-1;switch(b){case 255:c=250,fh(this.ya)}gh(this,c)}}this.sd=b;this.hb&=-9};k.wn=function(){return this.tc&-209|(Ac(this.S)&64?16:0)};k.Ko=function(a,b){ah(this,b)};k.xn=function(){var a=this.hb&255;this.hb&256&&(this.hb|=1,this.hb&=-257);return a};
k.Io=function(a,b){this.sd=b;this.hb|=8;var c=0;240<=this.sd&&(c=this.sd^15,this.sd=240);switch(this.sd){case 192:gh(this,this.se);break;case 173:dh(this,this.rd|16);break;case 174:dh(this,this.rd&-17);this.ya&&ch(this.ya);break;case 170:this.ya&&(this.ya.Kb=[]);dh(this,this.rd|16);gh(this,85);eh(this,3);break;case 224:gh(this,this.rd&16?0:1);break;case 240:c&1&&Id(this.S)}};function dh(a,b){a.rd=b;a.hb=a.hb&-5|b&4;a.ya&&bh(a.ya,!!(b&8),!(b&16))}
function gh(a,b){0<=b&&(a.Yg=b,a.hb&=-2,a.hb|=256)}function eh(a,b){a.pi=b;Bb(a.ga,!!(b&2));b&1||Id(a.S)}function hh(a,b){a.va<Zf?Ug(a,1,4):a.rd&16||a.hb&257||(gh(a,b),ih(a.ya),Ug(a,1,120))}k.Ln=function(){return this.gf};k.Yo=function(a,b){this.gf=b;this.dh=b&128?0:128};
k.Mn=function(a,b){var c=this.gf&63,d;if(13>=c)if(d=this.Z[c],10>c){var e=!1;4!=c&&5!=c||this.Z[11]&2||(d=12>d?d?d:12:(d-=12)?d+128:140,e=!0);this.Z[11]&4||(e&&128<d&&(d-=48),d=d%10|d/10<<4)}else 10==c&&(this.Z[c]^=128);else d=this.Z[c];null!=b&&12==c&&(this.Z[c]&=15,d&128&&Vg(this,8),d&64&&this.Z[11]&64&&qg(this));return d};
k.Zo=function(a,b){var c=this.gf&63,d=b^this.Z[c],e;if(13>=c){if(e=b,10>c){var f=!1;this.Z[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&23<e&&(e+=48),this.Z[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;this.Z[c]=e;11==c&&d&64&&b&64&&qg(this)};k.co=function(){return this.ah};k.op=function(a,b){this.ah=b};k.qp=function(a,b){this.dh=b};k.$o=function(){};k.ap=function(){};
function Vf(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function Bc(a,b){if(a.cg)try{void 0!==b?a.Uk=b:b=a.Uk&&a.S&&a.S.ba.Gb;var c=Math.round(1193181/$g(a,2));if(20>c||2E4<c)b=!1;b?a.cc?a.cc.frequency.value=c:(a.cc=a.cg.createOscillator(),a.cc&&(a.cc.type="number"==typeof a.cc.type?1:"square",a.cc.connect(a.cg.destination),a.cc.frequency.value=c,"start"in a.cc?a.cc.start(0):a.cc.noteOn(0))):a.cc&&("stop"in a.cc?a.cc.stop(0):a.cc.noteOff(0),a.cc.disconnect(),delete a.cc)}catch(d){a.sa("AudioContext exception: "+d.message),a.cg=null}else b&&a.$b("BEEP",
a.set(3,[this.ui,b]);a.set(4,[this.eh,this.tc,this.si,this.Uf,this.dh]);this.va>=$f&&(a.set(5,[this.hb,this.sd,this.rd,this.Yg,this.se,this.pi]),a.set(6,[this.ah,this.Ub,this.gf,this.Z,this.Cg,this.Af]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Sb=b[0];this.me=b[1];this.Yc=b[2];this.Te=b[3];b=a[1];for(c=0;c<this.hh;c++)jg(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.Xf;c++)kg(this,c,0===c?32:160,b[0][c]);b=a[3];this.ui=b[0];for(c=0;c<this.Jb.length;c++)lg(this,c,b[1][c]);b=a[4];this.eh=b[0];this.tc=b[1];this.si=b[2];this.Uf=b[3];this.dh=b[4];if(b=a[5])this.hb=b[0],this.sd=b[1],this.rd=b[2],this.Yg=b[3],this.se=b[4],this.pi=b[5];if(b=a[6])this.ah=b[0],this.Ub=b[1],this.gf=b[2],this.Z=b[3],
this.Cg=b[4],this.Af=b[5],og(this);return!0};var sg=[0,null,null,0,Array(4)];function jg(a,b,c){var d=a.Wa[b];d||(d={tb:Array(4)});c=c&&5==c.length?c:sg;d.Od=c[0];d.qi=c[1];d.Dk=c[2];d.vb=c[3];d.yo=b<<2;for(var e=0;e<d.tb.length;e++)tg(d,e,c[4][e]);a.Wa[b]=d}var ug=[!0,[0,0],[0,0],[0,0],[0,0]];
function tg(a,b,c){var d=a.tb[b];d||(d={Ug:[0,0],Vb:[0,0],Ra:[0,0],Sa:[0,0]});c=c&&8==c.length?c:ug;d.zd=c[0];d.Ug[0]=c[1][0];d.Ug[1]=c[1][1];d.Vb[0]=c[2][0];d.Vb[1]=c[2][1];d.Ra[0]=c[3][0];d.Ra[1]=c[3][1];d.Sa[0]=c[4][0];d.Sa[1]=c[4][1];d.mode=c[5];d.fh=c[6];d.T=a;d.dl=b;vg(d,c[8],c[9]);a.tb[b]=d}function vg(a,b,c,d){"string"==typeof b&&(b=Na(b));b&&(a.nh=null,a.Fp=b.id,a.Hp=c,a.lh=b,a.Vi=b[c],a.Th=d)}var wg=[0,Array(4)];
function kg(a,b,c,d){var e=a.Tb[b];e||(e={Oc:[null,null,null,null]});d=d&&8==d.length?d:wg;e.port=c;e.fr=b<<3;e.sg=d[0];e.Oc[0]=d[1][0];e.Oc[1]=d[1][1];e.Oc[2]=d[1][2];e.Oc[3]=d[1][3];e.Bd=d[2];e.ad=d[3];e.Lb=d[4];e.Cc=d[5];e.te=d[6];e.Tf=d[7];a.Tb[b]=e}var xg=[[0,0],[0,0],[0,0],[0,0]];
function lg(a,b,c){var d=a.Jb[b];d||(d={Vb:[0,0],wc:[0,0],Sa:[0,0],Be:[0,0]});c=c&&13==c.length?c:xg;d.Vb[0]=c[0][0];d.Vb[1]=c[0][1];d.wc[0]=c[1][0];d.wc[1]=c[1][1];d.Sa[0]=c[2][0];d.Sa[1]=c[2][1];d.Be[0]=c[3][0];d.Be[1]=c[3][1];d.Fk=c[4];d.mode=c[5];d.$h=c[6];d.Sd=c[7];d.Ae=c[8];d.fd=c[9];d.ig=c[10];d.Fe=c[11];d.Ad=c[12];a.Jb[b]=d}function mg(a,b){return((((b?a.Sb:a.Yc)&12)>>2)+1)*a.uo+32*((b?a.me:a.Te)&15)}function yg(a,b){var c=b?a.Sb:a.Yc;return a.va!=Vf||c&Zf.gi?((c&Zf.Kf)>>Zf.Lf)+1:0}
function pg(a,b){if(b<yg(a)){if(!a.Id)return 1;if(b<a.Id.length)switch(a.Id[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function ng(a,b){return((b?a.Sb:a.Yc)&Yf.Kf)>>Yf.Lf}
function bg(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+g)+'" class="'+h+'" data-value="0">'+g+"</div>\n"}c.innerHTML=f;b=Ra(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)null!=e&&null!=e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),zg(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");zg(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Sb=
a.Sb&~e|(c?0:e);break;case "sw2":a.me=a.me&~e|(c?0:e)}ig(a)}}(a,b[g])}function zg(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function ig(a){var b=a.la.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(null!=b){var d;d=""+(mg(a,!0)+"Kb");d+=", "+c[ng(a,!0)]+" Monitor";d+=", "+yg(a,!0)+" Floppy Drives";if(null!=a.Yc&&a.Yc!=a.Sb||null!=a.Te&&a.Te!=a.me)d+=" (Reset required)";b.textContent=d}}
function Ag(a,b,c){a=a.Wa[b];var d=a.tb[c],e=d.Ra[a.vb];a.vb^=1;b||0!=c||a.vb||(d.Ra[0]++,255<d.Ra[0]&&(d.Ra[0]=0,d.Ra[1]++,255<d.Ra[1]&&(d.Ra[1]=0)));return e}function Bg(a,b,c,d){a=a.Wa[b];c=a.tb[c];c.Ra[a.vb]=c.Ug[a.vb]=d;a.vb^=1}function Cg(a,b,c){a=a.Wa[b];var d=a.tb[c],e=d.Sa[a.vb];a.vb^=1;b||0!=c||a.vb||(d.Sa[0]--,0>d.Sa[0]&&(d.Sa[0]=255,d.Sa[1]--,0>d.Sa[1]&&(d.Sa[1]=255)));return e}function Dg(a,b,c,d){a=a.Wa[b];c=a.tb[c];c.Sa[a.vb]=c.Vb[a.vb]=d;a.vb^=1}
function Eg(a,b){var c=a.Wa[b],d=c.Od|1;c.Od&=-16;return d}function Fg(a,b,c){a=a.Wa[b];b=c&3;a.Od=a.Od&~(16<<b)|(c&4)<<b+2;a.Dk=c}function Gg(a,b,c){b=a.Wa[b];var d=c&3,e=b.tb[d];e.zd=!!(c&4);e.zd||Hg(a,b.yo+d)}function Ig(a,b){for(var c=a.Wa[b],d=0;d<c.tb.length;d++)tg(c,d)}function Ng(a,b,c){return a.Wa[b].tb[c].fh}function Og(a,b,c,d){a.Wa[b].tb[c].fh=d}function Pg(a,b,c,d,e){vg(a.Wa[b>>2].tb[b&3],c,d,e)}
function Hg(a,b,c){b=a.Wa[b>>2].tb[b&3];b.lh&&b.Vi&&b.Th?(c&&(b.nh=c),b.zd||te(a,b,!0)):c&&c(!0)}function te(a,b,c){c&&(b.count=b.Sa[1]<<8|b.Sa[0],b.Mm=b.mode&12,b.Xk=b.ed=!1);for(var d=!1;0<=b.count&&(c=b.fh<<16|b.Ra[1]<<8|b.Ra[0],4==b.Mm?(d=!0,function(c){b.Vi.call(b.lh,b.Th,-1,function(f,g){0>f&&(b.Xk||(b.Xk=!0),f=255);b.zd||a.ga.Re(c,f);(d=g)&&setTimeout(function(){Qg(b)||te(a,b)},0)})}(c)):8==b.Mm?(c=a.ga.pc(c),0>b.Vi.call(b.lh,b.Th,c)&&(b.ed=!0)):b.ed=!0),!d&&!Qg(b););}
function Qg(a){if(!a.ed&&0<=--a.count&&(a.mode&32?(a.Ra[0]--,0>a.Ra[0]&&(a.Ra[0]=255,a.Ra[1]--,0>a.Ra[1]&&(a.Ra[1]=255))):(a.Ra[0]++,255<a.Ra[0]&&(a.Ra[0]=0,a.Ra[1]++,255<a.Ra[1]&&(a.Ra[1]=0))),!a.zd))return!1;var b=a.T;b.Od=b.Od&~(16<<a.dl)|1<<a.dl;a.mode&16||(a.zd=!0,a.lh=a.Th=null);a.nh&&(a.nh(!a.ed),a.nh=null);return!0}function Rg(a,b){var c=0,d=a.Tb[b];if(null!=d.Tf)switch(d.Tf&3){case 2:c=d.Lb;break;case 3:c=d.Cc}return c}
function Sg(a,b,c){var d=a.Tb[b];if(c&16)d.Bd=0,d.Oc[d.Bd++]=c,d.ad=0,d.te=7,d.Lb=d.Cc=0,d.Tf=10;else if(c&8)c&100&&(a.sa("PIC"+b+"("+ea(d.port)+"): unsupported OCW3 command: "+ea(c)),uc(a.S)),d.Tf=c;else{var e=c&224;if(e&32){var f,g=0;if(96==(e&96))g=1<<(c&7);else for(f=d.te+1;;){f&=7;var h=1<<f;if(d.Cc&h){g=h;break}if(f++==d.te)break}d.Cc&g&&(d.Cc&=~g,Tg(a));e&128&&(a.sa("PIC"+b+"("+ea(d.port)+"): unsupported OCW2 rotate command: "+ea(c)),uc(a.S))}else 192==e?d.te=c&7:(a.sa("PIC"+b+"("+ea(d.port)+
"): unsupported OCW2 automatic EOI command: "+ea(c)),uc(a.S))}}function Ug(a,b,c){var d=a.Tb[b];d.Bd<d.Oc.length?(d.Oc[d.Bd++]=c,2==d.Bd&&d.Oc[0]&2&&d.Bd++,3!=d.Bd||d.Oc[0]&1||d.Bd++):(d.ad=c,d=a.S,d.P|=4,Tg(a,b||253!=c?0:6))}function Vg(a,b,c){var d=a.Tb[b>>3];b=1<<(b&7);d.Lb&b||(d.Lb|=b,d.sg=c||0,Tg(a))}function Wg(a,b){var c=a.Tb[b>>3],d=1<<(b&7);c.Lb&d&&(c.Lb&=~d,Tg(a))}
function Tg(a,b){var c,d=-1;1<a.Xf&&(c=a.Tb[1],d=~(c.Cc|c.ad)&c.Lb);c=a.Tb[0];0<=d&&(c.Lb=d?c.Lb|4:c.Lb&-5);var d=~(c.Cc|c.ad)&c.Lb,e=a.S;e.aa&&(e.ib=d?e.ib|1:e.ib&-2);d&&b&&(c.sg=b)}function re(a,b){void 0===b&&(b=0);var c=-1,d=a.Tb[b];if(d.sg)c=-2,d.sg--;else for(var e=d.Lb&((d.Cc|d.ad)^255),f=d.te+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.Oc[1]+f:re(a,1);0<=c&&(d.Cc|=g,d.Lb&=~g);break}if(f++==d.te)break}return c}
function Xg(a,b){var c=a.Jb[b];c.Sd==c.Ae&&Yg(a,b);if(c.ig)return c.Be[c.Sd++];Zg(a,b);return c.Sa[c.Sd++]}function $g(a,b,c){var d=a.Jb[b];d.Sd==d.Ae&&Yg(a,b);d.Vb[d.Sd++]=c;d.Sd==d.Ae&&(d.Fe&&0!=d.mode&&8!=d.mode||(d.ig=!1,d.Sa[0]=d.wc[0]=d.Vb[0],d.Sa[1]=d.wc[1]=d.Vb[1],d.Ad=Ac(a.S,a.Xd),d.Fe=!0,d.fd=0!=d.mode,0==b&&(Wg(a,0),c=ah(a,0)*a.Rh|0,6==d.mode&&(c>>=1),xc(a.S,c))),2==b&&Bc(a))}k=T.prototype;k.oo=function(){return null};
k.yp=function(a,b){this.ui=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var g=this.Jb[c];g.$h=f;g.mode=e;g.Fk=d;g.Vb=[0,0];g.Sa=[0,0];g.Be=[0,0];g.fd=!1;g.ig=!1;g.Fe=!1;Yg(this,c);0==c&&Wg(this,0);2==c&&255==this.Tb[0].ad&&77==this.tc&&(c=this.Jb[0],c.wc[0]=c.Vb[0],c.wc[1]=c.Vb[1],c.Ad=Ac(this.S,this.Xd))}else Zg(this,c),d=this.Jb[c],d.Be[0]=d.Sa[0],d.Be[1]=d.Sa[1],d.ig=!0,Yg(this,c)}};function ah(a,b){var c=a.Jb[b],d=c.Vb[1]<<8|c.Vb[0];d||(d=1==c.Ae?256:65536);return d}
function Dc(a,b){var c=a.Jb[b],d=c.wc[1]<<8|c.wc[0];d||(d=1==c.Ae?256:65536);return d}function Yg(a,b){var c=a.Jb[b];c.Sd=32==c.$h?1:0;c.Ae=48==c.$h?2:1}
function Zg(a,b,c){var d=a.Jb[b];if(d.Fe&&(2!=b||a.tc&1)){var e=Ac(a.S,a.Xd),f=(e-d.Ad)/a.Rh|0;0>f&&(d.Ad=e,f=0);var g=ah(a,b),h=Dc(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.fd=!0,d.Fe=!1,b||Vg(a,0))):4==d.mode?(d.fd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.wc[0]=h&255,d.wc[1]=h>>8,d.Ad=e,!b&&d.fd&&Vg(a,0))):6==d.mode&&(h-=f,0>=h&&(d.fd=!d.fd,h=g+h,0>=h&&(h=g),d.wc[0]=h&255,d.wc[1]=h>>8,d.Ad=e,!b&&d.fd&&Vg(a,0)));d.Sa[0]=h&255;d.Sa[1]=h>>8;c&&(a.Ad=0)}return d}
function Cc(a,b){for(var c=0;c<a.Jb.length;c++)Zg(a,c,b);if(a.va>=$f){var c=a.S.R.hd,d=Ac(a.S,a.Xd);null==a.Ph&&(a.Cg=Ac(a.S,a.Xd),a.pm=1024,a.Ph=Math.floor(a.S.R.hd/a.pm),rg(a));d>=a.Af&&(a.Z[12]|=64,a.Z[11]&64&&(a.Z[12]|=128,Vg(a,8)),a.Af=d+a.Ph);a.Z[0]==a.Z[1]&&a.Z[2]==a.Z[3]&&a.Z[4]==a.Z[5]&&(a.Z[12]|=32,a.Z[11]&32&&(a.Z[12]|=128,Vg(a,8)));var e=d-a.Cg,f=Math.floor(e/c);if(f&&!(a.Z[11]&128)){for(;f--;)if(60<=++a.Z[0]&&(a.Z[0]=0,60<=++a.Z[2]&&(a.Z[2]=0,24<=++a.Z[4]))){a.Z[4]=0;a.Z[6]=a.Z[6]%7+
1;var g;g=a.Z[9];var h=ma[a.Z[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++a.Z[7]>g&&(a.Z[7]=1,12<++a.Z[8]&&(a.Z[8]=1,a.Z[9]=(a.Z[9]+1)%100))}a.Z[12]|=16;a.Z[11]&16&&(a.Z[12]|=128,Vg(a,8))}a.Cg=d-e%c}}k.fo=function(){var a=this.eh;if(this.Uf&16)if(this.tc&128)a=this.Yc;else if(this.ya){var a=this.ya,b=0;a.Kb.length&&(b=a.Kb[0]);a=b}return a};k.rp=function(a,b){this.eh=b};k.ho=function(){return this.tc};k.sp=function(a,b){bh(this,b);this.ya&&ch(this.ya,b&128?!1:!0,b&64?!0:!1)};
function bh(a,b){var c=!!(b&2),d=!!(a.tc&2);a.tc=b;c!=d&&Bc(a,c)}k.io=function(){var a=0,a=this.va==Vf?this.tc&4?a|this.Te&15:a|this.Te>>4&1:this.tc&8?a|this.Yc>>4:a|this.Yc&15;this.tc&1&&Zg(this,2).fd&&(a=this.tc&2?a|32:a|16);return a};k.tp=function(a,b){this.si=b};k.jo=function(){return this.Uf};k.up=function(a,b){this.Uf=b};k.vn=function(){var a=this.Yg;this.hb&=-258;this.ya&&dh(this.ya);return a};
k.Jo=function(a,b){if(this.hb&8)switch(this.sd){case 96:eh(this,b);break;case 209:fh(this,b);break;default:if(eh(this,this.rd&-17),this.ya){var c=-1;switch(b){case 255:c=250,gh(this.ya)}hh(this,c)}}this.sd=b;this.hb&=-9};k.wn=function(){return this.tc&-209|(Ac(this.S)&64?16:0)};k.Ko=function(a,b){bh(this,b)};k.xn=function(){var a=this.hb&255;this.hb&256&&(this.hb|=1,this.hb&=-257);return a};
k.Io=function(a,b){this.sd=b;this.hb|=8;var c=0;240<=this.sd&&(c=this.sd^15,this.sd=240);switch(this.sd){case 192:hh(this,this.se);break;case 173:eh(this,this.rd|16);break;case 174:eh(this,this.rd&-17);this.ya&&dh(this.ya);break;case 170:this.ya&&(this.ya.Kb=[]);eh(this,this.rd|16);hh(this,85);fh(this,3);break;case 224:hh(this,this.rd&16?0:1);break;case 240:c&1&&Id(this.S)}};function eh(a,b){a.rd=b;a.hb=a.hb&-5|b&4;a.ya&&ch(a.ya,!!(b&8),!(b&16))}
function hh(a,b){0<=b&&(a.Yg=b,a.hb&=-2,a.hb|=256)}function fh(a,b){a.pi=b;zb(a.ga,!!(b&2));b&1||Id(a.S)}function ih(a,b){a.va<$f?Vg(a,1,4):a.rd&16||a.hb&257||(hh(a,b),jh(a.ya),Vg(a,1,120))}k.Ln=function(){return this.gf};k.Yo=function(a,b){this.gf=b;this.dh=b&128?0:128};
k.Mn=function(a,b){var c=this.gf&63,d;if(13>=c)if(d=this.Z[c],10>c){var e=!1;4!=c&&5!=c||this.Z[11]&2||(d=12>d?d?d:12:(d-=12)?d+128:140,e=!0);this.Z[11]&4||(e&&128<d&&(d-=48),d=d%10|d/10<<4)}else 10==c&&(this.Z[c]^=128);else d=this.Z[c];null!=b&&12==c&&(this.Z[c]&=15,d&128&&Wg(this,8),d&64&&this.Z[11]&64&&rg(this));return d};
k.Zo=function(a,b){var c=this.gf&63,d=b^this.Z[c],e;if(13>=c){if(e=b,10>c){var f=!1;this.Z[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&23<e&&(e+=48),this.Z[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;this.Z[c]=e;11==c&&d&64&&b&64&&rg(this)};k.co=function(){return this.ah};k.op=function(a,b){this.ah=b};k.qp=function(a,b){this.dh=b};k.$o=function(){};k.ap=function(){};
function Wf(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function Bc(a,b){if(a.cg)try{void 0!==b?a.Uk=b:b=a.Uk&&a.S&&a.S.ba.Gb;var c=Math.round(1193181/ah(a,2));if(20>c||2E4<c)b=!1;b?a.cc?a.cc.frequency.value=c:(a.cc=a.cg.createOscillator(),a.cc&&(a.cc.type="number"==typeof a.cc.type?1:"square",a.cc.connect(a.cg.destination),a.cc.frequency.value=c,"start"in a.cc?a.cc.start(0):a.cc.noteOn(0))):a.cc&&("stop"in a.cc?a.cc.stop(0):a.cc.noteOff(0),a.cc.disconnect(),delete a.cc)}catch(d){a.sa("AudioContext exception: "+d.message),a.cg=null}else b&&a.$b("BEEP",
4194304)}
var bg={0:function(){return zg(this,0,0)},1:function(){return Bg(this,0,0)},2:function(){return zg(this,0,1)},3:function(){return Bg(this,0,1)},4:function(){return zg(this,0,2)},5:function(){return Bg(this,0,2)},6:function(){return zg(this,0,3)},7:function(){return Bg(this,0,3)},8:function(){return Dg(this,0)},32:function(){return Qg(this,0)},33:function(){return this.Tb[0].ad},64:function(){return Wg(this,0)},65:function(){return Wg(this,1)},66:function(){return Wg(this,2)},67:T.prototype.oo,129:function(){return Ig(this,
0,2)},130:function(){return Ig(this,0,3)},131:function(){return Ig(this,0,1)},135:function(){return Ig(this,0,0)}},dg={96:T.prototype.fo,97:T.prototype.ho,98:T.prototype.io,99:T.prototype.jo},fg={96:T.prototype.vn,97:T.prototype.wn,100:T.prototype.xn,112:T.prototype.Ln,113:T.prototype.Mn,128:T.prototype.co,132:function(){return this.Ub[0]},133:function(){return this.Ub[1]},134:function(){return this.Ub[2]},136:function(){return this.Ub[3]},137:function(){return Ig(this,1,2)},138:function(){return Ig(this,
1,3)},139:function(){return Ig(this,1,1)},140:function(){return this.Ub[4]},141:function(){return this.Ub[5]},142:function(){return this.Ub[6]},143:function(){return Ig(this,1,0)},160:function(){return Qg(this,1)},161:function(){return this.Tb[1].ad},192:function(){return zg(this,1,0)},194:function(){return Bg(this,1,0)},196:function(){return zg(this,1,1)},198:function(){return Bg(this,1,1)},200:function(){return zg(this,1,2)},202:function(){return Bg(this,1,2)},204:function(){return zg(this,1,3)},
206:function(){return Bg(this,1,3)},208:function(){return Dg(this,1)}},cg={0:function(a,b){Ag(this,0,0,b)},1:function(a,b){Cg(this,0,0,b)},2:function(a,b){Ag(this,0,1,b)},3:function(a,b){Cg(this,0,1,b)},4:function(a,b){Ag(this,0,2,b)},5:function(a,b){Cg(this,0,2,b)},6:function(a,b){Ag(this,0,3,b)},7:function(a,b){Cg(this,0,3,b)},8:function(a,b){this.Wa[0].qi=b},9:function(a,b){Eg(this,0,b)},10:function(a,b){Fg(this,0,b)},11:function(a,b){this.Wa[0].tb[b&3].mode=b},12:function(){this.Wa[0].vb=0},13:function(){Hg(this,
0)},32:function(a,b){Rg(this,0,b)},33:function(a,b){Tg(this,0,b)},64:function(a,b){Zg(this,0,b)},65:function(a,b){Zg(this,1,b)},66:function(a,b){Zg(this,2,b)},67:T.prototype.yp,129:function(a,b){Ng(this,0,2,b)},130:function(a,b){Ng(this,0,3,b)},131:function(a,b){Ng(this,0,1,b)},135:function(a,b){Ng(this,0,0,b)}},eg={96:T.prototype.rp,97:T.prototype.sp,98:T.prototype.tp,99:T.prototype.up,160:T.prototype.qp},gg={96:T.prototype.Jo,97:T.prototype.Ko,100:T.prototype.Io,112:T.prototype.Yo,113:T.prototype.Zo,
128:T.prototype.op,132:function(a,b){this.Ub[0]=b},133:function(a,b){this.Ub[1]=b},134:function(a,b){this.Ub[2]=b},136:function(a,b){this.Ub[3]=b},137:function(a,b){Ng(this,1,2,b)},138:function(a,b){Ng(this,1,3,b)},139:function(a,b){Ng(this,1,1,b)},140:function(a,b){this.Ub[4]=b},141:function(a,b){this.Ub[5]=b},142:function(a,b){this.Ub[6]=b},143:function(a,b){Ng(this,1,0,b)},160:function(a,b){Rg(this,1,b)},161:function(a,b){Tg(this,1,b)},192:function(a,b){Ag(this,1,0,b)},194:function(a,b){Cg(this,
1,0,b)},196:function(a,b){Ag(this,1,1,b)},198:function(a,b){Cg(this,1,1,b)},200:function(a,b){Ag(this,1,2,b)},202:function(a,b){Cg(this,1,2,b)},204:function(a,b){Ag(this,1,3,b)},206:function(a,b){Cg(this,1,3,b)},208:function(a,b){this.Wa[1].qi=b},210:function(a,b){Eg(this,1,b)},212:function(a,b){Fg(this,1,b)},214:function(a,b){this.Wa[1].tb[b&3].mode=b},216:function(){this.Wa[1].vb=0},218:function(){Hg(this,1)},240:T.prototype.$o,241:T.prototype.ap};
za(function(){for(var a=Ra(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new T(d);Qa(d,c);hg(d)}});function jh(a){n.call(this,"ROM",a,jh);this.ub=null;this.ni=a.addr;this.Hf=a.size;this.Qf=a.alias;this.Ig=a.file;this.Gp=fa(this.Ig);this.fl=a.notify;if(this.Ig){a=this.Ig;var b=ga(this.Gp);"json"!=b&&"hex"!=b&&(a=oa()+"/api/v1/dump?file="+this.Ig+"&format=bytes&decimal=true");na(a,!0,null,this,jh.prototype.Eo)}}La(n,jh);
jh.prototype.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;kh(this)};jh.prototype.Zb=function(){this.mi&&(this.Ua&&this.Ua.Jq(this.ni,this.Hf,this.mi),delete this.mi);return!0};jh.prototype.Yb=function(){return!0};
jh.prototype.Eo=function(a,b,c){if(c)this.sa("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.ub=e;else if(f)for(this.ub=Array(4*f.length),c=b=0;b<f.length;b++)this.ub[c++]=f[b]&255,this.ub[c++]=f[b]>>8&255,this.ub[c++]=f[b]>>16&255,this.ub[c++]=f[b]>>24&255;else this.ub=d;this.mi=d.symbols;if(!this.ub.length){m("Empty ROM: "+a);return}if(1==this.ub.length){m(this.ub[0]);return}}catch(g){this.sa("ROM data error: "+
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.ub=Array(a.length),d=0;d<a.length;d++)this.ub[d]=parseInt(a[d],16);kh(this)}};
function kh(a){if(!Ta(a))if(!a.Ig)p(a);else if(a.ub&&a.ga){if(a.ub.length!=a.Hf)Ua(a,"ROM size (0x"+ca(a.ub.length)+") does not match specified size ("+("0x"+ca(a.Hf))+")");else{var b;b=a.ni;if(Cb(a.ga,b,a.Hf,Sb)){for(var c=0;c<a.ub.length;c++){var d=a.ga,e=b+c;d.ia[(e&d.Ya)>>>d.Ia].kk(e&d.xa,a.ub[c]&255)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.Qf?b.push(a.Qf):null!=a.Qf&&a.Qf.length&&(b=a.Qf);for(c=0;c<b.length;c++){var d=a,e=b[c],f=Fb(d.ga,d.ni,d.Hf);Gb(d.ga,e,d.Hf,f)}a.fl&&(b=Na(a.fl,a.id))&&
("ega"==b.va&&lh(b,a.ub,[8752,12640],8),p(b));delete a.ub}}p(a)}}za(function(){for(var a=Ra(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new jh(d);Qa(d,c)}});function mh(a){n.call(this,"RAM",a,mh);this.Vg=a.addr;this.Dd=a.size;this.qn=a.test;this.mn=!!this.Dd;this.oh=!1}La(n,mh);mh.prototype.yc=function(a,b,c){this.ga=b;this.S=c;this.aa=bb(a,"ChipSet");p(this)};mh.prototype.Zb=function(a,b){b||this.reset();return!0};mh.prototype.Yb=function(){return!0};
mh.prototype.reset=function(){if(!this.Vg&&!this.mn&&this.aa){var a=1024*lg(this.aa);this.Dd&&a!=this.Dd&&(Eb(this.ga,this.Vg,this.Dd),this.oh=!1);this.Dd=a}!this.oh&&this.Dd&&Cb(this.ga,this.Vg,this.Dd,1)&&(this.oh=!0,a=Math.floor(this.Dd/1024)+"Kb",this.ag&&(a+=" ("+this.ag+")",this.ag=null),this.status(a),"ramCPQ"==this.Dh&&(this.T=new nh,Cb(this.ga,oh,1,4,this.T)));if(this.oh){if(this.qn||Ib(this.ga,1138,4660),this.aa&&(a=this.aa,a.Z)){var b=1048576>this.Vg?21:23,c=a.Z[b]|a.Z[b+1]<<8,c=c+(this.Dd>>
10);a.Z[b]=c&255;a.Z[b+1]=c>>8;pg(a)}}else m("No RAM allocated")};function nh(){this.Ck=ph;this.Tm=qh;this.Mf=null}var oh=2160066560,ph=255,qh=0;function rh(){return this.T.Tm}function sh(a,b){var c,d=this.T,e=d.ga;b!=d.Ck&&(b&1?d.Mf&&(Gb(e,917504,131072,d.Mf),d.Mf=null):(d.Mf||(d.Mf=Fb(e,917504,131072)),c=Fb(e,16646144,131072),Gb(e,917504,131072,c,b&2?1:Sb)),d.Ck=b)}var th=[rh,rh,rh,sh,sh,sh];nh.prototype.al=function(){return[null,0]};nh.prototype.Wi=function(){return th};
za(function(){for(var a=Ra(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new mh(d);Qa(d,c)}});function uh(a){n.call(this,"Keyboard",a,uh);this.Sk=ua("Mobi");this.nn=ua("MSIE");this.$b("mobile keyboard support: "+(this.Sk?"true":"false"));this.Ik=0;this.th=!0;this.Si=this.Ni=!1;this.Eb=[];this.wo=500;this.xo=100;this.vo=50;this.Nk=!1;p(this)}La(n,uh);
var cg={0:function(){return Ag(this,0,0)},1:function(){return Cg(this,0,0)},2:function(){return Ag(this,0,1)},3:function(){return Cg(this,0,1)},4:function(){return Ag(this,0,2)},5:function(){return Cg(this,0,2)},6:function(){return Ag(this,0,3)},7:function(){return Cg(this,0,3)},8:function(){return Eg(this,0)},32:function(){return Rg(this,0)},33:function(){return this.Tb[0].ad},64:function(){return Xg(this,0)},65:function(){return Xg(this,1)},66:function(){return Xg(this,2)},67:T.prototype.oo,129:function(){return Ng(this,
0,2)},130:function(){return Ng(this,0,3)},131:function(){return Ng(this,0,1)},135:function(){return Ng(this,0,0)}},eg={96:T.prototype.fo,97:T.prototype.ho,98:T.prototype.io,99:T.prototype.jo},gg={96:T.prototype.vn,97:T.prototype.wn,100:T.prototype.xn,112:T.prototype.Ln,113:T.prototype.Mn,128:T.prototype.co,132:function(){return this.Ub[0]},133:function(){return this.Ub[1]},134:function(){return this.Ub[2]},136:function(){return this.Ub[3]},137:function(){return Ng(this,1,2)},138:function(){return Ng(this,
1,3)},139:function(){return Ng(this,1,1)},140:function(){return this.Ub[4]},141:function(){return this.Ub[5]},142:function(){return this.Ub[6]},143:function(){return Ng(this,1,0)},160:function(){return Rg(this,1)},161:function(){return this.Tb[1].ad},192:function(){return Ag(this,1,0)},194:function(){return Cg(this,1,0)},196:function(){return Ag(this,1,1)},198:function(){return Cg(this,1,1)},200:function(){return Ag(this,1,2)},202:function(){return Cg(this,1,2)},204:function(){return Ag(this,1,3)},
206:function(){return Cg(this,1,3)},208:function(){return Eg(this,1)}},dg={0:function(a,b){Bg(this,0,0,b)},1:function(a,b){Dg(this,0,0,b)},2:function(a,b){Bg(this,0,1,b)},3:function(a,b){Dg(this,0,1,b)},4:function(a,b){Bg(this,0,2,b)},5:function(a,b){Dg(this,0,2,b)},6:function(a,b){Bg(this,0,3,b)},7:function(a,b){Dg(this,0,3,b)},8:function(a,b){this.Wa[0].qi=b},9:function(a,b){Fg(this,0,b)},10:function(a,b){Gg(this,0,b)},11:function(a,b){this.Wa[0].tb[b&3].mode=b},12:function(){this.Wa[0].vb=0},13:function(){Ig(this,
0)},32:function(a,b){Sg(this,0,b)},33:function(a,b){Ug(this,0,b)},64:function(a,b){$g(this,0,b)},65:function(a,b){$g(this,1,b)},66:function(a,b){$g(this,2,b)},67:T.prototype.yp,129:function(a,b){Og(this,0,2,b)},130:function(a,b){Og(this,0,3,b)},131:function(a,b){Og(this,0,1,b)},135:function(a,b){Og(this,0,0,b)}},fg={96:T.prototype.rp,97:T.prototype.sp,98:T.prototype.tp,99:T.prototype.up,160:T.prototype.qp},hg={96:T.prototype.Jo,97:T.prototype.Ko,100:T.prototype.Io,112:T.prototype.Yo,113:T.prototype.Zo,
128:T.prototype.op,132:function(a,b){this.Ub[0]=b},133:function(a,b){this.Ub[1]=b},134:function(a,b){this.Ub[2]=b},136:function(a,b){this.Ub[3]=b},137:function(a,b){Og(this,1,2,b)},138:function(a,b){Og(this,1,3,b)},139:function(a,b){Og(this,1,1,b)},140:function(a,b){this.Ub[4]=b},141:function(a,b){this.Ub[5]=b},142:function(a,b){this.Ub[6]=b},143:function(a,b){Og(this,1,0,b)},160:function(a,b){Sg(this,1,b)},161:function(a,b){Ug(this,1,b)},192:function(a,b){Bg(this,1,0,b)},194:function(a,b){Dg(this,
1,0,b)},196:function(a,b){Bg(this,1,1,b)},198:function(a,b){Dg(this,1,1,b)},200:function(a,b){Bg(this,1,2,b)},202:function(a,b){Dg(this,1,2,b)},204:function(a,b){Bg(this,1,3,b)},206:function(a,b){Dg(this,1,3,b)},208:function(a,b){this.Wa[1].qi=b},210:function(a,b){Fg(this,1,b)},212:function(a,b){Gg(this,1,b)},214:function(a,b){this.Wa[1].tb[b&3].mode=b},216:function(){this.Wa[1].vb=0},218:function(){Ig(this,1)},240:T.prototype.$o,241:T.prototype.ap};
za(function(){for(var a=Ra(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new T(d);Qa(d,c);ig(d)}});function kh(a){n.call(this,"ROM",a,kh);this.ub=null;this.ni=a.addr;this.Hf=a.size;this.Qf=a.alias;this.Ig=a.file;this.Gp=fa(this.Ig);this.fl=a.notify;if(this.Ig){a=this.Ig;var b=ga(this.Gp);"json"!=b&&"hex"!=b&&(a=oa()+"/api/v1/dump?file="+this.Ig+"&format=bytes&decimal=true");na(a,!0,null,this,kh.prototype.Eo)}}La(n,kh);
kh.prototype.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;lh(this)};kh.prototype.Zb=function(){this.mi&&(this.Ua&&this.Ua.Jq(this.ni,this.Hf,this.mi),delete this.mi);return!0};kh.prototype.Yb=function(){return!0};
kh.prototype.Eo=function(a,b,c){if(c)this.sa("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.ub=e;else if(f)for(this.ub=Array(4*f.length),c=b=0;b<f.length;b++)this.ub[c++]=f[b]&255,this.ub[c++]=f[b]>>8&255,this.ub[c++]=f[b]>>16&255,this.ub[c++]=f[b]>>24&255;else this.ub=d;this.mi=d.symbols;if(!this.ub.length){m("Empty ROM: "+a);return}if(1==this.ub.length){m(this.ub[0]);return}}catch(g){this.sa("ROM data error: "+
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.ub=Array(a.length),d=0;d<a.length;d++)this.ub[d]=parseInt(a[d],16);lh(this)}};
function lh(a){if(!Ta(a))if(!a.Ig)p(a);else if(a.ub&&a.ga){if(a.ub.length!=a.Hf)Ua(a,"ROM size (0x"+ca(a.ub.length)+") does not match specified size ("+("0x"+ca(a.Hf))+")");else{var b;b=a.ni;if(Cb(a.ga,b,a.Hf,Sb)){for(var c=0;c<a.ub.length;c++){var d=a.ga,e=b+c;d.ia[(e&d.Ya)>>>d.Ia].kk(e&d.xa,a.ub[c]&255)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.Qf?b.push(a.Qf):null!=a.Qf&&a.Qf.length&&(b=a.Qf);for(c=0;c<b.length;c++){var d=a,e=b[c],f=Fb(d.ga,d.ni,d.Hf);Gb(d.ga,e,d.Hf,f)}a.fl&&(b=Na(a.fl,a.id))&&
("ega"==b.va&&mh(b,a.ub,[8752,12640],8),p(b));delete a.ub}}p(a)}}za(function(){for(var a=Ra(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new kh(d);Qa(d,c)}});function nh(a){n.call(this,"RAM",a,nh);this.Vg=a.addr;this.Dd=a.size;this.qn=a.test;this.mn=!!this.Dd;this.oh=!1}La(n,nh);nh.prototype.yc=function(a,b,c){this.ga=b;this.S=c;this.aa=bb(a,"ChipSet");p(this)};nh.prototype.Zb=function(a,b){b||this.reset();return!0};nh.prototype.Yb=function(){return!0};
nh.prototype.reset=function(){if(!this.Vg&&!this.mn&&this.aa){var a=1024*mg(this.aa);this.Dd&&a!=this.Dd&&(Eb(this.ga,this.Vg,this.Dd),this.oh=!1);this.Dd=a}!this.oh&&this.Dd&&Cb(this.ga,this.Vg,this.Dd,1)&&(this.oh=!0,a=Math.floor(this.Dd/1024)+"Kb",this.ag&&(a+=" ("+this.ag+")",this.ag=null),this.status(a),"ramCPQ"==this.Dh&&(this.T=new oh,Cb(this.ga,ph,1,4,this.T)));if(this.oh){if(this.qn||Ib(this.ga,1138,4660),this.aa&&(a=this.aa,a.Z)){var b=1048576>this.Vg?21:23,c=a.Z[b]|a.Z[b+1]<<8,c=c+(this.Dd>>
10);a.Z[b]=c&255;a.Z[b+1]=c>>8;qg(a)}}else m("No RAM allocated")};function oh(){this.Ck=qh;this.Tm=rh;this.Mf=null}var ph=2160066560,qh=255,rh=0;function sh(){return this.T.Tm}function th(a,b){var c,d=this.T,e=d.ga;b!=d.Ck&&(b&1?d.Mf&&(Gb(e,917504,131072,d.Mf),d.Mf=null):(d.Mf||(d.Mf=Fb(e,917504,131072)),c=Fb(e,16646144,131072),Gb(e,917504,131072,c,b&2?1:Sb)),d.Ck=b)}var uh=[sh,sh,sh,th,th,th];oh.prototype.al=function(){return[null,0]};oh.prototype.Wi=function(){return uh};
za(function(){for(var a=Ra(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new nh(d);Qa(d,c)}});function vh(a){n.call(this,"Keyboard",a,vh);this.Sk=ua("Mobi");this.nn=ua("MSIE");this.$b("mobile keyboard support: "+(this.Sk?"true":"false"));this.Ik=0;this.th=!0;this.Si=this.Ni=!1;this.Eb=[];this.wo=500;this.xo=100;this.vo=50;this.Nk=!1;p(this)}La(n,vh);
var V={Rp:1,Sp:3,Tp:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Op:65,Pp:66,ok:67,Om:68,E:69,Wp:70,Zp:71,pk:72,aq:73,bq:74,cq:75,dq:76,eq:77,hi:78,gq:79,hq:80,jq:81,rk:82,nq:83,xq:84,Bq:85,Cq:86,Dq:87,Fq:88,Gq:89,Hq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Iq:97,Kq:98,Mq:99,Tq:100,Uq:101,Vq:102,Xq:103,Yq:104,$q:105,ar:106,br:107,
cr:108,dr:109,er:110,gr:111,hr:112,ir:113,jr:114,kr:115,lr:116,mr:117,nr:118,or:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},vh={};vh[186]=V[";"];vh[187]=V["="];vh[188]=V[","];vh[189]=V["-"];vh[190]=V["."];vh[191]=V["/"];vh[192]=V["`"];vh[219]=V["["];vh[220]=V["\\"];vh[221]=V["]"];vh[222]=V["'"];vh[173]=V["-"];var W={};W[V["1"]]=V["!"];W[V["2"]]=V["@"];W[V["3"]]=V["#"];W[V["4"]]=V.$;W[V["5"]]=V["%"];W[V["6"]]=V["^"];W[V["7"]]=V["&"];W[V["8"]]=V["*"];W[V["9"]]=V["("];W[V["0"]]=V[")"];
cr:108,dr:109,er:110,gr:111,hr:112,ir:113,jr:114,kr:115,lr:116,mr:117,nr:118,or:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},wh={};wh[186]=V[";"];wh[187]=V["="];wh[188]=V[","];wh[189]=V["-"];wh[190]=V["."];wh[191]=V["/"];wh[192]=V["`"];wh[219]=V["["];wh[220]=V["\\"];wh[221]=V["]"];wh[222]=V["'"];wh[173]=V["-"];var W={};W[V["1"]]=V["!"];W[V["2"]]=V["@"];W[V["3"]]=V["#"];W[V["4"]]=V.$;W[V["5"]]=V["%"];W[V["6"]]=V["^"];W[V["7"]]=V["&"];W[V["8"]]=V["*"];W[V["9"]]=V["("];W[V["0"]]=V[")"];
W[186]=V[":"];W[187]=V["+"];W[188]=V["<"];W[189]=V._;W[190]=V[">"];W[191]=V["?"];W[192]=V["~"];W[219]=V["{"];W[220]=V["|"];W[221]=V["}"];W[222]=V['"'];W[173]=V._;W[61]=V["+"];W[59]=V[":"];
var wh={3016:1,1016:2,1017:8,1018:32,1091:128,1093:64,1224:128,1020:512,1144:1024,1145:2048},xh={TAB:1009,ESC:1027,F1:1112,F2:1113,F3:1114,F4:1115,F5:1116,F6:1117,F7:1118,F8:1119,F9:1120,F10:1121,LEFT:1037,UP:1038,RIGHT:1039,DOWN:1040,CTRL_C:4003,CTRL_BREAK:4008,CTRL_ALT_DEL:4046},yh={esc:1027,1:V["1"],2:V["2"],3:V["3"],4:V["4"],5:V["5"],6:V["6"],7:V["7"],8:V["8"],9:V["9"],0:V["0"],"-":V["-"],"=":V["="],bs:1008,tab:1009,q:81,w:87,e:69,r:82,t:84,y:89,u:85,i:73,o:79,p:80,"[":V["["],"]":V["]"],enter:13,
var xh={3016:1,1016:2,1017:8,1018:32,1091:128,1093:64,1224:128,1020:512,1144:1024,1145:2048},yh={TAB:1009,ESC:1027,F1:1112,F2:1113,F3:1114,F4:1115,F5:1116,F6:1117,F7:1118,F8:1119,F9:1120,F10:1121,LEFT:1037,UP:1038,RIGHT:1039,DOWN:1040,CTRL_C:4003,CTRL_BREAK:4008,CTRL_ALT_DEL:4046},zh={esc:1027,1:V["1"],2:V["2"],3:V["3"],4:V["4"],5:V["5"],6:V["6"],7:V["7"],8:V["8"],9:V["9"],0:V["0"],"-":V["-"],"=":V["="],bs:1008,tab:1009,q:81,w:87,e:69,r:82,t:84,y:89,u:85,i:73,o:79,p:80,"[":V["["],"]":V["]"],enter:13,
ctrl:1017,a:65,s:83,d:68,f:70,g:71,h:72,j:74,k:75,l:76,";":V[";"],quote:V["'"],"`":V["`"],shift:1016,"\\":V["\\"],z:90,x:88,c:67,v:86,b:66,n:78,m:77,",":V[","],".":V["."],"/":V["/"],"right-shift":3016,prtsc:1044,alt:1018,space:V[" "],"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,"num-lock":1144,"scroll-lock":1145,"num-home":1036,"num-up":1038,"num-pgup":1033,"num-sub":1109,"num-left":1037,"num-center":1101,"num-right":1039,"num-add":1107,"num-end":1035,
"num-down":1040,"num-pgdn":1034,"num-ins":1045,"num-del":1046},zh={"caps-lock":512,"num-lock":1024,"scroll-lock":2048},X={1027:1};X[V["1"]]=2;X[V["!"]]=10754;X[V["2"]]=3;X[V["@"]]=10755;X[V["3"]]=4;X[V["#"]]=10756;X[V["4"]]=5;X[V.$]=10757;X[V["5"]]=6;X[V["%"]]=10758;X[V["6"]]=7;X[V["^"]]=10759;X[V["7"]]=8;X[V["&"]]=10760;X[V["8"]]=9;X[V["*"]]=10761;X[V["9"]]=10;X[V["("]]=10762;X[V["0"]]=11;X[V[")"]]=10763;X[V["-"]]=12;X[V._]=10764;X[V["="]]=13;X[V["+"]]=10765;X[1008]=14;X[1009]=15;X[113]=16;
"num-down":1040,"num-pgdn":1034,"num-ins":1045,"num-del":1046},Ah={"caps-lock":512,"num-lock":1024,"scroll-lock":2048},X={1027:1};X[V["1"]]=2;X[V["!"]]=10754;X[V["2"]]=3;X[V["@"]]=10755;X[V["3"]]=4;X[V["#"]]=10756;X[V["4"]]=5;X[V.$]=10757;X[V["5"]]=6;X[V["%"]]=10758;X[V["6"]]=7;X[V["^"]]=10759;X[V["7"]]=8;X[V["&"]]=10760;X[V["8"]]=9;X[V["*"]]=10761;X[V["9"]]=10;X[V["("]]=10762;X[V["0"]]=11;X[V[")"]]=10763;X[V["-"]]=12;X[V._]=10764;X[V["="]]=13;X[V["+"]]=10765;X[1008]=14;X[1009]=15;X[113]=16;
X[81]=10768;X[119]=17;X[87]=10769;X[101]=18;X[69]=10770;X[114]=19;X[82]=10771;X[116]=20;X[84]=10772;X[121]=21;X[89]=10773;X[117]=22;X[85]=10774;X[105]=23;X[73]=10775;X[111]=24;X[79]=10776;X[112]=25;X[80]=10777;X[V["["]]=26;X[V["{"]]=10778;X[V["]"]]=27;X[V["}"]]=10779;X[13]=28;X[1017]=29;X[97]=30;X[65]=10782;X[115]=31;X[83]=10783;X[100]=32;X[68]=10784;X[102]=33;X[70]=10785;X[103]=34;X[71]=10786;X[104]=35;X[72]=10787;X[106]=36;X[74]=10788;X[107]=37;X[75]=10789;X[108]=38;X[76]=10790;X[V[";"]]=39;
X[V[":"]]=10791;X[V["'"]]=40;X[V['"']]=10792;X[V["`"]]=41;X[V["~"]]=10793;X[1016]=42;X[V["\\"]]=43;X[V["|"]]=10795;X[122]=44;X[90]=10796;X[120]=45;X[88]=10797;X[99]=46;X[67]=10798;X[118]=47;X[86]=10799;X[98]=48;X[66]=10800;X[110]=49;X[78]=10801;X[109]=50;X[77]=10802;X[V[","]]=51;X[V["<"]]=10803;X[V["."]]=52;X[V[">"]]=10804;X[V["/"]]=53;X[V["?"]]=10805;X[3016]=54;X[1044]=55;X[1018]=56;X[V[" "]]=57;X[1020]=58;X[1112]=59;X[1113]=60;X[1114]=61;X[1115]=62;X[1116]=63;X[1117]=64;X[1118]=65;X[1119]=66;
X[1120]=67;X[1121]=68;X[1144]=69;X[1145]=70;X[1036]=71;X[1038]=72;X[1033]=73;X[1109]=74;X[1037]=75;X[1101]=76;X[1039]=77;X[1107]=78;X[1035]=79;X[1040]=80;X[1034]=81;X[1045]=82;X[1046]=83;X[1122]=87;X[1123]=88;X[1091]=91;X[1093]=93;X[1224]=91;X[4003]=7470;X[4008]=7494;X[4046]=3677523;k=uh.prototype;
k.Cb=function(a,b,c){var d=this,e=a+"-"+b;if(void 0===this.la[e])switch(b){case "kbd":return this.la[e]=c,c.onkeydown=function(a){return Ah(d,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;if(d.Nk){var b=d.Eb.length?d.Eb[0].le:0;b&&(65<=b&&90>=b||97<=b&&122>=b)&&(65<=a&&90>=a||97<=a&&122>=a)&&b!=a&&(d.Si=!0,a=b)}(b=!X[a]||!!(d.Nb&128))||Bh(d,a,!0);return b},c.onkeyup=function(a){return Ah(d,a,!1)},!0;case "caps-lock":return this.la[e]=c,c.onclick=function(){d.S&&d.S.pd();Bh(d,
1020,!0)},!0;case "num-lock":return this.la[e]=c,c.onclick=function(){d.S&&d.S.pd();Bh(d,1144,!0)},!0;case "scroll-lock":return this.la[e]=c,c.onclick=function(){d.S&&d.S.pd();Bh(d,1145,!0)},!0;default:var f=b.toUpperCase().replace(/-/g,"_");if(void 0!==xh[f]&&"button"==a)return this.la[e]=c,c.onclick=function(a,b,c){return function(){a.S&&a.S.pd();Ch(a,c,!0);Bh(a,c,!0)}}(this,f,xh[f]),!0;if(void 0!==yh[b])return this.Ik++,this.la[e]=c,a=function(a,b,c){return function(){Bh(a,c)}}(this,b,yh[b]),b=
function(a,b,c){return function(){Dh(a,c)}}(this,b,yh[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=c.onmouseout=b),!0}return!1};function Eh(a,b,c){if(a.Ik){for(var d in W)if(b==W[d]){b=parseInt(d,10);(d=vh[d])&&(b=d);break}for(var e in yh)if((d=yh[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=yh[e]==d),d){(a=a.la["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}
k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;this.aa=bb(a,"ChipSet")};function fh(a,b){a.$b("keyboard reset",32896);a.Kb=[170];a.fg=!0;b&&a.aa&&hh(a.aa,a.Kb[0])}function bh(a,b,c){a.Mi!==c&&(a.Mi=a.Ri=c)&&(a.fg=!0);a.sh!==b&&(a.sh=b)&&!a.Ri&&ih(a,!0);a.sh&&a.Ri&&(fh(a,!0),a.Ri=!1)}function ch(a){var b=0;a.Kb.length&&a.fg&&(b=a.Kb[0],a.aa&&hh(a.aa,b))}function ih(a,b){0<a.Kb.length&&(a.Kb.shift(),(a.fg=b)&&a.Kb.length&&a.aa&&hh(a.aa,a.Kb[0]))}
X[1120]=67;X[1121]=68;X[1144]=69;X[1145]=70;X[1036]=71;X[1038]=72;X[1033]=73;X[1109]=74;X[1037]=75;X[1101]=76;X[1039]=77;X[1107]=78;X[1035]=79;X[1040]=80;X[1034]=81;X[1045]=82;X[1046]=83;X[1122]=87;X[1123]=88;X[1091]=91;X[1093]=93;X[1224]=91;X[4003]=7470;X[4008]=7494;X[4046]=3677523;k=vh.prototype;
k.Cb=function(a,b,c){var d=this,e=a+"-"+b;if(void 0===this.la[e])switch(b){case "kbd":return this.la[e]=c,c.onkeydown=function(a){return Bh(d,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;if(d.Nk){var b=d.Eb.length?d.Eb[0].le:0;b&&(65<=b&&90>=b||97<=b&&122>=b)&&(65<=a&&90>=a||97<=a&&122>=a)&&b!=a&&(d.Si=!0,a=b)}(b=!X[a]||!!(d.Nb&128))||Ch(d,a,!0);return b},c.onkeyup=function(a){return Bh(d,a,!1)},!0;case "caps-lock":return this.la[e]=c,c.onclick=function(){d.S&&d.S.pd();Ch(d,
1020,!0)},!0;case "num-lock":return this.la[e]=c,c.onclick=function(){d.S&&d.S.pd();Ch(d,1144,!0)},!0;case "scroll-lock":return this.la[e]=c,c.onclick=function(){d.S&&d.S.pd();Ch(d,1145,!0)},!0;default:var f=b.toUpperCase().replace(/-/g,"_");if(void 0!==yh[f]&&"button"==a)return this.la[e]=c,c.onclick=function(a,b,c){return function(){a.S&&a.S.pd();Dh(a,c,!0);Ch(a,c,!0)}}(this,f,yh[f]),!0;if(void 0!==zh[b])return this.Ik++,this.la[e]=c,a=function(a,b,c){return function(){Ch(a,c)}}(this,b,zh[b]),b=
function(a,b,c){return function(){Eh(a,c)}}(this,b,zh[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=c.onmouseout=b),!0}return!1};function Fh(a,b,c){if(a.Ik){for(var d in W)if(b==W[d]){b=parseInt(d,10);(d=wh[d])&&(b=d);break}for(var e in zh)if((d=zh[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=zh[e]==d),d){(a=a.la["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}
k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;this.aa=bb(a,"ChipSet")};function gh(a,b){a.$b("keyboard reset",32896);a.Kb=[170];a.fg=!0;b&&a.aa&&ih(a.aa,a.Kb[0])}function ch(a,b,c){a.Mi!==c&&(a.Mi=a.Ri=c)&&(a.fg=!0);a.sh!==b&&(a.sh=b)&&!a.Ri&&jh(a,!0);a.sh&&a.Ri&&(gh(a,!0),a.Ri=!1)}function dh(a){var b=0;a.Kb.length&&a.fg&&(b=a.Kb[0],a.aa&&ih(a.aa,b))}function jh(a,b){0<a.Kb.length&&(a.Kb.shift(),(a.fg=b)&&a.Kb.length&&a.aa&&ih(a.aa,a.Kb[0]))}
k.Zb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Zd();this.Nb=this.cd=0;this.Kb=[];this.fg=!0};k.save=function(){var a=new Rd(this);a.set(0,this.ik());return a.data()};k.restore=function(a){return this.Zd(a[0])};k.Zd=function(a){var b=0;void 0===a&&(a=[]);this.Mi=this.fg=a[b++];this.sh=a[b];return!0};k.ik=function(){var a=0,b=[];b[a++]=this.Mi;b[a]=this.sh;return b};
function Ch(a,b,c,d){if(X[b]){var e=Math.floor(b/1E3)&2;if(b=wh[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.cd:a.Nb)&b):d||b&255&&(b=255);if(c){a.cd&=~b;d&&(a.cd|=b);c=b;var f,g;for(g in zh)d="led-"+g,e=zh[g],c&&c!=e||!(f=a.la[d])||(f.style.backgroundColor=a.cd&e?"#00ff00":"#000000")}else a.Nb&=~b,d&&(a.Nb|=b);return!0}}return!1}
function Bh(a,b,c){if(X[b]&&a.S&&a.S.ba.Gb){wh[b]&&a.Eb.length&&0<a.Eb[0].ld&&(a.Eb[0].ld=0);for(var d,e=0;e<a.Eb.length;e++)if(d=a.Eb[e],d.le==b){if(!c||0<=d.ld){e=-1;break}0<e&&(0<a.Eb[0].ld&&(a.Eb[0].ld=0),a.Eb.splice(e,1));break}0>e||(e==a.Eb.length&&(d={},d.le=b,d.Nb=a.Nb,Eh(a,b,!0),e++),0<e&&a.Eb.splice(0,0,d),d.hg=!0,d.ld=c?-1:wh[b]?0:1,Fh(a,d))}}
function Dh(a,b,c){if(!X[b]||!(c||a.S&&a.S.ba.Gb))return!1;for(var d=!1,e=0;e<a.Eb.length;e++){var f=a.Eb[e];if(f.le==b||f.le==W[b]){a.Eb.splice(e,1);f.Jm&&clearTimeout(f.Jm);f.hg&&!c&&Gh(a,f.le,!1);Eh(a,b,!1);d=!0;break}}!a.Eb.length&&a.Si&&(Ch(a,1020),a.Si=!1);return d}
function Fh(a,b){if(a.S&&a.S.ba.Gb){if(Gh(a,b.le,b.hg),b.ld){var c;if(0>b.ld){if(!b.hg){Dh(a,b.le);return}b.hg=!1;c=a.vo}else c=1==b.ld++?a.wo:a.xo;b.Jm=setTimeout(function(a){return function(){Fh(a,b)}}(a),c)}}else Dh(a,b.le,!0)}function Hh(a,b,c){var d=b;if(65<=b&&90>=b)!(a.Nb&515)==c&&(d=b+32);else if(97<=b&&122>=b)!!(a.Nb&515)==c&&(d=b-32);else if(!!(a.Nb&3)==c){if(a=W[b])d=a}else if(a=vh[b])d=a;return d}k.Uh=function(a){this.th=a;a||(this.Nb&=-256)};
function Ah(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,h=Hh(a,g,!0);a.Ni&&h==V["`"]&&(g=h=27);if(X[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),Ch(a,h,!1,c)){if(20==g||144==g||145==g)a.nn||(c=e=!0);if(!(c||91!=g&&93!=g))for(var r=0;r<a.Eb.length;r++){var t=a.Eb[r];t.hg=!1;0<t.ld&&(t.ld=0)}}else 8==g&&8==(a.Nb&40)&&(h=4008),d=!1;else if(X[h]&&a.Nb&60&&(d=!1),!a.Nk&&d&&c||a.Nb&192)f=!0;d||b.preventDefault();f||a.Sk&&d||(c?Bh(a,h,e):Dh(a,h)||(b=Hh(a,g,!1),b!=h&&Dh(a,b)));return d}
function Gh(a,b,c){Ch(a,b,!0,c);var d=X[b]||X[b+1E3];if(void 0!==d){14==d&&40==(a.Nb&40)&&(d=83);var e=[],f=d&255;e.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;d>>>=8;){var g=0,h=d&255;224==f||225==f?e.push(f|(c?0:128)):(42==h?a.cd&3||a.cd&512&&b||(g=h):29==h?a.cd&12||(g=h):56==h?a.cd&48||(g=h):e.push(f|(c?0:128)),g&&(c?e.unshift(g):e.push(g|128)))}for(c=0;c<e.length;c++)d=a,f=e[c],d.Kb&&(20>d.Kb.length?(d.Kb.push(f),1==d.Kb.length&&d.aa&&hh(d.aa,f)):(20==d.Kb.length&&d.Kb.push(255),d.$b("scan code buffer overflow")))}}
za(function(){for(var a=Ra(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new uh(d);Qa(d,c)}});
function Y(a,b,c,d,e){n.call(this,"Video",a,Y);this.va=a.model;this.Tc=0;"ega"==this.va&&(this.Cm=a.switches,this.Tc=a.memory||0);this.kd=a.mode;if(void 0===this.kd||void 0===Ih[this.kd])this.kd=Jh;this.Lh=a.charCols;this.jj=a.charRows;if(void 0===this.Lh||void 0===this.jj)this.Lh=Ih[this.kd][0],this.jj=Ih[this.kd][1];this.ud=a.screenWidth;this.Ud=a.screenHeight;this.pn=a.scale;this.ln=12<=Math.round(this.ud/this.Lh);this.rn=a.touchScreen;this.Zf=b;this.Vc=c;this.za=(this.Lp=d)||b||null;this.ae=null;
function Dh(a,b,c,d){if(X[b]){var e=Math.floor(b/1E3)&2;if(b=xh[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.cd:a.Nb)&b):d||b&255&&(b=255);if(c){a.cd&=~b;d&&(a.cd|=b);c=b;var f,g;for(g in Ah)d="led-"+g,e=Ah[g],c&&c!=e||!(f=a.la[d])||(f.style.backgroundColor=a.cd&e?"#00ff00":"#000000")}else a.Nb&=~b,d&&(a.Nb|=b);return!0}}return!1}
function Ch(a,b,c){if(X[b]&&a.S&&a.S.ba.Gb){xh[b]&&a.Eb.length&&0<a.Eb[0].ld&&(a.Eb[0].ld=0);for(var d,e=0;e<a.Eb.length;e++)if(d=a.Eb[e],d.le==b){if(!c||0<=d.ld){e=-1;break}0<e&&(0<a.Eb[0].ld&&(a.Eb[0].ld=0),a.Eb.splice(e,1));break}0>e||(e==a.Eb.length&&(d={},d.le=b,d.Nb=a.Nb,Fh(a,b,!0),e++),0<e&&a.Eb.splice(0,0,d),d.hg=!0,d.ld=c?-1:xh[b]?0:1,Gh(a,d))}}
function Eh(a,b,c){if(!X[b]||!(c||a.S&&a.S.ba.Gb))return!1;for(var d=!1,e=0;e<a.Eb.length;e++){var f=a.Eb[e];if(f.le==b||f.le==W[b]){a.Eb.splice(e,1);f.Jm&&clearTimeout(f.Jm);f.hg&&!c&&Hh(a,f.le,!1);Fh(a,b,!1);d=!0;break}}!a.Eb.length&&a.Si&&(Dh(a,1020),a.Si=!1);return d}
function Gh(a,b){if(a.S&&a.S.ba.Gb){if(Hh(a,b.le,b.hg),b.ld){var c;if(0>b.ld){if(!b.hg){Eh(a,b.le);return}b.hg=!1;c=a.vo}else c=1==b.ld++?a.wo:a.xo;b.Jm=setTimeout(function(a){return function(){Gh(a,b)}}(a),c)}}else Eh(a,b.le,!0)}function Ih(a,b,c){var d=b;if(65<=b&&90>=b)!(a.Nb&515)==c&&(d=b+32);else if(97<=b&&122>=b)!!(a.Nb&515)==c&&(d=b-32);else if(!!(a.Nb&3)==c){if(a=W[b])d=a}else if(a=wh[b])d=a;return d}k.Uh=function(a){this.th=a;a||(this.Nb&=-256)};
function Bh(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,h=Ih(a,g,!0);a.Ni&&h==V["`"]&&(g=h=27);if(X[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),Dh(a,h,!1,c)){if(20==g||144==g||145==g)a.nn||(c=e=!0);if(!(c||91!=g&&93!=g))for(var r=0;r<a.Eb.length;r++){var t=a.Eb[r];t.hg=!1;0<t.ld&&(t.ld=0)}}else 8==g&&8==(a.Nb&40)&&(h=4008),d=!1;else if(X[h]&&a.Nb&60&&(d=!1),!a.Nk&&d&&c||a.Nb&192)f=!0;d||b.preventDefault();f||a.Sk&&d||(c?Ch(a,h,e):Eh(a,h)||(b=Ih(a,g,!1),b!=h&&Eh(a,b)));return d}
function Hh(a,b,c){Dh(a,b,!0,c);var d=X[b]||X[b+1E3];if(void 0!==d){14==d&&40==(a.Nb&40)&&(d=83);var e=[],f=d&255;e.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;d>>>=8;){var g=0,h=d&255;224==f||225==f?e.push(f|(c?0:128)):(42==h?a.cd&3||a.cd&512&&b||(g=h):29==h?a.cd&12||(g=h):56==h?a.cd&48||(g=h):e.push(f|(c?0:128)),g&&(c?e.unshift(g):e.push(g|128)))}for(c=0;c<e.length;c++)d=a,f=e[c],d.Kb&&(20>d.Kb.length?(d.Kb.push(f),1==d.Kb.length&&d.aa&&ih(d.aa,f)):(20==d.Kb.length&&d.Kb.push(255),d.$b("scan code buffer overflow")))}}
za(function(){for(var a=Ra(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new vh(d);Qa(d,c)}});
function Y(a,b,c,d,e){n.call(this,"Video",a,Y);this.va=a.model;this.Tc=0;"ega"==this.va&&(this.Cm=a.switches,this.Tc=a.memory||0);this.kd=a.mode;if(void 0===this.kd||void 0===Jh[this.kd])this.kd=Kh;this.Lh=a.charCols;this.jj=a.charRows;if(void 0===this.Lh||void 0===this.jj)this.Lh=Jh[this.kd][0],this.jj=Jh[this.kd][1];this.ud=a.screenWidth;this.Ud=a.screenHeight;this.pn=a.scale;this.ln=12<=Math.round(this.ud/this.Lh);this.rn=a.touchScreen;this.Zf=b;this.Vc=c;this.za=(this.Lp=d)||b||null;this.ae=null;
this.jn=a.autoLock;this.Qa=this.Ib=0;this.Jd=[];this.qd=Array(16);this.th=!1;var f=this;if(this.Uc=e)this.Uc.lf=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.Uc.lf&&(b=function(){var a=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement?!0:!1;f.$b("notifyFullScreen("+a+")",!0);f.ya&&(f.ya.Ni=a)},"onfullscreenchange"in document?document.addEventListener("fullscreenchange",b,!1):
"onmozfullscreenchange"in document?document.addEventListener("mozfullscreenchange",b,!1):"onwebkitfullscreenchange"in document?document.addEventListener("webkitfullscreenchange",b,!1):"onmsfullscreenchange"in document&&document.addEventListener("msfullscreenchange",b,!1));this.za&&(this.za.onfocus=function(){return f.Uh(!0)},this.za.onblur=function(){return f.Uh(!1)},this.za.Ie=this.za.requestPointerLock||this.za.mozRequestPointerLock||this.za.webkitRequestPointerLock,this.za.Km=this.za.exitPointerLock||
this.za.mozExitPointerLock||this.za.webkitExitPointerLock,this.za.Ie&&(b=function(){f.Dg(document.pointerLockElement===f.za||document.mozPointerLockElement===f.za||document.webkitPointerLockElement===f.za)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",b,!1):"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",b,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",b,!1)));if(a=a.fontROM)"json"!=
ga(a)&&(a=oa()+"/api/v1/dump?file="+a+"&format=bytes"),na(a,!0,null,this,this.Fo)}La(n,Y);var Kh={2:{mj:15700,lj:208,Zj:85,$j:96},3:{mj:18432,lj:364,Zj:85,$j:96},4:{mj:21850,lj:364,Zj:85,$j:96}},Lh={6:[1,3,!0],7:[2,3,!0],8:[6,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[6,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},Jh=7,Ih=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];Ih[Jh]=[80,25,1,0,1];Ih[13]=[320,200,16];Ih[14]=[640,200,16];Ih[15]=[640,350,16];
Ih[16]=[640,350,16];Ih[0]=Ih[1];Ih[2]=Ih[3];Ih[5]=Ih[4];var Mh=Array(5);Mh[0]=[0,0,0,255];Mh[1]=[127,192,127,255];Mh[2]=[127,192,127,255];Mh[3]=[127,255,127,255];Mh[4]=[127,255,127,255];var Nh=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],Oh=Array(16);Oh[0]=[0,0,0,255];Oh[1]=[0,0,170,255];Oh[2]=[0,170,0,255];Oh[3]=[0,170,170,255];Oh[4]=[170,0,0,255];Oh[5]=[170,0,170,255];Oh[6]=[170,85,0,255];Oh[7]=[170,170,170,255];Oh[8]=[85,85,85,255];Oh[9]=[85,85,255,255];Oh[10]=[85,255,85,255];Oh[11]=[85,255,255,255];
Oh[12]=[255,85,85,255];Oh[13]=[255,85,255,255];Oh[14]=[255,255,85,255];Oh[15]=[255,255,255,255];var Ph=[2,4,6],Qh=[3,5,7],Rh=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Sh=[0,255,65280,65535,16711680,16711935,16776960,16777215,-16777216,-16776961,-16711936,-16711681,-65536,-65281,-256,-1],Th=[0];Th[128]=1;Th[32768]=2;Th[32896]=3;Th[8388608]=4;Th[8388736]=5;Th[8421376]=6;Th[8421504]=7;Th[-2147483648]=8;Th[-2147483520]=9;Th[-2147450880]=10;Th[-2147450752]=11;Th[-2139095040]=12;Th[-2139094912]=13;
Th[-2139062272]=14;Th[-2139062144]=15;
function Uh(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=Vh[b],f=a.de||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(Wh)];this.Ch=b;this.Qa=e[2];this.Ib=e[3];this.Tc=d||e[4];65536<=this.Tc&&720896<=this.Qa&&(this.Ib=Math.min(this.Tc>>2,32768));this.Wc=c[0];this.zc=c[1];this.$f=c[2];this.Lg=c[3];this.Hc=c[4]&255;this.Bh=c[4]>>8&255;this.lc=c[5];this.cj=Wh;if(5==b){this.cj=Xh;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,[this.Qa,this.Ib,this.Tc],Array(this.Tc>>
ga(a)&&(a=oa()+"/api/v1/dump?file="+a+"&format=bytes"),na(a,!0,null,this,this.Fo)}La(n,Y);var Lh={2:{mj:15700,lj:208,Zj:85,$j:96},3:{mj:18432,lj:364,Zj:85,$j:96},4:{mj:21850,lj:364,Zj:85,$j:96}},Mh={6:[1,3,!0],7:[2,3,!0],8:[6,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[6,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},Kh=7,Jh=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];Jh[Kh]=[80,25,1,0,1];Jh[13]=[320,200,16];Jh[14]=[640,200,16];Jh[15]=[640,350,16];
Jh[16]=[640,350,16];Jh[0]=Jh[1];Jh[2]=Jh[3];Jh[5]=Jh[4];var Nh=Array(5);Nh[0]=[0,0,0,255];Nh[1]=[127,192,127,255];Nh[2]=[127,192,127,255];Nh[3]=[127,255,127,255];Nh[4]=[127,255,127,255];var Oh=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],Ph=Array(16);Ph[0]=[0,0,0,255];Ph[1]=[0,0,170,255];Ph[2]=[0,170,0,255];Ph[3]=[0,170,170,255];Ph[4]=[170,0,0,255];Ph[5]=[170,0,170,255];Ph[6]=[170,85,0,255];Ph[7]=[170,170,170,255];Ph[8]=[85,85,85,255];Ph[9]=[85,85,255,255];Ph[10]=[85,255,85,255];Ph[11]=[85,255,255,255];
Ph[12]=[255,85,85,255];Ph[13]=[255,85,255,255];Ph[14]=[255,255,85,255];Ph[15]=[255,255,255,255];var Qh=[2,4,6],Rh=[3,5,7],Sh=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Th=[0,255,65280,65535,16711680,16711935,16776960,16777215,-16777216,-16776961,-16711936,-16711681,-65536,-65281,-256,-1],Uh=[0];Uh[128]=1;Uh[32768]=2;Uh[32896]=3;Uh[8388608]=4;Uh[8388736]=5;Uh[8421376]=6;Uh[8421504]=7;Uh[-2147483648]=8;Uh[-2147483520]=9;Uh[-2147450880]=10;Uh[-2147450752]=11;Uh[-2139095040]=12;Uh[-2139094912]=13;
Uh[-2139062272]=14;Uh[-2139062144]=15;
function Vh(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=Wh[b],f=a.de||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(Xh)];this.Ch=b;this.Qa=e[2];this.Ib=e[3];this.Tc=d||e[4];65536<=this.Tc&&720896<=this.Qa&&(this.Ib=Math.min(this.Tc>>2,32768));this.Wc=c[0];this.zc=c[1];this.$f=c[2];this.Lg=c[3];this.Hc=c[4]&255;this.Bh=c[4]>>8&255;this.lc=c[5];this.cj=Xh;if(5==b){this.cj=Yh;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,[this.Qa,this.Ib,this.Tc],Array(this.Tc>>
2),771,0,-1,0,-1,0,-1,0,0,0]);this.Wd=b[0];this.He=b[1];this.oe=b[2];this.jk=b[3];this.Gh=b[4];this.Ui=b[5];this.vf=b[6];this.Sg=b[7];this.Xi=b[8];this.Yi=b[9];this.uf=b[10];this.Ze=b[11];this.wb=b[12];d=b[13];"number"==typeof d&&(d=[this.Qa,this.Ib,d]);this.Qa=d[0];this.Ib=d[1];d=this.Tc>>2;if((this.re=b[14])&&this.re.length<d){for(var e=this.re,g=0,h=Array(d),r=0;r<e.length-1;){for(var t=e[r++],C=e[r++];t--;)h[g]=C,g+=2;g==d&&(g=1)}this.re=h}this.di(b[15]);this.Xj=b[16];this.ab=b[17];this.jd=b[18];
this.jb=b[19];this.Qh=b[20];this.ge=b[21];this.Me=b[22];this.ej=b[23];this.fj=b[24]}f=Kh[f]||Kh[3];this.gj=a.S.R.hd/f.mj|0;this.zo=this.gj*f.Zj/100|0;this.ol=this.gj*f.lj;this.Bo=this.ol*f.$j/100|0;this.nj=null==c[7]?0:c[7]}}var Wh=18,Xh=25;function Yh(a){return this.Ab(a)|this.Ab(a+1)<<8}function Zh(a){return this.Ab(a)|this.Ab(a+1)<<8|this.Ab(a+2)<<16|this.Ab(a+3)<<24}function $h(a,b){this.Db(a,b&255);this.Db(a+1,b>>8)}
function ai(a,b){this.Db(a,b&255);this.Db(a+1,b>>8&255);this.Db(a+2,b>>16&255);this.Db(a+3,b>>>24)}var bi=[,,function(a){a+=this.offset;return(this.T.wb=this.ea[a])>>this.T.Xj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.ea[b]>>8:this.ea[b])&255}];bi[16]=function(a){a+=this.offset;a=this.ea[a];for(var b=this.T.ej&this.T.fj,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};
bi[512]=function(a,b){var c=a+this.offset,d;d=this.ea[c]&~this.T.ab|(b|b<<8|b<<16|b<<24)&this.T.ab;d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};bi[1024]=function(a,b){var c=a+this.offset;b=b>>this.T.jd|b<<8-this.T.jd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.T.ge|this.T.Me;d=d&this.T.ab|this.ea[c]&~this.T.ab;d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};
bi[1536]=function(a,b){var c=a+this.offset;b=b>>this.T.jd|b<<8-this.T.jd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.T.ge|this.T.Me;d&=this.T.wb;d=d&this.T.ab|this.ea[c]&~this.T.ab;d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};bi[2560]=function(a,b){var c=a+this.offset;b=b>>this.T.jd|b<<8-this.T.jd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.T.ge|this.T.Me;d|=this.T.wb;d=d&this.T.ab|this.ea[c]&~this.T.ab;d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};
bi[3584]=function(a,b){var c=a+this.offset;b=b>>this.T.jd|b<<8-this.T.jd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.T.ge|this.T.Me;d^=this.T.wb;d=d&this.T.ab|this.ea[c]&~this.T.ab;d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};bi[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.T.ab&(d==a?16711935:-16711936);c=(b|b<<8|b<<16|b<<24)&c|this.ea[d]&~c;c=c&this.T.jb|this.T.wb&~this.T.jb;this.ea[d]!=c&&(this.ea[d]=c,this.Da=!0)};
bi[4096]=function(a){a+=this.offset;var b=this.ea[a]&~this.T.ab|this.T.wb&this.T.ab;this.ea[a]!=b&&(this.ea[a]=b,this.Da=!0)};bi[8192]=function(a,b){var c=a+this.offset,d=Sh[b&15],d=d&this.T.ab|this.ea[c]&~this.T.ab,d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};bi[24576]=function(a,b){var c=a+this.offset,d=Sh[b&15],d=d&this.T.wb,d=d&this.T.ab|this.ea[c]&~this.T.ab,d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};
bi[40960]=function(a,b){var c=a+this.offset,d=Sh[b&15],d=d|this.T.wb,d=d&this.T.ab|this.ea[c]&~this.T.ab,d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};bi[57344]=function(a,b){var c=a+this.offset,d=Sh[b&15],d=d^this.T.wb,d=d&this.T.ab|this.ea[c]&~this.T.ab,d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};
function ci(a){var b=[];if(void 0!==a.Ch){b[0]=a.Wc;b[1]=a.zc;b[2]=a.$f;b[3]=a.Lg;b[4]=a.Hc|a.Bh<<8;b[5]=a.lc;if(5==a.Ch){var c=[];c[0]=a.Wd;c[1]=a.He;c[2]=a.oe;c[3]=a.jk;c[4]=a.Gh;c[5]=a.Ui;c[6]=a.vf;c[7]=a.Sg;c[8]=a.Xi;c[9]=a.Yi;c[10]=a.uf;c[11]=a.Ze;c[12]=a.wb;c[13]=[a.Qa,a.Ib,a.Tc];var d;a:if(d=a.re){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h<d.length;){for(var r=d[h],t=h+2;t<d.length&&d[t]===r;)t+=2;f[e++]=t-h>>1;f[e++]=r;h=t}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.bj;c[16]=a.Xj;c[17]=a.ab;c[18]=a.jd;c[19]=a.jb;c[20]=a.Qh;c[21]=a.ge;c[22]=a.Me;c[23]=a.ej;c[24]=a.fj;b[6]=c}b[7]=a.nj}return b}Uh.prototype.al=function(a){return[this.re,a-this.Qa]};Uh.prototype.Wi=function(){return this.Wg};Uh.prototype.di=function(a){if(null!=a&&a!=this.bj){var b=a&255,c=bi[b];c||b&1&&(c=bi[1]);var b=a&65280,d=bi[b];d||b&256&&(d=bi[256]);this.Wg||(this.Wg=[null,Yh,Zh,null,$h,ai]);this.Wg[0]=c;this.Wg[3]=d;this.bj=a}};
var Vh=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=Y.prototype;
k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;Kb(b,this,di);Mb(b,this,ei);"ega"==this.va&&(Kb(b,this,fi),Mb(b,this,gi));if((this.ya=bb(a,"Keyboard"))&&this.Zf){for(var e in this.la)0<e.indexOf("lock")&&this.ya.Cb("led",e,this.la[e]);this.ya.Cb(this.Lp?"textarea":"canvas","kbd",this.za)}this.Zg=9;(this.aa=bb(a,"ChipSet"))&&this.Cm&&(this.Zg=Vf(this.Cm,this.Zg));this.ya&&this.rn&&hi(this)};
this.jb=b[19];this.Qh=b[20];this.ge=b[21];this.Me=b[22];this.ej=b[23];this.fj=b[24]}f=Lh[f]||Lh[3];this.gj=a.S.R.hd/f.mj|0;this.zo=this.gj*f.Zj/100|0;this.ol=this.gj*f.lj;this.Bo=this.ol*f.$j/100|0;this.nj=null==c[7]?0:c[7]}}var Xh=18,Yh=25;function Zh(a){return this.Ab(a)|this.Ab(a+1)<<8}function $h(a){return this.Ab(a)|this.Ab(a+1)<<8|this.Ab(a+2)<<16|this.Ab(a+3)<<24}function ai(a,b){this.Db(a,b&255);this.Db(a+1,b>>8)}
function bi(a,b){this.Db(a,b&255);this.Db(a+1,b>>8&255);this.Db(a+2,b>>16&255);this.Db(a+3,b>>>24)}var ci=[,,function(a){a+=this.offset;return(this.T.wb=this.ea[a])>>this.T.Xj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.ea[b]>>8:this.ea[b])&255}];ci[16]=function(a){a+=this.offset;a=this.ea[a];for(var b=this.T.ej&this.T.fj,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};
ci[512]=function(a,b){var c=a+this.offset,d;d=this.ea[c]&~this.T.ab|(b|b<<8|b<<16|b<<24)&this.T.ab;d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};ci[1024]=function(a,b){var c=a+this.offset;b=b>>this.T.jd|b<<8-this.T.jd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.T.ge|this.T.Me;d=d&this.T.ab|this.ea[c]&~this.T.ab;d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};
ci[1536]=function(a,b){var c=a+this.offset;b=b>>this.T.jd|b<<8-this.T.jd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.T.ge|this.T.Me;d&=this.T.wb;d=d&this.T.ab|this.ea[c]&~this.T.ab;d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};ci[2560]=function(a,b){var c=a+this.offset;b=b>>this.T.jd|b<<8-this.T.jd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.T.ge|this.T.Me;d|=this.T.wb;d=d&this.T.ab|this.ea[c]&~this.T.ab;d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};
ci[3584]=function(a,b){var c=a+this.offset;b=b>>this.T.jd|b<<8-this.T.jd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.T.ge|this.T.Me;d^=this.T.wb;d=d&this.T.ab|this.ea[c]&~this.T.ab;d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};ci[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.T.ab&(d==a?16711935:-16711936);c=(b|b<<8|b<<16|b<<24)&c|this.ea[d]&~c;c=c&this.T.jb|this.T.wb&~this.T.jb;this.ea[d]!=c&&(this.ea[d]=c,this.Da=!0)};
ci[4096]=function(a){a+=this.offset;var b=this.ea[a]&~this.T.ab|this.T.wb&this.T.ab;this.ea[a]!=b&&(this.ea[a]=b,this.Da=!0)};ci[8192]=function(a,b){var c=a+this.offset,d=Th[b&15],d=d&this.T.ab|this.ea[c]&~this.T.ab,d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};ci[24576]=function(a,b){var c=a+this.offset,d=Th[b&15],d=d&this.T.wb,d=d&this.T.ab|this.ea[c]&~this.T.ab,d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};
ci[40960]=function(a,b){var c=a+this.offset,d=Th[b&15],d=d|this.T.wb,d=d&this.T.ab|this.ea[c]&~this.T.ab,d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};ci[57344]=function(a,b){var c=a+this.offset,d=Th[b&15],d=d^this.T.wb,d=d&this.T.ab|this.ea[c]&~this.T.ab,d=d&this.T.jb|this.T.wb&~this.T.jb;this.ea[c]!=d&&(this.ea[c]=d,this.Da=!0)};
function di(a){var b=[];if(void 0!==a.Ch){b[0]=a.Wc;b[1]=a.zc;b[2]=a.$f;b[3]=a.Lg;b[4]=a.Hc|a.Bh<<8;b[5]=a.lc;if(5==a.Ch){var c=[];c[0]=a.Wd;c[1]=a.He;c[2]=a.oe;c[3]=a.jk;c[4]=a.Gh;c[5]=a.Ui;c[6]=a.vf;c[7]=a.Sg;c[8]=a.Xi;c[9]=a.Yi;c[10]=a.uf;c[11]=a.Ze;c[12]=a.wb;c[13]=[a.Qa,a.Ib,a.Tc];var d;a:if(d=a.re){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h<d.length;){for(var r=d[h],t=h+2;t<d.length&&d[t]===r;)t+=2;f[e++]=t-h>>1;f[e++]=r;h=t}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.bj;c[16]=a.Xj;c[17]=a.ab;c[18]=a.jd;c[19]=a.jb;c[20]=a.Qh;c[21]=a.ge;c[22]=a.Me;c[23]=a.ej;c[24]=a.fj;b[6]=c}b[7]=a.nj}return b}Vh.prototype.al=function(a){return[this.re,a-this.Qa]};Vh.prototype.Wi=function(){return this.Wg};Vh.prototype.di=function(a){if(null!=a&&a!=this.bj){var b=a&255,c=ci[b];c||b&1&&(c=ci[1]);var b=a&65280,d=ci[b];d||b&256&&(d=ci[256]);this.Wg||(this.Wg=[null,Zh,$h,null,ai,bi]);this.Wg[0]=c;this.Wg[3]=d;this.bj=a}};
var Wh=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=Y.prototype;
k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;Kb(b,this,ei);Mb(b,this,fi);"ega"==this.va&&(Kb(b,this,gi),Mb(b,this,hi));if((this.ya=bb(a,"Keyboard"))&&this.Zf){for(var e in this.la)0<e.indexOf("lock")&&this.ya.Cb("led",e,this.la[e]);this.ya.Cb(this.Lp?"textarea":"canvas","kbd",this.za)}this.Zg=9;(this.aa=bb(a,"ChipSet"))&&this.Cm&&(this.Zg=Wf(this.Cm,this.Zg));this.ya&&this.rn&&ii(this)};
k.Cb=function(a,b,c){var d=this;if(!this.la[b])switch(this.la[b]=c,b){case "fullScreen":return this.Uc&&this.Uc.lf?c.onclick=function(){d.lf()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.Ip=c.textContent,this.za&&this.za.Ie?c.onclick=function(){d.Ie(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){sc(d,!0)},!0}return!1};k.pd=function(){this.za&&this.za.focus()};
k.lf=function(){var a=!1;this.Uc&&(this.Uc.lf&&(this.Uc.style.width=this.Uc.style.height="100%",this.Uc.style.backgroundColor="black",this.Uc.lf(),a=!0),this.pd());return a};k.Ie=function(a){var b=!1;this.za&&(a?this.za.Ie&&(this.za.Ie(),this.ae.Dg(!0),b=!0):this.za.Km&&(this.za.Km(),this.ae.Dg(!1),b=!0),this.pd());return b};k.Dg=function(a){this.ae&&(this.ae.Dg(a),this.ya&&(this.ya.Ni=a));var b=this.la.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Ip)};
function hi(a){var b=a.za;b&&!a.Li&&(b.addEventListener("touchstart",function(b){ii(a,b)},!1),b.addEventListener("touchmove",function(b){ii(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.Li=!0)}k.Uh=function(a){this.th=a;this.ya&&this.ya.Uh(a)};
function ii(a,b){a.th&&b.preventDefault();var c=0,d=0,e=a.Zf;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);var f=a.ud/a.Zf.offsetWidth,e=a.Ud/a.Zf.offsetHeight,g,h;b.targetTouches?(g=b.targetTouches[0].pageX,h=b.targetTouches[0].pageY):(g=b.pageX,h=b.pageY);c=(g-c)*f/(a.ud/3)|0;d=(h-d)*e/(a.Ud/3)|0;1!=d?d?Bh(a.ya,1040,!0):Bh(a.ya,1038,!0):1!=c&&(c?Bh(a.ya,1039,!0):Bh(a.ya,1037,!0))}
function ii(a){var b=a.za;b&&!a.Li&&(b.addEventListener("touchstart",function(b){ji(a,b)},!1),b.addEventListener("touchmove",function(b){ji(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.Li=!0)}k.Uh=function(a){this.th=a;this.ya&&this.ya.Uh(a)};
function ji(a,b){a.th&&b.preventDefault();var c=0,d=0,e=a.Zf;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);var f=a.ud/a.Zf.offsetWidth,e=a.Ud/a.Zf.offsetHeight,g,h;b.targetTouches?(g=b.targetTouches[0].pageX,h=b.targetTouches[0].pageY):(g=b.pageX,h=b.pageY);c=(g-c)*f/(a.ud/3)|0;d=(h-d)*e/(a.Ud/3)|0;1!=d?d?Ch(a.ya,1040,!0):Ch(a.ya,1038,!0):1!=c&&(c?Ch(a.ya,1039,!0):Ch(a.ya,1037,!0))}
k.Zb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};
k.reset=function(){var a=!0,b=0;this.aa&&(b=mg(this.aa));var c=!1;if(this.va)switch(this.va){case "ega":var c=!0,d=Lh[this.Zg];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.de!==b&&(this.de=b,a=!0);this.Aa=null;this.Sc=this.wi=new Uh(this,1);this.ec=this.kh=new Uh(this,3);c?(this.da=new Uh(this,5,null,this.Tc),ji(this)):this.da=new Uh;ki(this);this.ce=null;this.kd=3==b?Jh:3;this.xe=this.Ic=-1;this.we=0;li(this,this.kd);if(this.Aa.Qa&&a){a=this.Aa.Qa+this.xi;for(b=this.Aa.Qa;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.de?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),Ib(this.ga,b,c|d<<8);sc(this,!0)}};function ji(a){a.da.Gh&1?(a.Sc=a.wi,a.ec=a.da):(a.Sc=a.da,a.ec=a.kh)}k.save=function(){var a=new Rd(this);a.set(0,ci(this.wi));a.set(1,ci(this.kh));a.set(2,[this.de,this.kd,this.ce]);a.set(3,ci(this.da));return a.data()};
k.restore=function(a){var b=a[2];this.de=b[0];this.kd=b[1];this.ce=b[2];this.Aa=null;this.Sc=this.wi=new Uh(this,1,a[0]);this.ec=this.kh=new Uh(this,3,a[1]);this.da=new Uh(this,5,a[3],this.Tc);this.da.Wc&&ji(this);ki(this);if(!mi(this))return!1;ni(this);return!0};
k.Fo=function(a,b,c){if(c)this.sa("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){m("Empty font ROM image: "+a);return}if(1==d.length){m(d[0]);return}if(8192==d.length)lh(this,d,[0,6144]);else{this.sa("Unrecognized font data length ("+d.length+")");return}}catch(e){this.sa("Font ROM data error: "+e.message);return}p(this)}};
function oi(a,b){if(1==b)return a.qd[0]=Oh[0],a.qd[1]=Oh[7],a.qd;if(2==b){var c=a.Aa.$f;if(a.Aa===a.da){var d=a.da.oe[0],c=d&7;d&16&&(c|=8);18!=a.da.oe[1]&&(c|=32)}a.qd[0]=Oh[c&15];c=c&32?Qh:Ph;for(d=0;d<c.length;d++)a.qd[d+1]=Oh[c[d]];return a.qd}if(a.ec===a.kh)return Oh;c=null!=a.da.oe[15]?a.da.oe:Rh;for(d=0;d<a.qd.length;d++){var e=c[d]||0;a.qd[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.qd}function lh(a,b,c,d){a.Tg=b;a.li=c;a.Ce=d}
function ki(a){var b=!1;if(window&&a.Tg){var c=a.Ce?0:2048,d=a.Ce?a.Ce:9;pi(a,1,a.li[0],c,d,14,a.Tg,Mh,Nh)&&(b=!0);c=oi(a);d=a.Ce?a.Ce:8;pi(a,3,a.li[1],0,d,8,a.Tg,c)&&(b=!0);a.Ce&&pi(a,5,a.li[0],0,a.Ce,14,a.Tg,c)&&(b=!0)}return b}function pi(a,b,c,d,e,f,g,h,r){var t=!1;qi(a,b,c,d,e,f,g,h,r)&&(t=!0);a.ln&&qi(a,b<<1,c,d,e,f,g,h,r)&&(t=!0);return t}
function qi(a,b,c,d,e,f,g,h,r){var t=!1,C=b&1?0:1,J=a.Jd[b];J||(J={mc:e<<C,nc:f<<C,Ye:Array(h.length),wk:h.slice(),Nf:r,ji:Array(h.length)});for(r=0;r<h.length;r++){var I=h[r],M=J.Ye[r]?J.wk[r]:[];if(I[0]!==M[0]||I[1]!==M[1]||I[2]!==M[2]){var t=J,M=r,U=C,da=c,ia=d,Ia=e,Wa=f,yb=g,tc=[0,0,0,0],ld=window.document.createElement("canvas");ld.width=t.mc<<4;ld.height=t.nc<<4;for(var Jg=ld.getContext("2d"),Xa=void 0,ac=void 0,zb=void 0,md=8>Wa||!ia?Wa:8,ye=Jg.createImageData(t.mc,t.nc),Xa=0;256>Xa;Xa++){for(zb=
0;zb<Wa;zb++)for(var qj=t.Nf&&M&1&&zb>=Wa-2,rj=yb[zb<md?da+Xa*md+zb:ia+Xa*md+zb-md],ze=0;ze<=U;ze++)for(ac=0;ac<Ia;ac++){var Kg=ac<<U,Lg=(zb<<U)+ze,Mg=qj||rj&128>>(8<=ac&&176<=Xa&&223>=Xa?7:ac)?I:tc;ri(ye,Kg,Lg,Mg);U&&ri(ye,Kg+1,Lg,Mg)}Jg.putImageData(ye,(Xa&15)*t.mc,(Xa>>4)*t.nc)}t.Ye[M]="#"+ca(I[0],2)+ca(I[1],2)+ca(I[2],2);t.wk[M]=I;t.ji[M]=ld;t=!0}}a.Jd[b]=J;return t}function si(a){0<a.we||0<=a.Ic?0>a.xe&&(a.xe=0):a.xe=-1}
function ni(a){if(a.Ob){for(var b=10;15>=b;b++)if(null==a.Aa.lc[b])return;var c=a.Aa.lc[10],b=c&31,d=a.Aa.lc[11]&31,e=a.Aa.lc[9]&31,f=!1;a.Aa===a.da&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)ti(a);else{c=a.Aa.lc[15]+((a.Aa.lc[14]&63)<<8);a.Ic!=c&&(ti(a),a.Ic=c);d=d-b+1;if(a.Nm!=b||a.Kk!=d)a.Nm=b,a.Kk=d;a.Td=e+1;si(a)}}}
function ti(a){if(0<=a.Ic){if(void 0!==a.dc){var b=a.dc[a.Ic];if(b&131072){var b=b&-131073,c=a.Ic%a.xb,d=Math.floor(a.Ic/a.xb);a.Ob&&a.Jd[a.Ob]&&(a.kf&&ui(a,c,d,b,a.kf),ui(a,c,d,b));a.dc[a.Ic]=b}}a.Ic=-1}}
function vi(a){var b;a=a.Aa;var c=a.Ze[5];if(null!=c){b=2;var d=512,e=a.Ze[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.jd=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.od=function(a){var b=this.Aa;null!=a&&b&&a!=b.bj&&(b.di(a),this.ga.di(b.Qa,b.Ib,b.Wi()))};
function mi(a,b){var c,d=a.ce,e=a.Aa;if(e)if(1==e.Ch)d=Jh;else if(5==e.Ch){var d=null,f=e.Tc>>2,g=32768<f?32768:f,h=e.Ze[6];if(null!=h){switch(h&12){case 0:e.Qa=655360;e.Ib=f;d=255;break;case 4:e.Qa=655360;e.Ib=f;d=3==a.de?15:16;break;case 8:e.Qa=720896;e.Ib=g;d=Jh;break;case 12:e.Qa=753664,e.Ib=g,d=3==a.de?2:3}c=e.Sg[1]&8;f=e.lc[6]|(e.lc[7]&1)<<8;255!=d&&(h&1?753664==e.Qa?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=vi(a)}}else e.zc&8&&(e.zc&2?(d=e.zc&16?6:5,e.zc&4||--d):(d=e.zc&1?3:1,e.zc&4&&--d));
else a.ce=null,null==d&&(d=a.kd);if(!li(a,d,b))return!1;a.od(c);return!0}
function li(a,b,c){if(null!=b&&(b!=a.ce||c)){a.Vm=0;a.ce=b;b=a.Aa||(b==Jh?a.Sc:a.ec);if(b!=a.Aa||b.Qa!=a.Qa||b.Ib!=a.Ib){ti(a);if(a.Qa){if(!Eb(a.ga,a.Qa,a.Ib))return!1;a.Aa&&(a.Aa.Wc=!1)}a.Aa=b;b.Wc=!0;a.Qa=b.Qa;a.Ib=b.Ib;if(!Cb(a.ga,b.Qa,b.Ib,3,b===a.da?b:null))return!1}a.Ob=0;a.xb=a.Lh;a.rc=a.jj;a.dj=Ih[Jh][2];b=0;var d=Ih[a.ce];d&&(a.xb=d[0],a.rc=d[1],a.dj=d[2],b=d[3]||0,a.Ob=d[4],4==a.de&&a.Aa===a.da&&3==a.Ob&&(7==a.da.lc[9]?a.rc=43:a.Ob=5));a.ll=a.xb*a.rc;a.Ih=a.ll/a.dj;a.xi=(a.Ih<<1)+b;a.Jk=
k.reset=function(){var a=!0,b=0;this.aa&&(b=ng(this.aa));var c=!1;if(this.va)switch(this.va){case "ega":var c=!0,d=Mh[this.Zg];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.de!==b&&(this.de=b,a=!0);this.Aa=null;this.Sc=this.wi=new Vh(this,1);this.ec=this.kh=new Vh(this,3);c?(this.da=new Vh(this,5,null,this.Tc),ki(this)):this.da=new Vh;li(this);this.ce=null;this.kd=3==b?Kh:3;this.xe=this.Ic=-1;this.we=0;mi(this,this.kd);if(this.Aa.Qa&&a){a=this.Aa.Qa+this.xi;for(b=this.Aa.Qa;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.de?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),Ib(this.ga,b,c|d<<8);sc(this,!0)}};function ki(a){a.da.Gh&1?(a.Sc=a.wi,a.ec=a.da):(a.Sc=a.da,a.ec=a.kh)}k.save=function(){var a=new Rd(this);a.set(0,di(this.wi));a.set(1,di(this.kh));a.set(2,[this.de,this.kd,this.ce]);a.set(3,di(this.da));return a.data()};
k.restore=function(a){var b=a[2];this.de=b[0];this.kd=b[1];this.ce=b[2];this.Aa=null;this.Sc=this.wi=new Vh(this,1,a[0]);this.ec=this.kh=new Vh(this,3,a[1]);this.da=new Vh(this,5,a[3],this.Tc);this.da.Wc&&ki(this);li(this);if(!ni(this))return!1;oi(this);return!0};
k.Fo=function(a,b,c){if(c)this.sa("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){m("Empty font ROM image: "+a);return}if(1==d.length){m(d[0]);return}if(8192==d.length)mh(this,d,[0,6144]);else{this.sa("Unrecognized font data length ("+d.length+")");return}}catch(e){this.sa("Font ROM data error: "+e.message);return}p(this)}};
function pi(a,b){if(1==b)return a.qd[0]=Ph[0],a.qd[1]=Ph[7],a.qd;if(2==b){var c=a.Aa.$f;if(a.Aa===a.da){var d=a.da.oe[0],c=d&7;d&16&&(c|=8);18!=a.da.oe[1]&&(c|=32)}a.qd[0]=Ph[c&15];c=c&32?Rh:Qh;for(d=0;d<c.length;d++)a.qd[d+1]=Ph[c[d]];return a.qd}if(a.ec===a.kh)return Ph;c=null!=a.da.oe[15]?a.da.oe:Sh;for(d=0;d<a.qd.length;d++){var e=c[d]||0;a.qd[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.qd}function mh(a,b,c,d){a.Tg=b;a.li=c;a.Ce=d}
function li(a){var b=!1;if(window&&a.Tg){var c=a.Ce?0:2048,d=a.Ce?a.Ce:9;qi(a,1,a.li[0],c,d,14,a.Tg,Nh,Oh)&&(b=!0);c=pi(a);d=a.Ce?a.Ce:8;qi(a,3,a.li[1],0,d,8,a.Tg,c)&&(b=!0);a.Ce&&qi(a,5,a.li[0],0,a.Ce,14,a.Tg,c)&&(b=!0)}return b}function qi(a,b,c,d,e,f,g,h,r){var t=!1;ri(a,b,c,d,e,f,g,h,r)&&(t=!0);a.ln&&ri(a,b<<1,c,d,e,f,g,h,r)&&(t=!0);return t}
function ri(a,b,c,d,e,f,g,h,r){var t=!1,C=b&1?0:1,J=a.Jd[b];J||(J={mc:e<<C,nc:f<<C,Ye:Array(h.length),wk:h.slice(),Nf:r,ji:Array(h.length)});for(r=0;r<h.length;r++){var I=h[r],M=J.Ye[r]?J.wk[r]:[];if(I[0]!==M[0]||I[1]!==M[1]||I[2]!==M[2]){var t=J,M=r,U=C,da=c,ia=d,Ia=e,Wa=f,Ab=g,tc=[0,0,0,0],ld=window.document.createElement("canvas");ld.width=t.mc<<4;ld.height=t.nc<<4;for(var Jg=ld.getContext("2d"),Xa=void 0,ac=void 0,Bb=void 0,md=8>Wa||!ia?Wa:8,ye=Jg.createImageData(t.mc,t.nc),Xa=0;256>Xa;Xa++){for(Bb=
0;Bb<Wa;Bb++)for(var rj=t.Nf&&M&1&&Bb>=Wa-2,sj=Ab[Bb<md?da+Xa*md+Bb:ia+Xa*md+Bb-md],ze=0;ze<=U;ze++)for(ac=0;ac<Ia;ac++){var Kg=ac<<U,Lg=(Bb<<U)+ze,Mg=rj||sj&128>>(8<=ac&&176<=Xa&&223>=Xa?7:ac)?I:tc;si(ye,Kg,Lg,Mg);U&&si(ye,Kg+1,Lg,Mg)}Jg.putImageData(ye,(Xa&15)*t.mc,(Xa>>4)*t.nc)}t.Ye[M]="#"+ca(I[0],2)+ca(I[1],2)+ca(I[2],2);t.wk[M]=I;t.ji[M]=ld;t=!0}}a.Jd[b]=J;return t}function ti(a){0<a.we||0<=a.Ic?0>a.xe&&(a.xe=0):a.xe=-1}
function oi(a){if(a.Ob){for(var b=10;15>=b;b++)if(null==a.Aa.lc[b])return;var c=a.Aa.lc[10],b=c&31,d=a.Aa.lc[11]&31,e=a.Aa.lc[9]&31,f=!1;a.Aa===a.da&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)ui(a);else{c=a.Aa.lc[15]+((a.Aa.lc[14]&63)<<8);a.Ic!=c&&(ui(a),a.Ic=c);d=d-b+1;if(a.Nm!=b||a.Kk!=d)a.Nm=b,a.Kk=d;a.Td=e+1;ti(a)}}}
function ui(a){if(0<=a.Ic){if(void 0!==a.dc){var b=a.dc[a.Ic];if(b&131072){var b=b&-131073,c=a.Ic%a.xb,d=Math.floor(a.Ic/a.xb);a.Ob&&a.Jd[a.Ob]&&(a.kf&&vi(a,c,d,b,a.kf),vi(a,c,d,b));a.dc[a.Ic]=b}}a.Ic=-1}}
function wi(a){var b;a=a.Aa;var c=a.Ze[5];if(null!=c){b=2;var d=512,e=a.Ze[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.jd=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.od=function(a){var b=this.Aa;null!=a&&b&&a!=b.bj&&(b.di(a),this.ga.di(b.Qa,b.Ib,b.Wi()))};
function ni(a,b){var c,d=a.ce,e=a.Aa;if(e)if(1==e.Ch)d=Kh;else if(5==e.Ch){var d=null,f=e.Tc>>2,g=32768<f?32768:f,h=e.Ze[6];if(null!=h){switch(h&12){case 0:e.Qa=655360;e.Ib=f;d=255;break;case 4:e.Qa=655360;e.Ib=f;d=3==a.de?15:16;break;case 8:e.Qa=720896;e.Ib=g;d=Kh;break;case 12:e.Qa=753664,e.Ib=g,d=3==a.de?2:3}c=e.Sg[1]&8;f=e.lc[6]|(e.lc[7]&1)<<8;255!=d&&(h&1?753664==e.Qa?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=wi(a)}}else e.zc&8&&(e.zc&2?(d=e.zc&16?6:5,e.zc&4||--d):(d=e.zc&1?3:1,e.zc&4&&--d));
else a.ce=null,null==d&&(d=a.kd);if(!mi(a,d,b))return!1;a.od(c);return!0}
function mi(a,b,c){if(null!=b&&(b!=a.ce||c)){a.Vm=0;a.ce=b;b=a.Aa||(b==Kh?a.Sc:a.ec);if(b!=a.Aa||b.Qa!=a.Qa||b.Ib!=a.Ib){ui(a);if(a.Qa){if(!Eb(a.ga,a.Qa,a.Ib))return!1;a.Aa&&(a.Aa.Wc=!1)}a.Aa=b;b.Wc=!0;a.Qa=b.Qa;a.Ib=b.Ib;if(!Cb(a.ga,b.Qa,b.Ib,3,b===a.da?b:null))return!1}a.Ob=0;a.xb=a.Lh;a.rc=a.jj;a.dj=Jh[Kh][2];b=0;var d=Jh[a.ce];d&&(a.xb=d[0],a.rc=d[1],a.dj=d[2],b=d[3]||0,a.Ob=d[4],4==a.de&&a.Aa===a.da&&3==a.Ob&&(7==a.da.lc[9]?a.rc=43:a.Ob=5));a.ll=a.xb*a.rc;a.Ih=a.ll/a.dj;a.xi=(a.Ih<<1)+b;a.Jk=
b?a.xi+b>>1:0;13<=a.ce&&(a.Ih<<=1);a.Jd.length&&(a.vd=Math.floor(a.ud/a.xb),a.wd=Math.floor(a.Ud/a.rc),a.Ob?(b=a.Jd[a.Ob],d=a.Jd[a.Ob<<1],a.pn&&80==a.xb?d&&a.vd>=3*d.mc>>2&&(a.Ob<<=1,b=d):(d&&a.vd>=d.mc&&(a.Ob<<=1,b=d),b&&(a.vd=b.mc,a.wd=b.nc)),a.dg=a.eg=0,b&&(a.dg=a.xb*b.mc,a.eg=a.rc*b.nc)):(a.vd=a.wd=1,a.dg=a.xb,a.eg=a.rc),a.Eh=a.Vc.createImageData(a.dg,a.eg),a.hf=window.document.createElement("canvas"),a.hf.width=a.dg,a.hf.height=a.eg,a.kf=a.hf.getContext("2d"),a.mk=a.nk=0,a.Di=a.ud,a.Ei=a.Ud,
b=a.ud-a.xb*a.vd,d=a.Ud-a.rc*a.wd,0<b&&(a.mk=b>>1,a.Di-=b),0<d&&(a.nk=d>>1,a.Ei-=d),b||d)&&(a.Vc.fillStyle=a.Zf.style.backgroundColor,a.Vc.fillRect(0,0,a.ud,a.Ud));!1!==c?sc(a,!0):wi(a,!0)}return!0}function ri(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function wi(a,b){var c;if(b){if(c=a.Ih,void 0===a.dc||a.dc.length!=c)a.dc=Array(c)}else{if(void 0===a.dc)return;c=a.dc.length}for(var d=0;d<c;d++)a.dc[d]=-1;a.we=-1}
function ui(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Jd[a.Ob];h.Nf&&(d=h.Nf[d]);var r=g>>4&15;h.Nf&&(r=h.Nf[r]);e?(b*=h.mc,c*=h.nc,e.fillStyle=h.Ye[r],e.fillRect(b,c,h.mc,h.nc)):(b=b*a.vd+a.mk,c=c*a.wd+a.nk,a.Vc.fillStyle=h.Ye[r],a.Vc.fillRect(b,c,a.vd,a.wd));g&256&&(r=(f&15)*h.mc,f=(f>>4)*h.nc,e?e.drawImage(h.ji[d],r,f,h.mc,h.nc,b,c,h.mc,h.nc):a.Vc.drawImage(h.ji[d],r,f,h.mc,h.nc,b,c,a.vd,a.wd));g&512&&(f=a.Nm,g=a.Kk,e?(a.Td&&a.Td!==h.nc&&(f=Math.floor(f*h.nc/a.Td),g=Math.floor(g*h.nc/a.Td)),
b=a.ud-a.xb*a.vd,d=a.Ud-a.rc*a.wd,0<b&&(a.mk=b>>1,a.Di-=b),0<d&&(a.nk=d>>1,a.Ei-=d),b||d)&&(a.Vc.fillStyle=a.Zf.style.backgroundColor,a.Vc.fillRect(0,0,a.ud,a.Ud));!1!==c?sc(a,!0):xi(a,!0)}return!0}function si(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function xi(a,b){var c;if(b){if(c=a.Ih,void 0===a.dc||a.dc.length!=c)a.dc=Array(c)}else{if(void 0===a.dc)return;c=a.dc.length}for(var d=0;d<c;d++)a.dc[d]=-1;a.we=-1}
function vi(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Jd[a.Ob];h.Nf&&(d=h.Nf[d]);var r=g>>4&15;h.Nf&&(r=h.Nf[r]);e?(b*=h.mc,c*=h.nc,e.fillStyle=h.Ye[r],e.fillRect(b,c,h.mc,h.nc)):(b=b*a.vd+a.mk,c=c*a.wd+a.nk,a.Vc.fillStyle=h.Ye[r],a.Vc.fillRect(b,c,a.vd,a.wd));g&256&&(r=(f&15)*h.mc,f=(f>>4)*h.nc,e?e.drawImage(h.ji[d],r,f,h.mc,h.nc,b,c,h.mc,h.nc):a.Vc.drawImage(h.ji[d],r,f,h.mc,h.nc,b,c,a.vd,a.wd));g&512&&(f=a.Nm,g=a.Kk,e?(a.Td&&a.Td!==h.nc&&(f=Math.floor(f*h.nc/a.Td),g=Math.floor(g*h.nc/a.Td)),
e.fillStyle=h.Ye[d],e.fillRect(b,c+f,h.mc,g)):(a.Td&&a.Td!==a.wd&&(f=Math.floor(f*a.wd/a.Td),g=Math.floor(g*a.wd/a.Td)),a.Vc.fillStyle=h.Ye[d],a.Vc.fillRect(b,c+f,a.vd,g)))}
function sc(a,b){if(a.ba.Wb){var c=!1;a.Aa&&(a.Aa===a.da?a.da.He&32&&(c=!0):a.Aa.zc&8&&(c=!0));if(c||b){if(b)wi(a,!0);else if(void 0===a.dc)return;var d=!1;!(b||++a.Vm&15)&&0<=a.xe&&(a.xe++,d=!0);var e=0,f=a.ll,c=a.Aa.Qa,g=c+a.Aa.Ib,h=(a.Aa.lc[12]<<8)+a.Aa.lc[13];a.Ob&&(h<<=1);var c=c+h,r=a.xi;c+r>g&&(r=g-c,0>r&&(r=0));g=c+r;if(h=!b){for(var h=a.ga,t=!0,C=c>>>h.Ia;0<r&&C<h.ia.length;)h.ia[C].Da&&(h.ia[C].Da=t=!1,h.ia[C].Ok=!0),r-=h.rb,C++;h=t}if(h){if(!d)return;if(!a.we){if(0>a.Ic)return;e=a.Ic;f=
e+1}}if(a.Ob){if(a.Jd[a.Ob]){d=0;h=a.we=0;r=1048575;a.Aa.zc&32&&(h=32768,r&=~h,a.xe&2||(r&=-65537));for(c+=e<<1;c<g&&e<f;)t=Hb(a.ga,c),t|=65536,t&h&&(a.we++,t&=r),e==a.Ic&&(t|=a.xe&1?131072:0),C=a.dc[e],C!=t&&(ui(a,e%a.xb,Math.floor(e/a.xb),t,a.kf),a.dc[e]=t,d++),c+=2,e++;d&&a.kf&&a.Vc.drawImage(a.hf,0,0,a.dg,a.eg,a.mk,a.nk,a.Di,a.Ei);si(a)}}else if(a.Jk){for(var f=g,J,I,e=c,g=a.we=0,d=a.dj,h=16==d?65536:196608,r=16==d?1:2,t=oi(a,r),M=C=0,U=a.xb,da=0,ia=a.rc,Ia=0;e<f;){J=Hb(a.ga,e);I=a.dc[g];if(I===
J)C+=d;else{a.dc[g]=J;J=J>>8|(J&255)<<8;I=h;var Wa=16;C<U&&(U=C);for(var yb=0;yb<d;yb++){var tc=(J&(I>>=r))>>(Wa-=r);ri(a.Eh,C++,M,t[tc])}C>da&&(da=C);M<ia&&(ia=M);M>=Ia&&(Ia=M+1)}e+=2;g++;if(C>=a.xb){C=0;M+=2;if(M>a.rc)break;M==a.rc&&(M=1,e=c+a.Jk)}}U<a.xb&&(a.kf.putImageData(a.Eh,0,0,U,ia,da-U,Ia-ia),a.Vc.drawImage(a.hf,0,0,a.xb,a.rc,0,0,a.ud,a.Ud))}else{f=g;e=a.we=0;g=oi(a);d=a.Aa.re;r=h=0;t=a.xb;C=0;M=a.rc;for(U=0;c<f;){da=c++-a.Qa;da=d[da];ia=a.dc[e];if(ia===da)h+=8;else{a.dc[e]=da;h<t&&(t=h);
for(ia=0;8>ia;ia++)Ia=Th[da&-2139062144]||0,ri(a.Eh,h++,r,g[Ia]),da<<=1;h>C&&(C=h);r<M&&(M=r);r>=U&&(U=r+1)}e++;if(h>=a.xb&&(h=0,++r>a.rc))break}t<a.xb&&(a.kf.putImageData(a.Eh,0,0,t,M,C-t,U-M),a.Vc.drawImage(a.hf,0,0,a.xb,a.rc,0,0,a.ud,a.Ud))}}}}k.$n=function(){return this.Sc.Hc};k.mp=function(a,b){var c=this.Sc;c.Bh=c.Hc;c.Hc=b&31};k.Zn=function(){return xi(this.Sc)};k.lp=function(a,b){yi(this,this.Sc,b)};k.ao=function(){return this.Sc.zc};k.np=function(a,b){this.Sc.zc=b;mi(this,!1)};
k.bo=function(){return zi(this,this.Sc)};k.rm=function(a,b){this.da.Ui=this.da.Ui&-4|b&3};k.gl=function(){var a=this.da.Wd?this.da.oe[this.da.He&31]:this.da.He;this.da.Wd=!this.da.Wd;return a};k.qm=function(a,b){var c=this.da.He&32;if(this.da.Wd){var d=this.da.He&31;if(16<=d||!c)this.da.oe[d]=b;this.da.Wd=!1}else this.da.He=b,this.da.Wd=!0,b&32&&!c&&ki(this)&&sc(this,!0)};k.no=function(){var a=3-((this.da.Gh&12)>>2),a=this.da.jk&-17|(this.Zg&1<<a)<<4-a;return this.da.jk=a};
k.pp=function(a,b){this.da.Gh=b;ji(this)};k.mo=function(){return this.da.vf};k.wp=function(a,b){this.da.vf=b};k.lo=function(){return this.da.Sg[this.da.vf]};k.vp=function(a,b){this.da.Sg[this.da.vf]=b;2==this.da.vf&&(this.da.ab=Sh[b&15])};k.Sn=function(){return this.da.Xi};k.gp=function(a,b){this.da.Xi=b};k.Tn=function(){return this.da.Yi};k.hp=function(a,b){this.da.Yi=b};k.Rn=function(){return this.da.uf};k.fp=function(a,b){this.da.uf=b};k.Qn=function(){return this.da.Ze[this.da.uf]};
k.ep=function(a,b){this.da.Ze[this.da.uf]=b;switch(this.da.uf){case 0:this.da.Qh=Sh[b&15];this.da.Me=this.da.Qh&~this.da.ge;break;case 1:this.da.ge=~Sh[b&15];this.da.Me=this.da.Qh&~this.da.ge;break;case 2:this.da.ej=Sh[b&15]&-2139062144;break;case 3:case 5:this.od(vi(this));break;case 4:this.da.Xj=(b&3)<<3;break;case 6:mi(this,!1);break;case 7:this.da.fj=Sh[b&15^15]&-2139062144;break;case 8:this.da.jb=b|b<<8|b<<16|b<<24}};k.In=function(){return this.ec.Hc};
k.Wo=function(a,b){var c=this.ec;c.Bh=c.Hc;c.Hc=b&31};k.Hn=function(){return xi(this.ec)};k.Vo=function(a,b){yi(this,this.ec,b)};k.Jn=function(){return this.ec.zc};k.Xo=function(a,b){this.ec.zc=b;mi(this,!1)};k.Gn=function(){return this.ec.$f};k.Uo=function(a,b){this.ec.$f!==b&&(this.ec.$f=b,wi(this,!1))};k.Kn=function(){return zi(this,this.ec)};function xi(a){var b;a.Hc<a.cj&&(b=a.lc[a.Hc]);return b}function yi(a,b,c){b.Hc<b.cj&&(b.lc[b.Hc]=c,9==b.Hc&&8!=b.Bh&&mi(a,!0),ni(a))}
function zi(a,b){var c=0,d=Ac(a.S),e=d-b.nj;0>e&&(e=0);e%b.gj>b.zo&&(c|=1);e%=b.ol;e>b.Bo&&(c|=8);b.nj=d-e;b===a.da?(c|=b.Lg&48^48,b.Wd=!1):c=(b.Lg^=9)|240;return b.Lg=c}
var di={948:Y.prototype.$n,949:Y.prototype.Zn,952:Y.prototype.ao,954:Y.prototype.bo,980:Y.prototype.In,981:Y.prototype.Hn,984:Y.prototype.Jn,985:Y.prototype.Gn,986:Y.prototype.Kn},ei={948:Y.prototype.mp,949:Y.prototype.lp,952:Y.prototype.np,980:Y.prototype.Wo,981:Y.prototype.Vo,984:Y.prototype.Xo,985:Y.prototype.Uo},fi={960:Y.prototype.gl,961:Y.prototype.gl,962:Y.prototype.no,964:Y.prototype.mo,965:Y.prototype.lo,970:Y.prototype.Tn,972:Y.prototype.Sn,974:Y.prototype.Rn,975:Y.prototype.Qn},gi={954:Y.prototype.rm,
function sc(a,b){if(a.ba.Wb){var c=!1;a.Aa&&(a.Aa===a.da?a.da.He&32&&(c=!0):a.Aa.zc&8&&(c=!0));if(c||b){if(b)xi(a,!0);else if(void 0===a.dc)return;var d=!1;!(b||++a.Vm&15)&&0<=a.xe&&(a.xe++,d=!0);var e=0,f=a.ll,c=a.Aa.Qa,g=c+a.Aa.Ib,h=(a.Aa.lc[12]<<8)+a.Aa.lc[13];a.Ob&&(h<<=1);var c=c+h,r=a.xi;c+r>g&&(r=g-c,0>r&&(r=0));g=c+r;if(h=!b){for(var h=a.ga,t=!0,C=c>>>h.Ia;0<r&&C<h.ia.length;)h.ia[C].Da&&(h.ia[C].Da=t=!1,h.ia[C].Ok=!0),r-=h.rb,C++;h=t}if(h){if(!d)return;if(!a.we){if(0>a.Ic)return;e=a.Ic;f=
e+1}}if(a.Ob){if(a.Jd[a.Ob]){d=0;h=a.we=0;r=1048575;a.Aa.zc&32&&(h=32768,r&=~h,a.xe&2||(r&=-65537));for(c+=e<<1;c<g&&e<f;)t=Hb(a.ga,c),t|=65536,t&h&&(a.we++,t&=r),e==a.Ic&&(t|=a.xe&1?131072:0),C=a.dc[e],C!=t&&(vi(a,e%a.xb,Math.floor(e/a.xb),t,a.kf),a.dc[e]=t,d++),c+=2,e++;d&&a.kf&&a.Vc.drawImage(a.hf,0,0,a.dg,a.eg,a.mk,a.nk,a.Di,a.Ei);ti(a)}}else if(a.Jk){for(var f=g,J,I,e=c,g=a.we=0,d=a.dj,h=16==d?65536:196608,r=16==d?1:2,t=pi(a,r),M=C=0,U=a.xb,da=0,ia=a.rc,Ia=0;e<f;){J=Hb(a.ga,e);I=a.dc[g];if(I===
J)C+=d;else{a.dc[g]=J;J=J>>8|(J&255)<<8;I=h;var Wa=16;C<U&&(U=C);for(var Ab=0;Ab<d;Ab++){var tc=(J&(I>>=r))>>(Wa-=r);si(a.Eh,C++,M,t[tc])}C>da&&(da=C);M<ia&&(ia=M);M>=Ia&&(Ia=M+1)}e+=2;g++;if(C>=a.xb){C=0;M+=2;if(M>a.rc)break;M==a.rc&&(M=1,e=c+a.Jk)}}U<a.xb&&(a.kf.putImageData(a.Eh,0,0,U,ia,da-U,Ia-ia),a.Vc.drawImage(a.hf,0,0,a.xb,a.rc,0,0,a.ud,a.Ud))}else{f=g;e=a.we=0;g=pi(a);d=a.Aa.re;r=h=0;t=a.xb;C=0;M=a.rc;for(U=0;c<f;){da=c++-a.Qa;da=d[da];ia=a.dc[e];if(ia===da)h+=8;else{a.dc[e]=da;h<t&&(t=h);
for(ia=0;8>ia;ia++)Ia=Uh[da&-2139062144]||0,si(a.Eh,h++,r,g[Ia]),da<<=1;h>C&&(C=h);r<M&&(M=r);r>=U&&(U=r+1)}e++;if(h>=a.xb&&(h=0,++r>a.rc))break}t<a.xb&&(a.kf.putImageData(a.Eh,0,0,t,M,C-t,U-M),a.Vc.drawImage(a.hf,0,0,a.xb,a.rc,0,0,a.ud,a.Ud))}}}}k.$n=function(){return this.Sc.Hc};k.mp=function(a,b){var c=this.Sc;c.Bh=c.Hc;c.Hc=b&31};k.Zn=function(){return yi(this.Sc)};k.lp=function(a,b){zi(this,this.Sc,b)};k.ao=function(){return this.Sc.zc};k.np=function(a,b){this.Sc.zc=b;ni(this,!1)};
k.bo=function(){return Ai(this,this.Sc)};k.rm=function(a,b){this.da.Ui=this.da.Ui&-4|b&3};k.gl=function(){var a=this.da.Wd?this.da.oe[this.da.He&31]:this.da.He;this.da.Wd=!this.da.Wd;return a};k.qm=function(a,b){var c=this.da.He&32;if(this.da.Wd){var d=this.da.He&31;if(16<=d||!c)this.da.oe[d]=b;this.da.Wd=!1}else this.da.He=b,this.da.Wd=!0,b&32&&!c&&li(this)&&sc(this,!0)};k.no=function(){var a=3-((this.da.Gh&12)>>2),a=this.da.jk&-17|(this.Zg&1<<a)<<4-a;return this.da.jk=a};
k.pp=function(a,b){this.da.Gh=b;ki(this)};k.mo=function(){return this.da.vf};k.wp=function(a,b){this.da.vf=b};k.lo=function(){return this.da.Sg[this.da.vf]};k.vp=function(a,b){this.da.Sg[this.da.vf]=b;2==this.da.vf&&(this.da.ab=Th[b&15])};k.Sn=function(){return this.da.Xi};k.gp=function(a,b){this.da.Xi=b};k.Tn=function(){return this.da.Yi};k.hp=function(a,b){this.da.Yi=b};k.Rn=function(){return this.da.uf};k.fp=function(a,b){this.da.uf=b};k.Qn=function(){return this.da.Ze[this.da.uf]};
k.ep=function(a,b){this.da.Ze[this.da.uf]=b;switch(this.da.uf){case 0:this.da.Qh=Th[b&15];this.da.Me=this.da.Qh&~this.da.ge;break;case 1:this.da.ge=~Th[b&15];this.da.Me=this.da.Qh&~this.da.ge;break;case 2:this.da.ej=Th[b&15]&-2139062144;break;case 3:case 5:this.od(wi(this));break;case 4:this.da.Xj=(b&3)<<3;break;case 6:ni(this,!1);break;case 7:this.da.fj=Th[b&15^15]&-2139062144;break;case 8:this.da.jb=b|b<<8|b<<16|b<<24}};k.In=function(){return this.ec.Hc};
k.Wo=function(a,b){var c=this.ec;c.Bh=c.Hc;c.Hc=b&31};k.Hn=function(){return yi(this.ec)};k.Vo=function(a,b){zi(this,this.ec,b)};k.Jn=function(){return this.ec.zc};k.Xo=function(a,b){this.ec.zc=b;ni(this,!1)};k.Gn=function(){return this.ec.$f};k.Uo=function(a,b){this.ec.$f!==b&&(this.ec.$f=b,xi(this,!1))};k.Kn=function(){return Ai(this,this.ec)};function yi(a){var b;a.Hc<a.cj&&(b=a.lc[a.Hc]);return b}function zi(a,b,c){b.Hc<b.cj&&(b.lc[b.Hc]=c,9==b.Hc&&8!=b.Bh&&ni(a,!0),oi(a))}
function Ai(a,b){var c=0,d=Ac(a.S),e=d-b.nj;0>e&&(e=0);e%b.gj>b.zo&&(c|=1);e%=b.ol;e>b.Bo&&(c|=8);b.nj=d-e;b===a.da?(c|=b.Lg&48^48,b.Wd=!1):c=(b.Lg^=9)|240;return b.Lg=c}
var ei={948:Y.prototype.$n,949:Y.prototype.Zn,952:Y.prototype.ao,954:Y.prototype.bo,980:Y.prototype.In,981:Y.prototype.Hn,984:Y.prototype.Jn,985:Y.prototype.Gn,986:Y.prototype.Kn},fi={948:Y.prototype.mp,949:Y.prototype.lp,952:Y.prototype.np,980:Y.prototype.Wo,981:Y.prototype.Vo,984:Y.prototype.Xo,985:Y.prototype.Uo},gi={960:Y.prototype.gl,961:Y.prototype.gl,962:Y.prototype.no,964:Y.prototype.mo,965:Y.prototype.lo,970:Y.prototype.Tn,972:Y.prototype.Sn,974:Y.prototype.Rn,975:Y.prototype.Qn},hi={954:Y.prototype.rm,
960:Y.prototype.qm,961:Y.prototype.qm,962:Y.prototype.pp,964:Y.prototype.wp,965:Y.prototype.vp,970:Y.prototype.hp,972:Y.prototype.gp,974:Y.prototype.fp,975:Y.prototype.ep,986:Y.prototype.rm};
za(function(){for(var a=Ra(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing &lt;canvas&gt; support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(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.onresize());c.appendChild(e);var f=window.document.createElement("textarea");ua("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"));c.appendChild(f);var g=e.getContext("2d"),d=new Y(d,e,g,f,c);Qa(d,c)}});
function Ai(a){this.cl=a.adapter;switch(this.cl){case 1:this.ak=1016;this.vg=4;break;case 2:this.ak=760;this.vg=3;break;default:m("Unrecognized serial adapter #"+this.cl);return}this.Rd=null;n.call(this,"SerialPort",a,Ai);var b=a.binding,c;a=Bi;b&&(void 0===c&&(c="Panel"),(c=Oa(c,this.id))&&(b=c.la[b])&&this.Cb(null,a,b))}La(n,Ai);var Bi="buffer";k=Ai.prototype;k.yk=function(a,b){return a==this.Dh?(this.ae=b,this):null};
k.Cb=function(a,b,c){var d=this;switch(b){case Bi:return this.la[b]=this.Rd=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Ci(d,[b]))},c.onkeypress=function(a){a=a||window.event;Ci(d,[a.which||a.keyCode])},!0}return!1};k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;this.aa=bb(a,"ChipSet");Kb(b,this,Di,this.ak);Mb(b,this,Ei,this.ak);p(this)};k.Zb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
function Bi(a){this.cl=a.adapter;switch(this.cl){case 1:this.ak=1016;this.vg=4;break;case 2:this.ak=760;this.vg=3;break;default:m("Unrecognized serial adapter #"+this.cl);return}this.Rd=null;n.call(this,"SerialPort",a,Bi);var b=a.binding,c;a=Ci;b&&(void 0===c&&(c="Panel"),(c=Oa(c,this.id))&&(b=c.la[b])&&this.Cb(null,a,b))}La(n,Bi);var Ci="buffer";k=Bi.prototype;k.yk=function(a,b){return a==this.Dh?(this.ae=b,this):null};
k.Cb=function(a,b,c){var d=this;switch(b){case Ci:return this.la[b]=this.Rd=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Di(d,[b]))},c.onkeypress=function(a){a=a||window.event;Di(d,[a.which||a.keyCode])},!0}return!1};k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;this.aa=bb(a,"ChipSet");Kb(b,this,Ei,this.ak);Mb(b,this,Fi,this.ak);p(this)};k.Zb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Zd()};k.save=function(){var a=new Rd(this),b=0,c=[];c[b++]=this.ti;c[b++]=this.Ek;c[b++]=this.Ue;c[b++]=this.$g;c[b++]=this.Md;c[b++]=this.ue;c[b++]=this.bd;c[b++]=this.Dc;c[b++]=this.Bk;c[b]=this.Of;a.set(0,c);return a.data()};k.restore=function(a){return this.Zd(a[0])};
k.Zd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.ti=a[b++];this.Ek=a[b++];this.Ue=a[b++];this.$g=a[b++];this.Md=a[b++];this.ue=a[b++];this.bd=a[b++];this.Dc=a[b++];this.Bk=a[b++];this.Of=a[b];return!0};function Ci(a,b){a.Of=a.Of.concat(b);Fi(a)}function Fi(a){0<a.Of.length&&!(a.Dc&1)&&(a.ti=a.Of.shift(),a.Dc|=1);var b=-1;a.Dc&1&&a.$g&1&&(b=4);0<=b?(a.Md&=-8,a.Md|=b,a.aa&&a.vg&&Ug(a.aa,a.vg,100)):(a.Md|=1,a.aa&&a.vg&&Vg(a.aa,a.vg))}
k.ko=function(){var a=this.ue&128?this.Ue&255:this.ti;this.Dc&=-2;Fi(this);return a};k.Un=function(){return this.ue&128?this.Ue>>8:this.$g};k.Vn=function(){return this.Md};k.Wn=function(){return this.ue};k.Yn=function(){return this.bd};k.Xn=function(){return this.Dc};k.eo=function(){return this.Bk};
k.Zd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.ti=a[b++];this.Ek=a[b++];this.Ue=a[b++];this.$g=a[b++];this.Md=a[b++];this.ue=a[b++];this.bd=a[b++];this.Dc=a[b++];this.Bk=a[b++];this.Of=a[b];return!0};function Di(a,b){a.Of=a.Of.concat(b);Gi(a)}function Gi(a){0<a.Of.length&&!(a.Dc&1)&&(a.ti=a.Of.shift(),a.Dc|=1);var b=-1;a.Dc&1&&a.$g&1&&(b=4);0<=b?(a.Md&=-8,a.Md|=b,a.aa&&a.vg&&Vg(a.aa,a.vg,100)):(a.Md|=1,a.aa&&a.vg&&Wg(a.aa,a.vg))}
k.ko=function(){var a=this.ue&128?this.Ue&255:this.ti;this.Dc&=-2;Gi(this);return a};k.Un=function(){return this.ue&128?this.Ue>>8:this.$g};k.Vn=function(){return this.Md};k.Wn=function(){return this.ue};k.Yn=function(){return this.bd};k.Xn=function(){return this.Dc};k.eo=function(){return this.Bk};
k.xp=function(a,b){if(this.ue&128)this.Ue=this.Ue&-256|b;else{this.Ek=b;this.Dc&=-97;var c;this.Rd?(13!=b&&(8==b?this.Rd.value=this.Rd.value.slice(0,-1):(this.Rd.value+=String.fromCharCode(b),this.Rd.scrollTop=this.Rd.scrollHeight)),c=!0):c=!1;c&&(this.Dc|=96)}};k.ip=function(a,b){this.ue&128?this.Ue=this.Ue&255|b<<8:this.$g=b};k.jp=function(a,b){this.ue=b};
k.kp=function(a,b){var c=this.bd;this.bd=b;if(this.ae&&(c^b)&3){var c=this.ae,d=this.bd,e=3==(d&3);if(e){if(!c.Wc){var f=!1;c.bd&2||(c.reset(),c.$b("serial mouse reset"),f=!0);c.bd&1||(c.$b("serial mouse ID requested"),f=!0);f&&(Ci(c.bg,[77,77]),c.$b("serial mouse ID sent"));Gi(c,c.za);c.setActive(e)}}else c.Wc&&(c.$b("serial mouse inactive"),Hi(c.za),c.setActive(e));c.bd=d}};
var Di={0:Ai.prototype.ko,1:Ai.prototype.Un,2:Ai.prototype.Vn,3:Ai.prototype.Wn,4:Ai.prototype.Yn,5:Ai.prototype.Xn,6:Ai.prototype.eo},Ei={0:Ai.prototype.xp,1:Ai.prototype.ip,3:Ai.prototype.jp,4:Ai.prototype.kp};za(function(){for(var a=Ra(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new Ai(d);Qa(d,c)}});function Ii(a){n.call(this,"Mouse",a,Ii);if(this.Zi=a.serial)this.ek="SerialPort";this.setActive(!1);this.uh=!1;p(this)}La(n,Ii);k=Ii.prototype;
k.yc=function(a,b,c,d){this.wa=a;this.ga=b;this.S=c;this.Ua=d;this.video=bb(this.wa,"Video")};k.setActive=function(a){this.Wc=a};k.Zb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.ek&&!this.bg){for(var c=null;(c=bb(this.wa,this.ek,c))&&(!c.yk||!(this.bg=c.yk(this.Zi,this))););this.bg?this.video&&(c=this.video,c.ae=this,this.za=c.za):m(this.id+": "+this.ek+" "+this.Zi+" unavailable")}this.Wc?Gi(this,this.za):Hi(this.za)}return!0};
k.kp=function(a,b){var c=this.bd;this.bd=b;if(this.ae&&(c^b)&3){var c=this.ae,d=this.bd,e=3==(d&3);if(e){if(!c.Wc){var f=!1;c.bd&2||(c.reset(),c.$b("serial mouse reset"),f=!0);c.bd&1||(c.$b("serial mouse ID requested"),f=!0);f&&(Di(c.bg,[77,77]),c.$b("serial mouse ID sent"));Hi(c,c.za);c.setActive(e)}}else c.Wc&&(c.$b("serial mouse inactive"),Ii(c.za),c.setActive(e));c.bd=d}};
var Ei={0:Bi.prototype.ko,1:Bi.prototype.Un,2:Bi.prototype.Vn,3:Bi.prototype.Wn,4:Bi.prototype.Yn,5:Bi.prototype.Xn,6:Bi.prototype.eo},Fi={0:Bi.prototype.xp,1:Bi.prototype.ip,3:Bi.prototype.jp,4:Bi.prototype.kp};za(function(){for(var a=Ra(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new Bi(d);Qa(d,c)}});function Ji(a){n.call(this,"Mouse",a,Ji);if(this.Zi=a.serial)this.ek="SerialPort";this.setActive(!1);this.uh=!1;p(this)}La(n,Ji);k=Ji.prototype;
k.yc=function(a,b,c,d){this.wa=a;this.ga=b;this.S=c;this.Ua=d;this.video=bb(this.wa,"Video")};k.setActive=function(a){this.Wc=a};k.Zb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.ek&&!this.bg){for(var c=null;(c=bb(this.wa,this.ek,c))&&(!c.yk||!(this.bg=c.yk(this.Zi,this))););this.bg?this.video&&(c=this.video,c.ae=this,this.za=c.za):m(this.id+": "+this.ek+" "+this.Zi+" unavailable")}this.Wc?Hi(this,this.za):Ii(this.za)}return!0};
k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Zd()};k.save=function(){var a=new Rd(this);a.set(0,this.ik());return a.data()};k.restore=function(a){return this.Zd(a[0])};k.Zd=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.setActive(a[b++]);this.Gd=a[b++];this.Hd=a[b++];this.Ve=a[b++];this.We=a[b++];this.ph=a[b++];this.qh=a[b++];this.bd=a[b];return!0};
k.ik=function(){var a=0,b=[];b[a++]=this.Wc;b[a++]=this.Gd;b[a++]=this.Hd;b[a++]=this.Ve;b[a++]=this.We;b[a++]=this.ph;b[a++]=this.qh;b[a]=this.bd;return b};k.Dg=function(a){this.uh=a};function Gi(a,b){b&&(a.Li||(b.addEventListener("mousemove",function(b){a.il(b)},!1),b.addEventListener("mousedown",function(b){a.Ai(b.button,!0)},!1),b.addEventListener("mouseup",function(b){a.Ai(b.button,!1)},!1),a.Li=!0),b.style.cursor="none")}function Hi(a){a&&(a.style.cursor="auto")}
k.il=function(a){if(this.Wc&&this.S&&this.S.ba.Gb){if(0>this.Gd||0>this.Hd)this.Gd=a.clientX,this.Hd=a.clientY;this.uh?(this.Ve=a.movementX||a.mozMovementX||a.webkitMovementX||0,this.We=a.movementY||a.mozMovementY||a.webkitMovementY||0):(this.Ve=a.clientX-this.Gd,this.We=a.clientY-this.Hd);(this.Ve||this.We)&&Ji(this);this.Gd=a.clientX;this.Hd=a.clientY}};
k.Ai=function(a,b){if(this.Wc&&this.S&&this.S.ba.Gb){var c;!(c=!1!==this.uh)&&(c=this.video)&&(c=this.video,c=c.jn?c.Ie(!0):!1);c||(this.uh=null);switch(a){case 0:this.ph!=b&&(this.ph=b,Ji(this));break;case 2:this.qh!=b&&(this.qh=b,Ji(this))}}};function Ji(a){Ci(a.bg,[64|(a.ph?32:0)|(a.qh?16:0)|(a.We&192)>>4|(a.Ve&192)>>6,a.Ve&63,a.We&63]);a.Ve=a.We=0}za(function(){for(var a=Ra(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new Ii(d);Qa(d,c)}});
function Ki(a,b,c){n.call(this,"Disk",{id:a.el+".disk"+ ++Li},Ki);this.T=a;this.wa=a.wa;this.Ua=a.Ua;this.Ka=b;this.nd=b.name;this.pf=b.pf;this.vh=this.xd=!1;this.create(c,b.lb,b.mb,b.pb,b.$a);this.pe=[];this.Og=[];this.Ed=null;this.kl=0;this.Ti=!1;p(this)}var Li=0;La(n,Ki);k=Ki.prototype;k.yc=function(a,b,c,d){this.Ua=d};k.Zb=function(a,b){b||!this.vh||this.xd||(p(this,!1),this.load(this.nd,this.Pe,null,this.fn,this));return!0};k.fn=function(){p(this,!0)};
k.Yb=function(a,b){if(this.xd){var c,d=0;if(this.Ti&&!pa("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=Mi(this,!1);)if(d=c[0]){this.T.sa('Unable to save "'+this.nd+'" (error '+d+")");break}b&&this.xd&&(c="action=close&volume="+this.Pe,c+="&machine="+this.T.rf(),c+="&user="+this.T.Yd(),na(oa()+"/api/v1/disk?"+c,!0),this.xd=!1);!d&&a&&this.T.sa(this.nd+" saved")}return!0};
k.create=function(a,b,c,d,e){this.mode=a;this.lb=b;this.mb=c;this.pb=d;this.$a=e;this.Pa=[];if("preload"!=this.mode){a=Array(this.lb);for(b=0;b<a.length;b++){c=Array(this.mb);for(d=0;d<c.length;d++){e=Array(this.pb);for(var f=1;f<=e.length;f++)e[f-1]=Ni(null,b,d,f,this.$a,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.Pa=a}this.mf=null};
k.load=function(a,b,c,d,e){var f=b;if(!this.Ge)if(this.nd=a,this.Pe=b,this.Ge=d,this.$m=e||this.T,c){var g=this,h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.lb=d[0];g.mb=d[1];g.pb=d[2];g.$a=512;b=g.$a>>2;var e=d=0,a=new DataView(a,0,c);g.Pa=Array(g.lb);for(c=0;c<g.Pa.length;c++)for(var f=g.Pa[c]=Array(g.mb),U=0;U<f.length;U++)for(var da=f[U]=Array(g.pb),ia=0;ia<da.length;ia++){for(var Ia=Ni(null,c,U,ia+1,g.$a,0),Wa=Ia.data,yb=0;yb<b;yb++,e+=4)var tc=Wa[yb]=
a.getInt32(e,!0),d=d+tc&-1;Ia.vc=b;da[ia]=Ia}g.mf=d;b=g}else g.sa("Unrecognized diskette format ("+c+" bytes)");g.Ge&&(g.Ge.call(g.T,g.Ka,b,g.nd,g.Pe),g.Ge=null)};h.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=ga(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=Oi(this,b),this.vh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c=
k.ik=function(){var a=0,b=[];b[a++]=this.Wc;b[a++]=this.Gd;b[a++]=this.Hd;b[a++]=this.Ve;b[a++]=this.We;b[a++]=this.ph;b[a++]=this.qh;b[a]=this.bd;return b};k.Dg=function(a){this.uh=a};function Hi(a,b){b&&(a.Li||(b.addEventListener("mousemove",function(b){a.il(b)},!1),b.addEventListener("mousedown",function(b){a.Ai(b.button,!0)},!1),b.addEventListener("mouseup",function(b){a.Ai(b.button,!1)},!1),a.Li=!0),b.style.cursor="none")}function Ii(a){a&&(a.style.cursor="auto")}
k.il=function(a){if(this.Wc&&this.S&&this.S.ba.Gb){if(0>this.Gd||0>this.Hd)this.Gd=a.clientX,this.Hd=a.clientY;this.uh?(this.Ve=a.movementX||a.mozMovementX||a.webkitMovementX||0,this.We=a.movementY||a.mozMovementY||a.webkitMovementY||0):(this.Ve=a.clientX-this.Gd,this.We=a.clientY-this.Hd);(this.Ve||this.We)&&Ki(this);this.Gd=a.clientX;this.Hd=a.clientY}};
k.Ai=function(a,b){if(this.Wc&&this.S&&this.S.ba.Gb){var c;!(c=!1!==this.uh)&&(c=this.video)&&(c=this.video,c=c.jn?c.Ie(!0):!1);c||(this.uh=null);switch(a){case 0:this.ph!=b&&(this.ph=b,Ki(this));break;case 2:this.qh!=b&&(this.qh=b,Ki(this))}}};function Ki(a){Di(a.bg,[64|(a.ph?32:0)|(a.qh?16:0)|(a.We&192)>>4|(a.Ve&192)>>6,a.Ve&63,a.We&63]);a.Ve=a.We=0}za(function(){for(var a=Ra(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new Ji(d);Qa(d,c)}});
function Li(a,b,c){n.call(this,"Disk",{id:a.el+".disk"+ ++Mi},Li);this.T=a;this.wa=a.wa;this.Ua=a.Ua;this.Ka=b;this.nd=b.name;this.pf=b.pf;this.vh=this.xd=!1;this.create(c,b.lb,b.mb,b.pb,b.$a);this.pe=[];this.Og=[];this.Ed=null;this.kl=0;this.Ti=!1;p(this)}var Mi=0;La(n,Li);k=Li.prototype;k.yc=function(a,b,c,d){this.Ua=d};k.Zb=function(a,b){b||!this.vh||this.xd||(p(this,!1),this.load(this.nd,this.Pe,null,this.fn,this));return!0};k.fn=function(){p(this,!0)};
k.Yb=function(a,b){if(this.xd){var c,d=0;if(this.Ti&&!pa("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=Ni(this,!1);)if(d=c[0]){this.T.sa('Unable to save "'+this.nd+'" (error '+d+")");break}b&&this.xd&&(c="action=close&volume="+this.Pe,c+="&machine="+this.T.rf(),c+="&user="+this.T.Yd(),na(oa()+"/api/v1/disk?"+c,!0),this.xd=!1);!d&&a&&this.T.sa(this.nd+" saved")}return!0};
k.create=function(a,b,c,d,e){this.mode=a;this.lb=b;this.mb=c;this.pb=d;this.$a=e;this.Pa=[];if("preload"!=this.mode){a=Array(this.lb);for(b=0;b<a.length;b++){c=Array(this.mb);for(d=0;d<c.length;d++){e=Array(this.pb);for(var f=1;f<=e.length;f++)e[f-1]=Oi(null,b,d,f,this.$a,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.Pa=a}this.mf=null};
k.load=function(a,b,c,d,e){var f=b;if(!this.Ge)if(this.nd=a,this.Pe=b,this.Ge=d,this.$m=e||this.T,c){var g=this,h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.lb=d[0];g.mb=d[1];g.pb=d[2];g.$a=512;b=g.$a>>2;var e=d=0,a=new DataView(a,0,c);g.Pa=Array(g.lb);for(c=0;c<g.Pa.length;c++)for(var f=g.Pa[c]=Array(g.mb),U=0;U<f.length;U++)for(var da=f[U]=Array(g.pb),ia=0;ia<da.length;ia++){for(var Ia=Oi(null,c,U,ia+1,g.$a,0),Wa=Ia.data,Ab=0;Ab<b;Ab++,e+=4)var tc=Wa[Ab]=
a.getInt32(e,!0),d=d+tc&-1;Ia.vc=b;da[ia]=Ia}g.mf=d;b=g}else g.sa("Unrecognized diskette format ("+c+" bytes)");g.Ge&&(g.Ge.call(g.T,g.Ka,b,g.nd,g.Pe),g.Ge=null)};h.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=ga(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=Pi(this,b),this.vh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c=
"dir"),f=oa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.pf?"":d)+"&format=json")),na(f,!0,null,this,this.dn,b)};
k.dn=function(a,b,c,d){var e=null;this.qf=!1;var f=0>c&&this.wa&&!this.wa.ba.Wb;if(this.vh)c?this.T.sa('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.xd=!0,e=this);else if(c)this.T.sa('Unable to load disk "'+this.nd+'" (error '+c+")",f);else try{if(0<fa(a,!0).toLowerCase().indexOf("-readonly"))this.qf=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.qf=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.nd]:0>b.indexOf("0x")&&
'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)m(h[0]);else{this.lb=h.length;this.mb=h[0].length;this.pb=h[0][0].length;var r=h[0][0][0];this.$a=r&&r.length||512;for(b=a=0;b<this.lb;b++)for(c=0;c<this.mb;c++)for(d=0;d<this.pb;d++)if(r=h[b][c][d]){var t=r.length;void 0===t&&(t=r.length=512);var t=t>>2,C=r.pattern;void 0===C&&(C=r.pattern=0);var J=r.data;if(void 0===J){var I=r.bytes;if(void 0!==I&&I.length){for(var f=
t<<2,M=I.length;M<f;M++)I[M]=C;this.fill(r,I,0)}else J=[],C=r.pattern=C|C<<8|C<<16|C<<24,r.data=J;delete r.bytes}Ni(r,b,c);for(f=0;f<J.length;f++)a=a+J[f]&-1}this.Pa=h;this.mf=a;e=this}else m("Empty disk image: "+this.nd)}catch(U){m("Disk image error: "+U.message)}this.Ge&&(this.Ge.call(this.$m,this.Ka,e,this.nd,this.Pe),this.Ge=null)};function Ni(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.sn=b;a.un=c;a.Xc=a.vc=0;a.Da=!1;return a}
function Oi(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.lb+":"+a.mb+":"+a.pb+":"+a.$a;c+="&machine="+a.T.rf();c+="&user="+a.T.Yd();return oa()+"/api/v1/disk?"+c}function Pi(a,b,c,d,e,f,g){if(a.xd){var h;h="action=read&volume="+a.Pe;h+="&chs="+a.lb+":"+a.mb+":"+a.pb+":"+a.$a;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.T.rf());h+="&user="+a.T.Yd();na(oa()+"/api/v1/disk?"+h,f,null,a,a.gn,[b,c,d,e,f,g])}else g&&g(-1,!1)}
k.gn=function(a,b,c,d){var e=!1;a=d[0];var f=d[1],g=d[2],h=d[3];if(!c){b=JSON.parse(b);for(e=0;h--;){var r=this.seek(a,f,g,!0);if(!r)break;this.fill(r,b,e);e+=r.length;g++}e=d[4]}(d=d[5])&&d(c,e)};k.hn=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Ti=!1;if(0<=a&&a<this.Pa.length&&0<=b&&b<this.Pa[a].length)for(--e;0<f--&&0<=e&&e<this.Pa[a][b].length;e++){var g=this.Pa[a][b][e];c?Qi(this,g,!1):g.Da||(g.Xc=g.vc=0)}d&&Ri(this)};
function Qi(a,b,c){b.Da=!0;var d=a.pe.indexOf(b);0<=d&&(a.pe.splice(d,1),a.Og.splice(d,1));a.pe.push(b);a.Og.push(ka());c&&Ri(a)}function Ri(a){if(a.pe.length){var b=a.Og[0]+2E3;a.Ed&&a.kl<b&&(clearTimeout(a.Ed),a.Ed=null);if(!a.Ed){var c=ka(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Ed=setTimeout(function(){Mi(a,!0)},b);a.kl=c+b}}else a.Ed&&(clearTimeout(a.Ed),a.Ed=null)}
function Mi(a,b){b&&(a.Ed=null);var c=a.pe[0];if(c){for(var d=c.sn,e=c.un,c=c.sector,f=0,g=[],h=c-1;h<a.Pa[d][e].length;h++){var r=a.Pa[d][e][h];if(!r.Da)break;var t=a.pe.indexOf(r);a.pe.splice(t,1);a.Og.splice(t,1);g=g.concat(Si(r));r.Da=!1;f++}a.xd?(h={},a.Ti=!0,h.action="write",h.volume=a.Pe,h.chs=a.lb+":"+a.mb+":"+a.pb+":"+a.$a,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.T.rf(),h.user=a.T.Yd(),h.data=JSON.stringify(g),d=na(oa()+"/api/v1/disk",b,h,a,a.hn,[d,e,c,f,b])):d=!1;return b||d}return!1}
t<<2,M=I.length;M<f;M++)I[M]=C;this.fill(r,I,0)}else J=[],C=r.pattern=C|C<<8|C<<16|C<<24,r.data=J;delete r.bytes}Oi(r,b,c);for(f=0;f<J.length;f++)a=a+J[f]&-1}this.Pa=h;this.mf=a;e=this}else m("Empty disk image: "+this.nd)}catch(U){m("Disk image error: "+U.message)}this.Ge&&(this.Ge.call(this.$m,this.Ka,e,this.nd,this.Pe),this.Ge=null)};function Oi(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.sn=b;a.un=c;a.Xc=a.vc=0;a.Da=!1;return a}
function Pi(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.lb+":"+a.mb+":"+a.pb+":"+a.$a;c+="&machine="+a.T.rf();c+="&user="+a.T.Yd();return oa()+"/api/v1/disk?"+c}function Qi(a,b,c,d,e,f,g){if(a.xd){var h;h="action=read&volume="+a.Pe;h+="&chs="+a.lb+":"+a.mb+":"+a.pb+":"+a.$a;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.T.rf());h+="&user="+a.T.Yd();na(oa()+"/api/v1/disk?"+h,f,null,a,a.gn,[b,c,d,e,f,g])}else g&&g(-1,!1)}
k.gn=function(a,b,c,d){var e=!1;a=d[0];var f=d[1],g=d[2],h=d[3];if(!c){b=JSON.parse(b);for(e=0;h--;){var r=this.seek(a,f,g,!0);if(!r)break;this.fill(r,b,e);e+=r.length;g++}e=d[4]}(d=d[5])&&d(c,e)};k.hn=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Ti=!1;if(0<=a&&a<this.Pa.length&&0<=b&&b<this.Pa[a].length)for(--e;0<f--&&0<=e&&e<this.Pa[a][b].length;e++){var g=this.Pa[a][b][e];c?Ri(this,g,!1):g.Da||(g.Xc=g.vc=0)}d&&Si(this)};
function Ri(a,b,c){b.Da=!0;var d=a.pe.indexOf(b);0<=d&&(a.pe.splice(d,1),a.Og.splice(d,1));a.pe.push(b);a.Og.push(ka());c&&Si(a)}function Si(a){if(a.pe.length){var b=a.Og[0]+2E3;a.Ed&&a.kl<b&&(clearTimeout(a.Ed),a.Ed=null);if(!a.Ed){var c=ka(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Ed=setTimeout(function(){Ni(a,!0)},b);a.kl=c+b}}else a.Ed&&(clearTimeout(a.Ed),a.Ed=null)}
function Ni(a,b){b&&(a.Ed=null);var c=a.pe[0];if(c){for(var d=c.sn,e=c.un,c=c.sector,f=0,g=[],h=c-1;h<a.Pa[d][e].length;h++){var r=a.Pa[d][e][h];if(!r.Da)break;var t=a.pe.indexOf(r);a.pe.splice(t,1);a.Og.splice(t,1);g=g.concat(Ti(r));r.Da=!1;f++}a.xd?(h={},a.Ti=!0,h.action="write",h.volume=a.Pe,h.chs=a.lb+":"+a.mb+":"+a.pb+":"+a.$a,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.T.rf(),h.user=a.T.Yd(),h.data=JSON.stringify(g),d=na(oa()+"/api/v1/disk",b,h,a,a.hn,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.info=function(){return this.Pa.length?[this.Pa.length,this.Pa[0].length,this.Pa[0][0].length,this.Pa[0][0][0].length]:[0,0,0,0]};
k.seek=function(a,b,c,d,e){var f=null,g=this.Ka,h=this.Pa[a];if(h){var r=h[b];if(!r&&g.ri&&b<g.mb)for(r=h[b]=Array(g.Nd),h=0;h<r.length;h++)r[h]=Ni(null,a,b,h+1,g.kb,0);if(r){for(h=0;h<r.length;h++)if(r[h]&&r[h].sector==c){f=r[h];if(null===f.pattern)if(d)f.pattern=0;else{for(d=1;++h<r.length;)null===r[h].pattern&&d++;Pi(this,a,b,c,d,null!=e,function(a,b){a&&(f=null);e&&e(f,b)});return e?null:f}break}!f&&g.ri&&9==g.Xa&&(f=r[h]=Ni(null,a,b,g.Xa,g.kb,0))}}e&&e(f,!1);return f};
k.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function Si(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function Ti(a,b){var c=-1;if(a&&b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c}
k.write=function(a,b,c){if(this.qf)return!1;if(b<a.length){if(c!=Ti(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.vc?f<a.Xc?(a.vc+=a.Xc-f,a.Xc=f):f>=a.Xc+a.vc&&(a.vc+=f-(a.Xc+a.vc)+1):(a.Xc=f,a.vc=1);d[f]=d[f]&~(255<<b)|c<<b;this.xd&&Qi(this,a,!0)}return!0}return null};
k.seek=function(a,b,c,d,e){var f=null,g=this.Ka,h=this.Pa[a];if(h){var r=h[b];if(!r&&g.ri&&b<g.mb)for(r=h[b]=Array(g.Nd),h=0;h<r.length;h++)r[h]=Oi(null,a,b,h+1,g.kb,0);if(r){for(h=0;h<r.length;h++)if(r[h]&&r[h].sector==c){f=r[h];if(null===f.pattern)if(d)f.pattern=0;else{for(d=1;++h<r.length;)null===r[h].pattern&&d++;Qi(this,a,b,c,d,null!=e,function(a,b){a&&(f=null);e&&e(f,b)});return e?null:f}break}!f&&g.ri&&9==g.Xa&&(f=r[h]=Oi(null,a,b,g.Xa,g.kb,0))}}e&&e(f,!1);return f};
k.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function Ti(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function Ui(a,b){var c=-1;if(a&&b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c}
k.write=function(a,b,c){if(this.qf)return!1;if(b<a.length){if(c!=Ui(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.vc?f<a.Xc?(a.vc+=a.Xc-f,a.Xc=f):f>=a.Xc+a.vc&&(a.vc+=f-(a.Xc+a.vc)+1):(a.Xc=f,a.vc=1);d[f]=d[f]&~(255<<b)|c<<b;this.xd&&Ri(this,a,!0)}return!0}return null};
k.save=function(){var a=0,b=[];b[a++]=[this.Pe,this.mf,this.lb,this.mb,this.pb,this.$a];if(!this.xd&&!this.qf)for(var c=this.Pa,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.vc){for(var h=[],r=0,t=g.Xc,C=g.Xc+g.vc;t<C;)h[r++]=g.data[t++];b[a++]=[d,e,f,g.Xc,h]}}return b};
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.Pa.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.mf&&e[1]!=this.mf&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.mf+")",b=-2));for(this.Pa.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],r=g[f++],t=g[f++];if(h>=this.Pa.length||r>=this.Pa[h].length||t>=this.Pa[h][r].length){c="sector (CHS="+h+":"+r+":"+t+") out of range ("+
b+" changes applied)";b=-1;break}if(this.qf){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.Pa[h][r][t]){for(r=h.data.length;r<e;)h.data[r++]=h.pattern;r=0;h.Xc=e;for(h.vc=f.length;e<g;)h.data[e++]=f[r++];b++}}}0>b&&-2!=b&&this.T.sa("Unable to restore disk '"+this.nd+": "+c);return b};
k.toJSON=function(){var a=JSON.stringify(this.Pa),a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,""),a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:"),a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");return a=a.replace(/(sector|length|data|pattern):/gm,'"$1":')};
function Ui(a){n.call(this,"FDC",a,Ui);this.dmaRead=this.Fi;this.dmaWrite=this.Gi;this.dmaFormat=this.an;this.ye=null;if(a.autoMount&&(this.ye=a.autoMount,"string"==typeof this.ye))try{this.ye=eval("("+a.autoMount+")")}catch(b){m("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.ye=null}this.sc=[];this.Rk=!ua("Mobi")&&window&&"FileReader"in window}La(n,Ui);l={};aa={};
var Vi={3:{td:3,Qd:0,name:aa.sq},4:{td:2,Qd:1,name:aa.qq},5:{td:9,Qd:7,name:aa.Eq},6:{td:9,Qd:7,name:aa.kq},7:{td:2,Qd:0,name:aa.mq},8:{td:1,Qd:2,name:aa.rq},10:{td:2,Qd:7,name:aa.lq},13:{td:6,Qd:7,name:aa.Xp},15:{td:3,Qd:0,name:aa.pq}};k=Ui.prototype;
function Vi(a){n.call(this,"FDC",a,Vi);this.dmaRead=this.Fi;this.dmaWrite=this.Gi;this.dmaFormat=this.an;this.ye=null;if(a.autoMount&&(this.ye=a.autoMount,"string"==typeof this.ye))try{this.ye=eval("("+a.autoMount+")")}catch(b){m("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.ye=null}this.sc=[];this.Rk=!ua("Mobi")&&window&&"FileReader"in window}La(n,Vi);l={};aa={};
var Wi={3:{td:3,Qd:0,name:aa.sq},4:{td:2,Qd:1,name:aa.qq},5:{td:9,Qd:7,name:aa.Eq},6:{td:9,Qd:7,name:aa.kq},7:{td:2,Qd:0,name:aa.mq},8:{td:1,Qd:2,name:aa.rq},10:{td:2,Qd:7,name:aa.lq},13:{td:6,Qd:7,name:aa.Xp},15:{td:3,Qd:0,name:aa.pq}};k=Vi.prototype;
k.Cb=function(a,b,c){var d=this;switch(b){case "listDisks":return this.la[b]=c,c.onchange=function(){var a=d.la.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("({"+b+"})")}catch(h){m("FDC option error: "+h.message)}b=g.desc;void 0===b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.la[b]=c,c.onchange=function(){var a;a=c.value;var b=10,g;if(a){b||(b=16);
if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var h=a.charAt(a.length-1).toLowerCase();"h"==h?(b=16,h=null):"."==h&&(b=10,h=null);null===h&&(a=a.substr(0,a.length-1))}var r,h=a;(b&&10!=b?16==b?null!==h.match(/^[0-9a-f]+$/i):1:null!==h.match(/^[0-9]+$/))&&!isNaN(r=parseInt(a,b))&&(g=r|0)}a=g;null!=a&&Wi(d,a)},!0;case "loadDrive":return this.la[b]=c,c.onclick=function(){var a=d.la.listDisks;a&&Xi(d,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return this.Rk?
(this.la[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Xi(d,fa(b,!0),b,a)}return!1}):c.parentNode.removeChild(c),!0}return!1};k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;this.wa=a;this.aa=bb(a,"ChipSet");this.yd();Kb(b,this,Yi);Mb(b,this,Zi);this.Rk&&$i(this,"Local Disk","?");$i(this,"Remote Disk","??");this.Sf()||p(this)};
k.Zb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.wa.Qi){this.sc=[];for(var c=0;c<this.ua.length;c++)aj(this,c,!0);this.Sf(!0)}}else if(!this.restore(a))return!1;if(c=this.la.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.kj;d++){var e=window.document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.kj&&(c.value="0",Wi(this,0))}}return!0};
if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var h=a.charAt(a.length-1).toLowerCase();"h"==h?(b=16,h=null):"."==h&&(b=10,h=null);null===h&&(a=a.substr(0,a.length-1))}var r,h=a;(b&&10!=b?16==b?null!==h.match(/^[0-9a-f]+$/i):1:null!==h.match(/^[0-9]+$/))&&!isNaN(r=parseInt(a,b))&&(g=r|0)}a=g;null!=a&&Xi(d,a)},!0;case "loadDrive":return this.la[b]=c,c.onclick=function(){var a=d.la.listDisks;a&&Yi(d,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return this.Rk?
(this.la[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Yi(d,fa(b,!0),b,a)}return!1}):c.parentNode.removeChild(c),!0}return!1};k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;this.wa=a;this.aa=bb(a,"ChipSet");this.yd();Kb(b,this,Zi);Mb(b,this,$i);this.Rk&&aj(this,"Local Disk","?");aj(this,"Remote Disk","??");this.Sf()||p(this)};
k.Zb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.wa.Qi){this.sc=[];for(var c=0;c<this.ua.length;c++)bj(this,c,!0);this.Sf(!0)}}else if(!this.restore(a))return!1;if(c=this.la.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.kj;d++){var e=window.document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.kj&&(c.value="0",Xi(this,0))}}return!0};
k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.yd()};k.save=function(){var a=new Rd(this);a.set(0,this.fk());return a.data()};k.restore=function(a){return this.yd(a[0])};
k.yd=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.Za=a[b++];b++;this.oa=a[b++];this.bc=a[b++];this.sb=a[b++];this.bb=a[b++];this.Df=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.sc=c);void 0===this.ua&&(this.kj=4,this.aa&&(this.kj=xg(this.aa)),this.ua=Array(4));for(c=0;c<this.ua.length;c++){var f=this.ua[c];if(void 0===f){var f=this.ua[c]={},g;if(this.aa)a:{g=this.aa;if(c<xg(g)){if(!g.Id){g=360;break a}if(c<g.Id.length){g=g.Id[c];break a}}g=0}else g=0;switch(g){case 160:case 180:f.mb=
1;default:f.lb=40;f.pb=9;break;case 720:f.lb=80;f.pb=9;break;case 1200:f.lb=80;f.pb=15;break;case 1440:f.lb=80,f.pb=18}}this.$i(f,c,e[c])||(d=!1)}this.ie=a[b++]||0;this.um=a[b]||0;return d};k.fk=function(){var a=0,b=[];b[a++]=this.Za;b[a++]=0;b[a++]=this.oa;b[a++]=this.bc;b[a++]=this.sb;b[a++]=this.bb;b[a++]=this.Df;b[a++]=this.hk();for(var c=a++,d=0;d<this.ua.length;d++){var e=this.ua[d];e.na&&bj(this,e.Qe,e.na)}b[c]=this.sc;b[a++]=this.ie;b[a]=this.um;return b};
k.yd=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.Za=a[b++];b++;this.oa=a[b++];this.bc=a[b++];this.sb=a[b++];this.bb=a[b++];this.Df=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.sc=c);void 0===this.ua&&(this.kj=4,this.aa&&(this.kj=yg(this.aa)),this.ua=Array(4));for(c=0;c<this.ua.length;c++){var f=this.ua[c];if(void 0===f){var f=this.ua[c]={},g;if(this.aa)a:{g=this.aa;if(c<yg(g)){if(!g.Id){g=360;break a}if(c<g.Id.length){g=g.Id[c];break a}}g=0}else g=0;switch(g){case 160:case 180:f.mb=
1;default:f.lb=40;f.pb=9;break;case 720:f.lb=80;f.pb=9;break;case 1200:f.lb=80;f.pb=15;break;case 1440:f.lb=80,f.pb=18}}this.$i(f,c,e[c])||(d=!1)}this.ie=a[b++]||0;this.um=a[b]||0;return d};k.fk=function(){var a=0,b=[];b[a++]=this.Za;b[a++]=0;b[a++]=this.oa;b[a++]=this.bc;b[a++]=this.sb;b[a++]=this.bb;b[a++]=this.Df;b[a++]=this.hk();for(var c=a++,d=0;d<this.ua.length;d++){var e=this.ua[d];e.na&&cj(this,e.Qe,e.na)}b[c]=this.sc;b[a++]=this.ie;b[a]=this.um;return b};
k.$i=function(a,b,c){var d=0,e=!0;a.Za=b;a.Gc=a.nf=!1;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.lb||40,a.mb||c[3],a.pb||9,a.$a||512,c[1],a.Mh,a.tg,a.ug]);a.Va=c[d++];var f=c[d++];a.name=f[0];a.lb=f[1];a.mb=f[2];a.pb=f[3];a.$a=f[4];a.pf=f[5];(a.Mh=f[6])?(a.tg=f[7],a.ug=f[8]):(a.Mh=a.lb,a.tg=a.mb,a.ug=a.pb);a.Ha=c[d++];a.Ld=c[d++];a.nb=c[d++];a.Ld=100<=a.Ld?a.Ld-100:a.Ld-a.nb;a.Xa=c[d++];a.Nd=c[d++];a.kb=c[d++];a.La=c[d++];a.Fa=null;a.na||(a.Qe="");var g=c[d++];
102==g&&(g=!1);"boolean"==typeof g?(f=c[d++],c=c[d],g?(d=this.ua[b],aj(this,b,!0,!0),d.nf=!0,b=new Ki(this,d,"preload"),this.Lk(d,b,f,c,!0)):cj(this,b,f,c,!0)?a.na&&c&&dj(this,f,c,a.na):p(this,!1)):void 0!==g&&a.na&&0>a.na.restore(g)&&(e=!1);e&&a.na&&void 0!==a.La&&(a.Fa=a.na.seek(a.nb,a.Ha,a.Xa));return e};k.hk=function(){for(var a=0,b=[],c=0;c<this.ua.length;c++)b[a++]=this.gk(this.ua[c]);return b};
k.gk=function(a){var b=0,c=[];c[b++]=a.Va;c[b++]=[a.name,a.lb,a.mb,a.pb,a.$a,a.pf,a.Mh,a.tg,a.ug];c[b++]=a.Ha;c[b++]=a.Ld+100;c[b++]=a.nb;c[b++]=a.Xa;c[b++]=a.Nd;c[b++]=a.kb;c[b++]=a.La;c[b++]=a.nf;c[b++]=a.Bm;c[b]=a.Qe;return c};k.Sf=function(a){a||(this.ve=0);if(this.ye)for(var b in this.ye){var c=this.ye[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.ua.length){!cj(this,d,c.name,c.path,!0)&&a&&p(this,!1);continue}}this.sa("Unrecognized auto-mount specification for drive "+b)}return!!this.ve};
function Xi(a,b,c,d){var e,f=a.la.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.ua.length)if(c)if("?"==c)a.sa('Use "Choose File" and "Load" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=fa(c);a.jc("Attempting to load "+c+' as "'+b+'"')}for(a.jc("loading disk "+c+"...");cj(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=
a,g=c,h=void 0,h=0;h<f.sc.length;h++)if(f.sc[h][1]==g){f.sc.splice(h,1);break}aj(a,e,!1,!0)}}else aj(a,e);else a.sa("Nothing to load")}function cj(a,b,c,d,e,f){var g=a.ua[b];if(d&&g.Qe!=d){aj(a,b,e,!0);if(g.Gc)return a.sa("Drive "+b+" busy"),!0;g.Gc=!0;e&&(g.Ee=!0,a.ve++);g.nf=!!f;(new Ki(a,g,"preload")).load(c,d,f,a.Lk);return!1}return!0}
k.Lk=function(a,b,c,d,e){var f;a.Gc=!1;b&&(f=b.info(),b&&f[0]>a.lb||f[1]>a.mb)&&(this.sa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Za)),b=null);b?(a.na=b,a.Bm=c,a.Qe=d,dj(this,c,d,b),f=b.info(),this.ie|=128,this.sa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Za),a.Ee||e),a.Mh=f[0],a.tg=f[1],a.ug=f[2]):a.nf=!1;a.Ee&&(a.Ee=!1,--this.ve||p(this));Wi(this,a.Za)};
function $i(a,b,c){if(a=a.la.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}function Wi(a,b){if(0<=b&&b<a.ua.length){var c=a.ua[b],d=a.la.listDisks,e=a.la.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.nf?"?":c.Qe,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}
function aj(a,b,c,d){var e=a.ua[b];e.na&&(bj(a,e.Qe,e.na),e.Bm="",e.Qe="",e.na=null,e.nf=!1,a.ie|=128,d||a.sa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Wi(a,b))}function dj(a,b,c,d){var e;for(e=0;e<a.sc.length;e++)if(a.sc[e][1]==c){d.restore(a.sc[e][2]);return}a.sc[e]=[b,c,[]]}function bj(a,b,c){var d;for(d=0;d<a.sc.length;d++)if(a.sc[d][1]==b){a.sc[d][2]=c.save();break}}k.dp=function(a,b){b&4?this.Df&4||this.Df&8&&this.aa&&Ug(this.aa,6):this.yd();this.Df=b};k.Pn=function(){return this.oa};
k.Nn=function(){var a=0;this.sb<this.bb&&(a=this.bc[this.sb]);this.Df&8&&this.aa&&Vg(this.aa,6);++this.sb>=this.bb&&(this.oa&=-81,this.sb=this.bb=0);return a};
k.cp=function(a,b){this.bb<this.bc.length&&(this.bc[this.bb++]=b);var c=this.bc[0]&31;if(void 0!==Vi[c]&&this.bb>=Vi[c].td){var d=!1;this.sb=0;var c=this.Ea(),e,f,g,h,r,t=c&31;switch(t){case 3:this.Ea(l.tq);this.Ea(l.$p);this.Mb();break;case 4:f=this.Ea(l.Jf);this.Za=f&3;e=this.ua[this.Za];this.Mb();this.ac((e.Va&-16777216)>>>24,l.wq);break;case 5:case 6:f=this.Ea(l.Jf);d=f>>2&1;this.Za=f&3;e=this.ua[this.Za];e.Ha=d;f=e.nb=this.Ea(l.ok);g=this.Ea(l.pk);h=e.Xa=this.Ea(l.rk);r=this.Ea(l.hi);e.kb=128<<
r;e.Nd=this.Ea(l.Vp);this.Ea(l.Pm);this.Ea(l.Up);6==t?(t=e,t.Va=72,t.na&&(t.Fa=null,t.Va=0,this.aa&&(Og(this.aa,2,this,"dmaRead",t),Gg(this.aa,2)))):(t=e,t.Va=72,t.na&&(t.na.qf?t.Va=576:(t.Fa=null,t.Va=0,this.aa&&(Og(this.aa,2,this,"dmaWrite",t),Gg(this.aa,2)))));ej(this,e,c,d,f,g,h,r);d=!0;break;case 7:f=this.Ea(l.Jf);this.Za=f&3;e=this.ua[this.Za];e.nb=e.Ld=0;e.Va=268435488;this.Mb();d=!0;break;case 8:e=this.ua[this.Za];e.Ha=0;this.Mb();this.ac(e.Za|e.Ha<<2|e.Va&255,l.Rm);this.ac(e.nb,l.iq);this.Za=
this.Za+1&3;break;case 10:f=this.Ea(l.Jf);d=f>>2&1;this.Za=f&3;e=this.ua[this.Za];f=e.nb;g=e.Ha=d;h=e.Xa=1;r=0;e.Va=0;e.na&&(e.Fa=e.na.seek(e.nb,e.Ha,e.Xa))?r=e.Fa.length:e.Va=72;ej(this,e,c,d,f,g,h,r);d=!0;break;case 13:f=this.Ea(l.Jf);d=f>>2&1;this.Za=f&3;e=this.ua[this.Za];f=e.nb;g=e.Ha=d;h=1;r=this.Ea(l.hi);e.kb=128<<r;e.Nd=this.Ea(l.oq);this.Ea(l.Pm);e.Ak=this.Ea(l.Om);t=e;t.Va=72;t.na&&(t.Fa=null,t.Va=0,this.aa&&(t.jf=0,t.Bc=Array(4),t.ri=!0,t.jh=0,Og(this.aa,2,this,"dmaFormat",t),Gg(this.aa,
2),t.ri=!1));ej(this,e,c,d,f,g,h,r);d=!0;break;case 15:f=this.Ea(l.Jf),this.Za=f&3,e=this.ua[this.Za],e.Ha=f>>2&1,f=this.Ea(l.fq),e.nb+=f-e.Ld,0>e.nb&&(e.nb=0),e.nb>=e.lb&&(e.nb=e.lb-1),e.Ld=f,e.Va=32,e.nb||(e.Va|=268435456),this.Mb(),d=!0}0<this.bb&&(this.oa|=80);this.Df&8&&(!e||e.Va&8||!d||this.aa&&Ug(this.aa,6))}};k.On=function(){var a=this.ie;this.ie&=-129;return a};k.bp=function(a,b){this.um=b};
function ej(a,b,c,d,e,f,g,h){a.Mb();a.ac(b.Za|b.Ha<<2|b.Va&255,l.Rm);a.ac((b.Va&65280)>>>8,l.uq);a.ac((b.Va&16711680)>>>16,l.vq);var r=0;if(e!=b.nb||f!=b.Ha)r=g=1;c&128&&(f^=r,d||(r=0));a.ac(e+r,l.ok);a.ac(f,l.pk);a.ac(g,l.rk);a.ac(h,l.hi)}k.Ea=function(){var a=this.bc[this.sb];this.sb++;return a};k.Mb=function(){this.sb=this.bb=0};k.ac=function(a){this.bc[this.bb++]=a};k.Fi=function(a,b,c){void 0===b||0>b?this.Ab(a,c):c(-1,!1)};k.Gi=function(a,b){return void 0!==b&&0<=b?this.Db(a,b):-1};
k.an=function(a,b){return void 0!==b&&0<=b?this.lk(a,b):-1};k.Ab=function(a,b){var c=-1,d=null,e=0;if(!a.Va&&a.na){do{if(a.Fa&&(e=a.La,0<=(c=Ti(a.Fa,a.La++)))){d=a.Fa;break}a.Fa=a.na.seek(a.nb,a.Ha,a.Xa);if(!a.Fa){a.Va=1088;break}a.La=0;this.Rf(a)}while(1)}b(c,!1,d,e)};k.Db=function(a,b){if(a.Va||!a.na)return-1;do{if(a.Fa&&a.na.write(a.Fa,a.La++,b))break;a.Fa=a.na.seek(a.nb,a.Ha,a.Xa);if(!a.Fa){a.Va=8256;b=-1;break}a.La=0;this.Rf(a)}while(1);return b};
k.Rf=function(a){a.Xa++;a.Xa>=a.ug+1&&(a.Xa=1,a.Ha++,a.Ha>=a.tg&&(a.Ha=0,a.nb++))};k.lk=function(a,b){if(a.Va)return-1;a.Bc[a.jf++]=b;if(a.jf==a.Bc.length){a.nb=a.Bc[0];a.Ha=a.Bc[1];a.Xa=a.Bc[2];a.kb=128<<a.Bc[3];for(var c=a.jf=0;c<a.kb;c++)if(0>this.Db(a,a.Ak))return-1;a.jh++}a.jh>=a.Nd&&(b=-1);return b};var Yi={1012:Ui.prototype.Pn,1013:Ui.prototype.Nn,1015:Ui.prototype.On},Zi={1010:Ui.prototype.dp,1013:Ui.prototype.cp,1015:Ui.prototype.bp};
za(function(){for(var a=Ra(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new Ui(d);Qa(d,c)}});function Z(a){n.call(this,"HDC",a,Z);this.dmaRead=this.Fi;this.dmaWrite=this.Gi;this.dmaWriteBuffer=this.bn;this.dmaWriteFormat=this.cn;this.ki=[];if(a.drives)try{this.ki=eval("("+a.drives+")")}catch(b){m("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.kg=(this.De="at"==a.type)?1:0;this.tn=this.De?2:3}La(n,Z);
var fj=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];k=Z.prototype;k.Cb=function(){return!1};k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;this.wa=a;this.aa=bb(a,"ChipSet");Kb(b,this,this.De?gj:hj);Mb(b,this,this.De?ij:jj);Od(c,19,this,this.so);Od(c,64,this,this.to);this.reset();this.Sf()||p(this)};
102==g&&(g=!1);"boolean"==typeof g?(f=c[d++],c=c[d],g?(d=this.ua[b],bj(this,b,!0,!0),d.nf=!0,b=new Li(this,d,"preload"),this.Lk(d,b,f,c,!0)):dj(this,b,f,c,!0)?a.na&&c&&ej(this,f,c,a.na):p(this,!1)):void 0!==g&&a.na&&0>a.na.restore(g)&&(e=!1);e&&a.na&&void 0!==a.La&&(a.Fa=a.na.seek(a.nb,a.Ha,a.Xa));return e};k.hk=function(){for(var a=0,b=[],c=0;c<this.ua.length;c++)b[a++]=this.gk(this.ua[c]);return b};
k.gk=function(a){var b=0,c=[];c[b++]=a.Va;c[b++]=[a.name,a.lb,a.mb,a.pb,a.$a,a.pf,a.Mh,a.tg,a.ug];c[b++]=a.Ha;c[b++]=a.Ld+100;c[b++]=a.nb;c[b++]=a.Xa;c[b++]=a.Nd;c[b++]=a.kb;c[b++]=a.La;c[b++]=a.nf;c[b++]=a.Bm;c[b]=a.Qe;return c};k.Sf=function(a){a||(this.ve=0);if(this.ye)for(var b in this.ye){var c=this.ye[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.ua.length){!dj(this,d,c.name,c.path,!0)&&a&&p(this,!1);continue}}this.sa("Unrecognized auto-mount specification for drive "+b)}return!!this.ve};
function Yi(a,b,c,d){var e,f=a.la.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.ua.length)if(c)if("?"==c)a.sa('Use "Choose File" and "Load" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=fa(c);a.jc("Attempting to load "+c+' as "'+b+'"')}for(a.jc("loading disk "+c+"...");dj(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=
a,g=c,h=void 0,h=0;h<f.sc.length;h++)if(f.sc[h][1]==g){f.sc.splice(h,1);break}bj(a,e,!1,!0)}}else bj(a,e);else a.sa("Nothing to load")}function dj(a,b,c,d,e,f){var g=a.ua[b];if(d&&g.Qe!=d){bj(a,b,e,!0);if(g.Gc)return a.sa("Drive "+b+" busy"),!0;g.Gc=!0;e&&(g.Ee=!0,a.ve++);g.nf=!!f;(new Li(a,g,"preload")).load(c,d,f,a.Lk);return!1}return!0}
k.Lk=function(a,b,c,d,e){var f;a.Gc=!1;b&&(f=b.info(),b&&f[0]>a.lb||f[1]>a.mb)&&(this.sa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Za)),b=null);b?(a.na=b,a.Bm=c,a.Qe=d,ej(this,c,d,b),f=b.info(),this.ie|=128,this.sa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Za),a.Ee||e),a.Mh=f[0],a.tg=f[1],a.ug=f[2]):a.nf=!1;a.Ee&&(a.Ee=!1,--this.ve||p(this));Xi(this,a.Za)};
function aj(a,b,c){if(a=a.la.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}function Xi(a,b){if(0<=b&&b<a.ua.length){var c=a.ua[b],d=a.la.listDisks,e=a.la.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.nf?"?":c.Qe,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}
function bj(a,b,c,d){var e=a.ua[b];e.na&&(cj(a,e.Qe,e.na),e.Bm="",e.Qe="",e.na=null,e.nf=!1,a.ie|=128,d||a.sa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Xi(a,b))}function ej(a,b,c,d){var e;for(e=0;e<a.sc.length;e++)if(a.sc[e][1]==c){d.restore(a.sc[e][2]);return}a.sc[e]=[b,c,[]]}function cj(a,b,c){var d;for(d=0;d<a.sc.length;d++)if(a.sc[d][1]==b){a.sc[d][2]=c.save();break}}k.dp=function(a,b){b&4?this.Df&4||this.Df&8&&this.aa&&Vg(this.aa,6):this.yd();this.Df=b};k.Pn=function(){return this.oa};
k.Nn=function(){var a=0;this.sb<this.bb&&(a=this.bc[this.sb]);this.Df&8&&this.aa&&Wg(this.aa,6);++this.sb>=this.bb&&(this.oa&=-81,this.sb=this.bb=0);return a};
k.cp=function(a,b){this.bb<this.bc.length&&(this.bc[this.bb++]=b);var c=this.bc[0]&31;if(void 0!==Wi[c]&&this.bb>=Wi[c].td){var d=!1;this.sb=0;var c=this.Ea(),e,f,g,h,r,t=c&31;switch(t){case 3:this.Ea(l.tq);this.Ea(l.$p);this.Mb();break;case 4:f=this.Ea(l.Jf);this.Za=f&3;e=this.ua[this.Za];this.Mb();this.ac((e.Va&-16777216)>>>24,l.wq);break;case 5:case 6:f=this.Ea(l.Jf);d=f>>2&1;this.Za=f&3;e=this.ua[this.Za];e.Ha=d;f=e.nb=this.Ea(l.ok);g=this.Ea(l.pk);h=e.Xa=this.Ea(l.rk);r=this.Ea(l.hi);e.kb=128<<
r;e.Nd=this.Ea(l.Vp);this.Ea(l.Pm);this.Ea(l.Up);6==t?(t=e,t.Va=72,t.na&&(t.Fa=null,t.Va=0,this.aa&&(Pg(this.aa,2,this,"dmaRead",t),Hg(this.aa,2)))):(t=e,t.Va=72,t.na&&(t.na.qf?t.Va=576:(t.Fa=null,t.Va=0,this.aa&&(Pg(this.aa,2,this,"dmaWrite",t),Hg(this.aa,2)))));fj(this,e,c,d,f,g,h,r);d=!0;break;case 7:f=this.Ea(l.Jf);this.Za=f&3;e=this.ua[this.Za];e.nb=e.Ld=0;e.Va=268435488;this.Mb();d=!0;break;case 8:e=this.ua[this.Za];e.Ha=0;this.Mb();this.ac(e.Za|e.Ha<<2|e.Va&255,l.Rm);this.ac(e.nb,l.iq);this.Za=
this.Za+1&3;break;case 10:f=this.Ea(l.Jf);d=f>>2&1;this.Za=f&3;e=this.ua[this.Za];f=e.nb;g=e.Ha=d;h=e.Xa=1;r=0;e.Va=0;e.na&&(e.Fa=e.na.seek(e.nb,e.Ha,e.Xa))?r=e.Fa.length:e.Va=72;fj(this,e,c,d,f,g,h,r);d=!0;break;case 13:f=this.Ea(l.Jf);d=f>>2&1;this.Za=f&3;e=this.ua[this.Za];f=e.nb;g=e.Ha=d;h=1;r=this.Ea(l.hi);e.kb=128<<r;e.Nd=this.Ea(l.oq);this.Ea(l.Pm);e.Ak=this.Ea(l.Om);t=e;t.Va=72;t.na&&(t.Fa=null,t.Va=0,this.aa&&(t.jf=0,t.Bc=Array(4),t.ri=!0,t.jh=0,Pg(this.aa,2,this,"dmaFormat",t),Hg(this.aa,
2),t.ri=!1));fj(this,e,c,d,f,g,h,r);d=!0;break;case 15:f=this.Ea(l.Jf),this.Za=f&3,e=this.ua[this.Za],e.Ha=f>>2&1,f=this.Ea(l.fq),e.nb+=f-e.Ld,0>e.nb&&(e.nb=0),e.nb>=e.lb&&(e.nb=e.lb-1),e.Ld=f,e.Va=32,e.nb||(e.Va|=268435456),this.Mb(),d=!0}0<this.bb&&(this.oa|=80);this.Df&8&&(!e||e.Va&8||!d||this.aa&&Vg(this.aa,6))}};k.On=function(){var a=this.ie;this.ie&=-129;return a};k.bp=function(a,b){this.um=b};
function fj(a,b,c,d,e,f,g,h){a.Mb();a.ac(b.Za|b.Ha<<2|b.Va&255,l.Rm);a.ac((b.Va&65280)>>>8,l.uq);a.ac((b.Va&16711680)>>>16,l.vq);var r=0;if(e!=b.nb||f!=b.Ha)r=g=1;c&128&&(f^=r,d||(r=0));a.ac(e+r,l.ok);a.ac(f,l.pk);a.ac(g,l.rk);a.ac(h,l.hi)}k.Ea=function(){var a=this.bc[this.sb];this.sb++;return a};k.Mb=function(){this.sb=this.bb=0};k.ac=function(a){this.bc[this.bb++]=a};k.Fi=function(a,b,c){void 0===b||0>b?this.Ab(a,c):c(-1,!1)};k.Gi=function(a,b){return void 0!==b&&0<=b?this.Db(a,b):-1};
k.an=function(a,b){return void 0!==b&&0<=b?this.lk(a,b):-1};k.Ab=function(a,b){var c=-1,d=null,e=0;if(!a.Va&&a.na){do{if(a.Fa&&(e=a.La,0<=(c=Ui(a.Fa,a.La++)))){d=a.Fa;break}a.Fa=a.na.seek(a.nb,a.Ha,a.Xa);if(!a.Fa){a.Va=1088;break}a.La=0;this.Rf(a)}while(1)}b(c,!1,d,e)};k.Db=function(a,b){if(a.Va||!a.na)return-1;do{if(a.Fa&&a.na.write(a.Fa,a.La++,b))break;a.Fa=a.na.seek(a.nb,a.Ha,a.Xa);if(!a.Fa){a.Va=8256;b=-1;break}a.La=0;this.Rf(a)}while(1);return b};
k.Rf=function(a){a.Xa++;a.Xa>=a.ug+1&&(a.Xa=1,a.Ha++,a.Ha>=a.tg&&(a.Ha=0,a.nb++))};k.lk=function(a,b){if(a.Va)return-1;a.Bc[a.jf++]=b;if(a.jf==a.Bc.length){a.nb=a.Bc[0];a.Ha=a.Bc[1];a.Xa=a.Bc[2];a.kb=128<<a.Bc[3];for(var c=a.jf=0;c<a.kb;c++)if(0>this.Db(a,a.Ak))return-1;a.jh++}a.jh>=a.Nd&&(b=-1);return b};var Zi={1012:Vi.prototype.Pn,1013:Vi.prototype.Nn,1015:Vi.prototype.On},$i={1010:Vi.prototype.dp,1013:Vi.prototype.cp,1015:Vi.prototype.bp};
za(function(){for(var a=Ra(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new Vi(d);Qa(d,c)}});function Z(a){n.call(this,"HDC",a,Z);this.dmaRead=this.Fi;this.dmaWrite=this.Gi;this.dmaWriteBuffer=this.bn;this.dmaWriteFormat=this.cn;this.ki=[];if(a.drives)try{this.ki=eval("("+a.drives+")")}catch(b){m("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.kg=(this.De="at"==a.type)?1:0;this.tn=this.De?2:3}La(n,Z);
var gj=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];k=Z.prototype;k.Cb=function(){return!1};k.yc=function(a,b,c,d){this.ga=b;this.S=c;this.Ua=d;this.wa=a;this.aa=bb(a,"ChipSet");Kb(b,this,this.De?hj:ij);Mb(b,this,this.De?jj:kj);Od(c,19,this,this.so);Od(c,64,this,this.to);this.reset();this.Sf()||p(this)};
k.Zb=function(a,b){if(!b)if(!a||!this.restore)this.yd(),this.wa.Qi&&this.Sf(!0);else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.rf=function(){return this.wa?this.wa.rf():""};k.Yd=function(){return this.wa?this.wa.Yd():""};k.reset=function(){this.yd(null,!0)};k.save=function(){var a=new Rd(this);a.set(0,this.fk());return a.data()};k.restore=function(a){return this.yd(a[0])};
k.yd=function(a,b){var c=0,d=!0;if(this.De)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.he=a[c++],this.Am=a[c++],this.je=a[c++],this.Zh=a[c++],this.Xh=a[c++],this.Wh=a[c++],this.Bf=a[c++],this.oa=a[c++],this.ck=a[c++],this.Yh=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.Fg=a[c++];this.oa=a[c++];this.bc=a[c++];this.sb=a[c++];this.bb=a[c++];this.zm=a[c++];this.ym=a[c++];this.xm=a[c++];var e=a[c++];void 0!==e?this.tf=e:void 0===this.tf&&(this.tf=-1)}void 0===this.ua&&(this.ua=Array(this.ki.length));
c=a[c];void 0===c&&(c=[]);for(e=0;e<this.ua.length;e++){void 0===this.ua[e]&&(this.ua[e]={});var f=this.ua[e];this.$i(e,f,this.ki[e],c[e],b)||(d=!1);null!=this.Fg&&1>=e&&(this.Fg|=(f.type&3)<<(1-e<<1))}return d};
k.fk=function(){var a=0,b=[];this.De?(b[a++]=this.he,b[a++]=this.Am,b[a++]=this.je,b[a++]=this.Zh,b[a++]=this.Xh,b[a++]=this.Wh,b[a++]=this.Bf,b[a++]=this.oa,b[a++]=this.ck,b[a++]=this.Yh):(b[a++]=this.Fg,b[a++]=this.oa,b[a++]=this.bc,b[a++]=this.sb,b[a++]=this.bb,b[a++]=this.zm,b[a++]=this.ym,b[a++]=this.xm,b[a++]=this.tf);b[a]=this.hk();return b};
k.$i=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Za=a;b.errorCode=d[f++];b.Fm=d[f++];b.pf=d[f++];b.bf=d[f++];b.cf=d[f++];b.Ha=d[f++];b.mb=d[f++];b.ne=d[f++];b.Xa=d[f++];b.Nd=d[f++];b.kb=d[f++];b.gh=this.De?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.Yd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===fj[this.kg][b.type])b.type=this.tn;c=fj[this.kg][b.type];
b.pb=c[2]||17;b.$a=c[3]||512;if(e&&this.aa&&(e=this.aa,c=b.type,e.Z)){var h=e.Z[18],h=a?h&240|c:h&15|c<<4;e.Z&&(e.Z[18]=h,pg(e))}void 0===b.na&&(b.na=null,this.sa("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));kj(this,b);b.La=d[f++];b.Fa=null;b.na&&(a=d[f],void 0!==a&&0>b.na.restore(a)&&(g=!1),g&&void 0!==b.La&&(b.Fa=b.na.seek(b.ne,b.Ha,b.Xa+b.gh)));return g};k.hk=function(){for(var a=0,b=[],c=0;c<this.ua.length;c++)b[a++]=this.gk(this.ua[c]);return b};
k.$i=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Za=a;b.errorCode=d[f++];b.Fm=d[f++];b.pf=d[f++];b.bf=d[f++];b.cf=d[f++];b.Ha=d[f++];b.mb=d[f++];b.ne=d[f++];b.Xa=d[f++];b.Nd=d[f++];b.kb=d[f++];b.gh=this.De?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.Yd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===gj[this.kg][b.type])b.type=this.tn;c=gj[this.kg][b.type];
b.pb=c[2]||17;b.$a=c[3]||512;if(e&&this.aa&&(e=this.aa,c=b.type,e.Z)){var h=e.Z[18],h=a?h&240|c:h&15|c<<4;e.Z&&(e.Z[18]=h,qg(e))}void 0===b.na&&(b.na=null,this.sa("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));lj(this,b);b.La=d[f++];b.Fa=null;b.na&&(a=d[f],void 0!==a&&0>b.na.restore(a)&&(g=!1),g&&void 0!==b.La&&(b.Fa=b.na.seek(b.ne,b.Ha,b.Xa+b.gh)));return g};k.hk=function(){for(var a=0,b=[],c=0;c<this.ua.length;c++)b[a++]=this.gk(this.ua[c]);return b};
k.gk=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.Fm;c[b++]=a.pf;c[b++]=a.bf;c[b++]=a.cf;c[b++]=a.Ha;c[b++]=a.mb;c[b++]=a.ne;c[b++]=a.Xa;c[b++]=a.Nd;c[b++]=a.kb;c[b++]=a.La;c[b]=a.na?a.na.save():null;return c};
function kj(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.bf[2])?e=b.bf[0]<<8|b.bf[1]:c=b.type);null==c||d||(d=fj[a.kg][c][1],e=fj[a.kg][c][0]);d&&((c=fj[a.kg][b.type])&&e!=c[0]&&d!=c[1]&&a.sa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.lb=e,b.mb=d,null==b.na&&(b.na=new Ki(a,b,b.mode)))}}
k.Sf=function(a){a||(this.ve=0);for(var b=0;b<this.ua.length;b++){var c=this.ua[b];if(c.name&&c.path){if(!(a&&c.na&&c.na.vh)){var d;d=c.name;var c=c.path,e=this.ua[b];e.Gc?(this.sa("Drive "+b+" busy"),d=!0):(e.Gc=!0,e.Ee=!0,this.ve++,(e.na||new Ki(this,e,e.mode)).load(d,c,null,this.en),d=!1);!d&&a&&p(this,!1)}}else a&&void 0!==c.type&&(c.na=null,kj(this,c,c.type))}return!!this.ve};
k.en=function(a,b,c){a.Gc=!1;(a.na=b)&&this.sa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Za),a.Ee);a.Ee&&(a.Ee=!1,--this.ve||p(this))};k.qo=function(){var a=0;this.sb<this.bb&&(a=this.bc[this.sb]);this.aa&&Vg(this.aa,5);this.oa&=-33;++this.sb>=this.bb&&(this.sb=this.bb=0,this.oa&=-15);return a};k.zp=function(a,b){this.bb<this.bc.length&&(this.bc[this.bb++]=b);var c=12!=this.bc[0]?6:this.bc.length;6==this.bb&&(this.oa&=-2);this.bb>=c&&(this.oa|=2,this.oa&=-2,lj(this))};
k.ro=function(){var a=this.oa;this.sb<this.bb&&(this.oa|=1);return a};k.Cp=function(a,b){this.zm=b;this.aa&&Vg(this.aa,5);this.yd()};k.po=function(){return this.Fg};k.Bp=function(a,b){this.ym=b;this.oa=13};k.Ap=function(a,b){this.xm=b};k.Yj=function(){};
k.An=function(){var a=-1;if(this.Ka){var b=this,a=this.Ab(this.Ka,function(){});1!=this.Ka.La&&this.Ka.La==this.Ka.$a&&(this.Ka.kb-=this.Ka.$a,this.je=this.je-1&255,this.Ka.kb>=this.Ka.$a?(b.oa=136,this.Ab(this.Ka,function(a){0<=a?(mj(b),b.oa=80):(b.oa=1,b.he=16)},!1)):this.oa=80)}return a};
k.Oo=function(a,b){this.Ka&&this.Ka.kb>=this.Ka.$a&&(0>this.Db(this.Ka,b)?(this.oa=1,this.he=16):1!=this.Ka.La&&this.Ka.La==this.Ka.$a&&(this.Ka.kb-=this.Ka.$a,this.je=this.je-1&255,mj(this),this.oa=80,this.Ka.kb>=this.Ka.$a&&(this.oa|=8)))};k.Cn=function(){return this.he};k.To=function(a,b){this.Am=b};k.Dn=function(){return this.je};k.Ro=function(a,b){this.je=b};k.En=function(){return this.Zh};k.So=function(a,b){this.Zh=b};k.zn=function(){return this.Xh};k.No=function(a,b){this.Xh=b};k.yn=function(){return this.Wh};
k.Mo=function(a,b){this.Wh=b};k.Bn=function(){return this.Bf};k.Po=function(a,b){this.Bf=b;this.oa=this.ua[this.Bf&16?1:0]?this.oa|64:this.oa&-65};k.Fn=function(){return this.oa};k.Lo=function(a,b){this.ck=b;this.aa&&Vg(this.aa,14);nj(this)};k.Qo=function(a,b){this.Yh&4&&!(b&4)&&(this.he=1);this.Yh=b};
function nj(a){var b=!1,c=a.ck,d=a.Bf&16?1:0,e=a.Bf&15,f=a.Xh|(a.Wh&3)<<8,g=a.Zh,h=a.je||256;a.Ka=null;a.he=0;a.oa=80;(d=a.ua[d])?(d.ne=f,d.Ha=e,d.Xa=g,d.kb=h*d.$a,c=144<=c?c:c&240,d.Fa=null,d.La=0,d.errorCode=0,a.Ka=d):c=-1;switch(c&240){case 32:a.oa=136;a.Ab(d,function(b){0<=b&&a.aa?(mj(a),a.oa=80):(a.oa=1,a.he=16)},!1);break;case 48:a.oa=8;break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.he=1;b=!0;break;case 145:d.mb=e+1,d.pb=h,b=!0}b&&mj(a)}
function mj(a){!a.aa||a.Yh&2||Ug(a.aa,14,120)}
function lj(a){a.sb=0;var b=a.Ea(),c=a.Ea(),d=c&32,e=d>>5,f=c&31,g=a.Ea(),h=a.Ea(),r=g<<2&768|h,t=g&63,C=a.Ea(),J=a.Ea(),I=a.ua[e];I&&(I.ne=r,I.Ha=f,I.Xa=t,I.kb=C*I.$a);switch(b){case 3:a.Mb(I?I.errorCode:4);a.ac(c);a.ac(g);a.ac(h);a.ac(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ea());)I&&c<I.bf.length&&(I.bf[c++]=b);I&&kj(a,I);b=0;I||a.tf!=e||(a.tf=-1,b=2);a.Mb(b|d);b=-1;break;case 224:case 228:a.Mb(0|d),b=-1}if(0<=b)switch(void 0===I?b=-1:(I.errorCode=0,I.Fm=0),b){case 0:a.Mb(0|d);break;case 1:I.Lq=
J;a.Mb(0|d);break;case 5:a.Mb(0|d);break;case 8:oj(a,I,function(b){a.Mb(b|d)});break;case 10:pj(a,I,function(b){a.Mb(b|d)});break;case 15:sj(a,I,function(b){a.Mb(b|d)});break;default:a.Mb(2|d)}}k.Ea=function(){var a=-1;this.sb<this.bb&&(a=this.bc[this.sb++]);return a};k.Mb=function(a){this.sb=this.bb=0;void 0!==a&&this.ac(a);this.aa&&Ug(this.aa,5);this.oa|=32};k.ac=function(a){this.bc[this.bb++]=a};k.Fi=function(a,b,c){void 0===b||0>b?this.Ab(a,c):c(-1,!1)};
k.Gi=function(a,b){return void 0!==b&&0<=b?this.Db(a,b):-1};k.bn=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.La<a.cf.length?a.cf[a.La++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.cn=function(a,b){return void 0!==b&&0<=b?this.lk(a,b):-1};function oj(a,b,c){b.errorCode=4;if(b.na&&(b.Fa=null,a.aa)){b.errorCode=0;Og(a.aa,3,a,"dmaRead",b);Gg(a.aa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}
function pj(a,b,c){b.errorCode=4;if(b.na&&(b.Fa=null,a.aa)){b.errorCode=0;Og(a.aa,3,a,"dmaWrite",b);Gg(a.aa,3,function(a){a||(0==b.errorCode&&(b.errorCode=4),20==b.errorCode&&(b.errorCode=0));c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function sj(a,b,c){b.errorCode=4;b.cf&&b.cf.length==b.kb||(b.cf=Array(b.kb));b.La=0;a.aa?(b.errorCode=0,Og(a.aa,3,a,"dmaWriteBuffer",b),Gg(a.aa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.Ab=function(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.Fa&&(f=a.La,d=Ti(a.Fa,a.La),a.La+=g,0<=d))return e=a.Fa,b&&b(d,!1,e,f),d;if(b){var h=this;if(a.na)return a.na.seek(a.ne,a.Ha,a.Xa+a.gh,!1,function(c,t){(a.Fa=c)?(e=c,f=a.La=0,h.Rf(a),d=Ti(a.Fa,a.La),a.La+=g):a.errorCode=20;b(d,t,e,f)}),d;a.errorCode=20;b(d,!1,e,f)}return d};
function lj(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.bf[2])?e=b.bf[0]<<8|b.bf[1]:c=b.type);null==c||d||(d=gj[a.kg][c][1],e=gj[a.kg][c][0]);d&&((c=gj[a.kg][b.type])&&e!=c[0]&&d!=c[1]&&a.sa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.lb=e,b.mb=d,null==b.na&&(b.na=new Li(a,b,b.mode)))}}
k.Sf=function(a){a||(this.ve=0);for(var b=0;b<this.ua.length;b++){var c=this.ua[b];if(c.name&&c.path){if(!(a&&c.na&&c.na.vh)){var d;d=c.name;var c=c.path,e=this.ua[b];e.Gc?(this.sa("Drive "+b+" busy"),d=!0):(e.Gc=!0,e.Ee=!0,this.ve++,(e.na||new Li(this,e,e.mode)).load(d,c,null,this.en),d=!1);!d&&a&&p(this,!1)}}else a&&void 0!==c.type&&(c.na=null,lj(this,c,c.type))}return!!this.ve};
k.en=function(a,b,c){a.Gc=!1;(a.na=b)&&this.sa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Za),a.Ee);a.Ee&&(a.Ee=!1,--this.ve||p(this))};k.qo=function(){var a=0;this.sb<this.bb&&(a=this.bc[this.sb]);this.aa&&Wg(this.aa,5);this.oa&=-33;++this.sb>=this.bb&&(this.sb=this.bb=0,this.oa&=-15);return a};k.zp=function(a,b){this.bb<this.bc.length&&(this.bc[this.bb++]=b);var c=12!=this.bc[0]?6:this.bc.length;6==this.bb&&(this.oa&=-2);this.bb>=c&&(this.oa|=2,this.oa&=-2,mj(this))};
k.ro=function(){var a=this.oa;this.sb<this.bb&&(this.oa|=1);return a};k.Cp=function(a,b){this.zm=b;this.aa&&Wg(this.aa,5);this.yd()};k.po=function(){return this.Fg};k.Bp=function(a,b){this.ym=b;this.oa=13};k.Ap=function(a,b){this.xm=b};k.Yj=function(){};
k.An=function(){var a=-1;if(this.Ka){var b=this,a=this.Ab(this.Ka,function(){});1!=this.Ka.La&&this.Ka.La==this.Ka.$a&&(this.Ka.kb-=this.Ka.$a,this.je=this.je-1&255,this.Ka.kb>=this.Ka.$a?(b.oa=136,this.Ab(this.Ka,function(a){0<=a?(nj(b),b.oa=80):(b.oa=1,b.he=16)},!1)):this.oa=80)}return a};
k.Oo=function(a,b){this.Ka&&this.Ka.kb>=this.Ka.$a&&(0>this.Db(this.Ka,b)?(this.oa=1,this.he=16):1!=this.Ka.La&&this.Ka.La==this.Ka.$a&&(this.Ka.kb-=this.Ka.$a,this.je=this.je-1&255,nj(this),this.oa=80,this.Ka.kb>=this.Ka.$a&&(this.oa|=8)))};k.Cn=function(){return this.he};k.To=function(a,b){this.Am=b};k.Dn=function(){return this.je};k.Ro=function(a,b){this.je=b};k.En=function(){return this.Zh};k.So=function(a,b){this.Zh=b};k.zn=function(){return this.Xh};k.No=function(a,b){this.Xh=b};k.yn=function(){return this.Wh};
k.Mo=function(a,b){this.Wh=b};k.Bn=function(){return this.Bf};k.Po=function(a,b){this.Bf=b;this.oa=this.ua[this.Bf&16?1:0]?this.oa|64:this.oa&-65};k.Fn=function(){return this.oa};k.Lo=function(a,b){this.ck=b;this.aa&&Wg(this.aa,14);oj(this)};k.Qo=function(a,b){this.Yh&4&&!(b&4)&&(this.he=1);this.Yh=b};
function oj(a){var b=!1,c=a.ck,d=a.Bf&16?1:0,e=a.Bf&15,f=a.Xh|(a.Wh&3)<<8,g=a.Zh,h=a.je||256;a.Ka=null;a.he=0;a.oa=80;(d=a.ua[d])?(d.ne=f,d.Ha=e,d.Xa=g,d.kb=h*d.$a,c=144<=c?c:c&240,d.Fa=null,d.La=0,d.errorCode=0,a.Ka=d):c=-1;switch(c&240){case 32:a.oa=136;a.Ab(d,function(b){0<=b&&a.aa?(nj(a),a.oa=80):(a.oa=1,a.he=16)},!1);break;case 48:a.oa=8;break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.he=1;b=!0;break;case 145:d.mb=e+1,d.pb=h,b=!0}b&&nj(a)}
function nj(a){!a.aa||a.Yh&2||Vg(a.aa,14,120)}
function mj(a){a.sb=0;var b=a.Ea(),c=a.Ea(),d=c&32,e=d>>5,f=c&31,g=a.Ea(),h=a.Ea(),r=g<<2&768|h,t=g&63,C=a.Ea(),J=a.Ea(),I=a.ua[e];I&&(I.ne=r,I.Ha=f,I.Xa=t,I.kb=C*I.$a);switch(b){case 3:a.Mb(I?I.errorCode:4);a.ac(c);a.ac(g);a.ac(h);a.ac(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ea());)I&&c<I.bf.length&&(I.bf[c++]=b);I&&lj(a,I);b=0;I||a.tf!=e||(a.tf=-1,b=2);a.Mb(b|d);b=-1;break;case 224:case 228:a.Mb(0|d),b=-1}if(0<=b)switch(void 0===I?b=-1:(I.errorCode=0,I.Fm=0),b){case 0:a.Mb(0|d);break;case 1:I.Lq=
J;a.Mb(0|d);break;case 5:a.Mb(0|d);break;case 8:pj(a,I,function(b){a.Mb(b|d)});break;case 10:qj(a,I,function(b){a.Mb(b|d)});break;case 15:tj(a,I,function(b){a.Mb(b|d)});break;default:a.Mb(2|d)}}k.Ea=function(){var a=-1;this.sb<this.bb&&(a=this.bc[this.sb++]);return a};k.Mb=function(a){this.sb=this.bb=0;void 0!==a&&this.ac(a);this.aa&&Vg(this.aa,5);this.oa|=32};k.ac=function(a){this.bc[this.bb++]=a};k.Fi=function(a,b,c){void 0===b||0>b?this.Ab(a,c):c(-1,!1)};
k.Gi=function(a,b){return void 0!==b&&0<=b?this.Db(a,b):-1};k.bn=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.La<a.cf.length?a.cf[a.La++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.cn=function(a,b){return void 0!==b&&0<=b?this.lk(a,b):-1};function pj(a,b,c){b.errorCode=4;if(b.na&&(b.Fa=null,a.aa)){b.errorCode=0;Pg(a.aa,3,a,"dmaRead",b);Hg(a.aa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}
function qj(a,b,c){b.errorCode=4;if(b.na&&(b.Fa=null,a.aa)){b.errorCode=0;Pg(a.aa,3,a,"dmaWrite",b);Hg(a.aa,3,function(a){a||(0==b.errorCode&&(b.errorCode=4),20==b.errorCode&&(b.errorCode=0));c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function tj(a,b,c){b.errorCode=4;b.cf&&b.cf.length==b.kb||(b.cf=Array(b.kb));b.La=0;a.aa?(b.errorCode=0,Pg(a.aa,3,a,"dmaWriteBuffer",b),Hg(a.aa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.Ab=function(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.Fa&&(f=a.La,d=Ui(a.Fa,a.La),a.La+=g,0<=d))return e=a.Fa,b&&b(d,!1,e,f),d;if(b){var h=this;if(a.na)return a.na.seek(a.ne,a.Ha,a.Xa+a.gh,!1,function(c,t){(a.Fa=c)?(e=c,f=a.La=0,h.Rf(a),d=Ui(a.Fa,a.La),a.La+=g):a.errorCode=20;b(d,t,e,f)}),d;a.errorCode=20;b(d,!1,e,f)}return d};
k.Db=function(a,b){if(a.errorCode)return-1;do{if(a.Fa&&a.na.write(a.Fa,a.La++,b))break;a.na&&a.na.seek(a.ne,a.Ha,a.Xa+a.gh,!0,function(b){a.Fa=b});if(!a.Fa){a.errorCode=20;b=-1;break}a.La=0;this.Rf(a)}while(1);return b};k.Rf=function(a){a.Xa++;var b=1-a.gh;a.Xa>=a.pb+b&&(a.Xa=b,a.Ha++,a.Ha>=a.mb&&(a.Ha=0,a.ne++))};
k.lk=function(a,b){if(a.errorCode)return-1;a.Bc[a.jf++]=b;if(a.jf==a.Bc.length){a.ne=a.Bc[0];a.Ha=a.Bc[1];a.Xa=a.Bc[2];a.kb=128<<a.Bc[3];for(var c=a.jf=0;c<a.kb;c++)if(0>this.Db(a,a.Ak))return-1;a.jh++}a.jh>=a.Nd&&(b=-1);return b};k.so=function(){var a=this.S.J&255;!(this.S.G>>8)&&128<a&&(this.tf=a-128);return!0};k.to=function(){var a;(a=this.S.G>>8||!this.aa)||(a=!(this.aa.Tb[0].ad&64));return a?!0:!1};
var hj={800:Z.prototype.qo,801:Z.prototype.ro,802:Z.prototype.po},gj={496:Z.prototype.An,497:Z.prototype.Cn,498:Z.prototype.Dn,499:Z.prototype.En,500:Z.prototype.zn,501:Z.prototype.yn,502:Z.prototype.Bn,503:Z.prototype.Fn},jj={800:Z.prototype.zp,801:Z.prototype.Cp,802:Z.prototype.Bp,803:Z.prototype.Ap,807:Z.prototype.Yj,811:Z.prototype.Yj,815:Z.prototype.Yj},ij={496:Z.prototype.Oo,497:Z.prototype.To,498:Z.prototype.Ro,499:Z.prototype.So,500:Z.prototype.No,501:Z.prototype.Mo,502:Z.prototype.Po,503:Z.prototype.Lo,
1014:Z.prototype.Qo};za(function(){for(var a=Ra(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new Z(d);Qa(d,c)}});function Rd(a,b,c){this.id=a.id;this.key=tj(a,b,c);this.Ua=a.Ua;uj(this,a.Dp)}function tj(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
var ij={800:Z.prototype.qo,801:Z.prototype.ro,802:Z.prototype.po},hj={496:Z.prototype.An,497:Z.prototype.Cn,498:Z.prototype.Dn,499:Z.prototype.En,500:Z.prototype.zn,501:Z.prototype.yn,502:Z.prototype.Bn,503:Z.prototype.Fn},kj={800:Z.prototype.zp,801:Z.prototype.Cp,802:Z.prototype.Bp,803:Z.prototype.Ap,807:Z.prototype.Yj,811:Z.prototype.Yj,815:Z.prototype.Yj},jj={496:Z.prototype.Oo,497:Z.prototype.To,498:Z.prototype.Ro,499:Z.prototype.So,500:Z.prototype.No,501:Z.prototype.Mo,502:Z.prototype.Po,503:Z.prototype.Lo,
1014:Z.prototype.Qo};za(function(){for(var a=Ra(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=Pa(c),d=new Z(d);Qa(d,c)}});function Rd(a,b,c){this.id=a.id;this.key=uj(a,b,c);this.Ua=a.Ua;vj(this,a.Dp)}function uj(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
Rd.prototype={constructor:Rd,set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.Pi=!0):this.Pi?!0:ra()&&(a=sa(this.key))?(this[this.id]=a,this.Pi=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){m(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"==typeof a?
a:JSON.stringify(a)},clear:function(a){uj(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c,1);c=0}},$b:function(){}};function uj(a,b){a[a.id]={};b&&a.set("parms",b);a.Pi=!1}
function vj(a){var b=!0;if(ra()){var c=JSON.stringify(a[a.id]);ta(a.key,c)||(m("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
function wj(a,b,c){n.call(this,"Computer",a,wj);this.ba.Wb=!1;this.xf=a.buswidth;this.Kc=xj;this.Jg=null;this.xh=!1;this.url=b?b.url:null;this.Jp=(Math.random()+.1).toString(36).substr(2,12);this.Lc=yj(this);if(this.S=Oa("CPU",this.id)){this.Ua=Oa("Debugger",this.id);this.ga=new xb({id:this.el+".bus",buswidth:this.xf},this.S,this.Ua);var d,e=Ma(this.id);if((this.Cd=Oa("Panel",this.id))&&this.Cd.Bi)for(b=0;b<e.length;b++)d=e[b],d.sa=this.Cd.sa,d.jc=this.Cd.jc,d.Bi=this.Cd.Bi;for(b=0;b<e.length;b++)d=
e[b],d.yc&&d.yc(this,this.ga,this.S,this.Ua);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.bi=d:this.Kc=parseInt(d,10));var f;if(a=Fa&&Fa.state||(f=!0,a.state))b=this.Dm=a,f||(this.xh=!0,this.Kc=xj),this.Kc&&(this.ei=new Rd(this,"1.17.4"),this.ei.load()?b=null:delete this.ei);!b&&this.Kc&&(f=null,this.Lc&&(f=oa()+"/api/v1/user?req=load&user="+this.Lc+"&state="+tj(this,"1.17.4")),b=f)&&(this.xh=!0);b?na(b,!0,null,this,this.Go):p(this);c||zj(this,this.Vh)}else m("Unable to find CPU component")}
La(n,wj);var xj=0;k=wj.prototype;k.rf=function(){return this.Jp};k.Yd=function(){return this.Lc?this.Lc:""};k.Go=function(a,b,c){c?(this.bi=null,this.xh=!1,this.sa("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Jg=b;p(this)};function zj(a,b,c){for(var d=Ma(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ta(f)){Ta(f,function(){zj(a,b,c)});return}}b.call(a,c)}
function Aj(a,b){var c=new Rd(a,"1.17.4","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.sa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.Vh=function(a){void 0===a&&(a=this.Kc||(this.Jg?1:xj));var b=!1,c=!1;this.Tk=!1;var d=this.ei||new Rd(this,"1.17.4");if(-1==a)b=!0;else if(a>xj){if(d.load(this.Jg)){this.Se=new Rd(this,"1.17.4","failsafe");this.Se.load()&&(Bj(this,d),a=2,uj(this.Se));this.Se.set("timestamp",la());vj(this.Se);var e=this.Kc&&!this.xh;if(1==a||pa("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
f&&"no machine state"!=g?(this.sa("Error: "+g),"unable to verify user"==g&&(ta("user",""),this.Lc=null)):this.jc(f+": "+g),uj(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Aj(this,c?d:null)}else 2==a&&d.clear()}else Aj(this);delete this.Jg;delete this.ei}e=Ma(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.S&&(c=Cj(this,g,d,b,c));b=[d,a,c];-1!=a?zj(this,this.Mk,b):this.Mk(b)};
function Cj(a,b,c,d,e){if(!b.ba.Wb){b.ba.Wb=!0;if(b.Zb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.Zb(f,d)&&f&&(m("Unable to restore state for "+b.type),a.Dm&&!a.Jg?(c.clear(),a.Kc=xj,window&&window.location.reload()):a.Tk=!0,b.Zb(null),e=!1)}if(!d&&b.ag)for(a=b.ag.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.Mk=function(a){var b=a[0],c=0>a[1];a=a[2];this.ba.Wb=!0;this.Qk||(this.jc("PCjs v1.17.4\nCopyright \u00a9 2012-2015 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Qk=!0);this.S&&(Cj(this,this.S,b,c,a),rc(this.S));this.Tk&&(Bj(this,b),b.clear());!c&&this.Se&&(this.Se.clear(),delete this.Se)};
function Bj(a,b){if(pa("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.Yd(),d=b.toString(),e={app:"PCjs",ver:"1.17.4"};e.url=a.url;e.user=c;e.type="bug";e.data=d;na("http://www.pcjs.org/api/v1/report",!0,e)}}
function Dj(a,b,c){var d,e="none",f=new Rd(a,"1.17.4"),g=new Rd(a,"1.17.4","validate"),h=la();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.17.4");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.S&&a.S.Yb&&(c&&uc(a.S),d=a.S.Yb(b,c),"object"===typeof d&&f.set(a.S.id,d),c&&(a.S.ba.Wb=!1,!1===d&&(e=null)));for(var h=Ma(a.id),r=0;r<h.length;r++){var t=h[r];t.ba.Wb&&(t.Yb&&(d=t.Yb(b,c),"object"===typeof d&&f.set(t.id,d)),c&&(t.ba.Wb=
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.Lc&&Ej(a,a.Lc,f.toString()),vj(g)&&vj(f)||(e=null,d=h=!0)):a.Kc&&(d=!0,h=3==a.Kc),d&&f.clear(h)):e=f.toString());c&&(a.ba.Wb=!1);return e}k.reset=function(){this.ga&&this.ga.reset&&(this.$b("Resetting "+this.ga.type),this.ga.reset());for(var a=Ma(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ga&&c.reset&&(this.$b("Resetting "+c.type),c.reset())}};
a:JSON.stringify(a)},clear:function(a){vj(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c,1);c=0}},$b:function(){}};function vj(a,b){a[a.id]={};b&&a.set("parms",b);a.Pi=!1}
function wj(a){var b=!0;if(ra()){var c=JSON.stringify(a[a.id]);ta(a.key,c)||(m("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
function xj(a,b,c){n.call(this,"Computer",a,xj);this.ba.Wb=!1;this.xf=a.buswidth;this.Kc=yj;this.Jg=null;this.xh=!1;this.url=b?b.url:null;this.Jp=(Math.random()+.1).toString(36).substr(2,12);this.Lc=zj(this);if(this.S=Oa("CPU",this.id)){this.Ua=Oa("Debugger",this.id);this.ga=new xb({id:this.el+".bus",buswidth:this.xf},this.S,this.Ua);var d,e=Ma(this.id);if((this.Cd=Oa("Panel",this.id))&&this.Cd.Bi)for(b=0;b<e.length;b++)d=e[b],d.sa=this.Cd.sa,d.jc=this.Cd.jc,d.Bi=this.Cd.Bi;for(b=0;b<e.length;b++)d=
e[b],d.yc&&d.yc(this,this.ga,this.S,this.Ua);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.bi=d:this.Kc=parseInt(d,10));var f;if(a=Fa&&Fa.state||(f=!0,a.state))b=this.Dm=a,f||(this.xh=!0,this.Kc=yj),this.Kc&&(this.ei=new Rd(this,"1.17.5"),this.ei.load()?b=null:delete this.ei);!b&&this.Kc&&(f=null,this.Lc&&(f=oa()+"/api/v1/user?req=load&user="+this.Lc+"&state="+uj(this,"1.17.5")),b=f)&&(this.xh=!0);b?na(b,!0,null,this,this.Go):p(this);c||Aj(this,this.Vh)}else m("Unable to find CPU component")}
La(n,xj);var yj=0;k=xj.prototype;k.rf=function(){return this.Jp};k.Yd=function(){return this.Lc?this.Lc:""};k.Go=function(a,b,c){c?(this.bi=null,this.xh=!1,this.sa("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Jg=b;p(this)};function Aj(a,b,c){for(var d=Ma(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ta(f)){Ta(f,function(){Aj(a,b,c)});return}}b.call(a,c)}
function Bj(a,b){var c=new Rd(a,"1.17.5","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.sa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.Vh=function(a){void 0===a&&(a=this.Kc||(this.Jg?1:yj));var b=!1,c=!1;this.Tk=!1;var d=this.ei||new Rd(this,"1.17.5");if(-1==a)b=!0;else if(a>yj){if(d.load(this.Jg)){this.Se=new Rd(this,"1.17.5","failsafe");this.Se.load()&&(Cj(this,d),a=2,vj(this.Se));this.Se.set("timestamp",la());wj(this.Se);var e=this.Kc&&!this.xh;if(1==a||pa("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
f&&"no machine state"!=g?(this.sa("Error: "+g),"unable to verify user"==g&&(ta("user",""),this.Lc=null)):this.jc(f+": "+g),vj(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Bj(this,c?d:null)}else 2==a&&d.clear()}else Bj(this);delete this.Jg;delete this.ei}e=Ma(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.S&&(c=Dj(this,g,d,b,c));b=[d,a,c];-1!=a?Aj(this,this.Mk,b):this.Mk(b)};
function Dj(a,b,c,d,e){if(!b.ba.Wb){b.ba.Wb=!0;if(b.Zb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.Zb(f,d)&&f&&(m("Unable to restore state for "+b.type),a.Dm&&!a.Jg?(c.clear(),a.Kc=yj,window&&window.location.reload()):a.Tk=!0,b.Zb(null),e=!1)}if(!d&&b.ag)for(a=b.ag.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.Mk=function(a){var b=a[0],c=0>a[1];a=a[2];this.ba.Wb=!0;this.Qk||(this.jc("PCjs v1.17.5\nCopyright \u00a9 2012-2015 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Qk=!0);this.S&&(Dj(this,this.S,b,c,a),rc(this.S));this.Tk&&(Cj(this,b),b.clear());!c&&this.Se&&(this.Se.clear(),delete this.Se)};
function Cj(a,b){if(pa("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.Yd(),d=b.toString(),e={app:"PCjs",ver:"1.17.5"};e.url=a.url;e.user=c;e.type="bug";e.data=d;na("http://www.pcjs.org/api/v1/report",!0,e)}}
function Ej(a,b,c){var d,e="none",f=new Rd(a,"1.17.5"),g=new Rd(a,"1.17.5","validate"),h=la();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.17.5");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.S&&a.S.Yb&&(c&&uc(a.S),d=a.S.Yb(b,c),"object"===typeof d&&f.set(a.S.id,d),c&&(a.S.ba.Wb=!1,!1===d&&(e=null)));for(var h=Ma(a.id),r=0;r<h.length;r++){var t=h[r];t.ba.Wb&&(t.Yb&&(d=t.Yb(b,c),"object"===typeof d&&f.set(t.id,d)),c&&(t.ba.Wb=
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.Lc&&Fj(a,a.Lc,f.toString()),wj(g)&&wj(f)||(e=null,d=h=!0)):a.Kc&&(d=!0,h=3==a.Kc),d&&f.clear(h)):e=f.toString());c&&(a.ba.Wb=!1);return e}k.reset=function(){this.ga&&this.ga.reset&&(this.$b("Resetting "+this.ga.type),this.ga.reset());for(var a=Ma(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ga&&c.reset&&(this.$b("Resetting "+c.type),c.reset())}};
k.start=function(a,b){for(var c=Ma(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};k.stop=function(a,b){for(var c=Ma(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
k.Cb=function(a,b,c){var d=this;switch(b){case "save":return this.la[b]=c,c.onclick=function(){var a=yj(d,!0);if(a){var b=!(!d.Kc||d.bi),c=Dj(d,b);b?Ej(d,a,c):d.sa("Resume disabled, machine state not saved")}},!0;case "reset":return this.la[b]=c,c.onclick=function(){vc(d)},!0}return!1};
function yj(a,b){var c=a.Lc;c||(c=sa("user"),void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email support@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Fj(a,c))||a.sa("Your user ID has not been approved."))):b&&a.sa("Browser local storage is not available"));return c}
function Fj(a,b){a.Lc=null;var c=na(oa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(ta("user",c.data),a.Lc=c.data)}catch(e){m(e.message+" ("+d+")")}return a.Lc}
function Ej(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=tj(a,"1.17.4");d.data=c;b=na(oa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.sa("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.sa(c),ta("user",""),a.Lc=null)}}
function vc(a){if(a.Kc&&!a.bi){var b=pa("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Dj(a,b,!0);!b&&a.Dm?window&&window.location.reload():(b||(a.Qi=!0),a.Vh(xj),a.Qi=!1)}else a.reset(),a.S&&rc(a.S)}function bb(a,b,c){a=Ma(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}
za(function(){for(var a=Ra(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=Pa(c),c=Ra(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=Pa(f),g=new wj(g,d,!0);Qa(g,f);zj(g,g.Vh)}});va.show.push(function(){for(var a=Ra(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=Pa(a[b]);(c=Oa("Computer",c.id))&&c.Qk&&!c.ba.Wb&&c.Vh(-1)}});
va.exit.push(function(){for(var a=Ra(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=Pa(a[b]);(c=Oa("Computer",c.id))&&c.ba.Wb&&Dj(c,!(!c.Kc||c.bi),!0)}});var Gj=0;function Hj(a,b,c,d,e,f){e("Loading "+a+"...");na(a,!0,null,null,function(g,h,r){r?(h||(h="unable to load "+a+" ("+r+")"),f(h,null)):Ij(h,a,b,c,d,e,f)})}
function Ij(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){var h=b;h&&0>h.indexOf("/")&&(h=window.location.pathname+h);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(h?" url=$2"+h+"$2":""))}h=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(J){h=
null,a=J.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,h)}}a?e?Jj(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
function Jj(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");na(e,!0,null,null,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var r=h[0],t,C=/( [a-z]+=)(['"])(.*?)\2/g;t=C.exec(f);)r=0>r.indexOf(t[1])?r.replace(">",t[0]+">"):r.replace(new RegExp(t[1]+"(['\"])(.*?)\\1"),t[0]);h[0]!=r&&(g=g.replace(h[0],r))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);Jj(a,b,c)}})}else c(a,null)}
function Kj(a,b,c,d){function e(a){if(void 0===h){var b=g&&Ra(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ja(a))}function f(a){e("Error: "+a);r&&(--Gj||Ba(!0));r=!1}var g,h,r=!0;Gj++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.17.4/components.xsl");var t=function(d,h){if(h){var r=function(d,r){if(r)if(r)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var t=h.transformNode(r);t?(g.outerHTML=t,--Gj||Ba(!0)):f("transformNodeToObject failed")}else window.document.implementation&&
window.document.implementation.createDocument?(t=new XSLTProcessor,t.importStylesheet(r),(t=t.transformToFragment(h,window.document))?g.parentNode?(g.parentNode.replaceChild(t,g),--Gj||Ba(!0)):f("invalid machine element: "+a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(d)};h?Hj(c,null,null,!1,e,r):f("failed to load XML file: "+b)}else f(d)};"<"!=b.charAt(0)?Hj(b,a,d,!0,e,t):Ij(b,null,a,d,!1,e,t)}else f("missing machine element: "+
a)}catch(C){f(C.message)}return r}window.embedPC=function(a,b,c,d){Ba(!1);return Kj(a,b,c,d)};window.enableEvents=Ba;window.sendEvent=Ca;})();
k.Cb=function(a,b,c){var d=this;switch(b){case "save":return this.la[b]=c,c.onclick=function(){var a=zj(d,!0);if(a){var b=!(!d.Kc||d.bi),c=Ej(d,b);b?Fj(d,a,c):d.sa("Resume disabled, machine state not saved")}},!0;case "reset":return this.la[b]=c,c.onclick=function(){vc(d)},!0}return!1};
function zj(a,b){var c=a.Lc;c||(c=sa("user"),void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email support@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Gj(a,c))||a.sa("Your user ID has not been approved."))):b&&a.sa("Browser local storage is not available"));return c}
function Gj(a,b){a.Lc=null;var c=na(oa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(ta("user",c.data),a.Lc=c.data)}catch(e){m(e.message+" ("+d+")")}return a.Lc}
function Fj(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=uj(a,"1.17.5");d.data=c;b=na(oa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.sa("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.sa(c),ta("user",""),a.Lc=null)}}
function vc(a){if(a.Kc&&!a.bi){var b=pa("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Ej(a,b,!0);!b&&a.Dm?window&&window.location.reload():(b||(a.Qi=!0),a.Vh(yj),a.Qi=!1)}else a.reset(),a.S&&rc(a.S)}function bb(a,b,c){a=Ma(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}
za(function(){for(var a=Ra(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=Pa(c),c=Ra(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=Pa(f),g=new xj(g,d,!0);Qa(g,f);Aj(g,g.Vh)}});va.show.push(function(){for(var a=Ra(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=Pa(a[b]);(c=Oa("Computer",c.id))&&c.Qk&&!c.ba.Wb&&c.Vh(-1)}});
va.exit.push(function(){for(var a=Ra(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=Pa(a[b]);(c=Oa("Computer",c.id))&&c.ba.Wb&&Ej(c,!(!c.Kc||c.bi),!0)}});var Hj=0;function Ij(a,b,c,d,e,f){e("Loading "+a+"...");na(a,!0,null,null,function(g,h,r){r?(h||(h="unable to load "+a+" ("+r+")"),f(h,null)):Jj(h,a,b,c,d,e,f)})}
function Jj(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){var h=b;h&&0>h.indexOf("/")&&(h=window.location.pathname+h);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(h?" url=$2"+h+"$2":""))}h=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(J){h=
null,a=J.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,h)}}a?e?Kj(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
function Kj(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");na(e,!0,null,null,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var r=h[0],t,C=/( [a-z]+=)(['"])(.*?)\2/g;t=C.exec(f);)r=0>r.indexOf(t[1])?r.replace(">",t[0]+">"):r.replace(new RegExp(t[1]+"(['\"])(.*?)\\1"),t[0]);h[0]!=r&&(g=g.replace(h[0],r))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);Kj(a,b,c)}})}else c(a,null)}
function Lj(a,b,c,d){function e(a){if(void 0===h){var b=g&&Ra(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ja(a))}function f(a){e("Error: "+a);r&&(--Hj||Ba(!0));r=!1}var g,h,r=!0;Hj++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.17.5/components.xsl");var t=function(d,h){if(h){var r=function(d,r){if(r)if(r)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var t=h.transformNode(r);t?(g.outerHTML=t,--Hj||Ba(!0)):f("transformNodeToObject failed")}else window.document.implementation&&
window.document.implementation.createDocument?(t=new XSLTProcessor,t.importStylesheet(r),(t=t.transformToFragment(h,window.document))?g.parentNode?(g.parentNode.replaceChild(t,g),--Hj||Ba(!0)):f("invalid machine element: "+a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(d)};h?Ij(c,null,null,!1,e,r):f("failed to load XML file: "+b)}else f(d)};"<"!=b.charAt(0)?Ij(b,a,d,!0,e,t):Jj(b,null,a,d,!1,e,t)}else f("missing machine element: "+
a)}catch(C){f(C.message)}return r}window.embedPC=function(a,b,c,d){Ba(!1);return Lj(a,b,c,d)};window.enableEvents=Ba;window.sendEvent=Ca;})();