Lots of MACRO-10 improvements, DAKAM now assembles (but does not pass)

This commit is contained in:
Jeff 2017-04-03 16:10:08 -07:00 • committed by Jeff Parsons
commit 09dc4dcb9a
13 changed files with 22047 additions and 1758 deletions

View file

@ -27,93 +27,93 @@
http://pcjs.org/modules/pdp10/lib/debugger.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp10/lib/macro10.js (C) Jeff Parsons 2012-2017
*/
var m,aa="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(c.get||c.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)},ba="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global?global:this;function ca(){ca=function(){};ba.Symbol||(ba.Symbol=da)}var fa=0;function da(a){return"jscomp_symbol_"+(a||"")+fa++}
var m,aa="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(c.get||c.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)},ba="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global?global:this;function ca(){ca=function(){};ba.Symbol||(ba.Symbol=da)}var ea=0;function da(a){return"jscomp_symbol_"+(a||"")+ea++}
function ga(){ca();var a=ba.Symbol.iterator;a||(a=ba.Symbol.iterator=ba.Symbol("iterator"));"function"!=typeof Array.prototype[a]&&aa(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return ha(this)}});ga=function(){}}function ha(a){var b=0;return ia(function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}})}function ia(a){ga();a={next:a};a[ba.Symbol.iterator]=function(){return this};return a}
function ja(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a;for(var d in b)if(Object.defineProperties){var e=Object.getOwnPropertyDescriptor(b,d);e&&Object.defineProperty(a,d,e)}else a[d]=b[d]}function ma(a,b){if(b){var c=ba;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&aa(c,a,{configurable:!0,writable:!0,value:b})}}
ma("Math.trunc",function(a){return a?a:function(a){a=Number(a);if(isNaN(a)||Infinity===a||-Infinity===a||!a)return a;var b=Math.floor(Math.abs(a));return 0>a?-b:b}});ma("Math.log2",function(a){return a?a:function(a){return Math.log(a)/Math.LN2}});
var na={uc:0,Nb:1,wc:2,xc:3,yc:4,zc:5,Ac:6,Bc:7,yb:8,Cc:9,Ob:10,Dc:11,Ec:12,Pb:13,Fc:14,Gc:15,Hc:16,Ic:17,Jc:18,Kc:19,Lc:20,Mc:21,Nc:22,Oc:23,Pc:24,Qc:25,Rc: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,xb:65,tc:66,vc:67,Sc:68,E:69,Tc:70,Uc:71,Vc:72,Wc:73,Xc:74,Yc:75,Zc:76,$c:77,ad:78,bd:79,cd:80,Q:81,dd:82,ed:83,fd:84,gd:85,hd:86,jd:87,
function ja(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a;for(var d in b)if(Object.defineProperties){var e=Object.getOwnPropertyDescriptor(b,d);e&&Object.defineProperty(a,d,e)}else a[d]=b[d]}function la(a,b){if(b){var c=ba;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&aa(c,a,{configurable:!0,writable:!0,value:b})}}
la("Math.trunc",function(a){return a?a:function(a){a=Number(a);if(isNaN(a)||Infinity===a||-Infinity===a||!a)return a;var b=Math.floor(Math.abs(a));return 0>a?-b:b}});la("Math.log2",function(a){return a?a:function(a){return Math.log(a)/Math.LN2}});
var ma={uc:0,Nb:1,wc:2,xc:3,yc:4,zc:5,Ac:6,Bc:7,xb:8,Cc:9,Ob:10,Dc:11,Ec:12,Pb:13,Fc:14,Gc:15,Hc:16,Ic:17,Jc:18,Kc:19,Lc:20,Mc:21,Nc:22,Oc:23,Pc:24,Qc:25,Rc: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,wb:65,tc:66,vc:67,Sc:68,E:69,Tc:70,Uc:71,Vc:72,Wc:73,Xc:74,Yc:75,Zc:76,$c:77,ad:78,bd:79,cd:80,Q:81,dd:82,ed:83,fd:84,gd:85,hd:86,jd:87,
kd:88,ld:89,Rb:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,md:97,nd:98,od:99,d:100,e:101,pd:102,qd:103,rd:104,sd:105,td:106,k:107,ud:108,vd:109,n:110,wd:111,p:112,q:113,r:114,xd:115,t:116,zd:117,Ad:118,Bd:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,Qb:127};
function oa(a,b){var c;if(a){b||(b=10);var d,e,f=0<a.indexOf(",");f&&(a=a.replace(/,/g,""));d=e=a.charAt(0);"#"==e?(b=8,e=""):"$"==e&&(b=16,e="");d!=e?a=a.substr(1):(d=e=a.substr(0,2),"0b"==e&&f||"^B"==e?(b=2,e=""):"0o"==e||"^O"==e?(b=8,e=""):"^D"==e?(b=10,e=""):"0x"==e&&(b=16,e=""),d!=e&&(a=a.substr(2)));d=e=a.slice(-1);"Y"==e||"y"==e?(b=2,e=""):"."==e?(b=10,e=""):"H"==e||"h"==e?(b=16,e=""):"K"==e?e="000":"M"==e?e="000000":"G"==e&&(e="000000000");d!=e&&(a=a.slice(0,-1)+e);var g;d=0;if(e=a.match(/(-?[0-9]+)B([0-9]*)/))a=
function na(a,b){var c;if(a){b||(b=10);var d,e,f=0<a.indexOf(",");f&&(a=a.replace(/,/g,""));d=e=a.charAt(0);"#"==e?(b=8,e=""):"$"==e&&(b=16,e="");d!=e?a=a.substr(1):(d=e=a.substr(0,2),"0b"==e&&f||"^B"==e?(b=2,e=""):"0o"==e||"^O"==e?(b=8,e=""):"^D"==e?(b=10,e=""):"0x"==e&&(b=16,e=""),d!=e&&(a=a.substr(2)));d=e=a.slice(-1);"Y"==e||"y"==e?(b=2,e=""):"."==e?(b=10,e=""):"H"==e||"h"==e?(b=16,e=""):"K"==e?e="000":"M"==e?e="000000":"G"==e&&(e="000000000");d!=e&&(a=a.slice(0,-1)+e);var g;d=0;if(e=a.match(/(-?[0-9]+)B([0-9]*)/))a=
e[1],d=35-((e[2]||35)&255);e=a;((f=b)&&10!=f?16==f?e.match(/^-?[0-9a-f]+$/i):8==f?e.match(/^-?[0-7]+$/):2==f&&e.match(/^-?[01]+$/):e.match(/^-?[0-9]+$/))&&!isNaN(g=parseInt(a,b))&&(d&&(0>g&&(g+=Math.pow(2,36)),g=0<d?g*Math.pow(2,d):Math.trunc(g/Math.pow(2,-d))),c=g)}return c}
function pa(a,b,c,d,e){e=void 0===e?0:e;var f="";isNaN(a)?a=null:null!=a&&(0>a&&-1<a&&(a=-1),0>a&&(a+=Math.pow(b,c)),a>=Math.pow(b,c)&&(c=Math.ceil(Math.log(a)/Math.log(b))));for(var g=e||-1;0<c--;){g||(f=","+f,g=e);if(null==a)f="?"+f;else{var h=a%b,h=h+(0<=h&&9>=h?48:55),f=String.fromCharCode(h)+f;a=Math.trunc(a/b)}g--}return(void 0===d?"":d)+f}function va(a,b,c){b?12<b&&(b=12):(b=Math.abs(a),b=262143>=b?6:16777215>=b?8:12);return pa(a,8,b,c?"0o":"")}
function wa(a,b){b?11<b&&(b=11):b=99999>=Math.abs(a)?5:11;return pa(a,10,b)}function n(a,b,c){b?9<b&&(b=9):(b=Math.abs(a),b=65535>=b?4:4294967295>=b?8:9);return pa(a,16,b,c?"0x":"")}function xa(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0<c&&(b=b.substr(0,c));return b}function ya(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function za(a,b){return-1!==a.indexOf(b,a.length-b.length)}
function Aa(a){return a.replace(/[&<>"']/g,function(a){return Ba[a]})}function Ca(a,b){return(a+" ").slice(0,b)}function Da(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}var Ba={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function Ga(a,b,c){var d=0,e=a.length,f=0;for(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 Ha(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}
function Ia(a,b,c,d){c=void 0===c?!1:c;var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a,
function oa(a,b,c,d,e){e=void 0===e?0:e;var f="";isNaN(a)?a=null:null!=a&&(0>a&&-1<a&&(a=-1),0>a&&(a+=Math.pow(b,c)),a>=Math.pow(b,c)&&(c=Math.ceil(Math.log(a)/Math.log(b))));for(var g=e||-1;0<c--;){g||(f=","+f,g=e);if(null==a)f="?"+f;else{var h=a%b,h=h+(0<=h&&9>=h?48:55),f=String.fromCharCode(h)+f;a=Math.trunc(a/b)}g--}return(void 0===d?"":d)+f}function ua(a,b,c){b?12<b&&(b=12):(b=Math.abs(a),b=262143>=b?6:16777215>=b?8:12);return oa(a,8,b,c?"0o":"")}
function va(a,b){b?11<b&&(b=11):b=99999>=Math.abs(a)?5:11;return oa(a,10,b)}function n(a,b,c){b?9<b&&(b=9):(b=Math.abs(a),b=65535>=b?4:4294967295>=b?8:9);return oa(a,16,b,c?"0x":"")}function wa(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0<c&&(b=b.substr(0,c));return b}function xa(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function ya(a,b){return-1!==a.indexOf(b,a.length-b.length)}
function za(a){return a.replace(/[&<>"']/g,function(a){return Aa[a]})}function Ba(a,b){return(a+" ").slice(0,b)}function Ca(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}var Aa={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function Fa(a,b,c){var d=0,e=a.length,f=0;for(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 Ga(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}
function Ha(a,b,c,d){c=void 0===c?!1:c;var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a,
f,e))});if(b&&"object"==typeof b){var k="",l;for(l in b)b.hasOwnProperty(l)&&(k&&(k+="&"),k+=l+"="+encodeURIComponent(b[l]));k=k.replace(/%20/g,"+");h.open("POST",a,c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(f=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,f,e),g=[f,e]);return g}
function Ja(a,b){var c,d={da:null,Z:null,la:null,za:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,f,g;if("<"==b.substr(0,1))throw Error(b);g=0>b.indexOf("0x")&&0>b.indexOf("0o")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.la=g.load;d.za=g.exec;if(e=g.bytes)d.da=e;else if(e=g.words)for(d.da=Array(2*e.length),f=c=0;c<e.length;c++)d.da[f++]=e[c]&255,d.da[f++]=e[c]>>8&255;else if(e=g.longs)for(d.da=Array(4*e.length),f=c=0;c<e.length;c++)d.da[f++]=
e[c]&255,d.da[f++]=e[c]>>8&255,d.da[f++]=e[c]>>16&255,d.da[f++]=e[c]>>24&255;else(e=g.data)?d.Pa=e:d.da=g;d.da&&(d.da.length?1==d.da.length&&(q(d.da[0]),d=null):(q("Empty resource: "+a),d=null));d.Z=g.symbols}catch(h){q("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;c<b.length;c++){f=parseInt(b[c],16);if(isNaN(f)){q("Resource data error ("+a+"): invalid hex byte ("+b[c]+")");break}e.push(f&255)}c==b.length&&(d.da=e)}return d}
function Ka(){return"http://"+(window?window.location.host:"www.pcjs.org")}function La(){if(null==Ma){var a=!1;if(window)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}Ma=a}return Ma}function Qa(a){var b;if(window)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)}return!1}
function Ta(a){if(!Ua){var b,c={};if(window){b||(b=window.location.search.substr(1));for(var d,e=/\+/g,f=/([^&=]+)=?([^&]*)/g;d=f.exec(b);)c[decodeURIComponent(d[1].replace(e," "))]=decodeURIComponent(d[2].replace(e," "))}Ua=c}return Ua[a]}function Va(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
function Wa(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}}function Xa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ya(a){Za.init.push(a)}
function $a(a){if(ab)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){q(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function bb(a){!ab&&a?(ab=!0,cb&&db("init"),eb&&db("show")):ab=a}function db(a){Za[a]&&$a(Za[a])}var Ua=null,Za={init:[],show:[],exit:[]},cb=!1,eb=!1,ab=!0,Ma=null;Xa("onload",function(){cb=!0;$a(Za.init)});Xa("onpageshow",function(){eb=!0;$a(Za.show)});Xa(Sa("Opera")||Sa("iOS")?"onunload":"onbeforeunload",function(){$a(Za.exit)});
function r(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Eb=b.comment;this.Ub=b;this.exports={};this.J=this.bindings={};a=this.id.indexOf(".");0>a?this.bb=this.id:(this.cb=this.id.substr(0,a),this.bb=this.id.substr(a+1));this.A={ready:!1,Wa:!1,rb:!1,aa:!1,error:!1};this.gb=null;this.A.error=!1;this.ca=c||0;this.D=this.v=this.G=this.H=this.Aa=null;fb.push(this)}function gb(a,b,c){mb[a]&&b&&(mb[a][b]=c)}function nb(){return Date.now()||+new Date}
function q(a){window&&window.alert(a)}function ob(a){var b=!1;window&&(b=window.confirm(a));return b}function pb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<fb.length;b++){var d=fb[b];a&&d.id.indexOf(a)||c.push(d)}return c}function qb(a){if(void 0!==a){var b;for(b=0;b<fb.length;b++)if(fb[b].id===a)return fb[b]}return null}
function rb(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<fb.length;d++)if(c)c==fb[d]&&(c=null);else if(!(a!=fb[d].type||b&&fb[d].id.indexOf(b)))return fb[d]}return null}function t(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){q(c.message+" ("+a+")")}return b}
function sb(a,b){var c=v;b=w(b.parentNode,c+"-control");for(var d=0;d<b.length;d++)for(var e=b[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(1===g.nodeType){var h=g.getAttribute("class");if(h)for(var k=h.split(" "),l=0;l<k.length;l++)switch(h=k[l],h){case c+"-binding":(h=t(g))&&h.binding&&a.ta(h.type,h.binding,g,h.value),l=k.length}}}}
function Ia(a,b){var c,d={da:null,aa:null,la:null,ya:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,f,g;if("<"==b.substr(0,1))throw Error(b);g=0>b.indexOf("0x")&&0>b.indexOf("0o")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.la=g.load;d.ya=g.exec;if(e=g.bytes)d.da=e;else if(e=g.words)for(d.da=Array(2*e.length),f=c=0;c<e.length;c++)d.da[f++]=e[c]&255,d.da[f++]=e[c]>>8&255;else if(e=g.longs)for(d.da=Array(4*e.length),f=c=0;c<e.length;c++)d.da[f++]=
e[c]&255,d.da[f++]=e[c]>>8&255,d.da[f++]=e[c]>>16&255,d.da[f++]=e[c]>>24&255;else(e=g.data)?d.Pa=e:d.da=g;d.da&&(d.da.length?1==d.da.length&&(q(d.da[0]),d=null):(q("Empty resource: "+a),d=null));d.aa=g.symbols}catch(h){q("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;c<b.length;c++){f=parseInt(b[c],16);if(isNaN(f)){q("Resource data error ("+a+"): invalid hex byte ("+b[c]+")");break}e.push(f&255)}c==b.length&&(d.da=e)}return d}
function Ja(){return"http://"+(window?window.location.host:"www.pcjs.org")}function Ka(){if(null==La){var a=!1;if(window)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}La=a}return La}function Ma(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}
function Qa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function Ra(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)}return!1}
function Sa(a){if(!Ta){var b,c={};if(window){b||(b=window.location.search.substr(1));for(var d,e=/\+/g,f=/([^&=]+)=?([^&]*)/g;d=f.exec(b);)c[decodeURIComponent(d[1].replace(e," "))]=decodeURIComponent(d[2].replace(e," "))}Ta=c}return Ta[a]}function Ua(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
function Va(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}}function Wa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Xa(a){Ya.init.push(a)}
function Za(a){if($a)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){q(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function ab(a){!$a&&a?($a=!0,bb&&cb("init"),db&&cb("show")):$a=a}function cb(a){Ya[a]&&Za(Ya[a])}var Ta=null,Ya={init:[],show:[],exit:[]},bb=!1,db=!1,$a=!0,La=null;Wa("onload",function(){bb=!0;Za(Ya.init)});Wa("onpageshow",function(){db=!0;Za(Ya.show)});Wa(Ra("Opera")||Ra("iOS")?"onunload":"onbeforeunload",function(){Za(Ya.exit)});
function r(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Db=b.comment;this.Ub=b;this.exports={};this.J=this.bindings={};a=this.id.indexOf(".");0>a?this.ab=this.id:(this.bb=this.id.substr(0,a),this.ab=this.id.substr(a+1));this.A={ready:!1,Va:!1,qb:!1,ba:!1,error:!1};this.fb=null;this.A.error=!1;this.ca=c||0;this.D=this.v=this.G=this.H=this.za=null;eb.push(this)}function fb(a,b,c){gb[a]&&b&&(gb[a][b]=c)}function nb(){return Date.now()||+new Date}
function q(a){window&&window.alert(a)}function ob(a){var b=!1;window&&(b=window.confirm(a));return b}function pb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<eb.length;b++){var d=eb[b];a&&d.id.indexOf(a)||c.push(d)}return c}function qb(a){if(void 0!==a){var b;for(b=0;b<eb.length;b++)if(eb[b].id===a)return eb[b]}return null}
function rb(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<eb.length;d++)if(c)c==eb[d]&&(c=null);else if(!(a!=eb[d].type||b&&eb[d].id.indexOf(b)))return eb[d]}return null}function t(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){q(c.message+" ("+a+")")}return b}
function sb(a,b){var c=v;b=w(b.parentNode,c+"-control");for(var d=0;d<b.length;d++)for(var e=b[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(1===g.nodeType){var h=g.getAttribute("class");if(h)for(var k=h.split(" "),l=0;l<k.length;l++)switch(h=k[l],h){case c+"-binding":(h=t(g))&&h.binding&&a.sa(h.type,h.binding,g,h.value),l=k.length}}}}
function w(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 tb(a){for(var b=!0,c=ub[a];c&&c.length;){var d=c.splice(0,1)[0],e=d[0],f=null;0<=vb.indexOf(e)&&(f=function(){return function(){tb(a)}}());var g=wb[e];if(g)if(!f)b=g(d[1],d[2],d[3]);else{if(!g(f,d[1],d[2],d[3]))break}else{var b=!1,h=rb(d[1],a);if(h)if(g=xb[e])b=g(h,d[2],d[3]);else{var k=h.exports;if(k&&(g=k[e]))if(b=!0,!f)b=g.call(h,d[2],d[3]);else if(!g.call(h,f,d[2],d[3]))break}}if(!b){q("Script error: "+e+(g?" failed":" unrecognized"));break}}c&&!c.length&&delete ub[a];return b}m=r.prototype;
m.toString=function(){return this.name?this.name:this.id||this.type};
m.ta=function(a,b,c){switch(b){case "clear":return this.J[b]||(this.J[b]=c,c.onclick=function(a){return function(){a.J.print&&(a.J.print.value="")}}(this)),!0;case "print":return this.J[b]||(this.Aa=this.J[b]=c,c.value="",this.u=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.ha=function(a){this.u(a,this.bb)}),!0;default:return!1}};m.log=function(){};m.u=function(){};
m.status=function(a){this.u(this.bb+": "+a)};m.ha=function(a,b,c){c=c||this.type;b||q((c?c+": ":"")+a)};function yb(a,b){a.A.error=!0;a.ha(b)}function zb(a){return a.A.error?(a.u(a.toString()+" error"),!0):!1}function Bb(a,b){b&&(a.A.ready?b():a.gb=b);return a.A.ready}function Mb(a){if(!a.A.error&&(a.A.ready=!0,a.A.ready)){var b=a.gb;a.gb=null;b&&b()}}function Nb(a,b){a.A.Wa&&(b?a.A.rb=!0:void 0===b&&a.u(a.toString()+" busy"));return a.A.Wa}
function Ob(a,b){if(a.A.rb)return a.A.Wa=!1,a.A.rb=!1;if(a.A.error)return a.u(a.toString()+" error"),!1;a.A.Wa=b;return a.A.Wa}m.Ca=function(){return this.A.aa=!0};m.sa=function(a,b){b&&(this.A.aa=!1);return!0};function Pb(a,b){if(a.D){a===a.D?b|=0:b=b||a.ca;var c=a.D.ca&b;return!!b&&c===b||!!(c&a.D.Fb)}return!1}function Qb(a,b,c,d){a.D&&(!0===c||Pb(a,c|0))&&a.D.message(b,d)}
m.sa=function(a,b,c){switch(b){case "clear":return this.J[b]||(this.J[b]=c,c.onclick=function(a){return function(){a.J.print&&(a.J.print.value="")}}(this)),!0;case "print":return this.J[b]||(this.za=this.J[b]=c,c.value="",this.u=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.ja=function(a){this.u(a,this.ab)}),!0;default:return!1}};m.log=function(){};m.u=function(){};
m.status=function(a){this.u(this.ab+": "+a)};m.ja=function(a,b,c){c=c||this.type;b||q((c?c+": ":"")+a)};function yb(a,b){a.A.error=!0;a.ja(b)}function zb(a){return a.A.error?(a.u(a.toString()+" error"),!0):!1}function Ab(a,b){b&&(a.A.ready?b():a.fb=b);return a.A.ready}function Bb(a){if(!a.A.error&&(a.A.ready=!0,a.A.ready)){var b=a.fb;a.fb=null;b&&b()}}function Db(a,b){a.A.Va&&(b?a.A.qb=!0:void 0===b&&a.u(a.toString()+" busy"));return a.A.Va}
function Ob(a,b){if(a.A.qb)return a.A.Va=!1,a.A.qb=!1;if(a.A.error)return a.u(a.toString()+" error"),!1;a.A.Va=b;return a.A.Va}m.Ba=function(){return this.A.ba=!0};m.ra=function(a,b){b&&(this.A.ba=!1);return!0};function Pb(a,b){if(a.D){a===a.D?b|=0:b=b||a.ca;var c=a.D.ca&b;return!!b&&c===b||!!(c&a.D.Eb)}return!1}function Qb(a,b,c,d){a.D&&(!0===c||Pb(a,c|0))&&a.D.message(b,d)}
window&&(window.PCjs||(window.PCjs={}),window.PCjs.Machines||(window.PCjs.Machines={}),window.PCjs.Components||(window.PCjs.Components=[]),window.PCjs.Commands||(window.PCjs.Commands={}));
var mb=window?window.PCjs.Machines:{},fb=window?window.PCjs.Components:[],ub=window?window.PCjs.Commands:{},vb=["hold","sleep","wait"],wb={alert:function(a){q(a);return!0},sleep:function(a,b){setTimeout(a,+b);return!1}},xb={select:function(a,b,c){var d=!1;if(a=a.bindings[b])for(b=0;b<a.options.length;b++)if(a.options[b].textContent==c){a.selectedIndex!=b&&(a.selectedIndex=b);d=!0;break}return d}};
var gb=window?window.PCjs.Machines:{},eb=window?window.PCjs.Components:[],ub=window?window.PCjs.Commands:{},vb=["hold","sleep","wait"],wb={alert:function(a){q(a);return!0},sleep:function(a,b){setTimeout(a,+b);return!1}},xb={select:function(a,b,c){var d=!1;if(a=a.bindings[b])for(b=0;b<a.options.length;b++)if(a.options[b].textContent==c){a.selectedIndex!=b&&(a.selectedIndex=b);d=!0;break}return d}};
Array.prototype.indexOf||(Array.prototype.indexOf=function(a,b){b=b||0;for(var c=this.length;b<c;b++)if(this[b]===a)return b;return-1});Array.isArray||(Array.isArray=function(a){return"[object Array]"===Object.prototype.toString.call(a)});
Function.prototype.bind||(Function.prototype.bind=function(a){function b(){return e.apply(this instanceof c&&a?this:a,d.concat(Array.prototype.slice.call(arguments)))}function c(){}if("function"!=typeof this)throw new TypeError("Function.prototype.bind: non-callable object");var d=Array.prototype.slice.call(arguments,1),e=this;c.prototype=this.prototype;b.prototype=new c;return b});
var v="pdp10",Rb="PDPjs",Sb=Math.pow(2,18)-1,Tb=Math.pow(2,18),Ub=Math.pow(2,17)-1,Vb=Math.pow(2,17),x=Math.pow(2,18)-1,y=Math.pow(2,18),z=Math.pow(2,35)-1,B=Math.pow(2,35),C=Math.pow(2,36)-1,D=Math.pow(2,36),E=Math.pow(2,32),Wb=Math.pow(2,34),Xb=Math.pow(2,36),Yb=Math.pow(2,21),Zb=Math.pow(2,26),$b=Math.pow(2,23),ac=Math.pow(2,30),v="pdp10",Rb="PDPjs",bc={cpu:1,trap:2,fault:4,"int":8,bus:16,memory:32,mmu:64,rom:128,device:256,panel:512,keyboard:1024,key:2048,paper:4096,read:16384,write:32768,serial:1048576,
var v="pdp10",Rb="PDPjs",Sb=Math.pow(2,18)-1,Tb=Math.pow(2,18),Ub=Math.pow(2,17)-1,Vb=Math.pow(2,17),x=Math.pow(2,18)-1,y=Math.pow(2,18),z=Math.pow(2,35)-1,B=Math.pow(2,35),C=Math.pow(2,36)-1,D=Math.pow(2,36),F=Math.pow(2,32),Wb=Math.pow(2,34),Xb=Math.pow(2,36),Yb=Math.pow(2,21),Zb=Math.pow(2,26),$b=Math.pow(2,23),ac=Math.pow(2,30),v="pdp10",Rb="PDPjs",bc={cpu:1,trap:2,fault:4,"int":8,bus:16,memory:32,mmu:64,rom:128,device:256,panel:512,keyboard:1024,key:2048,paper:4096,read:16384,write:32768,serial:1048576,
timer:2097152,speaker:16777216,computer:33554432,log:268435456,warn:536870912,buffer:1073741824,halt:-2147483648};
function cc(a,b){r.call(this,"Panel",a,512);this.K=this.L=0;this.V=b;this.i=this.I=this.j=this.w=0;this.M=this.N=-1;this.O=this.R=this.F=!1;this.T=dc;this.C={};this.b={START:[1,1,!0,!1,this.ec],STEP:[1,1,!1,!1,this.fc],ENABLE:[1,1,!1,!1,this.$b],CONT:[1,1,!0,!1,this.Yb],DEP:[0,0,!0,!1,this.Zb],EXAM:[1,1,!0,!1,this.ac],LOAD:[1,1,!0,!1,this.cc],TEST:[0,0,!0,!1,this.bc]};for(a=0;22>a;a++)this.b["S"+a]=[0,0,!1,!1,this.dc,a];this.D=this.v=this.G=this.H=null;this.exports={hold:this.Vb,toggle:this.oc,reset:this.kc,
set:this.nc};Mb(this)}ja(cc,r);m=cc.prototype;m.reset=function(a){this.stop();a&&ec(this,this.w=0)};
m.ta=function(a,b,c,d){if(this.H&&this.H.ta(a,b,c,d)||this.v&&this.v.ta(a,b,c,d)||this.D&&this.D.ta(a,b,c,d))return!0;switch(b){case "PC":return this.J[b]=c,this.L++,!0;default:return"led"==a||"rled"==a?(this.J[b]=c,this.C[b]=d?1:0,this.L++,!0):"switch"==a?(void 0===this.b[b]&&(this.b[b]=[d?1:0,d?1:0]),this.J[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,b){return function(){fc(a,b)}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){gc(a,b)}}(this,b),a.ontouchstart=
function(a,b){return function(c){fc(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){gc(a,b)}}(this,b),!0):r.prototype.ta.call(this,a,b,c,d)}};m.Ma=function(a,b,c,d){this.H=a;this.G=b;this.v=c;this.D=d;hc(this);ic(this)};m.Ca=function(a,b){if(!b)if(this.V&&jc(),!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};m.sa=function(a){return a?this.save():!0};m.save=function(){var a=new G(this);a.set(0,[this.i,this.w,this.j]);return a.data()};
set:this.nc};Bb(this)}ja(cc,r);m=cc.prototype;m.reset=function(a){this.stop();a&&ec(this,this.w=0)};
m.sa=function(a,b,c,d){if(this.H&&this.H.sa(a,b,c,d)||this.v&&this.v.sa(a,b,c,d)||this.D&&this.D.sa(a,b,c,d))return!0;switch(b){case "PC":return this.J[b]=c,this.L++,!0;default:return"led"==a||"rled"==a?(this.J[b]=c,this.C[b]=d?1:0,this.L++,!0):"switch"==a?(void 0===this.b[b]&&(this.b[b]=[d?1:0,d?1:0]),this.J[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,b){return function(){fc(a,b)}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){gc(a,b)}}(this,b),a.ontouchstart=
function(a,b){return function(c){fc(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){gc(a,b)}}(this,b),!0):r.prototype.sa.call(this,a,b,c,d)}};m.Ma=function(a,b,c,d){this.H=a;this.G=b;this.v=c;this.D=d;hc(this);ic(this)};m.Ba=function(a,b){if(!b)if(this.V&&jc(),!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};m.ra=function(a){return a?this.save():!0};m.save=function(){var a=new G(this);a.set(0,[this.i,this.w,this.j]);return a.data()};
m.restore=function(a){if(a=a[0])kc(this,this.i=a[0]),ec(this,this.w=a[1]),lc(this,a[2]);return!0};m.kc=function(){for(var a in this.b){var b=this.b[a];b[1]=b[0]}ic(this);return!0};function mc(a,b,c){if(a=a.J[b])a.style.backgroundColor=c?"#ff0000":"#000000"}function hc(a,b){for(var c in a.C)mc(a,c,null!=b?b:a.C[c])}function nc(a,b,c){if(a=a.J[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function ic(a){for(var b in a.b)nc(a,b,a.b[b][1])}
m.Vb=function(a,b,c){if(fc(this,b)){if(c){var d=this;setTimeout(function(){gc(d,b);a&&a()},+c);return!1}gc(this,b)}return!0};m.nc=function(a,b){if("SR"==a)return lc(this,oa(b,8));var c=this.b[a];return c?(c[1]=+b?1:0,nc(this,a,c[1]),!0):!1};m.oc=function(a){return fc(this,a)?(gc(this,a),!0):!1};function fc(a,b){var c=a.b[b];return c?(nc(a,b,c[1]=1-c[1]),c[3]=!0,c[4]&&c[4].call(a,c[1],c[5]),b!=oc&&(a.O=b==pc,a.R=b==qc),!0):!1}
m.Vb=function(a,b,c){if(fc(this,b)){if(c){var d=this;setTimeout(function(){gc(d,b);a&&a()},+c);return!1}gc(this,b)}return!0};m.nc=function(a,b){if("SR"==a)return lc(this,na(b,8));var c=this.b[a];return c?(c[1]=+b?1:0,nc(this,a,c[1]),!0):!1};m.oc=function(a){return fc(this,a)?(gc(this,a),!0):!1};function fc(a,b){var c=a.b[b];return c?(nc(a,b,c[1]=1-c[1]),c[3]=!0,c[4]&&c[4].call(a,c[1],c[5]),b!=oc&&(a.O=b==pc,a.R=b==qc),!0):!1}
function gc(a,b){var c=a.b[b];c&&(c[2]&&c[3]&&(nc(a,b,c[1]=c[0]),c[4]&&c[4].call(a,c[1],c[5])),c[3]=!1)}m.ec=function(a){a||this.v.A.P||(H(this.v,this.i),this.b[rc]&&this.b[rc][1]&&sc(this.v))};m.fc=function(){};m.$b=function(a){a||this.v.Y()};
m.Yb=function(a){if(!a&&!this.v.A.P)if(this.b[rc]&&this.b[rc][1])sc(this.v);else{if((a=this.D)&&!Nb(a,!0))Ob(a,!0),tc(a,0,null),Ob(a,!1);else try{var b=this.v.$a(1);0<b&&(uc(this.v,b),vc(this.v,b,!0),wc(this.v,b))}catch(c){"number"!=typeof c&&yb(this.v,c.stack||c.message)}this.stop();this.H&&K(this.H)}};m.Zb=function(a){a&&!this.v.A.P&&(this.O&&xc(this),a=ec(this,this.w=this.j),this.T==dc?yc(this.G,this.i,a):this.v.g(this.i,a))};
m.Yb=function(a){if(!a&&!this.v.A.P)if(this.b[rc]&&this.b[rc][1])sc(this.v);else{if((a=this.D)&&!Db(a,!0))Ob(a,!0),tc(a,0,null),Ob(a,!1);else try{var b=this.v.Za(1);0<b&&(uc(this.v,b),vc(this.v,b,!0),wc(this.v,b))}catch(c){"number"!=typeof c&&yb(this.v,c.stack||c.message)}this.stop();this.H&&K(this.H)}};m.Zb=function(a){a&&!this.v.A.P&&(this.O&&xc(this),a=ec(this,this.w=this.j),this.T==dc?yc(this.G,this.i,a):this.v.g(this.i,a))};
m.ac=function(a){if(!a&&!this.v.A.P){var b;this.R&&xc(this);this.T==dc?b=zc(this.G,this.i):b=this.v.f(this.i);ec(this,this.w=b)}};m.cc=function(a){a||this.v.A.P||kc(this,this.j)};m.bc=function(a){a?(this.F=!0,hc(this,!0)):(this.F=!1,hc(this),lc(this,0))};m.dc=function(a,b){this.j=a?this.j|1<<b:this.j&~(1<<b)};function xc(a){var b=1,c=a.G.j;a.b[oc]&&a.b[oc][1]||(b=-b);kc(a,a.i&~c|a.i+b&c)}
function kc(a,b){a.i=b&a.G.j;if(a.M!==a.i){a.M=a.i;b=a.M;for(var c=0;22>c;c++){var d=a,e="A"+c,f=b&1<<c;d.C[e]=f;d.F||mc(d,e,f)}}}function ec(a,b){a.I=b%D;if(a.N!==a.I){a.N=a.I;b=a.N;for(var c=0;16>c;c++){var d=a,e="D"+c,f=b&1<<c;d.C[e]=f;d.F||mc(d,e,f)}}return a.I}function lc(a,b){a.j=b|0;for(b=0;22>b;b++)a.b["S"+b][1]=a.j&1<<b?1:0;ic(a);return!0}m.stop=function(){kc(this,this.v.i)};
function jc(){for(var a=w(document,v,"panel"),b=0;b<a.length;b++){var c=a[b],d=t(c),e=qb(d.id);e||(e=new cc(d,!0));sb(e,c)}}var dc=7,pc="DEP",rc="ENABLE",qc="EXAM",oc="STEP";Ya(jc);function Ac(a,b,c){r.call(this,"Bus",a,16);this.v=b;this.D=c;this.F=+a.busWidth||18;this.I=1<<this.F;this.j=this.I-1;this.i=Math.log2(16384);this.C=this.I/16384|0;this.w=0;this.b=[];a=new Bc(this);Cc(a,this.D);this.b=Array(this.C);for(b=0;b<this.C;b++)this.b[b]=a;Mb(this)}ja(Ac,r);m=Ac.prototype;m.reset=function(){};
m.Ca=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};m.sa=function(a){return a?this.save():!0};m.save=function(){var a=new G(this);a.set(0,Dc(this));return a.data()};m.restore=function(a){a:{a=a[0];var b;for(b=0;b<a.length-1;b+=2){var c=a[b],d=a[b+1];if(d&&4096>d.length){for(var e=0,f=Array(4096),g=0;g<d.length-1;)for(var h=d[g++],k=d[g++];h--;)f[e++]=k;d=f}e=this.b[c];if(!e||!e.restore(d)){q("Unable to restore memory block "+c);a=!1;break a}}a=!0}return a};
function Ec(a,b,c,d){for(var e=b,f=c,g=e>>>a.i;0<f&&g<a.b.length;){var h=a.b[g],k=16384*g,l=16384-(e-k);l>f&&(l=f);if(h&&h.size){if(h.type==d){if(e+f<=h.B)return h.Ya+=h.B-e,h.B=e,!0;if(e>=h.B+h.Ya){l=h.size-(e-k);l>f&&(l=f);h.Ya=e-h.B+l;e=k+16384;f-=l;g++;continue}}return Fc(Gc,e,f)}e=new Bc(a,e,l,16384,d);Cc(e,a.D,h);a.b[g++]=e;e=k+16384;f-=l}return 0>=f?(a.status("Added "+(c>>10)+"Kb "+Hc[d]+" at "+va(b)),!0):Fc(Ic,b,c)}
function zc(a,b){var c=a.b[(b&a.j)>>>a.i];a.w++;b=c.w(b&16383,b);a.w--;return b}function yc(a,b,c){var d=a.b[(b&a.j)>>>a.i];a.w++;d.D(c,b&16383,b);a.w--}function Dc(a){for(var b=0,c=[],d=0;d<a.C;d++){var e=a.b[d];if(e.tb||e.Tb){c[b++]=d;var f=b++;if(e=e.save()){for(var g=0,h=0,k=[];g<e.length;){for(var l=e[g],p=g+1;p<e.length&&e[p]===l;)p++;k[h++]=p-g;k[h++]=l;g=p}k.length<e.length&&(e=k)}c[f]=e}}return c}
m.Kb=function(a){if(!this.w)throw this.D&&Pb(this.D,4)&&Qb(this.D,"memory fault on "+L(this.D,a),!0,!0),this.v.Y(),-1;};function Fc(a,b,c){q("Memory block error ("+a+": "+n(b)+","+n(c)+")");return!1}var Gc=1,Ic=2;function Mc(a){r.call(this,"Device",a,256)}ja(Mc,r);m=Mc.prototype;m.Ma=function(a,b,c,d){this.G=b;this.H=a;this.v=c;this.D=d;Mb(this)};m.Ca=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};m.sa=function(a){return a?this.save():!0};m.reset=function(){};
m.save=function(){return(new G(this)).data()};m.restore=function(){return!0};Ya(function(){for(var a=w(document,v,"device"),b=0;b<a.length;b++){var c,d=a[b];c=t(d);switch(c.type){case "default":c=new Mc(c),sb(c,d)}}});
function Bc(a,b,c,d,e){this.H=a;this.id=Nc+=2;this.B=b;this.Ya=c;this.size=d||0;this.type=e||Oc;this.G=e==Pc;this.b=null;this.f=this.w=this.wb;this.g=this.D=this.Za;this.i=this.v=0;Cc(this);this.tb=this.Tb=!1;if(this.size){a=this.j=Array(this.size);for(b=0;b<a.length;b++)a[b]=0;Qc(this,Rc)}else Qc(this)}m=Bc.prototype;m.save=function(){return this.j};m.restore=function(a){return a&&this.size==a.length?(this.j=a,this.tb=!0):!1};function Qc(a,b){b||(b=Sc);Tc(a,b,void 0);Uc(a,b,void 0)}
function Tc(a,b,c){c&&a.i||(a.f=b[0]||a.wb);if(c||void 0===c)a.w=b[0]||a.wb}function Uc(a,b,c){c&&a.v||(a.g=!a.G&&b[1]||a.Za);if(c||void 0===c)a.D=b[1]||a.Za}m.Ra=function(a,b){b?this.v++||Uc(this,Vc,!1):this.i++||Tc(this,Vc,!1)};function Wc(a,b){b?--a.v||(a.g=a.G?a.Za:a.D):--a.i||(a.f=a.w)}function Cc(a,b,c){a.b=b;a.i=a.v=0;c&&((a.i=c.i)&&Tc(a,Vc,!1),(a.v=c.v)&&Uc(a,Vc,!1))}m.wb=function(a,b){this.b&&Pb(this.b,32)&&Qb(this.b,"attempt to read invalid address "+L(this.b,b),!0);this.H.Kb(b);return-1};
m.Za=function(a,b,c){this.b&&Pb(this.b,32)&&Qb(this.b,"attempt to write "+L(this.b,a)+" to invalid addresses "+L(this.b,c),!0);this.H.Kb(c)};m.ic=function(a){return this.j[a]};m.rc=function(a,b){this.j[b]!=a&&(this.j[b]=a,this.tb=!0)};m.gc=function(a,b){if(this.b&&null!=this.B){var c=this.b;Xc(c,this.B+a,2,c.N)&&c.Y(!1)}return this.w(a,b)};m.qc=function(a,b,c){if(this.b&&null!=this.B){var d=this.b;Xc(d,this.B+b,2,d.K)&&d.Y(!1)}this.G?this.Za(a,0,c):this.D(a,b,c)};
function jc(){for(var a=w(document,v,"panel"),b=0;b<a.length;b++){var c=a[b],d=t(c),e=qb(d.id);e||(e=new cc(d,!0));sb(e,c)}}var dc=7,pc="DEP",rc="ENABLE",qc="EXAM",oc="STEP";Xa(jc);function Ac(a,b,c){r.call(this,"Bus",a,16);this.v=b;this.D=c;this.F=+a.busWidth||18;this.I=1<<this.F;this.j=this.I-1;this.i=Math.log2(16384);this.C=this.I/16384|0;this.w=0;this.b=[];a=new Bc(this);Cc(a,this.D);this.b=Array(this.C);for(b=0;b<this.C;b++)this.b[b]=a;Bb(this)}ja(Ac,r);m=Ac.prototype;m.reset=function(){};
m.Ba=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};m.ra=function(a){return a?this.save():!0};m.save=function(){var a=new G(this);a.set(0,Dc(this));return a.data()};m.restore=function(a){a:{a=a[0];var b;for(b=0;b<a.length-1;b+=2){var c=a[b],d=a[b+1];if(d&&4096>d.length){for(var e=0,f=Array(4096),g=0;g<d.length-1;)for(var h=d[g++],k=d[g++];h--;)f[e++]=k;d=f}e=this.b[c];if(!e||!e.restore(d)){q("Unable to restore memory block "+c);a=!1;break a}}a=!0}return a};
function Ec(a,b,c,d){for(var e=b,f=c,g=e>>>a.i;0<f&&g<a.b.length;){var h=a.b[g],k=16384*g,l=16384-(e-k);l>f&&(l=f);if(h&&h.size){if(h.type==d){if(e+f<=h.B)return h.Xa+=h.B-e,h.B=e,!0;if(e>=h.B+h.Xa){l=h.size-(e-k);l>f&&(l=f);h.Xa=e-h.B+l;e=k+16384;f-=l;g++;continue}}return Fc(Gc,e,f)}e=new Bc(a,e,l,16384,d);Cc(e,a.D,h);a.b[g++]=e;e=k+16384;f-=l}return 0>=f?(a.status("Added "+(c>>10)+"Kb "+Hc[d]+" at "+ua(b)),!0):Fc(Ic,b,c)}
function zc(a,b){var c=a.b[(b&a.j)>>>a.i];a.w++;b=c.w(b&16383,b);a.w--;return b}function yc(a,b,c){var d=a.b[(b&a.j)>>>a.i];a.w++;d.D(c,b&16383,b);a.w--}function Dc(a){for(var b=0,c=[],d=0;d<a.C;d++){var e=a.b[d];if(e.sb||e.Tb){c[b++]=d;var f=b++;if(e=e.save()){for(var g=0,h=0,k=[];g<e.length;){for(var l=e[g],p=g+1;p<e.length&&e[p]===l;)p++;k[h++]=p-g;k[h++]=l;g=p}k.length<e.length&&(e=k)}c[f]=e}}return c}
m.Jb=function(a){if(!this.w)throw this.D&&Pb(this.D,4)&&Qb(this.D,"memory fault on "+L(this.D,a),!0,!0),this.v.Y(),-1;};function Fc(a,b,c){q("Memory block error ("+a+": "+n(b)+","+n(c)+")");return!1}var Gc=1,Ic=2;function Jc(a){r.call(this,"Device",a,256)}ja(Jc,r);m=Jc.prototype;m.Ma=function(a,b,c,d){this.G=b;this.H=a;this.v=c;this.D=d;Bb(this)};m.Ba=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};m.ra=function(a){return a?this.save():!0};m.reset=function(){};
m.save=function(){return(new G(this)).data()};m.restore=function(){return!0};Xa(function(){for(var a=w(document,v,"device"),b=0;b<a.length;b++){var c,d=a[b];c=t(d);switch(c.type){case "default":c=new Jc(c),sb(c,d)}}});
function Bc(a,b,c,d,e){this.H=a;this.id=Nc+=2;this.B=b;this.Xa=c;this.size=d||0;this.type=e||Oc;this.G=e==Pc;this.b=null;this.f=this.w=this.vb;this.g=this.D=this.Ya;this.i=this.v=0;Cc(this);this.sb=this.Tb=!1;if(this.size){a=this.j=Array(this.size);for(b=0;b<a.length;b++)a[b]=0;Qc(this,Rc)}else Qc(this)}m=Bc.prototype;m.save=function(){return this.j};m.restore=function(a){return a&&this.size==a.length?(this.j=a,this.sb=!0):!1};function Qc(a,b){b||(b=Sc);Tc(a,b,void 0);Uc(a,b,void 0)}
function Tc(a,b,c){c&&a.i||(a.f=b[0]||a.vb);if(c||void 0===c)a.w=b[0]||a.vb}function Uc(a,b,c){c&&a.v||(a.g=!a.G&&b[1]||a.Ya);if(c||void 0===c)a.D=b[1]||a.Ya}m.Ra=function(a,b){b?this.v++||Uc(this,Vc,!1):this.i++||Tc(this,Vc,!1)};function Wc(a,b){b?--a.v||(a.g=a.G?a.Ya:a.D):--a.i||(a.f=a.w)}function Cc(a,b,c){a.b=b;a.i=a.v=0;c&&((a.i=c.i)&&Tc(a,Vc,!1),(a.v=c.v)&&Uc(a,Vc,!1))}m.vb=function(a,b){this.b&&Pb(this.b,32)&&Qb(this.b,"attempt to read invalid address "+L(this.b,b),!0);this.H.Jb(b);return-1};
m.Ya=function(a,b,c){this.b&&Pb(this.b,32)&&Qb(this.b,"attempt to write "+L(this.b,a)+" to invalid addresses "+L(this.b,c),!0);this.H.Jb(c)};m.ic=function(a){return this.j[a]};m.rc=function(a,b){this.j[b]!=a&&(this.j[b]=a,this.sb=!0)};m.gc=function(a,b){if(this.b&&null!=this.B){var c=this.b;Xc(c,this.B+a,2,c.N)&&c.Y(!1)}return this.w(a,b)};m.qc=function(a,b,c){if(this.b&&null!=this.B){var d=this.b;Xc(d,this.B+b,2,d.K)&&d.Y(!1)}this.G?this.Ya(a,0,c):this.D(a,b,c)};
var Oc=0,Pc=2,Hc=["NONE","RAM","ROM"],Nc=0,Sc=[],Rc=[Bc.prototype.ic,Bc.prototype.rc],Vc=[Bc.prototype.gc,Bc.prototype.qc];
function Yc(a,b){r.call(this,"CPU",a,1);b=+a.cycles||b;var c=+a.multiplier||1;this.lb=0;this.pb=b;this.ka=c;this.mb=Math.round(this.pb/1E4)/100;this.ga=this.mb*this.ka;this.ob=this.Ja=this.na=this.eb=0;this.A.P=this.A.jb=!1;this.A.fa=a.autoStart;"string"==typeof this.A.fa&&(this.A.fa="true"==this.A.fa);this.A.Va=!1;this.Ha=this.ua=0;this.Ia=+a.csStart;this.qa=+a.csInterval;this.va=+a.csStop;this.R=[];this.Gb=this.lc.bind(this);this.W=this.M=this.V=this.N=this.L=this.Ga=this.T=this.wa=this.qb=this.ba=
0;this.Oa=null;Mb(this)}ja(Yc,r);m=Yc.prototype;m.Ma=function(a,b,c,d){this.H=a;this.G=b;this.D=d;this.Oa=a.j;for(a=0;a<Zc.length;a++)(b=this.J[Zc[a]])&&this.H.ta(null,Zc[a],b);Mb(this)};m.reset=function(){};m.save=function(){return null};m.restore=function(){return!1};
m.Ca=function(a,b){var c=$c(this.H,"autoStart");null!=c?this.A.fa="true"==c?!0:"false"==c?!1:!!c:null==this.A.fa&&(this.A.fa=!this.D&&void 0===this.J.run);if(!b){if(a){ad(this);if(!this.restore(a))return!1;bd(this)}else this.reset();this.D?(a=this.D,b=this.A.fa,a.Ja=!0,a.u("Type ? for help with PDPjs Debugger commands"),cd(a),b||dd(a),a.va&&(b=a.va,a.va=null,ed(a,b,!0))):this.status("No debugger detected");this.A.fa||this.u("CPU will not be auto-started "+(this.Oa?"(click Run to start)":"(type 'go' to start)"))}return!0};
m.sa=function(a){return a?this.save():!0};m.fa=function(){return this.A.P?!0:this.A.fa?(sc(this),!0):!1};m.Lb=function(){return 0};function bd(a){void 0===a.Ia&&(a.Ia=0);void 0===a.qa&&(a.qa=-1);void 0===a.va&&(a.va=-1);a.A.Va=0<=a.Ia&&0<a.qa;a.A.Va&&(a.Ha=0,a.ua=a.Ia-a.W)}function wc(a,b){if(a.A.Va){var c=!1;a.Ha=a.Ha+a.Lb()|0;a.ua-=b;0>=a.ua&&(a.ua+=a.qa,c=!0);0<=a.va&&a.va<=fd(a)&&(a.qa=a.va=-1,bd(a),a.Y(),c=!0);c&&a.u(fd(a)+" cycles: checksum="+n(a.Ha))}}
m.ta=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.J[b]=c,!0;case "run":return this.J[b]=c,c.onclick=function(){var a;if(a=d.H)if(a=d.H,a.A.aa)a=!0;else{var b=null,c,h=pb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.A.ready);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.A.aa);c++);c==h.length&&(b=a);q("The "+b.type+" component ("+b.id+") is not "+(b.A.ready?"powered yet":"ready yet"+(b.gb?" (waiting for notification)":""))+".");a=!1}a&&(d.A.P?d.Y():sc(d))},!0;
case "speed":return this.J[b]=c,!0;case "setSpeed":return this.J[b]=c,c.onclick=function(){gd(d,d.ka<<1,!0)},c.textContent=this.ga.toFixed(2)+"Mhz",!0}return!1};function vc(a,b,c){a.W+=b;c&&(a.V=a.N=0)}function hd(a,b){var c=1;b&&1<a.ka&&a.ba&&(c=a.ba/a.mb);a.ob=Math.round(1E3/id);a.Ja=Math.floor(a.pb/id*c);b||(a.na=a.Ja);a.eb=0}function fd(a){return a.W+a.M+a.V-a.N}function ad(a){a.ba=0;a.qb=0;a.W=a.M=a.V=a.N=0;bd(a);gd(a,1)}
function gd(a,b,c){var d=!1;if(void 0!==b){.8>a.ba/a.ga?b=1:d=!0;a.ka=b;b=a.mb*a.ka;if(a.ga!=b){a.ga=b;b=a.ga.toFixed(2)+"Mhz";var e=a.J.setSpeed;e&&(e.textContent=b);a.u("target speed: "+b)}c&&a.H&&jd(a.H)}vc(a,a.M);a.M=0;a.L=nb();a.T=0;hd(a);return d}function kd(a,b){for(var c=a.R.length-1;0<=c;c--){var d=a.R[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function ld(a){for(var b=[],c=0;c<a.R.length;c++)b.push(a.R[c][0]);return b}
function Yc(a,b){r.call(this,"CPU",a,1);b=+a.cycles||b;var c=+a.multiplier||1;this.kb=0;this.ob=b;this.ha=c;this.lb=Math.round(this.ob/1E4)/100;this.ga=this.lb*this.ha;this.nb=this.Ja=this.ma=this.cb=0;this.A.P=this.A.ib=!1;this.A.fa=a.autoStart;"string"==typeof this.A.fa&&(this.A.fa="true"==this.A.fa);this.A.Ua=!1;this.Ha=this.ta=0;this.Ia=+a.csStart;this.pa=+a.csInterval;this.ua=+a.csStop;this.R=[];this.Fb=this.lc.bind(this);this.X=this.M=this.V=this.N=this.L=this.Ga=this.T=this.va=this.pb=this.Z=
0;this.Oa=null;Bb(this)}ja(Yc,r);m=Yc.prototype;m.Ma=function(a,b,c,d){this.H=a;this.G=b;this.D=d;this.Oa=a.j;for(a=0;a<Zc.length;a++)(b=this.J[Zc[a]])&&this.H.sa(null,Zc[a],b);Bb(this)};m.reset=function(){};m.save=function(){return null};m.restore=function(){return!1};
m.Ba=function(a,b){var c=$c(this.H,"autoStart");null!=c?this.A.fa="true"==c?!0:"false"==c?!1:!!c:null==this.A.fa&&(this.A.fa=!this.D&&void 0===this.J.run);if(!b){if(a){ad(this);if(!this.restore(a))return!1;bd(this)}else this.reset();this.D?(a=this.D,b=this.A.fa,a.Ja=!0,a.u("Type ? for help with PDPjs Debugger commands"),cd(a),b||dd(a),a.ua&&(b=a.ua,a.ua=null,ed(a,b,!0))):this.status("No debugger detected");this.A.fa||this.u("CPU will not be auto-started "+(this.Oa?"(click Run to start)":"(type 'go' to start)"))}return!0};
m.ra=function(a){return a?this.save():!0};m.fa=function(){return this.A.P?!0:this.A.fa?(sc(this),!0):!1};m.Kb=function(){return 0};function bd(a){void 0===a.Ia&&(a.Ia=0);void 0===a.pa&&(a.pa=-1);void 0===a.ua&&(a.ua=-1);a.A.Ua=0<=a.Ia&&0<a.pa;a.A.Ua&&(a.Ha=0,a.ta=a.Ia-a.X)}function wc(a,b){if(a.A.Ua){var c=!1;a.Ha=a.Ha+a.Kb()|0;a.ta-=b;0>=a.ta&&(a.ta+=a.pa,c=!0);0<=a.ua&&a.ua<=fd(a)&&(a.pa=a.ua=-1,bd(a),a.Y(),c=!0);c&&a.u(fd(a)+" cycles: checksum="+n(a.Ha))}}
m.sa=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.J[b]=c,!0;case "run":return this.J[b]=c,c.onclick=function(){var a;if(a=d.H)if(a=d.H,a.A.ba)a=!0;else{var b=null,c,h=pb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.A.ready);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.A.ba);c++);c==h.length&&(b=a);q("The "+b.type+" component ("+b.id+") is not "+(b.A.ready?"powered yet":"ready yet"+(b.fb?" (waiting for notification)":""))+".");a=!1}a&&(d.A.P?d.Y():sc(d))},!0;
case "speed":return this.J[b]=c,!0;case "setSpeed":return this.J[b]=c,c.onclick=function(){gd(d,d.ha<<1,!0)},c.textContent=this.ga.toFixed(2)+"Mhz",!0}return!1};function vc(a,b,c){a.X+=b;c&&(a.V=a.N=0)}function hd(a,b){var c=1;b&&1<a.ha&&a.Z&&(c=a.Z/a.lb);a.nb=Math.round(1E3/id);a.Ja=Math.floor(a.ob/id*c);b||(a.ma=a.Ja);a.cb=0}function fd(a){return a.X+a.M+a.V-a.N}function ad(a){a.Z=0;a.pb=0;a.X=a.M=a.V=a.N=0;bd(a);gd(a,1)}
function gd(a,b,c){var d=!1;if(void 0!==b){.8>a.Z/a.ga?b=1:d=!0;a.ha=b;b=a.lb*a.ha;if(a.ga!=b){a.ga=b;b=a.ga.toFixed(2)+"Mhz";var e=a.J.setSpeed;e&&(e.textContent=b);a.u("target speed: "+b)}c&&a.H&&jd(a.H)}vc(a,a.M);a.M=0;a.L=nb();a.T=0;hd(a);return d}function kd(a,b){for(var c=a.R.length-1;0<=c;c--){var d=a.R[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function ld(a){for(var b=[],c=0;c<a.R.length;c++)b.push(a.R[c][0]);return b}
function uc(a,b){for(var c=a.R.length-1;0<=c;c--){var d=a.R[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function md(a,b){var c=a.V-=a.N;a.N=0;b&&(a.V=0);return c}
m.lc=function(){if(this.A.P){this.eb>=this.pb&&hd(this,!0);this.wa=0;this.Ga=nb();if(this.T){var a=this.Ga-this.T;a>this.ob&&(this.L+=a,this.L>this.Ga&&(this.L=this.Ga))}try{do{var b=kd(this,this.A.Va?1:this.Ja);try{this.$a(b)}catch(e){if("number"!=typeof e)throw e;}b=md(this,!0);this.wa+=b;this.M+=b;wc(this,b);uc(this,b);this.na-=b;if(0>=this.na){this.na+=this.Ja;++this.qb>=nd&&(this.H&&K(this.H,void 0),this.qb=0);break}}while(this.A.P)}catch(e){this.Y();this.H&&this.H.stop(nb(),fd(this));yb(this,
e.stack||e.message);return}if(this.A.P){a=setTimeout;b=this.Gb;this.T=nb();var c=this.ob;this.wa&&(c=Math.round(c*this.wa/this.Ja));var c=c-(this.T-this.Ga),d=this.T-this.L;d&&(this.ba=Math.round(this.M/(10*d))/100,864E5<=d&&(this.W=0,gd(this)));if(0>c||this.ba<this.ga)-1E3>c&&(this.L-=c),c=0;this.eb+=this.wa;this.T+=c;a(b,c)}}};
function sc(a,b){if(!zb(a))if(a.A.P)a.u(a.toString()+" busy");else{gd(a);a.A.P=!0;a.A.jb=!0;var c=a.J.run;c&&(c.textContent="Halt");a.H&&(b&&jd(a.H,!0),a.H.start(a.L,fd(a)));a.D||a.status("Started");setTimeout(a.Gb,0)}}m.$a=function(){return 0};m.Y=function(a){var b=!1;if(this.A.P){md(this);vc(this,this.M);this.M=0;this.A.P=!1;if(b=this.J.run)b.textContent="Run";this.H&&this.H.stop(nb(),fd(this));b=!0;this.D||this.status("Stopped")}this.A.complete=a;return b};var id=30,nd=15,Zc=["power","reset"];
function od(a){var b=+a.model||1001;Yc.call(this,a,1E6);this.nb=b;this.ab=+a.addrReset||0;this.Sb=pd.bind(this);this.w=M.bind(this);this.Ea=null;this.Db=[];this.A.complete=!1}ja(od,Yc);m=od.prototype;
m.reset=function(){this.status("Model "+this.nb);this.A.P&&this.Y();this.Ka=this.La=this.b=this.I=0;this.i=this.pa=this.ab;this.K=this.O=-1;this.F=this.j=0;this.kb=[0,0];this.xa=[0,0];this.oa=[0,0];this.ya=[0,0];this.Da=this.i;this.C=0;this.f=this.hc;this.g=this.sc;this.Ea=null;ad(this);this.A.error=!1;Yc.prototype.reset.call(this)};m.Lb=function(){return 0};
m.save=function(){var a=new G(this);a.set(0,[this.b,this.I,this.Ka,this.La,this.i,this.O,this.K,this.j,this.C,this.pa,this.Da,this.ab]);a.set(1,[]);a.set(2,[this.W,this.ka,this.A.fa]);a.set(3,qd(this));a.set(4,ld(this));return a.data()};
m.restore=function(a){var b;b=a[0];ga();ca();ga();var c=b[Symbol.iterator];b=c?c.call(b):ha(b);this.b=b.next().value;this.I=b.next().value;this.Ka=b.next().value;this.La=b.next().value;this.i=b.next().value;this.O=b.next().value;this.K=b.next().value;this.j=b.next().value;this.C=b.next().value;this.pa=b.next().value;this.Da=b.next().value;this.ab=b.next().value;b=a[2];this.W=b[0];gd(this,b[1]);this.A.fa=b[2];b=a[3];for(c=b.length-1;0<=c;c--){var d;a:{for(d=0;d<this.Db.length;d++){var e=this.Db[d];
if(e.pc===b[c]){d=e;break a}}d=null}d&&(d.next=this.Ea,this.Ea=d)}a=a[4];for(b=0;b<this.R.length&&b<a.length;b++)this.R[b][0]=a[b];return!0};function rd(a,b){a.j=a.j&-254049|b&254048;a.j|=b&4096;b&2048?a.j&4096||(a.j|=2048):a.j&=-2049}function sd(a,b){var c=a.i;a.i=(c+b)%Tb;return c}function H(a,b){a.I=0;a.O=-1;a.i=b%Tb}function qd(a){var b=[];for(a=a.Ea;a;)b.push(a.pc),a=a.next;return b}m.hc=function(a){var b=this.G;a=this.Da=a;return b.b[(a&b.j)>>>b.i].f(a&16383,a)};
m.sc=function(a,b){var c=this.G;a=this.Da=a;c.b[(a&c.j)>>>c.i].g(b,a&16383,a);return b};
m.$a=function(a){this.A.complete=!0;var b=this.D?td(this.D)?1:this.A.jb?-1:0:0,c=a?this.A.jb?0:1:-1;this.A.jb=!1;this.V=this.N=a;this.C=this.C&-5|(b?4:0);do{if(this.C){if(this.C&4){if(ud(this.D,this.i,c)){this.Y();break}++b||(this.C&=-5);c||c++}if(a=this.C&11)this.C&2?this.Ea||(this.C&=-3):this.C&1&&this.C++,a=!1;if(a){if(this.C&4&&ud(this.D,this.i,c)){this.Y();break}if(0>c)break}}this.C&=15;this.I&4194304?this.I=this.Ka=this.f(this.b):0<=this.O?(this.I=this.La=this.f(this.O),this.O=-1):(this.I=this.La=
this.f(this.pa=this.i),this.i=(this.i+1)%Tb);this.I&=8388607;this.b=this.I&262143;if(a=this.I>>18&15)this.b=this.b+(this.Ka=this.f(a))&Sb;a=this.I&4194304?-1:this.La/$b|0;0<=a&&this.Sb(a);this.N--}while(0<this.N);return this.A.complete?this.V-this.N:!1===this.A.complete?-1:0};Ya(function(){for(var a=w(document,v,"cpu"),b=0;b<a.length;b++){var c=a[b],d=t(c),d=new od(d);sb(d,c)}});function pd(a){vd[a>>4].call(this,a,a&15)}function O(a){this.w(a)}
m.lc=function(){if(this.A.P){this.cb>=this.ob&&hd(this,!0);this.va=0;this.Ga=nb();if(this.T){var a=this.Ga-this.T;a>this.nb&&(this.L+=a,this.L>this.Ga&&(this.L=this.Ga))}try{do{var b=kd(this,this.A.Ua?1:this.Ja);try{this.Za(b)}catch(e){if("number"!=typeof e)throw e;}b=md(this,!0);this.va+=b;this.M+=b;wc(this,b);uc(this,b);this.ma-=b;if(0>=this.ma){this.ma+=this.Ja;++this.pb>=nd&&(this.H&&K(this.H,void 0),this.pb=0);break}}while(this.A.P)}catch(e){this.Y();this.H&&this.H.stop(nb(),fd(this));yb(this,
e.stack||e.message);return}if(this.A.P){a=setTimeout;b=this.Fb;this.T=nb();var c=this.nb;this.va&&(c=Math.round(c*this.va/this.Ja));var c=c-(this.T-this.Ga),d=this.T-this.L;d&&(this.Z=Math.round(this.M/(10*d))/100,864E5<=d&&(this.X=0,gd(this)));if(0>c||this.Z<this.ga)-1E3>c&&(this.L-=c),c=0;this.cb+=this.va;this.T+=c;a(b,c)}}};
function sc(a,b){if(!zb(a))if(a.A.P)a.u(a.toString()+" busy");else{gd(a);a.A.P=!0;a.A.ib=!0;var c=a.J.run;c&&(c.textContent="Halt");a.H&&(b&&jd(a.H,!0),a.H.start(a.L,fd(a)));a.D||a.status("Started");setTimeout(a.Fb,0)}}m.Za=function(){return 0};m.Y=function(a){var b=!1;if(this.A.P){md(this);vc(this,this.M);this.M=0;this.A.P=!1;if(b=this.J.run)b.textContent="Run";this.H&&this.H.stop(nb(),fd(this));b=!0;this.D||this.status("Stopped")}this.A.complete=a;return b};var id=30,nd=15,Zc=["power","reset"];
function od(a){var b=+a.model||1001;Yc.call(this,a,1E6);this.mb=b;this.$a=+a.addrReset||0;this.Sb=pd.bind(this);this.w=M.bind(this);this.Da=null;this.Cb=[];this.A.complete=!1}ja(od,Yc);m=od.prototype;
m.reset=function(){this.status("Model "+this.mb);this.A.P&&this.Y();this.Ka=this.La=this.b=this.I=0;this.i=this.oa=this.$a;this.K=this.O=-1;this.F=this.j=0;this.jb=[0,0];this.wa=[0,0];this.na=[0,0];this.xa=[0,0];this.Ca=this.i;this.C=0;this.f=this.hc;this.g=this.sc;this.Da=null;ad(this);this.A.error=!1;Yc.prototype.reset.call(this)};m.Kb=function(){return 0};
m.save=function(){var a=new G(this);a.set(0,[this.b,this.I,this.Ka,this.La,this.i,this.O,this.K,this.j,this.C,this.oa,this.Ca,this.$a]);a.set(1,[]);a.set(2,[this.X,this.ha,this.A.fa]);a.set(3,qd(this));a.set(4,ld(this));return a.data()};
m.restore=function(a){var b;b=a[0];ga();ca();ga();var c=b[Symbol.iterator];b=c?c.call(b):ha(b);this.b=b.next().value;this.I=b.next().value;this.Ka=b.next().value;this.La=b.next().value;this.i=b.next().value;this.O=b.next().value;this.K=b.next().value;this.j=b.next().value;this.C=b.next().value;this.oa=b.next().value;this.Ca=b.next().value;this.$a=b.next().value;b=a[2];this.X=b[0];gd(this,b[1]);this.A.fa=b[2];b=a[3];for(c=b.length-1;0<=c;c--){var d;a:{for(d=0;d<this.Cb.length;d++){var e=this.Cb[d];
if(e.pc===b[c]){d=e;break a}}d=null}d&&(d.next=this.Da,this.Da=d)}a=a[4];for(b=0;b<this.R.length&&b<a.length;b++)this.R[b][0]=a[b];return!0};function rd(a,b){a.j=a.j&-254049|b&254048;a.j|=b&4096;b&2048?a.j&4096||(a.j|=2048):a.j&=-2049}function sd(a,b){var c=a.i;a.i=(c+b)%Tb;return c}function H(a,b){a.I=0;a.O=-1;a.i=b%Tb}function qd(a){var b=[];for(a=a.Da;a;)b.push(a.pc),a=a.next;return b}m.hc=function(a){var b=this.G;a=this.Ca=a;return b.b[(a&b.j)>>>b.i].f(a&16383,a)};
m.sc=function(a,b){var c=this.G;a=this.Ca=a;c.b[(a&c.j)>>>c.i].g(b,a&16383,a);return b};
m.Za=function(a){this.A.complete=!0;var b=this.D?td(this.D)?1:this.A.ib?-1:0:0,c=a?this.A.ib?0:1:-1;this.A.ib=!1;this.V=this.N=a;this.C=this.C&-5|(b?4:0);do{if(this.C){if(this.C&4){if(ud(this.D,this.i,c)){this.Y();break}++b||(this.C&=-5);c||c++}if(a=this.C&11)this.C&2?this.Da||(this.C&=-3):this.C&1&&this.C++,a=!1;if(a){if(this.C&4&&ud(this.D,this.i,c)){this.Y();break}if(0>c)break}}this.C&=15;this.I&4194304?this.I=this.Ka=this.f(this.b):0<=this.O?(this.I=this.La=this.f(this.O),this.O=-1):(this.I=this.La=
this.f(this.oa=this.i),this.i=(this.i+1)%Tb);this.I&=8388607;this.b=this.I&262143;if(a=this.I>>18&15)this.b=this.b+(this.Ka=this.f(a))&Sb;a=this.I&4194304?-1:this.La/$b|0;0<=a&&this.Sb(a);this.N--}while(0<this.N);return this.A.complete?this.V-this.N:!1===this.A.complete?-1:0};Xa(function(){for(var a=w(document,v,"cpu"),b=0;b<a.length;b++){var c=a[b],d=t(c),d=new od(d);sb(d,c)}});function pd(a){vd[a>>4].call(this,a,a&15)}function O(a){this.w(a)}
function wd(){var a=0,b=this.f(this.b),c=b/ac&63,d=b>>24&63,c=c-d;0>c&&(a++,c=36-d,0>c&&(c=64-d));b=c*ac+(d<<24)+(b&16777215);a&&(b=(b+a)%D);this.g(this.b,b)}function xd(a,b){a=this.f(this.b);if(0>this.K)this.K=a,this.I=this.b|4194304;else{var c=this.K/ac&63,d=this.K>>24&63;a=32>=c+d?(a>>c&(1<<d)-1)>>>0:Math.trunc(a/Math.pow(2,c))%Math.pow(2,d);this.g(b,a);this.j&=-8193;this.K=-1}}
function yd(a,b){a=this.f(this.b);if(0>this.K)this.K=a,this.I=this.b|4194304;else{var c=this.K/ac&63,d=this.K>>24&63;b=this.f(b)%Math.pow(2,d)*Math.pow(2,c)%D;a=a-a%Math.pow(2,c+d)+b+a%Math.pow(2,c);this.g(this.b,a);this.j&=-8193;this.K=-1}}function zd(a,b){this.g(b,this.f(this.b))}function Ad(a,b){this.g(b,this.b)}function Bd(a,b){this.g(this.b,this.f(b))}function Cd(a,b){this.g(b,0)}function Dd(a,b){this.g(b,C-this.f(b))}function Ed(a,b){this.g(b,C)}
function Fd(a,b){var c=this.f(this.b),d=this.f(b);this.g(b,Gd(a,d,c)+(c-(c&x)))}function Hd(a,b){var c=this.f(b);this.g(b,Gd(a,c,0))}function Id(a,b){b=this.f(b);var c=this.f(this.b);this.g(this.b,Gd(a,c,b)+(b-(b&x)))}function Jd(a,b){var c=this.f(this.b),d=c;if(a&=384)switch(d-=d&x,a){case 256:d+=x;break;case 384:d+=c>z?x:0}c=d;this.g(this.b,c);b&&this.g(b,c)}function Kd(a,b){var c=(this.f(this.b)&x)*y,d=this.f(b);this.g(b,Gd(a,d,c)+c)}
function Ld(a,b){var c=this.b*y,d=this.f(b);this.g(b,Gd(a,d,c)+c)}function ce(a,b){b=(this.f(b)&x)*y;var c=this.f(this.b);this.g(this.b,Gd(a,c,b)+b)}function de(a,b){var c=this.f(this.b),d=(c&x)*y,c=Gd(a,c,d)+d;this.g(this.b,c);b&&this.g(b,c)}function ee(a,b){var c=this.f(this.b)&x,d=this.f(b);this.g(b,fe(a,d,c)+c)}function ge(a,b){var c=this.f(b);this.g(b,fe(a,c,this.b)+this.b)}function he(a,b){b=this.f(b)&x;var c=this.f(this.b);this.g(this.b,fe(a,c,b)+b)}
function Ld(a,b){var c=this.b*y,d=this.f(b);this.g(b,Gd(a,d,c)+c)}function Md(a,b){b=(this.f(b)&x)*y;var c=this.f(this.b);this.g(this.b,Gd(a,c,b)+b)}function Nd(a,b){var c=this.f(this.b),d=(c&x)*y,c=Gd(a,c,d)+d;this.g(this.b,c);b&&this.g(b,c)}function ee(a,b){var c=this.f(this.b)&x,d=this.f(b);this.g(b,fe(a,d,c)+c)}function ge(a,b){var c=this.f(b);this.g(b,fe(a,c,this.b)+this.b)}function he(a,b){b=this.f(b)&x;var c=this.f(this.b);this.g(this.b,fe(a,c,b)+b)}
function ie(a,b){var c=this.f(this.b),d=c;if(a&=384)switch(d&=x,a){case 256:d+=x*y;break;case 384:d+=c>Ub?x*y:0}c=d;this.g(this.b,c);b&&this.g(b,c)}function je(a,b){var c=this.f(this.b)/y|0,d=this.f(b);this.g(b,fe(a,d,c)+c)}function ke(a,b){var c=this.f(b);this.g(b,fe(a,c,0))}function le(a,b){b=this.f(b)/y|0;var c=this.f(this.b);this.g(this.b,fe(a,c,b)+b)}function me(a,b){var c=this.f(this.b),d=c/y|0,c=fe(a,c,d)+d;this.g(this.b,c);b&&this.g(b,c)}function P(a){ne[a&7].call(this,a,a>>3&127)}
function oe(){}function pe(){}function M(a){this.u("undefined opcode: "+va(a));sd(this,-1);this.Y()}function qe(a){a>z&&(a!=B?a=Xb-a:this.j|=163840);return a}function Q(a,b){var c=(a+b)%D;re.call(this,a,b,c);return c}
function se(a,b,c){var d=!1,e=!1;if(void 0===c){if(!a)return this.j|=131104,-1;c=b>z?C:0}else if((c<B?c:Xb-c-(b?1:0))>=(a<B?a:Xb-a))return this.j|=131104,-1;var f=c-c%B;b=b%B+(c&1)*B;c=this.F=f+Math.trunc(c/2);a>z&&(a=D-a,d=!d);c>z&&(b?(c=C-c,b=D-b):c&&(c=D-c),e=!0,d=!d);f=this.kb;f[0]=0;f[1]=0;f=this.xa;f[0]=1;f[1]=0;f=this.oa;f[0]=a;f[1]=0;a=this.ya;a[0]=b;for(a[1]=c;0<te(this.ya,this.oa);)ue(this.oa,this.oa),ue(this.xa,this.xa);do{if(0<=te(this.ya,this.oa)&&(c=this.ya,a=this.oa,c[0]-=a[0],c[1]-=
a[1],0>c[0]&&(c[0]+=D,c[1]--),ue(this.kb,this.xa),ve(this.ya)))break;we(this.oa);we(this.xa)}while(!ve(this.xa));b=this.kb[0];this.F=this.ya[0];d&&b&&(b=D-b);e&&this.F&&(this.F=D-this.F);return b}
function xe(a,b,c,d){var e=a,f=b;b=!1;var g;e>z&&(d||1001!=this.nb||e!=B)&&(e=D-e,b=!b);f>z&&(f=D-f,b=!b);if(e<y&&f<y)a=e*f,g=0;else{a=e&x;e=Math.trunc(e/y);g=f&x;var f=Math.trunc(f/y),h=a*g,k=e*g+Math.trunc(h/y);g=Math.trunc(k/y);k=(k&x)+a*f;a=(k*y+(h&x))%D;g+=Math.trunc(k/y)+e*f}b&&(a?(g=C-g,a=D-a):g&&(g=D-g));b=a;a=g;e=a-a%B;a=2*a%D+Math.trunc(b/B);b=e+b%B;a-a%B!=e&&(b=a);d?g=b:(b==B&&a==B&&(this.j|=131072),this.F=b,g=a);c&&(a=this.F,!d&&(g||a>z)&&(g!=C||a<=z)&&(this.j|=131072),g=a);return g}
function ye(a){a?a==B?this.j|=163840:a=Xb-a:this.j|=98304;return a}function ze(a,b){var c=a-b;0>c&&(c+=D);re.call(this,c,b,a);return c}function re(a,b,c){a=Math.trunc(a/Wb);b=Math.trunc(b/Wb);c=Math.trunc(c/Wb);var d=a^(a^b)&(b^c);this.j=this.j|(d&2?65536:0)|(d&1?32768:0)|((a^c)&(b^c)&2?131072:0)}function R(a,b){return((a/E|0)&(b/E|0))*E+((a&b)>>>0)}function S(a,b){return R(a,(~(b/E|0)&15)*E+(~b>>>0))}function T(a,b){return(a<B?a:a-D)-(b<B?b:b-D)}
function Ae(a,b){return(~((a/E|0)^(b/E|0))&15)*E+(~(a^b)>>>0)}function U(a,b){return(a/E|0|b/E|0)*E+((a|b)>>>0)}function V(a){return a<B?a:a-D}function W(a,b){return((a/E|0)^(b/E|0))*E+((a^b)>>>0)}function X(a){return(a/y|0)+(a&x)*y}function fe(a,b,c){switch(a&384){case 0:b-=b&x;break;case 128:b=0;break;case 256:b=x*y;break;case 384:b=c>Ub?x*y:0}return b}function Gd(a,b,c){switch(a&384){case 0:b&=x;break;case 128:b=0;break;case 256:b=x;break;case 384:b=c>z?x:0}return b}
function oe(){}function pe(){}function M(a){this.u("undefined opcode: "+ua(a));sd(this,-1);this.Y()}function qe(a){a>z&&(a!=B?a=Xb-a:this.j|=163840);return a}function Q(a,b){var c=(a+b)%D;re.call(this,a,b,c);return c}
function se(a,b,c){var d=!1,e=!1;if(void 0===c){if(!a)return this.j|=131104,-1;c=b>z?C:0}else if((c<B?c:Xb-c-(b?1:0))>=(a<B?a:Xb-a))return this.j|=131104,-1;var f=c-c%B;b=b%B+(c&1)*B;c=this.F=f+Math.trunc(c/2);a>z&&(a=D-a,d=!d);c>z&&(b?(c=C-c,b=D-b):c&&(c=D-c),e=!0,d=!d);f=this.jb;f[0]=0;f[1]=0;f=this.wa;f[0]=1;f[1]=0;f=this.na;f[0]=a;f[1]=0;a=this.xa;a[0]=b;for(a[1]=c;0<te(this.xa,this.na);)ue(this.na,this.na),ue(this.wa,this.wa);do{if(0<=te(this.xa,this.na)&&(c=this.xa,a=this.na,c[0]-=a[0],c[1]-=
a[1],0>c[0]&&(c[0]+=D,c[1]--),ue(this.jb,this.wa),ve(this.xa)))break;we(this.na);we(this.wa)}while(!ve(this.wa));b=this.jb[0];this.F=this.xa[0];d&&b&&(b=D-b);e&&this.F&&(this.F=D-this.F);return b}
function xe(a,b,c,d){var e=a,f=b;b=!1;var g;e>z&&(d||1001!=this.mb||e!=B)&&(e=D-e,b=!b);f>z&&(f=D-f,b=!b);if(e<y&&f<y)a=e*f,g=0;else{a=e&x;e=Math.trunc(e/y);g=f&x;var f=Math.trunc(f/y),h=a*g,k=e*g+Math.trunc(h/y);g=Math.trunc(k/y);k=(k&x)+a*f;a=(k*y+(h&x))%D;g+=Math.trunc(k/y)+e*f}b&&(a?(g=C-g,a=D-a):g&&(g=D-g));b=a;a=g;e=a-a%B;a=2*a%D+Math.trunc(b/B);b=e+b%B;a-a%B!=e&&(b=a);d?g=b:(b==B&&a==B&&(this.j|=131072),this.F=b,g=a);c&&(a=this.F,!d&&(g||a>z)&&(g!=C||a<=z)&&(this.j|=131072),g=a);return g}
function ye(a){a?a==B?this.j|=163840:a=Xb-a:this.j|=98304;return a}function ze(a,b){var c=a-b;0>c&&(c+=D);re.call(this,c,b,a);return c}function re(a,b,c){a=Math.trunc(a/Wb);b=Math.trunc(b/Wb);c=Math.trunc(c/Wb);var d=a^(a^b)&(b^c);this.j=this.j|(d&2?65536:0)|(d&1?32768:0)|((a^c)&(b^c)&2?131072:0)}function R(a,b){return((a/F|0)&(b/F|0))*F+((a&b)>>>0)}function S(a,b){return R(a,(~(b/F|0)&15)*F+(~b>>>0))}function Ae(a,b){return(a<B?a:a-D)-(b<B?b:b-D)}
function Be(a,b){return(~((a/F|0)^(b/F|0))&15)*F+(~(a^b)>>>0)}function T(a,b){return(a/F|0|b/F|0)*F+((a|b)>>>0)}function U(a){return a<B?a:a-D}function V(a,b){return((a/F|0)^(b/F|0))*F+((a^b)>>>0)}function W(a){return(a/y|0)+(a&x)*y}function fe(a,b,c){switch(a&384){case 0:b-=b&x;break;case 128:b=0;break;case 256:b=x*y;break;case 384:b=c>Ub?x*y:0}return b}function Gd(a,b,c){switch(a&384){case 0:b&=x;break;case 128:b=0;break;case 256:b=x;break;case 384:b=c>z?x:0}return b}
function ue(a,b){a[0]+=b[0];a[1]+=b[1];a[0]>=D&&(a[0]%=D,a[1]++)}function te(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function we(a){a[1]%2&&(a[0]+=D);a[0]=Math.trunc(a[0]/2);a[1]=Math.trunc(a[1]/2)}function ve(a){return!a[0]&&!a[1]}
var vd=[O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},wd,function(a,b){this.j&8192||(wd.call(this),this.j|=8192);xd.call(this,0,b)},xd,function(a,b){this.j&8192||(wd.call(this),this.j|=8192);yd.call(this,0,b)},yd,function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},
function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},
@ -129,172 +129,173 @@ a-36)%D+Math.trunc(d/Math.pow(2,72-a)));this.g(b,c);this.g(b+1&15,d)}},function(
a)},function(a,b){a=!1;for(var c=this.f(b),d=c/y|0,c=c&x;!a;)this.g(c,this.f(d)),c==this.b&&(a=!0),d=d+1&x,c=c+1&x,this.A.P||(this.g(b,d*y+c),a||sd(this,-1),a=!0)},function(a,b){a=(this.f(b)+262145)%D;this.g(b,a);a<B&&H(this,this.b)},function(a,b){a=(this.f(b)+262145)%D;this.g(b,a);a>=B&&H(this,this.b)},function(a,b){b&1&&(this.j|=4096);b&2&&rd(this,this.Ka/y|0);b&4&&this.Y();b&8&&this.w(a);H(this,this.b)},function(a,b){a=b<<14;this.j&a&&(this.j&=~a,H(this,this.b))},function(){this.O=this.b},M,function(a,
b){a=(this.f(b)+262145)%D;this.g(b,a);a/y|0||(this.j|=262144);this.g(a&Sb,(this.j&x)*y+this.i);this.j&=-8193;H(this,this.b)},function(a,b){a=this.f(b);a+=262145;this.g(a&Sb,this.f(this.b));a>=D&&(a-=D);a/y|0||(this.j|=262144);this.g(b,a)},function(a,b){a=this.f(b);var c=this.f(a&Sb);this.g(this.b,c);this.b==b&&(a=c);a-=262145;0>a&&(a+=D);(a/y|0)==x&&(this.j|=262144);this.g(b,a)},function(a,b){a=this.f(b);var c=this.f(a&Sb);a-=262145;0>a&&(a+=D);(a/y|0)==x&&(this.j|=262144);this.g(b,a);H(this,c&Sb)},
function(){this.g(this.b,(this.j&x)*y+this.i);this.j&=-8193;H(this,this.b+1)},function(a,b){this.g(b,(this.j&x)*y+this.i);this.j&=-8193;H(this,this.b)},function(a,b){this.g(this.b,this.f(b));this.g(b,this.b*y+this.i);H(this,this.b+1)},function(a,b){a=this.f(b);this.g(b,this.f(a/y|0));H(this,this.b)},function(a,b){this.g(b,Q.call(this,this.f(b),this.f(this.b)))},function(a,b){this.g(b,Q.call(this,this.f(b),this.b))},function(a,b){this.g(this.b,Q.call(this,this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,
this.g(b,Q.call(this,this.f(b),this.f(this.b))))},function(a,b){this.g(b,ze.call(this,this.f(b),this.f(this.b)))},function(a,b){this.g(b,ze.call(this,this.f(b),this.b))},function(a,b){this.g(this.b,ze.call(this,this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,ze.call(this,this.f(b),this.f(this.b))))},oe,function(a,b){0>T(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){T(this.f(b),this.b)||H(this,this.i+1)},function(a,b){0>=T(this.f(b),this.b)&&H(this,this.i+1)},function(){H(this,
this.i+1)},function(a,b){0<=T(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){T(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){0<T(this.f(b),this.b)&&H(this,this.i+1)},pe,function(a,b){0>T(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(a,b){T(this.f(b),this.f(this.b))||H(this,this.i+1)},function(a,b){0>=T(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(){H(this,this.i+1)},function(a,b){0<=T(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(a,b){T(this.f(b),this.f(this.b))&&
H(this,this.i+1)},function(a,b){0<T(this.f(b),this.f(this.b))&&H(this,this.i+1)},oe,function(a,b){0>V(this.f(b))&&H(this,this.b)},function(a,b){V(this.f(b))||H(this,this.b)},function(a,b){0>=V(this.f(b))&&H(this,this.b)},function(){H(this,this.b)},function(a,b){0<=V(this.f(b))&&H(this,this.b)},function(a,b){V(this.f(b))&&H(this,this.b)},function(a,b){0<V(this.f(b))&&H(this,this.b)},function(a,b){b&&this.g(b,this.f(this.b))},function(a,b){a=this.f(this.b);0>V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,
b){a=this.f(this.b);V(a)||H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.f(this.b);0>=V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){H(this,this.i+1);b&&this.g(b,this.f(this.b))},function(a,b){a=this.f(this.b);0<=V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.f(this.b);V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.f(this.b);0<V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){this.g(b,Q.call(this,this.f(b),1))},function(a,b){a=this.g(b,Q.call(this,this.f(b),
1));0>V(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));V(a)||H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));0>=V(a)&&H(this,this.b)},function(a,b){this.g(b,Q.call(this,this.f(b),1));H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));0<=V(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));V(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));0<V(a)&&H(this,this.b)},function(a,b){a=this.g(this.b,Q.call(this,
this.f(this.b),1));b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));0>V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));V(a)||H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));0>=V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));0<=V(a)&&
H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));0<V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){this.g(b,Q.call(this,this.f(b),C))},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));0>V(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));V(a)||H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));0>=V(a)&&H(this,this.b)},
function(a,b){this.g(b,Q.call(this,this.f(b),C));H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));0<=V(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));V(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));0<V(a)&&H(this,this.b)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));0>V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,
this.f(this.b),C));V(a)||H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));0>=V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));0<=V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));V(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),
C));0<V(a)&&H(this,this.i+1);b&&this.g(b,a)},Cd,Cd,function(){this.g(this.b,0)},function(a,b){this.g(this.b,this.g(b,0))},function(a,b){this.g(b,R(this.f(b),this.f(this.b)))},function(a,b){this.g(b,R(this.f(b),this.b))},function(a,b){this.g(this.b,R(this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,R(this.f(b),this.f(this.b))))},function(a,b){this.g(b,R(C-this.f(b),this.f(this.b)))},function(a,b){this.g(b,R(C-this.f(b),this.b))},function(a,b){this.g(this.b,R(C-this.f(b),this.f(this.b)))},
function(a,b){this.g(this.b,this.g(b,R(C-this.f(b),this.f(this.b))))},zd,Ad,pe,zd,function(a,b){this.g(b,R(this.f(b),C-this.f(this.b)))},function(a,b){this.g(b,R(this.f(b),C-this.b))},function(a,b){this.g(this.b,R(this.f(b),C-this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,R(this.f(b),C-this.f(this.b))))},oe,oe,Bd,Bd,function(a,b){this.g(b,W(this.f(b),this.f(this.b)))},function(a,b){this.g(b,W(this.f(b),this.b))},function(a,b){this.g(this.b,W(this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,
this.g(b,W(this.f(b),this.f(this.b))))},function(a,b){this.g(b,U(this.f(b),this.f(this.b)))},function(a,b){this.g(b,U(this.f(b),this.b))},function(a,b){this.g(this.b,U(this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,U(this.f(b),this.f(this.b))))},function(a,b){this.g(b,R(C-this.f(b),C-this.f(this.b)))},function(a,b){this.g(b,R(C-this.f(b),C-this.b))},function(a,b){this.g(this.b,R(C-this.f(b),C-this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,R(C-this.f(b),C-this.f(this.b))))},
function(a,b){this.g(b,Ae(this.f(b),this.f(this.b)))},function(a,b){this.g(b,Ae(this.f(b),this.b))},function(a,b){this.g(this.b,Ae(this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,Ae(this.f(b),this.f(this.b))))},Dd,Dd,function(a,b){this.g(this.b,C-this.f(b))},function(a,b){this.g(this.b,this.g(b,C-this.f(b)))},function(a,b){this.g(b,U(C-this.f(b),this.f(this.b)))},function(a,b){this.g(b,U(C-this.f(b),this.b))},function(a,b){this.g(this.b,U(C-this.f(b),this.f(this.b)))},function(a,
b){this.g(this.b,this.g(b,U(C-this.f(b),this.f(this.b))))},function(a,b){this.g(b,C-this.f(this.b))},function(a,b){this.g(b,C-this.b)},function(){this.g(this.b,C-this.f(this.b))},function(a,b){this.g(this.b,this.g(b,C-this.f(this.b)))},function(a,b){this.g(b,U(this.f(b),C-this.f(this.b)))},function(a,b){this.g(b,U(this.f(b),C-this.b))},function(a,b){this.g(this.b,U(this.f(b),C-this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,U(this.f(b),C-this.f(this.b))))},function(a,b){this.g(b,U(C-this.f(b),
C-this.f(this.b)))},function(a,b){this.g(b,U(C-this.f(b),C-this.b))},function(a,b){this.g(this.b,U(C-this.f(b),C-this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,U(C-this.f(b),C-this.f(this.b))))},Ed,Ed,function(){this.g(this.b,C)},function(a,b){this.g(this.b,this.g(b,C))},Fd,Hd,Id,Jd,Kd,Ld,ce,de,Fd,Hd,Id,Jd,Kd,Ld,ce,de,Fd,Hd,Id,Jd,Kd,Ld,ce,de,Fd,Hd,Id,Jd,Kd,Ld,ce,de,ee,ge,he,ie,je,ke,le,me,ee,ge,he,ie,je,ke,le,me,ee,ge,he,ie,je,ke,le,me,ee,ge,he,ie,je,ke,le,me,oe,oe,function(a,b){R(this.f(b),
this.b)||H(this,this.i+1)},function(a,b){R(this.f(b),this.b*y)||H(this,this.i+1)},function(){H(this,this.i+1)},function(){H(this,this.i+1)},function(a,b){R(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){R(this.f(b),this.b*y)&&H(this,this.i+1)},pe,pe,function(a,b){R(this.f(b),this.f(this.b))||H(this,this.i+1)},function(a,b){R(this.f(b),X(this.f(this.b)))||H(this,this.i+1)},function(){H(this,this.i+1)},function(){H(this,this.i+1)},function(a,b){R(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(a,
b){R(this.f(b),X(this.f(this.b)))&&H(this,this.i+1)},function(a,b){this.g(b,S(this.f(b),this.b))},function(a,b){this.g(b,S(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)||H(this,this.i+1);this.g(b,S(a,this.b))},function(a,b){a=this.f(b);var c=this.b*y;R(a,c)||H(this,this.i+1);this.g(b,S(a,c))},function(a,b){H(this,this.i+1);this.g(b,S(this.f(b),this.b))},function(a,b){H(this,this.i+1);this.g(b,S(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)&&H(this,this.i+1);this.g(b,S(a,
this.b))},function(a,b){a=this.f(b);var c=this.b*y;R(a,c)&&H(this,this.i+1);this.g(b,S(a,c))},function(a,b){this.g(b,S(this.f(b),this.f(this.b)))},function(a,b){this.g(b,S(this.f(b),X(this.f(this.b))))},function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)||H(this,this.i+1);this.g(b,S(a,c))},function(a,b){a=this.f(b);var c=X(this.f(this.b));R(a,c)||H(this,this.i+1);this.g(b,S(a,c))},function(a,b){H(this,this.i+1);this.g(b,S(this.f(b),this.f(this.b)))},function(a,b){H(this,this.i+1);this.g(b,S(this.f(b),
X(this.f(this.b))))},function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)&&H(this,this.i+1);this.g(b,S(a,c))},function(a,b){a=this.f(b);var c=X(this.f(this.b));R(a,c)&&H(this,this.i+1);this.g(b,S(a,c))},function(a,b){this.g(b,W(this.f(b),this.b))},function(a,b){this.g(b,W(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)||H(this,this.i+1);this.g(b,W(a,this.b))},function(a,b){a=this.f(b);var c=this.b*y;R(a,c)||H(this,this.i+1);this.g(b,W(a,c))},function(a,b){H(this,this.i+1);this.g(b,W(this.f(b),
this.b))},function(a,b){H(this,this.i+1);this.g(b,W(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)&&H(this,this.i+1);this.g(b,W(a,this.b))},function(a,b){a=this.f(b);var c=this.b*y;R(a,c)&&H(this,this.i+1);this.g(b,W(a,c))},function(a,b){this.g(b,W(this.f(b),this.f(this.b)))},function(a,b){this.g(b,W(this.f(b),X(this.f(this.b))))},function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)||H(this,this.i+1);this.g(b,W(a,c))},function(a,b){a=this.f(b);var c=X(this.f(this.b));R(a,c)||H(this,
this.i+1);this.g(b,W(a,c))},function(a,b){H(this,this.i+1);this.g(b,W(this.f(b),this.f(this.b)))},function(a,b){H(this,this.i+1);this.g(b,W(this.f(b),X(this.f(this.b))))},function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)&&H(this,this.i+1);this.g(b,W(a,c))},function(a,b){a=this.f(b);var c=X(this.f(this.b));R(a,c)&&H(this,this.i+1);this.g(b,W(a,c))},function(a,b){this.g(b,U(this.f(b),this.b))},function(a,b){this.g(b,U(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)||H(this,this.i+1);
this.g(b,U(a,this.b))},function(a,b){a=this.f(b);R(a,this.b*y)||H(this,this.i+1);this.g(b,U(a,this.b*y))},function(a,b){H(this,this.i+1);this.g(b,U(this.f(b),this.b))},function(a,b){H(this,this.i+1);this.g(b,U(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)&&H(this,this.i+1);this.g(b,U(a,this.b))},function(a,b){a=this.f(b);var c=this.b*y;R(a,c)&&H(this,this.i+1);this.g(b,U(a,c))},function(a,b){this.g(b,U(this.f(b),this.f(this.b)))},function(a,b){this.g(b,U(this.f(b),X(this.f(this.b))))},
function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)||H(this,this.i+1);this.g(b,U(a,c))},function(a,b){a=this.f(b);var c=X(this.f(this.b));R(a,c)||H(this,this.i+1);this.g(b,U(a,c))},function(a,b){H(this,this.i+1);this.g(b,U(this.f(b),this.f(this.b)))},function(a,b){H(this,this.i+1);this.g(b,U(this.f(b),X(this.f(this.b))))},function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)&&H(this,this.i+1);this.g(b,U(a,c))},function(a,b){a=this.f(b);var c=X(this.f(this.b));R(a,c)&&H(this,this.i+1);this.g(b,U(a,
this.g(b,Q.call(this,this.f(b),this.f(this.b))))},function(a,b){this.g(b,ze.call(this,this.f(b),this.f(this.b)))},function(a,b){this.g(b,ze.call(this,this.f(b),this.b))},function(a,b){this.g(this.b,ze.call(this,this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,ze.call(this,this.f(b),this.f(this.b))))},oe,function(a,b){0>Ae(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){Ae(this.f(b),this.b)||H(this,this.i+1)},function(a,b){0>=Ae(this.f(b),this.b)&&H(this,this.i+1)},function(){H(this,
this.i+1)},function(a,b){0<=Ae(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){Ae(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){0<Ae(this.f(b),this.b)&&H(this,this.i+1)},pe,function(a,b){0>Ae(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(a,b){Ae(this.f(b),this.f(this.b))||H(this,this.i+1)},function(a,b){0>=Ae(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(){H(this,this.i+1)},function(a,b){0<=Ae(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(a,b){Ae(this.f(b),this.f(this.b))&&
H(this,this.i+1)},function(a,b){0<Ae(this.f(b),this.f(this.b))&&H(this,this.i+1)},oe,function(a,b){0>U(this.f(b))&&H(this,this.b)},function(a,b){U(this.f(b))||H(this,this.b)},function(a,b){0>=U(this.f(b))&&H(this,this.b)},function(){H(this,this.b)},function(a,b){0<=U(this.f(b))&&H(this,this.b)},function(a,b){U(this.f(b))&&H(this,this.b)},function(a,b){0<U(this.f(b))&&H(this,this.b)},function(a,b){b&&this.g(b,this.f(this.b))},function(a,b){a=this.f(this.b);0>U(a)&&H(this,this.i+1);b&&this.g(b,a)},
function(a,b){a=this.f(this.b);U(a)||H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.f(this.b);0>=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){H(this,this.i+1);b&&this.g(b,this.f(this.b))},function(a,b){a=this.f(this.b);0<=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.f(this.b);U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.f(this.b);0<U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){this.g(b,Q.call(this,this.f(b),1))},function(a,b){a=this.g(b,Q.call(this,
this.f(b),1));0>U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));U(a)||H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));0>=U(a)&&H(this,this.b)},function(a,b){this.g(b,Q.call(this,this.f(b),1));H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));0<=U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));0<U(a)&&H(this,this.b)},function(a,b){a=this.g(this.b,
Q.call(this,this.f(this.b),1));b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));0>U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));U(a)||H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));0>=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),
1));0<=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));0<U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){this.g(b,Q.call(this,this.f(b),C))},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));0>U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));U(a)||H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));0>=U(a)&&
H(this,this.b)},function(a,b){this.g(b,Q.call(this,this.f(b),C));H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));0<=U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),C));0<U(a)&&H(this,this.b)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));0>U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,
Q.call(this,this.f(this.b),C));U(a)||H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));0>=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));0<=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),C));U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,
this.f(this.b),C));0<U(a)&&H(this,this.i+1);b&&this.g(b,a)},Cd,Cd,function(){this.g(this.b,0)},function(a,b){this.g(this.b,this.g(b,0))},function(a,b){this.g(b,R(this.f(b),this.f(this.b)))},function(a,b){this.g(b,R(this.f(b),this.b))},function(a,b){this.g(this.b,R(this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,R(this.f(b),this.f(this.b))))},function(a,b){this.g(b,R(C-this.f(b),this.f(this.b)))},function(a,b){this.g(b,R(C-this.f(b),this.b))},function(a,b){this.g(this.b,R(C-this.f(b),
this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,R(C-this.f(b),this.f(this.b))))},zd,Ad,pe,zd,function(a,b){this.g(b,R(this.f(b),C-this.f(this.b)))},function(a,b){this.g(b,R(this.f(b),C-this.b))},function(a,b){this.g(this.b,R(this.f(b),C-this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,R(this.f(b),C-this.f(this.b))))},oe,oe,Bd,Bd,function(a,b){this.g(b,V(this.f(b),this.f(this.b)))},function(a,b){this.g(b,V(this.f(b),this.b))},function(a,b){this.g(this.b,V(this.f(b),this.f(this.b)))},function(a,
b){this.g(this.b,this.g(b,V(this.f(b),this.f(this.b))))},function(a,b){this.g(b,T(this.f(b),this.f(this.b)))},function(a,b){this.g(b,T(this.f(b),this.b))},function(a,b){this.g(this.b,T(this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,T(this.f(b),this.f(this.b))))},function(a,b){this.g(b,R(C-this.f(b),C-this.f(this.b)))},function(a,b){this.g(b,R(C-this.f(b),C-this.b))},function(a,b){this.g(this.b,R(C-this.f(b),C-this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,R(C-this.f(b),C-
this.f(this.b))))},function(a,b){this.g(b,Be(this.f(b),this.f(this.b)))},function(a,b){this.g(b,Be(this.f(b),this.b))},function(a,b){this.g(this.b,Be(this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,Be(this.f(b),this.f(this.b))))},Dd,Dd,function(a,b){this.g(this.b,C-this.f(b))},function(a,b){this.g(this.b,this.g(b,C-this.f(b)))},function(a,b){this.g(b,T(C-this.f(b),this.f(this.b)))},function(a,b){this.g(b,T(C-this.f(b),this.b))},function(a,b){this.g(this.b,T(C-this.f(b),this.f(this.b)))},
function(a,b){this.g(this.b,this.g(b,T(C-this.f(b),this.f(this.b))))},function(a,b){this.g(b,C-this.f(this.b))},function(a,b){this.g(b,C-this.b)},function(){this.g(this.b,C-this.f(this.b))},function(a,b){this.g(this.b,this.g(b,C-this.f(this.b)))},function(a,b){this.g(b,T(this.f(b),C-this.f(this.b)))},function(a,b){this.g(b,T(this.f(b),C-this.b))},function(a,b){this.g(this.b,T(this.f(b),C-this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,T(this.f(b),C-this.f(this.b))))},function(a,b){this.g(b,
T(C-this.f(b),C-this.f(this.b)))},function(a,b){this.g(b,T(C-this.f(b),C-this.b))},function(a,b){this.g(this.b,T(C-this.f(b),C-this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,T(C-this.f(b),C-this.f(this.b))))},Ed,Ed,function(){this.g(this.b,C)},function(a,b){this.g(this.b,this.g(b,C))},Fd,Hd,Id,Jd,Kd,Ld,Md,Nd,Fd,Hd,Id,Jd,Kd,Ld,Md,Nd,Fd,Hd,Id,Jd,Kd,Ld,Md,Nd,Fd,Hd,Id,Jd,Kd,Ld,Md,Nd,ee,ge,he,ie,je,ke,le,me,ee,ge,he,ie,je,ke,le,me,ee,ge,he,ie,je,ke,le,me,ee,ge,he,ie,je,ke,le,me,oe,oe,function(a,
b){R(this.f(b),this.b)||H(this,this.i+1)},function(a,b){R(this.f(b),this.b*y)||H(this,this.i+1)},function(){H(this,this.i+1)},function(){H(this,this.i+1)},function(a,b){R(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){R(this.f(b),this.b*y)&&H(this,this.i+1)},pe,pe,function(a,b){R(this.f(b),this.f(this.b))||H(this,this.i+1)},function(a,b){R(this.f(b),W(this.f(this.b)))||H(this,this.i+1)},function(){H(this,this.i+1)},function(){H(this,this.i+1)},function(a,b){R(this.f(b),this.f(this.b))&&H(this,
this.i+1)},function(a,b){R(this.f(b),W(this.f(this.b)))&&H(this,this.i+1)},function(a,b){this.g(b,S(this.f(b),this.b))},function(a,b){this.g(b,S(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)||H(this,this.i+1);this.g(b,S(a,this.b))},function(a,b){a=this.f(b);var c=this.b*y;R(a,c)||H(this,this.i+1);this.g(b,S(a,c))},function(a,b){H(this,this.i+1);this.g(b,S(this.f(b),this.b))},function(a,b){H(this,this.i+1);this.g(b,S(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)&&H(this,
this.i+1);this.g(b,S(a,this.b))},function(a,b){a=this.f(b);var c=this.b*y;R(a,c)&&H(this,this.i+1);this.g(b,S(a,c))},function(a,b){this.g(b,S(this.f(b),this.f(this.b)))},function(a,b){this.g(b,S(this.f(b),W(this.f(this.b))))},function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)||H(this,this.i+1);this.g(b,S(a,c))},function(a,b){a=this.f(b);var c=W(this.f(this.b));R(a,c)||H(this,this.i+1);this.g(b,S(a,c))},function(a,b){H(this,this.i+1);this.g(b,S(this.f(b),this.f(this.b)))},function(a,b){H(this,this.i+
1);this.g(b,S(this.f(b),W(this.f(this.b))))},function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)&&H(this,this.i+1);this.g(b,S(a,c))},function(a,b){a=this.f(b);var c=W(this.f(this.b));R(a,c)&&H(this,this.i+1);this.g(b,S(a,c))},function(a,b){this.g(b,V(this.f(b),this.b))},function(a,b){this.g(b,V(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)||H(this,this.i+1);this.g(b,V(a,this.b))},function(a,b){a=this.f(b);var c=this.b*y;R(a,c)||H(this,this.i+1);this.g(b,V(a,c))},function(a,b){H(this,
this.i+1);this.g(b,V(this.f(b),this.b))},function(a,b){H(this,this.i+1);this.g(b,V(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)&&H(this,this.i+1);this.g(b,V(a,this.b))},function(a,b){a=this.f(b);var c=this.b*y;R(a,c)&&H(this,this.i+1);this.g(b,V(a,c))},function(a,b){this.g(b,V(this.f(b),this.f(this.b)))},function(a,b){this.g(b,V(this.f(b),W(this.f(this.b))))},function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)||H(this,this.i+1);this.g(b,V(a,c))},function(a,b){a=this.f(b);var c=W(this.f(this.b));
R(a,c)||H(this,this.i+1);this.g(b,V(a,c))},function(a,b){H(this,this.i+1);this.g(b,V(this.f(b),this.f(this.b)))},function(a,b){H(this,this.i+1);this.g(b,V(this.f(b),W(this.f(this.b))))},function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)&&H(this,this.i+1);this.g(b,V(a,c))},function(a,b){a=this.f(b);var c=W(this.f(this.b));R(a,c)&&H(this,this.i+1);this.g(b,V(a,c))},function(a,b){this.g(b,T(this.f(b),this.b))},function(a,b){this.g(b,T(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)||H(this,
this.i+1);this.g(b,T(a,this.b))},function(a,b){a=this.f(b);R(a,this.b*y)||H(this,this.i+1);this.g(b,T(a,this.b*y))},function(a,b){H(this,this.i+1);this.g(b,T(this.f(b),this.b))},function(a,b){H(this,this.i+1);this.g(b,T(this.f(b),this.b*y))},function(a,b){a=this.f(b);R(a,this.b)&&H(this,this.i+1);this.g(b,T(a,this.b))},function(a,b){a=this.f(b);var c=this.b*y;R(a,c)&&H(this,this.i+1);this.g(b,T(a,c))},function(a,b){this.g(b,T(this.f(b),this.f(this.b)))},function(a,b){this.g(b,T(this.f(b),W(this.f(this.b))))},
function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)||H(this,this.i+1);this.g(b,T(a,c))},function(a,b){a=this.f(b);var c=W(this.f(this.b));R(a,c)||H(this,this.i+1);this.g(b,T(a,c))},function(a,b){H(this,this.i+1);this.g(b,T(this.f(b),this.f(this.b)))},function(a,b){H(this,this.i+1);this.g(b,T(this.f(b),W(this.f(this.b))))},function(a,b){a=this.f(b);var c=this.f(this.b);R(a,c)&&H(this,this.i+1);this.g(b,T(a,c))},function(a,b){a=this.f(b);var c=W(this.f(this.b));R(a,c)&&H(this,this.i+1);this.g(b,T(a,
c))},P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P],ne=[function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a,b){switch(b){case 0:a=this.f(this.b);a&8&&(this.j&=-131073);a&131072&&(this.j&=-262145);break;default:this.w(a)}},function(a,b){switch(b){case 0:a=0;this.j&131072&&(a|=8);this.j&262144&&(a|=65536);this.g(this.b,a);break;default:this.w(a)}},function(a){this.w(a)},
function(a){this.w(a)}];
function Be(a){r.call(this,"ROM",a,128);this.Z=this.b=null;this.C=+a.addr;this.j=+a.size;this.i=a.alias;"string"==typeof this.i&&(this.i=eval(this.i));this.w=a.file;this.F=xa(this.w);if(this.w){a=this.w;var b=ya(this.F);"json"!=b&&"hex"!=b&&(a=Ka()+"/api/v1/dump?file="+this.w+"&format=bytes&decimal=true");var c=this;Ia(a,null,!0,function(a,b,f){f?(c.ha("Unable to load ROM resource (error "+f+": "+a+")"),c.w=null):(gb(c.cb,a,b),(a=Ja(a,b))?(c.b=a.da,c.Z=a.Z):c.w=null);Ce(c)})}}ja(Be,r);
Be.prototype.Ma=function(a,b,c,d){this.G=b;this.v=c;this.D=d;Ce(this)};Be.prototype.Ca=function(){this.Z&&(this.D&&De(this.D,this.id,this.C,this.j,this.Z),delete this.Z);return!0};Be.prototype.sa=function(){return!0};
function Ce(a){if(!Bb(a)){if(a.w){if(!a.b||!a.G)return;a.j||(a.j=a.b.length);if(a.b.length!=a.j)yb(a,"ROM size ("+n(a.b.length,8,!0)+") does not match specified size ("+n(a.j,8,!0)+")");else{var b;b=a.C;if(Ec(a.G,b,a.j,Pc)){var c;for(c=0;c<a.b.length;c++)yc(a.G,b+c,a.b[c]);b=!0}else b=!1;if(b){b=[];"number"==typeof a.i?b.push(a.i):null!=a.i&&a.i.length&&(b=a.i);for(c=0;c<b.length;c++){for(var d=a,e=b[c],f=d.G,g=d.j,h=[],k=d.C>>>f.i;0<g&&k<f.b.length;)h.push(f.b[k++]),g-=16384;f=d.G;d=d.j;g=0;for(e>>>=
f.i;0<d&&e<f.b.length;){k=h[g++];if(!k)break;f.b[e++]=k;d-=16384}}delete a.b}}}Mb(a)}}Ya(function(){for(var a=w(document,v,"rom"),b=0;b<a.length;b++){var c=a[b],d=t(c),d=new Be(d);sb(d,c)}});
function Ee(a){r.call(this,"RAM",a);this.Z=this.Pa=null;this.i=+a.addr;this.j=+a.size;this.la=a.load;this.za=a.exec;null!=this.la&&(this.la=+this.la);null!=this.za&&(this.za=+this.za);this.w=this.F=!1;this.b=a.file;this.C=xa(this.b);if(this.b){a=this.b;var b=ya(this.C);"json"!=b&&"hex"!=b&&(a=Ka()+"/api/v1/dump?file="+this.b+"&format=bytes&decimal=true");var c=this;Ia(a,null,!0,function(a,b,f){f?(c.ha("Unable to load RAM resource (error "+f+": "+a+")"),c.b=null):(gb(c.cb,a,b),(a=Ja(a,b))?(c.Pa=a.Pa,
c.Z=a.Z,null==c.la&&(c.la=a.la),null==c.za&&(c.za=a.za)):c.b=null);Fe(c)})}}ja(Ee,r);Ee.prototype.Ma=function(a,b,c,d){this.G=b;this.v=c;this.D=d;Fe(this)};Ee.prototype.Ca=function(a,b){this.Z&&(this.D&&De(this.D,this.id,this.i,this.j,this.Z),delete this.Z);b||this.reset();return!0};Ee.prototype.sa=function(){return!0};
function Fe(a){if(a.G&&(!a.w&&a.j&&(Ec(a.G,a.i,a.j,1)?a.w=!0:a.j=0),!Bb(a))){if(!a.w)q("No RAM allocated");else if(a.b){if(!a.Pa)return;Ge(a,a.Pa,a.la,a.za,a.i)?a.status('Loaded image "'+a.C+'"'):a.ha('Error loading image "'+a.C+'"')}a.F=!0;Mb(a)}}
Ee.prototype.reset=function(){if(this.w&&!this.F){for(var a=this.G,b=this.i,c=this.j,d=b&16383,b=b>>>a.i;0<c&&b<a.b.length;){var e=a.b[b],f=c,g=0,g=void 0===g?0:g,d=d||0;void 0===f&&(f=e.size);0>g&&g>=-B&&(g+=D);for(var g=Math.trunc(Math.abs(g))%D,h=d;f--&&h<e.size;h++)e.D(g,d,e.B+d);c-=16384;b++;d=0}this.Pa&&Ge(this,this.Pa,this.la,this.za,this.i,!this.D)}this.F=!1};
function Ge(a,b,c,d,e,f){var g=!1;null==c&&(c=e);if(null!=c){for(g=0;g<b.length;g++)yc(a.G,c+g,b[g]);g=!0}g&&(null==d&&(a.v.Y(),f=!1),null!=d&&(a=a.v,a.ab=d,H(a,d),f?a.A.aa?a.A.P||sc(a):a.A.fa=!0:a.D&&a.A.aa?a.Y()||a.H.A.reset||(cd(a.D),K(a.H,-1)):!1===f&&a.Y(),!a.A.P&&a.Oa&&a.Oa.stop()));return g}Ya(function(){for(var a=w(document,v,"ram"),b=0;b<a.length;b++){var c=a[b],d=t(c),d=new Ee(d);sb(d,c)}});
function He(a){r.call(this,"SerialPort",a,1048576);this.w=a.upperCase;"string"==typeof this.w&&(this.w="true"==this.w);this.j=!0;this.i=[];var b=a.binding;if("console"!=b){var c;a=Ie;b&&(void 0===c&&(c="Panel"),(c=rb(c,this.id))&&(b=c.J[b])&&this.ta(null,a,b))}this.b=this.C=null;this.exports={connect:this.Mb,receiveData:this.hb,receiveStatus:this.jc,setConnection:this.mc}}ja(He,r);m=He.prototype;
m.ta=function(a,b,c){var d=this;switch(b){case Ie:return this.J[b]=c,c.onkeydown=function(a){a=a||window.event;var b=0,c=a.keyCode;8==c?b=a.altKey?na.yb:na.Qb:46==c?b=na.yb:a.ctrlKey&&c>=na.xb&&c<=na.Rb&&(b=c-(na.xb-na.Nb));b&&(a.preventDefault&&a.preventDefault(),d.hb(b));return!0},c.onkeypress=function(a){a=a||window.event;if(!a.metaKey){var b=a.which||a.keyCode;a.altKey&&b==na.Pb&&(b=na.Ob);d.hb(b);a.preventDefault&&a.preventDefault()}return!0},c.onpaste=function(a){a.stopPropagation&&a.stopPropagation();
a.preventDefault&&a.preventDefault();(a=a.clipboardData||window.clipboardData)&&d.hb(a.getData("Text"))},c.removeAttribute("readonly"),!0}return!1};m.Ma=function(a,b,c,d){this.H=a;this.G=b;this.v=c;this.D=d;Mb(this)};
m.Mb=function(a){if(!this.b){var b=$c(this.H,"connection");if(b){var c=b.split("->");if(2==c.length){var d=Da(c[0]);if(d!=this.bb)return;c=Da(c[1]);if(this.b=qb(c)){var e=this.b.exports;if(e){var f=e.connect;f&&f.call(this.b,this.j);if(this.C=e.receiveData){this.j=a;this.status("Connected "+this.cb+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};m.Ca=function(a,b){if(!b)if(this.Mb(this.j),!a)this.reset();else if(!this.restore(a))return!1;return!0};
m.sa=function(a){return a?this.save():!0};m.reset=function(){};m.save=function(){var a=new G(this);a.set(0,[]);return a.data()};m.restore=function(){return!0};m.hb=function(a){if("number"==typeof a)this.i.push(a);else if("string"==typeof a)for(var b=0,c,d=0;d<a.length;d++){c=b;b=a.charCodeAt(d);if(10==b){if(13==c)continue;b=13}this.i.push(b)}else this.i=this.i.concat(a);return!0};m.jc=function(){};m.mc=function(a,b){return this.b?!1:(this.b=a,this.C=b,!0)};var Ie="buffer";
Ya(function(){for(var a=w(document,v,"serial"),b=0;b<a.length;b++){var c=a[b],d=t(c),d=new He(d);sb(d,c)}});function Je(a){r.call(this,"Debugger",a);this.U=+a.base||16;this.L=32;this.ja=null;this.T=["{","}"];this.ua=["[","]"];this.F=0;this.V=!1;this.C=-1;this.w=[];this.i={}}ja(Je,r);Je.prototype.ub=function(){return-1};Je.prototype.vb=function(){};
function Ke(a,b,c,d){if(c)if(b){0>a.C&&a.w.length&&(a.C=0);if(0>a.C||b!=a.w[a.C])a.w.splice(0,0,b),a.C=0;a.C--}else a.V?b="end":b=a.w[a.C+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(Da(b.substring(c,f))),c=f+1}}return a}function Le(a,b,c){if(32>=a.L)return b&c;b=Y(a,b,0,!0);c=Y(a,c,0,!0);return((b/Me|0)&(c/Me|0))*Me+((b&c)>>>0)}
function Ne(a,b,c){if(32>=a.L)return b|c;b=Y(a,b,0,!0);c=Y(a,c,0,!0);return((b/Me|0)^(c/Me|0))*Me+((b^c)>>>0)}Je.prototype.Jb=function(a,b){return a*b};function Y(a,b,c,d){var e=b;c=c||a.L;if(d)if(32==c)e=b>>>0;else if(32>c)e=b&(1<<c)-1;else{if(a=Math.pow(2,c),0>b||b>=a)e=b%a,0>e&&(e+=a)}else 32>=c?e=b<<32-c>>32-c:(a=Math.pow(2,c-1),b>=a?(e=b%a,(b/a|0)&1&&(e-=a)):b<-a&&(e=b%a,((-b-1)/a|0)&1?e&&(e+=a):e||(e-=a)));b!=e&&(b=e);return b}
function Oe(a,b,c,d){for(d=void 0===d?-1:d;d--&&c.length;){var e=c.pop();if(2>b.length)return!1;var f,g=b.pop();f=b.pop();switch(e){case "*":f=a.Jb(f,g);break;case "/":if(!g)return!1;f=Math.trunc(f/g);break;case "^/":if(!g)return!1;f%=g;break;case "+":f+=g;break;case "-":f-=g;break;case "<<":f<<=g;break;case ">>":f>>=g;break;case ">>>":f>>>=g;break;case "<":f=f<g?1:0;break;case "<=":f=f<=g?1:0;break;case ">":f=f>g?1:0;break;case ">=":f=f>=g?1:0;break;case "==":f=f==g?1:0;break;case "!=":f=f!=g?1:
0;break;case "&":f=Le(a,f,g);break;case "!":case "|":e=a;32>=e.L?f|=g:(f=Y(e,f,0,!0),g=Y(e,g,0,!0),f=(f/Me|0|g/Me|0)*Me+((f|g)>>>0));break;case "^!":f=Ne(a,f,g);break;case "&&":f=f&&g?1:0;break;case "||":f=f||g?1:0;break;case "_":case "^_":"^_"==e&&(g=35-(g&255));g&&(f=Y(a,f,0,!0),f=0<g?f*Math.pow(2,g):Math.trunc(f/Math.pow(2,-g)));break;default:return!1}b.push(Y(a,f))}return!0}
function Pe(a,b,c,d,e,f){var g,h,k,l=!1,p=0,u=[],A=[],J=a.U;for(a.U=e;c<d;){var F;h=b[c++].trim();k=c<d?b[c++]:"";if(h)F=Qe(a,h,null,f,p);else if("{"==k){h=1;for(F=c;c<d;)if(c++,k=c<b.length?b[c++]:"","{"==k)h++;else if("}"==k&&!--h)break;F=Pe(a,b,F,c-1,a.U,f);null!=F&&p&&(F=Re(a,F,p));h=c<d?b[c++].trim():"";k=c<d?b[c++]:""}else{if(" "==k)continue;if("^B"==k){a.U=2;continue}if("^O"==k){a.U=8;continue}if("^D"==k){a.U=10;continue}if(!(p&-1073741824)){if("+"==k)continue;if("-"==k){p=p<<2|1;continue}if("~"==
k||"^-"==k){p=p<<2|2;continue}if("^L"==k){p=p<<2|3;continue}}l=!0;break}if(void 0===F)if(null==a.ja&&f)a.ja=h,F=0;else{l=!0;f=!f;break}u.push(Y(a,F));if(" "==k)if(c<b.length-1&&!b[c])c++,k=b[c++];else{l=!0;break}if(!k)break;p="<"==a.T[0]?Se:Te;if(!p[k]){l=!0;break}A.length&&p[k]<=p[A[A.length-1]]&&Oe(a,u,A,1);A.push(k);a.U="^_"==k?10:e;p=0}if(l||!Oe(a,u,A)||1!=u.length)l=!0;l?!1===f&&a.u("parse error ("+(h||k)+")"):g=u.pop();a.U=J;return g}
function Ue(a,b,c,d,e,f){for(var g;0<=(g=b.indexOf(c));){for(var h=0,k=g+1,l=e;k<b.length;){var p=b[k++];if(p==c){l=-1;break}if(!l)break;l--;p=p.charCodeAt(0);7==d?p&=127:p=p-32&63;h=Y(a,h*Math.pow(2,d)+p,d*e,!0)}if(0<=l){!1===f&&a.u("parse error ("+b+")");break}else b=b.substr(0,g)+L(a,h,-1)+b.substr(k)}return b}
function Ve(a,b,c){var d=void 0;a.ja=null;if(b){"{"!=a.T[0]&&(b=b.split(a.T[0]).join("{").split(a.T[1]).join("}"));b=Ue(a,b,'"',7,5,c);if(!b)return d;b=Ue(a,b,"'",6,6,c);if(!b)return d;b=b.replace(/(^|[^A-Z0-9$%.])([0-9]+)B/,"$1$2^_").replace(/\s+/g," ");b=b.split(/({|}|\|\||&&|\||\^!|\^B|\^O|\^D|\^L|\^-|~|\^_|_|&|!=|!|==|>=|>>>|>>|>|<=|<<|<|-|\+|\^\/|\/|\*| )/);d=Pe(a,b,0,b.length,a.U,c);void 0!==d&&!1===c&&We(a,null,d)}return d}
function Re(a,b,c){for(;c;){switch(c&3){case 1:b=-Y(a,b);break;case 2:b=Ne(a,b,-1);break;case 3:for(var d=35;0<=d&&!Le(a,b,Math.pow(2,d));)d--;b=35-d}c>>>=2}return b}
function Qe(a,b,c,d,e){e=void 0===e?0:e;var f;if(null!=b){f=a.ub(b);if(0<=f)f=a.vb(f);else if(f=a.i[b]&&a.i[b].value,null!=f){var g=a.i[b]&&a.i[b].ja;g&&(a.ja?(d||(a.u(b+" has too many undefined values ("+g+","+a.ja+")"),d=!0),f=void 0):a.ja=g)}else f=oa(b,1<b.length?a.U:10);null!=f?f=Y(a,Re(a,f,e)):d||a.u("invalid "+(c?c:"value")+": "+b)}else d||a.u("missing "+(c||"value"));return f}
function We(a,b,c){var d,e=!1;void 0!==c&&(e=!0,d=8==a.U?L(a,c,a.L,8,1)+" "+c+".":L(a,c,a.L,16,1)+" "+L(a,c,a.L,8,1)+" "+L(a,c,a.L,2,32>=a.L?8:6)+" "+c+".",32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'"));a.u((null!=b?b+": ":"")+d);return e}function Xe(a){var b=a.i;a.i={};return b}function Ye(a,b){if(b)return We(a,b,a.i[b].value);var c=0;for(b in a.i)We(a,b,a.i[b].value),c++;return 0<c}
function L(a,b,c,d,e){c=void 0===c?0:c;e=void 0===e?0:e;switch((void 0===d?0:d)||a.U){case 2:(a=0<c?c:0)?36<a&&(a=36):(a=Math.abs(b),a=255>=a?8:262143>=a?18:36);b=pa(b,2,a,"",e);break;case 8:b=va(b,0<c?(c+2)/3|0:0,!!e);break;case 10:b=wa(b,0<c?Math.ceil(.3*c):0);break;default:b=n(b,0<c?c+3>>2:0,!!e)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c}
var Te={"||":5,"&&":6,"!":7,"|":7,"^!":8,"&":9,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,_:19,"^_":19,"{":20,"}":20},Se={"||":5,"&&":6,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,"!":15,"|":15,"^!":15,"&":15,_:19,"^_":19,"{":20,"}":20},Me=Math.pow(2,32);
function Ze(a){Je.call(this,a);this.Ja=!1;this.Ga=18;this.L=36;this.T=["<",">"];this.ua=[];this.Ia=Z();this.M=Z(0);this.pa=Z(0);this.ka=Z(0);this.I=[];this.b=this.N=this.K=[];$e(this);this.W=this.qa=0;this.j=[];this.Da=void 0;af(this);this.D=this;this.wa={};this.ca=this.Fb=0;this.ba=null;this.R=[];bf(this,a.messages);this.va=a.commands;this.Ha=[];this.O=0;this.Oa=this.Ea=null;this.F=this.La=this.Ka=this.oa=this.ya=0;this.xa=this.na=this.ga=null;var b=this;window?void 0===window[v]&&(window[v]=function(a){return ed(b,
a)}):void 0===global[v]&&(global[v]=function(a){return ed(b,a)})}ja(Ze,Je);function cf(a){a=a&&a.B;null==a&&(a=-1);return a}function Z(a,b,c){return{B:void 0===a?null:a,fb:void 0===b?!1:b,ra:!1,U:c}}function df(a,b,c,d){a.B=b;a.fb=c||!1;a.ra=!1;a.U=d}function ef(a){return[a.B,a.fb,a.ra,a.U,a.ib]}function ff(a,b){var c=Z(b[0],b[1],b[2]);c.ra=b[3];b[4]&&(c.Ab=Ke(a,c.ib=b[4]));return c}m=Ze.prototype;
m.Ma=function(a,b,c,d){this.G=b;this.H=a;this.v=c;this.na=a.j;this.Ga=b.F;(b=$c(a,"messages"))&&bf(this,b);if(a=$c(a,"commands"))this.va=a;gf(this,function(a){a:{var b=d.G.b,c=a[0],e=a=0,k=b.length;if(c){a=cf(hf(d,c,d.pa));if(-1===a){d.u("invalid address: "+c);break a}e=a>>>d.G.i;k=1}d.u("blockid physical blockaddr used size type");d.u("-------- --------- --------- ------ ------ ----");for(var c=-1,l=0;k--;){var p=b[e];p.type==c?l++||d.u("..."):(c=p.type,l=Hc[c],p&&d.u(n(p.id,8)+" %"+
n(e<<d.G.i,8)+" %"+n(p.B,8)+" "+n(p.Ya,4,!0)+" "+n(p.size,4,!0)+" "+l),c!=Oc&&(c=-1),l=0);a+=16384;e++}}});Mb(this)};
m.ta=function(a,b,c){var d=this;switch(b){case "debugInput":return this.ga=this.J[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",ed(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.C<d.w.length-1&&(b=d.w[++d.C])):40==a.keyCode&&(0<d.C?b=d.w[--d.C]:(b="",d.C=-1)),null!=b){var e=b.length;c.value=b;c.setSelectionRange(e,e)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.J[b]=c,Wa(c,function(){if(d.ga){var a=d.ga.value;
d.ga.value="";ed(d,a,!0);return!0}return!1}),!0;case "step":return this.J[b]=c,Wa(c,function(a){var b=!1;Nb(d,!0)||(Ob(d,!0),b=tc(d,a?1:0,null),Ob(d,!1));return b}),!0}return!1};function dd(a){if(a.ga){var b=0,c=0;window&&(b=window.scrollX,c=window.scrollY);a.ga.focus();window&&window.scrollTo(b,c)}}m.Na=function(a,b){var c=-1,d=cf(a);-1!==d&&(c=zc(this.G,d),b&&null!=a.B&&(a.B+=b||1));return c};m.zb=function(a,b,c){var d=cf(a);-1!==d&&(yc(this.G,d,b),c&&null!=a.B&&(a.B+=c||1),K(this.H,-1))};
m.Jb=function(a,b){0>a&&(a+=D);0>b&&(b+=D);a=xe.call(this.v,a,b,!1,!0);a>=B&&(a-=D);return a};
function hf(a,b,c){var d,e;c||(c=Z());var f=c.B;if(void 0!==b){a:{var g,f=a.T[0],h=a.T[1];g="("==f||"{"==f||"["==f?"\\":"";for(var k="["==f?"\\":"",k=new RegExp(g+f+"([^"+k+f+k+h+"]+)"+g+h);g=b.match(k);){var l=Ve(a,g[1]);if(void 0===l){b=void 0;break a}b=b.replace(f+g[1]+h,null!=l?L(a,l):"undefined")}if(a.ua.length)for(f=a.ua[0],h=a.ua[1],g="("==f||"{"==f||"["==f?"\\":"",k="["==f?"\\":"",k=new RegExp(g+f+"([^"+k+f+k+h+"]+)"+g+h);g=b.match(k);)b=b.replace("["+g[1]+"]","unimplemented");for(;f=b.match(/\$([a-z]+)/i);){h=
null;switch(f[1].toLowerCase()){case "ops":h=0}if(null==h)break;b=b.replace(f[0],h.toString())}}"%"==b.charAt(0)&&(d=!0,b=b.substr(1));var p,f=b,u;if(f.match(/^[a-z_][a-z0-9_]*$/i))for(f=f.toUpperCase(),h=0;h<a.I.length;h++)if(g=a.I[h].Z[f],null!=g){u=g.o;break}null!=u&&(p=Z(u));if(p)return p;0<=b.indexOf("0x")?e=16:0<=b.indexOf("0o")?e=8:0<=b.indexOf(".")&&(e=10);f=Ve(a,b)}null!=f&&(f=jf(f,a.Ga),df(c,f,d,e));return c}function kf(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.Ab=Ke(a,b.ib=c[2]))}
function jf(a,b){0>a&&a>=-B&&(a+=D);return Math.trunc(Math.abs(a))%Math.pow(2,void 0===b?36:b)}function lf(a,b){return L(a,b/Tb,18)+" "+L(a,b%Tb,18)}
function bf(a,b){a.D=a;a.ca=a.Fb=536870916;a.ba=null;a.R=[];b=Ke(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(b.length)for(var c in bc){var d;a:if(d=void 0,Array.prototype.indexOf)d=b.indexOf(c,d);else{d=d||0;0>d&&(d+=b.length);0>d&&(d=0);for(var e=b.length;d<e;d++)if(d in b&&b[d]===c)break a;d=-1}0<=d&&(a.ca|=bc[c],a.u(c+" messages enabled"))}}function gf(a,b){for(var c in bc)if(16==bc[c]){a.wa[c]=b;break}}m.ub=function(a){return mf.indexOf(a.toUpperCase())};
m.vb=function(a){var b,c=this.v;switch(a){case nf:b=c.i;break;case of:b=c.I;break;case pf:b=c.b;break;case qf:b=c.j&x;break;case rf:b=c.j&131072?1:0;break;case sf:b=c.j&65536?1:0;break;case tf:b=c.j&32768?1:0;break;case uf:b=c.j&32?1:0;break;case vf:b=c.j&262144?1:0}return b};
m.message=function(a,b){b&&(a+=" @"+L(this,Z(this.v.pa).B,18));if(!this.ba||a!=this.ba)if(this.ba=a,this.ca&1073741824)this.R.push(a);else{var c;if(this.ca&-2147483648&&this.v&&(c=this.v.A.P)||Nb(this,!0))this.Y(),c&&(a+=" (cpu halted)");this.u(a);this.v&&(a=this.v,md(a),a.na=0,a.H&&K(a.H,void 0))}};
function af(a){var b;if(!td(a))a.j&&a.j.length&&a.u("instruction history buffer freed"),a.W=0,a.j=[];else if(!a.j||!a.j.length){a.j=Array(wf);for(b=0;b<a.j.length;b++)a.j[b]=Z();a.W=0;a.u("instruction history buffer allocated")}}function xf(a,b,c){if(!yf(a,c))return!1;sc(a.v,b);return!0}
function tc(a,b,c,d){if(!yf(a))return!1;var e="";null===c&&(e=(c=!a.Ea||"tr"==a.Ea)?"tr":"t");a.F=0;b||td(a)&&ud(a,a.v.i,0);try{b=kd(a.v,b);var f=a.v.$a(b);0<f&&(uc(a.v,f),a.F+=f,vc(a.v,f,!0),wc(a.v,f),a.oa++)}catch(g){"number"!=typeof g&&(a.F=0,yb(a.v,g.stack||g.message))}!1!==d&&(a.na&&a.na.stop(),K(a.H,-1));cd(a,c||!1,e);return 0<a.F}m.Y=function(a){this.v&&this.v.Y(a)};function cd(a,b,c){b=void 0===b?!0:b;a.Ja&&(c&&a.u(zf+c),df(a.M,a.v.i),b&&1!=a.O?Af(a):Bf(a))}
function yf(a,b){var c;(c=!a.v||!Bb(a.v))||(c=a.v,c.A.aa?c=!0:(c.u(c.toString()+" not powered"),c=!1),c=!c);return c||a.v.A.P?(b||a.u("cpu busy or unavailable, command ignored"),!1):!zb(a.v)}m.Ca=function(a,b){return!b&&(this.reset(!0),a)?this.restore(a):!0};m.sa=function(a,b){b&&this.u(a?"suspending":"shutting down");return a?this.save():!0};m.reset=function(a){af(this);this.oa=0;this.ba=null;this.F=0;df(this.M,this.v.i);this.A.P=!1;Cf(this);a||cd(this)};
m.save=function(){var a=new G(this);a.set(0,ef(this.M));a.set(1,ef(this.pa));a.set(2,ef(this.ka));a.set(3,[this.w,this.V,this.ca]);a.set(4,this.I);return a.data()};m.restore=function(a){var b=0;void 0!==a[3]&&(this.M=ff(this,a[b++]),this.pa=ff(this,a[b++]),this.ka=ff(this,a[b++]),this.w=a[b][0],"string"==typeof this.w&&(this.w=[this.w]),this.V=a[b][1],this.ca|=a[b][2]);a[4]&&(this.I=a[4]);return!0};m.start=function(a,b){this.O||this.u("running");this.A.P=!0;this.Ka=a;this.La=b};
m.stop=function(a,b){if(this.A.P){this.A.P=!1;this.F=b-this.La;if(!this.O){b="stopped";if(this.F){a-=this.Ka;var c=0<a?Math.round(1E3*this.F/a):0;b+=" (";td(this)&&(b+=this.oa+" instructions, ",this.oa=0);b+=this.F+" cycles, "+a+" ms, "+c+" hz)"}else Pb(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.u(b)}cd(this,!0);dd(this);Cf(this,this.v.i);this.ba=null}};function td(a){return 1<a.b.length||!!a.qa}
function ud(a,b,c){var d=-1;c||(d=a.v.f(b),2756==d>>23&&a.v.pa==b&&(b=sd(a.v,1)));if(0<c&&(a.qa&&!--a.qa||Xc(a,b,1,a.b)))return!0;0<=c&&a.j.length&&(a.oa++,0>d&&(d=a.v.f(b)),0<=d&&(df(a.j[a.W],b),++a.W==a.j.length&&(a.W=0)));return!1}
function Df(a,b,c,d){var e=Z(b.B),f=a.Na(b,1),g,h,k,l=0,p=f/Yb|0,u;for(u in Ef)if(g=Ef[u][p&u]){h=+u;p>>=6;switch(h){case 32512:k=Ff;l=p&3;break;case 32256:k=Gf;l=p&7;break;case 29248:k=Hf,l=(p&48)>>2|(p&6)>>1}break}k=k&&k[l]||"";"S"==k&&g>If&&(k="B");k=Jf[g||0]+k;if(g){if(28700==h)h=f/Zb&127,l=L(a,h,-1);else for(h=f>>23&15,l=L(a,h,-1),p=0;l&&p<Kf.length;p++)if(g==Kf[p][0]&&(u=Kf[p][h])){k=Jf[u];l="";break}k=Ca(k,8)+(l?l+",":"");f&4194304&&(k+="@");k+=L(a,f&262143,-1);(f=f>>18&15)&&(k+="("+L(a,f,
-1)+")")}else k=Ca(k,8)+lf(a,f);f=k;g="";h=L(a,e.B,18)+":";if(-1!==e.B&&-1!==b.B){do if(k=a.Na(e,1),g+=" "+lf(a,k),null==e.B)break;while(e.B!=b.B)}h+=Ca(g,16)+f;c&&(h=Ca(h,48)+";"+(c||""),h=a.v.A.Va?h+("cycles="+fd(a.v).toString()+" cs="+n(a.v.Ha)):h+(null!=d?"="+d.toString():""));return h}
function Lf(a,b,c,d,e,f){var g=-1,h,k;a.ja=null;if(b){for(var l=b.toUpperCase(),p=0;p<Kf.length;p++)for(var u in Kf[p])if(+u&&(k=Kf[p][u],l==Jf[k])){l=Jf[Kf[p][0]];c&&(c=L(a,+u)+","+c);break}for(var A in Ef){h=+A;u=Ef[A];switch(h){case 32512:p=Ff;break;case 32256:p=Gf;break;case 29248:p=Hf;break;default:p=[""]}for(var J in u){k=u[J];for(var F=0;F<p.length;F++){var ka=p[F];"S"==ka&&k>If&&(ka="B");if(l==Jf[k]+ka){g=29248!=h?F:(F&3)<<1|(F&12)<<2;g=(J|g<<6)*Yb;break}}if(0<=g)break}if(0<=g)break}!(0>g)||
c&&c.match(/^[0-9A-Z$%.?]/i)||(c=b+c,b="",g=0)}else c&&(g=h=0);if(0<=g&&c)for(l=c.split(","),A=0;A<l.length;A++)if(k=l[A].trim()){if(1<A){a.u("too many operands: "+c);g=-1;break}J=k.match(/(@?)([^(]*)\(?([^)]*)\)?/);if(!J){a.u("unknown operand: "+k);g=-1;break}J[1]&&(g+=4194304);if(k=J[3]){k=Ve(a,k,e);if(void 0==k){g=-1;break}if(0>k||15<k)k&=15;g+=k<<18}k=J[2];if(A||1==l.length)k=k?k.replace(/(^|[^0-9])\./g,"$1"+L(a,d,18)):"0";k=Ve(a,k,e);if(void 0==k){g=-1;break}if(!A&&1<l.length)if(28700==h){if(0>
k||127<k)k&=127;g+=k*Zb}else{if(0>k||15<k)k&=15;g+=k<<23}else{if(b||A)if(0>k||262143<k)k&=Sb;g+=k}}0>g&&!f&&a.u("unknown instruction: "+b+" "+c);return g}function $e(a){var b,c;a.b=["bp"];if(a.N)for(b=1;b<a.N.length;b++){c=a.N[b];c=cf(c);var d=a.G;Wc(d.b[c>>>d.i],!1)}a.N=["br"];if(a.K)for(b=1;b<a.K.length;b++)c=a.K[b],c=cf(c),d=a.G,Wc(d.b[c>>>d.i],!0);a.K=["bw"];a.ya=0;a.qa=0}
m.Ra=function(a,b,c){var d=!0;c||Mf(this,a,b,!1,!0);if(a!=this.b){var e=cf(b);if(-1===e)this.u("invalid address: "+L(this,b.B,18)),d=!1;else{var f=this.G;f.b[e>>>f.i].Ra(e&16383,a==this.K)}}d&&(a.push(b),c?b.ra=!0:(Nf(this,a,a.length-1,"set"),af(this)));return d};function Mf(a,b,c,d,e){var f=!1;c=cf(c);for(var g=1;g<b.length;g++){var h=b[g];if(c==cf(h)&&(!d||h.ra)){f=!0;h.ra||e||Nf(a,b,g,"cleared");b.splice(g,1);b!=a.b&&(d=a.G,Wc(d.b[c>>>d.i],b==a.K));h.ra||af(a);break}}return f}
function Of(a,b){for(var c=1;c<b.length;c++)Nf(a,b,c);return b.length-1}function Nf(a,b,c,d){c=b[c];a.u(b[0]+" "+L(a,c.B,18)+(d?" "+d:c.ib?' "'+c.ib+'"':""))}function Cf(a,b){if(void 0!==b)Xc(a,b,1,a.b,!0),a.O=0;else for(b=1;b<a.b.length;b++){var c=a.b[b];if(c.ra){if(!Mf(a,a.b,c,!0))break;b=0}}}
function Xc(a,b,c,d,e){var f=!1;if(!a.ya++)for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.ra)for(var k=cf(h)&(d==a.b?65535:-1),l=0;l<c;l++)if(b+l==k){var p,f=!0;h.ra&&(Mf(a,d,h,!0),e=!0);if(p=h.Ab){for(var f=!1,u=0;u<p.length;u++)if(!Pf(a,p[u],!0)){if(p[u].indexOf("if")){f=!0;break}for(var A=u+1;A<p.length&&p[A].indexOf("else");A++)u++;if(A==p.length){f=!0;break}}a.v.A.P||(f=!0)}if(f){e||Nf(a,d,g,"hit");break}}}a.ya--;return f}
function Qf(a,b){b=void 0===b?!0:b;for(var c="",d=0;16>d;d++){!d||d&3||(c+="\n");var e=a,f=va(d,2);df(e.Ia,d);f+="="+L(e,e.Na(e.Ia),36)+" ";c+=f}if(b){b="";for(d=0;d<mf.length;d++)(e=mf[d]||"")&&(e+="="+L(a,a.vb(d),d>=rf?1:d==of?23:18)+" "),b+=e;c+="\n"+b}return c}m.Hb=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
function De(a,b,c,d,e){var f=[],g;for(g in e){var h=e[g];"number"==typeof h&&(e[g]=h={o:h});var k=h.o,l=h.a;if(void 0!==k){var p=f,k=[k>>>0,g],u=Ga(p,k,a.Hb);0>u&&p.splice(-(u+1),0,k)}l&&(h.a=l.replace(/''/g,'"'))}a.I.push({yd:b,B:c,Wb:d,Z:e,Cb:f})}function Rf(a,b,c){var d=[],e=cf(b)>>>0;for(b=0;b<a.I.length;b++){var f=a.I[b],g=f.B>>>0,h=f.Wb;if(e>=g&&e<g+h){e=Ga(f.Cb,[e-g],a.Hb);0<=e?rg(a,b,e,d):c&&(e=~e,rg(a,b,e-1,d),rg(a,b,e,d));break}}return d}
function tg(a,b,c){var d=a.G,e=0,f=null,g=0;b.forEach(function(a,b){d.b[(b&d.j)>>>d.i].g(a,b&16383,b);null==f&&(f=b);b>g&&(g=b);e++});e?(b="start address ",null!=c?(H(a.v,c),b+=L(a,c)):b+="unspecified",a.u(e+" words loaded at "+L(a,f)+"-"+L(a,g)+", "+b),cd(a)):a.u("no data")}function rg(a,b,c,d){var e={},f=a.I[b].Cb,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.I[b].Z[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}
function ug(a,b){var c=b[0].substr(1),d=b[1]&&"0"<=b[1][0]&&"9">=b[1][0]?b[1]:void 0,e=d?b[2]:b[1],f=hf(a,d,a.ka);if(!e)return a.u("begin assemble at "+L(a,f.B,18)),a.V=!0,K(a.H),!0;var g=e.match(/^(['"]?)(.*\.klm|.*\.mac|.*\.html|.*\.txt)\1$/i);if(g){f=hf(a,d);if(a.xa)a.u("assembly already in progress");else var h=g[2],k=f.B,l=a.xa=new vg(h,k,c,a,function(b,c){if(!b)try{var d=l.H;null==d&&(d=k);tg(a,l.S,d)}catch(J){"number"==typeof J?b=J||-1:(a.u(J.message),b=-1)}b&&a.u("error ("+b+") processing "+
(c||h));a.xa=null;b||ed(a)});return!1}b.shift();b.shift();b.shift();b=Lf(a,e,b.join(""),f.B||0);0<=b&&(a.zb(f,b),a.u(Df(a,f)));return!0}function wg(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return Ye(a)||a.u("no variables"),!0;if(!c[2])return Ye(a,c[1]);if(!c[3])return delete a.i[c[1]],!0;b=Ve(a,c[3]);return void 0!==b?(a.i[c[1]]={value:b,ja:void 0},!0):!1}a.u("invalid assignment:"+b);return!1}
function xg(a,b,c){var d=null;b=hf(a,b);var e=Rf(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.B-e[1])&&(g=" + "+n(f,4,!0)),f=e[0]+" ("+L(a,e[1],18)+")"+g,c&&a.u(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.B)&&(g=" - "+n(f,4,!0)),f=e[4]+" ("+L(a,e[5],18)+")"+g,c&&a.u(f),d||(d=f))}else c&&a.u("no symbols");return d}
function Af(a,b){var c;if(b&&"?"==b[1])a.u("register commands:"),a.u("\tr\tdump registers"),a.u("\trm\tdump misc registers"),a.u("\trx [#]\tset flag or register x to [#]");else{var d=a.v,e=void 0;null==c&&(c=!0);if(b&&1<b.length){var f=b[1];if("m"==f)e=!0;else{var g=f.indexOf("=");if(0<g)b=f.substr(g+1),f=f.substr(0,g);else if(2<b.length)b=b[2];else{a.u("missing value for "+b[1]);return}g=Ve(a,b);if(void 0===g)return;b=a.ub(f);if(0>b){a.u("unknown register: "+f);return}var f=0,h=a.v;switch(b){case nf:H(h,
g);df(a.M,h.i);break;case qf:rd(h,g);break;case rf:f=131072;break;case sf:f=65536;break;case tf:f=32768;break;case uf:f=32;break;case vf:f=262144}f&&(h.j=g?h.j|f:h.j&~f);K(a.H);a.u("updated registers:")}}a.u(Qf(a,e));c&&(df(a.M,0<=d.O?d.O:d.I&4194304?d.pa:d.i),Bf(a,L(a,a.M.B,18)))}}function yg(a,b){b=Da(b);var c=b.match(/^(['"])(.*?)\1$/);c?1<c[2].length?a.u(c[2]):We(a,null,c[2].charCodeAt(0)):Ve(a,b,!1)}
function zg(a,b,c){if("?"==c)a.u("trace commands:"),a.u("\tt [#]\ttrace # instructions"),a.u("\ttr [#]\ttrace # instructions with register updates"),a.u("\ttc [#]\ttrace # cycles"),a.u("note: bn [#] breaks after # instructions without updates");else{var d="t"!=b;c=Qe(a,c,null,!0)||1;var e=0;"tc"==b&&(e=c,c=1);a.Ea=b;Va(c,function(){return Ob(a,!0)&&tc(a,e,d,!1)},function(){a.na&&a.na.stop();K(a.H,-1);Ob(a,!1)})}}
function Bf(a,b,c,d){b=hf(a,b,a.M);void 0===d&&(d=1);var e=256;if(void 0!==c)if("l"==c.charAt(0))c=Qe(a,c.substr(1)),null!=c&&(d=c);else{d=hf(a,c);if(d.B<b.B)return;e=d.B-b.B;if(256<e){a.u("range too large");return}d=-1}for(c=0;0<e&&d--;){var f=Nb(a,!1)||a.O?a.F:null,g=null!=f?"cycles":null,h=Rf(a,b),k=b.B;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var l=h[0]+":";h[2]&&(l+=" "+h[2]);a.u(l)}h[3]&&(g=h[3],f=null);h=a.ka;l=b;h.B=l.B;h.fb=l.fb;h.ra=l.ra;h.U=l.U;a.u(Df(a,b,g,f));e-=b.B-k;c++}}
function Pf(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.u(zf+b):(a.V&&(a.u("ended assemble at "+L(a,a.ka.B,18)),a.V=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.ba=null;if(Bb(a)&&0<b.length){a.V&&(b="a "+L(a,a.ka.B,18)+" "+b);var f=!1,g=b.replace(/ +/g," ").split(" ");g[0]=g[0].toLowerCase();if(g&&g.length)for(var h=g[0],k=h.charAt(0),l=1;l<h.length;l++){var p=h.charAt(l);if("?"==k||"r"==k||"a">p||"z"<p){g[0]=h.substr(l);g.unshift(h.substr(0,l));break}}switch(g[0].charAt(0)){case "a":d=
ug(a,g);break;case "b":var u=g[0],A=g[1],J=b;if("?"==A)a.u("breakpoint commands:"),a.u("\tbp #\tset exec breakpoint"),a.u("\tbr #\tset read breakpoint"),a.u("\tbw #\tset write breakpoint"),a.u("\tbc #\tclear breakpoint (* to clear all)"),a.u("\tbl\tlist all breakpoints"),a.u("\tbn [#]\tbreak after # instruction(s)");else{var F=u.charAt(1);if("l"==F){var ka;ka=0+Of(a,a.b);ka+=Of(a,a.N);(ka+=Of(a,a.K))||a.u("no breakpoints")}else if("n"==F){var Ab=+A||0;A&&(a.qa=Ab);a.u("break after "+Ab+" instruction(s)")}else if(void 0===
A)a.u("missing breakpoint address");else{var I="*"==A?Z():hf(a,A,a.M);"c"==F?null==I.B?($e(a),a.u("all breakpoints cleared")):Mf(a,a.b,I)||Mf(a,a.N,I)||Mf(a,a.K,I)||a.u("breakpoint missing: "+L(a,I.B,18)):null!=I.B&&(kf(a,I,J),"p"==F?a.Ra(a.b,I):"r"==F?a.Ra(a.N,I):"w"==F?a.Ra(a.K,I):a.u("unknown breakpoint command: "+F))}}break;case "c":a.Aa&&(a.Aa.value="");break;case "d":a:{var hb,ib=g[0],qa=g[1],Ea=g[2],Jh=g[3];if("?"==qa){var jb="";for(hb in bc)a.wa[hb]&&(jb&&(jb+=","),jb+=hb);jb+=",state,symbols";
a.u("dump memory commands:");a.u("\tdw [a] [n] dump n words at address a");a.u("\tds [a] [n] dump n words at address a as JSON");a.u("\tdh [p] [n] dump n instructions from history position p");jb.length&&a.u("dump extension commands:\n\t"+jb)}else if("state"==qa){var Md=Ag(a.H,!0);"console"==Ea?console.log(Md):(a.Aa&&(a.Aa.value=""),Md&&a.u(Md))}else if("symbols"==qa)for(var Nd=0;Nd<a.I.length;Nd++){var Od=a.I[Nd],kb;for(kb in Od.Z)if("."!=kb.charAt(0)){var Sf=Od.Z[kb].o;if(void 0!==Sf){var Tf=
Od.Z[kb].l;Tf&&(kb=Tf);a.u(L(a,Sf,18)+" "+kb)}}}else{if("d"==ib){for(hb in bc)if(g[1]==hb){var Uf=a.wa[hb];Uf?(g.shift(),g.shift(),Uf(g)):a.u("no dump registered for "+qa);break a}qa||(ib=a.Oa||"dw")}else a.Oa=ib;if("dh"==ib){var Vf=qa,Wf=Ea,Xf="",Yf=0,la=a.W,ra=a.j;if(ra.length){var ea=+Vf||a.Da,Cb=+Wf||10;isNaN(ea)?ea=Cb:Xf="more ";ea>ra.length&&(a.u("note: only "+ra.length+" available"),ea=ra.length);la-=ea;0>la&&(null==ra[ra.length-1].B?(ea=la+ea,la=0):la+=ra.length);var Pd=[];"call"==Wf&&(Cb=
1E5,Pd=["CALL"]);for(void 0!==Vf&&a.u(ea+" instructions earlier:");0<Cb&&la!=a.W;){var Zf=ra[la++];if(null==Zf.B)break;var Db=Z(Zf.B),Kh=ea--,$f=Df(a,Db,"history",Kh);(!Pd.length||0<=$f.indexOf(Pd[0]))&&a.u($f);Db.sb&&(la+=Db.sb,Cb-=Db.sb,ea-=Db.sb);la>=ra.length&&(la=0);a.Da=ea;Yf++;Cb--}}Yf||(a.u("no "+Xf+"history available"),a.Da=void 0)}else{var Na=0,ag="ds"==ib,Eb=hf(a,qa,a.pa);Ea&&("l"==Ea.charAt(0)?(Ea=Ea.substr(1)||Jh,Na=Qe(a,Ea)):Na=hf(a,Ea).B-Eb.B,0>Na&&(Na=0),65536<Na&&(Na=65536));var Lh=
a.U;Eb.U&&(a.U=Eb.U);for(var bg="db"==ib?1:2,Qd=Na||32,Rd=1==bg?1:4,Mh=(Qd+Rd-1)/Rd|0||1,Oa="";Mh--&&0<Qd;){for(var sa="",Sd="",qa=L(a,Eb.B,18),cg=Rd;0<cg--&&0<Qd--;){var Td=a.Na(Eb,1);ag?(sa&&(sa+=","),sa+=Td):(sa+=lf(a,Td),sa+=" ");for(var Jc=29,Nh=0;1==bg&&0<=Jc;Nh++)var Fb=Td/Math.pow(2,Jc)%Math.pow(2,7),sa=sa+(L(a,Fb,7)+" "),Fb=Fb+0,Sd=Sd+(32>Fb?".":String.fromCharCode(Fb)),Jc=Jc-7}Oa&&(Oa+="\n");Oa=ag?Oa+(sa+","):Oa+(qa+": "+sa+(0>cg?" "+Sd:""))}Oa&&a.u(Oa);a.U=Lh}}}break;case "e":if("else"==
g[0])break;var dg,eg,fg=g[0],Ud=g[1];"e"==fg||"ew"==fg?(dg=a.Na,eg=a.zb):Ud=null;if(null==Ud)a.u("edit memory commands:"),a.u("\tew [a] [...] edit words at address a");else for(var Vd=hf(a,Ud,a.pa),Wd=2;Wd<g.length;Wd++){var Gb=Ve(a,g[Wd]);if(void 0===Gb)break;Gb=jf(Gb);a.u("changing "+L(a,Vd.B,18)+" from "+lf(a,dg.call(a,Vd))+" to "+lf(a,Gb));eg.call(a,Vd,Gb,1)}break;case "g":var gg=g[1],Oh=b;if(void 0!==gg){var hg=hf(a,gg);kf(a,hg,Oh);a.Ra(a.b,hg,!0)}xf(a,!0,c);break;case "h":a.A.P?(c||a.u("halting"),
a.Y()):Nb(a,!0)||c||a.u("already halted");break;case "i":if("if"==g[0]){var Xd;var Hb=b.substr(2),Hb=Da(Hb);Ve(a,Hb)?(c||a.u("true: "+Hb),Xd=!0):(c||a.u("false: "+Hb),Xd=!1);Xd||(d=!1);break}f=!0;break;case "k":var Ph=g[0];if("?"==g[1])a.u("stack trace commands:"),a.u("\tk\tshow frame addresses"),a.u("\tks\tshow symbol information");else{var Yd=0,Zd=Z(),Ib=Z();for(a.u("stack trace for "+L(a,Ib.B,18));10>Yd;){for(var Pa=null,Qh=256;65536>Ib.B>>>0;){Zd.B=a.Na(Ib,2);if(null==Ib.B||!Qh--)break;if(!(Zd.B&
1)){for(var Rh=a,Kc=Zd,ig=null,Jb=Kc.B,jg=Jb,$d=1;6>=$d&&Jb;$d++){if(2<$d){Kc.B=Jb;var Lc=Df(Rh,Kc);if(0<=Lc.indexOf("JSR")){var kg=Lc.indexOf(" ");if(Jb+(Lc.indexOf(" ",kg+1)-kg-1)/2==jg){ig=Lc;break}}}Jb-=2}Kc.B=jg;if(Pa=ig)break}}if(!Pa||null==Pa)break;var lg=null;if("ks"==Ph){var mg=Pa.match(/[0-9A-F]+$/);mg&&(lg=xg(a,mg[0]))}Pa=Ca(Pa,50)+" ;"+(lg||"stack="+L(a,Ib.B,18));a.u(Pa);Yd++}Yd||a.u("no return addresses found")}break;case "l":if("ln"==g[0]){xg(a,g[1],!0);break}f=!0;break;case "m":a:{var ta,
ua=null,N=g[1];"?"==N&&(N=void 0);if(void 0!==N){var Fa=0;if("all"==N)Fa=1879046143,N=null;else if("on"==N)ua=!0,N=null;else if("off"==N)ua=!1,N=null;else{"keys"==N&&(N="key");"kbd"==N&&(N="keyboard");for(ta in bc)if(N==ta){Fa=bc[ta];ua=!!(a.ca&Fa);break}if(!Fa){a.u("unknown message category: "+N);break a}}if(Fa)if("on"==g[2])a.ca|=Fa,ua=!0;else if("off"==g[2]&&(a.ca&=~Fa,ua=!1,1073741824==Fa)){for(var ng=1E3<=a.R.length?a.R.length-1E3:0;ng<a.R.length;)a.u(a.R[ng++]);a.R=[]}}var Sh=0,Kb="";for(ta in bc)if(!N||
N==ta){var Th=!!(a.ca&bc[ta]);if(null===ua||ua==Th)Kb&&(Kb+=","),++Sh%10||(Kb+="\n\t"),"key"==ta&&(ta="keys"),Kb+=ta}void 0===N&&a.u("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.u((null!==ua?ua?"messages on: ":"messages off: ":"message categories:\n\t")+(Kb||"none"));af(a)}break;case "p":if("print"==g[0]){yg(a,b.substr(5));break}var og=g[0],pg="p"==og?0:"pr"==og?1:-1;if("?"==g[1]||0>pg)a.u("step commands:"),a.u("\tp\tstep over instruction"),a.u("\tpr\tstep over instruction with register update");
else if(a.O)a.u("step in progress");else{var qg=Z(a.v.i);a.Na(qg);a.O?(a.Ra(a.b,qg,!0),xf(a)||(a.H&&jd(a.H),a.O=0)):zg(a,pg?"tr":"t")}break;case "r":if("reset"==b){a.H&&a.H.reset();break}Af(a,g);break;case "s":a:switch(g[1]){case "base":if(g[2]){var lb=+g[2];if(2==lb||8==lb||10==lb||16==lb)a.U=lb;else{a.u("invalid base: "+lb);break}}a.u("default base: "+a.U);break;case "cs":var Lb;void 0!==g[3]&&(Lb=+g[3]);switch(g[2]){case "int":a.v.qa=Lb;break;case "start":a.v.Ia=Lb;break;case "stop":a.v.va=Lb;
break;default:a.u("unknown cs option");break a}void 0!==Lb&&bd(a.v);a.u("checksums "+(a.v.A.Va?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(gd(a.v,+g[2])||a.u("warning: using 1x multiplier, previous target not reached"));a.u("target speed: "+(a.v.ga.toFixed(2)+"Mhz")+" ("+a.v.ka+"x)");break;default:if(g[1]){a.u("unknown option: "+g[1]);break}case "?":a.u("debugger options:"),a.u("\tbase #\t\tset default base to #"),a.u("\tcs int #\tset checksum cycle interval to #"),a.u("\tcs start #\tset checksum cycle start count to #"),
a.u("\tcs stop #\tset checksum cycle stop count to #"),a.u("\tsp #\t\tset speed multiplier to #")}break;case "t":zg(a,g[0],g[1]);break;case "u":Bf(a,g[1],g[2],8);break;case "v":if("var"==g[0]){wg(a,b.substr(3))||(d=!1);break}if("ver"==g[0]){a.u((Rb||"PDP10")+" version 1.34.3 ("+a.v.nb+",RELEASE)");a.u(window?window.navigator.userAgent:"");break}f=!0;break;case "?":if(g[1]){yg(a,b.substr(1));break}var ae="commands:",be;for(be in Bg)ae+="\n"+Ca(be,9)+Bg[be];td(a)||(ae+="\nnote: history disabled if no exec breakpoints");
a.u(ae);break;default:f=!0}f&&(a.u("unknown command: "+b),d=!1)}}catch(sg){a.u("Debugger "+(sg.stack||sg.message)),d=!1}return d}function ed(a,b,c){null!=b&&(a.Ha=Ke(a,b,c));for(;b=a.Ha.shift();)if(!Pf(a,b))return!1;return!0}
var Bg={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory","g [#]":"go [to #]",h:"halt","if":"eval expression","int [#]":"request interrupt",k:"stack trace",ln:"list nearest symbol(s)",m:"messages",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",s:"set options","t [#]":"trace","u [#]":"unassemble","var":"assign variable",ver:"print version"},If=20,Jf=".WORD HLL HLLZ HLLO HLLE HRL HRLZ HRLO HRLE HRR HRRZ HRRO HRRE HLR HLRZ HLRO HLRE MOVE MOVS MOVN MOVM EXCH BLT PUSH POP LDB DPB IBP ILDB IDPB SETZ SETO SETA SETCA SETM SETCM AND ANDCA ANDCM ANDCB IOR ORCA ORCM ORCB XOR EQV LSH LSHC ROT ROTC ADD SUB MUL IMUL DIV IDIV ASH ASHC FSC FADR FSBR FMPR FDVR DFN UFA FAD FSB FMP FDV AOBJP AOBJN CAI CAM JUMP SKIP AOJ AOS SOJ SOS TR TL TD TS XCT JFFO JFCL JSR JSP JRST JSA JRA PUSHJ POPJ BLKI DATAI BLKO DATAO CONO CONI CONSZ CONSO UUO JOV JCRY0 JCRY1 JCRY JFOV HALT JRSTF JEN".split(" "),
nf=0,of=1,pf=2,qf=3,rf=4,sf=5,tf=6,uf=7,vf=8,mf="PC RA EA PS OV C0 C1 ND PD".split(" "),Cg={},Ef=(Cg[28672]={0:101},Cg[32704]={5632:64,5696:63,5760:58,5824:27,5888:28,5952:25,6016:29,6080:26,10240:56,10304:48,10368:46,10432:84,10496:57,10560:49,10624:47,10752:21,10816:22,10880:69,10944:70,11008:88,11072:85,11136:83,11264:91,11328:23,11392:24,11456:92,11520:86,11584:87,11648:89,11712:90},Cg[32512]={6144:65,6400:59,6656:66,6912:60,7168:67,7424:61,7680:68,7936:62,8192:17,8448:18,8704:19,8960:If,9216:53,
9472:52,9728:55,9984:54,11776:50,12032:51,16384:30,16640:36,16896:37,17152:34,17408:38,17664:32,17920:44,18176:40,18432:39,18688:45,18944:33,19200:41,19456:35,19712:42,19968:43,20224:31,20480:1,20736:5,20992:2,21248:6,21504:3,21760:7,22016:4,22272:8,22528:9,22784:13,23040:10,23296:14,23552:11,23808:15,24064:12,24320:16},Cg[32256]={12288:71,12800:72,13312:73,13824:74,14336:75,14848:76,15360:77,15872:78},Cg[29248]={24576:79,24640:80,25088:81,25152:82},Cg[28700]={28672:93,28676:94,28680:95,28684:96,
28688:97,28692:98,28696:99,28700:100},Cg),Ff=["","I","M","S"],Gf=" L E LE A GE N G".split(" "),Hf="N NE NA NN Z ZE ZA ZN C CE CA CN O OE OA ON".split(" "),Kf=[{0:85,8:102,4:103,2:104,6:105,1:106},{0:88,4:107,2:108,10:109}],wf=1E3,zf=">> ";Ya(function(){for(var a=w(document,v,"debugger"),b=0;b<a.length;b++){var c=a[b],d=t(c),d=new Ze(d);sb(d,c)}});
function vg(a,b,c,d,e){this.la=b;this.W=c||"";this.b=d;this.done=e;this.H=null;this.v={};this.N={};this.R=[];this.O=[];this.S=[];this.ea=[];this.ba=this.V=this.ia=0;this.X=this.la||0;this.Fa=-1;this.w=[];this.M=null;this.i=0;this.L=null;this.J=this.I="";this.ga=/^[ \t]*([A-Z$%.?][0-9A-Z$%.]*:|)[ \t]*([A-Z$%.][0-9A-Z$%.]*|)([ \t]*)([^;]+|)(;?[\s\S]*)/i;this.D=this.j=null;this.C="";this.G=[];this.K=0;this.F=a.split(";");this.T=[];Dg(this)}
function Dg(a){if(a.K==a.F.length)a.done(Eg(a));else{var b=a.F[a.K];a.u("loading "+xa(b));0>b.indexOf(":")&&0<=".MAC.KLM".indexOf(b.slice(-4).toUpperCase())&&(b+=".txt");Ia(b,null,!0,function(b,d,e){if(e)a.done(e,b);else{e=d;if(za(b,".html")){e="";var c;for(b=/<pre>([\s\S]*?)<\/pre>/gi;c=b.exec(d);)c=c[1],0<=c.indexOf("&")&&(c=c.replace(/&lt;/gi,"<").replace(/&gt;/gi,">").replace(/&amp;/gi,"&")),e+=c;(c=e.match(/&[a-z]+;/i))&&Fg(a,"unrecognized HTML entity '"+c[0]+"'")}d=e.split(/(\r?\n)/);if(d.length&
1){if(c=d.pop())Fg(a,"unexpected line '"+c+"'"),d.push(c),d.push("")}else Fg(a,"unexpected number of lines ("+d.length+")");a.G=a.G.concat(d);a.T[a.K]=d.length>>1;a.K++;setTimeout(function(){Dg(a)},0)}})}}
function Eg(a){if(0<=a.W.indexOf("p"))return a.u(a.G.join("")),0;var b=Xe(a.b);try{for(var c=0;c<a.G.length;c+=2){a.ia++;0<=a.W.indexOf("l")&&a.u(Gg(a)+": "+a.G[c]);if(!Hg(a,a.G[c]+"\r\n"))break;if(null!==a.H)break}a.i&&a.error("open block",a.v[a.L].ia);a.w.length&&a.error("open scope",a.w[0].ia);for(var d=a.X,c={},e=0;e<a.R.length;c={S:c.S,Ta:c.Ta,Ba:c.Ba},e++){c.Ba=a.R[e];c.S=[];c.Ta=0;c.Ba.S.forEach(function(a){return function(b,c){c===a.S.length&&a.S.push(b);a.Ta++}}(c));if(c.Ta==c.S.length)for(var f=
d;f+c.Ta<=a.X;f++){for(var g=void 0,g=0;g<c.Ta&&c.S[g]===a.S[f+g]&&c.Ba.ea[g]==a.ea[f];g++);if(g==c.Ta){Ig(a,c.Ba.name,f,Jg);c.Ba=null;break}}c.Ba&&(Ig(a,c.Ba.name,a.X,Jg),c.Ba.S.forEach(function(b){return function(c,d){Kg(a,c,b.Ba.ea[d])}}(c)))}for(d=0;d<a.O.length;d++){var h=a.O[d],k=a.v[h];k?Lg(a,k.ma):a.error("missing definition for variable '"+h+"'")}a.ea.forEach(function(b,c){var d=Mg(a,b,!1,c);void 0===d?a.error("unable to parse expression '"+b+"'"):(d+=a.S[c],a.S[c]=Ng(a,d,c))})}catch(l){a.u(l.message),
a.V=-1}a.b.i=b;return a.V}
function Hg(a,b,c,d,e){var f;if(a.i&&(1==a.i&&(f=b.indexOf(a.J),0<=f?(a.i++,b=b.substr(f+1)):a.error("expected "+a.M+" definition in '"+b+"'")),1<a.i&&(b=Og(a,b)),a.i))return!0;null!=a.D&&(b=Pg(a,b));var g=!0;f="";for(var h;g;){h=b.match(a.ga);if(!h||h[5]&&";"!=h[5].slice(0,1))return a.error("failed to parse line '"+b+"'"),!1;g=!1;f=h[2].toUpperCase();if(f==Qg||f==Rg)c=null;if(c){for(var k=0;k<c.length;k++)for(var l=c[k],p=d[k]||e[k]||"",u=0,A=b.length-h[5].length;u<A;){var J=b.indexOf(l,u);if(0>
J)break;var u=J+1,F=J+l.length,ka="",Ab="";J&&(ka=b[J-1]).match(/[0-9A-Z$%.]/i)||!(F>=b.length)&&(Ab=b[F]).match(/[0-9A-Z$%.]/i)||("'"==ka&&J--,"'"==Ab&&F++,b=b.substr(0,J)+p+b.substr(F),u=J+p.length,g=!0)}c=null}}d=h[1];b=h[3];c=h[4].trim();h=h[4]+h[5];d&&(d=d.slice(0,-1),Ig(a,d,a.X,Jg));var I;f&&(I=c.match(/^([=:]+)(.*)/))&&(e=0,d=f,f=I[1],c=I[2],"=="==f?e|=Sg:"=:"==f&&(e|=Tg),Ig(a,d,c,e),f=c="");if(!f&&!c)return!0;a.M=f;if(I=Ug(a,c))c=c.replace(I,Vg(a,Wg,Ug(a,h))),b||(b="\t");for(;I=Xg(a,c);)c=
c.replace(I,I.slice(0,-1));if(!Yg(a,f,c))switch(f){case Zg:case $g:case ah:Pg(a,h);break;case bh:f=c;I=Mg(a,f);void 0!==I&&null==a.b.ja&&0<=I&&262143>=I?a.X+=I:a.error("unrecognized BLOCK expression '"+f+"'");break;case ch:(f=c)?(a.H=Mg(a,f,!0),void 0===a.H&&a.error("unrecognized END expression '"+f+"'")):a.H=a.la;break;case dh:eh(a,c);break;case fh:a.X=Mg(a,c)||0;break;case gh:eh(a,c.replace(",",",,"));break;case hh:case ih:case jh:case kh:case lh:case mh:case nh:case Qg:case Rg:case oh:case ph:Vg(a,
f,h);break;case qh:case rh:case sh:case th:case uh:case vh:case wh:break;default:f=(f+b+c).trim(),I=Mg(a,f,!0),void 0!==I?Kg(a,I,a.b.ja):a.error("unrecognized word expression '"+f+"'")}return!0}
function Yg(a,b,c){var d=a.v[b];if(!d)return!1;if(null!=c){if(d.Sa==xh){var e=a.X;Lg(a,d.ma);if(e<a.X){if(!c)return!0;yh(a);Lg(a,c);var d=a.S[0],f=a.ea[0];zh(a);if(void 0!==d)return a.S[e]+=d&130023423,a.S[e]|=d&4194304,f&&(a.ea[e]=a.ea[e]?a.ea[e]+("+"+f):f),!0}a.error("OPDEF '"+b+"' ("+c+") failed");return!1}b=a.j;a.j=d;d.Qa=Ah(a,c,!0);Lg(a,d.ma,d.Ua,d.Qa,d.Bb);a.j=b;return!0}if("?"!=b[0])return!1;switch(b.substr(1)){case jh:case nh:d.Sa||Lg(a,d.ma);break;case kh:0<d.Sa&&Lg(a,d.ma);break;case lh:0>
d.Sa&&Lg(a,d.ma);break;case mh:case ih:d.Sa&&Lg(a,d.ma);break;case Qg:case Rg:for(b=0;b<d.Qa.length;b++)Lg(a,d.ma,d.Ua,[d.Qa[b]],[]);break;case ph:for(;0<d.Sa--;)Lg(a,d.ma);break;default:c=d.ma,yh(a,b),Lg(a,c),zh(a)}return!0}function Lg(a,b,c,d,e){b=b.split(/\r?\n/);for(var f=0;f<b.length&&Hg(a,b[f]+"\r\n",c,d,e);f++);}function yh(a,b){a.w.push({name:b,S:a.S,ea:a.ea,X:a.X,Fa:a.Fa,ia:a.ia});a.S=[];a.ea=[];0>a.Fa&&(a.Fa=a.X);a.X=0}
function zh(a){if(a.w.length){var b=a.w[a.w.length-1].name;b&&a.R.push({name:b,S:a.S,ea:a.ea});b=a.w.pop();a.S=b.S;a.ea=b.ea;a.X=b.X;a.Fa=b.Fa;a.w.length||-1==a.Fa||a.error("scope restore error")}else a.error("scope nesting error")}
function Bh(a,b){var c;c=void 0===c?",":c;for(var d=0,e=!1,f=null,g=0;d<b.length;){var h=b[d++];if('"'==h)e=!e;else if(!e){if(!g&&0<=c.indexOf(h)){d--;break}if("<"==h)g++;else if(">"==h&&0>--g){a.error("missing bracket(s) in '"+b+"'");break}}}g?0<g&&a.error("extra bracket(s) in '"+b+"'"):f=b.substr(0,d);return f}
function Mg(a,b,c,d){var e,f=b.match(/^([^,]*),,([^,]*)$/);if(f)b=f[1]?Mg(a,f[1],c,d):0,void 0!==b&&(c=f[2]?Mg(a,f[2],c,d):0,void 0!==c&&(e=Y(a.b,b,18,!0)*Math.pow(2,18)+Y(a.b,c,18,!0)));else{void 0===d&&(d=0<=a.Fa?a.Fa:a.X);b=b.replace(/SIXBIT\s*(\S)(.*?)\1/g,"'$2'").replace(/ASCII\s*(\S)(.*?)\1/g,'"$2"');e=-1;if(!1!==c){e="";var g=b;if(f=b.match(/^([^\s]+)\s*(.*?)\s*$/))e=f[1],g=f[2];e=Lf(a.b,e,g,d,c,!0)}0>e&&(!1===c&&(c=void 0),e=Ve(a.b,b.replace(/\.([^0-9]|$)/g,L(a.b,d,-1)+"$1"),c),void 0===e&&
a.error("unable to parse expression '"+b+"'"))}return e}function Ug(a,b){for(var c=0,d="",e=0,f=-1,g=b.length;e<b.length;){var h=b[e];if(";"==h)break;"["==h&&(c++||(f=e));e++;if("]"==h&&0>=--c){g=e;break}}0>c&&a.error("missing bracket(s) in '"+b+"'");0<=f&&(d=b.substr(f,g-f));return d}function Gg(a,b){b=void 0===b?a.ia:b;for(var c=0;b>a.T[c];)if(b-=a.T[c],c<a.F.length-1)c++;else break;return xa(a.F[c]+" line "+b)}
function Xg(a,b){var c=null;if(b=b.match(/([A-Z$%.][0-9A-Z$%.]*)#/i)){c=b[0];b=b[1];var d="?"+b;if(!a.v[d]){var e,f,g;e=f=g=[];a.v[d]={name:d,Sa:Ch,Ua:e,Bb:f,Qa:g,ma:b+": 0",ia:a.ia};a.O.push(d)}}return c}
function Ah(a,b,c){var d=[];for(c&&(b=b.replace(/^\(?(.*?)\)?$/,"$1"));b;){b=b.trim();c=Bh(a,b);if(!c)break;var e=c;if("\\"==c[0]){var f=1,g=0;"'"==c[1]?(f++,g=6):'"'==c[1]&&(f++,g=7);var e=a,f=c.substr(f),g=void 0===g?0:g,h=Mg(e,f);if(void 0!==h){var k=5;switch(g){case 0:f=L(e.b,h,-1);break;case 6:k++;case 7:for(;h&&k--;)h=Math.trunc(h/Math.pow(2,g))}}e=f}d.push(e);b=b.substr(c.length+1)}return d}
function Pg(a,b){var c=b;null==a.D&&(a.D=a.C="",b&&(a.D=b[0],c=b=b.substr(1)));if(a.D){var d=b.indexOf(a.D);0>d?c="":(c=b.substr(d+1),b=b.substr(0,d),a.D=null);a.C+=b}if(null==a.D){var d=b=0,e,f,g=a.C.length;a.M==$g&&g++;for(var h=0;h<g;h++){b||(d=0,f=29,e=7,a.M==ah&&(e--,f++));var k=a.C.charCodeAt(h)&127;6==e&&(97<=k&&122>=k&&(k-=32),k=k+32&63);d+=k*Math.pow(2,f);f-=e;b++;0>f&&(Kg(a,d),b=0)}b&&Kg(a,d)}return c}
function Vg(a,b,c){var d,e,f,g,h,k;a.J="<";a.I=">";g=h=k=[];if(b==hh){e=c.match(/([A-Z$%.][0-9A-Z$%.]*)\s*(\([^)]*\)|)\s*,?\s*(<|)([\s\S]*)/i);if(!e)return a.error("unrecognized "+b+" in '"+c+"'"),c;f=e[1];if(e[2]&&","!=e[2]){h=g=Ah(a,e[2],!0);b=[];for(c=0;c<h.length;c++)if(d=h[c].indexOf("<"),0<=d){var l=h[c].lastIndexOf(">");0>l&&(l=h[c].length);b[c]=h[c].substr(d,l-d);h[c]=h[c].substr(0,d)}h=b}b=Dh;c=3}else if(b==oh){a.J="[";a.I="]";e=c.match(/([A-Z$%.][0-9A-Z$%.]*)\s*(\[)([\s\S]*)/i);if(!e)return a.error("unrecognized "+
b+" in '"+c+"'"),c;f=e[1];b=xh;c=2}else if(b==Wg)a.J="[",a.I="]",f="?"+wa(++a.ba,5),a.v[f]&&a.error("literal symbol '"+f+"' redefined"),e=[c[0],c.substr(1)],b=Eh,c=0;else if(b==Qg||b==Rg){a.j||a.error(b+" outside of macro");e=c.match(/([A-Z$%.][0-9A-Z$%.]*)\s*,\s*(<|)([\s\S]*)/i);if(!e)return a.error("unrecognized "+b+" operands '"+c+"'"),c;for(d=0;d<a.j.Ua.length&&e[1]!=a.j.Ua[d];d++);if(d==a.j.Ua.length)return a.error("invalid "+b+" parameter '"+e[1]+"'"),c;f="?"+b;g=[e[1]];b==Rg?k=a.j.Qa[d].split(""):
k=Ah(a,a.j.Qa[d]);b=k.length;c=2}else{d=Bh(a,c);if(!d)return a.error("missing "+b+" expression '"+c+"'"),c;c=c.substr(d.length+1);d=d.trim();e=c.match(/\s*(<|)([\s\S]*)/i);f="?"+b;b=b==ih||b==nh?a.v[d]||a.N[d]||void 0!==a.b.i[d]?1:0:Mg(a,d)||0;c=1}f=f.toUpperCase();a.i=1;a.L=f;a.v[f]={name:f,Sa:b,Ua:g,Bb:h,Qa:k,ma:"",ia:a.ia};e[c]&&(a.i=2,Og(a,e[c+1]));return f}
function Og(a,b){for(var c="",d=0;d<b.length;d++)if(b[d]==a.J)a.i++;else if(b[d]==a.I&&(a.i--,1==a.i)){a.i=0;c=b.substr(d+1);b=b.substr(0,d);break}d=a.L||"";a.v[d].ma+=b;a.i||(a.L=null,Yg(a,d));return c}
function Ig(a,b,c,d){d=void 0===d?0:d;b=b.toUpperCase().substr(0,6);if(d&Jg&&a.N[b])a.error("label '"+b+"' redefined");else{var e=null;if("string"==typeof c){e=Mg(a,c,!0);if(void 0===e){a.error("parseExpression("+c+") failed");return}c=e;e=a.b.ja}var f=a.N[b];f?(f.value=c,f.Xb=d,f.ia=a.ia):a.N[b]={name:b,value:c,Xb:d,ia:a.ia};a.b.i[b]={value:c,ja:e}}}function eh(a,b){var c=Mg(a,b,!0);void 0!==c?Kg(a,c,a.b.ja):a.error("unrecognized EXP expression '"+b+"'")}
function Kg(a,b,c){a.S[a.X]=Ng(a,b);null!=c&&(a.ea[a.X]=c);a.X++}function Ng(a,b,c){c=void 0===c?a.X:c;var d=Y(a.b,b||0,36,!0);(b<-B||b>=D)&&Fg(a,"truncated value "+va(b)+" at location "+va(c)+" to "+va(d));return d}vg.prototype.error=function(a,b){throw Error("error in "+Gg(this,b)+": "+a);};function Fg(a,b){a.u("warning in "+Gg(a,void 0)+": "+b)}vg.prototype.u=function(a){this.b?this.b.u(a):console.log(a)};
var Jg=1,Sg=2,Tg=4,Zg="ASCII",$g="ASCIZ",bh="BLOCK",hh="DEFINE",ch="END",dh="EXP",ih="IFDEF",jh="IFE",kh="IFG",lh="IFL",mh="IFN",nh="IFNDEF",Qg="IRP",Rg="IRPC",qh="LALL",Wg="LITERAL",rh="LIST",fh="LOC",sh="NOSYM",oh="OPDEF",th="PAGE",ph="REPEAT",ah="SIXBIT",uh="SUBTTL",vh="TITLE",gh="XWD",wh="XLIST",Dh=-1,xh=-2,Eh=-3,Ch=-4;
function Fh(a,b,c){r.call(this,"Computer",a,33554432);this.A.aa=!1;this.R=null;Gh(this,b);this.N=$c(this,"autoPower",a,6);this.w=0;this.W=+a.busWidth||+a.buswidth;this.L=this.F=this.M=null;this.K=this.V=!1;this.I=this.C=null;this.T=this.O=!1;this.ba=$c(this,"url")||"";(Math.random()+.1).toString(36);this.i=Hh(this);if(this.v=rb("CPU",this.id)){this.D=rb("Debugger",this.id);this.G=new Ac({id:this.cb+".bus",busWidth:this.W},this.v,this.D);var d,e=pb(this.id);if((this.j=rb("Panel",this.id))&&this.j.Aa)for(b=
0;b<e.length;b++)d=e[b],d.ha=this.j.ha,d.u=this.j.u,d.Aa=this.j.Aa;this.u(Rb+" v1.34.3\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.Ma&&d.Ma(this,this.G,this.v,this.D);b=null;d=$c(this,"resume",a);void 0!==d&&(1<d.length?b=this.F=d:this.b=parseInt(d,10));var f;if(a=$c(this,"state")||(f=!0,a.state))this.M=b=a,f||(this.K=!0,this.b=Ih),this.b&&(this.I=new G(this,"1.34.3"),Uh(this.I)?b=null:
delete this.I);!b&&this.b&&(b=Vh(this))&&(this.K=!0);if(b){var g=this;Ia(b,null,!0,function(a,b,c){c?(g.F=null,g.K=!1,g.ha("Unable to load machine state from server (error "+c+(b?": "+Da(b):"")+")")):(g.L=b,g.V=!0);Mb(g)})}else Mb(this);this.J.power||(this.N=!0);!c&&this.N&&Wh(this,this.Xa)}else q("Unable to find CPU component")}ja(Fh,r);function Gh(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){q(d.message+" ("+c+")")}}a.R=b}
function $c(a,b,c,d){var e=b.toLowerCase(),e=Ta(b)||Ta(e);void 0===e&&a.R&&(e=a.R[b]);void 0===e&&c&&(e=c[b]);void 0===e&&"object"==typeof resources&&resources[b]&&(e=b);void 0===e&&(e=void 0);if("string"==typeof e&&d)switch(d){case 4:e=+e;isNaN(e)&&(e=0);break;case 6:e="true"==e}return e}function Wh(a,b,c){for(var d=pb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Bb(f)){Bb(f,function(){Wh(a,b,c)});return}}b.call(a,c)}
function Xh(a,b){var c=new G(a,"1.34.3",Yh);if(Uh(c)&&Zh(c)){var d=c.get($h),e=b?b.get($h):"unknown";d!=e&&(a.ha("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}m=Fh.prototype;
m.Xa=function(a){void 0===a&&(a=this.b||(this.L?ai:Ih));if(!this.w){this.w++;var b=!1,c=!1;this.O=!1;var d=this.I||new G(this,"1.34.3");if(a==bi)b=!0;else if(a>Ih){if(Uh(d,this.L)){this.C=new G(this,"1.34.3",ci);Uh(this.C)&&(di(this,d),a=ei,fi(this.C));this.C.set($h,Ha());gi(this.C);var e=this.b&&!this.K;if(a==ai||ob("Click OK to restore the previous "+Rb+" machine state, or CANCEL to reset the machine.")){if(c=Zh(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?Uh(d,g):("error"==f&&"no machine state"!=
g?(this.ha("Error: "+g),"unable to verify user"==g&&(Ra(hi,""),this.i=null)):this.u(f+": "+g),fi(d),Uh(d)?(c=Zh(d),e=!0):c=!1))}e&&Xh(this,c?d:null)}else a==ei&&d.clear()}else Xh(this);delete this.L;delete this.I}e=pb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.v&&(c=ii(this,g,d,b,c));b=[d,a,c];a!=bi?Wh(this,this.Ib,b):this.Ib(b)}};
function ii(a,b,c,d,e){if(!b.A.aa){b.A.aa=!0;var f=null;try{if(e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,".")))),"string"===typeof f&&(f=null),!b.Ca(f,d)&&f&&(q("Unable to restore state for "+b.type),a.M&&!a.V?(c.clear(),a.b=Ih,window&&window.location.reload()):a.O=!0,b.Ca(null),e=!1),!d&&b.Eb){var g=b.Eb.split("|");for(a=0;a<g.length;a++)b.status(g[a])}}catch(h){q("Error restoring state for "+b.type+" ("+h.message+")")}}return e}
m.Ib=function(a){var b=a[0],c=0>a[1];a=a[2];this.T=!0;this.A.aa=!0;var d=this.J.power;d&&(d.textContent="Shutdown");this.v&&(ii(this,this.v,b,c,a),K(this,-2),this.v.fa());this.O&&(di(this,b),b.clear());!c&&this.C&&(this.C.clear(),delete this.C);this.w=0};
function di(a,b){if(ob("There may be a problem with your "+Rb+" machine.\n\nTo help us diagnose it, click OK to send this "+Rb+" machine state to http://www.pcjs.org.")){var c=a.ba;a=a.i||"";b=b.toString();var d={};d.app=Rb;d.ver="1.34.3";d.url=c;d.user=a;d.type="bug";d.data=b;Ia("http://www.pcjs.org/api/v1/report",d,!0)}}
function Ag(a,b,c){var d,e="none";if(a.w)return null;a.w--;var f=new G(a,"1.34.3"),g=new G(a,"1.34.3",Yh),h=Ha();g.set($h,h);f.set($h,h);f.set(ji,"1.34.3");f.set(ki,window?window.location.href:null);f.set(li,window?window.navigator.userAgent:"");a.v&&a.v.sa&&(c&&(b&&(a.v.A.fa=a.v.A.P),a.v.Y()),d=a.v.sa(b,c),"object"===typeof d&&f.set(a.v.id,d),c&&(a.v.A.aa=!1,!1===d&&(e=null)));for(var h=pb(a.id),k=0;k<h.length;k++){var l=h[k];l.A.aa&&(l.sa&&(d=l.sa(b,c),"object"===typeof d&&f.set(l.id,d)),c&&(l.A.aa=
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.i&&mi(a,a.i,f.toString()),gi(g)&&gi(f)||(e=null,d=h=!0)):a.b&&(d=!0,h=a.b==ni),d&&f.clear(h)):e=f.toString());c&&(a.A.aa=!1,b=a.J.power)&&(b.textContent="Power");a.w=0;return e}
function Ce(a){r.call(this,"ROM",a,128);this.aa=this.b=null;this.C=+a.addr;this.j=+a.size;this.i=a.alias;"string"==typeof this.i&&(this.i=eval(this.i));this.w=a.file;this.F=wa(this.w);if(this.w){a=this.w;var b=xa(this.F);"json"!=b&&"hex"!=b&&(a=Ja()+"/api/v1/dump?file="+this.w+"&format=bytes&decimal=true");var c=this;Ha(a,null,!0,function(a,b,f){f?(c.ja("Unable to load ROM resource (error "+f+": "+a+")"),c.w=null):(fb(c.bb,a,b),(a=Ia(a,b))?(c.b=a.da,c.aa=a.aa):c.w=null);De(c)})}}ja(Ce,r);
Ce.prototype.Ma=function(a,b,c,d){this.G=b;this.v=c;this.D=d;De(this)};Ce.prototype.Ba=function(){this.aa&&(this.D&&Ee(this.D,this.id,this.C,this.j,this.aa),delete this.aa);return!0};Ce.prototype.ra=function(){return!0};
function De(a){if(!Ab(a)){if(a.w){if(!a.b||!a.G)return;a.j||(a.j=a.b.length);if(a.b.length!=a.j)yb(a,"ROM size ("+n(a.b.length,8,!0)+") does not match specified size ("+n(a.j,8,!0)+")");else{var b;b=a.C;if(Ec(a.G,b,a.j,Pc)){var c;for(c=0;c<a.b.length;c++)yc(a.G,b+c,a.b[c]);b=!0}else b=!1;if(b){b=[];"number"==typeof a.i?b.push(a.i):null!=a.i&&a.i.length&&(b=a.i);for(c=0;c<b.length;c++){for(var d=a,e=b[c],f=d.G,g=d.j,h=[],k=d.C>>>f.i;0<g&&k<f.b.length;)h.push(f.b[k++]),g-=16384;f=d.G;d=d.j;g=0;for(e>>>=
f.i;0<d&&e<f.b.length;){k=h[g++];if(!k)break;f.b[e++]=k;d-=16384}}delete a.b}}}Bb(a)}}Xa(function(){for(var a=w(document,v,"rom"),b=0;b<a.length;b++){var c=a[b],d=t(c),d=new Ce(d);sb(d,c)}});
function Fe(a){r.call(this,"RAM",a);this.aa=this.Pa=null;this.i=+a.addr;this.j=+a.size;this.la=a.load;this.ya=a.exec;null!=this.la&&(this.la=+this.la);null!=this.ya&&(this.ya=+this.ya);this.w=this.F=!1;this.b=a.file;this.C=wa(this.b);if(this.b){a=this.b;var b=xa(this.C);"json"!=b&&"hex"!=b&&(a=Ja()+"/api/v1/dump?file="+this.b+"&format=bytes&decimal=true");var c=this;Ha(a,null,!0,function(a,b,f){f?(c.ja("Unable to load RAM resource (error "+f+": "+a+")"),c.b=null):(fb(c.bb,a,b),(a=Ia(a,b))?(c.Pa=a.Pa,
c.aa=a.aa,null==c.la&&(c.la=a.la),null==c.ya&&(c.ya=a.ya)):c.b=null);Ge(c)})}}ja(Fe,r);Fe.prototype.Ma=function(a,b,c,d){this.G=b;this.v=c;this.D=d;Ge(this)};Fe.prototype.Ba=function(a,b){this.aa&&(this.D&&Ee(this.D,this.id,this.i,this.j,this.aa),delete this.aa);b||this.reset();return!0};Fe.prototype.ra=function(){return!0};
function Ge(a){if(a.G&&(!a.w&&a.j&&(Ec(a.G,a.i,a.j,1)?a.w=!0:a.j=0),!Ab(a))){if(!a.w)q("No RAM allocated");else if(a.b){if(!a.Pa)return;He(a,a.Pa,a.la,a.ya,a.i)?a.status('Loaded image "'+a.C+'"'):a.ja('Error loading image "'+a.C+'"')}a.F=!0;Bb(a)}}
Fe.prototype.reset=function(){if(this.w&&!this.F){for(var a=this.G,b=this.i,c=this.j,d=b&16383,b=b>>>a.i;0<c&&b<a.b.length;){var e=a.b[b],f=c,g=0,g=void 0===g?0:g,d=d||0;void 0===f&&(f=e.size);0>g&&g>=-B&&(g+=D);for(var g=Math.trunc(Math.abs(g))%D,h=d;f--&&h<e.size;h++)e.D(g,d,e.B+d);c-=16384;b++;d=0}this.Pa&&He(this,this.Pa,this.la,this.ya,this.i,!this.D)}this.F=!1};
function He(a,b,c,d,e,f){var g=!1;null==c&&(c=e);if(null!=c){for(g=0;g<b.length;g++)yc(a.G,c+g,b[g]);g=!0}g&&(null==d&&(a.v.Y(),f=!1),null!=d&&(a=a.v,a.$a=d,H(a,d),f?a.A.ba?a.A.P||sc(a):a.A.fa=!0:a.D&&a.A.ba?a.Y()||a.H.A.reset||(cd(a.D),K(a.H,-1)):!1===f&&a.Y(),!a.A.P&&a.Oa&&a.Oa.stop()));return g}Xa(function(){for(var a=w(document,v,"ram"),b=0;b<a.length;b++){var c=a[b],d=t(c),d=new Fe(d);sb(d,c)}});
function Ie(a){r.call(this,"SerialPort",a,1048576);this.w=a.upperCase;"string"==typeof this.w&&(this.w="true"==this.w);this.j=!0;this.i=[];var b=a.binding;if("console"!=b){var c;a=Je;b&&(void 0===c&&(c="Panel"),(c=rb(c,this.id))&&(b=c.J[b])&&this.sa(null,a,b))}this.b=this.C=null;this.exports={connect:this.Lb,receiveData:this.gb,receiveStatus:this.jc,setConnection:this.mc}}ja(Ie,r);m=Ie.prototype;
m.sa=function(a,b,c){var d=this;switch(b){case Je:return this.J[b]=c,c.onkeydown=function(a){a=a||window.event;var b=0,c=a.keyCode;8==c?b=a.altKey?ma.xb:ma.Qb:46==c?b=ma.xb:a.ctrlKey&&c>=ma.wb&&c<=ma.Rb&&(b=c-(ma.wb-ma.Nb));b&&(a.preventDefault&&a.preventDefault(),d.gb(b));return!0},c.onkeypress=function(a){a=a||window.event;if(!a.metaKey){var b=a.which||a.keyCode;a.altKey&&b==ma.Pb&&(b=ma.Ob);d.gb(b);a.preventDefault&&a.preventDefault()}return!0},c.onpaste=function(a){a.stopPropagation&&a.stopPropagation();
a.preventDefault&&a.preventDefault();(a=a.clipboardData||window.clipboardData)&&d.gb(a.getData("Text"))},c.removeAttribute("readonly"),!0}return!1};m.Ma=function(a,b,c,d){this.H=a;this.G=b;this.v=c;this.D=d;Bb(this)};
m.Lb=function(a){if(!this.b){var b=$c(this.H,"connection");if(b){var c=b.split("->");if(2==c.length){var d=Ca(c[0]);if(d!=this.ab)return;c=Ca(c[1]);if(this.b=qb(c)){var e=this.b.exports;if(e){var f=e.connect;f&&f.call(this.b,this.j);if(this.C=e.receiveData){this.j=a;this.status("Connected "+this.bb+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};m.Ba=function(a,b){if(!b)if(this.Lb(this.j),!a)this.reset();else if(!this.restore(a))return!1;return!0};
m.ra=function(a){return a?this.save():!0};m.reset=function(){};m.save=function(){var a=new G(this);a.set(0,[]);return a.data()};m.restore=function(){return!0};m.gb=function(a){if("number"==typeof a)this.i.push(a);else if("string"==typeof a)for(var b=0,c,d=0;d<a.length;d++){c=b;b=a.charCodeAt(d);if(10==b){if(13==c)continue;b=13}this.i.push(b)}else this.i=this.i.concat(a);return!0};m.jc=function(){};m.mc=function(a,b){return this.b?!1:(this.b=a,this.C=b,!0)};var Je="buffer";
Xa(function(){for(var a=w(document,v,"serial"),b=0;b<a.length;b++){var c=a[b],d=t(c),d=new Ie(d);sb(d,c)}});function Ke(a){r.call(this,"Debugger",a);this.U=+a.base||16;this.L=32;this.T=["{","}"];this.ta=["[","]"];this.F=0;this.V=!1;this.C=-1;this.w=[];this.b={}}ja(Ke,r);Ke.prototype.tb=function(){return-1};Ke.prototype.ub=function(){};
function Le(a,b,c,d){if(c)if(b){0>a.C&&a.w.length&&(a.C=0);if(0>a.C||b!=a.w[a.C])a.w.splice(0,0,b),a.C=0;a.C--}else a.V?b="end":b=a.w[a.C+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(Ca(b.substring(c,f))),c=f+1}}return a}function Me(a,b,c){if(32>=a.L)return b&c;b=X(a,b,0,!0);c=X(a,c,0,!0);return((b/Ne|0)&(c/Ne|0))*Ne+((b&c)>>>0)}
function Oe(a,b,c){if(32>=a.L)return b|c;b=X(a,b,0,!0);c=X(a,c,0,!0);return((b/Ne|0)^(c/Ne|0))*Ne+((b^c)>>>0)}Ke.prototype.Ib=function(a,b){return a*b};function X(a,b,c,d){var e=b;c=c||a.L;if(d)if(32==c)e=b>>>0;else if(32>c)e=b&(1<<c)-1;else{if(a=Math.pow(2,c),0>b||b>=a)e=b%a,0>e&&(e+=a)}else 32>=c?e=b<<32-c>>32-c:(a=Math.pow(2,c-1),b>=a?(e=b%a,(b/a|0)&1&&(e-=a)):b<-a&&(e=b%a,((-b-1)/a|0)&1?e&&(e+=a):e||(e-=a)));b!=e&&(b=e);return b}
function Pe(a,b,c,d){for(d=void 0===d?-1:d;d--&&c.length;){var e=c.pop();if(2>b.length)return!1;var f,g=b.pop();f=b.pop();switch(e){case "*":f=a.Ib(f,g);break;case "/":if(!g)return!1;f=Math.trunc(f/g);break;case "^/":if(!g)return!1;f%=g;break;case "+":f+=g;break;case "-":f-=g;break;case "<<":f<<=g;break;case ">>":f>>=g;break;case ">>>":f>>>=g;break;case "<":f=f<g?1:0;break;case "<=":f=f<=g?1:0;break;case ">":f=f>g?1:0;break;case ">=":f=f>=g?1:0;break;case "==":f=f==g?1:0;break;case "!=":f=f!=g?1:
0;break;case "&":f=Me(a,f,g);break;case "!":case "|":e=a;32>=e.L?f|=g:(f=X(e,f,0,!0),g=X(e,g,0,!0),f=(f/Ne|0|g/Ne|0)*Ne+((f|g)>>>0));break;case "^!":f=Oe(a,f,g);break;case "&&":f=f&&g?1:0;break;case "||":f=f||g?1:0;break;case ",,":f=X(a,f,18,!0)*Math.pow(2,18)+X(a,g,18,!0);break;case "_":case "^_":"^_"==e&&(g=35-(g&255));g&&(f=X(a,f,0,!0),f=0<g?f*Math.pow(2,g):Math.trunc(f/Math.pow(2,-g)));break;default:return!1}b.push(X(a,f))}return!0}
function Qe(a,b,c,d,e,f){var g,h,k,l=!1,p=0,u=[],E=[],J=a.U;for(a.U=e;c<d;){var I;h=b[c++].trim();k=c<d?b[c++]:"";if(h)I=Re(a,h,null,f,p);else if("{"==k){h=1;for(I=c;c<d;)if(c++,k=c<b.length?b[c++]:"","{"==k)h++;else if("}"==k&&!--h)break;I=Qe(a,b,I,c-1,a.U,f);null!=I&&p&&(I=Se(a,I,p));h=c<d?b[c++].trim():"";k=c<d?b[c++]:""}else{if(" "==k)continue;if("^B"==k){a.U=2;continue}if("^O"==k){a.U=8;continue}if("^D"==k){a.U=10;continue}if(!(p&-1073741824)){if("+"==k)continue;if("-"==k){p=p<<2|1;continue}if("~"==
k||"^-"==k){p=p<<2|2;continue}if("^L"==k){p=p<<2|3;continue}}l=!0;break}if(void 0===I)if(f)f.push(h),I=0;else{l=!0;f=[];break}u.push(X(a,I));if(" "==k)if(c<b.length-1&&!b[c])c++,k=b[c++];else{l=!0;break}if(!k)break;p="<"==a.T[0]?Te:Ue;if(!p[k]){l=!0;break}E.length&&p[k]<=p[E[E.length-1]]&&Pe(a,u,E,1);E.push(k);a.U="^_"==k?10:e;p=0}if(l||!Pe(a,u,E)||1!=u.length)l=!0;l?f||a.u("parse error ("+(h||k)+")"):g=u.pop();a.U=J;return g}
function Ve(a,b,c,d,e){for(var f;0<=(f=b.indexOf(c));){for(var g=0,h=f+1,k=e;h<b.length;){var l=b[h++];if(l==c){k=-1;break}if(!k)break;k--;l=l.charCodeAt(0);7==d?l&=127:l=l-32&63;g=X(a,g*Math.pow(2,d)+l,d*e,!0)}if(0<=k){a.u("parse error ("+c+b+c+")");break}else b=b.substr(0,f)+L(a,g,-1)+b.substr(h)}return b}
function We(a,b,c){var d=void 0,e=!1===c;c=Array.isArray(c)?c:void 0;if(b){"{"!=a.T[0]&&(b=b.split(a.T[0]).join("{").split(a.T[1]).join("}"));b=Ve(a,b,'"',7,5);if(!b)return d;b=Ve(a,b,"'",6,6);if(!b)return d;b=b.replace(/(^|[^A-Z0-9$%.])([0-9]+)B/,"$1$2^_").replace(/\s+/g," ");b=b.split(/({|}|\|\||&&|\||\^!|\^B|\^O|\^D|\^L|\^-|~|\^_|_|&|!=|!|==|>=|>>>|>>|>|<=|<<|<|-|\+|\^\/|\/|\*|,,| )/);d=Qe(a,b,0,b.length,a.U,c);void 0!==d&&e&&Xe(a,null,d)}return d}
function Se(a,b,c){for(;c;){switch(c&3){case 1:b=-X(a,b);break;case 2:b=Oe(a,b,-1);break;case 3:for(var d=35;0<=d&&!Me(a,b,Math.pow(2,d));)d--;b=35-d}c>>>=2}return b}
function Re(a,b,c,d,e){e=void 0===e?0:e;var f,g=Array.isArray(d)?d:void 0;if(null!=b){f=a.tb(b);if(0<=f)f=a.ub(f);else if(f=b,a.b[f]?f=a.b[f].value:(f=f.substr(0,6),f=a.b[f]&&a.b[f].value),null!=f){var h=a.b[b]&&a.b[b].Mb;h&&(g?g.push(h):(a.u(b+" is undefined ("+h+")"),f=void 0))}else f=na(b,1<b.length?a.U:10);null!=f?f=X(a,Se(a,f,e)):d||a.u("invalid "+(c?c:"value")+": "+b)}else d||a.u("missing "+(c||"value"));return f}
function Xe(a,b,c){var d,e=!1;void 0!==c&&(e=!0,d=8==a.U?L(a,c,a.L,8,1)+" "+c+".":L(a,c,a.L,16,1)+" "+L(a,c,a.L,8,1)+" "+L(a,c,a.L,2,32>=a.L?8:6)+" "+c+".",32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'"));a.u((null!=b?b+": ":"")+d);return e}function Ye(a){var b=a.b;a.b={};return b}function Ze(a,b){var c=0;if(a.b){if(b)return Xe(a,b,a.b[b]&&a.b[b].value);b=Object.keys(a.b);b.sort();for(var d=0;d<b.length;d++)Xe(a,b[d],a.b[b[d]].value),c++}return 0<c}
function L(a,b,c,d,e){c=void 0===c?0:c;e=void 0===e?0:e;switch((void 0===d?0:d)||a.U){case 2:(a=0<c?c:0)?36<a&&(a=36):(a=Math.abs(b),a=255>=a?8:262143>=a?18:36);b=oa(b,2,a,"",e);break;case 8:b=ua(b,0<c?(c+2)/3|0:0,!!e);break;case 10:b=va(b,0<c?Math.ceil(.3*c):0);break;default:b=n(b,0<c?c+3>>2:0,!!e)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c}
var Ue={"||":5,"&&":6,"!":7,"|":7,"^!":8,"&":9,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,_:19,"^_":19,"{":20,"}":20},Te={",,":1,"||":5,"&&":6,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,"!":15,"|":15,"^!":15,"&":15,_:19,"^_":19,"{":20,"}":20},Ne=Math.pow(2,32);
function $e(a){Ke.call(this,a);this.Ja=!1;this.Ga=18;this.L=36;this.T=["<",">"];this.ta=[];this.Ia=Y();this.M=Y(0);this.oa=Y(0);this.ha=Y(0);this.I=[];this.i=this.N=this.K=[];af(this);this.X=this.pa=0;this.j=[];this.Ca=void 0;bf(this);this.D=this;this.va={};this.ca=this.Eb=0;this.Z=null;this.R=[];cf(this,a.messages);this.ua=a.commands;this.Ha=[];this.O=0;this.Oa=this.Da=null;this.F=this.La=this.Ka=this.na=this.xa=0;this.wa=this.ma=this.ga=null;var b=this;window?void 0===window[v]&&(window[v]=function(a){return ed(b,
a)}):void 0===global[v]&&(global[v]=function(a){return ed(b,a)})}ja($e,Ke);function df(a){a=a&&a.B;null==a&&(a=-1);return a}function Y(a,b,c){return{B:void 0===a?null:a,eb:void 0===b?!1:b,qa:!1,U:c}}function ef(a,b,c,d){a.B=b;a.eb=c||!1;a.qa=!1;a.U=d}function ff(a){return[a.B,a.eb,a.qa,a.U,a.hb]}function gf(a,b){var c=Y(b[0],b[1],b[2]);c.qa=b[3];b[4]&&(c.zb=Le(a,c.hb=b[4]));return c}m=$e.prototype;
m.Ma=function(a,b,c,d){this.G=b;this.H=a;this.v=c;this.ma=a.j;this.Ga=b.F;(b=$c(a,"messages"))&&cf(this,b);if(a=$c(a,"commands"))this.ua=a;hf(this,function(a){a:{var b=d.G.b,c=a[0],e=a=0,k=b.length;if(c){a=df(jf(d,c,d.oa));if(-1===a){d.u("invalid address: "+c);break a}e=a>>>d.G.i;k=1}d.u("blockid physical blockaddr used size type");d.u("-------- --------- --------- ------ ------ ----");for(var c=-1,l=0;k--;){var p=b[e];p.type==c?l++||d.u("..."):(c=p.type,l=Hc[c],p&&d.u(n(p.id,8)+" %"+
n(e<<d.G.i,8)+" %"+n(p.B,8)+" "+n(p.Xa,4,!0)+" "+n(p.size,4,!0)+" "+l),c!=Oc&&(c=-1),l=0);a+=16384;e++}}});Bb(this)};
m.sa=function(a,b,c){var d=this;switch(b){case "debugInput":return this.ga=this.J[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",ed(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.C<d.w.length-1&&(b=d.w[++d.C])):40==a.keyCode&&(0<d.C?b=d.w[--d.C]:(b="",d.C=-1)),null!=b){var e=b.length;c.value=b;c.setSelectionRange(e,e)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.J[b]=c,Va(c,function(){if(d.ga){var a=d.ga.value;
d.ga.value="";ed(d,a,!0);return!0}return!1}),!0;case "step":return this.J[b]=c,Va(c,function(a){var b=!1;Db(d,!0)||(Ob(d,!0),b=tc(d,a?1:0,null),Ob(d,!1));return b}),!0}return!1};function dd(a){if(a.ga){var b=0,c=0;window&&(b=window.scrollX,c=window.scrollY);a.ga.focus();window&&window.scrollTo(b,c)}}m.Na=function(a,b){var c=-1,d=df(a);-1!==d&&(c=zc(this.G,d),b&&null!=a.B&&(a.B+=b||1));return c};m.yb=function(a,b,c){var d=df(a);-1!==d&&(yc(this.G,d,b),c&&null!=a.B&&(a.B+=c||1),K(this.H,-1))};
m.Ib=function(a,b){0>a&&(a+=D);0>b&&(b+=D);a=xe.call(this.v,a,b,!1,!0);a>=B&&(a-=D);return a};
function jf(a,b,c){var d,e;c||(c=Y());var f=c.B;if(void 0!==b){a:{var g,f=a.T[0],h=a.T[1];g="("==f||"{"==f||"["==f?"\\":"";for(var k="["==f?"\\":"",k=new RegExp(g+f+"([^"+k+f+k+h+"]+)"+g+h);g=b.match(k);){var l=We(a,g[1]);if(void 0===l){b=void 0;break a}b=b.replace(f+g[1]+h,null!=l?L(a,l):"undefined")}if(a.ta.length)for(f=a.ta[0],h=a.ta[1],g="("==f||"{"==f||"["==f?"\\":"",k="["==f?"\\":"",k=new RegExp(g+f+"([^"+k+f+k+h+"]+)"+g+h);g=b.match(k);)b=b.replace("["+g[1]+"]","unimplemented");for(;f=b.match(/\$([a-z]+)/i);){h=
null;switch(f[1].toLowerCase()){case "ops":h=0}if(null==h)break;b=b.replace(f[0],h.toString())}}"%"==b.charAt(0)&&(d=!0,b=b.substr(1));var p,f=b,u;if(f.match(/^[a-z_][a-z0-9_]*$/i))for(f=f.toUpperCase(),h=0;h<a.I.length;h++)if(g=a.I[h].aa[f],null!=g){u=g.o;break}null!=u&&(p=Y(u));if(p)return p;0<=b.indexOf("0x")?e=16:0<=b.indexOf("0o")?e=8:0<=b.indexOf(".")&&(e=10);f=We(a,b)}null!=f&&(f=kf(f,a.Ga),ef(c,f,d,e));return c}function lf(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.zb=Le(a,b.hb=c[2]))}
function kf(a,b){0>a&&a>=-B&&(a+=D);return Math.trunc(Math.abs(a))%Math.pow(2,void 0===b?36:b)}function mf(a,b){return L(a,b/Tb,18)+" "+L(a,b%Tb,18)}
function cf(a,b){a.D=a;a.ca=a.Eb=536870916;a.Z=null;a.R=[];b=Le(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(b.length)for(var c in bc){var d;a:if(d=void 0,Array.prototype.indexOf)d=b.indexOf(c,d);else{d=d||0;0>d&&(d+=b.length);0>d&&(d=0);for(var e=b.length;d<e;d++)if(d in b&&b[d]===c)break a;d=-1}0<=d&&(a.ca|=bc[c],a.u(c+" messages enabled"))}}function hf(a,b){for(var c in bc)if(16==bc[c]){a.va[c]=b;break}}m.tb=function(a){return nf.indexOf(a.toUpperCase())};
m.ub=function(a){var b,c=this.v;switch(a){case of:b=c.i;break;case pf:b=c.I;break;case qf:b=c.b;break;case rf:b=c.j&x;break;case sf:b=c.j&131072?1:0;break;case tf:b=c.j&65536?1:0;break;case uf:b=c.j&32768?1:0;break;case vf:b=c.j&32?1:0;break;case wf:b=c.j&262144?1:0}return b};
m.message=function(a,b){b&&(a+=" @"+L(this,Y(this.v.oa).B,18));if(!this.Z||a!=this.Z)if(this.Z=a,this.ca&1073741824)this.R.push(a);else{var c;if(this.ca&-2147483648&&this.v&&(c=this.v.A.P)||Db(this,!0))this.Y(),c&&(a+=" (cpu halted)");this.u(a);this.v&&(a=this.v,md(a),a.ma=0,a.H&&K(a.H,void 0))}};
function bf(a){var b;if(!td(a))a.j&&a.j.length&&a.u("instruction history buffer freed"),a.X=0,a.j=[];else if(!a.j||!a.j.length){a.j=Array(xf);for(b=0;b<a.j.length;b++)a.j[b]=Y();a.X=0;a.u("instruction history buffer allocated")}}function yf(a,b,c){if(!zf(a,c))return!1;sc(a.v,b);return!0}
function tc(a,b,c,d){if(!zf(a))return!1;var e="";null===c&&(e=(c=!a.Da||"tr"==a.Da)?"tr":"t");a.F=0;b||td(a)&&ud(a,a.v.i,0);try{b=kd(a.v,b);var f=a.v.Za(b);0<f&&(uc(a.v,f),a.F+=f,vc(a.v,f,!0),wc(a.v,f),a.na++)}catch(g){"number"!=typeof g&&(a.F=0,yb(a.v,g.stack||g.message))}!1!==d&&(a.ma&&a.ma.stop(),K(a.H,-1));cd(a,c||!1,e);return 0<a.F}m.Y=function(a){this.v&&this.v.Y(a)};function cd(a,b,c){b=void 0===b?!0:b;a.Ja&&(c&&a.u(Af+c),ef(a.M,a.v.i),b&&1!=a.O?Bf(a):Cf(a))}
function zf(a,b){var c;(c=!a.v||!Ab(a.v))||(c=a.v,c.A.ba?c=!0:(c.u(c.toString()+" not powered"),c=!1),c=!c);return c||a.v.A.P?(b||a.u("cpu busy or unavailable, command ignored"),!1):!zb(a.v)}m.Ba=function(a,b){return!b&&(this.reset(!0),a)?this.restore(a):!0};m.ra=function(a,b){b&&this.u(a?"suspending":"shutting down");return a?this.save():!0};m.reset=function(a){bf(this);this.na=0;this.Z=null;this.F=0;ef(this.M,this.v.i);this.A.P=!1;Df(this);a||cd(this)};
m.save=function(){var a=new G(this);a.set(0,ff(this.M));a.set(1,ff(this.oa));a.set(2,ff(this.ha));a.set(3,[this.w,this.V,this.ca]);a.set(4,this.I);return a.data()};m.restore=function(a){var b=0;void 0!==a[3]&&(this.M=gf(this,a[b++]),this.oa=gf(this,a[b++]),this.ha=gf(this,a[b++]),this.w=a[b][0],"string"==typeof this.w&&(this.w=[this.w]),this.V=a[b][1],this.ca|=a[b][2]);a[4]&&(this.I=a[4]);return!0};m.start=function(a,b){this.O||this.u("running");this.A.P=!0;this.Ka=a;this.La=b};
m.stop=function(a,b){if(this.A.P){this.A.P=!1;this.F=b-this.La;if(!this.O){b="stopped";if(this.F){a-=this.Ka;var c=0<a?Math.round(1E3*this.F/a):0;b+=" (";td(this)&&(b+=this.na+" instructions, ",this.na=0);b+=this.F+" cycles, "+a+" ms, "+c+" hz)"}else Pb(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.u(b)}cd(this,!0);dd(this);Df(this,this.v.i);this.Z=null}};function td(a){return 1<a.i.length||!!a.pa}
function ud(a,b,c){var d=-1;c||(d=a.v.f(b),2756==d>>23&&a.v.oa==b&&(b=sd(a.v,1)));if(0<c&&(a.pa&&!--a.pa||Xc(a,b,1,a.i)))return!0;0<=c&&a.j.length&&(a.na++,0>d&&(d=a.v.f(b)),0<=d&&(ef(a.j[a.X],b),++a.X==a.j.length&&(a.X=0)));return!1}
function Ef(a,b,c,d){var e=Y(b.B),f=a.Na(b,1),g,h,k,l=0,p=f/Yb|0,u;for(u in Ff)if(g=Ff[u][p&u]){h=+u;p>>=6;switch(h){case 32512:k=Gf;l=p&3;break;case 32256:k=Hf;l=p&7;break;case 29248:k=If,l=(p&48)>>2|(p&6)>>1}break}k=k&&k[l]||"";"S"==k&&g>Jf&&(k="B");k=Kf[g||0]+k;if(g){if(28700==h)h=f/Zb&127,l=L(a,h,-1);else for(h=f>>23&15,l=L(a,h,-1),p=0;l&&p<Lf.length;p++)if(g==Lf[p][0]&&(u=Lf[p][h])){k=Kf[u];l="";break}k=Ba(k,8)+(l?l+",":"");f&4194304&&(k+="@");k+=L(a,f&262143,-1);(f=f>>18&15)&&(k+="("+L(a,f,
-1)+")")}else k=Ba(k,8)+mf(a,f);f=k;g="";h=L(a,e.B,18)+":";if(-1!==e.B&&-1!==b.B){do if(k=a.Na(e,1),g+=" "+mf(a,k),null==e.B)break;while(e.B!=b.B)}h+=Ba(g,16)+f;c&&(h=Ba(h,48)+";"+(c||""),h=a.v.A.Ua?h+("cycles="+fd(a.v).toString()+" cs="+n(a.v.Ha)):h+(null!=d?"="+d.toString():""));return h}
function Mf(a,b,c,d,e){var f=-1,g,h;if(b){for(var k=b.toUpperCase(),l=0;l<Lf.length;l++)for(var p in Lf[l])if(+p&&(h=Lf[l][p],k==Kf[h])){k=Kf[Lf[l][0]];c&&(c=L(a,+p)+","+c);break}for(var u in Ff){g=+u;p=Ff[u];switch(g){case 32512:l=Gf;break;case 32256:l=Hf;break;case 29248:l=If;break;default:l=[""]}for(var E in p){h=p[E];for(var J=0;J<l.length;J++){var I=l[J];"S"==I&&h>Jf&&(I="B");if(k==Kf[h]+I){f=29248!=g?J:(J&3)<<1|(J&12)<<2;f=(E|f<<6)*Yb;break}}if(0<=f)break}if(0<=f)break}!(0>f)||c&&c.match(/^[0-9A-Z$%.?]/i)||
(c=b+c,b="",f=0)}else c&&(f=g=0);if(0<=f&&c)for(k=c.split(","),2<k.length&&(e||a.u("too many operands: "+c),k.length=0,f=-1),u=0;u<k.length;u++)if(h=k[u].trim()){E=h.match(/(@?)([^(]*)\(?([^)]*)\)?/);if(!E){e||a.u("unknown operand: "+h);f=-1;break}E[1]&&(f+=4194304);if(h=E[3]){h=We(a,h,e);if(void 0==h){f=-1;break}if(0>h||15<h)h&=15;f+=h<<18}h=E[2];if(u||1==k.length)h=h?h.replace(/(^|[^0-9])\./g,"$1"+L(a,d,18)):"0";h=We(a,h,e);if(void 0==h){f=-1;break}if(!u&&1<k.length)if(28700==g){if(0>h||127<h)h&=
127;f+=h*Zb}else{if(0>h||15<h)h&=15;f+=h<<23}else{if(b||u)if(0>h||262143<h)h&=Sb;f+=h}}0>f&&!e&&a.u("unknown instruction: "+b+" "+c);return f}function af(a){var b,c;a.i=["bp"];if(a.N)for(b=1;b<a.N.length;b++){c=a.N[b];c=df(c);var d=a.G;Wc(d.b[c>>>d.i],!1)}a.N=["br"];if(a.K)for(b=1;b<a.K.length;b++)c=a.K[b],c=df(c),d=a.G,Wc(d.b[c>>>d.i],!0);a.K=["bw"];a.xa=0;a.pa=0}
m.Ra=function(a,b,c){var d=!0;c||Nf(this,a,b,!1,!0);if(a!=this.i){var e=df(b);if(-1===e)this.u("invalid address: "+L(this,b.B,18)),d=!1;else{var f=this.G;f.b[e>>>f.i].Ra(e&16383,a==this.K)}}d&&(a.push(b),c?b.qa=!0:(Of(this,a,a.length-1,"set"),bf(this)));return d};function Nf(a,b,c,d,e){var f=!1;c=df(c);for(var g=1;g<b.length;g++){var h=b[g];if(c==df(h)&&(!d||h.qa)){f=!0;h.qa||e||Of(a,b,g,"cleared");b.splice(g,1);b!=a.i&&(d=a.G,Wc(d.b[c>>>d.i],b==a.K));h.qa||bf(a);break}}return f}
function Pf(a,b){for(var c=1;c<b.length;c++)Of(a,b,c);return b.length-1}function Of(a,b,c,d){c=b[c];a.u(b[0]+" "+L(a,c.B,18)+(d?" "+d:c.hb?' "'+c.hb+'"':""))}function Df(a,b){if(void 0!==b)Xc(a,b,1,a.i,!0),a.O=0;else for(b=1;b<a.i.length;b++){var c=a.i[b];if(c.qa){if(!Nf(a,a.i,c,!0))break;b=0}}}
function Xc(a,b,c,d,e){var f=!1;if(!a.xa++)for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.qa)for(var k=df(h)&(d==a.i?65535:-1),l=0;l<c;l++)if(b+l==k){var p,f=!0;h.qa&&(Nf(a,d,h,!0),e=!0);if(p=h.zb){for(var f=!1,u=0;u<p.length;u++)if(!Qf(a,p[u],!0)){if(p[u].indexOf("if")){f=!0;break}for(var E=u+1;E<p.length&&p[E].indexOf("else");E++)u++;if(E==p.length){f=!0;break}}a.v.A.P||(f=!0)}if(f){e||Of(a,d,g,"hit");break}}}a.xa--;return f}
function Rf(a,b){b=void 0===b?!0:b;for(var c="",d=0;16>d;d++){!d||d&3||(c+="\n");var e=a,f=ua(d,2);ef(e.Ia,d);f+="="+L(e,e.Na(e.Ia),36)+" ";c+=f}if(b){b="";for(d=0;d<nf.length;d++)(e=nf[d]||"")&&(e+="="+L(a,a.ub(d),d>=sf?1:d==pf?23:18)+" "),b+=e;c+="\n"+b}return c}m.Gb=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
function Ee(a,b,c,d,e){var f=[],g;for(g in e){var h=e[g];"number"==typeof h&&(e[g]=h={o:h});var k=h.o,l=h.a;if(void 0!==k){var p=f,k=[k>>>0,g],u=Fa(p,k,a.Gb);0>u&&p.splice(-(u+1),0,k)}l&&(h.a=l.replace(/''/g,'"'))}a.I.push({yd:b,B:c,Wb:d,aa:e,Bb:f})}function Sf(a,b,c){var d=[],e=df(b)>>>0;for(b=0;b<a.I.length;b++){var f=a.I[b],g=f.B>>>0,h=f.Wb;if(e>=g&&e<g+h){e=Fa(f.Bb,[e-g],a.Gb);0<=e?Tf(a,b,e,d):c&&(e=~e,Tf(a,b,e-1,d),Tf(a,b,e,d));break}}return d}
function Uf(a,b,c){var d=a.G,e=0,f=null,g=0;b.forEach(function(a,b){d.b[(b&d.j)>>>d.i].g(a,b&16383,b);null==f&&(f=b);b>g&&(g=b);e++});e?(b="start address ",null!=c?(H(a.v,c),b+=L(a,c)):b+="unspecified",a.u(e+" words loaded at "+L(a,f)+"-"+L(a,g)+", "+b),cd(a)):a.u("no data")}function Tf(a,b,c,d){var e={},f=a.I[b].Bb,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.I[b].aa[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}
function Vf(a,b){var c=b[0].substr(1),d=b[1]&&"0"<=b[1][0]&&"9">=b[1][0]?b[1]:void 0,e=d?b[2]:b[1],f=jf(a,d,a.ha);if(!e)return a.u("begin assemble at "+L(a,f.B,18)),a.V=!0,K(a.H),!0;var g=e.match(/^(['"]?)(.*\.klm|.*\.mac|.*\.html|.*\.txt)\1$/i);if(g){f=jf(a,d);if(a.wa)a.u("assembly already in progress");else var h=g[2],k=f.B,l=a.wa=new vg(h,k,c,a,function(b,c){if(!b)try{var d=l.H;null==d&&(d=k);Uf(a,l.S,d)}catch(J){"number"==typeof J?b=J||-1:(a.u(J.message),b=-1)}b&&a.u("error ("+b+") processing "+
(c||h));a.wa=null;b||ed(a)});return!1}b.shift();b.shift();b.shift();b=Mf(a,e,b.join(""),f.B||0);0<=b&&(a.yb(f,b),a.u(Ef(a,f)));return!0}function xg(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return Ze(a)||a.u("no variables"),!0;if(!c[2])return Ze(a,c[1]);if(!c[3])return delete a.b[c[1]],!0;b=We(a,c[3]);return void 0!==b?(a.b[c[1]]={value:b,Mb:void 0},!0):!1}a.u("invalid assignment:"+b);return!1}
function yg(a,b,c){var d=null;b=jf(a,b);var e=Sf(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.B-e[1])&&(g=" + "+n(f,4,!0)),f=e[0]+" ("+L(a,e[1],18)+")"+g,c&&a.u(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.B)&&(g=" - "+n(f,4,!0)),f=e[4]+" ("+L(a,e[5],18)+")"+g,c&&a.u(f),d||(d=f))}else c&&a.u("no symbols");return d}
function Bf(a,b){var c;if(b&&"?"==b[1])a.u("register commands:"),a.u("\tr\tdump registers"),a.u("\trm\tdump misc registers"),a.u("\trx [#]\tset flag or register x to [#]");else{var d=a.v,e=void 0;null==c&&(c=!0);if(b&&1<b.length){var f=b[1];if("m"==f)e=!0;else{var g=f.indexOf("=");if(0<g)b=f.substr(g+1),f=f.substr(0,g);else if(2<b.length)b=b[2];else{a.u("missing value for "+b[1]);return}g=We(a,b);if(void 0===g)return;b=a.tb(f);if(0>b){a.u("unknown register: "+f);return}var f=0,h=a.v;switch(b){case of:H(h,
g);ef(a.M,h.i);break;case rf:rd(h,g);break;case sf:f=131072;break;case tf:f=65536;break;case uf:f=32768;break;case vf:f=32;break;case wf:f=262144}f&&(h.j=g?h.j|f:h.j&~f);K(a.H);a.u("updated registers:")}}a.u(Rf(a,e));c&&(ef(a.M,0<=d.O?d.O:d.I&4194304?d.oa:d.i),Cf(a,L(a,a.M.B,18)))}}function zg(a,b){b=Ca(b);var c=b.match(/^(['"])(.*?)\1$/);c?1<c[2].length?a.u(c[2]):Xe(a,null,c[2].charCodeAt(0)):We(a,b,!1)}
function Ag(a,b,c){if("?"==c)a.u("trace commands:"),a.u("\tt [#]\ttrace # instructions"),a.u("\ttr [#]\ttrace # instructions with register updates"),a.u("\ttc [#]\ttrace # cycles"),a.u("note: bn [#] breaks after # instructions without updates");else{var d="t"!=b;c=Re(a,c,null,!0)||1;var e=0;"tc"==b&&(e=c,c=1);a.Da=b;Ua(c,function(){return Ob(a,!0)&&tc(a,e,d,!1)},function(){a.ma&&a.ma.stop();K(a.H,-1);Ob(a,!1)})}}
function Cf(a,b,c,d){b=jf(a,b,a.M);void 0===d&&(d=1);var e=256;if(void 0!==c)if("l"==c.charAt(0))c=Re(a,c.substr(1)),null!=c&&(d=c);else{d=jf(a,c);if(d.B<b.B)return;e=d.B-b.B;if(256<e){a.u("range too large");return}d=-1}for(c=0;0<e&&d--;){var f=Db(a,!1)||a.O?a.F:null,g=null!=f?"cycles":null,h=Sf(a,b),k=b.B;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var l=h[0]+":";h[2]&&(l+=" "+h[2]);a.u(l)}h[3]&&(g=h[3],f=null);h=a.ha;l=b;h.B=l.B;h.eb=l.eb;h.qa=l.qa;h.U=l.U;a.u(Ef(a,b,g,f));e-=b.B-k;c++}}
function Qf(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.u(Af+b):(a.V&&(a.u("ended assemble at "+L(a,a.ha.B,18)),a.V=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.Z=null;if(Ab(a)&&0<b.length){a.V&&(b="a "+L(a,a.ha.B,18)+" "+b);var f=!1,g=b.replace(/ +/g," ").split(" ");g[0]=g[0].toLowerCase();if(g&&g.length)for(var h=g[0],k=h.charAt(0),l=1;l<h.length;l++){var p=h.charAt(l);if("?"==k||"r"==k||"a">p||"z"<p){g[0]=h.substr(l);g.unshift(h.substr(0,l));break}}switch(g[0].charAt(0)){case "a":d=
Vf(a,g);break;case "b":var u=g[0],E=g[1],J=b;if("?"==E)a.u("breakpoint commands:"),a.u("\tbp #\tset exec breakpoint"),a.u("\tbr #\tset read breakpoint"),a.u("\tbw #\tset write breakpoint"),a.u("\tbc #\tclear breakpoint (* to clear all)"),a.u("\tbl\tlist all breakpoints"),a.u("\tbn [#]\tbreak after # instruction(s)");else{var I=u.charAt(1);if("l"==I){var hb;hb=0+Pf(a,a.i);hb+=Pf(a,a.N);(hb+=Pf(a,a.K))||a.u("no breakpoints")}else if("n"==I){var Cb=+E||0;E&&(a.pa=Cb);a.u("break after "+Cb+" instruction(s)")}else if(void 0===
E)a.u("missing breakpoint address");else{var A="*"==E?Y():jf(a,E,a.M);"c"==I?null==A.B?(af(a),a.u("all breakpoints cleared")):Nf(a,a.i,A)||Nf(a,a.N,A)||Nf(a,a.K,A)||a.u("breakpoint missing: "+L(a,A.B,18)):null!=A.B&&(lf(a,A,J),"p"==I?a.Ra(a.i,A):"r"==I?a.Ra(a.N,A):"w"==I?a.Ra(a.K,A):a.u("unknown breakpoint command: "+I))}}break;case "c":a.za&&(a.za.value="");break;case "d":a:{var ib,jb=g[0],pa=g[1],Da=g[2],Qh=g[3];if("?"==pa){var kb="";for(ib in bc)a.va[ib]&&(kb&&(kb+=","),kb+=ib);kb+=",state,symbols";
a.u("dump memory commands:");a.u("\tdw [a] [n] dump n words at address a");a.u("\tds [a] [n] dump n words at address a as JSON");a.u("\tdh [p] [n] dump n instructions from history position p");kb.length&&a.u("dump extension commands:\n\t"+kb)}else if("state"==pa){var Od=Bg(a.H,!0);"console"==Da?console.log(Od):(a.za&&(a.za.value=""),Od&&a.u(Od))}else if("symbols"==pa)for(var Pd=0;Pd<a.I.length;Pd++){var Qd=a.I[Pd],lb;for(lb in Qd.aa)if("."!=lb.charAt(0)){var Wf=Qd.aa[lb].o;if(void 0!==Wf){var Xf=
Qd.aa[lb].l;Xf&&(lb=Xf);a.u(L(a,Wf,18)+" "+lb)}}}else{if("d"==jb){for(ib in bc)if(g[1]==ib){var Yf=a.va[ib];Yf?(g.shift(),g.shift(),Yf(g)):a.u("no dump registered for "+pa);break a}pa||(jb=a.Oa||"dw")}else a.Oa=jb;if("dh"==jb){var Zf=pa,$f=Da,ag="",bg=0,ka=a.X,qa=a.j;if(qa.length){var fa=+Zf||a.Ca,Eb=+$f||10;isNaN(fa)?fa=Eb:ag="more ";fa>qa.length&&(a.u("note: only "+qa.length+" available"),fa=qa.length);ka-=fa;0>ka&&(null==qa[qa.length-1].B?(fa=ka+fa,ka=0):ka+=qa.length);var Rd=[];"call"==$f&&(Eb=
1E5,Rd=["CALL"]);for(void 0!==Zf&&a.u(fa+" instructions earlier:");0<Eb&&ka!=a.X;){var cg=qa[ka++];if(null==cg.B)break;var Fb=Y(cg.B),Rh=fa--,dg=Ef(a,Fb,"history",Rh);(!Rd.length||0<=dg.indexOf(Rd[0]))&&a.u(dg);Fb.rb&&(ka+=Fb.rb,Eb-=Fb.rb,fa-=Fb.rb);ka>=qa.length&&(ka=0);a.Ca=fa;bg++;Eb--}}bg||(a.u("no "+ag+"history available"),a.Ca=void 0)}else{var Na=0,eg="ds"==jb,Gb=jf(a,pa,a.oa);Da&&("l"==Da.charAt(0)?(Da=Da.substr(1)||Qh,Na=Re(a,Da)):Na=jf(a,Da).B-Gb.B,0>Na&&(Na=0),65536<Na&&(Na=65536));var Sh=
a.U;Gb.U&&(a.U=Gb.U);for(var fg="db"==jb?1:2,Sd=Na||32,Td=1==fg?1:4,Th=(Sd+Td-1)/Td|0||1,Oa="";Th--&&0<Sd;){for(var ra="",Ud="",pa=L(a,Gb.B,18),gg=Td;0<gg--&&0<Sd--;){var Vd=a.Na(Gb,1);eg?(ra&&(ra+=","),ra+=Vd):(ra+=mf(a,Vd),ra+=" ");for(var Kc=29,Uh=0;1==fg&&0<=Kc;Uh++)var Hb=Vd/Math.pow(2,Kc)%Math.pow(2,7),ra=ra+(L(a,Hb,7)+" "),Hb=Hb+0,Ud=Ud+(32>Hb?".":String.fromCharCode(Hb)),Kc=Kc-7}Oa&&(Oa+="\n");Oa=eg?Oa+(ra+","):Oa+(pa+": "+ra+(0>gg?" "+Ud:""))}Oa&&a.u(Oa);a.U=Sh}}}break;case "e":if("else"==
g[0])break;var hg,ig,jg=g[0],Wd=g[1];"e"==jg||"ew"==jg?(hg=a.Na,ig=a.yb):Wd=null;if(null==Wd)a.u("edit memory commands:"),a.u("\tew [a] [...] edit words at address a");else for(var Xd=jf(a,Wd,a.oa),Yd=2;Yd<g.length;Yd++){var Ib=We(a,g[Yd]);if(void 0===Ib)break;Ib=kf(Ib);a.u("changing "+L(a,Xd.B,18)+" from "+mf(a,hg.call(a,Xd))+" to "+mf(a,Ib));ig.call(a,Xd,Ib,1)}break;case "g":var kg=g[1],Vh=b;if(void 0!==kg){var lg=jf(a,kg);lf(a,lg,Vh);a.Ra(a.i,lg,!0)}yf(a,!0,c);break;case "h":a.A.P?(c||a.u("halting"),
a.Y()):Db(a,!0)||c||a.u("already halted");break;case "i":if("if"==g[0]){var Zd;var Jb=b.substr(2),Jb=Ca(Jb);We(a,Jb)?(c||a.u("true: "+Jb),Zd=!0):(c||a.u("false: "+Jb),Zd=!1);Zd||(d=!1);break}f=!0;break;case "k":var Wh=g[0];if("?"==g[1])a.u("stack trace commands:"),a.u("\tk\tshow frame addresses"),a.u("\tks\tshow symbol information");else{var $d=0,ae=Y(),Kb=Y();for(a.u("stack trace for "+L(a,Kb.B,18));10>$d;){for(var Pa=null,Xh=256;65536>Kb.B>>>0;){ae.B=a.Na(Kb,2);if(null==Kb.B||!Xh--)break;if(!(ae.B&
1)){for(var Yh=a,Lc=ae,mg=null,Lb=Lc.B,ng=Lb,be=1;6>=be&&Lb;be++){if(2<be){Lc.B=Lb;var Mc=Ef(Yh,Lc);if(0<=Mc.indexOf("JSR")){var og=Mc.indexOf(" ");if(Lb+(Mc.indexOf(" ",og+1)-og-1)/2==ng){mg=Mc;break}}}Lb-=2}Lc.B=ng;if(Pa=mg)break}}if(!Pa||null==Pa)break;var pg=null;if("ks"==Wh){var qg=Pa.match(/[0-9A-F]+$/);qg&&(pg=yg(a,qg[0]))}Pa=Ba(Pa,50)+" ;"+(pg||"stack="+L(a,Kb.B,18));a.u(Pa);$d++}$d||a.u("no return addresses found")}break;case "l":if("ln"==g[0]){yg(a,g[1],!0);break}f=!0;break;case "m":a:{var sa,
ta=null,N=g[1];"?"==N&&(N=void 0);if(void 0!==N){var Ea=0;if("all"==N)Ea=1879046143,N=null;else if("on"==N)ta=!0,N=null;else if("off"==N)ta=!1,N=null;else{"keys"==N&&(N="key");"kbd"==N&&(N="keyboard");for(sa in bc)if(N==sa){Ea=bc[sa];ta=!!(a.ca&Ea);break}if(!Ea){a.u("unknown message category: "+N);break a}}if(Ea)if("on"==g[2])a.ca|=Ea,ta=!0;else if("off"==g[2]&&(a.ca&=~Ea,ta=!1,1073741824==Ea)){for(var rg=1E3<=a.R.length?a.R.length-1E3:0;rg<a.R.length;)a.u(a.R[rg++]);a.R=[]}}var Zh=0,Mb="";for(sa in bc)if(!N||
N==sa){var $h=!!(a.ca&bc[sa]);if(null===ta||ta==$h)Mb&&(Mb+=","),++Zh%10||(Mb+="\n\t"),"key"==sa&&(sa="keys"),Mb+=sa}void 0===N&&a.u("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.u((null!==ta?ta?"messages on: ":"messages off: ":"message categories:\n\t")+(Mb||"none"));bf(a)}break;case "p":if("print"==g[0]){zg(a,b.substr(5));break}var sg=g[0],tg="p"==sg?0:"pr"==sg?1:-1;if("?"==g[1]||0>tg)a.u("step commands:"),a.u("\tp\tstep over instruction"),a.u("\tpr\tstep over instruction with register update");
else if(a.O)a.u("step in progress");else{var ug=Y(a.v.i);a.Na(ug);a.O?(a.Ra(a.i,ug,!0),yf(a)||(a.H&&jd(a.H),a.O=0)):Ag(a,tg?"tr":"t")}break;case "r":if("reset"==b){a.H&&a.H.reset();break}Bf(a,g);break;case "s":a:switch(g[1]){case "base":if(g[2]){var mb=+g[2];if(2==mb||8==mb||10==mb||16==mb)a.U=mb;else{a.u("invalid base: "+mb);break}}a.u("default base: "+a.U);break;case "cs":var Nb;void 0!==g[3]&&(Nb=+g[3]);switch(g[2]){case "int":a.v.pa=Nb;break;case "start":a.v.Ia=Nb;break;case "stop":a.v.ua=Nb;
break;default:a.u("unknown cs option");break a}void 0!==Nb&&bd(a.v);a.u("checksums "+(a.v.A.Ua?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(gd(a.v,+g[2])||a.u("warning: using 1x multiplier, previous target not reached"));a.u("target speed: "+(a.v.ga.toFixed(2)+"Mhz")+" ("+a.v.ha+"x)");break;default:if(g[1]){a.u("unknown option: "+g[1]);break}case "?":a.u("debugger options:"),a.u("\tbase #\t\tset default base to #"),a.u("\tcs int #\tset checksum cycle interval to #"),a.u("\tcs start #\tset checksum cycle start count to #"),
a.u("\tcs stop #\tset checksum cycle stop count to #"),a.u("\tsp #\t\tset speed multiplier to #")}break;case "t":Ag(a,g[0],g[1]);break;case "u":Cf(a,g[1],g[2],8);break;case "v":if("var"==g[0]){xg(a,b.substr(3))||(d=!1);break}if("ver"==g[0]){a.u((Rb||"PDP10")+" version 1.34.3 ("+a.v.mb+",RELEASE)");a.u(window?window.navigator.userAgent:"");break}f=!0;break;case "?":if(g[1]){zg(a,b.substr(1));break}var ce="commands:",de;for(de in Cg)ce+="\n"+Ba(de,9)+Cg[de];td(a)||(ce+="\nnote: history disabled if no exec breakpoints");
a.u(ce);break;default:f=!0}f&&(a.u("unknown command: "+b),d=!1)}}catch(wg){a.u("Debugger "+(wg.stack||wg.message)),d=!1}return d}function ed(a,b,c){null!=b&&(a.Ha=Le(a,b,c));for(;b=a.Ha.shift();)if(!Qf(a,b))return!1;return!0}
var Cg={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory","g [#]":"go [to #]",h:"halt","if":"eval expression","int [#]":"request interrupt",k:"stack trace",ln:"list nearest symbol(s)",m:"messages",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",s:"set options","t [#]":"trace","u [#]":"unassemble","var":"assign variable",ver:"print version"},Jf=20,Kf=".WORD HLL HLLZ HLLO HLLE HRL HRLZ HRLO HRLE HRR HRRZ HRRO HRRE HLR HLRZ HLRO HLRE MOVE MOVS MOVN MOVM EXCH BLT PUSH POP LDB DPB IBP ILDB IDPB SETZ SETO SETA SETCA SETM SETCM AND ANDCA ANDCM ANDCB IOR ORCA ORCM ORCB XOR EQV LSH LSHC ROT ROTC ADD SUB MUL IMUL DIV IDIV ASH ASHC FSC FADR FSBR FMPR FDVR DFN UFA FAD FSB FMP FDV AOBJP AOBJN CAI CAM JUMP SKIP AOJ AOS SOJ SOS TR TL TD TS XCT JFFO JFCL JSR JSP JRST JSA JRA PUSHJ POPJ BLKI DATAI BLKO DATAO CONO CONI CONSZ CONSO UUO JOV JCRY0 JCRY1 JCRY JFOV HALT JRSTF JEN".split(" "),
of=0,pf=1,qf=2,rf=3,sf=4,tf=5,uf=6,vf=7,wf=8,nf="PC RA EA PS OV C0 C1 ND PD".split(" "),Dg={},Ff=(Dg[28672]={0:101},Dg[32704]={5632:64,5696:63,5760:58,5824:27,5888:28,5952:25,6016:29,6080:26,10240:56,10304:48,10368:46,10432:84,10496:57,10560:49,10624:47,10752:21,10816:22,10880:69,10944:70,11008:88,11072:85,11136:83,11264:91,11328:23,11392:24,11456:92,11520:86,11584:87,11648:89,11712:90},Dg[32512]={6144:65,6400:59,6656:66,6912:60,7168:67,7424:61,7680:68,7936:62,8192:17,8448:18,8704:19,8960:Jf,9216:53,
9472:52,9728:55,9984:54,11776:50,12032:51,16384:30,16640:36,16896:37,17152:34,17408:38,17664:32,17920:44,18176:40,18432:39,18688:45,18944:33,19200:41,19456:35,19712:42,19968:43,20224:31,20480:1,20736:5,20992:2,21248:6,21504:3,21760:7,22016:4,22272:8,22528:9,22784:13,23040:10,23296:14,23552:11,23808:15,24064:12,24320:16},Dg[32256]={12288:71,12800:72,13312:73,13824:74,14336:75,14848:76,15360:77,15872:78},Dg[29248]={24576:79,24640:80,25088:81,25152:82},Dg[28700]={28672:93,28676:94,28680:95,28684:96,
28688:97,28692:98,28696:99,28700:100},Dg),Gf=["","I","M","S"],Hf=" L E LE A GE N G".split(" "),If="N NE NA NN Z ZE ZA ZN C CE CA CN O OE OA ON".split(" "),Lf=[{0:85,8:102,4:103,2:104,6:105,1:106},{0:88,4:107,2:108,10:109}],xf=1E3,Af=">> ";Xa(function(){for(var a=w(document,v,"debugger"),b=0;b<a.length;b++){var c=a[b],d=t(c),d=new $e(d);sb(d,c)}});
function vg(a,b,c,d,e){this.la=b;this.V=c||"";this.b=d;this.done=e;this.H=null;this.v={};this.F={};this.K=[];this.I=[];this.S=[];this.ea=[];this.X=[];this.ga=this.Z=this.ia=0;this.W=this.la||0;this.Ea=-1;this.w=[];this.R=null;this.i=0;this.O=null;this.J=this.M="";this.ha=/^[ \t]*([A-Z$%.?][0-9A-Z$%.]*:|)[ \t]*([A-Z$%.][0-9A-Z$%.]*|)([ \t]*)([^;]+|)(;?[\s\S]*)/i;this.D=this.j=null;this.C="";this.G=[];this.N=0;this.L=a.split(";");this.T=[];Eg(this)}
function Eg(a){if(a.N==a.L.length)a.done(Fg(a));else{var b=a.L[a.N];a.u("loading "+wa(b));0>b.indexOf(":")&&0<=".MAC.KLM".indexOf(b.slice(-4).toUpperCase())&&(b+=".txt");Ha(b,null,!0,function(b,d,e){if(e)a.done(e,b);else{e=d;if(ya(b,".html")){e="";var c;for(b=/<pre>([\s\S]*?)<\/pre>/gi;c=b.exec(d);)c=c[1],0<=c.indexOf("&")&&(c=c.replace(/&lt;/gi,"<").replace(/&gt;/gi,">").replace(/&amp;/gi,"&")),e+=c;(c=e.match(/&[a-z]+;/i))&&Gg(a,"unrecognized HTML entity '"+c[0]+"'")}d=e.split(/(\r?\n)/);if(d.length&
1){if(c=d.pop())Gg(a,"unexpected line '"+c+"'"),d.push(c),d.push("")}else Gg(a,"unexpected number of lines ("+d.length+")");a.G=a.G.concat(d);a.T[a.N]=d.length>>1;a.N++;setTimeout(function(){Eg(a)},0)}})}}
function Fg(a){if(0<=a.V.indexOf("p"))return a.u(a.G.join("")),0;var b=Ye(a.b);Hg(a,"APR",0);Hg(a,"PI",4);try{for(var c=0;c<a.G.length;c+=2){a.ia++;0<=a.V.indexOf("l")&&a.u(Ig(a)+": "+a.G[c]);if(!Jg(a,a.G[c]+"\r\n"))break;if(null!==a.H)break}a.i&&a.error("open block",a.v[a.O].ia);a.w.length&&a.error("open scope",a.w[0].ia);Kg(a);Lg(a);a.ea.forEach(function(b,c){b=Mg(a,b,void 0,c,a.X[c]);void 0!==b&&(b+=a.S[c],a.S[c]=Ng(a,b,c))})}catch(d){a.u(d.message),a.Z=-1}0>a.V.indexOf("d")&&(a.b.b=b);return a.Z}
function Jg(a,b,c,d,e){var f,g;null!=a.D&&(b=Og(a,b));for(var h=!0,k="";h;){g=b.match(a.ha);if(!g||g[5]&&";"!=g[5].slice(0,1))return a.error("failed to parse line '"+b+"'"),!1;h=!1;k=g[2].toUpperCase();if(k==Pg||k==Qg)c=null;if(c){for(f=0;f<c.length;f++)for(var l=c[f],p=d[f]||e[f]||"",u=0,E=b.length-g[5].length;u<E;){var J=b.indexOf(l,u);if(0>J)break;var u=J+1,I=J+l.length,hb="",Cb="";J&&(hb=b[J-1]).match(/[0-9A-Z$%.]/i)||!(I>=b.length)&&(Cb=b[I]).match(/[0-9A-Z$%.]/i)||("'"==hb&&J--,"'"==Cb&&I++,
b=b.substr(0,J)+p+b.substr(I),u=J+p.length,h=!0)}c=null}if(a.i&&(1==a.i&&(f=b.indexOf(a.J),0<=f?(a.i++,b=b.substr(f+1)):a.error("expected "+a.R+" definition in '"+b+"'")),1<a.i&&(b=Rg(a,b),h=!0),a.i))return!0}d=g[1];b=g[3];c=g[4].trim();g=g[4]+g[5];d&&(d=d.slice(0,-1),Hg(a,d,a.W,Sg));var A;k&&(A=c.match(/^([=:]+)(.*)/))&&(e=0,d=k,k=A[1],c=A[2],"=="==k?e|=Tg:"=:"==k&&(e|=Ug),Hg(a,d,c,e),k=c="");if(!k&&!c)return!0;a.R=k;if(A=Vg(a,c))c=c.replace(A,Wg(a,Xg,Vg(a,g))),b||(b="\t");for(;A=Yg(a,c);)c=c.replace(A,
A.slice(0,-1));if(!Zg(a,k,c))switch(k){case $g:case ah:case bh:Og(a,g);break;case ch:k=c;A=Mg(a,k);void 0!==A&&0<=A&&262143>=A?a.W+=A:a.error("unrecognized BLOCK expression '"+k+"'");break;case dh:k=c;b=g=0;for(c=36;A=eh(a,k);){k=k.substr(A.length).trim();d=A;if(e=A.match(/^\((.*)\)\s*(.*)$/))e[1]&&(g=Mg(a,"^D"+e[1])),d=e[2];if(g){d=d?Mg(a,d):0;if(void 0===d||0>g||36<g){a.error("unexpected BYTE operand: "+A);break}d=X(a.b,d,g,!0);c<g&&(fh(a,b),b=0,c=36);b+=d*Math.pow(2,c-g);c-=g}else fh(a,0)}36>c&&
fh(a,b);break;case gh:(k=c)?(a.H=Mg(a,k),void 0===a.H&&a.error("unrecognized END expression '"+k+"'")):a.H=a.la;break;case hh:ih(a,c);break;case jh:Kg(a);break;case kh:a.W=Mg(a,c)||0;break;case lh:Lg(a);break;case mh:ih(a,c.replace(",",",,"));break;case nh:case oh:case ph:case qh:case rh:case sh:case th:case uh:case vh:case wh:case xh:case yh:case Pg:case Qg:case zh:case Ah:Wg(a,k,g);break;case Bh:k=Ch(a,c);for(A=0;A<k.length;A++)delete a.b.b[k[A]],delete a.F[k[A]];break;case Dh:case Eh:case Fh:case Gh:case Hh:case Ih:case Jh:break;
default:A=[],k=(k+b+c).trim(),g=Mg(a,k,A),void 0!==g?fh(a,g,A[0]):a.error("unrecognized word expression '"+k+"'")}return!0}
function Zg(a,b,c){var d=a.v[b];if(!d)return!1;if(null!=c){if(d.Fa==Kh){var e=a.W;Z(a,d.ka);if(e<a.W){if(!c)return!0;Lh(a);Z(a,c);var d=a.S[0],f=a.ea[0];Mh(a);if(void 0!==d)return a.S[e]+=d&130023423,a.S[e]|=d&4194304,f&&(a.ea[e]=a.ea[e]?a.ea[e]+("+"+f):f),!0}a.error("OPDEF '"+b+"' ("+c+") failed");return!1}b=a.j;a.j=d;d.Qa=Ch(a,c,!0);Z(a,d.ka,d.Ta,d.Qa,d.Ab);a.j=b;return!0}if("?"!=b[0])return!1;switch(b.substr(1)){case rh:case qh:case yh:d.Fa||Z(a,d.ka);break;case sh:0<d.Fa&&Z(a,d.ka);break;case th:0<=
d.Fa&&Z(a,d.ka);break;case vh:0>d.Fa&&Z(a,d.ka);break;case wh:0>=d.Fa&&Z(a,d.ka);break;case oh:case xh:case ph:case uh:d.Fa&&Z(a,d.ka);break;case Pg:case Qg:for(b=0;b<d.Qa.length;b++)Z(a,d.ka,d.Ta,[d.Qa[b]],[]);break;case Ah:for(;0<d.Fa--;)Z(a,d.ka);break;default:c=d.ka,Lh(a,b),Z(a,c),Mh(a)}return!0}function Z(a,b,c,d,e){b=b.split(/\r?\n/);for(var f=0;f<b.length&&Jg(a,b[f]+"\r\n",c,d,e);f++);}
function Lh(a,b){a.w.push({name:b,S:a.S,ea:a.ea,W:a.W,Ea:a.Ea,ia:a.ia});a.S=[];a.ea=[];0>a.Ea&&(a.Ea=a.W);a.W=0}function Mh(a){if(a.w.length){var b=a.w[a.w.length-1].name;b&&a.K.push({name:b,S:a.S,ea:a.ea});b=a.w.pop();a.S=b.S;a.ea=b.ea;a.W=b.W;a.Ea=b.Ea;a.w.length||-1==a.Ea||a.error("scope restore error")}else a.error("scope nesting error")}
function eh(a,b){var c;c=void 0===c?",":c;for(var d=0,e=!1,f=null,g=0;d<b.length;){var h=b[d++];if('"'==h)e=!e;else if(!e){if(!g&&0<=c.indexOf(h)){d--;break}if("<"==h)g++;else if(">"==h&&0>--g){a.error("missing bracket(s) in '"+b+"'");break}}}g?0<g&&a.error("extra bracket(s) in '"+b+"'"):f=b.substr(0,d);return f}
function Mg(a,b,c,d,e){var f=-1;void 0===d&&(d=0<=a.Ea?a.Ea:a.W);var g=b.replace(/SIXBIT\s*(\S)(.*?)\1/g,"'$2'").replace(/ASCII\s*(\S)(.*?)\1/g,'"$2"');if(c){var h="",k=g;if(f=g.match(/^([^\s]+)\s*(.*?)\s*$/))h=f[1],k=f[2];f=Mf(a.b,h,k,d,c)}0>f&&(g=g.replace(/\.([^0-9]|$)/g,L(a.b,d,-1)+"$1"),f=We(a.b,g,c),void 0===f&&a.error("unable to parse expression '"+b+"'",e));return f}
function Vg(a,b){for(var c=0,d="",e=0,f=-1,g=b.length;e<b.length;){var h=b[e];if(";"==h)break;"["==h&&(c++||(f=e));e++;if("]"==h&&0>=--c){g=e;break}}0>c&&a.error("missing bracket(s) in '"+b+"'");0<=f&&(d=b.substr(f,g-f));return d}function Ig(a,b){b=void 0===b?a.ia:b;for(var c=0;b>a.T[c];)if(b-=a.T[c],c<a.L.length-1)c++;else break;return wa(a.L[c]+" line "+b)}
function Yg(a,b){var c=null;if(b=b.match(/([A-Z$%.][0-9A-Z$%.]*)#/i)){c=b[0];b=b[1];var d="?"+b;if(!a.v[d]){var e,f,g;e=f=g=[];a.v[d]={name:d,Fa:Nh,Ta:e,Ab:f,Qa:g,ka:b+": 0",ia:a.ia};a.I.push(d)}}return c}
function Ch(a,b,c){var d=[];for(c&&(b=b.replace(/^\(?(.*?)\)?$/,"$1"));b;){b=b.trim();c=eh(a,b);if(!c)break;var e=c;if("\\"==c[0]){var f=1,g=0;"'"==c[1]?(f++,g=6):'"'==c[1]&&(f++,g=7);var e=a,f=c.substr(f),g=void 0===g?0:g,h=Mg(e,f);if(void 0!==h){var k=5;switch(g){case 0:f=L(e.b,h,-1);break;case 6:k++;case 7:for(;h&&k--;)h=Math.trunc(h/Math.pow(2,g))}}e=f}d.push(e);b=b.substr(c.length+1)}return d}
function Og(a,b){var c=b;null==a.D&&(a.D=a.C="",b&&(a.D=b[0],c=b=b.substr(1)));if(a.D){var d=b.indexOf(a.D);0>d?c="":(c=b.substr(d+1),b=b.substr(0,d),a.D=null);a.C+=b}if(null==a.D){var d=b=0,e,f,g=a.C.length;a.R==ah&&g++;for(var h=0;h<g;h++){b||(d=0,f=29,e=7,a.R==bh&&(e--,f++));var k=a.C.charCodeAt(h)&127;6==e&&(97<=k&&122>=k&&(k-=32),k=k+32&63);d+=k*Math.pow(2,f);f-=e;b++;0>f&&(fh(a,d),b=0)}b&&fh(a,d)}return c}
function Wg(a,b,c){var d,e,f,g,h,k;a.J="<";a.M=">";g=h=k=[];if(b==nh){e=c.match(/([A-Z$%.][0-9A-Z$%.]*)\s*(\([^)]*\)|)\s*,?\s*(<|)([\s\S]*)/i);if(!e)return a.error("unrecognized "+b+" in '"+c+"'"),c;f=e[1];if(e[2]&&","!=e[2]){h=g=Ch(a,e[2],!0);b=[];for(c=0;c<h.length;c++)if(d=h[c].indexOf("<"),0<=d){var l=h[c].lastIndexOf(">");0>l&&(l=h[c].length);b[c]=h[c].substr(d,l-d);h[c]=h[c].substr(0,d)}h=b}d=Oh;b=3}else if(b==zh){a.J="[";a.M="]";e=c.match(/([A-Z$%.][0-9A-Z$%.]*)\s*(\[)([\s\S]*)/i);if(!e)return a.error("unrecognized "+
b+" in '"+c+"'"),c;f=e[1];d=Kh;b=2}else if(b==Xg)a.J="[",a.M="]",f="?"+va(++a.ga,5),a.v[f]&&a.error("literal symbol '"+f+"' redefined"),e=[c[0],c.substr(1)],d=Ph,b=0;else if(b==Pg||b==Qg){a.j||a.error(b+" outside of macro");e=c.match(/([A-Z$%.][0-9A-Z$%.]*)\s*,\s*(<|)([\s\S]*)/i);if(!e)return a.error("unrecognized "+b+" operands '"+c+"'"),c;for(d=0;d<a.j.Ta.length&&e[1]!=a.j.Ta[d];d++);if(d==a.j.Ta.length)return a.error("invalid "+b+" parameter '"+e[1]+"'"),c;f="?"+b;g=[e[1]];b==Qg?k=a.j.Qa[d].split(""):
k=Ch(a,a.j.Qa[d]);d=k.length;b=2}else{if(b==oh)d=1,","==c[0]&&(c=c.substr(1).trim());else{e=eh(a,c);if(!e)return a.error("missing "+b+" expression '"+c+"'"),c;c=c.substr(e.length+1);e=e.trim();if(b==qh||b==uh){f=eh(a,c);if(!f)return a.error("missing second "+b+" expression '"+c+"'"),c;c=c.substr(f.length+1)}d=b==ph||b==yh?a.v[e]||a.F[e]||void 0!==a.b.b[e]?1:0:Mg(a,e)||0}e=c.match(/\s*(<|)([\s\S]*)/i);f="?"+b;b=1}f=f.toUpperCase();a.i=1;a.O=f;a.v[f]={name:f,Fa:d,Ta:g,Ab:h,Qa:k,ka:"",ia:a.ia};e[b]&&
(a.i=2,Rg(a,e[b+1]));return f}function Rg(a,b){for(var c="",d=0;d<b.length;d++)if(b[d]==a.J)a.i++;else if(b[d]==a.M&&(a.i--,1==a.i)){a.i=0;c=b.substr(d+1);b=b.substr(0,d);break}d=a.O||"";a.v[d].ka+=b;a.i||(a.O=null,Zg(a,d));return c}
function Hg(a,b,c,d){d=void 0===d?0:d;b=b.toUpperCase().substr(0,6);if(d&Sg&&a.F[b])a.error("label '"+b+"' redefined");else{var e=void 0;if("string"==typeof c){var e=[],f=Mg(a,c,e);if(void 0===f){a.error("symbol error ("+c+")");return}c=f;e=e[0]}(f=a.F[b])?(f.value=c,f.Xb=d,f.ia=a.ia):a.F[b]={name:b,value:c,Xb:d,ia:a.ia};a.b.b[b]={value:c,Mb:e}}}function ih(a,b){var c=[],d=Mg(a,b,c);void 0!==d?fh(a,d,c[0]):a.error("unrecognized EXP expression '"+b+"'")}
function Kg(a){for(var b=a.W,c={},d=0;d<a.K.length;c={S:c.S,Sa:c.Sa,Aa:c.Aa},d++){c.Aa=a.K[d];c.S=[];c.Sa=0;c.Aa.S.forEach(function(a){return function(b,c){c===a.S.length&&a.S.push(b);a.Sa++}}(c));if(c.Sa==c.S.length)for(var e=b;e+c.Sa<=a.W;e++){for(var f=void 0,f=0;f<c.Sa&&c.S[f]===a.S[e+f]&&c.Aa.ea[f]==a.ea[e];f++);if(f==c.Sa){Hg(a,c.Aa.name,e,Sg);c.Aa=null;break}}if(c.Aa){var g=a;Hg(a,c.Aa.name,a.W,Sg);c.Aa.S.forEach(function(a){return function(b,c){fh(g,b,a.Aa.ea[c])}}(c))}}a.K=[]}
function Lg(a){for(var b=0;b<a.I.length;b++){var c=a.I[b],d=a.v[c];d?Z(a,d.ka):a.error("missing definition for variable '"+c+"'")}a.I=[]}function fh(a,b,c){a.S[a.W]=Ng(a,b);void 0!==c&&(a.ea[a.W]=c);a.X[a.W]=a.ia;a.W++}function Ng(a,b,c){c=void 0===c?a.W:c;var d=X(a.b,b||0,36,!0);(b<-B||b>=D)&&Gg(a,"truncated value "+ua(b)+" at location "+ua(c)+" to "+ua(d));return d}vg.prototype.error=function(a,b){throw Error("error in "+Ig(this,b)+": "+a);};
function Gg(a,b){a.u("warning in "+Ig(a,void 0)+": "+b)}vg.prototype.u=function(a){this.b?this.b.u(a):console.log(a)};
var Sg=1,Tg=2,Ug=4,$g="ASCII",ah="ASCIZ",ch="BLOCK",dh="BYTE",nh="DEFINE",gh="END",hh="EXP",oh="IF1",ph="IFDEF",qh="IFDIF",rh="IFE",sh="IFG",th="IFGE",uh="IFIDN",vh="IFL",wh="IFLE",xh="IFN",yh="IFNDEF",Pg="IRP",Qg="IRPC",Dh="LALL",jh="LIT",Xg="LITERAL",Eh="LIST",kh="LOC",Fh="NOSYM",zh="OPDEF",Gh="PAGE",Bh="PURGE",Ah="REPEAT",bh="SIXBIT",Hh="SUBTTL",Ih="TITLE",lh="VAR",mh="XWD",Jh="XLIST",Oh=-1,Kh=-2,Ph=-3,Nh=-4;
function ai(a,b,c){r.call(this,"Computer",a,33554432);this.A.ba=!1;this.R=null;bi(this,b);this.N=$c(this,"autoPower",a,6);this.w=0;this.X=+a.busWidth||+a.buswidth;this.L=this.F=this.M=null;this.K=this.V=!1;this.I=this.C=null;this.T=this.O=!1;this.Z=$c(this,"url")||"";(Math.random()+.1).toString(36);this.i=ci(this);if(this.v=rb("CPU",this.id)){this.D=rb("Debugger",this.id);this.G=new Ac({id:this.bb+".bus",busWidth:this.X},this.v,this.D);var d,e=pb(this.id);if((this.j=rb("Panel",this.id))&&this.j.za)for(b=
0;b<e.length;b++)d=e[b],d.ja=this.j.ja,d.u=this.j.u,d.za=this.j.za;this.u(Rb+" v1.34.3\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.Ma&&d.Ma(this,this.G,this.v,this.D);b=null;d=$c(this,"resume",a);void 0!==d&&(1<d.length?b=this.F=d:this.b=parseInt(d,10));var f;if(a=$c(this,"state")||(f=!0,a.state))this.M=b=a,f||(this.K=!0,this.b=di),this.b&&(this.I=new G(this,"1.34.3"),ei(this.I)?b=null:
delete this.I);!b&&this.b&&(b=fi(this))&&(this.K=!0);if(b){var g=this;Ha(b,null,!0,function(a,b,c){c?(g.F=null,g.K=!1,g.ja("Unable to load machine state from server (error "+c+(b?": "+Ca(b):"")+")")):(g.L=b,g.V=!0);Bb(g)})}else Bb(this);this.J.power||(this.N=!0);!c&&this.N&&gi(this,this.Wa)}else q("Unable to find CPU component")}ja(ai,r);function bi(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){q(d.message+" ("+c+")")}}a.R=b}
function $c(a,b,c,d){var e=b.toLowerCase(),e=Sa(b)||Sa(e);void 0===e&&a.R&&(e=a.R[b]);void 0===e&&c&&(e=c[b]);void 0===e&&"object"==typeof resources&&resources[b]&&(e=b);void 0===e&&(e=void 0);if("string"==typeof e&&d)switch(d){case 4:e=+e;isNaN(e)&&(e=0);break;case 6:e="true"==e}return e}function gi(a,b,c){for(var d=pb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ab(f)){Ab(f,function(){gi(a,b,c)});return}}b.call(a,c)}
function hi(a,b){var c=new G(a,"1.34.3",ii);if(ei(c)&&ji(c)){var d=c.get(ki),e=b?b.get(ki):"unknown";d!=e&&(a.ja("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}m=ai.prototype;
m.Wa=function(a){void 0===a&&(a=this.b||(this.L?li:di));if(!this.w){this.w++;var b=!1,c=!1;this.O=!1;var d=this.I||new G(this,"1.34.3");if(a==mi)b=!0;else if(a>di){if(ei(d,this.L)){this.C=new G(this,"1.34.3",ni);ei(this.C)&&(oi(this,d),a=pi,qi(this.C));this.C.set(ki,Ga());ri(this.C);var e=this.b&&!this.K;if(a==li||ob("Click OK to restore the previous "+Rb+" machine state, or CANCEL to reset the machine.")){if(c=ji(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?ei(d,g):("error"==f&&"no machine state"!=
g?(this.ja("Error: "+g),"unable to verify user"==g&&(Qa(si,""),this.i=null)):this.u(f+": "+g),qi(d),ei(d)?(c=ji(d),e=!0):c=!1))}e&&hi(this,c?d:null)}else a==pi&&d.clear()}else hi(this);delete this.L;delete this.I}e=pb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.v&&(c=ti(this,g,d,b,c));b=[d,a,c];a!=mi?gi(this,this.Hb,b):this.Hb(b)}};
function ti(a,b,c,d,e){if(!b.A.ba){b.A.ba=!0;var f=null;try{if(e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,".")))),"string"===typeof f&&(f=null),!b.Ba(f,d)&&f&&(q("Unable to restore state for "+b.type),a.M&&!a.V?(c.clear(),a.b=di,window&&window.location.reload()):a.O=!0,b.Ba(null),e=!1),!d&&b.Db){var g=b.Db.split("|");for(a=0;a<g.length;a++)b.status(g[a])}}catch(h){q("Error restoring state for "+b.type+" ("+h.message+")")}}return e}
m.Hb=function(a){var b=a[0],c=0>a[1];a=a[2];this.T=!0;this.A.ba=!0;var d=this.J.power;d&&(d.textContent="Shutdown");this.v&&(ti(this,this.v,b,c,a),K(this,-2),this.v.fa());this.O&&(oi(this,b),b.clear());!c&&this.C&&(this.C.clear(),delete this.C);this.w=0};
function oi(a,b){if(ob("There may be a problem with your "+Rb+" machine.\n\nTo help us diagnose it, click OK to send this "+Rb+" machine state to http://www.pcjs.org.")){var c=a.Z;a=a.i||"";b=b.toString();var d={};d.app=Rb;d.ver="1.34.3";d.url=c;d.user=a;d.type="bug";d.data=b;Ha("http://www.pcjs.org/api/v1/report",d,!0)}}
function Bg(a,b,c){var d,e="none";if(a.w)return null;a.w--;var f=new G(a,"1.34.3"),g=new G(a,"1.34.3",ii),h=Ga();g.set(ki,h);f.set(ki,h);f.set(ui,"1.34.3");f.set(vi,window?window.location.href:null);f.set(wi,window?window.navigator.userAgent:"");a.v&&a.v.ra&&(c&&(b&&(a.v.A.fa=a.v.A.P),a.v.Y()),d=a.v.ra(b,c),"object"===typeof d&&f.set(a.v.id,d),c&&(a.v.A.ba=!1,!1===d&&(e=null)));for(var h=pb(a.id),k=0;k<h.length;k++){var l=h[k];l.A.ba&&(l.ra&&(d=l.ra(b,c),"object"===typeof d&&f.set(l.id,d)),c&&(l.A.ba=
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.i&&xi(a,a.i,f.toString()),ri(g)&&ri(f)||(e=null,d=h=!0)):a.b&&(d=!0,h=a.b==yi),d&&f.clear(h)):e=f.toString());c&&(a.A.ba=!1,b=a.J.power)&&(b.textContent="Power");a.w=0;return e}
m.reset=function(){this.A.reset=!0;this.G&&this.G.reset&&(Qb(this,"Resetting "+this.G.type),this.G.reset());this.v&&this.v.reset&&(Qb(this,"Resetting "+this.v.type),this.v.reset());for(var a=pb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.G&&c!==this.v&&c.reset&&(Qb(this,"Resetting "+c.type),c.reset())}this.A.reset=!1;K(this,-1)};m.start=function(a,b){for(var c=pb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}K(this,-1)};
m.stop=function(a,b){for(var c=pb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}K(this,-1)};
function K(a,b){if(a.v){var c=a.v,d=b||0,e=c.J.speed;e&&(0>=d||30<=(c.lb+=d))&&(e.textContent=c.A.P?c.ba.toFixed(2)+"Mhz":"Stopped",c.lb=0)}if(a.j&&(a=a.j,b=b||0,a.L)){c=a.v.A.P;d=!!(a.v.C&8);if(0>=b||60<=(a.K+=b)){e=a.v.i;if(a.J.PC){var f=a.D&&a.D.U||8,e=e||0,e=8==f?va(e,void 0):n(e,void 0);a.J.PC.textContent!=e&&(a.J.PC.textContent=e)}a.K=0}-1>b?a.i=a.v.i:0<b&&c&&!d&&(a.i=a.v.Da);kc(a,a.i);ec(a,a.w)}}
m.ta=function(a,b,c){var d=this;switch(b){case "power":return this.J[b]=c,c.onclick=function(){d.w||(d.A.aa?Ag(d,!1,!0):Wh(d,d.Xa))},!0;case "reset":return this.J[b]=c,c.onclick=function(){if(d.A.aa&&!d.w)if(d.b&&!d.F){var a=ob("Click OK to save changes to this "+Rb+" machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Ag(d,a,!0);!a&&d.M?window&&window.location.reload():d.Xa(Ih)}else d.reset(),d.v&&!d.D&&d.v.fa()},!0;case "save":if(za(Ka(),"pcjs.org"))c.parentNode.removeChild(c);
else return this.J[b]=c,c.onclick=function(){var a=Hh(d,!0);if(a){var b=!!(d.b&&!d.F||d.M),c=Ag(d,b);b?mi(d,a,c):d.ha("Resume disabled, machine state not saved")}},!0}return!1};
function Hh(a,b){var c=a.i;c||((c=Qa(hi),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=oi(a,c))||a.ha("The user ID is invalid.")):b&&a.ha("Browser local storage is not available"));return c}
function oi(a,b){a.i=null;b=Ia(Ka()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(Ra(hi,b.data),a.i=b.data)}catch(d){q(d.message+" ("+c+")")}return a.i}function Vh(a){var b=null;a.i&&(b=Ka()+"/api/v1/user?req=load&user="+a.i+"&state="+pi(a,"1.34.3"));return b}
function mi(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=pi(a,"1.34.3");d.data=c;b=Ia(Ka()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.ha("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.ha(c),Ra(hi,""),a.i=null)}}
function jd(a,b){if(a.Aa){var c=0,d=0;!b&&window&&(c=window.scrollX,d=window.scrollY);a.Aa.focus();!b&&window&&window.scrollTo(c,d)}}var ci="failsafe",Yh="validate",$h="timestamp",ji="version",ki="url",li="browser",hi="user",bi=-1,Ih=0,ai=1,ei=2,ni=3;Ya(function(){for(var a=w(document,v+"-machine"),b=0;b<a.length;b++)for(var c=a[b],d=t(c),c=w(c,v,"computer"),e=0;e<c.length;e++){var f=c[e],g=t(f),g=new Fh(g,d,!0);sb(g,f);g.N&&Wh(g,g.Xa)}});
Za.show.push(function(){for(var a=w(document,v,"computer"),b=0;b<a.length;b++){var c=t(a[b]);(c=rb("Computer",c.id))&&c.T&&!c.A.aa&&c.Xa(bi)}});Za.exit.push(function(){for(var a=w(document,v,"computer"),b=0;b<a.length;b++){var c=t(a[b]);(c=rb("Computer",c.id))&&c.A.aa&&Ag(c,!(!c.b||c.F),!0)}});function G(a,b,c){this.id=a.id;this.i="";this.b={};this.v=this.j=!1;this.key=pi(a,b,c);fi(this,a.Ub)}m=G.prototype;m.set=function(a,b){try{this.b[a]=b}catch(c){}};m.get=function(a){return this.b[a]||null};
m.data=function(){return this.b};function Uh(a,b){return b?(a.i=b,a.v=!0,a.j=!1,!0):a.v?!0:La()&&(b=Qa(a.key))?(a.i=b,a.v=!0):!1}function Zh(a){var b=!0;if(!a.j)try{a.b=JSON.parse(a.i),a.j=!0}catch(c){q(c.message||c),b=!1}return b}function gi(a){var b=!0;if(La()){var c=JSON.stringify(a.b);Ra(a.key,c)||(q("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}m.toString=function(){return this.b?JSON.stringify(this.b):this.i};
function fi(a,b){a.i="";a.b={};a.v=a.j=!1;b&&a.set("parms",b)}m.clear=function(a){fi(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,1);c=0}};function pi(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}var qi=0;
function ri(a,b,c,d,e,f,g){f("Loading "+a+"...");Ia(a,null,!0,function(h,k,l){l?(k||(k="unable to load "+a+" ("+l+")"),g(k,null)):si(k,a,b,c,d,e,f,g)})}
function si(a,b,c,d,e,f,g,h){function k(a,g){if(g)h(g,null);else{c&&(gb(c,b,a),(g=b)&&0>g.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(g=window.location.pathname+g),e?"}"==e.slice(-1)?(e=e.slice(0,-1),1<e.length&&(e+=",")):e='{state:"'+e+'",':e="{",e+='url:"'+g+'"}',"object"==typeof resources&&(g=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(e?" parms='"+e+"'":"")+(g?' url="'+g+'"':"")));f||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDPjs$2"),
a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1"+d+"$2"));g=null;if("<"==a.charAt(0))try{f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml")}catch(u){g=null,a=u.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);h(a,g)}}a?f?ti(a,g,k):k(a,null):h("no data"+(b?" for file: "+b:""),null)}
function ti(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");Ia(e,null,!0,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 k=h[0],l,p=/( [a-z]+=)(['"])(.*?)\2/g;l=p.exec(f);)k=0>k.indexOf(l[1])?k.replace(">",l[0]+">"):k.replace(new RegExp(l[1]+"(['\"])(.*?)\\1"),l[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);ti(a,b,c)}})}else c(a,null)}
function ui(a,b,c,d,e){function f(a){if(void 0===k){var b=h&&w(h,"machine-warning");k=b&&b[0]||h}k&&(k.innerHTML=Aa(a))}function g(a){f("Error: "+a);l&&(--qi||bb(!0));l=!1}var h,k,l=!0;qi++;mb[b]={};try{if(h=document.getElementById(b)){var p;if("object"==typeof resources&&(p=resources.css)){var u=document.head||document.getElementsByTagName("head")[0],A=document.createElement("style");A.type="text/css";A.styleSheet?A.styleSheet.cssText=p:A.appendChild(document.createTextNode(p));u.appendChild(A)}d||
(p=a,"pdp"==a.substr(0,3)&&(p="pdpjs"),d="/versions/"+p+"/1.34.3/components.xsl");p=function(e,k){k?ri(d,null,a,null,!1,f,function(a,e){e?(gb(b,d,a),f("Processing "+c+"..."),window.ActiveXObject||"ActiveXObject"in window?(e=k.transformNode(e))?(h.outerHTML=e,--qi||bb(!0)):g("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(a=new XSLTProcessor,a.importStylesheet(e),(e=a.transformToFragment(k,document))?h.parentNode?(h.parentNode.replaceChild(e,h),--qi||
bb(!0)):g("invalid machine element: "+b):g("transformToFragment failed")):g("unable to transform XML: unsupported browser")):g(a)}):g(e)};"<"!=c.charAt(0)?ri(c,b,a,e,!0,f,p):si(c,null,b,a,e,!1,f,p)}else g("missing machine element: "+b)}catch(J){g(J.message)}return l}window.embedPDP10=function(a,b,c,d){bb(!1);return ui("pdp10",a,b,c,d)};window.embedPDP11=function(a,b,c,d){bb(!1);return ui("pdp11",a,b,c,d)};window.findMachineComponent=function(a,b){return rb(b,a+".machine")};
window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!ub[a]){for(var c=!0,d=ub,e=a,f=b.length,g=[],h=[],k="",l=null,p=0;p<f;p++){var u=b[p];if('"'==u||"'"==u)l&&u!=l?k+=u:(l?l=null:l=u,k&&(h.push(k),k=""));else{if(!l){if("\r"==u||"\n"==u)u=";";if(" "==u||"\t"==u||";"==u){k&&(h.push(k),k="");";"==u&&h.length&&(g.push(h),h=[]);continue}}k+=u}}k&&h.push(k);h.length&&g.push(h);d[e]=g;tb(a)||(c=!1)}return c};window.enableEvents=bb;window.sendEvent=db;})();//# sourceMappingURL=/tmp/pdpjs/1.34.3/pdp10-dbg.map
function K(a,b){if(a.v){var c=a.v,d=b||0,e=c.J.speed;e&&(0>=d||30<=(c.kb+=d))&&(e.textContent=c.A.P?c.Z.toFixed(2)+"Mhz":"Stopped",c.kb=0)}if(a.j&&(a=a.j,b=b||0,a.L)){c=a.v.A.P;d=!!(a.v.C&8);if(0>=b||60<=(a.K+=b)){e=a.v.i;if(a.J.PC){var f=a.D&&a.D.U||8,e=e||0,e=8==f?ua(e,void 0):n(e,void 0);a.J.PC.textContent!=e&&(a.J.PC.textContent=e)}a.K=0}-1>b?a.i=a.v.i:0<b&&c&&!d&&(a.i=a.v.Ca);kc(a,a.i);ec(a,a.w)}}
m.sa=function(a,b,c){var d=this;switch(b){case "power":return this.J[b]=c,c.onclick=function(){d.w||(d.A.ba?Bg(d,!1,!0):gi(d,d.Wa))},!0;case "reset":return this.J[b]=c,c.onclick=function(){if(d.A.ba&&!d.w)if(d.b&&!d.F){var a=ob("Click OK to save changes to this "+Rb+" machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Bg(d,a,!0);!a&&d.M?window&&window.location.reload():d.Wa(di)}else d.reset(),d.v&&!d.D&&d.v.fa()},!0;case "save":if(ya(Ja(),"pcjs.org"))c.parentNode.removeChild(c);
else return this.J[b]=c,c.onclick=function(){var a=ci(d,!0);if(a){var b=!!(d.b&&!d.F||d.M),c=Bg(d,b);b?xi(d,a,c):d.ja("Resume disabled, machine state not saved")}},!0}return!1};
function ci(a,b){var c=a.i;c||((c=Ma(si),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=zi(a,c))||a.ja("The user ID is invalid.")):b&&a.ja("Browser local storage is not available"));return c}
function zi(a,b){a.i=null;b=Ha(Ja()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(Qa(si,b.data),a.i=b.data)}catch(d){q(d.message+" ("+c+")")}return a.i}function fi(a){var b=null;a.i&&(b=Ja()+"/api/v1/user?req=load&user="+a.i+"&state="+Ai(a,"1.34.3"));return b}
function xi(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Ai(a,"1.34.3");d.data=c;b=Ha(Ja()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.ja("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.ja(c),Qa(si,""),a.i=null)}}
function jd(a,b){if(a.za){var c=0,d=0;!b&&window&&(c=window.scrollX,d=window.scrollY);a.za.focus();!b&&window&&window.scrollTo(c,d)}}var ni="failsafe",ii="validate",ki="timestamp",ui="version",vi="url",wi="browser",si="user",mi=-1,di=0,li=1,pi=2,yi=3;Xa(function(){for(var a=w(document,v+"-machine"),b=0;b<a.length;b++)for(var c=a[b],d=t(c),c=w(c,v,"computer"),e=0;e<c.length;e++){var f=c[e],g=t(f),g=new ai(g,d,!0);sb(g,f);g.N&&gi(g,g.Wa)}});
Ya.show.push(function(){for(var a=w(document,v,"computer"),b=0;b<a.length;b++){var c=t(a[b]);(c=rb("Computer",c.id))&&c.T&&!c.A.ba&&c.Wa(mi)}});Ya.exit.push(function(){for(var a=w(document,v,"computer"),b=0;b<a.length;b++){var c=t(a[b]);(c=rb("Computer",c.id))&&c.A.ba&&Bg(c,!(!c.b||c.F),!0)}});function G(a,b,c){this.id=a.id;this.i="";this.b={};this.v=this.j=!1;this.key=Ai(a,b,c);qi(this,a.Ub)}m=G.prototype;m.set=function(a,b){try{this.b[a]=b}catch(c){}};m.get=function(a){return this.b[a]||null};
m.data=function(){return this.b};function ei(a,b){return b?(a.i=b,a.v=!0,a.j=!1,!0):a.v?!0:Ka()&&(b=Ma(a.key))?(a.i=b,a.v=!0):!1}function ji(a){var b=!0;if(!a.j)try{a.b=JSON.parse(a.i),a.j=!0}catch(c){q(c.message||c),b=!1}return b}function ri(a){var b=!0;if(Ka()){var c=JSON.stringify(a.b);Qa(a.key,c)||(q("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}m.toString=function(){return this.b?JSON.stringify(this.b):this.i};
function qi(a,b){a.i="";a.b={};a.v=a.j=!1;b&&a.set("parms",b)}m.clear=function(a){qi(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,1);c=0}};function Ai(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}var Bi=0;
function Ci(a,b,c,d,e,f,g){f("Loading "+a+"...");Ha(a,null,!0,function(h,k,l){l?(k||(k="unable to load "+a+" ("+l+")"),g(k,null)):Di(k,a,b,c,d,e,f,g)})}
function Di(a,b,c,d,e,f,g,h){function k(a,g){if(g)h(g,null);else{c&&(fb(c,b,a),(g=b)&&0>g.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(g=window.location.pathname+g),e?"}"==e.slice(-1)?(e=e.slice(0,-1),1<e.length&&(e+=",")):e='{state:"'+e+'",':e="{",e+='url:"'+g+'"}',"object"==typeof resources&&(g=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(e?" parms='"+e+"'":"")+(g?' url="'+g+'"':"")));f||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDPjs$2"),
a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1"+d+"$2"));g=null;if("<"==a.charAt(0))try{f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml")}catch(u){g=null,a=u.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);h(a,g)}}a?f?Ei(a,g,k):k(a,null):h("no data"+(b?" for file: "+b:""),null)}
function Ei(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");Ha(e,null,!0,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 k=h[0],l,p=/( [a-z]+=)(['"])(.*?)\2/g;l=p.exec(f);)k=0>k.indexOf(l[1])?k.replace(">",l[0]+">"):k.replace(new RegExp(l[1]+"(['\"])(.*?)\\1"),l[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);Ei(a,b,c)}})}else c(a,null)}
function Fi(a,b,c,d,e){function f(a){if(void 0===k){var b=h&&w(h,"machine-warning");k=b&&b[0]||h}k&&(k.innerHTML=za(a))}function g(a){f("Error: "+a);l&&(--Bi||ab(!0));l=!1}var h,k,l=!0;Bi++;gb[b]={};try{if(h=document.getElementById(b)){var p;if("object"==typeof resources&&(p=resources.css)){var u=document.head||document.getElementsByTagName("head")[0],E=document.createElement("style");E.type="text/css";E.styleSheet?E.styleSheet.cssText=p:E.appendChild(document.createTextNode(p));u.appendChild(E)}d||
(p=a,"pdp"==a.substr(0,3)&&(p="pdpjs"),d="/versions/"+p+"/1.34.3/components.xsl");p=function(e,k){k?Ci(d,null,a,null,!1,f,function(a,e){e?(fb(b,d,a),f("Processing "+c+"..."),window.ActiveXObject||"ActiveXObject"in window?(e=k.transformNode(e))?(h.outerHTML=e,--Bi||ab(!0)):g("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(a=new XSLTProcessor,a.importStylesheet(e),(e=a.transformToFragment(k,document))?h.parentNode?(h.parentNode.replaceChild(e,h),--Bi||
ab(!0)):g("invalid machine element: "+b):g("transformToFragment failed")):g("unable to transform XML: unsupported browser")):g(a)}):g(e)};"<"!=c.charAt(0)?Ci(c,b,a,e,!0,f,p):Di(c,null,b,a,e,!1,f,p)}else g("missing machine element: "+b)}catch(J){g(J.message)}return l}window.embedPDP10=function(a,b,c,d){ab(!1);return Fi("pdp10",a,b,c,d)};window.embedPDP11=function(a,b,c,d){ab(!1);return Fi("pdp11",a,b,c,d)};window.findMachineComponent=function(a,b){return rb(b,a+".machine")};
window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!ub[a]){for(var c=!0,d=ub,e=a,f=b.length,g=[],h=[],k="",l=null,p=0;p<f;p++){var u=b[p];if('"'==u||"'"==u)l&&u!=l?k+=u:(l?l=null:l=u,k&&(h.push(k),k=""));else{if(!l){if("\r"==u||"\n"==u)u=";";if(" "==u||"\t"==u||";"==u){k&&(h.push(k),k="");";"==u&&h.length&&(g.push(h),h=[]);continue}}k+=u}}k&&h.push(k);h.length&&g.push(h);d[e]=g;tb(a)||(c=!1)}return c};window.enableEvents=ab;window.sendEvent=cb;})();//# sourceMappingURL=/tmp/pdpjs/1.34.3/pdp10-dbg.map