Selected OS/2 1.0 boot configs operational now

This commit is contained in:
Jeff Parsons 2014-12-04 20:18:42 -08:00 committed by jeffpar
commit 69539abc1e
41 changed files with 2002 additions and 1955 deletions

View file

@ -1,113 +1,113 @@
(function(){var k,aa,m,ca={163840:[40,1,8],184320:[40,1,9],327680:[40,2,8],368640:[40,2,9],737280:[80,2,9],1228800:[80,2,15],1474560:[80,2,18],2949120:[80,2,36]};function da(a,b){return b&&10!=b?16==b?null!==a.match(/^[0-9a-f]+$/i):!0:null!==a.match(/^[0-9]+$/)}
(function(){var k,ba,l,ca={163840:[40,1,8],184320:[40,1,9],327680:[40,2,8],368640:[40,2,9],737280:[80,2,9],1228800:[80,2,15],1474560:[80,2,18],2949120:[80,2,36]};function da(a,b){return b&&10!=b?16==b?null!==a.match(/^[0-9a-f]+$/i):!0:null!==a.match(/^[0-9]+$/)}
function ea(a,b){var 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;da(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(null==a||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 q(a){return p(a,2)}function u(a){return p(a,4)}function fa(a,b){return void 0!==b?u(b)+":"+u(a):p(a)}function ga(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 ha(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}var ia={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function ka(a){return a.replace(/[&<>"']/g,function(a){return ia[a]})}
function la(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 ma(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function na(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 pa(a,b,c){c=na(a,b,c);0>c&&a.splice(-(c+1),0,b)}
function q(a){return p(a,2)}function v(a){return p(a,4)}function fa(a,b){return void 0!==b?v(b)+":"+v(a):p(a)}function ga(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 ha(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}var ja={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function ka(a){return a.replace(/[&<>"']/g,function(a){return ja[a]})}
function la(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 ma(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function oa(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 pa(a,b,c){c=oa(a,b,c);0>c&&a.splice(-(c+1),0,b)}
function qa(){return Date.now()||+new Date}function ra(){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 sa=[31,28,31,30,31,30,31,31,30,31,30,31];
function ta(a,b,c,d,e,f){b=!!b;var g=0,h=null,n=ga(a),l=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(l.onreadystatechange=function(){4===l.readyState&&(h=l.responseText,200==l.status||!l.status&&h.length&&"file:"==(window?window.location.protocol:"file:")||(g=l.status||-1),e&&(d?e.call(d,n,h,g,f):e(n,h,g,f)))});if(c){var s="",r;for(r in c)c.hasOwnProperty(r)&&(s&&(s+="&"),s+=r+"="+encodeURIComponent(c[r]));s=s.replace(/%20/g,"+");l.open("POST",
a,b);l.setRequestHeader("Content-type","application/x-www-form-urlencoded");l.send(s)}else l.open("GET",a,b),l.send();a=[];b||(h=l.responseText,200!=l.status&&(g=l.status||-1),e&&(d?e.call(d,n,h,g,f):e(n,h,g,f)),a=[g,h]);return a}function ua(){return"http://"+(window?window.location.host:"www.pcjs.org")}function x(a){window&&window.alert(a)}function va(a){var b=!1;window&&(b=window.confirm(a));return b}var wa=null;
function xa(){if(null==wa){var a;try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"===window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}wa=a}return wa}function ya(a){var b;try{b=window.localStorage.getItem(a)}catch(c){}return b}function za(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}
function ta(a,b,c,d,e,f){b=!!b;var g=0,h=null,n=ga(a),m=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(m.onreadystatechange=function(){4===m.readyState&&(h=m.responseText,200==m.status||!m.status&&h.length&&"file:"==(window?window.location.protocol:"file:")||(g=m.status||-1),e&&(d?e.call(d,n,h,g,f):e(n,h,g,f)))});if(c){var s="",r;for(r in c)c.hasOwnProperty(r)&&(s&&(s+="&"),s+=r+"="+encodeURIComponent(c[r]));s=s.replace(/%20/g,"+");m.open("POST",
a,b);m.setRequestHeader("Content-type","application/x-www-form-urlencoded");m.send(s)}else m.open("GET",a,b),m.send();a=[];b||(h=m.responseText,200!=m.status&&(g=m.status||-1),e&&(d?e.call(d,n,h,g,f):e(n,h,g,f)),a=[g,h]);return a}function ua(){return"http://"+(window?window.location.host:"www.pcjs.org")}function x(a){window&&window.alert(a)}function va(a){var b=!1;window&&(b=window.confirm(a));return b}var wa=null;
function xa(){if(null==wa){var a;try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"===window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}wa=a}return wa}function Aa(a){var b;try{b=window.localStorage.getItem(a)}catch(c){}return b}function Ba(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}
function Ca(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 Da(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
function Ea(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 Fa={init:[],show:[],exit:[]},Ha=!1,Ia=!0;function Ja(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ka(a){Fa.init.push(a)}
function La(a){if(Ia)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){x("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks.")}}function Ma(a){!Ia&&a?(Ia=!0,Ha&&Na("init")):Ia=a}function Na(a){Fa[a]&&La(Fa[a])}Ja("onload",function(){Ha=!0;La(Fa.init)});Ja("onpageshow",function(){La(Fa.show)});Ja(Ca("Opera")||Ca("iOS")?"onunload":"onbeforeunload",function(){La(Fa.exit)});
function y(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.Bk=b.comment;this.np=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Vk=this.id.substr(0,b),this.Eh=this.id.substr(b+1)):this.Eh=this.id;this[a]=c;this.na={Ah:!1,Kc:!1,Fi:!1,Ub:!1,fd:!1};this.Pi=null;this.na.fd=!1;this.xa={};this.ka=null;this.Yb=d||-1;Oa[Oa.length]=this}var Pa=void 0,Qa={};
if(window){Pa||(Pa=window.location.search.substr(1));for(var Ra,Sa=/\+/g,Va=/([^&=]+)=?([^&]*)/g;Ra=Va.exec(Pa);)Qa[decodeURIComponent(Ra[1].replace(Sa," "))]=decodeURIComponent(Ra[2].replace(Sa," "))}function Wa(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 Xa(a,b){b.prototype=Wa(a.prototype)}var Oa=[];
function Ya(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Oa.length;b++){var d=Oa[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Za(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Oa.length;c++)if(Oa[c].id===a)return Oa[c]}return null}
function $a(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<Oa.length;d++)if(c)c==Oa[d]&&(c=null);else if(!(a!=Oa[d].type||b&&Oa[d].id.indexOf(b)))return Oa[d]}return null}function z(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){x(c.message+" ("+a+")")}return b}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);
function bb(a,b){for(var c=A(b.parentNode,"pcjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(g.nodeType===window.document.ELEMENT_NODE){var h=g.getAttribute("class");if(h)for(var n=h.split(" "),l=0;l<n.length;l++)switch(h=n[l],h){case "pcjs-binding":(h=z(g))&&h.binding&&a.Ib(h.type,h.binding,g),l=n.length}}}}
function Ea(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 Ga={init:[],show:[],exit:[]},Ha=!1,Ia=!0;function Ja(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ka(a){Ga.init.push(a)}
function La(a){if(Ia)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){x("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks.")}}function Ma(a){!Ia&&a?(Ia=!0,Ha&&Na("init")):Ia=a}function Na(a){Ga[a]&&La(Ga[a])}Ja("onload",function(){Ha=!0;La(Ga.init)});Ja("onpageshow",function(){La(Ga.show)});Ja(Ca("Opera")||Ca("iOS")?"onunload":"onbeforeunload",function(){La(Ga.exit)});
function y(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.zk=b.comment;this.mp=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Sk=this.id.substr(0,b),this.Dh=this.id.substr(b+1)):this.Dh=this.id;this[a]=c;this.na={yh:!1,Kc:!1,Di:!1,Tb:!1,fd:!1};this.Ni=null;this.na.fd=!1;this.xa={};this.ka=null;this.Yb=d||-1;Oa[Oa.length]=this}var Pa=void 0,Qa={};
if(window){Pa||(Pa=window.location.search.substr(1));for(var Ra,Ua=/\+/g,Va=/([^&=]+)=?([^&]*)/g;Ra=Va.exec(Pa);)Qa[decodeURIComponent(Ra[1].replace(Ua," "))]=decodeURIComponent(Ra[2].replace(Ua," "))}function Wa(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 Xa(a,b){b.prototype=Wa(a.prototype)}var Oa=[];
function Ya(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Oa.length;b++){var d=Oa[b];a&&d.id.indexOf(a)||c.push(d)}return c}function $a(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Oa.length;c++)if(Oa[c].id===a)return Oa[c]}return null}
function ab(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<Oa.length;d++)if(c)c==Oa[d]&&(c=null);else if(!(a!=Oa[d].type||b&&Oa[d].id.indexOf(b)))return Oa[d]}return null}function z(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){x(c.message+" ("+a+")")}return b}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);
function bb(a,b){for(var c=A(b.parentNode,"pcjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(g.nodeType===window.document.ELEMENT_NODE){var h=g.getAttribute("class");if(h)for(var n=h.split(" "),m=0;m<n.length;m++)switch(h=n[m],h){case "pcjs-binding":(h=z(g))&&h.binding&&a.Ib(h.type,h.binding,g),m=n.length}}}}
function A(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c}
y.prototype={toString:function(){return this.name?this.name:this.id||this.type},Ib:function(a,b,c){switch(b){case "clear":return this.xa[b]||(this.xa[b]=c,c.onclick=function(a){return function(){a.xa.print&&(a.xa.print.value="")}}(this)),!0;case "print":return this.xa[b]||(this.fg=this.xa[b]=c,c.value="",this.aa=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),this.Ia=function(a,
b,c){this.aa(a,"notice",c)}),!0;default:return!1}},log:function(){},aa:function(){},status:function(a){this.aa(this.Eh+": "+a)},Ia:function(a,b){b||x(a)},Xa:function(a){this.na.fd||(this.na.Ah=!1!==a,this.na.Ah&&(this.name&&this.log("ready"),a=this.Pi,this.Pi=null,a&&a()))},ec:function(){return this.na.Ub=!0},dc:function(a,b){b&&(this.na.Ub=!1);return!0},wa:function(a){if(this.ka){this===this.ka?a=a||0:a||(a=this.Yb);var b=this.ka.Yb&a;return b===a||!!(b&this.ka.Hm)}return!1},jb:function(a,b,c){return this.ka?
((null==b||this.wa(b))&&this.ka.message(a,c),!0):!1}};function B(a,b,c,d,e,f,g){a.ka&&cb(a.ka,a,b,c,d,e,f,g||a.Yb)}function db(a,b){if(a.na.Fi)return a.na.Kc&&(a.na.Kc=!1),a.na.Fi=!1;if(a.na.fd)return a.aa(a.toString()+" error"),!1;a.na.Kc=b;return a.na.Kc}function eb(a,b){a.na.Kc&&(b?a.na.Fi=!0:void 0===b&&a.aa(a.toString()+" busy"));return a.na.Kc}function fb(a,b){b&&(a.na.Ah?b():a.Pi=b);return a.na.Ah}function gb(a,b){a.na.fd=!0;a.Ia("Fatal error: "+b)}
y.prototype={toString:function(){return this.name?this.name:this.id||this.type},Ib:function(a,b,c){switch(b){case "clear":return this.xa[b]||(this.xa[b]=c,c.onclick=function(a){return function(){a.xa.print&&(a.xa.print.value="")}}(this)),!0;case "print":return this.xa[b]||(this.fg=this.xa[b]=c,c.value="",this.Z=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),this.Ia=function(a,
b,c){this.Z(a,"notice",c)}),!0;default:return!1}},log:function(){},Z:function(){},status:function(a){this.Z(this.Dh+": "+a)},Ia:function(a,b){b||x(a)},Va:function(a){this.na.fd||(this.na.yh=!1!==a,this.na.yh&&(this.name&&this.log("ready"),a=this.Ni,this.Ni=null,a&&a()))},ec:function(){return this.na.Tb=!0},dc:function(a,b){b&&(this.na.Tb=!1);return!0},va:function(a){if(this.ka){a=this===this.ka?a|0:a||this.Yb;var b=this.ka.Yb&a;return b===a||!!(b&this.ka.Em)}return!1},qb:function(a,b,c){return this.ka?
((!0===b||this.va(b|0))&&this.ka.message(a,c),!0):!1}};function B(a,b,c,d,e,f,g){a.ka&&(!0===g?g=0:null==g&&(g=a.Yb),cb(a.ka,a,b,c,d,e,f,g))}function db(a,b){if(a.na.Di)return a.na.Kc&&(a.na.Kc=!1),a.na.Di=!1;if(a.na.fd)return a.Z(a.toString()+" error"),!1;a.na.Kc=b;return a.na.Kc}function eb(a,b){a.na.Kc&&(b?a.na.Di=!0:void 0===b&&a.Z(a.toString()+" busy"));return a.na.Kc}function fb(a,b){b&&(a.na.yh?b():a.Ni=b);return a.na.yh}function gb(a,b){a.na.fd=!0;a.Ia("Fatal error: "+b)}
function hb(a){y.call(this,"Panel",a,hb)}Xa(y,hb);hb.prototype.Ib=function(a,b,c){return this.Ma&&this.Ma.Ib(a,b,c)||this.T&&this.T.Ib(a,b,c)||this.Ua&&this.Ua.Ib(a,b,c)||this.ka&&this.ka.Ib(a,b,c)?!0:y.prototype.Ib.call(this,a,b,c)};hb.prototype.vc=function(a,b,c,d){this.Ma=a;this.T=c;this.ka=d;this.Ua=ib(a,"Keyboard")};hb.prototype.ec=function(a,b){b||jb();return!0};hb.prototype.dc=function(){return!0};
function jb(){for(var a=!1,b=A(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=Za(e.id);f||(a=!0,f=new hb(e));bb(f,d);a&&f.Xa()}}Ka(jb);function kb(a,b,c){y.call(this,"Bus",a,kb);this.T=b;this.ka=c;this.Af=a.buswidth||20;this.Vf=this.ld=(1<<this.Af)-1;this.Eb=20>=this.Af?12:14;this.mc=1<<this.Eb;this.xk=this.mc>>2;this.pb=this.mc-1;this.kh=(this.Vf+this.mc)/this.mc|0;this.He=this.kh-1;this.zd=[];this.Ad=[];this.kg=this.lg=!1;this.Vi();this.Xa()}Xa(y,kb);
kb.prototype.Vi=function(){this.Ha=Array(this.kh);for(var a=0;a<this.kh;a++){var b=a*this.mc;lb(this.Ha[a]=new mb(b),this.T,this.ka,b,this.mc)}this.T.Vi(this.Ha,this.Vf,this.Eb,this.pb,this.He);this.T.De=this.ld};kb.prototype.reset=function(){nb(this,!0)};kb.prototype.ec=function(a,b){b||this.reset();return!0};
function ob(a,b,c,d,e){if(!(b&a.pb||!c||c&a.pb)){for(var f=b>>a.Eb;0<c&&f<a.Ha.length;){var g=a.Ha[f];if(void 0!==g&&g.size)return pb(1,b,c);b=f*a.mc;g=a.Ha[f++]=new mb(b,a.mc,d,e);lb(g,a.T,a.ka,b,a.mc);c-=a.mc}return!0}return pb(2,b,c)}function nb(a,b){if(void 0!==b&&20<a.Af){var c=a.ld&-1048577|(b?1048576:0);c!=a.ld&&(a.ld=c,a.T&&(a.T.De=c))}}
kb.prototype.$h=function(a,b,c){if(!(a&this.pb||!b||b&this.pb)){for(var d=a>>this.Eb;0<b;){var e=this.Ha[d];if(!e.ga)return pb(5,a,b);e.cf(c);b-=this.mc;d++}return!0}return pb(3,a,b)};function qb(a,b,c){if(!(b&a.pb||!c||c&a.pb)){for(var d=b>>a.Eb;0<c;)b=d*a.mc,lb(a.Ha[d++]=new mb(b),a.T,a.ka,b,a.mc),c-=a.mc;return!0}return pb(4,b,c)}function rb(a,b){return a.Ha[(b&a.ld)>>a.Eb].Jg(b&a.pb)}
function sb(a,b){var c=b&a.pb,d=(b&a.ld)>>a.Eb;return c!=a.pb?a.Ha[d].Wj(c):a.Ha[d++].Jg(c)|a.Ha[d&a.He].Jg(0)<<8}function tb(a,b,c){a.Ha[(b&a.ld)>>a.Eb].Pg(b&a.pb,c&255)}function ub(a,b,c){var d=b&a.pb;b=(b&a.ld)>>a.Eb;d!=a.pb?a.Ha[b].fk(d,c&65535):(a.Ha[b++].Pg(d,c&255),a.Ha[b&a.He].Pg(0,c>>8&255))}
function vb(a){for(var b=0,c=[],d=0;d<a.kh;d++){var e=a.Ha[d];if(e.vb||e.Ik){c[b++]=d;var f=c,g=b++;a:if(e=e.save()){for(var h=0,n=0,l=[];h<e.length;){for(var s=e[h],r=h+1;r<e.length&&e[r]===s;)r++;l[n++]=r-h;l[n++]=s;h=r}if(l.length<e.length){e=l;break a}}f[g]=e}}c[b]=a.Vf==a.ld;return c}function wb(a,b){if(void 0===b)return a.kg=!a.kg,a.kg;void 0===a.zd[b]&&(a.zd[b]=[null,null,!1]);a.zd[b][2]=!a.zd[b][2];return a.zd[b][2]}
function xb(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,n=c[e];if(void 0!==n)for(var l=e+d;l<=g;l++)void 0!==f.zd[l]?x("Input port "+u(l)+" registered by "+f.zd[l][0].id+", ignoring "+h.id):f.zd[l]=[h,n,!1,!1]}}function yb(a,b,c){var d=255,e=a.zd[b];void 0!==e?(e[1]&&(d=e[1].call(e[0],b,c)),a.ka&&a.kg!=e[2]&&zb(a.ka,b,d)):a.ka&&(cb(a.ka,a,b,null,c),a.kg&&zb(a.ka,b,d));return d}
function Ab(a,b){if(void 0===b)return a.lg=!a.lg,a.lg;void 0===a.Ad[b]&&(a.Ad[b]=[null,null,!1]);a.Ad[b][2]=!a.Ad[b][2];return a.Ad[b][2]}function Bb(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,n=c[e];if(void 0!==n)for(var l=e+d;l<=g;l++)void 0!==f.Ad[l]?x("Output port "+u(l)+" registered by "+f.Ad[l][0].id+", ignoring "+h.id):f.Ad[l]=[h,n,!1,!1]}}
function Cb(a,b,c,d){var e=a.Ad[b];void 0!==e?(e[1]&&e[1].call(e[0],b,c,d),a.ka&&a.lg!=e[2]&&Db(a.ka,b,c)):a.ka&&(cb(a.ka,a,b,c,d),a.lg&&Db(a.ka,b,c))}function pb(a,b,c){x("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}
function mb(a,b,c,d){this.Jm=b||0;this.ya=null;this.offset=0;this.zh=c;this.ga=null;this.vb=this.Ik=!1;if(b)if(d)this.ga=d,a=[d.md,a-d.Ya],this.ya=a[0],this.offset=a[1],this.cf(d.Xf);else{this.ya=Array(b>>2);for(d=0;d<this.ya.length;d++)this.ya[d]=0;this.cf(Eb)}else this.cf()}
mb.prototype={Th:function(a){this.ka.wa(Fb)&&!a&&this.ka.message("attempt to read invalid block %"+p(this.ce)+" from "+fa(this.T.ua,this.T.va.ta));return 0},Nf:function(a,b){this.ka.wa(Fb)&&!a&&this.ka.message("attempt to write 0x"+u(b)+" to invalid block %"+p(this.ce),!0)},qp:function(a){return this.ya[a>>2]>>>((a&3)<<3)&255},sp:function(a){var b=a>>2;a=(a&3)<<3;var c=this.ya[b]>>>a;return 24>a?c&65535:c&255|(this.ya[b+1]&255)<<8},Cp:function(a,b){var c=a>>2,d=(a&3)<<3;this.ya[c]=this.ya[c]&~(255<<
d)|b<<d;this.vb=!0},Ep:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.ya[c]=this.ya[c]&~(65535<<d)|b<<d:(this.ya[c]=this.ya[c]&16777215|b<<24,c++,this.ya[c]=this.ya[c]&4294967040|b>>8);this.vb=!0},pp:function(a){Gb(this.ka,this.ce+a);return this.Jg(a)},rp:function(a){Gb(this.ka,this.ce+a)||Gb(this.ka,this.ce+a+1);return this.Wj(a)},Bp:function(a,b){Hb(this.ka,this.ce+a);this.Pg(a,b)},Dp:function(a,b){Hb(this.ka,this.ce+a)||Hb(this.ka,this.ce+a+1);this.fk(a,b)},save:function(){return this.ga?null:this.ya},
restore:function(a){return this.ga?null==a:a&&this.Jm==a.length<<2?(this.ya=a,this.vb=!0):!1},cf:function(a,b){a||(a=[]);void 0===b&&(b=!0);Ib(this,a,b);Jb(this,a,b)},be:function(a,b){b?0===this.zk++&&Jb(this,Kb):0===this.yk++&&Ib(this,Kb)}};function Lb(a,b){b?0===--a.zk&&(a.Mc=a.zh?a.Nf:a.Pg,a.xm=a.zh?a.Nf:a.fk):0===--a.yk&&(a.yc=a.Jg,a.jm=a.Wj)}function lb(a,b,c,d,e){a.T=b;a.ka=c;a.ce=d;a.yk=a.zk=0;a.ka&&Mb(a.ka,d,e)}
function Jb(a,b,c){a.Mc=b[2]&&!a.zh?b[2]:a.Nf;a.xm=b[3]&&!a.zh?b[3]:a.Nf;c&&(a.Pg=b[2]?b[2]:a.Nf,a.fk=b[3]?b[3]:a.Nf)}function Ib(a,b,c){a.yc=b[0]?b[0]:a.Th;a.jm=b[1]?b[1]:a.Th;c&&(a.Jg=b[0]?b[0]:a.Th,a.Wj=b[1]?b[1]:a.Th)}var Eb=[mb.prototype.qp,mb.prototype.sp,mb.prototype.Cp,mb.prototype.Ep],Kb=[mb.prototype.pp,mb.prototype.rp,mb.prototype.Bp,mb.prototype.Dp];
function Nb(a,b){y.call(this,"CPU",a,Nb,Ob);var c=a.cycles||b,d=a.multiplier||1;this.da={};this.da.td=c;this.da.Pd=d;this.da.Gh=Math.round(this.da.td/1E4)/100;this.da.Ue=this.da.Gh*this.da.Pd;this.na.Ub=!1;this.na.Fb=!1;this.na.Ni=!1;this.na.Ei=a.autoStart;this.na.Jk=!1;c=Qa.autostart;void 0!==c&&(this.na.Ei="true"==c?!0:"false"==c?!1:null);this.na.rf=!1;this.da.pg=this.da.Cf=0;this.da.qg=a.csStart;this.da.Bf=a.csInterval;this.da.Df=a.csStop;var e=this;this.so=function(){e.$e()};this.Xa()}Xa(y,Nb);
k=Nb.prototype;k.vc=function(a,b,c,d){this.sa=b;this.ka=d;this.Ma=a;var e=ib(a,"Video");e&&(this.zi=function(){Pb(e)},this.Yc=function(){e.Yc()});this.oa=ib(a,"ChipSet");this.Xa()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.ec=function(a,b){if(!b){if(a&&this.restore){Qb(this);if(!this.restore(a))return!1;Rb(this)}else this.reset();this.ka?this.ka.Zn():this.aa("No debugger detected")}this.na.Ub=!0;!Sb(this)&&this.ka&&Tb(this.ka);Vb(this);return!0};
k.dc=function(a){this.na.Ub=!1;return a&&this.save?this.save():!0};function Sb(a){return!0===a.na.Ei||null===a.na.Ei&&!a.ka&&void 0===a.xa.run?(a.$e(),!0):!1}k.Yc=function(){};k.Rk=function(){return 0};function Rb(a){void 0===a.da.qg&&(a.da.qg=0);void 0===a.da.Bf&&(a.da.Bf=-1);void 0===a.da.Df&&(a.da.Df=-1);a.na.rf=0<=a.da.qg&&0<a.da.Bf;a.na.rf&&(a.da.pg=0,a.da.Cf=a.da.qg-a.Ye)}
function Wb(a,b){if(a.na.rf){var c=!1;a.da.pg=a.da.pg+a.Rk()|0;a.da.Cf-=b;0>=a.da.Cf&&(a.da.Cf+=a.da.Bf,c=!0);0<=a.da.Df&&a.da.Df<=D(a)&&(a.da.Bf=a.da.Df=-1,Rb(a),a.Jb(),c=!0);c&&a.aa(D(a)+" cycles: checksum="+p(a.da.pg))}}function F(a,b,c,d){a.xa[b]&&(void 0===d&&(d=4),void 0===c&&(gb(a,"Register "+b+" is invalid"),a.Jb()),c=!a.na.Fb||a.na.Jk?p(c,d):"----".substr(0,d),a.xa[b].textContent!=c&&(a.xa[b].textContent=c))}k.rh=function(){};k.zi=function(){};
k.Ib=function(a,b,c){var d=this;a=!1;switch(b){case "run":this.xa[b]=c;c.onclick=function(){d.na.Fb?d.Jb(!0):d.$e(!0)};a=!0;break;case "reset":this.xa[b]=c;c.onclick=function(){d.Ma&&Xb(d.Ma)};a=!0;break;case "speed":this.xa[b]=c;a=!0;break;case "setSpeed":this.xa[b]=c,c.onclick=function(){Yb(d,d.da.Pd<<1,!0)},c.textContent=this.da.Ue.toFixed(2)+"Mhz",a=!0}return a};function Zb(a,b){if(a.na.Fb){var c=a.A-b;a.A-=c;a.Uc-=c}}function $b(a,b,c){a.Ye+=b;c&&(a.Uc=a.A=0)}
function ac(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.da.Pd&&a.da.sd&&(d=a.da.sd/a.da.Gh);a.da.Zk=Math.round(1E3/30);a.da.mo=Math.floor(a.da.td/c*d);a.da.aj=Math.floor(a.da.td/30*d);a.da.cl=Math.floor(a.da.td/60*d);a.da.bl=Math.floor(a.da.td/2*d);b||(a.da.Ef=a.da.aj,a.da.sg=a.da.cl,a.da.rg=a.da.bl);a.da.bj=0}function D(a,b){var c=a.Ye+a.ue+a.Uc-a.A;b&&1<a.da.Pd&&a.da.sd>a.da.Gh&&(c=Math.round(c/a.da.Pd));return c}function Qb(a){a.da.sd=0;a.Ye=a.ue=a.Uc=a.A=0;Rb(a);Yb(a,1)}
function Yb(a,b,c){if(void 0!==b){0.8>a.da.sd/a.da.Ue&&(b=1);a.da.Pd=b;b=a.da.Gh*a.da.Pd;if(a.da.Ue!=b){a.da.Ue=b;b=a.da.Ue.toFixed(2)+"Mhz";var d=a.xa.setSpeed;d&&(d.textContent=b);a.aa("target speed: "+b)}c&&a.Yc()}$b(a,a.ue);a.ue=0;a.da.zf=qa();a.da.Ve=0;ac(a)}
k.$e=function(a){if(db(this,!0)){if(!this.na.Fb){Yb(this);this.Ma&&this.Ma.start(this.da.zf,D(this));this.na.Fb=!0;this.na.Ni=!0;this.oa&&bc(this.oa);var b=this.xa.run;b&&(b.textContent="Halt");this.rh(!0);a&&this.Yc()}this.da.bj>=this.da.td&&ac(this,!0);this.da.tg=0;this.da.Hh=qa();this.da.Ve&&(a=this.da.Hh-this.da.Ve,a>this.da.Zk&&(this.da.zf+=a,this.da.zf>this.da.Hh&&(this.da.zf=this.da.Hh)));try{do{var c=this.na.rf?1:this.da.mo;if(this.oa){cc(this.oa);var d=this.oa;a=c;var e=d.Mb[0];if(e.Se){var f=
(D(d.T,d.ne)-e.jd)/d.Qh|0,g=dc(d,0)-f;6==e.mode&&(g-=f);var h=g*d.Qh|0;6==e.mode&&(h>>=1);a>h&&(a=h)}var c=a,n=this.oa;a=c;if(n.ma&&n.ma[11]&64){var l=n.Gf-D(n.T,n.ne);0<l&&a>l&&(a=l)}c=a}this.Mf(c);var s=this.Uc-this.A;this.ue+=s;this.da.tg+=s;$b(this,0,!0);Wb(this,s);this.da.sg-=s;0>=this.da.sg&&(this.da.sg+=this.da.cl,this.zi());this.da.rg-=s;0>=this.da.rg&&(this.da.rg+=this.da.bl,this.rh());this.da.Ef-=s;if(0>=this.da.Ef){this.da.Ef+=this.da.aj;break}}while(this.na.Fb)}catch(r){this.Jb();Vb(this);
this.Ma&&this.Ma.stop(qa(),D(this));db(this,!1);gb(this,r.message);return}c=setTimeout;d=this.so;this.da.Ve=qa();e=this.da.Zk;this.da.tg&&(e=Math.round(e*this.da.tg/this.da.aj));e-=this.da.Ve-this.da.Hh;if(f=this.da.Ve-this.da.zf)this.da.sd=Math.round(this.ue/(10*f))/100,864E5<=f&&(this.Ye=0,this.oa&&cc(this.oa,!0),Yb(this));if(0>e||this.da.sd<this.da.Ue)e=0;this.da.bj+=this.da.tg;this.da.Ve+=e;c(d,e)}else Vb(this),this.Ma&&this.Ma.stop(qa(),D(this))};k.Mf=function(){return 0};
k.Jb=function(a){eb(this,!0);this.Uc-=this.A;this.A=0;$b(this,this.ue);this.ue=0;if(this.na.Fb){this.na.Fb=!1;this.oa&&bc(this.oa);var b=this.xa.run;b&&(b.textContent="Run")}this.na.ig=a};function Vb(a){a.zi();a.rh()}
function jb(){for(var a=!1,b=A(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=$a(e.id);f||(a=!0,f=new hb(e));bb(f,d);a&&f.Va()}}Ka(jb);function kb(a,b,c){y.call(this,"Bus",a,kb);this.T=b;this.ka=c;this.Af=a.buswidth||20;this.Wf=this.ld=(1<<this.Af)-1;this.Eb=20>=this.Af?12:14;this.mc=1<<this.Eb;this.vk=this.mc>>2;this.ob=this.mc-1;this.ih=(this.Wf+this.mc)/this.mc|0;this.He=this.ih-1;this.Ad=[];this.Bd=[];this.kg=this.lg=!1;this.Ti();this.Va()}Xa(y,kb);
kb.prototype.Ti=function(){this.Ha=Array(this.ih);for(var a=0;a<this.ih;a++){var b=a*this.mc;lb(this.Ha[a]=new mb(b),this.T,this.ka,b,this.mc)}this.T.Ti(this.Ha,this.Wf,this.Eb,this.ob,this.He);this.T.De=this.ld};kb.prototype.reset=function(){nb(this,!0)};kb.prototype.ec=function(a,b){b||this.reset();return!0};
function ob(a,b,c,d,e){if(!(b&a.ob||!c||c&a.ob)){for(var f=b>>a.Eb;0<c&&f<a.Ha.length;){var g=a.Ha[f];if(void 0!==g&&g.size)return pb(1,b,c);b=f*a.mc;g=a.Ha[f++]=new mb(b,a.mc,d,e);lb(g,a.T,a.ka,b,a.mc);c-=a.mc}return!0}return pb(2,b,c)}function nb(a,b){if(void 0!==b&&20<a.Af){var c=a.ld&-1048577|(b?1048576:0);c!=a.ld&&(a.ld=c,a.T&&(a.T.De=c))}}
kb.prototype.Zh=function(a,b,c){if(!(a&this.ob||!b||b&this.ob)){for(var d=a>>this.Eb;0<b;){var e=this.Ha[d];if(!e.ga)return pb(5,a,b);e.bf(c);b-=this.mc;d++}return!0}return pb(3,a,b)};function qb(a,b,c){if(!(b&a.ob||!c||c&a.ob)){for(var d=b>>a.Eb;0<c;)b=d*a.mc,lb(a.Ha[d++]=new mb(b),a.T,a.ka,b,a.mc),c-=a.mc;return!0}return pb(4,b,c)}function rb(a,b){return a.Ha[(b&a.ld)>>a.Eb].Hg(b&a.ob)}
function sb(a,b){var c=b&a.ob,d=(b&a.ld)>>a.Eb;return c!=a.ob?a.Ha[d].Uj(c):a.Ha[d++].Hg(c)|a.Ha[d&a.He].Hg(0)<<8}function tb(a,b,c){a.Ha[(b&a.ld)>>a.Eb].Ng(b&a.ob,c&255)}function ub(a,b,c){var d=b&a.ob;b=(b&a.ld)>>a.Eb;d!=a.ob?a.Ha[b].dk(d,c&65535):(a.Ha[b++].Ng(d,c&255),a.Ha[b&a.He].Ng(0,c>>8&255))}
function vb(a){for(var b=0,c=[],d=0;d<a.ih;d++){var e=a.Ha[d];if(e.xb||e.Fk){c[b++]=d;var f=c,g=b++;a:if(e=e.save()){for(var h=0,n=0,m=[];h<e.length;){for(var s=e[h],r=h+1;r<e.length&&e[r]===s;)r++;m[n++]=r-h;m[n++]=s;h=r}if(m.length<e.length){e=m;break a}}f[g]=e}}c[b]=a.Wf==a.ld;return c}function wb(a,b){if(void 0===b)return a.kg=!a.kg,a.kg;void 0===a.Ad[b]&&(a.Ad[b]=[null,null,!1]);a.Ad[b][2]=!a.Ad[b][2];return a.Ad[b][2]}
function xb(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,n=c[e];if(void 0!==n)for(var m=e+d;m<=g;m++)void 0!==f.Ad[m]?x("Input port "+v(m)+" registered by "+f.Ad[m][0].id+", ignoring "+h.id):f.Ad[m]=[h,n,!1,!1]}}function yb(a,b,c){var d=255,e=a.Ad[b];void 0!==e?(e[1]&&(d=e[1].call(e[0],b,c)),a.ka&&a.kg!=e[2]&&zb(a.ka,b,d)):a.ka&&(cb(a.ka,a,b,null,c),a.kg&&zb(a.ka,b,d));return d}
function Ab(a,b){if(void 0===b)return a.lg=!a.lg,a.lg;void 0===a.Bd[b]&&(a.Bd[b]=[null,null,!1]);a.Bd[b][2]=!a.Bd[b][2];return a.Bd[b][2]}function Bb(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,n=c[e];if(void 0!==n)for(var m=e+d;m<=g;m++)void 0!==f.Bd[m]?x("Output port "+v(m)+" registered by "+f.Bd[m][0].id+", ignoring "+h.id):f.Bd[m]=[h,n,!1,!1]}}
function Cb(a,b,c,d){var e=a.Bd[b];void 0!==e?(e[1]&&e[1].call(e[0],b,c,d),a.ka&&a.lg!=e[2]&&Db(a.ka,b,c)):a.ka&&(cb(a.ka,a,b,c,d),a.lg&&Db(a.ka,b,c))}function pb(a,b,c){x("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}
function mb(a,b,c,d){this.Gm=b||0;this.ya=null;this.offset=0;this.xh=c;this.ga=null;this.xb=this.Fk=!1;if(b)if(d)this.ga=d,a=[d.md,a-d.Wa],this.ya=a[0],this.offset=a[1],this.bf(d.Yf);else{this.ya=Array(b>>2);for(d=0;d<this.ya.length;d++)this.ya[d]=0;this.bf(Eb)}else this.bf()}
mb.prototype={Sh:function(){this.ka.va(Fb)&&this.ka.message("attempt to read invalid block %"+p(this.be)+" from "+fa(this.T.wa,this.T.ua.ta));return 0},Of:function(a,b){this.ka.va(Fb)&&this.ka.message("attempt to write 0x"+v(b)+" to invalid block %"+p(this.be),!0)},pp:function(a){return this.ya[a>>2]>>>((a&3)<<3)&255},rp:function(a){var b=a>>2;a=(a&3)<<3;var c=this.ya[b]>>>a;return 24>a?c&65535:c&255|(this.ya[b+1]&255)<<8},Bp:function(a,b){var c=a>>2,d=(a&3)<<3;this.ya[c]=this.ya[c]&~(255<<d)|b<<
d;this.xb=!0},Dp:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.ya[c]=this.ya[c]&~(65535<<d)|b<<d:(this.ya[c]=this.ya[c]&16777215|b<<24,c++,this.ya[c]=this.ya[c]&4294967040|b>>8);this.xb=!0},op:function(a){Gb(this.ka,this.be+a);return this.Hg(a)},qp:function(a){Gb(this.ka,this.be+a)||Gb(this.ka,this.be+a+1);return this.Uj(a)},Ap:function(a,b){Hb(this.ka,this.be+a);this.Ng(a,b)},Cp:function(a,b){Hb(this.ka,this.be+a)||Hb(this.ka,this.be+a+1);this.dk(a,b)},save:function(){return this.ga?null:this.ya},
restore:function(a){return this.ga?null==a:a&&this.Gm==a.length<<2?(this.ya=a,this.xb=!0):!1},bf:function(a,b){a||(a=[]);void 0===b&&(b=!0);Ib(this,a,b);Jb(this,a,b)},ae:function(a,b){b?0===this.xk++&&Jb(this,Kb):0===this.wk++&&Ib(this,Kb)}};function Lb(a,b){b?0===--a.xk&&(a.Mc=a.xh?a.Of:a.Ng,a.um=a.xh?a.Of:a.dk):0===--a.wk&&(a.yc=a.Hg,a.gm=a.Uj)}function lb(a,b,c,d,e){a.T=b;a.ka=c;a.be=d;a.wk=a.xk=0;a.ka&&Mb(a.ka,d,e)}
function Jb(a,b,c){a.Mc=b[2]&&!a.xh?b[2]:a.Of;a.um=b[3]&&!a.xh?b[3]:a.Of;c&&(a.Ng=b[2]?b[2]:a.Of,a.dk=b[3]?b[3]:a.Of)}function Ib(a,b,c){a.yc=b[0]?b[0]:a.Sh;a.gm=b[1]?b[1]:a.Sh;c&&(a.Hg=b[0]?b[0]:a.Sh,a.Uj=b[1]?b[1]:a.Sh)}var Eb=[mb.prototype.pp,mb.prototype.rp,mb.prototype.Bp,mb.prototype.Dp],Kb=[mb.prototype.op,mb.prototype.qp,mb.prototype.Ap,mb.prototype.Cp];
function Nb(a,b){y.call(this,"CPU",a,Nb,Ob);var c=a.cycles||b,d=a.multiplier||1;this.da={};this.da.ud=c;this.da.Pd=d;this.da.Fh=Math.round(this.da.ud/1E4)/100;this.da.Te=this.da.Fh*this.da.Pd;this.na.Tb=!1;this.na.Fb=!1;this.na.Li=!1;this.na.Ci=a.autoStart;this.na.Gk=!1;c=Qa.autostart;void 0!==c&&(this.na.Ci="true"==c?!0:"false"==c?!1:null);this.na.rf=!1;this.da.og=this.da.Cf=0;this.da.pg=a.csStart;this.da.Bf=a.csInterval;this.da.Df=a.csStop;var e=this;this.po=function(){e.Ze()};this.Va()}Xa(y,Nb);
k=Nb.prototype;k.vc=function(a,b,c,d){this.sa=b;this.ka=d;this.Ma=a;var e=ib(a,"Video");e&&(this.zi=function(){Pb(e)},this.Yc=function(){e.Yc()});this.pa=ib(a,"ChipSet");this.Va()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.ec=function(a,b){if(!b){if(a&&this.restore){Qb(this);if(!this.restore(a))return!1;Rb(this)}else this.reset();this.ka?this.ka.Wn():this.Z("No debugger detected")}this.na.Tb=!0;!Sb(this)&&this.ka&&Ub(this.ka);Vb(this);return!0};
k.dc=function(a){this.na.Tb=!1;return a&&this.save?this.save():!0};function Sb(a){return!0===a.na.Ci||null===a.na.Ci&&!a.ka&&void 0===a.xa.run?(a.Ze(),!0):!1}k.Yc=function(){};k.Ok=function(){return 0};function Rb(a){void 0===a.da.pg&&(a.da.pg=0);void 0===a.da.Bf&&(a.da.Bf=-1);void 0===a.da.Df&&(a.da.Df=-1);a.na.rf=0<=a.da.pg&&0<a.da.Bf;a.na.rf&&(a.da.og=0,a.da.Cf=a.da.pg-a.Xe)}
function Wb(a,b){if(a.na.rf){var c=!1;a.da.og=a.da.og+a.Ok()|0;a.da.Cf-=b;0>=a.da.Cf&&(a.da.Cf+=a.da.Bf,c=!0);0<=a.da.Df&&a.da.Df<=D(a)&&(a.da.Bf=a.da.Df=-1,Rb(a),a.Jb(),c=!0);c&&a.Z(D(a)+" cycles: checksum="+p(a.da.og))}}function F(a,b,c,d){a.xa[b]&&(void 0===d&&(d=4),void 0===c&&(gb(a,"Register "+b+" is invalid"),a.Jb()),c=!a.na.Fb||a.na.Gk?p(c,d):"----".substr(0,d),a.xa[b].textContent!=c&&(a.xa[b].textContent=c))}k.ph=function(){};k.zi=function(){};
k.Ib=function(a,b,c){var d=this;a=!1;switch(b){case "run":this.xa[b]=c;c.onclick=function(){d.na.Fb?d.Jb(!0):d.Ze(!0)};a=!0;break;case "reset":this.xa[b]=c;c.onclick=function(){d.Ma&&Xb(d.Ma)};a=!0;break;case "speed":this.xa[b]=c;a=!0;break;case "setSpeed":this.xa[b]=c,c.onclick=function(){Yb(d,d.da.Pd<<1,!0)},c.textContent=this.da.Te.toFixed(2)+"Mhz",a=!0}return a};function Zb(a,b){if(a.na.Fb){var c=a.A-b;a.A-=c;a.Uc-=c}}function $b(a,b,c){a.Xe+=b;c&&(a.Uc=a.A=0)}
function ac(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.da.Pd&&a.da.td&&(d=a.da.td/a.da.Fh);a.da.Wk=Math.round(1E3/30);a.da.jo=Math.floor(a.da.ud/c*d);a.da.Zi=Math.floor(a.da.ud/30*d);a.da.$k=Math.floor(a.da.ud/60*d);a.da.Zk=Math.floor(a.da.ud/2*d);b||(a.da.Ef=a.da.Zi,a.da.rg=a.da.$k,a.da.qg=a.da.Zk);a.da.$i=0}function D(a,b){var c=a.Xe+a.se+a.Uc-a.A;b&&1<a.da.Pd&&a.da.td>a.da.Fh&&(c=Math.round(c/a.da.Pd));return c}function Qb(a){a.da.td=0;a.Xe=a.se=a.Uc=a.A=0;Rb(a);Yb(a,1)}
function Yb(a,b,c){if(void 0!==b){0.8>a.da.td/a.da.Te&&(b=1);a.da.Pd=b;b=a.da.Fh*a.da.Pd;if(a.da.Te!=b){a.da.Te=b;b=a.da.Te.toFixed(2)+"Mhz";var d=a.xa.setSpeed;d&&(d.textContent=b);a.Z("target speed: "+b)}c&&a.Yc()}$b(a,a.se);a.se=0;a.da.zf=qa();a.da.Ue=0;ac(a)}
k.Ze=function(a){if(db(this,!0)){if(!this.na.Fb){Yb(this);this.Ma&&this.Ma.start(this.da.zf,D(this));this.na.Fb=!0;this.na.Li=!0;this.pa&&bc(this.pa);var b=this.xa.run;b&&(b.textContent="Halt");this.ph(!0);a&&this.Yc()}this.da.$i>=this.da.ud&&ac(this,!0);this.da.sg=0;this.da.Gh=qa();this.da.Ue&&(a=this.da.Gh-this.da.Ue,a>this.da.Wk&&(this.da.zf+=a,this.da.zf>this.da.Gh&&(this.da.zf=this.da.Gh)));try{do{var c=this.na.rf?1:this.da.jo;if(this.pa){cc(this.pa);var d=this.pa;a=c;var e=d.Lb[0];if(e.Re){var f=
(D(d.T,d.le)-e.jd)/d.Ph|0,g=dc(d,0)-f;6==e.mode&&(g-=f);var h=g*d.Ph|0;6==e.mode&&(h>>=1);a>h&&(a=h)}var c=a,n=this.pa;a=c;if(n.ma&&n.ma[11]&64){var m=n.Hf-D(n.T,n.le);0<m&&a>m&&(a=m)}c=a}this.Nf(c);var s=this.Uc-this.A;this.se+=s;this.da.sg+=s;$b(this,0,!0);Wb(this,s);this.da.rg-=s;0>=this.da.rg&&(this.da.rg+=this.da.$k,this.zi());this.da.qg-=s;0>=this.da.qg&&(this.da.qg+=this.da.Zk,this.ph());this.da.Ef-=s;if(0>=this.da.Ef){this.da.Ef+=this.da.Zi;break}}while(this.na.Fb)}catch(r){this.Jb();Vb(this);
this.Ma&&this.Ma.stop(qa(),D(this));db(this,!1);gb(this,r.message);return}c=setTimeout;d=this.po;this.da.Ue=qa();e=this.da.Wk;this.da.sg&&(e=Math.round(e*this.da.sg/this.da.Zi));e-=this.da.Ue-this.da.Gh;if(f=this.da.Ue-this.da.zf)this.da.td=Math.round(this.se/(10*f))/100,864E5<=f&&(this.Xe=0,this.pa&&cc(this.pa,!0),Yb(this));if(0>e||this.da.td<this.da.Te)e=0;this.da.$i+=this.da.sg;this.da.Ue+=e;c(d,e)}else Vb(this),this.Ma&&this.Ma.stop(qa(),D(this))};k.Nf=function(){return 0};
k.Jb=function(a){eb(this,!0);this.Uc-=this.A;this.A=0;$b(this,this.se);this.se=0;if(this.na.Fb){this.na.Fb=!1;this.pa&&bc(this.pa);var b=this.xa.run;b&&(b.textContent="Run")}this.na.ig=a};function Vb(a){a.zi();a.ph()}
var ec=[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 fc(a,b,c,d){this.T=a;this.ka=a.ka;this.id=b;this.Mg=c||"";this.Da=this.ta=0;this.nc=65535;this.Db=0;this.Cd=null;this.Jc=this.Ta=0;this.rk=this.id==gc?Array(32):[];this.Gi=null;this.mg=!1;hc(this,d)}var gc=1;function ic(a){this.ta=a;return this.Da=a<<4}function jc(a,b){var c,d,e=this.T;a&4?(c=e.Xc.Da,d=c+e.Xc.nc):(c=e.qc,d=e.de);if(!b||c){c+=a&65528;if(c+7<=d)return b||(e.A-=15),kc(this,c,a,b);b||lc.call(e,13,a)}return null}
function nc(a){var b=this.T;a=b.Pc+(a<<2);b.ua=b.qa(a);this.ta=b.qa(a+2);b.Ba&=-769;return this.Da=this.ta<<4}function pc(a){var b=this.T;a<<=3;var c=b.Pc+a;if(c+7<=b.Ce)return kc(this,c,a);lc.call(b,13,a|3,!0);return null}function qc(a){return this.Da+a}function rc(a){return this.Da+a}function sc(a,b,c){return a+b<=this.nc?this.Da+a:tc.call(this,0,0,c)}function uc(a,b,c){return a+b>this.nc?this.Da+a:tc.call(this,0,0,c)}function tc(a,b,c){c||lc.call(this.T,13,0);return null}
function vc(a,b,c){return a+b<=this.nc?this.Da+a:wc.call(this,0,0,c)}function xc(a,b,c){return a+b>this.nc?this.Da+a:wc.call(this,0,0,c)}function wc(a,b,c){c||lc.call(this.T,13,0);return null}
function yc(a,b){var c=this.T,d=c.Za.Da,e=this.Ta,f=c.Za.ta;if(!b){if(768!=c.Za.type)return lc.call(c,10,a,!0),!1;c.Sa(c.Za.Cd+4,c.Za.Db&-769|256)}if(null==c.Za.load(a))return!1;var g=c.Za.Da;if(b){if(768==c.Za.type)return lc.call(c,13,a,!0),!1;c.Sa(c.Za.Cd+4,c.Za.Db|=768);c.Za.type=768}c.Sa(d+14,c.ua);c.Sa(d+16,zc(c));c.Sa(d+18,c.H);c.Sa(d+20,c.J);c.Sa(d+22,c.K);c.Sa(d+24,c.C);c.Sa(d+26,c.Y);c.Sa(d+28,c.I);c.Sa(d+30,c.G);c.Sa(d+32,c.F);c.Sa(d+34,c.Wa.ta);c.Sa(d+36,c.va.ta);c.Sa(d+38,c.Ra.ta);c.Sa(d+
40,c.Cb.ta);var d=38,h=26;Ac(c,c.qa(g+16)|(b?16384:0));c.H=c.qa(g+18);c.J=c.qa(g+20);c.K=c.qa(g+22);c.C=c.qa(g+24);c.I=c.qa(g+28);c.G=c.qa(g+30);c.F=c.qa(g+32);c.Wa.load(c.qa(g+34));c.Cb.load(c.qa(g+40));Bc(c,c.qa(g+14),c.qa(g+36));this.Ta<e&&(h=(this.Ta<<2)+2,d=h+2);c.Y=c.qa(g+h);c.Ra.load(c.qa(g+d));c.Xc.load(c.qa(g+42));b&&c.Sa(g+0,f);c.fc|=8;return!0}function Cc(a,b){var c,d,e=a.T;b&4||(c=e.qc,d=e.de);if(void 0!==c&&(c+=b&65528,c+7<=d))return e.qa(c+4);lc.call(e,13,b);return null}
function Dc(a,b,c){var d=a.T,e=d.qa(b+2),f=d.qa(b+0)|(e&255)<<16,d=d.qa(b+4);a.ta=c;a.Da=f;a.nc=d;a.Db=e&65280;a.Cd=b;hc(a);a.jb(c,f,d,e)}
function kc(a,b,c,d){for(var e=a.T,f=e.qa(b+0),g=e.qa(b+4),h=g&7936,n=e.qa(b+2)|(g&255)<<16,l=c&65528;;){if(a.id==gc){a.mg=!1;var l=a.Gi,s=c&3,r=(g&24576)>>13;if(6144<=h){if(s=c&3,s>a.Ta){if(!1!==l){n=null;break}l=e.La();e.Ra.load(e.La());e.Y=l;a.mg=!0}}else{if(1024==h){b=n&65535;s<a.Ta&&(s=a.Ta);s>r&&(n=Cc(a,b),null!=n&&7168==(n&7168)&&(s=r));if(s<=r){n=a.Ta;if(null==a.load(b,!0)){n=null;break}e.ua=f;if(a.Ta<n){if(!0!==l){n=null;break}l=e.Y;h=0;for(g&=31;g--;)a.rk[h++]=e.qa(e.Ra.Hc(l,1)),l+=2;g=
e.Za.Da;c=(a.Ta<<2)+2;d=c+2;f=e.Y;l=e.Ra.ta;e.Y=e.qa(g+c);e.Ra.load(e.qa(g+d));G(e,l);for(G(e,f);h;)G(e,a.rk[--h]);a.mg=!0}return a.Da}d||lc.call(e,13,c,!0)}else if(1536==h||1792==h){b=n&65535;r>a.Ta&&(n=Cc(a,b),null!=n&&7168==(n&7168)&&(r=a.Ta));if(r<=a.Ta){n=a.Ta;if(null==a.load(b,!0)){n=null;break}e.ua=f;if(a.Ta<n){if(!0!==l){n=null;break}g=e.Za.Da;c=(a.Ta<<2)+2;d=c+2;f=e.Y;l=e.Ra.ta;e.Y=e.qa(g+c);e.Ra.load(e.qa(g+d));G(e,l);G(e,f);a.mg=!0}e.Ba=1536==h?e.Ba&-17153:e.Ba&-16641;return a.Da}d||lc.call(e,
13,c|1,!0)}else{if(1280==h){if(!yc.call(a,n&65535,!0)){n=null;break}return a.Da}d||lc.call(e,13,c,!0)}n=null;break}}else if(2==a.id){if(l&&(4096>h||2048==(h&2560))){d||lc.call(e,13,c,0!=g);n=null;break}}else if(3==a.id){if(!l||4096>h||2048==(h&2560)){d||lc.call(e,13,c,!0);n=null;break}}else if(4==a.id){if(!l||256!=h&&768!=h){d||lc.call(e,10,c,!0);n=null;break}}else if(6==a.id&&!(g&4096)&&768<h){n=null;break}a.ta=c;a.Da=n;a.nc=f;a.Db=g;a.type=h;a.Cd=b;hc(a);break}d||a.jb(c,n,f,g,0);return n}
fc.prototype.save=function(){return[this.ta,this.Da,this.nc,this.Db,this.id,this.Mg,this.Ta,this.Jc,this.Cd]};fc.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ta=a[0],this.Da=a[1],this.nc=a[2],this.Db=a[3],this.id=a[4],this.Mg=a[5],this.Ta=a[6],this.Jc=a[7],this.Cd=a[8])};
function hc(a,b){void 0===b&&(b=!!(a.T.fc&1));if(b){a.load=jc;a.Yk=pc;a.Hc=sc;a.Zb=vc;if(a.Db&4096){6144==(a.Db&6656)&&(a.Zb=tc);if(a.Db&2048||!(a.Db&512))a.Zb=wc;1024==(a.Db&3072)&&(a.Hc==sc&&(a.Hc=uc),a.Zb==vc&&(a.Zb=xc))}a.Ta=a.ta&3;a.Jc=(a.Db&24576)>>13}else a.load=ic,a.Yk=nc,a.Hc=qc,a.Zb=rc,a.nc=65535,a.Ta=a.Jc=0,a.Cd=null}fc.prototype.jb=function(){};
function Ec(a){this.Ka=a.model||8088;var b=0;switch(this.Ka){default:case 8088:b=4772727;break;case 80286:b=6E6}Nb.call(this,a,b);this.kk=61442;this.Tg=1792;this.Sg=4;this.Hf=255;this.B=80286<=this.Ka?Fc:Jc;this.$a=Kc.slice();this.Em=Lc.slice();this.Fm=Mc.slice();this.nk=Oc;80186<=this.Ka&&(this.Hf=31,this.$a[15]=Pc,this.$a[96]=Qc,this.$a[97]=Rc,this.$a[98]=Sc,this.$a[99]=Pc,this.$a[100]=Pc,this.$a[101]=Pc,this.$a[102]=Pc,this.$a[103]=Pc,this.$a[104]=Tc,this.$a[105]=Uc,this.$a[106]=Vc,this.$a[107]=
Wc,this.$a[108]=Xc,this.$a[109]=Yc,this.$a[110]=Zc,this.$a[111]=$c,this.$a[192]=ad,this.$a[193]=bd,this.$a[200]=cd,this.$a[201]=dd,this.$a[241]=ed,this.Em[7]=fd,this.Fm[7]=fd,80286<=this.Ka&&(this.kk=2,this.Tg|=28672,this.Sg=0,this.$a[15]=gd,this.$a[99]=hd,this.$a[84]=id));this.Vg=[];this.Wg=[];this.Uc=this.nh=0;this.na.ig=this.na.Hk=!1;this.Ha=[];this.De=this.Eb=this.pb=this.He=0;this.U=this.Ym;this.V=this.Zm;this.O=this.eo;this.P=this.fo;this.R=this.zp;this.S=this.Ap;jd(this)}Xa(Nb,Ec);
var Jc={Rj:4,ca:5,Aa:6,ha:7,ia:8,Q:9,W:11,X:12,We:4,el:60,fl:83,ac:3,Gb:9,oc:16,Nh:1,jl:19,ll:28,nl:16,ml:21,kl:37,hl:2,kj:9,il:5,gl:33,mj:10,lj:8,zg:3,yg:15,Bl:51,Cl:1,Dl:2,El:4,Al:32,nj:15,Gl:15,bc:16,cc:4,Il:11,Hl:18,Fl:24,Qb:4,Jl:2,oj:16,Kl:17,tj:18,Ll:19,sj:5,uj:6,Ql:2,Pl:8,Nl:9,Ol:10,Ml:10,vj:10,wj:10,pl:80,rl:144,ol:86,ql:154,tl:101,vl:165,sl:107,ul:171,Sl:70,Ul:113,Rl:76,Tl:124,xl:80,zl:128,wl:86,yl:134,Bg:3,Ag:16,Bj:10,Aj:8,Vl:51,pc:8,Wl:17,Xl:36,wc:11,Yl:16,Cg:10,te:2,hj:18,ij:7,jj:15,pj:12,
qj:7,rj:11,xj:18,yj:7,zj:15,Cj:15,Dj:7,Ej:13,Ij:11,Jj:7,Kj:8,Zl:8,bm:12,$l:18,am:17,cm:15,Gj:8,Fj:20,Hj:2,Nj:3,Dg:9,Mj:5,Lj:11,Pj:4,Oj:17,dm:11},Fc={Rj:0,ca:0,Aa:0,ha:0,ia:0,Q:0,W:1,X:1,We:3,el:14,fl:16,ac:2,Gb:7,oc:7,Nh:0,jl:7,ll:13,nl:7,ml:11,kl:16,hl:3,kj:6,il:2,gl:13,mj:5,lj:5,zg:2,yg:7,Bl:23,Cl:0,Dl:1,El:3,Al:17,nj:7,Gl:11,bc:7,cc:3,Il:7,Hl:11,Fl:15,Qb:2,Jl:3,oj:7,Kl:8,tj:8,Ll:8,sj:4,uj:4,Ql:2,Pl:3,Nl:5,Ol:2,Ml:3,vj:5,wj:3,pl:14,rl:22,ol:17,ql:25,tl:17,vl:25,sl:20,ul:28,Sl:13,Ul:21,Rl:16,Tl:24,
xl:13,zl:21,wl:16,yl:24,Bg:2,Ag:7,Bj:5,Aj:5,Vl:19,pc:5,Wl:5,Xl:17,wc:3,Yl:5,Cg:3,te:0,hj:8,ij:5,jj:9,pj:5,qj:5,rj:4,xj:5,yj:5,zj:4,Cj:7,Dj:5,Ej:8,Ij:3,Jj:4,Kj:3,Zl:11,bm:11,$l:15,am:15,cm:7,Gj:5,Fj:8,Hj:0,Nj:2,Dg:6,Mj:3,Lj:6,Pj:3,Oj:5,dm:5};k=Ec.prototype;k.Vi=function(a,b,c,d,e){this.Ha=a;this.De=b;this.Eb=c;this.pb=d;this.He=e};k.reset=function(){this.na.Fb&&this.Jb();jd(this);Qb(this);this.na.fd=!1};
function jd(a){a.H=0;a.C=0;a.J=0;a.K=0;a.Y=0;a.I=0;a.G=0;a.F=0;a.fc=65520;a.Pc=0;a.Ce=1023;a.Ff=0;a.Mh=-1;a.va=new fc(a,gc,"CS");a.Cb=new fc(a,2,"DS");a.Wa=new fc(a,2,"ES");a.Ra=new fc(a,3,"SS");a.tm=new fc(a,0,"NULL");Bc(a,0,65535);80286<=a.Ka&&(a.qc=0,a.de=65535,a.Xc=new fc(a,5,"LDT",!0),a.Za=new fc(a,4,"TSS",!0),a.Vb=new fc(a,6,"VER",!0),Bc(a,65520,61440),a.va.Da=16711680);Ac(a,0);kd(a);a.xb=0;a.Rb=a.Kg=-1;a.fh=0;a.ja=a.Na=-1;a.D=a.Cb;a.N=a.Ra;a.ba=a.Ca=0}
k.Rk=function(){var a=this.H+this.C+this.J+this.K+this.Y+this.I+this.G+this.F|0;return a=a+this.ua+this.va.ta+this.Cb.ta+this.Ra.ta+this.Wa.ta+zc(this)|0};function ld(a,b,c,d){void 0!==d&&(void 0===a.Vg[b]&&(a.Vg[b]=[]),a.Vg[b].push([c,d]))}function md(a,b){var c=a.Vg[b];if(void 0!==c)for(var d=0;d<c.length;d++)if(!c[d][1].call(c[d][0],a.Ea))return!1;a.na.Hk&&a.wa(nd)&&od(a.ka,b,a.Ea)&&pd(a,a.Ea,function(a,c){return function(d){qd(a.ka,b,d,D(a)-c)}}(a,D(a)));return!0}
function pd(a,b,c){void 0!==c&&(null==a.Wg[b]&&a.nh++,a.Wg[b]=c)}function rd(a,b){var c=a.Wg[b];null!=c&&(c(--a.nh),delete a.Wg[b])}function kd(a,b){void 0===b&&(b=!!(a.fc&1));a.nk=b?sd:Oc;hc(a.va,b);hc(a.Cb,b);hc(a.Ra,b);hc(a.Wa,b)}
k.save=function(){var a=new td(this);a.set(0,[this.H,this.C,this.J,this.K,this.Y,this.I,this.G,this.F,this.Ff]);a.set(1,[this.ua,this.va.save(),this.Cb.save(),this.Ra.save(),this.Wa.save(),null!=this.qc?[this.fc,this.qc,this.de,this.Pc,this.Ce,this.Xc.save(),this.Za.save(),this.Ff]:null,zc(this)]);a.set(2,[this.D.Mg,this.N.Mg,this.ba,this.Ca,this.xb,this.ja,this.Na]);a.set(3,[0,this.Ye,this.da.Pd]);a.set(4,vb(this.sa));return a.data()};
k.restore=function(a){var b;b=a[0];this.H=b[0];this.C=b[1];this.J=b[2];this.K=b[3];this.Y=b[4];this.I=b[5];this.G=b[6];this.F=b[7];this.Ff=b[8]||0;b=a[1];this.va.restore(b[1]);this.Cb.restore(b[2]);this.Ra.restore(b[3]);this.Wa.restore(b[4]);var c=b[5];c&&c.length&&(this.fc=c[0],this.qc=c[1],this.de=c[2],this.Pc=c[3],this.Ce=c[4],this.Xc.restore(c[5]),this.Za.restore(c[6]),this.Ff=c[7],kd(this));Ac(this,b[6]);H(this,b[0]);b=a[2];this.D=ud(this,b[0]);this.N=ud(this,b[1]);this.ba=b[2];this.Ca=b[3];
this.xb=b[4];this.ja=b[5];this.Na=b[6];b=a[3];this.Ye=b[1];Yb(this,b[2]);a:{b=this.sa;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.xk){for(var f=0,g=Array(b.xk),h=0;h<e.length-1;)for(var n=e[h++],l=e[h++];n--;)g[f++]=l;e=g}f=b.Ha[d];if(!f||!f.restore(e)){x("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&nb(b,a[c]);b=!0}return b};
function ud(a,b){switch(b){case "CS":return a.va;case "DS":return a.Cb;case "SS":return a.Ra;case "ES":return a.Wa;case "NULL":return a.tm;default:return[0,b,0,0,""]}}function vd(a,b){a.Ea=a.va.load(b)+a.ua;a.ba|=a.Sg}function wd(a,b){a.Cb.load(b);a.ba|=a.Sg}function xd(a,b){a.Ra.load(b);a.ba|=4}function yd(a,b){a.Wa.load(b);a.ba|=a.Sg}function H(a,b){a.Ea=a.va.Da+(a.ua=b&65535)}function Bc(a,b,c,d){a.va.Gi=d;a.ua=b;b=a.va.load(c);if(null==b)return null;a.Ea=b+a.ua;return a.va.mg}
function zd(a,b){a.Ea=a.va.Da+(a.ua=a.ua+b&65535)}function Ad(a){return a.Z&a.ea?1:0}function Bd(a){return ec[a.la&255]?4:0}function Cd(a){return(a.la^a.ra)&16?16:0}function Dd(a){return a.Z&a.ea-1?0:64}function Ed(a){return a.la&a.ea>>1?128:0}function Fd(a){return(a.la^a.ra^a.la>>1)&a.ea>>1?2048:0}function Gd(a){a.Z&=~a.ea}function Hd(a){a.ra=a.la&16|a.ra&-17}function Id(a){a.Z|=a.ea-1}function Jd(a){Ed(a)&&(a.la^=a.ea>>1|a.ea>>2,a.ra^=32896)}
function Kd(a){a.la&=~a.ea;a.ra=a.la&32896|a.ra&-32897}function Ld(a){a.Z|=a.ea}function Md(a){a.ra=~(a.la&16)&16|a.ra&-17}function Nd(a){a.Z&=~(a.ea-1)}function Qd(a){Ed(a)||(a.la^=a.ea>>1|a.ea>>2,a.ra^=32896)}function Rd(a){a.la|=a.ea;a.ra=a.la&32896|a.ra&-32897}function zc(a){return a.Ba&-2262|Ad(a)|Bd(a)|Cd(a)|Dd(a)|Ed(a)|Fd(a)}
function Ac(a,b,c){a.ea=256;a.Z=a.la=a.ra=0;b&1&&Ld(a);b&4||(a.la|=1);b&16&&(a.ra|=16);b&64||Id(a);b&128&&Qd(a);b&2048&&Rd(a);a.fc&1||(b&=-61441);void 0===c&&(c=a.va.Ta);c?b=b&-12289|a.Ba&12288:a.Ff=(b&12288)>>12;c>a.Ff&&(b=b&-513|a.Ba&512);a.Ba=a.Ba&~a.Tg|b&a.Tg|a.kk;a.Ba&256&&(a.xb|=2,a.ba|=4)}
k.Ib=function(a,b,c){var d=!1;switch(b){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 "V":this.xa[b]=c;d=!0;break;default:d=Nb.prototype.Ib.call(this,a,b,c)}return d};k.wb=function(a){return this.Ha[(a&this.De)>>this.Eb].yc(a&this.pb)};
k.qa=function(a){var b=a&this.pb;a=(a&this.De)>>this.Eb;this.A-=this.B.Rj;return b!=this.pb?this.Ha[a].jm(b):this.Ha[a++].yc(b)|this.Ha[a&this.He].yc(0)<<8};k.Td=function(a,b){this.Ha[(a&this.De)>>this.Eb].Mc(a&this.pb,b&255)};k.Sa=function(a,b){var c=a&this.pb,d=(a&this.De)>>this.Eb;this.A-=this.B.Rj;c!=this.pb?this.Ha[d].xm(c,b&65535):(this.Ha[d++].Mc(c,b&255),this.Ha[d&this.He].Mc(0,b>>8&255))};k.Ym=function(a,b){this.Og=a;this.ja=a.Hc(this.Gg=b,0);return this.ba&1?0:this.wb(this.ja)};
k.Zm=function(a,b){this.Og=a;this.ja=a.Hc(this.Gg=b,1);return this.ba&1?0:this.qa(this.ja)};k.eo=function(a,b){this.Og=a;this.Na=this.ja=a.Hc(this.Gg=b,0);return this.ba&1?0:this.wb(this.ja)};k.fo=function(a,b){this.Og=a;this.Na=this.ja=a.Hc(this.Gg=b,1);return this.ba&1?0:this.qa(this.ja)};k.zp=function(a){this.ba&2||this.Td(this.Og.Zb(this.Gg,0),a)};k.Ap=function(a){this.ba&2||this.Sa(this.Og.Zb(this.Gg,1),a)};k.fa=function(){var a=this.wb(this.Ea);this.Ea=this.va.Da+(this.ua=this.ua+1&65535);return a};
k.M=function(){var a=this.wb(this.Ea)<<24>>24;this.Ea=this.va.Da+(this.ua=this.ua+1&65535);return a&65535};k.L=function(){var a=this.qa(this.Ea);this.Ea=this.va.Da+(this.ua=this.ua+2&65535);return a};k.La=function(){var a=this.Y;this.Y=this.Y+2&65535;return this.qa(this.Ra.Hc(a,1))};function G(a,b){var c=a.Y=a.Y-2&65535;a.Sa(a.Ra.Zb(c,1),b)}
k.rh=function(a){if(a||!this.na.Fb||this.na.Jk)F(this,"AX",this.H),F(this,"BX",this.C),F(this,"CX",this.J),F(this,"DX",this.K),F(this,"SP",this.Y),F(this,"BP",this.I),F(this,"SI",this.G),F(this,"DI",this.F),F(this,"CS",this.va.ta),F(this,"DS",this.Cb.ta),F(this,"SS",this.Ra.ta),F(this,"ES",this.Wa.ta),F(this,"IP",this.ua),a=zc(this),F(this,"PS",a),F(this,"C",a&1?1:0,1),F(this,"P",a&4?1:0,1),F(this,"A",a&16?1:0,1),F(this,"Z",a&64?1:0,1),F(this,"S",a&128?1:0,1),F(this,"T",a&256?1:0,1),F(this,"I",a&
512?1:0,1),F(this,"D",a&1024?1:0,1),F(this,"V",a&2048?1:0,1);if(a=this.xa.speed)a.textContent=this.na.Fb&&this.da.sd?this.da.sd.toFixed(2)+"Mhz":"Stopped"};
k.Mf=function(a){this.na.ig=!0;var b=this.na.Hk=this.ka&&Sd(this.ka),c=this.na.Ni||!a;this.na.Ni=!1;this.Uc=this.A=a;this.oa&&!a&&cc(this.oa);a||this.wa(Td)||(this.ba|=4);do{var d=this.ba&240;if(d)this.Ca|=d;else if(this.Hg=this.Ea,this.ja=this.Na=-1,this.D=this.Cb,this.N=this.Ra,this.Ca=this.ba&256,this.xb){a:{if(!(this.ba&4))if(this.xb&1&&this.Ba&512){if(d=Ud(this.oa),-1<=d&&(this.xb&=-2,0<=d)){this.xb&=-5;Vd.call(this,d,null,11);d=!0;break a}}else if(this.xb&2){this.xb&=-3;Vd.call(this,1,null,
11);d=!0;break a}if(d=this.xb&8){for(var d=this.oa,e=!1,f=0;f<d.nb;f++)for(var g=d.nb[f],h=0;h<g.Sb.length;h++){var n=g.Sb[h];n.Od||(Wd(d,n),n.Od||(e=!0))}d=!e}d&&(this.xb&=-9);d=!1}if(d&&!a){this.ba=0;break}if(this.xb&4){this.ba=this.A=0;break}}if(b){if(Xd(this.ka,this.Ea,c)){this.Jb();break}c=!1}this.ba=0;this.$a[this.fa()].call(this)}while(0<this.A);return this.na.ig?this.Uc-this.A:void 0===this.na.ig?0:-1};
Ka(function(){for(var a=A(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ec(d);bb(d,c)}});function Yd(a,b){this.ra=a^b;this.ea=256;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return(this.Z=this.la=a+b)&255}function Zd(a,b){this.ea=256;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return(this.Z=this.la=this.ra=a|b)&255}
function $d(a,b){this.ra=a^b;this.Z=this.la=a+b+(this.Z&this.ea?1:0);this.ea=256;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return this.Z&255}function ae(a,b){this.ra=a^b;this.Z=this.la=a-b-(this.Z&this.ea?1:0);this.ea=256;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return this.Z&255}function be(a,b){this.ea=256;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return(this.Z=this.la=this.ra=a&b)&255}
function ce(a,b){this.ra=a^b;this.ea=256;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return(this.Z=this.la=a-b)&255}function de(a,b){this.ea=256;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return(this.Z=this.la=this.ra=a^b)&255}function ee(a,b){this.ra=a^b;this.ea=256;this.Z=this.la=a-b;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.kj:this.B.Gb;this.ba|=2;return a}
function fe(a,b){this.ra=a^b;this.ea=65536;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return(this.Z=this.la=a+b)&65535}function ge(a,b){this.ea=65536;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return(this.Z=this.la=this.ra=a|b)&65535}function he(a,b){this.ra=a^b;this.Z=this.la=a+b+(this.Z&this.ea?1:0);this.ea=65536;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return this.Z&65535}
function ie(a,b){this.ra=a^b;this.Z=this.la=a-b-(this.Z&this.ea?1:0);this.ea=65536;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return this.Z&65535}function je(a,b){this.ea=65536;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return(this.Z=this.la=this.ra=a&b)&65535}function ke(a,b){this.ra=a^b;this.ea=65536;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return(this.Z=this.la=a-b)&65535}
function le(a,b){this.ea=65536;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.Gb:this.B.oc;return(this.Z=this.la=this.ra=a^b)&65535}function me(a,b){this.ra=a^b;this.ea=65536;this.Z=this.la=a-b;this.A-=0>this.Na?0>this.ja?this.B.ac:this.B.kj:this.B.Gb;this.ba|=2;return a}function ne(a,b){this.Z=this.Z&this.ea-1|(a&b?this.ea:0);(a^a>>1)&b>>1?Rd(this):Kd(this)}function oe(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;ne.call(this,d,256)}return c}
function pe(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;ne.call(this,d,65536)}return c}function qe(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);ne.call(this,d,256)}return c}function re(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);ne.call(this,d,65536)}return c}
function se(a,b){var c=a;if(b){var d;(d=(b&this.Hf)%9)?(d=a<<d|(this.Z&this.ea?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.Z&this.ea?1:0)<<8;ne.call(this,d,256)}return c}function te(a,b){var c=a;if(b){var d;(d=(b&this.Hf)%17)?(d=a<<d|(this.Z&this.ea?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.Z&this.ea?1:0)<<16;ne.call(this,d,65536)}return c}function ue(a,b){var c=a;b&&(c=(b&this.Hf)%9,c=a>>c|(this.Z&this.ea?1:0)<<8-c|a<<9-c,ne.call(this,c,256),c&=255);return c}
function ve(a,b){var c=a;b&&(c=(b&this.Hf)%17,c=a>>c|(this.Z&this.ea?1:0)<<16-c|a<<17-c,ne.call(this,c,65536),c&=65535);return c}function we(a,b){var c=a;b&&(c=8<b?this.Z=this.la=0:(this.Z=this.la=a<<b)&255,this.ra=0,this.ea=256);return c}function xe(a,b){var c=a;b&&(c=16<b?this.Z=this.la=0:(this.Z=this.la=a<<b)&65535,this.ra=0,this.ea=65536);return c}
function ye(a,b){if(b){var c=8<b?0:a>>b-1;this.Z=this.la=c>>1;this.Z=c&1?this.Z|256:this.Z&-257;this.ra=a^this.Z;this.ea=256;a=this.Z}return a&255}function ze(a,b){if(b){var c=16<b?0:a>>b-1;this.Z=this.la=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.ra=a^this.Z;this.ea=65536;a=this.Z}return a&65535}function Ae(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.Z=this.la=c>>1;this.Z=c&1?this.Z|256:this.Z&-257;this.ra=a^this.Z;this.ea=256;a=this.Z}return a&255}
function Be(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.Z=this.la=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.ra=a^this.Z;this.ea=65536;a=this.Z}return a&65535}function Ce(){this.A-=0>this.ja?2:this.B.cm;return 1}function De(){var a=this.J&this.Hf;this.A-=(0>this.ja?this.B.Gj:this.B.Fj)+(a<<this.B.Hj);return a}function Ee(){var a=this.fa();this.A-=(0>this.ja?this.B.Gj:this.B.Fj)+(a<<this.B.Hj);return a}function Fe(){return null}function Ge(a){lc.call(this,13,0);return a}
function fd(a){Pc.call(this);return a}function I(a){J.call(this);return a}
var He=[Yd,Zd,$d,ae,be,ce,de,ee],Ie=[fe,ge,he,ie,je,ke,le,me],Je=[function(a,b){this.A-=0>this.Na?this.B.pc:this.B.Wl;return b},Ge,Ge,Ge,Ge,Ge,Ge,Ge],Ke=[function(a,b){this.A-=0>this.Na?this.B.Ol:this.B.Ml;return b},I,I,I,I,I,I,I],Le=[oe,qe,se,ue,we,ye,I,Ae],Me=[pe,re,te,ve,xe,ze,I,Be],Oe=[function(a,b){b=this.fa();this.Z=this.la=this.ra=a&b;this.ea=256;this.A-=0>this.ja?this.B.Mj:this.B.Lj;this.ba|=2;return a},I,function(a){this.A-=0>this.ja?this.B.Bg:this.B.Ag;return a^255},function(a,b){b=0;this.ra=
a^b;this.ea=256;this.A-=0>this.ja?this.B.Bg:this.B.Ag;return(this.Z=this.la=b-a)&255},function(a){this.H=this.Rb=(this.Z=(this.H&255)*a)&65535;this.ra=this.la=this.Z;this.ea=256;this.H&65280?(Ld(this),Rd(this)):(Gd(this),Kd(this));this.A-=0>this.ja?this.B.Sl:this.B.Rl;this.ba|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.Rb=b&65535;this.Z=this.ra=this.la=b;this.ea=256;127<b||-128>b?(Ld(this),Rd(this)):(Gd(this),Kd(this));this.A-=0>this.ja?this.B.xl:this.B.wl;this.ba|=2;return a},
function(a){if(!a)return Ne.call(this),a;var b=this.H/a;if(255<b)return Ne.call(this),a;this.Rb=this.H=b&255|(this.H%a&255)<<8;this.la=this.ra=this.Z=b|256;this.ea=256;this.A-=0>this.ja?this.B.pl:this.B.ol;this.ba|=2;return a},function(a){if(!a)return Ne.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Ne.call(this),a;this.Rb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.la=this.ra=this.Z=b|256;this.ea=256;this.A-=0>this.ja?this.B.tl:this.B.sl;this.ba|=2;return a}],
Pe=[function(a,b){b=this.L();this.Z=this.la=this.ra=a&b;this.ea=65536;this.A-=0>this.ja?this.B.Mj:this.B.Lj;this.ba|=2;return a},I,function(a){this.A-=0>this.ja?this.B.Bg:this.B.Ag;return a^65535},function(a,b){b=0;this.ra=a^b;this.ea=65536;this.A-=0>this.ja?this.B.Bg:this.B.Ag;return(this.Z=this.la=b-a)&65535},function(a){this.Rb=this.H=(this.Z=this.H*a)&65535;this.Kg=this.K=this.Z>>16&65535;this.ra=this.la=this.Z;this.ea=65536;this.K?(Ld(this),Rd(this)):(Gd(this),Kd(this));this.A-=0>this.ja?this.B.Ul:
this.B.Tl;this.ba|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.Rb=b&65535;this.K=this.Kg=b>>16&65535;this.Z=this.ra=this.la=b;this.ea=65536;32767<b||-32768>b?(Ld(this),Rd(this)):(Gd(this),Kd(this));this.A-=0>this.ja?this.B.zl:this.B.yl;this.ba|=2;return a},function(a,b){if(!a)return Ne.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Ne.call(this),a;this.Rb=this.H=c&65535;this.Kg=this.K=b%a&65535;this.la=this.ra=this.Z=c|65536;this.ea=65536;this.A-=
0>this.ja?this.B.rl:this.B.ql;this.ba|=2;return a},function(a,b){if(!a)return Ne.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Ne.call(this),a;this.Rb=this.H=d&65535;this.Kg=this.K=b%c&65535;this.la=this.ra=this.Z=d|65536;this.ea=65536;this.A-=0>this.ja?this.B.vl:this.B.ul;this.ba|=2;return a}],Lc=[function(a){this.ra=a;a=(this.la=a+1)&255;this.Z=a|(this.Z&this.ea?1:0)<<8;this.ea=256;this.A-=0>this.ja?this.B.zg:this.B.yg;return a},function(a){this.ra=
a;a=(this.la=a-1)&255;this.Z=a|(this.Z&this.ea?1:0)<<8;this.ea=256;this.A-=0>this.ja?this.B.zg:this.B.yg;return a},I,I,I,I,I,I],Mc=[function(a){this.ra=a;a=(this.la=a+1)&65535;this.Z=a|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=0>this.ja?this.B.zg:this.B.yg;return a},function(a){this.ra=a;a=(this.la=a-1)&65535;this.Z=a|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=0>this.ja?this.B.zg:this.B.yg;return a},function(a){G(this,this.ua);H(this,a);this.A-=0>this.ja?this.B.nl:this.B.ml;this.ba|=2;return a},
function(a){if(0>this.ja)return I.call(this,a);Qe.call(this,a,this.qa(this.ja+2));this.A-=this.B.kl;this.ba|=2;return a},function(a){H(this,a);this.A-=0>this.ja?this.B.Il:this.B.Hl;this.ba|=2;return a},function(a){if(0>this.ja)return I.call(this,a);Bc(this,a,this.qa(this.ja+2));this.A-=this.B.Fl;this.ba|=2;return a},function(a){var b=a;this.ba&512&&(a=a-2&65535,80286>this.Ka&&(b=a));G(this,b);this.A-=0>this.ja?this.B.wc:this.B.Yl;this.ba|=2;return a},Ge],Re=[oe,qe,se,ue,we,ye,I,Ae],Se=[pe,re,te,ve,
xe,ze,I,Be];function Te(a,b){this.A-=0>this.Na?0>this.ja?this.B.Ql:this.B.Pl:this.B.Nl;return b}function Ue(){return Te.call(this,0,this.Rb)}function Ve(a,b){this.Z=this.la=this.ra=a&b;this.ea=256;this.A-=0>this.Na?0>this.ja?this.B.Nj:this.B.Dg:this.B.Dg;this.ba|=2;return a}function We(a,b){this.Z=this.la=this.ra=a&b;this.ea=65536;this.A-=0>this.Na?0>this.ja?this.B.Nj:this.B.Dg:this.B.Dg;this.ba|=2;return a}
function Xe(a,b){var c=(b<<16>>16)*(this.fa()<<24>>24);this.Z=this.ra=this.la=c;this.ea=256;32767<c||-32768>c?(Ld(this),Rd(this)):(Gd(this),Kd(this));this.A-=0>this.ja?21:24;return c&65535}function Ye(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.Z=this.ra=this.la=c;this.ea=65536;32767<c||-32768>c?(Ld(this),Rd(this)):(Gd(this),Kd(this));this.A-=0>this.ja?21:24;return c&65535}function Ze(a){return a}function $e(a){if(0>this.ja)return J.call(this),a;this.A-=this.B.Jl;return this.ja}
function af(a,b){if(0>this.ja)return J.call(this),a;wd(this,this.qa(this.ja+2));this.A-=this.B.oj;return b}function bf(a,b){if(0>this.ja)return J.call(this),a;yd(this,this.qa(this.ja+2));this.A-=this.B.oj;return b}function cf(a){if(0>this.ja)return Pc.call(this),a;var b=a<<16>>16,c=this.qa(this.ja)<<16>>16,d=this.qa(this.ja+2)<<16>>16;this.A-=this.B.gl;if(b<c||b>d)H(this,this.Hg-this.va.Da),Vd.call(this,5,null,0);this.ba|=2;return a}
function df(a,b){this.A-=10+(0>this.ja?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Nd(this),a;Id(this);return a}function hf(a,b){this.A-=14+(0>this.ja?0:2);if(null!=this.Vb.load(b,!0)&&this.Vb.Jc>=this.va.Ta&&this.Vb.Jc>=(b&3))return Nd(this),this.Vb.Db&65280;Id(this);return a}function jf(a,b){this.A-=14+(0>this.ja?0:2);if(b&65528&&null!=this.Vb.load(b,!0)&&(7168==(this.Vb.Db&7168)||this.Vb.Jc>=this.va.Ta)&&this.Vb.Jc>=(b&3))return Nd(this),this.Vb.nc;Id(this);return a}
function kf(a,b){if(0>this.ja){switch(this.fh&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Pj}else this.Na=this.ja,this.R(a),this.A-=this.B.Oj;return b}
function lf(a,b){if(0>this.ja){switch(this.fh&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.Y=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Pj}else this.Na=this.ja,this.S(a),this.A-=this.B.Oj;return b}function mf(a){a|=this.fc&1;this.fc=this.fc&65520|a&-65521;this.fc&1&&kd(this,!0)}function Qe(a,b){var c=this.va.ta,d=this.ua;null!=Bc(this,a,b,!0)&&(G(this,c),G(this,d))}
function Vd(a,b,c){this.A-=this.B.Bl+c;this.va.Gi=!0;c=zc(this);var d=this.va.ta,e=this.ua;a=this.va.Yk(a);null!=a&&(this.Ea=a+this.ua,G(this,c),G(this,d),G(this,e),null!=b&&G(this,b),this.Mh=-1)}function Ne(){H(this,this.Hg-this.va.Da);Vd.call(this,0,null,2)}
function lc(a,b,c){if(this.na.ig){var d=!1;if(80186<=this.Ka)if(0>this.Mh)H(this,this.Hg-this.va.Da),d=!0;else if(8!=this.Mh)b=0,a=8,d=!0;else{nf.call(this,-1,0,c);jd(this);return}nf.call(this,a,b,c)&&(d=!1);d&&Vd.call(this,this.Mh=a,b,0);this.ba&=-4}else this.jb("Fault "+q(a)+" blocked by Debugger",of),H(this,this.Hg-this.va.Da)}
function nf(a,b,c){var d=pf,e=rb(this.sa,this.Ea);204==e&&(c=!1,d|=Ob);983040<=this.Ea&&1048575>=this.Ea&&(c=!1);this.wa(d|qf)&&(c=!0);if(this.wa(d)||c)a=(c?"\n":"")+"Fault "+q(a)+(null!=b?" ("+u(b)+")":"")+" on opcode 0x"+q(e)+" at "+fa(this.ua,this.va.ta)+" (%"+p(this.Ea,6)+")",b=this.na.Fb,this.jb(a)?c&&(c=b,this.ka.Jb()):(this.Ia(a),this.Jb());return c}function rf(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}
0,0,1,1,0,1,0,0,1];function fc(a,b,c,d){this.T=a;this.ka=a.ka;this.id=b;this.Kg=c||"";this.Ga=this.ta=0;this.oc=65535;this.nb=0;this.Dd=-4;this.nc=this.bb=0;this.pk=this.id==gc?Array(32):[];this.Ei=null;this.Ah=!1;hc(this,d)}var gc=1;function ic(a){this.ta=a;return this.Ga=a<<4}function jc(a,b){var c,d,e=this.T;a&4?(c=e.Xc.Ga,d=c+e.Xc.oc):(c=e.Ec,d=e.Be);if(!b||c){c+=a&65528;if(c+7<=d)return b||(e.A-=15),kc(this,c,a,b);b||lc.call(e,13,a)}return-4}
function nc(a){var b=this.T;a=b.Qc+(a<<2);b.wa=b.ra(a);this.ta=b.ra(a+2);b.Ba&=-769;return this.Ga=this.ta<<4}function oc(a){var b=this.T;a<<=3;var c=b.Qc+a;if(c+7<=b.Ce)return kc(this,c,a);lc.call(b,13,a|3,!0);return-4}function qc(a){return this.Ga+a}function rc(a){return this.Ga+a}function sc(a,b,c){return a+b<=this.oc?this.Ga+a:tc.call(this,0,0,c)}function uc(a,b,c){return a+b>this.oc?this.Ga+a:tc.call(this,0,0,c)}function tc(a,b,c){c||lc.call(this.T,13,0);return-4}
function vc(a,b,c){return a+b<=this.oc?this.Ga+a:wc.call(this,0,0,c)}function xc(a,b,c){return a+b>this.oc?this.Ga+a:wc.call(this,0,0,c)}function wc(a,b,c){c||lc.call(this.T,13,0);return-4}
function yc(a,b){var c=this.T,d=c.fb.Ga,e=this.bb,f=c.fb.ta;if(!b){if(768!=c.fb.type)return lc.call(c,10,a,!0),!1;c.Sa(c.fb.Dd+4,c.fb.nb&-769|256)}if(-4==c.fb.load(a))return!1;var g=c.fb.Ga;if(b){if(768==c.fb.type)return lc.call(c,13,a,!0),!1;c.Sa(c.fb.Dd+4,c.fb.nb|=768);c.fb.type=768}c.Sa(d+14,c.wa);c.Sa(d+16,zc(c));c.Sa(d+18,c.H);c.Sa(d+20,c.J);c.Sa(d+22,c.K);c.Sa(d+24,c.C);c.Sa(d+26,c.Y);c.Sa(d+28,c.I);c.Sa(d+30,c.G);c.Sa(d+32,c.F);c.Sa(d+34,c.La.ta);c.Sa(d+36,c.ua.ta);c.Sa(d+38,c.Ya.ta);c.Sa(d+
40,c.eb.ta);var d=38,h=26;Ac(c,c.ra(g+16)|(b?16384:0));c.H=c.ra(g+18);c.J=c.ra(g+20);c.K=c.ra(g+22);c.C=c.ra(g+24);c.I=c.ra(g+28);c.G=c.ra(g+30);c.F=c.ra(g+32);c.La.load(c.ra(g+34));c.eb.load(c.ra(g+40));Bc(c,c.ra(g+14),c.ra(g+36));this.bb<e&&(h=(this.bb<<2)+2,d=h+2);c.Y=c.ra(g+h);c.Ya.load(c.ra(g+d));c.Xc.load(c.ra(g+42));b&&c.Sa(g+0,f);c.fc|=8;return!0}function Cc(a,b,c){var d=a.T,e=d.ra(b+2),f=d.ra(b+0)|(e&255)<<16,d=d.ra(b+4);a.ta=c;a.Ga=f;a.oc=d;a.nb=e&65280;a.Dd=b;hc(a)}
function kc(a,b,c,d){for(var e=a.T,f=e.ra(b+0),g=e.ra(b+4),h=g&7936,n=e.ra(b+2)|(g&255)<<16,m=c&65528;;){var s;if(a.id==gc){a.Ah=!1;var m=a.Ei,r,t,w=c&3,u=(g&24576)>>13;if(6144<=h){w=c&3;if(w>a.bb){if(!1!==m&&!(u==a.bb||g&1024&&u<=a.bb)){n=-4;break}r=e.Na();e.Ya.load(e.Na());e.Y=r;a.Ah=!0}r=!1}else if(1024==h)r=!0,t=-1,s=c,w<a.bb&&(w=a.bb);else if(1536==h)r=!0,t=-17153,s=c|1;else if(1792==h)r=!0,t=-16641,s=c|1;else if(1280==h){if(!yc.call(a,n&65535,!0)){n=-4;break}return a.Ga}if(r){b=n&65535;if(w<=
u){d=a.bb;if(-4==a.load(b,!0)){n=-4;break}e.wa=f;if(a.bb<d){if(!0!==m){n=-4;break}r=e.Y;f=0;for(g&=31;g--;)a.pk[f++]=e.ra(e.Ya.Ic(r,1)),r+=2;g=e.fb.Ga;d=(a.bb<<2)+2;m=d+2;s=e.Y;b=e.Ya.ta;e.Y=e.ra(g+d);e.Ya.load(e.ra(g+m));G(e,b);for(G(e,s);f;)G(e,a.pk[--f]);a.Ah=!0}e.Ba&=t;return a.Ga}d||lc.call(e,13,s,!0);n=-4;break}else if(!1!==r){d||lc.call(e,13,c,!0);n=-4;break}}else if(2==a.id){if(m&&(4096>h||2048==(h&2560))){d||lc.call(e,13,c,!!g);n=-4;break}}else if(3==a.id){if(!m||4096>h||2048==(h&2560)){d||
lc.call(e,13,c,!0);n=-4;break}}else if(4==a.id){if(!m||256!=h&&768!=h){d||lc.call(e,10,c,!0);n=-4;break}}else if(6==a.id&&!(g&4096)&&768<h){n=-4;break}a.ta=c;a.Ga=n;a.oc=f;a.nb=g;a.type=h;a.Dd=b;hc(a);break}return n}fc.prototype.save=function(){return[this.ta,this.Ga,this.oc,this.nb,this.id,this.Kg,this.bb,this.nc,this.Dd]};
fc.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ta=a[0],this.Ga=a[1],this.oc=a[2],this.nb=a[3],this.id=a[4],this.Kg=a[5],this.bb=a[6],this.nc=a[7],this.Dd=a[8])};
function hc(a,b){void 0===b&&(b=!!(a.T.fc&1));if(b){a.load=jc;a.Vk=oc;a.Ic=sc;a.Zb=vc;if(a.nb&4096){6144==(a.nb&6656)&&(a.Zb=tc);if(a.nb&2048||!(a.nb&512))a.Zb=wc;1024==(a.nb&3072)&&(a.Ic==sc&&(a.Ic=uc),a.Zb==vc&&(a.Zb=xc))}a.bb=a.ta&3;a.nc=(a.nb&24576)>>13}else a.load=ic,a.Vk=nc,a.Ic=qc,a.Zb=rc,a.oc=65535,a.bb=a.nc=0,a.Dd=-4}
function Dc(a){this.Ka=a.model||8088;var b=0;switch(this.Ka){default:case 8088:b=4772727;break;case 80286:b=6E6}Nb.call(this,a,b);this.ik=61442;this.Rg=1792;this.Qg=4;this.If=255;this.B=80286<=this.Ka?Ec:Fc;this.Za=Gc.slice();this.Bm=Kc.slice();this.Cm=Lc.slice();this.lk=Mc;80186<=this.Ka&&(this.If=31,this.Za[15]=Nc,this.Za[96]=Pc,this.Za[97]=Qc,this.Za[98]=Rc,this.Za[99]=Nc,this.Za[100]=Nc,this.Za[101]=Nc,this.Za[102]=Nc,this.Za[103]=Nc,this.Za[104]=Sc,this.Za[105]=Tc,this.Za[106]=Uc,this.Za[107]=
Vc,this.Za[108]=Wc,this.Za[109]=Xc,this.Za[110]=Yc,this.Za[111]=Zc,this.Za[192]=$c,this.Za[193]=ad,this.Za[200]=bd,this.Za[201]=cd,this.Za[241]=dd,this.Bm[7]=ed,this.Cm[7]=ed,80286<=this.Ka&&(this.ik=2,this.Rg|=28672,this.Qg=0,this.Za[15]=fd,this.Za[99]=gd,this.Za[84]=hd));this.Tg=[];this.Ug=[];this.Uc=this.lh=0;this.na.ig=this.na.Ek=!1;this.Ha=[];this.De=this.Eb=this.ob=this.He=0;this.U=this.Vm;this.V=this.Wm;this.O=this.ao;this.P=this.bo;this.R=this.yp;this.S=this.zp;id(this)}Xa(Nb,Dc);
var Fc={Pj:4,ca:5,Aa:6,ha:7,ia:8,Q:9,W:11,X:12,Ve:4,bl:60,cl:83,ac:3,Gb:9,pc:16,Mh:1,gl:19,il:28,kl:16,jl:21,hl:37,el:2,ij:9,fl:5,dl:33,kj:10,jj:8,xg:3,wg:15,yl:51,zl:1,Al:2,Bl:4,xl:32,lj:15,Dl:15,bc:16,cc:4,Fl:11,El:18,Cl:24,Pb:4,Gl:2,mj:16,Hl:17,rj:18,Il:19,qj:5,sj:6,Nl:2,Ml:8,Kl:9,Ll:10,Jl:10,tj:10,uj:10,ml:80,ol:144,ll:86,nl:154,ql:101,sl:165,pl:107,rl:171,Pl:70,Rl:113,Ol:76,Ql:124,ul:80,wl:128,tl:86,vl:134,zg:3,yg:16,zj:10,yj:8,Sl:51,qc:8,Tl:17,Ul:36,wc:11,Vl:16,Ag:10,re:2,fj:18,gj:7,hj:15,nj:12,
oj:7,pj:11,vj:18,wj:7,xj:15,Aj:15,Bj:7,Cj:13,Gj:11,Hj:7,Ij:8,Wl:8,Zl:12,Xl:18,Yl:17,$l:15,Ej:8,Dj:20,Fj:2,Lj:3,Bg:9,Kj:5,Jj:11,Nj:4,Mj:17,am:11},Ec={Pj:0,ca:0,Aa:0,ha:0,ia:0,Q:0,W:1,X:1,Ve:3,bl:14,cl:16,ac:2,Gb:7,pc:7,Mh:0,gl:7,il:13,kl:7,jl:11,hl:16,el:3,ij:6,fl:2,dl:13,kj:5,jj:5,xg:2,wg:7,yl:23,zl:0,Al:1,Bl:3,xl:17,lj:7,Dl:11,bc:7,cc:3,Fl:7,El:11,Cl:15,Pb:2,Gl:3,mj:7,Hl:8,rj:8,Il:8,qj:4,sj:4,Nl:2,Ml:3,Kl:5,Ll:2,Jl:3,tj:5,uj:3,ml:14,ol:22,ll:17,nl:25,ql:17,sl:25,pl:20,rl:28,Pl:13,Rl:21,Ol:16,Ql:24,
ul:13,wl:21,tl:16,vl:24,zg:2,yg:7,zj:5,yj:5,Sl:19,qc:5,Tl:5,Ul:17,wc:3,Vl:5,Ag:3,re:0,fj:8,gj:5,hj:9,nj:5,oj:5,pj:4,vj:5,wj:5,xj:4,Aj:7,Bj:5,Cj:8,Gj:3,Hj:4,Ij:3,Wl:11,Zl:11,Xl:15,Yl:15,$l:7,Ej:5,Dj:8,Fj:0,Lj:2,Bg:6,Kj:3,Jj:6,Nj:3,Mj:5,am:5};k=Dc.prototype;k.Ti=function(a,b,c,d,e){this.Ha=a;this.De=b;this.Eb=c;this.ob=d;this.He=e};k.reset=function(){this.na.Fb&&this.Jb();id(this);Qb(this);this.na.fd=!1};
function id(a){a.H=0;a.C=0;a.J=0;a.K=0;a.Y=0;a.I=0;a.G=0;a.F=0;a.fc=65520;a.Qc=0;a.Ce=1023;a.Gf=0;a.Lh=-1;a.ua=new fc(a,gc,"CS");a.eb=new fc(a,2,"DS");a.La=new fc(a,2,"ES");a.Ya=new fc(a,3,"SS");a.qm=new fc(a,0,"NULL");Bc(a,0,65535);80286<=a.Ka&&(a.Ec=0,a.Be=65535,a.Xc=new fc(a,5,"LDT",!0),a.fb=new fc(a,4,"TSS",!0),a.Ub=new fc(a,6,"VER",!0),Bc(a,65520,61440),a.ua.Ga=16711680);Ac(a,0);jd(a);a.zb=0;a.Qb=a.Ig=-1;a.dh=0;a.ja=a.Oa=-4;a.D=a.eb;a.N=a.Ya;a.ba=a.Da=0}
k.Ok=function(){var a=this.H+this.C+this.J+this.K+this.Y+this.I+this.G+this.F|0;return a=a+this.wa+this.ua.ta+this.eb.ta+this.Ya.ta+this.La.ta+zc(this)|0};function kd(a,b,c,d){void 0!==d&&(void 0===a.Tg[b]&&(a.Tg[b]=[]),a.Tg[b].push([c,d]))}function ld(a,b){var c=a.Tg[b];if(void 0!==c)for(var d=0;d<c.length;d++)if(!c[d][1].call(c[d][0],a.Ea))return!1;a.na.Ek&&a.va(md)&&nd(a.ka,b,a.Ea)&&od(a,a.Ea,function(a,c){return function(d){pd(a.ka,b,d,D(a)-c)}}(a,D(a)));return!0}
function od(a,b,c){void 0!==c&&(null==a.Ug[b]&&a.lh++,a.Ug[b]=c)}function qd(a,b){var c=a.Ug[b];null!=c&&(c(--a.lh),delete a.Ug[b])}function jd(a,b){void 0===b&&(b=!!(a.fc&1));b||a.qb("returning to real-mode");a.lk=b?rd:Mc;hc(a.ua,b);hc(a.eb,b);hc(a.Ya,b);hc(a.La,b)}
k.save=function(){var a=new sd(this);a.set(0,[this.H,this.C,this.J,this.K,this.Y,this.I,this.G,this.F,this.Gf]);a.set(1,[this.wa,this.ua.save(),this.eb.save(),this.Ya.save(),this.La.save(),null!=this.Ec?[this.fc,this.Ec,this.Be,this.Qc,this.Ce,this.Xc.save(),this.fb.save(),this.Gf]:null,zc(this)]);a.set(2,[this.D.Kg,this.N.Kg,this.ba,this.Da,this.zb,this.ja,this.Oa]);a.set(3,[0,this.Xe,this.da.Pd]);a.set(4,vb(this.sa));return a.data()};
k.restore=function(a){var b;b=a[0];this.H=b[0];this.C=b[1];this.J=b[2];this.K=b[3];this.Y=b[4];this.I=b[5];this.G=b[6];this.F=b[7];this.Gf=b[8]||0;b=a[1];this.ua.restore(b[1]);this.eb.restore(b[2]);this.Ya.restore(b[3]);this.La.restore(b[4]);var c=b[5];c&&c.length&&(this.fc=c[0],this.Ec=c[1],this.Be=c[2],this.Qc=c[3],this.Ce=c[4],this.Xc.restore(c[5]),this.fb.restore(c[6]),this.Gf=c[7],jd(this));Ac(this,b[6]);H(this,b[0]);b=a[2];this.D=td(this,b[0]);this.N=td(this,b[1]);this.ba=b[2];this.Da=b[3];
this.zb=b[4];this.ja=b[5];this.Oa=b[6];b=a[3];this.Xe=b[1];Yb(this,b[2]);a:{b=this.sa;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.vk){for(var f=0,g=Array(b.vk),h=0;h<e.length-1;)for(var n=e[h++],m=e[h++];n--;)g[f++]=m;e=g}f=b.Ha[d];if(!f||!f.restore(e)){x("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&nb(b,a[c]);b=!0}return b};
function td(a,b){switch(b){case "CS":return a.ua;case "DS":return a.eb;case "SS":return a.Ya;case "ES":return a.La;case "NULL":return a.qm;default:return[0,b,0,0,""]}}function ud(a,b){a.Ea=a.ua.load(b)+a.wa;a.ba|=a.Qg}function vd(a,b){a.eb.load(b);a.ba|=a.Qg}function wd(a,b){a.Ya.load(b);a.ba|=4}function xd(a,b){a.La.load(b);a.ba|=a.Qg}function H(a,b){a.Ea=a.ua.Ga+(a.wa=b&65535)}function Bc(a,b,c,d){a.ua.Ei=d;a.wa=b;b=a.ua.load(c);return-4!=b?(a.Ea=b+a.wa,a.ua.Ah):null}
function yd(a,b){a.Ea=a.ua.Ga+(a.wa=a.wa+b&65535)}function zd(a){return a.aa&a.ea?1:0}function Ad(a){return ec[a.la&255]?4:0}function Bd(a){return(a.la^a.qa)&16?16:0}function Cd(a){return a.aa&a.ea-1?0:64}function Dd(a){return a.la&a.ea>>1?128:0}function Ed(a){return(a.la^a.qa^a.la>>1)&a.ea>>1?2048:0}function Fd(a){a.aa&=~a.ea}function Gd(a){a.qa=a.la&16|a.qa&-17}function Hd(a){a.aa|=a.ea-1}function Id(a){Dd(a)&&(a.la^=a.ea>>1|a.ea>>2,a.qa^=32896)}
function Jd(a){a.la&=~a.ea;a.qa=a.la&32896|a.qa&-32897}function Kd(a){a.aa|=a.ea}function Ld(a){a.qa=~(a.la&16)&16|a.qa&-17}function Md(a){a.aa&=~(a.ea-1)}function Nd(a){Dd(a)||(a.la^=a.ea>>1|a.ea>>2,a.qa^=32896)}function Od(a){a.la|=a.ea;a.qa=a.la&32896|a.qa&-32897}function zc(a){return a.Ba&-2262|zd(a)|Ad(a)|Bd(a)|Cd(a)|Dd(a)|Ed(a)}
function Ac(a,b,c){a.ea=256;a.aa=a.la=a.qa=0;b&1&&Kd(a);b&4||(a.la|=1);b&16&&(a.qa|=16);b&64||Hd(a);b&128&&Nd(a);b&2048&&Od(a);a.fc&1||(b&=-61441);void 0===c&&(c=a.ua.bb);c?b=b&-12289|a.Ba&12288:a.Gf=(b&12288)>>12;c>a.Gf&&(b=b&-513|a.Ba&512);a.Ba=a.Ba&~a.Rg|b&a.Rg|a.ik;a.Ba&256&&(a.zb|=2,a.ba|=4)}
k.Ib=function(a,b,c){var d=!1;switch(b){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 "V":this.xa[b]=c;d=!0;break;default:d=Nb.prototype.Ib.call(this,a,b,c)}return d};k.yb=function(a){return this.Ha[(a&this.De)>>this.Eb].yc(a&this.ob)};
k.ra=function(a){var b=a&this.ob;a=(a&this.De)>>this.Eb;this.A-=this.B.Pj;return b!=this.ob?this.Ha[a].gm(b):this.Ha[a++].yc(b)|this.Ha[a&this.He].yc(0)<<8};k.Sd=function(a,b){this.Ha[(a&this.De)>>this.Eb].Mc(a&this.ob,b&255)};k.Sa=function(a,b){var c=a&this.ob,d=(a&this.De)>>this.Eb;this.A-=this.B.Pj;c!=this.ob?this.Ha[d].um(c,b&65535):(this.Ha[d++].Mc(c,b&255),this.Ha[d&this.He].Mc(0,b>>8&255))};k.Vm=function(a,b){this.Mg=a;this.ja=a.Ic(this.Eg=b,0);return this.ba&1?0:this.yb(this.ja)};
k.Wm=function(a,b){this.Mg=a;this.ja=a.Ic(this.Eg=b,1);return this.ba&1?0:this.ra(this.ja)};k.ao=function(a,b){this.Mg=a;this.Oa=this.ja=a.Ic(this.Eg=b,0);return this.ba&1?0:this.yb(this.ja)};k.bo=function(a,b){this.Mg=a;this.Oa=this.ja=a.Ic(this.Eg=b,1);return this.ba&1?0:this.ra(this.ja)};k.yp=function(a){this.ba&2||this.Sd(this.Mg.Zb(this.Eg,0),a)};k.zp=function(a){this.ba&2||this.Sa(this.Mg.Zb(this.Eg,1),a)};k.fa=function(){var a=this.yb(this.Ea);this.Ea=this.ua.Ga+(this.wa=this.wa+1&65535);return a};
k.M=function(){var a=this.yb(this.Ea)<<24>>24;this.Ea=this.ua.Ga+(this.wa=this.wa+1&65535);return a&65535};k.L=function(){var a=this.ra(this.Ea);this.Ea=this.ua.Ga+(this.wa=this.wa+2&65535);return a};k.Na=function(){var a=this.Y;this.Y=this.Y+2&65535;return this.ra(this.Ya.Ic(a,1))};function G(a,b){var c=a.Y=a.Y-2&65535;a.Sa(a.Ya.Zb(c,1),b)}
k.ph=function(a){if(a||!this.na.Fb||this.na.Gk)F(this,"AX",this.H),F(this,"BX",this.C),F(this,"CX",this.J),F(this,"DX",this.K),F(this,"SP",this.Y),F(this,"BP",this.I),F(this,"SI",this.G),F(this,"DI",this.F),F(this,"CS",this.ua.ta),F(this,"DS",this.eb.ta),F(this,"SS",this.Ya.ta),F(this,"ES",this.La.ta),F(this,"IP",this.wa),a=zc(this),F(this,"PS",a),F(this,"C",a&1?1:0,1),F(this,"P",a&4?1:0,1),F(this,"A",a&16?1:0,1),F(this,"Z",a&64?1:0,1),F(this,"S",a&128?1:0,1),F(this,"T",a&256?1:0,1),F(this,"I",a&
512?1:0,1),F(this,"D",a&1024?1:0,1),F(this,"V",a&2048?1:0,1);if(a=this.xa.speed)a.textContent=this.na.Fb&&this.da.td?this.da.td.toFixed(2)+"Mhz":"Stopped"};
k.Nf=function(a){this.na.ig=!0;var b=this.na.Ek=this.ka&&Pd(this.ka),c=this.na.Li||!a;this.na.Li=!1;this.Uc=this.A=a;this.pa&&!a&&cc(this.pa);a||this.va(Sd)||(this.ba|=4);do{var d=this.ba&240;if(d)this.Da|=d;else if(this.Fg=this.Ea,this.ja=this.Oa=-4,this.D=this.eb,this.N=this.Ya,this.Da=this.ba&256,this.zb){a:{if(!(this.ba&4))if(this.zb&1&&this.Ba&512){if(d=Td(this.pa),-1<=d&&(this.zb&=-2,0<=d)){this.zb&=-5;Ud.call(this,d,null,11);d=!0;break a}}else if(this.zb&2){this.zb&=-3;Ud.call(this,1,null,
11);d=!0;break a}if(d=this.zb&8){for(var d=this.pa,e=!1,f=0;f<d.sb;f++)for(var g=d.sb[f],h=0;h<g.Rb.length;h++){var n=g.Rb[h];n.Od||(Vd(d,n),n.Od||(e=!0))}d=!e}d&&(this.zb&=-9);d=!1}if(d&&!a){this.Z("interrupt dispatched");this.ba=0;break}if(this.zb&4){this.ba=this.A=0;break}}if(b){if(Wd(this.ka,this.Ea,c)){this.Jb();break}c=!1}this.ba=0;this.Za[this.fa()].call(this)}while(0<this.A);return this.na.ig?this.Uc-this.A:void 0===this.na.ig?0:-1};
Ka(function(){for(var a=A(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Dc(d);bb(d,c)}});function Xd(a,b){this.qa=a^b;this.ea=256;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return(this.aa=this.la=a+b)&255}function Yd(a,b){this.ea=256;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return(this.aa=this.la=this.qa=a|b)&255}
function Zd(a,b){this.qa=a^b;this.aa=this.la=a+b+(this.aa&this.ea?1:0);this.ea=256;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return this.aa&255}function $d(a,b){this.qa=a^b;this.aa=this.la=a-b-(this.aa&this.ea?1:0);this.ea=256;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return this.aa&255}function ae(a,b){this.ea=256;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return(this.aa=this.la=this.qa=a&b)&255}
function be(a,b){this.qa=a^b;this.ea=256;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return(this.aa=this.la=a-b)&255}function ce(a,b){this.ea=256;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return(this.aa=this.la=this.qa=a^b)&255}function de(a,b){this.qa=a^b;this.ea=256;this.aa=this.la=a-b;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.ij:this.B.Gb;this.ba|=2;return a}
function ee(a,b){this.qa=a^b;this.ea=65536;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return(this.aa=this.la=a+b)&65535}function fe(a,b){this.ea=65536;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return(this.aa=this.la=this.qa=a|b)&65535}function ge(a,b){this.qa=a^b;this.aa=this.la=a+b+(this.aa&this.ea?1:0);this.ea=65536;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return this.aa&65535}
function he(a,b){this.qa=a^b;this.aa=this.la=a-b-(this.aa&this.ea?1:0);this.ea=65536;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return this.aa&65535}function ie(a,b){this.ea=65536;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return(this.aa=this.la=this.qa=a&b)&65535}function je(a,b){this.qa=a^b;this.ea=65536;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return(this.aa=this.la=a-b)&65535}
function ke(a,b){this.ea=65536;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.Gb:this.B.pc;return(this.aa=this.la=this.qa=a^b)&65535}function le(a,b){this.qa=a^b;this.ea=65536;this.aa=this.la=a-b;this.A-=0>this.Oa?0>this.ja?this.B.ac:this.B.ij:this.B.Gb;this.ba|=2;return a}function me(a,b){this.aa=this.aa&this.ea-1|(a&b?this.ea:0);(a^a>>1)&b>>1?Od(this):Jd(this)}function ne(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;me.call(this,d,256)}return c}
function oe(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;me.call(this,d,65536)}return c}function pe(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);me.call(this,d,256)}return c}function qe(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);me.call(this,d,65536)}return c}
function re(a,b){var c=a;if(b){var d;(d=(b&this.If)%9)?(d=a<<d|(this.aa&this.ea?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.aa&this.ea?1:0)<<8;me.call(this,d,256)}return c}function se(a,b){var c=a;if(b){var d;(d=(b&this.If)%17)?(d=a<<d|(this.aa&this.ea?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.aa&this.ea?1:0)<<16;me.call(this,d,65536)}return c}function te(a,b){var c=a;b&&(c=(b&this.If)%9,c=a>>c|(this.aa&this.ea?1:0)<<8-c|a<<9-c,me.call(this,c,256),c&=255);return c}
function ue(a,b){var c=a;b&&(c=(b&this.If)%17,c=a>>c|(this.aa&this.ea?1:0)<<16-c|a<<17-c,me.call(this,c,65536),c&=65535);return c}function ve(a,b){var c=a;b&&(c=8<b?this.aa=this.la=0:(this.aa=this.la=a<<b)&255,this.qa=0,this.ea=256);return c}function we(a,b){var c=a;b&&(c=16<b?this.aa=this.la=0:(this.aa=this.la=a<<b)&65535,this.qa=0,this.ea=65536);return c}
function xe(a,b){if(b){var c=8<b?0:a>>b-1;this.aa=this.la=c>>1;this.aa=c&1?this.aa|256:this.aa&-257;this.qa=a^this.aa;this.ea=256;a=this.aa}return a&255}function ye(a,b){if(b){var c=16<b?0:a>>b-1;this.aa=this.la=c>>1;this.aa=c&1?this.aa|65536:this.aa&-65537;this.qa=a^this.aa;this.ea=65536;a=this.aa}return a&65535}function ze(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.aa=this.la=c>>1;this.aa=c&1?this.aa|256:this.aa&-257;this.qa=a^this.aa;this.ea=256;a=this.aa}return a&255}
function Ae(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.aa=this.la=c>>1;this.aa=c&1?this.aa|65536:this.aa&-65537;this.qa=a^this.aa;this.ea=65536;a=this.aa}return a&65535}function Be(){this.A-=0>this.ja?2:this.B.$l;return 1}function Ce(){var a=this.J&this.If;this.A-=(0>this.ja?this.B.Ej:this.B.Dj)+(a<<this.B.Fj);return a}function De(){var a=this.fa();this.A-=(0>this.ja?this.B.Ej:this.B.Dj)+(a<<this.B.Fj);return a}function Ee(){return null}function Fe(a){lc.call(this,13,0);return a}
function ed(a){Nc.call(this);return a}function I(a){J.call(this);return a}
var Ge=[Xd,Yd,Zd,$d,ae,be,ce,de],He=[ee,fe,ge,he,ie,je,ke,le],Ie=[function(a,b){this.A-=0>this.Oa?this.B.qc:this.B.Tl;return b},Fe,Fe,Fe,Fe,Fe,Fe,Fe],Je=[function(a,b){this.A-=0>this.Oa?this.B.Ll:this.B.Jl;return b},I,I,I,I,I,I,I],Ke=[ne,pe,re,te,ve,xe,I,ze],Le=[oe,qe,se,ue,we,ye,I,Ae],Ne=[function(a,b){b=this.fa();this.aa=this.la=this.qa=a&b;this.ea=256;this.A-=0>this.ja?this.B.Kj:this.B.Jj;this.ba|=2;return a},I,function(a){this.A-=0>this.ja?this.B.zg:this.B.yg;return a^255},function(a,b){b=0;this.qa=
a^b;this.ea=256;this.A-=0>this.ja?this.B.zg:this.B.yg;return(this.aa=this.la=b-a)&255},function(a){this.H=this.Qb=(this.aa=(this.H&255)*a)&65535;this.qa=this.la=this.aa;this.ea=256;this.H&65280?(Kd(this),Od(this)):(Fd(this),Jd(this));this.A-=0>this.ja?this.B.Pl:this.B.Ol;this.ba|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.Qb=b&65535;this.aa=this.qa=this.la=b;this.ea=256;127<b||-128>b?(Kd(this),Od(this)):(Fd(this),Jd(this));this.A-=0>this.ja?this.B.ul:this.B.tl;this.ba|=
2;return a},function(a){if(!a)return Me.call(this),a;var b=this.H/a;if(255<b)return Me.call(this),a;this.Qb=this.H=b&255|(this.H%a&255)<<8;this.la=this.qa=this.aa=b|256;this.ea=256;this.A-=0>this.ja?this.B.ml:this.B.ll;this.ba|=2;return a},function(a){if(!a)return Me.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Me.call(this),a;this.Qb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.la=this.qa=this.aa=b|256;this.ea=256;this.A-=0>this.ja?this.B.ql:this.B.pl;this.ba|=
2;return a}],Oe=[function(a,b){b=this.L();this.aa=this.la=this.qa=a&b;this.ea=65536;this.A-=0>this.ja?this.B.Kj:this.B.Jj;this.ba|=2;return a},I,function(a){this.A-=0>this.ja?this.B.zg:this.B.yg;return a^65535},function(a,b){b=0;this.qa=a^b;this.ea=65536;this.A-=0>this.ja?this.B.zg:this.B.yg;return(this.aa=this.la=b-a)&65535},function(a){this.Qb=this.H=(this.aa=this.H*a)&65535;this.Ig=this.K=this.aa>>16&65535;this.qa=this.la=this.aa;this.ea=65536;this.K?(Kd(this),Od(this)):(Fd(this),Jd(this));this.A-=
0>this.ja?this.B.Rl:this.B.Ql;this.ba|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.Qb=b&65535;this.K=this.Ig=b>>16&65535;this.aa=this.qa=this.la=b;this.ea=65536;32767<b||-32768>b?(Kd(this),Od(this)):(Fd(this),Jd(this));this.A-=0>this.ja?this.B.wl:this.B.vl;this.ba|=2;return a},function(a,b){if(!a)return Me.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Me.call(this),a;this.Qb=this.H=c&65535;this.Ig=this.K=b%a&65535;this.la=this.qa=this.aa=c|
65536;this.ea=65536;this.A-=0>this.ja?this.B.ol:this.B.nl;this.ba|=2;return a},function(a,b){if(!a)return Me.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Me.call(this),a;this.Qb=this.H=d&65535;this.Ig=this.K=b%c&65535;this.la=this.qa=this.aa=d|65536;this.ea=65536;this.A-=0>this.ja?this.B.sl:this.B.rl;this.ba|=2;return a}],Kc=[function(a){this.qa=a;a=(this.la=a+1)&255;this.aa=a|(this.aa&this.ea?1:0)<<8;this.ea=256;this.A-=0>this.ja?this.B.xg:
this.B.wg;return a},function(a){this.qa=a;a=(this.la=a-1)&255;this.aa=a|(this.aa&this.ea?1:0)<<8;this.ea=256;this.A-=0>this.ja?this.B.xg:this.B.wg;return a},I,I,I,I,I,I],Lc=[function(a){this.qa=a;a=(this.la=a+1)&65535;this.aa=a|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=0>this.ja?this.B.xg:this.B.wg;return a},function(a){this.qa=a;a=(this.la=a-1)&65535;this.aa=a|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=0>this.ja?this.B.xg:this.B.wg;return a},function(a){G(this,this.wa);H(this,a);this.A-=
0>this.ja?this.B.kl:this.B.jl;this.ba|=2;return a},function(a){if(0>this.ja)return I.call(this,a);Pe.call(this,a,this.ra(this.ja+2));this.A-=this.B.hl;this.ba|=2;return a},function(a){H(this,a);this.A-=0>this.ja?this.B.Fl:this.B.El;this.ba|=2;return a},function(a){if(0>this.ja)return I.call(this,a);Bc(this,a,this.ra(this.ja+2));this.A-=this.B.Cl;this.ba|=2;return a},function(a){var b=a;this.ba&512&&(a=a-2&65535,80286>this.Ka&&(b=a));G(this,b);this.A-=0>this.ja?this.B.wc:this.B.Vl;this.ba|=2;return a},
Fe],Qe=[ne,pe,re,te,ve,xe,I,ze],Re=[oe,qe,se,ue,we,ye,I,Ae];function Se(a,b){this.A-=0>this.Oa?0>this.ja?this.B.Nl:this.B.Ml:this.B.Kl;return b}function Te(){return Se.call(this,0,this.Qb)}function Ue(a,b){this.aa=this.la=this.qa=a&b;this.ea=256;this.A-=0>this.Oa?0>this.ja?this.B.Lj:this.B.Bg:this.B.Bg;this.ba|=2;return a}function Ve(a,b){this.aa=this.la=this.qa=a&b;this.ea=65536;this.A-=0>this.Oa?0>this.ja?this.B.Lj:this.B.Bg:this.B.Bg;this.ba|=2;return a}
function We(a,b){var c=(b<<16>>16)*(this.fa()<<24>>24);this.aa=this.qa=this.la=c;this.ea=256;32767<c||-32768>c?(Kd(this),Od(this)):(Fd(this),Jd(this));this.A-=0>this.ja?21:24;return c&65535}function Xe(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.aa=this.qa=this.la=c;this.ea=65536;32767<c||-32768>c?(Kd(this),Od(this)):(Fd(this),Jd(this));this.A-=0>this.ja?21:24;return c&65535}function Ye(a){return a}function Ze(a){if(0>this.ja)return J.call(this),a;this.A-=this.B.Gl;return this.ja}
function $e(a,b){if(0>this.ja)return J.call(this),a;vd(this,this.ra(this.ja+2));this.A-=this.B.mj;return b}function af(a,b){if(0>this.ja)return J.call(this),a;xd(this,this.ra(this.ja+2));this.A-=this.B.mj;return b}function bf(a){if(0>this.ja)return Nc.call(this),a;var b=a<<16>>16,c=this.ra(this.ja)<<16>>16,d=this.ra(this.ja+2)<<16>>16;this.A-=this.B.dl;if(b<c||b>d)H(this,this.Fg-this.ua.Ga),Ud.call(this,5,null,0);this.ba|=2;return a}
function cf(a,b){this.A-=10+(0>this.ja?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Md(this),a;Hd(this);return a}function df(a,b){this.A-=14+(0>this.ja?0:2);if(-4!=this.Ub.load(b,!0)&&this.Ub.nc>=this.ua.bb&&this.Ub.nc>=(b&3))return Md(this),this.Ub.nb&65280;Hd(this);return a}function hf(a,b){this.A-=14+(0>this.ja?0:2);if(b&65528&&-4!=this.Ub.load(b,!0)&&(7168==(this.Ub.nb&7168)||this.Ub.nc>=this.ua.bb)&&this.Ub.nc>=(b&3))return Md(this),this.Ub.oc;Hd(this);return a}
function jf(a,b){if(0>this.ja){switch(this.dh&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Nj}else this.Oa=this.ja,this.R(a),this.A-=this.B.Mj;return b}
function kf(a,b){if(0>this.ja){switch(this.dh&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.Y=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Nj}else this.Oa=this.ja,this.S(a),this.A-=this.B.Mj;return b}function lf(a){a|=this.fc&1;this.fc=this.fc&65520|a&-65521;this.fc&1&&jd(this,!0)}function Pe(a,b){var c=this.ua.ta,d=this.wa;null!=Bc(this,a,b,!0)&&(G(this,c),G(this,d))}
function mf(a){var b=this.Na(),c=this.Na();a&&(this.Y=this.Y+a&65535);Bc(this,b,c,!1)&&(a&&(this.Y=this.Y+a&65535),this.eb.ta&65528&&this.eb.nc<this.ua.bb&&7168!=(this.eb.nb&7168)&&this.eb.load(0),this.La.ta&65528&&this.La.nc<this.ua.bb&&7168!=(this.La.nb&7168)&&this.La.load(0));2==a&&this.lh&&qd(this,this.Ea)}
function Ud(a,b,c){this.A-=this.B.yl+c;this.ua.Ei=!0;c=zc(this);var d=this.ua.ta,e=this.wa;a=this.ua.Vk(a);-4!=a&&(this.Ea=a+this.wa,G(this,c),G(this,d),G(this,e),null!=b&&G(this,b),this.Lh=-1)}function Me(){H(this,this.Fg-this.ua.Ga);Ud.call(this,0,null,2)}
function lc(a,b,c){if(this.na.ig){var d=!1;if(80186<=this.Ka)if(0>this.Lh)H(this,this.Fg-this.ua.Ga),d=!0;else if(8!=this.Lh)b=0,a=8,d=!0;else{nf.call(this,-1,0,c);id(this);return}nf.call(this,a,b,c)&&(d=!1);d&&Ud.call(this,this.Lh=a,b,0);this.ba&=-4}else this.qb("Fault "+q(a)+" blocked by Debugger",of),H(this,this.Fg-this.ua.Ga)}
function nf(a,b,c){var d=pf,e=rb(this.sa,this.Ea);204==e&&(c=!1,d|=Ob);983040<=this.Ea&&1048575>=this.Ea&&(c=!1);this.va(d|qf)&&(c=!0);if(this.va(d)||c)a=(c?"\n":"")+"Fault "+q(a)+(null!=b?" ("+v(b)+")":"")+" on opcode 0x"+q(e)+" at "+fa(this.wa,this.ua.ta)+" (%"+p(this.Ea,6)+")",b=this.na.Fb,this.qb(a,d)?c&&(c=b,this.ka.Jb()):(this.Ia(a),this.Jb());return c}function rf(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}
function sf(a){a=a.call(this,this.H&255,this.J&255);this.H=this.H&-256|a}function tf(a){a=a.call(this,this.H&255,this.K&255);this.H=this.H&-256|a}function uf(a){a=a.call(this,this.H&255,this.C&255);this.H=this.H&-256|a}function vf(a){a=a.call(this,this.H&255,this.H>>8);this.H=this.H&-256|a}function wf(a){a=a.call(this,this.H&255,this.J>>8);this.H=this.H&-256|a}function xf(a){a=a.call(this,this.H&255,this.K>>8);this.H=this.H&-256|a}
function yf(a){a=a.call(this,this.H&255,this.C>>8);this.H=this.H&-256|a}function zf(a){a=a.call(this,this.J&255,this.H&255);this.J=this.J&-256|a}function Af(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function Bf(a){a=a.call(this,this.J&255,this.K&255);this.J=this.J&-256|a}function Cf(a){a=a.call(this,this.J&255,this.C&255);this.J=this.J&-256|a}function Df(a){a=a.call(this,this.J&255,this.H>>8);this.J=this.J&-256|a}
function Ef(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function Ff(a){a=a.call(this,this.J&255,this.K>>8);this.J=this.J&-256|a}function Gf(a){a=a.call(this,this.J&255,this.C>>8);this.J=this.J&-256|a}function Hf(a){a=a.call(this,this.K&255,this.H&255);this.K=this.K&-256|a}function If(a){a=a.call(this,this.K&255,this.J&255);this.K=this.K&-256|a}function Jf(a){a=a.call(this,this.K&255,this.K&255);this.K=this.K&-256|a}
@ -386,302 +386,302 @@ b.call(this))},function(a,b){this.K=a[3].call(this,this.K,b.call(this))},functio
this.K,b.call(this))},function(a,b){this.C=a[4].call(this,this.C,b.call(this))},function(a,b){this.Y=a[4].call(this,this.Y,b.call(this))},function(a,b){this.I=a[4].call(this,this.I,b.call(this))},function(a,b){this.G=a[4].call(this,this.G,b.call(this))},function(a,b){this.F=a[4].call(this,this.F,b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.K=a[5].call(this,this.K,b.call(this))},function(a,b){this.C=
a[5].call(this,this.C,b.call(this))},function(a,b){this.Y=a[5].call(this,this.Y,b.call(this))},function(a,b){this.I=a[5].call(this,this.I,b.call(this))},function(a,b){this.G=a[5].call(this,this.G,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.J=a[6].call(this,this.J,b.call(this))},function(a,b){this.K=a[6].call(this,this.K,b.call(this))},function(a,b){this.C=a[6].call(this,this.C,b.call(this))},
function(a,b){this.ba|=512;this.Y=a[6].call(this,this.Y,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a,b){this.K=a[7].call(this,this.K,b.call(this))},function(a,b){this.C=a[7].call(this,this.C,b.call(this))},function(a,b){this.Y=a[7].call(this,
this.Y,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}];function gd(){Sh[this.fa()].call(this)}function id(){G(this,this.Y);this.A-=this.B.wc}function Qc(){var a=this.Y;G(this,this.H);G(this,this.J);G(this,this.K);G(this,this.C);G(this,a);G(this,this.I);G(this,this.G);G(this,this.F);this.A-=this.B.Xl}
function Rc(){this.F=this.La();this.G=this.La();this.I=this.La();this.Y+=2;this.C=this.La();this.K=this.La();this.J=this.La();this.H=this.La();this.A-=this.B.Vl}function Sc(){L[this.fa()].call(this,cf)}function hd(){Oh[this.fa()].call(this,df)}function Tc(){G(this,this.L());this.A-=this.B.wc}function Uc(){L[this.fa()].call(this,Ye)}function Vc(){G(this,this.fa());this.A-=this.B.wc}function Wc(){L[this.fa()].call(this,Xe)}
function Xc(){var a=1,b=0,c=5;this.Ca&192&&(a=this.J,b=1,this.Ca&256&&(c=4));if(a--){var d=yb(this.sa,this.K,this.Ea-b-1);this.Td(this.Wa.Zb(this.F,0),d);this.F=this.F+(this.Ba&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(zd(this,-2),this.ba|=256)}}
function Yc(){var a=1,b=0,c=5;this.Ca&192&&(a=this.J,b=1,this.Ca&256&&(c=4));if(a--){var d=this.Ea-b-1,d=yb(this.sa,this.K,d)|yb(this.sa,this.K,d)<<8;this.Sa(this.Wa.Zb(this.F,1),d);this.F=this.F+(this.Ba&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(zd(this,-2),this.ba|=256)}}
function Zc(){var a=1,b=0,c=5;this.Ca&192&&(a=this.J,b=1,this.Ca&256&&(c=4));if(a--){var d=this.wb(this.Cb.Hc(this.G,0));this.G=this.G+(this.Ba&1024?-1:1)&65535;this.A-=c;this.J-=b;Cb(this.sa,this.K,d,this.Ea-b-1);a&&(zd(this,-2),this.ba|=256)}}
function $c(){var a=1,b=0,c=5;this.Ca&192&&(a=this.J,b=1,this.Ca&256&&(c=4));if(a--){var d=this.qa(this.Cb.Hc(this.G,1));this.G=this.G+(this.Ba&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ea-b-1;Cb(this.sa,this.K,d&255,b);Cb(this.sa,this.K,d>>8,b);a&&(zd(this,-2),this.ba|=256)}}function Th(){var a=this.M();Fd(this)?(H(this,this.ua+a),this.A-=this.B.bc):this.A-=this.B.cc}function Uh(){var a=this.M();Fd(this)?this.A-=this.B.cc:(H(this,this.ua+a),this.A-=this.B.bc)}
function Vh(){var a=this.M();Ad(this)?(H(this,this.ua+a),this.A-=this.B.bc):this.A-=this.B.cc}function Wh(){var a=this.M();Ad(this)?this.A-=this.B.cc:(H(this,this.ua+a),this.A-=this.B.bc)}function Xh(){var a=this.M();Dd(this)?(H(this,this.ua+a),this.A-=this.B.bc):this.A-=this.B.cc}function Yh(){var a=this.M();Dd(this)?this.A-=this.B.cc:(H(this,this.ua+a),this.A-=this.B.bc)}function Zh(){var a=this.M();Ad(this)||Dd(this)?(H(this,this.ua+a),this.A-=this.B.bc):this.A-=this.B.cc}
function $h(){var a=this.M();Ad(this)||Dd(this)?this.A-=this.B.cc:(H(this,this.ua+a),this.A-=this.B.bc)}function ai(){var a=this.M();Ed(this)?(H(this,this.ua+a),this.A-=this.B.bc):this.A-=this.B.cc}function bi(){var a=this.M();Ed(this)?this.A-=this.B.cc:(H(this,this.ua+a),this.A-=this.B.bc)}function ci(){var a=this.M();Bd(this)?(H(this,this.ua+a),this.A-=this.B.bc):this.A-=this.B.cc}function di(){var a=this.M();Bd(this)?this.A-=this.B.cc:(H(this,this.ua+a),this.A-=this.B.bc)}
function ei(){var a=this.M();!Ed(this)!=!Fd(this)?(H(this,this.ua+a),this.A-=this.B.bc):this.A-=this.B.cc}function fi(){var a=this.M();!Ed(this)==!Fd(this)?(H(this,this.ua+a),this.A-=this.B.bc):this.A-=this.B.cc}function gi(){var a=this.M();Dd(this)||!Ed(this)!=!Fd(this)?(H(this,this.ua+a),this.A-=this.B.bc):this.A-=this.B.cc}function hi(){var a=this.M();Dd(this)||!Ed(this)!=!Fd(this)?this.A-=this.B.cc:(H(this,this.ua+a),this.A-=this.B.bc)}
function ii(){Qh[this.fa()].call(this,He,this.fa);this.A-=0>this.Na?1:this.B.Nh}function ad(){Qh[this.fa()].call(this,Re,Ee)}function bd(){Rh[this.fa()].call(this,Se,Ee)}function ji(){var a=this.L();H(this,this.La());this.Y=this.Y+a&65535;this.A-=this.B.bm}function ki(){H(this,this.La());this.A-=this.B.Zl}
function cd(){var a=this.L(),b=this.fa()&31;this.A-=11;G(this,this.I);var c=this.Y;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.I=this.I-2&65535,G(this,this.qa(this.Ra.Hc(this.I,1)));G(this,c)}this.I=c;this.Y=this.Y-a&65535}function dd(){this.Y=this.I;this.I=this.La();this.A-=5}function li(){var a=this.L(),b=this.La(),c=this.La();this.Y=this.Y+a&65535;Bc(this,b,c,!1)&&(this.Y=this.Y+a&65535);this.nh&&rd(this,this.Ea);this.A-=this.B.am}
function mi(){Bc(this,this.La(),this.La(),!1);this.A-=this.B.$l}function ni(){L[this.fa()].call(this,Ze);this.A-=8}function oi(){this.ba|=36;this.A-=this.B.te}function ed(){J.call(this)}function Pc(){lc.call(this,6);this.Jb()}function J(){H(this,this.Hg-this.va.Da);gb(this,"Undefined opcode 0x"+q(rb(this.sa,this.Ea))+" at "+fa(this.ua,this.va.ta));this.Jb()}
var Kc=[function(){var a=this.fa();Nh[a].call(this,Yd)},function(){Oh[this.fa()].call(this,fe)},function(){Ph[this.fa()].call(this,Yd)},function(){L[this.fa()].call(this,fe)},function(){this.H=this.H&-256|Yd.call(this,this.H&255,this.fa());this.A--},function(){this.H=fe.call(this,this.H,this.L());this.A--},function(){G(this,this.Wa.ta);this.A-=this.B.Cg},function(){yd(this,this.La());this.A-=this.B.pc},function(){Nh[this.fa()].call(this,Zd)},function(){Oh[this.fa()].call(this,ge)},function(){Ph[this.fa()].call(this,
Zd)},function(){L[this.fa()].call(this,ge)},function(){this.H=this.H&-256|Zd.call(this,this.H&255,this.fa());this.A--},function(){this.H=ge.call(this,this.H,this.L());this.A--},function(){G(this,this.va.ta);this.A-=this.B.Cg},function(){vd(this,this.La());this.A-=this.B.pc},function(){Nh[this.fa()].call(this,$d)},function(){Oh[this.fa()].call(this,he)},function(){Ph[this.fa()].call(this,$d)},function(){L[this.fa()].call(this,he)},function(){this.H=this.H&-256|$d.call(this,this.H&255,this.fa());this.A--},
function(){this.H=he.call(this,this.H,this.L());this.A--},function(){G(this,this.Ra.ta);this.A-=this.B.Cg},function(){xd(this,this.La());this.A-=this.B.pc},function(){Nh[this.fa()].call(this,ae)},function(){Oh[this.fa()].call(this,ie)},function(){Ph[this.fa()].call(this,ae)},function(){L[this.fa()].call(this,ie)},function(){this.H=this.H&-256|ae.call(this,this.H&255,this.fa());this.A--},function(){this.H=ie.call(this,this.H,this.L());this.A--},function(){G(this,this.Cb.ta);this.A-=this.B.Cg},function(){wd(this,
this.La());this.A-=this.B.pc},function(){Nh[this.fa()].call(this,be)},function(){Oh[this.fa()].call(this,je)},function(){Ph[this.fa()].call(this,be)},function(){L[this.fa()].call(this,je)},function(){this.H=this.H&-256|be.call(this,this.H&255,this.fa());this.A--},function(){this.H=je.call(this,this.H,this.L());this.A--},function(){this.ba|=20;this.D=this.N=this.Wa;this.A-=this.B.te},function(){var a=this.H&255,b=Cd(this),c=this.Z&this.ea;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.H=this.H&
-256|(this.Z=this.la=a&255);this.ea=65536;c&&(this.Z|=this.ea);b?Md(this):Hd(this);this.A-=this.B.We},function(){Nh[this.fa()].call(this,ce)},function(){Oh[this.fa()].call(this,ke)},function(){Ph[this.fa()].call(this,ce)},function(){L[this.fa()].call(this,ke)},function(){this.H=this.H&-256|ce.call(this,this.H&255,this.fa());this.A--},function(){this.H=ke.call(this,this.H,this.L());this.A--},function(){this.ba|=20;this.D=this.N=this.va;this.A-=this.B.te},function(){var a=this.H&255,b=Cd(this),c=this.Z&
this.ea;if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.H=this.H&-256|(this.Z=this.la=a&255);this.ea=65536;c&&(this.Z|=this.ea);b?Md(this):Hd(this);this.A-=this.B.We},function(){Nh[this.fa()].call(this,de)},function(){Oh[this.fa()].call(this,le)},function(){Ph[this.fa()].call(this,de)},function(){L[this.fa()].call(this,le)},function(){this.H=this.H&-256|de.call(this,this.H&255,this.fa());this.A--},function(){this.H=le.call(this,this.H,this.L());this.A--},function(){this.ba|=20;this.D=this.N=
this.Ra;this.A-=this.B.te},function(){var a=this.H&255,b=this.H>>8,c,d=Cd(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Z=a);this.ea=65536;c&&(this.Z|=this.ea);d?Md(this):Hd(this);this.A-=this.B.We},function(){Nh[this.fa()].call(this,ee)},function(){Oh[this.fa()].call(this,me)},function(){Ph[this.fa()].call(this,ee)},function(){L[this.fa()].call(this,me)},function(){this.H=this.H&-256|ee.call(this,this.H&255,this.fa());this.A--},function(){this.H=me.call(this,this.H,this.L());
this.A--},function(){this.ba|=20;this.D=this.N=this.Cb;this.A-=this.B.te},function(){var a=this.H&255,b=this.H>>8,c,d=Cd(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Z=a);this.ea=65536;c&&(this.Z|=this.ea);d?Md(this):Hd(this);this.A-=this.B.We},function(){this.ra=this.H;this.H=(this.la=this.H+1)&65535;this.Z=this.H|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.J;this.J=(this.la=this.J+1)&65535;this.Z=this.J|(this.Z&this.ea?1:0)<<16;this.ea=65536;
this.A-=2},function(){this.ra=this.K;this.K=(this.la=this.K+1)&65535;this.Z=this.K|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.C;this.C=(this.la=this.C+1)&65535;this.Z=this.C|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.Y;this.Y=(this.la=this.Y+1)&65535;this.Z=this.Y|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.I;this.I=(this.la=this.I+1)&65535;this.Z=this.I|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=
this.G;this.G=(this.la=this.G+1)&65535;this.Z=this.G|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.F;this.F=(this.la=this.F+1)&65535;this.Z=this.F|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.H;this.H=(this.la=this.H-1)&65535;this.Z=this.H|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.J;this.J=(this.la=this.J-1)&65535;this.Z=this.J|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.K;this.K=
(this.la=this.K-1)&65535;this.Z=this.K|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.C;this.C=(this.la=this.C-1)&65535;this.Z=this.C|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.Y;this.Y=(this.la=this.Y-1)&65535;this.Z=this.Y|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.I;this.I=(this.la=this.I-1)&65535;this.Z=this.I|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.G;this.G=(this.la=this.G-
1)&65535;this.Z=this.G|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.ra=this.F;this.F=(this.la=this.F-1)&65535;this.Z=this.F|(this.Z&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){G(this,this.H);this.A-=this.B.wc},function(){G(this,this.J);this.A-=this.B.wc},function(){G(this,this.K);this.A-=this.B.wc},function(){G(this,this.C);this.A-=this.B.wc},function(){G(this,this.Y-2&65535);this.A-=this.B.wc},function(){G(this,this.I);this.A-=this.B.wc},function(){G(this,this.G);this.A-=
this.B.wc},function(){G(this,this.F);this.A-=this.B.wc},function(){this.H=this.La();this.A-=this.B.pc},function(){this.J=this.La();this.A-=this.B.pc},function(){this.K=this.La();this.A-=this.B.pc},function(){this.C=this.La();this.A-=this.B.pc},function(){this.Y=this.La();this.A-=this.B.pc},function(){this.I=this.La();this.A-=this.B.pc},function(){this.G=this.La();this.A-=this.B.pc},function(){this.F=this.La();this.A-=this.B.pc},Th,Uh,Vh,Wh,Xh,Yh,Zh,$h,ai,bi,ci,di,ei,fi,gi,hi,Th,Uh,Vh,Wh,Xh,Yh,Zh,
$h,ai,bi,ci,di,ei,fi,gi,hi,ii,function(){Rh[this.fa()].call(this,Ie,this.L);this.A-=0>this.Na?1:this.B.Nh},ii,function(){Rh[this.fa()].call(this,Ie,this.M);this.A-=0>this.Na?1:this.B.Nh},function(){Nh[this.fa()].call(this,Ve)},function(){Oh[this.fa()].call(this,We)},function(){Ph[this.fh=this.fa()].call(this,kf)},function(){L[this.fh=this.fa()].call(this,lf)},function(){this.ba|=1;Nh[this.fa()].call(this,Te)},function(){this.ba|=1;Oh[this.fa()].call(this,Te)},function(){Ph[this.fa()].call(this,Te)},
function(){L[this.fa()].call(this,Te)},function(){var a=this.fa();switch((a&56)>>3){case 0:this.Rb=this.Wa.ta;break;case 1:this.Rb=this.va.ta;break;case 2:this.Rb=this.Ra.ta;break;case 3:this.Rb=this.Cb.ta;break;default:J.call(this);return}this.ba|=1;Oh[a].call(this,Ue)},function(){this.ba|=1;this.D=this.N=this.tm;L[this.fa()].call(this,$e)},function(){var a,b=this.fa(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Ka){Pc.call(this);
return}switch(c){case 1:a=this.J;break;case 4:a=this.Y;break;case 5:a=this.I;break;case 6:a=this.G;break;case 7:a=this.F}}L[b].call(this,Te);switch(c){case 0:yd(this,this.H);this.H=a;break;case 1:vd(this,this.J);this.J=a;break;case 2:xd(this,this.K);this.K=a;break;case 3:wd(this,this.C);this.C=a;break;case 4:yd(this,this.Y);this.Y=a;break;case 5:vd(this,this.I);this.I=a;break;case 6:xd(this,this.G);this.G=a;break;case 7:wd(this,this.F),this.F=a}},function(){this.ba|=1;Rh[this.fa()].call(this,Je,this.La)},
function(){this.A-=3},function(){var a=this.H;this.H=this.J;this.J=a;this.A-=3},function(){var a=this.H;this.H=this.K;this.K=a;this.A-=3},function(){var a=this.H;this.H=this.C;this.C=a;this.A-=3},function(){var a=this.H;this.H=this.Y;this.Y=a;this.A-=3},function(){var a=this.H;this.H=this.I;this.I=a;this.A-=3},function(){var a=this.H;this.H=this.G;this.G=a;this.A-=3},function(){var a=this.H;this.H=this.F;this.F=a;this.A-=3},function(){this.H=this.H<<24>>24&65535;this.A-=2},function(){this.K=this.H&
32768?65535:0;this.A-=this.B.il},function(){Qe.call(this,this.L(),this.L());this.A-=this.B.ll},function(){this.jb("WAIT not implemented",Ob);this.A--},function(){G(this,zc(this));this.A-=this.B.wc},function(){Ac(this,this.La());this.A-=this.B.pc},function(){var a=this.H>>8;a&1?Ld(this):Gd(this);a&4?Bd(this)||(this.la^=1):Bd(this)&&(this.la^=1);a&16?Md(this):Hd(this);a&64?Nd(this):Id(this);a&128?Qd(this):Jd(this);this.A-=this.B.Qb},function(){this.H=this.H&255|(zc(this)&213)<<8;this.A-=this.B.Qb},
function(){this.H=this.H&-256|this.U(this.D,this.L());this.A-=this.B.vj},function(){this.H=this.V(this.D,this.L());this.A-=this.B.vj},function(){var a=this.L(),b=this.H;this.Td(this.D.Zb(a,0),b);this.A-=this.B.wj},function(){var a=this.L(),b=this.H;this.Sa(this.D.Zb(a,1),b);this.A-=this.B.wj},function(){var a=1,b=0,c=this.B.xj;this.Ca&192&&(a=this.J,b=1,c=this.B.zj,this.Ca&256||(this.A-=this.B.yj));if(a--){var d=this.Ba&1024?-1:1,e=this.U(this.D,this.G);this.Td(this.Wa.Zb(this.F,0),e);this.G=this.G+
d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(zd(this,this.Ca&16?-3:-2),this.ba|=256)}},function(){var a=1,b=0,c=this.B.xj;this.Ca&192&&(a=this.J,b=1,c=this.B.zj,this.Ca&256||(this.A-=this.B.yj));if(a--){var d=this.Ba&1024?-2:2,e=this.V(this.D,this.G);this.Sa(this.Wa.Zb(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(zd(this,this.Ca&16?-3:-2),this.ba|=256)}},function(){var a=1,b=0,c=this.B.hj;this.Ca&192&&(a=this.J,b=1,c=this.B.jj,this.Ca&256||(this.A-=this.B.ij));
if(a--){var d=this.Ba&1024?-1:1,e=this.U(this.D,this.G),f=this.O(this.Wa,this.F);ee.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.Gb;this.J-=b;a&&Dd(this)==(this.Ca&64)&&(zd(this,this.Ca&16?-3:-2),this.ba|=256)}},function(){var a=1,b=0,c=this.B.hj;this.Ca&192&&(a=this.J,b=1,c=this.B.jj,this.Ca&256||(this.A-=this.B.ij));if(a--){var d=this.Ba&1024?-2:2,e=this.V(this.D,this.G),f=this.P(this.Wa,this.F);me.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=
c-this.B.Gb;this.J-=b;a&&Dd(this)==(this.Ca&64)&&(zd(this,this.Ca&16?-3:-2),this.ba|=256)}},function(){this.Z=this.la=this.ra=this.H&255&this.fa();this.ea=256;this.A-=this.B.We},function(){this.Z=this.la=this.ra=this.H&this.L();this.ea=65536;this.A-=this.B.We},function(){var a=1,b=0,c=this.B.Ij;this.Ca&192&&(a=this.J,b=1,c=this.B.Kj,this.Ca&256||(this.A-=this.B.Jj));if(a--){var d=this.H;this.Td(this.Wa.Zb(this.F,0),d);this.F=this.F+(this.Ba&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(zd(this,-2),this.ba|=
256)}},function(){var a=1,b=0,c=this.B.Ij;this.Ca&192&&(a=this.J,b=1,c=this.B.Kj,this.Ca&256||(this.A-=this.B.Jj));if(a--){var d=this.H;this.Sa(this.Wa.Zb(this.F,1),d);this.F=this.F+(this.Ba&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(zd(this,-2),this.ba|=256)}},function(){var a=1,b=0,c=this.B.pj;this.Ca&192&&(a=this.J,b=1,c=this.B.rj,this.Ca&256||(this.A-=this.B.qj));a--&&(this.H=this.H&-256|this.U(this.D,this.G),this.G=this.G+(this.Ba&1024?-1:1)&65535,this.A-=c,this.J-=b,a&&(zd(this,this.Ca&16?-3:
-2),this.ba|=256))},function(){var a=1,b=0,c=this.B.pj;this.Ca&192&&(a=this.J,b=1,c=this.B.rj,this.Ca&256||(this.A-=this.B.qj));a--&&(this.H=this.V(this.D,this.G),this.G=this.G+(this.Ba&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(zd(this,this.Ca&16?-3:-2),this.ba|=256))},function(){var a=1,b=0,c=this.B.Cj;this.Ca&192&&(a=this.J,b=1,c=this.B.Ej,this.Ca&256||(this.A-=this.B.Dj));a--&&(ee.call(this,this.H&255,this.O(this.Wa,this.F)),this.F=this.F+(this.Ba&1024?-1:1)&65535,this.A-=c-this.B.Gb,this.J-=b,
a&&Dd(this)==(this.Ca&64)&&(zd(this,-2),this.ba|=256))},function(){var a=1,b=0,c=this.B.Cj;this.Ca&192&&(a=this.J,b=1,c=this.B.Ej,this.Ca&256||(this.A-=this.B.Dj));a--&&(me.call(this,this.H,this.P(this.Wa,this.F)),this.F=this.F+(this.Ba&1024?-2:2)&65535,this.A-=c-this.B.Gb,this.J-=b,a&&Dd(this)==(this.Ca&64)&&(zd(this,-2),this.ba|=256))},function(){this.H=this.H&-256|this.fa();this.A-=this.B.Qb},function(){this.J=this.J&-256|this.fa();this.A-=this.B.Qb},function(){this.K=this.K&-256|this.fa();this.A-=
this.B.Qb},function(){this.C=this.C&-256|this.fa();this.A-=this.B.Qb},function(){this.H=this.H&255|this.fa()<<8;this.A-=this.B.Qb},function(){this.J=this.J&255|this.fa()<<8;this.A-=this.B.Qb},function(){this.K=this.K&255|this.fa()<<8;this.A-=this.B.Qb},function(){this.C=this.C&255|this.fa()<<8;this.A-=this.B.Qb},function(){this.H=this.L();this.A-=this.B.Qb},function(){this.J=this.L();this.A-=this.B.Qb},function(){this.K=this.L();this.A-=this.B.Qb},function(){this.C=this.L();this.A-=this.B.Qb},function(){this.Y=
this.L();this.A-=this.B.Qb},function(){this.I=this.L();this.A-=this.B.Qb},function(){this.G=this.L();this.A-=this.B.Qb},function(){this.F=this.L();this.A-=this.B.Qb},ji,ki,ji,ki,function(){L[this.fa()].call(this,bf)},function(){L[this.fa()].call(this,af)},function(){this.ba|=1;Qh[this.fa()].call(this,Ke,this.fa)},function(){this.ba|=1;Rh[this.fa()].call(this,Ke,this.L)},li,mi,li,mi,function(){Vd.call(this,3,null,this.B.Cl)},function(){var a=this.fa();md(this,a)?Vd.call(this,a,null,0):this.A--},function(){Fd(this)?
Vd.call(this,4,null,this.B.Dl):this.A-=this.B.El},function(){this.A-=this.B.Al;if(this.fc&1&&this.Ba&16384){var a=this.qa(this.Za.Da+0);yc.call(this.va,a,!1)}else{var a=this.va.Ta,b=this.La(),c=this.La(),d=this.La();null!=Bc(this,b,c,!1)&&(Ac(this,d,a),this.nh&&rd(this,this.Ea))}},function(){Qh[this.fa()].call(this,Le,Ce)},function(){Rh[this.fa()].call(this,Me,Ce)},function(){Qh[this.fa()].call(this,Le,De)},function(){Rh[this.fa()].call(this,Me,De)},function(){var a=this.fa(),b=this.H&255;this.H=
(b/a&255)<<8|b%a;this.ea=256;this.Z=this.la=b;this.A-=this.B.fl},function(){var a=this.fa();this.Z=this.la=this.H=(this.H>>8)*a+this.H&255;this.ea=256;this.A-=this.B.el},function(){this.H=this.H&-256|(Ad(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.U(this.D,this.C+(this.H&255)&65535);this.A-=this.B.dm},ni,ni,ni,ni,ni,ni,ni,ni,function(){var a=this.M();(this.J=this.J-1&65535)&&this.Z&this.ea-1?(H(this,this.ua+a),this.A-=this.B.Ll):this.A-=this.B.sj},function(){var a=this.M();!(this.J=
this.J-1&65535)||this.Z&this.ea-1?this.A-=this.B.uj:(H(this,this.ua+a),this.A-=this.B.tj)},function(){var a=this.M();(this.J=this.J-1&65535)?(H(this,this.ua+a),this.A-=this.B.Kl):this.A-=this.B.sj},function(){var a=this.M();this.J?this.A-=this.B.uj:(H(this,this.ua+a),this.A-=this.B.tj)},function(){var a=this.fa();this.H=this.H&-256|yb(this.sa,a,this.Ea-2);this.A-=this.B.mj},function(){var a=this.fa();this.H=yb(this.sa,a,this.Ea-1)|yb(this.sa,a+1&65535,this.Ea-2)<<8;this.A-=this.B.mj},function(){var a=
this.fa();Cb(this.sa,a,this.H&255,this.Ea-2);this.A-=this.B.Bj},function(){var a=this.fa();Cb(this.sa,a,this.H&255,this.Ea-2);Cb(this.sa,a+1&65535,this.H>>8,this.Ea-2);this.A-=this.B.Bj},function(){var a=this.L();G(this,this.ua);H(this,this.ua+a);this.A-=this.B.jl},function(){var a=this.L();H(this,this.ua+a);this.A-=this.B.nj},function(){Bc(this,this.L(),this.L());this.A-=this.B.Gl},function(){var a=this.M();H(this,this.ua+a);this.A-=this.B.nj},function(){this.H=this.H&-256|yb(this.sa,this.K,this.Ea-
1);this.A-=this.B.lj},function(){this.H=yb(this.sa,this.K,this.Ea-1)|yb(this.sa,this.K+1&65535,this.Ea-1)<<8;this.A-=this.B.lj},function(){Cb(this.sa,this.K,this.H&255,this.Ea-1);this.A-=this.B.Aj},function(){Cb(this.sa,this.K,this.H&255,this.Ea-1);Cb(this.sa,this.K+1&65535,this.H>>8,this.Ea-1);this.A-=this.B.Aj},oi,oi,function(){this.ba|=132;this.A-=this.B.te},function(){this.ba|=68;this.A-=this.B.te},function(){this.xb|=4;this.A-=2;this.ka&&Sd(this.ka)?(zd(this,-1),this.Jb()):this.Ba&512||(this.ka&&
zd(this,-1),this.Jb())},function(){Ad(this)?Gd(this):Ld(this);this.A-=2},function(){this.Rb=-1;Qh[this.fa()].call(this,Oe,Fe);0<=this.Rb&&(this.H=this.Rb)},function(){this.Rb=-1;Rh[this.fa()].call(this,Pe,Fe);0<=this.Rb&&(this.H=this.Rb,this.K=this.Kg)},function(){this.Z&=~this.ea;this.A-=2},function(){this.Z|=this.ea;this.A-=2},function(){this.Ba&=-513;this.A-=this.B.hl},function(){this.Ba|=512;this.ba|=4;this.A-=2},function(){this.Ba&=-1025;this.A-=2},function(){this.Ba|=1024;this.A-=2},function(){Qh[this.fa()].call(this,
Lc,Fe)},function(){Rh[this.fa()].call(this,Mc,Fe)}],Sh=[function(){var a=this.fa();16>(a&56)&&(this.ba|=1);Rh[a].call(this,this.nk,Fe)},function(){var a=this.fa();a&16||(this.ba|=1);Rh[a].call(this,pi,Fe)},function(){L[this.fa()].call(this,hf)},function(){L[this.fa()].call(this,jf)},J,function(){this.va.Ta?lc.call(this,13,0,!0):(mf.call(this,this.qa(2054)),this.F=this.qa(2086),this.G=this.qa(2088),this.I=this.qa(2090),this.Y=this.qa(2092),this.C=this.qa(2094),this.K=this.qa(2096),this.J=this.qa(2098),
this.H=this.qa(2100),Dc(this.Wa,2102,this.qa(2084)),Dc(this.va,2108,this.qa(2082)),Dc(this.Ra,2114,this.qa(2080)),Dc(this.Cb,2120,this.qa(2078)),Ac(this,this.qa(2072)),H(this,this.qa(2074)),this.qc=this.qa(2126)|this.qa(2128)<<16,this.de=this.qc+this.qa(2130),Dc(this.Xc,2132,this.qa(2076)),this.Pc=this.qa(2138)|this.qa(2140)<<16,this.Ce=this.Pc+this.qa(2142),Dc(this.Za,2144,this.qa(2070)),this.A-=195)},function(){this.va.Ta?lc.call(this,13,0,!0):(this.fc&=-9,this.A-=2)},J,J,J,J,Pc,J,J,J,J,J,J,J,J,
J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J],sd=[function(){this.A-=2+(0>
this.ja?0:1);return this.Xc.ta},function(){this.A-=2+(0>this.ja?0:1);return this.Za.ta},function(a){this.ba|=2;this.Xc.load(a);this.A-=17+(0>this.ja?0:2);return a},function(a){this.ba|=2;null!=this.Za.load(a)&&(this.Sa(this.Za.Cd+4,this.Za.Db|=512),this.Za.type=768);this.A-=17+(0>this.ja?0:2);return a},function(a){this.ba|=2;this.A-=14+(0>this.ja?0:2);if(0<=this.Vb.load(a,!0)&&2048!=(this.Vb.Db&2560)&&(this.Vb.Jc>=this.va.Ta&&this.Vb.Jc>=(a&3)||7168==(this.Vb.Db&7168)))return Nd(this),a;Id(this);
return a},function(a){this.ba|=2;this.A-=14+(0>this.ja?0:2);if(0<=this.Vb.load(a,!0)&&512==(this.Vb.Db&2560)&&this.Vb.Jc>=this.va.Ta&&this.Vb.Jc>=(a&3))return Nd(this),a;Id(this);return a},I,I],Oc=[fd,fd,fd,fd,fd,fd,I,I],pi=[function(a){0>this.ja?Pc.call(this):(a=this.de-this.qc,this.Sa(this.ja+2,this.qc),this.Sa(this.ja+4,65280|this.qc>>16),this.A-=11);return a},function(a){0>this.ja?Pc.call(this):(a=this.Ce-this.Pc,this.Sa(this.ja+2,this.Pc),this.Sa(this.ja+4,65280|this.Pc>>16),this.A-=12);return a},
function(a){0>this.ja?Pc.call(this):(this.qc=this.qa(this.ja+2)|this.wb(this.ja+4)<<16,this.de=this.qc+a,this.ba|=2,this.A-=11);return a},function(a){0>this.ja?Pc.call(this):(this.Pc=this.qa(this.ja+2)|this.wb(this.ja+4)<<16,this.Ce=this.Pc+a,this.ba|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ja?0:1);return this.fc},I,function(a){mf.call(this,a);this.A-=0>this.ja?3:6;this.ba|=2;return a},I];
function M(a){y.call(this,"ChipSet",a,M,qi);this.Ka=(this.Ka=a.model)?parseInt(this.Ka,10):ri;this.gc=0;var b=a.sw1;if(b)this.gc=si(b,ti|ui.Cm);else{this.Zd=[360,360];(b=a.floppies)&&b.length&&(this.Zd=b);if(b=this.Zd.length)this.gc|=vi.ei,b--,this.gc|=(b&3)<<vi.Qf;if(b=a.monitor||(this.Ka<wi?"mono":"ega"),void 0!==xi[b])this.gc|=xi[b]<<ui.Qf}this.ye=si(a.sw2||"11110000",0);this.co=this.Ka==ri?16:64;this.lh=this.oh=1;this.Ka>=wi&&(this.lh=this.oh=2);this.ne=a.scaleTimers||!1;this.yp=a.rtcDate;this.Pk=
!1;a.sound&&window&&"webkitAudioContext"in window&&(this.wi=new window.webkitAudioContext);this.reset(!0);this.Xa()}Xa(y,M);var ri=5150,wi=5170,xi={none:0,tv:1,color:2,mono:3,ega:0},vi={ei:1,ONE:0,qq:64,oq:128,Op:192,Pf:192,Qf:6},ti=12,ui={pq:16,Hp:32,Cm:48,Pf:48,Qf:4};k=M.prototype;
k.Ib=function(a,b,c){switch(b){case "sw1":return this.xa[b]=c,yi(this,b,c,this.gc,{0:this.Ka==ri?"Bootable Floppy Drive":"Loop on POST",1:this.Ka==ri?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ka==ri)return this.xa[b]=c,yi(this,b,c,this.ye,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.xa[b]=c,!0}return!1};
k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;this.Ma=a;this.Ua=ib(a,"Keyboard");this.Qh=c.da.td/1193181;xb(b,this,zi);Bb(b,this,Ai);this.Ka<wi?(xb(b,this,Bi),Bb(b,this,Ci)):(xb(b,this,Di),Bb(b,this,Ei));if(d){var e=this;Fi(d,Td,function(){for(var a=0;a<e.Kb.length;a++){for(var b=e.Kb[a],c="PIC"+a+":",d=0;d<b.Bc.length;d++)c+=" IC"+(d+1)+"="+q(b.Bc[d]);c+=" IMR="+q(b.Ed)+" IRR="+q(b.Tb)+" ISR="+q(b.Qc);e.ka.aa(c)}});Fi(d,Gi,function(){for(var a=0;a<e.Mb.length;a++){Hi(e,a);var b=e.Mb[a],c="TIMER"+
a+":",d=0;if(null!=b.pd)for(var l=0;l<=b.pd;l++)d|=b.bb[l]<<8*l;c+=" mode="+b.mode+" bytes="+b.pd+" count="+u(d);e.ka.aa(c)}});Fi(d,Ii,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Ji(e,b):e.ma[b];a&&(a+="\n");a+="CMOS[0x"+q(b)+"]: 0x"+q(c)}e.ka.aa(a)})}ld(c,Ki,this,this.bo)};k.ec=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.dc=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.kd=this.gc;this.ef=this.ye;Li(this);this.nb=Array(this.lh);for(b=0;b<this.lh;b++)Mi(this,b);this.Kb=Array(this.oh);Ni(this,0,32);1<this.oh&&Ni(this,1,160);this.ti=null;this.Mb=Array(3);for(b=0;b<this.Mb.length;b++)Oi(this,b);this.bg=this.ri=this.Fc=this.hh=null;this.gh=0;if(this.Ka>=wi){this.tb=16;this.Dd=0;this.nd=16;this.bh=0;this.Ee=160;512<=Pi(this)&&(this.Ee|=16);3==Qi(this)&&(this.Ee|=64);this.pi=3;this.$f=0;this.Xg=Array(7);this.Fe=0;a&&(this.ma=Array(64));Ri(this,
this.yp);for(a=21;24>=a;a++)this.ma[a]=0;for(a=14;46>a;a++)void 0===this.ma[a]&&(this.ma[a]=0);this.ma[20]=this.kd&(ui.Pf|2|vi.ei|vi.Pf);this.ma[16]=Si(this,0)<<4|Si(this,1);Ti(this)}};
function Ri(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.aa("CMOS date invalid ("+b+"), using "+c)):b&&a.aa("CMOS date: "+c);a.ma[0]=c.getSeconds();a.ma[1]=0;a.ma[2]=c.getMinutes();a.ma[3]=0;a.ma[4]=c.getHours();a.ma[5]=0;a.ma[6]=c.getDay()+1;a.ma[7]=c.getDate();a.ma[8]=c.getMonth()+1;c=c.getFullYear();a.ma[9]=c%100;c/=100;a.ma[50]=c%10|c/10<<4;a.ma[10]=38;a.ma[11]=2;a.ma[12]=0;a.ma[13]=128;a.Eg=a.Gf=0;a.em=a.Oh=null}
function Ji(a,b){var c=a.ma[b];if(10>b){var d=!1;4!=b&&5!=b||a.ma[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.ma[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.ma[b]^=128);return c}function Ui(a){var b;void 0===b&&(b=a.Oh);a.Gf=D(a.T,a.ne)+b;a.ma[11]&64&&Zb(a.T,b)}function Ti(a){for(var b=0,c=16;46>c;c++)b+=a.ma[c];a.ma[47]=b&255;a.ma[46]=b>>8}
k.save=function(){var a=new td(this);a.set(0,[this.gc,this.ye,this.kd,this.ef]);for(var b=[],c=0;c<this.nb;c++){for(var d=this.nb[c],e=d,f=[],g=0;g<e.Sb.length;g++){var h=e.Sb[g];f[g]=[h.Od,h.Zg,h.hc,h.gb,h.bb,h.mode,h.ih,h.tp,h.vp]}b[c]=[d.he,d.qi,d.uk,d.ob,f]}a.set(1,[b]);b=[];for(c=0;c<this.Kb.length;c++)d=this.Kb[c],b[c]=[d.ug,d.Bc,d.Qd,d.Ed,d.Tb,d.Qc,d.Ge,d.ag];a.set(2,[b]);b=[];for(c=0;c<this.Mb.length;c++)d=this.Mb[c],b[c]=[d.hc,d.Ic,d.bb,d.Oe,d.wk,d.mode,d.Yh,d.ke,d.pd,d.rd,d.jg,d.Se,d.jd];
a.set(3,[this.ti,b]);a.set(4,[this.hh,this.Fc,this.ri,this.bg,this.gh]);this.Ka>=wi&&(a.set(5,[this.tb,this.Dd,this.nd,this.bh,this.Ee,this.pi]),a.set(6,[this.$f,this.Xg,this.Fe,this.ma,this.Eg,this.Gf]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.gc=b[0];this.ye=b[1];this.kd=b[2];this.ef=b[3];b=a[1];for(c=0;c<this.lh;c++)Mi(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.oh;c++)Ni(this,c,0===c?32:160,b[0][c]);b=a[3];this.ti=b[0];for(c=0;c<this.Mb.length;c++)Oi(this,c,b[1][c]);b=a[4];this.hh=b[0];this.Fc=b[1];this.ri=b[2];this.bg=b[3];this.gh=b[4];if(b=a[5])this.tb=b[0],this.Dd=b[1],this.nd=b[2],this.bh=b[3],this.Ee=b[4],this.pi=b[5];if(b=a[6])this.$f=b[0],this.Xg=b[1],this.Fe=b[2],this.ma=b[3],
this.Eg=b[4],this.Gf=b[5],Ri(this);return!0};var Vi=[0,null,null,0,Array(4)];function Mi(a,b,c){var d=a.nb[b];d||(d={Sb:Array(4)});c=c&&5==c.length?c:Vi;d.he=c[0];d.qi=c[1];d.uk=c[2];d.ob=c[3];d.ko=b<<2;for(var e=0;e<d.Sb.length;e++)Wi(d,e,c[4][e]);a.nb[b]=d}var Xi=[!0,[0,0],[0,0],[0,0],[0,0]];
function Wi(a,b,c){var d=a.Sb[b];d||(d={Zg:[0,0],hc:[0,0],gb:[0,0],bb:[0,0]});c=c&&8==c.length?c:Xi;d.Od=c[0];d.Zg[0]=c[1][0];d.Zg[1]=c[1][1];d.hc[0]=c[2][0];d.hc[1]=c[2][1];d.gb[0]=c[3][0];d.gb[1]=c[3][1];d.bb[0]=c[4][0];d.bb[1]=c[4][1];d.mode=c[5];d.ih=c[6];d.ga=a;d.Uk=b;Yi(d,c[8],c[9]);a.Sb[b]=d}function Yi(a,b,c,d){"string"==typeof b&&(b=Za(b));b&&(a.sh=null,a.tp=b.id,a.vp=c,a.qh=b,a.Qi=b[c],a.Rh=d)}var Zi=[0,Array(4)];
function Ni(a,b,c,d){var e=a.Kb[b];e||(e={Bc:[null,null,null,null]});d=d&&8==d.length?d:Zi;e.port=c;e.Nq=b<<3;e.ug=d[0];e.Bc[0]=d[1][0];e.Bc[1]=d[1][1];e.Bc[2]=d[1][2];e.Bc[3]=d[1][3];e.Qd=d[2];e.Ed=d[3];e.Tb=d[4];e.Qc=d[5];e.Ge=d[6];e.ag=d[7];a.Kb[b]=e}var $i=[[0,0],[0,0],[0,0],[0,0]];
function Oi(a,b,c){var d=a.Mb[b];d||(d={hc:[0,0],Ic:[0,0],bb:[0,0],Oe:[0,0]});c=c&&13==c.length?c:$i;d.hc[0]=c[0][0];d.hc[1]=c[0][1];d.Ic[0]=c[1][0];d.Ic[1]=c[1][1];d.bb[0]=c[2][0];d.bb[1]=c[2][1];d.Oe[0]=c[3][0];d.Oe[1]=c[3][1];d.wk=c[4];d.mode=c[5];d.Yh=c[6];d.ke=c[7];d.pd=c[8];d.rd=c[9];d.jg=c[10];d.Se=c[11];d.jd=c[12];a.Mb[b]=d}function Pi(a,b){return((((b?a.gc:a.kd)&12)>>2)+1)*a.co+32*((b?a.ye:a.ef)&15)}function aj(a,b){var c=b?a.gc:a.kd;return a.Ka!=ri||c&vi.ei?((c&vi.Pf)>>vi.Qf)+1:0}
function Si(a,b){if(b<aj(a)){if(!a.Zd)return 1;if(b<a.Zd.length)switch(a.Zd[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Qi(a,b){return((b?a.gc:a.kd)&ui.Pf)>>ui.Qf}
this.Y,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}];function fd(){Sh[this.fa()].call(this)}function hd(){G(this,this.Y);this.A-=this.B.wc}function Pc(){var a=this.Y;G(this,this.H);G(this,this.J);G(this,this.K);G(this,this.C);G(this,a);G(this,this.I);G(this,this.G);G(this,this.F);this.A-=this.B.Ul}
function Qc(){this.F=this.Na();this.G=this.Na();this.I=this.Na();this.Y+=2;this.C=this.Na();this.K=this.Na();this.J=this.Na();this.H=this.Na();this.A-=this.B.Sl}function Rc(){L[this.fa()].call(this,bf)}function gd(){Oh[this.fa()].call(this,cf)}function Sc(){G(this,this.L());this.A-=this.B.wc}function Tc(){L[this.fa()].call(this,Xe)}function Uc(){G(this,this.fa());this.A-=this.B.wc}function Vc(){L[this.fa()].call(this,We)}
function Wc(){var a=1,b=0,c=5;this.Da&192&&(a=this.J,b=1,this.Da&256&&(c=4));if(a--){var d=yb(this.sa,this.K,this.Ea-b-1);this.Sd(this.La.Zb(this.F,0),d);this.F=this.F+(this.Ba&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(yd(this,-2),this.ba|=256)}}
function Xc(){var a=1,b=0,c=5;this.Da&192&&(a=this.J,b=1,this.Da&256&&(c=4));if(a--){var d=this.Ea-b-1,d=yb(this.sa,this.K,d)|yb(this.sa,this.K,d)<<8;this.Sa(this.La.Zb(this.F,1),d);this.F=this.F+(this.Ba&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(yd(this,-2),this.ba|=256)}}
function Yc(){var a=1,b=0,c=5;this.Da&192&&(a=this.J,b=1,this.Da&256&&(c=4));if(a--){var d=this.yb(this.eb.Ic(this.G,0));this.G=this.G+(this.Ba&1024?-1:1)&65535;this.A-=c;this.J-=b;Cb(this.sa,this.K,d,this.Ea-b-1);a&&(yd(this,-2),this.ba|=256)}}
function Zc(){var a=1,b=0,c=5;this.Da&192&&(a=this.J,b=1,this.Da&256&&(c=4));if(a--){var d=this.ra(this.eb.Ic(this.G,1));this.G=this.G+(this.Ba&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ea-b-1;Cb(this.sa,this.K,d&255,b);Cb(this.sa,this.K,d>>8,b);a&&(yd(this,-2),this.ba|=256)}}function Th(){var a=this.M();Ed(this)?(H(this,this.wa+a),this.A-=this.B.bc):this.A-=this.B.cc}function Uh(){var a=this.M();Ed(this)?this.A-=this.B.cc:(H(this,this.wa+a),this.A-=this.B.bc)}
function Vh(){var a=this.M();zd(this)?(H(this,this.wa+a),this.A-=this.B.bc):this.A-=this.B.cc}function Wh(){var a=this.M();zd(this)?this.A-=this.B.cc:(H(this,this.wa+a),this.A-=this.B.bc)}function Xh(){var a=this.M();Cd(this)?(H(this,this.wa+a),this.A-=this.B.bc):this.A-=this.B.cc}function Yh(){var a=this.M();Cd(this)?this.A-=this.B.cc:(H(this,this.wa+a),this.A-=this.B.bc)}function Zh(){var a=this.M();zd(this)||Cd(this)?(H(this,this.wa+a),this.A-=this.B.bc):this.A-=this.B.cc}
function $h(){var a=this.M();zd(this)||Cd(this)?this.A-=this.B.cc:(H(this,this.wa+a),this.A-=this.B.bc)}function ai(){var a=this.M();Dd(this)?(H(this,this.wa+a),this.A-=this.B.bc):this.A-=this.B.cc}function bi(){var a=this.M();Dd(this)?this.A-=this.B.cc:(H(this,this.wa+a),this.A-=this.B.bc)}function ci(){var a=this.M();Ad(this)?(H(this,this.wa+a),this.A-=this.B.bc):this.A-=this.B.cc}function di(){var a=this.M();Ad(this)?this.A-=this.B.cc:(H(this,this.wa+a),this.A-=this.B.bc)}
function ei(){var a=this.M();!Dd(this)!=!Ed(this)?(H(this,this.wa+a),this.A-=this.B.bc):this.A-=this.B.cc}function fi(){var a=this.M();!Dd(this)==!Ed(this)?(H(this,this.wa+a),this.A-=this.B.bc):this.A-=this.B.cc}function gi(){var a=this.M();Cd(this)||!Dd(this)!=!Ed(this)?(H(this,this.wa+a),this.A-=this.B.bc):this.A-=this.B.cc}function hi(){var a=this.M();Cd(this)||!Dd(this)!=!Ed(this)?this.A-=this.B.cc:(H(this,this.wa+a),this.A-=this.B.bc)}
function ii(){Qh[this.fa()].call(this,Ge,this.fa);this.A-=0>this.Oa?1:this.B.Mh}function $c(){Qh[this.fa()].call(this,Qe,De)}function ad(){Rh[this.fa()].call(this,Re,De)}function ji(){var a=this.L();H(this,this.Na());this.Y=this.Y+a&65535;this.A-=this.B.Zl}function ki(){H(this,this.Na());this.A-=this.B.Wl}
function bd(){var a=this.L(),b=this.fa()&31;this.A-=11;G(this,this.I);var c=this.Y;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.I=this.I-2&65535,G(this,this.ra(this.Ya.Ic(this.I,1)));G(this,c)}this.I=c;this.Y=this.Y-a&65535}function cd(){this.Y=this.I;this.I=this.Na();this.A-=5}function li(){mf.call(this,this.L());this.A-=this.B.Yl}function mi(){mf.call(this,0);this.A-=this.B.Xl}function ni(){L[this.fa()].call(this,Ye);this.A-=8}function oi(){this.ba|=36;this.A-=this.B.re}
function dd(){J.call(this)}function Nc(){lc.call(this,6);this.Jb()}function J(){H(this,this.Fg-this.ua.Ga);gb(this,"Undefined opcode 0x"+q(rb(this.sa,this.Ea))+" at "+fa(this.wa,this.ua.ta));this.Jb()}
var Gc=[function(){var a=this.fa();Nh[a].call(this,Xd)},function(){Oh[this.fa()].call(this,ee)},function(){Ph[this.fa()].call(this,Xd)},function(){L[this.fa()].call(this,ee)},function(){this.H=this.H&-256|Xd.call(this,this.H&255,this.fa());this.A--},function(){this.H=ee.call(this,this.H,this.L());this.A--},function(){G(this,this.La.ta);this.A-=this.B.Ag},function(){xd(this,this.Na());this.A-=this.B.qc},function(){Nh[this.fa()].call(this,Yd)},function(){Oh[this.fa()].call(this,fe)},function(){Ph[this.fa()].call(this,
Yd)},function(){L[this.fa()].call(this,fe)},function(){this.H=this.H&-256|Yd.call(this,this.H&255,this.fa());this.A--},function(){this.H=fe.call(this,this.H,this.L());this.A--},function(){G(this,this.ua.ta);this.A-=this.B.Ag},function(){ud(this,this.Na());this.A-=this.B.qc},function(){Nh[this.fa()].call(this,Zd)},function(){Oh[this.fa()].call(this,ge)},function(){Ph[this.fa()].call(this,Zd)},function(){L[this.fa()].call(this,ge)},function(){this.H=this.H&-256|Zd.call(this,this.H&255,this.fa());this.A--},
function(){this.H=ge.call(this,this.H,this.L());this.A--},function(){G(this,this.Ya.ta);this.A-=this.B.Ag},function(){wd(this,this.Na());this.A-=this.B.qc},function(){Nh[this.fa()].call(this,$d)},function(){Oh[this.fa()].call(this,he)},function(){Ph[this.fa()].call(this,$d)},function(){L[this.fa()].call(this,he)},function(){this.H=this.H&-256|$d.call(this,this.H&255,this.fa());this.A--},function(){this.H=he.call(this,this.H,this.L());this.A--},function(){G(this,this.eb.ta);this.A-=this.B.Ag},function(){vd(this,
this.Na());this.A-=this.B.qc},function(){Nh[this.fa()].call(this,ae)},function(){Oh[this.fa()].call(this,ie)},function(){Ph[this.fa()].call(this,ae)},function(){L[this.fa()].call(this,ie)},function(){this.H=this.H&-256|ae.call(this,this.H&255,this.fa());this.A--},function(){this.H=ie.call(this,this.H,this.L());this.A--},function(){this.ba|=20;this.D=this.N=this.La;this.A-=this.B.re},function(){var a=this.H&255,b=Bd(this),c=this.aa&this.ea;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.H=this.H&
-256|(this.aa=this.la=a&255);this.ea=65536;c&&(this.aa|=this.ea);b?Ld(this):Gd(this);this.A-=this.B.Ve},function(){Nh[this.fa()].call(this,be)},function(){Oh[this.fa()].call(this,je)},function(){Ph[this.fa()].call(this,be)},function(){L[this.fa()].call(this,je)},function(){this.H=this.H&-256|be.call(this,this.H&255,this.fa());this.A--},function(){this.H=je.call(this,this.H,this.L());this.A--},function(){this.ba|=20;this.D=this.N=this.ua;this.A-=this.B.re},function(){var a=this.H&255,b=Bd(this),c=
this.aa&this.ea;if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.H=this.H&-256|(this.aa=this.la=a&255);this.ea=65536;c&&(this.aa|=this.ea);b?Ld(this):Gd(this);this.A-=this.B.Ve},function(){Nh[this.fa()].call(this,ce)},function(){Oh[this.fa()].call(this,ke)},function(){Ph[this.fa()].call(this,ce)},function(){L[this.fa()].call(this,ke)},function(){this.H=this.H&-256|ce.call(this,this.H&255,this.fa());this.A--},function(){this.H=ke.call(this,this.H,this.L());this.A--},function(){this.ba|=20;this.D=
this.N=this.Ya;this.A-=this.B.re},function(){var a=this.H&255,b=this.H>>8,c,d=Bd(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.aa=a);this.ea=65536;c&&(this.aa|=this.ea);d?Ld(this):Gd(this);this.A-=this.B.Ve},function(){Nh[this.fa()].call(this,de)},function(){Oh[this.fa()].call(this,le)},function(){Ph[this.fa()].call(this,de)},function(){L[this.fa()].call(this,le)},function(){this.H=this.H&-256|de.call(this,this.H&255,this.fa());this.A--},function(){this.H=le.call(this,this.H,
this.L());this.A--},function(){this.ba|=20;this.D=this.N=this.eb;this.A-=this.B.re},function(){var a=this.H&255,b=this.H>>8,c,d=Bd(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.aa=a);this.ea=65536;c&&(this.aa|=this.ea);d?Ld(this):Gd(this);this.A-=this.B.Ve},function(){this.qa=this.H;this.H=(this.la=this.H+1)&65535;this.aa=this.H|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.J;this.J=(this.la=this.J+1)&65535;this.aa=this.J|(this.aa&this.ea?1:0)<<
16;this.ea=65536;this.A-=2},function(){this.qa=this.K;this.K=(this.la=this.K+1)&65535;this.aa=this.K|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.C;this.C=(this.la=this.C+1)&65535;this.aa=this.C|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.Y;this.Y=(this.la=this.Y+1)&65535;this.aa=this.Y|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.I;this.I=(this.la=this.I+1)&65535;this.aa=this.I|(this.aa&this.ea?1:0)<<16;this.ea=
65536;this.A-=2},function(){this.qa=this.G;this.G=(this.la=this.G+1)&65535;this.aa=this.G|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.F;this.F=(this.la=this.F+1)&65535;this.aa=this.F|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.H;this.H=(this.la=this.H-1)&65535;this.aa=this.H|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.J;this.J=(this.la=this.J-1)&65535;this.aa=this.J|(this.aa&this.ea?1:0)<<16;this.ea=65536;
this.A-=2},function(){this.qa=this.K;this.K=(this.la=this.K-1)&65535;this.aa=this.K|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.C;this.C=(this.la=this.C-1)&65535;this.aa=this.C|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.Y;this.Y=(this.la=this.Y-1)&65535;this.aa=this.Y|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.I;this.I=(this.la=this.I-1)&65535;this.aa=this.I|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=
2},function(){this.qa=this.G;this.G=(this.la=this.G-1)&65535;this.aa=this.G|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){this.qa=this.F;this.F=(this.la=this.F-1)&65535;this.aa=this.F|(this.aa&this.ea?1:0)<<16;this.ea=65536;this.A-=2},function(){G(this,this.H);this.A-=this.B.wc},function(){G(this,this.J);this.A-=this.B.wc},function(){G(this,this.K);this.A-=this.B.wc},function(){G(this,this.C);this.A-=this.B.wc},function(){G(this,this.Y-2&65535);this.A-=this.B.wc},function(){G(this,
this.I);this.A-=this.B.wc},function(){G(this,this.G);this.A-=this.B.wc},function(){G(this,this.F);this.A-=this.B.wc},function(){this.H=this.Na();this.A-=this.B.qc},function(){this.J=this.Na();this.A-=this.B.qc},function(){this.K=this.Na();this.A-=this.B.qc},function(){this.C=this.Na();this.A-=this.B.qc},function(){this.Y=this.Na();this.A-=this.B.qc},function(){this.I=this.Na();this.A-=this.B.qc},function(){this.G=this.Na();this.A-=this.B.qc},function(){this.F=this.Na();this.A-=this.B.qc},Th,Uh,Vh,
Wh,Xh,Yh,Zh,$h,ai,bi,ci,di,ei,fi,gi,hi,Th,Uh,Vh,Wh,Xh,Yh,Zh,$h,ai,bi,ci,di,ei,fi,gi,hi,ii,function(){Rh[this.fa()].call(this,He,this.L);this.A-=0>this.Oa?1:this.B.Mh},ii,function(){Rh[this.fa()].call(this,He,this.M);this.A-=0>this.Oa?1:this.B.Mh},function(){Nh[this.fa()].call(this,Ue)},function(){Oh[this.fa()].call(this,Ve)},function(){Ph[this.dh=this.fa()].call(this,jf)},function(){L[this.dh=this.fa()].call(this,kf)},function(){this.ba|=1;Nh[this.fa()].call(this,Se)},function(){this.ba|=1;Oh[this.fa()].call(this,
Se)},function(){Ph[this.fa()].call(this,Se)},function(){L[this.fa()].call(this,Se)},function(){var a=this.fa();switch((a&56)>>3){case 0:this.Qb=this.La.ta;break;case 1:this.Qb=this.ua.ta;break;case 2:this.Qb=this.Ya.ta;break;case 3:this.Qb=this.eb.ta;break;default:J.call(this);return}this.ba|=1;Oh[a].call(this,Te)},function(){this.ba|=1;this.D=this.N=this.qm;L[this.fa()].call(this,Ze)},function(){var a,b=this.fa(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;
default:if(80286<=this.Ka){Nc.call(this);return}switch(c){case 1:a=this.J;break;case 4:a=this.Y;break;case 5:a=this.I;break;case 6:a=this.G;break;case 7:a=this.F}}L[b].call(this,Se);switch(c){case 0:xd(this,this.H);this.H=a;break;case 1:ud(this,this.J);this.J=a;break;case 2:wd(this,this.K);this.K=a;break;case 3:vd(this,this.C);this.C=a;break;case 4:xd(this,this.Y);this.Y=a;break;case 5:ud(this,this.I);this.I=a;break;case 6:wd(this,this.G);this.G=a;break;case 7:vd(this,this.F),this.F=a}},function(){this.ba|=
1;Rh[this.fa()].call(this,Ie,this.Na)},function(){this.A-=3},function(){var a=this.H;this.H=this.J;this.J=a;this.A-=3},function(){var a=this.H;this.H=this.K;this.K=a;this.A-=3},function(){var a=this.H;this.H=this.C;this.C=a;this.A-=3},function(){var a=this.H;this.H=this.Y;this.Y=a;this.A-=3},function(){var a=this.H;this.H=this.I;this.I=a;this.A-=3},function(){var a=this.H;this.H=this.G;this.G=a;this.A-=3},function(){var a=this.H;this.H=this.F;this.F=a;this.A-=3},function(){this.H=this.H<<24>>24&65535;
this.A-=2},function(){this.K=this.H&32768?65535:0;this.A-=this.B.fl},function(){Pe.call(this,this.L(),this.L());this.A-=this.B.il},function(){this.qb("WAIT not implemented",Ob);this.A--},function(){G(this,zc(this));this.A-=this.B.wc},function(){Ac(this,this.Na());this.A-=this.B.qc},function(){var a=this.H>>8;a&1?Kd(this):Fd(this);a&4?Ad(this)||(this.la^=1):Ad(this)&&(this.la^=1);a&16?Ld(this):Gd(this);a&64?Md(this):Hd(this);a&128?Nd(this):Id(this);this.A-=this.B.Pb},function(){this.H=this.H&255|(zc(this)&
213)<<8;this.A-=this.B.Pb},function(){this.H=this.H&-256|this.U(this.D,this.L());this.A-=this.B.tj},function(){this.H=this.V(this.D,this.L());this.A-=this.B.tj},function(){var a=this.L(),b=this.H;this.Sd(this.D.Zb(a,0),b);this.A-=this.B.uj},function(){var a=this.L(),b=this.H;this.Sa(this.D.Zb(a,1),b);this.A-=this.B.uj},function(){var a=1,b=0,c=this.B.vj;this.Da&192&&(a=this.J,b=1,c=this.B.xj,this.Da&256||(this.A-=this.B.wj));if(a--){var d=this.Ba&1024?-1:1,e=this.U(this.D,this.G);this.Sd(this.La.Zb(this.F,
0),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(yd(this,this.Da&16?-3:-2),this.ba|=256)}},function(){var a=1,b=0,c=this.B.vj;this.Da&192&&(a=this.J,b=1,c=this.B.xj,this.Da&256||(this.A-=this.B.wj));if(a--){var d=this.Ba&1024?-2:2,e=this.V(this.D,this.G);this.Sa(this.La.Zb(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(yd(this,this.Da&16?-3:-2),this.ba|=256)}},function(){var a=1,b=0,c=this.B.fj;this.Da&192&&(a=this.J,b=1,c=this.B.hj,this.Da&
256||(this.A-=this.B.gj));if(a--){var d=this.Ba&1024?-1:1,e=this.U(this.D,this.G),f=this.O(this.La,this.F);de.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.Gb;this.J-=b;a&&Cd(this)==(this.Da&64)&&(yd(this,this.Da&16?-3:-2),this.ba|=256)}},function(){var a=1,b=0,c=this.B.fj;this.Da&192&&(a=this.J,b=1,c=this.B.hj,this.Da&256||(this.A-=this.B.gj));if(a--){var d=this.Ba&1024?-2:2,e=this.V(this.D,this.G),f=this.P(this.La,this.F);le.call(this,e,f);this.G=this.G+d&65535;this.F=
this.F+d&65535;this.A-=c-this.B.Gb;this.J-=b;a&&Cd(this)==(this.Da&64)&&(yd(this,this.Da&16?-3:-2),this.ba|=256)}},function(){this.aa=this.la=this.qa=this.H&255&this.fa();this.ea=256;this.A-=this.B.Ve},function(){this.aa=this.la=this.qa=this.H&this.L();this.ea=65536;this.A-=this.B.Ve},function(){var a=1,b=0,c=this.B.Gj;this.Da&192&&(a=this.J,b=1,c=this.B.Ij,this.Da&256||(this.A-=this.B.Hj));if(a--){var d=this.H;this.Sd(this.La.Zb(this.F,0),d);this.F=this.F+(this.Ba&1024?-1:1)&65535;this.A-=c;this.J-=
b;a&&(yd(this,-2),this.ba|=256)}},function(){var a=1,b=0,c=this.B.Gj;this.Da&192&&(a=this.J,b=1,c=this.B.Ij,this.Da&256||(this.A-=this.B.Hj));if(a--){var d=this.H;this.Sa(this.La.Zb(this.F,1),d);this.F=this.F+(this.Ba&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(yd(this,-2),this.ba|=256)}},function(){var a=1,b=0,c=this.B.nj;this.Da&192&&(a=this.J,b=1,c=this.B.pj,this.Da&256||(this.A-=this.B.oj));a--&&(this.H=this.H&-256|this.U(this.D,this.G),this.G=this.G+(this.Ba&1024?-1:1)&65535,this.A-=c,this.J-=b,
a&&(yd(this,this.Da&16?-3:-2),this.ba|=256))},function(){var a=1,b=0,c=this.B.nj;this.Da&192&&(a=this.J,b=1,c=this.B.pj,this.Da&256||(this.A-=this.B.oj));a--&&(this.H=this.V(this.D,this.G),this.G=this.G+(this.Ba&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(yd(this,this.Da&16?-3:-2),this.ba|=256))},function(){var a=1,b=0,c=this.B.Aj;this.Da&192&&(a=this.J,b=1,c=this.B.Cj,this.Da&256||(this.A-=this.B.Bj));a--&&(de.call(this,this.H&255,this.O(this.La,this.F)),this.F=this.F+(this.Ba&1024?-1:1)&65535,this.A-=
c-this.B.Gb,this.J-=b,a&&Cd(this)==(this.Da&64)&&(yd(this,-2),this.ba|=256))},function(){var a=1,b=0,c=this.B.Aj;this.Da&192&&(a=this.J,b=1,c=this.B.Cj,this.Da&256||(this.A-=this.B.Bj));a--&&(le.call(this,this.H,this.P(this.La,this.F)),this.F=this.F+(this.Ba&1024?-2:2)&65535,this.A-=c-this.B.Gb,this.J-=b,a&&Cd(this)==(this.Da&64)&&(yd(this,-2),this.ba|=256))},function(){this.H=this.H&-256|this.fa();this.A-=this.B.Pb},function(){this.J=this.J&-256|this.fa();this.A-=this.B.Pb},function(){this.K=this.K&
-256|this.fa();this.A-=this.B.Pb},function(){this.C=this.C&-256|this.fa();this.A-=this.B.Pb},function(){this.H=this.H&255|this.fa()<<8;this.A-=this.B.Pb},function(){this.J=this.J&255|this.fa()<<8;this.A-=this.B.Pb},function(){this.K=this.K&255|this.fa()<<8;this.A-=this.B.Pb},function(){this.C=this.C&255|this.fa()<<8;this.A-=this.B.Pb},function(){this.H=this.L();this.A-=this.B.Pb},function(){this.J=this.L();this.A-=this.B.Pb},function(){this.K=this.L();this.A-=this.B.Pb},function(){this.C=this.L();
this.A-=this.B.Pb},function(){this.Y=this.L();this.A-=this.B.Pb},function(){this.I=this.L();this.A-=this.B.Pb},function(){this.G=this.L();this.A-=this.B.Pb},function(){this.F=this.L();this.A-=this.B.Pb},ji,ki,ji,ki,function(){L[this.fa()].call(this,af)},function(){L[this.fa()].call(this,$e)},function(){this.ba|=1;Qh[this.fa()].call(this,Je,this.fa)},function(){this.ba|=1;Rh[this.fa()].call(this,Je,this.L)},li,mi,li,mi,function(){Ud.call(this,3,null,this.B.zl)},function(){var a=this.fa();ld(this,a)?
Ud.call(this,a,null,0):this.A--},function(){Ed(this)?Ud.call(this,4,null,this.B.Al):this.A-=this.B.Bl},function(){this.A-=this.B.xl;if(this.fc&1&&this.Ba&16384){var a=this.ra(this.fb.Ga+0);yc.call(this.ua,a,!1)}else{var a=this.ua.bb,b=this.Na(),c=this.Na(),d=this.Na();null!=Bc(this,b,c,!1)&&(Ac(this,d,a),this.lh&&qd(this,this.Ea))}},function(){Qh[this.fa()].call(this,Ke,Be)},function(){Rh[this.fa()].call(this,Le,Be)},function(){Qh[this.fa()].call(this,Ke,Ce)},function(){Rh[this.fa()].call(this,Le,
Ce)},function(){var a=this.fa(),b=this.H&255;this.H=(b/a&255)<<8|b%a;this.ea=256;this.aa=this.la=b;this.A-=this.B.cl},function(){var a=this.fa();this.aa=this.la=this.H=(this.H>>8)*a+this.H&255;this.ea=256;this.A-=this.B.bl},function(){this.H=this.H&-256|(zd(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.U(this.D,this.C+(this.H&255)&65535);this.A-=this.B.am},ni,ni,ni,ni,ni,ni,ni,ni,function(){var a=this.M();(this.J=this.J-1&65535)&&this.aa&this.ea-1?(H(this,this.wa+a),this.A-=this.B.Il):
this.A-=this.B.qj},function(){var a=this.M();!(this.J=this.J-1&65535)||this.aa&this.ea-1?this.A-=this.B.sj:(H(this,this.wa+a),this.A-=this.B.rj)},function(){var a=this.M();(this.J=this.J-1&65535)?(H(this,this.wa+a),this.A-=this.B.Hl):this.A-=this.B.qj},function(){var a=this.M();this.J?this.A-=this.B.sj:(H(this,this.wa+a),this.A-=this.B.rj)},function(){var a=this.fa();this.H=this.H&-256|yb(this.sa,a,this.Ea-2);this.A-=this.B.kj},function(){var a=this.fa();this.H=yb(this.sa,a,this.Ea-1)|yb(this.sa,
a+1&65535,this.Ea-2)<<8;this.A-=this.B.kj},function(){var a=this.fa();Cb(this.sa,a,this.H&255,this.Ea-2);this.A-=this.B.zj},function(){var a=this.fa();Cb(this.sa,a,this.H&255,this.Ea-2);Cb(this.sa,a+1&65535,this.H>>8,this.Ea-2);this.A-=this.B.zj},function(){var a=this.L();G(this,this.wa);H(this,this.wa+a);this.A-=this.B.gl},function(){var a=this.L();H(this,this.wa+a);this.A-=this.B.lj},function(){Bc(this,this.L(),this.L());this.A-=this.B.Dl},function(){var a=this.M();H(this,this.wa+a);this.A-=this.B.lj},
function(){this.H=this.H&-256|yb(this.sa,this.K,this.Ea-1);this.A-=this.B.jj},function(){this.H=yb(this.sa,this.K,this.Ea-1)|yb(this.sa,this.K+1&65535,this.Ea-1)<<8;this.A-=this.B.jj},function(){Cb(this.sa,this.K,this.H&255,this.Ea-1);this.A-=this.B.yj},function(){Cb(this.sa,this.K,this.H&255,this.Ea-1);Cb(this.sa,this.K+1&65535,this.H>>8,this.Ea-1);this.A-=this.B.yj},oi,oi,function(){this.ba|=132;this.A-=this.B.re},function(){this.ba|=68;this.A-=this.B.re},function(){this.zb|=4;this.A-=2;this.ka&&
Pd(this.ka)?(yd(this,-1),this.Jb()):this.Ba&512||(this.ka&&yd(this,-1),this.Jb())},function(){zd(this)?Fd(this):Kd(this);this.A-=2},function(){this.Qb=-1;Qh[this.fa()].call(this,Ne,Ee);0<=this.Qb&&(this.H=this.Qb)},function(){this.Qb=-1;Rh[this.fa()].call(this,Oe,Ee);0<=this.Qb&&(this.H=this.Qb,this.K=this.Ig)},function(){this.aa&=~this.ea;this.A-=2},function(){this.aa|=this.ea;this.A-=2},function(){this.Ba&=-513;this.A-=this.B.el},function(){this.Ba|=512;this.ba|=4;this.A-=2},function(){this.Ba&=
-1025;this.A-=2},function(){this.Ba|=1024;this.A-=2},function(){Qh[this.fa()].call(this,Kc,Ee)},function(){Rh[this.fa()].call(this,Lc,Ee)}],Sh=[function(){var a=this.fa();16>(a&56)&&(this.ba|=1);Rh[a].call(this,this.lk,Ee)},function(){var a=this.fa();a&16||(this.ba|=1);Rh[a].call(this,pi,Ee)},function(){L[this.fa()].call(this,df)},function(){L[this.fa()].call(this,hf)},J,function(){this.ua.bb?lc.call(this,13,0,!0):(lf.call(this,this.ra(2054)),this.F=this.ra(2086),this.G=this.ra(2088),this.I=this.ra(2090),
this.Y=this.ra(2092),this.C=this.ra(2094),this.K=this.ra(2096),this.J=this.ra(2098),this.H=this.ra(2100),Cc(this.La,2102,this.ra(2084)),Cc(this.ua,2108,this.ra(2082)),Cc(this.Ya,2114,this.ra(2080)),Cc(this.eb,2120,this.ra(2078)),Ac(this,this.ra(2072)),H(this,this.ra(2074)),this.Ec=this.ra(2126)|this.ra(2128)<<16,this.Be=this.Ec+this.ra(2130),Cc(this.Xc,2132,this.ra(2076)),this.Qc=this.ra(2138)|this.ra(2140)<<16,this.Ce=this.Qc+this.ra(2142),Cc(this.fb,2144,this.ra(2070)),this.A-=195)},function(){this.ua.bb?
lc.call(this,13,0,!0):(this.fc&=-9,this.A-=2)},J,J,J,J,Nc,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,
J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J,J],rd=[function(){this.A-=2+(0>this.ja?0:1);return this.Xc.ta},function(){this.A-=2+(0>this.ja?0:1);return this.fb.ta},function(a){this.ba|=2;this.Xc.load(a);this.A-=17+(0>this.ja?0:2);return a},function(a){this.ba|=2;-4!=this.fb.load(a)&&(this.Sa(this.fb.Dd+4,this.fb.nb|=512),this.fb.type=768);this.A-=17+(0>this.ja?0:2);return a},function(a){this.ba|=2;this.A-=14+(0>this.ja?0:2);if(-4!=this.Ub.load(a,!0)&&2048!=(this.Ub.nb&2560)&&(this.Ub.nc>=this.ua.bb&&
this.Ub.nc>=(a&3)||7168==(this.Ub.nb&7168)))return Md(this),a;Hd(this);return a},function(a){this.ba|=2;this.A-=14+(0>this.ja?0:2);if(-4!=this.Ub.load(a,!0)&&512==(this.Ub.nb&2560)&&this.Ub.nc>=this.ua.bb&&this.Ub.nc>=(a&3))return Md(this),a;Hd(this);return a},I,I],Mc=[ed,ed,ed,ed,ed,ed,I,I],pi=[function(a){0>this.ja?Nc.call(this):(a=this.Be-this.Ec,this.Sa(this.ja+2,this.Ec),this.Sa(this.ja+4,65280|this.Ec>>16),this.A-=11);return a},function(a){0>this.ja?Nc.call(this):(a=this.Ce-this.Qc,this.Sa(this.ja+
2,this.Qc),this.Sa(this.ja+4,65280|this.Qc>>16),this.A-=12);return a},function(a){0>this.ja?Nc.call(this):(this.Ec=this.ra(this.ja+2)|this.yb(this.ja+4)<<16,this.Be=this.Ec+a,this.ba|=2,this.A-=11);return a},function(a){0>this.ja?Nc.call(this):(this.Qc=this.ra(this.ja+2)|this.yb(this.ja+4)<<16,this.Ce=this.Qc+a,this.ba|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ja?0:1);return this.fc},I,function(a){lf.call(this,a);this.A-=0>this.ja?3:6;this.ba|=2;return a},I];
function M(a){y.call(this,"ChipSet",a,M,qi);this.Ka=(this.Ka=a.model)?parseInt(this.Ka,10):ri;this.gc=0;var b=a.sw1;if(b)this.gc=si(b,ti|ui.zm);else{this.Yd=[360,360];(b=a.floppies)&&b.length&&(this.Yd=b);if(b=this.Yd.length)this.gc|=vi.di,b--,this.gc|=(b&3)<<vi.Rf;if(b=a.monitor||(this.Ka<wi?"mono":"ega"),void 0!==xi[b])this.gc|=xi[b]<<ui.Rf}this.xe=si(a.sw2||"11110000",0);this.$n=this.Ka==ri?16:64;this.jh=this.cg=1;this.Ka>=wi&&(this.jh=this.cg=2);this.le=a.scaleTimers||!1;this.xp=a.rtcDate;this.Mk=
!1;a.sound&&window&&"webkitAudioContext"in window&&(this.wi=new window.webkitAudioContext);this.reset(!0);this.Va()}Xa(y,M);var ri=5150,wi=5170,xi={none:0,tv:1,color:2,mono:3,ega:0},vi={di:1,ONE:0,pq:64,nq:128,Np:192,Qf:192,Rf:6},ti=12,ui={oq:16,Gp:32,zm:48,Qf:48,Rf:4};k=M.prototype;
k.Ib=function(a,b,c){switch(b){case "sw1":return this.xa[b]=c,yi(this,b,c,this.gc,{0:this.Ka==ri?"Bootable Floppy Drive":"Loop on POST",1:this.Ka==ri?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ka==ri)return this.xa[b]=c,yi(this,b,c,this.xe,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.xa[b]=c,!0}return!1};
k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;this.Ma=a;this.Ua=ib(a,"Keyboard");this.Ph=c.da.ud/1193181;xb(b,this,zi);Bb(b,this,Ai);this.Ka<wi?(xb(b,this,Bi),Bb(b,this,Ci)):(xb(b,this,Di),Bb(b,this,Ei));if(d){var e=this;Fi(d,Sd,function(){for(var a=0;a<e.Wb.length;a++){for(var b=e.Wb[a],c="PIC"+a+":",d=0;d<b.Bc.length;d++)c+=" IC"+(d+1)+"="+q(b.Bc[d]);c+=" IMR="+q(b.od)+" IRR="+q(b.Sb)+" ISR="+q(b.Fc)+" DELAY="+b.Ff;e.ka.Z(c)}});Fi(d,Gi,function(){for(var a=0;a<e.Lb.length;a++){Hi(e,a);var b=
e.Lb[a],c="TIMER"+a+":",d=0;if(null!=b.qd)for(var m=0;m<=b.qd;m++)d|=b.ab[m]<<8*m;c+=" mode="+b.mode+" bytes="+b.qd+" count="+v(d);e.ka.Z(c)}});Fi(d,Ii,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Ji(e,b):e.ma[b];a&&(a+="\n");a+="CMOS[0x"+q(b)+"]: 0x"+q(c)}e.ka.Z(a)})}kd(c,Ki,this,this.Zn)};k.ec=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.dc=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.kd=this.gc;this.df=this.xe;Li(this);this.sb=Array(this.jh);for(b=0;b<this.jh;b++)Mi(this,b);this.Wb=Array(this.cg);Ni(this,0,32);1<this.cg&&Ni(this,1,160);this.ti=null;this.Lb=Array(3);for(b=0;b<this.Lb.length;b++)Oi(this,b);this.bg=this.ri=this.Gc=this.fh=null;this.eh=0;if(this.Ka>=wi){this.ub=16;this.Ed=0;this.nd=16;this.$g=0;this.Ee=160;512<=Pi(this)&&(this.Ee|=16);3==Qi(this)&&(this.Ee|=64);this.oi=3;this.$f=0;this.Vg=Array(7);this.Fe=0;a&&(this.ma=Array(64));Ri(this,
this.xp);for(a=21;24>=a;a++)this.ma[a]=0;for(a=14;46>a;a++)void 0===this.ma[a]&&(this.ma[a]=0);this.ma[20]=this.kd&(ui.Qf|2|vi.di|vi.Qf);this.ma[16]=Si(this,0)<<4|Si(this,1);Ti(this)}};
function Ri(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.Z("CMOS date invalid ("+b+"), using "+c)):b&&a.Z("CMOS date: "+c);a.ma[0]=c.getSeconds();a.ma[1]=0;a.ma[2]=c.getMinutes();a.ma[3]=0;a.ma[4]=c.getHours();a.ma[5]=0;a.ma[6]=c.getDay()+1;a.ma[7]=c.getDate();a.ma[8]=c.getMonth()+1;c=c.getFullYear();a.ma[9]=c%100;c/=100;a.ma[50]=c%10|c/10<<4;a.ma[10]=38;a.ma[11]=2;a.ma[12]=0;a.ma[13]=128;a.Cg=a.Hf=0;a.bm=a.Nh=null}
function Ji(a,b){var c=a.ma[b];if(10>b){var d=!1;4!=b&&5!=b||a.ma[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.ma[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.ma[b]^=128);return c}function Ui(a){var b;void 0===b&&(b=a.Nh);a.Hf=D(a.T,a.le)+b;a.ma[11]&64&&Zb(a.T,b)}function Ti(a){for(var b=0,c=16;46>c;c++)b+=a.ma[c];a.ma[47]=b&255;a.ma[46]=b>>8}
k.save=function(){var a=new sd(this);a.set(0,[this.gc,this.xe,this.kd,this.df]);for(var b=[],c=0;c<this.sb;c++){for(var d=this.sb[c],e=d,f=[],g=0;g<e.Rb.length;g++){var h=e.Rb[g];f[g]=[h.Od,h.Xg,h.hc,h.ib,h.ab,h.mode,h.gh,h.sp,h.tp]}b[c]=[d.fe,d.pi,d.sk,d.wb,f]}a.set(1,[b]);b=[];for(c=0;c<this.Wb.length;c++)d=this.Wb[c],b[c]=[d.Ff,d.Bc,d.Qd,d.od,d.Sb,d.Fc,d.Ge,d.ag];a.set(2,[b]);b=[];for(c=0;c<this.Lb.length;c++)d=this.Lb[c],b[c]=[d.hc,d.Jc,d.ab,d.Ne,d.uk,d.mode,d.Xh,d.ie,d.qd,d.sd,d.jg,d.Re,d.jd];
a.set(3,[this.ti,b]);a.set(4,[this.fh,this.Gc,this.ri,this.bg,this.eh]);this.Ka>=wi&&(a.set(5,[this.ub,this.Ed,this.nd,this.$g,this.Ee,this.oi]),a.set(6,[this.$f,this.Vg,this.Fe,this.ma,this.Cg,this.Hf]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.gc=b[0];this.xe=b[1];this.kd=b[2];this.df=b[3];b=a[1];for(c=0;c<this.jh;c++)Mi(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.cg;c++)Ni(this,c,0===c?32:160,b[0][c]);b=a[3];this.ti=b[0];for(c=0;c<this.Lb.length;c++)Oi(this,c,b[1][c]);b=a[4];this.fh=b[0];this.Gc=b[1];this.ri=b[2];this.bg=b[3];this.eh=b[4];if(b=a[5])this.ub=b[0],this.Ed=b[1],this.nd=b[2],this.$g=b[3],this.Ee=b[4],this.oi=b[5];if(b=a[6])this.$f=b[0],this.Vg=b[1],this.Fe=b[2],this.ma=b[3],
this.Cg=b[4],this.Hf=b[5],Ri(this);return!0};var Vi=[0,null,null,0,Array(4)];function Mi(a,b,c){var d=a.sb[b];d||(d={Rb:Array(4)});c=c&&5==c.length?c:Vi;d.fe=c[0];d.pi=c[1];d.sk=c[2];d.wb=c[3];d.ho=b<<2;for(var e=0;e<d.Rb.length;e++)Wi(d,e,c[4][e]);a.sb[b]=d}var Xi=[!0,[0,0],[0,0],[0,0],[0,0]];
function Wi(a,b,c){var d=a.Rb[b];d||(d={Xg:[0,0],hc:[0,0],ib:[0,0],ab:[0,0]});c=c&&8==c.length?c:Xi;d.Od=c[0];d.Xg[0]=c[1][0];d.Xg[1]=c[1][1];d.hc[0]=c[2][0];d.hc[1]=c[2][1];d.ib[0]=c[3][0];d.ib[1]=c[3][1];d.ab[0]=c[4][0];d.ab[1]=c[4][1];d.mode=c[5];d.gh=c[6];d.ga=a;d.Rk=b;Yi(d,c[8],c[9]);a.Rb[b]=d}function Yi(a,b,c,d){"string"==typeof b&&(b=$a(b));b&&(a.qh=null,a.sp=b.id,a.tp=c,a.oh=b,a.Oi=b[c],a.Qh=d)}var Zi=[0,Array(4)];
function Ni(a,b,c,d){var e=a.Wb[b];e||(e={Bc:[null,null,null,null]});d=d&&8==d.length?d:Zi;e.port=c;e.Mq=b<<3;e.Ff=d[0];e.Bc[0]=d[1][0];e.Bc[1]=d[1][1];e.Bc[2]=d[1][2];e.Bc[3]=d[1][3];e.Qd=d[2];e.od=d[3];e.Sb=d[4];e.Fc=d[5];e.Ge=d[6];e.ag=d[7];a.Wb[b]=e}var $i=[[0,0],[0,0],[0,0],[0,0]];
function Oi(a,b,c){var d=a.Lb[b];d||(d={hc:[0,0],Jc:[0,0],ab:[0,0],Ne:[0,0]});c=c&&13==c.length?c:$i;d.hc[0]=c[0][0];d.hc[1]=c[0][1];d.Jc[0]=c[1][0];d.Jc[1]=c[1][1];d.ab[0]=c[2][0];d.ab[1]=c[2][1];d.Ne[0]=c[3][0];d.Ne[1]=c[3][1];d.uk=c[4];d.mode=c[5];d.Xh=c[6];d.ie=c[7];d.qd=c[8];d.sd=c[9];d.jg=c[10];d.Re=c[11];d.jd=c[12];a.Lb[b]=d}function Pi(a,b){return((((b?a.gc:a.kd)&12)>>2)+1)*a.$n+32*((b?a.xe:a.df)&15)}function aj(a,b){var c=b?a.gc:a.kd;return a.Ka!=ri||c&vi.di?((c&vi.Qf)>>vi.Rf)+1:0}
function Si(a,b){if(b<aj(a)){if(!a.Yd)return 1;if(b<a.Yd.length)switch(a.Yd[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Qi(a,b){return((b?a.gc:a.kd)&ui.Qf)>>ui.Rf}
function yi(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=A(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)null!=e&&null!=e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),bj(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");bj(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.gc=
a.gc&~e|(c?0:e);break;case "sw2":a.ye=a.ye&~e|(c?0:e)}Li(a)}}(a,b[g])}function bj(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Li(a){var b=a.xa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(null!=b){var d;d=""+(Pi(a,!0)+"Kb");d+=", "+c[Qi(a,!0)]+" Monitor";d+=", "+aj(a,!0)+" Floppy Drives";if(null!=a.kd&&a.kd!=a.gc||null!=a.ef&&a.ef!=a.ye)d+=" (Reset required)";b.textContent=d}}
function cj(a,b,c,d,e){var f=a.nb[b],g=f.Sb[c],h=g.gb[f.ob];a.wa(N|P)&&B(a,d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.ob+"]",0,h);f.ob^=1;b||0!=c||f.ob||(g.gb[0]++,255<g.gb[0]&&(g.gb[0]=0,g.gb[1]++,255<g.gb[1]&&(g.gb[1]=0)));return h}function dj(a,b,c,d,e,f){var g=a.nb[b];a.wa(N|P)&&B(a,d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.ob+"]");a=g.Sb[c];a.gb[g.ob]=a.Zg[g.ob]=e;g.ob^=1}
function ej(a,b,c,d,e){var f=a.nb[b],g=f.Sb[c],h=g.bb[f.ob];a.wa(N|P)&&B(a,d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.ob+"]",0,h);f.ob^=1;b||0!=c||f.ob||(g.bb[0]--,0>g.bb[0]&&(g.bb[0]=255,g.bb[1]--,0>g.bb[1]&&(g.bb[1]=255)));return h}function fj(a,b,c,d,e,f){var g=a.nb[b];a.wa(N|P)&&B(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.ob+"]");a=g.Sb[c];a.bb[g.ob]=a.hc[g.ob]=e;g.ob^=1}function gj(a,b,c,d){var e=a.nb[b],f=e.he|1;e.he&=-16;a.wa(N|P)&&B(a,c,null,d,"DMA"+b+".STATUS",0,f);return f}
function hj(a,b,c,d,e){var f=a.nb[b];a.wa(N|P)&&B(a,c,d,e,"DMA"+b+".REQ");a=d&3;f.he=f.he&~(16<<a)|(d&4)<<a+2;f.uk=d}function ij(a,b,c,d,e){var f=a.nb[b];a.wa(N|P)&&B(a,c,d,e,"DMA"+b+".MASK");b=d&3;c=f.Sb[b];c.Od=!!(d&4);c.Od||jj(a,f.ko+b)}function kj(a,b,c,d,e){a.wa(N|P)&&B(a,c,d,e,"DMA"+b+".MODE");a.nb[b].Sb[d&3].mode=d}function lj(a,b,c,d,e){a.wa(N|P)&&B(a,c,d,e,"DMA"+b+".MASTER_CLEAR");a=a.nb[b];for(b=0;b<a.Sb.length;b++)Wi(a,b)}
function mj(a,b,c,d,e){var f=a.nb[b].Sb[c].ih;a.wa(N|P)&&B(a,d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",0,f);return f}function nj(a,b,c,d,e,f){a.wa(N|P)&&B(a,d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE");a.nb[b].Sb[c].ih=e}function oj(a,b,c,d){var e=a.Xg[b];a.wa(N|P)&&B(a,c,null,d,"DMA.SPARE"+b+".PAGE",0,e);return e}function pj(a,b,c,d,e){a.wa(N|P)&&B(a,c,d,e,"DMA.SPARE"+b+".PAGE");a.Xg[b]=d}function qj(a,b,c,d,e){Yi(a.nb[b>>2].Sb[b&3],c,d,e)}
function jj(a,b,c){b=a.nb[b>>2].Sb[b&3];b.qh&&b.Qi&&b.Rh?(c&&(b.sh=c),b.Od||Wd(a,b,!0)):c&&c(!0)}function Wd(a,b,c){c&&(b.count=b.bb[1]<<8|b.bb[0],b.ym=b.mode&12,b.Qk=b.fd=!1);for(var d=!1;0<=b.count&&(c=b.ih<<16|b.gb[1]<<8|b.gb[0],4==b.ym?(d=!0,function(c){b.Qi.call(b.qh,b.Rh,-1,function(f,g){0>f&&(b.Qk||(b.Qk=!0),f=255);b.Od||tb(a.sa,c,f);(d=g)&&setTimeout(function(){rj(b)||Wd(a,b)},0)})}(c)):8==b.ym?(c=rb(a.sa,c),0>b.Qi.call(b.qh,b.Rh,c)&&(b.fd=!0)):b.fd=!0),!d&&!rj(b););}
function rj(a){if(!a.fd&&0<=--a.count&&(a.mode&32?(a.gb[0]--,0>a.gb[0]&&(a.gb[0]=255,a.gb[1]--,0>a.gb[1]&&(a.gb[1]=255))):(a.gb[0]++,255<a.gb[0]&&(a.gb[0]=0,a.gb[1]++,255<a.gb[1]&&(a.gb[1]=0))),!a.Od))return!1;var b=a.ga;b.he=b.he&~(16<<a.Uk)|1<<a.Uk;a.mode&16||(a.Od=!0,a.qh=a.Rh=null);a.sh&&(a.sh(!a.fd),a.sh=null);return!0}function sj(a,b,c){var d=0,e=a.Kb[b];if(null!=e.ag)switch(e.ag&3){case 2:d=e.Tb;break;case 3:d=e.Qc}a.wa(Td|P)&&B(a,e.port,null,c,"PIC"+b,0,d);return d}
function tj(a,b,c,d){var e=a.Kb[b];a.wa(Td|P)&&B(a,e.port,c,d,"PIC"+b);if(c&16)e.Qd=0,e.Bc[e.Qd++]=c,e.Ed=0,e.Ge=7,e.Tb=e.Qc=0,e.ag=10;else if(c&8)e.ag=c;else{var f=c&224;if(f&32){d=0;if(96==(f&96))d=1<<(c&7);else for(c=e.Ge+1;;){c&=7;f=1<<c;if(e.Qc&f){d=f;break}if(c++==e.Ge)break}e.Qc&d&&(e.Qc&=~d,uj(a,b))}else 192==f&&(e.Ge=c&7)}}function vj(a,b,c){var d=a.Kb[b],e=d.Ed;a.wa(Td|P)&&B(a,d.port+1,null,c,"PIC"+b,0,e);return e}
function wj(a,b,c,d){var e=a.Kb[b];a.wa(Td|P)&&B(a,e.port+1,c,d,"PIC"+b);e.Qd<e.Bc.length?(e.Bc[e.Qd++]=c,2==e.Qd&&e.Bc[0]&2&&e.Qd++,3!=e.Qd||e.Bc[0]&1||e.Qd++):(e.Ed=c,d=a.T,d.ba|=4,uj(a,b,b||253!=c?0:6))}function uj(a,b,c){b=a.Kb[b];var d=((b.Qc|b.Ed)^255)&b.Tb;a=a.T;a.oa&&(a.xb=d?a.xb|1:a.xb&-2);d&&c&&(b.ug=c)}function xj(a,b,c){var d=b>>3,e=a.Kb[d];e.Tb|=1<<(b&7);e.ug=c||0;1==d&&(a.Kb[0].Tb|=4);uj(a,d)}
function yj(a,b){var c=b>>3,d=a.Kb[c],e=1<<(b&7);d.Tb&e&&(d.Tb&=~e,1!=c||d.Tb||(a.Kb[0].Tb&=-5),uj(a,c))}function Ud(a,b){void 0===b&&(b=0);var c=-1,d=a.Kb[b];if(d.ug)c=-2,d.ug--;else for(var e=d.Tb&((d.Qc|d.Ed)^255),f=d.Ge+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.Bc[1]+f:Ud(a,1);0<=c&&(d.Qc|=g,d.Tb&=~g);break}if(f++==d.Ge)break}return c}function zj(a,b,c){var d;d=a.Mb[b];d.ke==d.pd&&Aj(a,b);if(d.jg)return d.Oe[d.ke++];Hi(a,b);d=d.bb[d.ke++];a.wa(Gi|P)&&B(a,64+b,null,c,"TIMER"+b,0,d);return d}
function Bj(a,b,c,d){a.wa(Gi|P)&&B(a,64+b,c,d,"TIMER"+b);d=a.Mb[b];d.ke==d.pd&&Aj(a,b);d.hc[d.ke++]=c;d.ke==d.pd&&(d.Se&&0!=d.mode&&8!=d.mode||(d.jg=!1,d.bb[0]=d.Ic[0]=d.hc[0],d.bb[1]=d.Ic[1]=d.hc[1],d.jd=D(a.T,a.ne),d.Se=!0,d.rd=0!=d.mode,0==b&&(yj(a,0),c=Cj(a,0)*a.Qh|0,6==d.mode&&(c>>=1),Zb(a.T,c))),2==b&&bc(a))}k=M.prototype;k.Vn=function(a,b){B(this,a,null,b,"TIMER_CTRL",Gi);return null};
k.ip=function(a,b,c){this.ti=b;B(this,a,b,c,"TIMER_CTRL",Gi);a=(b&192)>>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Mb[a];e.Yh=b;e.mode=d;e.wk=c;e.hc=[0,0];e.bb=[0,0];e.Oe=[0,0];e.rd=!1;e.jg=!1;e.Se=!1;Aj(this,a);0==a&&yj(this,0);2==a&&255==this.Kb[0].Ed&&77==this.Fc&&(a=this.Mb[0],a.Ic[0]=a.hc[0],a.Ic[1]=a.hc[1],a.jd=D(this.T,this.ne))}else Hi(this,a),b=this.Mb[a],b.Oe[0]=b.bb[0],b.Oe[1]=b.bb[1],b.jg=!0,Aj(this,a)}};
function Cj(a,b){var c=a.Mb[b],d=c.hc[1]<<8|c.hc[0];d||(d=1==c.pd?256:65536);return d}function dc(a,b){var c=a.Mb[b],d=c.Ic[1]<<8|c.Ic[0];d||(d=1==c.pd?256:65536);return d}function Aj(a,b){var c=a.Mb[b];c.ke=32==c.Yh?1:0;c.pd=48==c.Yh?2:1}
function Hi(a,b,c){var d=a.Mb[b];if(d.Se&&(2!=b||a.Fc&1)){var e=D(a.T,a.ne),f=(e-d.jd)/a.Qh|0;0>f&&(d.jd=e,f=0);var g=Cj(a,b),h=dc(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.rd=!0,d.Se=!1,b||xj(a,0))):4==d.mode?(d.rd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Ic[0]=h&255,d.Ic[1]=h>>8,d.jd=e,!b&&d.rd&&xj(a,0))):6==d.mode&&(h-=f,0>=h&&(d.rd=!d.rd,h=g+h,0>=h&&(h=g),d.Ic[0]=h&255,d.Ic[1]=h>>8,d.jd=e,!b&&d.rd&&xj(a,0)));d.bb[0]=h&255;d.bb[1]=h>>8;c&&(a.jd=0)}return d}
function cc(a,b){for(var c=0;c<a.Mb.length;c++)Hi(a,c,b);if(a.Ka>=wi){var c=a.T.da.td,d=D(a.T,a.ne);null==a.Oh&&(a.Eg=D(a.T,a.ne),a.em=1024,a.Oh=Math.floor(a.T.da.td/a.em),Ui(a));d>=a.Gf&&(a.ma[12]|=64,a.ma[11]&64&&(a.ma[12]|=128,xj(a,8)),a.Gf=d+a.Oh);a.ma[0]==a.ma[1]&&a.ma[2]==a.ma[3]&&a.ma[4]==a.ma[5]&&(a.ma[12]|=32,a.ma[11]&32&&(a.ma[12]|=128,xj(a,8)));var e=d-a.Eg,f=Math.floor(e/c);if(f&&!(a.ma[11]&128)){for(;f--;)if(60<=++a.ma[0]&&(a.ma[0]=0,60<=++a.ma[2]&&(a.ma[2]=0,24<=++a.ma[4]))){a.ma[4]=
0;a.ma[6]=a.ma[6]%7+1;var g;g=a.ma[9];var h=sa[a.ma[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++a.ma[7]>g&&(a.ma[7]=1,12<++a.ma[8]&&(a.ma[8]=1,a.ma[9]=(a.ma[9]+1)%100))}a.ma[12]|=16;a.ma[11]&16&&(a.ma[12]|=128,xj(a,8))}a.Eg=d-e%c}}k.Nn=function(a,b){var c=this.hh;this.bg&16&&(this.Fc&128?c=this.kd:this.Ua&&(c=Dj(this.Ua)));B(this,a,null,b,"PPI_A",qi,c);return c};k.bp=function(a,b,c){B(this,a,b,c,"PPI_A",qi);this.hh=b};k.On=function(a,b){var c=this.Fc;B(this,a,null,b,"PPI_B",qi,c);return c};
k.cp=function(a,b,c){B(this,a,b,c,"PPI_B",qi);Ej(this,b);this.Ua&&Fj(this.Ua,b&128?!1:!0,b&64?!0:!1)};function Ej(a,b){var c=!!(b&2),d=!!(a.Fc&2);a.Fc=b;c!=d&&bc(a,c)}k.Pn=function(a,b){var c=0,c=this.Ka==ri?this.Fc&4?c|this.ef&15:c|this.ef>>4&1:this.Fc&8?c|this.kd>>4:c|this.kd&15;this.Fc&1&&Hi(this,2).rd&&(c=this.Fc&2?c|32:c|16);B(this,a,null,b,"PPI_C",qi|Fb,c);return c};k.dp=function(a,b,c){B(this,a,b,c,"PPI_C",qi);this.ri=b};k.Qn=function(a,b){var c=this.bg;B(this,a,null,b,"PPI_CTRL",qi,c);return c};
k.ep=function(a,b,c){B(this,a,b,c,"PPI_CTRL",qi);this.bg=b};k.cn=function(a,b){var c=this.bh;B(this,a,null,b,"8042_OUTBUFF",Gj,c);this.tb&=-258;var d=this.Ua&&Dj(this.Ua,!0);d&&Hj(this,d);return c};k.vo=function(a,b,c){B(this,a,b,c,"8042_INBUF.DATA",Gj);if(this.tb&8)switch(this.Dd){case 96:Ij(this,b);break;case 209:Jj(this,b);break;default:if(Ij(this,this.nd&-17),this.Ua){a=-1;switch(b){case 255:a=250,Kj(this.Ua)}Hj(this,a)}}this.Dd=b;this.tb&=-9};
k.dn=function(a,b){var c=this.Fc&-209|(D(this.T)&64?16:0);B(this,a,null,b,"8042_RWREG",Gj,c);return c};k.wo=function(a,b,c){B(this,a,b,c,"8042_RWREG",Gj);Ej(this,b)};k.en=function(a,b){B(this,a,null,b,"8042_STATUS",Gj,this.tb);var c=this.tb&255;this.tb&256&&(this.tb|=1,this.tb&=-257);return c};
k.uo=function(a,b,c){B(this,a,b,c,"8042_INBUFF.CMD",Gj);this.Dd=b;this.tb|=8;a=0;240<=this.Dd&&(a=this.Dd^15,this.Dd=240);switch(this.Dd){case 192:Hj(this,this.Ee);break;case 173:Ij(this,this.nd|16);break;case 174:Ij(this,this.nd&-17);break;case 170:this.Ua&&Lj(this.Ua,!0);Ij(this,this.nd|16);Hj(this,85);Jj(this,3);break;case 224:Hj(this,this.nd&16?0:1);break;case 240:a&1&&jd(this.T)}};
function Ij(a,b){var c=!(a.nd&16);a.nd=b;a.tb=a.tb&-5|b&4;if(a.Ua){var d=!(b&16);Fj(a.Ua,!!(b&8),d)&&Hj(a,Dj(a.Ua,!0));!c&&d&&Dj(a.Ua)&&Mj(a)}}function Hj(a,b){0<=b&&(a.bh=b,a.tb&=-2,a.tb|=256)}function Jj(a,b){a.pi=b;nb(a.sa,!!(b&2));b&1||jd(a.T)}function Mj(a){a.Ka<wi?xj(a,1,4):a.nd&16||xj(a,1,120)}k.tn=function(a,b){B(this,a,null,b,"CMOS.ADDR",Ii,this.Fe);return this.Fe};k.Ko=function(a,b,c){B(this,a,b,c,"CMOS.ADDR",Ii);this.Fe=b;this.gh=b&128?0:128};
k.un=function(a,b){var c=this.Fe&63,d=13>=c?Ji(this,c):this.ma[c];this.wa(Ii|P)&&B(this,a,null,b,"CMOS.DATA["+q(c)+"]",0,d);null!=b&&12==c&&(this.ma[c]&=15,d&128&&yj(this,8),d&64&&this.ma[11]&64&&Ui(this));return d};
k.Lo=function(a,b,c){var d=this.Fe&63;this.wa(Ii|P)&&B(this,a,b,c,"CMOS.DATA["+q(d)+"]");a=b^this.ma[d];if(13>=d){if(c=b,10>d){var e=!1;this.ma[11]&4||(c=10*(c>>4)+(c&15),e=!0);if(4==d||5==d)e&&23<c&&(c+=48),this.ma[11]&2||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.ma[d]=c;11==d&&a&64&&b&64&&Ui(this)};k.Ln=function(a,b){B(this,a,null,b,"MFG_DATA",qi,this.$f);return this.$f};k.Zo=function(a,b,c){B(this,a,b,c,"MFG_DATA",qi);this.$f=b};
k.ap=function(a,b,c){B(this,a,b,c,"NMI",qi);this.gh=b};k.bo=function(a){if(this.wa(Nj)&&od(this.ka,Ki,a)){var b=this.T.H>>8;pd(this.T,a,function(a,d){return function(e){d=D(a.T)-d;var f,g=a.T.K&255,h=a.T.K>>8,n=a.T.K&255,l=a.T.K>>8;if(2==b||3==b)f=" CH(hour)="+u(h)+" CL(min)="+q(g)+" DH(sec)="+q(l);else if(4==b||5==b)f=" CX(year)="+u(a.T.J)+" DH(month)="+q(l)+" DL(day)="+q(n);qd(a.ka,Ki,e,d,f)}}(this,D(this.T)))}return!0};
function si(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function bc(a,b){if(a.wi){void 0!==b?a.Pk=b:b=a.Pk&&a.T&&a.T.na.Fb;var c=Math.round(1193181/Cj(a,2));if(20>c||2E4<c)b=!1;b?a.xd?(a.xd.frequency.value=c,a.wa(Oj)&&a.jb("speaker set to "+c+"hz")):(a.xd=a.wi.createOscillator(),a.xd.type=1,a.xd.connect(a.wi.destination),a.xd.frequency.value=c,a.wa(Oj)&&a.jb("speaker on at "+c+"hz"),a.xd.noteOn(0)):a.xd&&(a.xd.noteOff(0),a.xd.disconnect(),delete a.xd,a.wa(Oj)&&a.jb("speaker off at "+c+"hz"))}else b&&a.jb("BEEP",Oj)}
var zi={0:function(a,b){return cj(this,0,0,a,b)},1:function(a,b){return ej(this,0,0,a,b)},2:function(a,b){return cj(this,0,1,a,b)},3:function(a,b){return ej(this,0,1,a,b)},4:function(a,b){return cj(this,0,2,a,b)},5:function(a,b){return ej(this,0,2,a,b)},6:function(a,b){return cj(this,0,3,a,b)},7:function(a,b){return ej(this,0,3,a,b)},8:function(a,b){return gj(this,0,a,b)},32:function(a,b){return sj(this,0,b)},33:function(a,b){return vj(this,0,b)},64:function(a,b){return zj(this,0,b)},65:function(a,
b){return zj(this,1,b)},66:function(a,b){return zj(this,2,b)},67:M.prototype.Vn,129:function(a,b){return mj(this,0,2,a,b)},130:function(a,b){return mj(this,0,3,a,b)},131:function(a,b){return mj(this,0,1,a,b)},135:function(a,b){return mj(this,0,0,a,b)}},Bi={96:M.prototype.Nn,97:M.prototype.On,98:M.prototype.Pn,99:M.prototype.Qn},Di={96:M.prototype.cn,97:M.prototype.dn,100:M.prototype.en,112:M.prototype.tn,113:M.prototype.un,128:M.prototype.Ln,132:function(a,b){return oj(this,0,a,b)},133:function(a,
b){return oj(this,1,a,b)},134:function(a,b){return oj(this,2,a,b)},136:function(a,b){return oj(this,3,a,b)},137:function(a,b){return mj(this,1,2,a,b)},138:function(a,b){return mj(this,1,3,a,b)},139:function(a,b){return mj(this,1,1,a,b)},140:function(a,b){return oj(this,4,a,b)},141:function(a,b){return oj(this,5,a,b)},142:function(a,b){return oj(this,6,a,b)},143:function(a,b){return mj(this,1,0,a,b)},160:function(a,b){return sj(this,1,b)},161:function(a,b){return vj(this,1,b)},192:function(a,b){return cj(this,
a.gc&~e|(c?0:e);break;case "sw2":a.xe=a.xe&~e|(c?0:e)}Li(a)}}(a,b[g])}function bj(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Li(a){var b=a.xa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(null!=b){var d;d=""+(Pi(a,!0)+"Kb");d+=", "+c[Qi(a,!0)]+" Monitor";d+=", "+aj(a,!0)+" Floppy Drives";if(null!=a.kd&&a.kd!=a.gc||null!=a.df&&a.df!=a.xe)d+=" (Reset required)";b.textContent=d}}
function cj(a,b,c,d,e){var f=a.sb[b],g=f.Rb[c],h=g.ib[f.wb];a.va(N|P)&&B(a,d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.wb+"]",h,!0);f.wb^=1;b||0!=c||f.wb||(g.ib[0]++,255<g.ib[0]&&(g.ib[0]=0,g.ib[1]++,255<g.ib[1]&&(g.ib[1]=0)));return h}function dj(a,b,c,d,e,f){var g=a.sb[b];a.va(N|P)&&B(a,d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.wb+"]",null,!0);a=g.Rb[c];a.ib[g.wb]=a.Xg[g.wb]=e;g.wb^=1}
function ej(a,b,c,d,e){var f=a.sb[b],g=f.Rb[c],h=g.ab[f.wb];a.va(N|P)&&B(a,d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.wb+"]",h,!0);f.wb^=1;b||0!=c||f.wb||(g.ab[0]--,0>g.ab[0]&&(g.ab[0]=255,g.ab[1]--,0>g.ab[1]&&(g.ab[1]=255)));return h}function fj(a,b,c,d,e,f){var g=a.sb[b];a.va(N|P)&&B(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.wb+"]",null,!0);a=g.Rb[c];a.ab[g.wb]=a.hc[g.wb]=e;g.wb^=1}function gj(a,b,c,d){var e=a.sb[b],f=e.fe|1;e.fe&=-16;a.va(N|P)&&B(a,c,null,d,"DMA"+b+".STATUS",f,!0);return f}
function hj(a,b,c,d,e){var f=a.sb[b];a.va(N|P)&&B(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.fe=f.fe&~(16<<a)|(d&4)<<a+2;f.sk=d}function ij(a,b,c,d,e){var f=a.sb[b];a.va(N|P)&&B(a,c,d,e,"DMA"+b+".MASK",null,!0);b=d&3;c=f.Rb[b];c.Od=!!(d&4);c.Od||jj(a,f.ho+b)}function kj(a,b,c,d,e){a.va(N|P)&&B(a,c,d,e,"DMA"+b+".MODE",null,!0);a.sb[b].Rb[d&3].mode=d}function lj(a,b,c,d,e){a.va(N|P)&&B(a,c,d,e,"DMA"+b+".RESET_FF",null,!0);a.sb[b].wb=0}
function mj(a,b,c,d,e){a.va(N|P)&&B(a,c,d,e,"DMA"+b+".MASTER_CLEAR",null,!0);a=a.sb[b];for(b=0;b<a.Rb.length;b++)Wi(a,b)}function nj(a,b,c,d,e){var f=a.sb[b].Rb[c].gh;a.va(N|P)&&B(a,d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",f,!0);return f}function oj(a,b,c,d,e,f){a.va(N|P)&&B(a,d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",null,!0);a.sb[b].Rb[c].gh=e}function pj(a,b,c,d){var e=a.Vg[b];a.va(N|P)&&B(a,c,null,d,"DMA.SPARE"+b+".PAGE",e,!0);return e}
function qj(a,b,c,d,e){a.va(N|P)&&B(a,c,d,e,"DMA.SPARE"+b+".PAGE",null,!0);a.Vg[b]=d}function rj(a,b,c,d,e){Yi(a.sb[b>>2].Rb[b&3],c,d,e)}function jj(a,b,c){b=a.sb[b>>2].Rb[b&3];b.oh&&b.Oi&&b.Qh?(c&&(b.qh=c),b.Od||Vd(a,b,!0)):c&&c(!0)}
function Vd(a,b,c){c&&(b.count=b.ab[1]<<8|b.ab[0],b.vm=b.mode&12,b.Nk=b.fd=!1);for(var d=!1;0<=b.count&&(c=b.gh<<16|b.ib[1]<<8|b.ib[0],4==b.vm?(d=!0,function(c){b.Oi.call(b.oh,b.Qh,-1,function(f,g){0>f&&(b.Nk||(b.Nk=!0),f=255);b.Od||tb(a.sa,c,f);(d=g)&&setTimeout(function(){sj(b)||Vd(a,b)},0)})}(c)):8==b.vm?(c=rb(a.sa,c),0>b.Oi.call(b.oh,b.Qh,c)&&(b.fd=!0)):b.fd=!0),!d&&!sj(b););}
function sj(a){if(!a.fd&&0<=--a.count&&(a.mode&32?(a.ib[0]--,0>a.ib[0]&&(a.ib[0]=255,a.ib[1]--,0>a.ib[1]&&(a.ib[1]=255))):(a.ib[0]++,255<a.ib[0]&&(a.ib[0]=0,a.ib[1]++,255<a.ib[1]&&(a.ib[1]=0))),!a.Od))return!1;var b=a.ga;b.fe=b.fe&~(16<<a.Rk)|1<<a.Rk;a.mode&16||(a.Od=!0,a.oh=a.Qh=null);a.qh&&(a.qh(!a.fd),a.qh=null);return!0}function tj(a,b,c){var d=0,e=a.Wb[b];if(null!=e.ag)switch(e.ag&3){case 2:d=e.Sb;break;case 3:d=e.Fc}a.va(Sd|P|qi)&&B(a,e.port,null,c,"PIC"+b,d,!0);return d}
function uj(a,b,c,d){var e=a.Wb[b];a.va(Sd|P|qi)&&B(a,e.port,c,d,"PIC"+b,null,!0);if(c&16)e.Qd=0,e.Bc[e.Qd++]=c,e.od=0,e.Ge=7,e.Sb=e.Fc=0,e.ag=10;else if(c&8)e.ag=c;else if(d=c&224,d&32){b=0;if(96==(d&96))b=1<<(c&7);else for(c=e.Ge+1;;){c&=7;d=1<<c;if(e.Fc&d){b=d;break}if(c++==e.Ge)break}e.Fc&b&&(e.Fc&=~b,vj(a))}else 192==d&&(e.Ge=c&7)}function wj(a,b,c){var d=a.Wb[b],e=d.od;a.va(Sd|P|qi)&&B(a,d.port+1,null,c,"PIC"+b,e,!0);return e}
function xj(a,b,c,d){var e=a.Wb[b];a.va(Sd|P|qi)&&B(a,e.port+1,c,d,"PIC"+b,null,!0);e.Qd<e.Bc.length?(e.Bc[e.Qd++]=c,2==e.Qd&&e.Bc[0]&2&&e.Qd++,3!=e.Qd||e.Bc[0]&1||e.Qd++):(e.od=c,d=a.T,d.ba|=4,vj(a,b||253!=c?0:6))}function yj(a,b,c){var d=a.Wb[b>>3];b=1<<(b&7);d.Sb&b||(d.Sb|=b,d.Ff=c||0,vj(a))}function zj(a,b){var c=a.Wb[b>>3],d=1<<(b&7);c.Sb&d&&(c.Sb&=~d,vj(a))}
function vj(a,b){var c,d=-1;1<a.cg&&(c=a.Wb[1],d=~(c.Fc|c.od)&c.Sb);c=a.Wb[0];0<=d&&(c.Sb=d?c.Sb|4:c.Sb&-5);var d=~(c.Fc|c.od)&c.Sb,e=a.T;e.pa&&(e.zb=d?e.zb|1:e.zb&-2);d&&b&&(c.Ff=b)}function Td(a,b){void 0===b&&(b=0);var c=-1,d=a.Wb[b];if(d.Ff)c=-2,d.Ff--;else for(var e=d.Sb&((d.Fc|d.od)^255),f=d.Ge+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.Bc[1]+f:Td(a,1);0<=c&&(d.Fc|=g,d.Sb&=~g);break}if(f++==d.Ge)break}return c}
function Aj(a,b,c){var d;d=a.Lb[b];d.ie==d.qd&&Bj(a,b);if(d.jg)return d.Ne[d.ie++];Hi(a,b);d=d.ab[d.ie++];a.va(Gi|P)&&B(a,64+b,null,c,"TIMER"+b,d,!0);return d}function Cj(a,b,c,d){a.va(Gi|P)&&B(a,64+b,c,d,"TIMER"+b,null,!0);d=a.Lb[b];d.ie==d.qd&&Bj(a,b);d.hc[d.ie++]=c;d.ie==d.qd&&(d.Re&&0!=d.mode&&8!=d.mode||(d.jg=!1,d.ab[0]=d.Jc[0]=d.hc[0],d.ab[1]=d.Jc[1]=d.hc[1],d.jd=D(a.T,a.le),d.Re=!0,d.sd=0!=d.mode,0==b&&(zj(a,0),c=Dj(a,0)*a.Ph|0,6==d.mode&&(c>>=1),Zb(a.T,c))),2==b&&bc(a))}k=M.prototype;
k.Sn=function(a,b){B(this,a,null,b,"TIMER_CTRL",null,Gi);return null};k.hp=function(a,b,c){this.ti=b;B(this,a,b,c,"TIMER_CTRL",null,Gi);a=(b&192)>>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Lb[a];e.Xh=b;e.mode=d;e.uk=c;e.hc=[0,0];e.ab=[0,0];e.Ne=[0,0];e.sd=!1;e.jg=!1;e.Re=!1;Bj(this,a);0==a&&zj(this,0);2==a&&255==this.Wb[0].od&&77==this.Gc&&(a=this.Lb[0],a.Jc[0]=a.hc[0],a.Jc[1]=a.hc[1],a.jd=D(this.T,this.le))}else Hi(this,a),b=this.Lb[a],b.Ne[0]=b.ab[0],b.Ne[1]=b.ab[1],b.jg=!0,Bj(this,a)}};
function Dj(a,b){var c=a.Lb[b],d=c.hc[1]<<8|c.hc[0];d||(d=1==c.qd?256:65536);return d}function dc(a,b){var c=a.Lb[b],d=c.Jc[1]<<8|c.Jc[0];d||(d=1==c.qd?256:65536);return d}function Bj(a,b){var c=a.Lb[b];c.ie=32==c.Xh?1:0;c.qd=48==c.Xh?2:1}
function Hi(a,b,c){var d=a.Lb[b];if(d.Re&&(2!=b||a.Gc&1)){var e=D(a.T,a.le),f=(e-d.jd)/a.Ph|0;0>f&&(d.jd=e,f=0);var g=Dj(a,b),h=dc(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.sd=!0,d.Re=!1,b||yj(a,0))):4==d.mode?(d.sd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Jc[0]=h&255,d.Jc[1]=h>>8,d.jd=e,!b&&d.sd&&yj(a,0))):6==d.mode&&(h-=f,0>=h&&(d.sd=!d.sd,h=g+h,0>=h&&(h=g),d.Jc[0]=h&255,d.Jc[1]=h>>8,d.jd=e,!b&&d.sd&&yj(a,0)));d.ab[0]=h&255;d.ab[1]=h>>8;c&&(a.jd=0)}return d}
function cc(a,b){for(var c=0;c<a.Lb.length;c++)Hi(a,c,b);if(a.Ka>=wi){var c=a.T.da.ud,d=D(a.T,a.le);null==a.Nh&&(a.Cg=D(a.T,a.le),a.bm=1024,a.Nh=Math.floor(a.T.da.ud/a.bm),Ui(a));d>=a.Hf&&(a.ma[12]|=64,a.ma[11]&64&&(a.ma[12]|=128,yj(a,8)),a.Hf=d+a.Nh);a.ma[0]==a.ma[1]&&a.ma[2]==a.ma[3]&&a.ma[4]==a.ma[5]&&(a.ma[12]|=32,a.ma[11]&32&&(a.ma[12]|=128,yj(a,8)));var e=d-a.Cg,f=Math.floor(e/c);if(f&&!(a.ma[11]&128)){for(;f--;)if(60<=++a.ma[0]&&(a.ma[0]=0,60<=++a.ma[2]&&(a.ma[2]=0,24<=++a.ma[4]))){a.ma[4]=
0;a.ma[6]=a.ma[6]%7+1;var g;g=a.ma[9];var h=sa[a.ma[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++a.ma[7]>g&&(a.ma[7]=1,12<++a.ma[8]&&(a.ma[8]=1,a.ma[9]=(a.ma[9]+1)%100))}a.ma[12]|=16;a.ma[11]&16&&(a.ma[12]|=128,yj(a,8))}a.Cg=d-e%c}}k.Kn=function(a,b){var c=this.fh;this.bg&16&&(this.Gc&128?c=this.kd:this.Ua&&(c=Ej(this.Ua)));B(this,a,null,b,"PPI_A",c);return c};k.ap=function(a,b,c){B(this,a,b,c,"PPI_A");this.fh=b};k.Ln=function(a,b){var c=this.Gc;B(this,a,null,b,"PPI_B",c);return c};
k.bp=function(a,b,c){B(this,a,b,c,"PPI_B");Fj(this,b);this.Ua&&Gj(this.Ua,b&128?!1:!0,b&64?!0:!1)};function Fj(a,b){var c=!!(b&2),d=!!(a.Gc&2);a.Gc=b;c!=d&&bc(a,c)}k.Mn=function(a,b){var c=0,c=this.Ka==ri?this.Gc&4?c|this.df&15:c|this.df>>4&1:this.Gc&8?c|this.kd>>4:c|this.kd&15;this.Gc&1&&Hi(this,2).sd&&(c=this.Gc&2?c|32:c|16);B(this,a,null,b,"PPI_C",c,qi|Fb);return c};k.cp=function(a,b,c){B(this,a,b,c,"PPI_C");this.ri=b};k.Nn=function(a,b){var c=this.bg;B(this,a,null,b,"PPI_CTRL",c);return c};
k.dp=function(a,b,c){B(this,a,b,c,"PPI_CTRL");this.bg=b};k.$m=function(a,b){var c=this.$g;B(this,a,null,b,"8042_OUTBUFF",c,Hj);this.ub&=-258;var d=this.Ua&&Ej(this.Ua,!0);d&&Ij(this,d);return c};k.so=function(a,b,c){B(this,a,b,c,"8042_INBUF.DATA",null,Hj);if(this.ub&8)switch(this.Ed){case 96:Jj(this,b);break;case 209:Kj(this,b);break;default:if(Jj(this,this.nd&-17),this.Ua){a=-1;switch(b){case 255:a=250,Lj(this.Ua)}Ij(this,a)}}this.Ed=b;this.ub&=-9};
k.an=function(a,b){var c=this.Gc&-209|(D(this.T)&64?16:0);B(this,a,null,b,"8042_RWREG",c,Hj);return c};k.to=function(a,b,c){B(this,a,b,c,"8042_RWREG",null,Hj);Fj(this,b)};k.bn=function(a,b){B(this,a,null,b,"8042_STATUS",this.ub,Hj);var c=this.ub&255;this.ub&256&&(this.ub|=1,this.ub&=-257);return c};
k.ro=function(a,b,c){B(this,a,b,c,"8042_INBUFF.CMD",null,Hj);this.Ed=b;this.ub|=8;a=0;240<=this.Ed&&(a=this.Ed^15,this.Ed=240);switch(this.Ed){case 192:Ij(this,this.Ee);break;case 173:Jj(this,this.nd|16);break;case 174:Jj(this,this.nd&-17);break;case 170:this.Ua&&Mj(this.Ua,!0);Jj(this,this.nd|16);Ij(this,85);Kj(this,3);break;case 224:Ij(this,this.nd&16?0:1);break;case 240:a&1&&id(this.T)}};
function Jj(a,b){var c=!(a.nd&16);a.nd=b;a.ub=a.ub&-5|b&4;if(a.Ua){var d=!(b&16);Gj(a.Ua,!!(b&8),d)&&Ij(a,Ej(a.Ua,!0));!c&&d&&Ej(a.Ua)&&Nj(a)}}function Ij(a,b){0<=b&&(a.$g=b,a.ub&=-2,a.ub|=256)}function Kj(a,b){a.oi=b;nb(a.sa,!!(b&2));b&1||id(a.T)}function Nj(a){a.Ka<wi?yj(a,1,4):a.nd&16||yj(a,1,120)}k.qn=function(a,b){B(this,a,null,b,"CMOS.ADDR",this.Fe,Ii);return this.Fe};k.Ho=function(a,b,c){B(this,a,b,c,"CMOS.ADDR",null,Ii);this.Fe=b;this.eh=b&128?0:128};
k.rn=function(a,b){var c=this.Fe&63,d=13>=c?Ji(this,c):this.ma[c];this.va(Ii|P)&&B(this,a,null,b,"CMOS.DATA["+q(c)+"]",d,!0);null!=b&&12==c&&(this.ma[c]&=15,d&128&&zj(this,8),d&64&&this.ma[11]&64&&Ui(this));return d};
k.Io=function(a,b,c){var d=this.Fe&63;this.va(Ii|P)&&B(this,a,b,c,"CMOS.DATA["+q(d)+"]",null,!0);a=b^this.ma[d];if(13>=d){if(c=b,10>d){var e=!1;this.ma[11]&4||(c=10*(c>>4)+(c&15),e=!0);if(4==d||5==d)e&&23<c&&(c+=48),this.ma[11]&2||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.ma[d]=c;11==d&&a&64&&b&64&&Ui(this)};k.In=function(a,b){B(this,a,null,b,"MFG_DATA",this.$f);return this.$f};k.Yo=function(a,b,c){B(this,a,b,c,"MFG_DATA");this.$f=b};
k.$o=function(a,b,c){B(this,a,b,c,"NMI");this.eh=b};k.Jo=function(a,b,c){B(this,a,b,c,"COPROC.CLEAR")};k.Ko=function(a,b,c){B(this,a,b,c,"COPROC.RESET")};
k.Zn=function(a){if(this.va(Oj)&&nd(this.ka,Ki,a)){var b=this.T.H>>8;od(this.T,a,function(a,d){return function(e){d=D(a.T)-d;var f,g=a.T.K&255,h=a.T.K>>8,n=a.T.K&255,m=a.T.K>>8;if(2==b||3==b)f=" CH(hour)="+v(h)+" CL(min)="+q(g)+" DH(sec)="+q(m);else if(4==b||5==b)f=" CX(year)="+v(a.T.J)+" DH(month)="+q(m)+" DL(day)="+q(n);pd(a.ka,Ki,e,d,f)}}(this,D(this.T)))}return!0};function si(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function bc(a,b){if(a.wi){void 0!==b?a.Mk=b:b=a.Mk&&a.T&&a.T.na.Fb;var c=Math.round(1193181/Dj(a,2));if(20>c||2E4<c)b=!1;b?a.yd?(a.yd.frequency.value=c,a.va(Pj)&&a.qb("speaker set to "+c+"hz",!0)):(a.yd=a.wi.createOscillator(),a.yd.type=1,a.yd.connect(a.wi.destination),a.yd.frequency.value=c,a.va(Pj)&&a.qb("speaker on at "+c+"hz",!0),a.yd.noteOn(0)):a.yd&&(a.yd.noteOff(0),a.yd.disconnect(),delete a.yd,a.va(Pj)&&a.qb("speaker off at "+c+"hz",!0))}else b&&a.qb("BEEP",Pj)}
var zi={0:function(a,b){return cj(this,0,0,a,b)},1:function(a,b){return ej(this,0,0,a,b)},2:function(a,b){return cj(this,0,1,a,b)},3:function(a,b){return ej(this,0,1,a,b)},4:function(a,b){return cj(this,0,2,a,b)},5:function(a,b){return ej(this,0,2,a,b)},6:function(a,b){return cj(this,0,3,a,b)},7:function(a,b){return ej(this,0,3,a,b)},8:function(a,b){return gj(this,0,a,b)},32:function(a,b){return tj(this,0,b)},33:function(a,b){return wj(this,0,b)},64:function(a,b){return Aj(this,0,b)},65:function(a,
b){return Aj(this,1,b)},66:function(a,b){return Aj(this,2,b)},67:M.prototype.Sn,129:function(a,b){return nj(this,0,2,a,b)},130:function(a,b){return nj(this,0,3,a,b)},131:function(a,b){return nj(this,0,1,a,b)},135:function(a,b){return nj(this,0,0,a,b)}},Bi={96:M.prototype.Kn,97:M.prototype.Ln,98:M.prototype.Mn,99:M.prototype.Nn},Di={96:M.prototype.$m,97:M.prototype.an,100:M.prototype.bn,112:M.prototype.qn,113:M.prototype.rn,128:M.prototype.In,132:function(a,b){return pj(this,0,a,b)},133:function(a,
b){return pj(this,1,a,b)},134:function(a,b){return pj(this,2,a,b)},136:function(a,b){return pj(this,3,a,b)},137:function(a,b){return nj(this,1,2,a,b)},138:function(a,b){return nj(this,1,3,a,b)},139:function(a,b){return nj(this,1,1,a,b)},140:function(a,b){return pj(this,4,a,b)},141:function(a,b){return pj(this,5,a,b)},142:function(a,b){return pj(this,6,a,b)},143:function(a,b){return nj(this,1,0,a,b)},160:function(a,b){return tj(this,1,b)},161:function(a,b){return wj(this,1,b)},192:function(a,b){return cj(this,
1,0,a,b)},194:function(a,b){return ej(this,1,0,a,b)},196:function(a,b){return cj(this,1,1,a,b)},198:function(a,b){return ej(this,1,1,a,b)},200:function(a,b){return cj(this,1,2,a,b)},202:function(a,b){return ej(this,1,2,a,b)},204:function(a,b){return cj(this,1,3,a,b)},206:function(a,b){return ej(this,1,3,a,b)},208:function(a,b){return gj(this,1,a,b)}},Ai={0:function(a,b,c){dj(this,0,0,a,b,c)},1:function(a,b,c){fj(this,0,0,a,b,c)},2:function(a,b,c){dj(this,0,1,a,b,c)},3:function(a,b,c){fj(this,0,1,
a,b,c)},4:function(a,b,c){dj(this,0,2,a,b,c)},5:function(a,b,c){fj(this,0,2,a,b,c)},6:function(a,b,c){dj(this,0,3,a,b,c)},7:function(a,b,c){fj(this,0,3,a,b,c)},8:function(a,b,c){this.wa(N|P)&&B(this,a,b,c,"DMA0.CMD");this.nb[0].qi=b},9:function(a,b,c){hj(this,0,a,b,c)},10:function(a,b,c){ij(this,0,a,b,c)},11:function(a,b,c){kj(this,0,a,b,c)},12:function(a,b,c){this.wa(N|P)&&B(this,a,b,c,"DMA0.RESET_FF");this.nb[0].ob=0},13:function(a,b,c){lj(this,0,a,b,c)},32:function(a,b,c){tj(this,0,b,c)},33:function(a,
b,c){wj(this,0,b,c)},64:function(a,b,c){Bj(this,0,b,c)},65:function(a,b,c){Bj(this,1,b,c)},66:function(a,b,c){Bj(this,2,b,c)},67:M.prototype.ip,129:function(a,b,c){nj(this,0,2,a,b,c)},130:function(a,b,c){nj(this,0,3,a,b,c)},131:function(a,b,c){nj(this,0,1,a,b,c)},135:function(a,b,c){nj(this,0,0,a,b,c)}},Ci={96:M.prototype.bp,97:M.prototype.cp,98:M.prototype.dp,99:M.prototype.ep,160:M.prototype.ap},Ei={96:M.prototype.vo,97:M.prototype.wo,100:M.prototype.uo,112:M.prototype.Ko,113:M.prototype.Lo,128:M.prototype.Zo,
132:function(a,b,c){pj(this,0,a,b,c)},133:function(a,b,c){pj(this,1,a,b,c)},134:function(a,b,c){pj(this,2,a,b,c)},136:function(a,b,c){pj(this,3,a,b,c)},137:function(a,b,c){nj(this,1,2,a,b,c)},138:function(a,b,c){nj(this,1,3,a,b,c)},139:function(a,b,c){nj(this,1,1,a,b,c)},140:function(a,b,c){pj(this,4,a,b,c)},141:function(a,b,c){pj(this,5,a,b,c)},142:function(a,b,c){pj(this,6,a,b,c)},143:function(a,b,c){nj(this,1,0,a,b,c)},160:function(a,b,c){tj(this,1,b,c)},161:function(a,b,c){wj(this,1,b,c)},192:function(a,
b,c){dj(this,1,0,a,b,c)},194:function(a,b,c){fj(this,1,0,a,b,c)},196:function(a,b,c){dj(this,1,1,a,b,c)},198:function(a,b,c){fj(this,1,1,a,b,c)},200:function(a,b,c){dj(this,1,2,a,b,c)},202:function(a,b,c){fj(this,1,2,a,b,c)},204:function(a,b,c){dj(this,1,3,a,b,c)},206:function(a,b,c){fj(this,1,3,a,b,c)},208:function(a,b,c){this.wa(N|P)&&B(this,a,b,c,"DMA1.CMD");this.nb[1].qi=b},210:function(a,b,c){hj(this,1,a,b,c)},212:function(a,b,c){ij(this,1,a,b,c)},214:function(a,b,c){kj(this,1,a,b,c)},216:function(a,
b,c){this.wa(N|P)&&B(this,a,b,c,"DMA1.RESET_FF");this.nb[1].ob=0},218:function(a,b,c){lj(this,1,a,b,c)}};Ka(function(){for(var a=A(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new M(d);bb(d,c);Li(d)}});
function Pj(a){y.call(this,"ROM",a,Pj);this.Nb=null;this.pk=a.addr;this.ai=a.size;this.Gm=a.alias;this.Lg=a.file;this.Wk=a.notify;if(this.Lg){a=this.Lg;var b=ha(this.Lg);"json"!=b&&"hex"!=b&&(a=ua()+"/api/v1/dump?file="+this.Lg+"&format=bytes&decimal=true");ta(a,!0,null,this,Pj.prototype.po)}}Xa(y,Pj);Pj.prototype.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;Qj(this)};Pj.prototype.ec=function(){this.ki&&(this.ka&&Rj(this.ka,this.pk,this.ai,this.ki),delete this.ki);return!0};Pj.prototype.dc=function(){return!0};
Pj.prototype.po=function(a,b,c){if(c)this.Ia("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.Nb=e;else if(f)for(this.Nb=Array(4*f.length),c=b=0;b<f.length;b++)this.Nb[c++]=f[b]&255,this.Nb[c++]=f[b]>>8&255,this.Nb[c++]=f[b]>>16&255,this.Nb[c++]=f[b]>>24&255;else this.Nb=d;this.ki=d.symbols;if(!this.Nb.length){x("Empty ROM: "+a);return}if(1==this.Nb.length){x(this.Nb[0]);return}}catch(g){this.Ia("ROM data error: "+
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.Nb=Array(a.length),d=0;d<a.length;d++)this.Nb[d]=parseInt(a[d],16);Qj(this)}};function Qj(a){if(!fb(a))if(!a.Lg)a.Xa();else if(a.Nb&&a.sa){if(a.Nb.length!=a.ai)gb(a,"ROM size (0x"+p(a.Nb.length)+") does not match specified size (0x"+p(a.ai)+")");else if(Sj(a,a.pk)&&Sj(a,a.Gm)){if(a.Wk){var b=Za(a.Wk,a.id);b&&("ega"==b.Ka&&Tj(b,a.Nb,[8752,12640],8),b.Xa())}delete a.Nb}a.Xa()}}
function Sj(a,b){if(null==b)return!0;if(ob(a.sa,b,a.ai,!0)){for(var c=0;c<a.Nb.length;c++)tb(a.sa,b+c,a.Nb[c]);return!0}return!1}Ka(function(){for(var a=A(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Pj(d);bb(d,c)}});function Uj(a){y.call(this,"RAM",a,Uj);this.$g=a.addr;this.Ud=a.size;this.Vm=a.test;this.Tm=!!this.Ud;this.th=!1}Xa(y,Uj);Uj.prototype.vc=function(a,b,c){this.sa=b;this.T=c;this.oa=ib(a,"ChipSet");this.Xa()};Uj.prototype.ec=function(a,b){b||this.reset();return!0};
Uj.prototype.dc=function(){return!0};Uj.prototype.reset=function(){if(!this.$g&&!this.Tm&&this.oa){var a=1024*Pi(this.oa);this.Ud&&a!=this.Ud&&(qb(this.sa,this.$g,this.Ud),this.th=!1);this.Ud=a}!this.th&&this.Ud&&ob(this.sa,this.$g,this.Ud)&&(this.th=!0,this.status(Math.floor(this.Ud/1024)+"Kb"));if(this.th){if(this.Vm||ub(this.sa,1138,4660),this.oa&&(a=this.oa,a.ma)){var b=1048576>this.$g?21:23,c=a.ma[b]|a.ma[b+1]<<8,c=c+(this.Ud>>10);a.ma[b]=c&255;a.ma[b+1]=c>>8;Ti(a)}}else x("No RAM allocated")};
Ka(function(){for(var a=A(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Uj(d);bb(d,c)}});function Vj(a){y.call(this,"Keyboard",a,Vj,Wj);this.Kk=!1;this.ji={};this.ho=250;this.io=100;this.Xa()}Xa(y,Vj);
var Q={Ip:1,Jp:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Fp:65,Gp:66,ik:67,Am:68,E:69,Mp:70,Pp:71,jk:72,Rp:73,Sp:74,Tp:75,Up:76,Vp:77,fi:78,Xp:79,Yp:80,$p:81,lk:82,dq:83,nq:84,rq:85,sq:86,tq:87,vq:88,wq:89,xq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,yq:97,zq:98,Bq:99,Cq:100,Dq:101,Eq:102,Fq:103,Gq:104,Hq:105,Iq:106,Jq:107,Kq:108,
Lq:109,Mq:110,Oq:111,Pq:112,Qq:113,Rq:114,Sq:115,Tq:116,Uq:117,Vq:118,Wq:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Xj={16:2,17:8,18:32,20:256,144:512,145:1024},Yj={"caps-lock":256,"num-lock":512,"scroll-lock":1024},Zj={tab:1009,esc:1027,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},ak={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,
a,b,c)},4:function(a,b,c){dj(this,0,2,a,b,c)},5:function(a,b,c){fj(this,0,2,a,b,c)},6:function(a,b,c){dj(this,0,3,a,b,c)},7:function(a,b,c){fj(this,0,3,a,b,c)},8:function(a,b,c){this.va(N|P)&&B(this,a,b,c,"DMA0.CMD",null,!0);this.sb[0].pi=b},9:function(a,b,c){hj(this,0,a,b,c)},10:function(a,b,c){ij(this,0,a,b,c)},11:function(a,b,c){kj(this,0,a,b,c)},12:function(a,b,c){lj(this,0,a,b,c)},13:function(a,b,c){mj(this,0,a,b,c)},32:function(a,b,c){uj(this,0,b,c)},33:function(a,b,c){xj(this,0,b,c)},64:function(a,
b,c){Cj(this,0,b,c)},65:function(a,b,c){Cj(this,1,b,c)},66:function(a,b,c){Cj(this,2,b,c)},67:M.prototype.hp,129:function(a,b,c){oj(this,0,2,a,b,c)},130:function(a,b,c){oj(this,0,3,a,b,c)},131:function(a,b,c){oj(this,0,1,a,b,c)},135:function(a,b,c){oj(this,0,0,a,b,c)}},Ci={96:M.prototype.ap,97:M.prototype.bp,98:M.prototype.cp,99:M.prototype.dp,160:M.prototype.$o},Ei={96:M.prototype.so,97:M.prototype.to,100:M.prototype.ro,112:M.prototype.Ho,113:M.prototype.Io,128:M.prototype.Yo,132:function(a,b,c){qj(this,
0,a,b,c)},133:function(a,b,c){qj(this,1,a,b,c)},134:function(a,b,c){qj(this,2,a,b,c)},136:function(a,b,c){qj(this,3,a,b,c)},137:function(a,b,c){oj(this,1,2,a,b,c)},138:function(a,b,c){oj(this,1,3,a,b,c)},139:function(a,b,c){oj(this,1,1,a,b,c)},140:function(a,b,c){qj(this,4,a,b,c)},141:function(a,b,c){qj(this,5,a,b,c)},142:function(a,b,c){qj(this,6,a,b,c)},143:function(a,b,c){oj(this,1,0,a,b,c)},160:function(a,b,c){uj(this,1,b,c)},161:function(a,b,c){xj(this,1,b,c)},192:function(a,b,c){dj(this,1,0,
a,b,c)},194:function(a,b,c){fj(this,1,0,a,b,c)},196:function(a,b,c){dj(this,1,1,a,b,c)},198:function(a,b,c){fj(this,1,1,a,b,c)},200:function(a,b,c){dj(this,1,2,a,b,c)},202:function(a,b,c){fj(this,1,2,a,b,c)},204:function(a,b,c){dj(this,1,3,a,b,c)},206:function(a,b,c){fj(this,1,3,a,b,c)},208:function(a,b,c){this.va(N|P)&&B(this,a,b,c,"DMA1.CMD",null,!0);this.sb[1].pi=b},210:function(a,b,c){hj(this,1,a,b,c)},212:function(a,b,c){ij(this,1,a,b,c)},214:function(a,b,c){kj(this,1,a,b,c)},216:function(a,
b,c){lj(this,1,a,b,c)},218:function(a,b,c){mj(this,1,a,b,c)},240:M.prototype.Jo,241:M.prototype.Ko};Ka(function(){for(var a=A(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new M(d);bb(d,c);Li(d)}});
function Qj(a){y.call(this,"ROM",a,Qj);this.Mb=null;this.nk=a.addr;this.$h=a.size;this.Dm=a.alias;this.Jg=a.file;this.Tk=a.notify;if(this.Jg){a=this.Jg;var b=ha(this.Jg);"json"!=b&&"hex"!=b&&(a=ua()+"/api/v1/dump?file="+this.Jg+"&format=bytes&decimal=true");ta(a,!0,null,this,Qj.prototype.mo)}}Xa(y,Qj);Qj.prototype.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;Rj(this)};Qj.prototype.ec=function(){this.ji&&(this.ka&&Sj(this.ka,this.nk,this.$h,this.ji),delete this.ji);return!0};Qj.prototype.dc=function(){return!0};
Qj.prototype.mo=function(a,b,c){if(c)this.Ia("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.Mb=e;else if(f)for(this.Mb=Array(4*f.length),c=b=0;b<f.length;b++)this.Mb[c++]=f[b]&255,this.Mb[c++]=f[b]>>8&255,this.Mb[c++]=f[b]>>16&255,this.Mb[c++]=f[b]>>24&255;else this.Mb=d;this.ji=d.symbols;if(!this.Mb.length){x("Empty ROM: "+a);return}if(1==this.Mb.length){x(this.Mb[0]);return}}catch(g){this.Ia("ROM data error: "+
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.Mb=Array(a.length),d=0;d<a.length;d++)this.Mb[d]=parseInt(a[d],16);Rj(this)}};function Rj(a){if(!fb(a))if(!a.Jg)a.Va();else if(a.Mb&&a.sa){if(a.Mb.length!=a.$h)gb(a,"ROM size (0x"+p(a.Mb.length)+") does not match specified size (0x"+p(a.$h)+")");else if(Tj(a,a.nk)&&Tj(a,a.Dm)){if(a.Tk){var b=$a(a.Tk,a.id);b&&("ega"==b.Ka&&Uj(b,a.Mb,[8752,12640],8),b.Va())}delete a.Mb}a.Va()}}
function Tj(a,b){if(null==b)return!0;if(ob(a.sa,b,a.$h,!0)){for(var c=0;c<a.Mb.length;c++)tb(a.sa,b+c,a.Mb[c]);return!0}return!1}Ka(function(){for(var a=A(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Qj(d);bb(d,c)}});function Vj(a){y.call(this,"RAM",a,Vj);this.Yg=a.addr;this.Td=a.size;this.Sm=a.test;this.Qm=!!this.Td;this.rh=!1}Xa(y,Vj);Vj.prototype.vc=function(a,b,c){this.sa=b;this.T=c;this.pa=ib(a,"ChipSet");this.Va()};Vj.prototype.ec=function(a,b){b||this.reset();return!0};
Vj.prototype.dc=function(){return!0};Vj.prototype.reset=function(){if(!this.Yg&&!this.Qm&&this.pa){var a=1024*Pi(this.pa);this.Td&&a!=this.Td&&(qb(this.sa,this.Yg,this.Td),this.rh=!1);this.Td=a}!this.rh&&this.Td&&ob(this.sa,this.Yg,this.Td)&&(this.rh=!0,this.status(Math.floor(this.Td/1024)+"Kb"));if(this.rh){if(this.Sm||ub(this.sa,1138,4660),this.pa&&(a=this.pa,a.ma)){var b=1048576>this.Yg?21:23,c=a.ma[b]|a.ma[b+1]<<8,c=c+(this.Td>>10);a.ma[b]=c&255;a.ma[b+1]=c>>8;Ti(a)}}else x("No RAM allocated")};
Ka(function(){for(var a=A(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Vj(d);bb(d,c)}});function Wj(a){y.call(this,"Keyboard",a,Wj,Xj);this.Hk=!1;this.ii={};this.co=250;this.eo=100;this.Va()}Xa(y,Wj);
var Q={Hp:1,Ip:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Ep:65,Fp:66,gk:67,xm:68,E:69,Lp:70,Op:71,hk:72,Qp:73,Rp:74,Sp:75,Tp:76,Up:77,ei:78,Wp:79,Xp:80,Zp:81,jk:82,cq:83,mq:84,qq:85,rq:86,sq:87,uq:88,vq:89,wq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,xq:97,yq:98,Aq:99,Bq:100,Cq:101,Dq:102,Eq:103,Fq:104,Gq:105,Hq:106,Iq:107,Jq:108,
Kq:109,Lq:110,Nq:111,Oq:112,Pq:113,Qq:114,Rq:115,Sq:116,Tq:117,Uq:118,Vq:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Yj={16:2,17:8,18:32,20:256,144:512,145:1024},Zj={"caps-lock":256,"num-lock":512,"scroll-lock":1024},ak={tab:1009,esc:1027,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},bk={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,
bs:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,
"num-down":80,"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},T={1027:1};T[Q["1"]]=2;T[Q["!"]]=10754;T[Q["2"]]=3;T[Q["@"]]=10755;T[Q["3"]]=4;T[Q["#"]]=10756;T[Q["4"]]=5;T[Q.$]=10757;T[Q["5"]]=6;T[Q["%"]]=10758;T[Q["6"]]=7;T[Q["^"]]=10759;
T[Q["7"]]=8;T[Q["&"]]=10760;T[Q["8"]]=9;T[Q["*"]]=10761;T[Q["9"]]=10;T[Q["("]]=10762;T[Q["0"]]=11;T[Q[")"]]=10763;T[Q["-"]]=12;T[Q._]=10764;T[Q["="]]=13;T[Q["+"]]=10765;T[1008]=14;T[1009]=15;T[113]=16;T[81]=10768;T[119]=17;T[87]=10769;T[101]=18;T[69]=10770;T[114]=19;T[82]=10771;T[116]=20;T[84]=10772;T[121]=21;T[89]=10773;T[117]=22;T[85]=10774;T[105]=23;T[73]=10775;T[111]=24;T[79]=10776;T[112]=25;T[80]=10777;T[Q["["]]=26;T[Q["{"]]=10778;T[Q["]"]]=27;T[Q["}"]]=10779;T[13]=28;T[1017]=29;T[97]=30;
T[65]=10782;T[115]=31;T[83]=10783;T[100]=32;T[68]=10784;T[102]=33;T[70]=10785;T[103]=34;T[71]=10786;T[104]=35;T[72]=10787;T[106]=36;T[74]=10788;T[107]=37;T[75]=10789;T[108]=38;T[76]=10790;T[Q[";"]]=39;T[Q[":"]]=10791;T[Q["'"]]=40;T[Q['"']]=10792;T[Q["`"]]=41;T[Q["~"]]=10793;T[1016]=42;T[Q["\\"]]=43;T[Q["|"]]=10795;T[122]=44;T[90]=10796;T[120]=45;T[88]=10797;T[99]=46;T[67]=10798;T[118]=47;T[86]=10799;T[98]=48;T[66]=10800;T[110]=49;T[78]=10801;T[109]=50;T[77]=10802;T[Q[","]]=51;T[Q["<"]]=10803;
T[Q["."]]=52;T[Q[">"]]=10804;T[Q["/"]]=53;T[Q["?"]]=10805;T[3016]=54;T[1018]=56;T[Q[" "]]=57;T[1020]=58;T[1112]=59;T[1113]=60;T[1114]=61;T[1115]=62;T[1116]=63;T[1117]=64;T[1118]=65;T[1119]=66;T[1120]=67;T[1121]=68;T[1144]=69;T[1145]=70;T[1036]=71;T[1038]=72;T[1033]=73;T[1037]=75;T[1039]=77;T[1035]=79;T[1040]=80;T[1034]=81;T[1045]=82;T[1046]=83;T[1122]=87;T[1123]=88;T[4003]=7470;T[4063]=7494;T[4081]=3677523;k=Vj.prototype;
k.Ib=function(a,b,c){var d=this,e=a+"-"+b;if(void 0===this.xa[e])switch(b){case "kbd":return this.xa[e]=c,c.onkeydown=function(a){return bk(d,a,!0)},c.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:d.eb&64?d.eb&=-65:d.eb&40?b=!1:(d.Kk&&a==Q["`"]&&(a=27),b=!ck(d,a));return b},c.onkeyup=function(a){return bk(d,a,!1)},!0;case "caps-lock":return this.xa[e]=c,c.onclick=function(){d.T&&d.T.Yc();ck(d,1020,!0)},!0;case "num-lock":return this.xa[e]=c,c.onclick=function(){d.T&&
d.T.Yc();ck(d,1144,!0)},!0;case "scroll-lock":return this.xa[e]=c,c.onclick=function(){d.T&&d.T.Yc();ck(d,1145,!0)},!0;default:if(void 0!==Zj[b]&&"button"==a)return this.xa[e]=c,c.onclick=function(a,b,c){return function(){a.T&&a.T.Yc();dk(a,c);return!ck(a,c)}}(this,b,Zj[b]),!0;if(void 0!==ak[b])return this.xa[e]=c,a=function(a,b,c){return function(){ek(a,c)}}(this,b,ak[b]),b=function(a,b,c){return function(){ek(a,c)}}(this,b,ak[b]|128),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=
a,c.onmouseup=c.onmouseout=b),!0}return!1};k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;this.oa=ib(a,"ChipSet")};k.Xa=function(){Ca("iOS");this.Nk=Ca("Mobi");this.jb("mobile keyboard support: "+(this.Nk?"true":"false"));return y.prototype.Xa.call(this)};function Kj(a){a.jb("keyboard reset",P);a.Ec=[170];a.oa&&Mj(a.oa)}function Fj(a,b,c){var d=!1;a.Ii!==c&&(a.Ii=a.Mi=c);a.wh!==b&&(a.wh=b)&&!a.Mi&&Lj(a);a.wh&&a.Mi&&(Kj(a),a.Mi=!1,d=!0);return d}
function Dj(a,b){var c=0;a.Ec.length&&(c=a.Ec[0],a.wa()&&a.jb("scan code 0x"+q(c)+" delivered"),b&&Lj(a));return c}function Lj(a,b){0<a.Ec.length&&(b?a.Ec=[]:(a.Ec.shift(),0<a.Ec.length&&a.oa&&Mj(a.oa)))}k.ec=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};k.dc=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.qe();this.eb=0;this.Ec=[];if(this.yd)for(var a in this.yd)da(a)||this.yd[a]&&clearTimeout(this.yd[a]);this.yd=[];this.im=this.Ze=0};
k.save=function(){var a=new td(this);a.set(0,this.dk());return a.data()};k.restore=function(a){return this.qe(a[0])};k.qe=function(a){var b=0;void 0===a&&(a=[]);this.Ii=a[b++];this.wh=a[b];return!0};k.dk=function(){var a=0,b=[];b[a++]=this.Ii;b[a]=this.wh;return b};
function ek(a,b){var c=b&127,d=c==b;if(a.Ec)if(20>a.Ec.length){if(!(!d&&!a.ji[c]||d&&a.ji[c])){a.ji[c]=d;a.wa()&&a.jb("scan code 0x"+q(b)+" buffered");a.Ec.push(b);1==a.Ec.length&&a.oa&&Mj(a.oa);for(var e in ak)if(ak[e]==c){(c=a.xa["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),a.jb("scan code buffer overflow")}function fk(a,b){var c=b?a.io:a.ho;a.T&&a.T.da.sd&&(c/=a.T.da.sd);return c}
function gk(a,b){!a.Ze||void 0!==b&&b==a.Ze||(clearTimeout(a.yd[a.Ze]),hk(a,a.Ze,!1))}function ik(a,b){var c,d;for(d in Yj){var e="led-"+d,f=Yj[d];b&&b!=f||!(c=a.xa[e])||(c.style.backgroundColor=a.eb&f?"#00ff00":"#000000")}}function dk(a,b){var c;if(T[b]){var d=Math.floor(b/1E3)&2,e=Xj[Math.floor(b%1E3)]||0;e&&(d&&(e>>=1),e&1792&&(c=!(a.eb&e)),a.eb&=~e,c&&(a.eb|=e),ik(a,e))}}
function bk(a,b,c){var d,e=!c,f=b.keyCode,g=f;c&&(a.im=f);if(T[f+1E3]){var g=g+1E3,h=Xj[f]||0;if(h)2==b.location&&(h>>=1,g+=2E3),a.eb&=~h,c&&(a.eb|=h),ik(a,h),20==f||144==f||145==f?d=ck(a,g):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.eb&40)&&(g=4063),d=c?!ck(a,g):!1}else 91==f?(a.eb&=-65,c&&(a.eb|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(g+=32):d=!0;e&&(a.eb&=-65,a.Nk||f!=a.im||gk(a));void 0===d&&(d=!hk(a,g,c));return d}
function ck(a,b,c){var d=!1;gk(a,b);c&&dk(a,b);hk(a,b,!0)&&(c=!1,a.yd[b]&&(clearTimeout(a.yd[b]),c=!0),c=fk(a,c),a.yd[a.Ze=b]=setTimeout(function(a){return function(){hk(a,b,!1)}}(a),c),d=!0);return d}
function hk(a,b,c){var d=!1;c||(a.yd[b]=null,a.Ze==b&&(a.Ze=0));var e=T[b]||T[b+1E3];if(void 0!==e){14==e&&40==(a.eb&40)&&(e=83);var d=[],f=e&255;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.eb&3||a.eb&256&&b||(g=h):29==h?a.eb&12||(g=h):56==h?a.eb&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)ek(a,d[c]);d=!0}return d}
Ka(function(){for(var a=A(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Vj(d);bb(d,c)}});
function U(a,b,c,d){y.call(this,"Video",a,U,jk);this.Ka=a.model;this.cd=0;"ega"==this.Ka&&(this.qm=a.switches,this.cd=a.memory||0);this.vd=a.mode;if(void 0===this.vd||void 0===kk[this.vd])this.vd=lk;this.Kh=a.charCols;this.cj=a.charRows;if(void 0===this.Kh||void 0===this.cj)this.Kh=kk[this.vd][0],this.cj=kk[this.vd][1];this.Gd=a.screenWidth;this.me=a.screenHeight;this.Um=a.scale;this.Sm=12<=Math.round(this.Gd/this.Kh);this.Wm=a.touchScreen;this.hb=b;this.dd=c;this.vm=d;this.re=null;this.Rm=a.autoLock;
this.Ya=this.Wb=0;this.$d=[];this.Bd=Array(16);this.Ji=!1;var e=this;b&&(b.onfocus=function(){e.Ji=!0},b.onblur=function(){e.Ji=!1},b.yf=b.requestPointerLock||b.mozRequestPointerLock||b.webkitRequestPointerLock,b.wm=b.exitPointerLock||b.mozExitPointerLock||b.webkitExitPointerLock,b=function(){e.Fg(document.pointerLockElement===e.hb||document.mozPointerLockElement===e.hb||document.webkitPointerLockElement===e.hb)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",b,!1):
"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",b,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",b,!1));if(a=a.fontROM)"json"!=ha(a)&&(a=ua()+"/api/v1/dump?file="+a+"&format=bytes"),ta(a,!0,null,this,this.qo)}Xa(y,U);
var mk={2:{fj:15700,ej:208,Tj:85,Uj:96},3:{fj:18432,ej:364,Tj:85,Uj:96},4:{fj:21850,ej:364,Tj:85,Uj:96}},nk={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]},lk=7,kk=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];kk[lk]=[80,25,1,0,1];kk[13]=[320,200,16];kk[14]=[640,200,16];kk[15]=[640,350,16];kk[16]=[640,350,16];kk[0]=kk[1];kk[2]=kk[3];kk[5]=kk[4];var ok=Array(5);ok[0]=[0,0,0,255];
ok[1]=[127,192,127,255];ok[2]=[127,192,127,255];ok[3]=[127,255,127,255];ok[4]=[127,255,127,255];var pk=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],V=Array(16);V[0]=[0,0,0,255];V[1]=[0,0,170,255];V[2]=[0,170,0,255];V[3]=[0,170,170,255];V[4]=[170,0,0,255];V[5]=[170,0,170,255];V[6]=[170,85,0,255];V[7]=[170,170,170,255];V[8]=[85,85,85,255];V[9]=[85,85,255,255];V[10]=[85,255,85,255];V[11]=[85,255,255,255];V[12]=[255,85,85,255];V[13]=[255,85,255,255];V[14]=[255,255,85,255];V[15]=[255,255,255,255];
var qk=[2,4,6],rk=[3,5,7],sk=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],tk=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],uk=[0];uk[128]=1;uk[32768]=2;uk[32896]=3;uk[8388608]=4;uk[8388736]=5;uk[8421376]=6;uk[8421504]=7;uk[2147483648]=8;uk[2147483776]=9;uk[2147516416]=10;uk[2147516544]=11;uk[2155872256]=12;uk[2155872384]=13;uk[2155905024]=14;uk[2155905152]=15;
function vk(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=wk[b],f=a.se||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(xk)];this.ka=a.ka;this.type=e[0];this.port=e[1];this.pe=b;this.Ya=e[2];this.Wb=e[3];this.cd=d||e[4];65536<=this.cd&&720896<=this.Ya&&(this.Wb=Math.min(this.cd>>2,32768));this.ed=c[0];this.Lc=c[1];this.nf=c[2];this.Lf=c[3];this.uc=c[4]&255;this.Dh=c[4]>>8&255;this.kc=c[5];this.Wi=xk;this.ah=yk;if(5==b){this.Wi=zk;this.ah=Ak;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.Ya,this.Wb,this.cd],Array(this.cd>>2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.qd=b[0];this.Kd=b[1];this.Xd=b[2];this.mi=Bk;this.ci=b[3];this.og=b[4];this.Ch=b[5];this.Md=b[6];this.Sf=b[7];this.oi=Ck;this.Ri=b[8];this.Si=b[9];this.Ld=b[10];this.Be=b[11];this.ni=Dk;this.Lb=b[12];d=b[13];"number"==typeof d&&(d=[this.Ya,this.Wb,d]);this.Ya=d[0];this.Wb=d[1];d=this.cd>>2;if((this.md=b[14])&&this.md.length<d){for(var e=this.md,g=0,h=Array(d),n=0;n<e.length-1;){for(var l=
e[n++],s=e[n++];l--;)h[g]=s,g+=2;g==d&&(g=1)}this.md=h}this.$h(b[15]);this.Qj=b[16];this.rb=b[17];this.ud=b[18];this.yb=b[19];this.Ph=b[20];this.ve=b[21];this.Xe=b[22];this.Yi=b[23];this.Zi=b[24]}f=mk[f]||mk[3];this.$i=a.T.da.td/f.fj|0;this.lo=this.$i*f.Tj/100|0;this.dl=this.$i*f.ej;this.no=this.dl*f.Uj/100|0;this.gj=null==c[7]?0:c[7]}}
var xk=18,zk=25,yk="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(" "),Ak="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(" "),
Bk="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVRSCAN PLANES HORZPAN".split(" "),Ck=["RESET","CLK","MAPMASK","CHARMAP","MODE"],Dk="SRESET ESRESET COLRCMP DATAROT READMAP MODE MISC COLRDC BITMASK".split(" ");function Jk(a){return this.yc(a)|this.yc(a+1)<<8}function Kk(a,b){this.Mc(a,b&255);this.Mc(a+1,b>>8&255)}
var Lk=[,,function(a){a+=this.offset;return(this.ga.Lb=this.ya[a])>>this.ga.Qj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.ya[b]>>8:this.ya[b])&255}];Lk[16]=function(a){a+=this.offset;a=this.ya[a];for(var b=this.ga.Yi&this.ga.Zi,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Lk[512]=function(a,b){var c=a+this.offset,d;d=this.ya[c]&~this.ga.rb|(b|b<<8|b<<16|b<<24)&this.ga.rb;d=d&this.ga.yb|this.ga.Lb&~this.ga.yb;this.ya[c]!=d&&(this.ya[c]=d,this.vb=!0)};
Lk[1024]=function(a,b){var c=a+this.offset;b=b>>this.ga.ud|b<<8-this.ga.ud&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ga.ve|this.ga.Xe;d=d&this.ga.rb|this.ya[c]&~this.ga.rb;d=d&this.ga.yb|this.ga.Lb&~this.ga.yb;this.ya[c]!=d&&(this.ya[c]=d,this.vb=!0)};
Lk[1536]=function(a,b){var c=a+this.offset;b=b>>this.ga.ud|b<<8-this.ga.ud&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ga.ve|this.ga.Xe;d&=this.ga.Lb;d=d&this.ga.rb|this.ya[c]&~this.ga.rb;d=d&this.ga.yb|this.ga.Lb&~this.ga.yb;this.ya[c]!=d&&(this.ya[c]=d,this.vb=!0)};
Lk[2560]=function(a,b){var c=a+this.offset;b=b>>this.ga.ud|b<<8-this.ga.ud&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ga.ve|this.ga.Xe;d|=this.ga.Lb;d=d&this.ga.rb|this.ya[c]&~this.ga.rb;d=d&this.ga.yb|this.ga.Lb&~this.ga.yb;this.ya[c]!=d&&(this.ya[c]=d,this.vb=!0)};
Lk[3584]=function(a,b){var c=a+this.offset;b=b>>this.ga.ud|b<<8-this.ga.ud&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ga.ve|this.ga.Xe;d^=this.ga.Lb;d=d&this.ga.rb|this.ya[c]&~this.ga.rb;d=d&this.ga.yb|this.ga.Lb&~this.ga.yb;this.ya[c]!=d&&(this.ya[c]=d,this.vb=!0)};Lk[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ga.rb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.ya[d]&~c;c=c&this.ga.yb|this.ga.Lb&~this.ga.yb;this.ya[d]!=c&&(this.ya[d]=c,this.vb=!0)};
Lk[4096]=function(a){a+=this.offset;var b=this.ya[a]&~this.ga.rb|this.ga.Lb&this.ga.rb;this.ya[a]!=b&&(this.ya[a]=b,this.vb=!0)};Lk[8192]=function(a,b){var c=a+this.offset,d=tk[b&15],d=d&this.ga.rb|this.ya[c]&~this.ga.rb,d=d&this.ga.yb|this.ga.Lb&~this.ga.yb;this.ya[c]!=d&&(this.ya[c]=d,this.vb=!0)};Lk[24576]=function(a,b){var c=a+this.offset,d=tk[b&15],d=d&this.ga.Lb,d=d&this.ga.rb|this.ya[c]&~this.ga.rb,d=d&this.ga.yb|this.ga.Lb&~this.ga.yb;this.ya[c]!=d&&(this.ya[c]=d,this.vb=!0)};
Lk[40960]=function(a,b){var c=a+this.offset,d=tk[b&15],d=d|this.ga.Lb,d=d&this.ga.rb|this.ya[c]&~this.ga.rb,d=d&this.ga.yb|this.ga.Lb&~this.ga.yb;this.ya[c]!=d&&(this.ya[c]=d,this.vb=!0)};Lk[57344]=function(a,b){var c=a+this.offset,d=tk[b&15],d=d^this.ga.Lb,d=d&this.ga.rb|this.ya[c]&~this.ga.rb,d=d&this.ga.yb|this.ga.Lb&~this.ga.yb;this.ya[c]!=d&&(this.ya[c]=d,this.vb=!0)};
function Mk(a){var b=[];if(void 0!==a.pe){b[0]=a.ed;b[1]=a.Lc;b[2]=a.nf;b[3]=a.Lf;b[4]=a.uc|a.Dh<<8;b[5]=a.kc;if(5==a.pe){var c=[];c[0]=a.qd;c[1]=a.Kd;c[2]=a.Xd;c[3]=a.ci;c[4]=a.og;c[5]=a.Ch;c[6]=a.Md;c[7]=a.Sf;c[8]=a.Ri;c[9]=a.Si;c[10]=a.Ld;c[11]=a.Be;c[12]=a.Lb;c[13]=[a.Ya,a.Wb,a.cd];var d;a:if(d=a.md){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 n=d[h],l=h+2;l<d.length&&d[l]===n;)l+=2;f[e++]=l-h>>1;f[e++]=n;h=l}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.Ih;c[16]=a.Qj;c[17]=a.rb;c[18]=a.ud;c[19]=a.yb;c[20]=a.Ph;c[21]=a.ve;c[22]=a.Xe;c[23]=a.Yi;c[24]=a.Zi;b[6]=c}b[7]=a.gj}return b}function Nk(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 n=e[g],f=f+(b+"["+q(g)+"]: "+(n+" ".substr(0,h-n.length))+q(d[g])+(g===c?"*":""))}a.ka.aa(f)}else a.ka.aa(b+": "+q(c))}
vk.prototype.$h=function(a){if(null!=a&&a!=this.Ih){var b=a&255,c=Lk[b];c||b&1&&(c=Lk[1]);var b=a&65280,d=Lk[b];d||b&256&&(d=Lk[256]);this.Xf||(this.Xf=[null,Jk,null,Kk]);this.Xf[0]=c;this.Xf[2]=d;this.Ih=a}};var wk=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=U.prototype;
k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;xb(b,this,Ok);Bb(b,this,Pk);"ega"==this.Ka&&(xb(b,this,Qk),Bb(b,this,Rk));if(d){var e=this;Fi(d,jk,function(a){if(e.Ja)if(a){var b=e.Ja;if(b.md){a=ea(a);a=void 0!==a?a-b.Ya:b.op||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var f=p(b.Ya+a)+":",r=0;8>r&&a<b.md.length;r++)var t=b.md[a++],f=f+(" "+p(t));c&&(c+="\n");c+=f}c&&b.ka.aa(c);b.op=a}else b.ka.aa("no buffer")}else{e.ka.aa("BIOSMODE: "+q(e.Rd));b=e.Ja;Nk(b,"CRTC",b.uc,b.kc,b.ah);if(1==b.pe||3==
b.pe)Nk(b," MODEREG",b.Lc),Nk(b," STATUS1",b.Lf);3==b.pe&&Nk(b," COLOR",b.nf);5==b.pe&&(b.ka.aa(" ATCDATA: "+b.qd),Nk(b," ATC",b.Kd,b.Xd,b.mi),Nk(b," GRC",b.Ld,b.Be,b.ni),Nk(b," SEQ",b.Md,b.Sf,b.oi),Nk(b," FEAT",b.Ch),Nk(b," MISC",b.og),Nk(b," STATUS0",b.ci),Nk(b," LATCHES",b.Lb),b.ka.aa(" ACCESS: "+u(b.Ih)),b.ka.aa("Use 'dump video buffer' to dump video memory"))}else e.ka.aa("no active video card")})}if((this.Ua=ib(a,"Keyboard"))&&this.hb){for(var f in this.xa)0<f.indexOf("lock")&&this.Ua.Ib("led",
f,this.xa[f]);this.Ua.Ib(this.vm?"textarea":"canvas","kbd",this.vm||this.hb)}this.dh=9;(this.oa=ib(a,"ChipSet"))&&this.qm&&(this.dh=si(this.qm,this.dh));this.Ua&&this.Wm&&Sk(this)};k.Ib=function(a,b,c){var d=this;if(!this.xa[b])switch(this.xa[b]=c,b){case "lockPointer":return this.wp=c.textContent,this.hb&&this.hb.yf?c.onclick=function(){d.yf(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){Pb(d,!0)},!0}return!1};k.Yc=function(){this.hb&&this.hb.focus()};
k.yf=function(a){if(this.hb)if(a){if(this.hb.yf)return this.hb.yf(),this.re.Fg(!0),!0}else if(this.hb.wm)return this.hb.wm(),this.re.Fg(!1),!0;return!1};k.Fg=function(a){this.re&&(this.re.Fg(a),this.Ua&&(this.Ua.Kk=a));var b=this.xa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.wp)};
function Sk(a){var b=a.hb;b&&!a.Hi&&(b.addEventListener("touchstart",function(b){Tk(a,b)},!1),b.addEventListener("touchmove",function(b){Tk(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.Hi=!0)}
function Tk(a,b){a.Ji&&b.preventDefault();var c=0,d=0,e=a.hb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.Gd/a.hb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.Gd/3)|0;d=a.me/a.hb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.me/3)|0;1!=d?d?ck(a.Ua,40,!0):ck(a.Ua,38,!0):1!=c&&(c?ck(a.Ua,39,!0):ck(a.Ua,37,!0))}k.ec=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.dc=function(a){return a&&this.save?this.save():!0};
k.reset=function(){var a=!0,b=0;this.oa&&(b=Qi(this.oa));var c=!1;if(this.Ka)switch(this.Ka){case "ega":var c=!0,d=nk[this.dh];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.se!==b&&(this.se=b,a=!0);this.Ja=null;this.bd=this.ui=new vk(this,1);this.Ob=this.ph=new vk(this,3);c?(this.pa=new vk(this,5,null,this.cd),Uk(this)):this.pa=new vk;Vk(this);this.Rd=null;this.vd=3==b?lk:3;this.Ke=this.Sc=-1;this.Je=0;Wk(this,this.vd);if(this.Ja.Ya&&a){a=this.Ja.Ya+this.vi;for(b=this.Ja.Ya;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.se?(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),ub(this.sa,b,c|d<<8);Pb(this,!0)}};function Uk(a){a.pa.og&1?(a.bd=a.ui,a.Ob=a.pa):(a.bd=a.pa,a.Ob=a.ph)}k.save=function(){var a=new td(this);a.set(0,Mk(this.ui));a.set(1,Mk(this.ph));a.set(2,[this.se,this.vd,this.Rd]);a.set(3,Mk(this.pa));return a.data()};
k.restore=function(a){var b=a[2];this.se=b[0];this.vd=b[1];this.Rd=b[2];this.Ja=null;this.bd=this.ui=new vk(this,1,a[0]);this.Ob=this.ph=new vk(this,3,a[1]);this.pa=new vk(this,5,a[3],this.cd);this.pa.ed&&Uk(this);Vk(this);if(!Xk(this))return!1;Yk(this);return!0};
k.qo=function(a,b,c){if(c)this.Ia("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){x("Empty font ROM image: "+a);return}if(1==d.length){x(d[0]);return}if(8192==d.length)Tj(this,d,[0,6144]);else{this.Ia("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ia("Font ROM data error: "+e.message);return}this.Xa()}};
function Zk(a,b){if(1==b)return a.Bd[0]=V[0],a.Bd[1]=V[7],a.Bd;if(2==b){var c=a.Ja.nf;if(a.Ja===a.pa){var d=a.pa.Xd[0],c=d&7;d&16&&(c|=8);18!=a.pa.Xd[1]&&(c|=32)}a.Bd[0]=V[c&15];c=c&32?rk:qk;for(d=0;d<c.length;d++)a.Bd[d+1]=V[c[d]];return a.Bd}if(a.Ob===a.ph)return V;c=null!=a.pa.Xd[15]?a.pa.Xd:sk;for(d=0;d<a.Bd.length;d++){var e=c[d]||0;a.Bd[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.Bd}function Tj(a,b,c,d){a.Yg=b;a.ii=c;a.Pe=d}
function Vk(a){var b=!1;if(window&&a.Yg){var c=a.Pe?0:2048,d=a.Pe?a.Pe:9;$k(a,1,a.ii[0],c,d,14,a.Yg,ok,pk)&&(b=!0);c=Zk(a);d=a.Pe?a.Pe:8;$k(a,3,a.ii[1],0,d,8,a.Yg,c)&&(b=!0);a.Pe&&$k(a,5,a.ii[0],0,a.Pe,14,a.Yg,c)&&(b=!0)}return b}function $k(a,b,c,d,e,f,g,h,n){var l=!1;al(a,b,c,d,e,f,g,h,n)&&(l=!0);a.Sm&&al(a,b<<1,c,d,e,f,g,h,n)&&(l=!0);return l}
function al(a,b,c,d,e,f,g,h,n){var l=!1,s=b&1?0:1,r=a.$d[b];r||(r={rc:e<<s,sc:f<<s,jf:Array(h.length),ok:h.slice(),Rf:n,gi:Array(h.length)});for(n=0;n<h.length;n++){var t=h[n],w=r.jf[n]?r.ok[n]:[];if(t[0]!==w[0]||t[1]!==w[1]||t[2]!==w[2]){var l=r,w=n,v=s,C=c,R=d,O=e,Aa=f,Ga=g,ab=[0,0,0,0],Ub=window.document.createElement("canvas");Ub.width=l.rc<<4;Ub.height=l.sc<<4;for(var Gc=Ub.getContext("2d"),E=void 0,S=void 0,K=void 0,oa=8>Aa||!R?Aa:8,Ba=Gc.createImageData(l.rc,l.sc),E=0;256>E;E++){for(K=0;K<
Aa;K++)for(var ja=l.Rf&&w&1&&K>=Aa-2,ba=Ga[K<oa?C+E*oa+K:R+E*oa+K-oa],X=0;X<=v;X++)for(S=0;S<O;S++){var Hc=S<<v,mc=(K<<v)+X,Ic=ja||ba&128>>(8<=S&&176<=E&&223>=E?7:S)?t:ab;bl(Ba,Hc,mc,Ic);v&&bl(Ba,Hc+1,mc,Ic)}Gc.putImageData(Ba,(E&15)*l.rc,(E>>4)*l.sc)}l.jf[w]="#"+q(t[0])+q(t[1])+q(t[2]);l.ok[w]=t;l.gi[w]=Ub;l=!0}}a.$d[b]=r;return l}function cl(a){0<a.Je||0<=a.Sc?0>a.Ke&&(a.Ke=0):a.Ke=-1}
function Yk(a){if(a.$b){for(var b=10;15>=b;b++)if(null==a.Ja.kc[b])return;var c=a.Ja.kc[10],b=c&31,d=a.Ja.kc[11]&31,e=a.Ja.kc[9]&31,f=!1;a.Ja===a.pa&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)dl(a);else{c=a.Ja.kc[15]+((a.Ja.kc[14]&63)<<8);a.Sc!=c&&(dl(a),a.Sc=c);d=d-b+1;if(a.zm!=b||a.Dk!=d)a.zm=b,a.Dk=d;a.le=e+1;cl(a)}}}
function dl(a){if(0<=a.Sc){if(void 0!==a.lc){var b=a.lc[a.Sc];if(b&131072){var b=b&-131073,c=a.Sc%a.Pb,d=Math.floor(a.Sc/a.Pb);a.$b&&a.$d[a.$b]&&(a.of&&el(a,c,d,b,a.of),el(a,c,d,b));a.lc[a.Sc]=b}}a.Sc=-1}}
function fl(a){var b;a=a.Ja;var c=a.Be[5];if(null!=c){b=2;var d=512,e=a.Be[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.ud=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.cf=function(a){var b=this.Ja;null!=a&&b&&a!=b.Ih&&(b.$h(a),this.sa.$h(b.Ya,b.Wb,b.Xf))};
function Xk(a,b){var c,d=a.Rd,e=a.Ja;if(e)if(1==e.pe)d=lk;else if(5==e.pe){var d=null,f=e.cd>>2,g=32768<f?32768:f,h=e.Be[6];if(null!=h){switch(h&12){case 0:e.Ya=655360;e.Wb=f;d=255;break;case 4:e.Ya=655360;e.Wb=f;d=3==a.se?15:16;break;case 8:e.Ya=720896;e.Wb=g;d=lk;break;case 12:e.Ya=753664,e.Wb=g,d=3==a.se?2:3}c=e.Sf[1]&8;f=e.kc[6]|(e.kc[7]&1)<<8;255!=d&&(h&1?753664==e.Ya?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=fl(a)}}else e.Lc&8&&(e.Lc&2?(d=e.Lc&16?6:5,e.Lc&4||(d-=1)):(d=e.Lc&1?3:1,e.Lc&4&&(d-=
1)));else a.Rd=null,null==d&&(d=a.vd);if(!Wk(a,d,b))return!1;a.cf(c);return!0}
function Wk(a,b,c){if(null!=b&&(b!=a.Rd||c)){a.Im=0;a.Rd=b;b=a.Ja||(b==lk?a.bd:a.Ob);if(b!=a.Ja||b.Ya!=a.Ya||b.Wb!=a.Wb){dl(a);if(a.Ya){if(!qb(a.sa,a.Ya,a.Wb))return!1;a.Ja&&(a.Ja.ed=!1)}a.Ja=b;b.ed=!0;a.Ya=b.Ya;a.Wb=b.Wb;if(!ob(a.sa,b.Ya,b.Wb,!1,b===a.pa?b:null))return!1}a.$b=0;a.Pb=a.Kh;a.xc=a.cj;a.Xi=kk[lk][2];b=0;var d=kk[a.Rd];d&&(a.Pb=d[0],a.xc=d[1],a.Xi=d[2],b=d[3]||0,a.$b=d[4],4==a.se&&a.Ja===a.pa&&3==a.$b&&(7==a.pa.kc[9]?a.xc=43:a.$b=5));a.al=a.Pb*a.xc;a.Jh=a.al/a.Xi;a.vi=(a.Jh<<1)+b;a.Ak=
b?a.vi+b>>1:0;13<=a.Rd&&(a.Jh<<=1);a.$d.length&&(a.Hd=Math.floor(a.Gd/a.Pb),a.Id=Math.floor(a.me/a.xc),a.$b?(b=a.$d[a.$b],d=a.$d[a.$b<<1],a.Um&&80==a.Pb?d&&a.Hd>=3*d.rc>>2&&(a.$b<<=1,b=d):(d&&a.Hd>=d.rc&&(a.$b<<=1,b=d),b&&(a.Hd=b.rc,a.Id=b.sc)),a.gg=a.hg=0,b&&(a.gg=a.Pb*b.rc,a.hg=a.xc*b.sc)):(a.Hd=a.Id=1,a.gg=a.Pb,a.hg=a.xc),a.Fh=a.dd.createImageData(a.gg,a.hg),a.mf=window.document.createElement("canvas"),a.mf.width=a.gg,a.mf.height=a.hg,a.of=a.mf.getContext("2d"),a.gk=a.hk=0,a.xi=a.Gd,a.yi=a.me,
b=a.Gd-a.Pb*a.Hd,d=a.me-a.xc*a.Id,0<b&&(a.gk=b>>1,a.xi-=b),0<d&&(a.hk=d>>1,a.yi-=d),b||d)&&(a.dd.fillStyle=a.hb.style.backgroundColor,a.dd.fillRect(0,0,a.Gd,a.me));!1!==c?Pb(a,!0):gl(a,!0)}return!0}function bl(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 gl(a,b){var c;if(b){if(c=a.Jh,void 0===a.lc||a.lc.length!=c)a.lc=Array(c)}else{if(void 0===a.lc)return;c=a.lc.length}for(var d=0;d<c;d++)a.lc[d]=-1;a.Je=-1}
function el(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.$d[a.$b];h.Rf&&(d=h.Rf[d]);var n=g>>4&15;h.Rf&&(n=h.Rf[n]);e?(b*=h.rc,c*=h.sc,e.fillStyle=h.jf[n],e.fillRect(b,c,h.rc,h.sc)):(b=b*a.Hd+a.gk,c=c*a.Id+a.hk,a.dd.fillStyle=h.jf[n],a.dd.fillRect(b,c,a.Hd,a.Id));g&256&&(n=(f&15)*h.rc,f=(f>>4)*h.sc,e?e.drawImage(h.gi[d],n,f,h.rc,h.sc,b,c,h.rc,h.sc):a.dd.drawImage(h.gi[d],n,f,h.rc,h.sc,b,c,a.Hd,a.Id));g&512&&(f=a.zm,g=a.Dk,e?(a.le&&a.le!==h.sc&&(f=Math.floor(f*h.sc/a.le),g=Math.floor(g*h.sc/a.le)),
e.fillStyle=h.jf[d],e.fillRect(b,c+f,h.rc,g)):(a.le&&a.le!==a.Id&&(f=Math.floor(f*a.Id/a.le),g=Math.floor(g*a.Id/a.le)),a.dd.fillStyle=h.jf[d],a.dd.fillRect(b,c+f,a.Hd,g)))}
function Pb(a,b){if(a.na.Ub){var c=!1;a.Ja&&(a.Ja===a.pa?a.pa.Kd&32&&(c=!0):a.Ja.Lc&8&&(c=!0));if(c||b){if(b)gl(a,!0);else if(void 0===a.lc)return;var d=!1;!(b||++a.Im&15)&&0<=a.Ke&&(a.Ke++,d=!0);var e=0,f=a.al,c=a.Ja.Ya,g=c+a.Ja.Wb,h=(a.Ja.kc[12]<<8)+a.Ja.kc[13];a.$b&&(h<<=1);var c=c+h,n=a.vi;c+n>g&&(n=g-c,0>n&&(n=0));g=c+n;if(h=!b){for(var h=a.sa,l=!0,s=c>>h.Eb;0<n&&s<h.Ha.length;)h.Ha[s].vb&&(h.Ha[s].vb=l=!1,h.Ha[s].Ik=!0),n-=h.mc,s++;h=l}if(h){if(!d)return;if(!a.Je){if(0>a.Sc)return;e=a.Sc;f=
e+1}}if(a.$b){if(a.$d[a.$b]){d=0;h=a.Je=0;n=1048575;a.Ja.Lc&32&&(h=32768,n&=~h,a.Ke&2||(n&=-65537));for(c+=e<<1;c<g&&e<f;)l=sb(a.sa,c),l|=65536,l&h&&(a.Je++,l&=n),e==a.Sc&&(l|=a.Ke&1?131072:0),s=a.lc[e],s!=l&&(el(a,e%a.Pb,Math.floor(e/a.Pb),l,a.of),a.lc[e]=l,d++),c+=2,e++;d&&a.of&&a.dd.drawImage(a.mf,0,0,a.gg,a.hg,a.gk,a.hk,a.xi,a.yi);cl(a)}}else if(a.Ak){for(var f=g,r,t,e=c,g=a.Je=0,d=a.Xi,h=16==d?65536:196608,n=16==d?1:2,l=Zk(a,n),w=s=0,v=a.Pb,C=0,R=a.xc,O=0;e<f;){r=sb(a.sa,e);t=a.lc[g];if(t===
r)s+=d;else{a.lc[g]=r;r=r>>8|(r&255)<<8;t=h;var Aa=16;s<v&&(v=s);for(var Ga=0;Ga<d;Ga++){var ab=(r&(t>>=n))>>(Aa-=n);bl(a.Fh,s++,w,l[ab])}s>C&&(C=s);w<R&&(R=w);w>=O&&(O=w+1)}e+=2;g++;if(s>=a.Pb){s=0;w+=2;if(w>a.xc)break;w==a.xc&&(w=1,e=c+a.Ak)}}v<a.Pb&&(a.of.putImageData(a.Fh,0,0,v,R,C-v,O-R),a.dd.drawImage(a.mf,0,0,a.Pb,a.xc,0,0,a.Gd,a.me))}else{f=g;e=a.Je=0;g=Zk(a);d=a.Ja.md;n=h=0;l=a.Pb;s=0;w=a.xc;for(v=0;c<f;){C=c++-a.Ya;C=d[C];R=a.lc[e];if(R===C)h+=8;else{a.lc[e]=C;h<l&&(l=h);for(R=0;8>R;R++)O=
C&2155905152,0>O&&(O+=4294967296),O=uk[O]||0,bl(a.Fh,h++,n,g[O]),C<<=1;h>s&&(s=h);n<w&&(w=n);n>=v&&(v=n+1)}e++;if(h>=a.Pb&&(h=0,++n>a.xc))break}l<a.Pb&&(a.of.putImageData(a.Fh,0,0,l,w,s-l,v-w),a.dd.drawImage(a.mf,0,0,a.Pb,a.xc,0,0,a.Gd,a.me))}}}}k.In=function(a,b){return hl(this,this.bd,b)};k.Xo=function(a,b,c){a=this.bd;a.Dh=a.uc;a.uc=b&31;B(this,a.port,b,c,"CRTC.INDX")};k.Hn=function(a,b){return il(this,this.bd,b)};k.Wo=function(a,b,c){jl(this,this.bd,b,c)};
k.Jn=function(a,b){return kl(this,this.bd,b)};k.Yo=function(a,b,c){a=this.bd;B(this,a.port+4,b,c,"MODE");a.Lc=b;Xk(this,!1)};k.Kn=function(a,b){return ll(this,this.bd,b)};k.hm=function(a,b,c){this.pa.Ch=this.pa.Ch&-4|b&3;B(this,a,b,c,"FEAT")};k.Xk=function(a,b){var c=this.pa.qd?this.pa.Xd[this.pa.Kd&31]:this.pa.Kd;this.wa()&&B(this,960,null,b,"ATC."+(this.pa.qd?this.pa.mi[this.pa.Kd&31]:"INDX"),c);this.pa.qd=!this.pa.qd;return c};
k.gm=function(a,b,c){var d=this.pa.Kd&32;if(this.pa.qd){var e=this.pa.Kd&31;if(16<=e||!d)this.wa()&&B(this,a,b,c,"ATC."+this.pa.mi[e]),this.pa.Xd[e]=b;this.pa.qd=!1}else this.pa.Kd=b,B(this,a,b,c,"ATC.INDX"),this.pa.qd=!0,b&32&&!d&&Vk(this)&&Pb(this,!0)};k.Un=function(a,b){var c=3-((this.pa.og&12)>>2),c=this.pa.ci&-17|(this.dh&1<<c)<<4-c;this.pa.ci=c;B(this,962,null,b,"STATUS0",c);return c};k.$o=function(a,b,c){this.pa.og=b;Uk(this);B(this,962,b,c,"MISC")};
k.Tn=function(a,b){var c=this.pa.Md;B(this,964,null,b,"SEQ.INDX",c);return c};k.gp=function(a,b,c){this.pa.Md=b;B(this,964,b,c,"SEQ.INDX")};k.Sn=function(a,b){var c=this.pa.Sf[this.pa.Md];this.wa()&&B(this,965,null,b,"SEQ"+this.pa.oi[this.pa.Md],c);return c};k.fp=function(a,b,c){this.wa()&&B(this,965,b,c,"SEQ."+this.pa.oi[this.pa.Md]);this.pa.Sf[this.pa.Md]=b;2==this.pa.Md&&(this.pa.rb=tk[b&15])};k.An=function(a,b){var c=this.pa.Ri;B(this,972,null,b,"GRC1",c);return c};
k.Ro=function(a,b,c){this.pa.Ri=b;B(this,972,b,c,"GRC1")};k.Bn=function(a,b){var c=this.pa.Si;B(this,970,null,b,"GRC2",c);return c};k.So=function(a,b,c){this.pa.Si=b;B(this,970,b,c,"GRC2")};k.zn=function(a,b){var c=this.pa.Ld;B(this,974,null,b,"GRC.INDX",c);return c};k.Qo=function(a,b,c){this.pa.Ld=b;B(this,974,b,c,"GRC.INDX")};k.yn=function(a,b){var c=this.pa.Be[this.pa.Ld];this.wa()&&B(this,975,null,b,"GRC."+this.pa.ni[this.pa.Ld],c);return c};
k.Po=function(a,b,c){this.wa()&&B(this,975,b,c,"GRC."+this.pa.ni[this.pa.Ld]);this.pa.Be[this.pa.Ld]=b;switch(this.pa.Ld){case 0:this.pa.Ph=tk[b&15];this.pa.Xe=this.pa.Ph&~this.pa.ve;break;case 1:this.pa.ve=~tk[b&15];this.pa.Xe=this.pa.Ph&~this.pa.ve;break;case 2:this.pa.Yi=tk[b&15]&2155905152;break;case 3:case 5:this.cf(fl(this));break;case 4:this.pa.Qj=(b&3)<<3;break;case 6:Xk(this,!1);break;case 7:this.pa.Zi=tk[b&15^15]&2155905152;break;case 8:this.pa.yb=b|b<<8|b<<16|b<<24}};
k.qn=function(a,b){return hl(this,this.Ob,b)};k.Io=function(a,b,c){a=this.Ob;a.Dh=a.uc;a.uc=b&31;B(this,a.port,b,c,"CRTC.INDX")};k.pn=function(a,b){return il(this,this.Ob,b)};k.Ho=function(a,b,c){jl(this,this.Ob,b,c)};k.rn=function(a,b){return kl(this,this.Ob,b)};k.Jo=function(a,b,c){a=this.Ob;B(this,a.port+4,b,c,"MODE");a.Lc=b;Xk(this,!1)};k.on=function(a,b){var c=this.Ob.nf;this.wa()&&B(this,this.Ob.port+5,null,b,this.Ob.type+".COLOR",c);return c};
k.Go=function(a,b,c){this.wa()&&B(this,this.Ob.port+5,b,c,this.Ob.type+".COLOR");this.Ob.nf!==b&&(this.Ob.nf=b,gl(this,!1))};k.sn=function(a,b){return ll(this,this.Ob,b)};function hl(a,b,c){var d=b.uc;B(a,b.port,null,c,"CRTC.INDX",d);return d}function il(a,b,c){var d;b.uc<b.Wi&&(d=b.kc[b.uc]);a.wa()&&B(a,b.port+1,null,c,"CRTC."+b.ah[b.uc],d);return d}function jl(a,b,c,d){b.uc<b.Wi&&(a.wa()&&B(a,b.port+1,c,d,"CRTC."+b.ah[b.uc]),b.kc[b.uc]=c,9==b.uc&&8!=b.Dh&&Xk(a,!0),Yk(a))}
function kl(a,b,c){var d=b.Lc;B(a,b.port+4,null,c,"MODE",d);return d}function ll(a,b,c){var d=0,e=D(a.T),f=e-b.gj;0>f&&(f=0);f%b.$i>b.lo&&(d|=1);f%=b.dl;f>b.no&&(d|=8);b.gj=e-f;b===a.pa?(d|=b.Lf&48^48,b.qd=!1):d=(b.Lf^=9)|240;b.Lf=d;B(a,b.port+6,null,c,b===a.pa?"STATUS1":"STATUS",d);return d}
var Ok={948:U.prototype.In,949:U.prototype.Hn,952:U.prototype.Jn,954:U.prototype.Kn,980:U.prototype.qn,981:U.prototype.pn,984:U.prototype.rn,985:U.prototype.on,986:U.prototype.sn},Pk={948:U.prototype.Xo,949:U.prototype.Wo,952:U.prototype.Yo,980:U.prototype.Io,981:U.prototype.Ho,984:U.prototype.Jo,985:U.prototype.Go},Qk={960:U.prototype.Xk,961:U.prototype.Xk,962:U.prototype.Un,964:U.prototype.Tn,965:U.prototype.Sn,970:U.prototype.Bn,972:U.prototype.An,974:U.prototype.zn,975:U.prototype.yn},Rk={954:U.prototype.hm,
960:U.prototype.gm,961:U.prototype.gm,962:U.prototype.$o,964:U.prototype.gp,965:U.prototype.fp,970:U.prototype.So,972:U.prototype.Ro,974:U.prototype.Qo,975:U.prototype.Po,986:U.prototype.hm};
T[Q["."]]=52;T[Q[">"]]=10804;T[Q["/"]]=53;T[Q["?"]]=10805;T[3016]=54;T[1018]=56;T[Q[" "]]=57;T[1020]=58;T[1112]=59;T[1113]=60;T[1114]=61;T[1115]=62;T[1116]=63;T[1117]=64;T[1118]=65;T[1119]=66;T[1120]=67;T[1121]=68;T[1144]=69;T[1145]=70;T[1036]=71;T[1038]=72;T[1033]=73;T[1037]=75;T[1039]=77;T[1035]=79;T[1040]=80;T[1034]=81;T[1045]=82;T[1046]=83;T[1122]=87;T[1123]=88;T[4003]=7470;T[4063]=7494;T[4081]=3677523;k=Wj.prototype;
k.Ib=function(a,b,c){var d=this,e=a+"-"+b;if(void 0===this.xa[e])switch(b){case "kbd":return this.xa[e]=c,c.onkeydown=function(a){return ck(d,a,!0)},c.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:d.gb&64?d.gb&=-65:d.gb&40?b=!1:(d.Hk&&a==Q["`"]&&(a=27),b=!dk(d,a));return b},c.onkeyup=function(a){return ck(d,a,!1)},!0;case "caps-lock":return this.xa[e]=c,c.onclick=function(){d.T&&d.T.Yc();dk(d,1020,!0)},!0;case "num-lock":return this.xa[e]=c,c.onclick=function(){d.T&&
d.T.Yc();dk(d,1144,!0)},!0;case "scroll-lock":return this.xa[e]=c,c.onclick=function(){d.T&&d.T.Yc();dk(d,1145,!0)},!0;default:if(void 0!==ak[b]&&"button"==a)return this.xa[e]=c,c.onclick=function(a,b,c){return function(){a.T&&a.T.Yc();ek(a,c);return!dk(a,c)}}(this,b,ak[b]),!0;if(void 0!==bk[b])return this.xa[e]=c,a=function(a,b,c){return function(){fk(a,c)}}(this,b,bk[b]),b=function(a,b,c){return function(){fk(a,c)}}(this,b,bk[b]|128),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=
a,c.onmouseup=c.onmouseout=b),!0}return!1};k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;this.pa=ib(a,"ChipSet")};k.Va=function(){Ca("iOS");this.Kk=Ca("Mobi");this.qb("mobile keyboard support: "+(this.Kk?"true":"false"));return y.prototype.Va.call(this)};function Lj(a){a.qb("keyboard reset",Xj|P);a.Dc=[170];a.pa&&Nj(a.pa)}function Gj(a,b,c){var d=!1;a.Gi!==c&&(a.Gi=a.Ki=c);a.uh!==b&&(a.uh=b)&&!a.Ki&&Mj(a);a.uh&&a.Ki&&(Lj(a),a.Ki=!1,d=!0);return d}
function Ej(a,b){var c=0;a.Dc.length&&(c=a.Dc[0],a.va()&&a.qb("scan code 0x"+q(c)+" delivered"),b&&Mj(a));return c}function Mj(a,b){0<a.Dc.length&&(b?a.Dc=[]:(a.Dc.shift(),0<a.Dc.length&&a.pa&&Nj(a.pa)))}k.ec=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};k.dc=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.oe();this.gb=0;this.Dc=[];if(this.zd)for(var a in this.zd)da(a)||this.zd[a]&&clearTimeout(this.zd[a]);this.zd=[];this.fm=this.Ye=0};
k.save=function(){var a=new sd(this);a.set(0,this.bk());return a.data()};k.restore=function(a){return this.oe(a[0])};k.oe=function(a){var b=0;void 0===a&&(a=[]);this.Gi=a[b++];this.uh=a[b];return!0};k.bk=function(){var a=0,b=[];b[a++]=this.Gi;b[a]=this.uh;return b};
function fk(a,b){var c=b&127,d=c==b;if(a.Dc)if(20>a.Dc.length){if(!(!d&&!a.ii[c]||d&&a.ii[c])){a.ii[c]=d;a.va()&&a.qb("scan code 0x"+q(b)+" buffered");a.Dc.push(b);1==a.Dc.length&&a.pa&&Nj(a.pa);for(var e in bk)if(bk[e]==c){(c=a.xa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.Dc.length&&a.Dc.push(255),a.qb("scan code buffer overflow")}function gk(a,b){var c=b?a.eo:a.co;a.T&&a.T.da.td&&(c/=a.T.da.td);return c}
function hk(a,b){!a.Ye||void 0!==b&&b==a.Ye||(clearTimeout(a.zd[a.Ye]),ik(a,a.Ye,!1))}function jk(a,b){var c,d;for(d in Zj){var e="led-"+d,f=Zj[d];b&&b!=f||!(c=a.xa[e])||(c.style.backgroundColor=a.gb&f?"#00ff00":"#000000")}}function ek(a,b){var c;if(T[b]){var d=Math.floor(b/1E3)&2,e=Yj[Math.floor(b%1E3)]||0;e&&(d&&(e>>=1),e&1792&&(c=!(a.gb&e)),a.gb&=~e,c&&(a.gb|=e),jk(a,e))}}
function ck(a,b,c){var d,e=!c,f=b.keyCode,g=f;c&&(a.fm=f);if(T[f+1E3]){var g=g+1E3,h=Yj[f]||0;if(h)2==b.location&&(h>>=1,g+=2E3),a.gb&=~h,c&&(a.gb|=h),jk(a,h),20==f||144==f||145==f?d=dk(a,g):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.gb&40)&&(g=4063),d=c?!dk(a,g):!1}else 91==f?(a.gb&=-65,c&&(a.gb|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(g+=32):d=!0;e&&(a.gb&=-65,a.Kk||f!=a.fm||hk(a));void 0===d&&(d=!ik(a,g,c));return d}
function dk(a,b,c){var d=!1;hk(a,b);c&&ek(a,b);ik(a,b,!0)&&(c=!1,a.zd[b]&&(clearTimeout(a.zd[b]),c=!0),c=gk(a,c),a.zd[a.Ye=b]=setTimeout(function(a){return function(){ik(a,b,!1)}}(a),c),d=!0);return d}
function ik(a,b,c){var d=!1;c||(a.zd[b]=null,a.Ye==b&&(a.Ye=0));var e=T[b]||T[b+1E3];if(void 0!==e){14==e&&40==(a.gb&40)&&(e=83);var d=[],f=e&255;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.gb&3||a.gb&256&&b||(g=h):29==h?a.gb&12||(g=h):56==h?a.gb&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)fk(a,d[c]);d=!0}return d}
Ka(function(){for(var a=A(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Wj(d);bb(d,c)}});
function U(a,b,c,d){y.call(this,"Video",a,U,kk);this.Ka=a.model;this.cd=0;"ega"==this.Ka&&(this.nm=a.switches,this.cd=a.memory||0);this.wd=a.mode;if(void 0===this.wd||void 0===lk[this.wd])this.wd=mk;this.Jh=a.charCols;this.aj=a.charRows;if(void 0===this.Jh||void 0===this.aj)this.Jh=lk[this.wd][0],this.aj=lk[this.wd][1];this.Gd=a.screenWidth;this.ke=a.screenHeight;this.Rm=a.scale;this.Pm=12<=Math.round(this.Gd/this.Jh);this.Tm=a.touchScreen;this.jb=b;this.dd=c;this.sm=d;this.pe=null;this.Om=a.autoLock;
this.Wa=this.Vb=0;this.Zd=[];this.Cd=Array(16);this.Hi=!1;var e=this;b&&(b.onfocus=function(){e.Hi=!0},b.onblur=function(){e.Hi=!1},b.yf=b.requestPointerLock||b.mozRequestPointerLock||b.webkitRequestPointerLock,b.tm=b.exitPointerLock||b.mozExitPointerLock||b.webkitExitPointerLock,b=function(){e.Dg(document.pointerLockElement===e.jb||document.mozPointerLockElement===e.jb||document.webkitPointerLockElement===e.jb)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",b,!1):
"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",b,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",b,!1));if(a=a.fontROM)"json"!=ha(a)&&(a=ua()+"/api/v1/dump?file="+a+"&format=bytes"),ta(a,!0,null,this,this.no)}Xa(y,U);
var nk={2:{dj:15700,cj:208,Rj:85,Sj:96},3:{dj:18432,cj:364,Rj:85,Sj:96},4:{dj:21850,cj:364,Rj:85,Sj:96}},ok={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]},mk=7,lk=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];lk[mk]=[80,25,1,0,1];lk[13]=[320,200,16];lk[14]=[640,200,16];lk[15]=[640,350,16];lk[16]=[640,350,16];lk[0]=lk[1];lk[2]=lk[3];lk[5]=lk[4];var pk=Array(5);pk[0]=[0,0,0,255];
pk[1]=[127,192,127,255];pk[2]=[127,192,127,255];pk[3]=[127,255,127,255];pk[4]=[127,255,127,255];var qk=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],V=Array(16);V[0]=[0,0,0,255];V[1]=[0,0,170,255];V[2]=[0,170,0,255];V[3]=[0,170,170,255];V[4]=[170,0,0,255];V[5]=[170,0,170,255];V[6]=[170,85,0,255];V[7]=[170,170,170,255];V[8]=[85,85,85,255];V[9]=[85,85,255,255];V[10]=[85,255,85,255];V[11]=[85,255,255,255];V[12]=[255,85,85,255];V[13]=[255,85,255,255];V[14]=[255,255,85,255];V[15]=[255,255,255,255];
var rk=[2,4,6],sk=[3,5,7],tk=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],uk=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],vk=[0];vk[128]=1;vk[32768]=2;vk[32896]=3;vk[8388608]=4;vk[8388736]=5;vk[8421376]=6;vk[8421504]=7;vk[2147483648]=8;vk[2147483776]=9;vk[2147516416]=10;vk[2147516544]=11;vk[2155872256]=12;vk[2155872384]=13;vk[2155905024]=14;vk[2155905152]=15;
function wk(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=xk[b],f=a.qe||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(yk)];this.ka=a.ka;this.type=e[0];this.port=e[1];this.ne=b;this.Wa=e[2];this.Vb=e[3];this.cd=d||e[4];65536<=this.cd&&720896<=this.Wa&&(this.Vb=Math.min(this.cd>>2,32768));this.ed=c[0];this.Lc=c[1];this.nf=c[2];this.Mf=c[3];this.uc=c[4]&255;this.Ch=c[4]>>8&255;this.kc=c[5];this.Ui=yk;this.Zg=zk;if(5==b){this.Ui=Ak;this.Zg=Bk;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.Wa,this.Vb,this.cd],Array(this.cd>>2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.rd=b[0];this.Kd=b[1];this.Wd=b[2];this.li=Ck;this.bi=b[3];this.ng=b[4];this.Bh=b[5];this.Md=b[6];this.Tf=b[7];this.ni=Dk;this.Pi=b[8];this.Qi=b[9];this.Ld=b[10];this.Ae=b[11];this.mi=Ek;this.Kb=b[12];d=b[13];"number"==typeof d&&(d=[this.Wa,this.Vb,d]);this.Wa=d[0];this.Vb=d[1];d=this.cd>>2;if((this.md=b[14])&&this.md.length<d){for(var e=this.md,g=0,h=Array(d),n=0;n<e.length-1;){for(var m=
e[n++],s=e[n++];m--;)h[g]=s,g+=2;g==d&&(g=1)}this.md=h}this.Zh(b[15]);this.Oj=b[16];this.rb=b[17];this.vd=b[18];this.Ab=b[19];this.Oh=b[20];this.te=b[21];this.We=b[22];this.Wi=b[23];this.Xi=b[24]}f=nk[f]||nk[3];this.Yi=a.T.da.ud/f.dj|0;this.io=this.Yi*f.Rj/100|0;this.al=this.Yi*f.cj;this.ko=this.al*f.Sj/100|0;this.ej=null==c[7]?0:c[7]}}
var yk=18,Ak=25,zk="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(" "),Bk="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(" "),
Ck="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVRSCAN PLANES HORZPAN".split(" "),Dk=["RESET","CLK","MAPMASK","CHARMAP","MODE"],Ek="SRESET ESRESET COLRCMP DATAROT READMAP MODE MISC COLRDC BITMASK".split(" ");function Kk(a){return this.yc(a)|this.yc(a+1)<<8}function Lk(a,b){this.Mc(a,b&255);this.Mc(a+1,b>>8&255)}
var Mk=[,,function(a){a+=this.offset;return(this.ga.Kb=this.ya[a])>>this.ga.Oj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.ya[b]>>8:this.ya[b])&255}];Mk[16]=function(a){a+=this.offset;a=this.ya[a];for(var b=this.ga.Wi&this.ga.Xi,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Mk[512]=function(a,b){var c=a+this.offset,d;d=this.ya[c]&~this.ga.rb|(b|b<<8|b<<16|b<<24)&this.ga.rb;d=d&this.ga.Ab|this.ga.Kb&~this.ga.Ab;this.ya[c]!=d&&(this.ya[c]=d,this.xb=!0)};
Mk[1024]=function(a,b){var c=a+this.offset;b=b>>this.ga.vd|b<<8-this.ga.vd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ga.te|this.ga.We;d=d&this.ga.rb|this.ya[c]&~this.ga.rb;d=d&this.ga.Ab|this.ga.Kb&~this.ga.Ab;this.ya[c]!=d&&(this.ya[c]=d,this.xb=!0)};
Mk[1536]=function(a,b){var c=a+this.offset;b=b>>this.ga.vd|b<<8-this.ga.vd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ga.te|this.ga.We;d&=this.ga.Kb;d=d&this.ga.rb|this.ya[c]&~this.ga.rb;d=d&this.ga.Ab|this.ga.Kb&~this.ga.Ab;this.ya[c]!=d&&(this.ya[c]=d,this.xb=!0)};
Mk[2560]=function(a,b){var c=a+this.offset;b=b>>this.ga.vd|b<<8-this.ga.vd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ga.te|this.ga.We;d|=this.ga.Kb;d=d&this.ga.rb|this.ya[c]&~this.ga.rb;d=d&this.ga.Ab|this.ga.Kb&~this.ga.Ab;this.ya[c]!=d&&(this.ya[c]=d,this.xb=!0)};
Mk[3584]=function(a,b){var c=a+this.offset;b=b>>this.ga.vd|b<<8-this.ga.vd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ga.te|this.ga.We;d^=this.ga.Kb;d=d&this.ga.rb|this.ya[c]&~this.ga.rb;d=d&this.ga.Ab|this.ga.Kb&~this.ga.Ab;this.ya[c]!=d&&(this.ya[c]=d,this.xb=!0)};Mk[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ga.rb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.ya[d]&~c;c=c&this.ga.Ab|this.ga.Kb&~this.ga.Ab;this.ya[d]!=c&&(this.ya[d]=c,this.xb=!0)};
Mk[4096]=function(a){a+=this.offset;var b=this.ya[a]&~this.ga.rb|this.ga.Kb&this.ga.rb;this.ya[a]!=b&&(this.ya[a]=b,this.xb=!0)};Mk[8192]=function(a,b){var c=a+this.offset,d=uk[b&15],d=d&this.ga.rb|this.ya[c]&~this.ga.rb,d=d&this.ga.Ab|this.ga.Kb&~this.ga.Ab;this.ya[c]!=d&&(this.ya[c]=d,this.xb=!0)};Mk[24576]=function(a,b){var c=a+this.offset,d=uk[b&15],d=d&this.ga.Kb,d=d&this.ga.rb|this.ya[c]&~this.ga.rb,d=d&this.ga.Ab|this.ga.Kb&~this.ga.Ab;this.ya[c]!=d&&(this.ya[c]=d,this.xb=!0)};
Mk[40960]=function(a,b){var c=a+this.offset,d=uk[b&15],d=d|this.ga.Kb,d=d&this.ga.rb|this.ya[c]&~this.ga.rb,d=d&this.ga.Ab|this.ga.Kb&~this.ga.Ab;this.ya[c]!=d&&(this.ya[c]=d,this.xb=!0)};Mk[57344]=function(a,b){var c=a+this.offset,d=uk[b&15],d=d^this.ga.Kb,d=d&this.ga.rb|this.ya[c]&~this.ga.rb,d=d&this.ga.Ab|this.ga.Kb&~this.ga.Ab;this.ya[c]!=d&&(this.ya[c]=d,this.xb=!0)};
function Nk(a){var b=[];if(void 0!==a.ne){b[0]=a.ed;b[1]=a.Lc;b[2]=a.nf;b[3]=a.Mf;b[4]=a.uc|a.Ch<<8;b[5]=a.kc;if(5==a.ne){var c=[];c[0]=a.rd;c[1]=a.Kd;c[2]=a.Wd;c[3]=a.bi;c[4]=a.ng;c[5]=a.Bh;c[6]=a.Md;c[7]=a.Tf;c[8]=a.Pi;c[9]=a.Qi;c[10]=a.Ld;c[11]=a.Ae;c[12]=a.Kb;c[13]=[a.Wa,a.Vb,a.cd];var d;a:if(d=a.md){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 n=d[h],m=h+2;m<d.length&&d[m]===n;)m+=2;f[e++]=m-h>>1;f[e++]=n;h=m}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.Hh;c[16]=a.Oj;c[17]=a.rb;c[18]=a.vd;c[19]=a.Ab;c[20]=a.Oh;c[21]=a.te;c[22]=a.We;c[23]=a.Wi;c[24]=a.Xi;b[6]=c}b[7]=a.ej}return b}function Ok(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 n=e[g],f=f+(b+"["+q(g)+"]: "+(n+" ".substr(0,h-n.length))+q(d[g])+(g===c?"*":""))}a.ka.Z(f)}else a.ka.Z(b+": "+q(c))}
wk.prototype.Zh=function(a){if(null!=a&&a!=this.Hh){var b=a&255,c=Mk[b];c||b&1&&(c=Mk[1]);var b=a&65280,d=Mk[b];d||b&256&&(d=Mk[256]);this.Yf||(this.Yf=[null,Kk,null,Lk]);this.Yf[0]=c;this.Yf[2]=d;this.Hh=a}};var xk=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=U.prototype;
k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;xb(b,this,Pk);Bb(b,this,Qk);"ega"==this.Ka&&(xb(b,this,Rk),Bb(b,this,Sk));if(d){var e=this;Fi(d,kk,function(a){if(e.Ja)if(a){var b=e.Ja;if(b.md){a=ea(a);a=void 0!==a?a-b.Wa:b.np||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var f=p(b.Wa+a)+":",r=0;8>r&&a<b.md.length;r++)var t=b.md[a++],f=f+(" "+p(t));c&&(c+="\n");c+=f}c&&b.ka.Z(c);b.np=a}else b.ka.Z("no buffer")}else{e.ka.Z("BIOSMODE: "+q(e.Rd));b=e.Ja;Ok(b,"CRTC",b.uc,b.kc,b.Zg);if(1==b.ne||3==b.ne)Ok(b,
" MODEREG",b.Lc),Ok(b," STATUS1",b.Mf);3==b.ne&&Ok(b," COLOR",b.nf);5==b.ne&&(b.ka.Z(" ATCDATA: "+b.rd),Ok(b," ATC",b.Kd,b.Wd,b.li),Ok(b," GRC",b.Ld,b.Ae,b.mi),Ok(b," SEQ",b.Md,b.Tf,b.ni),Ok(b," FEAT",b.Bh),Ok(b," MISC",b.ng),Ok(b," STATUS0",b.bi),Ok(b," LATCHES",b.Kb),b.ka.Z(" ACCESS: "+v(b.Hh)),b.ka.Z("Use 'dump video buffer' to dump video memory"))}else e.ka.Z("no active video card")})}if((this.Ua=ib(a,"Keyboard"))&&this.jb){for(var f in this.xa)0<f.indexOf("lock")&&this.Ua.Ib("led",f,
this.xa[f]);this.Ua.Ib(this.sm?"textarea":"canvas","kbd",this.sm||this.jb)}this.ah=9;(this.pa=ib(a,"ChipSet"))&&this.nm&&(this.ah=si(this.nm,this.ah));this.Ua&&this.Tm&&Tk(this)};k.Ib=function(a,b,c){var d=this;if(!this.xa[b])switch(this.xa[b]=c,b){case "lockPointer":return this.vp=c.textContent,this.jb&&this.jb.yf?c.onclick=function(){d.yf(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){Pb(d,!0)},!0}return!1};k.Yc=function(){this.jb&&this.jb.focus()};
k.yf=function(a){if(this.jb)if(a){if(this.jb.yf)return this.jb.yf(),this.pe.Dg(!0),!0}else if(this.jb.tm)return this.jb.tm(),this.pe.Dg(!1),!0;return!1};k.Dg=function(a){this.pe&&(this.pe.Dg(a),this.Ua&&(this.Ua.Hk=a));var b=this.xa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.vp)};
function Tk(a){var b=a.jb;b&&!a.Fi&&(b.addEventListener("touchstart",function(b){Uk(a,b)},!1),b.addEventListener("touchmove",function(b){Uk(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.Fi=!0)}
function Uk(a,b){a.Hi&&b.preventDefault();var c=0,d=0,e=a.jb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.Gd/a.jb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.Gd/3)|0;d=a.ke/a.jb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.ke/3)|0;1!=d?d?dk(a.Ua,40,!0):dk(a.Ua,38,!0):1!=c&&(c?dk(a.Ua,39,!0):dk(a.Ua,37,!0))}k.ec=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.dc=function(a){return a&&this.save?this.save():!0};
k.reset=function(){var a=!0,b=0;this.pa&&(b=Qi(this.pa));var c=!1;if(this.Ka)switch(this.Ka){case "ega":var c=!0,d=ok[this.ah];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.qe!==b&&(this.qe=b,a=!0);this.Ja=null;this.bd=this.ui=new wk(this,1);this.Nb=this.nh=new wk(this,3);c?(this.oa=new wk(this,5,null,this.cd),Vk(this)):this.oa=new wk;Wk(this);this.Rd=null;this.wd=3==b?mk:3;this.Ke=this.Sc=-1;this.Je=0;Xk(this,this.wd);if(this.Ja.Wa&&a){a=this.Ja.Wa+this.vi;for(b=this.Ja.Wa;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.qe?(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),ub(this.sa,b,c|d<<8);Pb(this,!0)}};function Vk(a){a.oa.ng&1?(a.bd=a.ui,a.Nb=a.oa):(a.bd=a.oa,a.Nb=a.nh)}k.save=function(){var a=new sd(this);a.set(0,Nk(this.ui));a.set(1,Nk(this.nh));a.set(2,[this.qe,this.wd,this.Rd]);a.set(3,Nk(this.oa));return a.data()};
k.restore=function(a){var b=a[2];this.qe=b[0];this.wd=b[1];this.Rd=b[2];this.Ja=null;this.bd=this.ui=new wk(this,1,a[0]);this.Nb=this.nh=new wk(this,3,a[1]);this.oa=new wk(this,5,a[3],this.cd);this.oa.ed&&Vk(this);Wk(this);if(!Yk(this))return!1;Zk(this);return!0};
k.no=function(a,b,c){if(c)this.Ia("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){x("Empty font ROM image: "+a);return}if(1==d.length){x(d[0]);return}if(8192==d.length)Uj(this,d,[0,6144]);else{this.Ia("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ia("Font ROM data error: "+e.message);return}this.Va()}};
function $k(a,b){if(1==b)return a.Cd[0]=V[0],a.Cd[1]=V[7],a.Cd;if(2==b){var c=a.Ja.nf;if(a.Ja===a.oa){var d=a.oa.Wd[0],c=d&7;d&16&&(c|=8);18!=a.oa.Wd[1]&&(c|=32)}a.Cd[0]=V[c&15];c=c&32?sk:rk;for(d=0;d<c.length;d++)a.Cd[d+1]=V[c[d]];return a.Cd}if(a.Nb===a.nh)return V;c=null!=a.oa.Wd[15]?a.oa.Wd:tk;for(d=0;d<a.Cd.length;d++){var e=c[d]||0;a.Cd[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.Cd}function Uj(a,b,c,d){a.Wg=b;a.hi=c;a.Oe=d}
function Wk(a){var b=!1;if(window&&a.Wg){var c=a.Oe?0:2048,d=a.Oe?a.Oe:9;al(a,1,a.hi[0],c,d,14,a.Wg,pk,qk)&&(b=!0);c=$k(a);d=a.Oe?a.Oe:8;al(a,3,a.hi[1],0,d,8,a.Wg,c)&&(b=!0);a.Oe&&al(a,5,a.hi[0],0,a.Oe,14,a.Wg,c)&&(b=!0)}return b}function al(a,b,c,d,e,f,g,h,n){var m=!1;bl(a,b,c,d,e,f,g,h,n)&&(m=!0);a.Pm&&bl(a,b<<1,c,d,e,f,g,h,n)&&(m=!0);return m}
function bl(a,b,c,d,e,f,g,h,n){var m=!1,s=b&1?0:1,r=a.Zd[b];r||(r={rc:e<<s,sc:f<<s,hf:Array(h.length),mk:h.slice(),Sf:n,fi:Array(h.length)});for(n=0;n<h.length;n++){var t=h[n],w=r.hf[n]?r.mk[n]:[];if(t[0]!==w[0]||t[1]!==w[1]||t[2]!==w[2]){var m=r,w=n,u=s,C=c,R=d,O=e,ya=f,Fa=g,Za=[0,0,0,0],Tb=window.document.createElement("canvas");Tb.width=m.rc<<4;Tb.height=m.sc<<4;for(var Hc=Tb.getContext("2d"),E=void 0,S=void 0,K=void 0,na=8>ya||!R?ya:8,za=Hc.createImageData(m.rc,m.sc),E=0;256>E;E++){for(K=0;K<
ya;K++)for(var ia=m.Sf&&w&1&&K>=ya-2,aa=Fa[K<na?C+E*na+K:R+E*na+K-na],X=0;X<=u;X++)for(S=0;S<O;S++){var Ic=S<<u,mc=(K<<u)+X,Jc=ia||aa&128>>(8<=S&&176<=E&&223>=E?7:S)?t:Za;cl(za,Ic,mc,Jc);u&&cl(za,Ic+1,mc,Jc)}Hc.putImageData(za,(E&15)*m.rc,(E>>4)*m.sc)}m.hf[w]="#"+q(t[0])+q(t[1])+q(t[2]);m.mk[w]=t;m.fi[w]=Tb;m=!0}}a.Zd[b]=r;return m}function dl(a){0<a.Je||0<=a.Sc?0>a.Ke&&(a.Ke=0):a.Ke=-1}
function Zk(a){if(a.$b){for(var b=10;15>=b;b++)if(null==a.Ja.kc[b])return;var c=a.Ja.kc[10],b=c&31,d=a.Ja.kc[11]&31,e=a.Ja.kc[9]&31,f=!1;a.Ja===a.oa&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)el(a);else{c=a.Ja.kc[15]+((a.Ja.kc[14]&63)<<8);a.Sc!=c&&(el(a),a.Sc=c);d=d-b+1;if(a.wm!=b||a.Bk!=d)a.wm=b,a.Bk=d;a.je=e+1;dl(a)}}}
function el(a){if(0<=a.Sc){if(void 0!==a.lc){var b=a.lc[a.Sc];if(b&131072){var b=b&-131073,c=a.Sc%a.Ob,d=Math.floor(a.Sc/a.Ob);a.$b&&a.Zd[a.$b]&&(a.of&&fl(a,c,d,b,a.of),fl(a,c,d,b));a.lc[a.Sc]=b}}a.Sc=-1}}
function gl(a){var b;a=a.Ja;var c=a.Ae[5];if(null!=c){b=2;var d=512,e=a.Ae[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.vd=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.bf=function(a){var b=this.Ja;null!=a&&b&&a!=b.Hh&&(b.Zh(a),this.sa.Zh(b.Wa,b.Vb,b.Yf))};
function Yk(a,b){var c,d=a.Rd,e=a.Ja;if(e)if(1==e.ne)d=mk;else if(5==e.ne){var d=null,f=e.cd>>2,g=32768<f?32768:f,h=e.Ae[6];if(null!=h){switch(h&12){case 0:e.Wa=655360;e.Vb=f;d=255;break;case 4:e.Wa=655360;e.Vb=f;d=3==a.qe?15:16;break;case 8:e.Wa=720896;e.Vb=g;d=mk;break;case 12:e.Wa=753664,e.Vb=g,d=3==a.qe?2:3}c=e.Tf[1]&8;f=e.kc[6]|(e.kc[7]&1)<<8;255!=d&&(h&1?753664==e.Wa?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=gl(a)}}else e.Lc&8&&(e.Lc&2?(d=e.Lc&16?6:5,e.Lc&4||(d-=1)):(d=e.Lc&1?3:1,e.Lc&4&&(d-=
1)));else a.Rd=null,null==d&&(d=a.wd);if(!Xk(a,d,b))return!1;a.bf(c);return!0}
function Xk(a,b,c){if(null!=b&&(b!=a.Rd||c)){a.Fm=0;a.Rd=b;b=a.Ja||(b==mk?a.bd:a.Nb);if(b!=a.Ja||b.Wa!=a.Wa||b.Vb!=a.Vb){el(a);if(a.Wa){if(!qb(a.sa,a.Wa,a.Vb))return!1;a.Ja&&(a.Ja.ed=!1)}a.Ja=b;b.ed=!0;a.Wa=b.Wa;a.Vb=b.Vb;if(!ob(a.sa,b.Wa,b.Vb,!1,b===a.oa?b:null))return!1}a.$b=0;a.Ob=a.Jh;a.xc=a.aj;a.Vi=lk[mk][2];b=0;var d=lk[a.Rd];d&&(a.Ob=d[0],a.xc=d[1],a.Vi=d[2],b=d[3]||0,a.$b=d[4],4==a.qe&&a.Ja===a.oa&&3==a.$b&&(7==a.oa.kc[9]?a.xc=43:a.$b=5));a.Yk=a.Ob*a.xc;a.Ih=a.Yk/a.Vi;a.vi=(a.Ih<<1)+b;a.yk=
b?a.vi+b>>1:0;13<=a.Rd&&(a.Ih<<=1);a.Zd.length&&(a.Hd=Math.floor(a.Gd/a.Ob),a.Id=Math.floor(a.ke/a.xc),a.$b?(b=a.Zd[a.$b],d=a.Zd[a.$b<<1],a.Rm&&80==a.Ob?d&&a.Hd>=3*d.rc>>2&&(a.$b<<=1,b=d):(d&&a.Hd>=d.rc&&(a.$b<<=1,b=d),b&&(a.Hd=b.rc,a.Id=b.sc)),a.gg=a.hg=0,b&&(a.gg=a.Ob*b.rc,a.hg=a.xc*b.sc)):(a.Hd=a.Id=1,a.gg=a.Ob,a.hg=a.xc),a.Eh=a.dd.createImageData(a.gg,a.hg),a.lf=window.document.createElement("canvas"),a.lf.width=a.gg,a.lf.height=a.hg,a.of=a.lf.getContext("2d"),a.ek=a.fk=0,a.xi=a.Gd,a.yi=a.ke,
b=a.Gd-a.Ob*a.Hd,d=a.ke-a.xc*a.Id,0<b&&(a.ek=b>>1,a.xi-=b),0<d&&(a.fk=d>>1,a.yi-=d),b||d)&&(a.dd.fillStyle=a.jb.style.backgroundColor,a.dd.fillRect(0,0,a.Gd,a.ke));!1!==c?Pb(a,!0):hl(a,!0)}return!0}function cl(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 hl(a,b){var c;if(b){if(c=a.Ih,void 0===a.lc||a.lc.length!=c)a.lc=Array(c)}else{if(void 0===a.lc)return;c=a.lc.length}for(var d=0;d<c;d++)a.lc[d]=-1;a.Je=-1}
function fl(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Zd[a.$b];h.Sf&&(d=h.Sf[d]);var n=g>>4&15;h.Sf&&(n=h.Sf[n]);e?(b*=h.rc,c*=h.sc,e.fillStyle=h.hf[n],e.fillRect(b,c,h.rc,h.sc)):(b=b*a.Hd+a.ek,c=c*a.Id+a.fk,a.dd.fillStyle=h.hf[n],a.dd.fillRect(b,c,a.Hd,a.Id));g&256&&(n=(f&15)*h.rc,f=(f>>4)*h.sc,e?e.drawImage(h.fi[d],n,f,h.rc,h.sc,b,c,h.rc,h.sc):a.dd.drawImage(h.fi[d],n,f,h.rc,h.sc,b,c,a.Hd,a.Id));g&512&&(f=a.wm,g=a.Bk,e?(a.je&&a.je!==h.sc&&(f=Math.floor(f*h.sc/a.je),g=Math.floor(g*h.sc/a.je)),
e.fillStyle=h.hf[d],e.fillRect(b,c+f,h.rc,g)):(a.je&&a.je!==a.Id&&(f=Math.floor(f*a.Id/a.je),g=Math.floor(g*a.Id/a.je)),a.dd.fillStyle=h.hf[d],a.dd.fillRect(b,c+f,a.Hd,g)))}
function Pb(a,b){if(a.na.Tb){var c=!1;a.Ja&&(a.Ja===a.oa?a.oa.Kd&32&&(c=!0):a.Ja.Lc&8&&(c=!0));if(c||b){if(b)hl(a,!0);else if(void 0===a.lc)return;var d=!1;!(b||++a.Fm&15)&&0<=a.Ke&&(a.Ke++,d=!0);var e=0,f=a.Yk,c=a.Ja.Wa,g=c+a.Ja.Vb,h=(a.Ja.kc[12]<<8)+a.Ja.kc[13];a.$b&&(h<<=1);var c=c+h,n=a.vi;c+n>g&&(n=g-c,0>n&&(n=0));g=c+n;if(h=!b){for(var h=a.sa,m=!0,s=c>>h.Eb;0<n&&s<h.Ha.length;)h.Ha[s].xb&&(h.Ha[s].xb=m=!1,h.Ha[s].Fk=!0),n-=h.mc,s++;h=m}if(h){if(!d)return;if(!a.Je){if(0>a.Sc)return;e=a.Sc;f=
e+1}}if(a.$b){if(a.Zd[a.$b]){d=0;h=a.Je=0;n=1048575;a.Ja.Lc&32&&(h=32768,n&=~h,a.Ke&2||(n&=-65537));for(c+=e<<1;c<g&&e<f;)m=sb(a.sa,c),m|=65536,m&h&&(a.Je++,m&=n),e==a.Sc&&(m|=a.Ke&1?131072:0),s=a.lc[e],s!=m&&(fl(a,e%a.Ob,Math.floor(e/a.Ob),m,a.of),a.lc[e]=m,d++),c+=2,e++;d&&a.of&&a.dd.drawImage(a.lf,0,0,a.gg,a.hg,a.ek,a.fk,a.xi,a.yi);dl(a)}}else if(a.yk){for(var f=g,r,t,e=c,g=a.Je=0,d=a.Vi,h=16==d?65536:196608,n=16==d?1:2,m=$k(a,n),w=s=0,u=a.Ob,C=0,R=a.xc,O=0;e<f;){r=sb(a.sa,e);t=a.lc[g];if(t===
r)s+=d;else{a.lc[g]=r;r=r>>8|(r&255)<<8;t=h;var ya=16;s<u&&(u=s);for(var Fa=0;Fa<d;Fa++){var Za=(r&(t>>=n))>>(ya-=n);cl(a.Eh,s++,w,m[Za])}s>C&&(C=s);w<R&&(R=w);w>=O&&(O=w+1)}e+=2;g++;if(s>=a.Ob){s=0;w+=2;if(w>a.xc)break;w==a.xc&&(w=1,e=c+a.yk)}}u<a.Ob&&(a.of.putImageData(a.Eh,0,0,u,R,C-u,O-R),a.dd.drawImage(a.lf,0,0,a.Ob,a.xc,0,0,a.Gd,a.ke))}else{f=g;e=a.Je=0;g=$k(a);d=a.Ja.md;n=h=0;m=a.Ob;s=0;w=a.xc;for(u=0;c<f;){C=c++-a.Wa;C=d[C];R=a.lc[e];if(R===C)h+=8;else{a.lc[e]=C;h<m&&(m=h);for(R=0;8>R;R++)O=
C&2155905152,0>O&&(O+=4294967296),O=vk[O]||0,cl(a.Eh,h++,n,g[O]),C<<=1;h>s&&(s=h);n<w&&(w=n);n>=u&&(u=n+1)}e++;if(h>=a.Ob&&(h=0,++n>a.xc))break}m<a.Ob&&(a.of.putImageData(a.Eh,0,0,m,w,s-m,u-w),a.dd.drawImage(a.lf,0,0,a.Ob,a.xc,0,0,a.Gd,a.ke))}}}}k.Fn=function(a,b){return il(this,this.bd,b)};k.Wo=function(a,b,c){a=this.bd;a.Ch=a.uc;a.uc=b&31;B(this,a.port,b,c,"CRTC.INDX")};k.En=function(a,b){return jl(this,this.bd,b)};k.Vo=function(a,b,c){kl(this,this.bd,b,c)};
k.Gn=function(a,b){return ll(this,this.bd,b)};k.Xo=function(a,b,c){a=this.bd;B(this,a.port+4,b,c,"MODE");a.Lc=b;Yk(this,!1)};k.Hn=function(a,b){return ml(this,this.bd,b)};k.em=function(a,b,c){this.oa.Bh=this.oa.Bh&-4|b&3;B(this,a,b,c,"FEAT")};k.Uk=function(a,b){var c=this.oa.rd?this.oa.Wd[this.oa.Kd&31]:this.oa.Kd;this.va()&&B(this,960,null,b,"ATC."+(this.oa.rd?this.oa.li[this.oa.Kd&31]:"INDX"),c);this.oa.rd=!this.oa.rd;return c};
k.dm=function(a,b,c){var d=this.oa.Kd&32;if(this.oa.rd){var e=this.oa.Kd&31;if(16<=e||!d)this.va()&&B(this,a,b,c,"ATC."+this.oa.li[e]),this.oa.Wd[e]=b;this.oa.rd=!1}else this.oa.Kd=b,B(this,a,b,c,"ATC.INDX"),this.oa.rd=!0,b&32&&!d&&Wk(this)&&Pb(this,!0)};k.Rn=function(a,b){var c=3-((this.oa.ng&12)>>2),c=this.oa.bi&-17|(this.ah&1<<c)<<4-c;this.oa.bi=c;B(this,962,null,b,"STATUS0",c);return c};k.Zo=function(a,b,c){this.oa.ng=b;Vk(this);B(this,962,b,c,"MISC")};
k.Qn=function(a,b){var c=this.oa.Md;B(this,964,null,b,"SEQ.INDX",c);return c};k.fp=function(a,b,c){this.oa.Md=b;B(this,964,b,c,"SEQ.INDX")};k.Pn=function(a,b){var c=this.oa.Tf[this.oa.Md];this.va()&&B(this,965,null,b,"SEQ"+this.oa.ni[this.oa.Md],c);return c};k.ep=function(a,b,c){this.va()&&B(this,965,b,c,"SEQ."+this.oa.ni[this.oa.Md]);this.oa.Tf[this.oa.Md]=b;2==this.oa.Md&&(this.oa.rb=uk[b&15])};k.xn=function(a,b){var c=this.oa.Pi;B(this,972,null,b,"GRC1",c);return c};
k.Qo=function(a,b,c){this.oa.Pi=b;B(this,972,b,c,"GRC1")};k.yn=function(a,b){var c=this.oa.Qi;B(this,970,null,b,"GRC2",c);return c};k.Ro=function(a,b,c){this.oa.Qi=b;B(this,970,b,c,"GRC2")};k.wn=function(a,b){var c=this.oa.Ld;B(this,974,null,b,"GRC.INDX",c);return c};k.Po=function(a,b,c){this.oa.Ld=b;B(this,974,b,c,"GRC.INDX")};k.vn=function(a,b){var c=this.oa.Ae[this.oa.Ld];this.va()&&B(this,975,null,b,"GRC."+this.oa.mi[this.oa.Ld],c);return c};
k.Oo=function(a,b,c){this.va()&&B(this,975,b,c,"GRC."+this.oa.mi[this.oa.Ld]);this.oa.Ae[this.oa.Ld]=b;switch(this.oa.Ld){case 0:this.oa.Oh=uk[b&15];this.oa.We=this.oa.Oh&~this.oa.te;break;case 1:this.oa.te=~uk[b&15];this.oa.We=this.oa.Oh&~this.oa.te;break;case 2:this.oa.Wi=uk[b&15]&2155905152;break;case 3:case 5:this.bf(gl(this));break;case 4:this.oa.Oj=(b&3)<<3;break;case 6:Yk(this,!1);break;case 7:this.oa.Xi=uk[b&15^15]&2155905152;break;case 8:this.oa.Ab=b|b<<8|b<<16|b<<24}};
k.nn=function(a,b){return il(this,this.Nb,b)};k.Fo=function(a,b,c){a=this.Nb;a.Ch=a.uc;a.uc=b&31;B(this,a.port,b,c,"CRTC.INDX")};k.mn=function(a,b){return jl(this,this.Nb,b)};k.Eo=function(a,b,c){kl(this,this.Nb,b,c)};k.on=function(a,b){return ll(this,this.Nb,b)};k.Go=function(a,b,c){a=this.Nb;B(this,a.port+4,b,c,"MODE");a.Lc=b;Yk(this,!1)};k.ln=function(a,b){var c=this.Nb.nf;this.va()&&B(this,this.Nb.port+5,null,b,this.Nb.type+".COLOR",c);return c};
k.Do=function(a,b,c){this.va()&&B(this,this.Nb.port+5,b,c,this.Nb.type+".COLOR");this.Nb.nf!==b&&(this.Nb.nf=b,hl(this,!1))};k.pn=function(a,b){return ml(this,this.Nb,b)};function il(a,b,c){var d=b.uc;B(a,b.port,null,c,"CRTC.INDX",d);return d}function jl(a,b,c){var d;b.uc<b.Ui&&(d=b.kc[b.uc]);a.va()&&B(a,b.port+1,null,c,"CRTC."+b.Zg[b.uc],d);return d}function kl(a,b,c,d){b.uc<b.Ui&&(a.va()&&B(a,b.port+1,c,d,"CRTC."+b.Zg[b.uc]),b.kc[b.uc]=c,9==b.uc&&8!=b.Ch&&Yk(a,!0),Zk(a))}
function ll(a,b,c){var d=b.Lc;B(a,b.port+4,null,c,"MODE",d);return d}function ml(a,b,c){var d=0,e=D(a.T),f=e-b.ej;0>f&&(f=0);f%b.Yi>b.io&&(d|=1);f%=b.al;f>b.ko&&(d|=8);b.ej=e-f;b===a.oa?(d|=b.Mf&48^48,b.rd=!1):d=(b.Mf^=9)|240;b.Mf=d;B(a,b.port+6,null,c,b===a.oa?"STATUS1":"STATUS",d);return d}
var Pk={948:U.prototype.Fn,949:U.prototype.En,952:U.prototype.Gn,954:U.prototype.Hn,980:U.prototype.nn,981:U.prototype.mn,984:U.prototype.on,985:U.prototype.ln,986:U.prototype.pn},Qk={948:U.prototype.Wo,949:U.prototype.Vo,952:U.prototype.Xo,980:U.prototype.Fo,981:U.prototype.Eo,984:U.prototype.Go,985:U.prototype.Do},Rk={960:U.prototype.Uk,961:U.prototype.Uk,962:U.prototype.Rn,964:U.prototype.Qn,965:U.prototype.Pn,970:U.prototype.yn,972:U.prototype.xn,974:U.prototype.wn,975:U.prototype.vn},Sk={954:U.prototype.em,
960:U.prototype.dm,961:U.prototype.dm,962:U.prototype.Zo,964:U.prototype.fp,965:U.prototype.ep,970:U.prototype.Ro,972:U.prototype.Qo,974:U.prototype.Po,975:U.prototype.Oo,986:U.prototype.em};
Ka(function(){for(var a=A(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=z(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing &lt;canvas&gt; support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor;
e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new U(d,e,f);bb(d,c)}});
function ml(a){this.Tk=a.adapter;switch(this.Tk){case 1:this.Vj=1016;this.xg=4;break;case 2:this.Vj=760;this.xg=3;break;default:x("Unrecognized serial adapter #"+this.Tk);return}this.je=null;y.call(this,"SerialPort",a,ml,nl);var b=a.binding,c;a=ol;b&&(void 0===c&&(c="Panel"),(c=$a(c,this.id))&&(b=c.xa[b])&&this.Ib(null,a,b))}Xa(y,ml);var ol="buffer";k=ml.prototype;k.qk=function(a,b){return a==this.Eh?(this.re=b,this):null};
k.Ib=function(a,b,c){var d=this;switch(b){case ol:return this.xa[b]=this.je=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),pl(d,[b]))},c.onkeypress=function(a){a=a||window.event;pl(d,[a.which||a.keyCode])},!0}return!1};k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;this.oa=ib(a,"ChipSet");xb(b,this,ql,this.Vj);Bb(b,this,rl,this.Vj);this.Xa()};
k.ec=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.dc=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.qe()};k.save=function(){var a=new td(this),b=0,c=[];c[b++]=this.si;c[b++]=this.vk;c[b++]=this.ff;c[b++]=this.eh;c[b++]=this.fe;c[b++]=this.ad;c[b++]=this.od;c[b++]=this.Rc;c[b++]=this.tk;c[b]=this.Uf;a.set(0,c);return a.data()};k.restore=function(a){return this.qe(a[0])};
k.qe=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.si=a[b++];this.vk=a[b++];this.ff=a[b++];this.eh=a[b++];this.fe=a[b++];this.ad=a[b++];this.od=a[b++];this.Rc=a[b++];this.tk=a[b++];this.Uf=a[b];return!0};function pl(a,b){a.Uf=a.Uf.concat(b);sl(a)}function sl(a){0<a.Uf.length&&!(a.Rc&1)&&(a.si=a.Uf.shift(),a.Rc|=1);var b=-1;a.Rc&1&&a.eh&1&&(b=4);0<=b?(a.fe&=-8,a.fe|=b,a.oa&&a.xg&&xj(a.oa,a.xg)):(a.fe|=1,a.oa&&a.xg&&yj(a.oa,a.xg))}
k.Rn=function(a,b){var c=this.ad&128?this.ff&255:this.si;B(this,a,null,b,this.ad&128?"DLL":"RBR",c);this.Rc&=-2;sl(this);return c};k.Cn=function(a,b){var c=this.ad&128?this.ff>>8:this.eh;B(this,a,null,b,this.ad&128?"DLM":"IER",c);return c};k.Dn=function(a,b){var c=this.fe;B(this,a,null,b,"IIR",c);return c};k.En=function(a,b){var c=this.ad;B(this,a,null,b,"LCR",c);return c};k.Gn=function(a,b){var c=this.od;B(this,a,null,b,"MCR",c);return c};
k.Fn=function(a,b){var c=this.Rc;B(this,a,null,b,"LSR",c);return c};k.Mn=function(a,b){var c=this.tk;B(this,a,null,b,"MSR",c);return c};k.hp=function(a,b,c){B(this,a,b,c,this.ad&128?"DLL":"THR");this.ad&128?this.ff=this.ff&-256|b:(this.vk=b,this.Rc&=-97,this.je?(13!=b&&(8==b?this.je.value=this.je.value.slice(0,-1):(this.je.value+=String.fromCharCode(b),this.je.scrollTop=this.je.scrollHeight)),a=!0):a=!1,a&&(this.Rc|=96))};
k.To=function(a,b,c){B(this,a,b,c,this.ad&128?"DLM":"IER");this.ad&128?this.ff=this.ff&255|b<<8:this.eh=b};k.Uo=function(a,b,c){B(this,a,b,c,"LCR");this.ad=b};
k.Vo=function(a,b,c){var d=this.od;B(this,a,b,c,"MCR");this.od=b;this.re&&(d^b)&3&&(a=this.re,b=this.od,(c=3==(b&3))?a.ed||(d=!1,a.od&2||(a.reset(),a.jb("serial mouse reset"),d=!0),a.od&1||(a.jb("serial mouse ID requested"),d=!0),d&&(pl(a.dg,[77,77]),a.jb("serial mouse ID sent")),tl(a,a.hb),a.setActive(c)):a.ed&&(a.jb("serial mouse inactive"),ul(a.hb),a.setActive(c)),a.od=b)};
var ql={0:ml.prototype.Rn,1:ml.prototype.Cn,2:ml.prototype.Dn,3:ml.prototype.En,4:ml.prototype.Gn,5:ml.prototype.Fn,6:ml.prototype.Mn},rl={0:ml.prototype.hp,1:ml.prototype.To,3:ml.prototype.Uo,4:ml.prototype.Vo};Ka(function(){for(var a=A(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new ml(d);bb(d,c)}});function vl(a){y.call(this,"Mouse",a,vl,wl);if(this.Ti=a.serial)this.Yj="SerialPort";this.setActive(!1);this.xh=!1;this.Xa()}Xa(y,vl);k=vl.prototype;
k.vc=function(a,b,c,d){this.Ma=a;this.sa=b;this.T=c;this.ka=d;this.di=ib(this.Ma,"Video")};k.setActive=function(a){this.ed=a};k.ec=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Yj&&!this.dg){for(var c=null;(c=ib(this.Ma,this.Yj,c))&&(!c.qk||!(this.dg=c.qk(this.Ti,this))););this.dg?this.di&&(c=this.di,c.re=this,this.hb=c.hb):x(this.id+": "+this.Yj+" "+this.Ti+" unavailable")}this.ed?tl(this,this.hb):ul(this.hb)}return!0};
k.dc=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.qe()};k.save=function(){var a=new td(this);a.set(0,this.dk());return a.data()};k.restore=function(a){return this.qe(a[0])};k.qe=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.setActive(a[b++]);this.Qg=a[b++];this.Rg=a[b++];this.gf=a[b++];this.hf=a[b++];this.uh=a[b++];this.vh=a[b++];this.od=a[b];return!0};
k.dk=function(){var a=0,b=[];b[a++]=this.ed;b[a++]=this.Qg;b[a++]=this.Rg;b[a++]=this.gf;b[a++]=this.hf;b[a++]=this.uh;b[a++]=this.vh;b[a]=this.od;return b};k.Fg=function(a){this.xh=a};
function tl(a,b){b&&(a.Hi||(b.addEventListener("mousemove",function(b){if(a.ed&&a.T&&a.T.na.Fb){if(0>a.Qg||0>a.Rg)a.Qg=b.clientX,a.Rg=b.clientY;a.xh?(a.gf=b.movementX||b.mozMovementX||b.webkitMovementX||0,a.hf=b.movementY||b.mozMovementY||b.webkitMovementY||0):(a.gf=b.clientX-a.Qg,a.hf=b.clientY-a.Rg);(a.gf||a.hf)&&xl(a,null,b.clientX,b.clientY);a.Qg=b.clientX;a.Rg=b.clientY}},!1),b.addEventListener("mousedown",function(b){yl(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){yl(a,b.button,
!1)},!1),a.Hi=!0),b.style.cursor="none")}function ul(a){a&&(a.style.cursor="auto")}function yl(a,b,c){if(a.ed&&a.T&&a.T.na.Fb){var d;!(d=!1!==a.xh)&&(d=a.di)&&(d=a.di,d=d.Rm?d.yf(!0):!1);d||(a.xh=null);switch(b){case 0:a.uh!=c&&(a.uh=c,xl(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.vh!=c&&(a.vh=c,xl(a,"mouse button2 "+(c?"dn":"up")))}}}
function xl(a,b,c,d){var e=64|(a.uh?32:0)|(a.vh?16:0)|(a.hf&192)>>4|(a.gf&192)>>6,f=a.gf&63,g=a.hf&63;a.wa(nl)&&a.jb((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+q(e)+","+q(f)+","+q(g)+"]",0,!0);pl(a.dg,[e,f,g]);a.gf=a.hf=0}Ka(function(){for(var a=A(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new vl(d);bb(d,c)}});
function zl(a,b,c){y.call(this,"Disk",{id:a.Vk+".disk"+Al++},zl,Bl);this.ga=a;this.Ma=a.Ma;this.ka=a.ka;this.Pa=b;this.wd=b.name;this.tf=b.tf;this.yh=this.Jd=!1;this.create(c,b.zb,b.Ab,b.Hb,b.qb);this.Ae=[];this.Ug=[];this.Vd=null;this.$k=0;this.Oi=!1;this.Xa()}var Al=0;Xa(y,zl);k=zl.prototype;k.vc=function(a,b,c,d){this.ka=d};k.ec=function(a,b){b||!this.yh||this.Jd||(this.Xa(!1),this.load(this.wd,this.af,null,this.Qm,this));return!0};k.Qm=function(){this.Xa(!0)};
k.dc=function(a,b){if(this.Jd){var c,d=0;if(this.Oi&&!va("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=Cl(this,!1);)if(d=c[0]){this.ga.Ia('Unable to save "'+this.wd+'" (error '+d+")");break}b&&this.Jd&&(c="action=close&volume="+this.af,c+="&machine="+this.ga.vf(),c+="&user="+this.ga.oe(),ta(ua()+"/api/v1/disk?"+c,!0),this.Jd=!1);!d&&a&&this.ga.Ia(this.wd+" saved")}return!0};
k.create=function(a,b,c,d,e){this.mode=a;this.zb=b;this.Ab=c;this.Hb=d;this.qb=e;this.fb=[];if("preload"!=this.mode){a=Array(this.zb);for(b=0;b<a.length;b++){c=Array(this.Ab);for(d=0;d<c.length;d++){e=Array(this.Hb);for(var f=1;f<=e.length;f++)e[f-1]=Dl(null,b,d,f,this.qb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.fb=a}this.pf=null};
k.load=function(a,b,c,d,e){var f=b;if(!this.Te)if(this.wd=a,this.af=b,this.Te=d,this.Km=e||this.ga,c){var g=this,h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ca[c];if(d){g.zb=d[0];g.Ab=d[1];g.Hb=d[2];g.qb=512;b=g.qb>>2;var e=d=0,a=new DataView(a,0,c);g.fb=Array(g.zb);for(c=0;c<g.fb.length;c++)for(var f=g.fb[c]=Array(g.Ab),v=0;v<f.length;v++)for(var C=f[v]=Array(g.Hb),R=0;R<C.length;R++){for(var O=Dl(null,c,v,R+1,g.qb,0),Aa=O.data,Ga=0;Ga<b;Ga++,e+=4)var ab=Aa[Ga]=a.getInt32(e,
!0),d=d+ab&4294967295;O.Gc=b;C[R]=O}g.pf=d;b=g}else g.Ia("Unrecognized diskette format ("+c+" bytes)");g.Te&&(g.Te.call(g.ga,g.Pa,b,g.wd,g.af),g.Te=null)};h.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=ha(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=El(this,b),this.yh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c="dir"),f=
ua()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.tf?"":d)+"&format=json")),ta(f,!0,null,this,this.Om,b)};
k.Om=function(a,b,c,d){var e=null;this.uf=!1;var f=0>c&&this.Ma&&!this.Ma.na.Ub;if(this.yh)c?this.ga.Ia('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Jd=!0,e=this);else if(c)this.ga.Ia('Unable to load disk "'+this.wd+'" (error '+c+")",f);else try{if(0<ga(a,!0).toLowerCase().indexOf("-readonly"))this.uf=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.uf=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.wd]: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)x(h[0]);else{this.zb=h.length;this.Ab=h[0].length;this.Hb=h[0][0].length;var n=h[0][0][0];this.qb=n&&n.length||512;for(b=a=0;b<this.zb;b++)for(c=0;c<this.Ab;c++)for(d=0;d<this.Hb;d++)if(n=h[b][c][d]){var l=n.length;void 0===l&&(l=n.length=512);var l=l>>2,s=n.pattern;void 0===s&&(s=n.pattern=0);var r=n.data;if(void 0===r){var t=n.bytes;if(void 0!==t&&t.length){for(var f=
l<<2,w=t.length;w<f;w++)t[w]=s;this.fill(n,t,0)}else r=[],s=n.pattern=s|s<<8|s<<16|s<<24,n.data=r;delete n.bytes}Dl(n,b,c);for(f=0;f<r.length;f++)a=a+r[f]&4294967295}this.fb=h;this.pf=a;e=this}else x("Empty disk image: "+this.wd)}catch(v){x("Disk image error: "+v.message)}this.Te&&(this.Te.call(this.Km,this.Pa,e,this.wd,this.af),this.Te=null)};function Dl(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.$m=b;a.bn=c;a.gd=a.Gc=0;a.vb=!1;return a}
k.oo=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 n=0;h--;){var l=this.seek(e,f,g,!0);if(!l)break;this.fill(l,b,n);n+=l.length;g++}}(d=d[5])&&d(c,a)};function El(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.zb+":"+a.Ab+":"+a.Hb+":"+a.qb;c+="&machine="+a.ga.vf();c+="&user="+a.ga.oe();return ua()+"/api/v1/disk?"+c}
function Fl(a,b,c,d,e,f){if(a.Jd){var g;g="action=read&volume="+a.af;g+="&chs="+a.zb+":"+a.Ab+":"+a.Hb+":"+a.qb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ga.vf());g+="&user="+a.ga.oe();ta(ua()+"/api/v1/disk?"+g,!0,null,a,a.oo,[b,c,d,e,!0,f])}else f&&f(-1,!1)}function Gl(a,b,c){b.vb=!0;var d=a.Ae.indexOf(b);0<=d&&(a.Ae.splice(d,1),a.Ug.splice(d,1));a.Ae.push(b);a.Ug.push(qa());c&&Hl(a)}
function Hl(a){if(a.Ae.length){var b=a.Ug[0]+2E3;a.Vd&&a.$k<b&&(clearTimeout(a.Vd),a.Vd=null);if(!a.Vd){var c=qa(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Vd=setTimeout(function(){Cl(a,!0)},b);a.$k=c+b}}else a.Vd&&(clearTimeout(a.Vd),a.Vd=null)}
function Cl(a,b){b&&(a.Vd=null);var c=a.Ae[0];if(c){for(var d=c.$m,e=c.bn,c=c.sector,f=0,g=[],h=c-1;h<a.fb[d][e].length;h++){var n=a.fb[d][e][h];if(!n.vb)break;var l=a.Ae.indexOf(n);a.Ae.splice(l,1);a.Ug.splice(l,1);g=g.concat(Il(n));n.vb=!1;f++}a.Jd?(h={},a.Oi=!0,h.action="write",h.volume=a.af,h.chs=a.zb+":"+a.Ab+":"+a.Hb+":"+a.qb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ga.vf(),h.user=a.ga.oe(),h.data=JSON.stringify(g),d=ta(ua()+"/api/v1/disk",b,h,a,a.to,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.to=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Oi=!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 g=this.fb[a][b][e];c?Gl(this,g,!1):g.vb||(g.gd=g.Gc=0)}d&&Hl(this)};k.info=function(){return this.fb.length?[this.fb.length,this.fb[0].length,this.fb[0][0].length,this.fb[0][0][0].length]:[0,0,0,0]};
function Jl(a){a=JSON.stringify(a.fb);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.fb[a];if(h){var n=h[b];if(!n&&g.Zf&&b<g.Ab)for(n=h[b]=Array(g.ge),h=0;h<n.length;h++)n[h]=Dl(null,a,b,h+1,g.kb,0);if(n){for(h=0;h<n.length;h++)if(n[h]&&n[h].sector==c){f=n[h];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++h<n.length;)null===n[h].pattern&&d++;Fl(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.Zf&&9==g.ab&&(f=n[h]=Dl(null,a,b,g.ab,g.kb,0))}}e&&e(f,!1);return f};
k.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function Il(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 Kl(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.uf)return!1;if(b<a.length){if(c!=Kl(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.gd?(a.Gc+=a.gd-f,a.gd=f):f>=a.gd+a.Gc&&(a.Gc+=f-(a.gd+a.Gc)+1):(a.gd=f,a.Gc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Jd&&Gl(this,a,!0)}return!0}return null};
k.save=function(){var a=0,b=[];b[a++]=[this.af,this.pf,this.zb,this.Ab,this.Hb,this.qb];if(!this.Jd&&!this.uf)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 g=c[d][e][f];if(g&&g.Gc){for(var h=[],n=0,l=g.gd,s=g.gd+g.Gc;l<s;)h[n++]=g.data[l++];b[a++]=[d,e,f,g.gd,h]}}return b};
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.fb.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.pf&&e[1]!=this.pf&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.pf+")",b=-1));for(this.fb.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],n=g[f++],l=g[f++];if(h>=this.fb.length||n>=this.fb[h].length||l>=this.fb[h][n].length){c="sector "+h+":"+n+":"+l+" out of range ("+
b+" changes applied)";b=-1;break}if(this.uf){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.fb[h][n][l]){for(n=h.data.length;n<e;)h.data[n++]=h.pattern;n=0;h.gd=e;for(h.Gc=f.length;e<g;)h.data[e++]=f[n++];b++}}}0>b&&this.ga.Ia("unable to restore disk '"+this.wd+": "+c);return b};
function Ll(a){y.call(this,"FDC",a,Ll,Ml);this.dmaRead=this.Ai;this.dmaWrite=this.Bi;this.dmaFormat=this.Lm;this.Ne=null;if(a.autoMount&&(this.Ne=a.autoMount,"string"==typeof this.Ne))try{this.Ne=eval("("+a.autoMount+")")}catch(b){x("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Ne=null}this.Ac=[];this.Mk=!Ca("Mobi")&&window&&"FileReader"in window}Xa(y,Ll);m={};aa={};
var Nl={3:{Fd:3,ie:0,name:aa.iq},4:{Fd:2,ie:1,name:aa.gq},5:{Fd:9,ie:7,name:aa.uq},6:{Fd:9,ie:7,name:aa.aq},7:{Fd:2,ie:0,name:aa.cq},8:{Fd:1,ie:2,name:aa.hq},10:{Fd:2,ie:7,name:aa.bq},13:{Fd:6,ie:7,name:aa.Np},15:{Fd:3,ie:0,name:aa.fq}};k=Ll.prototype;
function nl(a){this.Qk=a.adapter;switch(this.Qk){case 1:this.Tj=1016;this.vg=4;break;case 2:this.Tj=760;this.vg=3;break;default:x("Unrecognized serial adapter #"+this.Qk);return}this.he=null;y.call(this,"SerialPort",a,nl,ol);var b=a.binding,c;a=pl;b&&(void 0===c&&(c="Panel"),(c=ab(c,this.id))&&(b=c.xa[b])&&this.Ib(null,a,b))}Xa(y,nl);var pl="buffer";k=nl.prototype;k.ok=function(a,b){return a==this.Dh?(this.pe=b,this):null};
k.Ib=function(a,b,c){var d=this;switch(b){case pl:return this.xa[b]=this.he=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),ql(d,[b]))},c.onkeypress=function(a){a=a||window.event;ql(d,[a.which||a.keyCode])},!0}return!1};k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;this.pa=ib(a,"ChipSet");xb(b,this,rl,this.Tj);Bb(b,this,sl,this.Tj);this.Va()};
k.ec=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.dc=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.oe()};k.save=function(){var a=new sd(this),b=0,c=[];c[b++]=this.si;c[b++]=this.tk;c[b++]=this.ef;c[b++]=this.bh;c[b++]=this.de;c[b++]=this.ad;c[b++]=this.pd;c[b++]=this.Rc;c[b++]=this.rk;c[b]=this.Vf;a.set(0,c);return a.data()};k.restore=function(a){return this.oe(a[0])};
k.oe=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.si=a[b++];this.tk=a[b++];this.ef=a[b++];this.bh=a[b++];this.de=a[b++];this.ad=a[b++];this.pd=a[b++];this.Rc=a[b++];this.rk=a[b++];this.Vf=a[b];return!0};function ql(a,b){a.Vf=a.Vf.concat(b);tl(a)}function tl(a){0<a.Vf.length&&!(a.Rc&1)&&(a.si=a.Vf.shift(),a.Rc|=1);var b=-1;a.Rc&1&&a.bh&1&&(b=4);0<=b?(a.de&=-8,a.de|=b,a.pa&&a.vg&&yj(a.pa,a.vg)):(a.de|=1,a.pa&&a.vg&&zj(a.pa,a.vg))}
k.On=function(a,b){var c=this.ad&128?this.ef&255:this.si;B(this,a,null,b,this.ad&128?"DLL":"RBR",c);this.Rc&=-2;tl(this);return c};k.zn=function(a,b){var c=this.ad&128?this.ef>>8:this.bh;B(this,a,null,b,this.ad&128?"DLM":"IER",c);return c};k.An=function(a,b){var c=this.de;B(this,a,null,b,"IIR",c);return c};k.Bn=function(a,b){var c=this.ad;B(this,a,null,b,"LCR",c);return c};k.Dn=function(a,b){var c=this.pd;B(this,a,null,b,"MCR",c);return c};
k.Cn=function(a,b){var c=this.Rc;B(this,a,null,b,"LSR",c);return c};k.Jn=function(a,b){var c=this.rk;B(this,a,null,b,"MSR",c);return c};k.gp=function(a,b,c){B(this,a,b,c,this.ad&128?"DLL":"THR");this.ad&128?this.ef=this.ef&-256|b:(this.tk=b,this.Rc&=-97,this.he?(13!=b&&(8==b?this.he.value=this.he.value.slice(0,-1):(this.he.value+=String.fromCharCode(b),this.he.scrollTop=this.he.scrollHeight)),a=!0):a=!1,a&&(this.Rc|=96))};
k.So=function(a,b,c){B(this,a,b,c,this.ad&128?"DLM":"IER");this.ad&128?this.ef=this.ef&255|b<<8:this.bh=b};k.To=function(a,b,c){B(this,a,b,c,"LCR");this.ad=b};
k.Uo=function(a,b,c){var d=this.pd;B(this,a,b,c,"MCR");this.pd=b;this.pe&&(d^b)&3&&(a=this.pe,b=this.pd,(c=3==(b&3))?a.ed||(d=!1,a.pd&2||(a.reset(),a.qb("serial mouse reset"),d=!0),a.pd&1||(a.qb("serial mouse ID requested"),d=!0),d&&(ql(a.dg,[77,77]),a.qb("serial mouse ID sent")),ul(a,a.jb),a.setActive(c)):a.ed&&(a.qb("serial mouse inactive"),vl(a.jb),a.setActive(c)),a.pd=b)};
var rl={0:nl.prototype.On,1:nl.prototype.zn,2:nl.prototype.An,3:nl.prototype.Bn,4:nl.prototype.Dn,5:nl.prototype.Cn,6:nl.prototype.Jn},sl={0:nl.prototype.gp,1:nl.prototype.So,3:nl.prototype.To,4:nl.prototype.Uo};Ka(function(){for(var a=A(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new nl(d);bb(d,c)}});function wl(a){y.call(this,"Mouse",a,wl,xl);if(this.Ri=a.serial)this.Wj="SerialPort";this.setActive(!1);this.vh=!1;this.Va()}Xa(y,wl);k=wl.prototype;
k.vc=function(a,b,c,d){this.Ma=a;this.sa=b;this.T=c;this.ka=d;this.ci=ib(this.Ma,"Video")};k.setActive=function(a){this.ed=a};k.ec=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Wj&&!this.dg){for(var c=null;(c=ib(this.Ma,this.Wj,c))&&(!c.ok||!(this.dg=c.ok(this.Ri,this))););this.dg?this.ci&&(c=this.ci,c.pe=this,this.jb=c.jb):x(this.id+": "+this.Wj+" "+this.Ri+" unavailable")}this.ed?ul(this,this.jb):vl(this.jb)}return!0};
k.dc=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.oe()};k.save=function(){var a=new sd(this);a.set(0,this.bk());return a.data()};k.restore=function(a){return this.oe(a[0])};k.oe=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.setActive(a[b++]);this.Og=a[b++];this.Pg=a[b++];this.ff=a[b++];this.gf=a[b++];this.sh=a[b++];this.th=a[b++];this.pd=a[b];return!0};
k.bk=function(){var a=0,b=[];b[a++]=this.ed;b[a++]=this.Og;b[a++]=this.Pg;b[a++]=this.ff;b[a++]=this.gf;b[a++]=this.sh;b[a++]=this.th;b[a]=this.pd;return b};k.Dg=function(a){this.vh=a};
function ul(a,b){b&&(a.Fi||(b.addEventListener("mousemove",function(b){if(a.ed&&a.T&&a.T.na.Fb){if(0>a.Og||0>a.Pg)a.Og=b.clientX,a.Pg=b.clientY;a.vh?(a.ff=b.movementX||b.mozMovementX||b.webkitMovementX||0,a.gf=b.movementY||b.mozMovementY||b.webkitMovementY||0):(a.ff=b.clientX-a.Og,a.gf=b.clientY-a.Pg);(a.ff||a.gf)&&yl(a,null,b.clientX,b.clientY);a.Og=b.clientX;a.Pg=b.clientY}},!1),b.addEventListener("mousedown",function(b){zl(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){zl(a,b.button,
!1)},!1),a.Fi=!0),b.style.cursor="none")}function vl(a){a&&(a.style.cursor="auto")}function zl(a,b,c){if(a.ed&&a.T&&a.T.na.Fb){var d;!(d=!1!==a.vh)&&(d=a.ci)&&(d=a.ci,d=d.Om?d.yf(!0):!1);d||(a.vh=null);switch(b){case 0:a.sh!=c&&(a.sh=c,yl(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.th!=c&&(a.th=c,yl(a,"mouse button2 "+(c?"dn":"up")))}}}
function yl(a,b,c,d){var e=64|(a.sh?32:0)|(a.th?16:0)|(a.gf&192)>>4|(a.ff&192)>>6,f=a.ff&63,g=a.gf&63;a.va(ol)&&a.qb((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+q(e)+","+q(f)+","+q(g)+"]",0,!0);ql(a.dg,[e,f,g]);a.ff=a.gf=0}Ka(function(){for(var a=A(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new wl(d);bb(d,c)}});
function Al(a,b,c){y.call(this,"Disk",{id:a.Sk+".disk"+Bl++},Al,Cl);this.ga=a;this.Ma=a.Ma;this.ka=a.ka;this.Qa=b;this.xd=b.name;this.tf=b.tf;this.wh=this.Jd=!1;this.create(c,b.Bb,b.Cb,b.Hb,b.pb);this.ze=[];this.Sg=[];this.Ud=null;this.Xk=0;this.Mi=!1;this.Va()}var Bl=0;Xa(y,Al);k=Al.prototype;k.vc=function(a,b,c,d){this.ka=d};k.ec=function(a,b){b||!this.wh||this.Jd||(this.Va(!1),this.load(this.xd,this.$e,null,this.Nm,this));return!0};k.Nm=function(){this.Va(!0)};
k.dc=function(a,b){if(this.Jd){var c,d=0;if(this.Mi&&!va("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=Dl(this,!1);)if(d=c[0]){this.ga.Ia('Unable to save "'+this.xd+'" (error '+d+")");break}b&&this.Jd&&(c="action=close&volume="+this.$e,c+="&machine="+this.ga.vf(),c+="&user="+this.ga.me(),ta(ua()+"/api/v1/disk?"+c,!0),this.Jd=!1);!d&&a&&this.ga.Ia(this.xd+" saved")}return!0};
k.create=function(a,b,c,d,e){this.mode=a;this.Bb=b;this.Cb=c;this.Hb=d;this.pb=e;this.hb=[];if("preload"!=this.mode){a=Array(this.Bb);for(b=0;b<a.length;b++){c=Array(this.Cb);for(d=0;d<c.length;d++){e=Array(this.Hb);for(var f=1;f<=e.length;f++)e[f-1]=El(null,b,d,f,this.pb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.hb=a}this.pf=null};
k.load=function(a,b,c,d,e){var f=b;if(!this.Se)if(this.xd=a,this.$e=b,this.Se=d,this.Hm=e||this.ga,c){var g=this,h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ca[c];if(d){g.Bb=d[0];g.Cb=d[1];g.Hb=d[2];g.pb=512;b=g.pb>>2;var e=d=0,a=new DataView(a,0,c);g.hb=Array(g.Bb);for(c=0;c<g.hb.length;c++)for(var f=g.hb[c]=Array(g.Cb),u=0;u<f.length;u++)for(var C=f[u]=Array(g.Hb),R=0;R<C.length;R++){for(var O=El(null,c,u,R+1,g.pb,0),ya=O.data,Fa=0;Fa<b;Fa++,e+=4)var Za=ya[Fa]=a.getInt32(e,
!0),d=d+Za&4294967295;O.Hc=b;C[R]=O}g.pf=d;b=g}else g.Ia("Unrecognized diskette format ("+c+" bytes)");g.Se&&(g.Se.call(g.ga,g.Qa,b,g.xd,g.$e),g.Se=null)};h.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=ha(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=Fl(this,b),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"),f=
ua()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.tf?"":d)+"&format=json")),ta(f,!0,null,this,this.Lm,b)};
k.Lm=function(a,b,c,d){var e=null;this.uf=!1;var f=0>c&&this.Ma&&!this.Ma.na.Tb;if(this.wh)c?this.ga.Ia('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Jd=!0,e=this);else if(c)this.ga.Ia('Unable to load disk "'+this.xd+'" (error '+c+")",f);else try{if(0<ga(a,!0).toLowerCase().indexOf("-readonly"))this.uf=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.uf=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.xd]: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)x(h[0]);else{this.Bb=h.length;this.Cb=h[0].length;this.Hb=h[0][0].length;var n=h[0][0][0];this.pb=n&&n.length||512;for(b=a=0;b<this.Bb;b++)for(c=0;c<this.Cb;c++)for(d=0;d<this.Hb;d++)if(n=h[b][c][d]){var m=n.length;void 0===m&&(m=n.length=512);var m=m>>2,s=n.pattern;void 0===s&&(s=n.pattern=0);var r=n.data;if(void 0===r){var t=n.bytes;if(void 0!==t&&t.length){for(var f=
m<<2,w=t.length;w<f;w++)t[w]=s;this.fill(n,t,0)}else r=[],s=n.pattern=s|s<<8|s<<16|s<<24,n.data=r;delete n.bytes}El(n,b,c);for(f=0;f<r.length;f++)a=a+r[f]&4294967295}this.hb=h;this.pf=a;e=this}else x("Empty disk image: "+this.xd)}catch(u){x("Disk image error: "+u.message)}this.Se&&(this.Se.call(this.Hm,this.Qa,e,this.xd,this.$e),this.Se=null)};function El(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Xm=b;a.Zm=c;a.gd=a.Hc=0;a.xb=!1;return a}
k.lo=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 n=0;h--;){var m=this.seek(e,f,g,!0);if(!m)break;this.fill(m,b,n);n+=m.length;g++}}(d=d[5])&&d(c,a)};function Fl(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.Bb+":"+a.Cb+":"+a.Hb+":"+a.pb;c+="&machine="+a.ga.vf();c+="&user="+a.ga.me();return ua()+"/api/v1/disk?"+c}
function Gl(a,b,c,d,e,f){if(a.Jd){var g;g="action=read&volume="+a.$e;g+="&chs="+a.Bb+":"+a.Cb+":"+a.Hb+":"+a.pb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ga.vf());g+="&user="+a.ga.me();ta(ua()+"/api/v1/disk?"+g,!0,null,a,a.lo,[b,c,d,e,!0,f])}else f&&f(-1,!1)}function Hl(a,b,c){b.xb=!0;var d=a.ze.indexOf(b);0<=d&&(a.ze.splice(d,1),a.Sg.splice(d,1));a.ze.push(b);a.Sg.push(qa());c&&Il(a)}
function Il(a){if(a.ze.length){var b=a.Sg[0]+2E3;a.Ud&&a.Xk<b&&(clearTimeout(a.Ud),a.Ud=null);if(!a.Ud){var c=qa(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Ud=setTimeout(function(){Dl(a,!0)},b);a.Xk=c+b}}else a.Ud&&(clearTimeout(a.Ud),a.Ud=null)}
function Dl(a,b){b&&(a.Ud=null);var c=a.ze[0];if(c){for(var d=c.Xm,e=c.Zm,c=c.sector,f=0,g=[],h=c-1;h<a.hb[d][e].length;h++){var n=a.hb[d][e][h];if(!n.xb)break;var m=a.ze.indexOf(n);a.ze.splice(m,1);a.Sg.splice(m,1);g=g.concat(Jl(n));n.xb=!1;f++}a.Jd?(h={},a.Mi=!0,h.action="write",h.volume=a.$e,h.chs=a.Bb+":"+a.Cb+":"+a.Hb+":"+a.pb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ga.vf(),h.user=a.ga.me(),h.data=JSON.stringify(g),d=ta(ua()+"/api/v1/disk",b,h,a,a.qo,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.qo=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Mi=!1;if(0<=a&&a<this.hb.length&&0<=b&&b<this.hb[a].length)for(e-=1;0<f--&&0<=e&&e<this.hb[a][b].length;e++){var g=this.hb[a][b][e];c?Hl(this,g,!1):g.xb||(g.gd=g.Hc=0)}d&&Il(this)};k.info=function(){return this.hb.length?[this.hb.length,this.hb[0].length,this.hb[0][0].length,this.hb[0][0][0].length]:[0,0,0,0]};
k.seek=function(a,b,c,d,e){var f=null,g=this.Qa,h=this.hb[a];if(h){var n=h[b];if(!n&&g.qi&&b<g.Cb)for(n=h[b]=Array(g.ee),h=0;h<n.length;h++)n[h]=El(null,a,b,h+1,g.kb,0);if(n){for(h=0;h<n.length;h++)if(n[h]&&n[h].sector==c){f=n[h];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++h<n.length;)null===n[h].pattern&&d++;Gl(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.qi&&9==g.$a&&(f=n[h]=El(null,a,b,g.$a,g.kb,0))}}e&&e(f,!1);return f};
k.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function Jl(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 Kl(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.uf)return!1;if(b<a.length){if(c!=Kl(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.gd?(a.Hc+=a.gd-f,a.gd=f):f>=a.gd+a.Hc&&(a.Hc+=f-(a.gd+a.Hc)+1):(a.gd=f,a.Hc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Jd&&Hl(this,a,!0)}return!0}return null};
k.save=function(){var a=0,b=[];b[a++]=[this.$e,this.pf,this.Bb,this.Cb,this.Hb,this.pb];if(!this.Jd&&!this.uf)for(var c=this.hb,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=[],n=0,m=g.gd,s=g.gd+g.Hc;m<s;)h[n++]=g.data[m++];b[a++]=[d,e,f,g.gd,h]}}return b};
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.hb.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.pf&&e[1]!=this.pf&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.pf+")",b=-1));for(this.hb.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],n=g[f++],m=g[f++];if(h>=this.hb.length||n>=this.hb[h].length||m>=this.hb[h][n].length){c="sector "+h+":"+n+":"+m+" out of range ("+
b+" changes applied)";b=-1;break}if(this.uf){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.hb[h][n][m]){for(n=h.data.length;n<e;)h.data[n++]=h.pattern;n=0;h.gd=e;for(h.Hc=f.length;e<g;)h.data[e++]=f[n++];b++}}}0>b&&this.ga.Ia("unable to restore disk '"+this.xd+": "+c);return b};
k.toJSON=function(){var a=JSON.stringify(this.hb),a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,""),a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:"),a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");return a=a.replace(/(sector|length|data|pattern):/gm,'"$1":')};
function Ll(a){y.call(this,"FDC",a,Ll,Ml);this.dmaRead=this.Ai;this.dmaWrite=this.Bi;this.dmaFormat=this.Im;this.Me=null;if(a.autoMount&&(this.Me=a.autoMount,"string"==typeof this.Me))try{this.Me=eval("("+a.autoMount+")")}catch(b){x("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Me=null}this.Ac=[];this.Jk=!Ca("Mobi")&&window&&"FileReader"in window}Xa(y,Ll);l={};ba={};
var Nl={3:{Fd:3,ge:0,name:ba.hq},4:{Fd:2,ge:1,name:ba.fq},5:{Fd:9,ge:7,name:ba.tq},6:{Fd:9,ge:7,name:ba.$p},7:{Fd:2,ge:0,name:ba.bq},8:{Fd:1,ge:2,name:ba.gq},10:{Fd:2,ge:7,name:ba.aq},13:{Fd:6,ge:7,name:ba.Mp},15:{Fd:3,ge:0,name:ba.eq}};k=Ll.prototype;
k.Ib=function(a,b,c){var d=this;switch(b){case "listDisks":return this.xa[b]=c,c.onchange=function(){var a=d.xa.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("({"+b+"})")}catch(h){x("FDC option error: "+h.message)}b=g.desc;void 0===b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.xa[b]=c,c.onchange=function(){var a=ea(c.value,10);null!=a&&Ol(d,a)},!0;
case "loadDrive":return this.xa[b]=c,c.onclick=function(){var a=d.xa.listDisks;a&&Pl(d,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return this.Mk?(this.xa[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Pl(d,ga(b,!0),b,a)}return!1}):c.parentNode.removeChild(c),!0}return!1};
k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;this.Ma=a;this.oa=ib(a,"ChipSet");this.Nd();xb(b,this,Ql);Bb(b,this,Rl);this.Mk&&Sl(this,"Local Disk","?");Sl(this,"Remote Disk","??");this.Yf()||this.Xa()};
k.ec=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ma.Li){this.Ac=[];for(var c=0;c<this.Ga.length;c++)Tl(this,c,!0);this.Yf(!0)}}else if(!this.restore(a))return!1;if(c=this.xa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.dj;d++){var e=window.document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.dj&&(c.value="0",Ol(this,0))}}return!0};
k.dc=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Nd()};k.save=function(){var a=new td(this);a.set(0,this.ak());return a.data()};k.restore=function(a){return this.Nd(a[0])};
k.Nd=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.mb=a[b++];b++;this.Fa=a[b++];this.jc=a[b++];this.Bb=a[b++];this.lb=a[b++];this.Kf=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.Ac=c);void 0===this.Ga&&(this.dj=4,this.oa&&(this.dj=aj(this.oa)),this.Ga=Array(4));for(c=0;c<this.Ga.length;c++){var f=this.Ga[c];if(void 0===f){var f=this.Ga[c]={},g;if(this.oa)a:{g=this.oa;if(c<aj(g)){if(!g.Zd){g=360;break a}if(c<g.Zd.length){g=g.Zd[c];break a}}g=0}else g=0;switch(g){case 160:case 180:f.Ab=
1;default:f.zb=40;f.Hb=9;break;case 720:f.zb=80;f.Hb=9;break;case 1200:f.zb=80;f.Hb=15;break;case 1440:f.zb=80,f.Hb=18}}this.Ui(f,c,e[c])||(d=!1)}this.we=a[b++]||0;this.km=a[b]||0;return d};k.ak=function(){var a=0,b=[];b[a++]=this.mb;b[a++]=0;b[a++]=this.Fa;b[a++]=this.jc;b[a++]=this.Bb;b[a++]=this.lb;b[a++]=this.Kf;b[a++]=this.ck();for(var c=a++,d=0;d<this.Ga.length;d++){var e=this.Ga[d];e.za&&Ul(this,e.bf,e.za)}b[c]=this.Ac;b[a++]=this.we;b[a]=this.km;return b};
k.Ui=function(a,b,c){var d=0,e=!0;a.mb=b;a.Kc=a.sf=!1;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.zb||40,a.Ab||c[3],a.Hb||9,a.qb||512,c[1],a.Lh,a.vg,a.wg]);a.cb=c[d++];var f=c[d++];a.name=f[0];a.zb=f[1];a.Ab=f[2];a.Hb=f[3];a.qb=f[4];a.tf=f[5];(a.Lh=f[6])?(a.vg=f[7],a.wg=f[8]):(a.Lh=a.zb,a.vg=a.Ab,a.wg=a.Hb);a.Oa=c[d++];a.ee=c[d++];a.ub=c[d++];a.ee=100<=a.ee?a.ee-100:a.ee-a.ub;a.ab=c[d++];a.ge=c[d++];a.kb=c[d++];a.ib=c[d++];a.Va=null;a.za||(a.bf="");var g=c[d++];
102==g&&(g=!1);"boolean"==typeof g?(f=c[d++],c=c[d],g?(d=this.Ga[b],Tl(this,b,!0,!0),d.sf=!0,b=new zl(this,d,"preload"),this.Fk(d,b,f,c,!0)):Vl(this,b,f,c,!0)?a.za&&c&&Wl(this,f,c,a.za):this.Xa(!1)):void 0!==g&&a.za&&0>a.za.restore(g)&&(e=!1);e&&a.za&&void 0!==a.ib&&(a.Va=a.za.seek(a.ub,a.Oa,a.ab));return e};k.ck=function(){for(var a=0,b=[],c=0;c<this.Ga.length;c++)b[a++]=this.bk(this.Ga[c]);return b};
k.bk=function(a){var b=0,c=[];c[b++]=a.cb;c[b++]=[a.name,a.zb,a.Ab,a.Hb,a.qb,a.tf,a.Lh,a.vg,a.wg];c[b++]=a.Oa;c[b++]=a.ee+100;c[b++]=a.ub;c[b++]=a.ab;c[b++]=a.ge;c[b++]=a.kb;c[b++]=a.ib;c[b++]=a.sf;c[b++]=a.pm;c[b]=a.bf;return c};k.Ck=function(a){var b;a=this.Ga[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};k.sm=function(a,b,c){if(a.za){var d=a.za.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.ub=Math.floor(b/f),b%=f,a.Oa=Math.floor(b/e),a.ab=b%e+1,a.kb=c*d[3],a.cb=0,!0}return!1};
k.Yf=function(a){a||(this.Ie=0);if(this.Ne)for(var b in this.Ne){var c=this.Ne[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.Ga.length){!Vl(this,d,c.name,c.path,!0)&&a&&this.Xa(!1);continue}}this.Ia("Unrecognized auto-mount specification for drive "+b)}return!!this.Ie};
function Pl(a,b,c,d){var e,f=a.xa.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.Ga.length)if(c)if("?"==c)a.Ia('Use "Choose File" and "Load" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=ga(c);a.aa("Attempting to load "+c+' as "'+b+'"')}for(a.aa("loading disk "+c+"...");Vl(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=
a,g=c,h=void 0,h=0;h<f.Ac.length;h++)if(f.Ac[h][1]==g){f.Ac.splice(h,1);break}Tl(a,e,!1,!0)}}else Tl(a,e);else a.Ia("Nothing to load")}function Vl(a,b,c,d,e,f){var g=a.Ga[b];if(d&&g.bf!=d){Tl(a,b,e,!0);if(g.Kc)return a.Ia("Drive "+b+" busy"),!0;g.Kc=!0;e&&(g.Re=!0,a.Ie++,a.wa()&&a.jb("loading diskette '"+c+"'"));g.sf=!!f;(new zl(a,g,"preload")).load(c,d,f,a.Fk);return!1}return!0}
k.Fk=function(a,b,c,d,e){var f;a.Kc=!1;b&&(f=b.info(),b&&f[0]>a.zb||f[1]>a.Ab)&&(this.Ia('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.mb)),b=null);b?(a.za=b,a.pm=c,a.bf=d,Wl(this,c,d,b),f=b.info(),this.we|=128,this.Ia('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.mb),a.Re||e),a.Lh=f[0],a.vg=f[1],a.wg=f[2]):a.sf=!1;a.Re&&(a.Re=!1,--this.Ie||this.Xa());Ol(this,a.mb)};
function Sl(a,b,c){if(a=a.xa.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}function Ol(a,b){if(0<=b&&b<a.Ga.length){var c=a.Ga[b],d=a.xa.listDisks,e=a.xa.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.sf?"?":c.bf,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}
function Tl(a,b,c,d){var e=a.Ga[b];e.za&&(Ul(a,e.bf,e.za),e.pm="",e.bf="",e.za=null,e.sf=!1,a.we|=128,d||a.Ia("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Ol(a,b))}function Wl(a,b,c,d){var e;for(e=0;e<a.Ac.length;e++)if(a.Ac[e][1]==c){d.restore(a.Ac[e][2]);return}a.Ac[e]=[b,c,[]]}function Ul(a,b,c){var d;for(d=0;d<a.Ac.length;d++)if(a.Ac[d][1]==b){a.Ac[d][2]=c.save();break}}k.Oo=function(a,b,c){B(this,a,b,c,"OUTPUT");b&4?this.Kf&4||this.Kf&8&&this.oa&&xj(this.oa,6):this.Nd();this.Kf=b};
k.xn=function(a,b){B(this,a,null,b,"STATUS",this.Fa);return this.Fa};k.vn=function(a,b){var c=0;this.Bb<this.lb&&(c=this.jc[this.Bb]);this.Kf&8&&this.oa&&yj(this.oa,6);this.wa()&&B(this,a,null,b,"DATA["+this.Bb+"]",c);++this.Bb>=this.lb&&(this.Fa&=-81,this.Bb=this.lb=0);return c};
k.No=function(a,b,c){this.wa()&&B(this,a,b,c,"DATA["+this.lb+"]");this.lb<this.jc.length&&(this.jc[this.lb++]=b);a=this.jc[0]&31;if(void 0!==Nl[a]&&this.lb>=Nl[a].Fd){c=!1;this.Bb=0;a=this.Qa();var d,e,f,g,h;b=a&31;switch(b){case 3:this.Qa(m.jq);this.Qa(m.Qp);this.Xb();break;case 4:e=this.Qa(m.Of);this.mb=e&3;d=this.Ga[this.mb];this.Xb();this.ic((d.cb&4278190080)>>>24,m.mq);break;case 5:case 6:e=this.Qa(m.Of);c=e>>2&1;this.mb=e&3;d=this.Ga[this.mb];d.Oa=c;e=d.ub=this.Qa(m.ik);f=this.Qa(m.jk);g=d.ab=
this.Qa(m.lk);h=this.Qa(m.fi);d.kb=128<<h;d.ge=this.Qa(m.Lp);this.Qa(m.Bm);this.Qa(m.Kp);6==b?this.Ci(d):this.Di(d);Xl(this,d,a,c,e,f,g,h);c=!0;break;case 7:e=this.Qa(m.Of);this.mb=e&3;d=this.Ga[this.mb];d.ub=d.ee=0;d.cb=268435488;this.Xb();c=!0;break;case 8:d=this.Ga[this.mb];d.Oa=0;this.Xb();this.ic(d.mb|d.Oa<<2|d.cb&255,m.Dm);this.ic(d.ub,m.Zp);this.mb=this.mb+1&3;break;case 10:e=this.Qa(m.Of);c=e>>2&1;this.mb=e&3;d=this.Ga[this.mb];e=d.ub;f=d.Oa=c;g=d.ab=1;h=0;d.cb=0;d.za&&(d.Va=d.za.seek(d.ub,
d.Oa,d.ab))?h=d.Va.length:d.cb=72;Xl(this,d,a,c,e,f,g,h);c=!0;break;case 13:e=this.Qa(m.Of);c=e>>2&1;this.mb=e&3;d=this.Ga[this.mb];e=d.ub;f=d.Oa=c;g=1;h=this.Qa(m.fi);d.kb=128<<h;d.ge=this.Qa(m.eq);this.Qa(m.Bm);d.sk=this.Qa(m.Am);this.Ek(d);Xl(this,d,a,c,e,f,g,h);c=!0;break;case 15:e=this.Qa(m.Of),this.mb=e&3,d=this.Ga[this.mb],d.Oa=e>>2&1,e=this.Qa(m.Wp),d.ub+=e-d.ee,0>d.ub&&(d.ub=0),d.ub>=d.zb&&(d.ub=d.zb-1),d.ee=e,d.cb=32,d.ub||(d.cb|=268435456),this.Xb(),c=!0}0<this.lb&&(this.Fa|=80);this.Kf&
8&&(!d||d.cb&8||!c||this.oa&&xj(this.oa,6))}};k.wn=function(a,b){var c=this.we;this.we&=-129;B(this,a,null,b,"INPUT",c);return c};k.Mo=function(a,b,c){B(this,a,b,c,"CONTROL");this.km=b};function Xl(a,b,c,d,e,f,g,h){a.Xb();a.ic(b.mb|b.Oa<<2|b.cb&255,m.Dm);a.ic((b.cb&65280)>>>8,m.kq);a.ic((b.cb&16711680)>>>16,m.lq);var n=0;if(e!=b.ub||f!=b.Oa)n=g=1;c&128&&(f^=n,d||(n=0));a.ic(e+n,m.ik);a.ic(f,m.jk);a.ic(g,m.lk);a.ic(h,m.fi)}k.Qa=function(){var a=this.jc[this.Bb];this.Bb++;return a};
k.Xb=function(){this.Bb=this.lb=0};k.ic=function(a){this.jc[this.lb++]=a};k.Ai=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};k.Bi=function(a,b){return void 0!==b&&0<=b?this.Mc(a,b):-1};k.Lm=function(a,b){return void 0!==b&&0<=b?this.ek(a,b):-1};k.Ci=function(a){a.cb=72;a.za&&(a.Va=null,a.cb=0,this.oa&&(qj(this.oa,2,this,"dmaRead",a),jj(this.oa,2)))};k.Di=function(a){a.cb=72;a.za&&(a.za.uf?a.cb=576:(a.Va=null,a.cb=0,this.oa&&(qj(this.oa,2,this,"dmaWrite",a),jj(this.oa,2))))};
k.Ek=function(a){a.cb=72;a.za&&(a.Va=null,a.cb=0,this.oa&&(a.Le=0,a.Dc=Array(4),a.Zf=!0,a.cg=0,qj(this.oa,2,this,"dmaFormat",a),jj(this.oa,2),a.Zf=!1))};k.yc=function(a,b){var c=-1;if(!a.cb&&a.za){do{if(a.Va&&0<=(c=Kl(a.Va,a.ib++)))break;a.Va=a.za.seek(a.ub,a.Oa,a.ab);if(!a.Va){a.cb=1088;break}a.ib=0;this.Wf(a)}while(1)}b(c,!1)};
k.Mc=function(a,b){if(a.cb||!a.za)return-1;do{if(a.Va&&a.za.write(a.Va,a.ib++,b))break;a.Va=a.za.seek(a.ub,a.Oa,a.ab);if(!a.Va){a.cb=8256;b=-1;break}a.ib=0;this.Wf(a)}while(1);return b};k.Wf=function(a){a.ab++;a.ab>=a.wg+1&&(a.ab=1,a.Oa++,a.Oa>=a.vg&&(a.Oa=0,a.ub++))};k.ek=function(a,b){if(a.cb)return-1;a.Dc[a.Le++]=b;if(a.Le==a.Dc.length){a.ub=a.Dc[0];a.Oa=a.Dc[1];a.ab=a.Dc[2];a.kb=128<<a.Dc[3];for(var c=a.Le=0;c<a.kb;c++)if(0>this.Mc(a,a.sk))return-1;a.cg++}a.cg>=a.ge&&(b=-1);return b};
var Ql={1012:Ll.prototype.xn,1013:Ll.prototype.vn,1015:Ll.prototype.wn},Rl={1010:Ll.prototype.Oo,1013:Ll.prototype.No,1015:Ll.prototype.Mo};Ka(function(){for(var a=A(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ll(d);bb(d,c)}});
function W(a){y.call(this,"HDC",a,W,Yl);this.dmaRead=this.Ai;this.dmaWrite=this.Bi;this.dmaWriteBuffer=this.Mm;this.dmaWriteFormat=this.Nm;this.hi=[];if(a.drives)try{this.hi=eval("("+a.drives+")")}catch(b){x("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.ng=(this.Qe="at"==a.type)?1:0;this.an=this.Qe?2:3}Xa(y,W);
var Zl=[{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.Ib=function(){return!1};k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;this.Ma=a;this.oa=ib(a,"ChipSet");xb(b,this,this.Qe?$l:am);Bb(b,this,this.Qe?bm:cm);ld(c,19,this,this.$n);ld(c,64,this,this.ao);this.reset();this.Yf()||this.Xa()};
k.ec=function(a,b){if(!b)if(!a||!this.restore)this.Nd(),this.Ma.Li&&this.Yf(!0);else if(!this.restore(a))return!1;return!0};k.dc=function(a){return a&&this.save?this.save():!0};k.vf=function(){return this.Ma?this.Ma.vf():""};k.oe=function(){return this.Ma?this.Ma.oe():""};k.reset=function(){this.Nd(null,!0)};k.save=function(){var a=new td(this);a.set(0,this.ak());return a.data()};k.restore=function(a){return this.Nd(a[0])};
k.Nd=function(a,b){var c=0,d=!0;if(this.Qe)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.Sd=a[c++],this.om=a[c++],this.xe=a[c++],this.Xh=a[c++],this.Vh=a[c++],this.Uh=a[c++],this.Jf=a[c++],this.Fa=a[c++],this.Xj=a[c++],this.Wh=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.If=a[c++];this.Fa=a[c++];this.jc=a[c++];this.Bb=a[c++];this.lb=a[c++];this.nm=a[c++];this.mm=a[c++];this.lm=a[c++];var e=a[c++];void 0!==e?this.wf=e:void 0===this.wf&&(this.wf=-1)}void 0===this.Ga&&(this.Ga=Array(this.hi.length));
c=a[c];void 0===c&&(c=[]);for(e=0;e<this.Ga.length;e++){void 0===this.Ga[e]&&(this.Ga[e]={});var f=this.Ga[e];this.Ui(e,f,this.hi[e],c[e],b)||(d=!1);null!=this.If&&1>=e&&(this.If|=(f.type&3)<<(1-e<<1))}return d};
k.ak=function(){var a=0,b=[];this.Qe?(b[a++]=this.Sd,b[a++]=this.om,b[a++]=this.xe,b[a++]=this.Xh,b[a++]=this.Vh,b[a++]=this.Uh,b[a++]=this.Jf,b[a++]=this.Fa,b[a++]=this.Xj,b[a++]=this.Wh):(b[a++]=this.If,b[a++]=this.Fa,b[a++]=this.jc,b[a++]=this.Bb,b[a++]=this.lb,b[a++]=this.nm,b[a++]=this.mm,b[a++]=this.lm,b[a++]=this.wf);b[a]=this.ck();return b};
k.Ui=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.mb=a;b.errorCode=d[f++];b.um=d[f++];b.tf=d[f++];b.kf=d[f++];b.lf=d[f++];b.Oa=d[f++];b.Ab=d[f++];b.Wd=d[f++];b.ab=d[f++];b.ge=d[f++];b.kb=d[f++];b.jh=this.Qe?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.oe()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Zl[this.ng][b.type])b.type=this.an;c=Zl[this.ng][b.type];
b.Hb=c[2]||17;b.qb=c[3]||512;if(e&&this.oa&&(e=this.oa,c=b.type,e.ma)){var h=e.ma[18],h=a?h&240|c:h&15|c<<4;e.ma&&(e.ma[18]=h,Ti(e))}void 0===b.za&&(b.za=null,this.Ia("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));dm(this,b);b.ib=d[f++];b.Va=null;b.za&&(a=d[f],void 0!==a&&0>b.za.restore(a)&&(g=!1),g&&void 0!==b.ib&&(b.Va=b.za.seek(b.Wd,b.Oa,b.ab+b.jh)));return g};k.ck=function(){for(var a=0,b=[],c=0;c<this.Ga.length;c++)b[a++]=this.bk(this.Ga[c]);return b};
k.bk=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.um;c[b++]=a.tf;c[b++]=a.kf;c[b++]=a.lf;c[b++]=a.Oa;c[b++]=a.Ab;c[b++]=a.Wd;c[b++]=a.ab;c[b++]=a.ge;c[b++]=a.kb;c[b++]=a.ib;c[b]=a.za?a.za.save():null;return c};k.Ck=function(a){var b;a=this.Ga[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
function dm(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.kf[2])?e=b.kf[0]<<8|b.kf[1]:c=b.type);null==c||d||(d=Zl[a.ng][c][1],e=Zl[a.ng][c][0]);d&&((c=Zl[a.ng][b.type])&&e!=c[0]&&d!=c[1]&&a.Ia("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.zb=e,b.Ab=d,null==b.za&&(b.za=new zl(a,b,b.mode)))}}
k.sm=function(a,b,c){if(a.za){var d=a.za.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.Wd=Math.floor(b/g),b%=g,a.Oa=Math.floor(b/f),a.ab=b%f,a.kb=c*d[3],a.errorCode=0,!0}}return!1};
k.Yf=function(a){a||(this.Ie=0);for(var b=0;b<this.Ga.length;b++){var c=this.Ga[b];if(c.name&&c.path){if(!(a&&c.za&&c.za.yh)){var d;d=c.name;var c=c.path,e=this.Ga[b];e.Kc?(this.Ia("Drive "+b+" busy"),d=!0):(e.Kc=!0,e.Re=!0,this.Ie++,this.wa()&&this.jb("loading "+d),(e.za||new zl(this,e,e.mode)).load(d,c,null,this.Pm),d=!1);!d&&a&&this.Xa(!1)}}else a&&void 0!==c.type&&(c.za=null,dm(this,c,c.type))}return!!this.Ie};
k.Pm=function(a,b,c){a.Kc=!1;(a.za=b)&&this.Ia('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.mb),a.Re);a.Re&&(a.Re=!1,--this.Ie||this.Xa())};k.Xn=function(a,b){var c=0;this.Bb<this.lb&&(c=this.jc[this.Bb]);this.oa&&yj(this.oa,5);this.Fa&=-33;B(this,a,null,b,"DATA["+this.Bb+"]",c);++this.Bb>=this.lb&&(this.Bb=this.lb=0,this.Fa&=-15);return c};
k.jp=function(a,b,c){B(this,a,b,c,"DATA["+this.lb+"]");this.lb<this.jc.length&&(this.jc[this.lb++]=b);a=12!=this.jc[0]?6:this.jc.length;6==this.lb&&(this.Fa&=-2);this.lb>=a&&(this.Fa|=2,this.Fa&=-2,em(this))};k.Yn=function(a,b){var c=this.Fa;B(this,a,null,b,"STATUS",c);this.Bb<this.lb&&(this.Fa|=1);return c};k.mp=function(a,b,c){B(this,a,b,c,"RESET");this.nm=b;this.oa&&yj(this.oa,5);this.Nd()};k.Wn=function(a,b){B(this,a,null,b,"CONFIG",this.If);return this.If};
k.lp=function(a,b,c){B(this,a,b,c,"PULSE");this.mm=b;this.Fa=13};k.kp=function(a,b,c){B(this,a,b,c,"PATTERN");this.lm=b};k.Sj=function(a,b,c){B(this,a,b,c,"NOISE")};k.hn=function(a,b){var c=-1,d=!1;if(this.Pa&&(d=0<this.Pa.ib,c=this.yc(this.Pa),this.Pa.ib==this.Pa.qb))if(this.Pa.kb-=this.Pa.qb,this.xe=this.xe-1&255,this.Pa.kb>=this.Pa.qb){var e=this;this.yc(this.Pa,function(a){0<=a?fm(e):(e.Fa=1,e.Sd=16)},!1)}else this.Fa=80;d||B(this,a,null,b,"DATA",c);return c};
k.Ao=function(a,b,c){this.Pa&&this.Pa.ib||B(this,a,b,c,"DATA");this.Pa&&this.Pa.kb>=this.Pa.qb&&(0>this.Mc(this.Pa,b)?(this.Fa=1,this.Sd=16):this.Pa.ib==this.Pa.qb&&(this.Pa.kb-=this.Pa.qb,this.xe=this.xe-1&255,fm(this),this.Pa.kb>=this.Pa.qb||(this.Fa=80)))};k.kn=function(a,b){var c=this.Sd;B(this,a,null,b,"ERROR",c);return c};k.Fo=function(a,b,c){B(this,a,b,c,"WPREC");this.om=b};k.ln=function(a,b){var c=this.xe;B(this,a,null,b,"SECCNT",c);return c};
k.Do=function(a,b,c){B(this,a,b,c,"SECCNT");this.xe=b};k.mn=function(a,b){var c=this.Xh;B(this,a,null,b,"SECNUM",c);return c};k.Eo=function(a,b,c){B(this,a,b,c,"SECNUM");this.Xh=b};k.gn=function(a,b){var c=this.Vh;B(this,a,null,b,"CYLLO",c);return c};k.zo=function(a,b,c){B(this,a,b,c,"CYLLO");this.Vh=b};k.fn=function(a,b){var c=this.Uh;B(this,a,null,b,"CYLHI",c);return c};k.yo=function(a,b,c){B(this,a,b,c,"CYLHI");this.Uh=b};k.jn=function(a,b){var c=this.Jf;B(this,a,null,b,"DRVHD",c);return c};
k.Bo=function(a,b,c){B(this,a,b,c,"DRVHD");this.Jf=b;this.Fa=this.Ga[this.Jf&16?1:0]?this.Fa|64:this.Fa&-65};k.nn=function(a,b){var c=this.Fa;B(this,a,null,b,"STATUS",c);return c};k.xo=function(a,b,c){B(this,a,b,c,"COMMAND");this.Xj=b;this.oa&&yj(this.oa,14);gm(this)};k.Co=function(a,b,c){B(this,a,b,c,"FDR");this.Wh&4&&!(b&4)&&(this.Sd=1);this.Wh=b};
function gm(a){var b=!1,c=a.Xj,d=a.Jf&16?1:0,e=a.Jf&15,f=a.Vh|(a.Uh&3)<<8,g=a.Xh,h=a.xe||256;a.Pa=null;a.Sd=0;a.Fa=80;(d=a.Ga[d])?(d.Wd=f,d.Oa=e,d.ab=g,d.kb=h*d.qb,c=144<=c?c:c&240,d.Va=null,d.errorCode=0,a.Pa=d):c=-1;switch(c&240){case 32:a.yc(d,function(b){0<=b&&a.oa?(fm(a),a.Fa=136):(a.Fa=1,a.Sd=16)},!1);break;case 48:a.oa?(fm(a),a.Fa=136):(a.Fa=1,a.Sd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Sd=1;b=!0;break;case 145:d.Ab=e+1,d.Hb=h,b=!0}b&&fm(a)}
function fm(a){!a.oa||a.Wh&2||xj(a.oa,14)}
function em(a){a.Bb=0;var b=a.Qa(),c=a.Qa(),d=c&32,e=d>>5,f=c&31,g=a.Qa(),h=a.Qa(),n=g<<2&768|h,l=g&63,s=a.Qa(),r=a.Qa(),t=a.Ga[e];t&&(t.Wd=n,t.Oa=f,t.ab=l,t.kb=s*t.qb);switch(b){case 3:a.Xb(t?t.errorCode:4);a.ic(c);a.ic(g);a.ic(h);a.ic(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Qa());)t&&c<t.kf.length&&(t.kf[c++]=b);t&&dm(a,t);b=0;t||a.wf!=e||(a.wf=-1,b=2);a.Xb(b|d);b=-1;break;case 224:case 228:a.Xb(0|d),b=-1}if(0<=b)switch(void 0===t?b=-1:(t.errorCode=0,t.um=0),b){case 0:a.Xb(0|d);break;case 1:t.Aq=
r;a.Xb(0|d);break;case 5:a.Xb(0|d);break;case 8:a.Ci(t,function(b){a.Xb(b|d)});break;case 10:a.Di(t,function(b){a.Xb(b|d)});break;case 15:hm(a,t,function(b){a.Xb(b|d)});break;default:a.Xb(2|d)}}k.Qa=function(){var a=-1;this.Bb<this.lb&&(a=this.jc[this.Bb++]);return a};k.Xb=function(a){this.Bb=this.lb=0;void 0!==a&&this.ic(a);this.oa&&xj(this.oa,5);this.Fa|=32};k.ic=function(a){this.jc[this.lb++]=a};k.Ai=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};
k.Bi=function(a,b){return void 0!==b&&0<=b?this.Mc(a,b):-1};k.Mm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.ib<a.lf.length?a.lf[a.ib++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.Nm=function(a,b){return void 0!==b&&0<=b?this.ek(a,b):-1};k.Ci=function(a,b){a.errorCode=4;if(a.za&&(a.Va=null,this.oa)){a.errorCode=0;qj(this.oa,3,this,"dmaRead",a);jj(this.oa,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.Di=function(a,b){a.errorCode=4;if(a.za&&(a.Va=null,this.oa)){a.errorCode=0;qj(this.oa,3,this,"dmaWrite",a);jj(this.oa,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 hm(a,b,c){b.errorCode=4;b.lf&&b.lf.length==b.kb||(b.lf=Array(b.kb));b.ib=0;a.oa?(b.errorCode=0,qj(a.oa,3,a,"dmaWriteBuffer",b),jj(a.oa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.Ek=function(a,b){a.errorCode=4;if(a.za&&(a.Va=null,this.oa)){a.Le=0;a.Dc=Array(4);a.Zf=!0;a.cg=0;a.errorCode=0;qj(this.oa,3,this,"dmaWriteFormat",a);jj(this.oa,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Zf=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.yc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Va&&(d=Kl(a.Va,a.ib),a.ib+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;if(a.za)return a.za.seek(a.Wd,a.Oa,a.ab+a.jh,!1,function(c,h){(a.Va=c)?(a.ib=0,f.Wf(a),d=Kl(a.Va,a.ib),a.ib+=e):a.errorCode=20;b(d,h)}),d;a.errorCode=20;b(d,!1)}return d};
k.Mc=function(a,b){if(a.errorCode)return-1;do{if(a.Va&&a.za.write(a.Va,a.ib++,b))break;a.za&&a.za.seek(a.Wd,a.Oa,a.ab+a.jh,!0,function(b){a.Va=b});if(!a.Va){a.errorCode=20;b=-1;break}a.ib=0;this.Wf(a)}while(1);return b};k.Wf=function(a){a.ab++;var b=1-a.jh;a.ab>=a.Hb+b&&(a.ab=b,a.Oa++,a.Oa>=a.Ab&&(a.Oa=0,a.Wd++))};
k.ek=function(a,b){if(a.errorCode)return-1;a.Dc[a.Le++]=b;if(a.Le==a.Dc.length){a.Wd=a.Dc[0];a.Oa=a.Dc[1];a.ab=a.Dc[2];a.kb=128<<a.Dc[3];for(var c=a.Le=0;c<a.kb;c++)if(0>this.Mc(a,a.sk))return-1;a.cg++}a.cg>=a.ge&&(b=-1);return b};k.$n=function(){var a=this.T.K&255;!(this.T.H>>8)&&128<a&&(this.wf=a-128);return!0};k.ao=function(){var a;(a=this.T.H>>8)||(a=!this.oa)||(a=!(this.oa.Kb[0].Ed&64));return a?!0:!1};
var am={800:W.prototype.Xn,801:W.prototype.Yn,802:W.prototype.Wn},$l={496:W.prototype.hn,497:W.prototype.kn,498:W.prototype.ln,499:W.prototype.mn,500:W.prototype.gn,501:W.prototype.fn,502:W.prototype.jn,503:W.prototype.nn},cm={800:W.prototype.jp,801:W.prototype.mp,802:W.prototype.lp,803:W.prototype.kp,807:W.prototype.Sj,811:W.prototype.Sj,815:W.prototype.Sj},bm={496:W.prototype.Ao,497:W.prototype.Fo,498:W.prototype.Do,499:W.prototype.Eo,500:W.prototype.zo,501:W.prototype.yo,502:W.prototype.Bo,503:W.prototype.xo,
1014:W.prototype.Co};Ka(function(){for(var a=A(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new W(d);bb(d,c)}});
function im(a){y.call(this,"Debugger",a,im);this.mh=this.hd=-1;this.Me=5;this.Nc=[0,0];this.mk=[0,0];this.Tc=-1;this.Oc=[];this.qf=!1;this.ze=[0,0];this.Cc=[];jm(this);km(this);lm(this,a.messages);this.sb={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.Zj=a.commands;var b=this;window&&void 0===window.$&&(window.$=function(a){return mm(b,a)})}
var Ob=1,nd=16,pf=32,Fb=64,P=128,N=256,Td=512,Gi=1024,Ii=2048,Nj=4096,Gj=8192,qi=16384,Wj=32768,jk=131072,Ml=262144,Yl=524288,Bl=1048576,nl=2097152,Oj=4194304,wl=16777216,of=536870912,qf=1073741824;Xa(y,im);
var Ki=26,nm={16:jk,19:Ml,21:qi,22:Wj,28:Gi,33:67108864,51:wl},om={"?":"help","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","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",reset:"reset computer",ver:"display version"},pm="INVALID 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 LOADALL 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(" "),
Y="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),qm="BX+SI BX+DI BP+SI BP+DI SI DI BP BX".split(" "),rm={cpu:Ob,seg:2,desc:4,tss:8,"int":nd,fault:pf,mem:Fb,port:P,dma:N,pic:Td,timer:Gi,cmos:Ii,rtc:Nj,8042:Gj,chipset:qi,kbd:Wj,key:65536,video:jk,fdc:Ml,hdc:Yl,disk:Bl,serial:nl,speaker:Oj,state:8388608,mouse:wl,computer:33554432,dos:67108864,other:134217728,log:268435456,warn:of,halt:qf},Z=[0,0],sm=[205,12291],tm=[[6,12417,4257],[6,12420,4260],[6,12449,4225],[6,12452,4228],
case "loadDrive":return this.xa[b]=c,c.onclick=function(){var a=d.xa.listDisks;a&&Pl(d,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return this.Jk?(this.xa[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Pl(d,ga(b,!0),b,a)}return!1}):c.parentNode.removeChild(c),!0}return!1};
k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;this.Ma=a;this.pa=ib(a,"ChipSet");this.Nd();xb(b,this,Ql);Bb(b,this,Rl);this.Jk&&Sl(this,"Local Disk","?");Sl(this,"Remote Disk","??");this.Zf()||this.Va()};
k.ec=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ma.Ji){this.Ac=[];for(var c=0;c<this.Fa.length;c++)Tl(this,c,!0);this.Zf(!0)}}else if(!this.restore(a))return!1;if(c=this.xa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.bj;d++){var e=window.document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.bj&&(c.value="0",Ol(this,0))}}return!0};
k.dc=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Nd()};k.save=function(){var a=new sd(this);a.set(0,this.Zj());return a.data()};k.restore=function(a){return this.Nd(a[0])};
k.Nd=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.mb=a[b++];b++;this.Ca=a[b++];this.jc=a[b++];this.Db=a[b++];this.lb=a[b++];this.Lf=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.Ac=c);void 0===this.Fa&&(this.bj=4,this.pa&&(this.bj=aj(this.pa)),this.Fa=Array(4));for(c=0;c<this.Fa.length;c++){var f=this.Fa[c];if(void 0===f){var f=this.Fa[c]={},g;if(this.pa)a:{g=this.pa;if(c<aj(g)){if(!g.Yd){g=360;break a}if(c<g.Yd.length){g=g.Yd[c];break a}}g=0}else g=0;switch(g){case 160:case 180:f.Cb=
1;default:f.Bb=40;f.Hb=9;break;case 720:f.Bb=80;f.Hb=9;break;case 1200:f.Bb=80;f.Hb=15;break;case 1440:f.Bb=80,f.Hb=18}}this.Si(f,c,e[c])||(d=!1)}this.ve=a[b++]||0;this.hm=a[b]||0;return d};k.Zj=function(){var a=0,b=[];b[a++]=this.mb;b[a++]=0;b[a++]=this.Ca;b[a++]=this.jc;b[a++]=this.Db;b[a++]=this.lb;b[a++]=this.Lf;b[a++]=this.ak();for(var c=a++,d=0;d<this.Fa.length;d++){var e=this.Fa[d];e.za&&Ul(this,e.af,e.za)}b[c]=this.Ac;b[a++]=this.ve;b[a]=this.hm;return b};
k.Si=function(a,b,c){var d=0,e=!0;a.mb=b;a.Kc=a.sf=!1;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.Bb||40,a.Cb||c[3],a.Hb||9,a.pb||512,c[1],a.Kh,a.tg,a.ug]);a.cb=c[d++];var f=c[d++];a.name=f[0];a.Bb=f[1];a.Cb=f[2];a.Hb=f[3];a.pb=f[4];a.tf=f[5];(a.Kh=f[6])?(a.tg=f[7],a.ug=f[8]):(a.Kh=a.Bb,a.tg=a.Cb,a.ug=a.Hb);a.Pa=c[d++];a.ce=c[d++];a.vb=c[d++];a.ce=100<=a.ce?a.ce-100:a.ce-a.vb;a.$a=c[d++];a.ee=c[d++];a.kb=c[d++];a.Ta=c[d++];a.Xa=null;a.za||(a.af="");var g=c[d++];
102==g&&(g=!1);"boolean"==typeof g?(f=c[d++],c=c[d],g?(d=this.Fa[b],Tl(this,b,!0,!0),d.sf=!0,b=new Al(this,d,"preload"),this.Ck(d,b,f,c,!0)):Vl(this,b,f,c,!0)?a.za&&c&&Wl(this,f,c,a.za):this.Va(!1)):void 0!==g&&a.za&&0>a.za.restore(g)&&(e=!1);e&&a.za&&void 0!==a.Ta&&(a.Xa=a.za.seek(a.vb,a.Pa,a.$a));return e};k.ak=function(){for(var a=0,b=[],c=0;c<this.Fa.length;c++)b[a++]=this.$j(this.Fa[c]);return b};
k.$j=function(a){var b=0,c=[];c[b++]=a.cb;c[b++]=[a.name,a.Bb,a.Cb,a.Hb,a.pb,a.tf,a.Kh,a.tg,a.ug];c[b++]=a.Pa;c[b++]=a.ce+100;c[b++]=a.vb;c[b++]=a.$a;c[b++]=a.ee;c[b++]=a.kb;c[b++]=a.Ta;c[b++]=a.sf;c[b++]=a.mm;c[b]=a.af;return c};k.Ak=function(a){var b;a=this.Fa[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};k.pm=function(a,b,c){if(a.za){var d=a.za.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.vb=Math.floor(b/f),b%=f,a.Pa=Math.floor(b/e),a.$a=b%e+1,a.kb=c*d[3],a.cb=0,!0}return!1};
k.Zf=function(a){a||(this.Ie=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.Fa.length){!Vl(this,d,c.name,c.path,!0)&&a&&this.Va(!1);continue}}this.Ia("Unrecognized auto-mount specification for drive "+b)}return!!this.Ie};
function Pl(a,b,c,d){var e,f=a.xa.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.Fa.length)if(c)if("?"==c)a.Ia('Use "Choose File" and "Load" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=ga(c);a.Z("Attempting to load "+c+' as "'+b+'"')}for(a.Z("loading disk "+c+"...");Vl(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=a,
g=c,h=void 0,h=0;h<f.Ac.length;h++)if(f.Ac[h][1]==g){f.Ac.splice(h,1);break}Tl(a,e,!1,!0)}}else Tl(a,e);else a.Ia("Nothing to load")}function Vl(a,b,c,d,e,f){var g=a.Fa[b];if(d&&g.af!=d){Tl(a,b,e,!0);if(g.Kc)return a.Ia("Drive "+b+" busy"),!0;g.Kc=!0;e&&(g.Qe=!0,a.Ie++,a.va()&&a.qb("loading diskette '"+c+"'"));g.sf=!!f;(new Al(a,g,"preload")).load(c,d,f,a.Ck);return!1}return!0}
k.Ck=function(a,b,c,d,e){var f;a.Kc=!1;b&&(f=b.info(),b&&f[0]>a.Bb||f[1]>a.Cb)&&(this.Ia('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.mb)),b=null);b?(a.za=b,a.mm=c,a.af=d,Wl(this,c,d,b),f=b.info(),this.ve|=128,this.Ia('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.mb),a.Qe||e),a.Kh=f[0],a.tg=f[1],a.ug=f[2]):a.sf=!1;a.Qe&&(a.Qe=!1,--this.Ie||this.Va());Ol(this,a.mb)};
function Sl(a,b,c){if(a=a.xa.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}function Ol(a,b){if(0<=b&&b<a.Fa.length){var c=a.Fa[b],d=a.xa.listDisks,e=a.xa.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.sf?"?":c.af,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}
function Tl(a,b,c,d){var e=a.Fa[b];e.za&&(Ul(a,e.af,e.za),e.mm="",e.af="",e.za=null,e.sf=!1,a.ve|=128,d||a.Ia("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Ol(a,b))}function Wl(a,b,c,d){var e;for(e=0;e<a.Ac.length;e++)if(a.Ac[e][1]==c){d.restore(a.Ac[e][2]);return}a.Ac[e]=[b,c,[]]}function Ul(a,b,c){var d;for(d=0;d<a.Ac.length;d++)if(a.Ac[d][1]==b){a.Ac[d][2]=c.save();break}}k.No=function(a,b,c){B(this,a,b,c,"OUTPUT");b&4?this.Lf&4||this.Lf&8&&this.pa&&yj(this.pa,6):this.Nd();this.Lf=b};
k.un=function(a,b){B(this,a,null,b,"STATUS",this.Ca);return this.Ca};k.sn=function(a,b){var c=0;this.Db<this.lb&&(c=this.jc[this.Db]);this.Lf&8&&this.pa&&zj(this.pa,6);this.va()&&B(this,a,null,b,"DATA["+this.Db+"]",c);++this.Db>=this.lb&&(this.Ca&=-81,this.Db=this.lb=0);return c};
k.Mo=function(a,b,c){this.va()&&B(this,a,b,c,"DATA["+this.lb+"]");this.lb<this.jc.length&&(this.jc[this.lb++]=b);a=this.jc[0]&31;if(void 0!==Nl[a]&&this.lb>=Nl[a].Fd){b=!1;this.Db=0;a=this.Ra();var d,e,f,g,h=a&31;switch(h){case 3:this.Ra(l.iq);this.Ra(l.Pp);this.Xb();break;case 4:c=this.Ra(l.Pf);this.mb=c&3;d=this.Fa[this.mb];this.Xb();this.ic((d.cb&4278190080)>>>24,l.lq);break;case 5:case 6:c=this.Ra(l.Pf);b=c>>2&1;this.mb=c&3;d=this.Fa[this.mb];d.Pa=b;c=d.vb=this.Ra(l.gk);e=this.Ra(l.hk);f=d.$a=
this.Ra(l.jk);g=this.Ra(l.ei);d.kb=128<<g;d.ee=this.Ra(l.Kp);this.Ra(l.ym);this.Ra(l.Jp);6==h?(h=d,h.cb=72,h.za&&(h.Xa=null,h.cb=0,this.pa&&(rj(this.pa,2,this,"dmaRead",h),jj(this.pa,2)))):(h=d,h.cb=72,h.za&&(h.za.uf?h.cb=576:(h.Xa=null,h.cb=0,this.pa&&(rj(this.pa,2,this,"dmaWrite",h),jj(this.pa,2)))));Xl(this,d,a,b,c,e,f,g);b=!0;break;case 7:c=this.Ra(l.Pf);this.mb=c&3;d=this.Fa[this.mb];d.vb=d.ce=0;d.cb=268435488;this.Xb();b=!0;break;case 8:d=this.Fa[this.mb];d.Pa=0;this.Xb();this.ic(d.mb|d.Pa<<
2|d.cb&255,l.Am);this.ic(d.vb,l.Yp);this.mb=this.mb+1&3;break;case 10:c=this.Ra(l.Pf);b=c>>2&1;this.mb=c&3;d=this.Fa[this.mb];c=d.vb;e=d.Pa=b;f=d.$a=1;g=0;d.cb=0;d.za&&(d.Xa=d.za.seek(d.vb,d.Pa,d.$a))?g=d.Xa.length:d.cb=72;Xl(this,d,a,b,c,e,f,g);b=!0;break;case 13:c=this.Ra(l.Pf);b=c>>2&1;this.mb=c&3;d=this.Fa[this.mb];c=d.vb;e=d.Pa=b;f=1;g=this.Ra(l.ei);d.kb=128<<g;d.ee=this.Ra(l.dq);this.Ra(l.ym);d.qk=this.Ra(l.xm);h=d;h.cb=72;h.za&&(h.Xa=null,h.cb=0,this.pa&&(h.mf=0,h.Pc=Array(4),h.qi=!0,h.mh=
0,rj(this.pa,2,this,"dmaFormat",h),jj(this.pa,2),h.qi=!1));Xl(this,d,a,b,c,e,f,g);b=!0;break;case 15:c=this.Ra(l.Pf),this.mb=c&3,d=this.Fa[this.mb],d.Pa=c>>2&1,c=this.Ra(l.Vp),d.vb+=c-d.ce,0>d.vb&&(d.vb=0),d.vb>=d.Bb&&(d.vb=d.Bb-1),d.ce=c,d.cb=32,d.vb||(d.cb|=268435456),this.Xb(),b=!0}0<this.lb&&(this.Ca|=80);this.Lf&8&&(!d||d.cb&8||!b||this.pa&&yj(this.pa,6))}};k.tn=function(a,b){var c=this.ve;this.ve&=-129;B(this,a,null,b,"INPUT",c);return c};
k.Lo=function(a,b,c){B(this,a,b,c,"CONTROL");this.hm=b};function Xl(a,b,c,d,e,f,g,h){a.Xb();a.ic(b.mb|b.Pa<<2|b.cb&255,l.Am);a.ic((b.cb&65280)>>>8,l.jq);a.ic((b.cb&16711680)>>>16,l.kq);var n=0;if(e!=b.vb||f!=b.Pa)n=g=1;c&128&&(f^=n,d||(n=0));a.ic(e+n,l.gk);a.ic(f,l.hk);a.ic(g,l.jk);a.ic(h,l.ei)}k.Ra=function(){var a=this.jc[this.Db];this.Db++;return a};k.Xb=function(){this.Db=this.lb=0};k.ic=function(a){this.jc[this.lb++]=a};k.Ai=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};
k.Bi=function(a,b){return void 0!==b&&0<=b?this.Mc(a,b):-1};k.Im=function(a,b){return void 0!==b&&0<=b?this.ck(a,b):-1};k.yc=function(a,b){var c=-1;if(!a.cb&&a.za){do{if(a.Xa&&0<=(c=Kl(a.Xa,a.Ta++)))break;a.Xa=a.za.seek(a.vb,a.Pa,a.$a);if(!a.Xa){a.cb=1088;break}a.Ta=0;this.Xf(a)}while(1)}b(c,!1)};k.Mc=function(a,b){if(a.cb||!a.za)return-1;do{if(a.Xa&&a.za.write(a.Xa,a.Ta++,b))break;a.Xa=a.za.seek(a.vb,a.Pa,a.$a);if(!a.Xa){a.cb=8256;b=-1;break}a.Ta=0;this.Xf(a)}while(1);return b};
k.Xf=function(a){a.$a++;a.$a>=a.ug+1&&(a.$a=1,a.Pa++,a.Pa>=a.tg&&(a.Pa=0,a.vb++))};k.ck=function(a,b){if(a.cb)return-1;a.Pc[a.mf++]=b;if(a.mf==a.Pc.length){a.vb=a.Pc[0];a.Pa=a.Pc[1];a.$a=a.Pc[2];a.kb=128<<a.Pc[3];for(var c=a.mf=0;c<a.kb;c++)if(0>this.Mc(a,a.qk))return-1;a.mh++}a.mh>=a.ee&&(b=-1);return b};var Ql={1012:Ll.prototype.un,1013:Ll.prototype.sn,1015:Ll.prototype.tn},Rl={1010:Ll.prototype.No,1013:Ll.prototype.Mo,1015:Ll.prototype.Lo};
Ka(function(){for(var a=A(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ll(d);bb(d,c)}});function W(a){y.call(this,"HDC",a,W,Yl);this.dmaRead=this.Ai;this.dmaWrite=this.Bi;this.dmaWriteBuffer=this.Jm;this.dmaWriteFormat=this.Km;this.gi=[];if(a.drives)try{this.gi=eval("("+a.drives+")")}catch(b){x("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.mg=(this.Pe="at"==a.type)?1:0;this.Ym=this.Pe?2:3}Xa(y,W);
var Zl=[{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.Ib=function(){return!1};k.vc=function(a,b,c,d){this.sa=b;this.T=c;this.ka=d;this.Ma=a;this.pa=ib(a,"ChipSet");xb(b,this,this.Pe?$l:am);Bb(b,this,this.Pe?bm:cm);kd(c,19,this,this.Xn);kd(c,64,this,this.Yn);this.reset();this.Zf()||this.Va()};
k.ec=function(a,b){if(!b)if(!a||!this.restore)this.Nd(),this.Ma.Ji&&this.Zf(!0);else if(!this.restore(a))return!1;return!0};k.dc=function(a){return a&&this.save?this.save():!0};k.vf=function(){return this.Ma?this.Ma.vf():""};k.me=function(){return this.Ma?this.Ma.me():""};k.reset=function(){this.Nd(null,!0)};k.save=function(){var a=new sd(this);a.set(0,this.Zj());return a.data()};k.restore=function(a){return this.Nd(a[0])};
k.Nd=function(a,b){var c=0,d=!0;if(this.Pe)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.ue=a[c++],this.lm=a[c++],this.we=a[c++],this.Wh=a[c++],this.Uh=a[c++],this.Th=a[c++],this.Kf=a[c++],this.Ca=a[c++],this.Vj=a[c++],this.Vh=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.Jf=a[c++];this.Ca=a[c++];this.jc=a[c++];this.Db=a[c++];this.lb=a[c++];this.km=a[c++];this.jm=a[c++];this.im=a[c++];var e=a[c++];void 0!==e?this.wf=e:void 0===this.wf&&(this.wf=-1)}void 0===this.Fa&&(this.Fa=Array(this.gi.length));
c=a[c];void 0===c&&(c=[]);for(e=0;e<this.Fa.length;e++){void 0===this.Fa[e]&&(this.Fa[e]={});var f=this.Fa[e];this.Si(e,f,this.gi[e],c[e],b)||(d=!1);null!=this.Jf&&1>=e&&(this.Jf|=(f.type&3)<<(1-e<<1))}return d};
k.Zj=function(){var a=0,b=[];this.Pe?(b[a++]=this.ue,b[a++]=this.lm,b[a++]=this.we,b[a++]=this.Wh,b[a++]=this.Uh,b[a++]=this.Th,b[a++]=this.Kf,b[a++]=this.Ca,b[a++]=this.Vj,b[a++]=this.Vh):(b[a++]=this.Jf,b[a++]=this.Ca,b[a++]=this.jc,b[a++]=this.Db,b[a++]=this.lb,b[a++]=this.km,b[a++]=this.jm,b[a++]=this.im,b[a++]=this.wf);b[a]=this.ak();return b};
k.Si=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.mb=a;b.errorCode=d[f++];b.rm=d[f++];b.tf=d[f++];b.jf=d[f++];b.kf=d[f++];b.Pa=d[f++];b.Cb=d[f++];b.Vd=d[f++];b.$a=d[f++];b.ee=d[f++];b.kb=d[f++];b.hh=this.Pe?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.me()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Zl[this.mg][b.type])b.type=this.Ym;c=Zl[this.mg][b.type];
b.Hb=c[2]||17;b.pb=c[3]||512;if(e&&this.pa&&(e=this.pa,c=b.type,e.ma)){var h=e.ma[18],h=a?h&240|c:h&15|c<<4;e.ma&&(e.ma[18]=h,Ti(e))}void 0===b.za&&(b.za=null,this.Ia("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));dm(this,b);b.Ta=d[f++];b.Xa=null;b.za&&(a=d[f],void 0!==a&&0>b.za.restore(a)&&(g=!1),g&&void 0!==b.Ta&&(b.Xa=b.za.seek(b.Vd,b.Pa,b.$a+b.hh)));return g};k.ak=function(){for(var a=0,b=[],c=0;c<this.Fa.length;c++)b[a++]=this.$j(this.Fa[c]);return b};
k.$j=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.rm;c[b++]=a.tf;c[b++]=a.jf;c[b++]=a.kf;c[b++]=a.Pa;c[b++]=a.Cb;c[b++]=a.Vd;c[b++]=a.$a;c[b++]=a.ee;c[b++]=a.kb;c[b++]=a.Ta;c[b]=a.za?a.za.save():null;return c};k.Ak=function(a){var b;a=this.Fa[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
function dm(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.jf[2])?e=b.jf[0]<<8|b.jf[1]:c=b.type);null==c||d||(d=Zl[a.mg][c][1],e=Zl[a.mg][c][0]);d&&((c=Zl[a.mg][b.type])&&e!=c[0]&&d!=c[1]&&a.Ia("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Bb=e,b.Cb=d,null==b.za&&(b.za=new Al(a,b,b.mode)))}}
k.pm=function(a,b,c){if(a.za){var d=a.za.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.Vd=Math.floor(b/g),b%=g,a.Pa=Math.floor(b/f),a.$a=b%f,a.kb=c*d[3],a.errorCode=0,!0}}return!1};
k.Zf=function(a){a||(this.Ie=0);for(var b=0;b<this.Fa.length;b++){var c=this.Fa[b];if(c.name&&c.path){if(!(a&&c.za&&c.za.wh)){var d;d=c.name;var c=c.path,e=this.Fa[b];e.Kc?(this.Ia("Drive "+b+" busy"),d=!0):(e.Kc=!0,e.Qe=!0,this.Ie++,this.va()&&this.qb("loading "+d),(e.za||new Al(this,e,e.mode)).load(d,c,null,this.Mm),d=!1);!d&&a&&this.Va(!1)}}else a&&void 0!==c.type&&(c.za=null,dm(this,c,c.type))}return!!this.Ie};
k.Mm=function(a,b,c){a.Kc=!1;(a.za=b)&&this.Ia('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.mb),a.Qe);a.Qe&&(a.Qe=!1,--this.Ie||this.Va())};k.Un=function(a,b){var c=0;this.Db<this.lb&&(c=this.jc[this.Db]);this.pa&&zj(this.pa,5);this.Ca&=-33;B(this,a,null,b,"DATA["+this.Db+"]",c);++this.Db>=this.lb&&(this.Db=this.lb=0,this.Ca&=-15);return c};
k.ip=function(a,b,c){B(this,a,b,c,"DATA["+this.lb+"]");this.lb<this.jc.length&&(this.jc[this.lb++]=b);a=12!=this.jc[0]?6:this.jc.length;6==this.lb&&(this.Ca&=-2);this.lb>=a&&(this.Ca|=2,this.Ca&=-2,em(this))};k.Vn=function(a,b){var c=this.Ca;B(this,a,null,b,"STATUS",c);this.Db<this.lb&&(this.Ca|=1);return c};k.lp=function(a,b,c){B(this,a,b,c,"RESET");this.km=b;this.pa&&zj(this.pa,5);this.Nd()};k.Tn=function(a,b){B(this,a,null,b,"CONFIG",this.Jf);return this.Jf};
k.kp=function(a,b,c){B(this,a,b,c,"PULSE");this.jm=b;this.Ca=13};k.jp=function(a,b,c){B(this,a,b,c,"PATTERN");this.im=b};k.Qj=function(a,b,c){B(this,a,b,c,"NOISE")};
k.en=function(a,b){var c=-1;if(this.Qa)if(c=this.yc(this.Qa),1==this.Qa.Ta)this.va(P|Yl)&&B(this,a,null,b,"DATA["+this.Qa.Ta+"]",c);else if(this.Qa.Ta==this.Qa.pb)if(this.Qa.kb-=this.Qa.pb,this.we=this.we-1&255,this.Qa.kb>=this.Qa.pb){var d=this;d.Ca=136;this.yc(this.Qa,function(a){0<=a?(fm(d),d.Ca=80):(d.Ca=1,d.ue=16)},!1)}else this.Ca=80;return c};
k.xo=function(a,b,c){this.Qa&&this.Qa.kb>=this.Qa.pb&&(0>this.Mc(this.Qa,b)?(this.Ca=1,this.ue=16):1==this.Qa.Ta?this.va(P|Yl)&&B(this,a,b,c,"DATA["+this.Qa.Ta+"]"):this.Qa.Ta==this.Qa.pb&&(this.Qa.kb-=this.Qa.pb,this.we=this.we-1&255,fm(this),this.Ca=80,this.Qa.kb>=this.Qa.pb&&(this.Ca|=8)))};k.gn=function(a,b){var c=this.ue;B(this,a,null,b,"ERROR",c);return c};k.Co=function(a,b,c){B(this,a,b,c,"WPREC");this.lm=b};k.hn=function(a,b){var c=this.we;B(this,a,null,b,"SECCNT",c);return c};
k.Ao=function(a,b,c){B(this,a,b,c,"SECCNT");this.we=b};k.jn=function(a,b){var c=this.Wh;B(this,a,null,b,"SECNUM",c);return c};k.Bo=function(a,b,c){B(this,a,b,c,"SECNUM");this.Wh=b};k.dn=function(a,b){var c=this.Uh;B(this,a,null,b,"CYLLO",c);return c};k.wo=function(a,b,c){B(this,a,b,c,"CYLLO");this.Uh=b};k.cn=function(a,b){var c=this.Th;B(this,a,null,b,"CYLHI",c);return c};k.vo=function(a,b,c){B(this,a,b,c,"CYLHI");this.Th=b};k.fn=function(a,b){var c=this.Kf;B(this,a,null,b,"DRVHD",c);return c};
k.yo=function(a,b,c){B(this,a,b,c,"DRVHD");this.Kf=b;this.Ca=this.Fa[this.Kf&16?1:0]?this.Ca|64:this.Ca&-65};k.kn=function(a,b){var c=this.Ca;B(this,a,null,b,"STATUS",c);return c};k.uo=function(a,b,c){B(this,a,b,c,"COMMAND");this.Vj=b;this.pa&&zj(this.pa,14);gm(this)};k.zo=function(a,b,c){B(this,a,b,c,"FDR");this.Vh&4&&!(b&4)&&(this.ue=1);this.Vh=b};
function gm(a){var b=!1,c=a.Vj,d=a.Kf&16?1:0,e=a.Kf&15,f=a.Uh|(a.Th&3)<<8,g=a.Wh,h=a.we||256;a.Qa=null;a.ue=0;a.Ca=80;(d=a.Fa[d])?(d.Vd=f,d.Pa=e,d.$a=g,d.kb=h*d.pb,c=144<=c?c:c&240,d.Xa=null,d.Ta=0,d.errorCode=0,a.Qa=d):c=-1;switch(c&240){case 32:a.Ca=136;a.yc(d,function(b){0<=b&&a.pa?(fm(a),a.Ca=80):(a.Ca=1,a.ue=16)},!1);break;case 48:a.Ca=8;break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.ue=1;b=!0;break;case 145:d.Cb=e+1,d.Hb=h,b=!0}b&&fm(a)}
function fm(a){!a.pa||a.Vh&2||yj(a.pa,14,120)}
function em(a){a.Db=0;var b=a.Ra(),c=a.Ra(),d=c&32,e=d>>5,f=c&31,g=a.Ra(),h=a.Ra(),n=g<<2&768|h,m=g&63,s=a.Ra(),r=a.Ra(),t=a.Fa[e];t&&(t.Vd=n,t.Pa=f,t.$a=m,t.kb=s*t.pb);switch(b){case 3:a.Xb(t?t.errorCode:4);a.ic(c);a.ic(g);a.ic(h);a.ic(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ra());)t&&c<t.jf.length&&(t.jf[c++]=b);t&&dm(a,t);b=0;t||a.wf!=e||(a.wf=-1,b=2);a.Xb(b|d);b=-1;break;case 224:case 228:a.Xb(0|d),b=-1}if(0<=b)switch(void 0===t?b=-1:(t.errorCode=0,t.rm=0),b){case 0:a.Xb(0|d);break;case 1:t.zq=
r;a.Xb(0|d);break;case 5:a.Xb(0|d);break;case 8:hm(a,t,function(b){a.Xb(b|d)});break;case 10:im(a,t,function(b){a.Xb(b|d)});break;case 15:jm(a,t,function(b){a.Xb(b|d)});break;default:a.Xb(2|d)}}k.Ra=function(){var a=-1;this.Db<this.lb&&(a=this.jc[this.Db++]);return a};k.Xb=function(a){this.Db=this.lb=0;void 0!==a&&this.ic(a);this.pa&&yj(this.pa,5);this.Ca|=32};k.ic=function(a){this.jc[this.lb++]=a};k.Ai=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};
k.Bi=function(a,b){return void 0!==b&&0<=b?this.Mc(a,b):-1};k.Jm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Ta<a.kf.length?a.kf[a.Ta++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.Km=function(a,b){return void 0!==b&&0<=b?this.ck(a,b):-1};function hm(a,b,c){b.errorCode=4;if(b.za&&(b.Xa=null,a.pa)){b.errorCode=0;rj(a.pa,3,a,"dmaRead",b);jj(a.pa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}
function im(a,b,c){b.errorCode=4;if(b.za&&(b.Xa=null,a.pa)){b.errorCode=0;rj(a.pa,3,a,"dmaWrite",b);jj(a.pa,3,function(a){a||(0==b.errorCode&&(b.errorCode=4),20==b.errorCode&&(b.errorCode=0));c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function jm(a,b,c){b.errorCode=4;b.kf&&b.kf.length==b.kb||(b.kf=Array(b.kb));b.Ta=0;a.pa?(b.errorCode=0,rj(a.pa,3,a,"dmaWriteBuffer",b),jj(a.pa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.yc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Xa&&(d=Kl(a.Xa,a.Ta),a.Ta+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;if(a.za)return a.za.seek(a.Vd,a.Pa,a.$a+a.hh,!1,function(c,h){(a.Xa=c)?(a.Ta=0,f.Xf(a),d=Kl(a.Xa,a.Ta),a.Ta+=e):a.errorCode=20;b(d,h)}),d;a.errorCode=20;b(d,!1)}return d};
k.Mc=function(a,b){if(a.errorCode)return-1;do{if(a.Xa&&a.za.write(a.Xa,a.Ta++,b))break;a.za&&a.za.seek(a.Vd,a.Pa,a.$a+a.hh,!0,function(b){a.Xa=b});if(!a.Xa){a.errorCode=20;b=-1;break}a.Ta=0;this.Xf(a)}while(1);return b};k.Xf=function(a){a.$a++;var b=1-a.hh;a.$a>=a.Hb+b&&(a.$a=b,a.Pa++,a.Pa>=a.Cb&&(a.Pa=0,a.Vd++))};
k.ck=function(a,b){if(a.errorCode)return-1;a.Pc[a.mf++]=b;if(a.mf==a.Pc.length){a.Vd=a.Pc[0];a.Pa=a.Pc[1];a.$a=a.Pc[2];a.kb=128<<a.Pc[3];for(var c=a.mf=0;c<a.kb;c++)if(0>this.Mc(a,a.qk))return-1;a.mh++}a.mh>=a.ee&&(b=-1);return b};k.Xn=function(){var a=this.T.K&255;!(this.T.H>>8)&&128<a&&(this.wf=a-128);return!0};k.Yn=function(){var a;(a=this.T.H>>8)||(a=!this.pa)||(a=!(this.pa.Wb[0].od&64));return a?!0:!1};
var am={800:W.prototype.Un,801:W.prototype.Vn,802:W.prototype.Tn},$l={496:W.prototype.en,497:W.prototype.gn,498:W.prototype.hn,499:W.prototype.jn,500:W.prototype.dn,501:W.prototype.cn,502:W.prototype.fn,503:W.prototype.kn},cm={800:W.prototype.ip,801:W.prototype.lp,802:W.prototype.kp,803:W.prototype.jp,807:W.prototype.Qj,811:W.prototype.Qj,815:W.prototype.Qj},bm={496:W.prototype.xo,497:W.prototype.Co,498:W.prototype.Ao,499:W.prototype.Bo,500:W.prototype.wo,501:W.prototype.vo,502:W.prototype.yo,503:W.prototype.uo,
1014:W.prototype.zo};Ka(function(){for(var a=A(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new W(d);bb(d,c)}});
function km(a){y.call(this,"Debugger",a,km);this.kh=this.hd=-1;this.Le=5;this.Nc=[0,0];this.kk=[0,0];this.Tc=-1;this.Oc=[];this.qf=!1;this.ye=[0,0];this.Cc=[];lm(this);mm(this);nm(this,a.messages);this.tb={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.Xj=a.commands;var b=this;window&&void 0===window.$&&(window.$=function(a){return om(b,a)})}
var Ob=1,md=16,pf=32,Fb=64,P=128,N=256,Sd=512,Gi=1024,Ii=2048,Oj=4096,Hj=8192,qi=16384,Xj=32768,kk=131072,Ml=262144,Yl=524288,Cl=1048576,ol=2097152,Pj=4194304,xl=16777216,of=536870912,qf=1073741824;Xa(y,km);
var Ki=26,pm={16:kk,19:Ml,21:qi,22:Xj,28:Gi,33:67108864,51:xl},qm={"?":"help","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","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",reset:"reset computer",ver:"display version"},rm="INVALID 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 LOADALL 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(" "),
Y="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),sm="BX+SI BX+DI BP+SI BP+DI SI DI BP BX".split(" "),tm={cpu:Ob,seg:2,desc:4,tss:8,"int":md,fault:pf,mem:Fb,port:P,dma:N,pic:Sd,timer:Gi,cmos:Ii,rtc:Oj,8042:Hj,chipset:qi,kbd:Xj,key:65536,video:kk,fdc:Ml,hdc:Yl,disk:Cl,serial:ol,speaker:Pj,state:8388608,mouse:xl,computer:33554432,dos:67108864,data:134217728,log:268435456,warn:of,halt:qf},Z=[0,0],um=[205,12291],vm=[[6,12417,4257],[6,12420,4260],[6,12449,4225],[6,12452,4228],
[6,12385,4097],[6,14435,4100],[137,4211],[134,8307],[130,12417,4257],[130,12420,4260],[130,12449,4225],[130,12452,4228],[130,12385,4097],[130,14435,4100],[137,4467],[134,8563],[5,12417,4257],[5,12420,4260],[5,12449,4225],[5,12452,4228],[5,12385,4097],[5,14435,4100],[137,4723],[134,8819],[150,12417,4257],[150,12420,4260],[150,12449,4225],[150,12452,4228],[150,12385,4097],[150,14435,4100],[137,4979],[134,9075],[7,12417,4257],[7,12420,4260],[7,12449,4225],[7,12452,4228],[7,12385,4097],[7,14435,4100],
[35,15],[29],[184,12417,4257],[184,12420,4260],[184,12449,4225],[184,12452,4228],[184,12385,4097],[184,14435,4100],[27,15],[30],[191,12417,4257],[191,12420,4260],[191,12449,4225],[191,12452,4228],[191,12385,4097],[191,14435,4100],[177,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],[137,6243],[137,6499],[137,6755],[137,7011],[137,7267],[137,7523],[137,7779],[137,8035],[134,10339],[134,10595],[134,10851],[134,11107],[134,11363],[134,11619],[134,11875],[134,12131],[138,32768],[135,32768],[10,37028,4247],[8,8323,4259],[64,49152],[70,49152],[131,49152],[9,49152],[137,36868],[73,45219,4234],[137,36866],[73,45219,4233],[76,41041,6755],[76,41044,6755],[133,39523,4161],[133,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],[192,12417,4097],[193,12420,4100],[192,12417,4097],[194,12420,4097],[185,4225,4257],[185,4228,4260],[189,12449,12417],[189,12452,12420],[121,8321,4257],[121,8324,4260],[121,8353,4225],[121,8356,4228],[121,8323,4275],[102,8356,148],[121,8371,4227],[134,8324],[128],[189,14435,14691],[189,14435,14947],[189,14435,15203],[189,14435,15459],[189,14435,15715],[189,14435,15971],[189,14435,16227],[18],[28],[17,4102],[188],[139],
[136],[148],[99],[121,8289,4129],[121,10339,4132],[121,8225,4193],[121,8228,6243],[122,8273,4161],[123,8276,4164],[25,4177,4161],[26,4180,4164],[185,4193,4097],[185,6243,4100],[181,8273,4193],[182,8276,6243],[113,8289,4161],[114,10339,4164],[151,4193,4177],[152,6243,4180],[121,8289,4097],[121,8545,4097],[121,8801,4097],[121,9057,4097],[121,9313,4097],[121,9569,4097],[121,9825,4097],[121,10081,4097],[121,10339,4100],[121,10595,4100],[121,10851,4100],[121,11107,4100],[121,11363,4100],[121,11619,4100],
[121,11875,4100],[121,12131,4100],[195,28801,4097],[196,28804,4097],[144,4099],[144],[104,8356,4246],[101,8356,4246],[121,8321,4097],[121,8324,4100],[34,36867,4097],[103,32768],[145,4099],[145],[78],[77,4097],[79],[80],[197,12417,4113],[198,12420,4113],[199,12417,4449],[200,12420,4449],[3,1],[2,1],[69],[190],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[116,4145],[117,4145],[115,4145],[83,4145],[74,8289,4097],[74,10339,4097],[132,4097,4193],[132,4097,6243],[17,4148],
[88,4148],[88,4102],[88,4145],[74,8289,6755],[74,10339,6755],[132,6755,4193],[132,6755,6243],[112,15],[0],[142,15],[143,15],[71],[23],[201,12417],[202,12420],[19],[178],[21],[180],[20],[179],[203,12417],[204,12420]],um={0:[206,12419],1:[207,12419],2:[100,37027,4243],3:[118,37027,4243],5:[111,32768],6:[22,32768]},vm=[[[6,12417,4097],[130,12417,4097],[5,12417,4097],[150,12417,4097],[7,12417,4097],[184,12417,4097],[191,12417,4097],[24,4225,4097]],[[6,12420,4100],[130,12420,4100],[5,12420,4100],[150,
[88,4148],[88,4102],[88,4145],[74,8289,6755],[74,10339,6755],[132,6755,4193],[132,6755,6243],[112,15],[0],[142,15],[143,15],[71],[23],[201,12417],[202,12420],[19],[178],[21],[180],[20],[179],[203,12417],[204,12420]],wm={0:[206,12419],1:[207,12419],2:[100,37027,4243],3:[118,37027,4243],5:[111,32768],6:[22,32768]},xm=[[[6,12417,4097],[130,12417,4097],[5,12417,4097],[150,12417,4097],[7,12417,4097],[184,12417,4097],[191,12417,4097],[24,4225,4097]],[[6,12420,4100],[130,12420,4100],[5,12420,4100],[150,
12420,4100],[7,12420,4100],[184,12420,4100],[191,12420,4100],[24,4228,4100]],[[6,12420,4098],[130,12420,4098],[5,12420,4098],[150,12420,4098],[7,12420,4098],[184,12420,4098],[191,12420,4098],[24,4228,4098]],[[146,45185,4097],[147,45185,4097],[140,45185,4097],[141,45185,4097],[170,45185,4097],[172,45185,4097],Z,[149,45185,4097]],[[146,45188,4097],[147,45188,4097],[140,45188,4097],[141,45188,4097],[170,45188,4097],[172,45188,4097],Z,[149,45188,4097]],[[146,12417,4113],[147,12417,4113],[140,12417,4113],
[141,12417,4113],[170,12417,4113],[172,12417,4113],Z,[149,12417,4113]],[[146,12420,4113],[147,12420,4113],[140,12420,4113],[141,12420,4113],[170,12420,4113],[172,12420,4113],Z,[149,12420,4113]],[[146,12417,4449],[147,12417,4449],[140,12417,4449],[141,12417,4449],[170,12417,4449],[172,12417,4449],Z,[149,12417,4449]],[[146,12420,4449],[147,12420,4449],[140,12420,4449],[141,12420,4449],[170,12420,4449],[172,12420,4449],Z,[149,12420,4449]],[[185,4225,4097],Z,[129,12417],[127,12417],[126,4225],[73,12417],
[32,4225],[72,12417]],[[185,4228,4100],Z,[129,12420],[127,12420],[126,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],[137,4228],Z],[],[[175,8323],[183,8323],[109,4227],[120,4227],[186,4227],[187,4227],Z,Z],[[169,8323],[174,8323],[106,4227],[108,4227],[176,8323],Z,[110,4227],Z]],wm={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)",
[32,4225],[72,12417]],[[185,4228,4100],Z,[129,12420],[127,12420],[126,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],[137,4228],Z],[],[[175,8323],[183,8323],[109,4227],[120,4227],[186,4227],[187,4227],Z,Z],[[169,8323],[174,8323],[106,4227],[108,4227],[176,8323],Z,[110,4227],Z]],ym={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",
@ -690,91 +690,91 @@ Y="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),qm
55:"get(0)/set(1) switch character DL (AL)",56:"get country-specific information",57:"create subdirectory DS:DX",58:"remove subdirectory DS:DX",59:"set current directory DS:DX",60:"create or truncate file DS:DX with attributes CX",61:"open existing file DS:DX with mode AL",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)"}};
im.prototype.vc=function(a,b,c,d){this.sa=b;this.T=c;this.Ma=a;this.Xm=ib(a,"FDC");this.Sk=ib(a,"HDC");this.Me=b.Af>>2;this.Tf=tm;80186<=this.T.Ka&&(this.Tf=tm.slice(),this.Tf[15]=Z,80286<=this.T.Ka&&(this.Tf[15]=sm));Fi(this,4,function(a){if(a){var b=xm(d,a);if(void 0===b)d.aa("invalid selector: "+a);else{a=ym(d,b);d.aa("dumpDesc("+u(a.ta)+"): %"+p(a.Cd,d.Me));var c,b=!1;if(a.type&4096)a.type&2048?(c="code"+(a.type&512?",readable":",execonly"),a.type&1024&&(c+=",conforming")):(c="data"+(a.type&512?
",writable":",readonly"),a.type&1024&&(c+=",expdown")),a.type&256&&(c+=",accessed");else switch(a.type){case 256:c="tss";break;case 512:c="ldt";break;case 768:c="busy tss";break;case 1024:c="call gate";b=!0;break;case 1280:c="task gate";b=!0;break;case 1536:c="int gate";b=!0;break;case 1792:c="trap gate",b=!0}!c||a.Db&32768||(c+=",not present");d.aa((b?"seg="+u(a.Da&65535)+" off="+u(a.nc):"base="+p(a.Da,d.Me)+" limit="+u(a.nc))+" dpl="+q(a.Jc)+" type="+q(a.type>>8)+" ("+c+")")}}else d.aa("no selector")});
Fi(this,8,function(a){a:{if(a){var b=xm(d,a);if(void 0===b){d.aa("invalid task selector: "+a);break a}a=ym(d,b)}else a=d.T.Za;d.aa("dumpTSS("+u(a.ta)+"): %"+p(a.Da,d.Me));var b="",c;for(c in zm){var e=zm[c],l=8>c.length?" ":"",s=sb(d.sa,a.Da+e);b&&(b+="\n");b+=u(e)+" "+c+": "+l+u(s)}d.aa(b)}});Fi(this,67108864,function(a){if(a)for(d.aa("dumpDOS("+a+")"),a=xm(d,a);a;){var b=[0,a,void 0],c=d.wb(b,1),e=d.qa(b,2),l=d.qa(b,5);if(77!=c&&90!=c)break;d.aa(fa(0,a)+": '"+String.fromCharCode(c)+"' PID="+u(e)+
" LEN="+u(l)+' "'+Am(d,b)+'"');a+=1+l}else d.aa("no MCB")});this.Xa();if(this.Zj){a=Bm(this,this.Zj);delete this.Zj;for(var e in a)mm(this,a[e])}};
im.prototype.Ib=function(a,b,c){var d=this;switch(b){case "debugInput":return this.eg=this.xa[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode){b=c.value;c.value="";var g=Bm(d,b,!0),h;for(h in g)mm(d,g[h])}else 27==a.keyCode?c.value=b="":(38==a.keyCode?d.Tc<d.Oc.length-1&&(b=d.Oc[++d.Tc]):40==a.keyCode&&(0<d.Tc?b=d.Oc[--d.Tc]:(b="",d.Tc=-1)),null!=b&&(g=b.length,c.value=b,c.setSelectionRange(g,g)));null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.xa[b]=c,Ea(c,function(){if(d.eg){var a=
d.eg.value;d.eg.value="";var a=Bm(d,a,!0),b;for(b in a)mm(d,a[b]);return!0}return!1}),!0;case "step":return this.xa[b]=c,Ea(c,function(a){var b=!1;eb(d,!0)||(db(d,!0),b=d.Mf(a?1:0),db(d,!1));return b}),!0}return!1};im.prototype.Yc=function(){this.eg&&this.eg.focus()};
var zm={PREV_TSS:0,CPL0_SP:2,CPL0_SS:4,CPL1_SP:6,CPL1_SS:8,CPL2_SP:10,CPL2_SS:12,TASK_IP:14,TASK_PS:16,TASK_AX:18,TASK_CX:20,TASK_DX:22,TASK_BX:24,TASK_SP:26,TASK_BP:28,TASK_SI:30,TASK_DI:32,TASK_ES:34,TASK_CS:36,TASK_SS:38,TASK_DS:40,TASK_LDT:42};function Am(a,b){var c,d="";for(c=8;d.length<c;){var e=a.wb(b,1);if(!e)break;d+=32<=e&&128>e?String.fromCharCode(e):"."}return d}
function lm(a,b){a.ka=a;a.Yb=a.Hm=of;a.$j=null;a.li=[];var c=Bm(a,b);if(c.length)for(var d in rm)0<=c.indexOf(d)&&(a.Yb|=rm[d],a.aa(d+" messages enabled"))}function Fi(a,b,c){for(var d in rm)if(b==rm[d]){a.li[d]=c;break}}
function od(a,b,c){var d=nm[b],e=d&&a.wa(d),f=a.T.H>>8;if(e){var g=a.T.K&255;if(33==b&&11==f||d==Ml&&128<=g||d==Yl&&128>g)e=!1}if(e){if(d=(d=wm[b])&&d[f]||"")g=a.T,a.sb[Y[0]]=q(g.H&255),a.sb[Y[1]]=q(g.J&255),a.sb[Y[2]]=q(g.K&255),a.sb[Y[3]]=q(g.C&255),a.sb[Y[4]]=q(g.H>>8),a.sb[Y[5]]=q(g.J>>8),a.sb[Y[6]]=q(g.K>>8),a.sb[Y[7]]=q(g.C>>8),a.sb[Y[8]]=u(g.H),a.sb[Y[9]]=u(g.J),a.sb[Y[10]]=u(g.K),a.sb[Y[11]]=u(g.C),a.sb[Y[12]]=u(g.Y),a.sb[Y[13]]=u(g.I),a.sb[Y[14]]=u(g.G),a.sb[Y[15]]=u(g.F),a.sb[Y[16]]=u(g.Wa.ta),
a.sb[Y[17]]=u(g.va.ta),a.sb[Y[18]]=u(g.Ra.ta),a.sb[Y[19]]=u(g.Cb.ta),a.sb[Y[20]]=u(g.ua),d=" "+la(a.sb,d);a.message("INT 0x"+q(b)+": AH="+q(f)+" at "+fa(c-2-a.T.va.Da,a.T.va.ta)+d)}return e}function qd(a,b,c,d,e){a.message("INT 0x"+q(b)+": C="+(Ad(a.T)?1:0)+(e||"")+" (cycles="+d+(c?",level="+(c+1):"")+")")}
function cb(a,b,c,d,e,f,g,h){h||(h=0);h|=P;if(null==e||(a.Yb&h)==h)h=null,null!=e&&(h=a.T.va.ta,e-=a.T.va.Da),a.message(b.Eh+"."+(null!=d?"outPort":"inPort")+"(0x"+u(c)+","+(f?f:"unknown")+(null!=d?",0x"+q(d):"")+")"+(null!=g?": 0x"+q(g):"")+(null!=e?" at "+fa(e,h):""))}k=im.prototype;k.message=function(a,b){b&&(a+=" @"+fa(this.T.ua,this.T.va.ta));if(!this.$j||a!=this.$j)if(this.aa(a),this.$j=a,this.T){this.Yb&qf&&this.T.Jb();var c=this.T;c.da.Ef=0;c.Uc-=c.A;c.A=0;Vb(c)}};k.Zn=function(){this.aa("Type ? for list of debugger commands")};
function km(a){var b;if(Sd(a)){if(!a.ae||!a.ae.length){a.ae=Array(1E4);for(b=0;b<a.ae.length;b++)a.ae[b]=[0,null,0];a.xf=0}if(!a.$c||!a.$c.length)for(a.$c=Array(256),b=0;b<a.$c.length;b++)a.$c[b]=[b,0]}else a.xf=0,a.ae=[],a.$c=[]}k.$e=function(a){if(!Cm(this))return!1;this.T.$e(a);return!0};
k.Mf=function(a,b,c){if(!Cm(this))return!1;this.hd=0;do{a||Sd(this)&&Xd(this,this.T.Ea,!0);try{var d=this.T.Mf(a);0<d&&(this.hd+=d,$b(this.T,d,!0),Wb(this.T,d),this.mh++)}catch(e){this.hd=0,gb(this.T,e.message||e)}}while(this.T.ba&240);!1!==c&&Vb(this.T);Tb(this,b||!1,!1);return 0<this.hd};k.Jb=function(a,b){a&&this.aa(a);this.T.Jb(!b)};function Tb(a,b,c){void 0===b&&(b=!0);void 0===c&&(c=!0);a.Nc=[a.T.ua,a.T.va.ta,void 0];b&&1!=a.tc?Dm(a,null,c):Em(a)}
function Cm(a){var b;if(b=a.T&&fb(a.T))b=a.T,b.na.Ub?b=!0:(b.aa(b.toString()+" not powered"),b=!1);b&&!eb(a.T)?(a=a.T,a.na.fd?(a.aa(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}k.ec=function(a,b){return!b&&(this.reset(!0),this.aa(a?"resuming":"powering up"),a&&this.restore&&!this.restore(a))?!1:!0};k.dc=function(a,b){b&&this.aa(a?"suspending":"shutting down");return a&&this.save?this.save():!0};
k.reset=function(a){km(this);this.hd=this.mh=0;this.Nc=[this.T.ua,this.T.va.ta,void 0];void 0===this.na.Fb||a||this.aa("reset");this.na.Fb=!1;Fm(this);a||Tb(this)};k.save=function(){var a=new td(this);a.set(0,this.Nc);a.set(1,this.ze);a.set(2,[this.Oc,this.qf,this.Yb]);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.Nc=a[b++],this.ze=a[b++],this.Oc=a[b][0],"string"==typeof this.Oc&&(this.Oc=[this.Oc]),this.qf=a[b][1],this.Yb||(this.Yb=a[b][2]));return!0};
k.start=function(a,b){this.tc||this.aa("running");this.na.Fb=!0;this.jo=a;this.jd=b};k.stop=function(a,b){if(this.na.Fb){this.na.Fb=!1;this.hd=b-this.jd;if(!this.tc){var c="stopped";if(this.hd){var d=a-this.jo,e=0<d?Math.round(1E3*this.hd/d):0,c=c+" (";Sd(this)&&(c+=this.mh+" ops, ");c+=this.hd+" cycles, "+d+" ms, "+e+" hz)"}this.aa(c)}Tb(this,!0,2!=this.tc);this.Yc();Fm(this,this.T.Ea)}};function Sd(a){return 1<a.zc.length||a.wa(nd)}
function Xd(a,b,c){if(!(c||3!=a.T.va.Ta||a.T.Ba&512)||!c&&Gm(a,b,a.zc))return!0;a.$c.length&&(a.mh++,c=rb(a.sa,b),a.$c[c][1]++,c=a.ae[a.xf],c[0]=a.T.ua,c[1]=a.T.va.ta,c[2]=b,++a.xf==a.ae.length&&(a.xf=0));return!1}function Gb(a,b){return Gm(a,b,a.Yd)?(a.T.Jb(!0),!0):!1}function Hb(a,b){return Gm(a,b,a.Zc)?(a.T.Jb(!0),!0):!1}function zb(a,b,c){a.aa("break on input from port "+u(b)+": "+q(c));a.T.Jb(!0)}function Db(a,b,c){a.aa("break on output to port "+u(b)+": "+q(c));a.T.Jb(!0)}
function ym(a,b){if(b==a.T.va.ta)return a.T.va;if(b==a.T.Cb.ta)return a.T.Cb;if(b==a.T.Wa.ta)return a.T.Wa;if(b==a.T.Ra.ta)return a.T.Ra;var c=new fc(a.T,7,"DBG");c.load(b,!0);return c}function Hm(a,b,c,d){var e=b[2];null==e&&(a=ym(a,b[1]),e=c?a.Zb(b[0],d||0,!0):a.Hc(b[0],d||0,!0));16711680==(e&16711680)&&(e&=1048575);return e}k.wb=function(a,b){var c=255,d=Hm(this,a,!1,0);0<=d&&(c=rb(this.sa,d),void 0!==b&&Im(a,b));return c};
k.qa=function(a,b){var c=65535,d=Hm(this,a,!1,1);0<=d&&(c=sb(this.sa,d),void 0!==b&&Im(a,b));return c};k.Td=function(a,b,c){var d=Hm(this,a,!0,0);0<=d&&(tb(this.sa,d,b),void 0!==c&&Im(a,c),Vb(this.T))};k.Sa=function(a,b,c){var d=Hm(this,a,!0,1);0<=d&&(ub(this.sa,d,b),void 0!==c&&Im(a,c),Vb(this.T))};function Jm(a){return null==a[1]?"%"+p(a[2]):fa(a[0],a[1])}function Im(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 jm(a){var b;a.zc=["exec"];if(void 0!==a.Yd)for(b=1;b<a.Yd.length;b++){var c=a.sa,d=Hm(a,a.Yd[b]);Lb(c.Ha[d>>c.Eb],!1)}a.Yd=["read"];if(void 0!==a.Zc)for(b=1;b<a.Zc.length;b++)c=a.sa,d=Hm(a,a.Zc[b]),Lb(c.Ha[d>>c.Eb],!0);a.Zc=["write"]}k.be=function(a,b,c){if(!Km(this,a,b)){b[3]=c;a.push(b);if(a!=this.zc){var d=this.sa,e=Hm(this,b);d.Ha[e>>d.Eb].be(e&d.pb,a==this.Zc)}c||this.aa("breakpoint enabled: "+Jm(b)+" ("+a[0]+")");km(this);return!0}return!1};
function Km(a,b,c,d){var e=!1;c=Hm(a,c);for(var f=1;f<b.length;f++){var g=b[f];if(c==Hm(a,g)){e=!0;if(d){b.splice(f,1);b!=a.zc&&(d=a.sa,Lb(d.Ha[c>>d.Eb],b==a.Zc));g[3]||a.aa("breakpoint cleared: "+Jm(g)+" ("+b[0]+")");km(a);break}a.aa("breakpoint exists: "+Jm(g)+" ("+b[0]+")");break}}return e}function Lm(a,b){for(var c=1;c<b.length;c++)a.aa("breakpoint enabled: "+Jm(b[c])+" ("+b[0]+")");return b.length-1}
function Mb(a,b,c,d){if(void 0===d)Mb(a,b,c,a.Yd),Mb(a,b,c,a.Zc);else for(var e=1;e<d.length;e++){var f=Hm(a,d[e]);if(f>=b&&f<b+c){var g=a.sa;g.Ha[f>>g.Eb].be(f&g.pb,d==a.Zc)}}}function Fm(a,b){if(void 0!==b)Gm(a,b,a.zc,!0),a.tc=0;else for(var c=1;c<a.zc.length;c++){var d=a.zc[c];if(d[3]){if(!Km(a,a.zc,d,!0))break;c=0}}}
function Gm(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==Hm(a,g)){g[3]?Km(a,c,g,!0):d||a.aa("\nbreakpoint hit: "+Jm(g)+" ("+c[0]+")");e=!0;break}}return e}
function Mm(a,b,c,d){var e=[b[0],b[1],b[2]],f=a.wb(b,1),g=a.Tf[f],h=g[0],n=-1;205==h&&(h=a.wb(b,1),g=um[h]||Z,f|=h<<8,h=g[0]);h>=pm.length&&(n=a.wb(b,1),g=vm[h-pm.length][n>>3&7]);var h=pm[g[0]],l=2,s="";if(164<=f&&167>=f||170<=f&&175>=f)l=0;for(f=1;f<=l;f++){var r="",t=g[f];if(void 0!==t){var w=t&15;if(0!=w&&15!=w){var v=t&240;if(128<=v)if(0>n&&(n=a.wb(b,1)),160<=v)a:{r=n>>3&7;if(176==(t&240)){if(4<=r){r=null;break a}r+=16}else 3<=(t&15)&&(r+=8);r=Y[r]}else{if(128<=v){var r=a,v=t,t=b,C="",w=n>>6,
C=n&7;3>w?(v=void 0,w||6!=C?(C=qm[C],1==w?(v=r.wb(t,1),v&128?(v=v<<24>>24,C+="-"+q(-v)):C+="+"+q(v)):2==w&&(v=r.qa(t,2),C+="+"+u(v))):(v=r.qa(t,2),C=u(v)),C="["+C+"]"):C=Y[C+(1==(v&15)?0:8)];r=C}}else if(16==v)r="1";else if(0==v){r=a;w=t;t=b;v=" ";switch(w&15){case 1:w&12288&&(v=q(r.wb(t,1)));break;case 2:v=u(r.wb(t,1)<<24>>24);break;case 3:case 4:v=u(r.qa(t,2));break;case 6:w=r.qa(t,2);r=r.qa(t,2);v=Jm([w,r,void 0]);break;default:v="imm("+u(w)+")"}r=v}else 32==v?r="["+u(a.qa(b,2))+"]":48==v?(1==
w?(r=a.wb(b,1),r=r<<24>>24):r=a.qa(b,2),r=b[0]+r&65535,r=Nm(a,[r,b[1],void 0])[0]||u(r)):96==v?r=Y[(t&3840)>>8]:112==v?r=Y[((t&3840)>>8)+16]:64==v?r="DS:[SI]":80==v&&(r="ES:[DI]");if(!r||!r.length){s="INVALID";break}0<s.length&&(s+=",");s+=r}}}g=Jm(e)+" ";n="";do n+=q(a.wb(e,1));while(e[0]!=b[0]);g+=(n+" ").substr(0,14);g+=(h+" ").substr(0,8);s&&(g+=" "+s);c&&(g=(g+" ").substr(0,50),g+=";",g=a.T.na.rf?g+("cycles="+D(a.T).toString()+" cs="+p(a.T.da.pg)):g+(c+
(null!=d?"="+d.toString():"")));return g}function Om(a,b){var c;switch(b){case "V":c=Fd(a.T);break;case "D":c=a.T.Ba&1024;break;case "I":c=a.T.Ba&512;break;case "T":c=a.T.Ba&256;break;case "S":c=Ed(a.T);break;case "Z":c=Dd(a.T);break;case "A":c=Cd(a.T);break;case "P":c=Bd(a.T);break;case "C":c=Ad(a.T);break;default:c=0}return" "+b+(c?"1":"0")}function Pm(a,b,c){return b.Mg+"="+u(b.ta)+(c?"["+p(b.Da,a.Me)+","+u(b.nc)+"]":"")}
function Qm(a,b,c,d,e){return b+"="+(null!=c?u(c):"")+"["+p(d,a.Me)+","+u(e-d)+"]"}
function Rm(a,b,c){var d=2==c?a.mk:a.Nc;c=d[0];var e=d[1],d=d[2];if(void 0!==b){"%"==b.charAt(0)&&(b=b.substr(1),c=-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.Cc.length;h++){var f=a.Cc[h][0],n=a.Cc[h][2][g];if(void 0!==n){g=n.o;void 0!==g&&(h=n.s,void 0===h&&(h=f>>>4),d[0]=g,d[1]=h,void 0!==n.p&&(d[2]=n.p));break}}if(d&&d.length)return d;d=b.indexOf(":");0>d?null!=e?(c=xm(a,b),d=null):d=xm(a,b):(e=xm(a,b.substring(0,d)),c=xm(a,b.substring(d+1)),
km.prototype.vc=function(a,b,c,d){this.sa=b;this.T=c;this.Ma=a;this.Um=ib(a,"FDC");this.Pk=ib(a,"HDC");this.Le=b.Af>>2;this.Uf=vm;80186<=this.T.Ka&&(this.Uf=vm.slice(),this.Uf[15]=Z,80286<=this.T.Ka&&(this.Uf[15]=um));Fi(this,4,function(a){if(a){var b=zm(d,a);if(void 0===b)d.Z("invalid selector: "+a);else{a=Am(d,b);d.Z("dumpDesc("+v(a.ta)+"): %"+p(a.Dd,d.Le));var c,b=!1;if(a.type&4096)a.type&2048?(c="code"+(a.type&512?",readable":",execonly"),a.type&1024&&(c+=",conforming")):(c="data"+(a.type&512?
",writable":",readonly"),a.type&1024&&(c+=",expdown")),a.type&256&&(c+=",accessed");else switch(a.type){case 256:c="tss";break;case 512:c="ldt";break;case 768:c="busy tss";break;case 1024:c="call gate";b=!0;break;case 1280:c="task gate";b=!0;break;case 1536:c="int gate";b=!0;break;case 1792:c="trap gate",b=!0}!c||a.nb&32768||(c+=",not present");d.Z((b?"seg="+v(a.Ga&65535)+" off="+v(a.oc):"base="+p(a.Ga,d.Le)+" limit="+v(a.oc))+" dpl="+q(a.nc)+" type="+q(a.type>>8)+" ("+c+")")}}else d.Z("no selector")});
Fi(this,8,function(a){a:{if(a){var b=zm(d,a);if(void 0===b){d.Z("invalid task selector: "+a);break a}a=Am(d,b)}else a=d.T.fb;d.Z("dumpTSS("+v(a.ta)+"): %"+p(a.Ga,d.Le));var b="",c;for(c in Bm){var e=Bm[c],m=8>c.length?" ":"",s=sb(d.sa,a.Ga+e);b&&(b+="\n");b+=v(e)+" "+c+": "+m+v(s)}d.Z(b)}});Fi(this,67108864,function(a){if(a)for(d.Z("dumpDOS("+a+")"),a=zm(d,a);a;){var b=[0,a,void 0],c=d.yb(b,1),e=d.ra(b,2),m=d.ra(b,5);if(77!=c&&90!=c)break;d.Z(fa(0,a)+": '"+String.fromCharCode(c)+"' PID="+v(e)+" LEN="+
v(m)+' "'+Cm(d,b)+'"');a+=1+m}else d.Z("no MCB")});this.Va();if(this.Xj){a=Dm(this,this.Xj);delete this.Xj;for(var e in a)om(this,a[e])}};
km.prototype.Ib=function(a,b,c){var d=this;switch(b){case "debugInput":return this.eg=this.xa[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode){b=c.value;c.value="";var g=Dm(d,b,!0),h;for(h in g)om(d,g[h])}else 27==a.keyCode?c.value=b="":(38==a.keyCode?d.Tc<d.Oc.length-1&&(b=d.Oc[++d.Tc]):40==a.keyCode&&(0<d.Tc?b=d.Oc[--d.Tc]:(b="",d.Tc=-1)),null!=b&&(g=b.length,c.value=b,c.setSelectionRange(g,g)));null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.xa[b]=c,Ea(c,function(){if(d.eg){var a=
d.eg.value;d.eg.value="";var a=Dm(d,a,!0),b;for(b in a)om(d,a[b]);return!0}return!1}),!0;case "step":return this.xa[b]=c,Ea(c,function(a){var b=!1;eb(d,!0)||(db(d,!0),b=d.Nf(a?1:0),db(d,!1));return b}),!0}return!1};km.prototype.Yc=function(){this.eg&&this.eg.focus()};
var Bm={PREV_TSS:0,CPL0_SP:2,CPL0_SS:4,CPL1_SP:6,CPL1_SS:8,CPL2_SP:10,CPL2_SS:12,TASK_IP:14,TASK_PS:16,TASK_AX:18,TASK_CX:20,TASK_DX:22,TASK_BX:24,TASK_SP:26,TASK_BP:28,TASK_SI:30,TASK_DI:32,TASK_ES:34,TASK_CS:36,TASK_SS:38,TASK_DS:40,TASK_LDT:42};function Cm(a,b){var c,d="";for(c=8;d.length<c;){var e=a.yb(b,1);if(!e)break;d+=32<=e&&128>e?String.fromCharCode(e):"."}return d}
function nm(a,b){a.ka=a;a.Yb=a.Em=of;a.Yj=null;a.ki=[];var c=Dm(a,b);if(c.length)for(var d in tm)0<=c.indexOf(d)&&(a.Yb|=tm[d],a.Z(d+" messages enabled"))}function Fi(a,b,c){for(var d in tm)if(b==tm[d]){a.ki[d]=c;break}}
function nd(a,b,c){var d,e=!1,f=pm[b];f&&(d=a.T.H>>8,e=a.va(f)?!0:f==Ml&&a.va(f=Yl));if(e){var g=a.T.K&255;if(33==b&&11==d||f==Ml&&128<=g||f==Yl&&128>g)e=!1}if(e){if(f=(f=ym[b])&&f[d]||"")g=a.T,a.tb[Y[0]]=q(g.H&255),a.tb[Y[1]]=q(g.J&255),a.tb[Y[2]]=q(g.K&255),a.tb[Y[3]]=q(g.C&255),a.tb[Y[4]]=q(g.H>>8),a.tb[Y[5]]=q(g.J>>8),a.tb[Y[6]]=q(g.K>>8),a.tb[Y[7]]=q(g.C>>8),a.tb[Y[8]]=v(g.H),a.tb[Y[9]]=v(g.J),a.tb[Y[10]]=v(g.K),a.tb[Y[11]]=v(g.C),a.tb[Y[12]]=v(g.Y),a.tb[Y[13]]=v(g.I),a.tb[Y[14]]=v(g.G),a.tb[Y[15]]=
v(g.F),a.tb[Y[16]]=v(g.La.ta),a.tb[Y[17]]=v(g.ua.ta),a.tb[Y[18]]=v(g.Ya.ta),a.tb[Y[19]]=v(g.eb.ta),a.tb[Y[20]]=v(g.wa),f=" "+la(a.tb,f);a.message("INT 0x"+q(b)+": AH="+q(d)+" @"+fa(c-2-a.T.ua.Ga,a.T.ua.ta)+f)}return e}function pd(a,b,c,d,e){a.message("INT 0x"+q(b)+": C="+(zd(a.T)?1:0)+(e||"")+" (cycles="+d+(c?",level="+(c+1):"")+")")}
function cb(a,b,c,d,e,f,g,h){h|=P;if(null==e||(a.Yb&h)==h)h=null,null!=e&&(h=a.T.ua.ta,e-=a.T.ua.Ga),a.message(b.Dh+"."+(null!=d?"outPort":"inPort")+"(0x"+v(c)+","+(f?f:"unknown")+(null!=d?",0x"+q(d):"")+")"+(null!=g?": 0x"+q(g):"")+(null!=e?" @"+fa(e,h):""))}k=km.prototype;k.message=function(a,b){b&&(a+=" @"+fa(this.T.wa,this.T.ua.ta));if(!this.Yj||a!=this.Yj)if(this.Z(a),this.Yj=a,this.T){this.Yb&qf&&this.T.Jb();var c=this.T;c.da.Ef=0;c.Uc-=c.A;c.A=0;Vb(c)}};k.Wn=function(){this.Z("Type ? for list of debugger commands")};
function mm(a){var b;if(Pd(a)){if(!a.$d||!a.$d.length){a.$d=Array(1E4);for(b=0;b<a.$d.length;b++)a.$d[b]=[0,null,0];a.xf=0}if(!a.$c||!a.$c.length)for(a.$c=Array(256),b=0;b<a.$c.length;b++)a.$c[b]=[b,0]}else a.xf=0,a.$d=[],a.$c=[]}k.Ze=function(a){if(!Em(this))return!1;this.T.Ze(a);return!0};
k.Nf=function(a,b,c){if(!Em(this))return!1;this.hd=0;do{a||Pd(this)&&Wd(this,this.T.Ea,!0);try{var d=this.T.Nf(a);0<d&&(this.hd+=d,$b(this.T,d,!0),Wb(this.T,d),this.kh++)}catch(e){this.hd=0,gb(this.T,e.message||e)}}while(this.T.ba&240);!1!==c&&Vb(this.T);Ub(this,b||!1,!1);return 0<this.hd};k.Jb=function(a,b){a&&this.Z(a);this.T.Jb(!b)};function Ub(a,b,c){void 0===b&&(b=!0);void 0===c&&(c=!0);a.Nc=[a.T.wa,a.T.ua.ta,void 0];b&&1!=a.tc?Fm(a,null,c):Gm(a)}
function Em(a){var b;if(b=a.T&&fb(a.T))b=a.T,b.na.Tb?b=!0:(b.Z(b.toString()+" not powered"),b=!1);b&&!eb(a.T)?(a=a.T,a.na.fd?(a.Z(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}k.ec=function(a,b){return!b&&(this.reset(!0),this.Z(a?"resuming":"powering up"),a&&this.restore&&!this.restore(a))?!1:!0};k.dc=function(a,b){b&&this.Z(a?"suspending":"shutting down");return a&&this.save?this.save():!0};
k.reset=function(a){mm(this);this.hd=this.kh=0;this.Nc=[this.T.wa,this.T.ua.ta,void 0];void 0===this.na.Fb||a||this.Z("reset");this.na.Fb=!1;Hm(this);a||Ub(this)};k.save=function(){var a=new sd(this);a.set(0,this.Nc);a.set(1,this.ye);a.set(2,[this.Oc,this.qf,this.Yb]);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.Nc=a[b++],this.ye=a[b++],this.Oc=a[b][0],"string"==typeof this.Oc&&(this.Oc=[this.Oc]),this.qf=a[b][1],this.Yb||(this.Yb=a[b][2]));return!0};
k.start=function(a,b){this.tc||this.Z("running");this.na.Fb=!0;this.fo=a;this.jd=b};k.stop=function(a,b){if(this.na.Fb){this.na.Fb=!1;this.hd=b-this.jd;if(!this.tc){var c="stopped";if(this.hd){var d=a-this.fo,e=0<d?Math.round(1E3*this.hd/d):0,c=c+" (";Pd(this)&&(c+=this.kh+" ops, ");c+=this.hd+" cycles, "+d+" ms, "+e+" hz)"}this.Z(c)}Ub(this,!0,2!=this.tc);this.Yc();Hm(this,this.T.Ea)}};function Pd(a){return 1<a.zc.length||a.va(md)}
function Wd(a,b,c){if(!(c||3!=a.T.ua.bb||a.T.Ba&512)||!c&&Im(a,b,a.zc))return!0;a.$c.length&&(a.kh++,c=rb(a.sa,b),a.$c[c][1]++,c=a.$d[a.xf],c[0]=a.T.wa,c[1]=a.T.ua.ta,c[2]=b,++a.xf==a.$d.length&&(a.xf=0));return!1}function Gb(a,b){return Im(a,b,a.Xd)?(a.T.Jb(!0),!0):!1}function Hb(a,b){return Im(a,b,a.Zc)?(a.T.Jb(!0),!0):!1}function zb(a,b,c){a.Z("break on input from port "+v(b)+": "+q(c));a.T.Jb(!0)}function Db(a,b,c){a.Z("break on output to port "+v(b)+": "+q(c));a.T.Jb(!0)}
function Am(a,b){if(b==a.T.ua.ta)return a.T.ua;if(b==a.T.eb.ta)return a.T.eb;if(b==a.T.La.ta)return a.T.La;if(b==a.T.Ya.ta)return a.T.Ya;var c=new fc(a.T,7,"DBG");c.load(b,!0);return c}function Jm(a,b,c,d){var e=b[2];null==e&&(a=Am(a,b[1]),e=c?a.Zb(b[0],d||0,!0):a.Ic(b[0],d||0,!0));16711680==(e&16711680)&&(e&=1048575);return e}k.yb=function(a,b){var c=255,d=Jm(this,a,!1,0);0<=d&&(c=rb(this.sa,d),void 0!==b&&Km(a,b));return c};
k.ra=function(a,b){var c=65535,d=Jm(this,a,!1,1);0<=d&&(c=sb(this.sa,d),void 0!==b&&Km(a,b));return c};k.Sd=function(a,b,c){var d=Jm(this,a,!0,0);0<=d&&(tb(this.sa,d,b),void 0!==c&&Km(a,c),Vb(this.T))};k.Sa=function(a,b,c){var d=Jm(this,a,!0,1);0<=d&&(ub(this.sa,d,b),void 0!==c&&Km(a,c),Vb(this.T))};function Lm(a){return null==a[1]?"%"+p(a[2]):fa(a[0],a[1])}function Km(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 lm(a){var b;a.zc=["exec"];if(void 0!==a.Xd)for(b=1;b<a.Xd.length;b++){var c=a.sa,d=Jm(a,a.Xd[b]);Lb(c.Ha[d>>c.Eb],!1)}a.Xd=["read"];if(void 0!==a.Zc)for(b=1;b<a.Zc.length;b++)c=a.sa,d=Jm(a,a.Zc[b]),Lb(c.Ha[d>>c.Eb],!0);a.Zc=["write"]}k.ae=function(a,b,c){if(!Mm(this,a,b)){b[3]=c;a.push(b);if(a!=this.zc){var d=this.sa,e=Jm(this,b);d.Ha[e>>d.Eb].ae(e&d.ob,a==this.Zc)}c||this.Z("breakpoint enabled: "+Lm(b)+" ("+a[0]+")");mm(this);return!0}return!1};
function Mm(a,b,c,d){var e=!1;c=Jm(a,c);for(var f=1;f<b.length;f++){var g=b[f];if(c==Jm(a,g)){e=!0;if(d){b.splice(f,1);b!=a.zc&&(d=a.sa,Lb(d.Ha[c>>d.Eb],b==a.Zc));g[3]||a.Z("breakpoint cleared: "+Lm(g)+" ("+b[0]+")");mm(a);break}a.Z("breakpoint exists: "+Lm(g)+" ("+b[0]+")");break}}return e}function Nm(a,b){for(var c=1;c<b.length;c++)a.Z("breakpoint enabled: "+Lm(b[c])+" ("+b[0]+")");return b.length-1}
function Mb(a,b,c,d){if(void 0===d)Mb(a,b,c,a.Xd),Mb(a,b,c,a.Zc);else for(var e=1;e<d.length;e++){var f=Jm(a,d[e]);if(f>=b&&f<b+c){var g=a.sa;g.Ha[f>>g.Eb].ae(f&g.ob,d==a.Zc)}}}function Hm(a,b){if(void 0!==b)Im(a,b,a.zc,!0),a.tc=0;else for(var c=1;c<a.zc.length;c++){var d=a.zc[c];if(d[3]){if(!Mm(a,a.zc,d,!0))break;c=0}}}
function Im(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==Jm(a,g)){g[3]?Mm(a,c,g,!0):d||a.Z("\nbreakpoint hit: "+Lm(g)+" ("+c[0]+")");e=!0;break}}return e}
function Om(a,b,c,d){var e=[b[0],b[1],b[2]],f=a.yb(b,1),g=a.Uf[f],h=g[0],n=-1;205==h&&(h=a.yb(b,1),g=wm[h]||Z,f|=h<<8,h=g[0]);h>=rm.length&&(n=a.yb(b,1),g=xm[h-rm.length][n>>3&7]);var h=rm[g[0]],m=2,s="";if(164<=f&&167>=f||170<=f&&175>=f)m=0;for(f=1;f<=m;f++){var r="",t=g[f];if(void 0!==t){var w=t&15;if(0!=w&&15!=w){var u=t&240;if(128<=u)if(0>n&&(n=a.yb(b,1)),160<=u)a:{r=n>>3&7;if(176==(t&240)){if(4<=r){r=null;break a}r+=16}else 3<=(t&15)&&(r+=8);r=Y[r]}else{if(128<=u){var r=a,u=t,t=b,C="",w=n>>6,
C=n&7;3>w?(u=void 0,w||6!=C?(C=sm[C],1==w?(u=r.yb(t,1),u&128?(u=u<<24>>24,C+="-"+q(-u)):C+="+"+q(u)):2==w&&(u=r.ra(t,2),C+="+"+v(u))):(u=r.ra(t,2),C=v(u)),C="["+C+"]"):C=Y[C+(1==(u&15)?0:8)];r=C}}else if(16==u)r="1";else if(0==u){r=a;w=t;t=b;u=" ";switch(w&15){case 1:w&12288&&(u=q(r.yb(t,1)));break;case 2:u=v(r.yb(t,1)<<24>>24);break;case 3:case 4:u=v(r.ra(t,2));break;case 6:w=r.ra(t,2);r=r.ra(t,2);u=Lm([w,r,void 0]);break;default:u="imm("+v(w)+")"}r=u}else 32==u?r="["+v(a.ra(b,2))+"]":48==u?(1==
w?(r=a.yb(b,1),r=r<<24>>24):r=a.ra(b,2),r=b[0]+r&65535,r=Pm(a,[r,b[1],void 0])[0]||v(r)):96==u?r=Y[(t&3840)>>8]:112==u?r=Y[((t&3840)>>8)+16]:64==u?r="DS:[SI]":80==u&&(r="ES:[DI]");if(!r||!r.length){s="INVALID";break}0<s.length&&(s+=",");s+=r}}}g=Lm(e)+" ";n="";do n+=q(a.yb(e,1));while(e[0]!=b[0]);g+=(n+" ").substr(0,14);g+=(h+" ").substr(0,8);s&&(g+=" "+s);c&&(g=(g+" ").substr(0,50),g+=";",g=a.T.na.rf?g+("cycles="+D(a.T).toString()+" cs="+p(a.T.da.og)):g+(c+
(null!=d?"="+d.toString():"")));return g}function Qm(a,b){var c;switch(b){case "V":c=Ed(a.T);break;case "D":c=a.T.Ba&1024;break;case "I":c=a.T.Ba&512;break;case "T":c=a.T.Ba&256;break;case "S":c=Dd(a.T);break;case "Z":c=Cd(a.T);break;case "A":c=Bd(a.T);break;case "P":c=Ad(a.T);break;case "C":c=zd(a.T);break;default:c=0}return" "+b+(c?"1":"0")}function Rm(a,b,c){return b.Kg+"="+v(b.ta)+(c?"["+p(b.Ga,a.Le)+","+v(b.oc)+"]":"")}
function Sm(a,b,c,d,e){return b+"="+(null!=c?v(c):"")+"["+p(d,a.Le)+","+v(e-d)+"]"}
function Tm(a,b,c){var d=2==c?a.kk:a.Nc;c=d[0];var e=d[1],d=d[2];if(void 0!==b){"%"==b.charAt(0)&&(b=b.substr(1),c=-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.Cc.length;h++){var f=a.Cc[h][0],n=a.Cc[h][2][g];if(void 0!==n){g=n.o;void 0!==g&&(h=n.s,void 0===h&&(h=f>>>4),d[0]=g,d[1]=h,void 0!==n.p&&(d[2]=n.p));break}}if(d&&d.length)return d;d=b.indexOf(":");0>d?null!=e?(c=zm(a,b),d=null):d=zm(a,b):(e=zm(a,b.substring(0,d)),c=zm(a,b.substring(d+1)),
d=null)}return[c,e,d]}
function xm(a,b,c){var d;if(void 0!==b)switch(b=b.toUpperCase(),b){case "AX":d=a.T.H;break;case "BX":d=a.T.C;break;case "CX":d=a.T.J;break;case "DX":d=a.T.K;break;case "SI":d=a.T.G;break;case "DI":d=a.T.F;break;case "BP":d=a.T.I;break;case "SP":d=a.T.Y;break;case "CS":d=a.T.va.ta;break;case "DS":d=a.T.Cb.ta;break;case "ES":d=a.T.Wa.ta;break;case "SS":d=a.T.Ra.ta;break;case "IP":d=a.T.ua;break;default:d=ea(b),void 0===d&&a.aa("invalid "+(c?c:"value")+": "+b)}else a.aa("missing "+(c||"value"));return d}
function Rj(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 n=d[h];"number"==typeof n&&(d[h]=n={o:n});var l=n.o,s=n.s,r=n.a;void 0!==l&&(void 0!==s&&(f[0]=l,f[1]=s,n.p=Hm(a,f)),pa(g,[l,h],e));r&&(n.a=r.replace(/''/g,'"'))}a.Cc.push([b,c,d,g])}
function Nm(a,b,c){for(var d=[],e=Hm(a,b),f=0;f<a.Cc.length;f++){var g=a.Cc[f][0],h=a.Cc[f][1];if(e>=g&&e<g+h){b=na(a.Cc[f][3],[b[0]],function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0});0<=b?Sm(a,f,b,d):c&&(b=~b,Sm(a,f,b-1,d),Sm(a,f,b,d));break}}return d}function Sm(a,b,c,d){var e={},f=a.Cc[b][3],g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.Cc[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 Tm(a,b){if("?"==b)a.aa("\nfrequency commands:"),a.aa("\tclear\tclear all frequency counts");else{var c,d=0;if(a.$c)if("clear"==b){for(c=0;c<a.$c.length;c++)a.$c[c]=[c,0];a.aa("frequency data cleared");d++}else if(void 0!==b)a.aa("unknown frequency command: "+b),d++;else{var e=a.$c.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.aa((pm[a.Tf[f][0]]+" ").substr(0,5)+" ("+q(f)+"): "+g+" times"),d++)}}d||a.aa("no frequency data available")}}
function Um(a,b){var c=Rm(a,b,1);if(null!=c[0]||null!=c[2]){var d=Hm(a,c);a.aa((b?b+": ":"")+Jm(c)+" (%"+p(d,a.Me)+")");d=Nm(a,c,!0);if(d.length){var e,f;d[0]&&(f="",(e=c[0]-d[1])&&(f=" + "+u(e)),a.aa(d[0]+" ("+fa(d[1],c[1])+")"+f));4<d.length&&d[4]&&(f="",(e=d[5]-c[0])&&(f=" - "+u(e)),a.aa(d[4]+" ("+fa(d[5],c[1])+")"+f))}else a.aa("no symbols")}}
function Vm(a,b){if("l"==b[0]&&void 0===b[1]||"?"==b[1])a.aa("\nlist/load commands:"),a.aa("\tl [address] [drive #] [sector #] [# sectors]"),a.aa("\tln [address] lists symbol(s) nearest to address");else if("ln"==b[0])Um(a,b[1]);else{var c="json"==b[1],d,e=0,f=0,g=c?[]:Rm(a,b[1],2);d=xm(a,b[2],"drive #");if(void 0!==d){if(!c){e=xm(a,b[3],"sector #");if(void 0===e)return;f=xm(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.Xm;2<=d&&a.Sk&&(d-=2,h=a.Sk);if(h){var n=h.Ck(d);if(n)if(n.za)if(c)a.aa(Jl(n.za));
else if(h.sm(n,e,f)){for(var l=0,s=!1,c=Jm(g);!s&&0<n.kb--;)(function(a,b){h.yc(n,function(c){0>c?(a.aa("out of data at address "+Jm(b)),s=!0):(a.Td(b,c,1),l++)})})(a,g);a.aa(l+" bytes read at "+c)}else a.aa("sector "+e+" request out of range");else a.aa("drive "+d+" not loaded");else a.aa("invalid drive: "+d)}else a.aa("disk controller not present")}}}
function Dm(a,b,c){if(b&&"?"==b[1])a.aa("\nregister commands:"),a.aa("\tr\t\tdisplay all registers"),a.aa("\tr [target=#]\tmodify target register"),a.aa("supported targets:"),a.aa("\tall registers and flags V,D,I,S,Z,A,P,C");else{var d;if(null!=b&&1<b.length){var e=b[1];if("p"==e)d=void 0!==a.T.qc;else{c=null;var f=e.indexOf("=");if(0<f)c=e.substr(f+1),e=e.substr(0,f);else if(2<b.length)c=b[2];else{a.aa("missing value for "+b[1]);return}b=parseInt(c,16);if(isNaN(b)){a.aa("invalid value: "+c);return}e=
e.toUpperCase();switch(e){case "AL":a.T.H=a.T.H&65280|b&255;break;case "AH":a.T.H=a.T.H&255|b<<8&255;break;case "AX":a.T.H=b&65535;break;case "BL":a.T.C=a.T.C&65280|b&255;break;case "BH":a.T.C=a.T.C&255|b<<8&255;break;case "BX":a.T.C=b&65535;break;case "CL":a.T.J=a.T.J&65280|b&255;break;case "CH":a.T.J=a.T.J&255|b<<8&255;break;case "CX":a.T.J=b&65535;break;case "DL":a.T.K=a.T.K&65280|b&255;break;case "DH":a.T.K=a.T.K&255|b<<8&255;break;case "DX":a.T.K=b&65535;break;case "SP":a.T.Y=b&65535;break;case "BP":a.T.I=
b&65535;break;case "SI":a.T.G=b&65535;break;case "DI":a.T.F=b&65535;break;case "DS":wd(a.T,b);break;case "ES":yd(a.T,b);break;case "SS":xd(a.T,b);break;case "CS":vd(a.T,b);a.Nc=[a.T.ua,a.T.va.ta,void 0];break;case "IP":H(a.T,b);a.Nc=[a.T.ua,a.T.va.ta,void 0];break;case "PC":case "PS":Ac(a.T,b);break;case "C":b?Ld(a.T):Gd(a.T);break;case "P":b?(e=a.T,Bd(e)||(e.la^=1)):(e=a.T,Bd(e)&&(e.la^=1));break;case "A":b?Md(a.T):Hd(a.T);break;case "Z":b?Nd(a.T):Id(a.T);break;case "S":b?Qd(a.T):Jd(a.T);break;case "I":b?
(e=a.T,e.Ba|=512):(e=a.T,e.Ba&=-513);break;case "D":b?(e=a.T,e.Ba|=1024):(e=a.T,e.Ba&=-1025);break;case "V":b?Rd(a.T):Kd(a.T);break;default:c=!0;if(80286<=a.T.Ka)switch(c=!1,e){case "MS":mf.call(a.T,b);break;case "TR":a.T.Za.load(b);break;default:c=!0}if(c){a.aa("unknown register: "+e);return}}Vb(a.T);a.aa("\nupdated registers:");c=!0}}e=d;void 0===e&&(e=!!(a.T.fc&1));d="AX="+u(a.T.H)+" BX="+u(a.T.C)+" CX="+u(a.T.J)+" DX="+u(a.T.K)+" SP="+u(a.T.Y)+" BP="+u(a.T.I)+" SI="+u(a.T.G)+" DI="+u(a.T.F)+"\n";
d+=Pm(a,a.T.Cb,e)+" "+Pm(a,a.T.Wa,e)+" "+Pm(a,a.T.Ra,e);d=d+(e?"\n":" ")+(Pm(a,a.T.va,e)+" IP="+u(a.T.ua)+Om(a,"V")+Om(a,"D")+Om(a,"I")+Om(a,"T")+Om(a,"S")+Om(a,"Z")+Om(a,"A")+Om(a,"P")+Om(a,"C")+" PS="+u(zc(a.T)));e&&(e=a.sa,d+=" MS="+u(a.T.fc)+"\n"+Qm(a,"LD",a.T.Xc.ta,a.T.Xc.Da,a.T.Xc.Da+a.T.Xc.nc)+" "+Qm(a,"GD",null,a.T.qc,a.T.de)+" "+Qm(a,"ID",null,a.T.Pc,a.T.Ce)+" TR="+u(a.T.Za.ta)+" A20="+(e.Vf==e.ld?"ON":"OFF"));a.aa((c?"":"\n")+d);a.Nc=[a.T.ua,a.T.va.ta,void 0];Em(a,Jm(a.Nc))}}
function Wm(a,b,c){var d="tr"==b;b=null!=c?parseInt(c,10):1;var e=1==b?0:1;Da(b,function(){return db(a,!0)&&a.Mf(e,d,!1)},function(){Vb(a.T);db(a,!1)})}
function Em(a,b,c,d){b=Rm(a,b,1);if(null!=b[0]){void 0===d&&(d=1);var e=[65535,b[1],a.sa.Vf];if(void 0!==c){e=Rm(a,c,1);if(null==e[0]||e[0]<b[0])return;if(256<e[0]-b[0]){a.aa("range too large");return}e[0]++;d=-1}for(c=b[0]!=a.Nc[0];d&&(null!=b[1]?b[0]<e[0]:b[2]<e[2]);){d--;var f=a.wb(b),g=eb(a,!1)||a.tc?a.hd: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=Nm(a,b);if(h[0]){var n=h[0]+":";c=!1;h[2]&&(n+=" "+h[2]);a.aa(n)}c&&a.aa();h[3]&&(f=h[3],
g=null);c=Mm(a,b,f,g);a.aa(c);a.Nc=b;c=!1}d&&a.aa("end of memory")}}function Bm(a,b,c){if(c)if(b){0>a.Tc&&a.Oc.length&&(a.Tc=0);if(0>a.Tc||b!=a.Oc[a.Tc])a.Oc.splice(0,0,b),a.Tc=0;a.Tc--}else b=a.Oc[a.Tc+1];a=b?b.split(0<=b.indexOf("|")?"|":";"):[""];for(var d in a)a[d]=ma(a[d]);return a}
function mm(a,b){var c=!0;try{if(b.length||(a.qf?(a.aa("ended assemble @"+Jm(a.ze)),a.Nc=a.ze,a.qf=!1):b="?"),b=b.toLowerCase(),fb(a)&&0<b.length){if(a.qf)b="a "+Jm(a.ze)+" "+b;else{var d,e,f;switch(b){case "reset":return a.Ma&&a.Ma.reset(),!0;case "ver":return a.aa("PCjs version 1.16.1 (release,noprefetch,eatests,dwordarrays)"),!0;default:for(e=b.charAt(0),f=1;f<b.length;f++){d=b.charAt(f);if(" "==d)break;if("r"==e||"a">d||"z"<d){b=b.substring(0,f)+" "+b.substring(f);break}}}}var g=b.split(" ");
switch(g[0].charAt(0)){case "a":var h=Rm(a,g[1],1);if(null!=h[0])if(a.ze=h,void 0===g[2])a.aa("begin assemble @"+Jm(h)),a.qf=!0,Vb(a.T);else{var n;a.aa("not supported yet");n=[];if(n.length){for(var l=0;l<n.length;l++)a.Td(h,n[l],1);a.aa(Mm(a,a.ze))}}break;case "b":a:{var s=g[1],r=g[0].charAt(1);if(r&&"?"!=r)if("l"==r)l=0,l+=Lm(a,a.zc),l+=Lm(a,a.Yd),(l+=Lm(a,a.Zc))||a.aa("no breakpoints");else if(void 0===s)a.aa("missing breakpoint address");else{l=[];if("*"!=s&&(l=Rm(a,s,1),null==l[0]))break a;s=
null==l[0]?s:u(l[0]);"c"==r?null==l[0]?(jm(a),a.aa("all breakpoints cleared")):Km(a,a.zc,l,!0)||Km(a,a.Yd,l,!0)||Km(a,a.Zc,l,!0)||a.aa("breakpoint missing: "+Jm(l)):"i"==r?a.aa("breakpoint "+(wb(a.sa,l[0])?"enabled":"cleared")+": port "+s+" (input)"):"o"==r?a.aa("breakpoint "+(Ab(a.sa,l[0])?"enabled":"cleared")+": port "+s+" (output)"):null!=l[0]&&("p"==r?a.be(a.zc,l):"r"==r?a.be(a.Yd,l):"w"==r?a.be(a.Zc,l):a.aa("unknown breakpoint command: "+r))}else a.aa("\nbreakpoint commands:"),a.aa("\tbi [p]\ttoggle break on input port [p]"),
a.aa("\tbo [p]\ttoggle break on output port [p]"),a.aa("\tbp [a]\tset exec breakpoint at addr [a]"),a.aa("\tbr [a]\tset read breakpoint at addr [a]"),a.aa("\tbw [a]\tset write breakpoint at addr [a]"),a.aa("\tbc [a]\tclear breakpoint at addr [a]"),a.aa("\tbl\tlist all breakpoints")}break;case "c":a.fg&&(a.fg.value="");break;case "d":a:{var t=g[0],l=g[1],w=g[2],v;if("?"==l){l="";for(v in rm)a.li[v]&&(l&&(l+=","),l+=v);l+=",state,symbols";a.aa("\ndump commands:");a.aa("\tdb [a] [#] dump # bytes at address a");
a.aa("\tdw [a] [#] dump # words at address a");l.length&&a.aa("dump extensions:\n\t"+l)}else if("state"==l)a.aa(Xm(a.Ma,!0));else if("symbols"==l)for(l=0;l<a.Cc.length;l++){var C=a.Cc[l][0],R=a.Cc[l][2],O;for(O in R)if("."!=O.charAt(0)){var Aa=R[O],Ga=Aa.o;if(void 0!==Ga){var ab=Aa.s;void 0===ab&&(ab=C>>>4);var Ub=R[O].l;Ub&&(O=Ub);a.aa(fa(Ga,ab)+" "+O)}}}else{for(v in rm)if(l==v){var Gc=a.li[v];Gc?Gc(w):a.aa("no dump registered for "+l);break a}var E=Rm(a,l,2);if(null!=E[0]){var S=0,K="dw"==t;
void 0!==w&&("l"==w.charAt(0)&&(w=w.substr(1)),(S=parseInt(w,10))&&(S=K?S+7>>3:S+15>>4));var oa="";S||(S=8);for(g=0;g<S;g++){for(var Ba=w="",l=Jm(E),ja=0,ba=0;16>ba;ba++){var X=a.wb(E,1);K?ba&1&&(w+=u(ja|X<<8)+(7==ba?" - ":" ")):w+=q(X)+(7==ba?"-":" ");Ba+=32<=X&&128>X?String.fromCharCode(X):".";ja=X}oa&&(oa+="\n");oa+=l+" "+w+" "+Ba}oa&&a.aa(oa);a.mk=E}}}break;case "e":var Hc=g[1];if(void 0===Hc)a.aa("missing address");else{var mc=Rm(a,Hc,2);if(null!=mc[0])for(l=2;l<g.length;l++){var Ic=parseInt(g[l],
16);a.aa("setting "+Jm(mc)+" to "+q(Ic));a.Td(mc,Ic,1)}}break;case "f":Tm(a,g[1]);break;case "g":a:{var Ek=g[1];if(void 0!==Ek){var Fk=Rm(a,Ek,1);if(null==Fk[0])break a;a.be(a.zc,Fk,!0)}a.$e(!0)||a.aa('cpu not available, "g" command ignored')}break;case "h":Ba=g[1];if(a.na.Fb&&void 0===Ba)a.aa("halting"),a.T.Jb();else{l="";E=10;ja=a.xf;ba=a.ae;if(ba.length){var Ta=void 0===Ba?a.fm:parseInt(Ba,10);isNaN(Ta)?Ta=E:l="more ";Ta>ba.length&&(a.aa("note: only "+ba.length+" available"),Ta=ba.length);ja-=
Ta;0>ja&&(null!=ba[ba.length-1][1]?ja+=ba.length:(Ta=ja+Ta,ja=0));for(void 0!==Ba&&a.aa(Ta+" instructions earlier:");E&&ja!=a.xf;){var oc=ba[ja];if(null==oc[1])break;oc=[oc[0],oc[1],oc[2]];a.aa(Mm(a,oc,"history",-Ta));++ja==ba.length&&(ja=0);a.fm=--Ta;E--}}10==E&&(a.aa("no "+l+"history available"),a.fm=void 0)}break;case "i":var ef=g[1];if(ef&&"?"!=ef){var ff=xm(a,ef);if(void 0!==ff){var nn=yb(a.sa,ff);a.aa(u(ff)+": "+q(nn))}}else a.aa("\ninput commands:"),a.aa("\ti [p]\tread port [p]"),a.aa("warning: port accesses can affect hardware state");
break;case "l":Vm(a,g);break;case "m":a:{l=null;K=g[1];"?"==K&&(K=void 0);if(void 0!==K){E=0;if("all"==K)E=4294967295&~(qf|268435456),K=null;else if("on"==K)l=!0,K=null;else if("off"==K)l=!1,K=null;else{for(S in rm)if(K==S){E=rm[S];l=!!(a.Yb&E);break}if(!E){a.aa("unknown message category: "+K);break a}}E&&("on"==g[2]?(a.Yb|=E,l=!0):"off"==g[2]&&(a.Yb&=~E,l=!1))}E=0;X="";for(S in rm)if(!K||K==S)if(oa=!!(a.Yb&rm[S]),null===l||l==oa)X&&(X+=","),++E%10||(X+="\n\t"),X+=S;void 0===K&&a.aa("\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off");
a.aa((null!==l?l?"messages on: ":"messages off: ":"message categories:\n\t")+(X||"none"))}break;case "o":var gf=g[1],on=g[2];if(gf&&"?"!=gf){var Gk=xm(a,gf,"port #"),Hk=xm(a,on);void 0!==Gk&&void 0!==Hk&&Cb(a.sa,Gk,Hk)}else a.aa("\noutput commands:"),a.aa("\to [p] [d]\twrite data [d] to port [p]"),a.aa("warning: port accesses can affect hardware state");break;case "p":case "pr":var Ik="pr"==g[0]?1:0,l=1+Ik;if(a.tc)a.aa("step in progress");else{var Od,E=!1,Ua=[a.T.ua,a.T.va.ta,void 0];do switch(Od=
!1,a.wb(Ua)){case 38:case 46:case 54:case 62:case 240:Im(Ua,1);Od=!0;break;case 204:case 206:a.tc=l;Im(Ua,1);break;case 205:case 224:case 225:case 226:a.tc=l;Im(Ua,2);break;case 232:a.tc=l;Im(Ua,3);break;case 154:a.tc=l;Im(Ua,5);break;case 255:a.tc=0<=Mm(a,Ua).indexOf("CALL")?l:0;break;case 243:case 242:Im(Ua,1);E=Od=!0;break;case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:E&&(a.tc=l,Im(Ua,1))}while(Od);a.tc?(a.be(a.zc,Ua,!0),a.$e()||(a.T.Yc(),a.tc=0)):Wm(a,
Ik?"tr":"t")}break;case "r":Dm(a,g);break;case "t":case "tr":Wm(a,g[0],g[1]);break;case "u":Em(a,g[1],g[2],8);break;case "x":a:if(void 0===g[1]||"?"==g[1])a.aa("\nexecution options:"),a.aa("\tcs int #\tset checksum cycle interval to #"),a.aa("\tcs start #\tset checksum cycle start count to #"),a.aa("\tcs stop #\tset checksum cycle stop count to #"),a.aa("\tsp #\t\tset speed multiplier to #");else switch(g[1]){case "cs":var Nc;void 0!==g[3]&&(Nc=parseInt(g[3],10));switch(g[2]){case "int":a.T.da.Bf=
Nc;break;case "start":a.T.da.qg=Nc;break;case "stop":a.T.da.Df=Nc;break;default:a.aa("unknown cs option");break a}void 0!==Nc&&Rb(a.T);a.aa("checksums "+(a.T.na.rf?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&Yb(a.T,parseInt(g[2],10));a.aa("target speed: "+(a.T.da.Ue.toFixed(2)+"Mhz")+" ("+a.T.da.Pd+"x)");break;default:a.aa("unknown option: "+g[1])}break;case "?":var l="commands:",Pd;for(Pd in om)l+="\n"+Pd+" ".substr(0,7-Pd.length)+om[Pd];Sd(a)||(l+="\nnote: frequency/history disabled if no exec breakpoints");
a.aa(l);break;default:a.aa("unknown command: "+b),c=!1}}}catch(pn){a.aa("debugger sad: "+pn.message),c=!1}return c}Ka(function(){for(var a=A(window.document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new im(d);bb(d,c)}});function td(a,b,c){this.id=a.id;this.key=Ym(a,b,c);this.ka=a.ka;Zm(this,a.np)}function Ym(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}
td.prototype={set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.Ki=!0):this.Ki?!0:xa()&&(a=ya(this.key))?(this[this.id]=a,this.Ki=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){x(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){Zm(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c,1);c=0}},wa:function(a){return this.ka?this.ka.wa(null==a?8388608:a|8388608):!1},jb:function(a){this.ka&&this.ka.message(a)}};function Zm(a,b){a[a.id]={};b&&a.set("parms",b);a.Ki=!1}
function $m(a){var b=!0;if(xa()){var c=JSON.stringify(a[a.id]);za(a.key,c)||(x("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
function an(a,b,c){y.call(this,"Computer",a,an,33554432);this.na.Ub=!1;this.Af=a.buswidth;this.Vc=bn;this.Ng=null;this.Bh=!1;this.url=b?b.url:null;this.xp=(Math.random()+0.1).toString(36).substr(2,12);this.Wc=cn(this);if(this.T=$a("CPU",this.id)){this.ka=$a("Debugger",this.id);this.sa=new kb({id:this.Vk+".bus",buswidth:this.Af},this.T,this.ka);var d,e=Ya(this.id);if((this.Ig=$a("Panel",this.id))&&this.Ig.fg)for(b=0;b<e.length;b++)d=e[b],d.Ia=this.Ig.Ia,d.aa=this.Ig.aa,d.fg=this.Ig.fg;for(b=0;b<e.length;b++)d=
e[b],d.vc&&d.vc(this,this.sa,this.T,this.ka);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Zh=d:this.Vc=parseInt(d,10));var f;if(a=Qa&&Qa.state||(f=!0,a.state))b=this.rm=a,f||(this.Bh=!0,this.Vc=bn),this.Vc&&(this.bi=new td(this,"1.16.1"),this.bi.load()?b=null:delete this.bi);!b&&this.Vc&&(f=null,this.Wc&&(f=ua()+"/api/v1/user?req=load&user="+this.Wc+"&state="+Ym(this,"1.16.1")),b=f)&&(this.Bh=!0);b?ta(b,!0,null,this,this.ro):this.Xa();c||dn(this,this.Sh)}else x("Unable to find CPU component")}
Xa(y,an);var bn=0;k=an.prototype;k.vf=function(){return this.xp};k.oe=function(){return this.Wc?this.Wc:""};k.ro=function(a,b,c){c?(this.Zh=null,this.Bh=!1,this.Ia("Unable to load machine state from server (error "+c+(b?": "+ma(b):"")+")")):this.Ng=b;this.Xa()};function dn(a,b,c){for(var d=Ya(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!fb(f)){fb(f,function(){dn(a,b,c)});return}}b.call(a,c)}
function en(a,b){var c=new td(a,"1.16.1","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ia("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.Sh=function(a){void 0===a&&(a=this.Vc||(this.Ng?1:bn));var b=!1,c=!1;this.Ok=!1;var d=this.bi||new td(this,"1.16.1");if(-1==a)b=!0;else if(a>bn){if(d.load(this.Ng)){this.df=new td(this,"1.16.1","failsafe");this.df.load()&&(fn(this,d),a=2,Zm(this.df));this.df.set("timestamp",ra());$m(this.df);var e=this.Vc&&!this.Bh;if(1==a||va("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
f&&"no machine state"!=g?(this.Ia("Error: "+g),"unable to verify user"==g&&(za("user",""),this.Wc=null)):this.aa(f+": "+g),Zm(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&en(this,c?d:null)}else 2==a&&d.clear()}else en(this);delete this.Ng;delete this.bi}e=Ya(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.T&&(c=gn(this,g,d,b,c));b=[d,a,c];-1!=a?dn(this,this.Gk,b):this.Gk(b)};
function gn(a,b,c,d,e){if(!b.na.Ub){b.na.Ub=!0;if(b.ec){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.ec(f,d)&&f&&(x("Unable to restore state for "+b.type),a.rm&&!a.Ng?(c.clear(),a.Vc=bn,window&&window.location.reload()):a.Ok=!0,b.ec(null),e=!1)}if(!d&&b.Bk)for(a=b.Bk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.Gk=function(a){var b=a[0],c=0>a[1];a=a[2];this.na.Ub=!0;this.Lk||(this.aa("PCjs v1.16.1\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Lk=!0);this.T&&gn(this,this.T,b,c,a);this.Ok&&(fn(this,b),b.clear());!c&&this.df&&(this.df.clear(),delete this.df)};
function fn(a,b){if(va("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.oe(),d=b.toString(),e={app:"PCjs",ver:"1.16.1"};e.url=a.url;e.user=c;e.type="bug";e.data=d;ta("http://www.pcjs.org/api/v1/report",!0,e)}}
function Xm(a,b,c){var d,e="none",f=new td(a,"1.16.1"),g=new td(a,"1.16.1","validate"),h=ra();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.16.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.T&&a.T.dc&&(c&&a.T.Jb(),d=a.T.dc(b,c),"object"===typeof d&&f.set(a.T.id,d),c&&(a.T.na.Ub=!1,!1===d&&(e=null)));for(var h=Ya(a.id),n=0;n<h.length;n++){var l=h[n];l.na.Ub&&(l.dc&&(d=l.dc(b,c),"object"===typeof d&&f.set(l.id,d)),c&&(l.na.Ub=
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.Wc&&hn(a,a.Wc,f.toString()),$m(g)&&$m(f)||(e=null,d=h=!0)):a.Vc&&(d=!0,h=3==a.Vc),d&&f.clear(h)):e=f.toString());c&&(a.na.Ub=!1);return e}k.reset=function(){this.sa&&this.sa.reset&&(this.jb("Resetting "+this.sa.type),this.sa.reset());for(var a=Ya(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.sa&&c.reset&&(this.jb("Resetting "+c.type),c.reset())}};
function zm(a,b,c){var d;if(void 0!==b)switch(b=b.toUpperCase(),b){case "AX":d=a.T.H;break;case "BX":d=a.T.C;break;case "CX":d=a.T.J;break;case "DX":d=a.T.K;break;case "SI":d=a.T.G;break;case "DI":d=a.T.F;break;case "BP":d=a.T.I;break;case "SP":d=a.T.Y;break;case "CS":d=a.T.ua.ta;break;case "DS":d=a.T.eb.ta;break;case "ES":d=a.T.La.ta;break;case "SS":d=a.T.Ya.ta;break;case "IP":d=a.T.wa;break;default:d=ea(b),void 0===d&&a.Z("invalid "+(c?c:"value")+": "+b)}else a.Z("missing "+(c||"value"));return d}
function Sj(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 n=d[h];"number"==typeof n&&(d[h]=n={o:n});var m=n.o,s=n.s,r=n.a;void 0!==m&&(void 0!==s&&(f[0]=m,f[1]=s,n.p=Jm(a,f)),pa(g,[m,h],e));r&&(n.a=r.replace(/''/g,'"'))}a.Cc.push([b,c,d,g])}
function Pm(a,b,c){for(var d=[],e=Jm(a,b),f=0;f<a.Cc.length;f++){var g=a.Cc[f][0],h=a.Cc[f][1];if(e>=g&&e<g+h){b=oa(a.Cc[f][3],[b[0]],function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0});0<=b?Um(a,f,b,d):c&&(b=~b,Um(a,f,b-1,d),Um(a,f,b,d));break}}return d}function Um(a,b,c,d){var e={},f=a.Cc[b][3],g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.Cc[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 Vm(a,b){if("?"==b)a.Z("\nfrequency commands:"),a.Z("\tclear\tclear all frequency counts");else{var c,d=0;if(a.$c)if("clear"==b){for(c=0;c<a.$c.length;c++)a.$c[c]=[c,0];a.Z("frequency data cleared");d++}else if(void 0!==b)a.Z("unknown frequency command: "+b),d++;else{var e=a.$c.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.Z((rm[a.Uf[f][0]]+" ").substr(0,5)+" ("+q(f)+"): "+g+" times"),d++)}}d||a.Z("no frequency data available")}}
function Wm(a,b){var c=Tm(a,b,1);if(null!=c[0]||null!=c[2]){var d=Jm(a,c);a.Z((b?b+": ":"")+Lm(c)+" (%"+p(d,a.Le)+")");d=Pm(a,c,!0);if(d.length){var e,f;d[0]&&(f="",(e=c[0]-d[1])&&(f=" + "+v(e)),a.Z(d[0]+" ("+fa(d[1],c[1])+")"+f));4<d.length&&d[4]&&(f="",(e=d[5]-c[0])&&(f=" - "+v(e)),a.Z(d[4]+" ("+fa(d[5],c[1])+")"+f))}else a.Z("no symbols")}}
function Xm(a,b){if("l"==b[0]&&void 0===b[1]||"?"==b[1])a.Z("\nlist/load commands:"),a.Z("\tl [address] [drive #] [sector #] [# sectors]"),a.Z("\tln [address] lists symbol(s) nearest to address");else if("ln"==b[0])Wm(a,b[1]);else{var c="json"==b[1],d,e=0,f=0,g=c?[]:Tm(a,b[1],2);d=zm(a,b[2],"drive #");if(void 0!==d){if(!c){e=zm(a,b[3],"sector #");if(void 0===e)return;f=zm(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.Um;2<=d&&a.Pk&&(d-=2,h=a.Pk);if(h){var n=h.Ak(d);if(n)if(n.za)if(c)a.Z(n.za.toJSON());
else if(h.pm(n,e,f)){for(var m=0,s=!1,c=Lm(g);!s&&0<n.kb--;)(function(a,b){h.yc(n,function(c){0>c?(a.Z("out of data at address "+Lm(b)),s=!0):(a.Sd(b,c,1),m++)})})(a,g);a.Z(m+" bytes read at "+c)}else a.Z("sector "+e+" request out of range");else a.Z("drive "+d+" not loaded");else a.Z("invalid drive: "+d)}else a.Z("disk controller not present")}}}
function Fm(a,b,c){if(b&&"?"==b[1])a.Z("\nregister commands:"),a.Z("\tr\t\tdisplay all registers"),a.Z("\tr [target=#]\tmodify target register"),a.Z("supported targets:"),a.Z("\tall registers and flags V,D,I,S,Z,A,P,C");else{var d;if(null!=b&&1<b.length){var e=b[1];if("p"==e)d=void 0!==a.T.Ec;else{c=null;var f=e.indexOf("=");if(0<f)c=e.substr(f+1),e=e.substr(0,f);else if(2<b.length)c=b[2];else{a.Z("missing value for "+b[1]);return}b=parseInt(c,16);if(isNaN(b)){a.Z("invalid value: "+c);return}e=e.toUpperCase();
switch(e){case "AL":a.T.H=a.T.H&65280|b&255;break;case "AH":a.T.H=a.T.H&255|b<<8&255;break;case "AX":a.T.H=b&65535;break;case "BL":a.T.C=a.T.C&65280|b&255;break;case "BH":a.T.C=a.T.C&255|b<<8&255;break;case "BX":a.T.C=b&65535;break;case "CL":a.T.J=a.T.J&65280|b&255;break;case "CH":a.T.J=a.T.J&255|b<<8&255;break;case "CX":a.T.J=b&65535;break;case "DL":a.T.K=a.T.K&65280|b&255;break;case "DH":a.T.K=a.T.K&255|b<<8&255;break;case "DX":a.T.K=b&65535;break;case "SP":a.T.Y=b&65535;break;case "BP":a.T.I=b&
65535;break;case "SI":a.T.G=b&65535;break;case "DI":a.T.F=b&65535;break;case "DS":vd(a.T,b);break;case "ES":xd(a.T,b);break;case "SS":wd(a.T,b);break;case "CS":ud(a.T,b);a.Nc=[a.T.wa,a.T.ua.ta,void 0];break;case "IP":H(a.T,b);a.Nc=[a.T.wa,a.T.ua.ta,void 0];break;case "PC":case "PS":Ac(a.T,b);break;case "C":b?Kd(a.T):Fd(a.T);break;case "P":b?(e=a.T,Ad(e)||(e.la^=1)):(e=a.T,Ad(e)&&(e.la^=1));break;case "A":b?Ld(a.T):Gd(a.T);break;case "Z":b?Md(a.T):Hd(a.T);break;case "S":b?Nd(a.T):Id(a.T);break;case "I":b?
(e=a.T,e.Ba|=512):(e=a.T,e.Ba&=-513);break;case "D":b?(e=a.T,e.Ba|=1024):(e=a.T,e.Ba&=-1025);break;case "V":b?Od(a.T):Jd(a.T);break;default:c=!0;if(80286<=a.T.Ka)switch(c=!1,e){case "MS":lf.call(a.T,b);break;case "TR":a.T.fb.load(b);break;default:c=!0}if(c){a.Z("unknown register: "+e);return}}Vb(a.T);a.Z("\nupdated registers:");c=!0}}e=d;void 0===e&&(e=!!(a.T.fc&1));d="AX="+v(a.T.H)+" BX="+v(a.T.C)+" CX="+v(a.T.J)+" DX="+v(a.T.K)+" SP="+v(a.T.Y)+" BP="+v(a.T.I)+" SI="+v(a.T.G)+" DI="+v(a.T.F)+"\n";
d+=Rm(a,a.T.eb,e)+" "+Rm(a,a.T.La,e)+" "+Rm(a,a.T.Ya,e);d=d+(e?"\n":" ")+(Rm(a,a.T.ua,e)+" IP="+v(a.T.wa)+Qm(a,"V")+Qm(a,"D")+Qm(a,"I")+Qm(a,"T")+Qm(a,"S")+Qm(a,"Z")+Qm(a,"A")+Qm(a,"P")+Qm(a,"C")+" PS="+v(zc(a.T)));e&&(e=a.sa,d+=" MS="+v(a.T.fc)+"\n"+Sm(a,"LD",a.T.Xc.ta,a.T.Xc.Ga,a.T.Xc.Ga+a.T.Xc.oc)+" "+Sm(a,"GD",null,a.T.Ec,a.T.Be)+" "+Sm(a,"ID",null,a.T.Qc,a.T.Ce)+" TR="+v(a.T.fb.ta)+" A20="+(e.Wf==e.ld?"ON":"OFF"));a.Z((c?"":"\n")+d);a.Nc=[a.T.wa,a.T.ua.ta,void 0];Gm(a,Lm(a.Nc))}}
function Ym(a,b,c){var d="tr"==b;b=null!=c?parseInt(c,10):1;var e=1==b?0:1;Da(b,function(){return db(a,!0)&&a.Nf(e,d,!1)},function(){Vb(a.T);db(a,!1)})}
function Gm(a,b,c,d){b=Tm(a,b,1);if(null!=b[0]){void 0===d&&(d=1);var e=[65535,b[1],a.sa.Wf];if(void 0!==c){e=Tm(a,c,1);if(null==e[0]||e[0]<b[0])return;if(256<e[0]-b[0]){a.Z("range too large");return}e[0]++;d=-1}for(c=b[0]!=a.Nc[0];d&&(null!=b[1]?b[0]<e[0]:b[2]<e[2]);){d--;var f=a.yb(b),g=eb(a,!1)||a.tc?a.hd: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=Pm(a,b);if(h[0]){var n=h[0]+":";c=!1;h[2]&&(n+=" "+h[2]);a.Z(n)}c&&a.Z();h[3]&&(f=h[3],g=
null);c=Om(a,b,f,g);a.Z(c);a.Nc=b;c=!1}d&&a.Z("end of memory")}}function Dm(a,b,c){if(c)if(b){0>a.Tc&&a.Oc.length&&(a.Tc=0);if(0>a.Tc||b!=a.Oc[a.Tc])a.Oc.splice(0,0,b),a.Tc=0;a.Tc--}else b=a.Oc[a.Tc+1];a=b?b.split(0<=b.indexOf("|")?"|":";"):[""];for(var d in a)a[d]=ma(a[d]);return a}
function om(a,b){var c=!0;try{if(b.length||(a.qf?(a.Z("ended assemble @"+Lm(a.ye)),a.Nc=a.ye,a.qf=!1):b="?"),b=b.toLowerCase(),fb(a)&&0<b.length){if(a.qf)b="a "+Lm(a.ye)+" "+b;else{var d,e,f;switch(b){case "reset":return a.Ma&&a.Ma.reset(),!0;case "ver":return a.Z("PCjs version 1.16.1 (release,noprefetch,eatests,dwordarrays)"),!0;default:for(e=b.charAt(0),f=1;f<b.length;f++){d=b.charAt(f);if(" "==d)break;if("r"==e||"a">d||"z"<d){b=b.substring(0,f)+" "+b.substring(f);break}}}}var g=b.split(" ");switch(g[0].charAt(0)){case "a":var h=
Tm(a,g[1],1);if(null!=h[0])if(a.ye=h,void 0===g[2])a.Z("begin assemble @"+Lm(h)),a.qf=!0,Vb(a.T);else{var n;a.Z("not supported yet");n=[];if(n.length){for(var m=0;m<n.length;m++)a.Sd(h,n[m],1);a.Z(Om(a,a.ye))}}break;case "b":a:{var s=g[1],r=g[0].charAt(1);if(r&&"?"!=r)if("l"==r)m=0,m+=Nm(a,a.zc),m+=Nm(a,a.Xd),(m+=Nm(a,a.Zc))||a.Z("no breakpoints");else if(void 0===s)a.Z("missing breakpoint address");else{m=[];if("*"!=s&&(m=Tm(a,s,1),null==m[0]))break a;s=null==m[0]?s:v(m[0]);"c"==r?null==m[0]?(lm(a),
a.Z("all breakpoints cleared")):Mm(a,a.zc,m,!0)||Mm(a,a.Xd,m,!0)||Mm(a,a.Zc,m,!0)||a.Z("breakpoint missing: "+Lm(m)):"i"==r?a.Z("breakpoint "+(wb(a.sa,m[0])?"enabled":"cleared")+": port "+s+" (input)"):"o"==r?a.Z("breakpoint "+(Ab(a.sa,m[0])?"enabled":"cleared")+": port "+s+" (output)"):null!=m[0]&&("p"==r?a.ae(a.zc,m):"r"==r?a.ae(a.Xd,m):"w"==r?a.ae(a.Zc,m):a.Z("unknown breakpoint command: "+r))}else a.Z("\nbreakpoint commands:"),a.Z("\tbi [p]\ttoggle break on input port [p]"),a.Z("\tbo [p]\ttoggle break on output port [p]"),
a.Z("\tbp [a]\tset exec breakpoint at addr [a]"),a.Z("\tbr [a]\tset read breakpoint at addr [a]"),a.Z("\tbw [a]\tset write breakpoint at addr [a]"),a.Z("\tbc [a]\tclear breakpoint at addr [a]"),a.Z("\tbl\tlist all breakpoints")}break;case "c":a.fg&&(a.fg.value="");break;case "d":a:{var t=g[0],m=g[1],w=g[2],u;if("?"==m){m="";for(u in tm)a.ki[u]&&(m&&(m+=","),m+=u);m+=",state,symbols";a.Z("\ndump commands:");a.Z("\tdb [a] [#] dump # bytes at address a");a.Z("\tdw [a] [#] dump # words at address a");
m.length&&a.Z("dump extensions:\n\t"+m)}else if("state"==m)a.Z(Zm(a.Ma,!0));else if("symbols"==m)for(m=0;m<a.Cc.length;m++){var C=a.Cc[m][0],R=a.Cc[m][2],O;for(O in R)if("."!=O.charAt(0)){var ya=R[O],Fa=ya.o;if(void 0!==Fa){var Za=ya.s;void 0===Za&&(Za=C>>>4);var Tb=R[O].l;Tb&&(O=Tb);a.Z(fa(Fa,Za)+" "+O)}}}else{for(u in tm)if(m==u){var Hc=a.ki[u];Hc?Hc(w):a.Z("no dump registered for "+m);break a}var E=Tm(a,m,2);if(null!=E[0]){var S=0,K="dw"==t;void 0!==w&&("l"==w.charAt(0)&&(w=w.substr(1)),(S=parseInt(w,
10))&&(S=K?S+7>>3:S+15>>4));var na="";S||(S=8);for(g=0;g<S;g++){for(var za=w="",m=Lm(E),ia=0,aa=0;16>aa;aa++){var X=a.yb(E,1);K?aa&1&&(w+=v(ia|X<<8)+(7==aa?" - ":" ")):w+=q(X)+(7==aa?"-":" ");za+=32<=X&&128>X?String.fromCharCode(X):".";ia=X}na&&(na+="\n");na+=m+" "+w+" "+za}na&&a.Z(na);a.kk=E}}}break;case "e":var Ic=g[1];if(void 0===Ic)a.Z("missing address");else{var mc=Tm(a,Ic,2);if(null!=mc[0])for(m=2;m<g.length;m++){var Jc=parseInt(g[m],16);a.Z("setting "+Lm(mc)+" to "+q(Jc));a.Sd(mc,Jc,1)}}break;
case "f":Vm(a,g[1]);break;case "g":a:{var Fk=g[1];if(void 0!==Fk){var Gk=Tm(a,Fk,1);if(null==Gk[0])break a;a.ae(a.zc,Gk,!0)}a.Ze(!0)||a.Z('cpu not available, "g" command ignored')}break;case "h":za=g[1];if(a.na.Fb&&void 0===za)a.Z("halting"),a.T.Jb();else{m="";E=10;ia=a.xf;aa=a.$d;if(aa.length){var Sa=void 0===za?a.cm:parseInt(za,10);isNaN(Sa)?Sa=E:m="more ";Sa>aa.length&&(a.Z("note: only "+aa.length+" available"),Sa=aa.length);ia-=Sa;0>ia&&(null!=aa[aa.length-1][1]?ia+=aa.length:(Sa=ia+Sa,ia=0));
for(void 0!==za&&a.Z(Sa+" instructions earlier:");E&&ia!=a.xf;){var pc=aa[ia];if(null==pc[1])break;pc=[pc[0],pc[1],pc[2]];a.Z(Om(a,pc,"history",-Sa));++ia==aa.length&&(ia=0);a.cm=--Sa;E--}}10==E&&(a.Z("no "+m+"history available"),a.cm=void 0)}break;case "i":var ef=g[1];if(ef&&"?"!=ef){var ff=zm(a,ef);if(void 0!==ff){var pn=yb(a.sa,ff);a.Z(v(ff)+": "+q(pn))}}else a.Z("\ninput commands:"),a.Z("\ti [p]\tread port [p]"),a.Z("warning: port accesses can affect hardware state");break;case "l":Xm(a,g);break;
case "m":a:{m=null;K=g[1];"?"==K&&(K=void 0);if(void 0!==K){E=0;if("all"==K)E=4294967295&~(qf|268435456),K=null;else if("on"==K)m=!0,K=null;else if("off"==K)m=!1,K=null;else{for(S in tm)if(K==S){E=tm[S];m=!!(a.Yb&E);break}if(!E){a.Z("unknown message category: "+K);break a}}E&&("on"==g[2]?(a.Yb|=E,m=!0):"off"==g[2]&&(a.Yb&=~E,m=!1))}E=0;X="";for(S in tm)if(!K||K==S)if(na=!!(a.Yb&tm[S]),null===m||m==na)X&&(X+=","),++E%10||(X+="\n\t"),X+=S;void 0===K&&a.Z("\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off");
a.Z((null!==m?m?"messages on: ":"messages off: ":"message categories:\n\t")+(X||"none"))}break;case "o":var gf=g[1],qn=g[2];if(gf&&"?"!=gf){var Hk=zm(a,gf,"port #"),Ik=zm(a,qn);void 0!==Hk&&void 0!==Ik&&Cb(a.sa,Hk,Ik)}else a.Z("\noutput commands:"),a.Z("\to [p] [d]\twrite data [d] to port [p]"),a.Z("warning: port accesses can affect hardware state");break;case "p":case "pr":var Jk="pr"==g[0]?1:0,m=1+Jk;if(a.tc)a.Z("step in progress");else{var Qd,E=!1,Ta=[a.T.wa,a.T.ua.ta,void 0];do switch(Qd=!1,
a.yb(Ta)){case 38:case 46:case 54:case 62:case 240:Km(Ta,1);Qd=!0;break;case 204:case 206:a.tc=m;Km(Ta,1);break;case 205:case 224:case 225:case 226:a.tc=m;Km(Ta,2);break;case 232:a.tc=m;Km(Ta,3);break;case 154:a.tc=m;Km(Ta,5);break;case 255:a.tc=0<=Om(a,Ta).indexOf("CALL")?m:0;break;case 243:case 242:Km(Ta,1);E=Qd=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:E&&(a.tc=m,Km(Ta,1))}while(Qd);a.tc?(a.ae(a.zc,Ta,
!0),a.Ze()||(a.T.Yc(),a.tc=0)):Ym(a,Jk?"tr":"t")}break;case "r":Fm(a,g);break;case "t":case "tr":Ym(a,g[0],g[1]);break;case "u":Gm(a,g[1],g[2],8);break;case "x":a:if(void 0===g[1]||"?"==g[1])a.Z("\nexecution options:"),a.Z("\tcs int #\tset checksum cycle interval to #"),a.Z("\tcs start #\tset checksum cycle start count to #"),a.Z("\tcs stop #\tset checksum cycle stop count to #"),a.Z("\tsp #\t\tset speed multiplier to #");else switch(g[1]){case "cs":var Oc;void 0!==g[3]&&(Oc=parseInt(g[3],10));switch(g[2]){case "int":a.T.da.Bf=
Oc;break;case "start":a.T.da.pg=Oc;break;case "stop":a.T.da.Df=Oc;break;default:a.Z("unknown cs option");break a}void 0!==Oc&&Rb(a.T);a.Z("checksums "+(a.T.na.rf?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&Yb(a.T,parseInt(g[2],10));a.Z("target speed: "+(a.T.da.Te.toFixed(2)+"Mhz")+" ("+a.T.da.Pd+"x)");break;default:a.Z("unknown option: "+g[1])}break;case "?":var m="commands:",Rd;for(Rd in qm)m+="\n"+Rd+" ".substr(0,7-Rd.length)+qm[Rd];Pd(a)||(m+="\nnote: frequency/history disabled if no exec breakpoints");
a.Z(m);break;default:a.Z("unknown command: "+b),c=!1}}}catch(rn){a.Z("debugger sad: "+rn.message),c=!1}return c}Ka(function(){for(var a=A(window.document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new km(d);bb(d,c)}});function sd(a,b,c){this.id=a.id;this.key=$m(a,b,c);this.ka=a.ka;an(this,a.mp)}function $m(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}
sd.prototype={set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.Ii=!0):this.Ii?!0:xa()&&(a=Aa(this.key))?(this[this.id]=a,this.Ii=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){x(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){an(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c,1);c=0}},va:function(a){return this.ka?this.ka.va(null==a?8388608:a|8388608):!1},qb:function(a){this.ka&&this.ka.message(a)}};function an(a,b){a[a.id]={};b&&a.set("parms",b);a.Ii=!1}
function bn(a){var b=!0;if(xa()){var c=JSON.stringify(a[a.id]);Ba(a.key,c)||(x("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
function cn(a,b,c){y.call(this,"Computer",a,cn,33554432);this.na.Tb=!1;this.Af=a.buswidth;this.Vc=dn;this.Lg=null;this.zh=!1;this.url=b?b.url:null;this.wp=(Math.random()+0.1).toString(36).substr(2,12);this.Wc=en(this);if(this.T=ab("CPU",this.id)){this.ka=ab("Debugger",this.id);this.sa=new kb({id:this.Sk+".bus",buswidth:this.Af},this.T,this.ka);var d,e=Ya(this.id);if((this.Gg=ab("Panel",this.id))&&this.Gg.fg)for(b=0;b<e.length;b++)d=e[b],d.Ia=this.Gg.Ia,d.Z=this.Gg.Z,d.fg=this.Gg.fg;for(b=0;b<e.length;b++)d=
e[b],d.vc&&d.vc(this,this.sa,this.T,this.ka);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Yh=d:this.Vc=parseInt(d,10));var f;if(a=Qa&&Qa.state||(f=!0,a.state))b=this.om=a,f||(this.zh=!0,this.Vc=dn),this.Vc&&(this.ai=new sd(this,"1.16.1"),this.ai.load()?b=null:delete this.ai);!b&&this.Vc&&(f=null,this.Wc&&(f=ua()+"/api/v1/user?req=load&user="+this.Wc+"&state="+$m(this,"1.16.1")),b=f)&&(this.zh=!0);b?ta(b,!0,null,this,this.oo):this.Va();c||fn(this,this.Rh)}else x("Unable to find CPU component")}
Xa(y,cn);var dn=0;k=cn.prototype;k.vf=function(){return this.wp};k.me=function(){return this.Wc?this.Wc:""};k.oo=function(a,b,c){c?(this.Yh=null,this.zh=!1,this.Ia("Unable to load machine state from server (error "+c+(b?": "+ma(b):"")+")")):this.Lg=b;this.Va()};function fn(a,b,c){for(var d=Ya(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!fb(f)){fb(f,function(){fn(a,b,c)});return}}b.call(a,c)}
function gn(a,b){var c=new sd(a,"1.16.1","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ia("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.Rh=function(a){void 0===a&&(a=this.Vc||(this.Lg?1:dn));var b=!1,c=!1;this.Lk=!1;var d=this.ai||new sd(this,"1.16.1");if(-1==a)b=!0;else if(a>dn){if(d.load(this.Lg)){this.cf=new sd(this,"1.16.1","failsafe");this.cf.load()&&(hn(this,d),a=2,an(this.cf));this.cf.set("timestamp",ra());bn(this.cf);var e=this.Vc&&!this.zh;if(1==a||va("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
f&&"no machine state"!=g?(this.Ia("Error: "+g),"unable to verify user"==g&&(Ba("user",""),this.Wc=null)):this.Z(f+": "+g),an(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&gn(this,c?d:null)}else 2==a&&d.clear()}else gn(this);delete this.Lg;delete this.ai}e=Ya(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.T&&(c=jn(this,g,d,b,c));b=[d,a,c];-1!=a?fn(this,this.Dk,b):this.Dk(b)};
function jn(a,b,c,d,e){if(!b.na.Tb){b.na.Tb=!0;if(b.ec){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.ec(f,d)&&f&&(x("Unable to restore state for "+b.type),a.om&&!a.Lg?(c.clear(),a.Vc=dn,window&&window.location.reload()):a.Lk=!0,b.ec(null),e=!1)}if(!d&&b.zk)for(a=b.zk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.Dk=function(a){var b=a[0],c=0>a[1];a=a[2];this.na.Tb=!0;this.Ik||(this.Z("PCjs v1.16.1\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Ik=!0);this.T&&jn(this,this.T,b,c,a);this.Lk&&(hn(this,b),b.clear());!c&&this.cf&&(this.cf.clear(),delete this.cf)};
function hn(a,b){if(va("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.me(),d=b.toString(),e={app:"PCjs",ver:"1.16.1"};e.url=a.url;e.user=c;e.type="bug";e.data=d;ta("http://www.pcjs.org/api/v1/report",!0,e)}}
function Zm(a,b,c){var d,e="none",f=new sd(a,"1.16.1"),g=new sd(a,"1.16.1","validate"),h=ra();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.16.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.T&&a.T.dc&&(c&&a.T.Jb(),d=a.T.dc(b,c),"object"===typeof d&&f.set(a.T.id,d),c&&(a.T.na.Tb=!1,!1===d&&(e=null)));for(var h=Ya(a.id),n=0;n<h.length;n++){var m=h[n];m.na.Tb&&(m.dc&&(d=m.dc(b,c),"object"===typeof d&&f.set(m.id,d)),c&&(m.na.Tb=
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.Wc&&kn(a,a.Wc,f.toString()),bn(g)&&bn(f)||(e=null,d=h=!0)):a.Vc&&(d=!0,h=3==a.Vc),d&&f.clear(h)):e=f.toString());c&&(a.na.Tb=!1);return e}k.reset=function(){this.sa&&this.sa.reset&&(this.qb("Resetting "+this.sa.type),this.sa.reset());for(var a=Ya(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.sa&&c.reset&&(this.qb("Resetting "+c.type),c.reset())}};
k.start=function(a,b){for(var c=Ya(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=Ya(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
k.Ib=function(a,b,c){var d=this;switch(b){case "save":return this.xa[b]=c,c.onclick=function(){var a=cn(d,!0);if(a){var b=!(!d.Vc||d.Zh),c=Xm(d,b);b?hn(d,a,c):d.Ia("Resume disabled, machine state not saved")}},!0;case "reset":return this.xa[b]=c,c.onclick=function(){Xb(d)},!0}return!1};
function cn(a,b){var c=a.Wc;c||(c=ya("user"),void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email support@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=jn(a,c))||a.Ia("Your user ID has not been approved."))):b&&a.Ia("Browser local storage is not available"));return c}
function jn(a,b){a.Wc=null;var c=ta(ua()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(za("user",c.data),a.Wc=c.data)}catch(e){x(e.message+" ("+d+")")}return a.Wc}
function hn(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Ym(a,"1.16.1");d.data=c;b=ta(ua()+"/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.Ia("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.Ia(c),za("user",""),a.Wc=null)}}
function Xb(a){if(a.Vc&&!a.Zh){var b=va("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Xm(a,b,!0);!b&&a.rm?window&&window.location.reload():(b||(a.Li=!0),a.Sh(bn),a.Li=!1)}else a.reset(),a.T&&Sb(a.T)}function ib(a,b,c){a=Ya(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}
Ka(function(){for(var a=A(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=z(c),c=A(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=z(f),g=new an(g,d,!0);bb(g,f);dn(g,g.Sh)}});Fa.show.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=$a("Computer",c.id))&&c.Lk&&!c.na.Ub&&c.Sh(-1)}});
Fa.exit.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=$a("Computer",c.id))&&c.na.Ub&&Xm(c,!(!c.Vc||c.Zh),!0)}});var kn=0;function ln(a,b,c,d,e,f){e("Loading "+a+"...");ta(a,!0,null,null,function(g,h,n){n?(h||(h="unable to load "+a+" ("+n+")"),f(h,null)):mn(h,a,b,c,d,e,f)})}
function mn(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){var h=b;h&&0>h.indexOf("/")&&(h=window.location.pathname+h);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(h?" url=$2"+h+"$2":""))}h=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(r){h=
null,a=r.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,h)}}a?e?qn(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
function qn(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");ta(e,!0,null,null,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var n=h[0],l,s=/( [a-z]+=)(['"])(.*?)\2/g;l=s.exec(f);)n=0>n.indexOf(l[1])?n.replace(">",l[0]+">"):n.replace(new RegExp(l[1]+"(['\"])(.*?)\\1"),l[0]);h[0]!=n&&(g=g.replace(h[0],n))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);qn(a,b,c)}})}else c(a,null)}
function rn(a,b,c,d){function e(a){if(void 0===h){var b=g&&A(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ka(a))}function f(a){e("Error: "+a);n&&(--kn||Ma(!0));n=!1}var g,h,n=!0;kn++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.16.1/components.xsl");var l=function(a,d){if(d){var h=function(a,h){if(h)if(h)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var l=d.transformNode(h);l?(g.outerHTML=l,--kn||Ma(!0)):f("transformNodeToObject failed")}else window.document.implementation&&
window.document.implementation.createDocument?(l=new XSLTProcessor,l.importStylesheet(h),(l=l.transformToFragment(d,window.document))?(g.parentNode.replaceChild(l,g),--kn||Ma(!0)):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?ln(c,null,null,!1,e,h):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?ln(b,a,d,!0,e,l):mn(b,null,a,d,!1,e,l)}else f("failed to find machine element: "+a)}catch(s){f(s.message)}return n}
window.embedPC=function(a,b,c,d){Ma(!1);return rn(a,b,c,d)};window.enableEvents=Ma;window.sendEvent=Na;})();
k.Ib=function(a,b,c){var d=this;switch(b){case "save":return this.xa[b]=c,c.onclick=function(){var a=en(d,!0);if(a){var b=!(!d.Vc||d.Yh),c=Zm(d,b);b?kn(d,a,c):d.Ia("Resume disabled, machine state not saved")}},!0;case "reset":return this.xa[b]=c,c.onclick=function(){Xb(d)},!0}return!1};
function en(a,b){var c=a.Wc;c||(c=Aa("user"),void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email support@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=ln(a,c))||a.Ia("Your user ID has not been approved."))):b&&a.Ia("Browser local storage is not available"));return c}
function ln(a,b){a.Wc=null;var c=ta(ua()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(Ba("user",c.data),a.Wc=c.data)}catch(e){x(e.message+" ("+d+")")}return a.Wc}
function kn(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=$m(a,"1.16.1");d.data=c;b=ta(ua()+"/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.Ia("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.Ia(c),Ba("user",""),a.Wc=null)}}
function Xb(a){if(a.Vc&&!a.Yh){var b=va("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Zm(a,b,!0);!b&&a.om?window&&window.location.reload():(b||(a.Ji=!0),a.Rh(dn),a.Ji=!1)}else a.reset(),a.T&&Sb(a.T)}function ib(a,b,c){a=Ya(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}
Ka(function(){for(var a=A(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=z(c),c=A(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=z(f),g=new cn(g,d,!0);bb(g,f);fn(g,g.Rh)}});Ga.show.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=ab("Computer",c.id))&&c.Ik&&!c.na.Tb&&c.Rh(-1)}});
Ga.exit.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=ab("Computer",c.id))&&c.na.Tb&&Zm(c,!(!c.Vc||c.Yh),!0)}});var mn=0;function nn(a,b,c,d,e,f){e("Loading "+a+"...");ta(a,!0,null,null,function(g,h,n){n?(h||(h="unable to load "+a+" ("+n+")"),f(h,null)):on(h,a,b,c,d,e,f)})}
function on(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){var h=b;h&&0>h.indexOf("/")&&(h=window.location.pathname+h);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(h?" url=$2"+h+"$2":""))}h=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(r){h=
null,a=r.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,h)}}a?e?sn(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
function sn(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");ta(e,!0,null,null,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var n=h[0],m,s=/( [a-z]+=)(['"])(.*?)\2/g;m=s.exec(f);)n=0>n.indexOf(m[1])?n.replace(">",m[0]+">"):n.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=n&&(g=g.replace(h[0],n))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);sn(a,b,c)}})}else c(a,null)}
function tn(a,b,c,d){function e(a){if(void 0===h){var b=g&&A(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ka(a))}function f(a){e("Error: "+a);n&&(--mn||Ma(!0));n=!1}var g,h,n=!0;mn++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.16.1/components.xsl");var m=function(a,d){if(d){var h=function(a,h){if(h)if(h)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var m=d.transformNode(h);m?(g.outerHTML=m,--mn||Ma(!0)):f("transformNodeToObject failed")}else window.document.implementation&&
window.document.implementation.createDocument?(m=new XSLTProcessor,m.importStylesheet(h),(m=m.transformToFragment(d,window.document))?(g.parentNode.replaceChild(m,g),--mn||Ma(!0)):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?nn(c,null,null,!1,e,h):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?nn(b,a,d,!0,e,m):on(b,null,a,d,!1,e,m)}else f("failed to find machine element: "+a)}catch(s){f(s.message)}return n}
window.embedPC=function(a,b,c,d){Ma(!1);return tn(a,b,c,d)};window.enableEvents=Ma;window.sendEvent=Na;})();

View file

@ -4,118 +4,117 @@ function ja(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFul
function la(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&&(h=n.responseText,200==n.status||!n.status&&h.length&&"file:"==(window?window.location.protocol:"file:")||(g=n.status||-1),e&&(d?e.call(d,m,h,g,f):e(m,h,g,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||(h=n.responseText,200!=n.status&&(g=n.status||-1),e&&(d?e.call(d,m,h,g,f):e(m,h,g,f)),a=[g,h]);return a}function ma(){return"http://"+(window?window.location.host:"www.pcjs.org")}function r(a){window&&window.alert(a)}function na(a){var b=!1;window&&(b=window.confirm(a));return b}var oa=null;
function pa(){if(null==oa){var a;try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"===window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}oa=a}return oa}function qa(a){var b;try{b=window.localStorage.getItem(a)}catch(c){}return b}function ra(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}
function sa(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 ta={init:[],show:[],exit:[]},ua=!1,va=!0;function ya(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function za(a){ta.init.push(a)}
function Aa(a){if(va)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){r("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks.")}}function Ba(a){!va&&a?(va=!0,ua&&Ca("init")):va=a}function Ca(a){ta[a]&&Aa(ta[a])}ya("onload",function(){ua=!0;Aa(ta.init)});ya("onpageshow",function(){Aa(ta.show)});ya(sa("Opera")||sa("iOS")?"onunload":"onbeforeunload",function(){Aa(ta.exit)});
function u(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.Ij=b.comment;this.mo=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.ak=this.id.substr(0,b),this.bi=this.id.substr(b+1)):this.bi=this.id;this[a]=c;this.na={Hg:!1,zc:!1,Nh:!1,Lb:!1,Sc:!1};this.Xh=null;this.na.Sc=!1;this.ra={};this.Ra=null;Da[Da.length]=this}var Ea=void 0,Fa={};
function sa(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 ta={init:[],show:[],exit:[]},ua=!1,xa=!0;function ya(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function za(a){ta.init.push(a)}
function Aa(a){if(xa)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){r("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks.")}}function Ba(a){!xa&&a?(xa=!0,ua&&Ca("init")):xa=a}function Ca(a){ta[a]&&Aa(ta[a])}ya("onload",function(){ua=!0;Aa(ta.init)});ya("onpageshow",function(){Aa(ta.show)});ya(sa("Opera")||sa("iOS")?"onunload":"onbeforeunload",function(){Aa(ta.exit)});
function u(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.Gj=b.comment;this.lo=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Yj=this.id.substr(0,b),this.$h=this.id.substr(b+1)):this.$h=this.id;this[a]=c;this.na={Fg:!1,zc:!1,Lh:!1,Lb:!1,Tc:!1};this.Vh=null;this.na.Tc=!1;this.ra={};this.Sa=null;Da[Da.length]=this}var Ea=void 0,Fa={};
if(window){Ea||(Ea=window.location.search.substr(1));for(var Ga,Ha=/\+/g,Ia=/([^&=]+)=?([^&]*)/g;Ga=Ia.exec(Ea);)Fa[decodeURIComponent(Ga[1].replace(Ha," "))]=decodeURIComponent(Ga[2].replace(Ha," "))}function Ja(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 v(a,b){b.prototype=Ja(a.prototype)}var Da=[];
function Ka(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 La(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 Ma(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 w(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){r(c.message+" ("+a+")")}return b}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);
function Na(a,b){for(var c=x(b.parentNode,"pcjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(g.nodeType===window.document.ELEMENT_NODE){var h=g.getAttribute("class");if(h)for(var m=h.split(" "),n=0;n<m.length;n++)switch(h=m[n],h){case "pcjs-binding":(h=w(g))&&h.binding&&a.Fb(h.type,h.binding,g),n=m.length}}}}
function x(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}
function Na(a,b){for(var c=y(b.parentNode,"pcjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(g.nodeType===window.document.ELEMENT_NODE){var h=g.getAttribute("class");if(h)for(var m=h.split(" "),n=0;n<m.length;n++)switch(h=m[n],h){case "pcjs-binding":(h=w(g))&&h.binding&&a.Fb(h.type,h.binding,g),n=m.length}}}}
function y(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}
u.prototype={toString:function(){return this.name?this.name:this.id||this.type},Fb:function(a,b,c){switch(b){case "clear":return this.ra[b]||(this.ra[b]=c,c.onclick=function(a){return function(){a.ra.print&&(a.ra.print.value="")}}(this)),!0;case "print":return this.ra[b]||(this.Fh=this.ra[b]=c,c.value="",this.fc=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),this.Aa=function(a,
b,c){this.fc(a,"notice",c)}),!0;default:return!1}},log:function(){},fc:function(){},status:function(a){this.fc(this.bi+": "+a)},Aa:function(a,b){b||r(a)},Pa:function(a){this.na.Sc||(this.na.Hg=!1!==a,this.na.Hg&&(this.name&&this.log("ready"),a=this.Xh,this.Xh=null,a&&a()))},Yb:function(){return this.na.Lb=!0},Xb:function(a,b){b&&(this.na.Lb=!1);return!0},Mb:function(){return!1}};
function Oa(a,b){if(a.na.Nh)return a.na.zc&&(a.na.zc=!1),a.na.Nh=!1;if(a.na.Sc)return a.fc(a.toString()+" error"),!1;a.na.zc=b;return a.na.zc}function Pa(a,b){b&&(a.na.Hg?b():a.Xh=b);return a.na.Hg}function Qa(a,b){a.na.Sc=!0;a.Aa("Fatal error: "+b)}function Ra(a){u.call(this,"Panel",a,Ra)}v(u,Ra);Ra.prototype.Fb=function(a,b,c){return this.Na&&this.Na.Fb(a,b,c)||this.la&&this.la.Fb(a,b,c)||this.La&&this.La.Fb(a,b,c)?!0:u.prototype.Fb.call(this,a,b,c)};
Ra.prototype.sc=function(a,b,c,d){this.Na=a;this.la=c;this.Ra=d;this.La=z(a,"Keyboard")};Ra.prototype.Yb=function(a,b){b||Sa();return!0};Ra.prototype.Xb=function(){return!0};function Sa(){for(var a=!1,b=x(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=w(d),f=La(e.id);f||(a=!0,f=new Ra(e));Na(f,d);a&&f.Pa()}}za(Sa);
function Ta(a,b,c){u.call(this,"Bus",a,Ta);this.la=b;this.Ra=c;this.yf=a.buswidth||20;this.vh=this.cd=(1<<this.yf)-1;this.Ub=20>=this.yf?12:14;this.wc=1<<this.Ub;this.Gj=this.wc>>2;this.sb=this.wc-1;this.ug=(this.vh+this.wc)/this.wc|0;this.ce=this.ug-1;this.fg=[];this.gg=[];this.di();this.Pa()}v(u,Ta);Ta.prototype.di=function(){this.Fa=Array(this.ug);for(var a=0;a<this.ug;a++)this.Fa[a]=new Ua(a*this.wc);this.la.di(this.Fa,this.vh,this.Ub,this.sb,this.ce);this.la.Yd=this.cd};
Ta.prototype.reset=function(){Va(this,!0)};Ta.prototype.Yb=function(a,b){b||this.reset();return!0};function Ya(a,b,c,d,e){if(!(b&a.sb||!c||c&a.sb)){for(var f=b>>a.Ub;0<c&&f<a.Fa.length;){var g=a.Fa[f];if(void 0!==g&&g.size)return Za(1,b,c);b=f*a.wc;a.Fa[f++]=new Ua(b,a.wc,d,e);c-=a.wc}return!0}return Za(2,b,c)}function Va(a,b){if(void 0!==b&&20<a.yf){var c=a.cd&-1048577|(b?1048576:0);c!=a.cd&&(a.cd=c,a.la&&(a.la.Yd=c))}}
Ta.prototype.jh=function(a,b,c){if(!(a&this.sb||!b||b&this.sb)){for(var d=a>>this.Ub;0<b;){var e=this.Fa[d];if(!e.ea)return Za(5,a,b);e.xe(c);b-=this.wc;d++}return!0}return Za(3,a,b)};function $a(a,b,c){if(!(b&a.sb||!c||c&a.sb)){for(var d=b>>a.Ub;0<c;)b=d*a.wc,a.Fa[d++]=new Ua(b),c-=a.wc;return!0}return Za(4,b,c)}function ab(a,b){return a.Fa[(b&a.cd)>>a.Ub].fj(b&a.sb)}function bb(a,b){var c=b&a.sb,d=(b&a.cd)>>a.Ub;return c!=a.sb?a.Fa[d].po(c):a.Fa[d++].fj(c)|a.Fa[d&a.ce].fj(0)<<8}
function cb(a,b,c){a.Fa[(b&a.cd)>>a.Ub].nj(b&a.sb,c&255)}function db(a,b,c){var d=b&a.sb;b=(b&a.cd)>>a.Ub;d!=a.sb?a.Fa[b].Ao(d,c&65535):(a.Fa[b++].nj(d,c&255),a.Fa[b&a.ce].nj(0,c>>8&255))}function eb(a){for(var b=0,c=[],d=0;d<a.ug;d++){var e=a.Fa[d];if(e.kb||e.Nj){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],s=h+1;s<e.length&&e[s]===q;)s++;n[m++]=s-h;n[m++]=q;h=s}if(n.length<e.length){e=n;break a}}f[g]=e}}c[b]=a.vh==a.cd;return c}
function fb(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.fg[n]?r("Input port "+p(n,4)+" registered by "+f.fg[n][0].id+", ignoring "+h.id):f.fg[n]=[h,m,!1,!1]}}function gb(a,b,c){var d=255;a=a.fg[b];void 0!==a&&a[1]&&(d=a[1].call(a[0],b,c));return d}
function hb(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.gg[n]?r("Output port "+p(n,4)+" registered by "+f.gg[n][0].id+", ignoring "+h.id):f.gg[n]=[h,m,!1,!1]}}function ib(a,b,c,d){a=a.gg[b];void 0!==a&&a[1]&&a[1].call(a[0],b,c,d)}function Za(a,b,c){r("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}
function Ua(a,b,c,d){this.Ll=b||0;this.pa=null;this.offset=0;this.Tj=c;this.ea=null;this.kb=this.Nj=!1;if(b)if(d)this.ea=d,a=[d.Zd,a-d.Ua],this.pa=a[0],this.offset=a[1],this.xe(d.jf);else{this.pa=Array(b>>2);for(d=0;d<this.pa.length;d++)this.pa[d]=0;this.xe(jb)}else this.xe()}
Ua.prototype={ah:function(){return 0},nh:function(){},no:function(a){return this.pa[a>>2]>>>((a&3)<<3)&255},qo:function(a){var b=a>>2;a=(a&3)<<3;var c=this.pa[b]>>>a;return 24>a?c&65535:c&255|(this.pa[b+1]&255)<<8},yo:function(a,b){var c=a>>2,d=(a&3)<<3;this.pa[c]=this.pa[c]&~(255<<d)|b<<d;this.kb=!0},Bo:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.pa[c]=this.pa[c]&~(65535<<d)|b<<d:(this.pa[c]=this.pa[c]&16777215|b<<24,c++,this.pa[c]=this.pa[c]&4294967040|b>>8);this.kb=!0},save:function(){return this.ea?
null:this.pa},restore:function(a){return this.ea?null==a:a&&this.Ll==a.length<<2?(this.pa=a,this.kb=!0):!1},xe:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.Cc=c[0]?c[0]:this.ah;this.oo=c[1]?c[1]:this.ah;b&&(this.fj=c[0]?c[0]:this.ah,this.po=c[1]?c[1]:this.ah);c=a;this.Fc=c[2]&&!this.Tj?c[2]:this.nh;this.zo=c[3]&&!this.Tj?c[3]:this.nh;b&&(this.nj=c[2]?c[2]:this.nh,this.Ao=c[3]?c[3]:this.nh)}};var jb=[Ua.prototype.no,Ua.prototype.qo,Ua.prototype.yo,Ua.prototype.Bo];
function kb(a,b){u.call(this,"CPU",a,kb);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.Wc=c;this.ba.Kd=d;this.ba.Mg=Math.round(this.ba.Wc/1E4)/100;this.ba.Ve=this.ba.Mg*this.ba.Kd;this.na.Lb=!1;this.na.cc=!1;this.na.Wj=!1;this.na.Mh=a.autoStart;this.na.Oj=!1;c=Fa.autostart;void 0!==c&&(this.na.Mh="true"==c?!0:"false"==c?!1:null);this.na.Dg=!1;this.ba.Qg=this.ba.Xe=0;this.ba.Rg=a.csStart;this.ba.zf=a.csInterval;this.ba.Af=a.csStop;var e=this;this.pn=function(){lb(e)};this.Pa()}v(u,kb);k=kb.prototype;
k.sc=function(a,b,c,d){this.qa=b;this.Ra=d;this.Na=a;var e=z(a,"Video");e&&(this.tf=function(){mb(e)},this.qd=function(){e.qd()});this.ka=z(a,"ChipSet");this.Pa()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Yb=function(a,b){if(!b){if(a&&this.restore){nb(this);if(!this.restore(a))return!1;ob(this)}else this.reset();this.fc("No debugger detected")}this.na.Lb=!0;!pb(this)&&this.Ra&&this.Ra.Up();this.tf();this.Le();return!0};
k.Xb=function(a){this.na.Lb=!1;return a&&this.save?this.save():!0};function pb(a){return!0===a.na.Mh||null===a.na.Mh&&void 0===a.ra.run?(lb(a),!0):!1}k.qd=function(){};k.Yj=function(){return 0};function ob(a){void 0===a.ba.Rg&&(a.ba.Rg=0);void 0===a.ba.zf&&(a.ba.zf=-1);void 0===a.ba.Af&&(a.ba.Af=-1);a.na.Dg=0<=a.ba.Rg&&0<a.ba.zf;a.na.Dg&&(a.ba.Qg=0,a.ba.Xe=a.ba.Rg-a.te)}
function A(a,b,c,d){a.ra[b]&&(void 0===d&&(d=4),void 0===c&&(Qa(a,"Register "+b+" is invalid"),qb(a)),c=!a.na.cc||a.na.Oj?p(c,d):"----".substr(0,d),a.ra[b].textContent!=c&&(a.ra[b].textContent=c))}k.Le=function(){};k.tf=function(){};
k.Fb=function(a,b,c){var d=this;a=!1;switch(b){case "run":this.ra[b]=c;c.onclick=function(){d.na.cc?qb(d,!0):lb(d,!0)};a=!0;break;case "reset":this.ra[b]=c;c.onclick=function(){d.Na&&rb(d.Na)};a=!0;break;case "speed":this.ra[b]=c;a=!0;break;case "setSpeed":this.ra[b]=c,c.onclick=function(){sb(d,d.ba.Kd<<1,!0)},c.textContent=this.ba.Ve.toFixed(2)+"Mhz",a=!0}return a};function tb(a,b){if(a.na.cc){var c=a.A-b;a.A-=c;a.Vc-=c}}function ub(a,b,c){a.te+=b;c&&(a.Vc=a.A=0)}
function vb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.ba.Kd&&a.ba.Uc&&(d=a.ba.Uc/a.ba.Mg);a.ba.ek=Math.round(1E3/30);a.ba.jn=Math.floor(a.ba.Wc/c*d);a.ba.ki=Math.floor(a.ba.Wc/30*d);a.ba.ik=Math.floor(a.ba.Wc/60*d);a.ba.hk=Math.floor(a.ba.Wc/2*d);b||(a.ba.Df=a.ba.ki,a.ba.Cf=a.ba.ik,a.ba.Bf=a.ba.hk);a.ba.li=0}function B(a,b){var c=a.te+a.Od+a.Vc-a.A;b&&1<a.ba.Kd&&a.ba.Uc>a.ba.Mg&&(c=Math.round(c/a.ba.Kd));return c}function nb(a){a.ba.Uc=0;a.te=a.Od=a.Vc=a.A=0;ob(a);sb(a,1)}
function sb(a,b,c){if(void 0!==b){0.8>a.ba.Uc/a.ba.Ve&&(b=1);a.ba.Kd=b;b=a.ba.Mg*a.ba.Kd;if(a.ba.Ve!=b){a.ba.Ve=b;b=a.ba.Ve.toFixed(2)+"Mhz";var d=a.ra.setSpeed;d&&(d.textContent=b);a.fc("target speed: "+b)}c&&a.qd()}ub(a,a.Od);a.Od=0;a.ba.We=ia();a.ba.qe=0;vb(a)}
function lb(a,b){if(Oa(a,!0)){if(!a.na.cc){sb(a);a.Na&&a.Na.start(a.ba.We,B(a));a.na.cc=!0;a.na.Wj=!0;a.ka&&wb(a.ka);var c=a.ra.run;c&&(c.textContent="Halt");a.Le(!0);b&&a.qd()}a.ba.li>=a.ba.Wc&&vb(a,!0);a.ba.Ef=0;a.ba.Og=ia();a.ba.qe&&(c=a.ba.Og-a.ba.qe,c>a.ba.ek&&(a.ba.We+=c,a.ba.We>a.ba.Og&&(a.ba.We=a.ba.Og)));try{do{var d=a.na.Dg?1:a.ba.jn;if(a.ka){xb(a.ka);var e=a.ka,c=d,f=e.Ib[0];if(f.ne){var g=(B(e.la,e.Gd)-f.nd)/e.Yg|0,h=yb(e,0)-g;6==f.mode&&(h-=g);var m=h*e.Yg|0;6==f.mode&&(m>>=1);c>m&&(c=
m)}var d=c,n=a.ka,c=d;if(n.ja&&n.ja[11]&64){var q=n.Ze-B(n.la,n.Gd);0<q&&c>q&&(c=q)}d=c}a.yl(d);var s=a.Vc-a.A;a.Od+=s;a.ba.Ef+=s;ub(a,0,!0);var c=a,t=s;if(c.na.Dg){var y=!1;c.ba.Qg=c.ba.Qg+c.Yj()|0;c.ba.Xe-=t;0>=c.ba.Xe&&(c.ba.Xe+=c.ba.zf,y=!0);0<=c.ba.Af&&c.ba.Af<=B(c)&&(c.ba.zf=c.ba.Af=-1,ob(c),qb(c),y=!0);y&&c.fc(B(c)+" cycles: checksum="+p(c.ba.Qg))}a.ba.Cf-=s;0>=a.ba.Cf&&(a.ba.Cf+=a.ba.ik,a.tf());a.ba.Bf-=s;0>=a.ba.Bf&&(a.ba.Bf+=a.ba.hk,a.Le());a.ba.Df-=s;if(0>=a.ba.Df){a.ba.Df+=a.ba.ki;break}}while(a.na.cc)}catch(H){qb(a);
a.tf();a.Le();a.Na&&a.Na.stop(ia(),B(a));Oa(a,!1);Qa(a,H.message);return}d=setTimeout;e=a.pn;a.ba.qe=ia();f=a.ba.ek;a.ba.Ef&&(f=Math.round(f*a.ba.Ef/a.ba.ki));f-=a.ba.qe-a.ba.Og;if(g=a.ba.qe-a.ba.We)a.ba.Uc=Math.round(a.Od/(10*g))/100,864E5<=g&&(a.te=0,a.ka&&xb(a.ka,!0),sb(a));if(0>f||a.ba.Uc<a.ba.Ve)f=0;a.ba.li+=a.ba.Ef;a.ba.qe+=f;d(e,f)}else a.tf(),a.Le(),a.Na&&a.Na.stop(ia(),B(a))}k.yl=function(){return 0};
function qb(a,b){a.na.zc&&(a.na.Nh=!0);a.Vc-=a.A;a.A=0;ub(a,a.Od);a.Od=0;if(a.na.cc){a.na.cc=!1;a.ka&&wb(a.ka);var c=a.ra.run;c&&(c.textContent="Run")}a.na.uf=b}
b,c){this.fc(a,"notice",c)}),!0;default:return!1}},log:function(){},fc:function(){},status:function(a){this.fc(this.$h+": "+a)},Aa:function(a,b){b||r(a)},Qa:function(a){this.na.Tc||(this.na.Fg=!1!==a,this.na.Fg&&(this.name&&this.log("ready"),a=this.Vh,this.Vh=null,a&&a()))},Xb:function(){return this.na.Lb=!0},Wb:function(a,b){b&&(this.na.Lb=!1);return!0},cc:function(){return!1}};
function Oa(a,b){if(a.na.Lh)return a.na.zc&&(a.na.zc=!1),a.na.Lh=!1;if(a.na.Tc)return a.fc(a.toString()+" error"),!1;a.na.zc=b;return a.na.zc}function Pa(a,b){b&&(a.na.Fg?b():a.Vh=b);return a.na.Fg}function Qa(a,b){a.na.Tc=!0;a.Aa("Fatal error: "+b)}function Ra(a){u.call(this,"Panel",a,Ra)}v(u,Ra);Ra.prototype.Fb=function(a,b,c){return this.Na&&this.Na.Fb(a,b,c)||this.la&&this.la.Fb(a,b,c)||this.Ma&&this.Ma.Fb(a,b,c)?!0:u.prototype.Fb.call(this,a,b,c)};
Ra.prototype.sc=function(a,b,c,d){this.Na=a;this.la=c;this.Sa=d;this.Ma=z(a,"Keyboard")};Ra.prototype.Xb=function(a,b){b||Sa();return!0};Ra.prototype.Wb=function(){return!0};function Sa(){for(var a=!1,b=y(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=w(d),f=La(e.id);f||(a=!0,f=new Ra(e));Na(f,d);a&&f.Qa()}}za(Sa);
function Ta(a,b,c){u.call(this,"Bus",a,Ta);this.la=b;this.Sa=c;this.wf=a.buswidth||20;this.uh=this.dd=(1<<this.wf)-1;this.Tb=20>=this.wf?12:14;this.xc=1<<this.Tb;this.Ej=this.xc>>2;this.tb=this.xc-1;this.sg=(this.uh+this.xc)/this.xc|0;this.be=this.sg-1;this.dg=[];this.eg=[];this.bi();this.Qa()}v(u,Ta);Ta.prototype.bi=function(){this.Da=Array(this.sg);for(var a=0;a<this.sg;a++)this.Da[a]=new Ua(a*this.xc);this.la.bi(this.Da,this.uh,this.Tb,this.tb,this.be);this.la.Xd=this.dd};
Ta.prototype.reset=function(){Xa(this,!0)};Ta.prototype.Xb=function(a,b){b||this.reset();return!0};function Ya(a,b,c,d,e){if(!(b&a.tb||!c||c&a.tb)){for(var f=b>>a.Tb;0<c&&f<a.Da.length;){var g=a.Da[f];if(void 0!==g&&g.size)return Za(1,b,c);b=f*a.xc;a.Da[f++]=new Ua(b,a.xc,d,e);c-=a.xc}return!0}return Za(2,b,c)}function Xa(a,b){if(void 0!==b&&20<a.wf){var c=a.dd&-1048577|(b?1048576:0);c!=a.dd&&(a.dd=c,a.la&&(a.la.Xd=c))}}
Ta.prototype.ih=function(a,b,c){if(!(a&this.tb||!b||b&this.tb)){for(var d=a>>this.Tb;0<b;){var e=this.Da[d];if(!e.ea)return Za(5,a,b);e.ve(c);b-=this.xc;d++}return!0}return Za(3,a,b)};function $a(a,b,c){if(!(b&a.tb||!c||c&a.tb)){for(var d=b>>a.Tb;0<c;)b=d*a.xc,a.Da[d++]=new Ua(b),c-=a.xc;return!0}return Za(4,b,c)}function ab(a,b){return a.Da[(b&a.dd)>>a.Tb].dj(b&a.tb)}function bb(a,b){var c=b&a.tb,d=(b&a.dd)>>a.Tb;return c!=a.tb?a.Da[d].oo(c):a.Da[d++].dj(c)|a.Da[d&a.be].dj(0)<<8}
function cb(a,b,c){a.Da[(b&a.dd)>>a.Tb].lj(b&a.tb,c&255)}function db(a,b,c){var d=b&a.tb;b=(b&a.dd)>>a.Tb;d!=a.tb?a.Da[b].zo(d,c&65535):(a.Da[b++].lj(d,c&255),a.Da[b&a.be].lj(0,c>>8&255))}function eb(a){for(var b=0,c=[],d=0;d<a.sg;d++){var e=a.Da[d];if(e.kb||e.Kj){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],s=h+1;s<e.length&&e[s]===q;)s++;n[m++]=s-h;n[m++]=q;h=s}if(n.length<e.length){e=n;break a}}f[g]=e}}c[b]=a.uh==a.dd;return c}
function fb(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.dg[n]?r("Input port "+p(n,4)+" registered by "+f.dg[n][0].id+", ignoring "+h.id):f.dg[n]=[h,m,!1,!1]}}function gb(a,b,c){var d=255;a=a.dg[b];void 0!==a&&a[1]&&(d=a[1].call(a[0],b,c));return d}
function hb(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.eg[n]?r("Output port "+p(n,4)+" registered by "+f.eg[n][0].id+", ignoring "+h.id):f.eg[n]=[h,m,!1,!1]}}function ib(a,b,c,d){a=a.eg[b];void 0!==a&&a[1]&&a[1].call(a[0],b,c,d)}function Za(a,b,c){r("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}
function Ua(a,b,c,d){this.Il=b||0;this.pa=null;this.offset=0;this.Qj=c;this.ea=null;this.kb=this.Kj=!1;if(b)if(d)this.ea=d,a=[d.Yd,a-d.Va],this.pa=a[0],this.offset=a[1],this.ve(d.jf);else{this.pa=Array(b>>2);for(d=0;d<this.pa.length;d++)this.pa[d]=0;this.ve(jb)}else this.ve()}
Ua.prototype={$g:function(){return 0},mh:function(){},mo:function(a){return this.pa[a>>2]>>>((a&3)<<3)&255},po:function(a){var b=a>>2;a=(a&3)<<3;var c=this.pa[b]>>>a;return 24>a?c&65535:c&255|(this.pa[b+1]&255)<<8},xo:function(a,b){var c=a>>2,d=(a&3)<<3;this.pa[c]=this.pa[c]&~(255<<d)|b<<d;this.kb=!0},Ao:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.pa[c]=this.pa[c]&~(65535<<d)|b<<d:(this.pa[c]=this.pa[c]&16777215|b<<24,c++,this.pa[c]=this.pa[c]&4294967040|b>>8);this.kb=!0},save:function(){return this.ea?
null:this.pa},restore:function(a){return this.ea?null==a:a&&this.Il==a.length<<2?(this.pa=a,this.kb=!0):!1},ve:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.Cc=c[0]?c[0]:this.$g;this.no=c[1]?c[1]:this.$g;b&&(this.dj=c[0]?c[0]:this.$g,this.oo=c[1]?c[1]:this.$g);c=a;this.Fc=c[2]&&!this.Qj?c[2]:this.mh;this.yo=c[3]&&!this.Qj?c[3]:this.mh;b&&(this.lj=c[2]?c[2]:this.mh,this.zo=c[3]?c[3]:this.mh)}};var jb=[Ua.prototype.mo,Ua.prototype.po,Ua.prototype.xo,Ua.prototype.Ao];
function kb(a,b){u.call(this,"CPU",a,kb);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.Xc=c;this.ba.Jd=d;this.ba.Lg=Math.round(this.ba.Xc/1E4)/100;this.ba.Ve=this.ba.Lg*this.ba.Jd;this.na.Lb=!1;this.na.bc=!1;this.na.Tj=!1;this.na.Kh=a.autoStart;this.na.Lj=!1;c=Fa.autostart;void 0!==c&&(this.na.Kh="true"==c?!0:"false"==c?!1:null);this.na.Bg=!1;this.ba.Pg=this.ba.Xe=0;this.ba.Qg=a.csStart;this.ba.xf=a.csInterval;this.ba.yf=a.csStop;var e=this;this.mn=function(){lb(e)};this.Qa()}v(u,kb);k=kb.prototype;
k.sc=function(a,b,c,d){this.qa=b;this.Sa=d;this.Na=a;var e=z(a,"Video");e&&(this.sf=function(){mb(e)},this.pd=function(){e.pd()});this.ka=z(a,"ChipSet");this.Qa()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Xb=function(a,b){if(!b){if(a&&this.restore){nb(this);if(!this.restore(a))return!1;ob(this)}else this.reset();this.fc("No debugger detected")}this.na.Lb=!0;!pb(this)&&this.Sa&&this.Sa.Tp();this.sf();this.Le();return!0};
k.Wb=function(a){this.na.Lb=!1;return a&&this.save?this.save():!0};function pb(a){return!0===a.na.Kh||null===a.na.Kh&&void 0===a.ra.run?(lb(a),!0):!1}k.pd=function(){};k.Vj=function(){return 0};function ob(a){void 0===a.ba.Qg&&(a.ba.Qg=0);void 0===a.ba.xf&&(a.ba.xf=-1);void 0===a.ba.yf&&(a.ba.yf=-1);a.na.Bg=0<=a.ba.Qg&&0<a.ba.xf;a.na.Bg&&(a.ba.Pg=0,a.ba.Xe=a.ba.Qg-a.re)}
function A(a,b,c,d){a.ra[b]&&(void 0===d&&(d=4),void 0===c&&(Qa(a,"Register "+b+" is invalid"),qb(a)),c=!a.na.bc||a.na.Lj?p(c,d):"----".substr(0,d),a.ra[b].textContent!=c&&(a.ra[b].textContent=c))}k.Le=function(){};k.sf=function(){};
k.Fb=function(a,b,c){var d=this;a=!1;switch(b){case "run":this.ra[b]=c;c.onclick=function(){d.na.bc?qb(d,!0):lb(d,!0)};a=!0;break;case "reset":this.ra[b]=c;c.onclick=function(){d.Na&&rb(d.Na)};a=!0;break;case "speed":this.ra[b]=c;a=!0;break;case "setSpeed":this.ra[b]=c,c.onclick=function(){sb(d,d.ba.Jd<<1,!0)},c.textContent=this.ba.Ve.toFixed(2)+"Mhz",a=!0}return a};function tb(a,b){if(a.na.bc){var c=a.A-b;a.A-=c;a.Wc-=c}}function ub(a,b,c){a.re+=b;c&&(a.Wc=a.A=0)}
function vb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.ba.Jd&&a.ba.Vc&&(d=a.ba.Vc/a.ba.Lg);a.ba.bk=Math.round(1E3/30);a.ba.fn=Math.floor(a.ba.Xc/c*d);a.ba.ii=Math.floor(a.ba.Xc/30*d);a.ba.fk=Math.floor(a.ba.Xc/60*d);a.ba.ek=Math.floor(a.ba.Xc/2*d);b||(a.ba.Bf=a.ba.ii,a.ba.Af=a.ba.fk,a.ba.zf=a.ba.ek);a.ba.ji=0}function B(a,b){var c=a.re+a.Nd+a.Wc-a.A;b&&1<a.ba.Jd&&a.ba.Vc>a.ba.Lg&&(c=Math.round(c/a.ba.Jd));return c}function nb(a){a.ba.Vc=0;a.re=a.Nd=a.Wc=a.A=0;ob(a);sb(a,1)}
function sb(a,b,c){if(void 0!==b){0.8>a.ba.Vc/a.ba.Ve&&(b=1);a.ba.Jd=b;b=a.ba.Lg*a.ba.Jd;if(a.ba.Ve!=b){a.ba.Ve=b;b=a.ba.Ve.toFixed(2)+"Mhz";var d=a.ra.setSpeed;d&&(d.textContent=b);a.fc("target speed: "+b)}c&&a.pd()}ub(a,a.Nd);a.Nd=0;a.ba.We=ia();a.ba.oe=0;vb(a)}
function lb(a,b){if(Oa(a,!0)){if(!a.na.bc){sb(a);a.Na&&a.Na.start(a.ba.We,B(a));a.na.bc=!0;a.na.Tj=!0;a.ka&&wb(a.ka);var c=a.ra.run;c&&(c.textContent="Halt");a.Le(!0);b&&a.pd()}a.ba.ji>=a.ba.Xc&&vb(a,!0);a.ba.Cf=0;a.ba.Ng=ia();a.ba.oe&&(c=a.ba.Ng-a.ba.oe,c>a.ba.bk&&(a.ba.We+=c,a.ba.We>a.ba.Ng&&(a.ba.We=a.ba.Ng)));try{do{var d=a.na.Bg?1:a.ba.fn;if(a.ka){xb(a.ka);var e=a.ka,c=d,f=e.Ib[0];if(f.le){var g=(B(e.la,e.Fd)-f.nd)/e.Xg|0,h=yb(e,0)-g;6==f.mode&&(h-=g);var m=h*e.Xg|0;6==f.mode&&(m>>=1);c>m&&(c=
m)}var d=c,n=a.ka,c=d;if(n.ja&&n.ja[11]&64){var q=n.Ze-B(n.la,n.Fd);0<q&&c>q&&(c=q)}d=c}a.vl(d);var s=a.Wc-a.A;a.Nd+=s;a.ba.Cf+=s;ub(a,0,!0);var c=a,t=s;if(c.na.Bg){var x=!1;c.ba.Pg=c.ba.Pg+c.Vj()|0;c.ba.Xe-=t;0>=c.ba.Xe&&(c.ba.Xe+=c.ba.xf,x=!0);0<=c.ba.yf&&c.ba.yf<=B(c)&&(c.ba.xf=c.ba.yf=-1,ob(c),qb(c),x=!0);x&&c.fc(B(c)+" cycles: checksum="+p(c.ba.Pg))}a.ba.Af-=s;0>=a.ba.Af&&(a.ba.Af+=a.ba.fk,a.sf());a.ba.zf-=s;0>=a.ba.zf&&(a.ba.zf+=a.ba.ek,a.Le());a.ba.Bf-=s;if(0>=a.ba.Bf){a.ba.Bf+=a.ba.ii;break}}while(a.na.bc)}catch(E){qb(a);
a.sf();a.Le();a.Na&&a.Na.stop(ia(),B(a));Oa(a,!1);Qa(a,E.message);return}d=setTimeout;e=a.mn;a.ba.oe=ia();f=a.ba.bk;a.ba.Cf&&(f=Math.round(f*a.ba.Cf/a.ba.ii));f-=a.ba.oe-a.ba.Ng;if(g=a.ba.oe-a.ba.We)a.ba.Vc=Math.round(a.Nd/(10*g))/100,864E5<=g&&(a.re=0,a.ka&&xb(a.ka,!0),sb(a));if(0>f||a.ba.Vc<a.ba.Ve)f=0;a.ba.ji+=a.ba.Cf;a.ba.oe+=f;d(e,f)}else a.sf(),a.Le(),a.Na&&a.Na.stop(ia(),B(a))}k.vl=function(){return 0};
function qb(a,b){a.na.zc&&(a.na.Lh=!0);a.Wc-=a.A;a.A=0;ub(a,a.Nd);a.Nd=0;if(a.na.bc){a.na.bc=!1;a.ka&&wb(a.ka);var c=a.ra.run;c&&(c.textContent="Run")}a.na.tf=b}
var Ab=[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 Bb(a,b,c,d){this.la=a;this.Ra=a.Ra;this.id=b;this.hh=c||"";this.Ea=this.za=0;this.Oc=65535;this.vb=0;this.vd=null;this.yc=this.Oa=0;this.Aj=this.id==Cb?Array(32):[];this.Oh=null;this.wf=!1;Db(this,d)}var Cb=1;function Eb(a){this.za=a;return this.Ea=a<<4}function Fb(a,b){var c,d,e=this.la;a&4?(c=e.Sd.Ea,d=c+e.Sd.Oc):(c=e.uc,d=e.Xd);if(!b||c){c+=a&65528;if(c+7<=d)return b||(e.A-=15),Gb(this,c,a,b);b||C.call(e,13,a)}return null}
function Hb(a){var b=this.la;a=b.Hc+(a<<2);b.ta=D(b,a);this.za=D(b,a+2);b.Ca&=-769;return this.Ea=this.za<<4}function Ib(a){var b=this.la;a<<=3;var c=b.Hc+a;if(c+7<=b.He)return Gb(this,c,a);C.call(b,13,a|3,!0);return null}function Jb(a){return this.Ea+a}function Kb(a){return this.Ea+a}function Lb(a,b,c){return a+b<=this.Oc?this.Ea+a:Mb.call(this,0,0,c)}function Nb(a,b,c){return a+b>this.Oc?this.Ea+a:Mb.call(this,0,0,c)}function Mb(a,b,c){c||C.call(this.la,13,0);return null}
function Ob(a,b,c){return a+b<=this.Oc?this.Ea+a:Pb.call(this,0,0,c)}function Rb(a,b,c){return a+b>this.Oc?this.Ea+a:Pb.call(this,0,0,c)}function Pb(a,b,c){c||C.call(this.la,13,0);return null}
function Sb(a,b){var c=this.la,d=c.eb.Ea,e=this.Oa,f=c.eb.za;if(!b){if(768!=c.eb.type)return C.call(c,10,a,!0),!1;E(c,c.eb.vd+4,c.eb.vb&-769|256)}if(null==c.eb.load(a))return!1;var g=c.eb.Ea;if(b){if(768==c.eb.type)return C.call(c,13,a,!0),!1;E(c,c.eb.vd+4,c.eb.vb|=768);c.eb.type=768}E(c,d+14,c.ta);E(c,d+16,Tb(c));E(c,d+18,c.H);E(c,d+20,c.J);E(c,d+22,c.K);E(c,d+24,c.C);E(c,d+26,c.X);E(c,d+28,c.I);E(c,d+30,c.G);E(c,d+32,c.F);E(c,d+34,c.jb.za);E(c,d+36,c.wa.za);E(c,d+38,c.cb.za);E(c,d+40,c.Rb.za);var d=
38,h=26;Ub(c,D(c,g+16)|(b?16384:0));c.H=D(c,g+18);c.J=D(c,g+20);c.K=D(c,g+22);c.C=D(c,g+24);c.I=D(c,g+28);c.G=D(c,g+30);c.F=D(c,g+32);c.jb.load(D(c,g+34));c.Rb.load(D(c,g+40));Vb(c,D(c,g+14),D(c,g+36));this.Oa<e&&(h=(this.Oa<<2)+2,d=h+2);c.X=D(c,g+h);c.cb.load(D(c,g+d));c.Sd.load(D(c,g+42));b&&E(c,g+0,f);c.gc|=8;return!0}function Wb(a,b){var c,d,e=a.la;b&4||(c=e.uc,d=e.Xd);if(void 0!==c&&(c+=b&65528,c+7<=d))return D(e,c+4);C.call(e,13,b);return null}
function Xb(a,b,c){var d=a.la,e=D(d,b+2),f=D(d,b+0)|(e&255)<<16,d=D(d,b+4);a.za=c;a.Ea=f;a.Oc=d;a.vb=e&65280;a.vd=b;Db(a);a.Mb(c,f,d,e)}
function Gb(a,b,c,d){for(var e=a.la,f=D(e,b+0),g=D(e,b+4),h=g&7936,m=D(e,b+2)|(g&255)<<16,n=c&65528;;){if(a.id==Cb){a.wf=!1;var n=a.Oh,q=c&3,s=(g&24576)>>13;if(6144<=h){if(q=c&3,q>a.Oa){if(!1!==n){m=null;break}n=e.Da();e.cb.load(e.Da());e.X=n;a.wf=!0}}else{if(1024==h){b=m&65535;q<a.Oa&&(q=a.Oa);q>s&&(m=Wb(a,b),null!=m&&7168==(m&7168)&&(q=s));if(q<=s){m=a.Oa;if(null==a.load(b,!0)){m=null;break}e.ta=f;if(a.Oa<m){if(!0!==n){m=null;break}n=e.X;h=0;for(g&=31;g--;)a.Aj[h++]=D(e,e.cb.xc(n,1)),n+=2;g=e.eb.Ea;
c=(a.Oa<<2)+2;d=c+2;f=e.X;n=e.cb.za;e.X=D(e,g+c);e.cb.load(D(e,g+d));F(e,n);for(F(e,f);h;)F(e,a.Aj[--h]);a.wf=!0}return a.Ea}d||C.call(e,13,c,!0)}else if(1536==h||1792==h){b=m&65535;s>a.Oa&&(m=Wb(a,b),null!=m&&7168==(m&7168)&&(s=a.Oa));if(s<=a.Oa){m=a.Oa;if(null==a.load(b,!0)){m=null;break}e.ta=f;if(a.Oa<m){if(!0!==n){m=null;break}g=e.eb.Ea;c=(a.Oa<<2)+2;d=c+2;f=e.X;n=e.cb.za;e.X=D(e,g+c);e.cb.load(D(e,g+d));F(e,n);F(e,f);a.wf=!0}e.Ca=1536==h?e.Ca&-17153:e.Ca&-16641;return a.Ea}d||C.call(e,13,c|1,
!0)}else{if(1280==h){if(!Sb.call(a,m&65535,!0)){m=null;break}return a.Ea}d||C.call(e,13,c,!0)}m=null;break}}else if(2==a.id){if(n&&(4096>h||2048==(h&2560))){d||C.call(e,13,c,0!=g);m=null;break}}else if(3==a.id){if(!n||4096>h||2048==(h&2560)){d||C.call(e,13,c,!0);m=null;break}}else if(4==a.id){if(!n||256!=h&&768!=h){d||C.call(e,10,c,!0);m=null;break}}else if(6==a.id&&!(g&4096)&&768<h){m=null;break}a.za=c;a.Ea=m;a.Oc=f;a.vb=g;a.type=h;a.vd=b;Db(a);break}d||a.Mb(c,m,f,g,0);return m}
Bb.prototype.save=function(){return[this.za,this.Ea,this.Oc,this.vb,this.id,this.hh,this.Oa,this.yc,this.vd]};Bb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.za=a[0],this.Ea=a[1],this.Oc=a[2],this.vb=a[3],this.id=a[4],this.hh=a[5],this.Oa=a[6],this.yc=a[7],this.vd=a[8])};
function Db(a,b){void 0===b&&(b=!!(a.la.gc&1));if(b){a.load=Fb;a.dk=Ib;a.xc=Lb;a.Vb=Ob;if(a.vb&4096){6144==(a.vb&6656)&&(a.Vb=Mb);if(a.vb&2048||!(a.vb&512))a.Vb=Pb;1024==(a.vb&3072)&&(a.xc==Lb&&(a.xc=Nb),a.Vb==Ob&&(a.Vb=Rb))}a.Oa=a.za&3;a.yc=(a.vb&24576)>>13}else a.load=Eb,a.dk=Hb,a.xc=Jb,a.Vb=Kb,a.Oc=65535,a.Oa=a.yc=0,a.vd=null}Bb.prototype.Mb=function(){};
function Yb(a){this.Ha=a.model||8088;var b=0;switch(this.Ha){default:case 8088:b=4772727;break;case 80286:b=6E6}kb.call(this,a,b);this.tj=61442;this.cg=1792;this.bg=4;this.$e=255;this.B=80286<=this.Ha?Zb:$b;this.Qa=ac.slice();this.Hl=bc.slice();this.Il=cc.slice();this.wj=dc;80186<=this.Ha&&(this.$e=31,this.Qa[15]=G,this.Qa[96]=ec,this.Qa[97]=fc,this.Qa[98]=gc,this.Qa[99]=G,this.Qa[100]=G,this.Qa[101]=G,this.Qa[102]=G,this.Qa[103]=G,this.Qa[104]=hc,this.Qa[105]=ic,this.Qa[106]=jc,this.Qa[107]=kc,this.Qa[108]=
lc,this.Qa[109]=mc,this.Qa[110]=nc,this.Qa[111]=oc,this.Qa[192]=pc,this.Qa[193]=qc,this.Qa[200]=rc,this.Qa[201]=sc,this.Qa[241]=tc,this.Hl[7]=uc,this.Il[7]=uc,80286<=this.Ha&&(this.tj=2,this.cg|=28672,this.bg=0,this.Qa[15]=vc,this.Qa[99]=wc,this.Qa[84]=xc));this.eg=[];this.vj=[];this.Vc=this.Bh=0;this.na.uf=this.na.Ul=!1;this.Fa=[];this.Yd=this.Ub=this.sb=this.ce=0;this.T=this.$l;this.U=this.am;this.O=this.cn;this.P=this.dn;this.R=this.wo;this.S=this.xo;yc(this)}v(kb,Yb);
var $b={aj:4,aa:5,sa:6,fa:7,ga:8,Q:9,V:11,W:12,re:4,kk:60,lk:83,Ob:3,tb:9,dc:16,Vg:1,pk:19,rk:28,tk:16,sk:21,qk:37,nk:2,ui:9,ok:5,mk:33,wi:10,vi:8,Kf:3,Jf:15,Hk:51,Ik:1,Jk:2,Kk:4,Gk:32,xi:15,Mk:15,Pb:16,Qb:4,Ok:11,Nk:18,Lk:24,Db:4,Pk:2,yi:16,Qk:17,Di:18,Rk:19,Ci:5,Ei:6,Wk:2,Vk:8,Tk:9,Uk:10,Sk:10,Fi:10,Gi:10,vk:80,xk:144,uk:86,wk:154,zk:101,Bk:165,yk:107,Ak:171,Yk:70,$k:113,Xk:76,Zk:124,Dk:80,Fk:128,Ck:86,Ek:134,Mf:3,Lf:16,Li:10,Ki:8,al:51,ec:8,bl:17,cl:36,kc:11,dl:16,Nf:10,Nd:2,ri:18,si:7,ti:15,zi:12,
Ai:7,Bi:11,Hi:18,Ii:7,Ji:15,Mi:15,Ni:7,Oi:13,Si:11,Ti:7,Ui:8,el:8,hl:12,fl:18,gl:17,il:15,Qi:8,Pi:20,Ri:2,Xi:3,Of:9,Wi:5,Vi:11,Zi:4,Yi:17,jl:11},Zb={aj:0,aa:0,sa:0,fa:0,ga:0,Q:0,V:1,W:1,re:3,kk:14,lk:16,Ob:2,tb:7,dc:7,Vg:0,pk:7,rk:13,tk:7,sk:11,qk:16,nk:3,ui:6,ok:2,mk:13,wi:5,vi:5,Kf:2,Jf:7,Hk:23,Ik:0,Jk:1,Kk:3,Gk:17,xi:7,Mk:11,Pb:7,Qb:3,Ok:7,Nk:11,Lk:15,Db:2,Pk:3,yi:7,Qk:8,Di:8,Rk:8,Ci:4,Ei:4,Wk:2,Vk:3,Tk:5,Uk:2,Sk:3,Fi:5,Gi:3,vk:14,xk:22,uk:17,wk:25,zk:17,Bk:25,yk:20,Ak:28,Yk:13,$k:21,Xk:16,Zk:24,
Dk:13,Fk:21,Ck:16,Ek:24,Mf:2,Lf:7,Li:5,Ki:5,al:19,ec:5,bl:5,cl:17,kc:3,dl:5,Nf:3,Nd:0,ri:8,si:5,ti:9,zi:5,Ai:5,Bi:4,Hi:5,Ii:5,Ji:4,Mi:7,Ni:5,Oi:8,Si:3,Ti:4,Ui:3,el:11,hl:11,fl:15,gl:15,il:7,Qi:5,Pi:8,Ri:0,Xi:2,Of:6,Wi:3,Vi:6,Zi:3,Yi:5,jl:5};k=Yb.prototype;k.di=function(a,b,c,d,e){this.Fa=a;this.Yd=b;this.Ub=c;this.sb=d;this.ce=e};k.reset=function(){this.na.cc&&qb(this);yc(this);nb(this);this.na.Sc=!1};
function yc(a){a.H=0;a.C=0;a.J=0;a.K=0;a.X=0;a.I=0;a.G=0;a.F=0;a.gc=65520;a.Hc=0;a.He=1023;a.Ye=0;a.Ug=-1;a.wa=new Bb(a,Cb,"CS");a.Rb=new Bb(a,2,"DS");a.jb=new Bb(a,2,"ES");a.cb=new Bb(a,3,"SS");a.wl=new Bb(a,0,"NULL");Vb(a,0,65535);80286<=a.Ha&&(a.uc=0,a.Xd=65535,a.Sd=new Bb(a,5,"LDT",!0),a.eb=new Bb(a,4,"TSS",!0),a.Gb=new Bb(a,6,"VER",!0),Vb(a,65520,61440),a.wa.Ea=16711680);Ub(a,0);zc(a);a.lb=0;a.Eb=a.Vf=-1;a.pg=0;a.ha=a.Ia=-1;a.D=a.Rb;a.N=a.cb;a.Z=a.va=0}
k.Yj=function(){var a=this.H+this.C+this.J+this.K+this.X+this.I+this.G+this.F|0;return a=a+this.ta+this.wa.za+this.Rb.za+this.cb.za+this.jb.za+Tb(this)|0};function Cc(a,b,c,d){void 0!==d&&(void 0===a.eg[b]&&(a.eg[b]=[]),a.eg[b].push([c,d]))}function Dc(a,b){var c=a.vj[b];null!=c&&(c(--a.Bh),delete a.vj[b])}function zc(a,b){void 0===b&&(b=!!(a.gc&1));a.wj=b?Ec:dc;Db(a.wa,b);Db(a.Rb,b);Db(a.cb,b);Db(a.jb,b)}
k.save=function(){var a=new I(this);a.set(0,[this.H,this.C,this.J,this.K,this.X,this.I,this.G,this.F,this.Ye]);a.set(1,[this.ta,this.wa.save(),this.Rb.save(),this.cb.save(),this.jb.save(),null!=this.uc?[this.gc,this.uc,this.Xd,this.Hc,this.He,this.Sd.save(),this.eb.save(),this.Ye]:null,Tb(this)]);a.set(2,[this.D.hh,this.N.hh,this.Z,this.va,this.lb,this.ha,this.Ia]);a.set(3,[0,this.te,this.ba.Kd]);a.set(4,eb(this.qa));return a.data()};
k.restore=function(a){var b;b=a[0];this.H=b[0];this.C=b[1];this.J=b[2];this.K=b[3];this.X=b[4];this.I=b[5];this.G=b[6];this.F=b[7];this.Ye=b[8]||0;b=a[1];this.wa.restore(b[1]);this.Rb.restore(b[2]);this.cb.restore(b[3]);this.jb.restore(b[4]);var c=b[5];c&&c.length&&(this.gc=c[0],this.uc=c[1],this.Xd=c[2],this.Hc=c[3],this.He=c[4],this.Sd.restore(c[5]),this.eb.restore(c[6]),this.Ye=c[7],zc(this));Ub(this,b[6]);J(this,b[0]);b=a[2];this.D=Fc(this,b[0]);this.N=Fc(this,b[1]);this.Z=b[2];this.va=b[3];this.lb=
b[4];this.ha=b[5];this.Ia=b[6];b=a[3];this.te=b[1];sb(this,b[2]);a:{b=this.qa;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.Gj){for(var f=0,g=Array(b.Gj),h=0;h<e.length-1;)for(var m=e[h++],n=e[h++];m--;)g[f++]=n;e=g}f=b.Fa[d];if(!f||!f.restore(e)){r("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Va(b,a[c]);b=!0}return b};
function Fc(a,b){switch(b){case "CS":return a.wa;case "DS":return a.Rb;case "SS":return a.cb;case "ES":return a.jb;case "NULL":return a.wl;default:return[0,b,0,0,""]}}function Gc(a,b){a.Ba=a.wa.load(b)+a.ta;a.Z|=a.bg}function Hc(a,b){a.Rb.load(b);a.Z|=a.bg}function Ic(a,b){a.cb.load(b);a.Z|=4}function Jc(a,b){a.jb.load(b);a.Z|=a.bg}function J(a,b){a.Ba=a.wa.Ea+(a.ta=b&65535)}function Vb(a,b,c,d){a.wa.Oh=d;a.ta=b;b=a.wa.load(c);if(null==b)return null;a.Ba=b+a.ta;return a.wa.wf}
function K(a,b){a.Ba=a.wa.Ea+(a.ta=a.ta+b&65535)}function Kc(a){return a.Y&a.ca?1:0}function Lc(a){return Ab[a.ia&255]?4:0}function Mc(a){return(a.ia^a.ma)&16?16:0}function Nc(a){return a.Y&a.ca-1?0:64}function Oc(a){return a.ia&a.ca>>1?128:0}function Pc(a){return(a.ia^a.ma^a.ia>>1)&a.ca>>1?2048:0}function Qc(a){a.Y&=~a.ca}function Rc(a){a.ma=a.ia&16|a.ma&-17}function Sc(a){a.Y|=a.ca-1}function Tc(a){a.ia&=~a.ca;a.ma=a.ia&32896|a.ma&-32897}function Uc(a){a.Y|=a.ca}
function Vc(a){a.ma=~(a.ia&16)&16|a.ma&-17}function Wc(a){a.Y&=~(a.ca-1)}function Xc(a){Oc(a)||(a.ia^=a.ca>>1|a.ca>>2,a.ma^=32896)}function Yc(a){a.ia|=a.ca;a.ma=a.ia&32896|a.ma&-32897}function Tb(a){return a.Ca&-2262|Kc(a)|Lc(a)|Mc(a)|Nc(a)|Oc(a)|Pc(a)}
function Ub(a,b,c){a.ca=256;a.Y=a.ia=a.ma=0;b&1&&Uc(a);b&4||(a.ia|=1);b&16&&(a.ma|=16);b&64||Sc(a);b&128&&Xc(a);b&2048&&Yc(a);a.gc&1||(b&=-61441);void 0===c&&(c=a.wa.Oa);c?b=b&-12289|a.Ca&12288:a.Ye=(b&12288)>>12;c>a.Ye&&(b=b&-513|a.Ca&512);a.Ca=a.Ca&~a.cg|b&a.cg|a.tj;a.Ca&256&&(a.lb|=2,a.Z|=4)}
k.Fb=function(a,b,c){var d=!1;switch(b){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 "V":this.ra[b]=c;d=!0;break;default:d=kb.prototype.Fb.call(this,a,b,c)}return d};function Zc(a,b){return a.Fa[(b&a.Yd)>>a.Ub].Cc(b&a.sb)}
function D(a,b){var c=b&a.sb,d=(b&a.Yd)>>a.Ub;a.A-=a.B.aj;return c!=a.sb?a.Fa[d].oo(c):a.Fa[d++].Cc(c)|a.Fa[d&a.ce].Cc(0)<<8}function $c(a,b,c){a.Fa[(b&a.Yd)>>a.Ub].Fc(b&a.sb,c&255)}function E(a,b,c){var d=b&a.sb;b=(b&a.Yd)>>a.Ub;a.A-=a.B.aj;d!=a.sb?a.Fa[b].zo(d,c&65535):(a.Fa[b++].Fc(d,c&255),a.Fa[b&a.ce].Fc(0,c>>8&255))}k.$l=function(a,b){this.Yf=a;this.ha=a.xc(this.Rf=b,0);return this.Z&1?0:Zc(this,this.ha)};k.am=function(a,b){this.Yf=a;this.ha=a.xc(this.Rf=b,1);return this.Z&1?0:D(this,this.ha)};
k.cn=function(a,b){this.Yf=a;this.Ia=this.ha=a.xc(this.Rf=b,0);return this.Z&1?0:Zc(this,this.ha)};k.dn=function(a,b){this.Yf=a;this.Ia=this.ha=a.xc(this.Rf=b,1);return this.Z&1?0:D(this,this.ha)};k.wo=function(a){this.Z&2||$c(this,this.Yf.Vb(this.Rf,0),a)};k.xo=function(a){this.Z&2||E(this,this.Yf.Vb(this.Rf,1),a)};k.da=function(){var a=Zc(this,this.Ba);this.Ba=this.wa.Ea+(this.ta=this.ta+1&65535);return a};
k.M=function(){var a=Zc(this,this.Ba)<<24>>24;this.Ba=this.wa.Ea+(this.ta=this.ta+1&65535);return a&65535};k.L=function(){var a=D(this,this.Ba);this.Ba=this.wa.Ea+(this.ta=this.ta+2&65535);return a};k.Da=function(){var a=this.X;this.X=this.X+2&65535;return D(this,this.cb.xc(a,1))};function F(a,b){var c=a.X=a.X-2&65535;E(a,a.cb.Vb(c,1),b)}
k.Le=function(a){if(a||!this.na.cc||this.na.Oj)A(this,"AX",this.H),A(this,"BX",this.C),A(this,"CX",this.J),A(this,"DX",this.K),A(this,"SP",this.X),A(this,"BP",this.I),A(this,"SI",this.G),A(this,"DI",this.F),A(this,"CS",this.wa.za),A(this,"DS",this.Rb.za),A(this,"SS",this.cb.za),A(this,"ES",this.jb.za),A(this,"IP",this.ta),a=Tb(this),A(this,"PS",a),A(this,"C",a&1?1:0,1),A(this,"P",a&4?1:0,1),A(this,"A",a&16?1:0,1),A(this,"Z",a&64?1:0,1),A(this,"S",a&128?1:0,1),A(this,"T",a&256?1:0,1),A(this,"I",a&
512?1:0,1),A(this,"D",a&1024?1:0,1),A(this,"V",a&2048?1:0,1);if(a=this.ra.speed)a.textContent=this.na.cc&&this.ba.Uc?this.ba.Uc.toFixed(2)+"Mhz":"Stopped"};
k.yl=function(a){this.na.uf=!0;this.na.Ul=!1;this.na.Wj=!1;this.Vc=this.A=a;this.ka&&!a&&xb(this.ka);a||(this.Z|=4);do{if(a=this.Z&240)this.va|=a;else if(this.Sf=this.Ba,this.ha=this.Ia=-1,this.D=this.Rb,this.N=this.cb,this.va=this.Z&256,this.lb){a:{if(!(this.Z&4))if(this.lb&1&&this.Ca&512){if(a=ad(this.ka),-1<=a&&(this.lb&=-2,0<=a)){this.lb&=-5;bd.call(this,a,null,11);break a}}else if(this.lb&2){this.lb&=-3;bd.call(this,1,null,11);break a}if(a=this.lb&8){a=this.ka;for(var b=!1,c=0;c<a.Za;c++)for(var d=
a.Za[c],e=0;e<d.xb.length;e++){var f=d.xb[e];f.md||(cd(a,f),f.md||(b=!0))}a=!b}a&&(this.lb&=-9)}if(this.lb&4){this.Z=this.A=0;break}}this.Z=0;this.Qa[this.da()].call(this)}while(0<this.A);return this.na.uf?this.Vc-this.A:void 0===this.na.uf?0:-1};za(function(){for(var a=x(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Yb(d);Na(d,c)}});function dd(a,b){this.ma=a^b;this.ca=256;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return(this.Y=this.ia=a+b)&255}
function ed(a,b){this.ca=256;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return(this.Y=this.ia=this.ma=a|b)&255}function fd(a,b){this.ma=a^b;this.Y=this.ia=a+b+(this.Y&this.ca?1:0);this.ca=256;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return this.Y&255}function gd(a,b){this.ma=a^b;this.Y=this.ia=a-b-(this.Y&this.ca?1:0);this.ca=256;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return this.Y&255}
function hd(a,b){this.ca=256;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return(this.Y=this.ia=this.ma=a&b)&255}function id(a,b){this.ma=a^b;this.ca=256;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return(this.Y=this.ia=a-b)&255}function jd(a,b){this.ca=256;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return(this.Y=this.ia=this.ma=a^b)&255}
function kd(a,b){this.ma=a^b;this.ca=256;this.Y=this.ia=a-b;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.ui:this.B.tb;this.Z|=2;return a}function ld(a,b){this.ma=a^b;this.ca=65536;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return(this.Y=this.ia=a+b)&65535}function md(a,b){this.ca=65536;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return(this.Y=this.ia=this.ma=a|b)&65535}
function nd(a,b){this.ma=a^b;this.Y=this.ia=a+b+(this.Y&this.ca?1:0);this.ca=65536;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return this.Y&65535}function od(a,b){this.ma=a^b;this.Y=this.ia=a-b-(this.Y&this.ca?1:0);this.ca=65536;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return this.Y&65535}function pd(a,b){this.ca=65536;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return(this.Y=this.ia=this.ma=a&b)&65535}
function qd(a,b){this.ma=a^b;this.ca=65536;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return(this.Y=this.ia=a-b)&65535}function rd(a,b){this.ca=65536;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.tb:this.B.dc;return(this.Y=this.ia=this.ma=a^b)&65535}function sd(a,b){this.ma=a^b;this.ca=65536;this.Y=this.ia=a-b;this.A-=0>this.Ia?0>this.ha?this.B.Ob:this.B.ui:this.B.tb;this.Z|=2;return a}function td(a,b){this.Y=this.Y&this.ca-1|(a&b?this.ca:0);(a^a>>1)&b>>1?Yc(this):Tc(this)}
function ud(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;td.call(this,d,256)}return c}function vd(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;td.call(this,d,65536)}return c}function wd(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);td.call(this,d,256)}return c}function zd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);td.call(this,d,65536)}return c}
function Ad(a,b){var c=a;if(b){var d;(d=(b&this.$e)%9)?(d=a<<d|(this.Y&this.ca?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.Y&this.ca?1:0)<<8;td.call(this,d,256)}return c}function Bd(a,b){var c=a;if(b){var d;(d=(b&this.$e)%17)?(d=a<<d|(this.Y&this.ca?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.Y&this.ca?1:0)<<16;td.call(this,d,65536)}return c}function Cd(a,b){var c=a;b&&(c=(b&this.$e)%9,c=a>>c|(this.Y&this.ca?1:0)<<8-c|a<<9-c,td.call(this,c,256),c&=255);return c}
function Dd(a,b){var c=a;b&&(c=(b&this.$e)%17,c=a>>c|(this.Y&this.ca?1:0)<<16-c|a<<17-c,td.call(this,c,65536),c&=65535);return c}function Ed(a,b){var c=a;b&&(c=8<b?this.Y=this.ia=0:(this.Y=this.ia=a<<b)&255,this.ma=0,this.ca=256);return c}function Fd(a,b){var c=a;b&&(c=16<b?this.Y=this.ia=0:(this.Y=this.ia=a<<b)&65535,this.ma=0,this.ca=65536);return c}
function Gd(a,b){if(b){var c=8<b?0:a>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.ma=a^this.Y;this.ca=256;a=this.Y}return a&255}function Hd(a,b){if(b){var c=16<b?0:a>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.ma=a^this.Y;this.ca=65536;a=this.Y}return a&65535}function Id(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.ma=a^this.Y;this.ca=256;a=this.Y}return a&255}
function Jd(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.ma=a^this.Y;this.ca=65536;a=this.Y}return a&65535}function Kd(){this.A-=0>this.ha?2:this.B.il;return 1}function Ld(){var a=this.J&this.$e;this.A-=(0>this.ha?this.B.Qi:this.B.Pi)+(a<<this.B.Ri);return a}function Md(){var a=this.da();this.A-=(0>this.ha?this.B.Qi:this.B.Pi)+(a<<this.B.Ri);return a}function Nd(){return null}function Od(a){C.call(this,13,0);return a}
function uc(a){G.call(this);return a}function L(a){M.call(this);return a}
var Pd=[dd,ed,fd,gd,hd,id,jd,kd],Qd=[ld,md,nd,od,pd,qd,rd,sd],Rd=[function(a,b){this.A-=0>this.Ia?this.B.ec:this.B.bl;return b},Od,Od,Od,Od,Od,Od,Od],Sd=[function(a,b){this.A-=0>this.Ia?this.B.Uk:this.B.Sk;return b},L,L,L,L,L,L,L],Td=[ud,wd,Ad,Cd,Ed,Gd,L,Id],Ud=[vd,zd,Bd,Dd,Fd,Hd,L,Jd],Wd=[function(a,b){b=this.da();this.Y=this.ia=this.ma=a&b;this.ca=256;this.A-=0>this.ha?this.B.Wi:this.B.Vi;this.Z|=2;return a},L,function(a){this.A-=0>this.ha?this.B.Mf:this.B.Lf;return a^255},function(a,b){b=0;this.ma=
a^b;this.ca=256;this.A-=0>this.ha?this.B.Mf:this.B.Lf;return(this.Y=this.ia=b-a)&255},function(a){this.H=this.Eb=(this.Y=(this.H&255)*a)&65535;this.ma=this.ia=this.Y;this.ca=256;this.H&65280?(Uc(this),Yc(this)):(Qc(this),Tc(this));this.A-=0>this.ha?this.B.Yk:this.B.Xk;this.Z|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.Eb=b&65535;this.Y=this.ma=this.ia=b;this.ca=256;127<b||-128>b?(Uc(this),Yc(this)):(Qc(this),Tc(this));this.A-=0>this.ha?this.B.Dk:this.B.Ck;this.Z|=2;return a},
function(a){if(!a)return Vd.call(this),a;var b=this.H/a;if(255<b)return Vd.call(this),a;this.Eb=this.H=b&255|(this.H%a&255)<<8;this.ia=this.ma=this.Y=b|256;this.ca=256;this.A-=0>this.ha?this.B.vk:this.B.uk;this.Z|=2;return a},function(a){if(!a)return Vd.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Vd.call(this),a;this.Eb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.ia=this.ma=this.Y=b|256;this.ca=256;this.A-=0>this.ha?this.B.zk:this.B.yk;this.Z|=2;return a}],
Xd=[function(a,b){b=this.L();this.Y=this.ia=this.ma=a&b;this.ca=65536;this.A-=0>this.ha?this.B.Wi:this.B.Vi;this.Z|=2;return a},L,function(a){this.A-=0>this.ha?this.B.Mf:this.B.Lf;return a^65535},function(a,b){b=0;this.ma=a^b;this.ca=65536;this.A-=0>this.ha?this.B.Mf:this.B.Lf;return(this.Y=this.ia=b-a)&65535},function(a){this.Eb=this.H=(this.Y=this.H*a)&65535;this.Vf=this.K=this.Y>>16&65535;this.ma=this.ia=this.Y;this.ca=65536;this.K?(Uc(this),Yc(this)):(Qc(this),Tc(this));this.A-=0>this.ha?this.B.$k:
this.B.Zk;this.Z|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.Eb=b&65535;this.K=this.Vf=b>>16&65535;this.Y=this.ma=this.ia=b;this.ca=65536;32767<b||-32768>b?(Uc(this),Yc(this)):(Qc(this),Tc(this));this.A-=0>this.ha?this.B.Fk:this.B.Ek;this.Z|=2;return a},function(a,b){if(!a)return Vd.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Vd.call(this),a;this.Eb=this.H=c&65535;this.Vf=this.K=b%a&65535;this.ia=this.ma=this.Y=c|65536;this.ca=65536;this.A-=
0>this.ha?this.B.xk:this.B.wk;this.Z|=2;return a},function(a,b){if(!a)return Vd.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Vd.call(this),a;this.Eb=this.H=d&65535;this.Vf=this.K=b%c&65535;this.ia=this.ma=this.Y=d|65536;this.ca=65536;this.A-=0>this.ha?this.B.Bk:this.B.Ak;this.Z|=2;return a}],bc=[function(a){this.ma=a;a=(this.ia=a+1)&255;this.Y=a|(this.Y&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.Kf:this.B.Jf;return a},function(a){this.ma=
a;a=(this.ia=a-1)&255;this.Y=a|(this.Y&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.Kf:this.B.Jf;return a},L,L,L,L,L,L],cc=[function(a){this.ma=a;a=(this.ia=a+1)&65535;this.Y=a|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.Kf:this.B.Jf;return a},function(a){this.ma=a;a=(this.ia=a-1)&65535;this.Y=a|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.Kf:this.B.Jf;return a},function(a){F(this,this.ta);J(this,a);this.A-=0>this.ha?this.B.tk:this.B.sk;this.Z|=2;return a},
function(a){if(0>this.ha)return L.call(this,a);Yd.call(this,a,D(this,this.ha+2));this.A-=this.B.qk;this.Z|=2;return a},function(a){J(this,a);this.A-=0>this.ha?this.B.Ok:this.B.Nk;this.Z|=2;return a},function(a){if(0>this.ha)return L.call(this,a);Vb(this,a,D(this,this.ha+2));this.A-=this.B.Lk;this.Z|=2;return a},function(a){var b=a;this.Z&512&&(a=a-2&65535,80286>this.Ha&&(b=a));F(this,b);this.A-=0>this.ha?this.B.kc:this.B.dl;this.Z|=2;return a},Od],Zd=[ud,wd,Ad,Cd,Ed,Gd,L,Id],$d=[vd,zd,Bd,Dd,Fd,Hd,
L,Jd];function ae(a,b){this.A-=0>this.Ia?0>this.ha?this.B.Wk:this.B.Vk:this.B.Tk;return b}function be(){return ae.call(this,0,this.Eb)}function ce(a,b){this.Y=this.ia=this.ma=a&b;this.ca=256;this.A-=0>this.Ia?0>this.ha?this.B.Xi:this.B.Of:this.B.Of;this.Z|=2;return a}function de(a,b){this.Y=this.ia=this.ma=a&b;this.ca=65536;this.A-=0>this.Ia?0>this.ha?this.B.Xi:this.B.Of:this.B.Of;this.Z|=2;return a}
function ee(a,b){var c=(b<<16>>16)*(this.da()<<24>>24);this.Y=this.ma=this.ia=c;this.ca=256;32767<c||-32768>c?(Uc(this),Yc(this)):(Qc(this),Tc(this));this.A-=0>this.ha?21:24;return c&65535}function fe(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.Y=this.ma=this.ia=c;this.ca=65536;32767<c||-32768>c?(Uc(this),Yc(this)):(Qc(this),Tc(this));this.A-=0>this.ha?21:24;return c&65535}function ge(a){return a}function he(a){if(0>this.ha)return M.call(this),a;this.A-=this.B.Pk;return this.ha}
function ie(a,b){if(0>this.ha)return M.call(this),a;Hc(this,D(this,this.ha+2));this.A-=this.B.yi;return b}function je(a,b){if(0>this.ha)return M.call(this),a;Jc(this,D(this,this.ha+2));this.A-=this.B.yi;return b}function ke(a){if(0>this.ha)return G.call(this),a;var b=a<<16>>16,c=D(this,this.ha)<<16>>16,d=D(this,this.ha+2)<<16>>16;this.A-=this.B.mk;if(b<c||b>d)J(this,this.Sf-this.wa.Ea),bd.call(this,5,null,0);this.Z|=2;return a}
function le(a,b){this.A-=10+(0>this.ha?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Wc(this),a;Sc(this);return a}function me(a,b){this.A-=14+(0>this.ha?0:2);if(null!=this.Gb.load(b,!0)&&this.Gb.yc>=this.wa.Oa&&this.Gb.yc>=(b&3))return Wc(this),this.Gb.vb&65280;Sc(this);return a}function ne(a,b){this.A-=14+(0>this.ha?0:2);if(b&65528&&null!=this.Gb.load(b,!0)&&(7168==(this.Gb.vb&7168)||this.Gb.yc>=this.wa.Oa)&&this.Gb.yc>=(b&3))return Wc(this),this.Gb.Oc;Sc(this);return a}
function oe(a,b){if(0>this.ha){switch(this.pg&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Zi}else this.Ia=this.ha,this.R(a),this.A-=this.B.Yi;return b}
function pe(a,b){if(0>this.ha){switch(this.pg&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.X=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Zi}else this.Ia=this.ha,this.S(a),this.A-=this.B.Yi;return b}function qe(a){a|=this.gc&1;this.gc=this.gc&65520|a&-65521;this.gc&1&&zc(this,!0)}function Yd(a,b){var c=this.wa.za,d=this.ta;null!=Vb(this,a,b,!0)&&(F(this,c),F(this,d))}
function bd(a,b,c){this.A-=this.B.Hk+c;this.wa.Oh=!0;c=Tb(this);var d=this.wa.za,e=this.ta;a=this.wa.dk(a);null!=a&&(this.Ba=a+this.ta,F(this,c),F(this,d),F(this,e),null!=b&&F(this,b),this.Ug=-1)}function Vd(){J(this,this.Sf-this.wa.Ea);bd.call(this,0,null,2)}
function C(a,b,c){if(this.na.uf){var d=!1;if(80186<=this.Ha)if(0>this.Ug)J(this,this.Sf-this.wa.Ea),d=!0;else if(8!=this.Ug)b=0,a=8,d=!0;else{re.call(this,-1,0,c);yc(this);return}re.call(this,a,b,c)&&(d=!1);d&&bd.call(this,this.Ug=a,b,0);this.Z&=-4}else this.Mb("Fault "+p(a,2)+" blocked by Debugger",se),J(this,this.Sf-this.wa.Ea)}
function re(a,b,c){var d=ab(this.qa,this.Ba);204==d&&(c=!1);983040<=this.Ba&&1048575>=this.Ba&&(c=!1);c&&(a=(c?"\n":"")+"Fault "+p(a,2)+(null!=b?" ("+p(b,4)+")":"")+" on opcode 0x"+p(d,2)+" at "+da(this.ta,this.wa.za)+" (%"+p(this.Ba,6)+")",b=this.na.cc,this.Mb(a)?c&&(c=b,qb(this.Ra)):(this.Aa(a),qb(this)));return c}function te(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}function ue(a){a=a.call(this,this.H&255,this.J&255);this.H=this.H&-256|a}
function ve(a){a=a.call(this,this.H&255,this.K&255);this.H=this.H&-256|a}function we(a){a=a.call(this,this.H&255,this.C&255);this.H=this.H&-256|a}function xe(a){a=a.call(this,this.H&255,this.H>>8);this.H=this.H&-256|a}function ye(a){a=a.call(this,this.H&255,this.J>>8);this.H=this.H&-256|a}function ze(a){a=a.call(this,this.H&255,this.K>>8);this.H=this.H&-256|a}function Ae(a){a=a.call(this,this.H&255,this.C>>8);this.H=this.H&-256|a}
function Be(a){a=a.call(this,this.J&255,this.H&255);this.J=this.J&-256|a}function Ce(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function De(a){a=a.call(this,this.J&255,this.K&255);this.J=this.J&-256|a}function Ee(a){a=a.call(this,this.J&255,this.C&255);this.J=this.J&-256|a}function Fe(a){a=a.call(this,this.J&255,this.H>>8);this.J=this.J&-256|a}function Ge(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}
function He(a){a=a.call(this,this.J&255,this.K>>8);this.J=this.J&-256|a}function Ie(a){a=a.call(this,this.J&255,this.C>>8);this.J=this.J&-256|a}function Je(a){a=a.call(this,this.K&255,this.H&255);this.K=this.K&-256|a}function Ke(a){a=a.call(this,this.K&255,this.J&255);this.K=this.K&-256|a}function Le(a){a=a.call(this,this.K&255,this.K&255);this.K=this.K&-256|a}function Me(a){a=a.call(this,this.K&255,this.C&255);this.K=this.K&-256|a}
function Ne(a){a=a.call(this,this.K&255,this.H>>8);this.K=this.K&-256|a}function Oe(a){a=a.call(this,this.K&255,this.J>>8);this.K=this.K&-256|a}function Pe(a){a=a.call(this,this.K&255,this.K>>8);this.K=this.K&-256|a}function Qe(a){a=a.call(this,this.K&255,this.C>>8);this.K=this.K&-256|a}function Re(a){a=a.call(this,this.C&255,this.H&255);this.C=this.C&-256|a}function Se(a){a=a.call(this,this.C&255,this.J&255);this.C=this.C&-256|a}
function Te(a){a=a.call(this,this.C&255,this.K&255);this.C=this.C&-256|a}function Ue(a){a=a.call(this,this.C&255,this.C&255);this.C=this.C&-256|a}function Ve(a){a=a.call(this,this.C&255,this.H>>8);this.C=this.C&-256|a}function We(a){a=a.call(this,this.C&255,this.J>>8);this.C=this.C&-256|a}function Xe(a){a=a.call(this,this.C&255,this.K>>8);this.C=this.C&-256|a}function Ye(a){a=a.call(this,this.C&255,this.C>>8);this.C=this.C&-256|a}
function Ze(a){a=a.call(this,this.H>>8,this.H&255);this.H=this.H&255|a<<8}function $e(a){a=a.call(this,this.H>>8,this.J&255);this.H=this.H&255|a<<8}function af(a){a=a.call(this,this.H>>8,this.K&255);this.H=this.H&255|a<<8}function bf(a){a=a.call(this,this.H>>8,this.C&255);this.H=this.H&255|a<<8}function cf(a){a=a.call(this,this.H>>8,this.H>>8);this.H=this.H&255|a<<8}function df(a){a=a.call(this,this.H>>8,this.J>>8);this.H=this.H&255|a<<8}
function ef(a){a=a.call(this,this.H>>8,this.K>>8);this.H=this.H&255|a<<8}function ff(a){a=a.call(this,this.H>>8,this.C>>8);this.H=this.H&255|a<<8}function gf(a){a=a.call(this,this.J>>8,this.H&255);this.J=this.J&255|a<<8}function hf(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function jf(a){a=a.call(this,this.J>>8,this.K&255);this.J=this.J&255|a<<8}function kf(a){a=a.call(this,this.J>>8,this.C&255);this.J=this.J&255|a<<8}
function lf(a){a=a.call(this,this.J>>8,this.H>>8);this.J=this.J&255|a<<8}function mf(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function nf(a){a=a.call(this,this.J>>8,this.K>>8);this.J=this.J&255|a<<8}function of(a){a=a.call(this,this.J>>8,this.C>>8);this.J=this.J&255|a<<8}function pf(a){a=a.call(this,this.K>>8,this.H&255);this.K=this.K&255|a<<8}function qf(a){a=a.call(this,this.K>>8,this.J&255);this.K=this.K&255|a<<8}
function rf(a){a=a.call(this,this.K>>8,this.K&255);this.K=this.K&255|a<<8}function sf(a){a=a.call(this,this.K>>8,this.C&255);this.K=this.K&255|a<<8}function tf(a){a=a.call(this,this.K>>8,this.H>>8);this.K=this.K&255|a<<8}function uf(a){a=a.call(this,this.K>>8,this.J>>8);this.K=this.K&255|a<<8}function vf(a){a=a.call(this,this.K>>8,this.K>>8);this.K=this.K&255|a<<8}function wf(a){a=a.call(this,this.K>>8,this.C>>8);this.K=this.K&255|a<<8}
function xf(a){a=a.call(this,this.C>>8,this.H&255);this.C=this.C&255|a<<8}function yf(a){a=a.call(this,this.C>>8,this.J&255);this.C=this.C&255|a<<8}function zf(a){a=a.call(this,this.C>>8,this.K&255);this.C=this.C&255|a<<8}function Af(a){a=a.call(this,this.C>>8,this.C&255);this.C=this.C&255|a<<8}function Bf(a){a=a.call(this,this.C>>8,this.H>>8);this.C=this.C&255|a<<8}function Cf(a){a=a.call(this,this.C>>8,this.J>>8);this.C=this.C&255|a<<8}
function Df(a){a=a.call(this,this.C>>8,this.K>>8);this.C=this.C&255|a<<8}function Ef(a){a=a.call(this,this.C>>8,this.C>>8);this.C=this.C&255|a<<8}function Ff(a){this.H=a.call(this,this.H,this.H)}function Gf(a){this.H=a.call(this,this.H,this.J)}function Hf(a){this.H=a.call(this,this.H,this.K)}function If(a){this.H=a.call(this,this.H,this.C)}function Jf(a){this.H=a.call(this,this.H,this.X)}function Kf(a){this.H=a.call(this,this.H,this.I)}function Lf(a){this.H=a.call(this,this.H,this.G)}
function Mf(a){this.H=a.call(this,this.H,this.F)}function Nf(a){this.J=a.call(this,this.J,this.H)}function Of(a){this.J=a.call(this,this.J,this.J)}function Pf(a){this.J=a.call(this,this.J,this.K)}function Qf(a){this.J=a.call(this,this.J,this.C)}function Rf(a){this.J=a.call(this,this.J,this.X)}function Sf(a){this.J=a.call(this,this.J,this.I)}function Tf(a){this.J=a.call(this,this.J,this.G)}function Uf(a){this.J=a.call(this,this.J,this.F)}function Vf(a){this.K=a.call(this,this.K,this.H)}
function Wf(a){this.K=a.call(this,this.K,this.J)}function Xf(a){this.K=a.call(this,this.K,this.K)}function Yf(a){this.K=a.call(this,this.K,this.C)}function Zf(a){this.K=a.call(this,this.K,this.X)}function $f(a){this.K=a.call(this,this.K,this.I)}function ag(a){this.K=a.call(this,this.K,this.G)}function bg(a){this.K=a.call(this,this.K,this.F)}function cg(a){this.C=a.call(this,this.C,this.H)}function dg(a){this.C=a.call(this,this.C,this.J)}function eg(a){this.C=a.call(this,this.C,this.K)}
function fg(a){this.C=a.call(this,this.C,this.C)}function gg(a){this.C=a.call(this,this.C,this.X)}function hg(a){this.C=a.call(this,this.C,this.I)}function ig(a){this.C=a.call(this,this.C,this.G)}function jg(a){this.C=a.call(this,this.C,this.F)}function kg(a){this.X=a.call(this,this.X,this.H)}function lg(a){this.X=a.call(this,this.X,this.J)}function mg(a){this.X=a.call(this,this.X,this.K)}function ng(a){this.X=a.call(this,this.X,this.C)}function og(a){this.X=a.call(this,this.X,this.X)}
function pg(a){this.X=a.call(this,this.X,this.I)}function qg(a){this.X=a.call(this,this.X,this.G)}function rg(a){this.X=a.call(this,this.X,this.F)}function sg(a){this.I=a.call(this,this.I,this.H)}function tg(a){this.I=a.call(this,this.I,this.J)}function ug(a){this.I=a.call(this,this.I,this.K)}function vg(a){this.I=a.call(this,this.I,this.C)}function wg(a){this.I=a.call(this,this.I,this.X)}function xg(a){this.I=a.call(this,this.I,this.I)}function yg(a){this.I=a.call(this,this.I,this.G)}
function zg(a){this.I=a.call(this,this.I,this.F)}function Ag(a){this.G=a.call(this,this.G,this.H)}function Bg(a){this.G=a.call(this,this.G,this.J)}function Cg(a){this.G=a.call(this,this.G,this.K)}function Dg(a){this.G=a.call(this,this.G,this.C)}function Eg(a){this.G=a.call(this,this.G,this.X)}function Fg(a){this.G=a.call(this,this.G,this.I)}function Gg(a){this.G=a.call(this,this.G,this.G)}function Hg(a){this.G=a.call(this,this.G,this.F)}function Ig(a){this.F=a.call(this,this.F,this.H)}
function Jg(a){this.F=a.call(this,this.F,this.J)}function Kg(a){this.F=a.call(this,this.F,this.K)}function Lg(a){this.F=a.call(this,this.F,this.C)}function Mg(a){this.F=a.call(this,this.F,this.X)}function Ng(a){this.F=a.call(this,this.F,this.I)}function Og(a){this.F=a.call(this,this.F,this.G)}function Pg(a){this.F=a.call(this,this.F,this.F)}
var Qg=[function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.H&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.H&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.G&65535),this.H&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.H&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.G),this.H&255);this.R(a);this.A-=this.B.aa},
0,0,1,1,0,1,0,0,1];function Bb(a,b,c,d){this.la=a;this.Sa=a.Sa;this.id=b;this.gh=c||"";this.Ia=this.ya=0;this.Oc=65535;this.jb=0;this.ud=-4;this.kc=this.Za=0;this.yj=this.id==Cb?Array(32):[];this.Mh=null;this.Hg=!1;Db(this,d)}var Cb=1;function Eb(a){this.ya=a;return this.Ia=a<<4}function Fb(a,b){var c,d,e=this.la;a&4?(c=e.Sd.Ia,d=c+e.Sd.Oc):(c=e.Hc,d=e.Fe);if(!b||c){c+=a&65528;if(c+7<=d)return b||(e.A-=15),Gb(this,c,a,b);b||C.call(e,13,a)}return-4}
function Hb(a){var b=this.la;a=b.Ic+(a<<2);b.ta=D(b,a);this.ya=D(b,a+2);b.Ca&=-769;return this.Ia=this.ya<<4}function Ib(a){var b=this.la;a<<=3;var c=b.Ic+a;if(c+7<=b.Ge)return Gb(this,c,a);C.call(b,13,a|3,!0);return-4}function Jb(a){return this.Ia+a}function Kb(a){return this.Ia+a}function Lb(a,b,c){return a+b<=this.Oc?this.Ia+a:Mb.call(this,0,0,c)}function Nb(a,b,c){return a+b>this.Oc?this.Ia+a:Mb.call(this,0,0,c)}function Mb(a,b,c){c||C.call(this.la,13,0);return-4}
function Ob(a,b,c){return a+b<=this.Oc?this.Ia+a:Pb.call(this,0,0,c)}function Rb(a,b,c){return a+b>this.Oc?this.Ia+a:Pb.call(this,0,0,c)}function Pb(a,b,c){c||C.call(this.la,13,0);return-4}
function Sb(a,b){var c=this.la,d=c.ib.Ia,e=this.Za,f=c.ib.ya;if(!b){if(768!=c.ib.type)return C.call(c,10,a,!0),!1;F(c,c.ib.ud+4,c.ib.jb&-769|256)}if(-4==c.ib.load(a))return!1;var g=c.ib.Ia;if(b){if(768==c.ib.type)return C.call(c,13,a,!0),!1;F(c,c.ib.ud+4,c.ib.jb|=768);c.ib.type=768}F(c,d+14,c.ta);F(c,d+16,Tb(c));F(c,d+18,c.H);F(c,d+20,c.J);F(c,d+22,c.K);F(c,d+24,c.C);F(c,d+26,c.X);F(c,d+28,c.I);F(c,d+30,c.G);F(c,d+32,c.F);F(c,d+34,c.Pa.ya);F(c,d+36,c.xa.ya);F(c,d+38,c.qb.ya);F(c,d+40,c.wb.ya);var d=
38,h=26;Ub(c,D(c,g+16)|(b?16384:0));c.H=D(c,g+18);c.J=D(c,g+20);c.K=D(c,g+22);c.C=D(c,g+24);c.I=D(c,g+28);c.G=D(c,g+30);c.F=D(c,g+32);c.Pa.load(D(c,g+34));c.wb.load(D(c,g+40));Vb(c,D(c,g+14),D(c,g+36));this.Za<e&&(h=(this.Za<<2)+2,d=h+2);c.X=D(c,g+h);c.qb.load(D(c,g+d));c.Sd.load(D(c,g+42));b&&F(c,g+0,f);c.gc|=8;return!0}function Wb(a,b,c){var d=a.la,e=D(d,b+2),f=D(d,b+0)|(e&255)<<16,d=D(d,b+4);a.ya=c;a.Ia=f;a.Oc=d;a.jb=e&65280;a.ud=b;Db(a)}
function Gb(a,b,c,d){for(var e=a.la,f=D(e,b+0),g=D(e,b+4),h=g&7936,m=D(e,b+2)|(g&255)<<16,n=c&65528;;){var q;if(a.id==Cb){a.Hg=!1;var n=a.Mh,s,t,x=c&3,E=(g&24576)>>13;if(6144<=h){x=c&3;if(x>a.Za){if(!1!==n&&!(E==a.Za||g&1024&&E<=a.Za)){m=-4;break}s=e.Ga();e.qb.load(e.Ga());e.X=s;a.Hg=!0}s=!1}else if(1024==h)s=!0,t=-1,q=c,x<a.Za&&(x=a.Za);else if(1536==h)s=!0,t=-17153,q=c|1;else if(1792==h)s=!0,t=-16641,q=c|1;else if(1280==h){if(!Sb.call(a,m&65535,!0)){m=-4;break}return a.Ia}if(s){b=m&65535;if(x<=
E){d=a.Za;if(-4==a.load(b,!0)){m=-4;break}e.ta=f;if(a.Za<d){if(!0!==n){m=-4;break}s=e.X;f=0;for(g&=31;g--;)a.yj[f++]=D(e,e.qb.yc(s,1)),s+=2;g=e.ib.Ia;d=(a.Za<<2)+2;n=d+2;q=e.X;b=e.qb.ya;e.X=D(e,g+d);e.qb.load(D(e,g+n));G(e,b);for(G(e,q);f;)G(e,a.yj[--f]);a.Hg=!0}e.Ca&=t;return a.Ia}d||C.call(e,13,q,!0);m=-4;break}else if(!1!==s){d||C.call(e,13,c,!0);m=-4;break}}else if(2==a.id){if(n&&(4096>h||2048==(h&2560))){d||C.call(e,13,c,!!g);m=-4;break}}else if(3==a.id){if(!n||4096>h||2048==(h&2560)){d||C.call(e,
13,c,!0);m=-4;break}}else if(4==a.id){if(!n||256!=h&&768!=h){d||C.call(e,10,c,!0);m=-4;break}}else if(6==a.id&&!(g&4096)&&768<h){m=-4;break}a.ya=c;a.Ia=m;a.Oc=f;a.jb=g;a.type=h;a.ud=b;Db(a);break}return m}Bb.prototype.save=function(){return[this.ya,this.Ia,this.Oc,this.jb,this.id,this.gh,this.Za,this.kc,this.ud]};Bb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ya=a[0],this.Ia=a[1],this.Oc=a[2],this.jb=a[3],this.id=a[4],this.gh=a[5],this.Za=a[6],this.kc=a[7],this.ud=a[8])};
function Db(a,b){void 0===b&&(b=!!(a.la.gc&1));if(b){a.load=Fb;a.ak=Ib;a.yc=Lb;a.Ub=Ob;if(a.jb&4096){6144==(a.jb&6656)&&(a.Ub=Mb);if(a.jb&2048||!(a.jb&512))a.Ub=Pb;1024==(a.jb&3072)&&(a.yc==Lb&&(a.yc=Nb),a.Ub==Ob&&(a.Ub=Rb))}a.Za=a.ya&3;a.kc=(a.jb&24576)>>13}else a.load=Eb,a.ak=Hb,a.yc=Jb,a.Ub=Kb,a.Oc=65535,a.Za=a.kc=0,a.ud=-4}
function Xb(a){this.Fa=a.model||8088;var b=0;switch(this.Fa){default:case 8088:b=4772727;break;case 80286:b=6E6}kb.call(this,a,b);this.rj=61442;this.ag=1792;this.$f=4;this.$e=255;this.B=80286<=this.Fa?Yb:Zb;this.Ra=$b.slice();this.El=ac.slice();this.Fl=bc.slice();this.uj=cc;80186<=this.Fa&&(this.$e=31,this.Ra[15]=H,this.Ra[96]=dc,this.Ra[97]=ec,this.Ra[98]=fc,this.Ra[99]=H,this.Ra[100]=H,this.Ra[101]=H,this.Ra[102]=H,this.Ra[103]=H,this.Ra[104]=gc,this.Ra[105]=hc,this.Ra[106]=ic,this.Ra[107]=jc,this.Ra[108]=
kc,this.Ra[109]=lc,this.Ra[110]=mc,this.Ra[111]=nc,this.Ra[192]=oc,this.Ra[193]=pc,this.Ra[200]=qc,this.Ra[201]=rc,this.Ra[241]=sc,this.El[7]=tc,this.Fl[7]=tc,80286<=this.Fa&&(this.rj=2,this.ag|=28672,this.$f=0,this.Ra[15]=uc,this.Ra[99]=vc,this.Ra[84]=wc));this.cg=[];this.tj=[];this.Wc=this.Bh=0;this.na.tf=this.na.Rl=!1;this.Da=[];this.Xd=this.Tb=this.tb=this.be=0;this.T=this.Xl;this.U=this.Yl;this.O=this.$m;this.P=this.an;this.R=this.vo;this.S=this.wo;xc(this)}v(kb,Xb);
var Zb={Zi:4,aa:5,sa:6,fa:7,ga:8,Q:9,V:11,W:12,pe:4,hk:60,ik:83,Nb:3,ub:9,dc:16,Ug:1,mk:19,ok:28,qk:16,pk:21,nk:37,kk:2,si:9,lk:5,jk:33,ui:10,ti:8,If:3,Hf:15,Ek:51,Fk:1,Gk:2,Hk:4,Dk:32,vi:15,Jk:15,Ob:16,Pb:4,Lk:11,Kk:18,Ik:24,Db:4,Mk:2,wi:16,Nk:17,Bi:18,Ok:19,Ai:5,Ci:6,Tk:2,Sk:8,Qk:9,Rk:10,Pk:10,Di:10,Ei:10,sk:80,uk:144,rk:86,tk:154,wk:101,yk:165,vk:107,xk:171,Vk:70,Xk:113,Uk:76,Wk:124,Ak:80,Ck:128,zk:86,Bk:134,Kf:3,Jf:16,Ji:10,Ii:8,Yk:51,ec:8,Zk:17,$k:36,lc:11,al:16,Lf:10,Md:2,pi:18,qi:7,ri:15,xi:12,
yi:7,zi:11,Fi:18,Gi:7,Hi:15,Ki:15,Li:7,Mi:13,Qi:11,Ri:7,Si:8,bl:8,el:12,cl:18,dl:17,fl:15,Oi:8,Ni:20,Pi:2,Vi:3,Mf:9,Ui:5,Ti:11,Xi:4,Wi:17,gl:11},Yb={Zi:0,aa:0,sa:0,fa:0,ga:0,Q:0,V:1,W:1,pe:3,hk:14,ik:16,Nb:2,ub:7,dc:7,Ug:0,mk:7,ok:13,qk:7,pk:11,nk:16,kk:3,si:6,lk:2,jk:13,ui:5,ti:5,If:2,Hf:7,Ek:23,Fk:0,Gk:1,Hk:3,Dk:17,vi:7,Jk:11,Ob:7,Pb:3,Lk:7,Kk:11,Ik:15,Db:2,Mk:3,wi:7,Nk:8,Bi:8,Ok:8,Ai:4,Ci:4,Tk:2,Sk:3,Qk:5,Rk:2,Pk:3,Di:5,Ei:3,sk:14,uk:22,rk:17,tk:25,wk:17,yk:25,vk:20,xk:28,Vk:13,Xk:21,Uk:16,Wk:24,
Ak:13,Ck:21,zk:16,Bk:24,Kf:2,Jf:7,Ji:5,Ii:5,Yk:19,ec:5,Zk:5,$k:17,lc:3,al:5,Lf:3,Md:0,pi:8,qi:5,ri:9,xi:5,yi:5,zi:4,Fi:5,Gi:5,Hi:4,Ki:7,Li:5,Mi:8,Qi:3,Ri:4,Si:3,bl:11,el:11,cl:15,dl:15,fl:7,Oi:5,Ni:8,Pi:0,Vi:2,Mf:6,Ui:3,Ti:6,Xi:3,Wi:5,gl:5};k=Xb.prototype;k.bi=function(a,b,c,d,e){this.Da=a;this.Xd=b;this.Tb=c;this.tb=d;this.be=e};k.reset=function(){this.na.bc&&qb(this);xc(this);nb(this);this.na.Tc=!1};
function xc(a){a.H=0;a.C=0;a.J=0;a.K=0;a.X=0;a.I=0;a.G=0;a.F=0;a.gc=65520;a.Ic=0;a.Ge=1023;a.Ye=0;a.Tg=-1;a.xa=new Bb(a,Cb,"CS");a.wb=new Bb(a,2,"DS");a.Pa=new Bb(a,2,"ES");a.qb=new Bb(a,3,"SS");a.tl=new Bb(a,0,"NULL");Vb(a,0,65535);80286<=a.Fa&&(a.Hc=0,a.Fe=65535,a.Sd=new Bb(a,5,"LDT",!0),a.ib=new Bb(a,4,"TSS",!0),a.Gb=new Bb(a,6,"VER",!0),Vb(a,65520,61440),a.xa.Ia=16711680);Ub(a,0);yc(a);a.lb=0;a.Eb=a.Tf=-1;a.ng=0;a.ha=a.Ha=-4;a.D=a.wb;a.N=a.qb;a.Z=a.va=0}
k.Vj=function(){var a=this.H+this.C+this.J+this.K+this.X+this.I+this.G+this.F|0;return a=a+this.ta+this.xa.ya+this.wb.ya+this.qb.ya+this.Pa.ya+Tb(this)|0};function Bc(a,b,c,d){void 0!==d&&(void 0===a.cg[b]&&(a.cg[b]=[]),a.cg[b].push([c,d]))}function Cc(a,b){var c=a.tj[b];null!=c&&(c(--a.Bh),delete a.tj[b])}function yc(a,b){void 0===b&&(b=!!(a.gc&1));b||a.cc("returning to real-mode");a.uj=b?Dc:cc;Db(a.xa,b);Db(a.wb,b);Db(a.qb,b);Db(a.Pa,b)}
k.save=function(){var a=new I(this);a.set(0,[this.H,this.C,this.J,this.K,this.X,this.I,this.G,this.F,this.Ye]);a.set(1,[this.ta,this.xa.save(),this.wb.save(),this.qb.save(),this.Pa.save(),null!=this.Hc?[this.gc,this.Hc,this.Fe,this.Ic,this.Ge,this.Sd.save(),this.ib.save(),this.Ye]:null,Tb(this)]);a.set(2,[this.D.gh,this.N.gh,this.Z,this.va,this.lb,this.ha,this.Ha]);a.set(3,[0,this.re,this.ba.Jd]);a.set(4,eb(this.qa));return a.data()};
k.restore=function(a){var b;b=a[0];this.H=b[0];this.C=b[1];this.J=b[2];this.K=b[3];this.X=b[4];this.I=b[5];this.G=b[6];this.F=b[7];this.Ye=b[8]||0;b=a[1];this.xa.restore(b[1]);this.wb.restore(b[2]);this.qb.restore(b[3]);this.Pa.restore(b[4]);var c=b[5];c&&c.length&&(this.gc=c[0],this.Hc=c[1],this.Fe=c[2],this.Ic=c[3],this.Ge=c[4],this.Sd.restore(c[5]),this.ib.restore(c[6]),this.Ye=c[7],yc(this));Ub(this,b[6]);J(this,b[0]);b=a[2];this.D=Ec(this,b[0]);this.N=Ec(this,b[1]);this.Z=b[2];this.va=b[3];this.lb=
b[4];this.ha=b[5];this.Ha=b[6];b=a[3];this.re=b[1];sb(this,b[2]);a:{b=this.qa;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.Ej){for(var f=0,g=Array(b.Ej),h=0;h<e.length-1;)for(var m=e[h++],n=e[h++];m--;)g[f++]=n;e=g}f=b.Da[d];if(!f||!f.restore(e)){r("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Xa(b,a[c]);b=!0}return b};
function Ec(a,b){switch(b){case "CS":return a.xa;case "DS":return a.wb;case "SS":return a.qb;case "ES":return a.Pa;case "NULL":return a.tl;default:return[0,b,0,0,""]}}function Fc(a,b){a.Ba=a.xa.load(b)+a.ta;a.Z|=a.$f}function Gc(a,b){a.wb.load(b);a.Z|=a.$f}function Hc(a,b){a.qb.load(b);a.Z|=4}function Ic(a,b){a.Pa.load(b);a.Z|=a.$f}function J(a,b){a.Ba=a.xa.Ia+(a.ta=b&65535)}function Vb(a,b,c,d){a.xa.Mh=d;a.ta=b;b=a.xa.load(c);return-4!=b?(a.Ba=b+a.ta,a.xa.Hg):null}
function K(a,b){a.Ba=a.xa.Ia+(a.ta=a.ta+b&65535)}function Jc(a){return a.Y&a.ca?1:0}function Kc(a){return Ab[a.ia&255]?4:0}function Lc(a){return(a.ia^a.ma)&16?16:0}function Mc(a){return a.Y&a.ca-1?0:64}function Nc(a){return a.ia&a.ca>>1?128:0}function Oc(a){return(a.ia^a.ma^a.ia>>1)&a.ca>>1?2048:0}function Pc(a){a.Y&=~a.ca}function Qc(a){a.ma=a.ia&16|a.ma&-17}function Rc(a){a.Y|=a.ca-1}function Sc(a){a.ia&=~a.ca;a.ma=a.ia&32896|a.ma&-32897}function Tc(a){a.Y|=a.ca}
function Uc(a){a.ma=~(a.ia&16)&16|a.ma&-17}function Vc(a){a.Y&=~(a.ca-1)}function Wc(a){Nc(a)||(a.ia^=a.ca>>1|a.ca>>2,a.ma^=32896)}function Xc(a){a.ia|=a.ca;a.ma=a.ia&32896|a.ma&-32897}function Tb(a){return a.Ca&-2262|Jc(a)|Kc(a)|Lc(a)|Mc(a)|Nc(a)|Oc(a)}
function Ub(a,b,c){a.ca=256;a.Y=a.ia=a.ma=0;b&1&&Tc(a);b&4||(a.ia|=1);b&16&&(a.ma|=16);b&64||Rc(a);b&128&&Wc(a);b&2048&&Xc(a);a.gc&1||(b&=-61441);void 0===c&&(c=a.xa.Za);c?b=b&-12289|a.Ca&12288:a.Ye=(b&12288)>>12;c>a.Ye&&(b=b&-513|a.Ca&512);a.Ca=a.Ca&~a.ag|b&a.ag|a.rj;a.Ca&256&&(a.lb|=2,a.Z|=4)}
k.Fb=function(a,b,c){var d=!1;switch(b){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 "V":this.ra[b]=c;d=!0;break;default:d=kb.prototype.Fb.call(this,a,b,c)}return d};function Yc(a,b){return a.Da[(b&a.Xd)>>a.Tb].Cc(b&a.tb)}
function D(a,b){var c=b&a.tb,d=(b&a.Xd)>>a.Tb;a.A-=a.B.Zi;return c!=a.tb?a.Da[d].no(c):a.Da[d++].Cc(c)|a.Da[d&a.be].Cc(0)<<8}function Zc(a,b,c){a.Da[(b&a.Xd)>>a.Tb].Fc(b&a.tb,c&255)}function F(a,b,c){var d=b&a.tb;b=(b&a.Xd)>>a.Tb;a.A-=a.B.Zi;d!=a.tb?a.Da[b].yo(d,c&65535):(a.Da[b++].Fc(d,c&255),a.Da[b&a.be].Fc(0,c>>8&255))}k.Xl=function(a,b){this.Wf=a;this.ha=a.yc(this.Pf=b,0);return this.Z&1?0:Yc(this,this.ha)};k.Yl=function(a,b){this.Wf=a;this.ha=a.yc(this.Pf=b,1);return this.Z&1?0:D(this,this.ha)};
k.$m=function(a,b){this.Wf=a;this.Ha=this.ha=a.yc(this.Pf=b,0);return this.Z&1?0:Yc(this,this.ha)};k.an=function(a,b){this.Wf=a;this.Ha=this.ha=a.yc(this.Pf=b,1);return this.Z&1?0:D(this,this.ha)};k.vo=function(a){this.Z&2||Zc(this,this.Wf.Ub(this.Pf,0),a)};k.wo=function(a){this.Z&2||F(this,this.Wf.Ub(this.Pf,1),a)};k.da=function(){var a=Yc(this,this.Ba);this.Ba=this.xa.Ia+(this.ta=this.ta+1&65535);return a};
k.M=function(){var a=Yc(this,this.Ba)<<24>>24;this.Ba=this.xa.Ia+(this.ta=this.ta+1&65535);return a&65535};k.L=function(){var a=D(this,this.Ba);this.Ba=this.xa.Ia+(this.ta=this.ta+2&65535);return a};k.Ga=function(){var a=this.X;this.X=this.X+2&65535;return D(this,this.qb.yc(a,1))};function G(a,b){var c=a.X=a.X-2&65535;F(a,a.qb.Ub(c,1),b)}
k.Le=function(a){if(a||!this.na.bc||this.na.Lj)A(this,"AX",this.H),A(this,"BX",this.C),A(this,"CX",this.J),A(this,"DX",this.K),A(this,"SP",this.X),A(this,"BP",this.I),A(this,"SI",this.G),A(this,"DI",this.F),A(this,"CS",this.xa.ya),A(this,"DS",this.wb.ya),A(this,"SS",this.qb.ya),A(this,"ES",this.Pa.ya),A(this,"IP",this.ta),a=Tb(this),A(this,"PS",a),A(this,"C",a&1?1:0,1),A(this,"P",a&4?1:0,1),A(this,"A",a&16?1:0,1),A(this,"Z",a&64?1:0,1),A(this,"S",a&128?1:0,1),A(this,"T",a&256?1:0,1),A(this,"I",a&
512?1:0,1),A(this,"D",a&1024?1:0,1),A(this,"V",a&2048?1:0,1);if(a=this.ra.speed)a.textContent=this.na.bc&&this.ba.Vc?this.ba.Vc.toFixed(2)+"Mhz":"Stopped"};
k.vl=function(a){this.na.tf=!0;this.na.Rl=!1;this.na.Tj=!1;this.Wc=this.A=a;this.ka&&!a&&xb(this.ka);a||(this.Z|=4);do{if(a=this.Z&240)this.va|=a;else if(this.Qf=this.Ba,this.ha=this.Ha=-4,this.D=this.wb,this.N=this.qb,this.va=this.Z&256,this.lb){a:{if(!(this.Z&4))if(this.lb&1&&this.Ca&512){if(a=$c(this.ka),-1<=a&&(this.lb&=-2,0<=a)){this.lb&=-5;ad.call(this,a,null,11);break a}}else if(this.lb&2){this.lb&=-3;ad.call(this,1,null,11);break a}if(a=this.lb&8){a=this.ka;for(var b=!1,c=0;c<a.ab;c++)for(var d=
a.ab[c],e=0;e<d.yb.length;e++){var f=d.yb[e];f.md||(bd(a,f),f.md||(b=!0))}a=!b}a&&(this.lb&=-9)}if(this.lb&4){this.Z=this.A=0;break}}this.Z=0;this.Ra[this.da()].call(this)}while(0<this.A);return this.na.tf?this.Wc-this.A:void 0===this.na.tf?0:-1};za(function(){for(var a=y(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Xb(d);Na(d,c)}});function cd(a,b){this.ma=a^b;this.ca=256;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return(this.Y=this.ia=a+b)&255}
function dd(a,b){this.ca=256;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return(this.Y=this.ia=this.ma=a|b)&255}function ed(a,b){this.ma=a^b;this.Y=this.ia=a+b+(this.Y&this.ca?1:0);this.ca=256;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return this.Y&255}function fd(a,b){this.ma=a^b;this.Y=this.ia=a-b-(this.Y&this.ca?1:0);this.ca=256;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return this.Y&255}
function gd(a,b){this.ca=256;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return(this.Y=this.ia=this.ma=a&b)&255}function hd(a,b){this.ma=a^b;this.ca=256;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return(this.Y=this.ia=a-b)&255}function id(a,b){this.ca=256;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return(this.Y=this.ia=this.ma=a^b)&255}
function jd(a,b){this.ma=a^b;this.ca=256;this.Y=this.ia=a-b;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.si:this.B.ub;this.Z|=2;return a}function kd(a,b){this.ma=a^b;this.ca=65536;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return(this.Y=this.ia=a+b)&65535}function ld(a,b){this.ca=65536;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return(this.Y=this.ia=this.ma=a|b)&65535}
function md(a,b){this.ma=a^b;this.Y=this.ia=a+b+(this.Y&this.ca?1:0);this.ca=65536;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return this.Y&65535}function nd(a,b){this.ma=a^b;this.Y=this.ia=a-b-(this.Y&this.ca?1:0);this.ca=65536;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return this.Y&65535}function od(a,b){this.ca=65536;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return(this.Y=this.ia=this.ma=a&b)&65535}
function pd(a,b){this.ma=a^b;this.ca=65536;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return(this.Y=this.ia=a-b)&65535}function qd(a,b){this.ca=65536;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.ub:this.B.dc;return(this.Y=this.ia=this.ma=a^b)&65535}function rd(a,b){this.ma=a^b;this.ca=65536;this.Y=this.ia=a-b;this.A-=0>this.Ha?0>this.ha?this.B.Nb:this.B.si:this.B.ub;this.Z|=2;return a}function sd(a,b){this.Y=this.Y&this.ca-1|(a&b?this.ca:0);(a^a>>1)&b>>1?Xc(this):Sc(this)}
function td(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;sd.call(this,d,256)}return c}function ud(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;sd.call(this,d,65536)}return c}function vd(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);sd.call(this,d,256)}return c}function wd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);sd.call(this,d,65536)}return c}
function zd(a,b){var c=a;if(b){var d;(d=(b&this.$e)%9)?(d=a<<d|(this.Y&this.ca?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.Y&this.ca?1:0)<<8;sd.call(this,d,256)}return c}function Ad(a,b){var c=a;if(b){var d;(d=(b&this.$e)%17)?(d=a<<d|(this.Y&this.ca?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.Y&this.ca?1:0)<<16;sd.call(this,d,65536)}return c}function Bd(a,b){var c=a;b&&(c=(b&this.$e)%9,c=a>>c|(this.Y&this.ca?1:0)<<8-c|a<<9-c,sd.call(this,c,256),c&=255);return c}
function Cd(a,b){var c=a;b&&(c=(b&this.$e)%17,c=a>>c|(this.Y&this.ca?1:0)<<16-c|a<<17-c,sd.call(this,c,65536),c&=65535);return c}function Dd(a,b){var c=a;b&&(c=8<b?this.Y=this.ia=0:(this.Y=this.ia=a<<b)&255,this.ma=0,this.ca=256);return c}function Ed(a,b){var c=a;b&&(c=16<b?this.Y=this.ia=0:(this.Y=this.ia=a<<b)&65535,this.ma=0,this.ca=65536);return c}
function Fd(a,b){if(b){var c=8<b?0:a>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.ma=a^this.Y;this.ca=256;a=this.Y}return a&255}function Gd(a,b){if(b){var c=16<b?0:a>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.ma=a^this.Y;this.ca=65536;a=this.Y}return a&65535}function Hd(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.ma=a^this.Y;this.ca=256;a=this.Y}return a&255}
function Id(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.ma=a^this.Y;this.ca=65536;a=this.Y}return a&65535}function Jd(){this.A-=0>this.ha?2:this.B.fl;return 1}function Kd(){var a=this.J&this.$e;this.A-=(0>this.ha?this.B.Oi:this.B.Ni)+(a<<this.B.Pi);return a}function Ld(){var a=this.da();this.A-=(0>this.ha?this.B.Oi:this.B.Ni)+(a<<this.B.Pi);return a}function Md(){return null}function Nd(a){C.call(this,13,0);return a}
function tc(a){H.call(this);return a}function L(a){N.call(this);return a}
var Od=[cd,dd,ed,fd,gd,hd,id,jd],Pd=[kd,ld,md,nd,od,pd,qd,rd],Qd=[function(a,b){this.A-=0>this.Ha?this.B.ec:this.B.Zk;return b},Nd,Nd,Nd,Nd,Nd,Nd,Nd],Rd=[function(a,b){this.A-=0>this.Ha?this.B.Rk:this.B.Pk;return b},L,L,L,L,L,L,L],Sd=[td,vd,zd,Bd,Dd,Fd,L,Hd],Td=[ud,wd,Ad,Cd,Ed,Gd,L,Id],Vd=[function(a,b){b=this.da();this.Y=this.ia=this.ma=a&b;this.ca=256;this.A-=0>this.ha?this.B.Ui:this.B.Ti;this.Z|=2;return a},L,function(a){this.A-=0>this.ha?this.B.Kf:this.B.Jf;return a^255},function(a,b){b=0;this.ma=
a^b;this.ca=256;this.A-=0>this.ha?this.B.Kf:this.B.Jf;return(this.Y=this.ia=b-a)&255},function(a){this.H=this.Eb=(this.Y=(this.H&255)*a)&65535;this.ma=this.ia=this.Y;this.ca=256;this.H&65280?(Tc(this),Xc(this)):(Pc(this),Sc(this));this.A-=0>this.ha?this.B.Vk:this.B.Uk;this.Z|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.Eb=b&65535;this.Y=this.ma=this.ia=b;this.ca=256;127<b||-128>b?(Tc(this),Xc(this)):(Pc(this),Sc(this));this.A-=0>this.ha?this.B.Ak:this.B.zk;this.Z|=2;return a},
function(a){if(!a)return Ud.call(this),a;var b=this.H/a;if(255<b)return Ud.call(this),a;this.Eb=this.H=b&255|(this.H%a&255)<<8;this.ia=this.ma=this.Y=b|256;this.ca=256;this.A-=0>this.ha?this.B.sk:this.B.rk;this.Z|=2;return a},function(a){if(!a)return Ud.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Ud.call(this),a;this.Eb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.ia=this.ma=this.Y=b|256;this.ca=256;this.A-=0>this.ha?this.B.wk:this.B.vk;this.Z|=2;return a}],
Wd=[function(a,b){b=this.L();this.Y=this.ia=this.ma=a&b;this.ca=65536;this.A-=0>this.ha?this.B.Ui:this.B.Ti;this.Z|=2;return a},L,function(a){this.A-=0>this.ha?this.B.Kf:this.B.Jf;return a^65535},function(a,b){b=0;this.ma=a^b;this.ca=65536;this.A-=0>this.ha?this.B.Kf:this.B.Jf;return(this.Y=this.ia=b-a)&65535},function(a){this.Eb=this.H=(this.Y=this.H*a)&65535;this.Tf=this.K=this.Y>>16&65535;this.ma=this.ia=this.Y;this.ca=65536;this.K?(Tc(this),Xc(this)):(Pc(this),Sc(this));this.A-=0>this.ha?this.B.Xk:
this.B.Wk;this.Z|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.Eb=b&65535;this.K=this.Tf=b>>16&65535;this.Y=this.ma=this.ia=b;this.ca=65536;32767<b||-32768>b?(Tc(this),Xc(this)):(Pc(this),Sc(this));this.A-=0>this.ha?this.B.Ck:this.B.Bk;this.Z|=2;return a},function(a,b){if(!a)return Ud.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Ud.call(this),a;this.Eb=this.H=c&65535;this.Tf=this.K=b%a&65535;this.ia=this.ma=this.Y=c|65536;this.ca=65536;this.A-=
0>this.ha?this.B.uk:this.B.tk;this.Z|=2;return a},function(a,b){if(!a)return Ud.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Ud.call(this),a;this.Eb=this.H=d&65535;this.Tf=this.K=b%c&65535;this.ia=this.ma=this.Y=d|65536;this.ca=65536;this.A-=0>this.ha?this.B.yk:this.B.xk;this.Z|=2;return a}],ac=[function(a){this.ma=a;a=(this.ia=a+1)&255;this.Y=a|(this.Y&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.If:this.B.Hf;return a},function(a){this.ma=
a;a=(this.ia=a-1)&255;this.Y=a|(this.Y&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.If:this.B.Hf;return a},L,L,L,L,L,L],bc=[function(a){this.ma=a;a=(this.ia=a+1)&65535;this.Y=a|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.If:this.B.Hf;return a},function(a){this.ma=a;a=(this.ia=a-1)&65535;this.Y=a|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.If:this.B.Hf;return a},function(a){G(this,this.ta);J(this,a);this.A-=0>this.ha?this.B.qk:this.B.pk;this.Z|=2;return a},
function(a){if(0>this.ha)return L.call(this,a);Xd.call(this,a,D(this,this.ha+2));this.A-=this.B.nk;this.Z|=2;return a},function(a){J(this,a);this.A-=0>this.ha?this.B.Lk:this.B.Kk;this.Z|=2;return a},function(a){if(0>this.ha)return L.call(this,a);Vb(this,a,D(this,this.ha+2));this.A-=this.B.Ik;this.Z|=2;return a},function(a){var b=a;this.Z&512&&(a=a-2&65535,80286>this.Fa&&(b=a));G(this,b);this.A-=0>this.ha?this.B.lc:this.B.al;this.Z|=2;return a},Nd],Yd=[td,vd,zd,Bd,Dd,Fd,L,Hd],Zd=[ud,wd,Ad,Cd,Ed,Gd,
L,Id];function $d(a,b){this.A-=0>this.Ha?0>this.ha?this.B.Tk:this.B.Sk:this.B.Qk;return b}function ae(){return $d.call(this,0,this.Eb)}function be(a,b){this.Y=this.ia=this.ma=a&b;this.ca=256;this.A-=0>this.Ha?0>this.ha?this.B.Vi:this.B.Mf:this.B.Mf;this.Z|=2;return a}function ce(a,b){this.Y=this.ia=this.ma=a&b;this.ca=65536;this.A-=0>this.Ha?0>this.ha?this.B.Vi:this.B.Mf:this.B.Mf;this.Z|=2;return a}
function de(a,b){var c=(b<<16>>16)*(this.da()<<24>>24);this.Y=this.ma=this.ia=c;this.ca=256;32767<c||-32768>c?(Tc(this),Xc(this)):(Pc(this),Sc(this));this.A-=0>this.ha?21:24;return c&65535}function ee(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.Y=this.ma=this.ia=c;this.ca=65536;32767<c||-32768>c?(Tc(this),Xc(this)):(Pc(this),Sc(this));this.A-=0>this.ha?21:24;return c&65535}function fe(a){return a}function ge(a){if(0>this.ha)return N.call(this),a;this.A-=this.B.Mk;return this.ha}
function he(a,b){if(0>this.ha)return N.call(this),a;Gc(this,D(this,this.ha+2));this.A-=this.B.wi;return b}function ie(a,b){if(0>this.ha)return N.call(this),a;Ic(this,D(this,this.ha+2));this.A-=this.B.wi;return b}function je(a){if(0>this.ha)return H.call(this),a;var b=a<<16>>16,c=D(this,this.ha)<<16>>16,d=D(this,this.ha+2)<<16>>16;this.A-=this.B.jk;if(b<c||b>d)J(this,this.Qf-this.xa.Ia),ad.call(this,5,null,0);this.Z|=2;return a}
function ke(a,b){this.A-=10+(0>this.ha?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Vc(this),a;Rc(this);return a}function le(a,b){this.A-=14+(0>this.ha?0:2);if(-4!=this.Gb.load(b,!0)&&this.Gb.kc>=this.xa.Za&&this.Gb.kc>=(b&3))return Vc(this),this.Gb.jb&65280;Rc(this);return a}function me(a,b){this.A-=14+(0>this.ha?0:2);if(b&65528&&-4!=this.Gb.load(b,!0)&&(7168==(this.Gb.jb&7168)||this.Gb.kc>=this.xa.Za)&&this.Gb.kc>=(b&3))return Vc(this),this.Gb.Oc;Rc(this);return a}
function ne(a,b){if(0>this.ha){switch(this.ng&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Xi}else this.Ha=this.ha,this.R(a),this.A-=this.B.Wi;return b}
function oe(a,b){if(0>this.ha){switch(this.ng&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.X=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Xi}else this.Ha=this.ha,this.S(a),this.A-=this.B.Wi;return b}function pe(a){a|=this.gc&1;this.gc=this.gc&65520|a&-65521;this.gc&1&&yc(this,!0)}function Xd(a,b){var c=this.xa.ya,d=this.ta;null!=Vb(this,a,b,!0)&&(G(this,c),G(this,d))}
function qe(a){var b=this.Ga(),c=this.Ga();a&&(this.X=this.X+a&65535);Vb(this,b,c,!1)&&(a&&(this.X=this.X+a&65535),this.wb.ya&65528&&this.wb.kc<this.xa.Za&&7168!=(this.wb.jb&7168)&&this.wb.load(0),this.Pa.ya&65528&&this.Pa.kc<this.xa.Za&&7168!=(this.Pa.jb&7168)&&this.Pa.load(0));2==a&&this.Bh&&Cc(this,this.Ba)}
function ad(a,b,c){this.A-=this.B.Ek+c;this.xa.Mh=!0;c=Tb(this);var d=this.xa.ya,e=this.ta;a=this.xa.ak(a);-4!=a&&(this.Ba=a+this.ta,G(this,c),G(this,d),G(this,e),null!=b&&G(this,b),this.Tg=-1)}function Ud(){J(this,this.Qf-this.xa.Ia);ad.call(this,0,null,2)}
function C(a,b,c){if(this.na.tf){var d=!1;if(80186<=this.Fa)if(0>this.Tg)J(this,this.Qf-this.xa.Ia),d=!0;else if(8!=this.Tg)b=0,a=8,d=!0;else{re.call(this,-1,0,c);xc(this);return}re.call(this,a,b,c)&&(d=!1);d&&ad.call(this,this.Tg=a,b,0);this.Z&=-4}else this.cc("Fault "+p(a,2)+" blocked by Debugger",se),J(this,this.Qf-this.xa.Ia)}
function re(a,b,c){var d=te,e=ab(this.qa,this.Ba);204==e&&(c=!1,d|=ue);983040<=this.Ba&&1048575>=this.Ba&&(c=!1);c&&(a=(c?"\n":"")+"Fault "+p(a,2)+(null!=b?" ("+p(b,4)+")":"")+" on opcode 0x"+p(e,2)+" at "+da(this.ta,this.xa.ya)+" (%"+p(this.Ba,6)+")",b=this.na.bc,this.cc(a,d)?c&&(c=b,qb(this.Sa)):(this.Aa(a),qb(this)));return c}function ve(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}function we(a){a=a.call(this,this.H&255,this.J&255);this.H=this.H&-256|a}
function xe(a){a=a.call(this,this.H&255,this.K&255);this.H=this.H&-256|a}function ye(a){a=a.call(this,this.H&255,this.C&255);this.H=this.H&-256|a}function ze(a){a=a.call(this,this.H&255,this.H>>8);this.H=this.H&-256|a}function Ae(a){a=a.call(this,this.H&255,this.J>>8);this.H=this.H&-256|a}function Be(a){a=a.call(this,this.H&255,this.K>>8);this.H=this.H&-256|a}function Ce(a){a=a.call(this,this.H&255,this.C>>8);this.H=this.H&-256|a}
function De(a){a=a.call(this,this.J&255,this.H&255);this.J=this.J&-256|a}function Ee(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function Fe(a){a=a.call(this,this.J&255,this.K&255);this.J=this.J&-256|a}function Ge(a){a=a.call(this,this.J&255,this.C&255);this.J=this.J&-256|a}function He(a){a=a.call(this,this.J&255,this.H>>8);this.J=this.J&-256|a}function Ie(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}
function Je(a){a=a.call(this,this.J&255,this.K>>8);this.J=this.J&-256|a}function Ke(a){a=a.call(this,this.J&255,this.C>>8);this.J=this.J&-256|a}function Le(a){a=a.call(this,this.K&255,this.H&255);this.K=this.K&-256|a}function Me(a){a=a.call(this,this.K&255,this.J&255);this.K=this.K&-256|a}function Ne(a){a=a.call(this,this.K&255,this.K&255);this.K=this.K&-256|a}function Oe(a){a=a.call(this,this.K&255,this.C&255);this.K=this.K&-256|a}
function Pe(a){a=a.call(this,this.K&255,this.H>>8);this.K=this.K&-256|a}function Qe(a){a=a.call(this,this.K&255,this.J>>8);this.K=this.K&-256|a}function Re(a){a=a.call(this,this.K&255,this.K>>8);this.K=this.K&-256|a}function Se(a){a=a.call(this,this.K&255,this.C>>8);this.K=this.K&-256|a}function Te(a){a=a.call(this,this.C&255,this.H&255);this.C=this.C&-256|a}function Ue(a){a=a.call(this,this.C&255,this.J&255);this.C=this.C&-256|a}
function Ve(a){a=a.call(this,this.C&255,this.K&255);this.C=this.C&-256|a}function We(a){a=a.call(this,this.C&255,this.C&255);this.C=this.C&-256|a}function Xe(a){a=a.call(this,this.C&255,this.H>>8);this.C=this.C&-256|a}function Ye(a){a=a.call(this,this.C&255,this.J>>8);this.C=this.C&-256|a}function Ze(a){a=a.call(this,this.C&255,this.K>>8);this.C=this.C&-256|a}function $e(a){a=a.call(this,this.C&255,this.C>>8);this.C=this.C&-256|a}
function af(a){a=a.call(this,this.H>>8,this.H&255);this.H=this.H&255|a<<8}function bf(a){a=a.call(this,this.H>>8,this.J&255);this.H=this.H&255|a<<8}function cf(a){a=a.call(this,this.H>>8,this.K&255);this.H=this.H&255|a<<8}function df(a){a=a.call(this,this.H>>8,this.C&255);this.H=this.H&255|a<<8}function ef(a){a=a.call(this,this.H>>8,this.H>>8);this.H=this.H&255|a<<8}function ff(a){a=a.call(this,this.H>>8,this.J>>8);this.H=this.H&255|a<<8}
function gf(a){a=a.call(this,this.H>>8,this.K>>8);this.H=this.H&255|a<<8}function hf(a){a=a.call(this,this.H>>8,this.C>>8);this.H=this.H&255|a<<8}function jf(a){a=a.call(this,this.J>>8,this.H&255);this.J=this.J&255|a<<8}function kf(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function lf(a){a=a.call(this,this.J>>8,this.K&255);this.J=this.J&255|a<<8}function mf(a){a=a.call(this,this.J>>8,this.C&255);this.J=this.J&255|a<<8}
function nf(a){a=a.call(this,this.J>>8,this.H>>8);this.J=this.J&255|a<<8}function of(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function pf(a){a=a.call(this,this.J>>8,this.K>>8);this.J=this.J&255|a<<8}function qf(a){a=a.call(this,this.J>>8,this.C>>8);this.J=this.J&255|a<<8}function rf(a){a=a.call(this,this.K>>8,this.H&255);this.K=this.K&255|a<<8}function sf(a){a=a.call(this,this.K>>8,this.J&255);this.K=this.K&255|a<<8}
function tf(a){a=a.call(this,this.K>>8,this.K&255);this.K=this.K&255|a<<8}function uf(a){a=a.call(this,this.K>>8,this.C&255);this.K=this.K&255|a<<8}function vf(a){a=a.call(this,this.K>>8,this.H>>8);this.K=this.K&255|a<<8}function wf(a){a=a.call(this,this.K>>8,this.J>>8);this.K=this.K&255|a<<8}function xf(a){a=a.call(this,this.K>>8,this.K>>8);this.K=this.K&255|a<<8}function yf(a){a=a.call(this,this.K>>8,this.C>>8);this.K=this.K&255|a<<8}
function zf(a){a=a.call(this,this.C>>8,this.H&255);this.C=this.C&255|a<<8}function Af(a){a=a.call(this,this.C>>8,this.J&255);this.C=this.C&255|a<<8}function Bf(a){a=a.call(this,this.C>>8,this.K&255);this.C=this.C&255|a<<8}function Cf(a){a=a.call(this,this.C>>8,this.C&255);this.C=this.C&255|a<<8}function Df(a){a=a.call(this,this.C>>8,this.H>>8);this.C=this.C&255|a<<8}function Ef(a){a=a.call(this,this.C>>8,this.J>>8);this.C=this.C&255|a<<8}
function Ff(a){a=a.call(this,this.C>>8,this.K>>8);this.C=this.C&255|a<<8}function Gf(a){a=a.call(this,this.C>>8,this.C>>8);this.C=this.C&255|a<<8}function Hf(a){this.H=a.call(this,this.H,this.H)}function If(a){this.H=a.call(this,this.H,this.J)}function Jf(a){this.H=a.call(this,this.H,this.K)}function Kf(a){this.H=a.call(this,this.H,this.C)}function Lf(a){this.H=a.call(this,this.H,this.X)}function Mf(a){this.H=a.call(this,this.H,this.I)}function Nf(a){this.H=a.call(this,this.H,this.G)}
function Of(a){this.H=a.call(this,this.H,this.F)}function Pf(a){this.J=a.call(this,this.J,this.H)}function Qf(a){this.J=a.call(this,this.J,this.J)}function Rf(a){this.J=a.call(this,this.J,this.K)}function Sf(a){this.J=a.call(this,this.J,this.C)}function Tf(a){this.J=a.call(this,this.J,this.X)}function Uf(a){this.J=a.call(this,this.J,this.I)}function Vf(a){this.J=a.call(this,this.J,this.G)}function Wf(a){this.J=a.call(this,this.J,this.F)}function Xf(a){this.K=a.call(this,this.K,this.H)}
function Yf(a){this.K=a.call(this,this.K,this.J)}function Zf(a){this.K=a.call(this,this.K,this.K)}function $f(a){this.K=a.call(this,this.K,this.C)}function ag(a){this.K=a.call(this,this.K,this.X)}function bg(a){this.K=a.call(this,this.K,this.I)}function cg(a){this.K=a.call(this,this.K,this.G)}function dg(a){this.K=a.call(this,this.K,this.F)}function eg(a){this.C=a.call(this,this.C,this.H)}function fg(a){this.C=a.call(this,this.C,this.J)}function gg(a){this.C=a.call(this,this.C,this.K)}
function hg(a){this.C=a.call(this,this.C,this.C)}function ig(a){this.C=a.call(this,this.C,this.X)}function jg(a){this.C=a.call(this,this.C,this.I)}function kg(a){this.C=a.call(this,this.C,this.G)}function lg(a){this.C=a.call(this,this.C,this.F)}function mg(a){this.X=a.call(this,this.X,this.H)}function ng(a){this.X=a.call(this,this.X,this.J)}function og(a){this.X=a.call(this,this.X,this.K)}function pg(a){this.X=a.call(this,this.X,this.C)}function qg(a){this.X=a.call(this,this.X,this.X)}
function rg(a){this.X=a.call(this,this.X,this.I)}function sg(a){this.X=a.call(this,this.X,this.G)}function tg(a){this.X=a.call(this,this.X,this.F)}function ug(a){this.I=a.call(this,this.I,this.H)}function vg(a){this.I=a.call(this,this.I,this.J)}function wg(a){this.I=a.call(this,this.I,this.K)}function xg(a){this.I=a.call(this,this.I,this.C)}function yg(a){this.I=a.call(this,this.I,this.X)}function zg(a){this.I=a.call(this,this.I,this.I)}function Ag(a){this.I=a.call(this,this.I,this.G)}
function Bg(a){this.I=a.call(this,this.I,this.F)}function Cg(a){this.G=a.call(this,this.G,this.H)}function Dg(a){this.G=a.call(this,this.G,this.J)}function Eg(a){this.G=a.call(this,this.G,this.K)}function Fg(a){this.G=a.call(this,this.G,this.C)}function Gg(a){this.G=a.call(this,this.G,this.X)}function Hg(a){this.G=a.call(this,this.G,this.I)}function Ig(a){this.G=a.call(this,this.G,this.G)}function Jg(a){this.G=a.call(this,this.G,this.F)}function Kg(a){this.F=a.call(this,this.F,this.H)}
function Lg(a){this.F=a.call(this,this.F,this.J)}function Mg(a){this.F=a.call(this,this.F,this.K)}function Ng(a){this.F=a.call(this,this.F,this.C)}function Og(a){this.F=a.call(this,this.F,this.X)}function Pg(a){this.F=a.call(this,this.F,this.I)}function Qg(a){this.F=a.call(this,this.F,this.G)}function Rg(a){this.F=a.call(this,this.F,this.F)}
var Sg=[function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.H&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.H&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.G&65535),this.H&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.H&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.G),this.H&255);this.R(a);this.A-=this.B.aa},
function(a){a=a.call(this,this.O(this.D,this.F),this.H&255);this.R(a);this.A-=this.B.aa},function(a){a=a.call(this,this.O(this.D,this.L()),this.H&255);this.R(a);this.A-=this.B.sa},function(a){a=a.call(this,this.O(this.D,this.C),this.H&255);this.R(a);this.A-=this.B.aa},function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.J&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.J&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,
this.I+this.G&65535),this.J&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.J&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.G),this.J&255);this.R(a);this.A-=this.B.aa},function(a){a=a.call(this,this.O(this.D,this.F),this.J&255);this.R(a);this.A-=this.B.aa},function(a){a=a.call(this,this.O(this.D,this.L()),this.J&255);this.R(a);this.A-=this.B.sa},function(a){a=a.call(this,this.O(this.D,this.C),this.J&255);this.R(a);
this.A-=this.B.aa},function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.K&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.K&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.G&65535),this.K&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.K&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.G),this.K&255);this.R(a);this.A-=
@ -153,8 +152,8 @@ this.C+this.G+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.V},function(a)
a.call(this,this.O(this.D,this.F+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.G+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.V},function(a){a=a.call(this,this.O(this.D,this.C+this.F+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.W},
function(a){a=a.call(this,this.O(this.N,this.I+this.G+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.N,this.I+this.F+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.V},function(a){a=a.call(this,this.O(this.D,this.G+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.F+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.K>>8);this.R(a);
this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.V},function(a){a=a.call(this,this.O(this.D,this.C+this.F+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.N,this.I+this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.N,this.I+this.F+
this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.V},function(a){a=a.call(this,this.O(this.D,this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.F+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},te,Be,Je,Re,Ze,gf,pf,xf,ue,Ce,Ke,Se,$e,
hf,qf,yf,ve,De,Le,Te,af,jf,rf,zf,we,Ee,Me,Ue,bf,kf,sf,Af,xe,Fe,Ne,Ve,cf,lf,tf,Bf,ye,Ge,Oe,We,df,mf,uf,Cf,ze,He,Pe,Xe,ef,nf,vf,Df,Ae,Ie,Qe,Ye,ff,of,wf,Ef],Rg=[function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.H);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,this.P(this.D,this.C+this.F&65535),this.H);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.H);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.F&
this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.V},function(a){a=a.call(this,this.O(this.D,this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.F+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},ve,De,Le,Te,af,jf,rf,zf,we,Ee,Me,Ue,bf,
kf,sf,Af,xe,Fe,Ne,Ve,cf,lf,tf,Bf,ye,Ge,Oe,We,df,mf,uf,Cf,ze,He,Pe,Xe,ef,nf,vf,Df,Ae,Ie,Qe,Ye,ff,of,wf,Ef,Be,Je,Re,Ze,gf,pf,xf,Ff,Ce,Ke,Se,$e,hf,qf,yf,Gf],Tg=[function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.H);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,this.P(this.D,this.C+this.F&65535),this.H);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.H);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.F&
65535),this.H);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,this.P(this.D,this.G),this.H);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.F),this.H);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.L()),this.H);this.S(a);this.A-=this.B.sa},function(a){a=a.call(this,this.P(this.D,this.C),this.H);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.J);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,
this.P(this.D,this.C+this.F&65535),this.J);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.J);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.F&65535),this.J);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,this.P(this.D,this.G),this.J);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.F),this.J);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.L()),this.J);this.S(a);
this.A-=this.B.sa},function(a){a=a.call(this,this.P(this.D,this.C),this.J);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.K);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,this.P(this.D,this.C+this.F&65535),this.K);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.K);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.F&65535),this.K);this.S(a);this.A-=this.B.fa},function(a){a=
@ -191,8 +190,8 @@ function(a){a=a.call(this,this.P(this.D,this.C+this.G+this.L()&65535),this.I);th
this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.I);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.I);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.I);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.G+this.L()&65535),this.G);this.S(a);this.A-=this.B.V},function(a){a=a.call(this,this.P(this.D,this.C+this.F+this.L()&65535),this.G);this.S(a);
this.A-=this.B.W},function(a){a=a.call(this,this.P(this.N,this.I+this.G+this.L()&65535),this.G);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.N,this.I+this.F+this.L()&65535),this.G);this.S(a);this.A-=this.B.V},function(a){a=a.call(this,this.P(this.D,this.G+this.L()&65535),this.G);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.G);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.G);this.S(a);
this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.G);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.V},function(a){a=a.call(this,this.P(this.D,this.C+this.F+this.L()&65535),this.F);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.N,this.I+this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.N,this.I+this.F+this.L()&65535),
this.F);this.S(a);this.A-=this.B.V},function(a){a=a.call(this,this.P(this.D,this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},Ff,Nf,Vf,cg,kg,sg,Ag,Ig,Gf,Of,Wf,dg,lg,tg,Bg,Jg,Hf,Pf,Xf,eg,mg,ug,Cg,
Kg,If,Qf,Yf,fg,ng,vg,Dg,Lg,Jf,Rf,Zf,gg,og,wg,Eg,Mg,Kf,Sf,$f,hg,pg,xg,Fg,Ng,Lf,Tf,ag,ig,qg,yg,Gg,Og,Mf,Uf,bg,jg,rg,zg,Hg,Pg],Sg=[function(a){a=a.call(this,this.H&255,this.T(this.D,this.C+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.C+this.F&65535));this.H=this.H&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.H&255,this.T(this.N,this.I+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.H&255,
this.F);this.S(a);this.A-=this.B.V},function(a){a=a.call(this,this.P(this.D,this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},Hf,Pf,Xf,eg,mg,ug,Cg,Kg,If,Qf,Yf,fg,ng,vg,Dg,Lg,Jf,Rf,Zf,gg,og,wg,Eg,
Mg,Kf,Sf,$f,hg,pg,xg,Fg,Ng,Lf,Tf,ag,ig,qg,yg,Gg,Og,Mf,Uf,bg,jg,rg,zg,Hg,Pg,Nf,Vf,cg,kg,sg,Ag,Ig,Qg,Of,Wf,dg,lg,tg,Bg,Jg,Rg],Ug=[function(a){a=a.call(this,this.H&255,this.T(this.D,this.C+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.C+this.F&65535));this.H=this.H&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.H&255,this.T(this.N,this.I+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.H&255,
this.T(this.N,this.I+this.F&65535));this.H=this.H&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.G));this.H=this.H&-256|a;this.A-=this.B.aa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.F));this.H=this.H&-256|a;this.A-=this.B.aa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.L()));this.H=this.H&-256|a;this.A-=this.B.sa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.C));this.H=this.H&-256|a;this.A-=this.B.aa},function(a){a=a.call(this,
this.J&255,this.T(this.D,this.C+this.G&65535));this.J=this.J&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.J&255,this.T(this.D,this.C+this.F&65535));this.J=this.J&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.J&255,this.T(this.N,this.I+this.G&65535));this.J=this.J&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.J&255,this.T(this.N,this.I+this.F&65535));this.J=this.J&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.J&255,this.T(this.D,this.G));this.J=this.J&-256|
a;this.A-=this.B.aa},function(a){a=a.call(this,this.J&255,this.T(this.D,this.F));this.J=this.J&-256|a;this.A-=this.B.aa},function(a){a=a.call(this,this.J&255,this.T(this.D,this.L()));this.J=this.J&-256|a;this.A-=this.B.sa},function(a){a=a.call(this,this.J&255,this.T(this.D,this.C));this.J=this.J&-256|a;this.A-=this.B.aa},function(a){a=a.call(this,this.K&255,this.T(this.D,this.C+this.G&65535));this.K=this.K&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.K&255,this.T(this.D,this.C+this.F&
@ -235,8 +234,8 @@ this.I+this.F+this.L()&65535));this.J=this.J&255|a<<8;this.A-=this.B.V},function
255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.T(this.D,this.C+this.G+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.V},function(a){a=a.call(this,this.K>>8,this.T(this.D,this.C+this.F+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.K>>8,this.T(this.N,this.I+this.G+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.K>>8,this.T(this.N,this.I+this.F+this.L()&65535));this.K=this.K&255|a<<8;this.A-=
this.B.V},function(a){a=a.call(this,this.K>>8,this.T(this.D,this.G+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.T(this.D,this.F+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.T(this.N,this.I+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.T(this.D,this.C+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>
8,this.T(this.D,this.C+this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.V},function(a){a=a.call(this,this.C>>8,this.T(this.D,this.C+this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.C>>8,this.T(this.N,this.I+this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.C>>8,this.T(this.N,this.I+this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.V},function(a){a=a.call(this,this.C>>8,this.T(this.D,
this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.D,this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.N,this.I+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.D,this.C+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},te,ue,ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,
Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf,of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef],O=[function(a){this.H=a.call(this,this.H,this.U(this.D,this.C+this.G&65535));this.A-=this.B.fa},function(a){this.H=a.call(this,this.H,this.U(this.D,this.C+this.F&65535));this.A-=this.B.ga},function(a){this.H=a.call(this,this.H,this.U(this.N,this.I+this.G&65535));this.A-=this.B.ga},function(a){this.H=a.call(this,this.H,this.U(this.N,this.I+this.F&65535));this.A-=this.B.fa},function(a){this.H=a.call(this,
this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.D,this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.N,this.I+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.D,this.C+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,
$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf,of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf],O=[function(a){this.H=a.call(this,this.H,this.U(this.D,this.C+this.G&65535));this.A-=this.B.fa},function(a){this.H=a.call(this,this.H,this.U(this.D,this.C+this.F&65535));this.A-=this.B.ga},function(a){this.H=a.call(this,this.H,this.U(this.N,this.I+this.G&65535));this.A-=this.B.ga},function(a){this.H=a.call(this,this.H,this.U(this.N,this.I+this.F&65535));this.A-=this.B.fa},function(a){this.H=a.call(this,
this.H,this.U(this.D,this.G));this.A-=this.B.aa},function(a){this.H=a.call(this,this.H,this.U(this.D,this.F));this.A-=this.B.aa},function(a){this.H=a.call(this,this.H,this.U(this.D,this.L()));this.A-=this.B.sa},function(a){this.H=a.call(this,this.H,this.U(this.D,this.C));this.A-=this.B.aa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.C+this.G&65535));this.A-=this.B.fa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.C+this.F&65535));this.A-=this.B.ga},function(a){this.J=a.call(this,
this.J,this.U(this.N,this.I+this.G&65535));this.A-=this.B.ga},function(a){this.J=a.call(this,this.J,this.U(this.N,this.I+this.F&65535));this.A-=this.B.fa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.G));this.A-=this.B.aa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.F));this.A-=this.B.aa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.L()));this.A-=this.B.sa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.C));this.A-=this.B.aa},function(a){this.K=a.call(this,
this.K,this.U(this.D,this.C+this.G&65535));this.A-=this.B.fa},function(a){this.K=a.call(this,this.K,this.U(this.D,this.C+this.F&65535));this.A-=this.B.ga},function(a){this.K=a.call(this,this.K,this.U(this.N,this.I+this.G&65535));this.A-=this.B.ga},function(a){this.K=a.call(this,this.K,this.U(this.N,this.I+this.F&65535));this.A-=this.B.fa},function(a){this.K=a.call(this,this.K,this.U(this.D,this.G));this.A-=this.B.aa},function(a){this.K=a.call(this,this.K,this.U(this.D,this.F));this.A-=this.B.aa},
@ -271,8 +270,8 @@ this.U(this.D,this.C+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.cal
this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.call(this,this.I,this.U(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.call(this,this.I,this.U(this.N,this.I+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.call(this,this.I,this.U(this.D,this.C+this.L()&65535));this.A-=this.B.Q},function(a){this.G=a.call(this,this.G,this.U(this.D,this.C+this.G+this.L()&65535));this.A-=this.B.V},function(a){this.G=a.call(this,this.G,this.U(this.D,this.C+this.F+this.L()&65535));
this.A-=this.B.W},function(a){this.G=a.call(this,this.G,this.U(this.N,this.I+this.G+this.L()&65535));this.A-=this.B.W},function(a){this.G=a.call(this,this.G,this.U(this.N,this.I+this.F+this.L()&65535));this.A-=this.B.V},function(a){this.G=a.call(this,this.G,this.U(this.D,this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.G=a.call(this,this.G,this.U(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.G=a.call(this,this.G,this.U(this.N,this.I+this.L()&65535));this.A-=this.B.Q},
function(a){this.G=a.call(this,this.G,this.U(this.D,this.C+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.D,this.C+this.G+this.L()&65535));this.A-=this.B.V},function(a){this.F=a.call(this,this.F,this.U(this.D,this.C+this.F+this.L()&65535));this.A-=this.B.W},function(a){this.F=a.call(this,this.F,this.U(this.N,this.I+this.G+this.L()&65535));this.A-=this.B.W},function(a){this.F=a.call(this,this.F,this.U(this.N,this.I+this.F+this.L()&65535));this.A-=this.B.V},function(a){this.F=
a.call(this,this.F,this.U(this.D,this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.N,this.I+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.D,this.C+this.L()&65535));this.A-=this.B.Q},Ff,Gf,Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg,zg,
Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg],Tg=[function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-=this.B.fa},function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.F&65535),b.call(this));this.R(c);this.A-=this.B.fa},
a.call(this,this.F,this.U(this.D,this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.N,this.I+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.D,this.C+this.L()&65535));this.A-=this.B.Q},Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg,zg,Ag,Bg,
Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg],Vg=[function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-=this.B.fa},function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.F&65535),b.call(this));this.R(c);this.A-=this.B.fa},
function(a,b){var c=a[0].call(this,this.O(this.D,this.G),b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[0].call(this,this.O(this.D,this.F),b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[0].call(this,this.O(this.D,this.L()),b.call(this));this.R(c);this.A-=this.B.sa},function(a,b){var c=a[0].call(this,this.O(this.D,this.C),b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[1].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-=
this.B.fa},function(a,b){var c=a[1].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[1].call(this,this.O(this.N,this.I+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[1].call(this,this.O(this.N,this.I+this.F&65535),b.call(this));this.R(c);this.A-=this.B.fa},function(a,b){var c=a[1].call(this,this.O(this.D,this.G),b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[1].call(this,this.O(this.D,this.F),
b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[1].call(this,this.O(this.D,this.L()),b.call(this));this.R(c);this.A-=this.B.sa},function(a,b){var c=a[1].call(this,this.O(this.D,this.C),b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[2].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-=this.B.fa},function(a,b){var c=a[2].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[2].call(this,
@ -325,7 +324,7 @@ this.K=this.K&-256|c},function(a,b){var c=a[4].call(this,this.C&255,b.call(this)
this.H&-256|c},function(a,b){var c=a[5].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[5].call(this,this.K&255,b.call(this));this.K=this.K&-256|c},function(a,b){var c=a[5].call(this,this.C&255,b.call(this));this.C=this.C&-256|c},function(a,b){var c=a[5].call(this,this.H>>8,b.call(this));this.H=this.H&255|c<<8},function(a,b){var c=a[5].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[5].call(this,this.K>>8,b.call(this));this.K=this.K&255|
c<<8},function(a,b){var c=a[5].call(this,this.C>>8,b.call(this));this.C=this.C&255|c<<8},function(a,b){var c=a[6].call(this,this.H&255,b.call(this));this.H=this.H&-256|c},function(a,b){var c=a[6].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[6].call(this,this.K&255,b.call(this));this.K=this.K&-256|c},function(a,b){var c=a[6].call(this,this.C&255,b.call(this));this.C=this.C&-256|c},function(a,b){var c=a[6].call(this,this.H>>8,b.call(this));this.H=this.H&255|c<<8},function(a,
b){var c=a[6].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[6].call(this,this.K>>8,b.call(this));this.K=this.K&255|c<<8},function(a,b){var c=a[6].call(this,this.C>>8,b.call(this));this.C=this.C&255|c<<8},function(a,b){var c=a[7].call(this,this.H&255,b.call(this));this.H=this.H&-256|c},function(a,b){var c=a[7].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[7].call(this,this.K&255,b.call(this));this.K=this.K&-256|c},function(a,b){var c=
a[7].call(this,this.C&255,b.call(this));this.C=this.C&-256|c},function(a,b){var c=a[7].call(this,this.H>>8,b.call(this));this.H=this.H&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.K>>8,b.call(this));this.K=this.K&255|c<<8},function(a,b){var c=a[7].call(this,this.C>>8,b.call(this));this.C=this.C&255|c<<8}],Ug=[function(a,b){var c=a[0].call(this,this.P(this.D,this.C+this.G&65535),b.call(this));this.S(c);this.A-=
a[7].call(this,this.C&255,b.call(this));this.C=this.C&-256|c},function(a,b){var c=a[7].call(this,this.H>>8,b.call(this));this.H=this.H&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.K>>8,b.call(this));this.K=this.K&255|c<<8},function(a,b){var c=a[7].call(this,this.C>>8,b.call(this));this.C=this.C&255|c<<8}],Wg=[function(a,b){var c=a[0].call(this,this.P(this.D,this.C+this.G&65535),b.call(this));this.S(c);this.A-=
this.B.fa},function(a,b){var c=a[0].call(this,this.P(this.D,this.C+this.F&65535),b.call(this));this.S(c);this.A-=this.B.ga},function(a,b){var c=a[0].call(this,this.P(this.N,this.I+this.G&65535),b.call(this));this.S(c);this.A-=this.B.ga},function(a,b){var c=a[0].call(this,this.P(this.N,this.I+this.F&65535),b.call(this));this.S(c);this.A-=this.B.fa},function(a,b){var c=a[0].call(this,this.P(this.D,this.G),b.call(this));this.S(c);this.A-=this.B.aa},function(a,b){var c=a[0].call(this,this.P(this.D,this.F),
b.call(this));this.S(c);this.A-=this.B.aa},function(a,b){var c=a[0].call(this,this.P(this.D,this.L()),b.call(this));this.S(c);this.A-=this.B.sa},function(a,b){var c=a[0].call(this,this.P(this.D,this.C),b.call(this));this.S(c);this.A-=this.B.aa},function(a,b){var c=a[1].call(this,this.P(this.D,this.C+this.G&65535),b.call(this));this.S(c);this.A-=this.B.fa},function(a,b){var c=a[1].call(this,this.P(this.D,this.C+this.F&65535),b.call(this));this.S(c);this.A-=this.B.ga},function(a,b){var c=a[1].call(this,
this.P(this.N,this.I+this.G&65535),b.call(this));this.S(c);this.A-=this.B.ga},function(a,b){var c=a[1].call(this,this.P(this.N,this.I+this.F&65535),b.call(this));this.S(c);this.A-=this.B.fa},function(a,b){var c=a[1].call(this,this.P(this.D,this.G),b.call(this));this.S(c);this.A-=this.B.aa},function(a,b){var c=a[1].call(this,this.P(this.D,this.F),b.call(this));this.S(c);this.A-=this.B.aa},function(a,b){var c=a[1].call(this,this.P(this.D,this.L()),b.call(this));this.S(c);this.A-=this.B.sa},function(a,
@ -376,292 +375,291 @@ b.call(this))},function(a,b){this.K=a[3].call(this,this.K,b.call(this))},functio
this.K,b.call(this))},function(a,b){this.C=a[4].call(this,this.C,b.call(this))},function(a,b){this.X=a[4].call(this,this.X,b.call(this))},function(a,b){this.I=a[4].call(this,this.I,b.call(this))},function(a,b){this.G=a[4].call(this,this.G,b.call(this))},function(a,b){this.F=a[4].call(this,this.F,b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.K=a[5].call(this,this.K,b.call(this))},function(a,b){this.C=
a[5].call(this,this.C,b.call(this))},function(a,b){this.X=a[5].call(this,this.X,b.call(this))},function(a,b){this.I=a[5].call(this,this.I,b.call(this))},function(a,b){this.G=a[5].call(this,this.G,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.J=a[6].call(this,this.J,b.call(this))},function(a,b){this.K=a[6].call(this,this.K,b.call(this))},function(a,b){this.C=a[6].call(this,this.C,b.call(this))},
function(a,b){this.Z|=512;this.X=a[6].call(this,this.X,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a,b){this.K=a[7].call(this,this.K,b.call(this))},function(a,b){this.C=a[7].call(this,this.C,b.call(this))},function(a,b){this.X=a[7].call(this,
this.X,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}];function vc(){Vg[this.da()].call(this)}function xc(){F(this,this.X);this.A-=this.B.kc}function ec(){var a=this.X;F(this,this.H);F(this,this.J);F(this,this.K);F(this,this.C);F(this,a);F(this,this.I);F(this,this.G);F(this,this.F);this.A-=this.B.cl}
function fc(){this.F=this.Da();this.G=this.Da();this.I=this.Da();this.X+=2;this.C=this.Da();this.K=this.Da();this.J=this.Da();this.H=this.Da();this.A-=this.B.al}function gc(){O[this.da()].call(this,ke)}function wc(){Rg[this.da()].call(this,le)}function hc(){F(this,this.L());this.A-=this.B.kc}function ic(){O[this.da()].call(this,fe)}function jc(){F(this,this.da());this.A-=this.B.kc}function kc(){O[this.da()].call(this,ee)}
function lc(){var a=1,b=0,c=5;this.va&192&&(a=this.J,b=1,this.va&256&&(c=4));if(a--){var d=gb(this.qa,this.K,this.Ba-b-1);$c(this,this.jb.Vb(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(K(this,-2),this.Z|=256)}}
function mc(){var a=1,b=0,c=5;this.va&192&&(a=this.J,b=1,this.va&256&&(c=4));if(a--){var d=this.Ba-b-1,d=gb(this.qa,this.K,d)|gb(this.qa,this.K,d)<<8;E(this,this.jb.Vb(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(K(this,-2),this.Z|=256)}}
function nc(){var a=1,b=0,c=5;this.va&192&&(a=this.J,b=1,this.va&256&&(c=4));if(a--){var d=Zc(this,this.Rb.xc(this.G,0));this.G=this.G+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;ib(this.qa,this.K,d,this.Ba-b-1);a&&(K(this,-2),this.Z|=256)}}
function oc(){var a=1,b=0,c=5;this.va&192&&(a=this.J,b=1,this.va&256&&(c=4));if(a--){var d=D(this,this.Rb.xc(this.G,1));this.G=this.G+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ba-b-1;ib(this.qa,this.K,d&255,b);ib(this.qa,this.K,d>>8,b);a&&(K(this,-2),this.Z|=256)}}function Wg(){var a=this.M();Pc(this)?(J(this,this.ta+a),this.A-=this.B.Pb):this.A-=this.B.Qb}function Xg(){var a=this.M();Pc(this)?this.A-=this.B.Qb:(J(this,this.ta+a),this.A-=this.B.Pb)}
function Yg(){var a=this.M();Kc(this)?(J(this,this.ta+a),this.A-=this.B.Pb):this.A-=this.B.Qb}function Zg(){var a=this.M();Kc(this)?this.A-=this.B.Qb:(J(this,this.ta+a),this.A-=this.B.Pb)}function $g(){var a=this.M();Nc(this)?(J(this,this.ta+a),this.A-=this.B.Pb):this.A-=this.B.Qb}function ah(){var a=this.M();Nc(this)?this.A-=this.B.Qb:(J(this,this.ta+a),this.A-=this.B.Pb)}function bh(){var a=this.M();Kc(this)||Nc(this)?(J(this,this.ta+a),this.A-=this.B.Pb):this.A-=this.B.Qb}
function ch(){var a=this.M();Kc(this)||Nc(this)?this.A-=this.B.Qb:(J(this,this.ta+a),this.A-=this.B.Pb)}function dh(){var a=this.M();Oc(this)?(J(this,this.ta+a),this.A-=this.B.Pb):this.A-=this.B.Qb}function eh(){var a=this.M();Oc(this)?this.A-=this.B.Qb:(J(this,this.ta+a),this.A-=this.B.Pb)}function fh(){var a=this.M();Lc(this)?(J(this,this.ta+a),this.A-=this.B.Pb):this.A-=this.B.Qb}function gh(){var a=this.M();Lc(this)?this.A-=this.B.Qb:(J(this,this.ta+a),this.A-=this.B.Pb)}
function hh(){var a=this.M();!Oc(this)!=!Pc(this)?(J(this,this.ta+a),this.A-=this.B.Pb):this.A-=this.B.Qb}function ih(){var a=this.M();!Oc(this)==!Pc(this)?(J(this,this.ta+a),this.A-=this.B.Pb):this.A-=this.B.Qb}function jh(){var a=this.M();Nc(this)||!Oc(this)!=!Pc(this)?(J(this,this.ta+a),this.A-=this.B.Pb):this.A-=this.B.Qb}function kh(){var a=this.M();Nc(this)||!Oc(this)!=!Pc(this)?this.A-=this.B.Qb:(J(this,this.ta+a),this.A-=this.B.Pb)}
function lh(){Tg[this.da()].call(this,Pd,this.da);this.A-=0>this.Ia?1:this.B.Vg}function pc(){Tg[this.da()].call(this,Zd,Md)}function qc(){Ug[this.da()].call(this,$d,Md)}function mh(){var a=this.L();J(this,this.Da());this.X=this.X+a&65535;this.A-=this.B.hl}function nh(){J(this,this.Da());this.A-=this.B.el}
function rc(){var a=this.L(),b=this.da()&31;this.A-=11;F(this,this.I);var c=this.X;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.I=this.I-2&65535,F(this,D(this,this.cb.xc(this.I,1)));F(this,c)}this.I=c;this.X=this.X-a&65535}function sc(){this.X=this.I;this.I=this.Da();this.A-=5}function oh(){var a=this.L(),b=this.Da(),c=this.Da();this.X=this.X+a&65535;Vb(this,b,c,!1)&&(this.X=this.X+a&65535);this.Bh&&Dc(this,this.Ba);this.A-=this.B.gl}
function ph(){Vb(this,this.Da(),this.Da(),!1);this.A-=this.B.fl}function qh(){O[this.da()].call(this,ge);this.A-=8}function rh(){this.Z|=36;this.A-=this.B.Nd}function tc(){M.call(this)}function G(){C.call(this,6);qb(this)}function M(){J(this,this.Sf-this.wa.Ea);var a=ab(this.qa,this.Ba);Qa(this,"Undefined opcode 0x"+p(a,2)+" at "+da(this.ta,this.wa.za));qb(this)}
var ac=[function(){var a=this.da();Qg[a].call(this,dd)},function(){Rg[this.da()].call(this,ld)},function(){Sg[this.da()].call(this,dd)},function(){O[this.da()].call(this,ld)},function(){this.H=this.H&-256|dd.call(this,this.H&255,this.da());this.A--},function(){this.H=ld.call(this,this.H,this.L());this.A--},function(){F(this,this.jb.za);this.A-=this.B.Nf},function(){Jc(this,this.Da());this.A-=this.B.ec},function(){Qg[this.da()].call(this,ed)},function(){Rg[this.da()].call(this,md)},function(){Sg[this.da()].call(this,
ed)},function(){O[this.da()].call(this,md)},function(){this.H=this.H&-256|ed.call(this,this.H&255,this.da());this.A--},function(){this.H=md.call(this,this.H,this.L());this.A--},function(){F(this,this.wa.za);this.A-=this.B.Nf},function(){Gc(this,this.Da());this.A-=this.B.ec},function(){Qg[this.da()].call(this,fd)},function(){Rg[this.da()].call(this,nd)},function(){Sg[this.da()].call(this,fd)},function(){O[this.da()].call(this,nd)},function(){this.H=this.H&-256|fd.call(this,this.H&255,this.da());this.A--},
function(){this.H=nd.call(this,this.H,this.L());this.A--},function(){F(this,this.cb.za);this.A-=this.B.Nf},function(){Ic(this,this.Da());this.A-=this.B.ec},function(){Qg[this.da()].call(this,gd)},function(){Rg[this.da()].call(this,od)},function(){Sg[this.da()].call(this,gd)},function(){O[this.da()].call(this,od)},function(){this.H=this.H&-256|gd.call(this,this.H&255,this.da());this.A--},function(){this.H=od.call(this,this.H,this.L());this.A--},function(){F(this,this.Rb.za);this.A-=this.B.Nf},function(){Hc(this,
this.Da());this.A-=this.B.ec},function(){Qg[this.da()].call(this,hd)},function(){Rg[this.da()].call(this,pd)},function(){Sg[this.da()].call(this,hd)},function(){O[this.da()].call(this,pd)},function(){this.H=this.H&-256|hd.call(this,this.H&255,this.da());this.A--},function(){this.H=pd.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.jb;this.A-=this.B.Nd},function(){var a=this.H&255,b=Mc(this),c=this.Y&this.ca;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.H=this.H&
-256|(this.Y=this.ia=a&255);this.ca=65536;c&&(this.Y|=this.ca);b?Vc(this):Rc(this);this.A-=this.B.re},function(){Qg[this.da()].call(this,id)},function(){Rg[this.da()].call(this,qd)},function(){Sg[this.da()].call(this,id)},function(){O[this.da()].call(this,qd)},function(){this.H=this.H&-256|id.call(this,this.H&255,this.da());this.A--},function(){this.H=qd.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.wa;this.A-=this.B.Nd},function(){var a=this.H&255,b=Mc(this),c=this.Y&
this.ca;if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.H=this.H&-256|(this.Y=this.ia=a&255);this.ca=65536;c&&(this.Y|=this.ca);b?Vc(this):Rc(this);this.A-=this.B.re},function(){Qg[this.da()].call(this,jd)},function(){Rg[this.da()].call(this,rd)},function(){Sg[this.da()].call(this,jd)},function(){O[this.da()].call(this,rd)},function(){this.H=this.H&-256|jd.call(this,this.H&255,this.da());this.A--},function(){this.H=rd.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.cb;
this.A-=this.B.Nd},function(){var a=this.H&255,b=this.H>>8,c,d=Mc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Y=a);this.ca=65536;c&&(this.Y|=this.ca);d?Vc(this):Rc(this);this.A-=this.B.re},function(){Qg[this.da()].call(this,kd)},function(){Rg[this.da()].call(this,sd)},function(){Sg[this.da()].call(this,kd)},function(){O[this.da()].call(this,sd)},function(){this.H=this.H&-256|kd.call(this,this.H&255,this.da());this.A--},function(){this.H=sd.call(this,this.H,this.L());this.A--},
function(){this.Z|=20;this.D=this.N=this.Rb;this.A-=this.B.Nd},function(){var a=this.H&255,b=this.H>>8,c,d=Mc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Y=a);this.ca=65536;c&&(this.Y|=this.ca);d?Vc(this):Rc(this);this.A-=this.B.re},function(){this.ma=this.H;this.H=(this.ia=this.H+1)&65535;this.Y=this.H|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.J;this.J=(this.ia=this.J+1)&65535;this.Y=this.J|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=
this.X,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}];function uc(){Xg[this.da()].call(this)}function wc(){G(this,this.X);this.A-=this.B.lc}function dc(){var a=this.X;G(this,this.H);G(this,this.J);G(this,this.K);G(this,this.C);G(this,a);G(this,this.I);G(this,this.G);G(this,this.F);this.A-=this.B.$k}
function ec(){this.F=this.Ga();this.G=this.Ga();this.I=this.Ga();this.X+=2;this.C=this.Ga();this.K=this.Ga();this.J=this.Ga();this.H=this.Ga();this.A-=this.B.Yk}function fc(){O[this.da()].call(this,je)}function vc(){Tg[this.da()].call(this,ke)}function gc(){G(this,this.L());this.A-=this.B.lc}function hc(){O[this.da()].call(this,ee)}function ic(){G(this,this.da());this.A-=this.B.lc}function jc(){O[this.da()].call(this,de)}
function kc(){var a=1,b=0,c=5;this.va&192&&(a=this.J,b=1,this.va&256&&(c=4));if(a--){var d=gb(this.qa,this.K,this.Ba-b-1);Zc(this,this.Pa.Ub(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(K(this,-2),this.Z|=256)}}
function lc(){var a=1,b=0,c=5;this.va&192&&(a=this.J,b=1,this.va&256&&(c=4));if(a--){var d=this.Ba-b-1,d=gb(this.qa,this.K,d)|gb(this.qa,this.K,d)<<8;F(this,this.Pa.Ub(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(K(this,-2),this.Z|=256)}}
function mc(){var a=1,b=0,c=5;this.va&192&&(a=this.J,b=1,this.va&256&&(c=4));if(a--){var d=Yc(this,this.wb.yc(this.G,0));this.G=this.G+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;ib(this.qa,this.K,d,this.Ba-b-1);a&&(K(this,-2),this.Z|=256)}}
function nc(){var a=1,b=0,c=5;this.va&192&&(a=this.J,b=1,this.va&256&&(c=4));if(a--){var d=D(this,this.wb.yc(this.G,1));this.G=this.G+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ba-b-1;ib(this.qa,this.K,d&255,b);ib(this.qa,this.K,d>>8,b);a&&(K(this,-2),this.Z|=256)}}function Yg(){var a=this.M();Oc(this)?(J(this,this.ta+a),this.A-=this.B.Ob):this.A-=this.B.Pb}function Zg(){var a=this.M();Oc(this)?this.A-=this.B.Pb:(J(this,this.ta+a),this.A-=this.B.Ob)}
function $g(){var a=this.M();Jc(this)?(J(this,this.ta+a),this.A-=this.B.Ob):this.A-=this.B.Pb}function ah(){var a=this.M();Jc(this)?this.A-=this.B.Pb:(J(this,this.ta+a),this.A-=this.B.Ob)}function bh(){var a=this.M();Mc(this)?(J(this,this.ta+a),this.A-=this.B.Ob):this.A-=this.B.Pb}function ch(){var a=this.M();Mc(this)?this.A-=this.B.Pb:(J(this,this.ta+a),this.A-=this.B.Ob)}function dh(){var a=this.M();Jc(this)||Mc(this)?(J(this,this.ta+a),this.A-=this.B.Ob):this.A-=this.B.Pb}
function eh(){var a=this.M();Jc(this)||Mc(this)?this.A-=this.B.Pb:(J(this,this.ta+a),this.A-=this.B.Ob)}function fh(){var a=this.M();Nc(this)?(J(this,this.ta+a),this.A-=this.B.Ob):this.A-=this.B.Pb}function gh(){var a=this.M();Nc(this)?this.A-=this.B.Pb:(J(this,this.ta+a),this.A-=this.B.Ob)}function hh(){var a=this.M();Kc(this)?(J(this,this.ta+a),this.A-=this.B.Ob):this.A-=this.B.Pb}function ih(){var a=this.M();Kc(this)?this.A-=this.B.Pb:(J(this,this.ta+a),this.A-=this.B.Ob)}
function jh(){var a=this.M();!Nc(this)!=!Oc(this)?(J(this,this.ta+a),this.A-=this.B.Ob):this.A-=this.B.Pb}function kh(){var a=this.M();!Nc(this)==!Oc(this)?(J(this,this.ta+a),this.A-=this.B.Ob):this.A-=this.B.Pb}function lh(){var a=this.M();Mc(this)||!Nc(this)!=!Oc(this)?(J(this,this.ta+a),this.A-=this.B.Ob):this.A-=this.B.Pb}function mh(){var a=this.M();Mc(this)||!Nc(this)!=!Oc(this)?this.A-=this.B.Pb:(J(this,this.ta+a),this.A-=this.B.Ob)}
function nh(){Vg[this.da()].call(this,Od,this.da);this.A-=0>this.Ha?1:this.B.Ug}function oc(){Vg[this.da()].call(this,Yd,Ld)}function pc(){Wg[this.da()].call(this,Zd,Ld)}function oh(){var a=this.L();J(this,this.Ga());this.X=this.X+a&65535;this.A-=this.B.el}function ph(){J(this,this.Ga());this.A-=this.B.bl}
function qc(){var a=this.L(),b=this.da()&31;this.A-=11;G(this,this.I);var c=this.X;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.I=this.I-2&65535,G(this,D(this,this.qb.yc(this.I,1)));G(this,c)}this.I=c;this.X=this.X-a&65535}function rc(){this.X=this.I;this.I=this.Ga();this.A-=5}function qh(){qe.call(this,this.L());this.A-=this.B.dl}function rh(){qe.call(this,0);this.A-=this.B.cl}function sh(){O[this.da()].call(this,fe);this.A-=8}function th(){this.Z|=36;this.A-=this.B.Md}
function sc(){N.call(this)}function H(){C.call(this,6);qb(this)}function N(){J(this,this.Qf-this.xa.Ia);var a=ab(this.qa,this.Ba);Qa(this,"Undefined opcode 0x"+p(a,2)+" at "+da(this.ta,this.xa.ya));qb(this)}
var $b=[function(){var a=this.da();Sg[a].call(this,cd)},function(){Tg[this.da()].call(this,kd)},function(){Ug[this.da()].call(this,cd)},function(){O[this.da()].call(this,kd)},function(){this.H=this.H&-256|cd.call(this,this.H&255,this.da());this.A--},function(){this.H=kd.call(this,this.H,this.L());this.A--},function(){G(this,this.Pa.ya);this.A-=this.B.Lf},function(){Ic(this,this.Ga());this.A-=this.B.ec},function(){Sg[this.da()].call(this,dd)},function(){Tg[this.da()].call(this,ld)},function(){Ug[this.da()].call(this,
dd)},function(){O[this.da()].call(this,ld)},function(){this.H=this.H&-256|dd.call(this,this.H&255,this.da());this.A--},function(){this.H=ld.call(this,this.H,this.L());this.A--},function(){G(this,this.xa.ya);this.A-=this.B.Lf},function(){Fc(this,this.Ga());this.A-=this.B.ec},function(){Sg[this.da()].call(this,ed)},function(){Tg[this.da()].call(this,md)},function(){Ug[this.da()].call(this,ed)},function(){O[this.da()].call(this,md)},function(){this.H=this.H&-256|ed.call(this,this.H&255,this.da());this.A--},
function(){this.H=md.call(this,this.H,this.L());this.A--},function(){G(this,this.qb.ya);this.A-=this.B.Lf},function(){Hc(this,this.Ga());this.A-=this.B.ec},function(){Sg[this.da()].call(this,fd)},function(){Tg[this.da()].call(this,nd)},function(){Ug[this.da()].call(this,fd)},function(){O[this.da()].call(this,nd)},function(){this.H=this.H&-256|fd.call(this,this.H&255,this.da());this.A--},function(){this.H=nd.call(this,this.H,this.L());this.A--},function(){G(this,this.wb.ya);this.A-=this.B.Lf},function(){Gc(this,
this.Ga());this.A-=this.B.ec},function(){Sg[this.da()].call(this,gd)},function(){Tg[this.da()].call(this,od)},function(){Ug[this.da()].call(this,gd)},function(){O[this.da()].call(this,od)},function(){this.H=this.H&-256|gd.call(this,this.H&255,this.da());this.A--},function(){this.H=od.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.Pa;this.A-=this.B.Md},function(){var a=this.H&255,b=Lc(this),c=this.Y&this.ca;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.H=this.H&
-256|(this.Y=this.ia=a&255);this.ca=65536;c&&(this.Y|=this.ca);b?Uc(this):Qc(this);this.A-=this.B.pe},function(){Sg[this.da()].call(this,hd)},function(){Tg[this.da()].call(this,pd)},function(){Ug[this.da()].call(this,hd)},function(){O[this.da()].call(this,pd)},function(){this.H=this.H&-256|hd.call(this,this.H&255,this.da());this.A--},function(){this.H=pd.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.xa;this.A-=this.B.Md},function(){var a=this.H&255,b=Lc(this),c=this.Y&
this.ca;if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.H=this.H&-256|(this.Y=this.ia=a&255);this.ca=65536;c&&(this.Y|=this.ca);b?Uc(this):Qc(this);this.A-=this.B.pe},function(){Sg[this.da()].call(this,id)},function(){Tg[this.da()].call(this,qd)},function(){Ug[this.da()].call(this,id)},function(){O[this.da()].call(this,qd)},function(){this.H=this.H&-256|id.call(this,this.H&255,this.da());this.A--},function(){this.H=qd.call(this,this.H,this.L());this.A--},function(){this.Z|=20;this.D=this.N=this.qb;
this.A-=this.B.Md},function(){var a=this.H&255,b=this.H>>8,c,d=Lc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Y=a);this.ca=65536;c&&(this.Y|=this.ca);d?Uc(this):Qc(this);this.A-=this.B.pe},function(){Sg[this.da()].call(this,jd)},function(){Tg[this.da()].call(this,rd)},function(){Ug[this.da()].call(this,jd)},function(){O[this.da()].call(this,rd)},function(){this.H=this.H&-256|jd.call(this,this.H&255,this.da());this.A--},function(){this.H=rd.call(this,this.H,this.L());this.A--},
function(){this.Z|=20;this.D=this.N=this.wb;this.A-=this.B.Md},function(){var a=this.H&255,b=this.H>>8,c,d=Lc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Y=a);this.ca=65536;c&&(this.Y|=this.ca);d?Uc(this):Qc(this);this.A-=this.B.pe},function(){this.ma=this.H;this.H=(this.ia=this.H+1)&65535;this.Y=this.H|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.J;this.J=(this.ia=this.J+1)&65535;this.Y=this.J|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=
2},function(){this.ma=this.K;this.K=(this.ia=this.K+1)&65535;this.Y=this.K|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.C;this.C=(this.ia=this.C+1)&65535;this.Y=this.C|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.X;this.X=(this.ia=this.X+1)&65535;this.Y=this.X|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.I;this.I=(this.ia=this.I+1)&65535;this.Y=this.I|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=
this.G;this.G=(this.ia=this.G+1)&65535;this.Y=this.G|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.F;this.F=(this.ia=this.F+1)&65535;this.Y=this.F|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.H;this.H=(this.ia=this.H-1)&65535;this.Y=this.H|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.J;this.J=(this.ia=this.J-1)&65535;this.Y=this.J|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.K;this.K=
(this.ia=this.K-1)&65535;this.Y=this.K|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.C;this.C=(this.ia=this.C-1)&65535;this.Y=this.C|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.X;this.X=(this.ia=this.X-1)&65535;this.Y=this.X|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.I;this.I=(this.ia=this.I-1)&65535;this.Y=this.I|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.G;this.G=(this.ia=this.G-
1)&65535;this.Y=this.G|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.F;this.F=(this.ia=this.F-1)&65535;this.Y=this.F|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){F(this,this.H);this.A-=this.B.kc},function(){F(this,this.J);this.A-=this.B.kc},function(){F(this,this.K);this.A-=this.B.kc},function(){F(this,this.C);this.A-=this.B.kc},function(){F(this,this.X-2&65535);this.A-=this.B.kc},function(){F(this,this.I);this.A-=this.B.kc},function(){F(this,this.G);this.A-=
this.B.kc},function(){F(this,this.F);this.A-=this.B.kc},function(){this.H=this.Da();this.A-=this.B.ec},function(){this.J=this.Da();this.A-=this.B.ec},function(){this.K=this.Da();this.A-=this.B.ec},function(){this.C=this.Da();this.A-=this.B.ec},function(){this.X=this.Da();this.A-=this.B.ec},function(){this.I=this.Da();this.A-=this.B.ec},function(){this.G=this.Da();this.A-=this.B.ec},function(){this.F=this.Da();this.A-=this.B.ec},Wg,Xg,Yg,Zg,$g,ah,bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,Wg,Xg,Yg,Zg,$g,ah,bh,
ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,function(){Ug[this.da()].call(this,Qd,this.L);this.A-=0>this.Ia?1:this.B.Vg},lh,function(){Ug[this.da()].call(this,Qd,this.M);this.A-=0>this.Ia?1:this.B.Vg},function(){Qg[this.da()].call(this,ce)},function(){Rg[this.da()].call(this,de)},function(){Sg[this.pg=this.da()].call(this,oe)},function(){O[this.pg=this.da()].call(this,pe)},function(){this.Z|=1;Qg[this.da()].call(this,ae)},function(){this.Z|=1;Rg[this.da()].call(this,ae)},function(){Sg[this.da()].call(this,ae)},
function(){O[this.da()].call(this,ae)},function(){var a=this.da();switch((a&56)>>3){case 0:this.Eb=this.jb.za;break;case 1:this.Eb=this.wa.za;break;case 2:this.Eb=this.cb.za;break;case 3:this.Eb=this.Rb.za;break;default:M.call(this);return}this.Z|=1;Rg[a].call(this,be)},function(){this.Z|=1;this.D=this.N=this.wl;O[this.da()].call(this,he)},function(){var a,b=this.da(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Ha){G.call(this);return}switch(c){case 1:a=
this.J;break;case 4:a=this.X;break;case 5:a=this.I;break;case 6:a=this.G;break;case 7:a=this.F}}O[b].call(this,ae);switch(c){case 0:Jc(this,this.H);this.H=a;break;case 1:Gc(this,this.J);this.J=a;break;case 2:Ic(this,this.K);this.K=a;break;case 3:Hc(this,this.C);this.C=a;break;case 4:Jc(this,this.X);this.X=a;break;case 5:Gc(this,this.I);this.I=a;break;case 6:Ic(this,this.G);this.G=a;break;case 7:Hc(this,this.F),this.F=a}},function(){this.Z|=1;Ug[this.da()].call(this,Rd,this.Da)},function(){this.A-=
1)&65535;this.Y=this.G|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ma=this.F;this.F=(this.ia=this.F-1)&65535;this.Y=this.F|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){G(this,this.H);this.A-=this.B.lc},function(){G(this,this.J);this.A-=this.B.lc},function(){G(this,this.K);this.A-=this.B.lc},function(){G(this,this.C);this.A-=this.B.lc},function(){G(this,this.X-2&65535);this.A-=this.B.lc},function(){G(this,this.I);this.A-=this.B.lc},function(){G(this,this.G);this.A-=
this.B.lc},function(){G(this,this.F);this.A-=this.B.lc},function(){this.H=this.Ga();this.A-=this.B.ec},function(){this.J=this.Ga();this.A-=this.B.ec},function(){this.K=this.Ga();this.A-=this.B.ec},function(){this.C=this.Ga();this.A-=this.B.ec},function(){this.X=this.Ga();this.A-=this.B.ec},function(){this.I=this.Ga();this.A-=this.B.ec},function(){this.G=this.Ga();this.A-=this.B.ec},function(){this.F=this.Ga();this.A-=this.B.ec},Yg,Zg,$g,ah,bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,Yg,Zg,$g,ah,bh,ch,dh,
eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,function(){Wg[this.da()].call(this,Pd,this.L);this.A-=0>this.Ha?1:this.B.Ug},nh,function(){Wg[this.da()].call(this,Pd,this.M);this.A-=0>this.Ha?1:this.B.Ug},function(){Sg[this.da()].call(this,be)},function(){Tg[this.da()].call(this,ce)},function(){Ug[this.ng=this.da()].call(this,ne)},function(){O[this.ng=this.da()].call(this,oe)},function(){this.Z|=1;Sg[this.da()].call(this,$d)},function(){this.Z|=1;Tg[this.da()].call(this,$d)},function(){Ug[this.da()].call(this,$d)},
function(){O[this.da()].call(this,$d)},function(){var a=this.da();switch((a&56)>>3){case 0:this.Eb=this.Pa.ya;break;case 1:this.Eb=this.xa.ya;break;case 2:this.Eb=this.qb.ya;break;case 3:this.Eb=this.wb.ya;break;default:N.call(this);return}this.Z|=1;Tg[a].call(this,ae)},function(){this.Z|=1;this.D=this.N=this.tl;O[this.da()].call(this,ge)},function(){var a,b=this.da(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Fa){H.call(this);return}switch(c){case 1:a=
this.J;break;case 4:a=this.X;break;case 5:a=this.I;break;case 6:a=this.G;break;case 7:a=this.F}}O[b].call(this,$d);switch(c){case 0:Ic(this,this.H);this.H=a;break;case 1:Fc(this,this.J);this.J=a;break;case 2:Hc(this,this.K);this.K=a;break;case 3:Gc(this,this.C);this.C=a;break;case 4:Ic(this,this.X);this.X=a;break;case 5:Fc(this,this.I);this.I=a;break;case 6:Hc(this,this.G);this.G=a;break;case 7:Gc(this,this.F),this.F=a}},function(){this.Z|=1;Wg[this.da()].call(this,Qd,this.Ga)},function(){this.A-=
3},function(){var a=this.H;this.H=this.J;this.J=a;this.A-=3},function(){var a=this.H;this.H=this.K;this.K=a;this.A-=3},function(){var a=this.H;this.H=this.C;this.C=a;this.A-=3},function(){var a=this.H;this.H=this.X;this.X=a;this.A-=3},function(){var a=this.H;this.H=this.I;this.I=a;this.A-=3},function(){var a=this.H;this.H=this.G;this.G=a;this.A-=3},function(){var a=this.H;this.H=this.F;this.F=a;this.A-=3},function(){this.H=this.H<<24>>24&65535;this.A-=2},function(){this.K=this.H&32768?65535:0;this.A-=
this.B.ok},function(){Yd.call(this,this.L(),this.L());this.A-=this.B.rk},function(){this.Mb("WAIT not implemented",sh);this.A--},function(){F(this,Tb(this));this.A-=this.B.kc},function(){Ub(this,this.Da());this.A-=this.B.ec},function(){var a=this.H>>8;a&1?Uc(this):Qc(this);a&4?Lc(this)||(this.ia^=1):Lc(this)&&(this.ia^=1);a&16?Vc(this):Rc(this);a&64?Wc(this):Sc(this);a&128?Xc(this):Oc(this)&&(this.ia^=this.ca>>1|this.ca>>2,this.ma^=32896);this.A-=this.B.Db},function(){this.H=this.H&255|(Tb(this)&
213)<<8;this.A-=this.B.Db},function(){this.H=this.H&-256|this.T(this.D,this.L());this.A-=this.B.Fi},function(){this.H=this.U(this.D,this.L());this.A-=this.B.Fi},function(){var a=this.L(),b=this.H;$c(this,this.D.Vb(a,0),b);this.A-=this.B.Gi},function(){var a=this.L(),b=this.H;E(this,this.D.Vb(a,1),b);this.A-=this.B.Gi},function(){var a=1,b=0,c=this.B.Hi;this.va&192&&(a=this.J,b=1,c=this.B.Ji,this.va&256||(this.A-=this.B.Ii));if(a--){var d=this.Ca&1024?-1:1,e=this.T(this.D,this.G);$c(this,this.jb.Vb(this.F,
0),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(K(this,this.va&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.Hi;this.va&192&&(a=this.J,b=1,c=this.B.Ji,this.va&256||(this.A-=this.B.Ii));if(a--){var d=this.Ca&1024?-2:2,e=this.U(this.D,this.G);E(this,this.jb.Vb(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(K(this,this.va&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.ri;this.va&192&&(a=this.J,b=1,c=this.B.ti,this.va&256||
(this.A-=this.B.si));if(a--){var d=this.Ca&1024?-1:1,e=this.T(this.D,this.G),f=this.O(this.jb,this.F);kd.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.tb;this.J-=b;a&&Nc(this)==(this.va&64)&&(K(this,this.va&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.ri;this.va&192&&(a=this.J,b=1,c=this.B.ti,this.va&256||(this.A-=this.B.si));if(a--){var d=this.Ca&1024?-2:2,e=this.U(this.D,this.G),f=this.P(this.jb,this.F);sd.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+
d&65535;this.A-=c-this.B.tb;this.J-=b;a&&Nc(this)==(this.va&64)&&(K(this,this.va&16?-3:-2),this.Z|=256)}},function(){this.Y=this.ia=this.ma=this.H&255&this.da();this.ca=256;this.A-=this.B.re},function(){this.Y=this.ia=this.ma=this.H&this.L();this.ca=65536;this.A-=this.B.re},function(){var a=1,b=0,c=this.B.Si;this.va&192&&(a=this.J,b=1,c=this.B.Ui,this.va&256||(this.A-=this.B.Ti));if(a--){var d=this.H;$c(this,this.jb.Vb(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(K(this,
-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.Si;this.va&192&&(a=this.J,b=1,c=this.B.Ui,this.va&256||(this.A-=this.B.Ti));if(a--){var d=this.H;E(this,this.jb.Vb(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(K(this,-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.zi;this.va&192&&(a=this.J,b=1,c=this.B.Bi,this.va&256||(this.A-=this.B.Ai));a--&&(this.H=this.H&-256|this.T(this.D,this.G),this.G=this.G+(this.Ca&1024?-1:1)&65535,this.A-=c,this.J-=b,a&&(K(this,this.va&
16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.zi;this.va&192&&(a=this.J,b=1,c=this.B.Bi,this.va&256||(this.A-=this.B.Ai));a--&&(this.H=this.U(this.D,this.G),this.G=this.G+(this.Ca&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(K(this,this.va&16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.Mi;this.va&192&&(a=this.J,b=1,c=this.B.Oi,this.va&256||(this.A-=this.B.Ni));a--&&(kd.call(this,this.H&255,this.O(this.jb,this.F)),this.F=this.F+(this.Ca&1024?-1:1)&65535,this.A-=c-this.B.tb,this.J-=
b,a&&Nc(this)==(this.va&64)&&(K(this,-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.Mi;this.va&192&&(a=this.J,b=1,c=this.B.Oi,this.va&256||(this.A-=this.B.Ni));a--&&(sd.call(this,this.H,this.P(this.jb,this.F)),this.F=this.F+(this.Ca&1024?-2:2)&65535,this.A-=c-this.B.tb,this.J-=b,a&&Nc(this)==(this.va&64)&&(K(this,-2),this.Z|=256))},function(){this.H=this.H&-256|this.da();this.A-=this.B.Db},function(){this.J=this.J&-256|this.da();this.A-=this.B.Db},function(){this.K=this.K&-256|this.da();this.A-=
this.B.lk},function(){Xd.call(this,this.L(),this.L());this.A-=this.B.ok},function(){this.cc("WAIT not implemented",ue);this.A--},function(){G(this,Tb(this));this.A-=this.B.lc},function(){Ub(this,this.Ga());this.A-=this.B.ec},function(){var a=this.H>>8;a&1?Tc(this):Pc(this);a&4?Kc(this)||(this.ia^=1):Kc(this)&&(this.ia^=1);a&16?Uc(this):Qc(this);a&64?Vc(this):Rc(this);a&128?Wc(this):Nc(this)&&(this.ia^=this.ca>>1|this.ca>>2,this.ma^=32896);this.A-=this.B.Db},function(){this.H=this.H&255|(Tb(this)&
213)<<8;this.A-=this.B.Db},function(){this.H=this.H&-256|this.T(this.D,this.L());this.A-=this.B.Di},function(){this.H=this.U(this.D,this.L());this.A-=this.B.Di},function(){var a=this.L(),b=this.H;Zc(this,this.D.Ub(a,0),b);this.A-=this.B.Ei},function(){var a=this.L(),b=this.H;F(this,this.D.Ub(a,1),b);this.A-=this.B.Ei},function(){var a=1,b=0,c=this.B.Fi;this.va&192&&(a=this.J,b=1,c=this.B.Hi,this.va&256||(this.A-=this.B.Gi));if(a--){var d=this.Ca&1024?-1:1,e=this.T(this.D,this.G);Zc(this,this.Pa.Ub(this.F,
0),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(K(this,this.va&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.Fi;this.va&192&&(a=this.J,b=1,c=this.B.Hi,this.va&256||(this.A-=this.B.Gi));if(a--){var d=this.Ca&1024?-2:2,e=this.U(this.D,this.G);F(this,this.Pa.Ub(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(K(this,this.va&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.pi;this.va&192&&(a=this.J,b=1,c=this.B.ri,this.va&256||
(this.A-=this.B.qi));if(a--){var d=this.Ca&1024?-1:1,e=this.T(this.D,this.G),f=this.O(this.Pa,this.F);jd.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.ub;this.J-=b;a&&Mc(this)==(this.va&64)&&(K(this,this.va&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.pi;this.va&192&&(a=this.J,b=1,c=this.B.ri,this.va&256||(this.A-=this.B.qi));if(a--){var d=this.Ca&1024?-2:2,e=this.U(this.D,this.G),f=this.P(this.Pa,this.F);rd.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+
d&65535;this.A-=c-this.B.ub;this.J-=b;a&&Mc(this)==(this.va&64)&&(K(this,this.va&16?-3:-2),this.Z|=256)}},function(){this.Y=this.ia=this.ma=this.H&255&this.da();this.ca=256;this.A-=this.B.pe},function(){this.Y=this.ia=this.ma=this.H&this.L();this.ca=65536;this.A-=this.B.pe},function(){var a=1,b=0,c=this.B.Qi;this.va&192&&(a=this.J,b=1,c=this.B.Si,this.va&256||(this.A-=this.B.Ri));if(a--){var d=this.H;Zc(this,this.Pa.Ub(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(K(this,
-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.Qi;this.va&192&&(a=this.J,b=1,c=this.B.Si,this.va&256||(this.A-=this.B.Ri));if(a--){var d=this.H;F(this,this.Pa.Ub(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(K(this,-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.xi;this.va&192&&(a=this.J,b=1,c=this.B.zi,this.va&256||(this.A-=this.B.yi));a--&&(this.H=this.H&-256|this.T(this.D,this.G),this.G=this.G+(this.Ca&1024?-1:1)&65535,this.A-=c,this.J-=b,a&&(K(this,this.va&
16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.xi;this.va&192&&(a=this.J,b=1,c=this.B.zi,this.va&256||(this.A-=this.B.yi));a--&&(this.H=this.U(this.D,this.G),this.G=this.G+(this.Ca&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(K(this,this.va&16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.Ki;this.va&192&&(a=this.J,b=1,c=this.B.Mi,this.va&256||(this.A-=this.B.Li));a--&&(jd.call(this,this.H&255,this.O(this.Pa,this.F)),this.F=this.F+(this.Ca&1024?-1:1)&65535,this.A-=c-this.B.ub,this.J-=
b,a&&Mc(this)==(this.va&64)&&(K(this,-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.Ki;this.va&192&&(a=this.J,b=1,c=this.B.Mi,this.va&256||(this.A-=this.B.Li));a--&&(rd.call(this,this.H,this.P(this.Pa,this.F)),this.F=this.F+(this.Ca&1024?-2:2)&65535,this.A-=c-this.B.ub,this.J-=b,a&&Mc(this)==(this.va&64)&&(K(this,-2),this.Z|=256))},function(){this.H=this.H&-256|this.da();this.A-=this.B.Db},function(){this.J=this.J&-256|this.da();this.A-=this.B.Db},function(){this.K=this.K&-256|this.da();this.A-=
this.B.Db},function(){this.C=this.C&-256|this.da();this.A-=this.B.Db},function(){this.H=this.H&255|this.da()<<8;this.A-=this.B.Db},function(){this.J=this.J&255|this.da()<<8;this.A-=this.B.Db},function(){this.K=this.K&255|this.da()<<8;this.A-=this.B.Db},function(){this.C=this.C&255|this.da()<<8;this.A-=this.B.Db},function(){this.H=this.L();this.A-=this.B.Db},function(){this.J=this.L();this.A-=this.B.Db},function(){this.K=this.L();this.A-=this.B.Db},function(){this.C=this.L();this.A-=this.B.Db},function(){this.X=
this.L();this.A-=this.B.Db},function(){this.I=this.L();this.A-=this.B.Db},function(){this.G=this.L();this.A-=this.B.Db},function(){this.F=this.L();this.A-=this.B.Db},mh,nh,mh,nh,function(){O[this.da()].call(this,je)},function(){O[this.da()].call(this,ie)},function(){this.Z|=1;Tg[this.da()].call(this,Sd,this.da)},function(){this.Z|=1;Ug[this.da()].call(this,Sd,this.L)},oh,ph,oh,ph,function(){bd.call(this,3,null,this.B.Ik)},function(){var a=this.da(),b;a:{b=this.eg[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],
this.Ba)){b=!1;break a}b=!0}b?bd.call(this,a,null,0):this.A--},function(){Pc(this)?bd.call(this,4,null,this.B.Jk):this.A-=this.B.Kk},function(){this.A-=this.B.Gk;if(this.gc&1&&this.Ca&16384){var a=D(this,this.eb.Ea+0);Sb.call(this.wa,a,!1)}else{var a=this.wa.Oa,b=this.Da(),c=this.Da(),d=this.Da();null!=Vb(this,b,c,!1)&&(Ub(this,d,a),this.Bh&&Dc(this,this.Ba))}},function(){Tg[this.da()].call(this,Td,Kd)},function(){Ug[this.da()].call(this,Ud,Kd)},function(){Tg[this.da()].call(this,Td,Ld)},function(){Ug[this.da()].call(this,
Ud,Ld)},function(){var a=this.da(),b=this.H&255;this.H=(b/a&255)<<8|b%a;this.ca=256;this.Y=this.ia=b;this.A-=this.B.lk},function(){var a=this.da();this.Y=this.ia=this.H=(this.H>>8)*a+this.H&255;this.ca=256;this.A-=this.B.kk},function(){this.H=this.H&-256|(Kc(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.T(this.D,this.C+(this.H&255)&65535);this.A-=this.B.jl},qh,qh,qh,qh,qh,qh,qh,qh,function(){var a=this.M();(this.J=this.J-1&65535)&&this.Y&this.ca-1?(J(this,this.ta+a),this.A-=this.B.Rk):
this.A-=this.B.Ci},function(){var a=this.M();!(this.J=this.J-1&65535)||this.Y&this.ca-1?this.A-=this.B.Ei:(J(this,this.ta+a),this.A-=this.B.Di)},function(){var a=this.M();(this.J=this.J-1&65535)?(J(this,this.ta+a),this.A-=this.B.Qk):this.A-=this.B.Ci},function(){var a=this.M();this.J?this.A-=this.B.Ei:(J(this,this.ta+a),this.A-=this.B.Di)},function(){var a=this.da();this.H=this.H&-256|gb(this.qa,a,this.Ba-2);this.A-=this.B.wi},function(){var a=this.da();this.H=gb(this.qa,a,this.Ba-1)|gb(this.qa,a+
1&65535,this.Ba-2)<<8;this.A-=this.B.wi},function(){var a=this.da();ib(this.qa,a,this.H&255,this.Ba-2);this.A-=this.B.Li},function(){var a=this.da();ib(this.qa,a,this.H&255,this.Ba-2);ib(this.qa,a+1&65535,this.H>>8,this.Ba-2);this.A-=this.B.Li},function(){var a=this.L();F(this,this.ta);J(this,this.ta+a);this.A-=this.B.pk},function(){var a=this.L();J(this,this.ta+a);this.A-=this.B.xi},function(){Vb(this,this.L(),this.L());this.A-=this.B.Mk},function(){var a=this.M();J(this,this.ta+a);this.A-=this.B.xi},
function(){this.H=this.H&-256|gb(this.qa,this.K,this.Ba-1);this.A-=this.B.vi},function(){this.H=gb(this.qa,this.K,this.Ba-1)|gb(this.qa,this.K+1&65535,this.Ba-1)<<8;this.A-=this.B.vi},function(){ib(this.qa,this.K,this.H&255,this.Ba-1);this.A-=this.B.Ki},function(){ib(this.qa,this.K,this.H&255,this.Ba-1);ib(this.qa,this.K+1&65535,this.H>>8,this.Ba-1);this.A-=this.B.Ki},rh,rh,function(){this.Z|=132;this.A-=this.B.Nd},function(){this.Z|=68;this.A-=this.B.Nd},function(){this.lb|=4;this.A-=2;this.Ca&512||
qb(this)},function(){Kc(this)?Qc(this):Uc(this);this.A-=2},function(){this.Eb=-1;Tg[this.da()].call(this,Wd,Nd);0<=this.Eb&&(this.H=this.Eb)},function(){this.Eb=-1;Ug[this.da()].call(this,Xd,Nd);0<=this.Eb&&(this.H=this.Eb,this.K=this.Vf)},function(){this.Y&=~this.ca;this.A-=2},function(){this.Y|=this.ca;this.A-=2},function(){this.Ca&=-513;this.A-=this.B.nk},function(){this.Ca|=512;this.Z|=4;this.A-=2},function(){this.Ca&=-1025;this.A-=2},function(){this.Ca|=1024;this.A-=2},function(){Tg[this.da()].call(this,
bc,Nd)},function(){Ug[this.da()].call(this,cc,Nd)}],Vg=[function(){var a=this.da();16>(a&56)&&(this.Z|=1);Ug[a].call(this,this.wj,Nd)},function(){var a=this.da();a&16||(this.Z|=1);Ug[a].call(this,th,Nd)},function(){O[this.da()].call(this,me)},function(){O[this.da()].call(this,ne)},M,function(){this.wa.Oa?C.call(this,13,0,!0):(qe.call(this,D(this,2054)),this.F=D(this,2086),this.G=D(this,2088),this.I=D(this,2090),this.X=D(this,2092),this.C=D(this,2094),this.K=D(this,2096),this.J=D(this,2098),this.H=
D(this,2100),Xb(this.jb,2102,D(this,2084)),Xb(this.wa,2108,D(this,2082)),Xb(this.cb,2114,D(this,2080)),Xb(this.Rb,2120,D(this,2078)),Ub(this,D(this,2072)),J(this,D(this,2074)),this.uc=D(this,2126)|D(this,2128)<<16,this.Xd=this.uc+D(this,2130),Xb(this.Sd,2132,D(this,2076)),this.Hc=D(this,2138)|D(this,2140)<<16,this.He=this.Hc+D(this,2142),Xb(this.eb,2144,D(this,2070)),this.A-=195)},function(){this.wa.Oa?C.call(this,13,0,!0):(this.gc&=-9,this.A-=2)},M,M,M,M,G,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],Ec=[function(){this.A-=2+(0>this.ha?0:1);return this.Sd.za},
function(){this.A-=2+(0>this.ha?0:1);return this.eb.za},function(a){this.Z|=2;this.Sd.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;null!=this.eb.load(a)&&(E(this,this.eb.vd+4,this.eb.vb|=512),this.eb.type=768);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;this.A-=14+(0>this.ha?0:2);if(0<=this.Gb.load(a,!0)&&2048!=(this.Gb.vb&2560)&&(this.Gb.yc>=this.wa.Oa&&this.Gb.yc>=(a&3)||7168==(this.Gb.vb&7168)))return Wc(this),a;Sc(this);return a},function(a){this.Z|=2;this.A-=
14+(0>this.ha?0:2);if(0<=this.Gb.load(a,!0)&&512==(this.Gb.vb&2560)&&this.Gb.yc>=this.wa.Oa&&this.Gb.yc>=(a&3))return Wc(this),a;Sc(this);return a},L,L],dc=[uc,uc,uc,uc,uc,uc,L,L],th=[function(a){0>this.ha?G.call(this):(a=this.Xd-this.uc,E(this,this.ha+2,this.uc),E(this,this.ha+4,65280|this.uc>>16),this.A-=11);return a},function(a){0>this.ha?G.call(this):(a=this.He-this.Hc,E(this,this.ha+2,this.Hc),E(this,this.ha+4,65280|this.Hc>>16),this.A-=12);return a},function(a){0>this.ha?G.call(this):(this.uc=
D(this,this.ha+2)|Zc(this,this.ha+4)<<16,this.Xd=this.uc+a,this.Z|=2,this.A-=11);return a},function(a){0>this.ha?G.call(this):(this.Hc=D(this,this.ha+2)|Zc(this,this.ha+4)<<16,this.He=this.Hc+a,this.Z|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ha?0:1);return this.gc},L,function(a){qe.call(this,a);this.A-=0>this.ha?3:6;this.Z|=2;return a},L];
function P(a){u.call(this,"ChipSet",a,P);this.Ha=(this.Ha=a.model)?parseInt(this.Ha,10):uh;this.Sb=0;var b=a.sw1;if(b)this.Sb=vh(b,wh|xh.Fl);else{this.td=[360,360];(b=a.floppies)&&b.length&&(this.td=b);if(b=this.td.length)this.Sb|=yh.oh,b--,this.Sb|=(b&3)<<yh.ef;if(b=a.monitor||(this.Ha<zh?"mono":"ega"),void 0!==Ah[b])this.Sb|=Ah[b]<<xh.ef}this.Td=vh(a.sw2||"11110000",0);this.bn=this.Ha==uh?16:64;this.vg=this.wg=1;this.Ha>=zh&&(this.vg=this.wg=2);this.Gd=a.scaleTimers||!1;this.vo=a.rtcDate;this.Vj=
!1;a.sound&&window&&"webkitAudioContext"in window&&(this.Eh=new window.webkitAudioContext);this.reset(!0);this.Pa()}v(u,P);var uh=5150,zh=5170,Ah={none:0,tv:1,color:2,mono:3,ega:0},yh={oh:1,ONE:0,np:64,lp:128,Lo:192,df:192,ef:6},wh=12,xh={mp:16,Eo:32,Fl:48,df:48,ef:4};k=P.prototype;
k.Fb=function(a,b,c){switch(b){case "sw1":return this.ra[b]=c,Bh(this,b,c,this.Sb,{0:this.Ha==uh?"Bootable Floppy Drive":"Loop on POST",1:this.Ha==uh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ha==uh)return this.ra[b]=c,Bh(this,b,c,this.Td,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.ra[b]=c,!0}return!1};
k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Ra=d;this.Na=a;this.La=z(a,"Keyboard");this.Yg=c.ba.Wc/1193181;fb(b,this,Ch);hb(b,this,Dh);this.Ha<zh?(fb(b,this,Eh),hb(b,this,Fh)):(fb(b,this,Gh),hb(b,this,Hh))};k.Yb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Xb=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.Pc=this.Sb;this.ze=this.Td;Ih(this);this.Za=Array(this.vg);for(b=0;b<this.vg;b++)Jh(this,b);this.yb=Array(this.wg);Kh(this,0,32);1<this.wg&&Kh(this,1,160);this.Ah=null;this.Ib=Array(3);for(b=0;b<this.Ib.length;b++)Lh(this,b);this.nf=this.yh=this.pc=this.rg=null;this.qg=0;if(this.Ha>=zh){this.qb=16;this.dd=0;this.Qc=16;this.lg=0;this.$d=160;512<=Mh(this)&&(this.$d|=16);3==Nh(this)&&(this.$d|=64);this.wh=3;this.og=0;this.Tb=Array(7);this.Ie=0;a&&(this.ja=Array(64));Oh(this,
this.vo);for(a=21;24>=a;a++)this.ja[a]=0;for(a=14;46>a;a++)void 0===this.ja[a]&&(this.ja[a]=0);this.ja[20]=this.Pc&(xh.df|2|yh.oh|yh.df);this.ja[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.fc("CMOS date invalid ("+b+"), using "+c)):b&&a.fc("CMOS date: "+c);a.ja[0]=c.getSeconds();a.ja[1]=0;a.ja[2]=c.getMinutes();a.ja[3]=0;a.ja[4]=c.getHours();a.ja[5]=0;a.ja[6]=c.getDay()+1;a.ja[7]=c.getDate();a.ja[8]=c.getMonth()+1;c=c.getFullYear();a.ja[9]=c%100;c/=100;a.ja[50]=c%10|c/10<<4;a.ja[10]=38;a.ja[11]=2;a.ja[12]=0;a.ja[13]=128;a.Pf=a.Ze=0;a.kl=a.Wg=null}
function Rh(a){var b;void 0===b&&(b=a.Wg);a.Ze=B(a.la,a.Gd)+b;a.ja[11]&64&&tb(a.la,b)}function Qh(a){for(var b=0,c=16;46>c;c++)b+=a.ja[c];a.ja[47]=b&255;a.ja[46]=b>>8}
k.save=function(){var a=new I(this);a.set(0,[this.Sb,this.Td,this.Pc,this.ze]);for(var b=[],c=0;c<this.Za;c++){for(var d=this.Za[c],e=d,f=[],g=0;g<e.xb.length;g++){var h=e.xb[g];f[g]=[h.md,h.jg,h.Wb,h.Va,h.Xa,h.mode,h.sg,h.ro,h.so]}b[c]=[d.zd,d.xh,d.Dj,d.Ab,f]}a.set(1,[b]);b=[];for(c=0;c<this.yb.length;c++)d=this.yb[c],b[c]=[d.Ff,d.Gc,d.od,d.ed,d.Jb,d.Ic,d.ae,d.mf];a.set(2,[b]);b=[];for(c=0;c<this.Ib.length;c++)d=this.Ib[c],b[c]=[d.Wb,d.rc,d.Xa,d.je,d.Fj,d.mode,d.gh,d.Cd,d.ie,d.Tc,d.vf,d.ne,d.nd];
a.set(3,[this.Ah,b]);a.set(4,[this.rg,this.pc,this.yh,this.nf,this.qg]);this.Ha>=zh&&(a.set(5,[this.qb,this.dd,this.Qc,this.lg,this.$d,this.wh]),a.set(6,[this.og,this.Tb,this.Ie,this.ja,this.Pf,this.Ze]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Sb=b[0];this.Td=b[1];this.Pc=b[2];this.ze=b[3];b=a[1];for(c=0;c<this.vg;c++)Jh(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.wg;c++)Kh(this,c,0===c?32:160,b[0][c]);b=a[3];this.Ah=b[0];for(c=0;c<this.Ib.length;c++)Lh(this,c,b[1][c]);b=a[4];this.rg=b[0];this.pc=b[1];this.yh=b[2];this.nf=b[3];this.qg=b[4];if(b=a[5])this.qb=b[0],this.dd=b[1],this.Qc=b[2],this.lg=b[3],this.$d=b[4],this.wh=b[5];if(b=a[6])this.og=b[0],this.Tb=b[1],this.Ie=b[2],this.ja=b[3],
this.Pf=b[4],this.Ze=b[5],Oh(this);return!0};var Sh=[0,null,null,0,Array(4)];function Jh(a,b,c){var d=a.Za[b];d||(d={xb:Array(4)});c=c&&5==c.length?c:Sh;d.zd=c[0];d.xh=c[1];d.Dj=c[2];d.Ab=c[3];d.gn=b<<2;for(var e=0;e<d.xb.length;e++)Th(d,e,c[4][e]);a.Za[b]=d}var Uh=[!0,[0,0],[0,0],[0,0],[0,0]];
function Th(a,b,c){var d=a.xb[b];d||(d={jg:[0,0],Wb:[0,0],Va:[0,0],Xa:[0,0]});c=c&&8==c.length?c:Uh;d.md=c[0];d.jg[0]=c[1][0];d.jg[1]=c[1][1];d.Wb[0]=c[2][0];d.Wb[1]=c[2][1];d.Va[0]=c[3][0];d.Va[1]=c[3][1];d.Xa[0]=c[4][0];d.Xa[1]=c[4][1];d.mode=c[5];d.sg=c[6];d.ea=a;d.$j=b;Vh(d,c[8],c[9]);a.xb[b]=d}function Vh(a,b,c,d){"string"==typeof b&&(b=La(b));b&&(a.zg=null,a.ro=b.id,a.so=c,a.yg=b,a.Yh=b[c],a.Zg=d)}var Wh=[0,Array(4)];
function Kh(a,b,c,d){var e=a.yb[b];e||(e={Gc:[null,null,null,null]});d=d&&8==d.length?d:Wh;e.port=c;e.Mp=b<<3;e.Ff=d[0];e.Gc[0]=d[1][0];e.Gc[1]=d[1][1];e.Gc[2]=d[1][2];e.Gc[3]=d[1][3];e.od=d[2];e.ed=d[3];e.Jb=d[4];e.Ic=d[5];e.ae=d[6];e.mf=d[7];a.yb[b]=e}var Xh=[[0,0],[0,0],[0,0],[0,0]];
function Lh(a,b,c){var d=a.Ib[b];d||(d={Wb:[0,0],rc:[0,0],Xa:[0,0],je:[0,0]});c=c&&13==c.length?c:Xh;d.Wb[0]=c[0][0];d.Wb[1]=c[0][1];d.rc[0]=c[1][0];d.rc[1]=c[1][1];d.Xa[0]=c[2][0];d.Xa[1]=c[2][1];d.je[0]=c[3][0];d.je[1]=c[3][1];d.Fj=c[4];d.mode=c[5];d.gh=c[6];d.Cd=c[7];d.ie=c[8];d.Tc=c[9];d.vf=c[10];d.ne=c[11];d.nd=c[12];a.Ib[b]=d}function Mh(a,b){return((((b?a.Sb:a.Pc)&12)>>2)+1)*a.bn+32*((b?a.Td:a.ze)&15)}function Yh(a,b){var c=b?a.Sb:a.Pc;return a.Ha!=uh||c&yh.oh?((c&yh.df)>>yh.ef)+1:0}
function Ph(a,b){if(b<Yh(a)){if(!a.td)return 1;if(b<a.td.length)switch(a.td[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Nh(a,b){return((b?a.Sb:a.Pc)&xh.df)>>xh.ef}
function Bh(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=x(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)null!=e&&null!=e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),Zh(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Zh(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Sb=
a.Sb&~e|(c?0:e);break;case "sw2":a.Td=a.Td&~e|(c?0:e)}Ih(a)}}(a,b[g])}function Zh(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.ra.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(null!=b){var d;d=""+(Mh(a,!0)+"Kb");d+=", "+c[Nh(a,!0)]+" Monitor";d+=", "+Yh(a,!0)+" Floppy Drives";if(null!=a.Pc&&a.Pc!=a.Sb||null!=a.ze&&a.ze!=a.Td)d+=" (Reset required)";b.textContent=d}}
function $h(a,b,c){a=a.Za[b];var d=a.xb[c],e=d.Va[a.Ab];a.Ab^=1;b||0!=c||a.Ab||(d.Va[0]++,255<d.Va[0]&&(d.Va[0]=0,d.Va[1]++,255<d.Va[1]&&(d.Va[1]=0)));return e}function ai(a,b,c,d){a=a.Za[b];c=a.xb[c];c.Va[a.Ab]=c.jg[a.Ab]=d;a.Ab^=1}function bi(a,b,c){a=a.Za[b];var d=a.xb[c],e=d.Xa[a.Ab];a.Ab^=1;b||0!=c||a.Ab||(d.Xa[0]--,0>d.Xa[0]&&(d.Xa[0]=255,d.Xa[1]--,0>d.Xa[1]&&(d.Xa[1]=255)));return e}function ci(a,b,c,d){a=a.Za[b];c=a.xb[c];c.Xa[a.Ab]=c.Wb[a.Ab]=d;a.Ab^=1}
function di(a,b){var c=a.Za[b],d=c.zd|1;c.zd&=-16;return d}function ei(a,b,c){a=a.Za[b];b=c&3;a.zd=a.zd&~(16<<b)|(c&4)<<b+2;a.Dj=c}function fi(a,b,c){b=a.Za[b];var d=c&3,e=b.xb[d];e.md=!!(c&4);e.md||gi(a,b.gn+d)}function hi(a,b){for(var c=a.Za[b],d=0;d<c.xb.length;d++)Th(c,d)}function ii(a,b,c){return a.Za[b].xb[c].sg}function ji(a,b,c,d){a.Za[b].xb[c].sg=d}function ki(a,b,c,d,e){Vh(a.Za[b>>2].xb[b&3],c,d,e)}
function gi(a,b,c){b=a.Za[b>>2].xb[b&3];b.yg&&b.Yh&&b.Zg?(c&&(b.zg=c),b.md||cd(a,b,!0)):c&&c(!0)}function cd(a,b,c){c&&(b.count=b.Xa[1]<<8|b.Xa[0],b.Bl=b.mode&12,b.Xj=b.Sc=!1);for(var d=!1;0<=b.count&&(c=b.sg<<16|b.Va[1]<<8|b.Va[0],4==b.Bl?(d=!0,function(c){b.Yh.call(b.yg,b.Zg,-1,function(f,g){0>f&&(b.Xj||(b.Xj=!0),f=255);b.md||cb(a.qa,c,f);(d=g)&&setTimeout(function(){li(b)||cd(a,b)},0)})}(c)):8==b.Bl?(c=ab(a.qa,c),0>b.Yh.call(b.yg,b.Zg,c)&&(b.Sc=!0)):b.Sc=!0),!d&&!li(b););}
function li(a){if(!a.Sc&&0<=--a.count&&(a.mode&32?(a.Va[0]--,0>a.Va[0]&&(a.Va[0]=255,a.Va[1]--,0>a.Va[1]&&(a.Va[1]=255))):(a.Va[0]++,255<a.Va[0]&&(a.Va[0]=0,a.Va[1]++,255<a.Va[1]&&(a.Va[1]=0))),!a.md))return!1;var b=a.ea;b.zd=b.zd&~(16<<a.$j)|1<<a.$j;a.mode&16||(a.md=!0,a.yg=a.Zg=null);a.zg&&(a.zg(!a.Sc),a.zg=null);return!0}function mi(a,b){var c=0,d=a.yb[b];if(null!=d.mf)switch(d.mf&3){case 2:c=d.Jb;break;case 3:c=d.Ic}return c}
function ni(a,b,c){var d=a.yb[b];if(c&16)d.od=0,d.Gc[d.od++]=c,d.ed=0,d.ae=7,d.Jb=d.Ic=0,d.mf=10;else if(c&8)d.mf=c;else{var e=c&224;if(e&32){var f=0;if(96==(e&96))f=1<<(c&7);else for(c=d.ae+1;;){c&=7;e=1<<c;if(d.Ic&e){f=e;break}if(c++==d.ae)break}d.Ic&f&&(d.Ic&=~f,oi(a,b))}else 192==e&&(d.ae=c&7)}}function ti(a,b,c){var d=a.yb[b];d.od<d.Gc.length?(d.Gc[d.od++]=c,2==d.od&&d.Gc[0]&2&&d.od++,3!=d.od||d.Gc[0]&1||d.od++):(d.ed=c,d=a.la,d.Z|=4,oi(a,b,b||253!=c?0:6))}
function oi(a,b,c){b=a.yb[b];var d=((b.Ic|b.ed)^255)&b.Jb;a=a.la;a.ka&&(a.lb=d?a.lb|1:a.lb&-2);d&&c&&(b.Ff=c)}function ui(a,b,c){var d=b>>3,e=a.yb[d];e.Jb|=1<<(b&7);e.Ff=c||0;1==d&&(a.yb[0].Jb|=4);oi(a,d)}function vi(a,b){var c=b>>3,d=a.yb[c],e=1<<(b&7);d.Jb&e&&(d.Jb&=~e,1!=c||d.Jb||(a.yb[0].Jb&=-5),oi(a,c))}
function ad(a,b){void 0===b&&(b=0);var c=-1,d=a.yb[b];if(d.Ff)c=-2,d.Ff--;else for(var e=d.Jb&((d.Ic|d.ed)^255),f=d.ae+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.Gc[1]+f:ad(a,1);0<=c&&(d.Ic|=g,d.Jb&=~g);break}if(f++==d.ae)break}return c}function wi(a,b){var c=a.Ib[b];c.Cd==c.ie&&xi(a,b);if(c.vf)return c.je[c.Cd++];yi(a,b);return c.Xa[c.Cd++]}
function zi(a,b,c){var d=a.Ib[b];d.Cd==d.ie&&xi(a,b);d.Wb[d.Cd++]=c;d.Cd==d.ie&&(d.ne&&0!=d.mode&&8!=d.mode||(d.vf=!1,d.Xa[0]=d.rc[0]=d.Wb[0],d.Xa[1]=d.rc[1]=d.Wb[1],d.nd=B(a.la,a.Gd),d.ne=!0,d.Tc=0!=d.mode,0==b&&(vi(a,0),c=Ai(a,0)*a.Yg|0,6==d.mode&&(c>>=1),tb(a.la,c))),2==b&&wb(a))}k=P.prototype;k.Wm=function(){return null};
k.ho=function(a,b){this.Ah=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var g=this.Ib[c];g.gh=f;g.mode=e;g.Fj=d;g.Wb=[0,0];g.Xa=[0,0];g.je=[0,0];g.Tc=!1;g.vf=!1;g.ne=!1;xi(this,c);0==c&&vi(this,0);2==c&&255==this.yb[0].ed&&77==this.pc&&(c=this.Ib[0],c.rc[0]=c.Wb[0],c.rc[1]=c.Wb[1],c.nd=B(this.la,this.Gd))}else yi(this,c),d=this.Ib[c],d.je[0]=d.Xa[0],d.je[1]=d.Xa[1],d.vf=!0,xi(this,c)}};function Ai(a,b){var c=a.Ib[b],d=c.Wb[1]<<8|c.Wb[0];d||(d=1==c.ie?256:65536);return d}
function yb(a,b){var c=a.Ib[b],d=c.rc[1]<<8|c.rc[0];d||(d=1==c.ie?256:65536);return d}function xi(a,b){var c=a.Ib[b];c.Cd=32==c.gh?1:0;c.ie=48==c.gh?2:1}
function yi(a,b,c){var d=a.Ib[b];if(d.ne&&(2!=b||a.pc&1)){var e=B(a.la,a.Gd),f=(e-d.nd)/a.Yg|0;0>f&&(d.nd=e,f=0);var g=Ai(a,b),h=yb(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.Tc=!0,d.ne=!1,b||ui(a,0))):4==d.mode?(d.Tc=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.rc[0]=h&255,d.rc[1]=h>>8,d.nd=e,!b&&d.Tc&&ui(a,0))):6==d.mode&&(h-=f,0>=h&&(d.Tc=!d.Tc,h=g+h,0>=h&&(h=g),d.rc[0]=h&255,d.rc[1]=h>>8,d.nd=e,!b&&d.Tc&&ui(a,0)));d.Xa[0]=h&255;d.Xa[1]=h>>8;c&&(a.nd=0)}return d}
function xb(a,b){for(var c=0;c<a.Ib.length;c++)yi(a,c,b);if(a.Ha>=zh){var c=a.la.ba.Wc,d=B(a.la,a.Gd);null==a.Wg&&(a.Pf=B(a.la,a.Gd),a.kl=1024,a.Wg=Math.floor(a.la.ba.Wc/a.kl),Rh(a));d>=a.Ze&&(a.ja[12]|=64,a.ja[11]&64&&(a.ja[12]|=128,ui(a,8)),a.Ze=d+a.Wg);a.ja[0]==a.ja[1]&&a.ja[2]==a.ja[3]&&a.ja[4]==a.ja[5]&&(a.ja[12]|=32,a.ja[11]&32&&(a.ja[12]|=128,ui(a,8)));var e=d-a.Pf,f=Math.floor(e/c);if(f&&!(a.ja[11]&128)){for(;f--;)if(60<=++a.ja[0]&&(a.ja[0]=0,60<=++a.ja[2]&&(a.ja[2]=0,24<=++a.ja[4]))){a.ja[4]=
0;a.ja[6]=a.ja[6]%7+1;var g;g=a.ja[9];var h=ka[a.ja[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++a.ja[7]>g&&(a.ja[7]=1,12<++a.ja[8]&&(a.ja[8]=1,a.ja[9]=(a.ja[9]+1)%100))}a.ja[12]|=16;a.ja[11]&16&&(a.ja[12]|=128,ui(a,8))}a.Pf=d-e%c}}k.Om=function(){var a=this.rg;this.nf&16&&(this.pc&128?a=this.Pc:this.La&&(a=Bi(this.La)));return a};k.Zn=function(a,b){this.rg=b};k.Pm=function(){return this.pc};k.$n=function(a,b){Ci(this,b);this.La&&Di(this.La,b&128?!1:!0,b&64?!0:!1)};
function Ci(a,b){var c=!!(b&2),d=!!(a.pc&2);a.pc=b;c!=d&&wb(a,c)}k.Qm=function(){var a=0,a=this.Ha==uh?this.pc&4?a|this.ze&15:a|this.ze>>4&1:this.pc&8?a|this.Pc>>4:a|this.Pc&15;this.pc&1&&yi(this,2).Tc&&(a=this.pc&2?a|32:a|16);return a};k.ao=function(a,b){this.yh=b};k.Rm=function(){return this.nf};k.bo=function(a,b){this.nf=b};k.em=function(){var a=this.lg;this.qb&=-258;var b=this.La&&Bi(this.La,!0);b&&Ei(this,b);return a};
k.sn=function(a,b){if(this.qb&8)switch(this.dd){case 96:Fi(this,b);break;case 209:Gi(this,b);break;default:if(Fi(this,this.Qc&-17),this.La){var c=-1;switch(b){case 255:c=250,Hi(this.La)}Ei(this,c)}}this.dd=b;this.qb&=-9};k.fm=function(){return this.pc&-209|(B(this.la)&64?16:0)};k.tn=function(a,b){Ci(this,b)};k.gm=function(){var a=this.qb&255;this.qb&256&&(this.qb|=1,this.qb&=-257);return a};
k.rn=function(a,b){this.dd=b;this.qb|=8;var c=0;240<=this.dd&&(c=this.dd^15,this.dd=240);switch(this.dd){case 192:Ei(this,this.$d);break;case 173:Fi(this,this.Qc|16);break;case 174:Fi(this,this.Qc&-17);break;case 170:this.La&&Ii(this.La,!0);Fi(this,this.Qc|16);Ei(this,85);Gi(this,3);break;case 224:Ei(this,this.Qc&16?0:1);break;case 240:c&1&&yc(this.la)}};function Fi(a,b){var c=!(a.Qc&16);a.Qc=b;a.qb=a.qb&-5|b&4;if(a.La){var d=!(b&16);Di(a.La,!!(b&8),d)&&Ei(a,Bi(a.La,!0));!c&&d&&Bi(a.La)&&Ji(a)}}
function Ei(a,b){0<=b&&(a.lg=b,a.qb&=-2,a.qb|=256)}function Gi(a,b){a.wh=b;Va(a.qa,!!(b&2));b&1||yc(a.la)}function Ji(a){a.Ha<zh?ui(a,1,4):a.Qc&16||ui(a,1,120)}k.um=function(){return this.Ie};k.Hn=function(a,b){this.Ie=b;this.qg=b&128?0:128};
k.vm=function(a,b){var c=this.Ie&63,d;if(13>=c)if(d=this.ja[c],10>c){var e=!1;4!=c&&5!=c||this.ja[11]&2||(d=12>d?d?d:12:(d-=12)?d+128:140,e=!0);this.ja[11]&4||(e&&128<d&&(d-=48),d=d%10|d/10<<4)}else 10==c&&(this.ja[c]^=128);else d=this.ja[c];null!=b&&12==c&&(this.ja[c]&=15,d&128&&vi(this,8),d&64&&this.ja[11]&64&&Rh(this));return d};
k.In=function(a,b){var c=this.Ie&63,d=b^this.ja[c],e;if(13>=c){if(e=b,10>c){var f=!1;this.ja[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&23<e&&(e+=48),this.ja[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;this.ja[c]=e;11==c&&d&64&&b&64&&Rh(this)};k.Mm=function(){return this.og};k.Wn=function(a,b){this.og=b};k.Yn=function(a,b){this.qg=b};function vh(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 wb(a,b){if(a.Eh){void 0!==b?a.Vj=b:b=a.Vj&&a.la&&a.la.na.cc;var c=Math.round(1193181/Ai(a,2));if(20>c||2E4<c)b=!1;b?a.$c?a.$c.frequency.value=c:(a.$c=a.Eh.createOscillator(),a.$c.type=1,a.$c.connect(a.Eh.destination),a.$c.frequency.value=c,a.$c.noteOn(0)):a.$c&&(a.$c.noteOff(0),a.$c.disconnect(),delete a.$c)}else b&&a.Mb("BEEP",Ki)}
var Ch={0:function(){return $h(this,0,0)},1:function(){return bi(this,0,0)},2:function(){return $h(this,0,1)},3:function(){return bi(this,0,1)},4:function(){return $h(this,0,2)},5:function(){return bi(this,0,2)},6:function(){return $h(this,0,3)},7:function(){return bi(this,0,3)},8:function(){return di(this,0)},32:function(){return mi(this,0)},33:function(){return this.yb[0].ed},64:function(){return wi(this,0)},65:function(){return wi(this,1)},66:function(){return wi(this,2)},67:P.prototype.Wm,129:function(){return ii(this,
0,2)},130:function(){return ii(this,0,3)},131:function(){return ii(this,0,1)},135:function(){return ii(this,0,0)}},Eh={96:P.prototype.Om,97:P.prototype.Pm,98:P.prototype.Qm,99:P.prototype.Rm},Gh={96:P.prototype.em,97:P.prototype.fm,100:P.prototype.gm,112:P.prototype.um,113:P.prototype.vm,128:P.prototype.Mm,132:function(){return this.Tb[0]},133:function(){return this.Tb[1]},134:function(){return this.Tb[2]},136:function(){return this.Tb[3]},137:function(){return ii(this,1,2)},138:function(){return ii(this,
1,3)},139:function(){return ii(this,1,1)},140:function(){return this.Tb[4]},141:function(){return this.Tb[5]},142:function(){return this.Tb[6]},143:function(){return ii(this,1,0)},160:function(){return mi(this,1)},161:function(){return this.yb[1].ed},192:function(){return $h(this,1,0)},194:function(){return bi(this,1,0)},196:function(){return $h(this,1,1)},198:function(){return bi(this,1,1)},200:function(){return $h(this,1,2)},202:function(){return bi(this,1,2)},204:function(){return $h(this,1,3)},
206:function(){return bi(this,1,3)},208:function(){return di(this,1)}},Dh={0:function(a,b){ai(this,0,0,b)},1:function(a,b){ci(this,0,0,b)},2:function(a,b){ai(this,0,1,b)},3:function(a,b){ci(this,0,1,b)},4:function(a,b){ai(this,0,2,b)},5:function(a,b){ci(this,0,2,b)},6:function(a,b){ai(this,0,3,b)},7:function(a,b){ci(this,0,3,b)},8:function(a,b){this.Za[0].xh=b},9:function(a,b){ei(this,0,b)},10:function(a,b){fi(this,0,b)},11:function(a,b){this.Za[0].xb[b&3].mode=b},12:function(){this.Za[0].Ab=0},13:function(){hi(this,
0)},32:function(a,b){ni(this,0,b)},33:function(a,b){ti(this,0,b)},64:function(a,b){zi(this,0,b)},65:function(a,b){zi(this,1,b)},66:function(a,b){zi(this,2,b)},67:P.prototype.ho,129:function(a,b){ji(this,0,2,b)},130:function(a,b){ji(this,0,3,b)},131:function(a,b){ji(this,0,1,b)},135:function(a,b){ji(this,0,0,b)}},Fh={96:P.prototype.Zn,97:P.prototype.$n,98:P.prototype.ao,99:P.prototype.bo,160:P.prototype.Yn},Hh={96:P.prototype.sn,97:P.prototype.tn,100:P.prototype.rn,112:P.prototype.Hn,113:P.prototype.In,
128:P.prototype.Wn,132:function(a,b){this.Tb[0]=b},133:function(a,b){this.Tb[1]=b},134:function(a,b){this.Tb[2]=b},136:function(a,b){this.Tb[3]=b},137:function(a,b){ji(this,1,2,b)},138:function(a,b){ji(this,1,3,b)},139:function(a,b){ji(this,1,1,b)},140:function(a,b){this.Tb[4]=b},141:function(a,b){this.Tb[5]=b},142:function(a,b){this.Tb[6]=b},143:function(a,b){ji(this,1,0,b)},160:function(a,b){ni(this,1,b)},161:function(a,b){ti(this,1,b)},192:function(a,b){ai(this,1,0,b)},194:function(a,b){ci(this,
1,0,b)},196:function(a,b){ai(this,1,1,b)},198:function(a,b){ci(this,1,1,b)},200:function(a,b){ai(this,1,2,b)},202:function(a,b){ci(this,1,2,b)},204:function(a,b){ai(this,1,3,b)},206:function(a,b){ci(this,1,3,b)},208:function(a,b){this.Za[1].xh=b},210:function(a,b){ei(this,1,b)},212:function(a,b){fi(this,1,b)},214:function(a,b){this.Za[1].xb[b&3].mode=b},216:function(){this.Za[1].Ab=0},218:function(){hi(this,1)}};
za(function(){for(var a=x(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new P(d);Na(d,c);Ih(d)}});function Li(a){u.call(this,"ROM",a,Li);this.zb=null;this.yj=a.addr;this.kh=a.size;this.Jl=a.alias;this.Wf=a.file;this.bk=a.notify;if(this.Wf){a=this.Wf;var b=fa(this.Wf);"json"!=b&&"hex"!=b&&(a=ma()+"/api/v1/dump?file="+this.Wf+"&format=bytes&decimal=true");la(a,!0,null,this,Li.prototype.mn)}}v(u,Li);Li.prototype.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Ra=d;Mi(this)};
Li.prototype.Yb=function(){this.uh&&(this.Ra&&this.Ra.xp(this.yj,this.kh,this.uh),delete this.uh);return!0};Li.prototype.Xb=function(){return!0};
Li.prototype.mn=function(a,b,c){if(c)this.Aa("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.zb=e;else if(f)for(this.zb=Array(4*f.length),c=b=0;b<f.length;b++)this.zb[c++]=f[b]&255,this.zb[c++]=f[b]>>8&255,this.zb[c++]=f[b]>>16&255,this.zb[c++]=f[b]>>24&255;else this.zb=d;this.uh=d.symbols;if(!this.zb.length){r("Empty ROM: "+a);return}if(1==this.zb.length){r(this.zb[0]);return}}catch(g){this.Aa("ROM data error: "+
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.zb=Array(a.length),d=0;d<a.length;d++)this.zb[d]=parseInt(a[d],16);Mi(this)}};function Mi(a){if(!Pa(a))if(!a.Wf)a.Pa();else if(a.zb&&a.qa){if(a.zb.length!=a.kh)Qa(a,"ROM size (0x"+p(a.zb.length)+") does not match specified size (0x"+p(a.kh)+")");else if(Ni(a,a.yj)&&Ni(a,a.Jl)){if(a.bk){var b=La(a.bk,a.id);b&&("ega"==b.Ha&&Oi(b,a.zb,[8752,12640],8),b.Pa())}delete a.zb}a.Pa()}}
function Ni(a,b){if(null==b)return!0;if(Ya(a.qa,b,a.kh,!0)){for(var c=0;c<a.zb.length;c++)cb(a.qa,b+c,a.zb[c]);return!0}return!1}za(function(){for(var a=x(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Li(d);Na(d,c)}});function Pi(a){u.call(this,"RAM",a,Pi);this.kg=a.addr;this.rd=a.size;this.Yl=a.test;this.Wl=!!this.rd;this.Ag=!1}v(u,Pi);Pi.prototype.sc=function(a,b,c){this.qa=b;this.la=c;this.ka=z(a,"ChipSet");this.Pa()};Pi.prototype.Yb=function(a,b){b||this.reset();return!0};
Pi.prototype.Xb=function(){return!0};Pi.prototype.reset=function(){if(!this.kg&&!this.Wl&&this.ka){var a=1024*Mh(this.ka);this.rd&&a!=this.rd&&($a(this.qa,this.kg,this.rd),this.Ag=!1);this.rd=a}!this.Ag&&this.rd&&Ya(this.qa,this.kg,this.rd)&&(this.Ag=!0,this.status(Math.floor(this.rd/1024)+"Kb"));if(this.Ag){if(this.Yl||db(this.qa,1138,4660),this.ka&&(a=this.ka,a.ja)){var b=1048576>this.kg?21:23,c=a.ja[b]|a.ja[b+1]<<8,c=c+(this.rd>>10);a.ja[b]=c&255;a.ja[b+1]=c>>8;Qh(a)}}else r("No RAM allocated")};
za(function(){for(var a=x(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Pi(d);Na(d,c)}});function Qi(a){u.call(this,"Keyboard",a,Qi);this.Pj=!1;this.th={};this.en=250;this.fn=100;this.Pa()}v(u,Qi);
var Q={Fo:1,Go:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Co:65,Do:66,rj:67,Dl:68,E:69,Jo:70,Mo:71,sj:72,Oo:73,Po:74,Qo:75,Ro:76,So:77,ph:78,Uo:79,Vo:80,Xo:81,uj:82,ap:83,kp:84,op:85,pp:86,qp:87,sp:88,tp:89,vp:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,wp:97,yp:98,Ap:99,Bp:100,Cp:101,Dp:102,Ep:103,Fp:104,Gp:105,Hp:106,Ip:107,Jp:108,
Kp:109,Lp:110,Np:111,Op:112,Pp:113,Qp:114,Rp:115,Sp:116,Tp:117,Vp:118,Wp:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Ri={16:2,17:8,18:32,20:256,144:512,145:1024},Si={"caps-lock":256,"num-lock":512,"scroll-lock":1024},Ti={tab:1009,esc:1027,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Ui={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,
this.L();this.A-=this.B.Db},function(){this.I=this.L();this.A-=this.B.Db},function(){this.G=this.L();this.A-=this.B.Db},function(){this.F=this.L();this.A-=this.B.Db},oh,ph,oh,ph,function(){O[this.da()].call(this,ie)},function(){O[this.da()].call(this,he)},function(){this.Z|=1;Vg[this.da()].call(this,Rd,this.da)},function(){this.Z|=1;Wg[this.da()].call(this,Rd,this.L)},qh,rh,qh,rh,function(){ad.call(this,3,null,this.B.Fk)},function(){var a=this.da(),b;a:{b=this.cg[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],
this.Ba)){b=!1;break a}b=!0}b?ad.call(this,a,null,0):this.A--},function(){Oc(this)?ad.call(this,4,null,this.B.Gk):this.A-=this.B.Hk},function(){this.A-=this.B.Dk;if(this.gc&1&&this.Ca&16384){var a=D(this,this.ib.Ia+0);Sb.call(this.xa,a,!1)}else{var a=this.xa.Za,b=this.Ga(),c=this.Ga(),d=this.Ga();null!=Vb(this,b,c,!1)&&(Ub(this,d,a),this.Bh&&Cc(this,this.Ba))}},function(){Vg[this.da()].call(this,Sd,Jd)},function(){Wg[this.da()].call(this,Td,Jd)},function(){Vg[this.da()].call(this,Sd,Kd)},function(){Wg[this.da()].call(this,
Td,Kd)},function(){var a=this.da(),b=this.H&255;this.H=(b/a&255)<<8|b%a;this.ca=256;this.Y=this.ia=b;this.A-=this.B.ik},function(){var a=this.da();this.Y=this.ia=this.H=(this.H>>8)*a+this.H&255;this.ca=256;this.A-=this.B.hk},function(){this.H=this.H&-256|(Jc(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.T(this.D,this.C+(this.H&255)&65535);this.A-=this.B.gl},sh,sh,sh,sh,sh,sh,sh,sh,function(){var a=this.M();(this.J=this.J-1&65535)&&this.Y&this.ca-1?(J(this,this.ta+a),this.A-=this.B.Ok):
this.A-=this.B.Ai},function(){var a=this.M();!(this.J=this.J-1&65535)||this.Y&this.ca-1?this.A-=this.B.Ci:(J(this,this.ta+a),this.A-=this.B.Bi)},function(){var a=this.M();(this.J=this.J-1&65535)?(J(this,this.ta+a),this.A-=this.B.Nk):this.A-=this.B.Ai},function(){var a=this.M();this.J?this.A-=this.B.Ci:(J(this,this.ta+a),this.A-=this.B.Bi)},function(){var a=this.da();this.H=this.H&-256|gb(this.qa,a,this.Ba-2);this.A-=this.B.ui},function(){var a=this.da();this.H=gb(this.qa,a,this.Ba-1)|gb(this.qa,a+
1&65535,this.Ba-2)<<8;this.A-=this.B.ui},function(){var a=this.da();ib(this.qa,a,this.H&255,this.Ba-2);this.A-=this.B.Ji},function(){var a=this.da();ib(this.qa,a,this.H&255,this.Ba-2);ib(this.qa,a+1&65535,this.H>>8,this.Ba-2);this.A-=this.B.Ji},function(){var a=this.L();G(this,this.ta);J(this,this.ta+a);this.A-=this.B.mk},function(){var a=this.L();J(this,this.ta+a);this.A-=this.B.vi},function(){Vb(this,this.L(),this.L());this.A-=this.B.Jk},function(){var a=this.M();J(this,this.ta+a);this.A-=this.B.vi},
function(){this.H=this.H&-256|gb(this.qa,this.K,this.Ba-1);this.A-=this.B.ti},function(){this.H=gb(this.qa,this.K,this.Ba-1)|gb(this.qa,this.K+1&65535,this.Ba-1)<<8;this.A-=this.B.ti},function(){ib(this.qa,this.K,this.H&255,this.Ba-1);this.A-=this.B.Ii},function(){ib(this.qa,this.K,this.H&255,this.Ba-1);ib(this.qa,this.K+1&65535,this.H>>8,this.Ba-1);this.A-=this.B.Ii},th,th,function(){this.Z|=132;this.A-=this.B.Md},function(){this.Z|=68;this.A-=this.B.Md},function(){this.lb|=4;this.A-=2;this.Ca&512||
qb(this)},function(){Jc(this)?Pc(this):Tc(this);this.A-=2},function(){this.Eb=-1;Vg[this.da()].call(this,Vd,Md);0<=this.Eb&&(this.H=this.Eb)},function(){this.Eb=-1;Wg[this.da()].call(this,Wd,Md);0<=this.Eb&&(this.H=this.Eb,this.K=this.Tf)},function(){this.Y&=~this.ca;this.A-=2},function(){this.Y|=this.ca;this.A-=2},function(){this.Ca&=-513;this.A-=this.B.kk},function(){this.Ca|=512;this.Z|=4;this.A-=2},function(){this.Ca&=-1025;this.A-=2},function(){this.Ca|=1024;this.A-=2},function(){Vg[this.da()].call(this,
ac,Md)},function(){Wg[this.da()].call(this,bc,Md)}],Xg=[function(){var a=this.da();16>(a&56)&&(this.Z|=1);Wg[a].call(this,this.uj,Md)},function(){var a=this.da();a&16||(this.Z|=1);Wg[a].call(this,uh,Md)},function(){O[this.da()].call(this,le)},function(){O[this.da()].call(this,me)},N,function(){this.xa.Za?C.call(this,13,0,!0):(pe.call(this,D(this,2054)),this.F=D(this,2086),this.G=D(this,2088),this.I=D(this,2090),this.X=D(this,2092),this.C=D(this,2094),this.K=D(this,2096),this.J=D(this,2098),this.H=
D(this,2100),Wb(this.Pa,2102,D(this,2084)),Wb(this.xa,2108,D(this,2082)),Wb(this.qb,2114,D(this,2080)),Wb(this.wb,2120,D(this,2078)),Ub(this,D(this,2072)),J(this,D(this,2074)),this.Hc=D(this,2126)|D(this,2128)<<16,this.Fe=this.Hc+D(this,2130),Wb(this.Sd,2132,D(this,2076)),this.Ic=D(this,2138)|D(this,2140)<<16,this.Ge=this.Ic+D(this,2142),Wb(this.ib,2144,D(this,2070)),this.A-=195)},function(){this.xa.Za?C.call(this,13,0,!0):(this.gc&=-9,this.A-=2)},N,N,N,N,H,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,
N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,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.ha?0:1);return this.Sd.ya},
function(){this.A-=2+(0>this.ha?0:1);return this.ib.ya},function(a){this.Z|=2;this.Sd.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;-4!=this.ib.load(a)&&(F(this,this.ib.ud+4,this.ib.jb|=512),this.ib.type=768);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;this.A-=14+(0>this.ha?0:2);if(-4!=this.Gb.load(a,!0)&&2048!=(this.Gb.jb&2560)&&(this.Gb.kc>=this.xa.Za&&this.Gb.kc>=(a&3)||7168==(this.Gb.jb&7168)))return Vc(this),a;Rc(this);return a},function(a){this.Z|=2;this.A-=
14+(0>this.ha?0:2);if(-4!=this.Gb.load(a,!0)&&512==(this.Gb.jb&2560)&&this.Gb.kc>=this.xa.Za&&this.Gb.kc>=(a&3))return Vc(this),a;Rc(this);return a},L,L],cc=[tc,tc,tc,tc,tc,tc,L,L],uh=[function(a){0>this.ha?H.call(this):(a=this.Fe-this.Hc,F(this,this.ha+2,this.Hc),F(this,this.ha+4,65280|this.Hc>>16),this.A-=11);return a},function(a){0>this.ha?H.call(this):(a=this.Ge-this.Ic,F(this,this.ha+2,this.Ic),F(this,this.ha+4,65280|this.Ic>>16),this.A-=12);return a},function(a){0>this.ha?H.call(this):(this.Hc=
D(this,this.ha+2)|Yc(this,this.ha+4)<<16,this.Fe=this.Hc+a,this.Z|=2,this.A-=11);return a},function(a){0>this.ha?H.call(this):(this.Ic=D(this,this.ha+2)|Yc(this,this.ha+4)<<16,this.Ge=this.Ic+a,this.Z|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ha?0:1);return this.gc},L,function(a){pe.call(this,a);this.A-=0>this.ha?3:6;this.Z|=2;return a},L];
function P(a){u.call(this,"ChipSet",a,P);this.Fa=(this.Fa=a.model)?parseInt(this.Fa,10):vh;this.Qb=0;var b=a.sw1;if(b)this.Qb=wh(b,xh|yh.Cl);else{this.sd=[360,360];(b=a.floppies)&&b.length&&(this.sd=b);if(b=this.sd.length)this.Qb|=zh.nh,b--,this.Qb|=(b&3)<<zh.ef;if(b=a.monitor||(this.Fa<Ah?"mono":"ega"),void 0!==Bh[b])this.Qb|=Bh[b]<<yh.ef}this.Td=wh(a.sw2||"11110000",0);this.Zm=this.Fa==vh?16:64;this.tg=this.nf=1;this.Fa>=Ah&&(this.tg=this.nf=2);this.Fd=a.scaleTimers||!1;this.uo=a.rtcDate;this.Sj=
!1;a.sound&&window&&"webkitAudioContext"in window&&(this.Eh=new window.webkitAudioContext);this.reset(!0);this.Qa()}v(u,P);var vh=5150,Ah=5170,Bh={none:0,tv:1,color:2,mono:3,ega:0},zh={nh:1,ONE:0,mp:64,kp:128,Ko:192,df:192,ef:6},xh=12,yh={lp:16,Do:32,Cl:48,df:48,ef:4};k=P.prototype;
k.Fb=function(a,b,c){switch(b){case "sw1":return this.ra[b]=c,Ch(this,b,c,this.Qb,{0:this.Fa==vh?"Bootable Floppy Drive":"Loop on POST",1:this.Fa==vh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Fa==vh)return this.ra[b]=c,Ch(this,b,c,this.Td,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.ra[b]=c,!0}return!1};
k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;this.Na=a;this.Ma=z(a,"Keyboard");this.Xg=c.ba.Xc/1193181;fb(b,this,Dh);hb(b,this,Eh);this.Fa<Ah?(fb(b,this,Fh),hb(b,this,Gh)):(fb(b,this,Hh),hb(b,this,Ih))};k.Xb=function(a,b){if(!b)if(!a)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(a){var b;this.Pc=this.Qb;this.xe=this.Td;Jh(this);this.ab=Array(this.tg);for(b=0;b<this.tg;b++)Kh(this,b);this.Rb=Array(this.nf);Lh(this,0,32);1<this.nf&&Lh(this,1,160);this.Ah=null;this.Ib=Array(3);for(b=0;b<this.Ib.length;b++)Mh(this,b);this.mf=this.yh=this.pc=this.pg=null;this.og=0;if(this.Fa>=Ah){this.rb=16;this.ed=0;this.Qc=16;this.jg=0;this.Zd=160;512<=Nh(this)&&(this.Zd|=16);3==Oh(this)&&(this.Zd|=64);this.vh=3;this.mg=0;this.Sb=Array(7);this.He=0;a&&(this.ja=Array(64));Ph(this,
this.uo);for(a=21;24>=a;a++)this.ja[a]=0;for(a=14;46>a;a++)void 0===this.ja[a]&&(this.ja[a]=0);this.ja[20]=this.Pc&(yh.df|2|zh.nh|zh.df);this.ja[16]=Qh(this,0)<<4|Qh(this,1);Rh(this)}};
function Ph(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.fc("CMOS date invalid ("+b+"), using "+c)):b&&a.fc("CMOS date: "+c);a.ja[0]=c.getSeconds();a.ja[1]=0;a.ja[2]=c.getMinutes();a.ja[3]=0;a.ja[4]=c.getHours();a.ja[5]=0;a.ja[6]=c.getDay()+1;a.ja[7]=c.getDate();a.ja[8]=c.getMonth()+1;c=c.getFullYear();a.ja[9]=c%100;c/=100;a.ja[50]=c%10|c/10<<4;a.ja[10]=38;a.ja[11]=2;a.ja[12]=0;a.ja[13]=128;a.Nf=a.Ze=0;a.hl=a.Vg=null}
function Sh(a){var b;void 0===b&&(b=a.Vg);a.Ze=B(a.la,a.Fd)+b;a.ja[11]&64&&tb(a.la,b)}function Rh(a){for(var b=0,c=16;46>c;c++)b+=a.ja[c];a.ja[47]=b&255;a.ja[46]=b>>8}
k.save=function(){var a=new I(this);a.set(0,[this.Qb,this.Td,this.Pc,this.xe]);for(var b=[],c=0;c<this.ab;c++){for(var d=this.ab[c],e=d,f=[],g=0;g<e.yb.length;g++){var h=e.yb[g];f[g]=[h.md,h.hg,h.Vb,h.Wa,h.Ya,h.mode,h.qg,h.qo,h.ro]}b[c]=[d.yd,d.wh,d.Bj,d.Ab,f]}a.set(1,[b]);b=[];for(c=0;c<this.Rb.length;c++)d=this.Rb[c],b[c]=[d.Df,d.Gc,d.od,d.Rc,d.Jb,d.vc,d.$d,d.lf];a.set(2,[b]);b=[];for(c=0;c<this.Ib.length;c++)d=this.Ib[c],b[c]=[d.Vb,d.rc,d.Ya,d.he,d.Dj,d.mode,d.fh,d.Bd,d.ge,d.Uc,d.uf,d.le,d.nd];
a.set(3,[this.Ah,b]);a.set(4,[this.pg,this.pc,this.yh,this.mf,this.og]);this.Fa>=Ah&&(a.set(5,[this.rb,this.ed,this.Qc,this.jg,this.Zd,this.vh]),a.set(6,[this.mg,this.Sb,this.He,this.ja,this.Nf,this.Ze]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Qb=b[0];this.Td=b[1];this.Pc=b[2];this.xe=b[3];b=a[1];for(c=0;c<this.tg;c++)Kh(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.nf;c++)Lh(this,c,0===c?32:160,b[0][c]);b=a[3];this.Ah=b[0];for(c=0;c<this.Ib.length;c++)Mh(this,c,b[1][c]);b=a[4];this.pg=b[0];this.pc=b[1];this.yh=b[2];this.mf=b[3];this.og=b[4];if(b=a[5])this.rb=b[0],this.ed=b[1],this.Qc=b[2],this.jg=b[3],this.Zd=b[4],this.vh=b[5];if(b=a[6])this.mg=b[0],this.Sb=b[1],this.He=b[2],this.ja=b[3],
this.Nf=b[4],this.Ze=b[5],Ph(this);return!0};var Th=[0,null,null,0,Array(4)];function Kh(a,b,c){var d=a.ab[b];d||(d={yb:Array(4)});c=c&&5==c.length?c:Th;d.yd=c[0];d.wh=c[1];d.Bj=c[2];d.Ab=c[3];d.dn=b<<2;for(var e=0;e<d.yb.length;e++)Uh(d,e,c[4][e]);a.ab[b]=d}var Vh=[!0,[0,0],[0,0],[0,0],[0,0]];
function Uh(a,b,c){var d=a.yb[b];d||(d={hg:[0,0],Vb:[0,0],Wa:[0,0],Ya:[0,0]});c=c&&8==c.length?c:Vh;d.md=c[0];d.hg[0]=c[1][0];d.hg[1]=c[1][1];d.Vb[0]=c[2][0];d.Vb[1]=c[2][1];d.Wa[0]=c[3][0];d.Wa[1]=c[3][1];d.Ya[0]=c[4][0];d.Ya[1]=c[4][1];d.mode=c[5];d.qg=c[6];d.ea=a;d.Xj=b;Wh(d,c[8],c[9]);a.yb[b]=d}function Wh(a,b,c,d){"string"==typeof b&&(b=La(b));b&&(a.xg=null,a.qo=b.id,a.ro=c,a.wg=b,a.Wh=b[c],a.Yg=d)}var Xh=[0,Array(4)];
function Lh(a,b,c,d){var e=a.Rb[b];e||(e={Gc:[null,null,null,null]});d=d&&8==d.length?d:Xh;e.port=c;e.Lp=b<<3;e.Df=d[0];e.Gc[0]=d[1][0];e.Gc[1]=d[1][1];e.Gc[2]=d[1][2];e.Gc[3]=d[1][3];e.od=d[2];e.Rc=d[3];e.Jb=d[4];e.vc=d[5];e.$d=d[6];e.lf=d[7];a.Rb[b]=e}var Yh=[[0,0],[0,0],[0,0],[0,0]];
function Mh(a,b,c){var d=a.Ib[b];d||(d={Vb:[0,0],rc:[0,0],Ya:[0,0],he:[0,0]});c=c&&13==c.length?c:Yh;d.Vb[0]=c[0][0];d.Vb[1]=c[0][1];d.rc[0]=c[1][0];d.rc[1]=c[1][1];d.Ya[0]=c[2][0];d.Ya[1]=c[2][1];d.he[0]=c[3][0];d.he[1]=c[3][1];d.Dj=c[4];d.mode=c[5];d.fh=c[6];d.Bd=c[7];d.ge=c[8];d.Uc=c[9];d.uf=c[10];d.le=c[11];d.nd=c[12];a.Ib[b]=d}function Nh(a,b){return((((b?a.Qb:a.Pc)&12)>>2)+1)*a.Zm+32*((b?a.Td:a.xe)&15)}function Zh(a,b){var c=b?a.Qb:a.Pc;return a.Fa!=vh||c&zh.nh?((c&zh.df)>>zh.ef)+1:0}
function Qh(a,b){if(b<Zh(a)){if(!a.sd)return 1;if(b<a.sd.length)switch(a.sd[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Oh(a,b){return((b?a.Qb:a.Pc)&yh.df)>>yh.ef}
function Ch(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=y(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)null!=e&&null!=e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),$h(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");$h(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Qb=
a.Qb&~e|(c?0:e);break;case "sw2":a.Td=a.Td&~e|(c?0:e)}Jh(a)}}(a,b[g])}function $h(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Jh(a){var b=a.ra.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(null!=b){var d;d=""+(Nh(a,!0)+"Kb");d+=", "+c[Oh(a,!0)]+" Monitor";d+=", "+Zh(a,!0)+" Floppy Drives";if(null!=a.Pc&&a.Pc!=a.Qb||null!=a.xe&&a.xe!=a.Td)d+=" (Reset required)";b.textContent=d}}
function ai(a,b,c){a=a.ab[b];var d=a.yb[c],e=d.Wa[a.Ab];a.Ab^=1;b||0!=c||a.Ab||(d.Wa[0]++,255<d.Wa[0]&&(d.Wa[0]=0,d.Wa[1]++,255<d.Wa[1]&&(d.Wa[1]=0)));return e}function bi(a,b,c,d){a=a.ab[b];c=a.yb[c];c.Wa[a.Ab]=c.hg[a.Ab]=d;a.Ab^=1}function ci(a,b,c){a=a.ab[b];var d=a.yb[c],e=d.Ya[a.Ab];a.Ab^=1;b||0!=c||a.Ab||(d.Ya[0]--,0>d.Ya[0]&&(d.Ya[0]=255,d.Ya[1]--,0>d.Ya[1]&&(d.Ya[1]=255)));return e}function di(a,b,c,d){a=a.ab[b];c=a.yb[c];c.Ya[a.Ab]=c.Vb[a.Ab]=d;a.Ab^=1}
function ei(a,b){var c=a.ab[b],d=c.yd|1;c.yd&=-16;return d}function fi(a,b,c){a=a.ab[b];b=c&3;a.yd=a.yd&~(16<<b)|(c&4)<<b+2;a.Bj=c}function gi(a,b,c){b=a.ab[b];var d=c&3,e=b.yb[d];e.md=!!(c&4);e.md||hi(a,b.dn+d)}function ii(a,b){for(var c=a.ab[b],d=0;d<c.yb.length;d++)Uh(c,d)}function ji(a,b,c){return a.ab[b].yb[c].qg}function ki(a,b,c,d){a.ab[b].yb[c].qg=d}function li(a,b,c,d,e){Wh(a.ab[b>>2].yb[b&3],c,d,e)}
function hi(a,b,c){b=a.ab[b>>2].yb[b&3];b.wg&&b.Wh&&b.Yg?(c&&(b.xg=c),b.md||bd(a,b,!0)):c&&c(!0)}function bd(a,b,c){c&&(b.count=b.Ya[1]<<8|b.Ya[0],b.yl=b.mode&12,b.Uj=b.Tc=!1);for(var d=!1;0<=b.count&&(c=b.qg<<16|b.Wa[1]<<8|b.Wa[0],4==b.yl?(d=!0,function(c){b.Wh.call(b.wg,b.Yg,-1,function(f,g){0>f&&(b.Uj||(b.Uj=!0),f=255);b.md||cb(a.qa,c,f);(d=g)&&setTimeout(function(){mi(b)||bd(a,b)},0)})}(c)):8==b.yl?(c=ab(a.qa,c),0>b.Wh.call(b.wg,b.Yg,c)&&(b.Tc=!0)):b.Tc=!0),!d&&!mi(b););}
function mi(a){if(!a.Tc&&0<=--a.count&&(a.mode&32?(a.Wa[0]--,0>a.Wa[0]&&(a.Wa[0]=255,a.Wa[1]--,0>a.Wa[1]&&(a.Wa[1]=255))):(a.Wa[0]++,255<a.Wa[0]&&(a.Wa[0]=0,a.Wa[1]++,255<a.Wa[1]&&(a.Wa[1]=0))),!a.md))return!1;var b=a.ea;b.yd=b.yd&~(16<<a.Xj)|1<<a.Xj;a.mode&16||(a.md=!0,a.wg=a.Yg=null);a.xg&&(a.xg(!a.Tc),a.xg=null);return!0}function ni(a,b){var c=0,d=a.Rb[b];if(null!=d.lf)switch(d.lf&3){case 2:c=d.Jb;break;case 3:c=d.vc}return c}
function oi(a,b,c){b=a.Rb[b];if(c&16)b.od=0,b.Gc[b.od++]=c,b.Rc=0,b.$d=7,b.Jb=b.vc=0,b.lf=10;else if(c&8)b.lf=c;else{var d=c&224;if(d&32){var e=0;if(96==(d&96))e=1<<(c&7);else for(c=b.$d+1;;){c&=7;d=1<<c;if(b.vc&d){e=d;break}if(c++==b.$d)break}b.vc&e&&(b.vc&=~e,pi(a))}else 192==d&&(b.$d=c&7)}}function ui(a,b,c){var d=a.Rb[b];d.od<d.Gc.length?(d.Gc[d.od++]=c,2==d.od&&d.Gc[0]&2&&d.od++,3!=d.od||d.Gc[0]&1||d.od++):(d.Rc=c,d=a.la,d.Z|=4,pi(a,b||253!=c?0:6))}
function vi(a,b,c){var d=a.Rb[b>>3];b=1<<(b&7);d.Jb&b||(d.Jb|=b,d.Df=c||0,pi(a))}function wi(a,b){var c=a.Rb[b>>3],d=1<<(b&7);c.Jb&d&&(c.Jb&=~d,pi(a))}function pi(a,b){var c,d=-1;1<a.nf&&(c=a.Rb[1],d=~(c.vc|c.Rc)&c.Jb);c=a.Rb[0];0<=d&&(c.Jb=d?c.Jb|4:c.Jb&-5);var d=~(c.vc|c.Rc)&c.Jb,e=a.la;e.ka&&(e.lb=d?e.lb|1:e.lb&-2);d&&b&&(c.Df=b)}
function $c(a,b){void 0===b&&(b=0);var c=-1,d=a.Rb[b];if(d.Df)c=-2,d.Df--;else for(var e=d.Jb&((d.vc|d.Rc)^255),f=d.$d+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.Gc[1]+f:$c(a,1);0<=c&&(d.vc|=g,d.Jb&=~g);break}if(f++==d.$d)break}return c}function xi(a,b){var c=a.Ib[b];c.Bd==c.ge&&yi(a,b);if(c.uf)return c.he[c.Bd++];zi(a,b);return c.Ya[c.Bd++]}
function Ai(a,b,c){var d=a.Ib[b];d.Bd==d.ge&&yi(a,b);d.Vb[d.Bd++]=c;d.Bd==d.ge&&(d.le&&0!=d.mode&&8!=d.mode||(d.uf=!1,d.Ya[0]=d.rc[0]=d.Vb[0],d.Ya[1]=d.rc[1]=d.Vb[1],d.nd=B(a.la,a.Fd),d.le=!0,d.Uc=0!=d.mode,0==b&&(wi(a,0),c=Bi(a,0)*a.Xg|0,6==d.mode&&(c>>=1),tb(a.la,c))),2==b&&wb(a))}k=P.prototype;k.Tm=function(){return null};
k.fo=function(a,b){this.Ah=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var g=this.Ib[c];g.fh=f;g.mode=e;g.Dj=d;g.Vb=[0,0];g.Ya=[0,0];g.he=[0,0];g.Uc=!1;g.uf=!1;g.le=!1;yi(this,c);0==c&&wi(this,0);2==c&&255==this.Rb[0].Rc&&77==this.pc&&(c=this.Ib[0],c.rc[0]=c.Vb[0],c.rc[1]=c.Vb[1],c.nd=B(this.la,this.Fd))}else zi(this,c),d=this.Ib[c],d.he[0]=d.Ya[0],d.he[1]=d.Ya[1],d.uf=!0,yi(this,c)}};function Bi(a,b){var c=a.Ib[b],d=c.Vb[1]<<8|c.Vb[0];d||(d=1==c.ge?256:65536);return d}
function yb(a,b){var c=a.Ib[b],d=c.rc[1]<<8|c.rc[0];d||(d=1==c.ge?256:65536);return d}function yi(a,b){var c=a.Ib[b];c.Bd=32==c.fh?1:0;c.ge=48==c.fh?2:1}
function zi(a,b,c){var d=a.Ib[b];if(d.le&&(2!=b||a.pc&1)){var e=B(a.la,a.Fd),f=(e-d.nd)/a.Xg|0;0>f&&(d.nd=e,f=0);var g=Bi(a,b),h=yb(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.Uc=!0,d.le=!1,b||vi(a,0))):4==d.mode?(d.Uc=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.rc[0]=h&255,d.rc[1]=h>>8,d.nd=e,!b&&d.Uc&&vi(a,0))):6==d.mode&&(h-=f,0>=h&&(d.Uc=!d.Uc,h=g+h,0>=h&&(h=g),d.rc[0]=h&255,d.rc[1]=h>>8,d.nd=e,!b&&d.Uc&&vi(a,0)));d.Ya[0]=h&255;d.Ya[1]=h>>8;c&&(a.nd=0)}return d}
function xb(a,b){for(var c=0;c<a.Ib.length;c++)zi(a,c,b);if(a.Fa>=Ah){var c=a.la.ba.Xc,d=B(a.la,a.Fd);null==a.Vg&&(a.Nf=B(a.la,a.Fd),a.hl=1024,a.Vg=Math.floor(a.la.ba.Xc/a.hl),Sh(a));d>=a.Ze&&(a.ja[12]|=64,a.ja[11]&64&&(a.ja[12]|=128,vi(a,8)),a.Ze=d+a.Vg);a.ja[0]==a.ja[1]&&a.ja[2]==a.ja[3]&&a.ja[4]==a.ja[5]&&(a.ja[12]|=32,a.ja[11]&32&&(a.ja[12]|=128,vi(a,8)));var e=d-a.Nf,f=Math.floor(e/c);if(f&&!(a.ja[11]&128)){for(;f--;)if(60<=++a.ja[0]&&(a.ja[0]=0,60<=++a.ja[2]&&(a.ja[2]=0,24<=++a.ja[4]))){a.ja[4]=
0;a.ja[6]=a.ja[6]%7+1;var g;g=a.ja[9];var h=ka[a.ja[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++a.ja[7]>g&&(a.ja[7]=1,12<++a.ja[8]&&(a.ja[8]=1,a.ja[9]=(a.ja[9]+1)%100))}a.ja[12]|=16;a.ja[11]&16&&(a.ja[12]|=128,vi(a,8))}a.Nf=d-e%c}}k.Lm=function(){var a=this.pg;this.mf&16&&(this.pc&128?a=this.Pc:this.Ma&&(a=Ci(this.Ma)));return a};k.Yn=function(a,b){this.pg=b};k.Mm=function(){return this.pc};k.Zn=function(a,b){Di(this,b);this.Ma&&Ei(this.Ma,b&128?!1:!0,b&64?!0:!1)};
function Di(a,b){var c=!!(b&2),d=!!(a.pc&2);a.pc=b;c!=d&&wb(a,c)}k.Nm=function(){var a=0,a=this.Fa==vh?this.pc&4?a|this.xe&15:a|this.xe>>4&1:this.pc&8?a|this.Pc>>4:a|this.Pc&15;this.pc&1&&zi(this,2).Uc&&(a=this.pc&2?a|32:a|16);return a};k.$n=function(a,b){this.yh=b};k.Om=function(){return this.mf};k.ao=function(a,b){this.mf=b};k.bm=function(){var a=this.jg;this.rb&=-258;var b=this.Ma&&Ci(this.Ma,!0);b&&Fi(this,b);return a};
k.pn=function(a,b){if(this.rb&8)switch(this.ed){case 96:Gi(this,b);break;case 209:Hi(this,b);break;default:if(Gi(this,this.Qc&-17),this.Ma){var c=-1;switch(b){case 255:c=250,Ii(this.Ma)}Fi(this,c)}}this.ed=b;this.rb&=-9};k.cm=function(){return this.pc&-209|(B(this.la)&64?16:0)};k.qn=function(a,b){Di(this,b)};k.dm=function(){var a=this.rb&255;this.rb&256&&(this.rb|=1,this.rb&=-257);return a};
k.on=function(a,b){this.ed=b;this.rb|=8;var c=0;240<=this.ed&&(c=this.ed^15,this.ed=240);switch(this.ed){case 192:Fi(this,this.Zd);break;case 173:Gi(this,this.Qc|16);break;case 174:Gi(this,this.Qc&-17);break;case 170:this.Ma&&Ji(this.Ma,!0);Gi(this,this.Qc|16);Fi(this,85);Hi(this,3);break;case 224:Fi(this,this.Qc&16?0:1);break;case 240:c&1&&xc(this.la)}};function Gi(a,b){var c=!(a.Qc&16);a.Qc=b;a.rb=a.rb&-5|b&4;if(a.Ma){var d=!(b&16);Ei(a.Ma,!!(b&8),d)&&Fi(a,Ci(a.Ma,!0));!c&&d&&Ci(a.Ma)&&Ki(a)}}
function Fi(a,b){0<=b&&(a.jg=b,a.rb&=-2,a.rb|=256)}function Hi(a,b){a.vh=b;Xa(a.qa,!!(b&2));b&1||xc(a.la)}function Ki(a){a.Fa<Ah?vi(a,1,4):a.Qc&16||vi(a,1,120)}k.rm=function(){return this.He};k.En=function(a,b){this.He=b;this.og=b&128?0:128};
k.sm=function(a,b){var c=this.He&63,d;if(13>=c)if(d=this.ja[c],10>c){var e=!1;4!=c&&5!=c||this.ja[11]&2||(d=12>d?d?d:12:(d-=12)?d+128:140,e=!0);this.ja[11]&4||(e&&128<d&&(d-=48),d=d%10|d/10<<4)}else 10==c&&(this.ja[c]^=128);else d=this.ja[c];null!=b&&12==c&&(this.ja[c]&=15,d&128&&wi(this,8),d&64&&this.ja[11]&64&&Sh(this));return d};
k.Fn=function(a,b){var c=this.He&63,d=b^this.ja[c],e;if(13>=c){if(e=b,10>c){var f=!1;this.ja[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&23<e&&(e+=48),this.ja[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;this.ja[c]=e;11==c&&d&64&&b&64&&Sh(this)};k.Jm=function(){return this.mg};k.Vn=function(a,b){this.mg=b};k.Xn=function(a,b){this.og=b};k.Gn=function(){};k.Hn=function(){};
function wh(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 wb(a,b){if(a.Eh){void 0!==b?a.Sj=b:b=a.Sj&&a.la&&a.la.na.bc;var c=Math.round(1193181/Bi(a,2));if(20>c||2E4<c)b=!1;b?a.ad?a.ad.frequency.value=c:(a.ad=a.Eh.createOscillator(),a.ad.type=1,a.ad.connect(a.Eh.destination),a.ad.frequency.value=c,a.ad.noteOn(0)):a.ad&&(a.ad.noteOff(0),a.ad.disconnect(),delete a.ad)}else b&&a.cc("BEEP",Li)}
var Dh={0:function(){return ai(this,0,0)},1:function(){return ci(this,0,0)},2:function(){return ai(this,0,1)},3:function(){return ci(this,0,1)},4:function(){return ai(this,0,2)},5:function(){return ci(this,0,2)},6:function(){return ai(this,0,3)},7:function(){return ci(this,0,3)},8:function(){return ei(this,0)},32:function(){return ni(this,0)},33:function(){return this.Rb[0].Rc},64:function(){return xi(this,0)},65:function(){return xi(this,1)},66:function(){return xi(this,2)},67:P.prototype.Tm,129:function(){return ji(this,
0,2)},130:function(){return ji(this,0,3)},131:function(){return ji(this,0,1)},135:function(){return ji(this,0,0)}},Fh={96:P.prototype.Lm,97:P.prototype.Mm,98:P.prototype.Nm,99:P.prototype.Om},Hh={96:P.prototype.bm,97:P.prototype.cm,100:P.prototype.dm,112:P.prototype.rm,113:P.prototype.sm,128:P.prototype.Jm,132:function(){return this.Sb[0]},133:function(){return this.Sb[1]},134:function(){return this.Sb[2]},136:function(){return this.Sb[3]},137:function(){return ji(this,1,2)},138:function(){return ji(this,
1,3)},139:function(){return ji(this,1,1)},140:function(){return this.Sb[4]},141:function(){return this.Sb[5]},142:function(){return this.Sb[6]},143:function(){return ji(this,1,0)},160:function(){return ni(this,1)},161:function(){return this.Rb[1].Rc},192:function(){return ai(this,1,0)},194:function(){return ci(this,1,0)},196:function(){return ai(this,1,1)},198:function(){return ci(this,1,1)},200:function(){return ai(this,1,2)},202:function(){return ci(this,1,2)},204:function(){return ai(this,1,3)},
206:function(){return ci(this,1,3)},208:function(){return ei(this,1)}},Eh={0:function(a,b){bi(this,0,0,b)},1:function(a,b){di(this,0,0,b)},2:function(a,b){bi(this,0,1,b)},3:function(a,b){di(this,0,1,b)},4:function(a,b){bi(this,0,2,b)},5:function(a,b){di(this,0,2,b)},6:function(a,b){bi(this,0,3,b)},7:function(a,b){di(this,0,3,b)},8:function(a,b){this.ab[0].wh=b},9:function(a,b){fi(this,0,b)},10:function(a,b){gi(this,0,b)},11:function(a,b){this.ab[0].yb[b&3].mode=b},12:function(){this.ab[0].Ab=0},13:function(){ii(this,
0)},32:function(a,b){oi(this,0,b)},33:function(a,b){ui(this,0,b)},64:function(a,b){Ai(this,0,b)},65:function(a,b){Ai(this,1,b)},66:function(a,b){Ai(this,2,b)},67:P.prototype.fo,129:function(a,b){ki(this,0,2,b)},130:function(a,b){ki(this,0,3,b)},131:function(a,b){ki(this,0,1,b)},135:function(a,b){ki(this,0,0,b)}},Gh={96:P.prototype.Yn,97:P.prototype.Zn,98:P.prototype.$n,99:P.prototype.ao,160:P.prototype.Xn},Ih={96:P.prototype.pn,97:P.prototype.qn,100:P.prototype.on,112:P.prototype.En,113:P.prototype.Fn,
128:P.prototype.Vn,132:function(a,b){this.Sb[0]=b},133:function(a,b){this.Sb[1]=b},134:function(a,b){this.Sb[2]=b},136:function(a,b){this.Sb[3]=b},137:function(a,b){ki(this,1,2,b)},138:function(a,b){ki(this,1,3,b)},139:function(a,b){ki(this,1,1,b)},140:function(a,b){this.Sb[4]=b},141:function(a,b){this.Sb[5]=b},142:function(a,b){this.Sb[6]=b},143:function(a,b){ki(this,1,0,b)},160:function(a,b){oi(this,1,b)},161:function(a,b){ui(this,1,b)},192:function(a,b){bi(this,1,0,b)},194:function(a,b){di(this,
1,0,b)},196:function(a,b){bi(this,1,1,b)},198:function(a,b){di(this,1,1,b)},200:function(a,b){bi(this,1,2,b)},202:function(a,b){di(this,1,2,b)},204:function(a,b){bi(this,1,3,b)},206:function(a,b){di(this,1,3,b)},208:function(a,b){this.ab[1].wh=b},210:function(a,b){fi(this,1,b)},212:function(a,b){gi(this,1,b)},214:function(a,b){this.ab[1].yb[b&3].mode=b},216:function(){this.ab[1].Ab=0},218:function(){ii(this,1)},240:P.prototype.Gn,241:P.prototype.Hn};
za(function(){for(var a=y(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new P(d);Na(d,c);Jh(d)}});function Mi(a){u.call(this,"ROM",a,Mi);this.zb=null;this.wj=a.addr;this.jh=a.size;this.Gl=a.alias;this.Uf=a.file;this.Zj=a.notify;if(this.Uf){a=this.Uf;var b=fa(this.Uf);"json"!=b&&"hex"!=b&&(a=ma()+"/api/v1/dump?file="+this.Uf+"&format=bytes&decimal=true");la(a,!0,null,this,Mi.prototype.jn)}}v(u,Mi);Mi.prototype.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;Ni(this)};
Mi.prototype.Xb=function(){this.th&&(this.Sa&&this.Sa.wp(this.wj,this.jh,this.th),delete this.th);return!0};Mi.prototype.Wb=function(){return!0};
Mi.prototype.jn=function(a,b,c){if(c)this.Aa("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.zb=e;else if(f)for(this.zb=Array(4*f.length),c=b=0;b<f.length;b++)this.zb[c++]=f[b]&255,this.zb[c++]=f[b]>>8&255,this.zb[c++]=f[b]>>16&255,this.zb[c++]=f[b]>>24&255;else this.zb=d;this.th=d.symbols;if(!this.zb.length){r("Empty ROM: "+a);return}if(1==this.zb.length){r(this.zb[0]);return}}catch(g){this.Aa("ROM data error: "+
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.zb=Array(a.length),d=0;d<a.length;d++)this.zb[d]=parseInt(a[d],16);Ni(this)}};function Ni(a){if(!Pa(a))if(!a.Uf)a.Qa();else if(a.zb&&a.qa){if(a.zb.length!=a.jh)Qa(a,"ROM size (0x"+p(a.zb.length)+") does not match specified size (0x"+p(a.jh)+")");else if(Oi(a,a.wj)&&Oi(a,a.Gl)){if(a.Zj){var b=La(a.Zj,a.id);b&&("ega"==b.Fa&&Pi(b,a.zb,[8752,12640],8),b.Qa())}delete a.zb}a.Qa()}}
function Oi(a,b){if(null==b)return!0;if(Ya(a.qa,b,a.jh,!0)){for(var c=0;c<a.zb.length;c++)cb(a.qa,b+c,a.zb[c]);return!0}return!1}za(function(){for(var a=y(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Mi(d);Na(d,c)}});function Qi(a){u.call(this,"RAM",a,Qi);this.ig=a.addr;this.qd=a.size;this.Vl=a.test;this.Tl=!!this.qd;this.yg=!1}v(u,Qi);Qi.prototype.sc=function(a,b,c){this.qa=b;this.la=c;this.ka=z(a,"ChipSet");this.Qa()};Qi.prototype.Xb=function(a,b){b||this.reset();return!0};
Qi.prototype.Wb=function(){return!0};Qi.prototype.reset=function(){if(!this.ig&&!this.Tl&&this.ka){var a=1024*Nh(this.ka);this.qd&&a!=this.qd&&($a(this.qa,this.ig,this.qd),this.yg=!1);this.qd=a}!this.yg&&this.qd&&Ya(this.qa,this.ig,this.qd)&&(this.yg=!0,this.status(Math.floor(this.qd/1024)+"Kb"));if(this.yg){if(this.Vl||db(this.qa,1138,4660),this.ka&&(a=this.ka,a.ja)){var b=1048576>this.ig?21:23,c=a.ja[b]|a.ja[b+1]<<8,c=c+(this.qd>>10);a.ja[b]=c&255;a.ja[b+1]=c>>8;Rh(a)}}else r("No RAM allocated")};
za(function(){for(var a=y(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Qi(d);Na(d,c)}});function Ri(a){u.call(this,"Keyboard",a,Ri);this.Mj=!1;this.sh={};this.bn=250;this.cn=100;this.Qa()}v(u,Ri);
var Q={Eo:1,Fo:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Bo:65,Co:66,pj:67,Al:68,E:69,Io:70,Lo:71,qj:72,No:73,Oo:74,Po:75,Qo:76,Ro:77,oh:78,To:79,Uo:80,Wo:81,sj:82,$o:83,jp:84,np:85,op:86,pp:87,rp:88,sp:89,tp:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,vp:97,xp:98,zp:99,Ap:100,Bp:101,Cp:102,Dp:103,Ep:104,Fp:105,Gp:106,Hp:107,Ip:108,
Jp:109,Kp:110,Mp:111,Np:112,Op:113,Pp:114,Qp:115,Rp:116,Sp:117,Up:118,Vp:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Si={16:2,17:8,18:32,20:256,144:512,145:1024},Ti={"caps-lock":256,"num-lock":512,"scroll-lock":1024},Ui={tab:1009,esc:1027,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Vi={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,
bs:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,
"num-down":80,"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},R={1027:1};R[Q["1"]]=2;R[Q["!"]]=10754;R[Q["2"]]=3;R[Q["@"]]=10755;R[Q["3"]]=4;R[Q["#"]]=10756;R[Q["4"]]=5;R[Q.$]=10757;R[Q["5"]]=6;R[Q["%"]]=10758;R[Q["6"]]=7;R[Q["^"]]=10759;
R[Q["7"]]=8;R[Q["&"]]=10760;R[Q["8"]]=9;R[Q["*"]]=10761;R[Q["9"]]=10;R[Q["("]]=10762;R[Q["0"]]=11;R[Q[")"]]=10763;R[Q["-"]]=12;R[Q._]=10764;R[Q["="]]=13;R[Q["+"]]=10765;R[1008]=14;R[1009]=15;R[113]=16;R[81]=10768;R[119]=17;R[87]=10769;R[101]=18;R[69]=10770;R[114]=19;R[82]=10771;R[116]=20;R[84]=10772;R[121]=21;R[89]=10773;R[117]=22;R[85]=10774;R[105]=23;R[73]=10775;R[111]=24;R[79]=10776;R[112]=25;R[80]=10777;R[Q["["]]=26;R[Q["{"]]=10778;R[Q["]"]]=27;R[Q["}"]]=10779;R[13]=28;R[1017]=29;R[97]=30;
R[65]=10782;R[115]=31;R[83]=10783;R[100]=32;R[68]=10784;R[102]=33;R[70]=10785;R[103]=34;R[71]=10786;R[104]=35;R[72]=10787;R[106]=36;R[74]=10788;R[107]=37;R[75]=10789;R[108]=38;R[76]=10790;R[Q[";"]]=39;R[Q[":"]]=10791;R[Q["'"]]=40;R[Q['"']]=10792;R[Q["`"]]=41;R[Q["~"]]=10793;R[1016]=42;R[Q["\\"]]=43;R[Q["|"]]=10795;R[122]=44;R[90]=10796;R[120]=45;R[88]=10797;R[99]=46;R[67]=10798;R[118]=47;R[86]=10799;R[98]=48;R[66]=10800;R[110]=49;R[78]=10801;R[109]=50;R[77]=10802;R[Q[","]]=51;R[Q["<"]]=10803;
R[Q["."]]=52;R[Q[">"]]=10804;R[Q["/"]]=53;R[Q["?"]]=10805;R[3016]=54;R[1018]=56;R[Q[" "]]=57;R[1020]=58;R[1112]=59;R[1113]=60;R[1114]=61;R[1115]=62;R[1116]=63;R[1117]=64;R[1118]=65;R[1119]=66;R[1120]=67;R[1121]=68;R[1144]=69;R[1145]=70;R[1036]=71;R[1038]=72;R[1033]=73;R[1037]=75;R[1039]=77;R[1035]=79;R[1040]=80;R[1034]=81;R[1045]=82;R[1046]=83;R[1122]=87;R[1123]=88;R[4003]=7470;R[4063]=7494;R[4081]=3677523;k=Qi.prototype;
k.Fb=function(a,b,c){var d=this,e=a+"-"+b;if(void 0===this.ra[e])switch(b){case "kbd":return this.ra[e]=c,c.onkeydown=function(a){return Vi(d,a,!0)},c.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:d.Ta&64?d.Ta&=-65:d.Ta&40?b=!1:(d.Pj&&a==Q["`"]&&(a=27),b=!Wi(d,a));return b},c.onkeyup=function(a){return Vi(d,a,!1)},!0;case "caps-lock":return this.ra[e]=c,c.onclick=function(){d.la&&d.la.qd();Wi(d,1020,!0)},!0;case "num-lock":return this.ra[e]=c,c.onclick=function(){d.la&&
d.la.qd();Wi(d,1144,!0)},!0;case "scroll-lock":return this.ra[e]=c,c.onclick=function(){d.la&&d.la.qd();Wi(d,1145,!0)},!0;default:if(void 0!==Ti[b]&&"button"==a)return this.ra[e]=c,c.onclick=function(a,b,c){return function(){a.la&&a.la.qd();Xi(a,c);return!Wi(a,c)}}(this,b,Ti[b]),!0;if(void 0!==Ui[b])return this.ra[e]=c,a=function(a,b,c){return function(){Yi(a,c)}}(this,b,Ui[b]),b=function(a,b,c){return function(){Yi(a,c)}}(this,b,Ui[b]|128),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):
(c.onmousedown=a,c.onmouseup=c.onmouseout=b),!0}return!1};k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Ra=d;this.ka=z(a,"ChipSet")};k.Pa=function(){sa("iOS");this.Sj=sa("Mobi");this.Mb("mobile keyboard support: "+(this.Sj?"true":"false"));return u.prototype.Pa.call(this)};function Hi(a){a.Mb("keyboard reset",Zi);a.oc=[170];a.ka&&Ji(a.ka)}function Di(a,b,c){var d=!1;a.Qh!==c&&(a.Qh=a.Uh=c);a.Eg!==b&&(a.Eg=b)&&!a.Uh&&Ii(a);a.Eg&&a.Uh&&(Hi(a),a.Uh=!1,d=!0);return d}
function Bi(a,b){var c=0;a.oc.length&&(c=a.oc[0],b&&Ii(a));return c}function Ii(a,b){0<a.oc.length&&(b?a.oc=[]:(a.oc.shift(),0<a.oc.length&&a.ka&&Ji(a.ka)))}k.Yb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};k.Xb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Id();this.Ta=0;this.oc=[];if(this.ad)for(var a in this.ad)ca(a)||this.ad[a]&&clearTimeout(this.ad[a]);this.ad=[];this.nl=this.ue=0};
k.save=function(){var a=new I(this);a.set(0,this.lj());return a.data()};k.restore=function(a){return this.Id(a[0])};k.Id=function(a){var b=0;void 0===a&&(a=[]);this.Qh=a[b++];this.Eg=a[b];return!0};k.lj=function(){var a=0,b=[];b[a++]=this.Qh;b[a]=this.Eg;return b};
function Yi(a,b){var c=b&127,d=c==b;if(a.oc)if(20>a.oc.length){if(!(!d&&!a.th[c]||d&&a.th[c])){a.th[c]=d;a.oc.push(b);1==a.oc.length&&a.ka&&Ji(a.ka);for(var e in Ui)if(Ui[e]==c){(c=a.ra["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.oc.length&&a.oc.push(255),a.Mb("scan code buffer overflow")}function $i(a,b){var c=b?a.fn:a.en;a.la&&a.la.ba.Uc&&(c/=a.la.ba.Uc);return c}
function aj(a,b){!a.ue||void 0!==b&&b==a.ue||(clearTimeout(a.ad[a.ue]),bj(a,a.ue,!1))}function cj(a,b){var c,d;for(d in Si){var e="led-"+d,f=Si[d];b&&b!=f||!(c=a.ra[e])||(c.style.backgroundColor=a.Ta&f?"#00ff00":"#000000")}}function Xi(a,b){var c;if(R[b]){var d=Math.floor(b/1E3)&2,e=Ri[Math.floor(b%1E3)]||0;e&&(d&&(e>>=1),e&1792&&(c=!(a.Ta&e)),a.Ta&=~e,c&&(a.Ta|=e),cj(a,e))}}
function Vi(a,b,c){var d,e=!c,f=b.keyCode,g=f;c&&(a.nl=f);if(R[f+1E3]){var g=g+1E3,h=Ri[f]||0;if(h)2==b.location&&(h>>=1,g+=2E3),a.Ta&=~h,c&&(a.Ta|=h),cj(a,h),20==f||144==f||145==f?d=Wi(a,g):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.Ta&40)&&(g=4063),d=c?!Wi(a,g):!1}else 91==f?(a.Ta&=-65,c&&(a.Ta|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(g+=32):d=!0;e&&(a.Ta&=-65,a.Sj||f!=a.nl||aj(a));void 0===d&&(d=!bj(a,g,c));return d}
function Wi(a,b,c){var d=!1;aj(a,b);c&&Xi(a,b);bj(a,b,!0)&&(c=!1,a.ad[b]&&(clearTimeout(a.ad[b]),c=!0),c=$i(a,c),a.ad[a.ue=b]=setTimeout(function(a){return function(){bj(a,b,!1)}}(a),c),d=!0);return d}
function bj(a,b,c){var d=!1;c||(a.ad[b]=null,a.ue==b&&(a.ue=0));var e=R[b]||R[b+1E3];if(void 0!==e){14==e&&40==(a.Ta&40)&&(e=83);var d=[],f=e&255;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.Ta&3||a.Ta&256&&b||(g=h):29==h?a.Ta&12||(g=h):56==h?a.Ta&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)Yi(a,d[c]);d=!0}return d}
za(function(){for(var a=x(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Qi(d);Na(d,c)}});
function U(a,b,c,d){u.call(this,"Video",a,U);this.Ha=a.model;this.Kc=0;"ega"==this.Ha&&(this.ul=a.switches,this.Kc=a.memory||0);this.Yc=a.mode;if(void 0===this.Yc||void 0===V[this.Yc])this.Yc=dj;this.Sg=a.charCols;this.mi=a.charRows;if(void 0===this.Sg||void 0===this.mi)this.Sg=V[this.Yc][0],this.mi=V[this.Yc][1];this.gd=a.screenWidth;this.Ed=a.screenHeight;this.Xl=a.scale;this.Vl=12<=Math.round(this.gd/this.Sg);this.Zl=a.touchScreen;this.Wa=b;this.Lc=c;this.zl=d;this.Jd=null;this.Tl=a.autoLock;this.Ua=
this.Hb=0;this.ud=[];this.bd=Array(16);this.Rh=!1;var e=this;b&&(b.onfocus=function(){e.Rh=!0},b.onblur=function(){e.Rh=!1},b.Ue=b.requestPointerLock||b.mozRequestPointerLock||b.webkitRequestPointerLock,b.Al=b.exitPointerLock||b.mozExitPointerLock||b.webkitExitPointerLock,b=function(){e.Qf(document.pointerLockElement===e.Wa||document.mozPointerLockElement===e.Wa||document.webkitPointerLockElement===e.Wa)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",b,!1):"onmozpointerlockchange"in
document?document.addEventListener("mozpointerlockchange",b,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",b,!1));if(a=a.fontROM)"json"!=fa(a)&&(a=ma()+"/api/v1/dump?file="+a+"&format=bytes"),la(a,!0,null,this,this.nn)}v(u,U);
var ej={2:{pi:15700,oi:208,cj:85,dj:96},3:{pi:18432,oi:364,cj:85,dj:96},4:{pi:21850,oi:364,cj:85,dj:96}},fj={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]},dj=7,V=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];V[dj]=[80,25,1,0,1];V[13]=[320,200,16];V[14]=[640,200,16];V[15]=[640,350,16];V[16]=[640,350,16];V[0]=V[1];V[2]=V[3];V[5]=V[4];var gj=Array(5);gj[0]=[0,0,0,255];gj[1]=[127,192,127,255];
gj[2]=[127,192,127,255];gj[3]=[127,255,127,255];gj[4]=[127,255,127,255];var hj=[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 ij=[2,4,6],jj=[3,5,7],kj=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],lj=[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 mj(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=nj[b],f=a.Md||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(oj)];this.Kg=b;this.Ua=e[2];this.Hb=e[3];this.Kc=d||e[4];65536<=this.Kc&&720896<=this.Ua&&(this.Hb=Math.min(this.Kc>>2,32768));this.Mc=c[0];this.tc=c[1];this.pf=c[2];this.Zf=c[3];this.Ac=c[4]&255;this.Jg=c[4]>>8&255;this.hc=c[5];this.fi=oj;if(5==b){this.fi=pj;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.Ua,this.Hb,this.Kc],Array(this.Kc>>
2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.Fd=b[0];this.pe=b[1];this.Vd=b[2];this.mj=b[3];this.Ng=b[4];this.Wh=b[5];this.Te=b[6];this.hg=b[7];this.Zh=b[8];this.$h=b[9];this.Se=b[10];this.Ee=b[11];this.Bb=b[12];d=b[13];"number"==typeof d&&(d=[this.Ua,this.Hb,d]);this.Ua=d[0];this.Hb=d[1];d=this.Kc>>2;if((this.Zd=b[14])&&this.Zd.length<d){for(var e=this.Zd,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.Zd=h}this.jh(b[15]);this.$i=b[16];
this.hb=b[17];this.Xc=b[18];this.mb=b[19];this.Xg=b[20];this.Pd=b[21];this.se=b[22];this.hi=b[23];this.ii=b[24]}f=ej[f]||ej[3];this.ji=a.la.ba.Wc/f.pi|0;this.hn=this.ji*f.cj/100|0;this.jk=this.ji*f.oi;this.kn=this.jk*f.dj/100|0;this.qi=null==c[7]?0:c[7]}}var oj=18,pj=25;function qj(a){return this.Cc(a)|this.Cc(a+1)<<8}function rj(a,b){this.Fc(a,b&255);this.Fc(a+1,b>>8&255)}
var Y=[,,function(a){a+=this.offset;return(this.ea.Bb=this.pa[a])>>this.ea.$i&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.pa[b]>>8:this.pa[b])&255}];Y[16]=function(a){a+=this.offset;a=this.pa[a];for(var b=this.ea.hi&this.ea.ii,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.pa[c]&~this.ea.hb|(b|b<<8|b<<16|b<<24)&this.ea.hb;d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Xc|b<<8-this.ea.Xc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Pd|this.ea.se;d=d&this.ea.hb|this.pa[c]&~this.ea.hb;d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Xc|b<<8-this.ea.Xc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Pd|this.ea.se;d&=this.ea.Bb;d=d&this.ea.hb|this.pa[c]&~this.ea.hb;d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Xc|b<<8-this.ea.Xc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Pd|this.ea.se;d|=this.ea.Bb;d=d&this.ea.hb|this.pa[c]&~this.ea.hb;d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Xc|b<<8-this.ea.Xc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Pd|this.ea.se;d^=this.ea.Bb;d=d&this.ea.hb|this.pa[c]&~this.ea.hb;d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.hb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.pa[d]&~c;c=c&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[d]!=c&&(this.pa[d]=c,this.kb=!0)};
Y[4096]=function(a){a+=this.offset;var b=this.pa[a]&~this.ea.hb|this.ea.Bb&this.ea.hb;this.pa[a]!=b&&(this.pa[a]=b,this.kb=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=lj[b&15],d=d&this.ea.hb|this.pa[c]&~this.ea.hb,d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=lj[b&15],d=d&this.ea.Bb,d=d&this.ea.hb|this.pa[c]&~this.ea.hb,d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
Y[40960]=function(a,b){var c=a+this.offset,d=lj[b&15],d=d|this.ea.Bb,d=d&this.ea.hb|this.pa[c]&~this.ea.hb,d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=lj[b&15],d=d^this.ea.Bb,d=d&this.ea.hb|this.pa[c]&~this.ea.hb,d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
function sj(a){var b=[];if(void 0!==a.Kg){b[0]=a.Mc;b[1]=a.tc;b[2]=a.pf;b[3]=a.Zf;b[4]=a.Ac|a.Jg<<8;b[5]=a.hc;if(5==a.Kg){var c=[];c[0]=a.Fd;c[1]=a.pe;c[2]=a.Vd;c[3]=a.mj;c[4]=a.Ng;c[5]=a.Wh;c[6]=a.Te;c[7]=a.hg;c[8]=a.Zh;c[9]=a.$h;c[10]=a.Se;c[11]=a.Ee;c[12]=a.Bb;c[13]=[a.Ua,a.Hb,a.Kc];var d;a:if(d=a.Zd){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.ei;c[16]=a.$i;c[17]=a.hb;c[18]=a.Xc;c[19]=a.mb;c[20]=a.Xg;c[21]=a.Pd;c[22]=a.se;c[23]=a.hi;c[24]=a.ii;b[6]=c}b[7]=a.qi}return b}mj.prototype.jh=function(a){if(null!=a&&a!=this.ei){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.jf||(this.jf=[null,qj,null,rj]);this.jf[0]=c;this.jf[2]=d;this.ei=a}};var nj=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=U.prototype;
k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Ra=d;fb(b,this,tj);hb(b,this,uj);"ega"==this.Ha&&(fb(b,this,vj),hb(b,this,wj));if((this.La=z(a,"Keyboard"))&&this.Wa){for(var e in this.ra)0<e.indexOf("lock")&&this.La.Fb("led",e,this.ra[e]);this.La.Fb(this.zl?"textarea":"canvas","kbd",this.zl||this.Wa)}this.mg=9;(this.ka=z(a,"ChipSet"))&&this.ul&&(this.mg=vh(this.ul,this.mg));this.La&&this.Zl&&xj(this)};
k.Fb=function(a,b,c){var d=this;if(!this.ra[b])switch(this.ra[b]=c,b){case "lockPointer":return this.to=c.textContent,this.Wa&&this.Wa.Ue?c.onclick=function(){d.Ue(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){mb(d,!0)},!0}return!1};k.qd=function(){this.Wa&&this.Wa.focus()};k.Ue=function(a){if(this.Wa)if(a){if(this.Wa.Ue)return this.Wa.Ue(),this.Jd.Qf(!0),!0}else if(this.Wa.Al)return this.Wa.Al(),this.Jd.Qf(!1),!0;return!1};
k.Qf=function(a){this.Jd&&(this.Jd.Qf(a),this.La&&(this.La.Pj=a));var b=this.ra.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.to)};function xj(a){var b=a.Wa;b&&!a.Ph&&(b.addEventListener("touchstart",function(b){yj(a,b)},!1),b.addEventListener("touchmove",function(b){yj(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.Ph=!0)}
function yj(a,b){a.Rh&&b.preventDefault();var c=0,d=0,e=a.Wa;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.gd/a.Wa.offsetWidth*(b.targetTouches[0].pageX-c)/(a.gd/3)|0;d=a.Ed/a.Wa.offsetHeight*(b.targetTouches[0].pageY-d)/(a.Ed/3)|0;1!=d?d?Wi(a.La,40,!0):Wi(a.La,38,!0):1!=c&&(c?Wi(a.La,39,!0):Wi(a.La,37,!0))}k.Yb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Xb=function(a){return a&&this.save?this.save():!0};
k.reset=function(){var a=!0,b=0;this.ka&&(b=Nh(this.ka));var c=!1;if(this.Ha)switch(this.Ha){case "ega":var c=!0,d=fj[this.mg];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.Md!==b&&(this.Md=b,a=!0);this.Ga=null;this.Jc=this.Ch=new mj(this,1);this.bc=this.xg=new mj(this,3);c?(this.oa=new mj(this,5,null,this.Kc),zj(this)):this.oa=new mj;Aj(this);this.Ld=null;this.Yc=3==b?dj:3;this.fe=this.Bc=-1;this.ee=0;Bj(this,this.Yc);if(this.Ga.Ua&&a){a=this.Ga.Ua+this.Dh;for(b=this.Ga.Ua;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.Md?(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),db(this.qa,b,c|d<<8);mb(this,!0)}};function zj(a){a.oa.Ng&1?(a.Jc=a.Ch,a.bc=a.oa):(a.Jc=a.oa,a.bc=a.xg)}k.save=function(){var a=new I(this);a.set(0,sj(this.Ch));a.set(1,sj(this.xg));a.set(2,[this.Md,this.Yc,this.Ld]);a.set(3,sj(this.oa));return a.data()};
k.restore=function(a){var b=a[2];this.Md=b[0];this.Yc=b[1];this.Ld=b[2];this.Ga=null;this.Jc=this.Ch=new mj(this,1,a[0]);this.bc=this.xg=new mj(this,3,a[1]);this.oa=new mj(this,5,a[3],this.Kc);this.oa.Mc&&zj(this);Aj(this);if(!Cj(this))return!1;Dj(this);return!0};
k.nn=function(a,b,c){if(c)this.Aa("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){r("Empty font ROM image: "+a);return}if(1==d.length){r(d[0]);return}if(8192==d.length)Oi(this,d,[0,6144]);else{this.Aa("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Aa("Font ROM data error: "+e.message);return}this.Pa()}};
function Ej(a,b){if(1==b)return a.bd[0]=W[0],a.bd[1]=W[7],a.bd;if(2==b){var c=a.Ga.pf;if(a.Ga===a.oa){var d=a.oa.Vd[0],c=d&7;d&16&&(c|=8);18!=a.oa.Vd[1]&&(c|=32)}a.bd[0]=W[c&15];c=c&32?jj:ij;for(d=0;d<c.length;d++)a.bd[d+1]=W[c[d]];return a.bd}if(a.bc===a.xg)return W;c=null!=a.oa.Vd[15]?a.oa.Vd:kj;for(d=0;d<a.bd.length;d++){var e=c[d]||0;a.bd[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.bd}function Oi(a,b,c,d){a.ig=b;a.sh=c;a.ke=d}
function Aj(a){var b=!1;if(window&&a.ig){var c=a.ke?0:2048,d=a.ke?a.ke:9;Fj(a,1,a.sh[0],c,d,14,a.ig,gj,hj)&&(b=!0);c=Ej(a);d=a.ke?a.ke:8;Fj(a,3,a.sh[1],0,d,8,a.ig,c)&&(b=!0);a.ke&&Fj(a,5,a.sh[0],0,a.ke,14,a.ig,c)&&(b=!0)}return b}function Fj(a,b,c,d,e,f,g,h,m){var n=!1;Gj(a,b,c,d,e,f,g,h,m)&&(n=!0);a.Vl&&Gj(a,b<<1,c,d,e,f,g,h,m)&&(n=!0);return n}
function Gj(a,b,c,d,e,f,g,h,m){var n=!1,q=b&1?0:1,s=a.ud[b];s||(s={ic:e<<q,jc:f<<q,De:Array(h.length),xj:h.slice(),ff:m,qh:Array(h.length)});for(m=0;m<h.length;m++){var t=h[m],y=s.De[m]?s.xj[m]:[];if(t[0]!==y[0]||t[1]!==y[1]||t[2]!==y[2]){var n=s,y=m,H=q,S=c,N=d,T=e,wa=f,Wa=g,Qb=[0,0,0,0],Ac=window.document.createElement("canvas");Ac.width=n.ic<<4;Ac.height=n.jc<<4;for(var pi=Ac.getContext("2d"),xa=void 0,zb=void 0,Xa=void 0,Bc=8>wa||!N?wa:8,xd=pi.createImageData(n.ic,n.jc),xa=0;256>xa;xa++){for(Xa=
0;Xa<wa;Xa++)for(var Hk=n.ff&&y&1&&Xa>=wa-2,Ik=Wa[Xa<Bc?S+xa*Bc+Xa:N+xa*Bc+Xa-Bc],yd=0;yd<=H;yd++)for(zb=0;zb<T;zb++){var qi=zb<<H,ri=(Xa<<H)+yd,si=Hk||Ik&128>>(8<=zb&&176<=xa&&223>=xa?7:zb)?t:Qb;Hj(xd,qi,ri,si);H&&Hj(xd,qi+1,ri,si)}pi.putImageData(xd,(xa&15)*n.ic,(xa>>4)*n.jc)}n.De[y]="#"+p(t[0],2)+p(t[1],2)+p(t[2],2);n.xj[y]=t;n.qh[y]=Ac;n=!0}}a.ud[b]=s;return n}function Ij(a){0<a.ee||0<=a.Bc?0>a.fe&&(a.fe=0):a.fe=-1}
function Dj(a){if(a.Nb){for(var b=10;15>=b;b++)if(null==a.Ga.hc[b])return;var c=a.Ga.hc[10],b=c&31,d=a.Ga.hc[11]&31,e=a.Ga.hc[9]&31,f=!1;a.Ga===a.oa&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Jj(a);else{c=a.Ga.hc[15]+((a.Ga.hc[14]&63)<<8);a.Bc!=c&&(Jj(a),a.Bc=c);d=d-b+1;if(a.Cl!=b||a.Jj!=d)a.Cl=b,a.Jj=d;a.Dd=e+1;Ij(a)}}}
function Jj(a){if(0<=a.Bc){if(void 0!==a.ac){var b=a.ac[a.Bc];if(b&131072){var b=b&-131073,c=a.Bc%a.Cb,d=Math.floor(a.Bc/a.Cb);a.Nb&&a.ud[a.Nb]&&(a.Ke&&Kj(a,c,d,b,a.Ke),Kj(a,c,d,b));a.ac[a.Bc]=b}}a.Bc=-1}}
function Lj(a){var b;a=a.Ga;var c=a.Ee[5];if(null!=c){b=2;var d=512,e=a.Ee[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.Xc=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.xe=function(a){var b=this.Ga;null!=a&&b&&a!=b.ei&&(b.jh(a),this.qa.jh(b.Ua,b.Hb,b.jf))};
function Cj(a,b){var c,d=a.Ld,e=a.Ga;if(e)if(1==e.Kg)d=dj;else if(5==e.Kg){var d=null,f=e.Kc>>2,g=32768<f?32768:f,h=e.Ee[6];if(null!=h){switch(h&12){case 0:e.Ua=655360;e.Hb=f;d=255;break;case 4:e.Ua=655360;e.Hb=f;d=3==a.Md?15:16;break;case 8:e.Ua=720896;e.Hb=g;d=dj;break;case 12:e.Ua=753664,e.Hb=g,d=3==a.Md?2:3}c=e.hg[1]&8;f=e.hc[6]|(e.hc[7]&1)<<8;255!=d&&(h&1?753664==e.Ua?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Lj(a)}}else e.tc&8&&(e.tc&2?(d=e.tc&16?6:5,e.tc&4||(d-=1)):(d=e.tc&1?3:1,e.tc&4&&(d-=
1)));else a.Ld=null,null==d&&(d=a.Yc);if(!Bj(a,d,b))return!1;a.xe(c);return!0}
function Bj(a,b,c){if(null!=b&&(b!=a.Ld||c)){a.Kl=0;a.Ld=b;b=a.Ga||(b==dj?a.Jc:a.bc);if(b!=a.Ga||b.Ua!=a.Ua||b.Hb!=a.Hb){Jj(a);if(a.Ua){if(!$a(a.qa,a.Ua,a.Hb))return!1;a.Ga&&(a.Ga.Mc=!1)}a.Ga=b;b.Mc=!0;a.Ua=b.Ua;a.Hb=b.Hb;if(!Ya(a.qa,b.Ua,b.Hb,!1,b===a.oa?b:null))return!1}a.Nb=0;a.Cb=a.Sg;a.lc=a.mi;a.gi=V[dj][2];b=0;var d=V[a.Ld];d&&(a.Cb=d[0],a.lc=d[1],a.gi=d[2],b=d[3]||0,a.Nb=d[4],4==a.Md&&a.Ga===a.oa&&3==a.Nb&&(7==a.oa.hc[9]?a.lc=43:a.Nb=5));a.gk=a.Cb*a.lc;a.Pg=a.gk/a.gi;a.Dh=(a.Pg<<1)+b;a.Hj=
b?a.Dh+b>>1:0;13<=a.Ld&&(a.Pg<<=1);a.ud.length&&(a.hd=Math.floor(a.gd/a.Cb),a.jd=Math.floor(a.Ed/a.lc),a.Nb?(b=a.ud[a.Nb],d=a.ud[a.Nb<<1],a.Xl&&80==a.Cb?d&&a.hd>=3*d.ic>>2&&(a.Nb<<=1,b=d):(d&&a.hd>=d.ic&&(a.Nb<<=1,b=d),b&&(a.hd=b.ic,a.jd=b.jc)),a.rf=a.sf=0,b&&(a.rf=a.Cb*b.ic,a.sf=a.lc*b.jc)):(a.hd=a.jd=1,a.rf=a.Cb,a.sf=a.lc),a.Lg=a.Lc.createImageData(a.rf,a.sf),a.Je=window.document.createElement("canvas"),a.Je.width=a.rf,a.Je.height=a.sf,a.Ke=a.Je.getContext("2d"),a.pj=a.qj=0,a.Gh=a.gd,a.Hh=a.Ed,
b=a.gd-a.Cb*a.hd,d=a.Ed-a.lc*a.jd,0<b&&(a.pj=b>>1,a.Gh-=b),0<d&&(a.qj=d>>1,a.Hh-=d),b||d)&&(a.Lc.fillStyle=a.Wa.style.backgroundColor,a.Lc.fillRect(0,0,a.gd,a.Ed));!1!==c?mb(a,!0):Mj(a,!0)}return!0}function Hj(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 Mj(a,b){var c;if(b){if(c=a.Pg,void 0===a.ac||a.ac.length!=c)a.ac=Array(c)}else{if(void 0===a.ac)return;c=a.ac.length}for(var d=0;d<c;d++)a.ac[d]=-1;a.ee=-1}
function Kj(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.ud[a.Nb];h.ff&&(d=h.ff[d]);var m=g>>4&15;h.ff&&(m=h.ff[m]);e?(b*=h.ic,c*=h.jc,e.fillStyle=h.De[m],e.fillRect(b,c,h.ic,h.jc)):(b=b*a.hd+a.pj,c=c*a.jd+a.qj,a.Lc.fillStyle=h.De[m],a.Lc.fillRect(b,c,a.hd,a.jd));g&256&&(m=(f&15)*h.ic,f=(f>>4)*h.jc,e?e.drawImage(h.qh[d],m,f,h.ic,h.jc,b,c,h.ic,h.jc):a.Lc.drawImage(h.qh[d],m,f,h.ic,h.jc,b,c,a.hd,a.jd));g&512&&(f=a.Cl,g=a.Jj,e?(a.Dd&&a.Dd!==h.jc&&(f=Math.floor(f*h.jc/a.Dd),g=Math.floor(g*h.jc/a.Dd)),
e.fillStyle=h.De[d],e.fillRect(b,c+f,h.ic,g)):(a.Dd&&a.Dd!==a.jd&&(f=Math.floor(f*a.jd/a.Dd),g=Math.floor(g*a.jd/a.Dd)),a.Lc.fillStyle=h.De[d],a.Lc.fillRect(b,c+f,a.hd,g)))}
function mb(a,b){if(a.na.Lb){var c=!1;a.Ga&&(a.Ga===a.oa?a.oa.pe&32&&(c=!0):a.Ga.tc&8&&(c=!0));if(c||b){if(b)Mj(a,!0);else if(void 0===a.ac)return;var d=!1;!(b||++a.Kl&15)&&0<=a.fe&&(a.fe++,d=!0);var e=0,f=a.gk,c=a.Ga.Ua,g=c+a.Ga.Hb,h=(a.Ga.hc[12]<<8)+a.Ga.hc[13];a.Nb&&(h<<=1);var c=c+h,m=a.Dh;c+m>g&&(m=g-c,0>m&&(m=0));g=c+m;if(h=!b){for(var h=a.qa,n=!0,q=c>>h.Ub;0<m&&q<h.Fa.length;)h.Fa[q].kb&&(h.Fa[q].kb=n=!1,h.Fa[q].Nj=!0),m-=h.wc,q++;h=n}if(h){if(!d)return;if(!a.ee){if(0>a.Bc)return;e=a.Bc;f=
e+1}}if(a.Nb){if(a.ud[a.Nb]){d=0;h=a.ee=0;m=1048575;a.Ga.tc&32&&(h=32768,m&=~h,a.fe&2||(m&=-65537));for(c+=e<<1;c<g&&e<f;)n=bb(a.qa,c),n|=65536,n&h&&(a.ee++,n&=m),e==a.Bc&&(n|=a.fe&1?131072:0),q=a.ac[e],q!=n&&(Kj(a,e%a.Cb,Math.floor(e/a.Cb),n,a.Ke),a.ac[e]=n,d++),c+=2,e++;d&&a.Ke&&a.Lc.drawImage(a.Je,0,0,a.rf,a.sf,a.pj,a.qj,a.Gh,a.Hh);Ij(a)}}else if(a.Hj){for(var f=g,s,t,e=c,g=a.ee=0,d=a.gi,h=16==d?65536:196608,m=16==d?1:2,n=Ej(a,m),y=q=0,H=a.Cb,S=0,N=a.lc,T=0;e<f;){s=bb(a.qa,e);t=a.ac[g];if(t===
s)q+=d;else{a.ac[g]=s;s=s>>8|(s&255)<<8;t=h;var wa=16;q<H&&(H=q);for(var Wa=0;Wa<d;Wa++){var Qb=(s&(t>>=m))>>(wa-=m);Hj(a.Lg,q++,y,n[Qb])}q>S&&(S=q);y<N&&(N=y);y>=T&&(T=y+1)}e+=2;g++;if(q>=a.Cb){q=0;y+=2;if(y>a.lc)break;y==a.lc&&(y=1,e=c+a.Hj)}}H<a.Cb&&(a.Ke.putImageData(a.Lg,0,0,H,N,S-H,T-N),a.Lc.drawImage(a.Je,0,0,a.Cb,a.lc,0,0,a.gd,a.Ed))}else{f=g;e=a.ee=0;g=Ej(a);d=a.Ga.Zd;m=h=0;n=a.Cb;q=0;y=a.lc;for(H=0;c<f;){S=c++-a.Ua;S=d[S];N=a.ac[e];if(N===S)h+=8;else{a.ac[e]=S;h<n&&(n=h);for(N=0;8>N;N++)T=
S&2155905152,0>T&&(T+=4294967296),T=X[T]||0,Hj(a.Lg,h++,m,g[T]),S<<=1;h>q&&(q=h);m<y&&(y=m);m>=H&&(H=m+1)}e++;if(h>=a.Cb&&(h=0,++m>a.lc))break}n<a.Cb&&(a.Ke.putImageData(a.Lg,0,0,n,y,q-n,H-y),a.Lc.drawImage(a.Je,0,0,a.Cb,a.lc,0,0,a.gd,a.Ed))}}}}k.Jm=function(){return this.Jc.Ac};k.Un=function(a,b){var c=this.Jc;c.Jg=c.Ac;c.Ac=b&31};k.Im=function(){return Nj(this.Jc)};k.Tn=function(a,b){Oj(this,this.Jc,b)};k.Km=function(){return this.Jc.tc};k.Vn=function(a,b){this.Jc.tc=b;Cj(this,!1)};
k.Lm=function(){return Pj(this,this.Jc)};k.ml=function(a,b){this.oa.Wh=this.oa.Wh&-4|b&3};k.ck=function(){var a=this.oa.Fd?this.oa.Vd[this.oa.pe&31]:this.oa.pe;this.oa.Fd=!this.oa.Fd;return a};k.ll=function(a,b){var c=this.oa.pe&32;if(this.oa.Fd){var d=this.oa.pe&31;if(16<=d||!c)this.oa.Vd[d]=b;this.oa.Fd=!1}else this.oa.pe=b,this.oa.Fd=!0,b&32&&!c&&Aj(this)&&mb(this,!0)};k.Vm=function(){var a=3-((this.oa.Ng&12)>>2),a=this.oa.mj&-17|(this.mg&1<<a)<<4-a;return this.oa.mj=a};
k.Xn=function(a,b){this.oa.Ng=b;zj(this)};k.Um=function(){return this.oa.Te};k.eo=function(a,b){this.oa.Te=b};k.Tm=function(){return this.oa.hg[this.oa.Te]};k.co=function(a,b){this.oa.hg[this.oa.Te]=b;2==this.oa.Te&&(this.oa.hb=lj[b&15])};k.Bm=function(){return this.oa.Zh};k.On=function(a,b){this.oa.Zh=b};k.Cm=function(){return this.oa.$h};k.Pn=function(a,b){this.oa.$h=b};k.Am=function(){return this.oa.Se};k.Nn=function(a,b){this.oa.Se=b};k.zm=function(){return this.oa.Ee[this.oa.Se]};
k.Mn=function(a,b){this.oa.Ee[this.oa.Se]=b;switch(this.oa.Se){case 0:this.oa.Xg=lj[b&15];this.oa.se=this.oa.Xg&~this.oa.Pd;break;case 1:this.oa.Pd=~lj[b&15];this.oa.se=this.oa.Xg&~this.oa.Pd;break;case 2:this.oa.hi=lj[b&15]&2155905152;break;case 3:case 5:this.xe(Lj(this));break;case 4:this.oa.$i=(b&3)<<3;break;case 6:Cj(this,!1);break;case 7:this.oa.ii=lj[b&15^15]&2155905152;break;case 8:this.oa.mb=b|b<<8|b<<16|b<<24}};k.rm=function(){return this.bc.Ac};
k.Fn=function(a,b){var c=this.bc;c.Jg=c.Ac;c.Ac=b&31};k.qm=function(){return Nj(this.bc)};k.En=function(a,b){Oj(this,this.bc,b)};k.sm=function(){return this.bc.tc};k.Gn=function(a,b){this.bc.tc=b;Cj(this,!1)};k.pm=function(){return this.bc.pf};k.Dn=function(a,b){this.bc.pf!==b&&(this.bc.pf=b,Mj(this,!1))};k.tm=function(){return Pj(this,this.bc)};function Nj(a){var b;a.Ac<a.fi&&(b=a.hc[a.Ac]);return b}function Oj(a,b,c){b.Ac<b.fi&&(b.hc[b.Ac]=c,9==b.Ac&&8!=b.Jg&&Cj(a,!0),Dj(a))}
function Pj(a,b){var c=0,d=B(a.la),e=d-b.qi;0>e&&(e=0);e%b.ji>b.hn&&(c|=1);e%=b.jk;e>b.kn&&(c|=8);b.qi=d-e;b===a.oa?(c|=b.Zf&48^48,b.Fd=!1):c=(b.Zf^=9)|240;return b.Zf=c}
var tj={948:U.prototype.Jm,949:U.prototype.Im,952:U.prototype.Km,954:U.prototype.Lm,980:U.prototype.rm,981:U.prototype.qm,984:U.prototype.sm,985:U.prototype.pm,986:U.prototype.tm},uj={948:U.prototype.Un,949:U.prototype.Tn,952:U.prototype.Vn,980:U.prototype.Fn,981:U.prototype.En,984:U.prototype.Gn,985:U.prototype.Dn},vj={960:U.prototype.ck,961:U.prototype.ck,962:U.prototype.Vm,964:U.prototype.Um,965:U.prototype.Tm,970:U.prototype.Cm,972:U.prototype.Bm,974:U.prototype.Am,975:U.prototype.zm},wj={954:U.prototype.ml,
960:U.prototype.ll,961:U.prototype.ll,962:U.prototype.Xn,964:U.prototype.eo,965:U.prototype.co,970:U.prototype.Pn,972:U.prototype.On,974:U.prototype.Nn,975:U.prototype.Mn,986:U.prototype.ml};
za(function(){for(var a=x(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=w(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;
"num-down":80,"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},T={1027:1};T[Q["1"]]=2;T[Q["!"]]=10754;T[Q["2"]]=3;T[Q["@"]]=10755;T[Q["3"]]=4;T[Q["#"]]=10756;T[Q["4"]]=5;T[Q.$]=10757;T[Q["5"]]=6;T[Q["%"]]=10758;T[Q["6"]]=7;T[Q["^"]]=10759;
T[Q["7"]]=8;T[Q["&"]]=10760;T[Q["8"]]=9;T[Q["*"]]=10761;T[Q["9"]]=10;T[Q["("]]=10762;T[Q["0"]]=11;T[Q[")"]]=10763;T[Q["-"]]=12;T[Q._]=10764;T[Q["="]]=13;T[Q["+"]]=10765;T[1008]=14;T[1009]=15;T[113]=16;T[81]=10768;T[119]=17;T[87]=10769;T[101]=18;T[69]=10770;T[114]=19;T[82]=10771;T[116]=20;T[84]=10772;T[121]=21;T[89]=10773;T[117]=22;T[85]=10774;T[105]=23;T[73]=10775;T[111]=24;T[79]=10776;T[112]=25;T[80]=10777;T[Q["["]]=26;T[Q["{"]]=10778;T[Q["]"]]=27;T[Q["}"]]=10779;T[13]=28;T[1017]=29;T[97]=30;
T[65]=10782;T[115]=31;T[83]=10783;T[100]=32;T[68]=10784;T[102]=33;T[70]=10785;T[103]=34;T[71]=10786;T[104]=35;T[72]=10787;T[106]=36;T[74]=10788;T[107]=37;T[75]=10789;T[108]=38;T[76]=10790;T[Q[";"]]=39;T[Q[":"]]=10791;T[Q["'"]]=40;T[Q['"']]=10792;T[Q["`"]]=41;T[Q["~"]]=10793;T[1016]=42;T[Q["\\"]]=43;T[Q["|"]]=10795;T[122]=44;T[90]=10796;T[120]=45;T[88]=10797;T[99]=46;T[67]=10798;T[118]=47;T[86]=10799;T[98]=48;T[66]=10800;T[110]=49;T[78]=10801;T[109]=50;T[77]=10802;T[Q[","]]=51;T[Q["<"]]=10803;
T[Q["."]]=52;T[Q[">"]]=10804;T[Q["/"]]=53;T[Q["?"]]=10805;T[3016]=54;T[1018]=56;T[Q[" "]]=57;T[1020]=58;T[1112]=59;T[1113]=60;T[1114]=61;T[1115]=62;T[1116]=63;T[1117]=64;T[1118]=65;T[1119]=66;T[1120]=67;T[1121]=68;T[1144]=69;T[1145]=70;T[1036]=71;T[1038]=72;T[1033]=73;T[1037]=75;T[1039]=77;T[1035]=79;T[1040]=80;T[1034]=81;T[1045]=82;T[1046]=83;T[1122]=87;T[1123]=88;T[4003]=7470;T[4063]=7494;T[4081]=3677523;k=Ri.prototype;
k.Fb=function(a,b,c){var d=this,e=a+"-"+b;if(void 0===this.ra[e])switch(b){case "kbd":return this.ra[e]=c,c.onkeydown=function(a){return Wi(d,a,!0)},c.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:d.Ua&64?d.Ua&=-65:d.Ua&40?b=!1:(d.Mj&&a==Q["`"]&&(a=27),b=!Xi(d,a));return b},c.onkeyup=function(a){return Wi(d,a,!1)},!0;case "caps-lock":return this.ra[e]=c,c.onclick=function(){d.la&&d.la.pd();Xi(d,1020,!0)},!0;case "num-lock":return this.ra[e]=c,c.onclick=function(){d.la&&
d.la.pd();Xi(d,1144,!0)},!0;case "scroll-lock":return this.ra[e]=c,c.onclick=function(){d.la&&d.la.pd();Xi(d,1145,!0)},!0;default:if(void 0!==Ui[b]&&"button"==a)return this.ra[e]=c,c.onclick=function(a,b,c){return function(){a.la&&a.la.pd();Yi(a,c);return!Xi(a,c)}}(this,b,Ui[b]),!0;if(void 0!==Vi[b])return this.ra[e]=c,a=function(a,b,c){return function(){Zi(a,c)}}(this,b,Vi[b]),b=function(a,b,c){return function(){Zi(a,c)}}(this,b,Vi[b]|128),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):
(c.onmousedown=a,c.onmouseup=c.onmouseout=b),!0}return!1};k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;this.ka=z(a,"ChipSet")};k.Qa=function(){sa("iOS");this.Pj=sa("Mobi");this.cc("mobile keyboard support: "+(this.Pj?"true":"false"));return u.prototype.Qa.call(this)};function Ii(a){a.cc("keyboard reset",$i|aj);a.oc=[170];a.ka&&Ki(a.ka)}function Ei(a,b,c){var d=!1;a.Oh!==c&&(a.Oh=a.Sh=c);a.Cg!==b&&(a.Cg=b)&&!a.Sh&&Ji(a);a.Cg&&a.Sh&&(Ii(a),a.Sh=!1,d=!0);return d}
function Ci(a,b){var c=0;a.oc.length&&(c=a.oc[0],b&&Ji(a));return c}function Ji(a,b){0<a.oc.length&&(b?a.oc=[]:(a.oc.shift(),0<a.oc.length&&a.ka&&Ki(a.ka)))}k.Xb=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.Hd();this.Ua=0;this.oc=[];if(this.bd)for(var a in this.bd)ca(a)||this.bd[a]&&clearTimeout(this.bd[a]);this.bd=[];this.kl=this.se=0};
k.save=function(){var a=new I(this);a.set(0,this.jj());return a.data()};k.restore=function(a){return this.Hd(a[0])};k.Hd=function(a){var b=0;void 0===a&&(a=[]);this.Oh=a[b++];this.Cg=a[b];return!0};k.jj=function(){var a=0,b=[];b[a++]=this.Oh;b[a]=this.Cg;return b};
function Zi(a,b){var c=b&127,d=c==b;if(a.oc)if(20>a.oc.length){if(!(!d&&!a.sh[c]||d&&a.sh[c])){a.sh[c]=d;a.oc.push(b);1==a.oc.length&&a.ka&&Ki(a.ka);for(var e in Vi)if(Vi[e]==c){(c=a.ra["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.oc.length&&a.oc.push(255),a.cc("scan code buffer overflow")}function bj(a,b){var c=b?a.cn:a.bn;a.la&&a.la.ba.Vc&&(c/=a.la.ba.Vc);return c}
function cj(a,b){!a.se||void 0!==b&&b==a.se||(clearTimeout(a.bd[a.se]),dj(a,a.se,!1))}function ej(a,b){var c,d;for(d in Ti){var e="led-"+d,f=Ti[d];b&&b!=f||!(c=a.ra[e])||(c.style.backgroundColor=a.Ua&f?"#00ff00":"#000000")}}function Yi(a,b){var c;if(T[b]){var d=Math.floor(b/1E3)&2,e=Si[Math.floor(b%1E3)]||0;e&&(d&&(e>>=1),e&1792&&(c=!(a.Ua&e)),a.Ua&=~e,c&&(a.Ua|=e),ej(a,e))}}
function Wi(a,b,c){var d,e=!c,f=b.keyCode,g=f;c&&(a.kl=f);if(T[f+1E3]){var g=g+1E3,h=Si[f]||0;if(h)2==b.location&&(h>>=1,g+=2E3),a.Ua&=~h,c&&(a.Ua|=h),ej(a,h),20==f||144==f||145==f?d=Xi(a,g):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.Ua&40)&&(g=4063),d=c?!Xi(a,g):!1}else 91==f?(a.Ua&=-65,c&&(a.Ua|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(g+=32):d=!0;e&&(a.Ua&=-65,a.Pj||f!=a.kl||cj(a));void 0===d&&(d=!dj(a,g,c));return d}
function Xi(a,b,c){var d=!1;cj(a,b);c&&Yi(a,b);dj(a,b,!0)&&(c=!1,a.bd[b]&&(clearTimeout(a.bd[b]),c=!0),c=bj(a,c),a.bd[a.se=b]=setTimeout(function(a){return function(){dj(a,b,!1)}}(a),c),d=!0);return d}
function dj(a,b,c){var d=!1;c||(a.bd[b]=null,a.se==b&&(a.se=0));var e=T[b]||T[b+1E3];if(void 0!==e){14==e&&40==(a.Ua&40)&&(e=83);var d=[],f=e&255;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.Ua&3||a.Ua&256&&b||(g=h):29==h?a.Ua&12||(g=h):56==h?a.Ua&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)Zi(a,d[c]);d=!0}return d}
za(function(){for(var a=y(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Ri(d);Na(d,c)}});
function U(a,b,c,d){u.call(this,"Video",a,U);this.Fa=a.model;this.Kc=0;"ega"==this.Fa&&(this.rl=a.switches,this.Kc=a.memory||0);this.Zc=a.mode;if(void 0===this.Zc||void 0===V[this.Zc])this.Zc=fj;this.Rg=a.charCols;this.ki=a.charRows;if(void 0===this.Rg||void 0===this.ki)this.Rg=V[this.Zc][0],this.ki=V[this.Zc][1];this.gd=a.screenWidth;this.Dd=a.screenHeight;this.Ul=a.scale;this.Sl=12<=Math.round(this.gd/this.Rg);this.Wl=a.touchScreen;this.Xa=b;this.Lc=c;this.wl=d;this.Id=null;this.Ql=a.autoLock;this.Va=
this.Hb=0;this.td=[];this.cd=Array(16);this.Ph=!1;var e=this;b&&(b.onfocus=function(){e.Ph=!0},b.onblur=function(){e.Ph=!1},b.Ue=b.requestPointerLock||b.mozRequestPointerLock||b.webkitRequestPointerLock,b.xl=b.exitPointerLock||b.mozExitPointerLock||b.webkitExitPointerLock,b=function(){e.Of(document.pointerLockElement===e.Xa||document.mozPointerLockElement===e.Xa||document.webkitPointerLockElement===e.Xa)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",b,!1):"onmozpointerlockchange"in
document?document.addEventListener("mozpointerlockchange",b,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",b,!1));if(a=a.fontROM)"json"!=fa(a)&&(a=ma()+"/api/v1/dump?file="+a+"&format=bytes"),la(a,!0,null,this,this.kn)}v(u,U);
var gj={2:{ni:15700,mi:208,aj:85,bj:96},3:{ni:18432,mi:364,aj:85,bj:96},4:{ni:21850,mi:364,aj:85,bj: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,V=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];V[fj]=[80,25,1,0,1];V[13]=[320,200,16];V[14]=[640,200,16];V[15]=[640,350,16];V[16]=[640,350,16];V[0]=V[1];V[2]=V[3];V[5]=V[4];var 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],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 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],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 oj(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=pj[b],f=a.Ld||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(qj)];this.Jg=b;this.Va=e[2];this.Hb=e[3];this.Kc=d||e[4];65536<=this.Kc&&720896<=this.Va&&(this.Hb=Math.min(this.Kc>>2,32768));this.Mc=c[0];this.tc=c[1];this.of=c[2];this.Xf=c[3];this.Ac=c[4]&255;this.Ig=c[4]>>8&255;this.hc=c[5];this.di=qj;if(5==b){this.di=rj;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.Va,this.Hb,this.Kc],Array(this.Kc>>
2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.Ed=b[0];this.ne=b[1];this.Vd=b[2];this.kj=b[3];this.Mg=b[4];this.Uh=b[5];this.Te=b[6];this.fg=b[7];this.Xh=b[8];this.Yh=b[9];this.Se=b[10];this.Ce=b[11];this.Bb=b[12];d=b[13];"number"==typeof d&&(d=[this.Va,this.Hb,d]);this.Va=d[0];this.Hb=d[1];d=this.Kc>>2;if((this.Yd=b[14])&&this.Yd.length<d){for(var e=this.Yd,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.Yd=h}this.ih(b[15]);this.Yi=b[16];
this.gb=b[17];this.Yc=b[18];this.mb=b[19];this.Wg=b[20];this.Od=b[21];this.qe=b[22];this.fi=b[23];this.gi=b[24]}f=gj[f]||gj[3];this.hi=a.la.ba.Xc/f.ni|0;this.en=this.hi*f.aj/100|0;this.gk=this.hi*f.mi;this.gn=this.gk*f.bj/100|0;this.oi=null==c[7]?0:c[7]}}var qj=18,rj=25;function sj(a){return this.Cc(a)|this.Cc(a+1)<<8}function tj(a,b){this.Fc(a,b&255);this.Fc(a+1,b>>8&255)}
var Y=[,,function(a){a+=this.offset;return(this.ea.Bb=this.pa[a])>>this.ea.Yi&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.pa[b]>>8:this.pa[b])&255}];Y[16]=function(a){a+=this.offset;a=this.pa[a];for(var b=this.ea.fi&this.ea.gi,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.pa[c]&~this.ea.gb|(b|b<<8|b<<16|b<<24)&this.ea.gb;d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Yc|b<<8-this.ea.Yc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Od|this.ea.qe;d=d&this.ea.gb|this.pa[c]&~this.ea.gb;d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Yc|b<<8-this.ea.Yc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Od|this.ea.qe;d&=this.ea.Bb;d=d&this.ea.gb|this.pa[c]&~this.ea.gb;d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Yc|b<<8-this.ea.Yc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Od|this.ea.qe;d|=this.ea.Bb;d=d&this.ea.gb|this.pa[c]&~this.ea.gb;d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Yc|b<<8-this.ea.Yc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Od|this.ea.qe;d^=this.ea.Bb;d=d&this.ea.gb|this.pa[c]&~this.ea.gb;d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.gb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.pa[d]&~c;c=c&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[d]!=c&&(this.pa[d]=c,this.kb=!0)};
Y[4096]=function(a){a+=this.offset;var b=this.pa[a]&~this.ea.gb|this.ea.Bb&this.ea.gb;this.pa[a]!=b&&(this.pa[a]=b,this.kb=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d&this.ea.gb|this.pa[c]&~this.ea.gb,d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d&this.ea.Bb,d=d&this.ea.gb|this.pa[c]&~this.ea.gb,d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
Y[40960]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d|this.ea.Bb,d=d&this.ea.gb|this.pa[c]&~this.ea.gb,d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=nj[b&15],d=d^this.ea.Bb,d=d&this.ea.gb|this.pa[c]&~this.ea.gb,d=d&this.ea.mb|this.ea.Bb&~this.ea.mb;this.pa[c]!=d&&(this.pa[c]=d,this.kb=!0)};
function uj(a){var b=[];if(void 0!==a.Jg){b[0]=a.Mc;b[1]=a.tc;b[2]=a.of;b[3]=a.Xf;b[4]=a.Ac|a.Ig<<8;b[5]=a.hc;if(5==a.Jg){var c=[];c[0]=a.Ed;c[1]=a.ne;c[2]=a.Vd;c[3]=a.kj;c[4]=a.Mg;c[5]=a.Uh;c[6]=a.Te;c[7]=a.fg;c[8]=a.Xh;c[9]=a.Yh;c[10]=a.Se;c[11]=a.Ce;c[12]=a.Bb;c[13]=[a.Va,a.Hb,a.Kc];var d;a:if(d=a.Yd){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.ci;c[16]=a.Yi;c[17]=a.gb;c[18]=a.Yc;c[19]=a.mb;c[20]=a.Wg;c[21]=a.Od;c[22]=a.qe;c[23]=a.fi;c[24]=a.gi;b[6]=c}b[7]=a.oi}return b}oj.prototype.ih=function(a){if(null!=a&&a!=this.ci){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.jf||(this.jf=[null,sj,null,tj]);this.jf[0]=c;this.jf[2]=d;this.ci=a}};var pj=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=U.prototype;
k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;fb(b,this,vj);hb(b,this,wj);"ega"==this.Fa&&(fb(b,this,xj),hb(b,this,yj));if((this.Ma=z(a,"Keyboard"))&&this.Xa){for(var e in this.ra)0<e.indexOf("lock")&&this.Ma.Fb("led",e,this.ra[e]);this.Ma.Fb(this.wl?"textarea":"canvas","kbd",this.wl||this.Xa)}this.kg=9;(this.ka=z(a,"ChipSet"))&&this.rl&&(this.kg=wh(this.rl,this.kg));this.Ma&&this.Wl&&zj(this)};
k.Fb=function(a,b,c){var d=this;if(!this.ra[b])switch(this.ra[b]=c,b){case "lockPointer":return this.so=c.textContent,this.Xa&&this.Xa.Ue?c.onclick=function(){d.Ue(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){mb(d,!0)},!0}return!1};k.pd=function(){this.Xa&&this.Xa.focus()};k.Ue=function(a){if(this.Xa)if(a){if(this.Xa.Ue)return this.Xa.Ue(),this.Id.Of(!0),!0}else if(this.Xa.xl)return this.Xa.xl(),this.Id.Of(!1),!0;return!1};
k.Of=function(a){this.Id&&(this.Id.Of(a),this.Ma&&(this.Ma.Mj=a));var b=this.ra.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.so)};function zj(a){var b=a.Xa;b&&!a.Nh&&(b.addEventListener("touchstart",function(b){Aj(a,b)},!1),b.addEventListener("touchmove",function(b){Aj(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.Nh=!0)}
function Aj(a,b){a.Ph&&b.preventDefault();var c=0,d=0,e=a.Xa;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.gd/a.Xa.offsetWidth*(b.targetTouches[0].pageX-c)/(a.gd/3)|0;d=a.Dd/a.Xa.offsetHeight*(b.targetTouches[0].pageY-d)/(a.Dd/3)|0;1!=d?d?Xi(a.Ma,40,!0):Xi(a.Ma,38,!0):1!=c&&(c?Xi(a.Ma,39,!0):Xi(a.Ma,37,!0))}k.Xb=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=Oh(this.ka));var c=!1;if(this.Fa)switch(this.Fa){case "ega":var c=!0,d=hj[this.kg];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.Ld!==b&&(this.Ld=b,a=!0);this.Ea=null;this.Jc=this.Ch=new oj(this,1);this.ac=this.vg=new oj(this,3);c?(this.oa=new oj(this,5,null,this.Kc),Bj(this)):this.oa=new oj;Cj(this);this.Kd=null;this.Zc=3==b?fj:3;this.ee=this.Bc=-1;this.de=0;Dj(this,this.Zc);if(this.Ea.Va&&a){a=this.Ea.Va+this.Dh;for(b=this.Ea.Va;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.Ld?(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),db(this.qa,b,c|d<<8);mb(this,!0)}};function Bj(a){a.oa.Mg&1?(a.Jc=a.Ch,a.ac=a.oa):(a.Jc=a.oa,a.ac=a.vg)}k.save=function(){var a=new I(this);a.set(0,uj(this.Ch));a.set(1,uj(this.vg));a.set(2,[this.Ld,this.Zc,this.Kd]);a.set(3,uj(this.oa));return a.data()};
k.restore=function(a){var b=a[2];this.Ld=b[0];this.Zc=b[1];this.Kd=b[2];this.Ea=null;this.Jc=this.Ch=new oj(this,1,a[0]);this.ac=this.vg=new oj(this,3,a[1]);this.oa=new oj(this,5,a[3],this.Kc);this.oa.Mc&&Bj(this);Cj(this);if(!Ej(this))return!1;Fj(this);return!0};
k.kn=function(a,b,c){if(c)this.Aa("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){r("Empty font ROM image: "+a);return}if(1==d.length){r(d[0]);return}if(8192==d.length)Pi(this,d,[0,6144]);else{this.Aa("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Aa("Font ROM data error: "+e.message);return}this.Qa()}};
function Gj(a,b){if(1==b)return a.cd[0]=W[0],a.cd[1]=W[7],a.cd;if(2==b){var c=a.Ea.of;if(a.Ea===a.oa){var d=a.oa.Vd[0],c=d&7;d&16&&(c|=8);18!=a.oa.Vd[1]&&(c|=32)}a.cd[0]=W[c&15];c=c&32?lj:kj;for(d=0;d<c.length;d++)a.cd[d+1]=W[c[d]];return a.cd}if(a.ac===a.vg)return W;c=null!=a.oa.Vd[15]?a.oa.Vd:mj;for(d=0;d<a.cd.length;d++){var e=c[d]||0;a.cd[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.cd}function Pi(a,b,c,d){a.gg=b;a.rh=c;a.ie=d}
function Cj(a){var b=!1;if(window&&a.gg){var c=a.ie?0:2048,d=a.ie?a.ie:9;Hj(a,1,a.rh[0],c,d,14,a.gg,ij,jj)&&(b=!0);c=Gj(a);d=a.ie?a.ie:8;Hj(a,3,a.rh[1],0,d,8,a.gg,c)&&(b=!0);a.ie&&Hj(a,5,a.rh[0],0,a.ie,14,a.gg,c)&&(b=!0)}return b}function Hj(a,b,c,d,e,f,g,h,m){var n=!1;Ij(a,b,c,d,e,f,g,h,m)&&(n=!0);a.Sl&&Ij(a,b<<1,c,d,e,f,g,h,m)&&(n=!0);return n}
function Ij(a,b,c,d,e,f,g,h,m){var n=!1,q=b&1?0:1,s=a.td[b];s||(s={ic:e<<q,jc:f<<q,Be:Array(h.length),vj:h.slice(),ff:m,ph:Array(h.length)});for(m=0;m<h.length;m++){var t=h[m],x=s.Be[m]?s.vj[m]:[];if(t[0]!==x[0]||t[1]!==x[1]||t[2]!==x[2]){var n=s,x=m,E=q,R=c,M=d,S=e,va=f,Va=g,Qb=[0,0,0,0],zc=window.document.createElement("canvas");zc.width=n.ic<<4;zc.height=n.jc<<4;for(var qi=zc.getContext("2d"),wa=void 0,zb=void 0,Wa=void 0,Ac=8>va||!M?va:8,xd=qi.createImageData(n.ic,n.jc),wa=0;256>wa;wa++){for(Wa=
0;Wa<va;Wa++)for(var Jk=n.ff&&x&1&&Wa>=va-2,Kk=Va[Wa<Ac?R+wa*Ac+Wa:M+wa*Ac+Wa-Ac],yd=0;yd<=E;yd++)for(zb=0;zb<S;zb++){var ri=zb<<E,si=(Wa<<E)+yd,ti=Jk||Kk&128>>(8<=zb&&176<=wa&&223>=wa?7:zb)?t:Qb;Jj(xd,ri,si,ti);E&&Jj(xd,ri+1,si,ti)}qi.putImageData(xd,(wa&15)*n.ic,(wa>>4)*n.jc)}n.Be[x]="#"+p(t[0],2)+p(t[1],2)+p(t[2],2);n.vj[x]=t;n.ph[x]=zc;n=!0}}a.td[b]=s;return n}function Kj(a){0<a.de||0<=a.Bc?0>a.ee&&(a.ee=0):a.ee=-1}
function Fj(a){if(a.Mb){for(var b=10;15>=b;b++)if(null==a.Ea.hc[b])return;var c=a.Ea.hc[10],b=c&31,d=a.Ea.hc[11]&31,e=a.Ea.hc[9]&31,f=!1;a.Ea===a.oa&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Lj(a);else{c=a.Ea.hc[15]+((a.Ea.hc[14]&63)<<8);a.Bc!=c&&(Lj(a),a.Bc=c);d=d-b+1;if(a.zl!=b||a.Hj!=d)a.zl=b,a.Hj=d;a.Cd=e+1;Kj(a)}}}
function Lj(a){if(0<=a.Bc){if(void 0!==a.$b){var b=a.$b[a.Bc];if(b&131072){var b=b&-131073,c=a.Bc%a.Cb,d=Math.floor(a.Bc/a.Cb);a.Mb&&a.td[a.Mb]&&(a.Ke&&Mj(a,c,d,b,a.Ke),Mj(a,c,d,b));a.$b[a.Bc]=b}}a.Bc=-1}}
function Nj(a){var b;a=a.Ea;var c=a.Ce[5];if(null!=c){b=2;var d=512,e=a.Ce[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.Yc=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.ve=function(a){var b=this.Ea;null!=a&&b&&a!=b.ci&&(b.ih(a),this.qa.ih(b.Va,b.Hb,b.jf))};
function Ej(a,b){var c,d=a.Kd,e=a.Ea;if(e)if(1==e.Jg)d=fj;else if(5==e.Jg){var d=null,f=e.Kc>>2,g=32768<f?32768:f,h=e.Ce[6];if(null!=h){switch(h&12){case 0:e.Va=655360;e.Hb=f;d=255;break;case 4:e.Va=655360;e.Hb=f;d=3==a.Ld?15:16;break;case 8:e.Va=720896;e.Hb=g;d=fj;break;case 12:e.Va=753664,e.Hb=g,d=3==a.Ld?2:3}c=e.fg[1]&8;f=e.hc[6]|(e.hc[7]&1)<<8;255!=d&&(h&1?753664==e.Va?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Nj(a)}}else e.tc&8&&(e.tc&2?(d=e.tc&16?6:5,e.tc&4||(d-=1)):(d=e.tc&1?3:1,e.tc&4&&(d-=
1)));else a.Kd=null,null==d&&(d=a.Zc);if(!Dj(a,d,b))return!1;a.ve(c);return!0}
function Dj(a,b,c){if(null!=b&&(b!=a.Kd||c)){a.Hl=0;a.Kd=b;b=a.Ea||(b==fj?a.Jc:a.ac);if(b!=a.Ea||b.Va!=a.Va||b.Hb!=a.Hb){Lj(a);if(a.Va){if(!$a(a.qa,a.Va,a.Hb))return!1;a.Ea&&(a.Ea.Mc=!1)}a.Ea=b;b.Mc=!0;a.Va=b.Va;a.Hb=b.Hb;if(!Ya(a.qa,b.Va,b.Hb,!1,b===a.oa?b:null))return!1}a.Mb=0;a.Cb=a.Rg;a.mc=a.ki;a.ei=V[fj][2];b=0;var d=V[a.Kd];d&&(a.Cb=d[0],a.mc=d[1],a.ei=d[2],b=d[3]||0,a.Mb=d[4],4==a.Ld&&a.Ea===a.oa&&3==a.Mb&&(7==a.oa.hc[9]?a.mc=43:a.Mb=5));a.dk=a.Cb*a.mc;a.Og=a.dk/a.ei;a.Dh=(a.Og<<1)+b;a.Fj=
b?a.Dh+b>>1:0;13<=a.Kd&&(a.Og<<=1);a.td.length&&(a.hd=Math.floor(a.gd/a.Cb),a.jd=Math.floor(a.Dd/a.mc),a.Mb?(b=a.td[a.Mb],d=a.td[a.Mb<<1],a.Ul&&80==a.Cb?d&&a.hd>=3*d.ic>>2&&(a.Mb<<=1,b=d):(d&&a.hd>=d.ic&&(a.Mb<<=1,b=d),b&&(a.hd=b.ic,a.jd=b.jc)),a.qf=a.rf=0,b&&(a.qf=a.Cb*b.ic,a.rf=a.mc*b.jc)):(a.hd=a.jd=1,a.qf=a.Cb,a.rf=a.mc),a.Kg=a.Lc.createImageData(a.qf,a.rf),a.Ie=window.document.createElement("canvas"),a.Ie.width=a.qf,a.Ie.height=a.rf,a.Ke=a.Ie.getContext("2d"),a.nj=a.oj=0,a.Gh=a.gd,a.Hh=a.Dd,
b=a.gd-a.Cb*a.hd,d=a.Dd-a.mc*a.jd,0<b&&(a.nj=b>>1,a.Gh-=b),0<d&&(a.oj=d>>1,a.Hh-=d),b||d)&&(a.Lc.fillStyle=a.Xa.style.backgroundColor,a.Lc.fillRect(0,0,a.gd,a.Dd));!1!==c?mb(a,!0):Oj(a,!0)}return!0}function Jj(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 Oj(a,b){var c;if(b){if(c=a.Og,void 0===a.$b||a.$b.length!=c)a.$b=Array(c)}else{if(void 0===a.$b)return;c=a.$b.length}for(var d=0;d<c;d++)a.$b[d]=-1;a.de=-1}
function Mj(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.td[a.Mb];h.ff&&(d=h.ff[d]);var m=g>>4&15;h.ff&&(m=h.ff[m]);e?(b*=h.ic,c*=h.jc,e.fillStyle=h.Be[m],e.fillRect(b,c,h.ic,h.jc)):(b=b*a.hd+a.nj,c=c*a.jd+a.oj,a.Lc.fillStyle=h.Be[m],a.Lc.fillRect(b,c,a.hd,a.jd));g&256&&(m=(f&15)*h.ic,f=(f>>4)*h.jc,e?e.drawImage(h.ph[d],m,f,h.ic,h.jc,b,c,h.ic,h.jc):a.Lc.drawImage(h.ph[d],m,f,h.ic,h.jc,b,c,a.hd,a.jd));g&512&&(f=a.zl,g=a.Hj,e?(a.Cd&&a.Cd!==h.jc&&(f=Math.floor(f*h.jc/a.Cd),g=Math.floor(g*h.jc/a.Cd)),
e.fillStyle=h.Be[d],e.fillRect(b,c+f,h.ic,g)):(a.Cd&&a.Cd!==a.jd&&(f=Math.floor(f*a.jd/a.Cd),g=Math.floor(g*a.jd/a.Cd)),a.Lc.fillStyle=h.Be[d],a.Lc.fillRect(b,c+f,a.hd,g)))}
function mb(a,b){if(a.na.Lb){var c=!1;a.Ea&&(a.Ea===a.oa?a.oa.ne&32&&(c=!0):a.Ea.tc&8&&(c=!0));if(c||b){if(b)Oj(a,!0);else if(void 0===a.$b)return;var d=!1;!(b||++a.Hl&15)&&0<=a.ee&&(a.ee++,d=!0);var e=0,f=a.dk,c=a.Ea.Va,g=c+a.Ea.Hb,h=(a.Ea.hc[12]<<8)+a.Ea.hc[13];a.Mb&&(h<<=1);var c=c+h,m=a.Dh;c+m>g&&(m=g-c,0>m&&(m=0));g=c+m;if(h=!b){for(var h=a.qa,n=!0,q=c>>h.Tb;0<m&&q<h.Da.length;)h.Da[q].kb&&(h.Da[q].kb=n=!1,h.Da[q].Kj=!0),m-=h.xc,q++;h=n}if(h){if(!d)return;if(!a.de){if(0>a.Bc)return;e=a.Bc;f=
e+1}}if(a.Mb){if(a.td[a.Mb]){d=0;h=a.de=0;m=1048575;a.Ea.tc&32&&(h=32768,m&=~h,a.ee&2||(m&=-65537));for(c+=e<<1;c<g&&e<f;)n=bb(a.qa,c),n|=65536,n&h&&(a.de++,n&=m),e==a.Bc&&(n|=a.ee&1?131072:0),q=a.$b[e],q!=n&&(Mj(a,e%a.Cb,Math.floor(e/a.Cb),n,a.Ke),a.$b[e]=n,d++),c+=2,e++;d&&a.Ke&&a.Lc.drawImage(a.Ie,0,0,a.qf,a.rf,a.nj,a.oj,a.Gh,a.Hh);Kj(a)}}else if(a.Fj){for(var f=g,s,t,e=c,g=a.de=0,d=a.ei,h=16==d?65536:196608,m=16==d?1:2,n=Gj(a,m),x=q=0,E=a.Cb,R=0,M=a.mc,S=0;e<f;){s=bb(a.qa,e);t=a.$b[g];if(t===
s)q+=d;else{a.$b[g]=s;s=s>>8|(s&255)<<8;t=h;var va=16;q<E&&(E=q);for(var Va=0;Va<d;Va++){var Qb=(s&(t>>=m))>>(va-=m);Jj(a.Kg,q++,x,n[Qb])}q>R&&(R=q);x<M&&(M=x);x>=S&&(S=x+1)}e+=2;g++;if(q>=a.Cb){q=0;x+=2;if(x>a.mc)break;x==a.mc&&(x=1,e=c+a.Fj)}}E<a.Cb&&(a.Ke.putImageData(a.Kg,0,0,E,M,R-E,S-M),a.Lc.drawImage(a.Ie,0,0,a.Cb,a.mc,0,0,a.gd,a.Dd))}else{f=g;e=a.de=0;g=Gj(a);d=a.Ea.Yd;m=h=0;n=a.Cb;q=0;x=a.mc;for(E=0;c<f;){R=c++-a.Va;R=d[R];M=a.$b[e];if(M===R)h+=8;else{a.$b[e]=R;h<n&&(n=h);for(M=0;8>M;M++)S=
R&2155905152,0>S&&(S+=4294967296),S=X[S]||0,Jj(a.Kg,h++,m,g[S]),R<<=1;h>q&&(q=h);m<x&&(x=m);m>=E&&(E=m+1)}e++;if(h>=a.Cb&&(h=0,++m>a.mc))break}n<a.Cb&&(a.Ke.putImageData(a.Kg,0,0,n,x,q-n,E-x),a.Lc.drawImage(a.Ie,0,0,a.Cb,a.mc,0,0,a.gd,a.Dd))}}}}k.Gm=function(){return this.Jc.Ac};k.Tn=function(a,b){var c=this.Jc;c.Ig=c.Ac;c.Ac=b&31};k.Fm=function(){return Pj(this.Jc)};k.Sn=function(a,b){Qj(this,this.Jc,b)};k.Hm=function(){return this.Jc.tc};k.Un=function(a,b){this.Jc.tc=b;Ej(this,!1)};
k.Im=function(){return Rj(this,this.Jc)};k.jl=function(a,b){this.oa.Uh=this.oa.Uh&-4|b&3};k.$j=function(){var a=this.oa.Ed?this.oa.Vd[this.oa.ne&31]:this.oa.ne;this.oa.Ed=!this.oa.Ed;return a};k.il=function(a,b){var c=this.oa.ne&32;if(this.oa.Ed){var d=this.oa.ne&31;if(16<=d||!c)this.oa.Vd[d]=b;this.oa.Ed=!1}else this.oa.ne=b,this.oa.Ed=!0,b&32&&!c&&Cj(this)&&mb(this,!0)};k.Sm=function(){var a=3-((this.oa.Mg&12)>>2),a=this.oa.kj&-17|(this.kg&1<<a)<<4-a;return this.oa.kj=a};
k.Wn=function(a,b){this.oa.Mg=b;Bj(this)};k.Rm=function(){return this.oa.Te};k.co=function(a,b){this.oa.Te=b};k.Qm=function(){return this.oa.fg[this.oa.Te]};k.bo=function(a,b){this.oa.fg[this.oa.Te]=b;2==this.oa.Te&&(this.oa.gb=nj[b&15])};k.ym=function(){return this.oa.Xh};k.Nn=function(a,b){this.oa.Xh=b};k.zm=function(){return this.oa.Yh};k.On=function(a,b){this.oa.Yh=b};k.xm=function(){return this.oa.Se};k.Mn=function(a,b){this.oa.Se=b};k.wm=function(){return this.oa.Ce[this.oa.Se]};
k.Ln=function(a,b){this.oa.Ce[this.oa.Se]=b;switch(this.oa.Se){case 0:this.oa.Wg=nj[b&15];this.oa.qe=this.oa.Wg&~this.oa.Od;break;case 1:this.oa.Od=~nj[b&15];this.oa.qe=this.oa.Wg&~this.oa.Od;break;case 2:this.oa.fi=nj[b&15]&2155905152;break;case 3:case 5:this.ve(Nj(this));break;case 4:this.oa.Yi=(b&3)<<3;break;case 6:Ej(this,!1);break;case 7:this.oa.gi=nj[b&15^15]&2155905152;break;case 8:this.oa.mb=b|b<<8|b<<16|b<<24}};k.om=function(){return this.ac.Ac};
k.Cn=function(a,b){var c=this.ac;c.Ig=c.Ac;c.Ac=b&31};k.nm=function(){return Pj(this.ac)};k.Bn=function(a,b){Qj(this,this.ac,b)};k.pm=function(){return this.ac.tc};k.Dn=function(a,b){this.ac.tc=b;Ej(this,!1)};k.mm=function(){return this.ac.of};k.An=function(a,b){this.ac.of!==b&&(this.ac.of=b,Oj(this,!1))};k.qm=function(){return Rj(this,this.ac)};function Pj(a){var b;a.Ac<a.di&&(b=a.hc[a.Ac]);return b}function Qj(a,b,c){b.Ac<b.di&&(b.hc[b.Ac]=c,9==b.Ac&&8!=b.Ig&&Ej(a,!0),Fj(a))}
function Rj(a,b){var c=0,d=B(a.la),e=d-b.oi;0>e&&(e=0);e%b.hi>b.en&&(c|=1);e%=b.gk;e>b.gn&&(c|=8);b.oi=d-e;b===a.oa?(c|=b.Xf&48^48,b.Ed=!1):c=(b.Xf^=9)|240;return b.Xf=c}
var vj={948:U.prototype.Gm,949:U.prototype.Fm,952:U.prototype.Hm,954:U.prototype.Im,980:U.prototype.om,981:U.prototype.nm,984:U.prototype.pm,985:U.prototype.mm,986:U.prototype.qm},wj={948:U.prototype.Tn,949:U.prototype.Sn,952:U.prototype.Un,980:U.prototype.Cn,981:U.prototype.Bn,984:U.prototype.Dn,985:U.prototype.An},xj={960:U.prototype.$j,961:U.prototype.$j,962:U.prototype.Sm,964:U.prototype.Rm,965:U.prototype.Qm,970:U.prototype.zm,972:U.prototype.ym,974:U.prototype.xm,975:U.prototype.wm},yj={954:U.prototype.jl,
960:U.prototype.il,961:U.prototype.il,962:U.prototype.Wn,964:U.prototype.co,965:U.prototype.bo,970:U.prototype.On,972:U.prototype.Nn,974:U.prototype.Mn,975:U.prototype.Ln,986:U.prototype.jl};
za(function(){for(var a=y(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=w(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing &lt;canvas&gt; support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor;
e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new U(d,e,f);Na(d,c)}});
function Z(a){this.Zj=a.adapter;switch(this.Zj){case 1:this.ej=1016;this.If=4;break;case 2:this.ej=760;this.If=3;break;default:r("Unrecognized serial adapter #"+this.Zj);return}this.Bd=null;u.call(this,"SerialPort",a,Z);var b=a.binding,c;a=Qj;b&&(void 0===c&&(c="Panel"),(c=Ma(c,this.id))&&(b=c.ra[b])&&this.Fb(null,a,b))}v(u,Z);var Qj="buffer";k=Z.prototype;k.zj=function(a,b){return a==this.bi?(this.Jd=b,this):null};
k.Fb=function(a,b,c){var d=this;switch(b){case Qj:return this.ra[b]=this.Bd=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Rj(d,[b]))},c.onkeypress=function(a){a=a||window.event;Rj(d,[a.which||a.keyCode])},!0}return!1};k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Ra=d;this.ka=z(a,"ChipSet");fb(b,this,Sj,this.ej);hb(b,this,Tj,this.ej);this.Pa()};
k.Yb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Xb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Id()};k.save=function(){var a=new I(this),b=0,c=[];c[b++]=this.zh;c[b++]=this.Ej;c[b++]=this.Ae;c[b++]=this.ng;c[b++]=this.xd;c[b++]=this.be;c[b++]=this.Rc;c[b++]=this.vc;c[b++]=this.Cj;c[b]=this.gf;a.set(0,c);return a.data()};k.restore=function(a){return this.Id(a[0])};
k.Id=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.zh=a[b++];this.Ej=a[b++];this.Ae=a[b++];this.ng=a[b++];this.xd=a[b++];this.be=a[b++];this.Rc=a[b++];this.vc=a[b++];this.Cj=a[b++];this.gf=a[b];return!0};function Rj(a,b){a.gf=a.gf.concat(b);Uj(a)}function Uj(a){0<a.gf.length&&!(a.vc&1)&&(a.zh=a.gf.shift(),a.vc|=1);var b=-1;a.vc&1&&a.ng&1&&(b=4);0<=b?(a.xd&=-8,a.xd|=b,a.ka&&a.If&&ui(a.ka,a.If)):(a.xd|=1,a.ka&&a.If&&vi(a.ka,a.If))}
k.Sm=function(){var a=this.be&128?this.Ae&255:this.zh;this.vc&=-2;Uj(this);return a};k.Dm=function(){return this.be&128?this.Ae>>8:this.ng};k.Em=function(){return this.xd};k.Fm=function(){return this.be};k.Hm=function(){return this.Rc};k.Gm=function(){return this.vc};k.Nm=function(){return this.Cj};
k.fo=function(a,b){if(this.be&128)this.Ae=this.Ae&-256|b;else{this.Ej=b;this.vc&=-97;var c;this.Bd?(13!=b&&(8==b?this.Bd.value=this.Bd.value.slice(0,-1):(this.Bd.value+=String.fromCharCode(b),this.Bd.scrollTop=this.Bd.scrollHeight)),c=!0):c=!1;c&&(this.vc|=96)}};k.Qn=function(a,b){this.be&128?this.Ae=this.Ae&255|b<<8:this.ng=b};k.Rn=function(a,b){this.be=b};
k.Sn=function(a,b){var c=this.Rc;this.Rc=b;if(this.Jd&&(c^b)&3){var c=this.Jd,d=this.Rc,e=3==(d&3);if(e){if(!c.Mc){var f=!1;c.Rc&2||(c.reset(),c.Mb("serial mouse reset"),f=!0);c.Rc&1||(c.Mb("serial mouse ID requested"),f=!0);f&&(Rj(c.qf,[77,77]),c.Mb("serial mouse ID sent"));Vj(c,c.Wa);c.setActive(e)}}else c.Mc&&(c.Mb("serial mouse inactive"),Wj(c.Wa),c.setActive(e));c.Rc=d}};
var Sj={0:Z.prototype.Sm,1:Z.prototype.Dm,2:Z.prototype.Em,3:Z.prototype.Fm,4:Z.prototype.Hm,5:Z.prototype.Gm,6:Z.prototype.Nm},Tj={0:Z.prototype.fo,1:Z.prototype.Qn,3:Z.prototype.Rn,4:Z.prototype.Sn};za(function(){for(var a=x(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Z(d);Na(d,c)}});function Xj(a){u.call(this,"Mouse",a,Xj);if(this.ai=a.serial)this.hj="SerialPort";this.setActive(!1);this.Fg=!1;this.Pa()}v(u,Xj);k=Xj.prototype;
k.sc=function(a,b,c,d){this.Na=a;this.qa=b;this.la=c;this.Ra=d;this.mh=z(this.Na,"Video")};k.setActive=function(a){this.Mc=a};k.Yb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.hj&&!this.qf){for(var c=null;(c=z(this.Na,this.hj,c))&&(!c.zj||!(this.qf=c.zj(this.ai,this))););this.qf?this.mh&&(c=this.mh,c.Jd=this,this.Wa=c.Wa):r(this.id+": "+this.hj+" "+this.ai+" unavailable")}this.Mc?Vj(this,this.Wa):Wj(this.Wa)}return!0};
k.Xb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Id()};k.save=function(){var a=new I(this);a.set(0,this.lj());return a.data()};k.restore=function(a){return this.Id(a[0])};k.Id=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.setActive(a[b++]);this.$f=a[b++];this.ag=a[b++];this.Be=a[b++];this.Ce=a[b++];this.Bg=a[b++];this.Cg=a[b++];this.Rc=a[b];return!0};
k.lj=function(){var a=0,b=[];b[a++]=this.Mc;b[a++]=this.$f;b[a++]=this.ag;b[a++]=this.Be;b[a++]=this.Ce;b[a++]=this.Bg;b[a++]=this.Cg;b[a]=this.Rc;return b};k.Qf=function(a){this.Fg=a};
function Vj(a,b){b&&(a.Ph||(b.addEventListener("mousemove",function(b){if(a.Mc&&a.la&&a.la.na.cc){if(0>a.$f||0>a.ag)a.$f=b.clientX,a.ag=b.clientY;a.Fg?(a.Be=b.movementX||b.mozMovementX||b.webkitMovementX||0,a.Ce=b.movementY||b.mozMovementY||b.webkitMovementY||0):(a.Be=b.clientX-a.$f,a.Ce=b.clientY-a.ag);(a.Be||a.Ce)&&Yj(a);a.$f=b.clientX;a.ag=b.clientY}},!1),b.addEventListener("mousedown",function(b){Zj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){Zj(a,b.button,!1)},!1),a.Ph=!0),b.style.cursor=
"none")}function Wj(a){a&&(a.style.cursor="auto")}function Zj(a,b,c){if(a.Mc&&a.la&&a.la.na.cc){var d;!(d=!1!==a.Fg)&&(d=a.mh)&&(d=a.mh,d=d.Tl?d.Ue(!0):!1);d||(a.Fg=null);switch(b){case 0:a.Bg!=c&&(a.Bg=c,Yj(a));break;case 2:a.Cg!=c&&(a.Cg=c,Yj(a))}}}function Yj(a){Rj(a.qf,[64|(a.Bg?32:0)|(a.Cg?16:0)|(a.Ce&192)>>4|(a.Be&192)>>6,a.Be&63,a.Ce&63]);a.Be=a.Ce=0}za(function(){for(var a=x(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Xj(d);Na(d,c)}});
function ak(a,b,c){u.call(this,"Disk",{id:a.ak+".disk"+bk++},ak);this.ea=a;this.Na=a.Na;this.Ra=a.Ra;this.Sa=b;this.Zc=b.name;this.Oe=b.Oe;this.Gg=this.kd=!1;this.create(c,b.ob,b.pb,b.ub,b.fb);this.Wd=[];this.dg=[];this.sd=null;this.fk=0;this.Vh=!1;this.Pa()}var bk=0;v(u,ak);k=ak.prototype;k.sc=function(a,b,c,d){this.Ra=d};k.Yb=function(a,b){b||!this.Gg||this.kd||(this.Pa(!1),this.load(this.Zc,this.ve,null,this.Sl,this));return!0};k.Sl=function(){this.Pa(!0)};
k.Xb=function(a,b){if(this.kd){var c,d=0;if(this.Vh&&!na("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=ck(this,!1);)if(d=c[0]){this.ea.Aa('Unable to save "'+this.Zc+'" (error '+d+")");break}b&&this.kd&&(c="action=close&volume="+this.ve,c+="&machine="+this.ea.Qe(),c+="&user="+this.ea.Hd(),la(ma()+"/api/v1/disk?"+c,!0),this.kd=!1);!d&&a&&this.ea.Aa(this.Zc+" saved")}return!0};
k.create=function(a,b,c,d,e){this.mode=a;this.ob=b;this.pb=c;this.ub=d;this.fb=e;this.$a=[];if("preload"!=this.mode){a=Array(this.ob);for(b=0;b<a.length;b++){c=Array(this.pb);for(d=0;d<c.length;d++){e=Array(this.ub);for(var f=1;f<=e.length;f++)e[f-1]=dk(null,b,d,f,this.fb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.$a=a}this.Me=null};
k.load=function(a,b,c,d,e){var f=b;if(!this.oe)if(this.Zc=a,this.ve=b,this.oe=d,this.Ml=e||this.ea,c){var g=this,h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.ob=d[0];g.pb=d[1];g.ub=d[2];g.fb=512;b=g.fb>>2;var e=d=0,a=new DataView(a,0,c);g.$a=Array(g.ob);for(c=0;c<g.$a.length;c++)for(var f=g.$a[c]=Array(g.pb),H=0;H<f.length;H++)for(var S=f[H]=Array(g.ub),N=0;N<S.length;N++){for(var T=dk(null,c,H,N+1,g.fb,0),wa=T.data,Wa=0;Wa<b;Wa++,e+=4)var Qb=wa[Wa]=a.getInt32(e,
!0),d=d+Qb&4294967295;T.qc=b;S[N]=T}g.Me=d;b=g}else g.Aa("Unrecognized diskette format ("+c+" bytes)");g.oe&&(g.oe.call(g.ea,g.Sa,b,g.Zc,g.ve),g.oe=null)};h.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=ek(this,b),this.Gg=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c="dir"),f=
ma()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Oe?"":d)+"&format=json")),la(f,!0,null,this,this.Ql,b)};
k.Ql=function(a,b,c,d){var e=null;this.Pe=!1;var f=0>c&&this.Na&&!this.Na.na.Lb;if(this.Gg)c?this.ea.Aa('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.kd=!0,e=this);else if(c)this.ea.Aa('Unable to load disk "'+this.Zc+'" (error '+c+")",f);else try{if(0<ea(a,!0).toLowerCase().indexOf("-readonly"))this.Pe=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.Pe=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.Zc]: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)r(h[0]);else{this.ob=h.length;this.pb=h[0].length;this.ub=h[0][0].length;var m=h[0][0][0];this.fb=m&&m.length||512;for(b=a=0;b<this.ob;b++)for(c=0;c<this.pb;c++)for(d=0;d<this.ub;d++)if(m=h[b][c][d]){var n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var s=m.data;if(void 0===s){var t=m.bytes;if(void 0!==t&&t.length){for(var f=
n<<2,y=t.length;y<f;y++)t[y]=q;this.fill(m,t,0)}else s=[],q=m.pattern=q|q<<8|q<<16|q<<24,m.data=s;delete m.bytes}dk(m,b,c);for(f=0;f<s.length;f++)a=a+s[f]&4294967295}this.$a=h;this.Me=a;e=this}else r("Empty disk image: "+this.Zc)}catch(H){r("Disk image error: "+H.message)}this.oe&&(this.oe.call(this.Ml,this.Sa,e,this.Zc,this.ve),this.oe=null)};function dk(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.bm=b;a.dm=c;a.Nc=a.qc=0;a.kb=!1;return a}
k.ln=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 ek(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.ob+":"+a.pb+":"+a.ub+":"+a.fb;c+="&machine="+a.ea.Qe();c+="&user="+a.ea.Hd();return ma()+"/api/v1/disk?"+c}
function fk(a,b,c,d,e,f){if(a.kd){var g;g="action=read&volume="+a.ve;g+="&chs="+a.ob+":"+a.pb+":"+a.ub+":"+a.fb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ea.Qe());g+="&user="+a.ea.Hd();la(ma()+"/api/v1/disk?"+g,!0,null,a,a.ln,[b,c,d,e,!0,f])}else f&&f(-1,!1)}function gk(a,b,c){b.kb=!0;var d=a.Wd.indexOf(b);0<=d&&(a.Wd.splice(d,1),a.dg.splice(d,1));a.Wd.push(b);a.dg.push(ia());c&&hk(a)}
function hk(a){if(a.Wd.length){var b=a.dg[0]+2E3;a.sd&&a.fk<b&&(clearTimeout(a.sd),a.sd=null);if(!a.sd){var c=ia(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.sd=setTimeout(function(){ck(a,!0)},b);a.fk=c+b}}else a.sd&&(clearTimeout(a.sd),a.sd=null)}
function ck(a,b){b&&(a.sd=null);var c=a.Wd[0];if(c){for(var d=c.bm,e=c.dm,c=c.sector,f=0,g=[],h=c-1;h<a.$a[d][e].length;h++){var m=a.$a[d][e][h];if(!m.kb)break;var n=a.Wd.indexOf(m);a.Wd.splice(n,1);a.dg.splice(n,1);g=g.concat(ik(m));m.kb=!1;f++}a.kd?(h={},a.Vh=!0,h.action="write",h.volume=a.ve,h.chs=a.ob+":"+a.pb+":"+a.ub+":"+a.fb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ea.Qe(),h.user=a.ea.Hd(),h.data=JSON.stringify(g),d=la(ma()+"/api/v1/disk",b,h,a,a.qn,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.qn=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Vh=!1;if(0<=a&&a<this.$a.length&&0<=b&&b<this.$a[a].length)for(e-=1;0<f--&&0<=e&&e<this.$a[a][b].length;e++){var g=this.$a[a][b][e];c?gk(this,g,!1):g.kb||(g.Nc=g.qc=0)}d&&hk(this)};k.info=function(){return this.$a.length?[this.$a.length,this.$a[0].length,this.$a[0][0].length,this.$a[0][0][0].length]:[0,0,0,0]};
k.seek=function(a,b,c,d,e){var f=null,g=this.Sa,h=this.$a[a];if(h){var m=h[b];if(!m&&g.lf&&b<g.pb)for(m=h[b]=Array(g.yd),h=0;h<m.length;h++)m[h]=dk(null,a,b,h+1,g.nb,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++;fk(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.lf&&9==g.ab&&(f=m[h]=dk(null,a,b,g.ab,g.nb,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 ik(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 jk(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.Pe)return!1;if(b<a.length){if(c!=jk(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.qc?f<a.Nc?(a.qc+=a.Nc-f,a.Nc=f):f>=a.Nc+a.qc&&(a.qc+=f-(a.Nc+a.qc)+1):(a.Nc=f,a.qc=1);d[f]=d[f]&~(255<<b)|c<<b;this.kd&&gk(this,a,!0)}return!0}return null};
k.save=function(){var a=0,b=[];b[a++]=[this.ve,this.Me,this.ob,this.pb,this.ub,this.fb];if(!this.kd&&!this.Pe)for(var c=this.$a,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.qc){for(var h=[],m=0,n=g.Nc,q=g.Nc+g.qc;n<q;)h[m++]=g.data[n++];b[a++]=[d,e,f,g.Nc,h]}}return b};
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.$a.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.Me&&e[1]!=this.Me&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.Me+")",b=-1));for(this.$a.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],m=g[f++],n=g[f++];if(h>=this.$a.length||m>=this.$a[h].length||n>=this.$a[h][m].length){c="sector "+h+":"+m+":"+n+" out of range ("+
b+" changes applied)";b=-1;break}if(this.Pe){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.$a[h][m][n]){for(m=h.data.length;m<e;)h.data[m++]=h.pattern;m=0;h.Nc=e;for(h.qc=f.length;e<g;)h.data[e++]=f[m++];b++}}}0>b&&this.ea.Aa("unable to restore disk '"+this.Zc+": "+c);return b};
function kk(a){u.call(this,"FDC",a,kk);this.dmaRead=this.Ih;this.dmaWrite=this.Jh;this.dmaFormat=this.Nl;this.he=null;if(a.autoMount&&(this.he=a.autoMount,"string"==typeof this.he))try{this.he=eval("("+a.autoMount+")")}catch(b){r("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.he=null}this.mc=[];this.Rj=!sa("Mobi")&&window&&"FileReader"in window}v(u,kk);l={};aa={};
var lk={3:{fd:3,Ad:0,name:aa.fp},4:{fd:2,Ad:1,name:aa.dp},5:{fd:9,Ad:7,name:aa.rp},6:{fd:9,Ad:7,name:aa.Yo},7:{fd:2,Ad:0,name:aa.$o},8:{fd:1,Ad:2,name:aa.ep},10:{fd:2,Ad:7,name:aa.Zo},13:{fd:6,Ad:7,name:aa.Ko},15:{fd:3,Ad:0,name:aa.cp}};k=kk.prototype;
function Z(a){this.Wj=a.adapter;switch(this.Wj){case 1:this.cj=1016;this.Gf=4;break;case 2:this.cj=760;this.Gf=3;break;default:r("Unrecognized serial adapter #"+this.Wj);return}this.Ad=null;u.call(this,"SerialPort",a,Z);var b=a.binding,c;a=Sj;b&&(void 0===c&&(c="Panel"),(c=Ma(c,this.id))&&(b=c.ra[b])&&this.Fb(null,a,b))}v(u,Z);var Sj="buffer";k=Z.prototype;k.xj=function(a,b){return a==this.$h?(this.Id=b,this):null};
k.Fb=function(a,b,c){var d=this;switch(b){case Sj:return this.ra[b]=this.Ad=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Tj(d,[b]))},c.onkeypress=function(a){a=a||window.event;Tj(d,[a.which||a.keyCode])},!0}return!1};k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;this.ka=z(a,"ChipSet");fb(b,this,Uj,this.cj);hb(b,this,Vj,this.cj);this.Qa()};
k.Xb=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.Hd()};k.save=function(){var a=new I(this),b=0,c=[];c[b++]=this.zh;c[b++]=this.Cj;c[b++]=this.ye;c[b++]=this.lg;c[b++]=this.wd;c[b++]=this.ae;c[b++]=this.Sc;c[b++]=this.wc;c[b++]=this.Aj;c[b]=this.gf;a.set(0,c);return a.data()};k.restore=function(a){return this.Hd(a[0])};
k.Hd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.zh=a[b++];this.Cj=a[b++];this.ye=a[b++];this.lg=a[b++];this.wd=a[b++];this.ae=a[b++];this.Sc=a[b++];this.wc=a[b++];this.Aj=a[b++];this.gf=a[b];return!0};function Tj(a,b){a.gf=a.gf.concat(b);Wj(a)}function Wj(a){0<a.gf.length&&!(a.wc&1)&&(a.zh=a.gf.shift(),a.wc|=1);var b=-1;a.wc&1&&a.lg&1&&(b=4);0<=b?(a.wd&=-8,a.wd|=b,a.ka&&a.Gf&&vi(a.ka,a.Gf)):(a.wd|=1,a.ka&&a.Gf&&wi(a.ka,a.Gf))}
k.Pm=function(){var a=this.ae&128?this.ye&255:this.zh;this.wc&=-2;Wj(this);return a};k.Am=function(){return this.ae&128?this.ye>>8:this.lg};k.Bm=function(){return this.wd};k.Cm=function(){return this.ae};k.Em=function(){return this.Sc};k.Dm=function(){return this.wc};k.Km=function(){return this.Aj};
k.eo=function(a,b){if(this.ae&128)this.ye=this.ye&-256|b;else{this.Cj=b;this.wc&=-97;var c;this.Ad?(13!=b&&(8==b?this.Ad.value=this.Ad.value.slice(0,-1):(this.Ad.value+=String.fromCharCode(b),this.Ad.scrollTop=this.Ad.scrollHeight)),c=!0):c=!1;c&&(this.wc|=96)}};k.Pn=function(a,b){this.ae&128?this.ye=this.ye&255|b<<8:this.lg=b};k.Qn=function(a,b){this.ae=b};
k.Rn=function(a,b){var c=this.Sc;this.Sc=b;if(this.Id&&(c^b)&3){var c=this.Id,d=this.Sc,e=3==(d&3);if(e){if(!c.Mc){var f=!1;c.Sc&2||(c.reset(),c.cc("serial mouse reset"),f=!0);c.Sc&1||(c.cc("serial mouse ID requested"),f=!0);f&&(Tj(c.pf,[77,77]),c.cc("serial mouse ID sent"));Xj(c,c.Xa);c.setActive(e)}}else c.Mc&&(c.cc("serial mouse inactive"),Yj(c.Xa),c.setActive(e));c.Sc=d}};
var Uj={0:Z.prototype.Pm,1:Z.prototype.Am,2:Z.prototype.Bm,3:Z.prototype.Cm,4:Z.prototype.Em,5:Z.prototype.Dm,6:Z.prototype.Km},Vj={0:Z.prototype.eo,1:Z.prototype.Pn,3:Z.prototype.Qn,4:Z.prototype.Rn};za(function(){for(var a=y(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Z(d);Na(d,c)}});function Zj(a){u.call(this,"Mouse",a,Zj);if(this.Zh=a.serial)this.fj="SerialPort";this.setActive(!1);this.Dg=!1;this.Qa()}v(u,Zj);k=Zj.prototype;
k.sc=function(a,b,c,d){this.Na=a;this.qa=b;this.la=c;this.Sa=d;this.lh=z(this.Na,"Video")};k.setActive=function(a){this.Mc=a};k.Xb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.fj&&!this.pf){for(var c=null;(c=z(this.Na,this.fj,c))&&(!c.xj||!(this.pf=c.xj(this.Zh,this))););this.pf?this.lh&&(c=this.lh,c.Id=this,this.Xa=c.Xa):r(this.id+": "+this.fj+" "+this.Zh+" unavailable")}this.Mc?Xj(this,this.Xa):Yj(this.Xa)}return!0};
k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Hd()};k.save=function(){var a=new I(this);a.set(0,this.jj());return a.data()};k.restore=function(a){return this.Hd(a[0])};k.Hd=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.setActive(a[b++]);this.Yf=a[b++];this.Zf=a[b++];this.ze=a[b++];this.Ae=a[b++];this.zg=a[b++];this.Ag=a[b++];this.Sc=a[b];return!0};
k.jj=function(){var a=0,b=[];b[a++]=this.Mc;b[a++]=this.Yf;b[a++]=this.Zf;b[a++]=this.ze;b[a++]=this.Ae;b[a++]=this.zg;b[a++]=this.Ag;b[a]=this.Sc;return b};k.Of=function(a){this.Dg=a};
function Xj(a,b){b&&(a.Nh||(b.addEventListener("mousemove",function(b){if(a.Mc&&a.la&&a.la.na.bc){if(0>a.Yf||0>a.Zf)a.Yf=b.clientX,a.Zf=b.clientY;a.Dg?(a.ze=b.movementX||b.mozMovementX||b.webkitMovementX||0,a.Ae=b.movementY||b.mozMovementY||b.webkitMovementY||0):(a.ze=b.clientX-a.Yf,a.Ae=b.clientY-a.Zf);(a.ze||a.Ae)&&ak(a);a.Yf=b.clientX;a.Zf=b.clientY}},!1),b.addEventListener("mousedown",function(b){bk(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){bk(a,b.button,!1)},!1),a.Nh=!0),b.style.cursor=
"none")}function Yj(a){a&&(a.style.cursor="auto")}function bk(a,b,c){if(a.Mc&&a.la&&a.la.na.bc){var d;!(d=!1!==a.Dg)&&(d=a.lh)&&(d=a.lh,d=d.Ql?d.Ue(!0):!1);d||(a.Dg=null);switch(b){case 0:a.zg!=c&&(a.zg=c,ak(a));break;case 2:a.Ag!=c&&(a.Ag=c,ak(a))}}}function ak(a){Tj(a.pf,[64|(a.zg?32:0)|(a.Ag?16:0)|(a.Ae&192)>>4|(a.ze&192)>>6,a.ze&63,a.Ae&63]);a.ze=a.Ae=0}za(function(){for(var a=y(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new Zj(d);Na(d,c)}});
function ck(a,b,c){u.call(this,"Disk",{id:a.Yj+".disk"+dk++},ck);this.ea=a;this.Na=a.Na;this.Sa=a.Sa;this.La=b;this.$c=b.name;this.Oe=b.Oe;this.Eg=this.kd=!1;this.create(c,b.ob,b.pb,b.vb,b.fb);this.Wd=[];this.bg=[];this.rd=null;this.ck=0;this.Th=!1;this.Qa()}var dk=0;v(u,ck);k=ck.prototype;k.sc=function(a,b,c,d){this.Sa=d};k.Xb=function(a,b){b||!this.Eg||this.kd||(this.Qa(!1),this.load(this.$c,this.te,null,this.Pl,this));return!0};k.Pl=function(){this.Qa(!0)};
k.Wb=function(a,b){if(this.kd){var c,d=0;if(this.Th&&!na("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=ek(this,!1);)if(d=c[0]){this.ea.Aa('Unable to save "'+this.$c+'" (error '+d+")");break}b&&this.kd&&(c="action=close&volume="+this.te,c+="&machine="+this.ea.Qe(),c+="&user="+this.ea.Gd(),la(ma()+"/api/v1/disk?"+c,!0),this.kd=!1);!d&&a&&this.ea.Aa(this.$c+" saved")}return!0};
k.create=function(a,b,c,d,e){this.mode=a;this.ob=b;this.pb=c;this.vb=d;this.fb=e;this.bb=[];if("preload"!=this.mode){a=Array(this.ob);for(b=0;b<a.length;b++){c=Array(this.pb);for(d=0;d<c.length;d++){e=Array(this.vb);for(var f=1;f<=e.length;f++)e[f-1]=fk(null,b,d,f,this.fb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.bb=a}this.Me=null};
k.load=function(a,b,c,d,e){var f=b;if(!this.me)if(this.$c=a,this.te=b,this.me=d,this.Jl=e||this.ea,c){var g=this,h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.ob=d[0];g.pb=d[1];g.vb=d[2];g.fb=512;b=g.fb>>2;var e=d=0,a=new DataView(a,0,c);g.bb=Array(g.ob);for(c=0;c<g.bb.length;c++)for(var f=g.bb[c]=Array(g.pb),E=0;E<f.length;E++)for(var R=f[E]=Array(g.vb),M=0;M<R.length;M++){for(var S=fk(null,c,E,M+1,g.fb,0),va=S.data,Va=0;Va<b;Va++,e+=4)var Qb=va[Va]=a.getInt32(e,
!0),d=d+Qb&4294967295;S.qc=b;R[M]=S}g.Me=d;b=g}else g.Aa("Unrecognized diskette format ("+c+" bytes)");g.me&&(g.me.call(g.ea,g.La,b,g.$c,g.te),g.me=null)};h.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=gk(this,b),this.Eg=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c="dir"),f=
ma()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Oe?"":d)+"&format=json")),la(f,!0,null,this,this.Nl,b)};
k.Nl=function(a,b,c,d){var e=null;this.Pe=!1;var f=0>c&&this.Na&&!this.Na.na.Lb;if(this.Eg)c?this.ea.Aa('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.kd=!0,e=this);else if(c)this.ea.Aa('Unable to load disk "'+this.$c+'" (error '+c+")",f);else try{if(0<ea(a,!0).toLowerCase().indexOf("-readonly"))this.Pe=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.Pe=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.$c]: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)r(h[0]);else{this.ob=h.length;this.pb=h[0].length;this.vb=h[0][0].length;var m=h[0][0][0];this.fb=m&&m.length||512;for(b=a=0;b<this.ob;b++)for(c=0;c<this.pb;c++)for(d=0;d<this.vb;d++)if(m=h[b][c][d]){var n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var s=m.data;if(void 0===s){var t=m.bytes;if(void 0!==t&&t.length){for(var f=
n<<2,x=t.length;x<f;x++)t[x]=q;this.fill(m,t,0)}else s=[],q=m.pattern=q|q<<8|q<<16|q<<24,m.data=s;delete m.bytes}fk(m,b,c);for(f=0;f<s.length;f++)a=a+s[f]&4294967295}this.bb=h;this.Me=a;e=this}else r("Empty disk image: "+this.$c)}catch(E){r("Disk image error: "+E.message)}this.me&&(this.me.call(this.Jl,this.La,e,this.$c,this.te),this.me=null)};function fk(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Zl=b;a.am=c;a.Nc=a.qc=0;a.kb=!1;return a}
k.hn=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 gk(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.ob+":"+a.pb+":"+a.vb+":"+a.fb;c+="&machine="+a.ea.Qe();c+="&user="+a.ea.Gd();return ma()+"/api/v1/disk?"+c}
function hk(a,b,c,d,e,f){if(a.kd){var g;g="action=read&volume="+a.te;g+="&chs="+a.ob+":"+a.pb+":"+a.vb+":"+a.fb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ea.Qe());g+="&user="+a.ea.Gd();la(ma()+"/api/v1/disk?"+g,!0,null,a,a.hn,[b,c,d,e,!0,f])}else f&&f(-1,!1)}function ik(a,b,c){b.kb=!0;var d=a.Wd.indexOf(b);0<=d&&(a.Wd.splice(d,1),a.bg.splice(d,1));a.Wd.push(b);a.bg.push(ia());c&&jk(a)}
function jk(a){if(a.Wd.length){var b=a.bg[0]+2E3;a.rd&&a.ck<b&&(clearTimeout(a.rd),a.rd=null);if(!a.rd){var c=ia(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.rd=setTimeout(function(){ek(a,!0)},b);a.ck=c+b}}else a.rd&&(clearTimeout(a.rd),a.rd=null)}
function ek(a,b){b&&(a.rd=null);var c=a.Wd[0];if(c){for(var d=c.Zl,e=c.am,c=c.sector,f=0,g=[],h=c-1;h<a.bb[d][e].length;h++){var m=a.bb[d][e][h];if(!m.kb)break;var n=a.Wd.indexOf(m);a.Wd.splice(n,1);a.bg.splice(n,1);g=g.concat(kk(m));m.kb=!1;f++}a.kd?(h={},a.Th=!0,h.action="write",h.volume=a.te,h.chs=a.ob+":"+a.pb+":"+a.vb+":"+a.fb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ea.Qe(),h.user=a.ea.Gd(),h.data=JSON.stringify(g),d=la(ma()+"/api/v1/disk",b,h,a,a.nn,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.nn=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Th=!1;if(0<=a&&a<this.bb.length&&0<=b&&b<this.bb[a].length)for(e-=1;0<f--&&0<=e&&e<this.bb[a][b].length;e++){var g=this.bb[a][b][e];c?ik(this,g,!1):g.kb||(g.Nc=g.qc=0)}d&&jk(this)};k.info=function(){return this.bb.length?[this.bb.length,this.bb[0].length,this.bb[0][0].length,this.bb[0][0][0].length]:[0,0,0,0]};
k.seek=function(a,b,c,d,e){var f=null,g=this.La,h=this.bb[a];if(h){var m=h[b];if(!m&&g.xh&&b<g.pb)for(m=h[b]=Array(g.xd),h=0;h<m.length;h++)m[h]=fk(null,a,b,h+1,g.nb,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++;hk(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.xh&&9==g.cb&&(f=m[h]=fk(null,a,b,g.cb,g.nb,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 kk(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 lk(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.Pe)return!1;if(b<a.length){if(c!=lk(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.qc?f<a.Nc?(a.qc+=a.Nc-f,a.Nc=f):f>=a.Nc+a.qc&&(a.qc+=f-(a.Nc+a.qc)+1):(a.Nc=f,a.qc=1);d[f]=d[f]&~(255<<b)|c<<b;this.kd&&ik(this,a,!0)}return!0}return null};
k.save=function(){var a=0,b=[];b[a++]=[this.te,this.Me,this.ob,this.pb,this.vb,this.fb];if(!this.kd&&!this.Pe)for(var c=this.bb,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.qc){for(var h=[],m=0,n=g.Nc,q=g.Nc+g.qc;n<q;)h[m++]=g.data[n++];b[a++]=[d,e,f,g.Nc,h]}}return b};
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.bb.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.Me&&e[1]!=this.Me&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.Me+")",b=-1));for(this.bb.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],m=g[f++],n=g[f++];if(h>=this.bb.length||m>=this.bb[h].length||n>=this.bb[h][m].length){c="sector "+h+":"+m+":"+n+" out of range ("+
b+" changes applied)";b=-1;break}if(this.Pe){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.bb[h][m][n]){for(m=h.data.length;m<e;)h.data[m++]=h.pattern;m=0;h.Nc=e;for(h.qc=f.length;e<g;)h.data[e++]=f[m++];b++}}}0>b&&this.ea.Aa("unable to restore disk '"+this.$c+": "+c);return b};
function mk(a){u.call(this,"FDC",a,mk);this.dmaRead=this.Ih;this.dmaWrite=this.Jh;this.dmaFormat=this.Kl;this.fe=null;if(a.autoMount&&(this.fe=a.autoMount,"string"==typeof this.fe))try{this.fe=eval("("+a.autoMount+")")}catch(b){r("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.fe=null}this.nc=[];this.Oj=!sa("Mobi")&&window&&"FileReader"in window}v(u,mk);l={};aa={};
var nk={3:{fd:3,zd:0,name:aa.ep},4:{fd:2,zd:1,name:aa.cp},5:{fd:9,zd:7,name:aa.qp},6:{fd:9,zd:7,name:aa.Xo},7:{fd:2,zd:0,name:aa.Zo},8:{fd:1,zd:2,name:aa.dp},10:{fd:2,zd:7,name:aa.Yo},13:{fd:6,zd:7,name:aa.Jo},15:{fd:3,zd:0,name:aa.bp}};k=mk.prototype;
k.Fb=function(a,b,c){var d=this;switch(b){case "listDisks":return this.ra[b]=c,c.onchange=function(){var a=d.ra.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("({"+b+"})")}catch(h){r("FDC option error: "+h.message)}b=g.desc;void 0===b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.ra[b]=c,c.onchange=function(){var a;a=c.value;var b=10,g;if(a){b||(b=16);
if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var h=a.charAt(a.length-1).toLowerCase();"h"==h?(b=16,h=null):"."==h&&(b=10,h=null);null===h&&(a=a.substr(0,a.length-1))}var m;ca(a,b)&&!isNaN(m=parseInt(a,b))&&(g=m)}a=g;null!=a&&mk(d,a)},!0;case "loadDrive":return this.ra[b]=c,c.onclick=function(){var a=d.ra.listDisks;a&&nk(d,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return this.Rj?(this.ra[b]=c,c.addEventListener("change",function(){var a=
c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;nk(d,ea(b,!0),b,a)}return!1}):c.parentNode.removeChild(c),!0}return!1};k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Ra=d;this.Na=a;this.ka=z(a,"ChipSet");this.ld();fb(b,this,ok);hb(b,this,pk);this.Rj&&qk(this,"Local Disk","?");qk(this,"Remote Disk","??");this.kf()||this.Pa()};
k.Yb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Na.Th){this.mc=[];for(var c=0;c<this.ya.length;c++)rk(this,c,!0);this.kf(!0)}}else if(!this.restore(a))return!1;if(c=this.ra.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.ni;d++){var e=window.document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.ni&&(c.value="0",mk(this,0))}}return!0};
k.Xb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ld()};k.save=function(){var a=new I(this);a.set(0,this.ij());return a.data()};k.restore=function(a){return this.ld(a[0])};
k.ld=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.bb=a[b++];b++;this.xa=a[b++];this.$b=a[b++];this.wb=a[b++];this.ib=a[b++];this.bf=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.mc=c);void 0===this.ya&&(this.ni=4,this.ka&&(this.ni=Yh(this.ka)),this.ya=Array(4));for(c=0;c<this.ya.length;c++){var f=this.ya[c];if(void 0===f){var f=this.ya[c]={},g;if(this.ka)a:{g=this.ka;if(c<Yh(g)){if(!g.td){g=360;break a}if(c<g.td.length){g=g.td[c];break a}}g=0}else g=0;switch(g){case 160:case 180:f.pb=
1;default:f.ob=40;f.ub=9;break;case 720:f.ob=80;f.ub=9;break;case 1200:f.ob=80;f.ub=15;break;case 1440:f.ob=80,f.ub=18}}this.ci(f,c,e[c])||(d=!1)}this.Qd=a[b++]||0;this.ol=a[b]||0;return d};k.ij=function(){var a=0,b=[];b[a++]=this.bb;b[a++]=0;b[a++]=this.xa;b[a++]=this.$b;b[a++]=this.wb;b[a++]=this.ib;b[a++]=this.bf;b[a++]=this.kj();for(var c=a++,d=0;d<this.ya.length;d++){var e=this.ya[d];e.ua&&sk(this,e.we,e.ua)}b[c]=this.mc;b[a++]=this.Qd;b[a]=this.ol;return b};
k.ci=function(a,b,c){var d=0,e=!0;a.bb=b;a.zc=a.Ne=!1;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.ob||40,a.pb||c[3],a.ub||9,a.fb||512,c[1],a.Tg,a.Gf,a.Hf]);a.Ya=c[d++];var f=c[d++];a.name=f[0];a.ob=f[1];a.pb=f[2];a.ub=f[3];a.fb=f[4];a.Oe=f[5];(a.Tg=f[6])?(a.Gf=f[7],a.Hf=f[8]):(a.Tg=a.ob,a.Gf=a.pb,a.Hf=a.ub);a.Ka=c[d++];a.wd=c[d++];a.rb=c[d++];a.wd=100<=a.wd?a.wd-100:a.wd-a.rb;a.ab=c[d++];a.yd=c[d++];a.nb=c[d++];a.gb=c[d++];a.Ma=null;a.ua||(a.we="");var g=c[d++];
102==g&&(g=!1);"boolean"==typeof g?(f=c[d++],c=c[d],g?(d=this.ya[b],rk(this,b,!0,!0),d.Ne=!0,b=new ak(this,d,"preload"),this.Lj(d,b,f,c,!0)):tk(this,b,f,c,!0)?a.ua&&c&&uk(this,f,c,a.ua):this.Pa(!1)):void 0!==g&&a.ua&&0>a.ua.restore(g)&&(e=!1);e&&a.ua&&void 0!==a.gb&&(a.Ma=a.ua.seek(a.rb,a.Ka,a.ab));return e};k.kj=function(){for(var a=0,b=[],c=0;c<this.ya.length;c++)b[a++]=this.jj(this.ya[c]);return b};
k.jj=function(a){var b=0,c=[];c[b++]=a.Ya;c[b++]=[a.name,a.ob,a.pb,a.ub,a.fb,a.Oe,a.Tg,a.Gf,a.Hf];c[b++]=a.Ka;c[b++]=a.wd+100;c[b++]=a.rb;c[b++]=a.ab;c[b++]=a.yd;c[b++]=a.nb;c[b++]=a.gb;c[b++]=a.Ne;c[b++]=a.tl;c[b]=a.we;return c};k.kf=function(a){a||(this.de=0);if(this.he)for(var b in this.he){var c=this.he[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.ya.length){!tk(this,d,c.name,c.path,!0)&&a&&this.Pa(!1);continue}}this.Aa("Unrecognized auto-mount specification for drive "+b)}return!!this.de};
function nk(a,b,c,d){var e,f=a.ra.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.ya.length)if(c)if("?"==c)a.Aa('Use "Choose File" and "Load" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=ea(c);a.fc("Attempting to load "+c+' as "'+b+'"')}for(a.fc("loading disk "+c+"...");tk(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=
a,g=c,h=void 0,h=0;h<f.mc.length;h++)if(f.mc[h][1]==g){f.mc.splice(h,1);break}rk(a,e,!1,!0)}}else rk(a,e);else a.Aa("Nothing to load")}function tk(a,b,c,d,e,f){var g=a.ya[b];if(d&&g.we!=d){rk(a,b,e,!0);if(g.zc)return a.Aa("Drive "+b+" busy"),!0;g.zc=!0;e&&(g.me=!0,a.de++);g.Ne=!!f;(new ak(a,g,"preload")).load(c,d,f,a.Lj);return!1}return!0}
k.Lj=function(a,b,c,d,e){var f;a.zc=!1;b&&(f=b.info(),b&&f[0]>a.ob||f[1]>a.pb)&&(this.Aa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.bb)),b=null);b?(a.ua=b,a.tl=c,a.we=d,uk(this,c,d,b),f=b.info(),this.Qd|=128,this.Aa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.bb),a.me||e),a.Tg=f[0],a.Gf=f[1],a.Hf=f[2]):a.Ne=!1;a.me&&(a.me=!1,--this.de||this.Pa());mk(this,a.bb)};
function qk(a,b,c){if(a=a.ra.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}function mk(a,b){if(0<=b&&b<a.ya.length){var c=a.ya[b],d=a.ra.listDisks,e=a.ra.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.Ne?"?":c.we,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}
function rk(a,b,c,d){var e=a.ya[b];e.ua&&(sk(a,e.we,e.ua),e.tl="",e.we="",e.ua=null,e.Ne=!1,a.Qd|=128,d||a.Aa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||mk(a,b))}function uk(a,b,c,d){var e;for(e=0;e<a.mc.length;e++)if(a.mc[e][1]==c){d.restore(a.mc[e][2]);return}a.mc[e]=[b,c,[]]}function sk(a,b,c){var d;for(d=0;d<a.mc.length;d++)if(a.mc[d][1]==b){a.mc[d][2]=c.save();break}}k.Ln=function(a,b){b&4?this.bf&4||this.bf&8&&this.ka&&ui(this.ka,6):this.ld();this.bf=b};k.ym=function(){return this.xa};
k.wm=function(){var a=0;this.wb<this.ib&&(a=this.$b[this.wb]);this.bf&8&&this.ka&&vi(this.ka,6);++this.wb>=this.ib&&(this.xa&=-81,this.wb=this.ib=0);return a};
k.Kn=function(a,b){this.ib<this.$b.length&&(this.$b[this.ib++]=b);var c=this.$b[0]&31;if(void 0!==lk[c]&&this.ib>=lk[c].fd){var d=!1;this.wb=0;var c=this.Ja(),e,f,g,h,m,n=c&31;switch(n){case 3:this.Ja(l.gp);this.Ja(l.No);this.Kb();break;case 4:f=this.Ja(l.cf);this.bb=f&3;e=this.ya[this.bb];this.Kb();this.Zb((e.Ya&4278190080)>>>24,l.jp);break;case 5:case 6:f=this.Ja(l.cf);d=f>>2&1;this.bb=f&3;e=this.ya[this.bb];e.Ka=d;f=e.rb=this.Ja(l.rj);g=this.Ja(l.sj);h=e.ab=this.Ja(l.uj);m=this.Ja(l.ph);e.nb=128<<
m;e.yd=this.Ja(l.Io);this.Ja(l.El);this.Ja(l.Ho);6==n?this.Kh(e):this.Lh(e);vk(this,e,c,d,f,g,h,m);d=!0;break;case 7:f=this.Ja(l.cf);this.bb=f&3;e=this.ya[this.bb];e.rb=e.wd=0;e.Ya=268435488;this.Kb();d=!0;break;case 8:e=this.ya[this.bb];e.Ka=0;this.Kb();this.Zb(e.bb|e.Ka<<2|e.Ya&255,l.Gl);this.Zb(e.rb,l.Wo);this.bb=this.bb+1&3;break;case 10:f=this.Ja(l.cf);d=f>>2&1;this.bb=f&3;e=this.ya[this.bb];f=e.rb;g=e.Ka=d;h=e.ab=1;m=0;e.Ya=0;e.ua&&(e.Ma=e.ua.seek(e.rb,e.Ka,e.ab))?m=e.Ma.length:e.Ya=72;vk(this,
e,c,d,f,g,h,m);d=!0;break;case 13:f=this.Ja(l.cf);d=f>>2&1;this.bb=f&3;e=this.ya[this.bb];f=e.rb;g=e.Ka=d;h=1;m=this.Ja(l.ph);e.nb=128<<m;e.yd=this.Ja(l.bp);this.Ja(l.El);e.Bj=this.Ja(l.Dl);this.Kj(e);vk(this,e,c,d,f,g,h,m);d=!0;break;case 15:f=this.Ja(l.cf),this.bb=f&3,e=this.ya[this.bb],e.Ka=f>>2&1,f=this.Ja(l.To),e.rb+=f-e.wd,0>e.rb&&(e.rb=0),e.rb>=e.ob&&(e.rb=e.ob-1),e.wd=f,e.Ya=32,e.rb||(e.Ya|=268435456),this.Kb(),d=!0}0<this.ib&&(this.xa|=80);this.bf&8&&(!e||e.Ya&8||!d||this.ka&&ui(this.ka,
6))}};k.xm=function(){var a=this.Qd;this.Qd&=-129;return a};k.Jn=function(a,b){this.ol=b};function vk(a,b,c,d,e,f,g,h){a.Kb();a.Zb(b.bb|b.Ka<<2|b.Ya&255,l.Gl);a.Zb((b.Ya&65280)>>>8,l.hp);a.Zb((b.Ya&16711680)>>>16,l.ip);var m=0;if(e!=b.rb||f!=b.Ka)m=g=1;c&128&&(f^=m,d||(m=0));a.Zb(e+m,l.rj);a.Zb(f,l.sj);a.Zb(g,l.uj);a.Zb(h,l.ph)}k.Ja=function(){var a=this.$b[this.wb];this.wb++;return a};k.Kb=function(){this.wb=this.ib=0};k.Zb=function(a){this.$b[this.ib++]=a};
k.Ih=function(a,b,c){void 0===b||0>b?this.Cc(a,c):c(-1,!1)};k.Jh=function(a,b){return void 0!==b&&0<=b?this.Fc(a,b):-1};k.Nl=function(a,b){return void 0!==b&&0<=b?this.oj(a,b):-1};k.Kh=function(a){a.Ya=72;a.ua&&(a.Ma=null,a.Ya=0,this.ka&&(ki(this.ka,2,this,"dmaRead",a),gi(this.ka,2)))};k.Lh=function(a){a.Ya=72;a.ua&&(a.ua.Pe?a.Ya=576:(a.Ma=null,a.Ya=0,this.ka&&(ki(this.ka,2,this,"dmaWrite",a),gi(this.ka,2))))};
k.Kj=function(a){a.Ya=72;a.ua&&(a.Ma=null,a.Ya=0,this.ka&&(a.ge=0,a.nc=Array(4),a.lf=!0,a.of=0,ki(this.ka,2,this,"dmaFormat",a),gi(this.ka,2),a.lf=!1))};k.Cc=function(a,b){var c=-1;if(!a.Ya&&a.ua){do{if(a.Ma&&0<=(c=jk(a.Ma,a.gb++)))break;a.Ma=a.ua.seek(a.rb,a.Ka,a.ab);if(!a.Ma){a.Ya=1088;break}a.gb=0;this.hf(a)}while(1)}b(c,!1)};
k.Fc=function(a,b){if(a.Ya||!a.ua)return-1;do{if(a.Ma&&a.ua.write(a.Ma,a.gb++,b))break;a.Ma=a.ua.seek(a.rb,a.Ka,a.ab);if(!a.Ma){a.Ya=8256;b=-1;break}a.gb=0;this.hf(a)}while(1);return b};k.hf=function(a){a.ab++;a.ab>=a.Hf+1&&(a.ab=1,a.Ka++,a.Ka>=a.Gf&&(a.Ka=0,a.rb++))};k.oj=function(a,b){if(a.Ya)return-1;a.nc[a.ge++]=b;if(a.ge==a.nc.length){a.rb=a.nc[0];a.Ka=a.nc[1];a.ab=a.nc[2];a.nb=128<<a.nc[3];for(var c=a.ge=0;c<a.nb;c++)if(0>this.Fc(a,a.Bj))return-1;a.of++}a.of>=a.yd&&(b=-1);return b};
var ok={1012:kk.prototype.ym,1013:kk.prototype.wm,1015:kk.prototype.xm},pk={1010:kk.prototype.Ln,1013:kk.prototype.Kn,1015:kk.prototype.Jn};za(function(){for(var a=x(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new kk(d);Na(d,c)}});
function $(a){u.call(this,"HDC",a,$);this.dmaRead=this.Ih;this.dmaWrite=this.Jh;this.dmaWriteBuffer=this.Ol;this.dmaWriteFormat=this.Pl;this.rh=[];if(a.drives)try{this.rh=eval("("+a.drives+")")}catch(b){r("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.xf=(this.le="at"==a.type)?1:0;this.cm=this.le?2:3}v(u,$);
var wk=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];k=$.prototype;k.Fb=function(){return!1};k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Ra=d;this.Na=a;this.ka=z(a,"ChipSet");fb(b,this,this.le?xk:yk);hb(b,this,this.le?zk:Ak);Cc(c,19,this,this.$m);Cc(c,64,this,this.an);this.reset();this.kf()||this.Pa()};
k.Yb=function(a,b){if(!b)if(!a||!this.restore)this.ld(),this.Na.Th&&this.kf(!0);else if(!this.restore(a))return!1;return!0};k.Xb=function(a){return a&&this.save?this.save():!0};k.Qe=function(){return this.Na?this.Na.Qe():""};k.Hd=function(){return this.Na?this.Na.Hd():""};k.reset=function(){this.ld(null,!0)};k.save=function(){var a=new I(this);a.set(0,this.ij());return a.data()};k.restore=function(a){return this.ld(a[0])};
k.ld=function(a,b){var c=0,d=!0;if(this.le)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.pd=a[c++],this.sl=a[c++],this.Rd=a[c++],this.fh=a[c++],this.dh=a[c++],this.bh=a[c++],this.af=a[c++],this.xa=a[c++],this.gj=a[c++],this.eh=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.Uf=a[c++];this.xa=a[c++];this.$b=a[c++];this.wb=a[c++];this.ib=a[c++];this.rl=a[c++];this.ql=a[c++];this.pl=a[c++];var e=a[c++];void 0!==e?this.Re=e:void 0===this.Re&&(this.Re=-1)}void 0===this.ya&&(this.ya=Array(this.rh.length));
c=a[c];void 0===c&&(c=[]);for(e=0;e<this.ya.length;e++){void 0===this.ya[e]&&(this.ya[e]={});var f=this.ya[e];this.ci(e,f,this.rh[e],c[e],b)||(d=!1);null!=this.Uf&&1>=e&&(this.Uf|=(f.type&3)<<(1-e<<1))}return d};
k.ij=function(){var a=0,b=[];this.le?(b[a++]=this.pd,b[a++]=this.sl,b[a++]=this.Rd,b[a++]=this.fh,b[a++]=this.dh,b[a++]=this.bh,b[a++]=this.af,b[a++]=this.xa,b[a++]=this.gj,b[a++]=this.eh):(b[a++]=this.Uf,b[a++]=this.xa,b[a++]=this.$b,b[a++]=this.wb,b[a++]=this.ib,b[a++]=this.rl,b[a++]=this.ql,b[a++]=this.pl,b[a++]=this.Re);b[a]=this.kj();return b};
k.ci=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.bb=a;b.errorCode=d[f++];b.xl=d[f++];b.Oe=d[f++];b.Fe=d[f++];b.Ge=d[f++];b.Ka=d[f++];b.pb=d[f++];b.Ud=d[f++];b.ab=d[f++];b.yd=d[f++];b.nb=d[f++];b.tg=this.le?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.Hd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===wk[this.xf][b.type])b.type=this.cm;c=wk[this.xf][b.type];
b.ub=c[2]||17;b.fb=c[3]||512;if(e&&this.ka&&(e=this.ka,c=b.type,e.ja)){var h=e.ja[18],h=a?h&240|c:h&15|c<<4;e.ja&&(e.ja[18]=h,Qh(e))}void 0===b.ua&&(b.ua=null,this.Aa("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Bk(this,b);b.gb=d[f++];b.Ma=null;b.ua&&(a=d[f],void 0!==a&&0>b.ua.restore(a)&&(g=!1),g&&void 0!==b.gb&&(b.Ma=b.ua.seek(b.Ud,b.Ka,b.ab+b.tg)));return g};k.kj=function(){for(var a=0,b=[],c=0;c<this.ya.length;c++)b[a++]=this.jj(this.ya[c]);return b};
k.jj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.xl;c[b++]=a.Oe;c[b++]=a.Fe;c[b++]=a.Ge;c[b++]=a.Ka;c[b++]=a.pb;c[b++]=a.Ud;c[b++]=a.ab;c[b++]=a.yd;c[b++]=a.nb;c[b++]=a.gb;c[b]=a.ua?a.ua.save():null;return c};
function Bk(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Fe[2])?e=b.Fe[0]<<8|b.Fe[1]:c=b.type);null==c||d||(d=wk[a.xf][c][1],e=wk[a.xf][c][0]);d&&((c=wk[a.xf][b.type])&&e!=c[0]&&d!=c[1]&&a.Aa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.ob=e,b.pb=d,null==b.ua&&(b.ua=new ak(a,b,b.mode)))}}
k.kf=function(a){a||(this.de=0);for(var b=0;b<this.ya.length;b++){var c=this.ya[b];if(c.name&&c.path){if(!(a&&c.ua&&c.ua.Gg)){var d;d=c.name;var c=c.path,e=this.ya[b];e.zc?(this.Aa("Drive "+b+" busy"),d=!0):(e.zc=!0,e.me=!0,this.de++,(e.ua||new ak(this,e,e.mode)).load(d,c,null,this.Rl),d=!1);!d&&a&&this.Pa(!1)}}else a&&void 0!==c.type&&(c.ua=null,Bk(this,c,c.type))}return!!this.de};
k.Rl=function(a,b,c){a.zc=!1;(a.ua=b)&&this.Aa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.bb),a.me);a.me&&(a.me=!1,--this.de||this.Pa())};k.Ym=function(){var a=0;this.wb<this.ib&&(a=this.$b[this.wb]);this.ka&&vi(this.ka,5);this.xa&=-33;++this.wb>=this.ib&&(this.wb=this.ib=0,this.xa&=-15);return a};k.io=function(a,b){this.ib<this.$b.length&&(this.$b[this.ib++]=b);var c=12!=this.$b[0]?6:this.$b.length;6==this.ib&&(this.xa&=-2);this.ib>=c&&(this.xa|=2,this.xa&=-2,Ck(this))};
k.Zm=function(){var a=this.xa;this.wb<this.ib&&(this.xa|=1);return a};k.lo=function(a,b){this.rl=b;this.ka&&vi(this.ka,5);this.ld()};k.Xm=function(){return this.Uf};k.ko=function(a,b){this.ql=b;this.xa=13};k.jo=function(a,b){this.pl=b};k.bj=function(){};k.jm=function(){var a=-1;if(this.Sa&&(a=this.Cc(this.Sa),this.Sa.gb==this.Sa.fb))if(this.Sa.nb-=this.Sa.fb,this.Rd=this.Rd-1&255,this.Sa.nb>=this.Sa.fb){var b=this;this.Cc(this.Sa,function(a){0<=a?Dk(b):(b.xa=1,b.pd=16)},!1)}else this.xa=80;return a};
k.xn=function(a,b){this.Sa&&this.Sa.nb>=this.Sa.fb&&(0>this.Fc(this.Sa,b)?(this.xa=1,this.pd=16):this.Sa.gb==this.Sa.fb&&(this.Sa.nb-=this.Sa.fb,this.Rd=this.Rd-1&255,Dk(this),this.Sa.nb>=this.Sa.fb||(this.xa=80)))};k.lm=function(){return this.pd};k.Cn=function(a,b){this.sl=b};k.mm=function(){return this.Rd};k.An=function(a,b){this.Rd=b};k.nm=function(){return this.fh};k.Bn=function(a,b){this.fh=b};k.im=function(){return this.dh};k.wn=function(a,b){this.dh=b};k.hm=function(){return this.bh};
k.vn=function(a,b){this.bh=b};k.km=function(){return this.af};k.yn=function(a,b){this.af=b;this.xa=this.ya[this.af&16?1:0]?this.xa|64:this.xa&-65};k.om=function(){return this.xa};k.un=function(a,b){this.gj=b;this.ka&&vi(this.ka,14);Ek(this)};k.zn=function(a,b){this.eh&4&&!(b&4)&&(this.pd=1);this.eh=b};
function Ek(a){var b=!1,c=a.gj,d=a.af&16?1:0,e=a.af&15,f=a.dh|(a.bh&3)<<8,g=a.fh,h=a.Rd||256;a.Sa=null;a.pd=0;a.xa=80;(d=a.ya[d])?(d.Ud=f,d.Ka=e,d.ab=g,d.nb=h*d.fb,c=144<=c?c:c&240,d.Ma=null,d.errorCode=0,a.Sa=d):c=-1;switch(c&240){case 32:a.Cc(d,function(b){0<=b&&a.ka?(Dk(a),a.xa=136):(a.xa=1,a.pd=16)},!1);break;case 48:a.ka?(Dk(a),a.xa=136):(a.xa=1,a.pd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.pd=1;b=!0;break;case 145:d.pb=e+1,d.ub=h,b=!0}b&&Dk(a)}
function Dk(a){!a.ka||a.eh&2||ui(a.ka,14)}
function Ck(a){a.wb=0;var b=a.Ja(),c=a.Ja(),d=c&32,e=d>>5,f=c&31,g=a.Ja(),h=a.Ja(),m=g<<2&768|h,n=g&63,q=a.Ja(),s=a.Ja(),t=a.ya[e];t&&(t.Ud=m,t.Ka=f,t.ab=n,t.nb=q*t.fb);switch(b){case 3:a.Kb(t?t.errorCode:4);a.Zb(c);a.Zb(g);a.Zb(h);a.Zb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ja());)t&&c<t.Fe.length&&(t.Fe[c++]=b);t&&Bk(a,t);b=0;t||a.Re!=e||(a.Re=-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===t?b=-1:(t.errorCode=0,t.xl=0),b){case 0:a.Kb(0|d);break;case 1:t.zp=
s;a.Kb(0|d);break;case 5:a.Kb(0|d);break;case 8:a.Kh(t,function(b){a.Kb(b|d)});break;case 10:a.Lh(t,function(b){a.Kb(b|d)});break;case 15:Fk(a,t,function(b){a.Kb(b|d)});break;default:a.Kb(2|d)}}k.Ja=function(){var a=-1;this.wb<this.ib&&(a=this.$b[this.wb++]);return a};k.Kb=function(a){this.wb=this.ib=0;void 0!==a&&this.Zb(a);this.ka&&ui(this.ka,5);this.xa|=32};k.Zb=function(a){this.$b[this.ib++]=a};k.Ih=function(a,b,c){void 0===b||0>b?this.Cc(a,c):c(-1,!1)};
k.Jh=function(a,b){return void 0!==b&&0<=b?this.Fc(a,b):-1};k.Ol=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.gb<a.Ge.length?a.Ge[a.gb++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.Pl=function(a,b){return void 0!==b&&0<=b?this.oj(a,b):-1};k.Kh=function(a,b){a.errorCode=4;if(a.ua&&(a.Ma=null,this.ka)){a.errorCode=0;ki(this.ka,3,this,"dmaRead",a);gi(this.ka,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.Lh=function(a,b){a.errorCode=4;if(a.ua&&(a.Ma=null,this.ka)){a.errorCode=0;ki(this.ka,3,this,"dmaWrite",a);gi(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 Fk(a,b,c){b.errorCode=4;b.Ge&&b.Ge.length==b.nb||(b.Ge=Array(b.nb));b.gb=0;a.ka?(b.errorCode=0,ki(a.ka,3,a,"dmaWriteBuffer",b),gi(a.ka,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.Kj=function(a,b){a.errorCode=4;if(a.ua&&(a.Ma=null,this.ka)){a.ge=0;a.nc=Array(4);a.lf=!0;a.of=0;a.errorCode=0;ki(this.ka,3,this,"dmaWriteFormat",a);gi(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.Cc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ma&&(d=jk(a.Ma,a.gb),a.gb+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;if(a.ua)return a.ua.seek(a.Ud,a.Ka,a.ab+a.tg,!1,function(c,h){(a.Ma=c)?(a.gb=0,f.hf(a),d=jk(a.Ma,a.gb),a.gb+=e):a.errorCode=20;b(d,h)}),d;a.errorCode=20;b(d,!1)}return d};
k.Fc=function(a,b){if(a.errorCode)return-1;do{if(a.Ma&&a.ua.write(a.Ma,a.gb++,b))break;a.ua&&a.ua.seek(a.Ud,a.Ka,a.ab+a.tg,!0,function(b){a.Ma=b});if(!a.Ma){a.errorCode=20;b=-1;break}a.gb=0;this.hf(a)}while(1);return b};k.hf=function(a){a.ab++;var b=1-a.tg;a.ab>=a.ub+b&&(a.ab=b,a.Ka++,a.Ka>=a.pb&&(a.Ka=0,a.Ud++))};
k.oj=function(a,b){if(a.errorCode)return-1;a.nc[a.ge++]=b;if(a.ge==a.nc.length){a.Ud=a.nc[0];a.Ka=a.nc[1];a.ab=a.nc[2];a.nb=128<<a.nc[3];for(var c=a.ge=0;c<a.nb;c++)if(0>this.Fc(a,a.Bj))return-1;a.of++}a.of>=a.yd&&(b=-1);return b};k.$m=function(){var a=this.la.K&255;!(this.la.H>>8)&&128<a&&(this.Re=a-128);return!0};k.an=function(){var a;(a=this.la.H>>8)||(a=!this.ka)||(a=!(this.ka.yb[0].ed&64));return a?!0:!1};
var yk={800:$.prototype.Ym,801:$.prototype.Zm,802:$.prototype.Xm},xk={496:$.prototype.jm,497:$.prototype.lm,498:$.prototype.mm,499:$.prototype.nm,500:$.prototype.im,501:$.prototype.hm,502:$.prototype.km,503:$.prototype.om},Ak={800:$.prototype.io,801:$.prototype.lo,802:$.prototype.ko,803:$.prototype.jo,807:$.prototype.bj,811:$.prototype.bj,815:$.prototype.bj},zk={496:$.prototype.xn,497:$.prototype.Cn,498:$.prototype.An,499:$.prototype.Bn,500:$.prototype.wn,501:$.prototype.vn,502:$.prototype.yn,503:$.prototype.un,
1014:$.prototype.zn};za(function(){for(var a=x(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new $(d);Na(d,c)}});var sh=1,Zi=128,Ki=4194304,se=536870912;function I(a,b,c){this.id=a.id;this.key=Gk(a,b,c);this.Ra=a.Ra;Jk(this,a.mo)}function Gk(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}
I.prototype={set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.Sh=!0):this.Sh?!0:pa()&&(a=qa(this.key))?(this[this.id]=a,this.Sh=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){r(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){Jk(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c,1);c=0}},Mb:function(){}};function Jk(a,b){a[a.id]={};b&&a.set("parms",b);a.Sh=!1}
function Kk(a){var b=!0;if(pa()){var c=JSON.stringify(a[a.id]);ra(a.key,c)||(r("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
function Lk(a,b,c){u.call(this,"Computer",a,Lk);this.na.Lb=!1;this.yf=a.buswidth;this.Dc=Mk;this.Xf=null;this.Ig=!1;this.url=b?b.url:null;this.uo=(Math.random()+0.1).toString(36).substr(2,12);this.Ec=Nk(this);if(this.la=Ma("CPU",this.id)){this.Ra=Ma("Debugger",this.id);this.qa=new Ta({id:this.ak+".bus",buswidth:this.yf},this.la,this.Ra);var d,e=Ka(this.id);if((this.Tf=Ma("Panel",this.id))&&this.Tf.Fh)for(b=0;b<e.length;b++)d=e[b],d.Aa=this.Tf.Aa,d.fc=this.Tf.fc,d.Fh=this.Tf.Fh;for(b=0;b<e.length;b++)d=
e[b],d.sc&&d.sc(this,this.qa,this.la,this.Ra);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.ih=d:this.Dc=parseInt(d,10));var f;if(a=Fa&&Fa.state||(f=!0,a.state))b=this.vl=a,f||(this.Ig=!0,this.Dc=Mk),this.Dc&&(this.lh=new I(this,"1.16.1"),this.lh.load()?b=null:delete this.lh);!b&&this.Dc&&(f=null,this.Ec&&(f=ma()+"/api/v1/user?req=load&user="+this.Ec+"&state="+Gk(this,"1.16.1")),b=f)&&(this.Ig=!0);b?la(b,!0,null,this,this.on):this.Pa();c||Ok(this,this.$g)}else r("Unable to find CPU component")}
v(u,Lk);var Mk=0;k=Lk.prototype;k.Qe=function(){return this.uo};k.Hd=function(){return this.Ec?this.Ec:""};k.on=function(a,b,c){c?(this.ih=null,this.Ig=!1,this.Aa("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Xf=b;this.Pa()};function Ok(a,b,c){for(var d=Ka(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Pa(f)){Pa(f,function(){Ok(a,b,c)});return}}b.call(a,c)}
function Pk(a,b){var c=new I(a,"1.16.1","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Aa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.$g=function(a){void 0===a&&(a=this.Dc||(this.Xf?1:Mk));var b=!1,c=!1;this.Uj=!1;var d=this.lh||new I(this,"1.16.1");if(-1==a)b=!0;else if(a>Mk){if(d.load(this.Xf)){this.ye=new I(this,"1.16.1","failsafe");this.ye.load()&&(Qk(this,d),a=2,Jk(this.ye));this.ye.set("timestamp",ja());Kk(this.ye);var e=this.Dc&&!this.Ig;if(1==a||na("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
f&&"no machine state"!=g?(this.Aa("Error: "+g),"unable to verify user"==g&&(ra("user",""),this.Ec=null)):this.fc(f+": "+g),Jk(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Pk(this,c?d:null)}else 2==a&&d.clear()}else Pk(this);delete this.Xf;delete this.lh}e=Ka(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.la&&(c=Rk(this,g,d,b,c));b=[d,a,c];-1!=a?Ok(this,this.Mj,b):this.Mj(b)};
function Rk(a,b,c,d,e){if(!b.na.Lb){b.na.Lb=!0;if(b.Yb){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.Yb(f,d)&&f&&(r("Unable to restore state for "+b.type),a.vl&&!a.Xf?(c.clear(),a.Dc=Mk,window&&window.location.reload()):a.Uj=!0,b.Yb(null),e=!1)}if(!d&&b.Ij)for(a=b.Ij.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.Mj=function(a){var b=a[0],c=0>a[1];a=a[2];this.na.Lb=!0;this.Qj||(this.fc("PCjs v1.16.1\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Qj=!0);this.la&&Rk(this,this.la,b,c,a);this.Uj&&(Qk(this,b),b.clear());!c&&this.ye&&(this.ye.clear(),delete this.ye)};
function Qk(a,b){if(na("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.Hd(),d=b.toString(),e={app:"PCjs",ver:"1.16.1"};e.url=a.url;e.user=c;e.type="bug";e.data=d;la("http://www.pcjs.org/api/v1/report",!0,e)}}
function Sk(a,b,c){var d,e="none",f=new I(a,"1.16.1"),g=new I(a,"1.16.1","validate"),h=ja();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.16.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.la&&a.la.Xb&&(c&&qb(a.la),d=a.la.Xb(b,c),"object"===typeof d&&f.set(a.la.id,d),c&&(a.la.na.Lb=!1,!1===d&&(e=null)));for(var h=Ka(a.id),m=0;m<h.length;m++){var n=h[m];n.na.Lb&&(n.Xb&&(d=n.Xb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.na.Lb=
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.Ec&&Tk(a,a.Ec,f.toString()),Kk(g)&&Kk(f)||(e=null,d=h=!0)):a.Dc&&(d=!0,h=3==a.Dc),d&&f.clear(h)):e=f.toString());c&&(a.na.Lb=!1);return e}k.reset=function(){this.qa&&this.qa.reset&&(this.Mb("Resetting "+this.qa.type),this.qa.reset());for(var a=Ka(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.qa&&c.reset&&(this.Mb("Resetting "+c.type),c.reset())}};
if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var h=a.charAt(a.length-1).toLowerCase();"h"==h?(b=16,h=null):"."==h&&(b=10,h=null);null===h&&(a=a.substr(0,a.length-1))}var m;ca(a,b)&&!isNaN(m=parseInt(a,b))&&(g=m)}a=g;null!=a&&ok(d,a)},!0;case "loadDrive":return this.ra[b]=c,c.onclick=function(){var a=d.ra.listDisks;a&&pk(d,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return this.Oj?(this.ra[b]=c,c.addEventListener("change",function(){var a=
c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;pk(d,ea(b,!0),b,a)}return!1}):c.parentNode.removeChild(c),!0}return!1};k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;this.Na=a;this.ka=z(a,"ChipSet");this.ld();fb(b,this,qk);hb(b,this,rk);this.Oj&&sk(this,"Local Disk","?");sk(this,"Remote Disk","??");this.kf()||this.Qa()};
k.Xb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Na.Rh){this.nc=[];for(var c=0;c<this.za.length;c++)tk(this,c,!0);this.kf(!0)}}else if(!this.restore(a))return!1;if(c=this.ra.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.li;d++){var e=window.document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.li&&(c.value="0",ok(this,0))}}return!0};
k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ld()};k.save=function(){var a=new I(this);a.set(0,this.gj());return a.data()};k.restore=function(a){return this.ld(a[0])};
k.ld=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.eb=a[b++];b++;this.wa=a[b++];this.Zb=a[b++];this.xb=a[b++];this.hb=a[b++];this.bf=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.nc=c);void 0===this.za&&(this.li=4,this.ka&&(this.li=Zh(this.ka)),this.za=Array(4));for(c=0;c<this.za.length;c++){var f=this.za[c];if(void 0===f){var f=this.za[c]={},g;if(this.ka)a:{g=this.ka;if(c<Zh(g)){if(!g.sd){g=360;break a}if(c<g.sd.length){g=g.sd[c];break a}}g=0}else g=0;switch(g){case 160:case 180:f.pb=
1;default:f.ob=40;f.vb=9;break;case 720:f.ob=80;f.vb=9;break;case 1200:f.ob=80;f.vb=15;break;case 1440:f.ob=80,f.vb=18}}this.ai(f,c,e[c])||(d=!1)}this.Qd=a[b++]||0;this.ll=a[b]||0;return d};k.gj=function(){var a=0,b=[];b[a++]=this.eb;b[a++]=0;b[a++]=this.wa;b[a++]=this.Zb;b[a++]=this.xb;b[a++]=this.hb;b[a++]=this.bf;b[a++]=this.ij();for(var c=a++,d=0;d<this.za.length;d++){var e=this.za[d];e.ua&&uk(this,e.ue,e.ua)}b[c]=this.nc;b[a++]=this.Qd;b[a]=this.ll;return b};
k.ai=function(a,b,c){var d=0,e=!0;a.eb=b;a.zc=a.Ne=!1;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.ob||40,a.pb||c[3],a.vb||9,a.fb||512,c[1],a.Sg,a.Ef,a.Ff]);a.$a=c[d++];var f=c[d++];a.name=f[0];a.ob=f[1];a.pb=f[2];a.vb=f[3];a.fb=f[4];a.Oe=f[5];(a.Sg=f[6])?(a.Ef=f[7],a.Ff=f[8]):(a.Sg=a.ob,a.Ef=a.pb,a.Ff=a.vb);a.Ka=c[d++];a.vd=c[d++];a.sb=c[d++];a.vd=100<=a.vd?a.vd-100:a.vd-a.sb;a.cb=c[d++];a.xd=c[d++];a.nb=c[d++];a.Ta=c[d++];a.Oa=null;a.ua||(a.ue="");var g=c[d++];
102==g&&(g=!1);"boolean"==typeof g?(f=c[d++],c=c[d],g?(d=this.za[b],tk(this,b,!0,!0),d.Ne=!0,b=new ck(this,d,"preload"),this.Ij(d,b,f,c,!0)):vk(this,b,f,c,!0)?a.ua&&c&&wk(this,f,c,a.ua):this.Qa(!1)):void 0!==g&&a.ua&&0>a.ua.restore(g)&&(e=!1);e&&a.ua&&void 0!==a.Ta&&(a.Oa=a.ua.seek(a.sb,a.Ka,a.cb));return e};k.ij=function(){for(var a=0,b=[],c=0;c<this.za.length;c++)b[a++]=this.hj(this.za[c]);return b};
k.hj=function(a){var b=0,c=[];c[b++]=a.$a;c[b++]=[a.name,a.ob,a.pb,a.vb,a.fb,a.Oe,a.Sg,a.Ef,a.Ff];c[b++]=a.Ka;c[b++]=a.vd+100;c[b++]=a.sb;c[b++]=a.cb;c[b++]=a.xd;c[b++]=a.nb;c[b++]=a.Ta;c[b++]=a.Ne;c[b++]=a.ql;c[b]=a.ue;return c};k.kf=function(a){a||(this.ce=0);if(this.fe)for(var b in this.fe){var c=this.fe[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.za.length){!vk(this,d,c.name,c.path,!0)&&a&&this.Qa(!1);continue}}this.Aa("Unrecognized auto-mount specification for drive "+b)}return!!this.ce};
function pk(a,b,c,d){var e,f=a.ra.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.za.length)if(c)if("?"==c)a.Aa('Use "Choose File" and "Load" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=ea(c);a.fc("Attempting to load "+c+' as "'+b+'"')}for(a.fc("loading disk "+c+"...");vk(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=
a,g=c,h=void 0,h=0;h<f.nc.length;h++)if(f.nc[h][1]==g){f.nc.splice(h,1);break}tk(a,e,!1,!0)}}else tk(a,e);else a.Aa("Nothing to load")}function vk(a,b,c,d,e,f){var g=a.za[b];if(d&&g.ue!=d){tk(a,b,e,!0);if(g.zc)return a.Aa("Drive "+b+" busy"),!0;g.zc=!0;e&&(g.ke=!0,a.ce++);g.Ne=!!f;(new ck(a,g,"preload")).load(c,d,f,a.Ij);return!1}return!0}
k.Ij=function(a,b,c,d,e){var f;a.zc=!1;b&&(f=b.info(),b&&f[0]>a.ob||f[1]>a.pb)&&(this.Aa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.eb)),b=null);b?(a.ua=b,a.ql=c,a.ue=d,wk(this,c,d,b),f=b.info(),this.Qd|=128,this.Aa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.eb),a.ke||e),a.Sg=f[0],a.Ef=f[1],a.Ff=f[2]):a.Ne=!1;a.ke&&(a.ke=!1,--this.ce||this.Qa());ok(this,a.eb)};
function sk(a,b,c){if(a=a.ra.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}function ok(a,b){if(0<=b&&b<a.za.length){var c=a.za[b],d=a.ra.listDisks,e=a.ra.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.Ne?"?":c.ue,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}
function tk(a,b,c,d){var e=a.za[b];e.ua&&(uk(a,e.ue,e.ua),e.ql="",e.ue="",e.ua=null,e.Ne=!1,a.Qd|=128,d||a.Aa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||ok(a,b))}function wk(a,b,c,d){var e;for(e=0;e<a.nc.length;e++)if(a.nc[e][1]==c){d.restore(a.nc[e][2]);return}a.nc[e]=[b,c,[]]}function uk(a,b,c){var d;for(d=0;d<a.nc.length;d++)if(a.nc[d][1]==b){a.nc[d][2]=c.save();break}}k.Kn=function(a,b){b&4?this.bf&4||this.bf&8&&this.ka&&vi(this.ka,6):this.ld();this.bf=b};k.vm=function(){return this.wa};
k.tm=function(){var a=0;this.xb<this.hb&&(a=this.Zb[this.xb]);this.bf&8&&this.ka&&wi(this.ka,6);++this.xb>=this.hb&&(this.wa&=-81,this.xb=this.hb=0);return a};
k.Jn=function(a,b){this.hb<this.Zb.length&&(this.Zb[this.hb++]=b);var c=this.Zb[0]&31;if(void 0!==nk[c]&&this.hb>=nk[c].fd){var d=!1;this.xb=0;var c=this.Ja(),e,f,g,h,m,n=c&31;switch(n){case 3:this.Ja(l.fp);this.Ja(l.Mo);this.Kb();break;case 4:f=this.Ja(l.cf);this.eb=f&3;e=this.za[this.eb];this.Kb();this.Yb((e.$a&4278190080)>>>24,l.ip);break;case 5:case 6:f=this.Ja(l.cf);d=f>>2&1;this.eb=f&3;e=this.za[this.eb];e.Ka=d;f=e.sb=this.Ja(l.pj);g=this.Ja(l.qj);h=e.cb=this.Ja(l.sj);m=this.Ja(l.oh);e.nb=128<<
m;e.xd=this.Ja(l.Ho);this.Ja(l.Bl);this.Ja(l.Go);6==n?(n=e,n.$a=72,n.ua&&(n.Oa=null,n.$a=0,this.ka&&(li(this.ka,2,this,"dmaRead",n),hi(this.ka,2)))):(n=e,n.$a=72,n.ua&&(n.ua.Pe?n.$a=576:(n.Oa=null,n.$a=0,this.ka&&(li(this.ka,2,this,"dmaWrite",n),hi(this.ka,2)))));xk(this,e,c,d,f,g,h,m);d=!0;break;case 7:f=this.Ja(l.cf);this.eb=f&3;e=this.za[this.eb];e.sb=e.vd=0;e.$a=268435488;this.Kb();d=!0;break;case 8:e=this.za[this.eb];e.Ka=0;this.Kb();this.Yb(e.eb|e.Ka<<2|e.$a&255,l.Dl);this.Yb(e.sb,l.Vo);this.eb=
this.eb+1&3;break;case 10:f=this.Ja(l.cf);d=f>>2&1;this.eb=f&3;e=this.za[this.eb];f=e.sb;g=e.Ka=d;h=e.cb=1;m=0;e.$a=0;e.ua&&(e.Oa=e.ua.seek(e.sb,e.Ka,e.cb))?m=e.Oa.length:e.$a=72;xk(this,e,c,d,f,g,h,m);d=!0;break;case 13:f=this.Ja(l.cf);d=f>>2&1;this.eb=f&3;e=this.za[this.eb];f=e.sb;g=e.Ka=d;h=1;m=this.Ja(l.oh);e.nb=128<<m;e.xd=this.Ja(l.ap);this.Ja(l.Bl);e.zj=this.Ja(l.Al);n=e;n.$a=72;n.ua&&(n.Oa=null,n.$a=0,this.ka&&(n.Je=0,n.uc=Array(4),n.xh=!0,n.ug=0,li(this.ka,2,this,"dmaFormat",n),hi(this.ka,
2),n.xh=!1));xk(this,e,c,d,f,g,h,m);d=!0;break;case 15:f=this.Ja(l.cf),this.eb=f&3,e=this.za[this.eb],e.Ka=f>>2&1,f=this.Ja(l.So),e.sb+=f-e.vd,0>e.sb&&(e.sb=0),e.sb>=e.ob&&(e.sb=e.ob-1),e.vd=f,e.$a=32,e.sb||(e.$a|=268435456),this.Kb(),d=!0}0<this.hb&&(this.wa|=80);this.bf&8&&(!e||e.$a&8||!d||this.ka&&vi(this.ka,6))}};k.um=function(){var a=this.Qd;this.Qd&=-129;return a};k.In=function(a,b){this.ll=b};
function xk(a,b,c,d,e,f,g,h){a.Kb();a.Yb(b.eb|b.Ka<<2|b.$a&255,l.Dl);a.Yb((b.$a&65280)>>>8,l.gp);a.Yb((b.$a&16711680)>>>16,l.hp);var m=0;if(e!=b.sb||f!=b.Ka)m=g=1;c&128&&(f^=m,d||(m=0));a.Yb(e+m,l.pj);a.Yb(f,l.qj);a.Yb(g,l.sj);a.Yb(h,l.oh)}k.Ja=function(){var a=this.Zb[this.xb];this.xb++;return a};k.Kb=function(){this.xb=this.hb=0};k.Yb=function(a){this.Zb[this.hb++]=a};k.Ih=function(a,b,c){void 0===b||0>b?this.Cc(a,c):c(-1,!1)};k.Jh=function(a,b){return void 0!==b&&0<=b?this.Fc(a,b):-1};
k.Kl=function(a,b){return void 0!==b&&0<=b?this.mj(a,b):-1};k.Cc=function(a,b){var c=-1;if(!a.$a&&a.ua){do{if(a.Oa&&0<=(c=lk(a.Oa,a.Ta++)))break;a.Oa=a.ua.seek(a.sb,a.Ka,a.cb);if(!a.Oa){a.$a=1088;break}a.Ta=0;this.hf(a)}while(1)}b(c,!1)};k.Fc=function(a,b){if(a.$a||!a.ua)return-1;do{if(a.Oa&&a.ua.write(a.Oa,a.Ta++,b))break;a.Oa=a.ua.seek(a.sb,a.Ka,a.cb);if(!a.Oa){a.$a=8256;b=-1;break}a.Ta=0;this.hf(a)}while(1);return b};k.hf=function(a){a.cb++;a.cb>=a.Ff+1&&(a.cb=1,a.Ka++,a.Ka>=a.Ef&&(a.Ka=0,a.sb++))};
k.mj=function(a,b){if(a.$a)return-1;a.uc[a.Je++]=b;if(a.Je==a.uc.length){a.sb=a.uc[0];a.Ka=a.uc[1];a.cb=a.uc[2];a.nb=128<<a.uc[3];for(var c=a.Je=0;c<a.nb;c++)if(0>this.Fc(a,a.zj))return-1;a.ug++}a.ug>=a.xd&&(b=-1);return b};var qk={1012:mk.prototype.vm,1013:mk.prototype.tm,1015:mk.prototype.um},rk={1010:mk.prototype.Kn,1013:mk.prototype.Jn,1015:mk.prototype.In};za(function(){for(var a=y(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new mk(d);Na(d,c)}});
function $(a){u.call(this,"HDC",a,$);this.dmaRead=this.Ih;this.dmaWrite=this.Jh;this.dmaWriteBuffer=this.Ll;this.dmaWriteFormat=this.Ml;this.qh=[];if(a.drives)try{this.qh=eval("("+a.drives+")")}catch(b){r("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.vf=(this.je="at"==a.type)?1:0;this.$l=this.je?2:3}v(u,$);
var yk=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];k=$.prototype;k.Fb=function(){return!1};k.sc=function(a,b,c,d){this.qa=b;this.la=c;this.Sa=d;this.Na=a;this.ka=z(a,"ChipSet");fb(b,this,this.je?zk:Ak);hb(b,this,this.je?Bk:Ck);Bc(c,19,this,this.Xm);Bc(c,64,this,this.Ym);this.reset();this.kf()||this.Qa()};
k.Xb=function(a,b){if(!b)if(!a||!this.restore)this.ld(),this.Na.Rh&&this.kf(!0);else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.Qe=function(){return this.Na?this.Na.Qe():""};k.Gd=function(){return this.Na?this.Na.Gd():""};k.reset=function(){this.ld(null,!0)};k.save=function(){var a=new I(this);a.set(0,this.gj());return a.data()};k.restore=function(a){return this.ld(a[0])};
k.ld=function(a,b){var c=0,d=!0;if(this.je)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.Pd=a[c++],this.pl=a[c++],this.Rd=a[c++],this.eh=a[c++],this.bh=a[c++],this.ah=a[c++],this.af=a[c++],this.wa=a[c++],this.ej=a[c++],this.dh=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.Sf=a[c++];this.wa=a[c++];this.Zb=a[c++];this.xb=a[c++];this.hb=a[c++];this.ol=a[c++];this.nl=a[c++];this.ml=a[c++];var e=a[c++];void 0!==e?this.Re=e:void 0===this.Re&&(this.Re=-1)}void 0===this.za&&(this.za=Array(this.qh.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.ai(e,f,this.qh[e],c[e],b)||(d=!1);null!=this.Sf&&1>=e&&(this.Sf|=(f.type&3)<<(1-e<<1))}return d};
k.gj=function(){var a=0,b=[];this.je?(b[a++]=this.Pd,b[a++]=this.pl,b[a++]=this.Rd,b[a++]=this.eh,b[a++]=this.bh,b[a++]=this.ah,b[a++]=this.af,b[a++]=this.wa,b[a++]=this.ej,b[a++]=this.dh):(b[a++]=this.Sf,b[a++]=this.wa,b[a++]=this.Zb,b[a++]=this.xb,b[a++]=this.hb,b[a++]=this.ol,b[a++]=this.nl,b[a++]=this.ml,b[a++]=this.Re);b[a]=this.ij();return b};
k.ai=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.eb=a;b.errorCode=d[f++];b.ul=d[f++];b.Oe=d[f++];b.De=d[f++];b.Ee=d[f++];b.Ka=d[f++];b.pb=d[f++];b.Ud=d[f++];b.cb=d[f++];b.xd=d[f++];b.nb=d[f++];b.rg=this.je?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.Gd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===yk[this.vf][b.type])b.type=this.$l;c=yk[this.vf][b.type];
b.vb=c[2]||17;b.fb=c[3]||512;if(e&&this.ka&&(e=this.ka,c=b.type,e.ja)){var h=e.ja[18],h=a?h&240|c:h&15|c<<4;e.ja&&(e.ja[18]=h,Rh(e))}void 0===b.ua&&(b.ua=null,this.Aa("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Dk(this,b);b.Ta=d[f++];b.Oa=null;b.ua&&(a=d[f],void 0!==a&&0>b.ua.restore(a)&&(g=!1),g&&void 0!==b.Ta&&(b.Oa=b.ua.seek(b.Ud,b.Ka,b.cb+b.rg)));return g};k.ij=function(){for(var a=0,b=[],c=0;c<this.za.length;c++)b[a++]=this.hj(this.za[c]);return b};
k.hj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.ul;c[b++]=a.Oe;c[b++]=a.De;c[b++]=a.Ee;c[b++]=a.Ka;c[b++]=a.pb;c[b++]=a.Ud;c[b++]=a.cb;c[b++]=a.xd;c[b++]=a.nb;c[b++]=a.Ta;c[b]=a.ua?a.ua.save():null;return c};
function Dk(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.De[2])?e=b.De[0]<<8|b.De[1]:c=b.type);null==c||d||(d=yk[a.vf][c][1],e=yk[a.vf][c][0]);d&&((c=yk[a.vf][b.type])&&e!=c[0]&&d!=c[1]&&a.Aa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.ob=e,b.pb=d,null==b.ua&&(b.ua=new ck(a,b,b.mode)))}}
k.kf=function(a){a||(this.ce=0);for(var b=0;b<this.za.length;b++){var c=this.za[b];if(c.name&&c.path){if(!(a&&c.ua&&c.ua.Eg)){var d;d=c.name;var c=c.path,e=this.za[b];e.zc?(this.Aa("Drive "+b+" busy"),d=!0):(e.zc=!0,e.ke=!0,this.ce++,(e.ua||new ck(this,e,e.mode)).load(d,c,null,this.Ol),d=!1);!d&&a&&this.Qa(!1)}}else a&&void 0!==c.type&&(c.ua=null,Dk(this,c,c.type))}return!!this.ce};
k.Ol=function(a,b,c){a.zc=!1;(a.ua=b)&&this.Aa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.eb),a.ke);a.ke&&(a.ke=!1,--this.ce||this.Qa())};k.Vm=function(){var a=0;this.xb<this.hb&&(a=this.Zb[this.xb]);this.ka&&wi(this.ka,5);this.wa&=-33;++this.xb>=this.hb&&(this.xb=this.hb=0,this.wa&=-15);return a};k.ho=function(a,b){this.hb<this.Zb.length&&(this.Zb[this.hb++]=b);var c=12!=this.Zb[0]?6:this.Zb.length;6==this.hb&&(this.wa&=-2);this.hb>=c&&(this.wa|=2,this.wa&=-2,Ek(this))};
k.Wm=function(){var a=this.wa;this.xb<this.hb&&(this.wa|=1);return a};k.ko=function(a,b){this.ol=b;this.ka&&wi(this.ka,5);this.ld()};k.Um=function(){return this.Sf};k.jo=function(a,b){this.nl=b;this.wa=13};k.io=function(a,b){this.ml=b};k.$i=function(){};
k.gm=function(){var a=-1;if(this.La&&(a=this.Cc(this.La),1!=this.La.Ta&&this.La.Ta==this.La.fb))if(this.La.nb-=this.La.fb,this.Rd=this.Rd-1&255,this.La.nb>=this.La.fb){var b=this;b.wa=136;this.Cc(this.La,function(a){0<=a?(Fk(b),b.wa=80):(b.wa=1,b.Pd=16)},!1)}else this.wa=80;return a};
k.un=function(a,b){this.La&&this.La.nb>=this.La.fb&&(0>this.Fc(this.La,b)?(this.wa=1,this.Pd=16):1!=this.La.Ta&&this.La.Ta==this.La.fb&&(this.La.nb-=this.La.fb,this.Rd=this.Rd-1&255,Fk(this),this.wa=80,this.La.nb>=this.La.fb&&(this.wa|=8)))};k.im=function(){return this.Pd};k.zn=function(a,b){this.pl=b};k.jm=function(){return this.Rd};k.xn=function(a,b){this.Rd=b};k.km=function(){return this.eh};k.yn=function(a,b){this.eh=b};k.fm=function(){return this.bh};k.tn=function(a,b){this.bh=b};k.em=function(){return this.ah};
k.sn=function(a,b){this.ah=b};k.hm=function(){return this.af};k.vn=function(a,b){this.af=b;this.wa=this.za[this.af&16?1:0]?this.wa|64:this.wa&-65};k.lm=function(){return this.wa};k.rn=function(a,b){this.ej=b;this.ka&&wi(this.ka,14);Gk(this)};k.wn=function(a,b){this.dh&4&&!(b&4)&&(this.Pd=1);this.dh=b};
function Gk(a){var b=!1,c=a.ej,d=a.af&16?1:0,e=a.af&15,f=a.bh|(a.ah&3)<<8,g=a.eh,h=a.Rd||256;a.La=null;a.Pd=0;a.wa=80;(d=a.za[d])?(d.Ud=f,d.Ka=e,d.cb=g,d.nb=h*d.fb,c=144<=c?c:c&240,d.Oa=null,d.Ta=0,d.errorCode=0,a.La=d):c=-1;switch(c&240){case 32:a.wa=136;a.Cc(d,function(b){0<=b&&a.ka?(Fk(a),a.wa=80):(a.wa=1,a.Pd=16)},!1);break;case 48:a.wa=8;break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Pd=1;b=!0;break;case 145:d.pb=e+1,d.vb=h,b=!0}b&&Fk(a)}
function Fk(a){!a.ka||a.dh&2||vi(a.ka,14,120)}
function Ek(a){a.xb=0;var b=a.Ja(),c=a.Ja(),d=c&32,e=d>>5,f=c&31,g=a.Ja(),h=a.Ja(),m=g<<2&768|h,n=g&63,q=a.Ja(),s=a.Ja(),t=a.za[e];t&&(t.Ud=m,t.Ka=f,t.cb=n,t.nb=q*t.fb);switch(b){case 3:a.Kb(t?t.errorCode:4);a.Yb(c);a.Yb(g);a.Yb(h);a.Yb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ja());)t&&c<t.De.length&&(t.De[c++]=b);t&&Dk(a,t);b=0;t||a.Re!=e||(a.Re=-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===t?b=-1:(t.errorCode=0,t.ul=0),b){case 0:a.Kb(0|d);break;case 1:t.yp=
s;a.Kb(0|d);break;case 5:a.Kb(0|d);break;case 8:Hk(a,t,function(b){a.Kb(b|d)});break;case 10:Ik(a,t,function(b){a.Kb(b|d)});break;case 15:Lk(a,t,function(b){a.Kb(b|d)});break;default:a.Kb(2|d)}}k.Ja=function(){var a=-1;this.xb<this.hb&&(a=this.Zb[this.xb++]);return a};k.Kb=function(a){this.xb=this.hb=0;void 0!==a&&this.Yb(a);this.ka&&vi(this.ka,5);this.wa|=32};k.Yb=function(a){this.Zb[this.hb++]=a};k.Ih=function(a,b,c){void 0===b||0>b?this.Cc(a,c):c(-1,!1)};
k.Jh=function(a,b){return void 0!==b&&0<=b?this.Fc(a,b):-1};k.Ll=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Ta<a.Ee.length?a.Ee[a.Ta++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.Ml=function(a,b){return void 0!==b&&0<=b?this.mj(a,b):-1};function Hk(a,b,c){b.errorCode=4;if(b.ua&&(b.Oa=null,a.ka)){b.errorCode=0;li(a.ka,3,a,"dmaRead",b);hi(a.ka,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}
function Ik(a,b,c){b.errorCode=4;if(b.ua&&(b.Oa=null,a.ka)){b.errorCode=0;li(a.ka,3,a,"dmaWrite",b);hi(a.ka,3,function(a){a||(0==b.errorCode&&(b.errorCode=4),20==b.errorCode&&(b.errorCode=0));c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function Lk(a,b,c){b.errorCode=4;b.Ee&&b.Ee.length==b.nb||(b.Ee=Array(b.nb));b.Ta=0;a.ka?(b.errorCode=0,li(a.ka,3,a,"dmaWriteBuffer",b),hi(a.ka,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.Cc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Oa&&(d=lk(a.Oa,a.Ta),a.Ta+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;if(a.ua)return a.ua.seek(a.Ud,a.Ka,a.cb+a.rg,!1,function(c,h){(a.Oa=c)?(a.Ta=0,f.hf(a),d=lk(a.Oa,a.Ta),a.Ta+=e):a.errorCode=20;b(d,h)}),d;a.errorCode=20;b(d,!1)}return d};
k.Fc=function(a,b){if(a.errorCode)return-1;do{if(a.Oa&&a.ua.write(a.Oa,a.Ta++,b))break;a.ua&&a.ua.seek(a.Ud,a.Ka,a.cb+a.rg,!0,function(b){a.Oa=b});if(!a.Oa){a.errorCode=20;b=-1;break}a.Ta=0;this.hf(a)}while(1);return b};k.hf=function(a){a.cb++;var b=1-a.rg;a.cb>=a.vb+b&&(a.cb=b,a.Ka++,a.Ka>=a.pb&&(a.Ka=0,a.Ud++))};
k.mj=function(a,b){if(a.errorCode)return-1;a.uc[a.Je++]=b;if(a.Je==a.uc.length){a.Ud=a.uc[0];a.Ka=a.uc[1];a.cb=a.uc[2];a.nb=128<<a.uc[3];for(var c=a.Je=0;c<a.nb;c++)if(0>this.Fc(a,a.zj))return-1;a.ug++}a.ug>=a.xd&&(b=-1);return b};k.Xm=function(){var a=this.la.K&255;!(this.la.H>>8)&&128<a&&(this.Re=a-128);return!0};k.Ym=function(){var a;(a=this.la.H>>8)||(a=!this.ka)||(a=!(this.ka.Rb[0].Rc&64));return a?!0:!1};
var Ak={800:$.prototype.Vm,801:$.prototype.Wm,802:$.prototype.Um},zk={496:$.prototype.gm,497:$.prototype.im,498:$.prototype.jm,499:$.prototype.km,500:$.prototype.fm,501:$.prototype.em,502:$.prototype.hm,503:$.prototype.lm},Ck={800:$.prototype.ho,801:$.prototype.ko,802:$.prototype.jo,803:$.prototype.io,807:$.prototype.$i,811:$.prototype.$i,815:$.prototype.$i},Bk={496:$.prototype.un,497:$.prototype.zn,498:$.prototype.xn,499:$.prototype.yn,500:$.prototype.tn,501:$.prototype.sn,502:$.prototype.vn,503:$.prototype.rn,
1014:$.prototype.wn};za(function(){for(var a=y(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=w(c),d=new $(d);Na(d,c)}});var ue=1,te=32,aj=128,$i=32768,Li=4194304,se=536870912;function I(a,b,c){this.id=a.id;this.key=Mk(a,b,c);this.Sa=a.Sa;Nk(this,a.lo)}function Mk(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}
I.prototype={set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.Qh=!0):this.Qh?!0:pa()&&(a=qa(this.key))?(this[this.id]=a,this.Qh=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){r(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){Nk(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c,1);c=0}},cc:function(){}};function Nk(a,b){a[a.id]={};b&&a.set("parms",b);a.Qh=!1}
function Ok(a){var b=!0;if(pa()){var c=JSON.stringify(a[a.id]);ra(a.key,c)||(r("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
function Pk(a,b,c){u.call(this,"Computer",a,Pk);this.na.Lb=!1;this.wf=a.buswidth;this.Dc=Qk;this.Vf=null;this.Gg=!1;this.url=b?b.url:null;this.to=(Math.random()+0.1).toString(36).substr(2,12);this.Ec=Rk(this);if(this.la=Ma("CPU",this.id)){this.Sa=Ma("Debugger",this.id);this.qa=new Ta({id:this.Yj+".bus",buswidth:this.wf},this.la,this.Sa);var d,e=Ka(this.id);if((this.Rf=Ma("Panel",this.id))&&this.Rf.Fh)for(b=0;b<e.length;b++)d=e[b],d.Aa=this.Rf.Aa,d.fc=this.Rf.fc,d.Fh=this.Rf.Fh;for(b=0;b<e.length;b++)d=
e[b],d.sc&&d.sc(this,this.qa,this.la,this.Sa);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.hh=d:this.Dc=parseInt(d,10));var f;if(a=Fa&&Fa.state||(f=!0,a.state))b=this.sl=a,f||(this.Gg=!0,this.Dc=Qk),this.Dc&&(this.kh=new I(this,"1.16.1"),this.kh.load()?b=null:delete this.kh);!b&&this.Dc&&(f=null,this.Ec&&(f=ma()+"/api/v1/user?req=load&user="+this.Ec+"&state="+Mk(this,"1.16.1")),b=f)&&(this.Gg=!0);b?la(b,!0,null,this,this.ln):this.Qa();c||Sk(this,this.Zg)}else r("Unable to find CPU component")}
v(u,Pk);var Qk=0;k=Pk.prototype;k.Qe=function(){return this.to};k.Gd=function(){return this.Ec?this.Ec:""};k.ln=function(a,b,c){c?(this.hh=null,this.Gg=!1,this.Aa("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Vf=b;this.Qa()};function Sk(a,b,c){for(var d=Ka(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Pa(f)){Pa(f,function(){Sk(a,b,c)});return}}b.call(a,c)}
function Tk(a,b){var c=new I(a,"1.16.1","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Aa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.Zg=function(a){void 0===a&&(a=this.Dc||(this.Vf?1:Qk));var b=!1,c=!1;this.Rj=!1;var d=this.kh||new I(this,"1.16.1");if(-1==a)b=!0;else if(a>Qk){if(d.load(this.Vf)){this.we=new I(this,"1.16.1","failsafe");this.we.load()&&(Uk(this,d),a=2,Nk(this.we));this.we.set("timestamp",ja());Ok(this.we);var e=this.Dc&&!this.Gg;if(1==a||na("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
f&&"no machine state"!=g?(this.Aa("Error: "+g),"unable to verify user"==g&&(ra("user",""),this.Ec=null)):this.fc(f+": "+g),Nk(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Tk(this,c?d:null)}else 2==a&&d.clear()}else Tk(this);delete this.Vf;delete this.kh}e=Ka(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.la&&(c=Vk(this,g,d,b,c));b=[d,a,c];-1!=a?Sk(this,this.Jj,b):this.Jj(b)};
function Vk(a,b,c,d,e){if(!b.na.Lb){b.na.Lb=!0;if(b.Xb){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.Xb(f,d)&&f&&(r("Unable to restore state for "+b.type),a.sl&&!a.Vf?(c.clear(),a.Dc=Qk,window&&window.location.reload()):a.Rj=!0,b.Xb(null),e=!1)}if(!d&&b.Gj)for(a=b.Gj.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.Jj=function(a){var b=a[0],c=0>a[1];a=a[2];this.na.Lb=!0;this.Nj||(this.fc("PCjs v1.16.1\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.la&&Vk(this,this.la,b,c,a);this.Rj&&(Uk(this,b),b.clear());!c&&this.we&&(this.we.clear(),delete this.we)};
function Uk(a,b){if(na("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.Gd(),d=b.toString(),e={app:"PCjs",ver:"1.16.1"};e.url=a.url;e.user=c;e.type="bug";e.data=d;la("http://www.pcjs.org/api/v1/report",!0,e)}}
function Wk(a,b,c){var d,e="none",f=new I(a,"1.16.1"),g=new I(a,"1.16.1","validate"),h=ja();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.16.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.la&&a.la.Wb&&(c&&qb(a.la),d=a.la.Wb(b,c),"object"===typeof d&&f.set(a.la.id,d),c&&(a.la.na.Lb=!1,!1===d&&(e=null)));for(var h=Ka(a.id),m=0;m<h.length;m++){var n=h[m];n.na.Lb&&(n.Wb&&(d=n.Wb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.na.Lb=
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.Ec&&Xk(a,a.Ec,f.toString()),Ok(g)&&Ok(f)||(e=null,d=h=!0)):a.Dc&&(d=!0,h=3==a.Dc),d&&f.clear(h)):e=f.toString());c&&(a.na.Lb=!1);return e}k.reset=function(){this.qa&&this.qa.reset&&(this.cc("Resetting "+this.qa.type),this.qa.reset());for(var a=Ka(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.qa&&c.reset&&(this.cc("Resetting "+c.type),c.reset())}};
k.start=function(a,b){for(var c=Ka(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=Ka(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
k.Fb=function(a,b,c){var d=this;switch(b){case "save":return this.ra[b]=c,c.onclick=function(){var a=Nk(d,!0);if(a){var b=!(!d.Dc||d.ih),c=Sk(d,b);b?Tk(d,a,c):d.Aa("Resume disabled, machine state not saved")}},!0;case "reset":return this.ra[b]=c,c.onclick=function(){rb(d)},!0}return!1};
function Nk(a,b){var c=a.Ec;c||(c=qa("user"),void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email support@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Uk(a,c))||a.Aa("Your user ID has not been approved."))):b&&a.Aa("Browser local storage is not available"));return c}
function Uk(a,b){a.Ec=null;var c=la(ma()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(ra("user",c.data),a.Ec=c.data)}catch(e){r(e.message+" ("+d+")")}return a.Ec}
function Tk(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Gk(a,"1.16.1");d.data=c;b=la(ma()+"/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.Aa("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.Aa(c),ra("user",""),a.Ec=null)}}
function rb(a){if(a.Dc&&!a.ih){var b=na("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Sk(a,b,!0);!b&&a.vl?window&&window.location.reload():(b||(a.Th=!0),a.$g(Mk),a.Th=!1)}else a.reset(),a.la&&pb(a.la)}function z(a,b,c){a=Ka(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}
za(function(){for(var a=x(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=w(c),c=x(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=w(f),g=new Lk(g,d,!0);Na(g,f);Ok(g,g.$g)}});ta.show.push(function(){for(var a=x(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=w(a[b]);(c=Ma("Computer",c.id))&&c.Qj&&!c.na.Lb&&c.$g(-1)}});
ta.exit.push(function(){for(var a=x(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=w(a[b]);(c=Ma("Computer",c.id))&&c.na.Lb&&Sk(c,!(!c.Dc||c.ih),!0)}});var Vk=0;function Wk(a,b,c,d,e,f){e("Loading "+a+"...");la(a,!0,null,null,function(g,h,m){m?(h||(h="unable to load "+a+" ("+m+")"),f(h,null)):Xk(h,a,b,c,d,e,f)})}
function Xk(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){var h=b;h&&0>h.indexOf("/")&&(h=window.location.pathname+h);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(h?" url=$2"+h+"$2":""))}h=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(s){h=
null,a=s.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,h)}}a?e?Yk(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
function Yk(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");la(e,!0,null,null,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var m=h[0],n,q=/( [a-z]+=)(['"])(.*?)\2/g;n=q.exec(f);)m=0>m.indexOf(n[1])?m.replace(">",n[0]+">"):m.replace(new RegExp(n[1]+"(['\"])(.*?)\\1"),n[0]);h[0]!=m&&(g=g.replace(h[0],m))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);Yk(a,b,c)}})}else c(a,null)}
function Zk(a,b,c,d){function e(a){if(void 0===h){var b=g&&x(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ha(a))}function f(a){e("Error: "+a);m&&(--Vk||Ba(!0));m=!1}var g,h,m=!0;Vk++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.16.1/components.xsl");var n=function(a,d){if(d){var h=function(a,h){if(h)if(h)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var m=d.transformNode(h);m?(g.outerHTML=m,--Vk||Ba(!0)):f("transformNodeToObject failed")}else window.document.implementation&&
window.document.implementation.createDocument?(m=new XSLTProcessor,m.importStylesheet(h),(m=m.transformToFragment(d,window.document))?(g.parentNode.replaceChild(m,g),--Vk||Ba(!0)):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?Wk(c,null,null,!1,e,h):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?Wk(b,a,d,!0,e,n):Xk(b,null,a,d,!1,e,n)}else f("failed to find machine element: "+a)}catch(q){f(q.message)}return m}
window.embedPC=function(a,b,c,d){Ba(!1);return Zk(a,b,c,d)};window.enableEvents=Ba;window.sendEvent=Ca;})();
k.Fb=function(a,b,c){var d=this;switch(b){case "save":return this.ra[b]=c,c.onclick=function(){var a=Rk(d,!0);if(a){var b=!(!d.Dc||d.hh),c=Wk(d,b);b?Xk(d,a,c):d.Aa("Resume disabled, machine state not saved")}},!0;case "reset":return this.ra[b]=c,c.onclick=function(){rb(d)},!0}return!1};
function Rk(a,b){var c=a.Ec;c||(c=qa("user"),void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email support@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Yk(a,c))||a.Aa("Your user ID has not been approved."))):b&&a.Aa("Browser local storage is not available"));return c}
function Yk(a,b){a.Ec=null;var c=la(ma()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(ra("user",c.data),a.Ec=c.data)}catch(e){r(e.message+" ("+d+")")}return a.Ec}
function Xk(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Mk(a,"1.16.1");d.data=c;b=la(ma()+"/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.Aa("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.Aa(c),ra("user",""),a.Ec=null)}}
function rb(a){if(a.Dc&&!a.hh){var b=na("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Wk(a,b,!0);!b&&a.sl?window&&window.location.reload():(b||(a.Rh=!0),a.Zg(Qk),a.Rh=!1)}else a.reset(),a.la&&pb(a.la)}function z(a,b,c){a=Ka(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}
za(function(){for(var a=y(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=w(c),c=y(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=w(f),g=new Pk(g,d,!0);Na(g,f);Sk(g,g.Zg)}});ta.show.push(function(){for(var a=y(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=w(a[b]);(c=Ma("Computer",c.id))&&c.Nj&&!c.na.Lb&&c.Zg(-1)}});
ta.exit.push(function(){for(var a=y(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=w(a[b]);(c=Ma("Computer",c.id))&&c.na.Lb&&Wk(c,!(!c.Dc||c.hh),!0)}});var Zk=0;function $k(a,b,c,d,e,f){e("Loading "+a+"...");la(a,!0,null,null,function(g,h,m){m?(h||(h="unable to load "+a+" ("+m+")"),f(h,null)):al(h,a,b,c,d,e,f)})}
function al(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){var h=b;h&&0>h.indexOf("/")&&(h=window.location.pathname+h);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(h?" url=$2"+h+"$2":""))}h=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(s){h=
null,a=s.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,h)}}a?e?bl(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
function bl(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");la(e,!0,null,null,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var m=h[0],n,q=/( [a-z]+=)(['"])(.*?)\2/g;n=q.exec(f);)m=0>m.indexOf(n[1])?m.replace(">",n[0]+">"):m.replace(new RegExp(n[1]+"(['\"])(.*?)\\1"),n[0]);h[0]!=m&&(g=g.replace(h[0],m))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);bl(a,b,c)}})}else c(a,null)}
function cl(a,b,c,d){function e(a){if(void 0===h){var b=g&&y(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ha(a))}function f(a){e("Error: "+a);m&&(--Zk||Ba(!0));m=!1}var g,h,m=!0;Zk++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.16.1/components.xsl");var n=function(a,d){if(d){var h=function(a,h){if(h)if(h)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var m=d.transformNode(h);m?(g.outerHTML=m,--Zk||Ba(!0)):f("transformNodeToObject failed")}else window.document.implementation&&
window.document.implementation.createDocument?(m=new XSLTProcessor,m.importStylesheet(h),(m=m.transformToFragment(d,window.document))?(g.parentNode.replaceChild(m,g),--Zk||Ba(!0)):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?$k(c,null,null,!1,e,h):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?$k(b,a,d,!0,e,n):al(b,null,a,d,!1,e,n)}else f("failed to find machine element: "+a)}catch(q){f(q.message)}return m}
window.embedPC=function(a,b,c,d){Ba(!1);return cl(a,b,c,d)};window.enableEvents=Ba;window.sendEvent=Ca;})();