Fixed text-mode page flipping (needed more aggressive, but still careful, cache invalidation)

This commit is contained in:
Jeff Parsons 2016-03-31 14:44:40 -07:00
commit 265851d963
7 changed files with 917 additions and 891 deletions

View file

@ -12,19 +12,19 @@ function Fa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return
function Ia(a,b,c,d){var e=null;b="data:application/"+b+(c?";base64":"")+",";b=Ga("Firefox")?b+(c?a:encodeURIComponent(a)):b+(c?a:encodeURI(a));d&&(e=document.createElement("a"),"string"!=typeof e.download&&(e=null));e?(e.href=b,e.download=d,document.body.appendChild(e),e.click(),document.body.removeChild(e),a="Check your Downloads folder for "+d+"."):(window.open(b),a="Check your browser for a new window/tab containing the requested data ("+d+").");return a}
function Ja(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}function Ka(a,b){function c(){b(100===d)&&(e=setTimeout(c,d),d=100)}var d=0,e=null,f=!1;a.onmousedown=function(){f||e||(d=500,c())};a.ontouchstart=function(){e||(d=500,c())};a.onmouseup=a.onmouseout=function(){e&&(clearTimeout(e),e=null)};a.ontouchend=a.ontouchcancel=function(){e&&(clearTimeout(e),e=null);f=!0}}var La={init:[],show:[],exit:[]},Ma=!1,Na=!0;
function Pa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Qa(a){La.init.push(a)}function Ra(a){if(Na)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){w("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks.")}}function Sa(a){!Na&&a?(Na=!0,Ma&&Ta("init")):Na=a}function Ta(a){La[a]&&Ra(La[a])}Pa("onload",function(){Ma=!0;Ra(La.init)});Pa("onpageshow",function(){Ra(La.show)});
Pa(Ga("Opera")||Ga("iOS")?"onunload":"onbeforeunload",function(){Ra(La.exit)});function Ua(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.sk=b.comment;this.tk=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.ue=this.id.substr(0,b),this.de=this.id.substr(b+1)):this.de=this.id;this[a]=c;this.la={$e:!1,bd:!1,$g:!1,cc:!1,ud:!1};this.rg=null;this.la.ud=!1;this.qa={};this.ha=null;this.wc=d||0;Va.push(this)}var Wa=void 0,Ya={};
Pa(Ga("Opera")||Ga("iOS")?"onunload":"onbeforeunload",function(){Ra(La.exit)});function Ua(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.sk=b.comment;this.tk=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.ve=this.id.substr(0,b),this.de=this.id.substr(b+1)):this.de=this.id;this[a]=c;this.la={af:!1,bd:!1,$g:!1,cc:!1,ud:!1};this.rg=null;this.la.ud=!1;this.qa={};this.ha=null;this.wc=d||0;Va.push(this)}var Wa=void 0,Ya={};
if(window){Wa||(Wa=window.location.search.substr(1));for(var Za,$a=/\+/g,ab=/([^&=]+)=?([^&]*)/g;Za=ab.exec(Wa);)Ya[decodeURIComponent(Za[1].replace($a," "))]=decodeURIComponent(Za[2].replace($a," "))}function cb(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 db(a,b){b||(b=Ua);a.prototype=cb(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}var Va=[],eb={};function fb(a,b,c){eb[a]&&b&&(eb[a][b]=c)}function gb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Va.length;b++){var d=Va[b];a&&d.id.indexOf(a)||c.push(d)}return c}function hb(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Va.length;c++)if(Va[c].id===a)return Va[c]}return null}
function ib(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<Va.length;d++)if(c)c==Va[d]&&(c=null);else if(!(a!=Va[d].type||b&&Va[d].id.indexOf(b)))return Va[d]}return null}function jb(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){w(c.message+" ("+a+")")}return b}function lb(a,b,c){var d;b&&(void 0===d&&(d="Panel"),(d=ib(d,a.id))&&(b=d.qa[b])&&a.Qb(null,c,b))}
function mb(a,b){for(var c=nb(b.parentNode,"pcjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(1===g.nodeType){var h=g.getAttribute("class");if(h)for(var k=h.split(" "),l=0;l<k.length;l++)switch(h=k[l],h){case "pcjs-binding":(h=jb(g))&&h.binding&&a.Qb(h.type,h.binding,g,h.value),l=k.length}}}}
function nb(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}
Ua.prototype={constructor:Ua,parent:null,toString:function(){return this.name?this.name:this.id||this.type},Qb:function(a,b,c){switch(b){case "clear":return this.qa[b]||(this.qa[b]=c,c.onclick=function(a){return function(){a.qa.print&&(a.qa.print.value="")}}(this)),!0;case "print":return this.qa[b]||(this.Cf=this.qa[b]=c,c.value="",this.O=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}}(c),
Ua.prototype={constructor:Ua,parent:null,toString:function(){return this.name?this.name:this.id||this.type},Qb:function(a,b,c){switch(b){case "clear":return this.qa[b]||(this.qa[b]=c,c.onclick=function(a){return function(){a.qa.print&&(a.qa.print.value="")}}(this)),!0;case "print":return this.qa[b]||(this.Df=this.qa[b]=c,c.value="",this.O=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}}(c),
this.Oa=function(a,b,c){this.O(a,"notice",c)}),!0;default:return!1}},log:function(){},O:function(){},status:function(a){this.O(this.de+": "+a)},Oa:function(a,b){b||w(a)},ic:function(){return this.la.cc=!0},hc:function(a,b){b&&(this.la.cc=!1);return!0}};function x(a,b,c,d,e,f,g){a.ha&&(!0===g?g=0:null==g&&(g=a.wc),ob(a.ha,a,b,c,d,e,f,g))}function y(a,b,c,d){a.ha&&(!0===c||z(a,c|0))&&a.ha.message(b,d)}
function z(a,b){if(a.ha){a===a.ha?b|=0:b=b||a.wc;var c=a.ha.wc&b;return!!b&&c===b||!!(c&a.ha.Gk)}return!1}function pb(a,b){if(a.la.$g)return a.la.bd&&(a.la.bd=!1),a.la.$g=!1;if(a.la.ud)return a.O(a.toString()+" error"),!1;a.la.bd=b;return a.la.bd}function qb(a,b){a.la.bd&&(b?a.la.$g=!0:void 0===b&&a.O(a.toString()+" busy"));return a.la.bd}function rb(a,b){if(!a.la.ud&&(a.la.$e=!1!==b,a.la.$e)){var c=a.rg;a.rg=null;c&&c()}}function tb(a,b){b&&(a.la.$e?b():a.rg=b);return a.la.$e}
function z(a,b){if(a.ha){a===a.ha?b|=0:b=b||a.wc;var c=a.ha.wc&b;return!!b&&c===b||!!(c&a.ha.Gk)}return!1}function pb(a,b){if(a.la.$g)return a.la.bd&&(a.la.bd=!1),a.la.$g=!1;if(a.la.ud)return a.O(a.toString()+" error"),!1;a.la.bd=b;return a.la.bd}function qb(a,b){a.la.bd&&(b?a.la.$g=!0:void 0===b&&a.O(a.toString()+" busy"));return a.la.bd}function rb(a,b){if(!a.la.ud&&(a.la.af=!1!==b,a.la.af)){var c=a.rg;a.rg=null;c&&c()}}function tb(a,b){b&&(a.la.af?b():a.rg=b);return a.la.af}
function ub(a,b){a.la.ud=!0;a.Oa(b)}
var vb="undefined"!==typeof ArrayBuffer,wb={Dg:4,Jc:5,Kd:6,ed:7,fd:8,hb:9,ec:11,fc:12,Ge:4,$i:60,aj:83,yc:3,Vb:9,Nc:16,Cg:1,ej:19,gj:28,ij:16,hj:21,fj:37,cj:2,yh:9,dj:5,bj:33,Ah:10,zh:8,Pf:3,Of:15,wj:51,xj:1,yj:2,zj:4,vj:32,Bh:15,Bj:15,$a:16,ab:4,Dj:11,Cj:18,Aj:24,gc:4,Ej:2,nf:16,Fj:17,Gh:18,Gj:19,Fh:5,Hh:6,Lj:2,Kj:8,Ij:9,Jj:10,Hj:10,Ih:10,Jh:10,kj:80,mj:144,jj:86,lj:154,oj:101,qj:165,nj:107,pj:171,Nj:70,Pj:113,Mj:76,Oj:124,sj:80,uj:128,rj:86,tj:134,Rf:3,Qf:16,Oh:10,Nh:8,Qj:51,zc:8,Rj:17,Sj:36,Sc:11,
Tj:16,He:10,od:2,vh:18,wh:7,xh:15,Ch:12,Dh:7,Eh:11,Kh:18,Lh:7,Mh:15,Ph:15,Qh:7,Rh:13,Vh:11,Wh:7,Xh:8,Uj:8,Xj:12,Vj:18,Wj:17,Yj:15,Th:8,Sh:20,Uh:2,$h:3,Sf:9,Zh:5,Yh:11,bi:4,ai:17,Zj:11},xb={Dg:0,Jc:0,Kd:0,ed:0,fd:0,hb:0,ec:1,fc:1,Ge:3,$i:14,aj:16,yc:2,Vb:7,Nc:7,Cg:0,ej:7,gj:13,ij:7,hj:11,fj:16,cj:3,yh:6,dj:2,bj:13,Ah:5,zh:5,Pf:2,Of:7,wj:23,xj:0,yj:1,zj:3,vj:17,Bh:7,Bj:11,$a:7,ab:3,Dj:7,Cj:11,Aj:15,gc:2,Ej:3,nf:7,Fj:8,Gh:8,Gj:8,Fh:4,Hh:4,Lj:2,Kj:3,Ij:5,Jj:2,Hj:3,Ih:5,Jh:3,kj:14,mj:22,jj:17,lj:25,oj:17,
qj:25,nj:20,pj:28,Nj:13,Pj:21,Mj:16,Oj:24,sj:13,uj:21,rj:16,tj:24,Rf:2,Qf:7,Oh:5,Nh:5,Qj:19,zc:5,Rj:5,Sj:17,Sc:3,Tj:5,He:3,od:0,vh:8,wh:5,xh:9,Ch:5,Dh:5,Eh:4,Kh:5,Lh:5,Mh:4,Ph:7,Qh:5,Rh:8,Vh:3,Wh:4,Xh:3,Uj:11,Xj:11,Vj:15,Wj:15,Yj:7,Th:5,Sh:8,Uh:0,$h:2,Sf:6,Zh:3,Yh:6,bi:3,ai:5,Zj:5},yb={19:{0:"disk reset",1:"get status",2:"read drive @DL (@CH:@DH:@CL,@AL) into @ES:@BX",3:"write drive @DL (@CH:@DH:@CL,@AL) from @ES:@BX",4:"verify drive @DL (@CH:@DH:@CL,@AL)",5:"format drive @DL using @ES:@BX",8:"read drive @DL parameters",
var vb="undefined"!==typeof ArrayBuffer,wb={Dg:4,Jc:5,Kd:6,ed:7,fd:8,hb:9,ec:11,fc:12,He:4,$i:60,aj:83,yc:3,Vb:9,Nc:16,Cg:1,ej:19,gj:28,ij:16,hj:21,fj:37,cj:2,yh:9,dj:5,bj:33,Ah:10,zh:8,Qf:3,Pf:15,wj:51,xj:1,yj:2,zj:4,vj:32,Bh:15,Bj:15,$a:16,ab:4,Dj:11,Cj:18,Aj:24,gc:4,Ej:2,of:16,Fj:17,Gh:18,Gj:19,Fh:5,Hh:6,Lj:2,Kj:8,Ij:9,Jj:10,Hj:10,Ih:10,Jh:10,kj:80,mj:144,jj:86,lj:154,oj:101,qj:165,nj:107,pj:171,Nj:70,Pj:113,Mj:76,Oj:124,sj:80,uj:128,rj:86,tj:134,Sf:3,Rf:16,Oh:10,Nh:8,Qj:51,zc:8,Rj:17,Sj:36,Sc:11,
Tj:16,Ie:10,od:2,vh:18,wh:7,xh:15,Ch:12,Dh:7,Eh:11,Kh:18,Lh:7,Mh:15,Ph:15,Qh:7,Rh:13,Vh:11,Wh:7,Xh:8,Uj:8,Xj:12,Vj:18,Wj:17,Yj:15,Th:8,Sh:20,Uh:2,$h:3,Tf:9,Zh:5,Yh:11,bi:4,ai:17,Zj:11},xb={Dg:0,Jc:0,Kd:0,ed:0,fd:0,hb:0,ec:1,fc:1,He:3,$i:14,aj:16,yc:2,Vb:7,Nc:7,Cg:0,ej:7,gj:13,ij:7,hj:11,fj:16,cj:3,yh:6,dj:2,bj:13,Ah:5,zh:5,Qf:2,Pf:7,wj:23,xj:0,yj:1,zj:3,vj:17,Bh:7,Bj:11,$a:7,ab:3,Dj:7,Cj:11,Aj:15,gc:2,Ej:3,of:7,Fj:8,Gh:8,Gj:8,Fh:4,Hh:4,Lj:2,Kj:3,Ij:5,Jj:2,Hj:3,Ih:5,Jh:3,kj:14,mj:22,jj:17,lj:25,oj:17,
qj:25,nj:20,pj:28,Nj:13,Pj:21,Mj:16,Oj:24,sj:13,uj:21,rj:16,tj:24,Sf:2,Rf:7,Oh:5,Nh:5,Qj:19,zc:5,Rj:5,Sj:17,Sc:3,Tj:5,Ie:3,od:0,vh:8,wh:5,xh:9,Ch:5,Dh:5,Eh:4,Kh:5,Lh:5,Mh:4,Ph:7,Qh:5,Rh:8,Vh:3,Wh:4,Xh:3,Uj:11,Xj:11,Vj:15,Wj:15,Yj:7,Th:5,Sh:8,Uh:0,$h:2,Tf:6,Zh:3,Yh:6,bi:3,ai:5,Zj:5},yb={19:{0:"disk reset",1:"get status",2:"read drive @DL (@CH:@DH:@CL,@AL) into @ES:@BX",3:"write drive @DL (@CH:@DH:@CL,@AL) from @ES:@BX",4:"verify drive @DL (@CH:@DH:@CL,@AL)",5:"format drive @DL using @ES:@BX",8:"read drive @DL parameters",
21:"get drive @DL DASD type",22:"get drive @DL change line status",23:"set drive @DL DASD type",24:"set drive @DL media type"},21:{128:"open device",129:"close device",130:"program termination",131:"wait @CX:@DXus for event",132:"joystick support",133:"SYSREQ pressed",134:"wait @CX:@DXus",135:"move block (@CX words)",136:"get extended memory size",137:"processor to virtual mode",144:"device busy loop",145:"interrupt complete flag set"},33:{0:"terminate program",1:"read character (AL) from stdin with echo",
2:"write character #@DL to stdout",3:"read character (AL) from stdaux",4:"write character #@DL to stdaux",5:"write character #@DL to stdprn",6:"direct console output (input if @DL=FF)",7:"direct console input without echo",8:"read character (AL) from stdin without echo",9:"write string $@DS:@DX to stdout",10:"buffered input (DS:DX)",11:"get stdin status",12:"flush buffer and read stdin",13:"disk reset",14:"select default drive @DL",15:"open file using FCB ^@DS:@DX",16:"close file using FCB ^@DS:@DX",
17:"find first matching file using FCB ^@DS:@DX",18:"find next matching file using FCB ^@DS:@DX",19:"delete file using FCB ^@DS:@DX",20:"sequential read from file using FCB ^@DS:@DX",21:"sequential write to file using FCB ^@DS:@DX",22:"create or truncate file using FCB ^@DS:@DX",23:"rename file using FCB ^@DS:@DX",25:"get current default drive (AL)",26:"set disk transfer area (DTA=@DS:@DX)",27:"get allocation information for default drive",28:"get allocation information for specific drive @DL",31:"get drive parameter block for default drive",
@ -35,102 +35,102 @@ qj:25,nj:20,pj:28,Nj:13,Pj:21,Mj:16,Oj:24,sj:13,uj:21,rj:16,tj:24,Rf:2,Qf:7,Oh:5
80:"set current PSP @BX",81:"get current PSP (bx)",82:"get system variables (ES:BX)",83:"translate BPB @DS:@SI to DPB (ES:BP)",84:"get verify flag (AL)",85:"create child PSP at segment @DX",86:"rename file $@DS:@DX to $@ES:@DI",87:"get(0)/set(1) file @BX date @DX and time @CX (@AL)",88:"get(0)/set(1) memory allocation strategy (@AL)",89:"get extended error information",90:"create temporary file $@DS:@DX with attributes @CX",91:"create file $@DS:@DX with attributes @CX",92:"lock(0)/unlock(1) file @BX region @CX:@DX length @SI:@DI (@AL)",
93:"critical error information (@AL)",96:"get fully-qualified filename from $@DS:@SI",99:"get lead byte table (@AL)",108:"extended open file $@DS:@SI"},65:{79:"check debugger loaded"}};function zb(a){Ua.call(this,"Panel",a,zb);this.L=this.W=this.fa=-1}db(zb);function Ab(a,b,c,d){this.A=[a,b,c,d];this.B=null;void 0===a&&(this.A[0]=256*Math.random()|0,this.A[1]=256*Math.random()|0,this.A[2]=256*Math.random()|0,this.A[3]=255,this.B=null)}
Ab.prototype.toString=function(){this.B||(this.B="#"+r(this.A[0],2)+r(this.A[1],2)+r(this.A[2],2));return this.B};function Bb(a,b,c,d){this.x=a;this.y=b;this.ad=c;this.A=d}Bb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.ad&&b>=this.y&&b<this.y+this.A};function Db(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new Bb(a.x,a.y,a.ad,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new Bb(a.x,a.y,a.ad*b/c|0,a.A),a.x+=b.ad,a.ad-=b.ad);return b}m=zb.prototype;
m.Qb=function(a,b,c,d){return this.V&&this.V.Qb(a,b,c,d)||this.F&&this.F.Qb(a,b,c,d)||this.B&&this.B.Qb(a,b,c,d)||this.ha&&this.ha.Qb(a,b,c,d)?!0:this.parent.Qb.call(this,a,b,c,d)};m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;this.B=Eb(a,"Keyboard")};m.ic=function(a,b){b||Fb();return!0};m.hc=function(){return!0};m.ie=function(a,b){a.button||(this.fa=b?0:-1,Gb(this,a,b))};m.Gf=function(a){Gb(this,a)};
function Gb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.fa||(a.fa=Math.abs(a.L-d)>Math.abs(a.W-b)?1:2),1==a.fa?b=a.W:2==a.fa&&(d=a.L));a.L=d;a.W=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Oe)for(f=0;f<a.A.Oe.length;f++)if(e=a.A.Oe[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.zf[f],g=ta(Hb.$j,a.A.Qg[d.Qk]),f=g*a.ea.Nb,d=(g+d.Td)*a.ea.Nb-1;0<b&&(f+=e.ad*(b-1)*a.ya);f+=c*a.ya;f|=0;
f>d&&(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.Ca)){b=c;if(a.context&&a.ja&&a.ka){e=a.ja.width;a.ka.fillStyle="black";a.ka.fillRect(0,360,e,360);Ib(a,378,a.ja,a.ka);a.pa=a.Ea.width/24|0;if(null==b)Jb(a,"Mouse over memory to dump");else for(Jb(a,"0x"+r(b),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var h;h=a.ea;var k=b++;h=h.sa[(k&h.Gb)>>>h.La].re(k&h.A,k);Jb(a,r(h,2),null,1);d+=32<=h&&128>h?String.fromCharCode(h):"."}Jb(a,d,null,0,1)}a.context.drawImage(a.ja,0,360,e,360,a.rb,a.Db,a.Pa,a.bb)}a.Ca=
c}}}m.qd=function(){};function Kb(a,b,c,d){a.A.zf[a.A.Ai++]={Qk:b,Td:c,type:d};return sa(Hb,b,c,0,d)}function Ib(a,b,c,d){var e,f=null.style.color,g=a.Na=10;a.C=g;a.U=b;a.X=a.wa=18;e||(e=a.ua||a.wa+"px Monaco, Lucida Console, Courier New");a.ga=a.ua=e;c&&(a.Ea=c);d&&(a.N=d,a.Fa=f||"white")}
m.Qb=function(a,b,c,d){return this.V&&this.V.Qb(a,b,c,d)||this.F&&this.F.Qb(a,b,c,d)||this.B&&this.B.Qb(a,b,c,d)||this.ha&&this.ha.Qb(a,b,c,d)?!0:this.parent.Qb.call(this,a,b,c,d)};m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;this.B=Eb(a,"Keyboard")};m.ic=function(a,b){b||Fb();return!0};m.hc=function(){return!0};m.ie=function(a,b){a.button||(this.fa=b?0:-1,Gb(this,a,b))};m.Hf=function(a){Gb(this,a)};
function Gb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.fa||(a.fa=Math.abs(a.L-d)>Math.abs(a.W-b)?1:2),1==a.fa?b=a.W:2==a.fa&&(d=a.L));a.L=d;a.W=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Pe)for(f=0;f<a.A.Pe.length;f++)if(e=a.A.Pe[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Af[f],g=ta(Hb.$j,a.A.Qg[d.Qk]),f=g*a.ea.Nb,d=(g+d.Td)*a.ea.Nb-1;0<b&&(f+=e.ad*(b-1)*a.ya);f+=c*a.ya;f|=0;
f>d&&(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.Ca)){b=c;if(a.context&&a.ja&&a.ka){e=a.ja.width;a.ka.fillStyle="black";a.ka.fillRect(0,360,e,360);Ib(a,378,a.ja,a.ka);a.pa=a.Ea.width/24|0;if(null==b)Jb(a,"Mouse over memory to dump");else for(Jb(a,"0x"+r(b),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var h;h=a.ea;var k=b++;h=h.sa[(k&h.Gb)>>>h.La].se(k&h.A,k);Jb(a,r(h,2),null,1);d+=32<=h&&128>h?String.fromCharCode(h):"."}Jb(a,d,null,0,1)}a.context.drawImage(a.ja,0,360,e,360,a.rb,a.Db,a.Pa,a.bb)}a.Ca=
c}}}m.qd=function(){};function Kb(a,b,c,d){a.A.Af[a.A.Ai++]={Qk:b,Td:c,type:d};return sa(Hb,b,c,0,d)}function Ib(a,b,c,d){var e,f=null.style.color,g=a.Na=10;a.C=g;a.U=b;a.X=a.wa=18;e||(e=a.ua||a.wa+"px Monaco, Lucida Console, Courier New");a.ga=a.ua=e;c&&(a.Ea=c);d&&(a.N=d,a.Fa=f||"white")}
function Jb(a,b,c,d,e){a.N.font=a.ga;a.N.fillStyle=a.Fa;a.N.fillText(b,a.C,a.U);a.C+=a.pa;null!=c&&(16!=a.Tb?b=c.toString():(b=8>a.Ka?"0x":"",b+=r(c,a.Ka)),a.N.fillText(b,a.C,a.U),a.C+=a.pa);d&&(a.C+=a.pa*d);e&&(a.C=a.Na,a.U+=(a.X+2)*(e||1))}function Fb(){for(var a=!1,b=nb(document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=jb(d),f=hb(e.id);f||(a=!0,f=new zb(e));mb(f,d);a&&rb(f)}}Qa(Fb);
function Lb(a,b,c){Ua.call(this,"Bus",a,Lb);this.F=b;this.ha=c;this.N=a.buswidth||20;this.X=Math.pow(2,this.N);this.wg=this.Gb=this.X-1|0;this.La=32==this.N||20>=this.N?12:24>=this.N?14:15;this.Nb=1<<this.La;this.ga=this.Nb>>2;this.A=this.Nb-1;this.U=this.X/this.Nb|0;this.ea=this.U-1;this.B=[];this.C=[];this.L=this.W=!1;this.aa=[];this.fa=[];a=new B;Mb(a,this.ha);this.sa=Array(this.U);for(b=0;b<this.U;b++)this.sa[b]=a;a=this.F;b=this.sa;c=this.La;a.ld=a.sa=b;a.La=c;a.Nb=1<<a.La;a.Fa=a.Nb-1;a.Gd=b.length;
a.jd=a.Gd-1;a=this.F;a.Gb=a.Db=this.Gb;rb(this)}db(Lb);var Hb,Nb={$j:20,count:8,no:1,type:3},Ob=0,Pb;for(Pb in Nb){var Qb=Nb[Pb];Nb[Pb]={lh:(1<<Qb)-1<<Ob,shift:Ob};Ob+=Qb}Hb=Nb;m=Lb.prototype;m.reset=function(){Rb(this,!0)};m.ic=function(a,b){b||this.reset();return!0};
function Sb(a,b,c,d,e){for(var f=b>>>a.La;0<c&&f<a.sa.length;){var g=a.sa[f],h=f*a.Nb,k=c>a.Nb?a.Nb:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.Da)return g.Me+=g.Da-b,g.Da=b,!0;if(b>=g.Da+g.Me){k=g.size-(b-h);k>c&&(k=c);g.Me=b-g.Da+k;c-=k;b=h+a.Nb;continue}}return Tb(a,1,b,c)}g=a.sa[f];b=new B(b,k,a.Nb,d,e);Mb(b,a.ha,g);a.sa[f++]=b;b=h+a.Nb;c-=k}return 0>=c?(Vb(a.F),!0):Tb(a,2,b,c)}
function Sb(a,b,c,d,e){for(var f=b>>>a.La;0<c&&f<a.sa.length;){var g=a.sa[f],h=f*a.Nb,k=c>a.Nb?a.Nb:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.Da)return g.Ne+=g.Da-b,g.Da=b,!0;if(b>=g.Da+g.Ne){k=g.size-(b-h);k>c&&(k=c);g.Ne=b-g.Da+k;c-=k;b=h+a.Nb;continue}}return Tb(a,1,b,c)}g=a.sa[f];b=new B(b,k,a.Nb,d,e);Mb(b,a.ha,g);a.sa[f++]=b;b=h+a.Nb;c-=k}return 0>=c?(Vb(a.F),!0):Tb(a,2,b,c)}
function Rb(a,b){if(32==a.N)b?a.V&&(Wb(a,1048576,1048576,a.V),a.V=null):a.V||(a.V=Xb(a,1048576,1048576),Wb(a,1048576,1048576,Xb(a,0,1048576)));else if(20<a.N){var c=a.Gb&-1048577|(b?1048576:0);if(c!=a.Gb&&(a.Gb=c,a.F)){var d=a.F;d.Gb=d.Db=c}}}m.Mg=function(a,b,c,d){if(!(a&this.A||!b||b&this.A)){for(var e=a>>>this.La;0<b;){var f=this.sa[e];if(!f.controller)return Tb(this,3,a,b,d);Yb(f,c,!0);b-=this.Nb;e++}return!0}return Tb(this,4,a,b)};
function Zb(a,b,c){if(!(b&a.A||!c||c&a.A)){for(var d=b>>>a.La;0<c;){var e=a.sa[d];b=new B(b);Mb(b,a.ha,e);a.sa[d++]=b;b=d*a.Nb;c-=a.Nb}Vb(a.F);return!0}return Tb(a,5,b,c)}function Xb(a,b,c){var d=[];for(b>>>=a.La;0<c&&b<a.sa.length;)d.push(a.sa[b++]),c-=a.Nb;return d}
function Wb(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.sa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new B(b),l=k,n=e,q=a.ha;l.id=h.id|1;l.Me=h.Me;l.size=h.size;n&&(l.type=n,l.N=n==$b);vb?(l.V=h.V,l.qa=h.qa,l.Xa=h.Xa,l.ee=h.ee,l.da=h.da,Yb(l,ac?bc:cc)):(l.da=h.da,Yb(l,dc));Mb(l,q,h);h=k}a.sa[g++]=h;c-=a.Nb}}m.Qa=function(a){return this.sa[(a&this.Gb)>>>this.La].jc(a&this.A,a)};
m.na=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;return b!=this.A?this.sa[c].qf(b,a):this.sa[c++].jc(b,a)|this.sa[c&this.ea].jc(0,a+1)<<8};function ec(a,b){var c=b&a.A,d=(b&a.Gb)>>>a.La;return c!=a.A?a.sa[d].cg(c,b):a.sa[d++].re(c,b)|a.sa[d&a.ea].re(0,b+1)<<8}m.oa=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;if(b<this.A-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;)d|=this.sa[c].jc(b++,a++)<<f,--g||(c=c+1&this.ea,b=0),f+=8;return d};
m.qc=function(a,b){this.sa[(a&this.Gb)>>>this.La].sc(a&this.A,b&255,a)};m.ib=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;c!=this.A?this.sa[d].xf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.sa[d&this.ea].sc(0,b>>8&255,a+1))};function fc(a,b,c){var d=b&a.A,e=(b&a.Gb)>>>a.La;d!=a.A?a.sa[e].oi(d,c&65535,b):(a.sa[e++].vf(d,c&255,b),a.sa[e&a.ea].vf(0,c>>8&255,b+1))}
m.mb=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;if(c<this.A-2)this.sa[d].wf(c,b);else for(var e=4,f=4-(c&3);e--;)this.sa[d].sc(c++,b&255,a++),--f||(d=d+1&this.ea,c=0),b>>>=8};m.Si=function(){return null};function gc(a,b){if(void 0===b)return a.L=!a.L,a.L;void 0===a.B[b]&&(a.B[b]=[null,!1]);a.B[b][1]=!a.B[b][1];return a.B[b][1]}
function Wb(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.sa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new B(b),l=k,n=e,q=a.ha;l.id=h.id|1;l.Ne=h.Ne;l.size=h.size;n&&(l.type=n,l.N=n==$b);vb?(l.V=h.V,l.qa=h.qa,l.Xa=h.Xa,l.ee=h.ee,l.da=h.da,Yb(l,ac?bc:cc)):(l.da=h.da,Yb(l,dc));Mb(l,q,h);h=k}a.sa[g++]=h;c-=a.Nb}}m.Qa=function(a){return this.sa[(a&this.Gb)>>>this.La].jc(a&this.A,a)};
m.na=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;return b!=this.A?this.sa[c].rf(b,a):this.sa[c++].jc(b,a)|this.sa[c&this.ea].jc(0,a+1)<<8};function ec(a,b){var c=b&a.A,d=(b&a.Gb)>>>a.La;return c!=a.A?a.sa[d].cg(c,b):a.sa[d++].se(c,b)|a.sa[d&a.ea].se(0,b+1)<<8}m.oa=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;if(b<this.A-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;)d|=this.sa[c].jc(b++,a++)<<f,--g||(c=c+1&this.ea,b=0),f+=8;return d};
m.qc=function(a,b){this.sa[(a&this.Gb)>>>this.La].sc(a&this.A,b&255,a)};m.ib=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;c!=this.A?this.sa[d].yf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.sa[d&this.ea].sc(0,b>>8&255,a+1))};function fc(a,b,c){var d=b&a.A,e=(b&a.Gb)>>>a.La;d!=a.A?a.sa[e].oi(d,c&65535,b):(a.sa[e++].wf(d,c&255,b),a.sa[e&a.ea].wf(0,c>>8&255,b+1))}
m.mb=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;if(c<this.A-2)this.sa[d].xf(c,b);else for(var e=4,f=4-(c&3);e--;)this.sa[d].sc(c++,b&255,a++),--f||(d=d+1&this.ea,c=0),b>>>=8};m.Si=function(){return null};function gc(a,b){if(void 0===b)return a.L=!a.L,a.L;void 0===a.B[b]&&(a.B[b]=[null,!1]);a.B[b][1]=!a.B[b][1];return a.B[b][1]}
function hc(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(void 0!==h)for(var k=+e+d;k<=g;k++)void 0!==f.B[k]?w("Input port "+u(k)+" already registered"):f.B[k]=[h,!1]}}function ic(a,b,c,d){for(var e=0,f=0;0<c;){var g=a.B[b],h=a.aa[b]||1,k=1==h?255:2==h?65535:-1,l=k;void 0!==g?(g[0]&&(l=g[0](b,d),void 0===l?l=k:l&=k),a.ha&&a.L!=g[1]&&jc(a.ha,b,l)):a.ha&&(ob(a.ha,a,b,null,d),a.L&&jc(a.ha,b,l));e|=l<<f;f+=h<<3;b+=h;c-=h}return e}
function kc(a,b){if(void 0===b)return a.W=!a.W,a.W;void 0===a.C[b]&&(a.C[b]=[null,!1]);a.C[b][1]=!a.C[b][1];return a.C[b][1]}function lc(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(void 0!==h)for(var k=+e+d;k<=g;k++)void 0!==f.C[k]?w("Output port "+u(k)+" already registered"):f.C[k]=[h,!1]}}
function mc(a,b,c,d,e){for(var f=0;0<c;){var g=a.C[b],h=a.fa[b]||1,k=1==h?255:2==h?65535:-1,k=(d>>>=f)&k;if(void 0!==g){if(g[0])g[0](b,k,e);a.ha&&a.W!=g[1]&&nc(a.ha,b,k)}else a.ha&&(ob(a.ha,a,b,k,e),a.W&&nc(a.ha,b,k));f+=h<<3;b+=h;c-=h}}function Tb(a,b,c,d,e){b="Memory block error ("+b+": "+r(c)+","+r(d)+")";e?a.ha?a.ha.message(b):a.log(b):w(b);return!1}var oc;if(vb){var pc=new ArrayBuffer(2);(new DataView(pc)).setUint16(0,256,!0);oc=256===(new Uint16Array(pc))[0]}else oc=!1;var ac=oc;
function B(a,b,c,d,e,f){this.id=qc+=2;this.da=null;this.C=0;this.Da=a;this.Me=b;this.size=c||0;this.type=d||rc;this.N=d==$b;this.controller=null;this.F=f;Mb(this);this.Va=this.Ni=!1;if(c)if(e)this.controller=e,a=e.Ri(a),this.da=a[0],this.C=a[1],Yb(this,e.fh());else if(vb)this.V=new ArrayBuffer(c),this.qa=new DataView(this.V,0,c),this.Xa=new Uint8Array(this.V,0,c),this.ee=new Uint16Array(this.V,0,c>>1),this.da=new Int32Array(this.V,0,c>>2),Yb(this,ac?bc:cc);else{this.da=Array(c>>2);for(e=0;e<this.da.length;e++)this.da[e]=
function B(a,b,c,d,e,f){this.id=qc+=2;this.da=null;this.C=0;this.Da=a;this.Ne=b;this.size=c||0;this.type=d||rc;this.N=d==$b;this.controller=null;this.F=f;Mb(this);this.Va=this.Ni=!1;if(c)if(e)this.controller=e,a=e.Ri(a),this.da=a[0],this.C=a[1],Yb(this,e.fh());else if(vb)this.V=new ArrayBuffer(c),this.qa=new DataView(this.V,0,c),this.Xa=new Uint8Array(this.V,0,c),this.ee=new Uint16Array(this.V,0,c>>1),this.da=new Int32Array(this.V,0,c>>2),Yb(this,ac?bc:cc);else{this.da=Array(c>>2);for(e=0;e<this.da.length;e++)this.da[e]=
0;Yb(this,dc)}else Yb(this)}var rc=0,$b=2,sc="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),xc=["black","blue","green","cyan"],qc=0;function yc(a){vb&&!ac&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a}
B.prototype={constructor:B,parent:null,gh:function(a){this.Da=a},save:function(){var a,b;if(this.controller)a=null;else if(vb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.qa.getInt32(b<<2,!0);else a=this.da;return a},restore:function(a){if(this.controller)return null==a;if(a&&this.size==a.length<<2){var b;if(vb)for(b=0;b<a.length;b++)this.qa.setInt32(b<<2,a[b],!0);else this.da=a;return this.Va=!0}return!1},Rd:function(a,b,c){b?0===this.Te++&&(c&&(this.F=c),Bc(this,Ac,!1)):0===this.Se++&&
B.prototype={constructor:B,parent:null,gh:function(a){this.Da=a},save:function(){var a,b;if(this.controller)a=null;else if(vb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.qa.getInt32(b<<2,!0);else a=this.da;return a},restore:function(a){if(this.controller)return null==a;if(a&&this.size==a.length<<2){var b;if(vb)for(b=0;b<a.length;b++)this.qa.setInt32(b<<2,a[b],!0);else this.da=a;return this.Va=!0}return!1},Rd:function(a,b,c){b?0===this.Ue++&&(c&&(this.F=c),Bc(this,Ac,!1)):0===this.Te++&&
(c&&(this.F=c),zc(this,Ac,!1))},ja:function(){this.ha&&z(this.ha,129)&&this.ha.message("attempt to read invalid block %"+r(this.Da),!0);return 255},L:function(a,b){this.ha&&z(this.ha,129)&&this.ha.message("attempt to write "+u(b)+" to invalid block %"+r(this.Da),!0)},ka:function(a,b){return this.jc(a++,b++)|this.jc(a,b)<<8},fa:function(a,b){return this.jc(a++,b++)|this.jc(a++,b++)<<8|this.jc(a++,b++)<<16|this.jc(a,b)<<24},X:function(a,b,c){this.sc(a++,b&255,c++);this.sc(a,b>>8,c)},U:function(a,b,
c){this.sc(a++,b&255,c++);this.sc(a++,b>>8&255,c++);this.sc(a++,b>>16&255,c++);this.sc(a,b>>>24,c)},Fa:function(a){return this.da[a>>2]>>>((a&3)<<3)&255},sb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b]>>a;return 24>a?c&65535:c&255|(this.da[b+1]&255)<<8},Za:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b];a&&(c=c>>>a|this.da[b+1]<<32-a);return c},uc:function(a,b){var c=a>>2,d=(a&3)<<3;this.da[c]=this.da[c]&~(255<<d)|b<<d;this.Va=!0},Dd:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.da[c]=this.da[c]&
~(65535<<d)|b<<d:(this.da[c]=this.da[c]&16777215|b<<24,c++,this.da[c]=this.da[c]&-256|b>>8);this.Va=!0},Xc:function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<<d;this.da[c]=this.da[c]&~e|b<<d;c++;this.da[c]=this.da[c]&e|b>>>32-d}else this.da[c]=b;this.Va=!0},Ea:function(a,b){this.ha&&null!=this.Da&&Cc(this.ha,this.Da+a)||this.F&&Dc(this.F,b,1,!1);return this.re(a,b)},rb:function(a,b){this.ha&&null!=this.Da&&Cc(this.ha,this.Da+a,2)||this.F&&Dc(this.F,b,2,!1);return this.cg(a,b)},Pa:function(a,b){this.ha&&
null!=this.Da&&Cc(this.ha,this.Da+a,4)||this.F&&Dc(this.F,b,4,!1);return this.hi(a,b)},tc:function(a,b,c){this.ha&&null!=this.Da&&Ec(this.ha,this.Da+a)||this.F&&Dc(this.F,c,1,!0);this.N?this.L(a,b,c):this.vf(a,b,c)},td:function(a,b,c){this.ha&&null!=this.Da&&Ec(this.ha,this.Da+a,2)||this.F&&Dc(this.F,c,2,!0);this.N?this.L(a,b,c):this.oi(a,b,c)},Wc:function(a,b,c){this.ha&&null!=this.Da&&Ec(this.ha,this.Da+a,4)||this.F&&Dc(this.F,c,4,!0);this.N?this.L(a,b,c):this.ua(a,b,c)},Ja:function(a,b){this.yb.da[this.A]|=
this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.jc(a,b)},Jb:function(a,b){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.qf(a,b)},eb:function(a,b){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.Md(a,b)},Uc:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.W;this.Cd.sc(a,b,c)},Hd:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.W;this.Cd.xf(a,b,c)},ue:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=
this.W;this.Cd.wf(a,b,c)},Ka:function(a,b){return Fc(this.F,b,!1).jc(a,b)},Ub:function(a,b){return Fc(this.F,b,!1).qf(a,b)},fb:function(a,b){return Fc(this.F,b,!1).Md(a,b)},de:function(a,b,c){Fc(this.F,c,!0).sc(a,b,c)},Id:function(a,b,c){Fc(this.F,c,!0).xf(a,b,c)},kd:function(a,b,c){Fc(this.F,c,!0).wf(a,b,c)},Ca:function(a){return this.Xa[a]},aa:function(a){return this.Xa[a]},Ia:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.jc=this.aa;return this.Xa[a]},Tb:function(a){return this.qa.getUint16(a,
!0)},pa:function(a){return a&1?this.Xa[a]|this.Xa[a+1]<<8:this.ee[a>>1]},Db:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.qf=this.pa;return a&1?this.Xa[a]|this.Xa[a+1]<<8:this.ee[a>>1]},Na:function(a){return this.qa.getInt32(a,!0)},ga:function(a){return a&3?this.Xa[a]|this.Xa[a+1]<<8|this.Xa[a+2]<<16|this.Xa[a+3]<<24:this.da[a>>2]},bb:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.Md=this.ga;return a&3?this.Xa[a]|this.Xa[a+1]<<8|this.Xa[a+2]<<16|this.Xa[a+3]<<24:this.da[a>>
2]},bc:function(a,b){this.Xa[a]=b;this.Va=!0},ra:function(a,b){this.Xa[a]=b;this.Va=!0},Cc:function(a,b){this.Xa[a]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.sc=this.ra;this.Cd.Va=!0},rd:function(a,b){this.qa.setUint16(a,b,!0);this.Va=!0},ya:function(a,b){a&1?(this.Xa[a]=b,this.Xa[a+1]=b>>8):this.ee[a>>1]=b;this.Va=!0},Gd:function(a,b){a&1?(this.Xa[a]=b,this.Xa[a+1]=b>>8):this.ee[a>>1]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.xf=this.ya;this.Cd.Va=!0},Vc:function(a,b){this.qa.setInt32(a,
b,!0);this.Va=!0},wa:function(a,b){a&3?(this.Xa[a]=b,this.Xa[a+1]=b>>8,this.Xa[a+2]=b>>16,this.Xa[a+3]=b>>24):this.da[a>>2]=b;this.Va=!0},jd:function(a,b){a&3?(this.Xa[a]=b,this.Xa[a+1]=b>>8,this.Xa[a+2]=b>>16,this.Xa[a+3]=b>>24):this.da[a>>2]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.wf=this.wa;this.Cd.Va=!0}};function Mb(a,b,c){a.ha=b;a.Se=a.Te=0;c&&(c.F&&(a.F=c.F),(a.Se=c.Se)&&zc(a,Ac,!1),(a.Te=c.Te)&&Bc(a,Ac,!1))}
function Gc(a,b){b?0===--a.Te&&(a.sc=a.N?a.L:a.vf,a.xf=a.N?a.X:a.oi,a.wf=a.N?a.U:a.ua):0===--a.Se&&(a.jc=a.re,a.qf=a.cg,a.Md=a.hi)}function Bc(a,b,c){c&&a.Te||(a.sc=!a.N&&b[3]||a.L,a.xf=!a.N&&b[4]||a.X,a.wf=!a.N&&b[5]||a.U);if(c||void 0===c)a.vf=b[3]||a.L,a.oi=b[4]||a.X,a.ua=b[5]||a.U}function zc(a,b,c){c&&a.Se||(a.jc=b[0]||a.ja,a.qf=b[1]||a.ka,a.Md=b[2]||a.fa);if(c||void 0===c)a.re=b[0]||a.ja,a.cg=b[1]||a.ka,a.hi=b[2]||a.fa}
function Yb(a,b,c){b||(b=5==a.type?Hc:6==a.type?Ic:Jc);zc(a,b,c);Bc(a,b,c)}var Jc=[],dc=[B.prototype.Fa,B.prototype.sb,B.prototype.Za,B.prototype.uc,B.prototype.Dd,B.prototype.Xc],Ac=[B.prototype.Ea,B.prototype.rb,B.prototype.Pa,B.prototype.tc,B.prototype.td,B.prototype.Wc],Ic=[B.prototype.Ja,B.prototype.Jb,B.prototype.eb,B.prototype.Uc,B.prototype.Hd,B.prototype.ue],Hc=[B.prototype.Ka,B.prototype.Ub,B.prototype.fb,B.prototype.de,B.prototype.Id,B.prototype.kd];
~(65535<<d)|b<<d:(this.da[c]=this.da[c]&16777215|b<<24,c++,this.da[c]=this.da[c]&-256|b>>8);this.Va=!0},Xc:function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<<d;this.da[c]=this.da[c]&~e|b<<d;c++;this.da[c]=this.da[c]&e|b>>>32-d}else this.da[c]=b;this.Va=!0},Ea:function(a,b){this.ha&&null!=this.Da&&Cc(this.ha,this.Da+a)||this.F&&Dc(this.F,b,1,!1);return this.se(a,b)},rb:function(a,b){this.ha&&null!=this.Da&&Cc(this.ha,this.Da+a,2)||this.F&&Dc(this.F,b,2,!1);return this.cg(a,b)},Pa:function(a,b){this.ha&&
null!=this.Da&&Cc(this.ha,this.Da+a,4)||this.F&&Dc(this.F,b,4,!1);return this.hi(a,b)},tc:function(a,b,c){this.ha&&null!=this.Da&&Ec(this.ha,this.Da+a)||this.F&&Dc(this.F,c,1,!0);this.N?this.L(a,b,c):this.wf(a,b,c)},td:function(a,b,c){this.ha&&null!=this.Da&&Ec(this.ha,this.Da+a,2)||this.F&&Dc(this.F,c,2,!0);this.N?this.L(a,b,c):this.oi(a,b,c)},Wc:function(a,b,c){this.ha&&null!=this.Da&&Ec(this.ha,this.Da+a,4)||this.F&&Dc(this.F,c,4,!0);this.N?this.L(a,b,c):this.ua(a,b,c)},Ja:function(a,b){this.yb.da[this.A]|=
this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.jc(a,b)},Jb:function(a,b){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.rf(a,b)},eb:function(a,b){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.Md(a,b)},Uc:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.W;this.Cd.sc(a,b,c)},Hd:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.W;this.Cd.yf(a,b,c)},ve:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=
this.W;this.Cd.xf(a,b,c)},Ka:function(a,b){return Fc(this.F,b,!1).jc(a,b)},Ub:function(a,b){return Fc(this.F,b,!1).rf(a,b)},fb:function(a,b){return Fc(this.F,b,!1).Md(a,b)},de:function(a,b,c){Fc(this.F,c,!0).sc(a,b,c)},Id:function(a,b,c){Fc(this.F,c,!0).yf(a,b,c)},kd:function(a,b,c){Fc(this.F,c,!0).xf(a,b,c)},Ca:function(a){return this.Xa[a]},aa:function(a){return this.Xa[a]},Ia:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.jc=this.aa;return this.Xa[a]},Tb:function(a){return this.qa.getUint16(a,
!0)},pa:function(a){return a&1?this.Xa[a]|this.Xa[a+1]<<8:this.ee[a>>1]},Db:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.rf=this.pa;return a&1?this.Xa[a]|this.Xa[a+1]<<8:this.ee[a>>1]},Na:function(a){return this.qa.getInt32(a,!0)},ga:function(a){return a&3?this.Xa[a]|this.Xa[a+1]<<8|this.Xa[a+2]<<16|this.Xa[a+3]<<24:this.da[a>>2]},bb:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.Md=this.ga;return a&3?this.Xa[a]|this.Xa[a+1]<<8|this.Xa[a+2]<<16|this.Xa[a+3]<<24:this.da[a>>
2]},bc:function(a,b){this.Xa[a]=b;this.Va=!0},ra:function(a,b){this.Xa[a]=b;this.Va=!0},Cc:function(a,b){this.Xa[a]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.sc=this.ra;this.Cd.Va=!0},rd:function(a,b){this.qa.setUint16(a,b,!0);this.Va=!0},ya:function(a,b){a&1?(this.Xa[a]=b,this.Xa[a+1]=b>>8):this.ee[a>>1]=b;this.Va=!0},Gd:function(a,b){a&1?(this.Xa[a]=b,this.Xa[a+1]=b>>8):this.ee[a>>1]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.yf=this.ya;this.Cd.Va=!0},Vc:function(a,b){this.qa.setInt32(a,
b,!0);this.Va=!0},wa:function(a,b){a&3?(this.Xa[a]=b,this.Xa[a+1]=b>>8,this.Xa[a+2]=b>>16,this.Xa[a+3]=b>>24):this.da[a>>2]=b;this.Va=!0},jd:function(a,b){a&3?(this.Xa[a]=b,this.Xa[a+1]=b>>8,this.Xa[a+2]=b>>16,this.Xa[a+3]=b>>24):this.da[a>>2]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.xf=this.wa;this.Cd.Va=!0}};function Mb(a,b,c){a.ha=b;a.Te=a.Ue=0;c&&(c.F&&(a.F=c.F),(a.Te=c.Te)&&zc(a,Ac,!1),(a.Ue=c.Ue)&&Bc(a,Ac,!1))}
function Gc(a,b){b?0===--a.Ue&&(a.sc=a.N?a.L:a.wf,a.yf=a.N?a.X:a.oi,a.xf=a.N?a.U:a.ua):0===--a.Te&&(a.jc=a.se,a.rf=a.cg,a.Md=a.hi)}function Bc(a,b,c){c&&a.Ue||(a.sc=!a.N&&b[3]||a.L,a.yf=!a.N&&b[4]||a.X,a.xf=!a.N&&b[5]||a.U);if(c||void 0===c)a.wf=b[3]||a.L,a.oi=b[4]||a.X,a.ua=b[5]||a.U}function zc(a,b,c){c&&a.Te||(a.jc=b[0]||a.ja,a.rf=b[1]||a.ka,a.Md=b[2]||a.fa);if(c||void 0===c)a.se=b[0]||a.ja,a.cg=b[1]||a.ka,a.hi=b[2]||a.fa}
function Yb(a,b,c){b||(b=5==a.type?Hc:6==a.type?Ic:Jc);zc(a,b,c);Bc(a,b,c)}var Jc=[],dc=[B.prototype.Fa,B.prototype.sb,B.prototype.Za,B.prototype.uc,B.prototype.Dd,B.prototype.Xc],Ac=[B.prototype.Ea,B.prototype.rb,B.prototype.Pa,B.prototype.tc,B.prototype.td,B.prototype.Wc],Ic=[B.prototype.Ja,B.prototype.Jb,B.prototype.eb,B.prototype.Uc,B.prototype.Hd,B.prototype.ve],Hc=[B.prototype.Ka,B.prototype.Ub,B.prototype.fb,B.prototype.de,B.prototype.Id,B.prototype.kd];
if(vb)var cc=[B.prototype.Ca,B.prototype.Tb,B.prototype.Na,B.prototype.bc,B.prototype.rd,B.prototype.Vc],bc=[B.prototype.aa,B.prototype.pa,B.prototype.ga,B.prototype.ra,B.prototype.ya,B.prototype.wa],Kc=[B.prototype.Ia,B.prototype.Db,B.prototype.bb,B.prototype.Cc,B.prototype.Gd,B.prototype.jd];
function Lc(a,b){Ua.call(this,"CPU",a,Lc,1);var c=a.cycles||b,d=a.multiplier||1;this.Y={};this.Y.Jd=c;this.Y.Xd=d;this.Y.tg=Math.round(this.Y.Jd/1E4)/100;this.Y.Ee=this.Y.tg*this.Y.Xd;this.la.Ib=!1;this.la.dh=!1;this.la.Ki=a.autoStart;this.la.Oi=!1;this.la.Xe=!1;this.Y.Hf=this.Y.jf=0;this.Y.If=a.csStart;this.Y.hf=a.csInterval;this.Y.kf=a.csStop;this.pi=this.Je.bind(this);rb(this)}db(Lc);var Mc=["power","reset"];m=Lc.prototype;
function Lc(a,b){Ua.call(this,"CPU",a,Lc,1);var c=a.cycles||b,d=a.multiplier||1;this.Y={};this.Y.Jd=c;this.Y.Xd=d;this.Y.tg=Math.round(this.Y.Jd/1E4)/100;this.Y.Fe=this.Y.tg*this.Y.Xd;this.la.Ib=!1;this.la.dh=!1;this.la.Ki=a.autoStart;this.la.Oi=!1;this.la.Ye=!1;this.Y.If=this.Y.kf=0;this.Y.Jf=a.csStart;this.Y.jf=a.csInterval;this.Y.lf=a.csStop;this.pi=this.Ke.bind(this);rb(this)}db(Lc);var Mc=["power","reset"];m=Lc.prototype;
m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.ha=d;for(b=0;b<Mc.length;b++)(c=this.qa[Mc[b]])&&this.V.Qb(null,Mc[b],c);this.Tb=Eb(a,"FPU");this.N=Eb(a,"ChipSet");a=Nc(a,"autoStart");null!=a&&(this.la.Ki="true"==a?!0:"false"==a?!1:!!a);rb(this)};m.reset=function(){};m.save=function(){return null};m.restore=function(){return!1};
m.ic=function(a,b){if(!b){if(a&&this.restore){Oc(this);if(!this.restore(a))return!1;Pc(this)}else this.reset();this.ha?this.ha.gh():this.O("No debugger detected")}Qc(this);return!0};m.hc=function(a){return a?this.save():!0};function Sc(a){(a.la.Ki||!a.ha&&void 0===a.qa.run)&&a.Je(!0)}m.Qi=function(){return 0};function Pc(a){void 0===a.Y.If&&(a.Y.If=0);void 0===a.Y.hf&&(a.Y.hf=-1);void 0===a.Y.kf&&(a.Y.kf=-1);a.la.Xe=0<=a.Y.If&&0<a.Y.hf;a.la.Xe&&(a.Y.Hf=0,a.Y.jf=a.Y.If-a.uc)}
function Vc(a,b){if(a.la.Xe){var c=!1;a.Y.Hf=a.Y.Hf+a.Qi()|0;a.Y.jf-=b;0>=a.Y.jf&&(a.Y.jf+=a.Y.hf,c=!0);0<=a.Y.kf&&a.Y.kf<=Wc(a)&&(a.Y.hf=a.Y.kf=-1,Pc(a),a.Wb(),c=!0);c&&a.O(Wc(a)+" cycles: checksum="+r(a.Y.Hf))}}
m.Qb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.V)if(a=d.V,a.la.cc)a=!0;else{var b=null,c,h=gb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.la.$e);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.la.cc);c++);c==h.length&&(b=a);w("The "+b.type+" component ("+b.id+") is not "+(b.la.$e?"powered yet":"ready yet"+(b.rg?" (waiting for notification)":""))+".");a=!1}a&&(d.la.Ib?d.Wb(!0):d.Je(!0))};
a=!0;break;case "speed":this.qa[b]=c;a=!0;break;case "setSpeed":this.qa[b]=c,c.onclick=function(){Xc(d,d.Y.Xd<<1,!0)},c.textContent=this.Y.Ee.toFixed(2)+"Mhz",a=!0}return a};function Yc(a,b){if(a.la.Ib){var c=a.A-b;a.A-=c;a.eb-=c}}function Zc(a,b,c){a.uc+=b;c&&(a.eb=a.A=0)}
function $c(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Y.Xd&&a.Y.oe&&(d=a.Y.oe/a.Y.tg);a.Y.Xi=Math.round(1E3/30);a.Y.jm=Math.floor(a.Y.Jd/c*d);a.Y.qh=Math.floor(a.Y.Jd/30*d);a.Y.Zi=Math.floor(a.Y.Jd/60*d);a.Y.Yi=Math.floor(a.Y.Jd/2*d);b||(a.Y.lf=a.Y.qh,a.Y.Kf=a.Y.Zi,a.Y.Jf=a.Y.Yi);a.Y.rh=0}function Wc(a,b){var c=a.uc+a.Ub+a.eb-a.A;b&&1<a.Y.Xd&&a.Y.oe>a.Y.tg&&(c=Math.round(c/a.Y.Xd));return c}function Oc(a){a.Y.oe=0;a.uc=a.Ub=a.eb=a.A=0;Pc(a);Xc(a,1)}
function Xc(a,b,c){var d=!1;if(void 0!==b){.8>a.Y.oe/a.Y.Ee?b=1:d=!0;a.Y.Xd=b;b=a.Y.tg*a.Y.Xd;if(a.Y.Ee!=b){a.Y.Ee=b;b=a.Y.Ee.toFixed(2)+"Mhz";var e=a.qa.setSpeed;e&&(e.textContent=b);a.O("target speed: "+b)}c&&a.V&&a.V.yd()}Zc(a,a.Ub);a.Ub=0;a.Y.gf=pa();a.Y.Fe=0;$c(a);return d}
m.Je=function(a){if(pb(this,!0)){if(!this.la.Ib){Xc(this);this.V&&this.V.start(this.Y.gf,Wc(this));this.la.Ib=!0;this.la.dh=!0;this.N&&ad(this.N);var b=this.qa.run;b&&(b.textContent="Halt");this.V&&(this.V.qd(),a&&this.V.yd(!0))}this.Y.rh>=this.Y.Jd&&$c(this,!0);this.Y.Lf=0;this.Y.ug=pa();this.Y.Fe&&(a=this.Y.ug-this.Y.Fe,a>this.Y.Xi&&(this.Y.gf+=a,this.Y.gf>this.Y.ug&&(this.Y.gf=this.Y.ug)));try{do{var c=this.la.Xe?1:this.Y.jm;if(this.N){bd(this.N);var d=this.N;a=c;var e=d.W[0];if(e.Ae){var f=(Wc(d.F,
d.ka)-e.xd)/d.fb|0,g=cd(d,0)-f;6==e.mode&&(g-=f);var h=g*d.fb|0;6==e.mode&&(h>>=1);a>h&&(a=h)}var c=a,k=this.N;a=c;if(k.A&&k.A[11]&64){var l=k.ua-Wc(k.F,k.ka);0<l&&a>l&&(a=l)}c=a}try{this.uf(c)}catch(q){if("number"!=typeof q)throw q;}var n=this.eb-this.A;this.Ub+=n;this.Y.Lf+=n;Zc(this,0,!0);Vc(this,n);this.Y.Kf-=n;0>=this.Y.Kf&&(this.Y.Kf+=this.Y.Zi,this.V&&dd(this.V));this.Y.Jf-=n;0>=this.Y.Jf&&(this.Y.Jf+=this.Y.Yi,this.V&&this.V.qd());this.Y.lf-=n;if(0>=this.Y.lf){this.Y.lf+=this.Y.qh;break}}while(this.la.Ib)}catch(q){this.Wb();
Qc(this);this.V&&this.V.stop(pa(),Wc(this));pb(this,!1);ub(this,q.stack||q.message);return}c=setTimeout;d=this.pi;this.Y.Fe=pa();e=this.Y.Xi;this.Y.Lf&&(e=Math.round(e*this.Y.Lf/this.Y.qh));e-=this.Y.Fe-this.Y.ug;if(f=this.Y.Fe-this.Y.gf)this.Y.oe=Math.round(this.Ub/(10*f))/100,864E5<=f&&(this.uc=0,this.N&&bd(this.N,!0),Xc(this));if(0>e||this.Y.oe<this.Y.Ee)e=0;this.Y.rh+=this.Y.Lf;this.Y.Fe+=e;c(d,e)}else Qc(this),this.V&&this.V.stop(pa(),Wc(this))};m.uf=function(){return 0};
m.ic=function(a,b){if(!b){if(a&&this.restore){Oc(this);if(!this.restore(a))return!1;Pc(this)}else this.reset();this.ha?this.ha.gh():this.O("No debugger detected")}Qc(this);return!0};m.hc=function(a){return a?this.save():!0};function Sc(a){(a.la.Ki||!a.ha&&void 0===a.qa.run)&&a.Ke(!0)}m.Qi=function(){return 0};function Pc(a){void 0===a.Y.Jf&&(a.Y.Jf=0);void 0===a.Y.jf&&(a.Y.jf=-1);void 0===a.Y.lf&&(a.Y.lf=-1);a.la.Ye=0<=a.Y.Jf&&0<a.Y.jf;a.la.Ye&&(a.Y.If=0,a.Y.kf=a.Y.Jf-a.uc)}
function Vc(a,b){if(a.la.Ye){var c=!1;a.Y.If=a.Y.If+a.Qi()|0;a.Y.kf-=b;0>=a.Y.kf&&(a.Y.kf+=a.Y.jf,c=!0);0<=a.Y.lf&&a.Y.lf<=Wc(a)&&(a.Y.jf=a.Y.lf=-1,Pc(a),a.Wb(),c=!0);c&&a.O(Wc(a)+" cycles: checksum="+r(a.Y.If))}}
m.Qb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.V)if(a=d.V,a.la.cc)a=!0;else{var b=null,c,h=gb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.la.af);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.la.cc);c++);c==h.length&&(b=a);w("The "+b.type+" component ("+b.id+") is not "+(b.la.af?"powered yet":"ready yet"+(b.rg?" (waiting for notification)":""))+".");a=!1}a&&(d.la.Ib?d.Wb(!0):d.Ke(!0))};
a=!0;break;case "speed":this.qa[b]=c;a=!0;break;case "setSpeed":this.qa[b]=c,c.onclick=function(){Xc(d,d.Y.Xd<<1,!0)},c.textContent=this.Y.Fe.toFixed(2)+"Mhz",a=!0}return a};function Yc(a,b){if(a.la.Ib){var c=a.A-b;a.A-=c;a.eb-=c}}function Zc(a,b,c){a.uc+=b;c&&(a.eb=a.A=0)}
function $c(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Y.Xd&&a.Y.oe&&(d=a.Y.oe/a.Y.tg);a.Y.Xi=Math.round(1E3/30);a.Y.jm=Math.floor(a.Y.Jd/c*d);a.Y.qh=Math.floor(a.Y.Jd/30*d);a.Y.Zi=Math.floor(a.Y.Jd/60*d);a.Y.Yi=Math.floor(a.Y.Jd/2*d);b||(a.Y.mf=a.Y.qh,a.Y.Lf=a.Y.Zi,a.Y.Kf=a.Y.Yi);a.Y.rh=0}function Wc(a,b){var c=a.uc+a.Ub+a.eb-a.A;b&&1<a.Y.Xd&&a.Y.oe>a.Y.tg&&(c=Math.round(c/a.Y.Xd));return c}function Oc(a){a.Y.oe=0;a.uc=a.Ub=a.eb=a.A=0;Pc(a);Xc(a,1)}
function Xc(a,b,c){var d=!1;if(void 0!==b){.8>a.Y.oe/a.Y.Fe?b=1:d=!0;a.Y.Xd=b;b=a.Y.tg*a.Y.Xd;if(a.Y.Fe!=b){a.Y.Fe=b;b=a.Y.Fe.toFixed(2)+"Mhz";var e=a.qa.setSpeed;e&&(e.textContent=b);a.O("target speed: "+b)}c&&a.V&&a.V.yd()}Zc(a,a.Ub);a.Ub=0;a.Y.hf=pa();a.Y.Ge=0;$c(a);return d}
m.Ke=function(a){if(pb(this,!0)){if(!this.la.Ib){Xc(this);this.V&&this.V.start(this.Y.hf,Wc(this));this.la.Ib=!0;this.la.dh=!0;this.N&&ad(this.N);var b=this.qa.run;b&&(b.textContent="Halt");this.V&&(this.V.qd(),a&&this.V.yd(!0))}this.Y.rh>=this.Y.Jd&&$c(this,!0);this.Y.Mf=0;this.Y.ug=pa();this.Y.Ge&&(a=this.Y.ug-this.Y.Ge,a>this.Y.Xi&&(this.Y.hf+=a,this.Y.hf>this.Y.ug&&(this.Y.hf=this.Y.ug)));try{do{var c=this.la.Ye?1:this.Y.jm;if(this.N){bd(this.N);var d=this.N;a=c;var e=d.W[0];if(e.Be){var f=(Wc(d.F,
d.ka)-e.xd)/d.fb|0,g=cd(d,0)-f;6==e.mode&&(g-=f);var h=g*d.fb|0;6==e.mode&&(h>>=1);a>h&&(a=h)}var c=a,k=this.N;a=c;if(k.A&&k.A[11]&64){var l=k.ua-Wc(k.F,k.ka);0<l&&a>l&&(a=l)}c=a}try{this.vf(c)}catch(q){if("number"!=typeof q)throw q;}var n=this.eb-this.A;this.Ub+=n;this.Y.Mf+=n;Zc(this,0,!0);Vc(this,n);this.Y.Lf-=n;0>=this.Y.Lf&&(this.Y.Lf+=this.Y.Zi,this.V&&dd(this.V));this.Y.Kf-=n;0>=this.Y.Kf&&(this.Y.Kf+=this.Y.Yi,this.V&&this.V.qd());this.Y.mf-=n;if(0>=this.Y.mf){this.Y.mf+=this.Y.qh;break}}while(this.la.Ib)}catch(q){this.Wb();
Qc(this);this.V&&this.V.stop(pa(),Wc(this));pb(this,!1);ub(this,q.stack||q.message);return}c=setTimeout;d=this.pi;this.Y.Ge=pa();e=this.Y.Xi;this.Y.Mf&&(e=Math.round(e*this.Y.Mf/this.Y.qh));e-=this.Y.Ge-this.Y.ug;if(f=this.Y.Ge-this.Y.hf)this.Y.oe=Math.round(this.Ub/(10*f))/100,864E5<=f&&(this.uc=0,this.N&&bd(this.N,!0),Xc(this));if(0>e||this.Y.oe<this.Y.Fe)e=0;this.Y.rh+=this.Y.Mf;this.Y.Ge+=e;c(d,e)}else Qc(this),this.V&&this.V.stop(pa(),Wc(this))};m.vf=function(){return 0};
m.Wb=function(a){qb(this,!0);this.eb-=this.A;this.A=0;Zc(this,this.Ub);this.Ub=0;if(this.la.Ib){this.la.Ib=!1;this.N&&ad(this.N);var b=this.qa.run;b&&(b.textContent="Run")}this.la.Vd=a};function Qc(a,b){a.V&&(dd(a.V,b),a.V.qd())}
function ed(a,b,c,d){this.F=a;this.ha=a.ha;this.id=b;this.lc=c||"";this.Z=0;this.Ta=65535;this.Zb=this.Ta+1;this.Lb=this.Gc=this.ext=this.wb=this.type=this.Aa=0;this.Xb=-1;this.ba=this.Oc=2;this.R=this.Ba=65535;this.V=this.kh;this.ea=this.Di;this.qa=this.Fi;this.A={Z:-1,Aa:0,Ta:0,wb:0,type:0,ext:0,Xb:-1};1==this.id&&(this.Wf=0,this.C=null,this.bf=!1,this.N=Array(32),this.B=[]);fd(this,!0,d)}function gd(a,b){a.B.push(b);return[a.B.length,1]}m=ed.prototype;
function ed(a,b,c,d){this.F=a;this.ha=a.ha;this.id=b;this.lc=c||"";this.Z=0;this.Ta=65535;this.Zb=this.Ta+1;this.Lb=this.Gc=this.ext=this.wb=this.type=this.Aa=0;this.Xb=-1;this.ba=this.Oc=2;this.R=this.Ba=65535;this.V=this.kh;this.ea=this.Di;this.qa=this.Fi;this.A={Z:-1,Aa:0,Ta:0,wb:0,type:0,ext:0,Xb:-1};1==this.id&&(this.Xf=0,this.C=null,this.cf=!1,this.N=Array(32),this.B=[]);fd(this,!0,d)}function gd(a,b){a.B.push(b);return[a.B.length,1]}m=ed.prototype;
m.kh=function(a){this.Z=a&65535;return this.Aa=this.Z<<4};m.sg=function(a,b){var c,d,e=this.F;a&=65535;a&4?(c=e.Bc.Aa,d=c+e.Bc.Ta|0):(c=e.Ec,d=e.Ad);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,hd(this,c,a,b);6>this.id&&C.call(e,b&&3==this.id?10:13,a&65532)}return-1};m.fm=function(a){var b=this.F;a=b.Mc+(a<<2);var c=b.na(a);b.ca&=-769;return this.load(b.na(a+2))+c|0};
m.em=function(a){var b=this.F;a<<=3;var c=b.Mc+a|0;if(7<=(b.Sd-c|0))return this.C=!0,a=hd(this,c,a),-1!==a&&(a+=this.Wf),a;C.call(b,13,a|2);return-1};m.Di=function(a){return this.Aa+a|0};m.Fi=function(a){return this.Aa+a|0};m.Ci=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.ng()};m.Ik=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.ng()};m.ng=function(){C.call(this.F,13,0);return-1};m.Ei=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.og()};
m.em=function(a){var b=this.F;a<<=3;var c=b.Mc+a|0;if(7<=(b.Sd-c|0))return this.C=!0,a=hd(this,c,a),-1!==a&&(a+=this.Xf),a;C.call(b,13,a|2);return-1};m.Di=function(a){return this.Aa+a|0};m.Fi=function(a){return this.Aa+a|0};m.Ci=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.ng()};m.Ik=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.ng()};m.ng=function(){C.call(this.F,13,0);return-1};m.Ei=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.og()};
m.Jk=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.og()};m.og=function(){C.call(this.F,13,0);return-1};function id(a,b,c,d,e){a.Z=b;a.Aa=d;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=c;a.type=c&7936;a.ext=c>>16&192;a.Xb=(b&4?a.F.Bc.Aa:a.F.Ec)+(b&65528)|0;4>a.id&&fd(a,!0)}function jd(a,b,c){var d=a.F,e=d.na(b+2),f=d.na(b)|(e&255)<<16,d=d.na(b+4);a.Z=c;a.Aa=f;a.Ta=d;a.Zb=(d>>>0)+1;a.wb=e;a.type=e&7936;a.ext=0;a.Xb=b;4>a.id&&fd(a,!0)}
function hd(a,b,c,d){var e=a.F;if(!d&&c===a.A.Z)return a.Z=c,a.Aa=a.A.Aa,a.Ta=a.A.Ta,a.Zb=(a.A.Ta>>>0)+1,a.wb=a.A.wb,a.type=a.A.type,a.ext=a.A.ext,a.Xb=a.A.Xb,a.A.Z=-1,fd(a,!0,!0,!1),a.Aa;a.A.Z=-1;var f=e.na(b+0),g=e.na(b+4),h=g&7936,k=e.na(b+2)|(g&255)<<16,l=e.na(b+6),n=c&65528;if(80386<=e.ia){var q=f,k=k|(l&65280)<<16,f=f|(l&15)<<16;l&128&&(f=f<<12|4095)}switch(a.id){case 1:var p=a.C;a.bf=!1;if(p&&1==c&&a.B.length){var A=a.B[a.Wf-1];if(A&&!A())return-1}var F=c&3,v=(g&24576)>>13,A=-1,E,H;n||b>=e.Ec&&
b<e.Ad&&(h=0);if(6144<=h)null!=d?A=0:!1!==p?(h&1024?v<=a.Lb&&(A=0):F<=a.Lb&&v==a.Lb&&(A=0),A||(c=c&-4|a.Lb&3)):F>=a.Lb&&(F>a.Lb&&(A=D(e),kd(e,D(e),!0),G(e,A),a.bf=!0),A=0);else{if(256==h||2304==h)return ld(a,c,p)?a.Aa:-1;if(1024==h)A=2,H=0,F<a.Lb&&(F=a.Lb);else if(3072==h)A=4,H=0,F<a.Lb&&(F=a.Lb);else if(1536==h)A=2,H=148224;else if(3584==h)A=4,H=148224;else if(1792==h)A=2,H=147712;else if(3840==h)A=4,H=147712;else if(1280==h)return ld(a,k&65535,p)?a.Aa:-1}0<A&&!(g&32768)&&(A=0);if(0<A&&(n=a.Lb,E=
b==e.Mc+c,F<=v&&(!E||0<=e.rb||n<=v))){b=k&65535;h&2048&&(f=q|l<<16);l=h=0;d=b&3;if(d<n){if(-1===a.sg(b,!0))return-1;l=e.Sa.Aa;e.Sa.type&2048?(c=(d<<3)+4,k=4):(c=(d<<2)+2,k=2);h=e.na(l+c+k);if(!h)return C.call(e,10,h),-1;if(-1===e.ta.sg(h,!0))return-1;l=2==k?e.na(l+c):e.oa(l+c)}c=e.ca;e.ca&=~H;c&131072&&md(e,!0,!1);if(-1===a.sg(b,!1))return-1;nd(e,A);a.Wf=f;if(d<n){if(!0!==p)return-1;A=I(e);f=0;for(g&=31;g--;)a.N[f++]=od(e,e.ta,A),A+=2;p=e.ta.Z;g=I(e);kd(e,h,!0);G(e,l);c&131072&&(nd(e,4),ud(e,e.Pb.Z,
4,2),e.Pb.load(0),ud(e,e.Ob.Z,4,2),e.Ob.load(0),ud(e,e.vb.Z,4,2),vd(e,0),ud(e,e.Wa.Z,4,2),wd(e,0));ud(e,p,e.ba,2);for(J(e,g);f;)J(e,a.N[--f]);a.bf=!0}return a.Aa}if(0!=A)return C.call(e,13,c&65532|(E?2:0)),-1;if(!(g&32768))return C.call(e,11,c&65532|(E?2:0)),-1;break;case 2:if(n){if(4096>h||2048==(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,11,c&65532),-1}break;case 3:if(!n||4096>h||512!=(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,12,c&65532),-1;
function hd(a,b,c,d){var e=a.F;if(!d&&c===a.A.Z)return a.Z=c,a.Aa=a.A.Aa,a.Ta=a.A.Ta,a.Zb=(a.A.Ta>>>0)+1,a.wb=a.A.wb,a.type=a.A.type,a.ext=a.A.ext,a.Xb=a.A.Xb,a.A.Z=-1,fd(a,!0,!0,!1),a.Aa;a.A.Z=-1;var f=e.na(b+0),g=e.na(b+4),h=g&7936,k=e.na(b+2)|(g&255)<<16,l=e.na(b+6),n=c&65528;if(80386<=e.ia){var q=f,k=k|(l&65280)<<16,f=f|(l&15)<<16;l&128&&(f=f<<12|4095)}switch(a.id){case 1:var p=a.C;a.cf=!1;if(p&&1==c&&a.B.length){var A=a.B[a.Xf-1];if(A&&!A())return-1}var F=c&3,v=(g&24576)>>13,A=-1,E,H;n||b>=e.Ec&&
b<e.Ad&&(h=0);if(6144<=h)null!=d?A=0:!1!==p?(h&1024?v<=a.Lb&&(A=0):F<=a.Lb&&v==a.Lb&&(A=0),A||(c=c&-4|a.Lb&3)):F>=a.Lb&&(F>a.Lb&&(A=D(e),kd(e,D(e),!0),G(e,A),a.cf=!0),A=0);else{if(256==h||2304==h)return ld(a,c,p)?a.Aa:-1;if(1024==h)A=2,H=0,F<a.Lb&&(F=a.Lb);else if(3072==h)A=4,H=0,F<a.Lb&&(F=a.Lb);else if(1536==h)A=2,H=148224;else if(3584==h)A=4,H=148224;else if(1792==h)A=2,H=147712;else if(3840==h)A=4,H=147712;else if(1280==h)return ld(a,k&65535,p)?a.Aa:-1}0<A&&!(g&32768)&&(A=0);if(0<A&&(n=a.Lb,E=
b==e.Mc+c,F<=v&&(!E||0<=e.rb||n<=v))){b=k&65535;h&2048&&(f=q|l<<16);l=h=0;d=b&3;if(d<n){if(-1===a.sg(b,!0))return-1;l=e.Sa.Aa;e.Sa.type&2048?(c=(d<<3)+4,k=4):(c=(d<<2)+2,k=2);h=e.na(l+c+k);if(!h)return C.call(e,10,h),-1;if(-1===e.ta.sg(h,!0))return-1;l=2==k?e.na(l+c):e.oa(l+c)}c=e.ca;e.ca&=~H;c&131072&&md(e,!0,!1);if(-1===a.sg(b,!1))return-1;nd(e,A);a.Xf=f;if(d<n){if(!0!==p)return-1;A=I(e);f=0;for(g&=31;g--;)a.N[f++]=od(e,e.ta,A),A+=2;p=e.ta.Z;g=I(e);kd(e,h,!0);G(e,l);c&131072&&(nd(e,4),pd(e,e.Pb.Z,
4,2),e.Pb.load(0),pd(e,e.Ob.Z,4,2),e.Ob.load(0),pd(e,e.vb.Z,4,2),vd(e,0),pd(e,e.Wa.Z,4,2),wd(e,0));pd(e,p,e.ba,2);for(J(e,g);f;)J(e,a.N[--f]);a.cf=!0}return a.Aa}if(0!=A)return C.call(e,13,c&65532|(E?2:0)),-1;if(!(g&32768))return C.call(e,11,c&65532|(E?2:0)),-1;break;case 2:if(n){if(4096>h||2048==(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,11,c&65532),-1}break;case 3:if(!n||4096>h||512!=(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,12,c&65532),-1;
break;case 4:p=h&-513;if(!n||256!=p&&2304!=p)return C.call(e,13,c&65532),-1;2304==p&&(a.ti=k+e.na(k+100+2)|0,a.Ek=k+a.Ta|0);break;case 6:if(!(h&4096)&&768<h&&2304!=h&&2816!=h)return-1}d?(a.A.Z=c,a.A.Aa=k,a.A.Ta=f,a.A.wb=g,a.A.type=h,a.A.ext=l,a.A.Xb=b):(a.Z=c,a.Aa=k,a.Ta=f,a.Zb=(f>>>0)+1,a.wb=g,a.type=h,a.ext=l,a.Xb=b,fd(a,!0,!0,!1));return k}
function ld(a,b,c){var d=a.F,e=a.Lb,f=d.Sa.Z,g=d.Sa.Aa;if(!c){if(!(d.Sa.type&512))return C.call(d,13,b&65532),!1;d.ib(d.Sa.Xb+4,d.Sa.wb&=-513)}if(-1===d.Sa.load(b))return!1;var h=d.Sa.Aa;if(!1!==c){if(d.Sa.type&512)return C.call(d,13,b&65532),!1;d.ib(d.Sa.Xb+4,d.Sa.wb|=512)}d.Sa.type=d.Sa.type&-513|d.Sa.wb&512;256==d.Sa.type||768==d.Sa.type?(d.ib(g+14,K(d)),d.ib(g+16,xd(d)),d.ib(g+18,d.G),d.ib(g+20,d.I),d.ib(g+22,d.M),d.ib(g+24,d.H),d.ib(g+26,I(d)),d.ib(g+28,d.P),d.ib(g+30,d.K),d.ib(g+32,d.J),d.ib(g+
34,d.Wa.Z),d.ib(g+36,d.va.Z),d.ib(g+38,d.ta.Z),d.ib(g+40,d.vb.Z),d.Bc.load(d.na(h+42)),yd(d,d.na(h+16)|(c?16384:0)),d.G=d.na(h+18),d.I=d.na(h+20),d.M=d.na(h+22),d.H=d.na(h+24),d.P=d.na(h+28),d.K=d.na(h+30),d.J=d.na(h+32),d.Wa.load(d.na(h+34)),d.vb.load(d.na(h+40)),zd(d,d.na(h+14),d.na(h+36)),b=38,g=26,a.Lb<e&&(g=(a.Lb<<2)+2,b=g+2),kd(d,d.na(h+b),!0),G(d,d.na(h+g))):(d.mb(g+28,d.Od),d.mb(g+32,K(d)),d.mb(g+36,xd(d)),d.mb(g+40,d.G),d.mb(g+44,d.I),d.mb(g+48,d.M),d.mb(g+52,d.H),d.mb(g+56,I(d)),d.mb(g+
60,d.P),d.mb(g+64,d.K),d.mb(g+68,d.J),d.mb(g+72,d.Wa.Z),d.mb(g+76,d.va.Z),d.mb(g+80,d.ta.Z),d.mb(g+84,d.vb.Z),d.mb(g+88,d.Ob.Z),d.mb(g+92,d.Pb.Z),Ad.call(d,d.oa(h+28)),d.Bc.load(d.na(h+96)),yd(d,d.oa(h+36)|(c?16384:0)),d.G=d.oa(h+40),d.I=d.oa(h+44),d.M=d.oa(h+48),d.H=d.oa(h+52),d.P=d.oa(h+60),d.K=d.oa(h+64),d.J=d.oa(h+68),d.Wa.load(d.na(h+72)),d.vb.load(d.na(h+84)),d.Ob.load(d.na(h+88)),d.Pb.load(d.na(h+92)),zd(d,d.oa(h+32),d.na(h+76)),b=80,g=56,a.Lb<e&&(g=(a.Lb<<3)+4,b=g+4),kd(d,d.na(h+b),!0),G(d,
d.oa(h+g)));c&&d.ib(h+0,f);d.Ya|=8;return!0}m.save=function(){return[this.Z,this.Aa,this.Ta,this.wb,this.id,this.lc,this.Lb,this.Gc,this.Xb,this.Oc,this.Ba,this.ba,this.R,this.type,this.Zb]};m.restore=function(a){"number"==typeof a?this.load(a):(this.Z=a[0],this.Aa=a[1],this.Ta=a[2],this.wb=a[3],this.id=a[4],this.lc=a[5],this.Lb=a[6],this.Gc=a[7],this.Xb=a[8],this.Oc=a[9]||2,this.Ba=a[10]||65535,this.ba=a[11]||2,this.R=a[12]||65535,this.type=a[13]||this.wb&7936,this.Zb=a[14]||(this.Ta>>>0)+1)};
function fd(a,b,c,d){void 0===c&&(c=!!(a.F.Ya&1));a.cd=!1;if(c)if(a.load=a.sg,a.Wi=a.em,a.nc=a.Ci,a.oc=a.Ei,void 0===d&&(d=!!(a.F.ca&131072)),d)a.load=a.V,a.nc=a.ea,a.oc=a.qa,a.Lb=a.Gc=3,a.ba=a.Oc=2,a.R=a.Ba=65535,a.Ta=65535,a.Zb=a.Ta+1,a.Oc=a.ba,a.Xb=-1,a.bf=!1;else{if(!(a.Z&-4))a.nc=a.ng,a.oc=a.og;else if(a.type&4096){6144==(a.type&6656)&&(a.nc=a.ng);if(a.type&2048||!(a.type&512))a.oc=a.og;1024==(a.type&3072)&&(a.nc==a.Ci&&(a.nc=a.Ik),a.oc==a.Ei&&(a.oc=a.Jk),a.cd=!0);b&&6>a.id&&a.Z&-4&&-1!==a.Xb&&
(c=a.Xb+5,d=a.F.Qa(c),d&1||a.F.qc(c,d|1))}b&&(a.Lb=a.Z&3,a.Gc=(a.wb&24576)>>13,80386>a.F.ia||!(a.ext&64)?(a.ba=2,a.R=65535):(a.ba=4,a.R=-1),a.Oc=a.ba,a.Ba=a.R)}else a.load=a.kh,a.Wi=a.fm,a.nc=a.Di,a.oc=a.Fi,a.Lb=a.Gc=0,a.Xb=-1,a.bf=!1}
function Bd(a){this.ia=a.model||8088;var b=a.stepping;this.Uc=this.ia+(b?ca(b,16):0);b=0;switch(this.ia){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Lc.call(this,a,b);this.Yf=61442;this.Cc=1792;this.Vf=28672;this.Dd=4;this.ra=255;this.B=80286<=this.ia?xb:wb;this.X=Cd;this.bg=Dd;this.gg=Ed;this.hg=Fd;if(80186<=this.ia&&(this.X=Cd.slice(),this.bg=Dd.slice(),this.gg=Ed.slice(),this.ra=31,this.X[15]=Gd,this.X[96]=Hd,this.X[97]=Id,this.X[98]=Jd,this.X[99]=Gd,this.X[100]=Gd,this.X[101]=
Gd,this.X[102]=Gd,this.X[103]=Gd,this.X[104]=Kd,this.X[105]=Ld,this.X[106]=Md,this.X[107]=Nd,this.X[108]=Od,this.X[109]=Pd,this.X[110]=Qd,this.X[111]=Rd,this.X[192]=Sd,this.X[193]=Td,this.X[200]=Xd,this.X[201]=Yd,this.X[241]=Zd,this.bg[7]=$d,this.gg[7]=$d,80286<=this.ia)){this.Yf=2;this.Cc|=28672;this.Dd=0;this.X[15]=fe;this.tc=ge.slice();for(a=0;a<this.tc.length;a++)this.tc[a]||(this.tc[a]=he);this.X[84]=ie;this.X[99]=je;if(80386<=this.ia){var c;this.Vf=0;this.Cc|=196608;this.X[100]=ke;this.X[101]=
function fd(a,b,c,d){void 0===c&&(c=!!(a.F.Ya&1));a.cd=!1;if(c)if(a.load=a.sg,a.Wi=a.em,a.nc=a.Ci,a.oc=a.Ei,void 0===d&&(d=!!(a.F.ca&131072)),d)a.load=a.V,a.nc=a.ea,a.oc=a.qa,a.Lb=a.Gc=3,a.ba=a.Oc=2,a.R=a.Ba=65535,a.Ta=65535,a.Zb=a.Ta+1,a.Oc=a.ba,a.Xb=-1,a.cf=!1;else{if(!(a.Z&-4))a.nc=a.ng,a.oc=a.og;else if(a.type&4096){6144==(a.type&6656)&&(a.nc=a.ng);if(a.type&2048||!(a.type&512))a.oc=a.og;1024==(a.type&3072)&&(a.nc==a.Ci&&(a.nc=a.Ik),a.oc==a.Ei&&(a.oc=a.Jk),a.cd=!0);b&&6>a.id&&a.Z&-4&&-1!==a.Xb&&
(c=a.Xb+5,d=a.F.Qa(c),d&1||a.F.qc(c,d|1))}b&&(a.Lb=a.Z&3,a.Gc=(a.wb&24576)>>13,80386>a.F.ia||!(a.ext&64)?(a.ba=2,a.R=65535):(a.ba=4,a.R=-1),a.Oc=a.ba,a.Ba=a.R)}else a.load=a.kh,a.Wi=a.fm,a.nc=a.Di,a.oc=a.Fi,a.Lb=a.Gc=0,a.Xb=-1,a.cf=!1}
function Bd(a){this.ia=a.model||8088;var b=a.stepping;this.Uc=this.ia+(b?ca(b,16):0);b=0;switch(this.ia){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Lc.call(this,a,b);this.Yf=61442;this.Cc=1792;this.Wf=28672;this.Dd=4;this.ra=255;this.B=80286<=this.ia?xb:wb;this.X=Cd;this.bg=Dd;this.gg=Ed;this.hg=Fd;if(80186<=this.ia&&(this.X=Cd.slice(),this.bg=Dd.slice(),this.gg=Ed.slice(),this.ra=31,this.X[15]=Gd,this.X[96]=Hd,this.X[97]=Id,this.X[98]=Jd,this.X[99]=Gd,this.X[100]=Gd,this.X[101]=
Gd,this.X[102]=Gd,this.X[103]=Gd,this.X[104]=Kd,this.X[105]=Ld,this.X[106]=Md,this.X[107]=Nd,this.X[108]=Od,this.X[109]=Pd,this.X[110]=Qd,this.X[111]=Rd,this.X[192]=Sd,this.X[193]=Td,this.X[200]=Ud,this.X[201]=Yd,this.X[241]=Zd,this.bg[7]=$d,this.gg[7]=$d,80286<=this.ia)){this.Yf=2;this.Cc|=28672;this.Dd=0;this.X[15]=ae;this.tc=ge.slice();for(a=0;a<this.tc.length;a++)this.tc[a]||(this.tc[a]=he);this.X[84]=ie;this.X[99]=je;if(80386<=this.ia){var c;this.Wf=0;this.Cc|=196608;this.X[100]=ke;this.X[101]=
le;this.X[102]=me;this.X[103]=ne;for(c in M)this.tc[+c]=M[c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=oe,this.tc[167]=pe)}}this.Id=[];this.ke=[];this.me=0;Oc(this);this.la.Vd=this.la.Mi=!1;this.Og=0;this.ld=this.sa=[];this.La=this.Nb=this.Fa=this.Gd=this.jd=this.Gb=this.Db=0;qe(this)}db(Bd,Lc);function re(a,b,c,d){Gc((d?a.ld:a.sa)[b>>>a.La],c);d&&Vb(a)}
function se(a){var b;if(a.sa===a.ld){a.sa=Array(a.Gd);a.le=new B(null,0,0,5,null,a);Mb(a.le,a.ha);for(b=0;b<a.Gd;b++)a.sa[b]=a.le;a.kd=new B;a.ag=Array(512);a.ne=0}else for(var c=0;c<a.Hd.length;c++){b=a.Hd[c];var d=a.sa[b];512>a.ne&&(a.ag[a.ne++]=d);a.sa[b]=a.le}a.Hd=[]}function Vb(a){a.Ya&-2147483648&&se(a)}
function Fc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.ld[(a.Od+e&a.Gb)>>>a.La],g=f.Md(e);if(!(g&1))return d||te.call(a,b,!1,c),a.kd;if(!(g&4)&&3==a.pa)return d||te.call(a,b,!0,c),a.kd;var h=(b&4190208)>>>10,g=a.ld[((g&-4096)+h&a.Gb)>>>a.La],k=g.Md(h);if(!(k&1))return d||te.call(a,b,!1,c),a.kd;if(!(k&4)&&3==a.pa)return d||te.call(a,b,!0,c),a.kd;c=a.ld[((k&-4096)+(b&4095)&a.Gb)>>>a.La];if(d)return c;d=b>>>a.La;k=a.sa[d];b=b&-4096;var l;0<a.ne?(l=a.ag[--a.ne],l.gh(b)):l=new B(b,0,0,6);b=l;b.Cd=c;b.yb=f;b.A=
e>>2;b.zb=g;b.B=h>>2;vb&&ac&&c.da&&!c.controller&&!c.Se&&!c.Te?(b.Xa=c.Xa,b.ee=c.ee,b.da=c.da,Yb(b,Kc)):(b.ea=c?yc(32):0,b.W=c?yc(96):0,Yb(b,Ic));Mb(b,a.ha,k);a.sa[d]=b;a.Hd.push(d);return b}function ue(a){a.sa!==a.ld&&(a.sa=a.ld,a.le=null,a.Hd=null,a.kd=null)}m=Bd.prototype;m.reset=function(){this.la.Ib&&this.Wb();qe(this);Oc(this);this.la.ud=!1};
e>>2;b.zb=g;b.B=h>>2;vb&&ac&&c.da&&!c.controller&&!c.Te&&!c.Ue?(b.Xa=c.Xa,b.ee=c.ee,b.da=c.da,Yb(b,Kc)):(b.ea=c?yc(32):0,b.W=c?yc(96):0,Yb(b,Ic));Mb(b,a.ha,k);a.sa[d]=b;a.Hd.push(d);return b}function ue(a){a.sa!==a.ld&&(a.sa=a.ld,a.le=null,a.Hd=null,a.kd=null)}m=Bd.prototype;m.reset=function(){this.la.Ib&&this.Wb();qe(this);Oc(this);this.la.ud=!1};
function ve(a,b){var c;switch(b){case 0:c=a.G;break;case 1:c=a.I;break;case 2:c=a.M;break;case 3:c=a.H;break;case 4:c=I(a);break;case 5:c=a.P;break;case 6:c=a.K;break;case 7:c=a.J}return c}function we(a,b,c){switch(b){case 0:a.G=c;break;case 1:a.I=c;break;case 2:a.M=c;break;case 3:a.H=c;break;case 4:G(a,c);break;case 5:a.P=c;break;case 6:a.K=c;break;case 7:a.J=c}}
function qe(a){a.G=0;a.H=0;a.I=0;a.M=0;a.fb=0;a.P=0;a.K=0;a.J=0;a.bb=!1;a.ja=a.wa=0;a.aa=0;a.Ng=0;a.L=0;a.Ya=65520;a.Mc=0;a.Sd=1023;a.ca=a.Pa=0;a.Wc=a.td=a.Vc=a.Xc=0;a.rb=-1;a.bc=a.sb=-1;a.qe=a.U=-1;a.va=new ed(a,1,"CS");a.vb=new ed(a,2,"DS");a.Wa=new ed(a,2,"ES");a.ta=new ed(a,3,"SS");G(a,0);kd(a,0);if(80386<=a.ia){switch(a.Uc){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.Ya=16;a.ii=0;a.se=0;a.Od=0;a.Ja=[0,0,0,0,null,null,0,
0];a.Be=[null,null,null,null,null,null,0,0];a.Ob=new ed(a,2,"FS");a.Pb=new ed(a,2,"GS");ue(a)}a.pf=new ed(a,0,"NULL");a.ka=a.vb;a.Ka=a.ta;a.S=a.Ha=0;a.D=a.C=-1;a.$b=a.pf;a.ua=0;if(80286>a.ia)zd(a,0,65535);else{a.Ec=0;a.Ad=65535;a.Bc=new ed(a,5,"LDT",!0);a.Sa=new ed(a,4,"TSS",!0);a.Ea=new ed(a,6,"VER",!0);zd(a,65520,61440);var b,c=K(a);b=a.va;var d=-65536;80386>b.F.ia&&(d&=16777215);b=b.Aa=d;a.Ga=b+c|0;a.ff=(b>>>0)+(a.va.Ta>>>0)+1}yd(a,0);md(a)}
function xe(a){2==a.Oc?(a.dc=a.na,a.Na=ye,a.Za=ze,a.Jb=Ae,2==a.ba?(a.W=Be,a.fa=Ce,a.ya=De):(a.W=Ee,a.fa=Fe,a.ya=Ge)):(a.dc=a.oa,a.Na=Je,a.Za=Ke,a.Jb=Le,2==a.ba?(a.W=Me,a.fa=Ne,a.ya=Oe):(a.W=Pe,a.fa=Qe,a.ya=Re))}function nd(a,b){a.ba!=b&&(a.Ha|=1024,a.ba=b,a.R=2==b?65535:-1,af(a))}function af(a){2==a.ba?(a.Ia=32768,a.tb=a.na,a.rc=a.ib,2==a.Oc?(a.W=Be,a.fa=Ce,a.ya=De):(a.W=Me,a.fa=Ne,a.ya=Oe)):(a.Ia=-2147483648,a.tb=a.oa,a.rc=a.mb,2==a.Oc?(a.W=Ee,a.fa=Fe,a.ya=Ge):(a.W=Pe,a.fa=Qe,a.ya=Re))}
function bf(a){a.Oc=a.va.Oc;a.Ba=a.va.Ba;xe(a);a.ba=a.va.ba;a.R=a.va.R;af(a);a.Ha&=-3073}m.Qi=function(){var a=this.G+this.H+this.I+this.M+I(this)+this.P+this.K+this.J|0;return a=a+K(this)+this.va.Z+this.vb.Z+this.ta.Z+this.Wa.Z+xd(this)|0};function cf(a,b,c){void 0===a.Id[b]&&(a.Id[b]=[]);a.Id[b].push(c)}function df(a,b,c){void 0!==c&&(null==a.ke[b]&&a.me++,a.ke[b]=c)}function ef(a,b){var c=a.ke[b];null!=c&&(c(--a.me),delete a.ke[b])}
function qe(a){a.G=0;a.H=0;a.I=0;a.M=0;a.fb=0;a.P=0;a.K=0;a.J=0;a.bb=!1;a.ja=a.wa=0;a.aa=0;a.Ng=0;a.L=0;a.Ya=65520;a.Mc=0;a.Sd=1023;a.ca=a.Pa=0;a.Wc=a.td=a.Vc=a.Xc=0;a.rb=-1;a.bc=a.sb=-1;a.re=a.U=-1;a.va=new ed(a,1,"CS");a.vb=new ed(a,2,"DS");a.Wa=new ed(a,2,"ES");a.ta=new ed(a,3,"SS");G(a,0);kd(a,0);if(80386<=a.ia){switch(a.Uc){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.Ya=16;a.ii=0;a.te=0;a.Od=0;a.Ja=[0,0,0,0,null,null,0,
0];a.Ce=[null,null,null,null,null,null,0,0];a.Ob=new ed(a,2,"FS");a.Pb=new ed(a,2,"GS");ue(a)}a.qf=new ed(a,0,"NULL");a.ka=a.vb;a.Ka=a.ta;a.S=a.Ha=0;a.D=a.C=-1;a.$b=a.qf;a.ua=0;if(80286>a.ia)zd(a,0,65535);else{a.Ec=0;a.Ad=65535;a.Bc=new ed(a,5,"LDT",!0);a.Sa=new ed(a,4,"TSS",!0);a.Ea=new ed(a,6,"VER",!0);zd(a,65520,61440);var b,c=K(a);b=a.va;var d=-65536;80386>b.F.ia&&(d&=16777215);b=b.Aa=d;a.Ga=b+c|0;a.gf=(b>>>0)+(a.va.Ta>>>0)+1}yd(a,0);md(a)}
function xe(a){2==a.Oc?(a.dc=a.na,a.Na=ye,a.Za=ze,a.Jb=Ae,2==a.ba?(a.W=Be,a.fa=Ce,a.ya=De):(a.W=Ee,a.fa=Fe,a.ya=Ge)):(a.dc=a.oa,a.Na=He,a.Za=Ke,a.Jb=Le,2==a.ba?(a.W=Me,a.fa=Ne,a.ya=Oe):(a.W=Pe,a.fa=Qe,a.ya=Re))}function nd(a,b){a.ba!=b&&(a.Ha|=1024,a.ba=b,a.R=2==b?65535:-1,Se(a))}function Se(a){2==a.ba?(a.Ia=32768,a.tb=a.na,a.rc=a.ib,2==a.Oc?(a.W=Be,a.fa=Ce,a.ya=De):(a.W=Me,a.fa=Ne,a.ya=Oe)):(a.Ia=-2147483648,a.tb=a.oa,a.rc=a.mb,2==a.Oc?(a.W=Ee,a.fa=Fe,a.ya=Ge):(a.W=Pe,a.fa=Qe,a.ya=Re))}
function bf(a){a.Oc=a.va.Oc;a.Ba=a.va.Ba;xe(a);a.ba=a.va.ba;a.R=a.va.R;Se(a);a.Ha&=-3073}m.Qi=function(){var a=this.G+this.H+this.I+this.M+I(this)+this.P+this.K+this.J|0;return a=a+K(this)+this.va.Z+this.vb.Z+this.ta.Z+this.Wa.Z+xd(this)|0};function cf(a,b,c){void 0===a.Id[b]&&(a.Id[b]=[]);a.Id[b].push(c)}function df(a,b,c){void 0!==c&&(null==a.ke[b]&&a.me++,a.ke[b]=c)}function ef(a,b){var c=a.ke[b];null!=c&&(c(--a.me),delete a.ke[b])}
function ff(a,b){for(var c=a.Ja[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ja[e],g=g&~(d>>2&3);b?a.sa[g>>>a.La].Rd(g&a.Fa,f,a):Gc(a.sa[g>>>a.La],f)}c>>=2;d>>=4}}function Dc(a,b,c,d){if(!(a.S&8192)&&a.Ja[7]&255){c--;var e=a.Ja[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Ja[g]&&b<=a.Ja[g]+h){a.Ja[6]|=1<<g;a.ua|=2;break}}e>>=2;f>>=4}}}
function md(a,b,c){void 0===b&&(b=!!(a.Ya&1));void 0===c&&(c=!!(a.ca&131072));a.hg=b&&!c?gf:Fd;fd(a.va,!1,b,c);fd(a.vb,!1,b,c);fd(a.ta,!1,b,c);fd(a.Wa,!1,b,c);80386<=a.ia&&(fd(a.Ob,!1,b,c),fd(a.Pb,!1,b,c));bf(a)}
m.save=function(){var a=new hf(this);N(a,0,[this.G,this.H,this.I,this.M,I(this),this.P,this.K,this.J]);var b=K(this),c=this.va.save(),d=this.vb.save(),e=this.ta.save(),f=this.Wa.save(),g;null!=this.Ec?(g=[this.Ya,this.Ec,this.Ad,this.Mc,this.Sd,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ia&&(g.push(this.ii),g.push(this.se),g.push(this.Od),g.push(this.Ja),g.push(this.Be))):g=null;b=[b,c,d,e,f,g,xd(this)];80386<=this.ia&&(b.push(this.Ob.save()),b.push(this.Pb.save()));N(a,1,b);N(a,2,[this.ka.lc,
m.save=function(){var a=new hf(this);N(a,0,[this.G,this.H,this.I,this.M,I(this),this.P,this.K,this.J]);var b=K(this),c=this.va.save(),d=this.vb.save(),e=this.ta.save(),f=this.Wa.save(),g;null!=this.Ec?(g=[this.Ya,this.Ec,this.Ad,this.Mc,this.Sd,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ia&&(g.push(this.ii),g.push(this.te),g.push(this.Od),g.push(this.Ja),g.push(this.Ce))):g=null;b=[b,c,d,e,f,g,xd(this)];80386<=this.ia&&(b.push(this.Ob.save()),b.push(this.Pb.save()));N(a,1,b);N(a,2,[this.ka.lc,
this.Ka.lc,this.S,this.Ha,this.ua,this.D,this.C]);N(a,3,[0,this.uc,this.Y.Xd]);b=this.ea;c=!!(this.Ya&-2147483648);d=0;e=[];(f=!b.V&&b.wg==b.Gb)||Rb(b,!0);for(g=0;g<b.U;g++){var h=b.sa[g];if(c&&h.type!=$b||h.Va||h.Ni){e[d++]=g;var k=d++;a:if(h=h.save()){for(var l=0,n=0,q=[];l<h.length;){for(var p=h[l],A=l+1;A<h.length&&h[A]===p;)A++;q[n++]=A-l;q[n++]=p;l=A}if(q.length<h.length){h=q;break a}}e[k]=h}}f||Rb(b,!1);e[d]=f;N(a,4,e);return a.data()};
m.restore=function(a){var b=a[0];this.G=b[0];this.H=b[1];this.I=b[2];this.M=b[3];var c=b[4];this.P=b[5];this.K=b[6];this.J=b[7];b=a[1];this.va.restore(b[1]);this.vb.restore(b[2]);this.ta.restore(b[3]);this.Wa.restore(b[4]);var d=b[5];d&&d.length&&(this.Ya=d[0],this.Ec=d[1],this.Ad=d[2],this.Mc=d[3],this.Sd=d[4],this.Bc.restore(d[5]),this.Sa.restore(d[6]),this.Pa=d[7],80386<=this.ia&&(this.ii=d[8],this.se=d[9],this.Od=d[10],this.Ja=d[11],this.Be=d[12]),md(this));yd(this,b[6]);var d=!1,e;a:{e=this.ea;
m.restore=function(a){var b=a[0];this.G=b[0];this.H=b[1];this.I=b[2];this.M=b[3];var c=b[4];this.P=b[5];this.K=b[6];this.J=b[7];b=a[1];this.va.restore(b[1]);this.vb.restore(b[2]);this.ta.restore(b[3]);this.Wa.restore(b[4]);var d=b[5];d&&d.length&&(this.Ya=d[0],this.Ec=d[1],this.Ad=d[2],this.Mc=d[3],this.Sd=d[4],this.Bc.restore(d[5]),this.Sa.restore(d[6]),this.Pa=d[7],80386<=this.ia&&(this.ii=d[8],this.te=d[9],this.Od=d[10],this.Ja=d[11],this.Ce=d[12]),md(this));yd(this,b[6]);var d=!1,e;a:{e=this.ea;
var f=a[4],g;for(g=0;g<f.length-1;g+=2){var h=f[g],k=f[g+1];if(k&&k.length<e.ga){for(var l=0,n=Array(e.ga),q=0;q<k.length-1;)for(var p=k[q++],A=k[q++];p--;)n[l++]=A;k=n}l=e.sa[h];if(!l||!l.restore(k)){w("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&Rb(e,f[g]);e=!0}e&&(zd(this,b[0],this.va.Z),G(this,c),kd(this,this.ta.Z),80386<=this.ia&&(this.Ob.restore(b[7]),this.Pb.restore(b[8])),d=!0);b=a[2];this.ka=null!=b[0]&&jf(this,b[0])||this.vb;this.Ka=null!=b[1]&&jf(this,b[1])||this.ta;
this.S=b[2];this.Ha=b[3];this.ua=b[4];this.D=b[5];this.C=b[6];b=a[3];this.uc=b[1];Xc(this,b[2]);return d};function jf(a,b){switch(b){case "CS":return a.va;case "DS":return a.vb;case "SS":return a.ta;case "ES":return a.Wa;case "NULL":return a.pf;default:return[0,b,0,0,""]}}function kf(a,b){null!=zd(a,K(a),b)&&(a.S|=a.Dd)}function vd(a,b){-1!==a.vb.load(b)&&(a.S|=a.Dd)}
function kd(a,b,c){var d=I(a);-1!==a.ta.load(b)&&(G(a,d),a.ta.cd?(a.Kg=a.ta.Aa+a.ta.Ba|0,a.rd=a.ta.Aa+a.ta.Ta|0):(a.Kg=a.ta.Aa+a.ta.Ta|0,a.rd=a.ta.Aa),c||(a.S|=4))}function wd(a,b){-1!==a.Wa.load(b)&&(a.S|=a.Dd)}function K(a){return a.Ga-a.va.Aa|0}function O(a,b){a.Ga=a.va.Aa+(b&a.R)|0}function lf(a,b){a.Ga=b;a.ff=(a.va.Aa>>>0)+(a.va.Ta>>>0)+1;a.pa=a.va.Lb;bf(a)}function zd(a,b,c,d){var e=a.va;e.Wf=b;e.C=d;b=e.load(c);return-1!==b?(lf(a,b+(a.va.Wf&a.va.R)),a.va.bf):null}
function mf(a,b){var c=(a.Ga>>>0)+b;c>a.ff&&(8088>=a.ia||a.va.Ta==a.va.Ba?c=a.va.Aa+(c-a.ff&a.R):C.call(a,13,0));return c|0}function nf(a){a.Ga=a.qe}function I(a){return a.fb&~a.ta.Ba|a.ga-a.ta.Aa}function G(a,b){a.fb=b;a.ga=a.ta.Aa+(b&a.ta.Ba)|0}function of(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&pf(a),g&2&&qf(a),g&4&&rf(a),g&8&&sf(a),g&16&&tf(a),g&32&&uf(a))}f?(a.Wc=d,a.Vc=b):(a.Wc=b,a.Vc=d);a.td=c;a.Xc=d;a.resultType=e}
this.S=b[2];this.Ha=b[3];this.ua=b[4];this.D=b[5];this.C=b[6];b=a[3];this.uc=b[1];Xc(this,b[2]);return d};function jf(a,b){switch(b){case "CS":return a.va;case "DS":return a.vb;case "SS":return a.ta;case "ES":return a.Wa;case "NULL":return a.qf;default:return[0,b,0,0,""]}}function kf(a,b){null!=zd(a,K(a),b)&&(a.S|=a.Dd)}function vd(a,b){-1!==a.vb.load(b)&&(a.S|=a.Dd)}
function kd(a,b,c){var d=I(a);-1!==a.ta.load(b)&&(G(a,d),a.ta.cd?(a.Kg=a.ta.Aa+a.ta.Ba|0,a.rd=a.ta.Aa+a.ta.Ta|0):(a.Kg=a.ta.Aa+a.ta.Ta|0,a.rd=a.ta.Aa),c||(a.S|=4))}function wd(a,b){-1!==a.Wa.load(b)&&(a.S|=a.Dd)}function K(a){return a.Ga-a.va.Aa|0}function O(a,b){a.Ga=a.va.Aa+(b&a.R)|0}function lf(a,b){a.Ga=b;a.gf=(a.va.Aa>>>0)+(a.va.Ta>>>0)+1;a.pa=a.va.Lb;bf(a)}function zd(a,b,c,d){var e=a.va;e.Xf=b;e.C=d;b=e.load(c);return-1!==b?(lf(a,b+(a.va.Xf&a.va.R)),a.va.cf):null}
function mf(a,b){var c=(a.Ga>>>0)+b;c>a.gf&&(8088>=a.ia||a.va.Ta==a.va.Ba?c=a.va.Aa+(c-a.gf&a.R):C.call(a,13,0));return c|0}function nf(a){a.Ga=a.re}function I(a){return a.fb&~a.ta.Ba|a.ga-a.ta.Aa}function G(a,b){a.fb=b;a.ga=a.ta.Aa+(b&a.ta.Ba)|0}function of(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&pf(a),g&2&&qf(a),g&4&&rf(a),g&8&&sf(a),g&16&&tf(a),g&32&&uf(a))}f?(a.Wc=d,a.Vc=b):(a.Wc=b,a.Vc=d);a.td=c;a.Xc=d;a.resultType=e}
function vf(a,b,c,d,e){a.resultType=c|26;a.Xc=b;d?wf(a):xf(a);e?yf(a):zf(a);return b}function Af(a,b,c,d){c&d?wf(a):xf(a);(b^c)&d?yf(a):zf(a)}function Bf(a){return pf(a)?1:0}function pf(a){a.resultType&1&&(a.ca&=-2,(a.Wc^(a.Wc^a.td)&(a.td^a.Vc))&a.resultType&-2147450752&&(a.ca|=1),a.resultType&=-2);return a.ca&1}function qf(a){a.resultType&2&&(a.ca&=-5,38505>>((a.Xc^a.Xc>>4)&15)&1&&(a.ca|=4),a.resultType&=-3);return a.ca&4}
function rf(a){a.resultType&4&&(a.ca&=-17,(a.Vc^a.Wc^a.td)&16&&(a.ca|=16),a.resultType&=-5);return a.ca&16}function sf(a){a.resultType&8&&(a.ca&=-65,a.Xc&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.ca|=64),a.resultType&=-9);return a.ca&64}function tf(a){a.resultType&16&&(a.ca&=-129,a.Xc&a.resultType&-2147450752&&(a.ca|=128),a.resultType&=-17);return a.ca&128}
function uf(a){a.resultType&32&&(a.ca&=-2049,(a.Wc^a.Vc)&(a.td^a.Vc)&a.resultType&-2147450752&&(a.ca|=2048),a.resultType&=-33);return a.ca&2048}function xf(a){a.resultType&=-2;a.ca&=-2}function Cf(a){a.resultType&=-5;a.ca&=-17}function Df(a){a.resultType&=-9;a.ca&=-65}function zf(a){a.resultType&=-33;a.ca&=-2049}function wf(a){a.resultType&=-2;a.ca|=1}function Ef(a){a.resultType&=-5;a.ca|=16}function Ff(a){a.resultType&=-9;a.ca|=64}function yf(a){a.resultType&=-33;a.ca|=2048}
function xd(a){return a.ca&-2262|pf(a)|qf(a)|rf(a)|sf(a)|tf(a)|uf(a)}function Gf(a,b){b=b|a.Ya&1|65520;a.Ya=a.Ya&-65536|b&65535;a.Ya&1&&md(a,!0)}function yd(a,b,c){a.Ya&1||(b&=~a.Vf);void 0===c&&(c=a.pa);c?b=b&-12289|a.ca&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ca&512);a.resultType=128;a.ca=a.ca&~(a.Cc|2261)|b&(a.Cc|2261)|a.Yf;a.ca&256&&(a.ua|=2,a.S|=4)}
function xd(a){return a.ca&-2262|pf(a)|qf(a)|rf(a)|sf(a)|tf(a)|uf(a)}function Gf(a,b){b=b|a.Ya&1|65520;a.Ya=a.Ya&-65536|b&65535;a.Ya&1&&md(a,!0)}function yd(a,b,c){a.Ya&1||(b&=~a.Wf);void 0===c&&(c=a.pa);c?b=b&-12289|a.ca&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ca&512);a.resultType=128;a.ca=a.ca&~(a.Cc|2261)|b&(a.Cc|2261)|a.Yf;a.ca&256&&(a.ua|=2,a.S|=4)}
function Hf(a,b,c,d){var e=0;if(a.Ya&1&&(a.pa>a.Pa||a.ca&131072)&&a.Sa.ti)for(var f=a.Sa.ti+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.Sa.Ek&&!(a.Qa(f)&e);)e>>>=8,f++;return e?(z(a,256)&&y(a,"checkIOPM("+u(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),C.call(a,13,0),!1):!0}
m.Qb=function(a,b,c){var d=!1;switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.qa[b]=c;this.Og++;d=!0;break;default:d=this.parent.Qb.call(this,a,b,c)}return d};
function If(a,b,c,d){var e=(d?a.ld:a.sa)[(b&a.Db)>>>a.La];e&&5==e.type&&(e=Fc(a,b,!1,!0));if(e){var f=b&a.Fa;if(!c||1==c)return e.re(f,b);if(2==c)return f<a.Fa?e.cg(f,b):e.re(f,b)|If(a,b+1,1,d)<<8;if(4==c)return f<a.Fa-2?e.hi(f,b):f==a.Fa-1?e.cg(f,b)|If(a,b+2,2,d)<<16:e.re(f,b)|If(a,b+1,1,d)<<8|If(a,b+2,1,d)<<16|If(a,b+3,1,d)<<24}return null}m.Qa=function(a){return this.sa[(a&this.Db)>>>this.La].jc(a&this.Fa,a)};
m.na=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;this.A-=this.B.Dg;if(b<this.Fa)return this.sa[c].qf(b,a);b=this.sa[c].jc(b,a);this.S&4096||(b|=this.sa[c+1&this.jd].jc(0,a+1)<<8);return b};m.oa=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;if(b<this.Fa-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.sa[c].jc(b++,a++)<<f;if(this.S&4096)break;--g||(c=c+1&this.jd,b=0);f+=8}return d};m.qc=function(a,b){this.sa[(a&this.Db)>>>this.La].sc(a&this.Fa,b&255,a)};
m.ib=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Dg;c<this.Fa?this.sa[d].xf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.S&4096||this.sa[d&this.jd].sc(0,b>>8&255,a+1))};m.mb=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Dg;if(c<this.Fa-2)this.sa[d].wf(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.sa[d].sc(c++,b&255,a++);if(this.S&4096)break;--f||(d=d+1&this.jd,c=0);b>>>=8}};
function If(a,b,c,d){var e=(d?a.ld:a.sa)[(b&a.Db)>>>a.La];e&&5==e.type&&(e=Fc(a,b,!1,!0));if(e){var f=b&a.Fa;if(!c||1==c)return e.se(f,b);if(2==c)return f<a.Fa?e.cg(f,b):e.se(f,b)|If(a,b+1,1,d)<<8;if(4==c)return f<a.Fa-2?e.hi(f,b):f==a.Fa-1?e.cg(f,b)|If(a,b+2,2,d)<<16:e.se(f,b)|If(a,b+1,1,d)<<8|If(a,b+2,1,d)<<16|If(a,b+3,1,d)<<24}return null}m.Qa=function(a){return this.sa[(a&this.Db)>>>this.La].jc(a&this.Fa,a)};
m.na=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;this.A-=this.B.Dg;if(b<this.Fa)return this.sa[c].rf(b,a);b=this.sa[c].jc(b,a);this.S&4096||(b|=this.sa[c+1&this.jd].jc(0,a+1)<<8);return b};m.oa=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;if(b<this.Fa-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.sa[c].jc(b++,a++)<<f;if(this.S&4096)break;--g||(c=c+1&this.jd,b=0);f+=8}return d};m.qc=function(a,b){this.sa[(a&this.Db)>>>this.La].sc(a&this.Fa,b&255,a)};
m.ib=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Dg;c<this.Fa?this.sa[d].yf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.S&4096||this.sa[d&this.jd].sc(0,b>>8&255,a+1))};m.mb=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Dg;if(c<this.Fa-2)this.sa[d].xf(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.sa[d].sc(c++,b&255,a++);if(this.S&4096)break;--f||(d=d+1&this.jd,c=0);b>>>=8}};
function Jf(a,b,c){a.$b=b;a.Ca=c&a.Ba;a.D=b.nc(a.Ca,1);return a.S&1?0:a.Qa(a.D)}function Q(a,b){return Jf(a,a.ka,b)}function Kf(a,b){return Jf(a,a.Ka,b)}function Lf(a,b,c){a.$b=b;a.Ca=c&a.Ba;a.D=b.nc(a.Ca,a.ba);return a.S&1?0:a.tb(a.D)}function R(a,b){a.$b=a.ka;a.Ca=b&a.Ba;a.D=a.$b.nc(a.Ca,2);return a.S&1?0:a.na(a.D)}function Mf(a,b){a.$b=a.Ka;a.Ca=b&a.Ba;a.D=a.$b.nc(a.Ca,2);return a.S&1?0:a.na(a.D)}function S(a,b){a.$b=a.ka;a.Ca=b&a.Ba;a.D=a.$b.nc(a.Ca,4);return a.S&1?0:a.oa(a.D)}
function Nf(a,b){a.$b=a.Ka;a.Ca=b&a.Ba;a.D=a.$b.nc(a.Ca,4);return a.S&1?0:a.oa(a.D)}function Of(a,b){a.S&2||a.qc(a.$b.oc(a.Ca,1),b)}function Pf(a,b){a.S&2||a.ib(a.$b.oc(a.Ca,2),b)}function Qf(a,b){a.S&2||a.mb(a.$b.oc(a.Ca,4),b)}function od(a,b,c){return a.tb(b.nc(c,a.ba))}m.xa=function(){var a=mf(this,1),b=this.Qa(this.Ga);this.Ga=a;return b};function Rf(a){var b=mf(a,2),c=a.na(a.Ga);a.Ga=b;return c}function T(a){var b=mf(a,a.Oc),c=a.dc(a.Ga);a.Ga=b;return c}
m.Ma=function(){var a=mf(this,this.ba),b=this.tb(this.Ga);this.Ga=a;return b};m.T=function(){var a=mf(this,1),b=this.Qa(this.Ga)<<24>>24;this.Ga=a;return b};function D(a){var b=a.tb(a.ga);a.ga=a.ga+a.ba|0;var c=a.Kg-a.ga|0;0>c&&0<=(a.Kg^a.ga)&&(8088>=a.ia||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?G(a,a.ga-a.ta.Aa&a.ta.Ba):-1>c&&C.call(a,12,0));return b}
function ud(a,b,c,d){c=a.ga-c|0;0>(c-a.rd|0)&&0<=(a.rd^c)&&(8088>=a.ia||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?(G(a,c-a.ta.Aa&a.ta.Ba),c=a.ga):C.call(a,12,0));switch(d){case 1:a.qc(c,b);break;case 2:a.ib(c,b);break;case 4:a.mb(c,b)}a.ga=c}function J(a,b){var c=a.ga-a.ba|0;0>(c-a.rd|0)&&0<=(a.rd^c)&&(8088>=a.ia||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?(G(a,c-a.ta.Aa&a.ta.Ba),c=a.ga):C.call(a,12,0));a.rc(c,b);a.ga=c}
function pd(a,b,c,d){c=a.ga-c|0;0>(c-a.rd|0)&&0<=(a.rd^c)&&(8088>=a.ia||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?(G(a,c-a.ta.Aa&a.ta.Ba),c=a.ga):C.call(a,12,0));switch(d){case 1:a.qc(c,b);break;case 2:a.ib(c,b);break;case 4:a.mb(c,b)}a.ga=c}function J(a,b){var c=a.ga-a.ba|0;0>(c-a.rd|0)&&0<=(a.rd^c)&&(8088>=a.ia||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?(G(a,c-a.ta.Aa&a.ta.Ba),c=a.ga):C.call(a,12,0));a.rc(c,b);a.ga=c}
function Sf(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.ia)2<b.length&&(b=b.substr(1,2));else if("PS"==b||2<b.length)d=8;a.qa[b]&&(void 0===c&&(ub(a,"Value for "+b+" is invalid"),a.Wb()),d=!a.la.Ib||a.la.Oi?r(c,d):"--------".substr(0,d),a.qa[b].textContent!=d&&(a.qa[b].textContent=d))}
m.qd=function(a){if(this.Og&&(a||!this.la.Ib||this.la.Oi)){Sf(this,"EAX",this.G);Sf(this,"EBX",this.H);Sf(this,"ECX",this.I);Sf(this,"EDX",this.M);Sf(this,"ESP",I(this));Sf(this,"EBP",this.P);Sf(this,"ESI",this.K);Sf(this,"EDI",this.J);Sf(this,"CS",this.va.Z);Sf(this,"DS",this.vb.Z);Sf(this,"SS",this.ta.Z);Sf(this,"ES",this.Wa.Z);Sf(this,"EIP",K(this));var b=xd(this);Sf(this,"PS",b);Sf(this,"V",b&2048);Sf(this,"D",b&1024);Sf(this,"I",b&512);Sf(this,"T",b&256);Sf(this,"S",b&128);Sf(this,"Z",b&64);
Sf(this,"A",b&16);Sf(this,"P",b&4);Sf(this,"C",b&1);80386==this.ia&&(Sf(this,"FS",this.Ob.Z),Sf(this,"GS",this.Pb.Z),Sf(this,"CR0",this.Ya),Sf(this,"CR2",this.se),Sf(this,"CR3",this.Od))}if(b=this.qa.speed)b.textContent=this.la.Ib&&this.Y.oe?this.Y.oe.toFixed(2)+"Mhz":"Stopped";this.parent.qd.call(this,a)};
m.uf=function(a){this.la.Vd=!0;var b=this.la.Mi=this.ha&&Tf(this.ha),c=a?this.la.dh?0:1:-1;this.la.dh=!1;this.eb=this.A=a;this.N&&!a&&bd(this.N);a||z(this,1024)||(this.S|=4);do{var d=this.S&3312;if(d)this.Ha|=d;else if(this.qe=this.Ga,this.ka=this.vb,this.Ka=this.ta,this.D=this.C=-1,this.Ha&3072&&bf(this),this.Ha=this.S&256,this.ua){a:{if(!(this.S&4))for(var d=80286>this.ia?0:1,e=0;2>e;e++){switch(d){case 0:if(this.ua&1&&this.ca&512){var f=Uf(this.N);if(-1<=f&&(this.ua&=-2,0<=f)){this.ua&=-5;Vf.call(this,
Sf(this,"A",b&16);Sf(this,"P",b&4);Sf(this,"C",b&1);80386==this.ia&&(Sf(this,"FS",this.Ob.Z),Sf(this,"GS",this.Pb.Z),Sf(this,"CR0",this.Ya),Sf(this,"CR2",this.te),Sf(this,"CR3",this.Od))}if(b=this.qa.speed)b.textContent=this.la.Ib&&this.Y.oe?this.Y.oe.toFixed(2)+"Mhz":"Stopped";this.parent.qd.call(this,a)};
m.vf=function(a){this.la.Vd=!0;var b=this.la.Mi=this.ha&&Tf(this.ha),c=a?this.la.dh?0:1:-1;this.la.dh=!1;this.eb=this.A=a;this.N&&!a&&bd(this.N);a||z(this,1024)||(this.S|=4);do{var d=this.S&3312;if(d)this.Ha|=d;else if(this.re=this.Ga,this.ka=this.vb,this.Ka=this.ta,this.D=this.C=-1,this.Ha&3072&&bf(this),this.Ha=this.S&256,this.ua){a:{if(!(this.S&4))for(var d=80286>this.ia?0:1,e=0;2>e;e++){switch(d){case 0:if(this.ua&1&&this.ca&512){var f=Uf(this.N);if(-1<=f&&(this.ua&=-2,0<=f)){this.ua&=-5;Vf.call(this,
f);d=!0;break a}}break;case 1:if(this.ua&2){this.ua&=-3;80386<=this.ia&&(this.Ja[6]|=16384);Vf.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.O("interrupt dispatched");this.S=0;break}if(this.ua&4){this.S=this.A=0;break}}if(b){if(Wf(this.ha,this.Ga,c)){this.Wb();break}c=1}this.S=0;this.X[this.xa()].call(this)}while(0<this.A);return this.la.Vd?this.eb-this.A:void 0===this.la.Vd?0:-1};Qa(function(){for(var a=nb(document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Bd(d);mb(d,c)}});
function Xf(a){Ua.call(this,"FPU",a,Xf);this.ia=a.model||8087;(a=a.stepping)&&ca(a,16);this.V=new Float64Array(8);this.aa=new Int32Array(this.V.buffer);this.pa=new Float32Array(1);this.ua=new Int32Array(this.pa.buffer);this.X=new Float64Array(1);this.L=new Int32Array(this.X.buffer);this.ea=Array(3);this.fa=this.ga=-1;this.W=this.U=this.ja=this.A=0;this.ka=new Float64Array(1);this.ra=new Int32Array(this.ka.buffer);this.ra[0]=0;this.ra[1]=268402688;Yf(this)}db(Xf);m=Xf.prototype;
m.Ic=function(a,b,c){this.F=c;this.N=Eb(a,"ChipSet");rb(this)};m.ic=function(a,b){if(!b)if(!a||!this.restore)Yf(this);else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.save=function(){var a=new hf(this),b=[],c=0;b[c++]=this.kc;b[c++]=Zf(this);b[c++]=$f(this);for(var d=0;d<this.V.length;d++)b[c++]=this.V[d];N(a,0,b);return a.data()};
@ -166,11 +166,11 @@ function zh(a,b){a&1<<(b&(2==this.ba?15:31))?wf(this):xf(this);this.A-=-1===this
function Dh(a,b){if(-1===this.D)return zh.call(this,a,b);var c=this.ba<<3;if(b>=c||b<-c)a=Lf(this,this.$b,this.Ca+(b>>(2==this.ba?4:5))*this.ba);b=1<<(b&(2==this.ba?15:31));a&b?wf(this):xf(this);this.A-=6;this.S|=2;return a}function Eh(a,b){if(-1===this.D)return Ah.call(this,a,b);var c=this.ba<<3;if(b>=c||b<-c)a=Lf(this,this.$b,this.Ca+(b>>(2==this.ba?4:5))*this.ba);b=1<<(b&(2==this.ba?15:31));a&b?wf(this):xf(this);this.A-=8;return a^b}
function Fh(a,b){if(-1===this.D)return Bh.call(this,a,b);var c=this.ba<<3;if(b>=c||b<-c)a=Lf(this,this.$b,this.Ca+(b>>(2==this.ba?4:5))*this.ba);b=1<<(b&(2==this.ba?15:31));a&b?wf(this):xf(this);this.A-=8;return a&~b}function Gh(a,b){if(-1===this.D)return Ch.call(this,a,b);var c=this.ba<<3;if(b>=c||b<-c)a=Lf(this,this.$b,this.Ca+(b>>(2==this.ba?4:5))*this.ba);b=1<<(b&(2==this.ba?15:31));a&b?wf(this):xf(this);this.A-=8;return a|b}
function Hh(a,b){of(this,a,b,a-b|0,191,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.yh:this.B.Vb;this.S|=2;return a}function Ih(a,b){of(this,a,b,a-b|0,this.Ia|63,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.yh:this.B.Vb;this.S|=2;return a}
function Jh(a){if(this.Tb){var b=this.Tb,c=this.Ng,d=this.L,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=nh[c][f]){if(0>oh.indexOf(e)){var f=b.F,g=f.qe;8087==b.ia&&(f.Ha&16&&g++,f.Ha&32&&g++);b.fa=f.va.Z;b.W=g-f.va.Aa;-1!==f.D&&(b.ga=f.$b.Z,b.U=f.D-f.$b.Aa);b.ja=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.D?2:8;return a}function Kh(a){if(80186>this.ia)return Lh.call(this,a);C.call(this,13,0);return a}function $d(a){C.call(this,6);return a}
function Jh(a){if(this.Tb){var b=this.Tb,c=this.Ng,d=this.L,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=nh[c][f]){if(0>oh.indexOf(e)){var f=b.F,g=f.re;8087==b.ia&&(f.Ha&16&&g++,f.Ha&32&&g++);b.fa=f.va.Z;b.W=g-f.va.Aa;-1!==f.D&&(b.ga=f.$b.Z,b.U=f.D-f.$b.Aa);b.ja=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.D?2:8;return a}function Kh(a){if(80186>this.ia)return Lh.call(this,a);C.call(this,13,0);return a}function $d(a){C.call(this,6);return a}
function Lh(a){he.call(this);return a}function Mh(a,b){var c=Nh.call(this,this.T(),b);80386>this.ia&&(this.A-=12);return c}function Oh(a,b){var c;a=this.Ma();c=2==this.ba?Nh.call(this,a,b):Ph.call(this,a,b);80386>this.ia&&(this.A-=12);return c}function Qh(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);Rh.call(this,a,b);c&&(this.ja=~this.ja+1|0,this.wa=~this.wa+(this.ja?0:1)|0)}
function Nh(a,b){var c=(a<<16>>16)*(b<<16>>16)|0;32767<c||-32768>c?(wf(this),yf(this)):(xf(this),zf(this));this.A-=-1===this.D?9:12;return c&65535}function Ph(a,b){Qh.call(this,a,b);this.wa!=this.ja>>31?(wf(this),yf(this)):(xf(this),zf(this));this.A-=-1===this.D?9:12;return this.ja}function Sh(a,b){this.A-=14+(-1===this.D?0:2);Df(this);-1!==this.Ea.load(b)&&this.Ea.Gc>=this.pa&&this.Ea.Gc>=(b&3)&&(Ff(this),a=this.Ea.wb&-256,2<this.ba&&(a|=(this.Ea.ext&-65281)<<16));return a}
function Th(a,b){if(-1===this.D)return he.call(this),a;vd(this,this.na(this.D+this.ba));this.A-=this.B.nf;return b}function Uh(){this.A-=this.B.Ej;return this.D}function Vh(a,b){if(-1===this.D)return he.call(this),a;wd(this,this.na(this.D+this.ba));this.A-=this.B.nf;return b}function Wh(a,b){if(-1===this.D)return he.call(this),a;var c=this.na(this.D+this.ba);this.Ob.load(c);this.A-=this.B.nf;return b}
function Xh(a,b){if(-1===this.D)return he.call(this),a;var c=this.na(this.D+this.ba);this.Pb.load(c);this.A-=this.B.nf;return b}function Yh(a,b){this.A-=14+(-1===this.D?0:2);if(b&65528&&-1!==this.Ea.load(b)&&(7168==(this.Ea.wb&7168)||this.Ea.Gc>=this.pa)&&this.Ea.Gc>=(b&3))return Ff(this),this.Ea.Ta;Df(this);return a}function Zh(a,b){if(-1===this.D)return he.call(this),a;kd(this,this.na(this.D+this.ba));this.A-=this.B.nf;return b}
function Th(a,b){if(-1===this.D)return he.call(this),a;vd(this,this.na(this.D+this.ba));this.A-=this.B.of;return b}function Uh(){this.A-=this.B.Ej;return this.D}function Vh(a,b){if(-1===this.D)return he.call(this),a;wd(this,this.na(this.D+this.ba));this.A-=this.B.of;return b}function Wh(a,b){if(-1===this.D)return he.call(this),a;var c=this.na(this.D+this.ba);this.Ob.load(c);this.A-=this.B.of;return b}
function Xh(a,b){if(-1===this.D)return he.call(this),a;var c=this.na(this.D+this.ba);this.Pb.load(c);this.A-=this.B.of;return b}function Yh(a,b){this.A-=14+(-1===this.D?0:2);if(b&65528&&-1!==this.Ea.load(b)&&(7168==(this.Ea.wb&7168)||this.Ea.Gc>=this.pa)&&this.Ea.Gc>=(b&3))return Ff(this),this.Ea.Ta;Df(this);return a}function Zh(a,b){if(-1===this.D)return he.call(this),a;kd(this,this.na(this.D+this.ba));this.A-=this.B.of;return b}
function $h(a,b){this.A-=-1===this.C?-1===this.D?this.B.Lj:this.B.Kj:this.B.Ij;return b}function ai(a,b){switch(this.L>>3&7){case 4:this.aa=this.G;break;case 5:this.aa=this.I;break;case 6:this.aa=this.M;break;case 7:this.aa=this.H}return b}function bi(a,b){return b}
function ci(a,b){var c=this.L>>3&7;switch(c){case 0:this.aa=this.G;break;case 2:this.aa=this.M;break;case 3:this.aa=this.H;break;default:if(80286==this.ia||80386==this.ia&&4!=c&&5!=c){C.call(this,6);break}switch(c){case 1:this.aa=this.I;break;case 4:this.aa=I(this);break;case 5:this.aa=this.P;break;case 6:this.aa=this.K;break;case 7:this.aa=this.J}}return $h.call(this,0,b)}
function di(a,b){switch(this.L>>3&7){case 0:b=this.Wa.Z;break;case 1:b=this.va.Z;break;case 2:b=this.ta.Z;break;case 3:b=this.vb.Z;break;case 4:if(80386<=this.ia){b=this.Ob.Z;break}C.call(this,6);b=a;break;case 5:if(80386<=this.ia){b=this.Pb.Z;break}default:C.call(this,6),b=a}-1!==this.C&&nd(this,2);return $h.call(this,0,b)}
@ -178,18 +178,18 @@ function Rh(a,b){if(a&-65536||b&-65536){var c=b&65535,d=b>>>16,e=a&65535,f=a>>>1
function zi(a,b){var c=a-b-Bf(this)|0;of(this,a,b,c,191,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return c&255}function Ai(a,b){var c=a-b-Bf(this)|0;of(this,a,b,c,this.Ia|63,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return c&this.R}function Bi(){return uf(this)?1:0}function Ci(){return pf(this)?1:0}function Di(){return pf(this)?0:1}function Ei(){return sf(this)?1:0}function Fi(){return sf(this)?0:1}function Gi(){return pf(this)||sf(this)?1:0}
function Hi(){return pf(this)||sf(this)?0:1}function Ii(){return tf(this)?1:0}function Ji(){return tf(this)?0:1}function Ki(){return qf(this)?1:0}function Li(){return qf(this)?0:1}function Mi(){return!tf(this)!=!uf(this)?1:0}function Ni(){return!tf(this)!=!uf(this)?0:1}function Oi(){return sf(this)||!tf(this)!=!uf(this)?1:0}function Pi(){return sf(this)||!tf(this)!=!uf(this)?0:1}function Qi(a,b){return Ri.call(this,a,b,this.xa())}function Si(a,b){return Ti.call(this,a,b,this.xa())}
function Ui(a,b){return Ri.call(this,a,b,this.I&31)}function Vi(a,b){return Ti.call(this,a,b,this.I&31)}function Wi(a,b){return Xi.call(this,a,b,this.xa())}function Yi(a,b){return Zi.call(this,a,b,this.xa())}function $i(a,b){return Xi.call(this,a,b,this.I&31)}function aj(a,b){return Zi.call(this,a,b,this.I&31)}function bj(a,b){var c=a-b|0;of(this,a,b,c,191,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return c&255}
function cj(a,b){var c=a-b|0;of(this,a,b,c,this.Ia|63,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return c&this.R}function dj(a,b){vf(this,a&b,128);this.A-=-1===this.C?-1===this.D?this.B.$h:this.B.Sf:this.B.Sf;this.S|=2;return a}function ej(a,b){vf(this,a&b,this.Ia);this.A-=-1===this.C?-1===this.D?this.B.$h:this.B.Sf:this.B.Sf;this.S|=2;return a}function fj(a,b){var c=this.G&this.R,d=(1<<(this.I&31))-1;return a&~(d<<c)|(b&d)<<c}
function cj(a,b){var c=a-b|0;of(this,a,b,c,this.Ia|63,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return c&this.R}function dj(a,b){vf(this,a&b,128);this.A-=-1===this.C?-1===this.D?this.B.$h:this.B.Tf:this.B.Tf;this.S|=2;return a}function ej(a,b){vf(this,a&b,this.Ia);this.A-=-1===this.C?-1===this.D?this.B.$h:this.B.Tf:this.B.Tf;this.S|=2;return a}function fj(a,b){var c=this.G&this.R,d=(1<<(this.I&31))-1;return a&~(d<<c)|(b&d)<<c}
function gj(a,b){return b>>(this.G&this.R)&(1<<(this.I&31))-1&this.R}function hj(a,b){if(-1===this.D){switch(this.L&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.M=this.M&-256|a;break;case 3:this.H=this.H&-256|a;break;case 4:this.G=this.G&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.M=this.M&-65281|a<<8;break;case 7:this.H=this.H&-65281|a<<8}this.A-=this.B.bi}else this.C=this.D,Of(this,a),this.A-=this.B.ai;return b}
function ij(a,b){if(-1===this.D){switch(this.L&7){case 0:this.G=this.G&~this.R|a;break;case 1:this.I=this.I&~this.R|a;break;case 2:this.M=this.M&~this.R|a;break;case 3:this.H=this.H&~this.R|a;break;case 4:G(this,I(this)&~this.R|a);break;case 5:this.P=this.H&~this.R|a;break;case 6:this.K=this.K&~this.R|a;break;case 7:this.J=this.J&~this.R|a}this.A-=this.B.bi}else this.C=this.D,this.S&2||this.rc(this.$b.oc(this.Ca,this.ba),a),this.A-=this.B.ai;return b}
function jj(a,b){var c=a^b;vf(this,c,128);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return c}function kj(a,b){this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return vf(this,a^b,this.Ia)&this.R}function lj(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function mj(a){var b=a-1|0;of(this,a,1,b,this.Ia|62,!0);this.A-=2;return a&~this.R|b&this.R}
function nj(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1;c=[c>>>0,0];for(a=[a>>>0,b>>>0];0<lj(a,c);){var f=b=c;b[0]+=f[0];b[1]+=f[1];4294967295<b[0]&&(b[0]>>>=0,b[1]++);e+=e}do 0<=lj(a,c)&&(b=a,f=c,b[0]-=f[0],b[1]-=f[1],0>b[0]&&(b[0]>>>=0,b[1]--),d+=e),b=c,b[0]>>>=1,b[1]&1&&(b[0]=(b[0]|2147483648)>>>0),b[1]>>>=1,e/=2;while(1<=e);this.ja=d;this.wa=a[0];return!0}function oj(a){var b=a+1|0;of(this,a,1,b,this.Ia|62);this.A-=2;return a&~this.R|b&this.R}
function pj(a){this.Ya=a;md(this);this.Ya&-2147483648?se(this):ue(this)}function Ad(a){this.Od=a;Vb(this)}function qj(a){this.S|=1;this.Za.call(this,a);this.A-=-1===this.D?4:5}function Ri(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a<<c-1;a=(d<<1|b>>>16-c)&65535;vf(this,a,32768,d&32768)}return a}function Ti(a,b,c){if(c){var d=a<<c-1;a=d<<1|b>>>32-c;vf(this,a,-2147483648,d&-2147483648)}return a}
function Xi(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a>>>c-1;a=(d>>>1|b<<16-c)&65535;vf(this,a,32768,d&1)}return a}function Zi(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;vf(this,a,-2147483648,d&1)}return a}function rj(){this.A-=-1===this.D?2:this.B.Yj;return 1}function sj(){var a=this.I&255;this.A-=(-1===this.D?this.B.Th:this.B.Sh)+(a<<this.B.Uh);return a}function tj(){var a=this.xa();this.A-=(-1===this.D?this.B.Th:this.B.Sh)+(a<<this.B.Uh);return a}function uj(){return null}
function vj(){return this.aa}function wj(a,b){this.bc=this.va.Z;this.sb=this.ta.Z;this.U=this.ga;var c=K(this),d=this.ba;null!=zd(this,a,b,!0)&&(ud(this,this.bc,d,2),ud(this,c,d,d));this.bc=this.sb=this.U=-1}function xj(a,b,c){this.A-=this.B.wj+(c||0);c=xd(this);var d=this.va.Z,e=K(this);a=this.va.Wi(a);-1!==a&&(J(this,c),J(this,d),J(this,e),null!=b&&J(this,b),this.rb=-1,lf(this,a))}
function vj(){return this.aa}function wj(a,b){this.bc=this.va.Z;this.sb=this.ta.Z;this.U=this.ga;var c=K(this),d=this.ba;null!=zd(this,a,b,!0)&&(pd(this,this.bc,d,2),pd(this,c,d,d));this.bc=this.sb=this.U=-1}function xj(a,b,c){this.A-=this.B.wj+(c||0);c=xd(this);var d=this.va.Z,e=K(this);a=this.va.Wi(a);-1!==a&&(J(this,c),J(this,d),J(this,e),null!=b&&J(this,b),this.rb=-1,lf(this,a))}
function yj(a){this.sb=this.ta.Z;this.U=this.ga;var b=D(this),c=D(this);a&&G(this,I(this)+a);zd(this,b,c,!1)&&(a&&G(this,I(this)+a),zj.call(this,this.vb),zj.call(this,this.Wa),80386<=this.ia&&(zj.call(this,this.Ob),zj.call(this,this.Pb)));2==a&&this.me&&ef(this,this.Ga);this.sb=this.U=-1}function Aj(){8086==this.ia?(this.rb=-1,xj.call(this,0,null,2)):C.call(this,0,null,2)}function Vf(a,b){this.rb=a;void 0===b&&(b=11);xj.call(this,a,null,b)}
function C(a,b,c,d){var e=!1;this.la.Vd?80186<=this.ia&&(e=!0,0>this.rb?(-1!=this.bc&&(this.bc!==this.va.Z&&(this.va.Lb=this.bc&3,kf(this,this.bc)),this.bc=-1),this.qe!==this.Ga&&lf(this,this.qe),-1!=this.sb&&(this.sb!==this.ta.Z&&kd(this,this.sb),this.sb=-1),-1!==this.U&&(this.U!==this.ga&&G(this,this.fb&~this.ta.Ba|this.U-this.ta.Aa),this.U=-1)):8!=this.rb?(b=0,a=8):(b=0,a=-1,qe(this),e=d=!1)):lf(this,this.qe);var f=a,g=b,h=32,k=If(this,this.Ga);204!=k||this.Sd||(d=!1);this.ca&131072&&(6==f&&99==
k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.Ga&&1048575>=this.Ga&&(d=!1);z(this,h|-2147483648)&&(d=!0);if(z(this,h)||d){var l=this.la.Ib,f="Fault "+t(f)+(null!=g?" ("+u(g)+")":"")+" on opcode "+t(k);d&&l&&(f+=" (blocked)");this.ha?(y(this,f,d||h,!0),d&&(d=l,this.ha.Wb())):(this.Oa(f),this.Wb())}if(d&&e)throw-1;if(e)throw this.rb=a,xj.call(this,a,b,c),this.qe=this.Ga,this.S=1==a?this.S|8192:this.S|4096,a;}
function te(a,b,c){this.se=a;a=0;b&&(a|=1);c&&(a|=2);3==this.pa&&(a|=4);C.call(this,14,a)}function zj(a){var b=a.wb&7680;a.Z&65528&&(6144==b||7168==b||7168>b&&a.Gc<this.pa&&a.Gc<(a.Z&3))&&a.load(0)}
function C(a,b,c,d){var e=!1;this.la.Vd?80186<=this.ia&&(e=!0,0>this.rb?(-1!=this.bc&&(this.bc!==this.va.Z&&(this.va.Lb=this.bc&3,kf(this,this.bc)),this.bc=-1),this.re!==this.Ga&&lf(this,this.re),-1!=this.sb&&(this.sb!==this.ta.Z&&kd(this,this.sb),this.sb=-1),-1!==this.U&&(this.U!==this.ga&&G(this,this.fb&~this.ta.Ba|this.U-this.ta.Aa),this.U=-1)):8!=this.rb?(b=0,a=8):(b=0,a=-1,qe(this),e=d=!1)):lf(this,this.re);var f=a,g=b,h=32,k=If(this,this.Ga);204!=k||this.Sd||(d=!1);this.ca&131072&&(6==f&&99==
k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.Ga&&1048575>=this.Ga&&(d=!1);z(this,h|-2147483648)&&(d=!0);if(z(this,h)||d){var l=this.la.Ib,f="Fault "+t(f)+(null!=g?" ("+u(g)+")":"")+" on opcode "+t(k);d&&l&&(f+=" (blocked)");this.ha?(y(this,f,d||h,!0),d&&(d=l,this.ha.Wb())):(this.Oa(f),this.Wb())}if(d&&e)throw-1;if(e)throw this.rb=a,xj.call(this,a,b,c),this.re=this.Ga,this.S=1==a?this.S|8192:this.S|4096,a;}
function te(a,b,c){this.te=a;a=0;b&&(a|=1);c&&(a|=2);3==this.pa&&(a|=4);C.call(this,14,a)}function zj(a){var b=a.wb&7680;a.Z&65528&&(6144==b||7168==b||7168>b&&a.Gc<this.pa&&a.Gc<(a.Z&3))&&a.load(0)}
function ye(a){var b,c;switch((this.L=this.xa())&199){case 0:c=Q(this,this.H+this.K);this.A-=this.B.ed;break;case 1:c=Q(this,this.H+this.J);this.A-=this.B.fd;break;case 2:c=Kf(this,this.P+this.K);this.A-=this.B.fd;break;case 3:c=Kf(this,this.P+this.J);this.A-=this.B.ed;break;case 4:c=Q(this,this.K);this.A-=this.B.Jc;break;case 5:c=Q(this,this.J);this.A-=this.B.Jc;break;case 6:c=Q(this,T(this));this.A-=this.B.Kd;break;case 7:c=Q(this,this.H);this.A-=this.B.Jc;break;case 64:c=Q(this,this.H+this.K+this.T());
this.A-=this.B.ec;break;case 65:c=Q(this,this.H+this.J+this.T());this.A-=this.B.fc;break;case 66:c=Kf(this,this.P+this.K+this.T());this.A-=this.B.fc;break;case 67:c=Kf(this,this.P+this.J+this.T());this.A-=this.B.ec;break;case 68:c=Q(this,this.K+this.T());this.A-=this.B.hb;break;case 69:c=Q(this,this.J+this.T());this.A-=this.B.hb;break;case 70:c=Kf(this,this.P+this.T());this.A-=this.B.hb;break;case 71:c=Q(this,this.H+this.T());this.A-=this.B.hb;break;case 128:c=Q(this,this.H+this.K+T(this));this.A-=
this.B.ec;break;case 129:c=Q(this,this.H+this.J+T(this));this.A-=this.B.fc;break;case 130:c=Kf(this,this.P+this.K+T(this));this.A-=this.B.fc;break;case 131:c=Kf(this,this.P+this.J+T(this));this.A-=this.B.ec;break;case 132:c=Q(this,this.K+T(this));this.A-=this.B.hb;break;case 133:c=Q(this,this.J+T(this));this.A-=this.B.hb;break;case 134:c=Kf(this,this.P+T(this));this.A-=this.B.hb;break;case 135:c=Q(this,this.H+T(this));this.A-=this.B.hb;break;case 192:c=this.G&255;break;case 193:c=this.I&255;break;
@ -237,7 +237,7 @@ case 65:c=S(this,this.H+this.J+this.T());this.C=this.D;break;case 66:c=Nf(this,t
this.C=this.D;break;case 130:c=Nf(this,this.P+this.K+T(this));this.C=this.D;break;case 131:c=Nf(this,this.P+this.J+T(this));this.C=this.D;break;case 132:c=S(this,this.K+T(this));this.C=this.D;break;case 133:c=S(this,this.J+T(this));this.C=this.D;break;case 134:c=Nf(this,this.P+T(this));this.C=this.D;break;case 135:c=S(this,this.H+T(this));this.C=this.D;break;case 192:c=this.G;break;case 193:c=this.I;break;case 194:c=this.M;break;case 195:c=this.H;break;case 196:c=I(this);break;case 197:c=this.P;break;
case 198:c=this.K;break;case 199:c=this.J}c=a[this.L>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Qf(this,c);this.A-=this.B.ed;break;case 1:case 2:Qf(this,c);this.A-=this.B.fd;break;case 4:case 5:case 7:Qf(this,c);this.A-=this.B.Jc;break;case 6:Qf(this,c);this.A-=this.B.Kd;break;case 64:case 67:case 128:case 131:Qf(this,c);this.A-=this.B.ec;break;case 65:case 66:case 129:case 130:Qf(this,c);this.A-=this.B.fc;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Qf(this,
c);this.A-=this.B.hb;break;case 192:this.G=c;break;case 193:this.I=c;break;case 194:this.M=c;break;case 195:this.H=c;break;case 196:G(this,c);break;case 197:this.P=c;break;case 198:this.K=c;break;case 199:this.J=c}}
function Je(a){var b,c;switch((this.L=this.xa())&199){case 0:c=Q(this,this.G);break;case 1:c=Q(this,this.I);break;case 2:c=Q(this,this.M);break;case 3:c=Q(this,this.H);break;case 4:c=Q(this,Bj.call(this,0));break;case 5:c=Q(this,T(this));break;case 6:c=Q(this,this.K);break;case 7:c=Q(this,this.J);break;case 64:c=Q(this,this.G+this.T());break;case 65:c=Q(this,this.I+this.T());break;case 66:c=Q(this,this.M+this.T());break;case 67:c=Q(this,this.H+this.T());break;case 68:c=Q(this,Bj.call(this,1)+this.T());
function He(a){var b,c;switch((this.L=this.xa())&199){case 0:c=Q(this,this.G);break;case 1:c=Q(this,this.I);break;case 2:c=Q(this,this.M);break;case 3:c=Q(this,this.H);break;case 4:c=Q(this,Bj.call(this,0));break;case 5:c=Q(this,T(this));break;case 6:c=Q(this,this.K);break;case 7:c=Q(this,this.J);break;case 64:c=Q(this,this.G+this.T());break;case 65:c=Q(this,this.I+this.T());break;case 66:c=Q(this,this.M+this.T());break;case 67:c=Q(this,this.H+this.T());break;case 68:c=Q(this,Bj.call(this,1)+this.T());
break;case 69:c=Kf(this,this.P+this.T());break;case 70:c=Q(this,this.K+this.T());break;case 71:c=Q(this,this.J+this.T());break;case 128:c=Q(this,this.G+T(this));break;case 129:c=Q(this,this.I+T(this));break;case 130:c=Q(this,this.M+T(this));break;case 131:c=Q(this,this.H+T(this));break;case 132:c=Q(this,Bj.call(this,2)+T(this));break;case 133:c=Kf(this,this.P+T(this));break;case 134:c=Q(this,this.K+T(this));break;case 135:c=Q(this,this.J+T(this));break;case 192:c=this.G&255;break;case 193:c=this.I&
255;break;case 194:c=this.M&255;break;case 195:c=this.H&255;break;case 196:c=this.G>>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.M>>8&255;break;case 199:c=this.H>>8&255;break;default:c=0}var d=this.L>>3&7;switch(d){case 0:b=this.G&255;break;case 1:b=this.I&255;break;case 2:b=this.M&255;break;case 3:b=this.H&255;break;case 4:b=this.G>>8&255;break;case 5:b=this.I>>8&255;break;case 6:b=this.M>>8&255;break;case 7:b=this.H>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.G=
this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.M=this.M&-256|a;break;case 3:this.H=this.H&-256|a;break;case 4:this.G=this.G&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.M=this.M&-65281|a<<8;break;case 7:this.H=this.H&-65281|a<<8}}
@ -276,9 +276,9 @@ this.C=this.D;break;case 66:c=S(this,this.M+this.T());this.C=this.D;break;case 6
this.D;break;case 131:c=S(this,this.H+T(this));this.C=this.D;break;case 132:c=S(this,Bj.call(this,2)+T(this));this.C=this.D;break;case 133:c=Nf(this,this.P+T(this));this.C=this.D;break;case 134:c=S(this,this.K+T(this));this.C=this.D;break;case 135:c=S(this,this.J+T(this));this.C=this.D;break;case 192:c=this.G;break;case 193:c=this.I;break;case 194:c=this.M;break;case 195:c=this.H;break;case 196:c=I(this);break;case 197:c=this.P;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}c=a[this.L>>
3&7].call(this,c,b.call(this));switch(d){case 192:this.G=c;break;case 193:this.I=c;break;case 194:this.M=c;break;case 195:this.H=c;break;case 196:G(this,c);break;case 197:this.P=c;break;case 198:this.K=c;break;case 199:this.J=c;break;default:Qf(this,c)}}
function Bj(a){var b=this.xa(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.G;break;case 1:d=this.I;break;case 2:d=this.M;break;case 3:d=this.H;break;case 4:d=0;break;case 5:d=this.P;break;case 6:d=this.K;break;case 7:d=this.J}switch(b&7){case 0:e=this.G;break;case 1:e=this.I;break;case 2:e=this.M;break;case 3:e=this.H;break;case 4:e=I(this);this.ka=this.Ka;break;case 5:a?(e=this.P,this.ka=this.Ka):e=T(this);break;case 6:e=this.K;break;case 7:e=this.J}return(d<<c)+e|0}
function fe(){this.tc[this.xa()].call(this)}function ie(){J(this,I(this)&this.R);this.A-=this.B.Sc}function Hd(){this.U=this.ga;var a=I(this)&this.R;J(this,this.G&this.R);J(this,this.I&this.R);J(this,this.M&this.R);J(this,this.H&this.R);J(this,a);J(this,this.P&this.R);J(this,this.K&this.R);J(this,this.J&this.R);this.A-=this.B.Sj;this.U=-1}
function ae(){this.tc[this.xa()].call(this)}function ie(){J(this,I(this)&this.R);this.A-=this.B.Sc}function Hd(){this.U=this.ga;var a=I(this)&this.R;J(this,this.G&this.R);J(this,this.I&this.R);J(this,this.M&this.R);J(this,this.H&this.R);J(this,a);J(this,this.P&this.R);J(this,this.K&this.R);J(this,this.J&this.R);this.A-=this.B.Sj;this.U=-1}
function Id(){this.U=this.ga;this.J=this.J&~this.R|D(this);this.K=this.K&~this.R|D(this);this.P=this.P&~this.R|D(this);G(this,I(this)+this.ba);this.H=this.H&~this.R|D(this);this.M=this.M&~this.R|D(this);this.I=this.I&~this.R|D(this);this.G=this.G&~this.R|D(this);this.A-=this.B.Qj;this.U=-1}function Jd(){this.W.call(this,wh)}function je(){!(this.Ya&1)||this.ca&131072?C.call(this,6):this.fa.call(this,vh)}function ke(){this.S|=20;this.ka=this.Ka=this.Ob;this.A-=this.B.od}
function le(){this.S|=20;this.ka=this.Ka=this.Pb;this.A-=this.B.od}function me(){this.S|=1024;this.Ha&1024||(this.ba^=6,this.R^=-65536,af(this));this.A-=this.B.od}function ne(){this.S|=2048;this.Ha&2048||(this.Oc^=6,this.Ba^=-65536,xe(this));this.A-=this.B.od}function Kd(){J(this,this.Ma());this.A-=this.B.Sc}function Ld(){this.W.call(this,Oh)}function Md(){J(this,this.T());this.A-=this.B.Sc}function Nd(){this.W.call(this,Mh)}
function le(){this.S|=20;this.ka=this.Ka=this.Pb;this.A-=this.B.od}function me(){this.S|=1024;this.Ha&1024||(this.ba^=6,this.R^=-65536,Se(this));this.A-=this.B.od}function ne(){this.S|=2048;this.Ha&2048||(this.Oc^=6,this.Ba^=-65536,xe(this));this.A-=this.B.od}function Kd(){J(this,this.Ma());this.A-=this.B.Sc}function Ld(){this.W.call(this,Oh)}function Md(){J(this,this.T());this.A-=this.B.Sc}function Nd(){this.W.call(this,Mh)}
function Od(){var a=1,b=0,c=this.Ba,d=5;this.Ha&192&&(a=this.I&c,b=1,this.Ha&256&&(d=4));if(a--){var e=this.M&65535;Hf(this,e,1,!0)&&(e=ic(this.ea,e,1,this.Ga-b-1),this.qc(this.Wa.oc(this.J&c,1),e),this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(nf(this),this.S|=256))}}
function Pd(){var a=1,b=0,c=this.Ba,d=5;this.Ha&192&&(a=this.I&c,b=1,this.Ha&256&&(d=4));if(a--){var e=this.M&65535;Hf(this,e,this.ba,!0)&&(e=ic(this.ea,e,this.ba,this.Ga-b-1),this.rc(this.Wa.oc(this.J&c,this.ba),e),this.J=this.J&~c|this.J+(this.ca&1024?-this.ba:this.ba)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(nf(this),this.S|=256))}}
function Qd(){var a=1,b=0,c=this.Ba,d=5;this.Ha&192&&(a=this.I&c,b=1,this.Ha&256&&(d=4));if(a--){var e=this.M&65535;if(Hf(this,e,1,!1)){var f=this.Qa(this.vb.nc(this.K&c,1));mc(this.ea,e,1,f,this.Ga-b-1);this.K=this.K&~c|this.K+(this.ca&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(nf(this),this.S|=256)}}}
@ -287,21 +287,21 @@ function Dj(){var a=this.T();uf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.
function Ij(){var a=this.T();pf(this)||sf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab}function Jj(){var a=this.T();pf(this)||sf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)}function Kj(){var a=this.T();tf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab}function Lj(){var a=this.T();tf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)}function Mj(){var a=this.T();qf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab}
function Nj(){var a=this.T();qf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)}function Oj(){var a=this.T();!tf(this)!=!uf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab}function Pj(){var a=this.T();!tf(this)==!uf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab}function Qj(){var a=this.T();sf(this)||!tf(this)!=!uf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab}
function Rj(){var a=this.T();sf(this)||!tf(this)!=!uf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)}function Sj(){this.Jb.call(this,Tj,this.xa);this.A-=-1===this.C?1:this.B.Cg}function Uj(){this.S|=1;this.Za.call(this,$h)}function Vj(){this.S|=1;this.fa.call(this,$h)}function Wj(){this.Na.call(this,$h)}function Xj(){this.W.call(this,$h)}function Sd(){this.Jb.call(this,Yj,tj)}function Td(){this.ya.call(this,2==this.ba?Zj:ak,tj)}
function bk(){var a=Rf(this),b=D(this);O(this,b);a&&G(this,I(this)+a);this.A-=this.B.Xj}function ck(){var a=D(this);O(this,a);this.A-=this.B.Uj}function Xd(){this.U=this.ga;var a=Rf(this),b=this.xa()&31;this.A-=11;J(this,this.P);var c=I(this)&this.R;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.P=this.P&~this.R|this.P-this.ba&this.R,J(this,od(this,this.ta,this.P&this.R));J(this,c)}this.P=this.P&~this.R|c;G(this,I(this)&~this.ta.Ba|I(this)-a&this.ta.Ba);this.U=-1}
function bk(){var a=Rf(this),b=D(this);O(this,b);a&&G(this,I(this)+a);this.A-=this.B.Xj}function ck(){var a=D(this);O(this,a);this.A-=this.B.Uj}function Ud(){this.U=this.ga;var a=Rf(this),b=this.xa()&31;this.A-=11;J(this,this.P);var c=I(this)&this.R;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.P=this.P&~this.R|this.P-this.ba&this.R,J(this,od(this,this.ta,this.P&this.R));J(this,c)}this.P=this.P&~this.R|c;G(this,I(this)&~this.ta.Ba|I(this)-a&this.ta.Ba);this.U=-1}
function Yd(){this.U=this.ga;G(this,I(this)&~this.ta.Ba|this.P&this.ta.Ba);this.P=this.P&~this.R|D(this)&this.R;this.A-=5;this.U=-1}function dk(){yj.call(this,Rf(this));this.A-=this.B.Wj}function ek(){yj.call(this,0);this.A-=this.B.Vj}function fk(a){this.Ng=a;this.W.call(this,Jh)}function gk(){this.S|=36;this.A-=this.B.od}function Zd(){he.call(this)}function Gd(){C.call(this,6)}
function he(){O(this,this.qe-this.va.Aa);ub(this,"Undefined opcode "+t(this.Qa(this.Ga))+" at "+("0x"+r(this.Ga)));this.Wb()}
var Cd=[function(){this.Za.call(this,rh)},function(){this.fa.call(this,sh)},function(){this.Na.call(this,rh)},function(){this.W.call(this,sh)},function(){this.G=this.G&-256|rh.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|sh.call(this,this.G&this.R,this.Ma());this.A--},function(){ud(this,this.Wa.Z,this.ba,2);this.A-=this.B.He},function(){this.U=this.ga;wd(this,D(this));this.A-=this.B.zc;this.U=-1},function(){this.Za.call(this,ei)},function(){this.fa.call(this,fi)},function(){this.Na.call(this,
ei)},function(){this.W.call(this,fi)},function(){this.G=this.G&-256|ei.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|fi.call(this,this.G&this.R,this.Ma());this.A--},function(){ud(this,this.va.Z,this.ba,2);this.A-=this.B.He},function(){kf(this,D(this));this.A-=this.B.zc},function(){this.Za.call(this,ph)},function(){this.fa.call(this,qh)},function(){this.Na.call(this,ph)},function(){this.W.call(this,qh)},function(){this.G=this.G&-256|ph.call(this,this.G&255,this.xa());this.A--},
function(){this.G=this.G&~this.R|qh.call(this,this.G&this.R,this.Ma());this.A--},function(){ud(this,this.ta.Z,this.ba,2);this.A-=this.B.He},function(){this.U=this.ga;kd(this,D(this));this.A-=this.B.zc;this.U=-1},function(){this.Za.call(this,zi)},function(){this.fa.call(this,Ai)},function(){this.Na.call(this,zi)},function(){this.W.call(this,Ai)},function(){this.G=this.G&-256|zi.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|Ai.call(this,this.G&this.R,this.Ma());this.A--},
function(){ud(this,this.vb.Z,this.ba,2);this.A-=this.B.He},function(){this.U=this.ga;vd(this,D(this));this.A-=this.B.zc;this.U=-1},function(){this.Za.call(this,th)},function(){this.fa.call(this,uh)},function(){this.Na.call(this,th)},function(){this.W.call(this,uh)},function(){this.G=this.G&-256|th.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|uh.call(this,this.G&this.R,this.Ma());this.A--},function(){this.S|=20;this.ka=this.Ka=this.Wa;this.A-=this.B.od},function(){var a=
this.G&255,b=rf(this),c=pf(this);if(9<(a&15)||b)a+=6,b=16;if(159<a||c)a+=96,c=1;a&=255;this.G=this.G&-256|a;vf(this,a,128);c?wf(this):xf(this);b?Ef(this):Cf(this);this.A-=this.B.Ge},function(){this.Za.call(this,bj)},function(){this.fa.call(this,cj)},function(){this.Na.call(this,bj)},function(){this.W.call(this,cj)},function(){this.G=this.G&-256|bj.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|cj.call(this,this.G&this.R,this.Ma());this.A--},function(){this.S|=20;this.ka=
this.Ka=this.va;this.A-=this.B.od},function(){var a=this.G&255,b=rf(this),c=pf(this);if(9<(a&15)||b)a-=6,b=16;if(159<a||c)a-=96,c=1;a&=255;this.G=this.G&-256|a;vf(this,a,128);c?wf(this):xf(this);b?Ef(this):Cf(this);this.A-=this.B.Ge},function(){this.Za.call(this,jj)},function(){this.fa.call(this,kj)},function(){this.Na.call(this,jj)},function(){this.W.call(this,kj)},function(){this.G=this.G&-256|jj.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|kj.call(this,this.G&this.R,
this.Ma());this.A--},function(){this.S|=20;this.ka=this.Ka=this.ta;this.A-=this.B.od},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||rf(this)?(c+=6,80286<=this.ia&&255<c&&d++,d++,a=b=1):a=b=0;this.G=this.G&-65536|(d<<8|c)&65295;a?wf(this):xf(this);b?Ef(this):Cf(this);this.A-=this.B.Ge},function(){this.Za.call(this,Hh)},function(){this.fa.call(this,Ih)},function(){this.Na.call(this,Hh)},function(){this.W.call(this,Ih)},function(){Hh.call(this,this.G&255,this.xa());this.A--},function(){Ih.call(this,
this.G&this.R,this.Ma());this.A--},function(){this.S|=20;this.ka=this.Ka=this.vb;this.A-=this.B.od},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||rf(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.G=this.G&-65536|d<<8|c;a?wf(this):xf(this);b?Ef(this):Cf(this);this.A-=this.B.Ge},function(){this.G=oj.call(this,this.G)},function(){this.I=oj.call(this,this.I)},function(){this.M=oj.call(this,this.M)},function(){this.H=oj.call(this,this.H)},function(){G(this,oj.call(this,I(this)))},function(){this.P=
function he(){O(this,this.re-this.va.Aa);ub(this,"Undefined opcode "+t(this.Qa(this.Ga))+" at "+("0x"+r(this.Ga)));this.Wb()}
var Cd=[function(){this.Za.call(this,rh)},function(){this.fa.call(this,sh)},function(){this.Na.call(this,rh)},function(){this.W.call(this,sh)},function(){this.G=this.G&-256|rh.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|sh.call(this,this.G&this.R,this.Ma());this.A--},function(){pd(this,this.Wa.Z,this.ba,2);this.A-=this.B.Ie},function(){this.U=this.ga;wd(this,D(this));this.A-=this.B.zc;this.U=-1},function(){this.Za.call(this,ei)},function(){this.fa.call(this,fi)},function(){this.Na.call(this,
ei)},function(){this.W.call(this,fi)},function(){this.G=this.G&-256|ei.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|fi.call(this,this.G&this.R,this.Ma());this.A--},function(){pd(this,this.va.Z,this.ba,2);this.A-=this.B.Ie},function(){kf(this,D(this));this.A-=this.B.zc},function(){this.Za.call(this,ph)},function(){this.fa.call(this,qh)},function(){this.Na.call(this,ph)},function(){this.W.call(this,qh)},function(){this.G=this.G&-256|ph.call(this,this.G&255,this.xa());this.A--},
function(){this.G=this.G&~this.R|qh.call(this,this.G&this.R,this.Ma());this.A--},function(){pd(this,this.ta.Z,this.ba,2);this.A-=this.B.Ie},function(){this.U=this.ga;kd(this,D(this));this.A-=this.B.zc;this.U=-1},function(){this.Za.call(this,zi)},function(){this.fa.call(this,Ai)},function(){this.Na.call(this,zi)},function(){this.W.call(this,Ai)},function(){this.G=this.G&-256|zi.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|Ai.call(this,this.G&this.R,this.Ma());this.A--},
function(){pd(this,this.vb.Z,this.ba,2);this.A-=this.B.Ie},function(){this.U=this.ga;vd(this,D(this));this.A-=this.B.zc;this.U=-1},function(){this.Za.call(this,th)},function(){this.fa.call(this,uh)},function(){this.Na.call(this,th)},function(){this.W.call(this,uh)},function(){this.G=this.G&-256|th.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|uh.call(this,this.G&this.R,this.Ma());this.A--},function(){this.S|=20;this.ka=this.Ka=this.Wa;this.A-=this.B.od},function(){var a=
this.G&255,b=rf(this),c=pf(this);if(9<(a&15)||b)a+=6,b=16;if(159<a||c)a+=96,c=1;a&=255;this.G=this.G&-256|a;vf(this,a,128);c?wf(this):xf(this);b?Ef(this):Cf(this);this.A-=this.B.He},function(){this.Za.call(this,bj)},function(){this.fa.call(this,cj)},function(){this.Na.call(this,bj)},function(){this.W.call(this,cj)},function(){this.G=this.G&-256|bj.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|cj.call(this,this.G&this.R,this.Ma());this.A--},function(){this.S|=20;this.ka=
this.Ka=this.va;this.A-=this.B.od},function(){var a=this.G&255,b=rf(this),c=pf(this);if(9<(a&15)||b)a-=6,b=16;if(159<a||c)a-=96,c=1;a&=255;this.G=this.G&-256|a;vf(this,a,128);c?wf(this):xf(this);b?Ef(this):Cf(this);this.A-=this.B.He},function(){this.Za.call(this,jj)},function(){this.fa.call(this,kj)},function(){this.Na.call(this,jj)},function(){this.W.call(this,kj)},function(){this.G=this.G&-256|jj.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|kj.call(this,this.G&this.R,
this.Ma());this.A--},function(){this.S|=20;this.ka=this.Ka=this.ta;this.A-=this.B.od},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||rf(this)?(c+=6,80286<=this.ia&&255<c&&d++,d++,a=b=1):a=b=0;this.G=this.G&-65536|(d<<8|c)&65295;a?wf(this):xf(this);b?Ef(this):Cf(this);this.A-=this.B.He},function(){this.Za.call(this,Hh)},function(){this.fa.call(this,Ih)},function(){this.Na.call(this,Hh)},function(){this.W.call(this,Ih)},function(){Hh.call(this,this.G&255,this.xa());this.A--},function(){Ih.call(this,
this.G&this.R,this.Ma());this.A--},function(){this.S|=20;this.ka=this.Ka=this.vb;this.A-=this.B.od},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||rf(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.G=this.G&-65536|d<<8|c;a?wf(this):xf(this);b?Ef(this):Cf(this);this.A-=this.B.He},function(){this.G=oj.call(this,this.G)},function(){this.I=oj.call(this,this.I)},function(){this.M=oj.call(this,this.M)},function(){this.H=oj.call(this,this.H)},function(){G(this,oj.call(this,I(this)))},function(){this.P=
oj.call(this,this.P)},function(){this.K=oj.call(this,this.K)},function(){this.J=oj.call(this,this.J)},function(){this.G=mj.call(this,this.G)},function(){this.I=mj.call(this,this.I)},function(){this.M=mj.call(this,this.M)},function(){this.H=mj.call(this,this.H)},function(){G(this,mj.call(this,I(this)))},function(){this.P=mj.call(this,this.P)},function(){this.K=mj.call(this,this.K)},function(){this.J=mj.call(this,this.J)},function(){J(this,this.G&this.R);this.A-=this.B.Sc},function(){J(this,this.I&
this.R);this.A-=this.B.Sc},function(){J(this,this.M&this.R);this.A-=this.B.Sc},function(){J(this,this.H&this.R);this.A-=this.B.Sc},function(){J(this,I(this)-2&65535);this.A-=this.B.Sc},function(){J(this,this.P&this.R);this.A-=this.B.Sc},function(){J(this,this.K&this.R);this.A-=this.B.Sc},function(){J(this,this.J&this.R);this.A-=this.B.Sc},function(){this.G=this.G&~this.R|D(this);this.A-=this.B.zc},function(){this.I=this.I&~this.R|D(this);this.A-=this.B.zc},function(){this.M=this.M&~this.R|D(this);
this.A-=this.B.zc},function(){this.H=this.H&~this.R|D(this);this.A-=this.B.zc},function(){G(this,I(this)&~this.R|D(this));this.A-=this.B.zc},function(){this.P=this.P&~this.R|D(this);this.A-=this.B.zc},function(){this.K=this.K&~this.R|D(this);this.A-=this.B.zc},function(){this.J=this.J&~this.R|D(this);this.A-=this.B.zc},Cj,Dj,Ej,Fj,Gj,Hj,Ij,Jj,Kj,Lj,Mj,Nj,Oj,Pj,Qj,Rj,Cj,Dj,Ej,Fj,Gj,Hj,Ij,Jj,Kj,Lj,Mj,Nj,Oj,Pj,Qj,Rj,Sj,function(){this.ya.call(this,hk,this.Ma);this.A-=-1===this.C?1:this.B.Cg},Sj,function(){this.ya.call(this,
hk,this.T);this.A-=-1===this.C?1:this.B.Cg},function(){this.Za.call(this,dj)},function(){this.fa.call(this,ej)},function(){this.Na.call(this,hj)},function(){this.W.call(this,ij)},Uj,Vj,Wj,Xj,function(){this.S|=1;this.fa.call(this,di)},function(){this.S|=1;this.ka=this.Ka=this.pf;this.W.call(this,Uh)},function(){var a;this.W.call(this,ci);switch(this.L>>3&7){case 0:a=this.G;this.G=this.aa;wd(this,a);break;case 1:a=this.I;this.I=this.aa;kf(this,a);break;case 2:a=this.M;this.M=this.aa;kd(this,a);break;
hk,this.T);this.A-=-1===this.C?1:this.B.Cg},function(){this.Za.call(this,dj)},function(){this.fa.call(this,ej)},function(){this.Na.call(this,hj)},function(){this.W.call(this,ij)},Uj,Vj,Wj,Xj,function(){this.S|=1;this.fa.call(this,di)},function(){this.S|=1;this.ka=this.Ka=this.qf;this.W.call(this,Uh)},function(){var a;this.W.call(this,ci);switch(this.L>>3&7){case 0:a=this.G;this.G=this.aa;wd(this,a);break;case 1:a=this.I;this.I=this.aa;kf(this,a);break;case 2:a=this.M;this.M=this.aa;kd(this,a);break;
case 3:a=this.H;this.H=this.aa;vd(this,a);break;case 4:a=I(this);G(this,this.aa);80386<=this.ia?this.Ob.load(a):wd(this,a);break;case 5:a=this.P;this.P=this.aa;80386<=this.ia?this.Pb.load(a):kf(this,a);break;case 6:a=this.K;this.K=this.aa;kd(this,a);break;case 7:a=this.J,this.J=this.aa,vd(this,a)}},function(){this.S|=1;this.U=this.ga;this.aa=D(this);this.ya.call(this,ik,vj);this.U=-1},function(){this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.I&this.R;this.I=this.I&~this.R|a&this.R;
this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.M&this.R;this.M=this.M&~this.R|a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.H&this.R;this.H=this.H&~this.R|a&this.R;this.A-=3},function(){var a=this.G,b=I(this);this.G=this.G&~this.R|b&this.R;G(this,b&~this.R|a&this.R);this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.P&this.R;this.P=this.P&~this.R|a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.K&this.R;this.K=this.K&~this.R|
a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.J&this.R;this.J=this.J&~this.R|a&this.R;this.A-=3},function(){this.G=2==this.ba?this.G&-65536|this.G<<24>>24&65535:this.G<<16>>16;this.A-=2},function(){this.M=2==this.ba?this.M&-65536|(this.G&32768?65535:0):this.G&-2147483648?-1:0;this.A-=this.B.dj},function(){wj.call(this,this.Ma(),Rf(this));this.A-=this.B.gj},function(){this.A-=3},function(){var a=xd(this);a&131072&&3>this.Pa?C.call(this,13,0):(J(this,a&-196609),this.A-=this.B.Sc)},
@ -309,7 +309,7 @@ function(){if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{var a=D(this),a=a
b=T(this);b=this.Qa(this.ka.nc(b,1));this.G=a|b;this.A-=this.B.Ih},function(){this.G=this.G&~this.R|od(this,this.ka,T(this));this.A-=this.B.Ih},function(){var a=T(this),b=this.G;this.qc(this.ka.oc(a,1),b);this.A-=this.B.Jh},function(){var a=T(this),b=this.G;this.rc(this.ka.oc(a,this.ba),b);this.A-=this.B.Jh},function(){var a=1,b=0,c=this.Ba,d=this.B.Kh;this.Ha&192&&(a=this.I&c,b=1,d=this.B.Mh,this.Ha&256||(this.A-=this.B.Lh));if(a--){var e=this.Qa(this.ka.nc(this.K&c,1));this.qc(this.Wa.oc(this.J&
c,1),e);e=this.ca&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;this.I=this.I&~c|this.I-b&c;a&&(nf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Kh;this.Ha&192&&(a=this.I&c,b=1,d=this.B.Mh,this.Ha&256||(this.A-=this.B.Lh));if(a--){var e=od(this,this.ka,this.K&c);this.rc(this.Wa.oc(this.J&c,this.ba),e);e=this.ca&1024?-this.ba:this.ba;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;this.I=this.I&~c|this.I-b&c;a&&(nf(this),this.S|=256)}},
function(){var a=1,b=0,c=this.Ba,d=this.B.vh;this.Ha&192&&(a=this.I&c,b=1,d=this.B.xh,this.Ha&256||(this.A-=this.B.wh));if(a--){var e=Jf(this,this.ka,this.K),f=Jf(this,this.Wa,this.J);this.C=this.D;Hh.call(this,e,f);e=this.ca&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Vb;a&&sf(this)==(this.Ha&64)&&(nf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.vh;this.Ha&192&&(a=this.I&c,b=1,d=this.B.xh,this.Ha&256||(this.A-=this.B.wh));
if(a--){var e=Lf(this,this.ka,this.K&c),f=Lf(this,this.Wa,this.J&c);this.C=this.D;Ih.call(this,e,f);e=this.ca&1024?-this.ba:this.ba;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Vb;a&&sf(this)==(this.Ha&64)&&(nf(this),this.S|=256)}},function(){vf(this,this.G&this.xa(),128);this.A-=this.B.Ge},function(){vf(this,this.G&this.Ma(),this.Ia);this.A-=this.B.Ge},function(){var a=1,b=0,c=this.Ba,d=this.B.Vh;this.Ha&192&&(a=this.I&c,b=1,d=this.B.Xh,this.Ha&
if(a--){var e=Lf(this,this.ka,this.K&c),f=Lf(this,this.Wa,this.J&c);this.C=this.D;Ih.call(this,e,f);e=this.ca&1024?-this.ba:this.ba;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Vb;a&&sf(this)==(this.Ha&64)&&(nf(this),this.S|=256)}},function(){vf(this,this.G&this.xa(),128);this.A-=this.B.He},function(){vf(this,this.G&this.Ma(),this.Ia);this.A-=this.B.He},function(){var a=1,b=0,c=this.Ba,d=this.B.Vh;this.Ha&192&&(a=this.I&c,b=1,d=this.B.Xh,this.Ha&
256||(this.A-=this.B.Wh));if(a--){var e=this.G;this.qc(this.Wa.oc(this.J&c,1),e);this.I=this.I&~c|this.I-b&c;80546<=this.Uc&&80564>=this.Uc&&!(this.Ha&2048)!=(103!=this.Qa(this.Ga))&&(c^=-65536);this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c;this.A-=d;a&&(nf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Vh;this.Ha&192&&(a=this.I&c,b=1,d=this.B.Xh,this.Ha&256||(this.A-=this.B.Wh));if(a--){var e=this.G;this.rc(this.Wa.oc(this.J&c,this.ba),e);this.J=this.J&~c|this.J+(this.ca&1024?-this.ba:
this.ba)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(nf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Ch;this.Ha&192&&(a=this.I&c,b=1,d=this.B.Eh,this.Ha&256||(this.A-=this.B.Dh));if(a--){var e=this.Qa(this.ka.nc(this.K&c,1));this.G=this.G&-256|e;this.K=this.K&~c|this.K+(this.ca&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(nf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Ch;this.Ha&192&&(a=this.I&c,b=1,d=this.B.Eh,this.Ha&256||(this.A-=this.B.Dh));if(a--){var e=
od(this,this.ka,this.K&c);this.G=this.G&~this.R|e;this.K=this.K&~c|this.K+(this.ca&1024?-this.ba:this.ba)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(nf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Ph;this.Ha&192&&(a=this.I&c,b=1,d=this.B.Rh,this.Ha&256||(this.A-=this.B.Qh));if(a--){var e=this.G&255,f=Jf(this,this.Wa,this.J);this.C=this.D;Hh.call(this,e,f);this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Vb;a&&sf(this)==(this.Ha&64)&&(nf(this),
@ -330,27 +330,27 @@ Bf(this);(d%=9)?(c=(a<<d|e<<d-1|a>>9-d)&255,e=a<<d-1):e<<=7;Af(this,c,e,128)}ret
a=c>>1&255,vf(this,a,128,c&1));return a}],Zj=[function(a,b){var c=a,d=b&this.ra;if(d){var e;(d&=15)?(e=a<<d-1,c=(a<<d|a>>16-d)&65535):e=a<<15;Af(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.ra;if(d){var e;(d&=15)?(e=a<<16-d,c=(a>>>d|e)&65535):e=a;Af(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.ra;if(d){var e=Bf(this);(d%=17)?(c=(a<<d|e<<d-1|a>>17-d)&65535,e=a<<d-1):e<<=15;Af(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.ra;if(d){var e=Bf(this);(d%=17)?(c=(a>>d|e<<
16-d|a<<17-d)&65535,e=a<<16-d):e<<=15;Af(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.ra;if(d){var e=0;16<d?c=0:(e=a<<d-1,c=e<<1&65535);vf(this,c,32768,e&32768,(c^e)&32768)}return c},function(a,b){var c=b&this.ra;c&&(c=16<c?0:a>>>c-1,a=c>>>1&65535,vf(this,a,32768,c&1,a&32768));return a},Lh,function(a,b){var c=b&this.ra;c&&(17<c&&(c=17),c=a<<16>>16>>c-1,a=c>>1&65535,vf(this,a,32768,c&1));return a}],ak=[function(a,b){var c=a,d=b&this.ra;d&&(c=a<<d|a>>>32-d,Af(this,c,a<<d-1,-2147483648));
return c},function(a,b){var c=a,d=b&this.ra;if(d){var e=a<<32-d,c=a>>>d|e;Af(this,c,e,-2147483648)}return c},function(a,b){var c=a,d=b&this.ra;d&&(c=Bf(this),c=a<<d|c<<d-1|a>>>32-d>>>1,Af(this,c,a<<d-1,-2147483648));return c},function(a,b){var c=a,d=b&this.ra;d&&(c=Bf(this),c=a>>>d|c<<32-d|a<<32-d<<1,Af(this,c,a<<32-d,-2147483648));return c},function(a,b){var c=a,d=b&this.ra;d&&(d=a<<d-1,c=d<<1,vf(this,c,-2147483648,d&-2147483648,(c^d)&-2147483648));return c},function(a,b){var c=b&this.ra;c&&(c=a>>>
c-1,a=c>>>1,vf(this,a,-2147483648,c&1,a&-2147483648));return a},Lh,function(a,b){var c=b&this.ra;c&&(c=a>>c-1,a=c>>1,vf(this,a,-2147483648,c&1));return a}],lk=[function(a,b){b=this.xa();vf(this,a&b,128);this.A-=-1===this.D?this.B.Zh:this.B.Yh;this.S|=2;return a},Lh,function(a){this.A-=-1===this.D?this.B.Rf:this.B.Qf;return a^255},function(a){var b=-a|0;of(this,0,a,b,191,!0);this.A-=-1===this.D?this.B.Rf:this.B.Qf;return b&255},function(a){this.ja=(this.G&255)*a&65535;this.ja&65280?(wf(this),yf(this)):
c-1,a=c>>>1,vf(this,a,-2147483648,c&1,a&-2147483648));return a},Lh,function(a,b){var c=b&this.ra;c&&(c=a>>c-1,a=c>>1,vf(this,a,-2147483648,c&1));return a}],lk=[function(a,b){b=this.xa();vf(this,a&b,128);this.A-=-1===this.D?this.B.Zh:this.B.Yh;this.S|=2;return a},Lh,function(a){this.A-=-1===this.D?this.B.Sf:this.B.Rf;return a^255},function(a){var b=-a|0;of(this,0,a,b,191,!0);this.A-=-1===this.D?this.B.Sf:this.B.Rf;return b&255},function(a){this.ja=(this.G&255)*a&65535;this.ja&65280?(wf(this),yf(this)):
(xf(this),zf(this));this.bb=!0;this.A-=-1===this.D?this.B.Nj:this.B.Mj;this.S|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24)|0;this.ja=b&65535;127<b||-128>b?(wf(this),yf(this)):(xf(this),zf(this));this.bb=!0;this.A-=-1===this.D?this.B.sj:this.B.rj;this.S|=2;return a},function(a,b){if(!a)return Aj.call(this),a;var c=(b=this.G&65535)/a;if(255<c)return Aj.call(this),a;this.ja=c&255|(b%a&255)<<8;this.bb=!0;this.A-=-1===this.D?this.B.kj:this.B.jj;this.S|=2;return a},function(a,b){if(!a)return Aj.call(this),
a;var c=a<<24>>24,d=(b=this.G<<16>>16)/c|0;if(d!=d<<24>>24||8086==this.ia&&-128==d)return Aj.call(this),a;this.ja=d&255|(b%c&255)<<8;this.bb=!0;this.A-=-1===this.D?this.B.oj:this.B.nj;this.S|=2;return a}],mk=[function(a,b){b=this.Ma();vf(this,a&b,this.Ia);this.A-=-1===this.D?this.B.Zh:this.B.Yh;this.S|=2;return a},Lh,function(a){this.A-=-1===this.D?this.B.Rf:this.B.Qf;return a^this.R},function(a){var b=-a|0;of(this,0,a,b,this.Ia|63,!0);this.A-=-1===this.D?this.B.Rf:this.B.Qf;return b&this.R},function(a,
a;var c=a<<24>>24,d=(b=this.G<<16>>16)/c|0;if(d!=d<<24>>24||8086==this.ia&&-128==d)return Aj.call(this),a;this.ja=d&255|(b%c&255)<<8;this.bb=!0;this.A-=-1===this.D?this.B.oj:this.B.nj;this.S|=2;return a}],mk=[function(a,b){b=this.Ma();vf(this,a&b,this.Ia);this.A-=-1===this.D?this.B.Zh:this.B.Yh;this.S|=2;return a},Lh,function(a){this.A-=-1===this.D?this.B.Sf:this.B.Rf;return a^this.R},function(a){var b=-a|0;of(this,0,a,b,this.Ia|63,!0);this.A-=-1===this.D?this.B.Sf:this.B.Rf;return b&this.R},function(a,
b){if(2==this.ba){b=this.G&65535;var c=b*a|0;this.ja=c&65535;this.wa=c>>16&65535}else Rh.call(this,a,this.G),80563==this.Uc&&68657152==this.G&&129==a&&(this.wa=0);this.wa?(wf(this),yf(this)):(xf(this),zf(this));this.bb=!0;this.A-=-1===this.D?this.B.Pj:this.B.Oj;this.S|=2;return a},function(a,b){var c;2==this.ba?(b=this.G&65535,c=(b<<16>>16)*(a<<16>>16)|0,this.ja=c&65535,this.wa=c>>16&65535,c=32767<c||-32768>c):(Qh.call(this,a,this.G),c=this.wa!=this.ja>>31);c?(wf(this),yf(this)):(xf(this),zf(this));
this.bb=!0;this.A-=-1===this.D?this.B.uj:this.B.tj;this.S|=2;return a},function(a,b){if(2==this.ba){if(!a)return Aj.call(this),a;b=65536*(this.M&65535)+(this.G&65535);var c=b/a;if(65536<=c)return Aj.call(this),a;this.ja=c&65535;this.wa=b%a&65535}else{if(!nj.call(this,this.G,this.M,a))return Aj.call(this),a;this.ja|=0;this.wa|=0}this.bb=!0;this.A-=-1===this.D?this.B.mj:this.B.lj;this.S|=2;return a},function(a,b){if(2==this.ba){if(!a)return Aj.call(this),a;var c=a<<16>>16,d=(b=this.M<<16|this.G&65535)/
c|0;if(d!=d<<16>>16||8086==this.ia&&-32768==d)return Aj.call(this),a;this.ja=d&65535;this.wa=b%c&65535}else{var c=this.G,d=this.M,e=a,f=0,g=0;0>e&&(e=-e|0,f=1-f);0>d&&(c=-c|0,d=~d+(c?0:1)|0,g=1,f=1-f);!nj.call(this,c,d,e)||this.ja>2147483647+f||this.wa>2147483647+g?c=!1:(f&&(this.ja=-this.ja),g&&(this.wa=-this.wa),c=!0);if(!c)return Aj.call(this),a;this.ja|=0;this.wa|=0}this.bb=!0;this.A-=-1===this.D?this.B.qj:this.B.pj;this.S|=2;return a}],Dd=[function(a){var b=a+1|0;of(this,a,1,b,190);this.A-=-1===
this.D?this.B.Pf:this.B.Of;return b&255},function(a){var b=a-1|0;of(this,a,1,b,190,!0);this.A-=-1===this.D?this.B.Pf:this.B.Of;return b&255},Lh,Lh,Lh,Lh,Lh,Lh],Ed=[function(a){var b=a+1|0;of(this,a,1,b,this.Ia|62);this.A-=-1===this.D?this.B.Pf:this.B.Of;return b&this.R},function(a){var b=a-1|0;of(this,a,1,b,this.Ia|62,!0);this.A-=-1===this.D?this.B.Pf:this.B.Of;return b&this.R},function(a){J(this,K(this));O(this,a);this.A-=-1===this.D?this.B.ij:this.B.hj;this.S|=2;return a},function(a){if(-1===this.D)return Lh.call(this,
this.D?this.B.Qf:this.B.Pf;return b&255},function(a){var b=a-1|0;of(this,a,1,b,190,!0);this.A-=-1===this.D?this.B.Qf:this.B.Pf;return b&255},Lh,Lh,Lh,Lh,Lh,Lh],Ed=[function(a){var b=a+1|0;of(this,a,1,b,this.Ia|62);this.A-=-1===this.D?this.B.Qf:this.B.Pf;return b&this.R},function(a){var b=a-1|0;of(this,a,1,b,this.Ia|62,!0);this.A-=-1===this.D?this.B.Qf:this.B.Pf;return b&this.R},function(a){J(this,K(this));O(this,a);this.A-=-1===this.D?this.B.ij:this.B.hj;this.S|=2;return a},function(a){if(-1===this.D)return Lh.call(this,
a);this.U=this.ga;wj.call(this,a,this.na(this.D+this.ba));this.A-=this.B.fj;this.S|=2;this.U=-1;return a},function(a){O(this,a);this.A-=-1===this.D?this.B.Dj:this.B.Cj;this.S|=2;return a},function(a){if(-1===this.D)return Lh.call(this,a);zd(this,a,this.na(this.D+this.ba));this.A-=this.B.Aj;this.S|=2;return a},function(a){var b=a;this.S&512&&(a=a-2&65535,80286>this.ia&&(b=a));J(this,b);this.A-=-1===this.D?this.B.Sc:this.B.Tj;this.S|=2;return a},Lh];
function oe(){this.W.call(this,gj);this.A-=-1===this.D?6:13}function pe(){this.fa.call(this,fj);this.A-=-1===this.D?12:19}var ge=Array(256);ge[0]=function(){16>(this.Qa(this.Ga)&56)&&(this.S|=1);this.ya.call(this,this.hg,uj)};ge[1]=function(){this.Qa(this.Ga)&16||(this.S|=1);this.ya.call(this,nk,uj)};ge[2]=function(){!(this.Ya&1)||this.ca&131072?C.call(this,6):this.W.call(this,Sh)};ge[3]=function(){!(this.Ya&1)||this.ca&131072?C.call(this,6):this.W.call(this,Yh)};
ge[5]=function(){this.pa?C.call(this,13,0,0,!0):(Gf(this,this.na(2054)),this.J=this.na(2086),this.K=this.na(2088),this.P=this.na(2090),this.H=this.na(2094),this.M=this.na(2096),this.I=this.na(2098),this.G=this.na(2100),jd(this.Wa,2102,this.na(2084)),jd(this.va,2108,this.na(2082)),jd(this.ta,2114,this.na(2080)),jd(this.vb,2120,this.na(2078)),yd(this,this.na(2072)),O(this,this.na(2074)),G(this,this.na(2092)),this.Ec=this.na(2126)|this.Qa(2128)<<16,this.Ad=this.Ec+this.na(2130),this.Mc=this.na(2138)|
this.Qa(2140)<<16,this.Sd=this.Mc+this.na(2142),jd(this.Bc,2132,this.na(2076)),jd(this.Sa,2144,this.na(2070)),this.A-=195)};ge[6]=function(){this.pa?C.call(this,13,0):(this.Ya&=-9,this.A-=2)};ge[11]=Gd;ge[166]=Gd;ge[255]=Gd;var M=[];M[5]=Gd;
M[7]=function(){if(this.pa)C.call(this,13,0,0,!0);else{var a=this.Wa.nc(this.J&this.Ba,204);if(-1!==a){pj.call(this,this.oa(a));var b=this.oa(a+168),c=(b&24576)>>13;yd(this,this.oa(a+4),c);this.Ec=this.oa(a+112);this.Ad=this.Ec+this.oa(a+116);this.Mc=this.oa(a+100);this.Sd=this.Mc+this.oa(a+104);id(this.Bc,this.oa(a+56),this.oa(a+120),this.oa(a+124),this.oa(a+128));id(this.Sa,this.oa(a+52),this.oa(a+84),this.oa(a+88),this.oa(a+92));this.J=this.oa(a+12);this.K=this.oa(a+16);this.P=this.oa(a+20);this.H=
this.oa(a+28);this.M=this.oa(a+32);this.I=this.oa(a+36);this.G=this.oa(a+40);id(this.Pb,this.oa(a+60),this.oa(a+132),this.oa(a+136),this.oa(a+140));id(this.Ob,this.oa(a+64),this.oa(a+144),this.oa(a+148),this.oa(a+152));id(this.vb,this.oa(a+68),this.oa(a+156),this.oa(a+160),this.oa(a+164));id(this.ta,this.oa(a+72),b,this.oa(a+172),this.oa(a+176));id(this.va,this.oa(a+76),this.oa(a+180),this.oa(a+184),this.oa(a+188));id(this.Wa,this.oa(a+80),this.oa(a+192),this.oa(a+196),this.oa(a+200));O(this,this.oa(a+
8));G(this,this.oa(a+24))}this.A-=122<<(a&3?1:0)}};M[16]=Uj;M[17]=Vj;M[18]=Wj;M[19]=Xj;M[32]=function(){if(this.pa)C.call(this,13,0);else{var a,b=this.xa();switch((b&56)>>3){case 0:a=this.Ya;break;case 2:a=this.se;break;case 3:a=this.Od;break;default:he.call(this);return}we(this,b&7,a);this.A-=6}};M[33]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?he.call(this):(we(this,a&7,this.Ja[b]),this.A-=22)}};
M[34]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=ve(this,a&7);switch((a&56)>>3){case 0:pj.call(this,b);this.A-=10;break;case 2:this.se=b;this.A-=4;break;case 3:Ad.call(this,b);this.A-=5;break;default:he.call(this)}}};M[35]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?he.call(this):(a=ve(this,a&7),a!=this.Ja[b]&&(ff(this,!1),this.Ja[b]=a,ff(this,!0)),this.A-=4>b?22:14)}};
M[36]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;6>b?he.call(this):(we(this,a&7,this.Be[b]),this.A-=12)}};M[38]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;6>b?he.call(this):(this.Be[b]=ve(this,a&7),this.A-=12)}};M[128]=function(){var a=this.Ma();uf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab};M[129]=function(){var a=this.Ma();uf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)};
8));G(this,this.oa(a+24))}this.A-=122<<(a&3?1:0)}};M[16]=Uj;M[17]=Vj;M[18]=Wj;M[19]=Xj;M[32]=function(){if(this.pa)C.call(this,13,0);else{var a,b=this.xa();switch((b&56)>>3){case 0:a=this.Ya;break;case 2:a=this.te;break;case 3:a=this.Od;break;default:he.call(this);return}we(this,b&7,a);this.A-=6}};M[33]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?he.call(this):(we(this,a&7,this.Ja[b]),this.A-=22)}};
M[34]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=ve(this,a&7);switch((a&56)>>3){case 0:pj.call(this,b);this.A-=10;break;case 2:this.te=b;this.A-=4;break;case 3:Ad.call(this,b);this.A-=5;break;default:he.call(this)}}};M[35]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?he.call(this):(a=ve(this,a&7),a!=this.Ja[b]&&(ff(this,!1),this.Ja[b]=a,ff(this,!0)),this.A-=4>b?22:14)}};
M[36]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;6>b?he.call(this):(we(this,a&7,this.Ce[b]),this.A-=12)}};M[38]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;6>b?he.call(this):(this.Ce[b]=ve(this,a&7),this.A-=12)}};M[128]=function(){var a=this.Ma();uf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab};M[129]=function(){var a=this.Ma();uf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)};
M[130]=function(){var a=this.Ma();pf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab};M[131]=function(){var a=this.Ma();pf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)};M[132]=function(){var a=this.Ma();sf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab};M[133]=function(){var a=this.Ma();sf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)};M[134]=function(){var a=this.Ma();pf(this)||sf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab};
M[135]=function(){var a=this.Ma();pf(this)||sf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)};M[136]=function(){var a=this.Ma();tf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab};M[137]=function(){var a=this.Ma();tf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)};M[138]=function(){var a=this.Ma();qf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab};M[139]=function(){var a=this.Ma();qf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)};
M[140]=function(){var a=this.Ma();!tf(this)!=!uf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab};M[141]=function(){var a=this.Ma();!tf(this)==!uf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab};M[142]=function(){var a=this.Ma();sf(this)||!tf(this)!=!uf(this)?(O(this,K(this)+a),this.A-=this.B.$a):this.A-=this.B.ab};M[143]=function(){var a=this.Ma();sf(this)||!tf(this)!=!uf(this)?this.A-=this.B.ab:(O(this,K(this)+a),this.A-=this.B.$a)};M[144]=function(){qj.call(this,Bi)};
M[145]=function(){qj.call(this,Bi)};M[146]=function(){qj.call(this,Ci)};M[147]=function(){qj.call(this,Di)};M[148]=function(){qj.call(this,Ei)};M[149]=function(){qj.call(this,Fi)};M[150]=function(){qj.call(this,Gi)};M[151]=function(){qj.call(this,Hi)};M[152]=function(){qj.call(this,Ii)};M[153]=function(){qj.call(this,Ji)};M[154]=function(){qj.call(this,Ki)};M[155]=function(){qj.call(this,Li)};M[156]=function(){qj.call(this,Mi)};M[157]=function(){qj.call(this,Ni)};M[158]=function(){qj.call(this,Oi)};
M[159]=function(){qj.call(this,Pi)};M[160]=function(){ud(this,this.Ob.Z,this.ba,2);this.A-=this.B.He};M[161]=function(){this.U=this.ga;var a=D(this);this.Ob.load(a);this.A-=this.B.zc;this.U=-1};M[163]=function(){this.fa.call(this,Dh);-1!==this.D&&(this.A-=6)};M[164]=function(){this.fa.call(this,2==this.ba?Qi:Si);this.A-=-1===this.D?3:7};M[165]=function(){this.fa.call(this,2==this.ba?Ui:Vi);this.A-=-1===this.D?3:7};M[168]=function(){ud(this,this.Pb.Z,this.ba,2);this.A-=this.B.He};
M[159]=function(){qj.call(this,Pi)};M[160]=function(){pd(this,this.Ob.Z,this.ba,2);this.A-=this.B.Ie};M[161]=function(){this.U=this.ga;var a=D(this);this.Ob.load(a);this.A-=this.B.zc;this.U=-1};M[163]=function(){this.fa.call(this,Dh);-1!==this.D&&(this.A-=6)};M[164]=function(){this.fa.call(this,2==this.ba?Qi:Si);this.A-=-1===this.D?3:7};M[165]=function(){this.fa.call(this,2==this.ba?Ui:Vi);this.A-=-1===this.D?3:7};M[168]=function(){pd(this,this.Pb.Z,this.ba,2);this.A-=this.B.Ie};
M[169]=function(){this.U=this.ga;var a=D(this);this.Pb.load(a);this.A-=this.B.zc;this.U=-1};M[171]=function(){this.fa.call(this,Gh);-1!==this.D&&(this.A-=5)};M[172]=function(){this.fa.call(this,2==this.ba?Wi:Yi);this.A-=-1===this.D?3:7};M[173]=function(){this.fa.call(this,2==this.ba?$i:aj);this.A-=-1===this.D?3:7};M[175]=function(){this.W.call(this,2==this.ba?Nh:Ph)};M[178]=function(){this.W.call(this,Zh)};M[179]=function(){this.fa.call(this,Fh);-1!==this.D&&(this.A-=5)};
M[180]=function(){this.W.call(this,Wh)};M[181]=function(){this.W.call(this,Xh)};
M[182]=function(){this.Na.call(this,ai);switch(this.L>>3&7){case 0:this.G=this.G&~this.R|this.G&255;break;case 1:this.I=this.I&~this.R|this.I&255;break;case 2:this.M=this.M&~this.R|this.M&255;break;case 3:this.H=this.H&~this.R|this.H&255;break;case 4:this.fb=this.fb&~this.R|this.G>>8&255;this.G=this.aa;break;case 5:this.P=this.P&~this.R|this.I>>8&255;this.I=this.aa;break;case 6:this.K=this.K&~this.R|this.M>>8&255;this.M=this.aa;break;case 7:this.J=this.J&~this.R|this.H>>8&255,this.H=this.aa}this.A-=
@ -368,19 +368,19 @@ Ak[5150][0][wk]={Lc:48,hd:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,mono:48,ega:
Ak[5160][0][5]={Lc:12,hd:{64:0,128:4,192:8,256:12},Pd:"Base Memory (64Kb Increments)"};Ak[5160][1][6]=Ak[5150][1][6];Ak[5160.101]=[{},{}];Ak[5160.101][0][5]={Lc:143,hd:{128:1,256:130,512:8,640:141},Pd:"Base Memory (128Kb Increments)"};Ak[5160.101][0][3]={Lc:16,hd:{0:0,1:16},Pd:"Coprocessor"};Ak[5160.101][1][2]={Lc:1,hd:{0:0,1:1},Pd:"Floppy Type"};Ak[5160.101][1][vk]=Ak[5150][0][vk];Ak[5160.101][1][wk]=Ak[5150][0][wk];m=pk.prototype;
m.Qb=function(a,b,c){switch(b){case tk:return this.qa[b]=c,Bk(this,0,b),!0;case xk:if(5150==(this.ia|0)||5160.101==this.ia)return this.qa[b]=c,Bk(this,1,b),!0;break;case "swdesc":return this.qa[b]=c,!0}return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;this.Tb=Eb(a,"FPU");uk(this,3,this.Tb?1:0,!0);this.B=Eb(a,"Keyboard");this.fb=c.Y.Jd/1193181;hc(b,this,Ck);lc(b,this,Dk);this.ia<cg?5160.101!=this.ia?(hc(b,this,Ek),lc(b,this,Fk)):(hc(b,this,Gk),lc(b,this,Hk)):(hc(b,this,Ik),lc(b,this,Jk),5180==(this.ia|0)&&(hc(b,this,Kk),lc(b,this,Lk)));if(d){var e=this;Mk(d,1024,function(){for(var a=0;a<e.vc.length;a++){for(var b=e.vc[a],c="PIC"+a+":",d=0;d<b.Yc.length;d++)c+=" IC"+(d+1)+"="+t(b.Yc[d]);
c+=" IMR="+t(b.Bd)+" IRR="+t(b.mc)+" ISR="+t(b.Pc)+" DELAY="+b.mf;e.ha.O(c)}});Mk(d,2048,function(a){a=(a=a[0])?+a:null;for(var b=0;b<e.W.length;b++)if(null==a||b==a){Nk(e,b);var c=e.W[b],d="TIMER"+b+":",l=0;if(null!=c.nd)for(var n=0;n<=c.nd;n++)l|=c.Ab[n]<<8*n;d+=" mode="+(c.mode>>1)+" bytes="+c.nd+" count="+u(l);e.ha.O(d)}});Mk(d,4096,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Ok(e,b):e.A[b];a&&(a+="\n");a+="CMOS["+t(b)+"]: "+t(c)}e.ha.O(a)})}cf(c,26,this.$l.bind(this))};
c+=" IMR="+t(b.Bd)+" IRR="+t(b.mc)+" ISR="+t(b.Pc)+" DELAY="+b.nf;e.ha.O(c)}});Mk(d,2048,function(a){a=(a=a[0])?+a:null;for(var b=0;b<e.W.length;b++)if(null==a||b==a){Nk(e,b);var c=e.W[b],d="TIMER"+b+":",l=0;if(null!=c.nd)for(var n=0;n<=c.nd;n++)l|=c.Ab[n]<<8*n;d+=" mode="+(c.mode>>1)+" bytes="+c.nd+" count="+u(l);e.ha.O(d)}});Mk(d,4096,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Ok(e,b):e.A[b];a&&(a+="\n");a+="CMOS["+t(b)+"]: "+t(c)}e.ha.O(a)})}cf(c,26,this.$l.bind(this))};
m.ic=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};
m.reset=function(a){var b;Pk(this);this.L=Array(this.bb);for(b=0;b<this.bb;b++)Qk(this,b);this.vc=Array(this.Ea);Rk(this,0,32);1<this.Ea&&Rk(this,1,160);this.Pa=this.Na=null;this.W=Array(5180==(this.ia|0)?6:3);for(b=0;b<this.W.length;b++)Sk(this,b);this.Ca=this.rb=this.X=this.Za=null;this.ya=0;5160.101==this.ia&&(this.wa=0);if(this.ia>=cg){this.N=16;this.fa=0;this.aa=16;this.Ja=0;this.ga=160;512<=Tk(this)&&(this.ga|=16);3==+Uk(this,wk,void 0)&&(this.ga|=64);5180==(this.ia|0)&&(this.ga|=12);this.Ka=
3;this.ra=Array(8);this.pa=0;a&&(this.A=Array(64));Vk(this,this.Ub);for(a=21;24>=a;a++)this.A[a]=0;for(a=14;46>a;a++)void 0===this.A[a]&&(this.A[a]=0);a=0|+Uk(this,wk,void 0)<<zk.Pg&zk.Lc;a|=+Uk(this,3,void 0)?2:0;b=+Uk(this,vk,void 0);a|=b?b-1<<yk.Pg&yk.Lc|yk.Bk:0;this.A[20]=a;this.A[16]=Wk(this,0)<<4|Wk(this,1);Xk(this)}};
function Vk(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.O("CMOS date invalid ("+b+"), using "+c)):b&&a.O("CMOS date: "+c);a.A[0]=c.getSeconds();a.A[1]=0;a.A[2]=c.getMinutes();a.A[3]=0;a.A[4]=c.getHours();a.A[5]=0;a.A[6]=c.getDay()+1;a.A[7]=c.getDate();a.A[8]=c.getMonth()+1;c=c.getFullYear();a.A[9]=c%100;c/=100;a.A[50]=c%10|c/10<<4;a.A[10]=38;a.A[11]=2;a.A[12]=0;a.A[13]=128;a.Ia=a.ua=0;a.Jb=a.eb=null}
function Ok(a,b){var c=a.A[b];if(10>b){var d=!1;4!=b&&5!=b||a.A[11]&2||(12>c?c=c?c:12:c=(c-=12)?c+128:140,d=!0);a.A[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.A[b]^=128);return c}function Yk(a){var b;void 0===b&&(b=a.eb);a.ua=Wc(a.F,a.ka)+b;a.A[11]&64&&Yc(a.F,b)}function Xk(a){for(var b=0,c=16;46>c;c++)b+=a.A[c];a.A[47]=b&255;a.A[46]=b>>8}
m.save=function(){var a=new hf(this);N(a,0,[this.C]);for(var b=[],c=0;c<this.L;c++){for(var d=this.L[c],e=d,f=[],g=0;g<e.Dc.length;g++){var h=e.Dc[g];f[g]=[h.De,h.ig,h.Fc,h.Eb,h.Ab,h.mode,h.kg,h.qn,h.rn]}b[c]=[d.Yb,d.Wg,d.yi,d.Kb,f,d.zi]}N(a,1,[b]);b=[];for(c=0;c<this.vc.length;c++)d=this.vc[c],b[c]=[d.mf,d.Yc,d.Yd,d.Bd,d.mc,d.Pc,d.xe,d.Bf];N(a,2,[b]);b=[];for(c=0;c<this.W.length;c++)d=this.W[c],b[c]=[d.Fc,d.$c,d.Ab,d.ye,d.Yg,d.mode,d.eg,d.Fd,d.nd,d.vd,d.Ye,d.Ae,d.xd,d.Yb,d.cf];N(a,3,[this.Na,b,this.Pa]);
m.save=function(){var a=new hf(this);N(a,0,[this.C]);for(var b=[],c=0;c<this.L;c++){for(var d=this.L[c],e=d,f=[],g=0;g<e.Dc.length;g++){var h=e.Dc[g];f[g]=[h.Ee,h.ig,h.Fc,h.Eb,h.Ab,h.mode,h.kg,h.qn,h.rn]}b[c]=[d.Yb,d.Wg,d.yi,d.Kb,f,d.zi]}N(a,1,[b]);b=[];for(c=0;c<this.vc.length;c++)d=this.vc[c],b[c]=[d.nf,d.Yc,d.Yd,d.Bd,d.mc,d.Pc,d.ye,d.Cf];N(a,2,[b]);b=[];for(c=0;c<this.W.length;c++)d=this.W[c],b[c]=[d.Fc,d.$c,d.Ab,d.ze,d.Yg,d.mode,d.eg,d.Fd,d.nd,d.vd,d.Ze,d.Be,d.xd,d.Yb,d.df];N(a,3,[this.Na,b,this.Pa]);
N(a,4,[this.Za,this.X,this.rb,this.Ca,this.ya]);this.ia>=cg&&(N(a,5,[this.N,this.fa,this.aa,this.Ja,this.ga,this.Ka]),N(a,6,[this.ra[7],this.ra,this.pa,this.A,this.Ia,this.ua]));return a.data()};
m.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.C=b[0]:(this.C[0][0]=b[0],this.C[1][0]=b[1]&15,this.C[0][1]=b[2],this.C[1][1]=b[3]&15);Pk(this);b=a[1];for(c=0;c<this.bb;c++)Qk(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.Ea;c++)Rk(this,c,0===c?32:160,b[0][c]);b=a[3];this.Na=b[0];this.Pa=b[2];for(c=0;c<this.W.length;c++)Sk(this,c,b[1][c]);b=a[4];this.Za=b[0];this.X=b[1];this.rb=b[2];this.Ca=b[3];this.ya=b[4];if(b=a[5])this.N=b[0],this.fa=b[1],this.aa=b[2],this.Ja=b[3],this.ga=
b[4],this.Ka=b[5];if(b=a[6])this.ra=b[1],this.ra[7]=b[0],this.pa=b[2],this.A=b[3],this.Ia=b[4],this.ua=b[5],Vk(this);return!0};var Zk=[0,null,null,0,Array(4),0];function Qk(a,b,c){var d=a.L[b];d||(d={Dc:Array(4)});c=c&&5<=c.length?c:Zk;d.Yb=c[0];d.Wg=c[1];d.yi=c[2];d.Kb=c[3];d.gm=b<<2;for(var e=0;e<d.Dc.length;e++)$k(d,e,c[4][e]);d.zi=c[5]||0;a.L[b]=d}var al=[!0,[0,0],[0,0],[0,0],[0,0]];
function $k(a,b,c){var d=a.Dc[b];d||(d={ig:[0,0],Fc:[0,0],Eb:[0,0],Ab:[0,0]});c=c&&8==c.length?c:al;d.De=c[0];d.ig[0]=c[1][0];d.ig[1]=c[1][1];d.Fc[0]=c[2][0];d.Fc[1]=c[2][1];d.Eb[0]=c[3][0];d.Eb[1]=c[3][1];d.Ab[0]=c[4][0];d.Ab[1]=c[4][1];d.mode=c[5];d.kg=c[6];d.controller=a;d.Ti=b;bl(d,c[8],c[9]);a.Dc[b]=d}function bl(a,b,c,d){"string"==typeof b&&(b=hb(b));b&&(a.done=null,a.qn=b.id,a.rn=c,a.pg=b,a.eh=b[c],a.Eg=d)}var cl=[0,Array(4)];
function Rk(a,b,c,d){var e=a.vc[b];e||(e={Yc:[null,null,null,null]});d=d&&8==d.length?d:cl;e.port=c;e.wo=b<<3;e.mf=d[0];e.Yc[0]=d[1][0];e.Yc[1]=d[1][1];e.Yc[2]=d[1][2];e.Yc[3]=d[1][3];e.Yd=d[2];e.Bd=d[3];e.mc=d[4];e.Pc=d[5];e.xe=d[6];e.Bf=d[7];a.vc[b]=e}var dl=[[0,0],[0,0],[0,0],[0,0]];
function Sk(a,b,c){var d=a.W[b];d||(d={Fc:[0,0],$c:[0,0],Ab:[0,0],ye:[0,0]});c=c&&13<=c.length?c:dl;d.Fc[0]=c[0][0];d.Fc[1]=c[0][1];d.$c[0]=c[1][0];d.$c[1]=c[1][1];d.Ab[0]=c[2][0];d.Ab[1]=c[2][1];d.ye[0]=c[3][0];d.ye[1]=c[3][1];d.Yg=c[4];d.mode=c[5];d.eg=c[6];d.Fd=c[7];d.nd=c[8];d.vd=c[9];d.Ye=c[10];d.Ae=c[11];d.xd=c[12];d.Yb=c[13]||0;d.cf=c[14]||!1;a.W[b]=d}
function $k(a,b,c){var d=a.Dc[b];d||(d={ig:[0,0],Fc:[0,0],Eb:[0,0],Ab:[0,0]});c=c&&8==c.length?c:al;d.Ee=c[0];d.ig[0]=c[1][0];d.ig[1]=c[1][1];d.Fc[0]=c[2][0];d.Fc[1]=c[2][1];d.Eb[0]=c[3][0];d.Eb[1]=c[3][1];d.Ab[0]=c[4][0];d.Ab[1]=c[4][1];d.mode=c[5];d.kg=c[6];d.controller=a;d.Ti=b;bl(d,c[8],c[9]);a.Dc[b]=d}function bl(a,b,c,d){"string"==typeof b&&(b=hb(b));b&&(a.done=null,a.qn=b.id,a.rn=c,a.pg=b,a.eh=b[c],a.Eg=d)}var cl=[0,Array(4)];
function Rk(a,b,c,d){var e=a.vc[b];e||(e={Yc:[null,null,null,null]});d=d&&8==d.length?d:cl;e.port=c;e.wo=b<<3;e.nf=d[0];e.Yc[0]=d[1][0];e.Yc[1]=d[1][1];e.Yc[2]=d[1][2];e.Yc[3]=d[1][3];e.Yd=d[2];e.Bd=d[3];e.mc=d[4];e.Pc=d[5];e.ye=d[6];e.Cf=d[7];a.vc[b]=e}var dl=[[0,0],[0,0],[0,0],[0,0]];
function Sk(a,b,c){var d=a.W[b];d||(d={Fc:[0,0],$c:[0,0],Ab:[0,0],ze:[0,0]});c=c&&13<=c.length?c:dl;d.Fc[0]=c[0][0];d.Fc[1]=c[0][1];d.$c[0]=c[1][0];d.$c[1]=c[1][1];d.Ab[0]=c[2][0];d.Ab[1]=c[2][1];d.ze[0]=c[3][0];d.ze[1]=c[3][1];d.Yg=c[4];d.mode=c[5];d.eg=c[6];d.Fd=c[7];d.nd=c[8];d.vd=c[9];d.Ze=c[10];d.Be=c[11];d.xd=c[12];d.Yb=c[13]||0;d.df=c[14]||!1;a.W[b]=d}
function Bk(a,b,c){for(var d="",e=a.qa[c],f=1;8>=f;f++){var g="pcjs-bitCell";f||(g+=" pcjs-bitCellLeft");d+='<div id="'+(c+"-"+f)+'" class="'+g+'" data-value="0">'+f+"</div>\n"}e.innerHTML=d;el(a,b,c,!0)}function fl(a,b,c){if(b=(a=Ak[a.ia|0])&&a[b])for(var d in b)if(a=b[d],a.Lc&1<<c)return a;return null}
function Uk(a,b,c){for(var d=null,e=Ak[a.ia]||Ak[a.ia|0]||Ak[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b])){a=a.C[f][c?0:1]&g.Lc;for(var h in g.hd)if(g.hd[h]==a&&(d=h,"number"==typeof+d))break;break}}return d}function Wk(a,b){if(b<+Uk(a,vk,void 0)){if(!a.ja)return 1;if(b<a.ja.length)switch(a.ja[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 Tk(a,b){return+Uk(a,5,b)+ +Uk(a,6,b)}
function sk(a,b){var c=b;if(a)for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}function uk(a,b,c,d){for(var e=Ak[a.ia]||Ak[a.ia|0]||Ak[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b]))for(var h in g.hd)if(h==c){a.C[f][d?0:1]&=~g.Lc;a.C[f][d?0:1]|=g.hd[h];return}}}function gl(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Pk(a){el(a,0,tk);el(a,1,xk);hl(a)}
@ -388,19 +388,19 @@ function el(a,b,c,d){if(c=a.qa[c]){d=d?a.C[b][0]:a.C[b][1]=a.C[b][0];c=nb(c,"pcj
function hl(a){var b=a.qa.swdesc;if(null!=b){var c;c=""+(Tk(a,!0)+"Kb");c+=", "+(+ +Uk(a,3,!0)?"":"No ")+"Coprocessor";c+=", "+{0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"}[+Uk(a,wk,!0)]+" Monitor";c+=", "+ +Uk(a,vk,!0)+" Floppy Drives";if(null!=a.C[0][1]&&a.C[0][1]!=a.C[0][0]||null!=a.C[1][1]&&a.C[1][1]!=a.C[1][0])c+=" (Reset required)";b.textContent=c}}
function il(a,b,c,d,e){var f=a.L[b],g=f.Dc[c],h=g.Eb[f.Kb];z(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.Kb+"]",h,!0);f.Kb^=1;b||0!=c||f.Kb||(g.Eb[0]++,255<g.Eb[0]&&(g.Eb[0]=0,g.Eb[1]++,255<g.Eb[1]&&(g.Eb[1]=0)));return h}function jl(a,b,c,d,e,f){var g=a.L[b];z(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.Kb+"]",null,!0);a=g.Dc[c];a.Eb[g.Kb]=a.ig[g.Kb]=e;g.Kb^=1}
function kl(a,b,c,d,e){var f=a.L[b],g=f.Dc[c],h=g.Ab[f.Kb];z(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.Kb+"]",h,!0);f.Kb^=1;b||0!=c||f.Kb||(g.Ab[0]--,0>g.Ab[0]&&(g.Ab[0]=255,g.Ab[1]--,0>g.Ab[1]&&(g.Ab[1]=255)));return h}function ll(a,b,c,d,e,f){var g=a.L[b];z(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.Kb+"]",null,!0);a=g.Dc[c];a.Ab[g.Kb]=a.Fc[g.Kb]=e;g.Kb^=1}function ml(a,b,c,d){var e=a.L[b],f=e.Yb|1;e.Yb&=-16;z(a,768)&&x(a,c,null,d,"DMA"+b+".STATUS",f,!0);return f}
function nl(a,b,c,d,e){var f=a.L[b];z(a,768)&&x(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.Yb=f.Yb&~(16<<a)|(d&4)<<a+2;f.yi=d}function ol(a,b,c,d,e){var f=a.L[b];z(a,768)&&x(a,c,d,e,"DMA"+b+".MASK",null,!0);b=d&3;c=f.Dc[b];c.De=!!(d&4);c.De||pl(a,f.gm+b)}function ql(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA"+b+".MODE",null,!0);a.L[b].Dc[d&3].mode=d}function rl(a,b,c,d){var e=a.L[b].zi;z(a,768)&&x(a,c,null,d,"DMA"+b+".TEMP",e,!0);return e}
function nl(a,b,c,d,e){var f=a.L[b];z(a,768)&&x(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.Yb=f.Yb&~(16<<a)|(d&4)<<a+2;f.yi=d}function ol(a,b,c,d,e){var f=a.L[b];z(a,768)&&x(a,c,d,e,"DMA"+b+".MASK",null,!0);b=d&3;c=f.Dc[b];c.Ee=!!(d&4);c.Ee||pl(a,f.gm+b)}function ql(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA"+b+".MODE",null,!0);a.L[b].Dc[d&3].mode=d}function rl(a,b,c,d){var e=a.L[b].zi;z(a,768)&&x(a,c,null,d,"DMA"+b+".TEMP",e,!0);return e}
function sl(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA"+b+".MASTER_CLEAR",null,!0);a=a.L[b];for(b=0;b<a.Dc.length;b++)$k(a,b)}function tl(a,b,c,d,e){var f=a.L[b].Dc[c].kg;z(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",f,!0);return f}function ul(a,b,c,d,e,f){z(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",null,!0);a.L[b].Dc[c].kg=e}function vl(a,b,c,d){var e=a.ra[b];z(a,768)&&x(a,c,null,d,"DMA.SPARE"+b+".PAGE",e,!0);return e}
function wl(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA.SPARE"+b+".PAGE",null,!0);a.ra[b]=d}function xl(a,b,c,d,e){bl(a.L[b>>2].Dc[b&3],c,d,e)}function pl(a,b,c){b=a.L[b>>2].Dc[b&3];b.pg&&b.eh&&b.Eg?(c&&(b.done=c),b.De||yl(a,b,!0)):c&&c(!0)}
function yl(a,b,c){c&&(b.count=b.Ab[1]<<8|b.Ab[0],b.type=b.mode&12,b.Pi=b.ud=!1);for(var d=!1;0<=b.count&&(c=b.kg<<16|b.Eb[1]<<8|b.Eb[0],4==b.type?(d=!0,function(c){b.eh.call(b.pg,b.Eg,-1,function(f,g){0>f&&(b.Pi||(b.Pi=!0),f=255);b.De||a.ea.qc(c,f);(d=g)&&setTimeout(function(){zl(b)||yl(a,b)},0)})}(c)):8==b.type?(c=a.ea.Qa(c),0>b.eh.call(b.pg,b.Eg,c)&&(b.ud=!0)):0!=b.type&&(b.ud=!0)),!d&&!zl(b););}
function zl(a){if(!a.ud&&0<=--a.count&&(a.mode&32?(a.Eb[0]--,0>a.Eb[0]&&(a.Eb[0]=255,a.Eb[1]--,0>a.Eb[1]&&(a.Eb[1]=255))):(a.Eb[0]++,255<a.Eb[0]&&(a.Eb[0]=0,a.Eb[1]++,255<a.Eb[1]&&(a.Eb[1]=0))),!a.De))return!1;var b=a.controller;b.Yb=b.Yb&~(16<<a.Ti)|1<<a.Ti;a.mode&16||(a.De=!0,a.pg=a.Eg=null);a.done&&(a.done(!a.ud),a.done=null);return!0}function Al(a,b,c){var d=0,e=a.vc[b];if(null!=e.Bf)switch(e.Bf&3){case 2:d=e.mc;break;case 3:d=e.Pc}z(a,34048)&&x(a,e.port,null,c,"PIC"+b,d,!0);return d}
function Bl(a,b,c,d){var e=a.vc[b];z(a,34048)&&x(a,e.port,c,d,"PIC"+b,null,!0);if(c&16)e.Yd=0,e.Yc[e.Yd++]=c,e.Bd=0,e.xe=7,e.mc=e.Pc=0,e.Bf=10;else if(c&8)c&100&&z(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW3 command "+t(c),!0,!0),e.Bf=c;else if(d=c&224,d&32){var f,g=0;if(96==(d&96))g=1<<(c&7);else for(f=e.xe+1;;){f&=7;var h=1<<f;if(e.Pc&h){g=h;break}if(f++==e.xe)break}e.Pc&g&&(e.Pc&=~g,Cl(a));d&128&&z(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW2 rotate command "+
t(c),!0,!0)}else 192==d?e.xe=c&7:z(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW2 automatic EOI command "+t(c),!0,!0)}function Dl(a,b,c){var d=a.vc[b],e=d.Bd;z(a,34048)&&x(a,d.port+1,null,c,"PIC"+b,e,!0);return e}function El(a,b,c,d){var e=a.vc[b];z(a,34048)&&x(a,e.port+1,c,d,"PIC"+b,null,!0);e.Yd<e.Yc.length?(e.Yc[e.Yd++]=c,2==e.Yd&&e.Yc[0]&2&&e.Yd++,3!=e.Yd||e.Yc[0]&1||e.Yd++):(e.Bd=c,d=a.F,d.S|=4,Cl(a,b||253!=c?0:6))}
function eg(a,b,c){var d=a.vc[b>>3];b=1<<(b&7);d.mc&b||(d.mc|=b,d.mf=c||0,Cl(a))}function dg(a,b){var c=a.vc[b>>3],d=1<<(b&7);c.mc&d&&(c.mc&=~d,Cl(a))}function Cl(a,b){var c,d=-1;1<a.Ea&&(c=a.vc[1],d=~(c.Pc|c.Bd)&c.mc);c=a.vc[0];0<=d&&(c.mc=d?c.mc|4:c.mc&-5);var d=~(c.Pc|c.Bd)&c.mc,e=a.F;e.N&&(e.ua=d?e.ua|1:e.ua&-2);d&&b&&(c.mf=b)}
function Uf(a,b){void 0===b&&(b=0);var c=-1,d=a.vc[b];if(d.mf)c=-2,d.mf--;else for(var e=d.mc&((d.Pc|d.Bd)^255),f=d.xe+1;;){var f=f&7,g=1<<f;if(d.Pc&g)break;if(e&g){b||2!=f?c=d.Yc[1]+f:c=Uf(a,1);0<=c&&(d.Pc|=g,d.mc&=~g);break}if(f++==d.xe)break}return c}function Fl(a,b,c,d,e){var f;f=b?3:0;var g=a.W[f+c];g.cf?(f=g.Yb,g.cf=!1):(g.Fd==g.nd&&Gl(a,f+c),g.Ye?(f=g.ye[g.Fd++],g.Fd==g.nd&&(g.Ye=!1)):(Nk(a,f+c),f=g.Ab[g.Fd++]));z(a,2304)&&x(a,d,null,e,"PIT"+b+".TIMER"+c,f,!0);return f}
function Hl(a,b,c,d,e,f){z(a,2304)&&x(a,d,e,f,"PIT"+b+".TIMER"+c,null,!0);f=b?3:0;d=a.W[f+c];d.Fd==d.nd&&Gl(a,f+c);d.Fc[d.Fd++]=e;d.Fd==d.nd&&(d.Ae&&0!=d.mode&&8!=d.mode||(d.Ye=!1,d.Ab[0]=d.$c[0]=d.Fc[0],d.Ab[1]=d.$c[1]=d.Fc[1],d.xd=Wc(a.F,a.ka),d.Ae=!0,d.vd=0!=d.mode,0==b&&0==c&&(dg(a,0),e=Il(a,0)*a.fb|0,6==d.mode&&(e>>=1),Yc(a.F,e))),0==b&&2==c&&ad(a))}function Jl(a,b,c,d){x(a,c,null,d,"PIT"+b+".CTRL",null,2048);return b?a.Pa:a.Na}
function Kl(a,b,c,d,e){x(a,c,d,e,"PIT"+b+".CTRL",null,2048);e=0;c=d&192;b?(e=3,a.Pa=d):a.Na=d;if(192==c){if(!(d&16))for(c=0;2>=c;c++)if(d&2<<c){b=e+c;var f=a.W[b];f.cf||(Nk(a,b),f.Yb=f.Yg|f.mode|f.eg|(f.Fd<f.nd?64:0)|(f.vd?128:0),f.cf=!0)}if(!(d&32))for(c=0;2>=c;c++)d&2<<c&&Ll(a,e+c)}else{c>>=6;var f=d&1,g=d&14;d&=48;if(0==d)Ll(a,e+c);else{e=e+c;var h=a.W[e];h.eg=d;h.mode=g;h.Yg=f;h.Fc=[0,0];h.Ab=[0,0];h.ye=[0,0];h.vd=!1;h.Ye=!1;h.Ae=!1;h.cf=!1;Gl(a,e);0==b&&0==c&&dg(a,0);0==b&&2==c&&255==a.vc[0].Bd&&
77==a.X&&(b=a.W[0],b.$c[0]=b.Fc[0],b.$c[1]=b.Fc[1],b.xd=Wc(a.F,a.ka))}}}function Il(a,b){var c=a.W[b],d=c.Fc[1]<<8|c.Fc[0];d||(d=1==c.nd?256:65536);return d}function cd(a,b){var c=a.W[b],d=c.$c[1]<<8|c.$c[0];d||(d=1==c.nd?256:65536);return d}function Ll(a,b){Nk(a,b);var c=a.W[b];c.ye[0]=c.Ab[0];c.ye[1]=c.Ab[1];c.Ye=!0;Gl(a,b)}function Gl(a,b){var c=a.W[b];c.Fd=32==c.eg?1:0;c.nd=48==c.eg?2:1}
function Nk(a,b,c){var d=a.W[b];if(d.Ae&&(2!=b||a.X&1)){var e=Wc(a.F,a.ka),f=(e-d.xd)/a.fb|0;0>f&&(d.xd=e,f=0);var g=Il(a,b),h=cd(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.vd=!0,d.Ae=!1,b||eg(a,0))):4==d.mode?(d.vd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.$c[0]=h&255,d.$c[1]=h>>8&255,d.xd=e,!b&&d.vd&&eg(a,0))):6==d.mode&&(h-=f,0>=h&&(d.vd=!d.vd,h=g+h,0>=h&&(h=g),d.$c[0]=h&255,d.$c[1]=h>>8&255,d.xd=e,!b&&d.vd&&eg(a,0)));d.Ab[0]=h&255;d.Ab[1]=h>>8&255;c&&(a.xd=0)}return d}
function wl(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA.SPARE"+b+".PAGE",null,!0);a.ra[b]=d}function xl(a,b,c,d,e){bl(a.L[b>>2].Dc[b&3],c,d,e)}function pl(a,b,c){b=a.L[b>>2].Dc[b&3];b.pg&&b.eh&&b.Eg?(c&&(b.done=c),b.Ee||yl(a,b,!0)):c&&c(!0)}
function yl(a,b,c){c&&(b.count=b.Ab[1]<<8|b.Ab[0],b.type=b.mode&12,b.Pi=b.ud=!1);for(var d=!1;0<=b.count&&(c=b.kg<<16|b.Eb[1]<<8|b.Eb[0],4==b.type?(d=!0,function(c){b.eh.call(b.pg,b.Eg,-1,function(f,g){0>f&&(b.Pi||(b.Pi=!0),f=255);b.Ee||a.ea.qc(c,f);(d=g)&&setTimeout(function(){zl(b)||yl(a,b)},0)})}(c)):8==b.type?(c=a.ea.Qa(c),0>b.eh.call(b.pg,b.Eg,c)&&(b.ud=!0)):0!=b.type&&(b.ud=!0)),!d&&!zl(b););}
function zl(a){if(!a.ud&&0<=--a.count&&(a.mode&32?(a.Eb[0]--,0>a.Eb[0]&&(a.Eb[0]=255,a.Eb[1]--,0>a.Eb[1]&&(a.Eb[1]=255))):(a.Eb[0]++,255<a.Eb[0]&&(a.Eb[0]=0,a.Eb[1]++,255<a.Eb[1]&&(a.Eb[1]=0))),!a.Ee))return!1;var b=a.controller;b.Yb=b.Yb&~(16<<a.Ti)|1<<a.Ti;a.mode&16||(a.Ee=!0,a.pg=a.Eg=null);a.done&&(a.done(!a.ud),a.done=null);return!0}function Al(a,b,c){var d=0,e=a.vc[b];if(null!=e.Cf)switch(e.Cf&3){case 2:d=e.mc;break;case 3:d=e.Pc}z(a,34048)&&x(a,e.port,null,c,"PIC"+b,d,!0);return d}
function Bl(a,b,c,d){var e=a.vc[b];z(a,34048)&&x(a,e.port,c,d,"PIC"+b,null,!0);if(c&16)e.Yd=0,e.Yc[e.Yd++]=c,e.Bd=0,e.ye=7,e.mc=e.Pc=0,e.Cf=10;else if(c&8)c&100&&z(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW3 command "+t(c),!0,!0),e.Cf=c;else if(d=c&224,d&32){var f,g=0;if(96==(d&96))g=1<<(c&7);else for(f=e.ye+1;;){f&=7;var h=1<<f;if(e.Pc&h){g=h;break}if(f++==e.ye)break}e.Pc&g&&(e.Pc&=~g,Cl(a));d&128&&z(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW2 rotate command "+
t(c),!0,!0)}else 192==d?e.ye=c&7:z(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW2 automatic EOI command "+t(c),!0,!0)}function Dl(a,b,c){var d=a.vc[b],e=d.Bd;z(a,34048)&&x(a,d.port+1,null,c,"PIC"+b,e,!0);return e}function El(a,b,c,d){var e=a.vc[b];z(a,34048)&&x(a,e.port+1,c,d,"PIC"+b,null,!0);e.Yd<e.Yc.length?(e.Yc[e.Yd++]=c,2==e.Yd&&e.Yc[0]&2&&e.Yd++,3!=e.Yd||e.Yc[0]&1||e.Yd++):(e.Bd=c,d=a.F,d.S|=4,Cl(a,b||253!=c?0:6))}
function eg(a,b,c){var d=a.vc[b>>3];b=1<<(b&7);d.mc&b||(d.mc|=b,d.nf=c||0,Cl(a))}function dg(a,b){var c=a.vc[b>>3],d=1<<(b&7);c.mc&d&&(c.mc&=~d,Cl(a))}function Cl(a,b){var c,d=-1;1<a.Ea&&(c=a.vc[1],d=~(c.Pc|c.Bd)&c.mc);c=a.vc[0];0<=d&&(c.mc=d?c.mc|4:c.mc&-5);var d=~(c.Pc|c.Bd)&c.mc,e=a.F;e.N&&(e.ua=d?e.ua|1:e.ua&-2);d&&b&&(c.nf=b)}
function Uf(a,b){void 0===b&&(b=0);var c=-1,d=a.vc[b];if(d.nf)c=-2,d.nf--;else for(var e=d.mc&((d.Pc|d.Bd)^255),f=d.ye+1;;){var f=f&7,g=1<<f;if(d.Pc&g)break;if(e&g){b||2!=f?c=d.Yc[1]+f:c=Uf(a,1);0<=c&&(d.Pc|=g,d.mc&=~g);break}if(f++==d.ye)break}return c}function Fl(a,b,c,d,e){var f;f=b?3:0;var g=a.W[f+c];g.df?(f=g.Yb,g.df=!1):(g.Fd==g.nd&&Gl(a,f+c),g.Ze?(f=g.ze[g.Fd++],g.Fd==g.nd&&(g.Ze=!1)):(Nk(a,f+c),f=g.Ab[g.Fd++]));z(a,2304)&&x(a,d,null,e,"PIT"+b+".TIMER"+c,f,!0);return f}
function Hl(a,b,c,d,e,f){z(a,2304)&&x(a,d,e,f,"PIT"+b+".TIMER"+c,null,!0);f=b?3:0;d=a.W[f+c];d.Fd==d.nd&&Gl(a,f+c);d.Fc[d.Fd++]=e;d.Fd==d.nd&&(d.Be&&0!=d.mode&&8!=d.mode||(d.Ze=!1,d.Ab[0]=d.$c[0]=d.Fc[0],d.Ab[1]=d.$c[1]=d.Fc[1],d.xd=Wc(a.F,a.ka),d.Be=!0,d.vd=0!=d.mode,0==b&&0==c&&(dg(a,0),e=Il(a,0)*a.fb|0,6==d.mode&&(e>>=1),Yc(a.F,e))),0==b&&2==c&&ad(a))}function Jl(a,b,c,d){x(a,c,null,d,"PIT"+b+".CTRL",null,2048);return b?a.Pa:a.Na}
function Kl(a,b,c,d,e){x(a,c,d,e,"PIT"+b+".CTRL",null,2048);e=0;c=d&192;b?(e=3,a.Pa=d):a.Na=d;if(192==c){if(!(d&16))for(c=0;2>=c;c++)if(d&2<<c){b=e+c;var f=a.W[b];f.df||(Nk(a,b),f.Yb=f.Yg|f.mode|f.eg|(f.Fd<f.nd?64:0)|(f.vd?128:0),f.df=!0)}if(!(d&32))for(c=0;2>=c;c++)d&2<<c&&Ll(a,e+c)}else{c>>=6;var f=d&1,g=d&14;d&=48;if(0==d)Ll(a,e+c);else{e=e+c;var h=a.W[e];h.eg=d;h.mode=g;h.Yg=f;h.Fc=[0,0];h.Ab=[0,0];h.ze=[0,0];h.vd=!1;h.Ze=!1;h.Be=!1;h.df=!1;Gl(a,e);0==b&&0==c&&dg(a,0);0==b&&2==c&&255==a.vc[0].Bd&&
77==a.X&&(b=a.W[0],b.$c[0]=b.Fc[0],b.$c[1]=b.Fc[1],b.xd=Wc(a.F,a.ka))}}}function Il(a,b){var c=a.W[b],d=c.Fc[1]<<8|c.Fc[0];d||(d=1==c.nd?256:65536);return d}function cd(a,b){var c=a.W[b],d=c.$c[1]<<8|c.$c[0];d||(d=1==c.nd?256:65536);return d}function Ll(a,b){Nk(a,b);var c=a.W[b];c.ze[0]=c.Ab[0];c.ze[1]=c.Ab[1];c.Ze=!0;Gl(a,b)}function Gl(a,b){var c=a.W[b];c.Fd=32==c.eg?1:0;c.nd=48==c.eg?2:1}
function Nk(a,b,c){var d=a.W[b];if(d.Be&&(2!=b||a.X&1)){var e=Wc(a.F,a.ka),f=(e-d.xd)/a.fb|0;0>f&&(d.xd=e,f=0);var g=Il(a,b),h=cd(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.vd=!0,d.Be=!1,b||eg(a,0))):4==d.mode?(d.vd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.$c[0]=h&255,d.$c[1]=h>>8&255,d.xd=e,!b&&d.vd&&eg(a,0))):6==d.mode&&(h-=f,0>=h&&(d.vd=!d.vd,h=g+h,0>=h&&(h=g),d.$c[0]=h&255,d.$c[1]=h>>8&255,d.xd=e,!b&&d.vd&&eg(a,0)));d.Ab[0]=h&255;d.Ab[1]=h>>8&255;c&&(a.xd=0)}return d}
function bd(a,b){for(var c=0;c<a.W.length;c++)Nk(a,c,b);if(a.ia>=cg){var c=a.F.Y.Jd,d=Wc(a.F,a.ka);null==a.eb&&(a.Ia=Wc(a.F,a.ka),a.Jb=1024,a.eb=Math.floor(a.F.Y.Jd/a.Jb),Yk(a));d>=a.ua&&(a.A[12]|=64,a.A[11]&64&&(a.A[12]|=128,eg(a,8)),a.ua=d+a.eb);a.A[0]==a.A[1]&&a.A[2]==a.A[3]&&a.A[4]==a.A[5]&&(a.A[12]|=32,a.A[11]&32&&(a.A[12]|=128,eg(a,8)));var e=d-a.Ia,f=Math.floor(e/c);if(f&&!(a.A[11]&128)){for(;f--;)if(60<=++a.A[0]&&(a.A[0]=0,60<=++a.A[2]&&(a.A[2]=0,24<=++a.A[4]))){a.A[4]=0;a.A[6]=a.A[6]%7+1;
var g;g=a.A[9];var h=ra[a.A[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++a.A[7]>g&&(a.A[7]=1,12<++a.A[8]&&(a.A[8]=1,a.A[9]=(a.A[9]+1)%100))}a.A[12]|=16;a.A[11]&16&&(a.A[12]|=128,eg(a,8))}a.Ia=d-e%c}}m=pk.prototype;m.Jl=function(a,b){var c=this.Za;this.Ca&16&&(this.X&128?c=this.C[0][1]:this.B&&(c=Ml(this.B)));x(this,a,null,b,"PPI_A",c);return c};m.cn=function(a,b,c){x(this,a,b,c,"PPI_A");this.Za=b};m.Kl=function(a,b){var c=this.X;x(this,a,null,b,"PPI_B",c);return c};
m.dn=function(a,b,c){x(this,a,b,c,"PPI_B");Nl(this,b)};function Nl(a,b){var c=!!(b&2),d=!!(a.X&2);a.X=b;a.B&&Ol(a.B,!(b&128),!!(b&64));c!=d&&ad(a,c)}m.Ll=function(a,b){var c=0,c=5150==(this.ia|0)?this.X&4?c|this.C[1][1]&15:c|this.C[1][1]>>4&1:this.X&8?c|this.C[0][1]>>4:c|this.C[0][1]&15;this.X&1&&Nk(this,2).vd&&(c=this.X&2?c|32:c|16);x(this,a,null,b,"PPI_C",c,32896);return c};m.en=function(a,b,c){x(this,a,b,c,"PPI_C");this.rb=b};m.Ml=function(a,b){var c=this.Ca;x(this,a,null,b,"PPI_CTRL",c);return c};
@ -428,9 +428,9 @@ b,c){ql(this,1,a,b,c)},216:function(a,b,c){z(this,768)&&x(this,a,b,c,"DMA1.RESET
Qa(function(){for(var a=nb(document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new pk(d);mb(d,c);hl(d)}});
function Yl(a){Ua.call(this,"ROM",a,Yl);this.A=null;this.L=a.addr;this.C=a.size;this.N=a.alias;this.V=a.file;this.U=fa(this.V);this.B=a.notify;this.W=null;if(this.B&&(a=this.B.indexOf("["),0<a)){try{this.W=eval(this.B.substr(a))}catch(d){}this.B=this.B.substr(0,a)}if(this.V){a=this.V;var b=ga(this.U);"json"!=b&&"hex"!=b&&(a=xa()+"/api/v1/dump?file="+this.V+"&format=bytes&decimal=true");var c=this;va(a,null,!0,function(a,b,f){Zl(c,a,b,f)})}}db(Yl);
Yl.prototype.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;$l(this)};Yl.prototype.ic=function(){this.Qd&&(this.ha&&am(this.ha,this.id,0,this.L>>>4,0,this.L,this.C,this.Qd),delete this.Qd);return!0};Yl.prototype.hc=function(){return!0};
function Zl(a,b,c,d){if(d)a.Oa("Unable to load system ROM (error "+d+": "+b+")");else{fb(a.ue,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c<g.length;c++)a.A[d++]=g[c]&255,a.A[d++]=g[c]>>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Qd=e.symbols;if(!a.A.length){w("Empty ROM: "+b);return}if(1==a.A.length){w(a.A[0]);return}}catch(h){a.Oa("ROM data error: "+h.message);return}else for(b=c.replace(/\n/gm,
function Zl(a,b,c,d){if(d)a.Oa("Unable to load system ROM (error "+d+": "+b+")");else{fb(a.ve,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c<g.length;c++)a.A[d++]=g[c]&255,a.A[d++]=g[c]>>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Qd=e.symbols;if(!a.A.length){w("Empty ROM: "+b);return}if(1==a.A.length){w(a.A[0]);return}}catch(h){a.Oa("ROM data error: "+h.message);return}else for(b=c.replace(/\n/gm,
" ").replace(/ +$/,"").split(" "),a.A=Array(b.length),e=0;e<b.length;e++)a.A[e]=ca(b[e],16);$l(a)}}
function $l(a){if(!tb(a))if(!a.V)rb(a);else if(a.A&&a.ea){if(a.A.length!=a.C)ub(a,"ROM size (0x"+r(a.A.length)+") does not match specified size ("+("0x"+r(a.C))+")");else{var b;b=a.L;if(Sb(a.ea,b,a.C,$b)){for(var c=0;c<a.A.length;c++){var d=a.ea,e=b+c;d.sa[(e&d.Gb)>>>d.La].vf(e&d.A,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.N?b.push(a.N):null!=a.N&&a.N.length&&(b=a.N);for(c=0;c<b.length;c++){var d=a,e=b[c],f=Xb(d.ea,d.L,d.C);Wb(d.ea,e,d.C,f)}a.B&&((b=hb(a.B,a.id))?(c=a.A,d=a.W,5==
function $l(a){if(!tb(a))if(!a.V)rb(a);else if(a.A&&a.ea){if(a.A.length!=a.C)ub(a,"ROM size (0x"+r(a.A.length)+") does not match specified size ("+("0x"+r(a.C))+")");else{var b;b=a.L;if(Sb(a.ea,b,a.C,$b)){for(var c=0;c<a.A.length;c++){var d=a.ea,e=b+c;d.sa[(e&d.Gb)>>>d.La].wf(e&d.A,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.N?b.push(a.N):null!=a.N&&a.N.length&&(b=a.N);for(c=0;c<b.length;c++){var d=a,e=b[c],f=Xb(d.ea,d.L,d.C);Wb(d.ea,e,d.C,f)}a.B&&((b=hb(a.B,a.id))?(c=a.A,d=a.W,5==
b.kb?bm(b,c,d||[12640,8752],8):b.kb==cm&&bm(b,c,d||[14221,16269],8),rb(b)):a.Oa("Unable to find component: "+a.B));delete a.A}}rb(a)}}Qa(function(){for(var a=nb(document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Yl(d);mb(d,c)}});function dm(a){Ua.call(this,"RAM",a,dm);this.B=a.addr;this.A=a.size;this.L=a.test;this.V=!!this.A;this.C=!1}db(dm);m=dm.prototype;m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");rb(this)};
m.ic=function(a,b){return!b&&(this.reset(),a&&this.controller&&!this.restore(a))?!1:!0};m.hc=function(a){return a&&this.controller?this.save():!0};
m.reset=function(){if(!this.B&&!this.V&&this.N){var a=1024*Tk(this.N);this.A&&a!=this.A&&(Zb(this.ea,this.B,this.A),this.C=!1);this.A=a}!this.C&&this.A&&Sb(this.ea,this.B,this.A,1)&&(this.C=!0,this.status(Math.floor(this.A/1024)+"Kb allocated"),"ramCPQ"==this.de&&(this.controller=new em(this),Sb(this.ea,fm,4,4,this.controller)));if(this.C){if(this.L||fc(this.ea,1138,4660),"ramCPQ"!=this.de&&this.N&&(a=this.N,a.A)){var b=1048576>this.B?21:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+
@ -454,23 +454,23 @@ function Ml(a){var b=0;a.A.length&&(b=a.A[0]);z(a)&&y(a,"scan code "+t(b)+" deli
m.reset=function(){if(!this.ia&&this.N)switch(this.N.ia){case 5150:case 5160:mm(this,nm[0]);break;default:mm(this,nm[1])}Am(this);this.xc=this.C=0;this.A=[];this.U=!0;this.L=""};m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.aa;c[b]=this.X;N(a,0,c);return a.data()};m.restore=function(a){return Am(this,a[0])};function Am(a,b){var c=0;void 0===b&&(b=[]);a.aa=a.U=b[c++];a.X=b[c];a.W=0;return!0}
function ym(a,b){if(0<a.L.length){var c=a.L.charCodeAt(0);10==c&&(c=13);a.L=a.L.substr(1);vm(a,c,!0)}0<a.L.length&&setTimeout(function(a){return function(){ym(a,b)}}(a),b)}
function wm(a,b,c,d){if(Y[b]){var e=Math.floor(b/1E3)&2;if(b=qm[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.C:a.xc)&b):d||b&255&&(b=255);if(c){a.C&=~b;d&&(a.C|=b);c=b;var f,g;for(g in tm)d="led-"+g,e=tm[g],c&&c!=e||!(f=a.qa[d])||(f.style.backgroundColor=a.C&e?"#00ff00":"#000000")}else a.xc&=~b,d&&(a.xc|=b);return!0}}return!1}
function vm(a,b,c){if(Y[b]&&a.F&&a.F.la.Ib){qm[b]&&a.B.length&&0<a.B[0].Ld&&(a.B[0].Ld=0);for(var d,e=0;e<a.B.length;e++)if(d=a.B[e],d.Le==b){if(!c||0<=d.Ld){e=-1;break}0<e&&(0<a.B[0].Ld&&(a.B[0].Ld=0),a.B.splice(e,1));break}0>e||(e==a.B.length&&(d={},d.Le=b,d.xc=a.xc,zm(a,b,!0),e++),0<e&&a.B.splice(0,0,d),d.Df=!0,d.Ld=c?-1:qm[b]?0:1,Bm(a,d))}}
function xm(a,b,c){if(!Y[b]||!(c||a.F&&a.F.la.Ib))return!1;for(var d=!1,e=0;e<a.B.length;e++){var f=a.B[e];if(f.Le==b||f.Le==pm[b]){a.B.splice(e,1);f.qk&&clearTimeout(f.qk);f.Df&&!c&&Cm(a,f.Le,!1);zm(a,b,!1);d=!0;break}}!a.B.length&&a.ka&&(wm(a,1020),a.ka=!1);return d}function Bm(a,b){if(!a.F||!a.F.la.Ib)xm(a,b.Le,!0);else if(Cm(a,b.Le,b.Df)&&b.Ld){var c;if(0>b.Ld){if(!b.Df){xm(a,b.Le);return}b.Df=!1;c=a.ua}else c=1==b.Ld++?500:100;b.qk=setTimeout(function(a){return function(){Bm(a,b)}}(a),c)}}
function vm(a,b,c){if(Y[b]&&a.F&&a.F.la.Ib){qm[b]&&a.B.length&&0<a.B[0].Ld&&(a.B[0].Ld=0);for(var d,e=0;e<a.B.length;e++)if(d=a.B[e],d.Me==b){if(!c||0<=d.Ld){e=-1;break}0<e&&(0<a.B[0].Ld&&(a.B[0].Ld=0),a.B.splice(e,1));break}0>e||(e==a.B.length&&(d={},d.Me=b,d.xc=a.xc,zm(a,b,!0),e++),0<e&&a.B.splice(0,0,d),d.Ef=!0,d.Ld=c?-1:qm[b]?0:1,Bm(a,d))}}
function xm(a,b,c){if(!Y[b]||!(c||a.F&&a.F.la.Ib))return!1;for(var d=!1,e=0;e<a.B.length;e++){var f=a.B[e];if(f.Me==b||f.Me==pm[b]){a.B.splice(e,1);f.qk&&clearTimeout(f.qk);f.Ef&&!c&&Cm(a,f.Me,!1);zm(a,b,!1);d=!0;break}}!a.B.length&&a.ka&&(wm(a,1020),a.ka=!1);return d}function Bm(a,b){if(!a.F||!a.F.la.Ib)xm(a,b.Me,!0);else if(Cm(a,b.Me,b.Ef)&&b.Ld){var c;if(0>b.Ld){if(!b.Ef){xm(a,b.Me);return}b.Ef=!1;c=a.ua}else c=1==b.Ld++?500:100;b.qk=setTimeout(function(a){return function(){Bm(a,b)}}(a),c)}}
function Dm(a,b,c){var d=b;if(65<=b&&90>=b)!(a.xc&515)==c&&(d=b+32);else if(97<=b&&122>=b)!!(a.xc&515)==c&&(d=b-32);else if(!!(a.xc&3)==c){if(a=pm[b])d=a}else if(a=om[b])d=a;return d}m.Fg=function(a){a||(this.xc&=-256)};
function um(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,h=Dm(a,g,!0);a.ah&&h==X["`"]&&(g=h=27);if(Y[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),wm(a,h,!1,c)){if(20==g||144==g||145==g)a.pa||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k<a.B.length;k++){var l=a.B[k];l.Df=!1;0<l.Ld&&(l.Ld=0)}}else 8==g&&8==(a.xc&40)&&(h=4008),d=!1;else if(Y[h]&&a.xc&60&&(d=!1),d&&c||a.xc&192)f=!0;d||b.preventDefault();f||a.ja&&d||(c?vm(a,h,e):xm(a,h)||(b=Dm(a,g,!1),b!=h&&xm(a,b)));return d}
function um(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,h=Dm(a,g,!0);a.ah&&h==X["`"]&&(g=h=27);if(Y[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),wm(a,h,!1,c)){if(20==g||144==g||145==g)a.pa||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k<a.B.length;k++){var l=a.B[k];l.Ef=!1;0<l.Ld&&(l.Ld=0)}}else 8==g&&8==(a.xc&40)&&(h=4008),d=!1;else if(Y[h]&&a.xc&60&&(d=!1),d&&c||a.xc&192)f=!0;d||b.preventDefault();f||a.ja&&d||(c?vm(a,h,e):xm(a,h)||(b=Dm(a,g,!1),b!=h&&xm(a,b)));return d}
function Cm(a,b,c){var d=!1;wm(a,b,!0,c);var e=Y[b]||Y[b+1E3];if(void 0!==e){14==e&&40==(a.xc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.ra)return!1;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.C&3||a.C&512&&b||(g=h):29==h?a.C&12||(g=h):56==h?a.C&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.A&&(20>e.A.length?(z(e)&&y(e,"scan code "+t(f)+" buffered"),e.A.push(f),1==
e.A.length&&e.N&&Vl(e.N,f)):(20==e.A.length&&e.A.push(255),y(e,"scan code buffer overflow")));d=!0}return d}Qa(function(){for(var a=nb(document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new lm(d);mb(d,c)}});
function Z(a,b,c,d,e){Ua.call(this,"Video",a,Z,262144);this.ia=a.model;var f=Em[this.ia]||Em.mda;this.kb=f[0];this.Ed=a.memory||0;this.ag=a.switches;this.wa=a.mode;if(null==this.wa||null==Fm[this.wa])this.wa=f[1];this.kd=a.charCols;this.ke=a.charRows;if(void 0===this.kd||void 0===this.ke)this.kd=Fm[this.wa][0],this.ke=Fm[this.wa][1];this.ua=a.screenWidth;this.Ea=a.screenHeight;this.sn=a.scale;this.pi=12<=Math.round(this.ua/this.kd);this.pa=b;this.ja=c;this.V=(this.vk=d)||b||null;this.bg=a.touchScreen;
this.le=Gm;this.W=null;this.Og=a.autoLock;this.nb=this.ac=0;this.Na=[];this.Ca=Array(this.kb==cm?256:16);this.rb=!1;var g=this;this.pf=Ga("Gecko/");b=["","moz","webkit","ms"];if(this.ga=e)if(this.ga.Ve=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.ga.Ve){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){Hm(g,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||
document.msFullscreenElement?!0:!1)},!1);break}for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenerror","on"+c in document){document.addEventListener(c,function(){Hm(g,null)},!1);break}}this.V&&(this.V.onfocus=function(){return g.Fg(!0)},this.V.onblur=function(){return g.Fg(!1)},this.V.Ce=this.V.requestPointerLock||this.V.mozRequestPointerLock||this.V.webkitRequestPointerLock,this.V.rk=this.V.exitPointerLock||this.V.mozExitPointerLock||this.V.webkitExitPointerLock,this.V.Ce&&(e=function(){g.Uf(document.pointerLockElement===
this.le=Gm;this.W=null;this.Og=a.autoLock;this.nb=this.ac=0;this.Na=[];this.Ca=Array(this.kb==cm?256:16);this.rb=!1;var g=this;this.qf=Ga("Gecko/");b=["","moz","webkit","ms"];if(this.ga=e)if(this.ga.We=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.ga.We){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){Hm(g,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||
document.msFullscreenElement?!0:!1)},!1);break}for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenerror","on"+c in document){document.addEventListener(c,function(){Hm(g,null)},!1);break}}this.V&&(this.V.onfocus=function(){return g.Fg(!0)},this.V.onblur=function(){return g.Fg(!1)},this.V.De=this.V.requestPointerLock||this.V.mozRequestPointerLock||this.V.webkitRequestPointerLock,this.V.rk=this.V.exitPointerLock||this.V.mozExitPointerLock||this.V.webkitExitPointerLock,this.V.De&&(e=function(){g.Vf(document.pointerLockElement===
g.V||document.mozPointerLockElement===g.V||document.webkitPointerLockElement===g.V)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",e,!1):"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",e,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",e,!1)));if(a=a.fontROM)"json"!=ga(a)&&(a=xa()+"/api/v1/dump?file="+a+"&format=bytes"),va(a,null,!0,function(a,b,c){Im(g,a,b,c)})}db(Z);
var cm=7,Em={mda:[1,7],cga:[3,3],ega:[5,3],vga:[cm,3]},Jm={2:{Bg:15700,Ag:208,Gg:85,Hg:96},3:{Bg:18432,Ag:364,Gg:85,Hg:96},4:{Bg:21850,Ag:364,Gg:85,Hg:96},7:{Bg:16700,Ag:480,Gg:85,Hg:83}},Km={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]},Fm=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192],[80,25,1,0,1]];Fm[13]=[320,200,8];Fm[14]=[640,200,8];Fm[15]=[640,350,8];Fm[16]=[640,350,8];
Fm[17]=[640,480,8];Fm[18]=[640,480,8];Fm[19]=[320,200,1];Fm[20]=[320,240,4];Fm[21]=[320,400,4];Fm[0]=Fm[1];Fm[2]=Fm[3];Fm[5]=Fm[4];
var Lm=[[0,0,0,255],[127,192,127,255],[127,192,127,255],[127,255,127,255],[127,255,127,255]],Mm=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],Nm=[[0,0,0,255],[0,0,170,255],[0,170,0,255],[0,170,170,255],[170,0,0,255],[170,0,170,255],[170,85,0,255],[170,170,170,255],[85,85,85,255],[85,85,255,255],[85,255,85,255],[85,255,255,255],[255,85,85,255],[255,85,255,255],[255,255,85,255],[255,255,255,255]],Om=[2,4,6],Pm=[3,5,7],Qm=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Rm=[0,255,65280,65535,16711680,16711935,16776960,
16777215,-16777216,-16776961,-16711936,-16711681,-65536,-65281,-256,-1],Sm=[0];Sm[128]=1;Sm[32768]=2;Sm[32896]=3;Sm[8388608]=4;Sm[8388736]=5;Sm[8421376]=6;Sm[8421504]=7;Sm[-2147483648]=8;Sm[-2147483520]=9;Sm[-2147450880]=10;Sm[-2147450752]=11;Sm[-2139095040]=12;Sm[-2139094912]=13;Sm[-2139062272]=14;Sm[-2139062144]=15;
function Tm(a,b,c,d){if(void 0!==b&&(!c||c.length)){this.video=a;var e=Um[b],f=a.ya||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(5>b?Vm:Wm)];this.ha=a.ha;this.type=e[0];this.port=e[1];this.kb=b;this.nb=e[2];this.ac=e[3];this.Ed=d||e[4];65536<=this.Ed&&720896<=this.nb&&(this.ac=Math.min(this.Ed>>2,32768));this.Hc=c[0];this.gd=c[1];this.rf=c[2];this.ma=c[3];this.Ac=c[4]&255;this.Ig=c[4]>>8&255;this.qb=c[5];this.mh=Vm;this.jg=Xm;if(5<=b){this.mh=Wm;this.jg=Ym;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.nb,this.ac,this.Ed],Array(this.Ed>>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.We=b[0];this.Nd=b[1];this.Tc=b[2];this.Sg=Zm;this.Lg=b[3];this.tf=b[4];this.dg=b[5];this.be=b[6];this.Ie=b[7];this.Ug=$m;this.gk=b[8];this.hk=b[9];this.ae=b[10];this.$d=b[11];this.Tg=an;this.Fb=b[12];d=b[13];"number"==typeof d&&(d=[this.nb,this.ac,d]);this.nb=d[0];this.ac=d[1];d=this.Ed>>2;if((this.sd=b[14])&&this.sd.length<d){for(var e=this.sd,g=0,
h=Array(d),k=0;k<e.length-1;){for(var l=e[k++],n=e[k++];l--;)h[g]=n,g+=2;g==d&&(g=1)}this.sd=h}(d=b[15])&&(d&-2147483648?d&=2147483647:d=bn[d&65280]|bn[d&255]);this.Mg(d);this.ci=b[16];this.pb=b[17];this.dd=b[18];this.Mb=b[19];this.Tf=b[20];this.Zd=b[21];this.pe=b[22];this.nh=b[23];this.oh=b[24];this.Xf=b[25];this.di=this.of=0;this.kb==cm&&(this.ki=b[26],this.ji=b[27],this.pd=b[28],this.Kc=b[29],this.Jg=b[30],this.sf=b[31])}f=Jm[f]||Jm[3];this.ph=a.F.Y.Jd/f.Bg|0;this.im=this.ph*f.Gg/100|0;this.sh=
function Tm(a,b,c,d){if(void 0!==b&&(!c||c.length)){this.video=a;var e=Um[b],f=a.ya||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(5>b?Vm:Wm)];this.ha=a.ha;this.type=e[0];this.port=e[1];this.kb=b;this.nb=e[2];this.ac=e[3];this.Ed=d||e[4];65536<=this.Ed&&720896<=this.nb&&(this.ac=Math.min(this.Ed>>2,32768));this.Hc=c[0];this.gd=c[1];this.sf=c[2];this.ma=c[3];this.Ac=c[4]&255;this.Ig=c[4]>>8&255;this.qb=c[5];this.mh=Vm;this.jg=Xm;if(5<=b){this.mh=Wm;this.jg=Ym;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.nb,this.ac,this.Ed],Array(this.Ed>>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Xe=b[0];this.Nd=b[1];this.Tc=b[2];this.Sg=Zm;this.Lg=b[3];this.uf=b[4];this.dg=b[5];this.be=b[6];this.Je=b[7];this.Ug=$m;this.gk=b[8];this.hk=b[9];this.ae=b[10];this.$d=b[11];this.Tg=an;this.Fb=b[12];d=b[13];"number"==typeof d&&(d=[this.nb,this.ac,d]);this.nb=d[0];this.ac=d[1];d=this.Ed>>2;if((this.sd=b[14])&&this.sd.length<d){for(var e=this.sd,g=0,
h=Array(d),k=0;k<e.length-1;){for(var l=e[k++],n=e[k++];l--;)h[g]=n,g+=2;g==d&&(g=1)}this.sd=h}(d=b[15])&&(d&-2147483648?d&=2147483647:d=bn[d&65280]|bn[d&255]);this.Mg(d);this.ci=b[16];this.pb=b[17];this.dd=b[18];this.Mb=b[19];this.Uf=b[20];this.Zd=b[21];this.pe=b[22];this.nh=b[23];this.oh=b[24];this.qe=b[25];this.di=this.pf=0;this.kb==cm&&(this.ki=b[26],this.ji=b[27],this.pd=b[28],this.Kc=b[29],this.Jg=b[30],this.tf=b[31])}f=Jm[f]||Jm[3];this.ph=a.F.Y.Jd/f.Bg|0;this.im=this.ph*f.Gg/100|0;this.sh=
this.ph*f.Ag|0;this.km=this.sh*f.Hg/100|0;this.uh=c[7]||0}}
var Vm=18,Wm=25,Xm="HTOTAL HDISP HSYNC_POS HSYNC_WIDTH VTOTAL VTOTAL_ADJ VDISP VSYNC_POS INTERLACE_POS MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),Ym="HTOTAL HDISP_END HBLANK_START HBLANK_END HRETRACE_START HRETRACE_END VTOTAL OVERFLOW PRESET_SCAN MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO VRETRACE_START VRETRACE_END VDISP_END OFFSET UNDERLINE VBLANK_START VBLANK_END MODE_CTRL LINE_COMPARE".split(" "),Zm=
"PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVERSCAN PLANES HPAN".split(" "),$m=["RESET","CLOCKING","MAPMASK","CHARMAP","MEMMODE"],an="SRESET ESRESET COLORCMP DATAROT READMAP MODE MISC COLORDC BITMASK".split(" "),bn=[,,1024,5120];bn[16]=1280;bn[512]=0;bn[1024]=32;bn[1536]=96;bn[2560]=160;bn[3584]=224;bn[768]=16;bn[4096]=1;bn[8192]=2;bn[24576]=98;bn[40960]=162;bn[57344]=226;var cn=[];
@ -483,65 +483,66 @@ cn[224]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controlle
cn[16]=function(a,b){a+=this.C;var c,d=a&-2;c=(b|b<<8|b<<16|b<<24)&this.controller.Mb|this.controller.Fb&~this.controller.Mb;var e=this.controller.pb&(d==a?16711935:-16711936);c=c&e|this.da[d]&~e;this.da[d]!=c&&(this.da[d]=c,this.Va=!0)};cn[1]=function(a){a=a+this.C;var b=this.da[a]&~this.controller.pb|this.controller.Fb&this.controller.pb;this.da[a]!=b&&(this.da[a]=b,this.Va=!0)};
cn[17]=function(a){a+=this.C;var b=a&-2;a=this.controller.pb&(b==a?16711935:-16711936);a=this.da[b]&~a|this.controller.Fb&a;this.da[b]!=a&&(this.da[b]=a,this.Va=!0)};cn[2]=function(a,b){var c=a+this.C,d=Rm[b&15],d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb,d=d&this.controller.pb|this.da[c]&~this.controller.pb;this.da[c]!=d&&(this.da[c]=d,this.Va=!0)};
cn[98]=function(a,b){var c=a+this.C,d=Rm[b&15],d=d&this.controller.Fb,d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb,d=d&this.controller.pb|this.da[c]&~this.controller.pb;this.da[c]!=d&&(this.da[c]=d,this.Va=!0)};cn[162]=function(a,b){var c=a+this.C,d=Rm[b&15],d=d|this.controller.Fb,d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb,d=d&this.controller.pb|this.da[c]&~this.controller.pb;this.da[c]!=d&&(this.da[c]=d,this.Va=!0)};
cn[226]=function(a,b){var c=a+this.C,d=Rm[b&15],d=d^this.controller.Fb,d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb,d=d&this.controller.pb|this.da[c]&~this.controller.pb;this.da[c]!=d&&(this.da[c]=d,this.Va=!0)};cn[3]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.Mb;d=this.controller.Tf&d|this.controller.Fb&~d;d=d&this.controller.pb|this.da[c]&~this.controller.pb;this.da[c]!=d&&(this.da[c]=d,this.Va=!0)};
function dn(a){var b=[];if(void 0!==a.kb){b[0]=a.Hc;b[1]=a.gd;b[2]=a.rf;b[3]=a.ma;b[4]=a.Ac|a.Ig<<8;b[5]=a.qb;if(5<=a.kb){var c=[];c[0]=a.We;c[1]=a.Nd;c[2]=a.Tc;c[3]=a.Lg;c[4]=a.tf;c[5]=a.dg;c[6]=a.be;c[7]=a.Ie;c[8]=a.gk;c[9]=a.hk;c[10]=a.ae;c[11]=a.$d;c[12]=a.Fb;c[13]=[a.nb,a.ac,a.Ed];var d;a:if(d=a.sd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h<d.length;){for(var k=d[h],l=h+2;l<d.length&&d[l]===k;)l+=2;f[e++]=l-h>>1;f[e++]=k;h=l}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.vg|-2147483648;c[16]=a.ci;c[17]=a.pb;c[18]=a.dd;c[19]=a.Mb;c[20]=a.Tf;c[21]=a.Zd;c[22]=a.pe;c[23]=a.nh;c[24]=a.oh;c[25]=a.Xf;a.kb==cm&&(c[26]=a.ki,c[27]=a.ji,c[28]=a.pd,c[29]=a.Kc,c[30]=a.Jg,c[31]=a.sf);b[6]=c}b[7]=a.uh}return b}function en(a,b,c,d,e){if(d){var f,g="";for(f=0;f<e.length;f++)g&&(g+="\n"),g+=b+"["+t(f)+"]: "+ma(e[f],19)+t(d[f])+(f===c?"*":"");a.ha.O(g)}else a.ha.O(b+": "+t(c))}Tm.prototype.Ri=function(a){return[this.sd,a-this.nb]};Tm.prototype.fh=function(){return this.A};
cn[226]=function(a,b){var c=a+this.C,d=Rm[b&15],d=d^this.controller.Fb,d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb,d=d&this.controller.pb|this.da[c]&~this.controller.pb;this.da[c]!=d&&(this.da[c]=d,this.Va=!0)};cn[3]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.Mb;d=this.controller.Uf&d|this.controller.Fb&~d;d=d&this.controller.pb|this.da[c]&~this.controller.pb;this.da[c]!=d&&(this.da[c]=d,this.Va=!0)};
function dn(a){var b=[];if(void 0!==a.kb){b[0]=a.Hc;b[1]=a.gd;b[2]=a.sf;b[3]=a.ma;b[4]=a.Ac|a.Ig<<8;b[5]=a.qb;if(5<=a.kb){var c=[];c[0]=a.Xe;c[1]=a.Nd;c[2]=a.Tc;c[3]=a.Lg;c[4]=a.uf;c[5]=a.dg;c[6]=a.be;c[7]=a.Je;c[8]=a.gk;c[9]=a.hk;c[10]=a.ae;c[11]=a.$d;c[12]=a.Fb;c[13]=[a.nb,a.ac,a.Ed];var d;a:if(d=a.sd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h<d.length;){for(var k=d[h],l=h+2;l<d.length&&d[l]===k;)l+=2;f[e++]=l-h>>1;f[e++]=k;h=l}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.vg|-2147483648;c[16]=a.ci;c[17]=a.pb;c[18]=a.dd;c[19]=a.Mb;c[20]=a.Uf;c[21]=a.Zd;c[22]=a.pe;c[23]=a.nh;c[24]=a.oh;c[25]=a.qe;a.kb==cm&&(c[26]=a.ki,c[27]=a.ji,c[28]=a.pd,c[29]=a.Kc,c[30]=a.Jg,c[31]=a.tf);b[6]=c}b[7]=a.uh}return b}function en(a,b,c,d,e){if(d){var f,g="";for(f=0;f<e.length;f++)g&&(g+="\n"),g+=b+"["+t(f)+"]: "+ma(e[f],19)+t(d[f])+(f===c?"*":"");a.ha.O(g)}else a.ha.O(b+": "+t(c))}Tm.prototype.Ri=function(a){return[this.sd,a-this.nb]};Tm.prototype.fh=function(){return this.A};
Tm.prototype.Mg=function(a){if(null!=a&&a!=this.vg){var b=a&65280,c=cn[b];c||b&4096&&(c=cn[4096]);var b=a&255,d=cn[b];d||b&16&&(d=cn[16]);this.A||(this.A=Array(6));this.A[0]=c;this.A[3]=d;this.vg=a}};var Um=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];Um[cm]=["VGA",980,753664,16384,262144,7];var Gm=0;m=Z.prototype;
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;c=(c=Em[this.ia])&&c[0];3!==c&&(hc(b,this,fn),lc(b,this,gn));1!==c&&(hc(b,this,hn),lc(b,this,jn));5<=this.kb&&(hc(b,this,kn),lc(b,this,ln));this.kb==cm&&(hc(b,this,mn),lc(b,this,nn));if(d){var e=this;Mk(d,262144,function(a){if(e.C)if(a[0]){var b=e.C;if(b.sd){var c,d,f,q=!1,p=8,A=8,F=-1,v=b.video.L>>3;for(c=0;c<a.length;c++){var E=a[c];if(c){var H=E.charAt(0);d=ca(E.substr(1));switch(H){case "l":p=d;break;case "n":1<=d&&8>=d&&(A=d,q=!0);break;case "p":0<=
d&&3>=d&&(F=d);break;case "w":d<v&&(v=d);break;default:b.ha.O("unrecognized argument: "+E)}}else f=ca(E)}void 0===f?f=b.B||0:f>=b.nb&&(f-=b.nb);a="";for(c=0;c<p;c++){E=r(b.nb+f)+":";for(d=0;d<A&&f<b.sd.length;d++)H=b.sd[f++],E+=" "+(0>F?r(H):da(H>>(F<<3),8));q&&(f+=v-A);a&&(a+="\n");a+=E}a&&b.ha.O(a);b.B=f}else b.ha.O("no buffer")}else e.ha.O("BIOSMODE: "+t(e.Ia)),b=e.C,en(b,"CRTC",b.Ac,b.qb,b.jg),5<=b.kb&&(en(b," GRC",b.ae,b.$d,b.Tg),en(b," SEQ",b.be,b.Ie,b.Ug),en(b," ATC",b.Nd,b.Tc,b.Sg),en(b," ATCINDX",
b.Nd),b.ha.O(" ATCDATA: "+b.We),en(b," FEAT",b.dg),en(b," MISC",b.tf),en(b," STATUS0",b.Lg)),en(b," STATUS1",b.ma),1!=b.kb&&3!=b.kb||en(b," MODEREG",b.gd),3==b.kb&&en(b," COLOR",b.rf),5<=b.kb&&(b.ha.O(" LATCHES: 0x"+r(b.Fb)),b.ha.O(" ACCESS: "+u(b.vg)),b.ha.O("Use 'dump video [addr]' to dump video memory"));else e.ha.O("no active video card")})}if((this.B=Eb(a,"Keyboard"))&&this.pa){for(var f in this.qa)0<f.indexOf("lock")&&this.B.Qb("led",f,this.qa[f]);this.B.Qb(this.vk?
d&&3>=d&&(F=d);break;case "w":d<v&&(v=d);break;default:b.ha.O("unrecognized argument: "+E)}}else f=ca(E)}void 0===f?f=b.B||0:f>=b.nb&&(f-=b.nb);a="";for(c=0;c<p;c++){E=r(b.nb+f)+":";for(d=0;d<A&&f<b.sd.length;d++)H=b.sd[f++],E+=" "+(0>F?r(H):da(H>>(F<<3),8));q&&(f+=v-A);a&&(a+="\n");a+=E}a&&b.ha.O(a);b.B=f}else b.ha.O("no buffer")}else e.ha.O("BIOSMODE: "+t(e.Ia)),b=e.C,en(b,"CRTC",b.Ac,b.qb,b.jg),5<=b.kb&&(en(b," GRC",b.ae,b.$d,b.Tg),en(b," SEQ",b.be,b.Je,b.Ug),en(b," ATC",b.Nd,b.Tc,b.Sg),en(b," ATCINDX",
b.Nd),b.ha.O(" ATCDATA: "+b.Xe),en(b," FEAT",b.dg),en(b," MISC",b.uf),en(b," STATUS0",b.Lg)),en(b," STATUS1",b.ma),1!=b.kb&&3!=b.kb||en(b," MODEREG",b.gd),3==b.kb&&en(b," COLOR",b.sf),5<=b.kb&&(b.ha.O(" LATCHES: 0x"+r(b.Fb)),b.ha.O(" ACCESS: "+u(b.vg)),b.ha.O("Use 'dump video [addr]' to dump video memory"));else e.ha.O("no active video card")})}if((this.B=Eb(a,"Keyboard"))&&this.pa){for(var f in this.qa)0<f.indexOf("lock")&&this.B.Qb("led",f,this.qa[f]);this.B.Qb(this.vk?
"textarea":"canvas","kbd",this.V)}this.Vc=9;(this.N=Eb(a,"ChipSet"))&&this.ag&&5==this.kb&&(this.Vc=sk(this.ag,this.Vc));"mouse"==this.bg?(this.W=Eb(a,"Mouse"))&&on(this,2):"keygrid"==this.bg&&this.B&&on(this,1)};
m.Qb=function(a,b,c){var d=this;if(!this.qa[b])switch(this.qa[b]=c,b){case "fullScreen":return this.ga&&this.ga.Ve?c.onclick=function(){d.Ve()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.uk=c.textContent,this.V&&this.V.Ce?c.onclick=function(){d.Ce(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){pn(d,!0)},!0}return!1};
m.Ve=function(){var a=!1;if(this.ga){if(this.ga.Ve){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.ua/this.Ea;b>c&&(a=Math.round(c/b*100)+"%")}this.pf?(this.pa.style.width=a,this.pa.style.width=a,this.pa.style.display="block",this.pa.style.margin="auto"):(this.ga.style.width=a,this.ga.style.height="auto");this.ga.style.backgroundColor="black";this.ga.Ve();a=!0}this.V&&this.V.focus()}return a};
function Hm(a,b){!b&&a.ga&&(a.pf?a.pa.style.width=a.pa.style.height="":a.ga.style.width=a.ga.style.height="");y(a,"notifyFullScreen("+b+")",!0);a.B&&(a.B.ah=b)}m.Ce=function(a){var b=!1;this.V&&(a?this.V.Ce&&(this.V.Ce(),this.W&&this.W.Uf(!0),b=!0):this.V.rk&&(this.V.rk(),this.W&&this.W.Uf(!1),b=!0),this.V&&this.V.focus());return b};m.Uf=function(a){this.W&&(this.W.Uf(a),this.B&&(this.B.ah=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.uk)};
m.Qb=function(a,b,c){var d=this;if(!this.qa[b])switch(this.qa[b]=c,b){case "fullScreen":return this.ga&&this.ga.We?c.onclick=function(){d.We()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.uk=c.textContent,this.V&&this.V.De?c.onclick=function(){d.De(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){pn(d,!0)},!0}return!1};
m.We=function(){var a=!1;if(this.ga){if(this.ga.We){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.ua/this.Ea;b>c&&(a=Math.round(c/b*100)+"%")}this.qf?(this.pa.style.width=a,this.pa.style.width=a,this.pa.style.display="block",this.pa.style.margin="auto"):(this.ga.style.width=a,this.ga.style.height="auto");this.ga.style.backgroundColor="black";this.ga.We();a=!0}this.V&&this.V.focus()}return a};
function Hm(a,b){!b&&a.ga&&(a.qf?a.pa.style.width=a.pa.style.height="":a.ga.style.width=a.ga.style.height="");y(a,"notifyFullScreen("+b+")",!0);a.B&&(a.B.ah=b)}m.De=function(a){var b=!1;this.V&&(a?this.V.De&&(this.V.De(),this.W&&this.W.Vf(!0),b=!0):this.V.rk&&(this.V.rk(),this.W&&this.W.Vf(!1),b=!0),this.V&&this.V.focus());return b};m.Vf=function(a){this.W&&(this.W.Vf(a),this.B&&(this.B.ah=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.uk)};
function on(a,b){var c=a.V;c&&!a.le&&(c.addEventListener("touchstart",function(b){qn(a,b,!0)},!1),c.addEventListener("touchmove",function(b){qn(a,b)},!0),c.addEventListener("touchend",function(b){qn(a,b,!1)},!1),a.le=b,a.uc=a.Cc=a.gg=-1,a.Id=!1,a.Xc=null,a.Hd=!1,a.tn=function(){a.Hd=!0;a.W.ie(rn,!0)})}m.Fg=function(a){this.B&&this.B.Fg(a)};
function qn(a,b,c){var d,e,f=0,g=0;e=a.pa;do isNaN(e.offsetLeft)||(f+=e.offsetLeft,g+=e.offsetTop);while(e=e.offsetParent);var h=a.ua/a.pa.offsetWidth,k=a.Ea/a.pa.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*h;e=(e-g)*k;if(1==a.le)d=d/(a.ua/3)|0,e=e/(a.Ea/3)|0,1!=e?e?vm(a.B,1040,!0):vm(a.B,1038,!0):1!=d&&(d?vm(a.B,1039,!0):vm(a.B,1037,!0));else if(a.W){g=a.Id;f=b.timeStamp-a.gg;!0===c?(a.Id=500<f,a.gg=b.timeStamp,
a.Xc=setTimeout(a.tn,500)):null!=a.Xc&&(clearTimeout(a.Xc),a.Xc=null);void 0===c&&(a.Id=!1);g||b.preventDefault();if(!1===c){a.Hd?(a.W.ie(rn,!1),a.Hd=!1,b=!0):b=!1;if(b)return;if(200>f){a.W.ie(rn,!0);a.W.ie(rn,!1);return}}if(c||0>a.uc||0>a.Cc)a.uc=d,a.Cc=e;c=Math.round(d-a.uc);b=Math.round(e-a.Cc);a.uc=d;a.Cc=e;a.W.Gf(c,b,a.uc,a.Cc)}}m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};
a.Xc=setTimeout(a.tn,500)):null!=a.Xc&&(clearTimeout(a.Xc),a.Xc=null);void 0===c&&(a.Id=!1);g||b.preventDefault();if(!1===c){a.Hd?(a.W.ie(rn,!1),a.Hd=!1,b=!0):b=!1;if(b)return;if(200>f){a.W.ie(rn,!0);a.W.ie(rn,!1);return}}if(c||0>a.uc||0>a.Cc)a.uc=d,a.Cc=e;c=Math.round(d-a.uc);b=Math.round(e-a.Cc);a.uc=d;a.Cc=e;a.W.Hf(c,b,a.uc,a.Cc)}}m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};
m.reset=function(){var a=!0,b=0;this.N&&(b=+Uk(this.N,wk,void 0));this.ia||(this.kb=3==b?1:3);this.wa=3;switch(this.kb){case cm:b=7;break;case 5:var c=Km[this.Vc];c&&(b=c[0]);b||(b=4);break;case 1:b=3;this.wa=7;break;default:b=2}this.ya!==b&&(this.ya=b,a=!0);this.C=null;this.ra=this.rd=new Tm(this,1);this.aa=this.Wc=new Tm(this,3);5>this.kb?this.A=new Tm:(this.A=new Tm(this,this.kb,null,this.Ed),sn(this));tn(this);this.Ia=null;this.bb=this.ka=-1;this.Pa=0;un(this,this.wa);if(this.C.nb&&a){a=this.C.nb+
this.Ub;for(b=this.C.nb;b<a;b+=2){var d=65536*Math.random()|0;4==this.ya||7==this.ya?(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);fc(this.ea,b,c|d<<8)}pn(this,!0)}};function sn(a){a.A.tf&1?(a.ra=a.rd,a.aa=a.A):(a.ra=a.A,a.aa=a.Wc)}m.save=function(){var a=new hf(this);N(a,0,dn(this.rd));N(a,1,dn(this.Wc));N(a,2,[this.ya,this.wa,this.Ia]);N(a,3,dn(this.A));return a.data()};
this.Ub;for(b=this.C.nb;b<a;b+=2){var d=65536*Math.random()|0;4==this.ya||7==this.ya?(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);fc(this.ea,b,c|d<<8)}pn(this,!0)}};function sn(a){a.A.uf&1?(a.ra=a.rd,a.aa=a.A):(a.ra=a.A,a.aa=a.Wc)}m.save=function(){var a=new hf(this);N(a,0,dn(this.rd));N(a,1,dn(this.Wc));N(a,2,[this.ya,this.wa,this.Ia]);N(a,3,dn(this.A));return a.data()};
m.restore=function(a){var b=a[2];this.ya=b[0];this.wa=b[1];this.Ia=b[2];this.C=null;this.ra=this.rd=new Tm(this,1,a[0]);this.aa=this.Wc=new Tm(this,3,a[1]);this.A=new Tm(this,this.kb,a[3],this.Ed);this.A.Hc&&sn(this);tn(this);if(!vn(this))return!1;wn(this);return!0};
function Im(a,b,c,d){if(d)a.Oa("Unable to load font ROM (error "+d+": "+b+")");else{fb(a.ue,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){w("Empty font ROM: "+b);return}if(1==f.length){w(f[0]);return}if(8192==f.length)bm(a,f,[6144,0]);else if(2048==f.length)bm(a,f,[0]);else{a.Oa("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Oa("Font ROM data error: "+g.message);return}(a.ja||a.ha)&&rb(a)}}
function xn(a,b){if(1==b)return a.Ca[0]=Nm[0],a.Ca[1]=Nm[7],a.Ca;if(2==b){var c=a.C.rf;if(a.C===a.A){var d=a.A.Tc[0],c=d&7;d&16&&(c|=8);18!=a.A.Tc[1]&&(c|=32)}a.Ca[0]=Nm[c&15];c=c&32?Pm:Om;for(d=0;d<c.length;d++)a.Ca[d+1]=Nm[c[d]];return a.Ca}if(a.aa===a.Wc)return Nm;a.rb&&b&&!a.Ca[16]&&(a.rb=!1);if(!a.rb){var c=a.A,d=c.sf,e,f,g,h,k;if(8==b)for(f=0;256>f;f++)g=d[f]||0,h=g<<2&252,k=g>>4&252,g=g>>10&252,a.Ca[f]=[h,k,g,255];else{var l=d&&d[255];e=null!=c.Tc[15]?c.Tc:Qm;for(f=0;16>f;f++)g=e[f]&63,l?(g|=
function Im(a,b,c,d){if(d)a.Oa("Unable to load font ROM (error "+d+": "+b+")");else{fb(a.ve,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){w("Empty font ROM: "+b);return}if(1==f.length){w(f[0]);return}if(8192==f.length)bm(a,f,[6144,0]);else if(2048==f.length)bm(a,f,[0]);else{a.Oa("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Oa("Font ROM data error: "+g.message);return}(a.ja||a.ha)&&rb(a)}}
function xn(a,b){if(1==b)return a.Ca[0]=Nm[0],a.Ca[1]=Nm[7],a.Ca;if(2==b){var c=a.C.sf;if(a.C===a.A){var d=a.A.Tc[0],c=d&7;d&16&&(c|=8);18!=a.A.Tc[1]&&(c|=32)}a.Ca[0]=Nm[c&15];c=c&32?Pm:Om;for(d=0;d<c.length;d++)a.Ca[d+1]=Nm[c[d]];return a.Ca}if(a.aa===a.Wc)return Nm;a.rb&&b&&!a.Ca[16]&&(a.rb=!1);if(!a.rb){var c=a.A,d=c.tf,e,f,g,h,k;if(8==b)for(f=0;256>f;f++)g=d[f]||0,h=g<<2&252,k=g>>4&252,g=g>>10&252,a.Ca[f]=[h,k,g,255];else{var l=d&&d[255];e=null!=c.Tc[15]?c.Tc:Qm;for(f=0;16>f;f++)g=e[f]&63,l?(g|=
(c.Tc[20]&12)<<4,c.Tc[16]&128&&(g&=-49,g|=(c.Tc[20]&3)<<4),g=d[g],h=g<<2&252,k=g>>4&252,g=g>>10&252):(h=(g&4?170:0)|(g&32?85:0),k=(g&2?170:0)|(g&16?85:0),g=(g&1?170:0)|(g&8?85:0)),a.Ca[f]=[h,k,g,255]}a.rb=!0}return a.Ca}function bm(a,b,c,d){a.Uc=b;a.Jb=c;a.Tb=d}
function tn(a,b){var c=!1;if(window&&a.Uc&&(!b||a.U)){var d=0,e=a.Tb?a.Tb:8,f=xn(a);null!=a.Jb[0]&&yn(a,3,a.Jb[0],d,e,8,a.Uc,f)&&(c=!0);d=a.Tb?0:2048;e=a.Tb?a.Tb:9;null!=a.Jb[1]&&(yn(a,1,a.Jb[1],d,e,14,a.Uc,Lm,Mm)&&(c=!0),a.Tb&&yn(a,a.kb,a.Jb[1],0,a.Tb,14,a.Uc,f)&&(c=!0))}return c}function yn(a,b,c,d,e,f,g,h,k){var l=!1;null!=c&&(zn(a,b,c,d,e,f,g,h,k)&&(l=!0),a.pi&&zn(a,b<<1,c,d,e,f,g,h,k)&&(l=!0));return l}
function zn(a,b,c,d,e,f,g,h,k){var l=!1,n=b&1?0:1,q=a.Na[b],p=16>h.length?h.length:16;q||(q={Qc:e<<n,Rc:f<<n,Ne:Array(p),si:h.slice(0,p),yf:k,Rg:Array(p)});for(k=0;k<p;k++){var A=h[k],F=q.Ne[k]?q.si[k]:[];if(A[0]!==F[0]||A[1]!==F[1]||A[2]!==F[2]){var l=q,F=k,v=n,E=c,H=d,L=e,W=f,P=g,bb=[0,0,0,0],ia=document.createElement("canvas");ia.width=l.Qc<<4;ia.height=l.Rc<<4;for(var ja=ia.getContext("2d"),Ha=void 0,Xa=void 0,Ba=void 0,Ub=8>W||!H?W:8,wa=ja.createImageData(l.Qc,l.Rc),Ha=0;256>Ha;Ha++){for(Ba=
0;Ba<W;Ba++)for(var Ud=l.yf&&F&1&&Ba>=W-2,Rc=P[Ba<Ub?E+Ha*Ub+Ba:H+Ha*Ub+Ba-Ub],Vd=0;Vd<=v;Vd++)for(Xa=0;Xa<L;Xa++){var He=Xa<<v,Wd=(Ba<<v)+Vd,Ie=Ud||Rc&128>>(8<=Xa&&192<=Ha&&223>=Ha?7:Xa)?A:bb;An(wa,He,Wd,Ie);v&&An(wa,He+1,Wd,Ie)}ja.putImageData(wa,(Ha&15)*l.Qc,(Ha>>4)*l.Rc)}l.Ne[F]="#"+r(A[0],2)+r(A[1],2)+r(A[2],2);l.si[F]=A;l.Rg[F]=ia;l=!0}}a.Na[b]=q;return l}function Bn(a){0<a.Pa||0<=a.ka?0>a.bb&&(a.bb=0):a.bb=-1}
function wn(a){if(a.U){for(var b=10;15>=b;b++)if(null==a.C.qb[b])return;var c=a.C.qb[10],b=c&31,d=a.C.qb[11]&31,e=a.C.qb[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)$n(a);else{c=a.C.qb[15]+((a.C.qb[14]&63)<<8);a.ka!=c&&($n(a),a.ka=c);d=d-b+1;if(a.hg!=b||a.Be!=d)a.hg=b,a.Be=d;a.Za=e+1;Bn(a)}}}
function zn(a,b,c,d,e,f,g,h,k){var l=!1,n=b&1?0:1,q=a.Na[b],p=16>h.length?h.length:16;q||(q={Qc:e<<n,Rc:f<<n,Oe:Array(p),si:h.slice(0,p),zf:k,Rg:Array(p)});for(k=0;k<p;k++){var A=h[k],F=q.Oe[k]?q.si[k]:[];if(A[0]!==F[0]||A[1]!==F[1]||A[2]!==F[2]){var l=q,F=k,v=n,E=c,H=d,L=e,W=f,P=g,bb=[0,0,0,0],ia=document.createElement("canvas");ia.width=l.Qc<<4;ia.height=l.Rc<<4;for(var ja=ia.getContext("2d"),Ha=void 0,Xa=void 0,Ba=void 0,Ub=8>W||!H?W:8,wa=ja.createImageData(l.Qc,l.Rc),Ha=0;256>Ha;Ha++){for(Ba=
0;Ba<W;Ba++)for(var Vd=l.zf&&F&1&&Ba>=W-2,Rc=P[Ba<Ub?E+Ha*Ub+Ba:H+Ha*Ub+Ba-Ub],Wd=0;Wd<=v;Wd++)for(Xa=0;Xa<L;Xa++){var Ie=Xa<<v,Xd=(Ba<<v)+Wd,Je=Vd||Rc&128>>(8<=Xa&&192<=Ha&&223>=Ha?7:Xa)?A:bb;An(wa,Ie,Xd,Je);v&&An(wa,Ie+1,Xd,Je)}ja.putImageData(wa,(Ha&15)*l.Qc,(Ha>>4)*l.Rc)}l.Oe[F]="#"+r(A[0],2)+r(A[1],2)+r(A[2],2);l.si[F]=A;l.Rg[F]=ia;l=!0}}a.Na[b]=q;return l}function Bn(a){0<a.Pa||0<=a.ka?0>a.bb&&(a.bb=0):a.bb=-1}
function wn(a){if(a.U){for(var b=10;15>=b;b++)if(null==a.C.qb[b])return;var c=a.C.qb[10],b=c&31,d=a.C.qb[11]&31,e=a.C.qb[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)$n(a);else{c=a.C.qb[15]+((a.C.qb[14]&63)<<8);a.ka!=c&&($n(a),a.ka=c);d=d-b+1;if(a.hg!=b||a.Ce!=d)a.hg=b,a.Ce=d;a.Za=e+1;Bn(a)}}}
function $n(a){if(0<=a.ka){if(void 0!==a.fa){var b=a.fa[a.ka];if(b&131072){var b=b&-131073,c=a.ka%a.L,d=a.ka/a.L|0;a.U&&a.Na[a.U]&&(a.fb&&ao(a,c,d,b,a.fb),ao(a,c,d,b));a.fa[a.ka]=b}}a.ka=-1}}
function bo(a){var b,c=a.C;a.ff=!1;var d=c.$d[5];if(null!=d){b=1024;var e=0,f=c.$d[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.dd=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.kb==cm&&(e=3,c.dd=f&7)}d&8&&(b=1280);c=c.Ie[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.ff=!0));b|=e}return b}
function bo(a){var b,c=a.C;a.gf=!1;var d=c.$d[5];if(null!=d){b=1024;var e=0,f=c.$d[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.dd=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.kb==cm&&(e=3,c.dd=f&7)}d&8&&(b=1280);c=c.Je[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.gf=!0));b|=e}return b}
function co(a,b){var c=a.C;return c&&null!=b&&b!=c.vg?(c.Mg(b),a.ea.Mg(c.nb,c.ac,c.fh(),!0),!0):!1}
function vn(a,b){var c,d=a.Ia,e=a.C;if(e)if(1==e.kb)d=7;else if(5<=e.kb){var d=null,f=e.Ed>>2,g=32768<f?32768:f,h=e.$d[6];if(null!=h){switch(h&12){case 0:e.nb=655360;e.ac=f;d=255;break;case 4:e.nb=655360;e.ac=f;d=3==a.ya?15:16;break;case 8:e.nb=720896;e.ac=g;d=7;break;case 12:e.nb=753664,e.ac=g,d=3==a.ya?2:3}c=80==(e.$d[5]&80);!c||e.nb==a.nb&&e.ac==a.ac||(b=!0);f=e.Ie[1]&8;g=e.qb[6];g|=e.qb[7]&1?256:0;e.kb==cm&&(g|=e.qb[7]&32?512:0);var k=e.qb[9],l=e.qb[23];255!=d&&(h&1?655360==e.nb||c||l&1?e.$d[5]&
function vn(a,b){var c,d=a.Ia,e=a.C;if(e)if(1==e.kb)d=7;else if(5<=e.kb){var d=null,f=e.Ed>>2,g=32768<f?32768:f,h=e.$d[6];if(null!=h){switch(h&12){case 0:e.nb=655360;e.ac=f;d=255;break;case 4:e.nb=655360;e.ac=f;d=3==a.ya?15:16;break;case 8:e.nb=720896;e.ac=g;d=7;break;case 12:e.nb=753664,e.ac=g,d=3==a.ya?2:3}c=80==(e.$d[5]&80);!c||e.nb==a.nb&&e.ac==a.ac||(b=!0);f=e.Je[1]&8;g=e.qb[6];g|=e.qb[7]&1?256:0;e.kb==cm&&(g|=e.qb[7]&32?512:0);var k=e.qb[9],l=e.qb[23];255!=d&&(h&1?655360==e.nb||c||l&1?e.$d[5]&
64?d=k&31?143>=e.qb[18]?19:20:21:k&128||350>g?d=f?13:14:480<=g&&(d=3==a.ya?17:18):d=f?7-d:6:d-=f?2:0);c=bo(a)}}else e.gd&8&&(e.gd&2?(d=e.gd&16?6:5,e.gd&4||--d):(d=e.gd&1?3:1,e.gd&4&&--d));else a.Ia=null,null==d&&(d=a.wa);if(!un(a,d,b))return!1;co(a,c);return!0}
function un(a,b,c){if(null!=b&&(b!=a.Ia||c)){a.Ng=0;a.Ia=b;a.rb=!1;b=a.C||(7==b?a.ra:a.aa);if(b!=a.C||b.nb!=a.nb||b.ac!=a.ac){$n(a);if(a.nb){if(!Zb(a.ea,a.nb,a.ac))return!1;a.C&&(a.C.Hc=!1)}a.C=b;b.Hc=!0;a.nb=b.nb;a.ac=b.ac;if(!Sb(a.ea,b.nb,b.ac,3,b===a.A?b:null))return!1}a:{a.U=0;a.L=a.kd;a.X=a.ke;a.Db=a.L;a.jd=Fm[7][2];b=0;if(c=Fm[a.Ia])a.L=c[0],a.X=c[1],a.jd=c[2],b=c[3],a.U=c[4],4!=a.ya&&7!=a.ya||a.C!==a.A||3!=a.U||(7==a.A.qb[9]?a.X=43:a.U=a.kb);a.Yf=a.L*a.X|0;a.Vf=a.Yf/a.jd|0;a.Ub=a.Vf;a.td=0;
function un(a,b,c){if(null!=b&&(b!=a.Ia||c)){a.Ng=0;a.Ia=b;a.rb=!1;b=a.C||(7==b?a.ra:a.aa);if(b!=a.C||b.nb!=a.nb||b.ac!=a.ac){$n(a);if(a.nb){if(!Zb(a.ea,a.nb,a.ac))return!1;a.C&&(a.C.Hc=!1)}a.C=b;b.Hc=!0;a.nb=b.nb;a.ac=b.ac;if(!Sb(a.ea,b.nb,b.ac,3,b===a.A?b:null))return!1}a:{a.U=0;a.L=a.kd;a.X=a.ke;a.Db=a.L;a.jd=Fm[7][2];b=0;if(c=Fm[a.Ia])a.L=c[0],a.X=c[1],a.jd=c[2],b=c[3],a.U=c[4],4!=a.ya&&7!=a.ya||a.C!==a.A||3!=a.U||(7==a.A.qb[9]?a.X=43:a.U=a.kb);a.Yf=a.L*a.X|0;a.Wf=a.Yf/a.jd|0;a.Ub=a.Wf;a.td=0;
void 0!==b&&(a.Ub=(a.Ub<<1)+b|0,a.td=a.Ub+b>>1);if(a.Na.length){a.Ja=a.ua/a.L|0;a.Ka=a.Ea/a.X|0;if(a.U){b=a.Na[a.U];if(!b)break a;c=a.Na[a.U<<1];a.sn&&80==a.L?c&&a.Ja>=3*c.Qc>>2&&(a.U<<=1,b=c):(c&&a.Ja>=c.Qc&&(a.U<<=1,b=c),b&&(a.Ja=b.Qc,a.Ka=b.Rc));a.bc=a.tc=0;b&&(a.bc=a.L*b.Qc,a.tc=a.X*b.Rc)}else a.Ja=a.Ka=1,a.bc=a.L,a.tc=a.X;a.sb=a.ja.createImageData(a.bc,a.tc);a.eb=document.createElement("canvas");a.eb.width=a.bc;a.eb.height=a.tc;a.fb=a.eb.getContext("2d");a.me=a.ne=0;a.Dd=a.ua;a.Gd=a.Ea;b=a.ua-
a.L*a.Ja;c=a.Ea-a.X*a.Ka;0<b&&(a.me=b>>1,a.Dd-=b);0<c&&(a.ne=c>>1,a.Gd-=c);if(b||c)a.ja.fillStyle=a.pa.style.backgroundColor,a.ja.fillRect(0,0,a.ua,a.Ea)}}eo(a,!0);pn(a)}return!0}function An(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function fo(a){a.Pa=-1;a.Fa=!1;var b=a.Vf;if(void 0===a.fa||a.fa.length!=b)a.fa=Array(b)}function eo(a,b){b||(a.rb=!1);fo(a)}
function ao(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Na[a.U];h.yf&&(d=h.yf[d]);var k=g>>4&15;h.yf&&(k=h.yf[k]);e?(b*=h.Qc,c*=h.Rc,e.fillStyle=h.Ne[k],e.fillRect(b,c,h.Qc,h.Rc)):(b=b*a.Ja+a.me,c=c*a.Ka+a.ne,a.ja.fillStyle=h.Ne[k],a.ja.fillRect(b,c,a.Ja,a.Ka));g&256&&(k=(f&15)*h.Qc,f=(f>>4)*h.Rc,e?e.drawImage(h.Rg[d],k,f,h.Qc,h.Rc,b,c,h.Qc,h.Rc):a.ja.drawImage(h.Rg[d],k,f,h.Qc,h.Rc,b,c,a.Ja,a.Ka));g&512&&(f=a.hg,g=a.Be,e?(a.Za&&a.Za!==h.Rc&&(f=f*h.Rc/a.Za|0,g=g*h.Rc/a.Za|0),e.fillStyle=h.Ne[d],
e.fillRect(b,c+f,h.Qc,g)):(a.Za&&a.Za!==a.Ka&&(f=f*a.Ka/a.Za|0,g=g*a.Ka/a.Za|0),a.ja.fillStyle=h.Ne[d],a.ja.fillRect(b,c+f,a.Ja,g)))}
function pn(a,b){if(a.la.cc){var c=!1,d=a.C;d&&(d!==a.A?d.gd&8&&(c=!0):d.Nd&32&&(c=!0));if(c||b){if(b)fo(a);else if(void 0===a.fa)return;var e=!1;!(b||++a.Ng&15)&&0<=a.bb&&(a.bb++,e=!0);var f=0,g=a.Yf,h=a.nb,c=h,k=c+a.ac;19<=a.Ia&&(h=c=655360,k=c+65536);if(go(a,d)&8||d.of&&d.of<d.di)d.Xf=(d.qb[12]<<8)+d.qb[13]|0,d.of=0;var l=d.Xf;a.U&&(l<<=1);c+=l;l=a.Ub;5<=a.kb&&d.qb[19]&&d.qb[19]<<1!=d.qb[1]+1&&(a.Db=d.qb[19]<<(a.U?1:d.qb[20]&64?3:4),l=(a.Db*(a.X-1)+a.L)/a.jd|0,7>=a.Ia&&(l<<=1));c+l>k&&(l=k-c,0>
l&&(l=0));k=c+l;if(d=!b&&a.Fa){for(var d=a.ea,n=!0,q=c>>>d.La;0<l&&q<d.sa.length;)d.sa[q].Va&&(d.sa[q].Va=n=!1,d.sa[q].Ni=!0),l-=d.Nb,q++;d=n}if(d){if(!e)return;if(!a.Pa){if(0>a.ka)return;f=a.ka;g=f+1}}if(a.U){if(a.Na[a.U]){e=0;h=a.Pa=0;d=1048575;l=a.C.gd&32;5<=a.kb&&(l=a.C.Tc[16]&8);l&&(h=32768,d&=~h,a.bb&2||(d&=-65537));for(c+=f<<1;c<k&&f<g;)l=ec(a.ea,c),l|=65536,l&h&&(a.Pa++,l&=d),f==a.ka&&(l|=a.bb&1?131072:0),a.Fa&&l===a.fa[f]||(ao(a,f%a.L,f/a.L|0,l,a.fb),a.fa[f]=l,e++),c+=2,f++;a.Fa=!0;e&&a.fb&&
a.ja.drawImage(a.eb,0,0,a.bc,a.tc,a.me,a.ne,a.Dd,a.Gd);Bn(a)}}else if(a.td){for(var g=k,p,k=c,f=a.Pa=0,e=a.jd,h=16==e?65536:196608,d=16==e?1:2,l=xn(a,d),q=n=0,A=a.L,F=0,v=a.X,E=0;k<g;){p=ec(a.ea,k);if(a.Fa&&p===a.fa[f])n+=e;else{a.fa[f]=p;p=p>>8|(p&255)<<8;var H=h,L=16;n<A&&(A=n);for(var W=0;W<e;W++){var P=(p&(H>>=d))>>(L-=d);An(a.sb,n++,q,l[P])}n>F&&(F=n);q<v&&(v=q);q>=E&&(E=q+1)}k+=2;f++;if(n>=a.L){n=0;q+=2;if(q>a.X)break;q==a.X&&(q=1,k=c+a.td)}}a.Fa=!0;A<a.L&&(a.fb.putImageData(a.sb,0,0,A,v,F-
A,E-v),a.ja.drawImage(a.eb,0,0,a.L,a.X,0,0,a.ua,a.Ea))}else if(a.ff){g=h;e=a.Pa=0;h=xn(a,8);d=a.C.sd;n=l=0;q=a.L;A=0;F=a.X;v=0;E=a.C.Ie[4]&8?4:1;p=a.C.Tc[19]&15;for(H=a.Db>a.L?a.Db-a.L-p>>3:0;c<k;){f=d[c-g];W=4;p||(a.Fa&&f===a.fa[e]?(l+=W,W=0):a.fa[e]=f,e++);if(W){l<q&&(q=l);for(L=0;L<W;L++)An(a.sb,l++,n,h[f&255]),f>>=8;l>A&&(A=l);n<F&&(F=n);n>=v&&(v=n+1)}c+=E;if(l>=a.L){l=0;if(++n>a.X)break;c+=H}}p||(a.Fa=!0);q<a.L&&(a.fb.putImageData(a.sb,0,0,q,F,A-q,v-F),a.ja.drawImage(a.eb,0,0,a.L,a.X,0,0,a.ua,
a.Ea))}else{g=h;f=a.Pa=0;e=xn(a);h=a.C.sd;l=d=0;n=a.L;q=0;A=a.X;F=0;v=a.C.Tc[19]&15;for(E=a.Db>a.L?a.Db-a.L-v>>3:0;c<k;){p=c++-g;p=h[p];L=8;v?d?(H=a.L-d,L>H&&(L=H)):(p<<=v,L-=v,a.Fa=!1):(a.Fa&&p===a.fa[f]?(d+=L,L=0):a.fa[f]=p,f++);if(L){d<n&&(n=d);for(H=0;H<L;H++)W=Sm[p&2155905152]||0,An(a.sb,d++,l,e[W]),p<<=1;d>q&&(q=d);l<A&&(A=l);l>=F&&(F=l+1)}if(d>=a.L){d=0;if(++l>a.X)break;c+=E}}v||(a.Fa=!0);n<a.L&&(a.fb.putImageData(a.sb,0,0,n,A,q-n,F-A),a.ja.drawImage(a.eb,0,0,a.L,a.X,0,0,a.ua,a.Ea))}}}}
a.L*a.Ja;c=a.Ea-a.X*a.Ka;0<b&&(a.me=b>>1,a.Dd-=b);0<c&&(a.ne=c>>1,a.Gd-=c);if(b||c)a.ja.fillStyle=a.pa.style.backgroundColor,a.ja.fillRect(0,0,a.ua,a.Ea)}}eo(a,!0);pn(a)}return!0}function An(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function fo(a){a.Pa=-1;a.Fa=!1;var b=a.Wf;if(void 0===a.fa||a.fa.length!=b)a.fa=Array(b)}function eo(a,b){b||(a.rb=!1);fo(a)}
function ao(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Na[a.U];h.zf&&(d=h.zf[d]);var k=g>>4&15;h.zf&&(k=h.zf[k]);e?(b*=h.Qc,c*=h.Rc,e.fillStyle=h.Oe[k],e.fillRect(b,c,h.Qc,h.Rc)):(b=b*a.Ja+a.me,c=c*a.Ka+a.ne,a.ja.fillStyle=h.Oe[k],a.ja.fillRect(b,c,a.Ja,a.Ka));g&256&&(k=(f&15)*h.Qc,f=(f>>4)*h.Rc,e?e.drawImage(h.Rg[d],k,f,h.Qc,h.Rc,b,c,h.Qc,h.Rc):a.ja.drawImage(h.Rg[d],k,f,h.Qc,h.Rc,b,c,a.Ja,a.Ka));g&512&&(f=a.hg,g=a.Ce,e?(a.Za&&a.Za!==h.Rc&&(f=f*h.Rc/a.Za|0,g=g*h.Rc/a.Za|0),e.fillStyle=h.Oe[d],
e.fillRect(b,c+f,h.Qc,g)):(a.Za&&a.Za!==a.Ka&&(f=f*a.Ka/a.Za|0,g=g*a.Ka/a.Za|0),a.ja.fillStyle=h.Oe[d],a.ja.fillRect(b,c+f,a.Ja,g)))}
function pn(a,b){if(a.la.cc){var c=!1,d=a.C;d&&(d!==a.A?d.gd&8&&(c=!0):d.Nd&32&&(c=!0));if(c||b){if(b)fo(a);else if(void 0===a.fa)return;var e=!1;!(b||++a.Ng&15)&&0<=a.bb&&(a.bb++,e=!0);var f=0,g=a.Yf,h=a.nb,c=h,k=c+a.ac;19<=a.Ia&&(h=c=655360,k=c+65536);if(go(a,d)&8||d.pf&&d.pf<d.di){var l=(d.qb[12]<<8)+d.qb[13]|0;d.qe!==l&&(d.qe=l,eo(a));d.pf=0}l=d.qe;a.U&&(l<<=1);c+=l;l=a.Ub;5<=a.kb&&d.qb[19]&&d.qb[19]<<1!=d.qb[1]+1&&(a.Db=d.qb[19]<<(a.U?1:d.qb[20]&64?3:4),l=(a.Db*(a.X-1)+a.L)/a.jd|0,7>=a.Ia&&(l<<=
1));c+l>k&&(l=k-c,0>l&&(l=0));k=c+l;if(d=!b&&a.Fa){for(var d=a.ea,n=!0,q=c>>>d.La;0<l&&q<d.sa.length;)d.sa[q].Va&&(d.sa[q].Va=n=!1,d.sa[q].Ni=!0),l-=d.Nb,q++;d=n}if(d){if(!e)return;if(!a.Pa){if(0>a.ka)return;f=a.ka;g=f+1}}if(a.U){if(a.Na[a.U]){e=0;h=a.Pa=0;d=1048575;l=a.C.gd&32;5<=a.kb&&(l=a.C.Tc[16]&8);l&&(h=32768,d&=~h,a.bb&2||(d&=-65537));for(c+=f<<1;c<k&&f<g;)l=ec(a.ea,c),l|=65536,l&h&&(a.Pa++,l&=d),f==a.ka&&(l|=a.bb&1?131072:0),a.Fa&&l===a.fa[f]||(ao(a,f%a.L,f/a.L|0,l,a.fb),a.fa[f]=l,e++),c+=
2,f++;a.Fa=!0;e&&a.fb&&a.ja.drawImage(a.eb,0,0,a.bc,a.tc,a.me,a.ne,a.Dd,a.Gd);Bn(a)}}else if(a.td){for(var g=k,p,k=c,f=a.Pa=0,e=a.jd,h=16==e?65536:196608,d=16==e?1:2,l=xn(a,d),q=n=0,A=a.L,F=0,v=a.X,E=0;k<g;){p=ec(a.ea,k);if(a.Fa&&p===a.fa[f])n+=e;else{a.fa[f]=p;p=p>>8|(p&255)<<8;var H=h,L=16;n<A&&(A=n);for(var W=0;W<e;W++){var P=(p&(H>>=d))>>(L-=d);An(a.sb,n++,q,l[P])}n>F&&(F=n);q<v&&(v=q);q>=E&&(E=q+1)}k+=2;f++;if(n>=a.L){n=0;q+=2;if(q>a.X)break;q==a.X&&(q=1,k=c+a.td)}}a.Fa=!0;A<a.L&&(a.fb.putImageData(a.sb,
0,0,A,v,F-A,E-v),a.ja.drawImage(a.eb,0,0,a.L,a.X,0,0,a.ua,a.Ea))}else if(a.gf){g=h;e=a.Pa=0;h=xn(a,8);d=a.C.sd;n=l=0;q=a.L;A=0;F=a.X;v=0;E=a.C.Je[4]&8?4:1;p=a.C.Tc[19]&15;for(H=a.Db>a.L?a.Db-a.L-p>>3:0;c<k;){f=d[c-g];W=4;p||(a.Fa&&f===a.fa[e]?(l+=W,W=0):a.fa[e]=f,e++);if(W){l<q&&(q=l);for(L=0;L<W;L++)An(a.sb,l++,n,h[f&255]),f>>=8;l>A&&(A=l);n<F&&(F=n);n>=v&&(v=n+1)}c+=E;if(l>=a.L){l=0;if(++n>a.X)break;c+=H}}p||(a.Fa=!0);q<a.L&&(a.fb.putImageData(a.sb,0,0,q,F,A-q,v-F),a.ja.drawImage(a.eb,0,0,a.L,a.X,
0,0,a.ua,a.Ea))}else{g=h;f=a.Pa=0;e=xn(a);h=a.C.sd;l=d=0;n=a.L;q=0;A=a.X;F=0;v=a.C.Tc[19]&15;for(E=a.Db>a.L?a.Db-a.L-v>>3:0;c<k;){p=c++-g;p=h[p];L=8;v?d?(H=a.L-d,L>H&&(L=H)):(p<<=v,L-=v,a.Fa=!1):(a.Fa&&p===a.fa[f]?(d+=L,L=0):a.fa[f]=p,f++);if(L){d<n&&(n=d);for(H=0;H<L;H++)W=Sm[p&2155905152]||0,An(a.sb,d++,l,e[W]),p<<=1;d>q&&(q=d);l<A&&(A=l);l>=F&&(F=l+1)}if(d>=a.L){d=0;if(++l>a.X)break;c+=E}}v||(a.Fa=!0);n<a.L&&(a.fb.putImageData(a.sb,0,0,n,A,q-n,F-A),a.ja.drawImage(a.eb,0,0,a.L,a.X,0,0,a.ua,a.Ea))}}}}
function go(a,b){var c=0,d=Wc(a.F)-b.uh;0>d&&(b.uh=d,d=-d|0);d%b.ph>b.im&&(c|=1);d%b.sh>b.km&&(c|=9);b.di=d/b.sh|0;return c}m.Fl=function(a,b){return ho(this,this.ra,a,b)};m.$m=function(a,b,c){var d=this.ra;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.El=function(a,b){return io(this,this.ra,a,b)};m.Zm=function(a,b,c){jo(this,this.ra,a,b,c)};m.Gl=function(a,b){return ko(this,this.ra,b)};m.an=function(a,b,c){a=this.ra;x(this,a.port+4,b,c,"MODE");a.gd=b;vn(this,!1)};
m.Hl=function(a,b){return lo(this,this.ra,b)};m.ek=function(a,b,c){this.A.dg=this.A.dg&-4|b&3;x(this,a,b,c,"FEAT")};m.el=function(a,b){var c=this.A.Nd;b&&!z(this)||x(this,960,null,b,"ATC.INDX",c);return c};m.Ck=function(a,b){var c=this.A.Tc[this.A.Nd&31];b&&!z(this)||x(this,960,null,b,"ATC."+this.A.Sg[this.A.Nd&31],c);return c};
m.dk=function(a,b,c){var d=this.A,e=d.Nd&32;if(d.We){d.We=!1;var f=d.Nd&31;if(16<=f||!e)c&&!z(this)||x(this,a,b,c,"ATC."+d.Sg[f]),d.Tc[f]=b,eo(this,!1)}else d.Nd=b,x(this,a,b,c,"ATC.INDX"),d.We=!0,b&32&&!e&&tn(this,!0)&&pn(this,!0),d.Xf=(d.qb[12]<<8)+d.qb[13]|0,d.of=0};m.Rl=function(a,b){var c=0;if(5==this.kb)c=3-((this.A.tf&12)>>2),c=(this.Vc&1<<c)<<4-c;else{var d=this.A.sf[0];45!=(d&63)&&2880!=(d&4032)&&184320!=(d&258048)&&(c|=16)}c|=this.A.Lg&-17;this.A.Lg=c;x(this,962,null,b,"STATUS0",c);return c};
m.bn=function(a,b,c){this.A.tf=b;sn(this);x(this,962,b,c,"MISC")};m.Sl=function(a,b){var c=this.A.ki;x(this,963,null,b,"VGA_ENABLE",c);return c};m.kn=function(a,b,c){this.A.ki=b;x(this,963,b,c,"VGA_ENABLE")};m.Pl=function(a,b){var c=this.A.be;x(this,964,null,b,"SEQ.INDX",c);return c};m.hn=function(a,b,c){this.A.be=b;x(this,964,b,c,"SEQ.INDX")};m.Ol=function(a,b){var c=this.A.Ie[this.A.be];b&&!z(this)||x(this,965,null,b,"SEQ."+this.A.Ug[this.A.be],c);return c};
m.gn=function(a,b,c){c&&!z(this)||x(this,965,b,c,"SEQ."+this.A.Ug[this.A.be]);this.A.Ie[this.A.be]=b;switch(this.A.be){case 2:this.A.pb=Rm[b&15];break;case 4:co(this,bo(this))&&pn(this,!0)}};m.rl=function(a,b){var c=this.A.ji;b&&!z(this)||x(this,966,null,b,"DAC.MASK",c);return c};m.Jm=function(a,b,c){c&&!z(this)||x(this,966,b,c,"DAC.MASK");this.A.ji=b};m.sl=function(a,b){var c=this.A.Jg;b&&!z(this)||x(this,967,null,b,"DAC.STATE",c);return c};
m.Km=function(a,b,c){c&&!z(this)||x(this,967,b,c,"DAC.READ");this.A.pd=b;this.A.Jg=3;this.A.Kc=0};m.Lm=function(a,b,c){c&&!z(this)||x(this,968,b,c,"DAC.WRITE");this.A.pd=b;this.A.Jg=0;this.A.Kc=0};m.ql=function(a,b){var c=this.A.sf[this.A.pd]>>this.A.Kc&63;b&&!z(this)||x(this,969,null,b,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]",c);this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255);return c};
m.Im=function(a,b,c){a=this.A.sf[this.A.pd];c&&!z(this)||x(this,969,b,c,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]");b=a&~(63<<this.A.Kc)|(b&63)<<this.A.Kc;a!==b&&(this.A.sf[this.A.pd]=b,eo(this,!1));this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255)};m.Tl=function(a,b){var c=this.A.dg;x(this,970,null,b,"FEAT",c);return c};m.Vm=function(a,b,c){this.A.hk=b;x(this,970,b,c,"GRC2")};m.Ul=function(a,b){var c=this.A.tf;x(this,972,null,b,"MISC",c);return c};
m.Um=function(a,b,c){this.A.gk=b;x(this,972,b,c,"GRC1")};m.yl=function(a,b){var c=this.A.ae;x(this,974,null,b,"GRC.INDX",c);return c};m.Tm=function(a,b,c){this.A.ae=b;x(this,974,b,c,"GRC.INDX")};m.xl=function(a,b){var c=this.A.$d[this.A.ae];b&&!z(this)||x(this,975,null,b,"GRC."+this.A.Tg[this.A.ae],c);return c};
m.Sm=function(a,b,c){c&&!z(this)||x(this,975,b,c,"GRC."+this.A.Tg[this.A.ae]);this.A.$d[this.A.ae]=b;switch(this.A.ae){case 0:this.A.Tf=Rm[b&15];this.A.pe=this.A.Tf&~this.A.Zd;break;case 1:this.A.Zd=~Rm[b&15];this.A.pe=this.A.Tf&~this.A.Zd;break;case 2:this.A.nh=Rm[b&15]&-2139062144;break;case 3:case 5:co(this,bo(this));break;case 4:this.A.ci=(b&3)<<3;break;case 6:vn(this,!1);break;case 7:this.A.oh=Rm[b&15]&-2139062144;break;case 8:this.A.Mb=b|b<<8|b<<16|b<<24}};
m.kl=function(a,b){return ho(this,this.aa,a,b)};m.Dm=function(a,b,c){var d=this.aa;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.jl=function(a,b){return io(this,this.aa,a,b)};m.Cm=function(a,b,c){jo(this,this.aa,a,b,c)};m.ll=function(a,b){return ko(this,this.aa,b)};m.Em=function(a,b,c){a=this.aa;x(this,a.port+4,b,c,"MODE");a.gd=b;vn(this,!1)};m.il=function(a,b){var c=this.aa.rf;b&&!z(this)||x(this,a,null,b,this.aa.type+".COLOR",c);return c};
m.Bm=function(a,b,c){c&&!z(this)||x(this,a,b,c,this.aa.type+".COLOR");this.aa.rf!==b&&(this.aa.rf=b,eo(this,!1))};m.ml=function(a,b){return lo(this,this.aa,b)};function ho(a,b,c,d){var e;b.Hc&&(e=b.Ac);x(a,c,null,d,"CRTC.INDX",e);return e}function io(a,b,c,d){var e;b.Hc&&b.Ac<b.mh&&(e=b.qb[b.Ac]);d&&!z(a)||x(a,c,null,d,"CRTC."+b.jg[b.Ac],e);return e}
function jo(a,b,c,d,e){if(b.Ac<b.mh){e&&!z(a)||x(a,c,d,e,"CRTC."+b.jg[b.Ac]);b.qb[b.Ac]=d;if(12==b.Ac||13==b.Ac)go(a,b)&1?b.Xf=(b.qb[12]<<8)+b.qb[13]|0:b.of||(b.of=b.di);(9==b.Ac&&8!=b.Ig||18==b.Ac&&223==d)&&vn(a,!0);wn(a)}}function ko(a,b,c){var d=b.gd;x(a,b.port+4,null,c,"MODE",d);return d}function lo(a,b,c){var d=go(a,b);b===a.A?(d|=b.ma&48^48,b.We=!1):d=(b.ma^=9)|240;b.ma=d;x(a,b.port+6,null,c,b===a.A?"STATUS1":"STATUS",d);return d}
m.dk=function(a,b,c){var d=this.A,e=d.Nd&32;if(d.Xe){d.Xe=!1;var f=d.Nd&31;if(16<=f||!e)c&&!z(this)||x(this,a,b,c,"ATC."+d.Sg[f]),d.Tc[f]=b,eo(this,!1)}else d.Nd=b,x(this,a,b,c,"ATC.INDX"),d.Xe=!0,b&32&&!e&&tn(this,!0)&&pn(this,!0),a=(d.qb[12]<<8)+d.qb[13]|0,d.qe!=a&&(d.qe=a,eo(this)),d.pf=0};
m.Rl=function(a,b){var c=0;if(5==this.kb)c=3-((this.A.uf&12)>>2),c=(this.Vc&1<<c)<<4-c;else{var d=this.A.tf[0];45!=(d&63)&&2880!=(d&4032)&&184320!=(d&258048)&&(c|=16)}c|=this.A.Lg&-17;this.A.Lg=c;x(this,962,null,b,"STATUS0",c);return c};m.bn=function(a,b,c){this.A.uf=b;sn(this);x(this,962,b,c,"MISC")};m.Sl=function(a,b){var c=this.A.ki;x(this,963,null,b,"VGA_ENABLE",c);return c};m.kn=function(a,b,c){this.A.ki=b;x(this,963,b,c,"VGA_ENABLE")};
m.Pl=function(a,b){var c=this.A.be;x(this,964,null,b,"SEQ.INDX",c);return c};m.hn=function(a,b,c){this.A.be=b;x(this,964,b,c,"SEQ.INDX")};m.Ol=function(a,b){var c=this.A.Je[this.A.be];b&&!z(this)||x(this,965,null,b,"SEQ."+this.A.Ug[this.A.be],c);return c};m.gn=function(a,b,c){c&&!z(this)||x(this,965,b,c,"SEQ."+this.A.Ug[this.A.be]);this.A.Je[this.A.be]=b;switch(this.A.be){case 2:this.A.pb=Rm[b&15];break;case 4:co(this,bo(this))&&pn(this,!0)}};
m.rl=function(a,b){var c=this.A.ji;b&&!z(this)||x(this,966,null,b,"DAC.MASK",c);return c};m.Jm=function(a,b,c){c&&!z(this)||x(this,966,b,c,"DAC.MASK");this.A.ji=b};m.sl=function(a,b){var c=this.A.Jg;b&&!z(this)||x(this,967,null,b,"DAC.STATE",c);return c};m.Km=function(a,b,c){c&&!z(this)||x(this,967,b,c,"DAC.READ");this.A.pd=b;this.A.Jg=3;this.A.Kc=0};m.Lm=function(a,b,c){c&&!z(this)||x(this,968,b,c,"DAC.WRITE");this.A.pd=b;this.A.Jg=0;this.A.Kc=0};
m.ql=function(a,b){var c=this.A.tf[this.A.pd]>>this.A.Kc&63;b&&!z(this)||x(this,969,null,b,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]",c);this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255);return c};m.Im=function(a,b,c){a=this.A.tf[this.A.pd];c&&!z(this)||x(this,969,b,c,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]");b=a&~(63<<this.A.Kc)|(b&63)<<this.A.Kc;a!==b&&(this.A.tf[this.A.pd]=b,eo(this,!1));this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255)};
m.Tl=function(a,b){var c=this.A.dg;x(this,970,null,b,"FEAT",c);return c};m.Vm=function(a,b,c){this.A.hk=b;x(this,970,b,c,"GRC2")};m.Ul=function(a,b){var c=this.A.uf;x(this,972,null,b,"MISC",c);return c};m.Um=function(a,b,c){this.A.gk=b;x(this,972,b,c,"GRC1")};m.yl=function(a,b){var c=this.A.ae;x(this,974,null,b,"GRC.INDX",c);return c};m.Tm=function(a,b,c){this.A.ae=b;x(this,974,b,c,"GRC.INDX")};
m.xl=function(a,b){var c=this.A.$d[this.A.ae];b&&!z(this)||x(this,975,null,b,"GRC."+this.A.Tg[this.A.ae],c);return c};
m.Sm=function(a,b,c){c&&!z(this)||x(this,975,b,c,"GRC."+this.A.Tg[this.A.ae]);this.A.$d[this.A.ae]=b;switch(this.A.ae){case 0:this.A.Uf=Rm[b&15];this.A.pe=this.A.Uf&~this.A.Zd;break;case 1:this.A.Zd=~Rm[b&15];this.A.pe=this.A.Uf&~this.A.Zd;break;case 2:this.A.nh=Rm[b&15]&-2139062144;break;case 3:case 5:co(this,bo(this));break;case 4:this.A.ci=(b&3)<<3;break;case 6:vn(this,!1);break;case 7:this.A.oh=Rm[b&15]&-2139062144;break;case 8:this.A.Mb=b|b<<8|b<<16|b<<24}};
m.kl=function(a,b){return ho(this,this.aa,a,b)};m.Dm=function(a,b,c){var d=this.aa;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.jl=function(a,b){return io(this,this.aa,a,b)};m.Cm=function(a,b,c){jo(this,this.aa,a,b,c)};m.ll=function(a,b){return ko(this,this.aa,b)};m.Em=function(a,b,c){a=this.aa;x(this,a.port+4,b,c,"MODE");a.gd=b;vn(this,!1)};m.il=function(a,b){var c=this.aa.sf;b&&!z(this)||x(this,a,null,b,this.aa.type+".COLOR",c);return c};
m.Bm=function(a,b,c){c&&!z(this)||x(this,a,b,c,this.aa.type+".COLOR");this.aa.sf!==b&&(this.aa.sf=b,eo(this,!1))};m.ml=function(a,b){return lo(this,this.aa,b)};function ho(a,b,c,d){var e;b.Hc&&(e=b.Ac);x(a,c,null,d,"CRTC.INDX",e);return e}function io(a,b,c,d){var e;b.Hc&&b.Ac<b.mh&&(e=b.qb[b.Ac]);d&&!z(a)||x(a,c,null,d,"CRTC."+b.jg[b.Ac],e);return e}
function jo(a,b,c,d,e){if(b.Ac<b.mh){e&&!z(a)||x(a,c,d,e,"CRTC."+b.jg[b.Ac]);b.qb[b.Ac]=d;if(12==b.Ac||13==b.Ac)go(a,b)&1?(c=(b.qb[12]<<8)+b.qb[13]|0,b.qe!==c&&(b.qe=c,eo(a))):b.pf||(b.pf=b.di);(9==b.Ac&&8!=b.Ig||18==b.Ac&&223==d)&&vn(a,!0);wn(a)}}function ko(a,b,c){var d=b.gd;x(a,b.port+4,null,c,"MODE",d);return d}function lo(a,b,c){var d=go(a,b);b===a.A?(d|=b.ma&48^48,b.Xe=!1):d=(b.ma^=9)|240;b.ma=d;x(a,b.port+6,null,c,b===a.A?"STATUS1":"STATUS",d);return d}
var fn={948:Z.prototype.Fl,949:Z.prototype.El,952:Z.prototype.Gl,954:Z.prototype.Hl},gn={948:Z.prototype.$m,949:Z.prototype.Zm,952:Z.prototype.an},hn={980:Z.prototype.kl,981:Z.prototype.jl,984:Z.prototype.ll,985:Z.prototype.il,986:Z.prototype.ml},jn={980:Z.prototype.Dm,981:Z.prototype.Cm,984:Z.prototype.Em,985:Z.prototype.Bm},kn={960:Z.prototype.el,961:Z.prototype.Ck,962:Z.prototype.Rl,964:Z.prototype.Pl,965:Z.prototype.Ol,974:Z.prototype.yl,975:Z.prototype.xl},ln={954:Z.prototype.ek,960:Z.prototype.dk,
961:Z.prototype.dk,962:Z.prototype.bn,964:Z.prototype.hn,965:Z.prototype.gn,970:Z.prototype.Vm,972:Z.prototype.Um,974:Z.prototype.Tm,975:Z.prototype.Sm,986:Z.prototype.ek},mn={963:Z.prototype.Sl,966:Z.prototype.rl,967:Z.prototype.sl,969:Z.prototype.ql,970:Z.prototype.Tl,972:Z.prototype.Ul},nn={963:Z.prototype.kn,966:Z.prototype.Jm,967:Z.prototype.Km,968:Z.prototype.Lm,969:Z.prototype.Im};
Qa(function(){for(var a=nb(document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=jb(c),e=document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing &lt;canvas&gt; support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=ya().indexOf("MSIE")&&(c.onresize=function(a,b,c,d){return function(){b.style.height=
(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight),c.onresize());c.appendChild(e);var f=document.createElement("textarea");Ga("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"));c.appendChild(f);var g=e.getContext("2d"),d=new Z(d,e,g,f,c);mb(d,c)}});
function mo(a){this.W=a.adapter;switch(this.W){case 1:this.V=956;this.C=7;break;case 2:this.V=888;this.C=7;break;case 3:this.V=632;this.C=5;break;default:w("Unrecognized parallel adapter #"+this.W);return}this.A=this.B=null;Ua.call(this,"ParallelPort",a,mo,4194304);a=a.binding;"console"==a?this.B="":lb(this,a,no)}db(mo);var no="buffer";m=mo.prototype;m.Qb=function(a,b,c){switch(b){case no:return this.qa[b]=this.A=c,!0}return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");hc(b,this,oo,this.V);lc(b,this,po,this.V);rb(this)};m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.reset=function(){qo(this)};m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.L;c[b++]=this.Yb;c[b]=this.Af;N(a,0,c);return a.data()};m.restore=function(a){return qo(this,a[0])};
function qo(a,b){var c=0;void 0===b&&(b=[0,0,0]);a.L=b[c++];a.Yb=b[c++];a.Af=b[c];return!0}m.tl=function(a,b){var c=this.L;x(this,a,null,b,"DATA",c);return c};m.Ql=function(a,b){var c=this.Yb;x(this,a,null,b,"STAT",c);return c};m.pl=function(a,b){var c=this.Af;x(this,a,null,b,"CTRL",c);return c};
m.Mm=function(a,b,c){x(this,a,b,c,"DATA");this.L=b;this.Yb|=64;if(this.A)8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0;else if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}else a=!1;a&&(this.Yb&=-65);ro(this)};m.Hm=function(a,b,c){x(this,a,b,c,"CTRL");this.Af=b;ro(this)};function ro(a){a.N&&a.C&&(a.Af&16&&!(a.Yb&64)?eg(a.N,a.C):dg(a.N,a.C))}
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");hc(b,this,oo,this.V);lc(b,this,po,this.V);rb(this)};m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.reset=function(){qo(this)};m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.L;c[b++]=this.Yb;c[b]=this.Bf;N(a,0,c);return a.data()};m.restore=function(a){return qo(this,a[0])};
function qo(a,b){var c=0;void 0===b&&(b=[0,0,0]);a.L=b[c++];a.Yb=b[c++];a.Bf=b[c];return!0}m.tl=function(a,b){var c=this.L;x(this,a,null,b,"DATA",c);return c};m.Ql=function(a,b){var c=this.Yb;x(this,a,null,b,"STAT",c);return c};m.pl=function(a,b){var c=this.Bf;x(this,a,null,b,"CTRL",c);return c};
m.Mm=function(a,b,c){x(this,a,b,c,"DATA");this.L=b;this.Yb|=64;if(this.A)8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0;else if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}else a=!1;a&&(this.Yb&=-65);ro(this)};m.Hm=function(a,b,c){x(this,a,b,c,"CTRL");this.Bf=b;ro(this)};function ro(a){a.N&&a.C&&(a.Bf&16&&!(a.Yb&64)?eg(a.N,a.C):dg(a.N,a.C))}
var oo={0:mo.prototype.tl,1:mo.prototype.Ql,2:mo.prototype.pl},po={0:mo.prototype.Mm,2:mo.prototype.Hm};Qa(function(){for(var a=nb(document,"pcjs","parallel"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new mo(d);mb(d,c)}});
function so(a){this.ra=a.adapter;switch(this.ra){case 1:this.ka=1016;this.fa=4;break;case 2:this.ka=760;this.fa=3;break;default:w("Unrecognized serial adapter #"+this.ra);return}this.V=this.U=null;this.Ca=a.tabSize;this.ya=a.charBOL;this.X=0;Ua.call(this,"SerialPort",a,so,8388608);a=a.binding;"console"==a?this.U="":lb(this,a,to)}db(so);var to="buffer";m=so.prototype;m.wi=function(a,b){return a==this.de?(this.W=b,this):null};
m.Qb=function(a,b,c){var d=this;switch(b){case to:return this.qa[b]=this.V=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),uo(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;uo(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
@ -554,40 +555,40 @@ m.jn=function(a,b,c){x(this,a,b,c,this.B&128?"DLL":"THR");if(this.B&128)this.aa=
m.Ym=function(a,b,c){var d=this.C;x(this,a,b,c,"MCR");this.C=b;this.W&&(d^b)&3&&(a=this.W,b=this.C,(c=3==(b&3))?a.Hc||(d=!1,a.C&2||(a.reset(),y(a,"serial mouse reset"),d=!0),a.C&1||(y(a,"serial mouse ID requested"),d=!0),d&&(uo(a.N,[77,77]),y(a,"serial mouse ID sent")),zo(a),a.Hc=c):a.Hc&&(y(a,"serial mouse inactive"),Ao(a),a.Hc=c),a.C=b)};
var vo={0:so.prototype.Nl,1:so.prototype.zl,2:so.prototype.Al,3:so.prototype.Bl,4:so.prototype.Dl,5:so.prototype.Cl,6:so.prototype.Il},wo={0:so.prototype.jn,1:so.prototype.Wm,3:so.prototype.Xm,4:so.prototype.Ym};Qa(function(){for(var a=nb(document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new so(d);mb(d,c)}});function Bo(a){Ua.call(this,"Mouse",a,Bo,16777216);if(this.ka=a.serial)this.pa="SerialPort";this.ja=this.ga=this.Hc=!1;this.B=[];this.A=[];rb(this)}db(Bo);var rn=0;m=Bo.prototype;
m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;for(b=null;b=Eb(a,"Video",b);)this.B.push(b)};m.ic=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.pa&&!this.N){for(var c=null;(c=Eb(this.V,this.pa,c))&&(!c.wi||!(this.N=c.wi(this.ka,this))););if(this.N)for(this.A=[],c=0;c<this.B.length;c++){var d;d=this.B[c];d.W=this;(d=d.V)&&this.A.push(d)}else w(this.id+": "+this.pa+" "+this.ka+" unavailable")}this.Hc?zo(this):Ao(this)}return!0};
m.hc=function(a){return a?this.save():!0};m.reset=function(){Co(this)};m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.Hc;c[b++]=this.L;c[b++]=this.W;c[b++]=this.U;c[b++]=this.X;c[b++]=this.aa;c[b++]=this.fa;c[b]=this.C;N(a,0,c);return a.data()};m.restore=function(a){return Co(this,a[0])};function Co(a,b){var c=0;void 0===b&&(b=[!1,-1,-1,0,0,!1,!1,0]);var d=b[c++];a.Hc=d;a.L=b[c++];a.W=b[c++];a.U=b[c++];a.X=b[c++];a.aa=b[c++];a.fa=b[c++];a.C=b[c];return!0}m.Uf=function(a){this.ga=a};
m.hc=function(a){return a?this.save():!0};m.reset=function(){Co(this)};m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.Hc;c[b++]=this.L;c[b++]=this.W;c[b++]=this.U;c[b++]=this.X;c[b++]=this.aa;c[b++]=this.fa;c[b]=this.C;N(a,0,c);return a.data()};m.restore=function(a){return Co(this,a[0])};function Co(a,b){var c=0;void 0===b&&(b=[!1,-1,-1,0,0,!1,!1,0]);var d=b[c++];a.Hc=d;a.L=b[c++];a.W=b[c++];a.U=b[c++];a.X=b[c++];a.aa=b[c++];a.fa=b[c++];a.C=b[c];return!0}m.Vf=function(a){this.ga=a};
function zo(a){if(!a.ja)for(var b=0;b<a.A.length;b++)Do(a,a.A[b])&&(a.ja=!0)}function Ao(a){if(a.ja)for(var b=0;b<a.A.length;b++){var c=a.A[b];c&&(c.style.cursor="auto")}}function Do(a,b){return b?(b.addEventListener("mousemove",function(b){Eo(a,b)},!1),b.addEventListener("mousedown",function(b){Eo(a,b,!0)},!1),b.addEventListener("mouseup",function(b){Eo(a,b,!1)},!1),b.style.cursor="none",!0):!1}
function Eo(a,b,c){if(void 0!==c){var d;!(d=!1!==a.ga)&&(d=a.B.length)&&(d=a.B[0],d=d.Og?d.Ce(!0):!1);d||(a.ga=null);a.ie(b.button,c)}else{if(0>a.L||0>a.W)a.L=b.clientX,a.W=b.clientY;a.ga?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.clientX-a.L,d=b.clientY-a.W);a.L=b.clientX;a.W=b.clientY;a.Gf(c,d,a.L,a.W)}}
m.ie=function(a,b){if(this.Hc&&this.F&&this.F.la.Ib){var c="mouse button"+a+" "+(b?"dn":"up");switch(a){case rn:if(this.aa!=b){this.aa=b;Fo(this,c);return}break;case 2:if(this.fa!=b){this.fa=b;Fo(this,c);return}}y(this,c+": ignored")}};m.Gf=function(a,b,c,d){this.Hc&&this.F&&this.F.la.Ib&&(a||b)&&(this.U=a,this.X=b,Fo(this,null,c,d))};
function Eo(a,b,c){if(void 0!==c){var d;!(d=!1!==a.ga)&&(d=a.B.length)&&(d=a.B[0],d=d.Og?d.De(!0):!1);d||(a.ga=null);a.ie(b.button,c)}else{if(0>a.L||0>a.W)a.L=b.clientX,a.W=b.clientY;a.ga?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.clientX-a.L,d=b.clientY-a.W);a.L=b.clientX;a.W=b.clientY;a.Hf(c,d,a.L,a.W)}}
m.ie=function(a,b){if(this.Hc&&this.F&&this.F.la.Ib){var c="mouse button"+a+" "+(b?"dn":"up");switch(a){case rn:if(this.aa!=b){this.aa=b;Fo(this,c);return}break;case 2:if(this.fa!=b){this.fa=b;Fo(this,c);return}}y(this,c+": ignored")}};m.Hf=function(a,b,c,d){this.Hc&&this.F&&this.F.la.Ib&&(a||b)&&(this.U=a,this.X=b,Fo(this,null,c,d))};
function Fo(a,b,c,d){var e=64|(a.aa?32:0)|(a.fa?16:0)|(a.X&192)>>4|(a.U&192)>>6,f=a.U&63,g=a.X&63;z(a,8388608)&&y(a,(b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+t(e)+","+t(f)+","+t(g)+"]",0,!0);uo(a.N,[e,f,g]);a.U=a.X=0}Qa(function(){for(var a=nb(document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Bo(d);mb(d,c)}});
function Go(a,b,c){Ua.call(this,"Disk",{id:a.ue+".disk"+r(++Ho,4)},Go,2097152);this.controller=a;this.V=a.V;this.ha=a.ha;this.B=b;this.ea=b.name;this.af=b.af;this.qg=this.N=!1;Io(this,c,b.Bb,b.ub,b.lb,b.Ua);this.U=[];this.fa=[];this.L=null;this.ja=0;this.ga=!1;rb(this)}var Ho=0;db(Go);function Jo(a,b,c,d,e,f){this.za=a;this.lc=c;this.Vg=d;this.Bi=e;this.we=f}var Ko=[0,2],Lo=[24,2],Mo=[60,4],No=[0,2],Oo=[4,2],Po=[6,2],Qo=[28,2],Ro=[32,2],So=[34,2],To=[38,2],Uo=[44,4],Vo=[50,2];
function Wo(a,b,c){var d;c=c||2;var e=b&511,f=Xo(a.za,a.we[b>>9]);if(f){if(e+c<=f.length)return Yo(a.za,f,e,c);for(e=d=0;c--;)d|=Wo(a,b++,1)<<e,e+=8}return d}function Zo(a,b,c){return Wo(a,b[0]+(c||0),b[1])}function $o(a,b,c){for(var d=0;!c||b<c;){var e=Wo(a,b,1);if(!e)break;var f;f=a;var g=b+1,h=e,k="";for(h||(h=-1);h--;){var l=Wo(f,g++,1);if(!l)break;k+=String.fromCharCode(l)}f=k;if(!f)break;b+=1+e;if(d){if(e=Wo(a,b),g=a.A[e])g=g[0],a.zd[g]&&a.zd[g].ve[e].push(f)}else c||(a.fg=f);b+=2;d++}}
Jo.prototype.Si=function(a,b){var c=null;if(this.zd)for(var d in this.zd){var e=this.zd[d];if(a>=e.ei&&a<=e.ak){d=a-=e.ei;var f,g;for(g in e.ve){var h=e.ve[g],k=a-h[0];if(!k){c=this.fg+"!"+h[1];break}b&&0<k&&k<d&&(f=h,d=k)}!c&&f&&(c=this.fg+"!"+f[1]+"+"+u(d));break}}return c||this.lc+"+"+("0x"+r(a))};m=Go.prototype;m.Ic=function(a,b,c,d){this.ha=d};m.ic=function(a,b){b||!this.qg||this.N||(rb(this,!1),this.load(this.ea,this.W,null,this.Pk,this));return!0};m.Pk=function(){rb(this,!0)};
m.hc=function(a,b){if(this.N){var c,d=0;if(this.ga&&!za("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=ap(this,!1);)if(d=c[0]){this.controller.Oa('Unable to save "'+this.ea+'" (error '+d+")");break}b&&this.N&&(c="action=close&volume="+this.W,c+="&machine="+this.controller.ef(),c+="&user="+this.controller.je(),va(xa()+"/api/v1/disk?"+c,null,!0),this.N=!1);!d&&a&&this.controller.Oa(this.ea+" saved")}return!0};
function Go(a,b,c){Ua.call(this,"Disk",{id:a.ve+".disk"+r(++Ho,4)},Go,2097152);this.controller=a;this.V=a.V;this.ha=a.ha;this.B=b;this.ea=b.name;this.bf=b.bf;this.qg=this.N=!1;Io(this,c,b.Bb,b.ub,b.lb,b.Ua);this.U=[];this.fa=[];this.L=null;this.ja=0;this.ga=!1;rb(this)}var Ho=0;db(Go);function Jo(a,b,c,d,e,f){this.za=a;this.lc=c;this.Vg=d;this.Bi=e;this.xe=f}var Ko=[0,2],Lo=[24,2],Mo=[60,4],No=[0,2],Oo=[4,2],Po=[6,2],Qo=[28,2],Ro=[32,2],So=[34,2],To=[38,2],Uo=[44,4],Vo=[50,2];
function Wo(a,b,c){var d;c=c||2;var e=b&511,f=Xo(a.za,a.xe[b>>9]);if(f){if(e+c<=f.length)return Yo(a.za,f,e,c);for(e=d=0;c--;)d|=Wo(a,b++,1)<<e,e+=8}return d}function Zo(a,b,c){return Wo(a,b[0]+(c||0),b[1])}function $o(a,b,c){for(var d=0;!c||b<c;){var e=Wo(a,b,1);if(!e)break;var f;f=a;var g=b+1,h=e,k="";for(h||(h=-1);h--;){var l=Wo(f,g++,1);if(!l)break;k+=String.fromCharCode(l)}f=k;if(!f)break;b+=1+e;if(d){if(e=Wo(a,b),g=a.A[e])g=g[0],a.zd[g]&&a.zd[g].we[e].push(f)}else c||(a.fg=f);b+=2;d++}}
Jo.prototype.Si=function(a,b){var c=null;if(this.zd)for(var d in this.zd){var e=this.zd[d];if(a>=e.ei&&a<=e.ak){d=a-=e.ei;var f,g;for(g in e.we){var h=e.we[g],k=a-h[0];if(!k){c=this.fg+"!"+h[1];break}b&&0<k&&k<d&&(f=h,d=k)}!c&&f&&(c=this.fg+"!"+f[1]+"+"+u(d));break}}return c||this.lc+"+"+("0x"+r(a))};m=Go.prototype;m.Ic=function(a,b,c,d){this.ha=d};m.ic=function(a,b){b||!this.qg||this.N||(rb(this,!1),this.load(this.ea,this.W,null,this.Pk,this));return!0};m.Pk=function(){rb(this,!0)};
m.hc=function(a,b){if(this.N){var c,d=0;if(this.ga&&!za("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=ap(this,!1);)if(d=c[0]){this.controller.Oa('Unable to save "'+this.ea+'" (error '+d+")");break}b&&this.N&&(c="action=close&volume="+this.W,c+="&machine="+this.controller.ff(),c+="&user="+this.controller.je(),va(xa()+"/api/v1/disk?"+c,null,!0),this.N=!1);!d&&a&&this.controller.Oa(this.ea+" saved")}return!0};
function Io(a,b,c,d,e,f){a.mode=b;a.Bb=c;a.ub=d;a.lb=e;a.Ua=f;a.A=[];if("preload"!=a.mode){b=Array(a.Bb);for(c=0;c<b.length;c++){d=Array(a.ub);for(e=0;e<d.length;e++){f=Array(a.lb);for(var g=1;g<=f.length;g++)f[g-1]=bp(null,c,e,g,a.Ua,"local"==a.mode?0:null);d[e]=f}b[c]=d}a.A=b}a.aa=null}
m.load=function(a,b,c,d,e){var f=b;if(this.X)return!0;this.ea=a;this.W=b;this.li=fa(b);var g=this;this.X=d;this.ka=e||this.controller;if(c){var h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.Bb=d[0];g.ub=d[1];g.lb=d[2];g.Ua=512;b=g.Ua>>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.Bb);for(c=0;c<g.A.length;c++)for(var f=g.A[c]=Array(g.ub),F=0;F<f.length;F++)for(var v=f[F]=Array(g.lb),E=0;E<v.length;E++){for(var H=bp(null,c,F,E+1,g.Ua,0),L=H.data,W=0;W<b;W++,
e+=4)var P=L[W]=a.getInt32(e,!0),d=d+P&-1;H.Zc=b;v[E]=H}g.aa=d;b=g}else g.Oa("Unrecognized diskette format ("+c+" bytes)");g.X&&(g.X.call(g.controller,g.B,b,g.ea,g.W),g.X=null)};h.readAsArrayBuffer(c);return!0}0>b.indexOf("/api/v1/dump")&&(a=ga(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=cp(this,b),this.qg=!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"):ha(b,"/")&&
(c="dir"),f=xa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.af?"":d)+"&format=json"));return!!va(f,null,!0,function(a,b,c){dp(g,a,b,c)})};
function dp(a,b,c,d){var e=null;a.df=!1;var f=0>d&&a.V&&!a.V.la.cc;if(a.qg)d?a.controller.Oa('Unable to connect to disk "'+a.W+'" (error '+d+": "+c+")",f):(a.N=!0,ep(a),e=a);else if(d)a.controller.Oa('Unable to load disk "'+a.ea+'" (error '+d+": "+b+")",f);else{fb(a.controller.ue,b,c);try{if(0<fa(a.li,!0).toLowerCase().indexOf("-readonly"))a.df=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.df=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.ea]:
(c="dir"),f=xa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.bf?"":d)+"&format=json"));return!!va(f,null,!0,function(a,b,c){dp(g,a,b,c)})};
function dp(a,b,c,d){var e=null;a.ef=!1;var f=0>d&&a.V&&!a.V.la.cc;if(a.qg)d?a.controller.Oa('Unable to connect to disk "'+a.W+'" (error '+d+": "+c+")",f):(a.N=!0,ep(a),e=a);else if(d)a.controller.Oa('Unable to load disk "'+a.ea+'" (error '+d+": "+b+")",f);else{fb(a.controller.ve,b,c);try{if(0<fa(a.li,!0).toLowerCase().indexOf("-readonly"))a.ef=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.ef=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.ea]:
h=0>c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)w(h[0]);else{a.Bb=h.length;a.ub=h[0].length;a.lb=h[0][0].length;var k=h[0][0][0];a.Ua=k&&k.length||512;for(d=c=0;d<a.Bb;d++)for(f=0;f<a.ub;f++)for(g=0;g<a.lb;g++)if(k=h[d][f][g]){var l=k.length;void 0===l&&(l=k.length=512);var l=l>>2,n=k.pattern;void 0===n&&(n=k.pattern=0);var q=k.data;if(void 0===q){var p=k.bytes;if(void 0!==p&&p.length){for(var A=
l<<2,F=p.length;F<A;F++)p[F]=n;fp(k,p,0)}else q=[],n=k.pattern=n|n<<8|n<<16|n<<24,k.data=q;delete k.bytes}bp(k,d,f);for(A=0;A<q.length;A++)c=c+q[A]&-1}a.A=h;a.aa=c;ep(a);e=a}else w("Empty disk image: "+a.ea)}catch(v){w("Disk image error ("+b+"): "+v.message)}}a.X&&(a.X.call(a.ka,a.B,e,a.ea,a.W),a.X=null)}
function ep(a){var b,c,d={},e;if(a.C&&a.C.length)for(b=a.A,c=0;c<b.length;c++)for(var f=0;f<b[c].length;f++)for(e=0;e<b[c][f].length;e++){var g=b[c][f][e];g&&(delete g.file,delete g.mm)}a.C=[];d.Zf=d.Ff=0;b=a.Bb*a.ub*a.lb*a.Ua;a.N&&a.log("ignore any synchronous XMLHttpRequest warnings here (for now)");if(e=Xo(a,0)){d.Ua=Yo(a,e,11,2);f=!0;if(d.Ua!=a.Ua){f=!1;d.Ef=1;d.zg=12;d.jh=d.Ef+2;d.xg=1;d.Ua=a.Ua;if(163840==b&&254==gp(a,d,0,0))d.Ff=320,d.th=64,f=!0;else if(327680==b&&255==gp(a,d,0,0))d.Ff=640,
d.th=112,f=!0;else for(c=446,b=0;4>b;b++){if(128==Yo(a,e,c+0,1)){d.Zf=Yo(a,e,c+8,4);(e=Xo(a,d.Zf))&&(f=!0);break}c+=16}if(!f)return}d.Ff||(d.Ff=Yo(a,e,19,2)||Yo(a,e,32,4),d.Ef=Yo(a,e,14,2),d.jh=d.Ef+Yo(a,e,22,2)*Yo(a,e,16,1),d.th=Yo(a,e,17,2),d.xg=Yo(a,e,13,1));d.hh=d.jh+((32*d.th+(d.Ua-1))/d.Ua|0);d.hm=(d.Ff-d.hh)/d.xg|0;d.zg=4084>=d.hm?12:16;d.Sk=12==d.zg?4086:65526;b=[];for(e=d.jh;e<d.hh;e++)b.push(d.Zf+e);hp(a,d,a.li,"",b);for(b=0;b<a.C.length;b++){d=a.C[b];for(e=c=0;e<d.we.length;e++){var f=
d.we[e],g=c,h=a.ub*a.lb,k=f%h,l=k/a.lb|0,k=k%a.lb,n=void 0,q=void 0,p=void 0;(n=a.A[f/h|0])&&(q=n[l])&&(p=q[k])&&!p.file&&(p.file=d,p.mm=g);c+=a.Ua}e=d;if((ha(e.lc,".EXE")||ha(e.lc,".DLL")||ha(e.lc,".DRV"))&&23117==Zo(e,Ko)&&64==Zo(e,Lo)&&(c=Zo(e,Mo),17742==Zo(e,No,c))){l=Zo(e,Qo,c);g=Zo(e,So,c);h=Zo(e,Vo,c);if(g&&l){d=e;f=g+c;g=l;h=h||0;l=1;d.zd=[];for(d.A=[];g--;){if(k=Wo(d,f)<<h)n=Wo(d,f+2)||65536,d.zd[l++]={ei:k,ak:k+n-1,ve:[]};f+=8}d.zd[254]={ei:0,ak:0,ve:[]}}g=Zo(e,Oo,c);h=Zo(e,Po,c);if(g&&
h)for(d=e,f=g+=c,g=g+h,h=1;f<g;){k=Wo(d,f);l=k&255;if(!l)break;k=k>>8;f+=2;if(k)for(;l--;)Wo(d,f,1),254>=k?(n=k,q=Wo(d,f+1),f+=3):(n=Wo(d,f+3,1),q=Wo(d,f+4),f+=6),d.zd[n]&&(d.zd[n].ve[h]=[q]),d.A[h]=[n,q],h++;else h+=l}(g=Zo(e,To,c))&&$o(e,g+c);g=Zo(e,Uo,c);h=Zo(e,Ro,c);g&&h&&$o(e,g,g+h)}}}}
function hp(a,b,c,d,e){var f,g=a.C.length,h=b.Ua/32|0;b.zo=d+"\\";for(var k=0;k<e.length;k++)for(var l=e[k],n=0;n<h;n++){var q=a,p=b;f=n;p.te&&p.gi&&p.gi==l||(p.gi=l,p.te=Xo(q,p.gi));if(p.te){f*=32;var A=Yo(q,p.te,f,1);if(0==A)f=!1;else{if(229==A)p.lc=null;else{p.lc=na(ip(q,p.te,f+0,8));A=na(ip(q,p.te,f+8,3));A.length&&(p.lc+="."+A);p.Vg=Yo(q,p.te,f+11,1);p.Bi=Yo(q,p.te,f+28,2);p.Rk=Yo(q,p.te,f+26,2);f=p;var A=[],F=p.Rk;if(F){do{if(2>F)break;for(var v=p.hh+(F-2)*p.xg,E=0;E<p.xg;E++)A.push(p.Zf+v++);
F=gp(q,p,F,0)|gp(q,p,F,1)}while(F<=p.Sk)}f.we=A}f=!0}}else f=!1;if(!f){k=e.length;break}null!=b.lc&&"."!=b.lc&&".."!=b.lc&&(f=new Jo(a,0,b.lc,b.Vg,b.Bi,b.we),a.C.push(f))}for(e=a.C.length;g<e;g++)f=a.C[g],f.Vg&16&&f.we.length&&hp(a,b,c,d+"\\"+f.lc,f.we)}function gp(a,b,c,d){var e=0,f=8*b.Ua;c=b.zg*c+(d?8:0);var g=c/f|0;b.mi&&b.ih&&b.ih==b.Ef+g||(b.ih=b.Ef+g,b.mi=Xo(a,b.Zf+b.ih));b.mi&&(c=c%f|0,e=Yo(a,b.mi,c>>3,1),d?e=16==b.zg?e<<8:c&7?e<<4:(e&15)<<8:c&7&&(e>>=4));return e}
function ep(a){var b,c,d={},e;if(a.C&&a.C.length)for(b=a.A,c=0;c<b.length;c++)for(var f=0;f<b[c].length;f++)for(e=0;e<b[c][f].length;e++){var g=b[c][f][e];g&&(delete g.file,delete g.mm)}a.C=[];d.Zf=d.Gf=0;b=a.Bb*a.ub*a.lb*a.Ua;a.N&&a.log("ignore any synchronous XMLHttpRequest warnings here (for now)");if(e=Xo(a,0)){d.Ua=Yo(a,e,11,2);f=!0;if(d.Ua!=a.Ua){f=!1;d.Ff=1;d.zg=12;d.jh=d.Ff+2;d.xg=1;d.Ua=a.Ua;if(163840==b&&254==gp(a,d,0,0))d.Gf=320,d.th=64,f=!0;else if(327680==b&&255==gp(a,d,0,0))d.Gf=640,
d.th=112,f=!0;else for(c=446,b=0;4>b;b++){if(128==Yo(a,e,c+0,1)){d.Zf=Yo(a,e,c+8,4);(e=Xo(a,d.Zf))&&(f=!0);break}c+=16}if(!f)return}d.Gf||(d.Gf=Yo(a,e,19,2)||Yo(a,e,32,4),d.Ff=Yo(a,e,14,2),d.jh=d.Ff+Yo(a,e,22,2)*Yo(a,e,16,1),d.th=Yo(a,e,17,2),d.xg=Yo(a,e,13,1));d.hh=d.jh+((32*d.th+(d.Ua-1))/d.Ua|0);d.hm=(d.Gf-d.hh)/d.xg|0;d.zg=4084>=d.hm?12:16;d.Sk=12==d.zg?4086:65526;b=[];for(e=d.jh;e<d.hh;e++)b.push(d.Zf+e);hp(a,d,a.li,"",b);for(b=0;b<a.C.length;b++){d=a.C[b];for(e=c=0;e<d.xe.length;e++){var f=
d.xe[e],g=c,h=a.ub*a.lb,k=f%h,l=k/a.lb|0,k=k%a.lb,n=void 0,q=void 0,p=void 0;(n=a.A[f/h|0])&&(q=n[l])&&(p=q[k])&&!p.file&&(p.file=d,p.mm=g);c+=a.Ua}e=d;if((ha(e.lc,".EXE")||ha(e.lc,".DLL")||ha(e.lc,".DRV"))&&23117==Zo(e,Ko)&&64==Zo(e,Lo)&&(c=Zo(e,Mo),17742==Zo(e,No,c))){l=Zo(e,Qo,c);g=Zo(e,So,c);h=Zo(e,Vo,c);if(g&&l){d=e;f=g+c;g=l;h=h||0;l=1;d.zd=[];for(d.A=[];g--;){if(k=Wo(d,f)<<h)n=Wo(d,f+2)||65536,d.zd[l++]={ei:k,ak:k+n-1,we:[]};f+=8}d.zd[254]={ei:0,ak:0,we:[]}}g=Zo(e,Oo,c);h=Zo(e,Po,c);if(g&&
h)for(d=e,f=g+=c,g=g+h,h=1;f<g;){k=Wo(d,f);l=k&255;if(!l)break;k=k>>8;f+=2;if(k)for(;l--;)Wo(d,f,1),254>=k?(n=k,q=Wo(d,f+1),f+=3):(n=Wo(d,f+3,1),q=Wo(d,f+4),f+=6),d.zd[n]&&(d.zd[n].we[h]=[q]),d.A[h]=[n,q],h++;else h+=l}(g=Zo(e,To,c))&&$o(e,g+c);g=Zo(e,Uo,c);h=Zo(e,Ro,c);g&&h&&$o(e,g,g+h)}}}}
function hp(a,b,c,d,e){var f,g=a.C.length,h=b.Ua/32|0;b.zo=d+"\\";for(var k=0;k<e.length;k++)for(var l=e[k],n=0;n<h;n++){var q=a,p=b;f=n;p.ue&&p.gi&&p.gi==l||(p.gi=l,p.ue=Xo(q,p.gi));if(p.ue){f*=32;var A=Yo(q,p.ue,f,1);if(0==A)f=!1;else{if(229==A)p.lc=null;else{p.lc=na(ip(q,p.ue,f+0,8));A=na(ip(q,p.ue,f+8,3));A.length&&(p.lc+="."+A);p.Vg=Yo(q,p.ue,f+11,1);p.Bi=Yo(q,p.ue,f+28,2);p.Rk=Yo(q,p.ue,f+26,2);f=p;var A=[],F=p.Rk;if(F){do{if(2>F)break;for(var v=p.hh+(F-2)*p.xg,E=0;E<p.xg;E++)A.push(p.Zf+v++);
F=gp(q,p,F,0)|gp(q,p,F,1)}while(F<=p.Sk)}f.xe=A}f=!0}}else f=!1;if(!f){k=e.length;break}null!=b.lc&&"."!=b.lc&&".."!=b.lc&&(f=new Jo(a,0,b.lc,b.Vg,b.Bi,b.xe),a.C.push(f))}for(e=a.C.length;g<e;g++)f=a.C[g],f.Vg&16&&f.xe.length&&hp(a,b,c,d+"\\"+f.lc,f.xe)}function gp(a,b,c,d){var e=0,f=8*b.Ua;c=b.zg*c+(d?8:0);var g=c/f|0;b.mi&&b.ih&&b.ih==b.Ff+g||(b.ih=b.Ff+g,b.mi=Xo(a,b.Zf+b.ih));b.mi&&(c=c%f|0,e=Yo(a,b.mi,c>>3,1),d?e=16==b.zg?e<<8:c&7?e<<4:(e&15)<<8:c&7&&(e>>=4));return e}
function Xo(a,b){var c=a.ub*a.lb,d=b/c|0;return d<a.Bb?(c=b%c,a.seek(d,c/a.lb|0,c%a.lb+1)):null}function Yo(a,b,c,d){for(var e=0,f=0;d--;){var g=a.read(b,c++);if(0>g)break;e|=g<<f;f+=8}return e}function ip(a,b,c,d){for(var e="";d--;){var f=a.read(b,c++);if(0>=f)break;e+=String.fromCharCode(f)}return e}function bp(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Tk=b;a.Uk=c;a.wd=a.Zc=0;a.Va=!1;return a}
function cp(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Ua;c+="&machine="+a.controller.ef();c+="&user="+a.controller.je();return xa()+"/api/v1/disk?"+c}
function jp(a,b,c,d,e,f,g){if(a.N){var h;h="action=read&volume="+a.W;h+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Ua;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.controller.ef());h+="&user="+a.controller.je();va(xa()+"/api/v1/disk?"+h,null,f,function(h,l,n){h=[b,c,d,e,f,g];var q=!1,p=h[0],A=h[1],F=h[2],v=h[3];if(!n){l=JSON.parse(l);for(q=0;v--;){var E=a.seek(p,A,F,!0);if(!E)break;fp(E,l,q);q+=E.length;F++}q=h[4]}(h=h[5])&&h(n,q)})}else g&&g(-1,!1)}
function kp(a,b,c,d,e,f,g){if(a.N){var h={};a.ga=!0;h.action="write";h.volume=a.W;h.chs=a.Bb+":"+a.ub+":"+a.lb+":"+a.Ua;h.addr=b+":"+c+":"+d+":"+e;h.machine=a.controller.ef();h.user=a.controller.je();h.data=JSON.stringify(f);va(xa()+"/api/v1/disk",h,g,function(f,h,n){var q=[b,c,d,e,g];f=q[0];h=q[1];var p=q[2],A=q[3],q=q[4];a.ga=!1;if(0<=f&&f<a.A.length&&0<=h&&h<a.A[f].length)for(p=p-1;0<A--&&0<=p&&p<a.A[f][h].length;p++){var F=a.A[f][h][p];n?lp(a,F,!1):F.Va||(F.wd=F.Zc=0)}q&&mp(a)})}return!1}
function cp(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Ua;c+="&machine="+a.controller.ff();c+="&user="+a.controller.je();return xa()+"/api/v1/disk?"+c}
function jp(a,b,c,d,e,f,g){if(a.N){var h;h="action=read&volume="+a.W;h+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Ua;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.controller.ff());h+="&user="+a.controller.je();va(xa()+"/api/v1/disk?"+h,null,f,function(h,l,n){h=[b,c,d,e,f,g];var q=!1,p=h[0],A=h[1],F=h[2],v=h[3];if(!n){l=JSON.parse(l);for(q=0;v--;){var E=a.seek(p,A,F,!0);if(!E)break;fp(E,l,q);q+=E.length;F++}q=h[4]}(h=h[5])&&h(n,q)})}else g&&g(-1,!1)}
function kp(a,b,c,d,e,f,g){if(a.N){var h={};a.ga=!0;h.action="write";h.volume=a.W;h.chs=a.Bb+":"+a.ub+":"+a.lb+":"+a.Ua;h.addr=b+":"+c+":"+d+":"+e;h.machine=a.controller.ff();h.user=a.controller.je();h.data=JSON.stringify(f);va(xa()+"/api/v1/disk",h,g,function(f,h,n){var q=[b,c,d,e,g];f=q[0];h=q[1];var p=q[2],A=q[3],q=q[4];a.ga=!1;if(0<=f&&f<a.A.length&&0<=h&&h<a.A[f].length)for(p=p-1;0<A--&&0<=p&&p<a.A[f][h].length;p++){var F=a.A[f][h][p];n?lp(a,F,!1):F.Va||(F.wd=F.Zc=0)}q&&mp(a)})}return!1}
function lp(a,b,c){b.Va=!0;var d=a.U.indexOf(b);0<=d&&(a.U.splice(d,1),a.fa.splice(d,1));a.U.push(b);a.fa.push(pa());c&&mp(a)}function mp(a){if(a.U.length){var b=a.fa[0]+2E3;a.L&&a.ja<b&&(clearTimeout(a.L),a.L=null);if(!a.L){var c=pa(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.L=setTimeout(function(){ap(a,!0)},b);a.ja=c+b}}else a.L&&(clearTimeout(a.L),a.L=null)}
function ap(a,b){b&&(a.L=null);var c=a.U[0];if(c){for(var d=c.Tk,e=c.Uk,c=c.sector,f=0,g=[],h=c-1;h<a.A[d][e].length;h++){var k=a.A[d][e][h];if(!k.Va)break;var l=a.U.indexOf(k);a.U.splice(l,1);a.fa.splice(l,1);g=g.concat(np(k));k.Va=!1;f++}d=kp(a,d,e,c,f,g,b);return b||d}return!1}m.info=function(){return this.A.length?[this.A.length,this.A[0].length,this.A[0][0].length,this.A[0][0][0].length]:[0,0,0,0]};
m.seek=function(a,b,c,d,e){var f=null,g=this.B,h=this.A[a];if(h){var k=h[b];if(!k&&g.Xg&&b<g.ub)for(k=h[b]=Array(g.ge),h=0;h<k.length;h++)k[h]=bp(null,a,b,h+1,g.Hb,0);if(k){for(h=0;h<k.length;h++)if(k[h]&&k[h].sector==c){f=k[h];if(null===f.pattern)if(d)f.pattern=0;else{for(d=1;++h<k.length;)null===k[h].pattern&&d++;jp(this,a,b,c,d,null!=e,function(a,b){a&&(f=null);e&&e(f,b)});return e?null:f}break}!f&&g.Xg&&9==g.xb&&(f=k[h]=bp(null,a,b,g.xb,g.Hb,0))}}e&&e(f,!1);return f};
function fp(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 np(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}m.read=function(a,b){var c=-1;if(a&&b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c};
m.write=function(a,b,c){if(this.df)return!1;if(b<a.length){if(c!=this.read(a,b,!0)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Zc?f<a.wd?(a.Zc+=a.wd-f,a.wd=f):f>=a.wd+a.Zc&&(a.Zc+=f-(a.wd+a.Zc)+1):(a.wd=f,a.Zc=1);d[f]=d[f]&~(255<<b)|c<<b;this.N&&lp(this,a,!0)}return!0}return null};
m.save=function(){var a=0,b=[];b[a++]=[this.W,this.aa,this.Bb,this.ub,this.lb,this.Ua];if(!this.N&&!this.df)for(var c=this.A,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.Zc){for(var h=[],k=0,l=g.wd,n=g.wd+g.Zc;l<n;)h[k++]=g.data[l++];b[a++]=[d,e,f,g.wd,h]}}return b};
m.write=function(a,b,c){if(this.ef)return!1;if(b<a.length){if(c!=this.read(a,b,!0)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Zc?f<a.wd?(a.Zc+=a.wd-f,a.wd=f):f>=a.wd+a.Zc&&(a.Zc+=f-(a.wd+a.Zc)+1):(a.wd=f,a.Zc=1);d[f]=d[f]&~(255<<b)|c<<b;this.N&&lp(this,a,!0)}return!0}return null};
m.save=function(){var a=0,b=[];b[a++]=[this.W,this.aa,this.Bb,this.ub,this.lb,this.Ua];if(!this.N&&!this.ef)for(var c=this.A,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.Zc){for(var h=[],k=0,l=g.wd,n=g.wd+g.Zc;l<n;)h[k++]=g.data[l++];b[a++]=[d,e,f,g.wd,h]}}return b};
m.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.A.length&&6<=e.length?Io(this,"local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.aa&&e[1]!=this.aa&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.aa+")",b=-2));for(this.A.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],k=g[f++],l=g[f++];if(h>=this.A.length||k>=this.A[h].length||l>=this.A[h][k].length){c="sector (CHS="+h+":"+k+":"+l+") out of range ("+
b+" changes applied)";b=-1;break}if(this.df){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][l]){for(k=h.data.length;k<e;)h.data[k++]=h.pattern;k=0;h.wd=e;for(h.Zc=f.length;e<g;)h.data[e++]=f[k++];b++}}}0>b?-2!=b&&this.controller.Oa("Unable to restore disk '"+this.ea+": "+c):ep(this);return b};
b+" changes applied)";b=-1;break}if(this.ef){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][l]){for(k=h.data.length;k<e;)h.data[k++]=h.pattern;k=0;h.wd=e;for(h.Zc=f.length;e<g;)h.data[e++]=f[k++];b++}}}0>b?-2!=b&&this.controller.Oa("Unable to restore disk '"+this.ea+": "+c):ep(this);return b};
m.toJSON=function(){var a;a=0;for(var b;b=Xo(this,a++);)op(b);a=JSON.stringify(this.A,function(a,b){return"file"==a?void 0:b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")};
function op(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}function pp(a){Ua.call(this,"FDC",a,pp,524288);this.dmaRead=this.wk;this.dmaWrite=this.xk;this.dmaFormat=this.Lk;this.U=a.autoMount||null;this.B=[];this.ga=!Ga("Mobi")&&window&&"FileReader"in window}db(pp);aa={};
var qp={3:{Ud:3,he:0,name:aa.Yn},4:{Ud:2,he:1,name:aa.Wn},5:{Ud:9,he:7,name:aa.ho},6:{Ud:9,he:7,name:aa.Rn},7:{Ud:2,he:0,name:aa.Tn},8:{Ud:1,he:2,name:aa.Xn},10:{Ud:2,he:7,name:aa.Sn},13:{Ud:6,he:7,name:aa.Dn},15:{Ud:3,he:0,name:aa.Vn}};m=pp.prototype;
@ -597,43 +598,43 @@ else d.Oa("No drive selected")};return!0;case "mountDrive":if(!this.ga){c.parent
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;this.N=Eb(a,"ChipSet");if((this.U=Nc(this.V,"autoMount")||this.U)&&"string"==typeof this.U)try{this.U=eval("("+this.U+")")}catch(e){w("FDC auto-mount error: "+e.message+" ("+this.U+")"),this.U=null}tp(this);hc(b,this,up);lc(b,this,vp);this.ga&&wp(this,"Local Disk","?");wp(this,"Remote Disk","??");xp(this)||rb(this)};
m.ic=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.V.bh){this.B=[];for(var c=0;c<this.A.length;c++)yp(this,c,!0);xp(this,!0)}}else if(!this.restore(a))return!1;if(c=this.qa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.ja;d++){var e=document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.ja&&(c.value="0",rp(this,0))}}return!0};m.hc=function(a){return a?this.save():!0};
m.reset=function(){tp(this)};
m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.gb;c[b++]=0;c[b++]=this.ma;c[b++]=this.W;c[b++]=this.L;c[b++]=this.C;c[b++]=this.aa;for(var d=b++,e=0,f=[],g=0;g<this.A.length;g++){var h=e++,k=this.A[g],l=0,n=[];n[l++]=k.Cb;n[l++]=[k.name,k.Bb,k.ub,k.lb,k.Ua,k.af,k.yg,k.Mf,k.Nf];n[l++]=k.jb;n[l++]=k.fe+100;n[l++]=k.Rb;n[l++]=k.xb;n[l++]=k.ge;n[l++]=k.Hb;n[l++]=k.cb;n[l++]=k.Ze;n[l++]=k.jk;n[l]=k.Ke;f[h]=n}c[d]=f;d=b++;for(e=0;e<this.A.length;e++)f=this.A[e],f.za&&zp(this,f.Ke,f.za);c[d]=
m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.gb;c[b++]=0;c[b++]=this.ma;c[b++]=this.W;c[b++]=this.L;c[b++]=this.C;c[b++]=this.aa;for(var d=b++,e=0,f=[],g=0;g<this.A.length;g++){var h=e++,k=this.A[g],l=0,n=[];n[l++]=k.Cb;n[l++]=[k.name,k.Bb,k.ub,k.lb,k.Ua,k.bf,k.yg,k.Nf,k.Of];n[l++]=k.jb;n[l++]=k.fe+100;n[l++]=k.Rb;n[l++]=k.xb;n[l++]=k.ge;n[l++]=k.Hb;n[l++]=k.cb;n[l++]=k.$e;n[l++]=k.jk;n[l]=k.Le;f[h]=n}c[d]=f;d=b++;for(e=0;e<this.A.length;e++)f=this.A[e],f.za&&zp(this,f.Le,f.za);c[d]=
this.B;c[b++]=this.X;c[b]=this.kc;N(a,0,c);return a.data()};m.restore=function(a){return tp(this,a[0])};
function tp(a,b){var c=0,d,e=!0;void 0===b&&(b=[0,0,128,Array(9),0,0,0,[]]);a.gb=b[c++];c++;a.ma=b[c++];a.W=b[c++];a.L=b[c++];a.C=b[c++];a.aa=b[c++];var f=b[c++];d=b[c++];null!=d&&(a.B=d);void 0===a.A&&(a.ja=4,a.N&&(a.ja=+Uk(a.N,vk,void 0)),a.A=Array(4));for(d=0;d<a.A.length;d++){var g=a.A[d];if(void 0===g){var g=a.A[d]={},h;if(a.N)a:{h=a.N;if(d<+Uk(h,vk,void 0)){if(!h.ja){h=360;break a}if(d<h.ja.length){h=h.ja[d];break a}}h=0}else h=0;switch(h){case 160:case 180:g.ub=1;default:g.Bb=40;g.lb=9;break;
case 720:g.Bb=80;g.lb=9;break;case 1200:g.Bb=80;g.lb=15;break;case 1440:g.Bb=80,g.lb=18}}var k=a,l=d,n=f[d],q=0;h=!0;g.gb=l;g.bd=g.Ze=!1;void 0===n&&(n=[192,!0,0,2,0]);"boolean"==typeof n[1]&&(n[1]=["Floppy Drive",g.Bb||40,g.ub||n[3],g.lb||9,g.Ua||512,n[1],g.yg,g.Mf,g.Nf]);g.Cb=n[q++];var p=n[q++];g.name=p[0];g.Bb=p[1];g.ub=p[2];g.lb=p[3];g.Ua=p[4];g.af=p[5];(g.yg=p[6])?(g.Mf=p[7],g.Nf=p[8]):(g.yg=g.Bb,g.Mf=g.ub,g.Nf=g.lb);g.jb=n[q++];g.fe=n[q++];g.Rb=n[q++];g.fe=100<=g.fe?g.fe-100:g.fe-g.Rb;g.xb=
n[q++];g.ge=n[q++];g.Hb=n[q++];g.cb=n[q++];g.ob=null;g.za||(g.Ke="");p=n[q++];102==p&&(p=!1);if("boolean"==typeof p){var A=p,p=n[q++],n=n[q];A?(q=p,p=k.A[l],yp(k,l,!0,!0),p.Ze=!0,l=new Go(k,p,"preload"),k.Hi(p,l,q,n,!0)):Ap(k,l,p,n,!0)?g.za&&n&&Bp(k,p,n,g.za):rb(k,!1)}else void 0!==p&&g.za&&0>g.za.restore(p)&&(h=!1);h&&g.za&&void 0!==g.cb&&(g.ob=g.za.seek(g.Rb,g.jb,g.xb));h||(e=!1)}a.X=b[c++]||0;a.kc=b[c]||0;return e}m.Gi=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
case 720:g.Bb=80;g.lb=9;break;case 1200:g.Bb=80;g.lb=15;break;case 1440:g.Bb=80,g.lb=18}}var k=a,l=d,n=f[d],q=0;h=!0;g.gb=l;g.bd=g.$e=!1;void 0===n&&(n=[192,!0,0,2,0]);"boolean"==typeof n[1]&&(n[1]=["Floppy Drive",g.Bb||40,g.ub||n[3],g.lb||9,g.Ua||512,n[1],g.yg,g.Nf,g.Of]);g.Cb=n[q++];var p=n[q++];g.name=p[0];g.Bb=p[1];g.ub=p[2];g.lb=p[3];g.Ua=p[4];g.bf=p[5];(g.yg=p[6])?(g.Nf=p[7],g.Of=p[8]):(g.yg=g.Bb,g.Nf=g.ub,g.Of=g.lb);g.jb=n[q++];g.fe=n[q++];g.Rb=n[q++];g.fe=100<=g.fe?g.fe-100:g.fe-g.Rb;g.xb=
n[q++];g.ge=n[q++];g.Hb=n[q++];g.cb=n[q++];g.ob=null;g.za||(g.Le="");p=n[q++];102==p&&(p=!1);if("boolean"==typeof p){var A=p,p=n[q++],n=n[q];A?(q=p,p=k.A[l],yp(k,l,!0,!0),p.$e=!0,l=new Go(k,p,"preload"),k.Hi(p,l,q,n,!0)):Ap(k,l,p,n,!0)?g.za&&n&&Bp(k,p,n,g.za):rb(k,!1)}else void 0!==p&&g.za&&0>g.za.restore(p)&&(h=!1);h&&g.za&&void 0!==g.cb&&(g.ob=g.za.seek(g.Rb,g.jb,g.xb));h||(e=!1)}a.X=b[c++]||0;a.kc=b[c]||0;return e}m.Gi=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
m.kk=function(a,b,c){if(a.za){var d=a.za.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.Rb=Math.floor(b/f),b%=f,a.jb=Math.floor(b/e),a.xb=b%e+1,a.Hb=c*d[3],a.Cb=0,!0}return!1};
function xp(a,b){b||(a.fa=0);if(a.U)for(var c in a.U){var d=a.U[c],e=d.path,f;if(!(f=d.name))a:{if((f=a.qa.listDisks)&&f.options)for(var g=0;g<f.options.length;g++)if(f.options[g].value==e){f=f.options[g].innerText;break a}f=fa(e,!0)}if(e&&f&&(g=c.charCodeAt(0)-65,0<=g&&g<a.A.length)){!Ap(a,g,f,e,!0)&&b&&rb(a,!1);continue}a.Oa("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}return!!a.fa}
function sp(a,b,c,d){var e,f=a.qa.listDrives;if(f&&!isNaN(e=ca(f.value,10))&&0<=e&&e<a.A.length)if(c)if("?"==c)a.Oa('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=fa(c)}for(;0>Ap(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=a,g=c,h=void 0,h=0;h<f.B.length;h++)if(f.B[h][1]==g){f.B.splice(h,1);break}yp(a,
e,!1,!0)}}else yp(a,e);else a.Oa("Unable to load the selected drive")}function Ap(a,b,c,d,e,f){var g=a.A[b];if(d&&g.Ke!=d){yp(a,b,e,!0);if(g.bd)return a.Oa("Drive "+b+" busy"),0;g.bd=!0;e&&(g.ze=!0,a.fa++,z(a)&&y(a,"loading diskette '"+c+"'"));g.Ze=!!f;return(new Go(a,g,"preload")).load(c,d,f,a.Hi)?1:0}return-1}
m.Hi=function(a,b,c,d,e){var f;a.bd=!1;b&&(f=b.info(),b&&f[0]>a.Bb||f[1]>a.ub)&&(this.Oa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.gb)),b=null);b?(a.za=b,a.jk=c,a.Ke=d,Bp(this,c,d,b),f=b.info(),this.X|=128,this.Oa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.gb),a.ze||e),a.yg=f[0],a.Mf=f[1],a.Nf=f[2],this.V&&this.V.yd()):a.Ze=!1;a.ze&&(a.ze=!1,--this.fa||rb(this));rp(this,a.gb)};
e,!1,!0)}}else yp(a,e);else a.Oa("Unable to load the selected drive")}function Ap(a,b,c,d,e,f){var g=a.A[b];if(d&&g.Le!=d){yp(a,b,e,!0);if(g.bd)return a.Oa("Drive "+b+" busy"),0;g.bd=!0;e&&(g.Ae=!0,a.fa++,z(a)&&y(a,"loading diskette '"+c+"'"));g.$e=!!f;return(new Go(a,g,"preload")).load(c,d,f,a.Hi)?1:0}return-1}
m.Hi=function(a,b,c,d,e){var f;a.bd=!1;b&&(f=b.info(),b&&f[0]>a.Bb||f[1]>a.ub)&&(this.Oa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.gb)),b=null);b?(a.za=b,a.jk=c,a.Le=d,Bp(this,c,d,b),f=b.info(),this.X|=128,this.Oa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.gb),a.Ae||e),a.yg=f[0],a.Nf=f[1],a.Of=f[2],this.V&&this.V.yd()):a.$e=!1;a.Ae&&(a.Ae=!1,--this.fa||rb(this));rp(this,a.gb)};
function wp(a,b,c){if((a=a.qa.listDisks)&&a.options){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}
function rp(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.qa.listDisks,e=a.qa.listDrives;if(d&&e&&d.options&&e.options&&(e=ca(e.value,10),c=c.Ze?"?":c.Ke,!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 yp(a,b,c,d){var e=a.A[b];e.za&&(zp(a,e.Ke,e.za),e.jk="",e.Ke="",e.za=null,e.Ze=!1,a.X|=128,d||a.Oa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||rp(a,b))}
function rp(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.qa.listDisks,e=a.qa.listDrives;if(d&&e&&d.options&&e.options&&(e=ca(e.value,10),c=c.$e?"?":c.Le,!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 yp(a,b,c,d){var e=a.A[b];e.za&&(zp(a,e.Le,e.za),e.jk="",e.Le="",e.za=null,e.$e=!1,a.X|=128,d||a.Oa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||rp(a,b))}
function Bp(a,b,c,d){var e;for(e=0;e<a.B.length;e++)if(a.B[e][1]==c){d.restore(a.B[e][2]);return}a.B[e]=[b,c,[]]}function zp(a,b,c){var d;for(d=0;d<a.B.length;d++)if(a.B[d][1]==b){a.B[d][2]=c.save();break}}m.Pm=function(a,b,c){x(this,a,b,c,"OUTPUT");b&4?this.aa&4||this.aa&8&&this.N&&eg(this.N,6):tp(this);this.aa=b};m.wl=function(a,b){x(this,a,null,b,"STATUS",this.ma);return this.ma};
m.ul=function(a,b){var c=0;this.L<this.C&&(c=this.W[this.L]);this.aa&8&&this.N&&dg(this.N,6);z(this)&&x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.ma&=-81,this.L=this.C=0);return c};
m.Om=function(a,b,c){z(this)&&x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=this.W[0]&31;if(void 0!==qp[a]&&this.C>=qp[a].Ud){b=!1;this.L=0;a=Cp(this);var d,e,f,g,h=a&31;switch(h){case 3:Cp(this);Cp(this);Dp(this);break;case 4:c=Cp(this);this.gb=c&3;d=this.A[this.gb];Dp(this);Ep(this,(d.Cb&-16777216)>>>24);break;case 5:case 6:c=Cp(this);b=c>>2&1;this.gb=c&3;d=this.A[this.gb];d.jb=b;c=d.Rb=Cp(this);e=Cp(this);f=d.xb=Cp(this);g=Cp(this);d.Hb=128<<g;d.ge=Cp(this);Cp(this);
Cp(this);6==h?(h=d,h.Cb=72,h.za&&(h.ob=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaRead",h),pl(this.N,2)))):(h=d,h.Cb=72,h.za&&(h.za.df?h.Cb=576:(h.ob=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaWrite",h),pl(this.N,2)))));Fp(this,d,a,b,c,e,f,g);b=!0;break;case 7:c=Cp(this);this.gb=c&3;d=this.A[this.gb];d.Rb=d.fe=0;d.Cb=268435488;Dp(this);b=!0;break;case 8:d=this.A[this.gb];d.jb=0;Dp(this);Ep(this,d.gb|d.jb<<2|d.Cb&255);Ep(this,d.Rb);this.gb=this.gb+1&3;break;case 10:c=Cp(this);b=c>>2&1;this.gb=c&3;d=
this.A[this.gb];c=d.Rb;e=d.jb=b;f=d.xb=1;g=0;d.Cb=0;d.za&&(d.ob=d.za.seek(d.Rb,d.jb,d.xb))?g=d.ob.length>>8:d.Cb=72;Fp(this,d,a,b,c,e,f,g);b=!0;break;case 13:c=Cp(this);b=c>>2&1;this.gb=c&3;d=this.A[this.gb];c=d.Rb;e=d.jb=b;f=1;g=Cp(this);d.Hb=128<<g;d.ge=Cp(this);Cp(this);d.xi=Cp(this);h=d;h.Cb=72;h.za&&(h.ob=null,h.Cb=0,this.N&&(h.Ue=0,h.md=Array(4),h.Xg=!0,h.mg=0,xl(this.N,2,this,"dmaFormat",h),pl(this.N,2),h.Xg=!1));Fp(this,d,a,b,c,e,f,g);b=!0;break;case 15:c=Cp(this),this.gb=c&3,d=this.A[this.gb],
Cp(this);6==h?(h=d,h.Cb=72,h.za&&(h.ob=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaRead",h),pl(this.N,2)))):(h=d,h.Cb=72,h.za&&(h.za.ef?h.Cb=576:(h.ob=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaWrite",h),pl(this.N,2)))));Fp(this,d,a,b,c,e,f,g);b=!0;break;case 7:c=Cp(this);this.gb=c&3;d=this.A[this.gb];d.Rb=d.fe=0;d.Cb=268435488;Dp(this);b=!0;break;case 8:d=this.A[this.gb];d.jb=0;Dp(this);Ep(this,d.gb|d.jb<<2|d.Cb&255);Ep(this,d.Rb);this.gb=this.gb+1&3;break;case 10:c=Cp(this);b=c>>2&1;this.gb=c&3;d=
this.A[this.gb];c=d.Rb;e=d.jb=b;f=d.xb=1;g=0;d.Cb=0;d.za&&(d.ob=d.za.seek(d.Rb,d.jb,d.xb))?g=d.ob.length>>8:d.Cb=72;Fp(this,d,a,b,c,e,f,g);b=!0;break;case 13:c=Cp(this);b=c>>2&1;this.gb=c&3;d=this.A[this.gb];c=d.Rb;e=d.jb=b;f=1;g=Cp(this);d.Hb=128<<g;d.ge=Cp(this);Cp(this);d.xi=Cp(this);h=d;h.Cb=72;h.za&&(h.ob=null,h.Cb=0,this.N&&(h.Ve=0,h.md=Array(4),h.Xg=!0,h.mg=0,xl(this.N,2,this,"dmaFormat",h),pl(this.N,2),h.Xg=!1));Fp(this,d,a,b,c,e,f,g);b=!0;break;case 15:c=Cp(this),this.gb=c&3,d=this.A[this.gb],
d.jb=c>>2&1,c=Cp(this),d.Rb+=c-d.fe,0>d.Rb&&(d.Rb=0),d.Rb>=d.Bb&&(d.Rb=d.Bb-1),d.fe=c,d.Cb=32,d.Rb||(d.Cb|=268435456),Dp(this),b=!0}0<this.C&&(this.ma|=80);this.aa&8&&(!d||d.Cb&8||!b||this.N&&eg(this.N,6))}};m.vl=function(a,b){var c=this.X;this.X&=-129;x(this,a,null,b,"INPUT",c);return c};m.Nm=function(a,b,c){x(this,a,b,c,"CONTROL");this.kc=b};
function Fp(a,b,c,d,e,f,g,h){Dp(a);Ep(a,b.gb|b.jb<<2|b.Cb&255);Ep(a,(b.Cb&65280)>>>8);Ep(a,(b.Cb&16711680)>>>16);var k=0;if(e!=b.Rb||f!=b.jb)k=g=1;c&128&&(f^=k,d||(k=0));Ep(a,e+k);Ep(a,f);Ep(a,g);Ep(a,h)}function Cp(a){var b=a.W[a.L];a.L++;return b}function Dp(a){a.L=a.C=0}function Ep(a,b){a.W[a.C++]=b}
m.wk=function(a,b,c){if(void 0===b||0>b){b=-1;var d=null,e=0;if(!a.Cb&&a.za){do{if(a.ob&&(e=a.cb,0<=(b=a.za.read(a.ob,a.cb++)))){d=a.ob;break}a.ob=a.za.seek(a.Rb,a.jb,a.xb);if(!a.ob){a.Cb=1088;break}a.cb=0;Gp(a)}while(1)}c(b,!1,d,e)}else c(-1,!1)};m.xk=function(a,b){return void 0!==b&&0<=b?Hp(a,b):-1};
m.Lk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.Cb)c=-1;else{a.md[a.Ue++]=c;if(a.Ue==a.md.length){a.Rb=a.md[0];a.jb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ue=0;d<a.Hb;d++)if(0>Hp(a,a.xi)){c=-1;break a}a.mg++}a.mg>=a.ge&&(c=-1)}else c=-1;return c};function Hp(a,b){if(a.Cb||!a.za)return-1;do{if(a.ob&&a.za.write(a.ob,a.cb++,b))break;a.ob=a.za.seek(a.Rb,a.jb,a.xb);if(!a.ob){a.Cb=8256;b=-1;break}a.cb=0;Gp(a)}while(1);return b}
function Gp(a){a.xb++;a.xb>=a.Nf+1&&(a.xb=1,a.jb++,a.jb>=a.Mf&&(a.jb=0,a.Rb++))}var up={1012:pp.prototype.wl,1013:pp.prototype.ul,1015:pp.prototype.vl},vp={1010:pp.prototype.Pm,1013:pp.prototype.Om,1015:pp.prototype.Nm};Qa(function(){for(var a=nb(document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new pp(d);mb(d,c)}});
m.Lk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.Cb)c=-1;else{a.md[a.Ve++]=c;if(a.Ve==a.md.length){a.Rb=a.md[0];a.jb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ve=0;d<a.Hb;d++)if(0>Hp(a,a.xi)){c=-1;break a}a.mg++}a.mg>=a.ge&&(c=-1)}else c=-1;return c};function Hp(a,b){if(a.Cb||!a.za)return-1;do{if(a.ob&&a.za.write(a.ob,a.cb++,b))break;a.ob=a.za.seek(a.Rb,a.jb,a.xb);if(!a.ob){a.Cb=8256;b=-1;break}a.cb=0;Gp(a)}while(1);return b}
function Gp(a){a.xb++;a.xb>=a.Of+1&&(a.xb=1,a.jb++,a.jb>=a.Nf&&(a.jb=0,a.Rb++))}var up={1012:pp.prototype.wl,1013:pp.prototype.ul,1015:pp.prototype.vl},vp={1010:pp.prototype.Pm,1013:pp.prototype.Om,1015:pp.prototype.Nm};Qa(function(){for(var a=nb(document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new pp(d);mb(d,c)}});
function Ip(a){Ua.call(this,"HDC",a,Ip,1048576);this.dmaRead=this.yk;this.dmaWrite=this.zk;this.dmaWriteBuffer=this.Mk;this.dmaWriteFormat=this.Nk;this.ua=[];this.Fa=a.drives;this.ja="at"==a.type}db(Ip);
var Jp=["XTC","ATC","COMPAQ"],Kp=[{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],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];m=Ip.prototype;m.Qb=function(){return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;if(d=Nc(a,"drives"))this.ua=d;else if(this.Fa)try{this.ua=eval("("+this.Fa+")")}catch(e){w("HDC drive configuration error: "+e.message+" ("+this.Fa+")")}this.N=Eb(a,"ChipSet");this.U=0;this.Ia=3;hc(b,this,this.ja?Lp:Mp);lc(b,this,this.ja?Np:Op);this.ja&&(this.U++,this.N&&5180==this.N.ia&&this.U++,this.Ia=2,b.aa[496]=2,b.fa[496]=2);cf(c,19,this.Yl.bind(this));cf(c,64,this.Zl.bind(this));this.reset();Pp(this)||rb(this)};
m.ic=function(a,b){if(!b)if(!a||!this.restore)Qp(this),this.V.bh&&Pp(this,!0);else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.ef=function(){return this.V?this.V.ef():""};m.je=function(){return this.V?this.V.je():""};m.reset=function(){Qp(this,null,!0)};
m.save=function(){var a=new hf(this),b=0,c=[];this.ja?(c[b++]=this.X,c[b++]=this.Pa,c[b++]=this.aa,c[b++]=this.Ca,c[b++]=this.ya,c[b++]=this.wa,c[b++]=this.ra,c[b++]=this.ma,c[b++]=this.Ea,c[b++]=[this.ga,this.gb]):(c[b++]=this.pa,c[b++]=this.ma,c[b++]=this.W,c[b++]=this.L,c[b++]=this.C,c[b++]=this.Na,c[b++]=this.Ka,c[b++]=this.Ja,c[b++]=this.ka);for(var d=0,e=[],f=0;f<this.A.length;f++){var g=d++,h=this.A[f],k=0,l=[];l[k++]=h.errorCode;l[k++]=h.lk;l[k++]=h.af;l[k++]=h.Pe;l[k++]=h.Qe;l[k++]=h.jb;
m.ic=function(a,b){if(!b)if(!a||!this.restore)Qp(this),this.V.bh&&Pp(this,!0);else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.ff=function(){return this.V?this.V.ff():""};m.je=function(){return this.V?this.V.je():""};m.reset=function(){Qp(this,null,!0)};
m.save=function(){var a=new hf(this),b=0,c=[];this.ja?(c[b++]=this.X,c[b++]=this.Pa,c[b++]=this.aa,c[b++]=this.Ca,c[b++]=this.ya,c[b++]=this.wa,c[b++]=this.ra,c[b++]=this.ma,c[b++]=this.Ea,c[b++]=[this.ga,this.gb]):(c[b++]=this.pa,c[b++]=this.ma,c[b++]=this.W,c[b++]=this.L,c[b++]=this.C,c[b++]=this.Na,c[b++]=this.Ka,c[b++]=this.Ja,c[b++]=this.ka);for(var d=0,e=[],f=0;f<this.A.length;f++){var g=d++,h=this.A[f],k=0,l=[];l[k++]=h.errorCode;l[k++]=h.lk;l[k++]=h.bf;l[k++]=h.Qe;l[k++]=h.Re;l[k++]=h.jb;
l[k++]=h.ub;l[k++]=h.ce;l[k++]=h.xb;l[k++]=h.ge;l[k++]=h.Hb;l[k++]=h.cb;l[k]=h.za?h.za.save():null;e[g]=l}c[b]=e;N(a,0,c);return a.data()};m.restore=function(a){return Qp(this,a[0])};
function Qp(a,b,c){var d=0,e=!0;a.gb=-1;if(a.ja){if(null==b&&(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.X=b[d++],a.Pa=b[d++],a.aa=b[d++],a.Ca=b[d++],a.ya=b[d++],a.wa=b[d++],a.ra=b[d++],a.ma=b[d++],a.Ea=b[d++],a.ga=b[d++],"object"==typeof a.ga){var f=a.ga;a.ga=f[0];a.gb=f[1]}}else null==b&&(b=[0,0,Array(14),0,0]),a.pa=b[d++],a.ma=b[d++],a.W=b[d++],a.L=b[d++],a.C=b[d++],a.Na=b[d++],a.Ka=b[d++],a.Ja=b[d++],f=b[d++],void 0!==f?a.ka=f:void 0===a.ka&&(a.ka=-1);void 0===a.A&&(a.A=Array(a.ua.length));b=b[d];void 0===
b&&(b=[]);for(d=0;d<a.A.length;d++){void 0===a.A[d]&&(a.A[d]={});var f=a.A[d],g=a,h=d,k=f,l=a.ua[d],n=b[d],q=c,p=0,A=!0;void 0===n&&(n=[0,0,!1,Array(8)]);k.gb=h;k.errorCode=n[p++];k.lk=n[p++];k.af=n[p++];k.Pe=n[p++];k.Qe=n[p++];k.jb=n[p++];k.ub=n[p++];k.ce=n[p++];k.xb=n[p++];k.ge=n[p++];k.Hb=n[p++];k.lg=g.ja?0:1;k.name=l.name;void 0===k.name&&(k.name="Hard Drive");k.path=l.path;k.mode=l.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||g.je()||(k.mode="local");k.type=l.type;
b&&(b=[]);for(d=0;d<a.A.length;d++){void 0===a.A[d]&&(a.A[d]={});var f=a.A[d],g=a,h=d,k=f,l=a.ua[d],n=b[d],q=c,p=0,A=!0;void 0===n&&(n=[0,0,!1,Array(8)]);k.gb=h;k.errorCode=n[p++];k.lk=n[p++];k.bf=n[p++];k.Qe=n[p++];k.Re=n[p++];k.jb=n[p++];k.ub=n[p++];k.ce=n[p++];k.xb=n[p++];k.ge=n[p++];k.Hb=n[p++];k.lg=g.ja?0:1;k.name=l.name;void 0===k.name&&(k.name="Hard Drive");k.path=l.path;k.mode=l.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||g.je()||(k.mode="local");k.type=l.type;
if(void 0===k.type||void 0===Kp[g.U][k.type])k.type=g.Ia;l=Kp[g.U][k.type];k.lb=l[2]||17;k.Ua=l[3]||512;if(q&&g.N){var F=g.N,v=k.type;if(F.A){var q=null,l=void 0,E=F.A[18];15<v&&(q=v,v=15);h?(E=E&240|v,l=26):(E=E&15|v<<4,l=25);v=F;v.A&&(v.A[18]=E,Xk(v));null!=q&&F.A&&(F.A[l]=q,Xk(F))}}void 0===k.za&&(k.za=null,g.Oa("Type "+k.type+' "'+k.name+'" is fixed disk '+h,!0));Rp(g,k);k.cb=n[p++];k.ob=null;k.za&&(g=n[p],void 0!==g&&0>k.za.restore(g)&&(A=!1),A&&void 0!==k.cb&&(k.ob=k.za.seek(k.ce,k.jb,k.xb+
k.lg)));A||(e=!1);null!=a.pa&&1>=d&&(a.pa|=(f.type&3)<<(1-d<<1))}0<=a.gb&&(a.B=a.A[a.gb]);return e}m.Gi=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
function Rp(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Pe[2])?e=b.Pe[0]<<8|b.Pe[1]:c=b.type);null==c||d||(d=Kp[a.U][c][1],e=Kp[a.U][c][0]);d&&((c=Kp[a.U][b.type])&&e!=c[0]&&d!=c[1]&&a.Oa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Bb=e,b.ub=d,null==b.za&&(b.za=new Go(a,b,b.mode)))}}
function Rp(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Qe[2])?e=b.Qe[0]<<8|b.Qe[1]:c=b.type);null==c||d||(d=Kp[a.U][c][1],e=Kp[a.U][c][0]);d&&((c=Kp[a.U][b.type])&&e!=c[0]&&d!=c[1]&&a.Oa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Bb=e,b.ub=d,null==b.za&&(b.za=new Go(a,b,b.mode)))}}
m.kk=function(a,b,c){if(a.za){var d=a.za.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.ce=Math.floor(b/g),b%=g,a.jb=Math.floor(b/f),a.xb=b%f,a.Hb=c*d[3],a.errorCode=0,!0}}return!1};
function Pp(a,b){b||(a.fa=0);for(var c=0;c<a.A.length;c++){var d=a.A[c];if(d.name&&d.path){if(!(b&&d.za&&d.za.qg)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.bd?(e.Oa("Drive "+c+" busy"),e=!0):(g.bd=!0,g.ze=!0,e.fa++,z(e)&&y(e,"loading "+f),(g.za||new Go(e,g,g.mode)).load(f,d,null,e.Ok),e=!1);!e&&b&&rb(a,!1)}}else b&&void 0!==d.type&&(d.za=null,Rp(a,d,d.type))}return!!a.fa}
m.Ok=function(a,b,c){a.bd=!1;if(a.za=b)this.Oa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.gb),a.ze),b=b.info(),b[0]==a.Bb&&b[1]==a.ub&&b[2]==a.lb&&b[3]==a.Ua||this.Oa("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Jp[this.U]+" drive type "+a.type+" ("+a.Bb+":"+a.ub+":"+a.lb+")");a.ze&&(a.ze=!1,--this.fa||rb(this))};
function Pp(a,b){b||(a.fa=0);for(var c=0;c<a.A.length;c++){var d=a.A[c];if(d.name&&d.path){if(!(b&&d.za&&d.za.qg)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.bd?(e.Oa("Drive "+c+" busy"),e=!0):(g.bd=!0,g.Ae=!0,e.fa++,z(e)&&y(e,"loading "+f),(g.za||new Go(e,g,g.mode)).load(f,d,null,e.Ok),e=!1);!e&&b&&rb(a,!1)}}else b&&void 0!==d.type&&(d.za=null,Rp(a,d,d.type))}return!!a.fa}
m.Ok=function(a,b,c){a.bd=!1;if(a.za=b)this.Oa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.gb),a.Ae),b=b.info(),b[0]==a.Bb&&b[1]==a.ub&&b[2]==a.lb&&b[3]==a.Ua||this.Oa("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Jp[this.U]+" drive type "+a.type+" ("+a.Bb+":"+a.ub+":"+a.lb+")");a.Ae&&(a.Ae=!1,--this.fa||rb(this))};
m.Wl=function(a,b){var c=0;this.L<this.C&&(c=this.W[this.L]);this.N&&dg(this.N,5);this.ma&=-33;x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.L=this.C=0,this.ma&=-15);return c};m.mn=function(a,b,c){x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=12!=this.W[0]?6:this.W.length;6==this.C&&(this.ma&=-2);this.C>=a&&(this.ma|=2,this.ma&=-2,Sp(this))};m.Xl=function(a,b){var c=this.ma;x(this,a,null,b,"STATUS",c);this.L<this.C&&(this.ma|=1);return c};
m.pn=function(a,b,c){x(this,a,b,c,"RESET");this.Na=b;this.N&&dg(this.N,5);Qp(this)};m.Vl=function(a,b){x(this,a,null,b,"CONFIG",this.pa);return this.pa};m.on=function(a,b,c){x(this,a,b,c,"PULSE");this.Ka=b;this.ma=13};m.nn=function(a,b,c){x(this,a,b,c,"PATTERN");this.Ja=b};m.fi=function(a,b,c){x(this,a,b,c,"NOISE")};
function Tp(a,b,c){var d=-1;a.B&&(d=Up(a.B,function(){}),1==a.B.cb||a.B.cb==a.B.Ua)&&(z(a,1048832)&&x(a,b,null,c,"DATA["+a.B.cb+"]",d),1<a.B.cb&&(a.B.Hb-=a.B.Ua,a.aa=a.aa-1&255,a.B.Hb>=a.B.Ua?(a.ma=128,Up(a.B,function(b){0<=b?(Vp(a),a.N&&5180==a.N.ia&&(a.ma=0),a.ma|=88):(a.ma=1,a.X=16)},!1)):a.ma=80));return d}m.Ak=function(a,b){return Tp(this,a,b)|Tp(this,a,b)<<8};
@ -642,11 +643,11 @@ m.ym=function(a,b,c){x(this,a,b,c,"SECCNT");this.aa=b};m.gl=function(a,b){var c=
m.wm=function(a,b,c){x(this,a,b,c,"DRVHD");this.ra=b;this.ma=this.A[this.ra&16?1:0]?this.ma|80:this.ma&-65};m.hl=function(a,b){var c=this.ma;x(this,a,null,b,"STATUS",c);this.ma&64&&(this.ma&=-129);return c};m.sm=function(a,b,c){x(this,a,b,c,"COMMAND");this.Ea=b;this.N&&dg(this.N,14);Yp(this)};m.xm=function(a,b,c){x(this,a,b,c,"FDR");this.ga&4&&!(b&4)&&(this.X=1);this.ga=b};
function Yp(a){var b=!1,c=a.Ea,d=a.ra&16?1:0,e=a.ra&15,f=a.ya|(a.wa&3)<<8,g=a.Ca,h=a.aa||256;a.gb=-1;a.B=null;a.X=0;a.ma=80;var k=a.A[d];k?(k.ce=f,k.jb=e,k.xb=g,k.Hb=h*k.Ua,c=144<=c?c:c&240,k.ob=null,k.cb=0,k.errorCode=0,a.gb=d,a.B=k):c=-1;switch(c&240){case 16:b=!0;break;case 32:a.ma=128;Up(k,function(b){0<=b&&a.N?(Vp(a),a.ma=88):(a.ma=1,a.X=16)},!1);break;case 48:a.ma=8;break;case 64:b=!0;break;case 112:b=!0;break;case 144:a.X=1;b=!0;break;case 145:k.ub=e+1,k.lb=h,b=!0}b&&Vp(a)}
function Vp(a){!a.N||a.ga&2||eg(a.N,14,120)}
function Sp(a){a.L=0;var b=Zp(a),c=Zp(a),d=c&32,e=d>>5,f=c&31,g=Zp(a),h=Zp(a),k=g<<2&768|h,l=g&63,n=Zp(a),q=Zp(a),p=a.A[e];p&&(p.ce=k,p.jb=f,p.xb=l,p.Hb=n*p.Ua);switch(b){case 3:$p(a,p?p.errorCode:4);aq(a,c);aq(a,g);aq(a,h);aq(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=Zp(a));)p&&c<p.Pe.length&&(p.Pe[c++]=b);p&&Rp(a,p);b=0;p||a.ka!=e||(a.ka=-1,b=2);$p(a,b|d);b=-1;break;case 224:case 228:$p(a,0|d),b=-1}if(0<=b)switch(void 0===p?b=-1:(p.errorCode=0,p.lk=0),b){case 0:$p(a,0|d);break;case 1:p.Af=q;$p(a,
function Sp(a){a.L=0;var b=Zp(a),c=Zp(a),d=c&32,e=d>>5,f=c&31,g=Zp(a),h=Zp(a),k=g<<2&768|h,l=g&63,n=Zp(a),q=Zp(a),p=a.A[e];p&&(p.ce=k,p.jb=f,p.xb=l,p.Hb=n*p.Ua);switch(b){case 3:$p(a,p?p.errorCode:4);aq(a,c);aq(a,g);aq(a,h);aq(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=Zp(a));)p&&c<p.Qe.length&&(p.Qe[c++]=b);p&&Rp(a,p);b=0;p||a.ka!=e||(a.ka=-1,b=2);$p(a,b|d);b=-1;break;case 224:case 228:$p(a,0|d),b=-1}if(0<=b)switch(void 0===p?b=-1:(p.errorCode=0,p.lk=0),b){case 0:$p(a,0|d);break;case 1:p.Bf=q;$p(a,
0|d);break;case 5:$p(a,0|d);break;case 8:bq(a,p,function(b){$p(a,b|d)});break;case 10:cq(a,p,function(b){$p(a,b|d)});break;case 15:dq(a,p,function(b){$p(a,b|d)});break;default:$p(a,2|d)}}function Zp(a){var b=-1;a.L<a.C&&(b=a.W[a.L++]);return b}function $p(a,b){a.L=a.C=0;void 0!==b&&aq(a,b);a.N&&eg(a.N,5);a.ma|=32}function aq(a,b){a.W[a.C++]=b}m.yk=function(a,b,c){void 0===b||0>b?Up(a,c):c(-1,!1)};m.zk=function(a,b){return void 0!==b&&0<=b?Xp(a,b):-1};
m.Mk=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.cb<a.Qe.length?a.Qe[a.cb++]=c:(a.errorCode=20,c=-1)):c=-1;return c};m.Nk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.errorCode)c=-1;else{a.md[a.Ue++]=c;if(a.Ue==a.md.length){a.ce=a.md[0];a.jb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ue=0;d<a.Hb;d++)if(0>Xp(a,a.xi)){c=-1;break a}a.mg++}a.mg>=a.ge&&(c=-1)}else c=-1;return c};
m.Mk=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.cb<a.Re.length?a.Re[a.cb++]=c:(a.errorCode=20,c=-1)):c=-1;return c};m.Nk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.errorCode)c=-1;else{a.md[a.Ve++]=c;if(a.Ve==a.md.length){a.ce=a.md[0];a.jb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ve=0;d<a.Hb;d++)if(0>Xp(a,a.xi)){c=-1;break a}a.mg++}a.mg>=a.ge&&(c=-1)}else c=-1;return c};
function bq(a,b,c){b.errorCode=4;if(b.za&&(b.ob=null,a.N)){b.errorCode=0;xl(a.N,3,a,"dmaRead",b);pl(a.N,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function cq(a,b,c){b.errorCode=4;if(b.za&&(b.ob=null,a.N)){b.errorCode=0;xl(a.N,3,a,"dmaWrite",b);pl(a.N,3,function(a){a||(0==b.errorCode&&(b.errorCode=4),20==b.errorCode&&(b.errorCode=0));c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}
function dq(a,b,c){b.errorCode=4;b.Qe&&b.Qe.length==b.Hb||(b.Qe=Array(b.Hb));b.cb=0;a.N?(b.errorCode=0,xl(a.N,3,a,"dmaWriteBuffer",b),pl(a.N,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
function dq(a,b,c){b.errorCode=4;b.Re&&b.Re.length==b.Hb||(b.Re=Array(b.Hb));b.cb=0;a.N?(b.errorCode=0,xl(a.N,3,a,"dmaWriteBuffer",b),pl(a.N,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
function Up(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.ob&&(f=a.cb,d=a.za.read(a.ob,a.cb),a.cb+=g,0<=d))return e=a.ob,b&&b(d,!1,e,f),d;if(b){if(a.za)return a.za.seek(a.ce,a.jb,a.xb+a.lg,!1,function(c,k){(a.ob=c)?(e=c,f=a.cb=0,eq(a),d=a.za.read(a.ob,a.cb),a.cb+=g):a.errorCode=20;b(d,k,e,f)}),d;a.errorCode=20;b(d,!1,e,f)}return d}
function Xp(a,b){if(a.errorCode)return-1;do{if(a.ob&&a.za.write(a.ob,a.cb++,b))break;a.za&&a.za.seek(a.ce,a.jb,a.xb+a.lg,!0,function(b){a.ob=b});if(!a.ob){a.errorCode=20;b=-1;break}a.cb=0;eq(a)}while(1);return b}function eq(a){a.xb++;var b=1-a.lg;a.xb>=a.lb+b&&(a.xb=b,a.jb++,a.jb>=a.ub&&(a.jb=0,a.ce++))}m.Yl=function(){var a=this.F.M&255;!(this.F.G>>8)&&128<a&&(this.ka=a-128);return!0};m.Zl=function(){var a;(a=this.F.G>>8||!this.N)||(a=!(this.N.vc[0].Bd&64));return a?!0:!1};
var Mp={800:Ip.prototype.Wl,801:Ip.prototype.Xl,802:Ip.prototype.Vl},Lp={496:Ip.prototype.Ak,497:Ip.prototype.dl,498:Ip.prototype.fl,499:Ip.prototype.gl,500:Ip.prototype.bl,501:Ip.prototype.al,502:Ip.prototype.cl,503:Ip.prototype.hl},Op={800:Ip.prototype.mn,801:Ip.prototype.pn,802:Ip.prototype.on,803:Ip.prototype.nn,807:Ip.prototype.fi,811:Ip.prototype.fi,815:Ip.prototype.fi},Np={496:Ip.prototype.vm,497:Ip.prototype.Am,498:Ip.prototype.ym,499:Ip.prototype.zm,500:Ip.prototype.um,501:Ip.prototype.tm,
@ -685,30 +686,30 @@ break;case 127:this.C&&(b.G=b.G&-65536|(this.bb?0:1));break;case 131:this.C&&(a=
m.cm=function(a){var b=this.F,c=b.G&255,d=b.G>>8&255,e=b.H&65535,f=b.I&65535,g=b.M&65535,h=b.J&65535,k=b.Wa.Z;if(null==this.ka){if(67==d){if(609437257==b.oa((b.va.Z<<4)+10)||1111835735==b.oa((b.va.Z<<4)+95))return!0;df(b,a,function(a){return function(){62342!=(b.G&65535)?(b.G=b.G&-65536|62342,y(a,"INT 0x68 handling enabled",128),a.C=a.ka=!0):(y(a,"INT 0x68 monitoring enabled",128),a.ka=!1)}}(this))}return!0}switch(d){case 67:this.ka&&(b.G=b.G&-65536|62342);break;case 68:this.ka&&(a=gd(b.va,this.Hk.bind(this)))&&
(b.J=a[0],wd(b,a[1]));break;case 72:Oq(this,null,e);break;case 80:32==c?Kq(this,gq(this,h,k),0,f,!0,!!this.ka):128>c?Kq(this,gq(this,h,k),e+1,c&64?g:f,!(c&1),!!this.ka):Mq(this,gq(this,h,k),!(c&1),!!this.ka),this.ka&&(b.G=b.G&-256|1)}return!this.ka};m.Hk=function(){var a=this.F;5==(a.G&255)&&(a.I=a.K=0,a.G=a.G&-256|1);return!1};
m.Qb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.Ka=this.qa[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",kq(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?d.U<d.L.length-1&&(b=d.L[++d.U]):40==a.keyCode&&(0<d.U?b=d.L[--d.U]:(b="",d.U=-1)),null!=b){var g=b.length;c.value=b;c.setSelectionRange(g,g)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.qa[b]=c,Ka(c,function(){if(d.Ka){var a=d.Ka.value;d.Ka.value=
"";kq(d,a,!0);return!0}return!1}),!0;case "step":return this.qa[b]=c,Ka(c,function(a){var b=!1;qb(d,!0)||(pb(d,!0),b=d.uf(a?1:0),pb(d,!1));return b}),!0}return!1};m.yd=function(){this.Ka&&this.Ka.focus()};function Rq(a){return a.F&&!!(a.F.Ya&1)&&!(a.F.ca&131072)}
"";kq(d,a,!0);return!0}return!1}),!0;case "step":return this.qa[b]=c,Ka(c,function(a){var b=!1;qb(d,!0)||(pb(d,!0),b=d.vf(a?1:0),pb(d,!1));return b}),!0}return!1};m.yd=function(){this.Ka&&this.Ka.focus()};function Rq(a){return a.F&&!!(a.F.Ya&1)&&!(a.F.ca&131072)}
function Dq(a,b,c){var d=Rq(a)?2:1;c||(c=d);if(c==d){if(b===a.F.va.Z)return a.F.va;if(b===a.F.vb.Z)return a.F.vb;if(b===a.F.Wa.Z)return a.F.Wa;if(b===a.F.ta.Z)return a.F.ta;if(80386<=a.F.ia){if(b===a.F.Ob.Z)return a.F.Ob;if(b===a.F.Pb.Z)return a.F.Pb}if(a.eb&&2==c||!a.bc)return null}a=a.bc;if(2!=c)a.kh(b),a.Ta=65535,a.Zb=65536;else{var e;c=a.F;b=b&65535;b&4?(d=c.Bc.Aa,e=d+c.Bc.Ta|0):(d=c.Ec,e=c.Ad);d=d+(b&65528)|0;if(e-d|0){e=If(c,d+0,2);var f=If(c,d+4,2),g=f&7936,h=If(c,d+2,2)|(f&255)<<16,k=If(c,
d+6,2);80386<=c.ia&&(h|=(k&65280)<<16,e|=(k&15)<<16,k&128&&(e=e<<12|4095));a.Z=b;a.Aa=h;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=f;a.type=g;a.ext=k;a.Xb=d;fd(a,!0,!0,!1)}}return a}m.dc=function(a,b,c){var d=a&&a.Da;if(null==d&&(d=-1,a)){var e=Dq(this,a.Z,a.type);e&&(b=a.Ra||0,c=c||1,d=e=-1===e.Xb||e.cd&&(b>>>0)+c>e.Zb||!e.cd&&(b>>>0)+c<=e.Zb?e.Aa+b|0:-1,a.Da=d)}return d};m.Qa=function(a,b){var c=255,d=this.dc(a,!1,1);-1!==d&&(c=If(this.F,d,1,5==a.type)|0,b&&Sq(this,a,b));return c};
m.tb=function(a,b){return a.Sb?this.oa(a,b?4:0):this.na(a,b?2:0)};m.na=function(a,b){var c=65535,d=this.dc(a,!1,2);-1!==d&&(c=If(this.F,d,2,5==a.type),b&&Sq(this,a,b));return c};m.oa=function(a,b){var c=-1,d=this.dc(a,!1,4);-1!==d&&(c=If(this.F,d,4,5==a.type),b&&Sq(this,a,b));return c};m.qc=function(a,b,c){var d=this.dc(a,!0,1);if(-1!==d){if(5!=a.type)this.F.qc(d,b);else{var e=this.ea;e.sa[(d&e.Gb)>>>e.La].vf(d&e.A,b&255,d)}c&&Sq(this,a,c);Qc(this.F,!0)}};
m.ib=function(a,b,c){var d=this.dc(a,!0,2);-1!==d&&(5!=a.type?this.F.ib(d,b):fc(this.ea,d,b),c&&Sq(this,a,c),Qc(this.F,!0))};function gq(a,b,c,d,e,f,g){return Tq(a,{},b,c,d,e,f,g)}function Tq(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Da=e;b.type=f||(Rq(a)?2:1);b.Sb=null!=g?g:a.F&&4==a.F.va.ba;b.pc=null!=h?h:a.F&&4==a.F.va.Oc;b.Wd=!1;return b}function Uq(a){return[a.Ra,a.Z,a.Da,a.Wd,a.Sb,a.pc,a.Re,a.Vd]}function Vq(a){return{Ra:a[0],Z:a[1],Da:a[2],Wd:a[3],Sb:a[4],pc:a[5],Re:a[6],Vd:a[7]}}
m.tb=function(a,b){return a.Sb?this.oa(a,b?4:0):this.na(a,b?2:0)};m.na=function(a,b){var c=65535,d=this.dc(a,!1,2);-1!==d&&(c=If(this.F,d,2,5==a.type),b&&Sq(this,a,b));return c};m.oa=function(a,b){var c=-1,d=this.dc(a,!1,4);-1!==d&&(c=If(this.F,d,4,5==a.type),b&&Sq(this,a,b));return c};m.qc=function(a,b,c){var d=this.dc(a,!0,1);if(-1!==d){if(5!=a.type)this.F.qc(d,b);else{var e=this.ea;e.sa[(d&e.Gb)>>>e.La].wf(d&e.A,b&255,d)}c&&Sq(this,a,c);Qc(this.F,!0)}};
m.ib=function(a,b,c){var d=this.dc(a,!0,2);-1!==d&&(5!=a.type?this.F.ib(d,b):fc(this.ea,d,b),c&&Sq(this,a,c),Qc(this.F,!0))};function gq(a,b,c,d,e,f,g){return Tq(a,{},b,c,d,e,f,g)}function Tq(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Da=e;b.type=f||(Rq(a)?2:1);b.Sb=null!=g?g:a.F&&4==a.F.va.ba;b.pc=null!=h?h:a.F&&4==a.F.va.Oc;b.Wd=!1;return b}function Uq(a){return[a.Ra,a.Z,a.Da,a.Wd,a.Sb,a.pc,a.Se,a.Vd]}function Vq(a){return{Ra:a[0],Z:a[1],Da:a[2],Wd:a[3],Sb:a[4],pc:a[5],Se:a[6],Vd:a[7]}}
function Wq(a,b,c){if(null!=b.Z&&(a=Dq(a,b.Z,b.type))){var d=b.Ra&a.Ba;if(!a.cd){if(d>>>0>=a.Zb)return!1}else if(d>>>0<a.Zb)return!1;c&&(b.Ra=d,b.Sb=4==a.ba,b.pc=4==a.Oc)}return!0}
function Xq(a,b,c,d){var e,f=c?a.aa:a.Db;c=d?0:f.type;var g=f.Ra,h=f.Z,f=f.Da;if(void 0!==b){b=Yq(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=1;break;case "#":c=2;break;case "%":c=4;e=b.charAt(1);"%"==e&&(c=5,e+=e);g=0;h=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var l=e.toUpperCase(),n=0;n<a.B.length;n++){e=a.B[n];var q=e.Qd[l];if(void 0!==q){l=q.o;void 0!==l&&(k=q.s,void 0===k&&(k=e.Z),k=gq(a,l,k,q.p));break}}if(e=
k)return e;0>f?null!=h?(g=Zq(a,b,void 0),f=null):(f=Zq(a,b,void 0),null==f&&(g=null)):(h=Zq(a,b.substring(0,f),void 0),g=Zq(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=gq(a,g,h,f,c),d||Wq(a,e,!0)||(a.O("invalid offset: "+Qq(e)),e=null));return e}function $q(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.Dk=ar(a,b.ik=c[2]))}function Sq(a,b,c){c=c||1;null!=b.Da&&(b.Da+=c);null!=b.Z&&(b.Ra+=c,Wq(a,b)||(b.Ra=0,b.Da=null))}function Gq(a,b,c){return null!=b?r(b,4)+":"+r(a,a&-65536||c?8:4):r(a)}
function Qq(a){var b;switch(a.type){case 1:case 3:b="&";break;case 2:b="#";break;case 4:b="%";break;case 5:b="%%";break;default:b=a.Z?"":"%"}return 4<=a.type||null==a.Z?b+r(a.Da):b+Gq(a.Ra,a.Z,a.pc)}function Hq(a,b,c){var d="";for(c=c||256;d.length<c;){var e=a.Qa(b,1);if(!e||36==e||127<=e)break;d+=32<=e?String.fromCharCode(e):"."}return d}
function Bq(a,b,c,d){var e=0,f=0,g=b.length;if(c){e=a.dc(Xq(a,c));if(-1===e){a.O("invalid address: "+c);return}f=e>>>a.F.La;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&5==d.type&&(d=Fc(a.F,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=sc[c],6==c&&(d=d.Cd,h+=" -> "+sc[d.type]),d&&a.O(r(d.id)+" %"+r(f<<a.F.La)+" %%"+r(d.Da)+" "+u(d.Me)+" "+u(d.size)+" "+h),c!=
function Bq(a,b,c,d){var e=0,f=0,g=b.length;if(c){e=a.dc(Xq(a,c));if(-1===e){a.O("invalid address: "+c);return}f=e>>>a.F.La;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&5==d.type&&(d=Fc(a.F,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=sc[c],6==c&&(d=d.Cd,h+=" -> "+sc[d.type]),d&&a.O(r(d.id)+" %"+r(f<<a.F.La)+" %%"+r(d.Da)+" "+u(d.Ne)+" "+u(d.size)+" "+h),c!=
rc&&5!=c&&(c=-1),h=0),e+=a.F.Nb,f++}function br(a,b,c){a=r(a)+" "+r(b)+" ";a=a+(c&&b&64?"D":"-")+(b&32?"A":"-");a+=b&4?"U":"S";a+=b&2?"W":"R";return a+=b&1?"P":"N"}
var Eq={256:["tss286",!1],512:["ldt",!1],768:["busy tss286",!1],1024:["call gate",!0],1280:["task gate",!0],1536:["int gate286",!0],1792:["trap gate286",!0],2304:["tss386",!1],2816:["busy tss386",!1],3072:["call gate386",!0],3584:["int gate386",!0],3840:["trap gate386",!0]},Iq={PREV_TSS:0,CPL0_SP:2,CPL0_SS:4,CPL1_SP:6,CPL1_SS:8,CPL2_SP:10,CPL2_SS:12,TASK_IP:14,TASK_PS:16,TASK_AX:18,TASK_CX:20,TASK_DX:22,TASK_BX:24,TASK_SP:26,TASK_BP:28,TASK_SI:30,TASK_DI:32,TASK_ES:34,TASK_CS:36,TASK_SS:38,TASK_DS:40,
TASK_LDT:42},Jq={PREV_TSS:0,CPL0_ESP:4,CPL0_SS:8,CPL1_ESP:12,CPL1_SS:16,CPL2_ESP:20,CPL2_SS:24,TASK_CR3:28,TASK_EIP:32,TASK_PS:36,TASK_EAX:40,TASK_ECX:44,TASK_EDX:48,TASK_EBX:52,TASK_ESP:56,TASK_EBP:60,TASK_ESI:64,TASK_EDI:68,TASK_ES:72,TASK_CS:76,TASK_SS:80,TASK_DS:84,TASK_FS:88,TASK_GS:92,TASK_LDT:96,TASK_IOPM:100};
function Lq(a,b,c){var d=[],e;for(e=null;e=Eb(a.V,"Disk",e);){var f=e,g=b,h=c,d=[];if(f.C)for(var k=0;k<f.C.length;k++){var l=f.C[k];if(l.fg==g&&(l=l.zd[h])){for(var n in l.ve)f=l.ve[n],d[f[1]]=f[0];break}}if(d.length)break}return d}function jq(a,b){a.ha=a;a.wc=a.Gk=1073741824;a.Pa=null;var c=ar(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(c.length)for(var d in uq)0<=ua(c,d)&&(a.wc|=uq[d],a.O(d+" messages enabled"));iq(a)}
function Lq(a,b,c){var d=[],e;for(e=null;e=Eb(a.V,"Disk",e);){var f=e,g=b,h=c,d=[];if(f.C)for(var k=0;k<f.C.length;k++){var l=f.C[k];if(l.fg==g&&(l=l.zd[h])){for(var n in l.we)f=l.we[n],d[f[1]]=f[0];break}}if(d.length)break}return d}function jq(a,b){a.ha=a;a.wc=a.Gk=1073741824;a.Pa=null;var c=ar(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(c.length)for(var d in uq)0<=ua(c,d)&&(a.wc|=uq[d],a.O(d+" messages enabled"));iq(a)}
function Mk(a,b,c){for(var d in uq)if(b==uq[d]){a.Za[d]=c;break}}function cr(a,b){var c;a=a.toUpperCase();null==b?c=ua(sq,a):(c=ua(sq,a.substr(b,3)),0>c&&(c=ua(sq,a.substr(b,2))));return c}
function dr(a,b){var c=0,d=er(a,b);if(void 0!==d)switch(b){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:c=2;break;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 22:case 16:case 17:case 18:case 19:case 20:case 21:c=4;break;case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 56:c=8;break;case 23:c=a.Ja}return c?r(d,c):"??"}
function er(a,b){var c;if(0<=b){var d=a.F;switch(b){case 0:c=d.G&255;break;case 1:c=d.I&255;break;case 2:c=d.M&255;break;case 3:c=d.H&255;break;case 4:c=d.G>>8&255;break;case 5:c=d.I>>8&255;break;case 6:c=d.M>>8&255;break;case 7:c=d.H>>8&255;break;case 8:c=d.G&65535;break;case 9:c=d.I&65535;break;case 10:c=d.M&65535;break;case 11:c=d.H&65535;break;case 12:c=I(d)&65535;break;case 13:c=d.P&65535;break;case 14:c=d.K&65535;break;case 15:c=d.J&65535;break;case 22:c=K(d)&65535;break;case 23:c=xd(d);break;
case 16:c=d.Wa.Z;break;case 17:c=d.va.Z;break;case 18:c=d.ta.Z;break;case 19:c=d.vb.Z;break;default:if(80286==a.F.ia)32==b&&(c=d.Ya);else if(80386<=a.F.ia)switch(b){case 24:c=d.G;break;case 25:c=d.I;break;case 26:c=d.M;break;case 27:c=d.H;break;case 28:c=I(d);break;case 29:c=d.P;break;case 30:c=d.K;break;case 31:c=d.J;break;case 32:c=d.Ya;break;case 33:c=d.ii;break;case 34:c=d.se;break;case 35:c=d.Od;break;case 20:c=d.Ob.Z;break;case 21:c=d.Pb.Z;break;case 56:c=K(d)}}}return c}
case 16:c=d.Wa.Z;break;case 17:c=d.va.Z;break;case 18:c=d.ta.Z;break;case 19:c=d.vb.Z;break;default:if(80286==a.F.ia)32==b&&(c=d.Ya);else if(80386<=a.F.ia)switch(b){case 24:c=d.G;break;case 25:c=d.I;break;case 26:c=d.M;break;case 27:c=d.H;break;case 28:c=I(d);break;case 29:c=d.P;break;case 30:c=d.K;break;case 31:c=d.J;break;case 32:c=d.Ya;break;case 33:c=d.ii;break;case 34:c=d.te;break;case 35:c=d.Od;break;case 20:c=d.Ob.Z;break;case 21:c=d.Pb.Z;break;case 56:c=K(d)}}}return c}
function fr(a,b){b=Yq(a,b);for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=cr(b,c+1),0<=e&&(b=b.substr(0,c)+dr(a,e)+b.substr(c+1+sq[e].length)),c++;for(c=0;0<=(c=b.indexOf("#",c));)e=b.substr(c+1,2),d=ca(e,16),null!=d&&32<=d&&128>d?(d=e+" '"+String.fromCharCode(d)+"'",b=b.replace("#"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("$",c));)e=b.substr(c+1,9),(d=Xq(a,e))?(d=e+' "'+Hq(a,d)+'"',b=b.replace("$"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("^",c));)e=b.substr(c+1,9),(d=Xq(a,e))?(Sq(a,d),d=e+
' "'+Hq(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}m=fq.prototype;m.message=function(a,b){b&&(a+=" at "+Qq(gq(this,K(this.F),this.F.va.Z))+" (%"+r(this.F.Ga)+")");if(!this.Pa||a!=this.Pa)if(this.Pa=a,this.wc&-2147483648&&(this.Wb(),a+=" (cpu halted)"),this.O(a),this.F){var c=this.F;c.Y.lf=0;c.eb-=c.A;c.A=0;Qc(c)}};
' "'+Hq(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}m=fq.prototype;m.message=function(a,b){b&&(a+=" at "+Qq(gq(this,K(this.F),this.F.va.Z))+" (%"+r(this.F.Ga)+")");if(!this.Pa||a!=this.Pa)if(this.Pa=a,this.wc&-2147483648&&(this.Wb(),a+=" (cpu halted)"),this.O(a),this.F){var c=this.F;c.Y.mf=0;c.eb-=c.A;c.A=0;Qc(c)}};
function kk(a,b,c,d){var e,f;if(!d&&(d=z(a,1)&&0>mq.indexOf(b),!d)){var g=lq[b];g&&(d=z(a,g)?!0:524288==g&&z(a,g=1048576))}d&&(e=a.F.G>>8&255,f=a.F.M&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=yb[b])&&g[e]||"")&&(g=" "+fr(a,g)),a.message("INT "+t(b)+": AH="+t(e)+" at "+Gq(c-2-a.F.va.Aa,a.F.va.Z)+g));return d}
function ob(a,b,c,d,e,f,g,h){h|=256;if(null==e||(a.wc&h)==h)h=null,null!=e&&(h=a.F.va.Z,e-=a.F.va.Aa),a.message(b.de+"."+(null!=d?"outPort":"inPort")+"("+u(c)+","+(f?f:"unknown")+(null!=d?","+t(d):"")+")"+(null!=g?": "+t(g):"")+(null!=e?" at "+Gq(e,h):""))}m.gh=function(){this.O("Type ? for help with PCjs Debugger commands");this.qd();if(this.fb){var a=this.fb;this.fb=null;kq(this,a)}};
function iq(a,b){var c;if(Tf(a)){if(!a.ja||!a.ja.length){a.ja=Array(1E3);for(c=0;c<a.ja.length;c++)a.ja[c]=gq(a);a.Fa=0;b||a.O("instruction history buffer allocated")}if(!a.X||!a.X.length)for(a.X=Array(256),c=0;c<a.X.length;c++)a.X[c]=[c,0]}else a.ja&&a.ja.length&&!b&&a.O("instruction history buffer freed"),a.Fa=0,a.ja=[],a.X=[]}m.Je=function(a){if(!gr(this))return!1;this.F.Je(a);return!0};
m.uf=function(a,b,c){if(!gr(this))return!1;this.fa=0;do{a||Tf(this)&&Wf(this,this.F.Ga,0);try{var d=this.F.uf(a);0<d&&(this.fa+=d,Zc(this.F,d,!0),Vc(this.F,d),this.pa++)}catch(f){if("number"!=typeof f){var e=f;this.fa=0;ub(this.F,e.stack||e.message)}}}while(this.F.S&3312);!1!==c&&Qc(this.F);this.qd(b||!1);return 0<this.fa};m.Wb=function(a){this.F&&this.F.Wb(a)};m.qd=function(a){void 0===a&&(a=!0);this.aa=gq(this,K(this.F),this.F.va.Z);a&&1!=this.N?hr(this):ir(this)};
function iq(a,b){var c;if(Tf(a)){if(!a.ja||!a.ja.length){a.ja=Array(1E3);for(c=0;c<a.ja.length;c++)a.ja[c]=gq(a);a.Fa=0;b||a.O("instruction history buffer allocated")}if(!a.X||!a.X.length)for(a.X=Array(256),c=0;c<a.X.length;c++)a.X[c]=[c,0]}else a.ja&&a.ja.length&&!b&&a.O("instruction history buffer freed"),a.Fa=0,a.ja=[],a.X=[]}m.Ke=function(a){if(!gr(this))return!1;this.F.Ke(a);return!0};
m.vf=function(a,b,c){if(!gr(this))return!1;this.fa=0;do{a||Tf(this)&&Wf(this,this.F.Ga,0);try{var d=this.F.vf(a);0<d&&(this.fa+=d,Zc(this.F,d,!0),Vc(this.F,d),this.pa++)}catch(f){if("number"!=typeof f){var e=f;this.fa=0;ub(this.F,e.stack||e.message)}}}while(this.F.S&3312);!1!==c&&Qc(this.F);this.qd(b||!1);return 0<this.fa};m.Wb=function(a){this.F&&this.F.Wb(a)};m.qd=function(a){void 0===a&&(a=!0);this.aa=gq(this,K(this.F),this.F.va.Z);a&&1!=this.N?hr(this):ir(this)};
function gr(a){var b;if(b=a.F&&tb(a.F))b=a.F,b.la.cc?b=!0:(b.O(b.toString()+" not powered"),b=!1);b&&!qb(a.F)?(a=a.F,a.la.ud?(a.O(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}m.ic=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};m.hc=function(a,b){b&&this.O(a?"suspending":"shutting down");return a?this.save():!0};m.reset=function(a){iq(this);this.pa=this.ya=0;this.Pa=null;this.fa=0;this.aa=gq(this,K(this.F),this.F.va.Z);this.la.Ib=!1;jr(this);a||this.qd()};
m.save=function(){var a=new hf(this);N(a,0,Uq(this.aa));N(a,1,Uq(this.ua));N(a,2,[this.L,this.Ea,this.wc]);N(a,3,this.B);return a.data()};m.restore=function(a){var b=0;void 0!==a[2]&&(this.aa=Vq(a[b++]),this.ua=Vq(a[b++]),this.L=a[b][0],"string"==typeof this.L&&(this.L=[this.L]),this.Ea=a[b][1],this.wc|=a[b][2]);a[3]&&(this.B=a[3]);return!0};m.start=function(a,b){this.N||this.O("running");this.la.Ib=!0;this.uc=a;this.xd=b};
m.stop=function(a,b){if(this.la.Ib){this.la.Ib=!1;this.fa=b-this.xd;if(!this.N){var c="stopped";if(this.fa){var d=a-this.uc,e=0<d?Math.round(1E3*this.fa/d):0,c=c+" (";Tf(this)&&(c+=this.pa+" opcodes, ",this.ya-=this.pa,this.pa=0);c+=this.fa+" cycles, "+d+" ms, "+e+" hz)"}else z(this,-2147483648)&&(c+=" (use the 't' command to execute blocked faults)");this.O(c)}this.qd(!0);this.yd();jr(this,this.F.Ga)}};function Tf(a){return 1<a.A.length||!!a.Na||z(a,16)}
@ -723,7 +724,7 @@ n="CWDE":28==l?n="CDQ":104<=l&&107>=l&&(n+="D"));if(164<=f&&167>=f||170<=f&&175>
ia)ia+=8;else{var P=v,ja=bb,Ha=H,Xa=P.Qa(Ha,1),Ba=Xa>>6,Ub=Xa>>3&7,Xa=Xa&7,wa="";if(ja||5!=Xa)wa=tq[Xa+8];4!=Ub&&(wa&&(wa+="+"),wa+=tq[Ub+8],Ba&&(wa+="*"+(1<<Ba)));ja||5!=Xa||(wa&&(wa+="+"),wa+=r(P.oa(Ha,4)));P=wa}P||(P=tq[ia])}1==bb?(ja=v.Qa(H,1),ja&128?(ja=ja<<24>>24,P+="-"+r(-ja,2)):P+="+"+r(ja,2)):2==bb&&(P&&(P+="+"),H.pc?(ja=v.oa(H,4),P+=r(ja)):(ja=v.na(H,2),P+=r(ja,4)));P="["+P+"]";if(1==W){v="";E&=15;4==E&&(E=H.Sb?5:3);switch(E){case 7:v="FAR";break;case 1:v="BYTE";break;case 3:if(L){v="INT16";
break}v="WORD";break;case 5:v="DWORD";break;case 11:if(L){v="INT32";break}case 11:v="REAL32";break;case 12:if(L){v="INT64";break}case 12:v="REAL64";break;case 13:v="REAL80";break;case 14:v="BCD80"}v&&(P=v+" "+P)}}else P=qr(v,ia,E,H);v=P}else v=160==L?qr(a,g&7,E,b):qr(a,g>>3&7,E,b);else if(16==L)v="1";else if(0==L){v=a;H=E;L=b;E=" ";switch(H&15){case 1:H&12288&&(E=r(v.Qa(L,1),2));break;case 2:E=r(v.Qa(L,1)<<24>>24,L.Sb?8:4);break;case 4:if(L.Sb){E=r(v.oa(L,4));break}case 3:E=r(v.na(L,2),4);break;case 7:L=
gq(v,v.tb(L,!0),v.na(L,2),null,L.type,L.Sb,L.pc);E=Qq(L);v=rr(v,L);v[0]&&(E+=" ("+v[0]+")");break;default:E="imm("+u(H)+")"}v=E}else 32==L?(b.pc?(v=8,E=a.oa(b,4)):(v=4,E=a.na(b,2)),v="["+r(E,v)+"]"):48==L?(v=1==H?a.Qa(b,1)<<24>>24:a.tb(b,!0),E=b.Ra+v&(b.Sb?-1:65535),v=r(E,b.Sb?8:4),E=rr(a,gq(a,E,b.Z)),E[0]&&(v+=" ("+E[0]+")")):96==L?v=9==H?"ST":10==H?"ST("+(g&7)+")":qr(a,(E&3840)>>8,E,b):112==L?v=qr(a,(E&3840)>>8,192,b):64==L?v="DS:[SI]":80==L&&(v="ES:[DI]");if(!v||!v.length){q="INVALID";break}0<
q.length&&(q+=",");q+=v||"???"}}}g="";k=Qq(e)+" ";if(-1!==e.Da&&-1!==b.Da){do if(g+=r(a.Qa(e,1),2),null==e.Da)break;while(e.Da!=b.Da)}k+=ma(g,e.pc?24:16);k+=ma(n,8);q&&(k+=" "+q);a.F.ia<rq[f]&&(c=rq[f]+" CPU only");c&&A&&(k=ma(k,e.pc?74:56)+";"+c,k=a.F.la.Xe?k+("cycles="+Wc(a.F).toString()+" cs="+r(a.F.Y.Hf)):k+(null!=d?"="+d.toString():""));sr(b,A,h);return k}
q.length&&(q+=",");q+=v||"???"}}}g="";k=Qq(e)+" ";if(-1!==e.Da&&-1!==b.Da){do if(g+=r(a.Qa(e,1),2),null==e.Da)break;while(e.Da!=b.Da)}k+=ma(g,e.pc?24:16);k+=ma(n,8);q&&(k+=" "+q);a.F.ia<rq[f]&&(c=rq[f]+" CPU only");c&&A&&(k=ma(k,e.pc?74:56)+";"+c,k=a.F.la.Ye?k+("cycles="+Wc(a.F).toString()+" cs="+r(a.F.Y.If)):k+(null!=d?"="+d.toString():""));sr(b,A,h);return k}
function qr(a,b,c,d){var e=c&240;if(192==e){if(5<b||4<=b&&80386>a.F.ia)return"??";b+=16}else if(208==e)b+=32;else if(224==e)b+=40;else if(240==e)b+=48;else if(a=c&15,3<=a&&(8>b&&(b+=8),5==a||4==a&&d.Sb))b+=16;return sq[b]}
function tr(a,b){var c;switch(b){case "V":c=uf(a.F);break;case "D":c=a.F.ca&1024;break;case "I":c=a.F.ca&512;break;case "T":c=a.F.ca&256;break;case "S":c=tf(a.F);break;case "Z":c=sf(a.F);break;case "A":c=rf(a.F);break;case "P":c=qf(a.F);break;case "C":c=pf(a.F);break;default:c=0}return b+(c?"1":"0")+" "}function Fq(a){return r(a,a&-65536?8:4)}function ur(a,b){8<=b&&15>=b&&4<a.Ja&&(b+=16);var c=sq[b];32==b&&80286==a.F.ia&&(c="MS");return c+"="+dr(a,b)+" "}
function vr(a,b,c){return b.lc+"="+r(b.Z,4)+(c?"["+r(b.Aa,a.Ca)+","+Fq(b.Ta)+"]":"")}function wr(a,b,c,d,e){return b+"="+(null!=c?r(c,4):"")+"["+r(d,a.Ca)+","+r(e-d,4)+"]"}
@ -736,7 +737,7 @@ d))}return d}function Yq(a,b){for(var c;(c=b.match(/\{(.*?)}/))&&!(0<=c[1].index
function Cq(a,b,c,d){var e;void 0!==b?(e=cr(b),0<=e?e=er(a,e):(e=a.wa[b],void 0===e&&(e=ca(b))),void 0!==e||d||a.O("invalid "+(c?c:"value")+": "+b)):d||a.O("missing "+(c||"value"));return e}function Ar(a,b,c){var d,e=!1;void 0!==c&&(e=!0,d="0x"+r(c)+" "+c+". ("+ea(c)+")");a.O((null!=b?b+": ":"")+d);return e}function Br(a,b){if(b)return Ar(a,b,a.wa[b]);var c=0;for(b in a.wa)Ar(a,b,a.wa[b]),c++;return 0<c}fq.prototype.sb=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
function am(a,b,c,d,e,f,g,h){var k={},l=[],n;for(n in h){var q=h[n];"number"==typeof q&&(h[n]=q={o:q});var p=q.o,A=q.s,F=q.a;if(void 0!==p){void 0!==A&&(k.Ra=p,k.Z=A,k.Da=null,a.dc(k),(k.Da&-65536)==(a.ea.wg&-65536)&&(k.Da&=1048575),q.p=k.Da);var A=l,p=[p>>>0,n],v=oa(A,p,a.sb);0>v&&A.splice(-(v+1),0,p)}F&&(q.a=F.replace(/''/g,'"'))}a.B.push({fg:b,lm:c,Z:d,Ra:e,Da:f,dm:g,Qd:h,ri:l})}
function Oq(a,b,c){for(var d=0;d<a.B.length;d++){var e=a.B[d];if(!b||e.fg==b)if(b&&c==e.lm||!b&&c==e.Z){a.B.splice(d,1);break}}}function rr(a,b,c){for(var d=[],e=b.Ra>>>0,f=a.dc(b)>>>0,g=0;g<a.B.length;g++){var h=a.B[g],k=h.Z,l=h.Ra>>>0,n=h.Da;null!=n&&(n>>>=0);var q=h.dm;48==k&&(k=40);if(k==b.Z&&e>=l&&e<l+q||null!=n&&f>=n&&f<n+q){b=oa(h.ri,[e],a.sb);0<=b?Cr(a,g,b,d):c&&(b=~b,Cr(a,g,b-1,d),Cr(a,g,b,d));break}}!d.length&&(a=a.ea.Si(f,!0))&&(d.push(a),d.push(f));return d}
function Cr(a,b,c,d){var e={},f=a.B[b].ri,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.B[b].Qd[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function Dr(a){a.Cf&&(a.Cf.value="")}
function Cr(a,b,c,d){var e={},f=a.B[b].ri,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.B[b].Qd[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function Dr(a){a.Df&&(a.Df.value="")}
function Er(a,b){if("?"==b)a.O("frequency commands:"),a.O("\tclear\tclear all frequency counts");else{var c,d=0;if(a.X)if("clear"==b){for(c=0;c<a.X.length;c++)a.X[c]=[c,0];a.O("frequency data cleared");d++}else if(void 0!==b)a.O("unknown frequency command: "+b),d++;else{var e=a.X.slice();e.sort(function(a,b){return b[1]-a[1]});for(c=0;c<e.length;c++){var f=e[c][0],g=e[c][1];g&&(a.O((oq[a.Ia[f][0]]+" ").substr(0,5)+" ("+t(f)+"): "+g+" times"),d++)}}d||a.O("no frequency data available")}}
function Fr(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return Br(a)||a.O("no variables"),!0;if(!c[2])return Br(a,c[1]);if(!c[3])return delete a.wa[c[1]],!0;var d=Zq(a,c[3]);return void 0!==d?(a.wa[c[1]]=d,!0):!1}a.O("invalid assignment:"+b);return!1}
function Gr(a,b,c){var d=null;if(b=Xq(a,b,!0)){a.dc(b);var e=rr(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.Ra-e[1])&&(g=" + "+u(f)),f=e[0]+" ("+Gq(e[1],b.Z)+")"+g,c&&a.O(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.Ra)&&(g=" - "+u(f)),f=e[4]+" ("+Gq(e[5],b.Z)+")"+g,c&&a.O(f),d||(d=f))}else c&&a.O("no symbols")}return d}
@ -747,9 +748,9 @@ h[2]}if(!e)break;a.O("ST"+g+": "+ma(e[2].toFixed(15),24,!0)+" "+r(e[4])+","+r(e
k){case "AL":a.F.G=a.F.G&-256|h&255;break;case "AH":a.F.G=a.F.G&-65281|h<<8&255;break;case "AX":a.F.G=a.F.G&-65536|h&65535;break;case "BL":a.F.H=a.F.H&-256|h&255;break;case "BH":a.F.H=a.F.H&-65281|h<<8&255;break;case "BX":a.F.H=a.F.H&-65536|h&65535;break;case "CL":a.F.I=a.F.I&-256|h&255;break;case "CH":a.F.I=a.F.I&-65281|h<<8&255;break;case "CX":a.F.I=a.F.I&-65536|h&65535;break;case "DL":a.F.M=a.F.M&-256|h&255;break;case "DH":a.F.M=a.F.M&-65281|h<<8&255;break;case "DX":a.F.M=a.F.M&-65536|h&65535;
break;case "SP":G(a.F,I(a.F)&-65536|h&65535);break;case "BP":a.F.P=a.F.P&-65536|h&65535;break;case "SI":a.F.K=a.F.K&-65536|h&65535;break;case "DI":a.F.J=a.F.J&-65536|h&65535;break;case "DS":vd(a.F,h);break;case "ES":wd(a.F,h);break;case "SS":kd(a.F,h);break;case "CS":kf(a.F,h);a.aa=gq(a,K(a.F),a.F.va.Z);break;case "IP":case "EIP":O(a.F,h);a.aa=gq(a,K(a.F),a.F.va.Z);break;case "PC":case "PS":yd(a.F,h);break;case "C":h?wf(a.F):xf(a.F);break;case "P":h?(e=a.F,e.resultType&=-3,e.ca|=4):(e=a.F,e.resultType&=
-3,e.ca&=-5);break;case "A":h?Ef(a.F):Cf(a.F);break;case "Z":h?Ff(a.F):Df(a.F);break;case "S":h?(e=a.F,e.resultType&=-17,e.ca|=128):(e=a.F,e.resultType&=-17,e.ca&=-129);break;case "I":h?(e=a.F,e.ca|=512):(e=a.F,e.ca&=-513);break;case "D":h?(e=a.F,e.ca|=1024):(e=a.F,e.ca&=-1025);break;case "V":h?yf(a.F):zf(a.F);break;default:var l=!0;if(80286<=a.F.ia)switch(l=!1,k){case "MS":Gf(a.F,h);break;case "TR":-1===a.F.Sa.load(h)&&(g=!1);break;default:if(l=!0,80386<=a.F.ia)switch(l=!1,k){case "EAX":a.F.G=h;
break;case "EBX":a.F.H=h;break;case "ECX":a.F.I=h;break;case "EDX":a.F.M=h;break;case "ESP":G(a.F,h);break;case "EBP":a.F.P=h;break;case "ESI":a.F.K=h;break;case "EDI":a.F.J=h;break;case "FS":a.F.Ob.load(h);break;case "GS":a.F.Pb.load(h);break;case "CR0":a.F.Ya=h;pj.call(a.F,h);break;case "CR2":a.F.se=h;break;case "CR3":a.F.Od=h;Ad.call(a.F,h);break;default:l=!0}}if(l){a.O("unknown register: "+e);return}}if(!g){a.O("invalid value: "+f);return}Qc(a.F);a.O("updated registers:")}}a.O(xr(a,d));c&&(a.aa=
break;case "EBX":a.F.H=h;break;case "ECX":a.F.I=h;break;case "EDX":a.F.M=h;break;case "ESP":G(a.F,h);break;case "EBP":a.F.P=h;break;case "ESI":a.F.K=h;break;case "EDI":a.F.J=h;break;case "FS":a.F.Ob.load(h);break;case "GS":a.F.Pb.load(h);break;case "CR0":a.F.Ya=h;pj.call(a.F,h);break;case "CR2":a.F.te=h;break;case "CR3":a.F.Od=h;Ad.call(a.F,h);break;default:l=!0}}if(l){a.O("unknown register: "+e);return}}if(!g){a.O("invalid value: "+f);return}Qc(a.F);a.O("updated registers:")}}a.O(xr(a,d));c&&(a.aa=
gq(a,K(a.F),a.F.va.Z),ir(a,Qq(a.aa)))}}function Ir(a,b){b=na(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(fr(a,c[2])):Zq(a,b,!0)}function Jr(a,b,c){for(var d=null,e=b.Ra,f=e,g=1;6>=g&&e;g++){if(2<g){b.Ra=e;b.Da=null;var h=pr(a,b);if(0<h.indexOf("CALL")||c&&0<h.indexOf("INT")){var k=h.indexOf(" ");if(e+(h.indexOf(" ",k+1)-k-1)/2==f){d=h;break}}}e--}b.Ra=f;return d}
function Kr(a,b,c){var d="t"!=b;c=Cq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Ja(c,function(){return pb(a,!0)&&a.uf(e,d,!1)},function(){Qc(a.F);pb(a,!1)})}function sr(a,b,c){if(a.Vd=b)null!=a.Li&&(a.Sb=a.Li),null!=a.Ji&&(a.pc=a.Ji),a.Li=a.Sb,a.Ji=a.pc;a.Re=c||0}
function Kr(a,b,c){var d="t"!=b;c=Cq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Ja(c,function(){return pb(a,!0)&&a.vf(e,d,!1)},function(){Qc(a.F);pb(a,!1)})}function sr(a,b,c){if(a.Vd=b)null!=a.Li&&(a.Sb=a.Li),null!=a.Ji&&(a.pc=a.Ji),a.Li=a.Sb,a.Ji=a.pc;a.Se=c||0}
function ir(a,b,c,d){if(b=Xq(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=Xq(a,c,!0);if(!d||d.Ra<b.Ra)return;e=d.Ra-b.Ra;if(256<e){a.O("range too large");return}d=-1}c=0;var f;for(sr(b,!0);0<e&&d--;){f=qb(a,!1)||a.N?a.fa:null;var g=null!=f?"cycles":null,h=rr(a,b),k=b.Da;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var l=h[0]+":";h[2]&&(l+=" "+h[2]);a.O(l)}h[3]&&(g=h[3],f=null);f=pr(a,b,g,f);b.Vd||d||d++;a.O(f);a.aa=b;e-=b.Da-k;c++}}}
function ar(a,b,c,d){if(c)if(b){0>a.U&&a.L.length&&(a.U=0);if(0>a.U||b!=a.L[a.U])a.L.splice(0,0,b),a.U=0;a.U--}else b=a.L[a.U+1];a=[];if(b){b=b.toLowerCase().replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(na(b.substring(c,f))),c=f+1}}return a}
function or(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.Ea&&(a.O("ended assemble at "+Qq(a.ua)),a.aa=a.ua,a.Ea=!1),b="";else if(!c){var e=">> ";a.F.Ya&1&&(e=a.F.ca&131072?"-- ":"## ");a.O(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.Pa=null;if(tb(a)&&0<b.length){a.Ea&&(b="a "+Qq(a.ua)+" "+b);var g=b.replace(/ +/g," ").split(" ");if(g&&g.length)for(var h=g[0],k=h.charAt(0),l=1;l<h.length;l++){var n=h.charAt(l);if("?"==k||"r"==k||"a">n||"z"<n){g[0]=h.substr(l);g.unshift(h.substr(0,l));break}}switch(g[0].charAt(0)){case "a":var q=
@ -757,29 +758,29 @@ Xq(a,g[1],!0);if(q)if(a.ua=q,void 0===g[2])a.O("begin assemble at "+Qq(q)),a.Ea=
a.O("\tbc [a]\tclear breakpoint at addr [a]"),a.O("\tbl\tlist all breakpoints"),a.O("\tbn [n]\tbreak after [n] instruction(s)");else{var H=F.charAt(1);if("l"==H){var L=0,L=L+nr(a,a.A),L=L+nr(a,a.ra);(L+=nr(a,a.ga))||a.O("no breakpoints")}else if("n"==H)a.Na=Cq(a,v),a.O("break after "+a.Na+" instruction(s)");else if(void 0===v)a.O("missing breakpoint address");else{var W={};if("*"!=v&&(W=Xq(a,v,!0,!0),!W))break a;v=null==W.Ra?v:u(W.Ra);"c"==H?null==W.Ra?(hq(a),a.O("all breakpoints cleared")):Pq(a,
a.A,W)||Pq(a,a.ra,W)||Pq(a,a.ga,W)||a.O("breakpoint missing: "+Qq(W)):"i"==H?a.O("breakpoint "+(gc(a.ea,W.Ra)?"enabled":"cleared")+": port "+v+" (input)"):"o"==H?a.O("breakpoint "+(kc(a.ea,W.Ra)?"enabled":"cleared")+": port "+v+" (output)"):null!=W.Ra&&($q(a,W,E),"p"==H?a.Rd(a.A,W):"r"==H?a.Rd(a.ra,W):"w"==H?a.Rd(a.ga,W):a.O("unknown breakpoint command: "+H))}}}break;case "c":Dr(a);break;case "d":a:{var P=g,bb,ia=P[0],ja=P[1],Ha=P[2],Xa=P[3];if("?"==ja){var Ba="";for(bb in uq)a.Za[bb]&&(Ba&&(Ba+=
","),Ba+=bb);Ba+=",state,symbols";a.O("dump memory commands:");a.O("\tdb [a] [#] dump # bytes at address a");a.O("\tdw [a] [#] dump # words at address a");a.O("\tdd [a] [#] dump # dwords at address a");a.O("\tdh [#] [#] dump # instructions from history");a.O("\tdi [#] dump descriptor info for IDT #");a.O("\tds [#] dump descriptor info for selector #");Ba.length&&a.O("dump extension commands:\n\t"+Ba)}else if("state"==ja){var Ub=Lr(a.V,!0);"console"==Ha?console.log(Ub):(Dr(a),
a.O(Ub))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Ud=a.B[wa],Rc;for(Rc in Ud.Qd)if("."!=Rc.charAt(0)){var Vd=Ud.Qd[Rc],He=Vd.o;if(void 0!==He){var Wd=Vd.s;void 0===Wd&&(Wd=Ud.Z);var Ie=Ud.Qd[Rc].l;Ie&&(Rc=Ie);a.O(Gq(He,Wd)+" "+Rc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var gi=P[0];if(gi){var Se=a.dc(Xq(a,gi));if(-1===Se)a.O("invalid address: "+gi);else{var ae,Da=null;if(80386<=a.F.ia){var be=
a.ea,Da={};Da.bk=(Se&-4194304)>>>20;Da.ui=a.F.Od+Da.bk;Da.yb=be.sa[(Da.ui&be.Gb)>>>be.La];Da.Ui=Da.yb.Md(Da.bk);Da.ck=(Se&4190208)>>>10;Da.vi=(Da.Ui&-4096)+Da.ck;Da.zb=be.sa[(Da.vi&be.Gb)>>>be.La];Da.Vi=Da.zb.Md(Da.ck);Da.Fk=(Da.Vi&-4096)+(Se&4095)}if(ae=Da){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var pd="%"+r(Se),pd=pd+(" %%"+br(ae.ui,ae.Ui)),pd=pd+(" %%"+br(ae.vi,ae.Vi,!0)),
pd=pd+(" %%"+r(ae.Fk));a.O(pd)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==ia){if("disk"==ja){P[0]="l";P[1]="json";Hr(a,P);break a}for(bb in uq)if(P[1]==bb){var Cn=a.Za[bb];Cn?(P.shift(),P.shift(),Cn(P)):a.O("no dump registered for "+ja);break a}ja||(ia=a.Cc||"db")}else a.Cc=ia;if("dh"==ia){var Dn=ja,En=Ha,Fn="",Gn=0,sb=a.Fa,tc=a.ja;if(tc.length){var Cb=+Dn||a.Ub,ce=+En||10;isNaN(Cb)?Cb=ce:Fn="more ";Cb>tc.length&&(a.O("note: only "+tc.length+" available"),Cb=tc.length);
sb-=Cb;0>sb&&(null==tc[tc.length-1].Z?(Cb=sb+Cb,sb=0):sb+=tc.length);var hi=[];"call"==En&&(ce=1E5,hi=["CALL"]);for(void 0!==Dn&&a.O(Cb+" instructions earlier:");0<ce&&sb!=a.Fa;){var qd=tc[sb++];if(null==qd.Z)break;var Te=gq(a,qd.Ra,qd.Z,qd.Da,qd.type,qd.Sb,qd.pc),es=Cb--,Hn=pr(a,Te,"history",es);(!hi.length||0<=Hn.indexOf(hi[0]))&&a.O(Hn);Te.Re&&(sb+=Te.Re,ce-=Te.Re,Cb-=Te.Re);sb>=tc.length&&(sb=0);a.Ub=Cb;Gn++;ce--}}Gn||(a.O("no "+Fn+"history available"),a.Ub=void 0)}else if("di"==ia){P.shift();
var ii=P[0];if(ii){var Ue=Cq(a,ii);if(void 0===Ue||0>Ue||255<Ue)a.O("invalid vector: "+ii);else{var In="&",Jn=!!(a.F.Ya&1),Kn=!1,og=a.F.Mc+(Ue<<(Jn?3:2)),ji=a.F.na(og+0),fs=a.F.na(og+2);Jn&&(In="#",a.F.na(og+4)&2048&&(Kn=!0,ji|=a.F.na(og+6)<<16));a.O("dumpIDT("+u(Ue)+"): "+In+r(fs,4)+":"+r(ji,Kn?8:4))}}else a.O("no IDT vector")}else if("dt"==ia)P.shift(),a.O("no information");else{var de=Xq(a,ja);if(de&&(null!=de.Z||null!=de.Da)){var pg=0;Ha&&("l"==Ha.charAt(0)&&(Ha=Ha.substr(1)||Xa),pg=Cq(a,Ha)>>>
0,65536<pg&&(pg=65536));for(var rd="",gs=(pg||128)+15>>4||1,ki="dd"==ia?4:"dw"==ia?2:1,Ln=0;Ln<gs;Ln++){for(var qg=0,li=0,Ve="",mi="",ja=Qq(de),ni=0;16>ni;ni++){var rg=a.Qa(de,1),qg=qg|rg<<(li++<<3);li==ki&&(Ve+=r(qg,2*ki),Ve+=1==ki?7==ni?"-":" ":" ",qg=li=0);mi+=32<=rg&&128>rg?String.fromCharCode(rg):"."}rd&&(rd+="\n");rd+=ja+" "+Ve+" "+mi}rd&&a.O(rd);a.Db=de}}}}}break;case "e":if("else"==g[0])break;var sg=1,Mn=255,Nn=a.Qa,On=a.qc;"ew"==g[0]&&(sg=2,Mn=65535,Nn=a.na,On=a.ib);var Pn=sg<<1,Qn=g[1];
if(null==Qn)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var tg=Xq(a,Qn);if(tg)for(var ug=2;ug<g.length;ug++){var We=Zq(a,g[ug]);if(void 0===We){a.O("unrecognized value: "+g[ug]);break}We&~Mn&&a.O("warning: "+r(We)+" exceeds "+sg+"-byte value");var hs=Nn.call(a,tg);a.O("changing "+Qq(tg)+" from 0x"+r(hs,Pn)+" to 0x"+r(We,Pn));On.call(a,tg,We,sg)}}break;case "f":Er(a,g[1]);break;case "g":a:{var Rn=g[1],is=b;"gt"==g[0]&&
(a.bb=!0);if(void 0!==Rn){var oi=Xq(a,Rn,!0);if(!oi)break a;$q(a,oi,is);a.Rd(a.A,oi,!0)}a.Je(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":var pi;a.la.Ib?(pi="halting",a.Wb()):pi="already halted";c||a.O(pi);break;case "i":if("if"==g[0]){var qi;var Xe=b.substr(2),Xe=na(Xe);Zq(a,Xe)?(c||a.O("true: "+Xe),qi=!0):(c||a.O("false: "+Xe),qi=!1);qi||(d=!1);break}if("int"==g[0]){var vg;a:switch(Cq(a,g[1])){case 19:kk(a,19,a.F.Ga,!0);a.ya=a.pa;vg=!0;break a;case 33:kk(a,33,a.F.Ga,
!0);a.ya=a.pa;vg=!0;break a;default:vg=!1}vg||(d=!1);break}var ri=g[1];if(ri&&"?"!=ri){var si=Cq(a,ri);if(void 0!==si){var js=ic(a.ea,si,1);a.O(u(si)+": "+t(js))}}else a.O("input commands:"),a.O("\ti [p]\tread port [p]"),a.O("warning: port accesses can affect hardware state");break;case "k":var ks=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var ti=0,Sn=a.F.va.Z,Ye=gq(a),Tc=gq(a,I(a.F),a.F.ta.Z);for(a.O("stack trace for "+
Qq(Tc));10>ti;){for(var uc=null,ls=256;Tc.Ra>>>0<a.F.Kg>>>0;){Ye.Ra=a.tb(Tc,!0);if(null==Tc.Da||!ls--)break;Ye.Z=Sn;if(uc=Jr(a,Ye))break;Ye.Z=a.tb(Tc);if(uc=Jr(a,Ye,!0)){Sn=a.tb(Tc,!0);0<uc.indexOf("INT")&&a.tb(Tc,!0);break}}if(!uc||null==uc)break;var Tn=null;if("ks"==ks){var Un=uc.match(/[0-9A-F]+$/);Un&&(Tn=Gr(a,Un[0]))}uc=ma(uc,50)+" ;"+(Tn||"stack="+Qq(Tc));a.O(uc);ti++}ti||a.O("no return addresses found")}break;case "l":if("ln"==g[0]){Gr(a,g[1],!0);break}Hr(a,g);break;case "m":if("mouse"==g[0]){var ui=
g[1],wg=g[2];if(a.W){var Vn=1;"-"==wg.charAt(0)&&(Vn=-1,wg=wg.substr(1));var sd=Cq(a,wg,ui);if(void 0!==sd)switch(sd=sd*Vn|0,ui){case "x":a.W.Gf(sd,0);break;case "y":a.W.Gf(0,sd);break;case "click":a.W.ie(sd,!0);a.W.ie(sd,!1);break;default:a.O("unknown action: "+ui)}}else a.O("no mouse");break}a:{var vc,wc=null,Oa=g[1];"?"==Oa&&(Oa=void 0);if(void 0!==Oa){var td=0;if("all"==Oa)td=1610481663,Oa=null;else if("on"==Oa)wc=!0,Oa=null;else if("off"==Oa)wc=!1,Oa=null;else{"keys"==Oa&&(Oa="key");"kbd"==Oa&&
(Oa="keyboard");for(vc in uq)if(Oa==vc){td=uq[vc];wc=!!(a.wc&td);break}if(!td){a.O("unknown message category: "+Oa);break a}}td&&("on"==g[2]?(a.wc|=td,wc=!0):"off"==g[2]&&(a.wc&=~td,wc=!1))}var ms=0,Uc="";for(vc in uq)if(!Oa||Oa==vc){var ns=!!(a.wc&uq[vc]);if(null===wc||wc==ns)Uc&&(Uc+=","),++ms%10||(Uc+="\n\t"),"key"==vc&&(vc="keys"),Uc+=vc}void 0===Oa&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.O((null!==wc?wc?"messages on: ":"messages off: ":"message categories:\n\t")+
(Uc||"none"));iq(a)}break;case "o":var vi=g[1],os=g[2];if(vi&&"?"!=vi){var wi=Cq(a,vi,"port #"),xi=Cq(a,os);void 0!==wi&&void 0!==xi&&(mc(a.ea,wi,1,xi),a.O(u(wi)+": "+t(xi)))}else a.O("output commands:"),a.O("\to [p] [b]\twrite byte [b] to port [p]"),a.O("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Ir(a,b.substr(5));break}var Wn="pr"==g[0]?1:0,ee=1+Wn;if(a.N)a.O("step in progress");else{var xg,Xn=!1,kb=gq(a,K(a.F),a.F.va.Z);do switch(xg=!1,a.Qa(kb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:Sq(a,
kb,1);xg=!0;break;case 204:case 206:a.N=ee;Sq(a,kb,1);break;case 205:case 224:case 225:case 226:a.N=ee;Sq(a,kb,kb.Sb?4:2);break;case 232:a.N=ee;Sq(a,kb,kb.Sb?5:3);break;case 154:a.N=ee;Sq(a,kb,kb.Sb?7:5);break;case 255:var Yn=a.tb(kb)&14591;if(4351==Yn||6399==Yn)a.N=ee,pr(a,kb);break;case 243:case 242:Sq(a,kb,1);Xn=xg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Xn&&(a.N=ee,Sq(a,kb,1))}while(xg);a.N?(a.Rd(a.A,
kb,!0),a.Je()||(a.V&&a.V.yd(),a.N=0)):Kr(a,Wn?"tr":"t")}break;case "r":if("reset"==b){a.V&&a.V.reset();break}hr(a,g);break;case "t":Kr(a,g[0],g[1]);break;case "u":ir(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Fr(a,b.substr(3))||(d=!1);break}a.O("PCjs version 1.21.4 ("+a.F.ia+",RELEASE,NOPREFETCH"+(vb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.O(ya());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var Ze;void 0!==g[3]&&(Ze=+g[3]);switch(g[2]){case "int":a.F.Y.hf=Ze;break;case "start":a.F.Y.If=
Ze;break;case "stop":a.F.Y.kf=Ze;break;default:a.O("unknown cs option");break a}void 0!==Ze&&Pc(a.F);a.O("checksums "+(a.F.la.Xe?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Xc(a.F,+g[2])||a.O("warning: using 1x multiplier, previous target not reached"));a.O("target speed: "+(a.F.Y.Ee.toFixed(2)+"Mhz")+" ("+a.F.Y.Xd+"x)");break;default:a.O("unknown option: "+g[1])}else a.O("execution options:"),a.O("\tcs int #\tset checksum cycle interval to #"),a.O("\tcs start #\tset checksum cycle start count to #"),
a.O("\tcs stop #\tset checksum cycle stop count to #"),a.O("\tsp #\t\tset speed multiplier to #");break;case "?":if(g[1]){Ir(a,b.substr(1));break}var $e="commands:",yi;for(yi in nq)$e+="\n"+ma(yi,7)+nq[yi];Tf(a)||($e+="\nnote: frequency/history disabled if no exec breakpoints");a.O($e);break;default:a.O("unknown command: "+b),d=!1}}}catch(Zn){a.O("debugger error: "+(Zn.stack||Zn.message)),d=!1}return d}function kq(a,b,c){b=ar(a,b,c);for(var d in b)if(!or(a,b[d]))return!1;return!0}
a.O(Ub))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Vd=a.B[wa],Rc;for(Rc in Vd.Qd)if("."!=Rc.charAt(0)){var Wd=Vd.Qd[Rc],Ie=Wd.o;if(void 0!==Ie){var Xd=Wd.s;void 0===Xd&&(Xd=Vd.Z);var Je=Vd.Qd[Rc].l;Je&&(Rc=Je);a.O(Gq(Ie,Xd)+" "+Rc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var gi=P[0];if(gi){var Te=a.dc(Xq(a,gi));if(-1===Te)a.O("invalid address: "+gi);else{var be,Da=null;if(80386<=a.F.ia){var ce=
a.ea,Da={};Da.bk=(Te&-4194304)>>>20;Da.ui=a.F.Od+Da.bk;Da.yb=ce.sa[(Da.ui&ce.Gb)>>>ce.La];Da.Ui=Da.yb.Md(Da.bk);Da.ck=(Te&4190208)>>>10;Da.vi=(Da.Ui&-4096)+Da.ck;Da.zb=ce.sa[(Da.vi&ce.Gb)>>>ce.La];Da.Vi=Da.zb.Md(Da.ck);Da.Fk=(Da.Vi&-4096)+(Te&4095)}if(be=Da){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var qd="%"+r(Te),qd=qd+(" %%"+br(be.ui,be.Ui)),qd=qd+(" %%"+br(be.vi,be.Vi,!0)),
qd=qd+(" %%"+r(be.Fk));a.O(qd)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==ia){if("disk"==ja){P[0]="l";P[1]="json";Hr(a,P);break a}for(bb in uq)if(P[1]==bb){var Cn=a.Za[bb];Cn?(P.shift(),P.shift(),Cn(P)):a.O("no dump registered for "+ja);break a}ja||(ia=a.Cc||"db")}else a.Cc=ia;if("dh"==ia){var Dn=ja,En=Ha,Fn="",Gn=0,sb=a.Fa,tc=a.ja;if(tc.length){var Cb=+Dn||a.Ub,de=+En||10;isNaN(Cb)?Cb=de:Fn="more ";Cb>tc.length&&(a.O("note: only "+tc.length+" available"),Cb=tc.length);
sb-=Cb;0>sb&&(null==tc[tc.length-1].Z?(Cb=sb+Cb,sb=0):sb+=tc.length);var hi=[];"call"==En&&(de=1E5,hi=["CALL"]);for(void 0!==Dn&&a.O(Cb+" instructions earlier:");0<de&&sb!=a.Fa;){var rd=tc[sb++];if(null==rd.Z)break;var Ue=gq(a,rd.Ra,rd.Z,rd.Da,rd.type,rd.Sb,rd.pc),es=Cb--,Hn=pr(a,Ue,"history",es);(!hi.length||0<=Hn.indexOf(hi[0]))&&a.O(Hn);Ue.Se&&(sb+=Ue.Se,de-=Ue.Se,Cb-=Ue.Se);sb>=tc.length&&(sb=0);a.Ub=Cb;Gn++;de--}}Gn||(a.O("no "+Fn+"history available"),a.Ub=void 0)}else if("di"==ia){P.shift();
var ii=P[0];if(ii){var Ve=Cq(a,ii);if(void 0===Ve||0>Ve||255<Ve)a.O("invalid vector: "+ii);else{var In="&",Jn=!!(a.F.Ya&1),Kn=!1,og=a.F.Mc+(Ve<<(Jn?3:2)),ji=a.F.na(og+0),fs=a.F.na(og+2);Jn&&(In="#",a.F.na(og+4)&2048&&(Kn=!0,ji|=a.F.na(og+6)<<16));a.O("dumpIDT("+u(Ve)+"): "+In+r(fs,4)+":"+r(ji,Kn?8:4))}}else a.O("no IDT vector")}else if("dt"==ia)P.shift(),a.O("no information");else{var ee=Xq(a,ja);if(ee&&(null!=ee.Z||null!=ee.Da)){var pg=0;Ha&&("l"==Ha.charAt(0)&&(Ha=Ha.substr(1)||Xa),pg=Cq(a,Ha)>>>
0,65536<pg&&(pg=65536));for(var sd="",gs=(pg||128)+15>>4||1,ki="dd"==ia?4:"dw"==ia?2:1,Ln=0;Ln<gs;Ln++){for(var qg=0,li=0,We="",mi="",ja=Qq(ee),ni=0;16>ni;ni++){var rg=a.Qa(ee,1),qg=qg|rg<<(li++<<3);li==ki&&(We+=r(qg,2*ki),We+=1==ki?7==ni?"-":" ":" ",qg=li=0);mi+=32<=rg&&128>rg?String.fromCharCode(rg):"."}sd&&(sd+="\n");sd+=ja+" "+We+" "+mi}sd&&a.O(sd);a.Db=ee}}}}}break;case "e":if("else"==g[0])break;var sg=1,Mn=255,Nn=a.Qa,On=a.qc;"ew"==g[0]&&(sg=2,Mn=65535,Nn=a.na,On=a.ib);var Pn=sg<<1,Qn=g[1];
if(null==Qn)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var tg=Xq(a,Qn);if(tg)for(var ug=2;ug<g.length;ug++){var Xe=Zq(a,g[ug]);if(void 0===Xe){a.O("unrecognized value: "+g[ug]);break}Xe&~Mn&&a.O("warning: "+r(Xe)+" exceeds "+sg+"-byte value");var hs=Nn.call(a,tg);a.O("changing "+Qq(tg)+" from 0x"+r(hs,Pn)+" to 0x"+r(Xe,Pn));On.call(a,tg,Xe,sg)}}break;case "f":Er(a,g[1]);break;case "g":a:{var Rn=g[1],is=b;"gt"==g[0]&&
(a.bb=!0);if(void 0!==Rn){var oi=Xq(a,Rn,!0);if(!oi)break a;$q(a,oi,is);a.Rd(a.A,oi,!0)}a.Ke(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":var pi;a.la.Ib?(pi="halting",a.Wb()):pi="already halted";c||a.O(pi);break;case "i":if("if"==g[0]){var qi;var Ye=b.substr(2),Ye=na(Ye);Zq(a,Ye)?(c||a.O("true: "+Ye),qi=!0):(c||a.O("false: "+Ye),qi=!1);qi||(d=!1);break}if("int"==g[0]){var vg;a:switch(Cq(a,g[1])){case 19:kk(a,19,a.F.Ga,!0);a.ya=a.pa;vg=!0;break a;case 33:kk(a,33,a.F.Ga,
!0);a.ya=a.pa;vg=!0;break a;default:vg=!1}vg||(d=!1);break}var ri=g[1];if(ri&&"?"!=ri){var si=Cq(a,ri);if(void 0!==si){var js=ic(a.ea,si,1);a.O(u(si)+": "+t(js))}}else a.O("input commands:"),a.O("\ti [p]\tread port [p]"),a.O("warning: port accesses can affect hardware state");break;case "k":var ks=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var ti=0,Sn=a.F.va.Z,Ze=gq(a),Tc=gq(a,I(a.F),a.F.ta.Z);for(a.O("stack trace for "+
Qq(Tc));10>ti;){for(var uc=null,ls=256;Tc.Ra>>>0<a.F.Kg>>>0;){Ze.Ra=a.tb(Tc,!0);if(null==Tc.Da||!ls--)break;Ze.Z=Sn;if(uc=Jr(a,Ze))break;Ze.Z=a.tb(Tc);if(uc=Jr(a,Ze,!0)){Sn=a.tb(Tc,!0);0<uc.indexOf("INT")&&a.tb(Tc,!0);break}}if(!uc||null==uc)break;var Tn=null;if("ks"==ks){var Un=uc.match(/[0-9A-F]+$/);Un&&(Tn=Gr(a,Un[0]))}uc=ma(uc,50)+" ;"+(Tn||"stack="+Qq(Tc));a.O(uc);ti++}ti||a.O("no return addresses found")}break;case "l":if("ln"==g[0]){Gr(a,g[1],!0);break}Hr(a,g);break;case "m":if("mouse"==g[0]){var ui=
g[1],wg=g[2];if(a.W){var Vn=1;"-"==wg.charAt(0)&&(Vn=-1,wg=wg.substr(1));var td=Cq(a,wg,ui);if(void 0!==td)switch(td=td*Vn|0,ui){case "x":a.W.Hf(td,0);break;case "y":a.W.Hf(0,td);break;case "click":a.W.ie(td,!0);a.W.ie(td,!1);break;default:a.O("unknown action: "+ui)}}else a.O("no mouse");break}a:{var vc,wc=null,Oa=g[1];"?"==Oa&&(Oa=void 0);if(void 0!==Oa){var ud=0;if("all"==Oa)ud=1610481663,Oa=null;else if("on"==Oa)wc=!0,Oa=null;else if("off"==Oa)wc=!1,Oa=null;else{"keys"==Oa&&(Oa="key");"kbd"==Oa&&
(Oa="keyboard");for(vc in uq)if(Oa==vc){ud=uq[vc];wc=!!(a.wc&ud);break}if(!ud){a.O("unknown message category: "+Oa);break a}}ud&&("on"==g[2]?(a.wc|=ud,wc=!0):"off"==g[2]&&(a.wc&=~ud,wc=!1))}var ms=0,Uc="";for(vc in uq)if(!Oa||Oa==vc){var ns=!!(a.wc&uq[vc]);if(null===wc||wc==ns)Uc&&(Uc+=","),++ms%10||(Uc+="\n\t"),"key"==vc&&(vc="keys"),Uc+=vc}void 0===Oa&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.O((null!==wc?wc?"messages on: ":"messages off: ":"message categories:\n\t")+
(Uc||"none"));iq(a)}break;case "o":var vi=g[1],os=g[2];if(vi&&"?"!=vi){var wi=Cq(a,vi,"port #"),xi=Cq(a,os);void 0!==wi&&void 0!==xi&&(mc(a.ea,wi,1,xi),a.O(u(wi)+": "+t(xi)))}else a.O("output commands:"),a.O("\to [p] [b]\twrite byte [b] to port [p]"),a.O("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Ir(a,b.substr(5));break}var Wn="pr"==g[0]?1:0,fe=1+Wn;if(a.N)a.O("step in progress");else{var xg,Xn=!1,kb=gq(a,K(a.F),a.F.va.Z);do switch(xg=!1,a.Qa(kb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:Sq(a,
kb,1);xg=!0;break;case 204:case 206:a.N=fe;Sq(a,kb,1);break;case 205:case 224:case 225:case 226:a.N=fe;Sq(a,kb,kb.Sb?4:2);break;case 232:a.N=fe;Sq(a,kb,kb.Sb?5:3);break;case 154:a.N=fe;Sq(a,kb,kb.Sb?7:5);break;case 255:var Yn=a.tb(kb)&14591;if(4351==Yn||6399==Yn)a.N=fe,pr(a,kb);break;case 243:case 242:Sq(a,kb,1);Xn=xg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Xn&&(a.N=fe,Sq(a,kb,1))}while(xg);a.N?(a.Rd(a.A,
kb,!0),a.Ke()||(a.V&&a.V.yd(),a.N=0)):Kr(a,Wn?"tr":"t")}break;case "r":if("reset"==b){a.V&&a.V.reset();break}hr(a,g);break;case "t":Kr(a,g[0],g[1]);break;case "u":ir(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Fr(a,b.substr(3))||(d=!1);break}a.O("PCjs version 1.21.4 ("+a.F.ia+",RELEASE,NOPREFETCH"+(vb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.O(ya());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var $e;void 0!==g[3]&&($e=+g[3]);switch(g[2]){case "int":a.F.Y.jf=$e;break;case "start":a.F.Y.Jf=
$e;break;case "stop":a.F.Y.lf=$e;break;default:a.O("unknown cs option");break a}void 0!==$e&&Pc(a.F);a.O("checksums "+(a.F.la.Ye?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Xc(a.F,+g[2])||a.O("warning: using 1x multiplier, previous target not reached"));a.O("target speed: "+(a.F.Y.Fe.toFixed(2)+"Mhz")+" ("+a.F.Y.Xd+"x)");break;default:a.O("unknown option: "+g[1])}else a.O("execution options:"),a.O("\tcs int #\tset checksum cycle interval to #"),a.O("\tcs start #\tset checksum cycle start count to #"),
a.O("\tcs stop #\tset checksum cycle stop count to #"),a.O("\tsp #\t\tset speed multiplier to #");break;case "?":if(g[1]){Ir(a,b.substr(1));break}var af="commands:",yi;for(yi in nq)af+="\n"+ma(yi,7)+nq[yi];Tf(a)||(af+="\nnote: frequency/history disabled if no exec breakpoints");a.O(af);break;default:a.O("unknown command: "+b),d=!1}}}catch(Zn){a.O("debugger error: "+(Zn.stack||Zn.message)),d=!1}return d}function kq(a,b,c){b=ar(a,b,c);for(var d in b)if(!or(a,b[d]))return!1;return!0}
Qa(function(){for(var a=nb(document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new fq(d);mb(d,c)}});function hf(a,b,c){this.id=a.id;this.key=Mr(a,b,c);this.ha=a.ha;Nr(this,a.tk)}function Mr(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}
hf.prototype={constructor:hf,value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.A=!0):this.A?!0:Ca()&&(a=Ea(this.key))?(this[this.id]=a,this.A=!0):!1},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){Nr(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(e){}b.splice(c,1);c=0}}};function Nr(a,b){a[a.id]={};b&&N(a,"parms",b);a.A=!1}function Or(a){var b=!0;if(Ca()){var c=JSON.stringify(a[a.id]);Fa(a.key,c)||(w("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function Pr(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){w(c.message||c),b=!1}return b}function Qr(a,b){return a[a.id][b]||null}function N(a,b,c){try{a[a.id][b]=c}catch(d){}}
function Rr(a,b,c){Ua.call(this,"Computer",a,Rr,67108864);this.la.cc=!1;Sr(this,b);this.ga=Nc(this,"autoPower",a);this.N=0;this.ua=a.busWidth||a.buswidth;this.A=Tr;this.aa=null;this.W=this.ra=!1;this.wa=Nc(this,"url")||"";this.ya=(Math.random()+.1).toString(36).substr(2,12);this.B=Ur(this);if(this.F=ib("CPU",this.id)){this.ha=ib("Debugger",this.id);this.L=[];for(b=null;b=Eb(this,"Video",b);)this.L.push(b);this.ea=new Lb({id:this.ue+".bus",buswidth:this.ua},this.F,this.ha);var d,e=gb(this.id);if((this.C=
ib("Panel",this.id))&&this.C.Cf)for(b=0;b<e.length;b++)d=e[b],d.Oa=this.C.Oa,d.O=this.C.O,d.Cf=this.C.Cf;for(b=0;b<e.length;b++)d=e[b],d.Ic&&d.Ic(this,this.ea,this.F,this.ha);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.X=d:this.A=parseInt(d,10));var f;if(a=Nc(this,"state")||(f=!0,a.state))b=this.ja=a,f||(this.W=!0,this.A=Tr),this.A&&(this.fa=new hf(this,Vr),this.fa.load()?b=null:delete this.fa);!b&&this.A&&(b=Wr(this))&&(this.W=!0);if(b){var g=this;va(b,null,!0,function(a,b,c){c?(g.X=null,g.W=
!1,g.Oa("Unable to load machine state from server (error "+c+(b?": "+na(b):"")+")")):(g.aa=b,g.ra=!0);rb(g)})}else rb(this);this.qa.power||(this.ga=!0);!c&&this.ga&&Xr(this,this.$f)}else w("Unable to find CPU component")}db(Rr);var Vr="1.21.4",Tr=0;m=Rr.prototype;m.ef=function(){return this.ya};function Sr(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){w(d.message+" ("+c+")")}}a.U=b}
function Rr(a,b,c){Ua.call(this,"Computer",a,Rr,67108864);this.la.cc=!1;Sr(this,b);this.ga=Nc(this,"autoPower",a);this.N=0;this.ua=a.busWidth||a.buswidth;this.A=Tr;this.aa=null;this.W=this.ra=!1;this.wa=Nc(this,"url")||"";this.ya=(Math.random()+.1).toString(36).substr(2,12);this.B=Ur(this);if(this.F=ib("CPU",this.id)){this.ha=ib("Debugger",this.id);this.L=[];for(b=null;b=Eb(this,"Video",b);)this.L.push(b);this.ea=new Lb({id:this.ve+".bus",buswidth:this.ua},this.F,this.ha);var d,e=gb(this.id);if((this.C=
ib("Panel",this.id))&&this.C.Df)for(b=0;b<e.length;b++)d=e[b],d.Oa=this.C.Oa,d.O=this.C.O,d.Df=this.C.Df;for(b=0;b<e.length;b++)d=e[b],d.Ic&&d.Ic(this,this.ea,this.F,this.ha);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.X=d:this.A=parseInt(d,10));var f;if(a=Nc(this,"state")||(f=!0,a.state))b=this.ja=a,f||(this.W=!0,this.A=Tr),this.A&&(this.fa=new hf(this,Vr),this.fa.load()?b=null:delete this.fa);!b&&this.A&&(b=Wr(this))&&(this.W=!0);if(b){var g=this;va(b,null,!0,function(a,b,c){c?(g.X=null,g.W=
!1,g.Oa("Unable to load machine state from server (error "+c+(b?": "+na(b):"")+")")):(g.aa=b,g.ra=!0);rb(g)})}else rb(this);this.qa.power||(this.ga=!0);!c&&this.ga&&Xr(this,this.$f)}else w("Unable to find CPU component")}db(Rr);var Vr="1.21.4",Tr=0;m=Rr.prototype;m.ff=function(){return this.ya};function Sr(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){w(d.message+" ("+c+")")}}a.U=b}
function Nc(a,b,c){var d=b.toLowerCase(),d=Ya&&(Ya[b]||Ya[d]);void 0===d&&a.U&&(d=a.U[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}m.je=function(){return this.B||""};function Xr(a,b,c){for(var d=gb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!tb(f)){tb(f,function(){Xr(a,b,c)});return}}b.call(a,c)}
function Yr(a,b){var c=new hf(a,Vr,"validate");if(c.load()&&Pr(c)){var d=Qr(c,"timestamp"),e=b?Qr(b,"timestamp"):"unknown";d!=e&&(a.Oa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
m.$f=function(a){void 0===a&&(a=this.A||(this.aa?1:Tr));if(!this.N){this.N++;var b=!1,c=!1;this.pa=!1;var d=this.fa||new hf(this,Vr);if(-1==a)b=!0;else if(a>Tr){if(d.load(this.aa)){this.V=new hf(this,Vr,"failsafe");this.V.load()&&(Zr(this,d),a=2,Nr(this.V));N(this.V,"timestamp",qa());Or(this.V);var e=this.A&&!this.W;if(1==a||za("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=Pr(d)){var f=Qr(d,"code"),g=Qr(d,"data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=
@ -796,8 +797,8 @@ function Ur(a,b){var c=a.B;c||(c=Ea("user"),void 0!==c?!c&&b&&(c=null,window&&(c
function bs(a,b){a.B=null;var c=va(xa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(Fa("user",c.data),a.B=c.data)}catch(e){w(e.message+" ("+d+")")}return a.B}function Wr(a){var b=null;a.B&&(b=xa()+"/api/v1/user?req=load&user="+a.B+"&state="+Mr(a,Vr));return b}
function as(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Mr(a,Vr);d.data=c;b=va(xa()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Oa("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.Oa(c),Fa("user",""),a.B=null)}}
function Eb(a,b,c){a=gb(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}m.yd=function(a){if(this.L.length){var b=0,c=0;a&&window&&(b=window.scrollX,c=window.scrollY);var d=this.L[0];d.V&&d.V.focus();a&&window&&window.scrollTo(b,c)}};m.qd=function(){this.C&&this.C.qd()};
function dd(a,b){for(var c=0;c<a.L.length;c++)pn(a.L[c],b);if(a.C&&(c=a.C,c.Ja)){Ib(c,18,c.aa,c.Ia);if(c.fb){var d=c.ea,e=c.A,f,g;null==f&&(f=0);null==g&&(g=d.X-f|0);null==e&&(e={Zg:0,Td:0,Qg:[]});var h=f>>>d.La;f=f+g-1>>>d.La;e.Zg=0;for(e.Td=0;h<=f;)g=d.sa[h],e.Zg+=g.size,g.size&&(e.Qg.push(sa(Hb,h,0,0,g.type)),e.Td++),h++;c.A=e;c.ya=c.A.Td*c.ea.Nb/691200;d=0;c.A.Ai=0;c.A.zf||(c.A.zf=[]);var e=-1,h=0,k=-1;for(f=0;f<c.A.Td;f++){var l=c.A.Qg[f];g=ta(Hb.type,l);l=ta(Hb.$j,l);if(g!=e||l!=k+1)(k=f-h)&&
(d+=Kb(c,h,k,e)),e=g,h=f;k=l}d+=Kb(c,h,f-h,e);e=c.A.Kk!=d;c.A.Kk=d;if(e){e=new Bb(0,0,c.aa.width,c.aa.height);c.A.Oe=[];h=c.A.Td;for(d=0;d<c.A.Ai;d++)f=c.A.zf[d].Td,c.A.Oe.push(Db(e,f,h,!d)),h-=f;for(d=0;d<c.A.Oe.length;d++)e=c.A.zf[d],h=f=c.A.Oe[d],g=c.Ia,(k=xc[e.type])||(k=new Ab),g.strokeStyle="black",g.strokeRect(h.x,h.y,h.ad,h.A),g.fillStyle="string"==typeof k?k:k.toString(),g.fillRect(h.x,h.y,h.ad,h.A),h=c,g=f,h.ga=h.ua,h.X=h.wa,f=g.x+(g.ad>>1),k=g.y+(g.A>>1),l=g.A,g.ad<g.A&&(l=g.ad,h.ra=!0,
function dd(a,b){for(var c=0;c<a.L.length;c++)pn(a.L[c],b);if(a.C&&(c=a.C,c.Ja)){Ib(c,18,c.aa,c.Ia);if(c.fb){var d=c.ea,e=c.A,f,g;null==f&&(f=0);null==g&&(g=d.X-f|0);null==e&&(e={Zg:0,Td:0,Qg:[]});var h=f>>>d.La;f=f+g-1>>>d.La;e.Zg=0;for(e.Td=0;h<=f;)g=d.sa[h],e.Zg+=g.size,g.size&&(e.Qg.push(sa(Hb,h,0,0,g.type)),e.Td++),h++;c.A=e;c.ya=c.A.Td*c.ea.Nb/691200;d=0;c.A.Ai=0;c.A.Af||(c.A.Af=[]);var e=-1,h=0,k=-1;for(f=0;f<c.A.Td;f++){var l=c.A.Qg[f];g=ta(Hb.type,l);l=ta(Hb.$j,l);if(g!=e||l!=k+1)(k=f-h)&&
(d+=Kb(c,h,k,e)),e=g,h=f;k=l}d+=Kb(c,h,f-h,e);e=c.A.Kk!=d;c.A.Kk=d;if(e){e=new Bb(0,0,c.aa.width,c.aa.height);c.A.Pe=[];h=c.A.Td;for(d=0;d<c.A.Ai;d++)f=c.A.Af[d].Td,c.A.Pe.push(Db(e,f,h,!d)),h-=f;for(d=0;d<c.A.Pe.length;d++)e=c.A.Af[d],h=f=c.A.Pe[d],g=c.Ia,(k=xc[e.type])||(k=new Ab),g.strokeStyle="black",g.strokeRect(h.x,h.y,h.ad,h.A),g.fillStyle="string"==typeof k?k:k.toString(),g.fillRect(h.x,h.y,h.ad,h.A),h=c,g=f,h.ga=h.ua,h.X=h.wa,f=g.x+(g.ad>>1),k=g.y+(g.A>>1),l=g.A,g.ad<g.A&&(l=g.ad,h.ra=!0,
h.N.save(),h.N.translate(f,k),h.N.rotate(-Math.PI/2),f=k=0),l<h.X&&(h.X=l,h.ga=h.X+"px Monaco, Lucida Console, Courier New"),g=k,h.C=f,h.U=g,h=c,e=sc[e.type]+" ("+(e.Td*c.ea.Nb/1024|0)+"Kb)",h.N.font=h.ga,h.C-=h.N.measureText(e).width>>1,h.U+=(h.X>>1)-2,Jb(h,e),h.ra&&(h.N.restore(),h.ra=!1)}}else Jb(c,"This space intentionally left blank");c.context.drawImage(c.aa,0,0,c.aa.width,c.aa.height,c.sb,c.Jb,c.Za,c.eb);c.Ja=!1}}
Qa(function(){for(var a=nb(document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=jb(c),c=nb(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=jb(f),g=new Rr(g,d,!0);mb(g,f);g.ga&&Xr(g,g.$f)}});La.show.push(function(){for(var a=nb(document,"pcjs","computer"),b=0;b<a.length;b++){var c=jb(a[b]);(c=ib("Computer",c.id))&&c.ka&&!c.la.cc&&c.$f(-1)}});
La.exit.push(function(){for(var a=nb(document,"pcjs","computer"),b=0;b<a.length;b++){var c=jb(a[b]);(c=ib("Computer",c.id))&&c.la.cc&&Lr(c,!(!c.A||c.X),!0)}});var cs=0;function ds(a,b,c,d,e,f){e("Loading "+a+"...");va(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),f(h,null)):ps(h,a,b,c,d,e,f)})}