Added support for keyboard lock LEDs

This commit is contained in:
Jeff Parsons 2014-11-14 18:08:45 -08:00 • committed by jeffpar
commit 501649f67b
37 changed files with 1970 additions and 1829 deletions

View file

@ -4,90 +4,90 @@ function ia(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFul
function r(a,b,c,d,e,f){b=!!b;var h=0,g=null,m=da(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(g=n.responseText,200==n.status||!n.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(h=n.status||-1),e&&(d?e.call(d,m,g,h,f):e(m,g,h,f)))});if(c){var q="",w;for(w in c)c.hasOwnProperty(w)&&(q&&(q+="&"),q+=w+"="+encodeURIComponent(c[w]));q=q.replace(/%20/g,"+");n.open("POST",a,
b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(g=n.responseText,200!=n.status&&(h=n.status||-1),e&&(d?e.call(d,m,g,h,f):e(m,g,h,f)),a=[h,g]);return a}function la(){return"http://"+(window?window.location.host:"www.pcjs.org")}function s(a){window&&window.alert(a)}function ma(a){var b=!1;window&&(b=window.confirm(a));return b}
function na(){if(void 0===ka){var a;try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"===window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}ka=a}return ka}function oa(a){var b;try{b=window.localStorage.getItem(a)}catch(c){}return b}function pa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}
function qa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var ra={init:[],show:[],exit:[]},sa=!1,ta=!0;function wa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function u(a){ra.init.push(a)}
function xa(a){if(ta)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){s("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks.")}}function ya(a){!ta&&a?(ta=!0,sa&&za("init")):ta=a}function za(a){ra[a]&&xa(ra[a])}wa("onload",function(){sa=!0;xa(ra.init)});wa("onpageshow",function(){xa(ra.show)});wa(qa("Opera")||qa("iOS")?"onunload":"onbeforeunload",function(){xa(ra.exit)});
function v(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.Bj=b.comment;this.$n=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Rj=this.id.substr(0,b),this.Vh=this.id.substr(b+1)):this.Vh=this.id;this[a]=c;this.na={Bg:!1,tc:!1,Hh:!1,Gb:!1,Oc:!1};this.Qh=null;this.na.Oc=!1;this.ra={};this.Sa=null;x[x.length]=this}var Aa=void 0,Ba={};
function qa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var ra={init:[],show:[],exit:[]},sa=!1,ta=!0;function ua(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function u(a){ra.init.push(a)}
function xa(a){if(ta)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){s("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks.")}}function ya(a){!ta&&a?(ta=!0,sa&&za("init")):ta=a}function za(a){ra[a]&&xa(ra[a])}ua("onload",function(){sa=!0;xa(ra.init)});ua("onpageshow",function(){xa(ra.show)});ua(qa("Opera")||qa("iOS")?"onunload":"onbeforeunload",function(){xa(ra.exit)});
function v(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.Bj=b.comment;this.ao=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Sj=this.id.substr(0,b),this.Wh=this.id.substr(b+1)):this.Wh=this.id;this[a]=c;this.na={Cg:!1,uc:!1,Ih:!1,Hb:!1,Pc:!1};this.Rh=null;this.na.Pc=!1;this.qa={};this.Va=null;x[x.length]=this}var Aa=void 0,Ba={};
if(window){Aa||(Aa=window.location.search.substr(1));for(var Ca,Da=/\+/g,Ea=/([^&=]+)=?([^&]*)/g;Ca=Ea.exec(Aa);)Ba[decodeURIComponent(Ca[1].replace(Da," "))]=decodeURIComponent(Ca[2].replace(Da," "))}function Fa(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function y(a,b){b.prototype=Fa(a.prototype)}var x=[];
function Ga(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<x.length;b++){var d=x[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Ha(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<x.length;c++)if(x[c].id===a)return x[c]}return null}
function Ia(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<x.length;d++)if(c)c==x[d]&&(c=null);else if(!(a!=x[d].type||b&&x[d].id.indexOf(b)))return x[d]}return null}function z(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){s(c.message+" ("+a+")")}return b}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);
function Ja(a,b){var c,d;d=A(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++){var e,f;f=d[c].childNodes;for(e=0;e<f.length;e++){var h=f[e];if(h.nodeType===window.document.ELEMENT_NODE){var g=h.getAttribute("class");if(g){var m,n;n=g.split(" ");for(m=0;m<n.length;m++)switch(g=n[m],g){case "pcjs-input":case "pcjs-output":(n=z(h))&&n.binding&&a.zb(g,n.type,n.binding,h),n=[]}}}}}}
function Ja(a,b){for(var c=A(b.parentNode,"pcjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,f=0;f<e.length;f++){var h=e[f];if(h.nodeType===window.document.ELEMENT_NODE){var g=h.getAttribute("class");if(g)for(var m=g.split(" "),n=0;n<m.length;n++)switch(g=m[n],g){case "pcjs-input":case "pcjs-output":(n=z(h))&&n.binding&&a.Bb(g,n.type,n.binding,h),n=m.length}}}}
function A(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c}
v.prototype={toString:function(){return this.name?this.name:this.id||this.type},zb:function(a,b,c,d){switch(c){case "clear":return this.ra[c]||(this.ra[c]=d,d.onclick=function(a){return function(){a.ra.print&&(a.ra.print.value="")}}(this)),!0;case "print":return this.ra[c]||(this.zh=this.ra[c]=d,d.value="",this.Zb=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.ya=
function(a,b,c){this.Zb(a,"notice",c)}),!0;default:return!1}},log:function(){},Zb:function(){},status:function(a){this.Zb(this.Vh+": "+a)},ya:function(a,b){b||s(a)},Na:function(a){this.na.Oc||(this.na.Bg=!1!==a,this.na.Bg&&(this.name&&this.log("ready"),a=this.Qh,this.Qh=null,a&&a()))},Qb:function(){return this.na.Gb=!0},Pb:function(a,b){b&&(this.na.Gb=!1);return!0}};
function Ka(a,b){if(a.na.Hh)return a.na.tc&&(a.na.tc=!1),a.na.Hh=!1;if(a.na.Oc)return a.Zb(a.toString()+" error"),!1;a.na.tc=b;return a.na.tc}function La(a,b){b&&(a.na.Bg?b():a.Qh=b);return a.na.Bg}function Ma(a,b){a.na.Oc=!0;a.ya("Fatal error: "+b)}function Na(a){v.call(this,"Panel",a,Na)}y(v,Na);Na.prototype.zb=function(a,b,c,d){return this.La&&this.La.zb(a,b,c,d)||this.la&&this.la.zb(a,b,c,d)||this.Ma&&this.Ma.zb(a,b,c,d)?!0:v.prototype.zb.call(this,a,b,c,d)};
Na.prototype.mc=function(a,b,c,d){this.La=a;this.la=c;this.Sa=d;this.Ma=C(a,"Keyboard")};Na.prototype.Qb=function(a,b){b||Oa();return!0};Na.prototype.Pb=function(){return!0};function Oa(){for(var a=!1,b=A(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=Ha(e.id);f||(a=!0,f=new Na(e));Ja(f,d);a&&f.Na()}}u(Oa);
function Pa(a,b,c){v.call(this,"Bus",a,Pa);this.la=b;this.Sa=c;this.uf=a.buswidth||20;this.ph=this.Yc=(1<<this.uf)-1;this.Ob=20>=this.uf?12:14;this.pc=1<<this.Ob;this.zj=this.pc>>2;this.kb=this.pc-1;this.pg=(this.ph+this.pc)/this.pc|0;this.Zd=this.pg-1;this.bg=[];this.cg=[];this.Xh();this.Na()}y(v,Pa);Pa.prototype.Xh=function(){this.Ba=Array(this.pg);for(var a=0;a<this.pg;a++)this.Ba[a]=new Qa(a*this.pc);this.la.Xh(this.Ba,this.ph,this.Ob,this.kb,this.Zd);this.la.Ud=this.Yc};
Pa.prototype.reset=function(){Ra(this,!0)};Pa.prototype.Qb=function(a,b){b||this.reset();return!0};function Sa(a,b,c,d,e){if(!(b&a.kb||!c||c&a.kb)){for(var f=b>>a.Ob;0<c&&f<a.Ba.length;){var h=a.Ba[f];if(void 0!==h&&h.size)return Ta(1,b,c);b=f*a.pc;a.Ba[f++]=new Qa(b,a.pc,d,e);c-=a.pc}return!0}return Ta(2,b,c)}function Ra(a,b){if(void 0!==b&&20<a.uf){var c=a.Yc&-1048577|(b?1048576:0);c!=a.Yc&&(a.Yc=c,a.la&&(a.la.Ud=c))}}
Pa.prototype.dh=function(a,b,c){if(!(a&this.kb||!b||b&this.kb)){for(var d=a>>this.Ob;0<b;){var e=this.Ba[d];if(!e.ea)return Ta(5,a,b);e.se(c);b-=this.pc;d++}return!0}return Ta(3,a,b)};function Wa(a,b,c){if(!(b&a.kb||!c||c&a.kb)){for(var d=b>>a.Ob;0<c;)b=d*a.pc,a.Ba[d++]=new Qa(b),c-=a.pc;return!0}return Ta(4,b,c)}function Xa(a,b){return a.Ba[(b&a.Yc)>>a.Ob].$i(b&a.kb)}function Ya(a,b){var c=b&a.kb,d=(b&a.Yc)>>a.Ob;return c!=a.kb?a.Ba[d].co(c):a.Ba[d++].$i(c)|a.Ba[d&a.Zd].$i(0)<<8}
function Za(a,b,c){a.Ba[(b&a.Yc)>>a.Ob].hj(b&a.kb,c&255)}function $a(a,b,c){var d=b&a.kb;b=(b&a.Yc)>>a.Ob;d!=a.kb?a.Ba[b].oo(d,c&65535):(a.Ba[b++].hj(d,c&255),a.Ba[b&a.Zd].hj(0,c>>8&255))}function ab(a){for(var b=0,c=[],d=0;d<a.pg;d++){var e=a.Ba[d];if(e.bb||e.Hj){c[b++]=d;var f=c,h=b++;a:if(e=e.save()){for(var g=0,m=0,n=[];g<e.length;){for(var q=e[g],w=g+1;w<e.length&&e[w]===q;)w++;n[m++]=w-g;n[m++]=q;g=w}if(n.length<e.length){e=n;break a}}f[h]=e}}c[b]=a.ph==a.Yc;return c}
function bb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,h=e+d,g=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=h;n++)void 0!==f.bg[n]?s("Input port "+p(n,4)+" registered by "+f.bg[n][0].id+", ignoring "+g.id):f.bg[n]=[g,m,!1,!1]}}function cb(a,b,c){var d=255;a=a.bg[b];void 0!==a&&a[1]&&(d=a[1].call(a[0],b,c));return d}
function db(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,h=e+d,g=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=h;n++)void 0!==f.cg[n]?s("Output port "+p(n,4)+" registered by "+f.cg[n][0].id+", ignoring "+g.id):f.cg[n]=[g,m,!1,!1]}}function eb(a,b,c,d){a=a.cg[b];void 0!==a&&a[1]&&a[1].call(a[0],b,c,d)}function Ta(a,b,c){s("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}
function Qa(a,b,c,d){this.yl=b||0;this.pa=null;this.offset=0;this.Kj=c;this.ea=null;this.bb=this.Hj=!1;if(b)if(d)this.ea=d,a=[d.Vd,a-d.Qa],this.pa=a[0],this.offset=a[1],this.se(d.cf);else{this.pa=Array(b>>2);for(d=0;d<this.pa.length;d++)this.pa[d]=0;this.se(fb)}else this.se()}
Qa.prototype={Wg:function(){return 0},hh:function(){},ao:function(a){return this.pa[a>>2]>>>((a&3)<<3)&255},eo:function(a){var b=a>>2;a=(a&3)<<3;var c=this.pa[b]>>>a;return 24>a?c&65535:c&255|(this.pa[b+1]&255)<<8},mo:function(a,b){var c=a>>2,d=(a&3)<<3;this.pa[c]=this.pa[c]&~(255<<d)|b<<d;this.bb=!0},po:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.pa[c]=this.pa[c]&~(65535<<d)|b<<d:(this.pa[c]=this.pa[c]&16777215|b<<24,c++,this.pa[c]=this.pa[c]&4294967040|b>>8);this.bb=!0},save:function(){return this.ea?
null:this.pa},restore:function(a){return this.ea?null==a:a&&this.yl==a.length<<2?(this.pa=a,this.bb=!0):!1},se:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.xc=c[0]?c[0]:this.Wg;this.bo=c[1]?c[1]:this.Wg;b&&(this.$i=c[0]?c[0]:this.Wg,this.co=c[1]?c[1]:this.Wg);c=a;this.Ac=c[2]&&!this.Kj?c[2]:this.hh;this.no=c[3]&&!this.Kj?c[3]:this.hh;b&&(this.hj=c[2]?c[2]:this.hh,this.oo=c[3]?c[3]:this.hh)}};var fb=[Qa.prototype.ao,Qa.prototype.eo,Qa.prototype.mo,Qa.prototype.po];
function gb(a,b){v.call(this,"CPU",a,gb);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.kd=c;this.ba.Ed=d;this.ba.Ig=Math.round(this.ba.kd/1E4)/100;this.ba.Qe=this.ba.Ig*this.ba.Ed;this.na.Gb=!1;this.na.uc=!1;this.na.Gh=a.autoStart;c=Ba.autostart;void 0!==c&&(this.na.Gh="true"==c?!0:"false"==c?!1:null);this.na.wg=!1;this.ba.Ng=this.ba.Se=0;this.ba.Og=a.csStart;this.ba.wf=a.csInterval;this.ba.xf=a.csStop;var e=this;this.dn=function(){hb(e)};this.Na()}y(v,gb);k=gb.prototype;
k.mc=function(a,b,c,d){this.qa=b;this.Sa=d;this.La=a;var e=C(a,"Video");e&&(this.rf=function(){ib(e)},this.We=function(){e.We()});this.ja=C(a,"ChipSet");this.Na()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Qb=function(a,b){if(!b){if(a&&this.restore){jb(this);if(!this.restore(a))return!1;kb(this)}else this.reset();this.Zb("No debugger detected")}this.na.Gb=!0;!lb(this)&&this.Sa&&this.Sa.Jp();this.rf();this.qf();return!0};
k.Pb=function(a){this.na.Gb=!1;return a&&this.save?this.save():!0};function lb(a){return!0===a.na.Gh||null===a.na.Gh&&void 0===a.ra.run?(hb(a),!0):!1}k.We=function(){};k.Oj=function(){return 0};function kb(a){void 0===a.ba.Og&&(a.ba.Og=0);void 0===a.ba.wf&&(a.ba.wf=-1);void 0===a.ba.xf&&(a.ba.xf=-1);a.na.wg=0<=a.ba.Og&&0<a.ba.wf;a.na.wg&&(a.ba.Ng=0,a.ba.Se=a.ba.Og-a.ne)}
function D(a,b,c,d){void 0!==a.ra[b]&&(void 0===d&&(d=4),void 0===c&&(Ma(a,"Register "+b+" is invalid"),mb(a)),c=p(c,d),a.ra[b].innerHTML!=c&&(a.ra[b].innerHTML=c))}k.qf=function(){};k.rf=function(){};
k.zb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.ra[c]=d;d.onclick=function(){e.na.uc?mb(e,!0):hb(e,!0)};a=!0;break;case "reset":this.ra[c]=d;d.onclick=function(){e.La&&nb(e.La)};a=!0;break;case "speed":this.ra[c]=d;a=!0;break;case "setSpeed":this.ra[c]=d,d.onclick=function(){ob(e,e.ba.Ed<<1,!0)},d.innerHTML=this.ba.Qe.toFixed(2)+"Mhz",a=!0}return a};function pb(a,b,c){a.ne+=b;c&&(a.Rc=a.A=0)}
function qb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.ba.Ed&&a.ba.Qc&&(d=a.ba.Qc/a.ba.Ig);a.ba.Uj=Math.round(1E3/30);a.ba.Ym=Math.floor(a.ba.kd/c*d);a.ba.di=Math.floor(a.ba.kd/30*d);a.ba.Yj=Math.floor(a.ba.kd/60*d);a.ba.Xj=Math.floor(a.ba.kd/2*d);b||(a.ba.Af=a.ba.di,a.ba.zf=a.ba.Yj,a.ba.yf=a.ba.Xj);a.ba.ei=0}function rb(a,b){var c=a.ne+a.Jd+a.Rc-a.A;b&&1<a.ba.Ed&&a.ba.Qc>a.ba.Ig&&(c=Math.round(c/a.ba.Ed));return c}function jb(a){a.ba.Qc=0;a.Lg=1;a.ne=a.Jd=a.Rc=a.A=0;kb(a);ob(a,1)}
function ob(a,b,c){void 0!==b&&(0.8>a.ba.Qc/a.ba.Qe&&(b=1),a.ba.Ed=b,b=a.ba.Ig*a.ba.Ed,a.ba.Qe!=b&&(a.ba.Qe=b,b=a.ba.Qe.toFixed(2)+"Mhz",a.ra.setSpeed&&(a.ra.setSpeed.innerHTML=b),a.Zb("target speed: "+b)),c&&a.We());pb(a,a.Jd);a.Jd=0;a.ba.Re=ha();a.ba.ke=0;qb(a)}
function hb(a,b){if(Ka(a,!0)){a.na.uc||(ob(a),a.La&&a.La.start(a.ba.Re,rb(a)),a.na.uc=!0,a.ja&&sb(a.ja),a.ra.run&&(a.ra.run.innerHTML="Halt"),b&&a.We());a.ba.ei>=a.ba.kd&&qb(a,!0);a.ba.Bf=0;a.ba.Kg=ha();if(a.ba.ke){var c=a.ba.Kg-a.ba.ke;c>a.ba.Uj&&(a.ba.Re+=c,a.ba.Re>a.ba.Kg&&(a.ba.Re=a.ba.Kg))}try{do{a.nl(a.na.wg?1:Math.round(a.ba.Ym/a.Lg));var d=a.Rc-a.A;a.Jd+=d;a.ba.Bf+=d;pb(a,0,!0);var c=a,e=d;if(c.na.wg){var f=!1;c.ba.Ng=c.ba.Ng+c.Oj()|0;c.ba.Se-=e;0>=c.ba.Se&&(c.ba.Se+=c.ba.wf,f=!0);0<=c.ba.xf&&
c.ba.xf<=rb(c)&&(c.ba.wf=c.ba.xf=-1,kb(c),mb(c),f=!0);f&&c.Zb(rb(c)+" cycles: checksum="+p(c.ba.Ng))}a.ba.zf-=d;0>=a.ba.zf&&(a.ba.zf+=a.ba.Yj,a.rf());a.ba.yf-=d;0>=a.ba.yf&&(a.ba.yf+=a.ba.Xj,a.qf());a.ba.Af-=d;if(0>=a.ba.Af){a.ba.Af+=a.ba.di;break}}while(a.na.uc)}catch(h){mb(a);a.rf();a.qf();a.La&&a.La.stop(ha(),rb(a));Ka(a,!1);Ma(a,h.message);return}d=setTimeout;c=a.dn;a.ba.ke=ha();e=a.ba.Uj;a.ba.Bf&&(e=Math.round(e*a.ba.Bf/a.ba.di));e-=a.ba.ke-a.ba.Kg;if(f=a.ba.ke-a.ba.Re)a.ba.Qc=Math.round(a.Jd/
(10*f))/100,864E5<=f&&(a.ne=0,a.ja&&tb(a.ja,!0),ob(a));if(0>e||a.ba.Qc<a.ba.Qe)e=0;a.ba.ei+=a.ba.Bf;a.ba.ke+=e;d(c,e)}else a.rf(),a.qf(),a.La&&a.La.stop(ha(),rb(a))}function mb(a,b){a.na.tc&&(a.na.Hh=!0);a.Rc-=a.A;a.A=0;pb(a,a.Jd);a.Jd=0;a.na.uc&&(a.na.uc=!1,a.ja&&sb(a.ja),a.ra.run&&(a.ra.run.innerHTML="Run"));a.na.xg=b}k.nl=function(){return 0};
v.prototype={toString:function(){return this.name?this.name:this.id||this.type},Bb:function(a,b,c,d){switch(c){case "clear":return this.qa[c]||(this.qa[c]=d,d.onclick=function(a){return function(){a.qa.print&&(a.qa.print.value="")}}(this)),!0;case "print":return this.qa[c]||(this.Ah=this.qa[c]=d,d.value="",this.$b=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.ya=
function(a,b,c){this.$b(a,"notice",c)}),!0;default:return!1}},log:function(){},$b:function(){},status:function(a){this.$b(this.Wh+": "+a)},ya:function(a,b){b||s(a)},Na:function(a){this.na.Pc||(this.na.Cg=!1!==a,this.na.Cg&&(this.name&&this.log("ready"),a=this.Rh,this.Rh=null,a&&a()))},Sb:function(){return this.na.Hb=!0},Rb:function(a,b){b&&(this.na.Hb=!1);return!0}};
function Ka(a,b){if(a.na.Ih)return a.na.uc&&(a.na.uc=!1),a.na.Ih=!1;if(a.na.Pc)return a.$b(a.toString()+" error"),!1;a.na.uc=b;return a.na.uc}function La(a,b){b&&(a.na.Cg?b():a.Rh=b);return a.na.Cg}function Ma(a,b){a.na.Pc=!0;a.ya("Fatal error: "+b)}function Na(a){v.call(this,"Panel",a,Na)}y(v,Na);Na.prototype.Bb=function(a,b,c,d){return this.Ma&&this.Ma.Bb(a,b,c,d)||this.ka&&this.ka.Bb(a,b,c,d)||this.Ka&&this.Ka.Bb(a,b,c,d)?!0:v.prototype.Bb.call(this,a,b,c,d)};
Na.prototype.oc=function(a,b,c,d){this.Ma=a;this.ka=c;this.Va=d;this.Ka=B(a,"Keyboard")};Na.prototype.Sb=function(a,b){b||Oa();return!0};Na.prototype.Rb=function(){return!0};function Oa(){for(var a=!1,b=A(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=Ha(e.id);f||(a=!0,f=new Na(e));Ja(f,d);a&&f.Na()}}u(Oa);
function Pa(a,b,c){v.call(this,"Bus",a,Pa);this.ka=b;this.Va=c;this.sf=a.buswidth||20;this.qh=this.Zc=(1<<this.sf)-1;this.Pb=20>=this.sf?12:14;this.rc=1<<this.Pb;this.zj=this.rc>>2;this.nb=this.rc-1;this.og=(this.qh+this.rc)/this.rc|0;this.$d=this.og-1;this.$f=[];this.ag=[];this.Yh();this.Na()}y(v,Pa);Pa.prototype.Yh=function(){this.Ba=Array(this.og);for(var a=0;a<this.og;a++)this.Ba[a]=new Qa(a*this.rc);this.ka.Yh(this.Ba,this.qh,this.Pb,this.nb,this.$d);this.ka.Vd=this.Zc};
Pa.prototype.reset=function(){Ra(this,!0)};Pa.prototype.Sb=function(a,b){b||this.reset();return!0};function Sa(a,b,c,d,e){if(!(b&a.nb||!c||c&a.nb)){for(var f=b>>a.Pb;0<c&&f<a.Ba.length;){var h=a.Ba[f];if(void 0!==h&&h.size)return Ta(1,b,c);b=f*a.rc;a.Ba[f++]=new Qa(b,a.rc,d,e);c-=a.rc}return!0}return Ta(2,b,c)}function Ra(a,b){if(void 0!==b&&20<a.sf){var c=a.Zc&-1048577|(b?1048576:0);c!=a.Zc&&(a.Zc=c,a.ka&&(a.ka.Vd=c))}}
Pa.prototype.eh=function(a,b,c){if(!(a&this.nb||!b||b&this.nb)){for(var d=a>>this.Pb;0<b;){var e=this.Ba[d];if(!e.ea)return Ta(5,a,b);e.ue(c);b-=this.rc;d++}return!0}return Ta(3,a,b)};function Wa(a,b,c){if(!(b&a.nb||!c||c&a.nb)){for(var d=b>>a.Pb;0<c;)b=d*a.rc,a.Ba[d++]=new Qa(b),c-=a.rc;return!0}return Ta(4,b,c)}function Xa(a,b){return a.Ba[(b&a.Zc)>>a.Pb].aj(b&a.nb)}function Ya(a,b){var c=b&a.nb,d=(b&a.Zc)>>a.Pb;return c!=a.nb?a.Ba[d].eo(c):a.Ba[d++].aj(c)|a.Ba[d&a.$d].aj(0)<<8}
function Za(a,b,c){a.Ba[(b&a.Zc)>>a.Pb].ij(b&a.nb,c&255)}function $a(a,b,c){var d=b&a.nb;b=(b&a.Zc)>>a.Pb;d!=a.nb?a.Ba[b].qo(d,c&65535):(a.Ba[b++].ij(d,c&255),a.Ba[b&a.$d].ij(0,c>>8&255))}function ab(a){for(var b=0,c=[],d=0;d<a.og;d++){var e=a.Ba[d];if(e.fb||e.Hj){c[b++]=d;var f=c,h=b++;a:if(e=e.save()){for(var g=0,m=0,n=[];g<e.length;){for(var q=e[g],w=g+1;w<e.length&&e[w]===q;)w++;n[m++]=w-g;n[m++]=q;g=w}if(n.length<e.length){e=n;break a}}f[h]=e}}c[b]=a.qh==a.Zc;return c}
function bb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,h=e+d,g=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=h;n++)void 0!==f.$f[n]?s("Input port "+p(n,4)+" registered by "+f.$f[n][0].id+", ignoring "+g.id):f.$f[n]=[g,m,!1,!1]}}function cb(a,b,c){var d=255;a=a.$f[b];void 0!==a&&a[1]&&(d=a[1].call(a[0],b,c));return d}
function db(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,h=e+d,g=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=h;n++)void 0!==f.ag[n]?s("Output port "+p(n,4)+" registered by "+f.ag[n][0].id+", ignoring "+g.id):f.ag[n]=[g,m,!1,!1]}}function eb(a,b,c,d){a=a.ag[b];void 0!==a&&a[1]&&a[1].call(a[0],b,c,d)}function Ta(a,b,c){s("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}
function Qa(a,b,c,d){this.zl=b||0;this.pa=null;this.offset=0;this.Lj=c;this.ea=null;this.fb=this.Hj=!1;if(b)if(d)this.ea=d,a=[d.Wd,a-d.Ra],this.pa=a[0],this.offset=a[1],this.ue(d.df);else{this.pa=Array(b>>2);for(d=0;d<this.pa.length;d++)this.pa[d]=0;this.ue(fb)}else this.ue()}
Qa.prototype={Xg:function(){return 0},ih:function(){},bo:function(a){return this.pa[a>>2]>>>((a&3)<<3)&255},fo:function(a){var b=a>>2;a=(a&3)<<3;var c=this.pa[b]>>>a;return 24>a?c&65535:c&255|(this.pa[b+1]&255)<<8},oo:function(a,b){var c=a>>2,d=(a&3)<<3;this.pa[c]=this.pa[c]&~(255<<d)|b<<d;this.fb=!0},ro:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.pa[c]=this.pa[c]&~(65535<<d)|b<<d:(this.pa[c]=this.pa[c]&16777215|b<<24,c++,this.pa[c]=this.pa[c]&4294967040|b>>8);this.fb=!0},save:function(){return this.ea?
null:this.pa},restore:function(a){return this.ea?null==a:a&&this.zl==a.length<<2?(this.pa=a,this.fb=!0):!1},ue:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.yc=c[0]?c[0]:this.Xg;this.co=c[1]?c[1]:this.Xg;b&&(this.aj=c[0]?c[0]:this.Xg,this.eo=c[1]?c[1]:this.Xg);c=a;this.Bc=c[2]&&!this.Lj?c[2]:this.ih;this.po=c[3]&&!this.Lj?c[3]:this.ih;b&&(this.ij=c[2]?c[2]:this.ih,this.qo=c[3]?c[3]:this.ih)}};var fb=[Qa.prototype.bo,Qa.prototype.fo,Qa.prototype.oo,Qa.prototype.ro];
function gb(a,b){v.call(this,"CPU",a,gb);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.ld=c;this.ba.Gd=d;this.ba.Jg=Math.round(this.ba.ld/1E4)/100;this.ba.Se=this.ba.Jg*this.ba.Gd;this.na.Hb=!1;this.na.vc=!1;this.na.Hh=a.autoStart;c=Ba.autostart;void 0!==c&&(this.na.Hh="true"==c?!0:"false"==c?!1:null);this.na.xg=!1;this.ba.Og=this.ba.Ue=0;this.ba.Pg=a.csStart;this.ba.uf=a.csInterval;this.ba.vf=a.csStop;var e=this;this.en=function(){hb(e)};this.Na()}y(v,gb);k=gb.prototype;
k.oc=function(a,b,c,d){this.ra=b;this.Va=d;this.Ma=a;var e=B(a,"Video");e&&(this.pf=function(){ib(e)},this.od=function(){e.od()});this.ja=B(a,"ChipSet");this.Na()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Sb=function(a,b){if(!b){if(a&&this.restore){jb(this);if(!this.restore(a))return!1;kb(this)}else this.reset();this.$b("No debugger detected")}this.na.Hb=!0;!lb(this)&&this.Va&&this.Va.Lp();this.pf();this.of();return!0};
k.Rb=function(a){this.na.Hb=!1;return a&&this.save?this.save():!0};function lb(a){return!0===a.na.Hh||null===a.na.Hh&&void 0===a.qa.run?(hb(a),!0):!1}k.od=function(){};k.Pj=function(){return 0};function kb(a){void 0===a.ba.Pg&&(a.ba.Pg=0);void 0===a.ba.uf&&(a.ba.uf=-1);void 0===a.ba.vf&&(a.ba.vf=-1);a.na.xg=0<=a.ba.Pg&&0<a.ba.uf;a.na.xg&&(a.ba.Og=0,a.ba.Ue=a.ba.Pg-a.pe)}
function D(a,b,c,d){void 0!==a.qa[b]&&(void 0===d&&(d=4),void 0===c&&(Ma(a,"Register "+b+" is invalid"),mb(a)),c=p(c,d),a.qa[b].innerHTML!=c&&(a.qa[b].innerHTML=c))}k.of=function(){};k.pf=function(){};
k.Bb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.qa[c]=d;d.onclick=function(){e.na.vc?mb(e,!0):hb(e,!0)};a=!0;break;case "reset":this.qa[c]=d;d.onclick=function(){e.Ma&&nb(e.Ma)};a=!0;break;case "speed":this.qa[c]=d;a=!0;break;case "setSpeed":this.qa[c]=d,d.onclick=function(){ob(e,e.ba.Gd<<1,!0)},d.innerHTML=this.ba.Se.toFixed(2)+"Mhz",a=!0}return a};function pb(a,b,c){a.pe+=b;c&&(a.Sc=a.A=0)}
function qb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.ba.Gd&&a.ba.Rc&&(d=a.ba.Rc/a.ba.Jg);a.ba.Vj=Math.round(1E3/30);a.ba.Zm=Math.floor(a.ba.ld/c*d);a.ba.ei=Math.floor(a.ba.ld/30*d);a.ba.Zj=Math.floor(a.ba.ld/60*d);a.ba.Yj=Math.floor(a.ba.ld/2*d);b||(a.ba.yf=a.ba.ei,a.ba.xf=a.ba.Zj,a.ba.wf=a.ba.Yj);a.ba.fi=0}function rb(a,b){var c=a.pe+a.Ld+a.Sc-a.A;b&&1<a.ba.Gd&&a.ba.Rc>a.ba.Jg&&(c=Math.round(c/a.ba.Gd));return c}function jb(a){a.ba.Rc=0;a.Mg=1;a.pe=a.Ld=a.Sc=a.A=0;kb(a);ob(a,1)}
function ob(a,b,c){if(void 0!==b){0.8>a.ba.Rc/a.ba.Se&&(b=1);a.ba.Gd=b;b=a.ba.Jg*a.ba.Gd;if(a.ba.Se!=b){a.ba.Se=b;b=a.ba.Se.toFixed(2)+"Mhz";var d=a.qa.setSpeed;d&&(d.innerHTML=b);a.$b("target speed: "+b)}c&&a.od()}pb(a,a.Ld);a.Ld=0;a.ba.Te=ha();a.ba.me=0;qb(a)}
function hb(a,b){if(Ka(a,!0)){if(!a.na.vc){ob(a);a.Ma&&a.Ma.start(a.ba.Te,rb(a));a.na.vc=!0;a.ja&&sb(a.ja);var c=a.qa.run;c&&(c.innerHTML="Halt");b&&a.od()}a.ba.fi>=a.ba.ld&&qb(a,!0);a.ba.zf=0;a.ba.Lg=ha();a.ba.me&&(c=a.ba.Lg-a.ba.me,c>a.ba.Vj&&(a.ba.Te+=c,a.ba.Te>a.ba.Lg&&(a.ba.Te=a.ba.Lg)));try{do{a.ol(a.na.xg?1:Math.round(a.ba.Zm/a.Mg));var d=a.Sc-a.A;a.Ld+=d;a.ba.zf+=d;pb(a,0,!0);var c=a,e=d;if(c.na.xg){var f=!1;c.ba.Og=c.ba.Og+c.Pj()|0;c.ba.Ue-=e;0>=c.ba.Ue&&(c.ba.Ue+=c.ba.uf,f=!0);0<=c.ba.vf&&
c.ba.vf<=rb(c)&&(c.ba.uf=c.ba.vf=-1,kb(c),mb(c),f=!0);f&&c.$b(rb(c)+" cycles: checksum="+p(c.ba.Og))}a.ba.xf-=d;0>=a.ba.xf&&(a.ba.xf+=a.ba.Zj,a.pf());a.ba.wf-=d;0>=a.ba.wf&&(a.ba.wf+=a.ba.Yj,a.of());a.ba.yf-=d;if(0>=a.ba.yf){a.ba.yf+=a.ba.ei;break}}while(a.na.vc)}catch(h){mb(a);a.pf();a.of();a.Ma&&a.Ma.stop(ha(),rb(a));Ka(a,!1);Ma(a,h.message);return}d=setTimeout;c=a.en;a.ba.me=ha();e=a.ba.Vj;a.ba.zf&&(e=Math.round(e*a.ba.zf/a.ba.ei));e-=a.ba.me-a.ba.Lg;if(f=a.ba.me-a.ba.Te)a.ba.Rc=Math.round(a.Ld/
(10*f))/100,864E5<=f&&(a.pe=0,a.ja&&tb(a.ja,!0),ob(a));if(0>e||a.ba.Rc<a.ba.Se)e=0;a.ba.fi+=a.ba.zf;a.ba.me+=e;d(c,e)}else a.pf(),a.of(),a.Ma&&a.Ma.stop(ha(),rb(a))}function mb(a,b){a.na.uc&&(a.na.Ih=!0);a.Sc-=a.A;a.A=0;pb(a,a.Ld);a.Ld=0;if(a.na.vc){a.na.vc=!1;a.ja&&sb(a.ja);var c=a.qa.run;c&&(c.innerHTML="Run")}a.na.yg=b}k.ol=function(){return 0};
var ub=[1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,
0,0,1,1,0,1,0,0,1];function vb(a,b,c){this.la=a;this.ob=this.Aa=0;this.hd=65535;this.Bb=0;this.Gj="CS"==b;this.ah=b;this.lc=this.rc=0;wb(this,c)}function yb(a){this.Aa=a;this.hd=65535;this.rc=this.lc=0;return this.ob=a<<4}
function zb(a){var b,c;a&4?(b=this.la.re.ob,c=this.la.re.hd):(b=this.la.Bc,c=this.la.Ce);b+=a&65528;if(b+7<=c){this.la.A-=15;c=E(this.la,b+0);var d=E(this.la,b+4);b=E(this.la,b+2)|(d&255)<<16;var e;d&4096||(e=d&7936)&&768>=e?(this.Aa=a,this.ob=b,this.hd=c,this.Bb=d&65280,this.type=d&7936,wb(this)):b=-1;return b}return-1}function Ab(a){return this.ob+a}function Bb(a){return this.ob+a}function Cb(a,b,c){return a+b<=this.hd?this.ob+a:Db.call(this,0,0,c)}
function Db(a,b,c){c||Eb.call(this.la,13,0);return-1}function Fb(a,b,c){return a+b<=this.hd?this.ob+a:Gb.call(this,0,0,c)}function Gb(a,b,c){c||Eb.call(this.la,13,0);return-1}function Hb(a,b,c){var d=E(a.la,c+2),e=E(a.la,c+0)|(d&255)<<16;c=E(a.la,c+4);a.Aa=b;a.ob=e;a.hd=c;a.Bb=d&65280;wb(a)}vb.prototype.save=function(){return[this.Aa,this.ob,this.hd,this.Bb,this.Gj,this.ah,this.rc,this.lc]};
vb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.Aa=a[0],this.ob=a[1],this.hd=a[2],this.Bb=a[3],this.Gj=a[4],this.ah=a[5],this.rc=a[6],this.lc=a[7])};function wb(a,b){void 0===b&&(b=!!(a.la.Kc&1));b?(a.load=zb,a.bd=Cb,a.cc=Fb,a.Bb&4096&&(6144==(a.Bb&6656)&&(a.cc=Db),a.Bb&2048||!(a.Bb&512))&&(a.cc=Gb),a.rc=a.Aa&3,a.lc=(a.Bb&24576)>>13):(a.load=yb,a.bd=Ab,a.cc=Bb,a.rc=a.lc=0)}
function Ib(a){this.Da=a.model||8088;var b=0;switch(this.Da){default:case 8088:b=4772727;break;case 80286:b=6E6}gb.call(this,a,b);this.nj=61442;this.Zf=4;this.Te=255;this.B=80286<=this.Da?Jb:Kb;this.Oa=Lb.slice();80186<=this.Da&&(this.Te=31,this.Oa[15]=F,this.Oa[96]=Mb,this.Oa[97]=Nb,this.Oa[98]=Ob,this.Oa[99]=F,this.Oa[100]=F,this.Oa[101]=F,this.Oa[102]=F,this.Oa[103]=F,this.Oa[104]=Qb,this.Oa[105]=Rb,this.Oa[106]=Sb,this.Oa[107]=Tb,this.Oa[108]=Ub,this.Oa[109]=Vb,this.Oa[110]=Wb,this.Oa[111]=Xb,
this.Oa[192]=Yb,this.Oa[193]=Zb,this.Oa[200]=$b,this.Oa[201]=ac,this.Oa[241]=bc,cc[7]=dc,ec[7]=dc,80286<=this.Da&&(this.nj=2,this.Zf=0,this.Oa[15]=fc,this.Oa[99]=gc,this.Oa[84]=hc));this.ag=[];this.pj=[];this.Rc=this.vh=0;this.na.xg=this.na.Hl=!1;this.Ba=[];this.Ud=this.Ob=this.kb=this.Zd=0;this.T=this.Ol;this.U=this.Pl;this.O=this.Sm;this.P=this.Tm;this.R=this.ko;this.S=this.lo;ic(this)}y(gb,Ib);
var Kb={Ui:4,aa:5,sa:6,fa:7,ga:8,Q:9,V:11,W:12,le:4,$j:60,ak:83,Ib:3,lb:9,Xb:16,Rg:1,ek:19,gk:28,ik:16,hk:21,fk:37,ck:2,ni:9,dk:5,bk:33,pi:10,oi:8,Hf:3,Gf:15,wk:51,xk:1,yk:2,zk:4,vk:32,qi:15,Bk:15,Jb:16,Kb:4,Dk:11,Ck:18,Ak:24,vb:4,Ek:2,ri:16,Fk:17,wi:18,Gk:19,vi:5,xi:6,Lk:2,Kk:8,Ik:9,Jk:10,Hk:10,yi:10,zi:10,kk:80,mk:144,jk:86,lk:154,ok:101,qk:165,nk:107,pk:171,Nk:70,Pk:113,Mk:76,Ok:124,sk:80,uk:128,rk:86,tk:134,Jf:3,If:16,Ei:10,Di:8,Qk:51,Yb:8,Rk:17,Sk:36,fc:11,Tk:16,Kf:10,Id:2,ki:18,li:7,mi:15,si:12,
ti:7,ui:11,Ai:18,Bi:7,Ci:15,Fi:15,Gi:7,Hi:13,Li:11,Mi:7,Ni:8,Uk:8,Xk:12,Vk:18,Wk:17,Yk:15,Ji:8,Ii:20,Ki:2,Qi:3,Lf:9,Pi:5,Oi:11,Si:4,Ri:17,Zk:11},Jb={Ui:0,aa:0,sa:0,fa:0,ga:0,Q:0,V:1,W:1,le:3,$j:14,ak:16,Ib:2,lb:7,Xb:7,Rg:0,ek:7,gk:13,ik:7,hk:11,fk:16,ck:3,ni:6,dk:2,bk:13,pi:5,oi:5,Hf:2,Gf:7,wk:23,xk:0,yk:1,zk:3,vk:17,qi:7,Bk:11,Jb:7,Kb:3,Dk:7,Ck:11,Ak:15,vb:2,Ek:3,ri:7,Fk:8,wi:8,Gk:8,vi:4,xi:4,Lk:2,Kk:3,Ik:5,Jk:2,Hk:3,yi:5,zi:3,kk:14,mk:22,jk:17,lk:25,ok:17,qk:25,nk:20,pk:28,Nk:13,Pk:21,Mk:16,Ok:24,
sk:13,uk:21,rk:16,tk:24,Jf:2,If:7,Ei:5,Di:5,Qk:19,Yb:5,Rk:5,Sk:17,fc:3,Tk:5,Kf:3,Id:0,ki:8,li:5,mi:9,si:5,ti:5,ui:4,Ai:5,Bi:5,Ci:4,Fi:7,Gi:5,Hi:8,Li:3,Mi:4,Ni:3,Uk:11,Xk:11,Vk:15,Wk:15,Yk:7,Ji:5,Ii:8,Ki:0,Qi:2,Lf:6,Pi:3,Oi:6,Si:3,Ri:5,Zk:5};k=Ib.prototype;k.Xh=function(a,b,c,d,e){this.Ba=a;this.Ud=b;this.Ob=c;this.kb=d;this.Zd=e};k.reset=function(){this.na.uc&&mb(this);ic(this);jb(this);this.na.Oc=!1};
function ic(a){a.H=0;a.C=0;a.J=0;a.K=0;a.Y=0;a.I=0;a.G=0;a.F=0;a.Kc=65520;a.Cc=0;a.Td=1023;a.sc={Vi:0,Aa:0,Bb:0,Hg:-1};a.Fd=0;a.za=new vb(a,"CS");a.$b=new vb(a,"DS");a.Tb=new vb(a,"SS");a.nb=new vb(a,"ES");a.ll=new vb(a,"ZERO");jc(a,0,65535);80286<=a.Da&&(a.Bc=0,a.Ce=65535,a.re=new vb(a,"LDT",!0),a.Vf=new vb(a,"TSS",!0),a.yb=new vb(a,"VER",!0),jc(a,65520,61440),a.za.ob=16711680);kc(a,0);lc(a);a.cb=0;a.wb=a.Qf=-1;a.kg=0;a.ha=a.Fa=-1;a.D=a.$b;a.N=a.Tb;a.Z=a.ua=0}
k.Oj=function(){var a=this.H+this.C+this.J+this.K+this.Y+this.I+this.G+this.F|0;return a=a+this.va+this.za.Aa+this.$b.Aa+this.Tb.Aa+this.nb.Aa+mc(this)|0};function nc(a,b,c,d){void 0!==d&&(void 0===a.ag[b]&&(a.ag[b]=[]),a.ag[b].push([c,d]))}function oc(a,b){var c=a.pj[b];null!=c&&(c(--a.vh),delete a.pj[b])}function lc(a,b){void 0===b&&(b=!!(a.Kc&1));pc=b?qc:rc;wb(a.za,b);wb(a.$b,b);wb(a.Tb,b);wb(a.nb,b)}
k.save=function(){var a=new G(this);a.set(0,[this.H,this.C,this.J,this.K,this.Y,this.I,this.G,this.F,this.Fd]);a.set(1,[this.va,this.za.save(),this.$b.save(),this.Tb.save(),this.nb.save(),null!=this.Bc?[this.Kc,this.Bc,this.Ce,this.Cc,this.Td,this.re.save(),this.Vf.save(),this.Fd]:null,mc(this)]);a.set(2,[this.D.ah,this.N.ah,this.Z,this.ua,this.cb,this.ha,this.Fa]);a.set(3,[this.Lg,this.ne,this.ba.Ed]);a.set(4,ab(this.qa));return a.data()};
k.restore=function(a){var b;b=a[0];this.H=b[0];this.C=b[1];this.J=b[2];this.K=b[3];this.Y=b[4];this.I=b[5];this.G=b[6];this.F=b[7];this.Fd=b[8]||0;b=a[1];this.za.restore(b[1]);this.$b.restore(b[2]);this.Tb.restore(b[3]);this.nb.restore(b[4]);var c=b[5];c&&c.length&&(this.Kc=c[0],this.Bc=c[1],this.Ce=c[2],this.Cc=c[3],this.Td=c[4],this.re.restore(c[5]),this.Vf.restore(c[6]),this.Fd=c[7],lc(this));kc(this,b[6]);I(this,b[0]);b=a[2];this.D=sc(this,b[0]);this.N=sc(this,b[1]);this.Z=b[2];this.ua=b[3];this.cb=
b[4];this.ha=b[5];this.Fa=b[6];b=a[3];this.Lg=b[0];this.ne=b[1];ob(this,b[2]);a:{b=this.qa;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.zj){for(var f=0,h=Array(b.zj),g=0;g<e.length-1;)for(var m=e[g++],n=e[g++];m--;)h[f++]=n;e=h}f=b.Ba[d];if(!f||!f.restore(e)){s("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Ra(b,a[c]);b=!0}return b};
function sc(a,b){switch(b){case "CS":return a.za;case "DS":return a.$b;case "SS":return a.Tb;case "ES":return a.nb;case "ZERO":return a.ll;default:return[0,b,0,0,""]}}function tc(a,b){var c;if(a.Kc&1){if(c=a.Cc+(b<<3),c+7<=a.Td){a.sc.Vi=E(a,c);a.sc.Aa=E(a,c+2);a.sc.Bb=E(a,c+4);switch(a.sc.Bb&7936){case 1536:a.sc.Hg=-17153;break;case 1792:a.sc.Hg=-16641;break;default:return!1}return!0}}else if(c=a.Cc+(b<<2),c+7<=a.Td)return a.sc.Vi=E(a,c),a.sc.Aa=E(a,c+2),a.sc.Hg=-769,!0;return!1}
function uc(a,b){a.Ha=a.za.load(b)+a.va;a.Z|=a.Zf}function vc(a,b){a.$b.load(b);a.Z|=a.Zf}function wc(a,b){a.Tb.load(b);a.Z|=4}function xc(a,b){a.nb.load(b);a.Z|=a.Zf}function I(a,b){a.Ha=a.za.ob+(a.va=b&65535)}function jc(a,b,c){a.Ha=a.za.load(c)+(a.va=b)}function J(a,b){a.Ha=a.za.ob+(a.va=a.va+b&65535)}function yc(a){return a.X&a.ca?1:0}function Bc(a){return ub[a.ia&255]?4:0}function Cc(a){return(a.ia^a.ka)&16?16:0}function Dc(a){return a.X&a.ca-1?0:64}function Ec(a){return a.ia&a.ca>>1?128:0}
function Fc(a){return(a.ia^a.ka^a.ia>>1)&a.ca>>1?2048:0}function Gc(a){a.X&=~a.ca}function Hc(a){a.ka=a.ia&16|a.ka&-17}function Ic(a){a.X|=a.ca-1}function Jc(a){a.ia&=~a.ca;a.ka=a.ia&32896|a.ka&-32897}function Kc(a){a.X|=a.ca}function Lc(a){a.ka=~(a.ia&16)&16|a.ka&-17}function Mc(a){a.X&=~(a.ca-1)}function Nc(a){Ec(a)||(a.ia^=a.ca>>1|a.ca>>2,a.ka^=32896)}function Oc(a){a.ia|=a.ca;a.ka=a.ia&32896|a.ka&-32897}function mc(a){return a.Ga&-2262|yc(a)|Bc(a)|Cc(a)|Dc(a)|Ec(a)|Fc(a)}
function kc(a,b){a.ca=256;a.X=a.ia=a.ka=0;b&1&&Kc(a);b&4||(a.ia|=1);b&16&&(a.ka|=16);b&64||Ic(a);b&128&&Nc(a);b&2048&&Oc(a);a.za.rc?b=b&-12289|a.Ga&12288:(a.Fd=(b&12288)>>12,!a.Fd||a.Kc&1||(a.Fd=0));a.za.rc>a.Fd&&(b=b&-513|a.Ga&512);a.Ga=a.Ga&-1793|b&1792|a.nj;a.Ga&256&&(a.cb|=2,a.Z|=4)}
k.zb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.ra[c]=d;e=!0;break;default:e=gb.prototype.zb.call(this,a,b,c,d)}return e};function Pc(a,b){return a.Ba[(b&a.Ud)>>a.Ob].xc(b&a.kb)}
function E(a,b){var c=b&a.kb,d=(b&a.Ud)>>a.Ob;a.A-=a.B.Ui;return c!=a.kb?a.Ba[d].bo(c):a.Ba[d++].xc(c)|a.Ba[d&a.Zd].xc(0)<<8}function Qc(a,b,c){a.Ba[(b&a.Ud)>>a.Ob].Ac(b&a.kb,c&255)}function Rc(a,b,c){var d=b&a.kb;b=(b&a.Ud)>>a.Ob;a.A-=a.B.Ui;d!=a.kb?a.Ba[b].no(d,c&65535):(a.Ba[b++].Ac(d,c&255),a.Ba[b&a.Zd].Ac(0,c>>8&255))}k.Ol=function(a,b){this.Uf=a;this.ha=a.bd(this.Nf=b,0);return this.Z&1?0:Pc(this,this.ha)};k.Pl=function(a,b){this.Uf=a;this.ha=a.bd(this.Nf=b,1);return this.Z&1?0:E(this,this.ha)};
k.Sm=function(a,b){this.Uf=a;this.Fa=this.ha=a.bd(this.Nf=b,0);return this.Z&1?0:Pc(this,this.ha)};k.Tm=function(a,b){this.Uf=a;this.Fa=this.ha=a.bd(this.Nf=b,1);return this.Z&1?0:E(this,this.ha)};k.ko=function(a){this.Z&2||Qc(this,this.Uf.cc(this.Nf,1),a)};k.lo=function(a){this.Z&2||Rc(this,this.Uf.cc(this.Nf,2),a)};k.da=function(){var a=Pc(this,this.Ha);this.Ha=this.za.ob+(this.va=this.va+1&65535);return a};
k.M=function(){var a=Pc(this,this.Ha)<<24>>24;this.Ha=this.za.ob+(this.va=this.va+1&65535);return a&65535};k.L=function(){var a=E(this,this.Ha);this.Ha=this.za.ob+(this.va=this.va+2&65535);return a};k.Ea=function(){var a=this.Y;this.Y=this.Y+2&65535;return E(this,this.Tb.bd(a,1))};function L(a,b){var c=a.Y=a.Y-2&65535;Rc(a,a.Tb.cc(c,1),b)}
k.qf=function(){D(this,"AX",this.H);D(this,"BX",this.C);D(this,"CX",this.J);D(this,"DX",this.K);D(this,"SP",this.Y);D(this,"BP",this.I);D(this,"SI",this.G);D(this,"DI",this.F);D(this,"CS",this.za.Aa);D(this,"DS",this.$b.Aa);D(this,"SS",this.Tb.Aa);D(this,"ES",this.nb.Aa);D(this,"IP",this.va);var a=mc(this);D(this,"PS",a);D(this,"C",a&1?1:0,1);D(this,"P",a&4?1:0,1);D(this,"A",a&16?1:0,1);D(this,"Z",a&64?1:0,1);D(this,"S",a&128?1:0,1);D(this,"T",a&256?1:0,1);D(this,"I",a&512?1:0,1);D(this,"D",a&1024?
1:0,1);D(this,"O",a&2048?1:0,1);this.ra.speed&&(this.ra.speed.innerHTML=this.na.uc&&this.ba.Qc?this.ba.Qc.toFixed(2)+"Mhz":"Stopped")};
k.nl=function(a){this.na.xg=!0;this.na.Hl=!1;this.Rc=this.A=a;this.ja&&tb(this.ja);a||!this.Sa||this.Sa.zp(Sc)||(this.Z|=4);do{if(a=this.Z&240)this.ua|=a;else if(this.Ug=this.Ha,this.ha=this.Fa=-1,this.D=this.$b,this.N=this.Tb,this.ua=this.Z&256,this.cb){a:{if(!(this.Z&4))if(this.cb&1&&this.Ga&512){if(a=Tc(this.ja),-1<=a&&(this.cb&=-2,0<=a)){this.cb&=-5;Uc.call(this,a,null,11);break a}}else if(this.cb&2){this.cb&=-3;Uc.call(this,1,null,11);break a}if(a=this.cb&8){a=this.ja;for(var b=!1,c=0;c<a.Ua;c++)for(var d=
a.Ua[c],e=0;e<d.xb.length;e++){var f=d.xb[e];f.jd||(Vc(a,f),f.jd||(b=!0))}a=!b}a&&(this.cb&=-9)}if(this.cb&4){this.Z=this.A=0;break}}this.Z=0;this.Oa[this.da()].call(this)}while(0<this.A);return this.na.xg?this.Rc-this.A:void 0===this.na.xg?0:-1};u(function(){for(var a=A(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ib(d);Ja(d,c)}});function Wc(a,b){this.ka=a^b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return(this.X=this.ia=a+b)&255}
function Xc(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return(this.X=this.ia=this.ka=a|b)&255}function Yc(a,b){this.ka=a^b;this.X=this.ia=a+b+(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return this.X&255}function Zc(a,b){this.ka=a^b;this.X=this.ia=a-b-(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return this.X&255}
function $c(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return(this.X=this.ia=this.ka=a&b)&255}function ad(a,b){this.ka=a^b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return(this.X=this.ia=a-b)&255}function bd(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return(this.X=this.ia=this.ka=a^b)&255}
function cd(a,b){this.ka=a^b;this.ca=256;this.X=this.ia=a-b;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.ni:this.B.lb;this.Z|=2;return a}function dd(a,b){this.ka=a^b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return(this.X=this.ia=a+b)&65535}function ed(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return(this.X=this.ia=this.ka=a|b)&65535}
function fd(a,b){this.ka=a^b;this.X=this.ia=a+b+(this.X&this.ca?1:0);this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return this.X&65535}function gd(a,b){this.ka=a^b;this.X=this.ia=a-b-(this.X&this.ca?1:0);this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return this.X&65535}function hd(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return(this.X=this.ia=this.ka=a&b)&65535}
function id(a,b){this.ka=a^b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return(this.X=this.ia=a-b)&65535}function jd(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.lb:this.B.Xb;return(this.X=this.ia=this.ka=a^b)&65535}function kd(a,b){this.ka=a^b;this.ca=65536;this.X=this.ia=a-b;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.ni:this.B.lb;this.Z|=2;return a}function ld(a,b){this.X=this.X&this.ca-1|(a&b?this.ca:0);(a^a>>1)&b>>1?Oc(this):Jc(this)}
0,0,1,1,0,1,0,0,1];function vb(a,b,c){this.ka=a;this.rb=this.Aa=0;this.jd=65535;this.Eb=0;this.Gj="CS"==b;this.bh=b;this.nc=this.sc=0;wb(this,c)}function yb(a){this.Aa=a;this.jd=65535;this.sc=this.nc=0;return this.rb=a<<4}
function zb(a){var b,c;a&4?(b=this.ka.te.rb,c=this.ka.te.jd):(b=this.ka.Dc,c=this.ka.Ee);b+=a&65528;if(b+7<=c){this.ka.A-=15;c=E(this.ka,b+0);var d=E(this.ka,b+4);b=E(this.ka,b+2)|(d&255)<<16;var e;d&4096||(e=d&7936)&&768>=e?(this.Aa=a,this.rb=b,this.jd=c,this.Eb=d&65280,this.type=d&7936,wb(this)):b=-1;return b}return-1}function Ab(a){return this.rb+a}function Bb(a){return this.rb+a}function Cb(a,b,c){return a+b<=this.jd?this.rb+a:Db.call(this,0,0,c)}
function Db(a,b,c){c||Eb.call(this.ka,13,0);return-1}function Fb(a,b,c){return a+b<=this.jd?this.rb+a:Gb.call(this,0,0,c)}function Gb(a,b,c){c||Eb.call(this.ka,13,0);return-1}function Hb(a,b,c){var d=E(a.ka,c+2),e=E(a.ka,c+0)|(d&255)<<16;c=E(a.ka,c+4);a.Aa=b;a.rb=e;a.jd=c;a.Eb=d&65280;wb(a)}vb.prototype.save=function(){return[this.Aa,this.rb,this.jd,this.Eb,this.Gj,this.bh,this.sc,this.nc]};
vb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.Aa=a[0],this.rb=a[1],this.jd=a[2],this.Eb=a[3],this.Gj=a[4],this.bh=a[5],this.sc=a[6],this.nc=a[7])};function wb(a,b){void 0===b&&(b=!!(a.ka.Lc&1));b?(a.load=zb,a.cd=Cb,a.dc=Fb,a.Eb&4096&&(6144==(a.Eb&6656)&&(a.dc=Db),a.Eb&2048||!(a.Eb&512))&&(a.dc=Gb),a.sc=a.Aa&3,a.nc=(a.Eb&24576)>>13):(a.load=yb,a.cd=Ab,a.dc=Bb,a.sc=a.nc=0)}
function Ib(a){this.Da=a.model||8088;var b=0;switch(this.Da){default:case 8088:b=4772727;break;case 80286:b=6E6}gb.call(this,a,b);this.oj=61442;this.Xf=4;this.Ve=255;this.B=80286<=this.Da?Jb:Kb;this.Oa=Lb.slice();80186<=this.Da&&(this.Ve=31,this.Oa[15]=F,this.Oa[96]=Mb,this.Oa[97]=Nb,this.Oa[98]=Pb,this.Oa[99]=F,this.Oa[100]=F,this.Oa[101]=F,this.Oa[102]=F,this.Oa[103]=F,this.Oa[104]=Qb,this.Oa[105]=Rb,this.Oa[106]=Sb,this.Oa[107]=Tb,this.Oa[108]=Ub,this.Oa[109]=Vb,this.Oa[110]=Wb,this.Oa[111]=Xb,
this.Oa[192]=Yb,this.Oa[193]=Zb,this.Oa[200]=$b,this.Oa[201]=ac,this.Oa[241]=bc,cc[7]=dc,ec[7]=dc,80286<=this.Da&&(this.oj=2,this.Xf=0,this.Oa[15]=fc,this.Oa[99]=gc,this.Oa[84]=hc));this.Zf=[];this.qj=[];this.Sc=this.wh=0;this.na.yg=this.na.Il=!1;this.Ba=[];this.Vd=this.Pb=this.nb=this.$d=0;this.T=this.Pl;this.U=this.Ql;this.O=this.Tm;this.P=this.Um;this.R=this.mo;this.S=this.no;ic(this)}y(gb,Ib);
var Kb={Vi:4,aa:5,sa:6,fa:7,ga:8,Q:9,V:11,W:12,ne:4,ak:60,bk:83,Jb:3,ob:9,Yb:16,Sg:1,fk:19,hk:28,jk:16,ik:21,gk:37,dk:2,oi:9,ek:5,ck:33,qi:10,pi:8,Ff:3,Ef:15,xk:51,yk:1,zk:2,Ak:4,wk:32,ri:15,Ck:15,Kb:16,Lb:4,Ek:11,Dk:18,Bk:24,zb:4,Fk:2,si:16,Gk:17,xi:18,Hk:19,wi:5,yi:6,Mk:2,Lk:8,Jk:9,Kk:10,Ik:10,zi:10,Ai:10,lk:80,nk:144,kk:86,mk:154,pk:101,rk:165,ok:107,qk:171,Ok:70,Qk:113,Nk:76,Pk:124,tk:80,vk:128,sk:86,uk:134,Hf:3,Gf:16,Fi:10,Ei:8,Rk:51,Zb:8,Sk:17,Tk:36,gc:11,Uk:16,If:10,Kd:2,li:18,mi:7,ni:15,ti:12,
ui:7,vi:11,Bi:18,Ci:7,Di:15,Gi:15,Hi:7,Ii:13,Mi:11,Ni:7,Oi:8,Vk:8,Yk:12,Wk:18,Xk:17,Zk:15,Ki:8,Ji:20,Li:2,Ri:3,Jf:9,Qi:5,Pi:11,Ti:4,Si:17,$k:11},Jb={Vi:0,aa:0,sa:0,fa:0,ga:0,Q:0,V:1,W:1,ne:3,ak:14,bk:16,Jb:2,ob:7,Yb:7,Sg:0,fk:7,hk:13,jk:7,ik:11,gk:16,dk:3,oi:6,ek:2,ck:13,qi:5,pi:5,Ff:2,Ef:7,xk:23,yk:0,zk:1,Ak:3,wk:17,ri:7,Ck:11,Kb:7,Lb:3,Ek:7,Dk:11,Bk:15,zb:2,Fk:3,si:7,Gk:8,xi:8,Hk:8,wi:4,yi:4,Mk:2,Lk:3,Jk:5,Kk:2,Ik:3,zi:5,Ai:3,lk:14,nk:22,kk:17,mk:25,pk:17,rk:25,ok:20,qk:28,Ok:13,Qk:21,Nk:16,Pk:24,
tk:13,vk:21,sk:16,uk:24,Hf:2,Gf:7,Fi:5,Ei:5,Rk:19,Zb:5,Sk:5,Tk:17,gc:3,Uk:5,If:3,Kd:0,li:8,mi:5,ni:9,ti:5,ui:5,vi:4,Bi:5,Ci:5,Di:4,Gi:7,Hi:5,Ii:8,Mi:3,Ni:4,Oi:3,Vk:11,Yk:11,Wk:15,Xk:15,Zk:7,Ki:5,Ji:8,Li:0,Ri:2,Jf:6,Qi:3,Pi:6,Ti:3,Si:5,$k:5};k=Ib.prototype;k.Yh=function(a,b,c,d,e){this.Ba=a;this.Vd=b;this.Pb=c;this.nb=d;this.$d=e};k.reset=function(){this.na.vc&&mb(this);ic(this);jb(this);this.na.Pc=!1};
function ic(a){a.H=0;a.C=0;a.J=0;a.K=0;a.Y=0;a.I=0;a.G=0;a.F=0;a.Lc=65520;a.Ec=0;a.Ud=1023;a.tc={Wi:0,Aa:0,Eb:0,Ig:-1};a.Hd=0;a.za=new vb(a,"CS");a.ac=new vb(a,"DS");a.Vb=new vb(a,"SS");a.qb=new vb(a,"ES");a.ml=new vb(a,"ZERO");jc(a,0,65535);80286<=a.Da&&(a.Dc=0,a.Ee=65535,a.te=new vb(a,"LDT",!0),a.Tf=new vb(a,"TSS",!0),a.Cb=new vb(a,"VER",!0),jc(a,65520,61440),a.za.rb=16711680);kc(a,0);lc(a);a.gb=0;a.Ab=a.Of=-1;a.jg=0;a.ha=a.Fa=-1;a.D=a.ac;a.N=a.Vb;a.Z=a.ua=0}
k.Pj=function(){var a=this.H+this.C+this.J+this.K+this.Y+this.I+this.G+this.F|0;return a=a+this.va+this.za.Aa+this.ac.Aa+this.Vb.Aa+this.qb.Aa+mc(this)|0};function nc(a,b,c,d){void 0!==d&&(void 0===a.Zf[b]&&(a.Zf[b]=[]),a.Zf[b].push([c,d]))}function oc(a,b){var c=a.qj[b];null!=c&&(c(--a.wh),delete a.qj[b])}function lc(a,b){void 0===b&&(b=!!(a.Lc&1));pc=b?qc:rc;wb(a.za,b);wb(a.ac,b);wb(a.Vb,b);wb(a.qb,b)}
k.save=function(){var a=new G(this);a.set(0,[this.H,this.C,this.J,this.K,this.Y,this.I,this.G,this.F,this.Hd]);a.set(1,[this.va,this.za.save(),this.ac.save(),this.Vb.save(),this.qb.save(),null!=this.Dc?[this.Lc,this.Dc,this.Ee,this.Ec,this.Ud,this.te.save(),this.Tf.save(),this.Hd]:null,mc(this)]);a.set(2,[this.D.bh,this.N.bh,this.Z,this.ua,this.gb,this.ha,this.Fa]);a.set(3,[this.Mg,this.pe,this.ba.Gd]);a.set(4,ab(this.ra));return a.data()};
k.restore=function(a){var b;b=a[0];this.H=b[0];this.C=b[1];this.J=b[2];this.K=b[3];this.Y=b[4];this.I=b[5];this.G=b[6];this.F=b[7];this.Hd=b[8]||0;b=a[1];this.za.restore(b[1]);this.ac.restore(b[2]);this.Vb.restore(b[3]);this.qb.restore(b[4]);var c=b[5];c&&c.length&&(this.Lc=c[0],this.Dc=c[1],this.Ee=c[2],this.Ec=c[3],this.Ud=c[4],this.te.restore(c[5]),this.Tf.restore(c[6]),this.Hd=c[7],lc(this));kc(this,b[6]);I(this,b[0]);b=a[2];this.D=sc(this,b[0]);this.N=sc(this,b[1]);this.Z=b[2];this.ua=b[3];this.gb=
b[4];this.ha=b[5];this.Fa=b[6];b=a[3];this.Mg=b[0];this.pe=b[1];ob(this,b[2]);a:{b=this.ra;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.zj){for(var f=0,h=Array(b.zj),g=0;g<e.length-1;)for(var m=e[g++],n=e[g++];m--;)h[f++]=n;e=h}f=b.Ba[d];if(!f||!f.restore(e)){s("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Ra(b,a[c]);b=!0}return b};
function sc(a,b){switch(b){case "CS":return a.za;case "DS":return a.ac;case "SS":return a.Vb;case "ES":return a.qb;case "ZERO":return a.ml;default:return[0,b,0,0,""]}}function tc(a,b){var c;if(a.Lc&1){if(c=a.Ec+(b<<3),c+7<=a.Ud){a.tc.Wi=E(a,c);a.tc.Aa=E(a,c+2);a.tc.Eb=E(a,c+4);switch(a.tc.Eb&7936){case 1536:a.tc.Ig=-17153;break;case 1792:a.tc.Ig=-16641;break;default:return!1}return!0}}else if(c=a.Ec+(b<<2),c+7<=a.Ud)return a.tc.Wi=E(a,c),a.tc.Aa=E(a,c+2),a.tc.Ig=-769,!0;return!1}
function uc(a,b){a.Ha=a.za.load(b)+a.va;a.Z|=a.Xf}function vc(a,b){a.ac.load(b);a.Z|=a.Xf}function wc(a,b){a.Vb.load(b);a.Z|=4}function xc(a,b){a.qb.load(b);a.Z|=a.Xf}function I(a,b){a.Ha=a.za.rb+(a.va=b&65535)}function jc(a,b,c){a.Ha=a.za.load(c)+(a.va=b)}function J(a,b){a.Ha=a.za.rb+(a.va=a.va+b&65535)}function yc(a){return a.X&a.ca?1:0}function Bc(a){return ub[a.ia&255]?4:0}function Cc(a){return(a.ia^a.la)&16?16:0}function Dc(a){return a.X&a.ca-1?0:64}function Ec(a){return a.ia&a.ca>>1?128:0}
function Fc(a){return(a.ia^a.la^a.ia>>1)&a.ca>>1?2048:0}function Gc(a){a.X&=~a.ca}function Hc(a){a.la=a.ia&16|a.la&-17}function Ic(a){a.X|=a.ca-1}function Jc(a){a.ia&=~a.ca;a.la=a.ia&32896|a.la&-32897}function Kc(a){a.X|=a.ca}function Lc(a){a.la=~(a.ia&16)&16|a.la&-17}function Mc(a){a.X&=~(a.ca-1)}function Nc(a){Ec(a)||(a.ia^=a.ca>>1|a.ca>>2,a.la^=32896)}function Oc(a){a.ia|=a.ca;a.la=a.ia&32896|a.la&-32897}function mc(a){return a.Ga&-2262|yc(a)|Bc(a)|Cc(a)|Dc(a)|Ec(a)|Fc(a)}
function kc(a,b){a.ca=256;a.X=a.ia=a.la=0;b&1&&Kc(a);b&4||(a.ia|=1);b&16&&(a.la|=16);b&64||Ic(a);b&128&&Nc(a);b&2048&&Oc(a);a.za.sc?b=b&-12289|a.Ga&12288:(a.Hd=(b&12288)>>12,!a.Hd||a.Lc&1||(a.Hd=0));a.za.sc>a.Hd&&(b=b&-513|a.Ga&512);a.Ga=a.Ga&-1793|b&1792|a.oj;a.Ga&256&&(a.gb|=2,a.Z|=4)}
k.Bb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.qa[c]=d;e=!0;break;default:e=gb.prototype.Bb.call(this,a,b,c,d)}return e};function Pc(a,b){return a.Ba[(b&a.Vd)>>a.Pb].yc(b&a.nb)}
function E(a,b){var c=b&a.nb,d=(b&a.Vd)>>a.Pb;a.A-=a.B.Vi;return c!=a.nb?a.Ba[d].co(c):a.Ba[d++].yc(c)|a.Ba[d&a.$d].yc(0)<<8}function Qc(a,b,c){a.Ba[(b&a.Vd)>>a.Pb].Bc(b&a.nb,c&255)}function Rc(a,b,c){var d=b&a.nb;b=(b&a.Vd)>>a.Pb;a.A-=a.B.Vi;d!=a.nb?a.Ba[b].po(d,c&65535):(a.Ba[b++].Bc(d,c&255),a.Ba[b&a.$d].Bc(0,c>>8&255))}k.Pl=function(a,b){this.Sf=a;this.ha=a.cd(this.Lf=b,0);return this.Z&1?0:Pc(this,this.ha)};k.Ql=function(a,b){this.Sf=a;this.ha=a.cd(this.Lf=b,1);return this.Z&1?0:E(this,this.ha)};
k.Tm=function(a,b){this.Sf=a;this.Fa=this.ha=a.cd(this.Lf=b,0);return this.Z&1?0:Pc(this,this.ha)};k.Um=function(a,b){this.Sf=a;this.Fa=this.ha=a.cd(this.Lf=b,1);return this.Z&1?0:E(this,this.ha)};k.mo=function(a){this.Z&2||Qc(this,this.Sf.dc(this.Lf,1),a)};k.no=function(a){this.Z&2||Rc(this,this.Sf.dc(this.Lf,2),a)};k.da=function(){var a=Pc(this,this.Ha);this.Ha=this.za.rb+(this.va=this.va+1&65535);return a};
k.M=function(){var a=Pc(this,this.Ha)<<24>>24;this.Ha=this.za.rb+(this.va=this.va+1&65535);return a&65535};k.L=function(){var a=E(this,this.Ha);this.Ha=this.za.rb+(this.va=this.va+2&65535);return a};k.Ea=function(){var a=this.Y;this.Y=this.Y+2&65535;return E(this,this.Vb.cd(a,1))};function L(a,b){var c=a.Y=a.Y-2&65535;Rc(a,a.Vb.dc(c,1),b)}
k.of=function(){D(this,"AX",this.H);D(this,"BX",this.C);D(this,"CX",this.J);D(this,"DX",this.K);D(this,"SP",this.Y);D(this,"BP",this.I);D(this,"SI",this.G);D(this,"DI",this.F);D(this,"CS",this.za.Aa);D(this,"DS",this.ac.Aa);D(this,"SS",this.Vb.Aa);D(this,"ES",this.qb.Aa);D(this,"IP",this.va);var a=mc(this);D(this,"PS",a);D(this,"C",a&1?1:0,1);D(this,"P",a&4?1:0,1);D(this,"A",a&16?1:0,1);D(this,"Z",a&64?1:0,1);D(this,"S",a&128?1:0,1);D(this,"T",a&256?1:0,1);D(this,"I",a&512?1:0,1);D(this,"D",a&1024?
1:0,1);D(this,"O",a&2048?1:0,1);if(a=this.qa.speed)a.innerHTML=this.na.vc&&this.ba.Rc?this.ba.Rc.toFixed(2)+"Mhz":"Stopped"};
k.ol=function(a){this.na.yg=!0;this.na.Il=!1;this.Sc=this.A=a;this.ja&&tb(this.ja);a||!this.Va||this.Va.Bp(Sc)||(this.Z|=4);do{if(a=this.Z&240)this.ua|=a;else if(this.Vg=this.Ha,this.ha=this.Fa=-1,this.D=this.ac,this.N=this.Vb,this.ua=this.Z&256,this.gb){a:{if(!(this.Z&4))if(this.gb&1&&this.Ga&512){if(a=Tc(this.ja),-1<=a&&(this.gb&=-2,0<=a)){this.gb&=-5;Uc.call(this,a,null,11);break a}}else if(this.gb&2){this.gb&=-3;Uc.call(this,1,null,11);break a}if(a=this.gb&8){a=this.ja;for(var b=!1,c=0;c<a.Xa;c++)for(var d=
a.Xa[c],e=0;e<d.tb.length;e++){var f=d.tb[e];f.kd||(Vc(a,f),f.kd||(b=!0))}a=!b}a&&(this.gb&=-9)}if(this.gb&4){this.Z=this.A=0;break}}this.Z=0;this.Oa[this.da()].call(this)}while(0<this.A);return this.na.yg?this.Sc-this.A:void 0===this.na.yg?0:-1};u(function(){for(var a=A(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ib(d);Ja(d,c)}});function Wc(a,b){this.la=a^b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return(this.X=this.ia=a+b)&255}
function Xc(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return(this.X=this.ia=this.la=a|b)&255}function Yc(a,b){this.la=a^b;this.X=this.ia=a+b+(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return this.X&255}function Zc(a,b){this.la=a^b;this.X=this.ia=a-b-(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return this.X&255}
function $c(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return(this.X=this.ia=this.la=a&b)&255}function ad(a,b){this.la=a^b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return(this.X=this.ia=a-b)&255}function bd(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return(this.X=this.ia=this.la=a^b)&255}
function cd(a,b){this.la=a^b;this.ca=256;this.X=this.ia=a-b;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.oi:this.B.ob;this.Z|=2;return a}function dd(a,b){this.la=a^b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return(this.X=this.ia=a+b)&65535}function ed(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return(this.X=this.ia=this.la=a|b)&65535}
function fd(a,b){this.la=a^b;this.X=this.ia=a+b+(this.X&this.ca?1:0);this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return this.X&65535}function gd(a,b){this.la=a^b;this.X=this.ia=a-b-(this.X&this.ca?1:0);this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return this.X&65535}function hd(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return(this.X=this.ia=this.la=a&b)&65535}
function id(a,b){this.la=a^b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return(this.X=this.ia=a-b)&65535}function jd(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.ob:this.B.Yb;return(this.X=this.ia=this.la=a^b)&65535}function kd(a,b){this.la=a^b;this.ca=65536;this.X=this.ia=a-b;this.A-=0>this.Fa?0>this.ha?this.B.Jb:this.B.oi:this.B.ob;this.Z|=2;return a}function ld(a,b){this.X=this.X&this.ca-1|(a&b?this.ca:0);(a^a>>1)&b>>1?Oc(this):Jc(this)}
function md(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;ld.call(this,d,256)}return c}function nd(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;ld.call(this,d,65536)}return c}function od(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);ld.call(this,d,256)}return c}function pd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);ld.call(this,d,65536)}return c}
function sd(a,b){var c=a;if(b){var d;(d=(b&this.Te)%9)?(d=a<<d|(this.X&this.ca?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.X&this.ca?1:0)<<8;ld.call(this,d,256)}return c}function td(a,b){var c=a;if(b){var d;(d=(b&this.Te)%17)?(d=a<<d|(this.X&this.ca?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.X&this.ca?1:0)<<16;ld.call(this,d,65536)}return c}function ud(a,b){var c=a;b&&(c=(b&this.Te)%9,c=a>>c|(this.X&this.ca?1:0)<<8-c|a<<9-c,ld.call(this,c,256),c&=255);return c}
function vd(a,b){var c=a;b&&(c=(b&this.Te)%17,c=a>>c|(this.X&this.ca?1:0)<<16-c|a<<17-c,ld.call(this,c,65536),c&=65535);return c}function wd(a,b){var c=a;b&&(c=8<b?this.X=this.ia=0:(this.X=this.ia=a<<b)&255,this.ka=0,this.ca=256);return c}function xd(a,b){var c=a;b&&(c=16<b?this.X=this.ia=0:(this.X=this.ia=a<<b)&65535,this.ka=0,this.ca=65536);return c}
function yd(a,b){if(b){var c=8<b?0:a>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|256:this.X&-257;this.ka=a^this.X;this.ca=256;a=this.X}return a&255}function zd(a,b){if(b){var c=16<b?0:a>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|65536:this.X&-65537;this.ka=a^this.X;this.ca=65536;a=this.X}return a&65535}function Ad(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|256:this.X&-257;this.ka=a^this.X;this.ca=256;a=this.X}return a&255}
function Bd(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|65536:this.X&-65537;this.ka=a^this.X;this.ca=65536;a=this.X}return a&65535}function Cd(){this.A-=0>this.ha?2:this.B.Yk;return 1}function Dd(){var a=this.J&this.Te;this.A-=(0>this.ha?this.B.Ji:this.B.Ii)+(a<<this.B.Ki);return a}function Ed(){var a=this.da();this.A-=(0>this.ha?this.B.Ji:this.B.Ii)+(a<<this.B.Ki);return a}function Fd(){return null}function Gd(a){Eb.call(this,13,0);return a}
function sd(a,b){var c=a;if(b){var d;(d=(b&this.Ve)%9)?(d=a<<d|(this.X&this.ca?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.X&this.ca?1:0)<<8;ld.call(this,d,256)}return c}function td(a,b){var c=a;if(b){var d;(d=(b&this.Ve)%17)?(d=a<<d|(this.X&this.ca?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.X&this.ca?1:0)<<16;ld.call(this,d,65536)}return c}function ud(a,b){var c=a;b&&(c=(b&this.Ve)%9,c=a>>c|(this.X&this.ca?1:0)<<8-c|a<<9-c,ld.call(this,c,256),c&=255);return c}
function vd(a,b){var c=a;b&&(c=(b&this.Ve)%17,c=a>>c|(this.X&this.ca?1:0)<<16-c|a<<17-c,ld.call(this,c,65536),c&=65535);return c}function wd(a,b){var c=a;b&&(c=8<b?this.X=this.ia=0:(this.X=this.ia=a<<b)&255,this.la=0,this.ca=256);return c}function xd(a,b){var c=a;b&&(c=16<b?this.X=this.ia=0:(this.X=this.ia=a<<b)&65535,this.la=0,this.ca=65536);return c}
function yd(a,b){if(b){var c=8<b?0:a>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|256:this.X&-257;this.la=a^this.X;this.ca=256;a=this.X}return a&255}function zd(a,b){if(b){var c=16<b?0:a>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|65536:this.X&-65537;this.la=a^this.X;this.ca=65536;a=this.X}return a&65535}function Ad(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|256:this.X&-257;this.la=a^this.X;this.ca=256;a=this.X}return a&255}
function Bd(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|65536:this.X&-65537;this.la=a^this.X;this.ca=65536;a=this.X}return a&65535}function Cd(){this.A-=0>this.ha?2:this.B.Zk;return 1}function Dd(){var a=this.J&this.Ve;this.A-=(0>this.ha?this.B.Ki:this.B.Ji)+(a<<this.B.Li);return a}function Ed(){var a=this.da();this.A-=(0>this.ha?this.B.Ki:this.B.Ji)+(a<<this.B.Li);return a}function Fd(){return null}function Gd(a){Eb.call(this,13,0);return a}
function dc(a){F.call(this);return a}function M(a){N.call(this);return a}
var Hd=[Wc,Xc,Yc,Zc,$c,ad,bd,cd],Id=[dd,ed,fd,gd,hd,id,jd,kd],Jd=[function(a,b){this.A-=0>this.Fa?this.B.Yb:this.B.Rk;return b},Gd,Gd,Gd,Gd,Gd,Gd,Gd],Kd=[function(a,b){this.A-=0>this.Fa?this.B.Jk:this.B.Hk;return b},M,M,M,M,M,M,M],Ld=[md,od,sd,ud,wd,yd,M,Ad],Md=[nd,pd,td,vd,xd,zd,M,Bd],Od=[function(a,b){b=this.da();this.X=this.ia=this.ka=a&b;this.ca=256;this.A-=0>this.ha?this.B.Pi:this.B.Oi;this.Z|=2;return a},M,function(a){this.A-=0>this.ha?this.B.Jf:this.B.If;return a^255},function(a,b){b=0;this.ka=
a^b;this.ca=256;this.A-=0>this.ha?this.B.Jf:this.B.If;return(this.X=this.ia=b-a)&255},function(a){this.H=this.wb=(this.X=(this.H&255)*a)&65535;this.ka=this.ia=this.X;this.ca=256;this.H&65280?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?this.B.Nk:this.B.Mk;this.Z|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.wb=b&65535;this.X=this.ka=this.ia=b;this.ca=256;127<b||-128>b?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?this.B.sk:this.B.rk;this.Z|=2;return a},
function(a){if(!a)return Nd.call(this),a;var b=this.H/a;if(255<b)return Nd.call(this),a;this.wb=this.H=b&255|(this.H%a&255)<<8;this.ia=this.ka=this.X=b|256;this.ca=256;this.A-=0>this.ha?this.B.kk:this.B.jk;this.Z|=2;return a},function(a){if(!a)return Nd.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Nd.call(this),a;this.wb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.ia=this.ka=this.X=b|256;this.ca=256;this.A-=0>this.ha?this.B.ok:this.B.nk;this.Z|=2;return a}],
Pd=[function(a,b){b=this.L();this.X=this.ia=this.ka=a&b;this.ca=65536;this.A-=0>this.ha?this.B.Pi:this.B.Oi;this.Z|=2;return a},M,function(a){this.A-=0>this.ha?this.B.Jf:this.B.If;return a^65535},function(a,b){b=0;this.ka=a^b;this.ca=65536;this.A-=0>this.ha?this.B.Jf:this.B.If;return(this.X=this.ia=b-a)&65535},function(a){this.wb=this.H=(this.X=this.H*a)&65535;this.Qf=this.K=this.X>>16&65535;this.ka=this.ia=this.X;this.ca=65536;this.K?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?this.B.Pk:
this.B.Ok;this.Z|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.wb=b&65535;this.K=this.Qf=b>>16&65535;this.X=this.ka=this.ia=b;this.ca=65536;32767<b||-32768>b?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?this.B.uk:this.B.tk;this.Z|=2;return a},function(a,b){if(!a)return Nd.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Nd.call(this),a;this.wb=this.H=c&65535;this.Qf=this.K=b%a&65535;this.ia=this.ka=this.X=c|65536;this.ca=65536;this.A-=
0>this.ha?this.B.mk:this.B.lk;this.Z|=2;return a},function(a,b){if(!a)return Nd.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Nd.call(this),a;this.wb=this.H=d&65535;this.Qf=this.K=b%c&65535;this.ia=this.ka=this.X=d|65536;this.ca=65536;this.A-=0>this.ha?this.B.qk:this.B.pk;this.Z|=2;return a}],cc=[function(a){this.ka=a;a=(this.ia=a+1)&255;this.X=a|(this.X&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.Hf:this.B.Gf;return a},function(a){this.ka=
a;a=(this.ia=a-1)&255;this.X=a|(this.X&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.Hf:this.B.Gf;return a},M,M,M,M,M,M],ec=[function(a){this.ka=a;a=(this.ia=a+1)&65535;this.X=a|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.Hf:this.B.Gf;return a},function(a){this.ka=a;a=(this.ia=a-1)&65535;this.X=a|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.Hf:this.B.Gf;return a},function(a){L(this,this.va);I(this,a);this.A-=0>this.ha?this.B.ik:this.B.hk;this.Z|=2;return a},
function(a){if(0>this.ha)return M.call(this,a);L(this,this.za.Aa);L(this,this.va);jc(this,a,E(this,this.ha+2));this.A-=this.B.fk;this.Z|=2;return a},function(a){I(this,a);this.A-=0>this.ha?this.B.Dk:this.B.Ck;this.Z|=2;return a},function(a){if(0>this.ha)return M.call(this,a);jc(this,a,E(this,this.ha+2));this.A-=this.B.Ak;this.Z|=2;return a},function(a){var b=a;this.Z&512&&(a=a-2&65535,80286>this.Da&&(b=a));L(this,b);this.A-=0>this.ha?this.B.fc:this.B.Tk;this.Z|=2;return a},Gd],Qd=[md,od,sd,ud,wd,
yd,M,Ad],Rd=[nd,pd,td,vd,xd,zd,M,Bd];function Sd(a,b){this.A-=0>this.Fa?0>this.ha?this.B.Lk:this.B.Kk:this.B.Ik;return b}function Td(){return Sd.call(this,0,this.wb)}function Ud(a,b){this.X=this.ia=this.ka=a&b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Qi:this.B.Lf:this.B.Lf;this.Z|=2;return a}function Vd(a,b){this.X=this.ia=this.ka=a&b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Qi:this.B.Lf:this.B.Lf;this.Z|=2;return a}
function Wd(a,b){var c=(b<<16>>16)*(this.da()<<24>>24);this.X=this.ka=this.ia=c;this.ca=256;32767<c||-32768>c?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?21:24;return c&65535}function Xd(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.X=this.ka=this.ia=c;this.ca=65536;32767<c||-32768>c?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?21:24;return c&65535}function Yd(a){return a}function Zd(a){if(0>this.ha)return N.call(this),a;this.A-=this.B.Ek;return this.ha}
function $d(a,b){if(0>this.ha)return N.call(this),a;vc(this,E(this,this.ha+2));this.A-=this.B.ri;return b}function ae(a,b){if(0>this.ha)return N.call(this),a;xc(this,E(this,this.ha+2));this.A-=this.B.ri;return b}function be(a){if(0>this.ha)return F.call(this),a;var b=a<<16>>16,c=E(this,this.ha)<<16>>16,d=E(this,this.ha+2)<<16>>16;this.A-=this.B.bk;if(b<c||b>d)I(this,this.Ug-this.za.ob),Uc.call(this,5,null,0);this.Z|=2;return a}
function ce(a,b){this.A-=10+(0>this.ha?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Mc(this),a;Ic(this);return a}function de(a,b){this.A-=14+(0>this.ha?0:2);if(0<=this.yb.load(b,!0)&&this.yb.lc>=this.za.rc&&this.yb.lc>=(b&3))return Mc(this),this.yb.Bb&65280;Ic(this);return a}function ee(a,b){this.A-=14+(0>this.ha?0:2);if(b&65528&&0<=this.yb.load(b,!0)&&(7168==(this.yb.Bb&7168)||this.yb.lc>=this.za.rc)&&this.yb.lc>=(b&3))return Mc(this),this.yb.hd;Ic(this);return a}
function fe(a,b){if(0>this.ha){switch(this.kg&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Si}else this.Fa=this.ha,this.R(a),this.A-=this.B.Ri;return b}
function ge(a,b){if(0>this.ha){switch(this.kg&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.Y=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Si}else this.Fa=this.ha,this.S(a),this.A-=this.B.Ri;return b}function Uc(a,b,c){tc(this,a)&&(L(this,mc(this)),this.Ga&=this.sc.Hg,L(this,this.za.Aa),L(this,this.va),null!=b&&L(this,b),jc(this,this.sc.Vi,this.sc.Aa),this.A-=this.B.wk+c)}
function he(a){a|=this.Kc&1;this.Kc=this.Kc&65520|a&-65521;this.Kc&1&&lc(this,!0)}function Nd(){I(this,this.Ug-this.za.ob);Uc.call(this,0,null,2)}function Eb(a,b){80186<=this.Da&&(I(this,this.Ug-this.za.ob),Uc.call(this,a,b,0))}function F(){Eb.call(this,6);mb(this)}function N(){I(this,this.Ug-this.za.ob);var a=Xa(this.qa,this.Ha),b=this.va,c=this.za.Aa;Ma(this,"Undefined opcode 0x"+p(a,2)+" at "+(void 0!==c?p(c,4)+":"+p(b,4):p(b)));mb(this)}
var Hd=[Wc,Xc,Yc,Zc,$c,ad,bd,cd],Id=[dd,ed,fd,gd,hd,id,jd,kd],Jd=[function(a,b){this.A-=0>this.Fa?this.B.Zb:this.B.Sk;return b},Gd,Gd,Gd,Gd,Gd,Gd,Gd],Kd=[function(a,b){this.A-=0>this.Fa?this.B.Kk:this.B.Ik;return b},M,M,M,M,M,M,M],Ld=[md,od,sd,ud,wd,yd,M,Ad],Md=[nd,pd,td,vd,xd,zd,M,Bd],Od=[function(a,b){b=this.da();this.X=this.ia=this.la=a&b;this.ca=256;this.A-=0>this.ha?this.B.Qi:this.B.Pi;this.Z|=2;return a},M,function(a){this.A-=0>this.ha?this.B.Hf:this.B.Gf;return a^255},function(a,b){b=0;this.la=
a^b;this.ca=256;this.A-=0>this.ha?this.B.Hf:this.B.Gf;return(this.X=this.ia=b-a)&255},function(a){this.H=this.Ab=(this.X=(this.H&255)*a)&65535;this.la=this.ia=this.X;this.ca=256;this.H&65280?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?this.B.Ok:this.B.Nk;this.Z|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.Ab=b&65535;this.X=this.la=this.ia=b;this.ca=256;127<b||-128>b?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?this.B.tk:this.B.sk;this.Z|=2;return a},
function(a){if(!a)return Nd.call(this),a;var b=this.H/a;if(255<b)return Nd.call(this),a;this.Ab=this.H=b&255|(this.H%a&255)<<8;this.ia=this.la=this.X=b|256;this.ca=256;this.A-=0>this.ha?this.B.lk:this.B.kk;this.Z|=2;return a},function(a){if(!a)return Nd.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Nd.call(this),a;this.Ab=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.ia=this.la=this.X=b|256;this.ca=256;this.A-=0>this.ha?this.B.pk:this.B.ok;this.Z|=2;return a}],
Pd=[function(a,b){b=this.L();this.X=this.ia=this.la=a&b;this.ca=65536;this.A-=0>this.ha?this.B.Qi:this.B.Pi;this.Z|=2;return a},M,function(a){this.A-=0>this.ha?this.B.Hf:this.B.Gf;return a^65535},function(a,b){b=0;this.la=a^b;this.ca=65536;this.A-=0>this.ha?this.B.Hf:this.B.Gf;return(this.X=this.ia=b-a)&65535},function(a){this.Ab=this.H=(this.X=this.H*a)&65535;this.Of=this.K=this.X>>16&65535;this.la=this.ia=this.X;this.ca=65536;this.K?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?this.B.Qk:
this.B.Pk;this.Z|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.Ab=b&65535;this.K=this.Of=b>>16&65535;this.X=this.la=this.ia=b;this.ca=65536;32767<b||-32768>b?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?this.B.vk:this.B.uk;this.Z|=2;return a},function(a,b){if(!a)return Nd.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Nd.call(this),a;this.Ab=this.H=c&65535;this.Of=this.K=b%a&65535;this.ia=this.la=this.X=c|65536;this.ca=65536;this.A-=
0>this.ha?this.B.nk:this.B.mk;this.Z|=2;return a},function(a,b){if(!a)return Nd.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Nd.call(this),a;this.Ab=this.H=d&65535;this.Of=this.K=b%c&65535;this.ia=this.la=this.X=d|65536;this.ca=65536;this.A-=0>this.ha?this.B.rk:this.B.qk;this.Z|=2;return a}],cc=[function(a){this.la=a;a=(this.ia=a+1)&255;this.X=a|(this.X&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.Ff:this.B.Ef;return a},function(a){this.la=
a;a=(this.ia=a-1)&255;this.X=a|(this.X&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.Ff:this.B.Ef;return a},M,M,M,M,M,M],ec=[function(a){this.la=a;a=(this.ia=a+1)&65535;this.X=a|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.Ff:this.B.Ef;return a},function(a){this.la=a;a=(this.ia=a-1)&65535;this.X=a|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.Ff:this.B.Ef;return a},function(a){L(this,this.va);I(this,a);this.A-=0>this.ha?this.B.jk:this.B.ik;this.Z|=2;return a},
function(a){if(0>this.ha)return M.call(this,a);L(this,this.za.Aa);L(this,this.va);jc(this,a,E(this,this.ha+2));this.A-=this.B.gk;this.Z|=2;return a},function(a){I(this,a);this.A-=0>this.ha?this.B.Ek:this.B.Dk;this.Z|=2;return a},function(a){if(0>this.ha)return M.call(this,a);jc(this,a,E(this,this.ha+2));this.A-=this.B.Bk;this.Z|=2;return a},function(a){var b=a;this.Z&512&&(a=a-2&65535,80286>this.Da&&(b=a));L(this,b);this.A-=0>this.ha?this.B.gc:this.B.Uk;this.Z|=2;return a},Gd],Qd=[md,od,sd,ud,wd,
yd,M,Ad],Rd=[nd,pd,td,vd,xd,zd,M,Bd];function Sd(a,b){this.A-=0>this.Fa?0>this.ha?this.B.Mk:this.B.Lk:this.B.Jk;return b}function Td(){return Sd.call(this,0,this.Ab)}function Ud(a,b){this.X=this.ia=this.la=a&b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ri:this.B.Jf:this.B.Jf;this.Z|=2;return a}function Vd(a,b){this.X=this.ia=this.la=a&b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Ri:this.B.Jf:this.B.Jf;this.Z|=2;return a}
function Wd(a,b){var c=(b<<16>>16)*(this.da()<<24>>24);this.X=this.la=this.ia=c;this.ca=256;32767<c||-32768>c?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?21:24;return c&65535}function Xd(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.X=this.la=this.ia=c;this.ca=65536;32767<c||-32768>c?(Kc(this),Oc(this)):(Gc(this),Jc(this));this.A-=0>this.ha?21:24;return c&65535}function Yd(a){return a}function Zd(a){if(0>this.ha)return N.call(this),a;this.A-=this.B.Fk;return this.ha}
function $d(a,b){if(0>this.ha)return N.call(this),a;vc(this,E(this,this.ha+2));this.A-=this.B.si;return b}function ae(a,b){if(0>this.ha)return N.call(this),a;xc(this,E(this,this.ha+2));this.A-=this.B.si;return b}function be(a){if(0>this.ha)return F.call(this),a;var b=a<<16>>16,c=E(this,this.ha)<<16>>16,d=E(this,this.ha+2)<<16>>16;this.A-=this.B.ck;if(b<c||b>d)I(this,this.Vg-this.za.rb),Uc.call(this,5,null,0);this.Z|=2;return a}
function ce(a,b){this.A-=10+(0>this.ha?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Mc(this),a;Ic(this);return a}function de(a,b){this.A-=14+(0>this.ha?0:2);if(0<=this.Cb.load(b,!0)&&this.Cb.nc>=this.za.sc&&this.Cb.nc>=(b&3))return Mc(this),this.Cb.Eb&65280;Ic(this);return a}function ee(a,b){this.A-=14+(0>this.ha?0:2);if(b&65528&&0<=this.Cb.load(b,!0)&&(7168==(this.Cb.Eb&7168)||this.Cb.nc>=this.za.sc)&&this.Cb.nc>=(b&3))return Mc(this),this.Cb.jd;Ic(this);return a}
function fe(a,b){if(0>this.ha){switch(this.jg&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Ti}else this.Fa=this.ha,this.R(a),this.A-=this.B.Si;return b}
function ge(a,b){if(0>this.ha){switch(this.jg&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.Y=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Ti}else this.Fa=this.ha,this.S(a),this.A-=this.B.Si;return b}function Uc(a,b,c){tc(this,a)&&(L(this,mc(this)),this.Ga&=this.tc.Ig,L(this,this.za.Aa),L(this,this.va),null!=b&&L(this,b),jc(this,this.tc.Wi,this.tc.Aa),this.A-=this.B.xk+c)}
function he(a){a|=this.Lc&1;this.Lc=this.Lc&65520|a&-65521;this.Lc&1&&lc(this,!0)}function Nd(){I(this,this.Vg-this.za.rb);Uc.call(this,0,null,2)}function Eb(a,b){80186<=this.Da&&(I(this,this.Vg-this.za.rb),Uc.call(this,a,b,0))}function F(){Eb.call(this,6);mb(this)}function N(){I(this,this.Vg-this.za.rb);var a=Xa(this.ra,this.Ha),b=this.va,c=this.za.Aa;Ma(this,"Undefined opcode 0x"+p(a,2)+" at "+(void 0!==c?p(c,4)+":"+p(b,4):p(b)));mb(this)}
function ie(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}function je(a){a=a.call(this,this.H&255,this.J&255);this.H=this.H&-256|a}function ke(a){a=a.call(this,this.H&255,this.K&255);this.H=this.H&-256|a}function le(a){a=a.call(this,this.H&255,this.C&255);this.H=this.H&-256|a}function me(a){a=a.call(this,this.H&255,this.H>>8);this.H=this.H&-256|a}function ne(a){a=a.call(this,this.H&255,this.J>>8);this.H=this.H&-256|a}
function oe(a){a=a.call(this,this.H&255,this.K>>8);this.H=this.H&-256|a}function pe(a){a=a.call(this,this.H&255,this.C>>8);this.H=this.H&-256|a}function qe(a){a=a.call(this,this.J&255,this.H&255);this.J=this.J&-256|a}function re(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function se(a){a=a.call(this,this.J&255,this.K&255);this.J=this.J&-256|a}function te(a){a=a.call(this,this.J&255,this.C&255);this.J=this.J&-256|a}
function ue(a){a=a.call(this,this.J&255,this.H>>8);this.J=this.J&-256|a}function ve(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function we(a){a=a.call(this,this.J&255,this.K>>8);this.J=this.J&-256|a}function xe(a){a=a.call(this,this.J&255,this.C>>8);this.J=this.J&-256|a}function ye(a){a=a.call(this,this.K&255,this.H&255);this.K=this.K&-256|a}function ze(a){a=a.call(this,this.K&255,this.J&255);this.K=this.K&-256|a}
@ -366,284 +366,286 @@ b.call(this))},function(a,b){this.K=a[3].call(this,this.K,b.call(this))},functio
this.K,b.call(this))},function(a,b){this.C=a[4].call(this,this.C,b.call(this))},function(a,b){this.Y=a[4].call(this,this.Y,b.call(this))},function(a,b){this.I=a[4].call(this,this.I,b.call(this))},function(a,b){this.G=a[4].call(this,this.G,b.call(this))},function(a,b){this.F=a[4].call(this,this.F,b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.K=a[5].call(this,this.K,b.call(this))},function(a,b){this.C=
a[5].call(this,this.C,b.call(this))},function(a,b){this.Y=a[5].call(this,this.Y,b.call(this))},function(a,b){this.I=a[5].call(this,this.I,b.call(this))},function(a,b){this.G=a[5].call(this,this.G,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.J=a[6].call(this,this.J,b.call(this))},function(a,b){this.K=a[6].call(this,this.K,b.call(this))},function(a,b){this.C=a[6].call(this,this.C,b.call(this))},
function(a,b){this.Z|=512;this.Y=a[6].call(this,this.Y,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a,b){this.K=a[7].call(this,this.K,b.call(this))},function(a,b){this.C=a[7].call(this,this.C,b.call(this))},function(a,b){this.Y=a[7].call(this,
this.Y,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}],Lg=[function(){var a=this.da();16>(a&56)&&(this.Z|=1);Jg[a].call(this,pc,Fd)},function(){var a=this.da();a&16||(this.Z|=1);Jg[a].call(this,Kg,Fd)},function(){O[this.da()].call(this,de)},function(){O[this.da()].call(this,ee)},N,function(){this.za.rc?Eb.call(this,13,0):(he.call(this,E(this,2054)),this.F=E(this,
2086),this.G=E(this,2088),this.I=E(this,2090),this.Y=E(this,2092),this.C=E(this,2094),this.K=E(this,2096),this.J=E(this,2098),this.H=E(this,2100),Hb(this.nb,E(this,2084),2102),Hb(this.za,E(this,2082),2108),Hb(this.Tb,E(this,2080),2114),Hb(this.$b,E(this,2078),2120),kc(this,E(this,2072)),I(this,E(this,2074)),this.Bc=E(this,2126)|E(this,2128)<<16,this.Ce=this.Bc+E(this,2130),Hb(this.re,E(this,2076),2132),this.Cc=E(this,2138)|E(this,2140)<<16,this.Td=this.Cc+E(this,2142),Hb(this.Vf,E(this,2070),2144),
this.Y,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}],Lg=[function(){var a=this.da();16>(a&56)&&(this.Z|=1);Jg[a].call(this,pc,Fd)},function(){var a=this.da();a&16||(this.Z|=1);Jg[a].call(this,Kg,Fd)},function(){O[this.da()].call(this,de)},function(){O[this.da()].call(this,ee)},N,function(){this.za.sc?Eb.call(this,13,0):(he.call(this,E(this,2054)),this.F=E(this,
2086),this.G=E(this,2088),this.I=E(this,2090),this.Y=E(this,2092),this.C=E(this,2094),this.K=E(this,2096),this.J=E(this,2098),this.H=E(this,2100),Hb(this.qb,E(this,2084),2102),Hb(this.za,E(this,2082),2108),Hb(this.Vb,E(this,2080),2114),Hb(this.ac,E(this,2078),2120),kc(this,E(this,2072)),I(this,E(this,2074)),this.Dc=E(this,2126)|E(this,2128)<<16,this.Ee=this.Dc+E(this,2130),Hb(this.te,E(this,2076),2132),this.Ec=E(this,2138)|E(this,2140)<<16,this.Ud=this.Ec+E(this,2142),Hb(this.Tf,E(this,2070),2144),
this.A-=195)},N,N,N,N,N,F,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,
N,N,N,N,N,N],qc=[function(){this.A-=2+(0>this.ha?0:1);return this.re.Aa},function(){this.A-=2+(0>this.ha?0:1);return this.Vf.Aa},function(a){this.Z|=2;this.re.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;this.Vf.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;this.A-=14+(0>this.ha?0:2);if(0<=this.yb.load(a,!0)&&2048!=(this.yb.Bb&2560)&&(this.yb.lc>=this.za.rc&&this.yb.lc>=(a&3)||7168==(this.yb.Bb&7168)))return Mc(this),a;Ic(this);return a},function(a){this.Z|=
2;this.A-=14+(0>this.ha?0:2);if(0<=this.yb.load(a,!0)&&512==(this.yb.Bb&2560)&&this.yb.lc>=this.za.rc&&this.yb.lc>=(a&3))return Mc(this),a;Ic(this);return a},M,M],rc=[dc,dc,dc,dc,dc,dc,M,M],pc=rc,Kg=[function(a){0>this.ha?F.call(this):(a=this.Ce-this.Bc,Rc(this,this.ha+2,this.Bc),Rc(this,this.ha+4,65280|this.Bc>>16),this.A-=11);return a},function(a){0>this.ha?F.call(this):(a=this.Td-this.Cc,Rc(this,this.ha+2,this.Cc),Rc(this,this.ha+4,65280|this.Cc>>16),this.A-=12);return a},function(a){0>this.ha?
F.call(this):(this.Bc=E(this,this.ha+2)|Pc(this,this.ha+4)<<16,this.Ce=this.Bc+a,this.Z|=2,this.A-=11);return a},function(a){0>this.ha?F.call(this):(this.Cc=E(this,this.ha+2)|Pc(this,this.ha+4)<<16,this.Td=this.Cc+a,this.Z|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ha?0:1);return this.Kc},M,function(a){he.call(this,a);this.A-=0>this.ha?3:6;this.Z|=2;return a},M];function fc(){Lg[this.da()].call(this)}function hc(){L(this,this.Y);this.A-=this.B.fc}
function Mb(){var a=this.Y;L(this,this.H);L(this,this.J);L(this,this.K);L(this,this.C);L(this,a);L(this,this.I);L(this,this.G);L(this,this.F);this.A-=this.B.Sk}function Nb(){this.F=this.Ea();this.G=this.Ea();this.I=this.Ea();this.Y+=2;this.C=this.Ea();this.K=this.Ea();this.J=this.Ea();this.H=this.Ea();this.A-=this.B.Qk}function Ob(){O[this.da()].call(this,be)}function gc(){Gg[this.da()].call(this,ce)}function Qb(){L(this,this.L());this.A-=this.B.fc}function Rb(){O[this.da()].call(this,Xd)}
function Sb(){L(this,this.da());this.A-=this.B.fc}function Tb(){O[this.da()].call(this,Wd)}function Ub(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=cb(this.qa,this.K,this.Ha-b-1);Qc(this,this.nb.cc(this.F,0),d);this.F=this.F+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}}
function Vb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=this.Ha-b-1,d=cb(this.qa,this.K,d)|cb(this.qa,this.K,d)<<8;Rc(this,this.nb.cc(this.F,1),d);this.F=this.F+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}}
function Wb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=Pc(this,this.$b.bd(this.G,0));this.G=this.G+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=b;eb(this.qa,this.K,d,this.Ha-b-1);a&&(J(this,-2),this.Z|=256)}}
function Xb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=E(this,this.$b.bd(this.G,1));this.G=this.G+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ha-b-1;eb(this.qa,this.K,d&255,b);eb(this.qa,this.K,d>>8,b);a&&(J(this,-2),this.Z|=256)}}function Mg(){var a=this.M();Fc(this)?(I(this,this.va+a),this.A-=this.B.Jb):this.A-=this.B.Kb}function Ng(){var a=this.M();Fc(this)?this.A-=this.B.Kb:(I(this,this.va+a),this.A-=this.B.Jb)}
function Og(){var a=this.M();yc(this)?(I(this,this.va+a),this.A-=this.B.Jb):this.A-=this.B.Kb}function Pg(){var a=this.M();yc(this)?this.A-=this.B.Kb:(I(this,this.va+a),this.A-=this.B.Jb)}function Qg(){var a=this.M();Dc(this)?(I(this,this.va+a),this.A-=this.B.Jb):this.A-=this.B.Kb}function Rg(){var a=this.M();Dc(this)?this.A-=this.B.Kb:(I(this,this.va+a),this.A-=this.B.Jb)}function Sg(){var a=this.M();yc(this)||Dc(this)?(I(this,this.va+a),this.A-=this.B.Jb):this.A-=this.B.Kb}
function Tg(){var a=this.M();yc(this)||Dc(this)?this.A-=this.B.Kb:(I(this,this.va+a),this.A-=this.B.Jb)}function Ug(){var a=this.M();Ec(this)?(I(this,this.va+a),this.A-=this.B.Jb):this.A-=this.B.Kb}function Vg(){var a=this.M();Ec(this)?this.A-=this.B.Kb:(I(this,this.va+a),this.A-=this.B.Jb)}function Wg(){var a=this.M();Bc(this)?(I(this,this.va+a),this.A-=this.B.Jb):this.A-=this.B.Kb}function Xg(){var a=this.M();Bc(this)?this.A-=this.B.Kb:(I(this,this.va+a),this.A-=this.B.Jb)}
function Yg(){var a=this.M();!Ec(this)!=!Fc(this)?(I(this,this.va+a),this.A-=this.B.Jb):this.A-=this.B.Kb}function Zg(){var a=this.M();!Ec(this)==!Fc(this)?(I(this,this.va+a),this.A-=this.B.Jb):this.A-=this.B.Kb}function $g(){var a=this.M();Dc(this)||!Ec(this)!=!Fc(this)?(I(this,this.va+a),this.A-=this.B.Jb):this.A-=this.B.Kb}function ah(){var a=this.M();Dc(this)||!Ec(this)!=!Fc(this)?this.A-=this.B.Kb:(I(this,this.va+a),this.A-=this.B.Jb)}
function bh(){Ig[this.da()].call(this,Hd,this.da);this.A-=0>this.Fa?1:this.B.Rg}function Yb(){Ig[this.da()].call(this,Qd,Ed)}function Zb(){Jg[this.da()].call(this,Rd,Ed)}function ch(){var a=this.L();I(this,this.Ea());this.Y=this.Y+a&65535;this.A-=this.B.Xk}function dh(){I(this,this.Ea());this.A-=this.B.Uk}
function $b(){var a=this.L(),b=this.da()&31;this.A-=11;L(this,this.I);var c=this.Y;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.I=this.I-2&65535,L(this,E(this,this.Tb.bd(this.I,1)));L(this,c)}this.I=c;this.Y=this.Y-a&65535}function ac(){this.Y=this.I;this.I=this.Ea();this.A-=5}function eh(){var a=this.L();jc(this,this.Ea(),this.Ea());this.Y=this.Y+a&65535;this.vh&&oc(this,this.Ha);this.A-=this.B.Wk}function fh(){jc(this,this.Ea(),this.Ea());this.A-=this.B.Vk}
function gh(){O[this.da()].call(this,Yd);this.A-=8}function hh(){this.Z|=36;this.A-=this.B.Id}function bc(){N.call(this)}
var Lb=[function(){var a=this.da();Fg[a].call(this,Wc)},function(){Gg[this.da()].call(this,dd)},function(){Hg[this.da()].call(this,Wc)},function(){O[this.da()].call(this,dd)},function(){this.H=this.H&-256|Wc.call(this,this.H&255,this.da());this.A--},function(){this.H=dd.call(this,this.H,this.L());this.A--},function(){L(this,this.nb.Aa);this.A-=this.B.Kf},function(){xc(this,this.Ea());this.A-=this.B.Yb},function(){Fg[this.da()].call(this,Xc)},function(){Gg[this.da()].call(this,ed)},function(){Hg[this.da()].call(this,
Xc)},function(){O[this.da()].call(this,ed)},function(){this.H=this.H&-256|Xc.call(this,this.H&255,this.da());this.A--},function(){this.H=ed.call(this,this.H,this.L());this.A--},function(){L(this,this.za.Aa);this.A-=this.B.Kf},function(){uc(this,this.Ea());this.A-=this.B.Yb},function(){Fg[this.da()].call(this,Yc)},function(){Gg[this.da()].call(this,fd)},function(){Hg[this.da()].call(this,Yc)},function(){O[this.da()].call(this,fd)},function(){this.H=this.H&-256|Yc.call(this,this.H&255,this.da());this.A--},
function(){this.H=fd.call(this,this.H,this.L());this.A--},function(){L(this,this.Tb.Aa);this.A-=this.B.Kf},function(){wc(this,this.Ea());this.A-=this.B.Yb},function(){Fg[this.da()].call(this,Zc)},function(){Gg[this.da()].call(this,gd)},function(){Hg[this.da()].call(this,Zc)},function(){O[this.da()].call(this,gd)},function(){this.H=this.H&-256|Zc.call(this,this.H&255,this.da());this.A--},function(){this.H=gd.call(this,this.H,this.L());this.A--},function(){L(this,this.$b.Aa);this.A-=this.B.Kf},function(){vc(this,
this.Ea());this.A-=this.B.Yb},function(){Fg[this.da()].call(this,$c)},function(){Gg[this.da()].call(this,hd)},function(){Hg[this.da()].call(this,$c)},function(){O[this.da()].call(this,hd)},function(){this.H=this.H&-256|$c.call(this,this.H&255,this.da());this.A--},function(){this.H=hd.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.nb;this.A-=this.B.Id},function(){var a=this.H&255,b=Cc(this),c=this.X&this.ca;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.H=this.H&
-256|(this.X=this.ia=a&255);this.ca=65536;c&&(this.X|=this.ca);b?Lc(this):Hc(this);this.A-=this.B.le},function(){Fg[this.da()].call(this,ad)},function(){Gg[this.da()].call(this,id)},function(){Hg[this.da()].call(this,ad)},function(){O[this.da()].call(this,id)},function(){this.H=this.H&-256|ad.call(this,this.H&255,this.da());this.A--},function(){this.H=id.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.za;this.A-=this.B.Id},function(){var a=this.H&255,b=Cc(this),c=this.X&
this.ca;if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.H=this.H&-256|(this.X=this.ia=a&255);this.ca=65536;c&&(this.X|=this.ca);b?Lc(this):Hc(this);this.A-=this.B.le},function(){Fg[this.da()].call(this,bd)},function(){Gg[this.da()].call(this,jd)},function(){Hg[this.da()].call(this,bd)},function(){O[this.da()].call(this,jd)},function(){this.H=this.H&-256|bd.call(this,this.H&255,this.da());this.A--},function(){this.H=jd.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.Tb;
this.A-=this.B.Id},function(){var a=this.H&255,b=this.H>>8,c,d=Cc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.X=a);this.ca=65536;c&&(this.X|=this.ca);d?Lc(this):Hc(this);this.A-=this.B.le},function(){Fg[this.da()].call(this,cd)},function(){Gg[this.da()].call(this,kd)},function(){Hg[this.da()].call(this,cd)},function(){O[this.da()].call(this,kd)},function(){this.H=this.H&-256|cd.call(this,this.H&255,this.da());this.A--},function(){this.H=kd.call(this,this.H,this.L());this.A--},
function(){this.Z|=20;this.D=this.N=this.$b;this.A-=this.B.Id},function(){var a=this.H&255,b=this.H>>8,c,d=Cc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.X=a);this.ca=65536;c&&(this.X|=this.ca);d?Lc(this):Hc(this);this.A-=this.B.le},function(){this.ka=this.H;this.H=(this.ia=this.H+1)&65535;this.X=this.H|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.J;this.J=(this.ia=this.J+1)&65535;this.X=this.J|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=
2},function(){this.ka=this.K;this.K=(this.ia=this.K+1)&65535;this.X=this.K|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.C;this.C=(this.ia=this.C+1)&65535;this.X=this.C|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.Y;this.Y=(this.ia=this.Y+1)&65535;this.X=this.Y|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.I;this.I=(this.ia=this.I+1)&65535;this.X=this.I|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=
this.G;this.G=(this.ia=this.G+1)&65535;this.X=this.G|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.F;this.F=(this.ia=this.F+1)&65535;this.X=this.F|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.H;this.H=(this.ia=this.H-1)&65535;this.X=this.H|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.J;this.J=(this.ia=this.J-1)&65535;this.X=this.J|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.K;this.K=
(this.ia=this.K-1)&65535;this.X=this.K|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.C;this.C=(this.ia=this.C-1)&65535;this.X=this.C|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.Y;this.Y=(this.ia=this.Y-1)&65535;this.X=this.Y|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.I;this.I=(this.ia=this.I-1)&65535;this.X=this.I|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.G;this.G=(this.ia=this.G-
1)&65535;this.X=this.G|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.F;this.F=(this.ia=this.F-1)&65535;this.X=this.F|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){L(this,this.H);this.A-=this.B.fc},function(){L(this,this.J);this.A-=this.B.fc},function(){L(this,this.K);this.A-=this.B.fc},function(){L(this,this.C);this.A-=this.B.fc},function(){L(this,this.Y-2&65535);this.A-=this.B.fc},function(){L(this,this.I);this.A-=this.B.fc},function(){L(this,this.G);this.A-=
this.B.fc},function(){L(this,this.F);this.A-=this.B.fc},function(){this.H=this.Ea();this.A-=this.B.Yb},function(){this.J=this.Ea();this.A-=this.B.Yb},function(){this.K=this.Ea();this.A-=this.B.Yb},function(){this.C=this.Ea();this.A-=this.B.Yb},function(){this.Y=this.Ea();this.A-=this.B.Yb},function(){this.I=this.Ea();this.A-=this.B.Yb},function(){this.G=this.Ea();this.A-=this.B.Yb},function(){this.F=this.Ea();this.A-=this.B.Yb},Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Wg,Xg,Yg,Zg,$g,ah,Mg,Ng,Og,Pg,Qg,Rg,Sg,
Tg,Ug,Vg,Wg,Xg,Yg,Zg,$g,ah,bh,function(){Jg[this.da()].call(this,Id,this.L);this.A-=0>this.Fa?1:this.B.Rg},bh,function(){Jg[this.da()].call(this,Id,this.M);this.A-=0>this.Fa?1:this.B.Rg},function(){Fg[this.da()].call(this,Ud)},function(){Gg[this.da()].call(this,Vd)},function(){Hg[this.kg=this.da()].call(this,fe)},function(){O[this.kg=this.da()].call(this,ge)},function(){this.Z|=1;Fg[this.da()].call(this,Sd)},function(){this.Z|=1;Gg[this.da()].call(this,Sd)},function(){Hg[this.da()].call(this,Sd)},
function(){O[this.da()].call(this,Sd)},function(){var a=this.da();switch((a&56)>>3){case 0:this.wb=this.nb.Aa;break;case 1:this.wb=this.za.Aa;break;case 2:this.wb=this.Tb.Aa;break;case 3:this.wb=this.$b.Aa;break;default:N.call(this);return}this.Z|=1;Gg[a].call(this,Td)},function(){this.Z|=1;this.D=this.N=this.ll;O[this.da()].call(this,Zd)},function(){var a,b=this.da(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Da){F.call(this);return}switch(c){case 1:a=
N,N,N,N,N,N],qc=[function(){this.A-=2+(0>this.ha?0:1);return this.te.Aa},function(){this.A-=2+(0>this.ha?0:1);return this.Tf.Aa},function(a){this.Z|=2;this.te.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;this.Tf.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;this.A-=14+(0>this.ha?0:2);if(0<=this.Cb.load(a,!0)&&2048!=(this.Cb.Eb&2560)&&(this.Cb.nc>=this.za.sc&&this.Cb.nc>=(a&3)||7168==(this.Cb.Eb&7168)))return Mc(this),a;Ic(this);return a},function(a){this.Z|=
2;this.A-=14+(0>this.ha?0:2);if(0<=this.Cb.load(a,!0)&&512==(this.Cb.Eb&2560)&&this.Cb.nc>=this.za.sc&&this.Cb.nc>=(a&3))return Mc(this),a;Ic(this);return a},M,M],rc=[dc,dc,dc,dc,dc,dc,M,M],pc=rc,Kg=[function(a){0>this.ha?F.call(this):(a=this.Ee-this.Dc,Rc(this,this.ha+2,this.Dc),Rc(this,this.ha+4,65280|this.Dc>>16),this.A-=11);return a},function(a){0>this.ha?F.call(this):(a=this.Ud-this.Ec,Rc(this,this.ha+2,this.Ec),Rc(this,this.ha+4,65280|this.Ec>>16),this.A-=12);return a},function(a){0>this.ha?
F.call(this):(this.Dc=E(this,this.ha+2)|Pc(this,this.ha+4)<<16,this.Ee=this.Dc+a,this.Z|=2,this.A-=11);return a},function(a){0>this.ha?F.call(this):(this.Ec=E(this,this.ha+2)|Pc(this,this.ha+4)<<16,this.Ud=this.Ec+a,this.Z|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ha?0:1);return this.Lc},M,function(a){he.call(this,a);this.A-=0>this.ha?3:6;this.Z|=2;return a},M];function fc(){Lg[this.da()].call(this)}function hc(){L(this,this.Y);this.A-=this.B.gc}
function Mb(){var a=this.Y;L(this,this.H);L(this,this.J);L(this,this.K);L(this,this.C);L(this,a);L(this,this.I);L(this,this.G);L(this,this.F);this.A-=this.B.Tk}function Nb(){this.F=this.Ea();this.G=this.Ea();this.I=this.Ea();this.Y+=2;this.C=this.Ea();this.K=this.Ea();this.J=this.Ea();this.H=this.Ea();this.A-=this.B.Rk}function Pb(){O[this.da()].call(this,be)}function gc(){Gg[this.da()].call(this,ce)}function Qb(){L(this,this.L());this.A-=this.B.gc}function Rb(){O[this.da()].call(this,Xd)}
function Sb(){L(this,this.da());this.A-=this.B.gc}function Tb(){O[this.da()].call(this,Wd)}function Ub(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=cb(this.ra,this.K,this.Ha-b-1);Qc(this,this.qb.dc(this.F,0),d);this.F=this.F+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}}
function Vb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=this.Ha-b-1,d=cb(this.ra,this.K,d)|cb(this.ra,this.K,d)<<8;Rc(this,this.qb.dc(this.F,1),d);this.F=this.F+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}}
function Wb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=Pc(this,this.ac.cd(this.G,0));this.G=this.G+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=b;eb(this.ra,this.K,d,this.Ha-b-1);a&&(J(this,-2),this.Z|=256)}}
function Xb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=E(this,this.ac.cd(this.G,1));this.G=this.G+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ha-b-1;eb(this.ra,this.K,d&255,b);eb(this.ra,this.K,d>>8,b);a&&(J(this,-2),this.Z|=256)}}function Mg(){var a=this.M();Fc(this)?(I(this,this.va+a),this.A-=this.B.Kb):this.A-=this.B.Lb}function Ng(){var a=this.M();Fc(this)?this.A-=this.B.Lb:(I(this,this.va+a),this.A-=this.B.Kb)}
function Og(){var a=this.M();yc(this)?(I(this,this.va+a),this.A-=this.B.Kb):this.A-=this.B.Lb}function Pg(){var a=this.M();yc(this)?this.A-=this.B.Lb:(I(this,this.va+a),this.A-=this.B.Kb)}function Qg(){var a=this.M();Dc(this)?(I(this,this.va+a),this.A-=this.B.Kb):this.A-=this.B.Lb}function Rg(){var a=this.M();Dc(this)?this.A-=this.B.Lb:(I(this,this.va+a),this.A-=this.B.Kb)}function Sg(){var a=this.M();yc(this)||Dc(this)?(I(this,this.va+a),this.A-=this.B.Kb):this.A-=this.B.Lb}
function Tg(){var a=this.M();yc(this)||Dc(this)?this.A-=this.B.Lb:(I(this,this.va+a),this.A-=this.B.Kb)}function Ug(){var a=this.M();Ec(this)?(I(this,this.va+a),this.A-=this.B.Kb):this.A-=this.B.Lb}function Vg(){var a=this.M();Ec(this)?this.A-=this.B.Lb:(I(this,this.va+a),this.A-=this.B.Kb)}function Wg(){var a=this.M();Bc(this)?(I(this,this.va+a),this.A-=this.B.Kb):this.A-=this.B.Lb}function Xg(){var a=this.M();Bc(this)?this.A-=this.B.Lb:(I(this,this.va+a),this.A-=this.B.Kb)}
function Yg(){var a=this.M();!Ec(this)!=!Fc(this)?(I(this,this.va+a),this.A-=this.B.Kb):this.A-=this.B.Lb}function Zg(){var a=this.M();!Ec(this)==!Fc(this)?(I(this,this.va+a),this.A-=this.B.Kb):this.A-=this.B.Lb}function $g(){var a=this.M();Dc(this)||!Ec(this)!=!Fc(this)?(I(this,this.va+a),this.A-=this.B.Kb):this.A-=this.B.Lb}function ah(){var a=this.M();Dc(this)||!Ec(this)!=!Fc(this)?this.A-=this.B.Lb:(I(this,this.va+a),this.A-=this.B.Kb)}
function bh(){Ig[this.da()].call(this,Hd,this.da);this.A-=0>this.Fa?1:this.B.Sg}function Yb(){Ig[this.da()].call(this,Qd,Ed)}function Zb(){Jg[this.da()].call(this,Rd,Ed)}function ch(){var a=this.L();I(this,this.Ea());this.Y=this.Y+a&65535;this.A-=this.B.Yk}function dh(){I(this,this.Ea());this.A-=this.B.Vk}
function $b(){var a=this.L(),b=this.da()&31;this.A-=11;L(this,this.I);var c=this.Y;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.I=this.I-2&65535,L(this,E(this,this.Vb.cd(this.I,1)));L(this,c)}this.I=c;this.Y=this.Y-a&65535}function ac(){this.Y=this.I;this.I=this.Ea();this.A-=5}function eh(){var a=this.L();jc(this,this.Ea(),this.Ea());this.Y=this.Y+a&65535;this.wh&&oc(this,this.Ha);this.A-=this.B.Xk}function fh(){jc(this,this.Ea(),this.Ea());this.A-=this.B.Wk}
function gh(){O[this.da()].call(this,Yd);this.A-=8}function hh(){this.Z|=36;this.A-=this.B.Kd}function bc(){N.call(this)}
var Lb=[function(){var a=this.da();Fg[a].call(this,Wc)},function(){Gg[this.da()].call(this,dd)},function(){Hg[this.da()].call(this,Wc)},function(){O[this.da()].call(this,dd)},function(){this.H=this.H&-256|Wc.call(this,this.H&255,this.da());this.A--},function(){this.H=dd.call(this,this.H,this.L());this.A--},function(){L(this,this.qb.Aa);this.A-=this.B.If},function(){xc(this,this.Ea());this.A-=this.B.Zb},function(){Fg[this.da()].call(this,Xc)},function(){Gg[this.da()].call(this,ed)},function(){Hg[this.da()].call(this,
Xc)},function(){O[this.da()].call(this,ed)},function(){this.H=this.H&-256|Xc.call(this,this.H&255,this.da());this.A--},function(){this.H=ed.call(this,this.H,this.L());this.A--},function(){L(this,this.za.Aa);this.A-=this.B.If},function(){uc(this,this.Ea());this.A-=this.B.Zb},function(){Fg[this.da()].call(this,Yc)},function(){Gg[this.da()].call(this,fd)},function(){Hg[this.da()].call(this,Yc)},function(){O[this.da()].call(this,fd)},function(){this.H=this.H&-256|Yc.call(this,this.H&255,this.da());this.A--},
function(){this.H=fd.call(this,this.H,this.L());this.A--},function(){L(this,this.Vb.Aa);this.A-=this.B.If},function(){wc(this,this.Ea());this.A-=this.B.Zb},function(){Fg[this.da()].call(this,Zc)},function(){Gg[this.da()].call(this,gd)},function(){Hg[this.da()].call(this,Zc)},function(){O[this.da()].call(this,gd)},function(){this.H=this.H&-256|Zc.call(this,this.H&255,this.da());this.A--},function(){this.H=gd.call(this,this.H,this.L());this.A--},function(){L(this,this.ac.Aa);this.A-=this.B.If},function(){vc(this,
this.Ea());this.A-=this.B.Zb},function(){Fg[this.da()].call(this,$c)},function(){Gg[this.da()].call(this,hd)},function(){Hg[this.da()].call(this,$c)},function(){O[this.da()].call(this,hd)},function(){this.H=this.H&-256|$c.call(this,this.H&255,this.da());this.A--},function(){this.H=hd.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.qb;this.A-=this.B.Kd},function(){var a=this.H&255,b=Cc(this),c=this.X&this.ca;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.H=this.H&
-256|(this.X=this.ia=a&255);this.ca=65536;c&&(this.X|=this.ca);b?Lc(this):Hc(this);this.A-=this.B.ne},function(){Fg[this.da()].call(this,ad)},function(){Gg[this.da()].call(this,id)},function(){Hg[this.da()].call(this,ad)},function(){O[this.da()].call(this,id)},function(){this.H=this.H&-256|ad.call(this,this.H&255,this.da());this.A--},function(){this.H=id.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.za;this.A-=this.B.Kd},function(){var a=this.H&255,b=Cc(this),c=this.X&
this.ca;if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.H=this.H&-256|(this.X=this.ia=a&255);this.ca=65536;c&&(this.X|=this.ca);b?Lc(this):Hc(this);this.A-=this.B.ne},function(){Fg[this.da()].call(this,bd)},function(){Gg[this.da()].call(this,jd)},function(){Hg[this.da()].call(this,bd)},function(){O[this.da()].call(this,jd)},function(){this.H=this.H&-256|bd.call(this,this.H&255,this.da());this.A--},function(){this.H=jd.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.Vb;
this.A-=this.B.Kd},function(){var a=this.H&255,b=this.H>>8,c,d=Cc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.X=a);this.ca=65536;c&&(this.X|=this.ca);d?Lc(this):Hc(this);this.A-=this.B.ne},function(){Fg[this.da()].call(this,cd)},function(){Gg[this.da()].call(this,kd)},function(){Hg[this.da()].call(this,cd)},function(){O[this.da()].call(this,kd)},function(){this.H=this.H&-256|cd.call(this,this.H&255,this.da());this.A--},function(){this.H=kd.call(this,this.H,this.L());this.A--},
function(){this.Z|=20;this.D=this.N=this.ac;this.A-=this.B.Kd},function(){var a=this.H&255,b=this.H>>8,c,d=Cc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.X=a);this.ca=65536;c&&(this.X|=this.ca);d?Lc(this):Hc(this);this.A-=this.B.ne},function(){this.la=this.H;this.H=(this.ia=this.H+1)&65535;this.X=this.H|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.J;this.J=(this.ia=this.J+1)&65535;this.X=this.J|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=
2},function(){this.la=this.K;this.K=(this.ia=this.K+1)&65535;this.X=this.K|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.C;this.C=(this.ia=this.C+1)&65535;this.X=this.C|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.Y;this.Y=(this.ia=this.Y+1)&65535;this.X=this.Y|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.I;this.I=(this.ia=this.I+1)&65535;this.X=this.I|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=
this.G;this.G=(this.ia=this.G+1)&65535;this.X=this.G|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.F;this.F=(this.ia=this.F+1)&65535;this.X=this.F|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.H;this.H=(this.ia=this.H-1)&65535;this.X=this.H|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.J;this.J=(this.ia=this.J-1)&65535;this.X=this.J|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.K;this.K=
(this.ia=this.K-1)&65535;this.X=this.K|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.C;this.C=(this.ia=this.C-1)&65535;this.X=this.C|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.Y;this.Y=(this.ia=this.Y-1)&65535;this.X=this.Y|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.I;this.I=(this.ia=this.I-1)&65535;this.X=this.I|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.G;this.G=(this.ia=this.G-
1)&65535;this.X=this.G|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.F;this.F=(this.ia=this.F-1)&65535;this.X=this.F|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){L(this,this.H);this.A-=this.B.gc},function(){L(this,this.J);this.A-=this.B.gc},function(){L(this,this.K);this.A-=this.B.gc},function(){L(this,this.C);this.A-=this.B.gc},function(){L(this,this.Y-2&65535);this.A-=this.B.gc},function(){L(this,this.I);this.A-=this.B.gc},function(){L(this,this.G);this.A-=
this.B.gc},function(){L(this,this.F);this.A-=this.B.gc},function(){this.H=this.Ea();this.A-=this.B.Zb},function(){this.J=this.Ea();this.A-=this.B.Zb},function(){this.K=this.Ea();this.A-=this.B.Zb},function(){this.C=this.Ea();this.A-=this.B.Zb},function(){this.Y=this.Ea();this.A-=this.B.Zb},function(){this.I=this.Ea();this.A-=this.B.Zb},function(){this.G=this.Ea();this.A-=this.B.Zb},function(){this.F=this.Ea();this.A-=this.B.Zb},Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Wg,Xg,Yg,Zg,$g,ah,Mg,Ng,Og,Pg,Qg,Rg,Sg,
Tg,Ug,Vg,Wg,Xg,Yg,Zg,$g,ah,bh,function(){Jg[this.da()].call(this,Id,this.L);this.A-=0>this.Fa?1:this.B.Sg},bh,function(){Jg[this.da()].call(this,Id,this.M);this.A-=0>this.Fa?1:this.B.Sg},function(){Fg[this.da()].call(this,Ud)},function(){Gg[this.da()].call(this,Vd)},function(){Hg[this.jg=this.da()].call(this,fe)},function(){O[this.jg=this.da()].call(this,ge)},function(){this.Z|=1;Fg[this.da()].call(this,Sd)},function(){this.Z|=1;Gg[this.da()].call(this,Sd)},function(){Hg[this.da()].call(this,Sd)},
function(){O[this.da()].call(this,Sd)},function(){var a=this.da();switch((a&56)>>3){case 0:this.Ab=this.qb.Aa;break;case 1:this.Ab=this.za.Aa;break;case 2:this.Ab=this.Vb.Aa;break;case 3:this.Ab=this.ac.Aa;break;default:N.call(this);return}this.Z|=1;Gg[a].call(this,Td)},function(){this.Z|=1;this.D=this.N=this.ml;O[this.da()].call(this,Zd)},function(){var a,b=this.da(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Da){F.call(this);return}switch(c){case 1:a=
this.J;break;case 4:a=this.Y;break;case 5:a=this.I;break;case 6:a=this.G;break;case 7:a=this.F}}O[b].call(this,Sd);switch(c){case 0:xc(this,this.H);this.H=a;break;case 1:uc(this,this.J);this.J=a;break;case 2:wc(this,this.K);this.K=a;break;case 3:vc(this,this.C);this.C=a;break;case 4:xc(this,this.Y);this.Y=a;break;case 5:uc(this,this.I);this.I=a;break;case 6:wc(this,this.G);this.G=a;break;case 7:vc(this,this.F),this.F=a}},function(){this.Z|=1;Jg[this.da()].call(this,Jd,this.Ea)},function(){this.A-=
3},function(){var a=this.H;this.H=this.J;this.J=a;this.A-=3},function(){var a=this.H;this.H=this.K;this.K=a;this.A-=3},function(){var a=this.H;this.H=this.C;this.C=a;this.A-=3},function(){var a=this.H;this.H=this.Y;this.Y=a;this.A-=3},function(){var a=this.H;this.H=this.I;this.I=a;this.A-=3},function(){var a=this.H;this.H=this.G;this.G=a;this.A-=3},function(){var a=this.H;this.H=this.F;this.F=a;this.A-=3},function(){this.H=this.H<<24>>24&65535;this.A-=2},function(){this.K=this.H&32768?65535:0;this.A-=
this.B.dk},function(){var a=this.L(),b=this.L();L(this,this.za.Aa);L(this,this.va);jc(this,a,b);this.A-=this.B.gk},function(){N.call(this)},function(){L(this,mc(this));this.A-=this.B.fc},function(){kc(this,this.Ea());this.A-=this.B.Yb},function(){var a=this.H>>8;a&1?Kc(this):Gc(this);a&4?Bc(this)||(this.ia^=1):Bc(this)&&(this.ia^=1);a&16?Lc(this):Hc(this);a&64?Mc(this):Ic(this);a&128?Nc(this):Ec(this)&&(this.ia^=this.ca>>1|this.ca>>2,this.ka^=32896);this.A-=this.B.vb},function(){this.H=this.H&255|
(mc(this)&213)<<8;this.A-=this.B.vb},function(){this.H=this.H&-256|this.T(this.D,this.L());this.A-=this.B.yi},function(){this.H=this.U(this.D,this.L());this.A-=this.B.yi},function(){var a=this.L(),b=this.H;Qc(this,this.D.cc(a,0),b);this.A-=this.B.zi},function(){var a=this.L(),b=this.H;Rc(this,this.D.cc(a,1),b);this.A-=this.B.zi},function(){var a=1,b=0,c=this.B.Ai;this.ua&192&&(a=this.J,b=1,c=this.B.Ci,this.ua&256||(this.A-=this.B.Bi));if(a--){var d=this.Ga&1024?-1:1,e=this.T(this.D,this.G);Qc(this,
this.nb.cc(this.F,0),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.Ai;this.ua&192&&(a=this.J,b=1,c=this.B.Ci,this.ua&256||(this.A-=this.B.Bi));if(a--){var d=this.Ga&1024?-2:2,e=this.U(this.D,this.G);Rc(this,this.nb.cc(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.ki;this.ua&192&&(a=this.J,b=1,c=this.B.mi,
this.ua&256||(this.A-=this.B.li));if(a--){var d=this.Ga&1024?-1:1,e=this.T(this.D,this.G),f=this.O(this.nb,this.F);cd.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.lb;this.J-=b;a&&Dc(this)==(this.ua&64)&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.ki;this.ua&192&&(a=this.J,b=1,c=this.B.mi,this.ua&256||(this.A-=this.B.li));if(a--){var d=this.Ga&1024?-2:2,e=this.U(this.D,this.G),f=this.P(this.nb,this.F);kd.call(this,e,f);this.G=this.G+d&65535;
this.F=this.F+d&65535;this.A-=c-this.B.lb;this.J-=b;a&&Dc(this)==(this.ua&64)&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){this.X=this.ia=this.ka=this.H&255&this.da();this.ca=256;this.A-=this.B.le},function(){this.X=this.ia=this.ka=this.H&this.L();this.ca=65536;this.A-=this.B.le},function(){var a=1,b=0,c=this.B.Li;this.ua&192&&(a=this.J,b=1,c=this.B.Ni,this.ua&256||(this.A-=this.B.Mi));if(a--){var d=this.H;Qc(this,this.nb.cc(this.F,0),d);this.F=this.F+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=
b;a&&(J(this,-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.Li;this.ua&192&&(a=this.J,b=1,c=this.B.Ni,this.ua&256||(this.A-=this.B.Mi));if(a--){var d=this.H;Rc(this,this.nb.cc(this.F,1),d);this.F=this.F+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.si;this.ua&192&&(a=this.J,b=1,c=this.B.ui,this.ua&256||(this.A-=this.B.ti));a--&&(this.H=this.H&-256|this.T(this.D,this.G),this.G=this.G+(this.Ga&1024?-1:1)&65535,this.A-=c,this.J-=b,a&&
(J(this,this.ua&16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.si;this.ua&192&&(a=this.J,b=1,c=this.B.ui,this.ua&256||(this.A-=this.B.ti));a--&&(this.H=this.U(this.D,this.G),this.G=this.G+(this.Ga&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(J(this,this.ua&16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.Fi;this.ua&192&&(a=this.J,b=1,c=this.B.Hi,this.ua&256||(this.A-=this.B.Gi));a--&&(cd.call(this,this.H&255,this.O(this.nb,this.F)),this.F=this.F+(this.Ga&1024?-1:1)&65535,this.A-=c-this.B.lb,
this.J-=b,a&&Dc(this)==(this.ua&64)&&(J(this,-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.Fi;this.ua&192&&(a=this.J,b=1,c=this.B.Hi,this.ua&256||(this.A-=this.B.Gi));a--&&(kd.call(this,this.H,this.P(this.nb,this.F)),this.F=this.F+(this.Ga&1024?-2:2)&65535,this.A-=c-this.B.lb,this.J-=b,a&&Dc(this)==(this.ua&64)&&(J(this,-2),this.Z|=256))},function(){this.H=this.H&-256|this.da();this.A-=this.B.vb},function(){this.J=this.J&-256|this.da();this.A-=this.B.vb},function(){this.K=this.K&-256|this.da();
this.A-=this.B.vb},function(){this.C=this.C&-256|this.da();this.A-=this.B.vb},function(){this.H=this.H&255|this.da()<<8;this.A-=this.B.vb},function(){this.J=this.J&255|this.da()<<8;this.A-=this.B.vb},function(){this.K=this.K&255|this.da()<<8;this.A-=this.B.vb},function(){this.C=this.C&255|this.da()<<8;this.A-=this.B.vb},function(){this.H=this.L();this.A-=this.B.vb},function(){this.J=this.L();this.A-=this.B.vb},function(){this.K=this.L();this.A-=this.B.vb},function(){this.C=this.L();this.A-=this.B.vb},
function(){this.Y=this.L();this.A-=this.B.vb},function(){this.I=this.L();this.A-=this.B.vb},function(){this.G=this.L();this.A-=this.B.vb},function(){this.F=this.L();this.A-=this.B.vb},ch,dh,ch,dh,function(){O[this.da()].call(this,ae)},function(){O[this.da()].call(this,$d)},function(){this.Z|=1;Ig[this.da()].call(this,Kd,this.da)},function(){this.Z|=1;Jg[this.da()].call(this,Kd,this.L)},eh,fh,eh,fh,function(){Uc.call(this,3,null,this.B.xk)},function(){var a=this.da(),b;a:{b=this.ag[a];if(void 0!==
b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],this.Ha)){b=!1;break a}b=!0}b?Uc.call(this,a,null,0):this.A--},function(){Fc(this)?Uc.call(this,4,null,this.B.yk):this.A-=this.B.zk},function(){jc(this,this.Ea(),this.Ea());kc(this,this.Ea());this.vh&&oc(this,this.Ha);this.A-=this.B.vk},function(){Ig[this.da()].call(this,Ld,Cd)},function(){Jg[this.da()].call(this,Md,Cd)},function(){Ig[this.da()].call(this,Ld,Dd)},function(){Jg[this.da()].call(this,Md,Dd)},function(){var a=this.da(),b=this.H&255;
this.H=(b/a&255)<<8|b%a;this.ca=256;this.X=this.ia=b;this.A-=this.B.ak},function(){var a=this.da();this.X=this.ia=this.H=(this.H>>8)*a+this.H&255;this.ca=256;this.A-=this.B.$j},function(){this.H=this.H&-256|(yc(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.T(this.D,this.C+(this.H&255)&65535);this.A-=this.B.Zk},gh,gh,gh,gh,gh,gh,gh,gh,function(){var a=this.M();(this.J=this.J-1&65535)&&this.X&this.ca-1?(I(this,this.va+a),this.A-=this.B.Gk):this.A-=this.B.vi},function(){var a=this.M();!(this.J=
this.J-1&65535)||this.X&this.ca-1?this.A-=this.B.xi:(I(this,this.va+a),this.A-=this.B.wi)},function(){var a=this.M();(this.J=this.J-1&65535)?(I(this,this.va+a),this.A-=this.B.Fk):this.A-=this.B.vi},function(){var a=this.M();this.J?this.A-=this.B.xi:(I(this,this.va+a),this.A-=this.B.wi)},function(){var a=this.da();this.H=this.H&-256|cb(this.qa,a,this.Ha-2);this.A-=this.B.pi},function(){var a=this.da();this.H=cb(this.qa,a,this.Ha-1)|cb(this.qa,a+1&65535,this.Ha-2)<<8;this.A-=this.B.pi},function(){var a=
this.da();eb(this.qa,a,this.H&255,this.Ha-2);this.A-=this.B.Ei},function(){var a=this.da();eb(this.qa,a,this.H&255,this.Ha-2);eb(this.qa,a+1&65535,this.H>>8,this.Ha-2);this.A-=this.B.Ei},function(){var a=this.L();L(this,this.va);I(this,this.va+a);this.A-=this.B.ek},function(){var a=this.L();I(this,this.va+a);this.A-=this.B.qi},function(){jc(this,this.L(),this.L());this.A-=this.B.Bk},function(){var a=this.M();I(this,this.va+a);this.A-=this.B.qi},function(){this.H=this.H&-256|cb(this.qa,this.K,this.Ha-
1);this.A-=this.B.oi},function(){this.H=cb(this.qa,this.K,this.Ha-1)|cb(this.qa,this.K+1&65535,this.Ha-1)<<8;this.A-=this.B.oi},function(){eb(this.qa,this.K,this.H&255,this.Ha-1);this.A-=this.B.Di},function(){eb(this.qa,this.K,this.H&255,this.Ha-1);eb(this.qa,this.K+1&65535,this.H>>8,this.Ha-1);this.A-=this.B.Di},hh,hh,function(){this.Z|=132;this.A-=this.B.Id},function(){this.Z|=68;this.A-=this.B.Id},function(){this.cb|=4;this.A-=2;this.Ga&512||mb(this)},function(){yc(this)?Gc(this):Kc(this);this.A-=
2},function(){this.wb=-1;Ig[this.da()].call(this,Od,Fd);0<=this.wb&&(this.H=this.wb)},function(){this.wb=-1;Jg[this.da()].call(this,Pd,Fd);0<=this.wb&&(this.H=this.wb,this.K=this.Qf)},function(){this.X&=~this.ca;this.A-=2},function(){this.X|=this.ca;this.A-=2},function(){this.Ga&=-513;this.A-=this.B.ck},function(){this.Ga|=512;this.Z|=4;this.A-=2},function(){this.Ga&=-1025;this.A-=2},function(){this.Ga|=1024;this.A-=2},function(){Ig[this.da()].call(this,cc,Fd)},function(){Jg[this.da()].call(this,
this.B.ek},function(){var a=this.L(),b=this.L();L(this,this.za.Aa);L(this,this.va);jc(this,a,b);this.A-=this.B.hk},function(){N.call(this)},function(){L(this,mc(this));this.A-=this.B.gc},function(){kc(this,this.Ea());this.A-=this.B.Zb},function(){var a=this.H>>8;a&1?Kc(this):Gc(this);a&4?Bc(this)||(this.ia^=1):Bc(this)&&(this.ia^=1);a&16?Lc(this):Hc(this);a&64?Mc(this):Ic(this);a&128?Nc(this):Ec(this)&&(this.ia^=this.ca>>1|this.ca>>2,this.la^=32896);this.A-=this.B.zb},function(){this.H=this.H&255|
(mc(this)&213)<<8;this.A-=this.B.zb},function(){this.H=this.H&-256|this.T(this.D,this.L());this.A-=this.B.zi},function(){this.H=this.U(this.D,this.L());this.A-=this.B.zi},function(){var a=this.L(),b=this.H;Qc(this,this.D.dc(a,0),b);this.A-=this.B.Ai},function(){var a=this.L(),b=this.H;Rc(this,this.D.dc(a,1),b);this.A-=this.B.Ai},function(){var a=1,b=0,c=this.B.Bi;this.ua&192&&(a=this.J,b=1,c=this.B.Di,this.ua&256||(this.A-=this.B.Ci));if(a--){var d=this.Ga&1024?-1:1,e=this.T(this.D,this.G);Qc(this,
this.qb.dc(this.F,0),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.Bi;this.ua&192&&(a=this.J,b=1,c=this.B.Di,this.ua&256||(this.A-=this.B.Ci));if(a--){var d=this.Ga&1024?-2:2,e=this.U(this.D,this.G);Rc(this,this.qb.dc(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.li;this.ua&192&&(a=this.J,b=1,c=this.B.ni,
this.ua&256||(this.A-=this.B.mi));if(a--){var d=this.Ga&1024?-1:1,e=this.T(this.D,this.G),f=this.O(this.qb,this.F);cd.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.ob;this.J-=b;a&&Dc(this)==(this.ua&64)&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.li;this.ua&192&&(a=this.J,b=1,c=this.B.ni,this.ua&256||(this.A-=this.B.mi));if(a--){var d=this.Ga&1024?-2:2,e=this.U(this.D,this.G),f=this.P(this.qb,this.F);kd.call(this,e,f);this.G=this.G+d&65535;
this.F=this.F+d&65535;this.A-=c-this.B.ob;this.J-=b;a&&Dc(this)==(this.ua&64)&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){this.X=this.ia=this.la=this.H&255&this.da();this.ca=256;this.A-=this.B.ne},function(){this.X=this.ia=this.la=this.H&this.L();this.ca=65536;this.A-=this.B.ne},function(){var a=1,b=0,c=this.B.Mi;this.ua&192&&(a=this.J,b=1,c=this.B.Oi,this.ua&256||(this.A-=this.B.Ni));if(a--){var d=this.H;Qc(this,this.qb.dc(this.F,0),d);this.F=this.F+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=
b;a&&(J(this,-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.Mi;this.ua&192&&(a=this.J,b=1,c=this.B.Oi,this.ua&256||(this.A-=this.B.Ni));if(a--){var d=this.H;Rc(this,this.qb.dc(this.F,1),d);this.F=this.F+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.ti;this.ua&192&&(a=this.J,b=1,c=this.B.vi,this.ua&256||(this.A-=this.B.ui));a--&&(this.H=this.H&-256|this.T(this.D,this.G),this.G=this.G+(this.Ga&1024?-1:1)&65535,this.A-=c,this.J-=b,a&&
(J(this,this.ua&16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.ti;this.ua&192&&(a=this.J,b=1,c=this.B.vi,this.ua&256||(this.A-=this.B.ui));a--&&(this.H=this.U(this.D,this.G),this.G=this.G+(this.Ga&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(J(this,this.ua&16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.Gi;this.ua&192&&(a=this.J,b=1,c=this.B.Ii,this.ua&256||(this.A-=this.B.Hi));a--&&(cd.call(this,this.H&255,this.O(this.qb,this.F)),this.F=this.F+(this.Ga&1024?-1:1)&65535,this.A-=c-this.B.ob,
this.J-=b,a&&Dc(this)==(this.ua&64)&&(J(this,-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.Gi;this.ua&192&&(a=this.J,b=1,c=this.B.Ii,this.ua&256||(this.A-=this.B.Hi));a--&&(kd.call(this,this.H,this.P(this.qb,this.F)),this.F=this.F+(this.Ga&1024?-2:2)&65535,this.A-=c-this.B.ob,this.J-=b,a&&Dc(this)==(this.ua&64)&&(J(this,-2),this.Z|=256))},function(){this.H=this.H&-256|this.da();this.A-=this.B.zb},function(){this.J=this.J&-256|this.da();this.A-=this.B.zb},function(){this.K=this.K&-256|this.da();
this.A-=this.B.zb},function(){this.C=this.C&-256|this.da();this.A-=this.B.zb},function(){this.H=this.H&255|this.da()<<8;this.A-=this.B.zb},function(){this.J=this.J&255|this.da()<<8;this.A-=this.B.zb},function(){this.K=this.K&255|this.da()<<8;this.A-=this.B.zb},function(){this.C=this.C&255|this.da()<<8;this.A-=this.B.zb},function(){this.H=this.L();this.A-=this.B.zb},function(){this.J=this.L();this.A-=this.B.zb},function(){this.K=this.L();this.A-=this.B.zb},function(){this.C=this.L();this.A-=this.B.zb},
function(){this.Y=this.L();this.A-=this.B.zb},function(){this.I=this.L();this.A-=this.B.zb},function(){this.G=this.L();this.A-=this.B.zb},function(){this.F=this.L();this.A-=this.B.zb},ch,dh,ch,dh,function(){O[this.da()].call(this,ae)},function(){O[this.da()].call(this,$d)},function(){this.Z|=1;Ig[this.da()].call(this,Kd,this.da)},function(){this.Z|=1;Jg[this.da()].call(this,Kd,this.L)},eh,fh,eh,fh,function(){Uc.call(this,3,null,this.B.yk)},function(){var a=this.da(),b;a:{b=this.Zf[a];if(void 0!==
b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],this.Ha)){b=!1;break a}b=!0}b?Uc.call(this,a,null,0):this.A--},function(){Fc(this)?Uc.call(this,4,null,this.B.zk):this.A-=this.B.Ak},function(){jc(this,this.Ea(),this.Ea());kc(this,this.Ea());this.wh&&oc(this,this.Ha);this.A-=this.B.wk},function(){Ig[this.da()].call(this,Ld,Cd)},function(){Jg[this.da()].call(this,Md,Cd)},function(){Ig[this.da()].call(this,Ld,Dd)},function(){Jg[this.da()].call(this,Md,Dd)},function(){var a=this.da(),b=this.H&255;
this.H=(b/a&255)<<8|b%a;this.ca=256;this.X=this.ia=b;this.A-=this.B.bk},function(){var a=this.da();this.X=this.ia=this.H=(this.H>>8)*a+this.H&255;this.ca=256;this.A-=this.B.ak},function(){this.H=this.H&-256|(yc(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.T(this.D,this.C+(this.H&255)&65535);this.A-=this.B.$k},gh,gh,gh,gh,gh,gh,gh,gh,function(){var a=this.M();(this.J=this.J-1&65535)&&this.X&this.ca-1?(I(this,this.va+a),this.A-=this.B.Hk):this.A-=this.B.wi},function(){var a=this.M();!(this.J=
this.J-1&65535)||this.X&this.ca-1?this.A-=this.B.yi:(I(this,this.va+a),this.A-=this.B.xi)},function(){var a=this.M();(this.J=this.J-1&65535)?(I(this,this.va+a),this.A-=this.B.Gk):this.A-=this.B.wi},function(){var a=this.M();this.J?this.A-=this.B.yi:(I(this,this.va+a),this.A-=this.B.xi)},function(){var a=this.da();this.H=this.H&-256|cb(this.ra,a,this.Ha-2);this.A-=this.B.qi},function(){var a=this.da();this.H=cb(this.ra,a,this.Ha-1)|cb(this.ra,a+1&65535,this.Ha-2)<<8;this.A-=this.B.qi},function(){var a=
this.da();eb(this.ra,a,this.H&255,this.Ha-2);this.A-=this.B.Fi},function(){var a=this.da();eb(this.ra,a,this.H&255,this.Ha-2);eb(this.ra,a+1&65535,this.H>>8,this.Ha-2);this.A-=this.B.Fi},function(){var a=this.L();L(this,this.va);I(this,this.va+a);this.A-=this.B.fk},function(){var a=this.L();I(this,this.va+a);this.A-=this.B.ri},function(){jc(this,this.L(),this.L());this.A-=this.B.Ck},function(){var a=this.M();I(this,this.va+a);this.A-=this.B.ri},function(){this.H=this.H&-256|cb(this.ra,this.K,this.Ha-
1);this.A-=this.B.pi},function(){this.H=cb(this.ra,this.K,this.Ha-1)|cb(this.ra,this.K+1&65535,this.Ha-1)<<8;this.A-=this.B.pi},function(){eb(this.ra,this.K,this.H&255,this.Ha-1);this.A-=this.B.Ei},function(){eb(this.ra,this.K,this.H&255,this.Ha-1);eb(this.ra,this.K+1&65535,this.H>>8,this.Ha-1);this.A-=this.B.Ei},hh,hh,function(){this.Z|=132;this.A-=this.B.Kd},function(){this.Z|=68;this.A-=this.B.Kd},function(){this.gb|=4;this.A-=2;this.Ga&512||mb(this)},function(){yc(this)?Gc(this):Kc(this);this.A-=
2},function(){this.Ab=-1;Ig[this.da()].call(this,Od,Fd);0<=this.Ab&&(this.H=this.Ab)},function(){this.Ab=-1;Jg[this.da()].call(this,Pd,Fd);0<=this.Ab&&(this.H=this.Ab,this.K=this.Of)},function(){this.X&=~this.ca;this.A-=2},function(){this.X|=this.ca;this.A-=2},function(){this.Ga&=-513;this.A-=this.B.dk},function(){this.Ga|=512;this.Z|=4;this.A-=2},function(){this.Ga&=-1025;this.A-=2},function(){this.Ga|=1024;this.A-=2},function(){Ig[this.da()].call(this,cc,Fd)},function(){Jg[this.da()].call(this,
ec,Fd)}];
function R(a){v.call(this,"ChipSet",a,R);this.Da=a.model;this.Da=void 0!==this.Da?parseInt(this.Da,10):ih;this.Lb=0;var b=a.sw1;if(b)this.Lb=jh(b,kh|lh.ul);else{this.pd=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.pd=b);if(b=this.pd.length)this.Lb|=mh.ih,b--,this.Lb|=(b&3)<<mh.Ze;if(b=a.monitor||(this.Da<nh?"mono":"ega"),void 0!==oh[b])this.Lb|=oh[b]<<lh.Ze}this.Od=jh(a.sw2||"11110000",0);this.Rm=this.Da==ih?16:64;this.hf=this.jf=1;this.Da>=nh&&(this.hf=this.jf=2);this.Cg=a.scaleTimers||!1;
this.jo=a.rtcDate;this.Mj=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.yh=new webkitAudioContext);this.reset(!0);this.Na()}y(v,R);var ih=5150,nh=5170,oh={none:0,tv:1,color:2,mono:3,ega:0},mh={ih:1,ONE:0,bp:64,$o:128,zo:192,Ye:192,Ze:6},kh=12,lh={ap:16,so:32,ul:48,Ye:48,Ze:4};k=R.prototype;
k.zb=function(a,b,c,d){switch(c){case "sw1":return this.ra[c]=d,ph(this,c,d,this.Lb,{0:this.Da==ih?"Bootable Floppy Drive":"Loop on POST",1:this.Da==ih?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Da==ih)return this.ra[c]=d,ph(this,c,d,this.Od,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.ra[c]=d,!0}return!1};
k.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;this.La=a;this.Ma=C(a,"Keyboard");this.$k=Math.round(c.ba.kd/1193181);bb(b,this,qh);db(b,this,rh);this.Da<nh?(bb(b,this,sh),db(b,this,th)):(bb(b,this,uh),db(b,this,vh))};k.Qb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Pb=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.Lc=this.Lb;this.ue=this.Od;wh(this);this.Ua=Array(this.hf);for(b=0;b<this.hf;b++)xh(this,b);this.rb=Array(this.jf);yh(this,0,32);1<this.jf&&yh(this,1,160);this.uh=void 0;this.Mb=Array(3);for(b=0;b<this.Mb.length;b++)zh(this,b);this.gf=this.sh=this.jc=this.mg=void 0;this.lg=0;if(this.Da>=nh){this.ib=16;this.Zc=0;this.Mc=16;this.gg=0;this.Wd=160;512<=Ah(this)&&(this.Wd|=16);3==Bh(this)&&(this.Wd|=64);this.qh=3;this.jg=0;this.Nb=Array(7);this.De=0;a&&(this.oa=Array(64));
Ch(this,this.jo);for(a=21;24>=a;a++)this.oa[a]=0;for(a=14;46>a;a++)void 0===this.oa[a]&&(this.oa[a]=0);this.oa[20]=this.Lc&(lh.Ye|2|mh.ih|mh.Ye);this.oa[16]=Dh(this,0)<<4|Dh(this,1);Eh(this)}};
function Ch(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.Zb("CMOS date invalid ("+b+"), using "+c)):b&&a.Zb("CMOS date: "+c);a.oa[0]=c.getSeconds();a.oa[1]=0;a.oa[2]=c.getMinutes();a.oa[3]=0;a.oa[4]=c.getHours();a.oa[5]=0;a.oa[6]=c.getDay()+1;a.oa[7]=c.getDate();a.oa[8]=c.getMonth()+1;c=c.getFullYear();a.oa[9]=c%100;c/=100;a.oa[50]=c%10|c/10<<4;a.vf=-1;a.oa[10]=38;a.oa[11]=2;a.oa[12]=0;a.oa[13]=128}
function R(a){v.call(this,"ChipSet",a,R);this.Da=(this.Da=a.model)?parseInt(this.Da,10):ih;this.Mb=0;var b=a.sw1;if(b)this.Mb=jh(b,kh|lh.vl);else{this.rd=[360,360];(b=a.floppies)&&b.length&&(this.rd=b);if(b=this.rd.length)this.Mb|=mh.jh,b--,this.Mb|=(b&3)<<mh.$e;if(b=a.monitor||(this.Da<nh?"mono":"ega"),void 0!==oh[b])this.Mb|=oh[b]<<lh.$e}this.Qd=jh(a.sw2||"11110000",0);this.Sm=this.Da==ih?16:64;this.pg=this.qg=1;this.Da>=nh&&(this.pg=this.qg=2);this.Dg=a.scaleTimers||!1;this.lo=a.rtcDate;this.Nj=
!1;a.sound&&window&&"webkitAudioContext"in window&&(this.zh=new window.webkitAudioContext);this.reset(!0);this.Na()}y(v,R);var ih=5150,nh=5170,oh={none:0,tv:1,color:2,mono:3,ega:0},mh={jh:1,ONE:0,dp:64,bp:128,Bo:192,Ze:192,$e:6},kh=12,lh={cp:16,uo:32,vl:48,Ze:48,$e:4};k=R.prototype;
k.Bb=function(a,b,c,d){switch(c){case "sw1":return this.qa[c]=d,ph(this,c,d,this.Mb,{0:this.Da==ih?"Bootable Floppy Drive":"Loop on POST",1:this.Da==ih?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Da==ih)return this.qa[c]=d,ph(this,c,d,this.Qd,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.qa[c]=d,!0}return!1};
k.oc=function(a,b,c,d){this.ra=b;this.ka=c;this.Va=d;this.Ma=a;this.Ka=B(a,"Keyboard");this.al=Math.round(c.ba.ld/1193181);bb(b,this,qh);db(b,this,rh);this.Da<nh?(bb(b,this,sh),db(b,this,th)):(bb(b,this,uh),db(b,this,vh))};k.Sb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Rb=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.Mc=this.Mb;this.we=this.Qd;wh(this);this.Xa=Array(this.pg);for(b=0;b<this.pg;b++)xh(this,b);this.ub=Array(this.qg);yh(this,0,32);1<this.qg&&yh(this,1,160);this.vh=null;this.Nb=Array(3);for(b=0;b<this.Nb.length;b++)zh(this,b);this.hf=this.th=this.kc=this.lg=null;this.kg=0;if(this.Da>=nh){this.lb=16;this.$c=0;this.Nc=16;this.fg=0;this.Xd=160;512<=Ah(this)&&(this.Xd|=16);3==Bh(this)&&(this.Xd|=64);this.rh=3;this.ig=0;this.Ob=Array(7);this.Fe=0;a&&(this.oa=Array(64));Ch(this,
this.lo);for(a=21;24>=a;a++)this.oa[a]=0;for(a=14;46>a;a++)void 0===this.oa[a]&&(this.oa[a]=0);this.oa[20]=this.Mc&(lh.Ze|2|mh.jh|mh.Ze);this.oa[16]=Dh(this,0)<<4|Dh(this,1);Eh(this)}};
function Ch(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.$b("CMOS date invalid ("+b+"), using "+c)):b&&a.$b("CMOS date: "+c);a.oa[0]=c.getSeconds();a.oa[1]=0;a.oa[2]=c.getMinutes();a.oa[3]=0;a.oa[4]=c.getHours();a.oa[5]=0;a.oa[6]=c.getDay()+1;a.oa[7]=c.getDate();a.oa[8]=c.getMonth()+1;c=c.getFullYear();a.oa[9]=c%100;c/=100;a.oa[50]=c%10|c/10<<4;a.tf=-1;a.oa[10]=38;a.oa[11]=2;a.oa[12]=0;a.oa[13]=128}
function Eh(a){for(var b=0,c=16;46>c;c++)b+=a.oa[c];a.oa[47]=b&255;a.oa[46]=b>>8}
k.save=function(){var a=new G(this);a.set(0,[this.Lb,this.Od,this.Lc,this.ue]);for(var b=[],c=0;c<this.Ua;c++){var d=[],e=this.Ua[c];d[0]=e.ud;d[1]=e.rh;d[2]=e.wj;d[3]=e.Eb;for(var f=[],h=0;h<e.xb.length;h++){var g=[],m=e.xb[h];g[0]=m.jd;g[1]=m.rj;g[2]=m.qc;g[3]=m.Cb;g[4]=m.Wb;g[5]=m.mode;g[6]=m.ng;g[8]=m.fo;g[9]=m.ho;f[h]=g}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.rb.length;c++)d=[],e=this.rb[c],d[0]=e.Cf,d[1]=e.Sd,d[2]=e.ld,d[3]=e.$c,d[4]=e.Db,d[5]=e.Dc,d[6]=e.Xd,d[7]=e.ff,b[c]=d;a.set(2,
[b]);b=[];for(c=0;c<this.Mb.length;c++)d=[],e=this.Mb[c],d[0]=e.qc,d[1]=e.Hc,d[2]=e.Wb,d[3]=e.nf,d[4]=e.yj,d[5]=e.mode,d[6]=e.Rf,d[7]=e.xd,d[8]=e.ee,d[9]=e.Pc,d[10]=e.sf,d[11]=e.He,d[12]=e.Ld,b[c]=d;a.set(3,[this.uh,b]);a.set(4,[this.mg,this.jc,this.sh,this.gf,this.lg]);this.Da>=nh&&(a.set(5,[this.ib,this.Zc,this.Mc,this.gg,this.Wd,this.qh]),a.set(6,[this.jg,this.Nb,this.De,this.oa,this.vf]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Lb=b[0];this.Od=b[1];this.Lc=b[2];this.ue=b[3];b=a[1];this.Ua=Array(this.hf);for(c=0;c<this.hf;c++)xh(this,c,1==b.length?b[0][c]:b);b=a[2];this.rb=Array(this.jf);for(c=0;c<this.jf;c++)yh(this,c,0===c?32:160,b[0][c]);b=a[3];this.uh=b[0];this.Mb=Array(3);for(c=0;c<this.Mb.length;c++)zh(this,c,b[1][c]);b=a[4];this.mg=b[0];this.jc=b[1];this.sh=b[2];this.gf=b[3];this.lg=b[4];if(b=a[5])this.ib=b[0],this.Zc=b[1],this.Mc=b[2],this.gg=b[3],this.Wd=b[4],this.qh=b[5];
if(b=a[6])this.jg=b[0],this.Nb=b[1],this.De=b[2],this.oa=b[3],this.vf=b[4],Ch(this);return!0};function xh(a,b,c){a=a.Ua[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.ud=c[0];a.rh=c[1];a.wj=c[2];a.Eb=c[3];a.Wm=b<<2;a.xb=Array(4);for(b=0;b<a.xb.length;b++)Fh(a,b,c[4][b])}function Fh(a,b,c){var d=a.xb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ea=a;d.Qj=b;d.jd=c[0];d.rj=c[1];d.qc=c[2];d.Cb=c[3];d.Wb=c[4];d.mode=c[5];d.ng=c[6];Gh(d,c[8],c[9])}
function Gh(a,b,c,d){"string"==typeof b&&(b=Ha(b));b&&(a.sg=null,a.fo=b.id,a.ho=c,a.rg=b,a.Rh=b[c],a.Tg=d)}function yh(a,b,c,d){a=a.rb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.Bp=b<<3;a.Cf=d[0];a.Sd=d[1];a.ld=d[2];a.$c=d[3];a.Db=d[4];a.Dc=d[5];a.Xd=d[6];a.ff=d[7]}
function zh(a,b,c){a=a.Mb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.qc=c[0];a.Hc=c[1];a.Wb=c[2];a.nf=c[3];a.yj=c[4];a.mode=c[5];a.Rf=c[6];a.xd=c[7];a.ee=c[8];a.Pc=c[9];a.sf=c[10];a.He=c[11];a.Ld=c[12]}function Ah(a,b){return((((b?a.Lb:a.Lc)&12)>>2)+1)*a.Rm+32*((b?a.Od:a.ue)&15)}function Hh(a,b){var c=b?a.Lb:a.Lc;return a.Da!=ih||c&mh.ih?((c&mh.Ye)>>mh.Ze)+1:0}
function Dh(a,b){if(b<Hh(a)){if(!a.pd)return 1;if(b<a.pd.length)switch(a.pd[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 Bh(a,b){return((b?a.Lb:a.Lc)&lh.Ye)>>lh.Ze}
function ph(a,b,c,d,e){for(var f="",h=1;8>=h;h++){var g="pcjs-bitCell";h||(g+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+h)+'" class="'+g+'" data-value="0">'+h+"</div>\n"}c.innerHTML=f;b=A(c,"pcjs-bitCell");c=null;for(h=0;h<b.length;h++)void 0!==e&&void 0!==e[h]&&(c=e[h]),c&&b[h].setAttribute("title",c),Ih(b[h],d&1<<h?!1:!0),b[h].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Ih(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Lb=
a.Lb&~e|(c?0:e);break;case "sw2":a.Od=a.Od&~e|(c?0:e)}wh(a)}}(a,b[h])}function Ih(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function wh(a){var b=a.ra.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(Ah(a,!0)+"Kb");d+=", "+c[Bh(a,!0)]+" Monitor";d+=", "+Hh(a,!0)+" Floppy Drives";if(void 0!==a.Lc&&a.Lc!=a.Lb||void 0!==a.ue&&a.ue!=a.Od)d+=" (Reset required)";b.innerHTML=d}}
function Jh(a,b,c){a=a.Ua[b];c=a.xb[c].Cb[a.Eb];a.Eb^=1;return c}function Kh(a,b,c,d){a=a.Ua[b];c=a.xb[c];c.Cb[a.Eb]=c.rj[a.Eb]=d;a.Eb^=1}function Lh(a,b,c){a=a.Ua[b];c=a.xb[c].Wb[a.Eb];a.Eb^=1;return c}function Mh(a,b,c,d){a=a.Ua[b];c=a.xb[c];c.Wb[a.Eb]=c.qc[a.Eb]=d;a.Eb^=1}function Nh(a,b){var c=a.Ua[b],d=c.ud|1;c.ud&=-16;return d}function Oh(a,b,c){a=a.Ua[b];b=c&3;a.ud=a.ud&~(16<<b)|(c&4)<<b+2;a.wj=c}function Ph(a,b,c){b=a.Ua[b];var d=c&3,e=b.xb[d];e.jd=c&4?!0:!1;e.jd||Qh(a,b.Wm+d)}
function Rh(a,b){for(var c=a.Ua[b],d=0;d<c.xb.length;d++)Fh(c,d)}function Sh(a,b,c){return a.Ua[b].xb[c].ng}function Th(a,b,c,d){a.Ua[b].xb[c].ng=d}function Uh(a,b,c,d,e){Gh(a.Ua[b>>2].xb[b&3],c,d,e)}function Qh(a,b,c){b=a.Ua[b>>2].xb[b&3];b.rg&&b.Rh&&b.Tg?(c&&(b.sg=c),b.jd||Vc(a,b,!0)):c&&c(!0)}
function Vc(a,b,c){c&&(b.count=b.Wb[1]<<8|b.Wb[0],b.ql=b.mode&12,b.Nj=b.Oc=!1);for(var d=!1;0<=b.count&&(c=b.ng<<16|b.Cb[1]<<8|b.Cb[0],4==b.ql?(d=!0,function(c){b.Rh.call(b.rg,b.Tg,-1,function(f,h){0>f&&(b.Nj||(b.Nj=!0),f=255);b.jd||Za(a.qa,c,f);(d=h)&&setTimeout(function(){Vh(b)||Vc(a,b)},0)})}(c)):8==b.ql?(c=Xa(a.qa,c),0>b.Rh.call(b.rg,b.Tg,c)&&(b.Oc=!0)):b.Oc=!0),!d&&!Vh(b););}
function Vh(a){if(!a.Oc&&0<=--a.count&&(a.mode&32?(a.Cb[0]--,0>a.Cb[0]&&(a.Cb[0]=255,a.Cb[1]--,0>a.Cb[1]&&(a.Cb[1]=255))):(a.Cb[0]++,255<a.Cb[0]&&(a.Cb[0]=0,a.Cb[1]++,255<a.Cb[1]&&(a.Cb[1]=0))),!a.jd))return!1;var b=a.ea;b.ud=b.ud&~(16<<a.Qj)|1<<a.Qj;a.mode&16||(a.jd=!0,a.rg=a.Tg=null);a.sg&&(a.sg(!a.Oc),a.sg=null);return!0}function Wh(a,b){var c=0,d=a.rb[b];if(void 0!==d.ff)switch(d.ff&3){case 2:c=d.Db;break;case 3:c=d.Dc}return c}
function Xh(a,b,c){var d=a.rb[b];if(c&16)d.ld=0,d.Sd[d.ld++]=c,d.$c=0,d.Xd=7,d.Db=d.Dc=0,d.ff=10;else if(c&8)d.ff=c;else{var e=c&224;if(e&32){var f=0;if(96==(e&96))f=1<<(c&7);else for(c=d.Xd+1;;){c&=7;e=1<<c;if(d.Dc&e){f=e;break}if(c++==d.Xd)break}d.Dc&f&&(d.Dc&=~f,Yh(a,b))}else 192==e&&(d.Xd=c&7)}}function ci(a,b,c){var d=a.rb[b];d.ld<d.Sd.length?(d.Sd[d.ld++]=c,2==d.ld&&d.Sd[0]&2&&d.ld++,3!=d.ld||d.Sd[0]&1||d.ld++):(d.$c=c,d=a.la,d.Z|=4,Yh(a,b,b||253!=c?0:6))}
function Yh(a,b,c){b=a.rb[b];var d=((b.Dc|b.$c)^255)&b.Db;a=a.la;a.ja&&(a.cb=d?a.cb|1:a.cb&-2);d&&c&&(b.Cf=c)}function di(a,b,c){var d=b>>3,e=a.rb[d];e.Db|=1<<(b&7);e.Cf=c||0;1==d&&(a.rb[0].Db|=4);Yh(a,d)}function ei(a,b){var c=b>>3,d=a.rb[c],e=1<<(b&7);d.Db&e&&(d.Db&=~e,1!=c||d.Db||(a.rb[0].Db&=-5),Yh(a,c))}
function Tc(a,b){void 0===b&&(b=0);var c=-1,d=a.rb[b];if(d.Cf)c=-2,d.Cf--;else for(var e=d.Db&((d.Dc|d.$c)^255),f=d.Xd+1;;){var f=f&7,h=1<<f;if(e&h){c=b||2!=f?d.Sd[1]+f:Tc(a,1);0<=c&&(d.Dc|=h,d.Db&=~h);break}if(f++==d.Xd)break}return c}function fi(a,b){var c=a.Mb[b];c.xd==c.ee&&gi(a,b);if(c.sf)return c.nf[c.xd++];hi(a,b);return c.Wb[c.xd++]}
function ii(a,b,c){var d=a.Mb[b];d.xd==d.ee&&gi(a,b);d.qc[d.xd++]=c;if(d.xd==d.ee){d.He&&0!=d.mode&&8!=d.mode||(d.sf=!1,d.Wb[0]=d.Hc[0]=d.qc[0],d.Wb[1]=d.Hc[1]=d.qc[1],d.Ld=rb(a.la,a.Cg),d.He=!0,d.Pc=0!=d.mode,0==b&&ei(a,0));2==b&&sb(a);if(0==b){var e=ji(a,0);2048<=e&&(a.la.Lg=Math.round(65536/e))}0==b&&0==d.mode&&16==d.Rf&&(b=a.la,b.na.uc&&(a=b.A-c*a.$k,b.A-=a,b.Rc-=a))}}k.Lm=function(){return null};
k.Vn=function(a,b){this.uh=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var h=this.Mb[c];h.Rf=f;h.mode=e;h.yj=d;h.qc=[0,0];h.Wb=[0,0];h.nf=[0,0];h.Pc=!1;h.sf=!1;h.He=!1;gi(this,c);0==c&&ei(this,0);2==c&&255==this.rb[0].$c&&77==this.jc&&(c=this.Mb[0],c.Hc[0]=c.qc[0],c.Hc[1]=c.qc[1],c.Ld=rb(this.la,this.Cg))}else hi(this,c),d=this.Mb[c],d.nf[0]=d.Wb[0],d.nf[1]=d.Wb[1],d.sf=!0,gi(this,c)}};function ji(a,b){var c=a.Mb[b],d=c.qc[1]<<8|c.qc[0];d||(d=1==c.ee?256:65536);return d}
function gi(a,b){var c=a.Mb[b];c.xd=32==c.Rf?1:0;c.ee=48==c.Rf?2:1}
function hi(a,b,c){var d=a.Mb[b];if(d.He&&(2!=b||a.jc&1)){var e=rb(a.la,a.Cg),f=(e-d.Ld)/a.$k|0;0>f&&(d.Ld=e,f=0);var h=ji(a,b),g=a.Mb[b],m=g.Hc[1]<<8|g.Hc[0];m||(m=1==g.ee?256:65536);g=m-f;0==d.mode?(0>=g&&(g=0),g||(d.Pc=!0,d.He=!1,b||di(a,0))):4==d.mode?(d.Pc=1!=g,0>=g&&(g=h+g,0>=g&&(g=h),d.Hc[0]=g&255,d.Hc[1]=g>>8,d.Ld=e,!b&&d.Pc&&di(a,0))):6==d.mode&&(g-=f,0>=g&&(d.Pc=!d.Pc,g=h+g,0>=g&&(g=h),d.Hc[0]=g&255,d.Hc[1]=g>>8,d.Ld=e,!b&&d.Pc&&di(a,0)));d.Wb[0]=g&255;d.Wb[1]=g>>8;c&&(a.Ld=0)}return d}
function tb(a,b){for(var c=0;c<a.Mb.length;c++)hi(a,c,b);if(a.Da>=nh){var c=0,d=a.la.ba.kd,e=rb(a.la,a.Cg);if(0<=a.vf&&(c=e-a.vf,Math.floor(c/d)&&60<=++a.oa[0]&&(a.oa[0]=0,60<=++a.oa[2]&&(a.oa[2]=0,24<=++a.oa[4])))){a.oa[4]=0;a.oa[6]=a.oa[6]%7+1;var f=a.oa[9],h=ja[a.oa[8]-1];28==h&&0===f%4&&(f%100||0===f%400)&&h++;++a.oa[7]>h&&(a.oa[7]=1,12<++a.oa[8]&&(a.oa[8]=1,a.oa[9]=(a.oa[9]+1)%100))}a.vf=e-c%d}}k.Dm=function(){var a=this.mg;this.gf&16&&(this.jc&128?a=this.Lc:this.Ma&&(a=ki(this.Ma)));return a};
k.On=function(a,b){this.mg=b};k.Em=function(){return this.jc};k.Pn=function(a,b){li(this,b);this.Ma&&mi(this.Ma,b&128?!1:!0,b&64?!0:!1)};function li(a,b){var c=!!(b&2),d=!!(a.jc&2);a.jc=b;c!=d&&sb(a,c)}k.Fm=function(){var a=0,a=this.Da==ih?this.jc&4?a|this.ue&15:a|this.ue>>4&1:this.jc&8?a|this.Lc>>4:a|this.Lc&15;this.jc&1&&hi(this,2).Pc&&(a=this.jc&2?a|32:a|16);return a};k.Qn=function(a,b){this.sh=b};k.Gm=function(){return this.gf};k.Rn=function(a,b){this.gf=b};
k.Ul=function(){var a=this.gg;this.ib&=-258;var b=this.Ma&&ki(this.Ma,!0);b&&ni(this,b);return a};k.gn=function(a,b){if(this.ib&8)switch(this.Zc){case 96:oi(this,b);break;case 209:pi(this,b);break;default:if(oi(this,this.Mc&-17),this.Ma){var c=-1;switch(b){case 255:var c=250,d=this.Ma;d.bc=[170];d.ja&&qi(d.ja)}ni(this,c)}}this.Zc=b;this.ib&=-9};k.Vl=function(){return this.jc&-209|(rb(this.la)&64?16:0)};k.hn=function(a,b){li(this,b)};
k.Wl=function(){var a=this.ib&255;this.ib&256&&(this.ib|=1,this.ib&=-257);return a};k.fn=function(a,b){this.Zc=b;this.ib|=8;var c=0;240<=this.Zc&&(c=this.Zc^15,this.Zc=240);switch(this.Zc){case 192:ni(this,this.Wd);break;case 173:oi(this,this.Mc|16);break;case 174:oi(this,this.Mc&-17);break;case 170:this.Ma&&ri(this.Ma,!0);oi(this,this.Mc|16);ni(this,85);pi(this,3);break;case 224:ni(this,this.Mc&16?0:1);break;case 240:c&1&&ic(this.la)}};
function oi(a,b){var c=!(a.Mc&16);a.Mc=b;a.ib=a.ib&-5|b&4;if(a.Ma){var d=!(b&16);mi(a.Ma,!!(b&8),d)&&ni(a,ki(a.Ma,!0));!c&&d&&ki(a.Ma)&&qi(a)}}function ni(a,b){0<=b&&(a.gg=b,a.ib&=-2,a.ib|=256)}function pi(a,b){a.qh=b;Ra(a.qa,!!(b&2));b&1||ic(a.la)}function qi(a){a.Da<nh?di(a,1,4):a.Mc&16||di(a,1,120)}k.jm=function(){return this.De};k.wn=function(a,b){this.De=b;this.lg=b&128?0:128};
k.km=function(){var a=this.De&63;if(13>=a){var b=this.oa[a];if(10>a){var c=!1;4!=a&&5!=a||this.oa[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.oa[11]&4||(c&&128<b&&(b-=48),b=b%10|b/10<<4)}else 10==a&&(this.oa[a]^=128);a=b}else a=this.oa[a];return a};k.xn=function(a,b){var c=this.De&63,d=this.oa,e;if(13>=c){if(e=b,10>c){var f=!1;this.oa[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12<e&&(e+=48),this.oa[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};k.Bm=function(){return this.jg};
k.Ln=function(a,b){this.jg=b};k.Nn=function(a,b){this.lg=b};function jh(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 sb(a,b){if(a.yh){void 0!==b?a.Mj=b:b=a.Mj&&a.la&&a.la.na.uc;var c=Math.round(1193181/ji(a,2));if(20>c||2E4<c)b=!1;b?a.Vc?a.Vc.frequency.value=c:(a.Vc=a.yh.createOscillator(),a.Vc.type=1,a.Vc.connect(a.yh.destination),a.Vc.frequency.value=c,a.Vc.noteOn(0)):a.Vc&&(a.Vc.noteOff(0),a.Vc.disconnect(),delete a.Vc)}}
var qh={0:function(){return Jh(this,0,0)},1:function(){return Lh(this,0,0)},2:function(){return Jh(this,0,1)},3:function(){return Lh(this,0,1)},4:function(){return Jh(this,0,2)},5:function(){return Lh(this,0,2)},6:function(){return Jh(this,0,3)},7:function(){return Lh(this,0,3)},8:function(){return Nh(this,0)},32:function(){return Wh(this,0)},33:function(){return this.rb[0].$c},64:function(){return fi(this,0)},65:function(){return fi(this,1)},66:function(){return fi(this,2)},67:R.prototype.Lm,129:function(){return Sh(this,
0,2)},130:function(){return Sh(this,0,3)},131:function(){return Sh(this,0,1)},135:function(){return Sh(this,0,0)}},sh={96:R.prototype.Dm,97:R.prototype.Em,98:R.prototype.Fm,99:R.prototype.Gm},uh={96:R.prototype.Ul,97:R.prototype.Vl,100:R.prototype.Wl,112:R.prototype.jm,113:R.prototype.km,128:R.prototype.Bm,132:function(){return this.Nb[0]},133:function(){return this.Nb[1]},134:function(){return this.Nb[2]},136:function(){return this.Nb[3]},137:function(){return Sh(this,1,2)},138:function(){return Sh(this,
1,3)},139:function(){return Sh(this,1,1)},140:function(){return this.Nb[4]},141:function(){return this.Nb[5]},142:function(){return this.Nb[6]},143:function(){return Sh(this,1,0)},160:function(){return Wh(this,1)},161:function(){return this.rb[1].$c},192:function(){return Jh(this,1,0)},194:function(){return Lh(this,1,0)},196:function(){return Jh(this,1,1)},198:function(){return Lh(this,1,1)},200:function(){return Jh(this,1,2)},202:function(){return Lh(this,1,2)},204:function(){return Jh(this,1,3)},
206:function(){return Lh(this,1,3)},208:function(){return Nh(this,1)}},rh={0:function(a,b){Kh(this,0,0,b)},1:function(a,b){Mh(this,0,0,b)},2:function(a,b){Kh(this,0,1,b)},3:function(a,b){Mh(this,0,1,b)},4:function(a,b){Kh(this,0,2,b)},5:function(a,b){Mh(this,0,2,b)},6:function(a,b){Kh(this,0,3,b)},7:function(a,b){Mh(this,0,3,b)},8:function(a,b){this.Ua[0].rh=b},9:function(a,b){Oh(this,0,b)},10:function(a,b){Ph(this,0,b)},11:function(a,b){this.Ua[0].xb[b&3].mode=b},12:function(){this.Ua[0].Eb=0},13:function(){Rh(this,
0)},32:function(a,b){Xh(this,0,b)},33:function(a,b){ci(this,0,b)},64:function(a,b){ii(this,0,b)},65:function(a,b){ii(this,1,b)},66:function(a,b){ii(this,2,b)},67:R.prototype.Vn,129:function(a,b){Th(this,0,2,b)},130:function(a,b){Th(this,0,3,b)},131:function(a,b){Th(this,0,1,b)},135:function(a,b){Th(this,0,0,b)}},th={96:R.prototype.On,97:R.prototype.Pn,98:R.prototype.Qn,99:R.prototype.Rn,160:R.prototype.Nn},vh={96:R.prototype.gn,97:R.prototype.hn,100:R.prototype.fn,112:R.prototype.wn,113:R.prototype.xn,
128:R.prototype.Ln,132:function(a,b){this.Nb[0]=b},133:function(a,b){this.Nb[1]=b},134:function(a,b){this.Nb[2]=b},136:function(a,b){this.Nb[3]=b},137:function(a,b){Th(this,1,2,b)},138:function(a,b){Th(this,1,3,b)},139:function(a,b){Th(this,1,1,b)},140:function(a,b){this.Nb[4]=b},141:function(a,b){this.Nb[5]=b},142:function(a,b){this.Nb[6]=b},143:function(a,b){Th(this,1,0,b)},160:function(a,b){Xh(this,1,b)},161:function(a,b){ci(this,1,b)},192:function(a,b){Kh(this,1,0,b)},194:function(a,b){Mh(this,
1,0,b)},196:function(a,b){Kh(this,1,1,b)},198:function(a,b){Mh(this,1,1,b)},200:function(a,b){Kh(this,1,2,b)},202:function(a,b){Mh(this,1,2,b)},204:function(a,b){Kh(this,1,3,b)},206:function(a,b){Mh(this,1,3,b)},208:function(a,b){this.Ua[1].rh=b},210:function(a,b){Oh(this,1,b)},212:function(a,b){Ph(this,1,b)},214:function(a,b){this.Ua[1].xb[b&3].mode=b},216:function(){this.Ua[1].Eb=0},218:function(){Rh(this,1)}};
u(function(){for(var a=A(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new R(d);Ja(d,c);wh(d)}});function si(a){v.call(this,"ROM",a,si);this.sb=null;this.sj=a.addr;this.eh=a.size;this.wl=a.alias;this.Sf=a.file;this.Sj=a.notify;if(this.Sf){a=this.Sf;var b=ea(this.Sf);"json"!=b&&"hex"!=b&&(a=la()+"/api/v1/dump?file="+this.Sf+"&format=bytes&decimal=true");r(a,!0,null,this,si.prototype.an)}}y(v,si);si.prototype.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;ti(this)};
si.prototype.Qb=function(){this.oh&&(this.Sa&&this.Sa.kp(this.sj,this.eh,this.oh),delete this.oh);return!0};si.prototype.Pb=function(){return!0};
si.prototype.an=function(a,b,c){if(c)this.ya("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.sb=e;else if(f)for(this.sb=Array(4*f.length),c=b=0;b<f.length;b++)this.sb[c++]=f[b]&255,this.sb[c++]=f[b]>>8&255,this.sb[c++]=f[b]>>16&255,this.sb[c++]=f[b]>>24&255;else this.sb=d;this.oh=d.symbols;if(!this.sb.length){s("Empty ROM: "+a);return}if(1==this.sb.length){s(this.sb[0]);return}}catch(h){this.ya("ROM data error: "+
h.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.sb=Array(a.length),d=0;d<a.length;d++)this.sb[d]=parseInt(a[d],16);ti(this)}};function ti(a){if(!La(a))if(!a.Sf)a.Na();else if(a.sb&&a.qa){if(a.sb.length!=a.eh)Ma(a,"ROM size (0x"+p(a.sb.length)+") does not match specified size (0x"+p(a.eh)+")");else if(ui(a,a.sj)&&ui(a,a.wl)){if(a.Sj){var b=Ha(a.Sj,a.id);b&&("ega"==b.Da&&vi(b,a.sb,[8752,12640],8),b.Na())}delete a.sb}a.Na()}}
function ui(a,b){if(null==b)return!0;if(Sa(a.qa,b,a.eh,!0)){for(var c=0;c<a.sb.length;c++)Za(a.qa,b+c,a.sb[c]);return!0}return!1}u(function(){for(var a=A(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new si(d);Ja(d,c)}});function wi(a){v.call(this,"RAM",a,wi);this.fg=a.addr;this.nd=a.size;this.Ml=a.test;this.Jl=!!this.nd;this.tg=!1}y(v,wi);wi.prototype.mc=function(a,b,c){this.qa=b;this.la=c;this.ja=C(a,"ChipSet");this.Na()};wi.prototype.Qb=function(a,b){b||this.reset();return!0};
wi.prototype.Pb=function(){return!0};wi.prototype.reset=function(){if(!this.fg&&!this.Jl&&this.ja){var a=1024*Ah(this.ja);this.nd&&a!=this.nd&&(Wa(this.qa,this.fg,this.nd),this.tg=!1);this.nd=a}!this.tg&&this.nd&&Sa(this.qa,this.fg,this.nd)&&(this.tg=!0,this.status(Math.floor(this.nd/1024)+"Kb"));if(this.tg){if(this.Ml||$a(this.qa,1138,4660),this.ja&&(a=this.ja,a.oa)){var b=1048576>this.fg?21:23,c=a.oa[b]|a.oa[b+1]<<8,c=c+(this.nd>>10);a.oa[b]=c&255;a.oa[b+1]=c>>8;Eh(a)}}else s("No RAM allocated")};
u(function(){for(var a=A(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new wi(d);Ja(d,c)}});function xi(a){v.call(this,"Keyboard",a,xi);this.Ij=!1;this.nh={};this.Um=250;this.Vm=100;this.Na()}y(v,xi);
var S={to:1,uo: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,qo:65,ro:66,lj:67,sl:68,E:69,xo:70,Ao:71,mj:72,Co:73,Do:74,Eo:75,Fo:76,Go:77,jh:78,Io:79,Jo:80,Lo:81,oj:82,Po:83,Zo:84,cp:85,dp:86,ep:87,gp:88,hp:89,ip:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,jp:97,lp:98,np:99,op:100,pp:101,qp:102,rp:103,sp:104,tp:105,vp:106,wp:107,xp:108,
yp:109,Ap:110,Cp:111,Dp:112,Ep:113,Fp:114,Gp:115,Hp:116,Ip:117,Kp:118,Lp:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},yi={16:2,17:8,18:32,20:256},zi={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,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":4063,"ctrl-alt-del":4081},Ai={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,
w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,"num-down":80,
"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},T={1027:1};T[S["1"]]=2;T[S["!"]]=10754;T[S["2"]]=3;T[S["@"]]=10755;T[S["3"]]=4;T[S["#"]]=10756;T[S["4"]]=5;T[S.$]=10757;T[S["5"]]=6;T[S["%"]]=10758;T[S["6"]]=7;T[S["^"]]=10759;T[S["7"]]=8;
T[S["&"]]=10760;T[S["8"]]=9;T[S["*"]]=10761;T[S["9"]]=10;T[S["("]]=10762;T[S["0"]]=11;T[S[")"]]=10763;T[S["-"]]=12;T[S._]=10764;T[S["="]]=13;T[S["+"]]=10765;T[1008]=14;T[1009]=15;T[113]=16;T[81]=10768;T[119]=17;T[87]=10769;T[101]=18;T[69]=10770;T[114]=19;T[82]=10771;T[116]=20;T[84]=10772;T[121]=21;T[89]=10773;T[117]=22;T[85]=10774;T[105]=23;T[73]=10775;T[111]=24;T[79]=10776;T[112]=25;T[80]=10777;T[S["["]]=26;T[S["{"]]=10778;T[S["]"]]=27;T[S["}"]]=10779;T[13]=28;T[1017]=29;T[97]=30;T[65]=10782;
T[115]=31;T[83]=10783;T[100]=32;T[68]=10784;T[102]=33;T[70]=10785;T[103]=34;T[71]=10786;T[104]=35;T[72]=10787;T[106]=36;T[74]=10788;T[107]=37;T[75]=10789;T[108]=38;T[76]=10790;T[S[";"]]=39;T[S[":"]]=10791;T[S["'"]]=40;T[S['"']]=10792;T[S["`"]]=41;T[S["~"]]=10793;T[1016]=42;T[S["\\"]]=43;T[S["|"]]=10795;T[122]=44;T[90]=10796;T[120]=45;T[88]=10797;T[99]=46;T[67]=10798;T[118]=47;T[86]=10799;T[98]=48;T[66]=10800;T[110]=49;T[78]=10801;T[109]=50;T[77]=10802;T[S[","]]=51;T[S["<"]]=10803;T[S["."]]=52;
T[S[">"]]=10804;T[S["/"]]=53;T[S["?"]]=10805;T[3016]=54;T[1018]=56;T[S[" "]]=57;T[1020]=58;T[1112]=59;T[1113]=60;T[1114]=61;T[1115]=62;T[1116]=63;T[1117]=64;T[1118]=65;T[1119]=66;T[1120]=67;T[1121]=68;T[1036]=71;T[1038]=72;T[1033]=73;T[1037]=75;T[1039]=77;T[1035]=79;T[1040]=80;T[1034]=81;T[1045]=82;T[1046]=83;T[1122]=87;T[1123]=88;T[4003]=7470;T[4063]=7494;T[4081]=3677523;k=xi.prototype;
k.zb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.ra[a])switch(c){case "kbd":return this.ra[a]=d,d.onkeydown=function(a){return Bi(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.pb&64?e.pb&=-65:e.pb&40?b=!1:(e.Ij&&a==S["`"]&&(a=27),b=!Ci(e,a));return b},d.onkeyup=function(a){return Bi(e,a,!1)},!0;default:if(void 0!==zi[c]&&"button"==b)return this.ra[a]=d,d.onclick=function(a,b,c){return function(){a.la&&a.la.We();return!Ci(a,c)}}(this,
c,zi[c]),!0;if(void 0!==Ai[c])return this.ra[a]=d,b=function(a,b,c){return function(){Di(a,c)}}(this,c,Ai[c]),c=function(a,b,c){return function(){Di(a,c)}}(this,c,Ai[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;this.ja=C(a,"ChipSet")};k.Na=function(){this.Kl=(this.Tl=qa("iOS"))||qa("Android");return v.prototype.Na.call(this)};
function mi(a,b,c){var d=!1;a.Jh!==c&&(a.Jh=a.Nh=c);a.yg!==b&&(a.yg=b)&&!a.Nh&&ri(a);a.yg&&a.Nh&&(a.bc=[170],a.ja&&qi(a.ja),a.Nh=!1,d=!0);return d}function ki(a,b){var c=0;a.bc.length&&(c=a.bc[0],b&&ri(a));return c}function ri(a,b){0<a.bc.length&&(b?a.bc=[]:(a.bc.shift(),0<a.bc.length&&a.ja&&qi(a.ja)))}k.Qb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};k.Pb=function(a){return a&&this.save?this.save():!0};
k.reset=function(){this.Cd();this.pb=0;this.bc=[];if(this.Wc)for(var a in this.Wc)ca(a)||this.Wc[a]&&clearTimeout(this.Wc[a]);this.Wc=[];this.cl=this.oe=0};k.save=function(){var a=new G(this);a.set(0,this.fj());return a.data()};k.restore=function(a){return this.Cd(a[0])};k.Cd=function(a){var b=0;void 0===a&&(a=[]);this.Jh=a[b++];this.yg=a[b];return!0};k.fj=function(){var a=0,b=[];b[a++]=this.Jh;b[a]=this.yg;return b};
function Di(a,b){var c=b&127,d=c==b;if(a.bc)if(20>a.bc.length){if(!(!d&&!a.nh[c]||d&&a.nh[c])){a.nh[c]=d;a.bc.push(b);1==a.bc.length&&a.ja&&qi(a.ja);for(var e in Ai)if(Ai[e]==c){(c=a.ra["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.bc.length&&a.bc.push(255)}function Ei(a,b){var c=b?a.Vm:a.Um;a.la&&a.la.ba.Qc&&(c/=a.la.ba.Qc);return c}
function Fi(a,b){!a.oe||void 0!==b&&b==a.oe||(clearTimeout(a.Wc[a.oe]),Gi(a,a.oe,!1))}function Bi(a,b,c){var d,e=!c,f=b.keyCode,h=f;c&&(a.cl=f);if(T[f+1E3]){var h=h+1E3,g=yi[f]||0;if(g)2==b.location&&(g>>=1,h+=2E3),a.pb&=~g,c&&(a.pb|=g),20==f?d=Ci(a,h):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.pb&40)&&(h=4063),d=c?!Ci(a,h):!1}else 91==f?(a.pb&=-65,c&&(a.pb|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(h+=32):d=!0;e&&(a.pb&=-65,a.Kl||f!=a.cl||Fi(a));void 0===d&&(d=!Gi(a,h,c));return d}
function Ci(a,b,c){var d=!1;Fi(a,b);Gi(a,b,!0)&&(c?Gi(a,b,!1):(c=!1,a.Wc[b]&&(clearTimeout(a.Wc[b]),c=!0),c=Ei(a,c),a.Wc[a.oe=b]=setTimeout(function(a){return function(){Gi(a,b,!1)}}(a),c)),d=!0);return d}
function Gi(a,b,c){var d=!1;c||(a.Wc[b]=null,a.oe==b&&(a.oe=0));var e=T[b]||T[b+1E3];if(void 0!==e){14==e&&40==(a.pb&40)&&(e=83);var d=[],f=e&255;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var h=0,g=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==g?a.pb&3||a.pb&256&&b||(h=g):29==g?a.pb&12||(h=g):56==g?a.pb&48||(h=g):d.push(f|(c?0:128)),h&&(c?d.unshift(h):d.push(h|128)))}for(c=0;c<d.length;c++)Di(a,d[c]);d=!0}return d}
u(function(){for(var a=A(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new xi(d);Ja(d,c)}});
function U(a,b,c,d){v.call(this,"Video",a,U);this.Da=a.model;this.Fc=0;"ega"==this.Da&&(this.jl=a.switches,this.Fc=a.memory||0);this.Tc=a.mode;if(void 0===this.Tc||void 0===V[this.Tc])this.Tc=Hi;this.Pg=a.charCols;this.fi=a.charRows;if(void 0===this.Pg||void 0===this.fi)this.Pg=V[this.Tc][0],this.fi=V[this.Tc][1];this.cd=a.screenWidth;this.zd=a.screenHeight;this.Ll=a.scale;this.Il=12<=Math.round(this.cd/this.Pg);this.Nl=a.touchScreen;this.Ra=b;this.Gc=c;this.ol=d;this.Dd=null;this.Gl=a.autoLock;this.Qa=
this.Ab=0;this.qd=[];this.Xc=Array(16);this.Kh=!1;var e=this;b&&(b.onfocus=function(){e.Kh=!0},b.onblur=function(){e.Kh=!1},b.Pe=b.requestPointerLock||b.mozRequestPointerLock||b.webkitRequestPointerLock,b.pl=b.exitPointerLock||b.mozExitPointerLock||b.webkitExitPointerLock,b=function(){e.Mf(document.pointerLockElement===e.Ra||document.mozPointerLockElement===e.Ra||document.webkitPointerLockElement===e.Ra)},"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"!=ea(a)&&(a=la()+"/api/v1/dump?file="+a+"&format=bytes"),r(a,!0,null,this,this.bn)}y(v,U);
var Ii={2:{ii:15700,hi:208,Xi:85,Yi:96},3:{ii:18432,hi:364,Xi:85,Yi:96},4:{ii:21850,hi:364,Xi:85,Yi:96}},Ji={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]},Hi=7,V=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];V[Hi]=[80,25,1,0,1];V[13]=[320,200,16];V[14]=[640,200,16];V[15]=[640,350,16];V[16]=[640,350,16];V[0]=V[1];V[2]=V[3];V[5]=V[4];var Ki=Array(5);Ki[0]=[0,0,0,255];Ki[1]=[127,192,127,255];
Ki[2]=[127,192,127,255];Ki[3]=[127,255,127,255];Ki[4]=[127,255,127,255];var Li=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],W=Array(16);W[0]=[0,0,0,255];W[1]=[0,0,170,255];W[2]=[0,170,0,255];W[3]=[0,170,170,255];W[4]=[170,0,0,255];W[5]=[170,0,170,255];W[6]=[170,85,0,255];W[7]=[170,170,170,255];W[8]=[85,85,85,255];W[9]=[85,85,255,255];W[10]=[85,255,85,255];W[11]=[85,255,255,255];W[12]=[255,85,85,255];W[13]=[255,85,255,255];W[14]=[255,255,85,255];W[15]=[255,255,255,255];
var Mi=[2,4,6],Ni=[3,5,7],Oi=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Pi=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],X=[0];X[128]=1;X[32768]=2;X[32896]=3;X[8388608]=4;X[8388736]=5;X[8421376]=6;X[8421504]=7;X[2147483648]=8;X[2147483776]=9;X[2147516416]=10;X[2147516544]=11;X[2155872256]=12;X[2155872384]=13;X[2155905024]=14;X[2155905152]=15;
function Qi(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=Ri[b],f=a.Hd||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(Si)];this.Fg=b;this.Qa=e[2];this.Ab=e[3];this.Fc=d||e[4];65536<=this.Fc&&720896<=this.Qa&&(this.Ab=Math.min(this.Fc>>2,32768));this.Ic=c[0];this.nc=c[1];this.lf=c[2];this.Wf=c[3];this.vc=c[4]&255;this.Eg=c[4]>>8&255;this.ac=c[5];this.Zh=Si;if(5==b){this.Zh=Ti;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.Ab,this.Fc],Array(this.Fc>>
2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.Ad=b[0];this.je=b[1];this.Qd=b[2];this.gj=b[3];this.Jg=b[4];this.Ph=b[5];this.Oe=b[6];this.dg=b[7];this.Sh=b[8];this.Th=b[9];this.Ne=b[10];this.ze=b[11];this.tb=b[12];d=b[13];"number"==typeof d&&(d=[this.Qa,this.Ab,d]);this.Qa=d[0];this.Ab=d[1];d=this.Fc>>2;if((this.Vd=b[14])&&this.Vd.length<d){for(var e=this.Vd,h=0,g=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)g[h]=q,h+=2;h==d&&(h=1)}this.Vd=g}this.dh(b[15]);this.Ti=b[16];
this.$a=b[17];this.Sc=b[18];this.eb=b[19];this.Sg=b[20];this.Kd=b[21];this.me=b[22];this.ai=b[23];this.bi=b[24]}f=Ii[f]||Ii[3];this.ci=a.la.ba.kd/f.ii|0;this.Xm=this.ci*f.Xi/100|0;this.Zj=this.ci*f.hi;this.Zm=this.Zj*f.Yi/100|0;this.ji=null==c[7]?0:c[7]}}var Si=18,Ti=25;function Ui(a){return this.xc(a)|this.xc(a+1)<<8}function Vi(a,b){this.Ac(a,b&255);this.Ac(a+1,b>>8&255)}
var Y=[,,function(a){a+=this.offset;return(this.ea.tb=this.pa[a])>>this.ea.Ti&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.pa[b]>>8:this.pa[b])&255}];Y[16]=function(a){a+=this.offset;a=this.pa[a];for(var b=this.ea.ai&this.ea.bi,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.pa[c]&~this.ea.$a|(b|b<<8|b<<16|b<<24)&this.ea.$a;d=d&this.ea.eb|this.ea.tb&~this.ea.eb;this.pa[c]!=d&&(this.pa[c]=d,this.bb=!0)};
Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Kd|this.ea.me;d=d&this.ea.$a|this.pa[c]&~this.ea.$a;d=d&this.ea.eb|this.ea.tb&~this.ea.eb;this.pa[c]!=d&&(this.pa[c]=d,this.bb=!0)};
Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Kd|this.ea.me;d&=this.ea.tb;d=d&this.ea.$a|this.pa[c]&~this.ea.$a;d=d&this.ea.eb|this.ea.tb&~this.ea.eb;this.pa[c]!=d&&(this.pa[c]=d,this.bb=!0)};
Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Kd|this.ea.me;d|=this.ea.tb;d=d&this.ea.$a|this.pa[c]&~this.ea.$a;d=d&this.ea.eb|this.ea.tb&~this.ea.eb;this.pa[c]!=d&&(this.pa[c]=d,this.bb=!0)};
Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Kd|this.ea.me;d^=this.ea.tb;d=d&this.ea.$a|this.pa[c]&~this.ea.$a;d=d&this.ea.eb|this.ea.tb&~this.ea.eb;this.pa[c]!=d&&(this.pa[c]=d,this.bb=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.$a&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.pa[d]&~c;c=c&this.ea.eb|this.ea.tb&~this.ea.eb;this.pa[d]!=c&&(this.pa[d]=c,this.bb=!0)};
Y[4096]=function(a){a+=this.offset;var b=this.pa[a]&~this.ea.$a|this.ea.tb&this.ea.$a;this.pa[a]!=b&&(this.pa[a]=b,this.bb=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=Pi[b&15],d=d&this.ea.$a|this.pa[c]&~this.ea.$a,d=d&this.ea.eb|this.ea.tb&~this.ea.eb;this.pa[c]!=d&&(this.pa[c]=d,this.bb=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=Pi[b&15],d=d&this.ea.tb,d=d&this.ea.$a|this.pa[c]&~this.ea.$a,d=d&this.ea.eb|this.ea.tb&~this.ea.eb;this.pa[c]!=d&&(this.pa[c]=d,this.bb=!0)};
Y[40960]=function(a,b){var c=a+this.offset,d=Pi[b&15],d=d|this.ea.tb,d=d&this.ea.$a|this.pa[c]&~this.ea.$a,d=d&this.ea.eb|this.ea.tb&~this.ea.eb;this.pa[c]!=d&&(this.pa[c]=d,this.bb=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=Pi[b&15],d=d^this.ea.tb,d=d&this.ea.$a|this.pa[c]&~this.ea.$a,d=d&this.ea.eb|this.ea.tb&~this.ea.eb;this.pa[c]!=d&&(this.pa[c]=d,this.bb=!0)};
function Wi(a){var b=[];if(void 0!==a.Fg){b[0]=a.Ic;b[1]=a.nc;b[2]=a.lf;b[3]=a.Wf;b[4]=a.vc|a.Eg<<8;b[5]=a.ac;if(5==a.Fg){var c=[];c[0]=a.Ad;c[1]=a.je;c[2]=a.Qd;c[3]=a.gj;c[4]=a.Jg;c[5]=a.Ph;c[6]=a.Oe;c[7]=a.dg;c[8]=a.Sh;c[9]=a.Th;c[10]=a.Ne;c[11]=a.ze;c[12]=a.tb;c[13]=[a.Qa,a.Ab,a.Fc];var d;a:if(d=a.Vd){var e=0,f=[];if(void 0!==d[0])for(var h=0;2>h;h++)for(var g=h;g<d.length;){for(var m=d[g],n=g+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-g>>1;f[e++]=m;g=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.Yh;c[16]=a.Ti;c[17]=a.$a;c[18]=a.Sc;c[19]=a.eb;c[20]=a.Sg;c[21]=a.Kd;c[22]=a.me;c[23]=a.ai;c[24]=a.bi;b[6]=c}b[7]=a.ji}return b}Qi.prototype.dh=function(a){if(null!=a&&a!=this.Yh){var b=a&255,c=Y[b];c||b&1&&(c=Y[1]);var b=a&65280,d=Y[b];d||b&256&&(d=Y[256]);this.cf||(this.cf=[null,Ui,null,Vi]);this.cf[0]=c;this.cf[2]=d;this.Yh=a}};var Ri=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=U.prototype;
k.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;bb(b,this,Xi);db(b,this,Yi);"ega"==this.Da&&(bb(b,this,Zi),db(b,this,$i));(this.Ma=C(a,"Keyboard"))&&this.Ra&&this.Ma.zb("input",this.ol?"textarea":"canvas","kbd",this.ol||this.Ra);this.hg=9;(this.ja=C(a,"ChipSet"))&&this.jl&&(this.hg=jh(this.jl,this.hg));this.Ma&&this.Nl&&aj(this)};
k.zb=function(a,b,c,d){var e=this;switch(c){case "lockPointer":return this.ra[c]=d,this.Ra&&this.Ra.Pe?d.onclick=function(){e.Pe(!0)}:d.parentNode.removeChild(d),!0;case "refresh":return this.ra[c]=d,d.onclick=function(){ib(e,!0)},!0}return!1};k.We=function(){this.Ra&&this.Ra.focus()};k.Pe=function(a){if(this.Ra)if(a){if(this.Ra.Pe)return this.Ra.Pe(),this.Dd.Mf(!0),!0}else if(this.Ra.pl)return this.Ra.pl(),this.Dd.Mf(!1),!0;return!1};
k.Mf=function(a){this.Dd&&(this.Dd.Mf(a),this.Ma&&(this.Ma.Ij=a))};function aj(a){var b=a.Ra;b&&!a.Ih&&(b.addEventListener("touchstart",function(b){bj(a,b)},!1),b.addEventListener("touchmove",function(b){bj(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.Ih=!0)}
function bj(a,b){a.Kh&&b.preventDefault();var c=0,d=0,e=a.Ra;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.cd/a.Ra.offsetWidth*(b.targetTouches[0].pageX-c)/(a.cd/3)|0;d=a.zd/a.Ra.offsetHeight*(b.targetTouches[0].pageY-d)/(a.zd/3)|0;1!=d?d?Ci(a.Ma,40,!0):Ci(a.Ma,38,!0):1!=c&&(c?Ci(a.Ma,39,!0):Ci(a.Ma,37,!0))}k.Qb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Pb=function(a){return a&&this.save?this.save():!0};
k.reset=function(){var a=!0,b=0;this.ja&&(b=Bh(this.ja));var c=!1;if(this.Da)switch(this.Da){case "ega":var c=!0,d=Ji[this.hg];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.Hd!==b&&(this.Hd=b,a=!0);this.Ca=null;this.Ec=this.wh=new Qi(this,1);this.Vb=this.qg=new Qi(this,3);c?(this.ma=new Qi(this,5,null,this.Fc),cj(this)):this.ma=new Qi;dj(this);this.Gd=null;this.Tc=3==b?Hi:3;this.be=this.wc=-1;this.ae=0;ej(this,this.Tc);if(this.Ca.Qa&&a){a=this.Ca.Qa+this.xh;for(b=this.Ca.Qa;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.Hd?(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),$a(this.qa,b,c|d<<8);ib(this,!0)}};function cj(a){a.ma.Jg&1?(a.Ec=a.wh,a.Vb=a.ma):(a.Ec=a.ma,a.Vb=a.qg)}k.save=function(){var a=new G(this);a.set(0,Wi(this.wh));a.set(1,Wi(this.qg));a.set(2,[this.Hd,this.Tc,this.Gd]);a.set(3,Wi(this.ma));return a.data()};
k.restore=function(a){var b=a[2];this.Hd=b[0];this.Tc=b[1];this.Gd=b[2];this.Ca=null;this.Ec=this.wh=new Qi(this,1,a[0]);this.Vb=this.qg=new Qi(this,3,a[1]);this.ma=new Qi(this,5,a[3],this.Fc);this.ma.Ic&&cj(this);dj(this);if(!fj(this))return!1;gj(this);return!0};
k.bn=function(a,b,c){if(c)this.ya("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){s("Empty font ROM image: "+a);return}if(1==d.length){s(d[0]);return}if(8192==d.length)vi(this,d,[0,6144]);else{this.ya("Unrecognized font data length ("+d.length+")");return}}catch(e){this.ya("Font ROM data error: "+e.message);return}this.Na()}};
function hj(a,b){if(1==b)return a.Xc[0]=W[0],a.Xc[1]=W[7],a.Xc;if(2==b){var c=a.Ca.lf;if(a.Ca===a.ma){var d=a.ma.Qd[0],c=d&7;d&16&&(c|=8);18!=a.ma.Qd[1]&&(c|=32)}a.Xc[0]=W[c&15];c=c&32?Ni:Mi;for(d=0;d<c.length;d++)a.Xc[d+1]=W[c[d]];return a.Xc}if(a.Vb===a.qg)return W;c=null!=a.ma.Qd[15]?a.ma.Qd:Oi;for(d=0;d<a.Xc.length;d++){var e=c[d]||0;a.Xc[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.Xc}function vi(a,b,c,d){a.eg=b;a.mh=c;a.fe=d}
function dj(a){var b=!1;if(window&&a.eg){var c=a.fe?0:2048,d=a.fe?a.fe:9;ij(a,1,a.mh[0],c,d,14,a.eg,Ki,Li)&&(b=!0);c=hj(a);d=a.fe?a.fe:8;ij(a,3,a.mh[1],0,d,8,a.eg,c)&&(b=!0);a.fe&&ij(a,5,a.mh[0],0,a.fe,14,a.eg,c)&&(b=!0)}return b}function ij(a,b,c,d,e,f,h,g,m){var n=!1;jj(a,b,c,d,e,f,h,g,m)&&(n=!0);a.Il&&jj(a,b<<1,c,d,e,f,h,g,m)&&(n=!0);return n}
function jj(a,b,c,d,e,f,h,g,m){var n=!1,q=b&1?0:1,w=a.qd[b];w||(w={dc:e<<q,ec:f<<q,ye:Array(g.length),qj:g.slice(),$e:m,kh:Array(g.length)});for(m=0;m<g.length;m++){var t=g[m],B=w.ye[m]?w.qj[m]:[];if(t[0]!==B[0]||t[1]!==B[1]||t[2]!==B[2]){var n=w,B=m,H=q,P=c,K=d,Q=e,ua=f,Ua=h,Pb=[0,0,0,0],zc=window.document.createElement("canvas");zc.width=n.dc<<4;zc.height=n.ec<<4;for(var Zh=zc.getContext("2d"),va=void 0,xb=void 0,Va=void 0,Ac=8>ua||!K?ua:8,qd=Zh.createImageData(n.dc,n.ec),va=0;256>va;va++){for(Va=
0;Va<ua;Va++)for(var kk=n.$e&&B&1&&Va>=ua-2,lk=Ua[Va<Ac?P+va*Ac+Va:K+va*Ac+Va-Ac],rd=0;rd<=H;rd++)for(xb=0;xb<Q;xb++){var $h=xb<<H,ai=(Va<<H)+rd,bi=kk||lk&128>>(8<=xb&&176<=va&&223>=va?7:xb)?t:Pb;kj(qd,$h,ai,bi);H&&kj(qd,$h+1,ai,bi)}Zh.putImageData(qd,(va&15)*n.dc,(va>>4)*n.ec)}n.ye[B]="#"+p(t[0],2)+p(t[1],2)+p(t[2],2);n.qj[B]=t;n.kh[B]=zc;n=!0}}a.qd[b]=w;return n}function lj(a){0<a.ae||0<=a.wc?0>a.be&&(a.be=0):a.be=-1}
function gj(a){if(a.Hb){for(var b=10;15>=b;b++)if(null==a.Ca.ac[b])return;var c=a.Ca.ac[10],b=c&31,d=a.Ca.ac[11]&31,e=a.Ca.ac[9]&31,f=!1;a.Ca===a.ma&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)mj(a);else{c=a.Ca.ac[15]+((a.Ca.ac[14]&63)<<8);a.wc!=c&&(mj(a),a.wc=c);d=d-b+1;if(a.rl!=b||a.Cj!=d)a.rl=b,a.Cj=d;a.yd=e+1;lj(a)}}}
function mj(a){if(0<=a.wc){if(void 0!==a.Ub){var b=a.Ub[a.wc];if(b&131072){var b=b&-131073,c=a.wc%a.ub,d=Math.floor(a.wc/a.ub);a.Hb&&a.qd[a.Hb]&&(a.Fe&&nj(a,c,d,b,a.Fe),nj(a,c,d,b));a.Ub[a.wc]=b}}a.wc=-1}}
function oj(a){var b;a=a.Ca;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.Sc=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.se=function(a){var b=this.Ca;null!=a&&b&&a!=b.Yh&&(b.dh(a),this.qa.dh(b.Qa,b.Ab,b.cf))};
function fj(a,b){var c,d=a.Gd,e=a.Ca;if(e)if(1==e.Fg)d=Hi;else if(5==e.Fg){var d=null,f=e.Fc>>2,h=32768<f?32768:f,g=e.ze[6];if(null!=g){switch(g&12){case 0:e.Qa=655360;e.Ab=f;d=255;break;case 4:e.Qa=655360;e.Ab=f;d=3==a.Hd?15:16;break;case 8:e.Qa=720896;e.Ab=h;d=Hi;break;case 12:e.Qa=753664,e.Ab=h,d=3==a.Hd?2:3}c=e.dg[1]&8;f=e.ac[6]|(e.ac[7]&1)<<8;255!=d&&(g&1?753664==e.Qa?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=oj(a)}}else e.nc&8&&(e.nc&2?(d=e.nc&16?6:5,e.nc&4||(d-=1)):(d=e.nc&1?3:1,e.nc&4&&(d-=
1)));else a.Gd=null,null==d&&(d=a.Tc);if(!ej(a,d,b))return!1;a.se(c);return!0}
function ej(a,b,c){if(null!=b&&(b!=a.Gd||c)){a.xl=0;a.Gd=b;b=a.Ca||(b==Hi?a.Ec:a.Vb);if(b!=a.Ca||b.Qa!=a.Qa||b.Ab!=a.Ab){mj(a);if(a.Qa){if(!Wa(a.qa,a.Qa,a.Ab))return!1;a.Ca&&(a.Ca.Ic=!1)}a.Ca=b;b.Ic=!0;a.Qa=b.Qa;a.Ab=b.Ab;if(!Sa(a.qa,b.Qa,b.Ab,!1,b===a.ma?b:null))return!1}a.Hb=0;a.ub=a.Pg;a.gc=a.fi;a.$h=V[Hi][2];b=0;var d=V[a.Gd];d&&(a.ub=d[0],a.gc=d[1],a.$h=d[2],b=d[3]||0,a.Hb=d[4],4==a.Hd&&a.Ca===a.ma&&3==a.Hb&&(7==a.ma.ac[9]?a.gc=43:a.Hb=5));a.Wj=a.ub*a.gc;a.Mg=a.Wj/a.$h;a.xh=(a.Mg<<1)+b;a.Aj=
b?a.xh+b>>1:0;13<=a.Gd&&(a.Mg<<=1);a.qd.length&&(a.dd=Math.floor(a.cd/a.ub),a.ed=Math.floor(a.zd/a.gc),a.Hb?(b=a.qd[a.Hb],d=a.qd[a.Hb<<1],a.Ll&&80==a.ub?d&&a.dd>=3*d.dc>>2&&(a.Hb<<=1,b=d):(d&&a.dd>=d.dc&&(a.Hb<<=1,b=d),b&&(a.dd=b.dc,a.ed=b.ec)),a.of=a.pf=0,b&&(a.of=a.ub*b.dc,a.pf=a.gc*b.ec)):(a.dd=a.ed=1,a.of=a.ub,a.pf=a.gc),a.Gg=a.Gc.createImageData(a.of,a.pf),a.Ee=window.document.createElement("canvas"),a.Ee.width=a.of,a.Ee.height=a.pf,a.Fe=a.Ee.getContext("2d"),a.jj=a.kj=0,a.Ah=a.cd,a.Bh=a.zd,
b=a.cd-a.ub*a.dd,d=a.zd-a.gc*a.ed,0<b&&(a.jj=b>>1,a.Ah-=b),0<d&&(a.kj=d>>1,a.Bh-=d),b||d)&&(a.Gc.fillStyle=a.Ra.style.backgroundColor,a.Gc.fillRect(0,0,a.cd,a.zd));!1!==c?ib(a,!0):pj(a,!0)}return!0}function kj(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function pj(a,b){var c;if(b){if(c=a.Mg,void 0===a.Ub||a.Ub.length!=c)a.Ub=Array(c)}else{if(void 0===a.Ub)return;c=a.Ub.length}for(var d=0;d<c;d++)a.Ub[d]=-1;a.ae=-1}
function nj(a,b,c,d,e){var f=d&255,h=d>>8;d=h&15;var g=a.qd[a.Hb];g.$e&&(d=g.$e[d]);var m=h>>4&15;g.$e&&(m=g.$e[m]);e?(b*=g.dc,c*=g.ec,e.fillStyle=g.ye[m],e.fillRect(b,c,g.dc,g.ec)):(b=b*a.dd+a.jj,c=c*a.ed+a.kj,a.Gc.fillStyle=g.ye[m],a.Gc.fillRect(b,c,a.dd,a.ed));h&256&&(m=(f&15)*g.dc,f=(f>>4)*g.ec,e?e.drawImage(g.kh[d],m,f,g.dc,g.ec,b,c,g.dc,g.ec):a.Gc.drawImage(g.kh[d],m,f,g.dc,g.ec,b,c,a.dd,a.ed));h&512&&(f=a.rl,h=a.Cj,e?(a.yd&&a.yd!==g.ec&&(f=Math.floor(f*g.ec/a.yd),h=Math.floor(h*g.ec/a.yd)),
e.fillStyle=g.ye[d],e.fillRect(b,c+f,g.dc,h)):(a.yd&&a.yd!==a.ed&&(f=Math.floor(f*a.ed/a.yd),h=Math.floor(h*a.ed/a.yd)),a.Gc.fillStyle=g.ye[d],a.Gc.fillRect(b,c+f,a.dd,h)))}
function ib(a,b){if(a.na.Gb){var c=!1;a.Ca&&(a.Ca===a.ma?a.ma.je&32&&(c=!0):a.Ca.nc&8&&(c=!0));if(c||b){if(b)pj(a,!0);else if(void 0===a.Ub)return;var d=!1;!(b||++a.xl&15)&&0<=a.be&&(a.be++,d=!0);var e=0,f=a.Wj,c=a.Ca.Qa,h=c+a.Ca.Ab,g=(a.Ca.ac[12]<<8)+a.Ca.ac[13];a.Hb&&(g<<=1);var c=c+g,m=a.xh;c+m>h&&(m=h-c,0>m&&(m=0));h=c+m;if(g=!b){for(var g=a.qa,n=!0,q=c>>g.Ob;0<m&&q<g.Ba.length;)g.Ba[q].bb&&(g.Ba[q].bb=n=!1,g.Ba[q].Hj=!0),m-=g.pc,q++;g=n}if(g){if(!d)return;if(!a.ae){if(0>a.wc)return;e=a.wc;f=
e+1}}if(a.Hb){if(a.qd[a.Hb]){d=0;g=a.ae=0;m=1048575;a.Ca.nc&32&&(g=32768,m&=~g,a.be&2||(m&=-65537));for(c+=e<<1;c<h&&e<f;)n=Ya(a.qa,c),n|=65536,n&g&&(a.ae++,n&=m),e==a.wc&&(n|=a.be&1?131072:0),q=a.Ub[e],q!=n&&(nj(a,e%a.ub,Math.floor(e/a.ub),n,a.Fe),a.Ub[e]=n,d++),c+=2,e++;d&&a.Fe&&a.Gc.drawImage(a.Ee,0,0,a.of,a.pf,a.jj,a.kj,a.Ah,a.Bh);lj(a)}}else if(a.Aj){for(var f=h,w,t,e=c,h=a.ae=0,d=a.$h,g=16==d?65536:196608,m=16==d?1:2,n=hj(a,m),B=q=0,H=a.ub,P=0,K=a.gc,Q=0;e<f;){w=Ya(a.qa,e);t=a.Ub[h];if(t===
w)q+=d;else{a.Ub[h]=w;w=w>>8|(w&255)<<8;t=g;var ua=16;q<H&&(H=q);for(var Ua=0;Ua<d;Ua++){var Pb=(w&(t>>=m))>>(ua-=m);kj(a.Gg,q++,B,n[Pb])}q>P&&(P=q);B<K&&(K=B);B>=Q&&(Q=B+1)}e+=2;h++;if(q>=a.ub){q=0;B+=2;if(B>a.gc)break;B==a.gc&&(B=1,e=c+a.Aj)}}H<a.ub&&(a.Fe.putImageData(a.Gg,0,0,H,K,P-H,Q-K),a.Gc.drawImage(a.Ee,0,0,a.ub,a.gc,0,0,a.cd,a.zd))}else{f=h;e=a.ae=0;h=hj(a);d=a.Ca.Vd;m=g=0;n=a.ub;q=0;B=a.gc;for(H=0;c<f;){P=c++-a.Qa;P=d[P];K=a.Ub[e];if(K===P)g+=8;else{a.Ub[e]=P;g<n&&(n=g);for(K=0;8>K;K++)Q=
P&2155905152,0>Q&&(Q+=4294967296),Q=X[Q]||0,kj(a.Gg,g++,m,h[Q]),P<<=1;g>q&&(q=g);m<B&&(B=m);m>=H&&(H=m+1)}e++;if(g>=a.ub&&(g=0,++m>a.gc))break}n<a.ub&&(a.Fe.putImageData(a.Gg,0,0,n,B,q-n,H-B),a.Gc.drawImage(a.Ee,0,0,a.ub,a.gc,0,0,a.cd,a.zd))}}}}k.ym=function(){return this.Ec.vc};k.Jn=function(a,b){var c=this.Ec;c.Eg=c.vc;c.vc=b&31};k.xm=function(){return qj(this.Ec)};k.In=function(a,b){rj(this,this.Ec,b)};k.zm=function(){return this.Ec.nc};k.Kn=function(a,b){this.Ec.nc=b;fj(this,!1)};
k.Am=function(){return sj(this,this.Ec)};k.bl=function(a,b){this.ma.Ph=this.ma.Ph&-4|b&3};k.Tj=function(){var a=this.ma.Ad?this.ma.Qd[this.ma.je&31]:this.ma.je;this.ma.Ad=!this.ma.Ad;return a};k.al=function(a,b){var c=this.ma.je&32;if(this.ma.Ad){var d=this.ma.je&31;if(16<=d||!c)this.ma.Qd[d]=b;this.ma.Ad=!1}else this.ma.je=b,this.ma.Ad=!0,b&32&&!c&&dj(this)&&ib(this,!0)};k.Km=function(){var a=3-((this.ma.Jg&12)>>2),a=this.ma.gj&-17|(this.hg&1<<a)<<4-a;return this.ma.gj=a};
k.Mn=function(a,b){this.ma.Jg=b;cj(this)};k.Jm=function(){return this.ma.Oe};k.Tn=function(a,b){this.ma.Oe=b};k.Im=function(){return this.ma.dg[this.ma.Oe]};k.Sn=function(a,b){this.ma.dg[this.ma.Oe]=b;2==this.ma.Oe&&(this.ma.$a=Pi[b&15])};k.qm=function(){return this.ma.Sh};k.Dn=function(a,b){this.ma.Sh=b};k.rm=function(){return this.ma.Th};k.En=function(a,b){this.ma.Th=b};k.pm=function(){return this.ma.Ne};k.Cn=function(a,b){this.ma.Ne=b};k.om=function(){return this.ma.ze[this.ma.Ne]};
k.Bn=function(a,b){this.ma.ze[this.ma.Ne]=b;switch(this.ma.Ne){case 0:this.ma.Sg=Pi[b&15];this.ma.me=this.ma.Sg&~this.ma.Kd;break;case 1:this.ma.Kd=~Pi[b&15];this.ma.me=this.ma.Sg&~this.ma.Kd;break;case 2:this.ma.ai=Pi[b&15]&2155905152;break;case 3:case 5:this.se(oj(this));break;case 4:this.ma.Ti=(b&3)<<3;break;case 6:fj(this,!1);break;case 7:this.ma.bi=Pi[b&15^15]&2155905152;break;case 8:this.ma.eb=b|b<<8|b<<16|b<<24}};k.gm=function(){return this.Vb.vc};
k.un=function(a,b){var c=this.Vb;c.Eg=c.vc;c.vc=b&31};k.fm=function(){return qj(this.Vb)};k.tn=function(a,b){rj(this,this.Vb,b)};k.hm=function(){return this.Vb.nc};k.vn=function(a,b){this.Vb.nc=b;fj(this,!1)};k.em=function(){return this.Vb.lf};k.sn=function(a,b){this.Vb.lf!==b&&(this.Vb.lf=b,pj(this,!1))};k.im=function(){return sj(this,this.Vb)};function qj(a){var b;a.vc<a.Zh&&(b=a.ac[a.vc]);return b}function rj(a,b,c){b.vc<b.Zh&&(b.ac[b.vc]=c,9==b.vc&&8!=b.Eg&&fj(a,!0),gj(a))}
function sj(a,b){var c=0,d=rb(a.la),e=d-b.ji;0>e&&(e=0);e%b.ci>b.Xm&&(c|=1);e%=b.Zj;e>b.Zm&&(c|=8);b.ji=d-e;b===a.ma?(c|=b.Wf&48^48,b.Ad=!1):c=(b.Wf^=9)|240;return b.Wf=c}
var Xi={948:U.prototype.ym,949:U.prototype.xm,952:U.prototype.zm,954:U.prototype.Am,980:U.prototype.gm,981:U.prototype.fm,984:U.prototype.hm,985:U.prototype.em,986:U.prototype.im},Yi={948:U.prototype.Jn,949:U.prototype.In,952:U.prototype.Kn,980:U.prototype.un,981:U.prototype.tn,984:U.prototype.vn,985:U.prototype.sn},Zi={960:U.prototype.Tj,961:U.prototype.Tj,962:U.prototype.Km,964:U.prototype.Jm,965:U.prototype.Im,970:U.prototype.rm,972:U.prototype.qm,974:U.prototype.pm,975:U.prototype.om},$i={954:U.prototype.bl,
960:U.prototype.al,961:U.prototype.al,962:U.prototype.Mn,964:U.prototype.Tn,965:U.prototype.Sn,970:U.prototype.En,972:U.prototype.Dn,974:U.prototype.Cn,975:U.prototype.Bn,986:U.prototype.bl};
k.save=function(){var a=new G(this);a.set(0,[this.Mb,this.Qd,this.Mc,this.we]);for(var b=[],c=0;c<this.Xa;c++){for(var d=this.Xa[c],e=d,f=[],h=0;h<e.tb.length;h++){var g=e.tb[h];f[h]=[g.kd,g.dg,g.Qb,g.Sa,g.Ua,g.mode,g.mg,g.ho,g.io]}b[c]=[d.wd,d.sh,d.wj,d.wb,f]}a.set(1,[b]);b=[];for(c=0;c<this.ub.length;c++)d=this.ub[c],b[c]=[d.Af,d.Cc,d.md,d.ad,d.Fb,d.Fc,d.Yd,d.gf];a.set(2,[b]);b=[];for(c=0;c<this.Nb.length;c++)d=this.Nb[c],b[c]=[d.Qb,d.mc,d.Ua,d.ge,d.yj,d.mode,d.Pf,d.zd,d.fe,d.Qc,d.qf,d.Je,d.Nd];
a.set(3,[this.vh,b]);a.set(4,[this.lg,this.kc,this.th,this.hf,this.kg]);this.Da>=nh&&(a.set(5,[this.lb,this.$c,this.Nc,this.fg,this.Xd,this.rh]),a.set(6,[this.ig,this.Ob,this.Fe,this.oa,this.tf]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Mb=b[0];this.Qd=b[1];this.Mc=b[2];this.we=b[3];b=a[1];for(c=0;c<this.pg;c++)xh(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.qg;c++)yh(this,c,0===c?32:160,b[0][c]);b=a[3];this.vh=b[0];for(c=0;c<this.Nb.length;c++)zh(this,c,b[1][c]);b=a[4];this.lg=b[0];this.kc=b[1];this.th=b[2];this.hf=b[3];this.kg=b[4];if(b=a[5])this.lb=b[0],this.$c=b[1],this.Nc=b[2],this.fg=b[3],this.Xd=b[4],this.rh=b[5];if(b=a[6])this.ig=b[0],this.Ob=b[1],this.Fe=b[2],this.oa=b[3],
this.tf=b[4],Ch(this);return!0};var Fh=[0,null,null,0,Array(4)];function xh(a,b,c){var d=a.Xa[b];d||(d={tb:Array(4)});c=c&&5==c.length?c:Fh;d.wd=c[0];d.sh=c[1];d.wj=c[2];d.wb=c[3];d.Xm=b<<2;for(var e=0;e<d.tb.length;e++)Gh(d,e,c[4][e]);a.Xa[b]=d}var Hh=[!0,[0,0],[0,0],[0,0],[0,0]];
function Gh(a,b,c){var d=a.tb[b];d||(d={dg:[0,0],Qb:[0,0],Sa:[0,0],Ua:[0,0]});c=c&&8==c.length?c:Hh;d.kd=c[0];d.dg[0]=c[1][0];d.dg[1]=c[1][1];d.Qb[0]=c[2][0];d.Qb[1]=c[2][1];d.Sa[0]=c[3][0];d.Sa[1]=c[3][1];d.Ua[0]=c[4][0];d.Ua[1]=c[4][1];d.mode=c[5];d.mg=c[6];d.ea=a;d.Rj=b;Ih(d,c[8],c[9]);a.tb[b]=d}function Ih(a,b,c,d){"string"==typeof b&&(b=Ha(b));b&&(a.tg=null,a.ho=b.id,a.io=c,a.sg=b,a.Sh=b[c],a.Ug=d)}var Jh=[0,Array(4)];
function yh(a,b,c,d){var e=a.ub[b];e||(e={Cc:[null,null,null,null]});d=d&&8==d.length?d:Jh;e.port=c;e.Dp=b<<3;e.Af=d[0];e.Cc[0]=d[1][0];e.Cc[1]=d[1][1];e.Cc[2]=d[1][2];e.Cc[3]=d[1][3];e.md=d[2];e.ad=d[3];e.Fb=d[4];e.Fc=d[5];e.Yd=d[6];e.gf=d[7];a.ub[b]=e}var Kh=[[0,0],[0,0],[0,0],[0,0]];
function zh(a,b,c){var d=a.Nb[b];d||(d={Qb:[0,0],mc:[0,0],Ua:[0,0],ge:[0,0]});c=c&&13==c.length?c:Kh;d.Qb[0]=c[0][0];d.Qb[1]=c[0][1];d.mc[0]=c[1][0];d.mc[1]=c[1][1];d.Ua[0]=c[2][0];d.Ua[1]=c[2][1];d.ge[0]=c[3][0];d.ge[1]=c[3][1];d.yj=c[4];d.mode=c[5];d.Pf=c[6];d.zd=c[7];d.fe=c[8];d.Qc=c[9];d.qf=c[10];d.Je=c[11];d.Nd=c[12];a.Nb[b]=d}function Ah(a,b){return((((b?a.Mb:a.Mc)&12)>>2)+1)*a.Sm+32*((b?a.Qd:a.we)&15)}function Lh(a,b){var c=b?a.Mb:a.Mc;return a.Da!=ih||c&mh.jh?((c&mh.Ze)>>mh.$e)+1:0}
function Dh(a,b){if(b<Lh(a)){if(!a.rd)return 1;if(b<a.rd.length)switch(a.rd[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 Bh(a,b){return((b?a.Mb:a.Mc)&lh.Ze)>>lh.$e}
function ph(a,b,c,d,e){for(var f="",h=1;8>=h;h++){var g="pcjs-bitCell";h||(g+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+h)+'" class="'+g+'" data-value="0">'+h+"</div>\n"}c.innerHTML=f;b=A(c,"pcjs-bitCell");c=null;for(h=0;h<b.length;h++)null!=e&&null!=e[h]&&(c=e[h]),c&&b[h].setAttribute("title",c),Mh(b[h],d&1<<h?!1:!0),b[h].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Mh(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Mb=
a.Mb&~e|(c?0:e);break;case "sw2":a.Qd=a.Qd&~e|(c?0:e)}wh(a)}}(a,b[h])}function Mh(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function wh(a){var b=a.qa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(null!=b){var d;d=""+(Ah(a,!0)+"Kb");d+=", "+c[Bh(a,!0)]+" Monitor";d+=", "+Lh(a,!0)+" Floppy Drives";if(null!=a.Mc&&a.Mc!=a.Mb||null!=a.we&&a.we!=a.Qd)d+=" (Reset required)";b.innerHTML=d}}
function Nh(a,b,c){a=a.Xa[b];var d=a.tb[c],e=d.Sa[a.wb];a.wb^=1;b||0!=c||a.wb||(d.Sa[0]++,255<d.Sa[0]&&(d.Sa[0]=0,d.Sa[1]++,255<d.Sa[1]&&(d.Sa[1]=0)));return e}function Oh(a,b,c,d){a=a.Xa[b];c=a.tb[c];c.Sa[a.wb]=c.dg[a.wb]=d;a.wb^=1}function Ph(a,b,c){a=a.Xa[b];var d=a.tb[c],e=d.Ua[a.wb];a.wb^=1;b||0!=c||a.wb||(d.Ua[0]--,0>d.Ua[0]&&(d.Ua[0]=255,d.Ua[1]--,0>d.Ua[1]&&(d.Ua[1]=255)));return e}function Qh(a,b,c,d){a=a.Xa[b];c=a.tb[c];c.Ua[a.wb]=c.Qb[a.wb]=d;a.wb^=1}
function Rh(a,b){var c=a.Xa[b],d=c.wd|1;c.wd&=-16;return d}function Sh(a,b,c){a=a.Xa[b];b=c&3;a.wd=a.wd&~(16<<b)|(c&4)<<b+2;a.wj=c}function Th(a,b,c){b=a.Xa[b];var d=c&3,e=b.tb[d];e.kd=!!(c&4);e.kd||Uh(a,b.Xm+d)}function Vh(a,b){for(var c=a.Xa[b],d=0;d<c.tb.length;d++)Gh(c,d)}function Wh(a,b,c){return a.Xa[b].tb[c].mg}function Xh(a,b,c,d){a.Xa[b].tb[c].mg=d}function Yh(a,b,c,d,e){Ih(a.Xa[b>>2].tb[b&3],c,d,e)}
function Uh(a,b,c){b=a.Xa[b>>2].tb[b&3];b.sg&&b.Sh&&b.Ug?(c&&(b.tg=c),b.kd||Vc(a,b,!0)):c&&c(!0)}function Vc(a,b,c){c&&(b.count=b.Ua[1]<<8|b.Ua[0],b.rl=b.mode&12,b.Oj=b.Pc=!1);for(var d=!1;0<=b.count&&(c=b.mg<<16|b.Sa[1]<<8|b.Sa[0],4==b.rl?(d=!0,function(c){b.Sh.call(b.sg,b.Ug,-1,function(f,h){0>f&&(b.Oj||(b.Oj=!0),f=255);b.kd||Za(a.ra,c,f);(d=h)&&setTimeout(function(){Zh(b)||Vc(a,b)},0)})}(c)):8==b.rl?(c=Xa(a.ra,c),0>b.Sh.call(b.sg,b.Ug,c)&&(b.Pc=!0)):b.Pc=!0),!d&&!Zh(b););}
function Zh(a){if(!a.Pc&&0<=--a.count&&(a.mode&32?(a.Sa[0]--,0>a.Sa[0]&&(a.Sa[0]=255,a.Sa[1]--,0>a.Sa[1]&&(a.Sa[1]=255))):(a.Sa[0]++,255<a.Sa[0]&&(a.Sa[0]=0,a.Sa[1]++,255<a.Sa[1]&&(a.Sa[1]=0))),!a.kd))return!1;var b=a.ea;b.wd=b.wd&~(16<<a.Rj)|1<<a.Rj;a.mode&16||(a.kd=!0,a.sg=a.Ug=null);a.tg&&(a.tg(!a.Pc),a.tg=null);return!0}function $h(a,b){var c=0,d=a.ub[b];if(null!=d.gf)switch(d.gf&3){case 2:c=d.Fb;break;case 3:c=d.Fc}return c}
function ai(a,b,c){var d=a.ub[b];if(c&16)d.md=0,d.Cc[d.md++]=c,d.ad=0,d.Yd=7,d.Fb=d.Fc=0,d.gf=10;else if(c&8)d.gf=c;else{var e=c&224;if(e&32){var f=0;if(96==(e&96))f=1<<(c&7);else for(c=d.Yd+1;;){c&=7;e=1<<c;if(d.Fc&e){f=e;break}if(c++==d.Yd)break}d.Fc&f&&(d.Fc&=~f,bi(a,b))}else 192==e&&(d.Yd=c&7)}}function gi(a,b,c){var d=a.ub[b];d.md<d.Cc.length?(d.Cc[d.md++]=c,2==d.md&&d.Cc[0]&2&&d.md++,3!=d.md||d.Cc[0]&1||d.md++):(d.ad=c,d=a.ka,d.Z|=4,bi(a,b,b||253!=c?0:6))}
function bi(a,b,c){b=a.ub[b];var d=((b.Fc|b.ad)^255)&b.Fb;a=a.ka;a.ja&&(a.gb=d?a.gb|1:a.gb&-2);d&&c&&(b.Af=c)}function hi(a,b,c){var d=b>>3,e=a.ub[d];e.Fb|=1<<(b&7);e.Af=c||0;1==d&&(a.ub[0].Fb|=4);bi(a,d)}function ii(a,b){var c=b>>3,d=a.ub[c],e=1<<(b&7);d.Fb&e&&(d.Fb&=~e,1!=c||d.Fb||(a.ub[0].Fb&=-5),bi(a,c))}
function Tc(a,b){void 0===b&&(b=0);var c=-1,d=a.ub[b];if(d.Af)c=-2,d.Af--;else for(var e=d.Fb&((d.Fc|d.ad)^255),f=d.Yd+1;;){var f=f&7,h=1<<f;if(e&h){c=b||2!=f?d.Cc[1]+f:Tc(a,1);0<=c&&(d.Fc|=h,d.Fb&=~h);break}if(f++==d.Yd)break}return c}function ji(a,b){var c=a.Nb[b];c.zd==c.fe&&ki(a,b);if(c.qf)return c.ge[c.zd++];li(a,b);return c.Ua[c.zd++]}
function mi(a,b,c){var d=a.Nb[b];d.zd==d.fe&&ki(a,b);d.Qb[d.zd++]=c;if(d.zd==d.fe){d.Je&&0!=d.mode&&8!=d.mode||(d.qf=!1,d.Ua[0]=d.mc[0]=d.Qb[0],d.Ua[1]=d.mc[1]=d.Qb[1],d.Nd=rb(a.ka,a.Dg),d.Je=!0,d.Qc=0!=d.mode,0==b&&ii(a,0));2==b&&sb(a);if(0==b){var e=ni(a,0);2048<=e&&(a.ka.Mg=Math.round(65536/e))}0==b&&0==d.mode&&16==d.Pf&&(b=a.ka,b.na.vc&&(a=b.A-c*a.al,b.A-=a,b.Sc-=a))}}k=R.prototype;k.Mm=function(){return null};
k.Wn=function(a,b){this.vh=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var h=this.Nb[c];h.Pf=f;h.mode=e;h.yj=d;h.Qb=[0,0];h.Ua=[0,0];h.ge=[0,0];h.Qc=!1;h.qf=!1;h.Je=!1;ki(this,c);0==c&&ii(this,0);2==c&&255==this.ub[0].ad&&77==this.kc&&(c=this.Nb[0],c.mc[0]=c.Qb[0],c.mc[1]=c.Qb[1],c.Nd=rb(this.ka,this.Dg))}else li(this,c),d=this.Nb[c],d.ge[0]=d.Ua[0],d.ge[1]=d.Ua[1],d.qf=!0,ki(this,c)}};function ni(a,b){var c=a.Nb[b],d=c.Qb[1]<<8|c.Qb[0];d||(d=1==c.fe?256:65536);return d}
function ki(a,b){var c=a.Nb[b];c.zd=32==c.Pf?1:0;c.fe=48==c.Pf?2:1}
function li(a,b,c){var d=a.Nb[b];if(d.Je&&(2!=b||a.kc&1)){var e=rb(a.ka,a.Dg),f=(e-d.Nd)/a.al|0;0>f&&(d.Nd=e,f=0);var h=ni(a,b),g=a.Nb[b],m=g.mc[1]<<8|g.mc[0];m||(m=1==g.fe?256:65536);g=m-f;0==d.mode?(0>=g&&(g=0),g||(d.Qc=!0,d.Je=!1,b||hi(a,0))):4==d.mode?(d.Qc=1!=g,0>=g&&(g=h+g,0>=g&&(g=h),d.mc[0]=g&255,d.mc[1]=g>>8,d.Nd=e,!b&&d.Qc&&hi(a,0))):6==d.mode&&(g-=f,0>=g&&(d.Qc=!d.Qc,g=h+g,0>=g&&(g=h),d.mc[0]=g&255,d.mc[1]=g>>8,d.Nd=e,!b&&d.Qc&&hi(a,0)));d.Ua[0]=g&255;d.Ua[1]=g>>8;c&&(a.Nd=0)}return d}
function tb(a,b){for(var c=0;c<a.Nb.length;c++)li(a,c,b);if(a.Da>=nh){var c=0,d=a.ka.ba.ld,e=rb(a.ka,a.Dg);if(0<=a.tf&&(c=e-a.tf,Math.floor(c/d)&&60<=++a.oa[0]&&(a.oa[0]=0,60<=++a.oa[2]&&(a.oa[2]=0,24<=++a.oa[4])))){a.oa[4]=0;a.oa[6]=a.oa[6]%7+1;var f=a.oa[9],h=ja[a.oa[8]-1];28==h&&0===f%4&&(f%100||0===f%400)&&h++;++a.oa[7]>h&&(a.oa[7]=1,12<++a.oa[8]&&(a.oa[8]=1,a.oa[9]=(a.oa[9]+1)%100))}a.tf=e-c%d}}k.Em=function(){var a=this.lg;this.hf&16&&(this.kc&128?a=this.Mc:this.Ka&&(a=oi(this.Ka)));return a};
k.Pn=function(a,b){this.lg=b};k.Fm=function(){return this.kc};k.Qn=function(a,b){pi(this,b);this.Ka&&qi(this.Ka,b&128?!1:!0,b&64?!0:!1)};function pi(a,b){var c=!!(b&2),d=!!(a.kc&2);a.kc=b;c!=d&&sb(a,c)}k.Gm=function(){var a=0,a=this.Da==ih?this.kc&4?a|this.we&15:a|this.we>>4&1:this.kc&8?a|this.Mc>>4:a|this.Mc&15;this.kc&1&&li(this,2).Qc&&(a=this.kc&2?a|32:a|16);return a};k.Rn=function(a,b){this.th=b};k.Hm=function(){return this.hf};k.Sn=function(a,b){this.hf=b};
k.Vl=function(){var a=this.fg;this.lb&=-258;var b=this.Ka&&oi(this.Ka,!0);b&&ri(this,b);return a};k.hn=function(a,b){if(this.lb&8)switch(this.$c){case 96:si(this,b);break;case 209:ti(this,b);break;default:if(si(this,this.Nc&-17),this.Ka){var c=-1;switch(b){case 255:var c=250,d=this.Ka;d.cc=[170];d.ja&&ui(d.ja)}ri(this,c)}}this.$c=b;this.lb&=-9};k.Wl=function(){return this.kc&-209|(rb(this.ka)&64?16:0)};k.jn=function(a,b){pi(this,b)};
k.Xl=function(){var a=this.lb&255;this.lb&256&&(this.lb|=1,this.lb&=-257);return a};k.gn=function(a,b){this.$c=b;this.lb|=8;var c=0;240<=this.$c&&(c=this.$c^15,this.$c=240);switch(this.$c){case 192:ri(this,this.Xd);break;case 173:si(this,this.Nc|16);break;case 174:si(this,this.Nc&-17);break;case 170:this.Ka&&vi(this.Ka,!0);si(this,this.Nc|16);ri(this,85);ti(this,3);break;case 224:ri(this,this.Nc&16?0:1);break;case 240:c&1&&ic(this.ka)}};
function si(a,b){var c=!(a.Nc&16);a.Nc=b;a.lb=a.lb&-5|b&4;if(a.Ka){var d=!(b&16);qi(a.Ka,!!(b&8),d)&&ri(a,oi(a.Ka,!0));!c&&d&&oi(a.Ka)&&ui(a)}}function ri(a,b){0<=b&&(a.fg=b,a.lb&=-2,a.lb|=256)}function ti(a,b){a.rh=b;Ra(a.ra,!!(b&2));b&1||ic(a.ka)}function ui(a){a.Da<nh?hi(a,1,4):a.Nc&16||hi(a,1,120)}k.km=function(){return this.Fe};k.xn=function(a,b){this.Fe=b;this.kg=b&128?0:128};
k.lm=function(){var a=this.Fe&63;if(13>=a){var b=this.oa[a];if(10>a){var c=!1;4!=a&&5!=a||this.oa[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.oa[11]&4||(c&&128<b&&(b-=48),b=b%10|b/10<<4)}else 10==a&&(this.oa[a]^=128);a=b}else a=this.oa[a];return a};k.yn=function(a,b){var c=this.Fe&63,d=this.oa,e;if(13>=c){if(e=b,10>c){var f=!1;this.oa[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12<e&&(e+=48),this.oa[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};k.Cm=function(){return this.ig};
k.Mn=function(a,b){this.ig=b};k.On=function(a,b){this.kg=b};function jh(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 sb(a,b){if(a.zh){void 0!==b?a.Nj=b:b=a.Nj&&a.ka&&a.ka.na.vc;var c=Math.round(1193181/ni(a,2));if(20>c||2E4<c)b=!1;b?a.Wc?a.Wc.frequency.value=c:(a.Wc=a.zh.createOscillator(),a.Wc.type=1,a.Wc.connect(a.zh.destination),a.Wc.frequency.value=c,a.Wc.noteOn(0)):a.Wc&&(a.Wc.noteOff(0),a.Wc.disconnect(),delete a.Wc)}}
var qh={0:function(){return Nh(this,0,0)},1:function(){return Ph(this,0,0)},2:function(){return Nh(this,0,1)},3:function(){return Ph(this,0,1)},4:function(){return Nh(this,0,2)},5:function(){return Ph(this,0,2)},6:function(){return Nh(this,0,3)},7:function(){return Ph(this,0,3)},8:function(){return Rh(this,0)},32:function(){return $h(this,0)},33:function(){return this.ub[0].ad},64:function(){return ji(this,0)},65:function(){return ji(this,1)},66:function(){return ji(this,2)},67:R.prototype.Mm,129:function(){return Wh(this,
0,2)},130:function(){return Wh(this,0,3)},131:function(){return Wh(this,0,1)},135:function(){return Wh(this,0,0)}},sh={96:R.prototype.Em,97:R.prototype.Fm,98:R.prototype.Gm,99:R.prototype.Hm},uh={96:R.prototype.Vl,97:R.prototype.Wl,100:R.prototype.Xl,112:R.prototype.km,113:R.prototype.lm,128:R.prototype.Cm,132:function(){return this.Ob[0]},133:function(){return this.Ob[1]},134:function(){return this.Ob[2]},136:function(){return this.Ob[3]},137:function(){return Wh(this,1,2)},138:function(){return Wh(this,
1,3)},139:function(){return Wh(this,1,1)},140:function(){return this.Ob[4]},141:function(){return this.Ob[5]},142:function(){return this.Ob[6]},143:function(){return Wh(this,1,0)},160:function(){return $h(this,1)},161:function(){return this.ub[1].ad},192:function(){return Nh(this,1,0)},194:function(){return Ph(this,1,0)},196:function(){return Nh(this,1,1)},198:function(){return Ph(this,1,1)},200:function(){return Nh(this,1,2)},202:function(){return Ph(this,1,2)},204:function(){return Nh(this,1,3)},
206:function(){return Ph(this,1,3)},208:function(){return Rh(this,1)}},rh={0:function(a,b){Oh(this,0,0,b)},1:function(a,b){Qh(this,0,0,b)},2:function(a,b){Oh(this,0,1,b)},3:function(a,b){Qh(this,0,1,b)},4:function(a,b){Oh(this,0,2,b)},5:function(a,b){Qh(this,0,2,b)},6:function(a,b){Oh(this,0,3,b)},7:function(a,b){Qh(this,0,3,b)},8:function(a,b){this.Xa[0].sh=b},9:function(a,b){Sh(this,0,b)},10:function(a,b){Th(this,0,b)},11:function(a,b){this.Xa[0].tb[b&3].mode=b},12:function(){this.Xa[0].wb=0},13:function(){Vh(this,
0)},32:function(a,b){ai(this,0,b)},33:function(a,b){gi(this,0,b)},64:function(a,b){mi(this,0,b)},65:function(a,b){mi(this,1,b)},66:function(a,b){mi(this,2,b)},67:R.prototype.Wn,129:function(a,b){Xh(this,0,2,b)},130:function(a,b){Xh(this,0,3,b)},131:function(a,b){Xh(this,0,1,b)},135:function(a,b){Xh(this,0,0,b)}},th={96:R.prototype.Pn,97:R.prototype.Qn,98:R.prototype.Rn,99:R.prototype.Sn,160:R.prototype.On},vh={96:R.prototype.hn,97:R.prototype.jn,100:R.prototype.gn,112:R.prototype.xn,113:R.prototype.yn,
128:R.prototype.Mn,132:function(a,b){this.Ob[0]=b},133:function(a,b){this.Ob[1]=b},134:function(a,b){this.Ob[2]=b},136:function(a,b){this.Ob[3]=b},137:function(a,b){Xh(this,1,2,b)},138:function(a,b){Xh(this,1,3,b)},139:function(a,b){Xh(this,1,1,b)},140:function(a,b){this.Ob[4]=b},141:function(a,b){this.Ob[5]=b},142:function(a,b){this.Ob[6]=b},143:function(a,b){Xh(this,1,0,b)},160:function(a,b){ai(this,1,b)},161:function(a,b){gi(this,1,b)},192:function(a,b){Oh(this,1,0,b)},194:function(a,b){Qh(this,
1,0,b)},196:function(a,b){Oh(this,1,1,b)},198:function(a,b){Qh(this,1,1,b)},200:function(a,b){Oh(this,1,2,b)},202:function(a,b){Qh(this,1,2,b)},204:function(a,b){Oh(this,1,3,b)},206:function(a,b){Qh(this,1,3,b)},208:function(a,b){this.Xa[1].sh=b},210:function(a,b){Sh(this,1,b)},212:function(a,b){Th(this,1,b)},214:function(a,b){this.Xa[1].tb[b&3].mode=b},216:function(){this.Xa[1].wb=0},218:function(){Vh(this,1)}};
u(function(){for(var a=A(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new R(d);Ja(d,c);wh(d)}});function wi(a){v.call(this,"ROM",a,wi);this.vb=null;this.sj=a.addr;this.fh=a.size;this.xl=a.alias;this.Qf=a.file;this.Tj=a.notify;if(this.Qf){a=this.Qf;var b=ea(this.Qf);"json"!=b&&"hex"!=b&&(a=la()+"/api/v1/dump?file="+this.Qf+"&format=bytes&decimal=true");r(a,!0,null,this,wi.prototype.bn)}}y(v,wi);wi.prototype.oc=function(a,b,c,d){this.ra=b;this.ka=c;this.Va=d;xi(this)};
wi.prototype.Sb=function(){this.ph&&(this.Va&&this.Va.mp(this.sj,this.fh,this.ph),delete this.ph);return!0};wi.prototype.Rb=function(){return!0};
wi.prototype.bn=function(a,b,c){if(c)this.ya("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.vb=e;else if(f)for(this.vb=Array(4*f.length),c=b=0;b<f.length;b++)this.vb[c++]=f[b]&255,this.vb[c++]=f[b]>>8&255,this.vb[c++]=f[b]>>16&255,this.vb[c++]=f[b]>>24&255;else this.vb=d;this.ph=d.symbols;if(!this.vb.length){s("Empty ROM: "+a);return}if(1==this.vb.length){s(this.vb[0]);return}}catch(h){this.ya("ROM data error: "+
h.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.vb=Array(a.length),d=0;d<a.length;d++)this.vb[d]=parseInt(a[d],16);xi(this)}};function xi(a){if(!La(a))if(!a.Qf)a.Na();else if(a.vb&&a.ra){if(a.vb.length!=a.fh)Ma(a,"ROM size (0x"+p(a.vb.length)+") does not match specified size (0x"+p(a.fh)+")");else if(yi(a,a.sj)&&yi(a,a.xl)){if(a.Tj){var b=Ha(a.Tj,a.id);b&&("ega"==b.Da&&zi(b,a.vb,[8752,12640],8),b.Na())}delete a.vb}a.Na()}}
function yi(a,b){if(null==b)return!0;if(Sa(a.ra,b,a.fh,!0)){for(var c=0;c<a.vb.length;c++)Za(a.ra,b+c,a.vb[c]);return!0}return!1}u(function(){for(var a=A(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new wi(d);Ja(d,c)}});function Ai(a){v.call(this,"RAM",a,Ai);this.eg=a.addr;this.pd=a.size;this.Nl=a.test;this.Kl=!!this.pd;this.ug=!1}y(v,Ai);Ai.prototype.oc=function(a,b,c){this.ra=b;this.ka=c;this.ja=B(a,"ChipSet");this.Na()};Ai.prototype.Sb=function(a,b){b||this.reset();return!0};
Ai.prototype.Rb=function(){return!0};Ai.prototype.reset=function(){if(!this.eg&&!this.Kl&&this.ja){var a=1024*Ah(this.ja);this.pd&&a!=this.pd&&(Wa(this.ra,this.eg,this.pd),this.ug=!1);this.pd=a}!this.ug&&this.pd&&Sa(this.ra,this.eg,this.pd)&&(this.ug=!0,this.status(Math.floor(this.pd/1024)+"Kb"));if(this.ug){if(this.Nl||$a(this.ra,1138,4660),this.ja&&(a=this.ja,a.oa)){var b=1048576>this.eg?21:23,c=a.oa[b]|a.oa[b+1]<<8,c=c+(this.pd>>10);a.oa[b]=c&255;a.oa[b+1]=c>>8;Eh(a)}}else s("No RAM allocated")};
u(function(){for(var a=A(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ai(d);Ja(d,c)}});function Bi(a){v.call(this,"Keyboard",a,Bi);this.Ij=!1;this.oh={};this.Vm=250;this.Wm=100;this.Na()}y(v,Bi);
var S={vo:1,wo: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,so:65,to:66,mj:67,tl:68,E:69,zo:70,Co:71,nj:72,Eo:73,Fo:74,Go:75,Ho:76,Io:77,kh:78,Ko:79,Lo:80,No:81,pj:82,Ro:83,ap:84,ep:85,fp:86,gp:87,ip:88,jp:89,kp:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,lp:97,np:98,pp:99,qp:100,rp:101,sp:102,tp:103,vp:104,wp:105,xp:106,yp:107,zp:108,
Ap:109,Cp:110,Ep:111,Fp:112,Gp:113,Hp:114,Ip:115,Jp:116,Kp:117,Mp:118,Np:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Ci={16:2,17:8,18:32,20:256,144:512,145:1024},Di={"caps-lock":256,"num-lock":512,"scroll-lock":1024},Ei={tab:1009,esc:1027,"caps-lock":1020,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":4063,"ctrl-alt-del":4081},Fi={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,
bs:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,
"num-down":80,"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},T={1027:1};T[S["1"]]=2;T[S["!"]]=10754;T[S["2"]]=3;T[S["@"]]=10755;T[S["3"]]=4;T[S["#"]]=10756;T[S["4"]]=5;T[S.$]=10757;T[S["5"]]=6;T[S["%"]]=10758;T[S["6"]]=7;T[S["^"]]=10759;
T[S["7"]]=8;T[S["&"]]=10760;T[S["8"]]=9;T[S["*"]]=10761;T[S["9"]]=10;T[S["("]]=10762;T[S["0"]]=11;T[S[")"]]=10763;T[S["-"]]=12;T[S._]=10764;T[S["="]]=13;T[S["+"]]=10765;T[1008]=14;T[1009]=15;T[113]=16;T[81]=10768;T[119]=17;T[87]=10769;T[101]=18;T[69]=10770;T[114]=19;T[82]=10771;T[116]=20;T[84]=10772;T[121]=21;T[89]=10773;T[117]=22;T[85]=10774;T[105]=23;T[73]=10775;T[111]=24;T[79]=10776;T[112]=25;T[80]=10777;T[S["["]]=26;T[S["{"]]=10778;T[S["]"]]=27;T[S["}"]]=10779;T[13]=28;T[1017]=29;T[97]=30;
T[65]=10782;T[115]=31;T[83]=10783;T[100]=32;T[68]=10784;T[102]=33;T[70]=10785;T[103]=34;T[71]=10786;T[104]=35;T[72]=10787;T[106]=36;T[74]=10788;T[107]=37;T[75]=10789;T[108]=38;T[76]=10790;T[S[";"]]=39;T[S[":"]]=10791;T[S["'"]]=40;T[S['"']]=10792;T[S["`"]]=41;T[S["~"]]=10793;T[1016]=42;T[S["\\"]]=43;T[S["|"]]=10795;T[122]=44;T[90]=10796;T[120]=45;T[88]=10797;T[99]=46;T[67]=10798;T[118]=47;T[86]=10799;T[98]=48;T[66]=10800;T[110]=49;T[78]=10801;T[109]=50;T[77]=10802;T[S[","]]=51;T[S["<"]]=10803;
T[S["."]]=52;T[S[">"]]=10804;T[S["/"]]=53;T[S["?"]]=10805;T[3016]=54;T[1018]=56;T[S[" "]]=57;T[1020]=58;T[1112]=59;T[1113]=60;T[1114]=61;T[1115]=62;T[1116]=63;T[1117]=64;T[1118]=65;T[1119]=66;T[1120]=67;T[1121]=68;T[1144]=69;T[1145]=70;T[1036]=71;T[1038]=72;T[1033]=73;T[1037]=75;T[1039]=77;T[1035]=79;T[1040]=80;T[1034]=81;T[1045]=82;T[1046]=83;T[1122]=87;T[1123]=88;T[4003]=7470;T[4063]=7494;T[4081]=3677523;k=Bi.prototype;
k.Bb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.qa[a])switch(c){case "kbd":return this.qa[a]=d,d.onkeydown=function(a){return Gi(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.Qa&64?e.Qa&=-65:e.Qa&40?b=!1:(e.Ij&&a==S["`"]&&(a=27),b=!Hi(e,a));return b},d.onkeyup=function(a){return Gi(e,a,!1)},!0;case "caps-lock":return this.qa[a]=d,d.onclick=function(){e.ka&&e.ka.od();Hi(e,1020,!0)},!0;case "num-lock":return this.qa[a]=d,d.onclick=function(){e.ka&&
e.ka.od();Hi(e,1144,!0)},!0;case "scroll-lock":return this.qa[a]=d,d.onclick=function(){e.ka&&e.ka.od();Hi(e,1145,!0)},!0;default:if(void 0!==Ei[c]&&"button"==b)return this.qa[a]=d,d.onclick=function(a,b,c){return function(){a.ka&&a.ka.od();Ii(a,c);return!Hi(a,c)}}(this,c,Ei[c]),!0;if(void 0!==Fi[c])return this.qa[a]=d,b=function(a,b,c){return function(){Ji(a,c)}}(this,c,Fi[c]),c=function(a,b,c){return function(){Ji(a,c)}}(this,c,Fi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):
(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.oc=function(a,b,c,d){this.ra=b;this.ka=c;this.Va=d;this.ja=B(a,"ChipSet")};k.Na=function(){this.Ll=(this.Ul=qa("iOS"))||qa("Android");return v.prototype.Na.call(this)};function qi(a,b,c){var d=!1;a.Kh!==c&&(a.Kh=a.Oh=c);a.zg!==b&&(a.zg=b)&&!a.Oh&&vi(a);a.zg&&a.Oh&&(a.cc=[170],a.ja&&ui(a.ja),a.Oh=!1,d=!0);return d}function oi(a,b){var c=0;a.cc.length&&(c=a.cc[0],b&&vi(a));return c}
function vi(a,b){0<a.cc.length&&(b?a.cc=[]:(a.cc.shift(),0<a.cc.length&&a.ja&&ui(a.ja)))}k.Sb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};k.Rb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Ed();this.Qa=0;this.cc=[];if(this.Xc)for(var a in this.Xc)ca(a)||this.Xc[a]&&clearTimeout(this.Xc[a]);this.Xc=[];this.dl=this.qe=0};k.save=function(){var a=new G(this);a.set(0,this.gj());return a.data()};k.restore=function(a){return this.Ed(a[0])};
k.Ed=function(a){var b=0;void 0===a&&(a=[]);this.Kh=a[b++];this.zg=a[b];return!0};k.gj=function(){var a=0,b=[];b[a++]=this.Kh;b[a]=this.zg;return b};function Ji(a,b){var c=b&127,d=c==b;if(a.cc)if(20>a.cc.length){if(!(!d&&!a.oh[c]||d&&a.oh[c])){a.oh[c]=d;a.cc.push(b);1==a.cc.length&&a.ja&&ui(a.ja);for(var e in Fi)if(Fi[e]==c){(c=a.qa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.cc.length&&a.cc.push(255)}
function Ki(a,b){var c=b?a.Wm:a.Vm;a.ka&&a.ka.ba.Rc&&(c/=a.ka.ba.Rc);return c}function Li(a,b){!a.qe||void 0!==b&&b==a.qe||(clearTimeout(a.Xc[a.qe]),Mi(a,a.qe,!1))}function Ni(a,b){var c,d;for(d in Di){var e="led-"+d,f=Di[d];b&&b!=f||!(c=a.qa[e])||(c.style.backgroundColor=a.Qa&f?"#00ff00":"#000000")}}function Ii(a,b){var c;if(T[b]){var d=Math.floor(b/1E3)&2,e=Ci[Math.floor(b%1E3)]||0;e&&(d&&(e>>=1),e&1792&&(c=!(a.Qa&e)),a.Qa&=~e,c&&(a.Qa|=e),Ni(a,e))}}
function Gi(a,b,c){var d,e=!c,f=b.keyCode,h=f;c&&(a.dl=f);if(T[f+1E3]){var h=h+1E3,g=Ci[f]||0;if(g)2==b.location&&(g>>=1,h+=2E3),a.Qa&=~g,c&&(a.Qa|=g),Ni(a,g),20==f||144==f||145==f?d=Hi(a,h):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.Qa&40)&&(h=4063),d=c?!Hi(a,h):!1}else 91==f?(a.Qa&=-65,c&&(a.Qa|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(h+=32):d=!0;e&&(a.Qa&=-65,a.Ll||f!=a.dl||Li(a));void 0===d&&(d=!Mi(a,h,c));return d}
function Hi(a,b,c){var d=!1;Li(a,b);c&&Ii(a,b);Mi(a,b,!0)&&(c=!1,a.Xc[b]&&(clearTimeout(a.Xc[b]),c=!0),c=Ki(a,c),a.Xc[a.qe=b]=setTimeout(function(a){return function(){Mi(a,b,!1)}}(a),c),d=!0);return d}
function Mi(a,b,c){var d=!1;c||(a.Xc[b]=null,a.qe==b&&(a.qe=0));var e=T[b]||T[b+1E3];if(void 0!==e){14==e&&40==(a.Qa&40)&&(e=83);var d=[],f=e&255;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var h=0,g=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==g?a.Qa&3||a.Qa&256&&b||(h=g):29==g?a.Qa&12||(h=g):56==g?a.Qa&48||(h=g):d.push(f|(c?0:128)),h&&(c?d.unshift(h):d.push(h|128)))}for(c=0;c<d.length;c++)Ji(a,d[c]);d=!0}return d}
u(function(){for(var a=A(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Bi(d);Ja(d,c)}});
function U(a,b,c,d){v.call(this,"Video",a,U);this.Da=a.model;this.Hc=0;"ega"==this.Da&&(this.kl=a.switches,this.Hc=a.memory||0);this.Uc=a.mode;if(void 0===this.Uc||void 0===V[this.Uc])this.Uc=Oi;this.Qg=a.charCols;this.gi=a.charRows;if(void 0===this.Qg||void 0===this.gi)this.Qg=V[this.Uc][0],this.gi=V[this.Uc][1];this.dd=a.screenWidth;this.Bd=a.screenHeight;this.Ml=a.scale;this.Jl=12<=Math.round(this.dd/this.Qg);this.Ol=a.touchScreen;this.Ta=b;this.Ic=c;this.pl=d;this.Fd=null;this.Hl=a.autoLock;this.Ra=
this.Db=0;this.sd=[];this.Yc=Array(16);this.Lh=!1;var e=this;b&&(b.onfocus=function(){e.Lh=!0},b.onblur=function(){e.Lh=!1},b.Re=b.requestPointerLock||b.mozRequestPointerLock||b.webkitRequestPointerLock,b.ql=b.exitPointerLock||b.mozExitPointerLock||b.webkitExitPointerLock,b=function(){e.Kf(document.pointerLockElement===e.Ta||document.mozPointerLockElement===e.Ta||document.webkitPointerLockElement===e.Ta)},"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"!=ea(a)&&(a=la()+"/api/v1/dump?file="+a+"&format=bytes"),r(a,!0,null,this,this.cn)}y(v,U);
var Pi={2:{ji:15700,ii:208,Yi:85,Zi:96},3:{ji:18432,ii:364,Yi:85,Zi:96},4:{ji:21850,ii:364,Yi:85,Zi:96}},Qi={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]},Oi=7,V=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];V[Oi]=[80,25,1,0,1];V[13]=[320,200,16];V[14]=[640,200,16];V[15]=[640,350,16];V[16]=[640,350,16];V[0]=V[1];V[2]=V[3];V[5]=V[4];var Ri=Array(5);Ri[0]=[0,0,0,255];Ri[1]=[127,192,127,255];
Ri[2]=[127,192,127,255];Ri[3]=[127,255,127,255];Ri[4]=[127,255,127,255];var Si=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],W=Array(16);W[0]=[0,0,0,255];W[1]=[0,0,170,255];W[2]=[0,170,0,255];W[3]=[0,170,170,255];W[4]=[170,0,0,255];W[5]=[170,0,170,255];W[6]=[170,85,0,255];W[7]=[170,170,170,255];W[8]=[85,85,85,255];W[9]=[85,85,255,255];W[10]=[85,255,85,255];W[11]=[85,255,255,255];W[12]=[255,85,85,255];W[13]=[255,85,255,255];W[14]=[255,255,85,255];W[15]=[255,255,255,255];
var Ti=[2,4,6],Ui=[3,5,7],Vi=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Wi=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],X=[0];X[128]=1;X[32768]=2;X[32896]=3;X[8388608]=4;X[8388736]=5;X[8421376]=6;X[8421504]=7;X[2147483648]=8;X[2147483776]=9;X[2147516416]=10;X[2147516544]=11;X[2155872256]=12;X[2155872384]=13;X[2155905024]=14;X[2155905152]=15;
function Xi(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=Yi[b],f=a.Jd||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(Zi)];this.Gg=b;this.Ra=e[2];this.Db=e[3];this.Hc=d||e[4];65536<=this.Hc&&720896<=this.Ra&&(this.Db=Math.min(this.Hc>>2,32768));this.Jc=c[0];this.pc=c[1];this.kf=c[2];this.Uf=c[3];this.wc=c[4]&255;this.Fg=c[4]>>8&255;this.bc=c[5];this.$h=Zi;if(5==b){this.$h=$i;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.Ra,this.Db,this.Hc],Array(this.Hc>>
2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.Cd=b[0];this.le=b[1];this.Sd=b[2];this.hj=b[3];this.Kg=b[4];this.Qh=b[5];this.Qe=b[6];this.bg=b[7];this.Th=b[8];this.Uh=b[9];this.Pe=b[10];this.Be=b[11];this.xb=b[12];d=b[13];"number"==typeof d&&(d=[this.Ra,this.Db,d]);this.Ra=d[0];this.Db=d[1];d=this.Hc>>2;if((this.Wd=b[14])&&this.Wd.length<d){for(var e=this.Wd,h=0,g=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)g[h]=q,h+=2;h==d&&(h=1)}this.Wd=g}this.eh(b[15]);this.Ui=b[16];
this.cb=b[17];this.Tc=b[18];this.hb=b[19];this.Tg=b[20];this.Md=b[21];this.oe=b[22];this.bi=b[23];this.ci=b[24]}f=Pi[f]||Pi[3];this.di=a.ka.ba.ld/f.ji|0;this.Ym=this.di*f.Yi/100|0;this.$j=this.di*f.ii;this.$m=this.$j*f.Zi/100|0;this.ki=null==c[7]?0:c[7]}}var Zi=18,$i=25;function aj(a){return this.yc(a)|this.yc(a+1)<<8}function bj(a,b){this.Bc(a,b&255);this.Bc(a+1,b>>8&255)}
var Y=[,,function(a){a+=this.offset;return(this.ea.xb=this.pa[a])>>this.ea.Ui&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.pa[b]>>8:this.pa[b])&255}];Y[16]=function(a){a+=this.offset;a=this.pa[a];for(var b=this.ea.bi&this.ea.ci,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.pa[c]&~this.ea.cb|(b|b<<8|b<<16|b<<24)&this.ea.cb;d=d&this.ea.hb|this.ea.xb&~this.ea.hb;this.pa[c]!=d&&(this.pa[c]=d,this.fb=!0)};
Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Tc|b<<8-this.ea.Tc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Md|this.ea.oe;d=d&this.ea.cb|this.pa[c]&~this.ea.cb;d=d&this.ea.hb|this.ea.xb&~this.ea.hb;this.pa[c]!=d&&(this.pa[c]=d,this.fb=!0)};
Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Tc|b<<8-this.ea.Tc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Md|this.ea.oe;d&=this.ea.xb;d=d&this.ea.cb|this.pa[c]&~this.ea.cb;d=d&this.ea.hb|this.ea.xb&~this.ea.hb;this.pa[c]!=d&&(this.pa[c]=d,this.fb=!0)};
Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Tc|b<<8-this.ea.Tc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Md|this.ea.oe;d|=this.ea.xb;d=d&this.ea.cb|this.pa[c]&~this.ea.cb;d=d&this.ea.hb|this.ea.xb&~this.ea.hb;this.pa[c]!=d&&(this.pa[c]=d,this.fb=!0)};
Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Tc|b<<8-this.ea.Tc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Md|this.ea.oe;d^=this.ea.xb;d=d&this.ea.cb|this.pa[c]&~this.ea.cb;d=d&this.ea.hb|this.ea.xb&~this.ea.hb;this.pa[c]!=d&&(this.pa[c]=d,this.fb=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.cb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.pa[d]&~c;c=c&this.ea.hb|this.ea.xb&~this.ea.hb;this.pa[d]!=c&&(this.pa[d]=c,this.fb=!0)};
Y[4096]=function(a){a+=this.offset;var b=this.pa[a]&~this.ea.cb|this.ea.xb&this.ea.cb;this.pa[a]!=b&&(this.pa[a]=b,this.fb=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=Wi[b&15],d=d&this.ea.cb|this.pa[c]&~this.ea.cb,d=d&this.ea.hb|this.ea.xb&~this.ea.hb;this.pa[c]!=d&&(this.pa[c]=d,this.fb=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=Wi[b&15],d=d&this.ea.xb,d=d&this.ea.cb|this.pa[c]&~this.ea.cb,d=d&this.ea.hb|this.ea.xb&~this.ea.hb;this.pa[c]!=d&&(this.pa[c]=d,this.fb=!0)};
Y[40960]=function(a,b){var c=a+this.offset,d=Wi[b&15],d=d|this.ea.xb,d=d&this.ea.cb|this.pa[c]&~this.ea.cb,d=d&this.ea.hb|this.ea.xb&~this.ea.hb;this.pa[c]!=d&&(this.pa[c]=d,this.fb=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=Wi[b&15],d=d^this.ea.xb,d=d&this.ea.cb|this.pa[c]&~this.ea.cb,d=d&this.ea.hb|this.ea.xb&~this.ea.hb;this.pa[c]!=d&&(this.pa[c]=d,this.fb=!0)};
function cj(a){var b=[];if(void 0!==a.Gg){b[0]=a.Jc;b[1]=a.pc;b[2]=a.kf;b[3]=a.Uf;b[4]=a.wc|a.Fg<<8;b[5]=a.bc;if(5==a.Gg){var c=[];c[0]=a.Cd;c[1]=a.le;c[2]=a.Sd;c[3]=a.hj;c[4]=a.Kg;c[5]=a.Qh;c[6]=a.Qe;c[7]=a.bg;c[8]=a.Th;c[9]=a.Uh;c[10]=a.Pe;c[11]=a.Be;c[12]=a.xb;c[13]=[a.Ra,a.Db,a.Hc];var d;a:if(d=a.Wd){var e=0,f=[];if(void 0!==d[0])for(var h=0;2>h;h++)for(var g=h;g<d.length;){for(var m=d[g],n=g+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-g>>1;f[e++]=m;g=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.Zh;c[16]=a.Ui;c[17]=a.cb;c[18]=a.Tc;c[19]=a.hb;c[20]=a.Tg;c[21]=a.Md;c[22]=a.oe;c[23]=a.bi;c[24]=a.ci;b[6]=c}b[7]=a.ki}return b}Xi.prototype.eh=function(a){if(null!=a&&a!=this.Zh){var b=a&255,c=Y[b];c||b&1&&(c=Y[1]);var b=a&65280,d=Y[b];d||b&256&&(d=Y[256]);this.df||(this.df=[null,aj,null,bj]);this.df[0]=c;this.df[2]=d;this.Zh=a}};var Yi=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=U.prototype;
k.oc=function(a,b,c,d){this.ra=b;this.ka=c;this.Va=d;bb(b,this,dj);db(b,this,ej);"ega"==this.Da&&(bb(b,this,fj),db(b,this,gj));if((this.Ka=B(a,"Keyboard"))&&this.Ta){for(var e in this.qa)0<e.indexOf("lock")&&this.Ka.Bb("input","led",e,this.qa[e]);this.Ka.Bb("input",this.pl?"textarea":"canvas","kbd",this.pl||this.Ta)}this.gg=9;(this.ja=B(a,"ChipSet"))&&this.kl&&(this.gg=jh(this.kl,this.gg));this.Ka&&this.Ol&&hj(this)};
k.Bb=function(a,b,c,d){var e=this;if(!this.qa[c])switch(this.qa[c]=d,c){case "lockPointer":return this.jo=d.innerHTML,this.Ta&&this.Ta.Re?d.onclick=function(){e.Re(!0)}:d.parentNode.removeChild(d),!0;case "refresh":return d.onclick=function(){ib(e,!0)},!0}return!1};k.od=function(){this.Ta&&this.Ta.focus()};k.Re=function(a){if(this.Ta)if(a){if(this.Ta.Re)return this.Ta.Re(),this.Fd.Kf(!0),!0}else if(this.Ta.ql)return this.Ta.ql(),this.Fd.Kf(!1),!0;return!1};
k.Kf=function(a){this.Fd&&(this.Fd.Kf(a),this.Ka&&(this.Ka.Ij=a));var b=this.qa.lockPointer;b&&(b.innerHTML=a?"Press Esc to Unlock Pointer":this.jo)};function hj(a){var b=a.Ta;b&&!a.Jh&&(b.addEventListener("touchstart",function(b){ij(a,b)},!1),b.addEventListener("touchmove",function(b){ij(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.Jh=!0)}
function ij(a,b){a.Lh&&b.preventDefault();var c=0,d=0,e=a.Ta;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.dd/a.Ta.offsetWidth*(b.targetTouches[0].pageX-c)/(a.dd/3)|0;d=a.Bd/a.Ta.offsetHeight*(b.targetTouches[0].pageY-d)/(a.Bd/3)|0;1!=d?d?Hi(a.Ka,40,!0):Hi(a.Ka,38,!0):1!=c&&(c?Hi(a.Ka,39,!0):Hi(a.Ka,37,!0))}k.Sb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Rb=function(a){return a&&this.save?this.save():!0};
k.reset=function(){var a=!0,b=0;this.ja&&(b=Bh(this.ja));var c=!1;if(this.Da)switch(this.Da){case "ega":var c=!0,d=Qi[this.gg];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.Jd!==b&&(this.Jd=b,a=!0);this.Ca=null;this.Gc=this.xh=new Xi(this,1);this.Xb=this.rg=new Xi(this,3);c?(this.ma=new Xi(this,5,null,this.Hc),jj(this)):this.ma=new Xi;kj(this);this.Id=null;this.Uc=3==b?Oi:3;this.ce=this.xc=-1;this.be=0;lj(this,this.Uc);if(this.Ca.Ra&&a){a=this.Ca.Ra+this.yh;for(b=this.Ca.Ra;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.Jd?(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),$a(this.ra,b,c|d<<8);ib(this,!0)}};function jj(a){a.ma.Kg&1?(a.Gc=a.xh,a.Xb=a.ma):(a.Gc=a.ma,a.Xb=a.rg)}k.save=function(){var a=new G(this);a.set(0,cj(this.xh));a.set(1,cj(this.rg));a.set(2,[this.Jd,this.Uc,this.Id]);a.set(3,cj(this.ma));return a.data()};
k.restore=function(a){var b=a[2];this.Jd=b[0];this.Uc=b[1];this.Id=b[2];this.Ca=null;this.Gc=this.xh=new Xi(this,1,a[0]);this.Xb=this.rg=new Xi(this,3,a[1]);this.ma=new Xi(this,5,a[3],this.Hc);this.ma.Jc&&jj(this);kj(this);if(!mj(this))return!1;nj(this);return!0};
k.cn=function(a,b,c){if(c)this.ya("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){s("Empty font ROM image: "+a);return}if(1==d.length){s(d[0]);return}if(8192==d.length)zi(this,d,[0,6144]);else{this.ya("Unrecognized font data length ("+d.length+")");return}}catch(e){this.ya("Font ROM data error: "+e.message);return}this.Na()}};
function oj(a,b){if(1==b)return a.Yc[0]=W[0],a.Yc[1]=W[7],a.Yc;if(2==b){var c=a.Ca.kf;if(a.Ca===a.ma){var d=a.ma.Sd[0],c=d&7;d&16&&(c|=8);18!=a.ma.Sd[1]&&(c|=32)}a.Yc[0]=W[c&15];c=c&32?Ui:Ti;for(d=0;d<c.length;d++)a.Yc[d+1]=W[c[d]];return a.Yc}if(a.Xb===a.rg)return W;c=null!=a.ma.Sd[15]?a.ma.Sd:Vi;for(d=0;d<a.Yc.length;d++){var e=c[d]||0;a.Yc[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.Yc}function zi(a,b,c,d){a.cg=b;a.nh=c;a.he=d}
function kj(a){var b=!1;if(window&&a.cg){var c=a.he?0:2048,d=a.he?a.he:9;pj(a,1,a.nh[0],c,d,14,a.cg,Ri,Si)&&(b=!0);c=oj(a);d=a.he?a.he:8;pj(a,3,a.nh[1],0,d,8,a.cg,c)&&(b=!0);a.he&&pj(a,5,a.nh[0],0,a.he,14,a.cg,c)&&(b=!0)}return b}function pj(a,b,c,d,e,f,h,g,m){var n=!1;qj(a,b,c,d,e,f,h,g,m)&&(n=!0);a.Jl&&qj(a,b<<1,c,d,e,f,h,g,m)&&(n=!0);return n}
function qj(a,b,c,d,e,f,h,g,m){var n=!1,q=b&1?0:1,w=a.sd[b];w||(w={ec:e<<q,fc:f<<q,Ae:Array(g.length),rj:g.slice(),af:m,lh:Array(g.length)});for(m=0;m<g.length;m++){var t=g[m],C=w.Ae[m]?w.rj[m]:[];if(t[0]!==C[0]||t[1]!==C[1]||t[2]!==C[2]){var n=w,C=m,H=q,P=c,K=d,Q=e,va=f,Ua=h,Ob=[0,0,0,0],zc=window.document.createElement("canvas");zc.width=n.ec<<4;zc.height=n.fc<<4;for(var ci=zc.getContext("2d"),wa=void 0,xb=void 0,Va=void 0,Ac=8>va||!K?va:8,qd=ci.createImageData(n.ec,n.fc),wa=0;256>wa;wa++){for(Va=
0;Va<va;Va++)for(var rk=n.af&&C&1&&Va>=va-2,sk=Ua[Va<Ac?P+wa*Ac+Va:K+wa*Ac+Va-Ac],rd=0;rd<=H;rd++)for(xb=0;xb<Q;xb++){var di=xb<<H,ei=(Va<<H)+rd,fi=rk||sk&128>>(8<=xb&&176<=wa&&223>=wa?7:xb)?t:Ob;rj(qd,di,ei,fi);H&&rj(qd,di+1,ei,fi)}ci.putImageData(qd,(wa&15)*n.ec,(wa>>4)*n.fc)}n.Ae[C]="#"+p(t[0],2)+p(t[1],2)+p(t[2],2);n.rj[C]=t;n.lh[C]=zc;n=!0}}a.sd[b]=w;return n}function sj(a){0<a.be||0<=a.xc?0>a.ce&&(a.ce=0):a.ce=-1}
function nj(a){if(a.Ib){for(var b=10;15>=b;b++)if(null==a.Ca.bc[b])return;var c=a.Ca.bc[10],b=c&31,d=a.Ca.bc[11]&31,e=a.Ca.bc[9]&31,f=!1;a.Ca===a.ma&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)tj(a);else{c=a.Ca.bc[15]+((a.Ca.bc[14]&63)<<8);a.xc!=c&&(tj(a),a.xc=c);d=d-b+1;if(a.sl!=b||a.Cj!=d)a.sl=b,a.Cj=d;a.Ad=e+1;sj(a)}}}
function tj(a){if(0<=a.xc){if(void 0!==a.Wb){var b=a.Wb[a.xc];if(b&131072){var b=b&-131073,c=a.xc%a.yb,d=Math.floor(a.xc/a.yb);a.Ib&&a.sd[a.Ib]&&(a.He&&uj(a,c,d,b,a.He),uj(a,c,d,b));a.Wb[a.xc]=b}}a.xc=-1}}
function vj(a){var b;a=a.Ca;var c=a.Be[5];if(null!=c){b=2;var d=512,e=a.Be[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.Tc=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.ue=function(a){var b=this.Ca;null!=a&&b&&a!=b.Zh&&(b.eh(a),this.ra.eh(b.Ra,b.Db,b.df))};
function mj(a,b){var c,d=a.Id,e=a.Ca;if(e)if(1==e.Gg)d=Oi;else if(5==e.Gg){var d=null,f=e.Hc>>2,h=32768<f?32768:f,g=e.Be[6];if(null!=g){switch(g&12){case 0:e.Ra=655360;e.Db=f;d=255;break;case 4:e.Ra=655360;e.Db=f;d=3==a.Jd?15:16;break;case 8:e.Ra=720896;e.Db=h;d=Oi;break;case 12:e.Ra=753664,e.Db=h,d=3==a.Jd?2:3}c=e.bg[1]&8;f=e.bc[6]|(e.bc[7]&1)<<8;255!=d&&(g&1?753664==e.Ra?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=vj(a)}}else e.pc&8&&(e.pc&2?(d=e.pc&16?6:5,e.pc&4||(d-=1)):(d=e.pc&1?3:1,e.pc&4&&(d-=
1)));else a.Id=null,null==d&&(d=a.Uc);if(!lj(a,d,b))return!1;a.ue(c);return!0}
function lj(a,b,c){if(null!=b&&(b!=a.Id||c)){a.yl=0;a.Id=b;b=a.Ca||(b==Oi?a.Gc:a.Xb);if(b!=a.Ca||b.Ra!=a.Ra||b.Db!=a.Db){tj(a);if(a.Ra){if(!Wa(a.ra,a.Ra,a.Db))return!1;a.Ca&&(a.Ca.Jc=!1)}a.Ca=b;b.Jc=!0;a.Ra=b.Ra;a.Db=b.Db;if(!Sa(a.ra,b.Ra,b.Db,!1,b===a.ma?b:null))return!1}a.Ib=0;a.yb=a.Qg;a.hc=a.gi;a.ai=V[Oi][2];b=0;var d=V[a.Id];d&&(a.yb=d[0],a.hc=d[1],a.ai=d[2],b=d[3]||0,a.Ib=d[4],4==a.Jd&&a.Ca===a.ma&&3==a.Ib&&(7==a.ma.bc[9]?a.hc=43:a.Ib=5));a.Xj=a.yb*a.hc;a.Ng=a.Xj/a.ai;a.yh=(a.Ng<<1)+b;a.Aj=
b?a.yh+b>>1:0;13<=a.Id&&(a.Ng<<=1);a.sd.length&&(a.ed=Math.floor(a.dd/a.yb),a.fd=Math.floor(a.Bd/a.hc),a.Ib?(b=a.sd[a.Ib],d=a.sd[a.Ib<<1],a.Ml&&80==a.yb?d&&a.ed>=3*d.ec>>2&&(a.Ib<<=1,b=d):(d&&a.ed>=d.ec&&(a.Ib<<=1,b=d),b&&(a.ed=b.ec,a.fd=b.fc)),a.mf=a.nf=0,b&&(a.mf=a.yb*b.ec,a.nf=a.hc*b.fc)):(a.ed=a.fd=1,a.mf=a.yb,a.nf=a.hc),a.Hg=a.Ic.createImageData(a.mf,a.nf),a.Ge=window.document.createElement("canvas"),a.Ge.width=a.mf,a.Ge.height=a.nf,a.He=a.Ge.getContext("2d"),a.kj=a.lj=0,a.Bh=a.dd,a.Ch=a.Bd,
b=a.dd-a.yb*a.ed,d=a.Bd-a.hc*a.fd,0<b&&(a.kj=b>>1,a.Bh-=b),0<d&&(a.lj=d>>1,a.Ch-=d),b||d)&&(a.Ic.fillStyle=a.Ta.style.backgroundColor,a.Ic.fillRect(0,0,a.dd,a.Bd));!1!==c?ib(a,!0):wj(a,!0)}return!0}function rj(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function wj(a,b){var c;if(b){if(c=a.Ng,void 0===a.Wb||a.Wb.length!=c)a.Wb=Array(c)}else{if(void 0===a.Wb)return;c=a.Wb.length}for(var d=0;d<c;d++)a.Wb[d]=-1;a.be=-1}
function uj(a,b,c,d,e){var f=d&255,h=d>>8;d=h&15;var g=a.sd[a.Ib];g.af&&(d=g.af[d]);var m=h>>4&15;g.af&&(m=g.af[m]);e?(b*=g.ec,c*=g.fc,e.fillStyle=g.Ae[m],e.fillRect(b,c,g.ec,g.fc)):(b=b*a.ed+a.kj,c=c*a.fd+a.lj,a.Ic.fillStyle=g.Ae[m],a.Ic.fillRect(b,c,a.ed,a.fd));h&256&&(m=(f&15)*g.ec,f=(f>>4)*g.fc,e?e.drawImage(g.lh[d],m,f,g.ec,g.fc,b,c,g.ec,g.fc):a.Ic.drawImage(g.lh[d],m,f,g.ec,g.fc,b,c,a.ed,a.fd));h&512&&(f=a.sl,h=a.Cj,e?(a.Ad&&a.Ad!==g.fc&&(f=Math.floor(f*g.fc/a.Ad),h=Math.floor(h*g.fc/a.Ad)),
e.fillStyle=g.Ae[d],e.fillRect(b,c+f,g.ec,h)):(a.Ad&&a.Ad!==a.fd&&(f=Math.floor(f*a.fd/a.Ad),h=Math.floor(h*a.fd/a.Ad)),a.Ic.fillStyle=g.Ae[d],a.Ic.fillRect(b,c+f,a.ed,h)))}
function ib(a,b){if(a.na.Hb){var c=!1;a.Ca&&(a.Ca===a.ma?a.ma.le&32&&(c=!0):a.Ca.pc&8&&(c=!0));if(c||b){if(b)wj(a,!0);else if(void 0===a.Wb)return;var d=!1;!(b||++a.yl&15)&&0<=a.ce&&(a.ce++,d=!0);var e=0,f=a.Xj,c=a.Ca.Ra,h=c+a.Ca.Db,g=(a.Ca.bc[12]<<8)+a.Ca.bc[13];a.Ib&&(g<<=1);var c=c+g,m=a.yh;c+m>h&&(m=h-c,0>m&&(m=0));h=c+m;if(g=!b){for(var g=a.ra,n=!0,q=c>>g.Pb;0<m&&q<g.Ba.length;)g.Ba[q].fb&&(g.Ba[q].fb=n=!1,g.Ba[q].Hj=!0),m-=g.rc,q++;g=n}if(g){if(!d)return;if(!a.be){if(0>a.xc)return;e=a.xc;f=
e+1}}if(a.Ib){if(a.sd[a.Ib]){d=0;g=a.be=0;m=1048575;a.Ca.pc&32&&(g=32768,m&=~g,a.ce&2||(m&=-65537));for(c+=e<<1;c<h&&e<f;)n=Ya(a.ra,c),n|=65536,n&g&&(a.be++,n&=m),e==a.xc&&(n|=a.ce&1?131072:0),q=a.Wb[e],q!=n&&(uj(a,e%a.yb,Math.floor(e/a.yb),n,a.He),a.Wb[e]=n,d++),c+=2,e++;d&&a.He&&a.Ic.drawImage(a.Ge,0,0,a.mf,a.nf,a.kj,a.lj,a.Bh,a.Ch);sj(a)}}else if(a.Aj){for(var f=h,w,t,e=c,h=a.be=0,d=a.ai,g=16==d?65536:196608,m=16==d?1:2,n=oj(a,m),C=q=0,H=a.yb,P=0,K=a.hc,Q=0;e<f;){w=Ya(a.ra,e);t=a.Wb[h];if(t===
w)q+=d;else{a.Wb[h]=w;w=w>>8|(w&255)<<8;t=g;var va=16;q<H&&(H=q);for(var Ua=0;Ua<d;Ua++){var Ob=(w&(t>>=m))>>(va-=m);rj(a.Hg,q++,C,n[Ob])}q>P&&(P=q);C<K&&(K=C);C>=Q&&(Q=C+1)}e+=2;h++;if(q>=a.yb){q=0;C+=2;if(C>a.hc)break;C==a.hc&&(C=1,e=c+a.Aj)}}H<a.yb&&(a.He.putImageData(a.Hg,0,0,H,K,P-H,Q-K),a.Ic.drawImage(a.Ge,0,0,a.yb,a.hc,0,0,a.dd,a.Bd))}else{f=h;e=a.be=0;h=oj(a);d=a.Ca.Wd;m=g=0;n=a.yb;q=0;C=a.hc;for(H=0;c<f;){P=c++-a.Ra;P=d[P];K=a.Wb[e];if(K===P)g+=8;else{a.Wb[e]=P;g<n&&(n=g);for(K=0;8>K;K++)Q=
P&2155905152,0>Q&&(Q+=4294967296),Q=X[Q]||0,rj(a.Hg,g++,m,h[Q]),P<<=1;g>q&&(q=g);m<C&&(C=m);m>=H&&(H=m+1)}e++;if(g>=a.yb&&(g=0,++m>a.hc))break}n<a.yb&&(a.He.putImageData(a.Hg,0,0,n,C,q-n,H-C),a.Ic.drawImage(a.Ge,0,0,a.yb,a.hc,0,0,a.dd,a.Bd))}}}}k.zm=function(){return this.Gc.wc};k.Kn=function(a,b){var c=this.Gc;c.Fg=c.wc;c.wc=b&31};k.ym=function(){return xj(this.Gc)};k.Jn=function(a,b){yj(this,this.Gc,b)};k.Am=function(){return this.Gc.pc};k.Ln=function(a,b){this.Gc.pc=b;mj(this,!1)};
k.Bm=function(){return zj(this,this.Gc)};k.cl=function(a,b){this.ma.Qh=this.ma.Qh&-4|b&3};k.Uj=function(){var a=this.ma.Cd?this.ma.Sd[this.ma.le&31]:this.ma.le;this.ma.Cd=!this.ma.Cd;return a};k.bl=function(a,b){var c=this.ma.le&32;if(this.ma.Cd){var d=this.ma.le&31;if(16<=d||!c)this.ma.Sd[d]=b;this.ma.Cd=!1}else this.ma.le=b,this.ma.Cd=!0,b&32&&!c&&kj(this)&&ib(this,!0)};k.Lm=function(){var a=3-((this.ma.Kg&12)>>2),a=this.ma.hj&-17|(this.gg&1<<a)<<4-a;return this.ma.hj=a};
k.Nn=function(a,b){this.ma.Kg=b;jj(this)};k.Km=function(){return this.ma.Qe};k.Un=function(a,b){this.ma.Qe=b};k.Jm=function(){return this.ma.bg[this.ma.Qe]};k.Tn=function(a,b){this.ma.bg[this.ma.Qe]=b;2==this.ma.Qe&&(this.ma.cb=Wi[b&15])};k.rm=function(){return this.ma.Th};k.En=function(a,b){this.ma.Th=b};k.sm=function(){return this.ma.Uh};k.Fn=function(a,b){this.ma.Uh=b};k.qm=function(){return this.ma.Pe};k.Dn=function(a,b){this.ma.Pe=b};k.pm=function(){return this.ma.Be[this.ma.Pe]};
k.Cn=function(a,b){this.ma.Be[this.ma.Pe]=b;switch(this.ma.Pe){case 0:this.ma.Tg=Wi[b&15];this.ma.oe=this.ma.Tg&~this.ma.Md;break;case 1:this.ma.Md=~Wi[b&15];this.ma.oe=this.ma.Tg&~this.ma.Md;break;case 2:this.ma.bi=Wi[b&15]&2155905152;break;case 3:case 5:this.ue(vj(this));break;case 4:this.ma.Ui=(b&3)<<3;break;case 6:mj(this,!1);break;case 7:this.ma.ci=Wi[b&15^15]&2155905152;break;case 8:this.ma.hb=b|b<<8|b<<16|b<<24}};k.hm=function(){return this.Xb.wc};
k.vn=function(a,b){var c=this.Xb;c.Fg=c.wc;c.wc=b&31};k.gm=function(){return xj(this.Xb)};k.un=function(a,b){yj(this,this.Xb,b)};k.im=function(){return this.Xb.pc};k.wn=function(a,b){this.Xb.pc=b;mj(this,!1)};k.fm=function(){return this.Xb.kf};k.tn=function(a,b){this.Xb.kf!==b&&(this.Xb.kf=b,wj(this,!1))};k.jm=function(){return zj(this,this.Xb)};function xj(a){var b;a.wc<a.$h&&(b=a.bc[a.wc]);return b}function yj(a,b,c){b.wc<b.$h&&(b.bc[b.wc]=c,9==b.wc&&8!=b.Fg&&mj(a,!0),nj(a))}
function zj(a,b){var c=0,d=rb(a.ka),e=d-b.ki;0>e&&(e=0);e%b.di>b.Ym&&(c|=1);e%=b.$j;e>b.$m&&(c|=8);b.ki=d-e;b===a.ma?(c|=b.Uf&48^48,b.Cd=!1):c=(b.Uf^=9)|240;return b.Uf=c}
var dj={948:U.prototype.zm,949:U.prototype.ym,952:U.prototype.Am,954:U.prototype.Bm,980:U.prototype.hm,981:U.prototype.gm,984:U.prototype.im,985:U.prototype.fm,986:U.prototype.jm},ej={948:U.prototype.Kn,949:U.prototype.Jn,952:U.prototype.Ln,980:U.prototype.vn,981:U.prototype.un,984:U.prototype.wn,985:U.prototype.tn},fj={960:U.prototype.Uj,961:U.prototype.Uj,962:U.prototype.Lm,964:U.prototype.Km,965:U.prototype.Jm,970:U.prototype.sm,972:U.prototype.rm,974:U.prototype.qm,975:U.prototype.pm},gj={954:U.prototype.cl,
960:U.prototype.bl,961:U.prototype.bl,962:U.prototype.Nn,964:U.prototype.Un,965:U.prototype.Tn,970:U.prototype.Fn,972:U.prototype.En,974:U.prototype.Dn,975:U.prototype.Cn,986:U.prototype.cl};
u(function(){for(var a=A(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=z(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.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor;
e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new U(d,e,f);Ja(d,c)}});
function Z(a){this.Pj=a.adapter;switch(this.Pj){case 1:this.Zi=1016;this.Ff=4;break;case 2:this.Zi=760;this.Ff=3;break;default:s("Unrecognized serial adapter #"+this.Pj);return}this.wd=null;v.call(this,"SerialPort",a,Z);var b=a.binding,c;a=tj;b&&(void 0===c&&(c="Panel"),(c=Ia(c,this.id))&&(b=c.ra[b])&&this.zb(null,null,a,b))}y(v,Z);var tj="buffer";k=Z.prototype;k.tj=function(a,b){return a==this.Vh?(this.Dd=b,this):null};
k.zb=function(a,b,c,d){var e=this;switch(c){case tj:return this.ra[c]=this.wd=d,d.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),uj(e,[b]))},d.onkeypress=function(a){a=a||window.event;uj(e,[a.which||a.keyCode])},!0}return!1};k.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;this.ja=C(a,"ChipSet");bb(b,this,vj,this.Zi);db(b,this,wj,this.Zi);this.Na()};
k.Qb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Pb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Cd()};k.save=function(){var a=new G(this),b=0,c=[];c[b++]=this.th;c[b++]=this.xj;c[b++]=this.ve;c[b++]=this.ig;c[b++]=this.sd;c[b++]=this.Yd;c[b++]=this.Nc;c[b++]=this.oc;c[b++]=this.vj;c[b]=this.af;a.set(0,c);return a.data()};k.restore=function(a){return this.Cd(a[0])};
k.Cd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.th=a[b++];this.xj=a[b++];this.ve=a[b++];this.ig=a[b++];this.sd=a[b++];this.Yd=a[b++];this.Nc=a[b++];this.oc=a[b++];this.vj=a[b++];this.af=a[b];return!0};function uj(a,b){a.af=a.af.concat(b);xj(a)}function xj(a){0<a.af.length&&!(a.oc&1)&&(a.th=a.af.shift(),a.oc|=1);var b=-1;a.oc&1&&a.ig&1&&(b=4);0<=b?(a.sd&=-8,a.sd|=b,a.ja&&a.Ff&&di(a.ja,a.Ff)):(a.sd|=1,a.ja&&a.Ff&&ei(a.ja,a.Ff))}
k.Hm=function(){var a=this.Yd&128?this.ve&255:this.th;this.oc&=-2;xj(this);return a};k.sm=function(){return this.Yd&128?this.ve>>8:this.ig};k.tm=function(){return this.sd};k.um=function(){return this.Yd};k.wm=function(){return this.Nc};k.vm=function(){return this.oc};k.Cm=function(){return this.vj};
k.Un=function(a,b){if(this.Yd&128)this.ve=this.ve&-256|b;else{this.xj=b;this.oc&=-97;var c;this.wd?(13!=b&&(8==b?this.wd.value=this.wd.value.slice(0,-1):(this.wd.value+=String.fromCharCode(b),this.wd.scrollTop=this.wd.scrollHeight)),c=!0):c=!1;c&&(this.oc|=96)}};k.Fn=function(a,b){this.Yd&128?this.ve=this.ve&255|b<<8:this.ig=b};k.Gn=function(a,b){this.Yd=b};
k.Hn=function(a,b){var c=this.Nc;this.Nc=b;if(this.Dd&&(c^b)&3){var c=this.Dd,d=this.Nc,e=3==(d&3);if(e){if(!c.Ic){var f=!1;c.Nc&2||(c.reset(),f=!0);c.Nc&1||(f=!0);f&&uj(c.mf,[77,77]);yj(c,c.Ra);c.setActive(e)}}else c.Ic&&(zj(c.Ra),c.setActive(e));c.Nc=d}};var vj={0:Z.prototype.Hm,1:Z.prototype.sm,2:Z.prototype.tm,3:Z.prototype.um,4:Z.prototype.wm,5:Z.prototype.vm,6:Z.prototype.Cm},wj={0:Z.prototype.Un,1:Z.prototype.Fn,3:Z.prototype.Gn,4:Z.prototype.Hn};
u(function(){for(var a=A(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Z(d);Ja(d,c)}});function Aj(a){v.call(this,"Mouse",a,Aj);if(this.Uh=a.serial)this.bj="SerialPort";this.setActive(!1);this.zg=!1;this.Na()}y(v,Aj);k=Aj.prototype;k.mc=function(a,b,c,d){this.La=a;this.qa=b;this.la=c;this.Sa=d;this.gh=C(this.La,"Video")};k.setActive=function(a){this.Ic=a};
k.Qb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.bj&&!this.mf){for(var c=null;(c=C(this.La,this.bj,c))&&(!c.tj||!(this.mf=c.tj(this.Uh,this))););this.mf?this.gh&&(c=this.gh,c.Dd=this,this.Ra=c.Ra):s(this.id+": "+this.bj+" "+this.Uh+" unavailable")}this.Ic?yj(this,this.Ra):zj(this.Ra)}return!0};k.Pb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Cd()};k.save=function(){var a=new G(this);a.set(0,this.fj());return a.data()};
k.restore=function(a){return this.Cd(a[0])};k.Cd=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.setActive(a[b++]);this.Xf=a[b++];this.Yf=a[b++];this.we=a[b++];this.xe=a[b++];this.ug=a[b++];this.vg=a[b++];this.Nc=a[b];return!0};k.fj=function(){var a=0,b=[];b[a++]=this.Ic;b[a++]=this.Xf;b[a++]=this.Yf;b[a++]=this.we;b[a++]=this.xe;b[a++]=this.ug;b[a++]=this.vg;b[a]=this.Nc;return b};k.Mf=function(a){this.zg=a};
function yj(a,b){b&&(a.Ih||(b.addEventListener("mousemove",function(b){if(a.Ic&&a.la&&a.la.na.uc){if(0>a.Xf||0>a.Yf)a.Xf=b.clientX,a.Yf=b.clientY;a.zg?(a.we=b.movementX||b.mozMovementX||b.webkitMovementX||0,a.xe=b.movementY||b.mozMovementY||b.webkitMovementY||0):(a.we=b.clientX-a.Xf,a.xe=b.clientY-a.Yf);(a.we||a.xe)&&Bj(a);a.Xf=b.clientX;a.Yf=b.clientY}},!1),b.addEventListener("mousedown",function(b){Cj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){Cj(a,b.button,!1)},!1),a.Ih=!0),b.style.cursor=
"none")}function zj(a){a&&(a.style.cursor="auto")}function Cj(a,b,c){if(a.Ic&&a.la&&a.la.na.uc){var d;!(d=!1!==a.zg)&&(d=a.gh)&&(d=a.gh,d=d.Gl?d.Pe(!0):!1);d||(a.zg=null);switch(b){case 0:a.ug!=c&&(a.ug=c,Bj(a));break;case 2:a.vg!=c&&(a.vg=c,Bj(a))}}}function Bj(a){uj(a.mf,[64|(a.ug?32:0)|(a.vg?16:0)|(a.xe&192)>>4|(a.we&192)>>6,a.we&63,a.xe&63]);a.we=a.xe=0}u(function(){for(var a=A(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Aj(d);Ja(d,c)}});
function Dj(a,b,c){v.call(this,"Disk",{id:a.Rj+".disk"+Ej++},Dj);this.ea=a;this.La=a.La;this.Sa=a.Sa;this.Pa=b;this.Uc=b.name;this.Je=b.Je;this.Ag=this.fd=!1;this.create(c,b.gb,b.hb,b.mb,b.Ya);this.Rd=[];this.$f=[];this.od=null;this.Vj=0;this.Oh=!1;this.Na()}var Ej=0;y(v,Dj);k=Dj.prototype;k.mc=function(a,b,c,d){this.Sa=d};k.Qb=function(a,b){b||!this.Ag||this.fd||(this.Na(!1),this.load(this.Uc,this.pe,null,this.Fl,this));return!0};k.Fl=function(){this.Na(!0)};
k.Pb=function(a,b){if(this.fd){var c,d=0;if(this.Oh&&!ma("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=Fj(this,!1);)if(d=c[0]){this.ea.ya('Unable to save "'+this.Uc+'" (error '+d+")");break}b&&this.fd&&(c="action=close&volume="+this.pe,c+="&machine="+this.ea.Le(),c+="&user="+this.ea.Bd(),r(la()+"/api/v1/disk?"+c,!0),this.fd=!1);!d&&a&&this.ea.ya(this.Uc+" saved")}return!0};
k.create=function(a,b,c,d,e){this.mode=a;this.gb=b;this.hb=c;this.mb=d;this.Ya=e;this.Va=[];if("preload"!=this.mode){a=Array(this.gb);for(b=0;b<a.length;b++){c=Array(this.hb);for(d=0;d<c.length;d++){e=Array(this.mb);for(var f=1;f<=e.length;f++)e[f-1]=Gj(null,b,d,f,this.Ya,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.Va=a}this.Ge=null};
k.load=function(a,b,c,d,e){var f=b;if(!this.ie)if(this.Uc=a,this.pe=b,this.ie=d,this.zl=e||this.ea,c){var h=this,g=new FileReader;g.onload=function(){var a=g.result,b,c=a?a.byteLength:0,d=ba[c];if(d){h.gb=d[0];h.hb=d[1];h.mb=d[2];h.Ya=512;b=h.Ya>>2;var e=d=0,a=new DataView(a,0,c);h.Va=Array(h.gb);for(c=0;c<h.Va.length;c++)for(var f=h.Va[c]=Array(h.hb),H=0;H<f.length;H++)for(var P=f[H]=Array(h.mb),K=0;K<P.length;K++){for(var Q=Gj(null,c,H,K+1,h.Ya,0),ua=Q.data,Ua=0;Ua<b;Ua++,e+=4)var Pb=ua[Ua]=a.getInt32(e,
!0),d=d+Pb&4294967295;Q.kc=b;P[K]=Q}h.Ge=d;b=h}else h.ya("Unrecognized diskette format ("+c+" bytes)");h.ie&&(h.ie.call(h.ea,h.Pa,b,h.Uc,h.pe),h.ie=null)};g.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=Hj(this,b),this.Ag=!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=
la()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Je?"":d)+"&format=json")),r(f,!0,null,this,this.Dl,b)};
k.Dl=function(a,b,c,d){var e=null;this.Ke=!1;var f=0>c&&this.La&&!this.La.na.Gb;if(this.Ag)c?this.ea.ya('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.fd=!0,e=this);else if(c)this.ea.ya('Unable to load disk "'+this.Uc+'" (error '+c+")",f);else try{if(0<da(a,!0).toLowerCase().indexOf("-readonly"))this.Ke=!0;else{var h=b.indexOf("\n");0<h&&1024>h&&0<b.substring(0,h).indexOf("write-protected")&&(this.Ke=!0)}var g;g="<"==b.substr(0,1)?["Missing disk image: "+this.Uc]:0>b.indexOf("0x")&&
'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(g.length)if(1==g.length)s(g[0]);else{this.gb=g.length;this.hb=g[0].length;this.mb=g[0][0].length;var m=g[0][0][0];this.Ya=m&&m.length||512;for(b=a=0;b<this.gb;b++)for(c=0;c<this.hb;c++)for(d=0;d<this.mb;d++)if(m=g[b][c][d]){var n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var w=m.data;if(void 0===w){var t=m.bytes;if(void 0!==t&&t.length){for(var f=
n<<2,B=t.length;B<f;B++)t[B]=q;this.fill(m,t,0)}else w=[],q=m.pattern=q|q<<8|q<<16|q<<24,m.data=w;delete m.bytes}Gj(m,b,c);for(f=0;f<w.length;f++)a=a+w[f]&4294967295}this.Va=g;this.Ge=a;e=this}else s("Empty disk image: "+this.Uc)}catch(H){s("Disk image error: "+H.message)}this.ie&&(this.ie.call(this.zl,this.Pa,e,this.Uc,this.pe),this.ie=null)};function Gj(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Ql=b;a.Sl=c;a.Jc=a.kc=0;a.bb=!1;return a}
k.$m=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],h=d[2],g=d[3];a=d[4];b=JSON.parse(b);for(var m=0;g--;){var n=this.seek(e,f,h,!0);if(!n)break;this.fill(n,b,m);m+=n.length;h++}}(d=d[5])&&d(c,a)};function Hj(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.gb+":"+a.hb+":"+a.mb+":"+a.Ya;c+="&machine="+a.ea.Le();c+="&user="+a.ea.Bd();return la()+"/api/v1/disk?"+c}
function Ij(a,b,c,d,e,f){if(a.fd){var h;h="action=read&volume="+a.pe;h+="&chs="+a.gb+":"+a.hb+":"+a.mb+":"+a.Ya;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ea.Le());h+="&user="+a.ea.Bd();r(la()+"/api/v1/disk?"+h,!0,null,a,a.$m,[b,c,d,e,!0,f])}else f&&f(-1,!1)}function Jj(a,b,c){b.bb=!0;var d=a.Rd.indexOf(b);0<=d&&(a.Rd.splice(d,1),a.$f.splice(d,1));a.Rd.push(b);a.$f.push(ha());c&&Kj(a)}
function Kj(a){if(a.Rd.length){var b=a.$f[0]+2E3;a.od&&a.Vj<b&&(clearTimeout(a.od),a.od=null);if(!a.od){var c=ha(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.od=setTimeout(function(){Fj(a,!0)},b);a.Vj=c+b}}else a.od&&(clearTimeout(a.od),a.od=null)}
function Fj(a,b){b&&(a.od=null);var c=a.Rd[0];if(c){for(var d=c.Ql,e=c.Sl,c=c.sector,f=0,h=[],g=c-1;g<a.Va[d][e].length;g++){var m=a.Va[d][e][g];if(!m.bb)break;var n=a.Rd.indexOf(m);a.Rd.splice(n,1);a.$f.splice(n,1);h=h.concat(Lj(m));m.bb=!1;f++}a.fd?(g={},a.Oh=!0,g.action="write",g.volume=a.pe,g.chs=a.gb+":"+a.hb+":"+a.mb+":"+a.Ya,g.addr=d+":"+e+":"+c+":"+f,g.machine=a.ea.Le(),g.user=a.ea.Bd(),g.data=JSON.stringify(h),d=r(la()+"/api/v1/disk",b,g,a,a.en,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.en=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Oh=!1;if(0<=a&&a<this.Va.length&&0<=b&&b<this.Va[a].length)for(e-=1;0<f--&&0<=e&&e<this.Va[a][b].length;e++){var h=this.Va[a][b][e];c?Jj(this,h,!1):h.bb||(h.Jc=h.kc=0)}d&&Kj(this)};k.info=function(){return this.Va.length?[this.Va.length,this.Va[0].length,this.Va[0][0].length,this.Va[0][0][0].length]:[0,0,0,0]};
k.seek=function(a,b,c,d,e){var f=null,h=this.Pa,g=this.Va[a];if(g){var m=g[b];if(!m&&h.ef&&b<h.hb)for(m=g[b]=Array(h.td),g=0;g<m.length;g++)m[g]=Gj(null,a,b,g+1,h.fb,0);if(m){for(g=0;g<m.length;g++)if(m[g]&&m[g].sector==c){f=m[g];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++g<m.length;)null===m[g].pattern&&d++;Ij(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&h.ef&&9==h.Wa&&(f=m[g]=Gj(null,a,b,h.Wa,h.fb,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 Lj(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 h=f<e.length?e[f]:a;c[d++]=h&255;c[d++]=h>>8&255;c[d++]=h>>16&255;c[d++]=h>>24&255}return c}function Mj(a,b){var c=-1;if(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.Ke)return!1;if(b<a.length){if(c!=Mj(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var h=d.length;h<=f;h++)d[h]=e;a.kc?f<a.Jc?(a.kc+=a.Jc-f,a.Jc=f):f>=a.Jc+a.kc&&(a.kc+=f-(a.Jc+a.kc)+1):(a.Jc=f,a.kc=1);d[f]=d[f]&~(255<<b)|c<<b;this.fd&&Jj(this,a,!0)}return!0}return null};
k.save=function(){var a=0,b=[];b[a++]=[this.pe,this.Ge,this.gb,this.hb,this.mb,this.Ya];if(!this.fd&&!this.Ke)for(var c=this.Va,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 h=c[d][e][f];if(h&&h.kc){for(var g=[],m=0,n=h.Jc,q=h.Jc+h.kc;n<q;)g[m++]=h.data[n++];b[a++]=[d,e,f,h.Jc,g]}}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.Va.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.Ge&&e[1]!=this.Ge&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.Ge+")",b=-1));for(this.Va.length||(b=-1);d<a.length&&0<=b;){var f=0,h=a[d++],g=h[f++],m=h[f++],n=h[f++];if(g>=this.Va.length||m>=this.Va[g].length||n>=this.Va[g][m].length){c="sector "+g+":"+m+":"+n+" out of range ("+
b+" changes applied)";b=-1;break}if(this.Ke){c="unable to modify write-protected disk";b=-1;break}e=h[f++];f=h[f++];h=e+f.length;if(g=this.Va[g][m][n]){for(m=g.data.length;m<e;)g.data[m++]=g.pattern;m=0;g.Jc=e;for(g.kc=f.length;e<h;)g.data[e++]=f[m++];b++}}}0>b&&this.ea.ya("unable to restore disk '"+this.Uc+": "+c);return b};
function Nj(a){v.call(this,"FDC",a,Nj);this.dmaRead=this.Ch;this.dmaWrite=this.Dh;this.dmaFormat=this.Al;this.de=null;if(a.autoMount&&(this.de=a.autoMount,"string"==typeof this.de))try{this.de=eval("("+a.autoMount+")")}catch(b){s("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.de=null}this.hc=[]}y(v,Nj);l={};aa={};
var Oj={3:{ad:3,vd:0,name:aa.Uo},4:{ad:2,vd:1,name:aa.So},5:{ad:9,vd:7,name:aa.fp},6:{ad:9,vd:7,name:aa.Mo},7:{ad:2,vd:0,name:aa.Oo},8:{ad:1,vd:2,name:aa.To},10:{ad:2,vd:7,name:aa.No},13:{ad:6,vd:7,name:aa.yo},15:{ad:3,vd:0,name:aa.Ro}};k=Nj.prototype;
k.zb=function(a,b,c,d){var e=this;switch(c){case "listDisks":return this.ra[c]=d,Pj(this,"Local Disk","?"),Pj(this,"Remote Disk","??"),d.onchange=function(){var a=e.ra.descDisk,b=d.options[d.selectedIndex];if(a&&b){var c={};if(b=b.getAttribute("data-value"))try{c=eval("({"+b+"})")}catch(m){s("FDC option error: "+m.message)}b=c.desc;void 0===b&&(b="");c=c.href;void 0!==c&&(b='<a href="'+c+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.ra[c]=d,d.onchange=
function(){var a;a=d.value;var b=10,c;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 m=a.charAt(a.length-1).toLowerCase();"h"==m?(b=16,m=null):"."==m&&(b=10,m=null);null===m&&(a=a.substr(0,a.length-1))}var n;ca(a,b)&&!isNaN(n=parseInt(a,b))&&(c=n)}a=c;null!=a&&Qj(e,a)},!0;case "loadDrive":return this.ra[c]=d,d.onclick=function(){var a=e.ra.listDisks;a&&Rj(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window&&
"FileReader"in window?(this.ra[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Rj(e,da(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};k.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;this.La=a;this.ja=C(a,"ChipSet");this.gd();bb(b,this,Sj);db(b,this,Tj);this.df()||this.Na()};
k.Qb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.La.Mh){this.hc=[];for(var c=0;c<this.xa.length;c++)Uj(this,c,!0);this.df(!0)}}else if(!this.restore(a))return!1;if(c=this.ra.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.gi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.gi&&(c.value="0",Qj(this,0))}}return!0};
k.Pb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.gd()};k.save=function(){var a=new G(this);a.set(0,this.cj());return a.data()};k.restore=function(a){return this.gd(a[0])};
k.gd=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.Xa=a[b++];b++;this.wa=a[b++];this.Sb=a[b++];this.qb=a[b++];this.ab=a[b++];this.Ve=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.hc=c);void 0===this.xa&&(this.gi=4,this.ja&&(this.gi=Hh(this.ja)),this.xa=Array(4));for(c=0;c<this.xa.length;c++){var f=this.xa[c];if(void 0===f){var f=this.xa[c]={},h;if(this.ja)a:{h=this.ja;if(c<Hh(h)){if(!h.pd){h=360;break a}if(c<h.pd.length){h=h.pd[c];break a}}h=0}else h=0;switch(h){case 160:case 180:f.hb=
1;default:f.gb=40;f.mb=9;break;case 720:f.gb=80;f.mb=9;break;case 1200:f.gb=80;f.mb=15;break;case 1440:f.gb=80,f.mb=18}}this.Wh(f,c,e[c])||(d=!1)}this.Md=a[b++]||0;this.dl=a[b]||0;return d};k.cj=function(){var a=0,b=[];b[a++]=this.Xa;b[a++]=0;b[a++]=this.wa;b[a++]=this.Sb;b[a++]=this.qb;b[a++]=this.ab;b[a++]=this.Ve;b[a++]=this.ej();for(var c=a++,d=0;d<this.xa.length;d++){var e=this.xa[d];e.ta&&Vj(this,e.qe,e.ta)}b[c]=this.hc;b[a++]=this.Md;b[a]=this.dl;return b};
k.Wh=function(a,b,c){var d=0,e=!0;a.Xa=b;a.tc=a.Ie=!1;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.gb||40,a.hb||c[3],a.mb||9,a.Ya||512,c[1],a.Qg,a.Df,a.Ef]);a.Ta=c[d++];var f=c[d++];a.name=f[0];a.gb=f[1];a.hb=f[2];a.mb=f[3];a.Ya=f[4];a.Je=f[5];(a.Qg=f[6])?(a.Df=f[7],a.Ef=f[8]):(a.Qg=a.gb,a.Df=a.hb,a.Ef=a.mb);a.Ja=c[d++];a.rd=c[d++];a.jb=c[d++];a.rd=100<=a.rd?a.rd-100:a.rd-a.jb;a.Wa=c[d++];a.td=c[d++];a.fb=c[d++];a.Za=c[d++];a.Ka=null;a.ta||(a.qe="");var h=c[d++];
102==h&&(h=!1);"boolean"==typeof h?(f=c[d++],c=c[d],h?(d=this.xa[b],Uj(this,b,!0,!0),d.Ie=!0,b=new Dj(this,d,"preload"),this.Ej(d,b,f,c,!0)):Wj(this,b,f,c,!0)?a.ta&&c&&Xj(this,f,c,a.ta):this.Na(!1)):void 0!==h&&a.ta&&0>a.ta.restore(h)&&(e=!1);e&&a.ta&&void 0!==a.Za&&(a.Ka=a.ta.seek(a.jb,a.Ja,a.Wa));return e};k.ej=function(){for(var a=0,b=[],c=0;c<this.xa.length;c++)b[a++]=this.dj(this.xa[c]);return b};
k.dj=function(a){var b=0,c=[];c[b++]=a.Ta;c[b++]=[a.name,a.gb,a.hb,a.mb,a.Ya,a.Je,a.Qg,a.Df,a.Ef];c[b++]=a.Ja;c[b++]=a.rd+100;c[b++]=a.jb;c[b++]=a.Wa;c[b++]=a.td;c[b++]=a.fb;c[b++]=a.Za;c[b++]=a.Ie;c[b++]=a.il;c[b]=a.qe;return c};k.df=function(a){a||(this.$d=0);if(this.de)for(var b in this.de){var c=this.de[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.xa.length){!Wj(this,d,c.name,c.path,!0)&&a&&this.Na(!1);continue}}this.ya("Unrecognized auto-mount specification for drive "+b)}return!!this.$d};
function Rj(a,b,c,d){var e,f=a.ra.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.xa.length)if(c)if("?"==c)a.ya("Use 'Load' to load local disks");else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=da(c);a.Zb("Attempting to load "+c+' as "'+b+'"')}for(a.Zb("loading disk "+c+"...");Wj(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,h=c,g=void 0,g=0;g<f.hc.length;g++)if(f.hc[g][1]==
h){f.hc.splice(g,1);break}Uj(a,e,!1,!0)}}else Uj(a,e);else a.ya("Nothing to load")}function Wj(a,b,c,d,e,f){var h=a.xa[b];if(d&&h.qe!=d){Uj(a,b,e,!0);if(h.tc)return a.ya("Drive "+b+" busy"),!0;h.tc=!0;e&&(h.he=!0,a.$d++);h.Ie=!!f;(new Dj(a,h,"preload")).load(c,d,f,a.Ej);return!1}return!0}
k.Ej=function(a,b,c,d,e){var f;a.tc=!1;b&&(f=b.info(),b&&f[0]>a.gb||f[1]>a.hb)&&(this.ya('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Xa)),b=null);b?(a.ta=b,a.il=c,a.qe=d,Xj(this,c,d,b),f=b.info(),this.Md|=128,this.ya('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Xa),a.he||e),a.Qg=f[0],a.Df=f[1],a.Ef=f[2]):a.Ie=!1;a.he&&(a.he=!1,--this.$d||this.Na());Qj(this,a.Xa)};
function Pj(a,b,c){if(a=a.ra.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.innerHTML=b;a.appendChild(d)}}function Qj(a,b){if(0<=b&&b<a.xa.length){var c=a.xa[b],d=a.ra.listDisks,e=a.ra.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.Ie?"?":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 Uj(a,b,c,d){var e=a.xa[b];e.ta&&(Vj(a,e.qe,e.ta),e.il="",e.qe="",e.ta=null,e.Ie=!1,a.Md|=128,d||a.ya("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Qj(a,b))}function Xj(a,b,c,d){var e;for(e=0;e<a.hc.length;e++)if(a.hc[e][1]==c){d.restore(a.hc[e][2]);return}a.hc[e]=[b,c,[]]}function Vj(a,b,c){var d;for(d=0;d<a.hc.length;d++)if(a.hc[d][1]==b){a.hc[d][2]=c.save();break}}k.An=function(a,b){b&4?this.Ve&4||this.Ve&8&&this.ja&&di(this.ja,6):this.gd();this.Ve=b};k.nm=function(){return this.wa};
k.lm=function(){var a=0;this.qb<this.ab&&(a=this.Sb[this.qb]);this.Ve&8&&this.ja&&ei(this.ja,6);++this.qb>=this.ab&&(this.wa&=-81,this.qb=this.ab=0);return a};
k.zn=function(a,b){this.ab<this.Sb.length&&(this.Sb[this.ab++]=b);var c=this.Sb[0]&31;if(void 0!==Oj[c]&&this.ab>=Oj[c].ad){var d=!1;this.qb=0;var c=this.Ia(),e,f,h,g,m,n=c&31;switch(n){case 3:this.Ia(l.Vo);this.Ia(l.Bo);this.Fb();break;case 4:f=this.Ia(l.Xe);this.Xa=f&3;e=this.xa[this.Xa];this.Fb();this.Rb((e.Ta&4278190080)>>>24,l.Yo);break;case 5:case 6:f=this.Ia(l.Xe);d=f>>2&1;this.Xa=f&3;e=this.xa[this.Xa];e.Ja=d;f=e.jb=this.Ia(l.lj);h=this.Ia(l.mj);g=e.Wa=this.Ia(l.oj);m=this.Ia(l.jh);e.fb=128<<
m;e.td=this.Ia(l.wo);this.Ia(l.tl);this.Ia(l.vo);6==n?this.Eh(e):this.Fh(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 7:f=this.Ia(l.Xe);this.Xa=f&3;e=this.xa[this.Xa];e.jb=e.rd=0;e.Ta=268435488;this.Fb();d=!0;break;case 8:e=this.xa[this.Xa];e.Ja=0;this.Fb();this.Rb(e.Xa|e.Ja<<2|e.Ta&255,l.vl);this.Rb(e.jb,l.Ko);this.Xa=this.Xa+1&3;break;case 10:f=this.Ia(l.Xe);d=f>>2&1;this.Xa=f&3;e=this.xa[this.Xa];f=e.jb;h=e.Ja=d;g=e.Wa=1;m=0;e.Ta=0;e.ta&&(e.Ka=e.ta.seek(e.jb,e.Ja,e.Wa))?m=e.Ka.length:e.Ta=72;Yj(this,
e,c,d,f,h,g,m);d=!0;break;case 13:f=this.Ia(l.Xe);d=f>>2&1;this.Xa=f&3;e=this.xa[this.Xa];f=e.jb;h=e.Ja=d;g=1;m=this.Ia(l.jh);e.fb=128<<m;e.td=this.Ia(l.Qo);this.Ia(l.tl);e.uj=this.Ia(l.sl);this.Dj(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 15:f=this.Ia(l.Xe),this.Xa=f&3,e=this.xa[this.Xa],e.Ja=f>>2&1,f=this.Ia(l.Ho),e.jb+=f-e.rd,0>e.jb&&(e.jb=0),e.jb>=e.gb&&(e.jb=e.gb-1),e.rd=f,e.Ta=32,0==e.jb&&(e.Ta|=268435456),this.Fb(),d=!0}0<this.ab&&(this.wa|=80);this.Ve&8&&(!e||e.Ta&8||!d||this.ja&&di(this.ja,
6))}};k.mm=function(){var a=this.Md;this.Md&=-129;return a};k.yn=function(a,b){this.dl=b};function Yj(a,b,c,d,e,f,h,g){a.Fb();a.Rb(b.Xa|b.Ja<<2|b.Ta&255,l.vl);a.Rb((b.Ta&65280)>>>8,l.Wo);a.Rb((b.Ta&16711680)>>>16,l.Xo);var m=0;if(e!=b.jb||f!=b.Ja)m=h=1;c&128&&(f^=m,d||(m=0));a.Rb(e+m,l.lj);a.Rb(f,l.mj);a.Rb(h,l.oj);a.Rb(g,l.jh)}k.Ia=function(){var a=this.Sb[this.qb];this.qb++;return a};k.Fb=function(){this.qb=this.ab=0};k.Rb=function(a){this.Sb[this.ab++]=a};
k.Ch=function(a,b,c){void 0===b||0>b?this.xc(a,c):c(-1,!1)};k.Dh=function(a,b){return void 0!==b&&0<=b?this.Ac(a,b):-1};k.Al=function(a,b){return void 0!==b&&0<=b?this.ij(a,b):-1};k.Eh=function(a){a.Ta=72;a.ta&&(a.Ka=null,a.Ta=0,this.ja&&(Uh(this.ja,2,this,"dmaRead",a),Qh(this.ja,2)))};k.Fh=function(a){a.Ta=72;a.ta&&(a.ta.Ke?a.Ta=576:(a.Ka=null,a.Ta=0,this.ja&&(Uh(this.ja,2,this,"dmaWrite",a),Qh(this.ja,2))))};
k.Dj=function(a){a.Ta=72;a.ta&&(a.Ka=null,a.Ta=0,this.ja&&(a.ce=0,a.ic=Array(4),a.ef=!0,a.kf=0,Uh(this.ja,2,this,"dmaFormat",a),Qh(this.ja,2),a.ef=!1))};k.xc=function(a,b){var c=-1;if(!a.Ta&&a.ta){do{if(a.Ka&&0<=(c=Mj(a.Ka,a.Za++)))break;a.Ka=a.ta.seek(a.jb,a.Ja,a.Wa);if(!a.Ka){a.Ta=1088;break}a.Za=0;this.bf(a)}while(1)}b(c,!1)};
k.Ac=function(a,b){if(a.Ta||!a.ta)return-1;do{if(a.Ka&&a.ta.write(a.Ka,a.Za++,b))break;a.Ka=a.ta.seek(a.jb,a.Ja,a.Wa);if(!a.Ka){a.Ta=8256;b=-1;break}a.Za=0;this.bf(a)}while(1);return b};k.bf=function(a){a.Wa++;a.Wa>=a.Ef+1&&(a.Wa=1,a.Ja++,a.Ja>=a.Df&&(a.Ja=0,a.jb++))};k.ij=function(a,b){if(a.Ta)return-1;a.ic[a.ce++]=b;if(a.ce==a.ic.length){a.jb=a.ic[0];a.Ja=a.ic[1];a.Wa=a.ic[2];a.fb=128<<a.ic[3];for(var c=a.ce=0;c<a.fb;c++)if(0>this.Ac(a,a.uj))return-1;a.kf++}a.kf>=a.td&&(b=-1);return b};
var Sj={1012:Nj.prototype.nm,1013:Nj.prototype.lm,1015:Nj.prototype.mm},Tj={1010:Nj.prototype.An,1013:Nj.prototype.zn,1015:Nj.prototype.yn};u(function(){for(var a=A(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Nj(d);Ja(d,c)}});
function $(a){v.call(this,"HDC",a,$);this.dmaRead=this.Ch;this.dmaWrite=this.Dh;this.dmaWriteBuffer=this.Bl;this.dmaWriteFormat=this.Cl;this.lh=[];if(a.drives)try{this.lh=eval("("+a.drives+")")}catch(b){s("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.tf=(this.ge="at"==a.type)?1:0;this.Rl=this.ge?2:3}y(v,$);
var Zj=[{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=$.prototype;k.zb=function(){return!1};k.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;this.La=a;this.ja=C(a,"ChipSet");bb(b,this,this.ge?ak:bk);db(b,this,this.ge?ck:dk);nc(c,19,this,this.Pm);nc(c,64,this,this.Qm);this.reset();this.df()||this.Na()};
k.Qb=function(a,b){if(!b)if(!a||!this.restore)this.gd(),this.La.Mh&&this.df(!0);else if(!this.restore(a))return!1;return!0};k.Pb=function(a){return a&&this.save?this.save():!0};k.Le=function(){return this.La?this.La.Le():""};k.Bd=function(){return this.La?this.La.Bd():""};k.reset=function(){this.gd(null,!0)};k.save=function(){var a=new G(this);a.set(0,this.cj());return a.data()};k.restore=function(a){return this.gd(a[0])};
k.gd=function(a,b){var c=0,d=!0;if(this.ge)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.md=a[c++],this.hl=a[c++],this.Nd=a[c++],this.$g=a[c++],this.Yg=a[c++],this.Xg=a[c++],this.Ue=a[c++],this.wa=a[c++],this.aj=a[c++],this.Zg=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.Pf=a[c++];this.wa=a[c++];this.Sb=a[c++];this.qb=a[c++];this.ab=a[c++];this.gl=a[c++];this.fl=a[c++];this.el=a[c++];var e=a[c++];void 0!==e?this.Me=e:void 0===this.Me&&(this.Me=-1)}void 0===this.xa&&(this.xa=Array(this.lh.length));
c=a[c];void 0===c&&(c=[]);for(e=0;e<this.xa.length;e++){void 0===this.xa[e]&&(this.xa[e]={});var f=this.xa[e];this.Wh(e,f,this.lh[e],c[e],b)||(d=!1);null!=this.Pf&&1>=e&&(this.Pf|=(f.type&3)<<(1-e<<1))}return d};
k.cj=function(){var a=0,b=[];this.ge?(b[a++]=this.md,b[a++]=this.hl,b[a++]=this.Nd,b[a++]=this.$g,b[a++]=this.Yg,b[a++]=this.Xg,b[a++]=this.Ue,b[a++]=this.wa,b[a++]=this.aj,b[a++]=this.Zg):(b[a++]=this.Pf,b[a++]=this.wa,b[a++]=this.Sb,b[a++]=this.qb,b[a++]=this.ab,b[a++]=this.gl,b[a++]=this.fl,b[a++]=this.el,b[a++]=this.Me);b[a]=this.ej();return b};
k.Wh=function(a,b,c,d,e){var f=0,h=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Xa=a;b.errorCode=d[f++];b.ml=d[f++];b.Je=d[f++];b.Ae=d[f++];b.Be=d[f++];b.Ja=d[f++];b.hb=d[f++];b.Pd=d[f++];b.Wa=d[f++];b.td=d[f++];b.fb=d[f++];b.og=this.ge?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.Bd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Zj[this.tf][b.type])b.type=this.Rl;c=Zj[this.tf][b.type];
b.mb=c[2]||17;b.Ya=c[3]||512;if(e&&this.ja&&(e=this.ja,c=b.type,e.oa)){var g=e.oa[18],g=a?g&240|c:g&15|c<<4;e.oa&&(e.oa[18]=g,Eh(e))}void 0===b.ta&&(b.ta=null,this.ya("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));ek(this,b);b.Za=d[f++];b.Ka=null;b.ta&&(a=d[f],void 0!==a&&0>b.ta.restore(a)&&(h=!1),h&&void 0!==b.Za&&(b.Ka=b.ta.seek(b.Pd,b.Ja,b.Wa+b.og)));return h};k.ej=function(){for(var a=0,b=[],c=0;c<this.xa.length;c++)b[a++]=this.dj(this.xa[c]);return b};
k.dj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.ml;c[b++]=a.Je;c[b++]=a.Ae;c[b++]=a.Be;c[b++]=a.Ja;c[b++]=a.hb;c[b++]=a.Pd;c[b++]=a.Wa;c[b++]=a.td;c[b++]=a.fb;c[b++]=a.Za;c[b]=a.ta?a.ta.save():null;return c};
function ek(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Ae[2])?e=b.Ae[0]<<8|b.Ae[1]:c=b.type);null==c||d||(d=Zj[a.tf][c][1],e=Zj[a.tf][c][0]);d&&((c=Zj[a.tf][b.type])&&e!=c[0]&&d!=c[1]&&a.ya("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.gb=e,b.hb=d,null==b.ta&&(b.ta=new Dj(a,b,b.mode)))}}
k.df=function(a){a||(this.$d=0);for(var b=0;b<this.xa.length;b++){var c=this.xa[b];if(c.name&&c.path){if(!(a&&c.ta&&c.ta.Ag)){var d;d=c.name;var c=c.path,e=this.xa[b];e.tc?(this.ya("Drive "+b+" busy"),d=!0):(e.tc=!0,e.he=!0,this.$d++,(e.ta||new Dj(this,e,e.mode)).load(d,c,null,this.El),d=!1);!d&&a&&this.Na(!1)}}else a&&void 0!==c.type&&(c.ta=null,ek(this,c,c.type))}return!!this.$d};
k.El=function(a,b,c){a.tc=!1;(a.ta=b)&&this.ya('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Xa),a.he);a.he&&(a.he=!1,--this.$d||this.Na())};k.Nm=function(){var a=0;this.qb<this.ab&&(a=this.Sb[this.qb]);this.ja&&ei(this.ja,5);this.wa&=-33;++this.qb>=this.ab&&(this.qb=this.ab=0,this.wa&=-15);return a};k.Wn=function(a,b){this.ab<this.Sb.length&&(this.Sb[this.ab++]=b);var c=12!=this.Sb[0]?6:this.Sb.length;6==this.ab&&(this.wa&=-2);this.ab>=c&&(this.wa|=2,this.wa&=-2,fk(this))};
k.Om=function(){var a=this.wa;this.qb<this.ab&&(this.wa|=1);return a};k.Zn=function(a,b){this.gl=b;this.ja&&ei(this.ja,5);this.gd()};k.Mm=function(){return this.Pf};k.Yn=function(a,b){this.fl=b;this.wa=13};k.Xn=function(a,b){this.el=b};k.Wi=function(){};k.Zl=function(){var a=-1;if(this.Pa&&(a=this.xc(this.Pa),this.Pa.Za==this.Pa.Ya))if(this.Pa.fb-=this.Pa.Ya,this.Nd=this.Nd-1&255,this.Pa.fb>=this.Pa.Ya){var b=this;this.xc(this.Pa,function(a){0<=a?gk(b):(b.wa=1,b.md=16)},!1)}else this.wa=80;return a};
k.mn=function(a,b){this.Pa&&this.Pa.fb>=this.Pa.Ya&&(0>this.Ac(this.Pa,b)?(this.wa=1,this.md=16):this.Pa.Za==this.Pa.Ya&&(this.Pa.fb-=this.Pa.Ya,this.Nd=this.Nd-1&255,gk(this),this.Pa.fb>=this.Pa.Ya||(this.wa=80)))};k.am=function(){return this.md};k.rn=function(a,b){this.hl=b};k.bm=function(){return this.Nd};k.pn=function(a,b){this.Nd=b};k.cm=function(){return this.$g};k.qn=function(a,b){this.$g=b};k.Yl=function(){return this.Yg};k.ln=function(a,b){this.Yg=b};k.Xl=function(){return this.Xg};
k.kn=function(a,b){this.Xg=b};k.$l=function(){return this.Ue};k.nn=function(a,b){this.Ue=b;this.wa=this.xa[this.Ue&16?1:0]?this.wa|64:this.wa&-65};k.dm=function(){return this.wa};k.jn=function(a,b){this.aj=b;this.ja&&ei(this.ja,14);hk(this)};k.on=function(a,b){this.Zg&4&&!(b&4)&&(this.md=1);this.Zg=b};
function hk(a){var b=!1,c=a.aj,d=a.Ue&16?1:0,e=a.Ue&15,f=a.Yg|(a.Xg&3)<<8,h=a.$g,g=a.Nd||256;a.Pa=null;a.md=0;a.wa=80;(d=a.xa[d])?(d.Pd=f,d.Ja=e,d.Wa=h,d.fb=g*d.Ya,c=144<=c?c:c&240,d.Ka=null,d.errorCode=0,a.Pa=d):c=-1;switch(c&240){case 32:a.xc(d,function(b){0<=b&&a.ja?(gk(a),a.wa=136):(a.wa=1,a.md=16)},!1);break;case 48:a.ja?(gk(a),a.wa=136):(a.wa=1,a.md=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.md=1;b=!0;break;case 145:d.hb=e+1,d.mb=g,b=!0}b&&gk(a)}
function gk(a){!a.ja||a.Zg&2||di(a.ja,14)}
function fk(a){a.qb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,h=a.Ia(),g=a.Ia(),m=h<<2&768|g,n=h&63,q=a.Ia(),w=a.Ia(),t=a.xa[e];t&&(t.Pd=m,t.Ja=f,t.Wa=n,t.fb=q*t.Ya);switch(b){case 3:a.Fb(t?t.errorCode:4);a.Rb(c);a.Rb(h);a.Rb(g);a.Rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)t&&c<t.Ae.length&&(t.Ae[c++]=b);t&&ek(a,t);b=0;t||a.Me!=e||(a.Me=-1,b=2);a.Fb(b|d);b=-1;break;case 224:case 228:a.Fb(0|d),b=-1}if(0<=b)switch(void 0===t?b=-1:(t.errorCode=0,t.ml=0),b){case 0:a.Fb(0|d);break;case 1:t.mp=
w;a.Fb(0|d);break;case 5:a.Fb(0|d);break;case 8:a.Eh(t,function(b){a.Fb(b|d)});break;case 10:a.Fh(t,function(b){a.Fb(b|d)});break;case 15:ik(a,t,function(b){a.Fb(b|d)});break;default:a.Fb(2|d)}}k.Ia=function(){var a=-1;this.qb<this.ab&&(a=this.Sb[this.qb++]);return a};k.Fb=function(a){this.qb=this.ab=0;void 0!==a&&this.Rb(a);this.ja&&di(this.ja,5);this.wa|=32};k.Rb=function(a){this.Sb[this.ab++]=a};k.Ch=function(a,b,c){void 0===b||0>b?this.xc(a,c):c(-1,!1)};
k.Dh=function(a,b){return void 0!==b&&0<=b?this.Ac(a,b):-1};k.Bl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Za<a.Be.length?a.Be[a.Za++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.Cl=function(a,b){return void 0!==b&&0<=b?this.ij(a,b):-1};k.Eh=function(a,b){a.errorCode=4;if(a.ta&&(a.Ka=null,this.ja)){a.errorCode=0;Uh(this.ja,3,this,"dmaRead",a);Qh(this.ja,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.Fh=function(a,b){a.errorCode=4;if(a.ta&&(a.Ka=null,this.ja)){a.errorCode=0;Uh(this.ja,3,this,"dmaWrite",a);Qh(this.ja,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function ik(a,b,c){b.errorCode=4;b.Be&&b.Be.length==b.fb||(b.Be=Array(b.fb));b.Za=0;a.ja?(b.errorCode=0,Uh(a.ja,3,a,"dmaWriteBuffer",b),Qh(a.ja,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.Dj=function(a,b){a.errorCode=4;if(a.ta&&(a.Ka=null,this.ja)){a.ce=0;a.ic=Array(4);a.ef=!0;a.kf=0;a.errorCode=0;Uh(this.ja,3,this,"dmaWriteFormat",a);Qh(this.ja,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.ef=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.xc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ka&&(d=Mj(a.Ka,a.Za),a.Za+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;if(a.ta)return a.ta.seek(a.Pd,a.Ja,a.Wa+a.og,!1,function(c,g){(a.Ka=c)?(a.Za=0,f.bf(a),d=Mj(a.Ka,a.Za),a.Za+=e):a.errorCode=20;b(d,g)}),d;a.errorCode=20;b(d,!1)}return d};
k.Ac=function(a,b){if(a.errorCode)return-1;do{if(a.Ka&&a.ta.write(a.Ka,a.Za++,b))break;a.ta&&a.ta.seek(a.Pd,a.Ja,a.Wa+a.og,!0,function(b){a.Ka=b});if(!a.Ka){a.errorCode=20;b=-1;break}a.Za=0;this.bf(a)}while(1);return b};k.bf=function(a){a.Wa++;var b=1-a.og;a.Wa>=a.mb+b&&(a.Wa=b,a.Ja++,a.Ja>=a.hb&&(a.Ja=0,a.Pd++))};
k.ij=function(a,b){if(a.errorCode)return-1;a.ic[a.ce++]=b;if(a.ce==a.ic.length){a.Pd=a.ic[0];a.Ja=a.ic[1];a.Wa=a.ic[2];a.fb=128<<a.ic[3];for(var c=a.ce=0;c<a.fb;c++)if(0>this.Ac(a,a.uj))return-1;a.kf++}a.kf>=a.td&&(b=-1);return b};k.Pm=function(){var a=this.la.K&255;!(this.la.H>>8)&&128<a&&(this.Me=a-128);return!0};k.Qm=function(){var a;(a=this.la.H>>8)||(a=!this.ja)||(a=!(this.ja.rb[0].$c&64));return a?!0:!1};
var bk={800:$.prototype.Nm,801:$.prototype.Om,802:$.prototype.Mm},ak={496:$.prototype.Zl,497:$.prototype.am,498:$.prototype.bm,499:$.prototype.cm,500:$.prototype.Yl,501:$.prototype.Xl,502:$.prototype.$l,503:$.prototype.dm},dk={800:$.prototype.Wn,801:$.prototype.Zn,802:$.prototype.Yn,803:$.prototype.Xn,807:$.prototype.Wi,811:$.prototype.Wi,815:$.prototype.Wi},ck={496:$.prototype.mn,497:$.prototype.rn,498:$.prototype.pn,499:$.prototype.qn,500:$.prototype.ln,501:$.prototype.kn,502:$.prototype.nn,503:$.prototype.jn,
1014:$.prototype.on};u(function(){for(var a=A(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new $(d);Ja(d,c)}});var Sc=8;function G(a,b,c){this.id=a.id;this.key=jk(a,b,c);this.Sa=a.Sa;mk(this,a.$n)}function jk(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}
G.prototype={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.Lh=!0):this.Lh?!0:na()&&(a=oa(this.key))?(this[this.id]=a,this.Lh=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){s(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){mk(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}}};function mk(a,b){a[a.id]={};b&&a.set("parms",b);a.Lh=!1}function nk(a){var b=!0;if(na()){var c=JSON.stringify(a[a.id]);pa(a.key,c)||(s("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
function ok(a,b,c){v.call(this,"Computer",a,ok);this.na.Gb=!1;this.uf=a.buswidth;this.yc=pk;this.Tf=null;this.Dg=!1;this.url=b?b.url:null;this.io=(Math.random()+0.1).toString(36).substr(2,12);this.zc=qk(this);if(this.la=Ia("CPU",this.id)){this.Sa=Ia("Debugger",this.id);this.qa=new Pa({id:this.Rj+".bus",buswidth:this.uf},this.la,this.Sa);var d,e=Ga(this.id);if((this.Of=Ia("Panel",this.id))&&this.Of.zh)for(b=0;b<e.length;b++)d=e[b],d.ya=this.Of.ya,d.Zb=this.Of.Zb,d.zh=this.Of.zh;for(b=0;b<e.length;b++)d=
e[b],d.mc&&d.mc(this,this.qa,this.la,this.Sa);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.bh=d:this.yc=parseInt(d,10));var f;if(a=Ba&&Ba.state||(f=!0,a.state))b=this.kl=a,f||(this.Dg=!0,this.yc=pk),this.yc&&(this.fh=new G(this,"1.16.0"),this.fh.load()?b=null:delete this.fh);!b&&this.yc&&(f=null,this.zc&&(f=la()+"/api/v1/user?req=load&user="+this.zc+"&state="+jk(this,"1.16.0")),b=f)&&(this.Dg=!0);b?r(b,!0,null,this,this.cn):this.Na();c||rk(this,this.Vg)}else s("Unable to find CPU component")}
y(v,ok);var pk=0;k=ok.prototype;k.Le=function(){return this.io};k.Bd=function(){return this.zc?this.zc:""};k.cn=function(a,b,c){c?(this.bh=null,this.Dg=!1,this.ya("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Tf=b;this.Na()};function rk(a,b,c){for(var d=Ga(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!La(f)){La(f,function(){rk(a,b,c)});return}}b.call(a,c)}
function sk(a,b){var c=new G(a,"1.16.0","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.ya("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.Vg=function(a){void 0===a&&(a=this.yc||(this.Tf?1:pk));var b=!1,c=!1;this.Lj=!1;var d=this.fh||new G(this,"1.16.0");if(-1==a)b=!0;else if(a>pk){if(d.load(this.Tf)){this.te=new G(this,"1.16.0","failsafe");this.te.load()&&(tk(this,d),a=2,mk(this.te));this.te.set("timestamp",ia());nk(this.te);var e=this.yc&&!this.Dg;if(1==a||ma("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),h=d.get("data");f&&("ok"==f?d.load(h):("error"==
f&&"no machine state"!=h?(this.ya("Error: "+h),"unable to verify user"==h&&(pa("user",""),this.zc=null)):this.Zb(f+": "+h),mk(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&sk(this,c?d:null)}else 2==a&&d.clear()}else sk(this);delete this.Tf;delete this.fh}e=Ga(this.id);for(f=0;f<e.length;f++)h=e[f],h!==this&&h!=this.la&&(c=uk(this,h,d,b,c));b=[d,a,c];-1!=a?rk(this,this.Fj,b):this.Fj(b)};
function uk(a,b,c,d,e){if(!b.na.Gb){b.na.Gb=!0;if(b.Qb){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.Qb(f,d)&&f&&(s("Unable to restore state for "+b.type),a.kl&&!a.Tf?(c.clear(),a.yc=pk,window&&window.location.reload()):a.Lj=!0,b.Qb(null),e=!1)}if(!d&&b.Bj)for(a=b.Bj.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.Fj=function(a){var b=a[0],c=0>a[1];a=a[2];this.na.Gb=!0;this.Jj||(this.Zb("PCjs v1.16.0\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Jj=!0);this.la&&uk(this,this.la,b,c,a);this.Lj&&(tk(this,b),b.clear());!c&&this.te&&(this.te.clear(),delete this.te)};
function tk(a,b){if(ma("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.Bd(),d=b.toString(),e={app:"PCjs",ver:"1.16.0"};e.url=a.url;e.user=c;e.type="bug";e.data=d;r("http://www.pcjs.org/api/v1/report",!0,e)}}
function vk(a,b,c){var d,e="none",f=new G(a,"1.16.0"),h=new G(a,"1.16.0","validate"),g=ia();h.set("timestamp",g);f.set("timestamp",g);f.set("version","1.16.0");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.la&&a.la.Pb&&(c&&mb(a.la),d=a.la.Pb(b,c),"object"===typeof d&&f.set(a.la.id,d),c&&(a.la.na.Gb=!1,!1===d&&(e=null)));for(var g=Ga(a.id),m=0;m<g.length;m++){var n=g[m];n.na.Gb&&(n.Pb&&(d=n.Pb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.na.Gb=
!1,!1===d&&(e=null)))}e&&(c?(g=d=!1,b?(a.zc&&wk(a,a.zc,f.toString()),nk(h)&&nk(f)||(e=null,d=g=!0)):a.yc&&(d=!0,g=3==a.yc),d&&f.clear(g)):e=f.toString());c&&(a.na.Gb=!1);return e}k.reset=function(){this.qa&&this.qa.reset&&this.qa.reset();for(var a=Ga(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.qa&&c.reset&&c.reset()}};k.start=function(a,b){for(var c=Ga(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=Ga(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};k.zb=function(a,b,c,d){var e=this;switch(c){case "save":return this.ra[c]=d,d.onclick=function(){var a=qk(e,!0);if(a){var b=!(!e.yc||e.bh),c=vk(e,b);b?wk(e,a,c):e.ya("Resume disabled, machine state not saved")}},!0;case "reset":return this.ra[c]=d,d.onclick=function(){nb(e)},!0}return!1};
function qk(a,b){var c=a.zc;c||(c=oa("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=xk(a,c))||a.ya("Your user ID has not been approved."))):b&&a.ya("Browser local storage is not available"));return c}
function xk(a,b){a.zc=null;var c=r(la()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(pa("user",c.data),a.zc=c.data)}catch(e){s(e.message+" ("+d+")")}return a.zc}
function wk(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=jk(a,"1.16.0");d.data=c;b=r(la()+"/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.ya("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.ya(c),pa("user",""),a.zc=null)}}
function nb(a){if(a.yc&&!a.bh){var b=ma("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");vk(a,b,!0);!b&&a.kl?window&&window.location.reload():(b||(a.Mh=!0),a.Vg(pk),a.Mh=!1)}else a.reset(),a.la&&lb(a.la)}function C(a,b,c){a=Ga(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}
u(function(){for(var a=A(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=z(c),c=A(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],h=z(f),h=new ok(h,d,!0);Ja(h,f);rk(h,h.Vg)}});ra.show.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Ia("Computer",c.id))&&c.Jj&&!c.na.Gb&&c.Vg(-1)}});
ra.exit.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Ia("Computer",c.id))&&c.na.Gb&&vk(c,!(!c.yc||c.bh),!0)}});var yk=0;function zk(a,b,c,d,e,f){e("Loading "+a+"...");r(a,!0,null,null,function(h,g,m){m?(g||(g="unable to load "+a+" ("+m+")"),f(g,null)):Ak(g,a,b,c,d,e,f)})}
function Ak(a,b,c,d,e,f,h){function g(a,f){if(f)h(f,null);else{if(c){var g=b;g&&0>g.indexOf("/")&&(g=window.location.pathname+g);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(g?" url=$2"+g+"$2":""))}g=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml")}catch(w){g=
null,a=w.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);h(a,g)}}a?e?Bk(a,f,g):g(a,null):h("no data"+(b?" for file: "+b:""),null)}
function Bk(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");r(e,!0,null,null,function(f,h,g){if(g||!h)c(a,"unable to resolve XML reference: "+d[0]+" ("+g+")");else{if(f=d[3])if(g=h.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var m=g[0],n,q=/( [a-z]+=)(['"])(.*?)\2/g;n=q.exec(f);)m=0>m.indexOf(n[1])?m.replace(">",n[0]+">"):m.replace(new RegExp(n[1]+"(['\"])(.*?)\\1"),n[0]);g[0]!=m&&(h=h.replace(g[0],m))}else{c(a,"missing <"+d[1]+"> in "+e);return}h=h.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],h);Bk(a,b,c)}})}else c(a,null)}
function Ck(a,b,c,d){function e(a){if(void 0===m){var b=g&&A(g,"machine-warning");m=b&&b[0]||g}m&&(m.innerHTML=ga(a))}function f(a){e("Error: "+a);n&&h();n=!1}function h(){0==--yk&&ya(!0)}var g,m,n=!0;yk++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.16.0/components.xsl");var q=function(a,d){if(d){var m=function(a,m){if(m)if(m)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var n=d.transformNode(m);n?(g.outerHTML=n,h()):f("transformNodeToObject failed")}else window.document.implementation&&
window.document.implementation.createDocument?(n=new XSLTProcessor,n.importStylesheet(m),(n=n.transformToFragment(d,window.document))?(g.parentNode.replaceChild(n,g),h()):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?zk(c,null,null,!1,e,m):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?zk(b,a,d,!0,e,q):Ak(b,null,a,d,!1,e,q)}else f("failed to find machine element: "+a)}catch(w){f(w.message)}return n}
window.embedPC=function(a,b,c,d){ya(!1);return Ck(a,b,c,d)};window.enableEvents=ya;window.sendEvent=za;})();
function Z(a){this.Qj=a.adapter;switch(this.Qj){case 1:this.$i=1016;this.Df=4;break;case 2:this.$i=760;this.Df=3;break;default:s("Unrecognized serial adapter #"+this.Qj);return}this.yd=null;v.call(this,"SerialPort",a,Z);var b=a.binding,c;a=Aj;b&&(void 0===c&&(c="Panel"),(c=Ia(c,this.id))&&(b=c.qa[b])&&this.Bb(null,null,a,b))}y(v,Z);var Aj="buffer";k=Z.prototype;k.tj=function(a,b){return a==this.Wh?(this.Fd=b,this):null};
k.Bb=function(a,b,c,d){var e=this;switch(c){case Aj:return this.qa[c]=this.yd=d,d.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Bj(e,[b]))},d.onkeypress=function(a){a=a||window.event;Bj(e,[a.which||a.keyCode])},!0}return!1};k.oc=function(a,b,c,d){this.ra=b;this.ka=c;this.Va=d;this.ja=B(a,"ChipSet");bb(b,this,Cj,this.$i);db(b,this,Dj,this.$i);this.Na()};
k.Sb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Rb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Ed()};k.save=function(){var a=new G(this),b=0,c=[];c[b++]=this.uh;c[b++]=this.xj;c[b++]=this.xe;c[b++]=this.hg;c[b++]=this.ud;c[b++]=this.Zd;c[b++]=this.Oc;c[b++]=this.qc;c[b++]=this.vj;c[b]=this.bf;a.set(0,c);return a.data()};k.restore=function(a){return this.Ed(a[0])};
k.Ed=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.uh=a[b++];this.xj=a[b++];this.xe=a[b++];this.hg=a[b++];this.ud=a[b++];this.Zd=a[b++];this.Oc=a[b++];this.qc=a[b++];this.vj=a[b++];this.bf=a[b];return!0};function Bj(a,b){a.bf=a.bf.concat(b);Ej(a)}function Ej(a){0<a.bf.length&&!(a.qc&1)&&(a.uh=a.bf.shift(),a.qc|=1);var b=-1;a.qc&1&&a.hg&1&&(b=4);0<=b?(a.ud&=-8,a.ud|=b,a.ja&&a.Df&&hi(a.ja,a.Df)):(a.ud|=1,a.ja&&a.Df&&ii(a.ja,a.Df))}
k.Im=function(){var a=this.Zd&128?this.xe&255:this.uh;this.qc&=-2;Ej(this);return a};k.tm=function(){return this.Zd&128?this.xe>>8:this.hg};k.um=function(){return this.ud};k.vm=function(){return this.Zd};k.xm=function(){return this.Oc};k.wm=function(){return this.qc};k.Dm=function(){return this.vj};
k.Vn=function(a,b){if(this.Zd&128)this.xe=this.xe&-256|b;else{this.xj=b;this.qc&=-97;var c;this.yd?(13!=b&&(8==b?this.yd.value=this.yd.value.slice(0,-1):(this.yd.value+=String.fromCharCode(b),this.yd.scrollTop=this.yd.scrollHeight)),c=!0):c=!1;c&&(this.qc|=96)}};k.Gn=function(a,b){this.Zd&128?this.xe=this.xe&255|b<<8:this.hg=b};k.Hn=function(a,b){this.Zd=b};
k.In=function(a,b){var c=this.Oc;this.Oc=b;if(this.Fd&&(c^b)&3){var c=this.Fd,d=this.Oc,e=3==(d&3);if(e){if(!c.Jc){var f=!1;c.Oc&2||(c.reset(),f=!0);c.Oc&1||(f=!0);f&&Bj(c.lf,[77,77]);Fj(c,c.Ta);c.setActive(e)}}else c.Jc&&(Gj(c.Ta),c.setActive(e));c.Oc=d}};var Cj={0:Z.prototype.Im,1:Z.prototype.tm,2:Z.prototype.um,3:Z.prototype.vm,4:Z.prototype.xm,5:Z.prototype.wm,6:Z.prototype.Dm},Dj={0:Z.prototype.Vn,1:Z.prototype.Gn,3:Z.prototype.Hn,4:Z.prototype.In};
u(function(){for(var a=A(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Z(d);Ja(d,c)}});function Hj(a){v.call(this,"Mouse",a,Hj);if(this.Vh=a.serial)this.cj="SerialPort";this.setActive(!1);this.Ag=!1;this.Na()}y(v,Hj);k=Hj.prototype;k.oc=function(a,b,c,d){this.Ma=a;this.ra=b;this.ka=c;this.Va=d;this.hh=B(this.Ma,"Video")};k.setActive=function(a){this.Jc=a};
k.Sb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.cj&&!this.lf){for(var c=null;(c=B(this.Ma,this.cj,c))&&(!c.tj||!(this.lf=c.tj(this.Vh,this))););this.lf?this.hh&&(c=this.hh,c.Fd=this,this.Ta=c.Ta):s(this.id+": "+this.cj+" "+this.Vh+" unavailable")}this.Jc?Fj(this,this.Ta):Gj(this.Ta)}return!0};k.Rb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Ed()};k.save=function(){var a=new G(this);a.set(0,this.gj());return a.data()};
k.restore=function(a){return this.Ed(a[0])};k.Ed=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.setActive(a[b++]);this.Vf=a[b++];this.Wf=a[b++];this.ye=a[b++];this.ze=a[b++];this.vg=a[b++];this.wg=a[b++];this.Oc=a[b];return!0};k.gj=function(){var a=0,b=[];b[a++]=this.Jc;b[a++]=this.Vf;b[a++]=this.Wf;b[a++]=this.ye;b[a++]=this.ze;b[a++]=this.vg;b[a++]=this.wg;b[a]=this.Oc;return b};k.Kf=function(a){this.Ag=a};
function Fj(a,b){b&&(a.Jh||(b.addEventListener("mousemove",function(b){if(a.Jc&&a.ka&&a.ka.na.vc){if(0>a.Vf||0>a.Wf)a.Vf=b.clientX,a.Wf=b.clientY;a.Ag?(a.ye=b.movementX||b.mozMovementX||b.webkitMovementX||0,a.ze=b.movementY||b.mozMovementY||b.webkitMovementY||0):(a.ye=b.clientX-a.Vf,a.ze=b.clientY-a.Wf);(a.ye||a.ze)&&Ij(a);a.Vf=b.clientX;a.Wf=b.clientY}},!1),b.addEventListener("mousedown",function(b){Jj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){Jj(a,b.button,!1)},!1),a.Jh=!0),b.style.cursor=
"none")}function Gj(a){a&&(a.style.cursor="auto")}function Jj(a,b,c){if(a.Jc&&a.ka&&a.ka.na.vc){var d;!(d=!1!==a.Ag)&&(d=a.hh)&&(d=a.hh,d=d.Hl?d.Re(!0):!1);d||(a.Ag=null);switch(b){case 0:a.vg!=c&&(a.vg=c,Ij(a));break;case 2:a.wg!=c&&(a.wg=c,Ij(a))}}}function Ij(a){Bj(a.lf,[64|(a.vg?32:0)|(a.wg?16:0)|(a.ze&192)>>4|(a.ye&192)>>6,a.ye&63,a.ze&63]);a.ye=a.ze=0}u(function(){for(var a=A(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Hj(d);Ja(d,c)}});
function Kj(a,b,c){v.call(this,"Disk",{id:a.Sj+".disk"+Lj++},Kj);this.ea=a;this.Ma=a.Ma;this.Va=a.Va;this.Pa=b;this.Vc=b.name;this.Le=b.Le;this.Bg=this.gd=!1;this.create(c,b.jb,b.kb,b.pb,b.ab);this.Td=[];this.Yf=[];this.qd=null;this.Wj=0;this.Ph=!1;this.Na()}var Lj=0;y(v,Kj);k=Kj.prototype;k.oc=function(a,b,c,d){this.Va=d};k.Sb=function(a,b){b||!this.Bg||this.gd||(this.Na(!1),this.load(this.Vc,this.re,null,this.Gl,this));return!0};k.Gl=function(){this.Na(!0)};
k.Rb=function(a,b){if(this.gd){var c,d=0;if(this.Ph&&!ma("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=Mj(this,!1);)if(d=c[0]){this.ea.ya('Unable to save "'+this.Vc+'" (error '+d+")");break}b&&this.gd&&(c="action=close&volume="+this.re,c+="&machine="+this.ea.Ne(),c+="&user="+this.ea.Dd(),r(la()+"/api/v1/disk?"+c,!0),this.gd=!1);!d&&a&&this.ea.ya(this.Vc+" saved")}return!0};
k.create=function(a,b,c,d,e){this.mode=a;this.jb=b;this.kb=c;this.pb=d;this.ab=e;this.Ya=[];if("preload"!=this.mode){a=Array(this.jb);for(b=0;b<a.length;b++){c=Array(this.kb);for(d=0;d<c.length;d++){e=Array(this.pb);for(var f=1;f<=e.length;f++)e[f-1]=Nj(null,b,d,f,this.ab,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.Ya=a}this.Ie=null};
k.load=function(a,b,c,d,e){var f=b;if(!this.ke)if(this.Vc=a,this.re=b,this.ke=d,this.Al=e||this.ea,c){var h=this,g=new FileReader;g.onload=function(){var a=g.result,b,c=a?a.byteLength:0,d=ba[c];if(d){h.jb=d[0];h.kb=d[1];h.pb=d[2];h.ab=512;b=h.ab>>2;var e=d=0,a=new DataView(a,0,c);h.Ya=Array(h.jb);for(c=0;c<h.Ya.length;c++)for(var f=h.Ya[c]=Array(h.kb),H=0;H<f.length;H++)for(var P=f[H]=Array(h.pb),K=0;K<P.length;K++){for(var Q=Nj(null,c,H,K+1,h.ab,0),va=Q.data,Ua=0;Ua<b;Ua++,e+=4)var Ob=va[Ua]=a.getInt32(e,
!0),d=d+Ob&4294967295;Q.lc=b;P[K]=Q}h.Ie=d;b=h}else h.ya("Unrecognized diskette format ("+c+" bytes)");h.ke&&(h.ke.call(h.ea,h.Pa,b,h.Vc,h.re),h.ke=null)};g.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=Oj(this,b),this.Bg=!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=
la()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Le?"":d)+"&format=json")),r(f,!0,null,this,this.El,b)};
k.El=function(a,b,c,d){var e=null;this.Me=!1;var f=0>c&&this.Ma&&!this.Ma.na.Hb;if(this.Bg)c?this.ea.ya('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.gd=!0,e=this);else if(c)this.ea.ya('Unable to load disk "'+this.Vc+'" (error '+c+")",f);else try{if(0<da(a,!0).toLowerCase().indexOf("-readonly"))this.Me=!0;else{var h=b.indexOf("\n");0<h&&1024>h&&0<b.substring(0,h).indexOf("write-protected")&&(this.Me=!0)}var g;g="<"==b.substr(0,1)?["Missing disk image: "+this.Vc]:0>b.indexOf("0x")&&
'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(g.length)if(1==g.length)s(g[0]);else{this.jb=g.length;this.kb=g[0].length;this.pb=g[0][0].length;var m=g[0][0][0];this.ab=m&&m.length||512;for(b=a=0;b<this.jb;b++)for(c=0;c<this.kb;c++)for(d=0;d<this.pb;d++)if(m=g[b][c][d]){var n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var w=m.data;if(void 0===w){var t=m.bytes;if(void 0!==t&&t.length){for(var f=
n<<2,C=t.length;C<f;C++)t[C]=q;this.fill(m,t,0)}else w=[],q=m.pattern=q|q<<8|q<<16|q<<24,m.data=w;delete m.bytes}Nj(m,b,c);for(f=0;f<w.length;f++)a=a+w[f]&4294967295}this.Ya=g;this.Ie=a;e=this}else s("Empty disk image: "+this.Vc)}catch(H){s("Disk image error: "+H.message)}this.ke&&(this.ke.call(this.Al,this.Pa,e,this.Vc,this.re),this.ke=null)};function Nj(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Rl=b;a.Tl=c;a.Kc=a.lc=0;a.fb=!1;return a}
k.an=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],h=d[2],g=d[3];a=d[4];b=JSON.parse(b);for(var m=0;g--;){var n=this.seek(e,f,h,!0);if(!n)break;this.fill(n,b,m);m+=n.length;h++}}(d=d[5])&&d(c,a)};function Oj(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.jb+":"+a.kb+":"+a.pb+":"+a.ab;c+="&machine="+a.ea.Ne();c+="&user="+a.ea.Dd();return la()+"/api/v1/disk?"+c}
function Pj(a,b,c,d,e,f){if(a.gd){var h;h="action=read&volume="+a.re;h+="&chs="+a.jb+":"+a.kb+":"+a.pb+":"+a.ab;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ea.Ne());h+="&user="+a.ea.Dd();r(la()+"/api/v1/disk?"+h,!0,null,a,a.an,[b,c,d,e,!0,f])}else f&&f(-1,!1)}function Qj(a,b,c){b.fb=!0;var d=a.Td.indexOf(b);0<=d&&(a.Td.splice(d,1),a.Yf.splice(d,1));a.Td.push(b);a.Yf.push(ha());c&&Rj(a)}
function Rj(a){if(a.Td.length){var b=a.Yf[0]+2E3;a.qd&&a.Wj<b&&(clearTimeout(a.qd),a.qd=null);if(!a.qd){var c=ha(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.qd=setTimeout(function(){Mj(a,!0)},b);a.Wj=c+b}}else a.qd&&(clearTimeout(a.qd),a.qd=null)}
function Mj(a,b){b&&(a.qd=null);var c=a.Td[0];if(c){for(var d=c.Rl,e=c.Tl,c=c.sector,f=0,h=[],g=c-1;g<a.Ya[d][e].length;g++){var m=a.Ya[d][e][g];if(!m.fb)break;var n=a.Td.indexOf(m);a.Td.splice(n,1);a.Yf.splice(n,1);h=h.concat(Sj(m));m.fb=!1;f++}a.gd?(g={},a.Ph=!0,g.action="write",g.volume=a.re,g.chs=a.jb+":"+a.kb+":"+a.pb+":"+a.ab,g.addr=d+":"+e+":"+c+":"+f,g.machine=a.ea.Ne(),g.user=a.ea.Dd(),g.data=JSON.stringify(h),d=r(la()+"/api/v1/disk",b,g,a,a.fn,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.fn=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Ph=!1;if(0<=a&&a<this.Ya.length&&0<=b&&b<this.Ya[a].length)for(e-=1;0<f--&&0<=e&&e<this.Ya[a][b].length;e++){var h=this.Ya[a][b][e];c?Qj(this,h,!1):h.fb||(h.Kc=h.lc=0)}d&&Rj(this)};k.info=function(){return this.Ya.length?[this.Ya.length,this.Ya[0].length,this.Ya[0][0].length,this.Ya[0][0][0].length]:[0,0,0,0]};
k.seek=function(a,b,c,d,e){var f=null,h=this.Pa,g=this.Ya[a];if(g){var m=g[b];if(!m&&h.ff&&b<h.kb)for(m=g[b]=Array(h.vd),g=0;g<m.length;g++)m[g]=Nj(null,a,b,g+1,h.ib,0);if(m){for(g=0;g<m.length;g++)if(m[g]&&m[g].sector==c){f=m[g];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++g<m.length;)null===m[g].pattern&&d++;Pj(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&h.ff&&9==h.Za&&(f=m[g]=Nj(null,a,b,h.Za,h.ib,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 Sj(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 h=f<e.length?e[f]:a;c[d++]=h&255;c[d++]=h>>8&255;c[d++]=h>>16&255;c[d++]=h>>24&255}return c}function Tj(a,b){var c=-1;if(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.Me)return!1;if(b<a.length){if(c!=Tj(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var h=d.length;h<=f;h++)d[h]=e;a.lc?f<a.Kc?(a.lc+=a.Kc-f,a.Kc=f):f>=a.Kc+a.lc&&(a.lc+=f-(a.Kc+a.lc)+1):(a.Kc=f,a.lc=1);d[f]=d[f]&~(255<<b)|c<<b;this.gd&&Qj(this,a,!0)}return!0}return null};
k.save=function(){var a=0,b=[];b[a++]=[this.re,this.Ie,this.jb,this.kb,this.pb,this.ab];if(!this.gd&&!this.Me)for(var c=this.Ya,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 h=c[d][e][f];if(h&&h.lc){for(var g=[],m=0,n=h.Kc,q=h.Kc+h.lc;n<q;)g[m++]=h.data[n++];b[a++]=[d,e,f,h.Kc,g]}}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.Ya.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.Ie&&e[1]!=this.Ie&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.Ie+")",b=-1));for(this.Ya.length||(b=-1);d<a.length&&0<=b;){var f=0,h=a[d++],g=h[f++],m=h[f++],n=h[f++];if(g>=this.Ya.length||m>=this.Ya[g].length||n>=this.Ya[g][m].length){c="sector "+g+":"+m+":"+n+" out of range ("+
b+" changes applied)";b=-1;break}if(this.Me){c="unable to modify write-protected disk";b=-1;break}e=h[f++];f=h[f++];h=e+f.length;if(g=this.Ya[g][m][n]){for(m=g.data.length;m<e;)g.data[m++]=g.pattern;m=0;g.Kc=e;for(g.lc=f.length;e<h;)g.data[e++]=f[m++];b++}}}0>b&&this.ea.ya("unable to restore disk '"+this.Vc+": "+c);return b};
function Uj(a){v.call(this,"FDC",a,Uj);this.dmaRead=this.Dh;this.dmaWrite=this.Eh;this.dmaFormat=this.Bl;this.ee=null;if(a.autoMount&&(this.ee=a.autoMount,"string"==typeof this.ee))try{this.ee=eval("("+a.autoMount+")")}catch(b){s("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.ee=null}this.ic=[];this.Kj=!1}y(v,Uj);l={};aa={};
var Vj={3:{bd:3,xd:0,name:aa.Wo},4:{bd:2,xd:1,name:aa.Uo},5:{bd:9,xd:7,name:aa.hp},6:{bd:9,xd:7,name:aa.Oo},7:{bd:2,xd:0,name:aa.Qo},8:{bd:1,xd:2,name:aa.Vo},10:{bd:2,xd:7,name:aa.Po},13:{bd:6,xd:7,name:aa.Ao},15:{bd:3,xd:0,name:aa.To}};k=Uj.prototype;
k.Bb=function(a,b,c,d){var e=this;switch(c){case "listDisks":return this.qa[c]=d,d.onchange=function(){var a=e.qa.descDisk,b=d.options[d.selectedIndex];if(a&&b){var c={};if(b=b.getAttribute("data-value"))try{c=eval("({"+b+"})")}catch(m){s("FDC option error: "+m.message)}b=c.desc;void 0===b&&(b="");c=c.href;void 0!==c&&(b='<a href="'+c+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.qa[c]=d,d.onchange=function(){var a;a=d.value;var b=10,c;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 m=a.charAt(a.length-1).toLowerCase();"h"==m?(b=16,m=null):"."==m&&(b=10,m=null);null===m&&(a=a.substr(0,a.length-1))}var n;ca(a,b)&&!isNaN(n=parseInt(a,b))&&(c=n)}a=c;null!=a&&Wj(e,a)},!0;case "loadDrive":return this.qa[c]=d,d.onclick=function(){var a=e.qa.listDisks;a&&Xj(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window&&"FileReader"in window?(this.Kj=!0,this.qa[c]=d,d.addEventListener("change",
function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Xj(e,da(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};k.oc=function(a,b,c,d){this.ra=b;this.ka=c;this.Va=d;this.Ma=a;this.ja=B(a,"ChipSet");this.hd();bb(b,this,Yj);db(b,this,Zj);this.Kj&&ak(this,"Local Disk","?");ak(this,"Remote Disk","??");this.ef()||this.Na()};
k.Sb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ma.Nh){this.ic=[];for(var c=0;c<this.xa.length;c++)bk(this,c,!0);this.ef(!0)}}else if(!this.restore(a))return!1;if(c=this.qa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.hi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.hi&&(c.value="0",Wj(this,0))}}return!0};
k.Rb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.hd()};k.save=function(){var a=new G(this);a.set(0,this.dj());return a.data()};k.restore=function(a){return this.hd(a[0])};
k.hd=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.$a=a[b++];b++;this.wa=a[b++];this.Ub=a[b++];this.sb=a[b++];this.eb=a[b++];this.Xe=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.ic=c);void 0===this.xa&&(this.hi=4,this.ja&&(this.hi=Lh(this.ja)),this.xa=Array(4));for(c=0;c<this.xa.length;c++){var f=this.xa[c];if(void 0===f){var f=this.xa[c]={},h;if(this.ja)a:{h=this.ja;if(c<Lh(h)){if(!h.rd){h=360;break a}if(c<h.rd.length){h=h.rd[c];break a}}h=0}else h=0;switch(h){case 160:case 180:f.kb=
1;default:f.jb=40;f.pb=9;break;case 720:f.jb=80;f.pb=9;break;case 1200:f.jb=80;f.pb=15;break;case 1440:f.jb=80,f.pb=18}}this.Xh(f,c,e[c])||(d=!1)}this.Od=a[b++]||0;this.el=a[b]||0;return d};k.dj=function(){var a=0,b=[];b[a++]=this.$a;b[a++]=0;b[a++]=this.wa;b[a++]=this.Ub;b[a++]=this.sb;b[a++]=this.eb;b[a++]=this.Xe;b[a++]=this.fj();for(var c=a++,d=0;d<this.xa.length;d++){var e=this.xa[d];e.ta&&ck(this,e.se,e.ta)}b[c]=this.ic;b[a++]=this.Od;b[a]=this.el;return b};
k.Xh=function(a,b,c){var d=0,e=!0;a.$a=b;a.uc=a.Ke=!1;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.jb||40,a.kb||c[3],a.pb||9,a.ab||512,c[1],a.Rg,a.Bf,a.Cf]);a.Wa=c[d++];var f=c[d++];a.name=f[0];a.jb=f[1];a.kb=f[2];a.pb=f[3];a.ab=f[4];a.Le=f[5];(a.Rg=f[6])?(a.Bf=f[7],a.Cf=f[8]):(a.Rg=a.jb,a.Bf=a.kb,a.Cf=a.pb);a.Ja=c[d++];a.td=c[d++];a.mb=c[d++];a.td=100<=a.td?a.td-100:a.td-a.mb;a.Za=c[d++];a.vd=c[d++];a.ib=c[d++];a.bb=c[d++];a.La=null;a.ta||(a.se="");var h=c[d++];
102==h&&(h=!1);"boolean"==typeof h?(f=c[d++],c=c[d],h?(d=this.xa[b],bk(this,b,!0,!0),d.Ke=!0,b=new Kj(this,d,"preload"),this.Ej(d,b,f,c,!0)):dk(this,b,f,c,!0)?a.ta&&c&&ek(this,f,c,a.ta):this.Na(!1)):void 0!==h&&a.ta&&0>a.ta.restore(h)&&(e=!1);e&&a.ta&&void 0!==a.bb&&(a.La=a.ta.seek(a.mb,a.Ja,a.Za));return e};k.fj=function(){for(var a=0,b=[],c=0;c<this.xa.length;c++)b[a++]=this.ej(this.xa[c]);return b};
k.ej=function(a){var b=0,c=[];c[b++]=a.Wa;c[b++]=[a.name,a.jb,a.kb,a.pb,a.ab,a.Le,a.Rg,a.Bf,a.Cf];c[b++]=a.Ja;c[b++]=a.td+100;c[b++]=a.mb;c[b++]=a.Za;c[b++]=a.vd;c[b++]=a.ib;c[b++]=a.bb;c[b++]=a.Ke;c[b++]=a.jl;c[b]=a.se;return c};k.ef=function(a){a||(this.ae=0);if(this.ee)for(var b in this.ee){var c=this.ee[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.xa.length){!dk(this,d,c.name,c.path,!0)&&a&&this.Na(!1);continue}}this.ya("Unrecognized auto-mount specification for drive "+b)}return!!this.ae};
function Xj(a,b,c,d){var e,f=a.qa.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.xa.length)if(c)if("?"==c)a.ya('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=da(c);a.$b("Attempting to load "+c+' as "'+b+'"')}for(a.$b("loading disk "+c+"...");dk(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,h=c,g=void 0,g=0;g<f.ic.length;g++)if(f.ic[g][1]==h){f.ic.splice(g,1);break}bk(a,e,!1,!0)}}else bk(a,e);else a.ya("Nothing to load")}function dk(a,b,c,d,e,f){var h=a.xa[b];if(d&&h.se!=d){bk(a,b,e,!0);if(h.uc)return a.ya("Drive "+b+" busy"),!0;h.uc=!0;e&&(h.je=!0,a.ae++);h.Ke=!!f;(new Kj(a,h,"preload")).load(c,d,f,a.Ej);return!1}return!0}
k.Ej=function(a,b,c,d,e){var f;a.uc=!1;b&&(f=b.info(),b&&f[0]>a.jb||f[1]>a.kb)&&(this.ya('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.$a)),b=null);b?(a.ta=b,a.jl=c,a.se=d,ek(this,c,d,b),f=b.info(),this.Od|=128,this.ya('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.$a),a.je||e),a.Rg=f[0],a.Bf=f[1],a.Cf=f[2]):a.Ke=!1;a.je&&(a.je=!1,--this.ae||this.Na());Wj(this,a.$a)};
function ak(a,b,c){if(a=a.qa.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.innerHTML=b;a.appendChild(d)}}function Wj(a,b){if(0<=b&&b<a.xa.length){var c=a.xa[b],d=a.qa.listDisks,e=a.qa.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.Ke?"?":c.se,!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 bk(a,b,c,d){var e=a.xa[b];e.ta&&(ck(a,e.se,e.ta),e.jl="",e.se="",e.ta=null,e.Ke=!1,a.Od|=128,d||a.ya("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Wj(a,b))}function ek(a,b,c,d){var e;for(e=0;e<a.ic.length;e++)if(a.ic[e][1]==c){d.restore(a.ic[e][2]);return}a.ic[e]=[b,c,[]]}function ck(a,b,c){var d;for(d=0;d<a.ic.length;d++)if(a.ic[d][1]==b){a.ic[d][2]=c.save();break}}k.Bn=function(a,b){b&4?this.Xe&4||this.Xe&8&&this.ja&&hi(this.ja,6):this.hd();this.Xe=b};k.om=function(){return this.wa};
k.mm=function(){var a=0;this.sb<this.eb&&(a=this.Ub[this.sb]);this.Xe&8&&this.ja&&ii(this.ja,6);++this.sb>=this.eb&&(this.wa&=-81,this.sb=this.eb=0);return a};
k.An=function(a,b){this.eb<this.Ub.length&&(this.Ub[this.eb++]=b);var c=this.Ub[0]&31;if(void 0!==Vj[c]&&this.eb>=Vj[c].bd){var d=!1;this.sb=0;var c=this.Ia(),e,f,h,g,m,n=c&31;switch(n){case 3:this.Ia(l.Xo);this.Ia(l.Do);this.Gb();break;case 4:f=this.Ia(l.Ye);this.$a=f&3;e=this.xa[this.$a];this.Gb();this.Tb((e.Wa&4278190080)>>>24,l.$o);break;case 5:case 6:f=this.Ia(l.Ye);d=f>>2&1;this.$a=f&3;e=this.xa[this.$a];e.Ja=d;f=e.mb=this.Ia(l.mj);h=this.Ia(l.nj);g=e.Za=this.Ia(l.pj);m=this.Ia(l.kh);e.ib=128<<
m;e.vd=this.Ia(l.yo);this.Ia(l.ul);this.Ia(l.xo);6==n?this.Fh(e):this.Gh(e);fk(this,e,c,d,f,h,g,m);d=!0;break;case 7:f=this.Ia(l.Ye);this.$a=f&3;e=this.xa[this.$a];e.mb=e.td=0;e.Wa=268435488;this.Gb();d=!0;break;case 8:e=this.xa[this.$a];e.Ja=0;this.Gb();this.Tb(e.$a|e.Ja<<2|e.Wa&255,l.wl);this.Tb(e.mb,l.Mo);this.$a=this.$a+1&3;break;case 10:f=this.Ia(l.Ye);d=f>>2&1;this.$a=f&3;e=this.xa[this.$a];f=e.mb;h=e.Ja=d;g=e.Za=1;m=0;e.Wa=0;e.ta&&(e.La=e.ta.seek(e.mb,e.Ja,e.Za))?m=e.La.length:e.Wa=72;fk(this,
e,c,d,f,h,g,m);d=!0;break;case 13:f=this.Ia(l.Ye);d=f>>2&1;this.$a=f&3;e=this.xa[this.$a];f=e.mb;h=e.Ja=d;g=1;m=this.Ia(l.kh);e.ib=128<<m;e.vd=this.Ia(l.So);this.Ia(l.ul);e.uj=this.Ia(l.tl);this.Dj(e);fk(this,e,c,d,f,h,g,m);d=!0;break;case 15:f=this.Ia(l.Ye),this.$a=f&3,e=this.xa[this.$a],e.Ja=f>>2&1,f=this.Ia(l.Jo),e.mb+=f-e.td,0>e.mb&&(e.mb=0),e.mb>=e.jb&&(e.mb=e.jb-1),e.td=f,e.Wa=32,0==e.mb&&(e.Wa|=268435456),this.Gb(),d=!0}0<this.eb&&(this.wa|=80);this.Xe&8&&(!e||e.Wa&8||!d||this.ja&&hi(this.ja,
6))}};k.nm=function(){var a=this.Od;this.Od&=-129;return a};k.zn=function(a,b){this.el=b};function fk(a,b,c,d,e,f,h,g){a.Gb();a.Tb(b.$a|b.Ja<<2|b.Wa&255,l.wl);a.Tb((b.Wa&65280)>>>8,l.Yo);a.Tb((b.Wa&16711680)>>>16,l.Zo);var m=0;if(e!=b.mb||f!=b.Ja)m=h=1;c&128&&(f^=m,d||(m=0));a.Tb(e+m,l.mj);a.Tb(f,l.nj);a.Tb(h,l.pj);a.Tb(g,l.kh)}k.Ia=function(){var a=this.Ub[this.sb];this.sb++;return a};k.Gb=function(){this.sb=this.eb=0};k.Tb=function(a){this.Ub[this.eb++]=a};
k.Dh=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};k.Eh=function(a,b){return void 0!==b&&0<=b?this.Bc(a,b):-1};k.Bl=function(a,b){return void 0!==b&&0<=b?this.jj(a,b):-1};k.Fh=function(a){a.Wa=72;a.ta&&(a.La=null,a.Wa=0,this.ja&&(Yh(this.ja,2,this,"dmaRead",a),Uh(this.ja,2)))};k.Gh=function(a){a.Wa=72;a.ta&&(a.ta.Me?a.Wa=576:(a.La=null,a.Wa=0,this.ja&&(Yh(this.ja,2,this,"dmaWrite",a),Uh(this.ja,2))))};
k.Dj=function(a){a.Wa=72;a.ta&&(a.La=null,a.Wa=0,this.ja&&(a.de=0,a.jc=Array(4),a.ff=!0,a.jf=0,Yh(this.ja,2,this,"dmaFormat",a),Uh(this.ja,2),a.ff=!1))};k.yc=function(a,b){var c=-1;if(!a.Wa&&a.ta){do{if(a.La&&0<=(c=Tj(a.La,a.bb++)))break;a.La=a.ta.seek(a.mb,a.Ja,a.Za);if(!a.La){a.Wa=1088;break}a.bb=0;this.cf(a)}while(1)}b(c,!1)};
k.Bc=function(a,b){if(a.Wa||!a.ta)return-1;do{if(a.La&&a.ta.write(a.La,a.bb++,b))break;a.La=a.ta.seek(a.mb,a.Ja,a.Za);if(!a.La){a.Wa=8256;b=-1;break}a.bb=0;this.cf(a)}while(1);return b};k.cf=function(a){a.Za++;a.Za>=a.Cf+1&&(a.Za=1,a.Ja++,a.Ja>=a.Bf&&(a.Ja=0,a.mb++))};k.jj=function(a,b){if(a.Wa)return-1;a.jc[a.de++]=b;if(a.de==a.jc.length){a.mb=a.jc[0];a.Ja=a.jc[1];a.Za=a.jc[2];a.ib=128<<a.jc[3];for(var c=a.de=0;c<a.ib;c++)if(0>this.Bc(a,a.uj))return-1;a.jf++}a.jf>=a.vd&&(b=-1);return b};
var Yj={1012:Uj.prototype.om,1013:Uj.prototype.mm,1015:Uj.prototype.nm},Zj={1010:Uj.prototype.Bn,1013:Uj.prototype.An,1015:Uj.prototype.zn};u(function(){for(var a=A(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Uj(d);Ja(d,c)}});
function $(a){v.call(this,"HDC",a,$);this.dmaRead=this.Dh;this.dmaWrite=this.Eh;this.dmaWriteBuffer=this.Cl;this.dmaWriteFormat=this.Dl;this.mh=[];if(a.drives)try{this.mh=eval("("+a.drives+")")}catch(b){s("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.rf=(this.ie="at"==a.type)?1:0;this.Sl=this.ie?2:3}y(v,$);
var gk=[{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=$.prototype;k.Bb=function(){return!1};k.oc=function(a,b,c,d){this.ra=b;this.ka=c;this.Va=d;this.Ma=a;this.ja=B(a,"ChipSet");bb(b,this,this.ie?hk:ik);db(b,this,this.ie?jk:kk);nc(c,19,this,this.Qm);nc(c,64,this,this.Rm);this.reset();this.ef()||this.Na()};
k.Sb=function(a,b){if(!b)if(!a||!this.restore)this.hd(),this.Ma.Nh&&this.ef(!0);else if(!this.restore(a))return!1;return!0};k.Rb=function(a){return a&&this.save?this.save():!0};k.Ne=function(){return this.Ma?this.Ma.Ne():""};k.Dd=function(){return this.Ma?this.Ma.Dd():""};k.reset=function(){this.hd(null,!0)};k.save=function(){var a=new G(this);a.set(0,this.dj());return a.data()};k.restore=function(a){return this.hd(a[0])};
k.hd=function(a,b){var c=0,d=!0;if(this.ie)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.nd=a[c++],this.il=a[c++],this.Pd=a[c++],this.ah=a[c++],this.Zg=a[c++],this.Yg=a[c++],this.We=a[c++],this.wa=a[c++],this.bj=a[c++],this.$g=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.Nf=a[c++];this.wa=a[c++];this.Ub=a[c++];this.sb=a[c++];this.eb=a[c++];this.hl=a[c++];this.gl=a[c++];this.fl=a[c++];var e=a[c++];void 0!==e?this.Oe=e:void 0===this.Oe&&(this.Oe=-1)}void 0===this.xa&&(this.xa=Array(this.mh.length));
c=a[c];void 0===c&&(c=[]);for(e=0;e<this.xa.length;e++){void 0===this.xa[e]&&(this.xa[e]={});var f=this.xa[e];this.Xh(e,f,this.mh[e],c[e],b)||(d=!1);null!=this.Nf&&1>=e&&(this.Nf|=(f.type&3)<<(1-e<<1))}return d};
k.dj=function(){var a=0,b=[];this.ie?(b[a++]=this.nd,b[a++]=this.il,b[a++]=this.Pd,b[a++]=this.ah,b[a++]=this.Zg,b[a++]=this.Yg,b[a++]=this.We,b[a++]=this.wa,b[a++]=this.bj,b[a++]=this.$g):(b[a++]=this.Nf,b[a++]=this.wa,b[a++]=this.Ub,b[a++]=this.sb,b[a++]=this.eb,b[a++]=this.hl,b[a++]=this.gl,b[a++]=this.fl,b[a++]=this.Oe);b[a]=this.fj();return b};
k.Xh=function(a,b,c,d,e){var f=0,h=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.$a=a;b.errorCode=d[f++];b.nl=d[f++];b.Le=d[f++];b.Ce=d[f++];b.De=d[f++];b.Ja=d[f++];b.kb=d[f++];b.Rd=d[f++];b.Za=d[f++];b.vd=d[f++];b.ib=d[f++];b.ng=this.ie?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.Dd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===gk[this.rf][b.type])b.type=this.Sl;c=gk[this.rf][b.type];
b.pb=c[2]||17;b.ab=c[3]||512;if(e&&this.ja&&(e=this.ja,c=b.type,e.oa)){var g=e.oa[18],g=a?g&240|c:g&15|c<<4;e.oa&&(e.oa[18]=g,Eh(e))}void 0===b.ta&&(b.ta=null,this.ya("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));lk(this,b);b.bb=d[f++];b.La=null;b.ta&&(a=d[f],void 0!==a&&0>b.ta.restore(a)&&(h=!1),h&&void 0!==b.bb&&(b.La=b.ta.seek(b.Rd,b.Ja,b.Za+b.ng)));return h};k.fj=function(){for(var a=0,b=[],c=0;c<this.xa.length;c++)b[a++]=this.ej(this.xa[c]);return b};
k.ej=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.nl;c[b++]=a.Le;c[b++]=a.Ce;c[b++]=a.De;c[b++]=a.Ja;c[b++]=a.kb;c[b++]=a.Rd;c[b++]=a.Za;c[b++]=a.vd;c[b++]=a.ib;c[b++]=a.bb;c[b]=a.ta?a.ta.save():null;return c};
function lk(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Ce[2])?e=b.Ce[0]<<8|b.Ce[1]:c=b.type);null==c||d||(d=gk[a.rf][c][1],e=gk[a.rf][c][0]);d&&((c=gk[a.rf][b.type])&&e!=c[0]&&d!=c[1]&&a.ya("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.jb=e,b.kb=d,null==b.ta&&(b.ta=new Kj(a,b,b.mode)))}}
k.ef=function(a){a||(this.ae=0);for(var b=0;b<this.xa.length;b++){var c=this.xa[b];if(c.name&&c.path){if(!(a&&c.ta&&c.ta.Bg)){var d;d=c.name;var c=c.path,e=this.xa[b];e.uc?(this.ya("Drive "+b+" busy"),d=!0):(e.uc=!0,e.je=!0,this.ae++,(e.ta||new Kj(this,e,e.mode)).load(d,c,null,this.Fl),d=!1);!d&&a&&this.Na(!1)}}else a&&void 0!==c.type&&(c.ta=null,lk(this,c,c.type))}return!!this.ae};
k.Fl=function(a,b,c){a.uc=!1;(a.ta=b)&&this.ya('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.$a),a.je);a.je&&(a.je=!1,--this.ae||this.Na())};k.Om=function(){var a=0;this.sb<this.eb&&(a=this.Ub[this.sb]);this.ja&&ii(this.ja,5);this.wa&=-33;++this.sb>=this.eb&&(this.sb=this.eb=0,this.wa&=-15);return a};k.Xn=function(a,b){this.eb<this.Ub.length&&(this.Ub[this.eb++]=b);var c=12!=this.Ub[0]?6:this.Ub.length;6==this.eb&&(this.wa&=-2);this.eb>=c&&(this.wa|=2,this.wa&=-2,mk(this))};
k.Pm=function(){var a=this.wa;this.sb<this.eb&&(this.wa|=1);return a};k.$n=function(a,b){this.hl=b;this.ja&&ii(this.ja,5);this.hd()};k.Nm=function(){return this.Nf};k.Zn=function(a,b){this.gl=b;this.wa=13};k.Yn=function(a,b){this.fl=b};k.Xi=function(){};k.$l=function(){var a=-1;if(this.Pa&&(a=this.yc(this.Pa),this.Pa.bb==this.Pa.ab))if(this.Pa.ib-=this.Pa.ab,this.Pd=this.Pd-1&255,this.Pa.ib>=this.Pa.ab){var b=this;this.yc(this.Pa,function(a){0<=a?nk(b):(b.wa=1,b.nd=16)},!1)}else this.wa=80;return a};
k.nn=function(a,b){this.Pa&&this.Pa.ib>=this.Pa.ab&&(0>this.Bc(this.Pa,b)?(this.wa=1,this.nd=16):this.Pa.bb==this.Pa.ab&&(this.Pa.ib-=this.Pa.ab,this.Pd=this.Pd-1&255,nk(this),this.Pa.ib>=this.Pa.ab||(this.wa=80)))};k.bm=function(){return this.nd};k.sn=function(a,b){this.il=b};k.cm=function(){return this.Pd};k.qn=function(a,b){this.Pd=b};k.dm=function(){return this.ah};k.rn=function(a,b){this.ah=b};k.Zl=function(){return this.Zg};k.mn=function(a,b){this.Zg=b};k.Yl=function(){return this.Yg};
k.ln=function(a,b){this.Yg=b};k.am=function(){return this.We};k.on=function(a,b){this.We=b;this.wa=this.xa[this.We&16?1:0]?this.wa|64:this.wa&-65};k.em=function(){return this.wa};k.kn=function(a,b){this.bj=b;this.ja&&ii(this.ja,14);ok(this)};k.pn=function(a,b){this.$g&4&&!(b&4)&&(this.nd=1);this.$g=b};
function ok(a){var b=!1,c=a.bj,d=a.We&16?1:0,e=a.We&15,f=a.Zg|(a.Yg&3)<<8,h=a.ah,g=a.Pd||256;a.Pa=null;a.nd=0;a.wa=80;(d=a.xa[d])?(d.Rd=f,d.Ja=e,d.Za=h,d.ib=g*d.ab,c=144<=c?c:c&240,d.La=null,d.errorCode=0,a.Pa=d):c=-1;switch(c&240){case 32:a.yc(d,function(b){0<=b&&a.ja?(nk(a),a.wa=136):(a.wa=1,a.nd=16)},!1);break;case 48:a.ja?(nk(a),a.wa=136):(a.wa=1,a.nd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.nd=1;b=!0;break;case 145:d.kb=e+1,d.pb=g,b=!0}b&&nk(a)}
function nk(a){!a.ja||a.$g&2||hi(a.ja,14)}
function mk(a){a.sb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,h=a.Ia(),g=a.Ia(),m=h<<2&768|g,n=h&63,q=a.Ia(),w=a.Ia(),t=a.xa[e];t&&(t.Rd=m,t.Ja=f,t.Za=n,t.ib=q*t.ab);switch(b){case 3:a.Gb(t?t.errorCode:4);a.Tb(c);a.Tb(h);a.Tb(g);a.Tb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)t&&c<t.Ce.length&&(t.Ce[c++]=b);t&&lk(a,t);b=0;t||a.Oe!=e||(a.Oe=-1,b=2);a.Gb(b|d);b=-1;break;case 224:case 228:a.Gb(0|d),b=-1}if(0<=b)switch(void 0===t?b=-1:(t.errorCode=0,t.nl=0),b){case 0:a.Gb(0|d);break;case 1:t.op=
w;a.Gb(0|d);break;case 5:a.Gb(0|d);break;case 8:a.Fh(t,function(b){a.Gb(b|d)});break;case 10:a.Gh(t,function(b){a.Gb(b|d)});break;case 15:pk(a,t,function(b){a.Gb(b|d)});break;default:a.Gb(2|d)}}k.Ia=function(){var a=-1;this.sb<this.eb&&(a=this.Ub[this.sb++]);return a};k.Gb=function(a){this.sb=this.eb=0;void 0!==a&&this.Tb(a);this.ja&&hi(this.ja,5);this.wa|=32};k.Tb=function(a){this.Ub[this.eb++]=a};k.Dh=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};
k.Eh=function(a,b){return void 0!==b&&0<=b?this.Bc(a,b):-1};k.Cl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.bb<a.De.length?a.De[a.bb++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.Dl=function(a,b){return void 0!==b&&0<=b?this.jj(a,b):-1};k.Fh=function(a,b){a.errorCode=4;if(a.ta&&(a.La=null,this.ja)){a.errorCode=0;Yh(this.ja,3,this,"dmaRead",a);Uh(this.ja,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.Gh=function(a,b){a.errorCode=4;if(a.ta&&(a.La=null,this.ja)){a.errorCode=0;Yh(this.ja,3,this,"dmaWrite",a);Uh(this.ja,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function pk(a,b,c){b.errorCode=4;b.De&&b.De.length==b.ib||(b.De=Array(b.ib));b.bb=0;a.ja?(b.errorCode=0,Yh(a.ja,3,a,"dmaWriteBuffer",b),Uh(a.ja,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.Dj=function(a,b){a.errorCode=4;if(a.ta&&(a.La=null,this.ja)){a.de=0;a.jc=Array(4);a.ff=!0;a.jf=0;a.errorCode=0;Yh(this.ja,3,this,"dmaWriteFormat",a);Uh(this.ja,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.ff=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.yc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.La&&(d=Tj(a.La,a.bb),a.bb+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;if(a.ta)return a.ta.seek(a.Rd,a.Ja,a.Za+a.ng,!1,function(c,g){(a.La=c)?(a.bb=0,f.cf(a),d=Tj(a.La,a.bb),a.bb+=e):a.errorCode=20;b(d,g)}),d;a.errorCode=20;b(d,!1)}return d};
k.Bc=function(a,b){if(a.errorCode)return-1;do{if(a.La&&a.ta.write(a.La,a.bb++,b))break;a.ta&&a.ta.seek(a.Rd,a.Ja,a.Za+a.ng,!0,function(b){a.La=b});if(!a.La){a.errorCode=20;b=-1;break}a.bb=0;this.cf(a)}while(1);return b};k.cf=function(a){a.Za++;var b=1-a.ng;a.Za>=a.pb+b&&(a.Za=b,a.Ja++,a.Ja>=a.kb&&(a.Ja=0,a.Rd++))};
k.jj=function(a,b){if(a.errorCode)return-1;a.jc[a.de++]=b;if(a.de==a.jc.length){a.Rd=a.jc[0];a.Ja=a.jc[1];a.Za=a.jc[2];a.ib=128<<a.jc[3];for(var c=a.de=0;c<a.ib;c++)if(0>this.Bc(a,a.uj))return-1;a.jf++}a.jf>=a.vd&&(b=-1);return b};k.Qm=function(){var a=this.ka.K&255;!(this.ka.H>>8)&&128<a&&(this.Oe=a-128);return!0};k.Rm=function(){var a;(a=this.ka.H>>8)||(a=!this.ja)||(a=!(this.ja.ub[0].ad&64));return a?!0:!1};
var ik={800:$.prototype.Om,801:$.prototype.Pm,802:$.prototype.Nm},hk={496:$.prototype.$l,497:$.prototype.bm,498:$.prototype.cm,499:$.prototype.dm,500:$.prototype.Zl,501:$.prototype.Yl,502:$.prototype.am,503:$.prototype.em},kk={800:$.prototype.Xn,801:$.prototype.$n,802:$.prototype.Zn,803:$.prototype.Yn,807:$.prototype.Xi,811:$.prototype.Xi,815:$.prototype.Xi},jk={496:$.prototype.nn,497:$.prototype.sn,498:$.prototype.qn,499:$.prototype.rn,500:$.prototype.mn,501:$.prototype.ln,502:$.prototype.on,503:$.prototype.kn,
1014:$.prototype.pn};u(function(){for(var a=A(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new $(d);Ja(d,c)}});var Sc=8;function G(a,b,c){this.id=a.id;this.key=qk(a,b,c);this.Va=a.Va;tk(this,a.ao)}function qk(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}
G.prototype={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.Mh=!0):this.Mh?!0:na()&&(a=oa(this.key))?(this[this.id]=a,this.Mh=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){s(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){tk(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}}};function tk(a,b){a[a.id]={};b&&a.set("parms",b);a.Mh=!1}function uk(a){var b=!0;if(na()){var c=JSON.stringify(a[a.id]);pa(a.key,c)||(s("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
function vk(a,b,c){v.call(this,"Computer",a,vk);this.na.Hb=!1;this.sf=a.buswidth;this.zc=wk;this.Rf=null;this.Eg=!1;this.url=b?b.url:null;this.ko=(Math.random()+0.1).toString(36).substr(2,12);this.Ac=xk(this);if(this.ka=Ia("CPU",this.id)){this.Va=Ia("Debugger",this.id);this.ra=new Pa({id:this.Sj+".bus",buswidth:this.sf},this.ka,this.Va);var d,e=Ga(this.id);if((this.Mf=Ia("Panel",this.id))&&this.Mf.Ah)for(b=0;b<e.length;b++)d=e[b],d.ya=this.Mf.ya,d.$b=this.Mf.$b,d.Ah=this.Mf.Ah;for(b=0;b<e.length;b++)d=
e[b],d.oc&&d.oc(this,this.ra,this.ka,this.Va);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.dh=d:this.zc=parseInt(d,10));var f;if(a=Ba&&Ba.state||(f=!0,a.state))b=this.ll=a,f||(this.Eg=!0,this.zc=wk),this.zc&&(this.gh=new G(this,"1.16.0"),this.gh.load()?b=null:delete this.gh);!b&&this.zc&&(f=null,this.Ac&&(f=la()+"/api/v1/user?req=load&user="+this.Ac+"&state="+qk(this,"1.16.0")),b=f)&&(this.Eg=!0);b?r(b,!0,null,this,this.dn):this.Na();c||yk(this,this.Wg)}else s("Unable to find CPU component")}
y(v,vk);var wk=0;k=vk.prototype;k.Ne=function(){return this.ko};k.Dd=function(){return this.Ac?this.Ac:""};k.dn=function(a,b,c){c?(this.dh=null,this.Eg=!1,this.ya("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Rf=b;this.Na()};function yk(a,b,c){for(var d=Ga(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!La(f)){La(f,function(){yk(a,b,c)});return}}b.call(a,c)}
function zk(a,b){var c=new G(a,"1.16.0","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.ya("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.Wg=function(a){void 0===a&&(a=this.zc||(this.Rf?1:wk));var b=!1,c=!1;this.Mj=!1;var d=this.gh||new G(this,"1.16.0");if(-1==a)b=!0;else if(a>wk){if(d.load(this.Rf)){this.ve=new G(this,"1.16.0","failsafe");this.ve.load()&&(Ak(this,d),a=2,tk(this.ve));this.ve.set("timestamp",ia());uk(this.ve);var e=this.zc&&!this.Eg;if(1==a||ma("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),h=d.get("data");f&&("ok"==f?d.load(h):("error"==
f&&"no machine state"!=h?(this.ya("Error: "+h),"unable to verify user"==h&&(pa("user",""),this.Ac=null)):this.$b(f+": "+h),tk(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&zk(this,c?d:null)}else 2==a&&d.clear()}else zk(this);delete this.Rf;delete this.gh}e=Ga(this.id);for(f=0;f<e.length;f++)h=e[f],h!==this&&h!=this.ka&&(c=Bk(this,h,d,b,c));b=[d,a,c];-1!=a?yk(this,this.Fj,b):this.Fj(b)};
function Bk(a,b,c,d,e){if(!b.na.Hb){b.na.Hb=!0;if(b.Sb){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.Sb(f,d)&&f&&(s("Unable to restore state for "+b.type),a.ll&&!a.Rf?(c.clear(),a.zc=wk,window&&window.location.reload()):a.Mj=!0,b.Sb(null),e=!1)}if(!d&&b.Bj)for(a=b.Bj.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.Fj=function(a){var b=a[0],c=0>a[1];a=a[2];this.na.Hb=!0;this.Jj||(this.$b("PCjs v1.16.0\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Jj=!0);this.ka&&Bk(this,this.ka,b,c,a);this.Mj&&(Ak(this,b),b.clear());!c&&this.ve&&(this.ve.clear(),delete this.ve)};
function Ak(a,b){if(ma("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.Dd(),d=b.toString(),e={app:"PCjs",ver:"1.16.0"};e.url=a.url;e.user=c;e.type="bug";e.data=d;r("http://www.pcjs.org/api/v1/report",!0,e)}}
function Ck(a,b,c){var d,e="none",f=new G(a,"1.16.0"),h=new G(a,"1.16.0","validate"),g=ia();h.set("timestamp",g);f.set("timestamp",g);f.set("version","1.16.0");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.ka&&a.ka.Rb&&(c&&mb(a.ka),d=a.ka.Rb(b,c),"object"===typeof d&&f.set(a.ka.id,d),c&&(a.ka.na.Hb=!1,!1===d&&(e=null)));for(var g=Ga(a.id),m=0;m<g.length;m++){var n=g[m];n.na.Hb&&(n.Rb&&(d=n.Rb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.na.Hb=
!1,!1===d&&(e=null)))}e&&(c?(g=d=!1,b?(a.Ac&&Dk(a,a.Ac,f.toString()),uk(h)&&uk(f)||(e=null,d=g=!0)):a.zc&&(d=!0,g=3==a.zc),d&&f.clear(g)):e=f.toString());c&&(a.na.Hb=!1);return e}k.reset=function(){this.ra&&this.ra.reset&&this.ra.reset();for(var a=Ga(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ra&&c.reset&&c.reset()}};k.start=function(a,b){for(var c=Ga(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=Ga(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};k.Bb=function(a,b,c,d){var e=this;switch(c){case "save":return this.qa[c]=d,d.onclick=function(){var a=xk(e,!0);if(a){var b=!(!e.zc||e.dh),c=Ck(e,b);b?Dk(e,a,c):e.ya("Resume disabled, machine state not saved")}},!0;case "reset":return this.qa[c]=d,d.onclick=function(){nb(e)},!0}return!1};
function xk(a,b){var c=a.Ac;c||(c=oa("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=Ek(a,c))||a.ya("Your user ID has not been approved."))):b&&a.ya("Browser local storage is not available"));return c}
function Ek(a,b){a.Ac=null;var c=r(la()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(pa("user",c.data),a.Ac=c.data)}catch(e){s(e.message+" ("+d+")")}return a.Ac}
function Dk(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=qk(a,"1.16.0");d.data=c;b=r(la()+"/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.ya("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.ya(c),pa("user",""),a.Ac=null)}}
function nb(a){if(a.zc&&!a.dh){var b=ma("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Ck(a,b,!0);!b&&a.ll?window&&window.location.reload():(b||(a.Nh=!0),a.Wg(wk),a.Nh=!1)}else a.reset(),a.ka&&lb(a.ka)}function B(a,b,c){a=Ga(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}
u(function(){for(var a=A(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=z(c),c=A(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],h=z(f),h=new vk(h,d,!0);Ja(h,f);yk(h,h.Wg)}});ra.show.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Ia("Computer",c.id))&&c.Jj&&!c.na.Hb&&c.Wg(-1)}});
ra.exit.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Ia("Computer",c.id))&&c.na.Hb&&Ck(c,!(!c.zc||c.dh),!0)}});var Fk=0;function Gk(a,b,c,d,e,f){e("Loading "+a+"...");r(a,!0,null,null,function(h,g,m){m?(g||(g="unable to load "+a+" ("+m+")"),f(g,null)):Hk(g,a,b,c,d,e,f)})}
function Hk(a,b,c,d,e,f,h){function g(a,f){if(f)h(f,null);else{if(c){var g=b;g&&0>g.indexOf("/")&&(g=window.location.pathname+g);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(g?" url=$2"+g+"$2":""))}g=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml")}catch(w){g=
null,a=w.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);h(a,g)}}a?e?Ik(a,f,g):g(a,null):h("no data"+(b?" for file: "+b:""),null)}
function Ik(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");r(e,!0,null,null,function(f,h,g){if(g||!h)c(a,"unable to resolve XML reference: "+d[0]+" ("+g+")");else{if(f=d[3])if(g=h.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var m=g[0],n,q=/( [a-z]+=)(['"])(.*?)\2/g;n=q.exec(f);)m=0>m.indexOf(n[1])?m.replace(">",n[0]+">"):m.replace(new RegExp(n[1]+"(['\"])(.*?)\\1"),n[0]);g[0]!=m&&(h=h.replace(g[0],m))}else{c(a,"missing <"+d[1]+"> in "+e);return}h=h.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],h);Ik(a,b,c)}})}else c(a,null)}
function Jk(a,b,c,d){function e(a){if(void 0===m){var b=g&&A(g,"machine-warning");m=b&&b[0]||g}m&&(m.innerHTML=ga(a))}function f(a){e("Error: "+a);n&&h();n=!1}function h(){0==--Fk&&ya(!0)}var g,m,n=!0;Fk++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.16.0/components.xsl");var q=function(a,d){if(d){var m=function(a,m){if(m)if(m)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var n=d.transformNode(m);n?(g.outerHTML=n,h()):f("transformNodeToObject failed")}else window.document.implementation&&
window.document.implementation.createDocument?(n=new XSLTProcessor,n.importStylesheet(m),(n=n.transformToFragment(d,window.document))?(g.parentNode.replaceChild(n,g),h()):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?Gk(c,null,null,!1,e,m):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?Gk(b,a,d,!0,e,q):Hk(b,null,a,d,!1,e,q)}else f("failed to find machine element: "+a)}catch(w){f(w.message)}return n}
window.embedPC=function(a,b,c,d){ya(!1);return Jk(a,b,c,d)};window.enableEvents=ya;window.sendEvent=za;})();