Release of v1.15.6

Some FDC tweaks, a CPU emulation fix, and some Debugger message improvements
This commit is contained in:
Jeff Parsons 2014-10-23 20:01:29 -07:00 committed by jeffpar
commit 326cfbb42c
146 changed files with 6798 additions and 859 deletions

View file

@ -8,7 +8,7 @@
<xsl:variable name="MACHINECLASS">pc</xsl:variable>
<xsl:variable name="APPCLASS">pcjs</xsl:variable>
<xsl:variable name="APPVERSION">1.15.5</xsl:variable>
<xsl:variable name="APPVERSION">1.15.6</xsl:variable>
<xsl:variable name="SITEHOST">www.pcjs.org</xsl:variable>
<xsl:template name="componentStyles">

View file

@ -1,102 +1,102 @@
(function(){var k,aa,l;function ba(a,b){return b&&10!=b?16==b?null!==a.match(/^[0-9a-f]+$/i):!0:null!==a.match(/^[0-9]+$/)}function ca(a){var b,c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var d=a.charAt(a.length-1).toLowerCase();"h"==d?(b=16,d=null):"."==d&&(b=10,d=null);null===d&&(a=a.substr(0,a.length-1))}var e;ba(a,b)&&!isNaN(e=parseInt(a,b))&&(c=e)}return c}
function p(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function r(a){return p(a,2)}function u(a){return p(a,4)}function da(a,b){return void 0!==b?u(b)+":"+u(a):p(a)}function ea(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}
function fa(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}var ga={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function ha(a){return a.replace(/[&<>"']/g,function(a){return ga[a]})}function ia(a,b){var c="",d;for(d in a)d=d.replace(/([\\\[\]\*\{}\(\)\.\+\?])/g,"\\$1"),c+=(c?"|":"")+d;return b.replace(new RegExp("("+c+")","g"),function(b){return a[b]})}function ja(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}
function ma(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a<b?-1:0});d<e;){var g=d+e>>1,h;h=c(b,a[g]);0<h?d=g+1:(e=g,f=!h)}return f?d:~d}function na(a,b,c){c=ma(a,b,c);0>c&&a.splice(-(c+1),0,b)}function oa(){return Date.now()||+new Date}function pa(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}
function ka(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a<b?-1:0});d<e;){var g=d+e>>1,h;h=c(b,a[g]);0<h?d=g+1:(e=g,f=!h)}return f?d:~d}function na(a,b,c){c=ka(a,b,c);0>c&&a.splice(-(c+1),0,b)}function oa(){return Date.now()||+new Date}function pa(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}
var qa=[31,28,31,30,31,30,31,31,30,31,30,31];
function ra(a,b,c,d,e,f){b=!!b;var g=0,h=null,m=ea(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(n.onreadystatechange=void 0,h=n.responseText,200!=n.status&&(g=n.status||-1),d&&e&&e.call(d,m,h,g,f))});if(c){var q="",t;for(t in c)c.hasOwnProperty(t)&&(q&&(q+="&"),q+=t+"="+encodeURIComponent(c[t]));q=q.replace(/%20/g,"+");n.open("POST",a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");
n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(h=n.responseText,200!=n.status&&(g=n.status||-1),d&&e&&e.call(d,m,h,g,f),a=[g,h]);return a}function sa(){return"http://"+(window?window.location.host:"www.pcjs.org")}function w(a){window?window.alert(a):console.log(a)}function ta(a){var b=!1;window&&(b=window.confirm(a));return b}function ua(a){if(window)try{window.localStorage.setItem("user",a)}catch(b){}}
function va(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function wa(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
function xa(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 ya={init:[],show:[],exit:[]},za=!0;function Aa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ba(a){ya.init.push(a)}
function Ca(a){if(za)for(var b=0;b<a.length;b++)a[b]()}Aa("onload",function(){Ca(ya.init)});Aa("onpageshow",function(){Ca(ya.show)});Aa(va("Opera")||va("iOS")?"onunload":"onbeforeunload",function(){Ca(ya.exit)});
function x(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.tk=b.comment;this.dp=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.th=this.id.substr(0,b),this.sh=this.id.substr(b+1)):this.sh=this.id;this[a]=c;this.Gi=null;this.jd=this.Mb=this.Jc=this.wi=this.nh=!1;this.sa={};this.X=null;this.th&&this.th.match(/\d+/);Da[Da.length]=this}var Ea=void 0,Fa={};
function x(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.vk=b.comment;this.gp=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.vh=this.id.substr(0,b),this.uh=this.id.substr(b+1)):this.uh=this.id;this[a]=c;this.Ii=null;this.jd=this.Nb=this.Kc=this.yi=this.ph=!1;this.sa={};this.X=null;this.vh&&this.vh.match(/\d+/);Da[Da.length]=this}var Ea=void 0,Fa={};
if(window){Ea||(Ea=window.location.search.substr(1));for(var Ga,Ia=/\+/g,Ja=/([^&=]+)=?([^&]*)/g;Ga=Ja.exec(Ea);)Fa[decodeURIComponent(Ga[1].replace(Ia," "))]=decodeURIComponent(Ga[2].replace(Ia," "))}function Ka(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function y(a,b){b.prototype=Ka(a.prototype)}var Da=[];
function La(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Da.length;b++){var d=Da[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Ma(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Da.length;c++)if(Da[c].id===a)return Da[c]}return null}
function Na(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<Da.length;d++)if(c)c==Da[d]&&(c=null);else if(!(a!=Da[d].type||b&&Da[d].id.indexOf(b)))return Da[d]}return null}function z(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){w(c.message+" ("+a+")")}return b}
function Oa(a,b){var c,d;d=B(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++){var e,f;f=d[c].childNodes;for(e=0;e<f.length;e++){var g=f[e];if(g.nodeType===window.document.ELEMENT_NODE){var h=g.getAttribute("class");if(h){var m,n;n=h.split(" ");for(m=0;m<n.length;m++)switch(h=n[m],h){case "pcjs-input":case "pcjs-output":(n=z(g))&&n.binding&&a.xb(h,n.type,n.binding,g),n=[]}}}}}}
function B(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}
x.prototype={toString:function(){return this.name?this.name:this.id||this.type},xb:function(a,b,c,d){switch(c){case "clear":return this.sa[c]||(this.sa[c]=d,d.onclick=function(a){return function(){a.sa.print&&(a.sa.print.value="")}}(this)),!0;case "print":return this.sa[c]||(this.Uf=this.sa[c]=d,d.value="",this.ca=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.Ga=
function(a,b,c){this.ca(a,"notice",c)}),!0;default:return!1}},log:function(){},ca:function(){},status:function(a){this.ca(this.sh+": "+a)},Ga:function(a,b){b||w(a)},Ta:function(a){!this.jd&&(this.nh=!1!==a)&&(this.name&&this.log("ready"),a=this.Gi,this.Gi=null,a&&a())},$b:function(){return this.Mb=!0},Wb:function(a,b){b&&(this.Mb=!1);return!0}};function Pa(a,b){if(a.wi)return a.Jc&&(a.Jc=!1),a.wi=!1;if(a.jd)return a.ca(a.toString()+" error"),!1;a.Jc=b;return a.Jc}
function Qa(a,b){a.Jc&&(b?a.wi=!0:void 0===b&&a.ca(a.toString()+" busy"));return a.Jc}function Ra(a,b){b&&(a.nh?b():a.Gi=b);return a.nh}function Sa(a,b){a.jd=!0;a.Ga("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);function Ta(a){x.call(this,"Panel",a,Ta)}y(x,Ta);Ta.prototype.xb=function(a,b,c,d){return this.Da&&this.Da.xb(a,b,c,d)||this.S&&this.S.xb(a,b,c,d)||this.bb&&this.bb.xb(a,b,c,d)||this.X&&this.X.xb(a,b,c,d)?!0:x.prototype.xb.call(this,a,b,c,d)};
Ta.prototype.mc=function(a,b,c,d){this.Da=a;this.S=c;this.X=d;this.bb=C(a,"Keyboard")};Ta.prototype.$b=function(a,b){b||Ua();return!0};Ta.prototype.Wb=function(){return!0};function Ua(){for(var a=!1,b=B(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=Ma(e.id);f||(a=!0,f=new Ta(e));Oa(f,d);a&&f.Ta()}}Ba(Ua);
function Va(a,b,c){x.call(this,"Bus",a,Va);this.S=b;this.X=c;this.cg=a.buswidth||20;this.ue=this.Ib=(1<<this.cg)-1;this.rb=20>=this.cg?12:14;this.ec=1<<this.rb;this.pk=this.ec>>2;this.eb=this.ec-1;this.Zg=(this.ue+this.ec)/this.ec|0;this.ye=this.Zg-1;this.rd=[];this.sd=[];this.Zf=this.$f=!1;this.Mi();this.Ta()}y(x,Va);
Va.prototype.Mi=function(){this.Aa=Array(this.Zg);for(var a=0;a<this.Zg;a++){var b=a*this.ec;Wa(this.Aa[a]=new Xa(b),this.S,this.X,b,this.ec)}this.S.Mi(this.Aa,this.ue,this.rb,this.eb,this.ye);this.S.Ib=this.Ib};Va.prototype.reset=function(){Ya(this,!0)};function Za(a,b,c,d,e){if(!(b&a.eb||!c||c&a.eb)){for(var f=b>>a.rb;0<c&&f<a.Aa.length;){var g=a.Aa[f];if(void 0!==g&&g.size)return $a(1,b,c);b=f*a.ec;g=a.Aa[f++]=new Xa(b,a.ec,d,e);Wa(g,a.S,a.X,b,a.ec);c-=a.ec}return!0}return $a(2,b,c)}
function Ya(a,b){if(void 0!==b&&20<a.cg){var c=a.Ib&-1048577|(b?1048576:0);c!=a.Ib&&(a.Ib=c,a.S&&(a.S.Ib=c))}}Va.prototype.Ph=function(a,b,c){if(!(a&this.eb||!b||b&this.eb)){for(var d=a>>this.rb;0<b;){var e=this.Aa[d];if(!e.ia)return $a(5,a,b);e.Pe(c);b-=this.ec;d++}return!0}return $a(3,a,b)};function ab(a,b,c){if(!(b&a.eb||!c||c&a.eb)){for(var d=b>>a.rb;0<c;)b=d*a.ec,Wa(a.Aa[d++]=new Xa(b),a.S,a.X,b,a.ec),c-=a.ec;return!0}return $a(4,b,c)}function bb(a,b){return a.Aa[(b&a.Ib)>>a.rb].tg(b&a.eb)}
function cb(a,b){var c=b&a.eb,d=(b&a.Ib)>>a.rb;return c!=a.eb?a.Aa[d].Oj(c):a.Aa[d++].tg(c)|a.Aa[d&a.ye].tg(0)<<8}function db(a,b,c){a.Aa[(b&a.Ib)>>a.rb].Bg(b&a.eb,c&255)}function eb(a,b,c){var d=b&a.eb;b=(b&a.Ib)>>a.rb;d!=a.eb?a.Aa[b].Xj(d,c&65535):(a.Aa[b++].Bg(d,c&255),a.Aa[b&a.ye].Bg(0,c>>8&255))}
function fb(a){for(var b=0,c=[],d=0;d<a.Zg;d++){var e=a.Aa[d];if(e.mb||e.xk){c[b++]=d;var f=c,g=b++;a:if(e=e.save()){for(var h=0,m=0,n=[];h<e.length;){for(var q=e[h],t=h+1;t<e.length&&e[t]===q;)t++;n[m++]=t-h;n[m++]=q;h=t}if(n.length<e.length){e=n;break a}}f[g]=e}}c[b]=a.ue==a.Ib;return c}function hb(a,b){if(void 0===b)return a.Zf=!a.Zf,a.Zf;void 0===a.rd[b]&&(a.rd[b]=[null,null,!1]);a.rd[b][2]=!a.rd[b][2];return a.rd[b][2]}
function ib(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=g;n++)void 0!==f.rd[n]?w("Input port "+u(n)+" registered by "+f.rd[n][0].id+", ignoring "+h.id):f.rd[n]=[h,m,!1,!1]}}function jb(a,b,c){var d=255,e=a.rd[b];void 0!==e?(e[1]&&(d=e[1].call(e[0],b,c)),a.X&&a.Zf!=e[2]&&kb(a.X,b,d)):a.X&&(a.X.ba(a,b,null,c),a.Zf&&kb(a.X,b,d));return d}
function lb(a,b){if(void 0===b)return a.$f=!a.$f,a.$f;void 0===a.sd[b]&&(a.sd[b]=[null,null,!1]);a.sd[b][2]=!a.sd[b][2];return a.sd[b][2]}function mb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=g;n++)void 0!==f.sd[n]?w("Output port "+u(n)+" registered by "+f.sd[n][0].id+", ignoring "+h.id):f.sd[n]=[h,m,!1,!1]}}
function nb(a,b,c,d){var e=a.sd[b];void 0!==e?(e[1]&&e[1].call(e[0],b,c,d),a.X&&a.$f!=e[2]&&ob(a.X,b,c)):a.X&&(a.X.ba(a,b,c,d),a.$f&&ob(a.X,b,c))}function $a(a,b,c){w("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}function Xa(a,b,c,d){this.zm=b;this.ra=null;this.offset=0;this.mh=c;this.ia=null;this.mb=this.xk=!1;if(b)if(d)this.ia=d,a=[d.ed,a-d.cb],this.ra=a[0],this.offset=a[1],this.Pe(d.Jf);else{this.ra=Array(b>>2);for(d=0;d<this.ra.length;d++)this.ra[d]=0;this.Pe(pb)}else this.Pe()}
Xa.prototype={Jh:function(a){E(this.X,this.X.Fg)&&!a&&this.X.message("attempt to read invalid block %"+p(this.Wd)+" from "+da(this.S.qa,this.S.ua.oa));return 0},xf:function(a,b){E(this.X,this.X.Fg)&&!a&&this.X.message("attempt to write 0x"+u(b)+" to invalid block %"+p(this.Wd)+" from "+da(this.S.qa,this.S.ua.oa))},fp:function(a){return this.ra[a>>2]>>>((a&3)<<3)&255},hp:function(a){var b=a>>2;a=(a&3)<<3;var c=this.ra[b]>>>a;return 24>a?c&65535:c&255|(this.ra[b+1]&255)<<8},pp:function(a,b){var c=a>>
2,d=(a&3)<<3;this.ra[c]=this.ra[c]&~(255<<d)|b<<d;this.mb=!0},rp:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.ra[c]=this.ra[c]&~(65535<<d)|b<<d:(this.ra[c]=this.ra[c]&16777215|b<<24,c++,this.ra[c]=this.ra[c]&4294967040|b>>8);this.mb=!0},gp:function(a){qb(this.X,this.Wd+a);return this.tg(a)},ip:function(a){qb(this.X,this.Wd+a)||qb(this.X,this.Wd+a+1);return this.Oj(a)},qp:function(a,b){rb(this.X,this.Wd+a);this.Bg(a,b)},sp:function(a,b){rb(this.X,this.Wd+a)||rb(this.X,this.Wd+a+1);this.Xj(a,b)},save:function(){return this.ia?
null:this.ra},restore:function(a){return this.ia?null===a:this.zm==a.length<<2?(this.ra=a,this.mb=!0):!1},Pe:function(a,b){a||(a=[]);void 0===b&&(b=!0);sb(this,a,b);tb(this,a,b)},Vd:function(a,b){b?0===this.rk++&&tb(this,ub):0===this.qk++&&sb(this,ub)}};function wb(a,b){b?0===--a.rk&&(a.Cc=a.mh?a.xf:a.Bg,a.jm=a.mh?a.xf:a.Xj):0===--a.qk&&(a.qc=a.tg,a.Xl=a.Oj)}function Wa(a,b,c,d,e){a.S=b;a.X=c;a.Wd=d;a.qk=a.rk=0;a.X&&xb(a.X,d,e)}
function tb(a,b,c){a.Cc=b[2]&&!a.mh?b[2]:a.xf;a.jm=b[3]&&!a.mh?b[3]:a.xf;c&&(a.Bg=b[2]?b[2]:a.xf,a.Xj=b[3]?b[3]:a.xf)}function sb(a,b,c){a.qc=b[0]?b[0]:a.Jh;a.Xl=b[1]?b[1]:a.Jh;c&&(a.tg=b[0]?b[0]:a.Jh,a.Oj=b[1]?b[1]:a.Jh)}var pb=[Xa.prototype.fp,Xa.prototype.hp,Xa.prototype.pp,Xa.prototype.rp],ub=[Xa.prototype.gp,Xa.prototype.ip,Xa.prototype.qp,Xa.prototype.sp];
function yb(a,b){x.call(this,"CPU",a,yb);var c=a.multiplier||1;this.Hd=a.cycles||b;this.Gd=c;this.wh=Math.round(this.Hd/1E4)/100;this.Ge=this.wh*this.Gd;this.Nb=this.Mb=!1;this.vi=a.autoStart;c=Fa.autostart;void 0!==c&&(this.vi="true"==c?!0:"false"==c?!1:null);this.cf=!1;this.dg=this.mf=0;this.fg=a.csStart;this.lf=a.csInterval;this.nf=a.csStop;var d=this;this.jo=function(){d.Ne()};this.Ta()}y(x,yb);k=yb.prototype;
k.mc=function(a,b,c,d){this.na=b;this.X=d;this.Da=a;var e=C(a,"Video");e&&(this.qi=function(){zb(e)},this.Md=function(){e.Md()});this.ka=C(a,"ChipSet");this.Ta()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.$b=function(a,b){if(!b){if(a&&this.restore){Ab(this);if(!this.restore(a))return!1;Bb(this)}else this.reset();this.X?this.X.Ln():this.ca("No debugger detected")}this.Mb=!0;!Cb(this)&&this.X&&Db(this.X);Eb(this);return!0};
k.Wb=function(a){this.Mb=!1;return a&&this.save?this.save():!0};function Cb(a){return!0===a.vi||null===a.vi&&!a.X&&void 0===a.sa.run?(a.Ne(),!0):!1}k.Md=function(){};k.Ek=function(){return 0};function Bb(a){void 0===a.fg&&(a.fg=0);void 0===a.lf&&(a.lf=-1);void 0===a.nf&&(a.nf=-1);a.cf=0<=a.fg&&0<a.lf;a.cf&&(a.dg=0,a.mf=a.fg-a.Ke)}
function Fb(a,b){if(a.cf){var c=!1;a.dg=a.dg+a.Ek()|0;a.mf-=b;0>=a.mf&&(a.mf+=a.lf,c=!0);0<=a.nf&&a.nf<=F(a)&&(a.lf=a.nf=-1,Bb(a),a.Ab(),c=!0);c&&a.ca(F(a)+" cycles: checksum="+p(a.dg))}}function G(a,b,c,d){void 0!==a.sa[b]&&(void 0===d&&(d=4),void 0===c&&(Sa(a,"Register "+b+" is invalid"),a.Ab()),c=p(c,d),a.sa[b].innerHTML!=c&&(a.sa[b].innerHTML=c))}k.eh=function(){};k.qi=function(){};
k.xb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.sa[c]=d;d.onclick=function(){e.Nb?e.Ab(!0):e.Ne(!0)};a=!0;break;case "reset":this.sa[c]=d;d.onclick=function(){e.Da&&Gb(e.Da)};a=!0;break;case "speed":this.sa[c]=d;a=!0;break;case "setSpeed":this.sa[c]=d,d.onclick=function(){Hb(e,e.Gd<<1,!0)},d.innerHTML=this.Ge.toFixed(2)+"Mhz",a=!0}return a};function Ib(a,b,c){a.Ke+=b;c&&(a.Nc=a.A=0)}
function Jb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Gd&&a.ld&&(d=a.ld/a.wh);a.Lk=Math.round(1E3/30);a.$n=Math.floor(a.Hd/c*d);a.Ti=Math.floor(a.Hd/30*d);a.Pk=Math.floor(a.Hd/60*d);a.Ok=Math.floor(a.Hd/2*d);b||(a.of=a.Ti,a.hg=a.Pk,a.gg=a.Ok);a.Hj=0}function F(a,b){var c=a.Ke+a.ke+a.Nc-a.A;b&&1<a.Gd&&a.ld>a.wh&&(c=Math.round(c/a.Gd));return c}function Ab(a){a.ld=0;a.zh=1;a.Ke=a.ke=a.Nc=a.A=0;Bb(a);Hb(a,1)}
function Hb(a,b,c){void 0!==b&&(0.8>a.ld/a.Ge&&(b=1),a.Gd=b,b=a.wh*a.Gd,a.Ge!=b&&(a.Ge=b,b=a.Ge.toFixed(2)+"Mhz",a.sa.setSpeed&&(a.sa.setSpeed.innerHTML=b),a.ca("target speed: "+b)),c&&a.Md());Ib(a,a.ke);a.ke=0;a.kf=oa();a.He=0;Jb(a)}
k.Ne=function(a){if(Pa(this,!0)){this.Nb||(Hb(this),this.Da&&this.Da.start(this.kf,F(this)),this.Nb=!0,this.ka&&Kb(this.ka),this.sa.run&&(this.sa.run.innerHTML="Halt"),a&&this.Md());this.Hj>=this.Hd&&Jb(this,!0);this.ig=0;this.xh=oa();this.He&&(a=this.xh-this.He,a>this.Lk&&(this.kf+=a,this.kf>this.xh&&(this.kf=this.xh)));try{do{this.wf(this.cf?1:Math.round(this.$n/this.zh));var b=this.Nc-this.A;this.ke+=b;this.ig+=b;Ib(this,0,!0);Fb(this,b);this.hg-=b;0>=this.hg&&(this.hg+=this.Pk,this.qi());this.gg-=
b;0>=this.gg&&(this.gg+=this.Ok,this.eh());this.of-=b;if(0>=this.of){this.of+=this.Ti;break}}while(this.Nb)}catch(c){this.Ab();Eb(this);this.Da&&this.Da.stop(oa(),F(this));Pa(this,!1);Sa(this,c.message);return}b=setTimeout;a=this.jo;this.He=oa();var d=this.Lk;this.ig&&(d=Math.round(d*this.ig/this.Ti));var d=d-(this.He-this.xh),e=this.He-this.kf;e&&(this.ld=Math.round(this.ke/(10*e))/100,864E5<=e&&(this.Ke=0,this.ka&&Lb(this.ka,!0),Hb(this)));if(0>d||this.ld<this.Ge)d=0;this.Hj+=this.ig;this.He+=d;
b(a,d)}else Eb(this),this.Da&&this.Da.stop(oa(),F(this))};k.Ab=function(a){Qa(this,!0);this.Nc-=this.A;this.A=0;Ib(this,this.ke);this.ke=0;this.Nb&&(this.Nb=!1,this.ka&&Kb(this.ka),this.sa.run&&(this.sa.run.innerHTML="Run"));this.kh=a};k.wf=function(){return 0};function Eb(a){a.qi();a.eh()}
x.prototype={toString:function(){return this.name?this.name:this.id||this.type},xb:function(a,b,c,d){switch(c){case "clear":return this.sa[c]||(this.sa[c]=d,d.onclick=function(a){return function(){a.sa.print&&(a.sa.print.value="")}}(this)),!0;case "print":return this.sa[c]||(this.Vf=this.sa[c]=d,d.value="",this.ca=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.Ga=
function(a,b,c){this.ca(a,"notice",c)}),!0;default:return!1}},log:function(){},ca:function(){},status:function(a){this.ca(this.uh+": "+a)},Ga:function(a,b){b||w(a)},Ta:function(a){!this.jd&&(this.ph=!1!==a)&&(this.name&&this.log("ready"),a=this.Ii,this.Ii=null,a&&a())},ac:function(){return this.Nb=!0},Wb:function(a,b){b&&(this.Nb=!1);return!0}};function Pa(a,b){if(a.yi)return a.Kc&&(a.Kc=!1),a.yi=!1;if(a.jd)return a.ca(a.toString()+" error"),!1;a.Kc=b;return a.Kc}
function Qa(a,b){a.Kc&&(b?a.yi=!0:void 0===b&&a.ca(a.toString()+" busy"));return a.Kc}function Ra(a,b){b&&(a.ph?b():a.Ii=b);return a.ph}function Sa(a,b){a.jd=!0;a.Ga("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);function Ta(a){x.call(this,"Panel",a,Ta)}y(x,Ta);Ta.prototype.xb=function(a,b,c,d){return this.Da&&this.Da.xb(a,b,c,d)||this.S&&this.S.xb(a,b,c,d)||this.bb&&this.bb.xb(a,b,c,d)||this.X&&this.X.xb(a,b,c,d)?!0:x.prototype.xb.call(this,a,b,c,d)};
Ta.prototype.oc=function(a,b,c,d){this.Da=a;this.S=c;this.X=d;this.bb=C(a,"Keyboard")};Ta.prototype.ac=function(a,b){b||Ua();return!0};Ta.prototype.Wb=function(){return!0};function Ua(){for(var a=!1,b=B(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=Ma(e.id);f||(a=!0,f=new Ta(e));Oa(f,d);a&&f.Ta()}}Ba(Ua);
function Va(a,b,c){x.call(this,"Bus",a,Va);this.S=b;this.X=c;this.dg=a.buswidth||20;this.ve=this.Ib=(1<<this.dg)-1;this.rb=20>=this.dg?12:14;this.fc=1<<this.rb;this.rk=this.fc>>2;this.eb=this.fc-1;this.ah=(this.ve+this.fc)/this.fc|0;this.ze=this.ah-1;this.rd=[];this.sd=[];this.$f=this.ag=!1;this.Oi();this.Ta()}y(x,Va);
Va.prototype.Oi=function(){this.Aa=Array(this.ah);for(var a=0;a<this.ah;a++){var b=a*this.fc;Wa(this.Aa[a]=new Xa(b),this.S,this.X,b,this.fc)}this.S.Oi(this.Aa,this.ve,this.rb,this.eb,this.ze);this.S.Ib=this.Ib};Va.prototype.reset=function(){Ya(this,!0)};function Za(a,b,c,d,e){if(!(b&a.eb||!c||c&a.eb)){for(var f=b>>a.rb;0<c&&f<a.Aa.length;){var g=a.Aa[f];if(void 0!==g&&g.size)return $a(1,b,c);b=f*a.fc;g=a.Aa[f++]=new Xa(b,a.fc,d,e);Wa(g,a.S,a.X,b,a.fc);c-=a.fc}return!0}return $a(2,b,c)}
function Ya(a,b){if(void 0!==b&&20<a.dg){var c=a.Ib&-1048577|(b?1048576:0);c!=a.Ib&&(a.Ib=c,a.S&&(a.S.Ib=c))}}Va.prototype.Rh=function(a,b,c){if(!(a&this.eb||!b||b&this.eb)){for(var d=a>>this.rb;0<b;){var e=this.Aa[d];if(!e.ia)return $a(5,a,b);e.Qe(c);b-=this.fc;d++}return!0}return $a(3,a,b)};function ab(a,b,c){if(!(b&a.eb||!c||c&a.eb)){for(var d=b>>a.rb;0<c;)b=d*a.fc,Wa(a.Aa[d++]=new Xa(b),a.S,a.X,b,a.fc),c-=a.fc;return!0}return $a(4,b,c)}function bb(a,b){return a.Aa[(b&a.Ib)>>a.rb].ug(b&a.eb)}
function cb(a,b){var c=b&a.eb,d=(b&a.Ib)>>a.rb;return c!=a.eb?a.Aa[d].Sj(c):a.Aa[d++].ug(c)|a.Aa[d&a.ze].ug(0)<<8}function db(a,b,c){a.Aa[(b&a.Ib)>>a.rb].Cg(b&a.eb,c&255)}function eb(a,b,c){var d=b&a.eb;b=(b&a.Ib)>>a.rb;d!=a.eb?a.Aa[b].ak(d,c&65535):(a.Aa[b++].Cg(d,c&255),a.Aa[b&a.ze].Cg(0,c>>8&255))}
function fb(a){for(var b=0,c=[],d=0;d<a.ah;d++){var e=a.Aa[d];if(e.lb||e.zk){c[b++]=d;var f=c,g=b++;a:if(e=e.save()){for(var h=0,m=0,n=[];h<e.length;){for(var q=e[h],t=h+1;t<e.length&&e[t]===q;)t++;n[m++]=t-h;n[m++]=q;h=t}if(n.length<e.length){e=n;break a}}f[g]=e}}c[b]=a.ve==a.Ib;return c}function hb(a,b){if(void 0===b)return a.$f=!a.$f,a.$f;void 0===a.rd[b]&&(a.rd[b]=[null,null,!1]);a.rd[b][2]=!a.rd[b][2];return a.rd[b][2]}
function ib(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=g;n++)void 0!==f.rd[n]?w("Input port "+u(n)+" registered by "+f.rd[n][0].id+", ignoring "+h.id):f.rd[n]=[h,m,!1,!1]}}function jb(a,b,c){var d=255,e=a.rd[b];void 0!==e?(e[1]&&(d=e[1].call(e[0],b,c)),a.X&&a.$f!=e[2]&&kb(a.X,b,d)):a.X&&(a.X.ba(a,b,null,c),a.$f&&kb(a.X,b,d));return d}
function lb(a,b){if(void 0===b)return a.ag=!a.ag,a.ag;void 0===a.sd[b]&&(a.sd[b]=[null,null,!1]);a.sd[b][2]=!a.sd[b][2];return a.sd[b][2]}function mb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=g;n++)void 0!==f.sd[n]?w("Output port "+u(n)+" registered by "+f.sd[n][0].id+", ignoring "+h.id):f.sd[n]=[h,m,!1,!1]}}
function nb(a,b,c,d){var e=a.sd[b];void 0!==e?(e[1]&&e[1].call(e[0],b,c,d),a.X&&a.ag!=e[2]&&ob(a.X,b,c)):a.X&&(a.X.ba(a,b,c,d),a.ag&&ob(a.X,b,c))}function $a(a,b,c){w("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}function Xa(a,b,c,d){this.Cm=b;this.ra=null;this.offset=0;this.oh=c;this.ia=null;this.lb=this.zk=!1;if(b)if(d)this.ia=d,a=[d.ed,a-d.cb],this.ra=a[0],this.offset=a[1],this.Qe(d.Kf);else{this.ra=Array(b>>2);for(d=0;d<this.ra.length;d++)this.ra[d]=0;this.Qe(pb)}else this.Qe()}
Xa.prototype={Mh:function(a){D(this.X,this.X.Hg)&&!a&&this.X.message("attempt to read invalid block %"+p(this.Wd)+" from "+da(this.S.qa,this.S.ua.oa));return 0},yf:function(a,b){D(this.X,this.X.Hg)&&!a&&this.X.message("attempt to write 0x"+u(b)+" to invalid block %"+p(this.Wd)+" from "+da(this.S.qa,this.S.ua.oa))},ip:function(a){return this.ra[a>>2]>>>((a&3)<<3)&255},kp:function(a){var b=a>>2;a=(a&3)<<3;var c=this.ra[b]>>>a;return 24>a?c&65535:c&255|(this.ra[b+1]&255)<<8},sp:function(a,b){var c=a>>
2,d=(a&3)<<3;this.ra[c]=this.ra[c]&~(255<<d)|b<<d;this.lb=!0},up:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.ra[c]=this.ra[c]&~(65535<<d)|b<<d:(this.ra[c]=this.ra[c]&16777215|b<<24,c++,this.ra[c]=this.ra[c]&4294967040|b>>8);this.lb=!0},jp:function(a){qb(this.X,this.Wd+a);return this.ug(a)},lp:function(a){qb(this.X,this.Wd+a)||qb(this.X,this.Wd+a+1);return this.Sj(a)},tp:function(a,b){rb(this.X,this.Wd+a);this.Cg(a,b)},vp:function(a,b){rb(this.X,this.Wd+a)||rb(this.X,this.Wd+a+1);this.ak(a,b)},save:function(){return this.ia?
null:this.ra},restore:function(a){return this.ia?null===a:this.Cm==a.length<<2?(this.ra=a,this.lb=!0):!1},Qe:function(a,b){a||(a=[]);void 0===b&&(b=!0);sb(this,a,b);tb(this,a,b)},Vd:function(a,b){b?0===this.tk++&&tb(this,ub):0===this.sk++&&sb(this,ub)}};function wb(a,b){b?0===--a.tk&&(a.Dc=a.oh?a.yf:a.Cg,a.lm=a.oh?a.yf:a.ak):0===--a.sk&&(a.sc=a.ug,a.Zl=a.Sj)}function Wa(a,b,c,d,e){a.S=b;a.X=c;a.Wd=d;a.sk=a.tk=0;a.X&&xb(a.X,d,e)}
function tb(a,b,c){a.Dc=b[2]&&!a.oh?b[2]:a.yf;a.lm=b[3]&&!a.oh?b[3]:a.yf;c&&(a.Cg=b[2]?b[2]:a.yf,a.ak=b[3]?b[3]:a.yf)}function sb(a,b,c){a.sc=b[0]?b[0]:a.Mh;a.Zl=b[1]?b[1]:a.Mh;c&&(a.ug=b[0]?b[0]:a.Mh,a.Sj=b[1]?b[1]:a.Mh)}var pb=[Xa.prototype.ip,Xa.prototype.kp,Xa.prototype.sp,Xa.prototype.up],ub=[Xa.prototype.jp,Xa.prototype.lp,Xa.prototype.tp,Xa.prototype.vp];
function yb(a,b){x.call(this,"CPU",a,yb);var c=a.multiplier||1;this.Hd=a.cycles||b;this.Gd=c;this.yh=Math.round(this.Hd/1E4)/100;this.He=this.yh*this.Gd;this.Ob=this.Nb=!1;this.xi=a.autoStart;c=Fa.autostart;void 0!==c&&(this.xi="true"==c?!0:"false"==c?!1:null);this.df=!1;this.eg=this.nf=0;this.gg=a.csStart;this.mf=a.csInterval;this.of=a.csStop;var d=this;this.mo=function(){d.Oe()};this.Ta()}y(x,yb);k=yb.prototype;
k.oc=function(a,b,c,d){this.na=b;this.X=d;this.Da=a;var e=C(a,"Video");e&&(this.si=function(){zb(e)},this.Nd=function(){e.Nd()});this.ka=C(a,"ChipSet");this.Ta()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.ac=function(a,b){if(!b){if(a&&this.restore){Ab(this);if(!this.restore(a))return!1;Bb(this)}else this.reset();this.X?this.X.On():this.ca("No debugger detected")}this.Nb=!0;!Cb(this)&&this.X&&Db(this.X);Eb(this);return!0};
k.Wb=function(a){this.Nb=!1;return a&&this.save?this.save():!0};function Cb(a){return!0===a.xi||null===a.xi&&!a.X&&void 0===a.sa.run?(a.Oe(),!0):!1}k.Nd=function(){};k.Gk=function(){return 0};function Bb(a){void 0===a.gg&&(a.gg=0);void 0===a.mf&&(a.mf=-1);void 0===a.of&&(a.of=-1);a.df=0<=a.gg&&0<a.mf;a.df&&(a.eg=0,a.nf=a.gg-a.Le)}
function Fb(a,b){if(a.df){var c=!1;a.eg=a.eg+a.Gk()|0;a.nf-=b;0>=a.nf&&(a.nf+=a.mf,c=!0);0<=a.of&&a.of<=F(a)&&(a.mf=a.of=-1,Bb(a),a.Ab(),c=!0);c&&a.ca(F(a)+" cycles: checksum="+p(a.eg))}}function G(a,b,c,d){void 0!==a.sa[b]&&(void 0===d&&(d=4),void 0===c&&(Sa(a,"Register "+b+" is invalid"),a.Ab()),c=p(c,d),a.sa[b].innerHTML!=c&&(a.sa[b].innerHTML=c))}k.gh=function(){};k.si=function(){};
k.xb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.sa[c]=d;d.onclick=function(){e.Ob?e.Ab(!0):e.Oe(!0)};a=!0;break;case "reset":this.sa[c]=d;d.onclick=function(){e.Da&&Gb(e.Da)};a=!0;break;case "speed":this.sa[c]=d;a=!0;break;case "setSpeed":this.sa[c]=d,d.onclick=function(){Hb(e,e.Gd<<1,!0)},d.innerHTML=this.He.toFixed(2)+"Mhz",a=!0}return a};function Ib(a,b,c){a.Le+=b;c&&(a.Oc=a.A=0)}
function Jb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Gd&&a.ld&&(d=a.ld/a.yh);a.Nk=Math.round(1E3/30);a.co=Math.floor(a.Hd/c*d);a.Vi=Math.floor(a.Hd/30*d);a.Rk=Math.floor(a.Hd/60*d);a.Qk=Math.floor(a.Hd/2*d);b||(a.pf=a.Vi,a.ig=a.Rk,a.hg=a.Qk);a.Lj=0}function F(a,b){var c=a.Le+a.ke+a.Oc-a.A;b&&1<a.Gd&&a.ld>a.yh&&(c=Math.round(c/a.Gd));return c}function Ab(a){a.ld=0;a.Bh=1;a.Le=a.ke=a.Oc=a.A=0;Bb(a);Hb(a,1)}
function Hb(a,b,c){void 0!==b&&(0.8>a.ld/a.He&&(b=1),a.Gd=b,b=a.yh*a.Gd,a.He!=b&&(a.He=b,b=a.He.toFixed(2)+"Mhz",a.sa.setSpeed&&(a.sa.setSpeed.innerHTML=b),a.ca("target speed: "+b)),c&&a.Nd());Ib(a,a.ke);a.ke=0;a.lf=oa();a.Ie=0;Jb(a)}
k.Oe=function(a){if(Pa(this,!0)){this.Ob||(Hb(this),this.Da&&this.Da.start(this.lf,F(this)),this.Ob=!0,this.ka&&Kb(this.ka),this.sa.run&&(this.sa.run.innerHTML="Halt"),a&&this.Nd());this.Lj>=this.Hd&&Jb(this,!0);this.jg=0;this.zh=oa();this.Ie&&(a=this.zh-this.Ie,a>this.Nk&&(this.lf+=a,this.lf>this.zh&&(this.lf=this.zh)));try{do{this.xf(this.df?1:Math.round(this.co/this.Bh));var b=this.Oc-this.A;this.ke+=b;this.jg+=b;Ib(this,0,!0);Fb(this,b);this.ig-=b;0>=this.ig&&(this.ig+=this.Rk,this.si());this.hg-=
b;0>=this.hg&&(this.hg+=this.Qk,this.gh());this.pf-=b;if(0>=this.pf){this.pf+=this.Vi;break}}while(this.Ob)}catch(c){this.Ab();Eb(this);this.Da&&this.Da.stop(oa(),F(this));Pa(this,!1);Sa(this,c.message);return}b=setTimeout;a=this.mo;this.Ie=oa();var d=this.Nk;this.jg&&(d=Math.round(d*this.jg/this.Vi));var d=d-(this.Ie-this.zh),e=this.Ie-this.lf;e&&(this.ld=Math.round(this.ke/(10*e))/100,864E5<=e&&(this.Le=0,this.ka&&Lb(this.ka,!0),Hb(this)));if(0>d||this.ld<this.He)d=0;this.Lj+=this.jg;this.Ie+=d;
b(a,d)}else Eb(this),this.Da&&this.Da.stop(oa(),F(this))};k.Ab=function(a){Qa(this,!0);this.Oc-=this.A;this.A=0;Ib(this,this.ke);this.ke=0;this.Ob&&(this.Ob=!1,this.ka&&Kb(this.ka),this.sa.run&&(this.sa.run.innerHTML="Run"));this.mh=a};k.xf=function(){return 0};function Eb(a){a.si();a.gh()}
var Mb=[1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,
0,0,1,1,0,1,0,0,1];function Nb(a,b,c){this.S=a;this.Ua=this.oa=0;this.Mc=65535;this.Lc=this.ab=0;this.xg=b;Pb(this,c)}function Qb(a){this.oa=a;this.Mc=65535;return this.Ua=a<<4}
function Rb(a){var b,c;a&4?(b=this.S.Ld.Ua,c=this.S.Ld.Mc):(b=this.S.Rc,c=this.S.Ye);b+=a&65528;if(b+7<=c){this.Vc=Sb;this.Yb=Tb;this.S.A-=15;c=this.S.Ia(b+0);var d=this.S.Ia(b+4),e=this.S.Ia(b+2)|(d&255)<<16;this.S.Ia(b+6);b=d&7936;if(b&4096){2048==(b&2560)&&(this.Yb=Ub);if(b&2048||!(b&512))this.Yb=Vb;this.oa=a;this.Mc=c;this.ab=d;this.Lc=(d&24576)>>13;return this.Ua=e}if(b&&768>=b)return this.oa=a,this.Mc=c,this.ab=d,this.Lc=(d&24576)>>13,this.Ua=e}return-1}function Wb(a){return this.Ua+a}
function Xb(a){return this.Ua+a}function Sb(a,b,c){return a+b<=this.Mc?this.Ua+a:Ub.call(this,0,0,c)}function Ub(a,b,c){c||Yb.call(this.S,13,0);return-1}function Tb(a,b,c){return a+b<=this.Mc?this.Ua+a:Vb.call(this,0,0,c)}function Vb(a,b,c){c||Yb.call(this.S,13,0);return-1}Nb.prototype.save=function(){return[this.oa,this.Ua,this.Mc,this.ab,this.Lc,this.xg]};Nb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.oa=a[0],this.Ua=a[1],this.Mc=a[2],this.ab=a[3],this.Lc=a[4],this.xg=a[5])};
function Pb(a,b){void 0===b&&(b=!!(a.S.ad&1));b?(a.load=Rb,a.Vc=Sb,a.Yb=Tb):(a.load=Qb,a.Vc=Wb,a.Yb=Xb)}
function Zb(a){this.Fa=a.model||8088;var b=0;switch(this.Fa){default:case 8088:b=4772727;break;case 80286:b=6E6}yb.call(this,a,b);this.dk=61442;this.Jg=4;this.pf=255;this.Ij=4;this.aa=5;this.ta=6;this.fa=7;this.ga=8;this.P=9;this.V=11;this.W=12;this.Ie=4;this.Rk=60;this.Sk=83;this.Tb=3;this.sb=9;this.fc=16;this.Dh=1;this.Wk=19;this.Yk=28;this.$k=16;this.Zk=21;this.Xk=37;this.Uk=2;this.aj=9;this.Vk=5;this.Tk=33;this.cj=10;this.bj=8;this.mg=3;this.lg=15;this.nl=51;this.ol=1;this.pl=2;this.ql=4;this.ml=
32;this.sl=this.dj=15;this.Ub=16;this.Vb=4;this.ul=11;this.tl=18;this.rl=24;this.Cb=4;this.vl=2;this.ej=16;this.wl=17;this.jj=18;this.xl=19;this.ij=5;this.kj=6;this.Cl=2;this.Bl=8;this.zl=9;this.mj=this.lj=this.yl=this.Al=10;this.bl=80;this.dl=144;this.al=86;this.cl=154;this.fl=101;this.hl=165;this.el=107;this.gl=171;this.El=70;this.Gl=113;this.Dl=76;this.Fl=124;this.jl=80;this.ll=128;this.il=86;this.kl=134;this.og=3;this.ng=16;this.rj=10;this.qj=8;this.Hl=51;this.gc=8;this.Il=17;this.Jl=36;this.oc=
11;this.Kl=16;this.pg=10;this.Ob=2;this.Yi=18;this.Zi=9-this.Ob;this.$i=17-this.Ob;this.fj=12;this.gj=9-this.Ob;this.hj=13-this.Ob;this.nj=18;this.oj=9-this.Ob;this.pj=17-this.Ob;this.sj=15;this.tj=9-this.Ob;this.uj=15-this.Ob;this.yj=11;this.zj=9-this.Ob;this.Aj=10-this.Ob;this.Ll=8;this.Ol=12;this.Ml=18;this.Nl=17;this.Pl=15;this.wj=8;this.vj=20;this.xj=2;this.Dj=3;this.qg=9;this.Cj=5;this.Bj=11;this.Fj=4;this.Ej=17;this.Ql=11;this.Sa=$b.slice();80186<=this.Fa&&(this.pf=31,this.Sa[15]=ac,this.Sa[96]=
bc,this.Sa[97]=cc,this.Sa[98]=dc,this.Sa[99]=ac,this.Sa[100]=ac,this.Sa[101]=ac,this.Sa[102]=ac,this.Sa[103]=ac,this.Sa[104]=ec,this.Sa[105]=fc,this.Sa[106]=gc,this.Sa[107]=hc,this.Sa[108]=ic,this.Sa[109]=jc,this.Sa[110]=kc,this.Sa[111]=lc,this.Sa[192]=mc,this.Sa[193]=nc,this.Sa[200]=oc,this.Sa[201]=pc,this.Sa[241]=qc,rc[7]=sc,tc[7]=sc,80286<=this.Fa&&(this.dk=2,this.Jg=0,this.Sa[15]=uc,this.Sa[99]=vc,this.Sa[84]=wc,this.P=this.ga=this.fa=this.ta=this.aa=this.Ij=0,this.W=this.V=1,this.Ie=3,this.Rk=
14,this.Sk=16,this.Tb=2,this.fc=this.sb=7,this.Dh=0,this.Wk=7,this.Yk=13,this.$k=7,this.Zk=11,this.Xk=16,this.Uk=3,this.aj=6,this.Vk=2,this.Tk=13,this.bj=this.cj=5,this.mg=2,this.lg=7,this.nl=23,this.ol=0,this.pl=1,this.ql=3,this.ml=17,this.dj=7,this.sl=11,this.Ub=7,this.Vb=3,this.ul=7,this.tl=11,this.rl=15,this.Cb=2,this.vl=3,this.ej=7,this.xl=this.jj=this.wl=8,this.kj=this.ij=4,this.Cl=2,this.Bl=3,this.zl=5,this.Al=2,this.yl=3,this.lj=5,this.mj=3,this.bl=14,this.dl=22,this.al=17,this.cl=25,this.fl=
17,this.hl=25,this.el=20,this.gl=28,this.El=13,this.Gl=21,this.Dl=16,this.Fl=24,this.jl=13,this.ll=21,this.il=16,this.kl=24,this.og=2,this.ng=7,this.qj=this.rj=5,this.Hl=19,this.Il=this.gc=5,this.Jl=17,this.oc=3,this.Kl=5,this.pg=3,this.Ob=0,this.Yi=8,this.Zi=5,this.$i=9,this.gj=this.fj=5,this.hj=4,this.oj=this.nj=5,this.pj=4,this.sj=7,this.tj=5,this.uj=8,this.yj=3,this.zj=4,this.Aj=3,this.Ol=this.Ll=11,this.Nl=this.Ml=15,this.Pl=7,this.wj=5,this.vj=8,this.xj=0,this.Dj=2,this.qg=6,this.Cj=3,this.Bj=
6,this.Fj=3,this.Ql=this.Ej=5));this.Lg=[];this.Mg=[];this.Nc=this.ah=0;this.kh=this.zi=!1;this.Aa=[];this.ue=this.Ib=this.rb=this.eb=this.ye=0;this.T=this.Jm;this.U=this.Km;this.N=this.Rn;this.O=this.Sn;this.Q=this.np;this.R=this.op;xc(this)}y(yb,Zb);k=Zb.prototype;k.Mi=function(a,b,c,d,e){this.Aa=a;this.ue=this.Ib=b;this.rb=c;this.eb=d;this.ye=e};k.reset=function(){this.Nb&&this.Ab();xc(this);Ab(this);this.jd=!1};
function xc(a){a.G=0;a.B=0;a.I=0;a.J=0;a.Y=0;a.H=0;a.F=0;a.D=0;a.ad=65520;a.dd=0;a.te=1023;a.Ic={Jj:0,oa:0,ab:0,vh:-1};a.ua=new Nb(a,"CS");a.Eb=new Nb(a,"DS");a.wb=new Nb(a,"SS");a.Za=new Nb(a,"ES");a.gm=new Nb(a,"ZERO");yc(a,0,65535);80286<=a.Fa&&(a.Rc=a.Ye=0,a.Ld=new Nb(a,"LDT",!0),a.Ag=new Nb(a,"TSS",!0),a.Pb=new Nb(a,"VER",!0),yc(a,65520,61440),a.ua.Ua=16711680);zc(a,0);Ac(a);a.nb=0;a.Db=a.ug=-1;a.Ug=0;a.ha=a.Ka=-1;a.C=a.Eb;a.M=a.wb;a.$=a.wa=0}
k.Ek=function(){var a=this.G+this.B+this.I+this.J+this.Y+this.H+this.F+this.D|0;return a=a+this.qa+this.ua.oa+this.Eb.oa+this.wb.oa+this.Za.oa+Bc(this)|0};function Cc(a,b,c,d){void 0!==d&&(void 0===a.Lg[b]&&(a.Lg[b]=[]),a.Lg[b].push([c,d]))}function Dc(a,b){a.zi&&32>b&&16!=b&&22!=b&&28!=b&&E(a.X,a.X.$j)&&(Ec(a.X,b,a.Ba),Fc(a,a.Ba,function(a,c){return function(d){Gc(a.X,b,d,F(a)-c)}}(a,F(a))));var c=a.Lg[b];if(void 0!==c)for(var d=0;d<c.length;d++)if(!c[d][1].call(c[d][0],a.Ba))return!1;return!0}
function Fc(a,b,c){void 0!==c&&(null==a.Mg[b]&&a.ah++,a.Mg[b]=c)}function Hc(a,b){var c=a.Mg[b];null!=c&&(c(--a.ah),delete a.Mg[b])}function Ac(a,b){void 0===b&&(b=!!(a.ad&1));Ic=b?Jc:Kc;Pb(a.ua,b);Pb(a.Eb,b);Pb(a.wb,b);Pb(a.Za,b)}
k.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.Y,this.H,this.F,this.D]);a.set(1,[this.qa,this.ua.save(),this.Eb.save(),this.wb.save(),this.Za.save(),Bc(this),null!=this.Rc?[this.ad,this.Rc,this.Ye,this.dd,this.te,this.Ld.save(),this.Ag.save()]:null]);a.set(2,[this.C.xg,this.M.xg,this.$,this.wa,this.nb,this.ha,this.Ka]);a.set(3,[this.zh,this.Ke,this.Gd]);a.set(4,fb(this.na));return a.data()};
k.restore=function(a){var b;b=a[0];this.G=b[0];this.B=b[1];this.I=b[2];this.J=b[3];this.Y=b[4];this.H=b[5];this.F=b[6];this.D=b[7];b=a[1];this.ua.restore(b[1]);this.Eb.restore(b[2]);this.wb.restore(b[3]);this.Za.restore(b[4]);zc(this,b[5]);var c=b[6];c&&c.length&&(this.ad=c[0],this.Rc=c[1],this.Ye=c[2],this.dd=c[3],this.te=c[4],this.Ld.restore(c[5]),this.Ag.restore(c[6]),Ac(this));I(this,b[0]);b=a[2];this.C=Lc(this,b[0]);this.M=Lc(this,b[1]);this.$=b[2];this.wa=b[3];this.nb=b[4];this.ha=b[5];this.Ka=
b[6];b=a[3];this.zh=b[0];this.Ke=b[1];Hb(this,b[2]);a:{b=this.na;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.pk){for(var f=0,g=Array(b.pk),h=0;h<e.length-1;)for(var m=e[h++],n=e[h++];m--;)g[f++]=n;e=g}f=b.Aa[d];if(!f||!f.restore(e)){w("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Ya(b,a[c]);b=!0}return b};
function Lc(a,b){switch(b){case "CS":return a.ua;case "DS":return a.Eb;case "SS":return a.wb;case "ES":return a.Za;case "ZERO":return a.gm;default:return[0,b,0,0,""]}}function Mc(a,b){var c;if(a.ad&1){if(c=a.dd+(b<<3),c+7<=a.te){a.Ic.Jj=a.Ia(c);a.Ic.oa=a.Ia(c+2);a.Ic.ab=a.Ia(c+4);switch(a.Ic.ab&7936){case 1536:a.Ic.vh=-17153;break;case 1792:a.Ic.vh=-16641;break;default:return!1}return!0}}else if(c=a.dd+(b<<2),c+7<=a.te)return a.Ic.Jj=a.Ia(c),a.Ic.oa=a.Ia(c+2),a.Ic.vh=-769,!0;return!1}
function Nc(a,b){a.Ba=a.ua.load(b)+a.qa;a.$|=a.Jg}function Oc(a,b){a.Eb.load(b);a.$|=a.Jg}function Pc(a,b){a.wb.load(b);a.$|=4}function Tc(a,b){a.Za.load(b);a.$|=a.Jg}function I(a,b){a.Ba=a.ua.Ua+(a.qa=b&65535)}function yc(a,b,c){a.Ba=a.ua.load(c)+(a.qa=b)}function J(a,b){a.Ba=a.ua.Ua+(a.qa=a.qa+b&65535)}function Uc(a){return a.Z&a.da?1:0}function Vc(a){return Mb[a.ja&255]?4:0}function Wc(a){return(a.ja^a.ma)&16?16:0}function Xc(a){return a.Z&a.da-1?0:64}function Yc(a){return a.ja&a.da>>1?128:0}
0,0,1,1,0,1,0,0,1];function Nb(a,b,c){this.S=a;this.Ua=this.oa=0;this.Nc=65535;this.Mc=this.ab=0;this.yg=b;Ob(this,c)}function Qb(a){this.oa=a;this.Nc=65535;return this.Ua=a<<4}
function Rb(a){var b,c;a&4?(b=this.S.Ld.Ua,c=this.S.Ld.Nc):(b=this.S.Sc,c=this.S.Ze);b+=a&65528;if(b+7<=c){this.Wc=Sb;this.Yb=Tb;this.S.A-=15;c=this.S.Ia(b+0);var d=this.S.Ia(b+4),e=this.S.Ia(b+2)|(d&255)<<16;this.S.Ia(b+6);b=d&7936;if(b&4096){2048==(b&2560)&&(this.Yb=Ub);if(b&2048||!(b&512))this.Yb=Vb;this.oa=a;this.Nc=c;this.ab=d;this.Mc=(d&24576)>>13;return this.Ua=e}if(b&&768>=b)return this.oa=a,this.Nc=c,this.ab=d,this.Mc=(d&24576)>>13,this.Ua=e}return-1}function Wb(a){return this.Ua+a}
function Xb(a){return this.Ua+a}function Sb(a,b,c){return a+b<=this.Nc?this.Ua+a:Ub.call(this,0,0,c)}function Ub(a,b,c){c||Yb.call(this.S,13,0);return-1}function Tb(a,b,c){return a+b<=this.Nc?this.Ua+a:Vb.call(this,0,0,c)}function Vb(a,b,c){c||Yb.call(this.S,13,0);return-1}Nb.prototype.save=function(){return[this.oa,this.Ua,this.Nc,this.ab,this.Mc,this.yg]};Nb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.oa=a[0],this.Ua=a[1],this.Nc=a[2],this.ab=a[3],this.Mc=a[4],this.yg=a[5])};
function Ob(a,b){void 0===b&&(b=!!(a.S.ad&1));b?(a.load=Rb,a.Wc=Sb,a.Yb=Tb):(a.load=Qb,a.Wc=Wb,a.Yb=Xb)}
function Zb(a){this.Fa=a.model||8088;var b=0;switch(this.Fa){default:case 8088:b=4772727;break;case 80286:b=6E6}yb.call(this,a,b);this.gk=61442;this.Lg=4;this.qf=255;this.Mj=4;this.aa=5;this.ta=6;this.fa=7;this.ga=8;this.P=9;this.V=11;this.W=12;this.Je=4;this.Tk=60;this.Uk=83;this.Tb=3;this.sb=9;this.hc=16;this.Gh=1;this.Yk=19;this.$k=28;this.bl=16;this.al=21;this.Zk=37;this.Wk=2;this.ej=9;this.Xk=5;this.Vk=33;this.gj=10;this.fj=8;this.ng=3;this.mg=15;this.pl=51;this.ql=1;this.rl=2;this.sl=4;this.ol=
32;this.ul=this.hj=15;this.Ub=16;this.Vb=4;this.wl=11;this.vl=18;this.tl=24;this.Cb=4;this.xl=2;this.ij=16;this.yl=17;this.nj=18;this.zl=19;this.mj=5;this.oj=6;this.El=2;this.Dl=8;this.Bl=9;this.qj=this.pj=this.Al=this.Cl=10;this.dl=80;this.fl=144;this.cl=86;this.el=154;this.hl=101;this.jl=165;this.gl=107;this.il=171;this.Gl=70;this.Il=113;this.Fl=76;this.Hl=124;this.ll=80;this.nl=128;this.kl=86;this.ml=134;this.pg=3;this.og=16;this.vj=10;this.uj=8;this.Jl=51;this.ic=8;this.Kl=17;this.Ll=36;this.pc=
11;this.Ml=16;this.qg=10;this.Pb=2;this.bj=18;this.cj=9-this.Pb;this.dj=17-this.Pb;this.jj=12;this.kj=9-this.Pb;this.lj=13-this.Pb;this.rj=18;this.sj=9-this.Pb;this.tj=17-this.Pb;this.wj=15;this.xj=9-this.Pb;this.yj=15-this.Pb;this.Cj=11;this.Dj=9-this.Pb;this.Ej=10-this.Pb;this.Nl=8;this.Ql=12;this.Ol=18;this.Pl=17;this.Rl=15;this.Aj=8;this.zj=20;this.Bj=2;this.Hj=3;this.rg=9;this.Gj=5;this.Fj=11;this.Jj=4;this.Ij=17;this.Sl=11;this.Sa=$b.slice();80186<=this.Fa&&(this.qf=31,this.Sa[15]=ac,this.Sa[96]=
bc,this.Sa[97]=cc,this.Sa[98]=dc,this.Sa[99]=ac,this.Sa[100]=ac,this.Sa[101]=ac,this.Sa[102]=ac,this.Sa[103]=ac,this.Sa[104]=ec,this.Sa[105]=fc,this.Sa[106]=gc,this.Sa[107]=hc,this.Sa[108]=ic,this.Sa[109]=jc,this.Sa[110]=kc,this.Sa[111]=lc,this.Sa[192]=mc,this.Sa[193]=nc,this.Sa[200]=oc,this.Sa[201]=pc,this.Sa[241]=qc,rc[7]=sc,tc[7]=sc,80286<=this.Fa&&(this.gk=2,this.Lg=0,this.Sa[15]=uc,this.Sa[99]=vc,this.Sa[84]=wc,this.P=this.ga=this.fa=this.ta=this.aa=this.Mj=0,this.W=this.V=1,this.Je=3,this.Tk=
14,this.Uk=16,this.Tb=2,this.hc=this.sb=7,this.Gh=0,this.Yk=7,this.$k=13,this.bl=7,this.al=11,this.Zk=16,this.Wk=3,this.ej=6,this.Xk=2,this.Vk=13,this.fj=this.gj=5,this.ng=2,this.mg=7,this.pl=23,this.ql=0,this.rl=1,this.sl=3,this.ol=17,this.hj=7,this.ul=11,this.Ub=7,this.Vb=3,this.wl=7,this.vl=11,this.tl=15,this.Cb=2,this.xl=3,this.ij=7,this.zl=this.nj=this.yl=8,this.oj=this.mj=4,this.El=2,this.Dl=3,this.Bl=5,this.Cl=2,this.Al=3,this.pj=5,this.qj=3,this.dl=14,this.fl=22,this.cl=17,this.el=25,this.hl=
17,this.jl=25,this.gl=20,this.il=28,this.Gl=13,this.Il=21,this.Fl=16,this.Hl=24,this.ll=13,this.nl=21,this.kl=16,this.ml=24,this.pg=2,this.og=7,this.uj=this.vj=5,this.Jl=19,this.Kl=this.ic=5,this.Ll=17,this.pc=3,this.Ml=5,this.qg=3,this.Pb=0,this.bj=8,this.cj=5,this.dj=9,this.kj=this.jj=5,this.lj=4,this.sj=this.rj=5,this.tj=4,this.wj=7,this.xj=5,this.yj=8,this.Cj=3,this.Dj=4,this.Ej=3,this.Ql=this.Nl=11,this.Pl=this.Ol=15,this.Rl=7,this.Aj=5,this.zj=8,this.Bj=0,this.Hj=2,this.rg=6,this.Gj=3,this.Fj=
6,this.Jj=3,this.Sl=this.Ij=5));this.Ng=[];this.Og=[];this.Oc=this.dh=0;this.mh=this.Bi=!1;this.Aa=[];this.ve=this.Ib=this.rb=this.eb=this.ze=0;this.T=this.Mm;this.U=this.Nm;this.N=this.Un;this.O=this.Vn;this.Q=this.qp;this.R=this.rp;xc(this)}y(yb,Zb);k=Zb.prototype;k.Oi=function(a,b,c,d,e){this.Aa=a;this.ve=this.Ib=b;this.rb=c;this.eb=d;this.ze=e};k.reset=function(){this.Ob&&this.Ab();xc(this);Ab(this);this.jd=!1};
function xc(a){a.G=0;a.B=0;a.I=0;a.J=0;a.Y=0;a.H=0;a.F=0;a.D=0;a.ad=65520;a.dd=0;a.ue=1023;a.Jc={Nj:0,oa:0,ab:0,xh:-1};a.ua=new Nb(a,"CS");a.Eb=new Nb(a,"DS");a.wb=new Nb(a,"SS");a.Za=new Nb(a,"ES");a.im=new Nb(a,"ZERO");yc(a,0,65535);80286<=a.Fa&&(a.Sc=0,a.Ze=65535,a.Ld=new Nb(a,"LDT",!0),a.Bg=new Nb(a,"TSS",!0),a.Qb=new Nb(a,"VER",!0),yc(a,65520,61440),a.ua.Ua=16711680);zc(a,0);Ac(a);a.mb=0;a.Db=a.vg=-1;a.Wg=0;a.ha=a.Ka=-1;a.C=a.Eb;a.M=a.wb;a.$=a.wa=0}
k.Gk=function(){var a=this.G+this.B+this.I+this.J+this.Y+this.H+this.F+this.D|0;return a=a+this.qa+this.ua.oa+this.Eb.oa+this.wb.oa+this.Za.oa+Bc(this)|0};function Cc(a,b,c,d){void 0!==d&&(void 0===a.Ng[b]&&(a.Ng[b]=[]),a.Ng[b].push([c,d]))}function Dc(a,b){var c=a.Ng[b];if(void 0!==c)for(var d=0;d<c.length;d++){if(!c[d][1].call(c[d][0],a.Ba))return!1}else a.Bi&&D(a.X,a.X.Gg)&&(Ec(a.X,b,a.Ba),Fc(a,a.Ba,function(a,c){return function(d){Gc(a.X,b,d,F(a)-c)}}(a,F(a))));return!0}
function Fc(a,b,c){void 0!==c&&(null==a.Og[b]&&a.dh++,a.Og[b]=c)}function Hc(a,b){var c=a.Og[b];null!=c&&(c(--a.dh),delete a.Og[b])}function Ac(a,b){void 0===b&&(b=!!(a.ad&1));Ic=b?Jc:Kc;Ob(a.ua,b);Ob(a.Eb,b);Ob(a.wb,b);Ob(a.Za,b)}
k.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.Y,this.H,this.F,this.D]);a.set(1,[this.qa,this.ua.save(),this.Eb.save(),this.wb.save(),this.Za.save(),Bc(this),null!=this.Sc?[this.ad,this.Sc,this.Ze,this.dd,this.ue,this.Ld.save(),this.Bg.save()]:null]);a.set(2,[this.C.yg,this.M.yg,this.$,this.wa,this.mb,this.ha,this.Ka]);a.set(3,[this.Bh,this.Le,this.Gd]);a.set(4,fb(this.na));return a.data()};
k.restore=function(a){var b;b=a[0];this.G=b[0];this.B=b[1];this.I=b[2];this.J=b[3];this.Y=b[4];this.H=b[5];this.F=b[6];this.D=b[7];b=a[1];this.ua.restore(b[1]);this.Eb.restore(b[2]);this.wb.restore(b[3]);this.Za.restore(b[4]);zc(this,b[5]);var c=b[6];c&&c.length&&(this.ad=c[0],this.Sc=c[1],this.Ze=c[2],this.dd=c[3],this.ue=c[4],this.Ld.restore(c[5]),this.Bg.restore(c[6]),Ac(this));I(this,b[0]);b=a[2];this.C=Lc(this,b[0]);this.M=Lc(this,b[1]);this.$=b[2];this.wa=b[3];this.mb=b[4];this.ha=b[5];this.Ka=
b[6];b=a[3];this.Bh=b[0];this.Le=b[1];Hb(this,b[2]);a:{b=this.na;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.rk){for(var f=0,g=Array(b.rk),h=0;h<e.length-1;)for(var m=e[h++],n=e[h++];m--;)g[f++]=n;e=g}f=b.Aa[d];if(!f||!f.restore(e)){w("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Ya(b,a[c]);b=!0}return b};
function Lc(a,b){switch(b){case "CS":return a.ua;case "DS":return a.Eb;case "SS":return a.wb;case "ES":return a.Za;case "ZERO":return a.im;default:return[0,b,0,0,""]}}function Mc(a,b){var c;if(a.ad&1){if(c=a.dd+(b<<3),c+7<=a.ue){a.Jc.Nj=a.Ia(c);a.Jc.oa=a.Ia(c+2);a.Jc.ab=a.Ia(c+4);switch(a.Jc.ab&7936){case 1536:a.Jc.xh=-17153;break;case 1792:a.Jc.xh=-16641;break;default:return!1}return!0}}else if(c=a.dd+(b<<2),c+7<=a.ue)return a.Jc.Nj=a.Ia(c),a.Jc.oa=a.Ia(c+2),a.Jc.xh=-769,!0;return!1}
function Nc(a,b){a.Ba=a.ua.load(b)+a.qa;a.$|=a.Lg}function Oc(a,b){a.Eb.load(b);a.$|=a.Lg}function Pc(a,b){a.wb.load(b);a.$|=4}function Tc(a,b){a.Za.load(b);a.$|=a.Lg}function I(a,b){a.Ba=a.ua.Ua+(a.qa=b&65535)}function yc(a,b,c){a.Ba=a.ua.load(c)+(a.qa=b)}function J(a,b){a.Ba=a.ua.Ua+(a.qa=a.qa+b&65535)}function Uc(a){return a.Z&a.da?1:0}function Vc(a){return Mb[a.ja&255]?4:0}function Wc(a){return(a.ja^a.ma)&16?16:0}function Xc(a){return a.Z&a.da-1?0:64}function Yc(a){return a.ja&a.da>>1?128:0}
function Zc(a){return(a.ja^a.ma^a.ja>>1)&a.da>>1?2048:0}function $c(a){a.Z&=~a.da}function ad(a){a.ma=a.ja&16|a.ma&-17}function bd(a){a.Z|=a.da-1}function cd(a){Yc(a)&&(a.ja^=a.da>>1|a.da>>2,a.ma^=32896)}function dd(a){a.ja&=~a.da;a.ma=a.ja&32896|a.ma&-32897}function ed(a){a.Z|=a.da}function fd(a){a.ma=~(a.ja&16)&16|a.ma&-17}function gd(a){a.Z&=~(a.da-1)}function hd(a){Yc(a)||(a.ja^=a.da>>1|a.da>>2,a.ma^=32896)}function id(a){a.ja|=a.da;a.ma=a.ja&32896|a.ma&-32897}
function Bc(a){return a.ya&-2262|Uc(a)|Vc(a)|Wc(a)|Xc(a)|Yc(a)|Zc(a)}function zc(a,b){a.da=256;a.Z=a.ja=a.ma=0;b&1&&ed(a);b&4||(a.ja|=1);b&16&&(a.ma|=16);b&64||bd(a);b&128&&hd(a);b&2048&&id(a);a.ya=a.ya&-1793|b&1792|a.dk;a.ya&256&&(a.nb|=2,a.$|=4)}
k.xb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.sa[c]=d;e=!0;break;default:e=yb.prototype.xb.call(this,a,b,c,d)}return e};k.ub=function(a){return this.Aa[(a&this.Ib)>>this.rb].qc(a&this.eb)};
k.Ia=function(a){var b=a&this.eb;a=(a&this.Ib)>>this.rb;this.A-=this.Ij;return b!=this.eb?this.Aa[a].Xl(b):this.Aa[a++].qc(b)|this.Aa[a&this.ye].qc(0)<<8};k.bd=function(a,b){this.Aa[(a&this.Ib)>>this.rb].Cc(a&this.eb,b&255)};k.Nd=function(a,b){var c=a&this.eb,d=(a&this.Ib)>>this.rb;this.A-=this.Ij;c!=this.eb?this.Aa[d].jm(c,b&65535):(this.Aa[d++].Cc(c,b&255),this.Aa[d&this.ye].Cc(0,b>>8&255))};k.Jm=function(a,b){this.zg=a;this.ha=a.Vc(this.rg=b,0);return this.$&1?0:this.ub(this.ha)};
k.Km=function(a,b){this.zg=a;this.ha=a.Vc(this.rg=b,1);return this.$&1?0:this.Ia(this.ha)};k.Rn=function(a,b){this.zg=a;this.Ka=this.ha=a.Vc(this.rg=b,0);return this.$&1?0:this.ub(this.ha)};k.Sn=function(a,b){this.zg=a;this.Ka=this.ha=a.Vc(this.rg=b,1);return this.$&1?0:this.Ia(this.ha)};k.np=function(a){this.$&2||this.bd(this.zg.Yb(this.rg,1),a)};k.op=function(a){this.$&2||this.Nd(this.zg.Yb(this.rg,2),a)};k.ea=function(){var a=this.ub(this.Ba);this.Ba=this.ua.Ua+(this.qa=this.qa+1&65535);return a};
k.L=function(){var a=this.ub(this.Ba)<<24>>24;this.Ba=this.ua.Ua+(this.qa=this.qa+1&65535);return a&65535};k.K=function(){var a=this.Ia(this.Ba);this.Ba=this.ua.Ua+(this.qa=this.qa+2&65535);return a};k.Ja=function(){var a=this.Y;this.Y=this.Y+2&65535;return this.Ia(this.wb.Vc(a,1))};function K(a,b){var c=a.Y=a.Y-2&65535;a.Nd(a.wb.Yb(c,1),b)}
k.eh=function(){G(this,"AX",this.G);G(this,"BX",this.B);G(this,"CX",this.I);G(this,"DX",this.J);G(this,"SP",this.Y);G(this,"BP",this.H);G(this,"SI",this.F);G(this,"DI",this.D);G(this,"CS",this.ua.oa);G(this,"DS",this.Eb.oa);G(this,"SS",this.wb.oa);G(this,"ES",this.Za.oa);G(this,"IP",this.qa);var a=Bc(this);G(this,"PS",a);G(this,"C",a&1?1:0,1);G(this,"P",a&4?1:0,1);G(this,"A",a&16?1:0,1);G(this,"Z",a&64?1:0,1);G(this,"S",a&128?1:0,1);G(this,"T",a&256?1:0,1);G(this,"I",a&512?1:0,1);G(this,"D",a&1024?
1:0,1);G(this,"O",a&2048?1:0,1);this.sa.speed&&(this.sa.speed.innerHTML=this.Nb&&this.ld?this.ld.toFixed(2)+"Mhz":"Stopped")};
k.wf=function(a){this.kh=!0;this.zi=a&&this.X&&jd(this.X);this.Nc=this.A=a;this.ka&&Lb(this.ka);a||!this.X||E(this.X,this.X.Te)||(this.$|=4);do{var b=this.$&240;if(b)this.wa|=b;else if(this.Gh=this.Ba,this.ha=this.Ka=-1,this.C=this.Eb,this.M=this.wb,this.wa=this.$&256,this.nb){a:{if(!(this.$&4))if(this.nb&1&&this.ya&512){if(b=kd(this.ka),-1<=b&&(this.nb&=-2,0<=b)){this.nb&=-5;ld.call(this,b,null,11);b=!0;break a}}else if(this.nb&2){this.nb&=-3;ld.call(this,1,null,11);b=!0;break a}if(b=this.nb&8){for(var b=
this.ka,c=!1,d=0;d<b.$a;d++)for(var e=b.$a[d],f=0;f<e.Gb.length;f++){var g=e.Gb[f];g.Fd||(md(b,g),g.Fd||(c=!0))}b=!c}b&&(this.nb&=-9);b=!1}if(b&&!a){this.$=0;break}if(this.nb&4){this.$=this.A=0;break}}if(this.zi&&nd(this.X,this.Ba)){this.Ab();break}this.$=0;this.Sa[this.ea()].call(this)}while(0<this.A);return this.kh?this.Nc-this.A:void 0===this.kh?0:-1};k.Qa=function(a){this.X&&E(this.X,this.X.Fg)&&this.X.message(a)};
Ba(function(){for(var a=B(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Zb(d);Oa(d,c)}});function od(a,b){this.ma=a^b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return(this.Z=this.ja=a+b)&255}function pd(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return(this.Z=this.ja=this.ma=a|b)&255}
function qd(a,b){this.ma=a^b;this.Z=this.ja=a+b+(this.Z&this.da?1:0);this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return this.Z&255}function rd(a,b){this.ma=a^b;this.Z=this.ja=a-b-(this.Z&this.da?1:0);this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return this.Z&255}function sd(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return(this.Z=this.ja=this.ma=a&b)&255}
function td(a,b){this.ma=a^b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return(this.Z=this.ja=a-b)&255}function ud(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return(this.Z=this.ja=this.ma=a^b)&255}function vd(a,b){this.ma=a^b;this.da=256;this.Z=this.ja=a-b;this.A-=0>this.Ka?0>this.ha?this.Tb:this.aj:this.sb;this.$|=2;return a}
function wd(a,b){this.ma=a^b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return(this.Z=this.ja=a+b)&65535}function xd(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return(this.Z=this.ja=this.ma=a|b)&65535}function yd(a,b){this.ma=a^b;this.Z=this.ja=a+b+(this.Z&this.da?1:0);this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return this.Z&65535}
function zd(a,b){this.ma=a^b;this.Z=this.ja=a-b-(this.Z&this.da?1:0);this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return this.Z&65535}function Ad(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return(this.Z=this.ja=this.ma=a&b)&65535}function Bd(a,b){this.ma=a^b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return(this.Z=this.ja=a-b)&65535}
function Cd(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.fc;return(this.Z=this.ja=this.ma=a^b)&65535}function Dd(a,b){this.ma=a^b;this.da=65536;this.Z=this.ja=a-b;this.A-=0>this.Ka?0>this.ha?this.Tb:this.aj:this.sb;this.$|=2;return a}function Ed(a,b){this.Z=this.Z&this.da-1|(a&b?this.da:0);(a^a>>1)&b>>1?id(this):dd(this)}function Fd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;Ed.call(this,d,256)}return c}
function Bc(a){return a.xa&-2262|Uc(a)|Vc(a)|Wc(a)|Xc(a)|Yc(a)|Zc(a)}function zc(a,b){a.da=256;a.Z=a.ja=a.ma=0;b&1&&ed(a);b&4||(a.ja|=1);b&16&&(a.ma|=16);b&64||bd(a);b&128&&hd(a);b&2048&&id(a);a.xa=a.xa&-1793|b&1792|a.gk;a.xa&256&&(a.mb|=2,a.$|=4)}
k.xb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.sa[c]=d;e=!0;break;default:e=yb.prototype.xb.call(this,a,b,c,d)}return e};k.ub=function(a){return this.Aa[(a&this.Ib)>>this.rb].sc(a&this.eb)};
k.Ia=function(a){var b=a&this.eb;a=(a&this.Ib)>>this.rb;this.A-=this.Mj;return b!=this.eb?this.Aa[a].Zl(b):this.Aa[a++].sc(b)|this.Aa[a&this.ze].sc(0)<<8};k.Md=function(a,b){this.Aa[(a&this.Ib)>>this.rb].Dc(a&this.eb,b&255)};k.bd=function(a,b){var c=a&this.eb,d=(a&this.Ib)>>this.rb;this.A-=this.Mj;c!=this.eb?this.Aa[d].lm(c,b&65535):(this.Aa[d++].Dc(c,b&255),this.Aa[d&this.ze].Dc(0,b>>8&255))};k.Mm=function(a,b){this.Ag=a;this.ha=a.Wc(this.sg=b,0);return this.$&1?0:this.ub(this.ha)};
k.Nm=function(a,b){this.Ag=a;this.ha=a.Wc(this.sg=b,1);return this.$&1?0:this.Ia(this.ha)};k.Un=function(a,b){this.Ag=a;this.Ka=this.ha=a.Wc(this.sg=b,0);return this.$&1?0:this.ub(this.ha)};k.Vn=function(a,b){this.Ag=a;this.Ka=this.ha=a.Wc(this.sg=b,1);return this.$&1?0:this.Ia(this.ha)};k.qp=function(a){this.$&2||this.Md(this.Ag.Yb(this.sg,1),a)};k.rp=function(a){this.$&2||this.bd(this.Ag.Yb(this.sg,2),a)};k.ea=function(){var a=this.ub(this.Ba);this.Ba=this.ua.Ua+(this.qa=this.qa+1&65535);return a};
k.L=function(){var a=this.ub(this.Ba)<<24>>24;this.Ba=this.ua.Ua+(this.qa=this.qa+1&65535);return a&65535};k.K=function(){var a=this.Ia(this.Ba);this.Ba=this.ua.Ua+(this.qa=this.qa+2&65535);return a};k.Ja=function(){var a=this.Y;this.Y=this.Y+2&65535;return this.Ia(this.wb.Wc(a,1))};function K(a,b){var c=a.Y=a.Y-2&65535;a.bd(a.wb.Yb(c,1),b)}
k.gh=function(){G(this,"AX",this.G);G(this,"BX",this.B);G(this,"CX",this.I);G(this,"DX",this.J);G(this,"SP",this.Y);G(this,"BP",this.H);G(this,"SI",this.F);G(this,"DI",this.D);G(this,"CS",this.ua.oa);G(this,"DS",this.Eb.oa);G(this,"SS",this.wb.oa);G(this,"ES",this.Za.oa);G(this,"IP",this.qa);var a=Bc(this);G(this,"PS",a);G(this,"C",a&1?1:0,1);G(this,"P",a&4?1:0,1);G(this,"A",a&16?1:0,1);G(this,"Z",a&64?1:0,1);G(this,"S",a&128?1:0,1);G(this,"T",a&256?1:0,1);G(this,"I",a&512?1:0,1);G(this,"D",a&1024?
1:0,1);G(this,"O",a&2048?1:0,1);this.sa.speed&&(this.sa.speed.innerHTML=this.Ob&&this.ld?this.ld.toFixed(2)+"Mhz":"Stopped")};
k.xf=function(a){this.mh=!0;this.Bi=a&&this.X&&jd(this.X);this.Oc=this.A=a;this.ka&&Lb(this.ka);a||!this.X||D(this.X,this.X.Ue)||(this.$|=4);do{var b=this.$&240;if(b)this.wa|=b;else if(this.Jh=this.Ba,this.ha=this.Ka=-1,this.C=this.Eb,this.M=this.wb,this.wa=this.$&256,this.mb){a:{if(!(this.$&4))if(this.mb&1&&this.xa&512){if(b=kd(this.ka),-1<=b&&(this.mb&=-2,0<=b)){this.mb&=-5;ld.call(this,b,null,11);b=!0;break a}}else if(this.mb&2){this.mb&=-3;ld.call(this,1,null,11);b=!0;break a}if(b=this.mb&8){for(var b=
this.ka,c=!1,d=0;d<b.$a;d++)for(var e=b.$a[d],f=0;f<e.Gb.length;f++){var g=e.Gb[f];g.Fd||(md(b,g),g.Fd||(c=!0))}b=!c}b&&(this.mb&=-9);b=!1}if(b&&!a){this.$=0;break}if(this.mb&4){this.$=this.A=0;break}}if(this.Bi&&nd(this.X,this.Ba)){this.Ab();break}this.$=0;this.Sa[this.ea()].call(this)}while(0<this.A);return this.mh?this.Oc-this.A:void 0===this.mh?0:-1};k.Qa=function(a){this.X&&D(this.X,this.X.Hg)&&this.X.message(a)};
Ba(function(){for(var a=B(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Zb(d);Oa(d,c)}});function od(a,b){this.ma=a^b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return(this.Z=this.ja=a+b)&255}function pd(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return(this.Z=this.ja=this.ma=a|b)&255}
function qd(a,b){this.ma=a^b;this.Z=this.ja=a+b+(this.Z&this.da?1:0);this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return this.Z&255}function rd(a,b){this.ma=a^b;this.Z=this.ja=a-b-(this.Z&this.da?1:0);this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return this.Z&255}function sd(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return(this.Z=this.ja=this.ma=a&b)&255}
function td(a,b){this.ma=a^b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return(this.Z=this.ja=a-b)&255}function ud(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return(this.Z=this.ja=this.ma=a^b)&255}function vd(a,b){this.ma=a^b;this.da=256;this.Z=this.ja=a-b;this.A-=0>this.Ka?0>this.ha?this.Tb:this.ej:this.sb;this.$|=2;return a}
function wd(a,b){this.ma=a^b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return(this.Z=this.ja=a+b)&65535}function xd(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return(this.Z=this.ja=this.ma=a|b)&65535}function yd(a,b){this.ma=a^b;this.Z=this.ja=a+b+(this.Z&this.da?1:0);this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return this.Z&65535}
function zd(a,b){this.ma=a^b;this.Z=this.ja=a-b-(this.Z&this.da?1:0);this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return this.Z&65535}function Ad(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return(this.Z=this.ja=this.ma=a&b)&65535}function Bd(a,b){this.ma=a^b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return(this.Z=this.ja=a-b)&65535}
function Cd(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Tb:this.sb:this.hc;return(this.Z=this.ja=this.ma=a^b)&65535}function Dd(a,b){this.ma=a^b;this.da=65536;this.Z=this.ja=a-b;this.A-=0>this.Ka?0>this.ha?this.Tb:this.ej:this.sb;this.$|=2;return a}function Ed(a,b){this.Z=this.Z&this.da-1|(a&b?this.da:0);(a^a>>1)&b>>1?id(this):dd(this)}function Fd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;Ed.call(this,d,256)}return c}
function Gd(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;Ed.call(this,d,65536)}return c}function Hd(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);Ed.call(this,d,256)}return c}function Id(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);Ed.call(this,d,65536)}return c}
function Jd(a,b){var c=a;if(b){var d;(d=(b&this.pf)%9)?(d=a<<d|(this.Z&this.da?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.Z&this.da?1:0)<<8;Ed.call(this,d,256)}return c}function Kd(a,b){var c=a;if(b){var d;(d=(b&this.pf)%17)?(d=a<<d|(this.Z&this.da?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.Z&this.da?1:0)<<16;Ed.call(this,d,65536)}return c}function Ld(a,b){var c=a;b&&(c=(b&this.pf)%9,c=a>>c|(this.Z&this.da?1:0)<<8-c|a<<9-c,Ed.call(this,c,256),c&=255);return c}
function Md(a,b){var c=a;b&&(c=(b&this.pf)%17,c=a>>c|(this.Z&this.da?1:0)<<16-c|a<<17-c,Ed.call(this,c,65536),c&=65535);return c}function Nd(a,b){var c=a;b&&(c=8<b?this.Z=this.ja=0:(this.Z=this.ja=a<<b)&255,this.ma=0,this.da=256);return c}function Od(a,b){var c=a;b&&(c=16<b?this.Z=this.ja=0:(this.Z=this.ja=a<<b)&65535,this.ma=0,this.da=65536);return c}
function Jd(a,b){var c=a;if(b){var d;(d=(b&this.qf)%9)?(d=a<<d|(this.Z&this.da?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.Z&this.da?1:0)<<8;Ed.call(this,d,256)}return c}function Kd(a,b){var c=a;if(b){var d;(d=(b&this.qf)%17)?(d=a<<d|(this.Z&this.da?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.Z&this.da?1:0)<<16;Ed.call(this,d,65536)}return c}function Ld(a,b){var c=a;b&&(c=(b&this.qf)%9,c=a>>c|(this.Z&this.da?1:0)<<8-c|a<<9-c,Ed.call(this,c,256),c&=255);return c}
function Md(a,b){var c=a;b&&(c=(b&this.qf)%17,c=a>>c|(this.Z&this.da?1:0)<<16-c|a<<17-c,Ed.call(this,c,65536),c&=65535);return c}function Nd(a,b){var c=a;b&&(c=8<b?this.Z=this.ja=0:(this.Z=this.ja=a<<b)&255,this.ma=0,this.da=256);return c}function Od(a,b){var c=a;b&&(c=16<b?this.Z=this.ja=0:(this.Z=this.ja=a<<b)&65535,this.ma=0,this.da=65536);return c}
function Pd(a,b){if(b){var c=8<b?0:a>>b-1;this.Z=this.ja=c>>1;this.Z=c&1?this.Z|256:this.Z&-257;this.ma=a^this.Z;this.da=256;a=this.Z}return a&255}function Qd(a,b){if(b){var c=16<b?0:a>>b-1;this.Z=this.ja=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.ma=a^this.Z;this.da=65536;a=this.Z}return a&65535}function Rd(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.Z=this.ja=c>>1;this.Z=c&1?this.Z|256:this.Z&-257;this.ma=a^this.Z;this.da=256;a=this.Z}return a&255}
function Sd(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.Z=this.ja=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.ma=a^this.Z;this.da=65536;a=this.Z}return a&65535}function Td(){this.A-=0>this.ha?2:this.Pl;return 1}function Ud(){var a=this.I&this.pf;this.A-=(0>this.ha?this.wj:this.vj)+(a<<this.xj);return a}function Vd(){var a=this.ea();this.A-=(0>this.ha?this.wj:this.vj)+(a<<this.xj);return a}function Wd(){return null}function $d(a){Yb.call(this,13,0);return a}
function Sd(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.Z=this.ja=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.ma=a^this.Z;this.da=65536;a=this.Z}return a&65535}function Td(){this.A-=0>this.ha?2:this.Rl;return 1}function Ud(){var a=this.I&this.qf;this.A-=(0>this.ha?this.Aj:this.zj)+(a<<this.Bj);return a}function Vd(){var a=this.ea();this.A-=(0>this.ha?this.Aj:this.zj)+(a<<this.Bj);return a}function Wd(){return null}function $d(a){Yb.call(this,13,0);return a}
function sc(a){ac.call(this);return a}function L(a){M.call(this);return a}
var ae=[od,pd,qd,rd,sd,td,ud,vd],be=[wd,xd,yd,zd,Ad,Bd,Cd,Dd],ce=[function(a,b){this.A-=0>this.Ka?this.gc:this.Il;return b},$d,$d,$d,$d,$d,$d,$d],de=[function(a,b){this.A-=0>this.Ka?this.Al:this.yl;return b},L,L,L,L,L,L,L],ee=[Fd,Hd,Jd,Ld,Nd,Pd,L,Rd],fe=[Gd,Id,Kd,Md,Od,Qd,L,Sd],he=[function(a,b){b=this.ea();this.Z=this.ja=this.ma=a&b;this.da=256;this.A-=0>this.ha?this.Cj:this.Bj;this.$|=2;return a},L,function(a){this.A-=0>this.ha?this.og:this.ng;return a^255},function(a,b){b=0;this.ma=a^b;this.da=
256;this.A-=0>this.ha?this.og:this.ng;return(this.Z=this.ja=b-a)&255},function(a){this.G=this.Db=(this.Z=(this.G&255)*a)&65535;this.ma=this.ja=this.Z;this.da=256;this.G&65280?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?this.El:this.Dl;this.$|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.Db=b&65535;this.Z=this.ma=this.ja=b;this.da=256;127<b||-128>b?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?this.jl:this.il;this.$|=2;return a},function(a){if(!a)return ge.call(this),
a;var b=this.G/a;if(255<b)return ge.call(this),a;this.Db=this.G=b&255|(this.G%a&255)<<8;this.ja=this.ma=this.Z=b|256;this.da=256;this.A-=0>this.ha?this.bl:this.al;this.$|=2;return a},function(a){if(!a)return ge.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return ge.call(this),a;this.Db=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.ja=this.ma=this.Z=b|256;this.da=256;this.A-=0>this.ha?this.fl:this.el;this.$|=2;return a}],ie=[function(a,b){b=this.K();this.Z=this.ja=
this.ma=a&b;this.da=65536;this.A-=0>this.ha?this.Cj:this.Bj;this.$|=2;return a},L,function(a){this.A-=0>this.ha?this.og:this.ng;return a^65535},function(a,b){b=0;this.ma=a^b;this.da=65536;this.A-=0>this.ha?this.og:this.ng;return(this.Z=this.ja=b-a)&65535},function(a){this.Db=this.G=(this.Z=this.G*a)&65535;this.ug=this.J=this.Z>>16&65535;this.ma=this.ja=this.Z;this.da=65536;this.J?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?this.Gl:this.Fl;this.$|=2;return a},function(a){var b=(this.G<<
16>>16)*(a<<16>>16);this.G=this.Db=b&65535;this.J=this.ug=b>>16&65535;this.Z=this.ma=this.ja=b;this.da=65536;32767<b||-32768>b?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?this.ll:this.kl;this.$|=2;return a},function(a,b){if(!a)return ge.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return ge.call(this),a;this.Db=this.G=c&65535;this.ug=this.J=b%a&65535;this.ja=this.ma=this.Z=c|65536;this.da=65536;this.A-=0>this.ha?this.dl:this.cl;this.$|=2;return a},function(a,
b){if(!a)return ge.call(this),a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return ge.call(this),a;this.Db=this.G=d&65535;this.ug=this.J=b%c&65535;this.ja=this.ma=this.Z=d|65536;this.da=65536;this.A-=0>this.ha?this.hl:this.gl;this.$|=2;return a}],rc=[function(a){this.ma=a;a=(this.ja=a+1)&255;this.Z=a|(this.Z&this.da?1:0)<<8;this.da=256;this.A-=0>this.ha?this.mg:this.lg;return a},function(a){this.ma=a;a=(this.ja=a-1)&255;this.Z=a|(this.Z&this.da?1:0)<<8;this.da=
256;this.A-=0>this.ha?this.mg:this.lg;return a},L,L,L,L,L,L],tc=[function(a){this.ma=a;a=(this.ja=a+1)&65535;this.Z=a|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=0>this.ha?this.mg:this.lg;return a},function(a){this.ma=a;a=(this.ja=a-1)&65535;this.Z=a|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=0>this.ha?this.mg:this.lg;return a},function(a){K(this,this.qa);I(this,a);this.A-=0>this.ha?this.$k:this.Zk;this.$|=2;return a},function(a){if(0>this.ha)return L.call(this,a);K(this,this.ua.oa);K(this,
this.qa);yc(this,a,this.Ia(this.ha+2));this.A-=this.Xk;this.$|=2;return a},function(a){I(this,a);this.A-=0>this.ha?this.ul:this.tl;this.$|=2;return a},function(a){if(0>this.ha)return L.call(this,a);yc(this,a,this.Ia(this.ha+2));this.A-=this.rl;this.$|=2;return a},function(a){var b=a;this.$&512&&(a=a-2&65535,80286>this.Fa&&(b=a));K(this,b);this.A-=0>this.ha?this.oc:this.Kl;this.$|=2;return a},$d],je=[Fd,Hd,Jd,Ld,Nd,Pd,L,Rd],ke=[Gd,Id,Kd,Md,Od,Qd,L,Sd];
function le(a,b){this.A-=0>this.Ka?0>this.ha?this.Cl:this.Bl:this.zl;return b}function me(){return le.call(this,0,this.Db)}function ne(a,b){this.Z=this.ja=this.ma=a&b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Dj:this.qg:this.qg;this.$|=2;return a}function oe(a,b){this.Z=this.ja=this.ma=a&b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Dj:this.qg:this.qg;this.$|=2;return a}
function pe(a,b){var c=(b<<16>>16)*(this.ea()<<24>>24);this.Z=this.ma=this.ja=c;this.da=256;32767<c||-32768>c?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?21:24;return c&65535}function qe(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.Z=this.ma=this.ja=c;this.da=65536;32767<c||-32768>c?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?21:24;return c&65535}function re(a){return a}function se(a){if(0>this.ha)return M.call(this),a;this.A-=this.vl;return this.ha}
function te(a,b){if(0>this.ha)return M.call(this),a;Oc(this,this.Ia(this.ha+2));this.A-=this.ej;return b}function ue(a,b){if(0>this.ha)return M.call(this),a;Tc(this,this.Ia(this.ha+2));this.A-=this.ej;return b}function ve(a){if(0>this.ha)return ac.call(this),a;var b=a<<16>>16,c=this.Ia(this.ha)<<16>>16,d=this.Ia(this.ha+2)<<16>>16;this.A-=this.Tk;if(b<c||b>d)I(this,this.Gh-this.ua.Ua),ld.call(this,5,null,0);this.$|=2;return a}
function we(a,b){this.A-=10+(0>this.ha?0:1);if((a&3)<(b&3))return a=a&-4|b&3,gd(this),a;bd(this);return a}function xe(a,b){this.A-=14+(0>this.ha?0:2);if(0<=this.Pb.load(b,!0)&&this.Pb.Lc>=(this.ua.oa&3)&&this.Pb.Lc>=(b&3))return gd(this),this.Pb.ab&65280;bd(this);return a}function ye(a,b){this.A-=14+(0>this.ha?0:2);if(b&65528&&0<=this.Pb.load(b,!0)&&(3072==(this.Pb.ab&3072)||this.Pb.Lc>=(this.ua.oa&3))&&this.Pb.Lc>=(b&3))return gd(this),this.Pb.Mc;bd(this);return a}
function ze(a,b){if(0>this.ha){switch(this.Ug&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.Fj}else this.Ka=this.ha,this.Q(a),this.A-=this.Ej;return b}
function Ae(a,b){if(0>this.ha){switch(this.Ug&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.Y=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.Fj}else this.Ka=this.ha,this.R(a),this.A-=this.Ej;return b}function ld(a,b,c){Mc(this,a)&&(K(this,Bc(this)),this.ya&=this.Ic.vh,K(this,this.ua.oa),K(this,this.qa),null!=b&&K(this,b),yc(this,this.Ic.Jj,this.Ic.oa),this.A-=this.nl+c)}
function ge(){I(this,this.Gh-this.ua.Ua);ld.call(this,0,null,2)}function Yb(a,b){this.X&&E(this.X,this.X.om)&&this.X.message("Fault 0x"+r(a)+(null!=b?" (0x"+u(b)+")":"")+" on opcode 0x"+r(bb(this.na,this.Ba))+" at "+da(this.qa,this.ua.oa));80186<=this.Fa&&(I(this,this.Gh-this.ua.Ua),ld.call(this,a,b,0))}function ac(){Yb.call(this,6);this.Ab()}function M(){I(this,this.Gh-this.ua.Ua);Sa(this,"Undefined opcode 0x"+r(bb(this.na,this.Ba))+" at "+da(this.qa,this.ua.oa));this.Ab()}
var ae=[od,pd,qd,rd,sd,td,ud,vd],be=[wd,xd,yd,zd,Ad,Bd,Cd,Dd],ce=[function(a,b){this.A-=0>this.Ka?this.ic:this.Kl;return b},$d,$d,$d,$d,$d,$d,$d],de=[function(a,b){this.A-=0>this.Ka?this.Cl:this.Al;return b},L,L,L,L,L,L,L],ee=[Fd,Hd,Jd,Ld,Nd,Pd,L,Rd],fe=[Gd,Id,Kd,Md,Od,Qd,L,Sd],he=[function(a,b){b=this.ea();this.Z=this.ja=this.ma=a&b;this.da=256;this.A-=0>this.ha?this.Gj:this.Fj;this.$|=2;return a},L,function(a){this.A-=0>this.ha?this.pg:this.og;return a^255},function(a,b){b=0;this.ma=a^b;this.da=
256;this.A-=0>this.ha?this.pg:this.og;return(this.Z=this.ja=b-a)&255},function(a){this.G=this.Db=(this.Z=(this.G&255)*a)&65535;this.ma=this.ja=this.Z;this.da=256;this.G&65280?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?this.Gl:this.Fl;this.$|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.Db=b&65535;this.Z=this.ma=this.ja=b;this.da=256;127<b||-128>b?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?this.ll:this.kl;this.$|=2;return a},function(a){if(!a)return ge.call(this),
a;var b=this.G/a;if(255<b)return ge.call(this),a;this.Db=this.G=b&255|(this.G%a&255)<<8;this.ja=this.ma=this.Z=b|256;this.da=256;this.A-=0>this.ha?this.dl:this.cl;this.$|=2;return a},function(a){if(!a)return ge.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return ge.call(this),a;this.Db=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.ja=this.ma=this.Z=b|256;this.da=256;this.A-=0>this.ha?this.hl:this.gl;this.$|=2;return a}],ie=[function(a,b){b=this.K();this.Z=this.ja=
this.ma=a&b;this.da=65536;this.A-=0>this.ha?this.Gj:this.Fj;this.$|=2;return a},L,function(a){this.A-=0>this.ha?this.pg:this.og;return a^65535},function(a,b){b=0;this.ma=a^b;this.da=65536;this.A-=0>this.ha?this.pg:this.og;return(this.Z=this.ja=b-a)&65535},function(a){this.Db=this.G=(this.Z=this.G*a)&65535;this.vg=this.J=this.Z>>16&65535;this.ma=this.ja=this.Z;this.da=65536;this.J?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?this.Il:this.Hl;this.$|=2;return a},function(a){var b=(this.G<<
16>>16)*(a<<16>>16);this.G=this.Db=b&65535;this.J=this.vg=b>>16&65535;this.Z=this.ma=this.ja=b;this.da=65536;32767<b||-32768>b?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?this.nl:this.ml;this.$|=2;return a},function(a,b){if(!a)return ge.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return ge.call(this),a;this.Db=this.G=c&65535;this.vg=this.J=b%a&65535;this.ja=this.ma=this.Z=c|65536;this.da=65536;this.A-=0>this.ha?this.fl:this.el;this.$|=2;return a},function(a,
b){if(!a)return ge.call(this),a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return ge.call(this),a;this.Db=this.G=d&65535;this.vg=this.J=b%c&65535;this.ja=this.ma=this.Z=d|65536;this.da=65536;this.A-=0>this.ha?this.jl:this.il;this.$|=2;return a}],rc=[function(a){this.ma=a;a=(this.ja=a+1)&255;this.Z=a|(this.Z&this.da?1:0)<<8;this.da=256;this.A-=0>this.ha?this.ng:this.mg;return a},function(a){this.ma=a;a=(this.ja=a-1)&255;this.Z=a|(this.Z&this.da?1:0)<<8;this.da=
256;this.A-=0>this.ha?this.ng:this.mg;return a},L,L,L,L,L,L],tc=[function(a){this.ma=a;a=(this.ja=a+1)&65535;this.Z=a|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=0>this.ha?this.ng:this.mg;return a},function(a){this.ma=a;a=(this.ja=a-1)&65535;this.Z=a|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=0>this.ha?this.ng:this.mg;return a},function(a){K(this,this.qa);I(this,a);this.A-=0>this.ha?this.bl:this.al;this.$|=2;return a},function(a){if(0>this.ha)return L.call(this,a);K(this,this.ua.oa);K(this,
this.qa);yc(this,a,this.Ia(this.ha+2));this.A-=this.Zk;this.$|=2;return a},function(a){I(this,a);this.A-=0>this.ha?this.wl:this.vl;this.$|=2;return a},function(a){if(0>this.ha)return L.call(this,a);yc(this,a,this.Ia(this.ha+2));this.A-=this.tl;this.$|=2;return a},function(a){var b=a;this.$&512&&(a=a-2&65535,80286>this.Fa&&(b=a));K(this,b);this.A-=0>this.ha?this.pc:this.Ml;this.$|=2;return a},$d],je=[Fd,Hd,Jd,Ld,Nd,Pd,L,Rd],ke=[Gd,Id,Kd,Md,Od,Qd,L,Sd];
function le(a,b){this.A-=0>this.Ka?0>this.ha?this.El:this.Dl:this.Bl;return b}function me(){return le.call(this,0,this.Db)}function ne(a,b){this.Z=this.ja=this.ma=a&b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Hj:this.rg:this.rg;this.$|=2;return a}function oe(a,b){this.Z=this.ja=this.ma=a&b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Hj:this.rg:this.rg;this.$|=2;return a}
function pe(a,b){var c=(b<<16>>16)*(this.ea()<<24>>24);this.Z=this.ma=this.ja=c;this.da=256;32767<c||-32768>c?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?21:24;return c&65535}function qe(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.Z=this.ma=this.ja=c;this.da=65536;32767<c||-32768>c?(ed(this),id(this)):($c(this),dd(this));this.A-=0>this.ha?21:24;return c&65535}function re(a){return a}function se(a){if(0>this.ha)return M.call(this),a;this.A-=this.xl;return this.ha}
function te(a,b){if(0>this.ha)return M.call(this),a;Oc(this,this.Ia(this.ha+2));this.A-=this.ij;return b}function ue(a,b){if(0>this.ha)return M.call(this),a;Tc(this,this.Ia(this.ha+2));this.A-=this.ij;return b}function ve(a){if(0>this.ha)return ac.call(this),a;var b=a<<16>>16,c=this.Ia(this.ha)<<16>>16,d=this.Ia(this.ha+2)<<16>>16;this.A-=this.Vk;if(b<c||b>d)I(this,this.Jh-this.ua.Ua),ld.call(this,5,null,0);this.$|=2;return a}
function we(a,b){this.A-=10+(0>this.ha?0:1);if((a&3)<(b&3))return a=a&-4|b&3,gd(this),a;bd(this);return a}function xe(a,b){this.A-=14+(0>this.ha?0:2);if(0<=this.Qb.load(b,!0)&&this.Qb.Mc>=(this.ua.oa&3)&&this.Qb.Mc>=(b&3))return gd(this),this.Qb.ab&65280;bd(this);return a}function ye(a,b){this.A-=14+(0>this.ha?0:2);if(b&65528&&0<=this.Qb.load(b,!0)&&(3072==(this.Qb.ab&3072)||this.Qb.Mc>=(this.ua.oa&3))&&this.Qb.Mc>=(b&3))return gd(this),this.Qb.Nc;bd(this);return a}
function ze(a,b){if(0>this.ha){switch(this.Wg&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.Jj}else this.Ka=this.ha,this.Q(a),this.A-=this.Ij;return b}
function Ae(a,b){if(0>this.ha){switch(this.Wg&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.Y=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.Jj}else this.Ka=this.ha,this.R(a),this.A-=this.Ij;return b}function ld(a,b,c){Mc(this,a)&&(K(this,Bc(this)),this.xa&=this.Jc.xh,K(this,this.ua.oa),K(this,this.qa),null!=b&&K(this,b),yc(this,this.Jc.Nj,this.Jc.oa),this.A-=this.pl+c)}
function ge(){I(this,this.Jh-this.ua.Ua);ld.call(this,0,null,2)}function Yb(a,b){this.X&&D(this.X,this.X.qm)&&this.X.message("Fault 0x"+r(a)+(null!=b?" (0x"+u(b)+")":"")+" on opcode 0x"+r(bb(this.na,this.Ba))+" at "+da(this.qa,this.ua.oa));80186<=this.Fa&&(I(this,this.Jh-this.ua.Ua),ld.call(this,a,b,0))}function ac(){Yb.call(this,6);this.Ab()}function M(){I(this,this.Jh-this.ua.Ua);Sa(this,"Undefined opcode 0x"+r(bb(this.na,this.Ba))+" at "+da(this.qa,this.ua.oa));this.Ab()}
function Be(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}function Ce(a){a=a.call(this,this.G&255,this.I&255);this.G=this.G&-256|a}function De(a){a=a.call(this,this.G&255,this.J&255);this.G=this.G&-256|a}function Ee(a){a=a.call(this,this.G&255,this.B&255);this.G=this.G&-256|a}function Fe(a){a=a.call(this,this.G&255,this.G>>8);this.G=this.G&-256|a}function Ge(a){a=a.call(this,this.G&255,this.I>>8);this.G=this.G&-256|a}
function He(a){a=a.call(this,this.G&255,this.J>>8);this.G=this.G&-256|a}function Ie(a){a=a.call(this,this.G&255,this.B>>8);this.G=this.G&-256|a}function Je(a){a=a.call(this,this.I&255,this.G&255);this.I=this.I&-256|a}function Ke(a){a=a.call(this,this.I&255,this.I&255);this.I=this.I&-256|a}function Le(a){a=a.call(this,this.I&255,this.J&255);this.I=this.I&-256|a}function Me(a){a=a.call(this,this.I&255,this.B&255);this.I=this.I&-256|a}
function Ne(a){a=a.call(this,this.I&255,this.G>>8);this.I=this.I&-256|a}function Oe(a){a=a.call(this,this.I&255,this.I>>8);this.I=this.I&-256|a}function Pe(a){a=a.call(this,this.I&255,this.J>>8);this.I=this.I&-256|a}function Qe(a){a=a.call(this,this.I&255,this.B>>8);this.I=this.I&-256|a}function Re(a){a=a.call(this,this.J&255,this.G&255);this.J=this.J&-256|a}function Se(a){a=a.call(this,this.J&255,this.I&255);this.J=this.J&-256|a}
@ -372,275 +372,276 @@ function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.B=a
b.call(this))},function(a,b){this.B=a[6].call(this,this.B,b.call(this))},function(a,b){this.$|=512;this.Y=a[6].call(this,this.Y,b.call(this))},function(a,b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.D=a[6].call(this,this.D,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a,
b){this.B=a[7].call(this,this.B,b.call(this))},function(a,b){this.Y=a[7].call(this,this.Y,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))},function(a,b){this.D=a[7].call(this,this.D,b.call(this))}],dh=[function(){var a=this.ea();16>(a&56)&&(this.$|=1);bh[a].call(this,Ic,Wd)},function(){var a=this.ea();a&16||(this.$|=1);bh[a].call(this,ch,Wd)},function(){N[this.ea()].call(this,xe)},function(){N[this.ea()].call(this,ye)},
M,M,M,M,M,M,M,ac,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,
M,M],Jc=[function(){this.A-=2+(0>this.ha?0:1);return this.Ld.oa},function(){this.A-=2+(0>this.ha?0:1);return this.Ag.oa},function(a){this.$|=2;this.Ld.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.$|=2;this.Ag.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.$|=2;this.A-=14+(0>this.ha?0:2);if(0<=this.Pb.load(a,!0)&&2048!=(this.Pb.ab&2560)&&(3072==(this.Pb.ab&3072)||this.Pb.Lc>=(this.ua.oa&3)&&this.Pb.Lc>=(a&3)))return gd(this),a;bd(this);return a},function(a){this.$|=
2;this.A-=14+(0>this.ha?0:2);if(0<=this.Pb.load(a,!0)&&512==(this.Pb.ab&2560)&&this.Pb.Lc>=(this.ua.oa&3)&&this.Pb.Lc>=(a&3))return gd(this),a;bd(this);return a},L,L],Kc=[sc,sc,sc,sc,sc,sc,L,L],Ic=Kc,ch=[function(a){0>this.ha?ac.call(this):(this.Nd(this.ha+2,this.Rc),this.bd(this.ha+4,this.Rc>>16),a=this.Ye-this.Rc,this.A-=11);return a},function(a){0>this.ha?ac.call(this):(this.Nd(this.ha+2,this.dd),this.bd(this.ha+4,this.dd>>16),a=this.te-this.dd,this.A-=12);return a},function(a){0>this.ha?ac.call(this):
(this.Rc=this.Ia(this.ha+2)|this.ub(this.ha+4)<<16,this.Ye=this.Rc+a,this.$|=2,this.A-=11);return a},function(a){0>this.ha?ac.call(this):(this.dd=this.Ia(this.ha+2)|this.ub(this.ha+4)<<16,this.te=this.dd+a,this.$|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ha?0:1);return this.ad},L,function(a){this.ad=this.ad&65520|a&-65521;this.A-=3+(0>this.ha?0:3);this.ad&1&&Ac(this,!0);this.$|=2;return a},L];function uc(){dh[this.ea()].call(this)}function wc(){K(this,this.Y);this.A-=this.oc}
function bc(){var a=this.Y;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.Jl}function cc(){this.D=this.Ja();this.F=this.Ja();this.H=this.Ja();this.Y+=2;this.B=this.Ja();this.J=this.Ja();this.I=this.Ja();this.G=this.Ja();this.A-=this.Hl}function dc(){N[this.ea()].call(this,ve)}function vc(){Zg[this.ea()].call(this,we)}function ec(){K(this,this.K());this.A-=this.oc}function fc(){N[this.ea()].call(this,qe)}
function gc(){K(this,this.ea());this.A-=this.oc}function hc(){N[this.ea()].call(this,pe)}function ic(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=jb(this.na,this.J,this.Ba-b-1);this.bd(this.Za.Yb(this.D,0),d);this.D=this.D+(this.ya&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}}
function jc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.Ba-b-1,d=jb(this.na,this.J,d)|jb(this.na,this.J,d)<<8;this.Nd(this.Za.Yb(this.D,1),d);this.D=this.D+(this.ya&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}}
function kc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.ub(this.Eb.Vc(this.F,0));this.F=this.F+(this.ya&1024?-1:1)&65535;this.A-=c;this.I-=b;nb(this.na,this.J,d,this.Ba-b-1);a&&(J(this,-2),this.$|=256)}}
function lc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.Ia(this.Eb.Vc(this.F,1));this.F=this.F+(this.ya&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Ba-b-1;nb(this.na,this.J,d&255,b);nb(this.na,this.J,d>>8,b);a&&(J(this,-2),this.$|=256)}}function eh(){var a=this.L();Zc(this)?(I(this,this.qa+a),this.A-=this.Ub):this.A-=this.Vb}function fh(){var a=this.L();Zc(this)?this.A-=this.Vb:(I(this,this.qa+a),this.A-=this.Ub)}
M,M],Jc=[function(){this.A-=2+(0>this.ha?0:1);return this.Ld.oa},function(){this.A-=2+(0>this.ha?0:1);return this.Bg.oa},function(a){this.$|=2;this.Ld.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.$|=2;this.Bg.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.$|=2;this.A-=14+(0>this.ha?0:2);if(0<=this.Qb.load(a,!0)&&2048!=(this.Qb.ab&2560)&&(3072==(this.Qb.ab&3072)||this.Qb.Mc>=(this.ua.oa&3)&&this.Qb.Mc>=(a&3)))return gd(this),a;bd(this);return a},function(a){this.$|=
2;this.A-=14+(0>this.ha?0:2);if(0<=this.Qb.load(a,!0)&&512==(this.Qb.ab&2560)&&this.Qb.Mc>=(this.ua.oa&3)&&this.Qb.Mc>=(a&3))return gd(this),a;bd(this);return a},L,L],Kc=[sc,sc,sc,sc,sc,sc,L,L],Ic=Kc,ch=[function(a){0>this.ha?ac.call(this):(a=this.Ze-this.Sc,this.bd(this.ha+2,this.Sc),this.bd(this.ha+4,65280|this.Sc>>16),this.A-=11);return a},function(a){0>this.ha?ac.call(this):(a=this.ue-this.dd,this.bd(this.ha+2,this.dd),this.bd(this.ha+4,65280|this.dd>>16),this.A-=12);return a},function(a){0>this.ha?
ac.call(this):(this.Sc=this.Ia(this.ha+2)|this.ub(this.ha+4)<<16,this.Ze=this.Sc+a,this.$|=2,this.A-=11);return a},function(a){0>this.ha?ac.call(this):(this.dd=this.Ia(this.ha+2)|this.ub(this.ha+4)<<16,this.ue=this.dd+a,this.$|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ha?0:1);return this.ad},L,function(a){this.ad=this.ad&65520|a&-65521;this.A-=3+(0>this.ha?0:3);this.ad&1&&Ac(this,!0);this.$|=2;return a},L];function uc(){dh[this.ea()].call(this)}
function wc(){K(this,this.Y);this.A-=this.pc}function bc(){var a=this.Y;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.Ll}function cc(){this.D=this.Ja();this.F=this.Ja();this.H=this.Ja();this.Y+=2;this.B=this.Ja();this.J=this.Ja();this.I=this.Ja();this.G=this.Ja();this.A-=this.Jl}function dc(){N[this.ea()].call(this,ve)}function vc(){Zg[this.ea()].call(this,we)}function ec(){K(this,this.K());this.A-=this.pc}
function fc(){N[this.ea()].call(this,qe)}function gc(){K(this,this.ea());this.A-=this.pc}function hc(){N[this.ea()].call(this,pe)}function ic(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=jb(this.na,this.J,this.Ba-b-1);this.Md(this.Za.Yb(this.D,0),d);this.D=this.D+(this.xa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}}
function jc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.Ba-b-1,d=jb(this.na,this.J,d)|jb(this.na,this.J,d)<<8;this.bd(this.Za.Yb(this.D,1),d);this.D=this.D+(this.xa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}}
function kc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.ub(this.Eb.Wc(this.F,0));this.F=this.F+(this.xa&1024?-1:1)&65535;this.A-=c;this.I-=b;nb(this.na,this.J,d,this.Ba-b-1);a&&(J(this,-2),this.$|=256)}}
function lc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.Ia(this.Eb.Wc(this.F,1));this.F=this.F+(this.xa&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Ba-b-1;nb(this.na,this.J,d&255,b);nb(this.na,this.J,d>>8,b);a&&(J(this,-2),this.$|=256)}}function eh(){var a=this.L();Zc(this)?(I(this,this.qa+a),this.A-=this.Ub):this.A-=this.Vb}function fh(){var a=this.L();Zc(this)?this.A-=this.Vb:(I(this,this.qa+a),this.A-=this.Ub)}
function gh(){var a=this.L();Uc(this)?(I(this,this.qa+a),this.A-=this.Ub):this.A-=this.Vb}function hh(){var a=this.L();Uc(this)?this.A-=this.Vb:(I(this,this.qa+a),this.A-=this.Ub)}function ih(){var a=this.L();Xc(this)?(I(this,this.qa+a),this.A-=this.Ub):this.A-=this.Vb}function jh(){var a=this.L();Xc(this)?this.A-=this.Vb:(I(this,this.qa+a),this.A-=this.Ub)}function kh(){var a=this.L();Uc(this)||Xc(this)?(I(this,this.qa+a),this.A-=this.Ub):this.A-=this.Vb}
function lh(){var a=this.L();Uc(this)||Xc(this)?this.A-=this.Vb:(I(this,this.qa+a),this.A-=this.Ub)}function mh(){var a=this.L();Yc(this)?(I(this,this.qa+a),this.A-=this.Ub):this.A-=this.Vb}function nh(){var a=this.L();Yc(this)?this.A-=this.Vb:(I(this,this.qa+a),this.A-=this.Ub)}function oh(){var a=this.L();Vc(this)?(I(this,this.qa+a),this.A-=this.Ub):this.A-=this.Vb}function ph(){var a=this.L();Vc(this)?this.A-=this.Vb:(I(this,this.qa+a),this.A-=this.Ub)}
function qh(){var a=this.L();!Yc(this)!=!Zc(this)?(I(this,this.qa+a),this.A-=this.Ub):this.A-=this.Vb}function rh(){var a=this.L();!Yc(this)==!Zc(this)?(I(this,this.qa+a),this.A-=this.Ub):this.A-=this.Vb}function sh(){var a=this.L();Xc(this)||!Yc(this)!=!Zc(this)?(I(this,this.qa+a),this.A-=this.Ub):this.A-=this.Vb}function th(){var a=this.L();Xc(this)||!Yc(this)!=!Zc(this)?this.A-=this.Vb:(I(this,this.qa+a),this.A-=this.Ub)}
function uh(){ah[this.ea()].call(this,ae,this.ea);this.A-=0>this.Ka?1:this.Dh}function mc(){ah[this.ea()].call(this,je,Vd)}function nc(){bh[this.ea()].call(this,ke,Vd)}function vh(){var a=this.K();I(this,this.Ja());this.Y=this.Y+a&65535;this.A-=this.Ol}function wh(){I(this,this.Ja());this.A-=this.Ll}
function oc(){var a=this.K(),b=this.ea()&31;this.A-=11;K(this,this.H);var c=this.Y;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.H=this.H-2&65535,K(this,this.Ia(this.wb.Vc(this.H,1)));K(this,c)}this.H=c;this.Y=this.Y-a&65535}function pc(){this.Y=this.H;this.H=this.Ja();this.A-=5}function xh(){var a=this.K();yc(this,this.Ja(),this.Ja());this.Y=this.Y+a&65535;this.ah&&Hc(this,this.Ba);this.A-=this.Nl}function yh(){yc(this,this.Ja(),this.Ja());this.A-=this.Ml}
function zh(){N[this.ea()].call(this,re);this.A-=8}function Ah(){this.$|=36;this.A-=this.Ob}function qc(){M.call(this)}
var $b=[function(){var a=this.ea();Yg[a].call(this,od)},function(){Zg[this.ea()].call(this,wd)},function(){$g[this.ea()].call(this,od)},function(){N[this.ea()].call(this,wd)},function(){this.G=this.G&-256|od.call(this,this.G&255,this.ea());this.A--},function(){this.G=wd.call(this,this.G,this.K());this.A--},function(){K(this,this.Za.oa);this.A-=this.pg},function(){Tc(this,this.Ja());this.A-=this.gc},function(){Yg[this.ea()].call(this,pd)},function(){Zg[this.ea()].call(this,xd)},function(){$g[this.ea()].call(this,
pd)},function(){N[this.ea()].call(this,xd)},function(){this.G=this.G&-256|pd.call(this,this.G&255,this.ea());this.A--},function(){this.G=xd.call(this,this.G,this.K());this.A--},function(){K(this,this.ua.oa);this.A-=this.pg},function(){Nc(this,this.Ja());this.A-=this.gc},function(){Yg[this.ea()].call(this,qd)},function(){Zg[this.ea()].call(this,yd)},function(){$g[this.ea()].call(this,qd)},function(){N[this.ea()].call(this,yd)},function(){this.G=this.G&-256|qd.call(this,this.G&255,this.ea());this.A--},
function(){this.G=yd.call(this,this.G,this.K());this.A--},function(){K(this,this.wb.oa);this.A-=this.pg},function(){Pc(this,this.Ja());this.A-=this.gc},function(){Yg[this.ea()].call(this,rd)},function(){Zg[this.ea()].call(this,zd)},function(){$g[this.ea()].call(this,rd)},function(){N[this.ea()].call(this,zd)},function(){this.G=this.G&-256|rd.call(this,this.G&255,this.ea());this.A--},function(){this.G=zd.call(this,this.G,this.K());this.A--},function(){K(this,this.Eb.oa);this.A-=this.pg},function(){Oc(this,
this.Ja());this.A-=this.gc},function(){Yg[this.ea()].call(this,sd)},function(){Zg[this.ea()].call(this,Ad)},function(){$g[this.ea()].call(this,sd)},function(){N[this.ea()].call(this,Ad)},function(){this.G=this.G&-256|sd.call(this,this.G&255,this.ea());this.A--},function(){this.G=Ad.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.Za;this.A-=this.Ob},function(){var a=this.G&255,b=Wc(this),c=this.Z&this.da;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.G=this.G&-256|
(this.Z=this.ja=a&255);this.da=65536;c&&(this.Z|=this.da);b?fd(this):ad(this);this.A-=this.Ie},function(){Yg[this.ea()].call(this,td)},function(){Zg[this.ea()].call(this,Bd)},function(){$g[this.ea()].call(this,td)},function(){N[this.ea()].call(this,Bd)},function(){this.G=this.G&-256|td.call(this,this.G&255,this.ea());this.A--},function(){this.G=Bd.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.ua;this.A-=this.Ob},function(){var a=this.G&255,b=Wc(this),c=this.Z&this.da;
if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.G=this.G&-256|(this.Z=this.ja=a&255);this.da=65536;c&&(this.Z|=this.da);b?fd(this):ad(this);this.A-=this.Ie},function(){Yg[this.ea()].call(this,ud)},function(){Zg[this.ea()].call(this,Cd)},function(){$g[this.ea()].call(this,ud)},function(){N[this.ea()].call(this,Cd)},function(){this.G=this.G&-256|ud.call(this,this.G&255,this.ea());this.A--},function(){this.G=Cd.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.wb;this.A-=
this.Ob},function(){var a=this.G&255,b=this.G>>8,c,d=Wc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Z=a);this.da=65536;c&&(this.Z|=this.da);d?fd(this):ad(this);this.A-=this.Ie},function(){Yg[this.ea()].call(this,vd)},function(){Zg[this.ea()].call(this,Dd)},function(){$g[this.ea()].call(this,vd)},function(){N[this.ea()].call(this,Dd)},function(){this.G=this.G&-256|vd.call(this,this.G&255,this.ea());this.A--},function(){this.G=Dd.call(this,this.G,this.K());this.A--},function(){this.$|=
20;this.C=this.M=this.Eb;this.A-=this.Ob},function(){var a=this.G&255,b=this.G>>8,c,d=Wc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Z=a);this.da=65536;c&&(this.Z|=this.da);d?fd(this):ad(this);this.A-=this.Ie},function(){this.ma=this.G;this.G=(this.ja=this.G+1)&65535;this.Z=this.G|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.I;this.I=(this.ja=this.I+1)&65535;this.Z=this.I|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.J;
function uh(){ah[this.ea()].call(this,ae,this.ea);this.A-=0>this.Ka?1:this.Gh}function mc(){ah[this.ea()].call(this,je,Vd)}function nc(){bh[this.ea()].call(this,ke,Vd)}function vh(){var a=this.K();I(this,this.Ja());this.Y=this.Y+a&65535;this.A-=this.Ql}function wh(){I(this,this.Ja());this.A-=this.Nl}
function oc(){var a=this.K(),b=this.ea()&31;this.A-=11;K(this,this.H);var c=this.Y;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.H=this.H-2&65535,K(this,this.Ia(this.wb.Wc(this.H,1)));K(this,c)}this.H=c;this.Y=this.Y-a&65535}function pc(){this.Y=this.H;this.H=this.Ja();this.A-=5}function xh(){var a=this.K();yc(this,this.Ja(),this.Ja());this.Y=this.Y+a&65535;this.dh&&Hc(this,this.Ba);this.A-=this.Pl}function yh(){yc(this,this.Ja(),this.Ja());this.A-=this.Ol}
function zh(){N[this.ea()].call(this,re);this.A-=8}function Ah(){this.$|=36;this.A-=this.Pb}function qc(){M.call(this)}
var $b=[function(){var a=this.ea();Yg[a].call(this,od)},function(){Zg[this.ea()].call(this,wd)},function(){$g[this.ea()].call(this,od)},function(){N[this.ea()].call(this,wd)},function(){this.G=this.G&-256|od.call(this,this.G&255,this.ea());this.A--},function(){this.G=wd.call(this,this.G,this.K());this.A--},function(){K(this,this.Za.oa);this.A-=this.qg},function(){Tc(this,this.Ja());this.A-=this.ic},function(){Yg[this.ea()].call(this,pd)},function(){Zg[this.ea()].call(this,xd)},function(){$g[this.ea()].call(this,
pd)},function(){N[this.ea()].call(this,xd)},function(){this.G=this.G&-256|pd.call(this,this.G&255,this.ea());this.A--},function(){this.G=xd.call(this,this.G,this.K());this.A--},function(){K(this,this.ua.oa);this.A-=this.qg},function(){Nc(this,this.Ja());this.A-=this.ic},function(){Yg[this.ea()].call(this,qd)},function(){Zg[this.ea()].call(this,yd)},function(){$g[this.ea()].call(this,qd)},function(){N[this.ea()].call(this,yd)},function(){this.G=this.G&-256|qd.call(this,this.G&255,this.ea());this.A--},
function(){this.G=yd.call(this,this.G,this.K());this.A--},function(){K(this,this.wb.oa);this.A-=this.qg},function(){Pc(this,this.Ja());this.A-=this.ic},function(){Yg[this.ea()].call(this,rd)},function(){Zg[this.ea()].call(this,zd)},function(){$g[this.ea()].call(this,rd)},function(){N[this.ea()].call(this,zd)},function(){this.G=this.G&-256|rd.call(this,this.G&255,this.ea());this.A--},function(){this.G=zd.call(this,this.G,this.K());this.A--},function(){K(this,this.Eb.oa);this.A-=this.qg},function(){Oc(this,
this.Ja());this.A-=this.ic},function(){Yg[this.ea()].call(this,sd)},function(){Zg[this.ea()].call(this,Ad)},function(){$g[this.ea()].call(this,sd)},function(){N[this.ea()].call(this,Ad)},function(){this.G=this.G&-256|sd.call(this,this.G&255,this.ea());this.A--},function(){this.G=Ad.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.Za;this.A-=this.Pb},function(){var a=this.G&255,b=Wc(this),c=this.Z&this.da;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.G=this.G&-256|
(this.Z=this.ja=a&255);this.da=65536;c&&(this.Z|=this.da);b?fd(this):ad(this);this.A-=this.Je},function(){Yg[this.ea()].call(this,td)},function(){Zg[this.ea()].call(this,Bd)},function(){$g[this.ea()].call(this,td)},function(){N[this.ea()].call(this,Bd)},function(){this.G=this.G&-256|td.call(this,this.G&255,this.ea());this.A--},function(){this.G=Bd.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.ua;this.A-=this.Pb},function(){var a=this.G&255,b=Wc(this),c=this.Z&this.da;
if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.G=this.G&-256|(this.Z=this.ja=a&255);this.da=65536;c&&(this.Z|=this.da);b?fd(this):ad(this);this.A-=this.Je},function(){Yg[this.ea()].call(this,ud)},function(){Zg[this.ea()].call(this,Cd)},function(){$g[this.ea()].call(this,ud)},function(){N[this.ea()].call(this,Cd)},function(){this.G=this.G&-256|ud.call(this,this.G&255,this.ea());this.A--},function(){this.G=Cd.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.wb;this.A-=
this.Pb},function(){var a=this.G&255,b=this.G>>8,c,d=Wc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Z=a);this.da=65536;c&&(this.Z|=this.da);d?fd(this):ad(this);this.A-=this.Je},function(){Yg[this.ea()].call(this,vd)},function(){Zg[this.ea()].call(this,Dd)},function(){$g[this.ea()].call(this,vd)},function(){N[this.ea()].call(this,Dd)},function(){this.G=this.G&-256|vd.call(this,this.G&255,this.ea());this.A--},function(){this.G=Dd.call(this,this.G,this.K());this.A--},function(){this.$|=
20;this.C=this.M=this.Eb;this.A-=this.Pb},function(){var a=this.G&255,b=this.G>>8,c,d=Wc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Z=a);this.da=65536;c&&(this.Z|=this.da);d?fd(this):ad(this);this.A-=this.Je},function(){this.ma=this.G;this.G=(this.ja=this.G+1)&65535;this.Z=this.G|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.I;this.I=(this.ja=this.I+1)&65535;this.Z=this.I|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.J;
this.J=(this.ja=this.J+1)&65535;this.Z=this.J|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.B;this.B=(this.ja=this.B+1)&65535;this.Z=this.B|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.Y;this.Y=(this.ja=this.Y+1)&65535;this.Z=this.Y|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.H;this.H=(this.ja=this.H+1)&65535;this.Z=this.H|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.F;this.F=(this.ja=
this.F+1)&65535;this.Z=this.F|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.D;this.D=(this.ja=this.D+1)&65535;this.Z=this.D|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.G;this.G=(this.ja=this.G-1)&65535;this.Z=this.G|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.I;this.I=(this.ja=this.I-1)&65535;this.Z=this.I|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.J;this.J=(this.ja=this.J-1)&65535;
this.Z=this.J|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.B;this.B=(this.ja=this.B-1)&65535;this.Z=this.B|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.Y;this.Y=(this.ja=this.Y-1)&65535;this.Z=this.Y|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.H;this.H=(this.ja=this.H-1)&65535;this.Z=this.H|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.F;this.F=(this.ja=this.F-1)&65535;this.Z=this.F|
(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.D;this.D=(this.ja=this.D-1)&65535;this.Z=this.D|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){K(this,this.G);this.A-=this.oc},function(){K(this,this.I);this.A-=this.oc},function(){K(this,this.J);this.A-=this.oc},function(){K(this,this.B);this.A-=this.oc},function(){K(this,this.Y-2&65535);this.A-=this.oc},function(){K(this,this.H);this.A-=this.oc},function(){K(this,this.F);this.A-=this.oc},function(){K(this,this.D);
this.A-=this.oc},function(){this.G=this.Ja();this.A-=this.gc},function(){this.I=this.Ja();this.A-=this.gc},function(){this.J=this.Ja();this.A-=this.gc},function(){this.B=this.Ja();this.A-=this.gc},function(){this.Y=this.Ja();this.A-=this.gc},function(){this.H=this.Ja();this.A-=this.gc},function(){this.F=this.Ja();this.A-=this.gc},function(){this.D=this.Ja();this.A-=this.gc},eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,rh,sh,th,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,rh,sh,th,uh,function(){bh[this.ea()].call(this,
be,this.K);this.A-=0>this.Ka?1:this.Dh},uh,function(){bh[this.ea()].call(this,be,this.L);this.A-=0>this.Ka?1:this.Dh},function(){Yg[this.ea()].call(this,ne)},function(){Zg[this.ea()].call(this,oe)},function(){$g[this.Ug=this.ea()].call(this,ze)},function(){N[this.Ug=this.ea()].call(this,Ae)},function(){this.$|=1;Yg[this.ea()].call(this,le)},function(){this.$|=1;Zg[this.ea()].call(this,le)},function(){$g[this.ea()].call(this,le)},function(){N[this.ea()].call(this,le)},function(){var a=this.ea();switch((a&
56)>>3){case 0:this.Db=this.Za.oa;break;case 1:this.Db=this.ua.oa;break;case 2:this.Db=this.wb.oa;break;case 3:this.Db=this.Eb.oa;break;default:M.call(this);return}this.$|=1;Zg[a].call(this,me)},function(){this.$|=1;this.C=this.M=this.gm;N[this.ea()].call(this,se)},function(){var a,b=this.ea(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Fa){ac.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.Y;break;case 5:a=this.H;
(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.D;this.D=(this.ja=this.D-1)&65535;this.Z=this.D|(this.Z&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){K(this,this.G);this.A-=this.pc},function(){K(this,this.I);this.A-=this.pc},function(){K(this,this.J);this.A-=this.pc},function(){K(this,this.B);this.A-=this.pc},function(){K(this,this.Y-2&65535);this.A-=this.pc},function(){K(this,this.H);this.A-=this.pc},function(){K(this,this.F);this.A-=this.pc},function(){K(this,this.D);
this.A-=this.pc},function(){this.G=this.Ja();this.A-=this.ic},function(){this.I=this.Ja();this.A-=this.ic},function(){this.J=this.Ja();this.A-=this.ic},function(){this.B=this.Ja();this.A-=this.ic},function(){this.Y=this.Ja();this.A-=this.ic},function(){this.H=this.Ja();this.A-=this.ic},function(){this.F=this.Ja();this.A-=this.ic},function(){this.D=this.Ja();this.A-=this.ic},eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,rh,sh,th,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,rh,sh,th,uh,function(){bh[this.ea()].call(this,
be,this.K);this.A-=0>this.Ka?1:this.Gh},uh,function(){bh[this.ea()].call(this,be,this.L);this.A-=0>this.Ka?1:this.Gh},function(){Yg[this.ea()].call(this,ne)},function(){Zg[this.ea()].call(this,oe)},function(){$g[this.Wg=this.ea()].call(this,ze)},function(){N[this.Wg=this.ea()].call(this,Ae)},function(){this.$|=1;Yg[this.ea()].call(this,le)},function(){this.$|=1;Zg[this.ea()].call(this,le)},function(){$g[this.ea()].call(this,le)},function(){N[this.ea()].call(this,le)},function(){var a=this.ea();switch((a&
56)>>3){case 0:this.Db=this.Za.oa;break;case 1:this.Db=this.ua.oa;break;case 2:this.Db=this.wb.oa;break;case 3:this.Db=this.Eb.oa;break;default:M.call(this);return}this.$|=1;Zg[a].call(this,me)},function(){this.$|=1;this.C=this.M=this.im;N[this.ea()].call(this,se)},function(){var a,b=this.ea(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Fa){ac.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.Y;break;case 5:a=this.H;
break;case 6:a=this.F;break;case 7:a=this.D}}N[b].call(this,le);switch(c){case 0:Tc(this,this.G);this.G=a;break;case 1:Nc(this,this.I);this.I=a;break;case 2:Pc(this,this.J);this.J=a;break;case 3:Oc(this,this.B);this.B=a;break;case 4:Tc(this,this.Y);this.Y=a;break;case 5:Nc(this,this.H);this.H=a;break;case 6:Pc(this,this.F);this.F=a;break;case 7:Oc(this,this.D),this.D=a}},function(){this.$|=1;bh[this.ea()].call(this,ce,this.Ja)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a;
this.A-=3},function(){var a=this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.Y;this.Y=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Vk},function(){var a=this.K(),b=this.K();
K(this,this.ua.oa);K(this,this.qa);yc(this,a,b);this.A-=this.Yk},function(){M.call(this)},function(){K(this,Bc(this));this.A-=this.oc},function(){zc(this,this.Ja());this.A-=this.gc},function(){var a=this.G>>8;a&1?ed(this):$c(this);a&4?Vc(this)||(this.ja^=1):Vc(this)&&(this.ja^=1);a&16?fd(this):ad(this);a&64?gd(this):bd(this);a&128?hd(this):cd(this);this.A-=this.Cb},function(){this.G=this.G&255|(Bc(this)&213)<<8;this.A-=this.Cb},function(){this.G=this.G&-256|this.T(this.C,this.K());this.A-=this.lj},
function(){this.G=this.U(this.C,this.K());this.A-=this.lj},function(){var a=this.K(),b=this.G;this.bd(this.C.Yb(a,0),b);this.A-=this.mj},function(){var a=this.K(),b=this.G;this.Nd(this.C.Yb(a,1),b);this.A-=this.mj},function(){var a=1,b=0,c=this.nj;this.wa&192&&(a=this.I,b=1,c=this.pj,this.wa&256||(this.A-=this.oj));if(a--){var d=this.ya&1024?-1:1,e=this.T(this.C,this.F);this.bd(this.Za.Yb(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.wa&16?-3:-2),this.$|=
256)}},function(){var a=1,b=0,c=this.nj;this.wa&192&&(a=this.I,b=1,c=this.pj,this.wa&256||(this.A-=this.oj));if(a--){var d=this.ya&1024?-2:2,e=this.U(this.C,this.F);this.Nd(this.Za.Yb(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.Yi;this.wa&192&&(a=this.I,b=1,c=this.$i,this.wa&256||(this.A-=this.Zi));if(a--){var d=this.ya&1024?-1:1,e=this.T(this.C,this.F),f=this.N(this.Za,this.D);vd.call(this,
e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.sb;this.I-=b;a&&Xc(this)==(this.wa&64)&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.Yi;this.wa&192&&(a=this.I,b=1,c=this.$i,this.wa&256||(this.A-=this.Zi));if(a--){var d=this.ya&1024?-2:2,e=this.U(this.C,this.F),f=this.O(this.Za,this.D);Dd.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.sb;this.I-=b;a&&Xc(this)==(this.wa&64)&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){this.Z=
this.ja=this.ma=this.G&255&this.ea();this.da=256;this.A-=this.Ie},function(){this.Z=this.ja=this.ma=this.G&this.K();this.da=65536;this.A-=this.Ie},function(){var a=1,b=0,c=this.yj;this.wa&192&&(a=this.I,b=1,c=this.Aj,this.wa&256||(this.A-=this.zj));if(a--){var d=this.G;this.bd(this.Za.Yb(this.D,0),d);this.D=this.D+(this.ya&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.yj;this.wa&192&&(a=this.I,b=1,c=this.Aj,this.wa&256||(this.A-=this.zj));if(a--){var d=
this.G;this.Nd(this.Za.Yb(this.D,1),d);this.D=this.D+(this.ya&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.fj;this.wa&192&&(a=this.I,b=1,c=this.hj,this.wa&256||(this.A-=this.gj));a--&&(this.G=this.G&-256|this.T(this.C,this.F),this.F=this.F+(this.ya&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.wa&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.fj;this.wa&192&&(a=this.I,b=1,c=this.hj,this.wa&256||(this.A-=this.gj));a--&&(this.G=this.U(this.C,
this.F),this.F=this.F+(this.ya&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.wa&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.sj;this.wa&192&&(a=this.I,b=1,c=this.uj,this.wa&256||(this.A-=this.tj));a--&&(vd.call(this,this.G&255,this.N(this.Za,this.D)),this.D=this.D+(this.ya&1024?-1:1)&65535,this.A-=c-this.sb,this.I-=b,a&&Xc(this)==(this.wa&64)&&(J(this,-2),this.$|=256))},function(){var a=1,b=0,c=this.sj;this.wa&192&&(a=this.I,b=1,c=this.uj,this.wa&256||(this.A-=this.tj));a--&&(Dd.call(this,
this.G,this.O(this.Za,this.D)),this.D=this.D+(this.ya&1024?-2:2)&65535,this.A-=c-this.sb,this.I-=b,a&&Xc(this)==(this.wa&64)&&(J(this,-2),this.$|=256))},function(){this.G=this.G&-256|this.ea();this.A-=this.Cb},function(){this.I=this.I&-256|this.ea();this.A-=this.Cb},function(){this.J=this.J&-256|this.ea();this.A-=this.Cb},function(){this.B=this.B&-256|this.ea();this.A-=this.Cb},function(){this.G=this.G&255|this.ea()<<8;this.A-=this.Cb},function(){this.I=this.I&255|this.ea()<<8;this.A-=this.Cb},function(){this.J=
this.A-=3},function(){var a=this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.Y;this.Y=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Xk},function(){var a=this.K(),b=this.K();
K(this,this.ua.oa);K(this,this.qa);yc(this,a,b);this.A-=this.$k},function(){M.call(this)},function(){K(this,Bc(this));this.A-=this.pc},function(){zc(this,this.Ja());this.A-=this.ic},function(){var a=this.G>>8;a&1?ed(this):$c(this);a&4?Vc(this)||(this.ja^=1):Vc(this)&&(this.ja^=1);a&16?fd(this):ad(this);a&64?gd(this):bd(this);a&128?hd(this):cd(this);this.A-=this.Cb},function(){this.G=this.G&255|(Bc(this)&213)<<8;this.A-=this.Cb},function(){this.G=this.G&-256|this.T(this.C,this.K());this.A-=this.pj},
function(){this.G=this.U(this.C,this.K());this.A-=this.pj},function(){var a=this.K(),b=this.G;this.Md(this.C.Yb(a,0),b);this.A-=this.qj},function(){var a=this.K(),b=this.G;this.bd(this.C.Yb(a,1),b);this.A-=this.qj},function(){var a=1,b=0,c=this.rj;this.wa&192&&(a=this.I,b=1,c=this.tj,this.wa&256||(this.A-=this.sj));if(a--){var d=this.xa&1024?-1:1,e=this.T(this.C,this.F);this.Md(this.Za.Yb(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.wa&16?-3:-2),this.$|=
256)}},function(){var a=1,b=0,c=this.rj;this.wa&192&&(a=this.I,b=1,c=this.tj,this.wa&256||(this.A-=this.sj));if(a--){var d=this.xa&1024?-2:2,e=this.U(this.C,this.F);this.bd(this.Za.Yb(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.bj;this.wa&192&&(a=this.I,b=1,c=this.dj,this.wa&256||(this.A-=this.cj));if(a--){var d=this.xa&1024?-1:1,e=this.T(this.C,this.F),f=this.N(this.Za,this.D);vd.call(this,
e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.sb;this.I-=b;a&&Xc(this)==(this.wa&64)&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.bj;this.wa&192&&(a=this.I,b=1,c=this.dj,this.wa&256||(this.A-=this.cj));if(a--){var d=this.xa&1024?-2:2,e=this.U(this.C,this.F),f=this.O(this.Za,this.D);Dd.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.sb;this.I-=b;a&&Xc(this)==(this.wa&64)&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){this.Z=
this.ja=this.ma=this.G&255&this.ea();this.da=256;this.A-=this.Je},function(){this.Z=this.ja=this.ma=this.G&this.K();this.da=65536;this.A-=this.Je},function(){var a=1,b=0,c=this.Cj;this.wa&192&&(a=this.I,b=1,c=this.Ej,this.wa&256||(this.A-=this.Dj));if(a--){var d=this.G;this.Md(this.Za.Yb(this.D,0),d);this.D=this.D+(this.xa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.Cj;this.wa&192&&(a=this.I,b=1,c=this.Ej,this.wa&256||(this.A-=this.Dj));if(a--){var d=
this.G;this.bd(this.Za.Yb(this.D,1),d);this.D=this.D+(this.xa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.jj;this.wa&192&&(a=this.I,b=1,c=this.lj,this.wa&256||(this.A-=this.kj));a--&&(this.G=this.G&-256|this.T(this.C,this.F),this.F=this.F+(this.xa&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.wa&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.jj;this.wa&192&&(a=this.I,b=1,c=this.lj,this.wa&256||(this.A-=this.kj));a--&&(this.G=this.U(this.C,
this.F),this.F=this.F+(this.xa&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.wa&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.wj;this.wa&192&&(a=this.I,b=1,c=this.yj,this.wa&256||(this.A-=this.xj));a--&&(vd.call(this,this.G&255,this.N(this.Za,this.D)),this.D=this.D+(this.xa&1024?-1:1)&65535,this.A-=c-this.sb,this.I-=b,a&&Xc(this)==(this.wa&64)&&(J(this,-2),this.$|=256))},function(){var a=1,b=0,c=this.wj;this.wa&192&&(a=this.I,b=1,c=this.yj,this.wa&256||(this.A-=this.xj));a--&&(Dd.call(this,
this.G,this.O(this.Za,this.D)),this.D=this.D+(this.xa&1024?-2:2)&65535,this.A-=c-this.sb,this.I-=b,a&&Xc(this)==(this.wa&64)&&(J(this,-2),this.$|=256))},function(){this.G=this.G&-256|this.ea();this.A-=this.Cb},function(){this.I=this.I&-256|this.ea();this.A-=this.Cb},function(){this.J=this.J&-256|this.ea();this.A-=this.Cb},function(){this.B=this.B&-256|this.ea();this.A-=this.Cb},function(){this.G=this.G&255|this.ea()<<8;this.A-=this.Cb},function(){this.I=this.I&255|this.ea()<<8;this.A-=this.Cb},function(){this.J=
this.J&255|this.ea()<<8;this.A-=this.Cb},function(){this.B=this.B&255|this.ea()<<8;this.A-=this.Cb},function(){this.G=this.K();this.A-=this.Cb},function(){this.I=this.K();this.A-=this.Cb},function(){this.J=this.K();this.A-=this.Cb},function(){this.B=this.K();this.A-=this.Cb},function(){this.Y=this.K();this.A-=this.Cb},function(){this.H=this.K();this.A-=this.Cb},function(){this.F=this.K();this.A-=this.Cb},function(){this.D=this.K();this.A-=this.Cb},vh,wh,vh,wh,function(){N[this.ea()].call(this,ue)},
function(){N[this.ea()].call(this,te)},function(){this.$|=1;ah[this.ea()].call(this,de,this.ea)},function(){this.$|=1;bh[this.ea()].call(this,de,this.K)},xh,yh,xh,yh,function(){ld.call(this,3,null,this.ol)},function(){var a=this.ea();Dc(this,a)?ld.call(this,a,null,0):this.A--},function(){Zc(this)?ld.call(this,4,null,this.pl):this.A-=this.ql},function(){yc(this,this.Ja(),this.Ja());zc(this,this.Ja());this.ah&&Hc(this,this.Ba);this.A-=this.ml},function(){ah[this.ea()].call(this,ee,Td)},function(){bh[this.ea()].call(this,
fe,Td)},function(){ah[this.ea()].call(this,ee,Ud)},function(){bh[this.ea()].call(this,fe,Ud)},function(){var a=this.ea(),b=this.G&255;this.G=(b/a&255)<<8|b%a;this.da=256;this.Z=this.ja=b;this.A-=this.Sk},function(){var a=this.ea();this.Z=this.ja=this.G=(this.G>>8)*a+this.G&255;this.da=256;this.A-=this.Rk},function(){this.G=this.G&-256|(Uc(this)?255:0);this.A-=2},function(){this.G=this.G&-256|this.T(this.C,this.B+(this.G&255)&65535);this.A-=this.Ql},zh,zh,zh,zh,zh,zh,zh,zh,function(){var a=this.L();
(this.I=this.I-1&65535)&&this.Z&this.da-1?(I(this,this.qa+a),this.A-=this.xl):this.A-=this.ij},function(){var a=this.L();!(this.I=this.I-1&65535)||this.Z&this.da-1?this.A-=this.kj:(I(this,this.qa+a),this.A-=this.jj)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.qa+a),this.A-=this.wl):this.A-=this.ij},function(){var a=this.L();this.I?this.A-=this.kj:(I(this,this.qa+a),this.A-=this.jj)},function(){var a=this.ea();this.G=this.G&-256|jb(this.na,a,this.Ba-2);this.A-=this.cj},function(){var a=
this.ea();this.G=jb(this.na,a,this.Ba-1)|jb(this.na,a+1&65535,this.Ba-2)<<8;this.A-=this.cj},function(){var a=this.ea();nb(this.na,a,this.G&255,this.Ba-2);this.A-=this.rj},function(){var a=this.ea();nb(this.na,a,this.G&255,this.Ba-2);nb(this.na,a+1&65535,this.G>>8,this.Ba-2);this.A-=this.rj},function(){var a=this.K();K(this,this.qa);I(this,this.qa+a);this.A-=this.Wk},function(){var a=this.K();I(this,this.qa+a);this.A-=this.dj},function(){yc(this,this.K(),this.K());this.A-=this.sl},function(){var a=
this.L();I(this,this.qa+a);this.A-=this.dj},function(){this.G=this.G&-256|jb(this.na,this.J,this.Ba-1);this.A-=this.bj},function(){this.G=jb(this.na,this.J,this.Ba-1)|jb(this.na,this.J+1&65535,this.Ba-1)<<8;this.A-=this.bj},function(){nb(this.na,this.J,this.G&255,this.Ba-1);this.A-=this.qj},function(){nb(this.na,this.J,this.G&255,this.Ba-1);nb(this.na,this.J+1&65535,this.G>>8,this.Ba-1);this.A-=this.qj},Ah,Ah,function(){this.$|=132;this.A-=this.Ob},function(){this.$|=68;this.A-=this.Ob},function(){this.nb|=
4;this.A-=2;this.X&&jd(this.X)?(J(this,-1),this.Ab()):this.ya&512||(this.X&&J(this,-1),this.Ab())},function(){Uc(this)?$c(this):ed(this);this.A-=2},function(){this.Db=-1;ah[this.ea()].call(this,he,Wd);0<=this.Db&&(this.G=this.Db)},function(){this.Db=-1;bh[this.ea()].call(this,ie,Wd);0<=this.Db&&(this.G=this.Db,this.J=this.ug)},function(){this.Z&=~this.da;this.A-=2},function(){this.Z|=this.da;this.A-=2},function(){this.ya&=-513;this.A-=this.Uk},function(){this.ya|=512;this.$|=4;this.A-=2},function(){this.ya&=
-1025;this.A-=2},function(){this.ya|=1024;this.A-=2},function(){ah[this.ea()].call(this,rc,Wd)},function(){bh[this.ea()].call(this,tc,Wd)}];
function O(a){x.call(this,"ChipSet",a,O);this.Fa=a.model;this.Fa=void 0!==this.Fa?parseInt(this.Fa,10):Bh;this.Xb=0;var b=a.sw1;if(b)this.Xb=Ch(b,Dh|Eh.wm);else if(b=a.fdrives||2,this.Xb|=Fh.Vh,b--,this.Xb|=(b&3)<<Fh.Df,b=a.monitor||(this.Fa<Gh?"mono":"ega"),void 0!==Hh[b])this.Xb|=Hh[b]<<Eh.Df;this.pe=Ch(a.sw2||"11110000",0);this.Qn=this.Fa==Bh?16:64;this.Pf=this.Qf=1;this.Fa>=Gh&&(this.Pf=this.Qf=2);this.oh=a.scaleTimers||!1;this.mp=a.rtcDate;this.Bk=!1;a.sound&&window&&"webkitAudioContext"in window&&
(this.ni=new webkitAudioContext);this.reset();this.Ta()}y(x,O);var Bh=5150,Gh=5170,Hh={none:0,tv:1,color:2,mono:3,ega:0},Fh={Vh:1,ONE:0,Rp:64,Pp:128,yp:192,Bf:192,Df:6},Dh=12,Eh={Qp:16,tp:32,wm:48,Bf:48,Df:4};k=O.prototype;
k.xb=function(a,b,c,d){switch(c){case "sw1":return this.sa[c]=d,Ih(this,c,d,this.Xb,{0:this.Fa==Bh?"Bootable Floppy Drive":"Loop on POST",1:this.Fa==Bh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Fa==Bh)return this.sa[c]=d,Ih(this,c,d,this.pe,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.sa[c]=d,!0}return!1};
k.mc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;this.Da=a;this.bb=C(a,"Keyboard");this.Rl=Math.round(c.Hd/1193181);ib(b,this,Jh);mb(b,this,Kh);this.Fa<Gh?(ib(b,this,Lh),mb(b,this,Mh)):(ib(b,this,Nh),mb(b,this,Oh));if(d){var e=this;Ph(d,O);Qh(d,O.Te,function(){for(var a=0;a<e.tb.length;a++){for(var b=e.tb[a],c="PIC"+a+":",d=0;d<b.pd.length;d++)c+=" IC"+(d+1)+"="+r(b.pd[d]);c+=" IMR="+r(b.vd)+" IRR="+r(b.Jb)+" ISR="+r(b.Ec);e.X.message(c)}});Qh(d,O.Ue,function(){for(var a=0;a<e.Hb.length;a++){Rh(e,
a);var b=e.Hb[a],c="TIMER"+a+":",d=0;if(void 0!==b.gd)for(var n=0;n<=b.gd;n++)d|=b.Zb[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.gd+" COUNT="+u(d);e.X.message(c)}});Qh(d,O.Cf,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Sh(e,b):e.pa[b];a&&(a+="\n");a+="CMOS[0x"+r(b)+"]: 0x"+r(c)}e.X.message(a)})}Cc(c,26,this,this.Nn)};k.$b=function(a,b){if(!b)if(!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.cd=this.Xb;this.Qe=this.pe;Th(this);this.$a=Array(this.Pf);for(b=0;b<this.Pf;b++)Uh(this,b);this.tb=Array(this.Qf);Vh(this,0,32);1<this.Qf&&Vh(this,1,160);this.ki=void 0;this.Hb=Array(3);for(b=0;b<this.Hb.length;b++)Wh(this,b);this.Of=this.ii=this.yc=this.Wg=void 0;this.Vg=0;if(this.Fa>=Gh){this.kb=16;this.ud=0;this.Xd=16;this.Rg=0;this.ve=160;512<=Xh(this)&&(this.ve|=16);3==Yh(this)&&(this.ve|=64);this.gi=3;this.Mf=0;this.Ng=Array(7);this.we=0;a||(this.pa=Array(64));
Zh(this,this.mp);for(a=14;46>a;a++)void 0===this.pa[a]&&(this.pa[a]=0);this.pa[20]=this.cd&(Eh.Bf|2|Fh.Vh|Fh.Bf);this.pa[16]=$h(this,0)<<4|$h(this,1);ai(this)}};
function Zh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ca("CMOS date invalid ("+b+"), using "+c)):b&&a.ca("CMOS date: "+c);a.pa[0]=c.getSeconds();a.pa[1]=0;a.pa[2]=c.getMinutes();a.pa[3]=0;a.pa[4]=c.getHours();a.pa[5]=0;a.pa[6]=c.getDay()+1;a.pa[7]=c.getDate();a.pa[8]=c.getMonth()+1;c=c.getFullYear();a.pa[9]=c%100;c/=100;a.pa[50]=c%10|c/10<<4;a.eg=-1;a.pa[10]=38;a.pa[11]=2;a.pa[12]=0;a.pa[13]=128}
function(){N[this.ea()].call(this,te)},function(){this.$|=1;ah[this.ea()].call(this,de,this.ea)},function(){this.$|=1;bh[this.ea()].call(this,de,this.K)},xh,yh,xh,yh,function(){ld.call(this,3,null,this.ql)},function(){var a=this.ea();Dc(this,a)?ld.call(this,a,null,0):this.A--},function(){Zc(this)?ld.call(this,4,null,this.rl):this.A-=this.sl},function(){yc(this,this.Ja(),this.Ja());zc(this,this.Ja());this.dh&&Hc(this,this.Ba);this.A-=this.ol},function(){ah[this.ea()].call(this,ee,Td)},function(){bh[this.ea()].call(this,
fe,Td)},function(){ah[this.ea()].call(this,ee,Ud)},function(){bh[this.ea()].call(this,fe,Ud)},function(){var a=this.ea(),b=this.G&255;this.G=(b/a&255)<<8|b%a;this.da=256;this.Z=this.ja=b;this.A-=this.Uk},function(){var a=this.ea();this.Z=this.ja=this.G=(this.G>>8)*a+this.G&255;this.da=256;this.A-=this.Tk},function(){this.G=this.G&-256|(Uc(this)?255:0);this.A-=2},function(){this.G=this.G&-256|this.T(this.C,this.B+(this.G&255)&65535);this.A-=this.Sl},zh,zh,zh,zh,zh,zh,zh,zh,function(){var a=this.L();
(this.I=this.I-1&65535)&&this.Z&this.da-1?(I(this,this.qa+a),this.A-=this.zl):this.A-=this.mj},function(){var a=this.L();!(this.I=this.I-1&65535)||this.Z&this.da-1?this.A-=this.oj:(I(this,this.qa+a),this.A-=this.nj)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.qa+a),this.A-=this.yl):this.A-=this.mj},function(){var a=this.L();this.I?this.A-=this.oj:(I(this,this.qa+a),this.A-=this.nj)},function(){var a=this.ea();this.G=this.G&-256|jb(this.na,a,this.Ba-2);this.A-=this.gj},function(){var a=
this.ea();this.G=jb(this.na,a,this.Ba-1)|jb(this.na,a+1&65535,this.Ba-2)<<8;this.A-=this.gj},function(){var a=this.ea();nb(this.na,a,this.G&255,this.Ba-2);this.A-=this.vj},function(){var a=this.ea();nb(this.na,a,this.G&255,this.Ba-2);nb(this.na,a+1&65535,this.G>>8,this.Ba-2);this.A-=this.vj},function(){var a=this.K();K(this,this.qa);I(this,this.qa+a);this.A-=this.Yk},function(){var a=this.K();I(this,this.qa+a);this.A-=this.hj},function(){yc(this,this.K(),this.K());this.A-=this.ul},function(){var a=
this.L();I(this,this.qa+a);this.A-=this.hj},function(){this.G=this.G&-256|jb(this.na,this.J,this.Ba-1);this.A-=this.fj},function(){this.G=jb(this.na,this.J,this.Ba-1)|jb(this.na,this.J+1&65535,this.Ba-1)<<8;this.A-=this.fj},function(){nb(this.na,this.J,this.G&255,this.Ba-1);this.A-=this.uj},function(){nb(this.na,this.J,this.G&255,this.Ba-1);nb(this.na,this.J+1&65535,this.G>>8,this.Ba-1);this.A-=this.uj},Ah,Ah,function(){this.$|=132;this.A-=this.Pb},function(){this.$|=68;this.A-=this.Pb},function(){this.mb|=
4;this.A-=2;this.X&&jd(this.X)?(J(this,-1),this.Ab()):this.xa&512||(this.X&&J(this,-1),this.Ab())},function(){Uc(this)?$c(this):ed(this);this.A-=2},function(){this.Db=-1;ah[this.ea()].call(this,he,Wd);0<=this.Db&&(this.G=this.Db)},function(){this.Db=-1;bh[this.ea()].call(this,ie,Wd);0<=this.Db&&(this.G=this.Db,this.J=this.vg)},function(){this.Z&=~this.da;this.A-=2},function(){this.Z|=this.da;this.A-=2},function(){this.xa&=-513;this.A-=this.Wk},function(){this.xa|=512;this.$|=4;this.A-=2},function(){this.xa&=
-1025;this.A-=2},function(){this.xa|=1024;this.A-=2},function(){ah[this.ea()].call(this,rc,Wd)},function(){bh[this.ea()].call(this,tc,Wd)}];
function O(a){x.call(this,"ChipSet",a,O);this.Fa=a.model;this.Fa=void 0!==this.Fa?parseInt(this.Fa,10):Bh;this.Xb=0;var b=a.sw1;if(b)this.Xb=Ch(b,Dh|Eh.ym);else if(b=a.fdrives||2,this.Xb|=Fh.Xh,b--,this.Xb|=(b&3)<<Fh.Ef,b=a.monitor||(this.Fa<Gh?"mono":"ega"),void 0!==Hh[b])this.Xb|=Hh[b]<<Eh.Ef;this.qe=Ch(a.sw2||"11110000",0);this.Tn=this.Fa==Bh?16:64;this.Qf=this.Rf=1;this.Fa>=Gh&&(this.Qf=this.Rf=2);this.qh=a.scaleTimers||!1;this.pp=a.rtcDate;this.Dk=!1;a.sound&&window&&"webkitAudioContext"in window&&
(this.pi=new webkitAudioContext);this.reset();this.Ta()}y(x,O);var Bh=5150,Gh=5170,Hh={none:0,tv:1,color:2,mono:3,ega:0},Fh={Xh:1,ONE:0,Up:64,Sp:128,Bp:192,Cf:192,Ef:6},Dh=12,Eh={Tp:16,wp:32,ym:48,Cf:48,Ef:4};k=O.prototype;
k.xb=function(a,b,c,d){switch(c){case "sw1":return this.sa[c]=d,Ih(this,c,d,this.Xb,{0:this.Fa==Bh?"Bootable Floppy Drive":"Loop on POST",1:this.Fa==Bh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Fa==Bh)return this.sa[c]=d,Ih(this,c,d,this.qe,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.sa[c]=d,!0}return!1};
k.oc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;this.Da=a;this.bb=C(a,"Keyboard");this.Tl=Math.round(c.Hd/1193181);ib(b,this,Jh);mb(b,this,Kh);this.Fa<Gh?(ib(b,this,Lh),mb(b,this,Mh)):(ib(b,this,Nh),mb(b,this,Oh));if(d){var e=this;Ph(d,O);Qh(d,O.Ue,function(){for(var a=0;a<e.tb.length;a++){for(var b=e.tb[a],c="PIC"+a+":",d=0;d<b.pd.length;d++)c+=" IC"+(d+1)+"="+r(b.pd[d]);c+=" IMR="+r(b.vd)+" IRR="+r(b.Jb)+" ISR="+r(b.Fc);e.X.message(c)}});Qh(d,O.Ve,function(){for(var a=0;a<e.Hb.length;a++){Rh(e,
a);var b=e.Hb[a],c="TIMER"+a+":",d=0;if(void 0!==b.gd)for(var n=0;n<=b.gd;n++)d|=b.Zb[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.gd+" COUNT="+u(d);e.X.message(c)}});Qh(d,O.Df,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Sh(e,b):e.pa[b];a&&(a+="\n");a+="CMOS[0x"+r(b)+"]: 0x"+r(c)}e.X.message(a)})}Cc(c,26,this,this.Qn)};k.ac=function(a,b){if(!b)if(!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.cd=this.Xb;this.Re=this.qe;Th(this);this.$a=Array(this.Qf);for(b=0;b<this.Qf;b++)Uh(this,b);this.tb=Array(this.Rf);Vh(this,0,32);1<this.Rf&&Vh(this,1,160);this.mi=void 0;this.Hb=Array(3);for(b=0;b<this.Hb.length;b++)Wh(this,b);this.Pf=this.ki=this.Ac=this.Yg=void 0;this.Xg=0;if(this.Fa>=Gh){this.jb=16;this.ud=0;this.Xd=16;this.Tg=0;this.we=160;512<=Xh(this)&&(this.we|=16);3==Yh(this)&&(this.we|=64);this.ii=3;this.Nf=0;this.Pg=Array(7);this.xe=0;a||(this.pa=Array(64));
Zh(this,this.pp);for(a=14;46>a;a++)void 0===this.pa[a]&&(this.pa[a]=0);this.pa[20]=this.cd&(Eh.Cf|2|Fh.Xh|Fh.Cf);this.pa[16]=$h(this,0)<<4|$h(this,1);ai(this)}};
function Zh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ca("CMOS date invalid ("+b+"), using "+c)):b&&a.ca("CMOS date: "+c);a.pa[0]=c.getSeconds();a.pa[1]=0;a.pa[2]=c.getMinutes();a.pa[3]=0;a.pa[4]=c.getHours();a.pa[5]=0;a.pa[6]=c.getDay()+1;a.pa[7]=c.getDate();a.pa[8]=c.getMonth()+1;c=c.getFullYear();a.pa[9]=c%100;c/=100;a.pa[50]=c%10|c/10<<4;a.fg=-1;a.pa[10]=38;a.pa[11]=2;a.pa[12]=0;a.pa[13]=128}
function Sh(a,b){var c=a.pa[b];if(10>b){var d=!1;4!=b&&5!=b||a.pa[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.pa[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.pa[b]^=128);return c}function ai(a){for(var b=0,c=16;46>c;c++)b+=a.pa[c];a.pa[47]=b&255;a.pa[46]=b>>8}
k.save=function(){var a=new H(this);a.set(0,[this.Xb,this.pe,this.cd,this.Qe]);for(var b=[],c=0;c<this.$a;c++){var d=[],e=this.$a[c];d[0]=e.ae;d[1]=e.hi;d[2]=e.lk;d[3]=e.qb;for(var f=[],g=0;g<e.Gb.length;g++){var h=[],m=e.Gb[g];h[0]=m.Fd;h[1]=m.gk;h[2]=m.Hc;h[3]=m.Qb;h[4]=m.Zb;h[5]=m.mode;h[6]=m.Xg;h[8]=m.jp;h[9]=m.kp;f[g]=h}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.tb.length;c++)d=[],e=this.tb[c],d[0]=e.jg,d[1]=e.pd,d[2]=e.Id,d[3]=e.vd,d[4]=e.Jb,d[5]=e.Ec,d[6]=e.xe,d[7]=e.Nf,b[c]=d;a.set(2,
[b]);b=[];for(c=0;c<this.Hb.length;c++)d=[],e=this.Hb[c],d[0]=e.Hc,d[1]=e.Xc,d[2]=e.Zb,d[3]=e.Vf,d[4]=e.ok,d[5]=e.mode,d[6]=e.vg,d[7]=e.de,d[8]=e.gd,d[9]=e.kd,d[10]=e.Yf,d[11]=e.df,d[12]=e.me,b[c]=d;a.set(3,[this.ki,b]);a.set(4,[this.Wg,this.yc,this.ii,this.Of,this.Vg]);this.Fa>=Gh&&(a.set(5,[this.kb,this.ud,this.Xd,this.Rg,this.ve,this.gi]),a.set(6,[this.Mf,this.Ng,this.we,this.pa,this.eg]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Xb=b[0];this.pe=b[1];this.cd=b[2];this.Qe=b[3];b=a[1];this.$a=Array(this.Pf);for(c=0;c<this.Pf;c++)Uh(this,c,1==b.length?b[0][c]:b);b=a[2];this.tb=Array(this.Qf);for(c=0;c<this.Qf;c++)Vh(this,c,0===c?32:160,b[0][c]);b=a[3];this.ki=b[0];this.Hb=Array(3);for(c=0;c<this.Hb.length;c++)Wh(this,c,b[1][c]);b=a[4];this.Wg=b[0];this.yc=b[1];this.ii=b[2];this.Of=b[3];this.Vg=b[4];if(b=a[5])this.kb=b[0],this.ud=b[1],this.Xd=b[2],this.Rg=b[3],this.ve=b[4],this.gi=b[5];
if(b=a[6])this.Mf=b[0],this.Ng=b[1],this.we=b[2],this.pa=b[3],this.eg=b[4],Zh(this);return!0};function Uh(a,b,c){a=a.$a[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.ae=c[0];a.hi=c[1];a.lk=c[2];a.qb=c[3];a.Yn=b<<2;a.Gb=Array(4);for(b=0;b<a.Gb.length;b++)bi(a,b,c[4][b])}function bi(a,b,c){var d=a.Gb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ia=a;d.Hk=b;d.Fd=c[0];d.gk=c[1];d.Hc=c[2];d.Qb=c[3];d.Zb=c[4];d.mode=c[5];d.Xg=c[6];ci(d,c[8],c[9])}
function ci(a,b,c,d){"string"==typeof b&&(b=Ma(b));b&&(a.fh=null,a.jp=b.id,a.kp=c,a.dh=b,a.Hi=b[c],a.Fh=d)}function Vh(a,b,c,d){a=a.tb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.Up=b<<3;a.jg=d[0];a.pd=d[1];a.Id=d[2];a.vd=d[3];a.Jb=d[4];a.Ec=d[5];a.xe=d[6];a.Nf=d[7]}
function Wh(a,b,c){a=a.Hb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.Hc=c[0];a.Xc=c[1];a.Zb=c[2];a.Vf=c[3];a.ok=c[4];a.mode=c[5];a.vg=c[6];a.de=c[7];a.gd=c[8];a.kd=c[9];a.Yf=c[10];a.df=c[11];a.me=c[12]}function Xh(a,b){return((((b?a.Xb:a.cd)&12)>>2)+1)*a.Qn+32*((b?a.pe:a.Qe)&15)}function di(a,b){var c=b?a.Xb:a.cd;return a.Fa!=Bh||c&Fh.Vh?((c&Fh.Bf)>>Fh.Df)+1:0}function $h(a,b){return b<di(a)?a.Fa<Gh?1:2:0}function Yh(a,b){return((b?a.Xb:a.cd)&Eh.Bf)>>Eh.Df}
k.save=function(){var a=new H(this);a.set(0,[this.Xb,this.qe,this.cd,this.Re]);for(var b=[],c=0;c<this.$a;c++){var d=[],e=this.$a[c];d[0]=e.ae;d[1]=e.ji;d[2]=e.ok;d[3]=e.qb;for(var f=[],g=0;g<e.Gb.length;g++){var h=[],m=e.Gb[g];h[0]=m.Fd;h[1]=m.jk;h[2]=m.Ic;h[3]=m.Rb;h[4]=m.Zb;h[5]=m.mode;h[6]=m.Zg;h[8]=m.mp;h[9]=m.np;f[g]=h}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.tb.length;c++)d=[],e=this.tb[c],d[0]=e.kg,d[1]=e.pd,d[2]=e.Id,d[3]=e.vd,d[4]=e.Jb,d[5]=e.Fc,d[6]=e.ye,d[7]=e.Of,b[c]=d;a.set(2,
[b]);b=[];for(c=0;c<this.Hb.length;c++)d=[],e=this.Hb[c],d[0]=e.Ic,d[1]=e.Yc,d[2]=e.Zb,d[3]=e.Wf,d[4]=e.qk,d[5]=e.mode,d[6]=e.wg,d[7]=e.de,d[8]=e.gd,d[9]=e.kd,d[10]=e.Zf,d[11]=e.ef,d[12]=e.me,b[c]=d;a.set(3,[this.mi,b]);a.set(4,[this.Yg,this.Ac,this.ki,this.Pf,this.Xg]);this.Fa>=Gh&&(a.set(5,[this.jb,this.ud,this.Xd,this.Tg,this.we,this.ii]),a.set(6,[this.Nf,this.Pg,this.xe,this.pa,this.fg]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Xb=b[0];this.qe=b[1];this.cd=b[2];this.Re=b[3];b=a[1];this.$a=Array(this.Qf);for(c=0;c<this.Qf;c++)Uh(this,c,1==b.length?b[0][c]:b);b=a[2];this.tb=Array(this.Rf);for(c=0;c<this.Rf;c++)Vh(this,c,0===c?32:160,b[0][c]);b=a[3];this.mi=b[0];this.Hb=Array(3);for(c=0;c<this.Hb.length;c++)Wh(this,c,b[1][c]);b=a[4];this.Yg=b[0];this.Ac=b[1];this.ki=b[2];this.Pf=b[3];this.Xg=b[4];if(b=a[5])this.jb=b[0],this.ud=b[1],this.Xd=b[2],this.Tg=b[3],this.we=b[4],this.ii=b[5];
if(b=a[6])this.Nf=b[0],this.Pg=b[1],this.xe=b[2],this.pa=b[3],this.fg=b[4],Zh(this);return!0};function Uh(a,b,c){a=a.$a[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.ae=c[0];a.ji=c[1];a.ok=c[2];a.qb=c[3];a.ao=b<<2;a.Gb=Array(4);for(b=0;b<a.Gb.length;b++)bi(a,b,c[4][b])}function bi(a,b,c){var d=a.Gb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ia=a;d.Jk=b;d.Fd=c[0];d.jk=c[1];d.Ic=c[2];d.Rb=c[3];d.Zb=c[4];d.mode=c[5];d.Zg=c[6];ci(d,c[8],c[9])}
function ci(a,b,c,d){"string"==typeof b&&(b=Ma(b));b&&(a.hh=null,a.mp=b.id,a.np=c,a.fh=b,a.Ji=b[c],a.Ih=d)}function Vh(a,b,c,d){a=a.tb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.Xp=b<<3;a.kg=d[0];a.pd=d[1];a.Id=d[2];a.vd=d[3];a.Jb=d[4];a.Fc=d[5];a.ye=d[6];a.Of=d[7]}
function Wh(a,b,c){a=a.Hb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.Ic=c[0];a.Yc=c[1];a.Zb=c[2];a.Wf=c[3];a.qk=c[4];a.mode=c[5];a.wg=c[6];a.de=c[7];a.gd=c[8];a.kd=c[9];a.Zf=c[10];a.ef=c[11];a.me=c[12]}function Xh(a,b){return((((b?a.Xb:a.cd)&12)>>2)+1)*a.Tn+32*((b?a.qe:a.Re)&15)}function di(a,b){var c=b?a.Xb:a.cd;return a.Fa!=Bh||c&Fh.Xh?((c&Fh.Cf)>>Fh.Ef)+1:0}function $h(a,b){return b<di(a)?a.Fa<Gh?1:2:0}function Yh(a,b){return((b?a.Xb:a.cd)&Eh.Cf)>>Eh.Ef}
function Ih(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+g)+'" class="'+h+'" data-value="0">'+g+"</div>\n"}c.innerHTML=f;b=B(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)void 0!==e&&void 0!==e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),ei(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");ei(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Xb=
a.Xb&~e|(c?0:e);break;case "sw2":a.pe=a.pe&~e|(c?0:e)}Th(a)}}(a,b[g])}function ei(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Th(a){var b=a.sa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(Xh(a,!0)+"Kb");d+=", "+c[Yh(a,!0)]+" Monitor";d+=", "+di(a,!0)+" Floppy Drives";if(void 0!==a.cd&&a.cd!=a.Xb||void 0!==a.Qe&&a.Qe!=a.pe)d+=" (Reset required)";b.innerHTML=d}}
function fi(a,b,c,d,e){var f=a.$a[b],g=f.Gb[c].Qb[f.qb];f.qb^=1;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.qb+"]",O.Fb,g);return g}function gi(a,b,c,d,e,f){var g=a.$a[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.qb+"]",O.Fb);a=g.Gb[c];a.Qb[g.qb]=a.gk[g.qb]=e;g.qb^=1}function hi(a,b,c,d,e){var f=a.$a[b],g=f.Gb[c].Zb[f.qb];f.qb^=1;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.qb+"]",O.Fb,g);return g}
function ii(a,b,c,d,e,f){var g=a.$a[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.qb+"]",O.Fb);a=g.Gb[c];a.Zb[g.qb]=a.Hc[g.qb]=e;g.qb^=1}function ji(a,b,c,d){var e=a.$a[b],f=e.ae|1;e.ae&=-16;a.ba(c,null,d,"DMA"+b+".STATUS",O.Fb,f);return f}function ki(a,b,c,d,e){var f=a.$a[b];a.ba(c,d,e,"DMA"+b+".REQ",O.Fb);a=d&3;f.ae=f.ae&~(16<<a)|(d&4)<<a+2;f.lk=d}function li(a,b,c,d,e){var f=a.$a[b];a.ba(c,d,e,"DMA"+b+".MASK",O.Fb);b=d&3;c=f.Gb[b];c.Fd=d&4?!0:!1;c.Fd||mi(a,f.Yn+b)}
function ni(a,b,c,d,e){a.ba(c,d,e,"DMA"+b+".CLEAR",O.Fb);a=a.$a[b];for(b=0;b<a.Gb.length;b++)bi(a,b)}function oi(a,b,c,d,e){var f=a.$a[b].Gb[c].Xg;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",O.Fb,f);return f}function pi(a,b,c,d,e,f){a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",O.Fb);a.$a[b].Gb[c].Xg=e}function qi(a,b,c,d){var e=a.Ng[b];a.ba(c,null,d,"DMA.SPARE"+b+".PAGE",O.Fb,e);return e}function ri(a,b,c,d,e){a.ba(c,d,e,"DMA.SPARE"+b+".PAGE",O.Fb);a.Ng[b]=d}
function si(a,b,c,d,e){ci(a.$a[b>>2].Gb[b&3],c,d,e)}function mi(a,b,c){b=a.$a[b>>2].Gb[b&3];b.dh&&b.Hi&&b.Fh?(c&&(b.fh=c),b.Fd||md(a,b,!0)):c&&c(!0)}
function md(a,b,c){c&&(b.count=b.Zb[1]<<8|b.Zb[0],b.km=b.mode&12,b.Ck=b.jd=!1);for(var d=!1;0<=b.count&&(c=b.Xg<<16|b.Qb[1]<<8|b.Qb[0],4==b.km?(d=!0,function(c){b.Hi.call(b.dh,b.Fh,-1,function(f,g){0>f&&(b.Ck||(b.Ck=!0),f=255);b.Fd||db(a.na,c,f);(d=g)&&setTimeout(function(){ti(b)||md(a,b)},0)})}(c)):8==b.km?(c=bb(a.na,c),0>b.Hi.call(b.dh,b.Fh,c)&&(b.jd=!0)):b.jd=!0),!d&&!ti(b););}
function ti(a){if(!a.jd&&0<=--a.count&&(a.mode&32?(a.Qb[0]--,0>a.Qb[0]&&(a.Qb[0]=255,a.Qb[1]--,0>a.Qb[1]&&(a.Qb[1]=255))):(a.Qb[0]++,255<a.Qb[0]&&(a.Qb[0]=0,a.Qb[1]++,255<a.Qb[1]&&(a.Qb[1]=0))),!a.Fd))return!1;var b=a.ia;b.ae=b.ae&~(16<<a.Hk)|1<<a.Hk;a.mode&16||(a.Fd=!0,a.dh=a.Fh=null);a.fh&&(a.fh(!a.jd),a.fh=null);return!0}function ui(a,b,c){var d=0,e=a.tb[b];if(void 0!==e.Nf)switch(e.Nf&3){case 2:d=e.Jb;break;case 3:d=e.Ec}a.ba(e.port,null,c,"PIC"+b,O.Te,d);return d}
function vi(a,b,c,d){var e=a.tb[b];a.ba(e.port,c,d,"PIC"+b,O.Te);if(c&16)e.Id=0,e.pd[e.Id++]=c,e.vd=0,e.xe=7,e.Jb=e.Ec=0,e.Nf=10;else if(c&8)e.Nf=c;else{var f=c&224;if(f&32){d=0;if(96==(f&96))d=1<<(c&7);else for(c=e.xe+1;;){c&=7;f=1<<c;if(e.Ec&f){d=f;break}if(c++==e.xe)break}e.Ec&d&&(e.Ec&=~d,wi(a,b))}else 192==f&&(e.xe=c&7)}}function xi(a,b,c){var d=a.tb[b],e=d.vd;a.ba(d.port+1,null,c,"PIC"+b,O.Te,e);return e}
function yi(a,b,c,d){var e=a.tb[b];a.ba(e.port+1,c,d,"PIC"+b,O.Te);e.Id<e.pd.length?(e.pd[e.Id++]=c,2==e.Id&&e.pd[0]&2&&e.Id++,3!=e.Id||e.pd[0]&1||e.Id++):(e.vd=c,d=a.S,d.$|=4,wi(a,b,b||253!=c?0:6))}function wi(a,b,c){b=a.tb[b];var d=((b.Ec|b.vd)^255)&b.Jb;a=a.S;a.ka&&(a.nb=d?a.nb|1:a.nb&-2);d&&c&&(b.jg=c)}function zi(a,b,c){var d=b>>3,e=a.tb[d];e.Jb|=1<<(b&7);e.jg=c||0;1==d&&(a.tb[0].Jb|=4);wi(a,d)}
function Ai(a,b){var c=b>>3,d=a.tb[c],e=1<<(b&7);d.Jb&e&&(d.Jb&=~e,1!=c||d.Jb||(a.tb[0].Jb&=-5),wi(a,c))}function kd(a,b){void 0===b&&(b=0);var c=-1,d=a.tb[b];if(d.jg)c=-2,d.jg--;else for(var e=d.Jb&((d.Ec|d.vd)^255),f=d.xe+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.pd[1]+f:kd(a,1);0<=c&&(d.Ec|=g,d.Jb&=~g);break}if(f++==d.xe)break}return c}function Bi(a,b,c){var d;d=a.Hb[b];d.de==d.gd&&Ci(a,b);if(d.Yf)return d.Vf[d.de++];Rh(a,b);d=d.Zb[d.de++];a.ba(64+b,null,c,"TIMER"+b,O.Ue,d);return d}
function Di(a,b,c,d){a.ba(64+b,c,d,"TIMER"+b,O.Ue);d=a.Hb[b];d.de==d.gd&&Ci(a,b);d.Hc[d.de++]=c;if(d.de==d.gd){d.df&&0!=d.mode&&8!=d.mode||(d.Yf=!1,d.Zb[0]=d.Xc[0]=d.Hc[0],d.Zb[1]=d.Xc[1]=d.Hc[1],d.me=F(a.S,a.oh),d.df=!0,d.kd=0!=d.mode,0==b&&Ai(a,0));2==b&&Kb(a);if(0==b){var e=Ei(a,0);2048<=e&&(a.S.zh=Math.round(65536/e))}0==b&&0==d.mode&&16==d.vg&&(b=a.S,b.Nb&&(a=b.A-c*a.Rl,b.A-=a,b.Nc-=a))}}k.Hn=function(a,b){this.ba(a,null,b,"TIMER_CTRL",O.Ue);return null};
k.Zo=function(a,b,c){this.ba(a,b,c,"TIMER_CTRL",O.Ue);this.ki=b;a=(b&192)>>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Hb[a];e.vg=b;e.mode=d;e.ok=c;e.Hc=[0,0];e.Zb=[0,0];e.Vf=[0,0];e.kd=!1;e.Yf=!1;e.df=!1;Ci(this,a);0==a&&Ai(this,0);2==a&&255==this.tb[0].vd&&77==this.yc&&(a=this.Hb[0],a.Xc[0]=a.Hc[0],a.Xc[1]=a.Hc[1],a.me=F(this.S,this.oh))}else Rh(this,a),b=this.Hb[a],b.Vf[0]=b.Zb[0],b.Vf[1]=b.Zb[1],b.Yf=!0,Ci(this,a)}};
function Ei(a,b){var c=a.Hb[b],d=c.Hc[1]<<8|c.Hc[0];d||(d=1==c.gd?256:65536);return d}function Ci(a,b){var c=a.Hb[b];c.de=32==c.vg?1:0;c.gd=48==c.vg?2:1}
function Rh(a,b,c){var d=a.Hb[b];if(d.df&&(2!=b||a.yc&1)){var e=F(a.S,a.oh),f=(e-d.me)/a.Rl|0;0>f&&(d.me=e,f=0);var g=Ei(a,b),h=a.Hb[b],m=h.Xc[1]<<8|h.Xc[0];m||(m=1==h.gd?256:65536);h=m-f;0==d.mode?(0>=h&&(h=0),h||(d.kd=!0,d.df=!1,b||zi(a,0))):4==d.mode?(d.kd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Xc[0]=h&255,d.Xc[1]=h>>8,d.me=e,!b&&d.kd&&zi(a,0))):6==d.mode&&(h-=f,0>=h&&(d.kd=!d.kd,h=g+h,0>=h&&(h=g),d.Xc[0]=h&255,d.Xc[1]=h>>8,d.me=e,!b&&d.kd&&zi(a,0)));d.Zb[0]=h&255;d.Zb[1]=h>>8;c&&(a.me=0)}return d}
function Lb(a,b){for(var c=0;c<a.Hb.length;c++)Rh(a,c,b);if(a.Fa>=Gh){var c=0,d=a.S.Hd,e=F(a.S,a.oh);if(0<=a.eg&&(c=e-a.eg,Math.floor(c/d)&&60<=++a.pa[0]&&(a.pa[0]=0,60<=++a.pa[2]&&(a.pa[2]=0,24<=++a.pa[4])))){a.pa[4]=0;a.pa[6]=a.pa[6]%7+1;var f=a.pa[9],g=qa[a.pa[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.pa[7]>g&&(a.pa[7]=1,12<++a.pa[8]&&(a.pa[8]=1,a.pa[9]=(a.pa[9]+1)%100))}a.eg=e-c%d}}
k.zn=function(a,b){var c=this.Wg;this.Of&16&&(this.yc&128?c=this.cd:this.bb&&(c=Fi(this.bb)));this.ba(a,null,b,"PPI_A",O.sc,c);return c};k.So=function(a,b,c){this.ba(a,b,c,"PPI_A",O.sc);this.Wg=b};k.An=function(a,b){var c=this.yc;this.ba(a,null,b,"PPI_B",O.sc,c);return c};k.To=function(a,b,c){this.ba(a,b,c,"PPI_B",O.sc);Gi(this,b);this.bb&&Hi(this.bb,b&128?!1:!0,b&64?!0:!1)};function Gi(a,b){var c=!!(b&2),d=!!(a.yc&2);a.yc=b;c!=d&&Kb(a,c)}
k.Bn=function(a,b){var c=0,c=this.Fa==Bh?this.yc&4?c|this.Qe&15:c|this.Qe>>4&1:this.yc&8?c|this.cd>>4:c|this.cd&15;this.yc&1&&Rh(this,2).kd&&(c=this.yc&2?c|32:c|16);this.ba(a,null,b,"PPI_C",O.sc|O.Fg,c);return c};k.Uo=function(a,b,c){this.ba(a,b,c,"PPI_C",O.sc);this.ii=b};k.Cn=function(a,b){var c=this.Of;this.ba(a,null,b,"PPI_CTRL",O.sc,c);return c};k.Vo=function(a,b,c){this.ba(a,b,c,"PPI_CTRL",O.sc);this.Of=b};
k.Pm=function(a,b){var c=this.Rg;this.ba(a,null,b,"8042_OUTBUFF",O.Se,c);this.kb&=-258;var d=this.bb&&Fi(this.bb,!0);d&&Ii(this,d);return c};k.mo=function(a,b,c){this.ba(a,b,c,"8042_INBUF.DATA",O.Se);if(this.kb&8)switch(this.ud){case 96:Ji(this,b);break;case 209:Ki(this,b);break;default:if(Ji(this,this.Xd&-17),this.bb){a=-1;switch(b){case 255:a=250,Li(this.bb)}Ii(this,a)}}this.ud=b;this.kb&=-9};k.Qm=function(a,b){var c=this.yc&-209|(F(this.S)&64?16:0);this.ba(a,null,b,"8042_RWREG",O.Se|O.sm,c);return c};
k.no=function(a,b,c){this.ba(a,b,c,"8042_RWREG",O.Se);Gi(this,b)};k.Rm=function(a,b){this.ba(a,null,b,"8042_STATUS",O.Se,this.kb);var c=this.kb&255;this.kb&256&&(this.kb|=1,this.kb&=-257);return c};
k.lo=function(a,b,c){this.ba(a,b,c,"8042_INBUFF.CMD",O.Se);this.ud=b;this.kb|=8;a=0;240<=this.ud&&(a=this.ud^15,this.ud=240);switch(this.ud){case 192:Ii(this,this.ve);break;case 173:Ji(this,this.Xd|16);break;case 174:Ji(this,this.Xd&-17);break;case 170:this.bb&&Mi(this.bb,!0);Ji(this,this.Xd|16);Ii(this,85);Ki(this,3);break;case 224:Ii(this,this.Xd&16?0:1);break;case 240:a&1&&xc(this.S)}};function Ji(a,b){a.Xd=b;a.kb=a.kb&-5|b&4;a.bb&&Hi(a.bb,!!(b&8),!(b&16))&&Ii(a,Fi(a.bb,!0))}
function Ii(a,b){0<=b&&(a.Rg=b,a.kb&=-2,a.kb|=256)}function Ki(a,b){a.gi=b;Ya(a.na,!!(b&2));b&1||xc(a.S)}k.en=function(a,b){this.ba(a,null,b,"CMOS_ADDR",O.Cf,this.we);return this.we};k.Ao=function(a,b,c){this.ba(a,b,c,"CMOS_ADDR",O.Cf);this.we=b;this.Vg=b&128?0:128};k.fn=function(a,b){var c=this.we&63,d=13>=c?Sh(this,c):this.pa[c];this.ba(a,null,b,"CMOS_DATA["+r(c)+"]",O.Cf,d);return d};
k.Bo=function(a,b,c){var d=this.we&63;this.ba(a,b,c,"CMOS_DATA["+r(d)+"]",O.Cf);a=this.pa;13>=d&&10>d&&(c=!1,this.pa[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12<b&&(b+=48),this.pa[11]&2||(12>=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.xn=function(a,b){this.ba(a,null,b,"MFG_DATA",O.sc,this.Mf);return this.Mf};k.Po=function(a,b,c){this.ba(a,b,c,"MFG_DATA",O.sc);this.Mf=b};k.Ro=function(a,b,c){this.ba(a,b,c,"NMI",O.sc);this.Vg=b};
k.Nn=function(a){var b=this.S.G>>8;this.X&&E(this.X,O.um)&&(Ec(this.X,26,a),Fc(this.S,a,function(a,d){return function(e){d=F(a.S)-d;var f,g=a.S.J&255,h=a.S.J>>8,m=a.S.J&255,n=a.S.J>>8;if(2==b||3==b)f=" CH(hour)="+u(h)+" CL(min)="+r(g)+" DH(sec)="+r(n);else if(4==b||5==b)f=" CX(year)="+u(a.S.I)+" DH(month)="+r(n)+" DL(day)="+r(m);Gc(a.X,26,e,d,f)}}(this,F(this.S))));return!0};function Ch(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function Kb(a,b){if(a.ni){void 0!==b?a.Bk=b:b=a.Bk&&a.S&&a.S.Nb;var c=Math.round(1193181/Ei(a,2));if(20>c||2E4<c)b=!1;b?a.od?(a.od.frequency.value=c,a.Qa("speaker set to "+c+"hz",O.Gg)):(a.od=a.ni.createOscillator(),a.od.type=1,a.od.connect(a.ni.destination),a.od.frequency.value=c,a.Qa("speaker on at "+c+"hz",O.Gg),a.od.noteOn(0)):a.od&&(a.od.noteOff(0),a.od.disconnect(),delete a.od,a.Qa("speaker off at "+c+"hz",O.Gg))}else b&&a.Qa("BEEP",O.Gg)}
k.Qa=function(a,b,c){this.X&&(null==b&&(b=O.sc),void 0!==c&&(b|=0==c?O.Ue:1==c?O.ak:6==c?O.Eg:0),E(this.X,b)&&this.X.message(a))};k.ba=function(a,b,c,d,e,f){this.X&&(null==e&&(e=O.sc),this.X.ba(this,a,b,c,d,e,f))};
a.Xb&~e|(c?0:e);break;case "sw2":a.qe=a.qe&~e|(c?0:e)}Th(a)}}(a,b[g])}function ei(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Th(a){var b=a.sa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(Xh(a,!0)+"Kb");d+=", "+c[Yh(a,!0)]+" Monitor";d+=", "+di(a,!0)+" Floppy Drives";if(void 0!==a.cd&&a.cd!=a.Xb||void 0!==a.Re&&a.Re!=a.qe)d+=" (Reset required)";b.innerHTML=d}}
function fi(a,b,c,d,e){var f=a.$a[b],g=f.Gb[c].Rb[f.qb];f.qb^=1;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.qb+"]",O.Fb,g);return g}function gi(a,b,c,d,e,f){var g=a.$a[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.qb+"]",O.Fb);a=g.Gb[c];a.Rb[g.qb]=a.jk[g.qb]=e;g.qb^=1}function hi(a,b,c,d,e){var f=a.$a[b],g=f.Gb[c].Zb[f.qb];f.qb^=1;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.qb+"]",O.Fb,g);return g}
function ii(a,b,c,d,e,f){var g=a.$a[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.qb+"]",O.Fb);a=g.Gb[c];a.Zb[g.qb]=a.Ic[g.qb]=e;g.qb^=1}function ji(a,b,c,d){var e=a.$a[b],f=e.ae|1;e.ae&=-16;a.ba(c,null,d,"DMA"+b+".STATUS",O.Fb,f);return f}function ki(a,b,c,d,e){var f=a.$a[b];a.ba(c,d,e,"DMA"+b+".REQ",O.Fb);a=d&3;f.ae=f.ae&~(16<<a)|(d&4)<<a+2;f.ok=d}function li(a,b,c,d,e){var f=a.$a[b];a.ba(c,d,e,"DMA"+b+".MASK",O.Fb);b=d&3;c=f.Gb[b];c.Fd=d&4?!0:!1;c.Fd||mi(a,f.ao+b)}
function ni(a,b,c,d,e){a.ba(c,d,e,"DMA"+b+".CLEAR",O.Fb);a=a.$a[b];for(b=0;b<a.Gb.length;b++)bi(a,b)}function oi(a,b,c,d,e){var f=a.$a[b].Gb[c].Zg;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",O.Fb,f);return f}function pi(a,b,c,d,e,f){a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",O.Fb);a.$a[b].Gb[c].Zg=e}function qi(a,b,c,d){var e=a.Pg[b];a.ba(c,null,d,"DMA.SPARE"+b+".PAGE",O.Fb,e);return e}function ri(a,b,c,d,e){a.ba(c,d,e,"DMA.SPARE"+b+".PAGE",O.Fb);a.Pg[b]=d}
function si(a,b,c,d,e){ci(a.$a[b>>2].Gb[b&3],c,d,e)}function mi(a,b,c){b=a.$a[b>>2].Gb[b&3];b.fh&&b.Ji&&b.Ih?(c&&(b.hh=c),b.Fd||md(a,b,!0)):c&&c(!0)}
function md(a,b,c){c&&(b.count=b.Zb[1]<<8|b.Zb[0],b.mm=b.mode&12,b.Ek=b.jd=!1);for(var d=!1;0<=b.count&&(c=b.Zg<<16|b.Rb[1]<<8|b.Rb[0],4==b.mm?(d=!0,function(c){b.Ji.call(b.fh,b.Ih,-1,function(f,g){0>f&&(b.Ek||(b.Ek=!0),f=255);b.Fd||db(a.na,c,f);(d=g)&&setTimeout(function(){ti(b)||md(a,b)},0)})}(c)):8==b.mm?(c=bb(a.na,c),0>b.Ji.call(b.fh,b.Ih,c)&&(b.jd=!0)):b.jd=!0),!d&&!ti(b););}
function ti(a){if(!a.jd&&0<=--a.count&&(a.mode&32?(a.Rb[0]--,0>a.Rb[0]&&(a.Rb[0]=255,a.Rb[1]--,0>a.Rb[1]&&(a.Rb[1]=255))):(a.Rb[0]++,255<a.Rb[0]&&(a.Rb[0]=0,a.Rb[1]++,255<a.Rb[1]&&(a.Rb[1]=0))),!a.Fd))return!1;var b=a.ia;b.ae=b.ae&~(16<<a.Jk)|1<<a.Jk;a.mode&16||(a.Fd=!0,a.fh=a.Ih=null);a.hh&&(a.hh(!a.jd),a.hh=null);return!0}function ui(a,b,c){var d=0,e=a.tb[b];if(void 0!==e.Of)switch(e.Of&3){case 2:d=e.Jb;break;case 3:d=e.Fc}a.ba(e.port,null,c,"PIC"+b,O.Ue,d);return d}
function vi(a,b,c,d){var e=a.tb[b];a.ba(e.port,c,d,"PIC"+b,O.Ue);if(c&16)e.Id=0,e.pd[e.Id++]=c,e.vd=0,e.ye=7,e.Jb=e.Fc=0,e.Of=10;else if(c&8)e.Of=c;else{var f=c&224;if(f&32){d=0;if(96==(f&96))d=1<<(c&7);else for(c=e.ye+1;;){c&=7;f=1<<c;if(e.Fc&f){d=f;break}if(c++==e.ye)break}e.Fc&d&&(e.Fc&=~d,wi(a,b))}else 192==f&&(e.ye=c&7)}}function xi(a,b,c){var d=a.tb[b],e=d.vd;a.ba(d.port+1,null,c,"PIC"+b,O.Ue,e);return e}
function yi(a,b,c,d){var e=a.tb[b];a.ba(e.port+1,c,d,"PIC"+b,O.Ue);e.Id<e.pd.length?(e.pd[e.Id++]=c,2==e.Id&&e.pd[0]&2&&e.Id++,3!=e.Id||e.pd[0]&1||e.Id++):(e.vd=c,d=a.S,d.$|=4,wi(a,b,b||253!=c?0:6))}function wi(a,b,c){b=a.tb[b];var d=((b.Fc|b.vd)^255)&b.Jb;a=a.S;a.ka&&(a.mb=d?a.mb|1:a.mb&-2);d&&c&&(b.kg=c)}function zi(a,b,c){var d=b>>3,e=a.tb[d];e.Jb|=1<<(b&7);e.kg=c||0;1==d&&(a.tb[0].Jb|=4);wi(a,d)}
function Ai(a,b){var c=b>>3,d=a.tb[c],e=1<<(b&7);d.Jb&e&&(d.Jb&=~e,1!=c||d.Jb||(a.tb[0].Jb&=-5),wi(a,c))}function kd(a,b){void 0===b&&(b=0);var c=-1,d=a.tb[b];if(d.kg)c=-2,d.kg--;else for(var e=d.Jb&((d.Fc|d.vd)^255),f=d.ye+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.pd[1]+f:kd(a,1);0<=c&&(d.Fc|=g,d.Jb&=~g);break}if(f++==d.ye)break}return c}function Bi(a,b,c){var d;d=a.Hb[b];d.de==d.gd&&Ci(a,b);if(d.Zf)return d.Wf[d.de++];Rh(a,b);d=d.Zb[d.de++];a.ba(64+b,null,c,"TIMER"+b,O.Ve,d);return d}
function Di(a,b,c,d){a.ba(64+b,c,d,"TIMER"+b,O.Ve);d=a.Hb[b];d.de==d.gd&&Ci(a,b);d.Ic[d.de++]=c;if(d.de==d.gd){d.ef&&0!=d.mode&&8!=d.mode||(d.Zf=!1,d.Zb[0]=d.Yc[0]=d.Ic[0],d.Zb[1]=d.Yc[1]=d.Ic[1],d.me=F(a.S,a.qh),d.ef=!0,d.kd=0!=d.mode,0==b&&Ai(a,0));2==b&&Kb(a);if(0==b){var e=Ei(a,0);2048<=e&&(a.S.Bh=Math.round(65536/e))}0==b&&0==d.mode&&16==d.wg&&(b=a.S,b.Ob&&(a=b.A-c*a.Tl,b.A-=a,b.Oc-=a))}}k.Kn=function(a,b){this.ba(a,null,b,"TIMER_CTRL",O.Ve);return null};
k.bp=function(a,b,c){this.ba(a,b,c,"TIMER_CTRL",O.Ve);this.mi=b;a=(b&192)>>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Hb[a];e.wg=b;e.mode=d;e.qk=c;e.Ic=[0,0];e.Zb=[0,0];e.Wf=[0,0];e.kd=!1;e.Zf=!1;e.ef=!1;Ci(this,a);0==a&&Ai(this,0);2==a&&255==this.tb[0].vd&&77==this.Ac&&(a=this.Hb[0],a.Yc[0]=a.Ic[0],a.Yc[1]=a.Ic[1],a.me=F(this.S,this.qh))}else Rh(this,a),b=this.Hb[a],b.Wf[0]=b.Zb[0],b.Wf[1]=b.Zb[1],b.Zf=!0,Ci(this,a)}};
function Ei(a,b){var c=a.Hb[b],d=c.Ic[1]<<8|c.Ic[0];d||(d=1==c.gd?256:65536);return d}function Ci(a,b){var c=a.Hb[b];c.de=32==c.wg?1:0;c.gd=48==c.wg?2:1}
function Rh(a,b,c){var d=a.Hb[b];if(d.ef&&(2!=b||a.Ac&1)){var e=F(a.S,a.qh),f=(e-d.me)/a.Tl|0;0>f&&(d.me=e,f=0);var g=Ei(a,b),h=a.Hb[b],m=h.Yc[1]<<8|h.Yc[0];m||(m=1==h.gd?256:65536);h=m-f;0==d.mode?(0>=h&&(h=0),h||(d.kd=!0,d.ef=!1,b||zi(a,0))):4==d.mode?(d.kd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Yc[0]=h&255,d.Yc[1]=h>>8,d.me=e,!b&&d.kd&&zi(a,0))):6==d.mode&&(h-=f,0>=h&&(d.kd=!d.kd,h=g+h,0>=h&&(h=g),d.Yc[0]=h&255,d.Yc[1]=h>>8,d.me=e,!b&&d.kd&&zi(a,0)));d.Zb[0]=h&255;d.Zb[1]=h>>8;c&&(a.me=0)}return d}
function Lb(a,b){for(var c=0;c<a.Hb.length;c++)Rh(a,c,b);if(a.Fa>=Gh){var c=0,d=a.S.Hd,e=F(a.S,a.qh);if(0<=a.fg&&(c=e-a.fg,Math.floor(c/d)&&60<=++a.pa[0]&&(a.pa[0]=0,60<=++a.pa[2]&&(a.pa[2]=0,24<=++a.pa[4])))){a.pa[4]=0;a.pa[6]=a.pa[6]%7+1;var f=a.pa[9],g=qa[a.pa[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.pa[7]>g&&(a.pa[7]=1,12<++a.pa[8]&&(a.pa[8]=1,a.pa[9]=(a.pa[9]+1)%100))}a.fg=e-c%d}}
k.Cn=function(a,b){var c=this.Yg;this.Pf&16&&(this.Ac&128?c=this.cd:this.bb&&(c=Fi(this.bb)));this.ba(a,null,b,"PPI_A",O.uc,c);return c};k.Vo=function(a,b,c){this.ba(a,b,c,"PPI_A",O.uc);this.Yg=b};k.Dn=function(a,b){var c=this.Ac;this.ba(a,null,b,"PPI_B",O.uc,c);return c};k.Wo=function(a,b,c){this.ba(a,b,c,"PPI_B",O.uc);Gi(this,b);this.bb&&Hi(this.bb,b&128?!1:!0,b&64?!0:!1)};function Gi(a,b){var c=!!(b&2),d=!!(a.Ac&2);a.Ac=b;c!=d&&Kb(a,c)}
k.En=function(a,b){var c=0,c=this.Fa==Bh?this.Ac&4?c|this.Re&15:c|this.Re>>4&1:this.Ac&8?c|this.cd>>4:c|this.cd&15;this.Ac&1&&Rh(this,2).kd&&(c=this.Ac&2?c|32:c|16);this.ba(a,null,b,"PPI_C",O.uc|O.Hg,c);return c};k.Xo=function(a,b,c){this.ba(a,b,c,"PPI_C",O.uc);this.ki=b};k.Fn=function(a,b){var c=this.Pf;this.ba(a,null,b,"PPI_CTRL",O.uc,c);return c};k.Yo=function(a,b,c){this.ba(a,b,c,"PPI_CTRL",O.uc);this.Pf=b};
k.Sm=function(a,b){var c=this.Tg;this.ba(a,null,b,"8042_OUTBUFF",O.Te,c);this.jb&=-258;var d=this.bb&&Fi(this.bb,!0);d&&Ii(this,d);return c};k.po=function(a,b,c){this.ba(a,b,c,"8042_INBUF.DATA",O.Te);if(this.jb&8)switch(this.ud){case 96:Ji(this,b);break;case 209:Ki(this,b);break;default:if(Ji(this,this.Xd&-17),this.bb){a=-1;switch(b){case 255:a=250,Li(this.bb)}Ii(this,a)}}this.ud=b;this.jb&=-9};k.Tm=function(a,b){var c=this.Ac&-209|(F(this.S)&64?16:0);this.ba(a,null,b,"8042_RWREG",O.Te|O.um,c);return c};
k.qo=function(a,b,c){this.ba(a,b,c,"8042_RWREG",O.Te);Gi(this,b)};k.Um=function(a,b){this.ba(a,null,b,"8042_STATUS",O.Te,this.jb);var c=this.jb&255;this.jb&256&&(this.jb|=1,this.jb&=-257);return c};
k.oo=function(a,b,c){this.ba(a,b,c,"8042_INBUFF.CMD",O.Te);this.ud=b;this.jb|=8;a=0;240<=this.ud&&(a=this.ud^15,this.ud=240);switch(this.ud){case 192:Ii(this,this.we);break;case 173:Ji(this,this.Xd|16);break;case 174:Ji(this,this.Xd&-17);break;case 170:this.bb&&Mi(this.bb,!0);Ji(this,this.Xd|16);Ii(this,85);Ki(this,3);break;case 224:Ii(this,this.Xd&16?0:1);break;case 240:a&1&&xc(this.S)}};function Ji(a,b){a.Xd=b;a.jb=a.jb&-5|b&4;a.bb&&Hi(a.bb,!!(b&8),!(b&16))&&Ii(a,Fi(a.bb,!0))}
function Ii(a,b){0<=b&&(a.Tg=b,a.jb&=-2,a.jb|=256)}function Ki(a,b){a.ii=b;Ya(a.na,!!(b&2));b&1||xc(a.S)}k.hn=function(a,b){this.ba(a,null,b,"CMOS_ADDR",O.Df,this.xe);return this.xe};k.Do=function(a,b,c){this.ba(a,b,c,"CMOS_ADDR",O.Df);this.xe=b;this.Xg=b&128?0:128};k.jn=function(a,b){var c=this.xe&63,d=13>=c?Sh(this,c):this.pa[c];this.ba(a,null,b,"CMOS_DATA["+r(c)+"]",O.Df,d);return d};
k.Eo=function(a,b,c){var d=this.xe&63;this.ba(a,b,c,"CMOS_DATA["+r(d)+"]",O.Df);a=this.pa;13>=d&&10>d&&(c=!1,this.pa[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12<b&&(b+=48),this.pa[11]&2||(12>=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.An=function(a,b){this.ba(a,null,b,"MFG_DATA",O.uc,this.Nf);return this.Nf};k.So=function(a,b,c){this.ba(a,b,c,"MFG_DATA",O.uc);this.Nf=b};k.Uo=function(a,b,c){this.ba(a,b,c,"NMI",O.uc);this.Xg=b};
k.Qn=function(a){var b=this.S.G>>8;this.X&&D(this.X,O.wm)&&(Ec(this.X,26,a),Fc(this.S,a,function(a,d){return function(e){d=F(a.S)-d;var f,g=a.S.J&255,h=a.S.J>>8,m=a.S.J&255,n=a.S.J>>8;if(2==b||3==b)f=" CH(hour)="+u(h)+" CL(min)="+r(g)+" DH(sec)="+r(n);else if(4==b||5==b)f=" CX(year)="+u(a.S.I)+" DH(month)="+r(n)+" DL(day)="+r(m);Gc(a.X,26,e,d,f)}}(this,F(this.S))));return!0};function Ch(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function Kb(a,b){if(a.pi){void 0!==b?a.Dk=b:b=a.Dk&&a.S&&a.S.Ob;var c=Math.round(1193181/Ei(a,2));if(20>c||2E4<c)b=!1;b?a.od?(a.od.frequency.value=c,a.Qa("speaker set to "+c+"hz",O.Ig)):(a.od=a.pi.createOscillator(),a.od.type=1,a.od.connect(a.pi.destination),a.od.frequency.value=c,a.Qa("speaker on at "+c+"hz",O.Ig),a.od.noteOn(0)):a.od&&(a.od.noteOff(0),a.od.disconnect(),delete a.od,a.Qa("speaker off at "+c+"hz",O.Ig))}else b&&a.Qa("BEEP",O.Ig)}
k.Qa=function(a,b,c){this.X&&(null==b&&(b=O.uc),void 0!==c&&(b|=0==c?O.Ve:1==c?O.dk:6==c?O.Fg:0),D(this.X,b)&&this.X.message(a))};k.ba=function(a,b,c,d,e,f){this.X&&(null==e&&(e=O.uc),this.X.ba(this,a,b,c,d,e,f))};
var Jh={0:function(a,b){return fi(this,0,0,a,b)},1:function(a,b){return hi(this,0,0,a,b)},2:function(a,b){return fi(this,0,1,a,b)},3:function(a,b){return hi(this,0,1,a,b)},4:function(a,b){return fi(this,0,2,a,b)},5:function(a,b){return hi(this,0,2,a,b)},6:function(a,b){return fi(this,0,3,a,b)},7:function(a,b){return hi(this,0,3,a,b)},8:function(a,b){return ji(this,0,a,b)},32:function(a,b){return ui(this,0,b)},33:function(a,b){return xi(this,0,b)},64:function(a,b){return Bi(this,0,b)},65:function(a,
b){return Bi(this,1,b)},66:function(a,b){return Bi(this,2,b)},67:O.prototype.Hn,129:function(a,b){return oi(this,0,2,a,b)},130:function(a,b){return oi(this,0,3,a,b)},131:function(a,b){return oi(this,0,1,a,b)},135:function(a,b){return oi(this,0,0,a,b)}},Lh={96:O.prototype.zn,97:O.prototype.An,98:O.prototype.Bn,99:O.prototype.Cn},Nh={96:O.prototype.Pm,97:O.prototype.Qm,100:O.prototype.Rm,112:O.prototype.en,113:O.prototype.fn,128:O.prototype.xn,132:function(a,b){return qi(this,0,a,b)},133:function(a,
b){return Bi(this,1,b)},66:function(a,b){return Bi(this,2,b)},67:O.prototype.Kn,129:function(a,b){return oi(this,0,2,a,b)},130:function(a,b){return oi(this,0,3,a,b)},131:function(a,b){return oi(this,0,1,a,b)},135:function(a,b){return oi(this,0,0,a,b)}},Lh={96:O.prototype.Cn,97:O.prototype.Dn,98:O.prototype.En,99:O.prototype.Fn},Nh={96:O.prototype.Sm,97:O.prototype.Tm,100:O.prototype.Um,112:O.prototype.hn,113:O.prototype.jn,128:O.prototype.An,132:function(a,b){return qi(this,0,a,b)},133:function(a,
b){return qi(this,1,a,b)},134:function(a,b){return qi(this,2,a,b)},136:function(a,b){return qi(this,3,a,b)},137:function(a,b){return oi(this,1,2,a,b)},138:function(a,b){return oi(this,1,3,a,b)},139:function(a,b){return oi(this,1,1,a,b)},140:function(a,b){return qi(this,4,a,b)},141:function(a,b){return qi(this,5,a,b)},142:function(a,b){return qi(this,6,a,b)},143:function(a,b){return oi(this,1,0,a,b)},160:function(a,b){return ui(this,1,b)},161:function(a,b){return xi(this,1,b)},192:function(a,b){return fi(this,
1,0,a,b)},194:function(a,b){return hi(this,1,0,a,b)},196:function(a,b){return fi(this,1,1,a,b)},198:function(a,b){return hi(this,1,1,a,b)},200:function(a,b){return fi(this,1,2,a,b)},202:function(a,b){return hi(this,1,2,a,b)},204:function(a,b){return fi(this,1,3,a,b)},206:function(a,b){return hi(this,1,3,a,b)},208:function(a,b){return ji(this,1,a,b)}},Kh={0:function(a,b,c){gi(this,0,0,a,b,c)},1:function(a,b,c){ii(this,0,0,a,b,c)},2:function(a,b,c){gi(this,0,1,a,b,c)},3:function(a,b,c){ii(this,0,1,
a,b,c)},4:function(a,b,c){gi(this,0,2,a,b,c)},5:function(a,b,c){ii(this,0,2,a,b,c)},6:function(a,b,c){gi(this,0,3,a,b,c)},7:function(a,b,c){ii(this,0,3,a,b,c)},8:function(a,b,c){this.ba(a,b,c,"DMA0.CMD",O.Fb);this.$a[0].hi=b},9:function(a,b,c){ki(this,0,a,b,c)},10:function(a,b,c){li(this,0,a,b,c)},11:function(a,b,c){this.ba(a,b,c,"DMA0.MODE",O.Fb);this.$a[0].Gb[b&3].mode=b},12:function(a,b,c){this.ba(a,b,c,"DMA0.INDEX",O.Fb);this.$a[0].qb=0},13:function(a,b,c){ni(this,0,a,b,c)},32:function(a,b,c){vi(this,
0,b,c)},33:function(a,b,c){yi(this,0,b,c)},64:function(a,b,c){Di(this,0,b,c)},65:function(a,b,c){Di(this,1,b,c)},66:function(a,b,c){Di(this,2,b,c)},67:O.prototype.Zo,129:function(a,b,c){pi(this,0,2,a,b,c)},130:function(a,b,c){pi(this,0,3,a,b,c)},131:function(a,b,c){pi(this,0,1,a,b,c)},135:function(a,b,c){pi(this,0,0,a,b,c)}},Mh={96:O.prototype.So,97:O.prototype.To,98:O.prototype.Uo,99:O.prototype.Vo,160:O.prototype.Ro},Oh={96:O.prototype.mo,97:O.prototype.no,100:O.prototype.lo,112:O.prototype.Ao,
113:O.prototype.Bo,128:O.prototype.Po,132:function(a,b,c){ri(this,0,a,b,c)},133:function(a,b,c){ri(this,1,a,b,c)},134:function(a,b,c){ri(this,2,a,b,c)},136:function(a,b,c){ri(this,3,a,b,c)},137:function(a,b,c){pi(this,1,2,a,b,c)},138:function(a,b,c){pi(this,1,3,a,b,c)},139:function(a,b,c){pi(this,1,1,a,b,c)},140:function(a,b,c){ri(this,4,a,b,c)},141:function(a,b,c){ri(this,5,a,b,c)},142:function(a,b,c){ri(this,6,a,b,c)},143:function(a,b,c){pi(this,1,0,a,b,c)},160:function(a,b,c){vi(this,1,b,c)},161:function(a,
b,c){yi(this,1,b,c)},192:function(a,b,c){gi(this,1,0,a,b,c)},194:function(a,b,c){ii(this,1,0,a,b,c)},196:function(a,b,c){gi(this,1,1,a,b,c)},198:function(a,b,c){ii(this,1,1,a,b,c)},200:function(a,b,c){gi(this,1,2,a,b,c)},202:function(a,b,c){ii(this,1,2,a,b,c)},204:function(a,b,c){gi(this,1,3,a,b,c)},206:function(a,b,c){ii(this,1,3,a,b,c)},208:function(a,b,c){this.ba(a,b,c,"DMA1.CMD",O.Fb);this.$a[1].hi=b},210:function(a,b,c){ki(this,1,a,b,c)},212:function(a,b,c){li(this,1,a,b,c)},214:function(a,b,
a,b,c)},4:function(a,b,c){gi(this,0,2,a,b,c)},5:function(a,b,c){ii(this,0,2,a,b,c)},6:function(a,b,c){gi(this,0,3,a,b,c)},7:function(a,b,c){ii(this,0,3,a,b,c)},8:function(a,b,c){this.ba(a,b,c,"DMA0.CMD",O.Fb);this.$a[0].ji=b},9:function(a,b,c){ki(this,0,a,b,c)},10:function(a,b,c){li(this,0,a,b,c)},11:function(a,b,c){this.ba(a,b,c,"DMA0.MODE",O.Fb);this.$a[0].Gb[b&3].mode=b},12:function(a,b,c){this.ba(a,b,c,"DMA0.INDEX",O.Fb);this.$a[0].qb=0},13:function(a,b,c){ni(this,0,a,b,c)},32:function(a,b,c){vi(this,
0,b,c)},33:function(a,b,c){yi(this,0,b,c)},64:function(a,b,c){Di(this,0,b,c)},65:function(a,b,c){Di(this,1,b,c)},66:function(a,b,c){Di(this,2,b,c)},67:O.prototype.bp,129:function(a,b,c){pi(this,0,2,a,b,c)},130:function(a,b,c){pi(this,0,3,a,b,c)},131:function(a,b,c){pi(this,0,1,a,b,c)},135:function(a,b,c){pi(this,0,0,a,b,c)}},Mh={96:O.prototype.Vo,97:O.prototype.Wo,98:O.prototype.Xo,99:O.prototype.Yo,160:O.prototype.Uo},Oh={96:O.prototype.po,97:O.prototype.qo,100:O.prototype.oo,112:O.prototype.Do,
113:O.prototype.Eo,128:O.prototype.So,132:function(a,b,c){ri(this,0,a,b,c)},133:function(a,b,c){ri(this,1,a,b,c)},134:function(a,b,c){ri(this,2,a,b,c)},136:function(a,b,c){ri(this,3,a,b,c)},137:function(a,b,c){pi(this,1,2,a,b,c)},138:function(a,b,c){pi(this,1,3,a,b,c)},139:function(a,b,c){pi(this,1,1,a,b,c)},140:function(a,b,c){ri(this,4,a,b,c)},141:function(a,b,c){ri(this,5,a,b,c)},142:function(a,b,c){ri(this,6,a,b,c)},143:function(a,b,c){pi(this,1,0,a,b,c)},160:function(a,b,c){vi(this,1,b,c)},161:function(a,
b,c){yi(this,1,b,c)},192:function(a,b,c){gi(this,1,0,a,b,c)},194:function(a,b,c){ii(this,1,0,a,b,c)},196:function(a,b,c){gi(this,1,1,a,b,c)},198:function(a,b,c){ii(this,1,1,a,b,c)},200:function(a,b,c){gi(this,1,2,a,b,c)},202:function(a,b,c){ii(this,1,2,a,b,c)},204:function(a,b,c){gi(this,1,3,a,b,c)},206:function(a,b,c){ii(this,1,3,a,b,c)},208:function(a,b,c){this.ba(a,b,c,"DMA1.CMD",O.Fb);this.$a[1].ji=b},210:function(a,b,c){ki(this,1,a,b,c)},212:function(a,b,c){li(this,1,a,b,c)},214:function(a,b,
c){this.ba(a,b,c,"DMA1.MODE",O.Fb);this.$a[1].Gb[b&3].mode=b},216:function(a,b,c){this.ba(a,b,c,"DMA1.INDEX",O.Fb);this.$a[1].qb=0},218:function(a,b,c){ni(this,1,a,b,c)}};Ba(function(){for(var a=B(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new O(d);Oa(d,c);Th(d)}});
function Ni(a){x.call(this,"ROM",a,Ni);this.yb=null;this.hk=a.addr;this.Qh=a.size;this.xm=a.alias;this.wg=a.file;this.Ik=a.notify;if(this.wg){a=this.wg;var b=fa(this.wg);"json"!=b&&"hex"!=b&&(a=sa()+"/api/v1/dump?file="+this.wg+"&format=bytes&decimal=true");ra(a,!0,null,this,Ni.prototype.fo)}}y(x,Ni);Ni.prototype.mc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;Oi(this)};Ni.prototype.$b=function(){this.bi&&(this.X&&Pi(this.X,this.hk,this.Qh,this.bi),delete this.bi);return!0};Ni.prototype.Wb=function(){return!0};
Ni.prototype.fo=function(a,b,c){if(c)this.Ga("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.yb=e;else if(f)for(this.yb=Array(4*f.length),c=b=0;b<f.length;b++)this.yb[c++]=f[b]&255,this.yb[c++]=f[b]>>8&255,this.yb[c++]=f[b]>>16&255,this.yb[c++]=f[b]>>24&255;else this.yb=d;this.bi=d.symbols;if(!this.yb.length){w("Empty ROM: "+a);return}if(1==this.yb.length){w(this.yb[0]);return}}catch(g){this.Ga("ROM data error: "+
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.yb=Array(a.length),d=0;d<a.length;d++)this.yb[d]=parseInt(a[d],16);Oi(this)}};function Oi(a){if(!Ra(a))if(!a.wg)a.Ta();else if(a.yb&&a.na){if(a.yb.length!=a.Qh)Sa(a,"ROM size (0x"+p(a.yb.length)+") does not match specified size (0x"+p(a.Qh)+")");else if(Qi(a,a.hk)&&Qi(a,a.xm)){if(a.Ik){var b=Ma(a.Ik,a.id);b&&("ega"==b.Fa&&Ri(b,a.yb,[8752,12640],8),b.Ta())}delete a.yb}a.Ta()}}
function Qi(a,b){if(null==b)return!0;if(Za(a.na,b,a.Qh,!0)){for(var c=0;c<a.yb.length;c++)db(a.na,b+c,a.yb[c]);return!0}return!1}Ba(function(){for(var a=B(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ni(d);Oa(d,c)}});function Si(a){x.call(this,"RAM",a,Si);this.Pg=a.addr;this.Od=a.size;this.Gm=a.test;this.Em=!!this.Od;this.hh=!1}y(x,Si);Si.prototype.mc=function(a,b,c){this.na=b;this.S=c;this.Da=a;this.ka=C(a,"ChipSet");this.Ta()};
Si.prototype.$b=function(a,b){b||this.reset();return!0};Si.prototype.Wb=function(){return!0};
Si.prototype.reset=function(){if(!this.Pg&&!this.Em&&this.ka){var a=1024*Xh(this.ka);this.Od&&a!=this.Od&&(ab(this.na,this.Pg,this.Od),this.hh=!1);this.Od=a}!this.hh&&this.Od&&Za(this.na,this.Pg,this.Od)&&(this.hh=!0,this.status(Math.floor(this.Od/1024)+"Kb"));if(this.hh){if(this.Gm||eb(this.na,1138,4660),this.ka&&(a=this.ka,a.pa)){var b=1048576>this.Pg?21:23,c=a.pa[b]|a.pa[b+1]<<8,c=c+(this.Od>>10);a.pa[b]=c&255;a.pa[b+1]=c>>8;ai(a)}}else w("No RAM allocated")};
Ba(function(){for(var a=B(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Si(d);Oa(d,c)}});function Xi(a){x.call(this,"Keyboard",a,Xi);this.ai={};this.Vn=250;this.Wn=100;this.Ta()}y(x,Xi);
function Ni(a){x.call(this,"ROM",a,Ni);this.yb=null;this.kk=a.addr;this.Sh=a.size;this.zm=a.alias;this.xg=a.file;this.Kk=a.notify;if(this.xg){a=this.xg;var b=fa(this.xg);"json"!=b&&"hex"!=b&&(a=sa()+"/api/v1/dump?file="+this.xg+"&format=bytes&decimal=true");ra(a,!0,null,this,Ni.prototype.jo)}}y(x,Ni);Ni.prototype.oc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;Oi(this)};Ni.prototype.ac=function(){this.di&&(this.X&&Pi(this.X,this.kk,this.Sh,this.di),delete this.di);return!0};Ni.prototype.Wb=function(){return!0};
Ni.prototype.jo=function(a,b,c){if(c)this.Ga("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.yb=e;else if(f)for(this.yb=Array(4*f.length),c=b=0;b<f.length;b++)this.yb[c++]=f[b]&255,this.yb[c++]=f[b]>>8&255,this.yb[c++]=f[b]>>16&255,this.yb[c++]=f[b]>>24&255;else this.yb=d;this.di=d.symbols;if(!this.yb.length){w("Empty ROM: "+a);return}if(1==this.yb.length){w(this.yb[0]);return}}catch(g){this.Ga("ROM data error: "+
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.yb=Array(a.length),d=0;d<a.length;d++)this.yb[d]=parseInt(a[d],16);Oi(this)}};function Oi(a){if(!Ra(a))if(!a.xg)a.Ta();else if(a.yb&&a.na){if(a.yb.length!=a.Sh)Sa(a,"ROM size (0x"+p(a.yb.length)+") does not match specified size (0x"+p(a.Sh)+")");else if(Qi(a,a.kk)&&Qi(a,a.zm)){if(a.Kk){var b=Ma(a.Kk,a.id);b&&("ega"==b.Fa&&Ri(b,a.yb,[8752,12640],8),b.Ta())}delete a.yb}a.Ta()}}
function Qi(a,b){if(null==b)return!0;if(Za(a.na,b,a.Sh,!0)){for(var c=0;c<a.yb.length;c++)db(a.na,b+c,a.yb[c]);return!0}return!1}Ba(function(){for(var a=B(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ni(d);Oa(d,c)}});function Si(a){x.call(this,"RAM",a,Si);this.Rg=a.addr;this.Od=a.size;this.Jm=a.test;this.Hm=!!this.Od;this.jh=!1}y(x,Si);Si.prototype.oc=function(a,b,c){this.na=b;this.S=c;this.Da=a;this.ka=C(a,"ChipSet");this.Ta()};
Si.prototype.ac=function(a,b){b||this.reset();return!0};Si.prototype.Wb=function(){return!0};
Si.prototype.reset=function(){if(!this.Rg&&!this.Hm&&this.ka){var a=1024*Xh(this.ka);this.Od&&a!=this.Od&&(ab(this.na,this.Rg,this.Od),this.jh=!1);this.Od=a}!this.jh&&this.Od&&Za(this.na,this.Rg,this.Od)&&(this.jh=!0,this.status(Math.floor(this.Od/1024)+"Kb"));if(this.jh){if(this.Jm||eb(this.na,1138,4660),this.ka&&(a=this.ka,a.pa)){var b=1048576>this.Rg?21:23,c=a.pa[b]|a.pa[b+1]<<8,c=c+(this.Od>>10);a.pa[b]=c&255;a.pa[b+1]=c>>8;ai(a)}}else w("No RAM allocated")};
Ba(function(){for(var a=B(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Si(d);Oa(d,c)}});function Xi(a){x.call(this,"Keyboard",a,Xi);this.ci={};this.Yn=250;this.Zn=100;this.Ta()}y(x,Xi);
var Yi={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,backspace:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,squote:40,bquote:41,lshift:42,bslash:43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,rshift:54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,home:71,"up-arrow":72,"page-up":73,"num-minus":74,
"left-arrow":75,center:76,"right-arrow":77,"num-plus":78,end:79,"down-arrow":80,"page-down":81,ins:82,del:83},Zi={tab:9,esc:27,rshift:224,lshift:240,ctrl:241,alt:242,"caps-lock":244,f1:336,f2:337,f3:338,f4:339,f5:340,f6:341,f7:342,f8:343,f9:344,f10:345,"left-arrow":261,"up-arrow":262,"right-arrow":263,"down-arrow":264,"ctrl-c":3,"ctrl-break":254,"ctrl-alt-del":255},P=[];P[32]=57;P[49]=2;P[33]=61442;P[50]=3;P[64]=61443;P[51]=4;P[35]=61444;P[52]=5;P[36]=61445;P[53]=6;P[37]=61446;P[54]=7;P[94]=61447;
P[55]=8;P[38]=61448;P[56]=9;P[42]=61449;P[57]=10;P[40]=61450;P[48]=11;P[41]=61451;P[45]=12;P[95]=61452;P[61]=13;P[43]=61453;P[113]=16;P[81]=61456;P[119]=17;P[87]=61457;P[101]=18;P[69]=61458;P[114]=19;P[82]=61459;P[116]=20;P[84]=61460;P[121]=21;P[89]=61461;P[117]=22;P[85]=61462;P[105]=23;P[73]=61463;P[111]=24;P[79]=61464;P[112]=25;P[80]=61465;P[91]=26;P[123]=61466;P[93]=27;P[125]=61467;P[97]=30;P[65]=61470;P[115]=31;P[83]=61471;P[100]=32;P[68]=61472;P[102]=33;P[70]=61473;P[103]=34;P[71]=61474;
P[104]=35;P[72]=61475;P[106]=36;P[74]=61476;P[107]=37;P[75]=61477;P[108]=38;P[76]=61478;P[59]=39;P[58]=61479;P[39]=40;P[34]=61480;P[96]=41;P[126]=61481;P[92]=43;P[124]=61483;P[122]=44;P[90]=61484;P[120]=45;P[88]=61485;P[99]=46;P[67]=61486;P[118]=47;P[86]=61487;P[98]=48;P[66]=61488;P[110]=49;P[78]=61489;P[109]=50;P[77]=61490;P[44]=51;P[60]=61491;P[46]=52;P[62]=61492;P[47]=53;P[63]=61493;P[8]=14;P[9]=15;P[13]=28;P[27]=1;P[240]=42;P[224]=54;P[241]=29;P[242]=56;P[244]=58;P[336]=59;P[337]=60;P[338]=61;
P[339]=62;P[340]=63;P[341]=64;P[342]=65;P[343]=66;P[344]=67;P[345]=68;P[261]=75;P[262]=72;P[263]=77;P[264]=80;P[254]=61766;P[255]=15921491;k=Xi.prototype;
k.xb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.sa[a])switch(c){case "kbd":return this.sa[a]=d,d.onkeydown=function(a){return $i(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.Ea&32?e.Ea&=-33:b=e.Ea&12?!1:!aj(e,a);return b},d.onkeyup=function(a){return $i(e,a,!1)},!0;default:if(void 0!==Zi[c]&&"button"==b)return this.sa[a]=d,d.onclick=function(a,b,c){return function(){a.S&&a.S.Md();return!aj(a,c)}}(this,c,Zi[c]),!0;if(void 0!==Yi[c])return this.sa[a]=
d,b=function(a,b,c){return function(){bj(a,c)}}(this,c,Yi[c]),c=function(a,b,c){return function(){bj(a,c)}}(this,c,Yi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.mc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;this.Da=a;this.ka=C(a,"ChipSet")};k.Ta=function(){this.zk=(this.Om=va("iOS"))||va("Android");this.Qa("mobile keyboard support: "+(this.zk?"true":"false"));return x.prototype.Ta.call(this)};
function Li(a){a.Qa("keyboard reset",!0);a.xc=[170];a.ka&&zi(a.ka,1,4)}function Hi(a,b,c){var d=!1;a.yi!==c&&(a.yi=a.Ei=c);a.lh!==b&&(a.lh=b)&&!a.Ei&&Mi(a);a.lh&&a.Ei&&(Li(a),a.Ei=!1,d=!0);return d}function Fi(a,b){var c=0;a.xc.length&&(c=a.xc[0],a.Qa("scan code "+r(c)+" delivered"),b&&Mi(a));return c}function Mi(a,b){0<a.xc.length&&(b?a.xc=[]:(a.xc.shift(),0<a.xc.length&&a.ka&&zi(a.ka,1)))}k.$b=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};
k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ie();this.Ea=0;this.xc=[];if(this.qd)for(var a in this.qd)ba(a)||this.qd[a]&&clearTimeout(this.qd[a]);this.qd=[];this.Wl=this.Me=0};k.save=function(){var a=new H(this);a.set(0,this.Vj());return a.data()};k.restore=function(a){return this.ie(a[0])};k.ie=function(a){var b=0;void 0===a&&(a=[]);this.yi=a[b++];this.lh=a[b];return!0};k.Vj=function(){var a=0,b=[];b[a++]=this.yi;b[a]=this.lh;return b};
function bj(a,b){var c=b&127,d=c==b;if(a.xc)if(20>a.xc.length){if(!(!d&&!a.ai[c]||d&&a.ai[c])){a.ai[c]=d;a.Qa("scan code "+r(b)+" buffered");a.xc.push(b);1==a.xc.length&&a.ka&&zi(a.ka,1);for(var e in Yi)if(Yi[e]==c){(c=a.sa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.xc.length&&a.xc.push(255),a.Qa("scan code buffer overflow")}function cj(a,b){var c=b?a.Wn:a.Vn;a.S&&a.S.ld&&(c/=a.S.ld);return c}
function dj(a,b){!a.Me||void 0!==b&&b==a.Me||(clearTimeout(a.qd[a.Me]),ej(a,a.Me,!1))}
function $i(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Wl=f);240==f+224?(a.Ea&=-2,c&&(a.Ea|=1),f+=224,e=!1):241==f+224?(a.Ea&=-5,c&&(a.Ea|=4),f+=224,e=!1):242==f+224?(a.Ea&=-9,c&&(a.Ea|=8),f+=224,e=!1):244==f+224?(a.Ea&=-17,c&&(a.Ea|=16),f+=224,d=aj(a,f)):91==f?(a.Ea&=-33,c&&(a.Ea|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.Ea&12)&&(f=254),d=c?!aj(a,f):!1):void 0!==P[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.Ea&=-33,a.zk||f!=a.Wl||dj(a));void 0===d&&(d=!ej(a,f,c));return d}
function aj(a,b,c){var d=!1;dj(a,b);ej(a,b,!0)&&(c?ej(a,b,!1):(c=!1,a.qd[b]&&(clearTimeout(a.qd[b]),c=!0),c=cj(a,c),a.qd[a.Me=b]=setTimeout(function(a){return function(){ej(a,b,!1)}}(a),c)),d=!0);return d}
function ej(a,b,c){var d=!1;c||(a.qd[b]=null,a.Me==b&&(a.Me=0));var e=P[b];void 0===e&&1<=b&&26>=b&&(e=P[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.Ea&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.Ea&17||(d=42):224==f?a.Ea&18||(d=54):241==f?a.Ea&4||(d=29):242==f&&(a.Ea&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;c<b.length;c++)bj(a,b[c]);d=!0}return d}k.Qa=function(a,b){this.X&&E(this.X,this.X.ak|(b?this.X.bk:0))&&this.X.message(a)};
k.xb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.sa[a])switch(c){case "kbd":return this.sa[a]=d,d.onkeydown=function(a){return $i(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.Ea&32?e.Ea&=-33:b=e.Ea&12?!1:!aj(e,a);return b},d.onkeyup=function(a){return $i(e,a,!1)},!0;default:if(void 0!==Zi[c]&&"button"==b)return this.sa[a]=d,d.onclick=function(a,b,c){return function(){a.S&&a.S.Nd();return!aj(a,c)}}(this,c,Zi[c]),!0;if(void 0!==Yi[c])return this.sa[a]=
d,b=function(a,b,c){return function(){bj(a,c)}}(this,c,Yi[c]),c=function(a,b,c){return function(){bj(a,c)}}(this,c,Yi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.oc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;this.Da=a;this.ka=C(a,"ChipSet")};k.Ta=function(){this.Bk=(this.Rm=va("iOS"))||va("Android");this.Qa("mobile keyboard support: "+(this.Bk?"true":"false"));return x.prototype.Ta.call(this)};
function Li(a){a.Qa("keyboard reset",!0);a.zc=[170];a.ka&&zi(a.ka,1,4)}function Hi(a,b,c){var d=!1;a.Ai!==c&&(a.Ai=a.Gi=c);a.nh!==b&&(a.nh=b)&&!a.Gi&&Mi(a);a.nh&&a.Gi&&(Li(a),a.Gi=!1,d=!0);return d}function Fi(a,b){var c=0;a.zc.length&&(c=a.zc[0],a.Qa("scan code "+r(c)+" delivered"),b&&Mi(a));return c}function Mi(a,b){0<a.zc.length&&(b?a.zc=[]:(a.zc.shift(),0<a.zc.length&&a.ka&&zi(a.ka,1)))}k.ac=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};
k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ie();this.Ea=0;this.zc=[];if(this.qd)for(var a in this.qd)ba(a)||this.qd[a]&&clearTimeout(this.qd[a]);this.qd=[];this.Yl=this.Ne=0};k.save=function(){var a=new H(this);a.set(0,this.Zj());return a.data()};k.restore=function(a){return this.ie(a[0])};k.ie=function(a){var b=0;void 0===a&&(a=[]);this.Ai=a[b++];this.nh=a[b];return!0};k.Zj=function(){var a=0,b=[];b[a++]=this.Ai;b[a]=this.nh;return b};
function bj(a,b){var c=b&127,d=c==b;if(a.zc)if(20>a.zc.length){if(!(!d&&!a.ci[c]||d&&a.ci[c])){a.ci[c]=d;a.Qa("scan code "+r(b)+" buffered");a.zc.push(b);1==a.zc.length&&a.ka&&zi(a.ka,1);for(var e in Yi)if(Yi[e]==c){(c=a.sa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.zc.length&&a.zc.push(255),a.Qa("scan code buffer overflow")}function cj(a,b){var c=b?a.Zn:a.Yn;a.S&&a.S.ld&&(c/=a.S.ld);return c}
function dj(a,b){!a.Ne||void 0!==b&&b==a.Ne||(clearTimeout(a.qd[a.Ne]),ej(a,a.Ne,!1))}
function $i(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Yl=f);240==f+224?(a.Ea&=-2,c&&(a.Ea|=1),f+=224,e=!1):241==f+224?(a.Ea&=-5,c&&(a.Ea|=4),f+=224,e=!1):242==f+224?(a.Ea&=-9,c&&(a.Ea|=8),f+=224,e=!1):244==f+224?(a.Ea&=-17,c&&(a.Ea|=16),f+=224,d=aj(a,f)):91==f?(a.Ea&=-33,c&&(a.Ea|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.Ea&12)&&(f=254),d=c?!aj(a,f):!1):void 0!==P[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.Ea&=-33,a.Bk||f!=a.Yl||dj(a));void 0===d&&(d=!ej(a,f,c));return d}
function aj(a,b,c){var d=!1;dj(a,b);ej(a,b,!0)&&(c?ej(a,b,!1):(c=!1,a.qd[b]&&(clearTimeout(a.qd[b]),c=!0),c=cj(a,c),a.qd[a.Ne=b]=setTimeout(function(a){return function(){ej(a,b,!1)}}(a),c)),d=!0);return d}
function ej(a,b,c){var d=!1;c||(a.qd[b]=null,a.Ne==b&&(a.Ne=0));var e=P[b];void 0===e&&1<=b&&26>=b&&(e=P[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.Ea&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.Ea&17||(d=42):224==f?a.Ea&18||(d=54):241==f?a.Ea&4||(d=29):242==f&&(a.Ea&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;c<b.length;c++)bj(a,b[c]);d=!0}return d}k.Qa=function(a,b){this.X&&D(this.X,this.X.dk|(b?this.X.ek:0))&&this.X.message(a)};
Ba(function(){for(var a=B(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Xi(d);Oa(d,c)}});
function Q(a,b,c,d){x.call(this,"Video",a,Q);this.Fa=a.model;this.Uc=0;"ega"==this.Fa&&(this.dm=a.switches,this.Uc=a.memory||0);this.nd=a.mode;if(void 0===this.nd||void 0===R[this.nd])this.nd=fj;this.Bh=a.charCols;this.Ui=a.charRows;if(void 0===this.Bh||void 0===this.Ui)this.Bh=R[this.nd][0],this.Ui=R[this.nd][1];this.xd=a.screenWidth;this.fe=a.screenHeight;this.Fm=a.scale;this.Dm=12<=Math.round(this.xd/this.Bh);this.Hm=a.touchScreen;this.Lb=b;this.Wc=c;this.im=d;this.cb=this.rc=0;this.Td=[];this.td=
Array(16);this.Ai=!1;var e=this;this.Lb&&(this.Lb.onfocus=function(){e.Ai=!0},this.Lb.onblur=function(){e.Ai=!1});if(a=a.fontROM)"json"!=fa(a)&&(a=sa()+"/api/v1/dump?file="+a+"&format=bytes"),ra(a,!0,null,this,this.ho)}y(x,Q);
var gj={2:{Wi:15700,Vi:208,Lj:85,Mj:96},3:{Wi:18432,Vi:364,Lj:85,Mj:96},4:{Wi:21850,Vi:364,Lj:85,Mj:96}},hj={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]},fj=7,R=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];R[fj]=[80,25,1,0,1];R[13]=[320,200,16];R[14]=[640,200,16];R[15]=[640,350,16];R[16]=[640,350,16];R[0]=R[1];R[2]=R[3];R[5]=R[4];var ij=Array(5);ij[0]=[0,0,0,255];ij[1]=[127,192,127,255];
function Q(a,b,c,d){x.call(this,"Video",a,Q);this.Fa=a.model;this.Vc=0;"ega"==this.Fa&&(this.fm=a.switches,this.Vc=a.memory||0);this.nd=a.mode;if(void 0===this.nd||void 0===R[this.nd])this.nd=fj;this.Dh=a.charCols;this.Wi=a.charRows;if(void 0===this.Dh||void 0===this.Wi)this.Dh=R[this.nd][0],this.Wi=R[this.nd][1];this.xd=a.screenWidth;this.fe=a.screenHeight;this.Im=a.scale;this.Gm=12<=Math.round(this.xd/this.Dh);this.Km=a.touchScreen;this.Lb=b;this.Xc=c;this.km=d;this.cb=this.tc=0;this.Td=[];this.td=
Array(16);this.Ci=!1;var e=this;this.Lb&&(this.Lb.onfocus=function(){e.Ci=!0},this.Lb.onblur=function(){e.Ci=!1});if(a=a.fontROM)"json"!=fa(a)&&(a=sa()+"/api/v1/dump?file="+a+"&format=bytes"),ra(a,!0,null,this,this.ko)}y(x,Q);
var gj={2:{$i:15700,Zi:208,Pj:85,Qj:96},3:{$i:18432,Zi:364,Pj:85,Qj:96},4:{$i:21850,Zi:364,Pj:85,Qj:96}},hj={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]},fj=7,R=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];R[fj]=[80,25,1,0,1];R[13]=[320,200,16];R[14]=[640,200,16];R[15]=[640,350,16];R[16]=[640,350,16];R[0]=R[1];R[2]=R[3];R[5]=R[4];var ij=Array(5);ij[0]=[0,0,0,255];ij[1]=[127,192,127,255];
ij[2]=[127,192,127,255];ij[3]=[127,255,127,255];ij[4]=[127,255,127,255];var jj=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],S=Array(16);S[0]=[0,0,0,255];S[1]=[0,0,170,255];S[2]=[0,170,0,255];S[3]=[0,170,170,255];S[4]=[170,0,0,255];S[5]=[170,0,170,255];S[6]=[170,85,0,255];S[7]=[170,170,170,255];S[8]=[85,85,85,255];S[9]=[85,85,255,255];S[10]=[85,255,85,255];S[11]=[85,255,255,255];S[12]=[255,85,85,255];S[13]=[255,85,255,255];S[14]=[255,255,85,255];S[15]=[255,255,255,255];
var kj=[2,4,6],lj=[3,5,7],mj=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],nj=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],T=[0];T[128]=1;T[32768]=2;T[32896]=3;T[8388608]=4;T[8388736]=5;T[8421376]=6;T[8421504]=7;T[2147483648]=8;T[2147483776]=9;T[2147516416]=10;T[2147516544]=11;T[2155872256]=12;T[2155872384]=13;T[2155905024]=14;T[2155905152]=15;
function oj(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=pj[b],f=a.je||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(qj)];this.X=a.X;this.type=e[0];this.port=e[1];this.he=b;this.cb=e[2];this.rc=e[3];this.Uc=d||e[4];65536<=this.Uc&&720896<=this.cb&&(this.rc=Math.min(this.Uc>>2,32768));this.jc=c[0];this.zc=c[1];this.$e=c[2];this.vf=c[3];this.lc=c[4]&255;this.rh=c[4]>>8&255;this.bc=c[5];this.Oi=qj;this.Qg=rj;if(5==b){this.Oi=sj;this.Qg=tj;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.Uc,Array(this.Uc>>2),771,0,4294967295,0,4294967295,0,4294967295,0]);this.hd=b[0];this.Bd=b[1];this.Rd=b[2];this.di=uj;this.Sh=b[3];this.bg=b[4];this.qh=b[5];this.Dd=b[6];this.Ff=b[7];this.fi=vj;this.Ii=b[8];this.Ji=b[9];this.Cd=b[10];this.se=b[11];this.ei=wj;this.vb=b[12];d=this.Uc>>2;if((this.ed=b[14])&&this.ed.length<d){for(var e=this.ed,g=0,h=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)h[g]=q,g+=2;g==d&&(g=1)}this.ed=h}this.Ph(b[15]);this.Gj=b[16];this.gb=b[17];
this.md=b[18];this.ob=b[19];this.Eh=b[20];this.le=b[21];this.Je=b[22];this.Qi=b[23];this.Ri=b[24]}f=gj[f]||gj[3];this.Si=a.S.Hd/f.Wi|0;this.Zn=this.Si*f.Lj/100|0;this.Qk=this.Si*f.Vi;this.bo=this.Qk*f.Mj/100|0;this.Xi=null==c[7]?0:c[7]}}
function oj(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=pj[b],f=a.je||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(qj)];this.X=a.X;this.type=e[0];this.port=e[1];this.he=b;this.cb=e[2];this.tc=e[3];this.Vc=d||e[4];65536<=this.Vc&&720896<=this.cb&&(this.tc=Math.min(this.Vc>>2,32768));this.lc=c[0];this.Bc=c[1];this.af=c[2];this.wf=c[3];this.nc=c[4]&255;this.th=c[4]>>8&255;this.cc=c[5];this.Qi=qj;this.Sg=rj;if(5==b){this.Qi=sj;this.Sg=tj;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.Vc,Array(this.Vc>>2),771,0,4294967295,0,4294967295,0,4294967295,0]);this.hd=b[0];this.Bd=b[1];this.Rd=b[2];this.fi=uj;this.Uh=b[3];this.cg=b[4];this.sh=b[5];this.Dd=b[6];this.Gf=b[7];this.hi=vj;this.Ki=b[8];this.Li=b[9];this.Cd=b[10];this.te=b[11];this.gi=wj;this.vb=b[12];d=this.Vc>>2;if((this.ed=b[14])&&this.ed.length<d){for(var e=this.ed,g=0,h=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)h[g]=q,g+=2;g==d&&(g=1)}this.ed=h}this.Rh(b[15]);this.Kj=b[16];this.gb=b[17];
this.md=b[18];this.nb=b[19];this.Hh=b[20];this.le=b[21];this.Ke=b[22];this.Si=b[23];this.Ti=b[24]}f=gj[f]||gj[3];this.Ui=a.S.Hd/f.$i|0;this.bo=this.Ui*f.Pj/100|0;this.Sk=this.Ui*f.Zi;this.fo=this.Sk*f.Qj/100|0;this.aj=null==c[7]?0:c[7]}}
var qj=18,sj=25,rj="HORZ_TOTAL HORZ_DISP HORZ_SYNC_POS HORZ_SYNC_WIDTH VERT_TOTAL VERT_TOTAL_ADJ VERT_DISP VERT_SYNC_POS INTERLACE_POS MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),tj="HORZ_TOTAL HORZ_DISP_END HORZ_BLANK_START HORZ_BLANK_END HORZ_RETRACE_START HORZ_RETRACE_END VERT_TOTAL CRTC_OVERFLOW PRESET_ROW_SCAN MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO VERT_DISP_END OFFSET UNDERLINE VERT_BLANK_START VERT_BLANK_END MODE_CTRL LONE_COMPARE".split(" "),
uj="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVRSCAN PLANES HORZPAN".split(" "),vj=["RESET","CLK","MAPMASK","CHARMAP","MODE"],wj="SRESET ESRESET COLRCMP DATAROT READMAP MODE MISC COLRDC BITMASK".split(" ");function xj(a){return this.qc(a)|this.qc(a+1)<<8}function yj(a,b){this.Cc(a,b&255);this.Cc(a+1,b>>8&255)}
var U=[,,function(a){a+=this.offset;return(this.ia.vb=this.ra[a])>>this.ia.Gj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.ra[b]>>8:this.ra[b])&255}];U[16]=function(a){a+=this.offset;a=this.ra[a];for(var b=this.ia.Qi&this.ia.Ri,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};U[512]=function(a,b){var c=a+this.offset,d;d=this.ra[c]&~this.ia.gb|(b|b<<8|b<<16|b<<24)&this.ia.gb;d=d&this.ia.ob|this.ia.vb&~this.ia.ob;this.ra[c]!=d&&(this.ra[c]=d,this.mb=!0)};
U[1024]=function(a,b){var c=a+this.offset;b=b>>this.ia.md|b<<8-this.ia.md&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.le|this.ia.Je;d=d&this.ia.gb|this.ra[c]&~this.ia.gb;d=d&this.ia.ob|this.ia.vb&~this.ia.ob;this.ra[c]!=d&&(this.ra[c]=d,this.mb=!0)};
U[1536]=function(a,b){var c=a+this.offset;b=b>>this.ia.md|b<<8-this.ia.md&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.le|this.ia.Je;d&=this.ia.vb;d=d&this.ia.gb|this.ra[c]&~this.ia.gb;d=d&this.ia.ob|this.ia.vb&~this.ia.ob;this.ra[c]!=d&&(this.ra[c]=d,this.mb=!0)};
U[2560]=function(a,b){var c=a+this.offset;b=b>>this.ia.md|b<<8-this.ia.md&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.le|this.ia.Je;d|=this.ia.vb;d=d&this.ia.gb|this.ra[c]&~this.ia.gb;d=d&this.ia.ob|this.ia.vb&~this.ia.ob;this.ra[c]!=d&&(this.ra[c]=d,this.mb=!0)};
U[3584]=function(a,b){var c=a+this.offset;b=b>>this.ia.md|b<<8-this.ia.md&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.le|this.ia.Je;d^=this.ia.vb;d=d&this.ia.gb|this.ra[c]&~this.ia.gb;d=d&this.ia.ob|this.ia.vb&~this.ia.ob;this.ra[c]!=d&&(this.ra[c]=d,this.mb=!0)};U[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ia.gb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.ra[d]&~c;c=c&this.ia.ob|this.ia.vb&~this.ia.ob;this.ra[d]!=c&&(this.ra[d]=c,this.mb=!0)};
U[4096]=function(a){a+=this.offset;var b=this.ra[a]&~this.ia.gb|this.ia.vb&this.ia.gb;this.ra[a]!=b&&(this.ra[a]=b,this.mb=!0)};U[8192]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d&this.ia.gb|this.ra[c]&~this.ia.gb,d=d&this.ia.ob|this.ia.vb&~this.ia.ob;this.ra[c]!=d&&(this.ra[c]=d,this.mb=!0)};U[24576]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d&this.ia.vb,d=d&this.ia.gb|this.ra[c]&~this.ia.gb,d=d&this.ia.ob|this.ia.vb&~this.ia.ob;this.ra[c]!=d&&(this.ra[c]=d,this.mb=!0)};
U[40960]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d|this.ia.vb,d=d&this.ia.gb|this.ra[c]&~this.ia.gb,d=d&this.ia.ob|this.ia.vb&~this.ia.ob;this.ra[c]!=d&&(this.ra[c]=d,this.mb=!0)};U[57344]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d^this.ia.vb,d=d&this.ia.gb|this.ra[c]&~this.ia.gb,d=d&this.ia.ob|this.ia.vb&~this.ia.ob;this.ra[c]!=d&&(this.ra[c]=d,this.mb=!0)};
function zj(a){var b=[];if(void 0!==a.he){b[0]=a.jc;b[1]=a.zc;b[2]=a.$e;b[3]=a.vf;b[4]=a.lc|a.rh<<8;b[5]=a.bc;if(5==a.he){var c=[];c[0]=a.hd;c[1]=a.Bd;c[2]=a.Rd;c[3]=a.Sh;c[4]=a.bg;c[5]=a.qh;c[6]=a.Dd;c[7]=a.Ff;c[8]=a.Ii;c[9]=a.Ji;c[10]=a.Cd;c[11]=a.se;c[12]=a.vb;c[13]=a.Uc;var d;a:if(d=a.ed){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 m=d[h],n=h+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-h>>1;f[e++]=m;h=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=a.yh;c[16]=
a.Gj;c[17]=a.gb;c[18]=a.md;c[19]=a.ob;c[20]=a.Eh;c[21]=a.le;c[22]=a.Je;c[23]=a.Qi;c[24]=a.Ri;b[6]=c}b[7]=a.Xi}return b}function Aj(a,b,c,d,e){if(d){var f="",g,h=0;for(g=0;g<e.length;g++)h<e[g].length&&(h=e[g].length);h++;for(g=0;g<e.length;g++){f&&(f+="\n");var m=e[g],f=f+(b+"["+r(g)+"]: "+(m+" ".substr(0,h-m.length))+r(d[g])+(g===c?"*":""))}a.X.message(f)}else a.X.message(b+": "+r(c))}
oj.prototype.Ph=function(a){if(null!=a&&a!=this.yh){var b=a&255,c=U[b];c||b&1&&(c=U[1]);var b=a&65280,d=U[b];d||b&256&&(d=U[256]);this.Jf||(this.Jf=[null,xj,null,yj]);this.Jf[0]=c;this.Jf[2]=d;this.yh=a}};var pj=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=Q.prototype;
k.mc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;ib(b,this,Bj);mb(b,this,Cj);"ega"==this.Fa&&(ib(b,this,Dj),mb(b,this,Ej));if(d){var e=this;Cc(this.S,16,this,this.On);Qh(d,d.Hg,function(a){if(e.Ca)if(a){var b=e.Ca;if(b.ed){a=ca(a);a=void 0!==a?a-b.cb:b.ep||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var n=p(b.cb+a)+":",q=0;8>q&&a<b.ed.length;q++)var t=b.ed[a++],n=n+(" "+p(t));c&&(c+="\n");c+=n}c&&b.X.message(c);b.ep=a}else b.X.message("no buffer")}else{e.X.message("BIOSMODE: "+r(e.Jd));b=e.Ca;Aj(b,
"CRTC",b.lc,b.bc,b.Qg);if(1==b.he||3==b.he)Aj(b," MODEREG",b.zc),Aj(b," STATUS1",b.vf);3==b.he&&Aj(b," COLOR",b.$e);5==b.he&&(b.X.message(" ATCDATA: "+b.hd),Aj(b," ATC",b.Bd,b.Rd,b.di),Aj(b," GRC",b.Cd,b.se,b.ei),Aj(b," SEQ",b.Dd,b.Ff,b.fi),Aj(b," FEAT",b.qh),Aj(b," MISC",b.bg),Aj(b," STATUS0",b.Sh),Aj(b," LATCHES",b.vb),b.X.message(" ACCESS: "+u(b.yh)),b.X.message("Use 'dump video buffer' to dump video memory"))}else e.X.message("no active video card")})}(this.bb=C(a,"Keyboard"))&&this.Lb&&
this.bb.xb("input",this.im?"textarea":"canvas","kbd",this.im||this.Lb);this.Sg=9;(this.ka=C(a,"ChipSet"))&&this.dm&&(this.Sg=Ch(this.dm,this.Sg));this.bb&&this.Hm&&Fj(this)};k.On=function(a){this.X&&E(this.X,this.X.Hg)&&(Ec(this.X,16,a),Fc(this.S,a,function(a,c){return function(d){Gc(a.X,16,d,F(a.S)-c)}}(this,F(this.S))));return!0};k.xb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.sa[c]=d,d.onclick=function(){zb(e,!0)},!0}return!1};k.Md=function(){this.Lb&&this.Lb.focus()};
function Fj(a){var b=a.Lb;b&&!a.xi&&(b.addEventListener("touchstart",function(b){Gj(a,b)},!1),b.addEventListener("touchmove",function(b){Gj(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.xi=!0)}
function Gj(a,b){a.Ai&&b.preventDefault();var c=0,d=0,e=a.Lb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.xd/a.Lb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.xd/3)|0;d=a.fe/a.Lb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.fe/3)|0;1!=d?d?aj(a.bb,264,!0):aj(a.bb,262,!0):1!=c&&(c?aj(a.bb,263,!0):aj(a.bb,261,!0))}k.$b=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
uj="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVRSCAN PLANES HORZPAN".split(" "),vj=["RESET","CLK","MAPMASK","CHARMAP","MODE"],wj="SRESET ESRESET COLRCMP DATAROT READMAP MODE MISC COLRDC BITMASK".split(" ");function xj(a){return this.sc(a)|this.sc(a+1)<<8}function yj(a,b){this.Dc(a,b&255);this.Dc(a+1,b>>8&255)}
var U=[,,function(a){a+=this.offset;return(this.ia.vb=this.ra[a])>>this.ia.Kj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.ra[b]>>8:this.ra[b])&255}];U[16]=function(a){a+=this.offset;a=this.ra[a];for(var b=this.ia.Si&this.ia.Ti,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};U[512]=function(a,b){var c=a+this.offset,d;d=this.ra[c]&~this.ia.gb|(b|b<<8|b<<16|b<<24)&this.ia.gb;d=d&this.ia.nb|this.ia.vb&~this.ia.nb;this.ra[c]!=d&&(this.ra[c]=d,this.lb=!0)};
U[1024]=function(a,b){var c=a+this.offset;b=b>>this.ia.md|b<<8-this.ia.md&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.le|this.ia.Ke;d=d&this.ia.gb|this.ra[c]&~this.ia.gb;d=d&this.ia.nb|this.ia.vb&~this.ia.nb;this.ra[c]!=d&&(this.ra[c]=d,this.lb=!0)};
U[1536]=function(a,b){var c=a+this.offset;b=b>>this.ia.md|b<<8-this.ia.md&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.le|this.ia.Ke;d&=this.ia.vb;d=d&this.ia.gb|this.ra[c]&~this.ia.gb;d=d&this.ia.nb|this.ia.vb&~this.ia.nb;this.ra[c]!=d&&(this.ra[c]=d,this.lb=!0)};
U[2560]=function(a,b){var c=a+this.offset;b=b>>this.ia.md|b<<8-this.ia.md&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.le|this.ia.Ke;d|=this.ia.vb;d=d&this.ia.gb|this.ra[c]&~this.ia.gb;d=d&this.ia.nb|this.ia.vb&~this.ia.nb;this.ra[c]!=d&&(this.ra[c]=d,this.lb=!0)};
U[3584]=function(a,b){var c=a+this.offset;b=b>>this.ia.md|b<<8-this.ia.md&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.le|this.ia.Ke;d^=this.ia.vb;d=d&this.ia.gb|this.ra[c]&~this.ia.gb;d=d&this.ia.nb|this.ia.vb&~this.ia.nb;this.ra[c]!=d&&(this.ra[c]=d,this.lb=!0)};U[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ia.gb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.ra[d]&~c;c=c&this.ia.nb|this.ia.vb&~this.ia.nb;this.ra[d]!=c&&(this.ra[d]=c,this.lb=!0)};
U[4096]=function(a){a+=this.offset;var b=this.ra[a]&~this.ia.gb|this.ia.vb&this.ia.gb;this.ra[a]!=b&&(this.ra[a]=b,this.lb=!0)};U[8192]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d&this.ia.gb|this.ra[c]&~this.ia.gb,d=d&this.ia.nb|this.ia.vb&~this.ia.nb;this.ra[c]!=d&&(this.ra[c]=d,this.lb=!0)};U[24576]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d&this.ia.vb,d=d&this.ia.gb|this.ra[c]&~this.ia.gb,d=d&this.ia.nb|this.ia.vb&~this.ia.nb;this.ra[c]!=d&&(this.ra[c]=d,this.lb=!0)};
U[40960]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d|this.ia.vb,d=d&this.ia.gb|this.ra[c]&~this.ia.gb,d=d&this.ia.nb|this.ia.vb&~this.ia.nb;this.ra[c]!=d&&(this.ra[c]=d,this.lb=!0)};U[57344]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d^this.ia.vb,d=d&this.ia.gb|this.ra[c]&~this.ia.gb,d=d&this.ia.nb|this.ia.vb&~this.ia.nb;this.ra[c]!=d&&(this.ra[c]=d,this.lb=!0)};
function zj(a){var b=[];if(void 0!==a.he){b[0]=a.lc;b[1]=a.Bc;b[2]=a.af;b[3]=a.wf;b[4]=a.nc|a.th<<8;b[5]=a.cc;if(5==a.he){var c=[];c[0]=a.hd;c[1]=a.Bd;c[2]=a.Rd;c[3]=a.Uh;c[4]=a.cg;c[5]=a.sh;c[6]=a.Dd;c[7]=a.Gf;c[8]=a.Ki;c[9]=a.Li;c[10]=a.Cd;c[11]=a.te;c[12]=a.vb;c[13]=a.Vc;var d;a:if(d=a.ed){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 m=d[h],n=h+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-h>>1;f[e++]=m;h=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=a.Ah;c[16]=
a.Kj;c[17]=a.gb;c[18]=a.md;c[19]=a.nb;c[20]=a.Hh;c[21]=a.le;c[22]=a.Ke;c[23]=a.Si;c[24]=a.Ti;b[6]=c}b[7]=a.aj}return b}function Aj(a,b,c,d,e){if(d){var f="",g,h=0;for(g=0;g<e.length;g++)h<e[g].length&&(h=e[g].length);h++;for(g=0;g<e.length;g++){f&&(f+="\n");var m=e[g],f=f+(b+"["+r(g)+"]: "+(m+" ".substr(0,h-m.length))+r(d[g])+(g===c?"*":""))}a.X.message(f)}else a.X.message(b+": "+r(c))}
oj.prototype.Rh=function(a){if(null!=a&&a!=this.Ah){var b=a&255,c=U[b];c||b&1&&(c=U[1]);var b=a&65280,d=U[b];d||b&256&&(d=U[256]);this.Kf||(this.Kf=[null,xj,null,yj]);this.Kf[0]=c;this.Kf[2]=d;this.Ah=a}};var pj=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=Q.prototype;
k.oc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;ib(b,this,Bj);mb(b,this,Cj);"ega"==this.Fa&&(ib(b,this,Dj),mb(b,this,Ej));if(d){var e=this;Cc(this.S,16,this,this.Rn);Qh(d,d.Jg,function(a){if(e.Ca)if(a){var b=e.Ca;if(b.ed){a=ca(a);a=void 0!==a?a-b.cb:b.hp||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var n=p(b.cb+a)+":",q=0;8>q&&a<b.ed.length;q++)var t=b.ed[a++],n=n+(" "+p(t));c&&(c+="\n");c+=n}c&&b.X.message(c);b.hp=a}else b.X.message("no buffer")}else{e.X.message("BIOSMODE: "+r(e.Jd));b=e.Ca;Aj(b,
"CRTC",b.nc,b.cc,b.Sg);if(1==b.he||3==b.he)Aj(b," MODEREG",b.Bc),Aj(b," STATUS1",b.wf);3==b.he&&Aj(b," COLOR",b.af);5==b.he&&(b.X.message(" ATCDATA: "+b.hd),Aj(b," ATC",b.Bd,b.Rd,b.fi),Aj(b," GRC",b.Cd,b.te,b.gi),Aj(b," SEQ",b.Dd,b.Gf,b.hi),Aj(b," FEAT",b.sh),Aj(b," MISC",b.cg),Aj(b," STATUS0",b.Uh),Aj(b," LATCHES",b.vb),b.X.message(" ACCESS: "+u(b.Ah)),b.X.message("Use 'dump video buffer' to dump video memory"))}else e.X.message("no active video card")})}(this.bb=C(a,"Keyboard"))&&this.Lb&&
this.bb.xb("input",this.km?"textarea":"canvas","kbd",this.km||this.Lb);this.Ug=9;(this.ka=C(a,"ChipSet"))&&this.fm&&(this.Ug=Ch(this.fm,this.Ug));this.bb&&this.Km&&Fj(this)};k.Rn=function(a){this.X&&D(this.X,this.X.Jg)&&(Ec(this.X,16,a),Fc(this.S,a,function(a,c){return function(d){Gc(a.X,16,d,F(a.S)-c)}}(this,F(this.S))));return!0};k.xb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.sa[c]=d,d.onclick=function(){zb(e,!0)},!0}return!1};k.Nd=function(){this.Lb&&this.Lb.focus()};
function Fj(a){var b=a.Lb;b&&!a.zi&&(b.addEventListener("touchstart",function(b){Gj(a,b)},!1),b.addEventListener("touchmove",function(b){Gj(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.zi=!0)}
function Gj(a,b){a.Ci&&b.preventDefault();var c=0,d=0,e=a.Lb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.xd/a.Lb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.xd/3)|0;d=a.fe/a.Lb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.fe/3)|0;1!=d?d?aj(a.bb,264,!0):aj(a.bb,262,!0):1!=c&&(c?aj(a.bb,263,!0):aj(a.bb,261,!0))}k.ac=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
k.Wb=function(a){return a&&this.save?this.save():!0};
k.reset=function(){var a=!0,b=0;this.ka&&(b=Yh(this.ka));var c=!1;if(this.Fa)switch(this.Fa){case "ega":var c=!0,d=hj[this.Sg];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.je!==b&&(this.je=b,a=!0);this.Ca=null;this.Tc=this.li=new oj(this,1);this.zb=this.bh=new oj(this,3);c?(this.la=new oj(this,5,null,this.Uc),Hj(this)):this.la=new oj;Ij(this);this.Jd=null;this.nd=3==b?fj:3;this.Be=this.Kc=-1;this.Ae=0;Jj(this,this.nd);if(this.Ca.cb&&a){a=this.Ca.cb+this.mi;for(b=this.Ca.cb;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.je?(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),eb(this.na,b,c|d<<8);zb(this,!0)}};function Hj(a){a.la.bg&1?(a.Tc=a.li,a.zb=a.la):(a.Tc=a.la,a.zb=a.bh)}k.save=function(){var a=new H(this);a.set(0,zj(this.li));a.set(1,zj(this.bh));a.set(2,[this.je,this.nd,this.Jd]);a.set(3,zj(this.la));return a.data()};
k.restore=function(a){var b=a[2];this.je=b[0];this.nd=b[1];this.Jd=b[2];this.Ca=null;this.Tc=this.li=new oj(this,1,a[0]);this.zb=this.bh=new oj(this,3,a[1]);this.la=new oj(this,5,a[3],this.Uc);this.la.jc&&Hj(this);Ij(this);if(!Kj(this))return!1;Lj(this);return!0};
k.ho=function(a,b,c){if(c)this.Ga("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){w("Empty font ROM image: "+a);return}if(1==d.length){w(d[0]);return}if(8192==d.length)Ri(this,d,[0,6144]);else{this.Ga("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ga("Font ROM data error: "+e.message);return}this.Ta()}};
function Mj(a,b){if(1==b)return a.td[0]=S[0],a.td[1]=S[7],a.td;if(2==b){var c=a.Ca.$e;if(a.Ca===a.la){var d=a.la.Rd[0],c=d&7;d&16&&(c|=8);18!=a.la.Rd[1]&&(c|=32)}a.td[0]=S[c&15];c=c&32?lj:kj;for(d=0;d<c.length;d++)a.td[d+1]=S[c[d]];return a.td}if(a.zb===a.bh)return S;c=null!=a.la.Rd[15]?a.la.Rd:mj;for(d=0;d<a.td.length;d++){var e=c[d]||0;a.td[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.td}function Ri(a,b,c,d){a.Og=b;a.$h=c;a.De=d}
function Ij(a){var b=!1;if(window&&a.Og){var c=a.De?0:2048,d=a.De?a.De:9;Nj(a,1,a.$h[0],c,d,14,a.Og,ij,jj)&&(b=!0);c=Mj(a);d=a.De?a.De:8;Nj(a,3,a.$h[1],0,d,8,a.Og,c)&&(b=!0);a.De&&Nj(a,5,a.$h[0],0,a.De,14,a.Og,c)&&(b=!0)}return b}function Nj(a,b,c,d,e,f,g,h,m){var n=!1;Oj(a,b,c,d,e,f,g,h,m)&&(n=!0);a.Dm&&Oj(a,b<<1,c,d,e,f,g,h,m)&&(n=!0);return n}
function Oj(a,b,c,d,e,f,g,h,m){var n=!1,q=b&1?0:1,t=a.Td[b];t||(t={hc:e<<q,ic:f<<q,Ve:Array(h.length),fk:h.slice(),Ef:m,Yh:Array(h.length)});for(m=0;m<h.length;m++){var s=h[m],v=t.Ve[m]?t.fk[m]:[];if(s[0]!==v[0]||s[1]!==v[1]||s[2]!==v[2]){var n=t,v=m,A=q,D=c,ka=d,la=e,vb=f,Qc=g,Xd=[0,0,0,0],Rc=window.document.createElement("canvas");Rc.width=n.hc<<4;Rc.height=n.ic<<4;for(var Ti=Rc.getContext("2d"),Ha=void 0,Ob=void 0,gb=void 0,Sc=8>vb||!ka?vb:8,Yd=Ti.createImageData(n.hc,n.ic),Ha=0;256>Ha;Ha++){for(gb=
0;gb<vb;gb++)for(var ql=n.Ef&&v&1&&gb>=vb-2,rl=Qc[gb<Sc?D+Ha*Sc+gb:ka+Ha*Sc+gb-Sc],Zd=0;Zd<=A;Zd++)for(Ob=0;Ob<la;Ob++){var Ui=Ob<<A,Vi=(gb<<A)+Zd,Wi=ql||rl&128>>(8<=Ob&&176<=Ha&&223>=Ha?7:Ob)?s:Xd;Pj(Yd,Ui,Vi,Wi);A&&Pj(Yd,Ui+1,Vi,Wi)}Ti.putImageData(Yd,(Ha&15)*n.hc,(Ha>>4)*n.ic)}n.Ve[v]="#"+r(s[0])+r(s[1])+r(s[2]);n.fk[v]=s;n.Yh[v]=Rc;n=!0}}a.Td[b]=t;return n}function Qj(a){0<a.Ae||0<=a.Kc?0>a.Be&&(a.Be=0):a.Be=-1}
function Lj(a){if(a.Sb){for(var b=10;15>=b;b++)if(null==a.Ca.bc[b])return;var c=a.Ca.bc[10],b=c&31,d=a.Ca.bc[11]&31,e=a.Ca.bc[9]&31,f=!1;a.Ca===a.la&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Rj(a);else{c=a.Ca.bc[15]+((a.Ca.bc[14]&63)<<8);a.Kc!=c&&(Rj(a),a.Kc=c);d=d-b+1;if(a.lm!=b||a.vk!=d)a.lm=b,a.vk=d;a.ee=e+1;Qj(a)}}}
function Rj(a){if(0<=a.Kc){if(void 0!==a.cc){var b=a.cc[a.Kc];if(b&131072){var b=b&-131073,c=a.Kc%a.Bb,d=Math.floor(a.Kc/a.Bb);a.Sb&&a.Td[a.Sb]&&(a.af&&Sj(a,c,d,b,a.af),Sj(a,c,d,b));a.cc[a.Kc]=b}}a.Kc=-1}}
function Tj(a){var b;a=a.Ca;var c=a.se[5];if(null!=c){b=2;var d=512,e=a.se[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.md=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.Pe=function(a){var b=this.Ca;null!=a&&b&&a!=b.yh&&(b.Ph(a),this.na.Ph(b.cb,b.rc,b.Jf))};
function Kj(a,b){var c,d=a.Jd,e=a.Ca;if(e)if(1==e.he)d=fj;else if(5==e.he){var d=null,f=e.Uc>>2,g=32768<f?32768:f,h=e.se[6];if(null!=h){switch(h&12){case 0:e.cb=655360;e.rc=f;d=255;break;case 4:e.cb=655360;e.rc=f;d=3==a.je?15:16;break;case 8:e.cb=720896;e.rc=g;d=fj;break;case 12:e.cb=753664,e.rc=g,d=3==a.je?2:3}c=e.Ff[1]&8;f=e.bc[6]|(e.bc[7]&1)<<8;255!=d&&(h&1?753664==e.cb?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Tj(a)}}else e.zc&8&&(e.zc&2?(d=e.zc&16?6:5,e.zc&4||(d-=1)):(d=e.zc&1?3:1,e.zc&4&&(d-=
1)));else a.Jd=null,null==d&&(d=a.nd);if(!Jj(a,d,b))return!1;a.Pe(c);return!0}
function Jj(a,b,c){if(null!=b&&(b!=a.Jd||c)){a.ym=0;a.Jd=b;b=a.Ca||(b==fj?a.Tc:a.zb);if(b!=a.Ca||b.cb!=a.cb||b.rc!=a.rc){Rj(a);if(a.cb){if(!ab(a.na,a.cb,a.rc))return!1;a.Ca&&(a.Ca.jc=!1)}a.Ca=b;b.jc=!0;a.cb=b.cb;a.rc=b.rc;if(!Za(a.na,b.cb,b.rc,!1,b===a.la?b:null))return!1}a.Sb=0;a.Bb=a.Bh;a.pc=a.Ui;a.Pi=R[fj][2];b=0;var d=R[a.Jd];d&&(a.Bb=d[0],a.pc=d[1],a.Pi=d[2],b=d[3]||0,a.Sb=d[4],4==a.je&&a.Ca===a.la&&3==a.Sb&&(7==a.la.bc[9]?a.pc=43:a.Sb=5));a.Nk=a.Bb*a.pc;a.Ah=a.Nk/a.Pi;a.mi=(a.Ah<<1)+b;a.sk=
b?a.mi+b>>1:0;13<=a.Jd&&(a.Ah<<=1);a.Td.length&&(a.yd=Math.floor(a.xd/a.Bb),a.zd=Math.floor(a.fe/a.pc),a.Sb?(b=a.Td[a.Sb],d=a.Td[a.Sb<<1],a.Fm&&80==a.Bb?d&&a.yd>=3*d.hc>>2&&(a.Sb<<=1,b=d):(d&&a.yd>=d.hc&&(a.Sb<<=1,b=d),b&&(a.yd=b.hc,a.zd=b.ic)),a.Wf=a.Xf=0,b&&(a.Wf=a.Bb*b.hc,a.Xf=a.pc*b.ic)):(a.yd=a.zd=1,a.Wf=a.Bb,a.Xf=a.pc),a.uh=a.Wc.createImageData(a.Wf,a.Xf),a.Ze=window.document.createElement("canvas"),a.Ze.width=a.Wf,a.Ze.height=a.Xf,a.af=a.Ze.getContext("2d"),a.Yj=a.Zj=0,a.oi=a.xd,a.pi=a.fe,
b=a.xd-a.Bb*a.yd,d=a.fe-a.pc*a.zd,0<b&&(a.Yj=b>>1,a.oi-=b),0<d&&(a.Zj=d>>1,a.pi-=d),b||d)&&(a.Wc.fillStyle=a.Lb.style.backgroundColor,a.Wc.fillRect(0,0,a.xd,a.fe));!1!==c?zb(a,!0):Uj(a,!0)}return!0}function Pj(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Uj(a,b){var c;if(b){if(c=a.Ah,void 0===a.cc||a.cc.length!=c)a.cc=Array(c)}else{if(void 0===a.cc)return;c=a.cc.length}for(var d=0;d<c;d++)a.cc[d]=-1;a.Ae=-1}
function Sj(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Td[a.Sb];h.Ef&&(d=h.Ef[d]);var m=g>>4&15;h.Ef&&(m=h.Ef[m]);e?(b*=h.hc,c*=h.ic,e.fillStyle=h.Ve[m],e.fillRect(b,c,h.hc,h.ic)):(b=b*a.yd+a.Yj,c=c*a.zd+a.Zj,a.Wc.fillStyle=h.Ve[m],a.Wc.fillRect(b,c,a.yd,a.zd));g&256&&(m=(f&15)*h.hc,f=(f>>4)*h.ic,e?e.drawImage(h.Yh[d],m,f,h.hc,h.ic,b,c,h.hc,h.ic):a.Wc.drawImage(h.Yh[d],m,f,h.hc,h.ic,b,c,a.yd,a.zd));g&512&&(f=a.lm,g=a.vk,e?(a.ee&&a.ee!==h.ic&&(f=Math.floor(f*h.ic/a.ee),g=Math.floor(g*h.ic/a.ee)),
e.fillStyle=h.Ve[d],e.fillRect(b,c+f,h.hc,g)):(a.ee&&a.ee!==a.zd&&(f=Math.floor(f*a.zd/a.ee),g=Math.floor(g*a.zd/a.ee)),a.Wc.fillStyle=h.Ve[d],a.Wc.fillRect(b,c+f,a.yd,g)))}
function zb(a,b){if(a.Mb){var c=!1;a.Ca&&(a.Ca===a.la?a.la.Bd&32&&(c=!0):a.Ca.zc&8&&(c=!0));if(c||b){if(b)Uj(a,!0);else if(void 0===a.cc)return;var d=!1;!(b||++a.ym&15)&&0<=a.Be&&(a.Be++,d=!0);var e=0,f=a.Nk,c=a.Ca.cb,g=c+a.Ca.rc,h=(a.Ca.bc[12]<<8)+a.Ca.bc[13];a.Sb&&(h<<=1);var c=c+h,m=a.mi;c+m>g&&(m=g-c,0>m&&(m=0));g=c+m;if(h=!b){for(var h=a.na,n=!0,q=c>>h.rb;0<m&&q<h.Aa.length;)h.Aa[q].mb&&(h.Aa[q].mb=n=!1,h.Aa[q].xk=!0),m-=h.ec,q++;h=n}if(h){if(!d)return;if(!a.Ae){if(0>a.Kc)return;e=a.Kc;f=e+1}}if(a.Sb){if(a.Td[a.Sb]){d=
0;h=a.Ae=0;m=1048575;a.Ca.zc&32&&(h=32768,m&=~h,a.Be&2||(m&=-65537));for(c+=e<<1;c<g&&e<f;)n=cb(a.na,c),n|=65536,n&h&&(a.Ae++,n&=m),e==a.Kc&&(n|=a.Be&1?131072:0),q=a.cc[e],q!=n&&(Sj(a,e%a.Bb,Math.floor(e/a.Bb),n,a.af),a.cc[e]=n,d++),c+=2,e++;d&&a.af&&a.Wc.drawImage(a.Ze,0,0,a.Wf,a.Xf,a.Yj,a.Zj,a.oi,a.pi);Qj(a)}}else if(a.sk){for(var f=g,t,s,e=c,g=a.Ae=0,d=a.Pi,h=16==d?65536:196608,m=16==d?1:2,n=Mj(a,m),v=q=0,A=a.Bb,D=0,ka=a.pc,la=0;e<f;){t=cb(a.na,e);s=a.cc[g];if(s===t)q+=d;else{a.cc[g]=t;t=t>>8|
(t&255)<<8;s=h;var vb=16;q<A&&(A=q);for(var Qc=0;Qc<d;Qc++){var Xd=(t&(s>>=m))>>(vb-=m);Pj(a.uh,q++,v,n[Xd])}q>D&&(D=q);v<ka&&(ka=v);v>=la&&(la=v+1)}e+=2;g++;if(q>=a.Bb){q=0;v+=2;if(v>a.pc)break;v==a.pc&&(v=1,e=c+a.sk)}}A<a.Bb&&(a.af.putImageData(a.uh,0,0,A,ka,D-A,la-ka),a.Wc.drawImage(a.Ze,0,0,a.Bb,a.pc,0,0,a.xd,a.fe))}else{f=g;e=a.Ae=0;g=Mj(a);d=a.Ca.ed;m=h=0;n=a.Bb;q=0;v=a.pc;for(A=0;c<f;){D=c++-a.cb;D=d[D];ka=a.cc[e];if(ka===D)h+=8;else{a.cc[e]=D;h<n&&(n=h);for(ka=0;8>ka;ka++)la=D&2155905152,
0>la&&(la=-la),la=T[la]||0,Pj(a.uh,h++,m,g[la]),D<<=1;h>q&&(q=h);m<v&&(v=m);m>=A&&(A=m+1)}e++;if(h>=a.Bb&&(h=0,++m>a.pc))break}n<a.Bb&&(a.af.putImageData(a.uh,0,0,n,v,q-n,A-v),a.Wc.drawImage(a.Ze,0,0,a.Bb,a.pc,0,0,a.xd,a.fe))}}}}k.un=function(a,b){return Vj(this,this.Tc,b)};k.No=function(a,b,c){a=this.Tc;a.rh=a.lc;a.lc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.tn=function(a,b){return Wj(this,this.Tc,b)};k.Mo=function(a,b,c){Xj(this,this.Tc,b,c)};k.vn=function(a,b){return Yj(this,this.Tc,b)};
k.Oo=function(a,b,c){a=this.Tc;this.ba(a.port+4,b,c,"MODE");a.zc=b;Kj(this,!1)};k.wn=function(a,b){return Zj(this,this.Tc,b)};k.Ul=function(a,b,c){this.la.qh=this.la.qh&-4|b&3;this.ba(a,b,c,"FEAT")};k.Jk=function(a,b){var c=this.la.hd?this.la.Rd[this.la.Bd&31]:this.la.Bd;this.ba(960,null,b,"ATC."+(this.la.hd?this.la.di[this.la.Bd&31]:"INDX"),c);this.la.hd=!this.la.hd;return c};
k.Tl=function(a,b,c){var d=this.la.Bd&32;if(this.la.hd){var e=this.la.Bd&31;if(16<=e||!d)this.ba(a,b,c,"ATC."+this.la.di[e]),this.la.Rd[e]=b;this.la.hd=!1}else this.la.Bd=b,this.ba(a,b,c,"ATC.INDX"),this.la.hd=!0,b&32&&!d&&Ij(this)&&zb(this,!0)};k.Gn=function(a,b){var c=3-((this.la.bg&12)>>2),c=this.la.Sh&-17|(this.Sg&1<<c)<<4-c;this.la.Sh=c;this.ba(962,null,b,"STATUS0",c);return c};k.Qo=function(a,b,c){this.la.bg=b;Hj(this);this.ba(962,b,c,"MISC")};
k.Fn=function(a,b){var c=this.la.Dd;this.ba(964,null,b,"SEQ.INDX",c);return c};k.Xo=function(a,b,c){this.la.Dd=b;this.ba(964,b,c,"SEQ.INDX")};k.En=function(a,b){var c=this.la.Ff[this.la.Dd];this.ba(965,null,b,"SEQ"+this.la.fi[this.la.Dd],c);return c};k.Wo=function(a,b,c){this.ba(965,b,c,"SEQ."+this.la.fi[this.la.Dd]);this.la.Ff[this.la.Dd]=b;2==this.la.Dd&&(this.la.gb=nj[b&15])};k.mn=function(a,b){var c=this.la.Ii;this.ba(972,null,b,"GRC1",c);return c};
k.Ho=function(a,b,c){this.la.Ii=b;this.ba(972,b,c,"GRC1")};k.nn=function(a,b){var c=this.la.Ji;this.ba(970,null,b,"GRC2",c);return c};k.Io=function(a,b,c){this.la.Ji=b;this.ba(970,b,c,"GRC2")};k.ln=function(a,b){var c=this.la.Cd;this.ba(974,null,b,"GRC.INDX",c);return c};k.Go=function(a,b,c){this.la.Cd=b;this.ba(974,b,c,"GRC.INDX")};k.kn=function(a,b){var c=this.la.se[this.la.Cd];this.ba(975,null,b,"GRC."+this.la.ei[this.la.Cd],c);return c};
k.Fo=function(a,b,c){this.ba(975,b,c,"GRC."+this.la.ei[this.la.Cd]);this.la.se[this.la.Cd]=b;switch(this.la.Cd){case 0:this.la.Eh=nj[b&15];this.la.Je=this.la.Eh&~this.la.le;break;case 1:this.la.le=~nj[b&15];this.la.Je=this.la.Eh&~this.la.le;break;case 2:this.la.Qi=nj[b&15]&2155905152;break;case 3:case 5:this.Pe(Tj(this));break;case 4:this.la.Gj=(b&3)<<3;break;case 6:Kj(this,!1);break;case 7:this.la.Ri=nj[b&15^15]&2155905152;break;case 8:this.la.ob=b|b<<8|b<<16|b<<24}};
k.bn=function(a,b){return Vj(this,this.zb,b)};k.yo=function(a,b,c){a=this.zb;a.rh=a.lc;a.lc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.an=function(a,b){return Wj(this,this.zb,b)};k.xo=function(a,b,c){Xj(this,this.zb,b,c)};k.cn=function(a,b){return Yj(this,this.zb,b)};k.zo=function(a,b,c){a=this.zb;this.ba(a.port+4,b,c,"MODE");a.zc=b;Kj(this,!1)};k.$m=function(a,b){var c=this.zb.$e;this.ba(this.zb.port+5,null,b,this.zb.type+".COLOR",c);return c};
k.wo=function(a,b,c){this.ba(this.zb.port+5,b,c,this.zb.type+".COLOR");this.zb.$e!==b&&(this.zb.$e=b,Uj(this,!1))};k.dn=function(a,b){return Zj(this,this.zb,b)};function Vj(a,b,c){var d=b.lc;a.ba(b.port,null,c,"CRTC.INDX",d);return d}function Wj(a,b,c){var d;b.lc<b.Oi&&(d=b.bc[b.lc]);a.ba(b.port+1,null,c,"CRTC."+b.Qg[b.lc],d);return d}function Xj(a,b,c,d){b.lc<b.Oi&&(a.ba(b.port+1,c,d,"CRTC."+b.Qg[b.lc]),b.bc[b.lc]=c,9==b.lc&&8!=b.rh&&Kj(a,!0),Lj(a))}
function Yj(a,b,c){var d=b.zc;a.ba(b.port+4,null,c,"MODE",d);return d}function Zj(a,b,c){var d=0,e=F(a.S),f=e-b.Xi;0>f&&(f=0);f%b.Si>b.Zn&&(d|=1);f%=b.Qk;f>b.bo&&(d|=8);b.Xi=e-f;b===a.la?(d|=b.vf&48^48,b.hd=!1):d=(b.vf^=9)|240;b.vf=d;a.ba(b.port+6,null,c,b===a.la?"STATUS1":"STATUS",d);return d}k.Qa=function(a,b){this.X&&(b||E(this.X,this.X.Hg))&&this.X.message(a)};k.ba=function(a,b,c,d,e){this.X&&this.X.ba(this,a,b,c,d,this.X.Hg,e)};
var Bj={948:Q.prototype.un,949:Q.prototype.tn,952:Q.prototype.vn,954:Q.prototype.wn,980:Q.prototype.bn,981:Q.prototype.an,984:Q.prototype.cn,985:Q.prototype.$m,986:Q.prototype.dn},Cj={948:Q.prototype.No,949:Q.prototype.Mo,952:Q.prototype.Oo,980:Q.prototype.yo,981:Q.prototype.xo,984:Q.prototype.zo,985:Q.prototype.wo},Dj={960:Q.prototype.Jk,961:Q.prototype.Jk,962:Q.prototype.Gn,964:Q.prototype.Fn,965:Q.prototype.En,970:Q.prototype.nn,972:Q.prototype.mn,974:Q.prototype.ln,975:Q.prototype.kn},Ej={954:Q.prototype.Ul,
960:Q.prototype.Tl,961:Q.prototype.Tl,962:Q.prototype.Qo,964:Q.prototype.Xo,965:Q.prototype.Wo,970:Q.prototype.Io,972:Q.prototype.Ho,974:Q.prototype.Go,975:Q.prototype.Fo,986:Q.prototype.Ul};
k.reset=function(){var a=!0,b=0;this.ka&&(b=Yh(this.ka));var c=!1;if(this.Fa)switch(this.Fa){case "ega":var c=!0,d=hj[this.Ug];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.je!==b&&(this.je=b,a=!0);this.Ca=null;this.Uc=this.ni=new oj(this,1);this.zb=this.eh=new oj(this,3);c?(this.la=new oj(this,5,null,this.Vc),Hj(this)):this.la=new oj;Ij(this);this.Jd=null;this.nd=3==b?fj:3;this.Ce=this.Lc=-1;this.Be=0;Jj(this,this.nd);if(this.Ca.cb&&a){a=this.Ca.cb+this.oi;for(b=this.Ca.cb;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.je?(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),eb(this.na,b,c|d<<8);zb(this,!0)}};function Hj(a){a.la.cg&1?(a.Uc=a.ni,a.zb=a.la):(a.Uc=a.la,a.zb=a.eh)}k.save=function(){var a=new H(this);a.set(0,zj(this.ni));a.set(1,zj(this.eh));a.set(2,[this.je,this.nd,this.Jd]);a.set(3,zj(this.la));return a.data()};
k.restore=function(a){var b=a[2];this.je=b[0];this.nd=b[1];this.Jd=b[2];this.Ca=null;this.Uc=this.ni=new oj(this,1,a[0]);this.zb=this.eh=new oj(this,3,a[1]);this.la=new oj(this,5,a[3],this.Vc);this.la.lc&&Hj(this);Ij(this);if(!Kj(this))return!1;Lj(this);return!0};
k.ko=function(a,b,c){if(c)this.Ga("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){w("Empty font ROM image: "+a);return}if(1==d.length){w(d[0]);return}if(8192==d.length)Ri(this,d,[0,6144]);else{this.Ga("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ga("Font ROM data error: "+e.message);return}this.Ta()}};
function Mj(a,b){if(1==b)return a.td[0]=S[0],a.td[1]=S[7],a.td;if(2==b){var c=a.Ca.af;if(a.Ca===a.la){var d=a.la.Rd[0],c=d&7;d&16&&(c|=8);18!=a.la.Rd[1]&&(c|=32)}a.td[0]=S[c&15];c=c&32?lj:kj;for(d=0;d<c.length;d++)a.td[d+1]=S[c[d]];return a.td}if(a.zb===a.eh)return S;c=null!=a.la.Rd[15]?a.la.Rd:mj;for(d=0;d<a.td.length;d++){var e=c[d]||0;a.td[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.td}function Ri(a,b,c,d){a.Qg=b;a.bi=c;a.Ee=d}
function Ij(a){var b=!1;if(window&&a.Qg){var c=a.Ee?0:2048,d=a.Ee?a.Ee:9;Nj(a,1,a.bi[0],c,d,14,a.Qg,ij,jj)&&(b=!0);c=Mj(a);d=a.Ee?a.Ee:8;Nj(a,3,a.bi[1],0,d,8,a.Qg,c)&&(b=!0);a.Ee&&Nj(a,5,a.bi[0],0,a.Ee,14,a.Qg,c)&&(b=!0)}return b}function Nj(a,b,c,d,e,f,g,h,m){var n=!1;Oj(a,b,c,d,e,f,g,h,m)&&(n=!0);a.Gm&&Oj(a,b<<1,c,d,e,f,g,h,m)&&(n=!0);return n}
function Oj(a,b,c,d,e,f,g,h,m){var n=!1,q=b&1?0:1,t=a.Td[b];t||(t={jc:e<<q,kc:f<<q,We:Array(h.length),ik:h.slice(),Ff:m,$h:Array(h.length)});for(m=0;m<h.length;m++){var s=h[m],v=t.We[m]?t.ik[m]:[];if(s[0]!==v[0]||s[1]!==v[1]||s[2]!==v[2]){var n=t,v=m,A=q,E=c,la=d,ma=e,vb=f,Qc=g,Xd=[0,0,0,0],Rc=window.document.createElement("canvas");Rc.width=n.jc<<4;Rc.height=n.kc<<4;for(var Ti=Rc.getContext("2d"),Ha=void 0,Pb=void 0,gb=void 0,Sc=8>vb||!la?vb:8,Yd=Ti.createImageData(n.jc,n.kc),Ha=0;256>Ha;Ha++){for(gb=
0;gb<vb;gb++)for(var ql=n.Ff&&v&1&&gb>=vb-2,rl=Qc[gb<Sc?E+Ha*Sc+gb:la+Ha*Sc+gb-Sc],Zd=0;Zd<=A;Zd++)for(Pb=0;Pb<ma;Pb++){var Ui=Pb<<A,Vi=(gb<<A)+Zd,Wi=ql||rl&128>>(8<=Pb&&176<=Ha&&223>=Ha?7:Pb)?s:Xd;Pj(Yd,Ui,Vi,Wi);A&&Pj(Yd,Ui+1,Vi,Wi)}Ti.putImageData(Yd,(Ha&15)*n.jc,(Ha>>4)*n.kc)}n.We[v]="#"+r(s[0])+r(s[1])+r(s[2]);n.ik[v]=s;n.$h[v]=Rc;n=!0}}a.Td[b]=t;return n}function Qj(a){0<a.Be||0<=a.Lc?0>a.Ce&&(a.Ce=0):a.Ce=-1}
function Lj(a){if(a.Sb){for(var b=10;15>=b;b++)if(null==a.Ca.cc[b])return;var c=a.Ca.cc[10],b=c&31,d=a.Ca.cc[11]&31,e=a.Ca.cc[9]&31,f=!1;a.Ca===a.la&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Rj(a);else{c=a.Ca.cc[15]+((a.Ca.cc[14]&63)<<8);a.Lc!=c&&(Rj(a),a.Lc=c);d=d-b+1;if(a.nm!=b||a.xk!=d)a.nm=b,a.xk=d;a.ee=e+1;Qj(a)}}}
function Rj(a){if(0<=a.Lc){if(void 0!==a.dc){var b=a.dc[a.Lc];if(b&131072){var b=b&-131073,c=a.Lc%a.Bb,d=Math.floor(a.Lc/a.Bb);a.Sb&&a.Td[a.Sb]&&(a.bf&&Sj(a,c,d,b,a.bf),Sj(a,c,d,b));a.dc[a.Lc]=b}}a.Lc=-1}}
function Tj(a){var b;a=a.Ca;var c=a.te[5];if(null!=c){b=2;var d=512,e=a.te[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.md=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.Qe=function(a){var b=this.Ca;null!=a&&b&&a!=b.Ah&&(b.Rh(a),this.na.Rh(b.cb,b.tc,b.Kf))};
function Kj(a,b){var c,d=a.Jd,e=a.Ca;if(e)if(1==e.he)d=fj;else if(5==e.he){var d=null,f=e.Vc>>2,g=32768<f?32768:f,h=e.te[6];if(null!=h){switch(h&12){case 0:e.cb=655360;e.tc=f;d=255;break;case 4:e.cb=655360;e.tc=f;d=3==a.je?15:16;break;case 8:e.cb=720896;e.tc=g;d=fj;break;case 12:e.cb=753664,e.tc=g,d=3==a.je?2:3}c=e.Gf[1]&8;f=e.cc[6]|(e.cc[7]&1)<<8;255!=d&&(h&1?753664==e.cb?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Tj(a)}}else e.Bc&8&&(e.Bc&2?(d=e.Bc&16?6:5,e.Bc&4||(d-=1)):(d=e.Bc&1?3:1,e.Bc&4&&(d-=
1)));else a.Jd=null,null==d&&(d=a.nd);if(!Jj(a,d,b))return!1;a.Qe(c);return!0}
function Jj(a,b,c){if(null!=b&&(b!=a.Jd||c)){a.Bm=0;a.Jd=b;b=a.Ca||(b==fj?a.Uc:a.zb);if(b!=a.Ca||b.cb!=a.cb||b.tc!=a.tc){Rj(a);if(a.cb){if(!ab(a.na,a.cb,a.tc))return!1;a.Ca&&(a.Ca.lc=!1)}a.Ca=b;b.lc=!0;a.cb=b.cb;a.tc=b.tc;if(!Za(a.na,b.cb,b.tc,!1,b===a.la?b:null))return!1}a.Sb=0;a.Bb=a.Dh;a.qc=a.Wi;a.Ri=R[fj][2];b=0;var d=R[a.Jd];d&&(a.Bb=d[0],a.qc=d[1],a.Ri=d[2],b=d[3]||0,a.Sb=d[4],4==a.je&&a.Ca===a.la&&3==a.Sb&&(7==a.la.cc[9]?a.qc=43:a.Sb=5));a.Pk=a.Bb*a.qc;a.Ch=a.Pk/a.Ri;a.oi=(a.Ch<<1)+b;a.uk=
b?a.oi+b>>1:0;13<=a.Jd&&(a.Ch<<=1);a.Td.length&&(a.yd=Math.floor(a.xd/a.Bb),a.zd=Math.floor(a.fe/a.qc),a.Sb?(b=a.Td[a.Sb],d=a.Td[a.Sb<<1],a.Im&&80==a.Bb?d&&a.yd>=3*d.jc>>2&&(a.Sb<<=1,b=d):(d&&a.yd>=d.jc&&(a.Sb<<=1,b=d),b&&(a.yd=b.jc,a.zd=b.kc)),a.Xf=a.Yf=0,b&&(a.Xf=a.Bb*b.jc,a.Yf=a.qc*b.kc)):(a.yd=a.zd=1,a.Xf=a.Bb,a.Yf=a.qc),a.wh=a.Xc.createImageData(a.Xf,a.Yf),a.$e=window.document.createElement("canvas"),a.$e.width=a.Xf,a.$e.height=a.Yf,a.bf=a.$e.getContext("2d"),a.bk=a.ck=0,a.qi=a.xd,a.ri=a.fe,
b=a.xd-a.Bb*a.yd,d=a.fe-a.qc*a.zd,0<b&&(a.bk=b>>1,a.qi-=b),0<d&&(a.ck=d>>1,a.ri-=d),b||d)&&(a.Xc.fillStyle=a.Lb.style.backgroundColor,a.Xc.fillRect(0,0,a.xd,a.fe));!1!==c?zb(a,!0):Uj(a,!0)}return!0}function Pj(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Uj(a,b){var c;if(b){if(c=a.Ch,void 0===a.dc||a.dc.length!=c)a.dc=Array(c)}else{if(void 0===a.dc)return;c=a.dc.length}for(var d=0;d<c;d++)a.dc[d]=-1;a.Be=-1}
function Sj(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Td[a.Sb];h.Ff&&(d=h.Ff[d]);var m=g>>4&15;h.Ff&&(m=h.Ff[m]);e?(b*=h.jc,c*=h.kc,e.fillStyle=h.We[m],e.fillRect(b,c,h.jc,h.kc)):(b=b*a.yd+a.bk,c=c*a.zd+a.ck,a.Xc.fillStyle=h.We[m],a.Xc.fillRect(b,c,a.yd,a.zd));g&256&&(m=(f&15)*h.jc,f=(f>>4)*h.kc,e?e.drawImage(h.$h[d],m,f,h.jc,h.kc,b,c,h.jc,h.kc):a.Xc.drawImage(h.$h[d],m,f,h.jc,h.kc,b,c,a.yd,a.zd));g&512&&(f=a.nm,g=a.xk,e?(a.ee&&a.ee!==h.kc&&(f=Math.floor(f*h.kc/a.ee),g=Math.floor(g*h.kc/a.ee)),
e.fillStyle=h.We[d],e.fillRect(b,c+f,h.jc,g)):(a.ee&&a.ee!==a.zd&&(f=Math.floor(f*a.zd/a.ee),g=Math.floor(g*a.zd/a.ee)),a.Xc.fillStyle=h.We[d],a.Xc.fillRect(b,c+f,a.yd,g)))}
function zb(a,b){if(a.Nb){var c=!1;a.Ca&&(a.Ca===a.la?a.la.Bd&32&&(c=!0):a.Ca.Bc&8&&(c=!0));if(c||b){if(b)Uj(a,!0);else if(void 0===a.dc)return;var d=!1;!(b||++a.Bm&15)&&0<=a.Ce&&(a.Ce++,d=!0);var e=0,f=a.Pk,c=a.Ca.cb,g=c+a.Ca.tc,h=(a.Ca.cc[12]<<8)+a.Ca.cc[13];a.Sb&&(h<<=1);var c=c+h,m=a.oi;c+m>g&&(m=g-c,0>m&&(m=0));g=c+m;if(h=!b){for(var h=a.na,n=!0,q=c>>h.rb;0<m&&q<h.Aa.length;)h.Aa[q].lb&&(h.Aa[q].lb=n=!1,h.Aa[q].zk=!0),m-=h.fc,q++;h=n}if(h){if(!d)return;if(!a.Be){if(0>a.Lc)return;e=a.Lc;f=e+1}}if(a.Sb){if(a.Td[a.Sb]){d=
0;h=a.Be=0;m=1048575;a.Ca.Bc&32&&(h=32768,m&=~h,a.Ce&2||(m&=-65537));for(c+=e<<1;c<g&&e<f;)n=cb(a.na,c),n|=65536,n&h&&(a.Be++,n&=m),e==a.Lc&&(n|=a.Ce&1?131072:0),q=a.dc[e],q!=n&&(Sj(a,e%a.Bb,Math.floor(e/a.Bb),n,a.bf),a.dc[e]=n,d++),c+=2,e++;d&&a.bf&&a.Xc.drawImage(a.$e,0,0,a.Xf,a.Yf,a.bk,a.ck,a.qi,a.ri);Qj(a)}}else if(a.uk){for(var f=g,t,s,e=c,g=a.Be=0,d=a.Ri,h=16==d?65536:196608,m=16==d?1:2,n=Mj(a,m),v=q=0,A=a.Bb,E=0,la=a.qc,ma=0;e<f;){t=cb(a.na,e);s=a.dc[g];if(s===t)q+=d;else{a.dc[g]=t;t=t>>8|
(t&255)<<8;s=h;var vb=16;q<A&&(A=q);for(var Qc=0;Qc<d;Qc++){var Xd=(t&(s>>=m))>>(vb-=m);Pj(a.wh,q++,v,n[Xd])}q>E&&(E=q);v<la&&(la=v);v>=ma&&(ma=v+1)}e+=2;g++;if(q>=a.Bb){q=0;v+=2;if(v>a.qc)break;v==a.qc&&(v=1,e=c+a.uk)}}A<a.Bb&&(a.bf.putImageData(a.wh,0,0,A,la,E-A,ma-la),a.Xc.drawImage(a.$e,0,0,a.Bb,a.qc,0,0,a.xd,a.fe))}else{f=g;e=a.Be=0;g=Mj(a);d=a.Ca.ed;m=h=0;n=a.Bb;q=0;v=a.qc;for(A=0;c<f;){E=c++-a.cb;E=d[E];la=a.dc[e];if(la===E)h+=8;else{a.dc[e]=E;h<n&&(n=h);for(la=0;8>la;la++)ma=E&2155905152,
0>ma&&(ma=-ma),ma=T[ma]||0,Pj(a.wh,h++,m,g[ma]),E<<=1;h>q&&(q=h);m<v&&(v=m);m>=A&&(A=m+1)}e++;if(h>=a.Bb&&(h=0,++m>a.qc))break}n<a.Bb&&(a.bf.putImageData(a.wh,0,0,n,v,q-n,A-v),a.Xc.drawImage(a.$e,0,0,a.Bb,a.qc,0,0,a.xd,a.fe))}}}}k.xn=function(a,b){return Vj(this,this.Uc,b)};k.Qo=function(a,b,c){a=this.Uc;a.th=a.nc;a.nc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.wn=function(a,b){return Wj(this,this.Uc,b)};k.Po=function(a,b,c){Xj(this,this.Uc,b,c)};k.yn=function(a,b){return Yj(this,this.Uc,b)};
k.Ro=function(a,b,c){a=this.Uc;this.ba(a.port+4,b,c,"MODE");a.Bc=b;Kj(this,!1)};k.zn=function(a,b){return Zj(this,this.Uc,b)};k.Wl=function(a,b,c){this.la.sh=this.la.sh&-4|b&3;this.ba(a,b,c,"FEAT")};k.Lk=function(a,b){var c=this.la.hd?this.la.Rd[this.la.Bd&31]:this.la.Bd;this.ba(960,null,b,"ATC."+(this.la.hd?this.la.fi[this.la.Bd&31]:"INDX"),c);this.la.hd=!this.la.hd;return c};
k.Vl=function(a,b,c){var d=this.la.Bd&32;if(this.la.hd){var e=this.la.Bd&31;if(16<=e||!d)this.ba(a,b,c,"ATC."+this.la.fi[e]),this.la.Rd[e]=b;this.la.hd=!1}else this.la.Bd=b,this.ba(a,b,c,"ATC.INDX"),this.la.hd=!0,b&32&&!d&&Ij(this)&&zb(this,!0)};k.Jn=function(a,b){var c=3-((this.la.cg&12)>>2),c=this.la.Uh&-17|(this.Ug&1<<c)<<4-c;this.la.Uh=c;this.ba(962,null,b,"STATUS0",c);return c};k.To=function(a,b,c){this.la.cg=b;Hj(this);this.ba(962,b,c,"MISC")};
k.In=function(a,b){var c=this.la.Dd;this.ba(964,null,b,"SEQ.INDX",c);return c};k.$o=function(a,b,c){this.la.Dd=b;this.ba(964,b,c,"SEQ.INDX")};k.Hn=function(a,b){var c=this.la.Gf[this.la.Dd];this.ba(965,null,b,"SEQ"+this.la.hi[this.la.Dd],c);return c};k.Zo=function(a,b,c){this.ba(965,b,c,"SEQ."+this.la.hi[this.la.Dd]);this.la.Gf[this.la.Dd]=b;2==this.la.Dd&&(this.la.gb=nj[b&15])};k.pn=function(a,b){var c=this.la.Ki;this.ba(972,null,b,"GRC1",c);return c};
k.Ko=function(a,b,c){this.la.Ki=b;this.ba(972,b,c,"GRC1")};k.qn=function(a,b){var c=this.la.Li;this.ba(970,null,b,"GRC2",c);return c};k.Lo=function(a,b,c){this.la.Li=b;this.ba(970,b,c,"GRC2")};k.on=function(a,b){var c=this.la.Cd;this.ba(974,null,b,"GRC.INDX",c);return c};k.Jo=function(a,b,c){this.la.Cd=b;this.ba(974,b,c,"GRC.INDX")};k.nn=function(a,b){var c=this.la.te[this.la.Cd];this.ba(975,null,b,"GRC."+this.la.gi[this.la.Cd],c);return c};
k.Io=function(a,b,c){this.ba(975,b,c,"GRC."+this.la.gi[this.la.Cd]);this.la.te[this.la.Cd]=b;switch(this.la.Cd){case 0:this.la.Hh=nj[b&15];this.la.Ke=this.la.Hh&~this.la.le;break;case 1:this.la.le=~nj[b&15];this.la.Ke=this.la.Hh&~this.la.le;break;case 2:this.la.Si=nj[b&15]&2155905152;break;case 3:case 5:this.Qe(Tj(this));break;case 4:this.la.Kj=(b&3)<<3;break;case 6:Kj(this,!1);break;case 7:this.la.Ti=nj[b&15^15]&2155905152;break;case 8:this.la.nb=b|b<<8|b<<16|b<<24}};
k.en=function(a,b){return Vj(this,this.zb,b)};k.Bo=function(a,b,c){a=this.zb;a.th=a.nc;a.nc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.dn=function(a,b){return Wj(this,this.zb,b)};k.Ao=function(a,b,c){Xj(this,this.zb,b,c)};k.fn=function(a,b){return Yj(this,this.zb,b)};k.Co=function(a,b,c){a=this.zb;this.ba(a.port+4,b,c,"MODE");a.Bc=b;Kj(this,!1)};k.cn=function(a,b){var c=this.zb.af;this.ba(this.zb.port+5,null,b,this.zb.type+".COLOR",c);return c};
k.zo=function(a,b,c){this.ba(this.zb.port+5,b,c,this.zb.type+".COLOR");this.zb.af!==b&&(this.zb.af=b,Uj(this,!1))};k.gn=function(a,b){return Zj(this,this.zb,b)};function Vj(a,b,c){var d=b.nc;a.ba(b.port,null,c,"CRTC.INDX",d);return d}function Wj(a,b,c){var d;b.nc<b.Qi&&(d=b.cc[b.nc]);a.ba(b.port+1,null,c,"CRTC."+b.Sg[b.nc],d);return d}function Xj(a,b,c,d){b.nc<b.Qi&&(a.ba(b.port+1,c,d,"CRTC."+b.Sg[b.nc]),b.cc[b.nc]=c,9==b.nc&&8!=b.th&&Kj(a,!0),Lj(a))}
function Yj(a,b,c){var d=b.Bc;a.ba(b.port+4,null,c,"MODE",d);return d}function Zj(a,b,c){var d=0,e=F(a.S),f=e-b.aj;0>f&&(f=0);f%b.Ui>b.bo&&(d|=1);f%=b.Sk;f>b.fo&&(d|=8);b.aj=e-f;b===a.la?(d|=b.wf&48^48,b.hd=!1):d=(b.wf^=9)|240;b.wf=d;a.ba(b.port+6,null,c,b===a.la?"STATUS1":"STATUS",d);return d}k.Qa=function(a,b){this.X&&(b||D(this.X,this.X.Jg))&&this.X.message(a)};k.ba=function(a,b,c,d,e){this.X&&this.X.ba(this,a,b,c,d,this.X.Jg,e)};
var Bj={948:Q.prototype.xn,949:Q.prototype.wn,952:Q.prototype.yn,954:Q.prototype.zn,980:Q.prototype.en,981:Q.prototype.dn,984:Q.prototype.fn,985:Q.prototype.cn,986:Q.prototype.gn},Cj={948:Q.prototype.Qo,949:Q.prototype.Po,952:Q.prototype.Ro,980:Q.prototype.Bo,981:Q.prototype.Ao,984:Q.prototype.Co,985:Q.prototype.zo},Dj={960:Q.prototype.Lk,961:Q.prototype.Lk,962:Q.prototype.Jn,964:Q.prototype.In,965:Q.prototype.Hn,970:Q.prototype.qn,972:Q.prototype.pn,974:Q.prototype.on,975:Q.prototype.nn},Ej={954:Q.prototype.Wl,
960:Q.prototype.Vl,961:Q.prototype.Vl,962:Q.prototype.To,964:Q.prototype.$o,965:Q.prototype.Zo,970:Q.prototype.Lo,972:Q.prototype.Ko,974:Q.prototype.Jo,975:Q.prototype.Io,986:Q.prototype.Wl};
Ba(function(){for(var a=B(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=z(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing &lt;canvas&gt; support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor;
e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new Q(d,e,f);Oa(d,c)}});
function V(a){this.Gk=a.adapter;switch(this.Gk){case 1:this.Nj=1016;this.kg=4;break;case 2:this.Nj=760;this.kg=3;break;default:w("Unrecognized serial adapter #"+this.Gk);return}this.ce=null;x.call(this,"SerialPort",a,V);var b=a.binding,c;a=ak;b&&(void 0===c&&(c="Panel"),(c=Na(c,this.id))&&(b=c.sa[b])&&this.xb(null,null,a,b))}y(x,V);var ak="buffer";k=V.prototype;k.ik=function(a,b){return a==this.sh?(this.Kk=b,this):null};
k.xb=function(a,b,c,d){var e=this;switch(c){case ak:return this.sa[c]=this.ce=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),bk(e,[b]))},d.onkeypress=function(a){a=a||window.event;bk(e,[a.which||a.keyCode])},!0}return!1};k.mc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;this.ka=C(a,"ChipSet");d&&Ph(d,V);ib(b,this,ck,this.Nj);mb(b,this,dk,this.Nj);this.Ta()};
k.$b=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ie()};k.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.ji;c[b++]=this.mk;c[b++]=this.Re;c[b++]=this.Tg;c[b++]=this.Zd;c[b++]=this.Sc;c[b++]=this.fd;c[b++]=this.Fc;c[b++]=this.kk;c[b]=this.Hf;a.set(0,c);return a.data()};k.restore=function(a){return this.ie(a[0])};
k.ie=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.ji=a[b++];this.mk=a[b++];this.Re=a[b++];this.Tg=a[b++];this.Zd=a[b++];this.Sc=a[b++];this.fd=a[b++];this.Fc=a[b++];this.kk=a[b++];this.Hf=a[b];return!0};function bk(a,b){a.Hf=a.Hf.concat(b);ek(a)}function ek(a){0<a.Hf.length&&!(a.Fc&1)&&(a.ji=a.Hf.shift(),a.Fc|=1);var b=-1;a.Fc&1&&a.Tg&1&&(b=4);0<=b?(a.Zd&=-8,a.Zd|=b,a.ka&&a.kg&&zi(a.ka,a.kg)):(a.Zd|=1,a.ka&&a.kg&&Ai(a.ka,a.kg))}
k.Dn=function(a,b){var c=this.Sc&128?this.Re&255:this.ji;this.ba(a,null,b,this.Sc&128?"DLL":"RBR",c);this.Fc&=-2;ek(this);return c};k.on=function(a,b){var c=this.Sc&128?this.Re>>8:this.Tg;this.ba(a,null,b,this.Sc&128?"DLM":"IER",c);return c};k.pn=function(a,b){var c=this.Zd;this.ba(a,null,b,"IIR",c);return c};k.qn=function(a,b){var c=this.Sc;this.ba(a,null,b,"LCR",c);return c};k.sn=function(a,b){var c=this.fd;this.ba(a,null,b,"MCR",c);return c};
k.rn=function(a,b){var c=this.Fc;this.ba(a,null,b,"LSR",c);return c};k.yn=function(a,b){var c=this.kk;this.ba(a,null,b,"MSR",c);return c};k.Yo=function(a,b,c){this.ba(a,b,c,this.Sc&128?"DLL":"THR");this.Sc&128?this.Re=this.Re&-256|b:(this.mk=b,this.Fc&=-97,this.ce?(13!=b&&(8==b?this.ce.value=this.ce.value.slice(0,-1):(this.ce.value+=String.fromCharCode(b),this.ce.scrollTop=this.ce.scrollHeight)),a=!0):a=!1,a&&(this.Fc|=96))};
k.Jo=function(a,b,c){this.ba(a,b,c,this.Sc&128?"DLM":"IER");this.Sc&128?this.Re=this.Re&255|b<<8:this.Tg=b};k.Ko=function(a,b,c){this.ba(a,b,c,"LCR");this.Sc=b};
k.Lo=function(a,b,c){var d=this.fd;this.ba(a,b,c,"MCR");this.fd=b;this.Kk&&(d^b)&3&&(a=this.Kk,b=this.fd,(c=3==(b&3))?a.jc||(d=!1,a.fd&2||(a.reset(),a.Qa("serial mouse reset"),d=!0),a.fd&1||(a.Qa("serial mouse ID requested"),d=!0),d&&(bk(a.Sf,[77]),a.Qa("serial mouse ID sent")),fk(a,a.Lb),a.jc=c):a.jc&&(a.Qa("serial mouse inactive"),gk(a.Lb),a.jc=c),a.fd=b)};k.Qa=function(a){this.X&&E(this.X,this.X.ck)&&this.X.message(a)};k.ba=function(a,b,c,d,e){this.X&&this.X.ba(this,a,b,c,d,this.X.ck,e)};
var ck={0:V.prototype.Dn,1:V.prototype.on,2:V.prototype.pn,3:V.prototype.qn,4:V.prototype.sn,5:V.prototype.rn,6:V.prototype.yn},dk={0:V.prototype.Yo,1:V.prototype.Jo,3:V.prototype.Ko,4:V.prototype.Lo};Ba(function(){for(var a=B(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new V(d);Oa(d,c)}});function hk(a){x.call(this,"Mouse",a,hk);if(this.Ki=a.serial)this.Qj="SerialPort";this.jc=!1;this.Ta()}y(x,hk);k=hk.prototype;
k.mc=function(a,b,c,d){this.Da=a;this.na=b;this.S=c;(this.X=d)&&Ph(d,hk)};k.$b=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Qj&&!this.Sf){for(var c=null;(c=C(this.Da,this.Qj,c))&&(!c.ik||!(this.Sf=c.ik(this.Ki,this))););if(this.Sf){if(c=C(this.Da,"Video"))this.Lb=c.Lb}else w(this.id+": "+this.Qj+" "+this.Ki+" unavailable")}this.jc?fk(this,this.Lb):gk(this.Lb)}return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ie()};
k.save=function(){var a=new H(this);a.set(0,this.Vj());return a.data()};k.restore=function(a){return this.ie(a[0])};k.ie=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.jc=a[b++];this.Cg=a[b++];this.Dg=a[b++];this.yf=a[b++];this.zf=a[b++];this.ih=a[b++];this.jh=a[b++];this.fd=a[b];return!0};k.Vj=function(){var a=0,b=[];b[a++]=this.jc;b[a++]=this.Cg;b[a++]=this.Dg;b[a++]=this.yf;b[a++]=this.zf;b[a++]=this.ih;b[a++]=this.jh;b[a]=this.fd;return b};
function fk(a,b){b&&(a.xi||(b.addEventListener("mousemove",function(b){if(a.jc&&a.S&&a.S.Nb){if(0>a.Cg||0>a.Dg)a.Cg=b.clientX,a.Dg=b.clientY;a.yf=b.clientX-a.Cg;a.zf=b.clientY-a.Dg;(a.yf||a.zf)&&ik(a,null,b.clientX,b.clientY);a.Cg=b.clientX;a.Dg=b.clientY}},!1),b.addEventListener("mousedown",function(b){jk(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){jk(a,b.button,!1)},!1),a.xi=!0),b.style.cursor="none")}function gk(a){a&&(a.style.cursor="auto")}
function jk(a,b,c){if(a.jc&&a.S&&a.S.Nb)switch(b){case 0:a.ih!=c&&(a.ih=c,ik(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.jh!=c&&(a.jh=c,ik(a,"mouse button2 "+(c?"dn":"up")))}}function ik(a,b,c,d){var e=64|(a.ih?32:0)|(a.jh?16:0)|(a.zf&192)>>4|(a.yf&192)>>6,f=a.yf&63,g=a.zf&63;a.Qa((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+r(e)+","+r(f)+","+r(g)+"]");bk(a.Sf,[e,f,g]);a.yf=a.zf=0}k.Qa=function(a){this.X&&E(this.X,this.X.tm)&&this.X.message(a)};
Ba(function(){for(var a=B(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new hk(d);Oa(d,c)}});function kk(a,b,c){x.call(this,"Disk",{id:a.th+".disk"+lk++},kk);this.ia=a;this.Da=a.Da;this.X=a.X;this.Pa=b;this.mode=c;this.Kd=b.name;this.Ac=b.Ac;this.nc=b.nc;this.$c=b.$c;this.Rb=b.Rb;this.ef=b.ef;this.Ci=this.Ad=!1;this.create();this.re=[];this.Kg=[];this.Pd=null;this.Mk=0;this.Fi=!1;this.Ta()}var lk=0;y(x,kk);k=kk.prototype;k.mc=function(a,b,c,d){this.X=d};
k.$b=function(a,b){b||this.Ci&&!this.Ad&&this.load(this.Kd,this.tf);return!0};k.Wb=function(a,b){if(this.Ad){var c,d=0;if(this.Fi&&!ta("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=mk(this,!1);)if(d=c[0]){this.Ga('Unable to save "'+this.Kd+'" (error '+d+")");break}b&&this.Ad&&(c="action=close&volume="+this.tf,c+="&machine="+this.ia.gf(),c+="&user="+this.ia.ge(),ra(sa()+"/api/v1/disk?"+c,!0),this.Ad=!1);d||this.Ga(this.Kd+" saved")}return!0};
k.create=function(){this.ib=[];if("preload"!=this.mode){for(var a=Array(this.Ac),b=0;b<a.length;b++){for(var c=Array(this.nc),d=0;d<c.length;d++){for(var e=Array(this.$c),f=1;f<=e.length;f++)e[f-1]=nk(null,b,d,f,this.Rb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.ib=a}this.gh=0};
k.load=function(a,b,c){var d=b;this.Kd=a;this.tf=b;this.Dk=c;0>b.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.Ac+":"+this.nc+":"+this.$c+":"+this.Rb,a+="&machine="+this.ia.gf(),a+="&user="+this.ia.ge(),d=sa()+"/api/v1/disk?"+a,this.Ci=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):
-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=sa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.ef?"":d)+"&format=json"));ra(d,!0,null,this,this.co,b)};
k.co=function(a,b,c,d){var e=null;this.ff=!1;var f=0>c&&this.Da&&!this.Da.Mb;if(this.Ci)c?this.Ga('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Ad=!0,e=this);else if(c)this.Ga('Unable to load disk "'+this.Kd+'" (error '+c+")",f);else try{if(0<ea(a,!0).toLowerCase().indexOf("-readonly"))this.ff=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.ff=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.Kd]:0>b.indexOf("0x")&&'["'!=
b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)w(h[0]);else{for(b=a=0;b<h.length;b++)for(c=0;c<h[b].length;c++)for(d=0;d<h[b][c].length;d++){var m=h[b][c][d],n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var t=m.data;if(void 0===t){var s=m.bytes;if(void 0!==s&&s.length){for(var f=n<<2,v=s.length;v<f;v++)s[v]=q;this.fill(m,s,0)}else t=[],q=m.pattern=q|q<<8|q<<16|q<<24,m.data=
t;delete m.bytes}nk(m,b,c);for(f=0;f<t.length;f++)a=a+t[f]&4294967295}this.ib=h;this.gh=a;e=this}else w("Empty disk image: "+this.Kd)}catch(A){w("Disk image error: "+A.message)}this.Dk&&this.Dk.call(this.ia,this.Pa,e,this.Kd,this.tf)};function nk(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Lm=b;a.Nm=c;a.Yc=a.Gc=0;a.mb=!1;return a}
k.eo=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],g=d[2],h=d[3];a=d[4];b=JSON.parse(b);for(var m=0;h--;){var n=this.seek(e,f,g,!0);if(!n)break;this.fill(n,b,m);m+=n.length;g++}}(d=d[5])&&d(c,a)};function ok(a,b,c,d,e,f){if(a.Ad){var g;g="action=read&volume="+a.tf;g+="&chs="+a.Ac+":"+a.nc+":"+a.$c+":"+a.Rb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ia.gf());g+="&user="+a.ia.ge();ra(sa()+"/api/v1/disk?"+g,!0,null,a,a.eo,[b,c,d,e,!0,f])}else f&&f(-1,!1)}
function pk(a,b,c){b.mb=!0;var d=a.re.indexOf(b);0<=d&&(a.re.splice(d,1),a.Kg.splice(d,1));a.re.push(b);a.Kg.push(oa());c&&qk(a)}function qk(a){if(a.re.length){var b=a.Kg[0]+2E3;a.Pd&&a.Mk<b&&(clearTimeout(a.Pd),a.Pd=null);if(!a.Pd){var c=oa(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Pd=setTimeout(function(){mk(a,!0)},b);a.Mk=c+b}}else a.Pd&&(clearTimeout(a.Pd),a.Pd=null)}
function mk(a,b){b&&(a.Pd=null);var c=a.re[0];if(c){for(var d=c.Lm,e=c.Nm,c=c.sector,f=0,g=[],h=c-1;h<a.ib[d][e].length;h++){var m=a.ib[d][e][h];if(!m.mb)break;var n=a.re.indexOf(m);a.re.splice(n,1);a.Kg.splice(n,1);g=g.concat(rk(m));m.mb=!1;f++}a.Ad?(h={},a.Fi=!0,h.action="write",h.volume=a.tf,h.chs=a.Ac+":"+a.nc+":"+a.$c+":"+a.Rb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ia.gf(),h.user=a.ia.ge(),h.data=JSON.stringify(g),d=ra(sa()+"/api/v1/disk",b,h,a,a.ko,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.ko=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Fi=!1;if(0<=a&&a<this.ib.length&&0<=b&&b<this.ib[a].length)for(e-=1;0<f--&&0<=e&&e<this.ib[a][b].length;e++){var g=this.ib[a][b][e];c?pk(this,g,!1):g.mb||(g.Yc=g.Gc=0)}d&&qk(this)};k.info=function(){return this.ib.length?[this.ib.length,this.ib[0].length,this.ib[0][0].length,this.ib[0][0][0].length]:[0,0,0,0]};
function sk(a){a=JSON.stringify(a.ib);a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");return a=a.replace(/(sector|length|data|pattern):/gm,'"$1":')}
k.seek=function(a,b,c,d,e){var f=null,g=this.Pa,h=this.ib[a];if(h){var m=h[b];if(!m&&g.Lf&&b<g.nc)for(m=h[b]=Array(g.$d),h=0;h<m.length;h++)m[h]=nk(null,a,b,h+1,g.Wa,0);if(m){for(h=0;h<m.length;h++)if(m[h].sector==c){f=m[h];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++h<m.length;)null===m[h].pattern&&d++;ok(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.Lf&&9==g.Na&&(f=m[h]=nk(null,a,b,g.Na,g.Wa,0))}}e&&e(f,!1);return f};
function V(a){this.Ik=a.adapter;switch(this.Ik){case 1:this.Rj=1016;this.lg=4;break;case 2:this.Rj=760;this.lg=3;break;default:w("Unrecognized serial adapter #"+this.Ik);return}this.ce=null;x.call(this,"SerialPort",a,V);var b=a.binding,c;a=ak;b&&(void 0===c&&(c="Panel"),(c=Na(c,this.id))&&(b=c.sa[b])&&this.xb(null,null,a,b))}y(x,V);var ak="buffer";k=V.prototype;k.lk=function(a,b){return a==this.uh?(this.Mk=b,this):null};
k.xb=function(a,b,c,d){var e=this;switch(c){case ak:return this.sa[c]=this.ce=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),bk(e,[b]))},d.onkeypress=function(a){a=a||window.event;bk(e,[a.which||a.keyCode])},!0}return!1};k.oc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;this.ka=C(a,"ChipSet");d&&Ph(d,V);ib(b,this,ck,this.Rj);mb(b,this,dk,this.Rj);this.Ta()};
k.ac=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ie()};k.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.li;c[b++]=this.pk;c[b++]=this.Se;c[b++]=this.Vg;c[b++]=this.Zd;c[b++]=this.Tc;c[b++]=this.fd;c[b++]=this.Gc;c[b++]=this.nk;c[b]=this.If;a.set(0,c);return a.data()};k.restore=function(a){return this.ie(a[0])};
k.ie=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.li=a[b++];this.pk=a[b++];this.Se=a[b++];this.Vg=a[b++];this.Zd=a[b++];this.Tc=a[b++];this.fd=a[b++];this.Gc=a[b++];this.nk=a[b++];this.If=a[b];return!0};function bk(a,b){a.If=a.If.concat(b);ek(a)}function ek(a){0<a.If.length&&!(a.Gc&1)&&(a.li=a.If.shift(),a.Gc|=1);var b=-1;a.Gc&1&&a.Vg&1&&(b=4);0<=b?(a.Zd&=-8,a.Zd|=b,a.ka&&a.lg&&zi(a.ka,a.lg)):(a.Zd|=1,a.ka&&a.lg&&Ai(a.ka,a.lg))}
k.Gn=function(a,b){var c=this.Tc&128?this.Se&255:this.li;this.ba(a,null,b,this.Tc&128?"DLL":"RBR",c);this.Gc&=-2;ek(this);return c};k.rn=function(a,b){var c=this.Tc&128?this.Se>>8:this.Vg;this.ba(a,null,b,this.Tc&128?"DLM":"IER",c);return c};k.sn=function(a,b){var c=this.Zd;this.ba(a,null,b,"IIR",c);return c};k.tn=function(a,b){var c=this.Tc;this.ba(a,null,b,"LCR",c);return c};k.vn=function(a,b){var c=this.fd;this.ba(a,null,b,"MCR",c);return c};
k.un=function(a,b){var c=this.Gc;this.ba(a,null,b,"LSR",c);return c};k.Bn=function(a,b){var c=this.nk;this.ba(a,null,b,"MSR",c);return c};k.ap=function(a,b,c){this.ba(a,b,c,this.Tc&128?"DLL":"THR");this.Tc&128?this.Se=this.Se&-256|b:(this.pk=b,this.Gc&=-97,this.ce?(13!=b&&(8==b?this.ce.value=this.ce.value.slice(0,-1):(this.ce.value+=String.fromCharCode(b),this.ce.scrollTop=this.ce.scrollHeight)),a=!0):a=!1,a&&(this.Gc|=96))};
k.Mo=function(a,b,c){this.ba(a,b,c,this.Tc&128?"DLM":"IER");this.Tc&128?this.Se=this.Se&255|b<<8:this.Vg=b};k.No=function(a,b,c){this.ba(a,b,c,"LCR");this.Tc=b};
k.Oo=function(a,b,c){var d=this.fd;this.ba(a,b,c,"MCR");this.fd=b;this.Mk&&(d^b)&3&&(a=this.Mk,b=this.fd,(c=3==(b&3))?a.lc||(d=!1,a.fd&2||(a.reset(),a.Qa("serial mouse reset"),d=!0),a.fd&1||(a.Qa("serial mouse ID requested"),d=!0),d&&(bk(a.Tf,[77]),a.Qa("serial mouse ID sent")),fk(a,a.Lb),a.lc=c):a.lc&&(a.Qa("serial mouse inactive"),gk(a.Lb),a.lc=c),a.fd=b)};k.Qa=function(a){this.X&&D(this.X,this.X.fk)&&this.X.message(a)};k.ba=function(a,b,c,d,e){this.X&&this.X.ba(this,a,b,c,d,this.X.fk,e)};
var ck={0:V.prototype.Gn,1:V.prototype.rn,2:V.prototype.sn,3:V.prototype.tn,4:V.prototype.vn,5:V.prototype.un,6:V.prototype.Bn},dk={0:V.prototype.ap,1:V.prototype.Mo,3:V.prototype.No,4:V.prototype.Oo};Ba(function(){for(var a=B(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new V(d);Oa(d,c)}});function hk(a){x.call(this,"Mouse",a,hk);if(this.Mi=a.serial)this.Uj="SerialPort";this.lc=!1;this.Ta()}y(x,hk);k=hk.prototype;
k.oc=function(a,b,c,d){this.Da=a;this.na=b;this.S=c;(this.X=d)&&Ph(d,hk)};k.ac=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Uj&&!this.Tf){for(var c=null;(c=C(this.Da,this.Uj,c))&&(!c.lk||!(this.Tf=c.lk(this.Mi,this))););if(this.Tf){if(c=C(this.Da,"Video"))this.Lb=c.Lb}else w(this.id+": "+this.Uj+" "+this.Mi+" unavailable")}this.lc?fk(this,this.Lb):gk(this.Lb)}return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ie()};
k.save=function(){var a=new H(this);a.set(0,this.Zj());return a.data()};k.restore=function(a){return this.ie(a[0])};k.ie=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.lc=a[b++];this.Dg=a[b++];this.Eg=a[b++];this.zf=a[b++];this.Af=a[b++];this.kh=a[b++];this.lh=a[b++];this.fd=a[b];return!0};k.Zj=function(){var a=0,b=[];b[a++]=this.lc;b[a++]=this.Dg;b[a++]=this.Eg;b[a++]=this.zf;b[a++]=this.Af;b[a++]=this.kh;b[a++]=this.lh;b[a]=this.fd;return b};
function fk(a,b){b&&(a.zi||(b.addEventListener("mousemove",function(b){if(a.lc&&a.S&&a.S.Ob){if(0>a.Dg||0>a.Eg)a.Dg=b.clientX,a.Eg=b.clientY;a.zf=b.clientX-a.Dg;a.Af=b.clientY-a.Eg;(a.zf||a.Af)&&ik(a,null,b.clientX,b.clientY);a.Dg=b.clientX;a.Eg=b.clientY}},!1),b.addEventListener("mousedown",function(b){jk(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){jk(a,b.button,!1)},!1),a.zi=!0),b.style.cursor="none")}function gk(a){a&&(a.style.cursor="auto")}
function jk(a,b,c){if(a.lc&&a.S&&a.S.Ob)switch(b){case 0:a.kh!=c&&(a.kh=c,ik(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.lh!=c&&(a.lh=c,ik(a,"mouse button2 "+(c?"dn":"up")))}}function ik(a,b,c,d){var e=64|(a.kh?32:0)|(a.lh?16:0)|(a.Af&192)>>4|(a.zf&192)>>6,f=a.zf&63,g=a.Af&63;a.Qa((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+r(e)+","+r(f)+","+r(g)+"]");bk(a.Tf,[e,f,g]);a.zf=a.Af=0}k.Qa=function(a){this.X&&D(this.X,this.X.vm)&&this.X.message(a)};
Ba(function(){for(var a=B(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new hk(d);Oa(d,c)}});function kk(a,b,c){x.call(this,"Disk",{id:a.vh+".disk"+lk++},kk);this.ia=a;this.Da=a.Da;this.X=a.X;this.Pa=b;this.mode=c;this.Kd=b.name;this.gc=b.gc;this.$b=b.$b;this.rc=b.rc;this.Mb=b.Mb;this.ff=b.ff;this.Ei=this.Ad=!1;this.create();this.se=[];this.Mg=[];this.Pd=null;this.Ok=0;this.Hi=!1;this.Ta()}var lk=0;y(x,kk);k=kk.prototype;k.oc=function(a,b,c,d){this.X=d};
k.ac=function(a,b){b||this.Ei&&!this.Ad&&this.load(this.Kd,this.uf);return!0};k.Wb=function(a,b){if(this.Ad){var c,d=0;if(this.Hi&&!ta("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=mk(this,!1);)if(d=c[0]){this.Ga('Unable to save "'+this.Kd+'" (error '+d+")");break}b&&this.Ad&&(c="action=close&volume="+this.uf,c+="&machine="+this.ia.hf(),c+="&user="+this.ia.ge(),ra(sa()+"/api/v1/disk?"+c,!0),this.Ad=!1);d||this.Ga(this.Kd+" saved")}return!0};
k.create=function(){this.pb=[];if("preload"!=this.mode){for(var a=Array(this.gc),b=0;b<a.length;b++){for(var c=Array(this.$b),d=0;d<c.length;d++){for(var e=Array(this.rc),f=1;f<=e.length;f++)e[f-1]=nk(null,b,d,f,this.Mb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.pb=a}this.ih=0};
k.load=function(a,b,c){var d=b;this.Kd=a;this.uf=b;this.Fk=c;0>b.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.gc+":"+this.$b+":"+this.rc+":"+this.Mb,a+="&machine="+this.ia.hf(),a+="&user="+this.ia.ge(),d=sa()+"/api/v1/disk?"+a,this.Ei=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):
-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=sa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.ff?"":d)+"&format=json"));ra(d,!0,null,this,this.ho,b)};
k.ho=function(a,b,c,d){var e=null;this.gf=!1;var f=0>c&&this.Da&&!this.Da.Nb;if(this.Ei)c?this.Ga('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Ad=!0,e=this);else if(c)this.Ga('Unable to load disk "'+this.Kd+'" (error '+c+")",f);else try{if(0<ea(a,!0).toLowerCase().indexOf("-readonly"))this.gf=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.gf=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.Kd]:0>b.indexOf("0x")&&'["'!=
b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)w(h[0]);else{for(b=a=0;b<h.length;b++)for(c=0;c<h[b].length;c++)for(d=0;d<h[b][c].length;d++){var m=h[b][c][d];if(m){var n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var t=m.data;if(void 0===t){var s=m.bytes;if(void 0!==s&&s.length){for(var f=n<<2,v=s.length;v<f;v++)s[v]=q;this.fill(m,s,0)}else t=[],q=m.pattern=q|q<<8|q<<16|
q<<24,m.data=t;delete m.bytes}nk(m,b,c);for(f=0;f<t.length;f++)a=a+t[f]&4294967295}}this.pb=h;this.ih=a;e=this}else w("Empty disk image: "+this.Kd)}catch(A){w("Disk image error: "+A.message)}this.Fk&&this.Fk.call(this.ia,this.Pa,e,this.Kd,this.uf)};function nk(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Om=b;a.Qm=c;a.Zc=a.Hc=0;a.lb=!1;return a}
k.io=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],g=d[2],h=d[3];a=d[4];b=JSON.parse(b);for(var m=0;h--;){var n=this.seek(e,f,g,!0);if(!n)break;this.fill(n,b,m);m+=n.length;g++}}(d=d[5])&&d(c,a)};function ok(a,b,c,d,e,f){if(a.Ad){var g;g="action=read&volume="+a.uf;g+="&chs="+a.gc+":"+a.$b+":"+a.rc+":"+a.Mb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ia.hf());g+="&user="+a.ia.ge();ra(sa()+"/api/v1/disk?"+g,!0,null,a,a.io,[b,c,d,e,!0,f])}else f&&f(-1,!1)}
function pk(a,b,c){b.lb=!0;var d=a.se.indexOf(b);0<=d&&(a.se.splice(d,1),a.Mg.splice(d,1));a.se.push(b);a.Mg.push(oa());c&&qk(a)}function qk(a){if(a.se.length){var b=a.Mg[0]+2E3;a.Pd&&a.Ok<b&&(clearTimeout(a.Pd),a.Pd=null);if(!a.Pd){var c=oa(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Pd=setTimeout(function(){mk(a,!0)},b);a.Ok=c+b}}else a.Pd&&(clearTimeout(a.Pd),a.Pd=null)}
function mk(a,b){b&&(a.Pd=null);var c=a.se[0];if(c){for(var d=c.Om,e=c.Qm,c=c.sector,f=0,g=[],h=c-1;h<a.pb[d][e].length;h++){var m=a.pb[d][e][h];if(!m.lb)break;var n=a.se.indexOf(m);a.se.splice(n,1);a.Mg.splice(n,1);g=g.concat(rk(m));m.lb=!1;f++}a.Ad?(h={},a.Hi=!0,h.action="write",h.volume=a.uf,h.chs=a.gc+":"+a.$b+":"+a.rc+":"+a.Mb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ia.hf(),h.user=a.ia.ge(),h.data=JSON.stringify(g),d=ra(sa()+"/api/v1/disk",b,h,a,a.no,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.no=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Hi=!1;if(0<=a&&a<this.pb.length&&0<=b&&b<this.pb[a].length)for(e-=1;0<f--&&0<=e&&e<this.pb[a][b].length;e++){var g=this.pb[a][b][e];c?pk(this,g,!1):g.lb||(g.Zc=g.Hc=0)}d&&qk(this)};k.info=function(){return this.pb.length?[this.pb.length,this.pb[0].length,this.pb[0][0].length,this.pb[0][0][0].length]:[0,0,0,0]};
function sk(a){a=JSON.stringify(a.pb);a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");return a=a.replace(/(sector|length|data|pattern):/gm,'"$1":')}
k.seek=function(a,b,c,d,e){var f=null,g=this.Pa,h=this.pb[a];if(h){var m=h[b];if(!m&&g.Mf&&b<g.$b)for(m=h[b]=Array(g.$d),h=0;h<m.length;h++)m[h]=nk(null,a,b,h+1,g.Wa,0);if(m){for(h=0;h<m.length;h++)if(m[h]&&m[h].sector==c){f=m[h];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++h<m.length;)null===m[h].pattern&&d++;ok(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.Mf&&9==g.Na&&(f=m[h]=nk(null,a,b,g.Na,g.Wa,0))}}e&&e(f,!1);return f};
k.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function rk(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function tk(a,b){var c=-1;if(b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c}
k.write=function(a,b,c){if(this.ff)return!1;if(b<a.length){if(c!=tk(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Gc?f<a.Yc?(a.Gc+=a.Yc-f,a.Yc=f):f>=a.Yc+a.Gc&&(a.Gc+=f-(a.Yc+a.Gc)+1):(a.Yc=f,a.Gc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Ad&&pk(this,a,!0)}return!0}return null};
k.save=function(){var a=0,b=[];b[a++]=[this.tf,this.gh];if(!this.Ad&&!this.ff)for(var c=this.ib,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.Gc){for(var h=[],m=0,n=g.Yc,q=g.Yc+g.Gc;n<q;)h[m++]=g.data[n++];b[a++]=[d,e,f,g.Yc,h]}}return b};
k.restore=function(a){var b=0,c="unsupported restore format";if(this.ib.length&&a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&e[1]!=this.gh&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.gh+")",b=-1);for(;d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],m=g[f++],n=g[f++];if(h>=this.ib.length||m>=this.ib[h].length||n>=this.ib[h][m].length){c="sector "+h+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.ff){c="unable to modify write-protected disk";b=-1;break}e=
g[f++];f=g[f++];g=e+f.length;h=this.ib[h][m][n];for(m=h.data.length;m<e;)h.data[m++]=h.pattern;m=0;h.Yc=e;for(h.Gc=f.length;e<g;)h.data[e++]=f[m++];b++}}0>b&&this.Ga("unable to restore disk '"+this.Kd+": "+c);return b};k.Qa=function(a){this.X&&E(this.X,this.X.pm)&&this.X.message(a)};
function uk(a){x.call(this,"FDC",a,uk);this.dmaRead=this.ri;this.dmaWrite=this.si;this.dmaFormat=this.Am;this.Le=null;if(a.autoMount&&(this.Le=a.autoMount,"string"==typeof this.Le))try{this.Le=eval("("+a.autoMount+")")}catch(b){w("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Le=null}this.uc=[];this.Ed();this.Kf()||this.Ta()}y(x,uk);l={};aa={};
var vk={3:{wd:3,be:0,name:aa.Jp},4:{wd:2,be:1,name:aa.Hp},5:{wd:9,be:7,name:aa.Sp},6:{wd:9,be:7,name:aa.Cp},7:{wd:2,be:0,name:aa.Ep},8:{wd:1,be:2,name:aa.Ip},10:{wd:2,be:7,name:aa.Dp},13:{wd:6,be:7,name:aa.xp},15:{wd:3,be:0,name:aa.Gp}};k=uk.prototype;
k.write=function(a,b,c){if(this.gf)return!1;if(b<a.length){if(c!=tk(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Hc?f<a.Zc?(a.Hc+=a.Zc-f,a.Zc=f):f>=a.Zc+a.Hc&&(a.Hc+=f-(a.Zc+a.Hc)+1):(a.Zc=f,a.Hc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Ad&&pk(this,a,!0)}return!0}return null};
k.save=function(){var a=0,b=[];b[a++]=[this.uf,this.ih];if(!this.Ad&&!this.gf)for(var c=this.pb,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.Hc){for(var h=[],m=0,n=g.Zc,q=g.Zc+g.Hc;n<q;)h[m++]=g.data[n++];b[a++]=[d,e,f,g.Zc,h]}}return b};
k.restore=function(a){var b=0,c="unsupported restore format";if(this.pb.length&&a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&e[1]!=this.ih&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.ih+")",b=-1);for(;d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],m=g[f++],n=g[f++];if(h>=this.pb.length||m>=this.pb[h].length||n>=this.pb[h][m].length){c="sector "+h+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.gf){c="unable to modify write-protected disk";b=-1;break}e=
g[f++];f=g[f++];g=e+f.length;if(h=this.pb[h][m][n]){for(m=h.data.length;m<e;)h.data[m++]=h.pattern;m=0;h.Zc=e;for(h.Hc=f.length;e<g;)h.data[e++]=f[m++];b++}}}0>b&&this.Ga("unable to restore disk '"+this.Kd+": "+c);return b};k.Qa=function(a){this.X&&D(this.X,this.X.rm)&&this.X.message(a)};
function uk(a){x.call(this,"FDC",a,uk);this.dmaRead=this.ti;this.dmaWrite=this.ui;this.dmaFormat=this.Dm;this.Me=null;if(a.autoMount&&(this.Me=a.autoMount,"string"==typeof this.Me))try{this.Me=eval("("+a.autoMount+")")}catch(b){w("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Me=null}this.wc=[]}y(x,uk);l={};aa={};
var vk={3:{wd:3,be:0,name:aa.Mp},4:{wd:2,be:1,name:aa.Kp},5:{wd:9,be:7,name:aa.Vp},6:{wd:9,be:7,name:aa.Fp},7:{wd:2,be:0,name:aa.Hp},8:{wd:1,be:2,name:aa.Lp},10:{wd:2,be:7,name:aa.Gp},13:{wd:6,be:7,name:aa.Ap},15:{wd:3,be:0,name:aa.Jp}};k=uk.prototype;
k.xb=function(a,b,c,d){switch(c){case "listDisks":return this.sa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.sa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){w("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d='<a href="'+m+'" target="_blank">'+d+"</a>");c.innerHTML=
d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.sa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||wk(a,c)}}(this,d),!0;case "loadDrive":return this.sa[c]=d,d.onclick=function(a){return function(){var b,c=a.sa.listDisks,d=a.sa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.xa.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=ea(d);a.ca("Attempting to load "+
d+' as "'+c+'"')}for(;xk(a,b,c,d,!1)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var m=a,n=d,q=void 0,q=0;q<m.uc.length;q++)if(m.uc[q][1]==n){m.uc.splice(q,1);break}yk(a,b,!1,!0)}}else yk(a,b);else a.Ga("Nothing to load")}}(this),!0}return!1};k.mc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;this.Da=a;this.ka=C(a,"ChipSet");ib(b,this,zk);mb(b,this,Ak);Cc(c,19,this,this.Ni)};
k.$b=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Da.Di){this.uc=[];for(var c=0;c<this.xa.length;c++)yk(this,c,!0);this.Kf(!0)}}else if(!this.restore(a))return!1;if(this.ka){this.Ch=di(this.ka);for(c=0;c<this.Ch;c++){var d=this.xa[c];d.nk=$h(this.ka,c);2==d.nk&&(d.Ac=80)}if(d=this.sa.listDrives){for(;d.firstChild;)d.removeChild(d.firstChild);d.innerHTML="";for(c=0;c<this.Ch;c++){var e=window.document.createElement("option");e.value=c;e.innerHTML=String.fromCharCode(65+c)+":";d.appendChild(e)}0<
this.Ch&&(d.value="0",wk(this,0))}}}return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Ed()};k.save=function(){var a=new H(this);a.set(0,this.Sj());return a.data()};k.restore=function(a){return this.Ed(a[0])};
k.Ed=function(a){var b=0,c=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.fb=a[b++];b++;this.za=a[b++];this.ac=a[b++];this.pb=a[b++];this.Xa=a[b++];this.sf=a[b++];var d=a[b++],e=a[b++];null!=e&&(this.uc=e);void 0===this.xa&&(this.Ch=0,this.xa=Array(4));for(e=0;e<this.xa.length;e++)void 0===this.xa[e]&&(this.xa[e]={}),this.Li(this.xa[e],e,d[e])||(c=!1);this.oe=a[b++]||0;this.Yl=a[b]||0;return c};
k.Sj=function(){var a=0,b=[];b[a++]=this.fb;b[a++]=0;b[a++]=this.za;b[a++]=this.ac;b[a++]=this.pb;b[a++]=this.Xa;b[a++]=this.sf;b[a++]=this.Uj();for(var c=a++,d=0;d<this.xa.length;d++){var e=this.xa[d];e.va&&Bk(this,e.Oe,e.va)}b[c]=this.uc;b[a++]=this.oe;b[a]=this.Yl;return b};
k.Li=function(a,b,c){var d=0,e=!0;a.fb=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.Ac||40,c[3],9,512,c[1]]);a.Ya=c[d++];a.name=c[d][0];a.Ac=c[d][1];a.nc=c[d][2];a.$c=c[d][3];a.Rb=c[d][4];a.ef=c[d][5];d++;a.nk=1;a.Ha=c[d++];a.Yd=c[d++];a.lb=c[d++];a.Yd=100<=a.Yd?a.Yd-100:a.Yd-a.lb;a.Na=c[d++];a.$d=c[d++];a.Wa=c[d++];a.Va=c[d++];a.Ra=null;a.va||(a.Oe="");var f=c[d++];f===Ck?(f=c[d++],c=c[d],xk(this,b,f,c,!0)?a.va&&Dk(this,f,c,a.va):this.Ta(!1)):void 0!==f&&a.va&&
0>a.va.restore(f)&&(e=!1);e&&a.va&&void 0!==a.Va&&(a.Ra=a.va.seek(a.lb,a.Ha,a.Na));return e};k.Uj=function(){for(var a=0,b=[],c=0;c<this.xa.length;c++)b[a++]=this.Tj(this.xa[c]);return b};k.Tj=function(a){var b=0,c=[];c[b++]=a.Ya;c[b++]=[a.name,a.Ac,a.nc,a.$c,a.Rb,a.ef];c[b++]=a.Ha;c[b++]=a.Yd+100;c[b++]=a.lb;c[b++]=a.Na;c[b++]=a.$d;c[b++]=a.Wa;c[b++]=a.Va;c[b++]=Ck;c[b++]=a.cm;c[b]=a.Oe;return c};k.uk=function(a){var b;a=this.xa[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
k.fm=function(a,b,c){if(a.va){var d=a.va.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.lb=Math.floor(b/f),b%=f,a.Ha=Math.floor(b/e),a.Na=b%e+1,a.Wa=c*d[3],a.Ya=0,!0}return!1};k.Kf=function(a){a||(this.ze=0);if(this.Le)for(var b in this.Le){var c=this.Le[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.xa.length){!xk(this,d,c.name,c.path,!0)&&a&&this.Ta(!1);continue}}this.Ga("Unrecognized auto-mount specification for drive "+b)}return!!this.ze};
function xk(a,b,c,d,e){var f=a.xa[b];if(d&&f.Oe!=d){yk(a,b,e,!0);if(f.Jc)return a.Ga("Drive "+b+" busy"),!0;f.Jc=!0;e&&(f.Fe=!0,a.ze++,a.Qa("loading diskette '"+c+"'"));(new kk(a,f,"preload")).load(c,d,a.Un);return!1}return!0}
k.Un=function(a,b,c,d){a.Jc=!1;b&&b.ib.length>a.Ac&&(this.Ga('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.fb)),b=null);b&&(a.va=b,a.cm=c,a.Oe=d,Dk(this,c,d,b),this.oe|=128,this.Ga('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.fb),a.Fe));a.Fe&&(a.Fe=!1,--this.ze||this.Ta());wk(this,a.fb)};
function wk(a,b){if(0<=b&&b<a.xa.length){var c=a.xa[b],d=a.sa.listDisks,e=a.sa.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.Oe){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function yk(a,b,c,d){var e=a.xa[b];e.va&&(Bk(a,e.Oe,e.va),e.cm="",e.Oe="",e.va=null,a.oe|=128,d||a.Ga("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||wk(a,b))}
function Dk(a,b,c,d){var e;for(e=0;e<a.uc.length;e++)if(a.uc[e][1]==c){d.restore(a.uc[e][2]);return}a.uc[e]=[b,c,[]]}function Bk(a,b,c){var d;for(d=0;d<a.uc.length;d++)if(a.uc[d][1]==b){a.uc[d][2]=c.save();break}}k.Eo=function(a,b,c){this.ba(a,b,c,"OUTPUT");b&4?this.sf&4||this.sf&8&&this.ka&&zi(this.ka,6):this.Ed();this.sf=b};k.jn=function(a,b){this.ba(a,null,b,"STATUS",this.za);return this.za};
k.gn=function(a,b){var c=0;this.pb<this.Xa&&(c=this.ac[this.pb]);this.sf&8&&this.ka&&Ai(this.ka,6);this.ba(a,null,b,"DATA["+this.pb+"]",c);++this.pb>=this.Xa&&(this.za&=-81,this.pb=this.Xa=0);return c};
k.Do=function(a,b,c){this.ba(a,b,c,"DATA["+this.Xa+"]");this.Xa<this.ac.length&&(this.ac[this.Xa++]=b);a=this.ac[0]&31;if(void 0!==vk[a]&&this.Xa>=vk[a].wd){b=!1;this.pb=0;var d;a=this.Oa()&31;switch(a){case 3:this.Oa(l.Kp);this.Oa(l.zp);this.Kb();break;case 4:c=this.Oa(l.Af);this.fb=c&3;d=this.xa[this.fb];this.Kb();this.hb((d.Ya&4278190080)>>>24,l.Op);break;case 5:case 6:c=this.Oa(l.Af);this.fb=c&3;d=this.xa[this.fb];d.Ha=c>>2&1;d.lb=this.Oa(l.Th);this.Oa(l.Uh);d.Na=this.Oa(l.Xh);b=this.Oa(l.Ig);
d.Wa=128<<b;d.$d=this.Oa(l.wp);this.Oa(l.mm);this.Oa(l.vp);6==a?this.ti(d):this.ui(d);this.Kb();Ek(this,d);Fk(this,d);Gk(this,d);this.hb(d.lb,l.Th);this.hb(d.Ha,l.Uh);this.hb(d.Na,l.Xh);this.hb(b,l.Ig);b=!0;break;case 7:c=this.Oa(l.Af);this.fb=c&3;d=this.xa[this.fb];d.lb=d.Yd=0;d.Ya=268435488;this.Kb();b=!0;break;case 8:d=this.xa[this.fb];d.Ha=0;this.Kb();Ek(this,d);this.hb(d.lb,l.Bp);this.fb=this.fb+1&3;break;case 10:c=this.Oa(l.Af);this.fb=c&3;d=this.xa[this.fb];d.Ha=c>>2&1;d.Na=1;b=0;d.Ya=0;d.va&&
(d.Ra=d.va.seek(d.lb,d.Ha,d.Na))?b=d.Ra.length:d.Ya=1088;Ek(this,d);Fk(this,d);Gk(this,d);this.hb(d.lb,l.Th);this.hb(d.Ha,l.Uh);this.hb(d.Na,l.Xh);this.hb(b,l.Ig);b=!0;break;case 13:c=this.Oa(l.Af);this.fb=c&3;d=this.xa[this.fb];d.Ha=c>>2&1;b=this.Oa(l.Ig);d.Wa=128<<b;d.$d=this.Oa(l.Fp);this.Oa(l.mm);d.jk=this.Oa(l.up);this.wk(d);this.Kb();Ek(this,d);Fk(this,d);Gk(this,d);this.hb(d.lb,l.Th);this.hb(d.Ha,l.Uh);this.hb(d.Na,l.Xh);this.hb(b,l.Ig);b=!0;break;case 15:c=this.Oa(l.Af),this.fb=c&3,d=this.xa[this.fb],
d.Ha=c>>2&1,a=this.Oa(l.Ap),d.lb+=a-d.Yd,0>d.lb&&(d.lb=0),d.lb>=d.Ac&&(d.lb=d.Ac-1),d.Yd=a,d.Ya=32,0==d.lb&&(d.Ya|=268435456),this.Kb(),b=!0}0<this.Xa&&(this.za|=80);this.sf&8&&(!d||d.Ya&8||!b||this.ka&&zi(this.ka,6))}};k.hn=function(a,b){var c=this.oe;this.oe&=-129;this.ba(a,null,b,"INPUT",c);return c};k.Co=function(a,b,c){this.ba(a,b,c,"CONTROL");this.Yl=b};k.Oa=function(){var a=this.ac[this.pb];this.pb++;return a};k.Kb=function(){this.pb=this.Xa=0};k.hb=function(a){this.ac[this.Xa++]=a};
function Ek(a,b){a.hb(b.fb|b.Ha<<2|b.Ya&255,l.Lp)}function Fk(a,b){a.hb((b.Ya&65280)>>>8,l.Mp)}function Gk(a,b){a.hb((b.Ya&16711680)>>>16,l.Np)}k.ri=function(a,b,c){void 0===b||0>b?this.qc(a,c):c(-1,!1)};k.si=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};k.Am=function(a,b){return void 0!==b&&0<=b?this.Wj(a,b):-1};k.ti=function(a){a.Ya=72;a.va&&(a.Ra=null,a.Ya=0,this.ka&&(si(this.ka,2,this,"dmaRead",a),mi(this.ka,2)))};
k.ui=function(a){a.Ya=72;a.va&&(a.va.ff?a.Ya=576:(a.Ra=null,a.Ya=0,this.ka&&(si(this.ka,2,this,"dmaWrite",a),mi(this.ka,2))))};k.wk=function(a){a.Ya=72;a.va&&(a.Ra=null,a.Ya=0,this.ka&&(a.Ce=0,a.wc=Array(4),a.Lf=!0,a.Rf=0,si(this.ka,2,this,"dmaFormat",a),mi(this.ka,2),a.Lf=!1))};k.qc=function(a,b){var c=-1;if(!a.Ya&&a.va){do{if(a.Ra&&0<=(c=tk(a.Ra,a.Va++)))break;a.Ra=a.va.seek(a.lb,a.Ha,a.Na);if(!a.Ra){a.Ya=1088;break}a.Va=0;this.If(a)}while(1)}b(c,!1)};
k.Cc=function(a,b){if(a.Ya||!a.va)return-1;do{if(a.Ra&&a.va.write(a.Ra,a.Va++,b))break;a.Ra=a.va.seek(a.lb,a.Ha,a.Na);if(!a.Ra){a.Ya=8256;b=-1;break}a.Va=0;this.If(a)}while(1);return b};k.If=function(a){a.Na++;a.Na>=a.$c+1&&(a.Na=1,a.Ha++,a.Ha>=a.nc&&(a.Ha=0,a.lb++))};k.Wj=function(a,b){if(a.Ya)return-1;a.wc[a.Ce++]=b;if(a.Ce==a.wc.length){a.lb=a.wc[0];a.Ha=a.wc[1];a.Na=a.wc[2];a.Wa=128<<a.wc[3];for(var c=a.Ce=0;c<a.Wa;c++)if(0>this.Cc(a,a.jk))return-1;a.Rf++}a.Rf>=a.$d&&(b=-1);return b};
k.Ni=function(a){var b=this.S.J&255;this.X&&E(this.X,this.X.Eg)&&128>b&&(Ec(this.X,19,a),Fc(this.S,a,function(a,b){return function(e){Gc(a.X,19,e,F(a.S)-b)}}(this,F(this.S))));return!0};k.Qa=function(a){this.X&&E(this.X,this.X.Eg)&&this.X.message(a)};k.ba=function(a,b,c,d,e){this.X&&this.X.ba(this,a,b,c,d,this.X.Eg,e)};var zk={1012:uk.prototype.jn,1013:uk.prototype.gn,1015:uk.prototype.hn},Ak={1010:uk.prototype.Eo,1013:uk.prototype.Do,1015:uk.prototype.Co};
Ba(function(){for(var a=B(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new uk(d);Oa(d,c)}});function W(a){x.call(this,"HDC",a,W);this.dmaRead=this.ri;this.dmaWrite=this.si;this.dmaWriteBuffer=this.Bm;this.dmaWriteFormat=this.Cm;this.Zh=[];if(a.drives)try{this.Zh=eval("("+a.drives+")")}catch(b){w("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.ag=(this.Ee="at"==a.type)?1:0;this.Mm=this.Ee?2:3}y(x,W);
var Hk=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];k=W.prototype;k.xb=function(){return!1};k.mc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;this.Da=a;this.ka=C(a,"ChipSet");ib(b,this,this.Ee?Ik:Jk);mb(b,this,this.Ee?Kk:Lk);Cc(c,19,this,this.Mn);Cc(c,64,this,this.Ni);this.reset();this.Kf()||this.Ta()};
k.$b=function(a,b){if(!b)if(!a||!this.restore)this.Ed(),this.Da.Di&&this.Kf(!0);else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.gf=function(){return this.Da?this.Da.gf():""};k.ge=function(){return this.Da?this.Da.ge():""};k.reset=function(){this.Ed(null,!0)};k.save=function(){var a=new H(this);a.set(0,this.Sj());return a.data()};k.restore=function(a){return this.Ed(a[0])};
k.Ed=function(a,b){var c=0,d=!0;if(this.Ee)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.ne=a[c++],this.bm=a[c++],this.Mh=a[c++],this.Nh=a[c++],this.Lh=a[c++],this.Kh=a[c++],this.rf=a[c++],this.za=a[c++],this.Pj=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.qf=a[c++];this.za=a[c++];this.ac=a[c++];this.pb=a[c++];this.Xa=a[c++];this.am=a[c++];this.$l=a[c++];this.Zl=a[c++];var e=a[c++];void 0!==e?this.hf=e:void 0===this.hf&&(this.hf=-1)}void 0===this.xa&&(this.xa=Array(this.Zh.length));c=a[c];void 0===
c&&(c=[]);for(e=0;e<this.xa.length;e++){void 0===this.xa[e]&&(this.xa[e]={});var f=this.xa[e];this.Li(e,f,this.Zh[e],c[e],b)||(d=!1);null!=this.qf&&1>=e&&(this.qf|=(f.type&3)<<(1-e<<1))}return d};
k.Sj=function(){var a=0,b=[];this.Ee?(b[a++]=this.ne,b[a++]=this.bm,b[a++]=this.Mh,b[a++]=this.Nh,b[a++]=this.Lh,b[a++]=this.Kh,b[a++]=this.rf,b[a++]=this.za,b[a++]=this.Pj):(b[a++]=this.qf,b[a++]=this.za,b[a++]=this.ac,b[a++]=this.pb,b[a++]=this.Xa,b[a++]=this.am,b[a++]=this.$l,b[a++]=this.Zl,b[a++]=this.hf);b[a]=this.Uj();return b};
k.Li=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.fb=a;b.errorCode=d[f++];b.hm=d[f++];b.ef=d[f++];b.We=d[f++];b.Xe=d[f++];b.Ha=d[f++];b.nc=d[f++];b.Qd=d[f++];b.Na=d[f++];b.$d=d[f++];b.Wa=d[f++];b.Yg=this.Ee?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.ge()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Hk[this.ag][b.type])b.type=this.Mm;c=Hk[this.ag][b.type];
b.$c=c[2]||17;b.Rb=c[3]||512;if(e&&this.ka&&(e=this.ka,c=b.type,e.pa)){var h=e.pa[18],h=a?h&240|c:h&15|c<<4;e.pa&&(e.pa[18]=h,ai(e))}void 0===b.va&&(b.va=null,this.Ga("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Mk(this,b);b.Va=d[f++];b.Ra=null;b.va&&(a=d[f],void 0!==a&&0>b.va.restore(a)&&(g=!1),g&&void 0!==b.Va&&(b.Ra=b.va.seek(b.Qd,b.Ha,b.Na+b.Yg)));return g};k.Uj=function(){for(var a=0,b=[],c=0;c<this.xa.length;c++)b[a++]=this.Tj(this.xa[c]);return b};
k.Tj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.hm;c[b++]=a.ef;c[b++]=a.We;c[b++]=a.Xe;c[b++]=a.Ha;c[b++]=a.nc;c[b++]=a.Qd;c[b++]=a.Na;c[b++]=a.$d;c[b++]=a.Wa;c[b++]=a.Va;c[b]=a.va?a.va.save():null;return c};k.uk=function(a){var b;a=this.xa[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
function Mk(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.We[2])?e=b.We[0]<<8|b.We[1]:c=b.type);null==c||d||(d=Hk[a.ag][c][1],e=Hk[a.ag][c][0]);d&&((c=Hk[a.ag][b.type])&&e!=c[0]&&d!=c[1]&&a.Ga("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Ac=e,b.nc=d,null==b.va&&(b.va=new kk(a,b,b.mode)))}}
k.fm=function(a,b,c){if(a.va){var d=a.va.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.Qd=Math.floor(b/g),b%=g,a.Ha=Math.floor(b/f),a.Na=b%f,a.Wa=c*d[3],a.errorCode=0,!0}}return!1};
k.Kf=function(a){a||(this.ze=0);for(var b=0;b<this.xa.length;b++){var c=this.xa[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.xa[b];e.Jc?(this.Ga("Drive "+b+" busy"),d=!0):(e.Jc=!0,e.Fe=!0,this.ze++,this.Qa("loading "+d),(e.va||new kk(this,e,e.mode)).load(d,c,this.Tn),d=!1);!d&&a&&this.Ta(!1)}else a&&void 0!==c.type&&(c.va=null,Mk(this,c,c.type))}return!!this.ze};
k.Tn=function(a,b,c){a.Jc=!1;(a.va=b)&&this.Ga('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.fb),a.Fe);a.Fe&&(a.Fe=!1,--this.ze||this.Ta())};k.Jn=function(a,b){var c=0;this.pb<this.Xa&&(c=this.ac[this.pb]);this.ka&&Ai(this.ka,5);this.za&=-33;this.ba(a,null,b,"DATA["+this.pb+"]",c);++this.pb>=this.Xa&&(this.pb=this.Xa=0,this.za&=-15);return c};
k.$o=function(a,b,c){this.ba(a,b,c,"DATA["+this.Xa+"]");this.Xa<this.ac.length&&(this.ac[this.Xa++]=b);a=12!=this.ac[0]?6:this.ac.length;6==this.Xa&&(this.za&=-2);this.Xa>=a&&(this.za|=2,this.za&=-2,Nk(this))};k.Kn=function(a,b){var c=this.za;this.ba(a,null,b,"STATUS",c);this.pb<this.Xa&&(this.za|=1);return c};k.cp=function(a,b,c){this.ba(a,b,c,"RESET");this.am=b;this.ka&&Ai(this.ka,5);this.Ed()};k.In=function(a,b){this.ba(a,null,b,"CONFIG",this.qf);return this.qf};
k.bp=function(a,b,c){this.ba(a,b,c,"PULSE");this.$l=b;this.za=13};k.ap=function(a,b,c){this.ba(a,b,c,"PATTERN");this.Zl=b};k.Kj=function(a,b,c){this.ba(a,b,c,"NOISE")};k.Um=function(a,b){var c=-1,d=!1;if(this.Pa&&(d=0<this.Pa.Va,c=this.qc(this.Pa),this.Pa.Va==this.Pa.Rb))if(this.Pa.Wa-=this.Pa.Rb,this.Pa.Wa>=this.Pa.Rb){var e=this;this.qc(this.Pa,function(a){0<=a?e.ka&&zi(e.ka,14):(e.za=1,e.ne=16)},!1)}else this.za=80;d||this.ba(a,null,b,"DATA",c);return c};
k.ro=function(a,b,c){this.Pa&&0!=this.Pa.Va||this.ba(a,b,c,"DATA");this.Pa&&this.Pa.Wa>=this.Pa.Rb&&(0>this.Cc(this.Pa,b)?(this.za=1,this.ne=16):this.Pa.Va==this.Pa.Rb&&(this.Pa.Wa-=this.Pa.Rb,this.ka&&zi(this.ka,14),this.Pa.Wa>=this.Pa.Rb||(this.za=80)))};k.Wm=function(a,b){var c=this.ne;this.ba(a,null,b,"ERROR",c);return c};k.vo=function(a,b,c){this.ba(a,b,c,"WPREC");this.bm=b};k.Xm=function(a,b){var c=this.Mh;this.ba(a,null,b,"SECCNT",c);return c};
k.to=function(a,b,c){this.ba(a,b,c,"SECCNT");this.Mh=b};k.Ym=function(a,b){var c=this.Nh;this.ba(a,null,b,"SECNUM",c);return c};k.uo=function(a,b,c){this.ba(a,b,c,"SECNUM");this.Nh=b};k.Tm=function(a,b){var c=this.Lh;this.ba(a,null,b,"CYLLO",c);return c};k.qo=function(a,b,c){this.ba(a,b,c,"CYLLO");this.Lh=b};k.Sm=function(a,b){var c=this.Kh;this.ba(a,null,b,"CYLHI",c);return c};k.po=function(a,b,c){this.ba(a,b,c,"CYLHI");this.Kh=b};k.Vm=function(a,b){var c=this.rf;this.ba(a,null,b,"DRVHD",c);return c};
k.so=function(a,b,c){this.ba(a,b,c,"DRVHD");this.rf=b;this.za=this.xa[this.rf&16?1:0]?this.za|64:this.za&-65};k.Zm=function(a,b){var c=this.za;this.ba(a,null,b,"STATUS",c);return c};k.oo=function(a,b,c){this.ba(a,b,c,"COMMAND");this.Pj=b;this.ka&&Ai(this.ka,14);Ok(this)};
function Ok(a){var b=!1,c=a.Pj,d=a.rf&16?1:0,e=a.rf&15,f=a.Lh|(a.Kh&3)<<8,g=a.Nh,h=a.Mh;a.Pa=null;a.ne=0;a.za=80;(d=a.xa[d])?(d.Qd=f,d.Ha=e,d.Na=g,d.Wa=h*d.Rb,c=144<=c?c:c&240,d.Ra=null,d.errorCode=0,a.Pa=d):c=-1;switch(c&240){case 32:a.qc(d,function(b){0<=b&&a.ka?(zi(a.ka,14),a.za=136):(a.za=1,a.ne=16)},!1);break;case 48:a.ka?(zi(a.ka,14),a.za=136):(a.za=1,a.ne=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.ne=1;b=!0;break;case 145:d.nc=e+1,d.$c=h,b=!0}b&&a.ka&&zi(a.ka,14)}
function Nk(a){a.pb=0;var b=a.Oa(),c=a.Oa(),d=c&32,e=d>>5,f=c&31,g=a.Oa(),h=a.Oa(),m=g<<2&768|h,n=g&63,q=a.Oa(),t=a.Oa(),s=a.xa[e];s&&(s.Qd=m,s.Ha=f,s.Na=n,s.Wa=q*s.Rb);switch(b){case 3:a.Kb(s?s.errorCode:4);a.hb(c);a.hb(g);a.hb(h);a.hb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Oa());)s&&c<s.We.length&&(s.We[c++]=b);s&&Mk(a,s);b=0;s||a.hf!=e||(a.hf=-1,b=2);a.Kb(b|d);b=-1;break;case 224:case 228:a.Kb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.hm=0),b){case 0:a.Kb(0|d);break;case 1:s.Tp=
t;a.Kb(0|d);break;case 5:a.Kb(0|d);break;case 8:a.ti(s,function(b){a.Kb(b|d)});break;case 10:a.ui(s,function(b){a.Kb(b|d)});break;case 15:Pk(a,s,function(b){a.Kb(b|d)});break;default:a.Kb(2|d)}}k.Oa=function(){var a=-1;this.pb<this.Xa&&(a=this.ac[this.pb++]);return a};k.Kb=function(a){this.pb=this.Xa=0;void 0!==a&&this.hb(a);this.ka&&zi(this.ka,5);this.za|=32};k.hb=function(a){this.ac[this.Xa++]=a};k.ri=function(a,b,c){void 0===b||0>b?this.qc(a,c):c(-1,!1)};
k.si=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};k.Bm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Va<a.Xe.length?a.Xe[a.Va++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.Cm=function(a,b){return void 0!==b&&0<=b?this.Wj(a,b):-1};k.ti=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.errorCode=0;si(this.ka,3,this,"dmaRead",a);mi(this.ka,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.ui=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.errorCode=0;si(this.ka,3,this,"dmaWrite",a);mi(this.ka,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Pk(a,b,c){b.errorCode=4;b.Xe&&b.Xe.length==b.Wa||(b.Xe=Array(b.Wa));b.Va=0;a.ka?(b.errorCode=0,si(a.ka,3,a,"dmaWriteBuffer",b),mi(a.ka,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.wk=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.Ce=0;a.wc=Array(4);a.Lf=!0;a.Rf=0;a.errorCode=0;si(this.ka,3,this,"dmaWriteFormat",a);mi(this.ka,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Lf=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.qc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ra&&(d=tk(a.Ra,a.Va),a.Va+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;a.va.seek(a.Qd,a.Ha,a.Na+a.Yg,!1,function(c,d){var m=-1;(a.Ra=c)?(a.Va=0,f.If(a),m=tk(a.Ra,a.Va),a.Va+=e):a.errorCode=20;b(m,d)})}return d};
k.Cc=function(a,b){if(a.errorCode)return-1;do{if(a.Ra&&a.va.write(a.Ra,a.Va++,b))break;a.va.seek(a.Qd,a.Ha,a.Na+a.Yg,!0,function(b){a.Ra=b});if(!a.Ra){a.errorCode=20;b=-1;break}a.Va=0;this.If(a)}while(1);return b};k.If=function(a){a.Na++;var b=1-a.Yg;a.Na>=a.$c+b&&(a.Na=b,a.Ha++,a.Ha>=a.nc&&(a.Ha=0,a.Qd++))};
k.Wj=function(a,b){if(a.errorCode)return-1;a.wc[a.Ce++]=b;if(a.Ce==a.wc.length){a.Qd=a.wc[0];a.Ha=a.wc[1];a.Na=a.wc[2];a.Wa=128<<a.wc[3];for(var c=a.Ce=0;c<a.Wa;c++)if(0>this.Cc(a,a.jk))return-1;a.Rf++}a.Rf>=a.$d&&(b=-1);return b};k.Mn=function(a){var b=this.S.J&255;!(this.S.G>>8)&&128<b&&(this.hf=b-128);this.X&&E(this.X,this.X.Wh)&&128<=b&&(Ec(this.X,19,a),Fc(this.S,a,function(a,b){return function(e){Gc(a.X,19,e,F(a.S)-b)}}(this,F(this.S))));return!0};
k.Ni=function(){var a;(a=this.S.G>>8)||(a=!this.ka)||(a=!(this.ka.tb[0].vd&64));return a?!0:!1};k.Qa=function(a){this.X&&E(this.X,this.X.Wh)&&this.X.message(a)};k.ba=function(a,b,c,d,e){this.X&&this.X.ba(this,a,b,c,d,this.X.Wh,e)};
var Jk={800:W.prototype.Jn,801:W.prototype.Kn,802:W.prototype.In},Ik={496:W.prototype.Um,497:W.prototype.Wm,498:W.prototype.Xm,499:W.prototype.Ym,500:W.prototype.Tm,501:W.prototype.Sm,502:W.prototype.Vm,503:W.prototype.Zm},Lk={800:W.prototype.$o,801:W.prototype.cp,802:W.prototype.bp,803:W.prototype.ap,807:W.prototype.Kj,811:W.prototype.Kj,815:W.prototype.Kj},Kk={496:W.prototype.ro,497:W.prototype.vo,498:W.prototype.to,499:W.prototype.uo,500:W.prototype.qo,501:W.prototype.po,502:W.prototype.so,503:W.prototype.oo};
Ba(function(){for(var a=B(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new W(d);Oa(d,c)}});function Qk(a){x.call(this,"Debugger",a,Qk);this.$g=this.Zc=-1;this.Dc=[0,0];this.ek=[0,0];this.Ih=null;this.bf=!1;this.qe=[0,0];this.vc=[];Rk(this);Sk(this);Ph(this,this,a.messages,!0);this.jb={AL:0,CL:0,DL:0,BL:0,AH:0,CH:0,DH:0,BH:0,AX:0,CX:0,DX:0,BX:0,SP:0,BP:0,SI:0,DI:0,ES:0,CS:0,SS:0,DS:0,IP:0};this.Rj=a.commands}y(x,Qk);
d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.sa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||wk(a,c)}}(this,d),!0;case "loadDrive":return this.sa[c]=d,d.onclick=function(a){return function(){var b,c=a.sa.listDisks,d=a.sa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.za.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=ea(d);a.ca("Attempting to load "+
d+' as "'+c+'"')}for(;xk(a,b,c,d,!1)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var m=a,n=d,q=void 0,q=0;q<m.wc.length;q++)if(m.wc[q][1]==n){m.wc.splice(q,1);break}yk(a,b,!1,!0)}}else yk(a,b);else a.Ga("Nothing to load")}}(this),!0}return!1};k.oc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;this.Da=a;this.ka=C(a,"ChipSet");this.Ed();ib(b,this,zk);mb(b,this,Ak);d&&Ph(d,uk);Cc(c,19,this,this.Pi);this.Lf()||this.Ta()};
k.ac=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Da.Fi){this.wc=[];for(var c=0;c<this.za.length;c++)yk(this,c,!0);this.Lf(!0)}}else if(!this.restore(a))return!1;if(c=this.sa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.Yi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Yi&&(c.value="0",wk(this,0))}}return!0};
k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Ed()};k.save=function(){var a=new H(this);a.set(0,this.Wj());return a.data()};k.restore=function(a){return this.Ed(a[0])};
k.Ed=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.fb=a[b++];b++;this.ya=a[b++];this.bc=a[b++];this.ob=a[b++];this.Xa=a[b++];this.tf=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.wc=c);void 0===this.za&&(this.Yi=4,this.ka&&(this.Yi=di(this.ka)),this.za=Array(4));for(c=0;c<this.za.length;c++){var f=this.za[c];void 0===f&&(f=this.za[c]={},f.Am=$h(this.ka,c),f.gc=40,f.rc=9,2==f.Am&&(f.gc=80,f.rc=18));this.Ni(f,c,e[c])||(d=!1)}this.oe=a[b++]||0;this.$l=a[b]||0;return d};
k.Wj=function(){var a=0,b=[];b[a++]=this.fb;b[a++]=0;b[a++]=this.ya;b[a++]=this.bc;b[a++]=this.ob;b[a++]=this.Xa;b[a++]=this.tf;b[a++]=this.Yj();for(var c=a++,d=0;d<this.za.length;d++){var e=this.za[d];e.va&&Bk(this,e.Pe,e.va)}b[c]=this.wc;b[a++]=this.oe;b[a]=this.$l;return b};
k.Ni=function(a,b,c){var d=0,e=!0;a.fb=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.gc||40,a.$b||c[3],a.rc||9,a.Mb||512,c[1]]);a.Ya=c[d++];a.name=c[d][0];a.gc=c[d][1];a.$b=c[d][2];a.rc=c[d][3];a.Mb=c[d][4];a.ff=c[d][5];(a.Xi=c[d][6])?(a.Eh=c[d][7],a.Fh=c[d][8]):(a.Xi=a.gc,a.Eh=a.$b,a.Fh=a.rc);d++;a.Ha=c[d++];a.Yd=c[d++];a.kb=c[d++];a.Yd=100<=a.Yd?a.Yd-100:a.Yd-a.kb;a.Na=c[d++];a.$d=c[d++];a.Wa=c[d++];a.Va=c[d++];a.Ra=null;a.va||(a.Pe="");var f=c[d++];f===Ck?(f=
c[d++],c=c[d],xk(this,b,f,c,!0)?a.va&&Dk(this,f,c,a.va):this.Ta(!1)):void 0!==f&&a.va&&0>a.va.restore(f)&&(e=!1);e&&a.va&&void 0!==a.Va&&(a.Ra=a.va.seek(a.kb,a.Ha,a.Na));return e};k.Yj=function(){for(var a=0,b=[],c=0;c<this.za.length;c++)b[a++]=this.Xj(this.za[c]);return b};k.Xj=function(a){var b=0,c=[];c[b++]=a.Ya;c[b++]=[a.name,a.gc,a.$b,a.rc,a.Mb,a.ff,a.Xi,a.Eh,a.Fh];c[b++]=a.Ha;c[b++]=a.Yd+100;c[b++]=a.kb;c[b++]=a.Na;c[b++]=a.$d;c[b++]=a.Wa;c[b++]=a.Va;c[b++]=Ck;c[b++]=a.em;c[b]=a.Pe;return c};
k.wk=function(a){var b;a=this.za[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};k.hm=function(a,b,c){if(a.va){var d=a.va.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.kb=Math.floor(b/f),b%=f,a.Ha=Math.floor(b/e),a.Na=b%e+1,a.Wa=c*d[3],a.Ya=0,!0}return!1};
k.Lf=function(a){a||(this.Ae=0);if(this.Me)for(var b in this.Me){var c=this.Me[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.za.length){!xk(this,d,c.name,c.path,!0)&&a&&this.Ta(!1);continue}}this.Ga("Unrecognized auto-mount specification for drive "+b)}return!!this.Ae};
function xk(a,b,c,d,e){var f=a.za[b];if(d&&f.Pe!=d){yk(a,b,e,!0);if(f.Kc)return a.Ga("Drive "+b+" busy"),!0;f.Kc=!0;e&&(f.Ge=!0,a.Ae++,a.Qa("loading diskette '"+c+"'"));(new kk(a,f,"preload")).load(c,d,a.Xn);return!1}return!0}
k.Xn=function(a,b,c,d){var e;a.Kc=!1;b&&(e=b.info(),b&&e[0]>a.gc||e[1]>a.$b)&&(this.Ga('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.fb)),b=null);b&&(a.va=b,a.em=c,a.Pe=d,Dk(this,c,d,b),this.oe|=128,this.Ga('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.fb),a.Ge),a.Xi=e[0],a.Eh=e[1],a.Fh=e[2]);a.Ge&&(a.Ge=!1,--this.Ae||this.Ta());wk(this,a.fb)};
function wk(a,b){if(0<=b&&b<a.za.length){var c=a.za[b],d=a.sa.listDisks,e=a.sa.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.Pe){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function yk(a,b,c,d){var e=a.za[b];e.va&&(Bk(a,e.Pe,e.va),e.em="",e.Pe="",e.va=null,a.oe|=128,d||a.Ga("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||wk(a,b))}
function Dk(a,b,c,d){var e;for(e=0;e<a.wc.length;e++)if(a.wc[e][1]==c){d.restore(a.wc[e][2]);return}a.wc[e]=[b,c,[]]}function Bk(a,b,c){var d;for(d=0;d<a.wc.length;d++)if(a.wc[d][1]==b){a.wc[d][2]=c.save();break}}k.Ho=function(a,b,c){this.ba(a,b,c,"OUTPUT");b&4?this.tf&4||this.tf&8&&this.ka&&zi(this.ka,6):this.Ed();this.tf=b};k.mn=function(a,b){this.ba(a,null,b,"STATUS",this.ya);return this.ya};
k.kn=function(a,b){var c=0;this.ob<this.Xa&&(c=this.bc[this.ob]);this.tf&8&&this.ka&&Ai(this.ka,6);this.ba(a,null,b,"DATA["+this.ob+"]",c);++this.ob>=this.Xa&&(this.ya&=-81,this.ob=this.Xa=0);return c};
k.Go=function(a,b,c){this.ba(a,b,c,"DATA["+this.Xa+"]");this.Xa<this.bc.length&&(this.bc[this.Xa++]=b);a=this.bc[0]&31;if(void 0!==vk[a]&&this.Xa>=vk[a].wd){b=!1;this.ob=0;var d;a=this.Oa()&31;switch(a){case 3:this.Oa(l.Np);this.Oa(l.Cp);this.Kb();break;case 4:c=this.Oa(l.Bf);this.fb=c&3;d=this.za[this.fb];this.Kb();this.hb((d.Ya&4278190080)>>>24,l.Rp);break;case 5:case 6:c=this.Oa(l.Bf);this.fb=c&3;d=this.za[this.fb];d.Ha=c>>2&1;d.kb=this.Oa(l.Vh);this.Oa(l.Wh);d.Na=this.Oa(l.Zh);b=this.Oa(l.Kg);
d.Wa=128<<b;d.$d=this.Oa(l.zp);this.Oa(l.om);this.Oa(l.yp);6==a?this.vi(d):this.wi(d);this.Kb();Ek(this,d);Fk(this,d);Gk(this,d);this.hb(d.kb,l.Vh);this.hb(d.Ha,l.Wh);this.hb(d.Na,l.Zh);this.hb(b,l.Kg);b=!0;break;case 7:c=this.Oa(l.Bf);this.fb=c&3;d=this.za[this.fb];d.kb=d.Yd=0;d.Ya=268435488;this.Kb();b=!0;break;case 8:d=this.za[this.fb];d.Ha=0;this.Kb();Ek(this,d);this.hb(d.kb,l.Ep);this.fb=this.fb+1&3;break;case 10:c=this.Oa(l.Bf);this.fb=c&3;d=this.za[this.fb];d.Ha=c>>2&1;d.Na=1;b=0;d.Ya=0;d.va&&
(d.Ra=d.va.seek(d.kb,d.Ha,d.Na))?b=d.Ra.length:d.Ya=1088;Ek(this,d);Fk(this,d);Gk(this,d);this.hb(d.kb,l.Vh);this.hb(d.Ha,l.Wh);this.hb(d.Na,l.Zh);this.hb(b,l.Kg);b=!0;break;case 13:c=this.Oa(l.Bf);this.fb=c&3;d=this.za[this.fb];d.Ha=c>>2&1;b=this.Oa(l.Kg);d.Wa=128<<b;d.$d=this.Oa(l.Ip);this.Oa(l.om);d.mk=this.Oa(l.xp);this.yk(d);this.Kb();Ek(this,d);Fk(this,d);Gk(this,d);this.hb(d.kb,l.Vh);this.hb(d.Ha,l.Wh);this.hb(d.Na,l.Zh);this.hb(b,l.Kg);b=!0;break;case 15:c=this.Oa(l.Bf),this.fb=c&3,d=this.za[this.fb],
d.Ha=c>>2&1,a=this.Oa(l.Dp),d.kb+=a-d.Yd,0>d.kb&&(d.kb=0),d.kb>=d.gc&&(d.kb=d.gc-1),d.Yd=a,d.Ya=32,0==d.kb&&(d.Ya|=268435456),this.Kb(),b=!0}0<this.Xa&&(this.ya|=80);this.tf&8&&(!d||d.Ya&8||!b||this.ka&&zi(this.ka,6))}};k.ln=function(a,b){var c=this.oe;this.oe&=-129;this.ba(a,null,b,"INPUT",c);return c};k.Fo=function(a,b,c){this.ba(a,b,c,"CONTROL");this.$l=b};k.Oa=function(){var a=this.bc[this.ob];this.ob++;return a};k.Kb=function(){this.ob=this.Xa=0};k.hb=function(a){this.bc[this.Xa++]=a};
function Ek(a,b){a.hb(b.fb|b.Ha<<2|b.Ya&255,l.Op)}function Fk(a,b){a.hb((b.Ya&65280)>>>8,l.Pp)}function Gk(a,b){a.hb((b.Ya&16711680)>>>16,l.Qp)}k.ti=function(a,b,c){void 0===b||0>b?this.sc(a,c):c(-1,!1)};k.ui=function(a,b){return void 0!==b&&0<=b?this.Dc(a,b):-1};k.Dm=function(a,b){return void 0!==b&&0<=b?this.$j(a,b):-1};k.vi=function(a){a.Ya=72;a.va&&(a.Ra=null,a.Ya=0,this.ka&&(si(this.ka,2,this,"dmaRead",a),mi(this.ka,2)))};
k.wi=function(a){a.Ya=72;a.va&&(a.va.gf?a.Ya=576:(a.Ra=null,a.Ya=0,this.ka&&(si(this.ka,2,this,"dmaWrite",a),mi(this.ka,2))))};k.yk=function(a){a.Ya=72;a.va&&(a.Ra=null,a.Ya=0,this.ka&&(a.De=0,a.yc=Array(4),a.Mf=!0,a.Sf=0,si(this.ka,2,this,"dmaFormat",a),mi(this.ka,2),a.Mf=!1))};k.sc=function(a,b){var c=-1;if(!a.Ya&&a.va){do{if(a.Ra&&0<=(c=tk(a.Ra,a.Va++)))break;a.Ra=a.va.seek(a.kb,a.Ha,a.Na);if(!a.Ra){a.Ya=1088;break}a.Va=0;this.Jf(a)}while(1)}b(c,!1)};
k.Dc=function(a,b){if(a.Ya||!a.va)return-1;do{if(a.Ra&&a.va.write(a.Ra,a.Va++,b))break;a.Ra=a.va.seek(a.kb,a.Ha,a.Na);if(!a.Ra){a.Ya=8256;b=-1;break}a.Va=0;this.Jf(a)}while(1);return b};k.Jf=function(a){a.Na++;a.Na>=a.Fh+1&&(a.Na=1,a.Ha++,a.Ha>=a.Eh&&(a.Ha=0,a.kb++))};k.$j=function(a,b){if(a.Ya)return-1;a.yc[a.De++]=b;if(a.De==a.yc.length){a.kb=a.yc[0];a.Ha=a.yc[1];a.Na=a.yc[2];a.Wa=128<<a.yc[3];for(var c=a.De=0;c<a.Wa;c++)if(0>this.Dc(a,a.mk))return-1;a.Sf++}a.Sf>=a.$d&&(b=-1);return b};
k.Pi=function(a){var b=this.S.J&255;this.X&&D(this.X,uk.Fg|uk.Gg)&&128>b&&(Ec(this.X,19,a),Fc(this.S,a,function(a,b){return function(e){Gc(a.X,19,e,F(a.S)-b)}}(this,F(this.S))));return!0};k.Qa=function(a,b){this.X&&(null==b&&(b=uk.Fg),D(this.X,b)&&this.X.message(a))};k.ba=function(a,b,c,d,e){this.X&&this.X.ba(this,a,b,c,d,uk.Fg,e)};var zk={1012:uk.prototype.mn,1013:uk.prototype.kn,1015:uk.prototype.ln},Ak={1010:uk.prototype.Ho,1013:uk.prototype.Go,1015:uk.prototype.Fo};
Ba(function(){for(var a=B(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new uk(d);Oa(d,c)}});function W(a){x.call(this,"HDC",a,W);this.dmaRead=this.ti;this.dmaWrite=this.ui;this.dmaWriteBuffer=this.Em;this.dmaWriteFormat=this.Fm;this.ai=[];if(a.drives)try{this.ai=eval("("+a.drives+")")}catch(b){w("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.bg=(this.Fe="at"==a.type)?1:0;this.Pm=this.Fe?2:3}y(x,W);
var Hk=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];k=W.prototype;k.xb=function(){return!1};k.oc=function(a,b,c,d){this.na=b;this.S=c;this.X=d;this.Da=a;this.ka=C(a,"ChipSet");ib(b,this,this.Fe?Ik:Jk);mb(b,this,this.Fe?Kk:Lk);d&&Ph(d,W);Cc(c,19,this,this.Pn);Cc(c,64,this,this.Pi);this.reset();this.Lf()||this.Ta()};
k.ac=function(a,b){if(!b)if(!a||!this.restore)this.Ed(),this.Da.Fi&&this.Lf(!0);else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.hf=function(){return this.Da?this.Da.hf():""};k.ge=function(){return this.Da?this.Da.ge():""};k.reset=function(){this.Ed(null,!0)};k.save=function(){var a=new H(this);a.set(0,this.Wj());return a.data()};k.restore=function(a){return this.Ed(a[0])};
k.Ed=function(a,b){var c=0,d=!0;if(this.Fe)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.ne=a[c++],this.dm=a[c++],this.pe=a[c++],this.Ph=a[c++],this.Oh=a[c++],this.Nh=a[c++],this.sf=a[c++],this.ya=a[c++],this.Tj=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.rf=a[c++];this.ya=a[c++];this.bc=a[c++];this.ob=a[c++];this.Xa=a[c++];this.cm=a[c++];this.bm=a[c++];this.am=a[c++];var e=a[c++];void 0!==e?this.jf=e:void 0===this.jf&&(this.jf=-1)}void 0===this.za&&(this.za=Array(this.ai.length));c=a[c];void 0===
c&&(c=[]);for(e=0;e<this.za.length;e++){void 0===this.za[e]&&(this.za[e]={});var f=this.za[e];this.Ni(e,f,this.ai[e],c[e],b)||(d=!1);null!=this.rf&&1>=e&&(this.rf|=(f.type&3)<<(1-e<<1))}return d};
k.Wj=function(){var a=0,b=[];this.Fe?(b[a++]=this.ne,b[a++]=this.dm,b[a++]=this.pe,b[a++]=this.Ph,b[a++]=this.Oh,b[a++]=this.Nh,b[a++]=this.sf,b[a++]=this.ya,b[a++]=this.Tj):(b[a++]=this.rf,b[a++]=this.ya,b[a++]=this.bc,b[a++]=this.ob,b[a++]=this.Xa,b[a++]=this.cm,b[a++]=this.bm,b[a++]=this.am,b[a++]=this.jf);b[a]=this.Yj();return b};
k.Ni=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.fb=a;b.errorCode=d[f++];b.jm=d[f++];b.ff=d[f++];b.Xe=d[f++];b.Ye=d[f++];b.Ha=d[f++];b.$b=d[f++];b.Qd=d[f++];b.Na=d[f++];b.$d=d[f++];b.Wa=d[f++];b.$g=this.Fe?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.ge()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Hk[this.bg][b.type])b.type=this.Pm;c=Hk[this.bg][b.type];
b.rc=c[2]||17;b.Mb=c[3]||512;if(e&&this.ka&&(e=this.ka,c=b.type,e.pa)){var h=e.pa[18],h=a?h&240|c:h&15|c<<4;e.pa&&(e.pa[18]=h,ai(e))}void 0===b.va&&(b.va=null,this.Ga("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Mk(this,b);b.Va=d[f++];b.Ra=null;b.va&&(a=d[f],void 0!==a&&0>b.va.restore(a)&&(g=!1),g&&void 0!==b.Va&&(b.Ra=b.va.seek(b.Qd,b.Ha,b.Na+b.$g)));return g};k.Yj=function(){for(var a=0,b=[],c=0;c<this.za.length;c++)b[a++]=this.Xj(this.za[c]);return b};
k.Xj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.jm;c[b++]=a.ff;c[b++]=a.Xe;c[b++]=a.Ye;c[b++]=a.Ha;c[b++]=a.$b;c[b++]=a.Qd;c[b++]=a.Na;c[b++]=a.$d;c[b++]=a.Wa;c[b++]=a.Va;c[b]=a.va?a.va.save():null;return c};k.wk=function(a){var b;a=this.za[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
function Mk(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Xe[2])?e=b.Xe[0]<<8|b.Xe[1]:c=b.type);null==c||d||(d=Hk[a.bg][c][1],e=Hk[a.bg][c][0]);d&&((c=Hk[a.bg][b.type])&&e!=c[0]&&d!=c[1]&&a.Ga("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.gc=e,b.$b=d,null==b.va&&(b.va=new kk(a,b,b.mode)))}}
k.hm=function(a,b,c){if(a.va){var d=a.va.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.Qd=Math.floor(b/g),b%=g,a.Ha=Math.floor(b/f),a.Na=b%f,a.Wa=c*d[3],a.errorCode=0,!0}}return!1};
k.Lf=function(a){a||(this.Ae=0);for(var b=0;b<this.za.length;b++){var c=this.za[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.za[b];e.Kc?(this.Ga("Drive "+b+" busy"),d=!0):(e.Kc=!0,e.Ge=!0,this.Ae++,this.Qa("loading "+d),(e.va||new kk(this,e,e.mode)).load(d,c,this.Wn),d=!1);!d&&a&&this.Ta(!1)}else a&&void 0!==c.type&&(c.va=null,Mk(this,c,c.type))}return!!this.Ae};
k.Wn=function(a,b,c){a.Kc=!1;(a.va=b)&&this.Ga('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.fb),a.Ge);a.Ge&&(a.Ge=!1,--this.Ae||this.Ta())};k.Mn=function(a,b){var c=0;this.ob<this.Xa&&(c=this.bc[this.ob]);this.ka&&Ai(this.ka,5);this.ya&=-33;this.ba(a,null,b,"DATA["+this.ob+"]",c);++this.ob>=this.Xa&&(this.ob=this.Xa=0,this.ya&=-15);return c};
k.cp=function(a,b,c){this.ba(a,b,c,"DATA["+this.Xa+"]");this.Xa<this.bc.length&&(this.bc[this.Xa++]=b);a=12!=this.bc[0]?6:this.bc.length;6==this.Xa&&(this.ya&=-2);this.Xa>=a&&(this.ya|=2,this.ya&=-2,Nk(this))};k.Nn=function(a,b){var c=this.ya;this.ba(a,null,b,"STATUS",c);this.ob<this.Xa&&(this.ya|=1);return c};k.fp=function(a,b,c){this.ba(a,b,c,"RESET");this.cm=b;this.ka&&Ai(this.ka,5);this.Ed()};k.Ln=function(a,b){this.ba(a,null,b,"CONFIG",this.rf);return this.rf};
k.ep=function(a,b,c){this.ba(a,b,c,"PULSE");this.bm=b;this.ya=13};k.dp=function(a,b,c){this.ba(a,b,c,"PATTERN");this.am=b};k.Oj=function(a,b,c){this.ba(a,b,c,"NOISE")};k.Xm=function(a,b){var c=-1,d=!1;if(this.Pa&&(d=0<this.Pa.Va,c=this.sc(this.Pa),this.Pa.Va==this.Pa.Mb))if(this.Pa.Wa-=this.Pa.Mb,this.pe=this.pe-1&255,this.Pa.Wa>=this.Pa.Mb){var e=this;this.sc(this.Pa,function(a){0<=a?e.ka&&zi(e.ka,14):(e.ya=1,e.ne=16)},!1)}else this.ya=80;d||this.ba(a,null,b,"DATA",c);return c};
k.uo=function(a,b,c){this.Pa&&0!=this.Pa.Va||this.ba(a,b,c,"DATA");this.Pa&&this.Pa.Wa>=this.Pa.Mb&&(0>this.Dc(this.Pa,b)?(this.ya=1,this.ne=16):this.Pa.Va==this.Pa.Mb&&(this.Pa.Wa-=this.Pa.Mb,this.pe=this.pe-1&255,this.ka&&zi(this.ka,14),this.Pa.Wa>=this.Pa.Mb||(this.ya=80)))};k.Zm=function(a,b){var c=this.ne;this.ba(a,null,b,"ERROR",c);return c};k.yo=function(a,b,c){this.ba(a,b,c,"WPREC");this.dm=b};k.$m=function(a,b){var c=this.pe;this.ba(a,null,b,"SECCNT",c);return c};
k.wo=function(a,b,c){this.ba(a,b,c,"SECCNT");this.pe=b};k.an=function(a,b){var c=this.Ph;this.ba(a,null,b,"SECNUM",c);return c};k.xo=function(a,b,c){this.ba(a,b,c,"SECNUM");this.Ph=b};k.Wm=function(a,b){var c=this.Oh;this.ba(a,null,b,"CYLLO",c);return c};k.to=function(a,b,c){this.ba(a,b,c,"CYLLO");this.Oh=b};k.Vm=function(a,b){var c=this.Nh;this.ba(a,null,b,"CYLHI",c);return c};k.so=function(a,b,c){this.ba(a,b,c,"CYLHI");this.Nh=b};k.Ym=function(a,b){var c=this.sf;this.ba(a,null,b,"DRVHD",c);return c};
k.vo=function(a,b,c){this.ba(a,b,c,"DRVHD");this.sf=b;this.ya=this.za[this.sf&16?1:0]?this.ya|64:this.ya&-65};k.bn=function(a,b){var c=this.ya;this.ba(a,null,b,"STATUS",c);return c};k.ro=function(a,b,c){this.ba(a,b,c,"COMMAND");this.Tj=b;this.ka&&Ai(this.ka,14);Ok(this)};
function Ok(a){var b=!1,c=a.Tj,d=a.sf&16?1:0,e=a.sf&15,f=a.Oh|(a.Nh&3)<<8,g=a.Ph,h=a.pe||256;a.Pa=null;a.ne=0;a.ya=80;(d=a.za[d])?(d.Qd=f,d.Ha=e,d.Na=g,d.Wa=h*d.Mb,c=144<=c?c:c&240,d.Ra=null,d.errorCode=0,a.Pa=d):c=-1;switch(c&240){case 32:a.sc(d,function(b){0<=b&&a.ka?(zi(a.ka,14),a.ya=136):(a.ya=1,a.ne=16)},!1);break;case 48:a.ka?(zi(a.ka,14),a.ya=136):(a.ya=1,a.ne=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.ne=1;b=!0;break;case 145:d.$b=e+1,d.rc=h,b=!0}b&&a.ka&&zi(a.ka,14)}
function Nk(a){a.ob=0;var b=a.Oa(),c=a.Oa(),d=c&32,e=d>>5,f=c&31,g=a.Oa(),h=a.Oa(),m=g<<2&768|h,n=g&63,q=a.Oa(),t=a.Oa(),s=a.za[e];s&&(s.Qd=m,s.Ha=f,s.Na=n,s.Wa=q*s.Mb);switch(b){case 3:a.Kb(s?s.errorCode:4);a.hb(c);a.hb(g);a.hb(h);a.hb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Oa());)s&&c<s.Xe.length&&(s.Xe[c++]=b);s&&Mk(a,s);b=0;s||a.jf!=e||(a.jf=-1,b=2);a.Kb(b|d);b=-1;break;case 224:case 228:a.Kb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.jm=0),b){case 0:a.Kb(0|d);break;case 1:s.Wp=
t;a.Kb(0|d);break;case 5:a.Kb(0|d);break;case 8:a.vi(s,function(b){a.Kb(b|d)});break;case 10:a.wi(s,function(b){a.Kb(b|d)});break;case 15:Pk(a,s,function(b){a.Kb(b|d)});break;default:a.Kb(2|d)}}k.Oa=function(){var a=-1;this.ob<this.Xa&&(a=this.bc[this.ob++]);return a};k.Kb=function(a){this.ob=this.Xa=0;void 0!==a&&this.hb(a);this.ka&&zi(this.ka,5);this.ya|=32};k.hb=function(a){this.bc[this.Xa++]=a};k.ti=function(a,b,c){void 0===b||0>b?this.sc(a,c):c(-1,!1)};
k.ui=function(a,b){return void 0!==b&&0<=b?this.Dc(a,b):-1};k.Em=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Va<a.Ye.length?a.Ye[a.Va++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.Fm=function(a,b){return void 0!==b&&0<=b?this.$j(a,b):-1};k.vi=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.errorCode=0;si(this.ka,3,this,"dmaRead",a);mi(this.ka,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.wi=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.errorCode=0;si(this.ka,3,this,"dmaWrite",a);mi(this.ka,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Pk(a,b,c){b.errorCode=4;b.Ye&&b.Ye.length==b.Wa||(b.Ye=Array(b.Wa));b.Va=0;a.ka?(b.errorCode=0,si(a.ka,3,a,"dmaWriteBuffer",b),mi(a.ka,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.yk=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.De=0;a.yc=Array(4);a.Mf=!0;a.Sf=0;a.errorCode=0;si(this.ka,3,this,"dmaWriteFormat",a);mi(this.ka,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Mf=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.sc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ra&&(d=tk(a.Ra,a.Va),a.Va+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;a.va.seek(a.Qd,a.Ha,a.Na+a.$g,!1,function(c,d){var m=-1;(a.Ra=c)?(a.Va=0,f.Jf(a),m=tk(a.Ra,a.Va),a.Va+=e):a.errorCode=20;b(m,d)})}return d};
k.Dc=function(a,b){if(a.errorCode)return-1;do{if(a.Ra&&a.va.write(a.Ra,a.Va++,b))break;a.va.seek(a.Qd,a.Ha,a.Na+a.$g,!0,function(b){a.Ra=b});if(!a.Ra){a.errorCode=20;b=-1;break}a.Va=0;this.Jf(a)}while(1);return b};k.Jf=function(a){a.Na++;var b=1-a.$g;a.Na>=a.rc+b&&(a.Na=b,a.Ha++,a.Ha>=a.$b&&(a.Ha=0,a.Qd++))};
k.$j=function(a,b){if(a.errorCode)return-1;a.yc[a.De++]=b;if(a.De==a.yc.length){a.Qd=a.yc[0];a.Ha=a.yc[1];a.Na=a.yc[2];a.Wa=128<<a.yc[3];for(var c=a.De=0;c<a.Wa;c++)if(0>this.Dc(a,a.mk))return-1;a.Sf++}a.Sf>=a.$d&&(b=-1);return b};k.Pn=function(a){var b=this.S.J&255;!(this.S.G>>8)&&128<b&&(this.jf=b-128);this.X&&D(this.X,W.Yh|W.Gg)&&128<=b&&(Ec(this.X,19,a),Fc(this.S,a,function(a,b){return function(e){Gc(a.X,19,e,F(a.S)-b)}}(this,F(this.S))));return!0};
k.Pi=function(){var a;(a=this.S.G>>8)||(a=!this.ka)||(a=!(this.ka.tb[0].vd&64));return a?!0:!1};k.Qa=function(a,b){this.X&&(null==b&&(b=W.Yh),D(this.X,b)&&this.X.message(a))};k.ba=function(a,b,c,d,e){this.X&&this.X.ba(this,a,b,c,d,W.Yh,e)};
var Jk={800:W.prototype.Mn,801:W.prototype.Nn,802:W.prototype.Ln},Ik={496:W.prototype.Xm,497:W.prototype.Zm,498:W.prototype.$m,499:W.prototype.an,500:W.prototype.Wm,501:W.prototype.Vm,502:W.prototype.Ym,503:W.prototype.bn},Lk={800:W.prototype.cp,801:W.prototype.fp,802:W.prototype.ep,803:W.prototype.dp,807:W.prototype.Oj,811:W.prototype.Oj,815:W.prototype.Oj},Kk={496:W.prototype.uo,497:W.prototype.yo,498:W.prototype.wo,499:W.prototype.xo,500:W.prototype.to,501:W.prototype.so,502:W.prototype.vo,503:W.prototype.ro};
Ba(function(){for(var a=B(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new W(d);Oa(d,c)}});function Qk(a){x.call(this,"Debugger",a,Qk);this.bh=this.$c=-1;this.Ec=[0,0];this.hk=[0,0];this.Lh=null;this.cf=!1;this.re=[0,0];this.xc=[];Rk(this);Sk(this);Ph(this,this,a.messages,!0);this.ib={AL:0,CL:0,DL:0,BL:0,AH:0,CH:0,DH:0,BH:0,AX:0,CX:0,DX:0,BX:0,SP:0,BP:0,SI:0,DI:0,ES:0,CS:0,SS:0,DS:0,IP:0};this.Vj=a.commands}y(x,Qk);
var Tk={"?":"help","a [#]":"assemble","b [#]":"breakpoint",c:"clear window","d [#]":"dump memory","e [#]":"edit memory",f:"frequencies","g [#]":"go [to #]","h [#]":"halt/history","i [#]":"input port #",l:"load sector(s)",m:"messages","o [#]":"output port #",p:"step over",r:"dump/edit registers","t [#]":"step instruction(s)","u [#]":"unassemble",x:"execution options"},Uk="DB AAA AAD AAM AAS ADC ADD AND ARPL AS: BOUND BSF BSR BT BTC BTR BTS CALL CBW CLC CLD CLI CLTS CMC CMP CMPSB CMPSW CS: CWD DAA DAS DEC DIV DS: ENTER ES: ESC FADD FBLD FBSTP FCOM FCOMP FDIV FDIVR FIADD FICOM FICOMP FIDIV FIDIVR FILD FIMUL FIST FISTP FISUB FISUBR FLD FLDCW FLDENV FMUL FNSAVE FNSTCW FNSTENV FNSTSW FRSTOR FS: FST FSTP FSUB FSUBR GBP GS: HLT IDIV IMUL IN INC INS INT INT3 INTO IRET JBE JC JCXZ JG JGE JL JLE JMP JNBE JNC JNO JNP JNS JNZ JO JP JS JZ LAHF LAR LDS LEA LEAVE LES LFS LGDT LGS LIDT LLDT LMSW LOCK LODSB LODSW LOOP LOOPNZ LOOPZ LSL LSS LTR MOV MOVSB MOVSW MOVSX MOVZX MUL NEG NOP NOT OR OS: OUT OUTS POP POPA POPF PUSH PUSHA PUSHF RCL RCR REPNZ REPZ RET RETF ROL ROR SAHF SAR SBB SCASB SCASW SETBE SETC SETG SETGE SETL SETLE SETNBE SETNC SETNO SETNP SETNS SETNZ SETO SETP SETS SETZ SGDT SHL SHLD SHR SHRD SIDT SLDT SMSW SS: STC STD STI STOSB STOSW STR SUB TEST VERR VERW WAIT XCHG XLAT XOR".split(" "),
X="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),Vk="BX+SI BX+DI BP+SI BP+DI SI DI BP BX".split(" "),Y={Fg:{La:1,Ma:"mem"},bk:{La:2,Ma:"port"},Fb:{La:4,Ma:"dma"},Te:{La:8,Ma:"pic"},Ue:{La:16,Ma:"timer"},Cf:{La:32,Ma:"cmos"},um:{La:64,Ma:"rtc"},Se:{La:128,Ma:"8042"},sc:{La:256,Ma:"chipset"},ak:{La:512,Ma:"keyboard"},Hg:{La:1024,Ma:"video"},Eg:{La:2048,Ma:"fdc"},Wh:{La:4096,Ma:"hdc"},pm:{La:8192,Ma:"disk"},ck:{La:16384,Ma:"serial"},Gg:{La:32768,Ma:"speaker"},vm:{La:65536,
Ma:"state"},tm:{La:131072,Ma:"mouse"},nm:{La:262144,Ma:"computer"},om:{La:524288,Ma:"cpu"},qm:{La:1048576,Ma:"dos"},$j:{La:2097152,Ma:"int"},sm:{La:16777216,Ma:"log"},rm:{La:268435456,Ma:"halt"}},Z=[0,0],Wk=[204,12291],Xk=[[6,12417,4257],[6,12420,4260],[6,12449,4225],[6,12452,4228],[6,12385,4097],[6,14435,4100],[136,4211],[133,8307],[129,12417,4257],[129,12420,4260],[129,12449,4225],[129,12452,4228],[129,12385,4097],[129,14435,4100],[136,4467],[133,8563],[5,12417,4257],[5,12420,4260],[5,12449,4225],
X="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),Vk="BX+SI BX+DI BP+SI BP+DI SI DI BP BX".split(" "),Y={Hg:{La:1,Ma:"mem"},ek:{La:2,Ma:"port"},Fb:{La:4,Ma:"dma"},Ue:{La:8,Ma:"pic"},Ve:{La:16,Ma:"timer"},Df:{La:32,Ma:"cmos"},wm:{La:64,Ma:"rtc"},Te:{La:128,Ma:"8042"},uc:{La:256,Ma:"chipset"},dk:{La:512,Ma:"keyboard"},Jg:{La:1024,Ma:"video"},Fg:{La:2048,Ma:"fdc"},Yh:{La:4096,Ma:"hdc"},rm:{La:8192,Ma:"disk"},fk:{La:16384,Ma:"serial"},Ig:{La:32768,Ma:"speaker"},xm:{La:65536,
Ma:"state"},vm:{La:131072,Ma:"mouse"},pm:{La:262144,Ma:"computer"},qm:{La:524288,Ma:"cpu"},sm:{La:1048576,Ma:"dos"},Gg:{La:2097152,Ma:"int"},um:{La:16777216,Ma:"log"},tm:{La:268435456,Ma:"halt"}},Z=[0,0],Wk=[204,12291],Xk=[[6,12417,4257],[6,12420,4260],[6,12449,4225],[6,12452,4228],[6,12385,4097],[6,14435,4100],[136,4211],[133,8307],[129,12417,4257],[129,12420,4260],[129,12449,4225],[129,12452,4228],[129,12385,4097],[129,14435,4100],[136,4467],[133,8563],[5,12417,4257],[5,12420,4260],[5,12449,4225],
[5,12452,4228],[5,12385,4097],[5,14435,4100],[136,4723],[133,8819],[149,12417,4257],[149,12420,4260],[149,12449,4225],[149,12452,4228],[149,12385,4097],[149,14435,4100],[136,4979],[133,9075],[7,12417,4257],[7,12420,4260],[7,12449,4225],[7,12452,4228],[7,12385,4097],[7,14435,4100],[35,15],[29],[183,12417,4257],[183,12420,4260],[183,12449,4225],[183,12452,4228],[183,12385,4097],[183,14435,4100],[27,15],[30],[190,12417,4257],[190,12420,4260],[190,12449,4225],[190,12452,4228],[190,12385,4097],[190,14435,
4100],[176,15],[1],[24,4225,4257],[24,4228,4260],[24,4257,4225],[24,4260,4228],[24,4193,4097],[24,6243,4100],[33,15],[4],[75,14435],[75,14691],[75,14947],[75,15203],[75,15459],[75,15715],[75,15971],[75,16227],[31,14435],[31,14691],[31,14947],[31,15203],[31,15459],[31,15715],[31,15971],[31,16227],[136,6243],[136,6499],[136,6755],[136,7011],[136,7267],[136,7523],[136,7779],[136,8035],[133,10339],[133,10595],[133,10851],[133,11107],[133,11363],[133,11619],[133,11875],[133,12131],[137,32768],[134,32768],
[10,37028,4247],[8,8323,4259],[64,49152],[70,49152],[130,49152],[9,49152],[136,36868],[73,45219,4234],[136,36866],[73,45219,4233],[76,41041,6755],[76,41044,6755],[132,39523,4161],[132,39523,4164],[95,4145],[91,4145],[82,4145],[90,4145],[98,4145],[94,4145],[81,4145],[89,4145],[97,4145],[93,4145],[96,4145],[92,4145],[86,4145],[85,4145],[87,4145],[84,4145],[191,12417,4097],[192,12420,4100],[191,12417,4097],[193,12420,4097],[184,4225,4257],[184,4228,4260],[188,12449,12417],[188,12452,12420],[120,8321,
@ -650,8 +651,8 @@ Ma:"state"},tm:{La:131072,Ma:"mouse"},nm:{La:262144,Ma:"computer"},om:{La:524288
12419],1:[206,12419],2:[100,37027,4243],3:[117,37027,4243]},Zk=[[[6,12417,4097],[129,12417,4097],[5,12417,4097],[149,12417,4097],[7,12417,4097],[183,12417,4097],[190,12417,4097],[24,4225,4097]],[[6,12420,4100],[129,12420,4100],[5,12420,4100],[149,12420,4100],[7,12420,4100],[183,12420,4100],[190,12420,4100],[24,4228,4100]],[[6,12420,4098],[129,12420,4098],[5,12420,4098],[149,12420,4098],[7,12420,4098],[183,12420,4098],[190,12420,4098],[24,4228,4098]],[[145,45185,4097],[146,45185,4097],[139,45185,4097],
[140,45185,4097],[169,45185,4097],[171,45185,4097],Z,[148,45185,4097]],[[145,45188,4097],[146,45188,4097],[139,45188,4097],[140,45188,4097],[169,45188,4097],[171,45188,4097],Z,[148,45188,4097]],[[145,12417,4113],[146,12417,4113],[139,12417,4113],[140,12417,4113],[169,12417,4113],[171,12417,4113],Z,[148,12417,4113]],[[145,12420,4113],[146,12420,4113],[139,12420,4113],[140,12420,4113],[169,12420,4113],[171,12420,4113],Z,[148,12420,4113]],[[145,12417,4449],[146,12417,4449],[139,12417,4449],[140,12417,
4449],[169,12417,4449],[171,12417,4449],Z,[148,12417,4449]],[[145,12420,4449],[146,12420,4449],[139,12420,4449],[140,12420,4449],[169,12420,4449],[171,12420,4449],Z,[148,12420,4449]],[[184,4225,4097],Z,[128,12417],[126,12417],[125,4225],[73,12417],[32,4225],[72,12417]],[[184,4228,4100],Z,[128,12420],[126,12420],[125,4228],[73,12420],[32,4228],[72,12420]],[[75,12417],[31,12417],Z,Z,Z,Z,Z,Z],[[75,12420],[31,12420],[17,4228],[17,4230],[88,4228],[88,4230],[136,4228],Z],[],[[174,8323],[182,8323],[109,
4227],[119,4227],[185,4227],[186,4227],Z,Z],[[168,8323],[173,8323],[106,4227],[108,4227],[175,8323],Z,[110,4227],Z]],$k={19:{0:"disk reset",1:"get status",2:"read drive DL, cyl CH, head DH, sec CL, AL total",3:"write drive DL, cyl CH, head DH, sec CL, AL total",4:"verify drive DL, cyl CH, head DH, sec CL, AL total",5:"format drive DL",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)",
4227],[119,4227],[185,4227],[186,4227],Z,Z],[[168,8323],[173,8323],[106,4227],[108,4227],[175,8323],Z,[110,4227],Z]],$k={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 into ES:DI",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 $-terminated 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",33:"read random record from file using fcb DS:DX",34:"write random record to file using fcb DS:DX",35:"get file size using fcb DS:DX",36:"set random record number for fcb DS:DX",37:"set address DS:DX of interrupt vector AL",
38:"create new program segment prefix (psp) at segment DX",39:"random block read from file using fcb DS:DX",40:"random block write to file using fcb DS:DX",41:"parse filename DS:SI into fcb ES:DI using AL",42:"get system date (year=cx, mon=dh, day=dl)",43:"set system date (year=CX, mon=DH, day=DL)",44:"get system time (hour=ch, min=cl, sec=dh, 100ths=dl)",45:"set system time (hour=CH, min=CL, sec=DH, 100ths=DL)",46:"set verify flag AL",47:"get disk transfer area address (es:bx)",48:"get DOS version (al=major, ah=minor)",
@ -659,81 +660,82 @@ Ma:"state"},tm:{La:131072,Ma:"mouse"},nm:{La:262144,Ma:"computer"},om:{La:524288
62:"close file BX",63:"read CX bytes from file BX into buffer DS:DX",64:"write CX bytes to file BX from buffer DS:DX",65:"delete file DS:DX",66:"set position CX:DX of file BX relative to AL",67:"get(0)/set(1) attributes CX of file DS:DX (AL)",68:"get device information (IOCTL)",69:"duplicate file handle BX",70:"force file handle CX to duplicate file handle BX",71:"get current directory (ds:si) for drive DL",72:"allocate memory segment with BX paragraphs",73:"free memory segment ES",74:"resize memory segment ES to BX paragraphs",
75:"load program DS:DX using parameter block ES:BX",76:"terminate with return code AL",77:"get return code (al)",78:"find first matching file DS:DX with attributes CX",79:"find next matching file",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 name ES:DI",87:"get(0)/set(1) file 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)"}};k=Qk.prototype;
k.mc=function(a,b,c){this.na=b;this.S=c;this.Da=a;this.Im=C(a,"FDC");this.Fk=C(a,"HDC");this.Gf=Xk;80186<=this.S.Fa&&(this.Gf=Xk.slice(),this.Gf[15]=Z,80286<=this.S.Fa&&(this.Gf[15]=Wk));Cc(this.S,33,this,this.Pn);this.Ta();if(this.Rj){a=al(this,this.Rj);delete this.Rj;for(var d in a)bl(this,a[d])}};
k.xb=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Tf=this.sa[c]=d,d.onkeypress=function(a){if(13==a.keyCode){var b=d.value;d.value="";var c=al(e,b,!0);for(b in c)bl(e,c[b]);a.preventDefault&&a.preventDefault()}},!0;case "debugEnter":return this.sa[c]=d,xa(d,function(){if(e.Tf){var a=e.Tf.value;e.Tf.value="";var b=al(e,a,!0);for(a in b)bl(e,b[a]);return!0}return!1}),!0;case "step":return this.sa[c]=d,xa(d,function(a){var b=!1;Qa(e,!0)||(Pa(e,!0),b=e.wf(a?1:0),Pa(e,!1));return b}),
!0}return!1};k.Md=function(){this.Tf&&this.Tf.focus()};function Ph(a,b,c,d){d&&(a.ci=[]);d=0;c=al(a,c);for(var e in Y)b[e]=Y[e].La,0<=c.indexOf(Y[e].Ma)&&(d|=Y[e].La,a.ca(Y[e].Ma+" messages enabled"));void 0===a.dc&&(a.dc=0);a.dc|=d}function Qh(a,b,c){for(var d in Y)if(b==Y[d].La){a.ci[d]=c;break}}function E(a,b){return(a.dc&b)===b}
function Ec(a,b,c){var d=a.S.G>>8,e=$k[b];if(e=e&&e[d]||""){var f=a.S;a.jb[X[0]]=r(f.G&255);a.jb[X[1]]=r(f.I&255);a.jb[X[2]]=r(f.J&255);a.jb[X[3]]=r(f.B&255);a.jb[X[4]]=r(f.G>>8);a.jb[X[5]]=r(f.I>>8);a.jb[X[6]]=r(f.J>>8);a.jb[X[7]]=r(f.B>>8);a.jb[X[8]]=u(f.G);a.jb[X[9]]=u(f.I);a.jb[X[10]]=u(f.J);a.jb[X[11]]=u(f.B);a.jb[X[12]]=u(f.Y);a.jb[X[13]]=u(f.H);a.jb[X[14]]=u(f.F);a.jb[X[15]]=u(f.D);a.jb[X[16]]=u(f.Za.oa);a.jb[X[17]]=u(f.ua.oa);a.jb[X[18]]=u(f.wb.oa);a.jb[X[19]]=u(f.Eb.oa);a.jb[X[20]]=u(f.qa);
e=" "+ia(a.jb,e)}a.message("INT 0x"+r(b)+": AH="+r(d)+" at "+da(c-a.S.ua.Ua,a.S.ua.oa)+e)}function Gc(a,b,c,d,e){a.message("INT 0x"+r(b)+"("+c+"): C="+(Uc(a.S)?1:0)+(e||"")+" (cycles="+d+")")}k.ba=function(a,b,c,d,e,f,g){f||(f=0);f|=Y.bk.La;if(null==d||(this.dc&f)==f)f=null,null!=d&&(f=this.S.ua.oa,d-=this.S.ua.Ua),this.message(a.sh+"."+(null!=c?"outPort":"inPort")+"(0x"+u(b)+","+(e?e:"unknown")+(null!=c?",0x"+r(c):"")+")"+(null!=g?": 0x"+r(g):"")+(null!=d?" at "+da(d,f):""))};
k.message=function(a){this.ca(a);this.S&&(this.dc&Y.rm.La&&this.S.Ab(),a=this.S,a.of=0,a.Nc-=a.A,a.A=0,a.eh())};k.Pn=function(a){E(this,this.qm)&&Ec(this,33,a);return!0};k.Ln=function(){this.ca("Type ? for list of debugger commands")};function Sk(a){var b;if(jd(a)){if(!a.Ud||!a.Ud.length){a.Ud=Array(1E4);for(b=0;b<a.Ud.length;b++)a.Ud[b]=[0,null,0];a.jf=0}if(!a.Qc||!a.Qc.length)for(a.Qc=Array(256),b=0;b<a.Qc.length;b++)a.Qc[b]=[b,0]}else a.jf=0,a.Ud=[],a.Qc=[]}
k.Ne=function(a){if(!cl(this))return!1;this.S.Ne(a);return!0};k.wf=function(a,b,c){if(!cl(this))return!1;this.Zc=0;do{a||jd(this)&&nd(this,this.S.Ba,!0);try{var d=this.S.wf(a);0<d&&(this.Zc+=d,Ib(this.S,d,!0),Fb(this.S,d),this.$g++)}catch(e){this.Zc=0,Sa(this.S,e.message||e)}}while(this.S.$&240);!1!==c&&Eb(this.S);Db(this,b||!1,!1);return 0<this.Zc};k.Ab=function(){this.S.Ab()};function Db(a,b,c){void 0===b&&(b=!0);void 0===c&&(c=!0);a.Dc=[a.S.qa,a.S.ua.oa,void 0];b&&1!=a.kc?dl(a,null,c):el(a)}
function cl(a){a.S&&Ra(a.S)&&a.S.Mb&&!Qa(a.S)?(a=a.S,a.jd?(a.ca(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}k.$b=function(a,b){return!b&&(this.reset(!0),this.ca(a?"resuming":"powering up"),a&&this.restore&&!this.restore(a))?!1:!0};k.Wb=function(a,b){b&&this.ca(a?"suspending":"shutting down");return a&&this.save?this.save():!0};k.reset=function(a){Sk(this);this.Zc=this.$g=0;this.Dc=[this.S.qa,this.S.ua.oa,void 0];void 0===this.Nb||a||this.ca("reset");this.Nb=!1;fl(this);a||Db(this)};
k.save=function(){var a=new H(this);a.set(0,this.Dc);a.set(1,this.qe);a.set(2,[this.Ih,this.bf,this.dc]);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.Dc=a[b++],this.qe=a[b++],this.Ih=a[b][0],this.bf=a[b][1],this.dc||(this.dc=a[b][2]));return!0};k.start=function(a,b){this.kc||this.ca("running");this.Nb=!0;this.Xn=a;this.ao=b};
k.stop=function(a,b){if(this.Nb){this.Nb=!1;this.Zc=b-this.ao;if(!this.kc){var c="stopped";if(this.Zc){var d=a-this.Xn,e=0<d?Math.round(1E3*this.Zc/d):0,c=c+" (";jd(this)&&(c+=this.$g+" ops, ");c+=this.Zc+" cycles, "+d+" ms, "+e+" hz)"}this.ca(c)}Db(this,!0,2!=this.kc);this.Md();fl(this,this.S.Ba)}};function jd(a){return 1<a.tc.length||E(a,a.$j)}
function nd(a,b,c){if(!c&&gl(a,b,a.tc))return!0;a.Qc.length&&(a.$g++,c=bb(a.na,b),a.Qc[c][1]++,c=a.Ud[a.jf],c[0]=a.S.qa,c[1]=a.S.ua.oa,c[2]=b,++a.jf==a.Ud.length&&(a.jf=0));return!1}function qb(a,b){return gl(a,b,a.Sd)?(a.S.Ab(!0),!0):!1}function rb(a,b){return gl(a,b,a.Pc)?(a.S.Ab(!0),!0):!1}function kb(a,b,c){a.ca("break on input from port "+u(b)+": "+r(c));a.S.Ab(!0)}function ob(a,b,c){a.ca("break on output to port "+u(b)+": "+r(c));a.S.Ab(!0)}
function hl(a,b){if(b==a.S.ua.oa)return a.S.ua;if(b==a.S.Eb.oa)return a.S.Eb;if(b==a.S.Za.oa)return a.S.Za;if(b==a.S.wb.oa)return a.S.wb;var c=new Nb(a.S);c.load(b,!0);return c}function il(a,b,c,d){var e=b[2];null==e&&(a=hl(a,b[1]),e=c?a.Yb(b[0],d||0,!0):a.Vc(b[0],d||0,!0));16711680==(e&16711680)&&(e&=1048575);return e}k.ub=function(a,b){var c=255,d=il(this,a,!1,0);0<=d&&(c=bb(this.na,d),void 0!==b&&jl(a,b));return c};
k.Ia=function(a,b){var c=65535,d=il(this,a,!1,1);0<=d&&(c=cb(this.na,d),void 0!==b&&jl(a,b));return c};k.bd=function(a,b,c){var d=il(this,a,!0,0);0<=d&&(db(this.na,d,b),void 0!==c&&jl(a,c),Eb(this.S))};k.Nd=function(a,b,c){var d=il(this,a,!0,1);0<=d&&(eb(this.na,d,b),void 0!==c&&jl(a,c),Eb(this.S))};function $(a){return null==a[1]?"%"+p(a[2]):da(a[0],a[1])}function jl(a,b){b=void 0===b?1:b;null!=a[2]&&(a[2]+=b);null!=a[1]&&(a[0]+=b,a[0]!=(a[0]&65535)&&(a[0]&=65535,a[2]=null))}
function Rk(a){var b;a.tc=["exec"];if(void 0!==a.Sd)for(b=1;b<a.Sd.length;b++){var c=a.na,d=il(a,a.Sd[b]);wb(c.Aa[d>>c.rb],!1)}a.Sd=["read"];if(void 0!==a.Pc)for(b=1;b<a.Pc.length;b++)c=a.na,d=il(a,a.Pc[b]),wb(c.Aa[d>>c.rb],!0);a.Pc=["write"]}k.Vd=function(a,b,c){if(!kl(this,a,b)){b[2]=il(this,b);b[3]=c;a.push(b);if(a!=this.tc){var d=this.na,e=il(this,b);d.Aa[e>>d.rb].Vd(e&d.eb,a==this.Pc)}c||this.ca("breakpoint enabled: "+$(b)+" ("+a[0]+")");Sk(this);return!0}return!1};
function kl(a,b,c,d){var e=!1;c=il(a,c);for(var f=1;f<b.length;f++){var g=b[f];if(c==il(a,g)){e=!0;if(d){b.splice(f,1);b!=a.tc&&(d=a.na,wb(d.Aa[c>>d.rb],b==a.Pc));g[3]||a.ca("breakpoint cleared: "+$(g)+" ("+b[0]+")");Sk(a);break}a.ca("breakpoint exists: "+$(g)+" ("+b[0]+")");break}}return e}function ll(a,b){for(var c=1;c<b.length;c++)a.ca("breakpoint enabled: "+$(b[c])+" ("+b[0]+")");return b.length-1}
function xb(a,b,c,d){if(void 0===d)xb(a,b,c,a.Sd),xb(a,b,c,a.Pc);else for(var e=1;e<d.length;e++){var f=il(a,d[e]);if(f>=b&&f<b+c){var g=a.na;g.Aa[f>>g.rb].Vd(f&g.eb,d==a.Pc)}}}function fl(a,b){if(void 0!==b)gl(a,b,a.tc,!0),a.kc=0;else for(var c=1;c<a.tc.length;c++){var d=a.tc[c];if(d[3]){if(!kl(a,a.tc,d,!0))break;c=0}}}
k.oc=function(a,b,c){this.na=b;this.S=c;this.Da=a;this.Lm=C(a,"FDC");this.Hk=C(a,"HDC");this.Hf=Xk;80186<=this.S.Fa&&(this.Hf=Xk.slice(),this.Hf[15]=Z,80286<=this.S.Fa&&(this.Hf[15]=Wk));Cc(this.S,33,this,this.Sn);this.Ta();if(this.Vj){a=al(this,this.Vj);delete this.Vj;for(var d in a)bl(this,a[d])}};
k.xb=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Uf=this.sa[c]=d,d.onkeypress=function(a){if(13==a.keyCode){var b=d.value;d.value="";var c=al(e,b,!0);for(b in c)bl(e,c[b]);a.preventDefault&&a.preventDefault()}},!0;case "debugEnter":return this.sa[c]=d,xa(d,function(){if(e.Uf){var a=e.Uf.value;e.Uf.value="";var b=al(e,a,!0);for(a in b)bl(e,b[a]);return!0}return!1}),!0;case "step":return this.sa[c]=d,xa(d,function(a){var b=!1;Qa(e,!0)||(Pa(e,!0),b=e.xf(a?1:0),Pa(e,!1));return b}),
!0}return!1};k.Nd=function(){this.Uf&&this.Uf.focus()};function Ph(a,b,c,d){d&&(a.ei=[]);d=0;c=al(a,c);for(var e in Y)b[e]=Y[e].La,0<=c.indexOf(Y[e].Ma)&&(d|=Y[e].La,a.ca(Y[e].Ma+" messages enabled"));void 0===a.ec&&(a.ec=0);a.ec|=d}function Qh(a,b,c){for(var d in Y)if(b==Y[d].La){a.ei[d]=c;break}}function D(a,b){return(a.ec&b)===b}
function Ec(a,b,c){if(32>b&&16!=b&&21!=b&&22!=b&&26!=b&&28!=b){var d=a.S.G>>8,e=$k[b];if(e=e&&e[d]||""){var f=a.S;a.ib[X[0]]=r(f.G&255);a.ib[X[1]]=r(f.I&255);a.ib[X[2]]=r(f.J&255);a.ib[X[3]]=r(f.B&255);a.ib[X[4]]=r(f.G>>8);a.ib[X[5]]=r(f.I>>8);a.ib[X[6]]=r(f.J>>8);a.ib[X[7]]=r(f.B>>8);a.ib[X[8]]=u(f.G);a.ib[X[9]]=u(f.I);a.ib[X[10]]=u(f.J);a.ib[X[11]]=u(f.B);a.ib[X[12]]=u(f.Y);a.ib[X[13]]=u(f.H);a.ib[X[14]]=u(f.F);a.ib[X[15]]=u(f.D);a.ib[X[16]]=u(f.Za.oa);a.ib[X[17]]=u(f.ua.oa);a.ib[X[18]]=u(f.wb.oa);
a.ib[X[19]]=u(f.Eb.oa);a.ib[X[20]]=u(f.qa);e=" "+ia(a.ib,e)}a.message("INT 0x"+r(b)+": AH="+r(d)+" at "+da(c-a.S.ua.Ua,a.S.ua.oa)+e)}}function Gc(a,b,c,d,e){32>b&&16!=b&&21!=b&&22!=b&&26!=b&&28!=b&&a.message("INT 0x"+r(b)+"("+c+"): C="+(Uc(a.S)?1:0)+(e||"")+" (cycles="+d+")")}
k.ba=function(a,b,c,d,e,f,g){f||(f=0);f|=Y.ek.La;if(null==d||(this.ec&f)==f)f=null,null!=d&&(f=this.S.ua.oa,d-=this.S.ua.Ua),this.message(a.uh+"."+(null!=c?"outPort":"inPort")+"(0x"+u(b)+","+(e?e:"unknown")+(null!=c?",0x"+r(c):"")+")"+(null!=g?": 0x"+r(g):"")+(null!=d?" at "+da(d,f):""))};k.message=function(a){this.ca(a);this.S&&(this.ec&Y.tm.La&&this.S.Ab(),a=this.S,a.pf=0,a.Oc-=a.A,a.A=0,a.gh())};k.Sn=function(a){D(this,this.sm)&&Ec(this,33,a);return!0};k.On=function(){this.ca("Type ? for list of debugger commands")};
function Sk(a){var b;if(jd(a)){if(!a.Ud||!a.Ud.length){a.Ud=Array(1E4);for(b=0;b<a.Ud.length;b++)a.Ud[b]=[0,null,0];a.kf=0}if(!a.Rc||!a.Rc.length)for(a.Rc=Array(256),b=0;b<a.Rc.length;b++)a.Rc[b]=[b,0]}else a.kf=0,a.Ud=[],a.Rc=[]}k.Oe=function(a){if(!cl(this))return!1;this.S.Oe(a);return!0};
k.xf=function(a,b,c){if(!cl(this))return!1;this.$c=0;do{a||jd(this)&&nd(this,this.S.Ba,!0);try{var d=this.S.xf(a);0<d&&(this.$c+=d,Ib(this.S,d,!0),Fb(this.S,d),this.bh++)}catch(e){this.$c=0,Sa(this.S,e.message||e)}}while(this.S.$&240);!1!==c&&Eb(this.S);Db(this,b||!1,!1);return 0<this.$c};k.Ab=function(){this.S.Ab()};function Db(a,b,c){void 0===b&&(b=!0);void 0===c&&(c=!0);a.Ec=[a.S.qa,a.S.ua.oa,void 0];b&&1!=a.mc?dl(a,null,c):el(a)}
function cl(a){a.S&&Ra(a.S)&&a.S.Nb&&!Qa(a.S)?(a=a.S,a.jd?(a.ca(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}k.ac=function(a,b){return!b&&(this.reset(!0),this.ca(a?"resuming":"powering up"),a&&this.restore&&!this.restore(a))?!1:!0};k.Wb=function(a,b){b&&this.ca(a?"suspending":"shutting down");return a&&this.save?this.save():!0};k.reset=function(a){Sk(this);this.$c=this.bh=0;this.Ec=[this.S.qa,this.S.ua.oa,void 0];void 0===this.Ob||a||this.ca("reset");this.Ob=!1;fl(this);a||Db(this)};
k.save=function(){var a=new H(this);a.set(0,this.Ec);a.set(1,this.re);a.set(2,[this.Lh,this.cf,this.ec]);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.Ec=a[b++],this.re=a[b++],this.Lh=a[b][0],this.cf=a[b][1],this.ec||(this.ec=a[b][2]));return!0};k.start=function(a,b){this.mc||this.ca("running");this.Ob=!0;this.$n=a;this.eo=b};
k.stop=function(a,b){if(this.Ob){this.Ob=!1;this.$c=b-this.eo;if(!this.mc){var c="stopped";if(this.$c){var d=a-this.$n,e=0<d?Math.round(1E3*this.$c/d):0,c=c+" (";jd(this)&&(c+=this.bh+" ops, ");c+=this.$c+" cycles, "+d+" ms, "+e+" hz)"}this.ca(c)}Db(this,!0,2!=this.mc);this.Nd();fl(this,this.S.Ba)}};function jd(a){return 1<a.vc.length||D(a,a.Gg)}
function nd(a,b,c){if(!c&&gl(a,b,a.vc))return!0;a.Rc.length&&(a.bh++,c=bb(a.na,b),a.Rc[c][1]++,c=a.Ud[a.kf],c[0]=a.S.qa,c[1]=a.S.ua.oa,c[2]=b,++a.kf==a.Ud.length&&(a.kf=0));return!1}function qb(a,b){return gl(a,b,a.Sd)?(a.S.Ab(!0),!0):!1}function rb(a,b){return gl(a,b,a.Qc)?(a.S.Ab(!0),!0):!1}function kb(a,b,c){a.ca("break on input from port "+u(b)+": "+r(c));a.S.Ab(!0)}function ob(a,b,c){a.ca("break on output to port "+u(b)+": "+r(c));a.S.Ab(!0)}
function hl(a,b){if(b==a.S.ua.oa)return a.S.ua;if(b==a.S.Eb.oa)return a.S.Eb;if(b==a.S.Za.oa)return a.S.Za;if(b==a.S.wb.oa)return a.S.wb;var c=new Nb(a.S);c.load(b,!0);return c}function il(a,b,c,d){var e=b[2];null==e&&(a=hl(a,b[1]),e=c?a.Yb(b[0],d||0,!0):a.Wc(b[0],d||0,!0));16711680==(e&16711680)&&(e&=1048575);return e}k.ub=function(a,b){var c=255,d=il(this,a,!1,0);0<=d&&(c=bb(this.na,d),void 0!==b&&jl(a,b));return c};
k.Ia=function(a,b){var c=65535,d=il(this,a,!1,1);0<=d&&(c=cb(this.na,d),void 0!==b&&jl(a,b));return c};k.Md=function(a,b,c){var d=il(this,a,!0,0);0<=d&&(db(this.na,d,b),void 0!==c&&jl(a,c),Eb(this.S))};k.bd=function(a,b,c){var d=il(this,a,!0,1);0<=d&&(eb(this.na,d,b),void 0!==c&&jl(a,c),Eb(this.S))};function $(a){return null==a[1]?"%"+p(a[2]):da(a[0],a[1])}function jl(a,b){b=void 0===b?1:b;null!=a[2]&&(a[2]+=b);null!=a[1]&&(a[0]+=b,a[0]!=(a[0]&65535)&&(a[0]&=65535,a[2]=null))}
function Rk(a){var b;a.vc=["exec"];if(void 0!==a.Sd)for(b=1;b<a.Sd.length;b++){var c=a.na,d=il(a,a.Sd[b]);wb(c.Aa[d>>c.rb],!1)}a.Sd=["read"];if(void 0!==a.Qc)for(b=1;b<a.Qc.length;b++)c=a.na,d=il(a,a.Qc[b]),wb(c.Aa[d>>c.rb],!0);a.Qc=["write"]}k.Vd=function(a,b,c){if(!kl(this,a,b)){b[2]=il(this,b);b[3]=c;a.push(b);if(a!=this.vc){var d=this.na,e=il(this,b);d.Aa[e>>d.rb].Vd(e&d.eb,a==this.Qc)}c||this.ca("breakpoint enabled: "+$(b)+" ("+a[0]+")");Sk(this);return!0}return!1};
function kl(a,b,c,d){var e=!1;c=il(a,c);for(var f=1;f<b.length;f++){var g=b[f];if(c==il(a,g)){e=!0;if(d){b.splice(f,1);b!=a.vc&&(d=a.na,wb(d.Aa[c>>d.rb],b==a.Qc));g[3]||a.ca("breakpoint cleared: "+$(g)+" ("+b[0]+")");Sk(a);break}a.ca("breakpoint exists: "+$(g)+" ("+b[0]+")");break}}return e}function ll(a,b){for(var c=1;c<b.length;c++)a.ca("breakpoint enabled: "+$(b[c])+" ("+b[0]+")");return b.length-1}
function xb(a,b,c,d){if(void 0===d)xb(a,b,c,a.Sd),xb(a,b,c,a.Qc);else for(var e=1;e<d.length;e++){var f=il(a,d[e]);if(f>=b&&f<b+c){var g=a.na;g.Aa[f>>g.rb].Vd(f&g.eb,d==a.Qc)}}}function fl(a,b){if(void 0!==b)gl(a,b,a.vc,!0),a.mc=0;else for(var c=1;c<a.vc.length;c++){var d=a.vc[c];if(d[3]){if(!kl(a,a.vc,d,!0))break;c=0}}}
function gl(a,b,c,d){var e=!1;16711680==(b&16711680)&&(b&=1048575);for(var f=1;f<c.length;f++){var g=c[f];if(b==il(a,g)){g[3]?kl(a,c,g,!0):d||a.ca("breakpoint hit: "+$(g)+" ("+c[0]+")");e=!0;break}}return e}
function ml(a,b,c,d){var e=[b[0],b[1],b[2]],f=a.ub(b,1),g=a.Gf[f],h=g[0],m=-1;204==h&&(h=a.ub(b,1),g=Yk[h]||Z,f|=h<<8,h=g[0]);h>=Uk.length&&(m=a.ub(b,1),g=Zk[h-Uk.length][m>>3&7]);var n=2,h="";if(164<=f&&167>=f||170<=f&&175>=f)n=0;for(f=1;f<=n;f++){var q="",t=g[f];if(void 0!==t){var s=t&15;if(0!=s&&15!=s){var v=t&240;if(128<=v)if(0>m&&(m=a.ub(b,1)),160<=v)q=m>>3&7,176==(t&240)?q+=16:3<=(t&15)&&(q+=8),q=X[q];else{if(128<=v){var q=a,A=t,s=b,D="",v=m>>6,D=m&7;3>v?(A=void 0,v||6!=D?(D=Vk[D],1==v?(A=q.ub(s,
1),A&128?(A=A<<24>>24,D+="-"+r(-A)):D+="+"+r(A)):2==v&&(A=q.Ia(s,2),D+="+"+u(A))):(A=q.Ia(s,2),D=u(A)),D="["+D+"]"):D=X[D+(1==(A&15)?0:8)];q=D}}else if(16==v)q="1";else if(0==v){q=a;v=t;s=b;A=" ";switch(v&15){case 1:v&12288&&(A=r(q.ub(s,1)));break;case 2:A=u(q.ub(s,1)<<24>>24);break;case 3:case 4:A=u(q.Ia(s,2));break;case 6:v=q.Ia(s,2);q=q.Ia(s,2);A=$([v,q,void 0]);break;default:A="imm("+u(v)+")"}q=A}else 32==v?q="["+u(a.Ia(b,2))+"]":48==v?(1==s?(q=a.ub(b,1),q=q<<24>>24):q=a.Ia(b,2),q=b[0]+q&65535,
q=nl(a,[q,b[1],void 0])[0]||u(q)):96==v?q=X[(t&3840)>>8]:112==v?q=X[((t&3840)>>8)+16]:64==v?q="DS:[SI]":80==v&&(q="ES:[DI]");q.length||(q="type("+u(t)+")");0<h.length&&(h+=",");h+=q}}}m=$(e)+" ";n="";do n+=r(a.ub(e,1));while(e[0]!=b[0]);m+=(n+" ").substr(0,14);m+=(Uk[g[0]]+" ").substr(0,8);h&&(m+=" "+h);c&&(m=(m+" ").substr(0,50),m+=";",m=a.S.cf?m+("cycles="+F(a.S).toString()+" cs="+p(a.S.dg)):m+(c+(null!=d?"="+d.toString():"")));return m}
function ol(a,b){var c;switch(b){case "V":c=Zc(a.S);break;case "D":c=a.S.ya&1024;break;case "I":c=a.S.ya&512;break;case "T":c=a.S.ya&256;break;case "S":c=Yc(a.S);break;case "Z":c=Xc(a.S);break;case "A":c=Wc(a.S);break;case "P":c=Vc(a.S);break;case "C":c=Uc(a.S);break;default:c=0}return" "+b+(c?"1":"0")}function pl(a,b){return a.xg+"="+u(a.oa)+(b?"["+p(a.Ua,6)+","+u(a.Mc)+"]":"")}function sl(a,b,c,d){return a+"="+(null!=b?u(b):"")+"["+p(c,6)+","+u(d-c)+"]"}
function tl(a,b,c){var d=2==c?a.ek:a.Dc;c=d[0];var e=d[1],d=d[2];if(void 0!==b){"%"==b.charAt(0)&&(b=b.substr(1),e=null);var f=b,d=null;if(f.match(/^[a-z_][a-z0-9_]*$/i))for(var d=[],g=f.toUpperCase(),h=0;h<a.vc.length;h++){var f=a.vc[h][0],m=a.vc[h][2][g];if(void 0!==m){g=m.o;void 0!==g&&(h=m.s,void 0===h&&(h=f>>>4),d[0]=g,d[1]=h,void 0!==m.p&&(d[2]=m.p));break}}if(d&&d.length)return d;d=b.indexOf(":");0>d?null!=e?(c=ul(a,b),d=null):d=ul(a,b):(e=ul(a,b.substring(0,d)),c=ul(a,b.substring(d+1)),d=
function ml(a,b,c,d){var e=[b[0],b[1],b[2]],f=a.ub(b,1),g=a.Hf[f],h=g[0],m=-1;204==h&&(h=a.ub(b,1),g=Yk[h]||Z,f|=h<<8,h=g[0]);h>=Uk.length&&(m=a.ub(b,1),g=Zk[h-Uk.length][m>>3&7]);var n=2,h="";if(164<=f&&167>=f||170<=f&&175>=f)n=0;for(f=1;f<=n;f++){var q="",t=g[f];if(void 0!==t){var s=t&15;if(0!=s&&15!=s){var v=t&240;if(128<=v)if(0>m&&(m=a.ub(b,1)),160<=v)q=m>>3&7,176==(t&240)?q+=16:3<=(t&15)&&(q+=8),q=X[q];else{if(128<=v){var q=a,A=t,s=b,E="",v=m>>6,E=m&7;3>v?(A=void 0,v||6!=E?(E=Vk[E],1==v?(A=q.ub(s,
1),A&128?(A=A<<24>>24,E+="-"+r(-A)):E+="+"+r(A)):2==v&&(A=q.Ia(s,2),E+="+"+u(A))):(A=q.Ia(s,2),E=u(A)),E="["+E+"]"):E=X[E+(1==(A&15)?0:8)];q=E}}else if(16==v)q="1";else if(0==v){q=a;v=t;s=b;A=" ";switch(v&15){case 1:v&12288&&(A=r(q.ub(s,1)));break;case 2:A=u(q.ub(s,1)<<24>>24);break;case 3:case 4:A=u(q.Ia(s,2));break;case 6:v=q.Ia(s,2);q=q.Ia(s,2);A=$([v,q,void 0]);break;default:A="imm("+u(v)+")"}q=A}else 32==v?q="["+u(a.Ia(b,2))+"]":48==v?(1==s?(q=a.ub(b,1),q=q<<24>>24):q=a.Ia(b,2),q=b[0]+q&65535,
q=nl(a,[q,b[1],void 0])[0]||u(q)):96==v?q=X[(t&3840)>>8]:112==v?q=X[((t&3840)>>8)+16]:64==v?q="DS:[SI]":80==v&&(q="ES:[DI]");q.length||(q="type("+u(t)+")");0<h.length&&(h+=",");h+=q}}}m=$(e)+" ";n="";do n+=r(a.ub(e,1));while(e[0]!=b[0]);m+=(n+" ").substr(0,14);m+=(Uk[g[0]]+" ").substr(0,8);h&&(m+=" "+h);c&&(m=(m+" ").substr(0,50),m+=";",m=a.S.df?m+("cycles="+F(a.S).toString()+" cs="+p(a.S.eg)):m+(c+(null!=d?"="+d.toString():"")));return m}
function ol(a,b){var c;switch(b){case "V":c=Zc(a.S);break;case "D":c=a.S.xa&1024;break;case "I":c=a.S.xa&512;break;case "T":c=a.S.xa&256;break;case "S":c=Yc(a.S);break;case "Z":c=Xc(a.S);break;case "A":c=Wc(a.S);break;case "P":c=Vc(a.S);break;case "C":c=Uc(a.S);break;default:c=0}return" "+b+(c?"1":"0")}function pl(a,b){return a.yg+"="+u(a.oa)+(b?"["+p(a.Ua,6)+","+u(a.Nc)+"]":"")}function sl(a,b,c,d){return a+"="+(null!=b?u(b):"")+"["+p(c,6)+","+u(d-c)+"]"}
function tl(a,b,c){var d=2==c?a.hk:a.Ec;c=d[0];var e=d[1],d=d[2];if(void 0!==b){"%"==b.charAt(0)&&(b=b.substr(1),e=null);var f=b,d=null;if(f.match(/^[a-z_][a-z0-9_]*$/i))for(var d=[],g=f.toUpperCase(),h=0;h<a.xc.length;h++){var f=a.xc[h][0],m=a.xc[h][2][g];if(void 0!==m){g=m.o;void 0!==g&&(h=m.s,void 0===h&&(h=f>>>4),d[0]=g,d[1]=h,void 0!==m.p&&(d[2]=m.p));break}}if(d&&d.length)return d;d=b.indexOf(":");0>d?null!=e?(c=ul(a,b),d=null):d=ul(a,b):(e=ul(a,b.substring(0,d)),c=ul(a,b.substring(d+1)),d=
null)}return[c,e,d]}
function ul(a,b,c){var d;if(void 0!==b)switch(b=b.toUpperCase(),b){case "AX":d=a.S.G;break;case "BX":d=a.S.B;break;case "CX":d=a.S.I;break;case "DX":d=a.S.J;break;case "SI":d=a.S.F;break;case "DI":d=a.S.D;break;case "BP":d=a.S.H;break;case "SP":d=a.S.Y;break;case "CS":d=a.S.ua.oa;break;case "DS":d=a.S.Eb.oa;break;case "ES":d=a.S.Za.oa;break;case "SS":d=a.S.wb.oa;break;case "IP":d=a.S.qa;break;default:d=ca(b),void 0===d&&a.ca("invalid "+(c?c:"value")+": "+b)}else a.ca("missing "+(c?c:"value"));return d}
function Pi(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0}var f=[],g=[],h;for(h in d){var m=d[h];"number"==typeof m&&(d[h]=m={o:m});var n=m.o,q=m.s,t=m.a;void 0!==n&&(void 0!==q&&(f[0]=n,f[1]=q,m.p=il(a,f)),na(g,[n,h],e));t&&(m.a=t.replace(/''/g,'"'))}a.vc.push([b,c,d,g])}
function nl(a,b,c){for(var d=[],e=il(a,b),f=0;f<a.vc.length;f++){var g=a.vc[f][0],h=a.vc[f][1];if(e>=g&&e<g+h){b=ma(a.vc[f][3],[b[0]],function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0});0<=b?vl(a,f,b,d):c&&(b=~b,vl(a,f,b-1,d),vl(a,f,b,d));break}}return d}function vl(a,b,c,d){var e={},f=a.vc[b][3],g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.vc[b][2][h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}
function wl(a,b){if("?"==b)a.ca("\nfrequency commands:"),a.ca("\tclear\tclear all frequency counts");else{var c,d=0;if(a.Qc)if("clear"==b){for(c=0;c<a.Qc.length;c++)a.Qc[c]=[c,0];a.ca("frequency data cleared");d++}else if(void 0!==b)a.ca("unknown frequency command: "+b),d++;else{var e=a.Qc.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.ca((Uk[a.Gf[f][0]]+" ").substr(0,5)+" ("+r(f)+"): "+g+" times"),d++)}}d||a.ca("no frequency data available")}}
function Pi(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0}var f=[],g=[],h;for(h in d){var m=d[h];"number"==typeof m&&(d[h]=m={o:m});var n=m.o,q=m.s,t=m.a;void 0!==n&&(void 0!==q&&(f[0]=n,f[1]=q,m.p=il(a,f)),na(g,[n,h],e));t&&(m.a=t.replace(/''/g,'"'))}a.xc.push([b,c,d,g])}
function nl(a,b,c){for(var d=[],e=il(a,b),f=0;f<a.xc.length;f++){var g=a.xc[f][0],h=a.xc[f][1];if(e>=g&&e<g+h){b=ka(a.xc[f][3],[b[0]],function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0});0<=b?vl(a,f,b,d):c&&(b=~b,vl(a,f,b-1,d),vl(a,f,b,d));break}}return d}function vl(a,b,c,d){var e={},f=a.xc[b][3],g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.xc[b][2][h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}
function wl(a,b){if("?"==b)a.ca("\nfrequency commands:"),a.ca("\tclear\tclear all frequency counts");else{var c,d=0;if(a.Rc)if("clear"==b){for(c=0;c<a.Rc.length;c++)a.Rc[c]=[c,0];a.ca("frequency data cleared");d++}else if(void 0!==b)a.ca("unknown frequency command: "+b),d++;else{var e=a.Rc.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.ca((Uk[a.Hf[f][0]]+" ").substr(0,5)+" ("+r(f)+"): "+g+" times"),d++)}}d||a.ca("no frequency data available")}}
function xl(a,b){if("l"==b[0]&&void 0===b[1]||"?"==b[1])a.ca("\nlist/load commands:"),a.ca("\tl [address] [drive #] [sector #] [# sectors]"),a.ca("\tln [address] lists symbol(s) nearest to address");else{var c=[],d,e=0,f=0,g=!1;if("json"==b[1])g=!0;else if(d="ln"==b[0],c=tl(a,b[1],d?1:2),d){c=nl(a,c,!0);c.length?(c[0]&&a.ca(u(c[1])+": "+c[0]),4<c.length&&c[4]&&a.ca(u(c[5])+": "+c[4])):a.ca("no symbols");return}d=ul(a,b[2],"drive #");if(void 0!==d){if(!g){e=ul(a,b[3],"sector #");if(void 0===e)return;
f=ul(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.Im;2<=d&&a.Fk&&(d-=2,h=a.Fk);if(h){var m=h.uk(d);if(m)if(m.va)if(g)a.ca(sk(m.va));else if(h.fm(m,e,f)){for(var n=0,q=!1,e=$(c);!q&&0<m.Wa--;)(function(a,b){h.qc(m,function(c){0>c?(a.ca("out of data at address "+$(b)),q=!0):(a.bd(b,c,1),n++)})})(a,c);a.ca(n+" bytes read at "+e)}else a.ca("sector "+e+" request out of range");else a.ca("drive "+d+" not loaded");else a.ca("invalid drive: "+d)}else a.ca("disk controller not present")}}}
function dl(a,b,c){if(b&&"?"==b[1])a.ca("\nregister commands:"),a.ca("\tr\t\tdisplay all registers"),a.ca("\tr [target=#]\tmodify target register"),a.ca("supported targets:"),a.ca("\tall registers and flags V,D,I,S,Z,A,P,C");else{var d=!0,e;if(null!=b&&1<b.length){var f=b[1];if("p"==f)e=void 0!==a.S.Rc;else{var d=!1,g=null,h=f.indexOf("=");if(0<h)g=f.substr(h+1),f=f.substr(0,h);else if(2<b.length)g=b[2];else{a.ca("missing value for "+b[1]);return}b=parseInt(g,16);if(isNaN(b)){a.ca("invalid value: "+
f=ul(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.Lm;2<=d&&a.Hk&&(d-=2,h=a.Hk);if(h){var m=h.wk(d);if(m)if(m.va)if(g)a.ca(sk(m.va));else if(h.hm(m,e,f)){for(var n=0,q=!1,e=$(c);!q&&0<m.Wa--;)(function(a,b){h.sc(m,function(c){0>c?(a.ca("out of data at address "+$(b)),q=!0):(a.Md(b,c,1),n++)})})(a,c);a.ca(n+" bytes read at "+e)}else a.ca("sector "+e+" request out of range");else a.ca("drive "+d+" not loaded");else a.ca("invalid drive: "+d)}else a.ca("disk controller not present")}}}
function dl(a,b,c){if(b&&"?"==b[1])a.ca("\nregister commands:"),a.ca("\tr\t\tdisplay all registers"),a.ca("\tr [target=#]\tmodify target register"),a.ca("supported targets:"),a.ca("\tall registers and flags V,D,I,S,Z,A,P,C");else{var d=!0,e;if(null!=b&&1<b.length){var f=b[1];if("p"==f)e=void 0!==a.S.Sc;else{var d=!1,g=null,h=f.indexOf("=");if(0<h)g=f.substr(h+1),f=f.substr(0,h);else if(2<b.length)g=b[2];else{a.ca("missing value for "+b[1]);return}b=parseInt(g,16);if(isNaN(b)){a.ca("invalid value: "+
g);return}switch(f.toUpperCase()){case "AL":a.S.G=a.S.G&65280|b&255;break;case "AH":a.S.G=a.S.G&255|b<<8&255;break;case "AX":a.S.G=b&65535;break;case "BL":a.S.B=a.S.B&65280|b&255;break;case "BH":a.S.B=a.S.B&255|b<<8&255;break;case "BX":a.S.B=b&65535;break;case "CL":a.S.I=a.S.I&65280|b&255;break;case "CH":a.S.I=a.S.I&255|b<<8&255;break;case "CX":a.S.I=b&65535;break;case "DL":a.S.J=a.S.J&65280|b&255;break;case "DH":a.S.J=a.S.J&255|b<<8&255;break;case "DX":a.S.J=b&65535;break;case "SP":a.S.Y=b&65535;
break;case "BP":a.S.H=b&65535;break;case "SI":a.S.F=b&65535;break;case "DI":a.S.D=b&65535;break;case "DS":Oc(a.S,b);break;case "ES":Tc(a.S,b);break;case "SS":Pc(a.S,b);break;case "CS":d=!0;Nc(a.S,b);a.Dc=[a.S.qa,a.S.ua.oa,void 0];break;case "IP":d=!0;I(a.S,b);a.Dc=[a.S.qa,a.S.ua.oa,void 0];break;case "C":b?ed(a.S):$c(a.S);break;case "P":b?(f=a.S,Vc(f)||(f.ja^=1)):(f=a.S,Vc(f)&&(f.ja^=1));break;case "A":b?fd(a.S):ad(a.S);break;case "Z":b?gd(a.S):bd(a.S);break;case "S":b?hd(a.S):cd(a.S);break;case "I":b?
(f=a.S,f.ya|=512):(f=a.S,f.ya&=-513);break;case "D":b?(f=a.S,f.ya|=1024):(f=a.S,f.ya&=-1025);break;case "V":b?id(a.S):dd(a.S);break;default:a.ca("unknown register: "+f);return}Eb(a.S);a.ca("updated registers:")}}f=e;void 0===f&&(f=!!(a.S.ad&1));e="AX="+u(a.S.G)+" BX="+u(a.S.B)+" CX="+u(a.S.I)+" DX="+u(a.S.J)+" SP="+u(a.S.Y)+" BP="+u(a.S.H)+" SI="+u(a.S.F)+" DI="+u(a.S.D)+"\n";e+=pl(a.S.Eb,f)+" "+pl(a.S.Za,f)+" "+pl(a.S.wb,f);e=e+(f?"\n":" ")+(pl(a.S.ua,f)+" IP="+u(a.S.qa)+ol(a,"V")+ol(a,"D")+ol(a,
"I")+ol(a,"T")+ol(a,"S")+ol(a,"Z")+ol(a,"A")+ol(a,"P")+ol(a,"C"));f&&(f=a.na,e+=" MS="+u(a.S.ad)+"\n"+sl("LD",a.S.Ld.oa,a.S.Ld.Ua,a.S.Ld.Mc)+" "+sl("GD",null,a.S.Rc,a.S.Ye)+" "+sl("ID",null,a.S.dd,a.S.te)+" TR="+u(a.S.Ag.oa)+" A20="+(f.ue==f.Ib?"ON":"OFF"));a.ca((c?"":"\n")+e);d&&(a.Dc=[a.S.qa,a.S.ua.oa,void 0],el(a,$(a.Dc)))}}function yl(a,b,c){var d="tr"==b;b=null!=c?parseInt(c,10):1;var e=1==b?0:1;wa(b,function(){return Pa(a,!0)&&a.wf(e,d,!1)},function(){Eb(a.S);Pa(a,!1)})}
function el(a,b,c,d){b=tl(a,b,1);if(null!=b[0]){void 0===d&&(d=1);var e=[65535,b[1],a.na.ue];if(void 0!==c){e=tl(a,c,1);if(null==e[0]||e[0]<b[0])return;if(256<e[0]-b[0]){a.ca("range too large");return}e[0]++;d=-1}for(c=b[0]!=a.Dc[0];d--&&(null!=b[1]?b[0]<e[0]:b[2]<e[2]);){var f=a.ub(b),g=Qa(a,!1)||a.kc?a.Zc:null;if(38==f||46==f||54==f||62==f||240==f||242==f||243==f)g=null,d||d++;var f=null!=g?"cycles":null,h=nl(a,b);if(h[0]){var m=h[0]+":";c=!1;h[2]&&(m+=" "+h[2]);a.ca(m)}c&&a.ca();h[3]&&(f=h[3],
g=null);c=ml(a,b,f,g);a.ca(c);a.Dc=b;c=!1}}}function al(a,b,c){c&&(b?a.Ih=b:b=a.Ih);a=b?b.split(0<=b.indexOf("|")?"|":";"):[""];for(var d in a)a[d]=ja(a[d]);return a}
function bl(a,b){!b.length&&a.bf&&(a.ca("ended assemble @"+$(a.qe)),a.Dc=a.qe,a.bf=!1);b=b.toLowerCase();if(Ra(a)&&!Qa(a,!0)&&0<b.length){if(a.bf)b="a "+$(a.qe)+" "+b;else{var c,d,e;switch(b){case "reset":a.Da&&a.Da.reset();return;default:for(d=b.charAt(0),e=1;e<b.length;e++){c=b.charAt(e);if(" "==c)break;if("r"==d||"a">c||"z"<c){b=b.substring(0,e)+" "+b.substring(e);break}}}}c=b.split(" ");switch(c[0].charAt(0)){case "a":var f=tl(a,c[1],1);if(null!=f[0])if(a.qe=f,void 0===c[2])a.ca("begin assemble @"+
$(f)),a.bf=!0,Eb(a.S);else if(a.ca("not supported yet"),c=[],c.length){for(var g=0;g<c.length;g++)a.bd(f,c[g],1);a.ca(ml(a,a.qe))}break;case "b":a:if(f=c[1],(c=c[0].charAt(1))&&"?"!=c)if("l"==c)f=0+ll(a,a.tc),f+=ll(a,a.Sd),(f+=ll(a,a.Pc))||a.ca("no breakpoints");else if(void 0===f)a.ca("missing breakpoint address");else{g=[];if("*"!=f&&(g=tl(a,f,1),null==g[0]))break a;f=null==g[0]?f:u(g[0]);"c"==c?null==g[0]?(Rk(a),a.ca("all breakpoints cleared")):kl(a,a.tc,g,!0)||kl(a,a.Sd,g,!0)||kl(a,a.Pc,g,!0)||
a.ca("breakpoint missing: "+$(g)):"i"==c?a.ca("breakpoint "+(hb(a.na,g[0])?"enabled":"cleared")+": port "+f+" (input)"):"o"==c?a.ca("breakpoint "+(lb(a.na,g[0])?"enabled":"cleared")+": port "+f+" (output)"):null!=g[0]&&("p"==c?a.Vd(a.tc,g):"r"==c?a.Vd(a.Sd,g):"w"==c?a.Vd(a.Pc,g):a.ca("unknown breakpoint command: "+c))}else a.ca("\nbreakpoint commands:"),a.ca("\tbi [p]\ttoggle break on input port [p]"),a.ca("\tbo [p]\ttoggle break on output port [p]"),a.ca("\tbp [a]\tset exec breakpoint at addr [a]"),
a.ca("\tbr [a]\tset read breakpoint at addr [a]"),a.ca("\tbw [a]\tset write breakpoint at addr [a]"),a.ca("\tbc [a]\tclear breakpoint at addr [a]"),a.ca("\tbl\tlist all breakpoints");break;case "c":a.Uf&&(a.Uf.value="");break;case "d":a:{var h=c[0],g=c[1],m=c[2],n;if("?"==g){f="symbols";for(n in Y)a.ci[n]&&(f.length&&(f+=","),f+=Y[n].Ma);f+=",state";a.ca("\ndump commands:");a.ca("\tdb [a] [#] dump bytes at address a");a.ca("\tdw [a] [#] dump words at address a");a.ca("\tds [s] dump descriptor for selector s");
f.length&&a.ca("dumps are also available for: "+f)}else if("state"==g)a.ca(zl(a.Da,!0));else if("symbols"==g)for(c=0;c<a.vc.length;c++)for(f in g=a.vc[c][0],h=a.vc[c][2],h)"."!=f.charAt(0)&&(m=h[f],n=m.o,void 0!==n&&(m=m.s,void 0===m&&(m=g>>>4),(d=h[f].l)&&(f=d),a.ca(da(n,m)+" "+f)));else{for(n in Y)if(g==Y[n].Ma){(f=a.ci[n])?f(m):a.ca("no dump registered for "+g);break a}f=tl(a,g,2);if(null!=f[0])if("ds"==h)if(c=hl(a,f[0]),null!=c.oa){f="selector="+u(f[0])+" limit="+u(c.Mc)+" base="+p(c.Ua);if(c.ab){f+=
break;case "BP":a.S.H=b&65535;break;case "SI":a.S.F=b&65535;break;case "DI":a.S.D=b&65535;break;case "DS":Oc(a.S,b);break;case "ES":Tc(a.S,b);break;case "SS":Pc(a.S,b);break;case "CS":d=!0;Nc(a.S,b);a.Ec=[a.S.qa,a.S.ua.oa,void 0];break;case "IP":d=!0;I(a.S,b);a.Ec=[a.S.qa,a.S.ua.oa,void 0];break;case "C":b?ed(a.S):$c(a.S);break;case "P":b?(f=a.S,Vc(f)||(f.ja^=1)):(f=a.S,Vc(f)&&(f.ja^=1));break;case "A":b?fd(a.S):ad(a.S);break;case "Z":b?gd(a.S):bd(a.S);break;case "S":b?hd(a.S):cd(a.S);break;case "I":b?
(f=a.S,f.xa|=512):(f=a.S,f.xa&=-513);break;case "D":b?(f=a.S,f.xa|=1024):(f=a.S,f.xa&=-1025);break;case "V":b?id(a.S):dd(a.S);break;default:a.ca("unknown register: "+f);return}Eb(a.S);a.ca("updated registers:")}}f=e;void 0===f&&(f=!!(a.S.ad&1));e="AX="+u(a.S.G)+" BX="+u(a.S.B)+" CX="+u(a.S.I)+" DX="+u(a.S.J)+" SP="+u(a.S.Y)+" BP="+u(a.S.H)+" SI="+u(a.S.F)+" DI="+u(a.S.D)+"\n";e+=pl(a.S.Eb,f)+" "+pl(a.S.Za,f)+" "+pl(a.S.wb,f);e=e+(f?"\n":" ")+(pl(a.S.ua,f)+" IP="+u(a.S.qa)+ol(a,"V")+ol(a,"D")+ol(a,
"I")+ol(a,"T")+ol(a,"S")+ol(a,"Z")+ol(a,"A")+ol(a,"P")+ol(a,"C"));f&&(f=a.na,e+=" MS="+u(a.S.ad)+"\n"+sl("LD",a.S.Ld.oa,a.S.Ld.Ua,a.S.Ld.Nc)+" "+sl("GD",null,a.S.Sc,a.S.Ze)+" "+sl("ID",null,a.S.dd,a.S.ue)+" TR="+u(a.S.Bg.oa)+" A20="+(f.ve==f.Ib?"ON":"OFF"));a.ca((c?"":"\n")+e);d&&(a.Ec=[a.S.qa,a.S.ua.oa,void 0],el(a,$(a.Ec)))}}function yl(a,b,c){var d="tr"==b;b=null!=c?parseInt(c,10):1;var e=1==b?0:1;wa(b,function(){return Pa(a,!0)&&a.xf(e,d,!1)},function(){Eb(a.S);Pa(a,!1)})}
function el(a,b,c,d){b=tl(a,b,1);if(null!=b[0]){void 0===d&&(d=1);var e=[65535,b[1],a.na.ve];if(void 0!==c){e=tl(a,c,1);if(null==e[0]||e[0]<b[0])return;if(256<e[0]-b[0]){a.ca("range too large");return}e[0]++;d=-1}for(c=b[0]!=a.Ec[0];d--&&(null!=b[1]?b[0]<e[0]:b[2]<e[2]);){var f=a.ub(b),g=Qa(a,!1)||a.mc?a.$c:null;if(38==f||46==f||54==f||62==f||240==f||242==f||243==f)g=null,d||d++;var f=null!=g?"cycles":null,h=nl(a,b);if(h[0]){var m=h[0]+":";c=!1;h[2]&&(m+=" "+h[2]);a.ca(m)}c&&a.ca();h[3]&&(f=h[3],
g=null);c=ml(a,b,f,g);a.ca(c);a.Ec=b;c=!1}}}function al(a,b,c){c&&(b?a.Lh=b:b=a.Lh);a=b?b.split(0<=b.indexOf("|")?"|":";"):[""];for(var d in a)a[d]=ja(a[d]);return a}
function bl(a,b){!b.length&&a.cf&&(a.ca("ended assemble @"+$(a.re)),a.Ec=a.re,a.cf=!1);b=b.toLowerCase();if(Ra(a)&&!Qa(a,!0)&&0<b.length){if(a.cf)b="a "+$(a.re)+" "+b;else{var c,d,e;switch(b){case "reset":a.Da&&a.Da.reset();return;default:for(d=b.charAt(0),e=1;e<b.length;e++){c=b.charAt(e);if(" "==c)break;if("r"==d||"a">c||"z"<c){b=b.substring(0,e)+" "+b.substring(e);break}}}}c=b.split(" ");switch(c[0].charAt(0)){case "a":var f=tl(a,c[1],1);if(null!=f[0])if(a.re=f,void 0===c[2])a.ca("begin assemble @"+
$(f)),a.cf=!0,Eb(a.S);else if(a.ca("not supported yet"),c=[],c.length){for(var g=0;g<c.length;g++)a.Md(f,c[g],1);a.ca(ml(a,a.re))}break;case "b":a:if(f=c[1],(c=c[0].charAt(1))&&"?"!=c)if("l"==c)f=0+ll(a,a.vc),f+=ll(a,a.Sd),(f+=ll(a,a.Qc))||a.ca("no breakpoints");else if(void 0===f)a.ca("missing breakpoint address");else{g=[];if("*"!=f&&(g=tl(a,f,1),null==g[0]))break a;f=null==g[0]?f:u(g[0]);"c"==c?null==g[0]?(Rk(a),a.ca("all breakpoints cleared")):kl(a,a.vc,g,!0)||kl(a,a.Sd,g,!0)||kl(a,a.Qc,g,!0)||
a.ca("breakpoint missing: "+$(g)):"i"==c?a.ca("breakpoint "+(hb(a.na,g[0])?"enabled":"cleared")+": port "+f+" (input)"):"o"==c?a.ca("breakpoint "+(lb(a.na,g[0])?"enabled":"cleared")+": port "+f+" (output)"):null!=g[0]&&("p"==c?a.Vd(a.vc,g):"r"==c?a.Vd(a.Sd,g):"w"==c?a.Vd(a.Qc,g):a.ca("unknown breakpoint command: "+c))}else a.ca("\nbreakpoint commands:"),a.ca("\tbi [p]\ttoggle break on input port [p]"),a.ca("\tbo [p]\ttoggle break on output port [p]"),a.ca("\tbp [a]\tset exec breakpoint at addr [a]"),
a.ca("\tbr [a]\tset read breakpoint at addr [a]"),a.ca("\tbw [a]\tset write breakpoint at addr [a]"),a.ca("\tbc [a]\tclear breakpoint at addr [a]"),a.ca("\tbl\tlist all breakpoints");break;case "c":a.Vf&&(a.Vf.value="");break;case "d":a:{var h=c[0],g=c[1],m=c[2],n;if("?"==g){f="symbols";for(n in Y)a.ei[n]&&(f.length&&(f+=","),f+=Y[n].Ma);f+=",state";a.ca("\ndump commands:");a.ca("\tdb [a] [#] dump bytes at address a");a.ca("\tdw [a] [#] dump words at address a");a.ca("\tds [s] dump descriptor for selector s");
f.length&&a.ca("dumps are also available for: "+f)}else if("state"==g)a.ca(zl(a.Da,!0));else if("symbols"==g)for(c=0;c<a.xc.length;c++)for(f in g=a.xc[c][0],h=a.xc[c][2],h)"."!=f.charAt(0)&&(m=h[f],n=m.o,void 0!==n&&(m=m.s,void 0===m&&(m=g>>>4),(d=h[f].l)&&(f=d),a.ca(da(n,m)+" "+f)));else{for(n in Y)if(g==Y[n].Ma){(f=a.ei[n])?f(m):a.ca("no dump registered for "+g);break a}f=tl(a,g,2);if(null!=f[0])if("ds"==h)if(c=hl(a,f[0]),null!=c.oa){f="selector="+u(f[0])+" limit="+u(c.Nc)+" base="+p(c.Ua);if(c.ab){f+=
" access="+u(c.ab);if(c.ab&4096)c.ab&2048?(f=f+"code:"+(c.ab&512?"readable,":"execonly,"),f+=c.ab&1024?"conforming,":"nonconforming,"):(f+="data:",f+=c.ab&512?"writeable,":"readonly,",f+=c.ab&1024?"expand down,":"expand up,"),f+=c.ab&256?"accessed":"not accessed";else switch(f+="type:",c.ab&7936){case 256:f+="tss";break;case 512:f+="ldt";break;case 768:f+="tss(busy)";break;case 1024:f+="call";break;case 1280:f+="task";break;case 1536:f+="int";break;case 1792:f+="trap";break;default:f+="unknown"}f+=
",dpl"+(c.ab>>13&24576);f+=c.ab&32768?",present":",not present"}a.ca(f)}else a.ca("invalid selector: "+u(f[0]));else{c=0;void 0!==m&&("l"==m.charAt(0)&&(m=m.substr(1)),c=parseInt(m,10));n="";c||(c=8);for(m=0;m<c;m++){e=d="";for(var g=$(f),q=0,t=0;16>t;t++){var s=a.ub(f,1);"dw"==h?t&1&&(d+=u(q|s<<8)+(7==t?" - ":" ")):d+=r(s)+(7==t?"-":" ");e+=32<=s&&128>s?String.fromCharCode(s):".";q=s}n&&(n+="\n");n+=g+" "+d+" "+e}n&&a.ca(n);a.ek=f}}}break;case "e":f=c[1];if(void 0===f)a.ca("missing address");else if(f=
tl(a,f,2),null!=f[0])for(g=2;g<c.length;g++)h=parseInt(c[g],16),a.ca("setting "+$(f)+" to "+r(h)),a.bd(f,h,1);break;case "f":wl(a,c[1]);break;case "g":a:{f=c[1];if(void 0!==f){f=tl(a,f,1);if(null==f[0])break a;a.Vd(a.tc,f,!0)}a.Ne(!0)||a.ca('cpu not available, "g" command ignored')}break;case "h":m=c[1];if(a.Nb&&void 0===m)a.Ab();else{f="";c=10;g=a.jf;h=a.Ud;if(h.length)for(n=void 0===m?a.Sl:parseInt(m,10),isNaN(n)?n=c:f="more ",n>h.length&&(a.ca("note: only "+h.length+" available"),n=h.length),g-=
n,0>g&&(null!=h[h.length-1][1]?g+=h.length:(n=g+n,g=0)),void 0!==m&&a.ca(n+" instructions earlier:");c&&g!=a.jf;){m=h[g];if(null==m[1])break;m=[m[0],m[1],m[2]];a.ca(ml(a,m,"history",-n));++g==h.length&&(g=0);a.Sl=--n;c--}10==c&&(a.ca("no "+f+"history available"),a.Sl=void 0)}break;case "i":(f=c[1])&&"?"!=f?(f=ul(a,f),void 0!==f&&(c=jb(a.na,f),a.ca(u(f)+": "+r(c)))):(a.ca("\ninput commands:"),a.ca("\ti [p]\tread port [p]"),a.ca("warning: port accesses can affect hardware state"));break;case "l":xl(a,
c);break;case "m":a:{f=null;h=c[1];"?"==h&&(h=void 0);if(void 0!==h){n=0;if("all"==h)n=4294967295,h=null;else if("on"==h)f=!0,h=null;else if("off"==h)f=!1,h=null;else{for(g in Y)if(h==Y[g].Ma){n=Y[g].La;f=!!(a.dc&n);break}if(!n){a.ca("unknown message category: "+h);break a}}n&&("on"==c[2]?(a.dc|=n,f=!0):"off"==c[2]&&(a.dc&=~n,f=!1))}c=0;n="";for(g in Y)if(!h||h==Y[g].Ma)if(m=!!(a.dc&Y[g].La),null===f||f==m)n&&(n+=","),++c%10||(n+="\n\t"),n+=Y[g].Ma;void 0===h&&a.ca("\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off");
a.ca((null!==f?f?"messages on: ":"messages off: ":"message categories:\n\t")+(n||"none"))}break;case "o":f=c[1];c=c[2];f&&"?"!=f?(f=ul(a,f,"port #"),c=ul(a,c),void 0!==f&&void 0!==c&&nb(a.na,f,c)):(a.ca("\noutput commands:"),a.ca("\to [p] [d]\twrite data [d] to port [p]"),a.ca("warning: port accesses can affect hardware state"));break;case "p":case "pr":f="pr"==c[0]?1:0;c=1+f;if(a.kc)a.ca("step in progress");else{h=!1;n=[a.S.qa,a.S.ua.oa,void 0];do switch(g=!1,a.ub(n)){case 38:case 46:case 54:case 62:case 240:jl(n,
1);g=!0;break;case 204:case 206:a.kc=c;jl(n,1);break;case 205:case 224:case 225:case 226:a.kc=c;jl(n,2);break;case 232:a.kc=c;jl(n,3);break;case 154:a.kc=c;jl(n,5);break;case 255:a.kc=0<=ml(a,n).indexOf("CALL")?c:0;break;case 243:case 242:jl(n,1);h=g=!0;break;case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:h&&(a.kc=c,jl(n,1))}while(g);a.kc?(a.Vd(a.tc,n,!0),a.Ne()||(a.S.Md(),a.kc=0)):yl(a,f?"tr":"t")}break;case "r":dl(a,c);break;case "t":case "tr":yl(a,c[0],
c[1]);break;case "u":el(a,c[1],c[2],8);break;case "x":a:if(void 0===c[1]||"?"==c[1])a.ca("\nexecution options:"),a.ca("\tcs int #\tset checksum cycle interval to #"),a.ca("\tcs start #\tset checksum cycle start count to #"),a.ca("\tcs stop #\tset checksum cycle stop count to #"),a.ca("\tsp #\t\tset speed multiplier to #");else switch(c[1]){case "cs":void 0!==c[3]&&(m=parseInt(c[3],10));switch(c[2]){case "int":a.S.lf=m;break;case "start":a.S.fg=m;break;case "stop":a.S.nf=m;break;default:a.ca("unknown cs option");
break a}void 0!==m&&Bb(a.S);a.ca("checksums "+(a.S.cf?"enabled":"disabled"));break;case "sp":void 0!==c[2]&&Hb(a.S,parseInt(c[2],10));a.ca("target speed: "+(a.S.Ge.toFixed(2)+"Mhz")+" ("+a.S.Gd+"x)");break;default:a.ca("unknown option: "+c[1])}break;case "?":f="commands:";for(h in Tk)f+="\n"+h+" ".substr(0,7-h.length)+Tk[h];jd(a)||(f+="\nnote: frequency/history disabled if no exec breakpoints");a.ca(f);break;default:a.ca("unknown command: "+b)}}}
Ba(function(){for(var a=B(window.document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Qk(d);Oa(d,c)}});function H(a,b,c){this.id=a.id;this.key=Al(a,b,c);this.X=a.X;Bl(this,a.dp)}function Al(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}function Cl(){try{return"undefined"!==typeof window.localStorage}catch(a){return!1}}
H.prototype={set:function(a,b){this[this.id][a]=b},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.Bi=!0):this.Bi?!0:Cl()&&(a=window.localStorage.getItem(this.key))?(this[this.id]=a,this.Bi=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){w(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},
clear:function(a){Bl(this);if(Cl())for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}},Qa:function(a){this.X&&E(this.X,this.X.vm)&&this.X.message(a)}};function Bl(a,b){a[a.id]={};b&&a.set("parms",b);a.Bi=!1}
",dpl"+(c.ab>>13&24576);f+=c.ab&32768?",present":",not present"}a.ca(f)}else a.ca("invalid selector: "+u(f[0]));else{c=0;void 0!==m&&("l"==m.charAt(0)&&(m=m.substr(1)),c=parseInt(m,10));n="";c||(c=8);for(m=0;m<c;m++){e=d="";for(var g=$(f),q=0,t=0;16>t;t++){var s=a.ub(f,1);"dw"==h?t&1&&(d+=u(q|s<<8)+(7==t?" - ":" ")):d+=r(s)+(7==t?"-":" ");e+=32<=s&&128>s?String.fromCharCode(s):".";q=s}n&&(n+="\n");n+=g+" "+d+" "+e}n&&a.ca(n);a.hk=f}}}break;case "e":f=c[1];if(void 0===f)a.ca("missing address");else if(f=
tl(a,f,2),null!=f[0])for(g=2;g<c.length;g++)h=parseInt(c[g],16),a.ca("setting "+$(f)+" to "+r(h)),a.Md(f,h,1);break;case "f":wl(a,c[1]);break;case "g":a:{f=c[1];if(void 0!==f){f=tl(a,f,1);if(null==f[0])break a;a.Vd(a.vc,f,!0)}a.Oe(!0)||a.ca('cpu not available, "g" command ignored')}break;case "h":m=c[1];if(a.Ob&&void 0===m)a.Ab();else{f="";c=10;g=a.kf;h=a.Ud;if(h.length)for(n=void 0===m?a.Ul:parseInt(m,10),isNaN(n)?n=c:f="more ",n>h.length&&(a.ca("note: only "+h.length+" available"),n=h.length),g-=
n,0>g&&(null!=h[h.length-1][1]?g+=h.length:(n=g+n,g=0)),void 0!==m&&a.ca(n+" instructions earlier:");c&&g!=a.kf;){m=h[g];if(null==m[1])break;m=[m[0],m[1],m[2]];a.ca(ml(a,m,"history",-n));++g==h.length&&(g=0);a.Ul=--n;c--}10==c&&(a.ca("no "+f+"history available"),a.Ul=void 0)}break;case "i":(f=c[1])&&"?"!=f?(f=ul(a,f),void 0!==f&&(c=jb(a.na,f),a.ca(u(f)+": "+r(c)))):(a.ca("\ninput commands:"),a.ca("\ti [p]\tread port [p]"),a.ca("warning: port accesses can affect hardware state"));break;case "l":xl(a,
c);break;case "m":a:{f=null;h=c[1];"?"==h&&(h=void 0);if(void 0!==h){n=0;if("all"==h)n=4294967295,h=null;else if("on"==h)f=!0,h=null;else if("off"==h)f=!1,h=null;else{for(g in Y)if(h==Y[g].Ma){n=Y[g].La;f=!!(a.ec&n);break}if(!n){a.ca("unknown message category: "+h);break a}}n&&("on"==c[2]?(a.ec|=n,f=!0):"off"==c[2]&&(a.ec&=~n,f=!1))}c=0;n="";for(g in Y)if(!h||h==Y[g].Ma)if(m=!!(a.ec&Y[g].La),null===f||f==m)n&&(n+=","),++c%10||(n+="\n\t"),n+=Y[g].Ma;void 0===h&&a.ca("\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off");
a.ca((null!==f?f?"messages on: ":"messages off: ":"message categories:\n\t")+(n||"none"))}break;case "o":f=c[1];c=c[2];f&&"?"!=f?(f=ul(a,f,"port #"),c=ul(a,c),void 0!==f&&void 0!==c&&nb(a.na,f,c)):(a.ca("\noutput commands:"),a.ca("\to [p] [d]\twrite data [d] to port [p]"),a.ca("warning: port accesses can affect hardware state"));break;case "p":case "pr":f="pr"==c[0]?1:0;c=1+f;if(a.mc)a.ca("step in progress");else{h=!1;n=[a.S.qa,a.S.ua.oa,void 0];do switch(g=!1,a.ub(n)){case 38:case 46:case 54:case 62:case 240:jl(n,
1);g=!0;break;case 204:case 206:a.mc=c;jl(n,1);break;case 205:case 224:case 225:case 226:a.mc=c;jl(n,2);break;case 232:a.mc=c;jl(n,3);break;case 154:a.mc=c;jl(n,5);break;case 255:a.mc=0<=ml(a,n).indexOf("CALL")?c:0;break;case 243:case 242:jl(n,1);h=g=!0;break;case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:h&&(a.mc=c,jl(n,1))}while(g);a.mc?(a.Vd(a.vc,n,!0),a.Oe()||(a.S.Nd(),a.mc=0)):yl(a,f?"tr":"t")}break;case "r":dl(a,c);break;case "t":case "tr":yl(a,c[0],
c[1]);break;case "u":el(a,c[1],c[2],8);break;case "x":a:if(void 0===c[1]||"?"==c[1])a.ca("\nexecution options:"),a.ca("\tcs int #\tset checksum cycle interval to #"),a.ca("\tcs start #\tset checksum cycle start count to #"),a.ca("\tcs stop #\tset checksum cycle stop count to #"),a.ca("\tsp #\t\tset speed multiplier to #");else switch(c[1]){case "cs":void 0!==c[3]&&(m=parseInt(c[3],10));switch(c[2]){case "int":a.S.mf=m;break;case "start":a.S.gg=m;break;case "stop":a.S.of=m;break;default:a.ca("unknown cs option");
break a}void 0!==m&&Bb(a.S);a.ca("checksums "+(a.S.df?"enabled":"disabled"));break;case "sp":void 0!==c[2]&&Hb(a.S,parseInt(c[2],10));a.ca("target speed: "+(a.S.He.toFixed(2)+"Mhz")+" ("+a.S.Gd+"x)");break;default:a.ca("unknown option: "+c[1])}break;case "?":f="commands:";for(h in Tk)f+="\n"+h+" ".substr(0,7-h.length)+Tk[h];jd(a)||(f+="\nnote: frequency/history disabled if no exec breakpoints");a.ca(f);break;default:a.ca("unknown command: "+b)}}}
Ba(function(){for(var a=B(window.document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Qk(d);Oa(d,c)}});function H(a,b,c){this.id=a.id;this.key=Al(a,b,c);this.X=a.X;Bl(this,a.gp)}function Al(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}function Cl(){try{return"undefined"!==typeof window.localStorage}catch(a){return!1}}
H.prototype={set:function(a,b){this[this.id][a]=b},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.Di=!0):this.Di?!0:Cl()&&(a=window.localStorage.getItem(this.key))?(this[this.id]=a,this.Di=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){w(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},
clear:function(a){Bl(this);if(Cl())for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}},Qa:function(a){this.X&&D(this.X,this.X.xm)&&this.X.message(a)}};function Bl(a,b){a[a.id]={};b&&a.set("parms",b);a.Di=!1}
function Dl(a){var b=!0;if(Cl()){var c=JSON.stringify(a[a.id]);try{window.localStorage.setItem(a.key,c)}catch(d){w("Unable to store "+c.length+" bytes in browser local storage"),b=!1}}return b}
function El(a,b,c){x.call(this,"Computer",a,El);this.Mb=!1;this.cg=a.buswidth;this.Bc=Fl;this.yg=null;this.ph=!1;this.url=b?b.url:null;this.lp=(Math.random()+0.1).toString(36).substr(2,12);this.Oc=Gl(this);if(this.S=Na("CPU",this.id)){this.X=Na("Debugger",this.id);this.na=new Va({id:this.th+".bus",buswidth:this.cg},this.S,this.X);var d,e=La(this.id);if((this.sg=Na("Panel",this.id))&&this.sg.Uf)for(b=0;b<e.length;b++)d=e[b],d.Ga=this.sg.Ga,d.ca=this.sg.ca,d.Uf=this.sg.Uf;this.ca("PREFETCH: false, TYPEDARRAYS: false");
for(b=0;b<e.length;b++)d=e[b],d.mc&&d.mc(this,this.na,this.S,this.X);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Oh=d:this.Bc=parseInt(d,10));var f;if(a=Fa&&Fa.state||(f=!0,a.state))b=this.em=a,f||(this.ph=!0,this.Bc=Fl),this.Bc&&(this.Rh=new H(this,"1.15.5"),this.Rh.load()?b=null:delete this.Rh);!b&&this.Bc&&(f=null,this.Oc&&(f=sa()+"/api/v1/user?req=load&user="+this.Oc+"&state="+Al(this,"1.15.5")),b=f)&&(this.ph=!0);b?ra(b,!0,null,this,this.io):this.Ta();c||Hl(this,this.Hh)}else w("Unable to find CPU component")}
y(x,El);var Ck=102,Fl=0;k=El.prototype;k.gf=function(){return this.lp};k.ge=function(){return this.Oc?this.Oc:""};k.io=function(a,b,c){c?(this.Oh=null,this.ph=!1,this.Ga("Unable to load machine state from server (error "+c+(b?": "+ja(b):"")+")")):this.yg=b;this.Ta()};function Hl(a,b,c){for(var d=La(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ra(f)){Ra(f,function(){Hl(a,b,c)});return}}b.call(a,c)}
function Il(a,b){var c=new H(a,"1.15.5","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ga("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.Hh=function(a){void 0===a&&(a=this.yg?1:this.Bc);var b=!1,c=!1;this.Ak=!1;var d=this.Rh||new H(this,"1.15.5");if(-1==a)b=!0;else if(a>Fl){if(d.load(this.yg)){this.uf=new H(this,"1.15.5","failsafe");this.uf.load()&&(Jl(this,d),a=2);this.uf.set("timestamp",pa());Dl(this.uf);var e=this.Bc&&!this.ph;if(1==a||ta("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.Ga("Error: "+g),"unable to verify user"==
g&&(ua(""),this.Oc=null)):this.ca(f+": "+g),Bl(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Il(this,c?d:null)}else 2==a&&d.clear()}else Il(this);delete this.yg;delete this.Rh}e=La(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.S&&(c=Kl(this,g,d,b,c));b=[d,a,c];-1!=a?Hl(this,this.Vl,b):this.Vl(b)};
function Kl(a,b,c,d,e){if(!b.Mb){b.Mb=!0;if(b.$b){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.$b(f,d)&&f&&(w("Unable to restore state for "+b.type),a.em&&!a.yg?(c.clear(),a.Bc=Fl,window&&window.location.reload()):a.Ak=!0,b.$b(null),e=!1)}if(!d&&b.tk)for(a=b.tk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.Vl=function(a){var b=a[0],c=0>a[1];a=a[2];this.Mb=!0;this.yk||(this.ca("PCjs v1.15.5\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.yk=!0);this.S&&Kl(this,this.S,b,c,a);this.Ak&&(Jl(this,b),b.clear());!c&&this.uf&&(this.uf.clear(),delete this.uf)};
function Jl(a,b){if(ta("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.ge(),d=b.toString(),e={app:"PCjs",ver:"1.15.5"};e.url=a.url;e.user=c;e.type="bug";e.data=d;ra("http://www.pcjs.org/api/v1/report",!0,e)}}
function zl(a,b,c){var d,e="none",f=new H(a,"1.15.5"),g=new H(a,"1.15.5","validate"),h=pa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.15.5");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.S&&a.S.Wb&&(c&&a.S.Ab(),d=a.S.Wb(b,c),"object"===typeof d&&f.set(a.S.id,d),c&&(a.S.Mb=!1,!1===d&&(e=null)));for(var h=La(a.id),m=0;m<h.length;m++){var n=h[m];n.Mb&&(n.Wb&&(d=n.Wb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.Mb=!1,!1===d&&
(e=null)))}e&&(c?(h=d=!1,b?(a.Oc&&Ll(a,a.Oc,f.toString()),Dl(g)&&Dl(f)||(e=null,d=h=!0)):a.Bc&&(d=!0,h=3==a.Bc),d&&f.clear(h)):e=f.toString());c&&(a.Mb=!1);return e}k.reset=function(){this.na&&this.na.reset&&(this.Qa("Resetting "+this.na.type,!0),this.na.reset());for(var a=La(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.na&&c.reset&&(this.Qa("Resetting "+c.type,!0),c.reset())}};
function El(a,b,c){x.call(this,"Computer",a,El);this.Nb=!1;this.dg=a.buswidth;this.Cc=Fl;this.zg=null;this.rh=!1;this.url=b?b.url:null;this.op=(Math.random()+0.1).toString(36).substr(2,12);this.Pc=Gl(this);if(this.S=Na("CPU",this.id)){this.X=Na("Debugger",this.id);this.na=new Va({id:this.vh+".bus",buswidth:this.dg},this.S,this.X);var d,e=La(this.id);if((this.tg=Na("Panel",this.id))&&this.tg.Vf)for(b=0;b<e.length;b++)d=e[b],d.Ga=this.tg.Ga,d.ca=this.tg.ca,d.Vf=this.tg.Vf;this.ca("PREFETCH: false, TYPEDARRAYS: false");
for(b=0;b<e.length;b++)d=e[b],d.oc&&d.oc(this,this.na,this.S,this.X);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Qh=d:this.Cc=parseInt(d,10));var f;if(a=Fa&&Fa.state||(f=!0,a.state))b=this.gm=a,f||(this.rh=!0,this.Cc=Fl),this.Cc&&(this.Th=new H(this,"1.15.6"),this.Th.load()?b=null:delete this.Th);!b&&this.Cc&&(f=null,this.Pc&&(f=sa()+"/api/v1/user?req=load&user="+this.Pc+"&state="+Al(this,"1.15.6")),b=f)&&(this.rh=!0);b?ra(b,!0,null,this,this.lo):this.Ta();c||Hl(this,this.Kh)}else w("Unable to find CPU component")}
y(x,El);var Ck=102,Fl=0;k=El.prototype;k.hf=function(){return this.op};k.ge=function(){return this.Pc?this.Pc:""};k.lo=function(a,b,c){c?(this.Qh=null,this.rh=!1,this.Ga("Unable to load machine state from server (error "+c+(b?": "+ja(b):"")+")")):this.zg=b;this.Ta()};function Hl(a,b,c){for(var d=La(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ra(f)){Ra(f,function(){Hl(a,b,c)});return}}b.call(a,c)}
function Il(a,b){var c=new H(a,"1.15.6","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ga("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.Kh=function(a){void 0===a&&(a=this.zg?1:this.Cc);var b=!1,c=!1;this.Ck=!1;var d=this.Th||new H(this,"1.15.6");if(-1==a)b=!0;else if(a>Fl){if(d.load(this.zg)){this.vf=new H(this,"1.15.6","failsafe");this.vf.load()&&(Jl(this,d),a=2);this.vf.set("timestamp",pa());Dl(this.vf);var e=this.Cc&&!this.rh;if(1==a||ta("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.Ga("Error: "+g),"unable to verify user"==
g&&(ua(""),this.Pc=null)):this.ca(f+": "+g),Bl(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Il(this,c?d:null)}else 2==a&&d.clear()}else Il(this);delete this.zg;delete this.Th}e=La(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.S&&(c=Kl(this,g,d,b,c));b=[d,a,c];-1!=a?Hl(this,this.Xl,b):this.Xl(b)};
function Kl(a,b,c,d,e){if(!b.Nb){b.Nb=!0;if(b.ac){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.ac(f,d)&&f&&(w("Unable to restore state for "+b.type),a.gm&&!a.zg?(c.clear(),a.Cc=Fl,window&&window.location.reload()):a.Ck=!0,b.ac(null),e=!1)}if(!d&&b.vk)for(a=b.vk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.Xl=function(a){var b=a[0],c=0>a[1];a=a[2];this.Nb=!0;this.Ak||(this.ca("PCjs v1.15.6\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Ak=!0);this.S&&Kl(this,this.S,b,c,a);this.Ck&&(Jl(this,b),b.clear());!c&&this.vf&&(this.vf.clear(),delete this.vf)};
function Jl(a,b){if(ta("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.ge(),d=b.toString(),e={app:"PCjs",ver:"1.15.6"};e.url=a.url;e.user=c;e.type="bug";e.data=d;ra("http://www.pcjs.org/api/v1/report",!0,e)}}
function zl(a,b,c){var d,e="none",f=new H(a,"1.15.6"),g=new H(a,"1.15.6","validate"),h=pa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.15.6");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.S&&a.S.Wb&&(c&&a.S.Ab(),d=a.S.Wb(b,c),"object"===typeof d&&f.set(a.S.id,d),c&&(a.S.Nb=!1,!1===d&&(e=null)));for(var h=La(a.id),m=0;m<h.length;m++){var n=h[m];n.Nb&&(n.Wb&&(d=n.Wb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.Nb=!1,!1===d&&
(e=null)))}e&&(c?(h=d=!1,b?(a.Pc&&Ll(a,a.Pc,f.toString()),Dl(g)&&Dl(f)||(e=null,d=h=!0)):a.Cc&&(d=!0,h=3==a.Cc),d&&f.clear(h)):e=f.toString());c&&(a.Nb=!1);return e}k.reset=function(){this.na&&this.na.reset&&(this.Qa("Resetting "+this.na.type,!0),this.na.reset());for(var a=La(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.na&&c.reset&&(this.Qa("Resetting "+c.type,!0),c.reset())}};
k.start=function(a,b){for(var c=La(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};k.stop=function(a,b){for(var c=La(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
k.xb=function(a,b,c,d){var e=this;switch(c){case "save":return this.sa[c]=d,d.onclick=function(){var a=Gl(e,!0);if(a){var b=!(!e.Bc||e.Oh),c=zl(e,b);b?Ll(e,a,c):e.Ga("Resume disabled, machine state not saved")}},!0;case "reset":return this.sa[c]=d,d.onclick=function(){Gb(e)},!0}return!1};
function Gl(a,b){var c=a.Oc;if(!c){var d;if(window)try{d=window.localStorage.getItem("user")}catch(e){}c=d;void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email Jeff@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Ml(a,c))||a.Ga("Your user ID has not been approved."))):b&&a.Ga("Browser local storage is not available")}return c}
function Ml(a,b){a.Oc=null;var c=ra(sa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(ua(c.data),a.Oc=c.data)}catch(e){w(e.message+" ("+d+")")}return a.Oc}
function Ll(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Al(a,"1.15.5");d.data=c;b=ra(sa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Ga("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.Ga(c),ua(""),a.Oc=null)}}
function Gb(a){if(a.Bc&&!a.Oh){var b=1==a.Bc||!ta("Click OK to reset the PCjs machine state.\n(WARNING: All disk changes will be discarded)");zl(a,b,!0);!b&&a.em?window&&window.location.reload():(b||(a.Di=!0),a.Hh(Fl),a.Di=!1)}else a.reset(),a.S&&Cb(a.S)}function C(a,b,c){a=La(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}k.Qa=function(a,b){this.X&&(b||E(this.X,this.X.nm))&&this.X.message(a)};
Ba(function(){for(var a=B(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=z(c),c=B(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=z(f),g=new El(g,d,!0);Oa(g,f);Hl(g,g.Hh)}});ya.show.push(function(){for(var a=B(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Na("Computer",c.id))&&c.yk&&!c.Mb&&c.Hh(-1)}});
ya.exit.push(function(){for(var a=B(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Na("Computer",c.id))&&c.Mb&&zl(c,!(!c.Bc||c.Oh),!0)}});function Nl(a,b,c,d){var e=ra(a);if(e[0])throw Error(e[1]);return Ol(e[1],a,b,c,d)}
k.xb=function(a,b,c,d){var e=this;switch(c){case "save":return this.sa[c]=d,d.onclick=function(){var a=Gl(e,!0);if(a){var b=!(!e.Cc||e.Qh),c=zl(e,b);b?Ll(e,a,c):e.Ga("Resume disabled, machine state not saved")}},!0;case "reset":return this.sa[c]=d,d.onclick=function(){Gb(e)},!0}return!1};
function Gl(a,b){var c=a.Pc;if(!c){var d;if(window)try{d=window.localStorage.getItem("user")}catch(e){}c=d;void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email Jeff@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Ml(a,c))||a.Ga("Your user ID has not been approved."))):b&&a.Ga("Browser local storage is not available")}return c}
function Ml(a,b){a.Pc=null;var c=ra(sa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(ua(c.data),a.Pc=c.data)}catch(e){w(e.message+" ("+d+")")}return a.Pc}
function Ll(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Al(a,"1.15.6");d.data=c;b=ra(sa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Ga("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.Ga(c),ua(""),a.Pc=null)}}
function Gb(a){if(a.Cc&&!a.Qh){var b=1==a.Cc||!ta("Click OK to reset the PCjs machine state.\n(WARNING: All disk changes will be discarded)");zl(a,b,!0);!b&&a.gm?window&&window.location.reload():(b||(a.Fi=!0),a.Kh(Fl),a.Fi=!1)}else a.reset(),a.S&&Cb(a.S)}function C(a,b,c){a=La(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}k.Qa=function(a,b){this.X&&(b||D(this.X,this.X.pm))&&this.X.message(a)};
Ba(function(){for(var a=B(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=z(c),c=B(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=z(f),g=new El(g,d,!0);Oa(g,f);Hl(g,g.Kh)}});ya.show.push(function(){for(var a=B(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Na("Computer",c.id))&&c.Ak&&!c.Nb&&c.Kh(-1)}});
ya.exit.push(function(){for(var a=B(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Na("Computer",c.id))&&c.Nb&&zl(c,!(!c.Cc||c.Qh),!0)}});function Nl(a,b,c,d){var e=ra(a);if(e[0])throw Error(e[1]);return Ol(e[1],a,b,c,d)}
function Ol(a,b,c,d,e){var f=null;if(a){if(e)for(var g=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;f=g.exec(a);){var h=f[2],m=ra(h),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var q=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(q){for(var h=q[0],t,s=/( [a-z]+=)(['"])(.*?)\2/g;t=s.exec(m);)h=0>h.indexOf(t[1])?h.replace(">",t[0]+">"):h.replace(new RegExp(t[1]+"(['\"])(.*?)\\1"),t[0]);q[0]!=h&&(n=n.replace(q[0],h))}else throw c="missing <"+f[1]+"> in "+h,
Error(c);}n=n.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(f[0],n);g.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*\]>\s*/g,"")),f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+
(255<a.length?a.substr(0,255)+"...":a));}return[a,f]}
window.embedPC=function(a,b,c,d){var e=c,f=c="",g=null;try{if(g=window.document.getElementById(a)){e||(e="/versions/pcjs/1.15.5/components.xsl");var h="<"==b.substr(0,1)?Ol(b,null,a,d,!1):Nl(b,a,d,!0);c=h[0];var m=h[1];if(m){var h=Nl(e),n=h[1];if(n)if(window.ActiveXObject||"ActiveXObject"in window){var q=m.transformNode(n);q?g.outerHTML=q:f="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var t=new XSLTProcessor;t.importStylesheet(n);
var s=t.transformToFragment(m,window.document);s?g.parentNode.replaceChild(s,g):f="transformToFragment failed"}else f="unable to transform XML: unsupported browser";else f="failed to load XSL file: "+e}else f="failed to load XML file: "+b}else f="failed to find machine element: "+a}catch(v){f=v.message}f&&g&&(a=B(g,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+ha(f)));return f||c};window.enableEvents=function(a){za=a};window.sendEvent=function(a){ya[a]&&Ca(ya[a])};})();//@ sourceMappingURL=/tmp/pcjs/1.15.5/pc-dbg.map
window.embedPC=function(a,b,c,d){var e=c,f=c="",g=null;try{if(g=window.document.getElementById(a)){e||(e="/versions/pcjs/1.15.6/components.xsl");var h="<"==b.substr(0,1)?Ol(b,null,a,d,!1):Nl(b,a,d,!0);c=h[0];var m=h[1];if(m){var h=Nl(e),n=h[1];if(n)if(window.ActiveXObject||"ActiveXObject"in window){var q=m.transformNode(n);q?g.outerHTML=q:f="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var t=new XSLTProcessor;t.importStylesheet(n);
var s=t.transformToFragment(m,window.document);s?g.parentNode.replaceChild(s,g):f="transformToFragment failed"}else f="unable to transform XML: unsupported browser";else f="failed to load XSL file: "+e}else f="failed to load XML file: "+b}else f="failed to find machine element: "+a}catch(v){f=v.message}f&&g&&(a=B(g,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+ha(f)));return f||c};window.enableEvents=function(a){za=a};window.sendEvent=function(a){ya[a]&&Ca(ya[a])};})();//@ sourceMappingURL=/tmp/pcjs/1.15.6/pc-dbg.map

View file

@ -3,88 +3,88 @@ function ga(a){return a.replace(/[&<>"']/g,function(a){return fa[a]})}function h
function t(a,b,c,d,e,f){b=!!b;var l=0,k=null,m=da(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(n.onreadystatechange=void 0,k=n.responseText,200!=n.status&&(l=n.status||-1),d&&e&&e.call(d,m,k,l,f))});if(c){var q="",s;for(s in c)c.hasOwnProperty(s)&&(q&&(q+="&"),q+=s+"="+encodeURIComponent(c[s]));q=q.replace(/%20/g,"+");n.open("POST",a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");
n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(k=n.responseText,200!=n.status&&(l=n.status||-1),d&&e&&e.call(d,m,k,l,f),a=[l,k]);return a}function ka(){return"http://"+(window?window.location.host:"www.pcjs.org")}function u(a){window?window.alert(a):console.log(a)}function la(a){var b=!1;window&&(b=window.confirm(a));return b}function ma(a){if(window)try{window.localStorage.setItem("user",a)}catch(b){}}
function na(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var oa={init:[],show:[],exit:[]},pa=!0;function qa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function v(a){oa.init.push(a)}function ra(a){if(pa)for(var b=0;b<a.length;b++)a[b]()}qa("onload",function(){ra(oa.init)});qa("onpageshow",function(){ra(oa.show)});
qa(na("Opera")||na("iOS")?"onunload":"onbeforeunload",function(){ra(oa.exit)});function w(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.jj=b.comment;this.yn=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.og=this.id.substr(0,b),this.Gh=this.id.substr(b+1)):this.Gh=this.id;this[a]=c;this.Bh=null;this.Yc=this.zb=this.Dc=this.rh=this.jg=!1;this.oa={};this.Na=null;this.og&&this.og.match(/\d+/);x[x.length]=this}var ta=void 0,ua={};
if(window){ta||(ta=window.location.search.substr(1));for(var va,wa=/\+/g,xa=/([^&=]+)=?([^&]*)/g;va=xa.exec(ta);)ua[decodeURIComponent(va[1].replace(wa," "))]=decodeURIComponent(va[2].replace(wa," "))}function ya(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 z(a,b){b.prototype=ya(a.prototype)}var x=[];
qa(na("Opera")||na("iOS")?"onunload":"onbeforeunload",function(){ra(oa.exit)});function w(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.lj=b.comment;this.Bn=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.pg=this.id.substr(0,b),this.Hh=this.id.substr(b+1)):this.Hh=this.id;this[a]=c;this.Ch=null;this.Yc=this.Ab=this.Ec=this.sh=this.kg=!1;this.oa={};this.Na=null;this.pg&&this.pg.match(/\d+/);x[x.length]=this}var sa=void 0,ua={};
if(window){sa||(sa=window.location.search.substr(1));for(var va,wa=/\+/g,xa=/([^&=]+)=?([^&]*)/g;va=xa.exec(sa);)ua[decodeURIComponent(va[1].replace(wa," "))]=decodeURIComponent(va[2].replace(wa," "))}function ya(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 z(a,b){b.prototype=ya(a.prototype)}var x=[];
function za(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<x.length;b++){var d=x[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Aa(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<x.length;c++)if(x[c].id===a)return x[c]}return null}
function Ba(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<x.length;d++)if(c)c==x[d]&&(c=null);else if(!(a!=x[d].type||b&&x[d].id.indexOf(b)))return x[d]}return null}function A(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){u(c.message+" ("+a+")")}return b}
function B(a,b){var c,d;d=C(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++){var e,f;f=d[c].childNodes;for(e=0;e<f.length;e++){var l=f[e];if(l.nodeType===window.document.ELEMENT_NODE){var k=l.getAttribute("class");if(k){var m,n;n=k.split(" ");for(m=0;m<n.length;m++)switch(k=n[m],k){case "pcjs-input":case "pcjs-output":(n=A(l))&&n.binding&&a.tb(k,n.type,n.binding,l),n=[]}}}}}}
function B(a,b){var c,d;d=C(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++){var e,f;f=d[c].childNodes;for(e=0;e<f.length;e++){var l=f[e];if(l.nodeType===window.document.ELEMENT_NODE){var k=l.getAttribute("class");if(k){var m,n;n=k.split(" ");for(m=0;m<n.length;m++)switch(k=n[m],k){case "pcjs-input":case "pcjs-output":(n=A(l))&&n.binding&&a.vb(k,n.type,n.binding,l),n=[]}}}}}}
function C(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}
w.prototype={toString:function(){return this.name?this.name:this.id||this.type},tb:function(a,b,c,d){switch(c){case "clear":return this.oa[c]||(this.oa[c]=d,d.onclick=function(a){return function(){a.oa.print&&(a.oa.print.value="")}}(this)),!0;case "print":return this.oa[c]||(this.jh=this.oa[c]=d,d.value="",this.Sb=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.xa=
function(a,b,c){this.Sb(a,"notice",c)}),!0;default:return!1}},log:function(){},Sb:function(){},status:function(a){this.Sb(this.Gh+": "+a)},xa:function(a,b){b||u(a)},Pa:function(a){!this.Yc&&(this.jg=!1!==a)&&(this.name&&this.log("ready"),a=this.Bh,this.Bh=null,a&&a())},Rb:function(){return this.zb=!0},Jb:function(a,b){b&&(this.zb=!1);return!0}};function Ca(a,b){if(a.rh)return a.Dc&&(a.Dc=!1),a.rh=!1;if(a.Yc)return a.Sb(a.toString()+" error"),!1;a.Dc=b;return a.Dc}
function Da(a,b){b&&(a.jg?b():a.Bh=b);return a.jg}function Ea(a,b){a.Yc=!0;a.xa("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);function Fa(a){w.call(this,"Panel",a,Fa)}z(w,Fa);Fa.prototype.tb=function(a,b,c,d){return this.Fa&&this.Fa.tb(a,b,c,d)||this.ia&&this.ia.tb(a,b,c,d)||this.Qa&&this.Qa.tb(a,b,c,d)?!0:w.prototype.tb.call(this,a,b,c,d)};Fa.prototype.gc=function(a,b,c,d){this.Fa=a;this.ia=c;this.Na=d;this.Qa=D(a,"Keyboard")};
Fa.prototype.Rb=function(a,b){b||Ga();return!0};Fa.prototype.Jb=function(){return!0};function Ga(){for(var a=!1,b=C(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=A(d),f=Aa(e.id);f||(a=!0,f=new Fa(e));B(f,d);a&&f.Pa()}}v(Ga);
function Ha(a,b,c){w.call(this,"Bus",a,Ha);this.ia=b;this.Na=c;this.hf=a.buswidth||20;this.Oe=this.vb=(1<<this.hf)-1;this.Ib=20>=this.hf?12:14;this.mc=1<<this.Ib;this.hj=this.mc>>2;this.eb=this.mc-1;this.Zf=(this.Oe+this.mc)/this.mc|0;this.Pd=this.Zf-1;this.Mf=[];this.Nf=[];this.Ih();this.Pa()}z(w,Ha);Ha.prototype.Ih=function(){this.ya=Array(this.Zf);for(var a=0;a<this.Zf;a++)this.ya[a]=new Ia(a*this.mc);this.ia.Ih(this.ya,this.Oe,this.Ib,this.eb,this.Pd);this.ia.vb=this.vb};
Ha.prototype.reset=function(){Ja(this,!0)};function Ka(a,b,c,d,e){if(!(b&a.eb||!c||c&a.eb)){for(var f=b>>a.Ib;0<c&&f<a.ya.length;){var l=a.ya[f];if(void 0!==l&&l.size)return La(1,b,c);b=f*a.mc;a.ya[f++]=new Ia(b,a.mc,d,e);c-=a.mc}return!0}return La(2,b,c)}function Ja(a,b){if(void 0!==b&&20<a.hf){var c=a.vb&-1048577|(b?1048576:0);c!=a.vb&&(a.vb=c,a.ia&&(a.ia.vb=c))}}
Ha.prototype.Ng=function(a,b,c){if(!(a&this.eb||!b||b&this.eb)){for(var d=a>>this.Ib;0<b;){var e=this.ya[d];if(!e.ea)return La(5,a,b);e.fe(c);b-=this.mc;d++}return!0}return La(3,a,b)};function Ma(a,b,c){if(!(b&a.eb||!c||c&a.eb)){for(var d=b>>a.Ib;0<c;)b=d*a.mc,a.ya[d++]=new Ia(b),c-=a.mc;return!0}return La(4,b,c)}function Na(a,b){return a.ya[(b&a.vb)>>a.Ib].Ki(b&a.eb)}function Oa(a,b){var c=b&a.eb,d=(b&a.vb)>>a.Ib;return c!=a.eb?a.ya[d].Bn(c):a.ya[d++].Ki(c)|a.ya[d&a.Pd].Ki(0)<<8}
function Pa(a,b,c){a.ya[(b&a.vb)>>a.Ib].Si(b&a.eb,c&255)}function Qa(a,b,c){var d=b&a.eb;b=(b&a.vb)>>a.Ib;d!=a.eb?a.ya[b].Ln(d,c&65535):(a.ya[b++].Si(d,c&255),a.ya[b&a.Pd].Si(0,c>>8&255))}function Sa(a){for(var b=0,c=[],d=0;d<a.Zf;d++){var e=a.ya[d];if(e.Xa||e.mj){c[b++]=d;var f=c,l=b++;a:if(e=e.save()){for(var k=0,m=0,n=[];k<e.length;){for(var q=e[k],s=k+1;s<e.length&&e[s]===q;)s++;n[m++]=s-k;n[m++]=q;k=s}if(n.length<e.length){e=n;break a}}f[l]=e}}c[b]=a.Oe==a.vb;return c}
function Ta(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,l=e+d,k=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=l;n++)void 0!==f.Mf[n]?u("Input port "+p(n,4)+" registered by "+f.Mf[n][0].id+", ignoring "+k.id):f.Mf[n]=[k,m,!1,!1]}}function Ua(a,b,c){var d=255;a=a.Mf[b];void 0!==a&&a[1]&&(d=a[1].call(a[0],b,c));return d}
function Va(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,l=e+d,k=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=l;n++)void 0!==f.Nf[n]?u("Output port "+p(n,4)+" registered by "+f.Nf[n][0].id+", ignoring "+k.id):f.Nf[n]=[k,m,!1,!1]}}function Wa(a,b,c,d){a=a.Nf[b];void 0!==a&&a[1]&&a[1].call(a[0],b,c,d)}function La(a,b,c){u("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}
function Ia(a,b,c,d){this.cl=b;this.la=null;this.offset=0;this.oj=c;this.ea=null;this.Xa=this.mj=!1;if(b)if(d)this.ea=d,a=[d.Ld,a-d.ab],this.la=a[0],this.offset=a[1],this.fe(d.Qe);else{this.la=Array(b>>2);for(d=0;d<this.la.length;d++)this.la[d]=0;this.fe(Xa)}else this.fe()}
Ia.prototype={Fg:function(){return 0},Qg:function(){},zn:function(a){return this.la[a>>2]>>>((a&3)<<3)&255},Cn:function(a){var b=a>>2;a=(a&3)<<3;var c=this.la[b]>>>a;return 24>a?c&65535:c&255|(this.la[b+1]&255)<<8},Jn:function(a,b){var c=a>>2,d=(a&3)<<3;this.la[c]=this.la[c]&~(255<<d)|b<<d;this.Xa=!0},Mn:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.la[c]=this.la[c]&~(65535<<d)|b<<d:(this.la[c]=this.la[c]&16777215|b<<24,c++,this.la[c]=this.la[c]&4294967040|b>>8);this.Xa=!0},save:function(){return this.ea?
null:this.la},restore:function(a){return this.ea?null===a:this.cl==a.length<<2?(this.la=a,this.Xa=!0):!1},fe:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.uc=c[0]?c[0]:this.Fg;this.An=c[1]?c[1]:this.Fg;b&&(this.Ki=c[0]?c[0]:this.Fg,this.Bn=c[1]?c[1]:this.Fg);c=a;this.wc=c[2]&&!this.oj?c[2]:this.Qg;this.Kn=c[3]&&!this.oj?c[3]:this.Qg;b&&(this.Si=c[2]?c[2]:this.Qg,this.Ln=c[3]?c[3]:this.Qg)}};var Xa=[Ia.prototype.zn,Ia.prototype.Cn,Ia.prototype.Jn,Ia.prototype.Mn];
function Ya(a,b){w.call(this,"CPU",a,Ya);var c=a.multiplier||1;this.cd=a.cycles||b;this.yd=c;this.rg=Math.round(this.cd/1E4)/100;this.we=this.rg*this.yd;this.qc=this.zb=!1;this.qh=a.autoStart;c=ua.autostart;void 0!==c&&(this.qh="true"==c?!0:"false"==c?!1:null);this.gg=!1;this.wg=this.ye=0;this.xg=a.csStart;this.kf=a.csInterval;this.lf=a.csStop;var d=this;this.Dm=function(){Za(d)};this.Pa()}z(w,Ya);g=Ya.prototype;
g.gc=function(a,b,c,d){this.ma=b;this.Na=d;this.Fa=a;var e=D(a,"Video");e&&(this.df=function(){$a(e)},this.Ee=function(){e.Ee()});this.ga=D(a,"ChipSet");this.Pa()};g.reset=function(){};g.save=function(){return null};g.restore=function(){return!1};g.Rb=function(a,b){if(!b){if(a&&this.restore){ab(this);if(!this.restore(a))return!1;bb(this)}else this.reset();this.Sb("No debugger detected")}this.zb=!0;!cb(this)&&this.Na&&this.Na.to();this.df();this.cf();return!0};
g.Jb=function(a){this.zb=!1;return a&&this.save?this.save():!0};function cb(a){return!0===a.qh||null===a.qh&&void 0===a.oa.run?(Za(a),!0):!1}g.Ee=function(){};g.tj=function(){return 0};function bb(a){void 0===a.xg&&(a.xg=0);void 0===a.kf&&(a.kf=-1);void 0===a.lf&&(a.lf=-1);a.gg=0<=a.xg&&0<a.kf;a.gg&&(a.wg=0,a.ye=a.xg-a.be)}function E(a,b,c,d){void 0!==a.oa[b]&&(void 0===d&&(d=4),void 0===c&&(Ea(a,"Register "+b+" is invalid"),db(a)),c=p(c,d),a.oa[b].innerHTML!=c&&(a.oa[b].innerHTML=c))}g.cf=function(){};
g.df=function(){};g.tb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.oa[c]=d;d.onclick=function(){e.qc?db(e,!0):Za(e,!0)};a=!0;break;case "reset":this.oa[c]=d;d.onclick=function(){e.Fa&&eb(e.Fa)};a=!0;break;case "speed":this.oa[c]=d;a=!0;break;case "setSpeed":this.oa[c]=d,d.onclick=function(){fb(e,e.yd<<1,!0)},d.innerHTML=this.we.toFixed(2)+"Mhz",a=!0}return a};function hb(a,b,c){a.be+=b;c&&(a.Lc=a.A=0)}
function ib(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.yd&&a.Kc&&(d=a.Kc/a.rg);a.zj=Math.round(1E3/30);a.wm=Math.floor(a.cd/c*d);a.Ph=Math.floor(a.cd/30*d);a.Dj=Math.floor(a.cd/60*d);a.Cj=Math.floor(a.cd/2*d);b||(a.of=a.Ph,a.nf=a.Dj,a.mf=a.Cj);a.Di=0}function jb(a,b){var c=a.be+a.Bd+a.Lc-a.A;b&&1<a.yd&&a.Kc>a.rg&&(c=Math.round(c/a.yd));return c}function ab(a){a.Kc=0;a.ug=1;a.be=a.Bd=a.Lc=a.A=0;bb(a);fb(a,1)}
function fb(a,b,c){void 0!==b&&(0.8>a.Kc/a.we&&(b=1),a.yd=b,b=a.rg*a.yd,a.we!=b&&(a.we=b,b=a.we.toFixed(2)+"Mhz",a.oa.setSpeed&&(a.oa.setSpeed.innerHTML=b),a.Sb("target speed: "+b)),c&&a.Ee());hb(a,a.Bd);a.Bd=0;a.xe=ha();a.Zd=0;ib(a)}
function Za(a,b){if(Ca(a,!0)){a.qc||(fb(a),a.Fa&&a.Fa.start(a.xe,jb(a)),a.qc=!0,a.ga&&kb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Halt"),b&&a.Ee());a.Di>=a.cd&&ib(a,!0);a.pf=0;a.tg=ha();if(a.Zd){var c=a.tg-a.Zd;c>a.zj&&(a.xe+=c,a.xe>a.tg&&(a.xe=a.tg))}try{do{a.Uk(a.gg?1:Math.round(a.wm/a.ug));var d=a.Lc-a.A;a.Bd+=d;a.pf+=d;hb(a,0,!0);var c=a,e=d;if(c.gg){var f=!1;c.wg=c.wg+c.tj()|0;c.ye-=e;0>=c.ye&&(c.ye+=c.kf,f=!0);0<=c.lf&&c.lf<=jb(c)&&(c.kf=c.lf=-1,bb(c),db(c),f=!0);f&&c.Sb(jb(c)+" cycles: checksum="+
p(c.wg))}a.nf-=d;0>=a.nf&&(a.nf+=a.Dj,a.df());a.mf-=d;0>=a.mf&&(a.mf+=a.Cj,a.cf());a.of-=d;if(0>=a.of){a.of+=a.Ph;break}}while(a.qc)}catch(l){db(a);a.df();a.cf();a.Fa&&a.Fa.stop(ha(),jb(a));Ca(a,!1);Ea(a,l.message);return}d=setTimeout;c=a.Dm;a.Zd=ha();e=a.zj;a.pf&&(e=Math.round(e*a.pf/a.Ph));e-=a.Zd-a.tg;if(f=a.Zd-a.xe)a.Kc=Math.round(a.Bd/(10*f))/100,864E5<=f&&(a.be=0,a.ga&&lb(a.ga,!0),fb(a));if(0>e||a.Kc<a.we)e=0;a.Di+=a.pf;a.Zd+=e;d(c,e)}else a.df(),a.cf(),a.Fa&&a.Fa.stop(ha(),jb(a))}
function db(a,b){a.Dc&&(a.rh=!0);a.Lc-=a.A;a.A=0;hb(a,a.Bd);a.Bd=0;a.qc&&(a.qc=!1,a.ga&&kb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Run"));a.hg=b}g.Uk=function(){return 0};
w.prototype={toString:function(){return this.name?this.name:this.id||this.type},vb:function(a,b,c,d){switch(c){case "clear":return this.oa[c]||(this.oa[c]=d,d.onclick=function(a){return function(){a.oa.print&&(a.oa.print.value="")}}(this)),!0;case "print":return this.oa[c]||(this.kh=this.oa[c]=d,d.value="",this.Ub=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.xa=
function(a,b,c){this.Ub(a,"notice",c)}),!0;default:return!1}},log:function(){},Ub:function(){},status:function(a){this.Ub(this.Hh+": "+a)},xa:function(a,b){b||u(a)},Pa:function(a){!this.Yc&&(this.kg=!1!==a)&&(this.name&&this.log("ready"),a=this.Ch,this.Ch=null,a&&a())},Tb:function(){return this.Ab=!0},Kb:function(a,b){b&&(this.Ab=!1);return!0}};function Ca(a,b){if(a.sh)return a.Ec&&(a.Ec=!1),a.sh=!1;if(a.Yc)return a.Ub(a.toString()+" error"),!1;a.Ec=b;return a.Ec}
function Da(a,b){b&&(a.kg?b():a.Ch=b);return a.kg}function Ea(a,b){a.Yc=!0;a.xa("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);function Fa(a){w.call(this,"Panel",a,Fa)}z(w,Fa);Fa.prototype.vb=function(a,b,c,d){return this.Fa&&this.Fa.vb(a,b,c,d)||this.ia&&this.ia.vb(a,b,c,d)||this.Qa&&this.Qa.vb(a,b,c,d)?!0:w.prototype.vb.call(this,a,b,c,d)};Fa.prototype.ic=function(a,b,c,d){this.Fa=a;this.ia=c;this.Na=d;this.Qa=D(a,"Keyboard")};
Fa.prototype.Tb=function(a,b){b||Ga();return!0};Fa.prototype.Kb=function(){return!0};function Ga(){for(var a=!1,b=C(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=A(d),f=Aa(e.id);f||(a=!0,f=new Fa(e));B(f,d);a&&f.Pa()}}v(Ga);
function Ha(a,b,c){w.call(this,"Bus",a,Ha);this.ia=b;this.Na=c;this.jf=a.buswidth||20;this.Pe=this.xb=(1<<this.jf)-1;this.Ib=20>=this.jf?12:14;this.nc=1<<this.Ib;this.jj=this.nc>>2;this.eb=this.nc-1;this.$f=(this.Pe+this.nc)/this.nc|0;this.Qd=this.$f-1;this.Nf=[];this.Of=[];this.Jh();this.Pa()}z(w,Ha);Ha.prototype.Jh=function(){this.ya=Array(this.$f);for(var a=0;a<this.$f;a++)this.ya[a]=new Ia(a*this.nc);this.ia.Jh(this.ya,this.Pe,this.Ib,this.eb,this.Qd);this.ia.xb=this.xb};
Ha.prototype.reset=function(){Ja(this,!0)};function Ka(a,b,c,d,e){if(!(b&a.eb||!c||c&a.eb)){for(var f=b>>a.Ib;0<c&&f<a.ya.length;){var l=a.ya[f];if(void 0!==l&&l.size)return La(1,b,c);b=f*a.nc;a.ya[f++]=new Ia(b,a.nc,d,e);c-=a.nc}return!0}return La(2,b,c)}function Ja(a,b){if(void 0!==b&&20<a.jf){var c=a.xb&-1048577|(b?1048576:0);c!=a.xb&&(a.xb=c,a.ia&&(a.ia.xb=c))}}
Ha.prototype.Og=function(a,b,c){if(!(a&this.eb||!b||b&this.eb)){for(var d=a>>this.Ib;0<b;){var e=this.ya[d];if(!e.ea)return La(5,a,b);e.ge(c);b-=this.nc;d++}return!0}return La(3,a,b)};function Ma(a,b,c){if(!(b&a.eb||!c||c&a.eb)){for(var d=b>>a.Ib;0<c;)b=d*a.nc,a.ya[d++]=new Ia(b),c-=a.nc;return!0}return La(4,b,c)}function Na(a,b){return a.ya[(b&a.xb)>>a.Ib].Ni(b&a.eb)}function Oa(a,b){var c=b&a.eb,d=(b&a.xb)>>a.Ib;return c!=a.eb?a.ya[d].En(c):a.ya[d++].Ni(c)|a.ya[d&a.Qd].Ni(0)<<8}
function Pa(a,b,c){a.ya[(b&a.xb)>>a.Ib].Vi(b&a.eb,c&255)}function Qa(a,b,c){var d=b&a.eb;b=(b&a.xb)>>a.Ib;d!=a.eb?a.ya[b].On(d,c&65535):(a.ya[b++].Vi(d,c&255),a.ya[b&a.Qd].Vi(0,c>>8&255))}function Sa(a){for(var b=0,c=[],d=0;d<a.$f;d++){var e=a.ya[d];if(e.Xa||e.oj){c[b++]=d;var f=c,l=b++;a:if(e=e.save()){for(var k=0,m=0,n=[];k<e.length;){for(var q=e[k],s=k+1;s<e.length&&e[s]===q;)s++;n[m++]=s-k;n[m++]=q;k=s}if(n.length<e.length){e=n;break a}}f[l]=e}}c[b]=a.Pe==a.xb;return c}
function Ta(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,l=e+d,k=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=l;n++)void 0!==f.Nf[n]?u("Input port "+p(n,4)+" registered by "+f.Nf[n][0].id+", ignoring "+k.id):f.Nf[n]=[k,m,!1,!1]}}function Ua(a,b,c){var d=255;a=a.Nf[b];void 0!==a&&a[1]&&(d=a[1].call(a[0],b,c));return d}
function Va(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,l=e+d,k=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=l;n++)void 0!==f.Of[n]?u("Output port "+p(n,4)+" registered by "+f.Of[n][0].id+", ignoring "+k.id):f.Of[n]=[k,m,!1,!1]}}function Wa(a,b,c,d){a=a.Of[b];void 0!==a&&a[1]&&a[1].call(a[0],b,c,d)}function La(a,b,c){u("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}
function Ia(a,b,c,d){this.fl=b;this.la=null;this.offset=0;this.qj=c;this.ea=null;this.Xa=this.oj=!1;if(b)if(d)this.ea=d,a=[d.Md,a-d.ab],this.la=a[0],this.offset=a[1],this.ge(d.Re);else{this.la=Array(b>>2);for(d=0;d<this.la.length;d++)this.la[d]=0;this.ge(Xa)}else this.ge()}
Ia.prototype={Hg:function(){return 0},Rg:function(){},Cn:function(a){return this.la[a>>2]>>>((a&3)<<3)&255},Fn:function(a){var b=a>>2;a=(a&3)<<3;var c=this.la[b]>>>a;return 24>a?c&65535:c&255|(this.la[b+1]&255)<<8},Mn:function(a,b){var c=a>>2,d=(a&3)<<3;this.la[c]=this.la[c]&~(255<<d)|b<<d;this.Xa=!0},Pn:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.la[c]=this.la[c]&~(65535<<d)|b<<d:(this.la[c]=this.la[c]&16777215|b<<24,c++,this.la[c]=this.la[c]&4294967040|b>>8);this.Xa=!0},save:function(){return this.ea?
null:this.la},restore:function(a){return this.ea?null===a:this.fl==a.length<<2?(this.la=a,this.Xa=!0):!1},ge:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.vc=c[0]?c[0]:this.Hg;this.Dn=c[1]?c[1]:this.Hg;b&&(this.Ni=c[0]?c[0]:this.Hg,this.En=c[1]?c[1]:this.Hg);c=a;this.xc=c[2]&&!this.qj?c[2]:this.Rg;this.Nn=c[3]&&!this.qj?c[3]:this.Rg;b&&(this.Vi=c[2]?c[2]:this.Rg,this.On=c[3]?c[3]:this.Rg)}};var Xa=[Ia.prototype.Cn,Ia.prototype.Fn,Ia.prototype.Mn,Ia.prototype.Pn];
function Ya(a,b){w.call(this,"CPU",a,Ya);var c=a.multiplier||1;this.cd=a.cycles||b;this.yd=c;this.sg=Math.round(this.cd/1E4)/100;this.xe=this.sg*this.yd;this.rc=this.Ab=!1;this.rh=a.autoStart;c=ua.autostart;void 0!==c&&(this.rh="true"==c?!0:"false"==c?!1:null);this.hg=!1;this.xg=this.ze=0;this.yg=a.csStart;this.lf=a.csInterval;this.mf=a.csStop;var d=this;this.Gm=function(){Za(d)};this.Pa()}z(w,Ya);g=Ya.prototype;
g.ic=function(a,b,c,d){this.ma=b;this.Na=d;this.Fa=a;var e=D(a,"Video");e&&(this.ef=function(){$a(e)},this.Fe=function(){e.Fe()});this.ga=D(a,"ChipSet");this.Pa()};g.reset=function(){};g.save=function(){return null};g.restore=function(){return!1};g.Tb=function(a,b){if(!b){if(a&&this.restore){ab(this);if(!this.restore(a))return!1;bb(this)}else this.reset();this.Ub("No debugger detected")}this.Ab=!0;!cb(this)&&this.Na&&this.Na.wo();this.ef();this.df();return!0};
g.Kb=function(a){this.Ab=!1;return a&&this.save?this.save():!0};function cb(a){return!0===a.rh||null===a.rh&&void 0===a.oa.run?(Za(a),!0):!1}g.Fe=function(){};g.vj=function(){return 0};function bb(a){void 0===a.yg&&(a.yg=0);void 0===a.lf&&(a.lf=-1);void 0===a.mf&&(a.mf=-1);a.hg=0<=a.yg&&0<a.lf;a.hg&&(a.xg=0,a.ze=a.yg-a.ce)}function E(a,b,c,d){void 0!==a.oa[b]&&(void 0===d&&(d=4),void 0===c&&(Ea(a,"Register "+b+" is invalid"),db(a)),c=p(c,d),a.oa[b].innerHTML!=c&&(a.oa[b].innerHTML=c))}g.df=function(){};
g.ef=function(){};g.vb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.oa[c]=d;d.onclick=function(){e.rc?db(e,!0):Za(e,!0)};a=!0;break;case "reset":this.oa[c]=d;d.onclick=function(){e.Fa&&eb(e.Fa)};a=!0;break;case "speed":this.oa[c]=d;a=!0;break;case "setSpeed":this.oa[c]=d,d.onclick=function(){gb(e,e.yd<<1,!0)},d.innerHTML=this.xe.toFixed(2)+"Mhz",a=!0}return a};function hb(a,b,c){a.ce+=b;c&&(a.Lc=a.A=0)}
function ib(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.yd&&a.Kc&&(d=a.Kc/a.sg);a.Bj=Math.round(1E3/30);a.zm=Math.floor(a.cd/c*d);a.Qh=Math.floor(a.cd/30*d);a.Fj=Math.floor(a.cd/60*d);a.Ej=Math.floor(a.cd/2*d);b||(a.pf=a.Qh,a.of=a.Fj,a.nf=a.Ej);a.Gi=0}function jb(a,b){var c=a.ce+a.Bd+a.Lc-a.A;b&&1<a.yd&&a.Kc>a.sg&&(c=Math.round(c/a.yd));return c}function ab(a){a.Kc=0;a.vg=1;a.ce=a.Bd=a.Lc=a.A=0;bb(a);gb(a,1)}
function gb(a,b,c){void 0!==b&&(0.8>a.Kc/a.xe&&(b=1),a.yd=b,b=a.sg*a.yd,a.xe!=b&&(a.xe=b,b=a.xe.toFixed(2)+"Mhz",a.oa.setSpeed&&(a.oa.setSpeed.innerHTML=b),a.Ub("target speed: "+b)),c&&a.Fe());hb(a,a.Bd);a.Bd=0;a.ye=ha();a.$d=0;ib(a)}
function Za(a,b){if(Ca(a,!0)){a.rc||(gb(a),a.Fa&&a.Fa.start(a.ye,jb(a)),a.rc=!0,a.ga&&kb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Halt"),b&&a.Fe());a.Gi>=a.cd&&ib(a,!0);a.qf=0;a.ug=ha();if(a.$d){var c=a.ug-a.$d;c>a.Bj&&(a.ye+=c,a.ye>a.ug&&(a.ye=a.ug))}try{do{a.Wk(a.hg?1:Math.round(a.zm/a.vg));var d=a.Lc-a.A;a.Bd+=d;a.qf+=d;hb(a,0,!0);var c=a,e=d;if(c.hg){var f=!1;c.xg=c.xg+c.vj()|0;c.ze-=e;0>=c.ze&&(c.ze+=c.lf,f=!0);0<=c.mf&&c.mf<=jb(c)&&(c.lf=c.mf=-1,bb(c),db(c),f=!0);f&&c.Ub(jb(c)+" cycles: checksum="+
p(c.xg))}a.of-=d;0>=a.of&&(a.of+=a.Fj,a.ef());a.nf-=d;0>=a.nf&&(a.nf+=a.Ej,a.df());a.pf-=d;if(0>=a.pf){a.pf+=a.Qh;break}}while(a.rc)}catch(l){db(a);a.ef();a.df();a.Fa&&a.Fa.stop(ha(),jb(a));Ca(a,!1);Ea(a,l.message);return}d=setTimeout;c=a.Gm;a.$d=ha();e=a.Bj;a.qf&&(e=Math.round(e*a.qf/a.Qh));e-=a.$d-a.ug;if(f=a.$d-a.ye)a.Kc=Math.round(a.Bd/(10*f))/100,864E5<=f&&(a.ce=0,a.ga&&lb(a.ga,!0),gb(a));if(0>e||a.Kc<a.xe)e=0;a.Gi+=a.qf;a.$d+=e;d(c,e)}else a.ef(),a.df(),a.Fa&&a.Fa.stop(ha(),jb(a))}
function db(a,b){a.Ec&&(a.sh=!0);a.Lc-=a.A;a.A=0;hb(a,a.Bd);a.Bd=0;a.rc&&(a.rc=!1,a.ga&&kb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Run"));a.ig=b}g.Wk=function(){return 0};
var mb=[1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,
0,0,1,1,0,1,0,0,1];function nb(a,b,c){this.ia=a;this.gb=this.ua=0;this.ad=65535;this.tc=this.kc=0;this.Kg=b;ob(this,c)}function pb(a){this.ua=a;this.ad=65535;return this.gb=a<<4}
function qb(a){var b,c;a&4?(b=this.ia.De.gb,c=this.ia.De.ad):(b=this.ia.Rc,c=this.ia.Ne);b+=a&65528;if(b+7<=c){this.Ic=rb;this.Nb=tb;this.ia.A-=15;c=F(this.ia,b+0);var d=F(this.ia,b+4),e=F(this.ia,b+2)|(d&255)<<16;F(this.ia,b+6);b=d&7936;if(b&4096){2048==(b&2560)&&(this.Nb=ub);if(b&2048||!(b&512))this.Nb=vb;this.ua=a;this.ad=c;this.kc=d;this.tc=(d&24576)>>13;return this.gb=e}if(b&&768>=b)return this.ua=a,this.ad=c,this.kc=d,this.tc=(d&24576)>>13,this.gb=e}return-1}
function wb(a){return this.gb+a}function xb(a){return this.gb+a}function rb(a,b,c){return a+b<=this.ad?this.gb+a:ub.call(this,0,0,c)}function ub(a,b,c){c||yb.call(this.ia,13,0);return-1}function tb(a,b,c){return a+b<=this.ad?this.gb+a:vb.call(this,0,0,c)}function vb(a,b,c){c||yb.call(this.ia,13,0);return-1}nb.prototype.save=function(){return[this.ua,this.gb,this.ad,this.kc,this.tc,this.Kg]};
nb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ua=a[0],this.gb=a[1],this.ad=a[2],this.kc=a[3],this.tc=a[4],this.Kg=a[5])};function ob(a,b){void 0===b&&(b=!!(a.ia.ed&1));b?(a.load=qb,a.Ic=rb,a.Nb=tb):(a.load=pb,a.Ic=wb,a.Nb=xb)}
function zb(a){this.Ca=a.model||8088;var b=0;switch(this.Ca){default:case 8088:b=4772727;break;case 80286:b=6E6}Ya.call(this,a,b);this.Wi=61442;this.Kf=4;this.ze=255;this.Ei=4;this.Z=5;this.na=6;this.ba=7;this.ca=8;this.P=9;this.U=11;this.V=12;this.$d=4;this.Fj=60;this.Gj=83;this.Bb=3;this.fb=9;this.Pb=16;this.Ag=1;this.Kj=19;this.Mj=28;this.Oj=16;this.Nj=21;this.Lj=37;this.Ij=2;this.Xh=9;this.Jj=5;this.Hj=33;this.Zh=10;this.Yh=8;this.tf=3;this.sf=15;this.bk=51;this.ck=1;this.dk=2;this.ek=4;this.ak=
32;this.gk=this.$h=15;this.Cb=16;this.Db=4;this.ik=11;this.hk=18;this.fk=24;this.mb=4;this.jk=2;this.ai=16;this.kk=17;this.fi=18;this.lk=19;this.ei=5;this.gi=6;this.qk=2;this.pk=8;this.nk=9;this.ii=this.hi=this.mk=this.ok=10;this.Qj=80;this.Sj=144;this.Pj=86;this.Rj=154;this.Uj=101;this.Wj=165;this.Tj=107;this.Vj=171;this.sk=70;this.uk=113;this.rk=76;this.tk=124;this.Yj=80;this.$j=128;this.Xj=86;this.Zj=134;this.vf=3;this.uf=16;this.ni=10;this.mi=8;this.vk=51;this.Qb=8;this.wk=17;this.xk=36;this.Zb=
11;this.yk=16;this.wf=10;this.rb=2;this.Uh=18;this.Vh=9-this.rb;this.Wh=17-this.rb;this.bi=12;this.ci=9-this.rb;this.di=13-this.rb;this.ji=18;this.ki=9-this.rb;this.li=17-this.rb;this.oi=15;this.pi=9-this.rb;this.qi=15-this.rb;this.ui=11;this.vi=9-this.rb;this.wi=10-this.rb;this.zk=8;this.Ck=12;this.Ak=18;this.Bk=17;this.Dk=15;this.si=8;this.ri=20;this.ti=2;this.zi=3;this.xf=9;this.yi=5;this.xi=11;this.Bi=4;this.Ai=17;this.Ek=11;this.Ma=Ab.slice();80186<=this.Ca&&(this.ze=31,this.Ma[15]=G,this.Ma[96]=
Bb,this.Ma[97]=Cb,this.Ma[98]=Db,this.Ma[99]=G,this.Ma[100]=G,this.Ma[101]=G,this.Ma[102]=G,this.Ma[103]=G,this.Ma[104]=Eb,this.Ma[105]=Fb,this.Ma[106]=Gb,this.Ma[107]=Hb,this.Ma[108]=Ib,this.Ma[109]=Jb,this.Ma[110]=Kb,this.Ma[111]=Lb,this.Ma[192]=Mb,this.Ma[193]=Nb,this.Ma[200]=Ob,this.Ma[201]=Pb,this.Ma[241]=Qb,Rb[7]=Sb,Tb[7]=Sb,80286<=this.Ca&&(this.Wi=2,this.Kf=0,this.Ma[15]=Ub,this.Ma[99]=Vb,this.Ma[84]=Wb,this.P=this.ca=this.ba=this.na=this.Z=this.Ei=0,this.V=this.U=1,this.$d=3,this.Fj=14,this.Gj=
16,this.Bb=2,this.Pb=this.fb=7,this.Ag=0,this.Kj=7,this.Mj=13,this.Oj=7,this.Nj=11,this.Lj=16,this.Ij=3,this.Xh=6,this.Jj=2,this.Hj=13,this.Yh=this.Zh=5,this.tf=2,this.sf=7,this.bk=23,this.ck=0,this.dk=1,this.ek=3,this.ak=17,this.$h=7,this.gk=11,this.Cb=7,this.Db=3,this.ik=7,this.hk=11,this.fk=15,this.mb=2,this.jk=3,this.ai=7,this.lk=this.fi=this.kk=8,this.gi=this.ei=4,this.qk=2,this.pk=3,this.nk=5,this.ok=2,this.mk=3,this.hi=5,this.ii=3,this.Qj=14,this.Sj=22,this.Pj=17,this.Rj=25,this.Uj=17,this.Wj=
25,this.Tj=20,this.Vj=28,this.sk=13,this.uk=21,this.rk=16,this.tk=24,this.Yj=13,this.$j=21,this.Xj=16,this.Zj=24,this.vf=2,this.uf=7,this.mi=this.ni=5,this.vk=19,this.wk=this.Qb=5,this.xk=17,this.Zb=3,this.yk=5,this.wf=3,this.rb=0,this.Uh=8,this.Vh=5,this.Wh=9,this.ci=this.bi=5,this.di=4,this.ki=this.ji=5,this.li=4,this.oi=7,this.pi=5,this.qi=8,this.ui=3,this.vi=4,this.wi=3,this.Ck=this.zk=11,this.Bk=this.Ak=15,this.Dk=7,this.si=5,this.ri=8,this.ti=0,this.zi=2,this.xf=6,this.yi=3,this.xi=6,this.Bi=
3,this.Ek=this.Ai=5));this.$k=[];this.Xi=[];this.Lc=this.fh=0;this.hg=!1;this.ya=[];this.Oe=this.vb=this.Ib=this.eb=this.Pd=0;this.S=this.ml;this.T=this.nl;this.N=this.om;this.O=this.pm;this.Q=this.Hn;this.R=this.In;Xb(this)}z(Ya,zb);g=zb.prototype;g.Ih=function(a,b,c,d,e){this.ya=a;this.Oe=this.vb=b;this.Ib=c;this.eb=d;this.Pd=e};g.reset=function(){this.qc&&db(this);Xb(this);ab(this);this.Yc=!1};
function Xb(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.ed=65520;a.Sc=0;a.me=1023;a.pc={Fi:0,ua:0,kc:0,qg:-1};a.Ia=new nb(a,"CS");a.ac=new nb(a,"DS");a.Tb=new nb(a,"SS");a.ib=new nb(a,"ES");a.Sk=new nb(a,"ZERO");Yb(a,0,65535);80286<=a.Ca&&(a.Rc=a.Ne=0,a.De=new nb(a,"LDT",!0),a.Mg=new nb(a,"TSS",!0),a.sb=new nb(a,"VER",!0),Yb(a,65520,61440),a.Ia.gb=16711680);Zb(a,0);$b(a);a.Ya=0;a.nb=a.Bf=-1;a.Vf=0;a.da=a.Ba=-1;a.C=a.ac;a.M=a.Tb;a.Y=a.pa=0}
g.tj=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.qa+this.Ia.ua+this.ac.ua+this.Tb.ua+this.ib.ua+ac(this)|0};function bc(a,b){var c=a.Xi[b];null!=c&&(c(--a.fh),delete a.Xi[b])}function $b(a,b){void 0===b&&(b=!!(a.ed&1));cc=b?dc:ec;ob(a.Ia,b);ob(a.ac,b);ob(a.Tb,b);ob(a.ib,b)}
g.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.X,this.H,this.F,this.D]);a.set(1,[this.qa,this.Ia.save(),this.ac.save(),this.Tb.save(),this.ib.save(),ac(this),null!=this.Rc?[this.ed,this.Rc,this.Ne,this.Sc,this.me,this.De.save(),this.Mg.save()]:null]);a.set(2,[this.C.Kg,this.M.Kg,this.Y,this.pa,this.Ya,this.da,this.Ba]);a.set(3,[this.ug,this.be,this.yd]);a.set(4,Sa(this.ma));return a.data()};
g.restore=function(a){var b;b=a[0];this.G=b[0];this.B=b[1];this.I=b[2];this.J=b[3];this.X=b[4];this.H=b[5];this.F=b[6];this.D=b[7];b=a[1];this.Ia.restore(b[1]);this.ac.restore(b[2]);this.Tb.restore(b[3]);this.ib.restore(b[4]);Zb(this,b[5]);var c=b[6];c&&c.length&&(this.ed=c[0],this.Rc=c[1],this.Ne=c[2],this.Sc=c[3],this.me=c[4],this.De.restore(c[5]),this.Mg.restore(c[6]),$b(this));I(this,b[0]);b=a[2];this.C=fc(this,b[0]);this.M=fc(this,b[1]);this.Y=b[2];this.pa=b[3];this.Ya=b[4];this.da=b[5];this.Ba=
b[6];b=a[3];this.ug=b[0];this.be=b[1];fb(this,b[2]);a:{b=this.ma;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.hj){for(var f=0,l=Array(b.hj),k=0;k<e.length-1;)for(var m=e[k++],n=e[k++];m--;)l[f++]=n;e=l}f=b.ya[d];if(!f||!f.restore(e)){u("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Ja(b,a[c]);b=!0}return b};
function fc(a,b){switch(b){case "CS":return a.Ia;case "DS":return a.ac;case "SS":return a.Tb;case "ES":return a.ib;case "ZERO":return a.Sk;default:return[0,b,0,0,""]}}function gc(a,b){var c;if(a.ed&1){if(c=a.Sc+(b<<3),c+7<=a.me){a.pc.Fi=F(a,c);a.pc.ua=F(a,c+2);a.pc.kc=F(a,c+4);switch(a.pc.kc&7936){case 1536:a.pc.qg=-17153;break;case 1792:a.pc.qg=-16641;break;default:return!1}return!0}}else if(c=a.Sc+(b<<2),c+7<=a.me)return a.pc.Fi=F(a,c),a.pc.ua=F(a,c+2),a.pc.qg=-769,!0;return!1}
function hc(a,b){a.Da=a.Ia.load(b)+a.qa;a.Y|=a.Kf}function ic(a,b){a.ac.load(b);a.Y|=a.Kf}function jc(a,b){a.Tb.load(b);a.Y|=4}function kc(a,b){a.ib.load(b);a.Y|=a.Kf}function I(a,b){a.Da=a.Ia.gb+(a.qa=b&65535)}function Yb(a,b,c){a.Da=a.Ia.load(c)+(a.qa=b)}function J(a,b){a.Da=a.Ia.gb+(a.qa=a.qa+b&65535)}function oc(a){return a.W&a.$?1:0}function pc(a){return mb[a.fa&255]?4:0}function qc(a){return(a.fa^a.ha)&16?16:0}function rc(a){return a.W&a.$-1?0:64}function sc(a){return a.fa&a.$>>1?128:0}
0,0,1,1,0,1,0,0,1];function nb(a,b,c){this.ia=a;this.hb=this.ua=0;this.ad=65535;this.uc=this.lc=0;this.Lg=b;ob(this,c)}function pb(a){this.ua=a;this.ad=65535;return this.hb=a<<4}
function qb(a){var b,c;a&4?(b=this.ia.Ee.hb,c=this.ia.Ee.ad):(b=this.ia.Rc,c=this.ia.Oe);b+=a&65528;if(b+7<=c){this.Ic=sb;this.Ob=tb;this.ia.A-=15;c=F(this.ia,b+0);var d=F(this.ia,b+4),e=F(this.ia,b+2)|(d&255)<<16;F(this.ia,b+6);b=d&7936;if(b&4096){2048==(b&2560)&&(this.Ob=ub);if(b&2048||!(b&512))this.Ob=vb;this.ua=a;this.ad=c;this.lc=d;this.uc=(d&24576)>>13;return this.hb=e}if(b&&768>=b)return this.ua=a,this.ad=c,this.lc=d,this.uc=(d&24576)>>13,this.hb=e}return-1}
function wb(a){return this.hb+a}function xb(a){return this.hb+a}function sb(a,b,c){return a+b<=this.ad?this.hb+a:ub.call(this,0,0,c)}function ub(a,b,c){c||yb.call(this.ia,13,0);return-1}function tb(a,b,c){return a+b<=this.ad?this.hb+a:vb.call(this,0,0,c)}function vb(a,b,c){c||yb.call(this.ia,13,0);return-1}nb.prototype.save=function(){return[this.ua,this.hb,this.ad,this.lc,this.uc,this.Lg]};
nb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ua=a[0],this.hb=a[1],this.ad=a[2],this.lc=a[3],this.uc=a[4],this.Lg=a[5])};function ob(a,b){void 0===b&&(b=!!(a.ia.ed&1));b?(a.load=qb,a.Ic=sb,a.Ob=tb):(a.load=pb,a.Ic=wb,a.Ob=xb)}
function zb(a){this.Ca=a.model||8088;var b=0;switch(this.Ca){default:case 8088:b=4772727;break;case 80286:b=6E6}Ya.call(this,a,b);this.Zi=61442;this.Lf=4;this.Ae=255;this.Hi=4;this.Z=5;this.na=6;this.ba=7;this.ca=8;this.P=9;this.U=11;this.V=12;this.ae=4;this.Hj=60;this.Ij=83;this.Cb=3;this.fb=9;this.Rb=16;this.Cg=1;this.Mj=19;this.Oj=28;this.Qj=16;this.Pj=21;this.Nj=37;this.Kj=2;this.$h=9;this.Lj=5;this.Jj=33;this.bi=10;this.ai=8;this.uf=3;this.tf=15;this.dk=51;this.ek=1;this.fk=2;this.gk=4;this.ck=
32;this.ik=this.ci=15;this.Db=16;this.Eb=4;this.kk=11;this.jk=18;this.hk=24;this.nb=4;this.lk=2;this.di=16;this.mk=17;this.ii=18;this.nk=19;this.hi=5;this.ji=6;this.sk=2;this.rk=8;this.pk=9;this.li=this.ki=this.ok=this.qk=10;this.Sj=80;this.Uj=144;this.Rj=86;this.Tj=154;this.Wj=101;this.Yj=165;this.Vj=107;this.Xj=171;this.uk=70;this.wk=113;this.tk=76;this.vk=124;this.$j=80;this.bk=128;this.Zj=86;this.ak=134;this.wf=3;this.vf=16;this.qi=10;this.pi=8;this.xk=51;this.Sb=8;this.yk=17;this.zk=36;this.$b=
11;this.Ak=16;this.xf=10;this.tb=2;this.Xh=18;this.Yh=9-this.tb;this.Zh=17-this.tb;this.ei=12;this.fi=9-this.tb;this.gi=13-this.tb;this.mi=18;this.ni=9-this.tb;this.oi=17-this.tb;this.ri=15;this.si=9-this.tb;this.ti=15-this.tb;this.xi=11;this.yi=9-this.tb;this.zi=10-this.tb;this.Bk=8;this.Ek=12;this.Ck=18;this.Dk=17;this.Fk=15;this.vi=8;this.ui=20;this.wi=2;this.Ci=3;this.yf=9;this.Bi=5;this.Ai=11;this.Ei=4;this.Di=17;this.Gk=11;this.Ma=Ab.slice();80186<=this.Ca&&(this.Ae=31,this.Ma[15]=G,this.Ma[96]=
Bb,this.Ma[97]=Cb,this.Ma[98]=Db,this.Ma[99]=G,this.Ma[100]=G,this.Ma[101]=G,this.Ma[102]=G,this.Ma[103]=G,this.Ma[104]=Eb,this.Ma[105]=Fb,this.Ma[106]=Gb,this.Ma[107]=Hb,this.Ma[108]=Ib,this.Ma[109]=Jb,this.Ma[110]=Kb,this.Ma[111]=Lb,this.Ma[192]=Mb,this.Ma[193]=Nb,this.Ma[200]=Ob,this.Ma[201]=Pb,this.Ma[241]=Qb,Rb[7]=Sb,Tb[7]=Sb,80286<=this.Ca&&(this.Zi=2,this.Lf=0,this.Ma[15]=Ub,this.Ma[99]=Vb,this.Ma[84]=Wb,this.P=this.ca=this.ba=this.na=this.Z=this.Hi=0,this.V=this.U=1,this.ae=3,this.Hj=14,this.Ij=
16,this.Cb=2,this.Rb=this.fb=7,this.Cg=0,this.Mj=7,this.Oj=13,this.Qj=7,this.Pj=11,this.Nj=16,this.Kj=3,this.$h=6,this.Lj=2,this.Jj=13,this.ai=this.bi=5,this.uf=2,this.tf=7,this.dk=23,this.ek=0,this.fk=1,this.gk=3,this.ck=17,this.ci=7,this.ik=11,this.Db=7,this.Eb=3,this.kk=7,this.jk=11,this.hk=15,this.nb=2,this.lk=3,this.di=7,this.nk=this.ii=this.mk=8,this.ji=this.hi=4,this.sk=2,this.rk=3,this.pk=5,this.qk=2,this.ok=3,this.ki=5,this.li=3,this.Sj=14,this.Uj=22,this.Rj=17,this.Tj=25,this.Wj=17,this.Yj=
25,this.Vj=20,this.Xj=28,this.uk=13,this.wk=21,this.tk=16,this.vk=24,this.$j=13,this.bk=21,this.Zj=16,this.ak=24,this.wf=2,this.vf=7,this.pi=this.qi=5,this.xk=19,this.yk=this.Sb=5,this.zk=17,this.$b=3,this.Ak=5,this.xf=3,this.tb=0,this.Xh=8,this.Yh=5,this.Zh=9,this.fi=this.ei=5,this.gi=4,this.ni=this.mi=5,this.oi=4,this.ri=7,this.si=5,this.ti=8,this.xi=3,this.yi=4,this.zi=3,this.Ek=this.Bk=11,this.Dk=this.Ck=15,this.Fk=7,this.vi=5,this.ui=8,this.wi=0,this.Ci=2,this.yf=6,this.Bi=3,this.Ai=6,this.Ei=
3,this.Gk=this.Di=5));this.bl=[];this.$i=[];this.Lc=this.gh=0;this.ig=!1;this.ya=[];this.Pe=this.xb=this.Ib=this.eb=this.Qd=0;this.S=this.pl;this.T=this.ql;this.N=this.rm;this.O=this.sm;this.Q=this.Kn;this.R=this.Ln;Xb(this)}z(Ya,zb);g=zb.prototype;g.Jh=function(a,b,c,d,e){this.ya=a;this.Pe=this.xb=b;this.Ib=c;this.eb=d;this.Qd=e};g.reset=function(){this.rc&&db(this);Xb(this);ab(this);this.Yc=!1};
function Xb(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.ed=65520;a.Sc=0;a.ne=1023;a.qc={Ii:0,ua:0,lc:0,rg:-1};a.Ia=new nb(a,"CS");a.cc=new nb(a,"DS");a.Vb=new nb(a,"SS");a.jb=new nb(a,"ES");a.Uk=new nb(a,"ZERO");Yb(a,0,65535);80286<=a.Ca&&(a.Rc=0,a.Oe=65535,a.Ee=new nb(a,"LDT",!0),a.Ng=new nb(a,"TSS",!0),a.ub=new nb(a,"VER",!0),Yb(a,65520,61440),a.Ia.hb=16711680);Zb(a,0);$b(a);a.Ya=0;a.ob=a.Cf=-1;a.Wf=0;a.da=a.Ba=-1;a.C=a.cc;a.M=a.Vb;a.Y=a.pa=0}
g.vj=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.qa+this.Ia.ua+this.cc.ua+this.Vb.ua+this.jb.ua+ac(this)|0};function bc(a,b){var c=a.$i[b];null!=c&&(c(--a.gh),delete a.$i[b])}function $b(a,b){void 0===b&&(b=!!(a.ed&1));cc=b?dc:ec;ob(a.Ia,b);ob(a.cc,b);ob(a.Vb,b);ob(a.jb,b)}
g.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.X,this.H,this.F,this.D]);a.set(1,[this.qa,this.Ia.save(),this.cc.save(),this.Vb.save(),this.jb.save(),ac(this),null!=this.Rc?[this.ed,this.Rc,this.Oe,this.Sc,this.ne,this.Ee.save(),this.Ng.save()]:null]);a.set(2,[this.C.Lg,this.M.Lg,this.Y,this.pa,this.Ya,this.da,this.Ba]);a.set(3,[this.vg,this.ce,this.yd]);a.set(4,Sa(this.ma));return a.data()};
g.restore=function(a){var b;b=a[0];this.G=b[0];this.B=b[1];this.I=b[2];this.J=b[3];this.X=b[4];this.H=b[5];this.F=b[6];this.D=b[7];b=a[1];this.Ia.restore(b[1]);this.cc.restore(b[2]);this.Vb.restore(b[3]);this.jb.restore(b[4]);Zb(this,b[5]);var c=b[6];c&&c.length&&(this.ed=c[0],this.Rc=c[1],this.Oe=c[2],this.Sc=c[3],this.ne=c[4],this.Ee.restore(c[5]),this.Ng.restore(c[6]),$b(this));I(this,b[0]);b=a[2];this.C=fc(this,b[0]);this.M=fc(this,b[1]);this.Y=b[2];this.pa=b[3];this.Ya=b[4];this.da=b[5];this.Ba=
b[6];b=a[3];this.vg=b[0];this.ce=b[1];gb(this,b[2]);a:{b=this.ma;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.jj){for(var f=0,l=Array(b.jj),k=0;k<e.length-1;)for(var m=e[k++],n=e[k++];m--;)l[f++]=n;e=l}f=b.ya[d];if(!f||!f.restore(e)){u("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Ja(b,a[c]);b=!0}return b};
function fc(a,b){switch(b){case "CS":return a.Ia;case "DS":return a.cc;case "SS":return a.Vb;case "ES":return a.jb;case "ZERO":return a.Uk;default:return[0,b,0,0,""]}}function gc(a,b){var c;if(a.ed&1){if(c=a.Sc+(b<<3),c+7<=a.ne){a.qc.Ii=F(a,c);a.qc.ua=F(a,c+2);a.qc.lc=F(a,c+4);switch(a.qc.lc&7936){case 1536:a.qc.rg=-17153;break;case 1792:a.qc.rg=-16641;break;default:return!1}return!0}}else if(c=a.Sc+(b<<2),c+7<=a.ne)return a.qc.Ii=F(a,c),a.qc.ua=F(a,c+2),a.qc.rg=-769,!0;return!1}
function hc(a,b){a.Da=a.Ia.load(b)+a.qa;a.Y|=a.Lf}function ic(a,b){a.cc.load(b);a.Y|=a.Lf}function jc(a,b){a.Vb.load(b);a.Y|=4}function kc(a,b){a.jb.load(b);a.Y|=a.Lf}function I(a,b){a.Da=a.Ia.hb+(a.qa=b&65535)}function Yb(a,b,c){a.Da=a.Ia.load(c)+(a.qa=b)}function J(a,b){a.Da=a.Ia.hb+(a.qa=a.qa+b&65535)}function oc(a){return a.W&a.$?1:0}function pc(a){return mb[a.fa&255]?4:0}function qc(a){return(a.fa^a.ha)&16?16:0}function rc(a){return a.W&a.$-1?0:64}function sc(a){return a.fa&a.$>>1?128:0}
function tc(a){return(a.fa^a.ha^a.fa>>1)&a.$>>1?2048:0}function uc(a){a.W&=~a.$}function vc(a){a.ha=a.fa&16|a.ha&-17}function wc(a){a.W|=a.$-1}function xc(a){a.fa&=~a.$;a.ha=a.fa&32896|a.ha&-32897}function yc(a){a.W|=a.$}function zc(a){a.ha=~(a.fa&16)&16|a.ha&-17}function Ac(a){a.W&=~(a.$-1)}function Bc(a){sc(a)||(a.fa^=a.$>>1|a.$>>2,a.ha^=32896)}function Cc(a){a.fa|=a.$;a.ha=a.fa&32896|a.ha&-32897}function ac(a){return a.Ha&-2262|oc(a)|pc(a)|qc(a)|rc(a)|sc(a)|tc(a)}
function Zb(a,b){a.$=256;a.W=a.fa=a.ha=0;b&1&&yc(a);b&4||(a.fa|=1);b&16&&(a.ha|=16);b&64||wc(a);b&128&&Bc(a);b&2048&&Cc(a);a.Ha=a.Ha&-1793|b&1792|a.Wi;a.Ha&256&&(a.Ya|=2,a.Y|=4)}
g.tb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.oa[c]=d;e=!0;break;default:e=Ya.prototype.tb.call(this,a,b,c,d)}return e};function Dc(a,b){return a.ya[(b&a.vb)>>a.Ib].uc(b&a.eb)}
function F(a,b){var c=b&a.eb,d=(b&a.vb)>>a.Ib;a.A-=a.Ei;return c!=a.eb?a.ya[d].An(c):a.ya[d++].uc(c)|a.ya[d&a.Pd].uc(0)<<8}function Ec(a,b,c){a.ya[(b&a.vb)>>a.Ib].wc(b&a.eb,c&255)}function Fc(a,b,c){var d=b&a.eb;b=(b&a.vb)>>a.Ib;a.A-=a.Ei;d!=a.eb?a.ya[b].Kn(d,c&65535):(a.ya[b++].wc(d,c&255),a.ya[b&a.Pd].wc(0,c>>8&255))}g.ml=function(a,b){this.Ff=a;this.da=a.Ic(this.yf=b,0);return this.Y&1?0:Dc(this,this.da)};g.nl=function(a,b){this.Ff=a;this.da=a.Ic(this.yf=b,1);return this.Y&1?0:F(this,this.da)};
g.om=function(a,b){this.Ff=a;this.Ba=this.da=a.Ic(this.yf=b,0);return this.Y&1?0:Dc(this,this.da)};g.pm=function(a,b){this.Ff=a;this.Ba=this.da=a.Ic(this.yf=b,1);return this.Y&1?0:F(this,this.da)};g.Hn=function(a){this.Y&2||Ec(this,this.Ff.Nb(this.yf,1),a)};g.In=function(a){this.Y&2||Fc(this,this.Ff.Nb(this.yf,2),a)};g.aa=function(){var a=Dc(this,this.Da);this.Da=this.Ia.gb+(this.qa=this.qa+1&65535);return a};
g.L=function(){var a=Dc(this,this.Da)<<24>>24;this.Da=this.Ia.gb+(this.qa=this.qa+1&65535);return a&65535};g.K=function(){var a=F(this,this.Da);this.Da=this.Ia.gb+(this.qa=this.qa+2&65535);return a};g.Aa=function(){var a=this.X;this.X=this.X+2&65535;return F(this,this.Tb.Ic(a,1))};function K(a,b){var c=a.X=a.X-2&65535;Fc(a,a.Tb.Nb(c,1),b)}
g.cf=function(){E(this,"AX",this.G);E(this,"BX",this.B);E(this,"CX",this.I);E(this,"DX",this.J);E(this,"SP",this.X);E(this,"BP",this.H);E(this,"SI",this.F);E(this,"DI",this.D);E(this,"CS",this.Ia.ua);E(this,"DS",this.ac.ua);E(this,"SS",this.Tb.ua);E(this,"ES",this.ib.ua);E(this,"IP",this.qa);var a=ac(this);E(this,"PS",a);E(this,"C",a&1?1:0,1);E(this,"P",a&4?1:0,1);E(this,"A",a&16?1:0,1);E(this,"Z",a&64?1:0,1);E(this,"S",a&128?1:0,1);E(this,"T",a&256?1:0,1);E(this,"I",a&512?1:0,1);E(this,"D",a&1024?
1:0,1);E(this,"O",a&2048?1:0,1);this.oa.speed&&(this.oa.speed.innerHTML=this.qc&&this.Kc?this.Kc.toFixed(2)+"Mhz":"Stopped")};
g.Uk=function(a){this.hg=!0;this.Lc=this.A=a;this.ga&&lb(this.ga);a||!this.Na||this.Na.ro(this.Na.Un)||(this.Y|=4);do{if(a=this.Y&240)this.pa|=a;else if(this.Dg=this.Da,this.da=this.Ba=-1,this.C=this.ac,this.M=this.Tb,this.pa=this.Y&256,this.Ya){a:{if(!(this.Y&4))if(this.Ya&1&&this.Ha&512){if(a=Gc(this.ga),-1<=a&&(this.Ya&=-2,0<=a)){this.Ya&=-5;Hc.call(this,a,null,11);break a}}else if(this.Ya&2){this.Ya&=-3;Hc.call(this,1,null,11);break a}if(a=this.Ya&8){a=this.ga;for(var b=!1,c=0;c<a.va;c++)for(var d=
a.va[c],e=0;e<d.La.length;e++){var f=d.La[e];f.bd||(Ic(a,f),f.bd||(b=!0))}a=!b}a&&(this.Ya&=-9)}if(this.Ya&4){this.Y=this.A=0;break}}this.Y=0;this.Ma[this.aa()].call(this)}while(0<this.A);return this.hg?this.Lc-this.A:void 0===this.hg?0:-1};v(function(){for(var a=C(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new zb(d);B(d,c)}});function Jc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return(this.W=this.fa=a+b)&255}
function Kc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return(this.W=this.fa=this.ha=a|b)&255}function Lc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return this.W&255}function Mc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return this.W&255}
function Nc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return(this.W=this.fa=this.ha=a&b)&255}function Oc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return(this.W=this.fa=a-b)&255}function Pc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return(this.W=this.fa=this.ha=a^b)&255}function Qc(a,b){this.ha=a^b;this.$=256;this.W=this.fa=a-b;this.A-=0>this.Ba?0>this.da?this.Bb:this.Xh:this.fb;this.Y|=2;return a}
function Rc(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return(this.W=this.fa=a+b)&65535}function Sc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return(this.W=this.fa=this.ha=a|b)&65535}function Tc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return this.W&65535}
function Uc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return this.W&65535}function Vc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return(this.W=this.fa=this.ha=a&b)&65535}function Wc(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return(this.W=this.fa=a-b)&65535}
function Xc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.fb:this.Pb;return(this.W=this.fa=this.ha=a^b)&65535}function Yc(a,b){this.ha=a^b;this.$=65536;this.W=this.fa=a-b;this.A-=0>this.Ba?0>this.da?this.Bb:this.Xh:this.fb;this.Y|=2;return a}function Zc(a,b){this.W=this.W&this.$-1|(a&b?this.$:0);(a^a>>1)&b>>1?Cc(this):xc(this)}function $c(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;Zc.call(this,d,256)}return c}
function ad(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;Zc.call(this,d,65536)}return c}function bd(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);Zc.call(this,d,256)}return c}function cd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);Zc.call(this,d,65536)}return c}function dd(a,b){var c=a;if(b){var d;(d=(b&this.ze)%9)?(d=a<<d|(this.W&this.$?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.W&this.$?1:0)<<8;Zc.call(this,d,256)}return c}
function ed(a,b){var c=a;if(b){var d;(d=(b&this.ze)%17)?(d=a<<d|(this.W&this.$?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.W&this.$?1:0)<<16;Zc.call(this,d,65536)}return c}function fd(a,b){var c=a;b&&(c=(b&this.ze)%9,c=a>>c|(this.W&this.$?1:0)<<8-c|a<<9-c,Zc.call(this,c,256),c&=255);return c}function gd(a,b){var c=a;b&&(c=(b&this.ze)%17,c=a>>c|(this.W&this.$?1:0)<<16-c|a<<17-c,Zc.call(this,c,65536),c&=65535);return c}
function Zb(a,b){a.$=256;a.W=a.fa=a.ha=0;b&1&&yc(a);b&4||(a.fa|=1);b&16&&(a.ha|=16);b&64||wc(a);b&128&&Bc(a);b&2048&&Cc(a);a.Ha=a.Ha&-1793|b&1792|a.Zi;a.Ha&256&&(a.Ya|=2,a.Y|=4)}
g.vb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.oa[c]=d;e=!0;break;default:e=Ya.prototype.vb.call(this,a,b,c,d)}return e};function Dc(a,b){return a.ya[(b&a.xb)>>a.Ib].vc(b&a.eb)}
function F(a,b){var c=b&a.eb,d=(b&a.xb)>>a.Ib;a.A-=a.Hi;return c!=a.eb?a.ya[d].Dn(c):a.ya[d++].vc(c)|a.ya[d&a.Qd].vc(0)<<8}function Ec(a,b,c){a.ya[(b&a.xb)>>a.Ib].xc(b&a.eb,c&255)}function Fc(a,b,c){var d=b&a.eb;b=(b&a.xb)>>a.Ib;a.A-=a.Hi;d!=a.eb?a.ya[b].Nn(d,c&65535):(a.ya[b++].xc(d,c&255),a.ya[b&a.Qd].xc(0,c>>8&255))}g.pl=function(a,b){this.Gf=a;this.da=a.Ic(this.zf=b,0);return this.Y&1?0:Dc(this,this.da)};g.ql=function(a,b){this.Gf=a;this.da=a.Ic(this.zf=b,1);return this.Y&1?0:F(this,this.da)};
g.rm=function(a,b){this.Gf=a;this.Ba=this.da=a.Ic(this.zf=b,0);return this.Y&1?0:Dc(this,this.da)};g.sm=function(a,b){this.Gf=a;this.Ba=this.da=a.Ic(this.zf=b,1);return this.Y&1?0:F(this,this.da)};g.Kn=function(a){this.Y&2||Ec(this,this.Gf.Ob(this.zf,1),a)};g.Ln=function(a){this.Y&2||Fc(this,this.Gf.Ob(this.zf,2),a)};g.aa=function(){var a=Dc(this,this.Da);this.Da=this.Ia.hb+(this.qa=this.qa+1&65535);return a};
g.L=function(){var a=Dc(this,this.Da)<<24>>24;this.Da=this.Ia.hb+(this.qa=this.qa+1&65535);return a&65535};g.K=function(){var a=F(this,this.Da);this.Da=this.Ia.hb+(this.qa=this.qa+2&65535);return a};g.Aa=function(){var a=this.X;this.X=this.X+2&65535;return F(this,this.Vb.Ic(a,1))};function K(a,b){var c=a.X=a.X-2&65535;Fc(a,a.Vb.Ob(c,1),b)}
g.df=function(){E(this,"AX",this.G);E(this,"BX",this.B);E(this,"CX",this.I);E(this,"DX",this.J);E(this,"SP",this.X);E(this,"BP",this.H);E(this,"SI",this.F);E(this,"DI",this.D);E(this,"CS",this.Ia.ua);E(this,"DS",this.cc.ua);E(this,"SS",this.Vb.ua);E(this,"ES",this.jb.ua);E(this,"IP",this.qa);var a=ac(this);E(this,"PS",a);E(this,"C",a&1?1:0,1);E(this,"P",a&4?1:0,1);E(this,"A",a&16?1:0,1);E(this,"Z",a&64?1:0,1);E(this,"S",a&128?1:0,1);E(this,"T",a&256?1:0,1);E(this,"I",a&512?1:0,1);E(this,"D",a&1024?
1:0,1);E(this,"O",a&2048?1:0,1);this.oa.speed&&(this.oa.speed.innerHTML=this.rc&&this.Kc?this.Kc.toFixed(2)+"Mhz":"Stopped")};
g.Wk=function(a){this.ig=!0;this.Lc=this.A=a;this.ga&&lb(this.ga);a||!this.Na||this.Na.uo(this.Na.Xn)||(this.Y|=4);do{if(a=this.Y&240)this.pa|=a;else if(this.Fg=this.Da,this.da=this.Ba=-1,this.C=this.cc,this.M=this.Vb,this.pa=this.Y&256,this.Ya){a:{if(!(this.Y&4))if(this.Ya&1&&this.Ha&512){if(a=Gc(this.ga),-1<=a&&(this.Ya&=-2,0<=a)){this.Ya&=-5;Hc.call(this,a,null,11);break a}}else if(this.Ya&2){this.Ya&=-3;Hc.call(this,1,null,11);break a}if(a=this.Ya&8){a=this.ga;for(var b=!1,c=0;c<a.va;c++)for(var d=
a.va[c],e=0;e<d.La.length;e++){var f=d.La[e];f.bd||(Ic(a,f),f.bd||(b=!0))}a=!b}a&&(this.Ya&=-9)}if(this.Ya&4){this.Y=this.A=0;break}}this.Y=0;this.Ma[this.aa()].call(this)}while(0<this.A);return this.ig?this.Lc-this.A:void 0===this.ig?0:-1};v(function(){for(var a=C(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new zb(d);B(d,c)}});function Jc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return(this.W=this.fa=a+b)&255}
function Kc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return(this.W=this.fa=this.ha=a|b)&255}function Lc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=256;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return this.W&255}function Mc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=256;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return this.W&255}
function Nc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return(this.W=this.fa=this.ha=a&b)&255}function Oc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return(this.W=this.fa=a-b)&255}function Pc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return(this.W=this.fa=this.ha=a^b)&255}function Qc(a,b){this.ha=a^b;this.$=256;this.W=this.fa=a-b;this.A-=0>this.Ba?0>this.da?this.Cb:this.$h:this.fb;this.Y|=2;return a}
function Rc(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return(this.W=this.fa=a+b)&65535}function Sc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return(this.W=this.fa=this.ha=a|b)&65535}function Tc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return this.W&65535}
function Uc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return this.W&65535}function Vc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return(this.W=this.fa=this.ha=a&b)&65535}function Wc(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return(this.W=this.fa=a-b)&65535}
function Xc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Cb:this.fb:this.Rb;return(this.W=this.fa=this.ha=a^b)&65535}function Yc(a,b){this.ha=a^b;this.$=65536;this.W=this.fa=a-b;this.A-=0>this.Ba?0>this.da?this.Cb:this.$h:this.fb;this.Y|=2;return a}function Zc(a,b){this.W=this.W&this.$-1|(a&b?this.$:0);(a^a>>1)&b>>1?Cc(this):xc(this)}function $c(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;Zc.call(this,d,256)}return c}
function ad(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;Zc.call(this,d,65536)}return c}function bd(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);Zc.call(this,d,256)}return c}function cd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);Zc.call(this,d,65536)}return c}function dd(a,b){var c=a;if(b){var d;(d=(b&this.Ae)%9)?(d=a<<d|(this.W&this.$?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.W&this.$?1:0)<<8;Zc.call(this,d,256)}return c}
function ed(a,b){var c=a;if(b){var d;(d=(b&this.Ae)%17)?(d=a<<d|(this.W&this.$?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.W&this.$?1:0)<<16;Zc.call(this,d,65536)}return c}function fd(a,b){var c=a;b&&(c=(b&this.Ae)%9,c=a>>c|(this.W&this.$?1:0)<<8-c|a<<9-c,Zc.call(this,c,256),c&=255);return c}function gd(a,b){var c=a;b&&(c=(b&this.Ae)%17,c=a>>c|(this.W&this.$?1:0)<<16-c|a<<17-c,Zc.call(this,c,65536),c&=65535);return c}
function hd(a,b){var c=a;b&&(c=8<b?this.W=this.fa=0:(this.W=this.fa=a<<b)&255,this.ha=0,this.$=256);return c}function id(a,b){var c=a;b&&(c=16<b?this.W=this.fa=0:(this.W=this.fa=a<<b)&65535,this.ha=0,this.$=65536);return c}function md(a,b){if(b){var c=8<b?0:a>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|256:this.W&-257;this.ha=a^this.W;this.$=256;a=this.W}return a&255}
function nd(a,b){if(b){var c=16<b?0:a>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|65536:this.W&-65537;this.ha=a^this.W;this.$=65536;a=this.W}return a&65535}function od(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|256:this.W&-257;this.ha=a^this.W;this.$=256;a=this.W}return a&255}function pd(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|65536:this.W&-65537;this.ha=a^this.W;this.$=65536;a=this.W}return a&65535}
function qd(){this.A-=0>this.da?2:this.Dk;return 1}function rd(){var a=this.I&this.ze;this.A-=(0>this.da?this.si:this.ri)+(a<<this.ti);return a}function sd(){var a=this.aa();this.A-=(0>this.da?this.si:this.ri)+(a<<this.ti);return a}function td(){return null}function ud(a){yb.call(this,13,0);return a}function Sb(a){G.call(this);return a}function L(a){N.call(this);return a}
var vd=[Jc,Kc,Lc,Mc,Nc,Oc,Pc,Qc],wd=[Rc,Sc,Tc,Uc,Vc,Wc,Xc,Yc],xd=[function(a,b){this.A-=0>this.Ba?this.Qb:this.wk;return b},ud,ud,ud,ud,ud,ud,ud],yd=[function(a,b){this.A-=0>this.Ba?this.ok:this.mk;return b},L,L,L,L,L,L,L],zd=[$c,bd,dd,fd,hd,md,L,od],Ad=[ad,cd,ed,gd,id,nd,L,pd],Cd=[function(a,b){b=this.aa();this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.da?this.yi:this.xi;this.Y|=2;return a},L,function(a){this.A-=0>this.da?this.vf:this.uf;return a^255},function(a,b){b=0;this.ha=a^b;this.$=256;
this.A-=0>this.da?this.vf:this.uf;return(this.W=this.fa=b-a)&255},function(a){this.G=this.nb=(this.W=(this.G&255)*a)&65535;this.ha=this.fa=this.W;this.$=256;this.G&65280?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?this.sk:this.rk;this.Y|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.nb=b&65535;this.W=this.ha=this.fa=b;this.$=256;127<b||-128>b?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?this.Yj:this.Xj;this.Y|=2;return a},function(a){if(!a)return Bd.call(this),
a;var b=this.G/a;if(255<b)return Bd.call(this),a;this.nb=this.G=b&255|(this.G%a&255)<<8;this.fa=this.ha=this.W=b|256;this.$=256;this.A-=0>this.da?this.Qj:this.Pj;this.Y|=2;return a},function(a){if(!a)return Bd.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Bd.call(this),a;this.nb=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.fa=this.ha=this.W=b|256;this.$=256;this.A-=0>this.da?this.Uj:this.Tj;this.Y|=2;return a}],Dd=[function(a,b){b=this.K();this.W=this.fa=this.ha=
a&b;this.$=65536;this.A-=0>this.da?this.yi:this.xi;this.Y|=2;return a},L,function(a){this.A-=0>this.da?this.vf:this.uf;return a^65535},function(a,b){b=0;this.ha=a^b;this.$=65536;this.A-=0>this.da?this.vf:this.uf;return(this.W=this.fa=b-a)&65535},function(a){this.nb=this.G=(this.W=this.G*a)&65535;this.Bf=this.J=this.W>>16&65535;this.ha=this.fa=this.W;this.$=65536;this.J?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?this.uk:this.tk;this.Y|=2;return a},function(a){var b=(this.G<<16>>16)*
(a<<16>>16);this.G=this.nb=b&65535;this.J=this.Bf=b>>16&65535;this.W=this.ha=this.fa=b;this.$=65536;32767<b||-32768>b?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?this.$j:this.Zj;this.Y|=2;return a},function(a,b){if(!a)return Bd.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return Bd.call(this),a;this.nb=this.G=c&65535;this.Bf=this.J=b%a&65535;this.fa=this.ha=this.W=c|65536;this.$=65536;this.A-=0>this.da?this.Sj:this.Rj;this.Y|=2;return a},function(a,b){if(!a)return Bd.call(this),
a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Bd.call(this),a;this.nb=this.G=d&65535;this.Bf=this.J=b%c&65535;this.fa=this.ha=this.W=d|65536;this.$=65536;this.A-=0>this.da?this.Wj:this.Vj;this.Y|=2;return a}],Rb=[function(a){this.ha=a;a=(this.fa=a+1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.tf:this.sf;return a},function(a){this.ha=a;a=(this.fa=a-1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.tf:this.sf;
return a},L,L,L,L,L,L],Tb=[function(a){this.ha=a;a=(this.fa=a+1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.tf:this.sf;return a},function(a){this.ha=a;a=(this.fa=a-1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.tf:this.sf;return a},function(a){K(this,this.qa);I(this,a);this.A-=0>this.da?this.Oj:this.Nj;this.Y|=2;return a},function(a){if(0>this.da)return L.call(this,a);K(this,this.Ia.ua);K(this,this.qa);Yb(this,a,F(this,this.da+2));this.A-=
this.Lj;this.Y|=2;return a},function(a){I(this,a);this.A-=0>this.da?this.ik:this.hk;this.Y|=2;return a},function(a){if(0>this.da)return L.call(this,a);Yb(this,a,F(this,this.da+2));this.A-=this.fk;this.Y|=2;return a},function(a){var b=a;this.Y&512&&(a=a-2&65535,80286>this.Ca&&(b=a));K(this,b);this.A-=0>this.da?this.Zb:this.yk;this.Y|=2;return a},ud],Ed=[$c,bd,dd,fd,hd,md,L,od],Fd=[ad,cd,ed,gd,id,nd,L,pd];function Gd(a,b){this.A-=0>this.Ba?0>this.da?this.qk:this.pk:this.nk;return b}
function Hd(){return Gd.call(this,0,this.nb)}function Id(a,b){this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.Ba?0>this.da?this.zi:this.xf:this.xf;this.Y|=2;return a}function Jd(a,b){this.W=this.fa=this.ha=a&b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.zi:this.xf:this.xf;this.Y|=2;return a}function Kd(a,b){var c=(b<<16>>16)*(this.aa()<<24>>24);this.W=this.ha=this.fa=c;this.$=256;32767<c||-32768>c?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?21:24;return c&65535}
function Ld(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.W=this.ha=this.fa=c;this.$=65536;32767<c||-32768>c?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?21:24;return c&65535}function Md(a){return a}function Nd(a){if(0>this.da)return N.call(this),a;this.A-=this.jk;return this.da}function Od(a,b){if(0>this.da)return N.call(this),a;ic(this,F(this,this.da+2));this.A-=this.ai;return b}
function Pd(a,b){if(0>this.da)return N.call(this),a;kc(this,F(this,this.da+2));this.A-=this.ai;return b}function Qd(a){if(0>this.da)return G.call(this),a;var b=a<<16>>16,c=F(this,this.da)<<16>>16,d=F(this,this.da+2)<<16>>16;this.A-=this.Hj;if(b<c||b>d)I(this,this.Dg-this.Ia.gb),Hc.call(this,5,null,0);this.Y|=2;return a}function Rd(a,b){this.A-=10+(0>this.da?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Ac(this),a;wc(this);return a}
function Sd(a,b){this.A-=14+(0>this.da?0:2);if(0<=this.sb.load(b,!0)&&this.sb.tc>=(this.Ia.ua&3)&&this.sb.tc>=(b&3))return Ac(this),this.sb.kc&65280;wc(this);return a}function Td(a,b){this.A-=14+(0>this.da?0:2);if(b&65528&&0<=this.sb.load(b,!0)&&(3072==(this.sb.kc&3072)||this.sb.tc>=(this.Ia.ua&3))&&this.sb.tc>=(b&3))return Ac(this),this.sb.ad;wc(this);return a}
function Ud(a,b){if(0>this.da){switch(this.Vf&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.Bi}else this.Ba=this.da,this.Q(a),this.A-=this.Ai;return b}
function Vd(a,b){if(0>this.da){switch(this.Vf&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.X=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.Bi}else this.Ba=this.da,this.R(a),this.A-=this.Ai;return b}function Hc(a,b,c){gc(this,a)&&(K(this,ac(this)),this.Ha&=this.pc.qg,K(this,this.Ia.ua),K(this,this.qa),null!=b&&K(this,b),Yb(this,this.pc.Fi,this.pc.ua),this.A-=this.bk+c)}
function Bd(){I(this,this.Dg-this.Ia.gb);Hc.call(this,0,null,2)}function yb(a,b){80186<=this.Ca&&(I(this,this.Dg-this.Ia.gb),Hc.call(this,a,b,0))}function G(){yb.call(this,6);db(this)}function N(){I(this,this.Dg-this.Ia.gb);var a=Na(this.ma,this.Da),b=this.qa,c=this.Ia.ua;Ea(this,"Undefined opcode 0x"+p(a,2)+" at "+(void 0!==c?p(c,4)+":"+p(b,4):p(b)));db(this)}function Wd(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}
function qd(){this.A-=0>this.da?2:this.Fk;return 1}function rd(){var a=this.I&this.Ae;this.A-=(0>this.da?this.vi:this.ui)+(a<<this.wi);return a}function sd(){var a=this.aa();this.A-=(0>this.da?this.vi:this.ui)+(a<<this.wi);return a}function td(){return null}function ud(a){yb.call(this,13,0);return a}function Sb(a){G.call(this);return a}function L(a){N.call(this);return a}
var vd=[Jc,Kc,Lc,Mc,Nc,Oc,Pc,Qc],wd=[Rc,Sc,Tc,Uc,Vc,Wc,Xc,Yc],xd=[function(a,b){this.A-=0>this.Ba?this.Sb:this.yk;return b},ud,ud,ud,ud,ud,ud,ud],yd=[function(a,b){this.A-=0>this.Ba?this.qk:this.ok;return b},L,L,L,L,L,L,L],zd=[$c,bd,dd,fd,hd,md,L,od],Ad=[ad,cd,ed,gd,id,nd,L,pd],Cd=[function(a,b){b=this.aa();this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.da?this.Bi:this.Ai;this.Y|=2;return a},L,function(a){this.A-=0>this.da?this.wf:this.vf;return a^255},function(a,b){b=0;this.ha=a^b;this.$=256;
this.A-=0>this.da?this.wf:this.vf;return(this.W=this.fa=b-a)&255},function(a){this.G=this.ob=(this.W=(this.G&255)*a)&65535;this.ha=this.fa=this.W;this.$=256;this.G&65280?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?this.uk:this.tk;this.Y|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.ob=b&65535;this.W=this.ha=this.fa=b;this.$=256;127<b||-128>b?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?this.$j:this.Zj;this.Y|=2;return a},function(a){if(!a)return Bd.call(this),
a;var b=this.G/a;if(255<b)return Bd.call(this),a;this.ob=this.G=b&255|(this.G%a&255)<<8;this.fa=this.ha=this.W=b|256;this.$=256;this.A-=0>this.da?this.Sj:this.Rj;this.Y|=2;return a},function(a){if(!a)return Bd.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Bd.call(this),a;this.ob=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.fa=this.ha=this.W=b|256;this.$=256;this.A-=0>this.da?this.Wj:this.Vj;this.Y|=2;return a}],Dd=[function(a,b){b=this.K();this.W=this.fa=this.ha=
a&b;this.$=65536;this.A-=0>this.da?this.Bi:this.Ai;this.Y|=2;return a},L,function(a){this.A-=0>this.da?this.wf:this.vf;return a^65535},function(a,b){b=0;this.ha=a^b;this.$=65536;this.A-=0>this.da?this.wf:this.vf;return(this.W=this.fa=b-a)&65535},function(a){this.ob=this.G=(this.W=this.G*a)&65535;this.Cf=this.J=this.W>>16&65535;this.ha=this.fa=this.W;this.$=65536;this.J?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?this.wk:this.vk;this.Y|=2;return a},function(a){var b=(this.G<<16>>16)*
(a<<16>>16);this.G=this.ob=b&65535;this.J=this.Cf=b>>16&65535;this.W=this.ha=this.fa=b;this.$=65536;32767<b||-32768>b?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?this.bk:this.ak;this.Y|=2;return a},function(a,b){if(!a)return Bd.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return Bd.call(this),a;this.ob=this.G=c&65535;this.Cf=this.J=b%a&65535;this.fa=this.ha=this.W=c|65536;this.$=65536;this.A-=0>this.da?this.Uj:this.Tj;this.Y|=2;return a},function(a,b){if(!a)return Bd.call(this),
a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Bd.call(this),a;this.ob=this.G=d&65535;this.Cf=this.J=b%c&65535;this.fa=this.ha=this.W=d|65536;this.$=65536;this.A-=0>this.da?this.Yj:this.Xj;this.Y|=2;return a}],Rb=[function(a){this.ha=a;a=(this.fa=a+1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.uf:this.tf;return a},function(a){this.ha=a;a=(this.fa=a-1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.uf:this.tf;
return a},L,L,L,L,L,L],Tb=[function(a){this.ha=a;a=(this.fa=a+1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.uf:this.tf;return a},function(a){this.ha=a;a=(this.fa=a-1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.uf:this.tf;return a},function(a){K(this,this.qa);I(this,a);this.A-=0>this.da?this.Qj:this.Pj;this.Y|=2;return a},function(a){if(0>this.da)return L.call(this,a);K(this,this.Ia.ua);K(this,this.qa);Yb(this,a,F(this,this.da+2));this.A-=
this.Nj;this.Y|=2;return a},function(a){I(this,a);this.A-=0>this.da?this.kk:this.jk;this.Y|=2;return a},function(a){if(0>this.da)return L.call(this,a);Yb(this,a,F(this,this.da+2));this.A-=this.hk;this.Y|=2;return a},function(a){var b=a;this.Y&512&&(a=a-2&65535,80286>this.Ca&&(b=a));K(this,b);this.A-=0>this.da?this.$b:this.Ak;this.Y|=2;return a},ud],Ed=[$c,bd,dd,fd,hd,md,L,od],Fd=[ad,cd,ed,gd,id,nd,L,pd];function Gd(a,b){this.A-=0>this.Ba?0>this.da?this.sk:this.rk:this.pk;return b}
function Hd(){return Gd.call(this,0,this.ob)}function Id(a,b){this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.Ba?0>this.da?this.Ci:this.yf:this.yf;this.Y|=2;return a}function Jd(a,b){this.W=this.fa=this.ha=a&b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.Ci:this.yf:this.yf;this.Y|=2;return a}function Kd(a,b){var c=(b<<16>>16)*(this.aa()<<24>>24);this.W=this.ha=this.fa=c;this.$=256;32767<c||-32768>c?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?21:24;return c&65535}
function Ld(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.W=this.ha=this.fa=c;this.$=65536;32767<c||-32768>c?(yc(this),Cc(this)):(uc(this),xc(this));this.A-=0>this.da?21:24;return c&65535}function Md(a){return a}function Nd(a){if(0>this.da)return N.call(this),a;this.A-=this.lk;return this.da}function Od(a,b){if(0>this.da)return N.call(this),a;ic(this,F(this,this.da+2));this.A-=this.di;return b}
function Pd(a,b){if(0>this.da)return N.call(this),a;kc(this,F(this,this.da+2));this.A-=this.di;return b}function Qd(a){if(0>this.da)return G.call(this),a;var b=a<<16>>16,c=F(this,this.da)<<16>>16,d=F(this,this.da+2)<<16>>16;this.A-=this.Jj;if(b<c||b>d)I(this,this.Fg-this.Ia.hb),Hc.call(this,5,null,0);this.Y|=2;return a}function Rd(a,b){this.A-=10+(0>this.da?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Ac(this),a;wc(this);return a}
function Sd(a,b){this.A-=14+(0>this.da?0:2);if(0<=this.ub.load(b,!0)&&this.ub.uc>=(this.Ia.ua&3)&&this.ub.uc>=(b&3))return Ac(this),this.ub.lc&65280;wc(this);return a}function Td(a,b){this.A-=14+(0>this.da?0:2);if(b&65528&&0<=this.ub.load(b,!0)&&(3072==(this.ub.lc&3072)||this.ub.uc>=(this.Ia.ua&3))&&this.ub.uc>=(b&3))return Ac(this),this.ub.ad;wc(this);return a}
function Ud(a,b){if(0>this.da){switch(this.Wf&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.Ei}else this.Ba=this.da,this.Q(a),this.A-=this.Di;return b}
function Vd(a,b){if(0>this.da){switch(this.Wf&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.X=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.Ei}else this.Ba=this.da,this.R(a),this.A-=this.Di;return b}function Hc(a,b,c){gc(this,a)&&(K(this,ac(this)),this.Ha&=this.qc.rg,K(this,this.Ia.ua),K(this,this.qa),null!=b&&K(this,b),Yb(this,this.qc.Ii,this.qc.ua),this.A-=this.dk+c)}
function Bd(){I(this,this.Fg-this.Ia.hb);Hc.call(this,0,null,2)}function yb(a,b){80186<=this.Ca&&(I(this,this.Fg-this.Ia.hb),Hc.call(this,a,b,0))}function G(){yb.call(this,6);db(this)}function N(){I(this,this.Fg-this.Ia.hb);var a=Na(this.ma,this.Da),b=this.qa,c=this.Ia.ua;Ea(this,"Undefined opcode 0x"+p(a,2)+" at "+(void 0!==c?p(c,4)+":"+p(b,4):p(b)));db(this)}function Wd(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}
function Xd(a){a=a.call(this,this.G&255,this.I&255);this.G=this.G&-256|a}function Yd(a){a=a.call(this,this.G&255,this.J&255);this.G=this.G&-256|a}function Zd(a){a=a.call(this,this.G&255,this.B&255);this.G=this.G&-256|a}function $d(a){a=a.call(this,this.G&255,this.G>>8);this.G=this.G&-256|a}function ae(a){a=a.call(this,this.G&255,this.I>>8);this.G=this.G&-256|a}function be(a){a=a.call(this,this.G&255,this.J>>8);this.G=this.G&-256|a}
function ce(a){a=a.call(this,this.G&255,this.B>>8);this.G=this.G&-256|a}function de(a){a=a.call(this,this.I&255,this.G&255);this.I=this.I&-256|a}function ee(a){a=a.call(this,this.I&255,this.I&255);this.I=this.I&-256|a}function fe(a){a=a.call(this,this.I&255,this.J&255);this.I=this.I&-256|a}function ge(a){a=a.call(this,this.I&255,this.B&255);this.I=this.I&-256|a}function he(a){a=a.call(this,this.I&255,this.G>>8);this.I=this.I&-256|a}
function ie(a){a=a.call(this,this.I&255,this.I>>8);this.I=this.I&-256|a}function je(a){a=a.call(this,this.I&255,this.J>>8);this.I=this.I&-256|a}function ke(a){a=a.call(this,this.I&255,this.B>>8);this.I=this.I&-256|a}function le(a){a=a.call(this,this.J&255,this.G&255);this.J=this.J&-256|a}function me(a){a=a.call(this,this.J&255,this.I&255);this.J=this.J&-256|a}function ne(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}
@ -359,270 +359,270 @@ function(a,b){this.X=a[4].call(this,this.X,b.call(this))},function(a,b){this.H=a
b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.D=a[5].call(this,this.D,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.J=a[6].call(this,this.J,b.call(this))},function(a,b){this.B=a[6].call(this,this.B,b.call(this))},function(a,b){this.Y|=512;this.X=a[6].call(this,this.X,b.call(this))},function(a,
b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.D=a[6].call(this,this.D,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a,b){this.B=a[7].call(this,this.B,b.call(this))},function(a,b){this.X=a[7].call(this,this.X,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},
function(a,b){this.F=a[7].call(this,this.F,b.call(this))},function(a,b){this.D=a[7].call(this,this.D,b.call(this))}],xg=[function(){var a=this.aa();16>(a&56)&&(this.Y|=1);vg[a].call(this,cc,td)},function(){var a=this.aa();a&16||(this.Y|=1);vg[a].call(this,wg,td)},function(){P[this.aa()].call(this,Sd)},function(){P[this.aa()].call(this,Td)},N,N,N,N,N,N,N,G,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,
N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N],dc=[function(){this.A-=2+(0>this.da?0:1);return this.De.ua},function(){this.A-=2+(0>this.da?0:1);return this.Mg.ua},function(a){this.Y|=2;this.De.load(a);this.A-=
17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.Mg.load(a);this.A-=17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.sb.load(a,!0)&&2048!=(this.sb.kc&2560)&&(3072==(this.sb.kc&3072)||this.sb.tc>=(this.Ia.ua&3)&&this.sb.tc>=(a&3)))return Ac(this),a;wc(this);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.sb.load(a,!0)&&512==(this.sb.kc&2560)&&this.sb.tc>=(this.Ia.ua&3)&&this.sb.tc>=(a&3))return Ac(this),a;wc(this);return a},L,L],
ec=[Sb,Sb,Sb,Sb,Sb,Sb,L,L],cc=ec,wg=[function(a){0>this.da?G.call(this):(Fc(this,this.da+2,this.Rc),Ec(this,this.da+4,this.Rc>>16),a=this.Ne-this.Rc,this.A-=11);return a},function(a){0>this.da?G.call(this):(Fc(this,this.da+2,this.Sc),Ec(this,this.da+4,this.Sc>>16),a=this.me-this.Sc,this.A-=12);return a},function(a){0>this.da?G.call(this):(this.Rc=F(this,this.da+2)|Dc(this,this.da+4)<<16,this.Ne=this.Rc+a,this.Y|=2,this.A-=11);return a},function(a){0>this.da?G.call(this):(this.Sc=F(this,this.da+2)|
Dc(this,this.da+4)<<16,this.me=this.Sc+a,this.Y|=2,this.A-=12);return a},function(){this.A-=2+(0>this.da?0:1);return this.ed},L,function(a){this.ed=this.ed&65520|a&-65521;this.A-=3+(0>this.da?0:3);this.ed&1&&$b(this,!0);this.Y|=2;return a},L];function Ub(){xg[this.aa()].call(this)}function Wb(){K(this,this.X);this.A-=this.Zb}function Bb(){var a=this.X;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.xk}
function Cb(){this.D=this.Aa();this.F=this.Aa();this.H=this.Aa();this.X+=2;this.B=this.Aa();this.J=this.Aa();this.I=this.Aa();this.G=this.Aa();this.A-=this.vk}function Db(){P[this.aa()].call(this,Qd)}function Vb(){O[this.aa()].call(this,Rd)}function Eb(){K(this,this.K());this.A-=this.Zb}function Fb(){P[this.aa()].call(this,Ld)}function Gb(){K(this,this.aa());this.A-=this.Zb}function Hb(){P[this.aa()].call(this,Kd)}
function Ib(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=Ua(this.ma,this.J,this.Da-b-1);Ec(this,this.ib.Nb(this.D,0),d);this.D=this.D+(this.Ha&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}}
function Jb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=this.Da-b-1,d=Ua(this.ma,this.J,d)|Ua(this.ma,this.J,d)<<8;Fc(this,this.ib.Nb(this.D,1),d);this.D=this.D+(this.Ha&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}}
function Kb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=Dc(this,this.ac.Ic(this.F,0));this.F=this.F+(this.Ha&1024?-1:1)&65535;this.A-=c;this.I-=b;Wa(this.ma,this.J,d,this.Da-b-1);a&&(J(this,-2),this.Y|=256)}}
function Lb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=F(this,this.ac.Ic(this.F,1));this.F=this.F+(this.Ha&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Da-b-1;Wa(this.ma,this.J,d&255,b);Wa(this.ma,this.J,d>>8,b);a&&(J(this,-2),this.Y|=256)}}function yg(){var a=this.L();tc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function zg(){var a=this.L();tc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}
function Ag(){var a=this.L();oc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Bg(){var a=this.L();oc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Cg(){var a=this.L();rc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Dg(){var a=this.L();rc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Eg(){var a=this.L();oc(this)||rc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}
function Fg(){var a=this.L();oc(this)||rc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Gg(){var a=this.L();sc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Hg(){var a=this.L();sc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Ig(){var a=this.L();pc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Jg(){var a=this.L();pc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}
function Kg(){var a=this.L();!sc(this)!=!tc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Lg(){var a=this.L();!sc(this)==!tc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Mg(){var a=this.L();rc(this)||!sc(this)!=!tc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Ng(){var a=this.L();rc(this)||!sc(this)!=!tc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}
function Og(){ug[this.aa()].call(this,vd,this.aa);this.A-=0>this.Ba?1:this.Ag}function Mb(){ug[this.aa()].call(this,Ed,sd)}function Nb(){vg[this.aa()].call(this,Fd,sd)}function Pg(){var a=this.K();I(this,this.Aa());this.X=this.X+a&65535;this.A-=this.Ck}function Qg(){I(this,this.Aa());this.A-=this.zk}
function Ob(){var a=this.K(),b=this.aa()&31;this.A-=11;K(this,this.H);var c=this.X;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.H=this.H-2&65535,K(this,F(this,this.Tb.Ic(this.H,1)));K(this,c)}this.H=c;this.X=this.X-a&65535}function Pb(){this.X=this.H;this.H=this.Aa();this.A-=5}function Rg(){var a=this.K();Yb(this,this.Aa(),this.Aa());this.X=this.X+a&65535;this.fh&&bc(this,this.Da);this.A-=this.Bk}function Sg(){Yb(this,this.Aa(),this.Aa());this.A-=this.Ak}
function Tg(){P[this.aa()].call(this,Md);this.A-=8}function Ug(){this.Y|=36;this.A-=this.rb}function Qb(){N.call(this)}
var Ab=[function(){var a=this.aa();sg[a].call(this,Jc)},function(){O[this.aa()].call(this,Rc)},function(){tg[this.aa()].call(this,Jc)},function(){P[this.aa()].call(this,Rc)},function(){this.G=this.G&-256|Jc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Rc.call(this,this.G,this.K());this.A--},function(){K(this,this.ib.ua);this.A-=this.wf},function(){kc(this,this.Aa());this.A-=this.Qb},function(){sg[this.aa()].call(this,Kc)},function(){O[this.aa()].call(this,Sc)},function(){tg[this.aa()].call(this,
Kc)},function(){P[this.aa()].call(this,Sc)},function(){this.G=this.G&-256|Kc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Sc.call(this,this.G,this.K());this.A--},function(){K(this,this.Ia.ua);this.A-=this.wf},function(){hc(this,this.Aa());this.A-=this.Qb},function(){sg[this.aa()].call(this,Lc)},function(){O[this.aa()].call(this,Tc)},function(){tg[this.aa()].call(this,Lc)},function(){P[this.aa()].call(this,Tc)},function(){this.G=this.G&-256|Lc.call(this,this.G&255,this.aa());this.A--},
function(){this.G=Tc.call(this,this.G,this.K());this.A--},function(){K(this,this.Tb.ua);this.A-=this.wf},function(){jc(this,this.Aa());this.A-=this.Qb},function(){sg[this.aa()].call(this,Mc)},function(){O[this.aa()].call(this,Uc)},function(){tg[this.aa()].call(this,Mc)},function(){P[this.aa()].call(this,Uc)},function(){this.G=this.G&-256|Mc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Uc.call(this,this.G,this.K());this.A--},function(){K(this,this.ac.ua);this.A-=this.wf},function(){ic(this,
this.Aa());this.A-=this.Qb},function(){sg[this.aa()].call(this,Nc)},function(){O[this.aa()].call(this,Vc)},function(){tg[this.aa()].call(this,Nc)},function(){P[this.aa()].call(this,Vc)},function(){this.G=this.G&-256|Nc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Vc.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.ib;this.A-=this.rb},function(){var a=this.G&255,b=qc(this),c=this.W&this.$;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.G=this.G&-256|
(this.W=this.fa=a&255);this.$=65536;c&&(this.W|=this.$);b?zc(this):vc(this);this.A-=this.$d},function(){sg[this.aa()].call(this,Oc)},function(){O[this.aa()].call(this,Wc)},function(){tg[this.aa()].call(this,Oc)},function(){P[this.aa()].call(this,Wc)},function(){this.G=this.G&-256|Oc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Wc.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.Ia;this.A-=this.rb},function(){var a=this.G&255,b=qc(this),c=this.W&this.$;if(9<
(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.G=this.G&-256|(this.W=this.fa=a&255);this.$=65536;c&&(this.W|=this.$);b?zc(this):vc(this);this.A-=this.$d},function(){sg[this.aa()].call(this,Pc)},function(){O[this.aa()].call(this,Xc)},function(){tg[this.aa()].call(this,Pc)},function(){P[this.aa()].call(this,Xc)},function(){this.G=this.G&-256|Pc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Xc.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.Tb;this.A-=this.rb},
function(){var a=this.G&255,b=this.G>>8,c,d=qc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?zc(this):vc(this);this.A-=this.$d},function(){sg[this.aa()].call(this,Qc)},function(){O[this.aa()].call(this,Yc)},function(){tg[this.aa()].call(this,Qc)},function(){P[this.aa()].call(this,Yc)},function(){this.G=this.G&-256|Qc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Yc.call(this,this.G,this.K());this.A--},function(){this.Y|=
20;this.C=this.M=this.ac;this.A-=this.rb},function(){var a=this.G&255,b=this.G>>8,c,d=qc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?zc(this):vc(this);this.A-=this.$d},function(){this.ha=this.G;this.G=(this.fa=this.G+1)&65535;this.W=this.G|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.I;this.I=(this.fa=this.I+1)&65535;this.W=this.I|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.J;
N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N],dc=[function(){this.A-=2+(0>this.da?0:1);return this.Ee.ua},function(){this.A-=2+(0>this.da?0:1);return this.Ng.ua},function(a){this.Y|=2;this.Ee.load(a);this.A-=
17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.Ng.load(a);this.A-=17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.ub.load(a,!0)&&2048!=(this.ub.lc&2560)&&(3072==(this.ub.lc&3072)||this.ub.uc>=(this.Ia.ua&3)&&this.ub.uc>=(a&3)))return Ac(this),a;wc(this);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.ub.load(a,!0)&&512==(this.ub.lc&2560)&&this.ub.uc>=(this.Ia.ua&3)&&this.ub.uc>=(a&3))return Ac(this),a;wc(this);return a},L,L],
ec=[Sb,Sb,Sb,Sb,Sb,Sb,L,L],cc=ec,wg=[function(a){0>this.da?G.call(this):(a=this.Oe-this.Rc,Fc(this,this.da+2,this.Rc),Fc(this,this.da+4,65280|this.Rc>>16),this.A-=11);return a},function(a){0>this.da?G.call(this):(a=this.ne-this.Sc,Fc(this,this.da+2,this.Sc),Fc(this,this.da+4,65280|this.Sc>>16),this.A-=12);return a},function(a){0>this.da?G.call(this):(this.Rc=F(this,this.da+2)|Dc(this,this.da+4)<<16,this.Oe=this.Rc+a,this.Y|=2,this.A-=11);return a},function(a){0>this.da?G.call(this):(this.Sc=F(this,
this.da+2)|Dc(this,this.da+4)<<16,this.ne=this.Sc+a,this.Y|=2,this.A-=12);return a},function(){this.A-=2+(0>this.da?0:1);return this.ed},L,function(a){this.ed=this.ed&65520|a&-65521;this.A-=3+(0>this.da?0:3);this.ed&1&&$b(this,!0);this.Y|=2;return a},L];function Ub(){xg[this.aa()].call(this)}function Wb(){K(this,this.X);this.A-=this.$b}function Bb(){var a=this.X;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.zk}
function Cb(){this.D=this.Aa();this.F=this.Aa();this.H=this.Aa();this.X+=2;this.B=this.Aa();this.J=this.Aa();this.I=this.Aa();this.G=this.Aa();this.A-=this.xk}function Db(){P[this.aa()].call(this,Qd)}function Vb(){O[this.aa()].call(this,Rd)}function Eb(){K(this,this.K());this.A-=this.$b}function Fb(){P[this.aa()].call(this,Ld)}function Gb(){K(this,this.aa());this.A-=this.$b}function Hb(){P[this.aa()].call(this,Kd)}
function Ib(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=Ua(this.ma,this.J,this.Da-b-1);Ec(this,this.jb.Ob(this.D,0),d);this.D=this.D+(this.Ha&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}}
function Jb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=this.Da-b-1,d=Ua(this.ma,this.J,d)|Ua(this.ma,this.J,d)<<8;Fc(this,this.jb.Ob(this.D,1),d);this.D=this.D+(this.Ha&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}}
function Kb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=Dc(this,this.cc.Ic(this.F,0));this.F=this.F+(this.Ha&1024?-1:1)&65535;this.A-=c;this.I-=b;Wa(this.ma,this.J,d,this.Da-b-1);a&&(J(this,-2),this.Y|=256)}}
function Lb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=F(this,this.cc.Ic(this.F,1));this.F=this.F+(this.Ha&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Da-b-1;Wa(this.ma,this.J,d&255,b);Wa(this.ma,this.J,d>>8,b);a&&(J(this,-2),this.Y|=256)}}function yg(){var a=this.L();tc(this)?(I(this,this.qa+a),this.A-=this.Db):this.A-=this.Eb}function zg(){var a=this.L();tc(this)?this.A-=this.Eb:(I(this,this.qa+a),this.A-=this.Db)}
function Ag(){var a=this.L();oc(this)?(I(this,this.qa+a),this.A-=this.Db):this.A-=this.Eb}function Bg(){var a=this.L();oc(this)?this.A-=this.Eb:(I(this,this.qa+a),this.A-=this.Db)}function Cg(){var a=this.L();rc(this)?(I(this,this.qa+a),this.A-=this.Db):this.A-=this.Eb}function Dg(){var a=this.L();rc(this)?this.A-=this.Eb:(I(this,this.qa+a),this.A-=this.Db)}function Eg(){var a=this.L();oc(this)||rc(this)?(I(this,this.qa+a),this.A-=this.Db):this.A-=this.Eb}
function Fg(){var a=this.L();oc(this)||rc(this)?this.A-=this.Eb:(I(this,this.qa+a),this.A-=this.Db)}function Gg(){var a=this.L();sc(this)?(I(this,this.qa+a),this.A-=this.Db):this.A-=this.Eb}function Hg(){var a=this.L();sc(this)?this.A-=this.Eb:(I(this,this.qa+a),this.A-=this.Db)}function Ig(){var a=this.L();pc(this)?(I(this,this.qa+a),this.A-=this.Db):this.A-=this.Eb}function Jg(){var a=this.L();pc(this)?this.A-=this.Eb:(I(this,this.qa+a),this.A-=this.Db)}
function Kg(){var a=this.L();!sc(this)!=!tc(this)?(I(this,this.qa+a),this.A-=this.Db):this.A-=this.Eb}function Lg(){var a=this.L();!sc(this)==!tc(this)?(I(this,this.qa+a),this.A-=this.Db):this.A-=this.Eb}function Mg(){var a=this.L();rc(this)||!sc(this)!=!tc(this)?(I(this,this.qa+a),this.A-=this.Db):this.A-=this.Eb}function Ng(){var a=this.L();rc(this)||!sc(this)!=!tc(this)?this.A-=this.Eb:(I(this,this.qa+a),this.A-=this.Db)}
function Og(){ug[this.aa()].call(this,vd,this.aa);this.A-=0>this.Ba?1:this.Cg}function Mb(){ug[this.aa()].call(this,Ed,sd)}function Nb(){vg[this.aa()].call(this,Fd,sd)}function Pg(){var a=this.K();I(this,this.Aa());this.X=this.X+a&65535;this.A-=this.Ek}function Qg(){I(this,this.Aa());this.A-=this.Bk}
function Ob(){var a=this.K(),b=this.aa()&31;this.A-=11;K(this,this.H);var c=this.X;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.H=this.H-2&65535,K(this,F(this,this.Vb.Ic(this.H,1)));K(this,c)}this.H=c;this.X=this.X-a&65535}function Pb(){this.X=this.H;this.H=this.Aa();this.A-=5}function Rg(){var a=this.K();Yb(this,this.Aa(),this.Aa());this.X=this.X+a&65535;this.gh&&bc(this,this.Da);this.A-=this.Dk}function Sg(){Yb(this,this.Aa(),this.Aa());this.A-=this.Ck}
function Tg(){P[this.aa()].call(this,Md);this.A-=8}function Ug(){this.Y|=36;this.A-=this.tb}function Qb(){N.call(this)}
var Ab=[function(){var a=this.aa();sg[a].call(this,Jc)},function(){O[this.aa()].call(this,Rc)},function(){tg[this.aa()].call(this,Jc)},function(){P[this.aa()].call(this,Rc)},function(){this.G=this.G&-256|Jc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Rc.call(this,this.G,this.K());this.A--},function(){K(this,this.jb.ua);this.A-=this.xf},function(){kc(this,this.Aa());this.A-=this.Sb},function(){sg[this.aa()].call(this,Kc)},function(){O[this.aa()].call(this,Sc)},function(){tg[this.aa()].call(this,
Kc)},function(){P[this.aa()].call(this,Sc)},function(){this.G=this.G&-256|Kc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Sc.call(this,this.G,this.K());this.A--},function(){K(this,this.Ia.ua);this.A-=this.xf},function(){hc(this,this.Aa());this.A-=this.Sb},function(){sg[this.aa()].call(this,Lc)},function(){O[this.aa()].call(this,Tc)},function(){tg[this.aa()].call(this,Lc)},function(){P[this.aa()].call(this,Tc)},function(){this.G=this.G&-256|Lc.call(this,this.G&255,this.aa());this.A--},
function(){this.G=Tc.call(this,this.G,this.K());this.A--},function(){K(this,this.Vb.ua);this.A-=this.xf},function(){jc(this,this.Aa());this.A-=this.Sb},function(){sg[this.aa()].call(this,Mc)},function(){O[this.aa()].call(this,Uc)},function(){tg[this.aa()].call(this,Mc)},function(){P[this.aa()].call(this,Uc)},function(){this.G=this.G&-256|Mc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Uc.call(this,this.G,this.K());this.A--},function(){K(this,this.cc.ua);this.A-=this.xf},function(){ic(this,
this.Aa());this.A-=this.Sb},function(){sg[this.aa()].call(this,Nc)},function(){O[this.aa()].call(this,Vc)},function(){tg[this.aa()].call(this,Nc)},function(){P[this.aa()].call(this,Vc)},function(){this.G=this.G&-256|Nc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Vc.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.jb;this.A-=this.tb},function(){var a=this.G&255,b=qc(this),c=this.W&this.$;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.G=this.G&-256|
(this.W=this.fa=a&255);this.$=65536;c&&(this.W|=this.$);b?zc(this):vc(this);this.A-=this.ae},function(){sg[this.aa()].call(this,Oc)},function(){O[this.aa()].call(this,Wc)},function(){tg[this.aa()].call(this,Oc)},function(){P[this.aa()].call(this,Wc)},function(){this.G=this.G&-256|Oc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Wc.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.Ia;this.A-=this.tb},function(){var a=this.G&255,b=qc(this),c=this.W&this.$;if(9<
(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.G=this.G&-256|(this.W=this.fa=a&255);this.$=65536;c&&(this.W|=this.$);b?zc(this):vc(this);this.A-=this.ae},function(){sg[this.aa()].call(this,Pc)},function(){O[this.aa()].call(this,Xc)},function(){tg[this.aa()].call(this,Pc)},function(){P[this.aa()].call(this,Xc)},function(){this.G=this.G&-256|Pc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Xc.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.Vb;this.A-=this.tb},
function(){var a=this.G&255,b=this.G>>8,c,d=qc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?zc(this):vc(this);this.A-=this.ae},function(){sg[this.aa()].call(this,Qc)},function(){O[this.aa()].call(this,Yc)},function(){tg[this.aa()].call(this,Qc)},function(){P[this.aa()].call(this,Yc)},function(){this.G=this.G&-256|Qc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Yc.call(this,this.G,this.K());this.A--},function(){this.Y|=
20;this.C=this.M=this.cc;this.A-=this.tb},function(){var a=this.G&255,b=this.G>>8,c,d=qc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?zc(this):vc(this);this.A-=this.ae},function(){this.ha=this.G;this.G=(this.fa=this.G+1)&65535;this.W=this.G|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.I;this.I=(this.fa=this.I+1)&65535;this.W=this.I|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.J;
this.J=(this.fa=this.J+1)&65535;this.W=this.J|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.B;this.B=(this.fa=this.B+1)&65535;this.W=this.B|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.X;this.X=(this.fa=this.X+1)&65535;this.W=this.X|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.H;this.H=(this.fa=this.H+1)&65535;this.W=this.H|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.F;this.F=(this.fa=this.F+
1)&65535;this.W=this.F|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.D;this.D=(this.fa=this.D+1)&65535;this.W=this.D|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.G;this.G=(this.fa=this.G-1)&65535;this.W=this.G|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.I;this.I=(this.fa=this.I-1)&65535;this.W=this.I|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.J;this.J=(this.fa=this.J-1)&65535;this.W=this.J|
(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.B;this.B=(this.fa=this.B-1)&65535;this.W=this.B|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.X;this.X=(this.fa=this.X-1)&65535;this.W=this.X|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.H;this.H=(this.fa=this.H-1)&65535;this.W=this.H|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.F;this.F=(this.fa=this.F-1)&65535;this.W=this.F|(this.W&this.$?1:0)<<
16;this.$=65536;this.A-=2},function(){this.ha=this.D;this.D=(this.fa=this.D-1)&65535;this.W=this.D|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){K(this,this.G);this.A-=this.Zb},function(){K(this,this.I);this.A-=this.Zb},function(){K(this,this.J);this.A-=this.Zb},function(){K(this,this.B);this.A-=this.Zb},function(){K(this,this.X-2&65535);this.A-=this.Zb},function(){K(this,this.H);this.A-=this.Zb},function(){K(this,this.F);this.A-=this.Zb},function(){K(this,this.D);this.A-=this.Zb},function(){this.G=
this.Aa();this.A-=this.Qb},function(){this.I=this.Aa();this.A-=this.Qb},function(){this.J=this.Aa();this.A-=this.Qb},function(){this.B=this.Aa();this.A-=this.Qb},function(){this.X=this.Aa();this.A-=this.Qb},function(){this.H=this.Aa();this.A-=this.Qb},function(){this.F=this.Aa();this.A-=this.Qb},function(){this.D=this.Aa();this.A-=this.Qb},yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,function(){vg[this.aa()].call(this,wd,this.K);this.A-=0>this.Ba?
1:this.Ag},Og,function(){vg[this.aa()].call(this,wd,this.L);this.A-=0>this.Ba?1:this.Ag},function(){sg[this.aa()].call(this,Id)},function(){O[this.aa()].call(this,Jd)},function(){tg[this.Vf=this.aa()].call(this,Ud)},function(){P[this.Vf=this.aa()].call(this,Vd)},function(){this.Y|=1;sg[this.aa()].call(this,Gd)},function(){this.Y|=1;O[this.aa()].call(this,Gd)},function(){tg[this.aa()].call(this,Gd)},function(){P[this.aa()].call(this,Gd)},function(){var a=this.aa();switch((a&56)>>3){case 0:this.nb=
this.ib.ua;break;case 1:this.nb=this.Ia.ua;break;case 2:this.nb=this.Tb.ua;break;case 3:this.nb=this.ac.ua;break;default:N.call(this);return}this.Y|=1;O[a].call(this,Hd)},function(){this.Y|=1;this.C=this.M=this.Sk;P[this.aa()].call(this,Nd)},function(){var a,b=this.aa(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Ca){G.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.X;break;case 5:a=this.H;break;case 6:a=this.F;break;
16;this.$=65536;this.A-=2},function(){this.ha=this.D;this.D=(this.fa=this.D-1)&65535;this.W=this.D|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){K(this,this.G);this.A-=this.$b},function(){K(this,this.I);this.A-=this.$b},function(){K(this,this.J);this.A-=this.$b},function(){K(this,this.B);this.A-=this.$b},function(){K(this,this.X-2&65535);this.A-=this.$b},function(){K(this,this.H);this.A-=this.$b},function(){K(this,this.F);this.A-=this.$b},function(){K(this,this.D);this.A-=this.$b},function(){this.G=
this.Aa();this.A-=this.Sb},function(){this.I=this.Aa();this.A-=this.Sb},function(){this.J=this.Aa();this.A-=this.Sb},function(){this.B=this.Aa();this.A-=this.Sb},function(){this.X=this.Aa();this.A-=this.Sb},function(){this.H=this.Aa();this.A-=this.Sb},function(){this.F=this.Aa();this.A-=this.Sb},function(){this.D=this.Aa();this.A-=this.Sb},yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,function(){vg[this.aa()].call(this,wd,this.K);this.A-=0>this.Ba?
1:this.Cg},Og,function(){vg[this.aa()].call(this,wd,this.L);this.A-=0>this.Ba?1:this.Cg},function(){sg[this.aa()].call(this,Id)},function(){O[this.aa()].call(this,Jd)},function(){tg[this.Wf=this.aa()].call(this,Ud)},function(){P[this.Wf=this.aa()].call(this,Vd)},function(){this.Y|=1;sg[this.aa()].call(this,Gd)},function(){this.Y|=1;O[this.aa()].call(this,Gd)},function(){tg[this.aa()].call(this,Gd)},function(){P[this.aa()].call(this,Gd)},function(){var a=this.aa();switch((a&56)>>3){case 0:this.ob=
this.jb.ua;break;case 1:this.ob=this.Ia.ua;break;case 2:this.ob=this.Vb.ua;break;case 3:this.ob=this.cc.ua;break;default:N.call(this);return}this.Y|=1;O[a].call(this,Hd)},function(){this.Y|=1;this.C=this.M=this.Uk;P[this.aa()].call(this,Nd)},function(){var a,b=this.aa(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Ca){G.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.X;break;case 5:a=this.H;break;case 6:a=this.F;break;
case 7:a=this.D}}P[b].call(this,Gd);switch(c){case 0:kc(this,this.G);this.G=a;break;case 1:hc(this,this.I);this.I=a;break;case 2:jc(this,this.J);this.J=a;break;case 3:ic(this,this.B);this.B=a;break;case 4:kc(this,this.X);this.X=a;break;case 5:hc(this,this.H);this.H=a;break;case 6:jc(this,this.F);this.F=a;break;case 7:ic(this,this.D),this.D=a}},function(){this.Y|=1;vg[this.aa()].call(this,xd,this.Aa)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a;this.A-=3},function(){var a=
this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.X;this.X=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Jj},function(){var a=this.K(),b=this.K();K(this,this.Ia.ua);K(this,this.qa);
Yb(this,a,b);this.A-=this.Mj},function(){N.call(this)},function(){K(this,ac(this));this.A-=this.Zb},function(){Zb(this,this.Aa());this.A-=this.Qb},function(){var a=this.G>>8;a&1?yc(this):uc(this);a&4?pc(this)||(this.fa^=1):pc(this)&&(this.fa^=1);a&16?zc(this):vc(this);a&64?Ac(this):wc(this);a&128?Bc(this):sc(this)&&(this.fa^=this.$>>1|this.$>>2,this.ha^=32896);this.A-=this.mb},function(){this.G=this.G&255|(ac(this)&213)<<8;this.A-=this.mb},function(){this.G=this.G&-256|this.S(this.C,this.K());this.A-=
this.hi},function(){this.G=this.T(this.C,this.K());this.A-=this.hi},function(){var a=this.K(),b=this.G;Ec(this,this.C.Nb(a,0),b);this.A-=this.ii},function(){var a=this.K(),b=this.G;Fc(this,this.C.Nb(a,1),b);this.A-=this.ii},function(){var a=1,b=0,c=this.ji;this.pa&192&&(a=this.I,b=1,c=this.li,this.pa&256||(this.A-=this.ki));if(a--){var d=this.Ha&1024?-1:1,e=this.S(this.C,this.F);Ec(this,this.ib.Nb(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3:
-2),this.Y|=256)}},function(){var a=1,b=0,c=this.ji;this.pa&192&&(a=this.I,b=1,c=this.li,this.pa&256||(this.A-=this.ki));if(a--){var d=this.Ha&1024?-2:2,e=this.T(this.C,this.F);Fc(this,this.ib.Nb(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Uh;this.pa&192&&(a=this.I,b=1,c=this.Wh,this.pa&256||(this.A-=this.Vh));if(a--){var d=this.Ha&1024?-1:1,e=this.S(this.C,this.F),f=this.N(this.ib,this.D);Qc.call(this,
e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.fb;this.I-=b;a&&rc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Uh;this.pa&192&&(a=this.I,b=1,c=this.Wh,this.pa&256||(this.A-=this.Vh));if(a--){var d=this.Ha&1024?-2:2,e=this.T(this.C,this.F),f=this.O(this.ib,this.D);Yc.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.fb;this.I-=b;a&&rc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){this.W=
this.fa=this.ha=this.G&255&this.aa();this.$=256;this.A-=this.$d},function(){this.W=this.fa=this.ha=this.G&this.K();this.$=65536;this.A-=this.$d},function(){var a=1,b=0,c=this.ui;this.pa&192&&(a=this.I,b=1,c=this.wi,this.pa&256||(this.A-=this.vi));if(a--){var d=this.G;Ec(this,this.ib.Nb(this.D,0),d);this.D=this.D+(this.Ha&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.ui;this.pa&192&&(a=this.I,b=1,c=this.wi,this.pa&256||(this.A-=this.vi));if(a--){var d=
this.G;Fc(this,this.ib.Nb(this.D,1),d);this.D=this.D+(this.Ha&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.bi;this.pa&192&&(a=this.I,b=1,c=this.di,this.pa&256||(this.A-=this.ci));a--&&(this.G=this.G&-256|this.S(this.C,this.F),this.F=this.F+(this.Ha&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.bi;this.pa&192&&(a=this.I,b=1,c=this.di,this.pa&256||(this.A-=this.ci));a--&&(this.G=this.T(this.C,
this.F),this.F=this.F+(this.Ha&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.oi;this.pa&192&&(a=this.I,b=1,c=this.qi,this.pa&256||(this.A-=this.pi));a--&&(Qc.call(this,this.G&255,this.N(this.ib,this.D)),this.D=this.D+(this.Ha&1024?-1:1)&65535,this.A-=c-this.fb,this.I-=b,a&&rc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){var a=1,b=0,c=this.oi;this.pa&192&&(a=this.I,b=1,c=this.qi,this.pa&256||(this.A-=this.pi));a--&&(Yc.call(this,
this.G,this.O(this.ib,this.D)),this.D=this.D+(this.Ha&1024?-2:2)&65535,this.A-=c-this.fb,this.I-=b,a&&rc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){this.G=this.G&-256|this.aa();this.A-=this.mb},function(){this.I=this.I&-256|this.aa();this.A-=this.mb},function(){this.J=this.J&-256|this.aa();this.A-=this.mb},function(){this.B=this.B&-256|this.aa();this.A-=this.mb},function(){this.G=this.G&255|this.aa()<<8;this.A-=this.mb},function(){this.I=this.I&255|this.aa()<<8;this.A-=this.mb},function(){this.J=
this.J&255|this.aa()<<8;this.A-=this.mb},function(){this.B=this.B&255|this.aa()<<8;this.A-=this.mb},function(){this.G=this.K();this.A-=this.mb},function(){this.I=this.K();this.A-=this.mb},function(){this.J=this.K();this.A-=this.mb},function(){this.B=this.K();this.A-=this.mb},function(){this.X=this.K();this.A-=this.mb},function(){this.H=this.K();this.A-=this.mb},function(){this.F=this.K();this.A-=this.mb},function(){this.D=this.K();this.A-=this.mb},Pg,Qg,Pg,Qg,function(){P[this.aa()].call(this,Pd)},
function(){P[this.aa()].call(this,Od)},function(){this.Y|=1;ug[this.aa()].call(this,yd,this.aa)},function(){this.Y|=1;vg[this.aa()].call(this,yd,this.K)},Rg,Sg,Rg,Sg,function(){Hc.call(this,3,null,this.ck)},function(){var a=this.aa(),b;a:{b=this.$k[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],this.Da)){b=!1;break a}b=!0}b?Hc.call(this,a,null,0):this.A--},function(){tc(this)?Hc.call(this,4,null,this.dk):this.A-=this.ek},function(){Yb(this,this.Aa(),this.Aa());Zb(this,this.Aa());
this.fh&&bc(this,this.Da);this.A-=this.ak},function(){ug[this.aa()].call(this,zd,qd)},function(){vg[this.aa()].call(this,Ad,qd)},function(){ug[this.aa()].call(this,zd,rd)},function(){vg[this.aa()].call(this,Ad,rd)},function(){var a=this.aa(),b=this.G&255;this.G=(b/a&255)<<8|b%a;this.$=256;this.W=this.fa=b;this.A-=this.Gj},function(){var a=this.aa();this.W=this.fa=this.G=(this.G>>8)*a+this.G&255;this.$=256;this.A-=this.Fj},function(){this.G=this.G&-256|(oc(this)?255:0);this.A-=2},function(){this.G=
this.G&-256|this.S(this.C,this.B+(this.G&255)&65535);this.A-=this.Ek},Tg,Tg,Tg,Tg,Tg,Tg,Tg,Tg,function(){var a=this.L();(this.I=this.I-1&65535)&&this.W&this.$-1?(I(this,this.qa+a),this.A-=this.lk):this.A-=this.ei},function(){var a=this.L();!(this.I=this.I-1&65535)||this.W&this.$-1?this.A-=this.gi:(I(this,this.qa+a),this.A-=this.fi)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.qa+a),this.A-=this.kk):this.A-=this.ei},function(){var a=this.L();this.I?this.A-=this.gi:(I(this,this.qa+
a),this.A-=this.fi)},function(){var a=this.aa();this.G=this.G&-256|Ua(this.ma,a,this.Da-2);this.A-=this.Zh},function(){var a=this.aa();this.G=Ua(this.ma,a,this.Da-1)|Ua(this.ma,a+1&65535,this.Da-2)<<8;this.A-=this.Zh},function(){var a=this.aa();Wa(this.ma,a,this.G&255,this.Da-2);this.A-=this.ni},function(){var a=this.aa();Wa(this.ma,a,this.G&255,this.Da-2);Wa(this.ma,a+1&65535,this.G>>8,this.Da-2);this.A-=this.ni},function(){var a=this.K();K(this,this.qa);I(this,this.qa+a);this.A-=this.Kj},function(){var a=
this.K();I(this,this.qa+a);this.A-=this.$h},function(){Yb(this,this.K(),this.K());this.A-=this.gk},function(){var a=this.L();I(this,this.qa+a);this.A-=this.$h},function(){this.G=this.G&-256|Ua(this.ma,this.J,this.Da-1);this.A-=this.Yh},function(){this.G=Ua(this.ma,this.J,this.Da-1)|Ua(this.ma,this.J+1&65535,this.Da-1)<<8;this.A-=this.Yh},function(){Wa(this.ma,this.J,this.G&255,this.Da-1);this.A-=this.mi},function(){Wa(this.ma,this.J,this.G&255,this.Da-1);Wa(this.ma,this.J+1&65535,this.G>>8,this.Da-
1);this.A-=this.mi},Ug,Ug,function(){this.Y|=132;this.A-=this.rb},function(){this.Y|=68;this.A-=this.rb},function(){this.Ya|=4;this.A-=2;this.Ha&512||db(this)},function(){oc(this)?uc(this):yc(this);this.A-=2},function(){this.nb=-1;ug[this.aa()].call(this,Cd,td);0<=this.nb&&(this.G=this.nb)},function(){this.nb=-1;vg[this.aa()].call(this,Dd,td);0<=this.nb&&(this.G=this.nb,this.J=this.Bf)},function(){this.W&=~this.$;this.A-=2},function(){this.W|=this.$;this.A-=2},function(){this.Ha&=-513;this.A-=this.Ij},
this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.X;this.X=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Lj},function(){var a=this.K(),b=this.K();K(this,this.Ia.ua);K(this,this.qa);
Yb(this,a,b);this.A-=this.Oj},function(){N.call(this)},function(){K(this,ac(this));this.A-=this.$b},function(){Zb(this,this.Aa());this.A-=this.Sb},function(){var a=this.G>>8;a&1?yc(this):uc(this);a&4?pc(this)||(this.fa^=1):pc(this)&&(this.fa^=1);a&16?zc(this):vc(this);a&64?Ac(this):wc(this);a&128?Bc(this):sc(this)&&(this.fa^=this.$>>1|this.$>>2,this.ha^=32896);this.A-=this.nb},function(){this.G=this.G&255|(ac(this)&213)<<8;this.A-=this.nb},function(){this.G=this.G&-256|this.S(this.C,this.K());this.A-=
this.ki},function(){this.G=this.T(this.C,this.K());this.A-=this.ki},function(){var a=this.K(),b=this.G;Ec(this,this.C.Ob(a,0),b);this.A-=this.li},function(){var a=this.K(),b=this.G;Fc(this,this.C.Ob(a,1),b);this.A-=this.li},function(){var a=1,b=0,c=this.mi;this.pa&192&&(a=this.I,b=1,c=this.oi,this.pa&256||(this.A-=this.ni));if(a--){var d=this.Ha&1024?-1:1,e=this.S(this.C,this.F);Ec(this,this.jb.Ob(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3:
-2),this.Y|=256)}},function(){var a=1,b=0,c=this.mi;this.pa&192&&(a=this.I,b=1,c=this.oi,this.pa&256||(this.A-=this.ni));if(a--){var d=this.Ha&1024?-2:2,e=this.T(this.C,this.F);Fc(this,this.jb.Ob(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Xh;this.pa&192&&(a=this.I,b=1,c=this.Zh,this.pa&256||(this.A-=this.Yh));if(a--){var d=this.Ha&1024?-1:1,e=this.S(this.C,this.F),f=this.N(this.jb,this.D);Qc.call(this,
e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.fb;this.I-=b;a&&rc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Xh;this.pa&192&&(a=this.I,b=1,c=this.Zh,this.pa&256||(this.A-=this.Yh));if(a--){var d=this.Ha&1024?-2:2,e=this.T(this.C,this.F),f=this.O(this.jb,this.D);Yc.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.fb;this.I-=b;a&&rc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){this.W=
this.fa=this.ha=this.G&255&this.aa();this.$=256;this.A-=this.ae},function(){this.W=this.fa=this.ha=this.G&this.K();this.$=65536;this.A-=this.ae},function(){var a=1,b=0,c=this.xi;this.pa&192&&(a=this.I,b=1,c=this.zi,this.pa&256||(this.A-=this.yi));if(a--){var d=this.G;Ec(this,this.jb.Ob(this.D,0),d);this.D=this.D+(this.Ha&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.xi;this.pa&192&&(a=this.I,b=1,c=this.zi,this.pa&256||(this.A-=this.yi));if(a--){var d=
this.G;Fc(this,this.jb.Ob(this.D,1),d);this.D=this.D+(this.Ha&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.ei;this.pa&192&&(a=this.I,b=1,c=this.gi,this.pa&256||(this.A-=this.fi));a--&&(this.G=this.G&-256|this.S(this.C,this.F),this.F=this.F+(this.Ha&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.ei;this.pa&192&&(a=this.I,b=1,c=this.gi,this.pa&256||(this.A-=this.fi));a--&&(this.G=this.T(this.C,
this.F),this.F=this.F+(this.Ha&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.ri;this.pa&192&&(a=this.I,b=1,c=this.ti,this.pa&256||(this.A-=this.si));a--&&(Qc.call(this,this.G&255,this.N(this.jb,this.D)),this.D=this.D+(this.Ha&1024?-1:1)&65535,this.A-=c-this.fb,this.I-=b,a&&rc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){var a=1,b=0,c=this.ri;this.pa&192&&(a=this.I,b=1,c=this.ti,this.pa&256||(this.A-=this.si));a--&&(Yc.call(this,
this.G,this.O(this.jb,this.D)),this.D=this.D+(this.Ha&1024?-2:2)&65535,this.A-=c-this.fb,this.I-=b,a&&rc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){this.G=this.G&-256|this.aa();this.A-=this.nb},function(){this.I=this.I&-256|this.aa();this.A-=this.nb},function(){this.J=this.J&-256|this.aa();this.A-=this.nb},function(){this.B=this.B&-256|this.aa();this.A-=this.nb},function(){this.G=this.G&255|this.aa()<<8;this.A-=this.nb},function(){this.I=this.I&255|this.aa()<<8;this.A-=this.nb},function(){this.J=
this.J&255|this.aa()<<8;this.A-=this.nb},function(){this.B=this.B&255|this.aa()<<8;this.A-=this.nb},function(){this.G=this.K();this.A-=this.nb},function(){this.I=this.K();this.A-=this.nb},function(){this.J=this.K();this.A-=this.nb},function(){this.B=this.K();this.A-=this.nb},function(){this.X=this.K();this.A-=this.nb},function(){this.H=this.K();this.A-=this.nb},function(){this.F=this.K();this.A-=this.nb},function(){this.D=this.K();this.A-=this.nb},Pg,Qg,Pg,Qg,function(){P[this.aa()].call(this,Pd)},
function(){P[this.aa()].call(this,Od)},function(){this.Y|=1;ug[this.aa()].call(this,yd,this.aa)},function(){this.Y|=1;vg[this.aa()].call(this,yd,this.K)},Rg,Sg,Rg,Sg,function(){Hc.call(this,3,null,this.ek)},function(){var a=this.aa(),b;a:{b=this.bl[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],this.Da)){b=!1;break a}b=!0}b?Hc.call(this,a,null,0):this.A--},function(){tc(this)?Hc.call(this,4,null,this.fk):this.A-=this.gk},function(){Yb(this,this.Aa(),this.Aa());Zb(this,this.Aa());
this.gh&&bc(this,this.Da);this.A-=this.ck},function(){ug[this.aa()].call(this,zd,qd)},function(){vg[this.aa()].call(this,Ad,qd)},function(){ug[this.aa()].call(this,zd,rd)},function(){vg[this.aa()].call(this,Ad,rd)},function(){var a=this.aa(),b=this.G&255;this.G=(b/a&255)<<8|b%a;this.$=256;this.W=this.fa=b;this.A-=this.Ij},function(){var a=this.aa();this.W=this.fa=this.G=(this.G>>8)*a+this.G&255;this.$=256;this.A-=this.Hj},function(){this.G=this.G&-256|(oc(this)?255:0);this.A-=2},function(){this.G=
this.G&-256|this.S(this.C,this.B+(this.G&255)&65535);this.A-=this.Gk},Tg,Tg,Tg,Tg,Tg,Tg,Tg,Tg,function(){var a=this.L();(this.I=this.I-1&65535)&&this.W&this.$-1?(I(this,this.qa+a),this.A-=this.nk):this.A-=this.hi},function(){var a=this.L();!(this.I=this.I-1&65535)||this.W&this.$-1?this.A-=this.ji:(I(this,this.qa+a),this.A-=this.ii)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.qa+a),this.A-=this.mk):this.A-=this.hi},function(){var a=this.L();this.I?this.A-=this.ji:(I(this,this.qa+
a),this.A-=this.ii)},function(){var a=this.aa();this.G=this.G&-256|Ua(this.ma,a,this.Da-2);this.A-=this.bi},function(){var a=this.aa();this.G=Ua(this.ma,a,this.Da-1)|Ua(this.ma,a+1&65535,this.Da-2)<<8;this.A-=this.bi},function(){var a=this.aa();Wa(this.ma,a,this.G&255,this.Da-2);this.A-=this.qi},function(){var a=this.aa();Wa(this.ma,a,this.G&255,this.Da-2);Wa(this.ma,a+1&65535,this.G>>8,this.Da-2);this.A-=this.qi},function(){var a=this.K();K(this,this.qa);I(this,this.qa+a);this.A-=this.Mj},function(){var a=
this.K();I(this,this.qa+a);this.A-=this.ci},function(){Yb(this,this.K(),this.K());this.A-=this.ik},function(){var a=this.L();I(this,this.qa+a);this.A-=this.ci},function(){this.G=this.G&-256|Ua(this.ma,this.J,this.Da-1);this.A-=this.ai},function(){this.G=Ua(this.ma,this.J,this.Da-1)|Ua(this.ma,this.J+1&65535,this.Da-1)<<8;this.A-=this.ai},function(){Wa(this.ma,this.J,this.G&255,this.Da-1);this.A-=this.pi},function(){Wa(this.ma,this.J,this.G&255,this.Da-1);Wa(this.ma,this.J+1&65535,this.G>>8,this.Da-
1);this.A-=this.pi},Ug,Ug,function(){this.Y|=132;this.A-=this.tb},function(){this.Y|=68;this.A-=this.tb},function(){this.Ya|=4;this.A-=2;this.Ha&512||db(this)},function(){oc(this)?uc(this):yc(this);this.A-=2},function(){this.ob=-1;ug[this.aa()].call(this,Cd,td);0<=this.ob&&(this.G=this.ob)},function(){this.ob=-1;vg[this.aa()].call(this,Dd,td);0<=this.ob&&(this.G=this.ob,this.J=this.Cf)},function(){this.W&=~this.$;this.A-=2},function(){this.W|=this.$;this.A-=2},function(){this.Ha&=-513;this.A-=this.Kj},
function(){this.Ha|=512;this.Y|=4;this.A-=2},function(){this.Ha&=-1025;this.A-=2},function(){this.Ha|=1024;this.A-=2},function(){ug[this.aa()].call(this,Rb,td)},function(){vg[this.aa()].call(this,Tb,td)}];
function Q(a){w.call(this,"ChipSet",a,Q);this.Ca=a.model;this.Ca=void 0!==this.Ca?parseInt(this.Ca,10):Vg;this.Eb=0;var b=a.sw1;if(b)this.Eb=Wg(b,Xg|Yg.Zk);else if(b=a.fdrives||2,this.Eb|=Zg.Tg,b--,this.Eb|=(b&3)<<Zg.Ke,b=a.monitor||(this.Ca<$g?"mono":"ega"),void 0!==ah[b])this.Eb|=ah[b]<<Yg.Ke;this.Gd=Wg(a.sw2||"11110000",0);this.nm=this.Ca==Vg?16:64;this.Ve=this.We=1;this.Ca>=$g&&(this.Ve=this.We=2);this.kg=a.scaleTimers||!1;this.Gn=a.rtcDate;this.qj=!1;a.sound&&window&&"webkitAudioContext"in window&&
(this.ih=new webkitAudioContext);this.reset();this.Pa()}z(w,Q);var Vg=5150,$g=5170,ah={none:0,tv:1,color:2,mono:3,ega:0},Zg={Tg:1,ONE:0,no:64,lo:128,Sn:192,Je:192,Ke:6},Xg=12,Yg={mo:16,Nn:32,Zk:48,Je:48,Ke:4};g=Q.prototype;
g.tb=function(a,b,c,d){switch(c){case "sw1":return this.oa[c]=d,bh(this,c,d,this.Eb,{0:this.Ca==Vg?"Bootable Floppy Drive":"Loop on POST",1:this.Ca==Vg?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ca==Vg)return this.oa[c]=d,bh(this,c,d,this.Gd,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.oa[c]=d,!0}return!1};
g.gc=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;this.Fa=a;this.Qa=D(a,"Keyboard");this.Fk=Math.round(c.cd/1193181);Ta(b,this,ch);Va(b,this,dh);this.Ca<$g?(Ta(b,this,eh),Va(b,this,fh)):(Ta(b,this,gh),Va(b,this,hh))};g.Rb=function(a,b){if(!b)if(!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};g.Jb=function(a){return a&&this.save?this.save():!0};
g.reset=function(a){var b;this.Gc=this.Eb;this.ge=this.Gd;ih(this);this.va=Array(this.Ve);for(b=0;b<this.Ve;b++)jh(this,b);this.ob=Array(this.We);kh(this,0,32);1<this.We&&kh(this,1,160);this.eh=void 0;this.Gb=Array(3);for(b=0;b<this.Gb.length;b++)lh(this,b);this.Ue=this.bh=this.fc=this.Xf=void 0;this.Wf=0;if(this.Ca>=$g){this.bb=16;this.Tc=0;this.kd=16;this.Rf=0;this.Md=160;512<=mh(this)&&(this.Md|=16);3==nh(this)&&(this.Md|=64);this.$g=3;this.Uf=0;this.Hb=Array(7);this.ne=0;a||(this.ka=Array(64));
oh(this,this.Gn);for(a=14;46>a;a++)void 0===this.ka[a]&&(this.ka[a]=0);this.ka[20]=this.Gc&(Yg.Je|2|Zg.Tg|Zg.Je);this.ka[16]=ph(this,0)<<4|ph(this,1);qh(this)}};
function oh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.Sb("CMOS date invalid ("+b+"), using "+c)):b&&a.Sb("CMOS date: "+c);a.ka[0]=c.getSeconds();a.ka[1]=0;a.ka[2]=c.getMinutes();a.ka[3]=0;a.ka[4]=c.getHours();a.ka[5]=0;a.ka[6]=c.getDay()+1;a.ka[7]=c.getDate();a.ka[8]=c.getMonth()+1;c=c.getFullYear();a.ka[9]=c%100;c/=100;a.ka[50]=c%10|c/10<<4;a.jf=-1;a.ka[10]=38;a.ka[11]=2;a.ka[12]=0;a.ka[13]=128}
function Q(a){w.call(this,"ChipSet",a,Q);this.Ca=a.model;this.Ca=void 0!==this.Ca?parseInt(this.Ca,10):Vg;this.Fb=0;var b=a.sw1;if(b)this.Fb=Wg(b,Xg|Yg.al);else if(b=a.fdrives||2,this.Fb|=Zg.Ug,b--,this.Fb|=(b&3)<<Zg.Le,b=a.monitor||(this.Ca<$g?"mono":"ega"),void 0!==ah[b])this.Fb|=ah[b]<<Yg.Le;this.Hd=Wg(a.sw2||"11110000",0);this.qm=this.Ca==Vg?16:64;this.We=this.Xe=1;this.Ca>=$g&&(this.We=this.Xe=2);this.lg=a.scaleTimers||!1;this.Jn=a.rtcDate;this.sj=!1;a.sound&&window&&"webkitAudioContext"in window&&
(this.jh=new webkitAudioContext);this.reset();this.Pa()}z(w,Q);var Vg=5150,$g=5170,ah={none:0,tv:1,color:2,mono:3,ega:0},Zg={Ug:1,ONE:0,qo:64,oo:128,Vn:192,Ke:192,Le:6},Xg=12,Yg={po:16,Qn:32,al:48,Ke:48,Le:4};g=Q.prototype;
g.vb=function(a,b,c,d){switch(c){case "sw1":return this.oa[c]=d,bh(this,c,d,this.Fb,{0:this.Ca==Vg?"Bootable Floppy Drive":"Loop on POST",1:this.Ca==Vg?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ca==Vg)return this.oa[c]=d,bh(this,c,d,this.Hd,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.oa[c]=d,!0}return!1};
g.ic=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;this.Fa=a;this.Qa=D(a,"Keyboard");this.Hk=Math.round(c.cd/1193181);Ta(b,this,ch);Va(b,this,dh);this.Ca<$g?(Ta(b,this,eh),Va(b,this,fh)):(Ta(b,this,gh),Va(b,this,hh))};g.Tb=function(a,b){if(!b)if(!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};g.Kb=function(a){return a&&this.save?this.save():!0};
g.reset=function(a){var b;this.Gc=this.Fb;this.he=this.Hd;ih(this);this.va=Array(this.We);for(b=0;b<this.We;b++)jh(this,b);this.pb=Array(this.Xe);kh(this,0,32);1<this.Xe&&kh(this,1,160);this.fh=void 0;this.Gb=Array(3);for(b=0;b<this.Gb.length;b++)lh(this,b);this.Ve=this.dh=this.hc=this.Yf=void 0;this.Xf=0;if(this.Ca>=$g){this.bb=16;this.Tc=0;this.kd=16;this.Sf=0;this.Nd=160;512<=mh(this)&&(this.Nd|=16);3==nh(this)&&(this.Nd|=64);this.ah=3;this.Vf=0;this.Hb=Array(7);this.oe=0;a||(this.ka=Array(64));
oh(this,this.Jn);for(a=14;46>a;a++)void 0===this.ka[a]&&(this.ka[a]=0);this.ka[20]=this.Gc&(Yg.Ke|2|Zg.Ug|Zg.Ke);this.ka[16]=ph(this,0)<<4|ph(this,1);qh(this)}};
function oh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.Ub("CMOS date invalid ("+b+"), using "+c)):b&&a.Ub("CMOS date: "+c);a.ka[0]=c.getSeconds();a.ka[1]=0;a.ka[2]=c.getMinutes();a.ka[3]=0;a.ka[4]=c.getHours();a.ka[5]=0;a.ka[6]=c.getDay()+1;a.ka[7]=c.getDate();a.ka[8]=c.getMonth()+1;c=c.getFullYear();a.ka[9]=c%100;c/=100;a.ka[50]=c%10|c/10<<4;a.kf=-1;a.ka[10]=38;a.ka[11]=2;a.ka[12]=0;a.ka[13]=128}
function qh(a){for(var b=0,c=16;46>c;c++)b+=a.ka[c];a.ka[47]=b&255;a.ka[46]=b>>8}
g.save=function(){var a=new H(this);a.set(0,[this.Eb,this.Gd,this.Gc,this.ge]);for(var b=[],c=0;c<this.va;c++){var d=[],e=this.va[c];d[0]=e.pd;d[1]=e.ah;d[2]=e.dj;d[3]=e.xb;for(var f=[],l=0;l<e.La.length;l++){var k=[],m=e.La[l];k[0]=m.bd;k[1]=m.Zi;k[2]=m.oc;k[3]=m.ub;k[4]=m.Ob;k[5]=m.mode;k[6]=m.yc;k[8]=m.Dn;k[9]=m.En;f[l]=k}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.ob.length;c++)d=[],e=this.ob[c],d[0]=e.qf,d[1]=e.Kd,d[2]=e.dd,d[3]=e.nd,d[4]=e.wb,d[5]=e.xc,d[6]=e.Nd,d[7]=e.Te,b[c]=d;a.set(2,
[b]);b=[];for(c=0;c<this.Gb.length;c++)d=[],e=this.Gb[c],d[0]=e.oc,d[1]=e.Cc,d[2]=e.Ob,d[3]=e.$e,d[4]=e.gj,d[5]=e.mode,d[6]=e.Cf,d[7]=e.sd,d[8]=e.Ud,d[9]=e.Jc,d[10]=e.ef,d[11]=e.qe,d[12]=e.Dd,b[c]=d;a.set(3,[this.eh,b]);a.set(4,[this.Xf,this.fc,this.bh,this.Ue,this.Wf]);this.Ca>=$g&&(a.set(5,[this.bb,this.Tc,this.kd,this.Rf,this.Md,this.$g]),a.set(6,[this.Uf,this.Hb,this.ne,this.ka,this.jf]));return a.data()};
g.restore=function(a){var b,c;b=a[0];this.Eb=b[0];this.Gd=b[1];this.Gc=b[2];this.ge=b[3];b=a[1];this.va=Array(this.Ve);for(c=0;c<this.Ve;c++)jh(this,c,1==b.length?b[0][c]:b);b=a[2];this.ob=Array(this.We);for(c=0;c<this.We;c++)kh(this,c,0===c?32:160,b[0][c]);b=a[3];this.eh=b[0];this.Gb=Array(3);for(c=0;c<this.Gb.length;c++)lh(this,c,b[1][c]);b=a[4];this.Xf=b[0];this.fc=b[1];this.bh=b[2];this.Ue=b[3];this.Wf=b[4];if(b=a[5])this.bb=b[0],this.Tc=b[1],this.kd=b[2],this.Rf=b[3],this.Md=b[4],this.$g=b[5];
if(b=a[6])this.Uf=b[0],this.Hb=b[1],this.ne=b[2],this.ka=b[3],this.jf=b[4],oh(this);return!0};function jh(a,b,c){a=a.va[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.pd=c[0];a.ah=c[1];a.dj=c[2];a.xb=c[3];a.um=b<<2;a.La=Array(4);for(b=0;b<a.La.length;b++)rh(a,b,c[4][b])}function rh(a,b,c){var d=a.La[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ea=a;d.vj=b;d.bd=c[0];d.Zi=c[1];d.oc=c[2];d.ub=c[3];d.Ob=c[4];d.mode=c[5];d.yc=c[6];sh(d,c[8],c[9])}
function sh(a,b,c,d){"string"==typeof b&&(b=Aa(b));b&&(a.bg=null,a.Dn=b.id,a.En=c,a.ag=b,a.Ch=b[c],a.Cg=d)}function kh(a,b,c,d){a=a.ob[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.so=b<<3;a.qf=d[0];a.Kd=d[1];a.dd=d[2];a.nd=d[3];a.wb=d[4];a.xc=d[5];a.Nd=d[6];a.Te=d[7]}
function lh(a,b,c){a=a.Gb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.oc=c[0];a.Cc=c[1];a.Ob=c[2];a.$e=c[3];a.gj=c[4];a.mode=c[5];a.Cf=c[6];a.sd=c[7];a.Ud=c[8];a.Jc=c[9];a.ef=c[10];a.qe=c[11];a.Dd=c[12]}function mh(a,b){return((((b?a.Eb:a.Gc)&12)>>2)+1)*a.nm+32*((b?a.Gd:a.ge)&15)}function th(a,b){var c=b?a.Eb:a.Gc;return a.Ca!=Vg||c&Zg.Tg?((c&Zg.Je)>>Zg.Ke)+1:0}function ph(a,b){return b<th(a)?a.Ca<$g?1:2:0}function nh(a,b){return((b?a.Eb:a.Gc)&Yg.Je)>>Yg.Ke}
function bh(a,b,c,d,e){for(var f="",l=1;8>=l;l++){var k="pcjs-bitCell";l||(k+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+l)+'" class="'+k+'" data-value="0">'+l+"</div>\n"}c.innerHTML=f;b=C(c,"pcjs-bitCell");c=null;for(l=0;l<b.length;l++)void 0!==e&&void 0!==e[l]&&(c=e[l]),c&&b[l].setAttribute("title",c),uh(b[l],d&1<<l?!1:!0),b[l].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");uh(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Eb=
a.Eb&~e|(c?0:e);break;case "sw2":a.Gd=a.Gd&~e|(c?0:e)}ih(a)}}(a,b[l])}function uh(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function ih(a){var b=a.oa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(mh(a,!0)+"Kb");d+=", "+c[nh(a,!0)]+" Monitor";d+=", "+th(a,!0)+" Floppy Drives";if(void 0!==a.Gc&&a.Gc!=a.Eb||void 0!==a.ge&&a.ge!=a.Gd)d+=" (Reset required)";b.innerHTML=d}}
function vh(a,b,c){a=a.va[b];c=a.La[c].ub[a.xb];a.xb^=1;return c}function wh(a,b,c,d){a=a.va[b];c=a.La[c];c.ub[a.xb]=c.Zi[a.xb]=d;a.xb^=1}function xh(a,b,c){a=a.va[b];c=a.La[c].Ob[a.xb];a.xb^=1;return c}function yh(a,b,c,d){a=a.va[b];c=a.La[c];c.Ob[a.xb]=c.oc[a.xb]=d;a.xb^=1}function zh(a,b){var c=a.va[b],d=c.pd|1;c.pd&=-16;return d}function Ah(a,b,c){a=a.va[b];b=c&3;a.pd=a.pd&~(16<<b)|(c&4)<<b+2;a.dj=c}function Bh(a,b,c){b=a.va[b];var d=c&3,e=b.La[d];e.bd=c&4?!0:!1;e.bd||Ch(a,b.um+d)}
function Dh(a,b,c){return a.va[b].La[c].yc}function Eh(a,b,c,d,e){sh(a.va[b>>2].La[b&3],c,d,e)}function Ch(a,b,c){b=a.va[b>>2].La[b&3];b.ag&&b.Ch&&b.Cg?(c&&(b.bg=c),b.bd||Ic(a,b,!0)):c&&c(!0)}
function Ic(a,b,c){c&&(b.count=b.Ob[1]<<8|b.Ob[0],b.Wk=b.mode&12,b.rj=b.Yc=!1);for(var d=!1;0<=b.count&&(c=b.yc<<16|b.ub[1]<<8|b.ub[0],4==b.Wk?(d=!0,function(c){b.Ch.call(b.ag,b.Cg,-1,function(f,l){0>f&&(b.rj||(b.rj=!0),f=255);b.bd||Pa(a.ma,c,f);(d=l)&&setTimeout(function(){Fh(b)||Ic(a,b)},0)})}(c)):8==b.Wk?(c=Na(a.ma,c),0>b.Ch.call(b.ag,b.Cg,c)&&(b.Yc=!0)):b.Yc=!0),!d&&!Fh(b););}
function Fh(a){if(!a.Yc&&0<=--a.count&&(a.mode&32?(a.ub[0]--,0>a.ub[0]&&(a.ub[0]=255,a.ub[1]--,0>a.ub[1]&&(a.ub[1]=255))):(a.ub[0]++,255<a.ub[0]&&(a.ub[0]=0,a.ub[1]++,255<a.ub[1]&&(a.ub[1]=0))),!a.bd))return!1;var b=a.ea;b.pd=b.pd&~(16<<a.vj)|1<<a.vj;a.mode&16||(a.bd=!0,a.ag=a.Cg=null);a.bg&&(a.bg(!a.Yc),a.bg=null);return!0}function Gh(a,b){var c=0,d=a.ob[b];if(void 0!==d.Te)switch(d.Te&3){case 2:c=d.wb;break;case 3:c=d.xc}return c}
function Hh(a,b,c){var d=a.ob[b];if(c&16)d.dd=0,d.Kd[d.dd++]=c,d.nd=0,d.Nd=7,d.wb=d.xc=0,d.Te=10;else if(c&8)d.Te=c;else{var e=c&224;if(e&32){var f=0;if(96==(e&96))f=1<<(c&7);else for(c=d.Nd+1;;){c&=7;e=1<<c;if(d.xc&e){f=e;break}if(c++==d.Nd)break}d.xc&f&&(d.xc&=~f,Ih(a,b))}else 192==e&&(d.Nd=c&7)}}function Jh(a,b,c){var d=a.ob[b];d.dd<d.Kd.length?(d.Kd[d.dd++]=c,2==d.dd&&d.Kd[0]&2&&d.dd++,3!=d.dd||d.Kd[0]&1||d.dd++):(d.nd=c,d=a.ia,d.Y|=4,Ih(a,b,b||253!=c?0:6))}
function Ih(a,b,c){b=a.ob[b];var d=((b.xc|b.nd)^255)&b.wb;a=a.ia;a.ga&&(a.Ya=d?a.Ya|1:a.Ya&-2);d&&c&&(b.qf=c)}function R(a,b,c){var d=b>>3,e=a.ob[d];e.wb|=1<<(b&7);e.qf=c||0;1==d&&(a.ob[0].wb|=4);Ih(a,d)}function Kh(a,b){var c=b>>3,d=a.ob[c],e=1<<(b&7);d.wb&e&&(d.wb&=~e,1!=c||d.wb||(a.ob[0].wb&=-5),Ih(a,c))}
function Gc(a,b){void 0===b&&(b=0);var c=-1,d=a.ob[b];if(d.qf)c=-2,d.qf--;else for(var e=d.wb&((d.xc|d.nd)^255),f=d.Nd+1;;){var f=f&7,l=1<<f;if(e&l){c=b||2!=f?d.Kd[1]+f:Gc(a,1);0<=c&&(d.xc|=l,d.wb&=~l);break}if(f++==d.Nd)break}return c}function Lh(a,b){var c=a.Gb[b];c.sd==c.Ud&&Mh(a,b);if(c.ef)return c.$e[c.sd++];Nh(a,b);return c.Ob[c.sd++]}
function Oh(a,b,c){var d=a.Gb[b];d.sd==d.Ud&&Mh(a,b);d.oc[d.sd++]=c;if(d.sd==d.Ud){d.qe&&0!=d.mode&&8!=d.mode||(d.ef=!1,d.Ob[0]=d.Cc[0]=d.oc[0],d.Ob[1]=d.Cc[1]=d.oc[1],d.Dd=jb(a.ia,a.kg),d.qe=!0,d.Jc=0!=d.mode,0==b&&Kh(a,0));2==b&&kb(a);if(0==b){var e=Ph(a,0);2048<=e&&(a.ia.ug=Math.round(65536/e))}0==b&&0==d.mode&&16==d.Cf&&(b=a.ia,b.qc&&(a=b.A-c*a.Fk,b.A-=a,b.Lc-=a))}}g.jm=function(){return null};
g.tn=function(a,b){this.eh=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var l=this.Gb[c];l.Cf=f;l.mode=e;l.gj=d;l.oc=[0,0];l.Ob=[0,0];l.$e=[0,0];l.Jc=!1;l.ef=!1;l.qe=!1;Mh(this,c);0==c&&Kh(this,0);2==c&&255==this.ob[0].nd&&77==this.fc&&(c=this.Gb[0],c.Cc[0]=c.oc[0],c.Cc[1]=c.oc[1],c.Dd=jb(this.ia,this.kg))}else Nh(this,c),d=this.Gb[c],d.$e[0]=d.Ob[0],d.$e[1]=d.Ob[1],d.ef=!0,Mh(this,c)}};function Ph(a,b){var c=a.Gb[b],d=c.oc[1]<<8|c.oc[0];d||(d=1==c.Ud?256:65536);return d}
function Mh(a,b){var c=a.Gb[b];c.sd=32==c.Cf?1:0;c.Ud=48==c.Cf?2:1}
function Nh(a,b,c){var d=a.Gb[b];if(d.qe&&(2!=b||a.fc&1)){var e=jb(a.ia,a.kg),f=(e-d.Dd)/a.Fk|0;0>f&&(d.Dd=e,f=0);var l=Ph(a,b),k=a.Gb[b],m=k.Cc[1]<<8|k.Cc[0];m||(m=1==k.Ud?256:65536);k=m-f;0==d.mode?(0>=k&&(k=0),k||(d.Jc=!0,d.qe=!1,b||R(a,0))):4==d.mode?(d.Jc=1!=k,0>=k&&(k=l+k,0>=k&&(k=l),d.Cc[0]=k&255,d.Cc[1]=k>>8,d.Dd=e,!b&&d.Jc&&R(a,0))):6==d.mode&&(k-=f,0>=k&&(d.Jc=!d.Jc,k=l+k,0>=k&&(k=l),d.Cc[0]=k&255,d.Cc[1]=k>>8,d.Dd=e,!b&&d.Jc&&R(a,0)));d.Ob[0]=k&255;d.Ob[1]=k>>8;c&&(a.Dd=0)}return d}
function lb(a,b){for(var c=0;c<a.Gb.length;c++)Nh(a,c,b);if(a.Ca>=$g){var c=0,d=a.ia.cd,e=jb(a.ia,a.kg);if(0<=a.jf&&(c=e-a.jf,Math.floor(c/d)&&60<=++a.ka[0]&&(a.ka[0]=0,60<=++a.ka[2]&&(a.ka[2]=0,24<=++a.ka[4])))){a.ka[4]=0;a.ka[6]=a.ka[6]%7+1;var f=a.ka[9],l=ja[a.ka[8]-1];28==l&&0===f%4&&(f%100||0===f%400)&&l++;++a.ka[7]>l&&(a.ka[7]=1,12<++a.ka[8]&&(a.ka[8]=1,a.ka[9]=(a.ka[9]+1)%100))}a.jf=e-c%d}}g.bm=function(){var a=this.Xf;this.Ue&16&&(this.fc&128?a=this.Gc:this.Qa&&(a=Uh(this.Qa)));return a};
g.mn=function(a,b){this.Xf=b};g.cm=function(){return this.fc};g.nn=function(a,b){Vh(this,b);this.Qa&&Wh(this.Qa,b&128?!1:!0,b&64?!0:!1)};function Vh(a,b){var c=!!(b&2),d=!!(a.fc&2);a.fc=b;c!=d&&kb(a,c)}g.dm=function(){var a=0,a=this.Ca==Vg?this.fc&4?a|this.ge&15:a|this.ge>>4&1:this.fc&8?a|this.Gc>>4:a|this.Gc&15;this.fc&1&&Nh(this,2).Jc&&(a=this.fc&2?a|32:a|16);return a};g.on=function(a,b){this.bh=b};g.em=function(){return this.Ue};g.pn=function(a,b){this.Ue=b};
g.sl=function(){var a=this.Rf;this.bb&=-258;var b=this.Qa&&Uh(this.Qa,!0);b&&Xh(this,b);return a};g.Gm=function(a,b){if(this.bb&8)switch(this.Tc){case 96:Yh(this,b);break;case 209:Zh(this,b);break;default:if(Yh(this,this.kd&-17),this.Qa){var c=-1;switch(b){case 255:c=250,$h(this.Qa)}Xh(this,c)}}this.Tc=b;this.bb&=-9};g.tl=function(){return this.fc&-209|(jb(this.ia)&64?16:0)};g.Hm=function(a,b){Vh(this,b)};g.ul=function(){var a=this.bb&255;this.bb&256&&(this.bb|=1,this.bb&=-257);return a};
g.Fm=function(a,b){this.Tc=b;this.bb|=8;var c=0;240<=this.Tc&&(c=this.Tc^15,this.Tc=240);switch(this.Tc){case 192:Xh(this,this.Md);break;case 173:Yh(this,this.kd|16);break;case 174:Yh(this,this.kd&-17);break;case 170:this.Qa&&ai(this.Qa,!0);Yh(this,this.kd|16);Xh(this,85);Zh(this,3);break;case 224:Xh(this,this.kd&16?0:1);break;case 240:c&1&&Xb(this.ia)}};function Yh(a,b){a.kd=b;a.bb=a.bb&-5|b&4;a.Qa&&Wh(a.Qa,!!(b&8),!(b&16))&&Xh(a,Uh(a.Qa,!0))}function Xh(a,b){0<=b&&(a.Rf=b,a.bb&=-2,a.bb|=256)}
function Zh(a,b){a.$g=b;Ja(a.ma,!!(b&2));b&1||Xb(a.ia)}g.Il=function(){return this.ne};g.Um=function(a,b){this.ne=b;this.Wf=b&128?0:128};g.Jl=function(){var a=this.ne&63;if(13>=a){var b=this.ka[a];if(10>a){var c=!1;4!=a&&5!=a||this.ka[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.ka[11]&4||(c&&128<b&&(b-=48),b=b%10|b/10<<4)}else 10==a&&(this.ka[a]^=128);a=b}else a=this.ka[a];return a};
g.Vm=function(a,b){var c=this.ne&63,d=this.ka,e;if(13>=c){if(e=b,10>c){var f=!1;this.ka[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12<e&&(e+=48),this.ka[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};g.$l=function(){return this.Uf};g.jn=function(a,b){this.Uf=b};g.ln=function(a,b){this.Wf=b};function Wg(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function kb(a,b){if(a.ih){void 0!==b?a.qj=b:b=a.qj&&a.ia&&a.ia.qc;var c=Math.round(1193181/Ph(a,2));if(20>c||2E4<c)b=!1;b?a.Oc?a.Oc.frequency.value=c:(a.Oc=a.ih.createOscillator(),a.Oc.type=1,a.Oc.connect(a.ih.destination),a.Oc.frequency.value=c,a.Oc.noteOn(0)):a.Oc&&(a.Oc.noteOff(0),a.Oc.disconnect(),delete a.Oc)}}
var ch={0:function(){return vh(this,0,0)},1:function(){return xh(this,0,0)},2:function(){return vh(this,0,1)},3:function(){return xh(this,0,1)},4:function(){return vh(this,0,2)},5:function(){return xh(this,0,2)},6:function(){return vh(this,0,3)},7:function(){return xh(this,0,3)},8:function(){return zh(this,0)},32:function(){return Gh(this,0)},33:function(){return this.ob[0].nd},64:function(){return Lh(this,0)},65:function(){return Lh(this,1)},66:function(){return Lh(this,2)},67:Q.prototype.jm,129:function(){return Dh(this,
0,2)},130:function(){return Dh(this,0,3)},131:function(){return Dh(this,0,1)},135:function(){return Dh(this,0,0)}},eh={96:Q.prototype.bm,97:Q.prototype.cm,98:Q.prototype.dm,99:Q.prototype.em},gh={96:Q.prototype.sl,97:Q.prototype.tl,100:Q.prototype.ul,112:Q.prototype.Il,113:Q.prototype.Jl,128:Q.prototype.$l,132:function(){return this.Hb[0]},133:function(){return this.Hb[1]},134:function(){return this.Hb[2]},136:function(){return this.Hb[3]},137:function(){return Dh(this,1,2)},138:function(){return Dh(this,
1,3)},139:function(){return Dh(this,1,1)},140:function(){return this.Hb[4]},141:function(){return this.Hb[5]},142:function(){return this.Hb[6]},143:function(){return Dh(this,1,0)},160:function(){return Gh(this,1)},161:function(){return this.ob[1].nd},192:function(){return vh(this,1,0)},194:function(){return xh(this,1,0)},196:function(){return vh(this,1,1)},198:function(){return xh(this,1,1)},200:function(){return vh(this,1,2)},202:function(){return xh(this,1,2)},204:function(){return vh(this,1,3)},
206:function(){return xh(this,1,3)},208:function(){return zh(this,1)}},dh={0:function(a,b){wh(this,0,0,b)},1:function(a,b){yh(this,0,0,b)},2:function(a,b){wh(this,0,1,b)},3:function(a,b){yh(this,0,1,b)},4:function(a,b){wh(this,0,2,b)},5:function(a,b){yh(this,0,2,b)},6:function(a,b){wh(this,0,3,b)},7:function(a,b){yh(this,0,3,b)},8:function(a,b){this.va[0].ah=b},9:function(a,b){Ah(this,0,b)},10:function(a,b){Bh(this,0,b)},11:function(a,b){this.va[0].La[b&3].mode=b},12:function(){this.va[0].xb=0},13:function(){for(var a=
this.va[0],b=0;b<a.La.length;b++)rh(a,b)},32:function(a,b){Hh(this,0,b)},33:function(a,b){Jh(this,0,b)},64:function(a,b){Oh(this,0,b)},65:function(a,b){Oh(this,1,b)},66:function(a,b){Oh(this,2,b)},67:Q.prototype.tn,129:function(a,b){this.va[0].La[2].yc=b},130:function(a,b){this.va[0].La[3].yc=b},131:function(a,b){this.va[0].La[1].yc=b},135:function(a,b){this.va[0].La[0].yc=b}},fh={96:Q.prototype.mn,97:Q.prototype.nn,98:Q.prototype.on,99:Q.prototype.pn,160:Q.prototype.ln},hh={96:Q.prototype.Gm,97:Q.prototype.Hm,
100:Q.prototype.Fm,112:Q.prototype.Um,113:Q.prototype.Vm,128:Q.prototype.jn,132:function(a,b){this.Hb[0]=b},133:function(a,b){this.Hb[1]=b},134:function(a,b){this.Hb[2]=b},136:function(a,b){this.Hb[3]=b},137:function(a,b){this.va[1].La[2].yc=b},138:function(a,b){this.va[1].La[3].yc=b},139:function(a,b){this.va[1].La[1].yc=b},140:function(a,b){this.Hb[4]=b},141:function(a,b){this.Hb[5]=b},142:function(a,b){this.Hb[6]=b},143:function(a,b){this.va[1].La[0].yc=b},160:function(a,b){Hh(this,1,b)},161:function(a,
b){Jh(this,1,b)},192:function(a,b){wh(this,1,0,b)},194:function(a,b){yh(this,1,0,b)},196:function(a,b){wh(this,1,1,b)},198:function(a,b){yh(this,1,1,b)},200:function(a,b){wh(this,1,2,b)},202:function(a,b){yh(this,1,2,b)},204:function(a,b){wh(this,1,3,b)},206:function(a,b){yh(this,1,3,b)},208:function(a,b){this.va[1].ah=b},210:function(a,b){Ah(this,1,b)},212:function(a,b){Bh(this,1,b)},214:function(a,b){this.va[1].La[b&3].mode=b},216:function(){this.va[1].xb=0},218:function(){for(var a=this.va[1],
b=0;b<a.La.length;b++)rh(a,b)}};v(function(){for(var a=C(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new Q(d);B(d,c);ih(d)}});function bi(a){w.call(this,"ROM",a,bi);this.jb=null;this.$i=a.addr;this.Og=a.size;this.al=a.alias;this.Df=a.file;this.wj=a.notify;if(this.Df){a=this.Df;var b=ea(this.Df);"json"!=b&&"hex"!=b&&(a=ka()+"/api/v1/dump?file="+this.Df+"&format=bytes&decimal=true");t(a,!0,null,this,bi.prototype.Am)}}z(w,bi);
bi.prototype.gc=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;ci(this)};bi.prototype.Rb=function(){this.Zg&&(this.Na&&this.Na.po(this.$i,this.Og,this.Zg),delete this.Zg);return!0};bi.prototype.Jb=function(){return!0};
bi.prototype.Am=function(a,b,c){if(c)this.xa("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.jb=e;else if(f)for(this.jb=Array(4*f.length),c=b=0;b<f.length;b++)this.jb[c++]=f[b]&255,this.jb[c++]=f[b]>>8&255,this.jb[c++]=f[b]>>16&255,this.jb[c++]=f[b]>>24&255;else this.jb=d;this.Zg=d.symbols;if(!this.jb.length){u("Empty ROM: "+a);return}if(1==this.jb.length){u(this.jb[0]);return}}catch(l){this.xa("ROM data error: "+
l.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.jb=Array(a.length),d=0;d<a.length;d++)this.jb[d]=parseInt(a[d],16);ci(this)}};function ci(a){if(!Da(a))if(!a.Df)a.Pa();else if(a.jb&&a.ma){if(a.jb.length!=a.Og)Ea(a,"ROM size (0x"+p(a.jb.length)+") does not match specified size (0x"+p(a.Og)+")");else if(di(a,a.$i)&&di(a,a.al)){if(a.wj){var b=Aa(a.wj,a.id);b&&("ega"==b.Ca&&ei(b,a.jb,[8752,12640],8),b.Pa())}delete a.jb}a.Pa()}}
function di(a,b){if(null==b)return!0;if(Ka(a.ma,b,a.Og,!0)){for(var c=0;c<a.jb.length;c++)Pa(a.ma,b+c,a.jb[c]);return!0}return!1}v(function(){for(var a=C(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new bi(d);B(d,c)}});function fi(a){w.call(this,"RAM",a,fi);this.Qf=a.addr;this.gd=a.size;this.kl=a.test;this.hl=!!this.gd;this.dg=!1}z(w,fi);fi.prototype.gc=function(a,b,c){this.ma=b;this.ia=c;this.Fa=a;this.ga=D(a,"ChipSet");this.Pa()};
fi.prototype.Rb=function(a,b){b||this.reset();return!0};fi.prototype.Jb=function(){return!0};
fi.prototype.reset=function(){if(!this.Qf&&!this.hl&&this.ga){var a=1024*mh(this.ga);this.gd&&a!=this.gd&&(Ma(this.ma,this.Qf,this.gd),this.dg=!1);this.gd=a}!this.dg&&this.gd&&Ka(this.ma,this.Qf,this.gd)&&(this.dg=!0,this.status(Math.floor(this.gd/1024)+"Kb"));if(this.dg){if(this.kl||Qa(this.ma,1138,4660),this.ga&&(a=this.ga,a.ka)){var b=1048576>this.Qf?21:23,c=a.ka[b]|a.ka[b+1]<<8,c=c+(this.gd>>10);a.ka[b]=c&255;a.ka[b+1]=c>>8;qh(a)}}else u("No RAM allocated")};
v(function(){for(var a=C(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new fi(d);B(d,c)}});function gi(a){w.call(this,"Keyboard",a,gi);this.Yg={};this.sm=250;this.tm=100;this.Pa()}z(w,gi);
g.save=function(){var a=new H(this);a.set(0,[this.Fb,this.Hd,this.Gc,this.he]);for(var b=[],c=0;c<this.va;c++){var d=[],e=this.va[c];d[0]=e.pd;d[1]=e.bh;d[2]=e.gj;d[3]=e.zb;for(var f=[],l=0;l<e.La.length;l++){var k=[],m=e.La[l];k[0]=m.bd;k[1]=m.bj;k[2]=m.pc;k[3]=m.wb;k[4]=m.Pb;k[5]=m.mode;k[6]=m.zc;k[8]=m.Gn;k[9]=m.Hn;f[l]=k}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.pb.length;c++)d=[],e=this.pb[c],d[0]=e.rf,d[1]=e.Ld,d[2]=e.dd,d[3]=e.nd,d[4]=e.yb,d[5]=e.yc,d[6]=e.Od,d[7]=e.Ue,b[c]=d;a.set(2,
[b]);b=[];for(c=0;c<this.Gb.length;c++)d=[],e=this.Gb[c],d[0]=e.pc,d[1]=e.Dc,d[2]=e.Pb,d[3]=e.af,d[4]=e.ij,d[5]=e.mode,d[6]=e.Df,d[7]=e.sd,d[8]=e.Vd,d[9]=e.Jc,d[10]=e.ff,d[11]=e.re,d[12]=e.Dd,b[c]=d;a.set(3,[this.fh,b]);a.set(4,[this.Yf,this.hc,this.dh,this.Ve,this.Xf]);this.Ca>=$g&&(a.set(5,[this.bb,this.Tc,this.kd,this.Sf,this.Nd,this.ah]),a.set(6,[this.Vf,this.Hb,this.oe,this.ka,this.kf]));return a.data()};
g.restore=function(a){var b,c;b=a[0];this.Fb=b[0];this.Hd=b[1];this.Gc=b[2];this.he=b[3];b=a[1];this.va=Array(this.We);for(c=0;c<this.We;c++)jh(this,c,1==b.length?b[0][c]:b);b=a[2];this.pb=Array(this.Xe);for(c=0;c<this.Xe;c++)kh(this,c,0===c?32:160,b[0][c]);b=a[3];this.fh=b[0];this.Gb=Array(3);for(c=0;c<this.Gb.length;c++)lh(this,c,b[1][c]);b=a[4];this.Yf=b[0];this.hc=b[1];this.dh=b[2];this.Ve=b[3];this.Xf=b[4];if(b=a[5])this.bb=b[0],this.Tc=b[1],this.kd=b[2],this.Sf=b[3],this.Nd=b[4],this.ah=b[5];
if(b=a[6])this.Vf=b[0],this.Hb=b[1],this.oe=b[2],this.ka=b[3],this.kf=b[4],oh(this);return!0};function jh(a,b,c){a=a.va[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.pd=c[0];a.bh=c[1];a.gj=c[2];a.zb=c[3];a.xm=b<<2;a.La=Array(4);for(b=0;b<a.La.length;b++)rh(a,b,c[4][b])}function rh(a,b,c){var d=a.La[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ea=a;d.xj=b;d.bd=c[0];d.bj=c[1];d.pc=c[2];d.wb=c[3];d.Pb=c[4];d.mode=c[5];d.zc=c[6];sh(d,c[8],c[9])}
function sh(a,b,c,d){"string"==typeof b&&(b=Aa(b));b&&(a.cg=null,a.Gn=b.id,a.Hn=c,a.bg=b,a.Dh=b[c],a.Eg=d)}function kh(a,b,c,d){a=a.pb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.vo=b<<3;a.rf=d[0];a.Ld=d[1];a.dd=d[2];a.nd=d[3];a.yb=d[4];a.yc=d[5];a.Od=d[6];a.Ue=d[7]}
function lh(a,b,c){a=a.Gb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.pc=c[0];a.Dc=c[1];a.Pb=c[2];a.af=c[3];a.ij=c[4];a.mode=c[5];a.Df=c[6];a.sd=c[7];a.Vd=c[8];a.Jc=c[9];a.ff=c[10];a.re=c[11];a.Dd=c[12]}function mh(a,b){return((((b?a.Fb:a.Gc)&12)>>2)+1)*a.qm+32*((b?a.Hd:a.he)&15)}function th(a,b){var c=b?a.Fb:a.Gc;return a.Ca!=Vg||c&Zg.Ug?((c&Zg.Ke)>>Zg.Le)+1:0}function ph(a,b){return b<th(a)?a.Ca<$g?1:2:0}function nh(a,b){return((b?a.Fb:a.Gc)&Yg.Ke)>>Yg.Le}
function bh(a,b,c,d,e){for(var f="",l=1;8>=l;l++){var k="pcjs-bitCell";l||(k+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+l)+'" class="'+k+'" data-value="0">'+l+"</div>\n"}c.innerHTML=f;b=C(c,"pcjs-bitCell");c=null;for(l=0;l<b.length;l++)void 0!==e&&void 0!==e[l]&&(c=e[l]),c&&b[l].setAttribute("title",c),uh(b[l],d&1<<l?!1:!0),b[l].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");uh(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Fb=
a.Fb&~e|(c?0:e);break;case "sw2":a.Hd=a.Hd&~e|(c?0:e)}ih(a)}}(a,b[l])}function uh(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function ih(a){var b=a.oa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(mh(a,!0)+"Kb");d+=", "+c[nh(a,!0)]+" Monitor";d+=", "+th(a,!0)+" Floppy Drives";if(void 0!==a.Gc&&a.Gc!=a.Fb||void 0!==a.he&&a.he!=a.Hd)d+=" (Reset required)";b.innerHTML=d}}
function vh(a,b,c){a=a.va[b];c=a.La[c].wb[a.zb];a.zb^=1;return c}function wh(a,b,c,d){a=a.va[b];c=a.La[c];c.wb[a.zb]=c.bj[a.zb]=d;a.zb^=1}function xh(a,b,c){a=a.va[b];c=a.La[c].Pb[a.zb];a.zb^=1;return c}function yh(a,b,c,d){a=a.va[b];c=a.La[c];c.Pb[a.zb]=c.pc[a.zb]=d;a.zb^=1}function zh(a,b){var c=a.va[b],d=c.pd|1;c.pd&=-16;return d}function Ah(a,b,c){a=a.va[b];b=c&3;a.pd=a.pd&~(16<<b)|(c&4)<<b+2;a.gj=c}function Bh(a,b,c){b=a.va[b];var d=c&3,e=b.La[d];e.bd=c&4?!0:!1;e.bd||Ch(a,b.xm+d)}
function Dh(a,b,c){return a.va[b].La[c].zc}function Eh(a,b,c,d,e){sh(a.va[b>>2].La[b&3],c,d,e)}function Ch(a,b,c){b=a.va[b>>2].La[b&3];b.bg&&b.Dh&&b.Eg?(c&&(b.cg=c),b.bd||Ic(a,b,!0)):c&&c(!0)}
function Ic(a,b,c){c&&(b.count=b.Pb[1]<<8|b.Pb[0],b.Yk=b.mode&12,b.tj=b.Yc=!1);for(var d=!1;0<=b.count&&(c=b.zc<<16|b.wb[1]<<8|b.wb[0],4==b.Yk?(d=!0,function(c){b.Dh.call(b.bg,b.Eg,-1,function(f,l){0>f&&(b.tj||(b.tj=!0),f=255);b.bd||Pa(a.ma,c,f);(d=l)&&setTimeout(function(){Fh(b)||Ic(a,b)},0)})}(c)):8==b.Yk?(c=Na(a.ma,c),0>b.Dh.call(b.bg,b.Eg,c)&&(b.Yc=!0)):b.Yc=!0),!d&&!Fh(b););}
function Fh(a){if(!a.Yc&&0<=--a.count&&(a.mode&32?(a.wb[0]--,0>a.wb[0]&&(a.wb[0]=255,a.wb[1]--,0>a.wb[1]&&(a.wb[1]=255))):(a.wb[0]++,255<a.wb[0]&&(a.wb[0]=0,a.wb[1]++,255<a.wb[1]&&(a.wb[1]=0))),!a.bd))return!1;var b=a.ea;b.pd=b.pd&~(16<<a.xj)|1<<a.xj;a.mode&16||(a.bd=!0,a.bg=a.Eg=null);a.cg&&(a.cg(!a.Yc),a.cg=null);return!0}function Gh(a,b){var c=0,d=a.pb[b];if(void 0!==d.Ue)switch(d.Ue&3){case 2:c=d.yb;break;case 3:c=d.yc}return c}
function Hh(a,b,c){var d=a.pb[b];if(c&16)d.dd=0,d.Ld[d.dd++]=c,d.nd=0,d.Od=7,d.yb=d.yc=0,d.Ue=10;else if(c&8)d.Ue=c;else{var e=c&224;if(e&32){var f=0;if(96==(e&96))f=1<<(c&7);else for(c=d.Od+1;;){c&=7;e=1<<c;if(d.yc&e){f=e;break}if(c++==d.Od)break}d.yc&f&&(d.yc&=~f,Ih(a,b))}else 192==e&&(d.Od=c&7)}}function Jh(a,b,c){var d=a.pb[b];d.dd<d.Ld.length?(d.Ld[d.dd++]=c,2==d.dd&&d.Ld[0]&2&&d.dd++,3!=d.dd||d.Ld[0]&1||d.dd++):(d.nd=c,d=a.ia,d.Y|=4,Ih(a,b,b||253!=c?0:6))}
function Ih(a,b,c){b=a.pb[b];var d=((b.yc|b.nd)^255)&b.yb;a=a.ia;a.ga&&(a.Ya=d?a.Ya|1:a.Ya&-2);d&&c&&(b.rf=c)}function R(a,b,c){var d=b>>3,e=a.pb[d];e.yb|=1<<(b&7);e.rf=c||0;1==d&&(a.pb[0].yb|=4);Ih(a,d)}function Kh(a,b){var c=b>>3,d=a.pb[c],e=1<<(b&7);d.yb&e&&(d.yb&=~e,1!=c||d.yb||(a.pb[0].yb&=-5),Ih(a,c))}
function Gc(a,b){void 0===b&&(b=0);var c=-1,d=a.pb[b];if(d.rf)c=-2,d.rf--;else for(var e=d.yb&((d.yc|d.nd)^255),f=d.Od+1;;){var f=f&7,l=1<<f;if(e&l){c=b||2!=f?d.Ld[1]+f:Gc(a,1);0<=c&&(d.yc|=l,d.yb&=~l);break}if(f++==d.Od)break}return c}function Lh(a,b){var c=a.Gb[b];c.sd==c.Vd&&Mh(a,b);if(c.ff)return c.af[c.sd++];Nh(a,b);return c.Pb[c.sd++]}
function Oh(a,b,c){var d=a.Gb[b];d.sd==d.Vd&&Mh(a,b);d.pc[d.sd++]=c;if(d.sd==d.Vd){d.re&&0!=d.mode&&8!=d.mode||(d.ff=!1,d.Pb[0]=d.Dc[0]=d.pc[0],d.Pb[1]=d.Dc[1]=d.pc[1],d.Dd=jb(a.ia,a.lg),d.re=!0,d.Jc=0!=d.mode,0==b&&Kh(a,0));2==b&&kb(a);if(0==b){var e=Ph(a,0);2048<=e&&(a.ia.vg=Math.round(65536/e))}0==b&&0==d.mode&&16==d.Df&&(b=a.ia,b.rc&&(a=b.A-c*a.Hk,b.A-=a,b.Lc-=a))}}g.mm=function(){return null};
g.wn=function(a,b){this.fh=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var l=this.Gb[c];l.Df=f;l.mode=e;l.ij=d;l.pc=[0,0];l.Pb=[0,0];l.af=[0,0];l.Jc=!1;l.ff=!1;l.re=!1;Mh(this,c);0==c&&Kh(this,0);2==c&&255==this.pb[0].nd&&77==this.hc&&(c=this.Gb[0],c.Dc[0]=c.pc[0],c.Dc[1]=c.pc[1],c.Dd=jb(this.ia,this.lg))}else Nh(this,c),d=this.Gb[c],d.af[0]=d.Pb[0],d.af[1]=d.Pb[1],d.ff=!0,Mh(this,c)}};function Ph(a,b){var c=a.Gb[b],d=c.pc[1]<<8|c.pc[0];d||(d=1==c.Vd?256:65536);return d}
function Mh(a,b){var c=a.Gb[b];c.sd=32==c.Df?1:0;c.Vd=48==c.Df?2:1}
function Nh(a,b,c){var d=a.Gb[b];if(d.re&&(2!=b||a.hc&1)){var e=jb(a.ia,a.lg),f=(e-d.Dd)/a.Hk|0;0>f&&(d.Dd=e,f=0);var l=Ph(a,b),k=a.Gb[b],m=k.Dc[1]<<8|k.Dc[0];m||(m=1==k.Vd?256:65536);k=m-f;0==d.mode?(0>=k&&(k=0),k||(d.Jc=!0,d.re=!1,b||R(a,0))):4==d.mode?(d.Jc=1!=k,0>=k&&(k=l+k,0>=k&&(k=l),d.Dc[0]=k&255,d.Dc[1]=k>>8,d.Dd=e,!b&&d.Jc&&R(a,0))):6==d.mode&&(k-=f,0>=k&&(d.Jc=!d.Jc,k=l+k,0>=k&&(k=l),d.Dc[0]=k&255,d.Dc[1]=k>>8,d.Dd=e,!b&&d.Jc&&R(a,0)));d.Pb[0]=k&255;d.Pb[1]=k>>8;c&&(a.Dd=0)}return d}
function lb(a,b){for(var c=0;c<a.Gb.length;c++)Nh(a,c,b);if(a.Ca>=$g){var c=0,d=a.ia.cd,e=jb(a.ia,a.lg);if(0<=a.kf&&(c=e-a.kf,Math.floor(c/d)&&60<=++a.ka[0]&&(a.ka[0]=0,60<=++a.ka[2]&&(a.ka[2]=0,24<=++a.ka[4])))){a.ka[4]=0;a.ka[6]=a.ka[6]%7+1;var f=a.ka[9],l=ja[a.ka[8]-1];28==l&&0===f%4&&(f%100||0===f%400)&&l++;++a.ka[7]>l&&(a.ka[7]=1,12<++a.ka[8]&&(a.ka[8]=1,a.ka[9]=(a.ka[9]+1)%100))}a.kf=e-c%d}}g.em=function(){var a=this.Yf;this.Ve&16&&(this.hc&128?a=this.Gc:this.Qa&&(a=Uh(this.Qa)));return a};
g.pn=function(a,b){this.Yf=b};g.fm=function(){return this.hc};g.qn=function(a,b){Vh(this,b);this.Qa&&Wh(this.Qa,b&128?!1:!0,b&64?!0:!1)};function Vh(a,b){var c=!!(b&2),d=!!(a.hc&2);a.hc=b;c!=d&&kb(a,c)}g.gm=function(){var a=0,a=this.Ca==Vg?this.hc&4?a|this.he&15:a|this.he>>4&1:this.hc&8?a|this.Gc>>4:a|this.Gc&15;this.hc&1&&Nh(this,2).Jc&&(a=this.hc&2?a|32:a|16);return a};g.rn=function(a,b){this.dh=b};g.hm=function(){return this.Ve};g.sn=function(a,b){this.Ve=b};
g.vl=function(){var a=this.Sf;this.bb&=-258;var b=this.Qa&&Uh(this.Qa,!0);b&&Xh(this,b);return a};g.Jm=function(a,b){if(this.bb&8)switch(this.Tc){case 96:Yh(this,b);break;case 209:Zh(this,b);break;default:if(Yh(this,this.kd&-17),this.Qa){var c=-1;switch(b){case 255:c=250,$h(this.Qa)}Xh(this,c)}}this.Tc=b;this.bb&=-9};g.wl=function(){return this.hc&-209|(jb(this.ia)&64?16:0)};g.Km=function(a,b){Vh(this,b)};g.xl=function(){var a=this.bb&255;this.bb&256&&(this.bb|=1,this.bb&=-257);return a};
g.Im=function(a,b){this.Tc=b;this.bb|=8;var c=0;240<=this.Tc&&(c=this.Tc^15,this.Tc=240);switch(this.Tc){case 192:Xh(this,this.Nd);break;case 173:Yh(this,this.kd|16);break;case 174:Yh(this,this.kd&-17);break;case 170:this.Qa&&ai(this.Qa,!0);Yh(this,this.kd|16);Xh(this,85);Zh(this,3);break;case 224:Xh(this,this.kd&16?0:1);break;case 240:c&1&&Xb(this.ia)}};function Yh(a,b){a.kd=b;a.bb=a.bb&-5|b&4;a.Qa&&Wh(a.Qa,!!(b&8),!(b&16))&&Xh(a,Uh(a.Qa,!0))}function Xh(a,b){0<=b&&(a.Sf=b,a.bb&=-2,a.bb|=256)}
function Zh(a,b){a.ah=b;Ja(a.ma,!!(b&2));b&1||Xb(a.ia)}g.Ll=function(){return this.oe};g.Xm=function(a,b){this.oe=b;this.Xf=b&128?0:128};g.Ml=function(){var a=this.oe&63;if(13>=a){var b=this.ka[a];if(10>a){var c=!1;4!=a&&5!=a||this.ka[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.ka[11]&4||(c&&128<b&&(b-=48),b=b%10|b/10<<4)}else 10==a&&(this.ka[a]^=128);a=b}else a=this.ka[a];return a};
g.Ym=function(a,b){var c=this.oe&63,d=this.ka,e;if(13>=c){if(e=b,10>c){var f=!1;this.ka[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12<e&&(e+=48),this.ka[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};g.cm=function(){return this.Vf};g.mn=function(a,b){this.Vf=b};g.on=function(a,b){this.Xf=b};function Wg(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function kb(a,b){if(a.jh){void 0!==b?a.sj=b:b=a.sj&&a.ia&&a.ia.rc;var c=Math.round(1193181/Ph(a,2));if(20>c||2E4<c)b=!1;b?a.Oc?a.Oc.frequency.value=c:(a.Oc=a.jh.createOscillator(),a.Oc.type=1,a.Oc.connect(a.jh.destination),a.Oc.frequency.value=c,a.Oc.noteOn(0)):a.Oc&&(a.Oc.noteOff(0),a.Oc.disconnect(),delete a.Oc)}}
var ch={0:function(){return vh(this,0,0)},1:function(){return xh(this,0,0)},2:function(){return vh(this,0,1)},3:function(){return xh(this,0,1)},4:function(){return vh(this,0,2)},5:function(){return xh(this,0,2)},6:function(){return vh(this,0,3)},7:function(){return xh(this,0,3)},8:function(){return zh(this,0)},32:function(){return Gh(this,0)},33:function(){return this.pb[0].nd},64:function(){return Lh(this,0)},65:function(){return Lh(this,1)},66:function(){return Lh(this,2)},67:Q.prototype.mm,129:function(){return Dh(this,
0,2)},130:function(){return Dh(this,0,3)},131:function(){return Dh(this,0,1)},135:function(){return Dh(this,0,0)}},eh={96:Q.prototype.em,97:Q.prototype.fm,98:Q.prototype.gm,99:Q.prototype.hm},gh={96:Q.prototype.vl,97:Q.prototype.wl,100:Q.prototype.xl,112:Q.prototype.Ll,113:Q.prototype.Ml,128:Q.prototype.cm,132:function(){return this.Hb[0]},133:function(){return this.Hb[1]},134:function(){return this.Hb[2]},136:function(){return this.Hb[3]},137:function(){return Dh(this,1,2)},138:function(){return Dh(this,
1,3)},139:function(){return Dh(this,1,1)},140:function(){return this.Hb[4]},141:function(){return this.Hb[5]},142:function(){return this.Hb[6]},143:function(){return Dh(this,1,0)},160:function(){return Gh(this,1)},161:function(){return this.pb[1].nd},192:function(){return vh(this,1,0)},194:function(){return xh(this,1,0)},196:function(){return vh(this,1,1)},198:function(){return xh(this,1,1)},200:function(){return vh(this,1,2)},202:function(){return xh(this,1,2)},204:function(){return vh(this,1,3)},
206:function(){return xh(this,1,3)},208:function(){return zh(this,1)}},dh={0:function(a,b){wh(this,0,0,b)},1:function(a,b){yh(this,0,0,b)},2:function(a,b){wh(this,0,1,b)},3:function(a,b){yh(this,0,1,b)},4:function(a,b){wh(this,0,2,b)},5:function(a,b){yh(this,0,2,b)},6:function(a,b){wh(this,0,3,b)},7:function(a,b){yh(this,0,3,b)},8:function(a,b){this.va[0].bh=b},9:function(a,b){Ah(this,0,b)},10:function(a,b){Bh(this,0,b)},11:function(a,b){this.va[0].La[b&3].mode=b},12:function(){this.va[0].zb=0},13:function(){for(var a=
this.va[0],b=0;b<a.La.length;b++)rh(a,b)},32:function(a,b){Hh(this,0,b)},33:function(a,b){Jh(this,0,b)},64:function(a,b){Oh(this,0,b)},65:function(a,b){Oh(this,1,b)},66:function(a,b){Oh(this,2,b)},67:Q.prototype.wn,129:function(a,b){this.va[0].La[2].zc=b},130:function(a,b){this.va[0].La[3].zc=b},131:function(a,b){this.va[0].La[1].zc=b},135:function(a,b){this.va[0].La[0].zc=b}},fh={96:Q.prototype.pn,97:Q.prototype.qn,98:Q.prototype.rn,99:Q.prototype.sn,160:Q.prototype.on},hh={96:Q.prototype.Jm,97:Q.prototype.Km,
100:Q.prototype.Im,112:Q.prototype.Xm,113:Q.prototype.Ym,128:Q.prototype.mn,132:function(a,b){this.Hb[0]=b},133:function(a,b){this.Hb[1]=b},134:function(a,b){this.Hb[2]=b},136:function(a,b){this.Hb[3]=b},137:function(a,b){this.va[1].La[2].zc=b},138:function(a,b){this.va[1].La[3].zc=b},139:function(a,b){this.va[1].La[1].zc=b},140:function(a,b){this.Hb[4]=b},141:function(a,b){this.Hb[5]=b},142:function(a,b){this.Hb[6]=b},143:function(a,b){this.va[1].La[0].zc=b},160:function(a,b){Hh(this,1,b)},161:function(a,
b){Jh(this,1,b)},192:function(a,b){wh(this,1,0,b)},194:function(a,b){yh(this,1,0,b)},196:function(a,b){wh(this,1,1,b)},198:function(a,b){yh(this,1,1,b)},200:function(a,b){wh(this,1,2,b)},202:function(a,b){yh(this,1,2,b)},204:function(a,b){wh(this,1,3,b)},206:function(a,b){yh(this,1,3,b)},208:function(a,b){this.va[1].bh=b},210:function(a,b){Ah(this,1,b)},212:function(a,b){Bh(this,1,b)},214:function(a,b){this.va[1].La[b&3].mode=b},216:function(){this.va[1].zb=0},218:function(){for(var a=this.va[1],
b=0;b<a.La.length;b++)rh(a,b)}};v(function(){for(var a=C(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new Q(d);B(d,c);ih(d)}});function bi(a){w.call(this,"ROM",a,bi);this.kb=null;this.cj=a.addr;this.Pg=a.size;this.cl=a.alias;this.Ef=a.file;this.yj=a.notify;if(this.Ef){a=this.Ef;var b=ea(this.Ef);"json"!=b&&"hex"!=b&&(a=ka()+"/api/v1/dump?file="+this.Ef+"&format=bytes&decimal=true");t(a,!0,null,this,bi.prototype.Dm)}}z(w,bi);
bi.prototype.ic=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;ci(this)};bi.prototype.Tb=function(){this.$g&&(this.Na&&this.Na.so(this.cj,this.Pg,this.$g),delete this.$g);return!0};bi.prototype.Kb=function(){return!0};
bi.prototype.Dm=function(a,b,c){if(c)this.xa("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.kb=e;else if(f)for(this.kb=Array(4*f.length),c=b=0;b<f.length;b++)this.kb[c++]=f[b]&255,this.kb[c++]=f[b]>>8&255,this.kb[c++]=f[b]>>16&255,this.kb[c++]=f[b]>>24&255;else this.kb=d;this.$g=d.symbols;if(!this.kb.length){u("Empty ROM: "+a);return}if(1==this.kb.length){u(this.kb[0]);return}}catch(l){this.xa("ROM data error: "+
l.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.kb=Array(a.length),d=0;d<a.length;d++)this.kb[d]=parseInt(a[d],16);ci(this)}};function ci(a){if(!Da(a))if(!a.Ef)a.Pa();else if(a.kb&&a.ma){if(a.kb.length!=a.Pg)Ea(a,"ROM size (0x"+p(a.kb.length)+") does not match specified size (0x"+p(a.Pg)+")");else if(di(a,a.cj)&&di(a,a.cl)){if(a.yj){var b=Aa(a.yj,a.id);b&&("ega"==b.Ca&&ei(b,a.kb,[8752,12640],8),b.Pa())}delete a.kb}a.Pa()}}
function di(a,b){if(null==b)return!0;if(Ka(a.ma,b,a.Pg,!0)){for(var c=0;c<a.kb.length;c++)Pa(a.ma,b+c,a.kb[c]);return!0}return!1}v(function(){for(var a=C(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new bi(d);B(d,c)}});function fi(a){w.call(this,"RAM",a,fi);this.Rf=a.addr;this.gd=a.size;this.nl=a.test;this.kl=!!this.gd;this.eg=!1}z(w,fi);fi.prototype.ic=function(a,b,c){this.ma=b;this.ia=c;this.Fa=a;this.ga=D(a,"ChipSet");this.Pa()};
fi.prototype.Tb=function(a,b){b||this.reset();return!0};fi.prototype.Kb=function(){return!0};
fi.prototype.reset=function(){if(!this.Rf&&!this.kl&&this.ga){var a=1024*mh(this.ga);this.gd&&a!=this.gd&&(Ma(this.ma,this.Rf,this.gd),this.eg=!1);this.gd=a}!this.eg&&this.gd&&Ka(this.ma,this.Rf,this.gd)&&(this.eg=!0,this.status(Math.floor(this.gd/1024)+"Kb"));if(this.eg){if(this.nl||Qa(this.ma,1138,4660),this.ga&&(a=this.ga,a.ka)){var b=1048576>this.Rf?21:23,c=a.ka[b]|a.ka[b+1]<<8,c=c+(this.gd>>10);a.ka[b]=c&255;a.ka[b+1]=c>>8;qh(a)}}else u("No RAM allocated")};
v(function(){for(var a=C(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new fi(d);B(d,c)}});function gi(a){w.call(this,"Keyboard",a,gi);this.Zg={};this.vm=250;this.wm=100;this.Pa()}z(w,gi);
var hi={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,backspace:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,squote:40,bquote:41,lshift:42,bslash:43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,rshift:54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,home:71,"up-arrow":72,"page-up":73,"num-minus":74,
"left-arrow":75,center:76,"right-arrow":77,"num-plus":78,end:79,"down-arrow":80,"page-down":81,ins:82,del:83},ii={tab:9,esc:27,rshift:224,lshift:240,ctrl:241,alt:242,"caps-lock":244,f1:336,f2:337,f3:338,f4:339,f5:340,f6:341,f7:342,f8:343,f9:344,f10:345,"left-arrow":261,"up-arrow":262,"right-arrow":263,"down-arrow":264,"ctrl-c":3,"ctrl-break":254,"ctrl-alt-del":255},S=[];S[32]=57;S[49]=2;S[33]=61442;S[50]=3;S[64]=61443;S[51]=4;S[35]=61444;S[52]=5;S[36]=61445;S[53]=6;S[37]=61446;S[54]=7;S[94]=61447;
S[55]=8;S[38]=61448;S[56]=9;S[42]=61449;S[57]=10;S[40]=61450;S[48]=11;S[41]=61451;S[45]=12;S[95]=61452;S[61]=13;S[43]=61453;S[113]=16;S[81]=61456;S[119]=17;S[87]=61457;S[101]=18;S[69]=61458;S[114]=19;S[82]=61459;S[116]=20;S[84]=61460;S[121]=21;S[89]=61461;S[117]=22;S[85]=61462;S[105]=23;S[73]=61463;S[111]=24;S[79]=61464;S[112]=25;S[80]=61465;S[91]=26;S[123]=61466;S[93]=27;S[125]=61467;S[97]=30;S[65]=61470;S[115]=31;S[83]=61471;S[100]=32;S[68]=61472;S[102]=33;S[70]=61473;S[103]=34;S[71]=61474;
S[104]=35;S[72]=61475;S[106]=36;S[74]=61476;S[107]=37;S[75]=61477;S[108]=38;S[76]=61478;S[59]=39;S[58]=61479;S[39]=40;S[34]=61480;S[96]=41;S[126]=61481;S[92]=43;S[124]=61483;S[122]=44;S[90]=61484;S[120]=45;S[88]=61485;S[99]=46;S[67]=61486;S[118]=47;S[86]=61487;S[98]=48;S[66]=61488;S[110]=49;S[78]=61489;S[109]=50;S[77]=61490;S[44]=51;S[60]=61491;S[46]=52;S[62]=61492;S[47]=53;S[63]=61493;S[8]=14;S[9]=15;S[13]=28;S[27]=1;S[240]=42;S[224]=54;S[241]=29;S[242]=56;S[244]=58;S[336]=59;S[337]=60;S[338]=61;
S[339]=62;S[340]=63;S[341]=64;S[342]=65;S[343]=66;S[344]=67;S[345]=68;S[261]=75;S[262]=72;S[263]=77;S[264]=80;S[254]=61766;S[255]=15921491;g=gi.prototype;
g.tb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.oa[a])switch(c){case "kbd":return this.oa[a]=d,d.onkeydown=function(a){return ji(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.wa&32?e.wa&=-33:b=e.wa&12?!1:!ki(e,a);return b},d.onkeyup=function(a){return ji(e,a,!1)},!0;default:if(void 0!==ii[c]&&"button"==b)return this.oa[a]=d,d.onclick=function(a,b,c){return function(){a.ia&&a.ia.Ee();return!ki(a,c)}}(this,c,ii[c]),!0;if(void 0!==hi[c])return this.oa[a]=
d,b=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]),c=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;this.Fa=a;this.ga=D(a,"ChipSet")};g.Pa=function(){this.il=(this.rl=na("iOS"))||na("Android");return w.prototype.Pa.call(this)};function $h(a){a.ec=[170];a.ga&&R(a.ga,1,4)}
function Wh(a,b,c){var d=!1;a.th!==c&&(a.th=a.yh=c);a.ig!==b&&(a.ig=b)&&!a.yh&&ai(a);a.ig&&a.yh&&($h(a),a.yh=!1,d=!0);return d}function Uh(a,b){var c=0;a.ec.length&&(c=a.ec[0],b&&ai(a));return c}function ai(a,b){0<a.ec.length&&(b?a.ec=[]:(a.ec.shift(),0<a.ec.length&&a.ga&&R(a.ga,1)))}g.Rb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};g.Jb=function(a){return a&&this.save?this.save():!0};
g.reset=function(){this.xd();this.wa=0;this.ec=[];if(this.Pc)for(var a in this.Pc)null!==a.match(/^[0-9]+$/)||this.Pc[a]&&clearTimeout(this.Pc[a]);this.Pc=[];this.Jk=this.de=0};g.save=function(){var a=new H(this);a.set(0,this.Qi());return a.data()};g.restore=function(a){return this.xd(a[0])};g.xd=function(a){var b=0;void 0===a&&(a=[]);this.th=a[b++];this.ig=a[b];return!0};g.Qi=function(){var a=0,b=[];b[a++]=this.th;b[a]=this.ig;return b};
function li(a,b){var c=b&127,d=c==b;if(a.ec)if(20>a.ec.length){if(!(!d&&!a.Yg[c]||d&&a.Yg[c])){a.Yg[c]=d;a.ec.push(b);1==a.ec.length&&a.ga&&R(a.ga,1);for(var e in hi)if(hi[e]==c){(c=a.oa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.ec.length&&a.ec.push(255)}function mi(a,b){var c=b?a.tm:a.sm;a.ia&&a.ia.Kc&&(c/=a.ia.Kc);return c}function ni(a,b){!a.de||void 0!==b&&b==a.de||(clearTimeout(a.Pc[a.de]),oi(a,a.de,!1))}
function ji(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Jk=f);240==f+224?(a.wa&=-2,c&&(a.wa|=1),f+=224,e=!1):241==f+224?(a.wa&=-5,c&&(a.wa|=4),f+=224,e=!1):242==f+224?(a.wa&=-9,c&&(a.wa|=8),f+=224,e=!1):244==f+224?(a.wa&=-17,c&&(a.wa|=16),f+=224,d=ki(a,f)):91==f?(a.wa&=-33,c&&(a.wa|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.wa&12)&&(f=254),d=c?!ki(a,f):!1):void 0!==S[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.wa&=-33,a.il||f!=a.Jk||ni(a));void 0===d&&(d=!oi(a,f,c));return d}
function ki(a,b,c){var d=!1;ni(a,b);oi(a,b,!0)&&(c?oi(a,b,!1):(c=!1,a.Pc[b]&&(clearTimeout(a.Pc[b]),c=!0),c=mi(a,c),a.Pc[a.de=b]=setTimeout(function(a){return function(){oi(a,b,!1)}}(a),c)),d=!0);return d}
function oi(a,b,c){var d=!1;c||(a.Pc[b]=null,a.de==b&&(a.de=0));var e=S[b];void 0===e&&1<=b&&26>=b&&(e=S[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.wa&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.wa&17||(d=42):224==f?a.wa&18||(d=54):241==f?a.wa&4||(d=29):242==f&&(a.wa&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;c<b.length;c++)li(a,b[c]);d=!0}return d}
g.vb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.oa[a])switch(c){case "kbd":return this.oa[a]=d,d.onkeydown=function(a){return ji(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.wa&32?e.wa&=-33:b=e.wa&12?!1:!ki(e,a);return b},d.onkeyup=function(a){return ji(e,a,!1)},!0;default:if(void 0!==ii[c]&&"button"==b)return this.oa[a]=d,d.onclick=function(a,b,c){return function(){a.ia&&a.ia.Fe();return!ki(a,c)}}(this,c,ii[c]),!0;if(void 0!==hi[c])return this.oa[a]=
d,b=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]),c=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};g.ic=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;this.Fa=a;this.ga=D(a,"ChipSet")};g.Pa=function(){this.ll=(this.ul=na("iOS"))||na("Android");return w.prototype.Pa.call(this)};function $h(a){a.gc=[170];a.ga&&R(a.ga,1,4)}
function Wh(a,b,c){var d=!1;a.uh!==c&&(a.uh=a.zh=c);a.jg!==b&&(a.jg=b)&&!a.zh&&ai(a);a.jg&&a.zh&&($h(a),a.zh=!1,d=!0);return d}function Uh(a,b){var c=0;a.gc.length&&(c=a.gc[0],b&&ai(a));return c}function ai(a,b){0<a.gc.length&&(b?a.gc=[]:(a.gc.shift(),0<a.gc.length&&a.ga&&R(a.ga,1)))}g.Tb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};g.Kb=function(a){return a&&this.save?this.save():!0};
g.reset=function(){this.xd();this.wa=0;this.gc=[];if(this.Pc)for(var a in this.Pc)null!==a.match(/^[0-9]+$/)||this.Pc[a]&&clearTimeout(this.Pc[a]);this.Pc=[];this.Lk=this.ee=0};g.save=function(){var a=new H(this);a.set(0,this.Ti());return a.data()};g.restore=function(a){return this.xd(a[0])};g.xd=function(a){var b=0;void 0===a&&(a=[]);this.uh=a[b++];this.jg=a[b];return!0};g.Ti=function(){var a=0,b=[];b[a++]=this.uh;b[a]=this.jg;return b};
function li(a,b){var c=b&127,d=c==b;if(a.gc)if(20>a.gc.length){if(!(!d&&!a.Zg[c]||d&&a.Zg[c])){a.Zg[c]=d;a.gc.push(b);1==a.gc.length&&a.ga&&R(a.ga,1);for(var e in hi)if(hi[e]==c){(c=a.oa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.gc.length&&a.gc.push(255)}function mi(a,b){var c=b?a.wm:a.vm;a.ia&&a.ia.Kc&&(c/=a.ia.Kc);return c}function ni(a,b){!a.ee||void 0!==b&&b==a.ee||(clearTimeout(a.Pc[a.ee]),oi(a,a.ee,!1))}
function ji(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Lk=f);240==f+224?(a.wa&=-2,c&&(a.wa|=1),f+=224,e=!1):241==f+224?(a.wa&=-5,c&&(a.wa|=4),f+=224,e=!1):242==f+224?(a.wa&=-9,c&&(a.wa|=8),f+=224,e=!1):244==f+224?(a.wa&=-17,c&&(a.wa|=16),f+=224,d=ki(a,f)):91==f?(a.wa&=-33,c&&(a.wa|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.wa&12)&&(f=254),d=c?!ki(a,f):!1):void 0!==S[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.wa&=-33,a.ll||f!=a.Lk||ni(a));void 0===d&&(d=!oi(a,f,c));return d}
function ki(a,b,c){var d=!1;ni(a,b);oi(a,b,!0)&&(c?oi(a,b,!1):(c=!1,a.Pc[b]&&(clearTimeout(a.Pc[b]),c=!0),c=mi(a,c),a.Pc[a.ee=b]=setTimeout(function(a){return function(){oi(a,b,!1)}}(a),c)),d=!0);return d}
function oi(a,b,c){var d=!1;c||(a.Pc[b]=null,a.ee==b&&(a.ee=0));var e=S[b];void 0===e&&1<=b&&26>=b&&(e=S[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.wa&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.wa&17||(d=42):224==f?a.wa&18||(d=54):241==f?a.wa&4||(d=29):242==f&&(a.wa&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;c<b.length;c++)li(a,b[c]);d=!0}return d}
v(function(){for(var a=C(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new gi(d);B(d,c)}});
function T(a,b,c,d){w.call(this,"Video",a,T);this.Ca=a.model;this.Ac=0;"ega"==this.Ca&&(this.Qk=a.switches,this.Ac=a.memory||0);this.Nc=a.mode;if(void 0===this.Nc||void 0===U[this.Nc])this.Nc=pi;this.yg=a.charCols;this.Qh=a.charRows;if(void 0===this.yg||void 0===this.Qh)this.yg=U[this.Nc][0],this.Qh=U[this.Nc][1];this.Vc=a.screenWidth;this.ud=a.screenHeight;this.jl=a.scale;this.gl=12<=Math.round(this.Vc/this.yg);this.ll=a.touchScreen;this.qb=b;this.Bc=c;this.Vk=d;this.ab=this.bc=0;this.jd=[];this.Qc=
Array(16);this.uh=!1;var e=this;this.qb&&(this.qb.onfocus=function(){e.uh=!0},this.qb.onblur=function(){e.uh=!1});if(a=a.fontROM)"json"!=ea(a)&&(a=ka()+"/api/v1/dump?file="+a+"&format=bytes"),t(a,!0,null,this,this.Bm)}z(w,T);
var qi={2:{Sh:15700,Rh:208,Hi:85,Ii:96},3:{Sh:18432,Rh:364,Hi:85,Ii:96},4:{Sh:21850,Rh:364,Hi:85,Ii:96}},ri={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]},pi=7,U=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];U[pi]=[80,25,1,0,1];U[13]=[320,200,16];U[14]=[640,200,16];U[15]=[640,350,16];U[16]=[640,350,16];U[0]=U[1];U[2]=U[3];U[5]=U[4];var si=Array(5);si[0]=[0,0,0,255];si[1]=[127,192,127,255];
function T(a,b,c,d){w.call(this,"Video",a,T);this.Ca=a.model;this.Bc=0;"ega"==this.Ca&&(this.Sk=a.switches,this.Bc=a.memory||0);this.Nc=a.mode;if(void 0===this.Nc||void 0===U[this.Nc])this.Nc=pi;this.zg=a.charCols;this.Rh=a.charRows;if(void 0===this.zg||void 0===this.Rh)this.zg=U[this.Nc][0],this.Rh=U[this.Nc][1];this.Vc=a.screenWidth;this.ud=a.screenHeight;this.ml=a.scale;this.jl=12<=Math.round(this.Vc/this.zg);this.ol=a.touchScreen;this.rb=b;this.Cc=c;this.Xk=d;this.ab=this.dc=0;this.jd=[];this.Qc=
Array(16);this.vh=!1;var e=this;this.rb&&(this.rb.onfocus=function(){e.vh=!0},this.rb.onblur=function(){e.vh=!1});if(a=a.fontROM)"json"!=ea(a)&&(a=ka()+"/api/v1/dump?file="+a+"&format=bytes"),t(a,!0,null,this,this.Em)}z(w,T);
var qi={2:{Vh:15700,Uh:208,Ki:85,Li:96},3:{Vh:18432,Uh:364,Ki:85,Li:96},4:{Vh:21850,Uh:364,Ki:85,Li:96}},ri={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]},pi=7,U=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];U[pi]=[80,25,1,0,1];U[13]=[320,200,16];U[14]=[640,200,16];U[15]=[640,350,16];U[16]=[640,350,16];U[0]=U[1];U[2]=U[3];U[5]=U[4];var si=Array(5);si[0]=[0,0,0,255];si[1]=[127,192,127,255];
si[2]=[127,192,127,255];si[3]=[127,255,127,255];si[4]=[127,255,127,255];var ti=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],W=Array(16);W[0]=[0,0,0,255];W[1]=[0,0,170,255];W[2]=[0,170,0,255];W[3]=[0,170,170,255];W[4]=[170,0,0,255];W[5]=[170,0,170,255];W[6]=[170,85,0,255];W[7]=[170,170,170,255];W[8]=[85,85,85,255];W[9]=[85,85,255,255];W[10]=[85,255,85,255];W[11]=[85,255,255,255];W[12]=[255,85,85,255];W[13]=[255,85,255,255];W[14]=[255,255,85,255];W[15]=[255,255,255,255];
var ui=[2,4,6],vi=[3,5,7],wi=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],xi=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],X=[0];X[128]=1;X[32768]=2;X[32896]=3;X[8388608]=4;X[8388736]=5;X[8421376]=6;X[8421504]=7;X[2147483648]=8;X[2147483776]=9;X[2147516416]=10;X[2147516544]=11;X[2155872256]=12;X[2155872384]=13;X[2155905024]=14;X[2155905152]=15;
function yi(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=zi[b],f=a.Ad||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(Ai)];this.ng=b;this.ab=e[2];this.bc=e[3];this.Ac=d||e[4];65536<=this.Ac&&720896<=this.ab&&(this.bc=Math.min(this.Ac>>2,32768));this.Xb=c[0];this.hc=c[1];this.Ye=c[2];this.Gf=c[3];this.rc=c[4]&255;this.mg=c[4]>>8&255;this.Ub=c[5];this.Kh=Ai;if(5==b){this.Kh=Bi;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.Ac,Array(this.Ac>>2),771,0,4294967295,
0,4294967295,0,4294967295,0]);this.vd=b[0];this.Yd=b[1];this.Id=b[2];this.Ri=b[3];this.sg=b[4];this.Ah=b[5];this.ve=b[6];this.Of=b[7];this.Dh=b[8];this.Eh=b[9];this.ue=b[10];this.je=b[11];this.kb=b[12];d=this.Ac>>2;if((this.Ld=b[14])&&this.Ld.length<d){for(var e=this.Ld,l=0,k=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)k[l]=q,l+=2;l==d&&(l=1)}this.Ld=k}this.Ng(b[15]);this.Ci=b[16];this.Ua=b[17];this.Mc=b[18];this.Za=b[19];this.Bg=b[20];this.Cd=b[21];this.ae=b[22];this.Mh=b[23];this.Nh=
b[24]}f=qi[f]||qi[3];this.Oh=a.ia.cd/f.Sh|0;this.vm=this.Oh*f.Hi/100|0;this.Ej=this.Oh*f.Rh;this.xm=this.Ej*f.Ii/100|0;this.Th=null==c[7]?0:c[7]}}var Ai=18,Bi=25;function Ci(a){return this.uc(a)|this.uc(a+1)<<8}function Di(a,b){this.wc(a,b&255);this.wc(a+1,b>>8&255)}var Y=[,,function(a){a+=this.offset;return(this.ea.kb=this.la[a])>>this.ea.Ci&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.la[b]>>8:this.la[b])&255}];
Y[16]=function(a){a+=this.offset;a=this.la[a];for(var b=this.ea.Mh&this.ea.Nh,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.la[c]&~this.ea.Ua|(b|b<<8|b<<16|b<<24)&this.ea.Ua;d=d&this.ea.Za|this.ea.kb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Cd|this.ea.ae;d=d&this.ea.Ua|this.la[c]&~this.ea.Ua;d=d&this.ea.Za|this.ea.kb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Cd|this.ea.ae;d&=this.ea.kb;d=d&this.ea.Ua|this.la[c]&~this.ea.Ua;d=d&this.ea.Za|this.ea.kb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Cd|this.ea.ae;d|=this.ea.kb;d=d&this.ea.Ua|this.la[c]&~this.ea.Ua;d=d&this.ea.Za|this.ea.kb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Cd|this.ea.ae;d^=this.ea.kb;d=d&this.ea.Ua|this.la[c]&~this.ea.Ua;d=d&this.ea.Za|this.ea.kb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.Ua&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.la[d]&~c;c=c&this.ea.Za|this.ea.kb&~this.ea.Za;this.la[d]!=c&&(this.la[d]=c,this.Xa=!0)};
Y[4096]=function(a){a+=this.offset;var b=this.la[a]&~this.ea.Ua|this.ea.kb&this.ea.Ua;this.la[a]!=b&&(this.la[a]=b,this.Xa=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d&this.ea.Ua|this.la[c]&~this.ea.Ua,d=d&this.ea.Za|this.ea.kb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d&this.ea.kb,d=d&this.ea.Ua|this.la[c]&~this.ea.Ua,d=d&this.ea.Za|this.ea.kb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
Y[40960]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d|this.ea.kb,d=d&this.ea.Ua|this.la[c]&~this.ea.Ua,d=d&this.ea.Za|this.ea.kb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d^this.ea.kb,d=d&this.ea.Ua|this.la[c]&~this.ea.Ua,d=d&this.ea.Za|this.ea.kb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
function Ei(a){var b=[];if(void 0!==a.ng){b[0]=a.Xb;b[1]=a.hc;b[2]=a.Ye;b[3]=a.Gf;b[4]=a.rc|a.mg<<8;b[5]=a.Ub;if(5==a.ng){var c=[];c[0]=a.vd;c[1]=a.Yd;c[2]=a.Id;c[3]=a.Ri;c[4]=a.sg;c[5]=a.Ah;c[6]=a.ve;c[7]=a.Of;c[8]=a.Dh;c[9]=a.Eh;c[10]=a.ue;c[11]=a.je;c[12]=a.kb;c[13]=a.Ac;var d;a:if(d=a.Ld){var e=0,f=[];if(void 0!==d[0])for(var l=0;2>l;l++)for(var k=l;k<d.length;){for(var m=d[k],n=k+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-k>>1;f[e++]=m;k=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=a.Jh;c[16]=
a.Ci;c[17]=a.Ua;c[18]=a.Mc;c[19]=a.Za;c[20]=a.Bg;c[21]=a.Cd;c[22]=a.ae;c[23]=a.Mh;c[24]=a.Nh;b[6]=c}b[7]=a.Th}return b}yi.prototype.Ng=function(a){if(null!=a&&a!=this.Jh){var b=a&255,c=Y[b];c||b&1&&(c=Y[1]);var b=a&65280,d=Y[b];d||b&256&&(d=Y[256]);this.Qe||(this.Qe=[null,Ci,null,Di]);this.Qe[0]=c;this.Qe[2]=d;this.Jh=a}};var zi=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];g=T.prototype;
g.gc=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;Ta(b,this,Fi);Va(b,this,Gi);"ega"==this.Ca&&(Ta(b,this,Hi),Va(b,this,Ii));(this.Qa=D(a,"Keyboard"))&&this.qb&&this.Qa.tb("input",this.Vk?"textarea":"canvas","kbd",this.Vk||this.qb);this.Sf=9;(this.ga=D(a,"ChipSet"))&&this.Qk&&(this.Sf=Wg(this.Qk,this.Sf));this.Qa&&this.ll&&Ji(this)};g.tb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.oa[c]=d,d.onclick=function(){$a(e,!0)},!0}return!1};g.Ee=function(){this.qb&&this.qb.focus()};
function Ji(a){var b=a.qb;b&&!a.sh&&(b.addEventListener("touchstart",function(b){Ki(a,b)},!1),b.addEventListener("touchmove",function(b){Ki(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.sh=!0)}
function Ki(a,b){a.uh&&b.preventDefault();var c=0,d=0,e=a.qb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.Vc/a.qb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.Vc/3)|0;d=a.ud/a.qb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.ud/3)|0;1!=d?d?ki(a.Qa,264,!0):ki(a.Qa,262,!0):1!=c&&(c?ki(a.Qa,263,!0):ki(a.Qa,261,!0))}g.Rb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
g.Jb=function(a){return a&&this.save?this.save():!0};
g.reset=function(){var a=!0,b=0;this.ga&&(b=nh(this.ga));var c=!1;if(this.Ca)switch(this.Ca){case "ega":var c=!0,d=ri[this.Sf];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.Ad!==b&&(this.Ad=b,a=!0);this.za=null;this.zc=this.gh=new yi(this,1);this.Mb=this.$f=new yi(this,3);c?(this.ja=new yi(this,5,null,this.Ac),Li(this)):this.ja=new yi;Mi(this);this.zd=null;this.Nc=3==b?pi:3;this.Sd=this.sc=-1;this.Rd=0;Ni(this,this.Nc);if(this.za.ab&&a){a=this.za.ab+this.hh;for(b=this.za.ab;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.Ad?(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),Qa(this.ma,b,c|d<<8);$a(this,!0)}};function Li(a){a.ja.sg&1?(a.zc=a.gh,a.Mb=a.ja):(a.zc=a.ja,a.Mb=a.$f)}g.save=function(){var a=new H(this);a.set(0,Ei(this.gh));a.set(1,Ei(this.$f));a.set(2,[this.Ad,this.Nc,this.zd]);a.set(3,Ei(this.ja));return a.data()};
g.restore=function(a){var b=a[2];this.Ad=b[0];this.Nc=b[1];this.zd=b[2];this.za=null;this.zc=this.gh=new yi(this,1,a[0]);this.Mb=this.$f=new yi(this,3,a[1]);this.ja=new yi(this,5,a[3],this.Ac);this.ja.Xb&&Li(this);Mi(this);if(!Oi(this))return!1;Pi(this);return!0};
g.Bm=function(a,b,c){if(c)this.xa("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){u("Empty font ROM image: "+a);return}if(1==d.length){u(d[0]);return}if(8192==d.length)ei(this,d,[0,6144]);else{this.xa("Unrecognized font data length ("+d.length+")");return}}catch(e){this.xa("Font ROM data error: "+e.message);return}this.Pa()}};
function Qi(a,b){if(1==b)return a.Qc[0]=W[0],a.Qc[1]=W[7],a.Qc;if(2==b){var c=a.za.Ye;if(a.za===a.ja){var d=a.ja.Id[0],c=d&7;d&16&&(c|=8);18!=a.ja.Id[1]&&(c|=32)}a.Qc[0]=W[c&15];c=c&32?vi:ui;for(d=0;d<c.length;d++)a.Qc[d+1]=W[c[d]];return a.Qc}if(a.Mb===a.$f)return W;c=null!=a.ja.Id[15]?a.ja.Id:wi;for(d=0;d<a.Qc.length;d++){var e=c[d]||0;a.Qc[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.Qc}function ei(a,b,c,d){a.Pf=b;a.Xg=c;a.Vd=d}
function Mi(a){var b=!1;if(window&&a.Pf){var c=a.Vd?0:2048,d=a.Vd?a.Vd:9;Ri(a,1,a.Xg[0],c,d,14,a.Pf,si,ti)&&(b=!0);c=Qi(a);d=a.Vd?a.Vd:8;Ri(a,3,a.Xg[1],0,d,8,a.Pf,c)&&(b=!0);a.Vd&&Ri(a,5,a.Xg[0],0,a.Vd,14,a.Pf,c)&&(b=!0)}return b}function Ri(a,b,c,d,e,f,l,k,m){var n=!1;Si(a,b,c,d,e,f,l,k,m)&&(n=!0);a.gl&&Si(a,b<<1,c,d,e,f,l,k,m)&&(n=!0);return n}
function Si(a,b,c,d,e,f,l,k,m){var n=!1,q=b&1?0:1,s=a.jd[b];s||(s={Vb:e<<q,Wb:f<<q,ie:Array(k.length),Yi:k.slice(),Le:m,Vg:Array(k.length)});for(m=0;m<k.length;m++){var r=k[m],y=s.ie[m]?s.Yi[m]:[];if(r[0]!==y[0]||r[1]!==y[1]||r[2]!==y[2]){var n=s,y=m,M=q,V=c,aa=d,ba=e,gb=f,lc=l,jd=[0,0,0,0],mc=window.document.createElement("canvas");mc.width=n.Vb<<4;mc.height=n.Wb<<4;for(var Qh=mc.getContext("2d"),sa=void 0,sb=void 0,Ra=void 0,nc=8>gb||!aa?gb:8,kd=Qh.createImageData(n.Vb,n.Wb),sa=0;256>sa;sa++){for(Ra=
0;Ra<gb;Ra++)for(var Rj=n.Le&&y&1&&Ra>=gb-2,Sj=lc[Ra<nc?V+sa*nc+Ra:aa+sa*nc+Ra-nc],ld=0;ld<=M;ld++)for(sb=0;sb<ba;sb++){var Rh=sb<<M,Sh=(Ra<<M)+ld,Th=Rj||Sj&128>>(8<=sb&&176<=sa&&223>=sa?7:sb)?r:jd;Ti(kd,Rh,Sh,Th);M&&Ti(kd,Rh+1,Sh,Th)}Qh.putImageData(kd,(sa&15)*n.Vb,(sa>>4)*n.Wb)}n.ie[y]="#"+p(r[0],2)+p(r[1],2)+p(r[2],2);n.Yi[y]=r;n.Vg[y]=mc;n=!0}}a.jd[b]=s;return n}function Ui(a){0<a.Rd||0<=a.sc?0>a.Sd&&(a.Sd=0):a.Sd=-1}
function Pi(a){if(a.Ab){for(var b=10;15>=b;b++)if(null==a.za.Ub[b])return;var c=a.za.Ub[10],b=c&31,d=a.za.Ub[11]&31,e=a.za.Ub[9]&31,f=!1;a.za===a.ja&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Vi(a);else{c=a.za.Ub[15]+((a.za.Ub[14]&63)<<8);a.sc!=c&&(Vi(a),a.sc=c);d=d-b+1;if(a.Xk!=b||a.kj!=d)a.Xk=b,a.kj=d;a.td=e+1;Ui(a)}}}
function Vi(a){if(0<=a.sc){if(void 0!==a.Lb){var b=a.Lb[a.sc];if(b&131072){var b=b&-131073,c=a.sc%a.lb,d=Math.floor(a.sc/a.lb);a.Ab&&a.jd[a.Ab]&&(a.pe&&Wi(a,c,d,b,a.pe),Wi(a,c,d,b));a.Lb[a.sc]=b}}a.sc=-1}}
function Xi(a){var b;a=a.za;var c=a.je[5];if(null!=c){b=2;var d=512,e=a.je[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.Mc=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}g.fe=function(a){var b=this.za;null!=a&&b&&a!=b.Jh&&(b.Ng(a),this.ma.Ng(b.ab,b.bc,b.Qe))};
function Oi(a,b){var c,d=a.zd,e=a.za;if(e)if(1==e.ng)d=pi;else if(5==e.ng){var d=null,f=e.Ac>>2,l=32768<f?32768:f,k=e.je[6];if(null!=k){switch(k&12){case 0:e.ab=655360;e.bc=f;d=255;break;case 4:e.ab=655360;e.bc=f;d=3==a.Ad?15:16;break;case 8:e.ab=720896;e.bc=l;d=pi;break;case 12:e.ab=753664,e.bc=l,d=3==a.Ad?2:3}c=e.Of[1]&8;f=e.Ub[6]|(e.Ub[7]&1)<<8;255!=d&&(k&1?753664==e.ab?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Xi(a)}}else e.hc&8&&(e.hc&2?(d=e.hc&16?6:5,e.hc&4||(d-=1)):(d=e.hc&1?3:1,e.hc&4&&(d-=
1)));else a.zd=null,null==d&&(d=a.Nc);if(!Ni(a,d,b))return!1;a.fe(c);return!0}
function Ni(a,b,c){if(null!=b&&(b!=a.zd||c)){a.bl=0;a.zd=b;b=a.za||(b==pi?a.zc:a.Mb);if(b!=a.za||b.ab!=a.ab||b.bc!=a.bc){Vi(a);if(a.ab){if(!Ma(a.ma,a.ab,a.bc))return!1;a.za&&(a.za.Xb=!1)}a.za=b;b.Xb=!0;a.ab=b.ab;a.bc=b.bc;if(!Ka(a.ma,b.ab,b.bc,!1,b===a.ja?b:null))return!1}a.Ab=0;a.lb=a.yg;a.$b=a.Qh;a.Lh=U[pi][2];b=0;var d=U[a.zd];d&&(a.lb=d[0],a.$b=d[1],a.Lh=d[2],b=d[3]||0,a.Ab=d[4],4==a.Ad&&a.za===a.ja&&3==a.Ab&&(7==a.ja.Ub[9]?a.$b=43:a.Ab=5));a.Bj=a.lb*a.$b;a.vg=a.Bj/a.Lh;a.hh=(a.vg<<1)+b;a.ij=
b?a.hh+b>>1:0;13<=a.zd&&(a.vg<<=1);a.jd.length&&(a.Wc=Math.floor(a.Vc/a.lb),a.Xc=Math.floor(a.ud/a.$b),a.Ab?(b=a.jd[a.Ab],d=a.jd[a.Ab<<1],a.jl&&80==a.lb?d&&a.Wc>=3*d.Vb>>2&&(a.Ab<<=1,b=d):(d&&a.Wc>=d.Vb&&(a.Ab<<=1,b=d),b&&(a.Wc=b.Vb,a.Xc=b.Wb)),a.af=a.bf=0,b&&(a.af=a.lb*b.Vb,a.bf=a.$b*b.Wb)):(a.Wc=a.Xc=1,a.af=a.lb,a.bf=a.$b),a.pg=a.Bc.createImageData(a.af,a.bf),a.oe=window.document.createElement("canvas"),a.oe.width=a.af,a.oe.height=a.bf,a.pe=a.oe.getContext("2d"),a.Ui=a.Vi=0,a.kh=a.Vc,a.lh=a.ud,
b=a.Vc-a.lb*a.Wc,d=a.ud-a.$b*a.Xc,0<b&&(a.Ui=b>>1,a.kh-=b),0<d&&(a.Vi=d>>1,a.lh-=d),b||d)&&(a.Bc.fillStyle=a.qb.style.backgroundColor,a.Bc.fillRect(0,0,a.Vc,a.ud));!1!==c?$a(a,!0):Yi(a,!0)}return!0}function Ti(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Yi(a,b){var c;if(b){if(c=a.vg,void 0===a.Lb||a.Lb.length!=c)a.Lb=Array(c)}else{if(void 0===a.Lb)return;c=a.Lb.length}for(var d=0;d<c;d++)a.Lb[d]=-1;a.Rd=-1}
function Wi(a,b,c,d,e){var f=d&255,l=d>>8;d=l&15;var k=a.jd[a.Ab];k.Le&&(d=k.Le[d]);var m=l>>4&15;k.Le&&(m=k.Le[m]);e?(b*=k.Vb,c*=k.Wb,e.fillStyle=k.ie[m],e.fillRect(b,c,k.Vb,k.Wb)):(b=b*a.Wc+a.Ui,c=c*a.Xc+a.Vi,a.Bc.fillStyle=k.ie[m],a.Bc.fillRect(b,c,a.Wc,a.Xc));l&256&&(m=(f&15)*k.Vb,f=(f>>4)*k.Wb,e?e.drawImage(k.Vg[d],m,f,k.Vb,k.Wb,b,c,k.Vb,k.Wb):a.Bc.drawImage(k.Vg[d],m,f,k.Vb,k.Wb,b,c,a.Wc,a.Xc));l&512&&(f=a.Xk,l=a.kj,e?(a.td&&a.td!==k.Wb&&(f=Math.floor(f*k.Wb/a.td),l=Math.floor(l*k.Wb/a.td)),
e.fillStyle=k.ie[d],e.fillRect(b,c+f,k.Vb,l)):(a.td&&a.td!==a.Xc&&(f=Math.floor(f*a.Xc/a.td),l=Math.floor(l*a.Xc/a.td)),a.Bc.fillStyle=k.ie[d],a.Bc.fillRect(b,c+f,a.Wc,l)))}
function $a(a,b){if(a.zb){var c=!1;a.za&&(a.za===a.ja?a.ja.Yd&32&&(c=!0):a.za.hc&8&&(c=!0));if(c||b){if(b)Yi(a,!0);else if(void 0===a.Lb)return;var d=!1;!(b||++a.bl&15)&&0<=a.Sd&&(a.Sd++,d=!0);var e=0,f=a.Bj,c=a.za.ab,l=c+a.za.bc,k=(a.za.Ub[12]<<8)+a.za.Ub[13];a.Ab&&(k<<=1);var c=c+k,m=a.hh;c+m>l&&(m=l-c,0>m&&(m=0));l=c+m;if(k=!b){for(var k=a.ma,n=!0,q=c>>k.Ib;0<m&&q<k.ya.length;)k.ya[q].Xa&&(k.ya[q].Xa=n=!1,k.ya[q].mj=!0),m-=k.mc,q++;k=n}if(k){if(!d)return;if(!a.Rd){if(0>a.sc)return;e=a.sc;f=e+1}}if(a.Ab){if(a.jd[a.Ab]){d=
0;k=a.Rd=0;m=1048575;a.za.hc&32&&(k=32768,m&=~k,a.Sd&2||(m&=-65537));for(c+=e<<1;c<l&&e<f;)n=Oa(a.ma,c),n|=65536,n&k&&(a.Rd++,n&=m),e==a.sc&&(n|=a.Sd&1?131072:0),q=a.Lb[e],q!=n&&(Wi(a,e%a.lb,Math.floor(e/a.lb),n,a.pe),a.Lb[e]=n,d++),c+=2,e++;d&&a.pe&&a.Bc.drawImage(a.oe,0,0,a.af,a.bf,a.Ui,a.Vi,a.kh,a.lh);Ui(a)}}else if(a.ij){for(var f=l,s,r,e=c,l=a.Rd=0,d=a.Lh,k=16==d?65536:196608,m=16==d?1:2,n=Qi(a,m),y=q=0,M=a.lb,V=0,aa=a.$b,ba=0;e<f;){s=Oa(a.ma,e);r=a.Lb[l];if(r===s)q+=d;else{a.Lb[l]=s;s=s>>8|
(s&255)<<8;r=k;var gb=16;q<M&&(M=q);for(var lc=0;lc<d;lc++){var jd=(s&(r>>=m))>>(gb-=m);Ti(a.pg,q++,y,n[jd])}q>V&&(V=q);y<aa&&(aa=y);y>=ba&&(ba=y+1)}e+=2;l++;if(q>=a.lb){q=0;y+=2;if(y>a.$b)break;y==a.$b&&(y=1,e=c+a.ij)}}M<a.lb&&(a.pe.putImageData(a.pg,0,0,M,aa,V-M,ba-aa),a.Bc.drawImage(a.oe,0,0,a.lb,a.$b,0,0,a.Vc,a.ud))}else{f=l;e=a.Rd=0;l=Qi(a);d=a.za.Ld;m=k=0;n=a.lb;q=0;y=a.$b;for(M=0;c<f;){V=c++-a.ab;V=d[V];aa=a.Lb[e];if(aa===V)k+=8;else{a.Lb[e]=V;k<n&&(n=k);for(aa=0;8>aa;aa++)ba=V&2155905152,
0>ba&&(ba=-ba),ba=X[ba]||0,Ti(a.pg,k++,m,l[ba]),V<<=1;k>q&&(q=k);m<y&&(y=m);m>=M&&(M=m+1)}e++;if(k>=a.lb&&(k=0,++m>a.$b))break}n<a.lb&&(a.pe.putImageData(a.pg,0,0,n,y,q-n,M-y),a.Bc.drawImage(a.oe,0,0,a.lb,a.$b,0,0,a.Vc,a.ud))}}}}g.Xl=function(){return this.zc.rc};g.gn=function(a,b){var c=this.zc;c.mg=c.rc;c.rc=b&31};g.Wl=function(){return Zi(this.zc)};g.fn=function(a,b){$i(this,this.zc,b)};g.Yl=function(){return this.zc.hc};g.hn=function(a,b){this.zc.hc=b;Oi(this,!1)};
g.Zl=function(){return aj(this,this.zc)};g.Hk=function(a,b){this.ja.Ah=this.ja.Ah&-4|b&3};g.xj=function(){var a=this.ja.vd?this.ja.Id[this.ja.Yd&31]:this.ja.Yd;this.ja.vd=!this.ja.vd;return a};g.Gk=function(a,b){var c=this.ja.Yd&32;if(this.ja.vd){var d=this.ja.Yd&31;if(16<=d||!c)this.ja.Id[d]=b;this.ja.vd=!1}else this.ja.Yd=b,this.ja.vd=!0,b&32&&!c&&Mi(this)&&$a(this,!0)};g.im=function(){var a=3-((this.ja.sg&12)>>2),a=this.ja.Ri&-17|(this.Sf&1<<a)<<4-a;return this.ja.Ri=a};
g.kn=function(a,b){this.ja.sg=b;Li(this)};g.hm=function(){return this.ja.ve};g.rn=function(a,b){this.ja.ve=b};g.gm=function(){return this.ja.Of[this.ja.ve]};g.qn=function(a,b){this.ja.Of[this.ja.ve]=b;2==this.ja.ve&&(this.ja.Ua=xi[b&15])};g.Pl=function(){return this.ja.Dh};g.an=function(a,b){this.ja.Dh=b};g.Ql=function(){return this.ja.Eh};g.bn=function(a,b){this.ja.Eh=b};g.Ol=function(){return this.ja.ue};g.$m=function(a,b){this.ja.ue=b};g.Nl=function(){return this.ja.je[this.ja.ue]};
g.Zm=function(a,b){this.ja.je[this.ja.ue]=b;switch(this.ja.ue){case 0:this.ja.Bg=xi[b&15];this.ja.ae=this.ja.Bg&~this.ja.Cd;break;case 1:this.ja.Cd=~xi[b&15];this.ja.ae=this.ja.Bg&~this.ja.Cd;break;case 2:this.ja.Mh=xi[b&15]&2155905152;break;case 3:case 5:this.fe(Xi(this));break;case 4:this.ja.Ci=(b&3)<<3;break;case 6:Oi(this,!1);break;case 7:this.ja.Nh=xi[b&15^15]&2155905152;break;case 8:this.ja.Za=b|b<<8|b<<16|b<<24}};g.Fl=function(){return this.Mb.rc};
g.Sm=function(a,b){var c=this.Mb;c.mg=c.rc;c.rc=b&31};g.El=function(){return Zi(this.Mb)};g.Rm=function(a,b){$i(this,this.Mb,b)};g.Gl=function(){return this.Mb.hc};g.Tm=function(a,b){this.Mb.hc=b;Oi(this,!1)};g.Dl=function(){return this.Mb.Ye};g.Qm=function(a,b){this.Mb.Ye!==b&&(this.Mb.Ye=b,Yi(this,!1))};g.Hl=function(){return aj(this,this.Mb)};function Zi(a){var b;a.rc<a.Kh&&(b=a.Ub[a.rc]);return b}function $i(a,b,c){b.rc<b.Kh&&(b.Ub[b.rc]=c,9==b.rc&&8!=b.mg&&Oi(a,!0),Pi(a))}
function aj(a,b){var c=0,d=jb(a.ia),e=d-b.Th;0>e&&(e=0);e%b.Oh>b.vm&&(c|=1);e%=b.Ej;e>b.xm&&(c|=8);b.Th=d-e;b===a.ja?(c|=b.Gf&48^48,b.vd=!1):c=(b.Gf^=9)|240;return b.Gf=c}
var Fi={948:T.prototype.Xl,949:T.prototype.Wl,952:T.prototype.Yl,954:T.prototype.Zl,980:T.prototype.Fl,981:T.prototype.El,984:T.prototype.Gl,985:T.prototype.Dl,986:T.prototype.Hl},Gi={948:T.prototype.gn,949:T.prototype.fn,952:T.prototype.hn,980:T.prototype.Sm,981:T.prototype.Rm,984:T.prototype.Tm,985:T.prototype.Qm},Hi={960:T.prototype.xj,961:T.prototype.xj,962:T.prototype.im,964:T.prototype.hm,965:T.prototype.gm,970:T.prototype.Ql,972:T.prototype.Pl,974:T.prototype.Ol,975:T.prototype.Nl},Ii={954:T.prototype.Hk,
960:T.prototype.Gk,961:T.prototype.Gk,962:T.prototype.kn,964:T.prototype.rn,965:T.prototype.qn,970:T.prototype.bn,972:T.prototype.an,974:T.prototype.$m,975:T.prototype.Zm,986:T.prototype.Hk};
function yi(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=zi[b],f=a.Ad||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(Ai)];this.og=b;this.ab=e[2];this.dc=e[3];this.Bc=d||e[4];65536<=this.Bc&&720896<=this.ab&&(this.dc=Math.min(this.Bc>>2,32768));this.Zb=c[0];this.jc=c[1];this.Ze=c[2];this.Hf=c[3];this.sc=c[4]&255;this.ng=c[4]>>8&255;this.Wb=c[5];this.Lh=Ai;if(5==b){this.Lh=Bi;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.Bc,Array(this.Bc>>2),771,0,4294967295,
0,4294967295,0,4294967295,0]);this.vd=b[0];this.Zd=b[1];this.Jd=b[2];this.Ui=b[3];this.tg=b[4];this.Bh=b[5];this.we=b[6];this.Pf=b[7];this.Eh=b[8];this.Fh=b[9];this.ve=b[10];this.ke=b[11];this.lb=b[12];d=this.Bc>>2;if((this.Md=b[14])&&this.Md.length<d){for(var e=this.Md,l=0,k=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)k[l]=q,l+=2;l==d&&(l=1)}this.Md=k}this.Og(b[15]);this.Fi=b[16];this.Ua=b[17];this.Mc=b[18];this.Za=b[19];this.Dg=b[20];this.Cd=b[21];this.be=b[22];this.Nh=b[23];this.Oh=
b[24]}f=qi[f]||qi[3];this.Ph=a.ia.cd/f.Vh|0;this.ym=this.Ph*f.Ki/100|0;this.Gj=this.Ph*f.Uh;this.Am=this.Gj*f.Li/100|0;this.Wh=null==c[7]?0:c[7]}}var Ai=18,Bi=25;function Ci(a){return this.vc(a)|this.vc(a+1)<<8}function Di(a,b){this.xc(a,b&255);this.xc(a+1,b>>8&255)}var Y=[,,function(a){a+=this.offset;return(this.ea.lb=this.la[a])>>this.ea.Fi&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.la[b]>>8:this.la[b])&255}];
Y[16]=function(a){a+=this.offset;a=this.la[a];for(var b=this.ea.Nh&this.ea.Oh,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.la[c]&~this.ea.Ua|(b|b<<8|b<<16|b<<24)&this.ea.Ua;d=d&this.ea.Za|this.ea.lb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Cd|this.ea.be;d=d&this.ea.Ua|this.la[c]&~this.ea.Ua;d=d&this.ea.Za|this.ea.lb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Cd|this.ea.be;d&=this.ea.lb;d=d&this.ea.Ua|this.la[c]&~this.ea.Ua;d=d&this.ea.Za|this.ea.lb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Cd|this.ea.be;d|=this.ea.lb;d=d&this.ea.Ua|this.la[c]&~this.ea.Ua;d=d&this.ea.Za|this.ea.lb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Cd|this.ea.be;d^=this.ea.lb;d=d&this.ea.Ua|this.la[c]&~this.ea.Ua;d=d&this.ea.Za|this.ea.lb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.Ua&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.la[d]&~c;c=c&this.ea.Za|this.ea.lb&~this.ea.Za;this.la[d]!=c&&(this.la[d]=c,this.Xa=!0)};
Y[4096]=function(a){a+=this.offset;var b=this.la[a]&~this.ea.Ua|this.ea.lb&this.ea.Ua;this.la[a]!=b&&(this.la[a]=b,this.Xa=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d&this.ea.Ua|this.la[c]&~this.ea.Ua,d=d&this.ea.Za|this.ea.lb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d&this.ea.lb,d=d&this.ea.Ua|this.la[c]&~this.ea.Ua,d=d&this.ea.Za|this.ea.lb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
Y[40960]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d|this.ea.lb,d=d&this.ea.Ua|this.la[c]&~this.ea.Ua,d=d&this.ea.Za|this.ea.lb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d^this.ea.lb,d=d&this.ea.Ua|this.la[c]&~this.ea.Ua,d=d&this.ea.Za|this.ea.lb&~this.ea.Za;this.la[c]!=d&&(this.la[c]=d,this.Xa=!0)};
function Ei(a){var b=[];if(void 0!==a.og){b[0]=a.Zb;b[1]=a.jc;b[2]=a.Ze;b[3]=a.Hf;b[4]=a.sc|a.ng<<8;b[5]=a.Wb;if(5==a.og){var c=[];c[0]=a.vd;c[1]=a.Zd;c[2]=a.Jd;c[3]=a.Ui;c[4]=a.tg;c[5]=a.Bh;c[6]=a.we;c[7]=a.Pf;c[8]=a.Eh;c[9]=a.Fh;c[10]=a.ve;c[11]=a.ke;c[12]=a.lb;c[13]=a.Bc;var d;a:if(d=a.Md){var e=0,f=[];if(void 0!==d[0])for(var l=0;2>l;l++)for(var k=l;k<d.length;){for(var m=d[k],n=k+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-k>>1;f[e++]=m;k=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=a.Kh;c[16]=
a.Fi;c[17]=a.Ua;c[18]=a.Mc;c[19]=a.Za;c[20]=a.Dg;c[21]=a.Cd;c[22]=a.be;c[23]=a.Nh;c[24]=a.Oh;b[6]=c}b[7]=a.Wh}return b}yi.prototype.Og=function(a){if(null!=a&&a!=this.Kh){var b=a&255,c=Y[b];c||b&1&&(c=Y[1]);var b=a&65280,d=Y[b];d||b&256&&(d=Y[256]);this.Re||(this.Re=[null,Ci,null,Di]);this.Re[0]=c;this.Re[2]=d;this.Kh=a}};var zi=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];g=T.prototype;
g.ic=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;Ta(b,this,Fi);Va(b,this,Gi);"ega"==this.Ca&&(Ta(b,this,Hi),Va(b,this,Ii));(this.Qa=D(a,"Keyboard"))&&this.rb&&this.Qa.vb("input",this.Xk?"textarea":"canvas","kbd",this.Xk||this.rb);this.Tf=9;(this.ga=D(a,"ChipSet"))&&this.Sk&&(this.Tf=Wg(this.Sk,this.Tf));this.Qa&&this.ol&&Ji(this)};g.vb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.oa[c]=d,d.onclick=function(){$a(e,!0)},!0}return!1};g.Fe=function(){this.rb&&this.rb.focus()};
function Ji(a){var b=a.rb;b&&!a.th&&(b.addEventListener("touchstart",function(b){Ki(a,b)},!1),b.addEventListener("touchmove",function(b){Ki(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.th=!0)}
function Ki(a,b){a.vh&&b.preventDefault();var c=0,d=0,e=a.rb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.Vc/a.rb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.Vc/3)|0;d=a.ud/a.rb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.ud/3)|0;1!=d?d?ki(a.Qa,264,!0):ki(a.Qa,262,!0):1!=c&&(c?ki(a.Qa,263,!0):ki(a.Qa,261,!0))}g.Tb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
g.Kb=function(a){return a&&this.save?this.save():!0};
g.reset=function(){var a=!0,b=0;this.ga&&(b=nh(this.ga));var c=!1;if(this.Ca)switch(this.Ca){case "ega":var c=!0,d=ri[this.Tf];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.Ad!==b&&(this.Ad=b,a=!0);this.za=null;this.Ac=this.hh=new yi(this,1);this.Nb=this.ag=new yi(this,3);c?(this.ja=new yi(this,5,null,this.Bc),Li(this)):this.ja=new yi;Mi(this);this.zd=null;this.Nc=3==b?pi:3;this.Td=this.tc=-1;this.Sd=0;Ni(this,this.Nc);if(this.za.ab&&a){a=this.za.ab+this.ih;for(b=this.za.ab;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.Ad?(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),Qa(this.ma,b,c|d<<8);$a(this,!0)}};function Li(a){a.ja.tg&1?(a.Ac=a.hh,a.Nb=a.ja):(a.Ac=a.ja,a.Nb=a.ag)}g.save=function(){var a=new H(this);a.set(0,Ei(this.hh));a.set(1,Ei(this.ag));a.set(2,[this.Ad,this.Nc,this.zd]);a.set(3,Ei(this.ja));return a.data()};
g.restore=function(a){var b=a[2];this.Ad=b[0];this.Nc=b[1];this.zd=b[2];this.za=null;this.Ac=this.hh=new yi(this,1,a[0]);this.Nb=this.ag=new yi(this,3,a[1]);this.ja=new yi(this,5,a[3],this.Bc);this.ja.Zb&&Li(this);Mi(this);if(!Oi(this))return!1;Pi(this);return!0};
g.Em=function(a,b,c){if(c)this.xa("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){u("Empty font ROM image: "+a);return}if(1==d.length){u(d[0]);return}if(8192==d.length)ei(this,d,[0,6144]);else{this.xa("Unrecognized font data length ("+d.length+")");return}}catch(e){this.xa("Font ROM data error: "+e.message);return}this.Pa()}};
function Qi(a,b){if(1==b)return a.Qc[0]=W[0],a.Qc[1]=W[7],a.Qc;if(2==b){var c=a.za.Ze;if(a.za===a.ja){var d=a.ja.Jd[0],c=d&7;d&16&&(c|=8);18!=a.ja.Jd[1]&&(c|=32)}a.Qc[0]=W[c&15];c=c&32?vi:ui;for(d=0;d<c.length;d++)a.Qc[d+1]=W[c[d]];return a.Qc}if(a.Nb===a.ag)return W;c=null!=a.ja.Jd[15]?a.ja.Jd:wi;for(d=0;d<a.Qc.length;d++){var e=c[d]||0;a.Qc[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.Qc}function ei(a,b,c,d){a.Qf=b;a.Yg=c;a.Wd=d}
function Mi(a){var b=!1;if(window&&a.Qf){var c=a.Wd?0:2048,d=a.Wd?a.Wd:9;Ri(a,1,a.Yg[0],c,d,14,a.Qf,si,ti)&&(b=!0);c=Qi(a);d=a.Wd?a.Wd:8;Ri(a,3,a.Yg[1],0,d,8,a.Qf,c)&&(b=!0);a.Wd&&Ri(a,5,a.Yg[0],0,a.Wd,14,a.Qf,c)&&(b=!0)}return b}function Ri(a,b,c,d,e,f,l,k,m){var n=!1;Si(a,b,c,d,e,f,l,k,m)&&(n=!0);a.jl&&Si(a,b<<1,c,d,e,f,l,k,m)&&(n=!0);return n}
function Si(a,b,c,d,e,f,l,k,m){var n=!1,q=b&1?0:1,s=a.jd[b];s||(s={Xb:e<<q,Yb:f<<q,je:Array(k.length),aj:k.slice(),Me:m,Wg:Array(k.length)});for(m=0;m<k.length;m++){var r=k[m],y=s.je[m]?s.aj[m]:[];if(r[0]!==y[0]||r[1]!==y[1]||r[2]!==y[2]){var n=s,y=m,M=q,V=c,aa=d,ba=e,fb=f,lc=l,jd=[0,0,0,0],mc=window.document.createElement("canvas");mc.width=n.Xb<<4;mc.height=n.Yb<<4;for(var Qh=mc.getContext("2d"),ta=void 0,rb=void 0,Ra=void 0,nc=8>fb||!aa?fb:8,kd=Qh.createImageData(n.Xb,n.Yb),ta=0;256>ta;ta++){for(Ra=
0;Ra<fb;Ra++)for(var Rj=n.Me&&y&1&&Ra>=fb-2,Sj=lc[Ra<nc?V+ta*nc+Ra:aa+ta*nc+Ra-nc],ld=0;ld<=M;ld++)for(rb=0;rb<ba;rb++){var Rh=rb<<M,Sh=(Ra<<M)+ld,Th=Rj||Sj&128>>(8<=rb&&176<=ta&&223>=ta?7:rb)?r:jd;Ti(kd,Rh,Sh,Th);M&&Ti(kd,Rh+1,Sh,Th)}Qh.putImageData(kd,(ta&15)*n.Xb,(ta>>4)*n.Yb)}n.je[y]="#"+p(r[0],2)+p(r[1],2)+p(r[2],2);n.aj[y]=r;n.Wg[y]=mc;n=!0}}a.jd[b]=s;return n}function Ui(a){0<a.Sd||0<=a.tc?0>a.Td&&(a.Td=0):a.Td=-1}
function Pi(a){if(a.Bb){for(var b=10;15>=b;b++)if(null==a.za.Wb[b])return;var c=a.za.Wb[10],b=c&31,d=a.za.Wb[11]&31,e=a.za.Wb[9]&31,f=!1;a.za===a.ja&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Vi(a);else{c=a.za.Wb[15]+((a.za.Wb[14]&63)<<8);a.tc!=c&&(Vi(a),a.tc=c);d=d-b+1;if(a.Zk!=b||a.mj!=d)a.Zk=b,a.mj=d;a.td=e+1;Ui(a)}}}
function Vi(a){if(0<=a.tc){if(void 0!==a.Mb){var b=a.Mb[a.tc];if(b&131072){var b=b&-131073,c=a.tc%a.mb,d=Math.floor(a.tc/a.mb);a.Bb&&a.jd[a.Bb]&&(a.qe&&Wi(a,c,d,b,a.qe),Wi(a,c,d,b));a.Mb[a.tc]=b}}a.tc=-1}}
function Xi(a){var b;a=a.za;var c=a.ke[5];if(null!=c){b=2;var d=512,e=a.ke[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.Mc=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}g.ge=function(a){var b=this.za;null!=a&&b&&a!=b.Kh&&(b.Og(a),this.ma.Og(b.ab,b.dc,b.Re))};
function Oi(a,b){var c,d=a.zd,e=a.za;if(e)if(1==e.og)d=pi;else if(5==e.og){var d=null,f=e.Bc>>2,l=32768<f?32768:f,k=e.ke[6];if(null!=k){switch(k&12){case 0:e.ab=655360;e.dc=f;d=255;break;case 4:e.ab=655360;e.dc=f;d=3==a.Ad?15:16;break;case 8:e.ab=720896;e.dc=l;d=pi;break;case 12:e.ab=753664,e.dc=l,d=3==a.Ad?2:3}c=e.Pf[1]&8;f=e.Wb[6]|(e.Wb[7]&1)<<8;255!=d&&(k&1?753664==e.ab?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Xi(a)}}else e.jc&8&&(e.jc&2?(d=e.jc&16?6:5,e.jc&4||(d-=1)):(d=e.jc&1?3:1,e.jc&4&&(d-=
1)));else a.zd=null,null==d&&(d=a.Nc);if(!Ni(a,d,b))return!1;a.ge(c);return!0}
function Ni(a,b,c){if(null!=b&&(b!=a.zd||c)){a.el=0;a.zd=b;b=a.za||(b==pi?a.Ac:a.Nb);if(b!=a.za||b.ab!=a.ab||b.dc!=a.dc){Vi(a);if(a.ab){if(!Ma(a.ma,a.ab,a.dc))return!1;a.za&&(a.za.Zb=!1)}a.za=b;b.Zb=!0;a.ab=b.ab;a.dc=b.dc;if(!Ka(a.ma,b.ab,b.dc,!1,b===a.ja?b:null))return!1}a.Bb=0;a.mb=a.zg;a.ac=a.Rh;a.Mh=U[pi][2];b=0;var d=U[a.zd];d&&(a.mb=d[0],a.ac=d[1],a.Mh=d[2],b=d[3]||0,a.Bb=d[4],4==a.Ad&&a.za===a.ja&&3==a.Bb&&(7==a.ja.Wb[9]?a.ac=43:a.Bb=5));a.Dj=a.mb*a.ac;a.wg=a.Dj/a.Mh;a.ih=(a.wg<<1)+b;a.kj=
b?a.ih+b>>1:0;13<=a.zd&&(a.wg<<=1);a.jd.length&&(a.Wc=Math.floor(a.Vc/a.mb),a.Xc=Math.floor(a.ud/a.ac),a.Bb?(b=a.jd[a.Bb],d=a.jd[a.Bb<<1],a.ml&&80==a.mb?d&&a.Wc>=3*d.Xb>>2&&(a.Bb<<=1,b=d):(d&&a.Wc>=d.Xb&&(a.Bb<<=1,b=d),b&&(a.Wc=b.Xb,a.Xc=b.Yb)),a.bf=a.cf=0,b&&(a.bf=a.mb*b.Xb,a.cf=a.ac*b.Yb)):(a.Wc=a.Xc=1,a.bf=a.mb,a.cf=a.ac),a.qg=a.Cc.createImageData(a.bf,a.cf),a.pe=window.document.createElement("canvas"),a.pe.width=a.bf,a.pe.height=a.cf,a.qe=a.pe.getContext("2d"),a.Xi=a.Yi=0,a.lh=a.Vc,a.mh=a.ud,
b=a.Vc-a.mb*a.Wc,d=a.ud-a.ac*a.Xc,0<b&&(a.Xi=b>>1,a.lh-=b),0<d&&(a.Yi=d>>1,a.mh-=d),b||d)&&(a.Cc.fillStyle=a.rb.style.backgroundColor,a.Cc.fillRect(0,0,a.Vc,a.ud));!1!==c?$a(a,!0):Yi(a,!0)}return!0}function Ti(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Yi(a,b){var c;if(b){if(c=a.wg,void 0===a.Mb||a.Mb.length!=c)a.Mb=Array(c)}else{if(void 0===a.Mb)return;c=a.Mb.length}for(var d=0;d<c;d++)a.Mb[d]=-1;a.Sd=-1}
function Wi(a,b,c,d,e){var f=d&255,l=d>>8;d=l&15;var k=a.jd[a.Bb];k.Me&&(d=k.Me[d]);var m=l>>4&15;k.Me&&(m=k.Me[m]);e?(b*=k.Xb,c*=k.Yb,e.fillStyle=k.je[m],e.fillRect(b,c,k.Xb,k.Yb)):(b=b*a.Wc+a.Xi,c=c*a.Xc+a.Yi,a.Cc.fillStyle=k.je[m],a.Cc.fillRect(b,c,a.Wc,a.Xc));l&256&&(m=(f&15)*k.Xb,f=(f>>4)*k.Yb,e?e.drawImage(k.Wg[d],m,f,k.Xb,k.Yb,b,c,k.Xb,k.Yb):a.Cc.drawImage(k.Wg[d],m,f,k.Xb,k.Yb,b,c,a.Wc,a.Xc));l&512&&(f=a.Zk,l=a.mj,e?(a.td&&a.td!==k.Yb&&(f=Math.floor(f*k.Yb/a.td),l=Math.floor(l*k.Yb/a.td)),
e.fillStyle=k.je[d],e.fillRect(b,c+f,k.Xb,l)):(a.td&&a.td!==a.Xc&&(f=Math.floor(f*a.Xc/a.td),l=Math.floor(l*a.Xc/a.td)),a.Cc.fillStyle=k.je[d],a.Cc.fillRect(b,c+f,a.Wc,l)))}
function $a(a,b){if(a.Ab){var c=!1;a.za&&(a.za===a.ja?a.ja.Zd&32&&(c=!0):a.za.jc&8&&(c=!0));if(c||b){if(b)Yi(a,!0);else if(void 0===a.Mb)return;var d=!1;!(b||++a.el&15)&&0<=a.Td&&(a.Td++,d=!0);var e=0,f=a.Dj,c=a.za.ab,l=c+a.za.dc,k=(a.za.Wb[12]<<8)+a.za.Wb[13];a.Bb&&(k<<=1);var c=c+k,m=a.ih;c+m>l&&(m=l-c,0>m&&(m=0));l=c+m;if(k=!b){for(var k=a.ma,n=!0,q=c>>k.Ib;0<m&&q<k.ya.length;)k.ya[q].Xa&&(k.ya[q].Xa=n=!1,k.ya[q].oj=!0),m-=k.nc,q++;k=n}if(k){if(!d)return;if(!a.Sd){if(0>a.tc)return;e=a.tc;f=e+1}}if(a.Bb){if(a.jd[a.Bb]){d=
0;k=a.Sd=0;m=1048575;a.za.jc&32&&(k=32768,m&=~k,a.Td&2||(m&=-65537));for(c+=e<<1;c<l&&e<f;)n=Oa(a.ma,c),n|=65536,n&k&&(a.Sd++,n&=m),e==a.tc&&(n|=a.Td&1?131072:0),q=a.Mb[e],q!=n&&(Wi(a,e%a.mb,Math.floor(e/a.mb),n,a.qe),a.Mb[e]=n,d++),c+=2,e++;d&&a.qe&&a.Cc.drawImage(a.pe,0,0,a.bf,a.cf,a.Xi,a.Yi,a.lh,a.mh);Ui(a)}}else if(a.kj){for(var f=l,s,r,e=c,l=a.Sd=0,d=a.Mh,k=16==d?65536:196608,m=16==d?1:2,n=Qi(a,m),y=q=0,M=a.mb,V=0,aa=a.ac,ba=0;e<f;){s=Oa(a.ma,e);r=a.Mb[l];if(r===s)q+=d;else{a.Mb[l]=s;s=s>>8|
(s&255)<<8;r=k;var fb=16;q<M&&(M=q);for(var lc=0;lc<d;lc++){var jd=(s&(r>>=m))>>(fb-=m);Ti(a.qg,q++,y,n[jd])}q>V&&(V=q);y<aa&&(aa=y);y>=ba&&(ba=y+1)}e+=2;l++;if(q>=a.mb){q=0;y+=2;if(y>a.ac)break;y==a.ac&&(y=1,e=c+a.kj)}}M<a.mb&&(a.qe.putImageData(a.qg,0,0,M,aa,V-M,ba-aa),a.Cc.drawImage(a.pe,0,0,a.mb,a.ac,0,0,a.Vc,a.ud))}else{f=l;e=a.Sd=0;l=Qi(a);d=a.za.Md;m=k=0;n=a.mb;q=0;y=a.ac;for(M=0;c<f;){V=c++-a.ab;V=d[V];aa=a.Mb[e];if(aa===V)k+=8;else{a.Mb[e]=V;k<n&&(n=k);for(aa=0;8>aa;aa++)ba=V&2155905152,
0>ba&&(ba=-ba),ba=X[ba]||0,Ti(a.qg,k++,m,l[ba]),V<<=1;k>q&&(q=k);m<y&&(y=m);m>=M&&(M=m+1)}e++;if(k>=a.mb&&(k=0,++m>a.ac))break}n<a.mb&&(a.qe.putImageData(a.qg,0,0,n,y,q-n,M-y),a.Cc.drawImage(a.pe,0,0,a.mb,a.ac,0,0,a.Vc,a.ud))}}}}g.$l=function(){return this.Ac.sc};g.kn=function(a,b){var c=this.Ac;c.ng=c.sc;c.sc=b&31};g.Zl=function(){return Zi(this.Ac)};g.jn=function(a,b){$i(this,this.Ac,b)};g.am=function(){return this.Ac.jc};g.ln=function(a,b){this.Ac.jc=b;Oi(this,!1)};
g.bm=function(){return aj(this,this.Ac)};g.Jk=function(a,b){this.ja.Bh=this.ja.Bh&-4|b&3};g.zj=function(){var a=this.ja.vd?this.ja.Jd[this.ja.Zd&31]:this.ja.Zd;this.ja.vd=!this.ja.vd;return a};g.Ik=function(a,b){var c=this.ja.Zd&32;if(this.ja.vd){var d=this.ja.Zd&31;if(16<=d||!c)this.ja.Jd[d]=b;this.ja.vd=!1}else this.ja.Zd=b,this.ja.vd=!0,b&32&&!c&&Mi(this)&&$a(this,!0)};g.lm=function(){var a=3-((this.ja.tg&12)>>2),a=this.ja.Ui&-17|(this.Tf&1<<a)<<4-a;return this.ja.Ui=a};
g.nn=function(a,b){this.ja.tg=b;Li(this)};g.km=function(){return this.ja.we};g.un=function(a,b){this.ja.we=b};g.jm=function(){return this.ja.Pf[this.ja.we]};g.tn=function(a,b){this.ja.Pf[this.ja.we]=b;2==this.ja.we&&(this.ja.Ua=xi[b&15])};g.Sl=function(){return this.ja.Eh};g.dn=function(a,b){this.ja.Eh=b};g.Tl=function(){return this.ja.Fh};g.en=function(a,b){this.ja.Fh=b};g.Rl=function(){return this.ja.ve};g.cn=function(a,b){this.ja.ve=b};g.Ql=function(){return this.ja.ke[this.ja.ve]};
g.bn=function(a,b){this.ja.ke[this.ja.ve]=b;switch(this.ja.ve){case 0:this.ja.Dg=xi[b&15];this.ja.be=this.ja.Dg&~this.ja.Cd;break;case 1:this.ja.Cd=~xi[b&15];this.ja.be=this.ja.Dg&~this.ja.Cd;break;case 2:this.ja.Nh=xi[b&15]&2155905152;break;case 3:case 5:this.ge(Xi(this));break;case 4:this.ja.Fi=(b&3)<<3;break;case 6:Oi(this,!1);break;case 7:this.ja.Oh=xi[b&15^15]&2155905152;break;case 8:this.ja.Za=b|b<<8|b<<16|b<<24}};g.Il=function(){return this.Nb.sc};
g.Vm=function(a,b){var c=this.Nb;c.ng=c.sc;c.sc=b&31};g.Hl=function(){return Zi(this.Nb)};g.Um=function(a,b){$i(this,this.Nb,b)};g.Jl=function(){return this.Nb.jc};g.Wm=function(a,b){this.Nb.jc=b;Oi(this,!1)};g.Gl=function(){return this.Nb.Ze};g.Tm=function(a,b){this.Nb.Ze!==b&&(this.Nb.Ze=b,Yi(this,!1))};g.Kl=function(){return aj(this,this.Nb)};function Zi(a){var b;a.sc<a.Lh&&(b=a.Wb[a.sc]);return b}function $i(a,b,c){b.sc<b.Lh&&(b.Wb[b.sc]=c,9==b.sc&&8!=b.ng&&Oi(a,!0),Pi(a))}
function aj(a,b){var c=0,d=jb(a.ia),e=d-b.Wh;0>e&&(e=0);e%b.Ph>b.ym&&(c|=1);e%=b.Gj;e>b.Am&&(c|=8);b.Wh=d-e;b===a.ja?(c|=b.Hf&48^48,b.vd=!1):c=(b.Hf^=9)|240;return b.Hf=c}
var Fi={948:T.prototype.$l,949:T.prototype.Zl,952:T.prototype.am,954:T.prototype.bm,980:T.prototype.Il,981:T.prototype.Hl,984:T.prototype.Jl,985:T.prototype.Gl,986:T.prototype.Kl},Gi={948:T.prototype.kn,949:T.prototype.jn,952:T.prototype.ln,980:T.prototype.Vm,981:T.prototype.Um,984:T.prototype.Wm,985:T.prototype.Tm},Hi={960:T.prototype.zj,961:T.prototype.zj,962:T.prototype.lm,964:T.prototype.km,965:T.prototype.jm,970:T.prototype.Tl,972:T.prototype.Sl,974:T.prototype.Rl,975:T.prototype.Ql},Ii={954:T.prototype.Jk,
960:T.prototype.Ik,961:T.prototype.Ik,962:T.prototype.nn,964:T.prototype.un,965:T.prototype.tn,970:T.prototype.en,972:T.prototype.dn,974:T.prototype.cn,975:T.prototype.bn,986:T.prototype.Jk};
v(function(){for(var a=C(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=A(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing &lt;canvas&gt; support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor;
e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new T(d,e,f);B(d,c)}});
function Z(a){this.uj=a.adapter;switch(this.uj){case 1:this.Ji=1016;this.rf=4;break;case 2:this.Ji=760;this.rf=3;break;default:u("Unrecognized serial adapter #"+this.uj);return}this.rd=null;w.call(this,"SerialPort",a,Z);var b=a.binding,c;a=bj;b&&(void 0===c&&(c="Panel"),(c=Ba(c,this.id))&&(b=c.oa[b])&&this.tb(null,null,a,b))}z(w,Z);var bj="buffer";g=Z.prototype;g.aj=function(a,b){return a==this.Gh?(this.yj=b,this):null};
g.tb=function(a,b,c,d){var e=this;switch(c){case bj:return this.oa[c]=this.rd=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),cj(e,[b]))},d.onkeypress=function(a){a=a||window.event;cj(e,[a.which||a.keyCode])},!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;this.ga=D(a,"ChipSet");Ta(b,this,dj,this.Ji);Va(b,this,ej,this.Ji);this.Pa()};
g.Rb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.xd()};g.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.dh;c[b++]=this.ej;c[b++]=this.he;c[b++]=this.Tf;c[b++]=this.md;c[b++]=this.Od;c[b++]=this.Hc;c[b++]=this.lc;c[b++]=this.cj;c[b]=this.Me;a.set(0,c);return a.data()};g.restore=function(a){return this.xd(a[0])};
g.xd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.dh=a[b++];this.ej=a[b++];this.he=a[b++];this.Tf=a[b++];this.md=a[b++];this.Od=a[b++];this.Hc=a[b++];this.lc=a[b++];this.cj=a[b++];this.Me=a[b];return!0};function cj(a,b){a.Me=a.Me.concat(b);fj(a)}function fj(a){0<a.Me.length&&!(a.lc&1)&&(a.dh=a.Me.shift(),a.lc|=1);var b=-1;a.lc&1&&a.Tf&1&&(b=4);0<=b?(a.md&=-8,a.md|=b,a.ga&&a.rf&&R(a.ga,a.rf)):(a.md|=1,a.ga&&a.rf&&Kh(a.ga,a.rf))}
g.fm=function(){var a=this.Od&128?this.he&255:this.dh;this.lc&=-2;fj(this);return a};g.Rl=function(){return this.Od&128?this.he>>8:this.Tf};g.Sl=function(){return this.md};g.Tl=function(){return this.Od};g.Vl=function(){return this.Hc};g.Ul=function(){return this.lc};g.am=function(){return this.cj};
g.sn=function(a,b){if(this.Od&128)this.he=this.he&-256|b;else{this.ej=b;this.lc&=-97;var c;this.rd?(13!=b&&(8==b?this.rd.value=this.rd.value.slice(0,-1):(this.rd.value+=String.fromCharCode(b),this.rd.scrollTop=this.rd.scrollHeight)),c=!0):c=!1;c&&(this.lc|=96)}};g.cn=function(a,b){this.Od&128?this.he=this.he&255|b<<8:this.Tf=b};g.dn=function(a,b){this.Od=b};
g.en=function(a,b){var c=this.Hc;this.Hc=b;if(this.yj&&(c^b)&3){var c=this.yj,d=this.Hc,e=3==(d&3);if(e){if(!c.Xb){var f=!1;c.Hc&2||(c.reset(),f=!0);c.Hc&1||(f=!0);f&&cj(c.Ze,[77]);gj(c,c.qb);c.Xb=e}}else c.Xb&&(hj(c.qb),c.Xb=e);c.Hc=d}};var dj={0:Z.prototype.fm,1:Z.prototype.Rl,2:Z.prototype.Sl,3:Z.prototype.Tl,4:Z.prototype.Vl,5:Z.prototype.Ul,6:Z.prototype.am},ej={0:Z.prototype.sn,1:Z.prototype.cn,3:Z.prototype.dn,4:Z.prototype.en};
v(function(){for(var a=C(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new Z(d);B(d,c)}});function ij(a){w.call(this,"Mouse",a,ij);if(this.Fh=a.serial)this.Mi="SerialPort";this.Xb=!1;this.Pa()}z(w,ij);g=ij.prototype;g.gc=function(a,b,c,d){this.Fa=a;this.ma=b;this.ia=c;this.Na=d};
g.Rb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Mi&&!this.Ze){for(var c=null;(c=D(this.Fa,this.Mi,c))&&(!c.aj||!(this.Ze=c.aj(this.Fh,this))););if(this.Ze){if(c=D(this.Fa,"Video"))this.qb=c.qb}else u(this.id+": "+this.Mi+" "+this.Fh+" unavailable")}this.Xb?gj(this,this.qb):hj(this.qb)}return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.xd()};g.save=function(){var a=new H(this);a.set(0,this.Qi());return a.data()};
g.restore=function(a){return this.xd(a[0])};g.xd=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.Xb=a[b++];this.Hf=a[b++];this.If=a[b++];this.Ge=a[b++];this.He=a[b++];this.eg=a[b++];this.fg=a[b++];this.Hc=a[b];return!0};g.Qi=function(){var a=0,b=[];b[a++]=this.Xb;b[a++]=this.Hf;b[a++]=this.If;b[a++]=this.Ge;b[a++]=this.He;b[a++]=this.eg;b[a++]=this.fg;b[a]=this.Hc;return b};
function gj(a,b){b&&(a.sh||(b.addEventListener("mousemove",function(b){if(a.Xb&&a.ia&&a.ia.qc){if(0>a.Hf||0>a.If)a.Hf=b.clientX,a.If=b.clientY;a.Ge=b.clientX-a.Hf;a.He=b.clientY-a.If;(a.Ge||a.He)&&jj(a);a.Hf=b.clientX;a.If=b.clientY}},!1),b.addEventListener("mousedown",function(b){kj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){kj(a,b.button,!1)},!1),a.sh=!0),b.style.cursor="none")}function hj(a){a&&(a.style.cursor="auto")}
function kj(a,b,c){if(a.Xb&&a.ia&&a.ia.qc)switch(b){case 0:a.eg!=c&&(a.eg=c,jj(a));break;case 2:a.fg!=c&&(a.fg=c,jj(a))}}function jj(a){cj(a.Ze,[64|(a.eg?32:0)|(a.fg?16:0)|(a.He&192)>>4|(a.Ge&192)>>6,a.Ge&63,a.He&63]);a.Ge=a.He=0}v(function(){for(var a=C(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new ij(d);B(d,c)}});
function lj(a,b,c){w.call(this,"Disk",{id:a.og+".disk"+mj++},lj);this.ea=a;this.Fa=a.Fa;this.Na=a.Na;this.Oa=b;this.mode=c;this.fd=b.name;this.ic=b.ic;this.Yb=b.Yb;this.Fc=b.Fc;this.yb=b.yb;this.re=b.re;this.wh=this.Zc=!1;this.create();this.Jd=[];this.Lf=[];this.hd=null;this.Aj=0;this.zh=!1;this.Pa()}var mj=0;z(w,lj);g=lj.prototype;g.gc=function(a,b,c,d){this.Na=d};g.Rb=function(a,b){b||this.wh&&!this.Zc&&this.load(this.fd,this.Ce);return!0};
g.Jb=function(a,b){if(this.Zc){var c,d=0;if(this.zh&&!la("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=nj(this,!1);)if(d=c[0]){this.xa('Unable to save "'+this.fd+'" (error '+d+")");break}b&&this.Zc&&(c="action=close&volume="+this.Ce,c+="&machine="+this.ea.te(),c+="&user="+this.ea.wd(),t(ka()+"/api/v1/disk?"+c,!0),this.Zc=!1);d||this.xa(this.fd+" saved")}return!0};
g.create=function(){this.Fb=[];if("preload"!=this.mode){for(var a=Array(this.ic),b=0;b<a.length;b++){for(var c=Array(this.Yb),d=0;d<c.length;d++){for(var e=Array(this.Fc),f=1;f<=e.length;f++)e[f-1]=oj(null,b,d,f,this.yb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.Fb=a}this.cg=0};
g.load=function(a,b,c){var d=b;this.fd=a;this.Ce=b;this.sj=c;0>b.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.ic+":"+this.Yb+":"+this.Fc+":"+this.yb,a+="&machine="+this.ea.te(),a+="&user="+this.ea.wd(),d=ka()+"/api/v1/disk?"+a,this.wh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):
-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=ka()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.re?"":d)+"&format=json"));t(d,!0,null,this,this.ym,b)};
g.ym=function(a,b,c,d){var e=null;this.se=!1;var f=0>c&&this.Fa&&!this.Fa.zb;if(this.wh)c?this.xa('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Zc=!0,e=this);else if(c)this.xa('Unable to load disk "'+this.fd+'" (error '+c+")",f);else try{if(0<da(a,!0).toLowerCase().indexOf("-readonly"))this.se=!0;else{var l=b.indexOf("\n");0<l&&1024>l&&0<b.substring(0,l).indexOf("write-protected")&&(this.se=!0)}var k;k="<"==b.substr(0,1)?["Missing disk image: "+this.fd]:0>b.indexOf("0x")&&'["'!=
b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(k.length)if(1==k.length)u(k[0]);else{for(b=a=0;b<k.length;b++)for(c=0;c<k[b].length;c++)for(d=0;d<k[b][c].length;d++){var m=k[b][c][d],n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var s=m.data;if(void 0===s){var r=m.bytes;if(void 0!==r&&r.length){for(var f=n<<2,y=r.length;y<f;y++)r[y]=q;this.fill(m,r,0)}else s=[],q=m.pattern=q|q<<8|q<<16|q<<24,m.data=
s;delete m.bytes}oj(m,b,c);for(f=0;f<s.length;f++)a=a+s[f]&4294967295}this.Fb=k;this.cg=a;e=this}else u("Empty disk image: "+this.fd)}catch(M){u("Disk image error: "+M.message)}this.sj&&this.sj.call(this.ea,this.Oa,e,this.fd,this.Ce)};function oj(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.ol=b;a.ql=c;a.Ec=a.nc=0;a.Xa=!1;return a}
g.zm=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],l=d[2],k=d[3];a=d[4];b=JSON.parse(b);for(var m=0;k--;){var n=this.seek(e,f,l,!0);if(!n)break;this.fill(n,b,m);m+=n.length;l++}}(d=d[5])&&d(c,a)};function pj(a,b,c,d,e,f){if(a.Zc){var l;l="action=read&volume="+a.Ce;l+="&chs="+a.ic+":"+a.Yb+":"+a.Fc+":"+a.yb;l=l+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ea.te());l+="&user="+a.ea.wd();t(ka()+"/api/v1/disk?"+l,!0,null,a,a.zm,[b,c,d,e,!0,f])}else f&&f(-1,!1)}
function qj(a,b,c){b.Xa=!0;var d=a.Jd.indexOf(b);0<=d&&(a.Jd.splice(d,1),a.Lf.splice(d,1));a.Jd.push(b);a.Lf.push(ha());c&&rj(a)}function rj(a){if(a.Jd.length){var b=a.Lf[0]+2E3;a.hd&&a.Aj<b&&(clearTimeout(a.hd),a.hd=null);if(!a.hd){var c=ha(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.hd=setTimeout(function(){nj(a,!0)},b);a.Aj=c+b}}else a.hd&&(clearTimeout(a.hd),a.hd=null)}
function nj(a,b){b&&(a.hd=null);var c=a.Jd[0];if(c){for(var d=c.ol,e=c.ql,c=c.sector,f=0,l=[],k=c-1;k<a.Fb[d][e].length;k++){var m=a.Fb[d][e][k];if(!m.Xa)break;var n=a.Jd.indexOf(m);a.Jd.splice(n,1);a.Lf.splice(n,1);l=l.concat(sj(m));m.Xa=!1;f++}a.Zc?(k={},a.zh=!0,k.action="write",k.volume=a.Ce,k.chs=a.ic+":"+a.Yb+":"+a.Fc+":"+a.yb,k.addr=d+":"+e+":"+c+":"+f,k.machine=a.ea.te(),k.user=a.ea.wd(),k.data=JSON.stringify(l),d=t(ka()+"/api/v1/disk",b,k,a,a.Em,[d,e,c,f,b])):d=!1;return b||d}return!1}
g.Em=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.zh=!1;if(0<=a&&a<this.Fb.length&&0<=b&&b<this.Fb[a].length)for(e-=1;0<f--&&0<=e&&e<this.Fb[a][b].length;e++){var l=this.Fb[a][b][e];c?qj(this,l,!1):l.Xa||(l.Ec=l.nc=0)}d&&rj(this)};
g.seek=function(a,b,c,d,e){var f=null,l=this.Oa,k=this.Fb[a];if(k){var m=k[b];if(!m&&l.Se&&b<l.Yb)for(m=k[b]=Array(l.od),k=0;k<m.length;k++)m[k]=oj(null,a,b,k+1,l.$a,0);if(m){for(k=0;k<m.length;k++)if(m[k].sector==c){f=m[k];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++k<m.length;)null===m[k].pattern&&d++;pj(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&l.Se&&9==l.Ka&&(f=m[k]=oj(null,a,b,l.Ka,l.$a,0))}}e&&e(f,!1);return f};
function Z(a){this.wj=a.adapter;switch(this.wj){case 1:this.Mi=1016;this.sf=4;break;case 2:this.Mi=760;this.sf=3;break;default:u("Unrecognized serial adapter #"+this.wj);return}this.rd=null;w.call(this,"SerialPort",a,Z);var b=a.binding,c;a=bj;b&&(void 0===c&&(c="Panel"),(c=Ba(c,this.id))&&(b=c.oa[b])&&this.vb(null,null,a,b))}z(w,Z);var bj="buffer";g=Z.prototype;g.dj=function(a,b){return a==this.Hh?(this.Aj=b,this):null};
g.vb=function(a,b,c,d){var e=this;switch(c){case bj:return this.oa[c]=this.rd=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),cj(e,[b]))},d.onkeypress=function(a){a=a||window.event;cj(e,[a.which||a.keyCode])},!0}return!1};g.ic=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;this.ga=D(a,"ChipSet");Ta(b,this,dj,this.Mi);Va(b,this,ej,this.Mi);this.Pa()};
g.Tb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};g.Kb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.xd()};g.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.eh;c[b++]=this.hj;c[b++]=this.ie;c[b++]=this.Uf;c[b++]=this.md;c[b++]=this.Pd;c[b++]=this.Hc;c[b++]=this.mc;c[b++]=this.fj;c[b]=this.Ne;a.set(0,c);return a.data()};g.restore=function(a){return this.xd(a[0])};
g.xd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.eh=a[b++];this.hj=a[b++];this.ie=a[b++];this.Uf=a[b++];this.md=a[b++];this.Pd=a[b++];this.Hc=a[b++];this.mc=a[b++];this.fj=a[b++];this.Ne=a[b];return!0};function cj(a,b){a.Ne=a.Ne.concat(b);fj(a)}function fj(a){0<a.Ne.length&&!(a.mc&1)&&(a.eh=a.Ne.shift(),a.mc|=1);var b=-1;a.mc&1&&a.Uf&1&&(b=4);0<=b?(a.md&=-8,a.md|=b,a.ga&&a.sf&&R(a.ga,a.sf)):(a.md|=1,a.ga&&a.sf&&Kh(a.ga,a.sf))}
g.im=function(){var a=this.Pd&128?this.ie&255:this.eh;this.mc&=-2;fj(this);return a};g.Ul=function(){return this.Pd&128?this.ie>>8:this.Uf};g.Vl=function(){return this.md};g.Wl=function(){return this.Pd};g.Yl=function(){return this.Hc};g.Xl=function(){return this.mc};g.dm=function(){return this.fj};
g.vn=function(a,b){if(this.Pd&128)this.ie=this.ie&-256|b;else{this.hj=b;this.mc&=-97;var c;this.rd?(13!=b&&(8==b?this.rd.value=this.rd.value.slice(0,-1):(this.rd.value+=String.fromCharCode(b),this.rd.scrollTop=this.rd.scrollHeight)),c=!0):c=!1;c&&(this.mc|=96)}};g.fn=function(a,b){this.Pd&128?this.ie=this.ie&255|b<<8:this.Uf=b};g.gn=function(a,b){this.Pd=b};
g.hn=function(a,b){var c=this.Hc;this.Hc=b;if(this.Aj&&(c^b)&3){var c=this.Aj,d=this.Hc,e=3==(d&3);if(e){if(!c.Zb){var f=!1;c.Hc&2||(c.reset(),f=!0);c.Hc&1||(f=!0);f&&cj(c.$e,[77]);gj(c,c.rb);c.Zb=e}}else c.Zb&&(hj(c.rb),c.Zb=e);c.Hc=d}};var dj={0:Z.prototype.im,1:Z.prototype.Ul,2:Z.prototype.Vl,3:Z.prototype.Wl,4:Z.prototype.Yl,5:Z.prototype.Xl,6:Z.prototype.dm},ej={0:Z.prototype.vn,1:Z.prototype.fn,3:Z.prototype.gn,4:Z.prototype.hn};
v(function(){for(var a=C(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new Z(d);B(d,c)}});function ij(a){w.call(this,"Mouse",a,ij);if(this.Gh=a.serial)this.Pi="SerialPort";this.Zb=!1;this.Pa()}z(w,ij);g=ij.prototype;g.ic=function(a,b,c,d){this.Fa=a;this.ma=b;this.ia=c;this.Na=d};
g.Tb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Pi&&!this.$e){for(var c=null;(c=D(this.Fa,this.Pi,c))&&(!c.dj||!(this.$e=c.dj(this.Gh,this))););if(this.$e){if(c=D(this.Fa,"Video"))this.rb=c.rb}else u(this.id+": "+this.Pi+" "+this.Gh+" unavailable")}this.Zb?gj(this,this.rb):hj(this.rb)}return!0};g.Kb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.xd()};g.save=function(){var a=new H(this);a.set(0,this.Ti());return a.data()};
g.restore=function(a){return this.xd(a[0])};g.xd=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.Zb=a[b++];this.If=a[b++];this.Jf=a[b++];this.He=a[b++];this.Ie=a[b++];this.fg=a[b++];this.gg=a[b++];this.Hc=a[b];return!0};g.Ti=function(){var a=0,b=[];b[a++]=this.Zb;b[a++]=this.If;b[a++]=this.Jf;b[a++]=this.He;b[a++]=this.Ie;b[a++]=this.fg;b[a++]=this.gg;b[a]=this.Hc;return b};
function gj(a,b){b&&(a.th||(b.addEventListener("mousemove",function(b){if(a.Zb&&a.ia&&a.ia.rc){if(0>a.If||0>a.Jf)a.If=b.clientX,a.Jf=b.clientY;a.He=b.clientX-a.If;a.Ie=b.clientY-a.Jf;(a.He||a.Ie)&&jj(a);a.If=b.clientX;a.Jf=b.clientY}},!1),b.addEventListener("mousedown",function(b){kj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){kj(a,b.button,!1)},!1),a.th=!0),b.style.cursor="none")}function hj(a){a&&(a.style.cursor="auto")}
function kj(a,b,c){if(a.Zb&&a.ia&&a.ia.rc)switch(b){case 0:a.fg!=c&&(a.fg=c,jj(a));break;case 2:a.gg!=c&&(a.gg=c,jj(a))}}function jj(a){cj(a.$e,[64|(a.fg?32:0)|(a.gg?16:0)|(a.Ie&192)>>4|(a.He&192)>>6,a.He&63,a.Ie&63]);a.He=a.Ie=0}v(function(){for(var a=C(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new ij(d);B(d,c)}});
function lj(a,b,c){w.call(this,"Disk",{id:a.pg+".disk"+mj++},lj);this.ea=a;this.Fa=a.Fa;this.Na=a.Na;this.Oa=b;this.mode=c;this.fd=b.name;this.Qb=b.Qb;this.Jb=b.Jb;this.bc=b.bc;this.sb=b.sb;this.se=b.se;this.xh=this.Zc=!1;this.create();this.Kd=[];this.Mf=[];this.hd=null;this.Cj=0;this.Ah=!1;this.Pa()}var mj=0;z(w,lj);g=lj.prototype;g.ic=function(a,b,c,d){this.Na=d};g.Tb=function(a,b){b||this.xh&&!this.Zc&&this.load(this.fd,this.De);return!0};
g.Kb=function(a,b){if(this.Zc){var c,d=0;if(this.Ah&&!la("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=nj(this,!1);)if(d=c[0]){this.xa('Unable to save "'+this.fd+'" (error '+d+")");break}b&&this.Zc&&(c="action=close&volume="+this.De,c+="&machine="+this.ea.ue(),c+="&user="+this.ea.wd(),t(ka()+"/api/v1/disk?"+c,!0),this.Zc=!1);d||this.xa(this.fd+" saved")}return!0};
g.create=function(){this.gb=[];if("preload"!=this.mode){for(var a=Array(this.Qb),b=0;b<a.length;b++){for(var c=Array(this.Jb),d=0;d<c.length;d++){for(var e=Array(this.bc),f=1;f<=e.length;f++)e[f-1]=oj(null,b,d,f,this.sb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.gb=a}this.dg=0};
g.load=function(a,b,c){var d=b;this.fd=a;this.De=b;this.uj=c;0>b.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.Qb+":"+this.Jb+":"+this.bc+":"+this.sb,a+="&machine="+this.ea.ue(),a+="&user="+this.ea.wd(),d=ka()+"/api/v1/disk?"+a,this.xh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):
-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=ka()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.se?"":d)+"&format=json"));t(d,!0,null,this,this.Bm,b)};
g.Bm=function(a,b,c,d){var e=null;this.te=!1;var f=0>c&&this.Fa&&!this.Fa.Ab;if(this.xh)c?this.xa('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Zc=!0,e=this);else if(c)this.xa('Unable to load disk "'+this.fd+'" (error '+c+")",f);else try{if(0<da(a,!0).toLowerCase().indexOf("-readonly"))this.te=!0;else{var l=b.indexOf("\n");0<l&&1024>l&&0<b.substring(0,l).indexOf("write-protected")&&(this.te=!0)}var k;k="<"==b.substr(0,1)?["Missing disk image: "+this.fd]:0>b.indexOf("0x")&&'["'!=
b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(k.length)if(1==k.length)u(k[0]);else{for(b=a=0;b<k.length;b++)for(c=0;c<k[b].length;c++)for(d=0;d<k[b][c].length;d++){var m=k[b][c][d];if(m){var n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var s=m.data;if(void 0===s){var r=m.bytes;if(void 0!==r&&r.length){for(var f=n<<2,y=r.length;y<f;y++)r[y]=q;this.fill(m,r,0)}else s=[],q=m.pattern=q|q<<8|q<<16|
q<<24,m.data=s;delete m.bytes}oj(m,b,c);for(f=0;f<s.length;f++)a=a+s[f]&4294967295}}this.gb=k;this.dg=a;e=this}else u("Empty disk image: "+this.fd)}catch(M){u("Disk image error: "+M.message)}this.uj&&this.uj.call(this.ea,this.Oa,e,this.fd,this.De)};function oj(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.rl=b;a.tl=c;a.Fc=a.oc=0;a.Xa=!1;return a}
g.Cm=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],l=d[2],k=d[3];a=d[4];b=JSON.parse(b);for(var m=0;k--;){var n=this.seek(e,f,l,!0);if(!n)break;this.fill(n,b,m);m+=n.length;l++}}(d=d[5])&&d(c,a)};function pj(a,b,c,d,e,f){if(a.Zc){var l;l="action=read&volume="+a.De;l+="&chs="+a.Qb+":"+a.Jb+":"+a.bc+":"+a.sb;l=l+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ea.ue());l+="&user="+a.ea.wd();t(ka()+"/api/v1/disk?"+l,!0,null,a,a.Cm,[b,c,d,e,!0,f])}else f&&f(-1,!1)}
function qj(a,b,c){b.Xa=!0;var d=a.Kd.indexOf(b);0<=d&&(a.Kd.splice(d,1),a.Mf.splice(d,1));a.Kd.push(b);a.Mf.push(ha());c&&rj(a)}function rj(a){if(a.Kd.length){var b=a.Mf[0]+2E3;a.hd&&a.Cj<b&&(clearTimeout(a.hd),a.hd=null);if(!a.hd){var c=ha(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.hd=setTimeout(function(){nj(a,!0)},b);a.Cj=c+b}}else a.hd&&(clearTimeout(a.hd),a.hd=null)}
function nj(a,b){b&&(a.hd=null);var c=a.Kd[0];if(c){for(var d=c.rl,e=c.tl,c=c.sector,f=0,l=[],k=c-1;k<a.gb[d][e].length;k++){var m=a.gb[d][e][k];if(!m.Xa)break;var n=a.Kd.indexOf(m);a.Kd.splice(n,1);a.Mf.splice(n,1);l=l.concat(sj(m));m.Xa=!1;f++}a.Zc?(k={},a.Ah=!0,k.action="write",k.volume=a.De,k.chs=a.Qb+":"+a.Jb+":"+a.bc+":"+a.sb,k.addr=d+":"+e+":"+c+":"+f,k.machine=a.ea.ue(),k.user=a.ea.wd(),k.data=JSON.stringify(l),d=t(ka()+"/api/v1/disk",b,k,a,a.Hm,[d,e,c,f,b])):d=!1;return b||d}return!1}
g.Hm=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Ah=!1;if(0<=a&&a<this.gb.length&&0<=b&&b<this.gb[a].length)for(e-=1;0<f--&&0<=e&&e<this.gb[a][b].length;e++){var l=this.gb[a][b][e];c?qj(this,l,!1):l.Xa||(l.Fc=l.oc=0)}d&&rj(this)};g.info=function(){return this.gb.length?[this.gb.length,this.gb[0].length,this.gb[0][0].length,this.gb[0][0][0].length]:[0,0,0,0]};
g.seek=function(a,b,c,d,e){var f=null,l=this.Oa,k=this.gb[a];if(k){var m=k[b];if(!m&&l.Te&&b<l.Jb)for(m=k[b]=Array(l.od),k=0;k<m.length;k++)m[k]=oj(null,a,b,k+1,l.$a,0);if(m){for(k=0;k<m.length;k++)if(m[k]&&m[k].sector==c){f=m[k];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++k<m.length;)null===m[k].pattern&&d++;pj(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&l.Te&&9==l.Ka&&(f=m[k]=oj(null,a,b,l.Ka,l.$a,0))}}e&&e(f,!1);return f};
g.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function sj(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var l=f<e.length?e[f]:a;c[d++]=l&255;c[d++]=l>>8&255;c[d++]=l>>16&255;c[d++]=l>>24&255}return c}function tj(a,b){var c=-1;if(b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c}
g.write=function(a,b,c){if(this.se)return!1;if(b<a.length){if(c!=tj(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var l=d.length;l<=f;l++)d[l]=e;a.nc?f<a.Ec?(a.nc+=a.Ec-f,a.Ec=f):f>=a.Ec+a.nc&&(a.nc+=f-(a.Ec+a.nc)+1):(a.Ec=f,a.nc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Zc&&qj(this,a,!0)}return!0}return null};
g.save=function(){var a=0,b=[];b[a++]=[this.Ce,this.cg];if(!this.Zc&&!this.se)for(var c=this.Fb,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 l=c[d][e][f];if(l.nc){for(var k=[],m=0,n=l.Ec,q=l.Ec+l.nc;n<q;)k[m++]=l.data[n++];b[a++]=[d,e,f,l.Ec,k]}}return b};
g.restore=function(a){var b=0,c="unsupported restore format";if(this.Fb.length&&a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&e[1]!=this.cg&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.cg+")",b=-1);for(;d<a.length&&0<=b;){var f=0,l=a[d++],k=l[f++],m=l[f++],n=l[f++];if(k>=this.Fb.length||m>=this.Fb[k].length||n>=this.Fb[k][m].length){c="sector "+k+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.se){c="unable to modify write-protected disk";b=-1;break}e=
l[f++];f=l[f++];l=e+f.length;k=this.Fb[k][m][n];for(m=k.data.length;m<e;)k.data[m++]=k.pattern;m=0;k.Ec=e;for(k.nc=f.length;e<l;)k.data[e++]=f[m++];b++}}0>b&&this.xa("unable to restore disk '"+this.fd+": "+c);return b};
function uj(a){w.call(this,"FDC",a,uj);this.dmaRead=this.mh;this.dmaWrite=this.nh;this.dmaFormat=this.dl;this.ce=null;if(a.autoMount&&(this.ce=a.autoMount,"string"==typeof this.ce))try{this.ce=eval("("+a.autoMount+")")}catch(b){u("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.ce=null}this.cc=[];this.$c();this.Re()||this.Pa()}z(w,uj);h={};ca={};
var vj={3:{Uc:3,qd:0,name:ca.eo},4:{Uc:2,qd:1,name:ca.bo},5:{Uc:9,qd:7,name:ca.oo},6:{Uc:9,qd:7,name:ca.Xn},7:{Uc:2,qd:0,name:ca.Zn},8:{Uc:1,qd:2,name:ca.co},10:{Uc:2,qd:7,name:ca.Yn},13:{Uc:6,qd:7,name:ca.Rn},15:{Uc:3,qd:0,name:ca.ao}};g=uj.prototype;
g.tb=function(a,b,c,d){switch(c){case "listDisks":return this.oa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.oa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){u("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d='<a href="'+m+'" target="_blank">'+d+"</a>");c.innerHTML=
d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.oa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||wj(a,c)}}(this,d),!0;case "loadDrive":return this.oa[c]=d,d.onclick=function(a){return function(){var b,c=a.oa.listDisks,d=a.oa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.ta.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=da(d);a.Sb("Attempting to load "+
d+' as "'+c+'"')}for(;xj(a,b,c,d,!1)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var m=a,n=d,q=void 0,q=0;q<m.cc.length;q++)if(m.cc[q][1]==n){m.cc.splice(q,1);break}yj(a,b,!1,!0)}}else yj(a,b);else a.xa("Nothing to load")}}(this),!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;this.Fa=a;this.ga=D(a,"ChipSet");Ta(b,this,zj);Va(b,this,Aj)};
g.Rb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Fa.xh){this.cc=[];for(var c=0;c<this.ta.length;c++)yj(this,c,!0);this.Re(!0)}}else if(!this.restore(a))return!1;if(this.ga){this.zg=th(this.ga);for(c=0;c<this.zg;c++){var d=this.ta[c];d.fj=ph(this.ga,c);2==d.fj&&(d.ic=80)}if(d=this.oa.listDrives){for(;d.firstChild;)d.removeChild(d.firstChild);d.innerHTML="";for(c=0;c<this.zg;c++){var e=window.document.createElement("option");e.value=c;e.innerHTML=String.fromCharCode(65+c)+":";d.appendChild(e)}0<
this.zg&&(d.value="0",wj(this,0))}}}return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.$c()};g.save=function(){var a=new H(this);a.set(0,this.Ni());return a.data()};g.restore=function(a){return this.$c(a[0])};
g.$c=function(a){var b=0,c=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.Sa=a[b++];b++;this.sa=a[b++];this.Kb=a[b++];this.hb=a[b++];this.Wa=a[b++];this.Be=a[b++];var d=a[b++],e=a[b++];null!=e&&(this.cc=e);void 0===this.ta&&(this.zg=0,this.ta=Array(4));for(e=0;e<this.ta.length;e++)void 0===this.ta[e]&&(this.ta[e]={}),this.Hh(this.ta[e],e,d[e])||(c=!1);this.Fd=a[b++]||0;this.Kk=a[b]||0;return c};
g.Ni=function(){var a=0,b=[];b[a++]=this.Sa;b[a++]=0;b[a++]=this.sa;b[a++]=this.Kb;b[a++]=this.hb;b[a++]=this.Wa;b[a++]=this.Be;b[a++]=this.Pi();for(var c=a++,d=0;d<this.ta.length;d++){var e=this.ta[d];e.ra&&Bj(this,e.ee,e.ra)}b[c]=this.cc;b[a++]=this.Fd;b[a]=this.Kk;return b};
g.Hh=function(a,b,c){var d=0,e=!0;a.Sa=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.ic||40,c[3],9,512,c[1]]);a.Ra=c[d++];a.name=c[d][0];a.ic=c[d][1];a.Yb=c[d][2];a.Fc=c[d][3];a.yb=c[d][4];a.re=c[d][5];d++;a.fj=1;a.Ea=c[d++];a.ld=c[d++];a.cb=c[d++];a.ld=100<=a.ld?a.ld-100:a.ld-a.cb;a.Ka=c[d++];a.od=c[d++];a.$a=c[d++];a.Ta=c[d++];a.Ja=null;a.ra||(a.ee="");var f=c[d++];f===Cj?(f=c[d++],c=c[d],xj(this,b,f,c,!0)?a.ra&&Dj(this,f,c,a.ra):this.Pa(!1)):void 0!==f&&a.ra&&
0>a.ra.restore(f)&&(e=!1);e&&a.ra&&void 0!==a.Ta&&(a.Ja=a.ra.seek(a.cb,a.Ea,a.Ka));return e};g.Pi=function(){for(var a=0,b=[],c=0;c<this.ta.length;c++)b[a++]=this.Oi(this.ta[c]);return b};g.Oi=function(a){var b=0,c=[];c[b++]=a.Ra;c[b++]=[a.name,a.ic,a.Yb,a.Fc,a.yb,a.re];c[b++]=a.Ea;c[b++]=a.ld+100;c[b++]=a.cb;c[b++]=a.Ka;c[b++]=a.od;c[b++]=a.$a;c[b++]=a.Ta;c[b++]=Cj;c[b++]=a.Pk;c[b]=a.ee;return c};
g.Re=function(a){a||(this.Qd=0);if(this.ce)for(var b in this.ce){var c=this.ce[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.ta.length){!xj(this,d,c.name,c.path,!0)&&a&&this.Pa(!1);continue}}this.xa("Unrecognized auto-mount specification for drive "+b)}return!!this.Qd};function xj(a,b,c,d,e){var f=a.ta[b];if(d&&f.ee!=d){yj(a,b,e,!0);if(f.Dc)return a.xa("Drive "+b+" busy"),!0;f.Dc=!0;e&&(f.Xd=!0,a.Qd++);(new lj(a,f,"preload")).load(c,d,a.rm);return!1}return!0}
g.rm=function(a,b,c,d){a.Dc=!1;b&&b.Fb.length>a.ic&&(this.xa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Sa)),b=null);b&&(a.ra=b,a.Pk=c,a.ee=d,Dj(this,c,d,b),this.Fd|=128,this.xa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Sa),a.Xd));a.Xd&&(a.Xd=!1,--this.Qd||this.Pa());wj(this,a.Sa)};
function wj(a,b){if(0<=b&&b<a.ta.length){var c=a.ta[b],d=a.oa.listDisks,e=a.oa.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.ee){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function yj(a,b,c,d){var e=a.ta[b];e.ra&&(Bj(a,e.ee,e.ra),e.Pk="",e.ee="",e.ra=null,a.Fd|=128,d||a.xa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||wj(a,b))}
function Dj(a,b,c,d){var e;for(e=0;e<a.cc.length;e++)if(a.cc[e][1]==c){d.restore(a.cc[e][2]);return}a.cc[e]=[b,c,[]]}function Bj(a,b,c){var d;for(d=0;d<a.cc.length;d++)if(a.cc[d][1]==b){a.cc[d][2]=c.save();break}}g.Ym=function(a,b){b&4?this.Be&4||this.Be&8&&this.ga&&R(this.ga,6):this.$c();this.Be=b};g.Ml=function(){return this.sa};g.Kl=function(){var a=0;this.hb<this.Wa&&(a=this.Kb[this.hb]);this.Be&8&&this.ga&&Kh(this.ga,6);++this.hb>=this.Wa&&(this.sa&=-81,this.hb=this.Wa=0);return a};
g.Xm=function(a,b){this.Wa<this.Kb.length&&(this.Kb[this.Wa++]=b);var c=this.Kb[0]&31;if(void 0!==vj[c]&&this.Wa>=vj[c].Uc){var d=!1;this.hb=0;var e,f,c=this.Ga()&31;switch(c){case 3:this.Ga(h.fo);this.Ga(h.Tn);this.pb();break;case 4:f=this.Ga(h.Ie);this.Sa=f&3;e=this.ta[this.Sa];this.pb();this.Va((e.Ra&4278190080)>>>24,h.ko);break;case 5:case 6:f=this.Ga(h.Ie);this.Sa=f&3;e=this.ta[this.Sa];e.Ea=f>>2&1;e.cb=this.Ga(h.Rg);this.Ga(h.Sg);e.Ka=this.Ga(h.Ug);d=this.Ga(h.Jf);e.$a=128<<d;e.od=this.Ga(h.Qn);
this.Ga(h.Yk);this.Ga(h.Pn);6==c?this.oh(e):this.ph(e);this.pb();Ej(this,e);Fj(this,e);Gj(this,e);this.Va(e.cb,h.Rg);this.Va(e.Ea,h.Sg);this.Va(e.Ka,h.Ug);this.Va(d,h.Jf);d=!0;break;case 7:f=this.Ga(h.Ie);this.Sa=f&3;e=this.ta[this.Sa];e.cb=e.ld=0;e.Ra=268435488;this.pb();d=!0;break;case 8:e=this.ta[this.Sa];e.Ea=0;this.pb();Ej(this,e);this.Va(e.cb,h.Wn);this.Sa=this.Sa+1&3;break;case 10:f=this.Ga(h.Ie);this.Sa=f&3;e=this.ta[this.Sa];e.Ea=f>>2&1;e.Ka=1;d=0;e.Ra=0;e.ra&&(e.Ja=e.ra.seek(e.cb,e.Ea,e.Ka))?
d=e.Ja.length:e.Ra=1088;Ej(this,e);Fj(this,e);Gj(this,e);this.Va(e.cb,h.Rg);this.Va(e.Ea,h.Sg);this.Va(e.Ka,h.Ug);this.Va(d,h.Jf);d=!0;break;case 13:f=this.Ga(h.Ie);this.Sa=f&3;e=this.ta[this.Sa];e.Ea=f>>2&1;d=this.Ga(h.Jf);e.$a=128<<d;e.od=this.Ga(h.$n);this.Ga(h.Yk);e.bj=this.Ga(h.On);this.lj(e);this.pb();Ej(this,e);Fj(this,e);Gj(this,e);this.Va(e.cb,h.Rg);this.Va(e.Ea,h.Sg);this.Va(e.Ka,h.Ug);this.Va(d,h.Jf);d=!0;break;case 15:f=this.Ga(h.Ie),this.Sa=f&3,e=this.ta[this.Sa],e.Ea=f>>2&1,c=this.Ga(h.Vn),
e.cb+=c-e.ld,0>e.cb&&(e.cb=0),e.cb>=e.ic&&(e.cb=e.ic-1),e.ld=c,e.Ra=32,0==e.cb&&(e.Ra|=268435456),this.pb(),d=!0}0<this.Wa&&(this.sa|=80);this.Be&8&&(!e||e.Ra&8||!d||this.ga&&R(this.ga,6))}};g.Ll=function(){var a=this.Fd;this.Fd&=-129;return a};g.Wm=function(a,b){this.Kk=b};g.Ga=function(){var a=this.Kb[this.hb];this.hb++;return a};g.pb=function(){this.hb=this.Wa=0};g.Va=function(a){this.Kb[this.Wa++]=a};function Ej(a,b){a.Va(b.Sa|b.Ea<<2|b.Ra&255,h.ho)}
function Fj(a,b){a.Va((b.Ra&65280)>>>8,h.io)}function Gj(a,b){a.Va((b.Ra&16711680)>>>16,h.jo)}g.mh=function(a,b,c){void 0===b||0>b?this.uc(a,c):c(-1,!1)};g.nh=function(a,b){return void 0!==b&&0<=b?this.wc(a,b):-1};g.dl=function(a,b){return void 0!==b&&0<=b?this.Ti(a,b):-1};g.oh=function(a){a.Ra=72;a.ra&&(a.Ja=null,a.Ra=0,this.ga&&(Eh(this.ga,2,this,"dmaRead",a),Ch(this.ga,2)))};
g.ph=function(a){a.Ra=72;a.ra&&(a.ra.se?a.Ra=576:(a.Ja=null,a.Ra=0,this.ga&&(Eh(this.ga,2,this,"dmaWrite",a),Ch(this.ga,2))))};g.lj=function(a){a.Ra=72;a.ra&&(a.Ja=null,a.Ra=0,this.ga&&(a.Td=0,a.dc=Array(4),a.Se=!0,a.Xe=0,Eh(this.ga,2,this,"dmaFormat",a),Ch(this.ga,2),a.Se=!1))};g.uc=function(a,b){var c=-1;if(!a.Ra&&a.ra){do{if(a.Ja&&0<=(c=tj(a.Ja,a.Ta++)))break;a.Ja=a.ra.seek(a.cb,a.Ea,a.Ka);if(!a.Ja){a.Ra=1088;break}a.Ta=0;this.Pe(a)}while(1)}b(c,!1)};
g.wc=function(a,b){if(a.Ra||!a.ra)return-1;do{if(a.Ja&&a.ra.write(a.Ja,a.Ta++,b))break;a.Ja=a.ra.seek(a.cb,a.Ea,a.Ka);if(!a.Ja){a.Ra=8256;b=-1;break}a.Ta=0;this.Pe(a)}while(1);return b};g.Pe=function(a){a.Ka++;a.Ka>=a.Fc+1&&(a.Ka=1,a.Ea++,a.Ea>=a.Yb&&(a.Ea=0,a.cb++))};g.Ti=function(a,b){if(a.Ra)return-1;a.dc[a.Td++]=b;if(a.Td==a.dc.length){a.cb=a.dc[0];a.Ea=a.dc[1];a.Ka=a.dc[2];a.$a=128<<a.dc[3];for(var c=a.Td=0;c<a.$a;c++)if(0>this.wc(a,a.bj))return-1;a.Xe++}a.Xe>=a.od&&(b=-1);return b};
var zj={1012:uj.prototype.Ml,1013:uj.prototype.Kl,1015:uj.prototype.Ll},Aj={1010:uj.prototype.Ym,1013:uj.prototype.Xm,1015:uj.prototype.Wm};v(function(){for(var a=C(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new uj(d);B(d,c)}});
function $(a){w.call(this,"HDC",a,$);this.dmaRead=this.mh;this.dmaWrite=this.nh;this.dmaWriteBuffer=this.el;this.dmaWriteFormat=this.fl;this.Wg=[];if(a.drives)try{this.Wg=eval("("+a.drives+")")}catch(b){u("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.gf=(this.Wd="at"==a.type)?1:0;this.pl=this.Wd?2:3}z(w,$);
var Hj=[{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]}];g=$.prototype;g.tb=function(){return!1};g.gc=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;this.Fa=a;this.ga=D(a,"ChipSet");Ta(b,this,this.Wd?Ij:Jj);Va(b,this,this.Wd?Kj:Lj);this.reset();this.Re()||this.Pa()};
g.Rb=function(a,b){if(!b)if(!a||!this.restore)this.$c(),this.Fa.xh&&this.Re(!0);else if(!this.restore(a))return!1;return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.te=function(){return this.Fa?this.Fa.te():""};g.wd=function(){return this.Fa?this.Fa.wd():""};g.reset=function(){this.$c(null,!0)};g.save=function(){var a=new H(this);a.set(0,this.Ni());return a.data()};g.restore=function(a){return this.$c(a[0])};
g.$c=function(a,b){var c=0,d=!0;if(this.Wd)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.Ed=a[c++],this.Ok=a[c++],this.Ig=a[c++],this.Jg=a[c++],this.Hg=a[c++],this.Gg=a[c++],this.Ae=a[c++],this.sa=a[c++],this.Li=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.Af=a[c++];this.sa=a[c++];this.Kb=a[c++];this.hb=a[c++];this.Wa=a[c++];this.Nk=a[c++];this.Mk=a[c++];this.Lk=a[c++];var e=a[c++];void 0!==e?this.ff=e:void 0===this.ff&&(this.ff=-1)}void 0===this.ta&&(this.ta=Array(this.Wg.length));c=a[c];void 0===
c&&(c=[]);for(e=0;e<this.ta.length;e++){void 0===this.ta[e]&&(this.ta[e]={});var f=this.ta[e];this.Hh(e,f,this.Wg[e],c[e],b)||(d=!1);null!=this.Af&&1>=e&&(this.Af|=(f.type&3)<<(1-e<<1))}return d};
g.Ni=function(){var a=0,b=[];this.Wd?(b[a++]=this.Ed,b[a++]=this.Ok,b[a++]=this.Ig,b[a++]=this.Jg,b[a++]=this.Hg,b[a++]=this.Gg,b[a++]=this.Ae,b[a++]=this.sa,b[a++]=this.Li):(b[a++]=this.Af,b[a++]=this.sa,b[a++]=this.Kb,b[a++]=this.hb,b[a++]=this.Wa,b[a++]=this.Nk,b[a++]=this.Mk,b[a++]=this.Lk,b[a++]=this.ff);b[a]=this.Pi();return b};
g.Hh=function(a,b,c,d,e){var f=0,l=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Sa=a;b.errorCode=d[f++];b.Tk=d[f++];b.re=d[f++];b.ke=d[f++];b.le=d[f++];b.Ea=d[f++];b.Yb=d[f++];b.Hd=d[f++];b.Ka=d[f++];b.od=d[f++];b.$a=d[f++];b.Yf=this.Wd?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.wd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Hj[this.gf][b.type])b.type=this.pl;c=Hj[this.gf][b.type];
b.Fc=c[2]||17;b.yb=c[3]||512;if(e&&this.ga&&(e=this.ga,c=b.type,e.ka)){var k=e.ka[18],k=a?k&240|c:k&15|c<<4;e.ka&&(e.ka[18]=k,qh(e))}void 0===b.ra&&(b.ra=null,this.xa("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Mj(this,b);b.Ta=d[f++];b.Ja=null;b.ra&&(a=d[f],void 0!==a&&0>b.ra.restore(a)&&(l=!1),l&&void 0!==b.Ta&&(b.Ja=b.ra.seek(b.Hd,b.Ea,b.Ka+b.Yf)));return l};g.Pi=function(){for(var a=0,b=[],c=0;c<this.ta.length;c++)b[a++]=this.Oi(this.ta[c]);return b};
g.Oi=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.Tk;c[b++]=a.re;c[b++]=a.ke;c[b++]=a.le;c[b++]=a.Ea;c[b++]=a.Yb;c[b++]=a.Hd;c[b++]=a.Ka;c[b++]=a.od;c[b++]=a.$a;c[b++]=a.Ta;c[b]=a.ra?a.ra.save():null;return c};
function Mj(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ke[2])?e=b.ke[0]<<8|b.ke[1]:c=b.type);null==c||d||(d=Hj[a.gf][c][1],e=Hj[a.gf][c][0]);d&&((c=Hj[a.gf][b.type])&&e!=c[0]&&d!=c[1]&&a.xa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.ic=e,b.Yb=d,null==b.ra&&(b.ra=new lj(a,b,b.mode)))}}
g.Re=function(a){a||(this.Qd=0);for(var b=0;b<this.ta.length;b++){var c=this.ta[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.ta[b];e.Dc?(this.xa("Drive "+b+" busy"),d=!0):(e.Dc=!0,e.Xd=!0,this.Qd++,(e.ra||new lj(this,e,e.mode)).load(d,c,this.qm),d=!1);!d&&a&&this.Pa(!1)}else a&&void 0!==c.type&&(c.ra=null,Mj(this,c,c.type))}return!!this.Qd};g.qm=function(a,b,c){a.Dc=!1;(a.ra=b)&&this.xa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Sa),a.Xd);a.Xd&&(a.Xd=!1,--this.Qd||this.Pa())};
g.lm=function(){var a=0;this.hb<this.Wa&&(a=this.Kb[this.hb]);this.ga&&Kh(this.ga,5);this.sa&=-33;++this.hb>=this.Wa&&(this.hb=this.Wa=0,this.sa&=-15);return a};g.un=function(a,b){this.Wa<this.Kb.length&&(this.Kb[this.Wa++]=b);var c=12!=this.Kb[0]?6:this.Kb.length;6==this.Wa&&(this.sa&=-2);this.Wa>=c&&(this.sa|=2,this.sa&=-2,Nj(this))};g.mm=function(){var a=this.sa;this.hb<this.Wa&&(this.sa|=1);return a};g.xn=function(a,b){this.Nk=b;this.ga&&Kh(this.ga,5);this.$c()};g.km=function(){return this.Af};
g.wn=function(a,b){this.Mk=b;this.sa=13};g.vn=function(a,b){this.Lk=b};g.Gi=function(){};g.xl=function(){var a=-1;if(this.Oa&&(a=this.uc(this.Oa),this.Oa.Ta==this.Oa.yb))if(this.Oa.$a-=this.Oa.yb,this.Oa.$a>=this.Oa.yb){var b=this;this.uc(this.Oa,function(a){0<=a?b.ga&&R(b.ga,14):(b.sa=1,b.Ed=16)},!1)}else this.sa=80;return a};
g.Lm=function(a,b){this.Oa&&this.Oa.$a>=this.Oa.yb&&(0>this.wc(this.Oa,b)?(this.sa=1,this.Ed=16):this.Oa.Ta==this.Oa.yb&&(this.Oa.$a-=this.Oa.yb,this.ga&&R(this.ga,14),this.Oa.$a>=this.Oa.yb||(this.sa=80)))};g.zl=function(){return this.Ed};g.Pm=function(a,b){this.Ok=b};g.Al=function(){return this.Ig};g.Nm=function(a,b){this.Ig=b};g.Bl=function(){return this.Jg};g.Om=function(a,b){this.Jg=b};g.wl=function(){return this.Hg};g.Km=function(a,b){this.Hg=b};g.vl=function(){return this.Gg};
g.Jm=function(a,b){this.Gg=b};g.yl=function(){return this.Ae};g.Mm=function(a,b){this.Ae=b;this.sa=this.ta[this.Ae&16?1:0]?this.sa|64:this.sa&-65};g.Cl=function(){return this.sa};g.Im=function(a,b){this.Li=b;this.ga&&Kh(this.ga,14);Oj(this)};
function Oj(a){var b=!1,c=a.Li,d=a.Ae&16?1:0,e=a.Ae&15,f=a.Hg|(a.Gg&3)<<8,l=a.Jg,k=a.Ig;a.Oa=null;a.Ed=0;a.sa=80;(d=a.ta[d])?(d.Hd=f,d.Ea=e,d.Ka=l,d.$a=k*d.yb,c=144<=c?c:c&240,d.Ja=null,d.errorCode=0,a.Oa=d):c=-1;switch(c&240){case 32:a.uc(d,function(b){0<=b&&a.ga?(R(a.ga,14),a.sa=136):(a.sa=1,a.Ed=16)},!1);break;case 48:a.ga?(R(a.ga,14),a.sa=136):(a.sa=1,a.Ed=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Ed=1;b=!0;break;case 145:d.Yb=e+1,d.Fc=k,b=!0}b&&a.ga&&R(a.ga,14)}
function Nj(a){a.hb=0;var b=a.Ga(),c=a.Ga(),d=c&32,e=d>>5,f=c&31,l=a.Ga(),k=a.Ga(),m=l<<2&768|k,n=l&63,q=a.Ga(),s=a.Ga(),r=a.ta[e];r&&(r.Hd=m,r.Ea=f,r.Ka=n,r.$a=q*r.yb);switch(b){case 3:a.pb(r?r.errorCode:4);a.Va(c);a.Va(l);a.Va(k);a.Va(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ga());)r&&c<r.ke.length&&(r.ke[c++]=b);r&&Mj(a,r);b=0;r||a.ff!=e||(a.ff=-1,b=2);a.pb(b|d);b=-1;break;case 224:case 228:a.pb(0|d),b=-1}if(0<=b)switch(void 0===r?b=-1:(r.errorCode=0,r.Tk=0),b){case 0:a.pb(0|d);break;case 1:r.qo=
s;a.pb(0|d);break;case 5:a.pb(0|d);break;case 8:a.oh(r,function(b){a.pb(b|d)});break;case 10:a.ph(r,function(b){a.pb(b|d)});break;case 15:Pj(a,r,function(b){a.pb(b|d)});break;default:a.pb(2|d)}}g.Ga=function(){var a=-1;this.hb<this.Wa&&(a=this.Kb[this.hb++]);return a};g.pb=function(a){this.hb=this.Wa=0;void 0!==a&&this.Va(a);this.ga&&R(this.ga,5);this.sa|=32};g.Va=function(a){this.Kb[this.Wa++]=a};g.mh=function(a,b,c){void 0===b||0>b?this.uc(a,c):c(-1,!1)};
g.nh=function(a,b){return void 0!==b&&0<=b?this.wc(a,b):-1};g.el=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Ta<a.le.length?a.le[a.Ta++]=c:(a.errorCode=20,c=-1)):c=-1;return c};g.fl=function(a,b){return void 0!==b&&0<=b?this.Ti(a,b):-1};g.oh=function(a,b){a.errorCode=4;if(a.ra&&(a.Ja=null,this.ga)){a.errorCode=0;Eh(this.ga,3,this,"dmaRead",a);Ch(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
g.ph=function(a,b){a.errorCode=4;if(a.ra&&(a.Ja=null,this.ga)){a.errorCode=0;Eh(this.ga,3,this,"dmaWrite",a);Ch(this.ga,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Pj(a,b,c){b.errorCode=4;b.le&&b.le.length==b.$a||(b.le=Array(b.$a));b.Ta=0;a.ga?(b.errorCode=0,Eh(a.ga,3,a,"dmaWriteBuffer",b),Ch(a.ga,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
g.lj=function(a,b){a.errorCode=4;if(a.ra&&(a.Ja=null,this.ga)){a.Td=0;a.dc=Array(4);a.Se=!0;a.Xe=0;a.errorCode=0;Eh(this.ga,3,this,"dmaWriteFormat",a);Ch(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Se=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
g.uc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ja&&(d=tj(a.Ja,a.Ta),a.Ta+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;a.ra.seek(a.Hd,a.Ea,a.Ka+a.Yf,!1,function(c,d){var m=-1;(a.Ja=c)?(a.Ta=0,f.Pe(a),m=tj(a.Ja,a.Ta),a.Ta+=e):a.errorCode=20;b(m,d)})}return d};
g.wc=function(a,b){if(a.errorCode)return-1;do{if(a.Ja&&a.ra.write(a.Ja,a.Ta++,b))break;a.ra.seek(a.Hd,a.Ea,a.Ka+a.Yf,!0,function(b){a.Ja=b});if(!a.Ja){a.errorCode=20;b=-1;break}a.Ta=0;this.Pe(a)}while(1);return b};g.Pe=function(a){a.Ka++;var b=1-a.Yf;a.Ka>=a.Fc+b&&(a.Ka=b,a.Ea++,a.Ea>=a.Yb&&(a.Ea=0,a.Hd++))};
g.Ti=function(a,b){if(a.errorCode)return-1;a.dc[a.Td++]=b;if(a.Td==a.dc.length){a.Hd=a.dc[0];a.Ea=a.dc[1];a.Ka=a.dc[2];a.$a=128<<a.dc[3];for(var c=a.Td=0;c<a.$a;c++)if(0>this.wc(a,a.bj))return-1;a.Xe++}a.Xe>=a.od&&(b=-1);return b};
var Jj={800:$.prototype.lm,801:$.prototype.mm,802:$.prototype.km},Ij={496:$.prototype.xl,497:$.prototype.zl,498:$.prototype.Al,499:$.prototype.Bl,500:$.prototype.wl,501:$.prototype.vl,502:$.prototype.yl,503:$.prototype.Cl},Lj={800:$.prototype.un,801:$.prototype.xn,802:$.prototype.wn,803:$.prototype.vn,807:$.prototype.Gi,811:$.prototype.Gi,815:$.prototype.Gi},Kj={496:$.prototype.Lm,497:$.prototype.Pm,498:$.prototype.Nm,499:$.prototype.Om,500:$.prototype.Km,501:$.prototype.Jm,502:$.prototype.Mm,503:$.prototype.Im};
v(function(){for(var a=C(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new $(d);B(d,c)}});function H(a,b,c){this.id=a.id;this.key=Qj(a,b,c);this.Na=a.Na;Tj(this,a.yn)}function Qj(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}function Uj(){try{return"undefined"!==typeof window.localStorage}catch(a){return!1}}
H.prototype={set:function(a,b){this[this.id][a]=b},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.vh=!0):this.vh?!0:Uj()&&(a=window.localStorage.getItem(this.key))?(this[this.id]=a,this.vh=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){u(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},
clear:function(a){Tj(this);if(Uj())for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}}};function Tj(a,b){a[a.id]={};b&&a.set("parms",b);a.vh=!1}function Vj(a){var b=!0;if(Uj()){var c=JSON.stringify(a[a.id]);try{window.localStorage.setItem(a.key,c)}catch(d){u("Unable to store "+c.length+" bytes in browser local storage"),b=!1}}return b}
function Wj(a,b,c){w.call(this,"Computer",a,Wj);this.zb=!1;this.hf=a.buswidth;this.jc=Xj;this.Ef=null;this.lg=!1;this.url=b?b.url:null;this.Fn=(Math.random()+0.1).toString(36).substr(2,12);this.vc=Yj(this);if(this.ia=Ba("CPU",this.id)){this.Na=Ba("Debugger",this.id);this.ma=new Ha({id:this.og+".bus",buswidth:this.hf},this.ia,this.Na);var d,e=za(this.id);if((this.zf=Ba("Panel",this.id))&&this.zf.jh)for(b=0;b<e.length;b++)d=e[b],d.xa=this.zf.xa,d.Sb=this.zf.Sb,d.jh=this.zf.jh;this.Sb("PREFETCH: false, TYPEDARRAYS: false");
for(b=0;b<e.length;b++)d=e[b],d.gc&&d.gc(this,this.ma,this.ia,this.Na);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Lg=d:this.jc=parseInt(d,10));var f;if(a=ua&&ua.state||(f=!0,a.state))b=this.Rk=a,f||(this.lg=!0,this.jc=Xj),this.jc&&(this.Pg=new H(this,"1.15.5"),this.Pg.load()?b=null:delete this.Pg);!b&&this.jc&&(f=null,this.vc&&(f=ka()+"/api/v1/user?req=load&user="+this.vc+"&state="+Qj(this,"1.15.5")),b=f)&&(this.lg=!0);b?t(b,!0,null,this,this.Cm):this.Pa();c||Zj(this,this.Eg)}else u("Unable to find CPU component")}
z(w,Wj);var Cj=102,Xj=0;g=Wj.prototype;g.te=function(){return this.Fn};g.wd=function(){return this.vc?this.vc:""};g.Cm=function(a,b,c){c?(this.Lg=null,this.lg=!1,this.xa("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Ef=b;this.Pa()};function Zj(a,b,c){for(var d=za(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Da(f)){Da(f,function(){Zj(a,b,c)});return}}b.call(a,c)}
function ak(a,b){var c=new H(a,"1.15.5","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.xa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
g.Eg=function(a){void 0===a&&(a=this.Ef?1:this.jc);var b=!1,c=!1;this.pj=!1;var d=this.Pg||new H(this,"1.15.5");if(-1==a)b=!0;else if(a>Xj){if(d.load(this.Ef)){this.Fe=new H(this,"1.15.5","failsafe");this.Fe.load()&&(bk(this,d),a=2);this.Fe.set("timestamp",ia());Vj(this.Fe);var e=this.jc&&!this.lg;if(1==a||la("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),l=d.get("data");f&&("ok"==f?d.load(l):("error"==f&&"no machine state"!=l?(this.xa("Error: "+l),"unable to verify user"==
l&&(ma(""),this.vc=null)):this.Sb(f+": "+l),Tj(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&ak(this,c?d:null)}else 2==a&&d.clear()}else ak(this);delete this.Ef;delete this.Pg}e=za(this.id);for(f=0;f<e.length;f++)l=e[f],l!==this&&l!=this.ia&&(c=ck(this,l,d,b,c));b=[d,a,c];-1!=a?Zj(this,this.Ik,b):this.Ik(b)};
function ck(a,b,c,d,e){if(!b.zb){b.zb=!0;if(b.Rb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.Rb(f,d)&&f&&(u("Unable to restore state for "+b.type),a.Rk&&!a.Ef?(c.clear(),a.jc=Xj,window&&window.location.reload()):a.pj=!0,b.Rb(null),e=!1)}if(!d&&b.jj)for(a=b.jj.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
g.Ik=function(a){var b=a[0],c=0>a[1];a=a[2];this.zb=!0;this.nj||(this.Sb("PCjs v1.15.5\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.nj=!0);this.ia&&ck(this,this.ia,b,c,a);this.pj&&(bk(this,b),b.clear());!c&&this.Fe&&(this.Fe.clear(),delete this.Fe)};
function bk(a,b){if(la("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.wd(),d=b.toString(),e={app:"PCjs",ver:"1.15.5"};e.url=a.url;e.user=c;e.type="bug";e.data=d;t("http://www.pcjs.org/api/v1/report",!0,e)}}
function dk(a,b,c){var d,e="none",f=new H(a,"1.15.5"),l=new H(a,"1.15.5","validate"),k=ia();l.set("timestamp",k);f.set("timestamp",k);f.set("version","1.15.5");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.ia&&a.ia.Jb&&(c&&db(a.ia),d=a.ia.Jb(b,c),"object"===typeof d&&f.set(a.ia.id,d),c&&(a.ia.zb=!1,!1===d&&(e=null)));for(var k=za(a.id),m=0;m<k.length;m++){var n=k[m];n.zb&&(n.Jb&&(d=n.Jb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.zb=!1,!1===
d&&(e=null)))}e&&(c?(k=d=!1,b?(a.vc&&ek(a,a.vc,f.toString()),Vj(l)&&Vj(f)||(e=null,d=k=!0)):a.jc&&(d=!0,k=3==a.jc),d&&f.clear(k)):e=f.toString());c&&(a.zb=!1);return e}g.reset=function(){this.ma&&this.ma.reset&&this.ma.reset();for(var a=za(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ma&&c.reset&&c.reset()}};g.start=function(a,b){for(var c=za(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};
g.stop=function(a,b){for(var c=za(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};g.tb=function(a,b,c,d){var e=this;switch(c){case "save":return this.oa[c]=d,d.onclick=function(){var a=Yj(e,!0);if(a){var b=!(!e.jc||e.Lg),c=dk(e,b);b?ek(e,a,c):e.xa("Resume disabled, machine state not saved")}},!0;case "reset":return this.oa[c]=d,d.onclick=function(){eb(e)},!0}return!1};
function Yj(a,b){var c=a.vc;if(!c){var d;if(window)try{d=window.localStorage.getItem("user")}catch(e){}c=d;void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email Jeff@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=fk(a,c))||a.xa("Your user ID has not been approved."))):b&&a.xa("Browser local storage is not available")}return c}
function fk(a,b){a.vc=null;var c=t(ka()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(ma(c.data),a.vc=c.data)}catch(e){u(e.message+" ("+d+")")}return a.vc}
function ek(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Qj(a,"1.15.5");d.data=c;b=t(ka()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.xa("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.xa(c),ma(""),a.vc=null)}}
function eb(a){if(a.jc&&!a.Lg){var b=1==a.jc||!la("Click OK to reset the PCjs machine state.\n(WARNING: All disk changes will be discarded)");dk(a,b,!0);!b&&a.Rk?window&&window.location.reload():(b||(a.xh=!0),a.Eg(Xj),a.xh=!1)}else a.reset(),a.ia&&cb(a.ia)}function D(a,b,c){a=za(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}
v(function(){for(var a=C(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=A(c),c=C(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],l=A(f),l=new Wj(l,d,!0);B(l,f);Zj(l,l.Eg)}});oa.show.push(function(){for(var a=C(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=A(a[b]);(c=Ba("Computer",c.id))&&c.nj&&!c.zb&&c.Eg(-1)}});
oa.exit.push(function(){for(var a=C(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=A(a[b]);(c=Ba("Computer",c.id))&&c.zb&&dk(c,!(!c.jc||c.Lg),!0)}});function gk(a,b,c,d){var e=t(a);if(e[0])throw Error(e[1]);return hk(e[1],a,b,c,d)}
g.write=function(a,b,c){if(this.te)return!1;if(b<a.length){if(c!=tj(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var l=d.length;l<=f;l++)d[l]=e;a.oc?f<a.Fc?(a.oc+=a.Fc-f,a.Fc=f):f>=a.Fc+a.oc&&(a.oc+=f-(a.Fc+a.oc)+1):(a.Fc=f,a.oc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Zc&&qj(this,a,!0)}return!0}return null};
g.save=function(){var a=0,b=[];b[a++]=[this.De,this.dg];if(!this.Zc&&!this.te)for(var c=this.gb,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 l=c[d][e][f];if(l&&l.oc){for(var k=[],m=0,n=l.Fc,q=l.Fc+l.oc;n<q;)k[m++]=l.data[n++];b[a++]=[d,e,f,l.Fc,k]}}return b};
g.restore=function(a){var b=0,c="unsupported restore format";if(this.gb.length&&a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&e[1]!=this.dg&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.dg+")",b=-1);for(;d<a.length&&0<=b;){var f=0,l=a[d++],k=l[f++],m=l[f++],n=l[f++];if(k>=this.gb.length||m>=this.gb[k].length||n>=this.gb[k][m].length){c="sector "+k+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.te){c="unable to modify write-protected disk";b=-1;break}e=
l[f++];f=l[f++];l=e+f.length;if(k=this.gb[k][m][n]){for(m=k.data.length;m<e;)k.data[m++]=k.pattern;m=0;k.Fc=e;for(k.oc=f.length;e<l;)k.data[e++]=f[m++];b++}}}0>b&&this.xa("unable to restore disk '"+this.fd+": "+c);return b};
function uj(a){w.call(this,"FDC",a,uj);this.dmaRead=this.nh;this.dmaWrite=this.oh;this.dmaFormat=this.gl;this.de=null;if(a.autoMount&&(this.de=a.autoMount,"string"==typeof this.de))try{this.de=eval("("+a.autoMount+")")}catch(b){u("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.de=null}this.ec=[]}z(w,uj);h={};ca={};
var vj={3:{Uc:3,qd:0,name:ca.io},4:{Uc:2,qd:1,name:ca.fo},5:{Uc:9,qd:7,name:ca.ro},6:{Uc:9,qd:7,name:ca.$n},7:{Uc:2,qd:0,name:ca.bo},8:{Uc:1,qd:2,name:ca.ho},10:{Uc:2,qd:7,name:ca.ao},13:{Uc:6,qd:7,name:ca.Un},15:{Uc:3,qd:0,name:ca.eo}};g=uj.prototype;
g.vb=function(a,b,c,d){switch(c){case "listDisks":return this.oa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.oa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){u("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d='<a href="'+m+'" target="_blank">'+d+"</a>");c.innerHTML=
d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.oa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||wj(a,c)}}(this,d),!0;case "loadDrive":return this.oa[c]=d,d.onclick=function(a){return function(){var b,c=a.oa.listDisks,d=a.oa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.ta.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=da(d);a.Ub("Attempting to load "+
d+' as "'+c+'"')}for(;xj(a,b,c,d,!1)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var m=a,n=d,q=void 0,q=0;q<m.ec.length;q++)if(m.ec[q][1]==n){m.ec.splice(q,1);break}yj(a,b,!1,!0)}}else yj(a,b);else a.xa("Nothing to load")}}(this),!0}return!1};g.ic=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;this.Fa=a;this.ga=D(a,"ChipSet");this.$c();Ta(b,this,zj);Va(b,this,Aj);this.Se()||this.Pa()};
g.Tb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Fa.yh){this.ec=[];for(var c=0;c<this.ta.length;c++)yj(this,c,!0);this.Se(!0)}}else if(!this.restore(a))return!1;if(c=this.oa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.Th;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Th&&(c.value="0",wj(this,0))}}return!0};
g.Kb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.$c()};g.save=function(){var a=new H(this);a.set(0,this.Qi());return a.data()};g.restore=function(a){return this.$c(a[0])};
g.$c=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.Sa=a[b++];b++;this.sa=a[b++];this.Lb=a[b++];this.ib=a[b++];this.Wa=a[b++];this.Ce=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.ec=c);void 0===this.ta&&(this.Th=4,this.ga&&(this.Th=th(this.ga)),this.ta=Array(4));for(c=0;c<this.ta.length;c++){var f=this.ta[c];void 0===f&&(f=this.ta[c]={},f.dl=ph(this.ga,c),f.Qb=40,f.bc=9,2==f.dl&&(f.Qb=80,f.bc=18));this.Ih(f,c,e[c])||(d=!1)}this.Fd=a[b++]||0;this.Mk=a[b]||0;return d};
g.Qi=function(){var a=0,b=[];b[a++]=this.Sa;b[a++]=0;b[a++]=this.sa;b[a++]=this.Lb;b[a++]=this.ib;b[a++]=this.Wa;b[a++]=this.Ce;b[a++]=this.Si();for(var c=a++,d=0;d<this.ta.length;d++){var e=this.ta[d];e.ra&&Bj(this,e.fe,e.ra)}b[c]=this.ec;b[a++]=this.Fd;b[a]=this.Mk;return b};
g.Ih=function(a,b,c){var d=0,e=!0;a.Sa=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.Qb||40,a.Jb||c[3],a.bc||9,a.sb||512,c[1]]);a.Ra=c[d++];a.name=c[d][0];a.Qb=c[d][1];a.Jb=c[d][2];a.bc=c[d][3];a.sb=c[d][4];a.se=c[d][5];(a.Sh=c[d][6])?(a.Ag=c[d][7],a.Bg=c[d][8]):(a.Sh=a.Qb,a.Ag=a.Jb,a.Bg=a.bc);d++;a.Ea=c[d++];a.ld=c[d++];a.cb=c[d++];a.ld=100<=a.ld?a.ld-100:a.ld-a.cb;a.Ka=c[d++];a.od=c[d++];a.$a=c[d++];a.Ta=c[d++];a.Ja=null;a.ra||(a.fe="");var f=c[d++];f===Cj?(f=
c[d++],c=c[d],xj(this,b,f,c,!0)?a.ra&&Dj(this,f,c,a.ra):this.Pa(!1)):void 0!==f&&a.ra&&0>a.ra.restore(f)&&(e=!1);e&&a.ra&&void 0!==a.Ta&&(a.Ja=a.ra.seek(a.cb,a.Ea,a.Ka));return e};g.Si=function(){for(var a=0,b=[],c=0;c<this.ta.length;c++)b[a++]=this.Ri(this.ta[c]);return b};g.Ri=function(a){var b=0,c=[];c[b++]=a.Ra;c[b++]=[a.name,a.Qb,a.Jb,a.bc,a.sb,a.se,a.Sh,a.Ag,a.Bg];c[b++]=a.Ea;c[b++]=a.ld+100;c[b++]=a.cb;c[b++]=a.Ka;c[b++]=a.od;c[b++]=a.$a;c[b++]=a.Ta;c[b++]=Cj;c[b++]=a.Rk;c[b]=a.fe;return c};
g.Se=function(a){a||(this.Rd=0);if(this.de)for(var b in this.de){var c=this.de[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.ta.length){!xj(this,d,c.name,c.path,!0)&&a&&this.Pa(!1);continue}}this.xa("Unrecognized auto-mount specification for drive "+b)}return!!this.Rd};function xj(a,b,c,d,e){var f=a.ta[b];if(d&&f.fe!=d){yj(a,b,e,!0);if(f.Ec)return a.xa("Drive "+b+" busy"),!0;f.Ec=!0;e&&(f.Yd=!0,a.Rd++);(new lj(a,f,"preload")).load(c,d,a.um);return!1}return!0}
g.um=function(a,b,c,d){var e;a.Ec=!1;b&&(e=b.info(),b&&e[0]>a.Qb||e[1]>a.Jb)&&(this.xa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Sa)),b=null);b&&(a.ra=b,a.Rk=c,a.fe=d,Dj(this,c,d,b),this.Fd|=128,this.xa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Sa),a.Yd),a.Sh=e[0],a.Ag=e[1],a.Bg=e[2]);a.Yd&&(a.Yd=!1,--this.Rd||this.Pa());wj(this,a.Sa)};
function wj(a,b){if(0<=b&&b<a.ta.length){var c=a.ta[b],d=a.oa.listDisks,e=a.oa.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.fe){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function yj(a,b,c,d){var e=a.ta[b];e.ra&&(Bj(a,e.fe,e.ra),e.Rk="",e.fe="",e.ra=null,a.Fd|=128,d||a.xa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||wj(a,b))}
function Dj(a,b,c,d){var e;for(e=0;e<a.ec.length;e++)if(a.ec[e][1]==c){d.restore(a.ec[e][2]);return}a.ec[e]=[b,c,[]]}function Bj(a,b,c){var d;for(d=0;d<a.ec.length;d++)if(a.ec[d][1]==b){a.ec[d][2]=c.save();break}}g.an=function(a,b){b&4?this.Ce&4||this.Ce&8&&this.ga&&R(this.ga,6):this.$c();this.Ce=b};g.Pl=function(){return this.sa};g.Nl=function(){var a=0;this.ib<this.Wa&&(a=this.Lb[this.ib]);this.Ce&8&&this.ga&&Kh(this.ga,6);++this.ib>=this.Wa&&(this.sa&=-81,this.ib=this.Wa=0);return a};
g.$m=function(a,b){this.Wa<this.Lb.length&&(this.Lb[this.Wa++]=b);var c=this.Lb[0]&31;if(void 0!==vj[c]&&this.Wa>=vj[c].Uc){var d=!1;this.ib=0;var e,f,c=this.Ga()&31;switch(c){case 3:this.Ga(h.jo);this.Ga(h.Wn);this.qb();break;case 4:f=this.Ga(h.Je);this.Sa=f&3;e=this.ta[this.Sa];this.qb();this.Va((e.Ra&4278190080)>>>24,h.no);break;case 5:case 6:f=this.Ga(h.Je);this.Sa=f&3;e=this.ta[this.Sa];e.Ea=f>>2&1;e.cb=this.Ga(h.Sg);this.Ga(h.Tg);e.Ka=this.Ga(h.Vg);d=this.Ga(h.Kf);e.$a=128<<d;e.od=this.Ga(h.Tn);
this.Ga(h.$k);this.Ga(h.Sn);6==c?this.ph(e):this.qh(e);this.qb();Ej(this,e);Fj(this,e);Gj(this,e);this.Va(e.cb,h.Sg);this.Va(e.Ea,h.Tg);this.Va(e.Ka,h.Vg);this.Va(d,h.Kf);d=!0;break;case 7:f=this.Ga(h.Je);this.Sa=f&3;e=this.ta[this.Sa];e.cb=e.ld=0;e.Ra=268435488;this.qb();d=!0;break;case 8:e=this.ta[this.Sa];e.Ea=0;this.qb();Ej(this,e);this.Va(e.cb,h.Zn);this.Sa=this.Sa+1&3;break;case 10:f=this.Ga(h.Je);this.Sa=f&3;e=this.ta[this.Sa];e.Ea=f>>2&1;e.Ka=1;d=0;e.Ra=0;e.ra&&(e.Ja=e.ra.seek(e.cb,e.Ea,e.Ka))?
d=e.Ja.length:e.Ra=1088;Ej(this,e);Fj(this,e);Gj(this,e);this.Va(e.cb,h.Sg);this.Va(e.Ea,h.Tg);this.Va(e.Ka,h.Vg);this.Va(d,h.Kf);d=!0;break;case 13:f=this.Ga(h.Je);this.Sa=f&3;e=this.ta[this.Sa];e.Ea=f>>2&1;d=this.Ga(h.Kf);e.$a=128<<d;e.od=this.Ga(h.co);this.Ga(h.$k);e.ej=this.Ga(h.Rn);this.nj(e);this.qb();Ej(this,e);Fj(this,e);Gj(this,e);this.Va(e.cb,h.Sg);this.Va(e.Ea,h.Tg);this.Va(e.Ka,h.Vg);this.Va(d,h.Kf);d=!0;break;case 15:f=this.Ga(h.Je),this.Sa=f&3,e=this.ta[this.Sa],e.Ea=f>>2&1,c=this.Ga(h.Yn),
e.cb+=c-e.ld,0>e.cb&&(e.cb=0),e.cb>=e.Qb&&(e.cb=e.Qb-1),e.ld=c,e.Ra=32,0==e.cb&&(e.Ra|=268435456),this.qb(),d=!0}0<this.Wa&&(this.sa|=80);this.Ce&8&&(!e||e.Ra&8||!d||this.ga&&R(this.ga,6))}};g.Ol=function(){var a=this.Fd;this.Fd&=-129;return a};g.Zm=function(a,b){this.Mk=b};g.Ga=function(){var a=this.Lb[this.ib];this.ib++;return a};g.qb=function(){this.ib=this.Wa=0};g.Va=function(a){this.Lb[this.Wa++]=a};function Ej(a,b){a.Va(b.Sa|b.Ea<<2|b.Ra&255,h.ko)}
function Fj(a,b){a.Va((b.Ra&65280)>>>8,h.lo)}function Gj(a,b){a.Va((b.Ra&16711680)>>>16,h.mo)}g.nh=function(a,b,c){void 0===b||0>b?this.vc(a,c):c(-1,!1)};g.oh=function(a,b){return void 0!==b&&0<=b?this.xc(a,b):-1};g.gl=function(a,b){return void 0!==b&&0<=b?this.Wi(a,b):-1};g.ph=function(a){a.Ra=72;a.ra&&(a.Ja=null,a.Ra=0,this.ga&&(Eh(this.ga,2,this,"dmaRead",a),Ch(this.ga,2)))};
g.qh=function(a){a.Ra=72;a.ra&&(a.ra.te?a.Ra=576:(a.Ja=null,a.Ra=0,this.ga&&(Eh(this.ga,2,this,"dmaWrite",a),Ch(this.ga,2))))};g.nj=function(a){a.Ra=72;a.ra&&(a.Ja=null,a.Ra=0,this.ga&&(a.Ud=0,a.fc=Array(4),a.Te=!0,a.Ye=0,Eh(this.ga,2,this,"dmaFormat",a),Ch(this.ga,2),a.Te=!1))};g.vc=function(a,b){var c=-1;if(!a.Ra&&a.ra){do{if(a.Ja&&0<=(c=tj(a.Ja,a.Ta++)))break;a.Ja=a.ra.seek(a.cb,a.Ea,a.Ka);if(!a.Ja){a.Ra=1088;break}a.Ta=0;this.Qe(a)}while(1)}b(c,!1)};
g.xc=function(a,b){if(a.Ra||!a.ra)return-1;do{if(a.Ja&&a.ra.write(a.Ja,a.Ta++,b))break;a.Ja=a.ra.seek(a.cb,a.Ea,a.Ka);if(!a.Ja){a.Ra=8256;b=-1;break}a.Ta=0;this.Qe(a)}while(1);return b};g.Qe=function(a){a.Ka++;a.Ka>=a.Bg+1&&(a.Ka=1,a.Ea++,a.Ea>=a.Ag&&(a.Ea=0,a.cb++))};g.Wi=function(a,b){if(a.Ra)return-1;a.fc[a.Ud++]=b;if(a.Ud==a.fc.length){a.cb=a.fc[0];a.Ea=a.fc[1];a.Ka=a.fc[2];a.$a=128<<a.fc[3];for(var c=a.Ud=0;c<a.$a;c++)if(0>this.xc(a,a.ej))return-1;a.Ye++}a.Ye>=a.od&&(b=-1);return b};
var zj={1012:uj.prototype.Pl,1013:uj.prototype.Nl,1015:uj.prototype.Ol},Aj={1010:uj.prototype.an,1013:uj.prototype.$m,1015:uj.prototype.Zm};v(function(){for(var a=C(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new uj(d);B(d,c)}});
function $(a){w.call(this,"HDC",a,$);this.dmaRead=this.nh;this.dmaWrite=this.oh;this.dmaWriteBuffer=this.hl;this.dmaWriteFormat=this.il;this.Xg=[];if(a.drives)try{this.Xg=eval("("+a.drives+")")}catch(b){u("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.hf=(this.Xd="at"==a.type)?1:0;this.sl=this.Xd?2:3}z(w,$);
var Hj=[{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]}];g=$.prototype;g.vb=function(){return!1};g.ic=function(a,b,c,d){this.ma=b;this.ia=c;this.Na=d;this.Fa=a;this.ga=D(a,"ChipSet");Ta(b,this,this.Xd?Ij:Jj);Va(b,this,this.Xd?Kj:Lj);this.reset();this.Se()||this.Pa()};
g.Tb=function(a,b){if(!b)if(!a||!this.restore)this.$c(),this.Fa.yh&&this.Se(!0);else if(!this.restore(a))return!1;return!0};g.Kb=function(a){return a&&this.save?this.save():!0};g.ue=function(){return this.Fa?this.Fa.ue():""};g.wd=function(){return this.Fa?this.Fa.wd():""};g.reset=function(){this.$c(null,!0)};g.save=function(){var a=new H(this);a.set(0,this.Qi());return a.data()};g.restore=function(a){return this.$c(a[0])};
g.$c=function(a,b){var c=0,d=!0;if(this.Xd)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.Ed=a[c++],this.Qk=a[c++],this.Gd=a[c++],this.Kg=a[c++],this.Jg=a[c++],this.Ig=a[c++],this.Be=a[c++],this.sa=a[c++],this.Oi=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.Bf=a[c++];this.sa=a[c++];this.Lb=a[c++];this.ib=a[c++];this.Wa=a[c++];this.Pk=a[c++];this.Ok=a[c++];this.Nk=a[c++];var e=a[c++];void 0!==e?this.gf=e:void 0===this.gf&&(this.gf=-1)}void 0===this.ta&&(this.ta=Array(this.Xg.length));c=a[c];void 0===
c&&(c=[]);for(e=0;e<this.ta.length;e++){void 0===this.ta[e]&&(this.ta[e]={});var f=this.ta[e];this.Ih(e,f,this.Xg[e],c[e],b)||(d=!1);null!=this.Bf&&1>=e&&(this.Bf|=(f.type&3)<<(1-e<<1))}return d};
g.Qi=function(){var a=0,b=[];this.Xd?(b[a++]=this.Ed,b[a++]=this.Qk,b[a++]=this.Gd,b[a++]=this.Kg,b[a++]=this.Jg,b[a++]=this.Ig,b[a++]=this.Be,b[a++]=this.sa,b[a++]=this.Oi):(b[a++]=this.Bf,b[a++]=this.sa,b[a++]=this.Lb,b[a++]=this.ib,b[a++]=this.Wa,b[a++]=this.Pk,b[a++]=this.Ok,b[a++]=this.Nk,b[a++]=this.gf);b[a]=this.Si();return b};
g.Ih=function(a,b,c,d,e){var f=0,l=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Sa=a;b.errorCode=d[f++];b.Vk=d[f++];b.se=d[f++];b.le=d[f++];b.me=d[f++];b.Ea=d[f++];b.Jb=d[f++];b.Id=d[f++];b.Ka=d[f++];b.od=d[f++];b.$a=d[f++];b.Zf=this.Xd?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.wd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Hj[this.hf][b.type])b.type=this.sl;c=Hj[this.hf][b.type];
b.bc=c[2]||17;b.sb=c[3]||512;if(e&&this.ga&&(e=this.ga,c=b.type,e.ka)){var k=e.ka[18],k=a?k&240|c:k&15|c<<4;e.ka&&(e.ka[18]=k,qh(e))}void 0===b.ra&&(b.ra=null,this.xa("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Mj(this,b);b.Ta=d[f++];b.Ja=null;b.ra&&(a=d[f],void 0!==a&&0>b.ra.restore(a)&&(l=!1),l&&void 0!==b.Ta&&(b.Ja=b.ra.seek(b.Id,b.Ea,b.Ka+b.Zf)));return l};g.Si=function(){for(var a=0,b=[],c=0;c<this.ta.length;c++)b[a++]=this.Ri(this.ta[c]);return b};
g.Ri=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.Vk;c[b++]=a.se;c[b++]=a.le;c[b++]=a.me;c[b++]=a.Ea;c[b++]=a.Jb;c[b++]=a.Id;c[b++]=a.Ka;c[b++]=a.od;c[b++]=a.$a;c[b++]=a.Ta;c[b]=a.ra?a.ra.save():null;return c};
function Mj(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.le[2])?e=b.le[0]<<8|b.le[1]:c=b.type);null==c||d||(d=Hj[a.hf][c][1],e=Hj[a.hf][c][0]);d&&((c=Hj[a.hf][b.type])&&e!=c[0]&&d!=c[1]&&a.xa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Qb=e,b.Jb=d,null==b.ra&&(b.ra=new lj(a,b,b.mode)))}}
g.Se=function(a){a||(this.Rd=0);for(var b=0;b<this.ta.length;b++){var c=this.ta[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.ta[b];e.Ec?(this.xa("Drive "+b+" busy"),d=!0):(e.Ec=!0,e.Yd=!0,this.Rd++,(e.ra||new lj(this,e,e.mode)).load(d,c,this.tm),d=!1);!d&&a&&this.Pa(!1)}else a&&void 0!==c.type&&(c.ra=null,Mj(this,c,c.type))}return!!this.Rd};g.tm=function(a,b,c){a.Ec=!1;(a.ra=b)&&this.xa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Sa),a.Yd);a.Yd&&(a.Yd=!1,--this.Rd||this.Pa())};
g.om=function(){var a=0;this.ib<this.Wa&&(a=this.Lb[this.ib]);this.ga&&Kh(this.ga,5);this.sa&=-33;++this.ib>=this.Wa&&(this.ib=this.Wa=0,this.sa&=-15);return a};g.xn=function(a,b){this.Wa<this.Lb.length&&(this.Lb[this.Wa++]=b);var c=12!=this.Lb[0]?6:this.Lb.length;6==this.Wa&&(this.sa&=-2);this.Wa>=c&&(this.sa|=2,this.sa&=-2,Nj(this))};g.pm=function(){var a=this.sa;this.ib<this.Wa&&(this.sa|=1);return a};g.An=function(a,b){this.Pk=b;this.ga&&Kh(this.ga,5);this.$c()};g.nm=function(){return this.Bf};
g.zn=function(a,b){this.Ok=b;this.sa=13};g.yn=function(a,b){this.Nk=b};g.Ji=function(){};g.Al=function(){var a=-1;if(this.Oa&&(a=this.vc(this.Oa),this.Oa.Ta==this.Oa.sb))if(this.Oa.$a-=this.Oa.sb,this.Gd=this.Gd-1&255,this.Oa.$a>=this.Oa.sb){var b=this;this.vc(this.Oa,function(a){0<=a?b.ga&&R(b.ga,14):(b.sa=1,b.Ed=16)},!1)}else this.sa=80;return a};
g.Om=function(a,b){this.Oa&&this.Oa.$a>=this.Oa.sb&&(0>this.xc(this.Oa,b)?(this.sa=1,this.Ed=16):this.Oa.Ta==this.Oa.sb&&(this.Oa.$a-=this.Oa.sb,this.Gd=this.Gd-1&255,this.ga&&R(this.ga,14),this.Oa.$a>=this.Oa.sb||(this.sa=80)))};g.Cl=function(){return this.Ed};g.Sm=function(a,b){this.Qk=b};g.Dl=function(){return this.Gd};g.Qm=function(a,b){this.Gd=b};g.El=function(){return this.Kg};g.Rm=function(a,b){this.Kg=b};g.zl=function(){return this.Jg};g.Nm=function(a,b){this.Jg=b};g.yl=function(){return this.Ig};
g.Mm=function(a,b){this.Ig=b};g.Bl=function(){return this.Be};g.Pm=function(a,b){this.Be=b;this.sa=this.ta[this.Be&16?1:0]?this.sa|64:this.sa&-65};g.Fl=function(){return this.sa};g.Lm=function(a,b){this.Oi=b;this.ga&&Kh(this.ga,14);Oj(this)};
function Oj(a){var b=!1,c=a.Oi,d=a.Be&16?1:0,e=a.Be&15,f=a.Jg|(a.Ig&3)<<8,l=a.Kg,k=a.Gd||256;a.Oa=null;a.Ed=0;a.sa=80;(d=a.ta[d])?(d.Id=f,d.Ea=e,d.Ka=l,d.$a=k*d.sb,c=144<=c?c:c&240,d.Ja=null,d.errorCode=0,a.Oa=d):c=-1;switch(c&240){case 32:a.vc(d,function(b){0<=b&&a.ga?(R(a.ga,14),a.sa=136):(a.sa=1,a.Ed=16)},!1);break;case 48:a.ga?(R(a.ga,14),a.sa=136):(a.sa=1,a.Ed=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Ed=1;b=!0;break;case 145:d.Jb=e+1,d.bc=k,b=!0}b&&a.ga&&R(a.ga,14)}
function Nj(a){a.ib=0;var b=a.Ga(),c=a.Ga(),d=c&32,e=d>>5,f=c&31,l=a.Ga(),k=a.Ga(),m=l<<2&768|k,n=l&63,q=a.Ga(),s=a.Ga(),r=a.ta[e];r&&(r.Id=m,r.Ea=f,r.Ka=n,r.$a=q*r.sb);switch(b){case 3:a.qb(r?r.errorCode:4);a.Va(c);a.Va(l);a.Va(k);a.Va(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ga());)r&&c<r.le.length&&(r.le[c++]=b);r&&Mj(a,r);b=0;r||a.gf!=e||(a.gf=-1,b=2);a.qb(b|d);b=-1;break;case 224:case 228:a.qb(0|d),b=-1}if(0<=b)switch(void 0===r?b=-1:(r.errorCode=0,r.Vk=0),b){case 0:a.qb(0|d);break;case 1:r.to=
s;a.qb(0|d);break;case 5:a.qb(0|d);break;case 8:a.ph(r,function(b){a.qb(b|d)});break;case 10:a.qh(r,function(b){a.qb(b|d)});break;case 15:Pj(a,r,function(b){a.qb(b|d)});break;default:a.qb(2|d)}}g.Ga=function(){var a=-1;this.ib<this.Wa&&(a=this.Lb[this.ib++]);return a};g.qb=function(a){this.ib=this.Wa=0;void 0!==a&&this.Va(a);this.ga&&R(this.ga,5);this.sa|=32};g.Va=function(a){this.Lb[this.Wa++]=a};g.nh=function(a,b,c){void 0===b||0>b?this.vc(a,c):c(-1,!1)};
g.oh=function(a,b){return void 0!==b&&0<=b?this.xc(a,b):-1};g.hl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Ta<a.me.length?a.me[a.Ta++]=c:(a.errorCode=20,c=-1)):c=-1;return c};g.il=function(a,b){return void 0!==b&&0<=b?this.Wi(a,b):-1};g.ph=function(a,b){a.errorCode=4;if(a.ra&&(a.Ja=null,this.ga)){a.errorCode=0;Eh(this.ga,3,this,"dmaRead",a);Ch(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
g.qh=function(a,b){a.errorCode=4;if(a.ra&&(a.Ja=null,this.ga)){a.errorCode=0;Eh(this.ga,3,this,"dmaWrite",a);Ch(this.ga,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Pj(a,b,c){b.errorCode=4;b.me&&b.me.length==b.$a||(b.me=Array(b.$a));b.Ta=0;a.ga?(b.errorCode=0,Eh(a.ga,3,a,"dmaWriteBuffer",b),Ch(a.ga,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
g.nj=function(a,b){a.errorCode=4;if(a.ra&&(a.Ja=null,this.ga)){a.Ud=0;a.fc=Array(4);a.Te=!0;a.Ye=0;a.errorCode=0;Eh(this.ga,3,this,"dmaWriteFormat",a);Ch(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Te=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
g.vc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ja&&(d=tj(a.Ja,a.Ta),a.Ta+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;a.ra.seek(a.Id,a.Ea,a.Ka+a.Zf,!1,function(c,d){var m=-1;(a.Ja=c)?(a.Ta=0,f.Qe(a),m=tj(a.Ja,a.Ta),a.Ta+=e):a.errorCode=20;b(m,d)})}return d};
g.xc=function(a,b){if(a.errorCode)return-1;do{if(a.Ja&&a.ra.write(a.Ja,a.Ta++,b))break;a.ra.seek(a.Id,a.Ea,a.Ka+a.Zf,!0,function(b){a.Ja=b});if(!a.Ja){a.errorCode=20;b=-1;break}a.Ta=0;this.Qe(a)}while(1);return b};g.Qe=function(a){a.Ka++;var b=1-a.Zf;a.Ka>=a.bc+b&&(a.Ka=b,a.Ea++,a.Ea>=a.Jb&&(a.Ea=0,a.Id++))};
g.Wi=function(a,b){if(a.errorCode)return-1;a.fc[a.Ud++]=b;if(a.Ud==a.fc.length){a.Id=a.fc[0];a.Ea=a.fc[1];a.Ka=a.fc[2];a.$a=128<<a.fc[3];for(var c=a.Ud=0;c<a.$a;c++)if(0>this.xc(a,a.ej))return-1;a.Ye++}a.Ye>=a.od&&(b=-1);return b};
var Jj={800:$.prototype.om,801:$.prototype.pm,802:$.prototype.nm},Ij={496:$.prototype.Al,497:$.prototype.Cl,498:$.prototype.Dl,499:$.prototype.El,500:$.prototype.zl,501:$.prototype.yl,502:$.prototype.Bl,503:$.prototype.Fl},Lj={800:$.prototype.xn,801:$.prototype.An,802:$.prototype.zn,803:$.prototype.yn,807:$.prototype.Ji,811:$.prototype.Ji,815:$.prototype.Ji},Kj={496:$.prototype.Om,497:$.prototype.Sm,498:$.prototype.Qm,499:$.prototype.Rm,500:$.prototype.Nm,501:$.prototype.Mm,502:$.prototype.Pm,503:$.prototype.Lm};
v(function(){for(var a=C(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new $(d);B(d,c)}});function H(a,b,c){this.id=a.id;this.key=Qj(a,b,c);this.Na=a.Na;Tj(this,a.Bn)}function Qj(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}function Uj(){try{return"undefined"!==typeof window.localStorage}catch(a){return!1}}
H.prototype={set:function(a,b){this[this.id][a]=b},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.wh=!0):this.wh?!0:Uj()&&(a=window.localStorage.getItem(this.key))?(this[this.id]=a,this.wh=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){u(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},
clear:function(a){Tj(this);if(Uj())for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}}};function Tj(a,b){a[a.id]={};b&&a.set("parms",b);a.wh=!1}function Vj(a){var b=!0;if(Uj()){var c=JSON.stringify(a[a.id]);try{window.localStorage.setItem(a.key,c)}catch(d){u("Unable to store "+c.length+" bytes in browser local storage"),b=!1}}return b}
function Wj(a,b,c){w.call(this,"Computer",a,Wj);this.Ab=!1;this.jf=a.buswidth;this.kc=Xj;this.Ff=null;this.mg=!1;this.url=b?b.url:null;this.In=(Math.random()+0.1).toString(36).substr(2,12);this.wc=Yj(this);if(this.ia=Ba("CPU",this.id)){this.Na=Ba("Debugger",this.id);this.ma=new Ha({id:this.pg+".bus",buswidth:this.jf},this.ia,this.Na);var d,e=za(this.id);if((this.Af=Ba("Panel",this.id))&&this.Af.kh)for(b=0;b<e.length;b++)d=e[b],d.xa=this.Af.xa,d.Ub=this.Af.Ub,d.kh=this.Af.kh;this.Ub("PREFETCH: false, TYPEDARRAYS: false");
for(b=0;b<e.length;b++)d=e[b],d.ic&&d.ic(this,this.ma,this.ia,this.Na);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Mg=d:this.kc=parseInt(d,10));var f;if(a=ua&&ua.state||(f=!0,a.state))b=this.Tk=a,f||(this.mg=!0,this.kc=Xj),this.kc&&(this.Qg=new H(this,"1.15.6"),this.Qg.load()?b=null:delete this.Qg);!b&&this.kc&&(f=null,this.wc&&(f=ka()+"/api/v1/user?req=load&user="+this.wc+"&state="+Qj(this,"1.15.6")),b=f)&&(this.mg=!0);b?t(b,!0,null,this,this.Fm):this.Pa();c||Zj(this,this.Gg)}else u("Unable to find CPU component")}
z(w,Wj);var Cj=102,Xj=0;g=Wj.prototype;g.ue=function(){return this.In};g.wd=function(){return this.wc?this.wc:""};g.Fm=function(a,b,c){c?(this.Mg=null,this.mg=!1,this.xa("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Ff=b;this.Pa()};function Zj(a,b,c){for(var d=za(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Da(f)){Da(f,function(){Zj(a,b,c)});return}}b.call(a,c)}
function ak(a,b){var c=new H(a,"1.15.6","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.xa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
g.Gg=function(a){void 0===a&&(a=this.Ff?1:this.kc);var b=!1,c=!1;this.rj=!1;var d=this.Qg||new H(this,"1.15.6");if(-1==a)b=!0;else if(a>Xj){if(d.load(this.Ff)){this.Ge=new H(this,"1.15.6","failsafe");this.Ge.load()&&(bk(this,d),a=2);this.Ge.set("timestamp",ia());Vj(this.Ge);var e=this.kc&&!this.mg;if(1==a||la("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),l=d.get("data");f&&("ok"==f?d.load(l):("error"==f&&"no machine state"!=l?(this.xa("Error: "+l),"unable to verify user"==
l&&(ma(""),this.wc=null)):this.Ub(f+": "+l),Tj(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&ak(this,c?d:null)}else 2==a&&d.clear()}else ak(this);delete this.Ff;delete this.Qg}e=za(this.id);for(f=0;f<e.length;f++)l=e[f],l!==this&&l!=this.ia&&(c=ck(this,l,d,b,c));b=[d,a,c];-1!=a?Zj(this,this.Kk,b):this.Kk(b)};
function ck(a,b,c,d,e){if(!b.Ab){b.Ab=!0;if(b.Tb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.Tb(f,d)&&f&&(u("Unable to restore state for "+b.type),a.Tk&&!a.Ff?(c.clear(),a.kc=Xj,window&&window.location.reload()):a.rj=!0,b.Tb(null),e=!1)}if(!d&&b.lj)for(a=b.lj.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
g.Kk=function(a){var b=a[0],c=0>a[1];a=a[2];this.Ab=!0;this.pj||(this.Ub("PCjs v1.15.6\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.pj=!0);this.ia&&ck(this,this.ia,b,c,a);this.rj&&(bk(this,b),b.clear());!c&&this.Ge&&(this.Ge.clear(),delete this.Ge)};
function bk(a,b){if(la("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.wd(),d=b.toString(),e={app:"PCjs",ver:"1.15.6"};e.url=a.url;e.user=c;e.type="bug";e.data=d;t("http://www.pcjs.org/api/v1/report",!0,e)}}
function dk(a,b,c){var d,e="none",f=new H(a,"1.15.6"),l=new H(a,"1.15.6","validate"),k=ia();l.set("timestamp",k);f.set("timestamp",k);f.set("version","1.15.6");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.ia&&a.ia.Kb&&(c&&db(a.ia),d=a.ia.Kb(b,c),"object"===typeof d&&f.set(a.ia.id,d),c&&(a.ia.Ab=!1,!1===d&&(e=null)));for(var k=za(a.id),m=0;m<k.length;m++){var n=k[m];n.Ab&&(n.Kb&&(d=n.Kb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.Ab=!1,!1===
d&&(e=null)))}e&&(c?(k=d=!1,b?(a.wc&&ek(a,a.wc,f.toString()),Vj(l)&&Vj(f)||(e=null,d=k=!0)):a.kc&&(d=!0,k=3==a.kc),d&&f.clear(k)):e=f.toString());c&&(a.Ab=!1);return e}g.reset=function(){this.ma&&this.ma.reset&&this.ma.reset();for(var a=za(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ma&&c.reset&&c.reset()}};g.start=function(a,b){for(var c=za(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};
g.stop=function(a,b){for(var c=za(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};g.vb=function(a,b,c,d){var e=this;switch(c){case "save":return this.oa[c]=d,d.onclick=function(){var a=Yj(e,!0);if(a){var b=!(!e.kc||e.Mg),c=dk(e,b);b?ek(e,a,c):e.xa("Resume disabled, machine state not saved")}},!0;case "reset":return this.oa[c]=d,d.onclick=function(){eb(e)},!0}return!1};
function Yj(a,b){var c=a.wc;if(!c){var d;if(window)try{d=window.localStorage.getItem("user")}catch(e){}c=d;void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email Jeff@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=fk(a,c))||a.xa("Your user ID has not been approved."))):b&&a.xa("Browser local storage is not available")}return c}
function fk(a,b){a.wc=null;var c=t(ka()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(ma(c.data),a.wc=c.data)}catch(e){u(e.message+" ("+d+")")}return a.wc}
function ek(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Qj(a,"1.15.6");d.data=c;b=t(ka()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.xa("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.xa(c),ma(""),a.wc=null)}}
function eb(a){if(a.kc&&!a.Mg){var b=1==a.kc||!la("Click OK to reset the PCjs machine state.\n(WARNING: All disk changes will be discarded)");dk(a,b,!0);!b&&a.Tk?window&&window.location.reload():(b||(a.yh=!0),a.Gg(Xj),a.yh=!1)}else a.reset(),a.ia&&cb(a.ia)}function D(a,b,c){a=za(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}
v(function(){for(var a=C(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=A(c),c=C(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],l=A(f),l=new Wj(l,d,!0);B(l,f);Zj(l,l.Gg)}});oa.show.push(function(){for(var a=C(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=A(a[b]);(c=Ba("Computer",c.id))&&c.pj&&!c.Ab&&c.Gg(-1)}});
oa.exit.push(function(){for(var a=C(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=A(a[b]);(c=Ba("Computer",c.id))&&c.Ab&&dk(c,!(!c.kc||c.Mg),!0)}});function gk(a,b,c,d){var e=t(a);if(e[0])throw Error(e[1]);return hk(e[1],a,b,c,d)}
function hk(a,b,c,d,e){var f=null;if(a){if(e)for(var l=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;f=l.exec(a);){var k=f[2],m=t(k),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var q=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(q){for(var k=q[0],s,r=/( [a-z]+=)(['"])(.*?)\2/g;s=r.exec(m);)k=0>k.indexOf(s[1])?k.replace(">",s[0]+">"):k.replace(new RegExp(s[1]+"(['\"])(.*?)\\1"),s[0]);q[0]!=k&&(n=n.replace(q[0],k))}else throw c="missing <"+f[1]+"> in "+k,Error(c);
}n=n.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(f[0],n);l.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*\]>\s*/g,"")),f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+
(255<a.length?a.substr(0,255)+"...":a));}return[a,f]}
window.embedPC=function(a,b,c,d){var e=c,f=c="",l=null;try{if(l=window.document.getElementById(a)){e||(e="/versions/pcjs/1.15.5/components.xsl");var k="<"==b.substr(0,1)?hk(b,null,a,d,!1):gk(b,a,d,!0);c=k[0];var m=k[1];if(m){var k=gk(e),n=k[1];if(n)if(window.ActiveXObject||"ActiveXObject"in window){var q=m.transformNode(n);q?l.outerHTML=q:f="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var s=new XSLTProcessor;s.importStylesheet(n);
var r=s.transformToFragment(m,window.document);r?l.parentNode.replaceChild(r,l):f="transformToFragment failed"}else f="unable to transform XML: unsupported browser";else f="failed to load XSL file: "+e}else f="failed to load XML file: "+b}else f="failed to find machine element: "+a}catch(y){f=y.message}f&&l&&(a=C(l,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+ga(f)));return f||c};window.enableEvents=function(a){pa=a};window.sendEvent=function(a){oa[a]&&ra(oa[a])};})();//@ sourceMappingURL=/tmp/pcjs/1.15.5/pc.map
window.embedPC=function(a,b,c,d){var e=c,f=c="",l=null;try{if(l=window.document.getElementById(a)){e||(e="/versions/pcjs/1.15.6/components.xsl");var k="<"==b.substr(0,1)?hk(b,null,a,d,!1):gk(b,a,d,!0);c=k[0];var m=k[1];if(m){var k=gk(e),n=k[1];if(n)if(window.ActiveXObject||"ActiveXObject"in window){var q=m.transformNode(n);q?l.outerHTML=q:f="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var s=new XSLTProcessor;s.importStylesheet(n);
var r=s.transformToFragment(m,window.document);r?l.parentNode.replaceChild(r,l):f="transformToFragment failed"}else f="unable to transform XML: unsupported browser";else f="failed to load XSL file: "+e}else f="failed to load XML file: "+b}else f="failed to find machine element: "+a}catch(y){f=y.message}f&&l&&(a=C(l,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+ga(f)));return f||c};window.enableEvents=function(a){pa=a};window.sendEvent=function(a){oa[a]&&ra(oa[a])};})();//@ sourceMappingURL=/tmp/pcjs/1.15.6/pc.map

Binary file not shown.