@naanlang/naan 1.4.4 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/LICENSE.md +2 -2
  2. package/README.md +4 -4
  3. package/bin/index.js +25 -3
  4. package/dist/env_web.js +164 -22
  5. package/dist/naan.min.js +5 -5
  6. package/frameworks/browser/browser.nlg +2 -2
  7. package/frameworks/browser/https_request.nlg +2 -2
  8. package/frameworks/browser/sworker.js +28 -26
  9. package/frameworks/browser/terminals.nlg +342 -700
  10. package/frameworks/browser/worker.nlg +255 -0
  11. package/frameworks/browser/workers.nlg +5 -5
  12. package/frameworks/browser/ws_client.nlg +15 -10
  13. package/frameworks/client/apiclient.nlg +204 -19
  14. package/frameworks/client/client.nlg +22 -2
  15. package/frameworks/client/psm_client.nlg +12 -3
  16. package/frameworks/client/relaycon.nlg +87 -161
  17. package/frameworks/common/events.nlg +101 -0
  18. package/frameworks/common/repltools.nlg +80 -1
  19. package/frameworks/node/apiserver.nlg +39 -246
  20. package/frameworks/node/filesystem.nlg +39 -12
  21. package/frameworks/node/gitter.nlg +9 -7
  22. package/frameworks/node/http_request.nlg +34 -13
  23. package/frameworks/node/https_request.nlg +8 -3
  24. package/frameworks/node/node.nlg +2 -0
  25. package/frameworks/node/pty.nlg +346 -0
  26. package/frameworks/node/shell.nlg +4 -4
  27. package/frameworks/node/worker.nlg +409 -539
  28. package/frameworks/node/ws_client.nlg +2 -2
  29. package/frameworks/project/build.nlg +1 -1
  30. package/frameworks/project/projects.nlg +2 -1
  31. package/frameworks/running/debugnub.nlg +17 -4
  32. package/frameworks/running/executors.nlg +27 -274
  33. package/frameworks/running/instances.nlg +393 -0
  34. package/frameworks/running/remote_req.nlg +143 -0
  35. package/frameworks/running/remote_res.nlg +89 -0
  36. package/frameworks/running/taskexec.nlg +2 -2
  37. package/frameworks/service/imp.nlg +736 -0
  38. package/frameworks/service/model.nlg +71 -0
  39. package/frameworks/service/nubnode.nlg +105 -0
  40. package/frameworks/service/nubweb.nlg +106 -0
  41. package/frameworks/service/service.nlg +28 -0
  42. package/frameworks/storage/dbt_pouch.nlg +26 -13
  43. package/frameworks/storage/psm.nlg +39 -5
  44. package/frameworks/storage/psm_dbtables.nlg +10 -2
  45. package/lib/browser/env_web.js +171 -29
  46. package/lib/browser/env_webworker.js +91 -5
  47. package/lib/core/naanlib.js +5 -5
  48. package/lib/env_node.js +184 -8
  49. package/lib/env_nodeworker.js +74 -1
  50. package/package.json +1 -1
  51. package/plugins/serviceAws/aws_cloudwatchlogs.nlg +2 -1
  52. package/plugins/serviceAws/aws_dynamo.nlg +1 -0
  53. package/plugins/serviceAws/aws_s3.nlg +3 -3
  54. package/plugins/serviceAws/aws_sqs.nlg +3 -1
  55. package/plugins/serviceAws/aws_utils.nlg +3 -1
  56. package/plugins/serviceAws/dbt_aws.nlg +22 -20
  57. package/plugins/serviceAws/psm_aws.nlg +2 -1
  58. package/plugins/serviceNexara/speechrec.nlg +10 -6
  59. package/test/test_02_context.nlg +24 -1
  60. package/test/test_03_jsinterop.nlg +32 -3
  61. package/plugins/serviceGC/russian_trusted_root_ca_pem.crt +0 -33
package/dist/naan.min.js CHANGED
@@ -1,9 +1,9 @@
1
1
  /*
2
2
  * naan.min.js
3
3
  *
4
- * Naan for NPM version 1.4.4+1 is released under the MIT License:
4
+ * Naan for NPM version 1.6.0+1 is released under the MIT License:
5
5
  *
6
- * Copyright (c) 2017-2024 Zulch Laboratories, Inc.
6
+ * Copyright (c) 2017-2026 Zulch Laboratories, Inc.
7
7
  *
8
8
  * Permission is hereby granted, free of charge, to any person obtaining a copy
9
9
  * of this software and associated documentation files (the "Software"), to deal
@@ -31,16 +31,16 @@
31
31
  !function(n){n.LeemonBigIntegerLib=function(){for(var s=0,c=0,v=c+1,g="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_=!@#$%^&*()[]{}|;:,.<>/?`~ \\'\"+-",s=0;1<<s<1<<s+1;s++);v=(c=(1<<(s>>=1))-1)+1;var l=rn(1,1,1),a=new Array(0),e=a,i=a,u=a,r=a,f=a,h=a,d=a,M=a,w=a,o=a,y=a,A=a,b=a,m=a,I=a,k=a,p=a,x=a,E=a,P=a,S=a,B=a,L=a,N=a,R=a,T=a,_=a,q=a,O=a,U=a,z=a,C=a,D=a;function G(n){for(var t,r,e=new Array(n),f=0;f<n;f++)e[f]=0;for(e[0]=2,t=0;e[t]<n;){for(f=e[t]*e[t];f<n;f+=e[t])e[f]=1;for(e[++t]=e[t-1]+1;e[t]<n&&e[e[t]];e[t]++);}for(r=new Array(t),f=0;f<t;f++)r[f]=e[f];return r}function Y(n,t){return o.length!=n.length&&(o=on(n),y=on(n),A=on(n)),gn(A,t),Z(n,A)}function Z(n,t){var r,e,f,h;for(o.length!=n.length&&(o=on(n),y=on(n),A=on(n)),ln(A,t),ln(y,n),ln(o,n),un(y,-1),un(o,-1),r=f=0;r<y.length;r++)for(e=1;e<c;e<<=1)n[r]&e?(h=f<y.length+s?f:0,r=y.length,e=c):f++;if(h&&an(y,h),Pn(A,y,n),!en(A,1)&&!fn(A,o)){for(e=1;e<=h-1&&!fn(A,o);){if(pn(A,n),en(A,1))return 0;e++}if(!fn(A,o))return 0}return 1}function j(n){for(var t,r,e=n.length-1;0==n[e]&&0<e;e--);for(t=0,r=n[e];r;r>>=1,t++);return t+=s*e}function F(n,t){t=rn(0,(n.length>t?n.length:t)*s,0);return ln(t,n),t}function t(n,t){var r,e,f=rn(0,n,0);for(0==E.length&&(E=G(3e4)),D.length!=f.length&&(D=on(f));;){for(J(f,n,0),f[0]|=1,r=e=0;r<E.length&&E[r]<=3e4;r++)if(0==tn(f,E[r])&&!en(f,E[r])){e=1;break}for(r=0;r<t&&!e;r++){for(J(D,n,0);!X(f,D);)J(D,n,0);Z(f,D)||(e=1)}if(!e)return f}}function H(n){if(V(n)){for(r=n.length;0<r&&n[r-1]==c;r--);++r}else for(r=n.length;0<r&&!n[r-1];r--);for(var t=F(n,r),r=t.length;0<=--r;)t[r]=~t[r]&c;return An(t,l),t=xn(t,1)}function J(n,t,r){for(var e,f=0;f<n.length;f++)n[f]=0;for(e=Math.floor((t-1)/s)+1,f=0;f<e;f++)n[f]=Math.floor(Math.random()*(1<<s-1));n[e-1]&=(2<<(t-1)%s)-1,1==r&&(n[e-1]|=1<<(t-1)%s)}function K(n,t){var r,e,f,h,o,l,i,g,u;for(M.length!=n.length&&(M=on(n)),u=1;u;){for(u=0,r=1;r<t.length;r++)if(t[r]){u=1;break}if(!u)break;for(r=n.length;!n[r]&&0<=r;r--);for(e=n[r],f=t[r],l=o=0,i=h=1;f+l&&f+i&&(g=Math.floor((e+h)/(f+l)))==Math.floor((e+o)/(f+i));)a=h-g*l,h=l,l=a,a=o-g*i,o=i,i=a,a=e-g*f,e=f,f=a;o?(ln(M,n),Mn(n,t,h,o),Mn(t,M,i,l)):(In(n,t),ln(M,n),ln(n,t),ln(t,M))}if(0!=t[0])for(a=tn(n,t[0]),gn(n,t[0]),t[0]=a;t[0];)n[0]%=t[0],a=n[0],n[0]=t[0],t[0]=a}function Q(n,t){for(var r=1,e=0;;){if(1==n)return r;if(0==n)return 0;if(e-=r*Math.floor(t/n),1==(t%=n))return e;if(0==t)return 0;r-=e*Math.floor(n/t),n%=t}}function V(n){return n[n.length-1]==c}function W(n,t,r){for(var e=n.length,f=t.length,h=e+r<f?e+r:f,o=f-1-r;o<e&&0<=o;o++)if(0<n[o])return 1;for(o=e-1+r;o<f;o++)if(0<t[o])return 0;for(o=h-1;r<=o;o--){if(n[o-r]>t[o])return 1;if(n[o-r]<t[o])return 0}return 0}function X(n,t){for(var r=(n.length<t.length?n:t).length,e=n.length;e<t.length;e++)if(t[e])return 0;for(e=t.length;e<n.length;e++)if(n[e])return 1;for(e=r-1;0<=e;e--){if(n[e]>t[e])return 1;if(n[e]<t[e])return 0}return 0}function $(n,t,r,e){var f,h,o,l,i,g,u,a;for(ln(e,n),h=t.length;0==t[h-1];h--);for(a=t[h-1],u=0;a;u++)a>>=1;for(sn(t,u=s-u),sn(e,u),f=e.length;0==e[f-1]&&h<f;f--);for(gn(r,0);!W(t,e,f-h);)!function(n,t,r){var e,f,h,o;for(h=n.length<r+t.length?n.length:r+t.length,o=n.length,f=0,e=r;e<h;e++)f+=n[e]-t[e-r],n[e]=f&c,f>>=s;for(e=h;f&&e<o;e++)f+=n[e],n[e]=f&c,f>>=s}(e,t,f-h),r[f-h]++;for(o=f-1;h<=o;o--){for(e[o]==t[h-1]?r[o-h]=c:r[o-h]=Math.floor((e[o]*v+e[o-1])/t[h-1]);g=(i=(1<h?t[h-2]:0)*r[o-h])>>s,i&=c,g=(l=g+r[o-h]*t[h-1])>>s,l&=c,g==e[o]?l==e[o-1]?i>(1<o?e[o-2]:0):l>e[o-1]:g>e[o];)r[o-h]--;wn(e,t,-r[o-h],o-h),V(e)&&(function(n,t,r){var e,f,h,o;for(h=n.length<r+t.length?n.length:r+t.length,o=n.length,f=0,e=r;e<h;e++)f+=n[e]+t[e-r],n[e]=f&c,f>>=s;for(e=h;f&&e<o;e++)f+=n[e],n[e]=f&c,f>>=s}(e,t,o-h),r[o-h]--)}an(t,u),an(e,u)}function nn(n){for(var t,r=n.length,e=0,f=0;f<r;f++)(e+=n[f])<(t=0)&&(e+=(t=-(e>>s))*v),n[f]=e&c,e=(e>>s)-t}function tn(n,t){for(var r=0,e=n.length-1;0<=e;e--)r=(r*v+n[e])%t;return r}function rn(n,t,r){t=Math.ceil(t/s)+1;t=t<r?r:t;t=new Array(t);return gn(t,n),t}function en(n,t){var r;if(n[0]!=t)return 0;for(r=1;r<n.length;r++)if(n[r])return 0;return 1}function fn(n,t){for(var r=(n.length<t.length?n:t).length,e=0;e<r;e++)if(n[e]!=t[e])return 0;if(n.length>t.length){for(;e<n.length;e++)if(n[e])return 0}else for(;e<t.length;e++)if(t[e])return 0;return 1}function hn(n){for(var t=0;t<n.length;t++)if(n[t])return 0;return 1}function on(n){var t=new Array(n.length);return ln(t,n),t}function ln(n,t){for(var r=(n.length<t.length?n:t).length,e=0;e<r;e++)n[e]=t[e];if(t[t.length-1]==c)for(e=r;e<n.length;e++)n[e]=c;else for(e=r;e<n.length;e++)n[e]=0}function gn(n,t){for(var r=t,e=0;e<n.length;e++)n[e]=r&c,2147483647<r?r/=c+1:r>>=s}function un(n,t){var r,e,f,h;for(n[0]+=t,e=n.length,r=f=0;r<e;r++)if((f+=n[r])<(h=0)&&(f+=(h=-(f>>s))*v),n[r]=f&c,!(f=(f>>s)-h))return}function an(n,t){var r,e=Math.floor(t/s);if(e){for(r=0;r<n.length-e;r++)n[r]=n[r+e];for(;r<n.length;r++)n[r]=0;t%=s}for(r=0;r<n.length-1;r++)n[r]=c&(n[r+1]<<s-t|n[r]>>t);n[r]>>=t}function cn(n){for(var t=0;t<n.length-1;t++)n[t]=c&(n[t+1]<<s-1|n[t]>>1);n[t]=n[t]>>1|n[t]&v>>1}function sn(n,t){var r,e=Math.floor(t/s);if(e){for(r=n.length;e<=r;r--)n[r]=n[r-e];for(;0<=r;r--)n[r]=0;t%=s}if(t){for(r=n.length-1;0<r;r--)n[r]=c&(n[r]<<t|n[r-1]>>s-t);n[r]=c&n[r]<<t}}function vn(n,t){var r,e,f,h;if(t)for(e=n.length,r=f=0;r<e;r++)(f+=n[r]*t)<(h=0)&&(f+=(h=-(f>>s))*v),n[r]=f&c,f=(f>>s)-h}function dn(n,t){for(var r,e=0,f=n.length-1;0<=f;f--)r=e*v+n[f],n[f]=Math.floor(r/t),e=r%t;return e}function Mn(n,t,r,e){for(var f=(n.length<t.length?n:t).length,h=n.length,o=0,l=0;l<f;l++)o+=r*n[l]+e*t[l],n[l]=o&c,o>>=s;for(l=f;l<h;l++)o+=r*n[l],n[l]=o&c,o>>=s}function wn(n,t,r,e){for(var f=n.length<e+t.length?n.length:e+t.length,h=n.length,o=0,l=e;l<f;l++)o+=n[l]+r*t[l-e],n[l]=o&c,o>>=s;for(l=f;o&&l<h;l++)o+=n[l],n[l]=o&c,o>>=s}function yn(n,t){for(var r=(n.length<t.length?n:t).length,e=0,f=0;f<r;f++)e+=n[f]-t[f],n[f]=e&c,e>>=s;for(t[t.length-1]==c&&(e=e<0?0:1),f=r;e&&f<n.length;f++)e+=n[f],n[f]=e&c,e>>=s}function An(n,t){for(var r=(n.length<t.length?n:t).length,e=0,f=0;f<r;f++)e+=n[f]+t[f],n[f]=e&c,e>>=s;for(t[t.length-1]==c&&(e=0<e?0:-1),f=r;e&&f<n.length;f++)e+=n[f],n[f]=e&c,e>>=s}function bn(n){for(var t=n.length,r=0;r<t;r++)n[r]^=c}function mn(n,t){var r;for(e.length!=2*n.length&&(e=new Array(2*n.length)),gn(e,0),r=0;r<t.length;r++)t[r]&&wn(e,n,t[r],r);ln(n,e)}function In(n,t){r.length!=n.length?r=on(n):ln(r,n),f.length!=n.length&&(f=on(n)),$(r,t,f,n)}function kn(n,t,r){var e;for(i.length!=2*n.length&&(i=new Array(2*n.length)),gn(i,0),e=0;e<t.length;e++)t[e]&&wn(i,n,t[e],e);In(i,r),ln(n,i)}function pn(n,t){for(var r,e,f,h,o=n.length;0<o&&!n[o-1];o--);for(h=o>t.length?2*o:2*t.length,i.length!=h&&(i=new Array(h)),gn(i,0),r=0;r<o;r++){for(f=i[2*r]+n[r]*n[r],i[2*r]=f&c,f>>=s,e=r+1;e<o;e++)f=i[r+e]+2*n[r]*n[e]+f,i[r+e]=f&c,f>>=s;i[r+o]=f}In(i,t),ln(n,i)}function xn(n,t){var r;if(n[n.length-1]==c)for(r=n.length;0<r&&n[r-1]==c;r--);else for(r=n.length;0<r&&!n[r-1];r--);return ln(t=new Array(r+t),n),t}function En(n){return ans=on(n),bn(ans),xn(ans,1)}function Pn(n,t,r){var e,f,h,o;if(d.length!=r.length&&(d=on(r)),0!=(1&r[0])){for(gn(d,0),h=r.length;0<h&&!r[h-1];h--);for(o=v-Q(tn(r,v),v),d[h]=1,kn(n,d,r),u.length!=n.length?u=on(n):ln(u,n),e=t.length-1;0<e&!t[e];e--);if(0!=t[e]){for(f=1<<s-1;f&&!(t[e]&f);f>>=1);for(;;){if(!(f>>=1)){if(--e<0)return void Sn(n,l,r,o);f=1<<s-1}Sn(n,n,r,o),f&t[e]&&Sn(n,u,r,o)}}else gn(n,1)}else for(ln(d,n),gn(n,1);!en(t,0);)1&t[0]&&kn(n,d,r),dn(t,2),pn(d,r)}function Sn(n,t,r,e){var f,h,o,l,i,g,u=r.length,a=t.length;for(w.length!=u&&(w=new Array(u)),gn(w,0);0<u&&0==r[u-1];u--);for(;0<a&&0==t[a-1];a--);for(g=w.length-1,f=0;f<u;f++){for(o=(i=w[0]+n[f]*t[0])+(l=(i&c)*e&c)*r[0]>>s,i=n[f],h=1;h<a-4;)o+=w[h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,h++;for(;h<a;)o+=w[h]+l*r[h]+i*t[h],w[h-1]=o&c,o>>=s,h++;for(;h<u-4;)o+=w[h]+l*r[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h],w[h-1]=o&c,o>>=s,o+=w[++h]+l*r[h],w[h-1]=o&c,o>>=s,h++;for(;h<u;)o+=w[h]+l*r[h],w[h-1]=o&c,o>>=s,h++;for(;h<g;)o+=w[h],w[h-1]=o&c,o>>=s,h++;w[h-1]=o&c}X(r,w)||yn(w,r),ln(n,w)}this.add=function(n,t){return An(n=F(n,n.length>t.length?n.length+1:t.length+1),t),xn(n,1)},this.addInt=function(n,t){return un(n=F(n,n.length+1),t),xn(n,1)},this.bigInt2str=function(n,t){var r,e,f="";if(h.length!=n.length?h=on(n):ln(h,n),-1==t){for(r=n.length-1;0<r;r--)f+=n[r]+",";f+=n[0]}else for(;!hn(h);)e=dn(h,t),f=g.substring(e,e+1)+f;return 0==f.length&&(f="0"),f},this.bitSize=j,this.divide_=$,this.dup=on,this.equals=fn,this.equalsInt=en,this.expand=F,this.findPrimes=G,this.GCD=function(n,t){return K(n=on(n),on(t)),n},this.greater=X,this.greaterShift=W,this.int2bigInt=rn,this.inverseMod=function(n,t){return function(n,t){var r=1+2*Math.max(n.length,t.length);if(!(1&n[0]||1&t[0]))return gn(n,0),0;m.length!=r&&(m=new Array(r),b=new Array(r),I=new Array(r),k=new Array(r),p=new Array(r),x=new Array(r));for(ln(m,n),ln(b,t),gn(I,1),gn(k,0),gn(p,0),gn(x,1);;){for(;!(1&m[0]);)cn(m),1&I[0]||1&k[0]?(An(I,t),cn(I),yn(k,n)):cn(I),cn(k);for(;!(1&b[0]);)cn(b),1&p[0]||1&x[0]?(An(p,t),cn(p),yn(x,n)):cn(p),cn(x);if(X(b,m)?(yn(b,m),yn(p,I),yn(x,k)):(yn(m,b),yn(I,p),yn(k,x)),en(m,0)){for(;V(p);)An(p,t);return ln(n,p),en(b,1)?1:(gn(n,0),0)}}}(n=F(n,t.length),t)?xn(n,1):null},this.inverseModInt=Q,this.isZero=hn,this.millerRabin=Z,this.millerRabinInt=Y,this.mod=function(n,t){return In(n=on(n),t),xn(n,1)},this.modInt=tn,this.mult=function(n,t){return mn(n=F(n,n.length+t.length),t),xn(n,1)},this.multMod=function(n,t,r){return kn(n=F(n,r.length),t,r),xn(n,1)},this.negative=V,this.powMod=function(n,t,r){return Pn(n=F(n,r.length),xn(t,2),xn(r,2)),xn(n,1)},this.randBigInt=function(n,t){var r=rn(0,0,Math.floor((n-1)/s)+2);return J(r,n,t),r},this.randTruePrime=function(n){var t=rn(0,n,0);return function n(t,r){var e,f,h,o,l,i,g,u,a,c;0==E.length&&(E=G(3e4));if(0==P.length)for(P=new Array(512),h=0;h<512;h++)P[h]=Math.pow(2,h/511-1);0;0;B.length!=t.length&&(B=on(t),L=on(t),T=on(t),q=on(t),z=on(t),on(t),on(t),U=on(t),O=on(t),S=on(t),N=on(t),R=on(t),_=on(t),C=on(t));if(r<=20){for(e=(1<<(r+2>>1))-1,gn(t,0),f=1;f;)for(t[f=0]=1|1<<r-1|Math.floor(Math.random()*(1<<r)),h=1;h<E.length&&(E[h]&e)==E[h];h++)if(0==t[0]%E[h]){f=1;break}return void nn(t)}l=.1*r*r;if(40<r)for(o=1;r-r*o<=20;)o=P[Math.floor(512*Math.random())];else o=.5;c=Math.floor(o*r)+1;n(R,c);gn(B,0);B[Math.floor((r-2)/s)]|=1<<(r-2)%s;$(B,R,S,N);u=j(S);for(;;){for(;J(L,u,0),!X(S,L););for(un(L,1),An(L,S),ln(O,R),mn(O,L),vn(O,2),un(O,1),ln(q,L),vn(q,2),h=i=0;h<E.length&&E[h]<l;h++)if(0==tn(O,E[h])&&!en(O,E[h])){i=1;break}if(i||Y(O,2)||(i=1),!i){for(un(O,-3),h=O.length-1;0==O[h]&&0<h;h--);for(a=0,g=O[h];g;g>>=1,a++);for(a+=s*h;J(_,a,0),!X(O,_););if(un(O,3),un(_,2),ln(U,_),ln(T,O),un(T,-1),Pn(U,T,O),un(U,-1),hn(U)&&(ln(U,_),Pn(U,q,O),un(U,-1),ln(C,O),ln(z,U),K(z,O),en(z,1)))return void ln(t,C)}}}(t,n),xn(t,1)},this.randProbPrime=function(n){return t(n,600<=n?2:550<=n?4:500<=n?5:400<=n?6:350<=n?7:300<=n?9:250<=n?12:200<=n?15:150<=n?18:100<=n?27:40)},this.str2bigInt=function(n,t,r){var e,f,h,o,l,i=n.length;if(-1==t){for(h=new Array(0);;){for(o=new Array(h.length+1),f=0;f<h.length;f++)o[f+1]=h[f];if(o[0]=parseInt(n,10),h=o,(e=n.indexOf(",",0))<1)break;if(0==(n=n.substring(e+1)).length)break}return h.length<r?(ln(o=new Array(r),h),o):h}for(h=rn(0,t*i,0),f=0;f<i&&(e=g.indexOf(n.substring(f,f+1),0),t<=36&&36<=e&&(e-=26),!(t<=e||e<0));f++)vn(h,t),un(h,e);for(i=h.length;0<i&&!h[i-1];i--);for(i=i+1<r?r:i+1,o=new Array(i),l=i<h.length?i:h.length,f=0;f<l;f++)o[f]=h[f];for(;f<i;f++)o[f]=0;return o},this.negate=H,this.sub=function(n,t){return yn(n=F(n,n.length>t.length?n.length+1:t.length+1),t),xn(n,1)},this.trim=xn,this.uint82bigInt=function(n){for(var t=n.length,r=8*n.BYTES_PER_ELEMENT,e=t*r,e=Math.trunc((e+s-1)/s),f=new Array(e+1),h=0,o=0,l=0,i=0,h=t-1;0<=h;--h)for(l|=n[h]<<i,i+=r;s<=i;)f[o++]=l&c,l>>=s,i-=s;for(;o<f.length;){if(0==(f[o++]=l)){f.length=o;break}l=0}return f},this.bigInt2uint8=function(n){var t;for(n[n.length-1]==c&&(n=H(n)),t=n.length;0<t&&!n[t-1];t--);for(var r=t*s,r=Math.trunc((8+r-1)/8),e=new Uint8Array(r),f=0,h=r,o=0,l=0,f=0;f<t;++f)for(o|=n[f]<<l,l+=s;8<=l;)e[--h]=o,o>>=8,l-=8;return 0<h&&(0==o?e=new Uint8Array(e.slice(h)):e[--h]=o),e},this.rightShift=function(n,t){var r=!1,e=V(n)?(r=!0,En(n)):on(n);if(t>e.length*s)e=[0];else{for(;s<=t;)an(e,s-1),t-=s-1;0<t&&an(e,t)}return r&&bn(e),xn(e,1)},this.leftShift=function(n,t){for(var r=F(n,n.length+Math.trunc((t+s)/s));s<=t;)sn(r,s-1),t-=s-1;return 0<t&&sn(r,t),xn(r,1)},this.and=function(n,t){return n=1==n.length&&n[0]==c?[c,c]:on(n),1==t.length&&t[0]==c&&(t=[c,c]),function(n,t){for(var r=(n.length<t.length?n:t).length,e=0;e<r;e++)n[e]&=t[e];for(e=r;e<n.length;e++)n[e]=0}(n,t),xn(n,1)},this.or=function(n,t){var r;return n.length<t.length&&(r=n,n=t,t=r),n=1==n.length&&n[0]==c?[c,c]:on(n),1==t.length&&t[0]==c&&(t=[c,c]),function(n,t){for(var r=(n.length<t.length?n:t).length,e=0;e<r;e++)n[e]|=t[e]}(n,t),xn(n,1)},this.xor=function(n,t){var r;return n.length<t.length&&(r=n,n=t,t=r),n=1==n.length&&n[0]==c?[c,c]:on(n),1==t.length&&t[0]==c&&(t=[c,c]),function(n,t){for(var r=(n.length<t.length?n:t).length,e=0;e<r;e++)n[e]^=t[e]&c}(n,t),xn(n,1)},this.not=En}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
32
32
 
33
33
  /* Copyright (c) 2017-2024 by Zulch Laboratories, Inc. */
34
- !function(hl){hl.NaanInterpreter=function(){"use strict";var e=hl.LeemonBigIntegerLib?hl:require("./bigint.js"),s=new e.LeemonBigIntegerLib,b=hl.NaanChannel?hl:require("./naan_io.js"),l={Number:Number,String:String,Date:Date,RegExp:RegExp,Array:Array,Math:Math,Promise:Promise},m={Number:Number,String:String,Date:Date,RegExp:RegExp},L;function B(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.apply(e)}function u(e){return e.prototype&&e.prototype.constructor.name}var i=Math.log2(Number.MAX_SAFE_INTEGER),a=Math.log2(Number.MAX_VALUE),n=131072,p="\b\f\n\0\r\t\v ~`@#$%^&*()_+-={}|[]\\:\";'<>?,./",y=this,D=1,X=2,z=3,G=4,Z=5,J=6,O=7,V=8,Q=9,k=10,r=10,g=0,S=1,N=2,f=2,U=3,H=4,Y=5,w=2,K=3,ee=3,re=3,ne=3,x=3,j=2,te=3,ie=4,v=N+1,T=Y+1,t=K+1,o=ee+1,c=re+1,d=N+1,h=x+1,ae=ie+1,P={},ue=null;function A(e){return e&&e!==ue&&e!==Xe&&e!==ze}function I(e){return e===Ue||e===Je||e===Ve||e===Qe||e===He||e===Ye}function E(e){return e?Ge:ue}function $(e){return e===L?Xe:null===e?ze:e}function M(e){for(var r=ue,n=e.length-1;0<=n;--n)r=Le(e[n],r);return r}function q(e){for(var r=[];e[g]===D;)r.push(e[S]),e=e[N];return r}function _(e){for(var r=Zu();e[g]===D;){var n=e[S];n[g]===D&&So(r,n[S],n[N]),e=e[N]}return r}function R(e,r){for(var n=Object.getOwnPropertyNames(r),t=0;t<n.length;++t){var i=n[t];e[i]=r[i]}}function F(e,r){return e===ue?ue:(r&&r!==ue||(r=Zu()),Rc(e)!==ue&&R(r[x],e[x]),r)}function W(e){for(var r=0;e[0]===X;){if(++r>zt)return ue;if(e[U]!==ue)e=e[U];else{if(e[1]===e)break;e=e[1]}}return e}var oe=[],fe=[],ce,se,le,pe,C=1e5;function ge(){oe=[],fe=[],ce=ve(We("NaanRoot")),se=ve(We("NaanCore")),le=ve(We("NaanConst")),oe.pop(),fe.push(se),pe=ce}function ve(e,r){return e===L?ue:(r===L&&(r=new Array(ae)),r[0]=k,(r[1]=r)[2]=e,r[3]=[],r[4]={},oe.push(r),r)}function de(e){e=e&&e[0]===k?js(e[j]):"nowhere";return e}function he(e,r){for(var n=[],t=M(fe);e[g]===D;){var i=e[S];i===ue&&(i=ce),i[0]===k&&n.indexOf(i)<0&&n.push(i),e=e[N]}if(0<n.length){if(!r&&n[0]!==fe[0]&&pe!=n[0]&&pe!==ce)return Ja(De(["internal","$"+js(pe)+": no privileges to activate "+de(n[0])])),ue;fe=n}return t}function be(l){var e,r,n,p=new WeakMap,g={};function v(e){e=function e(r){var n;if("object"!=typeof r)return r;if(p.get(r))return p.get(r);switch(p.set(r,r),r[0]){case D:for(var t=r;;){var i=t[1],a=t[2];if(t[1]=v(i),a===ue)break;if(a[0]!==D){t[2]=v(a);break}if(t=a,p.get(t))break;p.set(t,t)}return r;case Q:if(r[H]===l)p.set(r,ue),r=ue;else if(zu(r[x])){var u=r[x];if(B(r[x]))for(var o=0;o<u.length;++o)(n=e(u[o]))===g?u.splice(o,1):u[o]=n;else for(var f,c=Object.getOwnPropertyNames(u),s=0;s<c.length;++s)(n=e(u[f=c[s]]))===g?delete u[f]:u[f]=n}return r;case X:return r[H]===l?((r[1]=r)[2]=ue,r[3]=ue,r[4]=ue):(r[1]=v(r[1]),r[2]=v(r[2]),r[3]=v(r[3])),r}return r}(e);return e===g?ue:e}for(p.set(g,g),p.set(l,g),e=0;e<oe.length;++e)if(oe[e]!==l)for(n=oe[e][te],r=0;r<n.length;++r)v(n[r]);for(var t=1;t<=xt;++t)wt[t-1]=v(wt[t-1]);var i=fe.indexOf(l);0<=i&&fe.splice(i,1),0<=(i=oe.indexOf(l))&&oe.splice(i,1)}function ye(o){var e,r,n,f=new WeakMap,c=[];function s(e){if("object"==typeof e&&!f.get(e))switch(f.set(e,e),e[0]){case D:for(var r=e;;){s(r[1]);var n=r[2];if(n===ue)break;if(n[0]!==D){s(n);break}if(r=n,f.get(r))break;f.set(r,r)}break;case Q:if(zu(e[x])){var t=e[x];if(B(e[x]))for(var i=0;i<t.length;++i)s(t[i]);else for(var a=Object.getOwnPropertyNames(t),u=0;u<a.length;++u)s(t[a[u]])}break;case X:e[Y]===o&&c.push(e),s(e[1]),s(e[2]),s(e[3])}}for(e=0;e<oe.length;++e)for(n=oe[e][te],r=0;r<n.length;++r)s(n[r]);for(var t=1;t<=xt;++t)s(wt[t-1]);return c}function me(e){for(var r=0;r<fe.length;++r){var n=fe[r];if(n[ie].hasOwnProperty(e)){var t=n[ie][e];return n[te][t]}}return!1}function ke(e){if(e[H][0]!==k)return ue;var r,n=e[H][ie][e[Y]];if(e[H][te][n]!==e)return ue;for(r=0;r<fe.length;++r){var t=fe[r];if(t[ie].hasOwnProperty(e[Y]))return n=t[ie][e[Y]],t[te][n]===e?ue:e[H]}return e[H]}function we(e,r){return!!r[ie].hasOwnProperty(e)&&r[te][r[ie][e]]}var xe={};function Oe(e){var r=new Array(T);return ue||(ue=r,ge()),r[0]=X,(r[1]=r)[2]=ue,r[3]=ue,r[4]=ue,r[5]=e,r}function Se(e,r){var n=e[Y],t=r[ie][n];return r[te][t]===e||((e[H]=r)[ie][n]=r[te].length,r[te].push(e)),e}function Ne(e){var r=me(e);return r||Se(r=Oe(e),fe[0])}function je(e){e=me(e);return e||ue}function Te(e,r){var n,t;for(n in r)if(t=we(e,r[n]))return t;return ue}function Pe(e,r){return Te(r,[e[H],ce,se])}function Ae(e){if(e[H][0]!==k)return-1;var r=oe.indexOf(e[H]);if(r<0)return Ou(hu,"can't find namespace for symbol \""+e[Y]+'"'),0;var n=r*C,r=oe[r][ie][e[Y]];return"number"!=typeof r?(Ou(hu,"can't find interned symbol \""+e[Y]+'"'),0):n+r}function Ie(e,r){e=Ne(e);return e===ue&&Ou(hu,"can't set that: "+r),e===ue?ue:(r===L?r=e:"string"==typeof r?r=Ne(r):"number"==typeof r&&(r=Fo(r)),e[1]=r,e)}function Ee(e,r){var n=new Array(d);return n[0]=r,(n[1]=n)[2]=ue,n[3]=e,n}function $e(e,r,n,t){var i=(t?Oe:Ne)(e);i===ue&&Ou(hu,"can't add builtin \""+i+'"');var a=new Array(d);return a[0]=n,(a[1]=a)[2]=i,a[3]=r,i[U]=a,t||(xe[e]=r),i}function Me(e){for(var r=Object.getOwnPropertyNames(xe),n=0;n<r.length;++n)if(xe[r[n]]===e)return r[n];return L}function qe(e,r){var n,t=Be(e);if(t===ue)return ue;for(n=0;n<r.length;++n){var i=r[n];if("object"!=typeof i)return ue;if(!(i.length<2)){var a=i[0];if("string"!=typeof a)return ue;is(t,Be(a),Be(i[1]))}}return t}function _e(e,r){e=Ne(e);return A(e)||Ou(hu,"can't add that: "+r),e[U]=r,e}function Re(e){e=zr(e,fe[0]);return"string"==typeof e?(Ou(hu,"can't create closure: "+e),ue):e}function Fe(e){return e[0]===X?e[Y]:e[0]===z?e[K]:""}function We(e){var r=new Array(t);return r[0]=z,(r[1]=r)[2]=ue,r[3]=e,r}function Ce(e){var r=new Array(h);return r[0]=Q,(r[1]=r)[2]=ue,r[3]=e,r[4]=ue,r}function Le(e,r){var n=new Array(v);return n[0]=D,n[1]=e,n[2]=r,n}function Be(e){if("string"==typeof e)return 1<e.length&&"."==e.substring(0,1)?Wo(parseFloat(e.substring(1))):"$"==e.substring(0,1)?We(e.substring(1)):("\\"==e.substring(0,1)&&(e=e.substring(1)),Dr(e));if("number"==typeof e)return Fo(e);if("object"==typeof e){if(B(e)){for(var r=ue,n=r,t=0;t<e.length;++t){var i=new Array(v);i[0]=D,i[1]=Be(e[t]),n!==(i[2]=ue)?n[2]=i:r=i,n=i}return r}if(e.hasOwnProperty("dictionary")){var a=new Gu,u=e.dictionary,o=Object.getOwnPropertyNames(u);for(t=0;t<o.length;++t){var f=o[t];"$"!=f.substring(0,1)&&"\\"!=f.substring(0,1)||(f=f.substring(1)),a[f]=Be(u[o[t]])}var c=Ce(a);return e.tag!==L&&(c[2]=Be(e.tag)),c}if(e.hasOwnProperty("array")){var s=[];for(u=e.array,s[Lu]=Bu,t=0;t<u.length;++t)s[t]=Be(u[t]);return Ce(s)}if(e.hasOwnProperty("xobject"))return Ce(e.xobject)}return Ou(yu,"naanParseJsValue warning: can't parse "+typeof e),ue}function De(e){var r=fe;(fe=fe.slice()).push(ce);e=Be(e);return fe=r,e}Ne("false");var Xe=Ne("undefined"),ze=Ne("null"),Ge=Ne("true"),Ze=Ne("lambda"),Je=Ne("function"),Ve=Ne("function&"),Qe=Ne("macro"),Ue=Ne("closure"),He=Ne("let"),Ye=Ne("let&"),Ke=Ne("var"),er=Ne("exception"),rr=Ne("escape"),nr=Ne("this"),tr=Ne("self"),ir=Ne("`"),ar=Ne("deref"),ur=Ne("."),or=Ne("body"),fr=Ne("loop"),cr=Ne("catch"),sr=Ne("interrupt"),lr=Ne("list"),pr=Ne("Naan"),gr=Ne("builtin"),vr=Ne("tuple"),dr=Ne("symbol"),hr=Ne("integer"),br=Ne("float"),yr=Ne("numeric"),mr=Ne("string"),kr=Ne("array"),wr=Ne("dictionary"),xr=Ne("object"),Or=Ne("xobject"),Sr=Ne("namespace"),Nr=Ne("nonce"),jr=Ne("weakmap"),Tr=Ne("textstream"),Pr=Ne("sprint"),Ar=Ne("$");Ne("driver"),Ne("App"),Ne("identity"),Ne("js"),function(){for(var e in l)l.hasOwnProperty(e)&&Ne(e)}();var Ir=Ie("cr","\n"),Er=Ne("space");Er[1]=We(" "),Ie("doublequote",'"'),Ie("rpar",")"),Ie("lpar","("),Ie("comma",","),Ie("quote","`"),Ie("period","."),Ie("sprint",ue),fe=[ce,se];var $r=We(".closure"),Mr=We(".tostring"),qr=Ne("throw"),_r=Ne("call"),Rr=Ne("arraycall"),Fr=Ne("xget"),Wr=Ne("xset"),Cr=Ne("xcall"),Lr=Ne("xapply");function Br(e){if(pr[1][0]!==Q)return ue;for(var r=Object.getOwnPropertyNames(pr[1][x]),n=0;n<r.length;++n){var t=pr[1][x][r[n]][x];if(t.hasOwnProperty(e)){if(t[e][0]===X)return t[e];break}}return ue}function Dr(e){var r=me(e);if(r)return r;if(r=Ne(e),pr[1][0]!==Q)return r;var n=Br(e);return"future"!==e&&(n=n[U])===ue||(r[U]=n),r}function Xr(e,r){if((e[0]===X||r&&e[0]===Q)&&A(e)){if(e[H]===ue)return 1;if(pe==e[H])return 1;if(fe[0]===e[H])return 1;if(pe===ce)return 1;r=de(e[H])+Ls.NSinfix;e[0]===X?r+=e[Y]:r+=js(e),Ja(De(["internal","$can't modify "+r+" from "+de(pe)]),ue)}else Ja(De(["internal","$attempt to modify constant "+js(e)]),ue)}function zr(e,r){try{return Gr(e,r)}catch(e){return e}}function Gr(e,b){var u,o,r,n={};function y(e,r,n){if(r[0]!==X||((a=r)===ue||a===Xe||a===ze||a===Ze||I(a)))for(;r[0]===D;)y(e,r[1],n),r=r[2];else{var t=r[Y];if(n===Ve||n===Ye){if(r[H]===b||b===ue)return;u!==Ue&&u!==Qe&&Ou(yu,"warning: using "+Ls.NSinfix+t+" for parameter "+de(r[H])+Ls.NSinfix+t+" in "+de(b)+Ls.NSinfix+o[Y])}var i=Oe(t);i[H]=b===ue?r[H]:b;a=e[t];a&&(i[U]=a[U]),e[t]=i}var a}function m(e,r){for(;r[0]===D;){if(r[1][0]===D&&r[1][1]!==ir)if(I(r[1][1])){var n=r[1][2][1];if(n!==ue&&n[Y]!==Ze[Y]){var t=n[Y],i=Oe(t);if(i[H]=b===ue?n[H]:b,i[U]=r[1],e.hasOwnProperty(t))throw"duplicate procedure name "+t+" in "+o[Y];e[t]=i}}else m(e,r[1]);r=r[2]}}function k(e,r,n,t){if(e[0]!==D){if(e[0]===Q&&zu(e[3])){var i=e[x];if(B(i)){for(var a=Xu(kr,ue),u=0;u<i.length;++u)a[x][u]=k(i[u],r,n,t);return a}var o,f=Object.getOwnPropertyNames(i),c=(e[3]instanceof Ju?Vu:Zu)();for(c[2]=e[2],o=0;o<f.length;++o)c[x][f[o]]=k(i[f[o]],r,n,t);return c}return e[0]!==X?e:r.hasOwnProperty(e[Y])?r[e[Y]]:e}if(!n&&I(e[1])){var s=k(e[2][1],r,!1,t);s[Y]===Ze[Y]&&((s=Oe(s[Y]))[S]=Ze,s[H]=b!==ue?b:s[H]);var l=e[2][2][1],p=e[2][2][2],g={};m(g,p),y(g=Object.assign({},r,g),l,e[1]);p=Le(k(l,g,!1,t),k(p,g,!1,s)),g=Le(e[1],Le(s,p));return s[U]=g,t&&(s[2]===ue&&(s[2]=Xu(wr,ue)),(s[2][3][".parent"]=t)[2]===ue&&(t[2]=Xu(wr,ue)),p=(p=t[2][3][".children"])||ue,t[2][3][".children"]=Le(s,p)),g}e[1]===ir&&(n=!0);for(var v=ue,d=null;e[0]===D;){var h=Le(k(e[1],r,n,t),ue);e.breakpoint&&(h.breakpoint=e.breakpoint),d?d[2]=h:v=h,d=h,e=e[2]}return e!==ue&&d&&(d[2]=e),v}if(e[0]!==D)return ue;if(u=e[1],(o=e[2][1])[0]!==X)return ue;var t=b!==ue?b:o[H];o[H]!==t||(u!==Je&&u!==Ve||o[U]!==e)&&o[U]!==ue?((r=Oe(o[Y]))[S]=o,r[H]=t,r[f]=F(o[f]),u!==Ue&&u!==Qe||r[f][".base"]||(r[2]===ue&&(r[2]=Xu(wr,ue)),r[2][3][".base"]=o)):r=o,r[2]!=ue&&delete r[2][3][".children"],y(n,nr),n[nr[Y]][1]=r,m(n,e[2][2][2]),y(n,e[2][2][1],u),t=k(e[2][2][1],n,!1),n=k(e[2][2][2],n,!1,r);n=Le(u,Le(r,Le(t,n)));return r[U]=n}var Zr=0,Jr=1,Vr=2,Qr=3,Ur=4,Hr=5,Yr=6,Kr=7,en=8,rn=9,nn=10,tn=11,an=12,un=13,on=14,fn=15,cn=16,sn=17,ln=18,pn=19,gn=20,vn=21,dn=22,hn=23,bn=24,yn=25,mn=26,kn=27,wn=28,xn=29,On=30,Sn=31,Nn=32,jn=33,Tn=34,Pn=35,An=36,In=37,En=38,$n=39,Mn=40,qn=41,_n=42,Rn=43,Fn=44,Wn=45,Cn=46,Ln=47,Bn=48,Dn=49,Xn=50,zn=51,Gn=52,Zn=53,Jn=54,Vn=55,Qn=56,Un=90,Hn=91,Yn=92,Kn=93,et=94,rt=0,nt=1,tt=2,it=3,at=4,ut=5,ot=6,ft=57,ct=58,st=59,lt=95,pt=96,gt=[],vt,dt,ht,bt,yt;gt[Zr]=hi,gt[jn]=bi,gt[In]=yi,gt[Nn]=Ai,gt[ft]=Ai,gt[en]=Xi,gt[fn]=Ii,gt[cn]=Ei,gt[sn]=$i,gt[Vn]=zi,gt[Qn]=Gi,gt[tn]=Zi,gt[bn]=Ji,gt[wn]=Vi,gt[xn]=Qi,gt[On]=Qi,gt[Sn]=Qi,gt[st]=Ui,gt[yn]=Hi,gt[mn]=Yi,gt[kn]=Ki,gt[rn]=ea,gt[nn]=ra,gt[Xn]=na,gt[zn]=ta,gt[dn]=ia,gt[hn]=aa,gt[_n]=ua,gt[Rn]=oa,gt[Fn]=fa,gt[gn]=ca,gt[vn]=sa,gt[Ln]=la,gt[Bn]=pa,gt[Dn]=va,gt[Ur]=ga,gt[Hr]=va,gt[Yr]=da,gt[Kr]=ka,gt[an]=xa,gt[Jr]=xa,gt[$n]=Oa,gt[on]=Sa,gt[Gn]=Na,gt[Zn]=ja,gt[Jn]=Ta,gt[Wn]=Mi,gt[Cn]=qi,gt[ct]=Ri,gt[Vr]=Ti,gt[Qr]=Pi,gt[ln]=mi,gt[pn]=ki,gt[Mn]=wi,gt[qn]=xi,gt[En]=Oi,gt[un]=Oi,gt[Tn]=Si,gt[Pn]=Ni,gt[An]=ji;var mt=[],kt=0,wt=[],xt=0,Ot=-1,St=0,Nt=!1,jt=!1,Tt=6e3,Pt=0,At=0,It=0,Et,$t=0,Mt,qt,_t=[],Rt=[],Ft=[],Wt,Ct,Lt=[],Bt,Dt,Xt=0,zt=100,Gt=3e4,Zt=1e4,Jt=2e5,Vt=Gt,Qt,Ut;function Ht(){return St=xt=kt=0,yt=Zr,vt=dt=ht=bt=tr[1]=ue,er[1]=er,Pu(),1}function Yt(e){return mt[kt++]=Zr,yt=jn,vt=e}function Kt(e,r,n){return qo(),wt[xt++]=Pt,Pt=0,wt[xt++]=jt,wt[xt++]=Nt,wt[xt++]=e,wt[xt++]=r,wt[xt++]=pe,wt[xt++]=tr[1],wt[xt++]=bt,wt[xt++]=ht,wt[xt++]=dt,wt[xt++]=vt,wt[xt++]=St,wt[St=xt++]=Un,wt[xt++]=kt+2,wt[xt++]=!1,mt[kt++]=yt,mt[kt++]=n?Jr:an,yt=jn,qt=ue,jt=Nt=!1,vt=e}function ei(e){return Yt(e),ni(!(It=0)),vt}function ri(){return $t<=0&&(yt!==Zr||0<kt)}function ni(e){if(!(0<$t)){var r=Et;for(Qt=(new Date).getTime(),wt.length=xt;yt===Zr&&0<kt;)yt=mt[--kt];Pt=Tt,Et=e=e||Et,Pr[1]=E(e);try{ti()}catch(e){if(e!==_t){debugger;Ou(hu,"caught: "+e.toString()),Va(De(["unknown","$"+e.toString()]))}qo()}finally{Et=r,wt.length=xt,Gt<Vt&&xt<Vt-Zt/2&&(Vt-=Zt/2)<Gt&&(Vt=Gt),si()}0<Ns.TextAvail()&&P.hasOwnProperty("console-out")&&P["console-out"](y,Ns.TakeText())}}function ti(){var e=0;do{if(xu!==wu[1])return Va(Le(We("symtrace"),Le(Le(ir,Le(wu,ue)),Le(Le(ir,Le(xu,ue)),Le(Le(ir,Le(wu[1],ue)),ue))))),void(xu=wu[1]);if(Vt<xt&&(Va(De(["internal","$maximum stack depth exceeded"])),Vt=xt+Zt,Jt<xt))return Ou(hu,"intractable recursion"),Ht(),void qo();if(1e3<=++e){e=0;if(wt.length=xt,1e4<(new Date).getTime()-Qt)return void Va(De(["internal","$unresponsive"]));if(0<Pt&&!Et&&0==It&&(Pt-=1e3)<=0){Pt=Tt,yt!==Zr&&(mt[kt++]=yt,yt=Zr);break}}}while(gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),gt[yt](),yt!=Zr)}var ii=[],ai=[],ui=[],oi=[],fi=[],ci=[];function si(){var e=(new Date).getTime(),r=e-Qt;Ut===L&&(ii[Ut=0]=Qt,ui[0]=0,oi[0]=0,fi[0]=0,ci[0]=0),++ui[Ut],oi[Ut]+=r,fi[Ut]<r&&(fi[Ut]=r),++ci[Ut],e>=ii[Ut]+200&&(ai[Ut]=e-ii[Ut],50<++Ut&&(Ut=0),ii[Ut]=e,ui[Ut]=0,oi[Ut]=0,fi[Ut]=0,ci[Ut]=0)}function li(e,r){e=e||4,r=r||1e3;for(var n=[],t=[],i=ii.length-1,a=Ut-1,u=e*r;0<=--i&&(n.push({start:ii[a],width:ai[a],runtime:oi[a],peak:fi[a],runcount:ui[a],counter:ci[a]}),--a<0&&(a=ii.length-1),!((u-=ai[a])<0)););if(0===n.length)return[];var o=n[0];(new Date).getTime()-o.start>3*r&&t.push({start:o.start+r,width:r,cpu:0,peak:0,average:0,samples:0});for(var f=o.start+o.width-r,c=1;t.length<e;)if(f>=o.start){var s=o.peak;r<s&&(s=r);var l=Number((o.runtime/o.width).toFixed(3)),p=Math.round(o.runtime/o.runcount);s==r&&(l=1,p=1e3),t.push({start:f,width:r,cpu:l,peak:s,average:p,samples:o.counter}),f-=r}else{if(c>=n.length)break;o=n[c++]}return t}function pi(){return Rt}function gi(e,r,n,t){vt=r,dt=n,ht=t,bt=e,mt[kt++]=$n,yt=Zr,$t=1}function vi(e){if(e[U]!==ue)Wt=e[U];else{if(e[1]===e)return ue;Wt=e[1]}return Ct=e,Ft}function di(e,r){return Bt=e,Dt=r,Lt}function hi(){}function bi(){var e=vt,r=0;if(e[0]!==D){if(e[0]===Q&&zu(e[3])){if(B((vt=e)[3]))return void(yt=ln);if(e[3]instanceof Gu)return void(yt=Mn)}return vt=e[1],void(yt=mt[--kt])}for(var n=e[1];n[0]===X;){if(++r>zt)return yt=mt[--kt],void(vt=ue);if(n[3]!==ue)n=n[3];else{if(n[1]===n)break;if((n=n[1])[0]===Q)return yt=Nn,bt=n,ht=Ge,dt=e[2],void(vt=n)}}if(n[0]===D&&I(n[1])||n[0]===J||n[0]===O||n[0]===V)return yt=Nn,bt=e[1],ht=Ge,dt=e[2],void(vt=n);yt=I(n)?mt[--kt]:yn}function yi(){vt[0]===X&&(vt=W(vt[U])),bt=vt[0]===D?vt:Ze,ht=ue,yt=Nn}function mi(){if(ht=Xu(kr,ue),0===vt[3].length)return vt=ht,void(yt=mt[--kt]);wt[xt++]=vt,wt[xt++]=ht,wt[xt++]=0,mt[kt++]=pn,(vt=vt[3][0])===L&&(vt=Xe),yt=jn}function ki(){if(dt=wt[xt-1]++,ht=wt[xt-2],bt=wt[xt-3],ht[3][dt++]=vt,dt<bt[3].length)return mt[kt++]=pn,vt=bt[3][dt],void(yt=jn);xt-=3,vt=ht,yt=mt[--kt]}function wi(){if(ht=Zu(),0===(dt=lo(Object.getOwnPropertyNames(vt[3]).reverse()))[3].length)return vt=ht,void(yt=mt[--kt]);wt[xt++]=vt,wt[xt++]=ht,wt[xt++]=dt,mt[kt++]=qn,(vt=vt[3][dt[3][dt[3].length-1]])===L&&(vt=Xe),yt=jn}function xi(){if(dt=wt[xt-1],ht=wt[xt-2],bt=wt[xt-3],vt===Xe?dt[3].pop():ht[3][dt[3].pop()]=vt,0<dt[3].length)return mt[kt++]=qn,vt=bt[3][dt[3][dt[3].length-1]],void(yt=jn);xt-=3,vt=ht,yt=mt[--kt]}function Oi(){if(wt[xt++]=yt===En?Ge:ue,wt[xt++]=ue,wt[xt++]=vt[1],wt[xt++]=vt[2][1],wt[xt++]=vt[2][2][1],(vt=vt[1])[0]===D){var e=vt[1][U][ne];if(e===Ba&&vt[2][2][2]===ue)vt=vt[2],yt=yn;else{if(e!==Da)return xt-=5,vt=ue,void(yt=mt[--kt]);vt=vt[2][1],yt=jn}mt[kt++]=Tn}else yt=Tn}function Si(){wt[xt-4]=vt,vt=wt[xt-2],mt[kt++]=Pn,yt=jn}function Ni(){wt[xt-2]=vt,vt=wt[xt-1],mt[kt++]=An,yt=jn}function ji(){var e=wt[xt-5],r=vt,n=wt[xt-2],t=wt[xt-3],i=wt[xt-4];t[0]===D&&t[1][U][ne]===Da&&(i=Le(i,t[2][2])),xt-=5,vt=ns(i,n,r,e),yt=mt[--kt]}function Ti(){wt[xt++]=ht,wt[xt++]=dt,mt[kt++]=Qr,yt=jn}function Pi(){vt[0]===X&&(vt=W(vt[U])),bt=vt[0]===D?vt[2][1]:Ze,dt=wt[--xt],ht=wt[--xt],yt=Nn}function Ai(){var r,n,e,t,i=vt,a=dt,u=ht!==ue;if(i[0]===X&&(i=W(i[U])),i[0]===J)return e=a[2][2][1],n=a[2][1],r=a[1],ku<=ou&&(Nu(ku,js(i,{quote:Ge}),a,u),mt[kt++]=on),u?r[0]!==D&&n[0]!==D&&e[0]!==D&&r[0]!==Q&&n[0]!==Q&&e[0]!==Q?(vt=i[3](r[1],n[1],e[1],i))===Rt?void gi(i,r[1],n[1],e[1]):vt===Ft?(bt=Ct,ht=Ge,void(vt=Wt)):vt===Lt?void wa(Bt,Dt,a,!0):void(yt=mt[--kt]):(wt[xt++]=i,wt[xt++]=e,wt[xt++]=n,vt=r,mt[kt++]=fn,void(yt=jn)):(vt=i[3](r,n,e,i))===Rt?void gi(i,r,n,e):vt===Ft?(bt=Ct,void(vt=Wt)):vt===Lt?void wa(Bt,Dt,a):void(yt=mt[--kt]);if(i[0]===O||i[0]===Q)if(ku<=ou&&(Nu(ku,js(i,{quote:Ge}),a,u),mt[kt++]=on),i[0]===O&&yt!==ft&&u&&(vt=!1,a[0]===D?(r=a[1])[0]!==D&&r[0]!==Q&&(a[2][0]===D?(n=a[2][1])[0]!==D&&n[0]!==Q&&a[2][2][0]!==D&&(vt=i[3](2,function(e){return 0<=e&&e<2?[r[1],n[1]][e]:ue},i,ue)):vt=i[3](1,function(e){return 0===e?r[1]:ue},i,ue)):vt=i[3](0,function(e){return ue},i,ue),vt&&vt!==Rt&&vt!==Ft&&vt!==Lt||mt[kt-1]===an))yt=mt[--kt];else{yt===ft?(wt[xt]=wt[xt-1],++xt):wt[xt++]=ue,ku<=ou&&(Nu(ku,js(i,{quote:Ge}),a,u),mt[kt++]=on);for(var o=0;a[0]===D;)wt[xt++]=a[1],++o,a=a[2];wt[xt++]=o,wt[xt++]=u?0:o,wt[xt++]=i,yt=Wn}else if(i[0]===V){if(ku<=ou&&(Nu(ku,js(i,{quote:Ge}),a,!1),mt[kt++]=on),(vt=i[3](a,i))!==Rt)return vt===Ft?(bt=Ct,ht=ue,void(vt=Wt)):void(vt!==Lt?yt=mt[--kt]:wa(Bt,Dt,a));gi(i,a)}else i[0]!==D||i[1]!==Qe&&i[1]!==Je&&i[1]!==Ve&&i[1]!==Ue&&i[1]!==He&&i[1]!==Ye?(vt=ue,yt=mt[--kt]):(t=i[2][1],mu<=ou&&(Nu(mu,js(bt),a,u),mt[kt++]=on),wt[xt++]=pe,yt===ft?(wt[xt]=xt-2,++xt):wt[xt++]=tr[1],t!==Ze&&t[0]===X&&t[H]!==ue?t[U]===i?(i[1]===Qe?(u=!1,ht=ue,t[H]!==ce&&(i=zr(i,pe))):i[1]===Ue&&(i=zr(i,t[H])),"string"!=typeof i?(t=i[2][1],e=i[2][2][1],t=t[H],e[0]!==D?e[0]===X?e[1]!==He?e===ue||e[H]===t?(wt[xt++]=bt,wt[xt++]=i,vt=a,yt=u?(mt[kt++]=Vn,yn):Vn):Va(De(["internal","$parameter in foreign namespace: "+de(e[H])+Ls.NSinfix+e[Y]+" from: "+de(t)])):Va(De(["internal","$let parameter must be tuple"])):Va(De(["internal","$parameter is not a symbol"])):(a[0]!==D?r=ue:(r=a[1],a=a[2]),wt[xt++]=bt,wt[xt++]=i,wt[xt++]=ht,wt[xt++]=a,wt[xt++]=e,wt[xt++]=0,vt=r,yt=u?r[0]===D||r[0]===Q?(mt[kt++]=en,jn):(vt=r[S],en):en)):Va(De(["internal",i]))):Va(De(["internal","$privilege violation in "+js(bt)])):Va(De(["internal","$namespace invalid in "+js(bt)])))}function Ii(){var e=wt[xt-1];wt[xt-1]=vt,yt=(vt=e)===ue?cn:(mt[kt++]=cn,jn)}function Ei(){var e=wt[xt-2];wt[xt-2]=vt,yt=(vt=e)===ue?sn:(mt[kt++]=sn,jn)}function $i(){var e=wt[--xt],r=wt[--xt],n=vt,t=wt[--xt];if((vt=t[3](e,r,n,t))!==Rt)return vt===Ft?(vt=Ct,dt=Le(e,Le(r,Le(n,ue))),void(yt=In)):void(vt!==Lt?yt=mt[--kt]:wa(Bt,Dt,Le(e,Le(r,Le(n,ue)))));gi(t,e,r,n)}function Mi(){var e,r=wt[xt-3],n=xt-3-r,t=wt[xt-2],i=wt[xt-1];function a(e){return e<0||r<=e?ue:wt[n+e]}if(t<r)return vt=wt[n+t],yt=ht===ur&&1==t||ht===kr&&(0===t||1===t)?Cn:(mt[kt++]=Cn,jn),void(wt[xt++]=ht);if(wt[xt++]=St,wt[St=xt++]=lt,mt[kt++]=ct,wt[xt++]=kt,wt[xt++]=!1,(vt=i[0]===Q?u(i[x])?Ao(i,r,0,a):jo(null,i,r,0,a):i[3]!==ue?i[3](r,a,i,wt[n-1]):ue)===Rt)return _i(),mt[kt-1]=Wn,yt=Zr,void($t=1);if(vt!==Ft)if(vt!==Lt)yt=mt[--kt];else{for(dt=ue,e=r;0<=--e;)dt=Le(wt[n+e],dt);wa(Bt,Dt,dt)}else{for(vt=Ct,dt=ue,e=r;0<=--e;)dt=Le(wt[n+e],dt);yt=In}}function qi(){ht=wt[--xt];var e=wt[xt-3],r=wt[xt-2];wt[xt-3-e+r]=vt,wt[xt-2]=r+1,yt=Wn}function _i(){xt-=2,wt[--xt]!==lt&&Ou(hu,"naanUnlinkArbFrame: lost frame sync"),(St=wt[--xt])<It&&$o()}function Ri(){var e=wt[xt-1];e&&e[x].trap?Iu(e,vt):(_i(),e=wt[xt-3],xt=xt-4-e,yt=mt[--kt])}function Fi(){var e=St;if(wt[e]!==Hn)return!1;for(var r=kt;;){var n=mt[--r];if(n!==On){if(n===tn||n===Qn)break;return!1}}for(;wt[e]===Hn;){if(wt[e+3]!==ue||wt[e+5][2][0]===D)return!1;e=wt[e-1]}return e}function Wi(e,r){if(r[1]!==Je&&r[1]!==Ue)return!1;var n,t;if(wt[e]===Kn)n=wt[e-3],t=Ci;else{if(wt[e]!==et)return!1;n=wt[e-wt[e-2]-6],t=Li}if(wt[e+2])return!1;if(n[1]===Je||n[1]===He){var i=n[2][1],r=r[2][1];if(i[H]!==r[H])return!1;for(var a=r;a=a[2][3][".parent"];)if(a===i)return!1}else if(n[1]!==Ue)return!1;return t(e)}function Ci(e){var r=wt[e-3],n=r[2][2][1];return n!==ue&&r[1]!==Ue&&(n[1]=wt[e-2]),kt=wt[e+1]-1,e-4}function Li(e){var r=wt[e-2],n=wt[e-6-r];if(n[1]!==Ue)for(var t=n[2][2][1],i=e-2-r,a=r;0<=--a&&t[0]===D;)t[1]!==ue&&(t[1][1]=wt[i]),++i,t=t[2];return kt=wt[e+1]-1,e-7-r}function Bi(){var e,r,n,t=Fi();!t||(n=Wi(t,r=wt[(e=xt)-1]))&&(St=wt[t-1],wt[n+0]=wt[e-2],wt[n+1]=r,xt=n+2)}function Di(e){var r=Fi();if(r){var n=xt,t=wt[n-4-e],i=Wi(r,t);if(i){for(St=wt[r-1],wt[i+0]=wt[n-5-e],wt[i+1]=t,wt[i+2]=wt[n-3-e],wt[i+3]=wt[n-2-e],wt[i+4]=wt[n-1-e],n-=e,i+=5;0<=--e;)wt[i++]=wt[n++];xt=i}}}function Xi(){for(var e=wt[--xt],r=wt[xt-1-e],n=wt[xt-2-e],t=wt[xt-3-e],i=vt;;){if(r[0]===D)wt[xt++]=i,++e,r=r[2];else if(n[0]!==D){Di(e);for(var a=wt[xt-4-e],u=a[2][1][H],r=a[2][2][1],o=xt-e,f=!1;r[0]===D;){if(i=r[1][1],r[1]===ue)f=!0;else{if(r[1][0]!==X)return void Va(De(["internal","$parameter is not a symbol"]));if(r[1][H]!==u)return void Va(De(["internal","$parameters in foreign namespace: "+de(r[1][H])+Ls.NSinfix+r[1][Y]+" from: "+de(u)]));r[1][1]=f?ue:wt[o]}wt[o++]=i,r=r[2]}return wt[xt++]=e,ht=ue,dt=a[2][2][2],vt=ue,wt[xt++]=St,wt[St=xt++]=et,mt[kt++]=tn,wt[xt++]=kt,wt[xt++]=!1,yt=wn,"number"==typeof(i=wt[xt-11-e])&&(a=tr[1],tr[1]=wt[i],wt[xt-11-e]=a),void(pe=u)}if(n[0]!==D?i=ue:(i=n[1],n=n[2]),t!==ue){if(i[0]===D||i[0]===Q)break;i=i[S]}}wt[xt-2-e]=n,wt[xt-1-e]=r,wt[xt++]=e,vt=i,mt[kt++]=en,yt=jn}function zi(){var e;Bi();var r=wt[xt-1],n=r[2][2][1];wt[xt++]=n[1],A(n)&&(n[1]=vt),ht=ue,dt=r[2][2][2],vt=ue,wt[xt++]=St,wt[St=xt++]=Kn,mt[kt++]=Qn,wt[xt++]=kt,wt[xt++]=!1,yt=wn,"number"==typeof(e=wt[xt-8])&&(n=tr[1],tr[1]=wt[e],wt[xt-8]=n),pe=r[2][1][H]}function Gi(){var e,r=wt[xt-1];r&&r[x].trap?Iu(r,vt):(xt-=2,wt[--xt]!==Kn&&Ou(hu,"nadiCallNoSpread2: lost frame sync"),(St=wt[--xt])<It&&$o(),(r=(e=wt[xt-2])[2][2][1])!==ue&&e[1]!==Ue&&(r[1]=wt[xt-1]),xt-=3,tr[1]=wt[--xt],pe=wt[--xt],yt=mt[--kt])}function Zi(){var e=wt[xt-1];if(e&&e[x].trap)Iu(e,vt);else{xt-=2,wt[--xt]!==et&&Ou(hu,"nadiCallComplete: lost frame sync"),(St=wt[--xt])<It&&$o();var r=wt[--xt],e=wt[xt-4-r];if(e[1]!==Ue)for(var n=e[2][2][1],t=xt-r,i=r;0<=--i&&n[0]===D;)n[1]!==ue&&(n[1][1]=wt[t]),++t,n=n[2];xt-=r+5,tr[1]=wt[--xt],pe=wt[--xt],yt=mt[--kt]}}function Ji(){ht=Ge,dt=vt,Mt=vt=ue,yt=wn}function Vi(){wt[xt++]=St,wt[St=xt++]=Hn,wt[xt++]=kt,wt[xt++]=!1,wt[xt++]=ht,wt[xt++]=dt,wt[xt++]=dt,yt=xn}function Qi(){for(var e=wt[xt-1],r=wt[xt-3];;){if(Mt=vt,yt===On?(yt=xn,e=e[2],wt[xt-1]=e):yt===Sn&&(yt=xn,A(Mt)?(r=ue,e=e[1][2],wt[xt-3]=r):e=e[2],wt[xt-1]=e),e[0]!==D){if(r!==ue)return e=wt[xt-2],void(wt[xt-1]=e);yt=mt[--kt]}else{if(Nt&&0==--Nt)return void Eu({state:We("task"),body:wt[xt-2],task:e,loop:r,value:Mt});if(e[1].breakpoint&&Au(e))return;if(e[1][0]!==D){if((vt=e[1])[0]===Q)return mt[kt++]=On,void(yt=jn);vt=vt[1],yt=On;continue}if(e[1][1][0]===D){if(e[1][1][1][0]!==D)return vt=e[1][1],mt[kt++]=Sn,void(yt=jn);r===ue&&e[2][0]!==D?(e=e[1],r=ue,wt[xt-1]=e,wt[xt-2]=e,wt[xt-3]=r):(Nt&&++Nt,wt[xt-1]=e[2],e=e[1],r=ue,wt[xt++]=St,wt[St=xt++]=Hn,wt[xt++]=kt,wt[xt++]=!1,wt[xt++]=r,wt[xt++]=e,wt[xt++]=e,mt[kt++]=xn),wt[xt-6]!==Hn&&Ou(hu,"nadiBody1: lost frame sync");continue}if(vt=e[1],yt=vt[1][U]!==ue?(bt=vt[1],ht=Ge,dt=vt[2],vt=bt[U],Nn):jn,!(ou<=du&&r===ue&&e[2][0]!==D))return void(mt[kt++]=On)}var n=wt[xt-4];return n&&n[x].trap?(mt[kt++]=yt,yt=st,void Iu(n,vt)):(xt-=5,wt[--xt]!==Hn&&Ou(hu,"nadiBody4: lost frame sync"),void(St=wt[--xt]))}}function Ui(){xt-=5,wt[--xt]!==Hn&&Ou(hu,"nadiBody4: lost frame sync"),St=wt[--xt],yt=mt[--kt]}function Hi(){wt[xt++]=ue,wt[xt++]=ue,wt[xt++]=vt,yt=mn}function Yi(){var e=wt[xt-1];if(e[0]!==D)return vt=wt[xt-2],xt-=3,void(yt=mt[--kt]);vt=e[1],mt[kt++]=kn,yt=jn}function Ki(){var e=wt[xt-1],r=wt[xt-3],n=Le(vt,ue);r!==ue?r[2]=n:wt[xt-2]=n,wt[xt-3]=n,wt[xt-1]=e[2],yt=mn}function ea(){wt[xt++]=vt,yt=nn,vt=Ge}function ra(){var e=wt[xt-1];if(!A(vt)||e[0]!==D)return--xt,void(yt=mt[--kt]);vt=e[1],wt[xt-1]=e[2],mt[kt++]=nn,yt=jn}function na(){wt[xt++]=vt,yt=zn,vt=ue}function ta(){var e=wt[xt-1];if(A(vt)||e[0]!==D)return--xt,void(yt=mt[--kt]);vt=e[1],wt[xt-1]=e[2],mt[kt++]=zn,yt=jn}function ia(){wt[xt++]=vt,dt=vt[2][1],vt=dt,mt[kt++]=hn,yt=jn}function aa(){es(wt[--xt][1],vt),yt=mt[--kt]}function ua(){wt[xt++]=0,wt[xt++]=vt,yt=Rn}function oa(){var e=wt[xt-1];if(e[0]!==D)return xt-=2,vt=ue,void(yt=mt[--kt]);vt=e[1][1],mt[kt++]=Fn,yt=jn}function fa(){var e=wt[xt-1];yt=A(vt)?(0!==wt[xt-2]&&(wt[wt[xt-2]]=tt),xt-=2,dt=e[1][2],ht=ue,wn):(wt[xt-1]=e[2],Rn)}function ca(){vt=(wt[xt++]=vt)[1],mt[kt++]=vn,yt=jn}function sa(){var e=wt[--xt];vt=e[2][1][1]=Le(vt,e[2][1][1]),yt=mt[--kt]}function la(){wt[xt++]=vt[2][2],wt[xt++]=vt[2][1],vt=vt[1],wt[xt++]=vt,mt[kt++]=Bn,yt=jn}function pa(){wt[xt-1]=vt,vt=wt[xt-2],mt[kt++]=Dn,yt=jn}function ga(){la(),mt[kt-1]=Hr}function va(){yt===Dn?wt[xt-2]=vt:wt[xt-1]=vt,dt=wt[--xt],vt=wt[--xt],ht=wt[--xt],yt===Hr&&vt[0]===D&&(vt[2][0]!==D?vt=vt[1]:(wt[xt++]=ht,wt[xt++]=vt[2],wt[xt++]=dt,mt[kt++]=Hr,vt=vt[1],ht=ue)),yt=Yr,wt[xt++]=ht,wt[xt++]=dt}function da(){var e=ue;if(dt=vt,vt=wt[--xt],ht=wt[--xt],!A(vt))return vt=ue,void(yt=mt[--kt]);switch(vt[0]){case D:if(dt===ue)e=vt;else if(dt[0]===G||dt[0]===Z){var r=Do(dt,65535);if(null!==r){for(e=vt,r=Math.abs(r);e[0]===D&&0<=--r;)e=e[2];s.negative(dt[3])||(e=e[1])}}else if(ya(vr))return;break;case X:if(ya(dr))return;if(ht===ue)return ba();e=ue;break;case k:if(ya(Sr))return;if(ht===ue)return ba();e=ue;break;case z:if(dt[0]!==G)return ya(mr)?void 0:ht===ue?ba():void ma("String");var n=Do(dt,Number.MAX_SAFE_INTEGER),e=We(n<0?vt[3].charAt(vt[3].length+n):vt[3].charAt(n));break;case G:return ha()?void 0:ya(hr)?void 0:ht===ue?ba():void ma("Number");case Z:return ha()?void 0:ya(br)?void 0:ht===ue?ba():void ma("Number");case Q:if(zu(vt[3])){if(e=ue,n=dt[0]===X?dt[Y]:dt[0]===z?dt[K]:(dt[0]===G||dt[0]===Z)&&Do(dt,Number.MAX_SAFE_INTEGER),B(vt[3]))if("length"==n)e=Fo(vt[3].length);else{if(ya(kr))return;if(dt[0]===G)(e=vt[3][n])===L&&(e=ue);else if(ht!==ue)return dt=Le(vt,Le(bt=dt,ht[1])),ht=kr,vt=Rr[3],void(yt=Nn)}else if(!1!==n)if(vt[3].hasOwnProperty(n))e=vt[3][n];else if(vt[3]instanceof Ju)ht!==ue?(e=fo(vt,n))===ue&&(e=fo(vt,".undefined",!0))!==ue&&(ht=Le(Le(Le(ir,Le(dt,ue)),ht[1]),ue)):(e=fo(vt,".."+n,!0))!==ue?ht=Le(ue,ue):(e=fo(vt,"..undefined",!0))!==ue&&(ht=Le(Le(Le(ir,Le(dt,ue)),ht[1]),ue));else if(ya(wr))return}else if(e=Oo(vt,dt),ht!==ue)return dt=Le(vt,Le(bt=dt,ht[1])),ht=ur,vt=Cr[3],void(yt=Nn);break;default:return ba()}if(ht===ue)return vt=e,void(yt=mt[--kt]);bt=dt,wt[xt++]=vt,mt[kt++]=Kr,dt=ht[1],ht=Ge,e[0]===X&&(e=W(e[U])),vt=e,yt=ft}function ha(){return(dt[0]===G||dt[0]===Z)&&(yt=mt[--kt],Va(De(["internal","numeric scalar dereference"]),ue),1)}function ba(){vt=ht===ue&&vt[0]===z&&(dt[0]===z&&"length"==dt[K]||dt[0]===X&&"length"==dt[Y])?Fo(vt[K].length):vt[0]===X?Le(ur,Le(vt,Le(dt,ht))):ue,yt=mt[--kt]}function ya(e){e=ts(e,dt);if(!A(e)){if(vt[0]===D)return;if(!A(e=ts(vt,dt)))return}return bt=dt,dt=Le(Le(ir,Le(vt,ue)),ht[1]),ht=Ge,e[0]===X&&(e=W(e[U])),vt=e,yt=Nn,1}function ma(e){e=Te(e,[ce,se]);dt=Le(e,Le(bt=dt,Le(vt,ht[1]))),ht=ur,vt=Cr[3],yt=Nn}function ka(){--xt,yt=mt[--kt]}function wa(e,r,n,t){var i=fo(e,r);i===ue&&(i=fo(e,".undefined",!0))!==ue&&(n=Le(Le(We(r),n),ue)),wt[xt++]=e,mt[kt++]=Kr,dt=n,ht=t?Ge:ue,i[0]===X&&(i=W(i[U])),vt=i,yt=ft}function xa(){qt=vt;var e=yt===Jr,r=wt[xt-1];if(r&&r[x].trap)return Iu(r,vt),wt[xt-13]=Nt,void(wt[xt-14]=jt);xt-=2,wt[--xt]!==Un&&Ou(hu,"nadiInterruptRestore: lost frame sync"),(St=wt[--xt])<It&&$o(),vt=wt[--xt],dt=wt[--xt],ht=wt[--xt],bt=wt[--xt],tr[1]=wt[--xt],pe=wt[--xt],xt-=2,jt?xt-=2:(Nt=wt[--xt],jt=wt[--xt]),e&&(vt=qt),Pt=wt[--xt],yt=Et?mt[--kt]:Zr}function Oa(){var e=bt,r=ht,n=dt,t=vt,i=e[0]>=J&&e[0]<=V?e[3](t,n,r,e):ue;i===Rt?gi(e,t,n,r):(vt=i,yt=mt[--kt])}function Sa(){ju(vt),yt=mt[--kt]}function Na(){wt[xt++]=ue,wt[xt++]=rt,wt[xt++]=ue,wt[xt++]=vt,wt[xt++]=St,wt[St=xt++]=Yn,wt[xt++]=kt,wt[xt++]=!1,ht=ue,dt=vt[1],vt=ue,mt[kt++]=Zn,yt=wn}function ja(){wt[xt-6]=vt,wt[xt-3]=pt,St<It&&$o(),wt[xt-7]===tt&&(er[1]=er),vt=wt[xt-5],ht=ue,dt=vt[2][2][1],vt=ue,mt[kt++]=Jn,yt=wn}function Ta(){vt=wt[xt-6],dt=wt[xt-7],ht=wt[xt-8],St=wt[xt-4];var e=wt[xt-1];e&&e[x].trap?Iu(e,vt):(xt-=2,wt[--xt]!==pt&&Ou(hu,"nadiCatch2: lost frame sync"),xt-=5,yt=(dt===tt||dt===rt||(dt===at?(Qa(vt),wt[St]==Yn&&(er[1]=er)):dt===ut?Ha(ht):dt===ot?Ya(ht):Ja(er[1],Ge)),mt[--kt]))}function Pa(){return ue}function Aa(e){return e[0]!==D&&e[0]!==Q?e[1]:(mt[kt++]=jn,e)}function Ia(e,r){return mt[kt++]=In,dt=r,e}function Ea(e){return mt[kt++]=Vr,ht=Ge,dt=e[2],e[1]}function $a(e){return mt[kt++]=Vr,ht=ue,dt=e[2],e[1]}$e("undefined",Pa,J);var Ma=Ee($a,V);function qa(e){return mt[kt++]=yn,e}function _a(e){return mt[kt++]=rn,e}function Ra(e){return mt[kt++]=Xn,e}function Fa(e){return mt[kt++]=bn,e}function Wa(e){return e[0]!==D?ue:(mt[kt++]=dn,e)}function Ca(e){return mt[kt++]=_n,e}function La(e){return e[2][1][0]!==X?ue:Xr(e[2][1])?(mt[kt++]=gn,e):vt}function Ba(e){return mt[kt++]=Ln,e}function Da(e){return mt[kt++]=Ur,e}function Xa(e){return mt[kt++]=En,e}function za(e){return mt[kt++]=un,e}function Ga(e){return mt[kt++]=Gn,e}function Za(){if(void 0===vt||void 0===dt||void 0===ht||void 0===bt)debugger;var e,r,n,t,i=St;if(xt<St||St+50<xt)debugger;for(t=0;t<xt;++t)if(void 0===wt[t])debugger;for(;0<i;){switch(wt[i]){case Kn:if(!I((r=wt[i-3])[1]))debugger;if(wt[i-6][0]!=k)debugger;if((n=wt[i+1])<0||kt+1<n)debugger;if(mt[n-1]!=Qn)debugger;break;case et:if((e=wt[i-2])<0||1e3<e)debugger;if(!I((r=wt[i-6-e])[1]))debugger;if(wt[i-9-e][0]!=k)debugger;if((n=wt[i+1])<0||kt+1<n)debugger;if(mt[n-1]!=tn)debugger;break;case lt:if((e=wt[i-4])<0||1e3<e)debugger;if((r=wt[i-2])[0]!=O&&r[0]!=Q)debugger;if(n=wt[i+1],mt[n-1]!=ct)debugger;break;case Hn:if((n=wt[i+1])<0||kt+1<n)debugger;break;case Yn:if(wt[i-4]<0||wt[i-4]>ot)debugger;if((n=wt[i+1])<0||kt+1<n)debugger;break;case pt:break;case Un:if(wt[i-7][0]!=k)debugger;break;default:debugger}if(wt[i-1]<0||wt[i-1]>=i)debugger;i=wt[i-1]}}function Ja(e,r){var n,t,i,a=St;if(Za(),e[0]===D&&e[1][0]===X&&"internal"==e[1][Y]&&e[2][1]===rr&&rr[U]!==ue)return Kt(Le(rr,ue),"escape"),mt[kt++]=yt,vt;if(er[U]!==ue&&r===ue)return er[1]===er&&(er[1]=e),yt=mt[--kt],Kt(Le(qr,Le(er[1],Le(Ge,ue))),"exception-rethrow"),Kt(Le(er,Le(e,ue)),"exception-hook"),mt[kt++]=yt,vt;for(vt=ue;0<a;){var u=wt[a];switch(u){case Kn:mu<=ou&&Tu(e),t=wt[a-2],(i=wt[a-3][2][2][1])!==ue&&(i[1]=t),tr[1]=wt[a-5],pe=wt[a-6];break;case et:for(mu<=ou&&Tu(e),t=wt[a-2],i=wt[a-6-t][2][2][1],n=t-1;0<=n;--n)i[1][1]=wt[a-3-n],i=i[2];tr[1]=wt[a-8-t],pe=wt[a-9-t];break;case lt:mu<=ou&&Tu(e);break;case Hn:break;case Yn:return wt[(St=a)-4]!==rt?(wt[a-4]===tt&&(er[1]=e),wt[a-4]=it,xt=a+3,kt=wt[a+1],mt[kt++]=Zn):(er[1]=e,St<It&&$o(),wt[a-4]=nt,xt=a+3,kt=wt[a+1],vt=wt[a-2],wt[xt++]=a-4,wt[xt++]=vt[2][1],mt[kt++]=Zn,mt[kt++]=Rn),er;case pt:break;case Un:if(tr[1]=wt[a-6],pe=wt[a-7],"future"==wt[a-8])wt[a-9][2][2][1][x][".exception"]=e;else{if("debugger"==js(er[1]))break;if(!/fiberwake|escape|xcallback/.test(wt[a-8]))break}return er[1]=er,xt=a+3,kt=wt[a+1],ue;default:Ou(hu,"nfuncThrow: unknown frame type on stack: "+u)}a=wt[a-1]}return er[1]!==er&&(e=er[1]),e[0]===D&&e[1][0]===X&&"internal"==e[1][Y]?e[2][1]!==rr&&Ou(hu,js(e[2][1])):"debugger"!=js(e)&&Ou(hu,"uncaught exception: "+js(e)),Ht(),Yt(De(["driver",101])),mt[kt++]=yt,vt}function Va(e){Ja(e,ue),yt=mt[--kt]}function Qa(e,r){for(var n,t,i,a,u=St;0<u;){var o=wt[u];switch(o){case et:if(t=wt[u-2],(a=wt[u-6-t])[1]!==He)return kt=wt[u+1],(St=u)<It&&$o(),xt=u+3,e;for(i=a[2][2][1],n=t-1;0<=n;--n)i[1][1]=wt[u-3-n],i=i[2];tr[1]=wt[u-8-t],pe=wt[u-9-t];break;case Kn:if((a=wt[u-3])[1]!==He)return kt=wt[u+1],(St=u)<It&&$o(),xt=u+3,e;t=wt[u-2],(i=a[2][2][1])!==ue&&(i[1]=t),tr[1]=wt[u-5],pe=wt[u-6];break;case lt:case Hn:break;case Yn:if(r)break;return wt[(St=u)-4]=at,wt[u-3]=e,xt=u+3,kt=wt[u+1],mt[kt++]=Zn,e;case pt:case Un:break;default:Ou(hu,"naanReturn: unknown frame type on stack: "+o)}u=wt[u-1]}return Ja(De(["internal","$orphaned return"]),ue)}function Ua(e,r){return Qa(e?r(0):Mt)}function Ha(e){for(var r,n,t,i,a=St;0<a;){var u=wt[a];switch(u){case et:if(r=wt[a-2],(i=wt[a-6-r])[1]===He){for(t=i[2][2][1],n=r-1;0<=n;--n)t[1][1]=wt[a-3-n],t=t[2];tr[1]=wt[a-8-r],pe=wt[a-9-r];break}case Kn:a=-1;continue;case lt:break;case Hn:if(wt[a+3]!==Ge)break;if(e!==ue&&Gc(e,wt[a+4][S])===ue)break;return kt=wt[a+1],xt=(St=a)+6,wt[a+3]=ue,wt[a+5]=ue,mt[kt++]=xn,Mt;case Yn:return wt[(St=a)-5]=e,wt[a-4]=ut,xt=a+3,kt=wt[a+1],mt[kt++]=Zn,Mt;case pt:case Un:break;default:Ou(hu,"nfuncBreak: unknown frame type on stack: "+u)}a=wt[a-1]}return Ja(De(["internal",'$break tag "'+js(e)+'" not found']),ue)}function Ya(e){for(var r,n,t,i,a=St;0<a;){var u=wt[a];switch(u){case et:if(r=wt[a-2],(i=wt[a-6-r])[1]===He){for(t=i[2][2][1],n=r-1;0<=n;--n)t[1][1]=wt[a-3-n],t=t[2];tr[1]=wt[a-8-r],pe=wt[a-9-r];break}case Kn:a=-1;continue;case lt:break;case Hn:if(wt[a+3]!==Ge)break;if(e!==ue&&Gc(e,wt[a+4][S])===ue)break;return kt=wt[a+1],xt=(St=a)+6,wt[a+5]=wt[a+4],mt[kt++]=xn,ue;case Yn:return wt[(St=a)-5]=e,wt[a-4]=ot,xt=a+3,kt=wt[a+1],mt[kt++]=Zn,Mt;case pt:case Un:break;default:Ou(hu,"nfuncContinue: unknown frame type on stack: "+u)}a=wt[a-1]}return Ja(De(["internal",'$continue tag "'+js(e)+'" not found']),ue)}function Ka(e,r){var n=[],t=[];function i(e){var r=jc(e)!==ue?e[H]:e,e=n.indexOf(r);return e<0&&(e=n.push(r)-1,t[e]={}),t[e]}function a(e,r){i(e)[e[Y]]=r}function u(e){return i(e)[e[Y]]}var o=ue;e:for(;0<e;){var f,c,s,l,p,g,v,d,h,b,y,m=wt[e];switch(m){case Kn:g=wt[e-2],v=wt[e-3],d=wt[e-4],wt[e-5],y=wt[e-6],h=v[1],(f=u(b=v[2][2][1]))===L&&(f=b[1]),a(b,g),p=b===ue?ue:Le(b,Le(b[1],Le(g,ue))),l=Le(h,Le(d,Le(p,Le(v,Le(y,ue)))));break;case et:for(c=wt[e-2],v=wt[e-6-c],d=wt[e-7-c],wt[e-8-c],y=wt[e-9-c],h=v[1],b=v[2][2][1],p=ue,s=c-1;0<=s;--s)(f=u(b[1]))===L&&(f=b[1][1]),p=Le(Le(b[1],Le(f,Le(wt[e-3-s],ue))),p),b=b[2];for(b=v[2][2][1],s=c-1;0<=s;--s)a(b[1],wt[e-3-s]),b=b[2];l=Le(h,Le(d,Le(p=ec(p,ue),Le(v,Le(y,ue)))));break;case lt:for(c=wt[e-4],h=(v=wt[e-2])[0]===O?gr:Or,p=ue,s=c-1;0<=s;--s)p=Le(wt[e-4-c+s],p);l=Le(h,Le(p,Le(v,ue)));break;case Hn:l=Le(h=wt[e+3]===ue?or:fr,Le(wt[e+4],Le(wt[e+5],ue)));break;case Yn:l=Le(h=cr,Le(wt[e-2],ue));break;case pt:break;case Un:l=Le(h=sr,Le(wt[e-7],Le(We(wt[e-8]),Le(wt[e-9],ue))));break;default:return Ou(hu,"nfuncStacktrace: unknown frame type on stack: "+m),ue}if(l[1]===ue&&Ou(hu,"nfuncStacktrace: bad frameid"),o=Le(l,o),e=wt[e-1],"number"==typeof r&&e<=r)break e}return ec(o,ue)}function eu(e,r){for(var n=St;0<n;){var t=wt[n];switch(t){case Kn:case et:case lt:case Hn:case Yn:case pt:case Un:if(0<e--){n=wt[n-1];continue}var i=wt[n+2];return i=i||(r?wt[n+2]=Zu():ue);default:return Ou(hu,"naanFrameHook: unknown frame type on stack: "+t),ue}}return ue}function ru(e){for(var r,n=St;0<n;){var t=wt[n];switch(t){case Kn:return wt[n-3];case et:return r=wt[n-2],wt[n-6-r];case lt:case Hn:case Yn:case pt:case Un:break;default:return Ou(hu,"nfuncCaller: unknown frame type on stack: "+t),ue}n=wt[n-1]}return ue}function nu(e){for(var r,n=St;0<n;){var t=wt[n];switch(t){case Kn:return wt[n-6];case et:return r=wt[n-2],wt[n-9-r];case lt:case Hn:case Yn:case pt:case Un:break;default:return Ou(hu,"nfuncNscaller: unknown frame type on stack: "+t),ue}n=wt[n-1]}return ue}function tu(e,r){var n,t,i,a,u,o,f,c,s;function l(e){switch(e){case et:case Kn:case lt:case Yn:case pt:case Un:return 3;case Hn:return 6}}(s=[]).saveSelf=tr[1],s.saveExecNS=pe,s.stephook=jt,s.stepping=Nt,s.stack1=vt,s.stack2=dt,s.stack3=ht,s.stack4=bt,s.runLimit=Pt,a=St,u=xt,f=kt;e:for(;0<a;){switch(n={},0!==It&&It<a&&(n.sprint=!0),n.ftype=wt[a],o=a+l(n.ftype),n.runargs=wt.slice(o,u),n.ftype){case et:for(n.argcount=wt[a-2],u=a-9-n.argcount,n.execNS=wt[a-9-n.argcount],n.saveSelf=wt[a-8-n.argcount],n.fname=wt[a-7-n.argcount],n.fbind=wt[a-6-n.argcount],n.feval=wt[a-5-n.argcount],n.inarg=wt[a-4-n.argcount],n.inparm=wt[a-3-n.argcount],n.arglist=[],i=n.fbind[2][2][1],t=n.argcount-1;0<=t;--t)n.arglist.push(i[1][1]),i=i[2];if(c=wt[a+1]-1,n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n),r){if(n.fbind[1]===Ve||n.fbind[1]===Ye)for(i=n.fbind[2][2][1],t=n.argcount-1;0<=t;--t)i[1]!==ue&&(i[1][1]=wt[a-3-t]),i=i[2];tr[1]=n.saveSelf,pe=n.execNS}if(!0===e&&n.fbind[1]!==He)break e;break;case Kn:if(u=a-6,n.execNS=wt[a-6],n.saveSelf=wt[a-5],n.fname=wt[a-4],n.fbind=wt[a-3],i=n.fbind[2][2][1],n.arg=i[1],c=wt[a+1]-1,n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n),r&&(n.fbind[1]!==Ve&&n.fbind[1]!==Ye||i===ue||(i[1]=wt[a-2]),tr[1]=n.saveSelf,pe=n.execNS),!0===e)break e;break;case lt:for(n.argcount=wt[a-4],u=a-6-n.argcount,n.targetThis=wt[a-6-n.argcount],n.arglist=[],t=n.argcount-1;0<=t;--t)n.arglist.push(wt[a-5-t]);n.inarg=wt[a-3],n.fbind=wt[a-2],c=wt[a+1]-1,n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n),r&&(tr[1]=n.saveSelf,pe=n.execNS);break;case Hn:u=a-1,n.loop=wt[a+3],n.body=wt[a+4],n.task=wt[a+5],c=wt[a+1],n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n);break;case Yn:case pt:u=a-5,n.tag=wt[a-5],n.status=wt[a-4],n.result=wt[a-3],n.catchargs=wt[a-2],c=wt[a+1],n.runstates=mt.slice(c,f),n.hook=wt[a+2],s.push(n);break;case Un:break e;default:Ou(hu,"naanSaveProcState: unknown frame type on stack: "+n.ftype)}if(a=wt[a-1],f=c,"number"==typeof e&&a<=e)break e}return r&&((St=a)<It&&$o(),xt=0===St?0:a+l(wt[St]),kt=c),s}function iu(e){var r,n,t,i,a;for(Pt=e.runLimit,r=e.length-1;0<=r;--r){switch((n=e[r]).ftype){case et:for(wt[xt++]=n.execNS,wt[xt++]=n.saveSelf,wt[xt++]=n.fname,wt[xt++]=n.fbind,wt[xt++]=n.feval,wt[xt++]=n.inarg,wt[xt++]=n.inparm,i=n.fbind[2][2][1],t=0;t<n.argcount;++t)wt[xt++]=i[1][1],n.fbind[1]!==Ve&&n.fbind[1]!==Ye||i[1]===ue||(i[1][1]=n.arglist[t]),i=i[2];wt[xt++]=n.argcount,wt[xt++]=St,St=xt,wt[xt++]=et,wt[xt++]=kt+1,wt[xt++]=n.hook;break;case Kn:wt[xt++]=n.execNS,wt[xt++]=n.saveSelf,wt[xt++]=n.fname,wt[xt++]=n.fbind,i=n.fbind[2][2][1],wt[xt++]=i[1],n.fbind[1]!==Ve&&n.fbind[1]!==Ye||i===ue||(i[1][1]=n.arg),wt[xt++]=St,St=xt,wt[xt++]=Kn,wt[xt++]=kt+1,wt[xt++]=n.hook;break;case lt:for(wt[xt++]=n.targetThis,t=0;t<n.argcount;++t)wt[xt++]=n.arglist[t];wt[xt++]=n.argcount,wt[xt++]=n.inarg,wt[xt++]=n.fbind,wt[xt++]=St,St=xt,wt[xt++]=lt,wt[xt++]=kt+1,wt[xt++]=n.hook;break;case Hn:wt[xt++]=St,St=xt,wt[xt++]=Hn,wt[xt++]=kt,wt[xt++]=n.hook,wt[xt++]=n.loop,wt[xt++]=n.body,wt[xt++]=n.task;break;case Yn:case pt:wt[xt++]=n.tag,wt[xt++]=n.status,wt[xt++]=n.result,wt[xt++]=n.catchargs,wt[xt++]=St,St=xt,wt[xt++]=n.ftype,wt[xt++]=kt,wt[xt++]=n.hook;break;case Un:default:Ou(hu,"naanRunProcState: unknown frame type on stack: "+n.ftype)}for(a=0;a<n.runstates.length;++a)mt[kt++]=n.runstates[a];for(t=0;t<n.runargs.length;++t)wt[xt++]=n.runargs[t];n.sprint&&(0===It?Eo():St<It&&(It=St))}vt=e.stack1,dt=e.stack2,ht=e.stack3,bt=e.stack4,jt=e.stephook,Nt=e.stepping,tr[1]=e.saveSelf,pe=e.saveExecNS}function au(){var e=Po(0);return e[w]=ue,e[x].execstate=tu(!0),e}function uu(e,r){return e[0]!==Q||zu(e[x])||!B(e[x].execstate)?ue:(iu(e[x].execstate),vt=r)}var ou=hu,fu=0,cu=0,su=30,lu=0,pu=3*su,gu="",vu=0,du=0,hu=1,bu=2,yu=3,mu=4,ku=5,wu=ue,xu=wu[1];function Ou(e,r){if(e<=ou&&P.hasOwnProperty("debug-write"))try{P["debug-write"](r,e)}catch(e){}}function Su(){var e="",r=0;for((pu<=fu||fu<lu)&&(cu=Math.floor(fu/su)*su-2*su,lu=cu+su,pu=cu+3*su,0<cu&&(e="*")),0<cu&&(e+=fu.toString(),e=" ".substring(e.length)+e+" ",r=cu);r++<fu;)e+=r%2==0?"| ":" ";return e}function Nu(e,r,n,t){0<gu.length&&Ou(vu,gu);for(var i=n,a="";i[g]===D;)0<a.length&&(a+=" "),t&&i[1][0]===X?a+=js(i[1][1],{quote:Ge}):a+=js(i[1],{quote:Ge}),i=i[N];gu=Su()+r+"("+a+")",vu=e,++fu}function ju(e){--fu<0&&(fu=0),0<gu.length?(Ou(vu,gu+"==> "+js(e,{quote:Ge})),gu=""):Ou(mu,Su()+"==> "+js(e,{quote:Ge}))}function Tu(e){--fu<0&&(fu=0),0<gu.length?(Ou(vu,gu+"==> unknown"),gu=""):Ou(mu,Su()+"==> unknown"),Ou(mu,"==> proc terminated by throw: ",js(e))}function Pu(){ou=bu,gu="",vu=fu=0}function Au(e){if(Wu[1]===Wu&&e[1].breakpoint[0]===Q){var r=e[1].breakpoint[x];if(zu(r)&&A(r.enable))return Wu[1]=e,Kt(Le(Ma,Le(r.proc,Le(e[1].breakpoint,Le(Mt,ue)))),"breakpoint"),1}}function Iu(e,r){var n;e[x].steps?(0<=(n=Do(e[x].steps,65535))&&(Nt=n+1,jt=e[x].trap),delete e[x].steps):Kt(Le(Ma,Le(e[x].trap,Le(r,ue))),"frametrap"),delete e[x].trap}function Eu(e){var r=jt;jt=Nt=!1;var n=Zu();R(n[x],e),Kt(Le(Ma,Le(r,Le(n,ue))),"steptrap")}function $u(){return Ka(St)}function Mu(e){return e[1][0]!==X?ue:(wu=e[1],xu=wu[1],e[1])}function qu(e,r){for(var n="",t=0;t<e;++t)n+=js(r(t)),t<e-1&&(n+=" ");return""!==n&&Ou(bu,n),Ge}function _u(e,r){var n=ou;ou=bu,qu(e,r),ou=n;debugger;return Ge}function Ru(e){var r=ou;return null===(ou=Do(e,9))&&(ou=r),Fo(r)}function Fu(e,r){function i(e,r){if(e[0]===Q){var n,t=e[x];if(!B(t)||!zu(t))return;for(n=0;n<t.length;++n)i(t[n],r)}else{if(e[0]!==D)return;r===Xe?delete e[1].breakpoint:e[1].breakpoint=r}return 1}if(0===e)return E(Wu[1]===Wu);var n=r(0);if(n[0]===X)return 1<e?ue:(n===Ge?Wu[1]=Wu:n===ue&&(Wu[1]=ue),E(Wu[1]===Wu));if(2<e)return ue;var t=r(1);if(t!==ue){if(t!==Xe){e=Zu(),r=e[x];return r.enable=Ge,r.proc=t,i(n,e)?e:ue}i(n,t)}else if(n[1].breakpoint)return n[1].breakpoint;return ue}var Wu=$e("breakpoint",Fu,O);function Cu(e,r,n){var t,i,e=Do(e,65535);if(null===e||e<0)return ue;if(r===ue)return eu(e);if(r[0]===G){if(s.negative(r[3]))return ue;t=r,i=n}else i=r;e=eu(e,!0);return e!==ue&&(e[x].trap=i,t?e[x].steps=t:delete e[x].steps),e}var Lu="*饢* Rcz *饢*",Bu=function(){};function Du(e){var p=new WeakMap;return function e(r){var n,t;if(p.get(r))return p.get(r);if(B(t=r[x])){n=Xu(kr,ue),p.set(r,n);for(var i,a=n[x],u=0;u<t.length;++u)(i=t[u])[0]===Q&&zu(i[x])?a[u]=e(i):a[u]=i}else{n=(r[3]instanceof Ju?Vu:Zu)(),p.set(r,n),n[2]=r[2];for(var o,f=n[x],c=Object.getOwnPropertyNames(t),s=0;s<c.length;++s){var l=t[o=c[s]];l[0]===Q&&zu(l[x])?f[o]=e(l):f[o]=l}}return n}(e)}function Xu(e,r,n){if(e===ue)return ue;if(e===wr)return r[0]!==Q||B(r[x])?_(r):(zu(r[x])?Zu:go)(r[x]);if(e===xr){var t=Vu();return r[0]===X&&r[3][1]===Ue&&(is(t,$r,r),is(t,Mr,nc(De(["function","lambda","false",["strcat","${object ",r[3][2][1][Y],"$}"]]),ue))),t}if(e===kr){var i;if(r[0]===Q&&B(r[x])){if(!zu(r[x]))return po(r[x],new WeakMap);i=r[x].slice()}else i=q(r);return i[Lu]=Bu,Ce(i)}if(e[0]===Q)return zu(e[x])?Du(e):po(e[x],new WeakMap);if(e!==Sr)return e===Nr?ro():e===jr?ao():e===Tr?Fs(r,n):ue;if(r[0]!==z&&r[0]!==G)return ue;r=ve(r);return fe.splice(0,0,r),r}function zu(e){return B(e)?e[Lu]===Bu:e instanceof Bu}function Gu(){}function Zu(e){var r=Ce(ue),n=new Gu;return e&&Object.assign(n,e),r[x]=n,r}function Ju(){}function Vu(){var e=Ce(ue),r=new Ju;return e[x]=r,e}function Qu(r,n){this.stacktrace=$e("stacktrace",function(){yt=mt[--kt],Kt(Le(ir,Le(r,ue)),"fiberwake",!0);var e=St;return iu(n),e=Ka(St,e),tu(!1,!0),e},J,!0)[U]}function Uu(e){var r=Ce(!1),e=new Qu(r,e);return r[w]=ue,r[x]=e,r}Gu.prototype=Object.create(Bu.prototype),Gu.prototype.constructor=Gu,Ju.prototype=Object.create(Bu.prototype),Ju.prototype.constructor=Ju,Qu.prototype=Object.create(Bu.prototype),Qu.prototype.constructor=Qu;var Hu=0,Yu={};function Ku(e){return null===(e=Do(e,Number.MAX_SAFE_INTEGER))||e<0?e=L:2147483647<e&&(e=2147483647),e}function eo(i,n,r){var t,a,u,o=[],f=0,c=++Hu;function s(e,r){return r&&0<r?(l(),Yu[c].delay=r,setTimeout(e,r)):(Promise.resolve().then(e),-1)}function l(e){var r=Yu[c];(r=r||{nonce:i,start:(new Date).getTime(),waiting:[],contins:[]}).count=f,n&&(r.execute=n),e&&r.waiting.push(e),Yu[c]=r}function p(){a&&clearTimeout(a),a=L}function g(){u&&clearTimeout(u),u=L}function v(e){var r=i[x];if(r.hasOwnProperty(".exception")){var n=r[".exception"];return delete r[".exception"],e?Ja(n,ue):Va(n)}return e}function d(e){if(e===L)return ue;if(t!==L)return ue;g();var r=Ge;for(a&&(!0===a?r=ue:p()),t=e;0<o.length;)!function(n,t){var e;Yu[c].contins.shift(),(e=Yu[c])&&e.waiting.pop(),s(function(){var e,r;e=n,r=t,Kt(Le(ir,Le(i,ue)),"fiberwake"),iu(e),vt=r,v(),ni(Et)})}(o.shift(),t);return qo(),delete Yu[c],r}function h(e){var r=pe,n=tr[1];return function(){!0!==a&&(++f,a=!0,Kt(Le(Ma,Le(e,Le(i,ue))),"future"),tr[1]=n,pe=r,ni(!0),d(qt),P.hasOwnProperty("interrupted")&&P.interrupted(y))}}n&&0<=r&&(a=s(h(n),r)),this.wait=$e("wait",function(e,r){return t!==L?v(t):(0<(e=Ku(e))&&(u=setTimeout(function(){d(r)},e)),l(ru()),e=tu(!1,!0),o.push(e),Yu[c].contins.push(Uu(e)),++Xt,Ge)},J,!0)[U],this.signal=$e("signal",d,J,!0)[U],this.reset=$e("reset",function(e){return!0===a&&t===L?Ja(De(["internal","$can't reschedule future within itself"]),ue):(t=L,g(),n&&(p(),e=Ku(e),r=e||r||0,a=s(h(n),r)),i)},J,!0)[U]}function ro(){var e=Ce(!1),r=new eo(e);return e[w]=ue,e[x]=r,e}function no(e){return E(e[0]===Q&&e[x]instanceof eo)}function to(e,r){var n=Ce(!1),r=new eo(n,e,Ku(r));return r.cancel=r.signal,r.run=r.reset,delete r.signal,delete r.reset,n[w]=ue,n[x]=r,n}function io(){for(var e=Object.getOwnPropertyNames(Yu),r=ue,n=0;n<e.length;++n){var t=Yu[e[n]],i=new Gu;i.nonce=t.nonce,i.start=Fo(t.start),i.count=Fo(t.count),t.delay&&(i.delay=Fo(t.delay)),t.execute&&(i.execute=t.execute),t.waiting&&0<t.waiting.length&&(i.waiting=M(t.waiting)),t.contins&&0<t.contins.length&&(i.continuations=M(t.contins)),r=Le(Ce(i),r)}return r}function ao(e){var r=Ce(new WeakMap);return r[w]=ue,r}function uo(e){return E(e[0]===Q&&e[x]instanceof WeakMap)}function oo(e,r){var b=[],y=[];function m(e,r){for(;;){if(e[0]!==D)return(e[0]===Q&&zu(e[x])?k:Zc)(e,r);if(r[0]!==D)return ue;if(m(e[1],r[1])===ue)return ue;e=e[2],r=r[2]}}function k(e,r){var n;if(e===r)return Ge;if(B(e[x])){if(!B(r[x]))return ue;var t,i,a,u=e[x],o=r[x];if(u.length!=o.length)return ue;for(t=0;t<u.length;++t)if(i=u[t],a=o[t],"number"==typeof i){if(i!=a)return ue}else if(i[0]===Q&&zu(i[x])){if((n=b.indexOf(i))!=y.indexOf(a))return ue;if(n<0&&(n=b.length,b.push(i),y.push(a),k(i,a)===ue))return ue;u[t]=n,o[t]=n}else if(m(i,a)===ue)return ue}else{if(B(r[x]))return ue;var f,c,s,l=e[x],p=r[x],g=Object.getOwnPropertyNames(l).sort(),v=Object.getOwnPropertyNames(p).sort();if(g.length!=v.length)return ue;for(f=0;f<g.length;++f){if((c=g[f])!=(s=v[f]))return ue;var d=l[c],h=p[s];if("number"==typeof d){if(d!=h)return ue}else if(d[0]===Q&&zu(d[x])){if((n=b.indexOf(d))!=y.indexOf(h))return ue;if(n<0&&(n=b.length,b.push(d),y.push(h),k(d,h)===ue))return ue;l[c]=n,p[s]=n}else if(m(d,h)===ue)return ue}}return Ge}function s(e,r){if(e[0]===Q&&zu(e[x]))if(B(e[x]))for(var n,t=e[x],i=0;i<t.length;++i)"number"==typeof(n=t[i])&&(n=r[n],t[i]=n),s(n,r);else for(var a,u=e[x],o=Object.getOwnPropertyNames(u),f=0;f<o.length;++f){var c=u[a=o[f]];"number"==typeof c&&(c=r[c],u[a]=c),s(c,r)}else e[0]===D&&(s(e[1],r),s(e[2],r))}if(e[0]!==Q||!zu(e[x]))return ue;if(r[0]!==Q||!zu(r[x]))return ue;var n=k(e,r);return s(e,b),s(r,y),n}function fo(e,r,n){for(var t,i=e;i[0]===Q;){var a,u=i[3];if(i[2][0]===Q&&i[2][3]instanceof Gu)a=i[2][3],n&&(u=a);else if(n)break;if(u.hasOwnProperty(r))return u[r];if(!t&&a&&a.hasOwnProperty(".class"))t=i=a[".class"];else{if(!a||!a.hasOwnProperty(".parent"))break;i=a[".parent"]}}return ue}function co(e,r,n){if(e[0]!==Q)return ue;if(e[3]instanceof Ju){var t,i=fo(e,".="+vo(r),!0);if(i!==ue?t=Le(n,ue):(i=fo(e,".=undefined",!0))!==ue&&(t=Le(r,Le(n,ue))),i!==ue)return Xr(e,!0)?(bt=r,wt[xt++]=e,mt[kt++]=Kr,dt=t,ht=Ge,i[0]===X&&(i=W(i[U])),mt[kt++]=ft,i):vt}return So(e,r,n)}function so(e,r){for(var n=ue,t=n,i=0;i<e.length;++i){var a=new Array(v),u=(r?lo:$)(u=e[i]);a[0]=D,a[1]=u,t!==(a[2]=ue)?t[2]=a:n=a,t=a}return n}function lo(e){return"string"==typeof e?We(e):"number"==typeof e?(isFinite(e)&&Math.floor(e)==e?Fo:Wo)(e):"boolean"==typeof e?E(e):e===L?Xe:null===e?ze:"object"==typeof e&&zu(e)?e:Ce(e)}function po(e,r){if(e===L)return Xe;if(null===e)return ze;if("object"!=typeof e||zu(e))return lo(e);if(r.get(e))return r.get(e);var n=Ce(e);if(r.set(e,n),B(e)){for(var t=e.length,i=[],a=0;a<t;++a)i.push(po(e[a],r));i[Lu]=Bu}else{var u,o=Object.getOwnPropertyNames(e);if(0===o.length&&e.constructor!==Object)i=e;else if("0"===o[0]&&o[o.length-1]===(o.length-1).toString()&&"function"==typeof e.keys)i=e;else for(i=new Gu,u=0;u<o.length;++u)try{i[o[u]]=po(e[o[u]],r)}catch(e){}}return n[x]=i,n}function go(e){if(e===L)return Xe;if(null===e)return ze;if("object"!=typeof e||zu(e))return lo(e);for(var r=Object.getOwnPropertyNames(e),n=new Gu,t=0;t<r.length;++t)try{n[r[t]]=lo(e[r[t]])}catch(e){}return Ce(n)}function vo(e,r){if(e[0]===D){if(I(e[1])){var n,t=pe,i=tr[1];return function(){return n=so(arguments,!0),Kt(Le(Ma,Le(e,n)),"xcallback"),tr[1]=i,pe=t,ni(!null),P.hasOwnProperty("interrupted")&&P.interrupted(y),vo(qt)}}for(f=[];e[0]===D;)f.push(vo(e[1],r)),e=e[2];return f}if(e[0]===X)return e===Ge||e!==ue&&(e===Xe?L:e===ze?null:e[Y]);if(e[0]===z)return e[K];if(e[0]===G)return Bo(e[3]);if(e[0]===Z)return e[re];if(e[0]===Q){var a=e[x];if(!zu(a))return a;if(r){if(r.get(a))return r.get(a)}else r=new WeakMap;if(B(a)){var u,o=a.length,f=[];for(r.set(a,f),u=0;u<o;++u)f.push(vo(a[u],r))}else{var c,s=Object.getOwnPropertyNames(a);for(f={},r.set(a,f),c=0;c<s.length;++c)f[s[c]]=vo(a[s[c]],r)}}return f}function ho(e){if(e[0]===D)return e;if(e[0]!==Q)return ue;var r=e[x],n=zu(r);if(B(r))return so(r,!n);for(var t=Object.getOwnPropertyNames(r),i=ue,a=t.length-1;0<=a;--a)try{var u,o=t[a];o!==L&&r[o]!==L&&(u=r[o],n||(u=lo(u)),i=Le(Le(lo(o),u),i))}catch(e){}return i}function bo(e,r){function u(){var e=er[1],r=Xt;if(ni(!0),r!=Xt&&Ja(De(["internal","fiber suspended during array callback"]),ue),e!==er[1])throw _t}function n(e,r,n){var t,i=pe,a=tr[1];return function(){return t=Le(arguments[0],Le(lo(arguments[1]),Le(r,ue))),Kt(Le(Ma,Le(e,t)),"arrayfilter"),tr[1]=a,pe=i,u(),1===n?qt:(2===n&&(qt=E(A(qt))),vo(qt))}}function t(r){var n,t=pe,i=tr[1];return function(){var e=r?(n=so(arguments,!1),Kt(Le(Ma,Le(r,n)),"arraycompare"),tr[1]=i,pe=t,u(),vo(qt)):Uc(arguments[0],arguments[1]);return e}}function i(e,r,n){var t;if(r){if(r[0]!==G)return ue;null===(t=Bo(r[3],Number.MAX_SAFE_INTEGER))?t=n:(t<0&&(t=e-1+t),e<=t&&(t=e-1))}else t=n;return t}function a(e,r){var n="";r=r?vo(r):",";for(var t=0;t<e.length;++t){var i=vo(e[t]);0<t?n=n+r+i:n+=i}return lo(n)}if(e<2)return ue;var o=r(0),f=r(1);if(o[0]!==Q||f[0]===D||f[0]===Q&&zu(f))return ue;var c=o[3];if(!zu(c)||!B(c))return ue;for(var s,l,p=vo(f),g=[],v=0;v<e-2;++v)switch(p){case"every":case"filter":case"find":case"findIndex":case"forEach":case"some":0===v&&g.push(n(r(v+2),o,2));break;case"map":0===v&&g.push(n(r(v+2),o,1));break;case"indexOf":case"join":case"lastIndexOf":case"push":case"unshift":g.push(r(v+2));break;case"concat":(l=r(v+2))[0]===Q&&B(l[3])?(zu(s=l[3])||(s=po(s,new WeakMap)[3]),g.push(s)):g.push([l]);break;case"copyWithin":case"slice":g.push(vo(r(v+2)));break;case"pop":case"reverse":case"shift":break;case"reduce":case"reduceRight":0===v?g.push(function(e,r){var n,t=pe,i=tr[1];return function(){return n=Le(arguments[0],Le(arguments[1],Le(lo(arguments[2]),Le(r,ue)))),Kt(Le(Ma,Le(e,n)),"arrayreduce"),tr[1]=i,pe=t,t=i=null,u(),qt}}(r(v+2),o)):1==v&&g.push(r(v+2));break;case"sort":0===v&&g.push(t(r(v+2)));break;case"fill":0===v?g.push(r(v+2)):g.push(vo(r(v+2)));break;case"splice":v<2?g.push(vo(r(v+2))):g.push(r(v+2));break;default:return ue}var d=!0;switch(p){case"find":d=!1;case"every":case"filter":case"findIndex":case"forEach":case"map":case"some":if(g.length<1)return ue;break;case"sort":0===g.length&&g.push(t());break;case"indexOf":return function(e,r,n){if((n=i(e.length,n,0))===ue)return ue;for(var t=n;t<e.length;++t)if(Gc(e[t],r)!=ue)return Fo(t);return Fo(-1)}(c,g[0],g[1]);case"join":return g.length<1?a(c,!1):a(c,g[0]);case"lastIndexOf":return function(e,r,n){if((n=i(e.length,n,e.length-1))===ue)return ue;for(var t=n;0<=t;--t)if(Gc(e[t],r)!=ue)return Fo(t);return Fo(-1)}(c,g[0],g[1]);case"pop":case"shift":d=!1;break;case"reduce":case"reduceRight":if(d=!1,g.length<1)return ue;if(g.length<2){if(c.length<1)return ue;g.push(c[0]),c=c.slice(1)}break;case"toString":return ds(o,ue);case"push":case"unshift":case"concat":case"copyWithin":case"reverse":case"slice":case"fill":case"splice":break;default:return Ja(De(["internal",'$arrayCall "'+p+'": not defined']),ue)}try{$t=1,yt=Zr;var h=Array.prototype[p],b=ue;return h!==L&&(b=h.apply(c,g),!d&&B(b)||(b=b===c?o:B(b)?(b[Lu]=Bu,Ce(b)):lo(b))),$t=-1,b}catch(e){if(e===_t)throw e;return $t=-1,Ja(De(["internal",'$arrayCall "'+p+'": '+e.toString()]),ue)}}function yo(e,r){if(e[0]!==Q)return ue;var n,e=e[x];if(r[0]===X)n=r[Y];else{if(r[0]!==z)return ue;n=r[K]}return E(e.hasOwnProperty(n))}function mo(e){if(e[0]===k)return rc(e);if(e[0]!==Q)return ue;e=e[x];return B(e)?ue:so(Object.getOwnPropertyNames(e),!0)}function ko(e,r){for(var n=[{}],t=0;t<e;++t){var i=r(t);if(i[0]!==Q||B(i[x])){if(i[0]===D){var a=Object.assign.apply({},n);do{}while(delete a[vo(i[1])],(i=i[2])[0]===D);n=[a]}}else zu(i[x])?n.push(i[x]):n.push(go(i[x])[x])}return Zu(Object.assign.apply({},n))}function wo(e){return E(e[0]===Q&&!zu(e[3]))}function xo(e,r){if(r===ue&&(r=le),e[0]!==Q||r[0]!==k)return ue;if(pe!==ce){if(e[H]!==ue)return e[H]==r?e:ue;if(r!==le&&r!==pe&&r!==fe[0])return Ja(De(["internal","$can't lock "+js(e)+" to "+de(r)]),ue),ue}return e[H]=r,e}function Oo(e,r){if(e[0]!==Q)return ue;var n=e[3];if(n instanceof WeakMap&&r[0]!==z&&r[0]!==G&&r[0]!==Z){e=n.get(r);return e===L&&(e=ue),$(e)}if(r[0]===D||r[0]===Q&&zu(r))return ue;var t=vo(r);try{return zu(n)||n instanceof WeakMap?B(n)&&"length"==t?lo(n.length):n.hasOwnProperty(t)?$(n[t]):ue:lo(n[t])}catch(e){return Ja(De(["internal",'$xget "'+t+'": '+e.toString()]),ue)}}function So(e,r,n){if(e[0]!==Q)return ue;var t=e[3];if(t instanceof WeakMap&&r[0]!==z&&r[0]!==G&&r[0]!==Z)return Xr(e,!0)?(n===Xe?t.delete(r):t.set(r,n),n):vt;if(r[0]===D||r[0]===Q&&zu(r))return ue;if(!Xr(e,!0))return vt;var i=vo(r);try{if($t=1,yt=Zr,n===Xe)delete t[i];else if(zu(t)||t instanceof WeakMap)if(B(t))if("length"==i)t.length=vo(n);else{var a,u=parseInt(i);if(u!=u+"")return $t=-1,Ja(De(["internal","$non-numeric array index"]),ue);for(t[i]=n,a=0;a<i;++a)t[a]===L&&(t[a]=ue)}else t[i]=n;else t[i]=vo(n);return $t=-1,n}catch(e){return $t=-1,Ja(De(["internal",'$xset "'+i+'": '+e.toString()]),ue)}}function No(e,r){return e<2?ue:jo(r(0),r(1),e-2,2,r)}function jo(e,r,n,t,i){if(r[0]===D||r[0]===Q&&zu(r[3]))return ue;var a=vo(r),u=null;if(e&&e[0]===Q){if(zu(u=e[3]))return ue;if(u instanceof WeakMap)return ue}for(var o,f=ue,c=u===Number||u===String||u===Boolean,s=[],l=0;l<n;++l)s[l]=vo(i(l+t));try{return $t=1,yt=Zr,r[0]===Q?f=lo(r[3].apply(u,s)):(!u||u.prototype!==L&&(o=u.prototype[a])!==L||(c=!1,o=u[a]),o!==L&&(f=lo(c?o.apply(s[0],s.slice(1)):o.apply(u,s)))),$t=-1,f}catch(e){return $t=-1,Ja(De(["internal",'$xcall "'+a+'": '+e.toString()]),ue)}}function To(e,r,n){if(e[0]!==Q||r[0]===D||r[0]===Q&&zu(r))return ue;var t=n===ue?[]:vo(n);if(!B(t))return ue;var i=vo(r),a=null;if(e[0]===Q){if(zu(a=e[3])){if(a.hasOwnProperty(i)){e=a[i];if(B(e))return Ia(e,n)}return ue}if(a instanceof WeakMap)return ue}var u,o=ue,f=a===Number||a===String||a===Boolean;try{return $t=1,yt=Zr,r[0]===Q?o=lo(r[3].apply(a,t)):(a.prototype!==L&&(u=a.prototype[i])!==L||(f=!1,u=a[i]),u!==L&&(o=lo(f?u.apply(t[0],t.slice(1)):u.apply(a,t)))),$t=-1,o}catch(e){return $t=-1,Ja(De(["internal",'$xapply "'+i+'": '+e.toString()]),ue)}}function Po(e,r){return Eo(),0<e?Ao(r(0),e-1,1,r):Ao(L,0,0,r)}function Ao(e,r,n,t){var i;if(e===L)return(i=lo({}))[w]=go({persist:!0}),i;if(e[0]===z||e[0]===X)return lo(l[Fe(e)]);if(e[0]===G)return Ce(s.bigInt2uint8(e[ee]));if(e[0]===D)return Ce(vo(e));if(e[0]!==Q)return ue;var a,u=e[3];if(zu(u))return lo(vo(e));if(u===WeakMap)return ue;try{if("function"==typeof u){for(var o=[null],f=0;f<r;++f)o.push(vo(t(f+n)));$t=1,yt=Zr;var c=new(Function.prototype.bind.apply(u,o));return $t=-1,Ce(c)}if(1<r)return ue;c=t(n);return $t=1,yt=Zr,i=0===r?("object"==typeof(a=Object.create(u))?Ce:lo)(a):c[0]!==Q?ue:("object"==typeof(a=Object.create(u,c[3]))?Ce:lo)(a),$t=-1,i}catch(e){return $t=-1,Ja(De(["internal","$xnew: "+e.toString()]),ue)}}function Io(){return Eo(),Ge}function Eo(){0===It&&(At=Pt,It=St,Pr[1]=Ge)}function $o(){St<It&&(Pt=At,It=0,Pr[1]=ue)}function Mo(e){return $t<0?($t=0,Ge):($t=1,pi())}function qo(){$t=-1}function _o(){return Mo()}function Ro(e,r){var n=new Array(o);return n[0]=G,(n[1]=n)[2]=r,n[3]=e,n}function Fo(e,r){return"number"!=typeof e||isNaN(e)?ue:(r=r||ue,Ro(Co(e),r))}function Wo(e){var r=new Array(c);return r[0]=Z,(r[1]=r)[2]=ue,r[3]=e,r}function Co(e){var r=Math.abs(e);"number"==typeof r&&!isNaN(r)||(r=0);r=s.int2bigInt(r,a,1);return e<0&&(r=s.negate(r)),s.trim(r,1)}function Lo(e,r){var n=s.int2bigInt(r,64,1),t=1;return s.negative(e)&&(e=s.negate(e),t=-1),s.greater(e,n)?null:t*s.modInt(e,r+1)}function Bo(e){var r=s.negative(e);r&&(e=s.negate(e));var n,t=s.bitSize(e);return e=a<t?Number.POSITIVE_INFINITY:i<t?(n=s.rightShift(e,t-i),s.modInt(n,Number.MAX_VALUE)*Math.pow(2,t-i)):s.modInt(e,Number.MAX_SAFE_INTEGER+1),r?-e:e}function Do(e,r){if(e[0]===G)return Lo(e[3],r);if(e[0]===Z){e=e[3];if(-r<=e&&e<=r)return e}return null}function Xo(e){if(s.bitSize(e)<=i)return Bo(e);var r="";return s.negative(e)&&(e=s.negate(e),r="-"),r+s.bigInt2str(e,10)}function zo(e){if("string"!=typeof e)return Co(e);e="-"==e.charAt(0)?s.negate(s.str2bigInt(e.substring(1),10,1)):s.str2bigInt(e,10,1);return e}function Go(e,r,n,t){return e[0]===G?Ro(s.negate(e[3]),ue):e[0]===Z?Wo(-e[3]):e[0]===Q&&e[3]instanceof Ju?di(e,".negate"):vi(Pe(t[2][1],"extendNegate"))}function Zo(e,r){return e[0]===G&&r[0]===G?Ro(s.add(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Wo(e[3]+r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])+r[3]):e[0]===Z&&r[0]===G?Wo(e[3]+Bo(r[3])):ue}function Jo(e,r,n){var t;if(2==e&&(t=Zo(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".plus")}return vi(Pe(n[2][1],"extend+"))}function Vo(e,r){return e[0]===G&&r[0]===G?Ro(s.sub(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Wo(e[3]-r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])-r[3]):e[0]===Z&&r[0]===G?Wo(e[3]-Bo(r[3])):ue}function Qo(e,r,n){var t;if(2==e&&(t=Vo(r(0),r(1)))!==ue)return t;if(1==e)return Go(r(0),null,null,n);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".difference")}return vi(Pe(n[2][1],"extend-"))}function Uo(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Wo(e[3]*r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])*r[3]):e[0]===Z&&r[0]===G?Wo(e[3]*Bo(r[3])):ue;var n=e[3],t=r[3],i=s.negative(n),e=s.negative(t);return i&&(n=s.negate(n)),e&&(t=s.negate(t)),n=s.greater(n,r[3])?s.mult(n,t):s.mult(t,n),i!=e&&(n=s.negate(n)),Ro(n,ue)}function Ho(e,r,n){var t;if(2==e&&(t=Uo(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".times")}return vi(Pe(n[2][1],"extend*"))}function Yo(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Wo(e[3]/r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])/r[3]):e[0]===Z&&r[0]===G?Wo(e[3]/Bo(r[3])):ue;if(s.isZero(r[3]))return Ja(De(["internal","$divide by zero"]),ue);var n=e[3],t=r[3],i=s.negative(n),a=s.negative(t);i&&(n=s.negate(n)),a&&(t=s.negate(t));var u=s.dup(n),e=s.dup(n),r=a;return s.divide_(n,t,u,e),i&&(r=!a,s.isZero(e)||(u=s.addInt(u,1),e=s.sub(t,e))),r&&(u=s.negate(u)),Ro(s.trim(u,1),ue)}function Ko(e,r,n,t){var i;return(i=Yo(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".quotient"):r[0]===Q&&r[3]instanceof Ju?di(r,".quotient"):vi(Pe(t[2][1],"extend/"))}function ef(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Wo(e[3]%r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])%r[3]):e[0]===Z&&r[0]===G?Wo(e[3]%Bo(r[3])):ue;if(s.isZero(r[3]))return Ja(De(["internal","$divide by zero"]),ue);var n=e[3],t=r[3],i=s.negative(n),e=s.negative(t);i&&(n=s.negate(n)),e&&(t=s.negate(t));r=s.dup(n),e=s.dup(n);return s.divide_(n,t,r,e),i&&(s.isZero(e)||(e=s.sub(t,e))),Ro(s.trim(e,1),ue)}function rf(e,r,n,t){var i;return(i=ef(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".modulo"):r[0]===Q&&r[3]instanceof Ju?di(r,".modulo"):vi(Pe(t[2][1],"extendMod"))}function nf(e,r,n,t){if(e[0]!==G||r[0]!==G)return e[0]===Q&&e[3]instanceof Ju?di(e,".divide"):r[0]===Q&&r[3]instanceof Ju?di(r,".divide"):vi(Pe(t[2][1],"extendDivide"));if(s.isZero(r[3]))return Ja(De(["internal","$divide by zero"]),ue);var i=e[3],a=r[3],u=s.negative(i),t=s.negative(a);u&&(i=s.negate(i)),t&&(a=s.negate(a));e=s.dup(i),r=s.dup(i);return s.divide_(i,a,e,r),u&&(s.isZero(r)||(e=s.addInt(e,1),r=s.sub(a,r))),Le(Ro(s.trim(e,1),ue),Ro(s.trim(r,1),ue))}function tf(e,r,n,t){return e[0]===G?Ro(s.not(e[3]),ue):e[0]===Z?Wo(~e[3]):e[0]===Q&&e[3]instanceof Ju?di(e,".bitnot"):vi(Pe(t[2][1],"extendBitNot"))}function af(e,r){return e[0]===G&&r[0]===G?Ro(s.and(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Wo(e[3]&r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])&r[3]):e[0]===Z&&r[0]===G?Wo(e[3]&Bo(r[3])):ue}function uf(e,r,n){var t;if(2==e&&(t=af(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".bitand")}return vi(Pe(n[2][1],"extendBitAnd"))}function of(e,r){return e[0]===G&&r[0]===G?Ro(s.or(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Wo(e[3]|r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])|r[3]):e[0]===Z&&r[0]===G?Wo(e[3]|Bo(r[3])):ue}function ff(e,r,n){var t;if(2==e&&(t=of(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".bitor")}return vi(Pe(n[2][1],"extendBitOr"))}function cf(e,r){return e[0]===G&&r[0]===G?Ro(s.xor(e[3],r[3]),ue):e[0]===Z&&r[0]===Z?Wo(e[3]^r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])^r[3]):e[0]===Z&&r[0]===G?Wo(e[3]^Bo(r[3])):ue}function sf(e,r,n){var t;if(2==e&&(t=cf(r(0),r(1)))!==ue)return t;if(1==e)return r(0);for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".bitxor")}return vi(Pe(n[2][1],"extendBitXor"))}function lf(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Wo(e[3]<<r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])<<r[3]):e[0]===Z&&r[0]===G?Wo(e[3]<<Bo(r[3])):ue;r=Bo(r[3]);if(r<0)r=0;else if(n<r)return Ja(De(["internal","shiftleft > ".concat(n)]),ue);return Ro(s.leftShift(e[3],r),ue)}function pf(e,r,n,t){var i;return(i=lf(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".shiftleft"):r[0]===Q&&r[3]instanceof Ju?di(r,".shiftleft"):vi(Pe(t[2][1],"extendShiftLeft"))}function gf(e,r){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?Wo(e[3]>>r[3]):e[0]===G&&r[0]===Z?Wo(Bo(e[3])>>r[3]):e[0]===Z&&r[0]===G?Wo(e[3]>>Bo(r[3])):ue;r=Bo(r[3]);return r<0&&(r=0),Ro(s.rightShift(e[3],r),ue)}function vf(e,r,n,t){var i;return(i=gf(e,r))!==ue?i:e[0]===Q&&e[3]instanceof Ju?di(e,".shiftright"):r[0]===Q&&r[3]instanceof Ju?di(r,".shiftright"):vi(Pe(t[2][1],"extendShiftRight"))}function df(e,r,n,t){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?E(e[3]>r[3]):e[0]===G&&r[0]===Z?E(Bo(e[3])>r[3]):e[0]===Z&&r[0]===G?E(e[3]>Bo(r[3])):e[0]===z&&r[0]===z?E(e[K]>r[K]):e[0]===Q&&e[3]instanceof Ju?di(e,".greater"):r[0]===Q&&r[3]instanceof Ju?di(r,".greater"):t?vi(Pe(t[2][1],"extend>")):ue;if(s.equals(e[3],r[3]))return ue;if(s.negative(e[3])){if(!s.negative(r[3]))return ue;var i=s.negate(e[3]),t=s.negate(r[3]),i=s.greater(t,i)}else{if(s.negative(r[3]))return Ge;i=s.greater(e[3],r[3])}return E(i)}function hf(e,r,n,t){if(e[0]!==G||r[0]!==G)return e[0]===Z&&r[0]===Z?E(e[3]<r[3]):e[0]===G&&r[0]===Z?E(Bo(e[3])<r[3]):e[0]===Z&&r[0]===G?E(e[3]<Bo(r[3])):e[0]===z&&r[0]===z?E(e[K]<r[K]):e[0]===Q&&e[3]instanceof Ju?di(e,".lesser"):r[0]===Q&&r[3]instanceof Ju?di(r,".lesser"):t?vi(Pe(t[2][1],"extend<")):ue;if(s.equals(e[3],r[3]))return ue;if(s.negative(e[3])){if(!s.negative(r[3]))return Ge;var i=s.negate(e[3]),t=s.negate(r[3]),i=s.greater(t,i)}else{if(s.negative(r[3]))return ue;i=s.greater(e[3],r[3])}return E(!i)}function bf(e,r,n,t){return e[0]===Z?e:e[0]===G?Wo(Bo(e[3])):e[0]===z?Wo(parseFloat(e[3])):e[0]===Q&&"number"==typeof e[x]?Wo(e[x]):e[0]===Q&&e[3]instanceof Ju?di(e,".tofloat"):vi(Pe(t[2][1],"extendTofloat"))}function yf(e){return null!==(e=Do(e,36))&&2<=e?e:-1}function mf(e,r){if(e[0]===Z)return Fo(Math.floor(e[3]));if(e[0]===G)return Ro(e[x],ue);if(e[0]===z){if(0!==e[3].indexOf("0x"))return r===ue?Fo(parseInt(e[3])):((n=yf(r[3]))<0&&(n=10),Fo(parseInt(e[3],n)));n=Fo(parseInt(e[3],16));return n[w]=go({hexcon:!0}),n}if(e[0]===Q){var n=e[x].valueOf();if("number"==typeof n)return isFinite(n)?Fo(n):ue;try{if(e[x]instanceof Uint8Array)return Ro(s.uint82bigInt(e[x]),ue)}catch(e){return ue}}return ue}function kf(e){return e[w]!==ue&&A(e[w][x].hexcon)}function wf(e){return e[1]}function xf(e){return e[1]}function Of(e){return e[2]}function Sf(e){return e[1][1]}function Nf(e){return e[2][1]}function jf(e){return e[1][2]}function Tf(e){return e[2][2]}function Pf(e){return e[1][1][1]}function Af(e){return e[2][1][1]}function If(e){return e[1][2][1]}function Ef(e){return e[2][2][1]}function $f(e){return e[1][1][2]}function Mf(e){return e[2][1][2]}function qf(e){return e[1][2][2]}function _f(e){return e[2][2][2]}function Rf(e){return e[1][1][1][1]}function Ff(e){return e[2][1][1][1]}function Wf(e){return e[1][2][1][1]}function Cf(e){return e[2][2][1][1]}function Lf(e){return e[1][1][2][1]}function Bf(e){return e[2][1][2][1]}function Df(e){return e[1][2][2][1]}function Xf(e){return e[2][2][2][1]}function zf(e){return e[1][1][1][2]}function Gf(e){return e[2][1][1][2]}function Zf(e){return e[1][2][1][2]}function Jf(e){return e[2][2][1][2]}function Vf(e){return e[1][1][2][2]}function Qf(e){return e[2][1][2][2]}function Uf(e){return e[1][2][2][2]}function Hf(e){return e[2][2][2][2]}function Yf(e,r){if(0===e)return ue;if(1==e)return Le(r(0),ue);for(var n=r(--e);0<=--e;)n=Le(r(e,r),n);return n}function Kf(e,r){if(0===e)return ue;for(var n=r(0);0<--e;)n=Le(r(e,r),n);return n}function ec(e,r){for(;e[0]===D;)r=Le(e[1],r),e=e[2];return r}function rc(e){var r,n;if(e[0]===k&&0<=(n=oe.indexOf(e)))r=oe[n][te];else{if(e!==ue)return ue;r=fe[0][te]}for(var t=ue,i=null,a=0;a<r.length;++a){var u=Le(r[a],ue);i?i[2]=u:t=u,i=u}return t}function nc(e,r){var n;r===ue&&(r=(n=e[2][1])===Ze?fe[0]:n!==ue?n[H]:ue);r=zr(e,r);return"string"==typeof r?Ja(De(["internal",r]),ue):Xr(r[2][1])?r:vt}function tc(e){function r(e){for(var r=-1;++r<zt;){var n=e[2][3][".parent"];if(!n)return[e,r];e=n}return[ue,r]}function n(e){var r=e[2][3][".base"];return r||e}if(e[0]!==X||e[3]===ue)return ue;var t,i;[t,i]=r(e=e[3][2][1]);var a=n(t);if(a===ue)return ue;for(var u=ye(e[Y]),o=ue,f=0;f<u.length;++f){var c,s,l=u[f];[c,s]=r(l),s==i&&n(c)===a&&(o=Le(l,o))}return o}function ic(e){var r=e[1];if(r[0]!==X||r[1][0]!==D)return ue;e=r[1][1];return r[1]=r[1][2],e}function ac(e,r){return Xr(e,!0)?(e[2]=r,e):vt}function uc(e){return Ar[1]=e}function oc(e,i){return function e(r){if(Gc(r,i)!==ue)return ue;for(var n,t=0;;){if(Gc(r,i)!==ue){t=-t,n=ue;break}if(r[0]!==D)return!1;if(n=e(r[1]))break;r=r[2],++t}return Le(Fo(t),n)}(e)||ue}eo.prototype=Object.create(Bu.prototype),eo.prototype.constructor=eo;var fc=100,cc=101,sc=102,lc=103,pc=104,gc=105,vc=106,dc=107,hc=108,bc=109,yc=110,mc=111;function kc(e,r){if(!e)return-1;for(var n=!1,t=0;t<e;++t){var i=r(t),a=i[0];if(a===Q&&zu(i[x])?a=B(i[x])?cc:i[x]instanceof Ju?lc:i[x]instanceof eo?pc:i[x]instanceof Qu?gc:i[x]instanceof WeakMap?vc:i[x]instanceof _s?dc:sc:a===D?a=I(i[1])?yc:mc:J<=a&&a<=V&&(a=bc),n){if(a!==n)if(n===G&&a===Z||n===Z&&a===G)n=fc;else if(n!==fc||n!==Z&&a!==G)if(n===X&&a===z||n===z&&a===X)n=hc;else if(n!==hc||n!==X&&a!==z){if(!(n===yc&&a===mc||a===mc&&a===yc))return-1;n=mc}else;else;}else n=a}return n}function wc(e,r){switch(kc(e,r)){case D:return vr;case X:return dr;case z:return mr;case G:return hr;case Z:return br;case J:case O:return gr;case V:return Qe;case Q:return Or;case k:return Sr;case fc:return yr;case cc:return kr;case sc:return wr;case lc:return xr;case pc:return Nr;case vc:return jr;case dc:return Tr;case bc:return gr;case mc:return vr}return ue}function xc(e){return E(e[0]===X&&e[Y]==Ze[Y])}function Oc(e,r,n){var t=kc(e,r);if(t===Z||t===G||t===fc)return Ge;for(var i=0;i<e;++i){var a=r(i);if(a[0]===Q&&a[3]instanceof Ju)return di(a,".numeric")}return vi(Pe(n[2][1],"extendNumeric"))}function Sc(e,r){return E(kc(e,r)===G)}function Nc(e,r){return E(kc(e,r)===Z)}function jc(e){return e[0]===X&&e[H][te][e[H][ie][e[Y]]]===e?e:e[0]===z?je(e[K]):ue}function Tc(e){var r;if(e[0]===X)r=e[Y];else{if(e[0]!==z)return ue;r=e[K]}return Br(r)[U]}function Pc(e,r){return E(kc(e,r)===X)}function Ac(e,r){return E(kc(e,r)===z)}function Ic(e,r){r=kc(e,r);return E(r===X||r===z||r===hc)}function Ec(e,r){return E(kc(e,r)===bc)}function $c(e,r){return E(kc(e,r)===yc)}function Mc(e,r){return E(kc(e,r)===cc)}function qc(e){return E(e[0]===Q&&zu(e[3])&&B(e[3]))}function _c(e,r){return E(kc(e,r)===sc)}function Rc(e){return E(e[0]===Q&&e[3]instanceof Gu)}function Fc(e,r){return E(kc(e,r)===lc)}function Wc(e,r){r=kc(e,r);return E(r===D||r===yc||r===mc)}function Cc(e,r){if(0===e)return ue;for(var n=0;n<e;++n)if(r(n)[0]===D)return ue;return Ge}function Lc(e,r){return Cc(e,r)}function Bc(e){return e[0]===G?E(!s.negative(e[3])&&!s.isZero(e[3])):e[0]===Z?E(0<e[3]):ue}function Dc(e){return e[0]===G?E(s.negative(e[3])):e[0]===Z?E(e[3]<0):ue}function Xc(e){return e[0]===G?E(s.isZero(e[3])):e[0]===Z?E(0===e[3]):ue}function zc(e){if(e[0]===G)return E(0===s.modInt(e[3],2));if(e[0]!==Z)return ue;e=e[3]/2;return E(e==Math.floor(e))}function Gc(e,r,n,t){return e[0]===G&&r[0]===G?E(s.equals(e[3],r[3])):e[0]===Z&&r[0]===Z?E(e[3]===r[3]):e[0]===G&&r[0]===Z||e[0]===Z&&r[0]===G?e[0]===Q&&e[3]instanceof Ju?di(e,".eq"):r[0]===Q&&r[3]instanceof Ju?di(r,".eq"):vi(Pe(t[2][1],"extendEq")):e[0]===z&&r[0]===z||e[0]===Q&&r[0]===Q?E(e[3]===r[3]):E(e==r)}function Zc(e,r,n,t){return e[0]===X&&r[0]===X?e===r||e[Y]===r[Y]?Ge:ue:e[0]===G&&r[0]===Z?E(Bo(e[3])==r[3]):e[0]===Z&&r[0]===G?E(e[3]==Bo(r[3])):e[0]===J&&r[0]===J||e[0]===O&&r[0]===O||e[0]===V&&r[0]===V?E(e[ne]===r[ne]):Gc(e,r,n,t)}function Jc(e,r){for(;;){if(e[0]!==D)return(e[0]===Q&&zu(e[x])?oo:Zc)(e,r);if(r[0]!==D)return ue;if(Jc(e[1],r[1])===ue)return ue;e=e[2],r=r[2]}}function Vc(e,r){for(;;){if(r[0]!==D)return ue;if(Jc(e,r[1])===Ge)return r;r=r[2]}}function Qc(e,r){for(var n;;){if(r[0]!==D)return ue;if(Jc(e,r[1])===Ge)return r;if(r[1][0]===D&&(n=Qc(e,r[1]))!==ue)return n;r=r[2]}}function Uc(e,r){if(e===r)return 0;if(!A(r))return A(e)?-1:0;if(!A(e))return 1;if(!(e[0]!==Z&&e[0]!==G||r[0]!==Z&&r[0]!==G))return hf(e,r)===Ge?-1:df(e,r)===Ge?1:0;var n=!1;if(e[0]===r[0]&&(n=e[0]),n===X){if(e[Y]<r[Y])return-1;if(e[Y]>r[Y])return 1;var t=Ae(e),i=Ae(r);return 0<=t&&0<=i?t<i?-1:i<t?1:0:0<=t&&i<0?-1:t<0&&0<=i?1:0}if(n===z)return e[K]==r[K]?0:e[K]<r[K]?-1:1;if(n===k)return Uc(e[j],r[j]);if(n===D)for(;;){var a=Uc(e[1],r[1]);if(0!==a)return a;if(e=e[2],r=r[2],e[0]!==D)return r[0]!==D?0:-1;if(r[0]!==D)return 1}return e[0]<r[0]?-1:e[0]>r[0]?1:0}function Hc(e,r){return Fo(Uc(e,r))}function Yc(e,r){return makeBoolean(Uc(e,r)<0)}function Kc(e){return E(!A(e))}function es(e,r){if(e[0]===D){for(var n=e;n[0]===D;){if(n[S]!==ue&&!Xr(n[S]))return;n=n[N]}n=e;for(var t=r;n[0]===D;)t[0]!==D?n[S]!==ue&&(n[S][1]=t):(n[S]!==ue&&(n[S][1]=t[S]),t=t[N]),n=n[N]}else{if(!Xr(e))return;e[1]=r}return 1}function rs(e,r){return es(e,r)?r:vt}function ns(e,r,n,t){function i(e){if(e[0]===X&&(e=W(e[U])),e[0]===J)return e[ne];if(e[0]===O){if((e=e[ne])===Jo)return Zo;if(e===Qo)return Vo;if(e===Ho)return Uo;if(e===Ko)return Yo;if(e===rf)return ef;if(e===pf)return lf;if(e===vf)return gf;if(e===uf)return af;if(e===sf)return cf;if(e===ff)return of}return function(){return ue}}function a(e){return e[0]===Q&&e[3]instanceof Ju&&(wa(e,t!==ue?".preadjust":".postadjust",Le(e,Le(r,Le(n,ue)))),mt[kt++]=yt,1)}if(e[0]===D){var u,o=e[1],f=e[2][1];if(a(u=Oo(o,f)))return vt;f=So(o,f,i(r)(u,n))}else{if(e[0]!==X)return Ja(De(["internal","$invalid adjust target"]),ue);if(a(u=e[1]))return vt;f=rs(e,i(r)(u,n))}return t!==ue?f:u}function ts(e,r){e=e[2];return Rc(e)===ue?ue:Oo(e,r)}function is(e,r,n){if(!Xr(e,!0))return vt;var t=e[2];if(t===ue)e[2]=t=Xu(wr,ue);else if(Rc(t)===ue)return Ja(De(["internal","$invalid put annotation target"]),ue);return r===ue?ue:So(t,r,n)}function as(e,r,n){return Xr(e,!0)?r[0]!==X?ue:(n===ue&&(t=e[2]),e[2]=F(r[2],t),e):vt;var t}function us(e,r){return e[0]>=J&&e[0]<=V&&Zs()===ue?We(e[3].name):e[0]!==X?ue:r===Ge?W(e):e[3]}function os(e,r){if(e[0]!==X)return ue;if(!Xr(e))return vt;if(r[0]>=J&&r[0]<=V||r[0]===X)return e[3]=r;if(r[0]===D){var n=r[2][1][2];return e[2]!==n&&(e[2]=F(n)),e[3]=r}if(r[0]===z)try{var t=function(e,r,n){return eval(e)}(r[K],{j2n:lo,n2j:vo,nanu:Xu,pl:Ts,ns:e[H]},ue);if("function"!=typeof t)return We("compile: not a function");var i=[O,null,e,t];return i[1]=i,e[3]=i}catch(e){return Ou(yu,"compile: "+e.toString()),We(e)}return ue}function fs(e,r){if(r[0]!==X||e[0]!==X)return ue;if(!Xr(e))return vt;if(r[3][0]>=J&&r[3][0]<=V)return $e(e[Y],r[3][3],r[3][0]);if(r[3][0]!==D)return e[3]=r[3];var n=Oe(r[Y]),t=r[3][2][1];t[Y]===Ze[Y]&&(n[S]=Ze),n[H]=t[H];r=Le(r[3][1],Le(n,r[3][2][2]));return n[3]=r,e[3]=r}var cs=!1;function ss(e,r){return!cs&&yu<=ou&&(cs=!0,Ou(yu,"warning: moveproc() is deprecated in favor of copyproc()")),fs(r,e)}function ls(e){return e===ue?ce:e[0]===X||e[0]===Q?e[H]:e[0]===k?e[j]:ue}function ps(e){return e===ue?M(fe):e[0]===D?he(e):e[0]===X&&e===Ge?M(oe):ue}function gs(e,r){if(0===e)return pe;var n=r(0);if(1==e&&n[0]===k){var t=pe;return pe===ce&&(pe=n),t}for(var i=0;i<e;++i){var a=r(i);if(a[0]===k)n=a;else{if(a[0]!==X&&a[0]!==Q)return ue;if(!A(a))return ue;n=a[H]}if(n!==ue&&(n!=pe&&pe!==ce))return ue}return Ge}function vs(e,r){for(var n=[],t=0;t<e;++t)n.push(r(t));for(var i,a=ue,u=0;u<n.length;++u)(i=n[u])[0]===k?be(i):a=Le(i,a);return a}function ds(e,r){var n;Rc(r)===Ge&&(n=r[x]);e=We(js(e,n));return n&&A(n.noquote)&&(e[w]=go({noquote:!0})),e}function hs(e,r){for(var n="",t=0;t<e;++t)n+=js(r(t));return We(n)}function bs(e){var r;if(e[0]===X)r=e[Y];else{if(e[0]!==z){if(e[0]!==G)return ue;if(s.negative(e[3])||s.greater(e[3],s.int2bigInt(1114111,16,1)))return ue;var n=s.modInt(e[3],1114111);if(n<65536)r=String.fromCharCode(n);else try{r=String.fromCodePoint(n)}catch(e){return Ou(yu,"warning: couldn't fromCodePoint("+n+")"),ue}return We(r)}r=e[K]}try{return Fo(r.codePointAt(0),go({hexcon:!0}))}catch(e){return Ou(yu,"warning: couldn't codePointAt(\""+r.substring(0,1)+'")'),Fo(r.charCodeAt(0))}}function ys(e){var r;if(e[0]===X)r=Oe(e[Y]);else{if(e[0]!==z)return ue;r=Oe(e[K])}return r[H]=fe[0],r}function ms(e,r){var n,t;if(e[0]===z)t=e[K];else if(e[0]===X)t=e[Y];else{if(e[0]!==Q||!RegExp.prototype.isPrototypeOf(e[x]))return ue;t=e[x]}if(r===ue)n=fe;else if(r===Ge)n=oe;else{if(r[0]!==k)return ue;n=[r]}for(var i,a=[],u=0;u<n.length;++u){var o=n[u];if("string"==typeof t){if(o[ie].hasOwnProperty(t))return i=o[ie][t],o[te][i]}else if(e[0]===Q)for(i=0;i<o[te].length;++i){var f=o[te][i];t.test(f[Y])&&a.push(f)}}return M(a)}function ks(e){if(e[0]!==D)return e[0]===X?e[Y]:e[0]===z?e[K]:e[0]===G?Ls.IntToString(e[ee],kf(e)):"";for(var r="";e[0]===D;)r+=ks(e[1]),e=e[2];return r}function ws(e,r){for(var n="",t=0;t<e;++t)n+=ks(r(t));return Dr(n)}function xs(e){var r;if(e[0]===X)r=e[Y];else if(e[0]===z)r=e[K];else{if(e[0]!==G)return ue;r=Ls.IntToString(e[ee],kf(e))}var n,t=ue,i=null;if(0===r.length)return ue;for(n=0;n<r.length;++n){var a=Le(We(r.charAt(n)),ue);i?i[2]=a:t=a,i=a}return t}function Os(e){if(e===ue)return Fo(0);if(e[0]===X)return Fo(e[Y].length);if(e[0]===z)return Fo(e[K].length);if(e[0]===G||e[0]===Z)return Fo(js(e).length);if(e[0]===Q){var r=e[x];return zu(r)?B(r)?Fo(r.length):Fo(Object.getOwnPropertyNames(r).length):lo(e[x].length)}if(e[0]!==D)return Fo(js(e).length);for(var n=1;e[2][0]===D;)++n,e=e[2];return Fo(n)}var Ss=new b.NaanChannel(this),Ns=new b.NaanChannel(this);function js(e,r,n){var t;r&&r.radix&&(t=yf(r.radix))<2&&(t=L),n===L&&(n=Ls);var i="";if(e===L)return Xe[Y];if(null===e)return ze[Y];if(e[g]===D){if(e[N][0]!==D&&e[N]!==ue)i=n.ListToString([n.DottedPairToString(js(e[1],r,n),js(e[2],r,n))]);else{for(var a=e,u=[];a[g]===D;)a[N][0]!==D&&a[N]!==ue?u.push(n.DottedPairToString(js(a[1],r,n),js(a[2],r,n))):u.push(js(a[1],r,n)),a=a[N];i=n.ListToString(u)}return i}if(e[g]===X){var o=e[Y];if(r&&A(r.quote)&&(1!=o.length||p.indexOf(o)<0)){if(!A(r.nonamespace)){i=ke(e);if(i[0]===k)return o=n.QuoteSymbol(o),js(i[j],!1,n)+n.NSinfix+o}return n.QuoteSymbol(o)}return o}if(e[g]===z)return!r||!A(r.quote)||e[w]!==ue&&A(e[w][x].noquote)?e[K]:n.QuoteString(e[K]);if(e[g]===G)return n.IntToString(e[ee],kf(e),t);if(e[g]===Z)return n.FloatToString(e[re],t);if(e[g]>=J&&e[g]<=V){if(mu<=ou){var f=e[U]+"";return f.substring(9,f.indexOf("("))}f=Me(e[3]);return f?"[Builtin "+f+"]":e[2][0]===X?"[Compiled "+e[2][Y]+"]":"[Compiled Function]"}if(e[g]===Q){var c,s=e[x];if(zu(s)){if(B(s))return"Array["+s.length+"]";var l=Object.getOwnPropertyNames(s).length;if(s instanceof eo)return"Nonce{"+l+"}";if(s instanceof Qu)return"Continuation{"+l+"}";if(s instanceof _s)return"TextStream{"+l+"}";if(s instanceof WeakMap)return"WeakMap{}";if(e[3]instanceof Ju){f=ts(e,$r);return f!==ue?"{object "+f[3][2][1][Y]+"}":"Object{"+l+"}"}return"Dictionary{"+l+"}"}try{if("function"==typeof s)return""!==s.name&&s.name?"[Function "+s.name+"]":"[Function ()]";if(B(s))c=JSON.stringify(s).slice(1,-1);else if("["===(c=s.toString()).substring(0,1))return c;return"["+Object.prototype.toString.call(s).slice(8,-1)+" "+c+"]"}catch(e){l=s[Symbol.toStringTag];return l?"[object "+l+"]":"[private object]"}}else if(e[g]===k)return"Namespace<"+js(e[j],!1,n)+">";debugger;return"unknown: "+e}function Ts(e,r){return Ds[x].printline[3](e,r)}function Ps(e,r){return Ds[x].print[3](e,r)}function As(e,r){return Ds[x].printq[3](e,r)}function Is(e){return Ds[x].printloc[3](e)}function Es(e){return Ds[x].newline[3](e)}function $s(e){return Ds[x].spaces[3](e)}function Ms(e){return Ds[x].isbreak[3](e)}function qs(){return 0<Ns.TextAvail()&&P.hasOwnProperty("console-out")&&P["console-out"](y,Ns.TakeText()),Ge}function _s(e,r,n,t){var i,a,u=ue,o=ue,f=ue,c=ue,s=!1,l=!1;function p(e){if(i.EOF())return e!==ue?ue:Ja(De(["internal","$end-of-file"]),ue);if(c===ue)return pi();e=c;return c=ue,Ja(e)}function g(){if(f[0]===D){var e=f[1];return f=f[2],o=e,1}e=function(e){var r,n;e:for(;;){if(null===(n=e.ReadToken()))return null;switch(n.type){case e.kTTNewline:case e.kTTSymbol:s&&(r=s[n.token])!==L||(r=Dr(n.token));break e;case e.kTTInteger:r=Ro(n.token,ue);break e;case e.kTTHexInteger:r=Ro(n.token,go({hexcon:!0}));break e;case e.kTTString:r=We(n.token);break e;case e.kTTComment:case e.kTTCommentLine:var t=Zu();if(t[x].text=We(n.token),t[x].loc=Le(Fo(n.loc.line),Le(Fo(n.loc.column),ue)),u=Le(t,u),n.type!=e.kTTCommentLine)continue;r=Ne("\n");break e;case e.kTTFloat:r=Wo(parseFloat(n.token));break e}}return n.atom=r,n}(i);return null!==e&&((o=Zu())[x].atom=e.atom,o[x].loc=Le(Fo(e.loc.line),Le(Fo(e.loc.column),ue)),1)}function v(e,r){var n=e[x].atom;if(r[0]!==D)return r===mr?n[0]===z:r===dr?n[0]===X:Jc(n,r)===Ge;for(;;){if(r[0]!==D)return;if(r[1][0]===D)return;if(v(e,r[1]))return 1;r=r[2]}}function d(e,r){if(!Et&&a.Full())return pi();for(var n,t=ue,i=0;i<e;++i)n=js(t=r(i),!1,a),a.WriteString(n);return l&&qs(),t}function h(e){return f=Le(o,f),o=e}this.addtext=$e("addtext",function(e){return e[0]===z?(i.AddText(e[K]),i.SetEOF(),e):ue},J,!0)[U],this.comments=$e("comments",function(){var e=u;return u=ue,e},J,!0)[U],this.isbreak=$e("isbreak",function(e){return E(e[0]===X&&a.IsBreak(e[Y].substring(0,1)))},J,!0)[U],this.linelength=$e("linelength",function(){return 80},J,!0)[U],this.unbuffered=$e("unbuffered",function(e){l=e===Ge},J,!0)[U],this.newline=$e("newline",function(e){if(!Et&&a.Full())return pi();var r=1;if(e===ue||null!==(r=Do(e,255))&&0<=r){for(;0<r--;)a.WriteString("\n");return l&&qs(),Ge}return ue},J,!0)[U],this.spaces=$e("spaces",function(e){if(!Et&&a.Full())return pi();var r;if(null!==(r=Do(e,255))&&0<=r){for(var n=Er[1][Er[1][0]===X?Y:K];0<r--;)a.WriteString(n);l&&qs()}return Fo(a.Column())},J,!0)[U],this.printline=$e("printline",function(e,r){return(r=d(e,r))===Rt||(a.WriteString("\n"),l&&qs()),r},O,!0)[U],this.print=$e("print",d,O,!0)[U],this.printloc=$e("printloc",function(e){return Le(Fo(a.Line()),Le(Fo(a.Column()),ue))},J,!0)[U],this.printq=$e("printq",function(e,r){if(!Et&&a.Full())return pi();for(var n,t=ue,i=0;i<e;++i)n=js(t=r(i),t!==Er[1]&&{quote:Ge},a),a.WriteString(n);return l&&qs(),t},O,!0)[U],this.radix=$e("radix",function(e){var r,n=Le(Fo(i.Radix()),Le(Fo(a.Radix()),ue));return e[0]===D&&(0<=(r=yf(e[1]))&&i.SetRadix(r),0<=(e=yf(e[2][1]))&&i.SetRadix(e)),n},J,!0)[U],this.readchar=$e("readchar",function(){var e=i.ReadChar();return null!==e?We(e):c===ue?i.EOF()?ue:pi():(e=c,c=ue,Ja(e))},J,!0)[U],this.readready=$e("readready",function(){return Fo(i.ReadReady())},J,!0)[U],this.reset=$e("reset",function(){i.Reset(),a.Reset()},J,!0)[U],this.setsymbols=$e("setsymbols",function(e){if(e===ue){if(s)return so(Object.values(s),s=!1)}else{if(e[0]!==D)return ue;for(var r={},n=e;n[0]===D;){if(n[1][0]!==X)return ue;r[n[1][Y]]=n[1],n=n[2]}s=r}return dr},J,!0)[U],this.taketext=$e("taketext",function(){return We(a.TakeText())},J,!0)[U],this.tokenread=$e("tokenread",function(e){return g()?o:p(e)},J,!0)[U],this.tokenlast=$e("tokenlast",function(e){return e===Ge&&(o=ue),o},J,!0)[U],this.tokenpush=$e("tokenpush",h,J,!0)[U],this.tokenmatch=$e("tokenmatch",function(e,r){var n=o;if(n[0]!==Q||!n[x].atom)return ue;if(Jc(n[x].atom,Ir[1])!==Ge)return v(n,e)?n:ue;for(var t=n;;){if(!g())return p(r);if((n=o)[0]!==Q||!n[x].atom)return ue;if(Jc(n[x].atom,Ir[1])!==Ge)break;t=n}return v(n,e)?n:(h(t),ue)},J,!0)[U],this.tokenpass=$e("tokenpass",function(e,r){for(var n=o;;){if(n!=ue&&!v(n,e))return n;if(!g())return p(r);n=o}},J,!0)[U],this.readex=$e("readex",function(e){return c=e},J,!0)[U],r===ue?i=Ss:B(r)?r[0]===z&&((i=new b.NaanChannel(y,t)).ScanReset(),i.SetText(r[K]),i.SetEOF()):i=r,n===ue?a=Ns:B(n)?n===mr&&(a=new b.NaanChannel(y)).SetWriteLimit(0):a=n,this.raw=Ce({read:i,write:a})}function Rs(e,r,n){var t=Ce(!1),n=new _s(t,e,r,n);return t[w]=ue,t[x]=n,t}function Fs(e,r){return e!==ue&&e[0]!==z||r!==ue&&r!==mr&&r[0]!==D?ue:(e[0]===z&&r[0]===D&&(n=Do(r[1],Number.MAX_SAFE_INTEGER),t=Do(r[2][1],Number.MAX_SAFE_INTEGER),r=ue,t={Line:n,Column:t}),Rs(e,r,t));var n,t}_s.prototype=Object.create(Bu.prototype),_s.prototype.constructor=_s;var Ws=Rs(Ss,Ns),Cs=Ss,Ls=Ns,Bs=Ws,Ds=Ws;function Xs(e){var r=Bs,n=Ds;if(r===Ws&&e!==Ge&&(r=ue),n===Ws&&e!==Ge&&(n=ue),e[0]===D){if(e[2][0]!==D)return ue;var t=e[1],e=e[2][1];if(t===ue)t=Ws;else if(t===Ge)t=Bs;else if(zs(t)!==Ge)return ue;if(e===ue)e=Ws;else if(e===Ge)e=Ds;else if(zs(e)!==Ge)return ue;Cs=(Bs=t)[x].raw[x].read,Ls=(Ds=e)[x].raw[x].write}return Le(r,Le(n,ue))}function zs(e){return E(e[0]===Q&&e[x]instanceof _s)}function Gs(){return Fo((new Date).getTime())}function Zs(){return/param/.test(function(e){})?ue:Ge}function Js(e,r){var n,t;if(e===ue)n=!1;else if(null===(n=Do(e,50))||n<0)return ue;if(r===ue)t=!1;else if(null===(t=Do(r,1e3))||t<10)return ue;return po(li(n,t),new WeakMap)}function Vs(e){return P.hasOwnProperty("edit-set-string")?(P["edit-set-string"](js(e)),e):ue}function Qs(e){return P.hasOwnProperty("edit-get-string")?We(P["edit-get-string"]()):ue}var Us=90,Hs=r+1,Ys=Us+1;function Ks(){var c=new Array(1),s=[];function l(e){var r;if(e===L)return Ys;if("object"!=typeof e)return e;var n,t,i=e[0];if(Hs<i)return Math.floor(i/Hs);if(i===Q&&!(zu(t=(n=e)[x])?!(t instanceof eo||t instanceof _s||t instanceof Qu):!!(n[w]!==ue&&A(n[w][x].persist)||t.constructor&&m.hasOwnProperty(t.constructor.name)||t.NaanPersist)))return Ys;var a=c.length+Us;s.push(e),e[0]=i+a*Hs;var u,o,f=Array(e.length);switch(c.push(f),(f[0]=i)===Q&&(r=function(e){var r,n,t=e[x],i=l(e[w]);if(zu(t))if(B(t)){for(var a=[],u=0;u<t.length;++u)a.push(l(t[u]));r={na:a}}else{for(var o={},f=Object.getOwnPropertyNames(t),c=0;c<f.length;++c)o[f[c]]=l(t[f[c]],f[c]);r=e[3]instanceof Ju?{no:o}:{nd:o},e[2]!==ue&&(r.tag=l(e[2]))}else try{r=t instanceof RegExp?{tag:i,type:t.constructor.name,state:[t.source,t.flags]}:t.StateSave!==L?{tag:i,type:t.constructor.name,state:t.StateSave()}:{tag:i,type:t.constructor.name,object:t}}catch(e){r={type:t.constructor.name}}return e[H]&&e[H]!==ue&&(n=oe.indexOf(e[H]))<0&&(n=oe.length),0<=n&&(r.xns=n),r}(e)),i){case D:f[2]=l(e[2]),f[1]=l(e[1]);break;case X:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=l(e[3]),f[4]=oe.indexOf(e[4]).toString(),f[5]=e[5];break;case z:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=e[3];break;case Z:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=e[3].toString();break;case G:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=Xo(e[3]);break;case J:case O:case V:if(!(u=Me(e[3])))return c.pop(),e[0]=i,Ys;f[1]=l(e[1]),f[2]=l(e[2]),(o=Te(u,[ce,se]))[0]===X&&o[Y]===u?f[3]=l(o):f[3]=u;break;case Q:f[1]=l(e[1]),f[2]=l(e[2]),f[3]=r;break;case k:f[1]=oe.indexOf(e).toString(),f.length=2;break;default:Ou(hu,"save-state warning: invalid element type "+i+" at "+a)}return a}for(var e,r=[],n=0;n<oe.length;++n){var t=n;t<=1&&(t=1-t),e=oe[t][te];for(var i=0,a=0;a<e.length;++a)!function(e,r){if("object"==typeof e&&e[0]==X){var n=c.length+Us;s.push(e),e[0]=X+n*Hs;n=Array(T);return c.push(n),n[0]=X,n[1]=e[1],n[2]=e[2],n[3]=e[3],n[4]=r.toString(),n[5]=e[5],1}}(e[a],t)||++i;r[t]=i,l(oe[t])}!function(){for(var e=1;e<c.length;++e){var r=c[e];r[0]===X&&(r[1]=l(r[1]),r[2]=l(r[2]),r[3]=l(r[3]))}}();var u=[];for(n=0;n<oe.length;++n){e=oe[n][te];var o=[];o.push(l(oe[n][j])),o.push(l(Fo(r[n]))),o.push(l(e[0])),u.push(o)}c[0]=u;var f=[l(pe)];for(n=0;n<fe.length;++n)f.push(l(fe[n]));var p,g=new Array(xt);for(g[0]=St,p=1;p<=xt;++p){var v=wt[p-1];"object"==typeof v?g[p]=l(v):"number"==typeof v?g[p]=-v:v===L?Ou(hu,"savestate: corrupt argstack"):g[p]=v}g[p++]=l(bt),g[p++]=l(ht),g[p++]=l(dt),g[p++]=l(vt),function(){for(var e=0;e<s.length;++e)s[e][0]%=Hs}();var d,h=new Array(kt);for(h[0]=yt,d=1;d<=kt;++d)h[d]=mt[d-1];var b=[];b[0]=g,b[1]=h,b[2]=Ot,b[3]=f,b[4]=ou;var y=new Array("Naan",900,12002,Ys);return new Array(y,c,b)}function el(e){var r,n,t,i,a,u,o,f=e[1],c=[],s=[];function l(e){if("number"!=typeof e)return B(e)?e.length===T?Ou(hu,"save-state warning: unexpected symbol "+e[Y]):Ou(hu,"save-state warning: unexpected element "+e[0]):Ou(hu,"save-state warning: invalid item encountered"),Ys;var r,n=f[e-Us];switch(n[0]){case D:break;case z:case G:case Z:if(r=n[0].toString()+"/"+n[2].toString()+"/"+n[3],s.hasOwnProperty(r))return s[r];s[r]=e,n[0]+=Hs;case D+Hs:case z+Hs:case G+Hs:case Z+Hs:default:return e}var t=l(n[S]),i=l(n[N]),a=t+i/(f.length+Us+1);return c.hasOwnProperty(a)?c[a]:(c[a]=e,n[0]=D+Hs,n[S]=t,n[N]=i,e)}for(m=1;m<f.length;++m)switch((r=f[m])[0]){case D:case z:case G:case Z:r[1]=l(r[1]),r[2]=l(r[2]);break;case X:r[1]=l(r[1]),r[2]=l(r[2]),r[3]=l(r[3]);break;case J:case O:case V:r[1]=l(r[1]),r[2]=l(r[2]),"number"==typeof r[3]&&(r[3]=l(r[3]));break;case Q:if(r[1]=l(r[1]),r[2]=l(r[2]),r[3].na!==L)for(i=r[3].na,n=0;n<i.length;++n)i[n]=l(i[n]);else if(r[3].nd!==L||r[3].no!==L){for(a=r[3].nd||r[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=l(a[u[t]]);r[3].tag&&(r[3].tag=l(r[3].tag))}}for(var p,g=f[0],v=0;v<g.length;++v)for(p=g[v],o=0;o<p.length;++o)p[o]=l(p[o]);for(var d=e[2][0],h=1;h<d.length;++h)d[h]>Us&&(d[h]=l(d[h]));for(var b=[],y=0,m=1;m<f.length;++m)switch(f[m][0]){case D:case z:case G:case Z:++y;break;default:b[m+Us]=m+Us-y}for(v=0;v<g.length;++v)for(p=g[v],o=0;o<p.length;++o)p[o]=b[p[o]];for(h=1;h<d.length;++h)d[h]>Us&&(d[h]=b[d[h]]);for(var k=e[2][3],w=0;w<k.length;++w)k[w]>Us&&(k[w]=b[k[w]]);var x=new Array(1);for(m=1;m<f.length;++m){switch((r=f[m])[0]){case D:case z:case G:case Z:continue;case D+Hs:case z+Hs:case G+Hs:case Z+Hs:r[0]-=Hs,r[1]=b[r[1]],r[2]=b[r[2]];break;case X:r[1]=b[r[1]],r[2]=b[r[2]],r[3]=b[r[3]];break;case J:case O:case V:r[1]=b[r[1]],r[2]=b[r[2]],"number"==typeof r[3]&&(r[3]=b[r[3]]);break;case Q:if(r[1]=b[r[1]],r[2]=b[r[2]],r[3].na!==L)for(i=r[3].na,n=0;n<i.length;++n)i[n]=b[i[n]];else if(r[3].nd!==L||r[3].no!==L){for(a=r[3].nd||r[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=b[a[u[t]]];r[3].tag&&(r[3].tag=b[r[3].tag])}}x.push(r)}return x[0]=g,e[1]=x,e}function rl(e){var r,n=e[1];function t(e,r){e+=Us;return r-e<=Us&&(-9<=r-e||999<r&&-99<=r-e)?r-e:r}for(r=1;r<n.length;++r){var i=n[r];switch(i[0]){case D:case z:case G:case Z:i[1]=t(r,i[1]),i[2]=t(r,i[2]);break;case X:i[1]=t(r,i[1]),i[2]=t(r,i[2]),i[3]=t(r,i[3]);break;case J:case O:case V:i[1]=t(r,i[1]),i[2]=t(r,i[2]),"number"==typeof i[3]&&(i[3]=t(r,i[3]));break;case Q:i[1]=t(r,i[1]),i[2]=t(r,i[2])}}}function nl(e,r){function n(e){return r.QuoteString(e)}function t(e){return"$"==e.substring(0,1)&&(e="\\".concat(e)),n(e)}if(0===e.length)return"";r===L&&(r=Ls);for(var i,a,u,o,f="[",c=!1,s=0;s<e.length;++s)c&&(f+=","),"object"==typeof e[s]?((u=e[s])[0]===D?1===u[2]?f+=u[1]:u[2]===Ys?1!==u[1]?f+="["+u[1]+"]":f+="0":f+="["+u[1]+","+u[2]+"]":u[0]===X&&0===u[1]&&u[2]===Ys?(o=t(u[Y]),i==u[4]?u[3]===Ys?f+=o:u[3]==a+1?f+="["+o+"]":f+="["+o+","+u[3]+"]":f+="["+o+","+u[3]+","+u[4]+"]"):u[0]===z&&0===u[1]&&u[2]===Ys?f+=n("$"+u[K]):u[0]===Q?f+=JSON.stringify(u[x]):u[0]===k?f+=JSON.stringify({ns:u[1]}):f+=nl(e[s]),u[0]===X&&(i=u[4],a=u[3])):"string"==typeof e[s]?e[0]===X&&s===Y?f+=t(e[s]):e[0]===z&&s===K?f+=n("$"+e[s]):f+=n(e[s]):e[s]!==L&&(f+=e[s]),c=!0;return f+="]"}function tl(e){var r,n=e[0];if(!("Naan"!==n[0]||900<n[1])){var t=e[1],o=t[0],i=n[3],a=e[2],u=a[0],f=u[0],c=a[1],s=a[2],l=c[0],p=a[3],g=a[4];if(t!==L&&o!==L&&i!==L&&a!==L&&u!==L&&f!==L&&c!==L&&l!==L&&p!==L){for(var v=i-1,d=new Array(t.length),h=[],b=0;b<o.length;++b)h[b]=new Array(ae);for(w=1;w<t.length;++w)"object"==typeof(r=t[w])&&r.ns!==L?d[w]=h[r.ns]:d[w]=new Array(3);for(var y,m=h[1],k=1,w=1;w<t.length;++w)if("number"!=typeof(r=t[w]))if("string"!=typeof r){if("object"!=typeof r||0===r.length)return void Ou(hu,"loadstate: unexpected token: "+typeof r);if(B(r))if(1!=r.length)if(2!=r.length)if(3!=r.length){var x,O,S,N,j=r[0];for(d[w][0]=j,x=1;x<r.length;++x)if(O=r[x],j===X&&(x===U&&(k=W(O)),x===H&&(m=(m=h[parseInt(O)])||ue)),j===G&&x===ee)d[w][x]=zo(O);else if(j===Z&&x===re)d[w][x]=parseFloat(O);else if(J<=j&&j<=V&&x===ne)if((N="string"==typeof O?xe[O]:(N="string"==typeof(S=t[W(O)])?S:3<S.length?S[Y]:S[0],xe[C(N)]))===L){debugger;Ou(hu,"state-load warning: undefined builtin: "+O+"("+S+")"),d[w][x]=Pa}else d[w][x]=N;else d[w][x]=j===z&&x===K?O:j===X&&x===Y?C(O):j===X&&x===H?h[parseInt(O)]:d[W(O)]}else{if("string"!=typeof r[0])return void Ou(hu,"loadstate: malformed obj3: "+typeof r[0]);d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],k=W(r[1]),d[w][3]=d[k],m=(m=h[parseInt(r[2])])||ue,d[w][4]=m,d[w][5]=C(r[0])}else if("string"==typeof r[0])d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],k=W(r[1]),d[w][3]=d[k],d[w][4]=m,d[w][5]=C(r[0]);else{if("number"!=typeof r[0])return void Ou(hu,"loadstate: malformed obj2: "+typeof r[0]);d[w][0]=D,d[w][1]=d[W(r[0])],d[w][2]=d[W(r[1])]}else if("string"==typeof r[0])d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=d[++k],d[w][4]=m,d[w][5]=C(r[0]);else{if("number"!=typeof r[0])return void Ou(hu,"loadstate: malformed obj1: "+typeof r[0]);d[w][0]=D,d[w][1]=d[W(r[0])],d[w][2]=d[1]}else{d[w][0]=Q,d[w][1]=d[w],d[w][2]=d[1],d[w][4]=d[1];try{if(r.na!==L){var T,P=[];for(P[Lu]=Bu,T=0;T<r.na.length;++T)P.push(d[W(r.na[T])]);d[w][3]=P,0<=r.xns&&!(d[w][4]=h[r.xns])&&(d[w][4]=le)}else if(r.nd!==L||r.no!==L){for(var A=new(r.nd?Gu:Ju),I=r.nd||r.no,E=Object.getOwnPropertyNames(I),$=0;$<E.length;++$)A[E[$]]=d[W(I[E[$]])];r.tag!==L&&(d[w][2]=d[W(r.tag)]),d[w][3]=A,0<=r.xns&&!(d[w][4]=h[r.xns])&&(d[w][4]=le)}else r.ns!==L||(y="undefined"!=typeof window?window:global,r.tag&&(d[w][2]=d[W(r.tag)]),r.type&&r.state!==L?d[w][3]=new(Function.prototype.bind.apply(y[r.type],[null].concat(r.state))):r.object!==L?r.type&&"Object"!==r.type&&y[r.type]!==L?d[w][3]=new y[r.type](r.object):d[w][3]=r.object:d[w][3]={})}catch(e){d[w][3]={}}}}else"$"==r.substring(0,1)?(d[w][0]=z,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=r.substring(1)):(d[w][0]=X,d[w][1]=d[w],d[w][2]=d[1],d[w][3]=d[1],d[w][4]=m,d[w][5]=C(r));else d[w][0]=D,0===r?(d[w][1]=d[w+1],d[w][2]=d[1]):(d[w][1]=d[W(r)],d[w][2]=d[w+1]);var M,q=new Array(u.length),_=oe,R=fe,n=ce,e=se,a=le,i=pe;if(!function(){try{for(ge(),oe=[],fe=[],ce=h[0],se=h[1],b=0;b<o.length;++b){for(var e=o[b],r=d[e[0]-v],n=Lo(d[e[1]-v][3],99999),t=e[2]-v,i=ve(r,h[b]),a=0;a<n;++a){var u=d[t+a];(u[H]=i)[te].push(u),i[ie][u[Y]]=a}if(i[te].length!=n)return void Ou(hu,"loadstate: symbol table sync: "+r[K]+" "+i[te].length+" "+n)}return se[te].length<50||M<0||f<0||M<f?void Ou(hu,"loadstate: unqualified "+se[te].length):1}catch(e){return void Ou(hu,"loadstate failed: "+e.toString())}}())return oe=_,fe=R,ce=n,se=e,le=a,void(pe=i);for(fe=[ce,se],pe=ce,pl(),gl(),fe=[],b=1;b<p.length;++b)fe.push(d[p[b]-v]);for(pe=d[p[0]-v],M=1;M<u.length;++M){var F=u[M],F="number"==typeof F?F<=0?-F:d[F-v]:F;q[M-1]=F}return c.splice(0,1),yt=l,kt=(mt=c).length,xt=M-1,St=f,Ot=s,vt=(wt=q)[--xt],dt=wt[--xt],ht=wt[--xt],bt=wt[--xt],ou=g,1}Ou(hu,"cannot load malformed state")}function W(e){return e<=v?w+e:e-v}function C(e){return"\\$"===e.substring(0,2)?e.substring(1):e}}function il(e){var r,n=Te("SaveTrap",oe);if(n!==ue&&n[U]!==ue&&($t=-1,Kt(Le(n,ue),"savetrap"),ni(!0),qt!==Ge))return r;n=Ks();return e&&el(n),rl(n),r=nl(n)}function al(e){if(!tl(e))return ue;vl(),dl();e=Te("LoadTrap",oe);if(e===ue)return cl;e=Kt(Le(e,ue),"loadtrap");return mt[kt++]=yt,e}function ul(e){e=il(e!=ue);return"string"==typeof e?We(e):e}var ol=$e("save",ul,J);function fl(e){if(e[0]!==z)return ue;e=JSON.parse(e[K]);return e&&0!==e.length?al(e):ue}var cl=$e("load",fl,J),sl=[["global","`",wf,V],["global","deref",Ba,V],["global",".",Da,V],["global","quote",wf,V],["global","$",uc,J],["exec","and",_a,V],["exec","apply",Ia,J],["exec","break",Ha,J],["exec","call",Ea,V],["exec","catch",Ga,V],["exec","cond",Ca,V],["exec","continue",Ya,J],["exec","eval",Aa,J],["exec","lambda",xc,J],["exec","loop",Fa,V],["exec","or",Ra,V],["exec","return",Ua,O],["exec","throw",Ja,J],["exec","yield",au,J],["exec","resume",uu,J],["info","builtin",Ec,O],["info","procedure",$c,O],["info","eq",Gc,J],["info","equal",Jc,J],["info","length",Os,J],["info","not",Kc,J],["info","typeof",wc,O],["info","relate",Hc,J],["symbol","setq",Wa,V],["symbol","assign",rs,J],["symbol","compress",ws,O],["symbol","copyproc",fs,J],["symbol","copyann",as,J],["symbol","exists",ms,J],["symbol","get",ts,J],["symbol","getproc",us,J],["symbol","interned",jc,J],["symbol","defbinding",Tc,J],["symbol","moveproc",ss,J],["symbol","name",Ic,O],["symbol","ordered",Yc,J],["symbol","preadjust",Xa,V],["symbol","postadjust",za,V],["symbol","put",is,J],["symbol","putproc",os,J],["symbol","replacer",ac,J],["symbol","symbol",Pc,O],["symbol","unintern",ys,J],["tuple","atom",Cc,O],["tuple","car",xf,J],["tuple","cdr",Of,J],["tuple","caar",Sf,J],["tuple","cadr",Nf,J],["tuple","cdar",jf,J],["tuple","cddr",Tf,J],["tuple","caaar",Pf,J],["tuple","caadr",Af,J],["tuple","cadar",If,J],["tuple","caddr",Ef,J],["tuple","cdaar",$f,J],["tuple","cdadr",Mf,J],["tuple","cddar",qf,J],["tuple","cdddr",_f,J],["tuple","caaaar",Rf,J],["tuple","caaadr",Ff,J],["tuple","caadar",Wf,J],["tuple","caaddr",Cf,J],["tuple","cadaar",Lf,J],["tuple","cadadr",Bf,J],["tuple","caddar",Df,J],["tuple","cadddr",Xf,J],["tuple","cdaaar",zf,J],["tuple","cdaadr",Gf,J],["tuple","cdadar",Zf,J],["tuple","cdaddr",Jf,J],["tuple","cddaar",Vf,J],["tuple","cddadr",Qf,J],["tuple","cdddar",Uf,J],["tuple","cddddr",Hf,J],["tuple","cons",Yf,O],["tuple","insert",Kf,O],["tuple","empty",Lc,O],["tuple","first",xf,J],["tuple","ffirst",Sf,J],["tuple","fsecond",Af,J],["tuple","list",qa,V],["tuple","member",Vc,J],["tuple","within",Qc,J],["tuple","pop",ic,V],["tuple","push",La,V],["tuple","rest",Of,J],["tuple","reverse",ec,J],["tuple","rrest",Tf,J],["tuple","rrrest",_f,J],["tuple","second",Nf,J],["tuple","third",Ef,J],["tuple","totuple",ho,J],["tuple","tuple",Wc,O],["tuple","tuplepath",oc,J],["number","bitand",uf,O],["number","bitnot",tf,J],["number","bitor",ff,O],["number","bitxor",sf,O],["number","difference",Qo,O],["number","divide",nf,J],["number","even",zc,J],["number","float",Nc,O],["number","greater",df,J],["number","integer",Sc,O],["number","lesser",hf,J],["number","mod",rf,J],["number","negate",Go,J],["number","negative",Dc,J],["number","numeric",Oc,O],["number","plus",Jo,O],["number","positive",Bc,J],["number","quotient",Ko,J],["number","shiftleft",pf,J],["number","shiftright",vf,J],["number","times",Ho,O],["number","tofloat",bf,J],["number","toint",mf,J],["number","zero",Xc,J],["string","explode",xs,J],["string","strcat",hs,O],["string","string",Ac,O],["string","tostring",ds,J],["string","unicode",bs,J],["array","array",Mc,O],["array","arraycall",bo,O],["dictionary","dictionary",_c,O],["dictionary","set.",co,J],["dictionary","set[",co,J],["dictionary","merge",ko,O],["dictionary","keys",mo,J],["dictionary","defined",yo,J],["dictionary","object",Fc,O],["local","instances",tc,J],["local","delete",vs,O],["local","enclose",nc,J],["local","namespace",ls,J],["local","new",Xu,J],["local","nonce",no,J],["local","nsactive",ps,J],["local","nscaller",nu,J],["local","caller",ru,J],["local","nsrights",gs,O],["local","symlist",rc,J],["local","weakmap",uo,J],["host","editget",Qs,J],["host","editset",Vs,J],["host","future",to,J],["host","futures",io,J],["host","loadstate",fl,J],["host","milliseconds",Gs,J],["host","mangled",Zs,J],["host","runaverage",Js,J],["host","savestate",ul,J],["host","sprint",Io,J],["host","wait",_o,J],["stdio","textstream",zs,J],["stdio","textstreams",Xs,J],["stdio","isbreak",Ms,J],["stdio","newline",Es,J],["stdio","spaces",$s,J],["stdio","printline",Ts,O],["stdio","print",Ps,O],["stdio","printloc",Is,J],["stdio","printq",As,O],["stdio","printFlush",qs,J],["external","xapply",To,J],["external","xcall",No,O],["external","xget",Oo,J],["external","xdefined",yo,J],["external","xkeys",mo,J],["external","xlock",xo,J],["external","xnew",Po,O],["external","xobject",wo,J],["external","xset",So,J],["debug","breakpoint",Fu,O],["debug","debuglog",qu,O],["debug","jsdebugger",_u,O],["debug","loglevel",Ru,J],["debug","stacktrace",$u,J],["debug","stacktrap",Cu,J],["debug","symtrace",Mu,V]];function ll(e,r,n){var t=pr[S],i=t[x][e];i||(i=Zu(),xo(t[x][e]=i,ce)),i[x][r]||(i[x][r]=n)}function pl(){var e=pr[S];e!==ue&&e[0]===Q&&zu(e[x])||(xo(e=Zu(),ce),pr[S]=e);var r,n=je("App"),t=n[S];for(t!==ue&&t[0]===Q&&zu(t[x])||(t=Zu(),n[S]=t),r=0;r<sl.length;++r){var i=sl[r][0],a=sl[r][1],u=sl[r][2],o=sl[r][3],f=(sl[r][4],je(a));f!==ue&&f[U]!==ue||(f=$e(a,u,o)),we(a,se)||ll(i,a,f)}e[x].module||(e[x].module=Zu()),pr=je("Naan"),ar=je("deref"),ur=je("."),er=je("exception"),rr=je("escape"),ue=je("false"),ir=je("`"),nr=je("this"),tr=je("self"),Xe=je("undefined"),ze=je("null"),Ge=je("true"),Ze=je("lambda"),or=je("body"),_r=je("call"),cr=je("catch"),Ue=je("closure"),Je=je("function"),Ve=je("function&"),He=je("let"),Ye=je("let&"),fr=je("loop"),Qe=je("macro"),Ke=je("var"),gr=je("builtin"),lr=je("list"),vr=je("tuple"),dr=je("symbol"),hr=je("integer"),br=je("float"),yr=je("numeric"),mr=je("string"),kr=je("array"),Rr=je("arraycall"),wr=je("dictionary"),xr=je("object"),Sr=je("namespace"),Nr=je("nonce"),ol=je("save"),cl=je("load"),Ar=je("$"),jr=je("weakmap"),Pr=je("sprint"),Fr=je("xget"),Wr=je("xset"),Cr=je("xcall"),Lr=je("xapply"),Or=je("xobject"),Tr=je("textstream"),Er=je("space"),Ir=je("cr"),Wu=je("breakpoint"),sr=je("interrupt")}function gl(){function e(e,r){is(vr,We(e),je(r||e)[U])}function r(e,r){is(vr,We(e),r)}function n(e,r){is(dr,We(e),je(r||e)[U])}function t(e,r){is(mr,We(e),je(r||e)[U])}function i(e,r){is(hr,We(e),je(r||e)[U])}function a(e,r){is(br,We(e),je(r||e)[U])}function u(e,r){is(kr,We(e),je(r||e)[U])}function o(e,r){is(Sr,We(e),je(r||e)[U])}function f(e,r){is(Sr,We(e),r)}e("atom"),e("insert"),e("length"),e("reverse"),e("tostring"),e("tuple"),e("typeof"),r("member",$e("member",function(e,r){return Vc(r,e)},J,!0)),r("toarray",$e("toarray",function(e){return Xu(kr,e)},J,!0)),r("within",$e("within",function(e,r){return Qc(r,e)},J,!0)),n("atom"),n("copyproc"),n("copyann"),n("interned"),n("length"),n("namespace"),n("proc","getproc"),n("putproc"),n("symbol"),n("tostring"),n("typeof"),n("value","car"),t("append","strcat"),t("atom"),t("interned"),t("length"),t("string"),t("tostring"),t("unicode"),t("typeof"),i("atom"),i("even"),i("integer"),i("negate"),i("negative"),i("numeric"),i("length"),i("positive"),i("tofloat"),i("toint"),i("tostring"),i("typeof"),i("unicode"),i("zero"),a("atom"),a("even"),a("float"),a("negate"),a("negative"),a("numeric"),a("length"),a("positive"),a("tofloat"),a("toint"),a("tostring"),a("typeof"),a("zero"),u("atom"),u("tostring"),u("totuple"),u("typeof"),o("atom"),o("typeof"),f("tostring",$e("tostring",function(e){return e[0]===k?e[j]:ue},J,!0)),f("length",$e("length",function(e){var r;return e[0]===k&&0<=(r=oe.indexOf(e))?Fo(oe[r][te].length):ue},J,!0)),f("symbols",$e("symbols",function(e){if(e[0]===k&&0<=(r=oe.indexOf(e))){var r=oe[r][te].slice();return r[Lu]=Bu,Ce(r)}return ue},J,!0)),f("index",$e("index",function(e){var r;return e[0]===k&&0<=(r=oe.indexOf(e))?Xu(lo(oe[r][ie]),ue):ue},J,!0)),f("lookup",$e("lookup",function(e,r){var n,r=ks(r);if(e[0]===k&&0<=(n=oe.indexOf(e))){r=oe[n][ie][r],r=oe[n][te][r];if(r)return r}return ue},J,!0))}function vl(){for(var e in l)l.hasOwnProperty(e)&&Ie(e,lo(l[e]))}function dl(){P.hasOwnProperty("init-load")&&P["init-load"]()}Ht(),pl(),gl(),vl(),this.Process=function(e,r,n){try{return n=n||"false",0<e.length&&(qo(),Cs.SetText(e),r&&Ls.WriteString("\r")),ri()||(Ht(),Yt(De(["loop",["catch",[["driver",n]],[[["equal","exception","driver"]]],"false"]])),n="false"),It=0,ni(!1),ri()}catch(e){return Ou(hu,"Naan internal error (101): "+e.toString()),!1}},this.GetOutput=function(){return Ls.TakeText()},this.SetInput=function(e,r){Cs.WriteString(e),r&&Cs.SetEOF()},this.RunOutput=function(){try{return It=0,ni(!1),Ls.TakeText()}catch(e){return Ou(hu,"Naan internal error (102): "+e.toString()),null}},this.Run=function(){try{return It=0,ni(!1),ri()}catch(e){return Ou(hu,"Naan internal error (103): "+e.toString()),!1}},this.Escape=function(){try{return qo(),Cs.ScanReset(),Cs.SetText(""),Ls.TakeText(),Va(De(["internal","escape"])),!1}catch(e){return Ou(hu,"Naan internal error (104): "+e.toString()),null}},this.Banner=function(){return Ls.WriteString("\rWelcome to Naan v1.4.4+1\n"),!0},this.StateSave=function(e){e=il(e);return"string"==typeof e&&e},this.StateLoad=function(e){try{return al(JSON.parse(e))!==ue}catch(e){return Ou(hu,"Naan StateLoad failed: "+e.toString()),!1}},this.StateDefault=function(){return dl(),!0},this.On=function(e,r){P[e]=r},this.Signal=function(){qo()},this.Status=function(e,r){return li(e,r)},this._InheritNamespace=function(e){for(var r=fe,n=0;n<oe.length;++n){var t,i=oe[n];if(Fe(i[j])==e){fe.indexOf(i)<0&&(t=fe.shift(),fe.unshift(i),t&&fe.unshift(t));break}}return r},this._SetNamespace=function(e,r){var n,t=fe;return"string"==typeof e?he(Le(ve(We(e)),M(fe)),!0):B(e)?(n=fe[0],fe=e,!r&&fe.indexOf(n)<0&&fe.push(n)):Ou(hu,"_SetNamespace: invalid argument: "+e),t},this._AddNamedObject=function(e,r){if("string"!=typeof e||0===e.length||"object"!=typeof r)return!1;r=Ce(r);return Dr(e)[1]=r,!0},this._SetValue=function(e,r){if("string"!=typeof e||0===e.length)return!1;r=r===L?Dr(e):Ie(e,Be(r));return r!==ue},this._AddSymbolWithTarget=function(e,r){if("string"!=typeof e||0===e.length)return!1;if("string"!=typeof r||0===r.length)return!1;var n=je(r);return n===ue&&(n=Dr(r)),Dr(e),Ie(e,n)!==ue},this._AddPropertyList=function(e,r){return"string"==typeof e&&0!==e.length&&("object"==typeof r&&qe(e,r)[Y])},this._SetBindingList=function(e,r){if("string"!=typeof e||0===e.length)return!1;if("object"!=typeof r)return!1;r=Re(Be(r));return r!==ue&&(_e(e,r),!0)},this._CopyBinding=function(e,r){if("string"!=typeof e||0===e.length)return!1;if("string"!=typeof r||0===r.length)return!1;e=je(e);return e!==ue&&(_e(r,e[U]),!0)},this._Execute=function(e){if("object"!=typeof e)return!1;var r=Be(e);if(r===ue)return!1;e=$t;$t=-1;r=vo(ei(r));return $t=e,r},this._Export=function(e,r){if(!pr)return!1;if("string"!=typeof r||0===r.length)return!1;var n=je(r);return n!==ue&&(ll(e,r,n),!0)},this._Import=function(e,r,n){if(!pr)return!1;if(r===L){var t=pr[S][x][e];if(t===L)return!1;for(var i=Object.getOwnPropertyNames(t[x]),a=0;a<i.length;++a)this._Import(e,i[a]);return!0}if("string"!=typeof r||0===r.length)return!1;if(n===L)n=r;else if("string"!=typeof n||0===n.length)return!1;var u,t=fe.indexOf(ce);0<=t&&fe.splice(t,1);try{u=pr[S][x][e][x][r]}catch(e){u=!1}return!!u&&(_e(n,u[U]),!0)}}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
34
+ !function(Po){Po.NaanInterpreter=function(){"use strict";var B,D=new(Po.LeemonBigIntegerLib?Po:require("./bigint.js")).LeemonBigIntegerLib,b=Po.NaanChannel?Po:require("./naan_io.js"),s={Number:Number,String:String,Date:Date,RegExp:RegExp,Array:Array,Math:Math,Promise:Promise},m={Number:Number,String:String,Date:Date,RegExp:RegExp};function X(r){return r instanceof Array||"[object Array]"===Object.prototype.toString.apply(r)}var k=Math.log2(Number.MAX_SAFE_INTEGER),i=Math.log2(Number.MAX_VALUE),n=131072,p="\b\f\n\0\r\t\v ~`@#$%^&*()_+-={}|[]\\:\";'<>?,./",y=this,z=1,G=2,Z=3,J=4,V=5,Q=6,O=7,U=8,H=9,w=10,g=0,S=1,N=2,a=2,Y=3,K=4,rr=5,x=2,er=3,nr=3,tr=3,ir=3,j=3,P=2,ar=3,ur=4,l=N+1,T=rr+1,t=er+1,u=nr+1,o=tr+1,f=N+1,c=j+1,or=ur+1,A={},fr=null;function I(r){return r&&r!==fr&&r!==_r&&r!==Fr}function E(r){return r===Br||r===Wr||r===Cr||r===Lr||r===Dr||r===Xr}function $(r){return r?qr:fr}function v(r){return r===B?_r:null===r?Fr:r}function d(r){for(var e=fr,n=r.length-1;0<=n;--n)e=Er(r[n],e);return e}function h(r,e){for(var n=Object.getOwnPropertyNames(e),t=0;t<n.length;++t){var i=n[t];r[i]=e[i]}}function M(r,e){return r===fr?fr:(e&&e!==fr||(e=ta()),Mu(r)!==fr&&h(e[j],r[j]),e)}function _(r){for(var e=0;r[0]===G;){if(++e>Pt)return fr;if(r[Y]!==fr)r=r[Y];else{if(r[1]===r)break;r=r[1]}}return r}var cr,sr,lr,pr,gr=[],vr=[],F=1e5;function dr(){gr=[],vr=[],cr=hr(Ar("NaanRoot")),sr=hr(Ar("NaanCore")),lr=hr(Ar("NaanConst")),gr.pop(),vr.push(sr),pr=cr}function hr(r,e){return r===B?fr:(e===B&&(e=new Array(or)),e[0]=w,(e[1]=e)[2]=r,e[3]=[],e[4]={},gr.push(e),e)}function q(r){r=r&&r[0]===w?Yu(r[P]):"nowhere";return r}function R(r,e){for(var n=[],t=d(vr);r[g]===z;){var i=r[S];i===fr&&(i=cr),i[0]===w&&n.indexOf(i)<0&&n.push(i),r=r[N]}if(0<n.length){if(!e&&n[0]!==vr[0]&&pr!=n[0]&&pr!==cr)return bi(Mr(["internal","$"+Yu(pr)+": no privileges to activate "+q(n[0])])),fr;vr=n}return t}function W(l){var r,e,n,p=new WeakMap,g={};function v(r){r=function r(e){var n;if("object"!=typeof e)return e;if(p.get(e))return p.get(e);switch(p.set(e,e),e[0]){case z:for(var t=e;;){var i=t[1],a=t[2];if(t[1]=v(i),a===fr)break;if(a[0]!==z){t[2]=v(a);break}if(t=a,p.get(t))break;p.set(t,t)}return e;case H:if(e[K]===l)p.set(e,fr),e=fr;else if(ea(e[j])){var u=e[j];if(X(e[j]))for(var o=0;o<u.length;++o)(n=r(u[o]))===g?u.splice(o,1):u[o]=n;else for(var f,c=Object.getOwnPropertyNames(u),s=0;s<c.length;++s)(n=r(u[f=c[s]]))===g?delete u[f]:u[f]=n}return e;case G:return e[K]===l?((e[1]=e)[2]=fr,e[3]=fr,e[4]=fr):(e[1]=v(e[1]),e[2]=v(e[2]),e[3]=v(e[3])),e}return e}(r);return r===g?fr:r}for(p.set(g,g),p.set(l,g),r=0;r<gr.length;++r)if(gr[r]!==l)for(n=gr[r][ar],e=0;e<n.length;++e)v(n[e]);for(var t=1;t<=pt;++t)lt[t-1]=v(lt[t-1]);var i=vr.indexOf(l);0<=i&&vr.splice(i,1),0<=(i=gr.indexOf(l))&&gr.splice(i,1)}function C(r){for(var e=0;e<vr.length;++e){var n=vr[e];if(n[ur].hasOwnProperty(r)){var t=n[ur][r];return n[ar][t]}}return!1}function L(r,e){return!!e[ur].hasOwnProperty(r)&&e[ar][e[ur][r]]}var br={};function yr(r){var e=new Array(T);return fr||(fr=e,dr()),e[0]=G,(e[1]=e)[2]=fr,e[3]=fr,e[4]=fr,e[5]=r,e}function mr(r){var e,n,t=C(r);return t||(t=yr(r),e=t,n=vr[0],r=e[rr],t=n[ur][r],n[ar][t]===e||((e[K]=n)[ur][r]=n[ar].length,n[ar].push(e)),e)}function kr(r){r=C(r);return r||fr}function wr(r,e){var n,t;for(n in e)if(t=L(r,e[n]))return t;return fr}function xr(r,e){return wr(e,[r[K],cr,sr])}function Or(r){if(r[K][0]!==w)return-1;var e=gr.indexOf(r[K]);if(e<0)return Xi(qi,"can't find namespace for symbol \""+r[rr]+'"'),0;var n=e*F,e=gr[e][ur][r[rr]];return"number"!=typeof e?(Xi(qi,"can't find interned symbol \""+r[rr]+'"'),0):n+e}function Sr(r,e){r=mr(r);return r===fr&&Xi(qi,"can't set that: "+e),r===fr?fr:(e===B?e=r:"string"==typeof e?e=mr(e):"number"==typeof e&&(e=Ia(e)),r[1]=e,r)}function Nr(r,e,n,t){var i=(t?yr:mr)(r);i===fr&&Xi(qi,"can't add builtin \""+i+'"');var a=new Array(f);return a[0]=n,(a[1]=a)[2]=i,a[3]=e,i[Y]=a,t||(br[r]=e),i}function jr(r){for(var e=Object.getOwnPropertyNames(br),n=0;n<e.length;++n)if(br[e[n]]===r)return e[n];return B}function Pr(r,e){r=mr(r);return I(r)||Xi(qi,"can't add that: "+e),r[Y]=e,r}function Tr(r){return r[0]===G?r[rr]:r[0]===Z?r[er]:""}function Ar(r){var e=new Array(t);return e[0]=Z,(e[1]=e)[2]=fr,e[3]=r,e}function Ir(r){var e=new Array(c);return e[0]=H,(e[1]=e)[2]=fr,e[3]=r,e[4]=fr,e}function Er(r,e){var n=new Array(l);return n[0]=z,n[1]=r,n[2]=e,n}function $r(r){if("string"==typeof r)return 1<r.length&&"."==r.substring(0,1)?Ea(parseFloat(r.substring(1))):"$"==r.substring(0,1)?Ar(r.substring(1)):("\\"==r.substring(0,1)&&(r=r.substring(1)),je(r));if("number"==typeof r)return Ia(r);if("object"==typeof r){if(X(r)){for(var e=fr,n=e,t=0;t<r.length;++t){var i=new Array(l);i[0]=z,i[1]=$r(r[t]),n!==(i[2]=fr)?n[2]=i:e=i,n=i}return e}if(r.hasOwnProperty("dictionary")){var a=new na,u=r.dictionary,o=Object.getOwnPropertyNames(u);for(t=0;t<o.length;++t){var f=o[t];"$"!=f.substring(0,1)&&"\\"!=f.substring(0,1)||(f=f.substring(1)),a[f]=$r(u[o[t]])}var c=Ir(a);return r.tag!==B&&(c[2]=$r(r.tag)),c}if(r.hasOwnProperty("array")){var s=[];for(u=r.array,s[Hi]=Yi,t=0;t<u.length;++t)s[t]=$r(u[t]);return Ir(s)}if(r.hasOwnProperty("xobject"))return Ir(r.xobject)}return Xi(Wi,"naanParseJsValue warning: can't parse "+typeof r),fr}function Mr(r){var e=vr;(vr=vr.slice()).push(cr);r=$r(r);return vr=e,r}mr("false");var _r=mr("undefined"),Fr=mr("null"),qr=mr("true"),Rr=mr("lambda"),Wr=mr("function"),Cr=mr("function&"),Lr=mr("macro"),Br=mr("closure"),Dr=mr("let"),Xr=mr("let&"),zr=(mr("var"),mr("exception")),Gr=mr("escape"),Zr=mr("this"),Jr=mr("self"),Vr=mr("`"),Qr=(mr("deref"),mr(".")),Ur=mr("body"),Hr=mr("loop"),Yr=mr("catch"),Kr=mr("interrupt"),re=(mr("list"),mr("Naan")),ee=mr("builtin"),ne=mr("tuple"),te=mr("symbol"),ie=mr("integer"),ae=mr("float"),ue=mr("numeric"),oe=mr("string"),fe=mr("array"),ce=mr("dictionary"),se=mr("object"),le=mr("xobject"),pe=mr("namespace"),ge=mr("nonce"),ve=mr("weakmap"),de=mr("textstream"),he=mr("sprint"),be=mr("$");mr("driver"),mr("App"),mr("identity"),mr("js"),function(){for(var r in s)s.hasOwnProperty(r)&&mr(r)}();var ye=Sr("cr","\n"),me=mr("space");me[1]=Ar(" "),Sr("doublequote",'"'),Sr("rpar",")"),Sr("lpar","("),Sr("comma",","),Sr("quote","`"),Sr("period","."),Sr("sprint",fr),vr=[cr,sr];var ke=Ar(".closure"),we=Ar(".tostring"),xe=mr("throw"),Oe=(mr("call"),mr("arraycall")),Se=(mr("xget"),mr("xset"),mr("xcall"));mr("xapply");function Ne(r){if(re[1][0]!==H)return fr;for(var e=Object.getOwnPropertyNames(re[1][j]),n=0;n<e.length;++n){var t=re[1][j][e[n]][j];if(t.hasOwnProperty(r)){if(t[r][0]===G)return t[r];break}}return fr}function je(r){var e=C(r);if(e)return e;if(e=mr(r),re[1][0]!==H)return e;var n=Ne(r);return"future"!==r&&(n=n[Y])===fr||(e[Y]=n),e}function Pe(r,e){if((r[0]===G||e&&r[0]===H)&&I(r)){if(r[K]===fr)return 1;if(pr==r[K])return 1;if(vr[0]===r[K])return 1;if(pr===cr)return 1;e=q(r[K])+ao.NSinfix;r[0]===G?e+=r[rr]:e+=Yu(r),bi(Mr(["internal","$can't modify "+e+" from "+q(pr)]),fr)}else bi(Mr(["internal","$attempt to modify constant "+Yu(r)]),fr)}function Te(r,e){try{return function(r,b){var u,o,e,n={};function y(r,e,n){if(e[0]!==G||((a=e)===fr||a===_r||a===Fr||a===Rr||E(a)))for(;e[0]===z;)y(r,e[1],n),e=e[2];else{var t=e[rr];if(n===Cr||n===Xr){if(e[K]===b||b===fr)return;u!==Br&&u!==Lr&&Xi(Wi,"warning: using "+ao.NSinfix+t+" for parameter "+q(e[K])+ao.NSinfix+t+" in "+q(b)+ao.NSinfix+o[rr])}var i=yr(t);i[K]=b===fr?e[K]:b;a=r[t];a&&(i[Y]=a[Y]),r[t]=i}var a}function m(r,e){for(;e[0]===z;){if(e[1][0]===z&&e[1][1]!==Vr)if(E(e[1][1])){var n=e[1][2][1];if(n!==fr&&n[rr]!==Rr[rr]){var t=n[rr],i=yr(t);if(i[K]=b===fr?n[K]:b,i[Y]=e[1],r.hasOwnProperty(t))throw"duplicate procedure name "+t+" in "+o[rr];r[t]=i}}else m(r,e[1]);e=e[2]}}function k(r,e,n,t){if(r[0]!==z){if(r[0]===H&&ea(r[3])){var i=r[j];if(X(i)){for(var a=ra(fe,fr),u=0;u<i.length;++u)a[j][u]=k(i[u],e,n,t);return a}var o,f=Object.getOwnPropertyNames(i),c=(r[3]instanceof ia?aa:ta)();for(c[2]=r[2],o=0;o<f.length;++o)c[j][f[o]]=k(i[f[o]],e,n,t);return c}return r[0]!==G?r:e.hasOwnProperty(r[rr])?e[r[rr]]:r}if(!n&&E(r[1])){var s=k(r[2][1],e,!1,t);s[rr]===Rr[rr]&&((s=yr(s[rr]))[S]=Rr,s[K]=b!==fr?b:s[K]);var l=r[2][2][1],p=r[2][2][2],g={};m(g,p),y(g=Object.assign({},e,g),l,r[1]);p=Er(k(l,g,!1,t),k(p,g,!1,s)),g=Er(r[1],Er(s,p));return s[Y]=g,t&&(s[2]===fr&&(s[2]=ra(ce,fr)),(s[2][3][".parent"]=t)[2]===fr&&(t[2]=ra(ce,fr)),p=(p=t[2][3][".children"])||fr,t[2][3][".children"]=Er(s,p)),g}r[1]===Vr&&(n=!0);for(var v=fr,d=null;r[0]===z;){var h=Er(k(r[1],e,n,t),fr);r.breakpoint&&(h.breakpoint=r.breakpoint),d?d[2]=h:v=h,d=h,r=r[2]}return r!==fr&&d&&(d[2]=r),v}if(r[0]!==z)return fr;if(u=r[1],(o=r[2][1])[0]!==G)return fr;var t=b!==fr?b:o[K];o[K]!==t||(u!==Wr&&u!==Cr||o[Y]!==r)&&o[Y]!==fr?((e=yr(o[rr]))[S]=o,e[K]=t,e[a]=M(o[a]),u!==Br&&u!==Lr||e[a][".base"]||(e[2]===fr&&(e[2]=ra(ce,fr)),e[2][3][".base"]=o)):e=o;e[2]!=fr&&delete e[2][3][".children"];y(n,Zr),n[Zr[rr]][1]=e,m(n,r[2][2][2]),y(n,r[2][2][1],u),t=k(r[2][2][1],n,!1),n=k(r[2][2][2],n,!1,e);n=Er(u,Er(e,Er(t,n)));return e[Y]=n}(r,e)}catch(r){return r}}var Ae,Ie,Ee,$e,Me,_e=0,Fe=1,e=2,r=3,qe=4,Re=5,We=6,Ce=7,Le=8,Be=9,De=10,Xe=11,ze=12,Ge=13,Ze=14,Je=15,Ve=16,Qe=17,Ue=18,He=19,Ye=20,Ke=21,rn=22,en=23,nn=24,tn=25,an=26,un=27,on=28,fn=29,cn=30,sn=31,ln=32,pn=33,gn=34,vn=35,dn=36,hn=37,bn=38,yn=39,mn=40,kn=41,wn=42,xn=43,On=44,Sn=45,Nn=46,jn=47,Pn=48,Tn=49,An=50,In=51,En=52,$n=53,Mn=54,_n=55,Fn=56,qn=90,Rn=91,Wn=92,Cn=93,Ln=94,Bn=0,Dn=1,Xn=2,zn=3,Gn=4,Zn=5,Jn=6,Vn=57,Qn=58,Un=59,Hn=95,Yn=96,Kn=[];Kn[_e]=function(){},Kn[pn]=function(){var r=Ae,e=0;if(r[0]!==z){if(r[0]===H&&ea(r[3])){if(X((Ae=r)[3]))return void(Me=Ue);if(r[3]instanceof na)return void(Me=mn)}return Ae=r[1],void(Me=ct[--st])}var n=r[1];for(;n[0]===G;){if(++e>Pt)return Me=ct[--st],void(Ae=fr);if(n[3]!==fr)n=n[3];else{if(n[1]===n)break;if((n=n[1])[0]===H)return Me=ln,$e=n,Ee=qr,Ie=r[2],void(Ae=n)}}if(n[0]===z&&E(n[1])||n[0]===Q||n[0]===O||n[0]===U)return Me=ln,$e=r[1],Ee=qr,Ie=r[2],void(Ae=n);if(E(n))return void(Me=ct[--st]);Me=tn},Kn[hn]=function(){Ae[0]===G&&(Ae=_(Ae[Y]));$e=Ae[0]===z?Ae:Rr;Ee=fr,Me=ln},Kn[ln]=Vt,Kn[Vn]=Vt,Kn[Le]=function(){for(var r=lt[--pt],e=lt[pt-1-r],n=lt[pt-2-r],t=lt[pt-3-r],i=Ae;;){if(e[0]===z)lt[pt++]=i,++r,e=e[2];else if(n[0]!==z){!function(r){var e=Ut();if(e){var n=pt,t=lt[n-4-r],i=Ht(e,t);if(i){for(vt=lt[e-1],lt[i+0]=lt[n-5-r],lt[i+1]=t,lt[i+2]=lt[n-3-r],lt[i+3]=lt[n-2-r],lt[i+4]=lt[n-1-r],n-=r,i+=5;0<=--r;)lt[i++]=lt[n++];pt=i}}}(r);var a=lt[pt-4-r],u=a[2][1][K];e=a[2][2][1];for(var o=pt-r,f=!1;e[0]===z;){if(i=e[1][1],e[1]===fr)f=!0;else{if(e[1][0]!==G)return void yi(Mr(["internal","$parameter is not a symbol"]));if(e[1][K]!==u)return void yi(Mr(["internal","$parameters in foreign namespace: "+q(e[1][K])+ao.NSinfix+e[1][rr]+" from: "+q(u)]));e[1][1]=f?fr:lt[o]}lt[o++]=i,e=e[2]}return lt[pt++]=r,Ee=fr,Ie=a[2][2][2],Ae=fr,lt[pt++]=vt,lt[vt=pt++]=Ln,ct[st++]=Xe,lt[pt++]=st,lt[pt++]=!1,Me=on,"number"==typeof(i=lt[pt-11-r])&&(a=Jr[1],Jr[1]=lt[i],lt[pt-11-r]=a),void(pr=u)}if(n[0]!==z?i=fr:(i=n[1],n=n[2]),t!==fr){if(i[0]===z||i[0]===H)break;i=i[S]}}lt[pt-2-r]=n,lt[pt-1-r]=e,lt[pt++]=r,Ae=i,ct[st++]=Le,Me=pn},Kn[Je]=function(){var r=lt[pt-1];lt[pt-1]=Ae,Me=(Ae=r)===fr?Ve:(ct[st++]=Ve,pn)},Kn[Ve]=function(){var r=lt[pt-2];lt[pt-2]=Ae,Me=(Ae=r)===fr?Qe:(ct[st++]=Qe,pn)},Kn[Qe]=function(){var r=lt[--pt],e=lt[--pt],n=Ae,t=lt[--pt];if((Ae=t[3](r,e,n,t))===Ot)return void zt(t,r,e,n);if(Ae===St)return Ae=it,Ie=Er(r,Er(e,Er(n,fr))),void(Me=hn);if(Ae===Nt)return void oi(at,ut,Er(r,Er(e,Er(n,fr))));Me=ct[--st]},Kn[_n]=function(){var r;!function(){var r,e,n,t=Ut();t&&(e=lt[(r=pt)-1],(n=Ht(t,e))&&(vt=lt[t-1],lt[n+0]=lt[r-2],lt[n+1]=e,pt=n+2))}();var e=lt[pt-1],n=e[2][2][1];lt[pt++]=n[1],I(n)&&(n[1]=Ae);Ee=fr,Ie=e[2][2][2],Ae=fr,lt[pt++]=vt,lt[vt=pt++]=Cn,ct[st++]=Fn,lt[pt++]=st,lt[pt++]=!1,Me=on,"number"==typeof(r=lt[pt-8])&&(n=Jr[1],Jr[1]=lt[r],lt[pt-8]=n);pr=e[2][1][K]},Kn[Fn]=function(){var r=lt[pt-1];if(r&&r[j].trap)return void Ji(r,Ae);pt-=2,lt[--pt]!==Cn&&Xi(qi,"nadiCallNoSpread2: lost frame sync");(vt=lt[--pt])<kt&&Pa();var e=lt[pt-2],r=e[2][2][1];r!==fr&&e[1]!==Br&&(r[1]=lt[pt-1]);pt-=3,Jr[1]=lt[--pt],pr=lt[--pt],Me=ct[--st]},Kn[Xe]=function(){var r=lt[pt-1];if(r&&r[j].trap)return void Ji(r,Ae);pt-=2,lt[--pt]!==Ln&&Xi(qi,"nadiCallComplete: lost frame sync");(vt=lt[--pt])<kt&&Pa();var e=lt[--pt],r=lt[pt-4-e];if(r[1]!==Br)for(var n=r[2][2][1],t=pt-e,i=e;0<=--i&&n[0]===z;)n[1]!==fr&&(n[1][1]=lt[t]),++t,n=n[2];pt-=e+5,Jr[1]=lt[--pt],pr=lt[--pt],Me=ct[--st]},Kn[nn]=function(){Ee=qr,Ie=Ae,et=Ae=fr,Me=on},Kn[on]=function(){lt[pt++]=vt,lt[vt=pt++]=Rn,lt[pt++]=st,lt[pt++]=!1,lt[pt++]=Ee,lt[pt++]=Ie,lt[pt++]=Ie,Me=fn},Kn[fn]=ri,Kn[cn]=ri,Kn[sn]=ri,Kn[Un]=function(){pt-=5,lt[--pt]!==Rn&&Xi(qi,"nadiBody4: lost frame sync");return vt=lt[--pt],void(Me=ct[--st])},Kn[tn]=function(){lt[pt++]=fr,lt[pt++]=fr,lt[pt++]=Ae,Me=an},Kn[an]=function(){var r=lt[pt-1];return r[0]===z?(Ae=r[1],ct[st++]=un,void(Me=pn)):(Ae=lt[pt-2],pt-=3,void(Me=ct[--st]))},Kn[un]=function(){var r=lt[pt-1],e=lt[pt-3],n=Er(Ae,fr);e!==fr?e[2]=n:lt[pt-2]=n;lt[pt-3]=n,lt[pt-1]=r[2],Me=an},Kn[Be]=function(){lt[pt++]=Ae,Me=De,Ae=qr},Kn[De]=function(){var r=lt[pt-1];return I(Ae)&&r[0]===z?(Ae=r[1],lt[pt-1]=r[2],ct[st++]=De,void(Me=pn)):(--pt,void(Me=ct[--st]))},Kn[An]=function(){lt[pt++]=Ae,Me=In,Ae=fr},Kn[In]=function(){var r=lt[pt-1];if(I(Ae)||r[0]!==z)return--pt,void(Me=ct[--st]);return Ae=r[1],lt[pt-1]=r[2],ct[st++]=In,void(Me=pn)},Kn[rn]=function(){return lt[pt++]=Ae,Ie=Ae[2][1],Ae=Ie,ct[st++]=en,void(Me=pn)},Kn[en]=function(){return Bu(lt[--pt][1],Ae),void(Me=ct[--st])},Kn[wn]=function(){lt[pt++]=0,lt[pt++]=Ae,Me=xn},Kn[xn]=function(){var r=lt[pt-1];return r[0]===z?(Ae=r[1][1],ct[st++]=On,void(Me=pn)):(pt-=2,Ae=fr,void(Me=ct[--st]))},Kn[On]=function(){var r=lt[pt-1];Me=I(Ae)?(0!==lt[pt-2]&&(lt[lt[pt-2]]=Xn),pt-=2,Ie=r[1][2],Ee=fr,on):(lt[pt-1]=r[2],xn);return},Kn[Ye]=function(){return Ae=(lt[pt++]=Ae)[1],ct[st++]=Ke,void(Me=pn)},Kn[Ke]=function(){var r=lt[--pt];return Ae=r[2][1][1]=Er(Ae,r[2][1][1]),void(Me=ct[--st])},Kn[jn]=ei,Kn[Pn]=function(){return lt[pt-1]=Ae,Ae=lt[pt-2],ct[st++]=Tn,void(Me=pn)},Kn[Tn]=ni,Kn[qe]=function(){return ei(),void(ct[st-1]=Re)},Kn[Re]=ni,Kn[We]=function(){var r=fr;if(Ie=Ae,Ae=lt[--pt],Ee=lt[--pt],!I(Ae))return Ae=fr,void(Me=ct[--st]);var e=qr;switch(Ae[0]){case z:if(Ie===fr)r=Ae;else if(Ie[0]===J||Ie[0]===V){var n=Fa(Ie,65535);if(null!==n){for(r=Ae,n=Math.abs(n);r[0]===z&&0<=--n;)r=r[2];D.negative(Ie[3])||(r=r[1])}}else if(ai(ne))return;break;case G:if(ai(te))return;if(Ee===fr)return ii();r=fr;break;case w:if(ai(pe))return;if(Ee===fr)return ii();r=fr;break;case Z:if(Ie[0]!==J)return ai(oe)?void 0:Ee===fr?ii():void ui("String");var t=Fa(Ie,Number.MAX_SAFE_INTEGER);r=Ar(t<0?Ae[3].charAt(Ae[3].length+t):Ae[3].charAt(t));break;case J:return ti()?void 0:ai(ie)?void 0:Ee===fr?ii():void ui("Number");case V:return ti()?void 0:ai(ae)?void 0:Ee===fr?ii():void ui("Number");case H:if(ea(Ae[3])){if(r=fr,t=Ie[0]===G?Ie[rr]:Ie[0]===Z?Ie[er]:(Ie[0]===J||Ie[0]===V)&&Fa(Ie,Number.MAX_SAFE_INTEGER),X(Ae[3]))if("length"==t)r=Ia(Ae[3].length);else{if(ai(fe))return;if(Ie[0]===J)(r=Ae[3][t])===B&&(r=fr);else if(Ee!==fr)return Ie=Er(Ae,Er($e=Ie,Ee[1])),Ee=fe,Ae=Oe[3],void(Me=ln)}else if(!1!==t)if(Ae[3].hasOwnProperty(t))r=Ae[3][t];else if(Ae[3]instanceof ia)Ee!==fr?(Ee[1][0]===G&&Ee[1]!==fr&&(e=fr,Ee=Ee[1]),(r=la(Ae,t))===fr&&(r=la(Ae,".undefined",!0))!==fr&&(t=e!==fr?Er(Vr,Er(Ie,fr)):Ie,Ee=Er(Er(t,Ee[1]),fr))):(r=la(Ae,".."+t,!0))!==fr?Ee=Er(fr,fr):(r=la(Ae,"..undefined",!0))!==fr&&(Ee=Er(Er(Er(Vr,Er(Ie,fr)),Ee[1]),fr));else if(ai(ce))return}else if(r=wa(Ae,Ie),Ee!==fr)return Ie=Er(Ae,Er($e=Ie,Ee[1])),Ee=Qr,Ae=Se[3],void(Me=ln);break;default:return ii()}if(Ee===fr)return Ae=r,void(Me=ct[--st]);$e=Ie,lt[pt++]=Ae,ct[st++]=Ce,Ie=Ee[1],Ee=e,r[0]===G&&(r=_(r[Y]));return Ae=r,void(Me=Vn)},Kn[Ce]=function(){return--pt,void(Me=ct[--st])},Kn[ze]=fi,Kn[Fe]=fi,Kn[yn]=function(){var r,e=$e,n=Ee,t=Ie,i=Ae;r=e[0]>=Q&&e[0]<=U?e[3](i,t,n,e):fr;r===Ot?zt(e,i,t,n):(Ae=r,Me=ct[--st]);return},Kn[Ze]=function(){return function(r){--Ti<0&&(Ti=0);0<Mi.length?(Xi(_i,Mi+"==> "+Yu(r,{quote:qr})),Mi=""):Xi(Ci,zi()+"==> "+Yu(r,{quote:qr}))}(Ae),void(Me=ct[--st])},Kn[En]=function(){return lt[pt++]=fr,lt[pt++]=Bn,lt[pt++]=fr,lt[pt++]=Ae,lt[pt++]=vt,lt[vt=pt++]=Wn,lt[pt++]=st,lt[pt++]=!1,Ee=fr,Ie=Ae[1],Ae=fr,ct[st++]=$n,void(Me=on)},Kn[$n]=function(){lt[pt-6]=Ae,lt[pt-3]=Yn,vt<kt&&Pa();lt[pt-7]===Xn&&(zr[1]=zr);return Ae=lt[pt-5],Ee=fr,Ie=Ae[2][2][1],Ae=fr,ct[st++]=Mn,void(Me=on)},Kn[Mn]=function(){Ae=lt[pt-6],Ie=lt[pt-7],Ee=lt[pt-8],vt=lt[pt-4];var r=lt[pt-1];if(r&&r[j].trap)return void Ji(r,Ae);pt-=2,lt[--pt]!==Yn&&Xi(qi,"nadiCatch2: lost frame sync");pt-=5,Me=(Ie===Xn||Ie===Bn||(Ie===Gn?(mi(Ae),lt[vt]==Wn&&(zr[1]=zr)):Ie===Zn?ki(Ee):Ie===Jn?wi(Ee):bi(zr[1],qr)),ct[--st]);return},Kn[Sn]=function(){var r,e=lt[pt-3],n=pt-3-e,t=lt[pt-2],i=lt[pt-1];function a(r){return r<0||e<=r?fr:lt[n+r]}if(t<e)return Ae=lt[n+t],Me=Ee===Qr&&1==t||Ee===fe&&(0===t||1===t)?Nn:(ct[st++]=Nn,pn),void(lt[pt++]=Ee);lt[pt++]=vt,lt[vt=pt++]=Hn,ct[st++]=Qn,lt[pt++]=st,lt[pt++]=!1,Ae=i[0]===H?function(r){return r.prototype&&r.prototype.constructor.name}(i[j])?Na(i,e,0,a):Oa(null,i,e,0,a):i[3]!==fr?i[3](e,a,i,lt[n-1]):fr;if(Ae===Ot)return Qt(),ct[st-1]=Sn,Me=_e,void(wt=1);if(Ae===St){for(Ae=it,Ie=fr,r=e;0<=--r;)Ie=Er(lt[n+r],Ie);return void(Me=hn)}if(Ae===Nt){for(Ie=fr,r=e;0<=--r;)Ie=Er(lt[n+r],Ie);return void oi(at,ut,Ie)}Me=ct[--st]},Kn[Nn]=function(){Ee=lt[--pt];var r=lt[pt-3],e=lt[pt-2];lt[pt-3-r+e]=Ae,lt[pt-2]=e+1,Me=Sn},Kn[Qn]=function(){var r=lt[pt-1];if(r&&r[j].trap)return void Ji(r,Ae);Qt();r=lt[pt-3];pt=pt-4-r,Me=ct[--st]},Kn[e]=function(){lt[pt++]=Ee,lt[pt++]=Ie,ct[st++]=r,Me=pn},Kn[r]=function(){Ae[0]===G&&(Ae=_(Ae[Y]));$e=Ae[0]===z?Ae[2][1]:Rr;Ie=lt[--pt],Ee=lt[--pt],Me=ln},Kn[Ue]=function(){if(Ee=ra(fe,fr),0===Ae[3].length)return Ae=Ee,void(Me=ct[--st]);lt[pt++]=Ae,lt[pt++]=Ee,lt[pt++]=0,ct[st++]=He,(Ae=Ae[3][0])===B&&(Ae=_r);Me=pn},Kn[He]=function(){if(Ie=lt[pt-1]++,Ee=lt[pt-2],$e=lt[pt-3],Ee[3][Ie++]=Ae,Ie<$e[3].length)return ct[st++]=He,Ae=$e[3][Ie],void(Me=pn);pt-=3,Ae=Ee,Me=ct[--st]},Kn[mn]=function(){if(Ee=ta(),0===(Ie=va(Object.getOwnPropertyNames(Ae[3]).reverse()))[3].length)return Ae=Ee,void(Me=ct[--st]);lt[pt++]=Ae,lt[pt++]=Ee,lt[pt++]=Ie,ct[st++]=kn,(Ae=Ae[3][Ie[3][Ie[3].length-1]])===B&&(Ae=_r);Me=pn},Kn[kn]=function(){Ie=lt[pt-1],Ee=lt[pt-2],$e=lt[pt-3],Ae===_r?Ie[3].pop():Ee[3][Ie[3].pop()]=Ae;if(0<Ie[3].length)return ct[st++]=kn,Ae=$e[3][Ie[3][Ie[3].length-1]],void(Me=pn);pt-=3,Ae=Ee,Me=ct[--st]},Kn[bn]=Jt,Kn[Ge]=Jt,Kn[gn]=function(){lt[pt-4]=Ae,Ae=lt[pt-2],ct[st++]=vn,Me=pn},Kn[vn]=function(){lt[pt-2]=Ae,Ae=lt[pt-1],ct[st++]=dn,Me=pn},Kn[dn]=function(){var r,e,n,t,i;i=lt[pt-5],t=Ae,n=lt[pt-2],e=lt[pt-3],r=lt[pt-4],e[0]===z&&e[1][Y][ir]===hi&&(r=Er(r,e[2][2]));pt-=5,Ae=function(r,e,n,t){function i(r){if(r[0]===G&&(r=_(r[Y])),r[0]===Q)return r[ir];if(r[0]===O){if((r=r[ir])===Wa)return Ra;if(r===La)return Ca;if(r===Da)return Ba;if(r===za)return Xa;if(r===Za)return Ga;if(r===ru)return Ka;if(r===nu)return eu;if(r===Va)return Ja;if(r===Ya)return Ha;if(r===Ua)return Qa}return function(){return fr}}function a(r){return r[0]===H&&r[3]instanceof ia&&(oi(r,t!==fr?".preadjust":".postadjust",Er(r,Er(e,Er(n,fr)))),ct[st++]=Me,1)}var u,o;if(r[0]===z){var f=r[1],c=r[2][1];if(a(o=wa(f,c)))return Ae;u=i(e),c=xa(f,c,u(o,n))}else{if(r[0]!==G)return bi(Mr(["internal","$invalid adjust target"]),fr);if(a(o=r[1]))return Ae;u=i(e),c=Du(r,u(o,n))}return t!==fr?c:o}(r,n,t,i),Me=ct[--st]};var rt,et,nt,tt,it,at,ut,ot,ft,ct=[],st=0,lt=[],pt=0,gt=-1,vt=0,dt=!1,ht=!1,bt=6e3,yt=0,mt=0,kt=0,wt=0,xt=[],Ot=[],St=[],Nt=[],jt=0,Pt=100,Tt=3e4,At=1e4,It=2e5,Et=Tt;function $t(){return vt=pt=st=0,Me=_e,Ae=Ie=Ee=$e=Jr[1]=fr,zr[1]=zr,Pi=Ri,Mi="",_i=Ti=0,1}function Mt(r){return ct[st++]=_e,Me=pn,Ae=r}function _t(r,e,n){return Ta(),lt[pt++]=yt,yt=0,lt[pt++]=ht,lt[pt++]=dt,lt[pt++]=r,lt[pt++]=e,lt[pt++]=pr,lt[pt++]=Jr[1],lt[pt++]=$e,lt[pt++]=Ee,lt[pt++]=Ie,lt[pt++]=Ae,lt[pt++]=vt,lt[vt=pt++]=qn,lt[pt++]=st+2,lt[pt++]=!1,ct[st++]=Me,ct[st++]=n?Fe:ze,Me=pn,nt=fr,ht=dt=!1,Ae=r}function Ft(){return wt<=0&&(Me!==_e||0<st)}function qt(r){if(!(0<wt)){var e=rt;for(ot=(new Date).getTime(),lt.length=pt;Me===_e&&0<st;)Me=ct[--st];yt=bt,rt=r=r||rt,he[1]=$(r);try{!function(){var r=0,e=ot;do{if(Di!==Bi[1])return yi(Er(Ar("symtrace"),Er(Er(Vr,Er(Bi,fr)),Er(Er(Vr,Er(Di,fr)),Er(Er(Vr,Er(Bi[1],fr)),fr))))),Di=Bi[1];if(Et<pt&&(yi(Mr(["internal","$maximum stack depth exceeded"])),Et=pt+At,It<pt))return Xi(qi,"intractable recursion"),$t(),Ta(),0;if(1e3<=++r){r=0,lt.length=pt;var n=(new Date).getTime();if(1e3<=n-e&&(ot=n),1e4<(e=n)-ot)return yi(Mr(["internal","$unresponsive"])),0;if(0<yt&&!rt&&0==kt&&(yt-=1e3)<=0){yt=bt,Me!==_e&&(ct[st++]=Me,Me=_e);break}}}while(Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Kn[Me](),Me!=_e)}()}catch(r){if(r!==xt){debugger;Xi(qi,"caught: "+r.toString()),yi(Mr(["unknown","$"+r.toString()]))}Ta()}finally{rt=e,lt.length=pt,Tt<Et&&pt<Et-At/2&&(Et-=At/2)<Tt&&(Et=Tt),r=(new Date).getTime(),e=r-ot,ft===B&&(Rt[ft=0]=ot,Ct[0]=0,Lt[0]=0,Bt[0]=0,Dt[0]=0),++Ct[ft],Lt[ft]+=e,Bt[ft]<e&&(Bt[ft]=e),++Dt[ft],r>=Rt[ft]+200&&(Wt[ft]=r-Rt[ft],50<++ft&&(ft=0),Rt[ft]=r,Ct[ft]=0,Lt[ft]=0,Bt[ft]=0,Dt[ft]=0)}0<Hu.TextAvail()&&A.hasOwnProperty("console-out")&&A["console-out"](y,Hu.TakeText())}}var Rt=[],Wt=[],Ct=[],Lt=[],Bt=[],Dt=[];function Xt(r,e){r=r||4,e=e||1e3;for(var n=[],t=[],i=Rt.length-1,a=ft-1,u=r*e;0<=--i&&(n.push({start:Rt[a],width:Wt[a],runtime:Lt[a],peak:Bt[a],runcount:Ct[a],counter:Dt[a]}),--a<0&&(a=Rt.length-1),!((u-=Wt[a])<0)););if(0===n.length)return[];var o=n[0];(new Date).getTime()-o.start>3*e&&t.push({start:o.start+e,width:e,cpu:0,peak:0,average:0,samples:0});for(var f=o.start+o.width-e,c=1;t.length<r;)if(f>=o.start){var s=o.peak;e<s&&(s=e);var l=Number((o.runtime/o.width).toFixed(3)),p=Math.round(o.runtime/o.runcount);s==e&&(l=1,p=1e3),t.push({start:f,width:e,cpu:l,peak:s,average:p,samples:o.counter}),f-=e}else{if(c>=n.length)break;o=n[c++]}return t}function zt(r,e,n,t){Ae=e,Ie=n,Ee=t,$e=r,ct[st++]=yn,Me=_e,wt=1}function Gt(r){if(r[Y]!==fr)tt=r[Y];else{if(r[1]===r)return fr;tt=r[1]}return it=r,St}function Zt(r,e){return at=r,ut=e,Nt}function Jt(){if(lt[pt++]=Me===bn?qr:fr,lt[pt++]=fr,lt[pt++]=Ae[1],lt[pt++]=Ae[2][1],lt[pt++]=Ae[2][2][1],(Ae=Ae[1])[0]===z){var r=Ae[1][Y][ir];if(r===di&&Ae[2][2][2]===fr)Ae=Ae[2],Me=tn;else{if(r!==hi)return pt-=5,Ae=fr,void(Me=ct[--st]);Ae=Ae[2][1],Me=pn}ct[st++]=gn}else Me=gn}function Vt(){var e,n,r,t,i=Ae,a=Ie,u=Ee!==fr;if(i[0]===G&&(i=_(i[Y])),i[0]===Q)return r=a[2][2][1],n=a[2][1],e=a[1],Li<=Pi&&(Gi(Li,Yu(i,{quote:qr}),a,u),ct[st++]=Ze),u?e[0]!==z&&n[0]!==z&&r[0]!==z&&e[0]!==H&&n[0]!==H&&r[0]!==H?(Ae=i[3](e[1],n[1],r[1],i))===Ot?void zt(i,e[1],n[1],r[1]):Ae===St?($e=it,Ee=qr,void(Ae=tt)):Ae===Nt?void oi(at,ut,a,!0):void(Me=ct[--st]):(lt[pt++]=i,lt[pt++]=r,lt[pt++]=n,Ae=e,ct[st++]=Je,void(Me=pn)):(Ae=i[3](e,n,r,i))===Ot?void zt(i,e,n,r):Ae===St?($e=it,void(Ae=tt)):Ae===Nt?void oi(at,ut,a):void(Me=ct[--st]);if(i[0]===O||i[0]===H)if(Li<=Pi&&(Gi(Li,Yu(i,{quote:qr}),a,u),ct[st++]=Ze),i[0]===O&&Me!==Vn&&u&&(Ae=!1,a[0]===z?(e=a[1])[0]!==z&&e[0]!==H&&(a[2][0]===z?(n=a[2][1])[0]!==z&&n[0]!==H&&a[2][2][0]!==z&&(Ae=i[3](2,function(r){return 0<=r&&r<2?[e[1],n[1]][r]:fr},i,fr)):Ae=i[3](1,function(r){return 0===r?e[1]:fr},i,fr)):Ae=i[3](0,function(r){return fr},i,fr),Ae&&Ae!==Ot&&Ae!==St&&Ae!==Nt||ct[st-1]===ze))Me=ct[--st];else{Me===Vn?(lt[pt]=lt[pt-1],++pt):lt[pt++]=fr,Li<=Pi&&(Gi(Li,Yu(i,{quote:qr}),a,u),ct[st++]=Ze);for(var o=0;a[0]===z;)lt[pt++]=a[1],++o,a=a[2];lt[pt++]=o,lt[pt++]=u?0:o,lt[pt++]=i,Me=Sn}else if(i[0]===U){if(Li<=Pi&&(Gi(Li,Yu(i,{quote:qr}),a,!1),ct[st++]=Ze),(Ae=i[3](a,i))!==Ot)return Ae===St?($e=it,Ee=fr,void(Ae=tt)):void(Ae!==Nt?Me=ct[--st]:oi(at,ut,a));zt(i,a)}else i[0]!==z||i[1]!==Lr&&i[1]!==Wr&&i[1]!==Cr&&i[1]!==Br&&i[1]!==Dr&&i[1]!==Xr?(Ae=fr,Me=ct[--st]):(t=i[2][1],Ci<=Pi&&(Gi(Ci,Yu($e),a,u),ct[st++]=Ze),lt[pt++]=pr,Me===Vn?(lt[pt]=pt-2,++pt):lt[pt++]=Jr[1],t!==Rr&&t[0]===G&&t[K]!==fr?t[Y]===i?(i[1]===Lr?(u=!1,Ee=fr,t[K]!==cr&&(i=Te(i,pr))):i[1]===Br&&(i=Te(i,t[K])),"string"!=typeof i?(t=i[2][1],r=i[2][2][1],t=t[K],r[0]!==z?r[0]===G?r[1]!==Dr?r===fr||r[K]===t?(lt[pt++]=$e,lt[pt++]=i,Ae=a,Me=u?(ct[st++]=_n,tn):_n):yi(Mr(["internal","$parameter in foreign namespace: "+q(r[K])+ao.NSinfix+r[rr]+" from: "+q(t)])):yi(Mr(["internal","$let parameter must be tuple"])):yi(Mr(["internal","$parameter is not a symbol"])):(a[0]!==z?e=fr:(e=a[1],a=a[2]),lt[pt++]=$e,lt[pt++]=i,lt[pt++]=Ee,lt[pt++]=a,lt[pt++]=r,lt[pt++]=0,Ae=e,Me=u?e[0]===z||e[0]===H?(ct[st++]=Le,pn):(Ae=e[S],Le):Le)):yi(Mr(["internal",i]))):yi(Mr(["internal","$privilege violation in "+Yu($e)])):yi(Mr(["internal","$namespace invalid in "+Yu($e)])))}function Qt(){pt-=2,lt[--pt]!==Hn&&Xi(qi,"naanUnlinkArbFrame: lost frame sync"),(vt=lt[--pt])<kt&&Pa()}function Ut(){var r=vt;if(lt[r]!==Rn)return!1;for(var e=st;;){var n=ct[--e];if(n!==cn){if(n===Xe||n===Fn)break;return!1}}for(;lt[r]===Rn;){if(lt[r+3]!==fr||lt[r+5][2][0]===z)return!1;r=lt[r-1]}return r}function Ht(r,e){if(e[1]!==Wr&&e[1]!==Br)return!1;var n,t;if(lt[r]===Cn)n=lt[r-3],t=Yt;else{if(lt[r]!==Ln)return!1;n=lt[r-lt[r-2]-6],t=Kt}if(lt[r+2])return!1;if(n[1]===Wr||n[1]===Dr){var i=n[2][1],e=e[2][1];if(i[K]!==e[K])return!1;for(var a=e;a=a[2][3][".parent"];)if(a===i)return!1}else if(n[1]!==Br)return!1;return t(r)}function Yt(r){var e=lt[r-3],n=e[2][2][1];return n!==fr&&e[1]!==Br&&(n[1]=lt[r-2]),st=lt[r+1]-1,r-4}function Kt(r){var e=lt[r-2],n=lt[r-6-e];if(n[1]!==Br)for(var t=n[2][2][1],i=r-2-e,a=e;0<=--a&&t[0]===z;)t[1]!==fr&&(t[1][1]=lt[i]),++i,t=t[2];return st=lt[r+1]-1,r-7-e}function ri(){for(var r=lt[pt-1],e=lt[pt-3];;){if(et=Ae,Me===cn?(Me=fn,r=r[2],lt[pt-1]=r):Me===sn&&(Me=fn,I(et)?(e=fr,r=r[1][2],lt[pt-3]=e):r=r[2],lt[pt-1]=r),r[0]!==z){if(e!==fr)return r=lt[pt-2],void(lt[pt-1]=r);Me=ct[--st]}else{if(dt&&0==--dt)return void function(r){var e=ht;ht=dt=!1;var n=ta();h(n[j],r),_t(Er(vi,Er(e,Er(n,fr))),"steptrap")}({state:Ar("task"),body:lt[pt-2],task:r,loop:e,value:et});if(r[1].breakpoint&&function(r){if(Ui[1]!==Ui)return!1;if(r[1].breakpoint[0]===H){var e=r[1].breakpoint[j];if(ea(e)&&I(e.enable))return Ui[1]=r,_t(Er(vi,Er(e.proc,Er(r[1].breakpoint,Er(et,fr)))),"breakpoint"),!0}return!1}(r))return;if(r[1][0]!==z){if((Ae=r[1])[0]===H)return ct[st++]=cn,void(Me=pn);Ae=Ae[1],Me=cn;continue}if(r[1][1][0]===z){if(r[1][1][1][0]!==z)return Ae=r[1][1],ct[st++]=sn,void(Me=pn);e===fr&&r[2][0]!==z?(r=r[1],e=fr,lt[pt-1]=r,lt[pt-2]=r,lt[pt-3]=e):(dt&&++dt,lt[pt-1]=r[2],r=r[1],e=fr,lt[pt++]=vt,lt[vt=pt++]=Rn,lt[pt++]=st,lt[pt++]=!1,lt[pt++]=e,lt[pt++]=r,lt[pt++]=r,ct[st++]=fn),lt[pt-6]!==Rn&&Xi(qi,"nadiBody1: lost frame sync");continue}if(Ae=r[1],Me=Ae[1][Y]!==fr?($e=Ae[1],Ee=qr,Ie=Ae[2],Ae=$e[Y],ln):pn,!(Pi<=Fi&&e===fr&&r[2][0]!==z))return void(ct[st++]=cn)}var n=lt[pt-4];return n&&n[j].trap?(ct[st++]=Me,Me=Un,void Ji(n,Ae)):(pt-=5,lt[--pt]!==Rn&&Xi(qi,"nadiBody4: lost frame sync"),void(vt=lt[--pt]))}}function ei(){lt[pt++]=Ae[2][2],lt[pt++]=Ae[2][1],Ae=Ae[1],lt[pt++]=Ae,ct[st++]=Pn,Me=pn}function ni(){Me===Tn?lt[pt-2]=Ae:lt[pt-1]=Ae,Ie=lt[--pt],Ae=lt[--pt],Ee=lt[--pt],Me===Re&&Ae[0]===z&&(Ae[2][0]!==z?Ae=Ae[1]:(lt[pt++]=Ee,lt[pt++]=Ae[2],lt[pt++]=Ie,ct[st++]=Re,Ae=Ae[1],Ee=fr)),Me=We,lt[pt++]=Ee,lt[pt++]=Ie}function ti(){return(Ie[0]===J||Ie[0]===V)&&(Me=ct[--st],yi(Mr(["internal","numeric scalar dereference"])),1)}function ii(){Ae=Ee===fr&&Ae[0]===Z&&(Ie[0]===Z&&"length"==Ie[er]||Ie[0]===G&&"length"==Ie[rr])?Ia(Ae[er].length):Ae[0]===G?Er(Qr,Er(Ae,Er(Ie,Ee))):fr,Me=ct[--st]}function ai(r){r=Xu(r,Ie);if(!I(r)){if(Ae[0]===z)return;if(!I(r=Xu(Ae,Ie)))return}return $e=Ie,Ie=Er(Er(Vr,Er(Ae,fr)),Ee[1]),Ee=qr,r[0]===G&&(r=_(r[Y])),Ae=r,Me=ln,1}function ui(r){r=wr(r,[cr,sr]);Ie=Er(r,Er($e=Ie,Er(Ae,Ee[1]))),Ee=Qr,Ae=Se[3],Me=ln}function oi(r,e,n,t){var i=la(r,e);i===fr&&(i=la(r,".undefined",!0))!==fr&&(n=Er(Er(Ar(e),n),fr)),lt[pt++]=r,ct[st++]=Ce,Ie=n,Ee=t?qr:fr,i[0]===G&&(i=_(i[Y])),Ae=i,Me=Vn}function fi(){nt=Ae;var r=Me===Fe,e=lt[pt-1];if(e&&e[j].trap)return Ji(e,Ae),lt[pt-13]=dt,void(lt[pt-14]=ht);pt-=2,lt[--pt]!==qn&&Xi(qi,"nadiInterruptRestore: lost frame sync"),(vt=lt[--pt])<kt&&Pa(),Ae=lt[--pt],Ie=lt[--pt],Ee=lt[--pt],$e=lt[--pt],Jr[1]=lt[--pt],pr=lt[--pt],pt-=2,ht?pt-=2:(dt=lt[--pt],ht=lt[--pt]),r&&(Ae=nt),yt=lt[--pt],Me=rt?ct[--st]:_e}function ci(){return fr}function si(r,e){return ct[st++]=hn,Ie=e,r}Nr("undefined",ci,Q);var li,pi,gi,vi=(li=function(r){return ct[st++]=e,Ee=fr,Ie=r[2],r[1]},pi=U,(gi=new Array(f))[0]=pi,(gi[1]=gi)[2]=fr,gi[3]=li,gi);function di(r){return ct[st++]=jn,r}function hi(r){return ct[st++]=qe,r}function bi(r,e){var n,t,i,a=vt;if(!function(){if(void 0===Ae||void 0===Ie||void 0===Ee||void 0===$e)debugger;var r,e,n,t,i=vt;if(pt<vt||vt+50<pt)debugger;for(t=0;t<pt;++t)if(void 0===lt[t])debugger;for(;0<i;){switch(lt[i]){case Cn:if(!E((e=lt[i-3])[1]))debugger;if(lt[i-6][0]!=w)debugger;if((n=lt[i+1])<0||st+1<n)debugger;if(ct[n-1]!=Fn)debugger;break;case Ln:if((r=lt[i-2])<0||1e3<r)debugger;if(!E((e=lt[i-6-r])[1]))debugger;if(lt[i-9-r][0]!=w)debugger;if((n=lt[i+1])<0||st+1<n)debugger;if(ct[n-1]!=Xe)debugger;break;case Hn:if((r=lt[i-4])<0||1e3<r)debugger;if((e=lt[i-2])[0]!=O&&e[0]!=H)debugger;if(n=lt[i+1],ct[n-1]!=Qn)debugger;break;case Rn:if((n=lt[i+1])<0||st+1<n)debugger;break;case Wn:if(lt[i-4]<0||lt[i-4]>Jn)debugger;if((n=lt[i+1])<0||st+1<n)debugger;break;case Yn:break;case qn:if(lt[i-7][0]!=w)debugger;break;default:debugger}if(lt[i-1]<0||lt[i-1]>=i)debugger;i=lt[i-1]}}(),r[0]===z&&r[1][0]===G&&"internal"==r[1][rr]&&r[2][1]===Gr&&Gr[Y]!==fr)return _t(Er(Gr,fr),"escape"),ct[st++]=Me,Ae;if(zr[Y]!==fr&&e===fr)return zr[1]===zr&&(zr[1]=r),Me=ct[--st],_t(Er(xe,Er(zr[1],Er(qr,fr))),"exception-rethrow"),_t(Er(zr,Er(r,fr)),"exception-hook"),ct[st++]=Me,Ae;for(Ae=fr;0<a;){var u=lt[a];switch(u){case Cn:Ci<=Pi&&Zi(r),t=lt[a-2],(i=lt[a-3][2][2][1])!==fr&&(i[1]=t),Jr[1]=lt[a-5],pr=lt[a-6];break;case Ln:for(Ci<=Pi&&Zi(r),t=lt[a-2],i=lt[a-6-t][2][2][1],n=t-1;0<=n;--n)i[1][1]=lt[a-3-n],i=i[2];Jr[1]=lt[a-8-t],pr=lt[a-9-t];break;case Hn:Ci<=Pi&&Zi(r);break;case Rn:break;case Wn:return lt[(vt=a)-4]!==Bn?(lt[a-4]===Xn&&(zr[1]=r),lt[a-4]=zn,pt=a+3,st=lt[a+1],ct[st++]=$n):(zr[1]=r,vt<kt&&Pa(),lt[a-4]=Dn,pt=a+3,st=lt[a+1],Ae=lt[a-2],lt[pt++]=a-4,lt[pt++]=Ae[2][1],ct[st++]=$n,ct[st++]=xn),zr;case Yn:break;case qn:if(Jr[1]=lt[a-6],pr=lt[a-7],"future"==lt[a-8])lt[a-9][2][2][1][j][".exception"]=r;else{if("debugger"==Yu(zr[1]))break;if(!/fiberwake|escape|xcallback/.test(lt[a-8]))break}return zr[1]=zr,pt=a+3,st=lt[a+1],fr;default:Xi(qi,"nfuncThrow: unknown frame type on stack: "+u)}a=lt[a-1]}return zr[1]!==zr&&(r=zr[1]),r[0]===z&&r[1][0]===G&&"internal"==r[1][rr]?r[2][1]!==Gr&&Xi(qi,Yu(r[2][1])):"debugger"!=Yu(r)&&Xi(qi,"uncaught exception: "+Yu(r)),$t(),Mt(Mr(["driver",101])),ct[st++]=Me,Ae}function yi(r){bi(r,fr),Me=ct[--st]}function mi(r,e){for(var n,t,i,a,u=vt;0<u;){var o=lt[u];switch(o){case Ln:if(t=lt[u-2],(a=lt[u-6-t])[1]!==Dr)return st=lt[u+1],(vt=u)<kt&&Pa(),pt=u+3,r;for(i=a[2][2][1],n=t-1;0<=n;--n)i[1][1]=lt[u-3-n],i=i[2];Jr[1]=lt[u-8-t],pr=lt[u-9-t];break;case Cn:if((a=lt[u-3])[1]!==Dr)return st=lt[u+1],(vt=u)<kt&&Pa(),pt=u+3,r;t=lt[u-2],(i=a[2][2][1])!==fr&&(i[1]=t),Jr[1]=lt[u-5],pr=lt[u-6];break;case Hn:case Rn:break;case Wn:if(e)break;return lt[(vt=u)-4]=Gn,lt[u-3]=r,pt=u+3,st=lt[u+1],ct[st++]=$n,r;case Yn:case qn:break;default:Xi(qi,"naanReturn: unknown frame type on stack: "+o)}u=lt[u-1]}return bi(Mr(["internal","$orphaned return"]),fr)}function ki(r){for(var e,n,t,i,a=vt;0<a;){var u=lt[a];switch(u){case Ln:if(e=lt[a-2],(i=lt[a-6-e])[1]===Dr){for(t=i[2][2][1],n=e-1;0<=n;--n)t[1][1]=lt[a-3-n],t=t[2];Jr[1]=lt[a-8-e],pr=lt[a-9-e];break}case Cn:a=-1;continue;case Hn:break;case Rn:if(lt[a+3]!==qr)break;if(r!==fr&&Fu(r,lt[a+4][S])===fr)break;return st=lt[a+1],pt=(vt=a)+6,lt[a+3]=fr,lt[a+5]=fr,ct[st++]=fn,et;case Wn:return lt[(vt=a)-5]=r,lt[a-4]=Zn,pt=a+3,st=lt[a+1],ct[st++]=$n,et;case Yn:case qn:break;default:Xi(qi,"nfuncBreak: unknown frame type on stack: "+u)}a=lt[a-1]}return bi(Mr(["internal",'$break tag "'+Yu(r)+'" not found']),fr)}function wi(r){for(var e,n,t,i,a=vt;0<a;){var u=lt[a];switch(u){case Ln:if(e=lt[a-2],(i=lt[a-6-e])[1]===Dr){for(t=i[2][2][1],n=e-1;0<=n;--n)t[1][1]=lt[a-3-n],t=t[2];Jr[1]=lt[a-8-e],pr=lt[a-9-e];break}case Cn:a=-1;continue;case Hn:break;case Rn:if(lt[a+3]!==qr)break;if(r!==fr&&Fu(r,lt[a+4][S])===fr)break;return st=lt[a+1],pt=(vt=a)+6,lt[a+5]=lt[a+4],ct[st++]=fn,fr;case Wn:return lt[(vt=a)-5]=r,lt[a-4]=Jn,pt=a+3,st=lt[a+1],ct[st++]=$n,et;case Yn:case qn:break;default:Xi(qi,"nfuncContinue: unknown frame type on stack: "+u)}a=lt[a-1]}return bi(Mr(["internal",'$continue tag "'+Yu(r)+'" not found']),fr)}function xi(r,e){var n=[],t=[];function i(r){var e=$u(r)!==fr?r[K]:r,r=n.indexOf(e);return r<0&&(r=n.push(e)-1,t[r]={}),t[r]}function a(r,e){i(r)[r[rr]]=e}function u(r){return i(r)[r[rr]]}var o=fr;r:for(;0<r;){var f,c,s,l,p,g,v,d,h,b,y,m=lt[r];switch(m){case Cn:g=lt[r-2],v=lt[r-3],d=lt[r-4],lt[r-5],y=lt[r-6],h=v[1],(f=u(b=v[2][2][1]))===B&&(f=b[1]),a(b,g),p=b===fr?fr:Er(b,Er(b[1],Er(g,fr))),l=Er(h,Er(d,Er(p,Er(v,Er(y,fr)))));break;case Ln:for(c=lt[r-2],v=lt[r-6-c],d=lt[r-7-c],lt[r-8-c],y=lt[r-9-c],h=v[1],b=v[2][2][1],p=fr,s=c-1;0<=s;--s)(f=u(b[1]))===B&&(f=b[1][1]),p=Er(Er(b[1],Er(f,Er(lt[r-3-s],fr))),p),b=b[2];for(b=v[2][2][1],s=c-1;0<=s;--s)a(b[1],lt[r-3-s]),b=b[2];l=Er(h,Er(d,Er(p=hu(p,fr),Er(v,Er(y,fr)))));break;case Hn:for(c=lt[r-4],h=(v=lt[r-2])[0]===O?ee:le,p=fr,s=c-1;0<=s;--s)p=Er(lt[r-4-c+s],p);l=Er(h,Er(p,Er(v,fr)));break;case Rn:l=Er(h=lt[r+3]===fr?Ur:Hr,Er(lt[r+4],Er(lt[r+5],fr)));break;case Wn:l=Er(h=Yr,Er(lt[r-2],fr));break;case Yn:break;case qn:l=Er(h=Kr,Er(lt[r-7],Er(Ar(lt[r-8]),Er(lt[r-9],fr))));break;default:return Xi(qi,"nfuncStacktrace: unknown frame type on stack: "+m),fr}if(l[1]===fr&&Xi(qi,"nfuncStacktrace: bad frameid"),o=Er(l,o),r=lt[r-1],"number"==typeof e&&r<=e)break r}return hu(o,fr)}function Oi(r,e){for(var n=vt;0<n;){var t=lt[n];switch(t){case Cn:case Ln:case Hn:case Rn:case Wn:case Yn:case qn:if(0<r--){n=lt[n-1];continue}var i=lt[n+2];return i=i||(e?lt[n+2]=ta():fr);default:return Xi(qi,"naanFrameHook: unknown frame type on stack: "+t),fr}}return fr}function Si(r){for(var e,n=vt;0<n;){var t=lt[n];switch(t){case Cn:return lt[n-3];case Ln:return e=lt[n-2],lt[n-6-e];case Hn:case Rn:case Wn:case Yn:case qn:break;default:return Xi(qi,"nfuncCaller: unknown frame type on stack: "+t),fr}n=lt[n-1]}return fr}function Ni(r,e){var n,t,i,a,u,o,f,c,s;function l(r){switch(r){case Ln:case Cn:case Hn:case Wn:case Yn:case qn:return 3;case Rn:return 6}}(s=[]).saveSelf=Jr[1],s.saveExecNS=pr,s.stephook=ht,s.stepping=dt,s.stack1=Ae,s.stack2=Ie,s.stack3=Ee,s.stack4=$e,s.runLimit=yt,a=vt,u=pt,f=st;r:for(;0<a;){switch(n={},0!==kt&&kt<a&&(n.sprint=!0),n.ftype=lt[a],o=a+l(n.ftype),n.runargs=lt.slice(o,u),n.ftype){case Ln:for(n.argcount=lt[a-2],u=a-9-n.argcount,n.execNS=lt[a-9-n.argcount],n.saveSelf=lt[a-8-n.argcount],n.fname=lt[a-7-n.argcount],n.fbind=lt[a-6-n.argcount],n.feval=lt[a-5-n.argcount],n.inarg=lt[a-4-n.argcount],n.inparm=lt[a-3-n.argcount],n.arglist=[],i=n.fbind[2][2][1],t=n.argcount-1;0<=t;--t)n.arglist.push(i[1][1]),i=i[2];if(c=lt[a+1]-1,n.runstates=ct.slice(c,f),n.hook=lt[a+2],s.push(n),e){if(n.fbind[1]===Cr||n.fbind[1]===Xr)for(i=n.fbind[2][2][1],t=n.argcount-1;0<=t;--t)i[1]!==fr&&(i[1][1]=lt[a-3-t]),i=i[2];Jr[1]=n.saveSelf,pr=n.execNS}if(!0===r&&n.fbind[1]!==Dr)break r;break;case Cn:if(u=a-6,n.execNS=lt[a-6],n.saveSelf=lt[a-5],n.fname=lt[a-4],n.fbind=lt[a-3],i=n.fbind[2][2][1],n.arg=i[1],c=lt[a+1]-1,n.runstates=ct.slice(c,f),n.hook=lt[a+2],s.push(n),e&&(n.fbind[1]!==Cr&&n.fbind[1]!==Xr||i===fr||(i[1]=lt[a-2]),Jr[1]=n.saveSelf,pr=n.execNS),!0===r)break r;break;case Hn:for(n.argcount=lt[a-4],u=a-6-n.argcount,n.targetThis=lt[a-6-n.argcount],n.arglist=[],t=n.argcount-1;0<=t;--t)n.arglist.push(lt[a-5-t]);n.inarg=lt[a-3],n.fbind=lt[a-2],c=lt[a+1]-1,n.runstates=ct.slice(c,f),n.hook=lt[a+2],s.push(n),e&&(Jr[1]=n.saveSelf,pr=n.execNS);break;case Rn:u=a-1,n.loop=lt[a+3],n.body=lt[a+4],n.task=lt[a+5],c=lt[a+1],n.runstates=ct.slice(c,f),n.hook=lt[a+2],s.push(n);break;case Wn:case Yn:u=a-5,n.tag=lt[a-5],n.status=lt[a-4],n.result=lt[a-3],n.catchargs=lt[a-2],c=lt[a+1],n.runstates=ct.slice(c,f),n.hook=lt[a+2],s.push(n);break;case qn:break r;default:Xi(qi,"naanSaveProcState: unknown frame type on stack: "+n.ftype)}if(a=lt[a-1],f=c,"number"==typeof r&&a<=r)break r}return e&&((vt=a)<kt&&Pa(),pt=0===vt?0:a+l(lt[vt]),st=c),s}function ji(r){var e,n,t,i,a;for(yt=r.runLimit,e=r.length-1;0<=e;--e){switch((n=r[e]).ftype){case Ln:for(lt[pt++]=n.execNS,lt[pt++]=n.saveSelf,lt[pt++]=n.fname,lt[pt++]=n.fbind,lt[pt++]=n.feval,lt[pt++]=n.inarg,lt[pt++]=n.inparm,i=n.fbind[2][2][1],t=0;t<n.argcount;++t)lt[pt++]=i[1][1],n.fbind[1]!==Cr&&n.fbind[1]!==Xr||i[1]===fr||(i[1][1]=n.arglist[t]),i=i[2];lt[pt++]=n.argcount,lt[pt++]=vt,vt=pt,lt[pt++]=Ln,lt[pt++]=st+1,lt[pt++]=n.hook;break;case Cn:lt[pt++]=n.execNS,lt[pt++]=n.saveSelf,lt[pt++]=n.fname,lt[pt++]=n.fbind,i=n.fbind[2][2][1],lt[pt++]=i[1],n.fbind[1]!==Cr&&n.fbind[1]!==Xr||i===fr||(i[1][1]=n.arg),lt[pt++]=vt,vt=pt,lt[pt++]=Cn,lt[pt++]=st+1,lt[pt++]=n.hook;break;case Hn:for(lt[pt++]=n.targetThis,t=0;t<n.argcount;++t)lt[pt++]=n.arglist[t];lt[pt++]=n.argcount,lt[pt++]=n.inarg,lt[pt++]=n.fbind,lt[pt++]=vt,vt=pt,lt[pt++]=Hn,lt[pt++]=st+1,lt[pt++]=n.hook;break;case Rn:lt[pt++]=vt,vt=pt,lt[pt++]=Rn,lt[pt++]=st,lt[pt++]=n.hook,lt[pt++]=n.loop,lt[pt++]=n.body,lt[pt++]=n.task;break;case Wn:case Yn:lt[pt++]=n.tag,lt[pt++]=n.status,lt[pt++]=n.result,lt[pt++]=n.catchargs,lt[pt++]=vt,vt=pt,lt[pt++]=n.ftype,lt[pt++]=st,lt[pt++]=n.hook;break;case qn:default:Xi(qi,"naanRunProcState: unknown frame type on stack: "+n.ftype)}for(a=0;a<n.runstates.length;++a)ct[st++]=n.runstates[a];for(t=0;t<n.runargs.length;++t)lt[pt++]=n.runargs[t];n.sprint&&(0===kt?ja():vt<kt&&(kt=vt))}Ae=r.stack1,Ie=r.stack2,Ee=r.stack3,$e=r.stack4,ht=r.stephook,dt=r.stepping,Jr[1]=r.saveSelf,pr=r.saveExecNS}var Pi=qi,Ti=0,Ai=0,Ii=30,Ei=0,$i=3*Ii,Mi="",_i=0,Fi=0,qi=1,Ri=2,Wi=3,Ci=4,Li=5,Bi=fr,Di=Bi[1];function Xi(r,e){if(r<=Pi&&A.hasOwnProperty("debug-write"))try{A["debug-write"](e,r)}catch(r){}}function zi(){var r="",e=0;for(($i<=Ti||Ti<Ei)&&(Ai=Math.floor(Ti/Ii)*Ii-2*Ii,Ei=Ai+Ii,$i=Ai+3*Ii,0<Ai&&(r="*")),0<Ai&&(r+=Ti.toString(),r=" ".substring(r.length)+r+" ",e=Ai);e++<Ti;)r+=e%2==0?"| ":" ";return r}function Gi(r,e,n,t){0<Mi.length&&Xi(_i,Mi);for(var i=n,a="";i[g]===z;)0<a.length&&(a+=" "),t&&i[1][0]===G?a+=Yu(i[1][1],{quote:qr}):a+=Yu(i[1],{quote:qr}),i=i[N];Mi=zi()+e+"("+a+")",_i=r,++Ti}function Zi(r){--Ti<0&&(Ti=0),0<Mi.length?(Xi(_i,Mi+"==> unknown"),Mi=""):Xi(Ci,zi()+"==> unknown"),Xi(Ci,"==> proc terminated by throw: ",Yu(r))}function Ji(r,e){var n;r[j].steps?(0<=(n=Fa(r[j].steps,65535))&&(dt=n+1,ht=r[j].trap),delete r[j].steps):_t(Er(vi,Er(r[j].trap,Er(e,fr))),"frametrap"),delete r[j].trap}function Vi(r,e){for(var n="",t=0;t<r;++t)n+=Yu(e(t)),t<r-1&&(n+=" ");return""!==n&&Xi(Ri,n),qr}function Qi(r,e){function i(r,e){if(r[0]===H){var n,t=r[j];if(!X(t)||!ea(t))return;for(n=0;n<t.length;++n)i(t[n],e)}else{if(r[0]!==z)return;e===_r?delete r[1].breakpoint:r[1].breakpoint=e}return 1}if(0===r)return $(Ui[1]===Ui);var n=e(0);if(n[0]===G)return 1<r?fr:(n===qr?Ui[1]=Ui:n===fr&&(Ui[1]=fr),$(Ui[1]===Ui));if(2<r)return fr;var t=e(1);if(t!==fr){if(t!==_r){r=ta(),e=r[j];return e.enable=qr,e.proc=t,i(n,r)?r:fr}i(n,t)}else if(n[1].breakpoint)return n[1].breakpoint;return fr}var Ui=Nr("breakpoint",Qi,O);var Hi="*饢* Rcz *饢*",Yi=function(){};function Ki(r){var p=new WeakMap;return function r(e){var n,t;if(p.get(e))return p.get(e);if(X(t=e[j])){n=ra(fe,fr),p.set(e,n);for(var i,a=n[j],u=0;u<t.length;++u)(i=t[u])[0]===H&&ea(i[j])?a[u]=r(i):a[u]=i}else{n=(e[3]instanceof ia?aa:ta)(),p.set(e,n),n[2]=e[2];for(var o,f=n[j],c=Object.getOwnPropertyNames(t),s=0;s<c.length;++s){var l=t[o=c[s]];l[0]===H&&ea(l[j])?f[o]=r(l):f[o]=l}}return n}(r)}function ra(r,e,n){if(r===fr)return fr;if(r===ce)return e[0]!==H||X(e[j])?function(r){for(var e=ta();r[g]===z;){var n=r[S];n[g]===z&&xa(e,n[S],n[N]),r=r[N]}return e}(e):(ea(e[j])?ta:ha)(e[j]);if(r===se){var t=aa();return e[0]===G&&e[3][1]===Br&&(zu(t,ke,e),zu(t,we,yu(Mr(["function","lambda","false",["strcat","${object ",e[3][2][1][rr],"$}"]]),fr))),t}if(r===fe){if(e[0]===H&&X(e[j])){if(!ea(e[j]))return da(e[j],new WeakMap);a=e[j].slice()}else a=function(r){for(var e=[];r[g]===z;)e.push(r[S]),r=r[N];return e}(e);return a[Hi]=Yi,Ir(a)}if(r[0]===H)return ea(r[j])?Ki(r):da(r[j],new WeakMap);if(r!==pe)return r===ge?(i=Ir(!1),a=new sa(i),i[x]=fr,i[j]=a,i):r===ve?((i=Ir(new WeakMap))[x]=fr,i):r===de?function(r,e){if(r!==fr&&r[0]!==Z||e!==fr&&e!==oe&&e[0]!==z)return fr;{var n,t;r[0]===Z&&e[0]===z&&(n=Fa(e[1],Number.MAX_SAFE_INTEGER),t=Fa(e[2][1],Number.MAX_SAFE_INTEGER),e=fr,t={Line:n,Column:t})}return no(r,e,t)}(e,n):fr;if(e[0]!==Z&&e[0]!==J)return fr;var i,a,e=hr(e);return vr.splice(0,0,e),e}function ea(r){return X(r)?r[Hi]===Yi:r instanceof Yi}function na(){}function ta(r){var e=Ir(fr),n=new na;return r&&Object.assign(n,r),e[j]=n,e}function ia(){}function aa(){var r=Ir(fr),e=new ia;return r[j]=e,r}function ua(e,n){this.stacktrace=Nr("stacktrace",function(){Me=ct[--st],_t(Er(Vr,Er(e,fr)),"fiberwake",!0);var r=vt;return ji(n),r=xi(vt,r),Ni(!1,!0),r},Q,!0)[Y]}(na.prototype=Object.create(Yi.prototype)).constructor=na,(ia.prototype=Object.create(Yi.prototype)).constructor=ia,(ua.prototype=Object.create(Yi.prototype)).constructor=ua;var oa=0,fa={};function ca(r){return null===(r=Fa(r,Number.MAX_SAFE_INTEGER))||r<0?r=B:2147483647<r&&(r=2147483647),r}function sa(i,n,e){var t,a,u,o=[],f=0,c=++oa;function s(r,e){return e&&0<e?(l(),fa[c].delay=e,setTimeout(r,e)):(Promise.resolve().then(r),-1)}function l(r){var e=fa[c];(e=e||{nonce:i,start:(new Date).getTime(),waiting:[],contins:[]}).count=f,n&&(e.execute=n),r&&e.waiting.push(r),fa[c]=e}function p(){a&&clearTimeout(a),a=B}function g(){u&&clearTimeout(u),u=B}function v(r){var e=i[j];if(e.hasOwnProperty(".exception")){var n=e[".exception"];return delete e[".exception"],r?bi(n,fr):yi(n)}return r}function d(r){if(r===B)return fr;if(t!==B)return fr;g();var e=qr;for(a&&(!0===a?e=fr:p()),t=r;0<o.length;)!function(n,t){var r;fa[c].contins.shift(),(r=fa[c])&&r.waiting.pop(),s(function(){var r,e;r=n,e=t,_t(Er(Vr,Er(i,fr)),"fiberwake"),ji(r),Ae=e,v(),qt(rt)})}(o.shift(),t);return Ta(),delete fa[c],e}function h(r){var e=pr,n=Jr[1];return function(){!0!==a&&(++f,a=!0,_t(Er(vi,Er(r,Er(i,fr))),"future"),Jr[1]=n,pr=e,qt(!0),d(nt),A.hasOwnProperty("interrupted")&&A.interrupted(y))}}n&&0<=e&&(a=s(h(n),e)),this.wait=Nr("wait",function(r,e){return t!==B?v(t):(0<(n=ca(r))&&(u=setTimeout(function(){d(e)},n)),l(Si()),r=Ni(!1,!0),o.push(r),fa[c].contins.push((n=r,r=Ir(!1),n=new ua(r,n),r[x]=fr,r[j]=n,r)),++jt,qr);var n},Q,!0)[Y],this.signal=Nr("signal",d,Q,!0)[Y],this.reset=Nr("reset",function(r){return!0===a&&t===B?bi(Mr(["internal","$can't reschedule future within itself"]),fr):(t=B,g(),n&&(p(),r=ca(r),e=0<=r?r:e||0,a=s(h(n),e)),i)},Q,!0)[Y]}function la(r,e,n){for(var t,i=r;i[0]===H;){var a,u=i[3];if(i[2][0]===H&&i[2][3]instanceof na)a=i[2][3],n&&(u=a);else if(n)break;if(u.hasOwnProperty(e))return u[e];if(!t&&a&&a.hasOwnProperty(".class"))t=i=a[".class"];else{if(!a||!a.hasOwnProperty(".parent"))break;i=a[".parent"]}}return fr}function pa(r,e,n){if(r[0]!==H)return fr;if(r[3]instanceof ia){var t,i=la(r,".="+ba(e),!0);if(i!==fr?t=Er(n,fr):(i=la(r,".=undefined",!0))!==fr&&(t=Er(e,Er(n,fr))),i!==fr)return Pe(r,!0)?($e=e,lt[pt++]=r,ct[st++]=Ce,Ie=t,Ee=qr,i[0]===G&&(i=_(i[Y])),ct[st++]=Vn,i):Ae}return xa(r,e,n)}function ga(r,e){for(var n=fr,t=n,i=0;i<r.length;++i){var a=new Array(l),u=(e?va:v)(u=r[i]);a[0]=z,a[1]=u,t!==(a[2]=fr)?t[2]=a:n=a,t=a}return n}function va(r){return"string"==typeof r?Ar(r):"number"==typeof r?(isFinite(r)&&Math.floor(r)==r?Ia:Ea)(r):"boolean"==typeof r?$(r):r===B?_r:null===r?Fr:"object"==typeof r&&ea(r)?r:Ir(r)}function da(r,e){if(r===B)return _r;if(null===r)return Fr;if("object"!=typeof r||ea(r))return va(r);if(e.get(r))return e.get(r);var n=Ir(r);if(e.set(r,n),X(r)){for(var t=r.length,i=[],a=0;a<t;++a)i.push(da(r[a],e));i[Hi]=Yi}else{var u,o=Object.getOwnPropertyNames(r);if(0===o.length&&r.constructor!==Object)i=r;else if("0"===o[0]&&o[o.length-1]===(o.length-1).toString()&&"function"==typeof r.keys)i=r;else for(i=new na,u=0;u<o.length;++u)try{i[o[u]]=da(r[o[u]],e)}catch(r){}}return n[j]=i,n}function ha(r){if(r===B)return _r;if(null===r)return Fr;if("object"!=typeof r||ea(r))return va(r);for(var e=Object.getOwnPropertyNames(r),n=new na,t=0;t<e.length;++t)try{n[e[t]]=va(r[e[t]])}catch(r){}return Ir(n)}function ba(e,r){if(e[0]===z){if(E(e[1])){var n,t=pr,i=Jr[1];return function(){n=ga(arguments,!0),_t(Er(vi,Er(e,n)),"xcallback"),Jr[1]=i,pr=t;var r=jt;return qt(!null),r==jt||(r=e[2][1][2][3])&&r.hasOwnProperty(".suspend")&&(nt=r[".suspend"]),A.hasOwnProperty("interrupted")&&A.interrupted(y),ba(nt)}}for(f=[];e[0]===z;)f.push(ba(e[1],r)),e=e[2];return f}if(e[0]===G)return e===qr||e!==fr&&(e===_r?B:e===Fr?null:e[rr]);if(e[0]===Z)return e[er];if(e[0]===J)return _a(e[3]);if(e[0]===V)return e[tr];if(e[0]===H){var a=e[j];if(!ea(a))return a;if(r){if(r.get(a))return r.get(a)}else r=new WeakMap;if(X(a)){var u,o=a.length,f=[];for(r.set(a,f),u=0;u<o;++u)f.push(ba(a[u],r))}else{var c,s=Object.getOwnPropertyNames(a);for(f={},r.set(a,f),c=0;c<s.length;++c)f[s[c]]=ba(a[s[c]],r)}}return f}function ya(r,e){if(r[0]!==H)return fr;var n,r=r[j];if(e[0]===G)n=e[rr];else{if(e[0]!==Z)return fr;n=e[er]}return $(r.hasOwnProperty(n))}function ma(r){if(r[0]===w)return bu(r);if(r[0]!==H)return fr;r=r[j];return X(r)?fr:ga(Object.getOwnPropertyNames(r),!0)}function ka(r,e){if(e===fr&&(e=lr),r[0]!==H||e[0]!==w)return fr;if(pr!==cr){if(r[K]!==fr)return r[K]==e?r:fr;if(e!==lr&&e!==pr&&e!==vr[0])return bi(Mr(["internal","$can't lock "+Yu(r)+" to "+q(e)]),fr),fr}return r[K]=e,r}function wa(r,e){if(r[0]!==H)return fr;var n=r[3];if(n instanceof WeakMap&&e[0]!==Z&&e[0]!==J&&e[0]!==V){r=n.get(e);return r===B&&(r=fr),v(r)}if(e[0]===z||e[0]===H&&ea(e))return fr;var t=ba(e);try{return ea(n)||n instanceof WeakMap?X(n)&&"length"==t?va(n.length):n.hasOwnProperty(t)?v(n[t]):fr:va(n[t])}catch(r){return bi(Mr(["internal",'$xget "'+t+'": '+r.toString()]),fr)}}function xa(r,e,n){if(r[0]!==H)return fr;var t=r[3];if(t instanceof WeakMap&&e[0]!==Z&&e[0]!==J&&e[0]!==V)return Pe(r,!0)?(n===_r?t.delete(e):t.set(e,n),n):Ae;if(e[0]===z||e[0]===H&&ea(e))return fr;if(!Pe(r,!0))return Ae;var i=ba(e);try{if(wt=1,Me=_e,n===_r)delete t[i];else if(ea(t)||t instanceof WeakMap)if(X(t))if("length"==i)t.length=ba(n);else{var a,u=parseInt(i);if(u!=u+"")return wt=-1,bi(Mr(["internal","$non-numeric array index"]),fr);for(t[i]=n,a=0;a<i;++a)t[a]===B&&(t[a]=fr)}else t[i]=n;else t[i]=ba(n);return wt=-1,n}catch(r){return wt=-1,bi(Mr(["internal",'$xset "'+i+'": '+r.toString()]),fr)}}function Oa(r,e,n,t,i){if(e[0]===z||e[0]===H&&ea(e[3]))return fr;var a=ba(e),u=null;if(r&&r[0]===H){if(ea(u=r[3]))return fr;if(u instanceof WeakMap)return fr}for(var o,f=fr,c=u===Number||u===String||u===Boolean,s=[],l=0;l<n;++l)s[l]=ba(i(l+t));try{return wt=1,Me=_e,e[0]===H?f=va(e[3].apply(u,s)):(!u||u.prototype!==B&&(o=u.prototype[a])!==B||(c=!1,o=u[a]),o!==B&&(f=va(c?o.apply(s[0],s.slice(1)):o.apply(u,s)))),wt=-1,f}catch(r){return wt=-1,bi(Mr(["internal",'$xcall "'+a+'": '+r.toString()]),fr)}}function Sa(r,e){return ja(),0<r?Na(e(0),r-1,1,e):Na(B,0,0,e)}function Na(r,e,n,t){var i;if(r===B)return(i=va({}))[x]=ha({persist:!0}),i;if(r[0]===Z||r[0]===G)return va(s[Tr(r)]);if(r[0]===J)return Ir(D.bigInt2uint8(r[nr]));if(r[0]===z)return Ir(ba(r));if(r[0]!==H)return fr;var a,u=r[3];if(ea(u))return va(ba(r));if(u===WeakMap)return fr;try{if("function"==typeof u){for(var o=[null],f=0;f<e;++f)o.push(ba(t(f+n)));wt=1,Me=_e;var c=new(Function.prototype.bind.apply(u,o));return wt=-1,Ir(c)}if(1<e)return fr;c=t(n);return wt=1,Me=_e,i=0===e?("object"==typeof(a=Object.create(u))?Ir:va)(a):c[0]!==H?fr:("object"==typeof(a=Object.create(u,c[3]))?Ir:va)(a),wt=-1,i}catch(r){return wt=-1,bi(Mr(["internal","$xnew: "+r.toString()]),fr)}}function ja(){0===kt&&(mt=yt,kt=vt,he[1]=qr)}function Pa(){vt<kt&&(yt=mt,kt=0,he[1]=fr)}function Ta(){wt=-1}function Aa(r,e){var n=new Array(u);return n[0]=J,(n[1]=n)[2]=e,n[3]=r,n}function Ia(r,e){return"number"!=typeof r||isNaN(r)?fr:(e=e||fr,Aa($a(r),e))}function Ea(r){var e=new Array(o);return e[0]=V,(e[1]=e)[2]=fr,e[3]=r,e}function $a(r){var e=Math.abs(r);"number"==typeof e&&!isNaN(e)||(e=0);e=D.int2bigInt(e,i,1);return r<0&&(e=D.negate(e)),D.trim(e,1)}function Ma(r,e){var n=D.int2bigInt(e,64,1),t=1;return D.negative(r)&&(r=D.negate(r),t=-1),D.greater(r,n)?null:t*D.modInt(r,e+1)}function _a(r){var e=D.negative(r);e&&(r=D.negate(r));var n,t=D.bitSize(r);return r=i<t?Number.POSITIVE_INFINITY:k<t?(n=D.rightShift(r,t-k),D.modInt(n,Number.MAX_VALUE)*Math.pow(2,t-k)):D.modInt(r,Number.MAX_SAFE_INTEGER+1),e?-r:r}function Fa(r,e){if(r[0]===J)return Ma(r[3],e);if(r[0]===V){r=r[3];if(-e<=r&&r<=e)return r}return null}function qa(r,e,n,t){return r[0]===J?Aa(D.negate(r[3]),fr):r[0]===V?Ea(-r[3]):r[0]===H&&r[3]instanceof ia?Zt(r,".negate"):Gt(xr(t[2][1],"extendNegate"))}function Ra(r,e){return r[0]===J&&e[0]===J?Aa(D.add(r[3],e[3]),fr):r[0]===V&&e[0]===V?Ea(r[3]+e[3]):r[0]===J&&e[0]===V?Ea(_a(r[3])+e[3]):r[0]===V&&e[0]===J?Ea(r[3]+_a(e[3])):fr}function Wa(r,e,n){var t;if(2==r&&(t=Ra(e(0),e(1)))!==fr)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===H&&a[3]instanceof ia)return Zt(a,".plus")}return Gt(xr(n[2][1],"extend+"))}function Ca(r,e){return r[0]===J&&e[0]===J?Aa(D.sub(r[3],e[3]),fr):r[0]===V&&e[0]===V?Ea(r[3]-e[3]):r[0]===J&&e[0]===V?Ea(_a(r[3])-e[3]):r[0]===V&&e[0]===J?Ea(r[3]-_a(e[3])):fr}function La(r,e,n){var t;if(2==r&&(t=Ca(e(0),e(1)))!==fr)return t;if(1==r)return qa(e(0),0,0,n);for(var i=0;i<r;++i){var a=e(i);if(a[0]===H&&a[3]instanceof ia)return Zt(a,".difference")}return Gt(xr(n[2][1],"extend-"))}function Ba(r,e){if(r[0]!==J||e[0]!==J)return r[0]===V&&e[0]===V?Ea(r[3]*e[3]):r[0]===J&&e[0]===V?Ea(_a(r[3])*e[3]):r[0]===V&&e[0]===J?Ea(r[3]*_a(e[3])):fr;var n=r[3],t=e[3],i=D.negative(n),r=D.negative(t);return i&&(n=D.negate(n)),r&&(t=D.negate(t)),n=D.greater(n,e[3])?D.mult(n,t):D.mult(t,n),i!=r&&(n=D.negate(n)),Aa(n,fr)}function Da(r,e,n){var t;if(2==r&&(t=Ba(e(0),e(1)))!==fr)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===H&&a[3]instanceof ia)return Zt(a,".times")}return Gt(xr(n[2][1],"extend*"))}function Xa(r,e){if(r[0]!==J||e[0]!==J)return r[0]===V&&e[0]===V?Ea(r[3]/e[3]):r[0]===J&&e[0]===V?Ea(_a(r[3])/e[3]):r[0]===V&&e[0]===J?Ea(r[3]/_a(e[3])):fr;if(D.isZero(e[3]))return bi(Mr(["internal","$divide by zero"]),fr);var n=r[3],t=e[3],i=D.negative(n),a=D.negative(t);i&&(n=D.negate(n)),a&&(t=D.negate(t));var u=D.dup(n),r=D.dup(n),e=a;return D.divide_(n,t,u,r),i&&(e=!a,D.isZero(r)||(u=D.addInt(u,1),r=D.sub(t,r))),e&&(u=D.negate(u)),Aa(D.trim(u,1),fr)}function za(r,e,n,t){var i;return(i=Xa(r,e))!==fr?i:r[0]===H&&r[3]instanceof ia?Zt(r,".quotient"):e[0]===H&&e[3]instanceof ia?Zt(e,".quotient"):Gt(xr(t[2][1],"extend/"))}function Ga(r,e){if(r[0]!==J||e[0]!==J)return r[0]===V&&e[0]===V?Ea(r[3]%e[3]):r[0]===J&&e[0]===V?Ea(_a(r[3])%e[3]):r[0]===V&&e[0]===J?Ea(r[3]%_a(e[3])):fr;if(D.isZero(e[3]))return bi(Mr(["internal","$divide by zero"]),fr);var n=r[3],t=e[3],i=D.negative(n),r=D.negative(t);i&&(n=D.negate(n)),r&&(t=D.negate(t));e=D.dup(n),r=D.dup(n);return D.divide_(n,t,e,r),i&&(D.isZero(r)||(r=D.sub(t,r))),Aa(D.trim(r,1),fr)}function Za(r,e,n,t){var i;return(i=Ga(r,e))!==fr?i:r[0]===H&&r[3]instanceof ia?Zt(r,".modulo"):e[0]===H&&e[3]instanceof ia?Zt(e,".modulo"):Gt(xr(t[2][1],"extendMod"))}function Ja(r,e){return r[0]===J&&e[0]===J?Aa(D.and(r[3],e[3]),fr):r[0]===V&&e[0]===V?Ea(r[3]&e[3]):r[0]===J&&e[0]===V?Ea(_a(r[3])&e[3]):r[0]===V&&e[0]===J?Ea(r[3]&_a(e[3])):fr}function Va(r,e,n){var t;if(2==r&&(t=Ja(e(0),e(1)))!==fr)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===H&&a[3]instanceof ia)return Zt(a,".bitand")}return Gt(xr(n[2][1],"extendBitAnd"))}function Qa(r,e){return r[0]===J&&e[0]===J?Aa(D.or(r[3],e[3]),fr):r[0]===V&&e[0]===V?Ea(r[3]|e[3]):r[0]===J&&e[0]===V?Ea(_a(r[3])|e[3]):r[0]===V&&e[0]===J?Ea(r[3]|_a(e[3])):fr}function Ua(r,e,n){var t;if(2==r&&(t=Qa(e(0),e(1)))!==fr)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===H&&a[3]instanceof ia)return Zt(a,".bitor")}return Gt(xr(n[2][1],"extendBitOr"))}function Ha(r,e){return r[0]===J&&e[0]===J?Aa(D.xor(r[3],e[3]),fr):r[0]===V&&e[0]===V?Ea(r[3]^e[3]):r[0]===J&&e[0]===V?Ea(_a(r[3])^e[3]):r[0]===V&&e[0]===J?Ea(r[3]^_a(e[3])):fr}function Ya(r,e,n){var t;if(2==r&&(t=Ha(e(0),e(1)))!==fr)return t;if(1==r)return e(0);for(var i=0;i<r;++i){var a=e(i);if(a[0]===H&&a[3]instanceof ia)return Zt(a,".bitxor")}return Gt(xr(n[2][1],"extendBitXor"))}function Ka(r,e){if(r[0]!==J||e[0]!==J)return r[0]===V&&e[0]===V?Ea(r[3]<<e[3]):r[0]===J&&e[0]===V?Ea(_a(r[3])<<e[3]):r[0]===V&&e[0]===J?Ea(r[3]<<_a(e[3])):fr;e=_a(e[3]);if(e<0)e=0;else if(n<e)return bi(Mr(["internal","shiftleft > ".concat(n)]),fr);return Aa(D.leftShift(r[3],e),fr)}function ru(r,e,n,t){var i;return(i=Ka(r,e))!==fr?i:r[0]===H&&r[3]instanceof ia?Zt(r,".shiftleft"):e[0]===H&&e[3]instanceof ia?Zt(e,".shiftleft"):Gt(xr(t[2][1],"extendShiftLeft"))}function eu(r,e){if(r[0]!==J||e[0]!==J)return r[0]===V&&e[0]===V?Ea(r[3]>>e[3]):r[0]===J&&e[0]===V?Ea(_a(r[3])>>e[3]):r[0]===V&&e[0]===J?Ea(r[3]>>_a(e[3])):fr;e=_a(e[3]);return e<0&&(e=0),Aa(D.rightShift(r[3],e),fr)}function nu(r,e,n,t){var i;return(i=eu(r,e))!==fr?i:r[0]===H&&r[3]instanceof ia?Zt(r,".shiftright"):e[0]===H&&e[3]instanceof ia?Zt(e,".shiftright"):Gt(xr(t[2][1],"extendShiftRight"))}function tu(r,e,n,t){if(r[0]!==J||e[0]!==J)return r[0]===V&&e[0]===V?$(r[3]>e[3]):r[0]===J&&e[0]===V?$(_a(r[3])>e[3]):r[0]===V&&e[0]===J?$(r[3]>_a(e[3])):r[0]===Z&&e[0]===Z?$(r[er]>e[er]):r[0]===H&&r[3]instanceof ia?Zt(r,".greater"):e[0]===H&&e[3]instanceof ia?Zt(e,".greater"):t?Gt(xr(t[2][1],"extend>")):fr;if(D.equals(r[3],e[3]))return fr;if(D.negative(r[3])){if(!D.negative(e[3]))return fr;var i=D.negate(r[3]),t=D.negate(e[3]),i=D.greater(t,i)}else{if(D.negative(e[3]))return qr;i=D.greater(r[3],e[3])}return $(i)}function iu(r,e,n,t){if(r[0]!==J||e[0]!==J)return r[0]===V&&e[0]===V?$(r[3]<e[3]):r[0]===J&&e[0]===V?$(_a(r[3])<e[3]):r[0]===V&&e[0]===J?$(r[3]<_a(e[3])):r[0]===Z&&e[0]===Z?$(r[er]<e[er]):r[0]===H&&r[3]instanceof ia?Zt(r,".lesser"):e[0]===H&&e[3]instanceof ia?Zt(e,".lesser"):t?Gt(xr(t[2][1],"extend<")):fr;if(D.equals(r[3],e[3]))return fr;if(D.negative(r[3])){if(!D.negative(e[3]))return qr;var i=D.negate(r[3]),t=D.negate(e[3]),i=D.greater(t,i)}else{if(D.negative(e[3]))return fr;i=D.greater(r[3],e[3])}return $(!i)}function au(r){return null!==(r=Fa(r,36))&&2<=r?r:-1}function uu(r){return r[x]!==fr&&I(r[x][j].hexcon)}function ou(r){return r[1]}function fu(r){return r[1]}function cu(r){return r[2]}function su(r){return r[1][1]}function lu(r){return r[2][1]}function pu(r){return r[2][2]}function gu(r){return r[2][1][1]}function vu(r){return r[2][2][1]}function du(r){return r[2][2][2]}function hu(r,e){for(;r[0]===z;)e=Er(r[1],e),r=r[2];return e}function bu(r){var e,n;if(r[0]===w&&0<=(n=gr.indexOf(r)))e=gr[n][ar];else{if(r!==fr)return fr;e=vr[0][ar]}for(var t=fr,i=null,a=0;a<e.length;++a){var u=Er(e[a],fr);i?i[2]=u:t=u,i=u}return t}function yu(r,e){var n;e===fr&&(e=(n=r[2][1])===Rr?vr[0]:n!==fr?n[K]:fr);e=Te(r,e);return"string"==typeof e?bi(Mr(["internal",e]),fr):Pe(e[2][1])?e:Ae}(sa.prototype=Object.create(Yi.prototype)).constructor=sa;var mu=100,ku=101,wu=102,xu=103,Ou=104,Su=105,Nu=106,ju=107,Pu=108,Tu=109,Au=110,Iu=111;function Eu(r,e){if(!r)return-1;for(var n=!1,t=0;t<r;++t){var i=e(t),a=i[0];if(a===H&&ea(i[j])?a=X(i[j])?ku:i[j]instanceof ia?xu:i[j]instanceof sa?Ou:i[j]instanceof ua?Su:i[j]instanceof WeakMap?Nu:i[j]instanceof eo?ju:wu:a===z?a=E(i[1])?Au:Iu:Q<=a&&a<=U&&(a=Tu),n){if(a!==n)if(n===J&&a===V||n===V&&a===J)n=mu;else if(n!==mu||n!==V&&a!==J)if(n===G&&a===Z||n===Z&&a===G)n=Pu;else if(n!==Pu||n!==G&&a!==Z){if(!(n===Au&&a===Iu||a===Iu&&a===Au))return-1;n=Iu}else;else;}else n=a}return n}function $u(r){return r[0]===G&&r[K][ar][r[K][ur][r[rr]]]===r?r:r[0]===Z?kr(r[er]):fr}function Mu(r){return $(r[0]===H&&r[3]instanceof na)}function _u(r,e){if(0===r)return fr;for(var n=0;n<r;++n)if(e(n)[0]===z)return fr;return qr}function Fu(r,e,n,t){return r[0]===J&&e[0]===J?$(D.equals(r[3],e[3])):r[0]===V&&e[0]===V?$(r[3]===e[3]):r[0]===J&&e[0]===V||r[0]===V&&e[0]===J?r[0]===H&&r[3]instanceof ia?Zt(r,".eq"):e[0]===H&&e[3]instanceof ia?Zt(e,".eq"):Gt(xr(t[2][1],"extendEq")):r[0]===Z&&e[0]===Z||r[0]===H&&e[0]===H?$(r[3]===e[3]):$(r==e)}function qu(r,e,n,t){return r[0]===G&&e[0]===G?r===e||r[rr]===e[rr]?qr:fr:r[0]===J&&e[0]===V?$(_a(r[3])==e[3]):r[0]===V&&e[0]===J?$(r[3]==_a(e[3])):r[0]===Q&&e[0]===Q||r[0]===O&&e[0]===O||r[0]===U&&e[0]===U?$(r[ir]===e[ir]):Fu(r,e,0,t)}function Ru(r,e){for(;;){if(r[0]!==z)return(r[0]===H&&ea(r[j])?function(r,e){var b=[],y=[];function m(r,e){for(;;){if(r[0]!==z)return(r[0]===H&&ea(r[j])?k:qu)(r,e);if(e[0]!==z)return fr;if(m(r[1],e[1])===fr)return fr;r=r[2],e=e[2]}}function k(r,e){var n;if(r===e)return qr;if(X(r[j])){if(!X(e[j]))return fr;var t,i,a,u=r[j],o=e[j];if(u.length!=o.length)return fr;for(t=0;t<u.length;++t)if(i=u[t],a=o[t],"number"==typeof i){if(i!=a)return fr}else if(i[0]===H&&ea(i[j])){if((n=b.indexOf(i))!=y.indexOf(a))return fr;if(n<0&&(n=b.length,b.push(i),y.push(a),k(i,a)===fr))return fr;u[t]=n,o[t]=n}else if(m(i,a)===fr)return fr}else{if(X(e[j]))return fr;var f,c,s,l=r[j],p=e[j],g=Object.getOwnPropertyNames(l).sort(),v=Object.getOwnPropertyNames(p).sort();if(g.length!=v.length)return fr;for(f=0;f<g.length;++f){if((c=g[f])!=(s=v[f]))return fr;var d=l[c],h=p[s];if("number"==typeof d){if(d!=h)return fr}else if(d[0]===H&&ea(d[j])){if((n=b.indexOf(d))!=y.indexOf(h))return fr;if(n<0&&(n=b.length,b.push(d),y.push(h),k(d,h)===fr))return fr;l[c]=n,p[s]=n}else if(m(d,h)===fr)return fr}}return qr}function s(r,e){if(r[0]===H&&ea(r[j]))if(X(r[j]))for(var n,t=r[j],i=0;i<t.length;++i)"number"==typeof(n=t[i])&&(n=e[n],t[i]=n),s(n,e);else for(var a,u=r[j],o=Object.getOwnPropertyNames(u),f=0;f<o.length;++f){var c=u[a=o[f]];"number"==typeof c&&(c=e[c],u[a]=c),s(c,e)}else r[0]===z&&(s(r[1],e),s(r[2],e))}if(r[0]!==H||!ea(r[j]))return fr;if(e[0]!==H||!ea(e[j]))return fr;var n=k(r,e);return s(r,b),s(e,y),n}:qu)(r,e);if(e[0]!==z)return fr;if(Ru(r[1],e[1])===fr)return fr;r=r[2],e=e[2]}}function Wu(r,e){for(;;){if(e[0]!==z)return fr;if(Ru(r,e[1])===qr)return e;e=e[2]}}function Cu(r,e){for(var n;;){if(e[0]!==z)return fr;if(Ru(r,e[1])===qr)return e;if(e[1][0]===z&&(n=Cu(r,e[1]))!==fr)return n;e=e[2]}}function Lu(r,e){if(r===e)return 0;if(!I(e))return I(r)?-1:0;if(!I(r))return 1;if(!(r[0]!==V&&r[0]!==J||e[0]!==V&&e[0]!==J))return iu(r,e)===qr?-1:tu(r,e)===qr?1:0;var n=!1;if(r[0]===e[0]&&(n=r[0]),n===G){if(r[rr]<e[rr])return-1;if(r[rr]>e[rr])return 1;var t=Or(r),i=Or(e);return 0<=t&&0<=i?t<i?-1:i<t?1:0:0<=t&&i<0?-1:t<0&&0<=i?1:0}if(n===Z)return r[er]==e[er]?0:r[er]<e[er]?-1:1;if(n===w)return Lu(r[P],e[P]);if(n===z)for(;;){var a=Lu(r[1],e[1]);if(0!==a)return a;if(r=r[2],e=e[2],r[0]!==z)return e[0]!==z?0:-1;if(e[0]!==z)return 1}return r[0]<e[0]?-1:r[0]>e[0]?1:0}function Bu(r,e){if(r[0]===z){for(var n=r;n[0]===z;){if(n[S]!==fr&&!Pe(n[S]))return;n=n[N]}n=r;for(var t=e;n[0]===z;)t[0]!==z?n[S]!==fr&&(n[S][1]=t):(n[S]!==fr&&(n[S][1]=t[S]),t=t[N]),n=n[N]}else{if(!Pe(r))return;r[1]=e}return 1}function Du(r,e){return Bu(r,e)?e:Ae}function Xu(r,e){r=r[2];return Mu(r)===fr?fr:wa(r,e)}function zu(r,e,n){if(!Pe(r,!0))return Ae;var t=r[2];if(t===fr)r[2]=t=ra(ce,fr);else if(Mu(t)===fr)return bi(Mr(["internal","$invalid put annotation target"]),fr);return e===fr?fr:xa(t,e,n)}function Gu(r,e){if(e[0]!==G||r[0]!==G)return fr;if(!Pe(r))return Ae;if(e[3][0]>=Q&&e[3][0]<=U)return Nr(r[rr],e[3][3],e[3][0]);if(e[3][0]!==z)return r[3]=e[3];var n=yr(e[rr]),t=e[3][2][1];t[rr]===Rr[rr]&&(n[S]=Rr),n[K]=t[K];e=Er(e[3][1],Er(n,e[3][2][2]));return n[3]=e,r[3]=e}var Zu=!1;function Ju(r,e){var n;Mu(e)===qr&&(n=e[j]);r=Ar(Yu(r,n));return n&&I(n.noquote)&&(r[x]=ha({noquote:!0})),r}function Vu(r){if(r[0]!==z)return r[0]===G?r[rr]:r[0]===Z?r[er]:r[0]===J?ao.IntToString(r[nr],uu(r)):"";for(var e="";r[0]===z;)e+=Vu(r[1]),r=r[2];return e}function Qu(r){if(r===fr)return Ia(0);if(r[0]===G)return Ia(r[rr].length);if(r[0]===Z)return Ia(r[er].length);if(r[0]===J||r[0]===V)return Ia(Yu(r).length);if(r[0]===H){var e=r[j];return ea(e)?X(e)?Ia(e.length):Ia(Object.getOwnPropertyNames(e).length):va(r[j].length)}if(r[0]!==z)return Ia(Yu(r).length);for(var n=1;r[2][0]===z;)++n,r=r[2];return Ia(n)}var Uu=new b.NaanChannel(this),Hu=new b.NaanChannel(this);function Yu(r,e,n){var t;e&&e.radix&&(t=au(e.radix))<2&&(t=B),n===B&&(n=ao);var i="";if(r===B)return _r[rr];if(null===r)return Fr[rr];if(r[g]===z){if(r[N][0]!==z&&r[N]!==fr)i=n.ListToString([n.DottedPairToString(Yu(r[1],e,n),Yu(r[2],e,n))]);else{for(var a=r,u=[];a[g]===z;)a[N][0]!==z&&a[N]!==fr?u.push(n.DottedPairToString(Yu(a[1],e,n),Yu(a[2],e,n))):u.push(Yu(a[1],e,n)),a=a[N];i=n.ListToString(u)}return i}if(r[g]===G){var o=r[rr];if(e&&I(e.quote)&&(1!=o.length||p.indexOf(o)<0)){if(!I(e.nonamespace)){i=function(r){if(r[K][0]!==w)return fr;var e,n=r[K][ur][r[rr]];if(r[K][ar][n]!==r)return fr;for(e=0;e<vr.length;++e){var t=vr[e];if(t[ur].hasOwnProperty(r[rr]))return n=t[ur][r[rr]],t[ar][n]===r?fr:r[K]}return r[K]}(r);if(i[0]===w)return o=n.QuoteSymbol(o),Yu(i[P],!1,n)+n.NSinfix+o}return n.QuoteSymbol(o)}return o}if(r[g]===Z)return!e||!I(e.quote)||r[x]!==fr&&I(r[x][j].noquote)?r[er]:n.QuoteString(r[er]);if(r[g]===J)return n.IntToString(r[nr],uu(r),t);if(r[g]===V)return n.FloatToString(r[tr],t);if(r[g]>=Q&&r[g]<=U){if(Ci<=Pi){var f=r[Y]+"";return f.substring(9,f.indexOf("("))}f=jr(r[3]);return f?"[Builtin "+f+"]":r[2][0]===G?"[Compiled "+r[2][rr]+"]":"[Compiled Function]"}if(r[g]===H){var c,s=r[j];if(ea(s)){if(X(s))return"Array["+s.length+"]";var l=Object.getOwnPropertyNames(s).length;if(s instanceof sa)return"Nonce{"+l+"}";if(s instanceof ua)return"Continuation{"+l+"}";if(s instanceof eo)return"TextStream{"+l+"}";if(s instanceof WeakMap)return"WeakMap{}";if(r[3]instanceof ia){f=Xu(r,ke);return f!==fr?"{object "+f[3][2][1][rr]+"}":"Object{"+l+"}"}return"Dictionary{"+l+"}"}try{if("function"==typeof s)return""!==s.name&&s.name?"[Function "+s.name+"]":"[Function ()]";if(X(s))c=JSON.stringify(s).slice(1,-1);else if("["===(c=s.toString()).substring(0,1))return c;return"["+Object.prototype.toString.call(s).slice(8,-1)+" "+c+"]"}catch(r){l=s[Symbol.toStringTag];return l?"[object "+l+"]":"[private object]"}}else if(r[g]===w)return"Namespace<"+Yu(r[P],!1,n)+">";debugger;return"unknown: "+r}function Ku(r,e){return oo[j].printline[3](r,e)}function ro(){return 0<Hu.TextAvail()&&A.hasOwnProperty("console-out")&&A["console-out"](y,Hu.TakeText()),qr}function eo(r,e,n,t){var i,a,u=fr,o=fr,f=fr,c=fr,s=!1,l=!1;function p(r){if(i.EOF())return r!==fr?fr:bi(Mr(["internal","$end-of-file"]),fr);if(c===fr)return Ot;r=c;return c=fr,bi(r)}function g(){if(f[0]===z){var r=f[1];return f=f[2],o=r,1}r=function(r){var e,n;r:for(;;){if(null===(n=r.ReadToken()))return null;switch(n.type){case r.kTTNewline:case r.kTTSymbol:s&&(e=s[n.token])!==B||(e=je(n.token));break r;case r.kTTInteger:e=Aa(n.token,fr);break r;case r.kTTHexInteger:e=Aa(n.token,ha({hexcon:!0}));break r;case r.kTTString:e=Ar(n.token);break r;case r.kTTComment:case r.kTTCommentLine:var t=ta();if(t[j].text=Ar(n.token),t[j].loc=Er(Ia(n.loc.line),Er(Ia(n.loc.column),fr)),u=Er(t,u),n.type!=r.kTTCommentLine)continue;e=mr("\n");break r;case r.kTTFloat:e=Ea(parseFloat(n.token));break r}}return n.atom=e,n}(i);return null!==r&&((o=ta())[j].atom=r.atom,o[j].loc=Er(Ia(r.loc.line),Er(Ia(r.loc.column),fr)),1)}function v(r,e){var n=r[j].atom;if(e[0]!==z)return e===oe?n[0]===Z:e===te?n[0]===G:Ru(n,e)===qr;for(;;){if(e[0]!==z)return;if(e[1][0]===z)return;if(v(r,e[1]))return 1;e=e[2]}}function d(r,e){if(!rt&&a.Full())return Ot;for(var n,t=fr,i=0;i<r;++i)n=Yu(t=e(i),!1,a),a.WriteString(n);return l&&ro(),t}function h(r){return f=Er(o,f),o=r}this.addtext=Nr("addtext",function(r){return r[0]===Z?(i.AddText(r[er]),i.SetEOF(),r):fr},Q,!0)[Y],this.comments=Nr("comments",function(){var r=u;return u=fr,r},Q,!0)[Y],this.isbreak=Nr("isbreak",function(r){return $(r[0]===G&&a.IsBreak(r[rr].substring(0,1)))},Q,!0)[Y],this.linelength=Nr("linelength",function(){return 80},Q,!0)[Y],this.unbuffered=Nr("unbuffered",function(r){l=r===qr},Q,!0)[Y],this.newline=Nr("newline",function(r){if(!rt&&a.Full())return Ot;var e=1;if(r===fr||null!==(e=Fa(r,255))&&0<=e){for(;0<e--;)a.WriteString("\n");return l&&ro(),qr}return fr},Q,!0)[Y],this.spaces=Nr("spaces",function(r){if(!rt&&a.Full())return Ot;var e;if(null!==(e=Fa(r,255))&&0<=e){for(var n=me[1][me[1][0]===G?rr:er];0<e--;)a.WriteString(n);l&&ro()}return Ia(a.Column())},Q,!0)[Y],this.printline=Nr("printline",function(r,e){return(e=d(r,e))===Ot||(a.WriteString("\n"),l&&ro()),e},O,!0)[Y],this.print=Nr("print",d,O,!0)[Y],this.printloc=Nr("printloc",function(r){return Er(Ia(a.Line()),Er(Ia(a.Column()),fr))},Q,!0)[Y],this.printq=Nr("printq",function(r,e){if(!rt&&a.Full())return Ot;for(var n,t=fr,i=0;i<r;++i)n=Yu(t=e(i),t!==me[1]&&{quote:qr},a),a.WriteString(n);return l&&ro(),t},O,!0)[Y],this.radix=Nr("radix",function(r){var e,n=Er(Ia(i.Radix()),Er(Ia(a.Radix()),fr));return r[0]===z&&(0<=(e=au(r[1]))&&i.SetRadix(e),0<=(r=au(r[2][1]))&&i.SetRadix(r)),n},Q,!0)[Y],this.readchar=Nr("readchar",function(){var r=i.ReadChar();return null!==r?Ar(r):c===fr?i.EOF()?fr:Ot:(r=c,c=fr,bi(r))},Q,!0)[Y],this.readready=Nr("readready",function(){return Ia(i.ReadReady())},Q,!0)[Y],this.reset=Nr("reset",function(){i.Reset(),a.Reset()},Q,!0)[Y],this.setsymbols=Nr("setsymbols",function(r){if(r===fr){if(s)return ga(Object.values(s),s=!1)}else{if(r[0]!==z)return fr;for(var e={},n=r;n[0]===z;){if(n[1][0]!==G)return fr;e[n[1][rr]]=n[1],n=n[2]}s=e}return te},Q,!0)[Y],this.taketext=Nr("taketext",function(){return Ar(a.TakeText())},Q,!0)[Y],this.tokenread=Nr("tokenread",function(r){return g()?o:p(r)},Q,!0)[Y],this.tokenlast=Nr("tokenlast",function(r){return r===qr&&(o=fr),o},Q,!0)[Y],this.tokenpush=Nr("tokenpush",h,Q,!0)[Y],this.tokenmatch=Nr("tokenmatch",function(r,e){var n=o;if(n[0]!==H||!n[j].atom)return fr;if(Ru(n[j].atom,ye[1])!==qr)return v(n,r)?n:fr;for(var t=n;;){if(!g())return p(e);if((n=o)[0]!==H||!n[j].atom)return fr;if(Ru(n[j].atom,ye[1])!==qr)break;t=n}return v(n,r)?n:(h(t),fr)},Q,!0)[Y],this.tokenpass=Nr("tokenpass",function(r,e){for(var n=o;;){if(n!=fr&&!v(n,r))return n;if(!g())return p(e);n=o}},Q,!0)[Y],this.readex=Nr("readex",function(r){return c=r},Q,!0)[Y],e===fr?i=Uu:X(e)?e[0]===Z&&((i=new b.NaanChannel(y,t)).ScanReset(),i.SetText(e[er]),i.SetEOF()):i=e,n===fr?a=Hu:X(n)?n===oe&&(a=new b.NaanChannel(y)).SetWriteLimit(0):a=n,this.raw=Ir({read:i,write:a})}function no(r,e,n){var t=Ir(!1),n=new eo(0,r,e,n);return t[x]=fr,t[j]=n,t}(eo.prototype=Object.create(Yi.prototype)).constructor=eo;var to=no(Uu,Hu),io=Uu,ao=Hu,uo=to,oo=to;function fo(r){return $(r[0]===H&&r[j]instanceof eo)}function co(){return/param/.test(function(r){})?fr:qr}var so=90,lo=11,po=so+1;function go(){var c=new Array(1),s=[];function l(r){var e;if(r===B)return po;if("object"!=typeof r)return r;var n,t,i=r[0];if(lo<i)return Math.floor(i/lo);if(i===H&&!(ea(t=(n=r)[j])?!(t instanceof sa||t instanceof eo||t instanceof ua):!!(n[x]!==fr&&I(n[x][j].persist)||t.constructor&&m.hasOwnProperty(t.constructor.name)||t.NaanPersist)))return po;var a=c.length+so;s.push(r),r[0]=i+a*lo;var u,o,f=Array(r.length);switch(c.push(f),(f[0]=i)===H&&(e=function(r){var e,n,t=r[j],i=l(r[x]);if(ea(t))if(X(t)){for(var a=[],u=0;u<t.length;++u)a.push(l(t[u]));e={na:a}}else{for(var o={},f=Object.getOwnPropertyNames(t),c=0;c<f.length;++c)o[f[c]]=l(t[f[c]],f[c]);e=r[3]instanceof ia?{no:o}:{nd:o},r[2]!==fr&&(e.tag=l(r[2]))}else try{e=t instanceof RegExp?{tag:i,type:t.constructor.name,state:[t.source,t.flags]}:t.StateSave!==B?{tag:i,type:t.constructor.name,state:t.StateSave()}:{tag:i,type:t.constructor.name,object:t}}catch(r){e={type:t.constructor.name}}return r[K]&&r[K]!==fr&&(n=gr.indexOf(r[K]))<0&&(n=gr.length),0<=n&&(e.xns=n),e}(r)),i){case z:f[2]=l(r[2]),f[1]=l(r[1]);break;case G:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=l(r[3]),f[4]=gr.indexOf(r[4]).toString(),f[5]=r[5];break;case Z:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=r[3];break;case V:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=r[3].toString();break;case J:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=function(r){if(D.bitSize(r)<=k)return _a(r);var e="";return D.negative(r)&&(r=D.negate(r),e="-"),e+D.bigInt2str(r,10)}(r[3]);break;case Q:case O:case U:if(!(u=jr(r[3])))return c.pop(),r[0]=i,po;f[1]=l(r[1]),f[2]=l(r[2]),(o=wr(u,[cr,sr]))[0]===G&&o[rr]===u?f[3]=l(o):f[3]=u;break;case H:f[1]=l(r[1]),f[2]=l(r[2]),f[3]=e;break;case w:f[1]=gr.indexOf(r).toString(),f.length=2;break;default:Xi(qi,"save-state warning: invalid element type "+i+" at "+a)}return a}for(var r,e=[],n=0;n<gr.length;++n){var t=n;t<=1&&(t=1-t),r=gr[t][ar];for(var i=0,a=0;a<r.length;++a)!function(r,e){if("object"==typeof r&&r[0]==G){var n=c.length+so;s.push(r),r[0]=G+n*lo;n=Array(T);return c.push(n),n[0]=G,n[1]=r[1],n[2]=r[2],n[3]=r[3],n[4]=e.toString(),n[5]=r[5],1}}(r[a],t)||++i;e[t]=i,l(gr[t])}!function(){for(var r=1;r<c.length;++r){var e=c[r];e[0]===G&&(e[1]=l(e[1]),e[2]=l(e[2]),e[3]=l(e[3]))}}();var u=[];for(n=0;n<gr.length;++n){r=gr[n][ar];var o=[];o.push(l(gr[n][P])),o.push(l(Ia(e[n]))),o.push(l(r[0])),u.push(o)}c[0]=u;var f=[l(pr)];for(n=0;n<vr.length;++n)f.push(l(vr[n]));var p,g=new Array(pt);for(g[0]=vt,p=1;p<=pt;++p){var v=lt[p-1];"object"==typeof v?g[p]=l(v):"number"==typeof v?g[p]=-v:v===B?Xi(qi,"savestate: corrupt argstack"):g[p]=v}g[p++]=l($e),g[p++]=l(Ee),g[p++]=l(Ie),g[p++]=l(Ae),function(){for(var r=0;r<s.length;++r)s[r][0]%=lo}();var d,h=new Array(st);for(h[0]=Me,d=1;d<=st;++d)h[d]=ct[d-1];var b=[];b[0]=g,b[1]=h,b[2]=gt,b[3]=f,b[4]=Pi;var y=new Array("Naan",900,12002,po);return new Array(y,c,b)}function vo(r){var e,n=r[0];if(!("Naan"!==n[0]||900<n[1])){var t=r[1],o=t[0],i=n[3],a=r[2],u=a[0],f=u[0],c=a[1],s=a[2],l=c[0],p=a[3],g=a[4];if(t!==B&&o!==B&&i!==B&&a!==B&&u!==B&&f!==B&&c!==B&&l!==B&&p!==B){for(var v=i-1,d=new Array(t.length),h=[],b=0;b<o.length;++b)h[b]=new Array(or);for(x=1;x<t.length;++x)"object"==typeof(e=t[x])&&e.ns!==B?d[x]=h[e.ns]:d[x]=new Array(3);for(var y,m,k=h[1],w=1,x=1;x<t.length;++x)if("number"!=typeof(e=t[x]))if("string"!=typeof e){if("object"!=typeof e||0===e.length)return void Xi(qi,"loadstate: unexpected token: "+typeof e);if(X(e))if(1!=e.length)if(2!=e.length)if(3!=e.length){var O,S,N,j,P=e[0];for(d[x][0]=P,O=1;O<e.length;++O)if(S=e[O],P===G&&(O===Y&&(w=C(S)),O===K&&(k=(k=h[parseInt(S)])||fr)),P===J&&O===nr)d[x][O]="string"!=typeof(m=S)?$a(m):m="-"==m.charAt(0)?D.negate(D.str2bigInt(m.substring(1),10,1)):D.str2bigInt(m,10,1);else if(P===V&&O===tr)d[x][O]=parseFloat(S);else if(Q<=P&&P<=U&&O===ir)if((j="string"==typeof S?br[S]:(j="string"==typeof(N=t[C(S)])?N:3<N.length?N[rr]:N[0],br[L(j)]))===B){debugger;Xi(qi,"state-load warning: undefined builtin: "+S+"("+N+")"),d[x][O]=ci}else d[x][O]=j;else d[x][O]=P===Z&&O===er?S:P===G&&O===rr?L(S):P===G&&O===K?h[parseInt(S)]:d[C(S)]}else{if("string"!=typeof e[0])return void Xi(qi,"loadstate: malformed obj3: "+typeof e[0]);d[x][0]=G,d[x][1]=d[x],d[x][2]=d[1],w=C(e[1]),d[x][3]=d[w],k=(k=h[parseInt(e[2])])||fr,d[x][4]=k,d[x][5]=L(e[0])}else if("string"==typeof e[0])d[x][0]=G,d[x][1]=d[x],d[x][2]=d[1],w=C(e[1]),d[x][3]=d[w],d[x][4]=k,d[x][5]=L(e[0]);else{if("number"!=typeof e[0])return void Xi(qi,"loadstate: malformed obj2: "+typeof e[0]);d[x][0]=z,d[x][1]=d[C(e[0])],d[x][2]=d[C(e[1])]}else if("string"==typeof e[0])d[x][0]=G,d[x][1]=d[x],d[x][2]=d[1],d[x][3]=d[++w],d[x][4]=k,d[x][5]=L(e[0]);else{if("number"!=typeof e[0])return void Xi(qi,"loadstate: malformed obj1: "+typeof e[0]);d[x][0]=z,d[x][1]=d[C(e[0])],d[x][2]=d[1]}else{d[x][0]=H,d[x][1]=d[x],d[x][2]=d[1],d[x][4]=d[1];try{if(e.na!==B){var T,A=[];for(A[Hi]=Yi,T=0;T<e.na.length;++T)A.push(d[C(e.na[T])]);d[x][3]=A,0<=e.xns&&!(d[x][4]=h[e.xns])&&(d[x][4]=lr)}else if(e.nd!==B||e.no!==B){for(var I=new(e.nd?na:ia),E=e.nd||e.no,$=Object.getOwnPropertyNames(E),M=0;M<$.length;++M)I[$[M]]=d[C(E[$[M]])];e.tag!==B&&(d[x][2]=d[C(e.tag)]),d[x][3]=I,0<=e.xns&&!(d[x][4]=h[e.xns])&&(d[x][4]=lr)}else e.ns!==B||(y="undefined"!=typeof window?window:global,e.tag&&(d[x][2]=d[C(e.tag)]),e.type&&e.state!==B?d[x][3]=new(Function.prototype.bind.apply(y[e.type],[null].concat(e.state))):e.object!==B?e.type&&"Object"!==e.type&&y[e.type]!==B?d[x][3]=new y[e.type](e.object):d[x][3]=e.object:d[x][3]={})}catch(r){d[x][3]={}}}}else"$"==e.substring(0,1)?(d[x][0]=Z,d[x][1]=d[x],d[x][2]=d[1],d[x][3]=e.substring(1)):(d[x][0]=G,d[x][1]=d[x],d[x][2]=d[1],d[x][3]=d[1],d[x][4]=k,d[x][5]=L(e));else d[x][0]=z,0===e?(d[x][1]=d[x+1],d[x][2]=d[1]):(d[x][1]=d[C(e)],d[x][2]=d[x+1]);var _,F=new Array(u.length),q=gr,R=vr,n=cr,r=sr,a=lr,i=pr;if(!function(){try{for(dr(),gr=[],vr=[],cr=h[0],sr=h[1],b=0;b<o.length;++b){for(var r=o[b],e=d[r[0]-v],n=Ma(d[r[1]-v][3],99999),t=r[2]-v,i=hr(e,h[b]),a=0;a<n;++a){var u=d[t+a];(u[K]=i)[ar].push(u),i[ur][u[rr]]=a}if(i[ar].length!=n)return void Xi(qi,"loadstate: symbol table sync: "+e[er]+" "+i[ar].length+" "+n)}return sr[ar].length<50||_<0||f<0||_<f?void Xi(qi,"loadstate: unqualified "+sr[ar].length):1}catch(r){return void Xi(qi,"loadstate failed: "+r.toString())}}())return gr=q,vr=R,cr=n,sr=r,lr=a,void(pr=i);for(vr=[cr,sr],pr=cr,Oo(),So(),vr=[],b=1;b<p.length;++b)vr.push(d[p[b]-v]);for(pr=d[p[0]-v],_=1;_<u.length;++_){var W=u[_],W="number"==typeof W?W<=0?-W:d[W-v]:W;F[_-1]=W}return c.splice(0,1),Me=l,st=(ct=c).length,pt=_-1,vt=f,gt=s,Ae=(lt=F)[--pt],Ie=lt[--pt],Ee=lt[--pt],$e=lt[--pt],Pi=g,1}Xi(qi,"cannot load malformed state")}function C(r){return r<=v?x+r:r-v}function L(r){return"\\$"===r.substring(0,2)?r.substring(1):r}}function ho(r){var e,n=wr("SaveTrap",gr);if(n!==fr&&n[Y]!==fr&&(wt=-1,Me=_e,_t(Er(n,fr),"savetrap"),qt(!0),nt!==qr))return e;var i=go();return r&&function(r){var e,n,t,i,a,u,o,f=r[1],c=[],s=[];function l(r){if("number"!=typeof r)return X(r)?r.length===T?Xi(qi,"save-state warning: unexpected symbol "+r[rr]):Xi(qi,"save-state warning: unexpected element "+r[0]):Xi(qi,"save-state warning: invalid item encountered"),po;var e,n=f[r-so];switch(n[0]){case z:break;case Z:case J:case V:if(e=n[0].toString()+"/"+n[2].toString()+"/"+n[3],s.hasOwnProperty(e))return s[e];s[e]=r,n[0]+=lo;case z+lo:case Z+lo:case J+lo:case V+lo:default:return r}var t=l(n[S]),i=l(n[N]),a=t+i/(f.length+so+1);return c.hasOwnProperty(a)?c[a]:(c[a]=r,n[0]=z+lo,n[S]=t,n[N]=i,r)}for(m=1;m<f.length;++m)switch((e=f[m])[0]){case z:case Z:case J:case V:e[1]=l(e[1]),e[2]=l(e[2]);break;case G:e[1]=l(e[1]),e[2]=l(e[2]),e[3]=l(e[3]);break;case Q:case O:case U:e[1]=l(e[1]),e[2]=l(e[2]),"number"==typeof e[3]&&(e[3]=l(e[3]));break;case H:if(e[1]=l(e[1]),e[2]=l(e[2]),e[3].na!==B)for(i=e[3].na,n=0;n<i.length;++n)i[n]=l(i[n]);else if(e[3].nd!==B||e[3].no!==B){for(a=e[3].nd||e[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=l(a[u[t]]);e[3].tag&&(e[3].tag=l(e[3].tag))}}for(var p,g=f[0],v=0;v<g.length;++v)for(p=g[v],o=0;o<p.length;++o)p[o]=l(p[o]);for(var d=r[2][0],h=1;h<d.length;++h)d[h]>so&&(d[h]=l(d[h]));for(var b=[],y=0,m=1;m<f.length;++m)switch(f[m][0]){case z:case Z:case J:case V:++y;break;default:b[m+so]=m+so-y}for(v=0;v<g.length;++v)for(p=g[v],o=0;o<p.length;++o)p[o]=b[p[o]];for(h=1;h<d.length;++h)d[h]>so&&(d[h]=b[d[h]]);for(var k=r[2][3],w=0;w<k.length;++w)k[w]>so&&(k[w]=b[k[w]]);var x=new Array(1);for(m=1;m<f.length;++m){switch((e=f[m])[0]){case z:case Z:case J:case V:continue;case z+lo:case Z+lo:case J+lo:case V+lo:e[0]-=lo,e[1]=b[e[1]],e[2]=b[e[2]];break;case G:e[1]=b[e[1]],e[2]=b[e[2]],e[3]=b[e[3]];break;case Q:case O:case U:e[1]=b[e[1]],e[2]=b[e[2]],"number"==typeof e[3]&&(e[3]=b[e[3]]);break;case H:if(e[1]=b[e[1]],e[2]=b[e[2]],e[3].na!==B)for(i=e[3].na,n=0;n<i.length;++n)i[n]=b[i[n]];else if(e[3].nd!==B||e[3].no!==B){for(a=e[3].nd||e[3].no,u=Object.getOwnPropertyNames(a),t=0;t<u.length;++t)a[u[t]]=b[a[u[t]]];e[3].tag&&(e[3].tag=b[e[3].tag])}}x.push(e)}x[0]=g,r[1]=x}(i),function(){var r,e=i[1];function n(r,e){r+=so;return e-r<=so&&(-9<=e-r||999<e&&-99<=e-r)?e-r:e}for(r=1;r<e.length;++r){var t=e[r];switch(t[0]){case z:case Z:case J:case V:t[1]=n(r,t[1]),t[2]=n(r,t[2]);break;case G:t[1]=n(r,t[1]),t[2]=n(r,t[2]),t[3]=n(r,t[3]);break;case Q:case O:case U:t[1]=n(r,t[1]),t[2]=n(r,t[2]),"number"==typeof t[3]&&(t[3]=n(r,t[3]));break;case H:t[1]=n(r,t[1]),t[2]=n(r,t[2])}}}(),e=function r(e,n){function t(r){return n.QuoteString(r)}function i(r){return"$"==r.substring(0,1)&&(r="\\".concat(r)),t(r)}if(0===e.length)return"";n===B&&(n=ao);for(var a,u,o,f,c="[",s=!1,l=0;l<e.length;++l)s&&(c+=","),"object"==typeof e[l]?((o=e[l])[0]===z?1===o[2]?c+=o[1]:o[2]===po?1!==o[1]?c+="["+o[1]+"]":c+="0":c+="["+o[1]+","+o[2]+"]":o[0]===G&&0===o[1]&&o[2]===po?(f=i(o[rr]),a==o[4]?o[3]===po?c+=f:o[3]==u+1?c+="["+f+"]":c+="["+f+","+o[3]+"]":c+="["+f+","+o[3]+","+o[4]+"]"):o[0]===Z&&0===o[1]&&o[2]===po?c+=t("$"+o[er]):o[0]===H?c+=JSON.stringify(o[j]):o[0]===w?c+=JSON.stringify({ns:o[1]}):c+=r(e[l]),o[0]===G&&(a=o[4],u=o[3])):"string"==typeof e[l]?e[0]===G&&l===rr?c+=i(e[l]):e[0]===Z&&l===er?c+=t("$"+e[l]):c+=t(e[l]):e[l]!==B&&(c+=e[l]),s=!0;return c+="]"}(i)}function bo(r){if(!vo(r))return fr;No(),jo();r=wr("LoadTrap",gr);if(r===fr)return ko;r=_t(Er(r,fr),"loadtrap");return ct[st++]=Me,r}function yo(r){r=ho(r!=fr);return"string"==typeof r?Ar(r):r}Nr("save",yo,Q);function mo(r){if(r[0]!==Z)return fr;r=JSON.parse(r[er]);return r&&0!==r.length?bo(r):fr}var ko=Nr("load",mo,Q),wo=[["global","`",ou,U],["global","deref",di,U],["global",".",hi,U],["global","quote",ou,U],["global","$",function(r){return be[1]=r},Q],["exec","and",function(r){return ct[st++]=Be,r},U],["exec","apply",si,Q],["exec","break",ki,Q],["exec","call",function(r){return ct[st++]=e,Ee=qr,Ie=r[2],r[1]},U],["exec","catch",function(r){return ct[st++]=En,r},U],["exec","cond",function(r){return ct[st++]=wn,r},U],["exec","continue",wi,Q],["exec","eval",function(r){return r[0]!==z&&r[0]!==H?r[1]:(ct[st++]=pn,r)},Q],["exec","lambda",function(r){return $(r[0]===G&&r[rr]==Rr[rr])},Q],["exec","loop",function(r){return ct[st++]=nn,r},U],["exec","or",function(r){return ct[st++]=An,r},U],["exec","return",function(r,e){return mi(r?e(0):et)},O],["exec","throw",bi,Q],["exec","yield",function(){var r=Sa(0);return r[x]=fr,r[j].execstate=Ni(!0),r},Q],["exec","resume",function(r,e){return r[0]!==H||ea(r[j])||!X(r[j].execstate)?fr:(ji(r[j].execstate),Ae=e)},Q],["info","builtin",function(r,e){return $(Eu(r,e)===Tu)},O],["info","procedure",function(r,e){return $(Eu(r,e)===Au)},O],["info","eq",Fu,Q],["info","equal",Ru,Q],["info","length",Qu,Q],["info","not",function(r){return $(!I(r))},Q],["info","typeof",function(r,e){switch(Eu(r,e)){case z:return ne;case G:return te;case Z:return oe;case J:return ie;case V:return ae;case Q:case O:return ee;case U:return Lr;case H:return le;case w:return pe;case mu:return ue;case ku:return fe;case wu:return ce;case xu:return se;case Ou:return ge;case Nu:return ve;case ju:return de;case Tu:return ee;case Iu:return ne}return fr},O],["info","relate",function(r,e){return Ia(Lu(r,e))},Q],["symbol","setq",function(r){return r[0]!==z?fr:(ct[st++]=rn,r)},U],["symbol","assign",Du,Q],["symbol","compress",function(r,e){for(var n="",t=0;t<r;++t)n+=Vu(e(t));return je(n)},O],["symbol","copyproc",Gu,Q],["symbol","copyann",function(r,e,n){return Pe(r,!0)?e[0]!==G?fr:(n===fr&&(t=r[2]),r[2]=M(e[2],t),r):Ae;var t},Q],["symbol","exists",function(r,e){var n,t;if(r[0]===Z)t=r[er];else if(r[0]===G)t=r[rr];else{if(r[0]!==H||!RegExp.prototype.isPrototypeOf(r[j]))return fr;t=r[j]}if(e===fr)n=vr;else if(e===qr)n=gr;else{if(e[0]!==w)return fr;n=[e]}for(var i,a=[],u=0;u<n.length;++u){var o=n[u];if("string"==typeof t){if(o[ur].hasOwnProperty(t))return i=o[ur][t],o[ar][i]}else if(r[0]===H)for(i=0;i<o[ar].length;++i){var f=o[ar][i];t.test(f[rr])&&a.push(f)}}return d(a)},Q],["symbol","get",Xu,Q],["symbol","getproc",function(r,e){return r[0]>=Q&&r[0]<=U&&co()===fr?Ar(r[3].name):r[0]!==G?fr:e===qr?_(r):r[3]},Q],["symbol","interned",$u,Q],["symbol","defbinding",function(r){var e;if(r[0]===G)e=r[rr];else{if(r[0]!==Z)return fr;e=r[er]}return Ne(e)[Y]},Q],["symbol","moveproc",function(r,e){return!Zu&&Wi<=Pi&&(Zu=!0,Xi(Wi,"warning: moveproc() is deprecated in favor of copyproc()")),Gu(e,r)},Q],["symbol","name",function(r,e){return $((e=Eu(r,e))===G||e===Z||e===Pu)},O],["symbol","ordered",function(r,e){return makeBoolean(Lu(r,e)<0)},Q],["symbol","preadjust",function(r){return ct[st++]=bn,r},U],["symbol","postadjust",function(r){return ct[st++]=Ge,r},U],["symbol","put",zu,Q],["symbol","putproc",function(r,e){if(r[0]!==G)return fr;if(!Pe(r))return Ae;if(e[0]>=Q&&e[0]<=U||e[0]===G)return r[3]=e;if(e[0]===z){var n=e[2][1][2];return r[2]!==n&&(r[2]=M(n)),r[3]=e}if(e[0]===Z){var i={j2n:va,n2j:ba,nanu:ra,pl:Ku,ns:r[K],len:Qu,idle:function(){Me=_e}};try{var a,t=e[er],u=O,t=t.startsWith("macro:")?(u=U,t=t.slice(6),a=new Function("args","_lib","_false",t),function(r,e){return a(r,i,fr)||fr}):t.startsWith("builtin:")?(u=Q,t=t.slice(8),a=new Function("cx","cy","cz","_lib","_false",t),function(r,e,n,t){return a(r,e,n,i,fr)||fr}):(u=O,a=new Function("narg","nthf","_lib","_false",t),function(r,e){return a(r,e,i,fr)||fr}),t=[u,null,r,t];return t[1]=t,r[3]=t}catch(r){return Xi(Wi,"compile: "+r.toString()),Ar(r)}}return fr},Q],["symbol","replacer",function(r,e){return Pe(r,!0)?(r[2]=e,r):Ae},Q],["symbol","symbol",function(r,e){return $(Eu(r,e)===G)},O],["symbol","unintern",function(r){var e;if(r[0]===G)e=yr(r[rr]);else{if(r[0]!==Z)return fr;e=yr(r[er])}return e[K]=vr[0],e},Q],["tuple","atom",_u,O],["tuple","car",fu,Q],["tuple","cdr",cu,Q],["tuple","caar",su,Q],["tuple","cadr",lu,Q],["tuple","cdar",function(r){return r[1][2]},Q],["tuple","cddr",pu,Q],["tuple","caaar",function(r){return r[1][1][1]},Q],["tuple","caadr",gu,Q],["tuple","cadar",function(r){return r[1][2][1]},Q],["tuple","caddr",vu,Q],["tuple","cdaar",function(r){return r[1][1][2]},Q],["tuple","cdadr",function(r){return r[2][1][2]},Q],["tuple","cddar",function(r){return r[1][2][2]},Q],["tuple","cdddr",du,Q],["tuple","caaaar",function(r){return r[1][1][1][1]},Q],["tuple","caaadr",function(r){return r[2][1][1][1]},Q],["tuple","caadar",function(r){return r[1][2][1][1]},Q],["tuple","caaddr",function(r){return r[2][2][1][1]},Q],["tuple","cadaar",function(r){return r[1][1][2][1]},Q],["tuple","cadadr",function(r){return r[2][1][2][1]},Q],["tuple","caddar",function(r){return r[1][2][2][1]},Q],["tuple","cadddr",function(r){return r[2][2][2][1]},Q],["tuple","cdaaar",function(r){return r[1][1][1][2]},Q],["tuple","cdaadr",function(r){return r[2][1][1][2]},Q],["tuple","cdadar",function(r){return r[1][2][1][2]},Q],["tuple","cdaddr",function(r){return r[2][2][1][2]},Q],["tuple","cddaar",function(r){return r[1][1][2][2]},Q],["tuple","cddadr",function(r){return r[2][1][2][2]},Q],["tuple","cdddar",function(r){return r[1][2][2][2]},Q],["tuple","cddddr",function(r){return r[2][2][2][2]},Q],["tuple","cons",function(r,e){if(0===r)return fr;if(1==r)return Er(e(0),fr);for(var n=e(--r);0<=--r;)n=Er(e(r,e),n);return n},O],["tuple","insert",function(r,e){if(0===r)return fr;for(var n=e(0);0<--r;)n=Er(e(r,e),n);return n},O],["tuple","empty",_u,O],["tuple","first",fu,Q],["tuple","ffirst",su,Q],["tuple","fsecond",gu,Q],["tuple","list",function(r){return ct[st++]=tn,r},U],["tuple","member",Wu,Q],["tuple","within",Cu,Q],["tuple","pop",function(r){var e=r[1];return e[0]!==G||e[1][0]!==z?fr:(r=e[1][1],e[1]=e[1][2],r)},U],["tuple","push",function(r){return r[2][1][0]!==G?fr:Pe(r[2][1])?(ct[st++]=Ye,r):Ae},U],["tuple","rest",cu,Q],["tuple","reverse",hu,Q],["tuple","rrest",pu,Q],["tuple","rrrest",du,Q],["tuple","second",lu,Q],["tuple","third",vu,Q],["tuple","totuple",function(r){if(r[0]===z)return r;if(r[0]!==H)return fr;var e=r[j],n=ea(e);if(X(e))return ga(e,!n);for(var t=Object.getOwnPropertyNames(e),i=fr,a=t.length-1;0<=a;--a)try{var u,o=t[a];o!==B&&e[o]!==B&&(u=e[o],n||(u=va(u)),i=Er(Er(va(o),u),i))}catch(r){}return i},Q],["tuple","tuple",function(r,e){return $((e=Eu(r,e))===z||e===Au||e===Iu)},O],["tuple","tuplepath",function(r,i){return function r(e){if(Fu(e,i)!==fr)return fr;for(var n,t=0;;){if(Fu(e,i)!==fr){t=-t,n=fr;break}if(e[0]!==z)return!1;if(n=r(e[1]))break;e=e[2],++t}return Er(Ia(t),n)}(r)||fr},Q],["number","bitand",Va,O],["number","bitnot",function(r,e,n,t){return r[0]===J?Aa(D.not(r[3]),fr):r[0]===V?Ea(~r[3]):r[0]===H&&r[3]instanceof ia?Zt(r,".bitnot"):Gt(xr(t[2][1],"extendBitNot"))},Q],["number","bitor",Ua,O],["number","bitxor",Ya,O],["number","difference",La,O],["number","divide",function(r,e,n,t){if(r[0]!==J||e[0]!==J)return r[0]===H&&r[3]instanceof ia?Zt(r,".divide"):e[0]===H&&e[3]instanceof ia?Zt(e,".divide"):Gt(xr(t[2][1],"extendDivide"));if(D.isZero(e[3]))return bi(Mr(["internal","$divide by zero"]),fr);var i=r[3],a=e[3],u=D.negative(i),t=D.negative(a);return u&&(i=D.negate(i)),t&&(a=D.negate(a)),r=D.dup(i),e=D.dup(i),D.divide_(i,a,r,e),u&&(D.isZero(e)||(r=D.addInt(r,1),e=D.sub(a,e))),Er(Aa(D.trim(r,1),fr),Aa(D.trim(e,1),fr))},Q],["number","even",function(r){return r[0]===J?$(0===D.modInt(r[3],2)):r[0]!==V?fr:$((r=r[3]/2)==Math.floor(r))},Q],["number","float",function(r,e){return $(Eu(r,e)===V)},O],["number","greater",tu,Q],["number","integer",function(r,e){return $(Eu(r,e)===J)},O],["number","lesser",iu,Q],["number","mod",Za,Q],["number","negate",qa,Q],["number","negative",function(r){return r[0]===J?$(D.negative(r[3])):r[0]===V?$(r[3]<0):fr},Q],["number","numeric",function(r,e,n){var t=Eu(r,e);if(t===V||t===J||t===mu)return qr;for(var i=0;i<r;++i){var a=e(i);if(a[0]===H&&a[3]instanceof ia)return Zt(a,".numeric")}return Gt(xr(n[2][1],"extendNumeric"))},O],["number","plus",Wa,O],["number","positive",function(r){return r[0]===J?$(!D.negative(r[3])&&!D.isZero(r[3])):r[0]===V?$(0<r[3]):fr},Q],["number","quotient",za,Q],["number","shiftleft",ru,Q],["number","shiftright",nu,Q],["number","times",Da,O],["number","tofloat",function(r,e,n,t){return r[0]===V?r:r[0]===J?Ea(_a(r[3])):r[0]===Z?Ea(parseFloat(r[3])):r[0]===H&&"number"==typeof r[j]?Ea(r[j]):r[0]===H&&r[3]instanceof ia?Zt(r,".tofloat"):Gt(xr(t[2][1],"extendTofloat"))},Q],["number","toint",function(r,e){if(r[0]===V)return Ia(Math.floor(r[3]));if(r[0]===J)return Aa(r[j],fr);if(r[0]===Z){if(0!==r[3].indexOf("0x"))return e===fr?Ia(parseInt(r[3])):((n=au(e[3]))<0&&(n=10),Ia(parseInt(r[3],n)));n=Ia(parseInt(r[3],16));return n[x]=ha({hexcon:!0}),n}if(r[0]===H){var n=r[j].valueOf();if("number"==typeof n)return isFinite(n)?Ia(n):fr;try{if(r[j]instanceof Uint8Array)return Aa(D.uint82bigInt(r[j]),fr)}catch(r){return fr}}return fr},Q],["number","zero",function(r){return r[0]===J?$(D.isZero(r[3])):r[0]===V?$(0===r[3]):fr},Q],["string","explode",function(r){var e;if(r[0]===G)e=r[rr];else if(r[0]===Z)e=r[er];else{if(r[0]!==J)return fr;e=ao.IntToString(r[nr],uu(r))}var n,t=fr,i=null;if(0===e.length)return fr;for(n=0;n<e.length;++n){var a=Er(Ar(e.charAt(n)),fr);i?i[2]=a:t=a,i=a}return t},Q],["string","strcat",function(r,e){for(var n="",t=0;t<r;++t)n+=Yu(e(t));return Ar(n)},O],["string","string",function(r,e){return $(Eu(r,e)===Z)},O],["string","tostring",Ju,Q],["string","unicode",function(r){var e;if(r[0]===G)e=r[rr];else{if(r[0]!==Z){if(r[0]!==J)return fr;if(D.negative(r[3])||D.greater(r[3],D.int2bigInt(1114111,16,1)))return fr;var n=D.modInt(r[3],1114111);if(n<65536)e=String.fromCharCode(n);else try{e=String.fromCodePoint(n)}catch(r){return Xi(Wi,"warning: couldn't fromCodePoint("+n+")"),fr}return Ar(e)}e=r[er]}try{return Ia(e.codePointAt(0),ha({hexcon:!0}))}catch(r){return Xi(Wi,"warning: couldn't codePointAt(\""+e.substring(0,1)+'")'),Ia(e.charCodeAt(0))}},Q],["array","array",function(r,e){return $(Eu(r,e)===ku)},O],["array","arraycall",function(r,e){function u(){var r=zr[1],e=jt;if(qt(!0),e!=jt&&bi(Mr(["internal","fiber suspended during callback"]),fr),r!==zr[1])throw xt}function n(r,e,n){var t,i=pr,a=Jr[1];return function(){return t=Er(arguments[0],Er(va(arguments[1]),Er(e,fr))),_t(Er(vi,Er(r,t)),"arrayfilter"),Jr[1]=a,pr=i,u(),1===n?nt:(2===n&&(nt=$(I(nt))),ba(nt))}}function t(e){var n,t=pr,i=Jr[1];return function(){var r=e?(n=ga(arguments,!1),_t(Er(vi,Er(e,n)),"arraycompare"),Jr[1]=i,pr=t,u(),ba(nt)):Lu(arguments[0],arguments[1]);return r}}function i(r,e,n){var t;if(e){if(e[0]!==J)return fr;null===(t=_a(e[3],Number.MAX_SAFE_INTEGER))?t=n:(t<0&&(t=r-1+t),r<=t&&(t=r-1))}else t=n;return t}function a(r,e){var n="";e=e?ba(e):",";for(var t=0;t<r.length;++t){var i=ba(r[t]);0<t?n=n+e+i:n+=i}return va(n)}if(r<2)return fr;var o=e(0),f=e(1);if(o[0]!==H||f[0]===z||f[0]===H&&ea(f))return fr;var c=o[3];if(!ea(c)||!X(c))return fr;for(var s,l,p=ba(f),g=[],v=0;v<r-2;++v)switch(p){case"every":case"filter":case"find":case"findIndex":case"forEach":case"some":0===v&&g.push(n(e(v+2),o,2));break;case"map":0===v&&g.push(n(e(v+2),o,1));break;case"indexOf":case"join":case"lastIndexOf":case"push":case"unshift":g.push(e(v+2));break;case"concat":(l=e(v+2))[0]===H&&X(l[3])?(ea(s=l[3])||(s=da(s,new WeakMap)[3]),g.push(s)):g.push([l]);break;case"copyWithin":case"slice":g.push(ba(e(v+2)));break;case"pop":case"reverse":case"shift":break;case"reduce":case"reduceRight":0===v?g.push(function(r,e){var n,t=pr,i=Jr[1];return function(){return n=Er(arguments[0],Er(arguments[1],Er(va(arguments[2]),Er(e,fr)))),_t(Er(vi,Er(r,n)),"arrayreduce"),Jr[1]=i,pr=t,t=i=null,u(),nt}}(e(v+2),o)):1==v&&g.push(e(v+2));break;case"sort":0===v&&g.push(t(e(v+2)));break;case"fill":0===v?g.push(e(v+2)):g.push(ba(e(v+2)));break;case"splice":v<2?g.push(ba(e(v+2))):g.push(e(v+2));break;default:return fr}var d=!0;switch(p){case"find":d=!1;case"every":case"filter":case"findIndex":case"forEach":case"map":case"some":if(g.length<1)return fr;break;case"sort":0===g.length&&g.push(t());break;case"indexOf":return function(r,e,n){if((n=i(r.length,n,0))===fr)return fr;for(var t=n;t<r.length;++t)if(Fu(r[t],e)!=fr)return Ia(t);return Ia(-1)}(c,g[0],g[1]);case"join":return g.length<1?a(c,!1):a(c,g[0]);case"lastIndexOf":return function(r,e,n){if((n=i(r.length,n,r.length-1))===fr)return fr;for(var t=n;0<=t;--t)if(Fu(r[t],e)!=fr)return Ia(t);return Ia(-1)}(c,g[0],g[1]);case"pop":case"shift":d=!1;break;case"reduce":case"reduceRight":if(d=!1,g.length<1)return fr;if(g.length<2){if(c.length<1)return fr;g.push(c[0]),c=c.slice(1)}break;case"toString":return Ju(o,fr);case"push":case"unshift":case"concat":case"copyWithin":case"reverse":case"slice":case"fill":case"splice":break;default:return bi(Mr(["internal",'$arrayCall "'+p+'": not defined']),fr)}try{wt=1,Me=_e;var h=Array.prototype[p],b=fr;return h!==B&&(b=h.apply(c,g),!d&&X(b)||(b=b===c?o:X(b)?(b[Hi]=Yi,Ir(b)):va(b))),wt=-1,b}catch(r){if(r===xt)throw r;return wt=-1,bi(Mr(["internal",'$arrayCall "'+p+'": '+r.toString()]),fr)}},O],["dictionary","dictionary",function(r,e){return $(Eu(r,e)===wu)},O],["dictionary","set.",pa,Q],["dictionary","set[",pa,Q],["dictionary","merge",function(r,e){for(var n=[{}],t=0;t<r;++t){var i=e(t);if(i[0]!==H||X(i[j])){if(i[0]===z){var a=Object.assign.apply({},n);do{}while(delete a[ba(i[1])],(i=i[2])[0]===z);n=[a]}}else ea(i[j])?n.push(i[j]):n.push(ha(i[j])[j])}return ta(Object.assign.apply({},n))},O],["dictionary","keys",ma,Q],["dictionary","defined",ya,Q],["dictionary","object",function(r,e){return $(Eu(r,e)===xu)},O],["local","instances",function(r){function e(r){for(var e=-1;++e<Pt;){var n=r[2][3][".parent"];if(!n)return[r,e];r=n}return[fr,e]}function n(r){var e=r[2][3][".base"];return e||r}if(r[0]!==G||r[3]===fr)return fr;var t,i;[t,i]=e(r=r[3][2][1]);var a=n(t);if(a===fr)return fr;for(var u=function(o){var r,e,n,f=new WeakMap,c=[];function s(r){if("object"==typeof r&&!f.get(r))switch(f.set(r,r),r[0]){case z:for(var e=r;;){s(e[1]);var n=e[2];if(n===fr)break;if(n[0]!==z){s(n);break}if(e=n,f.get(e))break;f.set(e,e)}break;case H:if(ea(r[j])){var t=r[j];if(X(r[j]))for(var i=0;i<t.length;++i)s(t[i]);else for(var a=Object.getOwnPropertyNames(t),u=0;u<a.length;++u)s(t[a[u]])}break;case G:r[rr]===o&&c.push(r),s(r[1]),s(r[2]),s(r[3])}}for(r=0;r<gr.length;++r)for(n=gr[r][ar],e=0;e<n.length;++e)s(n[e]);for(var t=1;t<=pt;++t)s(lt[t-1]);return c}(r[rr]),o=fr,f=0;f<u.length;++f){var c,s,l=u[f];[c,s]=e(l),s==i&&n(c)===a&&(o=Er(l,o))}return o},Q],["local","delete",function(r,e){for(var n=[],t=0;t<r;++t)n.push(e(t));for(var i,a=fr,u=0;u<n.length;++u)(i=n[u])[0]===w?W(i):a=Er(i,a);return a},O],["local","enclose",yu,Q],["local","namespace",function(r){return r===fr?cr:r[0]===G||r[0]===H?r[K]:r[0]===w?r[P]:fr},Q],["local","new",ra,Q],["local","nonce",function(r){return $(r[0]===H&&r[j]instanceof sa)},Q],["local","nsactive",function(r){return r===fr?d(vr):r[0]===z?R(r):r[0]===G&&r===qr?d(gr):fr},Q],["local","nscaller",function(r){for(var e,n=vt;0<n;){var t=lt[n];switch(t){case Cn:return lt[n-6];case Ln:return e=lt[n-2],lt[n-9-e];case Hn:case Rn:case Wn:case Yn:case qn:break;default:return Xi(qi,"nfuncNscaller: unknown frame type on stack: "+t),fr}n=lt[n-1]}return fr},Q],["local","caller",Si,Q],["local","nsrights",function(r,e){if(0===r)return pr;var n=e(0);if(1==r&&n[0]===w){var t=pr;return pr===cr&&(pr=n),t}for(var i=0;i<r;++i){var a=e(i);if(a[0]===w)n=a;else{if(a[0]!==G&&a[0]!==H)return fr;if(!I(a))return fr;n=a[K]}if(n!==fr&&(n!=pr&&pr!==cr))return fr}return qr},O],["local","symlist",bu,Q],["local","weakmap",function(r){return $(r[0]===H&&r[j]instanceof WeakMap)},Q],["host","editget",function(r){return A.hasOwnProperty("edit-get-string")?Ar(A["edit-get-string"]()):fr},Q],["host","editset",function(r){return A.hasOwnProperty("edit-set-string")?(A["edit-set-string"](Yu(r)),r):fr},Q],["host","future",function(r,e){var n=Ir(!1);return(e=new sa(n,r,ca(e))).cancel=e.signal,e.run=e.reset,delete e.signal,delete e.reset,n[x]=fr,n[j]=e,n},Q],["host","futures",function(){for(var r=Object.getOwnPropertyNames(fa),e=fr,n=0;n<r.length;++n){var t=fa[r[n]],i=new na;i.nonce=t.nonce,i.start=Ia(t.start),i.count=Ia(t.count),t.delay&&(i.delay=Ia(t.delay)),t.execute&&(i.execute=t.execute),t.waiting&&0<t.waiting.length&&(i.waiting=d(t.waiting)),t.contins&&0<t.contins.length&&(i.continuations=d(t.contins)),e=Er(Ir(i),e)}return e},Q],["host","loadstate",mo,Q],["host","milliseconds",function(){return Ia((new Date).getTime())},Q],["host","mangled",co,Q],["host","runaverage",function(r,e){var n,t;if(r===fr)n=!1;else if(null===(n=Fa(r,50))||n<0)return fr;if(e===fr)t=!1;else if(null===(t=Fa(e,1e3))||t<10)return fr;return da(Xt(n,t),new WeakMap)},Q],["host","savestate",yo,Q],["host","sprint",function(){return ja(),qr},Q],["host","wait",function(){return wt<0?(wt=0,qr):(wt=1,Ot)},Q],["stdio","textstream",fo,Q],["stdio","textstreams",function(r){var e=uo,n=oo;if(e===to&&r!==qr&&(e=fr),n===to&&r!==qr&&(n=fr),r[0]===z){if(r[2][0]!==z)return fr;var t=r[1],r=r[2][1];if(t===fr)t=to;else if(t===qr)t=uo;else if(fo(t)!==qr)return fr;if(r===fr)r=to;else if(r===qr)r=oo;else if(fo(r)!==qr)return fr;io=(uo=t)[j].raw[j].read,ao=(oo=r)[j].raw[j].write}return Er(e,Er(n,fr))},Q],["stdio","isbreak",function(r){return oo[j].isbreak[3](r)},Q],["stdio","newline",function(r){return oo[j].newline[3](r)},Q],["stdio","spaces",function(r){return oo[j].spaces[3](r)},Q],["stdio","printline",Ku,O],["stdio","print",function(r,e){return oo[j].print[3](r,e)},O],["stdio","printloc",function(r){return oo[j].printloc[3](r)},Q],["stdio","printq",function(r,e){return oo[j].printq[3](r,e)},O],["stdio","printFlush",ro,Q],["external","xapply",function(r,e,n){if(r[0]!==H||e[0]===z||e[0]===H&&ea(e))return fr;var t=n===fr?[]:ba(n);if(!X(t))return fr;var i=ba(e),a=null;if(r[0]===H){if(ea(a=r[3])){if(a.hasOwnProperty(i)){r=a[i];if(X(r))return si(r,n)}return fr}if(a instanceof WeakMap)return fr}var u,o=fr,f=a===Number||a===String||a===Boolean;try{return wt=1,Me=_e,e[0]===H?o=va(e[3].apply(a,t)):(a.prototype!==B&&(u=a.prototype[i])!==B||(f=!1,u=a[i]),u!==B&&(o=va(f?u.apply(t[0],t.slice(1)):u.apply(a,t)))),wt=-1,o}catch(r){return wt=-1,bi(Mr(["internal",'$xapply "'+i+'": '+r.toString()]),fr)}},Q],["external","xcall",function(r,e){return r<2?fr:Oa(e(0),e(1),r-2,2,e)},O],["external","xget",wa,Q],["external","xdefined",ya,Q],["external","xkeys",ma,Q],["external","xlock",ka,Q],["external","xnew",Sa,O],["external","xobject",function(r){return $(r[0]===H&&!ea(r[3]))},Q],["external","xset",xa,Q],["debug","breakpoint",Qi,O],["debug","debuglog",Vi,O],["debug","jsdebugger",function(r,e){var n=Pi;Pi=Ri,Vi(r,e),Pi=n;debugger;return qr},O],["debug","loglevel",function(r){var e=Pi;return null===(Pi=Fa(r,9))&&(Pi=e),Ia(e)},Q],["debug","stacktrace",function(){return xi(vt)},Q],["debug","stacktrap",function(r,e,n){var t,i;if(null===(r=Fa(r,65535))||r<0)return fr;if(e===fr)return Oi(r);if(e[0]===J){if(D.negative(e[3]))return fr;t=e,i=n}else i=e;return(r=Oi(r,!0))!==fr&&(r[j].trap=i,t?r[j].steps=t:delete r[j].steps),r},Q],["debug","symtrace",function(r){return r[1][0]!==G?fr:(Bi=r[1],Di=Bi[1],r[1])},U]];function xo(r,e,n){var t=re[S],i=t[j][r];i||(i=ta(),ka(t[j][r]=i,cr)),i[j][e]||(i[j][e]=n)}function Oo(){var r=re[S];r!==fr&&r[0]===H&&ea(r[j])||(ka(r=ta(),cr),re[S]=r);var e,n=kr("App"),t=n[S];for(t!==fr&&t[0]===H&&ea(t[j])||(t=ta(),n[S]=t),e=0;e<wo.length;++e){var i=wo[e][0],a=wo[e][1],u=wo[e][2],o=wo[e][3],f=(wo[e][4],kr(a));f!==fr&&f[Y]!==fr||(f=Nr(a,u,o)),L(a,sr)||xo(i,a,f)}r[j].module||(r[j].module=ta()),re=kr("Naan"),kr("deref"),Qr=kr("."),zr=kr("exception"),Gr=kr("escape"),fr=kr("false"),Vr=kr("`"),Zr=kr("this"),Jr=kr("self"),_r=kr("undefined"),Fr=kr("null"),qr=kr("true"),Rr=kr("lambda"),Ur=kr("body"),kr("call"),Yr=kr("catch"),Br=kr("closure"),Wr=kr("function"),Cr=kr("function&"),Dr=kr("let"),Xr=kr("let&"),Hr=kr("loop"),Lr=kr("macro"),kr("var"),ee=kr("builtin"),kr("list"),ne=kr("tuple"),te=kr("symbol"),ie=kr("integer"),ae=kr("float"),ue=kr("numeric"),oe=kr("string"),fe=kr("array"),Oe=kr("arraycall"),ce=kr("dictionary"),se=kr("object"),pe=kr("namespace"),ge=kr("nonce"),kr("save"),ko=kr("load"),be=kr("$"),ve=kr("weakmap"),he=kr("sprint"),kr("xget"),kr("xset"),Se=kr("xcall"),kr("xapply"),le=kr("xobject"),de=kr("textstream"),me=kr("space"),ye=kr("cr"),Ui=kr("breakpoint"),Kr=kr("interrupt")}function So(){function r(r,e){zu(ne,Ar(r),kr(e||r)[Y])}function e(r,e){zu(ne,Ar(r),e)}function n(r,e){zu(te,Ar(r),kr(e||r)[Y])}function t(r,e){zu(oe,Ar(r),kr(e||r)[Y])}function i(r,e){zu(ie,Ar(r),kr(e||r)[Y])}function a(r,e){zu(ae,Ar(r),kr(e||r)[Y])}function u(r,e){zu(fe,Ar(r),kr(e||r)[Y])}function o(r,e){zu(pe,Ar(r),kr(e||r)[Y])}function f(r,e){zu(pe,Ar(r),e)}r("atom"),r("insert"),r("length"),r("reverse"),r("tostring"),r("tuple"),r("typeof"),e("member",Nr("member",function(r,e){return Wu(e,r)},Q,!0)),e("toarray",Nr("toarray",function(r){return ra(fe,r)},Q,!0)),e("within",Nr("within",function(r,e){return Cu(e,r)},Q,!0)),n("atom"),n("copyproc"),n("copyann"),n("interned"),n("length"),n("namespace"),n("proc","getproc"),n("putproc"),n("symbol"),n("tostring"),n("typeof"),n("value","car"),t("append","strcat"),t("atom"),t("interned"),t("length"),t("string"),t("tostring"),t("unicode"),t("typeof"),i("atom"),i("even"),i("integer"),i("negate"),i("negative"),i("numeric"),i("length"),i("positive"),i("tofloat"),i("toint"),i("tostring"),i("typeof"),i("unicode"),i("zero"),a("atom"),a("even"),a("float"),a("negate"),a("negative"),a("numeric"),a("length"),a("positive"),a("tofloat"),a("toint"),a("tostring"),a("typeof"),a("zero"),u("atom"),u("tostring"),u("totuple"),u("typeof"),o("atom"),o("typeof"),f("tostring",Nr("tostring",function(r){return r[0]===w?r[P]:fr},Q,!0)),f("length",Nr("length",function(r){var e;return r[0]===w&&0<=(e=gr.indexOf(r))?Ia(gr[e][ar].length):fr},Q,!0)),f("symbols",Nr("symbols",function(r){if(r[0]===w&&0<=(e=gr.indexOf(r))){var e=gr[e][ar].slice();return e[Hi]=Yi,Ir(e)}return fr},Q,!0)),f("index",Nr("index",function(r){var e;return r[0]===w&&0<=(e=gr.indexOf(r))?ra(va(gr[e][ur]),fr):fr},Q,!0)),f("lookup",Nr("lookup",function(r,e){var n,e=Vu(e);if(r[0]===w&&0<=(n=gr.indexOf(r))){e=gr[n][ur][e],e=gr[n][ar][e];if(e)return e}return fr},Q,!0))}function No(){for(var r in s)s.hasOwnProperty(r)&&Sr(r,va(s[r]))}function jo(){A.hasOwnProperty("init-load")&&A["init-load"]()}$t(),Oo(),So(),No(),this.Process=function(r,e,n){try{return n=n||"false",0<r.length&&(Ta(),io.SetText(r),e&&ao.WriteString("\r")),Ft()||($t(),Mt(Mr(["loop",["catch",[["driver",n]],[[["equal","exception","driver"]]],"false"]])),n="false"),kt=0,qt(!1),Ft()}catch(r){return Xi(qi,"Naan internal error (101): "+r.toString()),!1}},this.GetOutput=function(){return ao.TakeText()},this.SetInput=function(r,e){io.WriteString(r),e&&io.SetEOF()},this.RunOutput=function(){try{return kt=0,qt(!1),ao.TakeText()}catch(r){return Xi(qi,"Naan internal error (102): "+r.toString()),null}},this.Run=function(){try{return kt=0,qt(!1),Ft()}catch(r){return Xi(qi,"Naan internal error (103): "+r.toString()),!1}},this.Escape=function(){try{return Ta(),io.ScanReset(),io.SetText(""),ao.TakeText(),yi(Mr(["internal","escape"])),!1}catch(r){return Xi(qi,"Naan internal error (104): "+r.toString()),null}},this.Banner=function(){return ao.WriteString("\rWelcome to Naan v1.6.0+1\n"),!0},this.StateSave=function(r){r=ho(r);return"string"==typeof r&&r},this.StateLoad=function(r){try{return bo(JSON.parse(r))!==fr}catch(r){return Xi(qi,"Naan StateLoad failed: "+r.toString()),!1}},this.StateDefault=function(){return jo(),!0},this.On=function(r,e){e?A[r]=e:delete A[r]},this.Signal=function(){Ta()},this.Status=Xt,this._InheritNamespace=function(r){for(var e=vr,n=0;n<gr.length;++n){var t,i=gr[n];if(Tr(i[P])==r){vr.indexOf(i)<0&&(t=vr.shift(),vr.unshift(i),t&&vr.unshift(t));break}}return e},this._SetNamespace=function(r,e){var n,t=vr;return"string"==typeof r?R(Er(hr(Ar(r)),d(vr)),!0):X(r)?(n=vr[0],vr=r,!e&&vr.indexOf(n)<0&&vr.push(n)):Xi(qi,"_SetNamespace: invalid argument: "+r),t},this._AddNamedObject=function(r,e){if("string"!=typeof r||0===r.length||"object"!=typeof e)return!1;e=Ir(e);return je(r)[1]=e,!0},this._SetValue=function(r,e){if("string"!=typeof r||0===r.length)return!1;e=e===B?je(r):Sr(r,$r(e));return e!==fr},this._AddSymbolWithTarget=function(r,e){if("string"!=typeof r||0===r.length)return!1;if("string"!=typeof e||0===e.length)return!1;var n=kr(e);return n===fr&&(n=je(e)),je(r),Sr(r,n)!==fr},this._AddPropertyList=function(r,e){return"string"==typeof r&&0!==r.length&&("object"==typeof e&&function(r,e){var n,t=$r(r);if(t===fr)return fr;for(n=0;n<e.length;++n){var i=e[n];if("object"!=typeof i)return fr;if(!(i.length<2)){var a=i[0];if("string"!=typeof a)return fr;zu(t,$r(a),$r(i[1]))}}return t}(r,e)[rr])},this._SetBindingList=function(r,e){if("string"!=typeof r||0===r.length)return!1;if("object"!=typeof e)return!1;e="string"==typeof(e=Te(e=$r(e),vr[0]))?(Xi(qi,"can't create closure: "+e),fr):e;return e!==fr&&(Pr(r,e),!0)},this._CopyBinding=function(r,e){if("string"!=typeof r||0===r.length)return!1;if("string"!=typeof e||0===e.length)return!1;r=kr(r);return r!==fr&&(Pr(e,r[Y]),!0)},this._Execute=function(r){if("object"!=typeof r)return!1;var e=$r(r);if(e===fr)return!1;r=wt;wt=-1;e=ba((Mt(e),qt(!(kt=0)),Ae));return wt=r,e},this._Export=function(r,e){if(!re)return!1;if("string"!=typeof e||0===e.length)return!1;var n=kr(e);return n!==fr&&(xo(r,e,n),!0)},this._Import=function(r,e,n){if(!re)return!1;if(e===B){var t=re[S][j][r];if(t===B)return!1;for(var i=Object.getOwnPropertyNames(t[j]),a=0;a<i.length;++a)this._Import(r,i[a]);return!0}if("string"!=typeof e||0===e.length)return!1;if(n===B)n=e;else if("string"!=typeof n||0===n.length)return!1;var u,t=vr.indexOf(cr);0<=t&&vr.splice(t,1);try{u=re[S][j][r][j][e]}catch(r){u=!1}return!!u&&(Pr(n,u[Y]),!0)}}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
35
35
 
36
36
  /* Copyright (c) 2017-2024 by Zulch Laboratories, Inc. */
37
37
  !function(St){St.NaanChannel=function(t,e){"use strict";var r,s,o,a,u,n,c=t,i=new(St.LeemonBigIntegerLib?St:require("./bigint.js")).LeemonBigIntegerLib,h="",f=!1,d=0,l=!1,g=0,v=10,T=[],x=null,S=!1,b=[],k="\n!@^&*()+-={}[]|\\:;'<>?,./~`%",m="0123456789",C="0123456789abcdefghijklmnopqrstuvwxyz",O="bfnrt",L="\b\f\n\r\t",I=1e3,p=!1,w=new Array("::","++","--","~=","..",">>","<<","==","!=","<=",">=","%=","/.",".*","+=","-=","*=","/=","&=","|=","^=","||","&&","^^","**","@*","@=","@[","->","=>",";;",";>","$$",":=","$$$","===","!==","...","..<","<=>","<<=",">>=");function R(t){T.push(t),--d}e&&e.Line&&(g=e.Line),e&&e.Column&&(d=e.Column),this.Reset=function(){h="",l=f=!1,g=d=0,v=10,T=[],x=null,I=1e3,this.ScanReset()},this.SetHTML=function(t){p=t},this.Radix=function(){return v},this.SetRadix=function(t){var e=v;return v=t,e},this.NSinfix="::",this.IsBreak=function(t){return"\\"!=t&&0<=k.indexOf(t)},this.QuoteString=function(t){for(var e,n='"',i=0;i<t.length;++i){if("\\"==(e=t.substring(i,i+1))||'"'==e)n+="\\";else{if(0<=(r=L.indexOf(e))){n+="\\"+O.substring(r,r+1);continue}if(e.charCodeAt(0)<32){var r=e.charCodeAt(0).toString(16).toLowerCase();0===r.length?r="00":1==r.length&&(r="0"+r),n+="\\u00"+r;continue}}n+=e}return n+'"'},this.QuoteSymbol=function(t){var e=!1,n=!1;if(1<t.length){if(0<=w.indexOf(t))return t;for(var i,r="",s=0;s<t.length;++s)"#"==(i=t.substring(s,s+1))?(n&&(r+="\\"),n=!(e=!0)):e?n=e=!1:(" "==i||"\\"==i||'"'==i||0<=k.indexOf(i))&&(r+="\\",n=!0),r+=i;return r}return"\\"==t.charAt(0)||'"'==t.charAt(0)?"\\"+t.charAt(0):t},this.IntToString=function(t,e,n){if(e)return"0x"+i.bigInt2str(t,16).toLowerCase();n=n||v;e="";i.negative(t)&&(t=i.negate(t),e="-");n=i.bigInt2str(t,n).toLowerCase();return m.indexOf(n.substring(0,1))<0&&(e+="0"),e+n},this.FloatToString=function(t,e){e=t.toString(e);return!isNaN(t)&&isFinite(t)&&e.indexOf(".")<0&&e.indexOf("e")<0?e+".0":e},this.ListQuote=function(t){return"("==t||")"==t||","==t||"`"==t||"."==t?"`"+t:t},this.DottedPairToString=function(t,e){return this.ListQuote(t)+" . "+this.ListQuote(e)},this.ListToString=function(t){for(var e="(",n=0;n<t.length;++n)1<e.length&&(e+=" "),e+=this.ListQuote(t[n]);return e+=")"},this.EOF=function(){return 0===h.length&&f},this.SetEOF=function(){f||(f=!0,c.Signal(this))},this.Full=function(){return I&&h.length>I},this.SetWriteLimit=function(t){I="number"==typeof t?t:1e3},this.WriteString=function(t){var e,n,i=0===h.length;if(p)for(n=0;n<t.length;++n)"\n"===(e=t.substring(n,n+1))?(h+="<br>",d=0,++g):(h+=e,++d);else for(h+=t,n=0;n<t.length;++n)"\n"===(e=t.substring(n,n+1))?(d=0,++g):"\r"===e?d=0:++d;i&&c.Signal(this)},this.TextAvail=function(){return h.length},this.TakeText=function(){var t=h,e=this.Full();return h="",e&&c.Signal(),t},this.SetText=function(t){h=t,S&&c.Signal(this)},this.AddText=function(t){f=!1,h+=t,S&&c.Signal(this)},this.ReadChar=function(){var t;if(0<T.length)++d,t=T.pop();else{if(S=0===h.length)return null;if(t=h.substring(0,1),h=h.substring(1),"\r"==t||"\n"==t){if("\r"==x&&"\n"==t)return x=t,this.ReadChar();d=0,l=!(t="\n"),++g}else!l&&t.trim()&&(l=d),++d}return x=t},this.UnreadChar=function(t){R(t)},this.ReadReady=function(){var t=h.length;return t+=T.length},this.LastChar=function(t){return T.slice(-1)[0]},this.Line=function(){return g},this.Column=function(){return d},this.CommentLoc=function(){return b};this.Save=function(){var t={magic:"NaanIO_1.0"};return t.text=h,t.inputEOF=f,t.column=d,t.lineIndent=l,t.line=g,t.radix=v,t.scanLast=T,t.lastread=x,t.scanState=r,t.scanSkipQuote=s,t.token=o,t.codeString=a,t.nofloat=u,t.commentLoc=b,t.tokenStart=n,t},this.Load=function(t){return t.version!=kMagic?(Reset(),!1):(h=t.text,f=t.inputEOF,d=t.column,l=t.lineIndent,g=t.line,v=t.radix,T=t.scanLast,x=t.lastread,r=sstate.scanState,s=t.scanSkipQuote,o=t.token,a=t.codeString,u=t.nofloat,b=t.commentLoc,n=t.tokenStart,!0)};var A=34,F=39,y=42,N=47,Q=92,$=32,E=13,B=10,H=9,j=117,q=120,M=120,W=46,z=43,D=45,P=101,U=69,_=35,G=0,J=1,K=2,V=3,X=4,Y=5,Z=6,tt=7,et=8,nt=9,it=10,rt=11,st=12,ot=13,at=14,ut=15,ct=16,ht=17,ft=18,dt=19,lt=20,gt=21,vt=22,Tt=23,xt=24;this.ScanReset=function(){r=G,a=o="",u=!(T=[])},this.ScanReset(),this.kTTSymbol=1,this.kTTInteger=2,this.kTTHexInteger=3,this.kTTString=4,this.kTTComment=5,this.kTTCommentLine=6,this.kTTFloat=7,this.kTTNewline=8,this.ReadToken=function(){for(var t=null;;){if(r==G&&0===o.length&&(n={line:g,column:d}),null===(e=this.ReadChar())&&0===o.length)return null;if(null===e&&!f)return null;if(null===e||function(t){var e,n,i=t.charCodeAt(0);switch(i==E&&(i=B),r){case G:switch(i){case $:case H:return u=!1,0<o.length?1:void 0;case B:return u=!1,0===o.length?o="\n":R(t),1;case N:return 0<o.length?(R(t),1):(r=K,void(o=t));case Q:return void(r=Z);case A:return r=nt,void(s=l);case F:return void(r=ot);case _:return o+=t,void(r=et);case D:if(u&&0===o.length)return o=t,void(r=xt)}return 0<=k.indexOf(t)?0===o.length?(o=t,void(r=J)):(R(t),1):(0===o.length&&0<=m.indexOf(t)&&(r=ht),void(o+=t));case K:if(i==N)return r=Y,o+=t,void(b=[g,d-2]);if(i==y)return r=V,o+=t,void(b=[g,d-2]);r=J;case J:return 0<=w.indexOf(o+t)?void(o+=t):(R(t),1);case V:return o+=t,void(i==y&&(r=X));case X:return(o+=t,i==N)?1:void(i!=y&&(r=V));case Y:return i==B?1:void(o+=t);case Z:return i==B?void(r=G):0<=(e=O.indexOf(t))?(o+=L.substring(e,e+1),void(r=G)):(o+=t,void(r=i==_?et:tt));case tt:if(i==Q)r=Z;else{if(0<=k.indexOf(t)||i==$||i==H||i==B)return R(t),r=G,1;o+=t,r=G}return;case et:return o+=t,void(r=0<=k.indexOf(t)?tt:G);case xt:if("0"==t)return r=G,R(t),1;if(0<=m.indexOf(t))r=ht;else{if(!(0<=w.indexOf(o+t)))return r=G,R(t),1;r=J}return void(o+=t);case nt:return i==Q?void(r=it):i==A||(0===d&&i===B||!(d<=s)||t.trim())&&void(o+=t);case it:return i==q?(r=rt,void(a="")):i==j?(r=st,void(a="")):(0<=(e=O.indexOf(t))?o+=L.substring(e,e+1):o+=t,void(r=nt));case rt:return void(2<=(a+=t).length&&(o+=String.fromCharCode(parseInt(a,16)),r=nt));case st:return void(4<=(a+=t).length&&(o+=String.fromCharCode(parseInt(a,16)),r=nt));case ot:return i==Q?void(r=at):i==F||void(o+=t);case at:return i==q?(r=ut,void(a="")):i==j?(r=ct,void(a="")):(0<=(e=O.indexOf(t))?o+=L.substring(e,e+1):o+=t,void(r=ot));case ut:return void(2<=(a+=t).length&&(o+=String.fromCharCode(parseInt(a,16)),r=ot));case ct:return void(4<=(a+=t).length&&(o+=String.fromCharCode(parseInt(a,16)),r=ot));case ht:if(m.indexOf(t)<0)if(i==W){if(u)return R(t),1;r=lt}else if(i==P||i==U)r=vt;else if(0<=(n=C.indexOf(t.toLowerCase()))&&n<v)r=ft;else{if("0"!=o||i!=M)return R(t),1;r=dt}return void(o+=t);case ft:return(n=C.indexOf(t.toLowerCase()))<0||v<=n?(R(t),1):void(o+=t);case dt:return(n=C.indexOf(t.toLowerCase()))<0||16<=n?(R(t),1):void(o+=t);case lt:return m.indexOf(t)<0?(r=ht,R(t),R("."),1):(o+=t,void(r=gt));case gt:if(m.indexOf(t)<0){if(i!=P&&i!=U)return R(t),1;r=vt}return void(o+=t);case vt:return(r=Tt,m.indexOf(t)<0&&i!=z&&i!=D)?(R(t),1):void(o+=t);case Tt:return m.indexOf(t)<0?(R(t),1):void(o+=t)}}(e)){switch(r){case J:case G:case K:u="."==o,t="\n"==o?this.kTTNewline:this.kTTSymbol;break;case ht:case ft:o=o.charCodeAt(0)==D?i.negate(i.str2bigInt(o.substring(1),v,1)):i.str2bigInt(o,v,1),t=this.kTTInteger;break;case dt:o=i.str2bigInt(o.substring(2),16,1),t=this.kTTHexInteger;break;case nt:case ot:t=this.kTTString;break;case V:if(!f)return null;t=!1;break;case X:t=this.kTTComment;break;case Y:t=this.kTTCommentLine;break;case lt:case gt:case vt:case Tt:t=this.kTTFloat;break;default:t=!1}r=G;var e={token:o,type:t,loc:n};return o="",e}}}}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
38
38
 
39
39
  /* Copyright (c) 2017-2024 by Zulch Laboratories, Inc. */
40
- !function(e){e.BootLingo=function(e){"use strict";var t=e._SetNamespace("Lib");e._CopyBinding("equal","=="),e._CopyBinding("setq","="),e._CopyBinding("and","&&"),e._CopyBinding("or","||"),e._CopyBinding("loop","while"),e._Import("number","difference","-"),e._Import("number","greater",">"),e._Import("number","lesser","<"),e._Import("number","times","*"),e._Import("number","plus","+"),e._Import("number","quotient","/"),e._Import("number","quotient","/."),e._Import("number","mod","%"),e._SetValue("echo",[]),e._SetValue("err",[]),e._SetValue("rdsDriver"),e._SetBindingList("^",["macro","^",["ex1","ex2"],["list",["`","^"],"ex1","ex2"]]),e._SetBindingList("!",["macro","!",["ex1"],["list",["`","!"],"ex1"]]),e._SetBindingList("~",["macro","~",["ex1"],["list",["`","~"],"ex1"]]),e._SetBindingList("~=",["macro","~=",["ex1","ex2"],["list",["`","~="],"ex1","ex2"]]),e._SetBindingList("#[",["macro","#[",["ex1","ex2"],["list",["`","#["],"ex1","ex2"]]),e._SetBindingList("dereflist",["macro","dereflist","x",["cons","dereflist","x"]]),e._SetBindingList("!=",["function","!=",["ex1","ex2"],["not",["equal","ex1","ex2"]]]),e._SetBindingList(">=",["function",">=",["ex1","ex2"],["or",["greater","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("<=",["function","<=",["ex1","ex2"],["or",["lesser","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("\\.*",["function","\\.*",["expr"],["keys","expr"]]),e._SetBindingList("@",["macro","@",["sym","write"],["=","sym",["eval","sym"]],[[["eval","write"],["put","sym"]]],["cdr","sym"]]),e._SetBindingList("@*",["function","@*",["sym"],["keys",["cdr","sym"]]]),e._SetBindingList("!==",["function","!==",["ex1","ex2"],["not",["eq","ex1","ex2"]]]),e._SetBindingList("<=>",["function","<=>",["ex1","ex2"],[["not",["||","ex1","ex2"]],0],[["||",["<","ex1","ex2"],["not","ex2"]],-1],[["||",[">","ex1","ex2"],["not","ex1"]],1],0]),e._SetBindingList("\\..",["macro","\\..",["ex1","ex2"],["list",["`","\\.."],"ex1","ex2"]]),e._SetBindingList("\\..<",["macro","\\..<",["ex1","ex2"],["list",["`","\\..<"],"ex1","ex2"]]),e._SetBindingList("subat",["function","subat",["tree","reps","false","map","pair"],["global"],["=","map",{dictionary:{}}],[[["&&",["not",["tuple","reps"]],["not",["array","reps"]]],["return","tree"]]],[[["&&",["not",["tuple",[".","reps",0]]],["not",["array",[".","reps",0]]]],["=","reps",{array:["reps"]}]]],["for",["let","lambda",["iter"],["=","iter",["iterate","reps",["`","pair"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","pair",[".","iter","$value"]],["set[","map",[".","pair",0],"pair"]]]],["function","sarray",["items","false","out","item"],["=","out",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","items",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],[".","out","push",[["recur","item"]]]]]],"out"],["function","sdict",["items","false","out","key","data"],["=","out",{dictionary:{}}],["for",["let","lambda",["iter"],["=","iter",["iterate","items",["`",["key","data"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["key","data"],[".","iter","$value"]],[[["deref","map","key"],["=","key",[".",["deref","map","key"],1]]]],["set[","out","key",["recur","data"]]]]],"out"],["call",["function","recur",["sub","false","make"],[["tuple","sub"],["while","false",[["not",["not",["empty","sub"]]]],["push",["recur",["pop","sub"]],"make"]],["reverse","make"]],[["array","sub"],["sarray","sub"]],[["dictionary","sub"],["sdict","sub"]],[["&&",["deref","map","sub"],["==",["typeof","sub"],["typeof",[".",["deref","map","sub"],0]]]],[".",["deref","map","sub"],1]],"sub"],"tree"]]),e._SetBindingList("subatq",["macro","subatq",["tree","reps"],["subat","tree",["eval","reps"]]]),e._SetBindingList("prepad",["function","prepad",["value","length","padstr"],[[["not","padstr"],["=","padstr","$ "]]],["=","value",["tostring","value"]],[".",["strcat",[".","padstr","repeat",["length"]],"value"],"slice",[["-","length"]]]]),e._SetBindingList("postpad",["function","postpad",["value","length","padstr"],[[["not","padstr"],["=","padstr","$ "]]],["=","value",["tostring","value"]],[".",["strcat","value",[".","padstr","repeat",["length"]]],"slice",[0,"length"]]]),e._SetBindingList("map",["function","map",["targex","func","false","result","item","keylist"],[["array","targex"],["arraycall","targex","map","func"]],[["or",["dictionary","targex"],["xobject","targex"]],["=","result",["new","dictionary"]],["=","keylist",["keys","targex"]],["for",["let","lambda",["iter"],["=","iter",["iterate","keylist",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["xset","result","item",["call","func",["deref","targex","item"],"item","targex"]]]]],"result"],[["atom","targex"],"false"],["for",["let","lambda",["iter"],["=","iter",["iterate","targex",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","result",["cons",["call","func","item",["length","result"],"targex"],"result"]]]]],["reverse","result"]]),e._SetBindingList("iterate",["function","iterate",["target","varsym","false","iterdict","keysym"],[[["not",["||",["symbol","varsym"],["tuple","varsym"]]],["throw",["list","internal",["strcat","$iteration variable invalid: ","varsym"]]]]],["=","iterdict",{dictionary:{$target:"target",$final:"final_value"}}],["function","final_value",["dict"],"dict"],[[["tuple","target"],["=","keysym",["car","target"]],[[["&&",["symbol","keysym"],["deref",["@","keysym"],["`","\\.iterate"]]],["return",["call",["deref",["@","target"],["`","\\.iterate"]],"target","varsym"]]],[["&&",["symbol","keysym"],["deref",["@","iterate"],"keysym"]],["return",["call",["deref",["@","iterate"],"keysym"],"target","varsym"]]]],["set.","iterdict",["`","traverse"],"target"],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","last"],["-",["length","target"],1]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"tuple_next_value"]],["set.","iterdict",["`","next"],"tuple_next"]],["function","tuple_next_value",["dict"],[["empty",[".","dict","traverse"]],["set.","dict",["`","done"],"true"]],["preadjust",[".","dict","index"],"+",1],["set.","dict",["`","value"],["car",[".","dict","traverse"]]],["set.","dict",["`","traverse"],["cdr",[".","dict","traverse"]]],"false"],["function","tuple_next",["dict"],[["empty",[".","dict","traverse"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["list",["car",[".","dict","traverse"]],["preadjust",[".","dict","index"],"+",1]]],["set.","dict",["`","traverse"],["cdr",[".","dict","traverse"]]],"false"]],[["||",["array","target"],["&&",["xobject","target"],["not",["xkeys","target"]]]],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","last"],["-",[".","target","length"],1]],[[["not",[".","iterdict","last"]],["set.","iterdict",["`","last"],-1]]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"array_next_value"]],["set.","iterdict",["`","next"],"array_next"]],["function","array_next_value",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["deref",[".","dict","target"],["preadjust",[".","dict","index"],"+",1]]],"false"],["function","array_next",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["preadjust",[".","dict","index"],"+",1],["set.","dict",["`","value"],["list",["deref",[".","dict","target"],[".","dict","index"]],[".","dict","index"]]],"false"]],[["&&",["object","target"],[".","target","\\.iterate"]],["return",[".","target","\\.iterate",["target","varsym"]]]],[["||",["dictionary","target"],["object","target"],["xobject","target"]],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","keys"],[".",["keys","target"],"toarray"]],["set.","iterdict",["`","last"],["-",[".",[".","iterdict","keys"],"length"],1]],[[["not",[".","iterdict","last"]],["set.","iterdict",["`","last"],-1]]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"dict_next_key"]],["set.","iterdict",["`","next"],"dict_next"]],["function","dict_next_key",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["deref",[".","dict","keys"],["preadjust",[".","dict","index"],"+",1]]],"false"],["function","dict_next",["dict","false","index"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["=","key",["deref",[".","dict","keys"],["=","index",["preadjust",[".","dict","index"],"+",1]]]],["set.","dict",["`","value"],["list","key",["deref",[".","dict","target"],"key"],"index"]],"false"]],[["not","target"],["set.","iterdict",["`","last"],["set.","iterdict",["`","index"],-1]],["set.","iterdict",["`","next"],"empty_next"],["set.","dict",["`","done"],"true"],["function","empty_next",["dict"],"true"]],["throw",["list","internal",["strcat","$don't know how to iterate ",["typeof","target"]]]]],"iterdict"]),e._SetBindingList("sleep",["closure","sleep",["msec"],["=","msec",["||","msec",0]],[".",["future",["function","sleep","false","true"],"msec"],"wait","false"]]),e._SetBindingList("await",["closure","await",["promise","timeout","false","pending"],[[["not","promise"],["throw",["list","internal","$await on false promise"]]]],["=","pending",["new","nonce"]],[".","promise","then",[["function","success",["value"],[".","pending","signal",[["list","false","value"]]]],["function","failure",["error"],[".","pending","signal",[["list","error"]]]]]],[["identity","timeout"],[".","pending","wait",["timeout",["list",["Error",["strcat","$await timeout after ","timeout","$ msec"]]]]]],[".","pending","wait","false"]]),e._SetBindingList("asyncArray",["closure","asyncArray",["elements","maxActive","worker","false","pending","results"],[[["not",["numeric",[".","elements","length"]]],["return","false"]]],["=","results",{array:[]}],["=","pending",["new","nonce"]],["set.","pending",["`","active"],0],["set.","pending",["`","index"],0],["set.","pending",["`","running"],{array:[]}],["closure","processOne",["index","false","entry"],["preadjust",[".","pending","active"],"+",1],["set[",[".","pending","running"],"index","true"],["=","entry",["deref","elements","index"]],["function","cancel",["result"],["sprint"],["done","index","result"]],["future",["function","coProcess",["false","result"],["catch",[["=","result",["worker","entry","index","cancel"]]],"false",[["sprint"],["done","index","result"]]]],0]],["function","done",["index","result"],[[["deref",[".","pending","running"],"index"],["set[","results","index","result"],["preadjust",[".","pending","active"],"-",1],["set[",[".","pending","running"],"index","false"]]],["doMore"]],["function","doMore","false",[["&&",["==",[".","pending","active"],0],[">=",[".","pending","index"],[".","elements","length"]]],[".","pending","signal",["results"]]],["while","false",[["not",["&&",["<",[".","pending","active"],"maxActive"],["<",[".","pending","index"],[".","elements","length"]]]]],["processOne",["postadjust",[".","pending","index"],"+",1]]]],["doMore"],"pending"]),e._SetBindingList("syncAdapter",["function","syncAdapter","args",["call",["closure","syncWaiter",["proc","arglist","false","pending"],["=","pending",["new","nonce"]],["apply","proc",["reverse",["reverse","arglist"],["list",["function","lambda",["error","data"],[".","pending","signal",[["list","error","data"]]]]]]],[".","pending","wait",["proc"]]],["pop","args"],"args"]]),e._SetBindingList("asyncResult",["closure","asyncResult","args",[".",["future",["function","asyncResultF","false",["apply",["pop","args"],"args"]]],"run","false"]]),e._SetBindingList("jsInstanceOf",["function","jsInstanceOf",["item","constructor"],[["xobject","item","constructor"],["loop","false",[[["not","item"],"false",["break"]],[["eq","item",[".","constructor","prototype"]],["break"]],["=","item",[".",[".","js","o"],"getPrototypeOf",["item"]]]]]]]),e._SetBindingList("jsTypedArray",["function","jsTypedArray",["item"],[[["not",["xobject","jsTypedArrayType"]],[[".","js","w"],["=","jsTypedArrayType",[".",[".","js","o"],"getPrototypeOf",[[".",[".","js","w"],"Uint8Array"]]]]],["=","jsTypedArrayType",[".",[".","js","o"],"getPrototypeOf",[[".",[".","js","g"],"Uint8Array"]]]]]],["||",["jsInstanceOf","item","jsTypedArrayType"],["jsInstanceOf",[".","item","constructor"],"jsTypedArrayType"]]]),e._SetBindingList("makeActivator",["closure","makeActivator",["nslist","false","checkns","targns"],["=","checkns",["nscaller"]],[[["not","nslist"],["=","nslist",["nsactive"]]]],["=","targns",["car","nslist"]],["enclose",["function","lambda","false",[["eq","checkns",["nscaller"]],["nsactive","nslist"]],["throw",[".","$activate ","concat",[[".","nslist","tostring"],"$ needs ",[".","checkns","tostring"],"$ not ",[".",["nscaller"],"tostring"]]]]],"targns"]]),e._SetBindingList("dialect",["function","dialect",["id"],[["identity","id"],[[["==","id",0],["=","id",[".",["dialect"],0]]]],[".",[".",[".","module","exports"],"Registry"],"findName",["id"]]],[".",[".",[".","module","exports"],"Registry"],"dialects","false"]]),e._SetBindingList("RuntimeOperators",["function","RuntimeOperators","false",[".",[".","module","exports"],"operators"]]),e._AddPropertyList("RuntimeLibInit",[["$.lingoInit","true"]]),e._SetBindingList("RuntimeLibInit",["function","RuntimeLibInit",["modname","false","manifest","operlist","runtimelib"],["=","manifest",["`",["=","+","-","*","/","/.","%","<",">","&&","and","||","or","^","!","~","~=","`","#[","dereflist","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","\\..","\\..<","\\...","subat","subatq","prepad","postpad","map","iterate","sleep","await","asyncArray","syncAdapter","asyncResult","jsInstanceOf","jsTypedArray","makeActivator","dialect","RuntimeOperators","RuntimeLibInit"]]],["=","operlist",["`",["=","+","-","*","/","/.","%","<",">","&&","and","||","or","^","!","~","~=","`","#[","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","\\..","\\..<"]]],["=","runtimelib",["`",["dereflist","subat","subatq","prepad","postpad","map","iterate","defproc","defprop","sleep","await","asyncArray","syncAdapter","asyncResult","jsInstanceOf","jsTypedArray","makeActivator","dialect"]]],["function","nsCopyproc",["sym","proc"],[["nsrights","sym"],["copyproc","sym","proc"]],[["!=",[".","sym","proc"],"proc"],["debuglog","$no rights to set sym from proc","sym","proc"]]],[[["symbol","NideBuild"],["nsCopyproc",["`","="],"setq"],["nsCopyproc",["`","+"],"plus"],["nsCopyproc",["`","-"],"difference"],["nsCopyproc",["`","*"],"times"],["nsCopyproc",["`","/"],"quotient"],["nsCopyproc",["`","/."],"quotient"],["nsCopyproc",["`","%"],"mod"],["nsCopyproc",["`","<"],"lesser"],["nsCopyproc",["`",">"],"greater"],["nsCopyproc",["`","&&"],["`","and"]],["nsCopyproc",["`","||"],["`","or"]],["nsCopyproc",["`","while"],["`","loop"]],["nsCopyproc",["`","for"],"call"],["nsCopyproc",["`","=="],"equal"],["nsCopyproc",["`","==="],["`","eq"]],["sudo",["set[",["@","tuple","true"],["`","append"],"append"]],["sudo",["set[",["@","tuple","true"],["`","subat"],"subat"]],["sudo",["set[",["@","tuple","true"],["`","map"],"map"]],["sudo",["set[",["@","array","true"],["`","map"],"map"]]]],[[["not","modname"],["=","modname",[".","module","id"]]]],[".",[".","Naan","module"],"build",["modname","$RuntimeLib",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","subat"],"subat"],["set.",[".","modobj","exports"],["`","subatq"],"subatq"],["set.",[".","modobj","exports"],["`","prepad"],"prepad"],["set.",[".","modobj","exports"],["`","postpad"],"postpad"],["set.",[".","modobj","exports"],["`","map"],"map"],["set.",[".","modobj","exports"],["`","iterate"],"iterate"],["set.",[".","modobj","exports"],["`","operators"],[".",[".","Naan","module"],"export",["operlist"]]],["set.",[".","modobj","exports"],["`","runtimelib"],[".",[".","Naan","module"],"export",["runtimelib"]]],["sudo",["set.","Naan",["`","runtimelib"],[".",[".","modobj","exports"],"runtimelib"]]]]]]]),e._Execute(["RuntimeLibInit","$Lib"]),e._SetBindingList("defproc",["macro","defproc","exlist",["call",["function","lambda",["false","procname"],["=","procname",["caadr","exlist"]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define ",["car","exlist"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","exlist",["enclose","exlist"]],[[["&&",["!=",["getproc","procname"],"exlist"],["getproc","procname"]],["printline","$ ==> redefined: ","procname"]]],["putproc","procname","exlist"],"procname"]]]),e._SetBindingList("defprop",["macro","defprop",["ex1","ex2","ex3","false","fbind","procname"],[["member",["car","ex3"],["`",["function","function&","macro","closure","let","let&"]]],["=","procname",["compress",["list","ex1","ex2"]]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define property ",["car","ex3"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","fbind",["enclose",["cons",["car","ex3"],["cons","procname",["cddr","ex3"]]]]],[[["&&",["get","ex1","ex2"],["!=",["get","ex1","ex2"],"fbind"]],["print","$ ==> redefined: "],["printline","ex1","space","ex2"]]],["putproc","procname","fbind"],["put","ex1","ex2","procname"],"ex1"],[["==",["get","ex1","ex2"],"ex3"],"ex1"],[[["get","ex1","ex2"],["print","$ ==> redefined: "],["printline","ex1","space","ex2"]]],["put","ex1","ex2","ex3"],"ex1"]),e._SetBindingList("DefineLanguage",["closure","DefineLanguage",["langname","grammar","parser","unparser"],["closure","dialect",["name","operators","enterDNS","false","dobj"],["=","dobj",["new","object","this"]],["set.","dobj",["`","ns"],[".",["nsactive"],0]],["set.","dobj",["`","name"],"name"],["set.","dobj",["`","grammar"],["new","grammar"]],["set.","dobj",["`","operators"],"operators"],["set.","dobj",["`","exunparse"],{dictionary:{}}],["set.","dobj",["`","parser"],"parser"],["set.","dobj",["`","unparser"],"unparser"],["set.","dobj",["`","parse"],["function","parse",["source"],[".","dobj","parser",["source",[".","dobj","grammar"],[".","dobj","operators"]]]]],["set.","dobj",["`","parseErrorString"],["function","parseErrorString",["error"],["langParseErrorString","error"]]],["set.","dobj",["`","unparse"],["function","unparse",["expr","options"],[".","dobj","unparser",["expr","options",[".","dobj","grammar"],[".","dobj","exunparse"]]]]],["set.","dobj",["`","print"],["function","print",["expr","options"],[".",[".","dobj","unparser",["expr","options",[".","dobj","grammar"],[".","dobj","exunparse"]]],"string","false"]]],["set.","dobj",["`","defhook"],["function","defhook",["hook","false","returner","newsym"],["=","returner",["makeActivator"]],["enterDNS"],["=","newsym",["compress","hook"]],["copyproc","newsym","hook"],["returner"],"newsym"]],["set.","dobj",["`","defunparse"],["function","defunparse",["sym","proc"],["set[",[".","dobj","exunparse"],"sym","proc"]]],["set.","dobj",["`","redefine"],["function","redefine",["sym","proc","false","returner"],["=","returner",["makeActivator"]],["enterDNS"],["=","sym",["compress","sym"]],[[["tuple","proc"],["putproc","sym","proc"]],["copyproc","sym","proc"]],["returner"],"sym"]],["set.","dobj",["`","defatt"],["function","defatt",["sym","key","value","false","returner"],["=","returner",["makeActivator"]],["enterDNS"],["=","sym",["compress","sym"]],["put","sym","key","value"],["returner"],"sym"]],["set.","dobj",["`","defsym"],["function","defsym",["syms","false","cursyms"],["=","returner",["makeActivator"]],["enterDNS"],[[["atom","syms"],["=","cursyms",["compress","syms"]]],["while","false",[["not",["not",["atom","syms"]]]],["push",["compress",["pop","syms"]],"cursyms"]],["=","cursyms",["reverse","cursyms"]]],["returner"],"cursyms"]],["set.","dobj",["`","require"],["function","drequire",["path","reload","false","returner","result"],["=","returner",["makeActivator"]],["enterDNS"],["=","result",["require","path","options","dobj"]],["returner"],"result"]],["set.","dobj",["`","info"],["function","info","false",{dictionary:{$name:[".","dobj","name"],$grammar:[".","dobj","grammar"],$operators:[".","dobj","operators"],$parser:[".","dobj","parser"],$unparser:[".","dobj","unparser"],$namespace:[".","dobj","ns"]}}]],["set.","dobj",["`","destroy"],["function","destroy","false",[[["not",[".","dobj","module"]],["return","false"]]],[".",[".",[".","module","exports"],"Registry"],"unregister",["dobj"]],[".",[".","dobj","module"],"destroy","false"],["set.","dobj",["`","module"],"false"],"true"]],["set.","dobj",["`","derive"],["function","derive",["diname","operators","false","newdialect"],[[["not","operators"],["=","operators",[".","dobj","operators"]]]],[[[".",[".",[".","module","exports"],"Registry"],"findName",["diname"]],"false"]],["=","newdialect",["initialize","diname","operators"]],["set.","newdialect",["`","parent"],"dobj"],"newdialect"]],"dobj"],["function","initialize",["langname","operators","false","newdialect","dialsym"],[".",[".","Naan","module"],"build",[[".","$Lang_","concat",["langname"]],"$RuntimeLib",["function","lambda",["modobj","compobj","false","locops"],[".",[".","Naan","module"],"letimport",["operators"]],["=","dialsym",["compress","$Dialect"]],["=","locops",{dictionary:{}}],["for",["let","lambda",["iter"],["=","iter",["iterate","operators",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["set[","locops","key",["compress","key"]]]]],["set[","locops","dialsym","dialsym"],["=","newdialect",["dialect","langname","locops",["makeActivator"]]],["set.","newdialect",["`","module"],"modobj"],["call",["closure","lambda",["dialect"],["putproc","dialsym",["function","lambda","false","dialect"]]],"newdialect"],["assign","dialsym","newdialect"]]]],[".",[".",[".","module","exports"],"Registry"],"register",["langname","newdialect"]],"newdialect"],["initialize","langname",["RuntimeOperators"]]]),e._SetBindingList("Registry",["closure","Registry",["false","registry"],["=","registry",["new","object","this"]],["set.","registry",["`","languages"],{array:[]}],["set.","registry",["`","register"],["function","register",["name","dobj","false","lang"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["==",[".","lang","name"],"name"],["set.","lang",["`","dialect"],"dobj"],["return"]]]]]],[".",[".","registry","languages"],"push",[{dictionary:{$name:"name",$dialect:"dobj"}}]]]],["set.","registry",["`","unregister"],["function","unregister",["dobj"],["set.","registry",["`","languages"],[".",[".","registry","languages"],"filter",[["function","lambda",["item"],["!==",[".","item","dialect"],"dobj"]]]]],"true"]],["set.","registry",["`","findName"],["function","findName",["name","false","lang"],["=","name",["tostring","name"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["==",[".","lang","name"],"name"],["return",[".","lang","dialect"]]]]]]],"false"]],["set.","registry",["`","findNamespace"],["function","findNamespace",["ns","false","lang"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["===",[".",[".","lang","dialect"],"ns"],"ns"],["return",[".","lang","dialect"]]]]]]],"false"]],["set.","registry",["`","dialects"],["function","dialects","false",[".",[".",[".","registry","languages"],"map",[["function","lambda",["item"],[".","item","name"]]]],"totuple"]]],"registry"]),e._SetBindingList("ParsEnvironment",["closure","ParsEnvironment",["dialect","envName","false","penv","gohome","localnaan"],[[["not","envName"],["=","envName","$Parsenv"]]],["=","penv",["new","object","this"]],["=","gohome",["makeActivator"]],[[["||",["not",[".","dialect","parser"]],["not",[".","dialect","unparser"]]],["return","false"]]],["set.","penv",["`","ns"],["new","namespace","envName"]],[[["not",[".","penv","ns"]],["return","false"]]],["nsactive",["cons",[".","penv","ns"],[".",["nsactive"],-2]]],["set.","penv",["`","gons"],["makeActivator"]],["set.","penv",["`","saves"],{dictionary:{$exception:[".",["`","exception"],"proc"],$require:[".",["`","require"],"proc"],$sudo:[".",["`","sudo"],"proc"],$naan:"Naan"}}],["set.","penv",["`","locals"],["letlocal","Naan","require","sudo"]],["=","localnaan",[".",[".","penv","locals"],0]],["assign","localnaan",["new",[".",[".","penv","saves"],"naan"]]],["set.",[".","localnaan","module"],["`","require"],"false"],["set.",[".","localnaan","module"],["`","sudo"],"false"],["putproc",[".",[".","penv","locals"],1],"false"],["putproc",[".",[".","penv","locals"],2],"false"],["set.",[".","localnaan","module"],["`","require"],"false"],["set.",[".","localnaan","module"],["`","sudo"],"false"],["gohome"],["function","evalgo","false",[".","penv","gons","false"]],["function","evalhome","false",["gohome"]],["set.","penv",["`","eval"],["closure","evalf",["expr","false","result"],["evalgo"],["catch",[["=","result",["eval","expr"]]],[[["identity","true"],["=","result","exception"]]],[["evalhome"]]],"result"]],["set.","penv",["`","evalq"],["macro","evalq",["expr"],["evalf","expr"]]],["set.","penv",["`","parse"],["function","parse",["text","options","false","output","source","xchan","errors","error","expr","saves","errtext","row","lastrow","outext"],["=","output",{dictionary:{$errors:{array:[]},$annotations:{array:[]},$text:{array:[]},$exprs:{array:[]},$results:{array:[]}}}],["=","source",["new","textstream","text",["`","string"]]],["=","xchan",["textstreams",["list","source","source"]]],["catch",[[".","penv","gons","false"],["loop","false",["catch",[[".",[".","penv","saves"],"sudo",[["putproc",["`","exception"],"false"]]],["=",["errors","expr"],[".","dialect","parse",["source"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","errors",["`","error"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","error",[".","iter","$value"]],["=","errtext",["langParseErrorString","error"]],["=","row",[".",[".","error","at"],0]],[[["!=","row","lastrow"],[".",[".","output","$annotations"],"push",[{dictionary:{$row:"row",$column:[".",[".","error","at"],1],$text:"errtext",$type:"$error"}}]],["=","lastrow","row"]]],[".",[".","output","errors"],"push",["errtext"]]]]],[[["identity","expr"],[".",[".","output","exprs"],"push",["expr"]],["=","expr",["call",["function","lambda","false",["evalactive","expr"]]]],[".",[".","output","results"],"push",["expr"]],[[".","options","pretty"],["set.","output",["`","pretty"],{array:[]}],[["==",[".",[".","source","tokenlast","false"],"atom"],["`",";>"]],[".",[".","output","pretty"],"push",[["tostring","expr",{dictionary:{$quote:"true"}}]]]],[["!=",[".",[".","source","tokenlast","false"],"atom"],["`",";;"]],[".",[".","output","pretty"],"push",[[".","dialect","print",["expr"]]]]]]]]],"false",[[".",[".","penv","saves"],"sudo",[["putproc",["`","exception"],[".","saves","exception"]]]]]]]],[[["identity","true"],[["and",["==",["tostring",["car","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]]],[["and",["==",["tostring",["car","exception"]],"$internal"],["string",["second","exception"]]],[".",[".","output","errors"],"push",[["second","exception"]]]],[["ErrorObject","exception"],[".",[".","output","errors"],"push",[[".","$exception: ","concat",[["ErrorString","exception"]]]]]],[".",[".","output","errors"],"push",[[".","$exception: ","concat",["exception"]]]]]],[["gohome"],["textstreams","xchan"],["=","outext",[".",[".","source","taketext","false"],"trim","false"]],[[">",[".","outext","length"],0],["set.","output",["`","text"],["new",[".","outext","split",["$\n"]]]]]]],"output"]],["set.","penv",["`","unparse"],["function","unparse",["false","options","text","sym","didprop","key"],["=","options",{dictionary:{$wrapMaxCol:240}}],["=","text","$"],["for",["let","lambda",["iter"],["=","iter",["iterate",["symlist",[".","penv","ns"]],["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],[[["not",["eq","sym",["car","sym"]]],["=","text",[".","text","concat",["sym","$ = ",["car","sym"],"$;;\n\n"]]]]],["=","didprop","false"],["for",["let","lambda",["iter"],["=","iter",["iterate",["@*","sym"],["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],[[["!=",[".","key","charAt",[0]],"$."],["=","didprop","true"],["=","text",[".","text","concat",["sym","$@","key","$ = ",["deref",["@","sym"],"key"],"$;;\n"]]]]]]]],[[["identity","didprop"],["=","text",[".","text","concat",["$\n"]]]]],[[["eq",[".",[".",[".","sym","proc"],1],"namespace"],[".","penv","ns"]],["=","text",[".","text","concat",[[".","dialect","print",[[".","sym","proc"],"options"]],"$;\n\n"]]]]]]]],"text"]],["set.","penv",["`","destroy"],["function","destroy","false",["set.","penv",["`","ns"],["delete",[".","penv","ns"]]]]],"penv"]),e._AddPropertyList("LanguagesInit",[["$.lingoInit","true"]]),e._SetBindingList("LanguagesInit",["function","LanguagesInit",["false","manifest"],["=","manifest",["`",["defproc","defprop","DefineLanguage","Registry","ParsEnvironment","LanguagesInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$Languages",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DefineLanguage"],"DefineLanguage"],["set.",[".","modobj","exports"],["`","ParsEnvironment"],"ParsEnvironment"],["set.",[".","modobj","exports"],["`","Registry"],["Registry"]]]]]]),e._Execute(["LanguagesInit"]),e._SetBindingList("langParser",["function&","langParser",["source","lang","operators","false","result"],["catch",[["=","langErrors",{array:[]}],["=","result",["langParse1",["tokenread"],0]],[[["==",[".","langErrors","length"],0],["=","result",["langStrip","result","operators"]]]],[[["&&",["==",[".","langErrors","length"],0],"tokenlast",["!=",[".","tokenlast","atom"],"cr"],["not",["atTerminator"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$operator missing"}}]]],[["!=",[".","langErrors","length"],0],[".","source","comments","false"],["while","false",[["not",["not",["atTerminator"]]]],["tokenread"]]]],[[["!=",[".","langErrors","length"],0]]],"false"],[["!=",[".","langErrors","length"],0],["list","langErrors"]],["list","false","result"]]),e._SetBindingList("recurParse",["function","recurParse",["text","sloc"],["call",["function&","recurParse1",["source","false","result"],["catch",[["=","result",["langParse1",["tokenread"],0]],[["&&",["==",[".","langErrors","length"],0],"tokenlast",["!=",[".","tokenlast","atom"],"cr"],["not",["atTerminator"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$operator missing"}}]]],[[["identity","true"],"false"]],"false"],"result"],["new","textstream","text","sloc"]]]),e._SetBindingList("langParseErrorString",["function","langParseErrorString",["error","false","output"],[[[".","error","memo"],["=","output",[".","error","memo"]]],["=","output","$parse error"]],[[[".","error","at"],["=","output",[".","output","concat",["$ at (",["+",[".",[".","error","at"],0],1],"$, ",["+",[".",[".","error","at"],1],1],"$)"]]]]],[[[".","error","found"],["=","output",[".","output","concat",["$ found ",[".","error","found"]]]]]],[[[".","error","expected"],["=","output",[".","output","concat",["$ expected ",[".","error","expected"]]]]]],[[["||",[".","error","start"],[".","error","startat"]],["=","output",[".","output","concat",["$ starting"]]],[[["&&",[".","error","start"],["!=",[".","error","start"],"$\n"]],["=","output",[".","output","concat",["$ with ",[".","error","start"]]]]]],[[".","error","startat"],["=","output",[".","output","concat",["$ at (",["+",[".",[".","error","startat"],0],1],"$, ",["+",[".",[".","error","startat"],1],1],"$)"]]]]]],[".","output","replace",[["RegExp","$\n","$g"],"$␍"]]]),e._SetBindingList("tokenread",["function","tokenread","false",["=","tokenlast",[".","source","tokenread","false"]]]),e._SetBindingList("tokenpush",["function","tokenpush",["token"],["=","tokenlast",[".","source","tokenpush",["token"]]]]),e._SetBindingList("tokenmatch",["function","tokenmatch",["pattern","false","result"],["=","result",[".","source","tokenmatch",["pattern"]]],["=","tokenlast",[".","source","tokenlast","false"]],"result"]),e._SetBindingList("tokenpass",["function","tokenpass",["pattern"],["=","tokenlast",[".","source","tokenpass",["pattern"]]]]),e._SetBindingList("passNewline",["function","passNewline",["testeof"],["=","tokenlast",[".","source","tokenpass",["cr","testeof"]]]]),e._SetBindingList("atTerminator",["function","atTerminator","false",["tokenmatch",["`",[";",";;",";>"]]]]),e._SetBindingList("atDelimiter",["function","atDelimiter","false",["tokenmatch",["`",[";",";;",";>",")",",","}","]"]]]]),e._SetBindingList("langPassSeparator",["function","langPassSeparator","false",["=","tokenlast",[".","source","tokenpass",[["list","cr","comma"]]]]]),e._SetBindingList("langAtSeparator",["function","langAtSeparator","false",["or",["==",[".","tokenlast","atom"],"cr"],["==",[".","tokenlast","atom"],"comma"]]]),e._SetBindingList("langExprLoc",["function","langExprLoc",["expr"],[["dictionary","expr"],[".","expr","loc"]],[["atom","expr"],"false"],[["langExprLoc",["car","expr"]]],["langExprLoc",["cdr","expr"]]]),e._SetBindingList("langConsSym",["function","langConsSym",["sym","expr","exlist"],[[["tuple","sym"],["debuglog","$langConsSym warning - non-atomic token","sym"]]],["cons",{dictionary:{$atom:"sym",$loc:["langExprLoc","expr"]}},"exlist"]]),e._SetBindingList("langEnlistSym",["function","langEnlistSym","exlist",[[["tuple",["car","exlist"]],["debuglog","$langEnlistSym warning - non-atomic token",["car","exlist"]]]],["cons",{dictionary:{$atom:["car","exlist"],$loc:["langExprLoc",["second","exlist"]]}},["cddr","exlist"]]]),e._SetBindingList("langSyntax",["function","langSyntax",["expr","startoken","dict"],["=","dict",["new","dict"]],[[["identity","expr"],["set.","dict",["`","at"],["langExprLoc","expr"]],[["dictionary","expr"],["set.","dict",["`","found"],[".","expr","atom"]]]]],[[["identity","startoken"],["set.","dict",["`","start"],[".","startoken","atom"]],["set.","dict",["`","startat"],[".","startoken","loc"]]]],[".","langErrors","push",["dict"]],"false"]),e._SetBindingList("langDebuglog",["function","langDebuglog","args",["function","convlist",["expr"],[["defined","expr","atom"],[".","expr","atom"]],[["atom","expr"],"expr"],["cons",["convlist",["car","expr"]],["convlist",["cdr","expr"]]]],["call",["function","lambda",["args","false","arg","exlist"],["loop","false",[["empty","args"]],["=","arg",["pop","args"]],[[["eq","arg","`"],["push",["pop","args"],"exlist"]],["push",["convlist","arg"],"exlist"]]],["apply",[".",[".","Naan","debug"],"debuglog"],["reverse","exlist"]]],"args"]]),e._SetBindingList("langCleanup",["function","langCleanup",["tree","false","blocknest","inloop"],["function","debugCleanup","args",[["identity","false"],["apply","langDebuglog","args"]]],["function","inbody",["xbody"],[["atom","xbody"],"xbody"],["debugCleanup","$inbody:","xbody"],[[["and","inloop",["<=","blocknest",1]]],[["and",["not",["atom",["car","xbody"]]],["not",["atom",["caar","xbody"]]],["not",["atom",["caaar","xbody"]]]],["debugCleanup","$testing hoist in body:","xbody"],["=","xbody",["hoist","xbody"]]]],["cons",["inbodyitem",["car","xbody"]],["inbody",["cdr","xbody"]]]],["function","inbodyitem",["expr","false","sym"],["debugCleanup","$inbodyitem:","expr"],[["atom","expr"],"expr"],["=","sym",["car","expr"]],[["atom","sym"],["incall","expr"]],[["atom",["car","sym"]],["inwhen","expr"]],["inblock","expr","blocknest"]],["function","ineval",["expr"],[["atom","expr"],"expr"],[["atom",["car","expr"]],["incall","expr"]],["cons",["ineval",["car","expr"]],["inevalist",["cdr","expr"]]]],["function","inevalist",["expr"],[["atom","expr"],"expr"],["cons",["ineval",["car","expr"]],["inevalist",["cdr","expr"]]]],["function","inquote",["expr"],[["atom","expr"],"expr"],["cons",["inquote",["car","expr"]],["inquote",["cdr","expr"]]]],["function&","inloop",["pbody","blocknest","inloop"],["debugCleanup","$inloop:","pbody","blocknest","inloop"],["=","blocknest",0],["=","inloop","true"],["cons",["car","pbody"],["second","pbody"],["inbody",["cddr","pbody"]]]],["function&","inproc",["fbind","blocknest"],["debugCleanup","$inproc:","fbind","blocknest"],["=","blocknest",0],["cons",["car","fbind"],["cons",["second","fbind"],["cons",["inquote",["third","fbind"]],["inbody",["cdddr","fbind"]]]]]],["function","inconditem",["expr"],["debugCleanup","$inconditem:","expr"],[["atom","expr"],"expr"],["cons",["inwhen",["car","expr"]],["inconditem",["cdr","expr"]]]],["function&","incond",["expr","blocknest"],["debugCleanup","$incond:","expr"],["cons",["car","expr"],["inconditem",["cdr","expr"]]]],["function","incatch",["expr"],["debugCleanup","$incatch:","expr"],["list",["car","expr"],["inbody",["second","expr"]],["inconditem",["third","expr"]],["inbody",[".","expr",3]]]],["function","incall",["expr","false","sym"],["debugCleanup","$incall:","expr"],["=","sym",[".",["car","expr"],"atom"]],[["==","sym",["`","loop"]],["inloop","expr"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","expr"]],[["==","sym",["`","cond"]],["incond","expr",["+","blocknest",2]]],[["==","sym",["`","body"]],["inbody","expr"]],[["==","sym",["`","catch"]],["incatch","expr"]],[["==","sym","`"],["debugCleanup","$inquote:","expr"],["inquote","expr"]],["cons",["car","expr"],["inevalist",["cdr","expr"]]]],["function","inwhen",["expr","false","nexpr"],["debugCleanup","$inwhen:","expr"],["=","nexpr",["cdr","expr"]],[["&&",["not",["cdr","nexpr"]],["not",["or",["atom","nexpr"],["atom",["car","nexpr"]],["atom",["caar","nexpr"]],["atom",["caaar","nexpr"]]]]],["debugCleanup","$inwhen block","blocknest"],["=","nexpr",["hoist","nexpr"]],["cons",["incall",["car","expr"]],["inblock","nexpr","blocknest"]]],["cons",["incall",["car","expr"]],["hoist",["delbreak",["cdr","expr"],"blocknest"]]]],["function&","delbreak",["expr","blocknest"],["debugCleanup","$delbreak:","expr","blocknest"],[["atom","expr"],"expr"],[[["&&",["tuple",["car","expr"]],["tuple",["caar","expr"]],["tuple",["caaar","expr"]]],["preadjust","blocknest","+",1],["debugCleanup","$delbreak block:","blocknest"]]],["=","expr",["hoist","expr"]],[["and",["==",[".",["caar","expr"],"atom"],["`","break"]],["not",["cdr",["car","expr"]]],["<=","blocknest",1]],["debugCleanup","$did delbreak from:","expr"],["=","delbreak","true"],"false"],["cons",["inbodyitem",["car","expr"]],["delbreak",["cdr","expr"],"blocknest"]]],["function&","inblock",["expr","blocknest","false","nexpr","delbreak"],["debugCleanup","$inblock:","expr","blocknest"],[[["cdr","expr"],["=","blocknest",["+","blocknest",2]]],["=","blocknest",["+","blocknest",1]]],["=","nexpr",["inbodyitem",["car","expr"]]],[["identity","delbreak"],["debugCleanup","$did delbreak below:","nexpr"],"nexpr"],["cons","nexpr",["inbody",["cdr","expr"]]]],["function","hoist",["expr"],[["or",["cdr","expr"],["atom","expr"],["atom",["car","expr"]],["atom",["caar","expr"]],["atom",["caaar","expr"]]],"expr"],["debugCleanup","$hoisted:",["car","expr"]],["hoist",["car","expr"]]],["debugCleanup","$\n### in tree:","tree"],["=","blocknest",0],["ineval","tree"]]),e._SetBindingList("langErrorCheck",["function","langErrorCheck",["tree","false","xproc","proc_parent","xloop","loop_parent","xbody","blocknest"],["global","langDebuglog"],["function","debugErrorCheck","args",[["identity","false"],["apply","langDebuglog","args"]]],["function&","inbody",["lbody","xbody","false","item","more"],[["atom","lbody"],"lbody"],["debugErrorCheck","$inbody:","lbody"],["=","xbody",{dictionary:{$live:"true"}}],["=","item",["car","lbody"]],["=","more",["cdr","lbody"]],[[["atom","item"],[["&&","more",["not",["member",[".",["caar","more"],"atom"],["`",["break","return"]]]]],["langSyntax","item","false",{dictionary:{$memo:"$ignored atom in body"}}]],[["&&",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]]],["inbodyitem","item"],["inbody","more","xbody"]],["function","inbodyitem",["expr","false","sym"],["debugErrorCheck","$inbodyitem:","expr"],[["not",[".","xbody","live"]],[[["not",[".","xbody","dead"]],["langSyntax","expr","false",{dictionary:{$memo:"$dead code"}}]]],["set.","xbody",["`","dead"],"true"],"false"],[["atom","expr"],"expr"],["=","sym",["car","expr"]],[["atom","sym"],["incall","expr"]],[["atom",["car","sym"]],["inwhen","expr"]],["inblock","expr","blocknest"]],["function","ineval",["expr"],["debugErrorCheck","$ineval:","expr"],[["atom","expr"],"expr"],[["atom",["car","expr"]],["incall","expr"]],["inevalist","expr"]],["function","inevalist",["expr"],["debugErrorCheck","$inevalist:","expr"],[["atom","expr"],"expr"],["ineval",["car","expr"]],["inevalist",["cdr","expr"]]],["function","inquote",["expr","inside","false","item"],["debugErrorCheck","$inquote:","expr","inside"],[["atom","expr"],"expr"],["=","item",["car","expr"]],[[["&&","inside",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]],["inquote","item","true"],["inquote",["cdr","expr"],"inside"]],["function","inargs",["expr","proc","narg","false","item","quoted"],["debugErrorCheck","$inargs:","expr"],[["atom","expr"],"expr"],["=","item",["car","expr"]],["=","quoted",["quotedArg","proc","narg"]],[[["tuple","item"],[["identity","quoted"],["=","item",["inquote","item","true"]]],["=","item",["incall","item"]]],[["&&",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["not","quoted"],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]],["inargs",["cdr","expr"],"proc",["+","narg",1]]],["function","inparms",["expr","false","parm","sym"],["debugErrorCheck","$inparms:","expr"],[["atom","expr"],["=","sym",[".","expr","atom"]],[["identity","sym"],[["not",["symbol","sym"]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid parameter"}}]],["set[",[".","xproc","parameters"],"sym","expr"],[[".","xproc","dynbind"],["findLocalSymbol","sym",[".","xproc","parent"]]]]],["=","parm",["car","expr"]],["=","sym",[".","parm","atom"]],[[["||",["not",["symbol","sym"]],["&&",["not","sym"],["!==","sym","false"]]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid parameter"}}]],[["===","sym","false"],[[".","xproc","locals"],["langSyntax","parm","false",{dictionary:{$memo:"$duplicate `local"}}]],[["atom",["cdr","expr"]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid `local"}}]],["set.","xproc",["`","locals"],{dictionary:{}}],["set.","xproc",["`","unused"],{dictionary:{}}]],[["deref",[".","xproc","parameters"],"sym"],["langSyntax","parm","false",{dictionary:{$memo:"$duplicate parameter"}}]],["set[",[".","xproc","parameters"],"sym","parm"],[[[".","xproc","locals"],["set[",[".","xproc","unused"],"sym","parm"],["set[",[".","xproc","locals"],"sym","parm"]]],[[".","xproc","dynbind"],["findLocalSymbol","sym",[".","xproc","parent"]]]],["inparms",["cdr","expr"]]],["function&","inloop",["pbody","loop_parent","false","blocknest","xloop"],["debugErrorCheck","$inloop:","pbody"],["=","xloop",{dictionary:{$tag:[".",["second","pbody"],"atom"]}}],[[["identity","loop_parent"],["set.","xloop",["`","parent"],"loop_parent"]]],["=","loop_parent","xloop"],["=","blocknest",0],["inbody",["cddr","pbody"]]],["function&","inproc",["fbind","proc_parent","false","blocknest","xproc","sym","item"],["debugErrorCheck","$inproc:","fbind"],["=","xproc",{dictionary:{$ftype:["car","fbind"],$fname:["second","fbind"],$parms:["third","fbind"],$body:["cdddr","fbind"],$procNames:{dictionary:{}},$parameters:{dictionary:{}},$undeclared:{dictionary:{}},$dynbind:["member",[".",["car","fbind"],"atom"],["`",["function&","let&"]]]}}],[[["identity","proc_parent"],["set.","xproc",["`","parent"],"proc_parent"],[[[".","proc_parent","globals"],["set.","xproc",["`","globals"],{dictionary:{}}]]],[[[".","proc_parent","root"],["set.","xproc",["`","root"],[".","proc_parent","root"]]],["set.","xproc",["`","root"],"proc_parent"]],[["&&",["!=",[".",[".","xproc","fname"],"atom"],["`","lambda"]],["deref",[".","proc_parent","procNames"],[".",[".","xproc","fname"],"atom"]]],["langSyntax",[".","xproc","fname"],"false",{dictionary:{$memo:"$duplicate procedure name"}}]],["set[",[".","proc_parent","procNames"],[".",[".","xproc","fname"],"atom"],[".","xproc","fname"]]]],["=","proc_parent","xproc"],["=","blocknest",0],["inparms",[".","xproc","parms"]],["inbody",[".","xproc","body"]],[[["not",[".","xproc","dynbind"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","xproc","unused"],["`",["sym","item"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["sym","item"],[".","iter","$value"]],["langSyntax","item","false",{dictionary:{$memo:"$unused local variable"}}]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","xproc","undeclared"],["`",["sym","item"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["sym","item"],[".","iter","$value"]],[[["not",["deref",[".","xproc","procNames"],"sym"]],[["&&",[".","xproc","parent"],[".","xproc","globals"]],["set[",[".",[".","xproc","parent"],"undeclared"],"sym","item"]],["langSyntax","item","false",{dictionary:{$memo:"$undeclared global"}}]]]]]]],["function","inconditem",["expr"],["debugErrorCheck","$inconditem:","expr"],[["atom","expr"],"expr"],["inwhen",["car","expr"]],["inconditem",["cdr","expr"]]],["function&","incond",["expr","blocknest"],["debugErrorCheck","$incond:","expr"],["inconditem","expr"]],["function","incatch",["expr"],["debugErrorCheck","$incatch:","expr"],["list",["car","expr"],["inbody",["second","expr"]],["incond",["third","expr"]],["inbody",[".","expr",3]]]],["function","incall",["expr","false","sym","loopt","item"],["debugErrorCheck","$incall:","expr"],["=","sym",[".",["car","expr"],"atom"]],[["==",[".","sym","proc"],[".",["`","loop"],"proc"]],["inloop","expr","loop_parent"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","expr","proc_parent"]],[["==","sym",["`","cond"]],["incond","expr",["+","blocknest",2]]],[["==","sym",["`","body"]],["inbody",["cdr","expr"]]],[["==","sym",["`","catch"]],["incatch","expr"]],[["==","sym","`"],["inquote","expr"]],[["==","sym",["`","global"]],[["not","xproc"],["langSyntax","false","false",{dictionary:{$at:["langExprLoc",["car","expr"]],$memo:"$global forbidden outside of a procedure"}}]],[[".","xproc","dynbind"],["langSyntax","false","false",{dictionary:{$at:["langExprLoc",["car","expr"]],$memo:"$global forbidden in function& and let&"}}]],[[["not",[".","xproc","globals"]],["set.","xproc",["`","globals"],{dictionary:{}}]]],["=","loopt",["cdr","expr"]],["while","false",[["not",["not",["empty","loopt"]]]],["=","item",["pop","loopt"]],[[["not",["symbol",[".","item","atom"]]],["langSyntax","item","false",{dictionary:{$memo:"$invalid global symbol"}}]],["set[",[".","xproc","globals"],[".","item","atom"],"item"]]]],[["||",["==","sym",["`","break"]],["==","sym",["`","continue"]]],["set.","xbody",["`","live"],"false"],[["not","xloop"],["langSyntax",["car","expr"],"false",{dictionary:{$memo:["strcat","sym","$ without loop"]}}]],["=","sym",[".",["cadr","expr"],"atom"]],[["identity","sym"],["=","loopt","xloop"],["while","false",[["not","loopt"]],[[["==","sym",[".","loopt","tag"]],["break"]]],["=","loopt",[".","loopt","parent"]]],[["not","loopt"],["langSyntax",["cadr","expr"],"false",{dictionary:{$memo:"$enclosing loop tag not found"}}]]]],[[["||",["==","sym",["`","return"]],["==","sym",["`","throw"]]],["set.","xbody",["`","live"],"false"]],[["&&",["not","sym"],["tuple",["car","expr"]]],["incall",["car","expr"]],["=","expr",["cdr","expr"]]]],["inargs",["cdr","expr"],["car","expr"],0]],["function","inwhen",["expr","false","nexpr"],["debugErrorCheck","$inwhen:","expr"],["=","nexpr",["cdr","expr"]],[["&&",["not",["cdr","nexpr"]],["not",["or",["atom","nexpr"],["atom",["car","nexpr"]],["atom",["caar","nexpr"]],["atom",["caaar","nexpr"]]]]],["debugErrorCheck","$in whenblock","blocknest"],["incall",["car","expr"]],["inblock","nexpr","blocknest"]],["incall",["car","expr"]],["inbody",["cdr","expr"]]],["function&","inblock",["expr","blocknest"],["debugErrorCheck","$inblock:","expr","blocknest"],[[["cdr","expr"],["=","blocknest",["+","blocknest",2]]],["=","blocknest",["+","blocknest",1]]],["inbodyitem",["car","expr"]],["inbody",["cdr","expr"]]],["function","findLocalSymbol",["sym","start","false","proct"],[[["==","sym",["`","Dialect"]],["return","true"]]],[[["identity","start"],["=","proct","start"]],["=","proct","xproc"]],["while","false",[["not","proct"]],[[["deref",[".","proct","procNames"],"sym"],["break"]]],[[["deref",[".","proct","parameters"],"sym"],["set[",[".","proct","unused"],"sym","undefined"],["break"]]],[[["deref",[".","proct","globals"],"sym"],["break"]]],["=","proct",[".","proct","parent"]]],["not",["not","proct"]]],["function","quotedArg",["proc","narg"],[[["&&",["===",[".",[".","proc","atom"],"proc"],[".",["`","."],"proc"]],["==","narg",1]],["return","true"]]],[[["&&",["===",[".",[".","proc","atom"],"proc"],[".",["`","="],"proc"]],["==","narg",0]],["return","true"]]],"false"],["debugErrorCheck","$\n### langErrorCheck tree:","tree"],["=","blocknest",0],["ineval","tree"],"tree"]),e._SetBindingList("langCorrelateComments",["function","langCorrelateComments",["locmap","false","comments","locations","locdex","loc"],["function","tupleCompare",["a","b"],[["<",[".","a",0],[".","b",0]],-1],[[">",[".","a",0],[".","b",0]],1],[["<",[".","a",1],[".","b",1]],-1],[[">",[".","a",1],[".","b",1]],1],0],["=","comments",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",["reverse",[".","source","comments","false"]],["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],[".","comments","push",[["append",[".","acom","loc"],[".","acom","text"]]]]]]],[".","comments","sort",["tupleSort"]],["=","locations",{array:[]}],["=","locdex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","locmap",["`","loc"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","loc",[".","iter","$value"]],[[["identity","loc"],[".","locations","push",[["list",[".","loc",0],[".","loc",1],"locdex"]]]]],["preadjust","locdex","+",1]]]],[".","locations","sort",["tupleSort"]],["call",["let","lambda",["false","acom","curloc","output","nextdex","nextloc"],["=","locdex",0],["=","curloc",["deref","locations",["postadjust","locdex","+",1]]],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","comments",["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["while","false",[["not",[">",[".","acom",0],[".","curloc",0]]]],["=","curloc",["deref","locations",["postadjust","locdex","+",1]]]],[[["not","curloc"],[".","output","push",[["list","false","false",[".","acom",2]]]]],[["<",[".","acom",0],[".","curloc",0]],[".","output","push",[["list",[".","curloc",2],-1,[".","acom",2]]]]],["=","nextdex","locdex"],["=","nextloc","curloc"],["while","false",[["not",["&&",["==",[".","acom",0],[".","nextloc",0]],[">",[".","acom",1],[".","nextloc",1]]]]],["=","nextloc",["deref","locations",["postadjust","nextdex","+",1]]]],[["==",[".","acom",0],[".","nextloc",0]],[".","output","push",[["list",[".","nextloc",2],0,[".","acom",2]]]],["=","locdex","nextdex"],["=","curloc","nextloc"]],[".","output","push",[["list",[".","curloc",2],1,[".","acom",2]]]]]]]],"output"]]]),e._SetBindingList("langStrip",["function","langStrip",["tree","operators","valproc"],["=","tree",["langCleanup","tree"]],["langErrorCheck","tree"],["langStripLoc","tree","operators","valproc"]]),e._SetBindingList("langStripLoc",["function","langStripLoc",["tree","operators","valproc","false","procnest","fname","locmap","nodecount","curns","nscurrent","nscore","sourcemap"],["=","curns",["nsactive"]],["=","nscurrent",[".","curns",0]],["=","nscore",[".",["nsactive","true"],1]],["function","topmap",["expr"],["function","remap",["expr"],[["dictionary","expr"],["preadjust","nodecount","+",1],[".","locmap","push",[[".","expr","loc"]]]],[["atom","expr"],["preadjust","nodecount","+",1],["debuglog","$langStripLoc: found atom:","expr"],[".","locmap","push",["false"]]],["remap",["car","expr"]],[["cdr","expr"],["remap",["cdr","expr"]]]],[["atom","expr"],"false"],[["==",[".",["car","expr"],"atom"],"`"],"true"],[["member",[".",["car","expr"],"atom"],["`",["function","function&","macro","closure","let","let&"]]],["remap","expr"],"true"],[["topmap",["car","expr"]],"true"],["topmap",["cdr","expr"]]],["function","moveatom",["item","false","sym"],[["not",["symbol",[".","item","atom"]]],[".","item","atom"]],[["&&",["interned",[".","item","atom"]],["dictionary","operators"],["deref","operators",[".","item","atom"]]]],[["&&",[".",[".","item","atom"],"proc"],["!=",[".",[".","item","atom"],"namespace"],"nscurrent"],["!=",[".",[".","item","atom"],"namespace"],"nscore"]],["=","sym",["interned",[".",[".","item","atom"],"tostring"]]],[["&&",["eq",[".","sym","namespace"],"nscurrent"],[".","sym","proc"]],"sym"],[".","item","atom"]],[".","item","atom"]],["function","inbody",["xbody","false","sym"],[["atom","xbody"],["moveatom","xbody"]],["=","sym",[".",["car","xbody"],"atom"]],[["==","sym","`"],["inquote","xbody"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","xbody","procnest"]],["split","xbody"]],["function","inquote",["expr"],[["atom","expr"],["moveatom","expr"]],["cons",["inquote",["car","expr"]],["inquote",["cdr","expr"]]]],["function","split",["expr"],[["atom","expr"],["moveatom","expr"]],["cons",["inbody",["car","expr"]],["split",["cdr","expr"]]]],["function&","inproc",["pbody","procnest","false","wasnest","fbind"],[[["=","wasnest","procnest"]],["=","procnest","true"]],["=","fbind",["cons",["split",["car","pbody"]],["split",["second","pbody"]],["split",["third","pbody"]],["split",["cdddr","pbody"]]]],[["identity","wasnest"],"fbind"],["=","fname",["second","fbind"]],[["and",["&&",["not","valproc"],"fname"],["not",["lambda","fname"]],["not",["eq",["car","fbind"],["`","let"]]]],["cons",["`","defproc"],"fbind"]],["enclose","fbind"]],["function","lmCompress",["locmap","false","entry","lastrow","lastcol","nextrow","nextcol"],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","locmap",["`","entry"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","entry",[".","iter","$value"]],["=","nextrow",[".","entry",0]],["=","nextcol",[".","entry",1]],[[["not","entry"],[".","output","push",["false"]]],[["not","lastrow"],[".","output","push",["entry"]]],[["==","lastrow","nextrow"],[".","output","push",[["-","nextcol","lastcol"]]]],[".","output","push",[["list",["-","nextrow","lastrow"],"nextcol"]]]],["=","lastrow","nextrow"],["=","lastcol","nextcol"]]]],"output"],["=","locmap",{array:[]}],["=","nodecount",0],["topmap","tree"],["=","tree",["inbody","tree"]],[[["and","fname",[">",["length","locmap"],1]],["=","comments",["langCorrelateComments","locmap"]],["=","sourcemap",{dictionary:{$count:"nodecount",$comments:"comments"}}],[[["identity","false"],["set.","sourcemap",["`","map"],["lmCompress","locmap"]]]],["put","fname",["`","\\.sourcemap"],"sourcemap"]]],"tree"]),e._SetBindingList("langParse1",["function&","langParse1",["ltoken","riplop","false","rtoken"],["function&","naryCoalesce",["optoken","lexpr","rexpr","false","opsym"],["=","opsym",[".","optoken","atom"]],[["and",["defined","optoken","atom"],["symbol","opsym"],["deref",[".","lang","naryop"],"opsym"]],[["and",["tuple","lexpr"],["==","opsym",[".",["car","lexpr"],"atom"]]],[["and",["tuple","rexpr"],["==","opsym",[".",["car","rexpr"],"atom"]]],["cons","optoken",["append",["cdr","lexpr"],["cdr","rexpr"]]]],["cons","optoken",["append",["cdr","lexpr"],["list","rexpr"]]]],[["and",["tuple","rexpr"],["==","opsym",[".",["car","rexpr"],"atom"]]],["cons","optoken",["append",["list","lexpr"],["cdr","rexpr"]]]],["list","optoken","lexpr","rexpr"]],["list","optoken","lexpr","rexpr"]],["function&","leprop",["false","nlToken"],[["==",[".","tokenlast","atom"],"cr"],["=","nlToken","tokenlast"],[[["not",["passNewline","true"]],["return","false"]]],[["and",["not",["string",[".","tokenlast","atom"]]],["deref",[".","lang","left"],[".","tokenlast","atom"]]],[["deref",[".","lang","prefix"],[".","tokenlast","atom"]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$ambiguous newline (use \\ or ,)"}}]],["deref",[".","lang","left"],[".","tokenlast","atom"]]],["tokenpush","nlToken"],"false"],["deref",[".","lang","left"],[".","tokenlast","atom"]]],["=","ltoken",["passNewline"]],[["atDelimiter"],["langSyntax","ltoken","false",{dictionary:{$memo:"$incomplete expression"}}]],["=","rtoken",["tokenread"]],[[["string",[".","ltoken","atom"]]],[["deref",[".","lang","prefix"],[".","ltoken","atom"]],["=","ltoken",["eval",["deref",[".","lang","prefix"],[".","ltoken","atom"]]]]],[["deref",[".","lang","left"],[".","ltoken","atom"]],["langSyntax","ltoken","false",{dictionary:{$memo:"$not a prefix operator"}}]],[["deref",[".","lang","right"],[".","ltoken","atom"]],["=","ltoken",["list","ltoken",["langParse1","rtoken",["deref",[".","lang","right"],[".","ltoken","atom"]]]]]]],["loop","false",["=","rtoken","tokenlast"],[[["string",[".","ltoken","atom"]],[[["tokenmatch","string"],["=","ltoken",{dictionary:{$atom:["strcat",[".","ltoken","atom"],[".","tokenlast","atom"]],$loc:[".","ltoken","loc"]}}],["tokenread"],["continue"]]],[[".","lang","string"],["=","ltoken",["eval",[".","lang","string"]]]]]],[[["and",["&&",["not",["string",[".","rtoken","atom"]]],["<","riplop",["deref",[".","lang","postleft"],[".","rtoken","atom"]]]],["deref",[".","lang","postfix"],[".","rtoken","atom"]]],["=","ltoken",["eval",["deref",[".","lang","postfix"],[".","rtoken","atom"]]]],["=","rtoken",["tokenread"]]]],[["not",["<","riplop",["leprop"]]],"ltoken"],["=","rtoken","tokenlast"],["tokenread"],[[["string",[".","rtoken","atom"]]],[["deref",[".","lang","infix"],[".","rtoken","atom"]],["=","ltoken",["eval",["deref",[".","lang","infix"],[".","rtoken","atom"]]]]],[["deref",[".","lang","right"],[".","rtoken","atom"]],["=","ltoken",["naryCoalesce","rtoken","ltoken",["langParse1","tokenlast",["deref",[".","lang","right"],[".","rtoken","atom"]]]]]],["=","ltoken",["list","rtoken","ltoken"]]]]]),e._SetBindingList("langParseTo",["function&","langParseTo",["delim","sloc","doval","false","inerrors","expr"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","lptFound","false"],["langPassSeparator"],["=","inerrors",[".","langErrors","length"]],["loop","false",[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"]],[[["atDelimiter"],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"delim",$memo:"$delimiter not found"}}],[["atTerminator"],["break"]]],[[["identity","doval"],["push",["langValueParse"],"expr"]],["push",["langParse1","tokenlast",0],"expr"]],[[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"],["break"]]],[["&&",["not",["langAtSeparator","delim"]],["==","inerrors",[".","langErrors","length"]]],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"delim",$memo:"$mismatched delimiter"}}],[["atTerminator"],["break"]]]],["tokenread"]]]),e._SetBindingList("langParseToList",["function&","langParseToList",["delim","sloc","false","expr"],["=","expr",["langParseTo","delim","sloc"]],[[["not","expr"],["=","expr",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]]],"expr"]),e._SetBindingList("langReadExpr",["function&","langReadExpr",["false","expr"],["=","expr",["passNewline"]],[["tokenmatch","rpar"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$mismatched parens"}}]],[["tokenmatch","quote"],["=","expr",["tokenread"]],["tokenread"],"expr"],[["tokenmatch","{"],["tokenread"],["langBraceParse","false","expr"]],[["tokenmatch","["],["tokenread"],["langBracketParse","false","false","expr"]],[["not",["tokenmatch","lpar"]],["tokenread"],"expr"],["tokenread"],["=","expr","false"],["loop","false",["passNewline"],[[["tokenmatch","comma"],["tokenread"],[["||",["not","expr"],["tokenmatch",["list","rpar","comma"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$extra comma"}}]]]],[["tokenmatch","rpar"],["tokenread"],["reverse","expr"]],["push",["langReadExpr"],"expr"],[[["tokenmatch","period"],["tokenread"],["=","expr",["reverse",["cdr","expr"],["cons",["car","expr"],["langReadExpr"]]]],[[["tokenmatch","rpar"],["tokenread"],"expr"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$invalid dotted pair"}}],"false"],["break"]]]]]),e._SetBindingList("langTemplateStringParse",["function&","langTemplateStringParse",["strtoken","false","sloc","rxTS","terms","found","result","exlist","item","add"],[[["<",[".",[".","strtoken","atom"],"indexOf",[["`","\\${"]]],0],["return","strtoken"]]],["=","sloc",["langExprLoc","strtoken"]],["=","rxTS",["RegExp","$((?:[^$]|[$](?![{$])|[$]+[{][^}]*$)*)([$]+[{].*?[}])?","$g"]],["=","rxT",["RegExp","$[$]+[{](.*)[}]"]],["=","terms",{array:[]}],["loop","false",["=","found",[".","rxTS","exec",[[".","strtoken","atom"]]]],[["||",["not","found"],["==",[".","found",0],"$"]]],[[[".","found",1],[".","terms","push",[[".","found",1]]]]],[[[".","found",2],[".","terms","push",[[".","found",2]]]]]],["=","exlist",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","terms",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","found",[".","rxT","exec",["item"]]],[[[".","item","startsWith",["$$$"]],[".","exlist","push",[{dictionary:{$atom:[".","item","slice",[1]],$loc:"sloc"}}]]],[[".","found",1],[".","exlist","push",[["recurParse",[".",[".","found",1],"concat",["$;"]],["list",[".","sloc",0],["+",[".","sloc",1],2]]]]]],[[">",[".","item","length"],0],[".","exlist","push",[{dictionary:{$atom:"item",$loc:"sloc"}}]]]],["=","sloc",["list",[".","sloc",0],["+",[".","sloc",1],[".","item","length"]]]]]]],["langConsSym",["`","strcat"],"strtoken",[".","exlist","totuple"]]]),e._SetBindingList("langBraceParse",["function&","langBraceParse",["doeval","sloc","false","obj","expr","value","exlist"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","obj",{dictionary:{}}],["loop","false",["passNewline"],[["tokenmatch",["`","}"]],["tokenread"],["=","expr",["setobj","exlist",["new","dictionary"]]]],[["atDelimiter"],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"$}",$memo:"$delimiter not found"}}]],["=","expr","tokenlast"],[["deref","obj",[".","expr","atom"]],["langSyntax","expr","false",{dictionary:{$memo:"$duplicate key in dictionary",$found:[".","expr","atom"]}}]],["tokenread"],["passNewline"],[[["==",[".","expr","atom"],"`"],["=","expr","tokenlast"],["tokenread"],["passNewline"]]],[["not",["tokenmatch",["`",":"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$missing : in dictionary"}}]],["tokenread"],["passNewline"],["=","value",["langValueParse","doeval"]],["set[","obj",[".","expr","atom"],"value"],[["tokenmatch",["`","}"]],["tokenread"]],[["not",["langAtSeparator"]],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"$, or }",$memo:"$malformed dictionary entry"}}]],["tokenread"]],{dictionary:{$atom:"obj",$loc:["langExprLoc","sloc"]}}]),e._SetBindingList("langBracketParse",["function&","langBracketParse",["doeval","ltoken","sloc","false","exlist"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","exlist",["langParseTo",["`","]"],"sloc",["not","ltoken"]]],[["identity","ltoken"],[["atom",["cdr","exlist"]],["langEnlistSym","deref","sloc","ltoken",["car","exlist"]]],["langEnlistSym","dereflist","sloc","ltoken","exlist"]],[[["&&","doeval",["==",[".","langErrors","length"],0]],["=","exlist",["cdr",["eval",["cons","false","exlist"]]]]]],{dictionary:{$atom:["new","array","exlist"],$loc:[".","sloc","loc"]}}]),e._SetBindingList("langValueParse",["function","langValueParse",["doeval","false","value"],["=","value",["langParse1","tokenlast",0]],[[["==",[".","langErrors","length"],0],["=","value",["langStrip","value","operators","true"]],[["identity","doeval"],["=","value",["eval","value"]]]]],"value"]),e._SetBindingList("langGenIterate",["function","langGenIterate",["calltok","tagtok","varex","target","xbody","false","sloc","forsym","itersym","bodyloc","iterlist"],["=","sloc",[".","calltok","loc"]],["=","forsym",["unintern",["`","lambda"]]],["=","itersym",["unintern",["`","iter"]]],["=","bodyloc",["langExprLoc","xbody"]],["=","iterlist",["langEnlistSym","itersym","sloc"]],[[["&&",["atom","varex"],["not",["&&",["defined","varex","atom"],["symbol",[".","varex","atom"]],[".","varex","atom"]]]],["return",["langSyntax","varex","false",{dictionary:{$memo:"$invalid iteration variable",$found:[".","varex","atom"]}}]]]],["langConsSym",[".","calltok","atom"],"sloc",["cons",["langEnlistSym",["`","let"],"sloc",{dictionary:{$atom:"forsym",$loc:["langExprLoc","sloc"]}},"iterlist",["langEnlistSym",["`","="],"varex",{dictionary:{$atom:"itersym",$loc:["langExprLoc","varex"]}},["langEnlistSym",["`","iterate"],"varex","target",["langEnlistSym","`","varex","varex"]]],["langConsSym",["`","loop"],"xbody",["cons","tagtok",["list",["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$next",$loc:"bodyloc"}},"iterlist"],["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$final",$loc:"bodyloc"}},"iterlist"]],["langEnlistSym",["`","="],"xbody","varex",["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$value",$loc:"bodyloc"}}]],"xbody"]]]]]]),e._SetBindingList("langParseRule",["function","langParseRule",["lang","sym"],["or",["deref",[".","lang","left"],"sym"],["deref",[".","lang","right"],"sym"],["deref",[".","lang","prefix"],"sym"],["deref",[".","lang","infix"],"sym"],["deref",[".","lang","postfix"],"sym"]]]),e._AddPropertyList("LangLibInit",[["$.lingoInit","true"]]),e._SetBindingList("LangLibInit",["function","LangLibInit",["false","manifest"],["=","manifest",["`",["langParser","recurParse","langParseErrorString","tokenread","tokenpush","tokenmatch","tokenpass","passNewline","atTerminator","atDelimiter","langPassSeparator","langAtSeparator","langExprLoc","langConsSym","langEnlistSym","langSyntax","langDebuglog","langCleanup","langErrorCheck","langCorrelateComments","langStrip","langStripLoc","langParse1","langParseTo","langParseToList","langReadExpr","langTemplateStringParse","langBraceParse","langBracketParse","langValueParse","langGenIterate","langParseRule","LangLibInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$LangLib",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","ParseErrorString"],"langParseErrorString"]]]]]),e._Execute(["LangLibInit"]),e._SetNamespace("Lingo"),e._Execute([".",[".","Naan","module"],"letlocal",["module"]]),e._Execute([".",[".","Naan","module"],"letinherit",["$Lib"]]),e._AddPropertyList("LingoPreload",[["$.lingoInit","true"]]),e._SetBindingList("LingoPreload",["function","LingoPreload","false",[".",[".","Naan","module"],"letinherit",["$Lib"]]]),e._SetBindingList("LingoParser",["function","LingoParser",["source","grammar","operators"],["=","SynLoop","false"],["=","InProc","false"],["langParser","source","grammar","operators"]]),e._SetValue("lingoGrammar",{dictionary:{$left:{dictionary:{"$(":520,"$[":520,"$@[":520,"$.":500,"$.*":500,"$@":500,"$@*":500,"$=":420,"$+=":420,"$-=":420,"$*=":420,"$/=":420,"$%=":420,"$^":380,"$*":340,"$/.":340,"$/":340,"$%":340,"$+":330,"$-":330,"$<<":320,"$>>":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,"$&&":220,$and:220,"$||":200,$or:200,"$~":120}},$right:{dictionary:{"$.":540,"$@":540,"$^":375,"$++":360,"$--":360,"$*":340,"$/.":340,"$/":340,"$%":340,"$+":330,"$-":330,"$<<":320,"$>>":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,$not:230,"$!":230,"$&&":220,$and:220,"$||":200,$or:200,"$~":120,"$=":100,"$+=":100,"$-=":100,"$*=":100,"$/=":100,"$%=":100}},$rightSign:360,$rightEqual:100,$highBind:1e3,$prefix:{dictionary:{"$,":"false","$[":["constObject",["lingoBracketParse","false","false","ltoken"]],"$#[":["langConsSym",["`","#["],"tokenlast",["lingoParseTo",["`","#]"],"tokenlast"]],$try:["catchParse"],"$(":["parenParse"],"$`":["quoteParse"],$function:["procParse",["`","function"]],$macro:["procParse",["`","macro"]],$closure:["procParse",["`","closure"]],$let:["procParse",["`","let"]],$if:["ifParse","IfBody"],$else:["keywordParse","ltoken"],$body:["bodyParse"],$cond:["condParse"],$loop:["loopParse"],$break:["deloopParse",["`","break"]],$continue:["deloopParse",["`","continue"]],$return:["returnParse"],$while:["whileParse"],$for:["for2Parse"],$switch:["switchParse"],"$+":["lingoParse1","tokenlast",[".","lingoGrammar","rightSign"]],"$-":["negateParse"],"$!":["notParse"],"$++":["preCrementParse","rtoken",["`","++"],["`","+"]],"$--":["preCrementParse","rtoken",["`","--"],["`","-"]],"${":["constObject",["lingoBraceParse","false","ltoken"]],"$@":["atPrefixParse"]}},$infix:{dictionary:{"$/":["quotientParse","ltoken"],"$/.":["quotientParse","ltoken"],"$@":["atParse","ltoken"],"$@[":["atBracketParse","ltoken","rtoken"],"$[":["constObject",["lingoBracketParse","false","ltoken","rtoken"]],"$=":["equalParse","ltoken",["`","="]],"$+=":["opEqualParse","ltoken",["`","+"]],"$-=":["opEqualParse","ltoken",["`","-"]],"$*=":["opEqualParse","ltoken",["`","*"]],"$/=":["opEqualParse","ltoken",["`","/"]],"$%=":["opEqualParse","ltoken",["`","%"]],"$(":["lparParse","ltoken"]}},$postfix:{dictionary:{"$++":["postCrementParse","ltoken",["`","++"],["`","+"]],"$--":["postCrementParse","ltoken",["`","--"],["`","-"]],"$!":["postBangParse","ltoken"]}},$postleft:{dictionary:{"$++":420,"$--":420,"$!":400}},$naryop:{dictionary:{"$&&":"true",$and:"true","$||":"true",$or:"true"}},$string:["langTemplateStringParse","ltoken"]}}),e._SetBindingList("lingoParse1",["function&","lingoParse1",["arg1","arg2","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParse1","arg1","arg2"]]),e._SetBindingList("lingoReadExpr",["function&","lingoReadExpr",["false","IfBody"],["=","IfBody",["`","IfBody"]],["langReadExpr"]]),e._SetBindingList("lingoBraceParse",["function&","lingoBraceParse",["arg1","arg2","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBraceParse","arg1","arg2"]]),e._SetBindingList("lingoBracketParse",["function&","lingoBracketParse",["arg1","arg2","arg3","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBracketParse","arg1","arg2","arg3"]]),e._SetBindingList("lingoParseTo",["function&","lingoParseTo",["arg1","bloc","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParseTo","arg1","bloc"]]),e._SetBindingList("lingoParseToList",["function&","lingoParseToList",["arg1","bloc","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParseToList","arg1","bloc"]]),e._SetBindingList("constObject",["function","constObject",["tok"],["xlock",[".","tok","atom"]],"tok"]),e._SetBindingList("parenParse",["function","parenParse",["false","expr","sloc"],["=","sloc","tokenlast"],["=","expr",["lingoParse1","tokenlast",0]],[["tokenmatch","rpar"],["tokenread"],"expr"],["langSyntax",["tokenread"],"false",{dictionary:{$expected:"rpar",$memo:"$) or operator not found"}}]]),e._SetBindingList("negateParse",["function","negateParse",["false","expr"],["=","expr",["lingoParse1","tokenlast",[".","lingoGrammar","rightSign"]]],[["numeric",[".","expr","atom"]],{dictionary:{$atom:["negate",[".","expr","atom"]],$loc:[".","expr","loc"]}}],["langEnlistSym",["`","-"],"expr","expr"]]),e._SetBindingList("notParse",["function","notParse",["false","expr"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","!"]]]],["langEnlistSym",["`","not"],"expr","expr"]]),e._SetBindingList("postBangParse",["function","postBangParse",["expr","false","sloc"],["=","sloc","tokenlast"],["langEnlistSym",[".","tokenlast","atom"],"sloc","expr"]]),e._SetBindingList("atPrefixParse",["function","atPrefixParse",["false","expr","ltoken","destoken"],["=","ltoken","tokenlast"],["=","expr",["lingoParse1","ltoken",["deref",[".","lingoGrammar","right"],["`","@"]]]],["=","destoken",{dictionary:{$atom:["`","annotations"],$loc:["langExprLoc","ltoken"]}}],[[["not",["dictionary","annotations"]],["=","annotations",{dictionary:{}}]]],["=","expr",["langEnlistSym","`","expr","expr"]],["langEnlistSym","set.","ltoken","destoken","expr","expr"]]),e._SetBindingList("atParse",["function","atParse",["ltoken","false","expr"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","@"]]]],["langEnlistSym",["`","deref"],"ltoken",["langEnlistSym",["`","@"],"ltoken","ltoken"],["langEnlistSym","`","expr","expr"]]]),e._SetBindingList("atBracketParse",["function","atBracketParse",["ltoken","rtoken"],["lingoBracketParse","false",["langEnlistSym",["`","@"],"ltoken","ltoken"],"rtoken"]]),e._SetBindingList("quotientParse",["function","quotientParse",["lhs","false","rhs"],["=","rhs",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","/"]]]],["langEnlistSym",["`","quotient"],"lhs","lhs","rhs"]]),e._SetBindingList("ifParse",["function&","ifParse",["IfBody"],[[["eq","IfBody",["`","IfBody"]],["return",["langConsSym",["`","cond"],"tokenlast",["ifParse"]]]]],["call",["let","lambda",["notcond","false","expr","nexpr","bloc"],["=","IfBody","true"],[[["tokenmatch","lpar"],["=","bloc","tokenlast"],["tokenread"],["=","expr",["car",["lingoParseTo","rpar","bloc"]]]],["=","expr",["lingoParse1","tokenlast",0]]],[[["dictionary","expr"],["=","expr",["langEnlistSym",["`","identity"],"expr","expr"]]]],[[["not",["tokenmatch","{"]],["langPassSeparator"],["=","expr",["list","expr",["langParse1","tokenlast",0]]]],["=","bloc","tokenlast"],["tokenread"],["=","expr",["cons","expr",["langParseTo",["`","}"],"bloc"]]]],[["not",["tokenmatch",["`","else"]]],["list","expr"]],["tokenread"],[["identity","notcond"],[["tokenmatch",["`","if"]],["tokenread"],["list","expr",["ifParse","true"]]],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["cons","expr",["langParseTo",["`","}"],"bloc"]]],["list","expr",["langParse1","tokenlast",0]]],[["tokenmatch",["`","if"]],["tokenread"],["cons","expr",["ifParse","false"]]],["=","nexpr",["langConsSym",["`","identity"],"tokenlast",["langConsSym",["`","true"],"tokenlast"]]],[[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["=","nexpr",["cons","nexpr",["langParseTo",["`","}"],"bloc"]]]],["=","nexpr",["list","nexpr",["langParse1","tokenlast",0]]]],["list","expr","nexpr"]],"IfBody"]]),e._SetBindingList("keywordParse",["function&","keywordParse",["token"],["langSyntax","token","false",{dictionary:{$memo:"$stray keyword"}}]]),e._SetBindingList("bodyParse",["function&","bodyParse",["false","IfBody"],["call",["let","lambda",["bloc"],[["tokenmatch","lpar"],["=","IfBody","true"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","body"],"tokenlast",["langParseTo","rpar","bloc"]]],{dictionary:{$atom:["`","body"],$loc:["langExprLoc","tokenlast"]}}]]]),e._SetBindingList("ifsParse",["function&","ifsParse",["to","false","IfBody"],["call",["let","lambda",["bloc","conds","expr"],["=","bloc","tokenlast"],["=","conds",["apply","append",["langParseTo","to","bloc"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","conds",["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[["not",["tuple",["car","expr"]]],["langSyntax","expr","false",{dictionary:{$memo:"$if expression required"}}]]]]],"conds"]]]),e._SetBindingList("condParse",["function&","condParse",["false","IfBody"],[[["tokenmatch","lpar"],["tokenread"]],["return",{dictionary:{$atom:["`","cond"],$loc:["langExprLoc","tokenlast"]}}]],["langConsSym",["`","cond"],"tokenlast",["ifsParse","rpar"]]]),e._SetBindingList("loopParse",["function&","loopParse",["false","SynLoop","IfBody"],["call",["let","lambda",["tagex","sloc","bloc"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["atom",["caar","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$loop tag must be an atom"}}]],["=","SynLoop","true"],["=","IfBody","true"],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","loop"],"sloc",["cons","tagex",["langParseTo",["`","}"],"bloc"]]]],["langConsSym",["`","loop"],"sloc",["cons","tagex",["list",["langParse1","tokenlast",0]]]]]]]),e._SetBindingList("deloopParse",["function","deloopParse",["keyword","false","tagex","sloc"],[["not","SynLoop"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$only allowed within loops"}}]],["=","sloc","tokenlast"],[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]],[["not",["atom",["caar","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$tag must be an atom"}}]],["langEnlistSym","keyword","tokenlast","tagex"]],["langConsSym","keyword","tokenlast"]]),e._SetBindingList("returnParse",["function","returnParse","false",[["tokenmatch","lpar"],["langEnlistSym",["`","return"],"tokenlast",["lingoParse1","tokenlast",0]]],["langConsSym",["`","return"],"tokenlast"]]),e._SetBindingList("whileParse",["function&","whileParse",["false","SynLoop","IfBody"],["call",["let","lambda",["sloc","expr","tagex","testex","bloc"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["dictionary",["car","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$while tag must be an atom"}}]],[[["tokenmatch","lpar"],["=","bloc","tokenlast"],["tokenread"],["=","expr",["car",["lingoParseTo","rpar","bloc"]]]],["=","expr",["lingoParse1","tokenlast",0]]],["=","testex",["list",["langEnlistSym",["`","not"],"expr","expr"]]],["=","SynLoop","true"],["=","IfBody","true"],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","while"],"sloc",["cons","tagex","testex",["langParseTo",["`","}"],"bloc"]]]],["langPassSeparator"],["langConsSym",["`","while"],"sloc",["cons","tagex","testex",["list",["langParse1","tokenlast",0]]]]]]]),e._SetBindingList("for2Parse",["function&","for2Parse",["false","SynLoop","IfBody"],["call",["let","lambda",["sloc","varex","tagex","targex","bloc","bodyex"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["defined","tagex","atom"]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$for tag must be an atom"}}]],["=","varex",["lingoParse1","tokenlast",0]],[[["==",[".",["car","varex"],"atom"],"quote"],["=","varex",["cadr","varex"]]]],[["not",["tokenmatch",["`","in"]]],["langSyntax","tokenlast","false",{dictionary:{$expected:"$in",$memo:"$malformed for loop"}}]],["tokenread"],["=","targex",["lingoParse1","tokenlast",0]],["=","SynLoop","true"],["=","IfBody","true"],[[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["=","bodyex",["langParseTo",["`","}"],"bloc"]]],["=","bodyex",["cons",["langParse1","tokenlast",0]]]],["langGenIterate",{dictionary:{$atom:["`","for"],$loc:"sloc"}},"tagex","varex","targex","bodyex"]]]]),e._SetBindingList("switchParse",["function","switchParse",["false","sloc"],["=","sloc","tokenlast"],["langSyntax","sloc",{dictionary:{$memo:"$switch not implemented"}}]]),e._SetBindingList("procParse",["function&","procParse",["begin","false","InProc","IfBody"],["function","convlocal",["parms","false","ptoken","result"],[["atom","parms"],"parms"],["loop","false",["=","ptoken",["pop","parms"]],[[["==",[".","ptoken","atom"],"local"],["=","result",["cons",{dictionary:{$atom:"false",$loc:[".","ptoken","loc"]}},"result"]]],["=","result",["cons","ptoken","result"]]],[["atom","parms"],["reverse","result"]]]],["function","checkparms",["parms","false","sym"],[["not","parms"],"false"],[["&&",["dictionary","parms"],["not",["not",["=","sym",[".","parms","atom"]]]]],[["||",["not",["symbol","sym"]],["langParseRule","lingoGrammar","sym"]],["langSyntax","parms","false",{dictionary:{$memo:"$invalid parameter"}}]]],[["tuple","parms"],["checkparms",["car","parms"]],["checkparms",["cdr","parms"]]]],["call",["let","lambda",["expr","procname","parms","sloc","akey","bloc"],["=","InProc","true"],["=","sloc","tokenlast"],["=","expr",["langReadExpr"]],[[["==",[".","expr","atom"],["`","&"]],[["eq","begin",["`","function"]],["=","begin","function&"],["=","expr",["langReadExpr"]]],[["eq","begin",["`","let"]],["=","begin","let&"],["=","expr",["langReadExpr"]]],["langSyntax","sloc","false",{dictionary:{$memo:"$only function& and let& allowed"}}],["return"]]],[[["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["=","procname",{dictionary:{$atom:["unintern",[".","expr","atom"]],$loc:["langExprLoc","sloc"]}}],["assign",[".","procname","atom"],[".","expr","atom"]],["=","parms",["langReadExpr"]]],["=","procname",{dictionary:{$atom:["unintern","lambda"],$loc:["langExprLoc","sloc"]}}],["=","parms","expr"]],[[["dictionary","annotations"],["for",["let","lambda",["iter"],["=","iter",["iterate","annotations",["`","akey"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","akey",[".","iter","$value"]],["put",[".","procname","atom"],"akey",["deref","annotations","akey"]]]]],["=","annotations",["`","annotations"]]]],[[["||",["&&",["dictionary","parms"],["not",[".","parms","atom"]]],["not","parms"]],["=","parms",{dictionary:{$atom:"false",$loc:["langExprLoc","tokenlast"]}}]],["=","parms",["convlocal","parms"]]],["checkparms","parms"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc",{dictionary:{$memo:"$missing { at start of procedure body"}}]],["=","IfBody","true"],["=","bloc","tokenlast"],["tokenread"],["langConsSym","begin","sloc",["cons","procname",["cons","parms",["langParseTo",["`","}"],"bloc"]]]]]]]),e._SetBindingList("catchParse",["function","catchParse",["false","sloc1","sloc2","sloc3","exbod","catbod","ccond","finbod","bloc"],["=","sloc1","tokenlast"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc1",{dictionary:{$memo:"$missing { after try"}}]],["tokenread"],["=","exbod",["langParseToList",["`","}"],"sloc1"]],["=","sloc2","tokenlast"],[[["tokenmatch",["`","catch"]],["tokenread"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc2",{dictionary:{$memo:"$missing { after catch"}}]],["=","bloc","tokenlast"],["tokenread"],[[["tokenmatch",["`","if"]],["=","ccond",["ifsParse",["`","}"]]]],[["tokenmatch",["`","}"]],["tokenread"]],["=","catbod",["langParseTo",["`","}"],"bloc"]]],[["not","ccond"],[[["not","catbod"],["=","catbod",["langConsSym",["`","false"],"bloc"]]]],["=","ccond",["list",["cons",["langConsSym",["`","identity"],"bloc",["langConsSym",["`","true"],"bloc"]],"catbod"]]]]]],["=","sloc3","tokenlast"],[[["tokenmatch",["`","finally"]],["tokenread"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc3",{dictionary:{$memo:"$missing { after finally"}}]],["=","bloc","tokenlast"],["tokenread"],["=","finbod",["langParseToList",["`","}"],"bloc"]]]],[["not","ccond"],[["not","finbod"],["langSyntax","tokenlast","sloc1",{dictionary:{$memo:"$try requires catch or finally"}}]],["=","ccond",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc2"]}}],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]],[["not","finbod"],["=","finbod",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc3"]}}],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]]),e._SetBindingList("equalParse",["function","equalParse",["lhs","op","false","rhs","atex","equex"],["=","rhs",["lingoParse1","tokenlast",[".","lingoGrammar","rightEqual"]]],["=","equex",["call",["let","lambda","false",[["&&",["defined","lhs","atom"],["symbol",[".","lhs","atom"]]],["langEnlistSym","op","lhs","lhs","rhs"]],[["==",[".",["car","lhs"],"atom"],"quote"],["langEnlistSym","op","lhs",["second","lhs"],"rhs"]],[["==",[".",["car","lhs"],"atom"],"period"],["langEnlistSym","set.","lhs",["second","lhs"],["langEnlistSym","quote",["third","lhs"],["third","lhs"]],"rhs"]],[["and",["==",[".",["car","lhs"],"atom"],"set."],["eq",[".",["second","lhs"],"atom"],["`","annotations"]]],["langEnlistSym","set.","lhs",["second","lhs"],["third","lhs"],"rhs"]],[["or",["==",[".",["caar","lhs"],"atom"],"deref"],["==",[".",["caar","lhs"],"atom"],"dereflist"]],["=","atex",["second","lhs"]],[[["==",[".",["car","atex"],"atom"],["`","@"]],["=","atex",["langEnlistSym",["`","@"],"atex",["second","atex"],{dictionary:{$atom:"true",$loc:[".",["car","atex"],"loc"]}}]]]],["langEnlistSym","set[","lhs","atex",["third","lhs"],"rhs"]],["return",["langSyntax","rhs","lhs",{dictionary:{$memo:"$bad assignment"}}]]]]],[["eq","op",["!",["`","="]]],["langEnlistSym",["`","not"],"lhs","equex"]],"equex"]),e._SetBindingList("opEqualParse",["function","opEqualParse",["lhs","op","false","rhs"],["=","rhs",["lingoParse1","tokenlast",[".","lingoGrammar","rightEqual"]]],[["&&",["defined","lhs","atom"],["symbol",[".","lhs","atom"]]],["langEnlistSym","preadjust","lhs","lhs",{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],[["==",[".",["car","lhs"],"atom"],"quote"],["langEnlistSym","preadjust","lhs",["second","lhs"],{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],[["member",[".",["car","lhs"],"atom"],["`",[".","deref","dereflist"]]],["langEnlistSym","preadjust","lhs","lhs",{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],["langSyntax","rhs","lhs",{dictionary:{$memo:"$bad operator assignment"}}]]),e._SetBindingList("lparParse",["function","lparParse",["expr","false","bloc"],["=","bloc","tokenlast"],[["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["cons","expr",["lingoParseTo","rpar","bloc"]]],[["==",[".",["car","expr"],"atom"],"period"],["langEnlistSym","period","expr",["second","expr"],["third","expr"],["lingoParseToList","rpar","bloc"]]],[["member",[".",["car","expr"],"atom"],["`",["function","function&","macro","closure","let","let&"]]],[[["not","InProc"],["set[",["@",[".",[".","expr",1],"atom"],"true"],["`","\\.lingoInit"],"true"]]],["langConsSym",["`","call"],"expr",["cons","expr",["lingoParseTo","rpar","bloc"]]]],[["or",["==",[".",["caar","expr"],"atom"],"deref"],["==",[".",["caar","expr"],"atom"],"dereflist"]],["langEnlistSym",[".",["caar","expr"],"atom"],"expr",["second","expr"],["third","expr"],["lingoParseToList","rpar","bloc"]]],["langSyntax","bloc","false",{dictionary:{$memo:"$operator missing before ("}}]]),e._SetBindingList("preCrementParse",["function","preCrementParse",["rtoken","opsym","adjuster","false","sloc","expr"],["=","sloc","tokenlast"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],"opsym"]]],[["or",["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["member",[".",["car","expr"],"atom"],["`",[".","deref","dereflist"]]]],["langEnlistSym","preadjust","sloc","expr",{dictionary:{$atom:"adjuster",$loc:["langExprLoc","sloc"]}},{dictionary:{$atom:1,$loc:["langExprLoc","sloc"]}}]],["langSyntax","expr","false",{dictionary:{$memo:"$not an lvalue"}}]]),e._SetBindingList("postCrementParse",["function","postCrementParse",["expr","opsym","adjuster","false","sloc"],["=","sloc","tokenlast"],[["or",["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["member",[".",["car","expr"],"atom"],["`",[".","deref","dereflist"]]]],["langEnlistSym","postadjust","sloc","expr",{dictionary:{$atom:"adjuster",$loc:["langExprLoc","sloc"]}},{dictionary:{$atom:1,$loc:["langExprLoc","sloc"]}}]],["langSyntax","expr","false",{dictionary:{$memo:"$not an lvalue"}}]]),e._SetBindingList("quoteParse",["function","quoteParse",["false","expr"],["=","expr","tokenlast"],[["member",[".","expr","atom"],["`",["quote",")","{","[","`","\n"]]],["tokenread"],"expr"],["langEnlistSym","`","expr",["langReadExpr"]]]),e._AddPropertyList("LingoInit",[["$.lingoInit","true"]]),e._SetBindingList("LingoInit",["function","LingoInit",["modname","false","manifest"],["=","manifest",["`",["LingoPreload","LingoParser","lingoGrammar","lingoParse1","lingoReadExpr","lingoBraceParse","lingoBracketParse","lingoParseTo","lingoParseToList","constObject","parenParse","negateParse","notParse","postBangParse","atPrefixParse","atParse","atBracketParse","quotientParse","ifParse","keywordParse","bodyParse","ifsParse","condParse","loopParse","deloopParse","returnParse","whileParse","for1Parse","for2Parse","switchParse","procParse","catchParse","equalParse","opEqualParse","lparParse","preCrementParse","postCrementParse","quoteParse","LingoInit"]]],[[["not","modname"],["=","modname",[".","module","id"]]]],[".",[".","Naan","module"],"build",["modname","$Parse",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],[".",[".","Naan","module"],"letinherit",["$Lib"]],["set.",[".","modobj","exports"],["`","Base"],["DefineLanguage","$Lingo","lingoGrammar","LingoParser","LingoUnparser"]],["=","lingoOperators",[".",[".",[".",[".","modobj","exports"],"Base"],"info","false"],"operators"]]]]]]),e._Execute(["LingoInit","$Lingo"]),e._SetBindingList("LingoPrinter",["function","LingoPrinter",["expr","options"],[".",["LingoUnparser","expr","options"],"string","false"]]),e._SetBindingList("LingoUnparser",["closure","LingoUnparser",["origexpr","options","grammar","extensions","false","unparser","sink","formatter","key","expr","rbp","lbp","owntuple","hookif"],["=","unparser",["new","object","this"]],["set.","unparser",["`","expression"],"origexpr"],[[["not","grammar"],["=","grammar","lingoGrammar"]]],["set.","unparser",["`","sink"],["=","sink",{dictionary:{$row:0,$col:0,$incol:0,$hangdent:0,$wrapping:"true",$rowtokens:{array:[{array:[]}]},$procnesting:0,$endprocNL:"true",$quoteDict:["RegExp","$[`:,}]$"],$breaks:"false",$mirrors:"false",$mirroroot:"false",$tuplemap:"false",$maxmarklen:0,$markdict:"false",$nocycles:["new","weakmap"],$maproot:"false",$defoptions:{dictionary:{$point:"false",$quoted:"true",$indentSize:4,$wrapMinAmount:29,$wrapMaxCol:79,$leftMargin:0,$compact:"true",$maxKeyLength:20,$maxElements:1024,$maxStringLength:["*",64,1024],$noComments:"false",$commentCol:64}}}}]],["call",["let","lambda",["false","item"],[[["not",["dictionary","options"]],["=","options",[".","sink","defoptions"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","options",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["set[",[".","sink","defoptions"],"item",["deref","options","item"]]]]],["=","options",[".","sink","defoptions"]]],["set.","unparser",["`","options"],"options"]]],["set.","sink",["`","incol"],[".","options","leftMargin"]],["=","formatter",{dictionary:{"$`":"uhook`","$=":"uhook=",$deref:"uhookderef",$dereflist:"uhookderef","$set.":"uhookset.","$set[":"uhookset[","$.":"uhook.","$.*":"uhookref*","$@*":"uhookref*",$quotient:"uhookquotient",$catch:"uhookcatch",$for:"uhookfor",$call:"uhookcall",$while:"uhookwhile",$loop:"uhookloop",$cond:"uhookcond",$return:"uhookreturn",$continue:"uhookbreco",$break:"uhookbreco",$preadjust:"uhookpreadjust",$postadjust:"uhookpostadjust",$not:"uhooknot","$!":"uhookbang",$let:"uhookproc","$let&":"uhookproc",$closure:"uhookproc",$macro:"uhookproc",$function:"uhookproc","$function&":"uhookproc"}}],["for",["let","lambda",["iter"],["=","iter",["iterate","extensions",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["set[","formatter","key",["deref","extensions","key"]]]]],["function","earlier",["loc1","loc2"],[["<",["car","loc1"],["car","loc2"]],"loc1"],[[">",["car","loc1"],["car","loc2"]],"loc2"],[["<",["second","loc1"],["second","loc2"]],"loc1"],[[">",["second","loc1"],["second","loc2"]],"loc2"],"loc1"],["function","later",["loc1","loc2"],[[">",["car","loc1"],["car","loc2"]],"loc1"],[["<",["car","loc1"],["car","loc2"]],"loc2"],[[">",["second","loc1"],["second","loc2"]],"loc1"],[["<",["second","loc1"],["second","loc2"]],"loc2"],"loc1"],["function","indentadj",["delta"],["preadjust",[".","sink","incol"],"+",["*","delta",[".","options","indentSize"]]],[["<",[".","sink","incol"],0],["set.","sink",["`","incol"],0]]],["function","nextline","false",["set[",[".","sink","rowtokens"],["preadjust",[".","sink","row"],"+",1],{array:[]}],["set.","sink",["`","col"],[".","sink","incol"]],[[">",[".","sink","hangdent"],0],["preadjust",[".","sink","col"],"+",[".","options","indentSize"]]]],["function&","outoken",["strs","false","str","toklen","outok","sym"],[[["<",[".","sink","col"],[".","sink","incol"]],["set.","sink",["`","col"],[".","sink","incol"]]]],["while","false",[["not",["not",["atom","strs"]]]],["=","str",["pop","strs"]],[[["not",["atom","str"]],["=","owntuple","str"],["continue"]]],[[["symbol","str"],["=","sym","str"],["=","str",["tostring","sym",{dictionary:{$quote:"true",$nonamespace:"true"}}]]]],[[[">",[".","str","length"],[".","options","maxStringLength"]],["=","str",[".","$[String ","concat",[[".","str","length"],"$]"]]]]],[[["==","str","$\n"],["nextline"],["continue"]],[[[">=",[".","str","indexOf",["$\n"]],0],["=","str",["totuple",[".","str","split",["$\n"]]]],["=","outok","false"],["loop","false",["push",["pop","str"],"outok"],[["empty","str"]],["push","$\n","outok"]],["outoken",["reverse","outok"]],["continue"]]]],["=","toklen",["length","str"]],[[["!=",[".","str","trim","false"],"$"],[[["&&",[".","sink","wrapping"],[">",["+",[".","sink","col"],"toklen"],[".","options","wrapMaxCol"]],[">",["-",[".","sink","col"],[".","sink","incol"]],[".","options","wrapMinAmount"]]],["nextline"]]],["=","outok",{dictionary:{$str:"str",$column:[".","sink","col"],$tuple:"owntuple"}}],[[["identity","sym"],["set.","outok",["`","symbol"],"sym"]]],[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"push",["outok"]]]],["preadjust",[".","sink","col"],"+","toklen"]]],["function","mktok","strs",["outoken","strs"]],["function","mktokil","strs",["call",["function","lambda",["false","result"],["set.","sink",["`","wrapping"],"false"],["=","result",["apply","mktok","strs"]],["set.","sink",["`","wrapping"],"true"],"result"]]],["function","spaces",["lop1"],[["not",["and","lop1",["atom","lop1"]]],[["identity","spaceout"],["mktok","space"]]],[["<",["deref",[".","grammar","right"],"lop1"],"lbp"],["mktok","space"]],[["<",["deref",[".","grammar","left"],"lop1"],"rbp"],["mktok","space"]],[["identity","spaceout"],["mktok","space"]],[["not",["isbreak","lop1"]],["mktok","space"]]],["function","parens",["str"],[["deref",[".","grammar","right"],"lop1"],[[">","lbp",["deref",[".","grammar","right"],"lop1"]],["mktokil","str"]],[["deref",[".","grammar","left"],"lop1"],[["<","rbp",["deref",[".","grammar","left"],"lop1"]]],["mktokil","str"]],["=","spaceout","false"]],[["deref",[".","grammar","left"],"lop1"],[["<","rbp",["deref",[".","grammar","left"],"lop1"]]],["mktokil","str"]]],["macro","getokens",["outputter","false","rowstart","colstart"],["function","dequeue",["false","rowdex","coldex","outqueue","col"],["=","outqueue",{array:[]}],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowstart"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[">=",[".","col","column"],"colstart"],["=","outqueue",[".","outqueue","concat",[[".",["deref",[".","sink","rowtokens"],"rowstart"],"splice",["coldex"]]]]],["set.","sink",["`","col"],[".","col","column"]]],["preadjust","coldex","+",1]]]],["set.","sink",["`","row"],"rowstart"],["set.","sink",["`","col"],"colstart"],["=","rowdex","rowstart"],["while","false",[["not",["<",["preadjust","rowdex","+",1],[".",[".","sink","rowtokens"],"length"]]]],[".","outqueue","push",[["`","row"]]],["=","outqueue",[".","outqueue","concat",[[".",["deref",[".","sink","rowtokens"],"rowdex"],"splice",[0]]]]]],[".",["deref",[".","sink","rowtokens"],"rowdex"],"splice",[["+","rowstart",1]]],"outqueue"],["=","rowstart",[".","sink","row"]],["=","colstart",[".","sink","col"]],[["eval","outputter"],["dequeue"]]],["function","putokens",["tokens","false","item"],["for",["let","lambda",["iter"],["=","iter",["iterate","tokens",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],[[["eq","item",["`","row"]],["nextline"]],[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"push",["item"]],["set.","sink",["`","col"],["+",[".","item","column"],["length",[".","item","str"]]]]]]]]],["function","tokenmark","false",{dictionary:{$rowstart:[".","sink","row"],$colstart:[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"length"],$col:[".","sink","col"],$incol:[".","sink","incol"]}}],["function","tokentruncate",["mark"],[".",["deref",[".","sink","rowtokens"],[".","mark","rowstart"]],"splice",[[".","mark","colstart"]]],[".",[".","sink","rowtokens"],"splice",[["+",[".","mark","rowstart"],1]]],["set.","sink",["`","row"],[".","mark","rowstart"]],["set.","sink",["`","col"],[".","mark","col"]],["set.","sink",["`","incol"],[".","mark","incol"]]],["function","exarray",["arr","false","adex","separator"],[[["deref",[".","sink","nocycles"],"arr"],["mktokil","$[","$<cyclic>","$]"],["return"]]],["set[",[".","sink","nocycles"],"arr","true"],["=","adex",0],["=","separator","space"],["while","false",[["not",["<","adex",[".","arr","length"]]]],[[["dictionary",["deref","arr",["postadjust","adex","+",1]]],["=","separator","$\n"],["break"]]]],["mktok","$["],[[["==","separator","$\n"],["nextline"],["indentadj",1]]],["=","adex",0],["while","false",[["not",["<","adex",[".","arr","length"]]]],[[[">=","adex",[".","options","maxElements"]],["mktok","$<...>"],["break"]]],[[[">","adex",0],["mktokil","$,","separator"]]],["exoutput",["deref","arr",["postadjust","adex","+",1]],"arr",0,0]],[[["==","separator","$\n"],["indentadj",-1]]],["mktok","$]"],["set[",[".","sink","nocycles"],"arr","false"]],["function","exdictionary",["dict","false","depths","dictmap","completed"],["function","render",["whitespace","keypad","false","mark","startrow","notfirst","keylen","keystr","savehang","key"],["=","mark",["tokenmark"]],["=","startrow",[".","sink","row"]],["=","savehang",[".","sink","hangdent"]],["set.","sink",["`","hangdent"],0],["set.","sink",["`","endprocNL"],"false"],[[["identity","keypad"],["mktok","{","$\n"]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],[[["||",["eq",["typeof",["deref","dict","key"]],"dictionary"],["eq",["typeof",["deref","dict","key"]],"array"]],["tokentruncate","mark"],["return","false"]]]]]],["mktok","{"]],[[["identity","keypad"],["indentadj",1]]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["=","keystr","key"],[[["&&",[".","options","quoted"],[".",[".","sink","quoteDict"],"test",["keystr"]]],["=","keystr",[".",'$"',"concat",["keystr",'$"']]]]],["=","keylen",["length","keystr"]],[[["&&","keypad",[">","keypad","keylen"]],["=","keystr",[".","keystr","concat",[[".","space","repeat",[["-","keypad","keylen"]]]]]]]],[[["identity","notfirst"],["mktokil","$,","whitespace"]],[[">",[".","sink","col"],[".","sink","incol"]],["mktokil","space"]]],["=","notfirst","true"],["mktokil","keystr","$:","space"],[[["eq",["typeof",["deref","dict","key"]],["typeof","dict"]],[["||",["deref",[".","sink","nocycles"],["deref","dict","key"]],["deref","dictmap",["deref","dict","key"]]],["mktokil","${","$<cyclic>","$}"]],["set[","dictmap",["deref","dict","key"],"true"],["outputdict",["deref","dict","key"],["+","depth",1]],["set[","dictmap",["deref","dict","key"],"false"]],["exoutput",["deref","dict","key"],"dict",0,0]],[[["&&",["not","keypad"],["!=",[".","sink","row"],"startrow"]],["tokentruncate","mark"],["return","false"]]]]]],[[["identity","keypad"],["indentadj",-1]]],["mktokil","space",["`","}"]],["set.","sink",["`","endprocNL"],"true"],["set.","sink",["`","hangdent"],"savehang"],["return","true"]],["function","computeMaxKeyLengths",["dict","depth","false","key","keylen"],[[["deref","dictmap","dict"],["return"]]],[[[">",["preadjust","completed","+",1],[".","options","maxElements"]],["return"]]],["set[","dictmap","dict","true"],[[["not",["deref","depths","depth"]],["set[","depths","depth",0]]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["=","keylen",["length","key"]],[[["<",["deref","depths","depth"],"keylen"],["set[","depths","depth","keylen"]]],[[["eq",["typeof",["deref","dict","key"]],["typeof","dict"]],["computeMaxKeyLengths",["deref","dict","key"],["+","depth",1]]]]]]],[[[">",["deref","depths","depth"],[".","options","maxKeyLength"]],["set[","depths","depth",[".","options","maxKeyLength"]]]],["set[","dictmap","dict","false"]],["function&","outputdict",["dict","depth","false","keypad"],[[[">",["preadjust","completed","+",1],[".","options","maxElements"]],["mktok","$<...>"],["return"]]],["=","keypad",["deref","depths","depth"]],[[["&&",[">","depth",0],["<","keypad",["+",["deref","depths",["-","depth",1]],[".","options","indentSize"]]]],["=","keypad",["+",["deref","depths",["-","depth",1]],[".","options","indentSize"]]]]],[["not",["render","$ "]],["render","$\n","keypad"]]],[[["deref",[".","sink","nocycles"],"dict"],["mktokil","${","$<cyclic>","$}"],["return","true"]]],["set[",[".","sink","nocycles"],"dict","true"],["=","depths",{array:[]}],["=","dictmap",["new","weakmap"]],["=","completed",0],["computeMaxKeyLengths","dict",0],["=","completed",0],["set[","dictmap","dict","true"],["outputdict","dict",0],["set[",[".","sink","nocycles"],"dict","false"],"true"],["function","exobject",["obj","false","str"],["=","str",["deref",["@","obj"],["`","\\.tostring"],["obj"]]],[[["not","str"],["=","str",["tostring","obj"]]]],["mktok","str"]],["function","exlist",["lex1","owner","paramlist","false","ex1","xpar","savetup","savenest"],["=","savetup","owntuple"],["=","savenest",[".","sink","procnesting"]],["set.","sink",["`","procnesting"],0],[[["identity","owner"],["=","owntuple","owner"]]],[[["empty","lex1"],["mktokil","$(","$)"]],["=","xpar","lex1"],["=","ex1",["pop","lex1"]],["mktok","$("],["preadjust",[".","sink","hangdent"],"+",1],["loop","false",[[["&&","paramlist",["not","ex1"]],["=","ex1","local"]]],["exoutput","ex1","xpar"],[[["empty","lex1"],[[["identity","lex1"],["mktokil","space","$.","space","lex1"]]],["break"]]],[[["eq","ex1","local"],["mktokil","space"]],["mktokil","$,","space"]],["=","xpar","lex1"],["=","ex1",["pop","lex1"]]],["preadjust",[".","sink","hangdent"],"-",1],["mktokil","$)"]],["set.","sink",["`","procnesting"],"savenest"],["=","owntuple","savetup"]],["function","exannotation",["lex1"],["exoutput",["cadar","lex1"],"owntuple",0,["deref",[".","grammar","left"],["`","@"]]],["mktok",["`","@"]],[["==",["caadr","lex1"],"`"],["exoutput",["cadadr","lex1"],"owntuple",["deref",[".","grammar","right"],["`","@"]],0]],["mktok","$["],["exoutput",["second","lex1"],"owntuple",0,0],["mktok","$]"]],["function&","exoutput",["expr","owntuple","rbp","lbp","spaceout","false","ex1","lop1","lex1"],[[["not","rbp"],["=","rbp",0]]],[[["not","lbp"],["=","lbp",0]]],[["atom","expr"],[["dictionary","expr"],["exdictionary","expr"]],[["array","expr"],["exarray","expr"]],[["object","expr"],["exobject","expr"]],[["and",["float","expr"],["or",["positive",[".","options","point"]],["zero",[".","options","point"]]]],["mktok",[".","expr","toFixed",["point"]]]],[["and",["negative","expr"],[">","lbp",[".","grammar","rightSign"]]],["mktok","$(",["tostring","expr"],"$)"]],[["symbol","expr"],["mktok","expr"]],[[".","options","quoted"],["mktok",["tostring","expr",{dictionary:{$quote:"true"}}]]],["mktok",["tostring","expr"]]],["=","owntuple","expr"],["=","lop1",["car","expr"]],["=","lex1",["cdr","expr"]],[["and","lex1",["empty","lex1"]],[[".","options","quoted"],["mktok",["tostring","expr",{dictionary:{$quote:"true"}}]]],["mktok",["tostring","expr"]]],[["not",["symbol","lop1"]],["exlist","expr"]],[["apply",["deref","formatter","lop1"],["list","lex1","lop1","rbp","lbp","hookif"]]],[["and",["not",["deref",[".","grammar","left"],"lop1"]],["not",["deref",[".","grammar","right"],"lop1"]],["not",["getproc","lop1"]]],["exlist","expr"]],[["empty","lex1"],["mktok","lop1"],["mktokil","$(","$)"]],[["==","lop1","quote"],["mktok","lop1"],["exoutput","ex1","owntuple",[".","grammar","highBind"],0]],["=","ex1",["pop","lex1"]],[["empty","lex1"],["parens","$("],[["deref",[".","grammar","right"],"lop1"],["mktok","lop1"],["spaces","lop1"],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"]],[["deref",[".","grammar","left"],"lop1"],["exoutput","ex1","owntuple",0,["deref",[".","grammar","left"],"lop1"]],["spaces","lop1"],["mktok","lop1"],["parens","$)"]],["mktok","lop1"],["exlist",["cdr","expr"],"expr"]],[["and",["deref",[".","grammar","right"],"lop1"],["deref",[".","grammar","left"],"lop1"]],["parens","$("],["exoutput","ex1","owntuple",0,["deref",[".","grammar","left"],"lop1"]],["loop","false",["=","ex1",["pop","lex1"]],["spaces","lop1"],["mktok","lop1"],["spaces","lop1"],[["empty","lex1"]],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],["deref",[".","grammar","left"],"lop1"]]],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"]],["mktok","lop1"],["exlist",["cdr","expr"],"expr"]],["function&","exbody",["upbody","inloop","nobrace","false","startin","lastitem"],["function","debugExbody","args",[["identity","false"],["apply",[".",[".","Naan","debug"],"debuglog"],"args"]]],["function","braceOpen","false",[[[".","options","compact"],["mktokil","space","${"]],["nextline"],["mktok","${"]],["indentadj",1]],["function","braceClose",["goleft"],["indentadj",-1],[["&&",["and",[".","options","compact"],["not","goleft"]],[">",[".","sink","incol"],"startin"]],["mktokil","space","$}"]],["nextline"],["mktok","$}"]],["function","mkiftest",["test","didif"],["nextline"],["preadjust",[".","sink","hangdent"],"+",1],[[["==","test",["`",["identity","true"]]],["mktok","test","$else"]],[[["identity","didif"],["mktok","test","$else if","space"]],["mktok","test","$if","space"]],[["==",["car","test"],["`","identity"]],["exoutput",["second","test"],"test",0,0,"true"]],["exoutput","test","test",0,0,"true"]],["preadjust",[".","sink","hangdent"],"-",1]],["function","mkindented",["upbody","inloop","elseafter"],[["||",[">=",["length",["cdr","upbody"]],2],["&&",["atom",["caar","upbody"]],[">=",["length","upbody"],2]],["&&","upbody","inloop"],["&&","elseafter",["tuple",["car","upbody"]],["tuple",["caar","upbody"]]],["dictionary",["car","upbody"]]],["debugExbody","$mkindented 0","upbody","$|","inloop","$|","elseafter"],["braceOpen"],["mkitems","upbody","false","false"],[[["identity","inloop"],["nextline"],["mktok","$break"]]],["braceClose"]],["debugExbody","$mkindented 1","upbody","$|","inloop","$|","elseafter"],["indentadj",1],["mkitems","upbody","false","false"],[[["identity","inloop"],["mktokil","space","$break"]],[["not","upbody"],["mktokil","space","${ }"]]],["indentadj",-1]],["function","mkitems",["upbody","didif","inloop","false","item","fitem","ffitem","fffitem"],[["empty","upbody"]],["set.",["deref",[".","sink","tuplemap"],"upbody"],["`","bp"],"true"],["=","item",["car","upbody"]],["=","fitem",["car","item"]],["=","ffitem",["car","fitem"]],["=","fffitem",["car","ffitem"]],["debugExbody","$mkitems 0","item","$|","fitem","$|","ffitem","$|","fffitem","$>",["cdr","upbody"]],[[["and","didif",["or",["atom","item"],["atom","fitem"],["and",["not",["atom","ffitem"]],["atom","fffitem"]]]],["debugExbody","$mkitems 1","didif"],["nextline"],["mktok","$else"],["mkindented","upbody","false",["&&",["not",["atom","item"]],["not",["atom","fitem"]]]],["=","upbody","false"]],[["or",["atom","item"],["atom","fitem"]],["debugExbody","$mkitems 2"],[[["&&","lastitem",["array","item"]],["mktok","$,"]]],["nextline"],["exoutput","item","upbody",0,0,"true"]],[["atom","ffitem"],["debugExbody","$mkitems 3","didif","inloop",["atom",["cddr","item"]],["tuple",["cdr","upbody"]],["atom",["caaadr","upbody"]]],["mkiftest",["car","item"],"didif"],["mkindented",["cdr","item"],"inloop",["&&",["atom",["cddr","item"]],["tuple",["cdr","upbody"]],["atom",["caaadr","upbody"]]]],["=","didif",["not","inloop"]]],["mkiftest",["caar","item"],"didif"],["debugExbody","$mkitems 4",["cdar","item"],"$|",["cadr","item"],"$|",["caadr","item"]],["mkindented",["cdar","item"],"false",["tuple",["&&",["caaar","item"],["tuple",["cadr","item"]]]]],["mkitems",["cdr","item"],"true","false"],["=","didif","false"]],["=","lastitem","item"],["mkitems",["cdr","upbody"],"didif","inloop"]],["=","startin",[".","sink","incol"]],["debugExbody","$=====","upbody","nobrace"],[["identity","nobrace"],["indentadj",1],["mkitems","upbody","false","inloop"],["indentadj",-1]],["braceOpen"],["mkitems","upbody","false","inloop"],["braceClose",["&&",["==",[".","sink","procnesting"],1],[".","sink","endprocNL"]]]],["=","hookif",{dictionary:{$parens:"parens",$spaces:"spaces",$mktok:"mktok",$mktokil:"mktokil",$nextline:"nextline",$indentadj:"indentadj",$grammar:"grammar",$exlist:"exlist",$exannotation:"exannotation",$exoutput:["function","lambda",["expr","owner","rbp","lbp","spaceout"],[[["not","owner"],["=","owner","owntuple"]]],["exoutput","expr","tuple","rbp","lbp","spaceout"]],$exbody:["function","lambda",["upbody","inloop","nobrace"],["preadjust",[".","sink","procnesting"],"+",1],["exbody","upbody","inloop","nobrace"],["preadjust",[".","sink","procnesting"],"-",1]]}}],["function","uhookproc",["lex1","proctype","false","fname","fbind","parms"],["preadjust",[".","sink","procnesting"],"+",1],["=","fname",["car","lex1"]],[[["&&",["not",[".","options","noComments"]],["not",[".","sink","maproot"]],["deref",["@","fname"],["`","\\.sourcemap"]]],["set.","sink",["`","maproot"],["cons","proctype","lex1"]]]],["=","fbind","lex1"],["mktok",["tostring","proctype",{dictionary:{$noquote:"true"}}]],["mktok","space"],[[["not",["lambda","fname"]],["exoutput","fname","lex1",0,0,"true"]]],["=","parms",["cadr","fbind"]],[[["identity","parms"],[["atom","parms"],["mktok","space","parms"]],["exlist","parms",["cdr","fbind"],"true"]],["mktok","$(","$)"]],["exbody",["cddr","fbind"]],[[["deref",["@","fname"],["`","\\.lingoInit"]],["mktok","$(","$)"]]],[[["and",[">",[".","sink","procnesting"],1],[".","sink","endprocNL"]],["nextline"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhook`",["lex1","lop1","false","ex1"],["parens","$("],["mktok","lop1"],["=","ex1",["car","lex1"]],[[["atom","ex1"],["exoutput","ex1","owntuple",0,0]],["exlist","ex1"]],["parens","$)"],"true"],["function","uhook=",["lex1","lop1"],["parens","$("],[[["tuple",["car","lex1"]],["mktok","quote"]]],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","space","lop1","space"],["exoutput",["second","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0,"true"],["parens","$)"],"true"],["function","uhookpreadjust",["lex1","lop1","false","target","adjuster","value"],["parens","$("],["=","target",["car","lex1"]],["=","adjuster",["second","lex1"]],["=","value",["third","lex1"]],[[["==","value",1],["mktok","adjuster","adjuster"],["exoutput","target","owntuple",0,["deref",[".","grammar","right"],"adjuster"]]],["exoutput","target","owntuple",0,["deref",[".","grammar","left"],["`","="]]],["mktok","space","adjuster",["`","="],"space"],["exoutput","value","expr",["deref",[".","grammar","right"],["`","="]],0]],["parens","$)"],"true"],["function","uhookpostadjust",["lex1","lop1","false","target","adjuster","value"],["=","target",["car","lex1"]],["=","adjuster",["second","lex1"]],["=","value",["third","lex1"]],[["==","value",1],["parens","$("],["exoutput","target","owntuple",0,["deref",[".","grammar","right"],"adjuster"]],["mktok","adjuster","adjuster"],["parens","$)"],"true"]],["function","uhookbreco",["lex1","lop1"],[["identity","lex1"],["mktok","lop1","space","$:",["tostring",["car","lex1"],{dictionary:{$quote:"true",$nonamespace:"true"}}]]],["mktok","lop1"],"true"],["function","uhookreturn",["lex1","lop1"],[["identity","lex1"],["mktok","lop1","space","$("],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","$)"]],["mktok","lop1"],"true"],["function","uhookcond",["lex1","lop1"],["mktok","lop1","$("],["preadjust",[".","sink","procnesting"],"+",1],["exbody","lex1"],["preadjust",[".","sink","procnesting"],"-",1],["mktok","$)"],"true"],["function","uhookloop",["lex1","lop1","false","looptag"],["=","looptag",["pop","lex1"]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1"]],["preadjust",[".","sink","procnesting"],"+",1],["exbody","lex1","true",["not",["cdr","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookwhile",["lex1","lop1","false","flex","looptag"],["=","looptag",["pop","lex1"]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1","space"]],["=","flex",["car","lex1"]],[[["==",["caar","flex"],["`","not"]],["exoutput",["cadar","flex"],"owntuple",0,0,"true"]],["exoutput","flex","owntuple",0,0,"true"]],["preadjust",[".","sink","procnesting"],"+",1],["exbody",["cdr","lex1"],"true",["not",["cddr","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookfor",["lex1","lop1","false","flex","looptag","targex","varex","upbody"],["=","flex",["car","lex1"]],["=","looptag",[".",[".","flex",4],1]],["=","targex",[".",[".",[".","flex",3],2],1]],["=","varex",[".",[".",[".",[".","flex",3],2],2],1]],["=","upbody",[".",[".","flex",4],-4]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1","space"]],["exoutput","varex","owntuple",0,0,"true"],["mktok","space","$in","space"],["exoutput","targex","owntuple",0,0,"true"],["preadjust",[".","sink","procnesting"],"+",1],["exbody","upbody","true",["not",["cdr","upbody"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookcall",["lex1","lop1","false","callee"],["=","callee",["car","lex1"]],["set.","sink",["`","endprocNL"],"false"],["preadjust",[".","sink","procnesting"],"+",1],["lprAdjust","uhookProc",1],[[["procedure","callee"],["exoutput","callee","owntuple",0,0],["mktokil","space","$("]],["mktokil","lop1","$("],["exoutput","callee","owntuple",0,0],[["not",["empty",["cdr","lex1"]]],["mktok","$,","space"]]],["set.","sink",["`","endprocNL"],"true"],["=","lex1",["cdr","lex1"]],["loop","false",[["empty","lex1"]],["exoutput",["pop","lex1"],"owntuple",0,0],[["empty","lex1"]],["mktok","$,","space"]],["mktokil","$)"],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookquotient",["lex1","lop1","false","op"],[[["==",["deref",[".","grammar","infix"],["`","/"]],["deref",[".","grammar","infix"],["`","/."]]],["=","op",["`","/"]]],["=","op",["`","/."]]],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","space","op","space"],["exoutput",["second","lex1"],"owntuple",["deref",[".","grammar","right"],"op"],0,"true"],["parens","$)"],"true"],["function&","uhookcatch",["lex1","lop1"],["set.","sink",["`","endprocNL"],"false"],["mktok","$try"],["preadjust",[".","sink","procnesting"],"+",1],["exbody",["car","lex1"]],[[["not",["second","lex1"]]],["nextline"],["mktok","$catch"],["exbody",["second","lex1"]]],[[["not",["third","lex1"]]],["nextline"],["mktok","$finally"],["exbody",["third","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],["set.","sink",["`","endprocNL"],"true"],"true"],["function","uhook.",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"lop1"]],["mktok",["`","."]],["exoutput",["second","lex1"],"owntuple",0,0],[[["not",["empty",["cddr","lex1"]]],["exlist",["caddr","lex1"]]]],["parens","$)"],"true"],["function","uhookset.",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"lop1"]],["mktok",["`","."]],["exoutput",["cadadr","lex1"],"owntuple",0,0],["mktok","space",["`","="],"space"],["exoutput",["third","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"],"true"],["function","uhookset[",["lex1","lop1","false","expr"],["parens","$("],[[["==",["caar","lex1"],["`","@"]],["exannotation","lex1"]],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"$["]],["mktok","$["],["=","expr",["second","lex1"]],[[["||",["empty","expr"],["getproc",["car","expr"]]],["exoutput","expr","owntuple",0,0]],["loop","false",["exoutput",["pop","expr"],"owntuple",0,0],[["empty","expr"]],["mktok","$,"]]],["mktok","$]"]],["mktok","space",["`","="],"space"],["exoutput",["third","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"],"true"],["function","uhookderef",["lex1","lop1","false","expr"],["parens","$("],[[["==",["caar","lex1"],["`","@"]],["exannotation","lex1"]],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"$["]],["mktok","$["],["=","expr",["second","lex1"]],[[["==","lop1",["`","deref"]],["exoutput","expr","owntuple",0,0]],["loop","false",["exoutput",["pop","expr"],"owntuple",0,0],[["atom","expr"]],["mktok","$,"]]],["mktok","$]"]],[[["not",["empty",["cddr","lex1"]]],["exlist",["caddr","lex1"]]]],["parens","$)"],"true"],["function","uhookref*",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,0],["mktok","lop1"],["parens","$)"],"true"],["function","uhooknot",["lex1","lop1"],[[["==",["caar","lex1"],["!",["`","="]]],["return",["uhook=",["cdar","lex1"],["!",["`","="]]]]]],["parens","$("],["mktok","$!"],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","right"],"lop1"]],["parens","$)"],"true"],["function","uhookbang",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","postleft"],"lop1"]],["mktok","$!"],["parens","$)"],"true"],["function","commentInject",["comments","false","newrows","readx","added","acom","type","textlines","text","col"],["function","addcol",["row","str","col"],[".","row","push",[{dictionary:{$str:"str",$column:"col"}}]],"row"],["=","newrows",{array:[]}],["=","readx",0],["=","added",0],["for",["let","lambda",["iter"],["=","iter",["iterate","comments",["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["=","type",[".","acom",2]],["=","col",[".","acom",1]],["=","textlines",[".",[".","acom",3],"split",["$\n"]]],["while","false",[["not",[">",[".","textlines","length"],0]]],["=","text",[".","textlines","shift","false"]],[[["not",[".","acom",0]],[".","newrows","push",[["addcol",{array:[]},"text",[".","acom",1]]]],["preadjust","added","+",1]],["while","false",[["not",["&&",["<",[".","newrows","length"],["+",[".","acom",0],"added"]],["<","readx",[".",[".","sink","rowtokens"],"length"]]]]],[".","newrows","push",[["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]]]]],[[["||",["<=","type",0],[">=","readx",[".",[".","sink","rowtokens"],"length"]]],[".","newrows","push",[["addcol",{array:[]},"text","col"]]],["preadjust","added","+",1]],[[["<","col",[".","options","commentCol"]],["=","col",[".","options","commentCol"]]]],[".","newrows","push",[["addcol",["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]],"text","col"]]],["=","type",0]]]]]]],["while","false",[["not",["<","readx",[".",[".","sink","rowtokens"],"length"]]]],[".","newrows","push",[["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]]]]],["set.","sink",["`","rowtokens"],"newrows"],["set.","sink",["`","row"],[".","newrows","length"]]],["function","commentMap",["false","locmap","nodecount","sourcemap","output","acom","nodeloc"],["function","remap",["expr","nodeloc"],[["atom","expr"],["preadjust","nodecount","+",1],[".","locmap","push",[[".","nodeloc","first"]]]],["=","nodeloc",["deref",[".","sink","tuplemap"],"expr"]],["remap",["car","expr"],"nodeloc"],[["cdr","expr"],["remap",["cdr","expr"],"nodeloc"]]],[[["not",[".","sink","maproot"]],["return","false"]]],["=","locmap",{array:[]}],["=","nodecount",0],["remap",[".","sink","maproot"]],["=","sourcemap",["deref",["@",[".",[".","sink","maproot"],1]],["`","\\.sourcemap"]]],[[["!=",[".","sourcemap","count"],"nodecount"],["debuglog",[".","$sourcemap mismatch in ","concat",[[".",[".","sink","maproot"],1],"$: "]],"nodecount","$vs",[".","sourcemap","count"]]]],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sourcemap","comments"],["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["=","nodeloc",["deref","locmap",[".","acom",0]]],[".","output","push",[["list",[".","nodeloc",0],[".","nodeloc",1],[".","acom",1],[".","acom",2]]]]]]],"output"],["function","indextuples",["false","remaining"],["function","enqueue",["expr","false","node"],[["atom","expr"],"expr"],["=","node",{dictionary:{$tuple:"expr",$sink:"sink"}}],[".",[".","sink","mirrors"],"push",["node"]],[".","remaining","push",["node"]],["set[",[".","sink","tuplemap"],"expr","node"]],["function","dequeue",["false","node"],["while","false",[["not",[">",[".","remaining","length"],0]]],["=","node",[".","remaining","pop","false"]],["set.","node",["`","car"],["enqueue",["car",[".","node","tuple"]]]],["set.","node",["`","cdr"],["enqueue",["cdr",[".","node","tuple"]]]]]],["=","remaining",{array:[]}],["set.","sink",["`","mirrors"],{array:[]}],["set.","sink",["`","tuplemap"],["new","weakmap"]],["set.","sink",["`","mirroroot"],["enqueue","origexpr"]],["dequeue"]],["function","tuplelocupdate",["false","tuplex","data","rowdex","col","nodemap"],["function","childloc",["node","false","ex1","lex1","loc","retloc"],[[["deref","nodemap","node"],["return",["deref","nodemap","node"]]]],["set[","nodemap","node","true"],["=","lex1","node"],["while","false",[["not",["eq",[".","lex1","sink"],"sink"]]],["=","ex1",[".","lex1","car"]],[[["eq",[".","ex1","sink"],"sink"],["=","loc",["childloc","ex1"]]],["=","loc","false"]],[[["identity","loc"],[[["not",[".","lex1","first"]],["set.","lex1",["`","first"],[".","loc","first"]],["set.","lex1",["`","last"],[".","loc","last"]]],["set.","lex1",["`","first"],["earlier",[".","loc","first"],[".","lex1","first"]]],["set.","lex1",["`","last"],["later",[".","loc","last"],[".","lex1","last"]]]]]],[[["not","retloc"],["=","retloc",{dictionary:{$first:[".","lex1","first"],$last:[".","lex1","last"]}}]],[[[".","lex1","first"],["set.","retloc",["`","first"],["earlier",[".","lex1","first"],[".","retloc","first"]]],["set.","retloc",["`","last"],["later",[".","lex1","last"],[".","retloc","last"]]]]]],["=","lex1",[".","lex1","cdr"]]],["=","lex1","node"],["while","false",[["not",["eq",[".","lex1","sink"],"sink"]]],[[["not",[".","lex1","first"]],["set.","lex1",["`","first"],[".","retloc","first"]],["set.","lex1",["`","last"],[".","retloc","last"]]]],["=","lex1",[".","lex1","cdr"]]],["set[","nodemap","node","retloc"],"retloc"],["=","tuplex",0],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","data",["deref",[".","sink","mirrors"],["postadjust","tuplex","+",1]]],["set.","data",["`","first"],"undefined"]],["=","rowdex",0],["while","false",[["not",["<=","rowdex",[".","sink","row"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowdex"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],["=","data",["deref",[".","sink","tuplemap"],[".","col","tuple"]]],[[["not",[".","data","first"]],["set.","data",["`","first"],["list","rowdex",[".","col","column"]]]]],["set.","data",["`","last"],["list","rowdex",["+",[".","col","column"],["length",[".","col","str"]]]]]]]],["preadjust","rowdex","+",1]],["=","nodemap",["new","weakmap"]],["childloc",[".","sink","mirroroot"]],"true"],["function","indexbps",["false","tuplex","node"],["set.","sink",["`","breaks"],{array:[]}],["=","tuplex",0],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","node",["deref",[".","sink","mirrors"],"tuplex"]],[[[".","node","bp"],[".",[".","sink","breaks"],"push",["node"]]]],["preadjust","tuplex","+",1]],[".",[".","sink","breaks"],"sort",[["function","lambda",["a","b"],["=","compare",["<=>",[".",[".","a","first"],0],[".",[".","b","first"],0]]],[[["==","compare",0],["=","compare",["<=>",[".",[".","a","first"],1],[".",[".","b","first"],1]]]]],"compare"]]]],["function","updatecheck",["false","update","comments"],[[["not",[".","sink","tuplemap"]],["set.","sink",["`","rowtokens"],{array:[{array:[]}]}],["indextuples"],["=","update","true"]]],[[["||",["<",[".",[".","sink","rowtokens"],"length"],1],["&&",["==",[".",[".","sink","rowtokens"],"length"],1],["<",[".",["deref",[".","sink","rowtokens"],0],"length"],1]]],["exoutput","origexpr","origexpr",0,0,"true"]]],[["identity","update"],["tuplelocupdate"],["indexbps"],[[".","sink","maproot"],["=","comments",["commentMap"]],[["identity","comments"],["commentInject","comments"],["tuplelocupdate"]]]]],["set.","unparser",["`","dumptuples"],["function","dumptuples",["false","tuplex","data","bp","mismatch","summary"],["updatecheck"],["=","tuplex",0],["debuglog","$=====tuples====="],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","data",["deref",[".","sink","mirrors"],"tuplex"]],[[["eq",["deref",[".","sink","tuplemap"],[".","data","tuple"]],"data"],["=","mismatch","$"]],["=","mismatch","$mismatch"]],[[[".","data","bp"],["=","bp","$bp"]],["=","bp","$ "]],["=","summary",[".",["tostring",[".","data","tuple"]],"substr",[0,80]]],["debuglog",["prepad","tuplex",4],["prepad",[".","data","first"],9],["prepad",[".","data","last"],9],"bp","mismatch","summary"],["preadjust","tuplex","+",1]]]],["set.","unparser",["`","dumptokens"],["function","dumptokens",["false","rowdex","data","summary","col"],["updatecheck"],["=","rowdex",0],["debuglog","$=====tokens====="],["while","false",[["not",["<=","rowdex",[".","sink","row"]]]],["debuglog","$row","rowdex"],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowdex"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],["=","data",["deref",[".","sink","tuplemap"],[".","col","tuple"]]],["=","summary",[".",["tostring",[".","col","tuple"]],"substr",[0,80]]],["debuglog",["prepad",[".","col","column"],6],["prepad",[".","col","str"],9],"$ ","summary"]]]],["preadjust","rowdex","+",1]]]],["set.","unparser",["`","breakpoints"],["function","breakpoints",["false","result","data"],["updatecheck"],["=","result",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sink","breaks"],["`","data"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","data",[".","iter","$value"]],[".","result","push",[{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]]]],"result"]],["set.","unparser",["`","findbreak"],["function","findbreak",["location","false","data"],["updatecheck"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sink","breaks"],["`","data"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","data",[".","iter","$value"]],[[["&&",["<=",["car","location"],["car",[".","data","first"]]],["||",["not",["second","location"]],["<=",["second","location"],["second",[".","data","first"]]]]],["return",{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]]]]],"false"]],["set.","unparser",["`","findtoken"],["function","findtoken",["location","false","col"],["updatecheck"],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],["car","location"]],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["||",["not",["second","location"]],["&&",[">=",["second","location"],[".","col","column"]],["<",["second","location"],["+",[".","col","column"],["length",[".","col","str"]]]]]],["return",{dictionary:{$first:[".","col","column"],$last:["+",[".","col","column"],["length",[".","col","str"]]],$str:[".","col","str"],$symbol:[".","col","symbol"],$tuple:[".","col","tuple"]}}]]]]]],"false"]],["set.","unparser",["`","findtuple"],["function","findtuple",["expr","false","data"],["updatecheck"],["=","data",["deref",[".","sink","tuplemap"],"expr"]],[["identity","data"],{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]],["set.","unparser",["`","setmarks"],["function","setmarks",["dict","false","mark","marklen"],["set.","sink",["`","maxmarklen"],0],["set.","sink",["`","markdict"],"dict"],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","mark"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","mark",[".","iter","$value"]],["=","marklen",[".",["tostring",["deref","dict","mark"]],"length"]],[[["<",[".","sink","maxmarklen"],"marklen"],["set.","sink",["`","maxmarklen"],"marklen"]]]]]],"dict"]],["set.","unparser",["`","string"],["function","string",["firstloc","lastloc","soptions","false","margin","rowdex","row","col","found","outstr","colpos","lineno","linepad"],["updatecheck"],[[["numeric",[".","soptions","leftMargin"]],["=","margin",[".","space","repeat",[[".","soptions","leftMargin"]]]]],["=","margin","$"]],[[["numeric",[".","soptions","lineNumbers"]],["=","lineno",["toint",[".","soptions","lineNumbers"]]],["=","linepad",["+",["length",["tostring",["+","lineno",[".",[".","sink","rowtokens"],"length"]]]],1]]]],[[["dictionary","firstloc"],["=","lastloc",[".","firstloc","last"]],["=","firstloc",[".","firstloc","first"]]]],[[["identity","firstloc"],[[["not",["apply","numeric","firstloc"]],["return","false"]]],["=","rowdex",["car","firstloc"]],[["identity","lineno"],["preadjust","lineno","+","rowdex"]]],["=","rowdex",0]],["=","found",["not",["&&","firstloc",["second","firstloc"]]]],[[["&&","lastloc",["not",["apply","numeric","lastloc"]]],["return","false"]]],["loop","false",[["||",[">=","rowdex",[".",[".","sink","rowtokens"],"length"]],["&&","lastloc",[">","rowdex",["car","lastloc"]]]]],["=","row",["deref",[".","sink","rowtokens"],"rowdex"]],[[["identity","outstr"],["=","outstr",[".","outstr","concat",["$\n","margin"]]]],["=","outstr","margin"]],[[["identity","lineno"],["=","outstr",[".","outstr","concat",[["prepad","lineno","linepad"],"$ "]]],[[[".","sink","maxmarklen"],[["deref",[".","sink","markdict"],"lineno"],["=","outstr",[".","outstr","concat",[["deref",[".","sink","markdict"],"lineno"],"$ "]]]],["=","outstr",[".","outstr","concat",[[".","space","repeat",[["+",[".","sink","maxmarklen"],1]]]]]]]],["preadjust","lineno","+",1]]],["=","colpos",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["not","found"],["=","colpos",["second","firstloc"]],[[["<=",["+",[".","col","column"],["length",[".","col","str"]]],["second","firstloc"]],["continue"]]],["=","found","true"]]],[["&&","lastloc",["second","lastloc"],[">=","rowdex",["car","lastloc"]],[">=",[".","col","column"],["second","lastloc"]]]],[[["<","colpos",[".","col","column"]],["=","outstr",[".","outstr","concat",[[".","space","repeat",[["-",[".","col","column"],"colpos"]]],[".","col","str"]]]]],["=","outstr",[".","outstr","concat",[[".","col","str"]]]]],["=","colpos",["+",[".","col","column"],["length",[".","col","str"]]]]]]],["preadjust","rowdex","+",1]],"outstr"]],"unparser"]),e._AddPropertyList("LingoUnparseInit",[["$.lingoInit","true"]]),e._SetBindingList("LingoUnparseInit",["function","LingoUnparseInit",["false","manifest"],["=","manifest",["`",["LingoPrinter","LingoUnparser","LingoUnparseInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$Unparse",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],[".",[".","Naan","module"],"letinherit",["$Lib"]],["set.",[".","modobj","exports"],["`","Printer"],"LingoPrinter"],["set.",[".","modobj","exports"],["`","LingoUnparser"],"LingoUnparser"]]]]]),e._Execute(["LingoUnparseInit"]),e._SetNamespace(t.slice(1),!0),e._SetNamespace("CLI"),e._Execute([".",[".","Naan","module"],"letinherit",["$Lang_Lingo"]]),e._SetBindingList("Utils",["closure","Utils",["options","false","utils","registry","upcache"],["=","utils",["new","object","this"]],[[["not","options"],["=","options",{dictionary:{}}]]],[[["not",[".","options","cacheSize"]],["set.","options",["`","cacheSize"],50]]],["=","registry",[".",[".",[".",["modlist"],"Lib"],"exports"],"Registry"]],["set.","utils",["`","calculateDialects"],["function","calculateDialects",["expr","false","nsmap","nslist","ns","dialect","langs"],["function","travProc",["trav"],[[["&&",["symbol","trav"],"trav"],[[["not",["deref","nsmap",[".","trav","namespace"]]],["push",[".","trav","namespace"],"nslist"],["set[","nsmap",[".","trav","namespace"],"true"]]],["return"]]],["while","false",[["not",["tuple","trav"]]],["travProc",["car","trav"]],["=","trav",["cdr","trav"]]]],["=","nsmap",["new","weakmap"]],["travProc","expr"],["for",["let","lambda",["iter"],["=","iter",["iterate","nslist",["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],["=","dialect",[".","registry","findNamespace",["ns"]]],[[["&&","dialect",["not",["member","dialect","langs"]]],["push","dialect","langs"]]]]]],"langs"]],["set.","utils",["`","unparseInfo"],["function","unparseInfo",["expr","false","up"],[[["not","upcache"],["=","upcache",["new","nonce"]],["set.","upcache",["`","map"],["new","weakmap"]],["set.","upcache",["`","lru"],{array:[]}]],["=","up",["deref",[".","upcache","map"],"expr"]],[["&&","up",["!==",["deref","lru",["-",[".","lru","length"],1]],"up"]],["set.","upcache",["`","lru"],[".",[".","upcache","lru"],"filter",[["function","lambda",["entry"],["!==","entry","up"]]]]],[".",[".","upcache","lru"],"push",["up"]]]],[[["not","up"],["=","up",{dictionary:{$expression:"expr",$dialects:[".","utils","calculateDialects",["expr"]]}}],["set.","up",["`","dialect"],[".",[".","up","dialects"],0]],[[["not",[".","up","dialect"]],["set.","up",["`","dialect"],[".","registry","findName",[[".",[".","registry","dialects","false"],0]]]]]],[[[".","up","dialect"],["set.","up",["`","unparser"],[".",[".","up","dialect"],"unparse",["expr"]]]]],["set[",[".","upcache","map"],"expr","up"],[".",[".","upcache","lru"],"push",["up"]],[[">",[".",[".","upcache","lru"],"length"],[".","options","cacheSize"]],["set[",[".","upcache","map"],[".",[".",[".","upcache","lru"],"shift","false"],"expression"],"undefined"]]]],"up"]],["set.","utils",["`","unparser"],["function","unparser",["expr"],[".",["unparseInfo","expr"],"unparser"]]],["set.","utils",["`","sourcelist"],["function","sourcelist",["procdef","start","end","marks","false","up"],["=","up",[".","utils","unparser",["procdef"]]],[".","up","setmarks",["marks"]],[[["identity","start"],["=","start",["list",["-","start",1]]],[["identity","end"],["=","end",["list",["-","end",1]]]],["=","end","start"]]],[".","up","string",["start","end",{dictionary:{$lineNumbers:1}}]]]],["set.","utils",["`","symns"],["function","symns",["name","ns"],[[["symbol","name"],["return","name"]]],[[["not","ns"],["=","ns",[".",["nsactive"],0]]]],[".","ns","lookup",["name"]]]],["set.","utils",["`","findns"],["function","findns",["nstr","false","ns"],[[["not",["string","nstr"]],["return","nstr"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["nsactive"],["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],[[["==","nstr",["namespace","ns"]],["return","ns"]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["nsactive","true"],["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],[[["==","nstr",["namespace","ns"]],["return","ns"]]]]]],"false"]],["set.","utils",["`","makeLocation"],["function","makeLocation",["sym","task","false","start"],[[["identity","task"],["=","tuplespec",[".",[".","utils","unparser",[["getproc","sym"]]],"findtuple",["task"]]],["=","start",["+",[".",[".","tuplespec","first"],0],1]]]],["list",[".",[".","sym","namespace"],"tostring"],"sym","start"]]],["set.","utils",["`","resolveLocation"],["function","resolveLocation",["location","symbols","false","path","procname","procsym","ns","procdef"],["function","pathmatch",["parent","path","false","segment"],[[["empty","path"],["return","parent"]]],["=","segment",["tostring",["pop","path"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",["@","parent"],["`","\\.children"]],["`","child"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","child",[".","iter","$value"]],[[["==",["tostring","child"],"segment"],["return",["pathmatch","child","path"]]]]]]],"false"],["function","findsym",["name"],["for",["let","lambda",["iter"],["=","iter",["iterate","symbols",["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],[[["==","sym","name"],["return","sym"]]]]]],"false"],["=","path",[".","location",1]],[[["symbol","path"],["=","procsym","path"]],[[["tuple","path"],["=","procname",["car","path"]]],["=","procname","path"]],["=","procsym",["findsym","procname"]],[[["not","procsym"],[[".","location",0],[[["string",[".","location",0]],["=","ns",[".","utils","findns",[[".","location",0]]]]],["=","ns",[".","location",0]]],["=","procsym",[".","utils","symns",["procname","ns"]]]],["=","procsym",["interned","procname"]]]],[["tuple","path"],["=","procsym",["pathmatch","procsym",["cdr","path"]]]]],["=","procdef",["getproc","procsym"]],[[["||",["not",["tuple","procdef"]],["not",["cdddr","procdef"]]],["=","procdef","false"]]],"procdef"]],["set.","utils",["`","breakLocation"],["function","breakLocation",["location","symbols","false","procdef"],["=","procdef",[".","utils","resolveLocation",["location","symbols"]]],[[["not","procdef"],["return"]]],[[".","location",2],[".",[".",[".","utils","unparser",["procdef"]],"findbreak",[["list",["-",[".","location",2],1]]]],"tuple"]],["cdddr","procdef"]]],["set.","utils",["`","locationString"],["function","locationString",["location","false","output"],[[["symbol",[".","location",1]],["=","output",[".","utils","procname",[[".","location",1]]]]],[["tuple",[".","location",1]],["=","output",[".",["new","array",[".","location",1]],"join",["$."]]]],["=","output",["tostring",[".","location",1]]]],[[[".","location",0],["=","output",[".",[".","location",0],"concat",["$::","output"]]]]],[[[".","location",2],["=","output",[".","output","concat",["$:",[".","location",2]]]]]],[[[".","location",3],["=","output",[".","output","concat",["$:",[".","location",3]]]]]],"output"]],["set.","utils",["`","alignColumns"],["function","alignColumns",["lex1","widths","false","ex1"],["function","calcrow",["row","false","col","coldex"],["function","cf",["field","prev","false","width"],["=","width",[".",["tostring","field"],"length"]],[[["<","width","prev"],["=","width","prev"]]],"width"],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["not",["deref","widths","coldex"]],["set[","widths","coldex",0]]],["set[","widths","coldex",["cf","col",["deref","widths","coldex"]]],["preadjust","coldex","+",1]]]]],["=","widths",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","lex1",["`","ex1"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ex1",[".","iter","$value"]],["calcrow","ex1"]]]],"widths"]],["set.","utils",["`","proclist"],["function","proclist",["name","false","result"],["while","false",[["not","name"]],["=","result",["cons","name","result"]],["=","name",["deref",["@","name"],["`","\\.parent"]]]],"result"]],["set.","utils",["`","procname"],["function","procname",["name"],[".",[".",[".",["proclist","name"],"toarray"],"map",[["function","lambda",["x"],["tostring","x"]]]],"join",["$."]]]],["set.","utils",["`","procstring"],["function","procstring",["proc","false","output","parm"],[[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$()"]]]]],[[["atom",[".","proc",2]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$ ",[".","proc",2]]]]]],["=","output",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",["parm","$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","utils",["`","callstring"],["function","callstring",["proc","dons","false","output","parm","name"],["=","name",["procname",[".","proc",1]]],[[["identity","dons"],["=","name",[".",[".",[".",[".","proc",1],"namespace"],"tostring"],"concat",["$::","name"]]]]],[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],[".","name","concat",["$()"]]],[["atom",[".","proc",2]],[".","name","concat",["space",[".","proc",2]]]],["=","output",[".","name","concat",["$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",[["car","parm"],"$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","utils",["`","getnumargs"],["function","getnumargs",["cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\d+)\\s*$"]]]],[[["identity","args"],["return",["toint",["deref","args",1]]]]],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\d+)\\s*:\\s*(\\d+)\\s*$"]]]],[[["identity","args"],["return",["list",["`","range"],["toint",["deref","args",1]],["toint",["deref","args",2]]]]]],["=","args",[".","cmdargs","match",[["RegExp","$\\d+","$g"]]]],[[["identity","args"],["return",["cons",["`","set"],["totuple",[".","args","map",[["function","lambda",["nstr"],["toint","nstr"]]]]]]]]],"false"]],["set.","utils",["`","getnameargs"],["function","getnameargs",["cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s*$"]]]],[[["identity","args"],["return",["deref","args",1]]]],["=","args",[".","cmdargs","match",[["RegExp","$\\S+","$g"]]]],[[["identity","args"],["return",["totuple","args"]]]],"false"]],["set.","utils",["`","getprocarg"],["function","getprocarg",["cmdargs","false","args","procpath"],["=","args",[".","cmdargs","match",[["RegExp","$^(\\S*::)?([^\\s:]+)(:\\s*\\d*)?(:\\s*\\d*)?\\s*$"]]]],[["identity","args"],["=","procpath",[".",["deref","args",2],"split",["$."]]],[[["==",[".","procpath","length"],1],["=","procpath",[".","procpath",0]]],["=","procpath",["totuple","procpath"]]],["list",[".",["deref","args",1],"substring",[0,["-",[".",["deref","args",1],"length"],2]]],"procpath",["toint",[".",[".",["deref","args",3],"substring",[1]],"trim","false"]],["toint",[".",[".",["deref","args",4],"substring",[1]],"trim","false"]]]],"false"]],"utils"]),e._SetBindingList("Info",["closure","Info",["console","false","info"],["=","info",["new","object","this"]],["set.","info",["`","utils"],["Utils"]],["set.","info",["`","options"],{dictionary:{$indent:4,$wrapMinAmount:29,$wrapMaxCol:79,$maxColWidth:60,$maxSymColWidth:40}}],["function","plist",["itemlist","depth","false","item","first","width"],["=","first","$"],["for",["let","lambda",["iter"],["=","iter",["iterate","itemlist",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","width",[".",["tostring","item"],"length"]],[[["&&",[">",["+","width",[".",[".","console","printloc","false"],1]],[".",[".","info","options"],"wrapMaxCol"]],[">=",[".",[".","console","printloc","false"],1],[".",[".","info","options"],"wrapMinAmount"]]],[".","console","print",["$,\n"]],["=","first",[".","space","repeat",[["*",[".",[".","info","options"],"indent"],"depth"]]]]]],[".","console","print",["first","item"]],["=","first","$, "]]]]],["function","prows",["rows","depth","widths","false","coldex","row"],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],"depth"]]]]],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[[">",[".","col","length"],["deref","widths","coldex"]],[".","console","print",[[".","col","substring",[0,["-",["deref","widths","coldex"],1]]],"$…","space"]]],[".","console","print",["col",[".","space","repeat",[["+",["-",["deref","widths","coldex"],[".","col","length"]],1]]]]]],["preadjust","coldex","+",1]]]],[".","console","newline","false"]]]]],["function","printmods",["onemod","false","modid"],["function","pexports",["mod","false","xid","maxwidth"],[".","console","printline",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$exports:"]],["=","maxwidth",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","exports"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[[["<","maxwidth",[".",["tostring","xid"],"length"]],["=","maxwidth",[".",["tostring","xid"],"length"]]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","exports"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],2]]],"xid",[".","space","repeat",[["-","maxwidth",[".",["tostring","xid"],"length"]]]],"$: "]],[[["symbol",["deref",[".","mod","exports"],"xid"]],[".","console","print",[[".",[".","info","utils"],"procstring",[["getproc",["deref",[".","mod","exports"],"xid"]]]]]]],[".","console","print",[["deref",[".","mod","exports"],"xid"]]]],[".","console","newline","false"]]]]],["function","pcomponents",["mod","false","xid","maxwidth"],["printline",[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$components:"],["=","maxwidth",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","components"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[[["<","maxwidth",[".",["tostring","xid"],"length"]],["=","maxwidth",[".",["tostring","xid"],"length"]]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","components"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],2]]],"xid",[".","space","repeat",[["-","maxwidth",[".",["tostring","xid"],"length"]]]],"$: "]],[[["not",[".",["deref",[".","mod","components"],"xid"],"manifest"]],[".","console","print",["$<empty manifest>"]]],["plist",[".",["deref",[".","mod","components"],"xid"],"manifest"],3]],[".","console","newline","false"]]]]],["function","pdetailmod",["mod"],[".","console","printline",[[".","mod","id"]]],[[["\\.*",[".","mod","exports"]],["pexports","mod"]]],[["\\.*",[".","mod","components"]],["pcomponents","mod"]]],["function","psummarymod",["mod"],[".","console","printline",[[".","mod","id"]]],[[["\\.*",[".","mod","exports"]],[".","console","print",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$exports: "]],["plist",[".","mod","exports"],3],[".","console","newline","false"]]],[["\\.*",[".","mod","components"]],[".","console","print",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$components: "]],["plist",[".","mod","components"],3],[".","console","newline","false"]]],[["identity","onemod"],["pdetailmod","onemod"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".",[".","Naan","module"],"modlist","false"],["`","modid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","modid",[".","iter","$value"]],["psummarymod",["deref",[".",[".","Naan","module"],"modlist","false"],"modid"]]]]]],["function","printsyms",["syms","false","sym","rows","row","coldex","nprops","bound","widths"],["=","rows",["cons",["list","$symbol","$namespace","$value","$procedure","$attr."]]],["for",["let","lambda",["iter"],["=","iter",["iterate","syms",["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],["=","bound",["getproc","sym"]],[[["tuple","bound"],["=","bound",["tostring",[".","bound",0]]]],[["not","bound"],["=","bound","$"]]],[[["rest","sym"],["=","nprops",["prepad",["length",["rest","sym"]],3]]],["=","nprops","$"]],["push",["list",["tostring","sym"],["namespace",["namespace","sym"]],["tostring",["car","sym"]],"bound","nprops"],"rows"]]]],["=","widths",[".",[".","info","utils"],"alignColumns",["rows"]]],["=","coldex",0],["while","false",[["not",["<","coldex",[".","widths","length"]]]],[[[">",["deref","widths","coldex"],[".",[".","info","options"],"maxSymColWidth"]],["set[","widths","coldex",[".",[".","info","options"],"maxSymColWidth"]]]],["push",[".","$-","repeat",[["deref","widths",["postadjust","coldex","+",1]]]],"row"]],["=","row",["reverse","row"]],["=","rows",["reverse","rows"]],["=","rows",["cons",["car","rows"],"row",["cdr","rows"]]],["prows","rows",1,"widths"]],["set.","info",["`","setDefloc"],["function","setDefloc",["location"],["set.","info",["`","defloc"],"location"]]],["function","getDefproc",["cmdargs","nochain","false","location","procdef"],[[["||",["not","cmdargs"],["==","cmdargs","$"]],["=","location",[".","info","defloc"]],[["identity","nochain"],["=","location",["list",[".","location",0],["car",[".","location",1]]]]]]],[[["not","location"],["=","location",[".",[".","info","utils"],"getprocarg",["cmdargs"]]]]],[[["not","location"],[".","console","printline",['$error: "',"cmdargs",'$" not a valid procedure specification']],["return"]]],["=","procdef",[".",[".","info","utils"],"resolveLocation",["location"]]],[[["not","procdef"],[[["||",["not","cmdargs"],["==","cmdargs","$"]],["=","cmdargs",[".",[".","info","utils"],"locationString",["location"]]]]],[".","console","printline",['$error: procedure "',"cmdargs",'$" not found']],["return","false"]]],["list","location","procdef"]],["set.","info",["`","infoproc"],["function","infoproc",["cmdargs","false","location","procdef","child"],["=",["location","procdef"],["getDefproc","cmdargs","true"]],[[["not","location"],["return"]]],[".","console","printline",[[".",[".","info","utils"],"locationString",["location"]]]],["=","syms",["reverse",["deref",["@",[".","procdef",1]],["`","\\.children"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","syms",["`","child"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","child",[".","iter","$value"]],["=","procdef",["getproc","child"]],[[["not","procdef"],["continue"]]],[".","console","printline",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],[".",[".","info","utils"],"procstring",["procdef"]]]]]]]]],["set.","info",["`","infolist"],["function","infolist",["cmdargs","false","location","procdef","start","end"],["=",["location","procdef"],["getDefproc","cmdargs"]],[[["not","location"],["return"]]],["=","start",[".","location",2]],["=","end",[".","location",3]],[[["&&","start",["not","end"]],["=","end",["+","start",10]]]],[".","console","print",[[".",[".","info","utils"],"sourcelist",["procdef","start","end"]]]]]],["set.","info",["`","infomod"],["function","infomod",["cmdargs","false","modlist","modid","mod"],[[["not","modlist"],["=","modlist",[".",[".","info","utils"],"getnameargs",["cmdargs"]]]]],[["not","modlist"],["printmods"]],[[["string","modlist"],["=","modlist",["list","modlist"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","modlist",["`","modid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","modid",[".","iter","$value"]],["=","mod",["deref",[".",[".","Naan","module"],"modlist","false"],"modid"]],[[["identity","mod"],["printmods","mod"]],[".","console","printline",['$error: module "',"modid",'$" not found']]]]]]]],["set.","info",["`","infofind"],["function","infofind",["cmdargs","false","args","pattern","ns","found"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s*$"]]]],[[["identity","args"],["=","pattern",["deref","args",1]]],["=","args",[".","cmdargs","match",[["RegExp","$\\S+","$g"]]]],["=","pattern",["deref","args",0]],[["&&",["==",[".","args","length"],3],["==",["deref","args",1],"$in"]],["=","ns",[".",[".","info","utils"],"findns",[["deref","args",2]]]],[["not","ns"],[".","console","printline",['$error: namespace "',["deref","args",2],'$" not found']],["return"]]],[["&&",["==",[".","args","length"],2],["==",["deref","args",1],"$all"]],["=","ns","true"]],[".","console","printline",['$error: cannot interpret "',"cmdargs",'$"']],["return"]],["catch",[[[".","pattern","match",[["RegExp",'$".*"']]],["=","found",["exists",["RegExp",[".","$^","concat",[[".","pattern","slice",[1,-1]],"$$"]]],"ns"]]],["=","found",["exists",["RegExp","pattern","$i"],"ns"]]],[[["identity","true"],[".","console","printline",['$error: regular expression "',"cmdargs",'$" not valid']],["return"]]],"false"],[[["==","ns","true"],["=","locstr","$in all namespaces"]],[["identity","ns"],["=","locstr","$in namespace "]],["=","locstr","$in active namespaces"]],[["identity","found"],[[[">",["length","found"],1],[".","console","print",[["length","found"],"$ symbols "]]],[".","console","print",["$one symbol "]]],[".","console","printline",['$matching "',"pattern",'$" ',"locstr","$:"]],["printsyms","found"]],[".","console","printline",['$no symbols match "',"pattern",'$" ',"locstr"]]]],["set.","info",["`","infofutures"],["function","infofutures",["cmdargs","false","pending","rows","row","item","procstr","waiting","delays","delayms","widths","coldex"],["function","procReference",["procdef","prefix","false","str"],[[["not","prefix"],["=","prefix","$"]]],[["identity","procdef"],[[["&&",["symbol","procdef"],[".","procdef","proc"]],["=","procdef",[".","procdef","proc"]]]],[[["procedure","procdef"],["=","str",[".",[".","info","utils"],"callstring",["procdef","true"]]]],["=","str",[".","procdef","tostring"]]],[".","prefix","concat",["str"]]],"$"],["=","pending",["reverse",["futures"]]],[[["not","pending"],[".","console","printline",["$no futures pending"]],["return"]]],[".","console","printline",[["length","pending"],"$ futures pending:"]],["=","rows",["cons",["list","$start","$count","$delay","$procedures"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","pending",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","procstr",["procReference",[".","item","execute"],"$x "]],["=","waiting",[".","item","waiting"]],[[["==",[".","procstr","length"],0],["=","procstr",["procReference",["pop","waiting"],"$w "]]]],["=","delayms",[".","Math","trunc",[[".","item","delay"]]]],["=","delays",[".","Math","trunc",[["quotient","delayms",1e3]]]],["preadjust","delayms","-",["*","delays",1e3]],["push",["list",[".","item","start"],["prepad",[".","item","count"],4],[".",["tostring","delays"],"concat",["$.",["prepad","delayms",3,"$0"]]],"procstr"],"rows"],["while","false",[["not",["not",["empty","waiting"]]]],["push",["list","$","$","$",["procReference",["pop","waiting"],"$w "]],"rows"]]]]],["=","widths",[".",[".","info","utils"],"alignColumns",["rows"]]],["=","coldex",0],["while","false",[["not",["<","coldex",[".","widths","length"]]]],[[[">",["deref","widths","coldex"],[".",[".","info","options"],"maxColWidth"]],["set[","widths","coldex",[".",[".","info","options"],"maxColWidth"]]]],["push",[".","$-","repeat",[["deref","widths",["postadjust","coldex","+",1]]]],"row"]],["=","row",["reverse","row"]],["=","rows",["reverse","rows"]],["=","rows",["cons",["car","rows"],"row",["cdr","rows"]]],["prows","rows",1,"widths"]]],"info"]),e._AddPropertyList("CliUtilsInit",[["$.lingoInit","true"]]),e._SetBindingList("CliUtilsInit",["function","CliUtilsInit",["false","manifest"],["=","manifest",["`",["CliUtilsPreload","Utils","Info","CliUtilsInit"]]],[".",[".","Naan","module"],"build",["$CLI","$CliUtils",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","Utils"],"Utils"],["set.",[".","modobj","exports"],["`","Info"],"Info"]]]]]),e._Execute(["CliUtilsInit"]),e._SetBindingList("driver_chmods",["function","driver_chmods",["driverob","cmdword","cmdargs"],[".",[".","Naan","module"],"chns",["cmdargs"]]]),e._SetBindingList("driver_debugs",["function","driver_debugs",["driverob","cmdword","cmdargs"],["debugger"]]),e._SetBindingList("driver_helps",["function","driver_helps",["driverob","cmdword","cmdargs","false","text"],["=","text",["call",["let","lambda",["proc"],[["eq","proc","driver_chmods"],"$ /ch[mod] - list modules\n /ch[mod] <module> - change active module\n"],[["eq","proc","driver_debugs"],"$ /d[ebug] - enter debugger\n"],[["eq","proc","driver_helps"],"$ /help - display overall help\n /help <command> - display help for <command>\n"],[["eq","proc","driver_infos"],["return",["driver_infos","driverob","cmdword","$"]]],[["eq","proc","driver_languages"],"$ /dialect - list available dialects\n /dialect <name> - change the CLI dialect\n"],[["eq","proc","driver_list"],"$ /list [<namespace>::]<procedure-name>[.<nestedname>]*[:start[:end]]\n"],[["eq","proc","driver_options"],["return",["driver_options","driverob","cmdword","$"]]],[["eq","proc","driver_quit"],"$ /quit - decamp / depart / absquatulate\n"],"$About Naan: https://github.com/naanlang/naan#readme\n/commands:\n /ch[mod] [<module>] - change active module\n /d[ebug] - enter debugger\n /help [<command>] - help [command]\n /i[nfo] [<topic>] - info on topic\n /op[tions] - view or modify options\n /r[estart] - restart REPL\n /q[uit] - decamp / depart / absquatulate\n"],["deref","driverCmds","cmdargs"]]],[".",[".","driverob","console"],"print",["text"]]]),e._SetBindingList("driver_infos",["function","driver_infos",["driverob","cmdword","cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".",[".","driverob","console"],"print",["$/info topics:\n /i[nfo] (f)ind <regex> - find matching symbols in active namespaces\n <regex> all | in <namespace> ...in all or specified namespace\n /i[nfo] f(u)tures - show pending futures\n /i[nfo] (m)odules [<name> [<name> ...]] - show modules and components\n /i[nfo] (p)rocedure <name> - summarize a procedure\n"]]],[["||",["==","cmdword","$f"],["==","cmdword","$find"]],[".",[".","driverob","info"],"infofind",["cmdargs"]]],[["||",["==","cmdword","$u"],["==","cmdword","$future"],["==","cmdword","$futures"]],[".",[".","driverob","info"],"infofutures",["cmdargs"]]],[["||",["==","cmdword","$m"],["==","cmdword","$module"],["==","cmdword","$modules"]],[".",[".","driverob","info"],"infomod",["cmdargs"]]],[["||",["==","cmdword","$p"],["==","cmdword","$proc"],["==","cmdword","$procedure"]],[".",[".","driverob","info"],"infoproc",["cmdargs"]]],[".",[".","driverob","console"],"printline",["$info topic ","cmdword","$ not implemented"]]]),e._SetBindingList("driver_languages",["function","driver_languages",["driverob","cmdword","cmdargs","false","dialob"],[["==","cmdword","$dialect"],[["!=","cmdargs","$"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",["cmdargs"]]],[["not","dialob"],[".",[".","driverob","console"],"print",["$unregistered language"]]],["set.","driverob",["`","parse"],[".","dialob","parse"]],["set.","driverob",["`","print"],[".","dialob","print"]],["set.","driverob",["`","errorstr"],[".","dialob","parseErrorString"]],["set.","driverob",["`","dialect"],"dialob"],[".",[".","driverob","console"],"print",["$language is now ","cmdargs"]]],[".",[".","driverob","console"],"print",["$dialects: ",[".",[".",[".",[".","Naan","runtimelib"],"dialect","false"],"toarray"],"join",["space"]]]]]]),e._SetBindingList("driver_list",["function","driver_list",["driverob","cmdword","cmdargs"],[".",[".","driverob","info"],"infolist",["cmdargs"]]]),e._SetBindingList("driver_options",["function","driver_options",["driverob","cmdword","cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".",[".","driverob","console"],"print",["$/options:\n /op[tions] [no]prompt - turn on/off command line prompt\n /op[tions] [no]blank - turn on/off blank line before prompt\n"]]],[["==","cmdword","$prompt"],[".","driverob","setOptions",[{dictionary:{$prompt:"true"}}]]],[["==","cmdword","$noprompt"],[".","driverob","setOptions",[{dictionary:{$prompt:"false"}}]]],[["==","cmdword","$blank"],[".","driverob","setOptions",[{dictionary:{$blank:"true"}}]]],[["==","cmdword","$noblank"],[".","driverob","setOptions",[{dictionary:{$blank:"false"}}]]]]),e._SetBindingList("driver_restarts",["function","driver_restarts",["driverob","cmdword","cmdargs"],["return",["`","break"]]]),e._SetBindingList("driver_quits",["function","driver_quits",["driverob","cmdword","cmdargs"],[[".","js","g"],[".",[".","js","r",["$process"]],"exit",[0]]],[[".","js","s"],[".",[".","js","t"],"Terminate","false"]],[[".","js","w"],[".",[".","js","w"],"close","false"]]]),e._SetValue("driverCmds",{dictionary:{$ch:"driver_chmods",$chmod:"driver_chmods",$d:"driver_debugs",$debug:"driver_debugs",$help:"driver_helps",$i:"driver_infos",$info:"driver_infos",$dialect:"driver_languages",$list:"driver_list",$op:"driver_options",$option:"driver_options",$options:"driver_options",$r:"driver_restarts",$restart:"driver_restarts",$q:"driver_quits",$quit:"driver_quits"}}),e._SetBindingList("Driver",["closure","Driver",["welcome","false","driverob","console","dialob","source","emptyflag","endtoken","exop","exconsole"],["=","driverob",["new","object","this"]],["=","driverObject","driverob"],["=","console",["new","textstream"]],["set.","driverob",["`","console"],"console"],["set.","driverob",["`","options"],{dictionary:{$prompt:"false",$blank:"false"}}],["set.","driverob",["`","utils"],["Utils"]],["set.","driverob",["`","info"],["Info","console"]],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],["set.","driverob",["`","parse"],[".","dialob","parse"]],["set.","driverob",["`","print"],[".","dialob","print"]],["set.","driverob",["`","errorstr"],[".","dialob","parseErrorString"]],["set.","driverob",["`","dialect"],"Dialect"],["=","emptyflag",{dictionary:{}}],["function","readline",["false","cc","output"],[[["not",[".","console","readchar"]],["=","console",["new","textstream"]],["set.","driverob",["`","console"],"console"],["set.","driverob",["`","utils"],["Utils"]],["set.","driverob",["`","info"],["Info","console"]]]],["=","output","$"],["while","false",[["not",["=","cc",[".","console","readchar","false"]]]],[".",[".","driverob","waiting"],"reset","false"],["=","output",[".","output","concat",["cc"]]],[[["==","cc","$\n"],["break"]]]],"output"],["function","freshline","false",[["!=",[".",[".","console","printloc","false"],1],0],[".","console","newline","false"]]],["function","driverPrompt",["false","prompt","name"],["freshline"],[[["&&",[".",[".","driverob","options"],"blank"],["!=",["printloc"],["`",[0,0]]]],[".","console","newline","false"]]],["=","name",[".",[".",[".","driverob","dialect"],"name"],"toLowerCase","false"]],["catch",[["=","prompt",["strcat",["namespace",["first",["nsactive"]]],["strcat","$-","name","$> "]]],[".",[".","js","t"],"setPrompt",["prompt"]]],[[["identity","true"],["=","prompt",["strcat","name","$ > "]]]],"false"],"prompt"],["function","parseBuffer",["false","result"],[[["not","source"],["return","emptyflag"]]],["catch",[["=","result",[".","driverob","parse",["source"]]],["=","endtoken",[".","source","tokenlast","false"]],[[["==",[".","source","readready","false"],0],["=","source","false"]]],"result"],[[["and",["==",["tostring",["first","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]],["=","source","false"],"emptyflag"]],"false"]],["function","repl",["false","text","result","expr","cmdword","accum"],["=","exop","false"],["=","exconsole","console"],["loop","repl",[[["not",[".","driverob","waiting"]],["set.","driverob",["`","waiting"],["new","nonce"]]]],["catch",[[[["identity","source"],["freshline"],["=","result",["parseBuffer"]],[["eq","result","emptyflag"],["continue"]]],[["not","exop"],["freshline"],[[["&&",[".",[".","driverob","options"],"prompt"],["==",[".","console","readready","false"],0]],[".","console","print",[["driverPrompt"]]]]],[[["==",[".","console","readready","false"],0],[".",[".","driverob","waiting"],"signal",["true"]]]],["loop","false",["=","text",["readline"]],[[[">",[".","console","readready","false"],0],["while","false",[["not",[">",[".","console","readready","false"],0]]],["=","text",[".","text","concat",[[".","console","readchar","false"]]]]],["=","source",["new","textstream","text"]],["continue","repl"]]],["=","expr",[".","text","match",[["RegExp","$^/([A-Za-z_]+)\\s*(.*)"]]]],[[["identity","expr"],["=","cmdword",["deref","expr",1]],[[["deref","driverCmds","cmdword"],[["eq",["call",["deref","driverCmds","cmdword"],"driverob","cmdword",["deref","expr",2]],["`","break"]],["break","repl"]]],[".","console","printline",['$driver command "/',"cmdword",'$" not understood']]],["continue","repl"]],[["!=",[".",[".","text","trim","false"],"length"],0],["break"]],["continue","repl"]]],["loop","false",["=","source",["new","textstream","text"]],["=","result",["parseBuffer"]],[["not",["eq","result","emptyflag"]]],["=","source","false"],["=","accum","text"],[[[".","text","match",[["RegExp","$^\\s*/[/*]"]]],["continue","repl"]]],[[["not",[".","text","match",[["RegExp","$(;|;>|;;)\\s*$"]]]],["=","source",["new","textstream",[".",[".","text","trim","false"],"concat",["$;\n"]]]],["=","result",["parseBuffer"]],[["not",["||",["eq","result","emptyflag"],[".","result",0]]],["break"]]]],["freshline"],[".","console","print",["$>> "]],["=","text",["readline"]],[[["==",[".","text","trim","false"],"$"],[".","console","print",["$command entry canceled"]],["continue","repl"]]],[[["==",[".","text","slice",[-1]],"$\n"],["=","text",[".","accum","concat",["text"]]]],["=","text",[".","accum","concat",["$\n","text"]]]]]],[[[".","exop","display"],[".","console","printline",[[".","exop","display"]]]]],["=","result",["list","false",[".","exop","expr"]]],["=","endtoken",{dictionary:{$atom:["`",";"]}}],[[[".","exop","ending"],["set.","endtoken",["`","atom"],[".","exop","ending"]]]],["=","exop","false"]],[[[".","result",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","result",0],["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[".","console","printline",[[".","driverob","errorstr",["expr"]]]]]]],["=","source","false"]],[["==",[".","endtoken","atom"],["`",";;"]],["\\$",["evalactive",[".","result",1]]]],["\\$",["evalactive",[".","result",1]]],[["!==","\\$",[".",[".","Naan","local"],"mu"]],["freshline"],[".","console","print",["$$: "]],[["!=",[".","endtoken","atom"],["`",";>"]],[".","console","print",[[".","driverob","print",["\\$"]]]]],[".","console","printq",["\\$"]]]]],[[["==","exception","Driver"]],[["==","exception","driver"],["=","exop","false"],["=","exconsole","false"],["throw","driver"]],[["identity","true"],["=","expr",["tostring",["first","exception"]]],[["==","expr","$debugger"],[".","console","printline",["$==> terminated in debugger"]],["=","exop","false"],["=","exconsole","false"],["throw",["list","internal","$exit"]]],[["==","expr","$internal"],[".","console","printline",["$==> error: ",["second","exception"]]]],[[["&&",["dictionary","exception"],["==",[".","exception","error"],"$Naan Error"]],["=","expr",["ErrorString","exception"]]],["=","expr","exception"]],[".","console","printline",["$==> exception: ","expr"]]]],"false"]]],["set.","driverob",["`","setOptions"],["function","setOptions",["options"],[[["identity","options"],["set.","driverob",["`","options"],["merge",[".","driverob","options"],"options"]]]],[".","driverob","options"]]],["set.","driverob",["`","readready"],["function","readready","false",[".","console","readready","false"]]],["set.","driverob",["`","waitIdle"],["closure","waitIdle",["toMS","false","start","totimer"],[[["not",[".","driverob","waiting"]],["set.","driverob",["`","waiting"],["new","nonce"]]]],["=","start",["milliseconds"]],[[["identity","toMS"],["=","totimer",["future",["function","lambda","false",["=","start","false"]],"toMS"]]]],["while","false",[["not","start"]],[".",[".","driverob","waiting"],"wait","false"],["sleep",10],[[[">",["-",["milliseconds"],"start"],50],["break"]]]],[".","totimer","reset","false"],["!=","start","false"]]],["set.","driverob",["`","execute"],["function","execute",["expr","options"],[[["not","options"],["=","options",{dictionary:{}}]]],["set.","options",["`","expr"],"expr"],[["identity","exconsole"],["=","exop","options"],[".","exconsole","readex",["Driver"]],"true"]]],["set.",[".","Naan","runtimelib"],["`","curdriver"],"curdriver"],["set.",[".","Naan","runtimelib"],["`","exec"],"exec"],[[["identity","welcome"],["set.",[".","driverob","options"],["`","prompt"],"true"],[["==","welcome",100],[".","console","printline",['$Naan REPL - type "/help" for more information']]]]],["repl"]]),e._SetBindingList("curdriver",["function","curdriver","false","driverObject"]),e._SetBindingList("exec",["function","exec",["expr","options"],[".","driverObject","execute",["expr","options"]]]),e._SetBindingList("DriverInstall",["function","DriverInstall",["false","curnsactive"],["=","curnsactive",["nsactive"]],["sudo",["nsactive",["list",[".",["nsactive","true"],1]]]],["copyproc",["compress","$driver"],"Driver"],["sudo",["nsactive","curnsactive"]],["throw",["`","driver"]]]),e._AddPropertyList("DriverInit",[["$.lingoInit","true"]]),e._SetBindingList("DriverInit",["function","DriverInit",["false","manifest"],["=","manifest",["`",["driverObject","driver_chmods","driver_debugs","driver_helps","driver_infos","driver_languages","driver_list","driver_options","driver_restarts","driver_quits","driverCmds","Driver","curdriver","exec","DriverInstall","DriverInit"]]],[".",[".","Naan","module"],"build",["$CLI","$Driver",["function","lambda",["modobj","compobj"],[".",[".","Naan","module"],"require",["$Lib/RuntimeLib.nlg"]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DriverInstall"],"DriverInstall"]]]]]),e._Execute(["DriverInit"]),e._CopyBinding("Driver","driver"),e._SetBindingList("DebuggerREPL",["closure","DebuggerREPL",["debug","false","commander","console","dialob","lastCmd"],["=","commander",["new","object","this"]],["=","console",["new","textstream"]],["set.","commander",["`","console"],"console"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],["set.","commander",["`","parse"],[".","dialob","parse"]],["set.","commander",["`","print"],[".","dialob","print"]],["set.","commander",["`","errorstr"],[".","dialob","parseErrorString"]],["set.","commander",["`","utils"],["Utils"]],["set.","commander",["`","info"],["Info","console"]],["set.","commander",["`","catch"],"false"],["set.","commander",["`","breakpoints"],{dictionary:{}}],["function","frameDict",["frame","false","proctask","location","markdict"],["=","proctask",[".","debug","frameProcTask",["frame"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","frame",3],1],[".","proctask",1]]]],[[[".","location",2],["=","markdict",{dictionary:{}}],["set[","markdict",[".","location",2],"$--\x3e"]]],"markdict"],["function","frameProc",["frame","false","proctask","location"],["=","proctask",[".","debug","frameProcTask",["frame"]]],[["identity","proctask"],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".","proctask",1]]]],[".",["tostring",[".",[".","proctask",0],0]],"concat",["space",[".",[".","commander","utils"],"locationString",["location"]]]]]],["function","initconsole","false",[["not","console"],["=","console",["new","textstream"]],["set.","commander",["`","console"],"console"],["set.","commander",["`","utils"],["Utils","console"]],["set.","commander",["`","info"],["Info","console"]]]],["function","readline",["crok","false","cc","output"],["initconsole"],[[["identity","crok"],["=","output","$"]],["while","false",[["not",["==",["=","cc",[".","console","readchar","false"]],"$\n"]]]],["=","output","cc"]],["while","false",[["not",["&&",["!=",["=","cc",[".","console","readchar","false"]],"$\n"],"cc"]]],["=","output",[".","output","concat",["cc"]]]],"output"],["function","driverprompt",["false","prompt"],["catch",[["=","prompt",["strcat","$(ndb-",[".","debug","depth","false"],"$) "]],[".",[".","js","t"],"setPrompt",["prompt"]]],[[["identity","true"],["=","prompt","$(ndb)"]]],"false"],"prompt"],["function","freshline","false",["initconsole"],[["!=",[".",[".","console","printloc","false"],1],0],[".","console","newline","false"]]],["set.","commander",["`","parseText"],["function","parseText",["cmdargs","false","error","expr"],["catch",[["=","source",["new","textstream",[".","cmdargs","concat",["$ ;"]]]],[".","source","setsymbols",[[".","commander","localist",[["deref",[".","commander","frames"],[".","commander","focus"]]]]]],["=",["error","expr"],[".","commander","parse",["source"]]]],[[["identity","true"]]],"false"],[[["identity","error"],["for",["let","lambda",["iter"],["=","iter",["iterate","error",["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[".","console","printline",[[".","commander","errorstr",["expr"]]]]]]],["=","expr","false"]]],"expr"]],["set.","commander",["`","getprocarg"],["function","getprocarg",["text","false","args","expr","result","location"],["=","args",[".","text","match",[["RegExp","$^([^:]+)(:\\s*\\d*)?(:\\s*\\d*)?\\s*$"]]]],[[["&&",[">",[".","args","length"],1],["=","expr",[".","commander","parseText",[["deref","args",1]]]]],["catch",[["=","result",["eval","expr"]],[["procedure","result"],["=","result",[".","result",1]]],[["symbol","result"],["=","result",[".",[".","result","proc"],1]]],["=","result","false"]],[[["identity","true"],["=","result","false"]]],"false"],[["identity","result"],["=","location",["list",[".",[".","result","namespace"],"tostring"],"result",["toint",[".",[".",["deref","args",2],"substring",[1]],"trim","false"]],["toint",[".",[".",["deref","args",3],"substring",[1]],"trim","false"]]]]]]],[[["not","location"],["=","location",[".",[".","commander","utils"],"getprocarg",["text"]]]]],"location"]],["function","breakHit",["where","value","false","firstid","location","entry","result","sourceline"],["=","firstid",1],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","bpid",["toint","bpid"]],[[["==","firstid","bpid"],["=","firstid",["+","bpid",1]]]],[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],[".","where","task"]],["=","firstid","bpid"]]]]],[[["not",["deref",[".","commander","breakpoints"],"firstid"]],["breakpoint",[".","where","task"],"undefined"],[".","debug","resume","false"],["return","true"]]],["=","entry",["deref",[".","commander","breakpoints"],"firstid"]],["preadjust",[".","entry","hitcount"],"+",1],[[[".","entry","conditional"],[[["procedure",[".","entry","conditional"]],["=","result",["call",[".","entry","conditional"],[".","entry","hitcount"],[".","entry","value"]]]],["=","result",["eval",[".","entry","conditional"]]]],[["not","result"],[".","debug","resume","false"],["return","true"]]]],[".","console","printline",["$Breakpoint ","firstid","$ at ",[".",[".","commander","utils"],"locationString",[[".","entry","location"]]],"$ with value ","value"]],[[["not",[".","entry","sourced"]],["set.","entry",["`","sourced"],"true"],[[[".",[".","entry","location"],2],["=","sourceline",[".",[".","commander","utils"],"sourcelist",[[".","entry","procdef"],[".",[".","entry","location"],2],[".",[".","entry","location"],2]]]]],["=","sourceline",["tostring",["car",[".","where","task"]]]]],[".","console","printline",["$ ","sourceline"]]]],"false"],["function","stepHit",["dict","false","procdef","location","sourceline"],["=","procdef",[".","debug","insideProc","false"]],[[["not","procdef"],[".","console","printline",["$Stepped to unknown location: ",[".","dict","task"]]],["return","false"]]],[[["member",[".",[".","procdef",1],"namespace"],[".","debug","nshidden"]],[".","debug","stepup","false"],["return","true"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".","procdef",1],[".","dict","task"]]]],[".",[".","commander","info"],"setDefloc",["location"]],[".","console","printline",["$Stepped to ",[".",[".","commander","utils"],"locationString",["location"]],"$ with value ",[".","dict","value"]]],[[["!=",[".","dict","state"],"$task"],["=","sourceline","$[end of body]"]],[[".","location",2],["=","sourceline",[".",[".","commander","utils"],"sourcelist",["procdef",[".","location",2],[".","location",2]]]]],["=","sourceline","$unknown line"]],[".","console","printline",["$ ","sourceline"]],"false"],["function","exceptionHit",["except","false","exceptstr","proctask","location"],[[["||",["not",[".","commander","catch"]],["&&",["tuple",[".","commander","catch"]],["not",["eval",[".","commander","catch"]]]]],["return","true"]]],["freshline"],["=","exceptstr",[".","debug","startExcept"]],[[["&&",["dictionary","exceptstr"],["==",[".","exceptstr","error"],"$Naan Error"]],["=","exceptstr",["ErrorString","exceptstr"]]]],[".","console","printline",["$==> Entering debugger on exception: ","exceptstr"]],["=","proctask",[".","debug","frameProcTask",["false"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".",[".","proctask",1],0]]]],[[["&&","proctask","location"],[".","console","printline",[[".",[".","commander","utils"],"locationString",["location"]]]],[[".","location",2],[".","console","printline",["$ ",[".",[".","commander","utils"],"sourcelist",[[".","proctask",0],[".","location",2],[".","location",2]]]]]]]],"false"],["set.","commander",["`","updateDefproc"],["function","updateDefproc",["frame","false","proctask","location"],["=","proctask",[".","debug","frameProcTask",["frame"]]],[[["identity","proctask"],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".",[".","proctask",1],0]]]]]],[".",[".","commander","info"],"setDefloc",["location"]]]],["function","findCommand",["text","false","cmd","found"],[["deref","debugCmds","text"],"text"],["for",["let","lambda",["iter"],["=","iter",["iterate","debugCmds",["`","cmd"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","cmd",[".","iter","$value"]],[[[".","cmd","startsWith",["text"]],[["identity","found"],["return","false"]],["=","found","cmd"]]]]]],"found"],["set.","commander",["`","entering"],["function","entering","false",["textstreams",["`",["false","false"]]]]],["set.","commander",["`","pauser"],["function","pauser",["entry","arg1","arg2","arg3","false","cmd","cmdword","proc1"],["updateDefproc","false"],["initconsole"],[[["==","entry","$startpause"],[[["atom","arg1"],[".","console","printline",["$can't debug atoms like: \"","arg1",'$"']],["return"]]],["freshline"],[".","console","printline",["$debugger paused before eval: ","arg1"]]],[["==","entry","$breakpoint"],[["breakHit","arg1","arg2"],["return"]]],[["==","entry","$steptrap"],[["stepHit","arg1"],["return"]]],[["==","entry","$startfail"],["freshline"],[".","console","printline",["$debugger could not pause before eval"]]],[["==","entry","$escape"],[".","console","printline",["$^C"]]],[["==","entry","$exception"],[["exceptionHit","arg1"],["return"]]],[["==","entry","$"]],["freshline"],[".","console","printline",['$debugger entry type "',"entry",'$" not known']]],["set.","commander",["`","frames"],{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","debug","frames"],["`","frame"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","frame",[".","iter","$value"]],[[["procedure","frame"],["=","proc1","true"]]],[[["&&",["!=",[".","frame",0],["`","body"]],["||",["not","proc1"],["!=",[".","frame",0],["`","loop"]]]],[".",[".","commander","frames"],"push",["frame"]]]]]]],["set.","commander",["`","focus"],0],[".","console","readex",["false"]],["loop","false",["catch",[["freshline"],[".","console","print",[["driverprompt"]]],["=","cmd",["readline","true"]],["=","cmd",[".","cmd","match",[["RegExp","$(\\S+)\\s*(.*)"]]]],[[["not","cmd"],[[["||",["not","lastCmd"],["not",["eq",["deref","debugCmds",["deref","lastCmd",1]],"debug_execs"]]],["continue"]]],["=","cmd","lastCmd"]]],["=","lastCmd","cmd"],["=","cmdword",["findCommand",["deref","cmd",1]]],[[["deref","debugCmds","cmdword"],[["eq",["call",["deref","debugCmds","cmdword"],"cmdword",["deref","cmd",2],"commander","debug"],["`","break"]],["return"]]],[".","console","printline",['$debugger command "',["deref","cmd",1],'$" is undefined or ambiguous']]]],[[["==","exception","DebuggerREPL"],["return","false"]],[["!=","exception","debugger"],[".","console","printline",["$debugger caught: ","exception"]],"false"]],"false"]]]],["set.","commander",["`","endPauser"],["function","endPauser","false",[".","console","readex",["DebuggerREPL"]]]],["set.","commander",["`","procstring"],["function","procstr",["proc","false","output","parm"],[[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$()"]]]]],[[["atom",[".","proc",2]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$ ",[".","proc",2]]]]]],["=","output",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",["parm","$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","commander",["`","localist"],["function","localist",["frame","false","symbols"],[[["not",["procedure","frame"]],["return","false"]]],["call",["function","scope",["parent","false","lex1","ex1","proc"],["while","false",[["not","parent"]],["=","proc",["getproc","parent"]],["=","lex1",["third","proc"]],[[["atom","lex1"],["push","lex1","symbols"]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["identity","ex1"],["push","ex1","symbols"]]]]],["push","parent","symbols"],["=","lex1",["deref",["@","parent"],["`","\\.children"]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["&&","ex1",["not",["member","ex1","symbols"]]],["push","ex1","symbols"]]]],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]]],[".",[".","frame",3],1]],["reverse","symbols"]]],["set.","commander",["`","exprstr"],["function","exprstr",["expr","false","condexpr"],[[["not","expr"],["return","$"]]],["=","condexpr",[".",[".","commander","utils"],"sourcelist",["expr"]]],["=","condexpr",[".","condexpr","replace",[["RegExp","$^ *\\d+","$mg"],"$"]]],["=","condexpr",[".","condexpr","replace",[["RegExp","$[\\s\\n\\r]{2,}","$mg"],"$ "]]],[".","condexpr","trim","false"]]],["set.","commander",["`","printlocals"],["function","printlocals",["frame","uopts","false","uopt","widths","header","begun"],["=","options",{dictionary:{$indent:4,$header:"false",$parents:"true",$trim:"false",$maxstr:30}}],["for",["let","lambda",["iter"],["=","iter",["iterate","uopts",["`","uopt"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","uopt",[".","iter","$value"]],["set[","options","uopt",["deref","uopts","uopt"]]]]],["=","header",["list","$symbol","$value","$previous"]],["function","calc1",["lex1","false","ex1"],["function","calcitem",["item"],["function","cf",["field","prev","false","width"],["=","width",[".",["tostring","field",{dictionary:{$quote:"true"}}],"length"]],[[[">","width",[".","options","maxstr"]],["=","width",[".","options","maxstr"]]]],[[["<","width","prev"],["=","width","prev"]]],"width"],["set[","widths",0,["cf",["first","item"],["deref","widths",0]]],["set[","widths",1,["cf",["second","item"],["deref","widths",1]]],[["cddr","item"],["set[","widths",2,["cf",["third","item"],["deref","widths",2]]]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[[["not","widths"],["=","widths",{array:[0,0,0]}],[[".","options","header"],["calcitem","header"]]]],["calcitem","ex1"]]]]],["function","print1",["lex1","nameline","false","ex1"],["function","printitem",["item"],["function","pf",["field","width","false","fwidth"],["=","field",["tostring","field",{dictionary:{$quote:"true"}}]],["=","fwidth",[".","field","length"]],[[[">","fwidth",[".","options","maxstr"]],["=","fwidth",[".","options","maxstr"]],["=","field",[".","field","substring",[0,"fwidth"]]]]],[".","console","print",["field",[".","space","repeat",[["-","width","fwidth"]]]]]],[".","console","print",[[".","$ ","repeat",[[".","options","indent"]]]]],["pf",["first","item"],["deref","widths",0]],[".","console","print",["$ "]],["pf",["second","item"],["deref","widths",1]],[[["&&",["cddr","item"],[">",["deref","widths",2],0]],[".","console","print",["$ "]],["pf",["third","item"],["deref","widths",2]]]],[".","console","newline","false"]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[[["not","begun"],[[[".","options","header"],["printitem","header"],["printitem",["list",[".","$-","repeat",[["deref","widths",0]]],[".","$-","repeat",[["deref","widths",1]]],[".","$-","repeat",[["deref","widths",2]]]]]]],["=","begun","true"]]],[[["identity","nameline"],[".","console","printline",["nameline"]],["=","nameline","false"]]],["printitem","ex1"]]]]],["function","printer",["false","procsym","procname","parent","proc","params","parents"],["calc1",["third","frame"]],["=","procsym",[".",[".","frame",3],1]],["=","parent",["deref",["@","procsym"],["`","\\.parent"]]],["while","false",[["not","parent"]],["=","proc",["getproc","parent"]],["=","lex1",["third","proc"]],[[["atom","lex1"],["=","params",["push",["list","lex1",["first","lex1"]],"params"]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["&&",[".","options","trim"],["not",["within","ex1",[".","frame",3]]]],["continue"]]],[[["identity","ex1"],["push",["list","ex1",["first","ex1"]],"params"]]]]],["calc1","params"],["push","params","parents"],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]],["=","parents",["reverse","parents"]],["push",["third","frame"],"parents"],["=","parent","procsym"],["while","false",[["not","parent"]],[[["identity","begun"],["=","procname","$"]],["=","procname",[".","procname","concat",["$\n"]]]],["=","proc",["getproc","parent"]],["=","procname",[".","procname","concat",[["first","proc"],"space",["tostring",["namespace","parent"]],"$::",[".","debug","procname",["parent"]]]]],["print1",["pop","parents"],"procname"],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]]],[["procedure","frame"],["printer"]]]],["set.","commander",["`","printframe"],["function","printframe",["frame","false","procstr"],["function","printparms",["lex1","false","ex1"],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[".","console","print",["$ ",["first","ex1"],"$: ",["second","ex1"],"$ (",["third","ex1"],"$)"]],[".","console","newline","false"]]]]],[["member",["first","frame"],["`",["let","let","&"]]],[".","console","print",[["first","frame"]]],[".","console","newline","false"],[".","console","printparms",[["third","frame"]]],[".","console","print",["$-----------"]],[".","console","newline",[2]],[".","console","print",[[".",[".","commander","utils"],"sourcelist",[[".","frame",3],"false","false",["frameDict","frame"]]]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","builtin"]],[".","console","print",[["first","frame"]]],[".","console","newline","false"],[".","console","print",[["second","frame"]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","interrupt"]],[".","console","print",[["first","frame"],"$ ",["third","frame"],"$ in ",["second","frame"]]],[".","console","newline","false"],[".","console","print",["$exec: ",[".","frame",3]]],[".","console","newline",[2]]],[["procedure","frame"],[".","commander","printlocals",["frame",{dictionary:{$trim:"true"}}]],[".","console","print",["$-----------"]],[".","console","newline",[2]],[".","console","print",[[".",[".","commander","utils"],"sourcelist",[[".","frame",3],"false","false",["frameDict","frame"]]]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","catch"]],[".","console","print",[["first","frame"]]],["=","procstr",["frameProc","frame"]],[[["identity","procstr"],[".","console","newline","false"],[".","console","print",["procstr"]]]],[".","console","newline",[2]]],[".","console","print",["$frame type:",["first","frame"]]],[".","console","newline",[2]]]],["set.","commander",["`","printframedivider"],["function","printframedivider",["frameno","false","header","trailer"],["=","header",[".","$============ Frame #","concat",["frameno","$ ==========="]]],["=","trailer","$================================"],[["not","frameno"],[".","console","printline",["trailer"]]],[".","console","printline",[[".","header","slice",[["length","frameno"]]]]]]],["set.","commander",["`","breakGlobalEnable"],["function","breakGlobalEnable",["enable"],[".","debug","breakGlobalAble",["enable"]]]],["set.","commander",["`","breakAdd"],["function","breakAdd",["location","expr","false","task","firstid","bpdict","procdef","exprstr"],["=","procdef",[".",[".","commander","utils"],"resolveLocation",["location"]]],[[["not","procdef"],[".","console","printline",["$ndb: can't find procedure ",[".",[".","commander","utils"],"locationString",["location"]]]],["return","false"]]],[[["not",[".","location",0]],["=","location",["cons",[".",[".",[".","procdef",1],"namespace"],"tostring"],["cdr","location"]]]]],[[["not",["integer",[".","location",2]]],["=","location",["list",[".","location",0],[".","location",1],1]]],[[".","location",3],["=","location",["list",[".","location",0],[".","location",1],[".","location",2]]]]],["=","task",[".",[".","commander","utils"],"breakLocation",["location"]]],[[["not","task"],[".","console","printline",["$ndb: can't find location ",[".",[".","commander","utils"],"locationString",["location"]]]],["return","false"]]],["=","firstid",1],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","bpid",["toint","bpid"]],[[["==","firstid","bpid"],["=","firstid",["+","bpid",1]]]],[[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],"task"],[".","console","printline",["$ndb: breakpoint ","bpid","$ already exists"]],["return","false"]]]]]],["=","bpdict",["breakpoint","task"]],[[["identity","bpdict"],[["eq",[".","bpdict","proc"],[".","debug","debugBlock"]],[".","console","printline",["$ndb: warning: closure breakpoints would conflict"]],["return","false"]],[".","console","printline",["$ndb: warning: overwriting breakpoint from different debugger"]]]],["=","bpdict",["breakpoint","task",[".","debug","debugBlock"]]],[[["not","bpdict"],[".","console","printline",["$ndb: cannot add that breakpoint"]],["return","false"]]],["set.","bpdict",["`","breakID"],"firstid"],["set[",[".","commander","breakpoints"],"firstid",{dictionary:{$location:"location",$procdef:"procdef",$where:"bpdict",$hitcount:0,$conditional:"expr"}}],[[["identity","expr"],["=","exprstr","$ (conditional)"]],["=","exprstr","$"]],[".","console","printline",["$breakpoint ","firstid","$ at ",[".",[".","commander","utils"],"locationString",["location"]],"exprstr"]],[[["not",[".","debug","bpenable"]],[".","console","printline",["$ndb: warning: breakpoints currently disabled"]]]],"firstid"]],["set.","commander",["`","breakClear"],["function","breakClear",["location","false","task"],["=","task",[".",[".","commander","utils"],"breakLocation",["location"]]],[[["not","task"],["return","false"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],[[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],"task"],["breakpoint","task","undefined"],[".","console","printline",["$breakpoint ","bpid","$ at ",[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"bpid"],"location"]]],"$ cleared"]],["set[",[".","commander","breakpoints"],"bpid","undefined"],["return"]]]]]],[".","console","printline",["$ndb: breakpoint not found for ",[".",[".","commander","utils"],"locationString",["location"]]]]]],["set.","commander",["`","breakDelete"],["function","breakDelete",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]],["return","false"]]],["breakpoint",[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"task"],"undefined"],[".","console","printline",["$breakpoint ","breaknum","$ at ",[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"breaknum"],"location"]]],"$ deleted"]],["set[",[".","commander","breakpoints"],"breaknum","undefined"]]],["set.","commander",["`","breakDisable"],["function","breakDisable",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]]]],[[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"enable"],["set.",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],["`","enable"],"false"],[".","console","printline",["$ndb: breakpoint ","breaknum","$ disabled"]]]]],["set.","commander",["`","breakEnable"],["function","breakEnable",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]]]],[["not",[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"enable"]],["set.",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],["`","enable"],"true"],[".","console","printline",["$ndb: breakpoint ","breaknum","$ enabled"]]]]],["set.","commander",["`","breakList"],["function","breakList",["false","rows","counts","rowdex","coldex"],[[["==",["length",[".","commander","breakpoints"]],0],[".","console","printline",["$no breakpoints"]],["return"]]],["=","rows",{array:[]}],["=","counts",{array:[]}],["set[","rows",0,{array:["$num","$enable","$count","$location","$condition"]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","rowdex",["+",-1,[".","rows","push",[{array:["bpid","$N",[".",["deref",[".","commander","breakpoints"],"bpid"],"hitcount"],[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"bpid"],"location"]]],[".","commander","exprstr",[[".",["deref",[".","commander","breakpoints"],"bpid"],"conditional"]]]]}]]]],[[[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"enable"],["set[",["deref","rows","rowdex"],1,"$Y"]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],["=","coldex",0],["while","false",[["not",["<=","coldex",4]]],[[["||",["not",["deref","counts","coldex"]],["<",["deref","counts","coldex"],[".",["deref","row","coldex"],"length"]]],["set[","counts","coldex",[".",["deref","row","coldex"],"length"]]]],["preadjust","coldex","+",1]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],[".","console","print",[["prepad",["deref","row",0],["deref","counts",0]]]],[".","console","print",[["prepad",["deref","row",1],["+",["deref","counts",1],1]]]],[".","console","print",[["prepad",["deref","row",2],["+",["deref","counts",2],1]]]],[".","console","print",["$ ",["deref","row",3],[".","space","repeat",[["-",["deref","counts",3],[".",["deref","row",3],"length"]]]]]],[[["deref","row",4],[".","console","print",["$ ",["deref","row",4]]]]],[".","console","newline","false"],[[[">","coldex",0],["=","coldex",0],[".","console","print",[["prepad","$",["deref","counts",0],"$-"]]],[".","console","print",["$ ",["prepad","$",["deref","counts",1],"$-"]]],[".","console","print",["$ ",["prepad","$",["deref","counts",2],"$-"]]],[".","console","print",["$ ",[".","$-","repeat",[["deref","counts",3]]]]],[".","console","printline",["$ ",[".","$-","repeat",[["deref","counts",4]]]]]]]]]]]],["=","debugCmds",{dictionary:{$b:"debug_breaks",$break:"debug_breaks",$clear:"debug_breaks",$delete:"debug_breaks",$disable:"debug_breaks",$enable:"debug_breaks",$catch:"debug_exceptions",$c:"debug_execs",$continue:"debug_execs",$f:"debug_execs",$finish:"debug_execs",$n:"debug_execs",$next:"debug_execs",$s:"debug_execs",$step:"debug_execs",$eval:"debug_evals",$p:"debug_evals",$print:"debug_evals",$pp:"debug_evals",$help:"debug_helps",$i:"debug_infos",$info:"debug_infos",$list:"debug_list",$bt:"debug_stacks",$backtrace:"debug_stacks",$frame:"debug_stacks",$scope:"debug_stacks",$up:"debug_stacks",$down:"debug_stacks",$q:"debug_quit",$quit:"debug_quit"}}],"commander"]),e._SetBindingList("debug_breaks",["function","debug_breaks",["cmdword","cmdargs","commander","debug","false","console","args","expr","location","breaknum"],["=","console",[".","commander","console"]],[["==",[".","cmdword","charAt",[0]],"$b"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s+if\\s+(\\S+.*)\\s*$"]]]],[[["identity","args"],["=","location",[".","commander","getprocarg",[["deref","args",1]]]],["=","expr",[".","commander","parseText",[["deref","args",2]]]],[["not","expr"],["return",[".","console","print",["$ndb: conditional breakpoint expression not understood"]]]]],["=","location",[".","commander","getprocarg",["cmdargs"]]]],[[["not","location"],["return",[".","console","print",["$ndb: please specify a valid procedure"]]]]],[".","commander","breakAdd",["location","expr"]]],[["==","cmdword","$clear"],["=","location",[".","commander","getprocarg",["cmdargs"]]],[[["not","location"],["return",[".","console","print",["$ndb: please specify a valid procedure"]]]],[["numeric",["toint",[".","location",1]]],["return",[".","console","print",["$ndb: please specify a procedure (or use delete <number>)"]]]]],[".","commander","breakClear",["location"]]],[["||",["==","cmdword","$delete"],["==","cmdword","$disable"],["==","cmdword","$enable"]],["=","breaknum",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["||",["==","cmdargs","$"],["==",[".","cmdargs","toLowerCase","false"],"$all"]],[["==","cmdword","$enable"],[".","console","printline",["$breakpoints enabled"]],["return",[".","commander","breakGlobalEnable",["true"]]]],[["==","cmdword","$disable"],[".","console","printline",["$breakpoints disabled"]],["return",[".","commander","breakGlobalEnable",["false"]]]]]],[[["||",["not","breaknum"],["&&",["not",["numeric","breaknum"]],["!=",["pop","breaknum"],["`","set"]]]],["return",[".","console","print",["$ndb: please specify breakpoint number(s)"]]]]],["loop","false",[[["numeric","breaknum"],["=","expr","breaknum"],["=","breaknum","false"]],[["empty","breaknum"],["break"]],["=","expr",["pop","breaknum"]]],[[["==","cmdword","$delete"],[".","commander","breakDelete",["expr"]]],[["==","cmdword","$disable"],[".","commander","breakDisable",["expr"]]],[".","commander","breakEnable",["expr"]]]]]]),e._SetBindingList("debug_exceptions",["function","debug_exceptions",["cmdword","cmdargs","commander","debug","nsteps","false","console","args","expr"],["=","console",[".","commander","console"]],[[["==","cmdargs","$disable"],["set.","commander",["`","catch"],"false"]],[["||",["==","cmdargs","$enable"],["==","cmdargs","$all"]],["set.","commander",["`","catch"],"true"]],[["!=","cmdargs","$"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*if\\s+(\\S+.*)\\s*$"]]]],[[["identity","args"],["=","expr",[".","commander","parseText",[["deref","args",1]]]],[["not","expr"],["return",[".","console","print",["$ndb: conditional catch expression not understood"]]]]]],["set.","commander",["`","catch"],"expr"]]],[["not",[".","commander","catch"]],[".","console","printline",["$exceptions: catch disabled"]]],[["atom",[".","commander","catch"]],[".","console","printline",["$exceptions: catch all"]]],[".","console","printline",["$exceptions: catch if ",[".","commander","exprstr",[[".","commander","catch"]]]]]]),e._SetBindingList("debug_execs",["function","debug_execs",["cmdword","cmdargs","commander","debug","nsteps"],[[["==",[".","cmdword","charAt",[0]],"$c"],[".","debug","resume","false"]],[["==",[".","cmdword","charAt",[0]],"$f"],[".","debug","stepup","false"]],[["==",[".","cmdword","charAt",[0]],"$n"],[".","debug","stepover","false"]],[["==",[".","cmdword","charAt",[0]],"$s"],["=","nsteps",["toint","cmdargs"]],[[["not",["numeric","nsteps"]],["=","nsteps",1]]],[".","debug","step",["nsteps"]]],["return"]],["`","break"]]),e._SetBindingList("debug_evals",["function","debug_evals",["cmdword","cmdargs","commander","debug","false","console","ex1","ex2","aterm","printlevel","result"],["=","console",[".","commander","console"]],["=","ex1",[".","commander","parseText",["cmdargs"]]],[[["==","cmdword","$eval"],["=","ex2",["tokenlast"]],["=","aterm",["atTerminator"]],[["==",["first","ex2"],["`",";"]],["=","printlevel",2]],[["==",["first","ex2"],["`",";>"]],["=","printlevel",1]]],["=","aterm","true"],[["==","cmdword","$pp"],["=","printlevel",2]],[["==",[".","cmdword","charAt",[0]],"$p"],["=","printlevel",1]],["return"]],[["not","aterm"],[".","console","printline",[["langExprLoc","ex2"],"$operator missing between ","ex1","$ and ","ex2"]],[".","console","newline","false"]],["=","result",["eval","ex1"]],[["identity","printlevel"],[".","console","print",["$ result: "]],[[["==","printlevel",2],[".","console","print",[[".","commander","print",["result"]]]]],[".","console","printq",["result"]]],[".","console","newline","false"]]]),e._SetBindingList("debug_helps",["function","debug_helps",["cmdword","cmdargs","commander","debug","false","console","text"],["=","console",[".","commander","console"]],[[["==","cmdargs","$me"],["=","text","$you're beyond it"]],["=","text",["call",["let","lambda",["proc"],[["||",["eq","proc","debug_breaks"],["==","cmdargs","$breakpoints"]],"$ b[reak] <location> - set breakpoint at location\n <location> if function(count, value) { <body> }\n <location> if <expression>\n clear <location> - clear breakpoint at location\n delete <#> [<#>...] - delete breakpoint(s) by #\n disable [<#>] - disable breakpoint # | all\n enable [<#>] - enable breakpoint # | all\n i[nfo] (b)reakpoints - show current breakpoints\n"],[["||",["eq","proc","debug_exceptions"],["==","cmdargs","$exceptions"]],"$ catch enable - catch all exceptions (default)\n catch disable - don't catch any exceptions\n catch if <expr> - catch if <expr> true\n"],[["||",["eq","proc","debug_execs"],["==","cmdargs","$execution"]],"$ c[continue] - continue execution\n f[finish] - finish current procedure\n n[ext] - step over to next expression\n s[tep] - step into next expression\n"],[["||",["eq","proc","debug_evals"],["==","cmdargs","$eval"]],"$ pp <expr> - evaluate expr and pretty-print result\n eval <expr> [;] - (same)\n p <expr> - evaluate expr and print basic result\n eval <expr> ;> - (same)\n eval <expr> ;; - evaluate expr and don't print result\n"],[["eq","proc","debug_helps"],"$ help - list help topics\n help <debug-command> - get specific help on a command\n"],[["||",["eq","proc","debug_infos"],["==","cmdargs","$info"]],"$ i[nfo] - list info topics\n i[nfo] <topic> - print debugger info on topic\n"],[["eq","proc","debug_list"],"$ list [<namespace>::]<procedure-name>[.<nestedname>]*[:start[:end]]\n"],[["==","cmdargs","$locations"],"$ [<namespace>::] <procname> [.<procname>...] [: line-number]\n"],[["||",["eq","proc","debug_stacks"],["==","cmdargs","$stacks"]],"$ bt - print backtrace\n backtrace - (same)\n frame <start#> [- <end#>] - display stack frame(s)\n scope <frame#> - change focus frame and display variables\n up - change focus frame higher\n down - change focus frame lower\n"],[["eq","proc","debug_quit"],"$ q[uit] - abandon all execution and restart repl\n"],"$help topics:\n breakpoints - work with breakpoints\n exceptions - work with exceptions\n execution - stepping and continuing execution\n eval - evaluating and printing expressions\n help - using help\n info - print debugger information\n list - list procedure source\n locations - syntax for procedure location references\n stacks - backtrace and stack frame details\n quit - quitting current execution\n"],["deref","debugCmds","cmdargs"]]]],[".","console","print",["text"]]]),e._SetBindingList("debug_infos",["function","debug_infos",["cmdword","cmdargs","commander","debug","false","console","args"],["=","console",[".","commander","console"]],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".","console","print",["$info topics:\n i[nfo] (b)reakpoints - show current breakpoints\n i[nfo] (f)ind <regex> - find matching symbols in active namespaces\n <regex> all | in <namespace> ...in all or specified namespace\n i[nfo] f(u)tures - show pending futures\n i[nfo] (m)odules [<name> [<name> ...]] - show modules and components\n i[nfo] (p)roc [<name>] - show information about procedure\n i[nfo] (s)scope [<frame>] - show parameters and locals for frame\n"]]],[["||",["==","cmdword","$b"],["==","cmdword","$breakpoints"]],[".","commander","breakList","false"]],[["||",["==","cmdword","$f"],["==","cmdword","$find"]],[".",[".","commander","info"],"infofind",["cmdargs"]]],[["||",["==","cmdword","$u"],["==","cmdword","$future"],["==","cmdword","$futures"]],[".",[".","commander","info"],"infofutures",["cmdargs"]]],[["||",["==","cmdword","$m"],["==","cmdword","$module"],["==","cmdword","$modules"]],[".",[".","commander","info"],"infomod",["cmdargs"]]],[["||",["==","cmdword","$s"],["==","cmdword","$scope"]],["debug_stacks","$scope","cmdargs","commander","debug"]],[["||",["==","cmdword","$p"],["==","cmdword","$proc"],["==","cmdword","$procedure"]],[".",[".","commander","info"],"infoproc",["cmdargs"]]],[".","console","printline",["$ndb: info topic ","cmdword","$ not implemented"]]]),e._SetBindingList("debug_list",["function","debug_list",["cmdword","cmdargs","commander","debug","false","console","procdef","start","end","center","markdict"],["=","console",[".","commander","console"]],[[["&&","cmdargs",["!=","cmdargs","$"]],[".",[".","commander","info"],"infolist",["cmdargs"]],["return"]]],[[["not",[".",[".","commander","info"],"defloc"]],[".","console","printline",["$ndb: nothing to list"]],["return"]]],["=","procdef",[".",[".","commander","utils"],"resolveLocation",[[".",[".","commander","info"],"defloc"]]]],[[["not","procdef"],[".","console","printline",["$ndb: can't find ",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],["return"]]],["=","start",[".",[".",[".","commander","info"],"defloc"],2]],["=","center",20],[[["not","start"],["=","start",1],["=","end","center"]],["preadjust","start","-",["quotient","center",2]],[[["<","start",1],["=","start",1]]],["=","end",["-",["+","start","center"],1]]],[".","console","printline",[[".","procdef",0],"space",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],[[[".",[".",[".","commander","info"],"defloc"],2],["=","markdict",{dictionary:{}}],["set[","markdict",[".",[".",[".","commander","info"],"defloc"],2],"$--\x3e"]]],[".","console","print",[[".",[".",[".","commander","info"],"utils"],"sourcelist",["procdef","start","end","markdict"]]]]]),e._SetBindingList("debug_stacks",["function","debug_stacks",["cmdword","cmdargs","commander","debug","false","console"],["=","console",[".","commander","console"]],["function","backtrace",["false","framedex","frame"],["function","paramstr",["frame","false","params","pinfo"],["=","params",[".",[".","frame",3],2]],[["not","params"],["=","pinfo","$()"]],[["atom","params"],["=","pinfo",[".","$ ","concat",[["tostring","params"]]]]],["=","pinfo","false"],["for",["let","lambda",["iter"],["=","iter",["iterate","params",["`","param"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","param",[".","iter","$value"]],[[["not","param"],["push",["`","local"],"pinfo"]],["push","param","pinfo"]]]]],["=","pinfo",["tostring",["reverse","pinfo"]]]],["=","framedex",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","frames"],["`","frame"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","frame",[".","iter","$value"]],[[["procedure","frame"],["=","finfo",[".","$ ","concat",[["tostring",["namespace",["second","frame"]]],"$::",[".","debug","procname",[[".",[".","frame",3],1]]],["paramstr","frame"]]]]],[["eq",["first","frame"],["`","interrupt"]],["=","finfo",[".","$ ","concat",[["tostring",["third","frame"]]]]]],["=","finfo","$"]],[".","console","printline",[["prepad",["postadjust","framedex","+",1],5],"$ ",["prepad",[".","frame",0],10],"finfo"]]]]]],["function","pscope",["false","nargs","frame"],["=","nargs",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["not","nargs"],["=","nargs",[".","commander","focus"]],[".","console","printline",["$Scope is frame #","nargs"]]],[["||",["not",["numeric","nargs"]],[">=","nargs",[".",[".","commander","frames"],"length"]]],[".","console","printline",["$ndb: invalid frame number:","nargs"]],["return"]],[".","console","printline",["$Scope now frame #","nargs"]]],["set.","commander",["`","focus"],"nargs"],["=","frame",["deref",[".","commander","frames"],"nargs"]],[".","commander","updateDefproc",["frame"]],[".","console","printline",[[".","frame",0],"space",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],[".","commander","printlocals",["frame"]]],["function","pframes",["false","nargs","startx","lastx"],["=","startx",["=","lastx",[".","commander","focus"]]],["=","nargs",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["numeric","nargs"],["=","startx",["=","lastx","nargs"]]],[["eq",["first","nargs"],["`","range"]],[["<",[".","nargs",1],[".","nargs",2]],["=","startx",[".","nargs",1]],["=","lastx",[".","nargs",2]]],["=","startx",[".","nargs",2]],["=","lastx",[".","nargs",1]]],[["identity","nargs"],[".","console","print",["$ndb: invalid frame number or range:","nargs"]],["return"]]],[["<","startx",[".",[".","commander","frames"],"length"]],[[[">=","lastx",[".",[".","commander","frames"],"length"]],["=","lastx",["-",[".",[".","commander","frames"],"length"],1]]]],["while","false",[["not",["<=","startx","lastx"]]],[".","commander","printframedivider",["startx"]],[".","commander","printframe",[["deref",[".","commander","frames"],["postadjust","startx","+",1]]]]],[".","commander","printframedivider","false"]]],[["||",["==","cmdword","$bt"],["==","cmdword","$backtrace"]],["backtrace"]],[["==","cmdword","$frame"],["pframes"]],[["==","cmdword","$scope"],["pscope"]],[["||",["==","cmdword","$up"],["==","cmdword","$down"]],[[["&&",["==","cmdword","$up"],["<",[".","commander","focus"],["-",[".",[".","commander","frames"],"length"],1]]],[".","console","print",["$+Scope now frame #",["preadjust",[".","commander","focus"],"+",1]]]],[["&&",["==","cmdword","$down"],[">",[".","commander","focus"],0]],[".","console","print",["$-Scope now frame #",["preadjust",[".","commander","focus"],"-",1]]]],["return"]],[".","commander","updateDefproc",[["deref",[".","commander","frames"],"nargs"]]]],[".","console","printline",["$ndb: ","cmdword","$ not implemented yet"]]]),e._SetBindingList("debug_quit",["function","debug_quit",["cmdword","cmdargs","commander","debug"],["sudo",["=","exception",["`","exception"]]],["throw","debugger"]]),e._AddPropertyList("DebuggerInit",[["$.lingoInit","true"]]),e._SetBindingList("DebuggerInit",["function","DebuggerInit",["false","manifest"],["=","manifest",["`",["DebuggerREPL","debug_breaks","debug_exceptions","debug_execs","debug_evals","debug_helps","debug_infos","debug_list","debug_stacks","debug_quit","DebuggerInit"]]],[".",[".","Naan","module"],"build",["$CLI","$Debugger",["function","lambda",["modobj","compobj","false","debug"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DebuggerREPL"],"DebuggerREPL"],["=","debug",[".",[".",[".",["modlist"],"Util"],"exports"],"DebugController","false"]],[".","debug","setDefCommander",[["DebuggerREPL","debug"]]]]]]]),e._Execute(["DebuggerInit"]),e._SetNamespace(t,!0)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
40
+ !function(e){e.BootLingo=function(e){"use strict";var t=e._SetNamespace("Lib");e._CopyBinding("equal","=="),e._CopyBinding("setq","="),e._CopyBinding("and","&&"),e._CopyBinding("or","||"),e._CopyBinding("loop","while"),e._Import("number","difference","-"),e._Import("number","greater",">"),e._Import("number","lesser","<"),e._Import("number","times","*"),e._Import("number","plus","+"),e._Import("number","quotient","/"),e._Import("number","quotient","/."),e._Import("number","mod","%"),e._SetValue("echo",[]),e._SetValue("err",[]),e._SetValue("rdsDriver"),e._SetBindingList("^",["macro","^",["ex1","ex2"],["list",["`","^"],"ex1","ex2"]]),e._SetBindingList("!",["macro","!",["ex1"],["list",["`","!"],"ex1"]]),e._SetBindingList("~",["macro","~",["ex1"],["list",["`","~"],"ex1"]]),e._SetBindingList("~=",["macro","~=",["ex1","ex2"],["list",["`","~="],"ex1","ex2"]]),e._SetBindingList("#[",["macro","#[",["ex1","ex2"],["list",["`","#["],"ex1","ex2"]]),e._SetBindingList("dereflist",["macro","dereflist","x",["cons","dereflist","x"]]),e._SetBindingList("!=",["function","!=",["ex1","ex2"],["not",["equal","ex1","ex2"]]]),e._SetBindingList(">=",["function",">=",["ex1","ex2"],["or",["greater","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("<=",["function","<=",["ex1","ex2"],["or",["lesser","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("\\.*",["function","\\.*",["expr"],["keys","expr"]]),e._SetBindingList("@",["macro","@",["sym","write"],["=","sym",["eval","sym"]],[[["eval","write"],["put","sym"]]],["cdr","sym"]]),e._SetBindingList("@*",["function","@*",["sym"],["keys",["cdr","sym"]]]),e._SetBindingList("!==",["function","!==",["ex1","ex2"],["not",["eq","ex1","ex2"]]]),e._SetBindingList("<=>",["function","<=>",["ex1","ex2"],[["not",["||","ex1","ex2"]],0],[["||",["<","ex1","ex2"],["not","ex2"]],-1],[["||",[">","ex1","ex2"],["not","ex1"]],1],0]),e._SetBindingList("\\..",["macro","\\..",["ex1","ex2"],["list",["`","\\.."],"ex1","ex2"]]),e._SetBindingList("\\..<",["macro","\\..<",["ex1","ex2"],["list",["`","\\..<"],"ex1","ex2"]]),e._SetBindingList("subat",["function","subat",["tree","reps","false","map","pair"],["global"],["=","map",{dictionary:{}}],[[["&&",["not",["tuple","reps"]],["not",["array","reps"]]],["return","tree"]]],[[["&&",["not",["tuple",[".","reps",0]]],["not",["array",[".","reps",0]]]],["=","reps",{array:["reps"]}]]],["for",["let","lambda",["iter"],["=","iter",["iterate","reps",["`","pair"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","pair",[".","iter","$value"]],["set[","map",[".","pair",0],"pair"]]]],["function","sarray",["items","false","out","item"],["=","out",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","items",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],[".","out","push",[["recur","item"]]]]]],"out"],["function","sdict",["items","false","out","key","data"],["=","out",{dictionary:{}}],["for",["let","lambda",["iter"],["=","iter",["iterate","items",["`",["key","data"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["key","data"],[".","iter","$value"]],[[["deref","map","key"],["=","key",[".",["deref","map","key"],1]]]],["set[","out","key",["recur","data"]]]]],"out"],["call",["function","recur",["sub","false","make"],[["tuple","sub"],["while","false",[["not",["not",["empty","sub"]]]],["push",["recur",["pop","sub"]],"make"]],["reverse","make"]],[["array","sub"],["sarray","sub"]],[["dictionary","sub"],["sdict","sub"]],[["&&",["deref","map","sub"],["==",["typeof","sub"],["typeof",[".",["deref","map","sub"],0]]]],[".",["deref","map","sub"],1]],"sub"],"tree"]]),e._SetBindingList("subatq",["macro","subatq",["tree","reps"],["subat","tree",["eval","reps"]]]),e._SetBindingList("prepad",["function","prepad",["value","length","padstr"],[[["not","padstr"],["=","padstr","$ "]]],["=","value",["tostring","value"]],[".",["strcat",[".","padstr","repeat",["length"]],"value"],"slice",[["-","length"]]]]),e._SetBindingList("postpad",["function","postpad",["value","length","padstr"],[[["not","padstr"],["=","padstr","$ "]]],["=","value",["tostring","value"]],[".",["strcat","value",[".","padstr","repeat",["length"]]],"slice",[0,"length"]]]),e._SetBindingList("map",["function","map",["targex","func","false","result","item","keylist"],[["array","targex"],["arraycall","targex","map","func"]],[["or",["dictionary","targex"],["xobject","targex"]],["=","result",["new","dictionary"]],["=","keylist",["keys","targex"]],["for",["let","lambda",["iter"],["=","iter",["iterate","keylist",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["xset","result","item",["call","func",["deref","targex","item"],"item","targex"]]]]],"result"],[["atom","targex"],"false"],["for",["let","lambda",["iter"],["=","iter",["iterate","targex",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","result",["cons",["call","func","item",["length","result"],"targex"],"result"]]]]],["reverse","result"]]),e._SetBindingList("iterate",["function","iterate",["target","varsym","false","iterdict","keysym"],[[["not",["||",["symbol","varsym"],["tuple","varsym"]]],["throw",["list","internal",["strcat","$iteration variable invalid: ","varsym"]]]]],["=","iterdict",{dictionary:{$target:"target",$final:"final_value"}}],["function","final_value",["dict"],"dict"],[[["tuple","target"],["=","keysym",["car","target"]],[[["&&",["symbol","keysym"],["deref",["@","keysym"],["`","\\.iterate"]]],["return",["call",["deref",["@","target"],["`","\\.iterate"]],"target","varsym"]]],[["&&",["symbol","keysym"],["deref",["@","iterate"],"keysym"]],["return",["call",["deref",["@","iterate"],"keysym"],"target","varsym"]]]],["set.","iterdict",["`","traverse"],"target"],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","last"],["-",["length","target"],1]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"tuple_next_value"]],["set.","iterdict",["`","next"],"tuple_next"]],["function","tuple_next_value",["dict"],[["empty",[".","dict","traverse"]],["set.","dict",["`","done"],"true"]],["preadjust",[".","dict","index"],"+",1],["set.","dict",["`","value"],["car",[".","dict","traverse"]]],["set.","dict",["`","traverse"],["cdr",[".","dict","traverse"]]],"false"],["function","tuple_next",["dict"],[["empty",[".","dict","traverse"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["list",["car",[".","dict","traverse"]],["preadjust",[".","dict","index"],"+",1]]],["set.","dict",["`","traverse"],["cdr",[".","dict","traverse"]]],"false"]],[["||",["array","target"],["&&",["xobject","target"],["not",["xkeys","target"]]]],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","last"],["-",[".","target","length"],1]],[[["not",[".","iterdict","last"]],["set.","iterdict",["`","last"],-1]]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"array_next_value"]],["set.","iterdict",["`","next"],"array_next"]],["function","array_next_value",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["deref",[".","dict","target"],["preadjust",[".","dict","index"],"+",1]]],"false"],["function","array_next",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["preadjust",[".","dict","index"],"+",1],["set.","dict",["`","value"],["list",["deref",[".","dict","target"],[".","dict","index"]],[".","dict","index"]]],"false"]],[["&&",["object","target"],[".","target","\\.iterate"]],["return",[".","target","\\.iterate",["target","varsym"]]]],[["||",["dictionary","target"],["object","target"],["xobject","target"]],["set.","iterdict",["`","index"],-1],["set.","iterdict",["`","keys"],[".",["keys","target"],"toarray"]],["set.","iterdict",["`","last"],["-",[".",[".","iterdict","keys"],"length"],1]],[[["not",[".","iterdict","last"]],["set.","iterdict",["`","last"],-1]]],[[["symbol","varsym"],["set.","iterdict",["`","next"],"dict_next_key"]],["set.","iterdict",["`","next"],"dict_next"]],["function","dict_next_key",["dict"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["set.","dict",["`","value"],["deref",[".","dict","keys"],["preadjust",[".","dict","index"],"+",1]]],"false"],["function","dict_next",["dict","false","index"],[[">=",[".","dict","index"],[".","dict","last"]],["set.","dict",["`","done"],"true"]],["=","key",["deref",[".","dict","keys"],["=","index",["preadjust",[".","dict","index"],"+",1]]]],["set.","dict",["`","value"],["list","key",["deref",[".","dict","target"],"key"],"index"]],"false"]],[["not","target"],["set.","iterdict",["`","last"],["set.","iterdict",["`","index"],-1]],["set.","iterdict",["`","next"],"empty_next"],["set.","dict",["`","done"],"true"],["function","empty_next",["dict"],"true"]],["throw",["list","internal",["strcat","$don't know how to iterate ",["typeof","target"]]]]],"iterdict"]),e._SetBindingList("sleep",["closure","sleep",["msec"],["=","msec",["||","msec",0]],[".",["future",["function","sleep","false","true"],"msec"],"wait","false"]]),e._SetBindingList("await",["closure","await",["promise","timeout","false","pending"],[[["not","promise"],["throw",["list","internal","$await on false promise"]]]],["=","pending",["new","nonce"]],[".","promise","then",[["function","success",["value"],[".","pending","signal",[["list","false","value"]]]],["function","failure",["error"],[".","pending","signal",[["list","error"]]]]]],[["identity","timeout"],[".","pending","wait",["timeout",["list",["Error",["strcat","$await timeout after ","timeout","$ msec"]]]]]],[".","pending","wait","false"]]),e._SetBindingList("asyncArray",["closure","asyncArray",["elements","maxActive","worker","false","pending","results"],[[["not",["numeric",[".","elements","length"]]],["return","false"]]],["=","results",{array:[]}],["=","pending",["new","nonce"]],["set.","pending",["`","active"],0],["set.","pending",["`","index"],0],["set.","pending",["`","running"],{array:[]}],["closure","processOne",["index","false","entry"],["preadjust",[".","pending","active"],"+",1],["set[",[".","pending","running"],"index","true"],["=","entry",["deref","elements","index"]],["function","cancel",["result"],["sprint"],["done","index","result"]],["future",["function","coProcess",["false","result"],["catch",[["=","result",["worker","entry","index","cancel"]]],"false",[["sprint"],["done","index","result"]]]],0]],["function","done",["index","result"],[[["deref",[".","pending","running"],"index"],["set[","results","index","result"],["preadjust",[".","pending","active"],"-",1],["set[",[".","pending","running"],"index","false"]]],["doMore"]],["function","doMore","false",[["&&",["==",[".","pending","active"],0],[">=",[".","pending","index"],[".","elements","length"]]],[".","pending","signal",["results"]]],["while","false",[["not",["&&",["<",[".","pending","active"],"maxActive"],["<",[".","pending","index"],[".","elements","length"]]]]],["processOne",["postadjust",[".","pending","index"],"+",1]]]],["doMore"],"pending"]),e._SetBindingList("syncAdapter",["function","syncAdapter","args",["call",["closure","syncWaiter",["proc","arglist","false","pending"],["=","pending",["new","nonce"]],["apply","proc",["reverse",["reverse","arglist"],["list",["function","lambda",["error","data"],[".","pending","signal",[["list","error","data"]]]]]]],[".","pending","wait",["proc"]]],["pop","args"],"args"]]),e._SetBindingList("asyncResult",["closure","asyncResult","args",[".",["future",["function","asyncResultF","false",["apply",["pop","args"],"args"]]],"run","false"]]),e._SetBindingList("jsInstanceOf",["function","jsInstanceOf",["item","constructor"],[["xobject","item","constructor"],["loop","false",[[["not","item"],"false",["break"]],[["eq","item",[".","constructor","prototype"]],["break"]],["=","item",[".",[".","js","o"],"getPrototypeOf",["item"]]]]]]]),e._SetBindingList("jsTypedArray",["function","jsTypedArray",["item"],[[["not",["xobject","jsTypedArrayType"]],[[".","js","w"],["=","jsTypedArrayType",[".",[".","js","o"],"getPrototypeOf",[[".",[".","js","w"],"Uint8Array"]]]]],["=","jsTypedArrayType",[".",[".","js","o"],"getPrototypeOf",[[".",[".","js","g"],"Uint8Array"]]]]]],["||",["jsInstanceOf","item","jsTypedArrayType"],["jsInstanceOf",[".","item","constructor"],"jsTypedArrayType"]]]),e._SetBindingList("makeActivator",["closure","makeActivator",["nslist","false","checkns","targns"],["=","checkns",["nscaller"]],[[["not","nslist"],["=","nslist",["nsactive"]]]],["=","targns",["car","nslist"]],["enclose",["function","lambda","false",[["eq","checkns",["nscaller"]],["nsactive","nslist"]],["throw",[".","$activate ","concat",[[".","nslist","tostring"],"$ needs ",[".","checkns","tostring"],"$ not ",[".",["nscaller"],"tostring"]]]]],"targns"]]),e._SetBindingList("dialect",["function","dialect",["id"],[["identity","id"],[[["==","id",0],["=","id",[".",["dialect"],0]]]],[".",[".",[".","module","exports"],"Registry"],"findName",["id"]]],[".",[".",[".","module","exports"],"Registry"],"dialects","false"]]),e._SetBindingList("RuntimeOperators",["function","RuntimeOperators","false",[".",[".","module","exports"],"operators"]]),e._AddPropertyList("RuntimeLibInit",[["$.lingoInit","true"]]),e._SetBindingList("RuntimeLibInit",["function","RuntimeLibInit",["modname","false","manifest","operlist","runtimelib"],["=","manifest",["`",["=","+","-","*","/","/.","%","<",">","&&","and","||","or","^","!","~","~=","`","#[","dereflist","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","\\..","\\..<","\\...","subat","subatq","prepad","postpad","map","iterate","sleep","await","asyncArray","syncAdapter","asyncResult","jsInstanceOf","jsTypedArray","makeActivator","dialect","RuntimeOperators","RuntimeLibInit"]]],["=","operlist",["`",["=","+","-","*","/","/.","%","<",">","&&","and","||","or","^","!","~","~=","`","#[","==","!=",">=","<=","\\.*","@","@*","eq","not","while","for","===","!==","<=>","\\..","\\..<"]]],["=","runtimelib",["`",["dereflist","subat","subatq","prepad","postpad","map","iterate","defproc","defprop","sleep","await","asyncArray","syncAdapter","asyncResult","jsInstanceOf","jsTypedArray","makeActivator","dialect"]]],["function","nsCopyproc",["sym","proc"],[["nsrights","sym"],["copyproc","sym","proc"]],[["!=",[".","sym","proc"],"proc"],["debuglog","$no rights to set sym from proc","sym","proc"]]],[[["symbol","NideBuild"],["nsCopyproc",["`","="],"setq"],["nsCopyproc",["`","+"],"plus"],["nsCopyproc",["`","-"],"difference"],["nsCopyproc",["`","*"],"times"],["nsCopyproc",["`","/"],"quotient"],["nsCopyproc",["`","/."],"quotient"],["nsCopyproc",["`","%"],"mod"],["nsCopyproc",["`","<"],"lesser"],["nsCopyproc",["`",">"],"greater"],["nsCopyproc",["`","&&"],["`","and"]],["nsCopyproc",["`","||"],["`","or"]],["nsCopyproc",["`","while"],["`","loop"]],["nsCopyproc",["`","for"],"call"],["nsCopyproc",["`","=="],"equal"],["nsCopyproc",["`","==="],["`","eq"]],["sudo",["set[",["@","tuple","true"],["`","append"],"append"]],["sudo",["set[",["@","tuple","true"],["`","subat"],"subat"]],["sudo",["set[",["@","tuple","true"],["`","map"],"map"]],["sudo",["set[",["@","array","true"],["`","map"],"map"]]]],[[["not","modname"],["=","modname",[".","module","id"]]]],[".",[".","Naan","module"],"build",["modname","$RuntimeLib",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","subat"],"subat"],["set.",[".","modobj","exports"],["`","subatq"],"subatq"],["set.",[".","modobj","exports"],["`","prepad"],"prepad"],["set.",[".","modobj","exports"],["`","postpad"],"postpad"],["set.",[".","modobj","exports"],["`","map"],"map"],["set.",[".","modobj","exports"],["`","iterate"],"iterate"],["set.",[".","modobj","exports"],["`","operators"],[".",[".","Naan","module"],"export",["operlist"]]],["set.",[".","modobj","exports"],["`","runtimelib"],[".",[".","Naan","module"],"export",["runtimelib"]]],["sudo",["set.","Naan",["`","runtimelib"],[".",[".","modobj","exports"],"runtimelib"]]]]]]]),e._Execute(["RuntimeLibInit","$Lib"]),e._SetBindingList("defproc",["macro","defproc","exlist",["call",["function","lambda",["false","procname"],["=","procname",["caadr","exlist"]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define ",["car","exlist"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","exlist",["enclose","exlist"]],[[["&&",["!=",["getproc","procname"],"exlist"],["getproc","procname"]],["printline","$ ==> redefined: ","procname"]]],["putproc","procname","exlist"],"procname"]]]),e._SetBindingList("defprop",["macro","defprop",["ex1","ex2","ex3","false","fbind","procname"],[["member",["car","ex3"],["`",["function","function&","macro","closure","let","let&"]]],["=","procname",["compress",["list","ex1","ex2"]]],[["!=",["namespace","procname"],["car",["nsactive"]]],["printline","$cannot define property ",["car","ex3"],"$ ","procname","$ in ",["tostring",["car",["nsactive"]]]],"false"],["=","fbind",["enclose",["cons",["car","ex3"],["cons","procname",["cddr","ex3"]]]]],[[["&&",["get","ex1","ex2"],["!=",["get","ex1","ex2"],"fbind"]],["print","$ ==> redefined: "],["printline","ex1","space","ex2"]]],["putproc","procname","fbind"],["put","ex1","ex2","procname"],"ex1"],[["==",["get","ex1","ex2"],"ex3"],"ex1"],[[["get","ex1","ex2"],["print","$ ==> redefined: "],["printline","ex1","space","ex2"]]],["put","ex1","ex2","ex3"],"ex1"]),e._SetBindingList("DefineLanguage",["closure","DefineLanguage",["langname","grammar","parser","unparser"],["closure","dialect",["name","operators","enterDNS","false","dobj"],["=","dobj",["new","object","this"]],["set.","dobj",["`","ns"],[".",["nsactive"],0]],["set.","dobj",["`","name"],"name"],["set.","dobj",["`","grammar"],["new","grammar"]],["set.","dobj",["`","operators"],"operators"],["set.","dobj",["`","exunparse"],{dictionary:{}}],["set.","dobj",["`","parser"],"parser"],["set.","dobj",["`","unparser"],"unparser"],["set.","dobj",["`","parse"],["function","parse",["source"],[".","dobj","parser",["source",[".","dobj","grammar"],[".","dobj","operators"]]]]],["set.","dobj",["`","parseErrorString"],["function","parseErrorString",["error"],["langParseErrorString","error"]]],["set.","dobj",["`","unparse"],["function","unparse",["expr","options"],[".","dobj","unparser",["expr","options",[".","dobj","grammar"],[".","dobj","exunparse"]]]]],["set.","dobj",["`","print"],["function","print",["expr","options"],[".",[".","dobj","unparser",["expr","options",[".","dobj","grammar"],[".","dobj","exunparse"]]],"string","false"]]],["set.","dobj",["`","defhook"],["function","defhook",["hook","false","returner","newsym"],["=","returner",["makeActivator"]],["enterDNS"],["=","newsym",["compress","hook"]],["copyproc","newsym","hook"],["returner"],"newsym"]],["set.","dobj",["`","defunparse"],["function","defunparse",["sym","proc"],["set[",[".","dobj","exunparse"],"sym","proc"]]],["set.","dobj",["`","redefine"],["function","redefine",["sym","proc","false","returner"],["=","returner",["makeActivator"]],["enterDNS"],["=","sym",["compress","sym"]],[[["tuple","proc"],["putproc","sym","proc"]],["copyproc","sym","proc"]],["returner"],"sym"]],["set.","dobj",["`","defatt"],["function","defatt",["sym","key","value","false","returner"],["=","returner",["makeActivator"]],["enterDNS"],["=","sym",["compress","sym"]],["put","sym","key","value"],["returner"],"sym"]],["set.","dobj",["`","defsym"],["function","defsym",["syms","false","cursyms"],["=","returner",["makeActivator"]],["enterDNS"],[[["atom","syms"],["=","cursyms",["compress","syms"]]],["while","false",[["not",["not",["atom","syms"]]]],["push",["compress",["pop","syms"]],"cursyms"]],["=","cursyms",["reverse","cursyms"]]],["returner"],"cursyms"]],["set.","dobj",["`","require"],["function","drequire",["path","reload","false","returner","result"],["=","returner",["makeActivator"]],["enterDNS"],["=","result",["require","path","options","dobj"]],["returner"],"result"]],["set.","dobj",["`","info"],["function","info","false",{dictionary:{$name:[".","dobj","name"],$grammar:[".","dobj","grammar"],$operators:[".","dobj","operators"],$parser:[".","dobj","parser"],$unparser:[".","dobj","unparser"],$namespace:[".","dobj","ns"]}}]],["set.","dobj",["`","destroy"],["function","destroy","false",[[["not",[".","dobj","module"]],["return","false"]]],[".",[".",[".","module","exports"],"Registry"],"unregister",["dobj"]],[".",[".","dobj","module"],"destroy","false"],["set.","dobj",["`","module"],"false"],"true"]],["set.","dobj",["`","derive"],["function","derive",["diname","operators","false","newdialect"],[[["not","operators"],["=","operators",[".","dobj","operators"]]]],[[[".",[".",[".","module","exports"],"Registry"],"findName",["diname"]],"false"]],["=","newdialect",["initialize","diname","operators"]],["set.","newdialect",["`","parent"],"dobj"],"newdialect"]],"dobj"],["function","initialize",["langname","operators","false","newdialect","dialsym"],[".",[".","Naan","module"],"build",[[".","$Lang_","concat",["langname"]],"$RuntimeLib",["function","lambda",["modobj","compobj","false","locops"],[".",[".","Naan","module"],"letimport",["operators"]],["=","dialsym",["compress","$Dialect"]],["=","locops",{dictionary:{}}],["for",["let","lambda",["iter"],["=","iter",["iterate","operators",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["set[","locops","key",["compress","key"]]]]],["set[","locops","dialsym","dialsym"],["=","newdialect",["dialect","langname","locops",["makeActivator"]]],["set.","newdialect",["`","module"],"modobj"],["call",["closure","lambda",["dialect"],["putproc","dialsym",["function","lambda","false","dialect"]]],"newdialect"],["assign","dialsym","newdialect"]]]],[".",[".",[".","module","exports"],"Registry"],"register",["langname","newdialect"]],"newdialect"],["initialize","langname",["RuntimeOperators"]]]),e._SetBindingList("Registry",["closure","Registry",["false","registry"],["=","registry",["new","object","this"]],["set.","registry",["`","languages"],{array:[]}],["set.","registry",["`","register"],["function","register",["name","dobj","false","lang"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["==",[".","lang","name"],"name"],["set.","lang",["`","dialect"],"dobj"],["return"]]]]]],[".",[".","registry","languages"],"push",[{dictionary:{$name:"name",$dialect:"dobj"}}]]]],["set.","registry",["`","unregister"],["function","unregister",["dobj"],["set.","registry",["`","languages"],[".",[".","registry","languages"],"filter",[["function","lambda",["item"],["!==",[".","item","dialect"],"dobj"]]]]],"true"]],["set.","registry",["`","findName"],["function","findName",["name","false","lang"],["=","name",["tostring","name"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["==",[".","lang","name"],"name"],["return",[".","lang","dialect"]]]]]]],"false"]],["set.","registry",["`","findNamespace"],["function","findNamespace",["ns","false","lang"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","registry","languages"],["`","lang"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","lang",[".","iter","$value"]],[[["===",[".",[".","lang","dialect"],"ns"],"ns"],["return",[".","lang","dialect"]]]]]]],"false"]],["set.","registry",["`","dialects"],["function","dialects","false",[".",[".",[".","registry","languages"],"map",[["function","lambda",["item"],[".","item","name"]]]],"totuple"]]],"registry"]),e._SetBindingList("ParsEnvironment",["closure","ParsEnvironment",["dialect","envName","false","penv","gohome","localnaan"],[[["not","envName"],["=","envName","$Parsenv"]]],["=","penv",["new","object","this"]],["=","gohome",["makeActivator"]],[[["||",["not",[".","dialect","parser"]],["not",[".","dialect","unparser"]]],["return","false"]]],["set.","penv",["`","ns"],["new","namespace","envName"]],[[["not",[".","penv","ns"]],["return","false"]]],["nsactive",["cons",[".","penv","ns"],[".",["nsactive"],-2]]],["set.","penv",["`","gons"],["makeActivator"]],["set.","penv",["`","saves"],{dictionary:{$exception:[".",["`","exception"],"proc"],$require:[".",["`","require"],"proc"],$sudo:[".",["`","sudo"],"proc"],$naan:"Naan"}}],["set.","penv",["`","locals"],["letlocal","Naan","require","sudo"]],["=","localnaan",[".",[".","penv","locals"],0]],["assign","localnaan",["new",[".",[".","penv","saves"],"naan"]]],["set.",[".","localnaan","module"],["`","require"],"false"],["set.",[".","localnaan","module"],["`","sudo"],"false"],["putproc",[".",[".","penv","locals"],1],"false"],["putproc",[".",[".","penv","locals"],2],"false"],["set.",[".","localnaan","module"],["`","require"],"false"],["set.",[".","localnaan","module"],["`","sudo"],"false"],["gohome"],["function","evalgo","false",[".","penv","gons","false"]],["function","evalhome","false",["gohome"]],["set.","penv",["`","eval"],["closure","evalf",["expr","false","result"],["evalgo"],["catch",[["=","result",["eval","expr"]]],[[["identity","true"],["=","result","exception"]]],[["evalhome"]]],"result"]],["set.","penv",["`","evalq"],["macro","evalq",["expr"],["evalf","expr"]]],["set.","penv",["`","parse"],["function","parse",["text","options","false","output","source","xchan","errors","error","expr","saves","errtext","row","lastrow","outext"],["=","output",{dictionary:{$errors:{array:[]},$annotations:{array:[]},$text:{array:[]},$exprs:{array:[]},$results:{array:[]}}}],["=","source",["new","textstream","text",["`","string"]]],["=","xchan",["textstreams",["list","source","source"]]],["catch",[[".","penv","gons","false"],["loop","false",["catch",[[".",[".","penv","saves"],"sudo",[["putproc",["`","exception"],"false"]]],["=",["errors","expr"],[".","dialect","parse",["source"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","errors",["`","error"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","error",[".","iter","$value"]],["=","errtext",["langParseErrorString","error"]],["=","row",[".",[".","error","at"],0]],[[["!=","row","lastrow"],[".",[".","output","$annotations"],"push",[{dictionary:{$row:"row",$column:[".",[".","error","at"],1],$text:"errtext",$type:"$error"}}]],["=","lastrow","row"]]],[".",[".","output","errors"],"push",["errtext"]]]]],[[["identity","expr"],[".",[".","output","exprs"],"push",["expr"]],["=","expr",["call",["function","lambda","false",["evalactive","expr"]]]],[".",[".","output","results"],"push",["expr"]],[[".","options","pretty"],["set.","output",["`","pretty"],{array:[]}],[["==",[".",[".","source","tokenlast","false"],"atom"],["`",";>"]],[".",[".","output","pretty"],"push",[["tostring","expr",{dictionary:{$quote:"true"}}]]]],[["!=",[".",[".","source","tokenlast","false"],"atom"],["`",";;"]],[".",[".","output","pretty"],"push",[[".","dialect","print",["expr"]]]]]]]]],"false",[[".",[".","penv","saves"],"sudo",[["putproc",["`","exception"],[".","saves","exception"]]]]]]]],[[["identity","true"],[["and",["==",["tostring",["car","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]]],[["and",["==",["tostring",["car","exception"]],"$internal"],["string",["second","exception"]]],[".",[".","output","errors"],"push",[["second","exception"]]]],[["ErrorObject","exception"],[".",[".","output","errors"],"push",[[".","$exception: ","concat",[["ErrorString","exception"]]]]]],[".",[".","output","errors"],"push",[[".","$exception: ","concat",["exception"]]]]]],[["gohome"],["textstreams","xchan"],["=","outext",[".",[".","source","taketext","false"],"trim","false"]],[[">",[".","outext","length"],0],["set.","output",["`","text"],["new",[".","outext","split",["$\n"]]]]]]],"output"]],["set.","penv",["`","unparse"],["function","unparse",["false","options","text","sym","didprop","key"],["=","options",{dictionary:{$wrapMaxCol:240}}],["=","text","$"],["for",["let","lambda",["iter"],["=","iter",["iterate",["symlist",[".","penv","ns"]],["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],[[["not",["eq","sym",["car","sym"]]],["=","text",[".","text","concat",["sym","$ = ",["car","sym"],"$;;\n\n"]]]]],["=","didprop","false"],["for",["let","lambda",["iter"],["=","iter",["iterate",["@*","sym"],["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],[[["!=",[".","key","charAt",[0]],"$."],["=","didprop","true"],["=","text",[".","text","concat",["sym","$@","key","$ = ",["deref",["@","sym"],"key"],"$;;\n"]]]]]]]],[[["identity","didprop"],["=","text",[".","text","concat",["$\n"]]]]],[[["eq",[".",[".",[".","sym","proc"],1],"namespace"],[".","penv","ns"]],["=","text",[".","text","concat",[[".","dialect","print",[[".","sym","proc"],"options"]],"$;\n\n"]]]]]]]],"text"]],["set.","penv",["`","destroy"],["function","destroy","false",["set.","penv",["`","ns"],["delete",[".","penv","ns"]]]]],"penv"]),e._AddPropertyList("LanguagesInit",[["$.lingoInit","true"]]),e._SetBindingList("LanguagesInit",["function","LanguagesInit",["false","manifest"],["=","manifest",["`",["defproc","defprop","DefineLanguage","Registry","ParsEnvironment","LanguagesInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$Languages",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DefineLanguage"],"DefineLanguage"],["set.",[".","modobj","exports"],["`","ParsEnvironment"],"ParsEnvironment"],["set.",[".","modobj","exports"],["`","Registry"],["Registry"]]]]]]),e._Execute(["LanguagesInit"]),e._SetBindingList("langParser",["function&","langParser",["source","lang","operators","false","result"],["catch",[["=","langErrors",{array:[]}],["=","result",["langParse1",["tokenread"],0]],[[["==",[".","langErrors","length"],0],["=","result",["langStrip","result","operators"]]]],[[["&&",["==",[".","langErrors","length"],0],"tokenlast",["!=",[".","tokenlast","atom"],"cr"],["not",["atTerminator"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$operator missing"}}]]],[["!=",[".","langErrors","length"],0],[".","source","comments","false"],["while","false",[["not",["not",["atTerminator"]]]],["tokenread"]]]],[[["!=",[".","langErrors","length"],0]]],"false"],[["!=",[".","langErrors","length"],0],["list","langErrors"]],["list","false","result"]]),e._SetBindingList("recurParse",["function","recurParse",["text","sloc"],["call",["function&","recurParse1",["source","false","result"],["catch",[["=","result",["langParse1",["tokenread"],0]],[["&&",["==",[".","langErrors","length"],0],"tokenlast",["!=",[".","tokenlast","atom"],"cr"],["not",["atTerminator"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$operator missing"}}]]],[[["identity","true"],"false"]],"false"],"result"],["new","textstream","text","sloc"]]]),e._SetBindingList("langParseErrorString",["function","langParseErrorString",["error","false","output"],[[[".","error","memo"],["=","output",[".","error","memo"]]],["=","output","$parse error"]],[[[".","error","at"],["=","output",[".","output","concat",["$ at (",["+",[".",[".","error","at"],0],1],"$, ",["+",[".",[".","error","at"],1],1],"$)"]]]]],[[[".","error","found"],["=","output",[".","output","concat",["$ found ",[".","error","found"]]]]]],[[[".","error","expected"],["=","output",[".","output","concat",["$ expected ",[".","error","expected"]]]]]],[[["||",[".","error","start"],[".","error","startat"]],["=","output",[".","output","concat",["$ starting"]]],[[["&&",[".","error","start"],["!=",[".","error","start"],"$\n"]],["=","output",[".","output","concat",["$ with ",[".","error","start"]]]]]],[[".","error","startat"],["=","output",[".","output","concat",["$ at (",["+",[".",[".","error","startat"],0],1],"$, ",["+",[".",[".","error","startat"],1],1],"$)"]]]]]],[".","output","replace",[["RegExp","$\n","$g"],"$␍"]]]),e._SetBindingList("tokenread",["function","tokenread","false",["=","tokenlast",[".","source","tokenread","false"]]]),e._SetBindingList("tokenpush",["function","tokenpush",["token"],["=","tokenlast",[".","source","tokenpush",["token"]]]]),e._SetBindingList("tokenmatch",["function","tokenmatch",["pattern","false","result"],["=","result",[".","source","tokenmatch",["pattern"]]],["=","tokenlast",[".","source","tokenlast","false"]],"result"]),e._SetBindingList("tokenpass",["function","tokenpass",["pattern"],["=","tokenlast",[".","source","tokenpass",["pattern"]]]]),e._SetBindingList("passNewline",["function","passNewline",["testeof"],["=","tokenlast",[".","source","tokenpass",["cr","testeof"]]]]),e._SetBindingList("atTerminator",["function","atTerminator","false",["tokenmatch",["`",[";",";;",";>"]]]]),e._SetBindingList("atDelimiter",["function","atDelimiter","false",["tokenmatch",["`",[";",";;",";>",")",",","}","]"]]]]),e._SetBindingList("langPassSeparator",["function","langPassSeparator","false",["=","tokenlast",[".","source","tokenpass",[["list","cr","comma"]]]]]),e._SetBindingList("langAtSeparator",["function","langAtSeparator","false",["or",["==",[".","tokenlast","atom"],"cr"],["==",[".","tokenlast","atom"],"comma"]]]),e._SetBindingList("langExprLoc",["function","langExprLoc",["expr"],[["dictionary","expr"],[".","expr","loc"]],[["atom","expr"],"false"],[["langExprLoc",["car","expr"]]],["langExprLoc",["cdr","expr"]]]),e._SetBindingList("langConsSym",["function","langConsSym",["sym","expr","exlist"],[[["tuple","sym"],["debuglog","$langConsSym warning - non-atomic token","sym"]]],["cons",{dictionary:{$atom:"sym",$loc:["langExprLoc","expr"]}},"exlist"]]),e._SetBindingList("langEnlistSym",["function","langEnlistSym","exlist",[[["tuple",["car","exlist"]],["debuglog","$langEnlistSym warning - non-atomic token",["car","exlist"]]]],["cons",{dictionary:{$atom:["car","exlist"],$loc:["langExprLoc",["second","exlist"]]}},["cddr","exlist"]]]),e._SetBindingList("langSyntax",["function","langSyntax",["expr","startoken","dict"],["=","dict",["new","dict"]],[[["identity","expr"],["set.","dict",["`","at"],["langExprLoc","expr"]],[["dictionary","expr"],["set.","dict",["`","found"],[".","expr","atom"]]]]],[[["identity","startoken"],["set.","dict",["`","start"],[".","startoken","atom"]],["set.","dict",["`","startat"],[".","startoken","loc"]]]],[".","langErrors","push",["dict"]],"false"]),e._SetBindingList("langDebuglog",["function","langDebuglog","args",["function","convlist",["expr"],[["defined","expr","atom"],[".","expr","atom"]],[["atom","expr"],"expr"],["cons",["convlist",["car","expr"]],["convlist",["cdr","expr"]]]],["call",["function","lambda",["args","false","arg","exlist"],["loop","false",[["empty","args"]],["=","arg",["pop","args"]],[[["eq","arg","`"],["push",["pop","args"],"exlist"]],["push",["convlist","arg"],"exlist"]]],["apply",[".",[".","Naan","debug"],"debuglog"],["reverse","exlist"]]],"args"]]),e._SetBindingList("langCleanup",["function","langCleanup",["tree","false","blocknest","inloop"],["function","debugCleanup","args",[["identity","false"],["apply","langDebuglog","args"]]],["function","inbody",["xbody"],[["atom","xbody"],"xbody"],["debugCleanup","$inbody:","xbody"],[[["and","inloop",["<=","blocknest",1]]],[["and",["not",["atom",["car","xbody"]]],["not",["atom",["caar","xbody"]]],["not",["atom",["caaar","xbody"]]]],["debugCleanup","$testing hoist in body:","xbody"],["=","xbody",["hoist","xbody"]]]],["cons",["inbodyitem",["car","xbody"]],["inbody",["cdr","xbody"]]]],["function","inbodyitem",["expr","false","sym"],["debugCleanup","$inbodyitem:","expr"],[["atom","expr"],"expr"],["=","sym",["car","expr"]],[["atom","sym"],["incall","expr"]],[["atom",["car","sym"]],["inwhen","expr"]],["inblock","expr","blocknest"]],["function","ineval",["expr"],[["atom","expr"],"expr"],[["atom",["car","expr"]],["incall","expr"]],["cons",["ineval",["car","expr"]],["inevalist",["cdr","expr"]]]],["function","inevalist",["expr"],[["atom","expr"],"expr"],["cons",["ineval",["car","expr"]],["inevalist",["cdr","expr"]]]],["function","inquote",["expr"],[["atom","expr"],"expr"],["cons",["inquote",["car","expr"]],["inquote",["cdr","expr"]]]],["function&","inloop",["pbody","blocknest","inloop"],["debugCleanup","$inloop:","pbody","blocknest","inloop"],["=","blocknest",0],["=","inloop","true"],["cons",["car","pbody"],["second","pbody"],["inbody",["cddr","pbody"]]]],["function&","inproc",["fbind","blocknest"],["debugCleanup","$inproc:","fbind","blocknest"],["=","blocknest",0],["cons",["car","fbind"],["cons",["second","fbind"],["cons",["inquote",["third","fbind"]],["inbody",["cdddr","fbind"]]]]]],["function","inconditem",["expr"],["debugCleanup","$inconditem:","expr"],[["atom","expr"],"expr"],["cons",["inwhen",["car","expr"]],["inconditem",["cdr","expr"]]]],["function&","incond",["expr","blocknest"],["debugCleanup","$incond:","expr"],["cons",["car","expr"],["inconditem",["cdr","expr"]]]],["function","incatch",["expr"],["debugCleanup","$incatch:","expr"],["list",["car","expr"],["inbody",["second","expr"]],["inconditem",["third","expr"]],["inbody",[".","expr",3]]]],["function","incall",["expr","false","sym"],["debugCleanup","$incall:","expr"],["=","sym",[".",["car","expr"],"atom"]],[["==","sym",["`","loop"]],["inloop","expr"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","expr"]],[["==","sym",["`","cond"]],["incond","expr",["+","blocknest",2]]],[["==","sym",["`","body"]],["inbody","expr"]],[["==","sym",["`","catch"]],["incatch","expr"]],[["==","sym","`"],["debugCleanup","$inquote:","expr"],["inquote","expr"]],["cons",["car","expr"],["inevalist",["cdr","expr"]]]],["function","inwhen",["expr","false","nexpr"],["debugCleanup","$inwhen:","expr"],["=","nexpr",["cdr","expr"]],[["&&",["not",["cdr","nexpr"]],["not",["or",["atom","nexpr"],["atom",["car","nexpr"]],["atom",["caar","nexpr"]],["atom",["caaar","nexpr"]]]]],["debugCleanup","$inwhen block","blocknest"],["=","nexpr",["hoist","nexpr"]],["cons",["incall",["car","expr"]],["inblock","nexpr","blocknest"]]],["cons",["incall",["car","expr"]],["hoist",["delbreak",["cdr","expr"],"blocknest"]]]],["function&","delbreak",["expr","blocknest"],["debugCleanup","$delbreak:","expr","blocknest"],[["atom","expr"],"expr"],[[["&&",["tuple",["car","expr"]],["tuple",["caar","expr"]],["tuple",["caaar","expr"]]],["preadjust","blocknest","+",1],["debugCleanup","$delbreak block:","blocknest"]]],["=","expr",["hoist","expr"]],[["and",["==",[".",["caar","expr"],"atom"],["`","break"]],["not",["cdr",["car","expr"]]],["<=","blocknest",1]],["debugCleanup","$did delbreak from:","expr"],["=","delbreak","true"],"false"],["cons",["inbodyitem",["car","expr"]],["delbreak",["cdr","expr"],"blocknest"]]],["function&","inblock",["expr","blocknest","false","nexpr","delbreak"],["debugCleanup","$inblock:","expr","blocknest"],[[["cdr","expr"],["=","blocknest",["+","blocknest",2]]],["=","blocknest",["+","blocknest",1]]],["=","nexpr",["inbodyitem",["car","expr"]]],[["identity","delbreak"],["debugCleanup","$did delbreak below:","nexpr"],"nexpr"],["cons","nexpr",["inbody",["cdr","expr"]]]],["function","hoist",["expr"],[["or",["cdr","expr"],["atom","expr"],["atom",["car","expr"]],["atom",["caar","expr"]],["atom",["caaar","expr"]]],"expr"],["debugCleanup","$hoisted:",["car","expr"]],["hoist",["car","expr"]]],["debugCleanup","$\n### in tree:","tree"],["=","blocknest",0],["ineval","tree"]]),e._SetBindingList("langErrorCheck",["function","langErrorCheck",["tree","false","xproc","proc_parent","xloop","loop_parent","xbody","blocknest"],["global","langDebuglog"],["function","debugErrorCheck","args",[["identity","false"],["apply","langDebuglog","args"]]],["function&","inbody",["lbody","xbody","false","item","more"],[["atom","lbody"],"lbody"],["debugErrorCheck","$inbody:","lbody"],["=","xbody",{dictionary:{$live:"true"}}],["=","item",["car","lbody"]],["=","more",["cdr","lbody"]],[[["atom","item"],[["&&","more",["not",["member",[".",["caar","more"],"atom"],["`",["break","return"]]]]],["langSyntax","item","false",{dictionary:{$memo:"$ignored atom in body"}}]],[["&&",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]]],["inbodyitem","item"],["inbody","more","xbody"]],["function","inbodyitem",["expr","false","sym"],["debugErrorCheck","$inbodyitem:","expr"],[["not",[".","xbody","live"]],[[["not",[".","xbody","dead"]],["langSyntax","expr","false",{dictionary:{$memo:"$dead code"}}]]],["set.","xbody",["`","dead"],"true"],"false"],[["atom","expr"],"expr"],["=","sym",["car","expr"]],[["atom","sym"],["incall","expr"]],[["atom",["car","sym"]],["inwhen","expr"]],["inblock","expr","blocknest"]],["function","ineval",["expr"],["debugErrorCheck","$ineval:","expr"],[["atom","expr"],"expr"],[["atom",["car","expr"]],["incall","expr"]],["inevalist","expr"]],["function","inevalist",["expr"],["debugErrorCheck","$inevalist:","expr"],[["atom","expr"],"expr"],["ineval",["car","expr"]],["inevalist",["cdr","expr"]]],["function","inquote",["expr","inside","false","item"],["debugErrorCheck","$inquote:","expr","inside"],[["atom","expr"],"expr"],["=","item",["car","expr"]],[[["&&","inside",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]],["inquote","item","true"],["inquote",["cdr","expr"],"inside"]],["function","inargs",["expr","proc","narg","false","item","quoted"],["debugErrorCheck","$inargs:","expr"],[["atom","expr"],"expr"],["=","item",["car","expr"]],["=","quoted",["quotedArg","proc","narg"]],[[["tuple","item"],[["identity","quoted"],["=","item",["inquote","item","true"]]],["=","item",["incall","item"]]],[["&&",["symbol",[".","item","atom"]],["not",["findLocalSymbol",[".","item","atom"]]],[".","xproc","globals"],["not",[".","xproc","dynbind"]],["not","quoted"],["==",[".",[".","item","atom"],"namespace"],[".",["nsactive"],0]]],["set[",[".","xproc","undeclared"],[".","item","atom"],"item"]]],["inargs",["cdr","expr"],"proc",["+","narg",1]]],["function","inparms",["expr","false","parm","sym"],["debugErrorCheck","$inparms:","expr"],[["atom","expr"],["=","sym",[".","expr","atom"]],[["identity","sym"],[["not",["symbol","sym"]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid parameter"}}]],["set[",[".","xproc","parameters"],"sym","expr"],[[".","xproc","dynbind"],["findLocalSymbol","sym",[".","xproc","parent"]]]]],["=","parm",["car","expr"]],["=","sym",[".","parm","atom"]],[[["||",["not",["symbol","sym"]],["&&",["not","sym"],["!==","sym","false"]]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid parameter"}}]],[["===","sym","false"],[[".","xproc","locals"],["langSyntax","parm","false",{dictionary:{$memo:"$duplicate `local"}}]],[["atom",["cdr","expr"]],["langSyntax","parm","false",{dictionary:{$memo:"$invalid `local"}}]],["set.","xproc",["`","locals"],{dictionary:{}}],["set.","xproc",["`","unused"],{dictionary:{}}]],[["deref",[".","xproc","parameters"],"sym"],["langSyntax","parm","false",{dictionary:{$memo:"$duplicate parameter"}}]],["set[",[".","xproc","parameters"],"sym","parm"],[[[".","xproc","locals"],["set[",[".","xproc","unused"],"sym","parm"],["set[",[".","xproc","locals"],"sym","parm"]]],[[".","xproc","dynbind"],["findLocalSymbol","sym",[".","xproc","parent"]]]],["inparms",["cdr","expr"]]],["function&","inloop",["pbody","loop_parent","false","blocknest","xloop"],["debugErrorCheck","$inloop:","pbody"],["=","xloop",{dictionary:{$tag:[".",["second","pbody"],"atom"]}}],[[["identity","loop_parent"],["set.","xloop",["`","parent"],"loop_parent"]]],["=","loop_parent","xloop"],["=","blocknest",0],["inbody",["cddr","pbody"]]],["function&","inproc",["fbind","proc_parent","false","blocknest","xproc","sym","item"],["debugErrorCheck","$inproc:","fbind"],["=","xproc",{dictionary:{$ftype:["car","fbind"],$fname:["second","fbind"],$parms:["third","fbind"],$body:["cdddr","fbind"],$procNames:{dictionary:{}},$parameters:{dictionary:{}},$undeclared:{dictionary:{}},$dynbind:["member",[".",["car","fbind"],"atom"],["`",["function&","let&"]]]}}],[[["identity","proc_parent"],["set.","xproc",["`","parent"],"proc_parent"],[[[".","proc_parent","globals"],["set.","xproc",["`","globals"],{dictionary:{}}]]],[[[".","proc_parent","root"],["set.","xproc",["`","root"],[".","proc_parent","root"]]],["set.","xproc",["`","root"],"proc_parent"]],[["&&",["!=",[".",[".","xproc","fname"],"atom"],["`","lambda"]],["deref",[".","proc_parent","procNames"],[".",[".","xproc","fname"],"atom"]]],["langSyntax",[".","xproc","fname"],"false",{dictionary:{$memo:"$duplicate procedure name"}}]],["set[",[".","proc_parent","procNames"],[".",[".","xproc","fname"],"atom"],[".","xproc","fname"]]]],["=","proc_parent","xproc"],["=","blocknest",0],["inparms",[".","xproc","parms"]],["inbody",[".","xproc","body"]],[[["not",[".","xproc","dynbind"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","xproc","unused"],["`",["sym","item"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["sym","item"],[".","iter","$value"]],["langSyntax","item","false",{dictionary:{$memo:"$unused local variable"}}]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","xproc","undeclared"],["`",["sym","item"]]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=",["sym","item"],[".","iter","$value"]],[[["not",["deref",[".","xproc","procNames"],"sym"]],[["&&",[".","xproc","parent"],[".","xproc","globals"]],["set[",[".",[".","xproc","parent"],"undeclared"],"sym","item"]],["langSyntax","item","false",{dictionary:{$memo:"$undeclared global"}}]]]]]]],["function","inconditem",["expr"],["debugErrorCheck","$inconditem:","expr"],[["atom","expr"],"expr"],["inwhen",["car","expr"]],["inconditem",["cdr","expr"]]],["function&","incond",["expr","blocknest"],["debugErrorCheck","$incond:","expr"],["inconditem","expr"]],["function","incatch",["expr"],["debugErrorCheck","$incatch:","expr"],["list",["car","expr"],["inbody",["second","expr"]],["incond",["third","expr"]],["inbody",[".","expr",3]]]],["function","incall",["expr","false","sym","loopt","item"],["debugErrorCheck","$incall:","expr"],["=","sym",[".",["car","expr"],"atom"]],[["==",[".","sym","proc"],[".",["`","loop"],"proc"]],["inloop","expr","loop_parent"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","expr","proc_parent"]],[["==","sym",["`","cond"]],["incond","expr",["+","blocknest",2]]],[["==","sym",["`","body"]],["inbody",["cdr","expr"]]],[["==","sym",["`","catch"]],["incatch","expr"]],[["==","sym","`"],["inquote","expr"]],[["==","sym",["`","global"]],[["not","xproc"],["langSyntax","false","false",{dictionary:{$at:["langExprLoc",["car","expr"]],$memo:"$global forbidden outside of a procedure"}}]],[[".","xproc","dynbind"],["langSyntax","false","false",{dictionary:{$at:["langExprLoc",["car","expr"]],$memo:"$global forbidden in function& and let&"}}]],[[["not",[".","xproc","globals"]],["set.","xproc",["`","globals"],{dictionary:{}}]]],["=","loopt",["cdr","expr"]],["while","false",[["not",["not",["empty","loopt"]]]],["=","item",["pop","loopt"]],[[["not",["symbol",[".","item","atom"]]],["langSyntax","item","false",{dictionary:{$memo:"$invalid global symbol"}}]],["set[",[".","xproc","globals"],[".","item","atom"],"item"]]]],[["||",["==","sym",["`","break"]],["==","sym",["`","continue"]]],["set.","xbody",["`","live"],"false"],[["not","xloop"],["langSyntax",["car","expr"],"false",{dictionary:{$memo:["strcat","sym","$ without loop"]}}]],["=","sym",[".",["cadr","expr"],"atom"]],[["identity","sym"],["=","loopt","xloop"],["while","false",[["not","loopt"]],[[["==","sym",[".","loopt","tag"]],["break"]]],["=","loopt",[".","loopt","parent"]]],[["not","loopt"],["langSyntax",["cadr","expr"],"false",{dictionary:{$memo:"$enclosing loop tag not found"}}]]]],[[["||",["==","sym",["`","return"]],["==","sym",["`","throw"]]],["set.","xbody",["`","live"],"false"]],[["&&",["not","sym"],["tuple",["car","expr"]]],["incall",["car","expr"]],["=","expr",["cdr","expr"]]]],["inargs",["cdr","expr"],["car","expr"],0]],["function","inwhen",["expr","false","nexpr"],["debugErrorCheck","$inwhen:","expr"],["=","nexpr",["cdr","expr"]],[["&&",["not",["cdr","nexpr"]],["not",["or",["atom","nexpr"],["atom",["car","nexpr"]],["atom",["caar","nexpr"]],["atom",["caaar","nexpr"]]]]],["debugErrorCheck","$in whenblock","blocknest"],["incall",["car","expr"]],["inblock","nexpr","blocknest"]],["incall",["car","expr"]],["inbody",["cdr","expr"]]],["function&","inblock",["expr","blocknest"],["debugErrorCheck","$inblock:","expr","blocknest"],[[["cdr","expr"],["=","blocknest",["+","blocknest",2]]],["=","blocknest",["+","blocknest",1]]],["inbodyitem",["car","expr"]],["inbody",["cdr","expr"]]],["function","findLocalSymbol",["sym","start","false","proct"],[[["==","sym",["`","Dialect"]],["return","true"]]],[[["identity","start"],["=","proct","start"]],["=","proct","xproc"]],["while","false",[["not","proct"]],[[["deref",[".","proct","procNames"],"sym"],["break"]]],[[["deref",[".","proct","parameters"],"sym"],["set[",[".","proct","unused"],"sym","undefined"],["break"]]],[[["deref",[".","proct","globals"],"sym"],["break"]]],["=","proct",[".","proct","parent"]]],["not",["not","proct"]]],["function","quotedArg",["proc","narg"],[[["&&",["===",[".",[".","proc","atom"],"proc"],[".",["`","."],"proc"]],["==","narg",1]],["return","true"]]],[[["&&",["===",[".",[".","proc","atom"],"proc"],[".",["`","="],"proc"]],["==","narg",0]],["return","true"]]],"false"],["debugErrorCheck","$\n### langErrorCheck tree:","tree"],["=","blocknest",0],["ineval","tree"],"tree"]),e._SetBindingList("langCorrelateComments",["function","langCorrelateComments",["locmap","false","comments","locations","locdex","loc"],["function","tupleCompare",["a","b"],[["<",[".","a",0],[".","b",0]],-1],[[">",[".","a",0],[".","b",0]],1],[["<",[".","a",1],[".","b",1]],-1],[[">",[".","a",1],[".","b",1]],1],0],["=","comments",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",["reverse",[".","source","comments","false"]],["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],[".","comments","push",[["append",[".","acom","loc"],[".","acom","text"]]]]]]],[".","comments","sort",["tupleSort"]],["=","locations",{array:[]}],["=","locdex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","locmap",["`","loc"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","loc",[".","iter","$value"]],[[["identity","loc"],[".","locations","push",[["list",[".","loc",0],[".","loc",1],"locdex"]]]]],["preadjust","locdex","+",1]]]],[".","locations","sort",["tupleSort"]],["call",["let","lambda",["false","acom","curloc","output","nextdex","nextloc"],["=","locdex",0],["=","curloc",["deref","locations",["postadjust","locdex","+",1]]],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","comments",["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["while","false",[["not",[">",[".","acom",0],[".","curloc",0]]]],["=","curloc",["deref","locations",["postadjust","locdex","+",1]]]],[[["not","curloc"],[".","output","push",[["list","false","false",[".","acom",2]]]]],[["<",[".","acom",0],[".","curloc",0]],[".","output","push",[["list",[".","curloc",2],-1,[".","acom",2]]]]],["=","nextdex","locdex"],["=","nextloc","curloc"],["while","false",[["not",["&&",["==",[".","acom",0],[".","nextloc",0]],[">",[".","acom",1],[".","nextloc",1]]]]],["=","nextloc",["deref","locations",["postadjust","nextdex","+",1]]]],[["==",[".","acom",0],[".","nextloc",0]],[".","output","push",[["list",[".","nextloc",2],0,[".","acom",2]]]],["=","locdex","nextdex"],["=","curloc","nextloc"]],[".","output","push",[["list",[".","curloc",2],1,[".","acom",2]]]]]]]],"output"]]]),e._SetBindingList("langStrip",["function","langStrip",["tree","operators","valproc"],["=","tree",["langCleanup","tree"]],["langErrorCheck","tree"],["langStripLoc","tree","operators","valproc"]]),e._SetBindingList("langStripLoc",["function","langStripLoc",["tree","operators","valproc","false","procnest","fname","locmap","nodecount","curns","nscurrent","nscore","sourcemap"],["=","curns",["nsactive"]],["=","nscurrent",[".","curns",0]],["=","nscore",[".",["nsactive","true"],1]],["function","topmap",["expr"],["function","remap",["expr"],[["dictionary","expr"],["preadjust","nodecount","+",1],[".","locmap","push",[[".","expr","loc"]]]],[["atom","expr"],["preadjust","nodecount","+",1],["debuglog","$langStripLoc: found atom:","expr"],[".","locmap","push",["false"]]],["remap",["car","expr"]],[["cdr","expr"],["remap",["cdr","expr"]]]],[["atom","expr"],"false"],[["==",[".",["car","expr"],"atom"],"`"],"true"],[["member",[".",["car","expr"],"atom"],["`",["function","function&","macro","closure","let","let&"]]],["remap","expr"],"true"],[["topmap",["car","expr"]],"true"],["topmap",["cdr","expr"]]],["function","moveatom",["item","false","sym"],[["not",["symbol",[".","item","atom"]]],[".","item","atom"]],[["&&",["interned",[".","item","atom"]],["dictionary","operators"],["deref","operators",[".","item","atom"]]]],[["&&",[".",[".","item","atom"],"proc"],["!=",[".",[".","item","atom"],"namespace"],"nscurrent"],["!=",[".",[".","item","atom"],"namespace"],"nscore"]],["=","sym",["interned",[".",[".","item","atom"],"tostring"]]],[["&&",["eq",[".","sym","namespace"],"nscurrent"],[".","sym","proc"]],"sym"],[".","item","atom"]],[".","item","atom"]],["function","inbody",["xbody","false","sym"],[["atom","xbody"],["moveatom","xbody"]],["=","sym",[".",["car","xbody"],"atom"]],[["==","sym","`"],["inquote","xbody"]],[["member","sym",["`",["function","function&","macro","closure","let","let&"]]],["inproc","xbody","procnest"]],["split","xbody"]],["function","inquote",["expr"],[["atom","expr"],["moveatom","expr"]],["cons",["inquote",["car","expr"]],["inquote",["cdr","expr"]]]],["function","split",["expr"],[["atom","expr"],["moveatom","expr"]],["cons",["inbody",["car","expr"]],["split",["cdr","expr"]]]],["function&","inproc",["pbody","procnest","false","wasnest","fbind"],[[["=","wasnest","procnest"]],["=","procnest","true"]],["=","fbind",["cons",["split",["car","pbody"]],["split",["second","pbody"]],["split",["third","pbody"]],["split",["cdddr","pbody"]]]],[["identity","wasnest"],"fbind"],["=","fname",["second","fbind"]],[["and",["&&",["not","valproc"],"fname"],["not",["lambda","fname"]],["not",["eq",["car","fbind"],["`","let"]]]],["cons",["`","defproc"],"fbind"]],["enclose","fbind"]],["function","lmCompress",["locmap","false","entry","lastrow","lastcol","nextrow","nextcol"],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","locmap",["`","entry"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","entry",[".","iter","$value"]],["=","nextrow",[".","entry",0]],["=","nextcol",[".","entry",1]],[[["not","entry"],[".","output","push",["false"]]],[["not","lastrow"],[".","output","push",["entry"]]],[["==","lastrow","nextrow"],[".","output","push",[["-","nextcol","lastcol"]]]],[".","output","push",[["list",["-","nextrow","lastrow"],"nextcol"]]]],["=","lastrow","nextrow"],["=","lastcol","nextcol"]]]],"output"],["=","locmap",{array:[]}],["=","nodecount",0],["topmap","tree"],["=","tree",["inbody","tree"]],[[["and","fname",[">",["length","locmap"],1]],["=","comments",["langCorrelateComments","locmap"]],["=","sourcemap",{dictionary:{$count:"nodecount",$comments:"comments"}}],[[["identity","false"],["set.","sourcemap",["`","map"],["lmCompress","locmap"]]]],["put","fname",["`","\\.sourcemap"],"sourcemap"]]],"tree"]),e._SetBindingList("langParse1",["function&","langParse1",["ltoken","riplop","false","rtoken"],["function&","naryCoalesce",["optoken","lexpr","rexpr","false","opsym"],["=","opsym",[".","optoken","atom"]],[["and",["defined","optoken","atom"],["symbol","opsym"],["deref",[".","lang","naryop"],"opsym"]],[["and",["tuple","lexpr"],["==","opsym",[".",["car","lexpr"],"atom"]]],[["and",["tuple","rexpr"],["==","opsym",[".",["car","rexpr"],"atom"]]],["cons","optoken",["append",["cdr","lexpr"],["cdr","rexpr"]]]],["cons","optoken",["append",["cdr","lexpr"],["list","rexpr"]]]],[["and",["tuple","rexpr"],["==","opsym",[".",["car","rexpr"],"atom"]]],["cons","optoken",["append",["list","lexpr"],["cdr","rexpr"]]]],["list","optoken","lexpr","rexpr"]],["list","optoken","lexpr","rexpr"]],["function&","leprop",["false","nlToken"],[["==",[".","tokenlast","atom"],"cr"],["=","nlToken","tokenlast"],[[["not",["passNewline","true"]],["return","false"]]],[["and",["not",["string",[".","tokenlast","atom"]]],["deref",[".","lang","left"],[".","tokenlast","atom"]]],[["deref",[".","lang","prefix"],[".","tokenlast","atom"]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$ambiguous newline (use \\ or ,)"}}]],["deref",[".","lang","left"],[".","tokenlast","atom"]]],["tokenpush","nlToken"],"false"],["deref",[".","lang","left"],[".","tokenlast","atom"]]],["=","ltoken",["passNewline"]],[["atDelimiter"],["langSyntax","ltoken","false",{dictionary:{$memo:"$incomplete expression"}}]],["=","rtoken",["tokenread"]],[[["string",[".","ltoken","atom"]]],[["deref",[".","lang","prefix"],[".","ltoken","atom"]],["=","ltoken",["eval",["deref",[".","lang","prefix"],[".","ltoken","atom"]]]]],[["deref",[".","lang","left"],[".","ltoken","atom"]],["langSyntax","ltoken","false",{dictionary:{$memo:"$not a prefix operator"}}]],[["deref",[".","lang","right"],[".","ltoken","atom"]],["=","ltoken",["list","ltoken",["langParse1","rtoken",["deref",[".","lang","right"],[".","ltoken","atom"]]]]]]],["loop","false",["=","rtoken","tokenlast"],[[["string",[".","ltoken","atom"]],[[["tokenmatch","string"],["=","ltoken",{dictionary:{$atom:["strcat",[".","ltoken","atom"],[".","tokenlast","atom"]],$loc:[".","ltoken","loc"]}}],["tokenread"],["continue"]]],[[".","lang","string"],["=","ltoken",["eval",[".","lang","string"]]]]]],[[["and",["&&",["not",["string",[".","rtoken","atom"]]],["<","riplop",["deref",[".","lang","postleft"],[".","rtoken","atom"]]]],["deref",[".","lang","postfix"],[".","rtoken","atom"]]],["=","ltoken",["eval",["deref",[".","lang","postfix"],[".","rtoken","atom"]]]],["=","rtoken",["tokenread"]]]],[["not",["<","riplop",["leprop"]]],"ltoken"],["=","rtoken","tokenlast"],["tokenread"],[[["string",[".","rtoken","atom"]]],[["deref",[".","lang","infix"],[".","rtoken","atom"]],["=","ltoken",["eval",["deref",[".","lang","infix"],[".","rtoken","atom"]]]]],[["deref",[".","lang","right"],[".","rtoken","atom"]],["=","ltoken",["naryCoalesce","rtoken","ltoken",["langParse1","tokenlast",["deref",[".","lang","right"],[".","rtoken","atom"]]]]]],["=","ltoken",["list","rtoken","ltoken"]]]]]),e._SetBindingList("langParseTo",["function&","langParseTo",["delim","sloc","doval","false","inerrors","expr"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","lptFound","false"],["langPassSeparator"],["=","inerrors",[".","langErrors","length"]],["loop","false",[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"]],[[["atDelimiter"],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"delim",$memo:"$delimiter not found"}}],[["atTerminator"],["break"]]],[[["identity","doval"],["push",["langValueParse"],"expr"]],["push",["langParse1","tokenlast",0],"expr"]],[[["tokenmatch","delim"],["=","lptFound","tokenlast"],["tokenread"],["reverse","expr"],["break"]]],[["&&",["not",["langAtSeparator","delim"]],["==","inerrors",[".","langErrors","length"]]],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"delim",$memo:"$mismatched delimiter"}}],[["atTerminator"],["break"]]]],["tokenread"]]]),e._SetBindingList("langParseToList",["function&","langParseToList",["delim","sloc","false","expr"],["=","expr",["langParseTo","delim","sloc"]],[[["not","expr"],["=","expr",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]]],"expr"]),e._SetBindingList("langReadExpr",["function&","langReadExpr",["false","expr"],["=","expr",["passNewline"]],[["tokenmatch","rpar"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$mismatched parens"}}]],[["tokenmatch","quote"],["=","expr",["tokenread"]],["tokenread"],"expr"],[["tokenmatch","{"],["tokenread"],["langBraceParse","false","expr"]],[["tokenmatch","["],["tokenread"],["langBracketParse","false","false","expr"]],[["not",["tokenmatch","lpar"]],["tokenread"],"expr"],["tokenread"],["=","expr","false"],["loop","false",["passNewline"],[[["tokenmatch","comma"],["tokenread"],[["||",["not","expr"],["tokenmatch",["list","rpar","comma"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$extra comma"}}]]]],[["tokenmatch","rpar"],["tokenread"],["reverse","expr"]],["push",["langReadExpr"],"expr"],[[["tokenmatch","period"],["tokenread"],["=","expr",["reverse",["cdr","expr"],["cons",["car","expr"],["langReadExpr"]]]],[[["tokenmatch","rpar"],["tokenread"],"expr"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$invalid dotted pair"}}],"false"],["break"]]]]]),e._SetBindingList("langTemplateStringParse",["function&","langTemplateStringParse",["strtoken","false","sloc","rxTS","terms","found","result","exlist","item","add"],[[["<",[".",[".","strtoken","atom"],"indexOf",[["`","\\${"]]],0],["return","strtoken"]]],["=","sloc",["langExprLoc","strtoken"]],["=","rxTS",["RegExp","$((?:[^$]|[$](?![{$])|[$]+[{][^}]*$)*)([$]+[{].*?[}])?","$g"]],["=","rxT",["RegExp","$[$]+[{](.*)[}]"]],["=","terms",{array:[]}],["loop","false",["=","found",[".","rxTS","exec",[[".","strtoken","atom"]]]],[["||",["not","found"],["==",[".","found",0],"$"]]],[[[".","found",1],[".","terms","push",[[".","found",1]]]]],[[[".","found",2],[".","terms","push",[[".","found",2]]]]]],["=","exlist",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","terms",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","found",[".","rxT","exec",["item"]]],[[[".","item","startsWith",["$$$"]],[".","exlist","push",[{dictionary:{$atom:[".","item","slice",[1]],$loc:"sloc"}}]]],[[".","found",1],[".","exlist","push",[["recurParse",[".",[".","found",1],"concat",["$;"]],["list",[".","sloc",0],["+",[".","sloc",1],2]]]]]],[[">",[".","item","length"],0],[".","exlist","push",[{dictionary:{$atom:"item",$loc:"sloc"}}]]]],["=","sloc",["list",[".","sloc",0],["+",[".","sloc",1],[".","item","length"]]]]]]],["langConsSym",["`","strcat"],"strtoken",[".","exlist","totuple"]]]),e._SetBindingList("langBraceParse",["function&","langBraceParse",["doeval","sloc","false","obj","expr","value","exlist"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","obj",{dictionary:{}}],["loop","false",["passNewline"],[["tokenmatch",["`","}"]],["tokenread"],["=","expr",["setobj","exlist",["new","dictionary"]]]],[["atDelimiter"],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"$}",$memo:"$delimiter not found"}}]],["=","expr","tokenlast"],[["deref","obj",[".","expr","atom"]],["langSyntax","expr","false",{dictionary:{$memo:"$duplicate key in dictionary",$found:[".","expr","atom"]}}]],["tokenread"],["passNewline"],[[["==",[".","expr","atom"],"`"],["=","expr","tokenlast"],["tokenread"],["passNewline"]]],[["not",["tokenmatch",["`",":"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$missing : in dictionary"}}]],["tokenread"],["passNewline"],["=","value",["langValueParse","doeval"]],["set[","obj",[".","expr","atom"],"value"],[["tokenmatch",["`","}"]],["tokenread"]],[["not",["langAtSeparator"]],["langSyntax","tokenlast","sloc",{dictionary:{$expected:"$, or }",$memo:"$malformed dictionary entry"}}]],["tokenread"]],{dictionary:{$atom:"obj",$loc:["langExprLoc","sloc"]}}]),e._SetBindingList("langBracketParse",["function&","langBracketParse",["doeval","ltoken","sloc","false","exlist"],[[["not","sloc"],["=","sloc","tokenlast"]]],["=","exlist",["langParseTo",["`","]"],"sloc",["not","ltoken"]]],[["identity","ltoken"],[["atom",["cdr","exlist"]],["langEnlistSym","deref","sloc","ltoken",["car","exlist"]]],["langEnlistSym","dereflist","sloc","ltoken","exlist"]],[[["&&","doeval",["==",[".","langErrors","length"],0]],["=","exlist",["cdr",["eval",["cons","false","exlist"]]]]]],{dictionary:{$atom:["new","array","exlist"],$loc:[".","sloc","loc"]}}]),e._SetBindingList("langValueParse",["function","langValueParse",["doeval","false","value"],["=","value",["langParse1","tokenlast",0]],[[["==",[".","langErrors","length"],0],["=","value",["langStrip","value","operators","true"]],[["identity","doeval"],["=","value",["eval","value"]]]]],"value"]),e._SetBindingList("langGenIterate",["function","langGenIterate",["calltok","tagtok","varex","target","xbody","false","sloc","forsym","itersym","bodyloc","iterlist"],["=","sloc",[".","calltok","loc"]],["=","forsym",["unintern",["`","lambda"]]],["=","itersym",["unintern",["`","iter"]]],["=","bodyloc",["langExprLoc","xbody"]],["=","iterlist",["langEnlistSym","itersym","sloc"]],[[["&&",["atom","varex"],["not",["&&",["defined","varex","atom"],["symbol",[".","varex","atom"]],[".","varex","atom"]]]],["return",["langSyntax","varex","false",{dictionary:{$memo:"$invalid iteration variable",$found:[".","varex","atom"]}}]]]],["langConsSym",[".","calltok","atom"],"sloc",["cons",["langEnlistSym",["`","let"],"sloc",{dictionary:{$atom:"forsym",$loc:["langExprLoc","sloc"]}},"iterlist",["langEnlistSym",["`","="],"varex",{dictionary:{$atom:"itersym",$loc:["langExprLoc","varex"]}},["langEnlistSym",["`","iterate"],"varex","target",["langEnlistSym","`","varex","varex"]]],["langConsSym",["`","loop"],"xbody",["cons","tagtok",["list",["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$next",$loc:"bodyloc"}},"iterlist"],["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$final",$loc:"bodyloc"}},"iterlist"]],["langEnlistSym",["`","="],"xbody","varex",["langEnlistSym",["`","."],"xbody",{dictionary:{$atom:"itersym",$loc:"bodyloc"}},{dictionary:{$atom:"$value",$loc:"bodyloc"}}]],"xbody"]]]]]]),e._SetBindingList("langParseRule",["function","langParseRule",["lang","sym"],["or",["deref",[".","lang","left"],"sym"],["deref",[".","lang","right"],"sym"],["deref",[".","lang","prefix"],"sym"],["deref",[".","lang","infix"],"sym"],["deref",[".","lang","postfix"],"sym"]]]),e._AddPropertyList("LangLibInit",[["$.lingoInit","true"]]),e._SetBindingList("LangLibInit",["function","LangLibInit",["false","manifest"],["=","manifest",["`",["langParser","recurParse","langParseErrorString","tokenread","tokenpush","tokenmatch","tokenpass","passNewline","atTerminator","atDelimiter","langPassSeparator","langAtSeparator","langExprLoc","langConsSym","langEnlistSym","langSyntax","langDebuglog","langCleanup","langErrorCheck","langCorrelateComments","langStrip","langStripLoc","langParse1","langParseTo","langParseToList","langReadExpr","langTemplateStringParse","langBraceParse","langBracketParse","langValueParse","langGenIterate","langParseRule","LangLibInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$LangLib",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","ParseErrorString"],"langParseErrorString"]]]]]),e._Execute(["LangLibInit"]),e._SetNamespace("Lingo"),e._Execute([".",[".","Naan","module"],"letlocal",["module"]]),e._Execute([".",[".","Naan","module"],"letinherit",["$Lib"]]),e._AddPropertyList("LingoPreload",[["$.lingoInit","true"]]),e._SetBindingList("LingoPreload",["function","LingoPreload","false",[".",[".","Naan","module"],"letinherit",["$Lib"]]]),e._SetBindingList("LingoParser",["function","LingoParser",["source","grammar","operators"],["=","SynLoop","false"],["=","InProc","false"],["langParser","source","grammar","operators"]]),e._SetValue("lingoGrammar",{dictionary:{$left:{dictionary:{"$(":520,"$[":520,"$@[":520,"$.":500,"$.*":500,"$@":500,"$@*":500,"$=":420,"$+=":420,"$-=":420,"$*=":420,"$/=":420,"$%=":420,"$^":380,"$*":340,"$/.":340,"$/":340,"$%":340,"$+":330,"$-":330,"$<<":320,"$>>":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,"$&&":220,$and:220,"$||":200,$or:200,"$~":120}},$right:{dictionary:{"$.":540,"$@":540,"$^":375,"$++":360,"$--":360,"$*":340,"$/.":340,"$/":340,"$%":340,"$+":330,"$-":330,"$<<":320,"$>>":320,"$..":310,"$..<":310,"$<=":300,"$>=":300,"$<":300,"$>":300,"$!=":300,"$==":300,$eq:300,"$===":300,"$!==":300,"$<=>":300,$not:230,"$!":230,"$&&":220,$and:220,"$||":200,$or:200,"$~":120,"$=":100,"$+=":100,"$-=":100,"$*=":100,"$/=":100,"$%=":100}},$rightSign:360,$rightEqual:100,$highBind:1e3,$prefix:{dictionary:{"$,":"false","$[":["constObject",["lingoBracketParse","false","false","ltoken"]],"$#[":["langConsSym",["`","#["],"tokenlast",["lingoParseTo",["`","#]"],"tokenlast"]],$try:["catchParse"],"$(":["parenParse"],"$`":["quoteParse"],$function:["procParse",["`","function"]],$macro:["procParse",["`","macro"]],$closure:["procParse",["`","closure"]],$let:["procParse",["`","let"]],$if:["ifParse","IfBody"],$else:["keywordParse","ltoken"],$body:["bodyParse"],$cond:["condParse"],$loop:["loopParse"],$break:["deloopParse",["`","break"]],$continue:["deloopParse",["`","continue"]],$return:["returnParse"],$while:["whileParse"],$for:["for2Parse"],$switch:["switchParse"],"$+":["lingoParse1","tokenlast",[".","lingoGrammar","rightSign"]],"$-":["negateParse"],"$!":["notParse"],"$++":["preCrementParse","rtoken",["`","++"],["`","+"]],"$--":["preCrementParse","rtoken",["`","--"],["`","-"]],"${":["constObject",["lingoBraceParse","false","ltoken"]],"$@":["atPrefixParse"]}},$infix:{dictionary:{"$/":["quotientParse","ltoken"],"$/.":["quotientParse","ltoken"],"$@":["atParse","ltoken"],"$@[":["atBracketParse","ltoken","rtoken"],"$[":["constObject",["lingoBracketParse","false","ltoken","rtoken"]],"$=":["equalParse","ltoken",["`","="]],"$+=":["opEqualParse","ltoken",["`","+"]],"$-=":["opEqualParse","ltoken",["`","-"]],"$*=":["opEqualParse","ltoken",["`","*"]],"$/=":["opEqualParse","ltoken",["`","/"]],"$%=":["opEqualParse","ltoken",["`","%"]],"$(":["lparParse","ltoken"]}},$postfix:{dictionary:{"$++":["postCrementParse","ltoken",["`","++"],["`","+"]],"$--":["postCrementParse","ltoken",["`","--"],["`","-"]],"$!":["postBangParse","ltoken"]}},$postleft:{dictionary:{"$++":420,"$--":420,"$!":400}},$naryop:{dictionary:{"$&&":"true",$and:"true","$||":"true",$or:"true"}},$string:["langTemplateStringParse","ltoken"]}}),e._SetBindingList("lingoParse1",["function&","lingoParse1",["arg1","arg2","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParse1","arg1","arg2"]]),e._SetBindingList("lingoReadExpr",["function&","lingoReadExpr",["false","IfBody"],["=","IfBody",["`","IfBody"]],["langReadExpr"]]),e._SetBindingList("lingoBraceParse",["function&","lingoBraceParse",["arg1","arg2","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBraceParse","arg1","arg2"]]),e._SetBindingList("lingoBracketParse",["function&","lingoBracketParse",["arg1","arg2","arg3","false","IfBody"],["=","IfBody",["`","IfBody"]],["langBracketParse","arg1","arg2","arg3"]]),e._SetBindingList("lingoParseTo",["function&","lingoParseTo",["arg1","bloc","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParseTo","arg1","bloc"]]),e._SetBindingList("lingoParseToList",["function&","lingoParseToList",["arg1","bloc","false","IfBody"],["=","IfBody",["`","IfBody"]],["langParseToList","arg1","bloc"]]),e._SetBindingList("constObject",["function","constObject",["tok"],["xlock",[".","tok","atom"]],"tok"]),e._SetBindingList("parenParse",["function","parenParse",["false","expr","sloc"],["=","sloc","tokenlast"],["=","expr",["lingoParse1","tokenlast",0]],[["tokenmatch","rpar"],["tokenread"],"expr"],["langSyntax",["tokenread"],"false",{dictionary:{$expected:"rpar",$memo:"$) or operator not found"}}]]),e._SetBindingList("negateParse",["function","negateParse",["false","expr"],["=","expr",["lingoParse1","tokenlast",[".","lingoGrammar","rightSign"]]],[["numeric",[".","expr","atom"]],{dictionary:{$atom:["negate",[".","expr","atom"]],$loc:[".","expr","loc"]}}],["langEnlistSym",["`","-"],"expr","expr"]]),e._SetBindingList("notParse",["function","notParse",["false","expr"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","!"]]]],["langEnlistSym",["`","not"],"expr","expr"]]),e._SetBindingList("postBangParse",["function","postBangParse",["expr","false","sloc"],["=","sloc","tokenlast"],["langEnlistSym",[".","tokenlast","atom"],"sloc","expr"]]),e._SetBindingList("atPrefixParse",["function","atPrefixParse",["false","expr","ltoken","destoken"],["=","ltoken","tokenlast"],["=","expr",["lingoParse1","ltoken",["deref",[".","lingoGrammar","right"],["`","@"]]]],["=","destoken",{dictionary:{$atom:["`","annotations"],$loc:["langExprLoc","ltoken"]}}],[[["not",["dictionary","annotations"]],["=","annotations",{dictionary:{}}]]],["=","expr",["langEnlistSym","`","expr","expr"]],["langEnlistSym","set.","ltoken","destoken","expr","expr"]]),e._SetBindingList("atParse",["function","atParse",["ltoken","false","expr"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","@"]]]],["langEnlistSym",["`","deref"],"ltoken",["langEnlistSym",["`","@"],"ltoken","ltoken"],["langEnlistSym","`","expr","expr"]]]),e._SetBindingList("atBracketParse",["function","atBracketParse",["ltoken","rtoken"],["lingoBracketParse","false",["langEnlistSym",["`","@"],"ltoken","ltoken"],"rtoken"]]),e._SetBindingList("quotientParse",["function","quotientParse",["lhs","false","rhs"],["=","rhs",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],["`","/"]]]],["langEnlistSym",["`","quotient"],"lhs","lhs","rhs"]]),e._SetBindingList("ifParse",["function&","ifParse",["IfBody"],[[["eq","IfBody",["`","IfBody"]],["return",["langConsSym",["`","cond"],"tokenlast",["ifParse"]]]]],["call",["let","lambda",["notcond","false","expr","nexpr","bloc"],["=","IfBody","true"],[[["tokenmatch","lpar"],["=","bloc","tokenlast"],["tokenread"],["=","expr",["car",["lingoParseTo","rpar","bloc"]]]],["=","expr",["lingoParse1","tokenlast",0]]],[[["dictionary","expr"],["=","expr",["langEnlistSym",["`","identity"],"expr","expr"]]]],[[["not",["tokenmatch","{"]],["langPassSeparator"],["=","expr",["list","expr",["langParse1","tokenlast",0]]]],["=","bloc","tokenlast"],["tokenread"],["=","expr",["cons","expr",["langParseTo",["`","}"],"bloc"]]]],[["not",["tokenmatch",["`","else"]]],["list","expr"]],["tokenread"],[["identity","notcond"],[["tokenmatch",["`","if"]],["tokenread"],["list","expr",["ifParse","true"]]],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["cons","expr",["langParseTo",["`","}"],"bloc"]]],["list","expr",["langParse1","tokenlast",0]]],[["tokenmatch",["`","if"]],["tokenread"],["cons","expr",["ifParse","false"]]],["=","nexpr",["langConsSym",["`","identity"],"tokenlast",["langConsSym",["`","true"],"tokenlast"]]],[[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["=","nexpr",["cons","nexpr",["langParseTo",["`","}"],"bloc"]]]],["=","nexpr",["list","nexpr",["langParse1","tokenlast",0]]]],["list","expr","nexpr"]],"IfBody"]]),e._SetBindingList("keywordParse",["function&","keywordParse",["token"],["langSyntax","token","false",{dictionary:{$memo:"$stray keyword"}}]]),e._SetBindingList("bodyParse",["function&","bodyParse",["false","IfBody"],["call",["let","lambda",["bloc"],[["tokenmatch","lpar"],["=","IfBody","true"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","body"],"tokenlast",["langParseTo","rpar","bloc"]]],{dictionary:{$atom:["`","body"],$loc:["langExprLoc","tokenlast"]}}]]]),e._SetBindingList("ifsParse",["function&","ifsParse",["to","false","IfBody"],["call",["let","lambda",["bloc","conds","expr"],["=","bloc","tokenlast"],["=","conds",["apply","append",["langParseTo","to","bloc"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","conds",["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[["not",["tuple",["car","expr"]]],["langSyntax","expr","false",{dictionary:{$memo:"$if expression required"}}]]]]],"conds"]]]),e._SetBindingList("condParse",["function&","condParse",["false","IfBody"],[[["tokenmatch","lpar"],["tokenread"]],["return",{dictionary:{$atom:["`","cond"],$loc:["langExprLoc","tokenlast"]}}]],["langConsSym",["`","cond"],"tokenlast",["ifsParse","rpar"]]]),e._SetBindingList("loopParse",["function&","loopParse",["false","SynLoop","IfBody"],["call",["let","lambda",["tagex","sloc","bloc"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["atom",["caar","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$loop tag must be an atom"}}]],["=","SynLoop","true"],["=","IfBody","true"],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","loop"],"sloc",["cons","tagex",["langParseTo",["`","}"],"bloc"]]]],["langConsSym",["`","loop"],"sloc",["cons","tagex",["list",["langParse1","tokenlast",0]]]]]]]),e._SetBindingList("deloopParse",["function","deloopParse",["keyword","false","tagex","sloc"],[["not","SynLoop"],["langSyntax","tokenlast","false",{dictionary:{$memo:"$only allowed within loops"}}]],["=","sloc","tokenlast"],[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]],[["not",["atom",["caar","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$tag must be an atom"}}]],["langEnlistSym","keyword","tokenlast","tagex"]],["langConsSym","keyword","tokenlast"]]),e._SetBindingList("returnParse",["function","returnParse","false",[["tokenmatch","lpar"],["langEnlistSym",["`","return"],"tokenlast",["lingoParse1","tokenlast",0]]],["langConsSym",["`","return"],"tokenlast"]]),e._SetBindingList("whileParse",["function&","whileParse",["false","SynLoop","IfBody"],["call",["let","lambda",["sloc","expr","tagex","testex","bloc"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["dictionary",["car","tagex"]]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$while tag must be an atom"}}]],[[["tokenmatch","lpar"],["=","bloc","tokenlast"],["tokenread"],["=","expr",["car",["lingoParseTo","rpar","bloc"]]]],["=","expr",["lingoParse1","tokenlast",0]]],["=","testex",["list",["langEnlistSym",["`","not"],"expr","expr"]]],["=","SynLoop","true"],["=","IfBody","true"],[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["langConsSym",["`","while"],"sloc",["cons","tagex","testex",["langParseTo",["`","}"],"bloc"]]]],["langPassSeparator"],["langConsSym",["`","while"],"sloc",["cons","tagex","testex",["list",["langParse1","tokenlast",0]]]]]]]),e._SetBindingList("for2Parse",["function&","for2Parse",["false","SynLoop","IfBody"],["call",["let","lambda",["sloc","varex","tagex","targex","bloc","bodyex"],["=","sloc","tokenlast"],[[["tokenmatch",["`",":"]],["tokenread"],["=","tagex",["lingoParse1","tokenlast",0]]],["=","tagex",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc"]}}]],[["not",["defined","tagex","atom"]],["langSyntax","tokenlast","false",{dictionary:{$memo:"$for tag must be an atom"}}]],["=","varex",["lingoParse1","tokenlast",0]],[[["==",[".",["car","varex"],"atom"],"quote"],["=","varex",["cadr","varex"]]]],[["not",["tokenmatch",["`","in"]]],["langSyntax","tokenlast","false",{dictionary:{$expected:"$in",$memo:"$malformed for loop"}}]],["tokenread"],["=","targex",["lingoParse1","tokenlast",0]],["=","SynLoop","true"],["=","IfBody","true"],[[["tokenmatch","{"],["=","bloc","tokenlast"],["tokenread"],["=","bodyex",["langParseTo",["`","}"],"bloc"]]],["=","bodyex",["cons",["langParse1","tokenlast",0]]]],["langGenIterate",{dictionary:{$atom:["`","for"],$loc:"sloc"}},"tagex","varex","targex","bodyex"]]]]),e._SetBindingList("switchParse",["function","switchParse",["false","sloc"],["=","sloc","tokenlast"],["langSyntax","sloc",{dictionary:{$memo:"$switch not implemented"}}]]),e._SetBindingList("procParse",["function&","procParse",["begin","false","InProc","IfBody"],["function","convlocal",["parms","false","ptoken","result"],[["atom","parms"],"parms"],["loop","false",["=","ptoken",["pop","parms"]],[[["==",[".","ptoken","atom"],"local"],["=","result",["cons",{dictionary:{$atom:"false",$loc:[".","ptoken","loc"]}},"result"]]],["=","result",["cons","ptoken","result"]]],[["atom","parms"],["reverse","result"]]]],["function","checkparms",["parms","false","sym"],[["not","parms"],"false"],[["&&",["dictionary","parms"],["not",["not",["=","sym",[".","parms","atom"]]]]],[["||",["not",["symbol","sym"]],["langParseRule","lingoGrammar","sym"]],["langSyntax","parms","false",{dictionary:{$memo:"$invalid parameter"}}]]],[["tuple","parms"],["checkparms",["car","parms"]],["checkparms",["cdr","parms"]]]],["call",["let","lambda",["expr","procname","parms","sloc","akey","bloc"],["=","InProc","true"],["=","sloc","tokenlast"],["=","expr",["langReadExpr"]],[[["==",[".","expr","atom"],["`","&"]],[["eq","begin",["`","function"]],["=","begin","function&"],["=","expr",["langReadExpr"]]],[["eq","begin",["`","let"]],["=","begin","let&"],["=","expr",["langReadExpr"]]],["langSyntax","sloc","false",{dictionary:{$memo:"$only function& and let& allowed"}}],["return"]]],[[["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["=","procname",{dictionary:{$atom:["unintern",[".","expr","atom"]],$loc:["langExprLoc","sloc"]}}],["assign",[".","procname","atom"],[".","expr","atom"]],["=","parms",["langReadExpr"]]],["=","procname",{dictionary:{$atom:["unintern","lambda"],$loc:["langExprLoc","sloc"]}}],["=","parms","expr"]],[[["dictionary","annotations"],["for",["let","lambda",["iter"],["=","iter",["iterate","annotations",["`","akey"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","akey",[".","iter","$value"]],["put",[".","procname","atom"],"akey",["deref","annotations","akey"]]]]],["=","annotations",["`","annotations"]]]],[[["||",["&&",["dictionary","parms"],["not",[".","parms","atom"]]],["not","parms"]],["=","parms",{dictionary:{$atom:"false",$loc:["langExprLoc","tokenlast"]}}]],["=","parms",["convlocal","parms"]]],["checkparms","parms"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc",{dictionary:{$memo:"$missing { at start of procedure body"}}]],["=","IfBody","true"],["=","bloc","tokenlast"],["tokenread"],["langConsSym","begin","sloc",["cons","procname",["cons","parms",["langParseTo",["`","}"],"bloc"]]]]]]]),e._SetBindingList("catchParse",["function","catchParse",["false","sloc1","sloc2","sloc3","exbod","catbod","ccond","finbod","bloc"],["=","sloc1","tokenlast"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc1",{dictionary:{$memo:"$missing { after try"}}]],["tokenread"],["=","exbod",["langParseToList",["`","}"],"sloc1"]],["=","sloc2","tokenlast"],[[["tokenmatch",["`","catch"]],["tokenread"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc2",{dictionary:{$memo:"$missing { after catch"}}]],["=","bloc","tokenlast"],["tokenread"],[[["tokenmatch",["`","if"]],["=","ccond",["ifsParse",["`","}"]]]],[["tokenmatch",["`","}"]],["tokenread"]],["=","catbod",["langParseTo",["`","}"],"bloc"]]],[["not","ccond"],[[["not","catbod"],["=","catbod",["langConsSym",["`","false"],"bloc"]]]],["=","ccond",["list",["cons",["langConsSym",["`","identity"],"bloc",["langConsSym",["`","true"],"bloc"]],"catbod"]]]]]],["=","sloc3","tokenlast"],[[["tokenmatch",["`","finally"]],["tokenread"],[["not",["tokenmatch","{"]],["langSyntax","tokenlast","sloc3",{dictionary:{$memo:"$missing { after finally"}}]],["=","bloc","tokenlast"],["tokenread"],["=","finbod",["langParseToList",["`","}"],"bloc"]]]],[["not","ccond"],[["not","finbod"],["langSyntax","tokenlast","sloc1",{dictionary:{$memo:"$try requires catch or finally"}}]],["=","ccond",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc2"]}}],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]],[["not","finbod"],["=","finbod",{dictionary:{$atom:"false",$loc:["langExprLoc","sloc3"]}}],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]],["langEnlistSym",["`","catch"],"sloc1","exbod","ccond","finbod"]]),e._SetBindingList("equalParse",["function","equalParse",["lhs","op","false","rhs","atex","equex"],["=","rhs",["lingoParse1","tokenlast",[".","lingoGrammar","rightEqual"]]],["=","equex",["call",["let","lambda","false",[["&&",["defined","lhs","atom"],["symbol",[".","lhs","atom"]]],["langEnlistSym","op","lhs","lhs","rhs"]],[["==",[".",["car","lhs"],"atom"],"quote"],["langEnlistSym","op","lhs",["second","lhs"],"rhs"]],[["==",[".",["car","lhs"],"atom"],"period"],["langEnlistSym","set.","lhs",["second","lhs"],["langEnlistSym","quote",["third","lhs"],["third","lhs"]],"rhs"]],[["and",["==",[".",["car","lhs"],"atom"],"set."],["eq",[".",["second","lhs"],"atom"],["`","annotations"]]],["langEnlistSym","set.","lhs",["second","lhs"],["third","lhs"],"rhs"]],[["or",["==",[".",["caar","lhs"],"atom"],"deref"],["==",[".",["caar","lhs"],"atom"],"dereflist"]],["=","atex",["second","lhs"]],[[["==",[".",["car","atex"],"atom"],["`","@"]],["=","atex",["langEnlistSym",["`","@"],"atex",["second","atex"],{dictionary:{$atom:"true",$loc:[".",["car","atex"],"loc"]}}]]]],["langEnlistSym","set[","lhs","atex",["third","lhs"],"rhs"]],["return",["langSyntax","rhs","lhs",{dictionary:{$memo:"$bad assignment"}}]]]]],[["eq","op",["!",["`","="]]],["langEnlistSym",["`","not"],"lhs","equex"]],"equex"]),e._SetBindingList("opEqualParse",["function","opEqualParse",["lhs","op","false","rhs"],["=","rhs",["lingoParse1","tokenlast",[".","lingoGrammar","rightEqual"]]],[["&&",["defined","lhs","atom"],["symbol",[".","lhs","atom"]]],["langEnlistSym","preadjust","lhs","lhs",{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],[["==",[".",["car","lhs"],"atom"],"quote"],["langEnlistSym","preadjust","lhs",["second","lhs"],{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],[["member",[".",["car","lhs"],"atom"],["`",[".","deref","dereflist"]]],["langEnlistSym","preadjust","lhs","lhs",{dictionary:{$atom:"op",$loc:["langExprLoc","lhs"]}},"rhs"]],["langSyntax","rhs","lhs",{dictionary:{$memo:"$bad operator assignment"}}]]),e._SetBindingList("lparParse",["function","lparParse",["expr","false","bloc"],["=","bloc","tokenlast"],[["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["cons","expr",["lingoParseTo","rpar","bloc"]]],[["==",[".",["car","expr"],"atom"],"period"],["langEnlistSym","period","expr",["second","expr"],["third","expr"],["lingoParseToList","rpar","bloc"]]],[["member",[".",["car","expr"],"atom"],["`",["function","function&","macro","closure","let","let&"]]],[[["not","InProc"],["set[",["@",[".",[".","expr",1],"atom"],"true"],["`","\\.lingoInit"],"true"]]],["langConsSym",["`","call"],"expr",["cons","expr",["lingoParseTo","rpar","bloc"]]]],[["or",["==",[".",["caar","expr"],"atom"],"deref"],["==",[".",["caar","expr"],"atom"],"dereflist"]],["langEnlistSym",[".",["caar","expr"],"atom"],"expr",["second","expr"],["third","expr"],["lingoParseToList","rpar","bloc"]]],["langSyntax","bloc","false",{dictionary:{$memo:"$operator missing before ("}}]]),e._SetBindingList("preCrementParse",["function","preCrementParse",["rtoken","opsym","adjuster","false","sloc","expr"],["=","sloc","tokenlast"],["=","expr",["lingoParse1","tokenlast",["deref",[".","lingoGrammar","right"],"opsym"]]],[["or",["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["member",[".",["car","expr"],"atom"],["`",[".","deref","dereflist"]]]],["langEnlistSym","preadjust","sloc","expr",{dictionary:{$atom:"adjuster",$loc:["langExprLoc","sloc"]}},{dictionary:{$atom:1,$loc:["langExprLoc","sloc"]}}]],["langSyntax","expr","false",{dictionary:{$memo:"$not an lvalue"}}]]),e._SetBindingList("postCrementParse",["function","postCrementParse",["expr","opsym","adjuster","false","sloc"],["=","sloc","tokenlast"],[["or",["&&",["defined","expr","atom"],["symbol",[".","expr","atom"]]],["member",[".",["car","expr"],"atom"],["`",[".","deref","dereflist"]]]],["langEnlistSym","postadjust","sloc","expr",{dictionary:{$atom:"adjuster",$loc:["langExprLoc","sloc"]}},{dictionary:{$atom:1,$loc:["langExprLoc","sloc"]}}]],["langSyntax","expr","false",{dictionary:{$memo:"$not an lvalue"}}]]),e._SetBindingList("quoteParse",["function","quoteParse",["false","expr"],["=","expr","tokenlast"],[["member",[".","expr","atom"],["`",["quote",")","{","[","`","\n"]]],["tokenread"],"expr"],["langEnlistSym","`","expr",["langReadExpr"]]]),e._AddPropertyList("LingoInit",[["$.lingoInit","true"]]),e._SetBindingList("LingoInit",["function","LingoInit",["modname","false","manifest"],["=","manifest",["`",["LingoPreload","LingoParser","lingoGrammar","lingoParse1","lingoReadExpr","lingoBraceParse","lingoBracketParse","lingoParseTo","lingoParseToList","constObject","parenParse","negateParse","notParse","postBangParse","atPrefixParse","atParse","atBracketParse","quotientParse","ifParse","keywordParse","bodyParse","ifsParse","condParse","loopParse","deloopParse","returnParse","whileParse","for1Parse","for2Parse","switchParse","procParse","catchParse","equalParse","opEqualParse","lparParse","preCrementParse","postCrementParse","quoteParse","LingoInit"]]],[[["not","modname"],["=","modname",[".","module","id"]]]],[".",[".","Naan","module"],"build",["modname","$Parse",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],[".",[".","Naan","module"],"letinherit",["$Lib"]],["set.",[".","modobj","exports"],["`","Base"],["DefineLanguage","$Lingo","lingoGrammar","LingoParser","LingoUnparser"]],["=","lingoOperators",[".",[".",[".",[".","modobj","exports"],"Base"],"info","false"],"operators"]]]]]]),e._Execute(["LingoInit","$Lingo"]),e._SetBindingList("LingoPrinter",["function","LingoPrinter",["expr","options"],[".",["LingoUnparser","expr","options"],"string","false"]]),e._SetBindingList("LingoUnparser",["closure","LingoUnparser",["origexpr","options","grammar","extensions","false","unparser","sink","formatter","key","expr","rbp","lbp","owntuple","hookif"],["=","unparser",["new","object","this"]],["set.","unparser",["`","expression"],"origexpr"],[[["not","grammar"],["=","grammar","lingoGrammar"]]],["set.","unparser",["`","sink"],["=","sink",{dictionary:{$row:0,$col:0,$incol:0,$hangdent:0,$wrapping:"true",$rowtokens:{array:[{array:[]}]},$procnesting:0,$endprocNL:"true",$quoteDict:["RegExp","$[`:,}]$"],$breaks:"false",$mirrors:"false",$mirroroot:"false",$tuplemap:"false",$maxmarklen:0,$markdict:"false",$nocycles:["new","weakmap"],$maproot:"false",$defoptions:{dictionary:{$point:"false",$quoted:"true",$indentSize:4,$wrapMinAmount:29,$wrapMaxCol:79,$leftMargin:0,$compact:"true",$maxKeyLength:20,$maxElements:1024,$maxStringLength:["*",64,1024],$noComments:"false",$commentCol:64}}}}]],["call",["let","lambda",["false","item"],[[["not",["dictionary","options"]],["=","options",[".","sink","defoptions"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","options",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["set[",[".","sink","defoptions"],"item",["deref","options","item"]]]]],["=","options",[".","sink","defoptions"]]],["set.","unparser",["`","options"],"options"]]],["set.","sink",["`","incol"],[".","options","leftMargin"]],["=","formatter",{dictionary:{"$`":"uhook`","$=":"uhook=",$deref:"uhookderef",$dereflist:"uhookderef","$set.":"uhookset.","$set[":"uhookset[","$.":"uhook.","$.*":"uhookref*","$@*":"uhookref*",$quotient:"uhookquotient",$catch:"uhookcatch",$for:"uhookfor",$call:"uhookcall",$while:"uhookwhile",$loop:"uhookloop",$cond:"uhookcond",$return:"uhookreturn",$continue:"uhookbreco",$break:"uhookbreco",$preadjust:"uhookpreadjust",$postadjust:"uhookpostadjust",$not:"uhooknot","$!":"uhookbang",$let:"uhookproc","$let&":"uhookproc",$closure:"uhookproc",$macro:"uhookproc",$function:"uhookproc","$function&":"uhookproc"}}],["for",["let","lambda",["iter"],["=","iter",["iterate","extensions",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["set[","formatter","key",["deref","extensions","key"]]]]],["function","earlier",["loc1","loc2"],[["<",["car","loc1"],["car","loc2"]],"loc1"],[[">",["car","loc1"],["car","loc2"]],"loc2"],[["<",["second","loc1"],["second","loc2"]],"loc1"],[[">",["second","loc1"],["second","loc2"]],"loc2"],"loc1"],["function","later",["loc1","loc2"],[[">",["car","loc1"],["car","loc2"]],"loc1"],[["<",["car","loc1"],["car","loc2"]],"loc2"],[[">",["second","loc1"],["second","loc2"]],"loc1"],[["<",["second","loc1"],["second","loc2"]],"loc2"],"loc1"],["function","indentadj",["delta"],["preadjust",[".","sink","incol"],"+",["*","delta",[".","options","indentSize"]]],[["<",[".","sink","incol"],0],["set.","sink",["`","incol"],0]]],["function","nextline","false",["set[",[".","sink","rowtokens"],["preadjust",[".","sink","row"],"+",1],{array:[]}],["set.","sink",["`","col"],[".","sink","incol"]],[[">",[".","sink","hangdent"],0],["preadjust",[".","sink","col"],"+",[".","options","indentSize"]]]],["function&","outoken",["strs","false","str","toklen","outok","sym"],[[["<",[".","sink","col"],[".","sink","incol"]],["set.","sink",["`","col"],[".","sink","incol"]]]],["while","false",[["not",["not",["atom","strs"]]]],["=","str",["pop","strs"]],[[["not",["atom","str"]],["=","owntuple","str"],["continue"]]],[[["symbol","str"],["=","sym","str"],["=","str",["tostring","sym",{dictionary:{$quote:"true",$nonamespace:"true"}}]]]],[[[">",[".","str","length"],[".","options","maxStringLength"]],["=","str",[".","$[String ","concat",[[".","str","length"],"$]"]]]]],[[["==","str","$\n"],["nextline"],["continue"]],[[[">=",[".","str","indexOf",["$\n"]],0],["=","str",["totuple",[".","str","split",["$\n"]]]],["=","outok","false"],["loop","false",["push",["pop","str"],"outok"],[["empty","str"]],["push","$\n","outok"]],["outoken",["reverse","outok"]],["continue"]]]],["=","toklen",["length","str"]],[[["!=",[".","str","trim","false"],"$"],[[["&&",[".","sink","wrapping"],[">",["+",[".","sink","col"],"toklen"],[".","options","wrapMaxCol"]],[">",["-",[".","sink","col"],[".","sink","incol"]],[".","options","wrapMinAmount"]]],["nextline"]]],["=","outok",{dictionary:{$str:"str",$column:[".","sink","col"],$tuple:"owntuple"}}],[[["identity","sym"],["set.","outok",["`","symbol"],"sym"]]],[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"push",["outok"]]]],["preadjust",[".","sink","col"],"+","toklen"]]],["function","mktok","strs",["outoken","strs"]],["function","mktokil","strs",["call",["function","lambda",["false","result"],["set.","sink",["`","wrapping"],"false"],["=","result",["apply","mktok","strs"]],["set.","sink",["`","wrapping"],"true"],"result"]]],["function","spaces",["lop1"],[["not",["and","lop1",["atom","lop1"]]],[["identity","spaceout"],["mktok","space"]]],[["<",["deref",[".","grammar","right"],"lop1"],"lbp"],["mktok","space"]],[["<",["deref",[".","grammar","left"],"lop1"],"rbp"],["mktok","space"]],[["identity","spaceout"],["mktok","space"]],[["not",["isbreak","lop1"]],["mktok","space"]]],["function","parens",["str"],[["deref",[".","grammar","right"],"lop1"],[[">","lbp",["deref",[".","grammar","right"],"lop1"]],["mktokil","str"]],[["deref",[".","grammar","left"],"lop1"],[["<","rbp",["deref",[".","grammar","left"],"lop1"]]],["mktokil","str"]],["=","spaceout","false"]],[["deref",[".","grammar","left"],"lop1"],[["<","rbp",["deref",[".","grammar","left"],"lop1"]]],["mktokil","str"]]],["macro","getokens",["outputter","false","rowstart","colstart"],["function","dequeue",["false","rowdex","coldex","outqueue","col"],["=","outqueue",{array:[]}],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowstart"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[">=",[".","col","column"],"colstart"],["=","outqueue",[".","outqueue","concat",[[".",["deref",[".","sink","rowtokens"],"rowstart"],"splice",["coldex"]]]]],["set.","sink",["`","col"],[".","col","column"]]],["preadjust","coldex","+",1]]]],["set.","sink",["`","row"],"rowstart"],["set.","sink",["`","col"],"colstart"],["=","rowdex","rowstart"],["while","false",[["not",["<",["preadjust","rowdex","+",1],[".",[".","sink","rowtokens"],"length"]]]],[".","outqueue","push",[["`","row"]]],["=","outqueue",[".","outqueue","concat",[[".",["deref",[".","sink","rowtokens"],"rowdex"],"splice",[0]]]]]],[".",["deref",[".","sink","rowtokens"],"rowdex"],"splice",[["+","rowstart",1]]],"outqueue"],["=","rowstart",[".","sink","row"]],["=","colstart",[".","sink","col"]],[["eval","outputter"],["dequeue"]]],["function","putokens",["tokens","false","item"],["for",["let","lambda",["iter"],["=","iter",["iterate","tokens",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],[[["eq","item",["`","row"]],["nextline"]],[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"push",["item"]],["set.","sink",["`","col"],["+",[".","item","column"],["length",[".","item","str"]]]]]]]]],["function","tokenmark","false",{dictionary:{$rowstart:[".","sink","row"],$colstart:[".",["deref",[".","sink","rowtokens"],[".","sink","row"]],"length"],$col:[".","sink","col"],$incol:[".","sink","incol"]}}],["function","tokentruncate",["mark"],[".",["deref",[".","sink","rowtokens"],[".","mark","rowstart"]],"splice",[[".","mark","colstart"]]],[".",[".","sink","rowtokens"],"splice",[["+",[".","mark","rowstart"],1]]],["set.","sink",["`","row"],[".","mark","rowstart"]],["set.","sink",["`","col"],[".","mark","col"]],["set.","sink",["`","incol"],[".","mark","incol"]]],["function","exarray",["arr","false","adex","separator"],[[["deref",[".","sink","nocycles"],"arr"],["mktokil","$[","$<cyclic>","$]"],["return"]]],["set[",[".","sink","nocycles"],"arr","true"],["=","adex",0],["=","separator","space"],["while","false",[["not",["<","adex",[".","arr","length"]]]],[[["dictionary",["deref","arr",["postadjust","adex","+",1]]],["=","separator","$\n"],["break"]]]],["mktok","$["],[[["==","separator","$\n"],["nextline"],["indentadj",1]]],["=","adex",0],["while","false",[["not",["<","adex",[".","arr","length"]]]],[[[">=","adex",[".","options","maxElements"]],["mktok","$<...>"],["break"]]],[[[">","adex",0],["mktokil","$,","separator"]]],["exoutput",["deref","arr",["postadjust","adex","+",1]],"arr",0,0]],[[["==","separator","$\n"],["indentadj",-1]]],["mktok","$]"],["set[",[".","sink","nocycles"],"arr","false"]],["function","exdictionary",["dict","false","depths","dictmap","completed"],["function","render",["whitespace","keypad","false","mark","startrow","notfirst","keylen","keystr","savehang","key"],["=","mark",["tokenmark"]],["=","startrow",[".","sink","row"]],["=","savehang",[".","sink","hangdent"]],["set.","sink",["`","hangdent"],0],["set.","sink",["`","endprocNL"],"false"],[[["identity","keypad"],["mktok","{","$\n"]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],[[["||",["eq",["typeof",["deref","dict","key"]],"dictionary"],["eq",["typeof",["deref","dict","key"]],"array"]],["tokentruncate","mark"],["return","false"]]]]]],["mktok","{"]],[[["identity","keypad"],["indentadj",1]]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["=","keystr","key"],[[["&&",[".","options","quoted"],[".",[".","sink","quoteDict"],"test",["keystr"]]],["=","keystr",[".",'$"',"concat",["keystr",'$"']]]]],["=","keylen",["length","keystr"]],[[["&&","keypad",[">","keypad","keylen"]],["=","keystr",[".","keystr","concat",[[".","space","repeat",[["-","keypad","keylen"]]]]]]]],[[["identity","notfirst"],["mktokil","$,","whitespace"]],[[">",[".","sink","col"],[".","sink","incol"]],["mktokil","space"]]],["=","notfirst","true"],["mktokil","keystr","$:","space"],[[["eq",["typeof",["deref","dict","key"]],["typeof","dict"]],[["||",["deref",[".","sink","nocycles"],["deref","dict","key"]],["deref","dictmap",["deref","dict","key"]]],["mktokil","${","$<cyclic>","$}"]],["set[","dictmap",["deref","dict","key"],"true"],["outputdict",["deref","dict","key"],["+","depth",1]],["set[","dictmap",["deref","dict","key"],"false"]],["exoutput",["deref","dict","key"],"dict",0,0]],[[["&&",["not","keypad"],["!=",[".","sink","row"],"startrow"]],["tokentruncate","mark"],["return","false"]]]]]],[[["identity","keypad"],["indentadj",-1]]],["mktokil","space",["`","}"]],["set.","sink",["`","endprocNL"],"true"],["set.","sink",["`","hangdent"],"savehang"],["return","true"]],["function","computeMaxKeyLengths",["dict","depth","false","key","keylen"],[[["deref","dictmap","dict"],["return"]]],[[[">",["preadjust","completed","+",1],[".","options","maxElements"]],["return"]]],["set[","dictmap","dict","true"],[[["not",["deref","depths","depth"]],["set[","depths","depth",0]]],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","key"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","key",[".","iter","$value"]],["=","keylen",["length","key"]],[[["<",["deref","depths","depth"],"keylen"],["set[","depths","depth","keylen"]]],[[["eq",["typeof",["deref","dict","key"]],["typeof","dict"]],["computeMaxKeyLengths",["deref","dict","key"],["+","depth",1]]]]]]],[[[">",["deref","depths","depth"],[".","options","maxKeyLength"]],["set[","depths","depth",[".","options","maxKeyLength"]]]],["set[","dictmap","dict","false"]],["function&","outputdict",["dict","depth","false","keypad"],[[[">",["preadjust","completed","+",1],[".","options","maxElements"]],["mktok","$<...>"],["return"]]],["=","keypad",["deref","depths","depth"]],[[["&&",[">","depth",0],["<","keypad",["+",["deref","depths",["-","depth",1]],[".","options","indentSize"]]]],["=","keypad",["+",["deref","depths",["-","depth",1]],[".","options","indentSize"]]]]],[["not",["render","$ "]],["render","$\n","keypad"]]],[[["deref",[".","sink","nocycles"],"dict"],["mktokil","${","$<cyclic>","$}"],["return","true"]]],["set[",[".","sink","nocycles"],"dict","true"],["=","depths",{array:[]}],["=","dictmap",["new","weakmap"]],["=","completed",0],["computeMaxKeyLengths","dict",0],["=","completed",0],["set[","dictmap","dict","true"],["outputdict","dict",0],["set[",[".","sink","nocycles"],"dict","false"],"true"],["function","exobject",["obj","false","str"],["=","str",["deref",["@","obj"],["`","\\.tostring"],["obj"]]],[[["not","str"],["=","str",["tostring","obj"]]]],["mktok","str"]],["function","exlist",["lex1","owner","paramlist","false","ex1","xpar","savetup","savenest"],["=","savetup","owntuple"],["=","savenest",[".","sink","procnesting"]],["set.","sink",["`","procnesting"],0],[[["identity","owner"],["=","owntuple","owner"]]],[[["empty","lex1"],["mktokil","$(","$)"]],["=","xpar","lex1"],["=","ex1",["pop","lex1"]],["mktok","$("],["preadjust",[".","sink","hangdent"],"+",1],["loop","false",[[["&&","paramlist",["not","ex1"]],["=","ex1","local"]]],["exoutput","ex1","xpar"],[[["empty","lex1"],[[["identity","lex1"],["mktokil","space","$.","space","lex1"]]],["break"]]],[[["eq","ex1","local"],["mktokil","space"]],["mktokil","$,","space"]],["=","xpar","lex1"],["=","ex1",["pop","lex1"]]],["preadjust",[".","sink","hangdent"],"-",1],["mktokil","$)"]],["set.","sink",["`","procnesting"],"savenest"],["=","owntuple","savetup"]],["function","exannotation",["lex1"],["exoutput",["cadar","lex1"],"owntuple",0,["deref",[".","grammar","left"],["`","@"]]],["mktok",["`","@"]],[["==",["caadr","lex1"],"`"],["exoutput",["cadadr","lex1"],"owntuple",["deref",[".","grammar","right"],["`","@"]],0]],["mktok","$["],["exoutput",["second","lex1"],"owntuple",0,0],["mktok","$]"]],["function&","exoutput",["expr","owntuple","rbp","lbp","spaceout","false","ex1","lop1","lex1"],[[["not","rbp"],["=","rbp",0]]],[[["not","lbp"],["=","lbp",0]]],[["atom","expr"],[["dictionary","expr"],["exdictionary","expr"]],[["array","expr"],["exarray","expr"]],[["object","expr"],["exobject","expr"]],[["and",["float","expr"],["or",["positive",[".","options","point"]],["zero",[".","options","point"]]]],["mktok",[".","expr","toFixed",["point"]]]],[["and",["negative","expr"],[">","lbp",[".","grammar","rightSign"]]],["mktok","$(",["tostring","expr"],"$)"]],[["symbol","expr"],["mktok","expr"]],[[".","options","quoted"],["mktok",["tostring","expr",{dictionary:{$quote:"true"}}]]],["mktok",["tostring","expr"]]],["=","owntuple","expr"],["=","lop1",["car","expr"]],["=","lex1",["cdr","expr"]],[["and","lex1",["empty","lex1"]],[[".","options","quoted"],["mktok",["tostring","expr",{dictionary:{$quote:"true"}}]]],["mktok",["tostring","expr"]]],[["not",["symbol","lop1"]],["exlist","expr"]],[["apply",["deref","formatter","lop1"],["list","lex1","lop1","rbp","lbp","hookif"]]],[["and",["not",["deref",[".","grammar","left"],"lop1"]],["not",["deref",[".","grammar","right"],"lop1"]],["not",["getproc","lop1"]]],["exlist","expr"]],[["empty","lex1"],["mktok","lop1"],["mktokil","$(","$)"]],[["==","lop1","quote"],["mktok","lop1"],["exoutput","ex1","owntuple",[".","grammar","highBind"],0]],["=","ex1",["pop","lex1"]],[["empty","lex1"],["parens","$("],[["deref",[".","grammar","right"],"lop1"],["mktok","lop1"],["spaces","lop1"],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"]],[["deref",[".","grammar","left"],"lop1"],["exoutput","ex1","owntuple",0,["deref",[".","grammar","left"],"lop1"]],["spaces","lop1"],["mktok","lop1"],["parens","$)"]],["mktok","lop1"],["exlist",["cdr","expr"],"expr"]],[["and",["deref",[".","grammar","right"],"lop1"],["deref",[".","grammar","left"],"lop1"]],["parens","$("],["exoutput","ex1","owntuple",0,["deref",[".","grammar","left"],"lop1"]],["loop","false",["=","ex1",["pop","lex1"]],["spaces","lop1"],["mktok","lop1"],["spaces","lop1"],[["empty","lex1"]],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],["deref",[".","grammar","left"],"lop1"]]],["exoutput","ex1","owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"]],["mktok","lop1"],["exlist",["cdr","expr"],"expr"]],["function&","exbody",["upbody","inloop","nobrace","false","startin","lastitem"],["function","debugExbody","args",[["identity","false"],["apply",[".",[".","Naan","debug"],"debuglog"],"args"]]],["function","braceOpen","false",[[[".","options","compact"],["mktokil","space","${"]],["nextline"],["mktok","${"]],["indentadj",1]],["function","braceClose",["goleft"],["indentadj",-1],[["&&",["and",[".","options","compact"],["not","goleft"]],[">",[".","sink","incol"],"startin"]],["mktokil","space","$}"]],["nextline"],["mktok","$}"]],["function","mkiftest",["test","didif"],["nextline"],["preadjust",[".","sink","hangdent"],"+",1],[[["==","test",["`",["identity","true"]]],["mktok","test","$else"]],[[["identity","didif"],["mktok","test","$else if","space"]],["mktok","test","$if","space"]],[["==",["car","test"],["`","identity"]],["exoutput",["second","test"],"test",0,0,"true"]],["exoutput","test","test",0,0,"true"]],["preadjust",[".","sink","hangdent"],"-",1]],["function","mkindented",["upbody","inloop","elseafter"],[["||",[">=",["length",["cdr","upbody"]],2],["&&",["atom",["caar","upbody"]],[">=",["length","upbody"],2]],["&&","upbody","inloop"],["&&","elseafter",["tuple",["car","upbody"]],["tuple",["caar","upbody"]]],["dictionary",["car","upbody"]]],["debugExbody","$mkindented 0","upbody","$|","inloop","$|","elseafter"],["braceOpen"],["mkitems","upbody","false","false"],[[["identity","inloop"],["nextline"],["mktok","$break"]]],["braceClose"]],["debugExbody","$mkindented 1","upbody","$|","inloop","$|","elseafter"],["indentadj",1],["mkitems","upbody","false","false"],[[["identity","inloop"],["mktokil","space","$break"]],[["not","upbody"],["mktokil","space","${ }"]]],["indentadj",-1]],["function","mkitems",["upbody","didif","inloop","false","item","fitem","ffitem","fffitem"],[["empty","upbody"]],["set.",["deref",[".","sink","tuplemap"],"upbody"],["`","bp"],"true"],["=","item",["car","upbody"]],["=","fitem",["car","item"]],["=","ffitem",["car","fitem"]],["=","fffitem",["car","ffitem"]],["debugExbody","$mkitems 0","item","$|","fitem","$|","ffitem","$|","fffitem","$>",["cdr","upbody"]],[[["and","didif",["or",["atom","item"],["atom","fitem"],["and",["not",["atom","ffitem"]],["atom","fffitem"]]]],["debugExbody","$mkitems 1","didif"],["nextline"],["mktok","$else"],["mkindented","upbody","false",["&&",["not",["atom","item"]],["not",["atom","fitem"]]]],["=","upbody","false"]],[["or",["atom","item"],["atom","fitem"]],["debugExbody","$mkitems 2"],[[["&&","lastitem",["array","item"]],["mktok","$,"]]],["nextline"],["exoutput","item","upbody",0,0,"true"]],[["atom","ffitem"],["debugExbody","$mkitems 3","didif","inloop",["atom",["cddr","item"]],["tuple",["cdr","upbody"]],["atom",["caaadr","upbody"]]],["mkiftest",["car","item"],"didif"],["mkindented",["cdr","item"],"inloop",["&&",["atom",["cddr","item"]],["tuple",["cdr","upbody"]],["atom",["caaadr","upbody"]]]],["=","didif",["not","inloop"]]],["mkiftest",["caar","item"],"didif"],["debugExbody","$mkitems 4",["cdar","item"],"$|",["cadr","item"],"$|",["caadr","item"]],["mkindented",["cdar","item"],"false",["tuple",["&&",["caaar","item"],["tuple",["cadr","item"]]]]],["mkitems",["cdr","item"],"true","false"],["=","didif","false"]],["=","lastitem","item"],["mkitems",["cdr","upbody"],"didif","inloop"]],["=","startin",[".","sink","incol"]],["debugExbody","$=====","upbody","nobrace"],[["identity","nobrace"],["indentadj",1],["mkitems","upbody","false","inloop"],["indentadj",-1]],["braceOpen"],["mkitems","upbody","false","inloop"],["braceClose",["&&",["==",[".","sink","procnesting"],1],[".","sink","endprocNL"]]]],["=","hookif",{dictionary:{$parens:"parens",$spaces:"spaces",$mktok:"mktok",$mktokil:"mktokil",$nextline:"nextline",$indentadj:"indentadj",$grammar:"grammar",$exlist:"exlist",$exannotation:"exannotation",$exoutput:["function","lambda",["expr","owner","rbp","lbp","spaceout"],[[["not","owner"],["=","owner","owntuple"]]],["exoutput","expr","tuple","rbp","lbp","spaceout"]],$exbody:["function","lambda",["upbody","inloop","nobrace"],["preadjust",[".","sink","procnesting"],"+",1],["exbody","upbody","inloop","nobrace"],["preadjust",[".","sink","procnesting"],"-",1]]}}],["function","uhookproc",["lex1","proctype","false","fname","fbind","parms"],["preadjust",[".","sink","procnesting"],"+",1],["=","fname",["car","lex1"]],[[["&&",["not",[".","options","noComments"]],["not",[".","sink","maproot"]],["deref",["@","fname"],["`","\\.sourcemap"]]],["set.","sink",["`","maproot"],["cons","proctype","lex1"]]]],["=","fbind","lex1"],["mktok",["tostring","proctype",{dictionary:{$noquote:"true"}}]],["mktok","space"],[[["not",["lambda","fname"]],["exoutput","fname","lex1",0,0,"true"]]],["=","parms",["cadr","fbind"]],[[["identity","parms"],[["atom","parms"],["mktok","space","parms"]],["exlist","parms",["cdr","fbind"],"true"]],["mktok","$(","$)"]],["exbody",["cddr","fbind"]],[[["deref",["@","fname"],["`","\\.lingoInit"]],["mktok","$(","$)"]]],[[["and",[">",[".","sink","procnesting"],1],[".","sink","endprocNL"]],["nextline"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhook`",["lex1","lop1","false","ex1"],["parens","$("],["mktok","lop1"],["=","ex1",["car","lex1"]],[[["atom","ex1"],["exoutput","ex1","owntuple",0,0]],["exlist","ex1"]],["parens","$)"],"true"],["function","uhook=",["lex1","lop1"],["parens","$("],[[["tuple",["car","lex1"]],["mktok","quote"]]],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","space","lop1","space"],["exoutput",["second","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0,"true"],["parens","$)"],"true"],["function","uhookpreadjust",["lex1","lop1","false","target","adjuster","value"],["parens","$("],["=","target",["car","lex1"]],["=","adjuster",["second","lex1"]],["=","value",["third","lex1"]],[[["==","value",1],["mktok","adjuster","adjuster"],["exoutput","target","owntuple",0,["deref",[".","grammar","right"],"adjuster"]]],["exoutput","target","owntuple",0,["deref",[".","grammar","left"],["`","="]]],["mktok","space","adjuster",["`","="],"space"],["exoutput","value","expr",["deref",[".","grammar","right"],["`","="]],0]],["parens","$)"],"true"],["function","uhookpostadjust",["lex1","lop1","false","target","adjuster","value"],["=","target",["car","lex1"]],["=","adjuster",["second","lex1"]],["=","value",["third","lex1"]],[["==","value",1],["parens","$("],["exoutput","target","owntuple",0,["deref",[".","grammar","right"],"adjuster"]],["mktok","adjuster","adjuster"],["parens","$)"],"true"]],["function","uhookbreco",["lex1","lop1"],[["identity","lex1"],["mktok","lop1","space","$:",["tostring",["car","lex1"],{dictionary:{$quote:"true",$nonamespace:"true"}}]]],["mktok","lop1"],"true"],["function","uhookreturn",["lex1","lop1"],[["identity","lex1"],["mktok","lop1","space","$("],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","$)"]],["mktok","lop1"],"true"],["function","uhookcond",["lex1","lop1"],["mktok","lop1","$("],["preadjust",[".","sink","procnesting"],"+",1],["exbody","lex1"],["preadjust",[".","sink","procnesting"],"-",1],["mktok","$)"],"true"],["function","uhookloop",["lex1","lop1","false","looptag"],["=","looptag",["pop","lex1"]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1"]],["preadjust",[".","sink","procnesting"],"+",1],["exbody","lex1","true",["not",["cdr","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookwhile",["lex1","lop1","false","flex","looptag"],["=","looptag",["pop","lex1"]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1","space"]],["=","flex",["car","lex1"]],[[["==",["caar","flex"],["`","not"]],["exoutput",["cadar","flex"],"owntuple",0,0,"true"]],["exoutput","flex","owntuple",0,0,"true"]],["preadjust",[".","sink","procnesting"],"+",1],["exbody",["cdr","lex1"],"true",["not",["cddr","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookfor",["lex1","lop1","false","flex","looptag","targex","varex","upbody"],["=","flex",["car","lex1"]],["=","looptag",[".",[".","flex",4],1]],["=","targex",[".",[".",[".","flex",3],2],1]],["=","varex",[".",[".",[".",[".","flex",3],2],2],1]],["=","upbody",[".",[".","flex",4],-4]],[[["identity","looptag"],["mktok","lop1","space","$:",["tostring","looptag",{dictionary:{$quote:"true",$nonamespace:"true"}}],"space"]],["mktok","lop1","space"]],["exoutput","varex","owntuple",0,0,"true"],["mktok","space","$in","space"],["exoutput","targex","owntuple",0,0,"true"],["preadjust",[".","sink","procnesting"],"+",1],["exbody","upbody","true",["not",["cdr","upbody"]]],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookcall",["lex1","lop1","false","callee"],["=","callee",["car","lex1"]],["set.","sink",["`","endprocNL"],"false"],["preadjust",[".","sink","procnesting"],"+",1],["lprAdjust","uhookProc",1],[[["procedure","callee"],["exoutput","callee","owntuple",0,0],["mktokil","space","$("]],["mktokil","lop1","$("],["exoutput","callee","owntuple",0,0],[["not",["empty",["cdr","lex1"]]],["mktok","$,","space"]]],["set.","sink",["`","endprocNL"],"true"],["=","lex1",["cdr","lex1"]],["loop","false",[["empty","lex1"]],["exoutput",["pop","lex1"],"owntuple",0,0],[["empty","lex1"]],["mktok","$,","space"]],["mktokil","$)"],["preadjust",[".","sink","procnesting"],"-",1],"true"],["function","uhookquotient",["lex1","lop1","false","op"],[[["==",["deref",[".","grammar","infix"],["`","/"]],["deref",[".","grammar","infix"],["`","/."]]],["=","op",["`","/"]]],["=","op",["`","/."]]],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,0,"true"],["mktok","space","op","space"],["exoutput",["second","lex1"],"owntuple",["deref",[".","grammar","right"],"op"],0,"true"],["parens","$)"],"true"],["function&","uhookcatch",["lex1","lop1"],["set.","sink",["`","endprocNL"],"false"],["mktok","$try"],["preadjust",[".","sink","procnesting"],"+",1],["exbody",["car","lex1"]],[[["not",["second","lex1"]]],["nextline"],["mktok","$catch"],["exbody",["second","lex1"]]],[[["not",["third","lex1"]]],["nextline"],["mktok","$finally"],["exbody",["third","lex1"]]],["preadjust",[".","sink","procnesting"],"-",1],["set.","sink",["`","endprocNL"],"true"],"true"],["function","uhook.",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"lop1"]],["mktok",["`","."]],["exoutput",["second","lex1"],"owntuple",0,0],[[["not",["empty",["cddr","lex1"]]],["exlist",["caddr","lex1"]]]],["parens","$)"],"true"],["function","uhookset.",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"lop1"]],["mktok",["`","."]],["exoutput",["cadadr","lex1"],"owntuple",0,0],["mktok","space",["`","="],"space"],["exoutput",["third","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"],"true"],["function","uhookset[",["lex1","lop1","false","expr"],["parens","$("],[[["==",["caar","lex1"],["`","@"]],["exannotation","lex1"]],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"$["]],["mktok","$["],["=","expr",["second","lex1"]],[[["||",["empty","expr"],["getproc",["car","expr"]]],["exoutput","expr","owntuple",0,0]],["loop","false",["exoutput",["pop","expr"],"owntuple",0,0],[["empty","expr"]],["mktok","$,"]]],["mktok","$]"]],["mktok","space",["`","="],"space"],["exoutput",["third","lex1"],"owntuple",["deref",[".","grammar","right"],"lop1"],0],["parens","$)"],"true"],["function","uhookderef",["lex1","lop1","false","expr"],["parens","$("],[[["==",["caar","lex1"],["`","@"]],["exannotation","lex1"]],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","left"],"$["]],["mktok","$["],["=","expr",["second","lex1"]],[[["==","lop1",["`","deref"]],["exoutput","expr","owntuple",0,0]],["loop","false",["exoutput",["pop","expr"],"owntuple",0,0],[["atom","expr"]],["mktok","$,"]]],["mktok","$]"]],[[["not",["empty",["cddr","lex1"]]],["exlist",["caddr","lex1"]]]],["parens","$)"],"true"],["function","uhookref*",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,0],["mktok","lop1"],["parens","$)"],"true"],["function","uhooknot",["lex1","lop1"],[[["==",["caar","lex1"],["!",["`","="]]],["return",["uhook=",["cdar","lex1"],["!",["`","="]]]]]],["parens","$("],["mktok","$!"],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","right"],"lop1"]],["parens","$)"],"true"],["function","uhookbang",["lex1","lop1"],["parens","$("],["exoutput",["car","lex1"],"owntuple",0,["deref",[".","grammar","postleft"],"lop1"]],["mktok","$!"],["parens","$)"],"true"],["function","commentInject",["comments","false","newrows","readx","added","acom","type","textlines","text","col"],["function","addcol",["row","str","col"],[".","row","push",[{dictionary:{$str:"str",$column:"col"}}]],"row"],["=","newrows",{array:[]}],["=","readx",0],["=","added",0],["for",["let","lambda",["iter"],["=","iter",["iterate","comments",["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["=","type",[".","acom",2]],["=","col",[".","acom",1]],["=","textlines",[".",[".","acom",3],"split",["$\n"]]],["while","false",[["not",[">",[".","textlines","length"],0]]],["=","text",[".","textlines","shift","false"]],[[["not",[".","acom",0]],[".","newrows","push",[["addcol",{array:[]},"text",[".","acom",1]]]],["preadjust","added","+",1]],["while","false",[["not",["&&",["<",[".","newrows","length"],["+",[".","acom",0],"added"]],["<","readx",[".",[".","sink","rowtokens"],"length"]]]]],[".","newrows","push",[["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]]]]],[[["||",["<=","type",0],[">=","readx",[".",[".","sink","rowtokens"],"length"]]],[".","newrows","push",[["addcol",{array:[]},"text","col"]]],["preadjust","added","+",1]],[[["<","col",[".","options","commentCol"]],["=","col",[".","options","commentCol"]]]],[".","newrows","push",[["addcol",["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]],"text","col"]]],["=","type",0]]]]]]],["while","false",[["not",["<","readx",[".",[".","sink","rowtokens"],"length"]]]],[".","newrows","push",[["deref",[".","sink","rowtokens"],["postadjust","readx","+",1]]]]],["set.","sink",["`","rowtokens"],"newrows"],["set.","sink",["`","row"],[".","newrows","length"]]],["function","commentMap",["false","locmap","nodecount","sourcemap","output","acom","nodeloc"],["function","remap",["expr","nodeloc"],[["atom","expr"],["preadjust","nodecount","+",1],[".","locmap","push",[[".","nodeloc","first"]]]],["=","nodeloc",["deref",[".","sink","tuplemap"],"expr"]],["remap",["car","expr"],"nodeloc"],[["cdr","expr"],["remap",["cdr","expr"],"nodeloc"]]],[[["not",[".","sink","maproot"]],["return","false"]]],["=","locmap",{array:[]}],["=","nodecount",0],["remap",[".","sink","maproot"]],["=","sourcemap",["deref",["@",[".",[".","sink","maproot"],1]],["`","\\.sourcemap"]]],[[["!=",[".","sourcemap","count"],"nodecount"],["debuglog",[".","$sourcemap mismatch in ","concat",[[".",[".","sink","maproot"],1],"$: "]],"nodecount","$vs",[".","sourcemap","count"]]]],["=","output",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sourcemap","comments"],["`","acom"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","acom",[".","iter","$value"]],["=","nodeloc",["deref","locmap",[".","acom",0]]],[".","output","push",[["list",[".","nodeloc",0],[".","nodeloc",1],[".","acom",1],[".","acom",2]]]]]]],"output"],["function","indextuples",["false","remaining"],["function","enqueue",["expr","false","node"],[["atom","expr"],"expr"],["=","node",{dictionary:{$tuple:"expr",$sink:"sink"}}],[".",[".","sink","mirrors"],"push",["node"]],[".","remaining","push",["node"]],["set[",[".","sink","tuplemap"],"expr","node"]],["function","dequeue",["false","node"],["while","false",[["not",[">",[".","remaining","length"],0]]],["=","node",[".","remaining","pop","false"]],["set.","node",["`","car"],["enqueue",["car",[".","node","tuple"]]]],["set.","node",["`","cdr"],["enqueue",["cdr",[".","node","tuple"]]]]]],["=","remaining",{array:[]}],["set.","sink",["`","mirrors"],{array:[]}],["set.","sink",["`","tuplemap"],["new","weakmap"]],["set.","sink",["`","mirroroot"],["enqueue","origexpr"]],["dequeue"]],["function","tuplelocupdate",["false","tuplex","data","rowdex","col","nodemap"],["function","childloc",["node","false","ex1","lex1","loc","retloc"],[[["not",["dictionary","node"]],["return","false"]]],[[["deref","nodemap","node"],["return",["deref","nodemap","node"]]]],["set[","nodemap","node","true"],["=","lex1","node"],["while","false",[["not",["eq",[".","lex1","sink"],"sink"]]],["=","ex1",[".","lex1","car"]],[[["&&",["dictionary","ex1"],["eq",[".","ex1","sink"],"sink"]],["=","loc",["childloc","ex1"]]],["=","loc","false"]],[[["identity","loc"],[[["not",[".","lex1","first"]],["set.","lex1",["`","first"],[".","loc","first"]],["set.","lex1",["`","last"],[".","loc","last"]]],["set.","lex1",["`","first"],["earlier",[".","loc","first"],[".","lex1","first"]]],["set.","lex1",["`","last"],["later",[".","loc","last"],[".","lex1","last"]]]]]],[[["not","retloc"],["=","retloc",{dictionary:{$first:[".","lex1","first"],$last:[".","lex1","last"]}}]],[[[".","lex1","first"],["set.","retloc",["`","first"],["earlier",[".","lex1","first"],[".","retloc","first"]]],["set.","retloc",["`","last"],["later",[".","lex1","last"],[".","retloc","last"]]]]]],["=","lex1",[".","lex1","cdr"]]],["=","lex1","node"],["while","false",[["not",["eq",[".","lex1","sink"],"sink"]]],[[["not",[".","lex1","first"]],["set.","lex1",["`","first"],[".","retloc","first"]],["set.","lex1",["`","last"],[".","retloc","last"]]]],["=","lex1",[".","lex1","cdr"]]],["set[","nodemap","node","retloc"],"retloc"],["=","tuplex",0],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","data",["deref",[".","sink","mirrors"],["postadjust","tuplex","+",1]]],["set.","data",["`","first"],"undefined"]],["=","rowdex",0],["while","false",[["not",["<=","rowdex",[".","sink","row"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowdex"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],["=","data",["deref",[".","sink","tuplemap"],[".","col","tuple"]]],[[["not",[".","data","first"]],["set.","data",["`","first"],["list","rowdex",[".","col","column"]]]]],["set.","data",["`","last"],["list","rowdex",["+",[".","col","column"],["length",[".","col","str"]]]]]]]],["preadjust","rowdex","+",1]],["=","nodemap",["new","weakmap"]],["childloc",[".","sink","mirroroot"]],"true"],["function","indexbps",["false","tuplex","node"],["set.","sink",["`","breaks"],{array:[]}],["=","tuplex",0],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","node",["deref",[".","sink","mirrors"],"tuplex"]],[[[".","node","bp"],[".",[".","sink","breaks"],"push",["node"]]]],["preadjust","tuplex","+",1]],[".",[".","sink","breaks"],"sort",[["function","lambda",["a","b"],["=","compare",["<=>",[".",[".","a","first"],0],[".",[".","b","first"],0]]],[[["==","compare",0],["=","compare",["<=>",[".",[".","a","first"],1],[".",[".","b","first"],1]]]]],"compare"]]]],["function","updatecheck",["false","update","comments"],[[["not",[".","sink","tuplemap"]],["set.","sink",["`","rowtokens"],{array:[{array:[]}]}],["indextuples"],["=","update","true"]]],[[["||",["<",[".",[".","sink","rowtokens"],"length"],1],["&&",["==",[".",[".","sink","rowtokens"],"length"],1],["<",[".",["deref",[".","sink","rowtokens"],0],"length"],1]]],["exoutput","origexpr","origexpr",0,0,"true"]]],[["identity","update"],["tuplelocupdate"],["indexbps"],[[".","sink","maproot"],["=","comments",["commentMap"]],[["identity","comments"],["commentInject","comments"],["tuplelocupdate"]]]]],["set.","unparser",["`","dumptuples"],["function","dumptuples",["false","tuplex","data","bp","mismatch","summary"],["updatecheck"],["=","tuplex",0],["debuglog","$=====tuples====="],["while","false",[["not",["<","tuplex",[".",[".","sink","mirrors"],"length"]]]],["=","data",["deref",[".","sink","mirrors"],"tuplex"]],[[["eq",["deref",[".","sink","tuplemap"],[".","data","tuple"]],"data"],["=","mismatch","$"]],["=","mismatch","$mismatch"]],[[[".","data","bp"],["=","bp","$bp"]],["=","bp","$ "]],["=","summary",[".",["tostring",[".","data","tuple"]],"substr",[0,80]]],["debuglog",["prepad","tuplex",4],["prepad",[".","data","first"],9],["prepad",[".","data","last"],9],"bp","mismatch","summary"],["preadjust","tuplex","+",1]]]],["set.","unparser",["`","dumptokens"],["function","dumptokens",["false","rowdex","data","summary","col"],["updatecheck"],["=","rowdex",0],["debuglog","$=====tokens====="],["while","false",[["not",["<=","rowdex",[".","sink","row"]]]],["debuglog","$row","rowdex"],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],"rowdex"],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],["=","data",["deref",[".","sink","tuplemap"],[".","col","tuple"]]],["=","summary",[".",["tostring",[".","col","tuple"]],"substr",[0,80]]],["debuglog",["prepad",[".","col","column"],6],["prepad",[".","col","str"],9],"$ ","summary"]]]],["preadjust","rowdex","+",1]]]],["set.","unparser",["`","breakpoints"],["function","breakpoints",["false","result","data"],["updatecheck"],["=","result",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sink","breaks"],["`","data"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","data",[".","iter","$value"]],[".","result","push",[{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]]]],"result"]],["set.","unparser",["`","findbreak"],["function","findbreak",["location","false","data"],["updatecheck"],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","sink","breaks"],["`","data"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","data",[".","iter","$value"]],[[["&&",["<=",["car","location"],["car",[".","data","first"]]],["||",["not",["second","location"]],["<=",["second","location"],["second",[".","data","first"]]]]],["return",{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]]]]],"false"]],["set.","unparser",["`","findtoken"],["function","findtoken",["location","false","col"],["updatecheck"],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",[".","sink","rowtokens"],["car","location"]],["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["||",["not",["second","location"]],["&&",[">=",["second","location"],[".","col","column"]],["<",["second","location"],["+",[".","col","column"],["length",[".","col","str"]]]]]],["return",{dictionary:{$first:[".","col","column"],$last:["+",[".","col","column"],["length",[".","col","str"]]],$str:[".","col","str"],$symbol:[".","col","symbol"],$tuple:[".","col","tuple"]}}]]]]]],"false"]],["set.","unparser",["`","findtuple"],["function","findtuple",["expr","false","data"],["updatecheck"],["=","data",["deref",[".","sink","tuplemap"],"expr"]],[["identity","data"],{dictionary:{$first:[".","data","first"],$last:[".","data","last"],$tuple:[".","data","tuple"]}}]]],["set.","unparser",["`","setmarks"],["function","setmarks",["dict","false","mark","marklen"],["set.","sink",["`","maxmarklen"],0],["set.","sink",["`","markdict"],"dict"],["for",["let","lambda",["iter"],["=","iter",["iterate","dict",["`","mark"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","mark",[".","iter","$value"]],["=","marklen",[".",["tostring",["deref","dict","mark"]],"length"]],[[["<",[".","sink","maxmarklen"],"marklen"],["set.","sink",["`","maxmarklen"],"marklen"]]]]]],"dict"]],["set.","unparser",["`","string"],["function","string",["firstloc","lastloc","soptions","false","margin","rowdex","row","col","found","outstr","colpos","lineno","linepad"],["updatecheck"],[[["numeric",[".","soptions","leftMargin"]],["=","margin",[".","space","repeat",[[".","soptions","leftMargin"]]]]],["=","margin","$"]],[[["numeric",[".","soptions","lineNumbers"]],["=","lineno",["toint",[".","soptions","lineNumbers"]]],["=","linepad",["+",["length",["tostring",["+","lineno",[".",[".","sink","rowtokens"],"length"]]]],1]]]],[[["dictionary","firstloc"],["=","lastloc",[".","firstloc","last"]],["=","firstloc",[".","firstloc","first"]]]],[[["identity","firstloc"],[[["not",["apply","numeric","firstloc"]],["return","false"]]],["=","rowdex",["car","firstloc"]],[["identity","lineno"],["preadjust","lineno","+","rowdex"]]],["=","rowdex",0]],["=","found",["not",["&&","firstloc",["second","firstloc"]]]],[[["&&","lastloc",["not",["apply","numeric","lastloc"]]],["return","false"]]],["loop","false",[["||",[">=","rowdex",[".",[".","sink","rowtokens"],"length"]],["&&","lastloc",[">","rowdex",["car","lastloc"]]]]],["=","row",["deref",[".","sink","rowtokens"],"rowdex"]],[[["identity","outstr"],["=","outstr",[".","outstr","concat",["$\n","margin"]]]],["=","outstr","margin"]],[[["identity","lineno"],["=","outstr",[".","outstr","concat",[["prepad","lineno","linepad"],"$ "]]],[[[".","sink","maxmarklen"],[["deref",[".","sink","markdict"],"lineno"],["=","outstr",[".","outstr","concat",[["deref",[".","sink","markdict"],"lineno"],"$ "]]]],["=","outstr",[".","outstr","concat",[[".","space","repeat",[["+",[".","sink","maxmarklen"],1]]]]]]]],["preadjust","lineno","+",1]]],["=","colpos",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["not","found"],["=","colpos",["second","firstloc"]],[[["<=",["+",[".","col","column"],["length",[".","col","str"]]],["second","firstloc"]],["continue"]]],["=","found","true"]]],[["&&","lastloc",["second","lastloc"],[">=","rowdex",["car","lastloc"]],[">=",[".","col","column"],["second","lastloc"]]]],[[["<","colpos",[".","col","column"]],["=","outstr",[".","outstr","concat",[[".","space","repeat",[["-",[".","col","column"],"colpos"]]],[".","col","str"]]]]],["=","outstr",[".","outstr","concat",[[".","col","str"]]]]],["=","colpos",["+",[".","col","column"],["length",[".","col","str"]]]]]]],["preadjust","rowdex","+",1]],"outstr"]],"unparser"]),e._AddPropertyList("LingoUnparseInit",[["$.lingoInit","true"]]),e._SetBindingList("LingoUnparseInit",["function","LingoUnparseInit",["false","manifest"],["=","manifest",["`",["LingoPrinter","LingoUnparser","LingoUnparseInit"]]],[".",[".","Naan","module"],"build",[[".","module","id"],"$Unparse",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],[".",[".","Naan","module"],"letinherit",["$Lib"]],["set.",[".","modobj","exports"],["`","Printer"],"LingoPrinter"],["set.",[".","modobj","exports"],["`","LingoUnparser"],"LingoUnparser"]]]]]),e._Execute(["LingoUnparseInit"]),e._SetNamespace(t.slice(1),!0),e._SetNamespace("CLI"),e._Execute([".",[".","Naan","module"],"letinherit",["$Lang_Lingo"]]),e._SetBindingList("Utils",["closure","Utils",["options","false","utils","registry","upcache"],["=","utils",["new","object","this"]],[[["not","options"],["=","options",{dictionary:{}}]]],[[["not",[".","options","cacheSize"]],["set.","options",["`","cacheSize"],50]]],["=","registry",[".",[".",[".",["modlist"],"Lib"],"exports"],"Registry"]],["set.","utils",["`","calculateDialects"],["function","calculateDialects",["expr","false","nsmap","nslist","ns","dialect","langs"],["function","travProc",["trav"],[[["&&",["symbol","trav"],"trav"],[[["not",["deref","nsmap",[".","trav","namespace"]]],["push",[".","trav","namespace"],"nslist"],["set[","nsmap",[".","trav","namespace"],"true"]]],["return"]]],["while","false",[["not",["tuple","trav"]]],["travProc",["car","trav"]],["=","trav",["cdr","trav"]]]],["=","nsmap",["new","weakmap"]],["travProc","expr"],["for",["let","lambda",["iter"],["=","iter",["iterate","nslist",["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],["=","dialect",[".","registry","findNamespace",["ns"]]],[[["&&","dialect",["not",["member","dialect","langs"]]],["push","dialect","langs"]]]]]],"langs"]],["set.","utils",["`","unparseInfo"],["function","unparseInfo",["expr","false","up"],[[["not","upcache"],["=","upcache",["new","nonce"]],["set.","upcache",["`","map"],["new","weakmap"]],["set.","upcache",["`","lru"],{array:[]}]],["=","up",["deref",[".","upcache","map"],"expr"]],[["&&","up",["!==",["deref","lru",["-",[".","lru","length"],1]],"up"]],["set.","upcache",["`","lru"],[".",[".","upcache","lru"],"filter",[["function","lambda",["entry"],["!==","entry","up"]]]]],[".",[".","upcache","lru"],"push",["up"]]]],[[["not","up"],["=","up",{dictionary:{$expression:"expr",$dialects:[".","utils","calculateDialects",["expr"]]}}],["set.","up",["`","dialect"],[".",[".","up","dialects"],0]],[[["not",[".","up","dialect"]],["set.","up",["`","dialect"],[".","registry","findName",[[".",[".","registry","dialects","false"],0]]]]]],[[[".","up","dialect"],["set.","up",["`","unparser"],[".",[".","up","dialect"],"unparse",["expr"]]]]],["set[",[".","upcache","map"],"expr","up"],[".",[".","upcache","lru"],"push",["up"]],[[">",[".",[".","upcache","lru"],"length"],[".","options","cacheSize"]],["set[",[".","upcache","map"],[".",[".",[".","upcache","lru"],"shift","false"],"expression"],"undefined"]]]],"up"]],["set.","utils",["`","unparser"],["function","unparser",["expr"],[".",["unparseInfo","expr"],"unparser"]]],["set.","utils",["`","sourcelist"],["function","sourcelist",["procdef","start","end","marks","false","up"],["=","up",[".","utils","unparser",["procdef"]]],[".","up","setmarks",["marks"]],[[["identity","start"],["=","start",["list",["-","start",1]]],[["identity","end"],["=","end",["list",["-","end",1]]]],["=","end","start"]]],[".","up","string",["start","end",{dictionary:{$lineNumbers:1}}]]]],["set.","utils",["`","symns"],["function","symns",["name","ns"],[[["symbol","name"],["return","name"]]],[[["not","ns"],["=","ns",[".",["nsactive"],0]]]],[".","ns","lookup",["name"]]]],["set.","utils",["`","findns"],["function","findns",["nstr","false","ns"],[[["not",["string","nstr"]],["return","nstr"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["nsactive"],["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],[[["==","nstr",["namespace","ns"]],["return","ns"]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["nsactive","true"],["`","ns"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ns",[".","iter","$value"]],[[["==","nstr",["namespace","ns"]],["return","ns"]]]]]],"false"]],["set.","utils",["`","makeLocation"],["function","makeLocation",["sym","task","false","start"],[[["identity","task"],["=","tuplespec",[".",[".","utils","unparser",[["getproc","sym"]]],"findtuple",["task"]]],["=","start",["+",[".",[".","tuplespec","first"],0],1]]]],["list",[".",[".","sym","namespace"],"tostring"],"sym","start"]]],["set.","utils",["`","resolveLocation"],["function","resolveLocation",["location","symbols","false","path","procname","procsym","ns","procdef"],["function","pathmatch",["parent","path","false","segment"],[[["empty","path"],["return","parent"]]],["=","segment",["tostring",["pop","path"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",["deref",["@","parent"],["`","\\.children"]],["`","child"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","child",[".","iter","$value"]],[[["==",["tostring","child"],"segment"],["return",["pathmatch","child","path"]]]]]]],"false"],["function","findsym",["name"],["for",["let","lambda",["iter"],["=","iter",["iterate","symbols",["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],[[["==","sym","name"],["return","sym"]]]]]],"false"],["=","path",[".","location",1]],[[["symbol","path"],["=","procsym","path"]],[[["tuple","path"],["=","procname",["car","path"]]],["=","procname","path"]],["=","procsym",["findsym","procname"]],[[["not","procsym"],[[".","location",0],[[["string",[".","location",0]],["=","ns",[".","utils","findns",[[".","location",0]]]]],["=","ns",[".","location",0]]],["=","procsym",[".","utils","symns",["procname","ns"]]]],["=","procsym",["interned","procname"]]]],[["tuple","path"],["=","procsym",["pathmatch","procsym",["cdr","path"]]]]],["=","procdef",["getproc","procsym"]],[[["||",["not",["tuple","procdef"]],["not",["cdddr","procdef"]]],["=","procdef","false"]]],"procdef"]],["set.","utils",["`","breakLocation"],["function","breakLocation",["location","symbols","false","procdef"],["=","procdef",[".","utils","resolveLocation",["location","symbols"]]],[[["not","procdef"],["return"]]],[[".","location",2],[".",[".",[".","utils","unparser",["procdef"]],"findbreak",[["list",["-",[".","location",2],1]]]],"tuple"]],["cdddr","procdef"]]],["set.","utils",["`","locationString"],["function","locationString",["location","false","output"],[[["symbol",[".","location",1]],["=","output",[".","utils","procname",[[".","location",1]]]]],[["tuple",[".","location",1]],["=","output",[".",["new","array",[".","location",1]],"join",["$."]]]],["=","output",["tostring",[".","location",1]]]],[[[".","location",0],["=","output",[".",[".","location",0],"concat",["$::","output"]]]]],[[[".","location",2],["=","output",[".","output","concat",["$:",[".","location",2]]]]]],[[[".","location",3],["=","output",[".","output","concat",["$:",[".","location",3]]]]]],"output"]],["set.","utils",["`","alignColumns"],["function","alignColumns",["lex1","widths","false","ex1"],["function","calcrow",["row","false","col","coldex"],["function","cf",["field","prev","false","width"],["=","width",[".",["tostring","field"],"length"]],[[["<","width","prev"],["=","width","prev"]]],"width"],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[["not",["deref","widths","coldex"]],["set[","widths","coldex",0]]],["set[","widths","coldex",["cf","col",["deref","widths","coldex"]]],["preadjust","coldex","+",1]]]]],["=","widths",{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate","lex1",["`","ex1"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","ex1",[".","iter","$value"]],["calcrow","ex1"]]]],"widths"]],["set.","utils",["`","proclist"],["function","proclist",["name","false","result"],["while","false",[["not","name"]],["=","result",["cons","name","result"]],["=","name",["deref",["@","name"],["`","\\.parent"]]]],"result"]],["set.","utils",["`","procname"],["function","procname",["name"],[".",[".",[".",["proclist","name"],"toarray"],"map",[["function","lambda",["x"],["tostring","x"]]]],"join",["$."]]]],["set.","utils",["`","procstring"],["function","procstring",["proc","false","output","parm"],[[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$()"]]]]],[[["atom",[".","proc",2]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$ ",[".","proc",2]]]]]],["=","output",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",["parm","$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","utils",["`","callstring"],["function","callstring",["proc","dons","false","output","parm","name"],["=","name",["procname",[".","proc",1]]],[[["identity","dons"],["=","name",[".",[".",[".",[".","proc",1],"namespace"],"tostring"],"concat",["$::","name"]]]]],[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],[".","name","concat",["$()"]]],[["atom",[".","proc",2]],[".","name","concat",["space",[".","proc",2]]]],["=","output",[".","name","concat",["$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",[["car","parm"],"$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","utils",["`","getnumargs"],["function","getnumargs",["cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\d+)\\s*$"]]]],[[["identity","args"],["return",["toint",["deref","args",1]]]]],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\d+)\\s*:\\s*(\\d+)\\s*$"]]]],[[["identity","args"],["return",["list",["`","range"],["toint",["deref","args",1]],["toint",["deref","args",2]]]]]],["=","args",[".","cmdargs","match",[["RegExp","$\\d+","$g"]]]],[[["identity","args"],["return",["cons",["`","set"],["totuple",[".","args","map",[["function","lambda",["nstr"],["toint","nstr"]]]]]]]]],"false"]],["set.","utils",["`","getnameargs"],["function","getnameargs",["cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s*$"]]]],[[["identity","args"],["return",["deref","args",1]]]],["=","args",[".","cmdargs","match",[["RegExp","$\\S+","$g"]]]],[[["identity","args"],["return",["totuple","args"]]]],"false"]],["set.","utils",["`","getprocarg"],["function","getprocarg",["cmdargs","false","args","procpath"],["=","args",[".","cmdargs","match",[["RegExp","$^(\\S*::)?([^\\s:]+)(:\\s*\\d*)?(:\\s*\\d*)?\\s*$"]]]],[["identity","args"],["=","procpath",[".",["deref","args",2],"split",["$."]]],[[["==",[".","procpath","length"],1],["=","procpath",[".","procpath",0]]],["=","procpath",["totuple","procpath"]]],["list",[".",["deref","args",1],"substring",[0,["-",[".",["deref","args",1],"length"],2]]],"procpath",["toint",[".",[".",["deref","args",3],"substring",[1]],"trim","false"]],["toint",[".",[".",["deref","args",4],"substring",[1]],"trim","false"]]]],"false"]],"utils"]),e._SetBindingList("Info",["closure","Info",["console","false","info"],["=","info",["new","object","this"]],["set.","info",["`","utils"],["Utils"]],["set.","info",["`","options"],{dictionary:{$indent:4,$wrapMinAmount:29,$wrapMaxCol:79,$maxColWidth:60,$maxSymColWidth:40}}],["function","plist",["itemlist","depth","false","item","first","width"],["=","first","$"],["for",["let","lambda",["iter"],["=","iter",["iterate","itemlist",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","width",[".",["tostring","item"],"length"]],[[["&&",[">",["+","width",[".",[".","console","printloc","false"],1]],[".",[".","info","options"],"wrapMaxCol"]],[">=",[".",[".","console","printloc","false"],1],[".",[".","info","options"],"wrapMinAmount"]]],[".","console","print",["$,\n"]],["=","first",[".","space","repeat",[["*",[".",[".","info","options"],"indent"],"depth"]]]]]],[".","console","print",["first","item"]],["=","first","$, "]]]]],["function","prows",["rows","depth","widths","false","coldex","row"],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],"depth"]]]]],["=","coldex",0],["for",["let","lambda",["iter"],["=","iter",["iterate","row",["`","col"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","col",[".","iter","$value"]],[[[">",[".","col","length"],["deref","widths","coldex"]],[".","console","print",[[".","col","substring",[0,["-",["deref","widths","coldex"],1]]],"$…","space"]]],[".","console","print",["col",[".","space","repeat",[["+",["-",["deref","widths","coldex"],[".","col","length"]],1]]]]]],["preadjust","coldex","+",1]]]],[".","console","newline","false"]]]]],["function","printmods",["onemod","false","modid"],["function","pexports",["mod","false","xid","maxwidth"],[".","console","printline",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$exports:"]],["=","maxwidth",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","exports"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[[["<","maxwidth",[".",["tostring","xid"],"length"]],["=","maxwidth",[".",["tostring","xid"],"length"]]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","exports"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],2]]],"xid",[".","space","repeat",[["-","maxwidth",[".",["tostring","xid"],"length"]]]],"$: "]],[[["symbol",["deref",[".","mod","exports"],"xid"]],[".","console","print",[[".",[".","info","utils"],"procstring",[["getproc",["deref",[".","mod","exports"],"xid"]]]]]]],[".","console","print",[["deref",[".","mod","exports"],"xid"]]]],[".","console","newline","false"]]]]],["function","pcomponents",["mod","false","xid","maxwidth"],["printline",[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$components:"],["=","maxwidth",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","components"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[[["<","maxwidth",[".",["tostring","xid"],"length"]],["=","maxwidth",[".",["tostring","xid"],"length"]]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","mod","components"],["`","xid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","xid",[".","iter","$value"]],[".","console","print",[[".","space","repeat",[["*",[".",[".","info","options"],"indent"],2]]],"xid",[".","space","repeat",[["-","maxwidth",[".",["tostring","xid"],"length"]]]],"$: "]],[[["not",[".",["deref",[".","mod","components"],"xid"],"manifest"]],[".","console","print",["$<empty manifest>"]]],["plist",[".",["deref",[".","mod","components"],"xid"],"manifest"],3]],[".","console","newline","false"]]]]],["function","pdetailmod",["mod"],[".","console","printline",[[".","mod","id"]]],[[["\\.*",[".","mod","exports"]],["pexports","mod"]]],[["\\.*",[".","mod","components"]],["pcomponents","mod"]]],["function","psummarymod",["mod"],[".","console","printline",[[".","mod","id"]]],[[["\\.*",[".","mod","exports"]],[".","console","print",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$exports: "]],["plist",[".","mod","exports"],3],[".","console","newline","false"]]],[["\\.*",[".","mod","components"]],[".","console","print",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],"$components: "]],["plist",[".","mod","components"],3],[".","console","newline","false"]]],[["identity","onemod"],["pdetailmod","onemod"]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".",[".","Naan","module"],"modlist","false"],["`","modid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","modid",[".","iter","$value"]],["psummarymod",["deref",[".",[".","Naan","module"],"modlist","false"],"modid"]]]]]],["function","printsyms",["syms","false","sym","rows","row","coldex","nprops","bound","widths"],["=","rows",["cons",["list","$symbol","$namespace","$value","$procedure","$attr."]]],["for",["let","lambda",["iter"],["=","iter",["iterate","syms",["`","sym"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","sym",[".","iter","$value"]],["=","bound",["getproc","sym"]],[[["tuple","bound"],["=","bound",["tostring",[".","bound",0]]]],[["not","bound"],["=","bound","$"]]],[[["rest","sym"],["=","nprops",["prepad",["length",["rest","sym"]],3]]],["=","nprops","$"]],["push",["list",["tostring","sym"],["namespace",["namespace","sym"]],["tostring",["car","sym"]],"bound","nprops"],"rows"]]]],["=","widths",[".",[".","info","utils"],"alignColumns",["rows"]]],["=","coldex",0],["while","false",[["not",["<","coldex",[".","widths","length"]]]],[[[">",["deref","widths","coldex"],[".",[".","info","options"],"maxSymColWidth"]],["set[","widths","coldex",[".",[".","info","options"],"maxSymColWidth"]]]],["push",[".","$-","repeat",[["deref","widths",["postadjust","coldex","+",1]]]],"row"]],["=","row",["reverse","row"]],["=","rows",["reverse","rows"]],["=","rows",["cons",["car","rows"],"row",["cdr","rows"]]],["prows","rows",1,"widths"]],["set.","info",["`","setDefloc"],["function","setDefloc",["location"],["set.","info",["`","defloc"],"location"]]],["function","getDefproc",["cmdargs","nochain","false","location","procdef"],[[["||",["not","cmdargs"],["==","cmdargs","$"]],["=","location",[".","info","defloc"]],[["identity","nochain"],["=","location",["list",[".","location",0],["car",[".","location",1]]]]]]],[[["not","location"],["=","location",[".",[".","info","utils"],"getprocarg",["cmdargs"]]]]],[[["not","location"],[".","console","printline",['$error: "',"cmdargs",'$" not a valid procedure specification']],["return"]]],["=","procdef",[".",[".","info","utils"],"resolveLocation",["location"]]],[[["not","procdef"],[[["||",["not","cmdargs"],["==","cmdargs","$"]],["=","cmdargs",[".",[".","info","utils"],"locationString",["location"]]]]],[".","console","printline",['$error: procedure "',"cmdargs",'$" not found']],["return","false"]]],["list","location","procdef"]],["set.","info",["`","infoproc"],["function","infoproc",["cmdargs","false","location","procdef","child"],["=",["location","procdef"],["getDefproc","cmdargs","true"]],[[["not","location"],["return"]]],[".","console","printline",[[".",[".","info","utils"],"locationString",["location"]]]],["=","syms",["reverse",["deref",["@",[".","procdef",1]],["`","\\.children"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","syms",["`","child"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","child",[".","iter","$value"]],["=","procdef",["getproc","child"]],[[["not","procdef"],["continue"]]],[".","console","printline",[[".","space","repeat",[[".",[".","info","options"],"indent"]]],[".",[".","info","utils"],"procstring",["procdef"]]]]]]]]],["set.","info",["`","infolist"],["function","infolist",["cmdargs","false","location","procdef","start","end"],["=",["location","procdef"],["getDefproc","cmdargs"]],[[["not","location"],["return"]]],["=","start",[".","location",2]],["=","end",[".","location",3]],[[["&&","start",["not","end"]],["=","end",["+","start",10]]]],[".","console","print",[[".",[".","info","utils"],"sourcelist",["procdef","start","end"]]]]]],["set.","info",["`","infomod"],["function","infomod",["cmdargs","false","modlist","modid","mod"],[[["not","modlist"],["=","modlist",[".",[".","info","utils"],"getnameargs",["cmdargs"]]]]],[["not","modlist"],["printmods"]],[[["string","modlist"],["=","modlist",["list","modlist"]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","modlist",["`","modid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","modid",[".","iter","$value"]],["=","mod",["deref",[".",[".","Naan","module"],"modlist","false"],"modid"]],[[["identity","mod"],["printmods","mod"]],[".","console","printline",['$error: module "',"modid",'$" not found']]]]]]]],["set.","info",["`","infofind"],["function","infofind",["cmdargs","false","args","pattern","ns","found"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s*$"]]]],[[["identity","args"],["=","pattern",["deref","args",1]]],["=","args",[".","cmdargs","match",[["RegExp","$\\S+","$g"]]]],["=","pattern",["deref","args",0]],[["&&",["==",[".","args","length"],3],["==",["deref","args",1],"$in"]],["=","ns",[".",[".","info","utils"],"findns",[["deref","args",2]]]],[["not","ns"],[".","console","printline",['$error: namespace "',["deref","args",2],'$" not found']],["return"]]],[["&&",["==",[".","args","length"],2],["==",["deref","args",1],"$all"]],["=","ns","true"]],[".","console","printline",['$error: cannot interpret "',"cmdargs",'$"']],["return"]],["catch",[[[".","pattern","match",[["RegExp",'$".*"']]],["=","found",["exists",["RegExp",[".","$^","concat",[[".","pattern","slice",[1,-1]],"$$"]]],"ns"]]],["=","found",["exists",["RegExp","pattern","$i"],"ns"]]],[[["identity","true"],[".","console","printline",['$error: regular expression "',"cmdargs",'$" not valid']],["return"]]],"false"],[[["==","ns","true"],["=","locstr","$in all namespaces"]],[["identity","ns"],["=","locstr","$in namespace "]],["=","locstr","$in active namespaces"]],[["identity","found"],[[[">",["length","found"],1],[".","console","print",[["length","found"],"$ symbols "]]],[".","console","print",["$one symbol "]]],[".","console","printline",['$matching "',"pattern",'$" ',"locstr","$:"]],["printsyms","found"]],[".","console","printline",['$no symbols match "',"pattern",'$" ',"locstr"]]]],["set.","info",["`","infofutures"],["function","infofutures",["cmdargs","false","pending","rows","row","item","procstr","waiting","delays","delayms","widths","coldex"],["function","procReference",["procdef","prefix","false","str"],[[["not","prefix"],["=","prefix","$"]]],[["identity","procdef"],[[["&&",["symbol","procdef"],[".","procdef","proc"]],["=","procdef",[".","procdef","proc"]]]],[[["procedure","procdef"],["=","str",[".",[".","info","utils"],"callstring",["procdef","true"]]]],["=","str",[".","procdef","tostring"]]],[".","prefix","concat",["str"]]],"$"],["=","pending",["reverse",["futures"]]],[[["not","pending"],[".","console","printline",["$no futures pending"]],["return"]]],[".","console","printline",[["length","pending"],"$ futures pending:"]],["=","rows",["cons",["list","$start","$count","$delay","$procedures"]]],["for",["let","lambda",["iter"],["=","iter",["iterate","pending",["`","item"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","item",[".","iter","$value"]],["=","procstr",["procReference",[".","item","execute"],"$x "]],["=","waiting",[".","item","waiting"]],[[["==",[".","procstr","length"],0],["=","procstr",["procReference",["pop","waiting"],"$w "]]]],["=","delayms",[".","Math","trunc",[[".","item","delay"]]]],["=","delays",[".","Math","trunc",[["quotient","delayms",1e3]]]],["preadjust","delayms","-",["*","delays",1e3]],["push",["list",[".","item","start"],["prepad",[".","item","count"],4],[".",["tostring","delays"],"concat",["$.",["prepad","delayms",3,"$0"]]],"procstr"],"rows"],["while","false",[["not",["not",["empty","waiting"]]]],["push",["list","$","$","$",["procReference",["pop","waiting"],"$w "]],"rows"]]]]],["=","widths",[".",[".","info","utils"],"alignColumns",["rows"]]],["=","coldex",0],["while","false",[["not",["<","coldex",[".","widths","length"]]]],[[[">",["deref","widths","coldex"],[".",[".","info","options"],"maxColWidth"]],["set[","widths","coldex",[".",[".","info","options"],"maxColWidth"]]]],["push",[".","$-","repeat",[["deref","widths",["postadjust","coldex","+",1]]]],"row"]],["=","row",["reverse","row"]],["=","rows",["reverse","rows"]],["=","rows",["cons",["car","rows"],"row",["cdr","rows"]]],["prows","rows",1,"widths"]]],"info"]),e._AddPropertyList("CliUtilsInit",[["$.lingoInit","true"]]),e._SetBindingList("CliUtilsInit",["function","CliUtilsInit",["false","manifest"],["=","manifest",["`",["CliUtilsPreload","Utils","Info","CliUtilsInit"]]],[".",[".","Naan","module"],"build",["$CLI","$CliUtils",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","Utils"],"Utils"],["set.",[".","modobj","exports"],["`","Info"],"Info"]]]]]),e._Execute(["CliUtilsInit"]),e._SetBindingList("driver_chmods",["function","driver_chmods",["driverob","cmdword","cmdargs"],[".",[".","Naan","module"],"chns",["cmdargs"]]]),e._SetBindingList("driver_debugs",["function","driver_debugs",["driverob","cmdword","cmdargs"],["debugger"]]),e._SetBindingList("driver_helps",["function","driver_helps",["driverob","cmdword","cmdargs","false","text"],["=","text",["call",["let","lambda",["proc"],[["eq","proc","driver_chmods"],"$ /ch[mod] - list modules\n /ch[mod] <module> - change active module\n"],[["eq","proc","driver_debugs"],"$ /d[ebug] - enter debugger\n"],[["eq","proc","driver_helps"],"$ /help - display overall help\n /help <command> - display help for <command>\n"],[["eq","proc","driver_infos"],["return",["driver_infos","driverob","cmdword","$"]]],[["eq","proc","driver_languages"],"$ /dialect - list available dialects\n /dialect <name> - change the CLI dialect\n"],[["eq","proc","driver_list"],"$ /list [<namespace>::]<procedure-name>[.<nestedname>]*[:start[:end]]\n"],[["eq","proc","driver_options"],["return",["driver_options","driverob","cmdword","$"]]],[["eq","proc","driver_quit"],"$ /quit - decamp / depart / absquatulate\n"],"$About Naan: https://github.com/naanlang/naan#readme\n/commands:\n /ch[mod] [<module>] - change active module\n /d[ebug] - enter debugger\n /help [<command>] - help [command]\n /i[nfo] [<topic>] - info on topic\n /op[tions] - view or modify options\n /r[estart] - restart REPL\n /q[uit] - decamp / depart / absquatulate\n"],["deref","driverCmds","cmdargs"]]],[".",[".","driverob","console"],"print",["text"]]]),e._SetBindingList("driver_infos",["function","driver_infos",["driverob","cmdword","cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".",[".","driverob","console"],"print",["$/info topics:\n /i[nfo] (f)ind <regex> - find matching symbols in active namespaces\n <regex> all | in <namespace> ...in all or specified namespace\n /i[nfo] f(u)tures - show pending futures\n /i[nfo] (m)odules [<name> [<name> ...]] - show modules and components\n /i[nfo] (p)rocedure <name> - summarize a procedure\n"]]],[["||",["==","cmdword","$f"],["==","cmdword","$find"]],[".",[".","driverob","info"],"infofind",["cmdargs"]]],[["||",["==","cmdword","$u"],["==","cmdword","$future"],["==","cmdword","$futures"]],[".",[".","driverob","info"],"infofutures",["cmdargs"]]],[["||",["==","cmdword","$m"],["==","cmdword","$module"],["==","cmdword","$modules"]],[".",[".","driverob","info"],"infomod",["cmdargs"]]],[["||",["==","cmdword","$p"],["==","cmdword","$proc"],["==","cmdword","$procedure"]],[".",[".","driverob","info"],"infoproc",["cmdargs"]]],[".",[".","driverob","console"],"printline",["$info topic ","cmdword","$ not implemented"]]]),e._SetBindingList("driver_languages",["function","driver_languages",["driverob","cmdword","cmdargs","false","dialob"],[["==","cmdword","$dialect"],[["!=","cmdargs","$"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",["cmdargs"]]],[["not","dialob"],[".",[".","driverob","console"],"print",["$unregistered language"]]],["set.","driverob",["`","parse"],[".","dialob","parse"]],["set.","driverob",["`","print"],[".","dialob","print"]],["set.","driverob",["`","errorstr"],[".","dialob","parseErrorString"]],["set.","driverob",["`","dialect"],"dialob"],[".",[".","driverob","console"],"print",["$language is now ","cmdargs"]]],[".",[".","driverob","console"],"print",["$dialects: ",[".",[".",[".",[".","Naan","runtimelib"],"dialect","false"],"toarray"],"join",["space"]]]]]]),e._SetBindingList("driver_list",["function","driver_list",["driverob","cmdword","cmdargs"],[".",[".","driverob","info"],"infolist",["cmdargs"]]]),e._SetBindingList("driver_options",["function","driver_options",["driverob","cmdword","cmdargs","false","args"],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".",[".","driverob","console"],"print",["$/options:\n /op[tions] [no]prompt - turn on/off command line prompt\n /op[tions] [no]blank - turn on/off blank line before prompt\n"]]],[["==","cmdword","$prompt"],[".","driverob","setOptions",[{dictionary:{$prompt:"true"}}]]],[["==","cmdword","$noprompt"],[".","driverob","setOptions",[{dictionary:{$prompt:"false"}}]]],[["==","cmdword","$blank"],[".","driverob","setOptions",[{dictionary:{$blank:"true"}}]]],[["==","cmdword","$noblank"],[".","driverob","setOptions",[{dictionary:{$blank:"false"}}]]]]),e._SetBindingList("driver_restarts",["function","driver_restarts",["driverob","cmdword","cmdargs"],["return",["`","break"]]]),e._SetBindingList("driver_quits",["function","driver_quits",["driverob","cmdword","cmdargs"],[[".","js","g"],[".",[".","js","r",["$process"]],"exit",[0]]],[[".","js","s"],[".",[".","js","t"],"Terminate","false"]],[[".","js","w"],[".",[".","js","w"],"close","false"]]]),e._SetValue("driverCmds",{dictionary:{$ch:"driver_chmods",$chmod:"driver_chmods",$d:"driver_debugs",$debug:"driver_debugs",$help:"driver_helps",$i:"driver_infos",$info:"driver_infos",$dialect:"driver_languages",$list:"driver_list",$op:"driver_options",$option:"driver_options",$options:"driver_options",$r:"driver_restarts",$restart:"driver_restarts",$q:"driver_quits",$quit:"driver_quits"}}),e._SetBindingList("Driver",["closure","Driver",["welcome","false","driverob","console","dialob","source","emptyflag","endtoken","exop","exconsole"],["=","driverob",["new","object","this"]],["=","driverObject","driverob"],["=","console",["new","textstream"]],["set.","driverob",["`","console"],"console"],["set.","driverob",["`","options"],{dictionary:{$prompt:"false",$blank:"false"}}],["set.","driverob",["`","utils"],["Utils"]],["set.","driverob",["`","info"],["Info","console"]],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],["set.","driverob",["`","parse"],[".","dialob","parse"]],["set.","driverob",["`","print"],[".","dialob","print"]],["set.","driverob",["`","errorstr"],[".","dialob","parseErrorString"]],["set.","driverob",["`","dialect"],"Dialect"],["=","emptyflag",{dictionary:{}}],["function","readline",["false","cc","output"],[[["not",[".","console","readchar"]],["=","console",["new","textstream"]],["set.","driverob",["`","console"],"console"],["set.","driverob",["`","utils"],["Utils"]],["set.","driverob",["`","info"],["Info","console"]]]],["=","output","$"],["while","false",[["not",["=","cc",[".","console","readchar","false"]]]],[".",[".","driverob","waiting"],"reset","false"],["=","output",[".","output","concat",["cc"]]],[[["==","cc","$\n"],["break"]]]],"output"],["function","freshline","false",[["!=",[".",[".","console","printloc","false"],1],0],[".","console","newline","false"]]],["function","driverPrompt",["false","prompt","name"],["freshline"],[[["&&",[".",[".","driverob","options"],"blank"],["!=",["printloc"],["`",[0,0]]]],[".","console","newline","false"]]],["=","name",[".",[".",[".","driverob","dialect"],"name"],"toLowerCase","false"]],["catch",[["=","prompt",["strcat",["namespace",["first",["nsactive"]]],["strcat","$-","name","$> "]]],[".",[".","js","t"],"setPrompt",["prompt"]]],[[["identity","true"],["=","prompt",["strcat","name","$ > "]]]],"false"],"prompt"],["function","parseBuffer",["false","result"],[[["not","source"],["return","emptyflag"]]],["catch",[["=","result",[".","driverob","parse",["source"]]],["=","endtoken",[".","source","tokenlast","false"]],[[["==",[".","source","readready","false"],0],["=","source","false"]]],"result"],[[["and",["==",["tostring",["first","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]],["=","source","false"],"emptyflag"]],"false"]],["function","repl",["false","text","result","expr","cmdword","accum"],["=","exop","false"],["=","exconsole","console"],["loop","repl",[[["not",[".","driverob","waiting"]],["set.","driverob",["`","waiting"],["new","nonce"]]]],["catch",[[[["identity","source"],["freshline"],["=","result",["parseBuffer"]],[["eq","result","emptyflag"],["continue"]]],[["not","exop"],["freshline"],[[["&&",[".",[".","driverob","options"],"prompt"],["==",[".","console","readready","false"],0]],[".","console","print",[["driverPrompt"]]]]],[[["==",[".","console","readready","false"],0],[".",[".","driverob","waiting"],"signal",["true"]]]],["loop","false",["=","text",["readline"]],[[[">",[".","console","readready","false"],0],["while","false",[["not",[">",[".","console","readready","false"],0]]],["=","text",[".","text","concat",[[".","console","readchar","false"]]]]],["=","source",["new","textstream","text"]],["continue","repl"]]],["=","expr",[".","text","match",[["RegExp","$^/([A-Za-z_]+)\\s*(.*)"]]]],[[["identity","expr"],["=","cmdword",["deref","expr",1]],[[["deref","driverCmds","cmdword"],[["eq",["call",["deref","driverCmds","cmdword"],"driverob","cmdword",["deref","expr",2]],["`","break"]],["break","repl"]]],[".","console","printline",['$driver command "/',"cmdword",'$" not understood']]],["continue","repl"]],[["!=",[".",[".","text","trim","false"],"length"],0],["break"]],["continue","repl"]]],["loop","false",["=","source",["new","textstream","text"]],["=","result",["parseBuffer"]],[["not",["eq","result","emptyflag"]]],["=","source","false"],["=","accum","text"],[[[".","text","match",[["RegExp","$^\\s*/[/*]"]]],["continue","repl"]]],[[["not",[".","text","match",[["RegExp","$(;|;>|;;)\\s*$"]]]],["=","source",["new","textstream",[".",[".","text","trim","false"],"concat",["$;\n"]]]],["=","result",["parseBuffer"]],[["not",["||",["eq","result","emptyflag"],[".","result",0]]],["break"]]]],["freshline"],[".","console","print",["$>> "]],["=","text",["readline"]],[[["==",[".","text","trim","false"],"$"],[".","console","print",["$command entry canceled"]],["continue","repl"]]],[[["==",[".","text","slice",[-1]],"$\n"],["=","text",[".","accum","concat",["text"]]]],["=","text",[".","accum","concat",["$\n","text"]]]]]],[[[".","exop","display"],[".","console","printline",[[".","exop","display"]]]]],["=","result",["list","false",[".","exop","expr"]]],["=","endtoken",{dictionary:{$atom:["`",";"]}}],[[[".","exop","ending"],["set.","endtoken",["`","atom"],[".","exop","ending"]]]],["=","exop","false"]],[[[".","result",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","result",0],["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[".","console","printline",[[".","driverob","errorstr",["expr"]]]]]]],["=","source","false"]],[["==",[".","endtoken","atom"],["`",";;"]],["\\$",["evalactive",[".","result",1]]]],["\\$",["evalactive",[".","result",1]]],[["!==","\\$",[".",[".","Naan","local"],"mu"]],["freshline"],[".","console","print",["$$: "]],[["!=",[".","endtoken","atom"],["`",";>"]],[".","console","print",[[".","driverob","print",["\\$"]]]]],[".","console","printq",["\\$"]]]]],[[["==","exception","Driver"]],[["==","exception","driver"],["=","exop","false"],["=","exconsole","false"],["throw","driver"]],[["identity","true"],["=","expr",["tostring",["first","exception"]]],[["==","expr","$debugger"],[".","console","printline",["$==> terminated in debugger"]],["=","exop","false"],["=","exconsole","false"],["throw",["list","internal","$exit"]]],[["==","expr","$internal"],[".","console","printline",["$==> error: ",["second","exception"]]]],[[["&&",["dictionary","exception"],["==",[".","exception","error"],"$Naan Error"]],["=","expr",["ErrorString","exception"]]],["=","expr","exception"]],[".","console","printline",["$==> exception: ","expr"]]]],"false"]]],["set.","driverob",["`","setOptions"],["function","setOptions",["options"],[[["identity","options"],["set.","driverob",["`","options"],["merge",[".","driverob","options"],"options"]]]],[".","driverob","options"]]],["set.","driverob",["`","readready"],["function","readready","false",[".","console","readready","false"]]],["set.","driverob",["`","waitIdle"],["closure","waitIdle",["toMS","false","start","totimer"],[[["not",[".","driverob","waiting"]],["set.","driverob",["`","waiting"],["new","nonce"]]]],["=","start",["milliseconds"]],[[["identity","toMS"],["=","totimer",["future",["function","lambda","false",["=","start","false"]],"toMS"]]]],["while","false",[["not","start"]],[".",[".","driverob","waiting"],"wait","false"],["sleep",10],[[[">",["-",["milliseconds"],"start"],50],["break"]]]],[".","totimer","reset","false"],["!=","start","false"]]],["set.","driverob",["`","execute"],["function","execute",["expr","options"],[[["not","options"],["=","options",{dictionary:{}}]]],["set.","options",["`","expr"],"expr"],[["identity","exconsole"],["=","exop","options"],[".","exconsole","readex",["Driver"]],"true"]]],["set.",[".","Naan","runtimelib"],["`","curdriver"],"curdriver"],["set.",[".","Naan","runtimelib"],["`","exec"],"exec"],[[["identity","welcome"],["set.",[".","driverob","options"],["`","prompt"],"true"],[["==","welcome",100],[".","console","printline",['$Naan REPL - type "/help" for more information']]]]],["repl"]]),e._SetBindingList("curdriver",["function","curdriver","false","driverObject"]),e._SetBindingList("exec",["function","exec",["expr","options"],[".","driverObject","execute",["expr","options"]]]),e._SetBindingList("DriverInstall",["function","DriverInstall",["false","curnsactive"],["=","curnsactive",["nsactive"]],["sudo",["nsactive",["list",[".",["nsactive","true"],1]]]],["copyproc",["compress","$driver"],"Driver"],["sudo",["nsactive","curnsactive"]],["throw",["`","driver"]]]),e._AddPropertyList("DriverInit",[["$.lingoInit","true"]]),e._SetBindingList("DriverInit",["function","DriverInit",["false","manifest"],["=","manifest",["`",["driverObject","driver_chmods","driver_debugs","driver_helps","driver_infos","driver_languages","driver_list","driver_options","driver_restarts","driver_quits","driverCmds","Driver","curdriver","exec","DriverInstall","DriverInit"]]],[".",[".","Naan","module"],"build",["$CLI","$Driver",["function","lambda",["modobj","compobj"],[".",[".","Naan","module"],"require",["$Lib/RuntimeLib.nlg"]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DriverInstall"],"DriverInstall"]]]]]),e._Execute(["DriverInit"]),e._CopyBinding("Driver","driver"),e._SetBindingList("DebuggerREPL",["closure","DebuggerREPL",["debug","false","commander","console","dialob","lastCmd"],["=","commander",["new","object","this"]],["=","console",["new","textstream"]],["set.","commander",["`","console"],"console"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],["set.","commander",["`","parse"],[".","dialob","parse"]],["set.","commander",["`","print"],[".","dialob","print"]],["set.","commander",["`","errorstr"],[".","dialob","parseErrorString"]],["set.","commander",["`","utils"],["Utils"]],["set.","commander",["`","info"],["Info","console"]],["set.","commander",["`","catch"],"false"],["set.","commander",["`","breakpoints"],{dictionary:{}}],["function","frameDict",["frame","false","proctask","location","markdict"],["=","proctask",[".","debug","frameProcTask",["frame"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","frame",3],1],[".","proctask",1]]]],[[[".","location",2],["=","markdict",{dictionary:{}}],["set[","markdict",[".","location",2],"$--\x3e"]]],"markdict"],["function","frameProc",["frame","false","proctask","location"],["=","proctask",[".","debug","frameProcTask",["frame"]]],[["identity","proctask"],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".","proctask",1]]]],[".",["tostring",[".",[".","proctask",0],0]],"concat",["space",[".",[".","commander","utils"],"locationString",["location"]]]]]],["function","initconsole","false",[["not","console"],["=","console",["new","textstream"]],["set.","commander",["`","console"],"console"],["set.","commander",["`","utils"],["Utils","console"]],["set.","commander",["`","info"],["Info","console"]]]],["function","readline",["crok","false","cc","output"],["initconsole"],[[["identity","crok"],["=","output","$"]],["while","false",[["not",["==",["=","cc",[".","console","readchar","false"]],"$\n"]]]],["=","output","cc"]],["while","false",[["not",["&&",["!=",["=","cc",[".","console","readchar","false"]],"$\n"],"cc"]]],["=","output",[".","output","concat",["cc"]]]],"output"],["function","driverprompt",["false","prompt"],["catch",[["=","prompt",["strcat","$(ndb-",[".","debug","depth","false"],"$) "]],[".",[".","js","t"],"setPrompt",["prompt"]]],[[["identity","true"],["=","prompt","$(ndb)"]]],"false"],"prompt"],["function","freshline","false",["initconsole"],[["!=",[".",[".","console","printloc","false"],1],0],[".","console","newline","false"]]],["set.","commander",["`","parseText"],["function","parseText",["cmdargs","false","error","expr"],["catch",[["=","source",["new","textstream",[".","cmdargs","concat",["$ ;"]]]],[".","source","setsymbols",[[".","commander","localist",[["deref",[".","commander","frames"],[".","commander","focus"]]]]]],["=",["error","expr"],[".","commander","parse",["source"]]]],[[["identity","true"]]],"false"],[[["identity","error"],["for",["let","lambda",["iter"],["=","iter",["iterate","error",["`","expr"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","expr",[".","iter","$value"]],[".","console","printline",[[".","commander","errorstr",["expr"]]]]]]],["=","expr","false"]]],"expr"]],["set.","commander",["`","getprocarg"],["function","getprocarg",["text","false","args","expr","result","location"],["=","args",[".","text","match",[["RegExp","$^([^:]+)(:\\s*\\d*)?(:\\s*\\d*)?\\s*$"]]]],[[["&&",[">",[".","args","length"],1],["=","expr",[".","commander","parseText",[["deref","args",1]]]]],["catch",[["=","result",["eval","expr"]],[["procedure","result"],["=","result",[".","result",1]]],[["symbol","result"],["=","result",[".",[".","result","proc"],1]]],["=","result","false"]],[[["identity","true"],["=","result","false"]]],"false"],[["identity","result"],["=","location",["list",[".",[".","result","namespace"],"tostring"],"result",["toint",[".",[".",["deref","args",2],"substring",[1]],"trim","false"]],["toint",[".",[".",["deref","args",3],"substring",[1]],"trim","false"]]]]]]],[[["not","location"],["=","location",[".",[".","commander","utils"],"getprocarg",["text"]]]]],"location"]],["function","breakHit",["where","value","false","firstid","location","entry","result","sourceline"],["=","firstid",1],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","bpid",["toint","bpid"]],[[["==","firstid","bpid"],["=","firstid",["+","bpid",1]]]],[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],[".","where","task"]],["=","firstid","bpid"]]]]],[[["not",["deref",[".","commander","breakpoints"],"firstid"]],["breakpoint",[".","where","task"],"undefined"],[".","debug","resume","false"],["return","true"]]],["=","entry",["deref",[".","commander","breakpoints"],"firstid"]],["preadjust",[".","entry","hitcount"],"+",1],[[[".","entry","conditional"],[[["procedure",[".","entry","conditional"]],["=","result",["call",[".","entry","conditional"],[".","entry","hitcount"],[".","entry","value"]]]],["=","result",["eval",[".","entry","conditional"]]]],[["not","result"],[".","debug","resume","false"],["return","true"]]]],[".","console","printline",["$Breakpoint ","firstid","$ at ",[".",[".","commander","utils"],"locationString",[[".","entry","location"]]],"$ with value ","value"]],[[["not",[".","entry","sourced"]],["set.","entry",["`","sourced"],"true"],[[[".",[".","entry","location"],2],["=","sourceline",[".",[".","commander","utils"],"sourcelist",[[".","entry","procdef"],[".",[".","entry","location"],2],[".",[".","entry","location"],2]]]]],["=","sourceline",["tostring",["car",[".","where","task"]]]]],[".","console","printline",["$ ","sourceline"]]]],"false"],["function","stepHit",["dict","false","procdef","location","sourceline"],["=","procdef",[".","debug","insideProc","false"]],[[["not","procdef"],[".","console","printline",["$Stepped to unknown location: ",[".","dict","task"]]],["return","false"]]],[[["member",[".",[".","procdef",1],"namespace"],[".","debug","nshidden"]],[".","debug","stepup","false"],["return","true"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".","procdef",1],[".","dict","task"]]]],[".",[".","commander","info"],"setDefloc",["location"]],[".","console","printline",["$Stepped to ",[".",[".","commander","utils"],"locationString",["location"]],"$ with value ",[".","dict","value"]]],[[["!=",[".","dict","state"],"$task"],["=","sourceline","$[end of body]"]],[[".","location",2],["=","sourceline",[".",[".","commander","utils"],"sourcelist",["procdef",[".","location",2],[".","location",2]]]]],["=","sourceline","$unknown line"]],[".","console","printline",["$ ","sourceline"]],"false"],["function","exceptionHit",["except","false","exceptstr","proctask","location"],[[["||",["not",[".","commander","catch"]],["&&",["tuple",[".","commander","catch"]],["not",["eval",[".","commander","catch"]]]]],["return","true"]]],["freshline"],["=","exceptstr",[".","debug","startExcept"]],[[["&&",["dictionary","exceptstr"],["==",[".","exceptstr","error"],"$Naan Error"]],["=","exceptstr",["ErrorString","exceptstr"]]]],[".","console","printline",["$==> Entering debugger on exception: ","exceptstr"]],["=","proctask",[".","debug","frameProcTask",["false"]]],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".",[".","proctask",1],0]]]],[[["&&","proctask","location"],[".","console","printline",[[".",[".","commander","utils"],"locationString",["location"]]]],[[".","location",2],[".","console","printline",["$ ",[".",[".","commander","utils"],"sourcelist",[[".","proctask",0],[".","location",2],[".","location",2]]]]]]]],"false"],["set.","commander",["`","updateDefproc"],["function","updateDefproc",["frame","false","proctask","location"],["=","proctask",[".","debug","frameProcTask",["frame"]]],[[["identity","proctask"],["=","location",[".",[".","commander","utils"],"makeLocation",[[".",[".","proctask",0],1],[".",[".","proctask",1],0]]]]]],[".",[".","commander","info"],"setDefloc",["location"]]]],["function","findCommand",["text","false","cmd","found"],[["deref","debugCmds","text"],"text"],["for",["let","lambda",["iter"],["=","iter",["iterate","debugCmds",["`","cmd"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","cmd",[".","iter","$value"]],[[[".","cmd","startsWith",["text"]],[["identity","found"],["return","false"]],["=","found","cmd"]]]]]],"found"],["set.","commander",["`","entering"],["function","entering","false",["textstreams",["`",["false","false"]]]]],["set.","commander",["`","pauser"],["function","pauser",["entry","arg1","arg2","arg3","false","cmd","cmdword","proc1"],["updateDefproc","false"],["initconsole"],[[["==","entry","$startpause"],[[["atom","arg1"],[".","console","printline",["$can't debug atoms like: \"","arg1",'$"']],["return"]]],["freshline"],[".","console","printline",["$debugger paused before eval: ","arg1"]]],[["==","entry","$breakpoint"],[["breakHit","arg1","arg2"],["return"]]],[["==","entry","$steptrap"],[["stepHit","arg1"],["return"]]],[["==","entry","$startfail"],["freshline"],[".","console","printline",["$debugger could not pause before eval"]]],[["==","entry","$escape"],[".","console","printline",["$^C"]]],[["==","entry","$exception"],[["exceptionHit","arg1"],["return"]]],[["==","entry","$"]],["freshline"],[".","console","printline",['$debugger entry type "',"entry",'$" not known']]],["set.","commander",["`","frames"],{array:[]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","debug","frames"],["`","frame"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","frame",[".","iter","$value"]],[[["procedure","frame"],["=","proc1","true"]]],[[["&&",["!=",[".","frame",0],["`","body"]],["||",["not","proc1"],["!=",[".","frame",0],["`","loop"]]]],[".",[".","commander","frames"],"push",["frame"]]]]]]],["set.","commander",["`","focus"],0],[".","console","readex",["false"]],["loop","false",["catch",[["freshline"],[".","console","print",[["driverprompt"]]],["=","cmd",["readline","true"]],["=","cmd",[".","cmd","match",[["RegExp","$(\\S+)\\s*(.*)"]]]],[[["not","cmd"],[[["||",["not","lastCmd"],["not",["eq",["deref","debugCmds",["deref","lastCmd",1]],"debug_execs"]]],["continue"]]],["=","cmd","lastCmd"]]],["=","lastCmd","cmd"],["=","cmdword",["findCommand",["deref","cmd",1]]],[[["deref","debugCmds","cmdword"],[["eq",["call",["deref","debugCmds","cmdword"],"cmdword",["deref","cmd",2],"commander","debug"],["`","break"]],["return"]]],[".","console","printline",['$debugger command "',["deref","cmd",1],'$" is undefined or ambiguous']]]],[[["==","exception","DebuggerREPL"],["return","false"]],[["!=","exception","debugger"],[".","console","printline",["$debugger caught: ","exception"]],"false"]],"false"]]]],["set.","commander",["`","endPauser"],["function","endPauser","false",[".","console","readex",["DebuggerREPL"]]]],["set.","commander",["`","procstring"],["function","procstr",["proc","false","output","parm"],[[["||",["not",[".","proc",2]],["not",["car",[".","proc",2]]]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$()"]]]]],[[["atom",[".","proc",2]],["return",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$ ",[".","proc",2]]]]]],["=","output",[".",["tostring",[".","proc",0]],"concat",["$ ",[".","proc",1],"$("]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","proc",2],["`","parm"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","parm",[".","iter","$value"]],[["not","parm"]],["=","output",[".","output","concat",["parm","$, "]]]]]],["=","output",[".","output","slice",[0,-2]]],[".","output","concat",["$)"]]]],["set.","commander",["`","localist"],["function","localist",["frame","false","symbols"],[[["not",["procedure","frame"]],["return","false"]]],["call",["function","scope",["parent","false","lex1","ex1","proc"],["while","false",[["not","parent"]],["=","proc",["getproc","parent"]],["=","lex1",["third","proc"]],[[["atom","lex1"],["push","lex1","symbols"]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["identity","ex1"],["push","ex1","symbols"]]]]],["push","parent","symbols"],["=","lex1",["deref",["@","parent"],["`","\\.children"]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["&&","ex1",["not",["member","ex1","symbols"]]],["push","ex1","symbols"]]]],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]]],[".",[".","frame",3],1]],["reverse","symbols"]]],["set.","commander",["`","exprstr"],["function","exprstr",["expr","false","condexpr"],[[["not","expr"],["return","$"]]],["=","condexpr",[".",[".","commander","utils"],"sourcelist",["expr"]]],["=","condexpr",[".","condexpr","replace",[["RegExp","$^ *\\d+","$mg"],"$"]]],["=","condexpr",[".","condexpr","replace",[["RegExp","$[\\s\\n\\r]{2,}","$mg"],"$ "]]],[".","condexpr","trim","false"]]],["set.","commander",["`","printlocals"],["function","printlocals",["frame","uopts","false","uopt","widths","header","begun"],["=","options",{dictionary:{$indent:4,$header:"false",$parents:"true",$trim:"false",$maxstr:30}}],["for",["let","lambda",["iter"],["=","iter",["iterate","uopts",["`","uopt"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","uopt",[".","iter","$value"]],["set[","options","uopt",["deref","uopts","uopt"]]]]],["=","header",["list","$symbol","$value","$previous"]],["function","calc1",["lex1","false","ex1"],["function","calcitem",["item"],["function","cf",["field","prev","false","width"],["=","width",[".",["tostring","field",{dictionary:{$quote:"true"}}],"length"]],[[[">","width",[".","options","maxstr"]],["=","width",[".","options","maxstr"]]]],[[["<","width","prev"],["=","width","prev"]]],"width"],["set[","widths",0,["cf",["first","item"],["deref","widths",0]]],["set[","widths",1,["cf",["second","item"],["deref","widths",1]]],[["cddr","item"],["set[","widths",2,["cf",["third","item"],["deref","widths",2]]]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[[["not","widths"],["=","widths",{array:[0,0,0]}],[[".","options","header"],["calcitem","header"]]]],["calcitem","ex1"]]]]],["function","print1",["lex1","nameline","false","ex1"],["function","printitem",["item"],["function","pf",["field","width","false","fwidth"],["=","field",["tostring","field",{dictionary:{$quote:"true"}}]],["=","fwidth",[".","field","length"]],[[[">","fwidth",[".","options","maxstr"]],["=","fwidth",[".","options","maxstr"]],["=","field",[".","field","substring",[0,"fwidth"]]]]],[".","console","print",["field",[".","space","repeat",[["-","width","fwidth"]]]]]],[".","console","print",[[".","$ ","repeat",[[".","options","indent"]]]]],["pf",["first","item"],["deref","widths",0]],[".","console","print",["$ "]],["pf",["second","item"],["deref","widths",1]],[[["&&",["cddr","item"],[">",["deref","widths",2],0]],[".","console","print",["$ "]],["pf",["third","item"],["deref","widths",2]]]],[".","console","newline","false"]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[[["not","begun"],[[[".","options","header"],["printitem","header"],["printitem",["list",[".","$-","repeat",[["deref","widths",0]]],[".","$-","repeat",[["deref","widths",1]]],[".","$-","repeat",[["deref","widths",2]]]]]]],["=","begun","true"]]],[[["identity","nameline"],[".","console","printline",["nameline"]],["=","nameline","false"]]],["printitem","ex1"]]]]],["function","printer",["false","procsym","procname","parent","proc","params","parents"],["calc1",["third","frame"]],["=","procsym",[".",[".","frame",3],1]],["=","parent",["deref",["@","procsym"],["`","\\.parent"]]],["while","false",[["not","parent"]],["=","proc",["getproc","parent"]],["=","lex1",["third","proc"]],[[["atom","lex1"],["=","params",["push",["list","lex1",["first","lex1"]],"params"]]],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["&&",[".","options","trim"],["not",["within","ex1",[".","frame",3]]]],["continue"]]],[[["identity","ex1"],["push",["list","ex1",["first","ex1"]],"params"]]]]],["calc1","params"],["push","params","parents"],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]],["=","parents",["reverse","parents"]],["push",["third","frame"],"parents"],["=","parent","procsym"],["while","false",[["not","parent"]],[[["identity","begun"],["=","procname","$"]],["=","procname",[".","procname","concat",["$\n"]]]],["=","proc",["getproc","parent"]],["=","procname",[".","procname","concat",[["first","proc"],"space",["tostring",["namespace","parent"]],"$::",[".","debug","procname",["parent"]]]]],["print1",["pop","parents"],"procname"],["=","parent",["deref",["@","parent"],["`","\\.parent"]]]]],[["procedure","frame"],["printer"]]]],["set.","commander",["`","printframe"],["function","printframe",["frame","false","procstr"],["function","printparms",["lex1","false","ex1"],["loop","false",[["empty","lex1"]],["=","ex1",["pop","lex1"]],[[["first","ex1"],[".","console","print",["$ ",["first","ex1"],"$: ",["second","ex1"],"$ (",["third","ex1"],"$)"]],[".","console","newline","false"]]]]],[["member",["first","frame"],["`",["let","let","&"]]],[".","console","print",[["first","frame"]]],[".","console","newline","false"],[".","console","printparms",[["third","frame"]]],[".","console","print",["$-----------"]],[".","console","newline",[2]],[".","console","print",[[".",[".","commander","utils"],"sourcelist",[[".","frame",3],"false","false",["frameDict","frame"]]]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","builtin"]],[".","console","print",[["first","frame"]]],[".","console","newline","false"],[".","console","print",[["second","frame"]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","interrupt"]],[".","console","print",[["first","frame"],"$ ",["third","frame"],"$ in ",["second","frame"]]],[".","console","newline","false"],[".","console","print",["$exec: ",[".","frame",3]]],[".","console","newline",[2]]],[["procedure","frame"],[".","commander","printlocals",["frame",{dictionary:{$trim:"true"}}]],[".","console","print",["$-----------"]],[".","console","newline",[2]],[".","console","print",[[".",[".","commander","utils"],"sourcelist",[[".","frame",3],"false","false",["frameDict","frame"]]]]],[".","console","newline",[2]]],[["==",["first","frame"],["`","catch"]],[".","console","print",[["first","frame"]]],["=","procstr",["frameProc","frame"]],[[["identity","procstr"],[".","console","newline","false"],[".","console","print",["procstr"]]]],[".","console","newline",[2]]],[".","console","print",["$frame type:",["first","frame"]]],[".","console","newline",[2]]]],["set.","commander",["`","printframedivider"],["function","printframedivider",["frameno","false","header","trailer"],["=","header",[".","$============ Frame #","concat",["frameno","$ ==========="]]],["=","trailer","$================================"],[["not","frameno"],[".","console","printline",["trailer"]]],[".","console","printline",[[".","header","slice",[["length","frameno"]]]]]]],["set.","commander",["`","breakGlobalEnable"],["function","breakGlobalEnable",["enable"],[".","debug","breakGlobalAble",["enable"]]]],["set.","commander",["`","breakAdd"],["function","breakAdd",["location","expr","false","task","firstid","bpdict","procdef","exprstr"],["=","procdef",[".",[".","commander","utils"],"resolveLocation",["location"]]],[[["not","procdef"],[".","console","printline",["$ndb: can't find procedure ",[".",[".","commander","utils"],"locationString",["location"]]]],["return","false"]]],[[["not",[".","location",0]],["=","location",["cons",[".",[".",[".","procdef",1],"namespace"],"tostring"],["cdr","location"]]]]],[[["not",["integer",[".","location",2]]],["=","location",["list",[".","location",0],[".","location",1],1]]],[[".","location",3],["=","location",["list",[".","location",0],[".","location",1],[".","location",2]]]]],["=","task",[".",[".","commander","utils"],"breakLocation",["location"]]],[[["not","task"],[".","console","printline",["$ndb: can't find location ",[".",[".","commander","utils"],"locationString",["location"]]]],["return","false"]]],["=","firstid",1],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","bpid",["toint","bpid"]],[[["==","firstid","bpid"],["=","firstid",["+","bpid",1]]]],[[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],"task"],[".","console","printline",["$ndb: breakpoint ","bpid","$ already exists"]],["return","false"]]]]]],["=","bpdict",["breakpoint","task"]],[[["identity","bpdict"],[["eq",[".","bpdict","proc"],[".","debug","debugBlock"]],[".","console","printline",["$ndb: warning: closure breakpoints would conflict"]],["return","false"]],[".","console","printline",["$ndb: warning: overwriting breakpoint from different debugger"]]]],["=","bpdict",["breakpoint","task",[".","debug","debugBlock"]]],[[["not","bpdict"],[".","console","printline",["$ndb: cannot add that breakpoint"]],["return","false"]]],["set.","bpdict",["`","breakID"],"firstid"],["set[",[".","commander","breakpoints"],"firstid",{dictionary:{$location:"location",$procdef:"procdef",$where:"bpdict",$hitcount:0,$conditional:"expr"}}],[[["identity","expr"],["=","exprstr","$ (conditional)"]],["=","exprstr","$"]],[".","console","printline",["$breakpoint ","firstid","$ at ",[".",[".","commander","utils"],"locationString",["location"]],"exprstr"]],[[["not",[".","debug","bpenable"]],[".","console","printline",["$ndb: warning: breakpoints currently disabled"]]]],"firstid"]],["set.","commander",["`","breakClear"],["function","breakClear",["location","false","task"],["=","task",[".",[".","commander","utils"],"breakLocation",["location"]]],[[["not","task"],["return","false"]]],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],[[["eq",[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"task"],"task"],["breakpoint","task","undefined"],[".","console","printline",["$breakpoint ","bpid","$ at ",[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"bpid"],"location"]]],"$ cleared"]],["set[",[".","commander","breakpoints"],"bpid","undefined"],["return"]]]]]],[".","console","printline",["$ndb: breakpoint not found for ",[".",[".","commander","utils"],"locationString",["location"]]]]]],["set.","commander",["`","breakDelete"],["function","breakDelete",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]],["return","false"]]],["breakpoint",[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"task"],"undefined"],[".","console","printline",["$breakpoint ","breaknum","$ at ",[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"breaknum"],"location"]]],"$ deleted"]],["set[",[".","commander","breakpoints"],"breaknum","undefined"]]],["set.","commander",["`","breakDisable"],["function","breakDisable",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]]]],[[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"enable"],["set.",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],["`","enable"],"false"],[".","console","printline",["$ndb: breakpoint ","breaknum","$ disabled"]]]]],["set.","commander",["`","breakEnable"],["function","breakEnable",["breaknum"],[[["not",["deref",[".","commander","breakpoints"],"breaknum"]],[".","console","printline",["$ndb: breakpoint ","breaknum","$ does not exist"]]]],[["not",[".",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],"enable"]],["set.",[".",["deref",[".","commander","breakpoints"],"breaknum"],"where"],["`","enable"],"true"],[".","console","printline",["$ndb: breakpoint ","breaknum","$ enabled"]]]]],["set.","commander",["`","breakList"],["function","breakList",["false","rows","counts","rowdex","coldex"],[[["==",["length",[".","commander","breakpoints"]],0],[".","console","printline",["$no breakpoints"]],["return"]]],["=","rows",{array:[]}],["=","counts",{array:[]}],["set[","rows",0,{array:["$num","$enable","$count","$location","$condition"]}],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","breakpoints"],["`","bpid"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","bpid",[".","iter","$value"]],["=","rowdex",["+",-1,[".","rows","push",[{array:["bpid","$N",[".",["deref",[".","commander","breakpoints"],"bpid"],"hitcount"],[".",[".","commander","utils"],"locationString",[[".",["deref",[".","commander","breakpoints"],"bpid"],"location"]]],[".","commander","exprstr",[[".",["deref",[".","commander","breakpoints"],"bpid"],"conditional"]]]]}]]]],[[[".",[".",["deref",[".","commander","breakpoints"],"bpid"],"where"],"enable"],["set[",["deref","rows","rowdex"],1,"$Y"]]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],["=","coldex",0],["while","false",[["not",["<=","coldex",4]]],[[["||",["not",["deref","counts","coldex"]],["<",["deref","counts","coldex"],[".",["deref","row","coldex"],"length"]]],["set[","counts","coldex",[".",["deref","row","coldex"],"length"]]]],["preadjust","coldex","+",1]]]]],["for",["let","lambda",["iter"],["=","iter",["iterate","rows",["`","row"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","row",[".","iter","$value"]],[".","console","print",[["prepad",["deref","row",0],["deref","counts",0]]]],[".","console","print",[["prepad",["deref","row",1],["+",["deref","counts",1],1]]]],[".","console","print",[["prepad",["deref","row",2],["+",["deref","counts",2],1]]]],[".","console","print",["$ ",["deref","row",3],[".","space","repeat",[["-",["deref","counts",3],[".",["deref","row",3],"length"]]]]]],[[["deref","row",4],[".","console","print",["$ ",["deref","row",4]]]]],[".","console","newline","false"],[[[">","coldex",0],["=","coldex",0],[".","console","print",[["prepad","$",["deref","counts",0],"$-"]]],[".","console","print",["$ ",["prepad","$",["deref","counts",1],"$-"]]],[".","console","print",["$ ",["prepad","$",["deref","counts",2],"$-"]]],[".","console","print",["$ ",[".","$-","repeat",[["deref","counts",3]]]]],[".","console","printline",["$ ",[".","$-","repeat",[["deref","counts",4]]]]]]]]]]]],["=","debugCmds",{dictionary:{$b:"debug_breaks",$break:"debug_breaks",$clear:"debug_breaks",$delete:"debug_breaks",$disable:"debug_breaks",$enable:"debug_breaks",$catch:"debug_exceptions",$c:"debug_execs",$continue:"debug_execs",$f:"debug_execs",$finish:"debug_execs",$n:"debug_execs",$next:"debug_execs",$s:"debug_execs",$step:"debug_execs",$eval:"debug_evals",$p:"debug_evals",$print:"debug_evals",$pp:"debug_evals",$help:"debug_helps",$i:"debug_infos",$info:"debug_infos",$list:"debug_list",$bt:"debug_stacks",$backtrace:"debug_stacks",$frame:"debug_stacks",$scope:"debug_stacks",$up:"debug_stacks",$down:"debug_stacks",$q:"debug_quit",$quit:"debug_quit"}}],"commander"]),e._SetBindingList("debug_breaks",["function","debug_breaks",["cmdword","cmdargs","commander","debug","false","console","args","expr","location","breaknum"],["=","console",[".","commander","console"]],[["==",[".","cmdword","charAt",[0]],"$b"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*(\\S+)\\s+if\\s+(\\S+.*)\\s*$"]]]],[[["identity","args"],["=","location",[".","commander","getprocarg",[["deref","args",1]]]],["=","expr",[".","commander","parseText",[["deref","args",2]]]],[["not","expr"],["return",[".","console","print",["$ndb: conditional breakpoint expression not understood"]]]]],["=","location",[".","commander","getprocarg",["cmdargs"]]]],[[["not","location"],["return",[".","console","print",["$ndb: please specify a valid procedure"]]]]],[".","commander","breakAdd",["location","expr"]]],[["==","cmdword","$clear"],["=","location",[".","commander","getprocarg",["cmdargs"]]],[[["not","location"],["return",[".","console","print",["$ndb: please specify a valid procedure"]]]],[["numeric",["toint",[".","location",1]]],["return",[".","console","print",["$ndb: please specify a procedure (or use delete <number>)"]]]]],[".","commander","breakClear",["location"]]],[["||",["==","cmdword","$delete"],["==","cmdword","$disable"],["==","cmdword","$enable"]],["=","breaknum",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["||",["==","cmdargs","$"],["==",[".","cmdargs","toLowerCase","false"],"$all"]],[["==","cmdword","$enable"],[".","console","printline",["$breakpoints enabled"]],["return",[".","commander","breakGlobalEnable",["true"]]]],[["==","cmdword","$disable"],[".","console","printline",["$breakpoints disabled"]],["return",[".","commander","breakGlobalEnable",["false"]]]]]],[[["||",["not","breaknum"],["&&",["not",["numeric","breaknum"]],["!=",["pop","breaknum"],["`","set"]]]],["return",[".","console","print",["$ndb: please specify breakpoint number(s)"]]]]],["loop","false",[[["numeric","breaknum"],["=","expr","breaknum"],["=","breaknum","false"]],[["empty","breaknum"],["break"]],["=","expr",["pop","breaknum"]]],[[["==","cmdword","$delete"],[".","commander","breakDelete",["expr"]]],[["==","cmdword","$disable"],[".","commander","breakDisable",["expr"]]],[".","commander","breakEnable",["expr"]]]]]]),e._SetBindingList("debug_exceptions",["function","debug_exceptions",["cmdword","cmdargs","commander","debug","nsteps","false","console","args","expr"],["=","console",[".","commander","console"]],[[["==","cmdargs","$disable"],["set.","commander",["`","catch"],"false"]],[["||",["==","cmdargs","$enable"],["==","cmdargs","$all"]],["set.","commander",["`","catch"],"true"]],[["!=","cmdargs","$"],["=","args",[".","cmdargs","match",[["RegExp","$^\\s*if\\s+(\\S+.*)\\s*$"]]]],[[["identity","args"],["=","expr",[".","commander","parseText",[["deref","args",1]]]],[["not","expr"],["return",[".","console","print",["$ndb: conditional catch expression not understood"]]]]]],["set.","commander",["`","catch"],"expr"]]],[["not",[".","commander","catch"]],[".","console","printline",["$exceptions: catch disabled"]]],[["atom",[".","commander","catch"]],[".","console","printline",["$exceptions: catch all"]]],[".","console","printline",["$exceptions: catch if ",[".","commander","exprstr",[[".","commander","catch"]]]]]]),e._SetBindingList("debug_execs",["function","debug_execs",["cmdword","cmdargs","commander","debug","nsteps"],[[["==",[".","cmdword","charAt",[0]],"$c"],[".","debug","resume","false"]],[["==",[".","cmdword","charAt",[0]],"$f"],[".","debug","stepup","false"]],[["==",[".","cmdword","charAt",[0]],"$n"],[".","debug","stepover","false"]],[["==",[".","cmdword","charAt",[0]],"$s"],["=","nsteps",["toint","cmdargs"]],[[["not",["numeric","nsteps"]],["=","nsteps",1]]],[".","debug","step",["nsteps"]]],["return"]],["`","break"]]),e._SetBindingList("debug_evals",["function","debug_evals",["cmdword","cmdargs","commander","debug","false","console","ex1","ex2","aterm","printlevel","result"],["=","console",[".","commander","console"]],["=","ex1",[".","commander","parseText",["cmdargs"]]],[[["==","cmdword","$eval"],["=","ex2",["tokenlast"]],["=","aterm",["atTerminator"]],[["==",["first","ex2"],["`",";"]],["=","printlevel",2]],[["==",["first","ex2"],["`",";>"]],["=","printlevel",1]]],["=","aterm","true"],[["==","cmdword","$pp"],["=","printlevel",2]],[["==",[".","cmdword","charAt",[0]],"$p"],["=","printlevel",1]],["return"]],[["not","aterm"],[".","console","printline",[["langExprLoc","ex2"],"$operator missing between ","ex1","$ and ","ex2"]],[".","console","newline","false"]],["=","result",["eval","ex1"]],[["identity","printlevel"],[".","console","print",["$ result: "]],[[["==","printlevel",2],[".","console","print",[[".","commander","print",["result"]]]]],[".","console","printq",["result"]]],[".","console","newline","false"]]]),e._SetBindingList("debug_helps",["function","debug_helps",["cmdword","cmdargs","commander","debug","false","console","text"],["=","console",[".","commander","console"]],[[["==","cmdargs","$me"],["=","text","$you're beyond it"]],["=","text",["call",["let","lambda",["proc"],[["||",["eq","proc","debug_breaks"],["==","cmdargs","$breakpoints"]],"$ b[reak] <location> - set breakpoint at location\n <location> if function(count, value) { <body> }\n <location> if <expression>\n clear <location> - clear breakpoint at location\n delete <#> [<#>...] - delete breakpoint(s) by #\n disable [<#>] - disable breakpoint # | all\n enable [<#>] - enable breakpoint # | all\n i[nfo] (b)reakpoints - show current breakpoints\n"],[["||",["eq","proc","debug_exceptions"],["==","cmdargs","$exceptions"]],"$ catch enable - catch all exceptions (default)\n catch disable - don't catch any exceptions\n catch if <expr> - catch if <expr> true\n"],[["||",["eq","proc","debug_execs"],["==","cmdargs","$execution"]],"$ c[continue] - continue execution\n f[finish] - finish current procedure\n n[ext] - step over to next expression\n s[tep] - step into next expression\n"],[["||",["eq","proc","debug_evals"],["==","cmdargs","$eval"]],"$ pp <expr> - evaluate expr and pretty-print result\n eval <expr> [;] - (same)\n p <expr> - evaluate expr and print basic result\n eval <expr> ;> - (same)\n eval <expr> ;; - evaluate expr and don't print result\n"],[["eq","proc","debug_helps"],"$ help - list help topics\n help <debug-command> - get specific help on a command\n"],[["||",["eq","proc","debug_infos"],["==","cmdargs","$info"]],"$ i[nfo] - list info topics\n i[nfo] <topic> - print debugger info on topic\n"],[["eq","proc","debug_list"],"$ list [<namespace>::]<procedure-name>[.<nestedname>]*[:start[:end]]\n"],[["==","cmdargs","$locations"],"$ [<namespace>::] <procname> [.<procname>...] [: line-number]\n"],[["||",["eq","proc","debug_stacks"],["==","cmdargs","$stacks"]],"$ bt - print backtrace\n backtrace - (same)\n frame <start#> [- <end#>] - display stack frame(s)\n scope <frame#> - change focus frame and display variables\n up - change focus frame higher\n down - change focus frame lower\n"],[["eq","proc","debug_quit"],"$ q[uit] - abandon all execution and restart repl\n"],"$help topics:\n breakpoints - work with breakpoints\n exceptions - work with exceptions\n execution - stepping and continuing execution\n eval - evaluating and printing expressions\n help - using help\n info - print debugger information\n list - list procedure source\n locations - syntax for procedure location references\n stacks - backtrace and stack frame details\n quit - quitting current execution\n"],["deref","debugCmds","cmdargs"]]]],[".","console","print",["text"]]]),e._SetBindingList("debug_infos",["function","debug_infos",["cmdword","cmdargs","commander","debug","false","console","args"],["=","console",[".","commander","console"]],["=","args",[".","cmdargs","match",[["RegExp","$([A-Za-z_]+)\\s*(.*)"]]]],["=","cmdword",["deref","args",1]],["=","cmdargs",["deref","args",2]],[["not","cmdword"],[".","console","print",["$info topics:\n i[nfo] (b)reakpoints - show current breakpoints\n i[nfo] (f)ind <regex> - find matching symbols in active namespaces\n <regex> all | in <namespace> ...in all or specified namespace\n i[nfo] f(u)tures - show pending futures\n i[nfo] (m)odules [<name> [<name> ...]] - show modules and components\n i[nfo] (p)roc [<name>] - show information about procedure\n i[nfo] (s)scope [<frame>] - show parameters and locals for frame\n"]]],[["||",["==","cmdword","$b"],["==","cmdword","$breakpoints"]],[".","commander","breakList","false"]],[["||",["==","cmdword","$f"],["==","cmdword","$find"]],[".",[".","commander","info"],"infofind",["cmdargs"]]],[["||",["==","cmdword","$u"],["==","cmdword","$future"],["==","cmdword","$futures"]],[".",[".","commander","info"],"infofutures",["cmdargs"]]],[["||",["==","cmdword","$m"],["==","cmdword","$module"],["==","cmdword","$modules"]],[".",[".","commander","info"],"infomod",["cmdargs"]]],[["||",["==","cmdword","$s"],["==","cmdword","$scope"]],["debug_stacks","$scope","cmdargs","commander","debug"]],[["||",["==","cmdword","$p"],["==","cmdword","$proc"],["==","cmdword","$procedure"]],[".",[".","commander","info"],"infoproc",["cmdargs"]]],[".","console","printline",["$ndb: info topic ","cmdword","$ not implemented"]]]),e._SetBindingList("debug_list",["function","debug_list",["cmdword","cmdargs","commander","debug","false","console","procdef","start","end","center","markdict"],["=","console",[".","commander","console"]],[[["&&","cmdargs",["!=","cmdargs","$"]],[".",[".","commander","info"],"infolist",["cmdargs"]],["return"]]],[[["not",[".",[".","commander","info"],"defloc"]],[".","console","printline",["$ndb: nothing to list"]],["return"]]],["=","procdef",[".",[".","commander","utils"],"resolveLocation",[[".",[".","commander","info"],"defloc"]]]],[[["not","procdef"],[".","console","printline",["$ndb: can't find ",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],["return"]]],["=","start",[".",[".",[".","commander","info"],"defloc"],2]],["=","center",20],[[["not","start"],["=","start",1],["=","end","center"]],["preadjust","start","-",["quotient","center",2]],[[["<","start",1],["=","start",1]]],["=","end",["-",["+","start","center"],1]]],[".","console","printline",[[".","procdef",0],"space",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],[[[".",[".",[".","commander","info"],"defloc"],2],["=","markdict",{dictionary:{}}],["set[","markdict",[".",[".",[".","commander","info"],"defloc"],2],"$--\x3e"]]],[".","console","print",[[".",[".",[".","commander","info"],"utils"],"sourcelist",["procdef","start","end","markdict"]]]]]),e._SetBindingList("debug_stacks",["function","debug_stacks",["cmdword","cmdargs","commander","debug","false","console"],["=","console",[".","commander","console"]],["function","backtrace",["false","framedex","frame"],["function","paramstr",["frame","false","params","pinfo"],["=","params",[".",[".","frame",3],2]],[["not","params"],["=","pinfo","$()"]],[["atom","params"],["=","pinfo",[".","$ ","concat",[["tostring","params"]]]]],["=","pinfo","false"],["for",["let","lambda",["iter"],["=","iter",["iterate","params",["`","param"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","param",[".","iter","$value"]],[[["not","param"],["push",["`","local"],"pinfo"]],["push","param","pinfo"]]]]],["=","pinfo",["tostring",["reverse","pinfo"]]]],["=","framedex",0],["for",["let","lambda",["iter"],["=","iter",["iterate",[".","commander","frames"],["`","frame"]]],["loop","false",[[".","iter","$next",["iter"]],[".","iter","$final",["iter"]]],["=","frame",[".","iter","$value"]],[[["procedure","frame"],["=","finfo",[".","$ ","concat",[["tostring",["namespace",["second","frame"]]],"$::",[".","debug","procname",[[".",[".","frame",3],1]]],["paramstr","frame"]]]]],[["eq",["first","frame"],["`","interrupt"]],["=","finfo",[".","$ ","concat",[["tostring",["third","frame"]]]]]],["=","finfo","$"]],[".","console","printline",[["prepad",["postadjust","framedex","+",1],5],"$ ",["prepad",[".","frame",0],10],"finfo"]]]]]],["function","pscope",["false","nargs","frame"],["=","nargs",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["not","nargs"],["=","nargs",[".","commander","focus"]],[".","console","printline",["$Scope is frame #","nargs"]]],[["||",["not",["numeric","nargs"]],[">=","nargs",[".",[".","commander","frames"],"length"]]],[".","console","printline",["$ndb: invalid frame number:","nargs"]],["return"]],[".","console","printline",["$Scope now frame #","nargs"]]],["set.","commander",["`","focus"],"nargs"],["=","frame",["deref",[".","commander","frames"],"nargs"]],[".","commander","updateDefproc",["frame"]],[".","console","printline",[[".","frame",0],"space",[".",[".","commander","utils"],"locationString",[[".",[".","commander","info"],"defloc"]]]]],[".","commander","printlocals",["frame"]]],["function","pframes",["false","nargs","startx","lastx"],["=","startx",["=","lastx",[".","commander","focus"]]],["=","nargs",[".",[".","commander","utils"],"getnumargs",["cmdargs"]]],[[["numeric","nargs"],["=","startx",["=","lastx","nargs"]]],[["eq",["first","nargs"],["`","range"]],[["<",[".","nargs",1],[".","nargs",2]],["=","startx",[".","nargs",1]],["=","lastx",[".","nargs",2]]],["=","startx",[".","nargs",2]],["=","lastx",[".","nargs",1]]],[["identity","nargs"],[".","console","print",["$ndb: invalid frame number or range:","nargs"]],["return"]]],[["<","startx",[".",[".","commander","frames"],"length"]],[[[">=","lastx",[".",[".","commander","frames"],"length"]],["=","lastx",["-",[".",[".","commander","frames"],"length"],1]]]],["while","false",[["not",["<=","startx","lastx"]]],[".","commander","printframedivider",["startx"]],[".","commander","printframe",[["deref",[".","commander","frames"],["postadjust","startx","+",1]]]]],[".","commander","printframedivider","false"]]],[["||",["==","cmdword","$bt"],["==","cmdword","$backtrace"]],["backtrace"]],[["==","cmdword","$frame"],["pframes"]],[["==","cmdword","$scope"],["pscope"]],[["||",["==","cmdword","$up"],["==","cmdword","$down"]],[[["&&",["==","cmdword","$up"],["<",[".","commander","focus"],["-",[".",[".","commander","frames"],"length"],1]]],[".","console","print",["$+Scope now frame #",["preadjust",[".","commander","focus"],"+",1]]]],[["&&",["==","cmdword","$down"],[">",[".","commander","focus"],0]],[".","console","print",["$-Scope now frame #",["preadjust",[".","commander","focus"],"-",1]]]],["return"]],[".","commander","updateDefproc",[["deref",[".","commander","frames"],"nargs"]]]],[".","console","printline",["$ndb: ","cmdword","$ not implemented yet"]]]),e._SetBindingList("debug_quit",["function","debug_quit",["cmdword","cmdargs","commander","debug"],["sudo",["=","exception",["`","exception"]]],["throw","debugger"]]),e._AddPropertyList("DebuggerInit",[["$.lingoInit","true"]]),e._SetBindingList("DebuggerInit",["function","DebuggerInit",["false","manifest"],["=","manifest",["`",["DebuggerREPL","debug_breaks","debug_exceptions","debug_execs","debug_evals","debug_helps","debug_infos","debug_list","debug_stacks","debug_quit","DebuggerInit"]]],[".",[".","Naan","module"],"build",["$CLI","$Debugger",["function","lambda",["modobj","compobj","false","debug"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DebuggerREPL"],"DebuggerREPL"],["=","debug",[".",[".",[".",["modlist"],"Util"],"exports"],"DebugController","false"]],[".","debug","setDefCommander",[["DebuggerREPL","debug"]]]]]]]),e._Execute(["DebuggerInit"]),e._SetNamespace(t,!0)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
41
41
 
42
42
  /* Copyright (c) 2017-2024 by Zulch Laboratories, Inc. */
43
- !function(e){e.BootModule=function(e){"use strict";var t=e._SetNamespace("Util");e._CopyBinding("equal","=="),e._CopyBinding("setq","="),e._CopyBinding("times","*"),e._CopyBinding("and","&&"),e._CopyBinding("or","||"),e._CopyBinding("loop","while"),e._Import("number","difference","-"),e._Import("number","greater",">"),e._Import("number","lesser","<"),e._Import("number","times","*"),e._Import("number","plus","+"),e._Import("number","quotient","/"),e._Import("number","quotient","/."),e._Import("number","mod","%"),e._SetBindingList("!=",["function","!=",["ex1","ex2"],["not",["equal","ex1","ex2"]]]),e._SetBindingList(">=",["function",">=",["ex1","ex2"],["or",["greater","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("<=",["function","<=",["ex1","ex2"],["or",["lesser","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("+=",["macro","+=",["ex1","ex2"],["assign","ex1",["+",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("-=",["macro","-=",["ex1","ex2"],["assign","ex1",["-",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("*=",["macro","*=",["ex1","ex2"],["assign","ex1",["*",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("/=",["macro","/=",["ex1","ex2"],["assign","ex1",["/",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("Component",["closure","Component",["modobj","name","filename","false","compobj"],["=","compobj",["new","object","this"]],["set.","compobj",["`","module"],"modobj"],["set.","compobj",["`","name"],"name"],["set.","compobj",["`","filename"],"filename"],["set.","compobj",["`","modsym"],[".","modobj","modsym"]],["set.","compobj",["`","manifest"],"false"],["set.","compobj",["`","loaded"],"false"],["set.","compobj",["`","package"],["function","package",["false","pkg","curactns","returner"],[".",[".","Naan","module"],"require",["$Util/Packager.nlg"]],[[["not",[".",[".","module","exports"],"pkgSave"]],["return","false"]]],["=","curactns",["nsactive"]],["=","returner",["makeReturner"]],["catch",[[".","modobj","activate","false"],["=","pkg",["pkgSave",["compress",[".","compobj","name"]],[".","compobj","manifest"]]]],[[["identity","true"],["ErrorDebuglog","$package exception: ","exception"],["return","false"]]],[["returner"]]],"pkg"]],["set.","compobj",["`","jspackage"],["function","jspackage",["false","pkg"],["=","pkg",["package"]],[[["not","pkg"],["return","false"]]],["pkgToJsSource","pkg"]]],["set.","compobj",["`","npackage"],["function","npackage",["false","pkg"],["=","pkg",["package"]],[["identity","pkg"],["JSONstringify","pkg"]]]],["set.","compobj",["`","save"],["function","save",["fpath","overwrite","false","text","pathobj","options"],["=","text",["jspackage"]],[[["not","text"],["return","false"]]],["=","fpath",[".","JSpath","normalize",["fpath"]]],["=","pathobj",[".","JSpath","parse",["fpath"]]],[[["==",["length",[".","pathobj","ext"]],0],["=","fpath",["strcat","fpath","$.json"]]]],["=","options",["xnew"]],[[["identity","overwrite"],["set.","options",["`","flags"],"$w"]],["set.","options",["`","flags"],"$wx"]],["=","fpath",[".","JSpath","join",[[".","js","d"],"fpath"]]],[".",[".","js","r",["$fs"]],"writeFileSync",["fpath","text","options"]],"fpath"]],"compobj"]),e._SetBindingList("Module",["closure","Module",["modules","modid","exns","false","modobj"],["=","modobj",["new","object","this"]],["set.","modobj",["`","owner"],"modules"],["set.","modobj",["`","id"],"modid"],["set.","modobj",["`","created"],[".","Date","now","false"]],["closure","makeActivator",["false","checkns","targns"],["=","checkns",["nsrights"]],["=","targns",["car",["nsactive"]]],["call",["enclose",["function","lambda","false",["function","returner","false",[["eq","checkns",[".",[".","Naan","local"],"nscaller","false"]],["nsactive",["cons","targns",["inherits"]]]]],"returner"],"targns"]]],["set.","modobj",["`","inherits"],["function","inherits",["false","result","nslist"],["=","nslist",[".","modobj","inherit"]],["loop","false",[["empty","nslist"]],["=","ns",["pop","nslist"]],[[["not",["member","ns","result"]],["push","ns","result"]]]],["push",["second",["nsactive","true"]],"result"],["reverse","result"]]],["set.","modobj",["`","makeComponent"],["function","lambda",["compname","filename","false","compobj"],["=","compobj",["Component","modobj","compname","filename"]],["set[",[".","modobj","components"],"compname","compobj"]]],["set.","modobj",["`","destroy"],["function","destroy","false",[".","modules","destroy",["modobj"]],"true"]],["call",["let","lambda",["false","mtuple"],["function","nsinit",["modobj","false","modsym"],["letlocal","$module"],["=","modsym",["compress","$module"]],["putproc","modsym",[".","modules","moduleProc"]],["assign","modsym","modobj"],["list",["car",["nsactive"]],["makeActivator"],"modsym"]],["function","registerns",["ns","modobj","false","curactns"],["=","curactns",["nsactive"]],["sudo",["nsactive",["cons","ns","curactns"]]],["=","ns",["nsinit","modobj"]],["sudo",["nsactive","curactns"]],"ns"],["function","makens",["nsname","modobj","false","ns"],["=","ns",["new","namespace","nsname"]],["=","ns",["nsinit","modobj"]],["sudo",["nsactive",["cdr",["nsactive"]]]],"ns"],["set.","modobj",["`","locpath"],"$"],["set.","modobj",["`","exports"],{dictionary:{}}],["put",[".","modobj","exports"],["`","module"],"modobj"],["set.","modobj",["`","children"],{array:[]}],["set.","modobj",["`","components"],{dictionary:{}}],[[["identity","exns"],["=","mtuple",["registerns","exns","modobj"]]],["=","mtuple",["makens","modid","modobj"]]],["set.","modobj",["`","namespace"],["car","mtuple"]],["set.","modobj",["`","activate"],["second","mtuple"]],["set.","modobj",["`","modsym"],["third","mtuple"]]]],"modobj"]),e._SetBindingList("Modules",["closure","Modules",["false","modules"],["=","modules",["new","object","this"]],["set.","modules",["`","list"],{dictionary:{}}],["set.","modules",["`","locations"],{dictionary:{$naanlib:"$"}}],["set.","modules",["`","extensions"],{array:["$nlg","$npk"]}],["set.","modules",["`","queryString"],"$"],["function","reload",["false","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"reload","false"]],[[["identity","true"],"false"]],"false"]],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"postload","false"]],[[["identity","true"],"false"]],"false"]]],["loadNotify","reload"],["function","resave",["false","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"resave","false"]],[[["identity","true"],"false"]],"false"]]],["saveNotify","resave"],["set.","modules",["`","moduleProc"],["function","moduleProc",["modid"],[["not","modid"],["keys",[".","modules","list"]]],["deref",[".","modules","list"],"modid"]]],["set.","modules",["`","find"],["function","find",["test","false","modobj","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"],"false"],["=","modobj",["xget",[".","modules","list"],["pop","mkeys"]]],[["test","modobj"],"modobj"]]]],["set.","modules",["`","letinherit"],["function","letinherit",["modfrom","false","modto","curac","nsfrom","nsto"],["=","curac",["nsactive"]],[[["string","modfrom"],["=","modfrom",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modfrom"]]]]]],[["not","modfrom"],"false"],["=","modto",["find",["function","lambda",["mod"],["eq",[".","mod","namespace"],["car","curac"]]]]],[[[".","modfrom","inherit"],["=","nsfrom",["cons",[".","modfrom","namespace"],[".","modfrom","inherit"]]]],["=","nsfrom",["list",[".","modfrom","namespace"]]]],[[["identity","modto"],[[[".","modto","inherit"],["set.","modto",["`","inherit"],["append","nsfrom",[".","modto","inherit"]]]],["set.","modto",["`","inherit"],"nsfrom"]],["=","nsto",[".","modto","inherits","false"]]],["=","nsto","nsfrom"]],["nsactive",["append",["car","curac"],"nsto",["cdr","curac"]]],["nsactive"]]],["set.","modules",["`","require"],["closure","require",["fpath","options","data","false","locin","ns","parent","pathobj","locpath","modname","modobj","compname","compath","compobj","error","presult","returner","extensions","pathext","query","hostpath"],["sprint"],[[["&&","options",["not",["dictionary","options"]]],["throw",["Error",[".","$require(","concat",["fpath","$): invalid options"]]]]]],["=","locin",[".","fpath","split",["$:"]]],[[["==",[".","locin","length"],2],["=","fpath",[".","locin",1]],["=","locin",[".","locin",0]]],["=","locin",[".","options","in"]]],["=","ns",["||",[".","options","parent"],["nscaller"]]],["=","parent",["find",["function","lambda",["mod"],["eq",[".","mod","namespace"],"ns"]]]],["=","pathobj",[".","JSpath","parse",["fpath"]]],[[["||",["==",[".","pathobj","ext"],"$"],[".",["RegExp","$[/\\\\]$"],"test",["fpath"]]],["=","compath",[".","JSpath","join",["fpath",[".","pathobj","base"]]]],["=","pathobj",[".","JSpath","parse",["compath"]]]]],["=","locpath",[".","pathobj","dir"]],["=","modname",[".","JSpath","basename",["locpath"]]],[[["||",["==","modname","$."],["==","modname","$.."]],["=","modname","$"]]],[[["identity","locin"],["=","presult",["deref",[".","modules","locations"],"locin"]],[[["not","presult"],["throw",["Error",[".","$require(","concat",["fpath","$): in:","locin","$ undefined"]]]]]],["=","locpath",[".","JSpath","resolve",["presult","locpath"]]]],[["&&",["!=",[".","pathobj","ext"],"$"],["==","locpath","$"]],["=","locpath",[".","parent","locpath"]]],[["&&",[".",["RegExp","$^[.][.]?[/\\\\]"],"test",["fpath"]],[".","parent","locpath"]],["=","locpath",[".","JSpath","join",[[".","parent","locpath"],"locpath"]]]]],[[["not","locpath"],["=","locpath","$"]]],["set.","pathobj",["`","dir"],"locpath"],["=","compname",[".","pathobj","name"]],[[["&&","locpath",["!=","locpath","$"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","locpath"],"locpath"]]]]]],[[["not","modobj"],[["==","modname","$"],["=","modobj","parent"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modname"]]]]]],[[["&&",["not",[".","options","read"]],["not",[".","options","reload"]],["deref",[".","modobj","components"],"compname"]],["return",[".","modobj","exports"]]]],["=","returner",["makeReturner"]],["catch",[["=","extensions",["new",[".","modules","extensions"]]],["loop","false",["=","pathext",[".","extensions","pop","false"]],[["not","pathext"]],["set.","pathobj",["`","ext"],[".","$.","concat",["pathext"]]],["set.","pathobj",["`","base"],[".",[".","pathobj","name"],"concat",[[".","pathobj","ext"]]]],["=","compath",[".","JSpath","format",["pathobj"]]],[[["not","modobj"],["=","modobj",["makeModule","modname"]]]],["=","query",[".","options","query"]],[[["not","query"],["=","query",[".","modules","queryString"]]]],["=","hostpath",[".",[".",[".",[".","js","w"],"location"],"origin"],"concat",[[".","JSpath","dirname",[[".",[".",[".","js","w"],"location"],"pathname"]]]]]],[[[".","options","source"],[["string",[".","options","source"]],["=","presult",[".","options","source"]]],["=",["error","presult"],["call",[".","options","source"],"compath","query"]]],[["identity","hostpath"],["=",["error","presult"],["modWebReadFile","compath","hostpath","query"]]],["=",["error","presult"],["modNodeReadFile","compath"]]],[[[">",["length","presult"],0],[[["==",[".","modobj","locpath"],"$"],["set.","modobj",["`","locpath"],"locpath"]]],[[[".","options","read"],["return","presult"]]],["=","compobj",[".","modobj","makeComponent",["compname",[".","pathobj","base"]]]],[".","modobj","activate","false"],["set.","modobj",["`","data"],"data"],["rdsDriver","presult","compath"],["set.","modobj",["`","data"],"undefined"],["returner"],["set.","compobj",["`","loaded"],"true"],["return",[".","modobj","exports"]]]]],["throw",["Error",[".","$require(","concat",["fpath","$): failed: "]],"compath","error"]],["set[",[".","modobj","components"],"compname","false"],"false"],[[["identity","true"],["ErrorDebuglog",[".","$require(","concat",["fpath","$): exception: "]],"exception"],["set[",[".","modobj","components"],"compname","false"],["returner"],["throw","exception"]]],"false"]]],["set.","modules",["`","defineLoc"],["function","defineLoc",["id","path"],[["not","id"],[".","modules","locations"]],["set[",[".","modules","locations"],"id","path"]]],["set.","modules",["`","defineExt"],["function","defineExt",["ext","reset","false","value"],[[["not","ext"],["=","value",[".","modules","extensions"]]]],[[["identity","reset"],["set.","modules",["`","extensions"],{array:[]}]]],[[["identity","ext"],[".",[".","modules","extensions"],"push",["ext"]],["=","value",[".","modules","extensions"]]]],"value"]],["set.","modules",["`","requireQuery"],["function","requireQuery",["query"],[["not","query"],[".","modules","queryString"]],["set.","modules",["`","queryString"],["modEncodeQuery","query"]]]],["set.","modules",["`","build"],["closure","build","args",["call",["function","lambda",["modname","compname","proc","args","false","modobj","compobj","curactns","presult","returner"],["=","curactns",["nsactive"]],["=","returner",["makeReturner"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modname"]]]],[[["identity","modobj"]],[["==",["namespace",["car","curactns"]],"modname"],["=","modobj",["makeModule","modname",["car","curactns"]]]],["=","modobj",["makeModule","modname"]]],[[["not","compname"],["=","compname","modname"]]],["=","compobj",["deref",[".","modobj","components"],"compname"]],[[["not","compobj"],["=","compobj",[".","modobj","makeComponent",["compname"]]]]],["catch",[[[["identity","proc"],[".","modobj","activate","false"],["set.","compobj",["`","loaded"],"false"],["=","presult",["apply","proc",["cons","modobj","compobj","args"]]],["returner"],[["not","presult"],"false"]]],["set.","compobj",["`","loaded"],"true"],[".","modobj","exports"]],[[["identity","true"],["ErrorDebuglog","$module build exception: ","exception"],["returner"],["throw","exception"]]],"false"]],["car","args"],["second","args"],["third","args"],["cdddr","args"]]]],["set.","modules",["`","changeModNS"],["function","changeModNS",["name","create","false","modobj"],["=","name",["tostring","name"]],[[["||",["not","name"],["==","name","$"]],["printline","$modules: ",["keys",[".","modules","list"]]],["return","false"]]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"name"]]]],[[["not","modobj"],[["identity","create"],["build","name"],["return",["changeModNS","name"]]],["printline","$can't find ","name","$ -- please select from ",["keys",[".","modules","list"]]],["return","false"]]],[".","modobj","activate","false"],[".","modobj","id"]]],["set.","modules",["`","makeModule"],["function","makeModule",["name","exns","false","modobj"],["=","modobj",["Module","modules","name","exns"]],["set[",[".","modules","list"],"name","modobj"],"modobj"]],["set.","modules",["`","destroy"],["function","destroy",["modobj"],["set[",[".","modules","list"],[".","modobj","id"],"undefined"],["delete",[".","modobj","namespace"]],"true"]],"modules"]),e._SetBindingList("modEncodeQuery",["function","modEncodeQuery",["query","false","result","qkeys","item"],[[["not",["dictionary","query"]],["return","query"]]],["=","result",{array:[]}],["=","qkeys",["keys","query"]],["loop","false",[["empty","qkeys"]],["=","item",["pop","qkeys"]],[".","result","push",[[".",[".",[".","js","w"],"encodeURIComponent",["item"]],"concat",["$=",[".",[".","js","w"],"encodeURIComponent",[["deref","query","item"]]]]]]]],["=","result",[".","result","join",["$&"]]],[[">",[".","result","length"],0],[".","$?","concat",["result"]]],"result"]),e._SetBindingList("modAwait",["closure","modAwait",["promise","false","pending"],["=","pending",["new","nonce"]],[".","promise","then",[["function","success",["value"],[".","pending","signal",[["list","false","value"]]]],["function","failure",["error"],[".","pending","signal",[["list","error"]]]]]],[".","pending","wait","false"]]),e._SetBindingList("modWebReadFile",["closure","modWebReadFile",["filename","href","query","false","url","error","response","content"],[[["not","href"],["=","url","filename"]],[[["not",[".","href","endsWith",["$/"]]],["=","href",[".","href","concat",["$/"]]]]],[[[".","filename","startsWith",["$/"]],["=","filename",[".","filename","slice",[1]]]]],["=","url",[".","href","concat",["filename",["modEncodeQuery","query"]]]]],["=",["error","response"],["modAwait",[".",[".","js","w"],"fetch",["url",{dictionary:{$mode:"$cors",$cache:"$no-cache",$credentials:"$same-origin",$headers:{dictionary:{}},$redirect:"$follow",$referrerPolicy:"$no-referrer"}}]]]],[[["!=",[".","response","status"],200],["=","error",["Error","$modWebReadFile failed:","url",[".","response","status"]]]],[["not","error"],["=",["error","content"],["modAwait",[".","response","text","false"]]]]],[["identity","error"],["list","error"]],["list","false","content"]]),e._SetBindingList("modWebParseFile",["closure","modWebParseFile",["filename","href","query","false","error","text"],["=",["error","text"],["modWebReadFile","filename","href","query"]],[["identity","error"],["ErrorDebuglog","error"]],[["&&",[">",["length","text"],0],["rdsDriver","text","filename"]],"filename"]]),e._SetBindingList("modNodeReadFile",["closure","modNodeReadFile",["filename","false","fs","locpath","error","error2","text"],["function","readFileSync",["path","false","pending"],["=","pending",["new","nonce"]],[".","fs","readFile",["path",{dictionary:{$encoding:"$utf8"}},["function","lambda",["error","data"],[[["identity","error"],["=","error",["Error","$modNodeReadFile failed:","path","error"]]]],[".","pending","signal",[["list","error","data"]]]]]],[".","pending","wait","false"]],["=","fs",[".","js","r",["$fs"]]],["=","locpath",[".","JSpath","resolve",[[".","js","d"],"filename"]]],["=",["error","text"],["readFileSync","locpath"]],[[["identity","error"],["=","locpath",[".","JSpath","resolve",[[".","js","d"],"$../","filename"]]],["=",["error2","text"],["readFileSync","locpath"]],[["not","error2"],["=","error","false"]]]],["list","error","text"]]),e._SetBindingList("modNodeParseFile",["closure","modNodeParseFile",["filename","false","error","text"],["=",["error","text"],["modNodeReadFile","filename"]],[["identity","error"],["ErrorDebuglog","error"]],[["&&",[">",["length","text"],0],["rdsDriver","text","filename"]],"filename"]]),e._SetBindingList("modDriver",["closure","modDriver",["text","sourcename","false","package","dialob","errors","source","error","expr"],[[[".","text","startsWith",['$[["NaanPackage"']],["catch",[[[".",[".","js","w"],"JSON"],["=","package",[".",[".",[".","js","w"],"JSON"],"parse",["text"]]]],["=","package",[".",[".",[".","js","g"],"JSON"],"parse",["text"]]]],[[["identity","true"],["ErrorDebuglog","$require(","sourcename","$) package failed: ","exception"],["throw","exception"]]],"false"],[[["identity","package"],["pkgLoad","package"]],["printline","$require(","sourcename","$): package load failed"],"false"],["return"]]],["=","text",[".","text","replace",[["RegExp","$[\\r\\n^]+/(dialect)\\s+(\\w+)(?=[\\r\\n$])","$g"],["function","lambda",["match","cmd","arg","offset","str"],[[["==","cmd","$dialect"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",["arg"]]],[["not","dialob"],["debuglog",[".","$require(","concat",["sourcename","$): dialect ","arg","$ not found"]]]]],["debuglog",[".","$require(","concat",["sourcename","$): /","cmd","$ not understood"]]]],[".","$\n","repeat",[["-",[".",[".","match","split",["$\n"]],"length"],1]]]]]]],[[["not","dialob"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],[["not","dialob"],["throw","$dialect support not available"]]]],["catch",[["=","errors",{array:[]}],["=","source",["new","textstream",[".","text","concat",["$\\r"]]]],["loop","false",["=",["error","expr"],[".","dialob","parse",["source"]]],[[["identity","expr"],["\\$",["evalactive","expr"]]],["=","errors",[".","errors","concat",["error"]]]]]],[[["and",["==",["tostring",["car","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]]],[["identity","true"],["ErrorDebugLog","$require(","sourcename","$) failed: ","exception"],["throw","exception"]]],"false"],[["==",[".","errors","length"],0],"true"],["printline","$Errors from require(","sourcename","$):"],["=","errors",[".","errors","reverse","false"]],["loop","false",[["==",[".","errors","length"],0]],["printline",[".","dialob","parseErrorString",[[".","errors","pop","false"]]]]],"false"]),e._SetBindingList("letlocal",["macro","letlocal","names",["call",["function","lambda",["false","localname","curac","syms"],["=","curac",["nsactive"]],["nsactive",["list",["car","curac"]]],["loop","false",[["atom","names"]],["=","localname",["pop","names"]],["=","syms",["cons",["compress","localname"],"syms"]]],["nsactive","curac"],["reverse","syms"]]]]),e._SetBindingList("letimport",["function","letimport","names",["call",["function","lambda",["false","item","count"],["function","import1",["source","localname","false","curac","sym"],[["not","source"],["debuglog","$letimport: source undefined:","source"]],[["not",["deref",[".",[".",["nsactive","true"],1],"index"],"localname"]],["=","curac",["nsactive"]],["nsactive",["list",["car","curac"]]],["=","sym",["compress","localname"]],["nsactive","curac"],[[["getproc","source"],["copyproc","sym","source"]],[["||",["procedure","source"],["xobject","source"]],["assign","sym","source"]],["debuglog","$letimport: no procedure binding:","source"],["return"]],["=","count",["+","count",1]]]],["function","importCat",["category","false","item","exlist","source"],[["not",["dictionary","category"]],["debuglog","$letimport: invalid category:","category"]],["=","exlist",["keys","category"]],["loop","false",[["empty","exlist"]],["=","item",["pop","exlist"]],["=","source",["xget","category","item"]],[[["||",["symbol","source"],["tuple","source"],["xobject","source"]],["import1","source",["tostring",["unintern","item"]]]],[["dictionary","source"],["importCat","source"]],["debuglog","$letimport: invalid category entry:",["keys","category"],"item"]]]],["=","count",0],["loop","false",[["empty","names"]],["=","item",["pop","names"]],[[["not",["atom","item"]],[["and",["==",["length","item"],2],["atom",["car","item"]],["string",["second","item"]]],["import1",["car","item"],["second","item"]]],["debuglog","$letimport: invalid pair:","item"],"false"],[["getproc","item"],["import1","item",["tostring",["unintern","item"]]]],[["dictionary","item"],["importCat","item"]],["debuglog","$letimport: invalid source:","item"]]],"count"]]]),e._SetBindingList("makeExport",["function","makeExport",["syms","false","result","sym"],["=","result",["new","dictionary"]],["loop","false",[["empty","syms"]],["=","sym",["pop","syms"]],["xset","result","sym","sym"]],"result"]),e._SetBindingList("makeReturner",["closure","makeReturner",["nslist","false","checkns","targns"],["=","checkns",["nsrights"]],[[["not","nslist"],["=","nslist",["nsactive"]]]],["=","targns",["car","nslist"]],["enclose",["function","lambda","false",[["eq","checkns",["nscaller"]],["nsactive","nslist"]]],"targns"]]),e._SetBindingList("loadNotify",["function","loadNotify",["recipient"],[[["not",["member","recipient","notifyList"]],["push","recipient","notifyList"]]],"true"]),e._SetBindingList("loadTrap",["function","loadTrap",["false","trav","tell"],["=","tell",[".","notifyList","reverse"]],["while","false",[["not",["tuple","tell"]]],["=","trav",["pop","tell"]],["call","trav"]]]),e._SetBindingList("saveNotify",["function","saveNotify",["recipient"],[[["not",["member","recipient","saveNotifyList"]],["push","recipient","saveNotifyList"]]],"true"]),e._SetBindingList("SaveTrap",["function","SaveTrap",["false","trav","tell"],["=","tell",[".","saveNotifyList","reverse"]],["while","false",[["not",["tuple","tell"]]],["=","trav",["pop","tell"]],["call","trav"]]]),e._SetBindingList("jsReload",["function","jsReload",["false","wsg"],["=","wsg",["||",[".","js","w"],[".","js","s"],[".","js","g"]]],["=","JSpath",[".","js","r",["$path"]]],["=","JSONstringify",[".",[".","wsg","JSON"],"stringify"]],["=","JSONparse",[".",[".","wsg","JSON"],"parse"]]]),e._SetValue("NaanBuildComponent",{dictionary:{$filename:"$Module.nlg",$name:"$Module",$manifest:["Component","Module","Modules","modEncodeQuery","modAwait","modWebReadFile","modWebParseFile","modNodeReadFile","modNodeParseFile","modDriver","letlocal","letimport","makeExport","makeReturner","loadNotify","loadTrap","saveNotify","SaveTrap","jsReload","NaanBuildComponent","ModuleInit"]}}),e._SetBindingList("ModuleInit",["closure","ModuleInit",["false","modules","naanMod","utilMod"],["function","findNS",["nsid","false","allns","nsns"],["=","allns",["nsactive","true"]],["loop","false",[["empty","allns"]],["=","nsns",["pop","allns"]],[["==",["namespace","nsns"],"nsid"],"nsns"]]],["function","modlist","false",[".","modules","list"]],["jsReload"],["loadNotify","jsReload"],["=","modules",["Modules"]],["=","naanMod",[".","modules","makeModule",["$Naan","false",["findNS","$NaanRoot"]]]],["=","utilMod",[".","modules","makeModule",["$Util","naanMod",["nsrights"]]]],["set.",[".","utilMod","components"],["`","Module"],["Component","utilMod",[".","NaanBuildComponent","name"]]],["set.",[".",[".","utilMod","components"],"Module"],["`","loaded"],"true"],["set.",[".",[".","utilMod","components"],"Module"],["`","manifest"],[".","NaanBuildComponent","manifest"]],["set.",[".","Naan","module"],["`","require"],[".",[".","modules","require"],1]],["set.",[".","Naan","module"],["`","defineLoc"],[".",[".","modules","defineLoc"],1]],["set.",[".","Naan","module"],["`","defineExt"],[".",[".","modules","defineExt"],1]],["set.",[".","Naan","module"],["`","requireQuery"],[".",[".","modules","requireQuery"],1]],["set.",[".","Naan","module"],["`","build"],[".",[".","modules","build"],1]],["set.",[".","Naan","module"],["`","letinherit"],[".",[".","modules","letinherit"],1]],["set.",[".","Naan","module"],["`","chns"],[".",[".","modules","changeModNS"],1]],["set.",[".","Naan","module"],["`","letimport"],"letimport"],["set.",[".","Naan","module"],["`","export"],"makeExport"],["set.",[".","Naan","module"],["`","letlocal"],"letlocal"],["set.",[".","Naan","module"],["`","modlist"],"modlist"],["set.",[".","Naan","module"],["`","nodeparse"],"modNodeParseFile"],["set.",[".","Naan","module"],["`","webparse"],"modWebParseFile"],["=","LoadTrap","loadTrap"],["set.",[".","Naan","module"],["`","LoadNotify"],"loadNotify"],["set.",[".","Naan","module"],["`","SaveNotify"],"saveNotify"],["xlock",[".","Naan","module"],["car",["nsactive"]]],["sudo",["putproc","rdsDriver",["enclose",["getproc","modDriver"],["car",["nsactive","true"]]]]],"true"]),e._Execute(["ModuleInit"]),e._AddPropertyList("bt",[["$lingoDriver","bt"],["$escape","bt"],["$debugger","bt"],["$debugexception","bt"],["$driver","bt"],["$evalactive","break"]]),e._SetBindingList("debugCon",["closure","debugCon",["false","debug","nslist","defCommander"],["=","debug",["new","object","this"]],["=","nslist",["nsactive","true"]],["set.","debug",["`","nshidden"],["list",[".","nslist",0],[".","nslist",1],[".",[".",[".",[".","module","owner"],"list"],"Lib"],"namespace"]]],["set.","debug",["`","breakpoints"],{dictionary:{}}],["set.","debug",["`","bpenable"],"true"],["function","dsave",["false","saveob"],["=","saveob",{dictionary:{}}],["set.","saveob",["`","curns"],["nsactive"]],[[["not",["positive","debugDepth"]],["=","debugDepth",1]],["preadjust","debugDepth","+",1]],"saveob"],["function","drestore",["saveob"],["preadjust","debugDepth","-",1],["nsactive",[".","saveob","curns"]],"saveob"],["function","insertns",["curns"],[["not",["rest","curns"]],["cons",["nsrights"],"curns"]],["cons",["first","curns"],["insertns",["rest","curns"]]]],["function","clearframes","false",["set.","debug",["`","entrystack"],"false"],["set.","debug",["`","frames"],{array:[]}]],["function","storeframes",["all","false","procount","framex","framelist","frame","status"],["function","evaluate",["expr"],["eval","expr"]],[["not",[".","debug","entrystack"]],["=","procount",0],["set.","debug",["`","entrystack"],["stacktrace"]],[[["identity","all"],["=","framex",1]],["=","framex",["stepframe",[".","debug","entrystack"]]]],["set.","debug",["`","frames"],{array:[]}],["=","framelist",["deref",[".","debug","entrystack"],["-",["-","framex"],1]]],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["procedure","frame"],[[["not","all"],["=","status",["get","bt",["procname",[".",[".","frame",3],1]]]],[[["eq","status","bt"],["continue"]]],[["&&",[">","procount",0],["eq","status",["`","break"]]],["break"]]]],["preadjust","procount","+",1]]],[".",[".","debug","frames"],"push",["frame"]]],[["==","procount",0],[".",[".","debug","frames"],"push",[["list",["`","function"],"evaluate",[".",[".","evaluate","proc"],-3],[".","evaluate","proc"]]]]]]],["function","stepframe",["stack","false","framex","framelist","frame","found","debugout"],["=","framex",0],["=","framelist","stack"],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["&&","debugout",["==",[".","frame",0],"interrupt"]],[["||",["==",[".","frame",2],"$steptrap"],["==",[".","frame",2],"$breakpoint"]],["=","found","framex"],["break"]],[["&&",["not",["eq","exception",["`","exception"]]],["==",[".","frame",2],"$exception-hook"]],["=","found",["+","framex",1]],["break"]]],[["&&",["member",[".","frame",0],["`",["function","closure"]]],["member",[".","frame",1],["`",["debugBlock","startException","startEscape","start"]]]],["=","debugout","true"],["=","found","framex"]],[["&&",["==",[".","frame",0],["`","function"]],["==",[".","frame",1],["`","debugger"]]],["=","found","framex"],["break"]]],["preadjust","framex","+",1]],"found"],["function","procframe",["stack","startx","false","frame"],["loop","false",["=","frame",["deref","stack","startx"]],[[["not","frame"],["return","false"]]],[["procedure","frame"]],["preadjust","startx","+",1]],"startx"],["function","intrap",["false","framelist","frame"],["=","framelist",["stacktrace"]],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["==",[".","frame",0],"interrupt"],[["||",["==",[".","frame",2],"$steptrap"],["==",[".","frame",2],"$breakpoint"]],["return",[".","frame",2]]]]]],"false"],["function","steppedover",["dict","false","stack","curframe","origframe","procdex"],["=","curframe",["stepframe",["=","stack",["stacktrace"]]]],["=","origframe",["-",["length","stack"],[".","debug","nextOffset"]]],["=","procdex",["procframe","stack","curframe"]],["set.","debug",["`","nextOffset"],"false"],[[["||",["not","procdex"],[">","procdex","origframe"]],["return","false"]]],[[["==","procdex",["procframe","stack",["+","origframe",1]]],["return","false"]]],[[["stacktrap",["+","procdex",1],0,"debugBlock"],["return"]]],"false"],["function","brokeover",["dict","false","resume"],["=","resume",[".",[".","debug","breakHitDict"],"resume"]],["set.",[".","debug","breakHitDict"],["`","resume"],"undefined"],["set.",[".","debug","breakHitDict"],["`","enable"],"true"],["set.","debug",["`","breakHitDict"],"false"],"resume"],["function","checkReady","false",["!=",[".",[".",[".","js","t"],"termlist"],"length"],0]],["set.","debug",["`","depth"],["function","depth","false","debugDepth"]],["set.","debug",["`","procname"],["function","procname",["name","false","parent"],["=","parent",["deref",["@","name"],["`","\\.parent"]]],["=","name",["tostring","name"]],[["identity","parent"],[".",["procname","parent"],"concat",["$.","name"]]],"name"]],["set.","debug",["`","insideProc"],["function","insideProc",["false","frames","frame"],["=","frames",["new",[".","debug","frames"]]],["loop","false",[["==",[".","frames","length"],0]],["=","frame",[".","frames","shift","false"]],[[["procedure","frame"],["return",[".","frame",3]]]]],"false"]],["set.","debug",["`","frameProcTask"],["function","frameProcTask",["frame","false","frames","ftrav","procdef","bodydef"],[[["not",["array",[".","debug","frames"]]],["return","false"]]],["=","frames",["new",[".","debug","frames"]]],["loop","false",[["==",[".","frames","length"],0]],["=","ftrav",[".","frames","shift","false"]],[[["eq","ftrav","frame"],["=","frame","false"]]],[[["procedure","ftrav"],[[["not","frame"],["=","procdef",[".","ftrav",3]],[[["not","bodydef"],["=","bodydef","procdef"]]],["break"]]],["=","bodydef","false"]],[["||",["==",[".","ftrav",0],["`","body"]],["==",[".","ftrav",0],["`","loop"]]],[["not","bodydef"],["=","bodydef",[".","ftrav",2]]]]]],[["identity","procdef"],["list","procdef","bodydef"]]]],["set.","debug",["`","debugBlock"],["closure","debugBlock",["arg1","arg2","arg3","false","saveob","savech","savecmd","entry"],[[[">=","debugDepth",1],["set.","debug",["`","entrystack"],"false"],["storeframes","true"]],["storeframes"]],["=","saveob",["dsave"]],["=","savech",["textstreams"]],["nsactive",["insertns",[".","saveob","curns"]]],["=","savecmd",{dictionary:{}}],[".",[".","debug","commander"],"entering",["savecmd"]],["catch",[[[["string","arg1"],["=","entry","arg1"]],["=","entry",["intrap"]],[["==","entry","$steptrap"],[[[".","debug","breakHitDict"],[["brokeover","arg1"],["return"]]]],[[".","debug","nextOffset"],[["steppedover","arg1"],["return"]]],[[".","debug","startPause"],["set.","debug",["`","startPause"],"false"],["=","entry","$startpause"]]],[["==","entry","$breakpoint"],[[["not",[".","debug","bpenable"]],["return"]]],["set.","debug",["`","breakHitDict"],"arg1"]],[["not","entry"],["=","entry","$"]]],["set.","debug",["`","nextOffset"],"false"],["loop","false",[[".",[".","debug","commander"],"pauser",["entry","arg1","arg2","arg3"]]]]],"false",[[".",[".","debug","commander"],"leaving",["savecmd"]],["textstreams","savech"],["drestore","saveob"],[[[".","debug","bpenable"],["breakpoint","true"]]],["clearframes"]]]]],["function","skipbreak","false",["set.",[".","debug","breakHitDict"],["`","enable"],"false"]],["set.","debug",["`","resume"],["function","resume","false",[[".",[".","debug","breakHitDict"],"enable"],["set.",[".","debug","breakHitDict"],["`","resume"],"true"],["skipbreak"],["stacktrap",["stepframe",["stacktrace"]],1,"debugBlock"]]]],["set.","debug",["`","step"],["function","step",["nstep","false","stack","stackdex","task"],["=","stackdex",["stepframe",["=","stack",["stacktrace"]]]],["=","task",[".",[".",["deref","stack","stackdex"],3],2]],[[["&&",["symbol",[".","task",0]],["member",[".",[".",[".",[".","task",0],"proc"],1],"namespace"],[".","debug","nshidden"]]],["return",["stepover"]]]],["set.","debug",["`","nextOffset"],"false"],["skipbreak"],["stacktrap",["stepframe",["stacktrace"]],"nstep","debugBlock"]]],["set.","debug",["`","stepup"],["function","stepup",["false","stack","stackdex","found"],["set.","debug",["`","nextOffset"],"false"],["skipbreak"],["=","stackdex",["stepframe",["=","stack",["stacktrace"]]]],["loop","false",[[[">=","stackdex",["length","stack"]],["return"]]],[[["procedure",["deref","stack","stackdex"]],[[["get","bt",["procname",[".",[".",["deref","stack","stackdex"],3],1]]],["return"]]],[[["identity","found"],["break"]]],["=","found","stackdex"]]],[[["eq",["deref","stack",0],["`","loop"]],["=","found","stackdex"]]],["preadjust","stackdex","+",1]],["stacktrap","found",0,"debugBlock"]]],["set.","debug",["`","stepover"],["function","stepover",["false","stack","curframe"],["skipbreak"],["=","curframe",["stepframe",["=","stack",["stacktrace"]]]],["set.","debug",["`","nextOffset"],["-",["length","stack"],"curframe"]],[[["stacktrap","curframe",1,"debugBlock"],["return","true"]]],["set.","debug",["`","nextOffset"],"false"]]],["set.","debug",["`","quit"],["function","quit","false",["sudo",["=","exception",["`","exception"]]],["throw","debugger"]]],["set.","debug",["`","startEscape"],["function","startEscape","false",[[["not",["checkReady"]],["debuglog","$debug.startEscape: can't enter debugger before terminal is ready"],["return"]]],["storeframes"],["debugBlock","$escape"]]],["set.","debug",["`","startException"],["function","startException",["except"],[[["not",["checkReady"]],[[["ErrorObject","except"],["=","except",["ErrorString","except"]]]],["debuglog","$debug.startException: debugger not ready for","except"],["return"]]],["storeframes"],["set.","debug",["`","startExcept"],"except"],["debugBlock","$exception","except"]]],["set.","debug",["`","start"],["function","start",["pause"],[[["not",["checkReady"]],["debuglog","$debug.start: can't enter debugger before terminal is ready"],["return"]]],["storeframes"],[["identity","pause"],["set.","debug",["`","startPause"],"true"],[[["stacktrap",["stepframe",["stacktrace"]],0,"debugBlock"],["return"]]],["debugBlock","$startfail"]],["debugBlock","$"]]],["set.","debug",["`","setDefCommander"],["function","setDefCommander",["commander"],["=","defCommander","commander"],[["not",[".","debug","commander"]],["set.","debug",["`","commander"],"defCommander"]]]],["set.","debug",["`","setCommander"],["function","setCommander",["commander"],[["not","commander"],["set.","debug",["`","commander"],"defCommander"]],[".",[".","debug","commander"],"endPauser","false"],["set.","debug",["`","commander"],"commander"]]],["set.","debug",["`","breakHit"],["function","breakHit",["where","value","false","keylist","bpid","entry","result"],["=","keylist",["keys",[".","debug","breakpoints"]]],["loop","false",["=","bpid","false"],[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],[["eq",[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"],[".","where","task"]]]],[[["not",["deref",[".","debug","breakpoints"],"bpid"]],["breakpoint",[".","where","task"],"undefined"],[".","debug","resume","false"],["return","false"]]],["=","entry",["deref",[".","debug","breakpoints"],"bpid"]],["preadjust",[".","entry","hitcount"],"+",1],[[[".","entry","conditional"],[[["procedure",[".","entry","conditional"]],["=","result",["call",[".","entry","conditional"],[".","entry","hitcount"],[".","entry","value"]]]],["=","result",["eval",[".","entry","conditional"]]]],[["not","result"],[".","debug","resume","false"],["return","false"]]]],"bpid"]],["function","breakTasks",["procdef","task","false","taskpath","above","below","pardef","procs","tasks"],["=","taskpath",["tuplepath","procdef","task"]],["=","above",["new","array","taskpath"]],["loop","false",["=","pardef",["apply",["`","."],["list","procdef",["totuple","above"]]]],[[["member",[".","pardef",0],["`",["closure","macro"]]],["=","procs",["instances",[".","pardef",1]]],[[["not","procs"],["return","task"]]],["=","tasks",{array:[]}],["while","false",[["not",["tuple","procs"]]],["=","task",["apply",["`","."],["list",[".",["pop","procs"],"proc"],"below"]]],[[["identity","task"],[".","tasks","push",["task"]]]]],["return","tasks"]]],[["==",[".","above","length"],0]],["push",[".","above","pop","false"],"below"]],"task"],["set.","debug",["`","breakAdd"],["function","breakAdd",["procdef","task","expr","false","firstid","keylist","bpid","tasks","bpdict"],["=","firstid",0],["=","keylist",["keys",[".","debug","breakpoints"]]],["loop","false",[["not",["member",["tostring",["preadjust","firstid","+",1]],"keylist"]]]],["loop","false",[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],["=","bpdict",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"]],[[["eq",[".","bpdict","task"],"task"],["set.","bpdict",["`","conditional"],"expr"],["set.","pbdict",["`","hitcount"],0],["return","bpid"]]]],["=","tasks",["breakTasks","procdef","task"]],["=","bpdict",["breakpoint","tasks",[".","debug","debugBlock"]]],["set.","bpdict",["`","task"],"task"],[[["not","bpdict"],["return","false"]]],["set.","bpdict",["`","breakID"],"firstid"],["set[",[".","debug","breakpoints"],"firstid",{dictionary:{$procdef:"procdef",$where:"bpdict",$hitcount:0,$conditional:"expr"}}],"firstid"]],["set.","debug",["`","breakClear"],["function","breakClear",["procdef","task","false","keylist","tasks","bpid"],["=","keylist",["keys",[".","debug","breakpoints"]]],["=","tasks",["breakTasks","procdef","task"]],["loop","false",[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],[[[">=",[".","tasks","indexOf",[[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"]]],0],["breakpoint","tasks","undefined"],["set[",[".","debug","breakpoints"],"bpid","undefined"],["return","true"]]]],"false"]],["set.","debug",["`","breakDelete"],["function","breakDelete",["bpid","false","tasks"],[[["not",["deref",[".","debug","breakpoints"],"bpid"]],["return","false"]]],["=","tasks",["breakTasks",[".",["deref",[".","debug","breakpoints"],"bpid"],"procdef"],[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"]]],["breakpoint","tasks","undefined"],["set[",[".","debug","breakpoints"],"bpid","undefined"],"true"]],["set.","debug",["`","breakAble"],["function","breakAble",["bpid","enabled","false","bpdict"],["=","bpdict",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"]],[["identity","enable"],["set.","bpdict",["`","enable"],"true"]],["set.","bpdict",["`","enable"],"false"]]],["set.","debug",["`","breakGlobalAble"],["function","breakGlobalAble",["enable"],[[["identity","enable"],["set.","debug",["`","bpenable"],"true"]],["set.","debug",["`","bpenable"],"false"]],["breakpoint",[".","debug","bpenable"]]]],"debug"]),e._SetBindingList("debugger",["function","debugger",["pause"],[".",["DebugController"],"start",["pause"]]]),e._SetBindingList("debugescape",["function","debugescape","false",[".",["DebugController"],"startEscape","false"]]),e._SetBindingList("debugexception",["function","debugexception","false",[[["and",["==",["tostring",["first","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]],["return"]]],[[["==",["tostring","exception"],"$driver"],["return"]]],[[["==",["tostring","exception"],"$debugger"],["return"]]],[[["==",["tostring","exception"],"$DebuggerREPL"],["return"]]],[".",["DebugController"],"startException",["exception"]]]),e._SetBindingList("DebugController",["function","DebugController","false",[[["eq","ndbController",["`","ndbController"]],["=","ndbController",["debugCon"]]]],"ndbController"]),e._AddPropertyList("DebugInit",[["$.lingoInit","true"]]),e._SetBindingList("DebugInit",["function","DebugInit",["false","manifest"],["=","manifest",["`",["bt","debugCon","debugger","debugescape","debugexception","DebugController","DebugInit"]]],[".",[".","Naan","module"],"build",["$Util","$Debug",["function","lambda",["modobj","compobj"],["=","ndbController",["`","ndbController"]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DebugController"],"DebugController"],["set.",[".","modobj","exports"],["`","debugger"],"debugger"],[["symbol","NideBuild"],["sudo",["moveproc","debugescape",["`","escape"]]],["sudo",["moveproc","debugexception",["`","exception"]]],["sudo",["set.",[".","Naan","debug"],["`","debugger"],"debugger"]]]]]]]),e._Execute(["DebugInit"]),e._SetBindingList("NaanError",["closure","NaanError",["false","nerr"],["=","nerr",["new","object","this"]],["set.","nerr",["`","errorID"],"$Naan Error"],["set.","nerr",["`","debug"],"false"],["function","procname",["name","defns","false","parent","strname"],["=","parent",["deref",["@","name"],["`","\\.parent"]]],[[["lambda","name"],["=","strname","$()"]],["=","strname",[".","name","tostring","false"]]],[["identity","parent"],[".",["procname","parent","defns"],"concat",["$.","strname"]]],[["!=",[".","name","namespace"],"defns"],[".",[".",[".","name","namespace"],"tostring"],"concat",["$::","strname"]]],"strname"],["function","trace",["exclude","defns","false","stack","frame","output"],["=","stack",["stacktrace"]],["=","output",{array:[]}],["loop","false",[["atom","stack"]],["=","frame",["pop","stack"]],[[["procedure","frame"],[["<=",["postadjust","exclude","-",1],0],[".","output","push",[["procname",[".",[".","frame",3],1],"defns"]]]]],[["==",[".","frame",0],["`","interrupt"]],[".","output","push",["$[interrupt]"]],["break"]]]],[".",[".","output","reverse","false"],"join",["$ / "]]],["set.","nerr",["`","createError"],["function","createError",["parts","ns","false","nanerr","part","lastparts","badarray"],["function","addToHistory",["item","false","hist","keylist","key","history"],[[["||",["not",[".","nanerr","history"]],["not",["array",[".","nanerr","history"]]]],["set.","nanerr",["`","history"],{array:[]}]]],["=","hist",{dictionary:{}}],["=","keylist",["keys","item"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["==","key","$history"],["=","history",[".","item","history"]]],[["!=","key","$error"],["set[","hist","key",["deref","item","key"]]]]],[".",[".","nanerr","history"],"push",["hist"]],[".","history","forEach",[["function","lambda",["old"],["addToHistory","old"]]]]],["function","addErrorList",["errs","false","err","etrim","keylist","key"],["loop","false",[["atom","errs"]],["=","err",["pop","errs"]],[[["==",[".","err","error"],[".","nerr","errorID"]],["=","etrim",{dictionary:{}}],["=","keylist",["keys","err"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["&&",["!=","key","$error"],["||",["!=","key","$stack"],["!=",["deref","err","key"],[".","nanerr","stack"]]],["||",["!=","key","$module"],["!=",["deref","err","key"],[".","nanerr","module"]]]],["set[","etrim","key",["deref","err","key"]]]]],[[["||",["not",[".","nanerr","errors"]],["not",["array",[".","nanerr","errors"]]]],["set.","nanerr",["`","errors"],{array:[]}]]],[".",[".","nanerr","errors"],"push",["etrim"]]],["=","badarray","true"]]]],["function","addDictionary",["dict","false","keylist","key"],["=","keylist",["keys","dict"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],["set[","nanerr","key",["deref","dict","key"]]]],["function","addJSerror",["item","false","keylist","key","dkey"],["=","keylist",["keys","item"]],[[["not","keylist"],["=","keylist",["`",["$name","$message"]]]]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["xobject",["deref","item","key"]],["continue"]]],[[["deref","nanerr","key"],["=","dkey",[".","$_","concat",["key"]]]],["=","dkey","key"]],[[["&&",["deref","item","key"],["not",["deref","nanerr","dkey"]]],["set[","nanerr","dkey",["deref","item","key"]]]]]],["=","nanerr",{dictionary:{$error:[".","nerr","errorID"],$occurred:[".","Date","now","false"]}}],["loop","false",[["atom","parts"]],["=","part",["pop","parts"]],[[["xobject","part"],["addJSerror","part"]],[["dictionary","part"],[["==",[".","part","error"],[".","nerr","errorID"]],["addToHistory","part"]],["addDictionary","part"]],[["array","part"],["push","part","lastparts"]],[[".","nanerr","memo"],["set.","nanerr",["`","memo"],[".",[".","nanerr","memo"],"concat",["$ ",["tostring","part"]]]]],["set.","nanerr",["`","memo"],["tostring","part"]]]],["set.","nanerr",["`","stack"],["trace",3,"ns"]],["set.","nanerr",["`","module"],[".",["car",["exists","$module","ns"]],"id"]],["loop","false",[["atom","lastparts"]],["addErrorList",["pop","lastparts"]]],[[["not",[".","nanerr","memo"]],["debuglog","$NaanError.createError: no error memo at",[".","nanerr","stack"]]]],[[["identity","badarray"],["debuglog","$NaanError.createError: ignoring array argument"]]],[[[".","nerr","debug"],["call",["function","ErrorDebuglog","args",[".","nerr","debugError",["args"]]],"$new","nanerr"]]],"nanerr"]],["set.","nerr",["`","toString"],["function","toString",["nanerr","options","false","output","keylist","key","history"],["=","output","$"],["=","keylist",["keys","nanerr"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["==","key","$error"]],[["==","key","$occurred"]],[["==","key","$memo"]],[["==","key","$stack"]],[["==","key","$module"]],[["==","key","$history"],["=","history",[".","nanerr","history"]]],[[["!=","output","$"],["=","output",[".","output","concat",["$, "]]]]],["=","output",[".","output","concat",["key","$=",["tostring",["deref","nanerr","key"]]]]]]],[[["identity","history"],[[["!=","output","$"],["=","output",[".","output","concat",["$, "]]]]],["=","output",[".","output","concat",["$«"]]],[".",[".","nanerr","history"],"forEach",[["function","lambda",["item","index"],[[["!=","index",0],["=","output",[".","output","concat",["$ | "]]]]],["=","output",[".","output","concat",[["toString","item",{dictionary:{$memo:"true"}}]]]]]]],["=","output",[".","output","concat",["$»"]]]]],[["&&",[".","options","memo"],[".","nanerr","memo"]],[".",[".","nanerr","memo"],"concat",["$ ","output"]]],"output"]],["set.","nerr",["`","toDescription"],["function","toDescription",["nanerr"],[["!=",[".","nanerr","error"],[".","nerr","errorID"]],["tostring","nanerr"]],[[".","nanerr","memo"],["toString","nanerr",{dictionary:{$memo:"true"}}]],[".","$Error ","concat",[["toString","nanerr"]]]]],["set.","nerr",["`","debugError"],["function","debugError",["args","false","arg","text","nanerr","nanerrs"],["loop","false",[["atom","args"]],["=","arg",["pop","args"]],[[["&&",["dictionary","arg"],["==",[".","arg","error"],[".","nerr","errorID"]]],["=","nanerr","arg"]],[["array","arg"],["=","nanerrs","arg"]],["push","arg","text"]]],["=","text",["reverse","text"]],[[["identity","nanerr"],[[["identity","text"],["=","text",["append","text","$=>"]]],["=","text","$"]],["=","text",["append","text",[".","nerr","toDescription",["nanerr"]]]]],[["&&",["not","text"],"nanerrs"],["=","text",[".",[".",[".","nanerrs","length"],"tostring"],"concat",["$ errors:"]]]]],["apply","debuglog","text"],["loop","false",[["||",["not","nanerrs"],["==",[".","nanerrs","length"],0]]],["=","nanerr",[".","nanerrs","shift","false"]],["=","text",["append","$ ",[".","nerr","toDescription",["nanerr"]]]],["apply","debuglog","text"]]]],"nerr"]),e._SetBindingList("Error",["function","Error","parts",[".","naneErrorManager","createError",["parts",["nscaller"]]]]),e._SetBindingList("ErrorObject",["function","ErrorObject",["err"],["&&",["dictionary","err"],["==",[".","err","error"],"$Naan Error"]]]),e._SetBindingList("ErrorString",["function","ErrorString",["nanerr"],[["string","nanerr"],"nanerr"],[".","naneErrorManager","toString",["nanerr","true"]]]),e._SetBindingList("ErrorDebuglog",["function","ErrorDebuglog","args",[".","naneErrorManager","debugError",["args"]]]),e._AddPropertyList("ErrorInit",[["$.lingoInit","true"]]),e._SetBindingList("ErrorInit",["function","ErrorInit",["false","manifest"],["=","manifest",["`",["NaanError","Error","ErrorObject","ErrorString","ErrorDebuglog","ErrorInit"]]],[".",[".","Naan","module"],"build",["$Util","$Error",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","Error"],"Error"],["set.",[".","modobj","exports"],["`","ErrorObject"],"ErrorObject"],["set.",[".","modobj","exports"],["`","ErrorString"],"ErrorString"],["set.",[".","modobj","exports"],["`","ErrorDebuglog"],"ErrorDebuglog"],["set.",[".","Naan","module"],["`","Error"],"Error"],["set.",[".","Naan","module"],["`","ErrorObject"],"ErrorObject"],["set.",[".","Naan","module"],["`","ErrorString"],"ErrorString"],["set.",[".","Naan","module"],["`","ErrorDebuglog"],"ErrorDebuglog"]]]],["=","naneErrorManager",["NaanError"]]]),e._Execute(["ErrorInit"]),e._SetBindingList("makeSourceString",["function","makeSourceString",["item","false","text","result"],["=","text",["explode","item"]],["=","result",'$"'],[[["string","item"],["=","result",[".","result","concat",["$$"]]]],[["==",["tostring","item"],"$."]],[["or",["eq",["car","text"],"$$"],["eq",["car","text"],"$."],["eq",["car","text"],"$\\"]],["=","result",[".","result","concat",["$\\\\"]]]]],["loop","false",[["empty","text"]],[[["eq",["car","text"],'$"'],["=","result",[".","result","concat",['$\\"']]]],[["eq",["car","text"],"$\\"],["=","result",[".","result","concat",["$\\\\"]]]],[["eq",["car","text"],"$\t"],["=","result",[".","result","concat",["$\\t"]]]],[["eq",["car","text"],"$\n"],["=","result",[".","result","concat",["$\\n"]]]],[["eq",["car","text"],"$\r"],["=","result",[".","result","concat",["$\\r"]]]],[["eq",["car","text"],"$\b"],["=","result",[".","result","concat",["$\\b"]]]],[["eq",["car","text"],"$\f"],["=","result",[".","result","concat",["$\\f"]]]],[["eq",["car","text"],"$\v"],["=","result",[".","result","concat",["$\\u000b"]]]],[["eq",["car","text"],"$\0"],["=","result",[".","result","concat",["$\\u0000"]]]],["=","result",[".","result","concat",[["car","text"]]]]],["=","text",["cdr","text"]]],[".","result","concat",['$"']]]),e._SetBindingList("pkgSave",["function","pkgSave",["pkgname","roots","options","false","pkgns","goodns","registry","xlate","storenum","wmapSymbol","wmapUnintern","mapString","mapInteger","mapFloat","wmapArray","wmapDictionary","mapList","wmapProcedure","mapDialect","mapBinary","mapXobject","wmapObject","indexValue","listSymbol","listUnintern","listString","listInteger","listFloat","listArray","listDictionary","listList","listProcedure","listDialect","listBinary","listXobject","listObject","reported"],["function","store",["expr","false","key","exlist","dialect"],[["symbol","expr"],[[["&&","expr",["not",["interned","expr"]],["not",["member","expr","roots"]]],[[["deref","wmapUnintern","expr"]],["set[","wmapUnintern","expr",["preadjust","storenum","+",1]],["push","expr","listUnintern"],["set[","indexValue","storenum","expr"],"storenum"],["return"]]],[[["&&","expr",["not",["member",[".","expr","namespace"],"goodns"]]],["=","dialect",[".","registry","findNamespace",[[".","expr","namespace"]]]],[[["identity","dialect"],["=","key",["store",["list",[".","dialect","name"],[".","expr","tostring"]]]],[[["deref","mapDialect","key"]],["set[","mapDialect","key",["preadjust","storenum","+",1]],["push","key","listDialect"],["set[","indexValue","storenum","key"],"storenum"],["return"]]],[["defbinding","expr"],[["not",["eq",["defbinding","expr"],[".","expr","proc"]]],["debuglog","$pkgSave: cannot save non-default binding for well-known symbol ","expr"],["set[","reported","expr","true"]]],[["&&",["not",[".","options","nsignore"]],["not",["deref","reported","expr"]]],["debuglog","$pkgSave: cannot save ",[".","expr","namespace"],"$ from ","pkgns","$ for symbol ","expr"],["set[","reported","expr","true"]]]],[[["eq","expr","undefined"],["=","expr","$undefined"]]],[["deref","wmapSymbol","expr"]],["set[","wmapSymbol","expr",["preadjust","storenum","+",1]],["push","expr","listSymbol"],["set[","indexValue","storenum","expr"],"storenum"],[["string","expr"],[["deref","mapString","expr"]],["set[","mapString","expr",["preadjust","storenum","+",1]],["push","expr","listString"],["set[","indexValue","storenum","expr"],"storenum"],[["integer","expr"],["=","key",["tostring","expr"]],[["deref","mapInteger","key"]],["set[","mapInteger","key",["preadjust","storenum","+",1]],["push","key","listInteger"],[[["<","expr",[".","Number","$MAX_SAFE_INTEGER"]],["set[","indexValue","storenum","expr"]],["set[","indexValue","storenum","key"]],"storenum"],[["float","expr"],["=","key",["tostring","expr"]],[["deref","mapFloat","key"]],["set[","mapFloat","key",["preadjust","storenum","+",1]],["push","key","listFloat"],["set[","indexValue","storenum","expr"],"storenum"],[["array","expr"],[["deref","wmapArray","expr"]],["=","exlist","false"],["=","key",0],["loop","false",[[">=","key",[".","expr","length"]]],["push",["deref","expr",["postadjust","key","+",1]],"exlist"]],["=","key",["store",["reverse","exlist"]]],["set[","wmapArray","expr",["preadjust","storenum","+",1]],["push","expr","listArray"],["set[","indexValue","storenum","key"],"storenum"],[["dictionary","expr"],[["deref","wmapDictionary","expr"]],["=","key",["store",["objToList","expr"]]],["set[","wmapDictionary","expr",["preadjust","storenum","+",1]],["push","expr","listDictionary"],["set[","indexValue","storenum","key"],"storenum"],[["tuple","expr"],[["&&",["procedure","expr"],["eq",[".",[".","expr",1],"proc"],"expr"]],["storeProcedure","expr"]],["storeList","expr"]],[["xobject","expr"],[["IsBinary","expr"],["=","key",["HashMD5","expr"]],[["not","key"],["debuglog",["strcat","$pkgSave: cannot save binary - ","expr"]],1],[["deref","mapBinary","key"]],["set[","mapBinary","key",["preadjust","storenum","+",1]],["push","key","listBinary"],["set[","indexValue","storenum",["EncodeBase64","expr"]],"storenum"],["=",["error","key"],["JsonStringify","expr"]],[["identity","error"],["ErrorDebuglog",["strcat","$pkgSave: cannot save xobject - ","expr"],"error"],1],[["deref","mapXobject","key"]],["set[","mapXobject","key",["preadjust","storenum","+",1]],["push","key","listXobject"],["set[","indexValue","storenum","key"],"storenum"],[["object","expr"],[["deref","wmapObject","expr"]],["=","key",["storeObject","expr"]],["set[","wmapObject","expr",["preadjust","storenum","+",1]],["push","expr","listObject"],["set[","indexValue","storenum","key"],"storenum"],[[["not",["deref","reported","expr"]],["debuglog",["strcat","$pkgSave: cannot save type ",["typeof","expr"],"$ - ","expr"]],["set[","reported","expr","true"]]],1],["function","storeList",["exlist","false","result","left","key"],["=","key",{array:[]}],["=","exlist",["reverse","exlist"]],["loop","false",[["empty","exlist"]],["=","left",["store",["pop","exlist"]]],["push","left","result"],[".","key","push",["left"]]],["=","key",[".","key","join",["$,"]]],[["deref","mapList","key"]],["set[","mapList","key",["preadjust","storenum","+",1]],["push","key","listList"],["set[","indexValue","storenum","result"],"storenum"],["function","storeProcedure",["procdef","false","key"],[[["builtin","procdef"],["return",["store",["tostring","procdef"]]]]],[["deref","wmapProcedure",[".","procdef",1]]],["=","key",["storeList","procdef"]],["set[","wmapProcedure",[".","procdef",1],["preadjust","storenum","+",1]],["push",[".","procdef",1],"listProcedure"],["set[","indexValue","storenum","key"],"storenum"],["function","storeObject",["obj","false","ident"],["=","ident",["call",[".","options","objectEncoder"],"obj"]],[[["not","ident"],["=","ident",{dictionary:{$name:["||",["get","obj","\\.closure"],"undefined"]}}]]],["store","ident"]],["function","objToList",["obj","false","keylist","trav","datlist"],["=","trav",["=","keylist",["xkeys","obj"]]],["loop","false",[["empty","trav"]],["push",["deref","obj",["pop","trav"]],"datlist"]],["list","keylist",["reverse","datlist"]]],["function","saveSymbol",["sym","sites","false","proc","props"],["=","proc",["getproc","sym"]],["=","props",["cdr","sym"]],[[["dictionary","props"],["=","props",["new","props"]],["set.","props",["`","\\.children"],"undefined"],["set.","props",["`","\\.parent"],"undefined"],[[["not",[".","options","comments"]],["set.","props",["`","\\.sourcemap"],"undefined"]],["set.",[".","props","\\.sourcemap"],["`","map"],"undefined"]],[["==",["length","props"],0],["=","props","false"]]]],["list",["store","sym"],["store",["car","sym"]],["store","props"],["storeProcedure","proc"],["store","sites"]]],["function","makeXlate",["false","rdex"],["function","buildXlate",["typeList","typeMap"],["=","typeList",["reverse","typeList"]],["loop","false",[["empty","typeList"]],["set[","xlate",["deref","typeMap",["pop","typeList"]],["postadjust","rdex","+",1]]]],["=","rdex",0],["=","xlate",["new","dictionary"]],["buildXlate","listSymbol","wmapSymbol"],["buildXlate","listUnintern","wmapUnintern"],["buildXlate","listString","mapString"],["buildXlate","listInteger","mapInteger"],["buildXlate","listFloat","mapFloat"],["buildXlate","listArray","wmapArray"],["buildXlate","listDictionary","wmapDictionary"],["buildXlate","listList","mapList"],["buildXlate","listProcedure","wmapProcedure"],["buildXlate","listDialect","mapDialect"],["buildXlate","listBinary","mapBinary"],["buildXlate","listXobject","mapXobject"],["buildXlate","listObject","wmapObject"],"rdex"],["function","renumber",["exlist","false","output"],[["integer","exlist"],["deref","xlate","exlist"]],[["atom","exlist"],"false"],["=","exlist",["reverse","exlist"]],["while","false",[["not",["tuple","exlist"]]],["push",["renumber",["pop","exlist"]],"output"]],"output"],["function","saveMaps",["false","count","maps"],["function","makeAtom",["typeList","typeMap","false","result"],["loop","false",[["empty","typeList"]],["push",["deref","indexValue",["deref","typeMap",["pop","typeList"]]],"result"],["preadjust","count","+",1]],"result"],["function","makeList",["typeList","typeMap","false","result"],["loop","false",[["empty","typeList"]],["push",["renumber",["deref","indexValue",["deref","typeMap",["pop","typeList"]]]],"result"],["preadjust","count","+",1]],"result"],["=","count",0],["=","maps",["list",["makeAtom","listSymbol","wmapSymbol"],["makeAtom","listUnintern","wmapUnintern"],["makeAtom","listString","mapString"],["makeAtom","listInteger","mapInteger"],["makeAtom","listFloat","mapFloat"],["makeList","listArray","wmapArray"],["makeList","listDictionary","wmapDictionary"],["makeList","listList","mapList"],["makeList","listProcedure","wmapProcedure"],["makeList","listDialect","mapDialect"],["makeAtom","listBinary","mapBinary"],["makeAtom","listXobject","mapXobject"],["makeList","listObject","wmapObject"]]],["cons","count","maps"]],["function","export",["symbols","false","sym","problist","trav","ptrav","plist","pitem","sitesym","symstates","sites"],["=","ptrav",["symlist",["namespace",["car","symbols"]]]],["loop","false",[["empty","ptrav"]],["=","pitem",["pop","ptrav"]],[[["cdr","pitem"],["=","problist",["cons","pitem","problist"]]]]],["=","symbols",["reverse","symbols"]],["=","trav","symbols"],["loop","false",[["empty","trav"]],["=","sym",["pop","trav"]],[[["not",["symbol","sym"]],["throw",["list","$error","pkgSave",["strcat","$non-symbol specified: ","sym"]]]]],[[["and",["eq","pkgns",["namespace","sym"]],["not",["member","sym","omitlist"]]],["=","ptrav",["totuple",["cdr","sym"]]],["loop","false",[["empty","ptrav"]],["=","pitem",["pop","ptrav"]],[[["and",["symbol",["cdr","pitem"]],["not",["member",["cdr","pitem"],"symbols"]]],["=","symbols",["cons",["cdr","pitem"],"symbols"]]]]]]]],["=","symbols",["reverse","symbols"]],["=","trav","symbols"],["loop","false",[["empty","trav"]],["=","sym",["pop","trav"]],["=","sites","false"],["=","ptrav","problist"],["loop","false",[["empty","ptrav"]],["=","sitesym",["pop","ptrav"]],["=","plist",["totuple",["cdr","sitesym"]]],["loop","false",[["empty","plist"]],["=","pitem",["pop","plist"]],[[["or",["eq",["car","pitem"],"sym"],["eq",["cdr","pitem"],"sym"]],["push",["list","sitesym",["car","pitem"],["cdr","pitem"]],"sites"]]]]],["push",["saveSymbol","sym","sites"],"symstates"]],["reverse","symstates"]],["call",["function","lambda",["false","header","rootnum","syms"],["=","options",["merge",{dictionary:{$comments:"true"}},"options"]],["=","reported",["new","weakmap"]],["=","storenum",0],["=","wmapSymbol",["new","weakmap"]],["=","wmapUnintern",["new","weakmap"]],["=","mapString",["new","dictionary"]],["=","mapInteger",["new","dictionary"]],["=","mapFloat",["new","dictionary"]],["=","wmapArray",["new","weakmap"]],["=","wmapDictionary",["new","weakmap"]],["=","mapList",["new","dictionary"]],["=","wmapProcedure",["new","weakmap"]],["=","mapDialect",["new","dictionary"]],["=","mapBinary",["new","dictionary"]],["=","mapXobject",["new","dictionary"]],["=","wmapObject",["new","weakmap"]],["=","indexValue",["new","dictionary"]],[["not","pkgname"],"false"],[["not",["symbol","pkgname"]],["throw",["list","$error","pkgSave",["strcat","$package name not a symbol: ","pkgname"]]]],[["atom","roots"],["throw",["list","$error","pkgSave",["strcat","$no roots specified: ","roots"]]]],["=","pkgns",["namespace","pkgname"]],["=","goodns",["list","pkgns",[".",["nsactive","true"],1]]],["=","registry",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lib"],"exports"],"Registry"]],["store","false"],["=","rootnum",["store","roots"]],["=","syms",["export","roots"]],["makeXlate"],["=","header",["list","$NaanPackage",1,2,"pkgname",[".","options","prereqs"]]],["list","header",["saveMaps"],["renumber","rootnum"],["renumber","syms"]]]]]),e._SetBindingList("pkgDecode",["function","pkgDecode",["pkg","options","false","registry","maxdepth","mapSymbol","mapUnintern","mapString","mapInteger","mapFloat","mapDictionary","mapArray","mapList","mapProcedure","mapDialect","mapBinary","mapXobject","mapObject","cache"],["function","lookupArray",["key","depth","false","exlist","adex","result"],["=","exlist",["lookup",["deref","mapArray","key"],"depth"]],["=","result",["new","array"]],["=","adex",0],["loop","false",[["empty","exlist"]],["set[","result",["postadjust","adex","+",1],["pop","exlist"]]],"result"],["function","lookupDictionary",["key","depth","false","exlist","keylist","datalist","result"],["=","exlist",["lookup",["deref","mapDictionary","key"],"depth"]],["=","result",["new","dictionary"]],["=","keylist",[".","exlist",0]],["=","datalist",[".","exlist",1]],["loop","false",[["empty","keylist"]],["set[","result",["pop","keylist"],["pop","datalist"]]],"result"],["function","lookupList",["key","depth","false","exlist","result"],["=","exlist",["deref","mapList","key"]],["loop","false",[["empty","exlist"]],["=","result",["cons",["lookup",["pop","exlist"],"depth"],"result"]]],["reverse","result"]],["function","lookupProcedure",["key","depth","false","procdef"],["=","procdef",["lookup",["deref","mapProcedure","key"],"depth"]],[["procedure","procdef"],["=","procdef",["enclose","procdef"]]],[["string","procdef"],["=","procdef","procdef"]]],["function","lookupDialect",["key","depth","false","pair","dialect"],["=","pair",["lookup",["deref","mapDialect","key"],"depth"]],["=","dialect",[".","registry","findName",[[".","pair",0]]]],[[["not","dialect"],["throw",[".","$pkgDecode: unregistered dialect: ","concat",[[".","pair",0]]]]]],["deref",[".",[".","dialect","ns"],"symbols"],["deref",[".",[".","dialect","ns"],"index"],[".","pair",1]]]],["function","lookupObject",["key","depth","false","ident","obj"],["=","ident",["lookup",["deref","mapObject","key"],"depth"]],["=","obj",["call",[".","options","objectDecoder"],"ident"]],[[["not","obj"],[[".","ident","name"],["putproc",[".","ident","name"],"false"],["=","obj",["call",["closure","lambda",["nn"],["call",["enclose",["list",["`","closure"],"nn",["`",["local","x"]],["quote",["=","x",["new","object","nn"]]],["quote",["put","x","\\.tostring",["function","lambda","false",["strcat","${blank-proxy ","nn","$}"]]]],["quote",["put","x","\\.undefined",["function","undef","args",["debuglog",["strcat","$call to {blank-proxy ","nn","$}.",[".","args",0],["||",[".","args",-1],"$()"],"$ ignored"]]]]],"x"]]]],[".","ident","name"]]]],["=","obj",["new","object"]]]],"obj"],["function","lookup",["expr","depth","false","key","sexpr","result","cachekey","error","data"],[[["not","expr"],["return","expr"]]],["=","cachekey","expr"],[[["&&",["integer","cachekey"],["defined","cache","cachekey"]],["return",["deref","cache","cachekey"]]]],[[["not","depth"],["=","depth",1]]],["=","key","expr"],["=","result",["loop","false",[[[">","depth","maxdepth"],["throw",[".","$pkgDecode: cycle corruption: ","concat",["expr"]]]]],[["not",["atom","expr"]],["loop","false",[["empty","expr"]],["=","result",["cons",["lookup",["pop","expr"],["+","depth",1]],"result"]]],["reverse","result"]],[["not",["integer","expr"]],["throw",[".","$pkgDecode: can't lookup: ","concat",["expr"]]],"false"],[[["<","key",[".","mapSymbol","length"]],["=","sexpr",["deref","mapSymbol","key"]],[[["&&",["==",[".","options","intern"],"$symbols"],["symbol","sexpr"]],"sexpr"],[["==","sexpr","$undefined"],"undefined"],[["==","sexpr","$null"],"null"],[["||",["==",[".","options","intern"],"true"],["==","key",0],["interned","sexpr"]],["compress","sexpr"]],["unintern","sexpr"]],["break"]]],["preadjust","key","-",[".","mapSymbol","length"]],[["<","key",[".","mapUnintern","length"]],["unintern",["deref","mapUnintern","key"]]],["preadjust","key","-",[".","mapUnintern","length"]],[["<","key",[".","mapString","length"]],["deref","mapString","key"]],["preadjust","key","-",[".","mapString","length"]],[["<","key",[".","mapInteger","length"]],["deref","mapInteger","key"]],["preadjust","key","-",[".","mapInteger","length"]],[["<","key",[".","mapFloat","length"]],["tofloat",["deref","mapFloat","key"]]],["preadjust","key","-",[".","mapFloat","length"]],[["<","key",[".","mapArray","length"]],["lookupArray","key",["+","depth",1]]],["preadjust","key","-",[".","mapArray","length"]],[["<","key",[".","mapDictionary","length"]],["lookupDictionary","key",["+","depth",1]]],["preadjust","key","-",[".","mapDictionary","length"]],[["<","key",[".","mapList","length"]],["lookupList","key",["+","depth",1]]],["preadjust","key","-",[".","mapList","length"]],[["<","key",[".","mapProcedure","length"]],["lookupProcedure","key",["+","depth",1]]],["preadjust","key","-",[".","mapProcedure","length"]],[["<","key",[".","mapDialect","length"]],["lookupDialect","key",["+","depth",1]]],["preadjust","key","-",[".","mapDialect","length"]],[["<","key",[".","mapBinary","length"]],["DecodeBase64",["deref","mapBinary","key"]]],["preadjust","key","-",[".","mapBinary","length"]],[[["<","key",[".","mapXobject","length"]],["=",["error","data"],["JsonParse",["deref","mapXobject","key"]]],[[["identity","error"],["ErrorDebuglog","$pkgDecode: xobject decode failed","error"],"false"],"data"],["break"]]],["preadjust","key","-",[".","mapXobject","length"]],[["<","key",[".","mapObject","length"]],["lookupObject","key",["+","depth",1]]],["throw",[".","$pkgDecode: invalid refnum: ","concat",["expr"]]],[["identity","true"]]]],[["integer","cachekey"],["set[","cache","cachekey","result"]],"result"],["function","recurList",["expr","false","adex","result"],[["||",["array","expr"],["xobject","expr"]],["=","adex",[".","expr","length"]],["loop","false",[["<",["preadjust","adex","-",1],0]],["push",["recurList",["deref","expr","adex"]],"result"]],"result"],"expr"],["call",["function","lambda",["false","pkgname","firstVer","lastVer"],["=","registry",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lib"],"exports"],"Registry"]],["=","firstVer",1],["=","lastVer",2],[[["and",["atom","pkg"],["not",["=","pkg",["recurList","pkg"]]]],["return","$invalid package argument"]]],["=","pkgname",[".",[".","pkg",0],3]],[[["or",["atom","pkg"],["!=",[".",[".","pkg",0],0],"$NaanPackage"],["not","pkgname"],["not",["name","pkgname"]]],["return","$package not recognized"]]],[[["or",[">",[".",[".","pkg",0],1],"lastVer"],["<",[".",[".","pkg",0],2],"firstVer"],["<=",[".",[".","pkg",1],0],0],["<=",["length",[".",[".","pkg",1],1]],0]],["return",[".","$package version not supported: ","concat",[[".",[".","pkg",0],1],"$-",[".",[".","pkg",0],2]]]]]],["=","maxdepth",[".",[".","pkg",1],0]],["=","mapSymbol",["new","array",[".",[".","pkg",1],1]]],["=","mapUnintern",["new","array",[".",[".","pkg",1],2]]],["=","mapString",["new","array",[".",[".","pkg",1],3]]],["=","mapInteger",["new","array",[".",[".","pkg",1],4]]],["=","mapFloat",["new","array",[".",[".","pkg",1],5]]],["=","mapArray",["new","array",[".",[".","pkg",1],6]]],["=","mapDictionary",["new","array",[".",[".","pkg",1],7]]],["=","mapList",["new","array",[".",[".","pkg",1],8]]],["=","mapProcedure",["new","array",[".",[".","pkg",1],9]]],["=","mapDialect",["new","array",[".",[".","pkg",1],10]]],["=","mapBinary",["new","array",[".",[".","pkg",1],11]]],["=","mapXobject",["new","array",[".",[".","pkg",1],12]]],["=","mapObject",["new","array",[".",[".","pkg",1],13]]],["=","cache",{array:[]}],["catch",[["cons",["list","pkgname",["lookup",[".",[".","pkg",0],4]],["lookup",[".",[".","pkg",0],5]],["lookup",[".","pkg",2]]],["lookup",[".","pkg",3]]]],[[["string","exception"],"exception"]],"false"]]]]),e._SetBindingList("pkgExamine",["function","pkgExamine",["pkg","false","exlist","header","state"],["function","printProps",["dict","false","keylist","key"],["=","keylist",["keys","dict"]],["loop","false",[["empty","keylist"]],["=","key",["pop","keylist"]],[[["member","key",["`",["$.sourcemap","$.children","$.parent"]]],["printline","$ ","key"]],["printline","$ ","key","$, ",["xget","dict","key"]]]]],["=","exlist",["pkgDecode","pkg"]],[[["atom","exlist"],["printline",[".","$pkgExamine error:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["newline"],["printline","$=================================================="],["printline","$ package: ",[".","header",0]],["printline","$ version: ",[".","header",1]],["printline","$ prereqs: ",[".","header",2]],["printline","$root symbols: ",[".","header",3]],["printline","$ states: ",["length","exlist"]],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["printline","$invalid symbol: ","state"]],["printline","$=================================================="],["printline","$ name: ",[".","state",0]],["printline","$--------------------------------------------------"],["printline","$ val: ",[".","state",1]],[[["dictionary",[".","state",2]],["printline","$ prop:"],["printProps",[".","state",2]]],["printline","$ prop: ",[".","state",2]]],["printline","$ sites: ",[".","state",4]],[["atom",[".","state",3]],["printline","$ proc: ",[".","state",3]]],["printline","$ proc: "],["printline",[".",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lingo"],"exports"],"Base"],"print",[[".","state",3]]]]]],["printline","$=================================================="],[".","header",0]]),e._SetBindingList("pkgLoad",["function","pkgLoad",["pkg","options","false","exlist","header","roots","state","sym","sitelist","site","proc"],[[["not","options"],["=","options",{dictionary:{$localroots:"true",$intern:"true",$execute:"true"}}]]],["=","exlist",["pkgDecode","pkg","options"]],[[["atom","exlist"],["debuglog",[".","$pkgLoad error:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["debuglog","$invalid symbol: ","state"]],[[["==",[".","options","intern"],"true"],["=","sym",["compress",[".","state",0]]],[["not",["eq",[".","sym","namespace"],[".",["nsactive"],0]]],[[".","options","localroots"],["=","sym",["car",["letlocal","sym"]]]],["debuglog","$cannot overwrite symbol ","sym","$ in ",[".","sym","namespace"]],["continue"]]],["=","sym",["unintern",[".","state",0]]]],["push","sym","roots"],["assign","sym",[".","state",1]],["=","proc",[".","state",3]],["putproc","sym","proc"],["replacer","sym",[".","state",2]],[[[".","proc",1],["copyann",[".","proc",1],"sym"]]],["=","sitelist",[".","state",4]],["loop","false",[["empty","sitelist"]],["=","site",["pop","sitelist"]],["put",[".","site",0],[".","site",1],[".","site",2]]],[["&&",[".","options","execute"],[".","state",3],["get","sym","$.lingoInit"]],["call","sym"]]]],["reverse","roots"]]),e._SetBindingList("pkgToJsSource",["function","pkgToJsSource",["pkg","false","output","indent","atnl"],["=","output","$"],["=","indent",0],["=","atnl","true"],["function","indent",["adj"],["preadjust","indent","+","adj"]],["function","newline","false",["=","atnl","true"],["=","output",[".","output","concat",["cr"]]]],["function","write","strings",["call",["function","lambda",["false","cnt","str"],["while","false",[["not",["not",["empty","strings"]]]],[[["identity","atnl"],["=","atnl","false"],["=","cnt","indent"],["while","false",[["not",[">",["postadjust","cnt","-",1],0]]],["=","output",[".","output","concat",["$ "]]]]]],["=","str",["pop","strings"]],[[[">=",[".","str","indexOf",["$\n"]],0],["=","atnl","true"]]],["=","output",[".","output","concat",["str"]]]]]],"output"],["function","writeline","strings",["apply","write","strings"],["newline"]],["function","atomString",["expr","false","vertical"],[["||",["symbol","expr"],["string","expr"]],["makeSourceString","expr"]],[["float","expr"],[".",'$".',"concat",["expr",'$"']]],[["integer","expr"],"expr"],[["array","expr"],["arrayString","expr","vertical"]],[["dictionary","expr"],["dictionaryString","expr","vertical"]],["debuglog","$pkgToJsSource: unsupported atom: ","expr"],"$false"],["function","arrayString",["arr","false","adex","expr","separator","result"],["=","result","${array:["],["=","adex",0],["loop","false",[[">=","adex",[".","arr","length"]]],["=","expr",["deref","arr",["postadjust","adex","+",1]]],[[["not","separator"],[[["identity","vertical"],["=","separator","$,\n"]],["=","separator","$, "]],["=","vertical","true"],["=","result",[".","result","concat",[["exprString","expr"]]]]],["=","result",[".","result","concat",["separator",["exprString","expr"]]]]]],[".","result","concat",["$]}"]]],["function","dictionaryString",["obj","false","keylist","key","separator","result"],[[["cdr","obj"],["=","result",[".","${tag:","concat",[["atomString",["cdr","obj"]],"$,dictionary:{"]]]],["=","result","${dictionary:{"]],["=","keylist",["keys","obj"]],["loop","false",[["empty","keylist"]],["=","key",["pop","keylist"]],[[["not","separator"],[[["identity","vertical"],["=","separator","$,\n"]],["=","separator","$, "]],["=","vertical","true"],["=","result",[".","result","concat",[["atomString","key"],"$: ",["exprString",["deref","obj","key"]]]]]],["=","result",[".","result","concat",["separator",["atomString","key"],"$: ",["exprString",["deref","obj","key"]]]]]]],[".","result","concat",["$}}"]]],["function","openListString",["exlist","false","expr","comma","result"],[[["atom","exlist"],["return",["atomString","exlist"]]]],["=","comma","$"],["=","result","$"],["loop","false",[["empty","exlist"]],["=","expr",["pop","exlist"]],["=","result",[".","result","concat",["comma",["exprString","expr"]]]],["=","comma","$, "]],"result"],["function","paramListString",["exlist"],[[["atom","exlist"],["return",["atomString","exlist"]]]],["exprString","exlist"]],["function","exprString",["exlist"],[[["atom","exlist"],["return",["atomString","exlist"]]]],[".","$[","concat",[["openListString","exlist"],"$]"]]],["function","procsym",["sym"],["=","sym",["tostring","sym"]],["return",["||",["==","sym","$function"],["==","sym","$function&"],["==","sym","$macro"],["==","sym","$closure"],["==","sym","$let"],["==","sym","$let&"]]]],["function","writeCall",["exlist","more","false","opstr"],[[["atom","exlist"],["write",["atomString","exlist"]],["return"]]],["=","opstr",["tostring",["car","exlist"]]],[[["procsym",["car","exlist"]],["writeline","$[",["atomString",["car","exlist"]],"$, ",["atomString",["second","exlist"]],"$, ",["paramListString",["third","exlist"]],"$,"],["indent",1],["writeBody",["cdddr","exlist"]],["indent",-1],["write","$]"]],[["||",["==","opstr","$loop"],["==",[".",["car","exlist"],"proc"],[".",["`","loop"],"proc"]]],["writeline","$[",["atomString",["car","exlist"]],"$, ",["atomString",["second","exlist"]],"$,"],["indent",1],["writeBody",["cddr","exlist"]],["indent",-1],["write","$]"]],[["==","opstr","$call"],["writeline","$[",["atomString",["car","exlist"]],"$,"],["indent",1],[[["cddr","exlist"],["writeCall",["second","exlist"],"$,"],["indent",-1],["newline"],["write",["openListString",["cddr","exlist"]]]],["writeCall",["second","exlist"],"$"],["indent",-1]],["write","$]"]],[["==","opstr","$catch"],["writeline","$[",["atomString",["pop","exlist"]],"$,"],["indent",1],[[["car","exlist"],["write","$["],["indent",1],["writeBody",["car","exlist"],"$"],["indent",-1],["write","$],\n"]],["writeline",["atomString","false"],"$,"]],[[["second","exlist"],["write","$["],["writeBody",["second","exlist"],"$"],["write","$],\n"]],["writeline",["atomString","false"],"$,"]],[[["third","exlist"],["write","$["],["indent",1],["writeBody",["third","exlist"],"$"],["indent",-1],["write","$]"]],["write",["atomString","false"]]],["indent",-1],["write","$]"]],[["||",["==","opstr","$quote"],["==","opstr","$`"]],["write",["exprString","exlist"]]],["write",[".","$[","concat",[["openListString","exlist"],"$]"]]]],["write","more"]],["function","writeBody",["exlist","false","expr","more"],["loop","false",[["empty","exlist"]],["=","expr",["pop","exlist"]],[[["empty","exlist"],["=","more","$"]],["=","more","$,\n"]],[[["atom","expr"],["write",["atomString","expr"],"more"]],[["atom",["car","expr"]],["writeCall","expr","more"]],[["atom",["caar","expr"]],[["cdr","expr"],["write","$["],["writeCall",["car","expr"],"$,\n"],["indent",1],["writeBody",["cdr","expr"]],["indent",-1],["write","$]","more"]],["write","$[",["exprString",["car","expr"]],"$]","more"]],["writeline","$["],["indent",1],["writeBody",["list",["car","expr"]]],[[["cdr","expr"],["writeline","$,"],["writeBody",["cdr","expr"]]]],["indent",-1],["write","$]","more"]]]],["function","writeProc",["sym","proc"],["writeline","$ninti._SetBindingList(",["atomString","sym"],"$,"],["indent",1],[[["string","proc"],["writeline","proc"]],["writeline","$[",["atomString",["car","proc"]],"$, ",["atomString",["second","proc"]],"$, ",["paramListString",["third","proc"]],"$,"],["indent",1],["writeBody",["cdddr","proc"]],["indent",-1],["writeline","$]"]],["indent",-1],["writeline","$);"]],["function","writeProps",["sym","props","false","prop","preceded","header"],[[["atom","props"],["return"]]],["=","preceded","$"],["while","false",[["not",["not",["empty","props"]]]],["=","prop",["pop","props"]],[[["==",["tostring",["car","prop"]],"$.sourcemap"],["continue"]]],[[["==",["tostring",["car","prop"]],"$.children"],["continue"]]],[[["not","header"],["=","header","true"],["writeline","$ninti._AddPropertyList(",["atomString","sym"],"$,"],["indent",1],["write","$["]]],["write","preceded","$[",["atomString",["car","prop"]],"$, ",["exprString",["cdr","prop"]],"$]"],["=","preceded","$,\n"]],[[["not","header"],["return"]]],["write","$]"],["indent",-1],["newline"],["writeline","$);"]],["function","writeValue",["sym","value"],["writeline","$ninti._SetValue(",["atomString","sym"],"$, ",["exprString","value"],"$);"]],["call",["function","lambda",["false","exlist","header","state","proc"],["=","exlist",["pkgDecode","pkg"]],[[["atom","exlist"],["debuglog",[".","$pkgToJsSource:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["indent",1],["writeline","$/*"],["writeline","$ * ",[".",[".","pkg",0],3]],["writeline","$ *"],["writeline","$ */"],["newline"],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["debuglog","$invalid symbol: ","state"]],[[["!=",[".","state",1],[".","state",0]],["writeValue",[".","state",0],[".","state",1]]]],[[[".","state",2],["writeProps",[".","state",0],["totuple",[".","state",2]]]]],["=","proc",[".","state",3]],[[["tuple","proc"],["writeProc",[".","state",0],"proc"]]],[["||",[".","state",2],["tuple","proc"]],["newline"]]]],["indent",-1],"output"]]]),e._AddPropertyList("PackagerInit",[["$.lingoInit","true"]]),e._SetBindingList("PackagerInit",["function","PackagerInit",["false","manifest"],["=","manifest",["`",["makeSourceString","pkgSave","pkgDecode","pkgExamine","pkgLoad","pkgToJsSource","PackagerInit"]]],[".",[".","Naan","module"],"build",["$Util","$Packager",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","pkgSave"],"pkgSave"],["set.",[".","modobj","exports"],["`","pkgExamine"],"pkgExamine"],["set.",[".","modobj","exports"],["`","pkgLoad"],"pkgLoad"],["set.",[".","modobj","exports"],["`","pkgToJsSource"],"pkgToJsSource"]]]]]),e._Execute(["PackagerInit"]),e._SetValue("jsScripts",{dictionary:{}}),e._SetBindingList("JsLoadScript",["closure","JsLoadScript",["libpath","globalID","false","locin","savens","hostpath","error","console","pending","scriptTag"],["global","module","jsScripts","Naan","JSpath","js"],["=","locin",[".","libpath","split",["$:"]]],[[["==",[".","locin","length"],2],["=","libpath",[".","locin",1]],["=","locin",[".","locin",0]]],["=","locin","false"]],[[["deref","jsScripts","libpath"],["return"]]],["=","savens",["makeReturner"]],["=","hostpath",[".",[".",[".",[".","js","w"],"location"],"origin"],"concat",[[".","JSpath","join",[[".","JSpath","dirname",[[".",[".",[".","js","w"],"location"],"pathname"]]],"libpath"]]]]],[[["&&",[".",[".","js","s"],"importScripts"],["==",["tostring",[".",[".","js","s"],"importScripts"]],"$[Function importScripts]"]],["catch",[[".",[".","js","s"],"importScripts",["hostpath"]],["set[","jsScripts","libpath",["deref",[".","js","s"],"globalID"]]],[[["identity","true"],["=","error",["Error",["strcat","$JsLoadScript(","libpath","$) failed"],"exception"]],["=","console",[".","js","s"]]]],"false"]],[[".","js","w"],["=","pending",["new","nonce"]],["=","scriptTag",[".",[".",[".","js","w"],"document"],"createElement",["$script"]]],["set.","scriptTag",["`","src"],[".","hostpath","concat",[[".",[".","Naan","module"],"requireQuery","false"]]]],["set.","scriptTag",["`","onload"],["function","lambda",["event"],["set[","jsScripts","libpath",["deref",[".","js","w"],"globalID"]],[".","pending","signal",[["deref",[".","js","w"],"globalID"]]],"true"]],["set.","scriptTag",["`","onerror"],["function","lambda",["event"],["=","error",["Error",["strcat","$JsLoadScript(","libpath","$) not found"]]],["=","console",[".","js","w"]],[".","pending","signal",["false"]],"true"]],[".",[".",[".",[".","js","w"],"document"],"body"],"appendChild",["scriptTag"]],[".","pending","wait","false"]],[[".","js","g"],[[["identity","locin"],["=","locin",["deref",[".",[".","module","owner"],"locations"],"locin"]],[["identity","locin"],["=","libpath",[".","JSpath","resolve",["locin","libpath"]]]],["=","error",["Error",["strcat","$JsLoadScript(","locin","$:","libpath","$) is an undefined location"]]],["=","console",[".","js","g"]]]],[["not","error"],["set[","jsScripts","libpath",[".","js","r",["libpath"]]]]]],["savens"],[[["identity","error"],["ErrorDebuglog","error"],[".","console","log",[["ErrorString","error"]]],["throw","error"]]],["deref","jsScripts","libpath"]]),e._SetBindingList("JSONparse",["function","JSONparse",["str"],[".",[".",["||",[".","js","w"],[".","js","g"]],"JSON"],"parse",["str"]]]),e._SetBindingList("JSONstringify",["function","JSONstringify",["obj"],[".",[".",["||",[".","js","w"],[".","js","g"]],"JSON"],"stringify",["obj"]]]),e._SetBindingList("JsonParse",["function","JsonParse",["data"],["global","exception"],["catch",[["=","data",["JSONparse","data"]],["list","false","data"]],[[["identity","true"],["list","exception"]]],"false"]]),e._SetBindingList("JsonStringify",["function","JsonStringify",["data"],["global","exception"],["catch",[["=","data",["JSONstringify","data"]],["list","false","data"]],[[["identity","true"],["list","exception"]]],"false"]]),e._SetBindingList("EncodeBase64",["function","EncodeBase64",["data","false","blob","reader","pending","result"],[["not","data"],"$"],[[".","js","g"],[".",[".",[".",[".","js","g"],"Buffer"],"from",["data","$binary"]],"toString",["$base64"]]],[["xobject","data"],["=","blob",["xnew",[".",[".","js","w"],"Blob"],{array:["data"]}]],["=","reader",["xnew",[".",[".","js","w"],"FileReader"]]],["=","pending",["new","nonce"]],["set.","reader",["`","onload"],["function","lambda",["event"],[".","pending","signal",[[".",[".","event","target"],"result"]]]]],[".","reader","readAsDataURL",["blob"]],["=","result",[".","pending","wait","false"]],[".","result","slice",[37]]],[".",[".","js","w"],"btoa",["data"]]]),e._SetBindingList("DecodeBase64",["function","DecodeBase64",["data","false","error","resp","blob"],[["not","data"],["xnew"]],[[".","js","g"],[".",[".",[".","js","g"],"Buffer"],"from",["data","$base64"]]],["=",["error","resp"],["await",[".",[".","js","w"],"fetch",[["strcat","$data:application/octet-stream;base64,","data"]]]]],[[["not","error"],["=",["error","blob"],["await",[".","resp","blob","false"]]]]],[[["not","error"],["=",["error","blob"],["await",[".","blob","arrayBuffer","false"]]]]],[[["not","error"],["=","blob",["xnew",[".",[".","js","w"],"Uint8Array"],"blob"]]]],[["identity","error"],["debuglog","$DecodeBase64 failed","error"],["xnew"]],"blob"]),e._SetBindingList("IsBinary",["function","IsBinary",["obj","false","jio"],["=","jio",[".",[".",[".","Naan","runtimelib"],"jsInstanceOf"],"proc"]],[[".","js","g"],["||",["jio","obj",[".",[".","js","g"],"Buffer"]],["jio","obj",[".",[".","js","g"],"ArrayBuffer"]],["jio","obj",[".",[".","js","g"],"DataView"]]]],["||",["jio","obj",[".",[".","js","w"],"Uint8Array"]],["jio","obj",[".",[".","js","w"],"ArrayBuffer"]],["jio","obj",[".",[".","js","w"],"Blob"]]]]),e._SetBindingList("HashMD5",["function","HashMD5",["data"],["global","crypto","js"],[[".","js","g"],[[["not",["xobject","crypto"]],["=","crypto",[".","js","r",["$crypto"]]]]],[["identity","crypto"],["catch",[[".",[".",[".","crypto","createHash",["$MD5"]],"update",["data"]],"digest",["$hex"]]],[[["identity","true"],["debuglog","$HashMD5 failed:","exception"],"false"]],"false"]]],["JsLoadScript","$frameworks/browser/spark-md5/spark-md5.min.js","$SparkMD5"],[["not",[".",[".","js","w"],"SparkMD5"]],["debuglog","$HashMD5 unavailable"],"false"],[["xobject","data"],[".",[".",[".",[".","js","w"],"SparkMD5"],"ArrayBuffer"],"hash",["data"]]],[".",[".",[".","js","w"],"SparkMD5"],"hash",["data"]]]),e._SetBindingList("await",["closure","await",["promise","timeout","false","pending"],[[["not","promise"],["throw",["list","internal","$await on false promise"]]]],["=","pending",["new","nonce"]],[".","promise","then",[["function","success",["value"],[".","pending","signal",[["list","false","value"]]]],["function","failure",["error"],[".","pending","signal",[["list","error"]]]]]],[["identity","timeout"],[".","pending","wait",["timeout",["list",["Error",["strcat","$await timeout after ","timeout","$ msec"]]]]]],[".","pending","wait","false"]]),e._AddPropertyList("UtilInit",[["$.lingoInit","true"]]),e._SetBindingList("UtilInit",["function","UtilInit",["false","manifest"],["=","manifest",["`",["jsScripts","JsLoadScript","JSONparse","JSONstringify","JsonParse","JsonStringify","EncodeBase64","DecodeBase64","IsBinary","HashMD5","await","UtilInit"]]],[".",[".","Naan","module"],"build",["$Util","$Util",["function","lambda",["modobj","compobj"],["=","JSpath",[".","js","r",["$path"]]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","JSpath"],"JSpath"],["set.",[".","modobj","exports"],["`","JsLoadScript"],"JsLoadScript"],["set.",[".","modobj","exports"],["`","JSONstringify"],"JSONstringify"],["set.",[".","modobj","exports"],["`","JSONparse"],"JSONparse"],["set.",[".","modobj","exports"],["`","JsonStringify"],"JsonStringify"],["set.",[".","modobj","exports"],["`","JsonParse"],"JsonParse"],["set.",[".","modobj","exports"],["`","EncodeBase64"],"EncodeBase64"],["set.",[".","modobj","exports"],["`","DecodeBase64"],"DecodeBase64"],["set.",[".","modobj","exports"],["`","IsBinary"],"IsBinary"],["set.",[".","modobj","exports"],["`","HashMD5"],"HashMD5"]]]]]),e._Execute(["UtilInit"]),e._SetNamespace(t,!0)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
43
+ !function(e){e.BootModule=function(e){"use strict";var t=e._SetNamespace("Util");e._CopyBinding("equal","=="),e._CopyBinding("setq","="),e._CopyBinding("times","*"),e._CopyBinding("and","&&"),e._CopyBinding("or","||"),e._CopyBinding("loop","while"),e._Import("number","difference","-"),e._Import("number","greater",">"),e._Import("number","lesser","<"),e._Import("number","times","*"),e._Import("number","plus","+"),e._Import("number","quotient","/"),e._Import("number","quotient","/."),e._Import("number","mod","%"),e._SetBindingList("!=",["function","!=",["ex1","ex2"],["not",["equal","ex1","ex2"]]]),e._SetBindingList(">=",["function",">=",["ex1","ex2"],["or",["greater","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("<=",["function","<=",["ex1","ex2"],["or",["lesser","ex1","ex2"],["equal","ex1","ex2"]]]),e._SetBindingList("+=",["macro","+=",["ex1","ex2"],["assign","ex1",["+",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("-=",["macro","-=",["ex1","ex2"],["assign","ex1",["-",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("*=",["macro","*=",["ex1","ex2"],["assign","ex1",["*",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("/=",["macro","/=",["ex1","ex2"],["assign","ex1",["/",["car","ex1"],["eval","ex2"]]]]),e._SetBindingList("Component",["closure","Component",["modobj","name","filename","false","compobj"],["=","compobj",["new","object","this"]],["set.","compobj",["`","module"],"modobj"],["set.","compobj",["`","name"],"name"],["set.","compobj",["`","filename"],"filename"],["set.","compobj",["`","modsym"],[".","modobj","modsym"]],["set.","compobj",["`","manifest"],"false"],["set.","compobj",["`","loaded"],"false"],["set.","compobj",["`","package"],["function","package",["false","pkg","curactns","returner"],[".",[".","Naan","module"],"require",["$Util/Packager.nlg"]],[[["not",[".",[".","module","exports"],"pkgSave"]],["return","false"]]],["=","curactns",["nsactive"]],["=","returner",["makeReturner"]],["catch",[[".","modobj","activate","false"],["=","pkg",["pkgSave",["compress",[".","compobj","name"]],[".","compobj","manifest"]]]],[[["identity","true"],["ErrorDebuglog","$package exception: ","exception"],["return","false"]]],[["returner"]]],"pkg"]],["set.","compobj",["`","jspackage"],["function","jspackage",["false","pkg"],["=","pkg",["package"]],[[["not","pkg"],["return","false"]]],["pkgToJsSource","pkg"]]],["set.","compobj",["`","npackage"],["function","npackage",["false","pkg"],["=","pkg",["package"]],[["identity","pkg"],["JSONstringify","pkg"]]]],["set.","compobj",["`","save"],["function","save",["fpath","overwrite","false","text","pathobj","options"],["=","text",["jspackage"]],[[["not","text"],["return","false"]]],["=","fpath",[".","JSpath","normalize",["fpath"]]],["=","pathobj",[".","JSpath","parse",["fpath"]]],[[["==",["length",[".","pathobj","ext"]],0],["=","fpath",["strcat","fpath","$.json"]]]],["=","options",["xnew"]],[[["identity","overwrite"],["set.","options",["`","flags"],"$w"]],["set.","options",["`","flags"],"$wx"]],["=","fpath",[".","JSpath","join",[[".","js","d"],"fpath"]]],[".",[".","js","r",["$fs"]],"writeFileSync",["fpath","text","options"]],"fpath"]],"compobj"]),e._SetBindingList("Module",["closure","Module",["modules","modid","exns","false","modobj"],["=","modobj",["new","object","this"]],["set.","modobj",["`","owner"],"modules"],["set.","modobj",["`","id"],"modid"],["set.","modobj",["`","created"],[".","Date","now","false"]],["closure","makeActivator",["false","checkns","targns"],["=","checkns",["nsrights"]],["=","targns",["car",["nsactive"]]],["call",["enclose",["function","lambda","false",["function","returner","false",[["eq","checkns",[".",[".","Naan","local"],"nscaller","false"]],["nsactive",["cons","targns",["inherits"]]]]],"returner"],"targns"]]],["set.","modobj",["`","inherits"],["function","inherits",["false","result","nslist"],["=","nslist",[".","modobj","inherit"]],["loop","false",[["empty","nslist"]],["=","ns",["pop","nslist"]],[[["not",["member","ns","result"]],["push","ns","result"]]]],["push",["second",["nsactive","true"]],"result"],["reverse","result"]]],["set.","modobj",["`","makeComponent"],["function","lambda",["compname","filename","false","compobj"],["=","compobj",["Component","modobj","compname","filename"]],["set[",[".","modobj","components"],"compname","compobj"]]],["set.","modobj",["`","destroy"],["function","destroy","false",[".","modules","destroy",["modobj"]],"true"]],["call",["let","lambda",["false","mtuple"],["function","nsinit",["modobj","false","modsym"],["letlocal","$module"],["=","modsym",["compress","$module"]],["putproc","modsym",[".","modules","moduleProc"]],["assign","modsym","modobj"],["list",["car",["nsactive"]],["makeActivator"],"modsym"]],["function","registerns",["ns","modobj","false","curactns"],["=","curactns",["nsactive"]],["sudo",["nsactive",["cons","ns","curactns"]]],["=","ns",["nsinit","modobj"]],["sudo",["nsactive","curactns"]],"ns"],["function","makens",["nsname","modobj","false","ns"],["=","ns",["new","namespace","nsname"]],["=","ns",["nsinit","modobj"]],["sudo",["nsactive",["cdr",["nsactive"]]]],"ns"],["set.","modobj",["`","locpath"],"$"],["set.","modobj",["`","exports"],{dictionary:{}}],["put",[".","modobj","exports"],["`","module"],"modobj"],["set.","modobj",["`","children"],{array:[]}],["set.","modobj",["`","components"],{dictionary:{}}],[[["identity","exns"],["=","mtuple",["registerns","exns","modobj"]]],["=","mtuple",["makens","modid","modobj"]]],["set.","modobj",["`","namespace"],["car","mtuple"]],["set.","modobj",["`","activate"],["second","mtuple"]],["set.","modobj",["`","modsym"],["third","mtuple"]]]],"modobj"]),e._SetBindingList("Modules",["closure","Modules",["false","modules"],["=","modules",["new","object","this"]],["set.","modules",["`","list"],{dictionary:{}}],["set.","modules",["`","locations"],{dictionary:{$naanlib:"$"}}],["set.","modules",["`","extensions"],{array:["$nlg","$npk"]}],["set.","modules",["`","queryString"],"$"],["function","reload",["false","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"reload","false"]],[[["identity","true"],"false"]],"false"]],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"postload","false"]],[[["identity","true"],"false"]],"false"]]],["loadNotify","reload"],["function","resave",["false","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"]],["catch",[[".",["deref",[".","modules","list"],["pop","mkeys"]],"resave","false"]],[[["identity","true"],"false"]],"false"]]],["saveNotify","resave"],["set.","modules",["`","moduleProc"],["function","moduleProc",["modid"],[["not","modid"],["keys",[".","modules","list"]]],["deref",[".","modules","list"],"modid"]]],["set.","modules",["`","find"],["function","find",["test","false","modobj","mkeys"],["=","mkeys",["keys",[".","modules","list"]]],["loop","false",[["empty","mkeys"],"false"],["=","modobj",["xget",[".","modules","list"],["pop","mkeys"]]],[["test","modobj"],"modobj"]]]],["set.","modules",["`","letinherit"],["function","letinherit",["modfrom","false","modto","curac","nsfrom","nsto"],["=","curac",["nsactive"]],[[["string","modfrom"],["=","modfrom",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modfrom"]]]]]],[["not","modfrom"],"false"],["=","modto",["find",["function","lambda",["mod"],["eq",[".","mod","namespace"],["car","curac"]]]]],[[[".","modfrom","inherit"],["=","nsfrom",["cons",[".","modfrom","namespace"],[".","modfrom","inherit"]]]],["=","nsfrom",["list",[".","modfrom","namespace"]]]],[[["identity","modto"],[[[".","modto","inherit"],["set.","modto",["`","inherit"],["append","nsfrom",[".","modto","inherit"]]]],["set.","modto",["`","inherit"],"nsfrom"]],["=","nsto",[".","modto","inherits","false"]]],["=","nsto","nsfrom"]],["nsactive",["append",["car","curac"],"nsto",["cdr","curac"]]],["nsactive"]]],["set.","modules",["`","require"],["closure","require",["fpath","options","data","false","locin","ns","parent","pathobj","locpath","modname","modobj","compname","compath","compobj","error","presult","returner","extensions","pathext","query","hostpath"],["sprint"],[[["&&","options",["not",["dictionary","options"]]],["throw",["Error",[".","$require(","concat",["fpath","$): invalid options"]]]]]],["=","locin",[".","fpath","split",["$:"]]],[[["&&",["==",[".","locin","length"],2],[">",[".",[".","locin",0],"length"],1]],["=","fpath",[".","locin",1]],["=","locin",[".","locin",0]]],["=","locin",[".","options","in"]]],["=","ns",["||",[".","options","parent"],["nscaller"]]],["=","parent",["find",["function","lambda",["mod"],["eq",[".","mod","namespace"],"ns"]]]],["=","pathobj",[".","JSpath","parse",["fpath"]]],[[["||",["==",[".","pathobj","ext"],"$"],[".",["RegExp","$[/\\\\]$"],"test",["fpath"]]],["=","compath",[".","JSpath","join",["fpath",[".","pathobj","base"]]]],["=","pathobj",[".","JSpath","parse",["compath"]]]]],["=","locpath",[".","pathobj","dir"]],["=","modname",[".","JSpath","basename",["locpath"]]],[[["||",["==","modname","$."],["==","modname","$.."]],["=","modname","$"]]],[[["identity","locin"],["=","presult",["deref",[".","modules","locations"],"locin"]],[[["not","presult"],["throw",["Error",[".","$require(","concat",["fpath","$): in:","locin","$ undefined"]]]]]],["=","locpath",[".","JSpath","resolve",["presult","locpath"]]]],[["&&",["!=",[".","pathobj","ext"],"$"],["==","locpath","$"]],["=","locpath",[".","parent","locpath"]]],[["&&",[".",["RegExp","$^[.][.]?[/\\\\]"],"test",["fpath"]],[".","parent","locpath"]],["=","locpath",[".","JSpath","join",[[".","parent","locpath"],"locpath"]]]]],[[["not","locpath"],["=","locpath","$"]]],["set.","pathobj",["`","dir"],"locpath"],["=","compname",[".","pathobj","name"]],[[["&&","locpath",["!=","locpath","$"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","locpath"],"locpath"]]]]]],[[["not","modobj"],[["==","modname","$"],["=","modobj","parent"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modname"]]]]]],[[["&&",["not",[".","options","read"]],["not",[".","options","reload"]],["deref",[".","modobj","components"],"compname"]],["return",[".","modobj","exports"]]]],["=","returner",["makeReturner"]],["catch",[["=","extensions",["new",[".","modules","extensions"]]],["loop","false",["=","pathext",[".","extensions","pop","false"]],[["not","pathext"]],["set.","pathobj",["`","ext"],[".","$.","concat",["pathext"]]],["set.","pathobj",["`","base"],[".",[".","pathobj","name"],"concat",[[".","pathobj","ext"]]]],["=","compath",[".","JSpath","format",["pathobj"]]],[[["not","modobj"],["=","modobj",["makeModule","modname"]]]],["=","query",[".","options","query"]],[[["not","query"],["=","query",[".","modules","queryString"]]]],["=","hostpath",[".",[".",[".",[".","js","w"],"location"],"origin"],"concat",[[".","JSpath","dirname",[[".",[".",[".","js","w"],"location"],"pathname"]]]]]],[[[".","options","source"],[["string",[".","options","source"]],["=","presult",[".","options","source"]]],["=",["error","presult"],["call",[".","options","source"],"compath","query"]]],[["identity","hostpath"],["=",["error","presult"],["modWebReadFile","compath","hostpath","query"]]],["=",["error","presult"],["modNodeReadFile","compath"]]],[[[">",["length","presult"],0],[[["==",[".","modobj","locpath"],"$"],["set.","modobj",["`","locpath"],"locpath"]]],[[[".","options","read"],["return","presult"]]],["=","compobj",[".","modobj","makeComponent",["compname",[".","pathobj","base"]]]],[".","modobj","activate","false"],["set.","modobj",["`","data"],"data"],["rdsDriver","presult","compath"],["set.","modobj",["`","data"],"undefined"],["returner"],["set.","compobj",["`","loaded"],"true"],["return",[".","modobj","exports"]]]]],["throw",["Error",[".","$require(","concat",["fpath","$): failed: "]],"compath","error"]],["set[",[".","modobj","components"],"compname","false"],"false"],[[["identity","true"],["ErrorDebuglog",[".","$require(","concat",["fpath","$): exception: "]],"exception"],["set[",[".","modobj","components"],"compname","false"],["returner"],["throw","exception"]]],"false"]]],["set.","modules",["`","defineLoc"],["function","defineLoc",["id","path"],[["not","id"],[".","modules","locations"]],["set[",[".","modules","locations"],"id","path"]]],["set.","modules",["`","defineExt"],["function","defineExt",["ext","reset","false","value"],[[["not","ext"],["=","value",[".","modules","extensions"]]]],[[["identity","reset"],["set.","modules",["`","extensions"],{array:[]}]]],[[["identity","ext"],[".",[".","modules","extensions"],"push",["ext"]],["=","value",[".","modules","extensions"]]]],"value"]],["set.","modules",["`","requireQuery"],["function","requireQuery",["query"],[["not","query"],[".","modules","queryString"]],["set.","modules",["`","queryString"],["modEncodeQuery","query"]]]],["set.","modules",["`","build"],["closure","build","args",["call",["function","lambda",["modname","compname","proc","args","false","modobj","compobj","curactns","presult","returner"],["=","curactns",["nsactive"]],["=","returner",["makeReturner"]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"modname"]]]],[[["identity","modobj"]],[["==",["namespace",["car","curactns"]],"modname"],["=","modobj",["makeModule","modname",["car","curactns"]]]],["=","modobj",["makeModule","modname"]]],[[["not","compname"],["=","compname","modname"]]],["=","compobj",["deref",[".","modobj","components"],"compname"]],[[["not","compobj"],["=","compobj",[".","modobj","makeComponent",["compname"]]]]],["catch",[[[["identity","proc"],[".","modobj","activate","false"],["set.","compobj",["`","loaded"],"false"],["=","presult",["apply","proc",["cons","modobj","compobj","args"]]],["returner"],[["not","presult"],"false"]]],["set.","compobj",["`","loaded"],"true"],[".","modobj","exports"]],[[["identity","true"],["ErrorDebuglog","$module build exception: ","exception"],["returner"],["throw","exception"]]],"false"]],["car","args"],["second","args"],["third","args"],["cdddr","args"]]]],["set.","modules",["`","changeModNS"],["function","changeModNS",["name","create","false","modobj"],["=","name",["tostring","name"]],[[["||",["not","name"],["==","name","$"]],["printline","$modules: ",["keys",[".","modules","list"]]],["return","false"]]],["=","modobj",["find",["function","lambda",["mod"],["==",[".","mod","id"],"name"]]]],[[["not","modobj"],[["identity","create"],["build","name"],["return",["changeModNS","name"]]],["printline","$can't find ","name","$ -- please select from ",["keys",[".","modules","list"]]],["return","false"]]],[".","modobj","activate","false"],[".","modobj","id"]]],["set.","modules",["`","makeModule"],["function","makeModule",["name","exns","false","modobj"],["=","modobj",["Module","modules","name","exns"]],["set[",[".","modules","list"],"name","modobj"],"modobj"]],["set.","modules",["`","destroy"],["function","destroy",["modobj"],["set[",[".","modules","list"],[".","modobj","id"],"undefined"],["delete",[".","modobj","namespace"]],"true"]],"modules"]),e._SetBindingList("modEncodeQuery",["function","modEncodeQuery",["query","false","result","qkeys","item"],[[["not",["dictionary","query"]],["return","query"]]],["=","result",{array:[]}],["=","qkeys",["keys","query"]],["loop","false",[["empty","qkeys"]],["=","item",["pop","qkeys"]],[".","result","push",[[".",[".",[".","js","w"],"encodeURIComponent",["item"]],"concat",["$=",[".",[".","js","w"],"encodeURIComponent",[["deref","query","item"]]]]]]]],["=","result",[".","result","join",["$&"]]],[[">",[".","result","length"],0],[".","$?","concat",["result"]]],"result"]),e._SetBindingList("modAwait",["closure","modAwait",["promise","false","pending"],["=","pending",["new","nonce"]],[".","promise","then",[["function","success",["value"],[".","pending","signal",[["list","false","value"]]]],["function","failure",["error"],[".","pending","signal",[["list","error"]]]]]],[".","pending","wait","false"]]),e._SetBindingList("modWebReadFile",["closure","modWebReadFile",["filename","href","query","false","url","error","response","content"],[[["not","href"],["=","url","filename"]],[[["not",[".","href","endsWith",["$/"]]],["=","href",[".","href","concat",["$/"]]]]],[[[".","filename","startsWith",["$/"]],["=","filename",[".","filename","slice",[1]]]]],["=","url",[".","href","concat",["filename",["modEncodeQuery","query"]]]]],["=",["error","response"],["modAwait",[".",[".","js","w"],"fetch",["url",{dictionary:{$mode:"$cors",$cache:"$no-cache",$credentials:"$same-origin",$headers:{dictionary:{}},$redirect:"$follow",$referrerPolicy:"$no-referrer"}}]]]],[[["!=",[".","response","status"],200],["=","error",["Error","$modWebReadFile failed:","url",[".","response","status"]]]],[["not","error"],["=",["error","content"],["modAwait",[".","response","text","false"]]]]],[["identity","error"],["list","error"]],["list","false","content"]]),e._SetBindingList("modWebParseFile",["closure","modWebParseFile",["filename","href","query","false","error","text"],["=",["error","text"],["modWebReadFile","filename","href","query"]],[["identity","error"],["ErrorDebuglog","error"]],[["&&",[">",["length","text"],0],["rdsDriver","text","filename"]],"filename"]]),e._SetBindingList("modNodeReadFile",["closure","modNodeReadFile",["filename","false","fs","locpath","error","error2","text"],["function","readFileSync",["path","false","pending"],["=","pending",["new","nonce"]],[".","fs","readFile",["path",{dictionary:{$encoding:"$utf8"}},["function","lambda",["error","data"],[[["identity","error"],["=","error",["Error","$modNodeReadFile failed:","path","error"]]]],[".","pending","signal",[["list","error","data"]]]]]],[".","pending","wait","false"]],["=","fs",[".","js","r",["$fs"]]],["=","locpath",[".","JSpath","resolve",[[".","js","d"],"filename"]]],["=",["error","text"],["readFileSync","locpath"]],[[["identity","error"],["=","locpath",[".","JSpath","resolve",[[".","js","d"],"$../","filename"]]],["=",["error2","text"],["readFileSync","locpath"]],[["not","error2"],["=","error","false"]]]],["list","error","text"]]),e._SetBindingList("modNodeParseFile",["closure","modNodeParseFile",["filename","false","error","text"],["=",["error","text"],["modNodeReadFile","filename"]],[["identity","error"],["ErrorDebuglog","error"]],[["&&",[">",["length","text"],0],["rdsDriver","text","filename"]],"filename"]]),e._SetBindingList("modDriver",["closure","modDriver",["text","sourcename","false","package","dialob","errors","source","error","expr"],[[[".","text","startsWith",['$[["NaanPackage"']],["catch",[[[".",[".","js","w"],"JSON"],["=","package",[".",[".",[".","js","w"],"JSON"],"parse",["text"]]]],["=","package",[".",[".",[".","js","g"],"JSON"],"parse",["text"]]]],[[["identity","true"],["ErrorDebuglog","$require(","sourcename","$) package failed: ","exception"],["throw","exception"]]],"false"],[[["identity","package"],["pkgLoad","package"]],["printline","$require(","sourcename","$): package load failed"],"false"],["return"]]],["=","text",[".","text","replace",[["RegExp","$[\\r\\n^]+/(dialect)\\s+(\\w+)(?=[\\r\\n$])","$g"],["function","lambda",["match","cmd","arg","offset","str"],[[["==","cmd","$dialect"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",["arg"]]],[["not","dialob"],["debuglog",[".","$require(","concat",["sourcename","$): dialect ","arg","$ not found"]]]]],["debuglog",[".","$require(","concat",["sourcename","$): /","cmd","$ not understood"]]]],[".","$\n","repeat",[["-",[".",[".","match","split",["$\n"]],"length"],1]]]]]]],[[["not","dialob"],["=","dialob",[".",[".","Naan","runtimelib"],"dialect",[0]]],[["not","dialob"],["throw","$dialect support not available"]]]],["catch",[["=","errors",{array:[]}],["=","source",["new","textstream",[".","text","concat",["$\\r"]]]],["loop","false",["=",["error","expr"],[".","dialob","parse",["source"]]],[[["identity","expr"],["\\$",["evalactive","expr"]]],["=","errors",[".","errors","concat",["error"]]]]]],[[["and",["==",["tostring",["car","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]]],[["identity","true"],["ErrorDebugLog","$require(","sourcename","$) failed: ","exception"],["throw","exception"]]],"false"],[["==",[".","errors","length"],0],"true"],["printline","$Errors from require(","sourcename","$):"],["=","errors",[".","errors","reverse","false"]],["loop","false",[["==",[".","errors","length"],0]],["printline",[".","dialob","parseErrorString",[[".","errors","pop","false"]]]]],"false"]),e._SetBindingList("letlocal",["macro","letlocal","names",["call",["function","lambda",["false","localname","curac","syms"],["=","curac",["nsactive"]],["nsactive",["list",["car","curac"]]],["loop","false",[["atom","names"]],["=","localname",["pop","names"]],["=","syms",["cons",["compress","localname"],"syms"]]],["nsactive","curac"],["reverse","syms"]]]]),e._SetBindingList("letimport",["function","letimport","names",["call",["function","lambda",["false","item","count"],["function","import1",["source","localname","false","curac","sym"],[["not","source"],["debuglog","$letimport: source undefined:","source"]],[["not",["deref",[".",[".",["nsactive","true"],1],"index"],"localname"]],["=","curac",["nsactive"]],["nsactive",["list",["car","curac"]]],["=","sym",["compress","localname"]],["nsactive","curac"],[[["getproc","source"],["copyproc","sym","source"]],[["||",["procedure","source"],["xobject","source"]],["assign","sym","source"]],["debuglog","$letimport: no procedure binding:","source"],["return"]],["=","count",["+","count",1]]]],["function","importCat",["category","false","item","exlist","source"],[["not",["dictionary","category"]],["debuglog","$letimport: invalid category:","category"]],["=","exlist",["keys","category"]],["loop","false",[["empty","exlist"]],["=","item",["pop","exlist"]],["=","source",["xget","category","item"]],[[["||",["symbol","source"],["tuple","source"],["xobject","source"]],["import1","source",["tostring",["unintern","item"]]]],[["dictionary","source"],["importCat","source"]],["debuglog","$letimport: invalid category entry:",["keys","category"],"item"]]]],["=","count",0],["loop","false",[["empty","names"]],["=","item",["pop","names"]],[[["not",["atom","item"]],[["and",["==",["length","item"],2],["atom",["car","item"]],["string",["second","item"]]],["import1",["car","item"],["second","item"]]],["debuglog","$letimport: invalid pair:","item"],"false"],[["getproc","item"],["import1","item",["tostring",["unintern","item"]]]],[["dictionary","item"],["importCat","item"]],["debuglog","$letimport: invalid source:","item"]]],"count"]]]),e._SetBindingList("makeExport",["function","makeExport",["syms","false","result","sym"],["=","result",["new","dictionary"]],["loop","false",[["empty","syms"]],["=","sym",["pop","syms"]],["xset","result","sym","sym"]],"result"]),e._SetBindingList("makeReturner",["closure","makeReturner",["nslist","false","checkns","targns"],["=","checkns",["nsrights"]],[[["not","nslist"],["=","nslist",["nsactive"]]]],["=","targns",["car","nslist"]],["enclose",["function","lambda","false",[["eq","checkns",["nscaller"]],["nsactive","nslist"]]],"targns"]]),e._SetBindingList("loadNotify",["function","loadNotify",["recipient"],[[["not",["member","recipient","notifyList"]],["push","recipient","notifyList"]]],"true"]),e._SetBindingList("loadTrap",["function","loadTrap",["false","trav","tell"],["=","tell",[".","notifyList","reverse"]],["while","false",[["not",["tuple","tell"]]],["=","trav",["pop","tell"]],["call","trav"]]]),e._SetBindingList("saveNotify",["function","saveNotify",["recipient"],[[["not",["member","recipient","saveNotifyList"]],["push","recipient","saveNotifyList"]]],"true"]),e._SetBindingList("SaveTrap",["function","SaveTrap",["false","trav","tell"],["=","tell",[".","saveNotifyList","reverse"]],["while","false",[["not",["tuple","tell"]]],["=","trav",["pop","tell"]],["call","trav"]]]),e._SetBindingList("jsReload",["function","jsReload",["false","wsg"],["=","wsg",["||",[".","js","w"],[".","js","s"],[".","js","g"]]],["=","JSpath",[".","js","r",["$path"]]],["=","JSONstringify",[".",[".","wsg","JSON"],"stringify"]],["=","JSONparse",[".",[".","wsg","JSON"],"parse"]]]),e._SetValue("NaanBuildComponent",{dictionary:{$filename:"$Module.nlg",$name:"$Module",$manifest:["Component","Module","Modules","modEncodeQuery","modAwait","modWebReadFile","modWebParseFile","modNodeReadFile","modNodeParseFile","modDriver","letlocal","letimport","makeExport","makeReturner","loadNotify","loadTrap","saveNotify","SaveTrap","jsReload","NaanBuildComponent","ModuleInit"]}}),e._SetBindingList("ModuleInit",["closure","ModuleInit",["false","modules","naanMod","utilMod"],["function","findNS",["nsid","false","allns","nsns"],["=","allns",["nsactive","true"]],["loop","false",[["empty","allns"]],["=","nsns",["pop","allns"]],[["==",["namespace","nsns"],"nsid"],"nsns"]]],["function","modlist","false",[".","modules","list"]],["jsReload"],["loadNotify","jsReload"],["=","modules",["Modules"]],["=","naanMod",[".","modules","makeModule",["$Naan","false",["findNS","$NaanRoot"]]]],["=","utilMod",[".","modules","makeModule",["$Util","naanMod",["nsrights"]]]],["set.",[".","utilMod","components"],["`","Module"],["Component","utilMod",[".","NaanBuildComponent","name"]]],["set.",[".",[".","utilMod","components"],"Module"],["`","loaded"],"true"],["set.",[".",[".","utilMod","components"],"Module"],["`","manifest"],[".","NaanBuildComponent","manifest"]],["set.",[".","Naan","module"],["`","require"],[".",[".","modules","require"],1]],["set.",[".","Naan","module"],["`","defineLoc"],[".",[".","modules","defineLoc"],1]],["set.",[".","Naan","module"],["`","defineExt"],[".",[".","modules","defineExt"],1]],["set.",[".","Naan","module"],["`","requireQuery"],[".",[".","modules","requireQuery"],1]],["set.",[".","Naan","module"],["`","build"],[".",[".","modules","build"],1]],["set.",[".","Naan","module"],["`","letinherit"],[".",[".","modules","letinherit"],1]],["set.",[".","Naan","module"],["`","chns"],[".",[".","modules","changeModNS"],1]],["set.",[".","Naan","module"],["`","letimport"],"letimport"],["set.",[".","Naan","module"],["`","export"],"makeExport"],["set.",[".","Naan","module"],["`","letlocal"],"letlocal"],["set.",[".","Naan","module"],["`","modlist"],"modlist"],["set.",[".","Naan","module"],["`","nodeparse"],"modNodeParseFile"],["set.",[".","Naan","module"],["`","webparse"],"modWebParseFile"],["=","LoadTrap","loadTrap"],["set.",[".","Naan","module"],["`","LoadNotify"],"loadNotify"],["set.",[".","Naan","module"],["`","SaveNotify"],"saveNotify"],["xlock",[".","Naan","module"],["car",["nsactive"]]],["sudo",["putproc","rdsDriver",["enclose",["getproc","modDriver"],["car",["nsactive","true"]]]]],"true"]),e._Execute(["ModuleInit"]),e._AddPropertyList("bt",[["$lingoDriver","bt"],["$escape","bt"],["$debugger","bt"],["$debugexception","bt"],["$driver","bt"],["$evalactive","break"]]),e._SetBindingList("debugCon",["closure","debugCon",["false","debug","nslist","defCommander"],["=","debug",["new","object","this"]],["=","nslist",["nsactive","true"]],["set.","debug",["`","nshidden"],["list",[".","nslist",0],[".","nslist",1],[".",[".",[".",[".","module","owner"],"list"],"Lib"],"namespace"]]],["set.","debug",["`","breakpoints"],{dictionary:{}}],["set.","debug",["`","bpenable"],"true"],["function","dsave",["false","saveob"],["=","saveob",{dictionary:{}}],["set.","saveob",["`","curns"],["nsactive"]],[[["not",["positive","debugDepth"]],["=","debugDepth",1],[".",[".","js","t"],"Saving",["false"]]],["preadjust","debugDepth","+",1]],"saveob"],["function","drestore",["saveob"],[[["==",["preadjust","debugDepth","-",1],0],[".",[".","js","t"],"Saving",["true"]]]],["nsactive",[".","saveob","curns"]],"saveob"],["function","insertns",["curns"],[["not",["rest","curns"]],["cons",["nsrights"],"curns"]],["cons",["first","curns"],["insertns",["rest","curns"]]]],["function","clearframes","false",["set.","debug",["`","entrystack"],"false"],["set.","debug",["`","frames"],{array:[]}]],["function","storeframes",["all","false","procount","framex","framelist","frame","status"],["function","evaluate",["expr"],["eval","expr"]],[["not",[".","debug","entrystack"]],["=","procount",0],["set.","debug",["`","entrystack"],["stacktrace"]],[[["identity","all"],["=","framex",1]],["=","framex",["stepframe",[".","debug","entrystack"]]]],["set.","debug",["`","frames"],{array:[]}],["=","framelist",["deref",[".","debug","entrystack"],["-",["-","framex"],1]]],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["procedure","frame"],[[["not","all"],["=","status",["get","bt",["procname",[".",[".","frame",3],1]]]],[[["eq","status","bt"],["continue"]]],[["&&",[">","procount",0],["eq","status",["`","break"]]],["break"]]]],["preadjust","procount","+",1]]],[".",[".","debug","frames"],"push",["frame"]]],[["==","procount",0],[".",[".","debug","frames"],"push",[["list",["`","function"],"evaluate",[".",[".","evaluate","proc"],-3],[".","evaluate","proc"]]]]]]],["function","stepframe",["stack","false","framex","framelist","frame","found","debugout"],["=","framex",0],["=","framelist","stack"],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["&&","debugout",["==",[".","frame",0],"interrupt"]],[["||",["==",[".","frame",2],"$steptrap"],["==",[".","frame",2],"$breakpoint"]],["=","found","framex"],["break"]],[["&&",["not",["eq","exception",["`","exception"]]],["==",[".","frame",2],"$exception-hook"]],["=","found",["+","framex",1]],["break"]]],[["&&",["member",[".","frame",0],["`",["function","closure"]]],["member",[".","frame",1],["`",["debugBlock","startException","startEscape","start"]]]],["=","debugout","true"],["=","found","framex"]],[["&&",["==",[".","frame",0],["`","function"]],["==",[".","frame",1],["`","debugger"]]],["=","found","framex"],["break"]]],["preadjust","framex","+",1]],"found"],["function","procframe",["stack","startx","false","frame"],["loop","false",["=","frame",["deref","stack","startx"]],[[["not","frame"],["return","false"]]],[["procedure","frame"]],["preadjust","startx","+",1]],"startx"],["function","intrap",["false","framelist","frame"],["=","framelist",["stacktrace"]],["loop","false",[["atom","framelist"]],["=","frame",["pop","framelist"]],[[["==",[".","frame",0],"interrupt"],[["||",["==",[".","frame",2],"$steptrap"],["==",[".","frame",2],"$breakpoint"]],["return",[".","frame",2]]]]]],"false"],["function","steppedover",["dict","false","stack","curframe","origframe","procdex"],["=","curframe",["stepframe",["=","stack",["stacktrace"]]]],["=","origframe",["-",["length","stack"],[".","debug","nextOffset"]]],["=","procdex",["procframe","stack","curframe"]],["set.","debug",["`","nextOffset"],"false"],[[["||",["not","procdex"],[">","procdex","origframe"]],["return","false"]]],[[["==","procdex",["procframe","stack",["+","origframe",1]]],["return","false"]]],[[["stacktrap",["+","procdex",1],0,"debugBlock"],["return"]]],"false"],["function","brokeover",["dict","false","resume"],["=","resume",[".",[".","debug","breakHitDict"],"resume"]],["set.",[".","debug","breakHitDict"],["`","resume"],"undefined"],["set.",[".","debug","breakHitDict"],["`","enable"],"true"],["set.","debug",["`","breakHitDict"],"false"],"resume"],["function","checkReady","false",["!=",[".",[".",[".","js","t"],"termlist"],"length"],0]],["set.","debug",["`","depth"],["function","depth","false","debugDepth"]],["set.","debug",["`","procname"],["function","procname",["name","false","parent"],["=","parent",["deref",["@","name"],["`","\\.parent"]]],["=","name",["tostring","name"]],[["identity","parent"],[".",["procname","parent"],"concat",["$.","name"]]],"name"]],["set.","debug",["`","insideProc"],["function","insideProc",["false","frames","frame"],["=","frames",["new",[".","debug","frames"]]],["loop","false",[["==",[".","frames","length"],0]],["=","frame",[".","frames","shift","false"]],[[["procedure","frame"],["return",[".","frame",3]]]]],"false"]],["set.","debug",["`","frameProcTask"],["function","frameProcTask",["frame","false","frames","ftrav","procdef","bodydef"],[[["not",["array",[".","debug","frames"]]],["return","false"]]],["=","frames",["new",[".","debug","frames"]]],["loop","false",[["==",[".","frames","length"],0]],["=","ftrav",[".","frames","shift","false"]],[[["eq","ftrav","frame"],["=","frame","false"]]],[[["procedure","ftrav"],[[["not","frame"],["=","procdef",[".","ftrav",3]],[[["not","bodydef"],["=","bodydef","procdef"]]],["break"]]],["=","bodydef","false"]],[["||",["==",[".","ftrav",0],["`","body"]],["==",[".","ftrav",0],["`","loop"]]],[["not","bodydef"],["=","bodydef",[".","ftrav",2]]]]]],[["identity","procdef"],["list","procdef","bodydef"]]]],["set.","debug",["`","debugBlock"],["closure","debugBlock",["arg1","arg2","arg3","false","saveob","savech","savecmd","entry"],[[[">=","debugDepth",1],["set.","debug",["`","entrystack"],"false"],["storeframes","true"]],["storeframes"]],["=","saveob",["dsave"]],["=","savech",["textstreams"]],["nsactive",["insertns",[".","saveob","curns"]]],["=","savecmd",{dictionary:{}}],[".",[".","debug","commander"],"entering",["savecmd"]],["catch",[[[["string","arg1"],["=","entry","arg1"]],["=","entry",["intrap"]],[["==","entry","$steptrap"],[[[".","debug","breakHitDict"],[["brokeover","arg1"],["return"]]]],[[".","debug","nextOffset"],[["steppedover","arg1"],["return"]]],[[".","debug","startPause"],["set.","debug",["`","startPause"],"false"],["=","entry","$startpause"]]],[["==","entry","$breakpoint"],[[["not",[".","debug","bpenable"]],["return"]]],["set.","debug",["`","breakHitDict"],"arg1"]],[["not","entry"],["=","entry","$"]]],["set.","debug",["`","nextOffset"],"false"],["loop","false",[[".",[".","debug","commander"],"pauser",["entry","arg1","arg2","arg3"]]]]],"false",[[".",[".","debug","commander"],"leaving",["savecmd"]],["textstreams","savech"],["drestore","saveob"],[[[".","debug","bpenable"],["breakpoint","true"]]],["clearframes"]]]]],["function","skipbreak","false",["set.",[".","debug","breakHitDict"],["`","enable"],"false"]],["set.","debug",["`","resume"],["function","resume","false",[[".",[".","debug","breakHitDict"],"enable"],["set.",[".","debug","breakHitDict"],["`","resume"],"true"],["skipbreak"],["stacktrap",["stepframe",["stacktrace"]],1,"debugBlock"]]]],["set.","debug",["`","step"],["function","step",["nstep","false","stack","stackdex","task"],["=","stackdex",["stepframe",["=","stack",["stacktrace"]]]],["=","task",[".",[".",["deref","stack","stackdex"],3],2]],[[["&&",["symbol",[".","task",0]],["member",[".",[".",[".",[".","task",0],"proc"],1],"namespace"],[".","debug","nshidden"]]],["return",["stepover"]]]],["set.","debug",["`","nextOffset"],"false"],["skipbreak"],["stacktrap",["stepframe",["stacktrace"]],"nstep","debugBlock"]]],["set.","debug",["`","stepup"],["function","stepup",["false","stack","stackdex","found"],["set.","debug",["`","nextOffset"],"false"],["skipbreak"],["=","stackdex",["stepframe",["=","stack",["stacktrace"]]]],["loop","false",[[[">=","stackdex",["length","stack"]],["return"]]],[[["procedure",["deref","stack","stackdex"]],[[["get","bt",["procname",[".",[".",["deref","stack","stackdex"],3],1]]],["return"]]],[[["identity","found"],["break"]]],["=","found","stackdex"]]],[[["eq",["deref","stack",0],["`","loop"]],["=","found","stackdex"]]],["preadjust","stackdex","+",1]],["stacktrap","found",0,"debugBlock"]]],["set.","debug",["`","stepover"],["function","stepover",["false","stack","curframe"],["skipbreak"],["=","curframe",["stepframe",["=","stack",["stacktrace"]]]],["set.","debug",["`","nextOffset"],["-",["length","stack"],"curframe"]],[[["stacktrap","curframe",1,"debugBlock"],["return","true"]]],["set.","debug",["`","nextOffset"],"false"]]],["set.","debug",["`","quit"],["function","quit","false",["sudo",["=","exception",["`","exception"]]],["throw","debugger"]]],["set.","debug",["`","startEscape"],["function","startEscape","false",[[["not",["checkReady"]],["debuglog","$debug.startEscape: can't enter debugger before terminal is ready"],["return"]]],["storeframes"],["debugBlock","$escape"]]],["set.","debug",["`","startException"],["function","startException",["except"],[[["not",["checkReady"]],[[["ErrorObject","except"],["=","except",["ErrorString","except"]]]],["debuglog","$debug.startException: debugger not ready for","except"],["return"]]],["storeframes"],["set.","debug",["`","startExcept"],"except"],["debugBlock","$exception","except"]]],["set.","debug",["`","start"],["function","start",["pause"],[[["not",["checkReady"]],["debuglog","$debug.start: can't enter debugger before terminal is ready"],["return"]]],["storeframes"],[["identity","pause"],["set.","debug",["`","startPause"],"true"],[[["stacktrap",["stepframe",["stacktrace"]],0,"debugBlock"],["return"]]],["debugBlock","$startfail"]],["debugBlock","$"]]],["set.","debug",["`","setDefCommander"],["function","setDefCommander",["commander"],["=","defCommander","commander"],[["not",[".","debug","commander"]],["set.","debug",["`","commander"],"defCommander"]]]],["set.","debug",["`","setCommander"],["function","setCommander",["commander"],[["not","commander"],["set.","debug",["`","commander"],"defCommander"]],[".",[".","debug","commander"],"endPauser","false"],["set.","debug",["`","commander"],"commander"]]],["set.","debug",["`","breakHit"],["function","breakHit",["where","value","false","keylist","bpid","entry","result"],["=","keylist",["keys",[".","debug","breakpoints"]]],["loop","false",["=","bpid","false"],[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],[["eq",[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"],[".","where","task"]]]],[[["not",["deref",[".","debug","breakpoints"],"bpid"]],["breakpoint",[".","where","task"],"undefined"],[".","debug","resume","false"],["return","false"]]],["=","entry",["deref",[".","debug","breakpoints"],"bpid"]],["preadjust",[".","entry","hitcount"],"+",1],[[[".","entry","conditional"],[[["procedure",[".","entry","conditional"]],["=","result",["call",[".","entry","conditional"],[".","entry","hitcount"],[".","entry","value"]]]],["=","result",["eval",[".","entry","conditional"]]]],[["not","result"],[".","debug","resume","false"],["return","false"]]]],"bpid"]],["function","breakTasks",["procdef","task","false","taskpath","above","below","pardef","procs","tasks"],["=","taskpath",["tuplepath","procdef","task"]],["=","above",["new","array","taskpath"]],["loop","false",["=","pardef",["apply",["`","."],["list","procdef",["totuple","above"]]]],[[["member",[".","pardef",0],["`",["closure","macro"]]],["=","procs",["instances",[".","pardef",1]]],[[["not","procs"],["return","task"]]],["=","tasks",{array:[]}],["while","false",[["not",["tuple","procs"]]],["=","task",["apply",["`","."],["list",[".",["pop","procs"],"proc"],"below"]]],[[["identity","task"],[".","tasks","push",["task"]]]]],["return","tasks"]]],[["==",[".","above","length"],0]],["push",[".","above","pop","false"],"below"]],"task"],["set.","debug",["`","breakAdd"],["function","breakAdd",["procdef","task","expr","false","firstid","keylist","bpid","tasks","bpdict"],["=","firstid",0],["=","keylist",["keys",[".","debug","breakpoints"]]],["loop","false",[["not",["member",["tostring",["preadjust","firstid","+",1]],"keylist"]]]],["loop","false",[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],["=","bpdict",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"]],[[["eq",[".","bpdict","task"],"task"],["set.","bpdict",["`","conditional"],"expr"],["set.","pbdict",["`","hitcount"],0],["return","bpid"]]]],["=","tasks",["breakTasks","procdef","task"]],["=","bpdict",["breakpoint","tasks",[".","debug","debugBlock"]]],["set.","bpdict",["`","task"],"task"],[[["not","bpdict"],["return","false"]]],["set.","bpdict",["`","breakID"],"firstid"],["set[",[".","debug","breakpoints"],"firstid",{dictionary:{$procdef:"procdef",$where:"bpdict",$hitcount:0,$conditional:"expr"}}],"firstid"]],["set.","debug",["`","breakClear"],["function","breakClear",["procdef","task","false","keylist","tasks","bpid"],["=","keylist",["keys",[".","debug","breakpoints"]]],["=","tasks",["breakTasks","procdef","task"]],["loop","false",[["atom","keylist"]],["=","bpid",["toint",["pop","keylist"]]],[[[">=",[".","tasks","indexOf",[[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"]]],0],["breakpoint","tasks","undefined"],["set[",[".","debug","breakpoints"],"bpid","undefined"],["return","true"]]]],"false"]],["set.","debug",["`","breakDelete"],["function","breakDelete",["bpid","false","tasks"],[[["not",["deref",[".","debug","breakpoints"],"bpid"]],["return","false"]]],["=","tasks",["breakTasks",[".",["deref",[".","debug","breakpoints"],"bpid"],"procdef"],[".",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"],"task"]]],["breakpoint","tasks","undefined"],["set[",[".","debug","breakpoints"],"bpid","undefined"],"true"]],["set.","debug",["`","breakAble"],["function","breakAble",["bpid","enabled","false","bpdict"],["=","bpdict",[".",["deref",[".","debug","breakpoints"],"bpid"],"where"]],[["identity","enable"],["set.","bpdict",["`","enable"],"true"]],["set.","bpdict",["`","enable"],"false"]]],["set.","debug",["`","breakGlobalAble"],["function","breakGlobalAble",["enable"],[[["identity","enable"],["set.","debug",["`","bpenable"],"true"]],["set.","debug",["`","bpenable"],"false"]],["breakpoint",[".","debug","bpenable"]]]],"debug"]),e._SetBindingList("debugger",["function","debugger",["pause"],[".",["DebugController"],"start",["pause"]]]),e._SetBindingList("debugescape",["function","debugescape","false",[".",["DebugController"],"startEscape","false"]]),e._SetBindingList("debugexception",["function","debugexception","false",[[["and",["==",["tostring",["first","exception"]],"$internal"],["==",["tostring",["second","exception"]],"$end-of-file"]],["return"]]],[[["==",["tostring","exception"],"$driver"],["return"]]],[[["==",["tostring","exception"],"$debugger"],["return"]]],[[["==",["tostring","exception"],"$DebuggerREPL"],["return"]]],[".",["DebugController"],"startException",["exception"]]]),e._SetBindingList("DebugController",["function","DebugController","false",[[["eq","ndbController",["`","ndbController"]],["=","ndbController",["debugCon"]]]],"ndbController"]),e._AddPropertyList("DebugInit",[["$.lingoInit","true"]]),e._SetBindingList("DebugInit",["function","DebugInit",["false","manifest"],["=","manifest",["`",["bt","debugCon","debugger","debugescape","debugexception","DebugController","DebugInit"]]],[".",[".","Naan","module"],"build",["$Util","$Debug",["function","lambda",["modobj","compobj"],["=","ndbController",["`","ndbController"]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","DebugController"],"DebugController"],["set.",[".","modobj","exports"],["`","debugger"],"debugger"],[["symbol","NideBuild"],["sudo",["moveproc","debugescape",["`","escape"]]],["sudo",["moveproc","debugexception",["`","exception"]]],["sudo",["set.",[".","Naan","debug"],["`","debugger"],"debugger"]]]]]]]),e._Execute(["DebugInit"]),e._SetBindingList("NaanError",["closure","NaanError",["false","nerr"],["=","nerr",["new","object","this"]],["set.","nerr",["`","errorID"],"$Naan Error"],["set.","nerr",["`","debug"],"false"],["function","procname",["name","defns","false","parent","strname"],["=","parent",["deref",["@","name"],["`","\\.parent"]]],[[["lambda","name"],["=","strname","$()"]],["=","strname",[".","name","tostring","false"]]],[["identity","parent"],[".",["procname","parent","defns"],"concat",["$.","strname"]]],[["!=",[".","name","namespace"],"defns"],[".",[".",[".","name","namespace"],"tostring"],"concat",["$::","strname"]]],"strname"],["function","trace",["exclude","defns","false","stack","frame","output"],["=","stack",["stacktrace"]],["=","output",{array:[]}],["loop","false",[["atom","stack"]],["=","frame",["pop","stack"]],[[["procedure","frame"],[["<=",["postadjust","exclude","-",1],0],[".","output","push",[["procname",[".",[".","frame",3],1],"defns"]]]]],[["==",[".","frame",0],["`","interrupt"]],[".","output","push",["$[interrupt]"]],["break"]]]],[".",[".","output","reverse","false"],"join",["$ / "]]],["set.","nerr",["`","createError"],["function","createError",["parts","ns","false","nanerr","part","lastparts","badarray"],["function","addToHistory",["item","false","hist","keylist","key","history"],[[["||",["not",[".","nanerr","history"]],["not",["array",[".","nanerr","history"]]]],["set.","nanerr",["`","history"],{array:[]}]]],["=","hist",{dictionary:{}}],["=","keylist",["keys","item"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["==","key","$history"],["=","history",[".","item","history"]]],[["!=","key","$error"],["set[","hist","key",["deref","item","key"]]]]],[".",[".","nanerr","history"],"push",["hist"]],[".","history","forEach",[["function","lambda",["old"],["addToHistory","old"]]]]],["function","addErrorList",["errs","false","err","etrim","keylist","key"],["loop","false",[["atom","errs"]],["=","err",["pop","errs"]],[[["==",[".","err","error"],[".","nerr","errorID"]],["=","etrim",{dictionary:{}}],["=","keylist",["keys","err"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["&&",["!=","key","$error"],["||",["!=","key","$stack"],["!=",["deref","err","key"],[".","nanerr","stack"]]],["||",["!=","key","$module"],["!=",["deref","err","key"],[".","nanerr","module"]]]],["set[","etrim","key",["deref","err","key"]]]]],[[["||",["not",[".","nanerr","errors"]],["not",["array",[".","nanerr","errors"]]]],["set.","nanerr",["`","errors"],{array:[]}]]],[".",[".","nanerr","errors"],"push",["etrim"]]],["=","badarray","true"]]]],["function","addKeys",["dict","keylist","false","key","dkey"],["while","false",[["not",["tuple","keylist"]]],["=","dkey",["=","key",["pop","keylist"]]],["while","false",[["not",["deref","nanerr","dkey"]]],["=","dkey",[".","dkey","concat",["$_"]]]],[[["deref","item","key"],["set[","nanerr","dkey",["deref","dict","key"]]]]]],["function","addJSerror",["item","false","keylist"],["=","keylist",["keys","item"]],[[["not","keylist"],["=","keylist",["`",["$name","$message"]]]]],["addKeys","item","keylist"]],["=","nanerr",{dictionary:{$error:[".","nerr","errorID"],$occurred:[".","Date","now","false"]}}],["loop","false",[["atom","parts"]],["=","part",["pop","parts"]],[[["xobject","part"],["addJSerror","part"]],[["dictionary","part"],[["==",[".","part","error"],[".","nerr","errorID"]],["addToHistory","part"]],["addKeys","part",["keys","part"]]],[["array","part"],["push","part","lastparts"]],[[".","nanerr","memo"],["set.","nanerr",["`","memo"],[".",[".","nanerr","memo"],"concat",["$ ",["tostring","part"]]]]],["set.","nanerr",["`","memo"],["tostring","part"]]]],["set.","nanerr",["`","stack"],["trace",3,"ns"]],["set.","nanerr",["`","module"],[".",["car",["exists","$module","ns"]],"id"]],["loop","false",[["atom","lastparts"]],["addErrorList",["pop","lastparts"]]],[[["not",[".","nanerr","memo"]],["debuglog","$NaanError.createError: no error memo at",[".","nanerr","stack"]]]],[[["identity","badarray"],["debuglog","$NaanError.createError: ignoring array argument"]]],[[[".","nerr","debug"],["call",["function","ErrorDebuglog","args",[".","nerr","debugError",["args"]]],"$new","nanerr"]]],"nanerr"]],["set.","nerr",["`","toString"],["function","toString",["nanerr","options","false","output","keylist","key","history"],["=","output","$"],["=","keylist",["keys","nanerr"]],["loop","false",[["atom","keylist"]],["=","key",["pop","keylist"]],[[["==","key","$error"]],[["==","key","$occurred"]],[["==","key","$memo"]],[["==","key","$stack"]],[["==","key","$module"]],[["==","key","$history"],["=","history",[".","nanerr","history"]]],[[["!=","output","$"],["=","output",[".","output","concat",["$, "]]]]],["=","output",[".","output","concat",["key","$=",["tostring",["deref","nanerr","key"]]]]]]],[[["identity","history"],[[["!=","output","$"],["=","output",[".","output","concat",["$, "]]]]],["=","output",[".","output","concat",["$«"]]],[".",[".","nanerr","history"],"forEach",[["function","lambda",["item","index"],[[["!=","index",0],["=","output",[".","output","concat",["$ | "]]]]],["=","output",[".","output","concat",[["toString","item",{dictionary:{$memo:"true"}}]]]]]]],["=","output",[".","output","concat",["$»"]]]]],[["&&",[".","options","memo"],[".","nanerr","memo"]],[".",[".","nanerr","memo"],"concat",["$ ","output"]]],"output"]],["set.","nerr",["`","toDescription"],["function","toDescription",["nanerr"],[["!=",[".","nanerr","error"],[".","nerr","errorID"]],["tostring","nanerr"]],[[".","nanerr","memo"],["toString","nanerr",{dictionary:{$memo:"true"}}]],[".","$Error ","concat",[["toString","nanerr"]]]]],["set.","nerr",["`","debugError"],["function","debugError",["args","false","arg","text","nanerr","nanerrs"],["loop","false",[["atom","args"]],["=","arg",["pop","args"]],[[["&&",["dictionary","arg"],["==",[".","arg","error"],[".","nerr","errorID"]]],["=","nanerr","arg"]],[["array","arg"],["=","nanerrs","arg"]],["push","arg","text"]]],["=","text",["reverse","text"]],[[["identity","nanerr"],[[["identity","text"],["=","text",["append","text","$=>"]]],["=","text","$"]],["=","text",["append","text",[".","nerr","toDescription",["nanerr"]]]]],[["&&",["not","text"],"nanerrs"],["=","text",[".",[".",[".","nanerrs","length"],"tostring"],"concat",["$ errors:"]]]]],["apply","debuglog","text"],["loop","false",[["||",["not","nanerrs"],["==",[".","nanerrs","length"],0]]],["=","nanerr",[".","nanerrs","shift","false"]],["=","text",["append","$ ",[".","nerr","toDescription",["nanerr"]]]],["apply","debuglog","text"]]]],"nerr"]),e._SetBindingList("Error",["function","Error","parts",[".","naneErrorManager","createError",["parts",["nscaller"]]]]),e._SetBindingList("ErrorObject",["function","ErrorObject",["err"],["&&",["dictionary","err"],["==",[".","err","error"],"$Naan Error"]]]),e._SetBindingList("ErrorString",["function","ErrorString",["nanerr"],[["string","nanerr"],"nanerr"],[".","naneErrorManager","toString",["nanerr","true"]]]),e._SetBindingList("ErrorDebuglog",["function","ErrorDebuglog","args",[".","naneErrorManager","debugError",["args"]]]),e._AddPropertyList("ErrorInit",[["$.lingoInit","true"]]),e._SetBindingList("ErrorInit",["function","ErrorInit",["false","manifest"],["=","manifest",["`",["NaanError","Error","ErrorObject","ErrorString","ErrorDebuglog","ErrorInit"]]],[".",[".","Naan","module"],"build",["$Util","$Error",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","Error"],"Error"],["set.",[".","modobj","exports"],["`","ErrorObject"],"ErrorObject"],["set.",[".","modobj","exports"],["`","ErrorString"],"ErrorString"],["set.",[".","modobj","exports"],["`","ErrorDebuglog"],"ErrorDebuglog"],["set.",[".","Naan","module"],["`","Error"],"Error"],["set.",[".","Naan","module"],["`","ErrorObject"],"ErrorObject"],["set.",[".","Naan","module"],["`","ErrorString"],"ErrorString"],["set.",[".","Naan","module"],["`","ErrorDebuglog"],"ErrorDebuglog"]]]],["=","naneErrorManager",["NaanError"]]]),e._Execute(["ErrorInit"]),e._SetBindingList("makeSourceString",["function","makeSourceString",["item","false","text","result"],["=","text",["explode","item"]],["=","result",'$"'],[[["string","item"],["=","result",[".","result","concat",["$$"]]]],[["==",["tostring","item"],"$."]],[["or",["eq",["car","text"],"$$"],["eq",["car","text"],"$."],["eq",["car","text"],"$\\"]],["=","result",[".","result","concat",["$\\\\"]]]]],["loop","false",[["empty","text"]],[[["eq",["car","text"],'$"'],["=","result",[".","result","concat",['$\\"']]]],[["eq",["car","text"],"$\\"],["=","result",[".","result","concat",["$\\\\"]]]],[["eq",["car","text"],"$\t"],["=","result",[".","result","concat",["$\\t"]]]],[["eq",["car","text"],"$\n"],["=","result",[".","result","concat",["$\\n"]]]],[["eq",["car","text"],"$\r"],["=","result",[".","result","concat",["$\\r"]]]],[["eq",["car","text"],"$\b"],["=","result",[".","result","concat",["$\\b"]]]],[["eq",["car","text"],"$\f"],["=","result",[".","result","concat",["$\\f"]]]],[["eq",["car","text"],"$\v"],["=","result",[".","result","concat",["$\\u000b"]]]],[["eq",["car","text"],"$\0"],["=","result",[".","result","concat",["$\\u0000"]]]],["=","result",[".","result","concat",[["car","text"]]]]],["=","text",["cdr","text"]]],[".","result","concat",['$"']]]),e._SetBindingList("pkgSave",["function","pkgSave",["pkgname","roots","options","false","pkgns","goodns","registry","xlate","storenum","wmapSymbol","wmapUnintern","mapString","mapInteger","mapFloat","wmapArray","wmapDictionary","mapList","wmapProcedure","mapDialect","mapBinary","mapXobject","wmapObject","indexValue","listSymbol","listUnintern","listString","listInteger","listFloat","listArray","listDictionary","listList","listProcedure","listDialect","listBinary","listXobject","listObject","reported"],["function","store",["expr","false","key","exlist","dialect"],[["symbol","expr"],[[["&&","expr",["not",["interned","expr"]],["not",["member","expr","roots"]]],[[["deref","wmapUnintern","expr"]],["set[","wmapUnintern","expr",["preadjust","storenum","+",1]],["push","expr","listUnintern"],["set[","indexValue","storenum","expr"],"storenum"],["return"]]],[[["&&","expr",["not",["member",[".","expr","namespace"],"goodns"]]],["=","dialect",[".","registry","findNamespace",[[".","expr","namespace"]]]],[[["identity","dialect"],["=","key",["store",["list",[".","dialect","name"],[".","expr","tostring"]]]],[[["deref","mapDialect","key"]],["set[","mapDialect","key",["preadjust","storenum","+",1]],["push","key","listDialect"],["set[","indexValue","storenum","key"],"storenum"],["return"]]],[["defbinding","expr"],[["not",["eq",["defbinding","expr"],[".","expr","proc"]]],["debuglog","$pkgSave: cannot save non-default binding for well-known symbol ","expr"],["set[","reported","expr","true"]]],[["&&",["not",[".","options","nsignore"]],["not",["deref","reported","expr"]]],["debuglog","$pkgSave: cannot save ",[".","expr","namespace"],"$ from ","pkgns","$ for symbol ","expr"],["set[","reported","expr","true"]]]],[[["eq","expr","undefined"],["=","expr","$undefined"]]],[["deref","wmapSymbol","expr"]],["set[","wmapSymbol","expr",["preadjust","storenum","+",1]],["push","expr","listSymbol"],["set[","indexValue","storenum","expr"],"storenum"],[["string","expr"],[["deref","mapString","expr"]],["set[","mapString","expr",["preadjust","storenum","+",1]],["push","expr","listString"],["set[","indexValue","storenum","expr"],"storenum"],[["integer","expr"],["=","key",["tostring","expr"]],[["deref","mapInteger","key"]],["set[","mapInteger","key",["preadjust","storenum","+",1]],["push","key","listInteger"],[[["<","expr",[".","Number","$MAX_SAFE_INTEGER"]],["set[","indexValue","storenum","expr"]],["set[","indexValue","storenum","key"]],"storenum"],[["float","expr"],["=","key",["tostring","expr"]],[["deref","mapFloat","key"]],["set[","mapFloat","key",["preadjust","storenum","+",1]],["push","key","listFloat"],["set[","indexValue","storenum","expr"],"storenum"],[["array","expr"],[["deref","wmapArray","expr"]],["=","exlist","false"],["=","key",0],["loop","false",[[">=","key",[".","expr","length"]]],["push",["deref","expr",["postadjust","key","+",1]],"exlist"]],["=","key",["store",["reverse","exlist"]]],["set[","wmapArray","expr",["preadjust","storenum","+",1]],["push","expr","listArray"],["set[","indexValue","storenum","key"],"storenum"],[["dictionary","expr"],[["deref","wmapDictionary","expr"]],["=","key",["store",["objToList","expr"]]],["set[","wmapDictionary","expr",["preadjust","storenum","+",1]],["push","expr","listDictionary"],["set[","indexValue","storenum","key"],"storenum"],[["tuple","expr"],[["&&",["procedure","expr"],["eq",[".",[".","expr",1],"proc"],"expr"]],["storeProcedure","expr"]],["storeList","expr"]],[["xobject","expr"],[["IsBinary","expr"],["=","key",["HashMD5","expr"]],[["not","key"],["debuglog",["strcat","$pkgSave: cannot save binary - ","expr"]],1],[["deref","mapBinary","key"]],["set[","mapBinary","key",["preadjust","storenum","+",1]],["push","key","listBinary"],["set[","indexValue","storenum",["EncodeBase64","expr"]],"storenum"],["=",["error","key"],["JsonStringify","expr"]],[["identity","error"],["ErrorDebuglog",["strcat","$pkgSave: cannot save xobject - ","expr"],"error"],1],[["deref","mapXobject","key"]],["set[","mapXobject","key",["preadjust","storenum","+",1]],["push","key","listXobject"],["set[","indexValue","storenum","key"],"storenum"],[["object","expr"],[["deref","wmapObject","expr"]],["=","key",["storeObject","expr"]],["set[","wmapObject","expr",["preadjust","storenum","+",1]],["push","expr","listObject"],["set[","indexValue","storenum","key"],"storenum"],[[["not",["deref","reported","expr"]],["debuglog",["strcat","$pkgSave: cannot save type ",["typeof","expr"],"$ - ","expr"]],["set[","reported","expr","true"]]],1],["function","storeList",["exlist","false","result","left","key"],["=","key",{array:[]}],["=","exlist",["reverse","exlist"]],["loop","false",[["empty","exlist"]],["=","left",["store",["pop","exlist"]]],["push","left","result"],[".","key","push",["left"]]],["=","key",[".","key","join",["$,"]]],[["deref","mapList","key"]],["set[","mapList","key",["preadjust","storenum","+",1]],["push","key","listList"],["set[","indexValue","storenum","result"],"storenum"],["function","storeProcedure",["procdef","false","key"],[[["builtin","procdef"],["return",["store",["tostring","procdef"]]]]],[["deref","wmapProcedure",[".","procdef",1]]],["=","key",["storeList","procdef"]],["set[","wmapProcedure",[".","procdef",1],["preadjust","storenum","+",1]],["push",[".","procdef",1],"listProcedure"],["set[","indexValue","storenum","key"],"storenum"],["function","storeObject",["obj","false","ident"],["=","ident",["call",[".","options","objectEncoder"],"obj"]],[[["not","ident"],["=","ident",{dictionary:{$name:["||",["get","obj","\\.closure"],"undefined"]}}]]],["store","ident"]],["function","objToList",["obj","false","keylist","trav","datlist"],["=","trav",["=","keylist",["xkeys","obj"]]],["loop","false",[["empty","trav"]],["push",["deref","obj",["pop","trav"]],"datlist"]],["list","keylist",["reverse","datlist"]]],["function","saveSymbol",["sym","sites","false","proc","props"],["=","proc",["getproc","sym"]],["=","props",["cdr","sym"]],[[["dictionary","props"],["=","props",["new","props"]],["set.","props",["`","\\.children"],"undefined"],["set.","props",["`","\\.parent"],"undefined"],[[["not",[".","options","comments"]],["set.","props",["`","\\.sourcemap"],"undefined"]],["set.",[".","props","\\.sourcemap"],["`","map"],"undefined"]],[["==",["length","props"],0],["=","props","false"]]]],["list",["store","sym"],["store",["car","sym"]],["store","props"],["storeProcedure","proc"],["store","sites"]]],["function","makeXlate",["false","rdex"],["function","buildXlate",["typeList","typeMap"],["=","typeList",["reverse","typeList"]],["loop","false",[["empty","typeList"]],["set[","xlate",["deref","typeMap",["pop","typeList"]],["postadjust","rdex","+",1]]]],["=","rdex",0],["=","xlate",["new","dictionary"]],["buildXlate","listSymbol","wmapSymbol"],["buildXlate","listUnintern","wmapUnintern"],["buildXlate","listString","mapString"],["buildXlate","listInteger","mapInteger"],["buildXlate","listFloat","mapFloat"],["buildXlate","listArray","wmapArray"],["buildXlate","listDictionary","wmapDictionary"],["buildXlate","listList","mapList"],["buildXlate","listProcedure","wmapProcedure"],["buildXlate","listDialect","mapDialect"],["buildXlate","listBinary","mapBinary"],["buildXlate","listXobject","mapXobject"],["buildXlate","listObject","wmapObject"],"rdex"],["function","renumber",["exlist","false","output"],[["integer","exlist"],["deref","xlate","exlist"]],[["atom","exlist"],"false"],["=","exlist",["reverse","exlist"]],["while","false",[["not",["tuple","exlist"]]],["push",["renumber",["pop","exlist"]],"output"]],"output"],["function","saveMaps",["false","count","maps"],["function","makeAtom",["typeList","typeMap","false","result"],["loop","false",[["empty","typeList"]],["push",["deref","indexValue",["deref","typeMap",["pop","typeList"]]],"result"],["preadjust","count","+",1]],"result"],["function","makeList",["typeList","typeMap","false","result"],["loop","false",[["empty","typeList"]],["push",["renumber",["deref","indexValue",["deref","typeMap",["pop","typeList"]]]],"result"],["preadjust","count","+",1]],"result"],["=","count",0],["=","maps",["list",["makeAtom","listSymbol","wmapSymbol"],["makeAtom","listUnintern","wmapUnintern"],["makeAtom","listString","mapString"],["makeAtom","listInteger","mapInteger"],["makeAtom","listFloat","mapFloat"],["makeList","listArray","wmapArray"],["makeList","listDictionary","wmapDictionary"],["makeList","listList","mapList"],["makeList","listProcedure","wmapProcedure"],["makeList","listDialect","mapDialect"],["makeAtom","listBinary","mapBinary"],["makeAtom","listXobject","mapXobject"],["makeList","listObject","wmapObject"]]],["cons","count","maps"]],["function","export",["symbols","false","sym","problist","trav","ptrav","plist","pitem","sitesym","symstates","sites"],["=","ptrav",["symlist",["namespace",["car","symbols"]]]],["loop","false",[["empty","ptrav"]],["=","pitem",["pop","ptrav"]],[[["cdr","pitem"],["=","problist",["cons","pitem","problist"]]]]],["=","symbols",["reverse","symbols"]],["=","trav","symbols"],["loop","false",[["empty","trav"]],["=","sym",["pop","trav"]],[[["not",["symbol","sym"]],["throw",["list","$error","pkgSave",["strcat","$non-symbol specified: ","sym"]]]]],[[["and",["eq","pkgns",["namespace","sym"]],["not",["member","sym","omitlist"]]],["=","ptrav",["totuple",["cdr","sym"]]],["loop","false",[["empty","ptrav"]],["=","pitem",["pop","ptrav"]],[[["and",["symbol",["cdr","pitem"]],["not",["member",["cdr","pitem"],"symbols"]]],["=","symbols",["cons",["cdr","pitem"],"symbols"]]]]]]]],["=","symbols",["reverse","symbols"]],["=","trav","symbols"],["loop","false",[["empty","trav"]],["=","sym",["pop","trav"]],["=","sites","false"],["=","ptrav","problist"],["loop","false",[["empty","ptrav"]],["=","sitesym",["pop","ptrav"]],["=","plist",["totuple",["cdr","sitesym"]]],["loop","false",[["empty","plist"]],["=","pitem",["pop","plist"]],[[["or",["eq",["car","pitem"],"sym"],["eq",["cdr","pitem"],"sym"]],["push",["list","sitesym",["car","pitem"],["cdr","pitem"]],"sites"]]]]],["push",["saveSymbol","sym","sites"],"symstates"]],["reverse","symstates"]],["call",["function","lambda",["false","header","rootnum","syms"],["=","options",["merge",{dictionary:{$comments:"true"}},"options"]],["=","reported",["new","weakmap"]],["=","storenum",0],["=","wmapSymbol",["new","weakmap"]],["=","wmapUnintern",["new","weakmap"]],["=","mapString",["new","dictionary"]],["=","mapInteger",["new","dictionary"]],["=","mapFloat",["new","dictionary"]],["=","wmapArray",["new","weakmap"]],["=","wmapDictionary",["new","weakmap"]],["=","mapList",["new","dictionary"]],["=","wmapProcedure",["new","weakmap"]],["=","mapDialect",["new","dictionary"]],["=","mapBinary",["new","dictionary"]],["=","mapXobject",["new","dictionary"]],["=","wmapObject",["new","weakmap"]],["=","indexValue",["new","dictionary"]],[["not","pkgname"],"false"],[["not",["symbol","pkgname"]],["throw",["list","$error","pkgSave",["strcat","$package name not a symbol: ","pkgname"]]]],[["atom","roots"],["throw",["list","$error","pkgSave",["strcat","$no roots specified: ","roots"]]]],["=","pkgns",["namespace","pkgname"]],["=","goodns",["list","pkgns",[".",["nsactive","true"],1]]],["=","registry",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lib"],"exports"],"Registry"]],["store","false"],["=","rootnum",["store","roots"]],["=","syms",["export","roots"]],["makeXlate"],["=","header",["list","$NaanPackage",1,2,"pkgname",[".","options","prereqs"]]],["list","header",["saveMaps"],["renumber","rootnum"],["renumber","syms"]]]]]),e._SetBindingList("pkgDecode",["function","pkgDecode",["pkg","options","false","registry","maxdepth","mapSymbol","mapUnintern","mapString","mapInteger","mapFloat","mapDictionary","mapArray","mapList","mapProcedure","mapDialect","mapBinary","mapXobject","mapObject","cache"],["function","lookupArray",["key","depth","false","exlist","adex","result"],["=","exlist",["lookup",["deref","mapArray","key"],"depth"]],["=","result",["new","array"]],["=","adex",0],["loop","false",[["empty","exlist"]],["set[","result",["postadjust","adex","+",1],["pop","exlist"]]],"result"],["function","lookupDictionary",["key","depth","false","exlist","keylist","datalist","result"],["=","exlist",["lookup",["deref","mapDictionary","key"],"depth"]],["=","result",["new","dictionary"]],["=","keylist",[".","exlist",0]],["=","datalist",[".","exlist",1]],["loop","false",[["empty","keylist"]],["set[","result",["pop","keylist"],["pop","datalist"]]],"result"],["function","lookupList",["key","depth","false","exlist","result"],["=","exlist",["deref","mapList","key"]],["loop","false",[["empty","exlist"]],["=","result",["cons",["lookup",["pop","exlist"],"depth"],"result"]]],["reverse","result"]],["function","lookupProcedure",["key","depth","false","procdef"],["=","procdef",["lookup",["deref","mapProcedure","key"],"depth"]],[["procedure","procdef"],["=","procdef",["enclose","procdef"]]],[["string","procdef"],["=","procdef","procdef"]]],["function","lookupDialect",["key","depth","false","pair","dialect"],["=","pair",["lookup",["deref","mapDialect","key"],"depth"]],["=","dialect",[".","registry","findName",[[".","pair",0]]]],[[["not","dialect"],["throw",[".","$pkgDecode: unregistered dialect: ","concat",[[".","pair",0]]]]]],["deref",[".",[".","dialect","ns"],"symbols"],["deref",[".",[".","dialect","ns"],"index"],[".","pair",1]]]],["function","lookupObject",["key","depth","false","ident","obj"],["=","ident",["lookup",["deref","mapObject","key"],"depth"]],["=","obj",["call",[".","options","objectDecoder"],"ident"]],[[["not","obj"],[[".","ident","name"],["putproc",[".","ident","name"],"false"],["=","obj",["call",["closure","lambda",["nn"],["call",["enclose",["list",["`","closure"],"nn",["`",["local","x"]],["quote",["=","x",["new","object","nn"]]],["quote",["put","x","\\.tostring",["function","lambda","false",["strcat","${blank-proxy ","nn","$}"]]]],["quote",["put","x","\\.undefined",["function","undef","args",["debuglog",["strcat","$call to {blank-proxy ","nn","$}.",[".","args",0],["||",[".","args",-1],"$()"],"$ ignored"]]]]],"x"]]]],[".","ident","name"]]]],["=","obj",["new","object"]]]],"obj"],["function","lookup",["expr","depth","false","key","sexpr","result","cachekey","error","data"],[[["not","expr"],["return","expr"]]],["=","cachekey","expr"],[[["&&",["integer","cachekey"],["defined","cache","cachekey"]],["return",["deref","cache","cachekey"]]]],[[["not","depth"],["=","depth",1]]],["=","key","expr"],["=","result",["loop","false",[[[">","depth","maxdepth"],["throw",[".","$pkgDecode: cycle corruption: ","concat",["expr"]]]]],[["not",["atom","expr"]],["loop","false",[["empty","expr"]],["=","result",["cons",["lookup",["pop","expr"],["+","depth",1]],"result"]]],["reverse","result"]],[["not",["integer","expr"]],["throw",[".","$pkgDecode: can't lookup: ","concat",["expr"]]],"false"],[[["<","key",[".","mapSymbol","length"]],["=","sexpr",["deref","mapSymbol","key"]],[[["&&",["==",[".","options","intern"],"$symbols"],["symbol","sexpr"]],"sexpr"],[["==","sexpr","$undefined"],"undefined"],[["==","sexpr","$null"],"null"],[["||",["==",[".","options","intern"],"true"],["==","key",0],["interned","sexpr"]],["compress","sexpr"]],["unintern","sexpr"]],["break"]]],["preadjust","key","-",[".","mapSymbol","length"]],[["<","key",[".","mapUnintern","length"]],["unintern",["deref","mapUnintern","key"]]],["preadjust","key","-",[".","mapUnintern","length"]],[["<","key",[".","mapString","length"]],["deref","mapString","key"]],["preadjust","key","-",[".","mapString","length"]],[["<","key",[".","mapInteger","length"]],["deref","mapInteger","key"]],["preadjust","key","-",[".","mapInteger","length"]],[["<","key",[".","mapFloat","length"]],["tofloat",["deref","mapFloat","key"]]],["preadjust","key","-",[".","mapFloat","length"]],[["<","key",[".","mapArray","length"]],["lookupArray","key",["+","depth",1]]],["preadjust","key","-",[".","mapArray","length"]],[["<","key",[".","mapDictionary","length"]],["lookupDictionary","key",["+","depth",1]]],["preadjust","key","-",[".","mapDictionary","length"]],[["<","key",[".","mapList","length"]],["lookupList","key",["+","depth",1]]],["preadjust","key","-",[".","mapList","length"]],[["<","key",[".","mapProcedure","length"]],["lookupProcedure","key",["+","depth",1]]],["preadjust","key","-",[".","mapProcedure","length"]],[["<","key",[".","mapDialect","length"]],["lookupDialect","key",["+","depth",1]]],["preadjust","key","-",[".","mapDialect","length"]],[["<","key",[".","mapBinary","length"]],["DecodeBase64",["deref","mapBinary","key"]]],["preadjust","key","-",[".","mapBinary","length"]],[[["<","key",[".","mapXobject","length"]],["=",["error","data"],["JsonParse",["deref","mapXobject","key"]]],[[["identity","error"],["ErrorDebuglog","$pkgDecode: xobject decode failed","error"],"false"],"data"],["break"]]],["preadjust","key","-",[".","mapXobject","length"]],[["<","key",[".","mapObject","length"]],["lookupObject","key",["+","depth",1]]],["throw",[".","$pkgDecode: invalid refnum: ","concat",["expr"]]],[["identity","true"]]]],[["integer","cachekey"],["set[","cache","cachekey","result"]],"result"],["function","recurList",["expr","false","adex","result"],[["||",["array","expr"],["xobject","expr"]],["=","adex",[".","expr","length"]],["loop","false",[["<",["preadjust","adex","-",1],0]],["push",["recurList",["deref","expr","adex"]],"result"]],"result"],"expr"],["call",["function","lambda",["false","pkgname","firstVer","lastVer"],["=","registry",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lib"],"exports"],"Registry"]],["=","firstVer",1],["=","lastVer",2],[[["and",["atom","pkg"],["not",["=","pkg",["recurList","pkg"]]]],["return","$invalid package argument"]]],["=","pkgname",[".",[".","pkg",0],3]],[[["or",["atom","pkg"],["!=",[".",[".","pkg",0],0],"$NaanPackage"],["not","pkgname"],["not",["name","pkgname"]]],["return","$package not recognized"]]],[[["or",[">",[".",[".","pkg",0],1],"lastVer"],["<",[".",[".","pkg",0],2],"firstVer"],["<=",[".",[".","pkg",1],0],0],["<=",["length",[".",[".","pkg",1],1]],0]],["return",[".","$package version not supported: ","concat",[[".",[".","pkg",0],1],"$-",[".",[".","pkg",0],2]]]]]],["=","maxdepth",[".",[".","pkg",1],0]],["=","mapSymbol",["new","array",[".",[".","pkg",1],1]]],["=","mapUnintern",["new","array",[".",[".","pkg",1],2]]],["=","mapString",["new","array",[".",[".","pkg",1],3]]],["=","mapInteger",["new","array",[".",[".","pkg",1],4]]],["=","mapFloat",["new","array",[".",[".","pkg",1],5]]],["=","mapArray",["new","array",[".",[".","pkg",1],6]]],["=","mapDictionary",["new","array",[".",[".","pkg",1],7]]],["=","mapList",["new","array",[".",[".","pkg",1],8]]],["=","mapProcedure",["new","array",[".",[".","pkg",1],9]]],["=","mapDialect",["new","array",[".",[".","pkg",1],10]]],["=","mapBinary",["new","array",[".",[".","pkg",1],11]]],["=","mapXobject",["new","array",[".",[".","pkg",1],12]]],["=","mapObject",["new","array",[".",[".","pkg",1],13]]],["=","cache",{array:[]}],["catch",[["cons",["list","pkgname",["lookup",[".",[".","pkg",0],4]],["lookup",[".",[".","pkg",0],5]],["lookup",[".","pkg",2]]],["lookup",[".","pkg",3]]]],[[["string","exception"],"exception"]],"false"]]]]),e._SetBindingList("pkgExamine",["function","pkgExamine",["pkg","false","exlist","header","state"],["function","printProps",["dict","false","keylist","key"],["=","keylist",["keys","dict"]],["loop","false",[["empty","keylist"]],["=","key",["pop","keylist"]],[[["member","key",["`",["$.sourcemap","$.children","$.parent"]]],["printline","$ ","key"]],["printline","$ ","key","$, ",["xget","dict","key"]]]]],["=","exlist",["pkgDecode","pkg"]],[[["atom","exlist"],["printline",[".","$pkgExamine error:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["newline"],["printline","$=================================================="],["printline","$ package: ",[".","header",0]],["printline","$ version: ",[".","header",1]],["printline","$ prereqs: ",[".","header",2]],["printline","$root symbols: ",[".","header",3]],["printline","$ states: ",["length","exlist"]],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["printline","$invalid symbol: ","state"]],["printline","$=================================================="],["printline","$ name: ",[".","state",0]],["printline","$--------------------------------------------------"],["printline","$ val: ",[".","state",1]],[[["dictionary",[".","state",2]],["printline","$ prop:"],["printProps",[".","state",2]]],["printline","$ prop: ",[".","state",2]]],["printline","$ sites: ",[".","state",4]],[["atom",[".","state",3]],["printline","$ proc: ",[".","state",3]]],["printline","$ proc: "],["printline",[".",[".",[".",[".",[".",[".","Naan","module"],"modlist","false"],"Lingo"],"exports"],"Base"],"print",[[".","state",3]]]]]],["printline","$=================================================="],[".","header",0]]),e._SetBindingList("pkgLoad",["function","pkgLoad",["pkg","options","false","exlist","header","roots","state","sym","sitelist","site","proc"],[[["not","options"],["=","options",{dictionary:{$localroots:"true",$intern:"true",$execute:"true"}}]]],["=","exlist",["pkgDecode","pkg","options"]],[[["atom","exlist"],["debuglog",[".","$pkgLoad error:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["debuglog","$invalid symbol: ","state"]],[[["==",[".","options","intern"],"true"],["=","sym",["compress",[".","state",0]]],[["not",["eq",[".","sym","namespace"],[".",["nsactive"],0]]],[[".","options","localroots"],["=","sym",["car",["letlocal","sym"]]]],["debuglog","$cannot overwrite symbol ","sym","$ in ",[".","sym","namespace"]],["continue"]]],["=","sym",["unintern",[".","state",0]]]],["push","sym","roots"],["assign","sym",[".","state",1]],["=","proc",[".","state",3]],["putproc","sym","proc"],["replacer","sym",[".","state",2]],[[[".","proc",1],["copyann",[".","proc",1],"sym"]]],["=","sitelist",[".","state",4]],["loop","false",[["empty","sitelist"]],["=","site",["pop","sitelist"]],["put",[".","site",0],[".","site",1],[".","site",2]]],[["&&",[".","options","execute"],[".","state",3],["get","sym","$.lingoInit"]],["call","sym"]]]],["reverse","roots"]]),e._SetBindingList("pkgToJsSource",["function","pkgToJsSource",["pkg","false","output","indent","atnl"],["=","output","$"],["=","indent",0],["=","atnl","true"],["function","indent",["adj"],["preadjust","indent","+","adj"]],["function","newline","false",["=","atnl","true"],["=","output",[".","output","concat",["cr"]]]],["function","write","strings",["call",["function","lambda",["false","cnt","str"],["while","false",[["not",["not",["empty","strings"]]]],[[["identity","atnl"],["=","atnl","false"],["=","cnt","indent"],["while","false",[["not",[">",["postadjust","cnt","-",1],0]]],["=","output",[".","output","concat",["$ "]]]]]],["=","str",["pop","strings"]],[[[">=",[".","str","indexOf",["$\n"]],0],["=","atnl","true"]]],["=","output",[".","output","concat",["str"]]]]]],"output"],["function","writeline","strings",["apply","write","strings"],["newline"]],["function","atomString",["expr","false","vertical"],[["||",["symbol","expr"],["string","expr"]],["makeSourceString","expr"]],[["float","expr"],[".",'$".',"concat",["expr",'$"']]],[["integer","expr"],"expr"],[["array","expr"],["arrayString","expr","vertical"]],[["dictionary","expr"],["dictionaryString","expr","vertical"]],["debuglog","$pkgToJsSource: unsupported atom: ","expr"],"$false"],["function","arrayString",["arr","false","adex","expr","separator","result"],["=","result","${array:["],["=","adex",0],["loop","false",[[">=","adex",[".","arr","length"]]],["=","expr",["deref","arr",["postadjust","adex","+",1]]],[[["not","separator"],[[["identity","vertical"],["=","separator","$,\n"]],["=","separator","$, "]],["=","vertical","true"],["=","result",[".","result","concat",[["exprString","expr"]]]]],["=","result",[".","result","concat",["separator",["exprString","expr"]]]]]],[".","result","concat",["$]}"]]],["function","dictionaryString",["obj","false","keylist","key","separator","result"],[[["cdr","obj"],["=","result",[".","${tag:","concat",[["atomString",["cdr","obj"]],"$,dictionary:{"]]]],["=","result","${dictionary:{"]],["=","keylist",["keys","obj"]],["loop","false",[["empty","keylist"]],["=","key",["pop","keylist"]],[[["not","separator"],[[["identity","vertical"],["=","separator","$,\n"]],["=","separator","$, "]],["=","vertical","true"],["=","result",[".","result","concat",[["atomString","key"],"$: ",["exprString",["deref","obj","key"]]]]]],["=","result",[".","result","concat",["separator",["atomString","key"],"$: ",["exprString",["deref","obj","key"]]]]]]],[".","result","concat",["$}}"]]],["function","openListString",["exlist","false","expr","comma","result"],[[["atom","exlist"],["return",["atomString","exlist"]]]],["=","comma","$"],["=","result","$"],["loop","false",[["empty","exlist"]],["=","expr",["pop","exlist"]],["=","result",[".","result","concat",["comma",["exprString","expr"]]]],["=","comma","$, "]],"result"],["function","paramListString",["exlist"],[[["atom","exlist"],["return",["atomString","exlist"]]]],["exprString","exlist"]],["function","exprString",["exlist"],[[["atom","exlist"],["return",["atomString","exlist"]]]],[".","$[","concat",[["openListString","exlist"],"$]"]]],["function","procsym",["sym"],["=","sym",["tostring","sym"]],["return",["||",["==","sym","$function"],["==","sym","$function&"],["==","sym","$macro"],["==","sym","$closure"],["==","sym","$let"],["==","sym","$let&"]]]],["function","writeCall",["exlist","more","false","opstr"],[[["atom","exlist"],["write",["atomString","exlist"]],["return"]]],["=","opstr",["tostring",["car","exlist"]]],[[["procsym",["car","exlist"]],["writeline","$[",["atomString",["car","exlist"]],"$, ",["atomString",["second","exlist"]],"$, ",["paramListString",["third","exlist"]],"$,"],["indent",1],["writeBody",["cdddr","exlist"]],["indent",-1],["write","$]"]],[["||",["==","opstr","$loop"],["==",[".",["car","exlist"],"proc"],[".",["`","loop"],"proc"]]],["writeline","$[",["atomString",["car","exlist"]],"$, ",["atomString",["second","exlist"]],"$,"],["indent",1],["writeBody",["cddr","exlist"]],["indent",-1],["write","$]"]],[["==","opstr","$call"],["writeline","$[",["atomString",["car","exlist"]],"$,"],["indent",1],[[["cddr","exlist"],["writeCall",["second","exlist"],"$,"],["indent",-1],["newline"],["write",["openListString",["cddr","exlist"]]]],["writeCall",["second","exlist"],"$"],["indent",-1]],["write","$]"]],[["==","opstr","$catch"],["writeline","$[",["atomString",["pop","exlist"]],"$,"],["indent",1],[[["car","exlist"],["write","$["],["indent",1],["writeBody",["car","exlist"],"$"],["indent",-1],["write","$],\n"]],["writeline",["atomString","false"],"$,"]],[[["second","exlist"],["write","$["],["writeBody",["second","exlist"],"$"],["write","$],\n"]],["writeline",["atomString","false"],"$,"]],[[["third","exlist"],["write","$["],["indent",1],["writeBody",["third","exlist"],"$"],["indent",-1],["write","$]"]],["write",["atomString","false"]]],["indent",-1],["write","$]"]],[["||",["==","opstr","$quote"],["==","opstr","$`"]],["write",["exprString","exlist"]]],["write",[".","$[","concat",[["openListString","exlist"],"$]"]]]],["write","more"]],["function","writeBody",["exlist","false","expr","more"],["loop","false",[["empty","exlist"]],["=","expr",["pop","exlist"]],[[["empty","exlist"],["=","more","$"]],["=","more","$,\n"]],[[["atom","expr"],["write",["atomString","expr"],"more"]],[["atom",["car","expr"]],["writeCall","expr","more"]],[["atom",["caar","expr"]],[["cdr","expr"],["write","$["],["writeCall",["car","expr"],"$,\n"],["indent",1],["writeBody",["cdr","expr"]],["indent",-1],["write","$]","more"]],["write","$[",["exprString",["car","expr"]],"$]","more"]],["writeline","$["],["indent",1],["writeBody",["list",["car","expr"]]],[[["cdr","expr"],["writeline","$,"],["writeBody",["cdr","expr"]]]],["indent",-1],["write","$]","more"]]]],["function","writeProc",["sym","proc"],["writeline","$ninti._SetBindingList(",["atomString","sym"],"$,"],["indent",1],[[["string","proc"],["writeline","proc"]],["writeline","$[",["atomString",["car","proc"]],"$, ",["atomString",["second","proc"]],"$, ",["paramListString",["third","proc"]],"$,"],["indent",1],["writeBody",["cdddr","proc"]],["indent",-1],["writeline","$]"]],["indent",-1],["writeline","$);"]],["function","writeProps",["sym","props","false","prop","preceded","header"],[[["atom","props"],["return"]]],["=","preceded","$"],["while","false",[["not",["not",["empty","props"]]]],["=","prop",["pop","props"]],[[["==",["tostring",["car","prop"]],"$.sourcemap"],["continue"]]],[[["==",["tostring",["car","prop"]],"$.children"],["continue"]]],[[["not","header"],["=","header","true"],["writeline","$ninti._AddPropertyList(",["atomString","sym"],"$,"],["indent",1],["write","$["]]],["write","preceded","$[",["atomString",["car","prop"]],"$, ",["exprString",["cdr","prop"]],"$]"],["=","preceded","$,\n"]],[[["not","header"],["return"]]],["write","$]"],["indent",-1],["newline"],["writeline","$);"]],["function","writeValue",["sym","value"],["writeline","$ninti._SetValue(",["atomString","sym"],"$, ",["exprString","value"],"$);"]],["call",["function","lambda",["false","exlist","header","state","proc"],["=","exlist",["pkgDecode","pkg"]],[[["atom","exlist"],["debuglog",[".","$pkgToJsSource:","concat",["exlist"]]],["return","false"]]],["=","header",["pop","exlist"]],["indent",1],["writeline","$/*"],["writeline","$ * ",[".",[".","pkg",0],3]],["writeline","$ *"],["writeline","$ */"],["newline"],["loop","false",[["empty","exlist"]],["=","state",["pop","exlist"]],[[["or",["atom","state"],["not",["name",[".","state",0]]]],["debuglog","$invalid symbol: ","state"]],[[["!=",[".","state",1],[".","state",0]],["writeValue",[".","state",0],[".","state",1]]]],[[[".","state",2],["writeProps",[".","state",0],["totuple",[".","state",2]]]]],["=","proc",[".","state",3]],[[["tuple","proc"],["writeProc",[".","state",0],"proc"]]],[["||",[".","state",2],["tuple","proc"]],["newline"]]]],["indent",-1],"output"]]]),e._AddPropertyList("PackagerInit",[["$.lingoInit","true"]]),e._SetBindingList("PackagerInit",["function","PackagerInit",["false","manifest"],["=","manifest",["`",["makeSourceString","pkgSave","pkgDecode","pkgExamine","pkgLoad","pkgToJsSource","PackagerInit"]]],[".",[".","Naan","module"],"build",["$Util","$Packager",["function","lambda",["modobj","compobj"],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","pkgSave"],"pkgSave"],["set.",[".","modobj","exports"],["`","pkgExamine"],"pkgExamine"],["set.",[".","modobj","exports"],["`","pkgLoad"],"pkgLoad"],["set.",[".","modobj","exports"],["`","pkgToJsSource"],"pkgToJsSource"]]]]]),e._Execute(["PackagerInit"]),e._SetValue("jsScripts",{dictionary:{}}),e._SetBindingList("JsLoadScript",["closure","JsLoadScript",["libpath","globalID","false","locin","savens","hostpath","error","console","pending","scriptTag"],["global","module","jsScripts","Naan","JSpath","js"],["=","locin",[".","libpath","split",["$:"]]],[[["&&",["==",[".","locin","length"],2],[">",[".",[".","locin",0],"length"],1]],["=","libpath",[".","locin",1]],["=","locin",[".","locin",0]]],["=","locin","false"]],[[["deref","jsScripts","libpath"],["return"]]],["=","savens",["makeReturner"]],["=","hostpath",[".",[".",[".",[".","js","w"],"location"],"origin"],"concat",[[".","JSpath","join",[[".","JSpath","dirname",[[".",[".",[".","js","w"],"location"],"pathname"]]],"libpath"]]]]],[[["&&",[".",[".","js","s"],"importScripts"],["==",["tostring",[".",[".","js","s"],"importScripts"]],"$[Function importScripts]"]],["catch",[[".",[".","js","s"],"importScripts",["hostpath"]],["set[","jsScripts","libpath",["deref",[".","js","s"],"globalID"]]],[[["identity","true"],["=","error",["Error",["strcat","$JsLoadScript(","libpath","$) failed"],"exception"]],["=","console",[".","js","s"]]]],"false"]],[[".","js","w"],["=","pending",["new","nonce"]],["=","scriptTag",[".",[".",[".","js","w"],"document"],"createElement",["$script"]]],["set.","scriptTag",["`","src"],[".","hostpath","concat",[[".",[".","Naan","module"],"requireQuery","false"]]]],["set.","scriptTag",["`","onload"],["function","lambda",["event"],["set[","jsScripts","libpath",["deref",[".","js","w"],"globalID"]],[".","pending","signal",[["deref",[".","js","w"],"globalID"]]],"true"]],["set.","scriptTag",["`","onerror"],["function","lambda",["event"],["=","error",["Error",["strcat","$JsLoadScript(","libpath","$) not found"]]],["=","console",[".","js","w"]],[".","pending","signal",["false"]],"true"]],[".",[".",[".",[".","js","w"],"document"],"body"],"appendChild",["scriptTag"]],[".","pending","wait","false"]],[[".","js","g"],[[["identity","locin"],["=","locin",["deref",[".",[".","module","owner"],"locations"],"locin"]],[["identity","locin"],["=","libpath",[".","JSpath","resolve",["locin","libpath"]]]],["=","error",["Error",["strcat","$JsLoadScript(","locin","$:","libpath","$) is an undefined location"]]],["=","console",[".","js","g"]]]],[["not","error"],["set[","jsScripts","libpath",[".","js","r",["libpath"]]]]]],["savens"],[[["identity","error"],["ErrorDebuglog","error"],[".","console","log",[["ErrorString","error"]]],["throw","error"]]],["deref","jsScripts","libpath"]]),e._SetBindingList("JSONparse",["function","JSONparse",["str"],[".",[".",["||",[".","js","w"],[".","js","g"]],"JSON"],"parse",["str"]]]),e._SetBindingList("JSONstringify",["function","JSONstringify",["obj"],[".",[".",["||",[".","js","w"],[".","js","g"]],"JSON"],"stringify",["obj"]]]),e._SetBindingList("JsonParse",["function","JsonParse",["data"],["global","exception"],["catch",[["=","data",["JSONparse","data"]],["list","false","data"]],[[["identity","true"],["list","exception"]]],"false"]]),e._SetBindingList("JsonStringify",["function","JsonStringify",["data"],["global","exception"],["catch",[["=","data",["JSONstringify","data"]],["list","false","data"]],[[["identity","true"],["list","exception"]]],"false"]]),e._SetBindingList("EncodeBase64",["function","EncodeBase64",["data","false","blob","reader","pending","result"],[["not","data"],"$"],[[".","js","g"],[".",[".",[".",[".","js","g"],"Buffer"],"from",["data","$binary"]],"toString",["$base64"]]],[["xobject","data"],["=","blob",["xnew",[".",[".","js","w"],"Blob"],{array:["data"]}]],["=","reader",["xnew",[".",[".","js","w"],"FileReader"]]],["=","pending",["new","nonce"]],["set.","reader",["`","onload"],["function","lambda",["event"],[".","pending","signal",[[".",[".","event","target"],"result"]]]]],[".","reader","readAsDataURL",["blob"]],["=","result",[".","pending","wait","false"]],[".","result","slice",[37]]],[".",[".","js","w"],"btoa",["data"]]]),e._SetBindingList("DecodeBase64",["function","DecodeBase64",["data","false","error","resp","blob"],[["not","data"],["xnew"]],[[".","js","g"],[".",[".",[".","js","g"],"Buffer"],"from",["data","$base64"]]],["=",["error","resp"],["await",[".",[".","js","w"],"fetch",[["strcat","$data:application/octet-stream;base64,","data"]]]]],[[["not","error"],["=",["error","blob"],["await",[".","resp","blob","false"]]]]],[[["not","error"],["=",["error","blob"],["await",[".","blob","arrayBuffer","false"]]]]],[[["not","error"],["=","blob",["xnew",[".",[".","js","w"],"Uint8Array"],"blob"]]]],[["identity","error"],["debuglog","$DecodeBase64 failed","error"],["xnew"]],"blob"]),e._SetBindingList("IsBinary",["function","IsBinary",["obj","false","jio"],["=","jio",[".",[".",[".","Naan","runtimelib"],"jsInstanceOf"],"proc"]],[[".","js","g"],["||",["jio","obj",[".",[".","js","g"],"Buffer"]],["jio","obj",[".",[".","js","g"],"ArrayBuffer"]],["jio","obj",[".",[".","js","g"],"DataView"]]]],["||",["jio","obj",[".",[".","js","w"],"Uint8Array"]],["jio","obj",[".",[".","js","w"],"ArrayBuffer"]],["jio","obj",[".",[".","js","w"],"Blob"]]]]),e._SetBindingList("HashMD5",["function","HashMD5",["data"],["global","crypto","js"],[[".","js","g"],[[["not",["xobject","crypto"]],["=","crypto",[".","js","r",["$crypto"]]]]],[["identity","crypto"],["catch",[[".",[".",[".","crypto","createHash",["$MD5"]],"update",["data"]],"digest",["$hex"]]],[[["identity","true"],["debuglog","$HashMD5 failed:","exception"],"false"]],"false"]]],["JsLoadScript","$frameworks/browser/spark-md5/spark-md5.min.js","$SparkMD5"],[["not",[".",[".","js","w"],"SparkMD5"]],["debuglog","$HashMD5 unavailable"],"false"],[["xobject","data"],[".",[".",[".",[".","js","w"],"SparkMD5"],"ArrayBuffer"],"hash",["data"]]],[".",[".",[".","js","w"],"SparkMD5"],"hash",["data"]]]),e._SetBindingList("await",["closure","await",["promise","timeout","false","pending"],[[["not","promise"],["throw",["list","internal","$await on false promise"]]]],["=","pending",["new","nonce"]],[".","promise","then",[["function","success",["value"],[".","pending","signal",[["list","false","value"]]]],["function","failure",["error"],[".","pending","signal",[["list","error"]]]]]],[["identity","timeout"],[".","pending","wait",["timeout",["list",["Error",["strcat","$await timeout after ","timeout","$ msec"]]]]]],[".","pending","wait","false"]]),e._AddPropertyList("UtilInit",[["$.lingoInit","true"]]),e._SetBindingList("UtilInit",["function","UtilInit",["false","manifest"],["=","manifest",["`",["jsScripts","JsLoadScript","JSONparse","JSONstringify","JsonParse","JsonStringify","EncodeBase64","DecodeBase64","IsBinary","HashMD5","await","UtilInit"]]],[".",[".","Naan","module"],"build",["$Util","$Util",["function","lambda",["modobj","compobj"],["=","JSpath",[".","js","r",["$path"]]],["set.","compobj",["`","manifest"],"manifest"],["set.",[".","modobj","exports"],["`","JSpath"],"JSpath"],["set.",[".","modobj","exports"],["`","JsLoadScript"],"JsLoadScript"],["set.",[".","modobj","exports"],["`","JSONstringify"],"JSONstringify"],["set.",[".","modobj","exports"],["`","JSONparse"],"JSONparse"],["set.",[".","modobj","exports"],["`","JsonStringify"],"JsonStringify"],["set.",[".","modobj","exports"],["`","JsonParse"],"JsonParse"],["set.",[".","modobj","exports"],["`","EncodeBase64"],"EncodeBase64"],["set.",[".","modobj","exports"],["`","DecodeBase64"],"DecodeBase64"],["set.",[".","modobj","exports"],["`","IsBinary"],"IsBinary"],["set.",[".","modobj","exports"],["`","HashMD5"],"HashMD5"]]]]]),e._Execute(["UtilInit"]),e._SetNamespace(t,!0)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);
44
44
 
45
45
  /* Copyright (c) 2017-2024 by Zulch Laboratories, Inc. */
46
46
  !function(t){t.BootRoot=function(t){"use strict";t._SetBindingList("append",["function","append","lists",["function","append1",["items","result"],[["atom","items"],"result"],["cons",["car","items"],["append1",["cdr","items"],"result"]]],["function","append2",["lists","result"],[["atom","lists"],"result"],[["atom",["car","lists"]],["cons",["car","lists"],["append2",["cdr","lists"],"result"]]],["append1",["car","lists"],["append2",["cdr","lists"],"result"]]],["append2","lists"]]),t._Export("tuple","append"),t._SetBindingList("body",["macro","body","expr",["eval",["list","cond",["cons",["identity","true"],"false","expr"]]]]),t._Export("exec","body"),t._SetBindingList("sudo",["macro","sudo",["expr"],["eval","expr"]]),t._Export("local","sudo"),t._SetBindingList("evalactive",["function","evalactive",["expr"],["cond",[["nsrights",["first",["nsactive"]]],["eval","expr"]]]]),t._Export("local","evalactive"),t._SetBindingList("identity",["function","identity",["expr"],"expr"]),t._SetBindingList("mu",["function","mu",!1,["`","mu"]]),t._Export("local","mu")},t.BootStart=function(t){t._SetNamespace("Start");var e=t._InheritNamespace("Lang_Lingo");t._SetBindingList("StartInit",["function","StartInit",["false","manifest","export"],["=","manifest",["`",["StartInit"]]],[".",[".","Naan","module"],"build",["$Start","$Start",["function","lambda",["modobj","compobj"],["xset","compobj",["`","manifest"],"manifest"]]]]]),t._Execute(["StartInit"]),t._SetNamespace(e)}}("undefined"==typeof exports?this.Naanlang||(this.Naanlang={}):exports);