code-playpad 0.6.0 → 0.7.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.
@@ -1,6 +0,0 @@
1
- /*!
2
- * code-playpad — MIT © 2026 Seung Hun Lee
3
- * Bundles CodeMirror 6 and Lezer (MIT) © Marijn Haverbeke and others.
4
- * Full third-party licences: THIRD-PARTY-NOTICES.txt in this package.
5
- */
6
- var e='"use strict";(()=>{function*Ft(n,e,t,i,a){let r=i-t;if(r<2)return;if(r<32){let o=yield*to(e,t,i,a);yield*eo(e,t,i,t+o,a);return}let s=new Rr(n,e,a),l=vh(r);do{let o=yield*to(e,t,i,a);if(o<l){let u=r<=l?r:l;yield*eo(e,t,t+u,t+o,a),o=u}s.pushRun(t,o),yield*s.mergeCollapse(),t+=o,r-=o}while(r!==0);yield*s.mergeForceCollapse()}function*eo(n,e,t,i,a){for(i===e&&i++;i<t;i++){let r=n[i],s=e,l=i;for(;s<l;){let o=s+l>>>1;(yield*a(r,n[o]))<0?l=o:s=o+1}for(let o=i;o>s;o--)n[o]=n[o-1];n[s]=r}}function*to(n,e,t,i){let a=e+1;if(a===t)return 1;if((yield*i(n[a++],n[e]))<0){for(;a<t&&(yield*i(n[a],n[a-1]))<0;)a++;for(let r=e,s=a-1;r<s;r++,s--)[n[r],n[s]]=[n[s],n[r]]}else for(;a<t&&(yield*i(n[a],n[a-1]))>=0;)a++;return a-e}function vh(n){let e=0;for(;n>=32;)e|=n&1,n>>=1;return n+e}function Ee(n,e,t,i,a){if(n===t&&i>e)for(let r=a-1;r>=0;r--)t[i+r]=n[e+r];else for(let r=0;r<a;r++)t[i+r]=n[e+r]}function*Vr(n,e,t,i,a,r){let s=0,l=1;if((yield*r(n,e[t+a]))>0){let o=i-a;for(;l<o&&(yield*r(n,e[t+a+l]))>0;)s=l,l=(l<<1)+1,l<=0&&(l=o);l>o&&(l=o),s+=a,l+=a}else{let o=a+1;for(;l<o&&(yield*r(n,e[t+a-l]))<=0;)s=l,l=(l<<1)+1,l<=0&&(l=o);l>o&&(l=o);let u=s;s=a-l,l=a-u}for(s++;s<l;){let o=s+(l-s>>>1);(yield*r(n,e[t+o]))>0?s=o+1:l=o}return l}function*Er(n,e,t,i,a,r){let s=1,l=0;if((yield*r(n,e[t+a]))<0){let o=a+1;for(;s<o&&(yield*r(n,e[t+a-s]))<0;)l=s,s=(s<<1)+1,s<=0&&(s=o);s>o&&(s=o);let u=l;l=a-s,s=a-u}else{let o=i-a;for(;s<o&&(yield*r(n,e[t+a+s]))>=0;)l=s,s=(s<<1)+1,s<=0&&(s=o);s>o&&(s=o),l+=a,s+=a}for(l++;l<s;){let o=l+(s-l>>>1);(yield*r(n,e[t+o]))<0?s=o:l=o+1}return s}var no="Comparison method violates its general contract!",Rr=class{#e;#t;#n;#i=7;#a=[];#r=[];#s=0;constructor(e,t,i){this.#e=e,this.#t=t,this.#n=i}pushRun(e,t){this.#a[this.#s]=e,this.#r[this.#s]=t,this.#s++}*mergeCollapse(){let e=this.#r;for(;this.#s>1;){let t=this.#s-2;if(t>0&&e[t-1]<=e[t]+e[t+1]||t>1&&e[t-2]<=e[t]+e[t-1])e[t-1]<e[t+1]&&t--;else if(t<0||e[t]>e[t+1])break;yield*this.#l(t)}}*mergeForceCollapse(){let e=this.#r;for(;this.#s>1;){let t=this.#s-2;t>0&&e[t-1]<e[t+1]&&t--,yield*this.#l(t)}}*#l(e){let t=this.#t,i=this.#a[e],a=this.#r[e],r=this.#a[e+1],s=this.#r[e+1];this.#r[e]=a+s,e===this.#s-3&&(this.#a[e+1]=this.#a[e+2],this.#r[e+1]=this.#r[e+2]),this.#s--;let l=yield*Er(t[r],t,i,a,0,this.#n);i+=l,a-=l,a!==0&&(s=yield*Vr(t[i+a-1],t,r,s,s-1,this.#n),s!==0&&(this.#e.charge(a+s),a<=s?yield*this.#u(i,a,r,s):yield*this.#o(i,a,r,s)))}*#u(e,t,i,a){let r=this.#t,s=this.#n,l=r.slice(e,e+t),o=0,u=i,d=e;if(r[d++]=r[u++],--a===0){Ee(l,o,r,d,t);return}if(t===1){Ee(r,u,r,d,a),r[d+a]=l[o];return}let g=this.#i;e:for(;;){let v=0,m=0;do if((yield*s(r[u],l[o]))<0){if(r[d++]=r[u++],m++,v=0,--a===0)break e}else if(r[d++]=l[o++],v++,m=0,--t===1)break e;while((v|m)<g);do{if(v=yield*Er(r[u],l,o,t,0,s),v!==0&&(Ee(l,o,r,d,v),d+=v,o+=v,t-=v,t<=1)||(r[d++]=r[u++],--a===0)||(m=yield*Vr(l[o],r,u,a,0,s),m!==0&&(Ee(r,u,r,d,m),d+=m,u+=m,a-=m,a===0))||(r[d++]=l[o++],--t===1))break e;g--}while(v>=7||m>=7);g<0&&(g=0),g+=2}this.#i=g<1?1:g,t===1?(Ee(r,u,r,d,a),r[d+a]=l[o]):t===0?this.#e.fail("java.lang.IllegalArgumentException",no):Ee(l,o,r,d,t)}*#o(e,t,i,a){let r=this.#t,s=this.#n,l=r.slice(i,i+a),o=e+t-1,u=a-1,d=i+a-1;if(r[d--]=r[o--],--t===0){Ee(l,0,r,d-(a-1),a);return}if(a===1){d-=t,o-=t,Ee(r,o+1,r,d+1,t),r[d]=l[u];return}let g=this.#i;e:for(;;){let v=0,m=0;do if((yield*s(l[u],r[o]))<0){if(r[d--]=r[o--],v++,m=0,--t===0)break e}else if(r[d--]=l[u--],m++,v=0,--a===1)break e;while((v|m)<g);do{if(v=t-(yield*Er(l[u],r,e,t,t-1,s)),v!==0&&(d-=v,o-=v,t-=v,Ee(r,o+1,r,d+1,v),t===0)||(r[d--]=l[u--],--a===1)||(m=a-(yield*Vr(r[o],l,0,a,a-1,s)),m!==0&&(d-=m,u-=m,a-=m,Ee(l,u+1,r,d+1,m),a<=1))||(r[d--]=r[o--],--t===0))break e;g--}while(v>=7||m>=7);g<0&&(g=0),g+=2}this.#i=g<1?1:g,a===1?(d-=t,o-=t,Ee(r,o+1,r,d+1,t),r[d]=l[u]):a===0?this.#e.fail("java.lang.IllegalArgumentException",no):Ee(l,0,r,d-(a-1),a)}};var h;function io(n){h=n}var f=n=>n?1:0,Gt=3,k=n=>n===1,b=class{hash;constructor(e){this.hash=e}*javaString(e){return`${this.className}@${this.hash.toString(16)}`}get contentEquality(){return!1}*contentEquals(e,t){return this===t}*contentHash(e){return this.hash}"equals(Object)"(e,t){return c(this.contentEquals(e,t),f)}"hashCode()"(e){return c(this.contentHash(e))}"toString()"(e){return c(this.javaString(e),t=>new h.JString(t))}},Fe=class extends b{};function p(n,e,t,i){if(e instanceof h.JLambda)return Mi(e.method,e.captured.length?[...e.captured,...i]:i);if(e instanceof h.JObject)return Mi(n.methodOf(e,t,i.length),[e,...i]);if(e instanceof Fe)return e.call(n,i);throw new Error(`library: ${t} on a value that is not a function`)}var Or=class{invoke;args;#e=!1;constructor(e,t){this.invoke=e,this.args=t}[Symbol.iterator](){return this}next(e){return this.#e?{done:!0,value:e}:(this.#e=!0,{done:!1,value:this})}};function Mi(n,e){return new Or(n,e)}function ki(n){return new Tr(n)}var Tr=class{#e;constructor(e){this.#e=e}[Symbol.iterator](){return this}next(){return{done:!0,value:this.#e}}};function c(n,e=t=>t){return ao(n,n.next(),e)}function ao(n,e,t){return e.done?t(e.value):new h.NativeThen(e.value.invoke,e.value.args,i=>ao(n,n.next(i),t),n,t)}function Hn(n,e,t,i,a){return e instanceof h.JLambda?new h.NativeThen(e.method,e.captured.length?[...e.captured,...i]:i,a):e instanceof h.JObject?new h.NativeThen(n.methodOf(e,t,i.length),[e,...i],a):wr(c(p(n,e,t,i)),a)}function wr(n,e){return n instanceof h.NativeThen?new h.NativeThen(n.invoke,n.args,t=>wr(n.then(t),e)):n!==null&&typeof n=="object"&&Symbol.iterator in n?wr(c(n),e):e(n)}function Ze(n){return n instanceof h.JString?"java.lang.String":n instanceof h.JBox?hn[n.kind]:n instanceof h.JArray?n.descriptor:n.className}function qn(n){return n.replace(/\\$\\d+$/,"")}var hn={int:"java.lang.Integer",long:"java.lang.Long",double:"java.lang.Double",char:"java.lang.Character",boolean:"java.lang.Boolean",float:"java.lang.Float",byte:"java.lang.Byte",short:"java.lang.Short"};function jr(n){switch(n.kind){case"double":return h.doubleToString(n.value);case"float":return h.floatToString(n.value);case"char":return String.fromCharCode(n.value);case"boolean":return n.value?"true":"false";default:return String(n.value)}}function*V(n,e,t,i="(this Collection)"){if(e===null)return"null";if(e instanceof h.JString)return e.value;if(e instanceof h.JBox)return jr(e);if(e===t)return i;if(e instanceof h.JObject){let a=n.toStringMethod(e);if(a<0)return h.objectToString(e);let r=yield{invoke:a,args:[e]};return r==null?"null":r.value}return e instanceof h.JArray?h.objectToString(e):e instanceof b?yield*e.javaString(n):String(e)}function dn(n,e){return e instanceof h.JObject&&n.equalsMethod(e)>=0||e instanceof b&&e.contentEquality}function Wn(n,e){return n===e?n!==null:n instanceof h.JString?e instanceof h.JString&&n.value===e.value:n instanceof h.JBox?e instanceof h.JBox&&n.kind===e.kind&&Object.is(n.value,e.value):!1}function*T(n,e,t){if(e instanceof h.JObject){let i=n.equalsMethod(e);return i<0?e===t:k(yield{invoke:i,args:[e,t]})}return e instanceof b?yield*e.contentEquals(n,ph(n,t,["size()","get(Object)","containsKey(Object)"])):Wn(e,t)}function ph(n,e,t){if(!(e instanceof h.JObject)||e.base===null)return e;if(e.base.opaque)return n.limitation(`comparing a ${e.className}, an AbstractList subclass, with equals inside the library`);let i=t.find(a=>n.overrideOf(e,a)>=0);return i&&n.limitation(`comparing a ${e.className}, which overrides ${i.slice(0,i.indexOf("("))}(), with equals (the JDK would call the override)`),e.base}function*ne(n,e,t){return e===t||e!==null&&(yield*T(n,e,t))}function Ar(n){let e=n.cachedHash;return e!==void 0?e:n.cachedHash=Mr(n.value)}function Mr(n){let e=0;for(let t=0;t<n.length;t++)e=Math.imul(e,31)+n.charCodeAt(t)|0;return e}var Ir=new DataView(new ArrayBuffer(8));function Yn(n){let e=BigInt.asUintN(64,BigInt(n));return Number(BigInt.asIntN(32,e^e>>32n))}function Zn(n){return Ir.setFloat64(0,Number.isNaN(n)?NaN:n),Ir.getInt32(0)^Ir.getInt32(4)|0}function Xn(n){switch(n.kind){case"int":case"char":case"byte":case"short":return n.value;case"float":return h.floatToIntBits(n.value);case"long":return Yn(n.value);case"double":return Zn(n.value);case"boolean":return n.value?1231:1237}}function*B(n,e){if(e===null)return 0;if(e instanceof h.JString)return Ar(e);if(e instanceof h.JBox)return Xn(e);if(e instanceof h.JObject){let t=n.hashCodeMethod(e);return t<0?e.hash:yield{invoke:t,args:[e]}}return e instanceof b?yield*e.contentHash(n):e.hash}function ft(n,e){if(n<e)return-1;if(n>e)return 1;if(n===e){if(n!==0)return 0;let a=Object.is(n,-0),r=Object.is(e,-0);return a===r?0:a?-1:1}let t=Number.isNaN(n),i=Number.isNaN(e);return t===i?0:t?1:-1}function Ye(n,e){let t=Math.min(n.length,e.length);for(let i=0;i<t;i++){let a=n.charCodeAt(i)-e.charCodeAt(i);if(a!==0)return a}return n.length-e.length}function Qn(n,e){switch(n.kind){case"double":case"float":return ft(n.value,e.value);case"char":case"byte":case"short":return n.value-e.value;case"boolean":return n.value===e.value?0:n.value?1:-1;default:return n.value<e.value?-1:n.value>e.value?1:0}}function ro(n,e,t){return n.fail("java.lang.ClassCastException",n.castMessage(e,t))}function Lr(n,e){return e instanceof h.JString?"java.lang.String":e instanceof h.JBox?hn[e.kind]:e instanceof b&&(e.className==="java.lang.StringBuilder"||e.className==="java.lang.StringBuffer")||e instanceof b&&e.naturalOrder||e instanceof h.JObject&&n.methodOf(e,"compareTo",1)>=0?e.className:null}function Xe(n,e){if(e===null)return n.limitation("ordering a null element");Lr(n,e)===null&&ro(n,e,"java.lang.Comparable")}function Pt(n){return n.some(e=>e instanceof h.JObject)}var bh={"java.lang.String":"anotherString","java.lang.StringBuilder":"another","java.lang.StringBuffer":"another","java.lang.Integer":"anotherInteger","java.lang.Long":"anotherLong","java.lang.Double":"anotherDouble","java.lang.Character":"anotherCharacter","java.lang.Boolean":"b"};function W(n,e){if(e===null)return(a,r)=>a instanceof h.JObject?(Xe(n,a),Mi(n.methodOf(a,"compareTo",1),[a,r])):ki(ve(n,a,r));if(e instanceof Fe)return(a,r)=>e.call(n,[a,r]);let t=e instanceof h.JObject?n.methodOf(e,"compare",2):e.method,i=e instanceof h.JObject?[e]:e.captured;return(a,r)=>Mi(t,i.length?[...i,a,r]:[a,r])}function ve(n,e,t){if(e===null)return n.limitation("ordering a null element");if(e instanceof h.JObject&&n.methodOf(e,"compareTo",1)>=0)return n.limitation("Arrays.binarySearch over objects of the program\'s classes");if(Xe(n,e),e instanceof b&&e.naturalOrder)return e.naturalOrder(n,t);let i=Lr(n,e);return t===null?n.fail("java.lang.NullPointerException",`Cannot read field "value" because "${bh[i]}" is null`):(Lr(n,t)!==i&&ro(n,t,i),e instanceof h.JString?Ye(e.value,t.value):e instanceof h.JBox?Qn(e,t):Ye(e.text,t.text))}var Jt=class extends b{className="java.util.Enumeration$1";#e;constructor(e,t){super(e),this.#e=t}"hasNext()"(e){return this.#e["hasMoreElements()"](e)}"next()"(e){return this.#e["nextElement()"](e)}};var Nh="java.lang.NullPointerException",Bi="java.lang.ArrayIndexOutOfBoundsException",he=n=>n.data;function fn(n,e,t="a"){return e===null&&n.fail(Nh,`Cannot read the array length because "${t}" is null`),e}function Di(n,e,t,i){t>i&&n.fail("java.lang.IllegalArgumentException",`fromIndex(${t}) > toIndex(${i})`),t<0&&n.fail(Bi,`Array index out of range: ${t}`),i>e&&n.fail(Bi,`Array index out of range: ${i}`)}function Ch(n,e){switch(n){case"[D":return h.doubleToString(e);case"[F":return h.floatToString(e);case"[C":return String.fromCharCode(e);case"[Z":return e?"true":"false";default:return String(e)}}function yh(n,e){switch(n){case"[D":return Zn(e);case"[F":return h.floatToIntBits(e);case"[J":return Yn(e);case"[Z":return e?1231:1237;default:return e}}var Qe=n=>n.descriptor.length===2;function*oo(n,e){if(e===null)return"null";let t=e,i=he(t);n.charge(i.length);let a=[];if(Qe(t))for(let r=0;r<i.length;r++)a.push(Ch(t.descriptor,i[r]));else for(let r=0;r<i.length;r++)a.push(yield*V(n,i[r]));return`[${a.join(", ")}]`}function*uo(n,e,t){let i=he(e);n.charge(i.length),t.add(e);let a=[];for(let r=0;r<i.length;r++){let s=i[r];s instanceof h.JArray?Qe(s)?a.push(yield*oo(n,s)):a.push(t.has(s)?"[...]":yield*uo(n,s,t)):a.push(yield*V(n,s))}return t.delete(e),`[${a.join(", ")}]`}function Sh(n){let e=/^\\[L(.*);$/.exec(n);return e&&e[1]!=="java.lang.Object"?e[1]:null}function xh(n,e,t){let i=Sh(e.descriptor);if(i===null||t===null||typeof t!="object")return;let a=Ze(t);a!==i&&n.fail("java.lang.ArrayStoreException",a)}function so(n,e,t,i,a){let r=fn(n,e),s=he(r),l=t??0,o=i??s.length;t!==null&&Di(n,s.length,l,o),Qe(r)||xh(n,r,a),n.charge(o-l>>>2);for(let u=l;u<o;u++)s[u]=a}function kr(n,e,t,i){let a=fn(n,e),r=he(a),s=t??0,l=i??r.length;t!==null&&Di(n,r.length,s,l);let o=l-s;if(o<2)return;n.charge(Math.ceil(o*Math.log2(o)));let u=a.data;if(u instanceof Int32Array||u instanceof Uint16Array||u instanceof Float64Array||u instanceof Int8Array||u instanceof Int16Array||u instanceof Float32Array){u.subarray(s,l).sort();return}if(a.descriptor==="[J"){let d=Array.prototype.slice.call(r,s,l);d.sort((g,v)=>g<v?-1:g>v?1:0),d.forEach((g,v)=>r[s+v]=g)}else{if(Pt(Array.prototype.slice.call(r,s,l)))return c(Ft(n,r,s,l,W(n,null)),()=>{});ei(n,r,s,l)}}function ei(n,e,t,i){let a=e.slice(t,i);if(!(a.length<2)){n.charge(Math.ceil(a.length*Math.log2(a.length))),a.some(r=>r===null)&&n.limitation("sorting objects that include null");for(let r of a)ve(n,a[0],r);a.sort((r,s)=>ve(n,r,s)),a.forEach((r,s)=>e[t+s]=r)}}function co(n,e,t,i,a){if(a===null)return kr(n,e,t,i);let r=fn(n,e),s=he(r),l=t??0,o=i??s.length;return t!==null&&Di(n,s.length,l,o),c(Ft(n,s,l,o,W(n,a)),()=>{})}function lo(n,e,t,i=null,a=null){let r=fn(n,e),s=he(r);i!==null&&Di(n,s.length,i,a);let l=r.descriptor==="[D"||r.descriptor==="[F"?d=>ft(d,t):Qe(r)?d=>d<t?-1:d>t?1:0:d=>ve(n,d,t),o=i??0,u=(a??s.length)-1;for(;o<=u;){let d=o+u>>>1,g=l(s[d]);if(n.charge(1),g<0)o=d+1;else if(g>0)u=d-1;else return d}return-(o+1)}function ho(n,e,t){if(e===t)return 1;if(e===null||t===null)return 0;let i=he(e),a=he(t);if(i.length!==a.length)return 0;if(n.charge(i.length>>>2),Qe(e)){for(let r=0;r<i.length;r++)if(!Object.is(i[r],a[r]))return 0;return 1}return c((function*(){for(let r=0;r<i.length;r++)if(!(yield*ne(n,i[r],a[r])))return!1;return!0})(),f)}function fo(n,e){if(e===null)return 0;let t=e,i=he(t);return n.charge(i.length>>>2),c((function*(){let a=1;for(let r=0;r<i.length;r++){let s=Qe(t)?yh(t.descriptor,i[r]):yield*B(n,i[r]);a=Math.imul(31,a)+s|0}return a})())}var Vh={"[I":"int","[J":"long","[C":"char","[D":"double","[Z":"boolean","[B":"byte","[S":"short","[F":"float"};function Br(n,e,t,i){let a=he(e),r=Math.min(a.length-t,i);t<0&&n.fail(Bi,`arraycopy: source index ${t} out of bounds for ${Vh[e.descriptor]??"object array"}[${a.length}]`),r<0&&n.fail(Bi,`arraycopy: length ${r} is negative`),n.allocate(i),n.charge(i>>>4);let s;e.data instanceof Int32Array?s=new Int32Array(i):e.data instanceof Uint16Array?s=new Uint16Array(i):e.data instanceof Float64Array?s=new Float64Array(i):e.data instanceof Uint8Array?s=new Uint8Array(i):e.data instanceof Int8Array?s=new Int8Array(i):e.data instanceof Int16Array?s=new Int16Array(i):e.data instanceof Float32Array?s=new Float32Array(i):s=new Array(i).fill(e.kind===Gt?null:0);let l=s;for(let o=0;o<r;o++)l[o]=a[t+o];return new h.JArray(e.kind,s,n.hash(),e.descriptor)}function go(n,e,t){let i=fn(n,e,"original");return t<0?n.fail("java.lang.NegativeArraySizeException",String(t)):Br(n,i,0,t)}function mo(n,e,t,i){let a=fn(n,e,"original");return t>i?n.fail("java.lang.IllegalArgumentException",`${t} > ${i}`):Br(n,a,t,i-t)}var U={"Array.clone()":(n,[e])=>Br(n,e,0,he(e).length)};for(let n of["int","long","char","double","boolean","byte","short","float","Object"]){let e=i=>`Arrays.${i}`,t=`${n}[]`;n!=="boolean"&&(U[e(`sort(${t})`)]=(i,[a])=>kr(i,a,null,null),U[e(`sort(${t},int,int)`)]=(i,[a,r,s])=>kr(i,a,r,s),U[e(`binarySearch(${t},${n})`)]=(i,[a,r])=>lo(i,a,r),U[e(`binarySearch(${t},int,int,${n})`)]=(i,[a,r,s,l])=>lo(i,a,l,r,s)),U[e(`equals(${t},${t})`)]=(i,[a,r])=>ho(i,a,r),U[e(`fill(${t},${n})`)]=(i,[a,r])=>so(i,a,null,null,r),U[e(`fill(${t},int,int,${n})`)]=(i,[a,r,s,l])=>so(i,a,r,s,l),U[e(`hashCode(${t})`)]=(i,[a])=>fo(i,a),U[e(`toString(${t})`)]=(i,[a])=>c(oo(i,a),r=>new h.JString(r)),n!=="Object"&&(U[e(`copyOf(${t},int)`)]=(i,[a,r])=>go(i,a,r),U[e(`copyOfRange(${t},int,int)`)]=(i,[a,r,s])=>mo(i,a,r,s))}U["Arrays.copyOf(T[],int)"]=(n,[e,t])=>go(n,e,t);U["Arrays.copyOfRange(T[],int,int)"]=(n,[e,t,i])=>mo(n,e,t,i);U["Arrays.sort(T[],Comparator)"]=(n,[e,t])=>co(n,e,null,null,t);U["Arrays.sort(T[],int,int,Comparator)"]=(n,[e,t,i,a])=>co(n,e,t,i,a);function*vo(n,e,t){let i=he(e),a=he(t);if(i.length!==a.length)return!1;n.charge(i.length>>>2);for(let r=0;r<i.length;r++){let s=i[r],l=a[r];if(s!==l){if(s===null||l===null)return!1;if(s instanceof h.JArray&&l instanceof h.JArray){if(!Qe(s)&&!Qe(l)){if(!(yield*vo(n,s,l)))return!1}else if(s.descriptor!==l.descriptor||ho(n,s,l)!==1)return!1}else if(!(yield*ne(n,s,l)))return!1}}return!0}function*po(n,e){let t=1,i=he(e);for(let a=0;a<i.length;a++){let r=i[a],s;r instanceof h.JArray?s=Qe(r)?fo(n,r):yield*po(n,r):s=r===null?0:yield*B(n,r),t=Math.imul(31,t)+s|0}return t}U["Arrays.deepEquals(Object[],Object[])"]=(n,[e,t])=>e===t?f(!0):e===null||t===null?f(!1):c(vo(n,e,t),f);U["Arrays.deepHashCode(Object[])"]=(n,[e])=>e===null?0:c(po(n,e));U["Arrays.deepToString(Object[])"]=(n,[e])=>e===null?new h.JString("null"):c(uo(n,e,new Set),t=>new h.JString(t));var se="java.util.NoSuchElementException",Je="java.util.ConcurrentModificationException",J="java.lang.NullPointerException",bo="java.lang.IndexOutOfBoundsException",Dr="java.lang.IllegalArgumentException";function*Ut(n,e,t,i=0,a=e.length){if(n.charge(a-i),t===null){for(let r=i;r<a;r++)if(e[r]===null)return r}else if(dn(n,t)){for(let r=i;r<a;r++)if(yield*T(n,t,e[r]))return r}else for(let r=i;r<a;r++)if(Wn(t,e[r]))return r;return-1}function*No(n,e,t){n.charge(e.length);for(let i=e.length-1;i>=0;i--)if(t===null?e[i]===null:yield*T(n,t,e[i]))return i;return-1}var M=class extends b{isList=!1;isSet=!1;hashed=!1;randomAccess=!1;copyItems(e){return{items:this.elements(e,!0),unknown:null}}markUnknown(e,t){}*contains(e,t){return(yield*Ut(e,this.elements(e,!1),t))>=0}*javaString(e){let t=this.elements(e,!0);if(!t.length)return"[]";e.charge(t.length);let i=[];for(let a of t)i.push(yield*V(e,a,this));return`[${i.join(", ")}]`}"size()"(){return this.size}"isEmpty()"(){return f(this.size===0)}"contains(Object)"(e,t){return c(this.contains(e,t),f)}"containsAll(Collection)"(e,t){if(t===null)return e.fail(J,\'Cannot invoke "java.util.Collection.iterator()" because "c" is null\');let i=this;return c((function*(){for(let a of t.elements(e,!1))if(!(yield*i.contains(e,a)))return!1;return!0})(),f)}"toArray()"(e){let t=this.elements(e,!0);return e.allocate(t.length),new h.JArray(Gt,[...t],e.hash(),"[Ljava.lang.Object;")}"toArray(T[])"(e,t){if(t===null)return e.fail(J,\'Cannot read the array length because "a" is null\');let i=t,a=this.elements(e,!0);for(let s of a)if(s!==null&&!e.storable(s,i.descriptor))return e.fail("java.lang.ArrayStoreException",`arraycopy: element type mismatch: can not cast one of the elements of java.lang.Object[] to the type of the destination array, ${i.descriptor.slice(2,-1)}`);let r=i.data;if(r.length<a.length)return e.allocate(a.length),new h.JArray(Gt,[...a],e.hash(),i.descriptor);for(let s=0;s<a.length;s++)r[s]=a[s];return r.length>a.length&&(r[a.length]=null),i}"toArray(IntFunction)"(e,t){if(t===null)return e.fail(J,null);let i=this;return c((function*(){let a=(yield*p(e,t,"apply",[0]))??null;return yield*mt(i["toArray(T[])"](e,a))})())}get addAllNullMessage(){return\'Cannot invoke "java.util.Collection.iterator()" because "c" is null\'}"addAll(Collection)"(e,t){if(t===null)return e.fail(J,this.addAllNullMessage);if(!this.hashed)return this.addEach(e,t.elements(e,!0).slice());let{items:i,unknown:a}=t.copyItems(e);return c(mt(this.addEach(e,i.slice())),r=>(a&&i.length>1&&this.markUnknown(a,i),r))}addEach(e,t){let i=!1,a=null;for(let r=0;r<t.length;r++){let s=this["add(E)"](e,t[r]);if(typeof s=="number"){i||=s===1;continue}let l=this,o=t.slice(r+1),u=s;a=(function*(){let d=(yield*u)===1,g=i||d;for(let v of o){let m=l["add(E)"](e,v);g=(typeof m=="number"?m:yield*m)===1||g}return g})();break}return a?c(a,f):f(i)}};function*_t(n,e,t){if(t===e)return!0;if(!(t instanceof M)||!t.isList)return!1;let i=e.elements(n,!0),a=t.elements(n,!0);if(i.length!==a.length)return!1;n.charge(i.length);for(let r=0;r<i.length;r++)if(!(yield*ne(n,i[r],a[r])))return!1;return!0}var pe=class extends M{className="java.util.ArrayList";isList=!0;randomAccess=!0;es=[];modCount=0;get size(){return this.es.length}elements(){return this.es}get contentEquality(){return!0}*contentEquals(e,t){return yield*_t(e,this,t)}*contentHash(e){let t=1;for(let i of this.es)t=Math.imul(31,t)+(yield*B(e,i))|0;return t}#e(e,t){(t<0||t>=this.es.length)&&e.fail(bo,`Index ${t} out of bounds for length ${this.es.length}`)}"add(E)"(e,t){return e.allocate(1),this.modCount++,this.es.push(t),1}"add(int,E)"(e,t,i){if(t<0||t>this.es.length)return e.fail(bo,`Index: ${t}, Size: ${this.es.length}`);e.allocate(1),e.charge(this.es.length-t),this.modCount++,this.es.splice(t,0,i)}"get(int)"(e,t){return this.#e(e,t),this.es[t]}"set(int,E)"(e,t,i){this.#e(e,t);let a=this.es[t];return this.es[t]=i,a}"remove(int)"(e,t){return this.#e(e,t),e.charge(this.es.length-t),this.modCount++,this.es.splice(t,1)[0]}"remove(Object)"(e,t){return c(Ut(e,this.es,t),i=>i<0?0:(this.modCount++,this.es.splice(i,1),1))}"indexOf(Object)"(e,t){return c(Ut(e,this.es,t))}"lastIndexOf(Object)"(e,t){return c(No(e,this.es,t))}"clear()"(){this.modCount++,this.es.length=0}"addAll(Collection)"(e,t){if(t===null)return e.fail(J,\'Cannot invoke "java.util.Collection.toArray()" because "c" is null\');let i=t.elements(e,!0).slice();e.allocate(i.length),e.charge(i.length),this.modCount++;for(let a of i)this.es.push(a);return f(i.length>0)}"getFirst()"(e){return this.es.length?this.es[0]:e.fail(se,null)}"getLast()"(e){return this.es.length?this.es[this.es.length-1]:e.fail(se,null)}"removeFirst()"(e){return this.es.length?this["remove(int)"](e,0):e.fail(se,null)}"removeLast()"(e){return this.es.length?this["remove(int)"](e,this.es.length-1):e.fail(se,null)}"addFirst(E)"(e,t){return this["add(int,E)"](e,0,t)}"addLast(E)"(e,t){this["add(E)"](e,t)}"iterator()"(e){return new $r(e.hash(),this,this.iteratorName)}"listIterator()"(e){return new $i(e.hash(),this,0)}"listIterator(int)"(e,t){let i=t,a=this.className==="java.util.Stack"||this.className==="java.util.Vector";return i<0||i>this.size?e.fail("java.lang.IndexOutOfBoundsException",a?`Index: ${i}`:`Index: ${i}, Size: ${this.size}`):new $i(e.hash(),this,i)}get iteratorName(){return"java.util.ArrayList$Itr"}"sort(Comparator)"(e,t){let i=this.modCount,a=()=>{this.modCount!==i&&e.fail(Je,null),this.modCount++};return t===null&&!Pt(this.es)?(ei(e,this.es,0,this.es.length),a()):c(Ft(e,this.es,0,this.es.length,W(e,t)),a)}"forEach(Consumer)"(e,t){if(t===null)return e.fail(J,null);let i=this;return c((function*(){let a=i.modCount,r=i.es.length;for(let s=0;i.modCount===a&&s<r;s++)yield*p(e,t,"accept",[i.es[s]]);i.modCount!==a&&e.fail(Je,null)})(),()=>{})}"removeIf(Predicate)"(e,t){if(t===null)return e.fail(J,null);let i=this;return c((function*(){let a=i.modCount,r=i.es.slice(),s=[];for(let o of r)s.push(k((yield*p(e,t,"test",[o]))??null));if(i.modCount!==a&&e.fail(Je,null),!s.includes(!0))return!1;let l=r.filter((o,u)=>!s[u]);return i.es.length=0,i.es.push(...l),i.modCount++,!0})(),f)}"replaceAll(UnaryOperator)"(e,t){if(t===null)return e.fail(J,null);let i=this;return c((function*(){let a=i.modCount,r=i.es.length;for(let s=0;i.modCount===a&&s<r;s++)i.es[s]=(yield*p(e,t,"apply",[i.es[s]]))??null;i.modCount!==a&&e.fail(Je,null),i.modCount++})(),()=>{})}};function*mt(n){return n!==null&&typeof n=="object"&&Symbol.iterator in n?yield*n:n}var $r=class extends b{className;#e;#t=0;#n=-1;#i;constructor(e,t,i){super(e),this.#e=t,this.className=i,this.#i=t.modCount}"hasNext()"(){return f(this.#t!==this.#e.size)}"next()"(e){if(this.#e.modCount!==this.#i)return e.fail(Je,null);let t=this.#t;return t>=this.#e.size?e.fail(se,null):(this.#t=t+1,this.#n=t,this.#e.es[t])}"remove()"(e){if(this.#n<0)return e.fail("java.lang.IllegalStateException",null);if(this.#e.modCount!==this.#i)return e.fail(Je,null);this.#e["remove(int)"](e,this.#n),this.#t=this.#n,this.#n=-1,this.#i=this.#e.modCount}},$i=class extends b{className;#e;#t;#n=-1;#i;constructor(e,t,i){super(e),this.#e=t,this.#t=i,this.className=`${t.className}$ListItr`,this.#i=t.modCount}#a(e){this.#e.modCount!==this.#i&&e.fail(Je,null)}"hasNext()"(){return f(this.#t<this.#e.size)}"next()"(e){this.#a(e);let t=this.#t;return t>=this.#e.size?e.fail(se,null):(this.#t=t+1,this.#n=t,this.#e.es[t])}"hasPrevious()"(){return f(this.#t>0)}"previous()"(e){this.#a(e);let t=this.#t-1;return t<0?e.fail(se,null):(this.#t=t,this.#n=t,this.#e.es[t])}"nextIndex()"(){return this.#t}"previousIndex()"(){return this.#t-1}"remove()"(e){if(this.#n<0)return e.fail("java.lang.IllegalStateException",null);this.#a(e),this.#e["remove(int)"](e,this.#n),this.#t=this.#n,this.#n=-1,this.#i=this.#e.modCount}"set(E)"(e,t){if(this.#n<0)return e.fail("java.lang.IllegalStateException",null);this.#a(e),this.#e["set(int,E)"](e,this.#n,t)}"add(E)"(e,t){this.#a(e),this.#e["add(int,E)"](e,this.#t,t),this.#t++,this.#n=-1,this.#i=this.#e.modCount}},ti=class extends M{className="java.util.ArrayDeque";get addAllNullMessage(){return\'Cannot invoke "java.util.Collection.size()" because "c" is null\'}#e=new Array(16).fill(null);#t=0;#n=0;mods=0;"forEach(Consumer)"(e,t){if(t===null)return e.fail(J,null);let i=this;return c((function*(){let a=i.mods;for(let r of i.elements().slice())if(yield*p(e,t,"accept",[r]),i.mods!==a)return e.limitation("changing an ArrayDeque while iterating over it")})(),()=>{})}get size(){return this.#n}at(e){return this.#e[this.#t+e&this.#e.length-1]}elements(){let e=new Array(this.#n);for(let t=0;t<this.#n;t++)e[t]=this.at(t);return e}#i(){let e=this.elements();this.#e=new Array(this.#e.length*2).fill(null),e.forEach((t,i)=>this.#e[i]=t),this.#t=0}addFirst(e,t){t===null&&e.fail(J,null),e.allocate(1),this.#n===this.#e.length&&this.#i(),this.#t=this.#t-1&this.#e.length-1,this.#e[this.#t]=t,this.#n++,this.mods++}addLast(e,t){t===null&&e.fail(J,null),e.allocate(1),this.#n===this.#e.length&&this.#i(),this.#e[this.#t+this.#n&this.#e.length-1]=t,this.#n++,this.mods++}pollFirst(){if(!this.#n)return null;let e=this.#e[this.#t];return this.#e[this.#t]=null,this.#t=this.#t+1&this.#e.length-1,this.#n--,this.mods++,e}pollLast(){if(!this.#n)return null;let e=this.#t+this.#n-1&this.#e.length-1,t=this.#e[e];return this.#e[e]=null,this.#n--,this.mods++,t}removeAt(e){let t=this.elements().slice();t.splice(e,1),this.#e.fill(null),t.forEach((i,a)=>this.#e[a]=i),this.#t=0,this.#n=t.length,this.mods++}#a(e,t,i){if(t===null)return 0;let a=this.elements();return c(i?No(e,a,t):Ut(e,a,t),r=>r<0?0:(this.removeAt(r),1))}*contains(e,t){return t!==null&&(yield*Ut(e,this.elements(),t))>=0}"addFirst(E)"(e,t){this.addFirst(e,t)}"addLast(E)"(e,t){this.addLast(e,t)}"offerFirst(E)"(e,t){return this.addFirst(e,t),1}"offerLast(E)"(e,t){return this.addLast(e,t),1}"add(E)"(e,t){return this.addLast(e,t),1}"offer(E)"(e,t){return this.addLast(e,t),1}"push(E)"(e,t){this.addFirst(e,t)}"pollFirst()"(){return this.pollFirst()}"pollLast()"(){return this.pollLast()}"poll()"(){return this.pollFirst()}"removeFirst()"(e){return this.#n?this.pollFirst():e.fail(se,null)}"removeLast()"(e){return this.#n?this.pollLast():e.fail(se,null)}"pop()"(e){return this["removeFirst()"](e)}"remove()"(e){return this["removeFirst()"](e)}"getFirst()"(e){return this.#n?this.at(0):e.fail(se,null)}"getLast()"(e){return this.#n?this.at(this.#n-1):e.fail(se,null)}"element()"(e){return this["getFirst()"](e)}"peekFirst()"(){return this.#n?this.at(0):null}"peek()"(){return this.#n?this.at(0):null}"peekLast()"(){return this.#n?this.at(this.#n-1):null}"removeFirstOccurrence(Object)"(e,t){return this.#a(e,t,!1)}"remove(Object)"(e,t){return this.#a(e,t,!1)}"removeLastOccurrence(Object)"(e,t){return this.#a(e,t,!0)}"clear()"(){this.#e.fill(null),this.#t=0,this.#n=0,this.mods++}"iterator()"(e){return new Fi(e.hash(),this,!1)}"descendingIterator()"(e){return new Fi(e.hash(),this,!0)}},Fi=class extends b{className;#e;#t;#n=0;#i=-1;#a;constructor(e,t,i){super(e),this.className=i?"java.util.ArrayDeque$DescendingIterator":"java.util.ArrayDeque$DeqIterator",this.#e=t,this.#t=i,this.#a=t.mods}#r(e){this.#e.mods!==this.#a&&e.limitation("changing an ArrayDeque while iterating over it")}"hasNext()"(e){return this.#r(e),f(this.#n<this.#e.size)}"next()"(e){if(this.#r(e),this.#n>=this.#e.size)return e.fail(se,null);let t=this.#t?this.#e.size-1-this.#n:this.#n;return this.#n++,this.#i=t,this.#e.at(t)}"remove()"(e){if(this.#i<0)return e.fail("java.lang.IllegalStateException",null);this.#r(e),this.#e.removeAt(this.#i),this.#t||this.#n--,this.#i=-1,this.#a=this.#e.mods}},gt=class extends M{className="java.util.PriorityQueue";get addAllNullMessage(){return null}es=[];modCount=0;"forEach(Consumer)"(e,t){if(t===null)return e.fail(J,null);let i=this;return c((function*(){let a=i.modCount,r=i.es.slice();for(let s of r)yield*p(e,t,"accept",[s]);i.modCount!==a&&e.fail(Je,null)})(),()=>{})}comparator=null;#e=!1;#t(e,t,i,a){return a instanceof h.JObject&&(this.#e=!0),this.comparator===null&&!this.#e?i(e()):c(t(),i)}noteContents(){Pt(this.es)&&(this.#e=!0)}get#n(){return this.comparator!==null||this.#e}*siftUpWith(e,t,i){this.comparator===null&&Xe(e,i);let a=W(e,this.comparator),r=this.es;for(;t>0;){let s=t-1>>>1,l=r[s];if((yield*a(i,l))>=0)break;r[t]=l,t=s}r[t]=i}*siftDownWith(e,t,i,a){this.comparator===null&&Xe(e,i);let r=W(e,this.comparator),s=this.es,l=a>>>1;for(;t<l;){let o=2*t+1,u=s[o],d=o+1;if(d<a&&(yield*r(u,s[d]))>0&&(u=s[o=d]),(yield*r(i,u))<=0)break;s[t]=u,t=o}s[t]=i}*heapifyWith(e){let t=this.es.length;e.charge(t);for(let i=(t>>>1)-1;i>=0;i--)yield*this.siftDownWith(e,i,this.es[i],t)}*removeAtWith(e,t){this.modCount++;let i=this.es.length-1;if(i===t){this.es.pop();return}let a=this.es.pop();yield*this.siftDownWith(e,t,a,i),this.es[t]===a&&(yield*this.siftUpWith(e,t,a))}get size(){return this.es.length}elements(){return this.es}siftUp(e,t,i){Xe(e,i);let a=this.es;for(;t>0;){let r=t-1>>>1,s=a[r];if(ve(e,i,s)>=0)break;a[t]=s,t=r}a[t]=i}siftDown(e,t,i,a){Xe(e,i);let r=this.es,s=a>>>1;for(;t<s;){let l=2*t+1,o=r[l],u=l+1;if(u<a&&ve(e,o,r[u])>0&&(o=r[l=u]),ve(e,i,o)<=0)break;r[t]=o,t=l}r[t]=i}heapify(e){let t=this.es.length;e.charge(t);for(let i=(t>>>1)-1;i>=0;i--)this.siftDown(e,i,this.es[i],t)}removeAt(e,t){this.modCount++;let i=this.es.length-1;if(i===t){this.es.pop();return}let a=this.es.pop();this.siftDown(e,t,a,i),this.es[t]===a&&this.siftUp(e,t,a)}"offer(E)"(e,t){if(t===null)return e.fail(J,null);e.allocate(1),e.charge(Math.log2(this.es.length+1)|0),this.modCount++,this.es.push(null);let i=this.es.length-1;return this.#t(()=>this.siftUp(e,i,t),()=>this.siftUpWith(e,i,t),()=>1,t)}"add(E)"(e,t){return this["offer(E)"](e,t)}"poll()"(e){if(!this.es.length)return null;e.charge(Math.log2(this.es.length)|0),this.modCount++;let t=this.es[0],i=this.es.pop(),a=this.es.length;return a?this.#t(()=>this.siftDown(e,0,i,a),()=>this.siftDownWith(e,0,i,a),()=>t):t}"peek()"(){return this.es.length?this.es[0]:null}"element()"(e){return this.es.length?this.es[0]:e.fail(se,null)}"remove()"(e){return this.es.length?this["poll()"](e):e.fail(se,null)}*contains(e,t){return t!==null&&(yield*Ut(e,this.es,t))>=0}"remove(Object)"(e,t){if(t===null)return 0;let i=this;return c((function*(){let a=yield*Ut(e,i.es,t);return a<0?!1:(i.#n?yield*i.removeAtWith(e,a):i.removeAt(e,a),!0)})(),f)}"clear()"(){this.modCount++,this.es.length=0}"iterator()"(e){return new Fr(e.hash(),this)}#i(e,t){let i=this;return c((function*(){let a=++i.modCount,r=[];for(let s of i.es.slice())(yield*t(s))||r.push(s);return i.modCount!==a&&e.fail(Je,null),r.length===i.es.length?!1:(i.es.length=0,i.es.push(...r),i.#n?yield*i.heapifyWith(e):i.heapify(e),!0)})(),f)}"removeAll(Collection)"(e,t){if(t===null)return e.fail(J,null);let i=t;return this.#i(e,a=>i.contains(e,a))}"retainAll(Collection)"(e,t){if(t===null)return e.fail(J,null);let i=t;return this.#i(e,function*(a){return!(yield*i.contains(e,a))})}"removeIf(Predicate)"(e,t){return t===null?e.fail(J,null):this.#i(e,function*(i){return k(yield*p(e,t,"test",[i]))})}heapifyAll(e){return this.#t(()=>this.heapify(e),()=>this.heapifyWith(e),()=>this)}},Fr=class extends b{className="java.util.PriorityQueue$Itr";#e;#t=0;#n;constructor(e,t){super(e),this.#e=t,this.#n=t.modCount}"hasNext()"(){return f(this.#t<this.#e.size)}"next()"(e){return this.#e.modCount!==this.#n?e.fail(Je,null):this.#t<this.#e.size?this.#e.es[this.#t++]:e.fail(se,null)}"remove()"(e){return e.limitation("Iterator.remove() on a PriorityQueue\'s iterator")}},Eh=(n,e,t)=>{e<0&&n.fail(Dr,`${t}: ${e}`)},Co={"Collections.sort(List)":(n,[e])=>e===null?n.fail(J,\'Cannot invoke "java.util.List.sort(java.util.Comparator)" because "list" is null\'):e["sort(Comparator)"](n,null),"Collections.sort(List,Comparator)":(n,[e,t])=>e===null?n.fail(J,\'Cannot invoke "java.util.List.sort(java.util.Comparator)" because "list" is null\'):e["sort(Comparator)"](n,t)},Ji={"ArrayList.<init>()":n=>new pe(n.hash()),"ArrayList.<init>(int)":(n,[e])=>(Eh(n,e,"Illegal Capacity"),new pe(n.hash())),"ArrayList.<init>(Collection)":(n,[e])=>{if(e===null)return n.fail(J,\'Cannot invoke "java.util.Collection.toArray()" because "c" is null\');let t=new pe(n.hash()),i=e.elements(n,!0);return n.allocate(i.length),t.es.push(...i),t},"ArrayDeque.<init>()":n=>new ti(n.hash()),"ArrayDeque.<init>(int)":n=>new ti(n.hash()),"ArrayDeque.<init>(Collection)":(n,[e])=>{if(e===null)return n.fail(J,\'Cannot invoke "java.util.Collection.size()" because "c" is null\');let t=new ti(n.hash());for(let i of e.elements(n,!0))t.addLast(n,i);return t},"PriorityQueue.<init>()":n=>new gt(n.hash()),"PriorityQueue.<init>(int)":(n,[e])=>e<1?n.fail(Dr,null):new gt(n.hash()),"PriorityQueue.<init>(Comparator)":(n,[e])=>{let t=new gt(n.hash());return t.comparator=e,t},"PriorityQueue.<init>(int,Comparator)":(n,[e,t])=>{if(e<1)return n.fail(Dr,null);let i=new gt(n.hash());return i.comparator=t,i},"PriorityQueue.<init>(Collection)":(n,[e])=>{if(e===null)return n.fail(J,\'Cannot invoke "java.util.Collection.toArray()" because "c" is null\');let t=new gt(n.hash()),i=e.elements(n,!0);return n.allocate(i.length),t.es.push(...i),t.noteContents(),e instanceof gt?(t.comparator=e.comparator,t):i.length===1&&i[0]===null?n.fail(J,null):t.heapifyAll(n)}};var Hr="java.util.NoSuchElementException",Nn="java.util.ConcurrentModificationException",j="java.lang.NullPointerException",ni="java.lang.IllegalArgumentException",Rh="java.lang.IllegalStateException",yo="java.lang.UnsupportedOperationException",tt=1<<30,So=8,xo=6,Ih=64,nt={identity:"iterating over or printing a HashMap or HashSet whose keys use identity hash codes (objects without hashCode(), enums): the JDK\'s order differs on every run",tree:"iterating over or printing a HashMap or HashSet after keys were removed from a bucket of colliding keys (the JDK\'s order there is not reproduced)",tie:"iterating over or printing a HashMap or HashSet with many keys whose hash codes are equal (the JDK orders them by identity hash code)",copied:"iterating over a HashMap or HashSet filled from a collection whose order differs on every JDK run (Set.of, Map.of, or keys hashed by identity)"};function Oh(n,e){return e===null||e instanceof h.JString||e instanceof h.JBox?!1:e instanceof h.JObject?n.hashCodeMethod(e)<0:e instanceof b?!e.contentEquality:!0}function Pr(n,e){return e instanceof h.JObject&&n.hashCodeMethod(e)>=0||e instanceof b&&e.contentEquality}function Gi(n){return n^n>>>16}function mn(n){return n===null?0:n instanceof h.JString?Gi(Ar(n)):n instanceof h.JBox?Gi(Xn(n)):Gi(n.hash)}function*gn(n,e){return Pr(n,e)?Gi(yield*B(n,e)):mn(e)}function Jr(n){let e=-1>>>Math.clz32(n-1)|0;return e<0?1:e>=tt?tt:e+1}function wo(n,e){let t=Math.ceil(n/Math.fround(e));return t<tt?Math.trunc(t):tt}var Pi=class{hash;key;value;next=null;htNext=null;before=null;after=null;tree=!1;prev=null;parent=null;left=null;right=null;red=!1;entry=null;constructor(e,t,i){this.hash=e,this.key=t,this.value=i}};function Vo(n,e){let t=e.right;if(!t)return n;let i=e.right=t.left;i&&(i.parent=e);let a=t.parent=e.parent;return a?a.left===e?a.left=t:a.right=t:(n=t,t.red=!1),t.left=e,e.parent=t,n}function Eo(n,e){let t=e.left;if(!t)return n;let i=e.left=t.right;i&&(i.parent=e);let a=t.parent=e.parent;return a?a.right===e?a.right=t:a.left=t:(n=t,t.red=!1),t.right=e,e.parent=t,n}function Ro(n,e){for(e.red=!0;;){let t=e.parent;if(!t)return e.red=!1,e;let i=t.parent;if(!t.red||!i)return n;if(t===i.left){let a=i.right;a&&a.red?(a.red=!1,t.red=!1,i.red=!0,e=i):(e===t.right&&(e=t,n=Vo(n,e),t=e.parent,i=t?t.parent:null),t&&(t.red=!1,i&&(i.red=!0,n=Eo(n,i))))}else{let a=i.left;a&&a.red?(a.red=!1,t.red=!1,i.red=!0,e=i):(e===t.left&&(e=t,n=Eo(n,e),t=e.parent,i=t?t.parent:null),t&&(t.red=!1,i&&(i.red=!0,n=Vo(n,i))))}}}var Lo=n=>n instanceof b&&"entryKey"in n,vt=class n extends b{copyMappings(e){return{mappings:this.mappings(e,!0),unknown:null}}get contentEquality(){return!0}*javaString(e){let t=[],i=this.mappings(e,!0);e.charge(i.length);for(let a of i)t.push(`${yield*V(e,a.entryKey,this,"(this Map)")}=${yield*V(e,a.entryValue,this,"(this Map)")}`);return`{${t.join(", ")}}`}*contentEquals(e,t){if(t===this)return!0;if(!(t instanceof n)||t.size!==this.size)return!1;for(let i of this.mappings(e,!1)){let a=yield*t.lookup(e,i.entryKey);if(a===void 0||(i.entryValue===null?a!==null:!(yield*T(e,i.entryValue,a))))return!1}return!0}*contentHash(e){let t=0;for(let i of this.mappings(e,!1))t=t+((yield*B(e,i.entryKey))^(yield*B(e,i.entryValue)))|0;return t}"size()"(){return this.size}"isEmpty()"(){return f(this.size===0)}},_=class extends vt{className="java.util.HashMap";table=null;#e=0;threshold=0;loadFactor=.75;modCount=0;unknown=null;linked=!1;head=null;tail=null;#t=null;#n=null;#i=null;get size(){return this.#e}initialCapacity(e,t){t<0&&e.fail(ni,`Illegal initial capacity: ${t}`),this.threshold=Jr(t)}capacityAndLoad(e,t,i){t<0&&e.fail(ni,`Illegal initial capacity: ${t}`),i>0||e.fail(ni,`Illegal load factor: ${h.floatToString(i)}`),this.loadFactor=Math.fround(i),this.threshold=Jr(t)}#a(e,t){let i=this.table;if(!i)return null;for(let a=i[i.length-1&e]??null;a;a=a.next)if(a.hash===e&&(a.key===t||t!==null&&Wn(t,a.key)))return a;return null}*find(e,t,i){if(i===null||!dn(e,i))return this.#a(t,i);let a=this.table;if(!a)return null;for(let r=a[a.length-1&t]??null;r;r=r.next)if(r.hash===t&&(r.key===i||(yield*T(e,i,r.key))))return r;return null}*getNode(e,t){return yield*this.find(e,yield*gn(e,t),t)}*lookup(e,t){let i=yield*this.getNode(e,t);return i?i.value:void 0}#r(e,t){if(!(Pr(e,t)||t!==null&&dn(e,t)))return this.#a(mn(t),t)}*put(e,t,i,a=!1){let r=yield*gn(e,t),s=yield*this.find(e,r,t);if(s){let l=s.value;return(!a||l===null)&&(s.value=i),this.accessed(s),l}return this.addNode(e,r,t,i),yield*this.afterInsertion(e),null}evictor(e){let t=this.owner;return t&&this.linked?e.overrideOf(t,"removeEldestEntry(Entry)"):-1}*afterInsertion(e){let t=this.evictor(e);if(t<0||!this.head)return;let i=this.head;(yield{invoke:t,args:[this.owner,bn(e,i)]})===1&&(yield*this.remove(e,i.key))}*evicting(e,t){let i=this.size,a=yield*t;return this.size>i&&(yield*this.afterInsertion(e)),a}accessed(e){}addNode(e,t,i,a){e.allocate(1);let r=this.table;(!r||r.length===0)&&(r=this.resize(e));let s=r.length-1&t,l=new Pi(t,i,a),o=r[s]??null;if(!o)r[s]=l;else if(o.tree)this.#h(e,r,o,l);else{let u=1,d=o;for(;d.next;)d=d.next,u++;d.next=l,u>=So&&this.#o(e,r,t)}return this.linkNew(l),this.modCount++,++this.#e>this.threshold&&this.resize(e),l}resize(e){let t=this.table,i=t?t.length:0,a=this.threshold,r=0,s=0;if(i>0){if(i>=tt)return this.threshold=2147483647,t;r=i<<1,r<tt&&i>=16&&(s=a<<1)}else a>0?r=a:(r=16,s=Math.trunc(Math.fround(16*this.loadFactor)));if(s===0){let o=Math.fround(r*this.loadFactor);s=r<tt&&o<tt?Math.trunc(o):2147483647}this.threshold=s,e.allocate(r-i);let l=new Array(r).fill(null);if(this.table=l,t){e.charge(i);for(let o=0;o<i;o++){let u=t[o];if(u)if(t[o]=null,!u.next)l[u.hash&r-1]=u;else if(u.tree)this.#d(l,o,i,u);else{let d=null,g=null,v=null,m=null;for(let x=u;x;x=x.next)(x.hash&i)===0?(g?g.next=x:d=x,g=x):(m?m.next=x:v=x,m=x);g&&(g.next=null,l[o]=d),m&&(m.next=null,l[o+i]=v)}}}return l}#s(e,t,i){if(i.hash>e)return-1;if(i.hash<e)return 1;let a=i.key;if(t instanceof h.JString&&a instanceof h.JString){let r=Ye(t.value,a.value);if(r!==0)return r}else if(t instanceof h.JBox&&a instanceof h.JBox&&t.kind===a.kind){let r=Qn(t,a);if(r!==0)return r}if(t!==null&&a!==null){let r=Ye(Ze(t),Ze(a));if(r!==0)return r}return this.unknown??=nt.tie,-1}#l(e,t){let i=null;for(let a=t;a;a=a.next){if(a.left=a.right=null,!i){a.parent=null,a.red=!1,i=a;continue}for(let r=i;;){let s=this.#s(a.hash,a.key,r),l=s<=0?r.left:r.right;if(l){r=l;continue}a.parent=r,s<=0?r.left=a:r.right=a,i=Ro(i,a);break}}this.#u(e,i)}#u(e,t){let i=e.length-1&t.hash,a=e[i]??null;if(t===a)return;let r=t.next,s=t.prev;r&&(r.prev=s),s&&(s.next=r),a&&(a.prev=t),t.next=a,t.prev=null,e[i]=t}#o(e,t,i){if(t.length<Ih){this.resize(e);return}let a=t[t.length-1&i]??null,r=null;for(let s=a;s;s=s.next)s.tree=!0,s.prev=r,r=s;a&&this.#l(t,a)}#h(e,t,i,a){let r=i;for(;r.parent;)r=r.parent;for(let s=r;;){let l=this.#s(a.hash,a.key,s),o=l<=0?s.left:s.right;if(o){s=o;continue}a.tree=!0;let u=s.next;a.next=u,s.next=a,a.parent=a.prev=s,u&&(u.prev=a),l<=0?s.left=a:s.right=a,this.#u(t,Ro(r,a));return}}#d(e,t,i,a){let r=null,s=null,l=null,o=null,u=0,d=0;for(let g=a,v;g;g=v)v=g.next,g.next=null,(g.hash&i)===0?(g.prev=s,s?s.next=g:r=g,s=g,u++):(g.prev=o,o?o.next=g:l=g,o=g,d++);r&&(u<=xo?e[t]=Gr(r):(e[t]=r,l&&this.#l(e,r))),l&&(d<=xo?e[t+i]=Gr(l):(e[t+i]=l,r&&this.#l(e,l)))}removeNode(e){let t=this.table,i=t.length-1&e.hash;if(e.tree){let r=Gr(t[i]);t[i]=r,this.linked||(this.unknown??=nt.tree)}let a=t[i]??null;if(a===e)t[i]=e.next;else{for(;a&&a.next!==e;)a=a.next;a&&(a.next=e.next)}this.linked&&(e.before?e.before.after=e.after:this.head=e.after,e.after?e.after.before=e.before:this.tail=e.before,e.before=e.after=null),this.modCount++,this.#e--}*remove(e,t){let i=yield*this.getNode(e,t);return i&&this.removeNode(i),i}clear(){this.modCount++,this.table&&this.#e>0&&(this.#e=0,this.table.fill(null)),this.head=this.tail=null,this.unknown=null}orderProblem(e){if(this.#e<2)return null;if(this.unknown)return this.unknown;if(this.linked)return null;for(let t of this.#c())if(Oh(e,t.key))return nt.identity;return null}#c(){let e=[];if(this.linked){for(let i=this.head;i;i=i.after)e.push(i);return e}let t=this.table;if(!t||this.#e===0)return e;for(let i of t)for(let a=i;a;a=a.next)e.push(a);return e}nodes(e,t){if(t){let i=this.orderProblem(e);i&&e.limitation(i)}return e.charge(this.#e),this.#c()}mappings(e,t){return this.nodes(e,t).map(i=>bn(e,i))}copyMappings(e){let t=this.orderProblem(e);return{mappings:this.nodes(e,!1).map(i=>bn(e,i)),unknown:t?nt.copied:null}}firstFrom(e){let t=this.table;if(!t)return{node:null,index:e};for(;e<t.length;){let i=t[e++]??null;if(i)return{node:i,index:e}}return{node:null,index:e}}*putMappings(e,t){let i=t.size;if(i>0)if(this.table)for(;i>this.threshold&&this.table.length<tt;)this.resize(e);else{let s=wo(i,this.loadFactor);s>this.threshold&&(this.threshold=Jr(s))}let{mappings:a,unknown:r}=t.copyMappings(e);for(let s of a)yield*this.put(e,s.entryKey,s.entryValue);r&&i>1&&this.copiedInUnknownOrder(r,a.map(s=>s.entryKey))}copiedInUnknownOrder(e,t){if(this.linked){this.unknown??=e;return}let i=new Set(t);for(let a of this.table??[]){let r=0;for(let s=a;s;s=s.next)if(i.has(s.key)&&++r>1){this.unknown??=e;return}}}#f(e){return this.#e>this.threshold||!this.table||this.table.length===0?this.resize(e):this.table}#m(e,t,i,a,r){e.allocate(1);let s=t.length-1&i,l=t[s]??null,o=new Pi(i,a,r);if(l&&l.tree)this.#h(e,t,l,o);else{let u=0;for(let d=l;d;d=d.next)u++;o.next=l,t[s]=o,u>=So-1&&this.#o(e,t,i)}this.linkNew(o),this.modCount++,this.#e++}linkNew(e){this.linked&&(e.before=this.tail,this.tail?this.tail.after=e:this.head=e,this.tail=e)}#g(e,t){this.modCount!==t&&e.fail(Nn,null)}#v(e,t){return t===null||!(Pr(e,t)||dn(e,t))}"computeIfAbsent(K,Function)"(e,t,i){if(i===null)return e.fail(j,null);let a=(s,l,o,u,d)=>{let g=d??null;return this.#g(e,u),g===null?null:o?(o.value=g,this.accessed(o),g):(this.#m(e,s,l,t,g),g)};if(this.#v(e,t)&&this.evictor(e)<0){let s=mn(t),l=this.#f(e),o=this.#a(s,t);if(o&&o.value!==null)return this.accessed(o),o.value;let u=this.modCount;return Hn(e,i,"apply",[t],d=>a(l,s,o,u,d))}let r=this;return c(r.evicting(e,(function*(){let s=yield*gn(e,t),l=r.#f(e),o=yield*r.find(e,s,t);if(o&&o.value!==null)return r.accessed(o),o.value;let u=r.modCount;return a(l,s,o,u,yield*p(e,i,"apply",[t]))})()))}"computeIfPresent(K,BiFunction)"(e,t,i){if(i===null)return e.fail(j,null);let a=(s,l,o)=>{let u=o??null;return this.#g(e,l),u===null?(this.removeNode(s),null):(s.value=u,this.accessed(s),u)};if(this.#v(e,t)){let s=this.#a(mn(t),t);if(!s||s.value===null)return null;let l=this.modCount;return Hn(e,i,"apply",[t,s.value],o=>a(s,l,o))}let r=this;return c((function*(){let s=yield*r.getNode(e,t);if(!s||s.value===null)return null;let l=r.modCount,o=yield*p(e,i,"apply",[t,s.value]);return r.#g(e,l),(o??null)===null&&(yield*gn(e,t)),a(s,l,o)})())}"compute(K,BiFunction)"(e,t,i){if(i===null)return e.fail(j,null);let a=(s,l,o,u,d)=>{let g=d??null;return this.#g(e,u),o?g!==null?(o.value=g,this.accessed(o)):this.removeNode(o):g!==null&&this.#m(e,s,l,t,g),g};if(this.#v(e,t)&&this.evictor(e)<0){let s=mn(t),l=this.#f(e),o=this.#a(s,t),u=this.modCount;return Hn(e,i,"apply",[t,o?o.value:null],d=>a(l,s,o,u,d))}let r=this;return c(r.evicting(e,(function*(){let s=yield*gn(e,t),l=r.#f(e),o=yield*r.find(e,s,t),u=r.modCount;return a(l,s,o,u,yield*p(e,i,"apply",[t,o?o.value:null]))})()))}"merge(K,V,BiFunction)"(e,t,i,a){if(i===null||a===null)return e.fail(j,null);let r=(l,o)=>(o!==null?(l.value=o,this.accessed(l)):this.removeNode(l),o);if(this.#v(e,t)&&this.evictor(e)<0){let l=mn(t),o=this.#f(e),u=this.#a(l,t);if(!u)return this.#m(e,o,l,t,i),i;if(u.value===null)return r(u,i);let d=this.modCount;return Hn(e,a,"apply",[u.value,i],g=>(this.#g(e,d),r(u,g??null)))}let s=this;return c(s.evicting(e,(function*(){let l=yield*gn(e,t),o=s.#f(e),u=yield*s.find(e,l,t);if(!u)return s.#m(e,o,l,t,i),i;if(u.value===null)return r(u,i);let d=s.modCount,g=(yield*p(e,a,"apply",[u.value,i]))??null;return s.#g(e,d),r(u,g)})()))}*each(e,t){let i=this.orderProblem(e);i&&e.limitation(i);let a=this.modCount;if(this.linked)for(let r=this.head;r;r=r.after)yield*t(r);else{let r=this.table;if(this.#e>0&&r)for(let s of r)for(let l=s;l;l=l.next)yield*t(l)}this.modCount!==a&&e.fail(Nn,null)}"forEach(BiConsumer)"(e,t){return t===null?e.fail(j,null):c(this.each(e,function*(i){yield*p(e,t,"accept",[i.key,i.value])}),()=>{})}"replaceAll(BiFunction)"(e,t){return t===null?e.fail(j,null):c(this.each(e,function*(i){i.value=(yield*p(e,t,"apply",[i.key,i.value]))??null}),()=>{})}"get(Object)"(e,t){let i=this.#r(e,t);return i!==void 0?i?this.#p(i):null:c(this.getNode(e,t),a=>a?this.#p(a):null)}"getOrDefault(Object,V)"(e,t,i){let a=this.#r(e,t);return a!==void 0?a?this.#p(a):i:c(this.getNode(e,t),r=>r?this.#p(r):i)}#p(e){return this.accessed(e),e.value}"containsKey(Object)"(e,t){let i=this.#r(e,t);return i!==void 0?f(i!==null):c(this.getNode(e,t),a=>f(a!==null))}"containsValue(Object)"(e,t){let i=this.nodes(e,!1);return c((function*(){for(let a of i)if(a.value===t||t!==null&&(yield*T(e,t,a.value)))return!0;return!1})(),f)}"put(K,V)"(e,t,i){return c(this.put(e,t,i))}"putIfAbsent(K,V)"(e,t,i){return c(this.put(e,t,i,!0))}"remove(Object)"(e,t){return c(this.remove(e,t),i=>i?i.value:null)}"remove(Object,Object)"(e,t,i){let a=this;return c((function*(){let r=yield*a.getNode(e,t);return!r||!(yield*ne(e,r.value,i))?!1:(a.removeNode(r),!0)})(),f)}"replace(K,V)"(e,t,i){return c(this.getNode(e,t),a=>{if(!a)return null;let r=a.value;return a.value=i,this.accessed(a),r})}"replace(K,V,V)"(e,t,i,a){let r=this;return c((function*(){let s=yield*r.getNode(e,t);return!s||!(yield*ne(e,s.value,i))?!1:(s.value=a,r.accessed(s),!0)})(),f)}"putAll(Map)"(e,t){return t===null?e.fail(j,\'Cannot invoke "java.util.Map.size()" because "m" is null\'):c(this.putMappings(e,t),()=>{})}"clear()"(){this.clear()}"keySet()"(e){return this.#t??=new _r(e.hash(),this)}"values()"(e){return this.#n??=new Kr(e.hash(),this)}"entrySet()"(e){return this.#i??=new zr(e.hash(),this)}};function Gr(n){for(let e=n;e;e=e.next)e.tree=!1,e.prev=e.parent=e.left=e.right=null,e.red=!1;return n}var je=class extends _{className="java.util.LinkedHashMap";linked=!0;accessOrder=!1;"removeEldestEntry(Entry)"(){return f(!1)}accessed(e){if(!this.accessOrder||e===this.tail)return;let t=e.before,i=e.after;t?t.after=i:this.head=i,i&&(i.before=t),e.before=this.tail,e.after=null,this.tail&&(this.tail.after=e),this.tail=e,this.modCount++}},vn=class extends _{className="java.util.Hashtable";linked=!0;buckets=new Array(11).fill(null);#e=0;#t=8;#n=.75;sized(e,t,i=.75){t<0&&e.fail(ni,`Illegal Capacity: ${t}`),i>0||e.fail(ni,`Illegal Load: ${h.floatToString(i)}`);let a=t===0?1:t;this.#n=Math.fround(i),this.buckets=new Array(a).fill(null),this.#t=Math.trunc(Math.min(a*this.#n,2147483640))}#i(e,t){return((e.hash^e.hash>>>16)&2147483647)%t}linkNew(e){this.#e>=this.#t&&this.#a();let t=this.buckets,i=this.#i(e,t.length),a=t[i]??null;for(let r=i-1;!a&&r>=0;r--)a=t[r]??null;e.htNext=t[i]??null,t[i]=e,this.#e++,e.after=a,e.before=a?a.before:this.tail,e.before?e.before.after=e:this.head=e,a?a.before=e:this.tail=e}#a(){let e=this.buckets,t=e.length*2+1,i=new Array(t).fill(null);this.#t=Math.trunc(Math.min(t*this.#n,2147483640));for(let r=e.length;r-- >0;)for(let s=e[r]??null;s;){let l=s;s=s.htNext;let o=this.#i(l,t);l.htNext=i[o]??null,i[o]=l}this.buckets=i;let a=null;this.head=null;for(let r=t;r-- >0;)for(let s=i[r]??null;s;s=s.htNext)s.before=a,a?a.after=s:this.head=s,a=s;a&&(a.after=null),this.tail=a}removeNode(e){let t=this.buckets,i=this.#i(e,t.length);if(t[i]===e)t[i]=e.htNext;else for(let a=t[i]??null;a;a=a.htNext)if(a.htNext===e){a.htNext=e.htNext;break}this.#e--,super.removeNode(e)}clear(){this.buckets.fill(null),this.#e=0,super.clear()}#r(){let e=[];for(let t of this.buckets)for(let i=t;i;i=i.htNext)e.push(i);return e}*put(e,t,i,a=!1){return i===null?e.fail(j,null):t===null?e.fail(j,et):yield*super.put(e,t,i,a)}"get(Object)"(e,t){return t===null?e.fail(j,et):super["get(Object)"](e,t)}"getOrDefault(Object,V)"(e,t,i){return t===null?e.fail(j,et):super["getOrDefault(Object,V)"](e,t,i)}"containsKey(Object)"(e,t){return t===null?e.fail(j,et):super["containsKey(Object)"](e,t)}"remove(Object)"(e,t){return t===null?e.fail(j,et):super["remove(Object)"](e,t)}"containsValue(Object)"(e,t){return t===null?e.fail(j,null):super["containsValue(Object)"](e,t)}"contains(Object)"(e,t){return this["containsValue(Object)"](e,t)}"computeIfAbsent(K,Function)"(e,t,i){return i===null?e.fail(j,null):t===null?e.fail(j,et):super["computeIfAbsent(K,Function)"](e,t,i)}"computeIfPresent(K,BiFunction)"(e,t,i){return i===null?e.fail(j,null):t===null?e.fail(j,et):super["computeIfPresent(K,BiFunction)"](e,t,i)}"compute(K,BiFunction)"(e,t,i){return i===null?e.fail(j,null):t===null?e.fail(j,et):super["compute(K,BiFunction)"](e,t,i)}"merge(K,V,BiFunction)"(e,t,i,a){return a===null||i===null?e.fail(j,null):t===null?e.fail(j,et):super["merge(K,V,BiFunction)"](e,t,i,a)}"forEach(BiConsumer)"(e,t){if(t===null)return e.fail(j,null);let i=this;return c((function*(){let a=i.modCount;for(let r of i.#r())yield*p(e,t,"accept",[r.key,r.value]),i.modCount!==a&&e.fail(Nn,null)})(),()=>{})}"replaceAll(BiFunction)"(e,t){if(t===null)return e.fail(j,null);let i=this;return c((function*(){let a=i.modCount;for(let r of i.#r()){let s=(yield*p(e,t,"apply",[r.key,r.value]))??null;s===null&&e.fail(j,null),r.value=s,i.modCount!==a&&e.fail(Nn,null)}})(),()=>{})}"keys()"(e){return this.size===0?new _i(e.hash()):new Ui(e.hash(),this,"key")}"elements()"(e){return this.size===0?new _i(e.hash()):new Ui(e.hash(),this,"value")}},et=\'Cannot invoke "Object.hashCode()" because "key" is null\',Ui=class extends b{className="java.util.Hashtable$Enumerator";#e;#t;#n;#i=null;constructor(e,t,i){super(e),this.#e=t.buckets,this.#n=t.buckets.length,this.#t=i}"hasMoreElements()"(){for(;!this.#i&&this.#n>0;)this.#i=this.#e[--this.#n]??null;return f(this.#i!==null)}"nextElement()"(e){for(;!this.#i&&this.#n>0;)this.#i=this.#e[--this.#n]??null;let t=this.#i;return t?(this.#i=t.htNext,this.#t==="key"?t.key:t.value):e.fail(Hr,"Hashtable Enumerator")}"asIterator()"(e){return new Jt(e.hash(),this)}},_i=class extends b{className="java.util.Collections$EmptyEnumeration";"hasMoreElements()"(){return f(!1)}"nextElement()"(e){return e.fail(Hr,null)}"asIterator()"(e){return new Jt(e.hash(),this)}};function bn(n,e){return e.entry??=new Ur(n.hash(),e)}var Ur=class extends b{className="java.util.HashMap$Node";node;constructor(e,t){super(e),this.node=t}get entryKey(){return this.node.key}get entryValue(){return this.node.value}get contentEquality(){return!0}*javaString(e){return yield*Cn(e,this)}*contentEquals(e,t){return yield*zt(e,this,t)}*contentHash(e){return yield*yn(e,this)}"getKey()"(){return this.node.key}"getValue()"(){return this.node.value}"setValue(V)"(e,t){let i=this.node.value;return this.node.value=t,i}};function*Cn(n,e){return`${yield*V(n,e.entryKey,e)}=${yield*V(n,e.entryValue,e)}`}function*zt(n,e,t){return t===e?!0:Lo(t)?(yield*ne(n,e.entryKey,t.entryKey))&&(yield*ne(n,e.entryValue,t.entryValue)):!1}function*yn(n,e){return(yield*B(n,e.entryKey))^(yield*B(n,e.entryValue))|0}var ii=class extends M{map;constructor(e,t){super(e),this.map=t}get size(){return this.map.size}#e(e,t){return this.kind==="key"?t.key:this.kind==="value"?t.value:bn(e,t)}elements(e,t){return this.map.nodes(e,t).map(i=>this.#e(e,i))}copyItems(e){let t=this.map.orderProblem(e);return{items:this.elements(e,!1),unknown:t?nt.copied:null}}"add(E)"(e){return e.fail(yo,null)}"addAll(Collection)"(e){return e.fail(yo,null)}"clear()"(){this.map.clear()}"iterator()"(e){return new Ki(e,this.map,this.kind)}"forEach(Consumer)"(e,t){if(t===null)return e.fail(j,null);let i=this.kind;return c(this.map.each(e,function*(a){yield*p(e,t,"accept",[i==="key"?a.key:i==="value"?a.value:bn(e,a)])}),()=>{})}};function*qr(n,e,t){if(t===e)return!0;if(!(t instanceof M)||!t.isSet||t.size!==e.size)return!1;for(let i of t.elements(n,!1))if(!(yield*e.contains(n,i)))return!1;return!0}function*Wr(n,e){let t=0;for(let i of e.elements(n,!1))t=t+(yield*B(n,i))|0;return t}var _r=class extends ii{kind="key";isSet=!0;get className(){return this.map.linked?"java.util.LinkedHashMap$LinkedKeySet":"java.util.HashMap$KeySet"}get contentEquality(){return!0}*contentEquals(e,t){return yield*qr(e,this,t)}*contentHash(e){return yield*Wr(e,this)}*contains(e,t){return(yield*this.map.getNode(e,t))!==null}"remove(Object)"(e,t){return c(this.map.remove(e,t),i=>f(i!==null))}},Kr=class extends ii{kind="value";get className(){return this.map.linked?"java.util.LinkedHashMap$LinkedValues":"java.util.HashMap$Values"}*contains(e,t){for(let i of this.map.nodes(e,!1))if(t===null?i.value===null:yield*T(e,t,i.value))return!0;return!1}"remove(Object)"(e,t){let i=this.map;return c((function*(){for(let a of i.nodes(e,!0))if(t===null?a.value===null:yield*T(e,t,a.value))return i.removeNode(a),!0;return!1})(),f)}},zr=class extends ii{kind="entry";isSet=!0;get className(){return this.map.linked?"java.util.LinkedHashMap$LinkedEntrySet":"java.util.HashMap$EntrySet"}get contentEquality(){return!0}*contentEquals(e,t){return yield*qr(e,this,t)}*contentHash(e){return yield*Wr(e,this)}*#e(e,t){if(!Lo(t))return null;let i=yield*this.map.getNode(e,t.entryKey);return i&&(yield*ne(e,i.value,t.entryValue))?i:null}*contains(e,t){return(yield*this.#e(e,t))!==null}"remove(Object)"(e,t){return c(this.#e(e,t),i=>(i&&this.map.removeNode(i),f(i!==null)))}},Ki=class extends b{className;#e;#t;#n;#i=null;#a=0;#r;constructor(e,t,i){super(e.hash());let a=t.orderProblem(e);a&&e.limitation(a),this.#e=t,this.#t=i;let r=i==="key"?"Key":i==="value"?"Value":"Entry";this.className=t.linked?`java.util.LinkedHashMap$Linked${r}Iterator`:`java.util.HashMap$${r}Iterator`,this.#r=t.modCount,t.linked?this.#n=t.head:t.size>0?{node:this.#n,index:this.#a}=t.firstFrom(0):this.#n=null}"hasNext()"(){return f(this.#n!==null)}"next()"(e){let t=this.#n;return this.#e.modCount!==this.#r?e.fail(Nn,null):t?(this.#i=t,this.#e.linked?this.#n=t.after:(this.#n=t.next)===null&&({node:this.#n,index:this.#a}=this.#e.firstFrom(this.#a)),e.charge(1),this.#t==="key"?t.key:this.#t==="value"?t.value:bn(e,t)):e.fail(Hr,null)}"remove()"(e){let t=this.#i;if(!t)return e.fail(Rh,null);if(this.#e.modCount!==this.#r)return e.fail(Nn,null);this.#i=null,this.#e.removeNode(t),this.#r=this.#e.modCount}},Kt=class extends M{className="java.util.HashSet";isSet=!0;hashed=!0;map;constructor(e,t){super(e),this.map=t}get size(){return this.map.size}elements(e,t){return this.map.nodes(e,t).map(i=>i.key)}copyItems(e){let t=this.map.orderProblem(e);return{items:this.elements(e,!1),unknown:t?nt.copied:null}}markUnknown(e,t){this.map.copiedInUnknownOrder(e,t)}get contentEquality(){return!0}*contentEquals(e,t){return yield*qr(e,this,t)}*contentHash(e){return yield*Wr(e,this)}*contains(e,t){return(yield*this.map.getNode(e,t))!==null}"contains(Object)"(e,t){return this.map["containsKey(Object)"](e,t)}"add(E)"(e,t){let i=this.map.size;return c(this.map.put(e,t,Th),()=>f(this.map.size!==i))}"remove(Object)"(e,t){return c(this.map.remove(e,t),i=>f(i!==null))}"clear()"(){this.map.clear()}"iterator()"(e){return new Ki(e,this.map,"key")}},Th=null,pn=class extends Kt{className="java.util.LinkedHashSet"};function Io(n,e,t){let{items:i,unknown:a}=t.copyItems(n);return c(wh(e.addEach(n,i)),()=>(a&&i.length>1&&e.markUnknown(a,i),e))}var Oo=\'Cannot invoke "java.util.Collection.size()" because "c" is null\',To=\'Cannot invoke "java.util.Map.size()" because "m" is null\',Sn={"Hashtable.<init>()":n=>new vn(n.hash()),"Hashtable.<init>(int)":(n,[e])=>{let t=new vn(n.hash());return t.sized(n,e),t},"Hashtable.<init>(int,float)":(n,[e,t])=>{let i=new vn(n.hash());return i.sized(n,e,t),i},"Hashtable.<init>(Map)":(n,[e])=>{if(e===null)return n.fail(j,\'Cannot invoke "java.util.Map.size()" because "t" is null\');let t=new vn(n.hash());return t.sized(n,Math.max(2*e.size,11)),c(t.putMappings(n,e),()=>t)},"HashMap.<init>()":n=>new _(n.hash()),"HashMap.<init>(int)":(n,[e])=>{let t=new _(n.hash());return t.initialCapacity(n,e),t},"HashMap.<init>(Map)":(n,[e])=>{if(e===null)return n.fail(j,To);let t=new _(n.hash());return c(t.putMappings(n,e),()=>t)},"LinkedHashMap.<init>()":n=>new je(n.hash()),"LinkedHashMap.<init>(int)":(n,[e])=>{let t=new je(n.hash());return t.initialCapacity(n,e),t},"HashMap.<init>(int,float)":(n,[e,t])=>{let i=new _(n.hash());return i.capacityAndLoad(n,e,t),i},"LinkedHashMap.<init>(int,float)":(n,[e,t])=>{let i=new je(n.hash());return i.capacityAndLoad(n,e,t),i},"LinkedHashMap.<init>(int,float,boolean)":(n,[e,t,i])=>{let a=new je(n.hash());return a.capacityAndLoad(n,e,t),a.accessOrder=i===1,a},"LinkedHashMap.<init>(Map)":(n,[e])=>{if(e===null)return n.fail(j,To);let t=new je(n.hash());return c(t.putMappings(n,e),()=>t)},"HashSet.<init>()":n=>new Kt(n.hash(),new _(n.hash())),"HashSet.<init>(int)":(n,[e])=>{let t=new _(n.hash());return t.initialCapacity(n,e),new Kt(n.hash(),t)},"HashSet.<init>(int,float)":(n,[e,t])=>{let i=new _(n.hash());return i.capacityAndLoad(n,e,t),new Kt(n.hash(),i)},"HashSet.<init>(Collection)":(n,[e])=>{if(e===null)return n.fail(j,Oo);let t=new _(n.hash());return t.initialCapacity(n,wo(Math.max(e.size,12),.75)),Io(n,new Kt(n.hash(),t),e)},"LinkedHashSet.<init>()":n=>new pn(n.hash(),new je(n.hash())),"LinkedHashSet.<init>(int)":(n,[e])=>{let t=new je(n.hash());return t.initialCapacity(n,e),new pn(n.hash(),t)},"LinkedHashSet.<init>(int,float)":(n,[e,t])=>{let i=new je(n.hash());return i.capacityAndLoad(n,e,t),new pn(n.hash(),i)},"LinkedHashSet.<init>(Collection)":(n,[e])=>{if(e===null)return n.fail(j,Oo);let t=new je(n.hash());return t.initialCapacity(n,Math.max(2*e.size,11)),Io(n,new pn(n.hash(),t),e)}};function*wh(n){return n!==null&&typeof n=="object"&&Symbol.iterator in n?yield*n:n}var it="java.lang.NullPointerException",zi=class extends Fe{*javaString(e){return e.limitation("printing a lambda")}},Ge=class extends zi{samKey="compare(T,T)";call(e,t){return this.compare(e,t[0],t[1])}};function Ct(n,e,t,i){return W(n,e)(t,i)}function Hi(n,e,t){return W(n,null)(e,t)}var Vn=class extends Ge{className="java.util.Comparator$$Lambda";#e;#t;constructor(e,t,i){super(e),this.#e=t,this.#t=i}*compare(e,t,i){let a=yield*p(e,this.#e,"apply",[t]),r=yield*p(e,this.#e,"apply",[i]);return this.#t!==void 0?yield*Ct(e,this.#t,a,r):a===null?e.fail(it,\'Cannot invoke "java.lang.Comparable.compareTo(Object)" because the return value of "java.util.function.Function.apply(Object)" is null\'):yield*Hi(e,a,r)}},Nt=class extends Ge{className="java.util.Comparator$$Lambda";#e;#t;constructor(e,t,i){super(e),this.#e=t,this.#t=i}*compare(e,t,i){let a=yield*p(e,this.#e,this.#t,[t]),r=yield*p(e,this.#e,this.#t,[i]);return this.#t==="applyAsDouble"?ft(a,r):a<r?-1:a>r?1:0}},pt=class extends Ge{className="java.util.Comparator$$Lambda";#e;#t;constructor(e,t,i){super(e),this.#e=t,this.#t=i}*compare(e,t,i){let a=yield*Ct(e,this.#e,t,i);return a!==0?a:yield*Ct(e,this.#t,t,i)}},bt=class extends Ge{className;reverse;constructor(e,t){super(e),this.reverse=t,this.className=t?"java.util.Collections$ReverseComparator":"java.util.Comparators$NaturalOrderComparator"}*javaString(e){return this.reverse?`${this.className}@${this.hash.toString(16)}`:"INSTANCE"}*compare(e,t,i){return this.reverse?i===null?e.fail(it,\'Cannot invoke "java.lang.Comparable.compareTo(Object)" because "c2" is null\'):yield*Hi(e,i,t):t===null?e.fail(it,\'Cannot invoke "java.lang.Comparable.compareTo(Object)" because "c1" is null\'):yield*Hi(e,t,i)}},Yr=class extends Ge{className="java.lang.String$CaseInsensitiveComparator";*compare(e,t,i){if(t===null)return e.fail(it,\'Cannot read field "value" because "s1" is null\');if(i===null)return e.fail(it,\'Cannot read field "value" because "s2" is null\');let a=t.value,r=i.value,s=Math.min(a.length,r.length);e.charge(s>>>4);for(let l=0;l<s;l++){let o=a.charCodeAt(l),u=r.charCodeAt(l);if(o!==u){if(o>255||u>255)return e.limitation("String.CASE_INSENSITIVE_ORDER for characters outside Latin-1");if(o=jo(o),u=jo(u),o!==u&&(o=Ao(o),u=Ao(u),o!==u))return o-u}}return a.length-r.length}},jo=n=>{let e=String.fromCharCode(n).toUpperCase();return e.length===1?e.charCodeAt(0):n},Ao=n=>{let e=String.fromCharCode(n).toLowerCase();return e.length===1?e.charCodeAt(0):n},Mo=new WeakMap,qi=class extends Ge{className="java.util.Collections$ReverseComparator2";inner;constructor(e,t){super(e),this.inner=t}*javaString(e){return`${this.className}@${this.hash.toString(16)}`}*compare(e,t,i){return yield*Ct(e,this.inner,i,t)}},En=class extends Ge{className="java.util.Comparators$NullComparator";nullFirst;inner;constructor(e,t,i){super(e),this.nullFirst=t,this.inner=i}*javaString(e){return`${this.className}@${this.hash.toString(16)}`}*compare(e,t,i){return t===null?i===null?0:this.nullFirst?-1:1:i===null?this.nullFirst?1:-1:this.inner===null?0:yield*Ct(e,this.inner,t,i)}},xn=class extends Ge{className="java.util.Map$Entry$$Lambda";#e;#t;constructor(e,t,i){super(e),this.#e=t,this.#t=i}*compare(e,t,i){let a=l=>{if(l===null)return e.fail(it,`Cannot invoke "java.util.Map$Entry.${this.#e?"getKey":"getValue"}()" because "c1" is null`);let o=l;return this.#e?o.entryKey:o.entryValue},r=a(t),s=a(i);return this.#t!==null?yield*Ct(e,this.#t,r,s):r===null?e.fail(it,`Cannot invoke "java.lang.Comparable.compareTo(Object)" because the return value of "java.util.Map$Entry.${this.#e?"getKey":"getValue"}()" is null`):yield*Hi(e,r,s)}};function Zr(n,e){return e instanceof qi?e.inner:e instanceof bt?new bt(n.hash(),!e.reverse):e instanceof En?new En(n.hash(),!e.nullFirst,e.inner===null?null:Zr(n,e.inner)):new qi(n.hash(),e)}var $=(n,e)=>{e===null&&n.fail(it,null)},le=class extends zi{className;samKey;#e;constructor(e,t,i,a){super(e),this.className=t,this.samKey=i,this.#e=a}*call(e,t){return yield*this.#e(e,t)}},Bo={"Comparator.comparing(Function)":(n,[e])=>($(n,e),new Vn(n.hash(),e)),"Comparator.comparing(Function,Comparator)":(n,[e,t])=>($(n,e),$(n,t),new Vn(n.hash(),e,t)),"Comparator.comparingInt(ToIntFunction)":(n,[e])=>($(n,e),new Nt(n.hash(),e,"applyAsInt")),"Comparator.comparingLong(ToLongFunction)":(n,[e])=>($(n,e),new Nt(n.hash(),e,"applyAsLong")),"Comparator.comparingDouble(ToDoubleFunction)":(n,[e])=>($(n,e),new Nt(n.hash(),e,"applyAsDouble")),"Comparator.naturalOrder()":n=>new bt(n.hash(),!1),"Comparator.reverseOrder()":n=>new bt(n.hash(),!0),"Comparator.nullsFirst(Comparator)":(n,[e])=>new En(n.hash(),!0,e),"Comparator.nullsLast(Comparator)":(n,[e])=>new En(n.hash(),!1,e),"Collections.reverseOrder()":n=>new bt(n.hash(),!0),"String.CASE_INSENSITIVE_ORDER":n=>{let e=Mo.get(n);return e||Mo.set(n,e=new Yr(n.hash())),e},"Collections.reverseOrder(Comparator)":(n,[e])=>e===null?new bt(n.hash(),!0):Zr(n,e),"Entry.comparingByKey()":n=>new xn(n.hash(),!0,null),"Entry.comparingByValue()":n=>new xn(n.hash(),!1,null),"Entry.comparingByKey(Comparator)":(n,[e])=>($(n,e),new xn(n.hash(),!0,e)),"Entry.comparingByValue(Comparator)":(n,[e])=>($(n,e),new xn(n.hash(),!1,e)),"Function.identity()":n=>new le(n.hash(),"java.util.function.Function$$Lambda","apply(T)",function*(e,[t]){return t}),"UnaryOperator.identity()":n=>new le(n.hash(),"java.util.function.UnaryOperator$$Lambda","apply(T)",function*(e,[t]){return t}),"Predicate.not(Predicate)":(n,[e])=>($(n,e),Do(n,e)),"Predicate.isEqual(Object)":(n,[e])=>new le(n.hash(),"java.util.function.Predicate$$Lambda","test(T)",function*(t,[i]){return f(e===null?i===null:yield*T(t,e,i))}),"BinaryOperator.minBy(Comparator)":(n,[e])=>($(n,e),new le(n.hash(),"java.util.function.BinaryOperator$$Lambda","apply(T,U)",function*(t,[i,a]){return(yield*Ct(t,e,i,a))<=0?i:a})),"BinaryOperator.maxBy(Comparator)":(n,[e])=>($(n,e),new le(n.hash(),"java.util.function.BinaryOperator$$Lambda","apply(T,U)",function*(t,[i,a]){return(yield*Ct(t,e,i,a))>=0?i:a}))};function Do(n,e){return new le(n.hash(),"java.util.function.Predicate$$Lambda","test(T)",function*(t,[i]){return f(!k(yield*p(t,e,"test",[i])))})}var X={"reversed()":(n,e)=>Zr(n,e),"thenComparing(Comparator)":(n,e,[t])=>($(n,t),new pt(n.hash(),e,t)),"thenComparing(Function)":(n,e,[t])=>($(n,t),new pt(n.hash(),e,new Vn(n.hash(),t))),"thenComparing(Function,Comparator)":(n,e,[t,i])=>($(n,t),$(n,i),new pt(n.hash(),e,new Vn(n.hash(),t,i))),"thenComparingInt(ToIntFunction)":(n,e,[t])=>($(n,t),new pt(n.hash(),e,new Nt(n.hash(),t,"applyAsInt"))),"thenComparingLong(ToLongFunction)":(n,e,[t])=>($(n,t),new pt(n.hash(),e,new Nt(n.hash(),t,"applyAsLong"))),"thenComparingDouble(ToDoubleFunction)":(n,e,[t])=>($(n,t),new pt(n.hash(),e,new Nt(n.hash(),t,"applyAsDouble"))),"andThen(Function)":(n,e,[t])=>{$(n,t);let a=(e instanceof h.JLambda||e instanceof Fe?e.samKey:null)==="apply(T,U)";return new le(n.hash(),"java.util.function.Function$$Lambda",a?"apply(T,U)":"apply(T)",function*(r,s){let l=yield*p(r,e,"apply",s);return yield*p(r,t,"apply",[l])})},"compose(Function)":(n,e,[t])=>($(n,t),new le(n.hash(),"java.util.function.Function$$Lambda","apply(T)",function*(i,[a]){let r=yield*p(i,t,"apply",[a]);return yield*p(i,e,"apply",[r])})),"and(Predicate)":(n,e,[t])=>($(n,t),new le(n.hash(),"java.util.function.Predicate$$Lambda","test(T)",function*(i,[a]){return f(k(yield*p(i,e,"test",[a]))&&k(yield*p(i,t,"test",[a])))})),"or(Predicate)":(n,e,[t])=>($(n,t),new le(n.hash(),"java.util.function.Predicate$$Lambda","test(T)",function*(i,[a]){return f(k(yield*p(i,e,"test",[a]))||k(yield*p(i,t,"test",[a])))})),"negate()":(n,e)=>Do(n,e),"andThen(Consumer)":(n,e,[t])=>($(n,t),new le(n.hash(),"java.util.function.Consumer$$Lambda","accept(T)",function*(i,[a]){yield*p(i,e,"accept",[a]),yield*p(i,t,"accept",[a])})),"forEach(Consumer)":(n,e,[t])=>($(n,t),c((function*(){let i=yield*w(n,e,"iterator","iterator()",[]);for(;k(yield*w(n,i,"hasNext","hasNext()",[]));){let a=yield*w(n,i,"next","next()",[]);yield*p(n,t,"accept",[a])}})(),()=>{})),"forEachRemaining(Consumer)":(n,e,[t])=>($(n,t),c((function*(){for(;k(yield*w(n,e,"hasNext","hasNext()",[]));){let i=yield*w(n,e,"next","next()",[]);yield*p(n,t,"accept",[i])}})(),()=>{})),"listIterator()":(n,e)=>new Rn(n.hash(),e,0),"listIterator(int)":(n,e,[t])=>c((function*(){let i=yield*w(n,e,"size","size()",[]),a=t,r=e.className?.startsWith("java.util.ImmutableCollections$");return a<0||a>i?n.fail("java.lang.IndexOutOfBoundsException",r?`Index: ${a} Size: ${i}`:`Index: ${a}, Size: ${i}`):new Rn(n.hash(),e,a)})()),"removeAll(Collection)":(n,e,[t])=>ko(n,e,t,!0),"retainAll(Collection)":(n,e,[t])=>ko(n,e,t,!1),"removeIf(Predicate)":(n,e,[t])=>($(n,t),c((function*(){let i=!1,a=yield*w(n,e,"iterator","iterator()",[]);for(;k(yield*w(n,a,"hasNext","hasNext()",[]));){let r=yield*w(n,a,"next","next()",[]);k(yield*p(n,t,"test",[r]))&&(yield*w(n,a,"remove","remove()",[]),i=!0)}return i})(),f))},Rn=class extends b{className="java.util.AbstractList$ListItr";#e;#t;#n=-1;constructor(e,t,i){super(e),this.#e=t,this.#t=i}#i(e,t,i,a){return w(e,this.#e,t,i,a)}"hasNext()"(e){let t=this;return c((function*(){return t.#t<(yield*t.#i(e,"size","size()",[]))})(),f)}"next()"(e){let t=this;return c((function*(){if(t.#t>=(yield*t.#i(e,"size","size()",[])))return e.fail("java.util.NoSuchElementException",null);let i=yield*t.#i(e,"get","get(int)",[t.#t]);return t.#n=t.#t++,i})())}"hasPrevious()"(){return f(this.#t>0)}"previous()"(e){let t=this;return c((function*(){if(t.#t<=0)return e.fail("java.util.NoSuchElementException",null);let i=yield*t.#i(e,"get","get(int)",[t.#t-1]);return t.#n=--t.#t,i})())}"nextIndex()"(){return this.#t}"previousIndex()"(){return this.#t-1}"remove()"(e){if(this.#n<0)return e.fail("java.lang.IllegalStateException",null);let t=this;return c((function*(){yield*t.#i(e,"remove","remove(int)",[t.#n]),t.#n<t.#t&&t.#t--,t.#n=-1})(),()=>{})}"set(E)"(e,t){if(this.#n<0)return e.fail("java.lang.IllegalStateException",null);let i=this;return c((function*(){yield*i.#i(e,"set","set(int,E)",[i.#n,t])})(),()=>{})}"add(E)"(e,t){let i=this;return c((function*(){yield*i.#i(e,"add","add(int,E)",[i.#t,t]),i.#t++,i.#n=-1})(),()=>{})}};function ko(n,e,t,i){return t===null?n.fail(it,null):c((function*(){let a=!1,r=yield*w(n,e,"iterator","iterator()",[]);for(;k(yield*w(n,r,"hasNext","hasNext()",[]));){let s=yield*w(n,r,"next","next()",[]);k(yield*w(n,t,"contains","contains(Object)",[s]))===i&&(yield*w(n,r,"remove","remove()",[]),a=!0)}return a})(),f)}function*w(n,e,t,i,a){if(e instanceof h.JObject)return yield{invoke:n.methodOf(e,t,a.length),args:[e,...a]};if(e instanceof b){let r=Reflect.get(e,i);if(typeof r=="function"){let l=r.call(e,n,...a);return l!==null&&typeof l=="object"&&Symbol.iterator in l?yield*l:l}let s=X[i];if(s){let l=s(n,e,a);return l!==null&&typeof l=="object"&&Symbol.iterator in l?yield*l:l}}throw new Error(`library: no ${i} on ${String(e)}`)}var G="java.lang.NullPointerException",C="java.lang.UnsupportedOperationException",rs="java.lang.IllegalArgumentException",Xi="java.util.NoSuchElementException",Zi="java.lang.IndexOutOfBoundsException",Go="java.lang.ArrayIndexOutOfBoundsException",ss="iterating over or printing a Set.of, Set.copyOf, Map.of or Map.copyOf of more than one element (the JDK\'s order differs on every run)";function*si(n,e){let t=1;for(let i of e)t=Math.imul(31,t)+(yield*B(n,i))|0;return t}var qt=class extends M{isList=!0;get size(){return this.items.length}elements(){return this.items}get contentEquality(){return!0}*contentEquals(e,t){return yield*_t(e,this,t)}*contentHash(e){return yield*si(e,this.items)}"get(int)"(e,t){return t<0||t>=this.items.length?this.outOfRange(e,t):this.items[t]}"indexOf(Object)"(e,t){return c(this.indexOf(e,t,!1))}"lastIndexOf(Object)"(e,t){return c(this.indexOf(e,t,!0))}*contains(e,t){return(yield*this.indexOf(e,t,!1))>=0}*indexOf(e,t,i){let a=this.items;e.charge(a.length);for(let r=0;r<a.length;r++){let s=i?a.length-1-r:r;if(t===null?a[s]===null:yield*T(e,t,a[s]))return s}return-1}"getFirst()"(e){return this.items.length?this.items[0]:e.fail(Xi,null)}"getLast()"(e){return this.items.length?this.items[this.items.length-1]:e.fail(Xi,null)}"iterator()"(e){return new Wt(e.hash(),this.items,`${this.className}$Itr`)}"add(E)"(e){return e.fail(C,null)}"add(int,E)"(e){return e.fail(C,null)}"remove(int)"(e){return e.fail(C,null)}"remove(Object)"(e){return e.fail(C,null)}"clear()"(e){return e.fail(C,null)}"addAll(Collection)"(e){return e.fail(C,null)}"addFirst(E)"(e){return e.fail(C,null)}"addLast(E)"(e){return e.fail(C,null)}"removeFirst()"(e){return e.fail(C,null)}"removeLast()"(e){return e.fail(C,null)}"set(int,E)"(e,t,i){return this.setAt(e,t,i)}setAt(e,t,i){return e.fail(C,null)}"sort(Comparator)"(e,t){return this.sortWith(e,t)}sortWith(e,t){return e.fail(C,null)}"removeAll(Collection)"(e,t){return this.#e(e,"removeAll(Collection)",t)}"retainAll(Collection)"(e,t){return this.#e(e,"retainAll(Collection)",t)}#e(e,t,i){return this instanceof at||this.className.startsWith("java.util.ImmutableCollections$")?e.fail(C,null):X[t](e,this,[i])}"removeIf(Predicate)"(e,t){return t===null?e.fail(G,null):this.className==="java.util.Collections$EmptyList"?0:this.className==="java.util.Arrays$ArrayList"||this.className==="java.util.Collections$CopiesList"?X["removeIf(Predicate)"](e,this,[t]):e.fail(C,null)}"replaceAll(UnaryOperator)"(e,t){if(t===null)return e.fail(G,null);if(this.className!=="java.util.Arrays$ArrayList")return e.fail(C,null);let i=this.items;return c((function*(){for(let a=0;a<i.length;a++)i[a]=(yield*p(e,t,"apply",[i[a]]))??null})(),()=>{})}},Wt=class extends b{className;#e;#t=0;constructor(e,t,i){super(e),this.#e=t,this.className=i}"hasNext()"(){return f(this.#t<this.#e.length)}"next()"(e){return this.#t>=this.#e.length?e.fail(Xi,null):this.#e[this.#t++]}"remove()"(e){return e.fail(C,null)}},at=class extends qt{className;items;constructor(e,t){super(e),this.items=t,this.className=t.length===1||t.length===2?"java.util.ImmutableCollections$List12":"java.util.ImmutableCollections$ListN"}outOfRange(e,t){return this.items.length===1||this.items.length===2?e.fail(Zi,`Index: ${t} Size: ${this.items.length}`):e.fail(Go,`Index ${t} out of bounds for length ${this.items.length}`)}*indexOf(e,t,i){return t===null?e.fail(G,null):yield*super.indexOf(e,t,i)}"iterator()"(e){return new Wt(e.hash(),this.items,"java.util.ImmutableCollections$ListItr")}},Qr=class extends qt{className="java.util.Arrays$ArrayList";array;constructor(e,t){super(e),this.array=t}get items(){return this.array.data}outOfRange(e,t){return e.fail(Go,`Index ${t} out of bounds for length ${this.items.length}`)}setAt(e,t,i){if(t<0||t>=this.items.length)return this.outOfRange(e,t);if(i!==null&&!e.storable(i,this.array.descriptor))return e.fail("java.lang.ArrayStoreException",e.className(i));let a=this.items[t];return this.items[t]=i,a}sortWith(e,t){return Zt(e,this.items,t,()=>{})}"iterator()"(e){return new Wt(e.hash(),this.items,"java.util.Arrays$ArrayItr")}};function Zt(n,e,t,i){return t===null&&!Pt(e)?(ei(n,e,0,e.length),i()):c(Ft(n,e,0,e.length,W(n,t)),i)}var ai=class extends qt{className;items;#e;constructor(e,t,i){super(e),this.#e=t,this.items=i,this.className=t==="empty"?"java.util.Collections$EmptyList":t==="singleton"?"java.util.Collections$SingletonList":"java.util.Collections$CopiesList"}outOfRange(e,t){return this.#e==="empty"?e.fail(Zi,`Index: ${t}`):this.#e==="singleton"?e.fail(Zi,`Index: ${t}, Size: 1`):e.fail(Zi,`Index ${t} out of bounds for length ${this.items.length}`)}},Yt=class extends M{className;isSet=!0;#e;#t;#n;#i;constructor(e,t,i,a,r){super(e),this.#e=t,this.#t=i,this.className=a,this.#n=r,this.#i=a.startsWith("java.util.ImmutableCollections")}get size(){return this.#t.length}elements(e,t){return t&&this.#n&&this.#t.length>1&&e.limitation(ss),this.#t}copyItems(e){return{items:this.#t,unknown:this.#n&&this.#t.length>1?nt.copied:null}}get contentEquality(){return!0}*contentEquals(e,t){if(t===this)return!0;if(!(t instanceof M)||!t.isSet||t.size!==this.size)return!1;for(let i of t.elements(e,!1))if(!(yield*this.contains(e,i)))return!1;return!0}*contentHash(e){let t=0;for(let i of this.#t)t=t+(yield*B(e,i))|0;return t}*contains(e,t){return t===null&&this.#i?this.className.endsWith("Set12")?e.fail(G,\'Cannot invoke "Object.equals(Object)" because "o" is null\'):e.fail(G,null):(yield*this.#e.getNode(e,t))!==null}"iterator()"(e){return new Wt(e.hash(),this.elements(e,!0),`${this.className}Iterator`)}"add(E)"(e){return e.fail(C,null)}"remove(Object)"(e){return e.fail(C,null)}"clear()"(e){return e.fail(C,null)}"addAll(Collection)"(e){return e.fail(C,null)}"removeIf(Predicate)"(e,t){return t===null?e.fail(G,null):this.#t.length===0&&!this.#i?0:e.fail(C,null)}"removeAll(Collection)"(e,t){return this.#t.length===0&&!this.#i?t===null?e.fail(G,null):0:e.fail(C,null)}"retainAll(Collection)"(e,t){return this["removeAll(Collection)"](e,t)}};function*Xr(n,e,t,i,a){let r=new _(n.hash()),s=[];for(let o of e){if(o===null)return n.fail(G,null);let u=r.size;if(yield*r.put(n,o,null),r.size!==u)s.push(o);else if(a)return n.fail(rs,`duplicate element: ${yield*V(n,o)}`)}let l=t||(s.length===1||s.length===2?"java.util.ImmutableCollections$Set12":"java.util.ImmutableCollections$SetN");return new Yt(n.hash(),r,s,l,i)}var ri=class extends b{className="java.util.KeyValueHolder";entryKey;entryValue;constructor(e,t,i){super(e),this.entryKey=t,this.entryValue=i}get contentEquality(){return!0}*javaString(e){return yield*Cn(e,this)}*contentEquals(e,t){return yield*zt(e,this,t)}*contentHash(e){return yield*yn(e,this)}"getKey()"(){return this.entryKey}"getValue()"(){return this.entryValue}"setValue(V)"(e){return e.fail(C,"not supported")}},In=class extends vt{className;#e;#t;#n;constructor(e,t,i,a,r){super(e),this.#e=t,this.#t=i,this.className=a,this.#n=r}get size(){return this.#t.length}mappings(e,t){return t&&this.#n&&this.#t.length>1&&e.limitation(ss),this.#t}copyMappings(e){return{mappings:this.#t,unknown:this.#n&&this.#t.length>1?nt.copied:null}}#i(e,t){if(this.className.startsWith("java.util.ImmutableCollections"))return this.className.endsWith("Map1")?e.fail(G,\'Cannot invoke "Object.equals(Object)" because "o" is null\'):t==="containsKey"?e.fail(G,null):e.fail(G,\'Cannot invoke "Object.hashCode()" because "pk" is null\')}*lookup(e,t){let i=yield*this.#e.getNode(e,t);return i?i.value:void 0}"get(Object)"(e,t){return t===null&&this.#i(e,"get"),c(this.lookup(e,t),i=>i===void 0?null:i)}"getOrDefault(Object,V)"(e,t,i){return t===null&&this.#i(e,"get"),c(this.lookup(e,t),a=>a===void 0?i:a)}"containsKey(Object)"(e,t){return t===null&&this.#i(e,"containsKey"),c(this.lookup(e,t),i=>f(i!==void 0))}"containsValue(Object)"(e,t){if(t===null&&this.className.startsWith("java.util.ImmutableCollections"))return e.fail(G,null);let i=this.#t;return c((function*(){for(let a of i)if(t!==null&&(yield*T(e,t,a.entryValue)))return!0;return!1})(),f)}"keySet()"(e){return new Yt(e.hash(),this.#e,this.#t.map(t=>t.entryKey),"java.util.AbstractMap$1",this.#n)}"values()"(e){return new es(e.hash(),this.#t.map(t=>t.entryValue),this.#n)}"entrySet()"(e){let t=new _(e.hash());return c((function*(i){for(let a of i.#t)yield*t.put(e,a,null);return new Yt(e.hash(),t,i.#t,"java.util.ImmutableCollections$MapN$1",i.#n)})(this))}"put(K,V)"(e){return e.fail(C,null)}"putIfAbsent(K,V)"(e){return e.fail(C,null)}"remove(Object)"(e){return e.fail(C,null)}"remove(Object,Object)"(e){return e.fail(C,null)}"replace(K,V)"(e){return e.fail(C,null)}"replace(K,V,V)"(e){return e.fail(C,null)}"putAll(Map)"(e){return e.fail(C,null)}"clear()"(e){return e.fail(C,null)}"computeIfAbsent(K,Function)"(e){return e.fail(C,null)}"computeIfPresent(K,BiFunction)"(e){return e.fail(C,null)}"compute(K,BiFunction)"(e){return e.fail(C,null)}"merge(K,V,BiFunction)"(e){return e.fail(C,null)}"replaceAll(BiFunction)"(e){return e.fail(C,null)}"forEach(BiConsumer)"(e,t){if(t===null)return e.fail(G,null);let i=this.mappings(e,!0);return c((function*(){for(let a of i)yield*p(e,t,"accept",[a.entryKey,a.entryValue])})(),()=>{})}},es=class extends M{className="java.util.AbstractMap$2";#e;#t;constructor(e,t,i){super(e),this.#e=t,this.#t=i}get size(){return this.#e.length}elements(e,t){return t&&this.#t&&this.#e.length>1&&e.limitation(ss),this.#e}"iterator()"(e){return new Wt(e.hash(),this.elements(e,!0),"java.util.AbstractMap$2$1")}"add(E)"(e){return e.fail(C,null)}};function*ts(n,e,t,i,a){let r=new _(n.hash()),s=[];for(let[o,u]of e){if(o===null||u===null)return n.fail(G,null);let d=r.size;if(yield*r.put(n,o,u),r.size!==d)s.push(new ri(n.hash(),o,u));else if(a)return n.fail(rs,`duplicate key: ${yield*V(n,o)}`)}let l=t||(s.length===1?"java.util.ImmutableCollections$Map1":"java.util.ImmutableCollections$MapN");return new In(n.hash(),r,s,l,i)}var Ae=class extends M{className;c;isList;isSet;constructor(e,t,i){super(e),this.c=t,this.className=i,this.isList=t.isList&&i.includes("List"),this.isSet=t.isSet&&i.includes("Set")}get size(){return this.c.size}elements(e,t){return this.c.elements(e,t)}copyItems(e){return this.c.copyItems(e)}*javaString(e){return yield*this.c.javaString(e)}get contentEquality(){return this.isList||this.isSet}*contentEquals(e,t){return t===this||this.contentEquality&&(yield*this.c.contentEquals(e,t))}*contentHash(e){return this.contentEquality?yield*this.c.contentHash(e):this.hash}*contains(e,t){return yield*this.c.contains(e,t)}"get(int)"(e,t){return this.c["get(int)"].call(this.c,e,t)}"indexOf(Object)"(e,t){return this.c["indexOf(Object)"].call(this.c,e,t)}"lastIndexOf(Object)"(e,t){return this.c["lastIndexOf(Object)"].call(this.c,e,t)}"getFirst()"(e){return this.c["getFirst()"].call(this.c,e)}"getLast()"(e){return this.c["getLast()"].call(this.c,e)}"iterator()"(e){let t=this.c["iterator()"](e);return new ns(e.hash(),t)}"add(E)"(e){return e.fail(C,null)}"add(int,E)"(e){return e.fail(C,null)}"set(int,E)"(e){return e.fail(C,null)}"remove(Object)"(e){return e.fail(C,null)}"remove(int)"(e){return e.fail(C,null)}"clear()"(e){return e.fail(C,null)}"addAll(Collection)"(e){return e.fail(C,null)}"sort(Comparator)"(e){return e.fail(C,null)}"addFirst(E)"(e){return e.fail(C,null)}"addLast(E)"(e){return e.fail(C,null)}"removeFirst()"(e){return e.fail(C,null)}"removeLast()"(e){return e.fail(C,null)}"removeIf(Predicate)"(e){return e.fail(C,null)}"removeAll(Collection)"(e){return e.fail(C,null)}"retainAll(Collection)"(e){return e.fail(C,null)}"replaceAll(UnaryOperator)"(e){return e.fail(C,null)}"forEach(Consumer)"(e,t){return this.c["forEach(Consumer)"]?.call(this.c,e,t)??X["forEach(Consumer)"](e,this.c,[t])}},ns=class extends b{className="java.util.Collections$UnmodifiableCollection$1";#e;constructor(e,t){super(e),this.#e=t}"hasNext()"(e){return this.#e["hasNext()"].call(this.#e,e)}"next()"(e){return this.#e["next()"].call(this.#e,e)}"remove()"(e){return e.fail(C,null)}},is=class extends vt{className="java.util.Collections$UnmodifiableMap";m;constructor(e,t){super(e),this.m=t}get size(){return this.m.size}mappings(e,t){return this.m.mappings(e,t)}copyMappings(e){return this.m.copyMappings(e)}*lookup(e,t){return yield*this.m.lookup(e,t)}#e(e,t,...i){return this.m[e].call(this.m,t,...i)}"get(Object)"(e,t){return this.#e("get(Object)",e,t)}"getOrDefault(Object,V)"(e,t,i){return this.#e("getOrDefault(Object,V)",e,t,i)}"containsKey(Object)"(e,t){return this.#e("containsKey(Object)",e,t)}"containsValue(Object)"(e,t){return this.#e("containsValue(Object)",e,t)}"keySet()"(e){return new Ae(e.hash(),this.#e("keySet()",e),"java.util.Collections$UnmodifiableSet")}"values()"(e){return new Ae(e.hash(),this.#e("values()",e),"java.util.Collections$UnmodifiableCollection")}"entrySet()"(e){return new Ae(e.hash(),this.#e("entrySet()",e),"java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet")}"put(K,V)"(e){return e.fail(C,null)}"putIfAbsent(K,V)"(e){return e.fail(C,null)}"remove(Object)"(e){return e.fail(C,null)}"remove(Object,Object)"(e){return e.fail(C,null)}"replace(K,V)"(e){return e.fail(C,null)}"replace(K,V,V)"(e){return e.fail(C,null)}"putAll(Map)"(e){return e.fail(C,null)}"clear()"(e){return e.fail(C,null)}"computeIfAbsent(K,Function)"(e){return e.fail(C,null)}"computeIfPresent(K,BiFunction)"(e){return e.fail(C,null)}"compute(K,BiFunction)"(e){return e.fail(C,null)}"merge(K,V,BiFunction)"(e){return e.fail(C,null)}"replaceAll(BiFunction)"(e){return e.fail(C,null)}"forEach(BiConsumer)"(e,t){return this.#e("forEach(BiConsumer)",e,t)}},Wi=n=>[...n.data],K=(n,e,t)=>(e===null&&n.fail(G,t),e);function*Ht(n,e,t,i){let a=e["set(int,E)"].call(e,n,t,i);return yield*Lh(a)}function as(n,e,t){return e["get(int)"].call(e,n,t)}function*$o(n,e,t,i){let a=W(n,i),r=0,s=e.length-1;for(;r<=s;){let l=r+s>>>1;n.charge(1);let o=yield*a(e[l],t);if(o<0)r=l+1;else if(o>0)s=l-1;else return l}return-(r+1)}var Fo=\'Cannot invoke "java.util.List.size()" because "list" is null\';function*Yi(n,e,t,i){let a=e.elements(n,!0);if(!a.length)return n.fail(Xi,null);let r=a[0];t===null&&Xe(n,r);let s=W(n,t);n.charge(a.length);for(let l=1;l<a.length;l++){let o=a[l],u=t===null&&!(o instanceof h.JObject)&&!(r instanceof h.JObject)?ve(n,o,r):yield*s(o,r);i*u>0&&(r=o)}return r}var ls={"List.of(E[])":(n,[e])=>{let t=Wi(e);return t.includes(null)?n.fail(G,null):(n.allocate(t.length),new at(n.hash(),t))},"List.copyOf(Collection)":(n,[e])=>{if(e instanceof at)return e;let t=[...K(n,e,\'Cannot invoke "java.util.Collection.toArray()" because "coll" is null\').elements(n,!0)];return t.includes(null)?n.fail(G,null):(n.allocate(t.length),new at(n.hash(),t))},"Set.of(E[])":(n,[e])=>c(Xr(n,Wi(e),"",!0,!0)),"Set.copyOf(Collection)":(n,[e])=>{if(e instanceof Yt&&e.className.startsWith("java.util.ImmutableCollections"))return e;let{items:t}=K(n,e,\'Cannot invoke "java.util.Collection.toArray()" because "coll" is null\').copyItems(n);return c(Xr(n,t,"",!0,!1))},"Map.entry(K,V)":(n,[e,t])=>e===null||t===null?n.fail(G,null):new ri(n.hash(),e,t),"Map.ofEntries(Entry[])":(n,[e])=>{let t=[];for(let i of Wi(e)){if(i===null)return n.fail(G,null);t.push([i.entryKey,i.entryValue])}return c(ts(n,t,"",!0,!0))},"Map.copyOf(Map)":(n,[e])=>{if(e===null)return n.fail(G,null);if(e instanceof In&&e.className.startsWith("java.util.ImmutableCollections"))return e;let{mappings:t}=e.copyMappings(n);return c(ts(n,t.map(i=>[i.entryKey,i.entryValue]),"",!0,!1))},"Arrays.asList(T[])":(n,[e])=>new Qr(n.hash(),e),"Collections.emptyList()":n=>new ai(n.hash(),"empty",[]),"Collections.singletonList(T)":(n,[e])=>new ai(n.hash(),"singleton",[e]),"Collections.nCopies(int,T)":(n,[e,t])=>e<0?n.fail(rs,`List length = ${e}`):(n.allocate(e),new ai(n.hash(),"copies",new Array(e).fill(t))),"Collections.emptySet()":n=>c(Xr(n,[],"java.util.Collections$EmptySet",!1,!1)),"Collections.singleton(T)":(n,[e])=>{let t=new _(n.hash());return c(t.put(n,e,null),()=>new Yt(n.hash(),t,[e],"java.util.Collections$SingletonSet",!1))},"Collections.emptyMap()":n=>new In(n.hash(),new _(n.hash()),[],"java.util.Collections$EmptyMap",!1),"Collections.singletonMap(K,V)":(n,[e,t])=>{let i=new _(n.hash());return c(i.put(n,e,t),()=>new In(n.hash(),i,[new ri(n.hash(),e,t)],"java.util.Collections$SingletonMap",!1))},"Collections.unmodifiableList(List)":(n,[e])=>{let t=K(n,e,null);return new Ae(n.hash(),t,t.randomAccess?"java.util.Collections$UnmodifiableRandomAccessList":"java.util.Collections$UnmodifiableList")},"Collections.unmodifiableSet(Set)":(n,[e])=>new Ae(n.hash(),K(n,e,null),"java.util.Collections$UnmodifiableSet"),"Collections.unmodifiableCollection(Collection)":(n,[e])=>new Ae(n.hash(),K(n,e,null),"java.util.Collections$UnmodifiableCollection"),"Collections.unmodifiableMap(Map)":(n,[e])=>e===null?n.fail(G,null):new is(n.hash(),e),"Collections.reverse(List)":(n,[e])=>{let t=K(n,e,\'Cannot invoke "java.util.List.size()" because "list" is null\');return c((function*(){let i=t.size;for(let a=0,r=i-1;a<r;a++,r--){let s=as(n,t,a);yield*Ht(n,t,a,yield*Ht(n,t,r,s))}})(),()=>{})},"Collections.swap(List,int,int)":(n,[e,t,i])=>{let a=K(n,e,\'Cannot invoke "java.util.List.get(int)" because "l" is null\');return c((function*(){let r=as(n,a,t);yield*Ht(n,a,t,yield*Ht(n,a,i,r))})(),()=>{})},"Collections.max(Collection)":(n,[e])=>c(Yi(n,K(n,e,\'Cannot invoke "java.util.Collection.iterator()" because "coll" is null\'),null,1)),"Collections.min(Collection)":(n,[e])=>c(Yi(n,K(n,e,\'Cannot invoke "java.util.Collection.iterator()" because "coll" is null\'),null,-1)),"Collections.max(Collection,Comparator)":(n,[e,t])=>c(Yi(n,K(n,e,\'Cannot invoke "java.util.Collection.iterator()" because "coll" is null\'),t,1)),"Collections.min(Collection,Comparator)":(n,[e,t])=>c(Yi(n,K(n,e,\'Cannot invoke "java.util.Collection.iterator()" because "coll" is null\'),t,-1)),"Collections.disjoint(Collection,Collection)":(n,[e,t])=>{let i=K(n,e,\'Cannot invoke "java.util.Collection.size()" because "c1" is null\'),a=K(n,t,\'Cannot invoke "java.util.Collection.size()" because "c2" is null\');return c((function*(){for(let r of i.elements(n,!1))if(yield*a.contains(n,r))return!1;return!0})(),f)},"Collections.binarySearch(List,T)":(n,[e,t])=>c($o(n,K(n,e,Fo).elements(n,!1),t,null)),"Collections.binarySearch(List,T,Comparator)":(n,[e,t,i])=>c($o(n,K(n,e,Fo).elements(n,!1),t,i)),"Collections.frequency(Collection,Object)":(n,[e,t])=>{let i=K(n,e,\'Cannot invoke "java.util.Collection.iterator()" because "c" is null\').elements(n,!1);return c((function*(){let a=0;n.charge(i.length);for(let r of i)(t===null?r===null:yield*T(n,t,r))&&a++;return a})())},"Collections.addAll(Collection,T[])":(n,[e,t])=>K(n,e,\'Cannot invoke "java.util.Collection.add(Object)" because "c" is null\').addEach(n,Wi(t)),"Collections.fill(List,T)":(n,[e,t])=>{let i=K(n,e,\'Cannot invoke "java.util.List.size()" because "list" is null\');return c((function*(){for(let a=0;a<i.size;a++)yield*Ht(n,i,a,t)})(),()=>{})},"Collections.shuffle(List,Random)":(n,[e,t])=>Jo(n,e,t),"Collections.shuffle(List)":(n,[e])=>Jo(n,e,null)};for(let n=0;n<=10;n++){let e=`Map.of(${Array.from({length:n},()=>"K,V").join(",")})`;ls[e]=(t,i)=>{let a=[];for(let r=0;r<n;r++)a.push([i[2*r],i[2*r+1]]);return c(ts(t,a,"",!0,!0))}}function Jo(n,e,t){let i=K(n,e,\'Cannot invoke "java.util.List.size()" because "list" is null\'),a=t??os.make(n);return c((function*(){for(let r=i.size;r>1;r--){let s=a["nextInt(int)"](n,r),l=as(n,i,r-1);yield*Ht(n,i,r-1,yield*Ht(n,i,s,l))}})(),()=>{})}var os={make:()=>null};function*Lh(n){return n!==null&&typeof n=="object"&&Symbol.iterator in n?yield*n:n}var Qi="java.util.NoSuchElementException",ea="java.util.ConcurrentModificationException",jh="java.lang.IllegalStateException",Po="java.lang.IndexOutOfBoundsException",Me="java.lang.ArrayIndexOutOfBoundsException",ta=class extends pe{className="java.util.LinkedList";randomAccess=!1;get iteratorName(){return"java.util.LinkedList$ListItr"}#e(e,t){(t<0||t>=this.es.length)&&e.fail(Po,`Index: ${t}, Size: ${this.es.length}`)}"get(int)"(e,t){return this.#e(e,t),this.es[t]}"set(int,E)"(e,t,i){this.#e(e,t);let a=this.es[t];return this.es[t]=i,a}"remove(int)"(e,t){return this.#e(e,t),this.modCount++,this.es.splice(t,1)[0]}"add(int,E)"(e,t,i){if(t<0||t>this.es.length)return e.fail(Po,`Index: ${t}, Size: ${this.es.length}`);e.allocate(1),this.modCount++,this.es.splice(t,0,i)}"sort(Comparator)"(e,t){return Zt(e,this.es,t,()=>{})}"offer(E)"(e,t){return this["add(E)"](e,t)}"offerFirst(E)"(e,t){return this["add(int,E)"](e,0,t),1}"offerLast(E)"(e,t){return this["add(E)"](e,t)}"push(E)"(e,t){this["add(int,E)"](e,0,t)}"pop()"(e){return this["removeFirst()"](e)}"remove()"(e){return this["removeFirst()"](e)}"element()"(e){return this["getFirst()"](e)}"peek()"(){return this.es.length?this.es[0]:null}"peekFirst()"(){return this.es.length?this.es[0]:null}"peekLast()"(){return this.es.length?this.es[this.es.length-1]:null}"poll()"(e){return this.es.length?this["removeFirst()"](e):null}"pollFirst()"(e){return this.es.length?this["removeFirst()"](e):null}"pollLast()"(e){return this.es.length?this["removeLast()"](e):null}"removeFirstOccurrence(Object)"(e,t){return this["remove(Object)"](e,t)}"removeLastOccurrence(Object)"(e,t){let i=this;return c((function*(){for(let a=i.es.length-1;a>=0;a--)if(yield*ne(e,t,i.es[a]))return i.modCount++,i.es.splice(a,1),!0;return!1})(),f)}"descendingIterator()"(e){return new us(e.hash(),this)}"forEach(Consumer)"(e,t){return X["forEach(Consumer)"](e,this,[t])}"removeIf(Predicate)"(e,t){return X["removeIf(Predicate)"](e,this,[t])}"replaceAll(UnaryOperator)"(e,t){if(t===null)return e.fail("java.lang.NullPointerException",null);let i=this;return c((function*(){let a=i.modCount;for(let r=0;r<i.es.length;r++){i.modCount!==a&&e.fail(ea,null);let s=(yield*p(e,t,"apply",[i.es[r]]))??null;i.modCount!==a&&e.fail(ea,null),i.es[r]=s}})(),()=>{})}},us=class extends b{className="java.util.LinkedList$DescendingIterator";#e;#t;#n=-1;#i;constructor(e,t){super(e),this.#e=t,this.#t=t.es.length,this.#i=t.modCount}"hasNext()"(){return f(this.#t>0)}"next()"(e){return this.#e.modCount!==this.#i?e.fail(ea,null):this.#t<=0?e.fail(Qi,null):(this.#n=--this.#t,this.#e.es[this.#t])}"remove()"(e){if(this.#n<0)return e.fail(jh,null);if(this.#e.modCount!==this.#i)return e.fail(ea,null);this.#e["remove(int)"](e,this.#n),this.#n=-1,this.#i=this.#e.modCount}},On=class extends pe{className="java.util.Vector";capacity=10;increment=0;get iteratorName(){return"java.util.Vector$Itr"}#e(e){e>this.capacity&&(this.capacity=this.capacity+Math.max(e-this.capacity,this.increment>0?this.increment:this.capacity))}#t(e,t){t>=this.es.length&&e.fail(Me,`Array index out of range: ${t}`),t<0&&e.fail(Me,`Index ${t} out of bounds for length ${this.capacity}`)}"add(E)"(e,t){return this.#e(this.es.length+1),super["add(E)"](e,t)}"add(int,E)"(e,t,i){if(t>this.es.length)return e.fail(Me,`${t} > ${this.es.length}`);if(t<0)return e.fail(Me,`arraycopy: source index ${t} out of bounds for object array[${this.capacity}]`);this.#e(this.es.length+1),e.allocate(1),this.modCount++,this.es.splice(t,0,i)}addEach(e,t){return this.#e(this.es.length+t.length),super.addEach(e,t)}"addAll(Collection)"(e,t){return t!==null&&this.#e(this.es.length+t.size),super["addAll(Collection)"](e,t)}"get(int)"(e,t){return this.#t(e,t),this.es[t]}"set(int,E)"(e,t,i){this.#t(e,t);let a=this.es[t];return this.es[t]=i,a}"remove(int)"(e,t){return this.#t(e,t),this.modCount++,this.es.splice(t,1)[0]}"capacity()"(){return this.capacity}"firstElement()"(e){return this.es.length?this.es[0]:e.fail(Qi,null)}"lastElement()"(e){return this.es.length?this.es[this.es.length-1]:e.fail(Qi,null)}"elementAt(int)"(e,t){return t>=this.es.length?e.fail(Me,`${t} >= ${this.es.length}`):t<0?e.fail(Me,`Index ${t} out of bounds for length ${this.capacity}`):this.es[t]}"setElementAt(E,int)"(e,t,i){if(i>=this.es.length)return e.fail(Me,`${i} >= ${this.es.length}`);if(i<0)return e.fail(Me,`Index ${i} out of bounds for length ${this.capacity}`);this.es[i]=t}"insertElementAt(E,int)"(e,t,i){return this["add(int,E)"](e,i,t)}"removeElementAt(int)"(e,t){if(t>=this.es.length)return e.fail(Me,`${t} >= ${this.es.length}`);if(t<0)return e.fail(Me,`Array index out of range: ${t}`);this.modCount++,this.es.splice(t,1)}"addElement(E)"(e,t){this["add(E)"](e,t)}"removeElement(Object)"(e,t){return this["remove(Object)"](e,t)}"removeAllElements()"(){this.modCount++,this.es.length=0}"elements()"(e){return new hs(e.hash(),this)}"setSize(int)"(e,t){if(t>this.capacity&&this.#e(t),t<0)return e.fail(Me,`Index ${t} out of bounds for length ${this.capacity}`);if(this.modCount++,t>this.es.length)for(e.allocate(t-this.es.length);this.es.length<t;)this.es.push(null);else this.es.length=t}"trimToSize()"(){this.modCount++,this.es.length<this.capacity&&(this.capacity=this.es.length)}"ensureCapacity(int)"(e,t){t>0&&(this.modCount++,this.#e(t))}},cs=class extends On{className="java.util.Stack";"push(E)"(e,t){return this["add(E)"](e,t),t}"pop()"(e){return this.es.length?(this.modCount++,this.es.pop()):e.fail("java.util.EmptyStackException",null)}"peek()"(e){return this.es.length?this.es[this.es.length-1]:e.fail("java.util.EmptyStackException",null)}"empty()"(){return f(this.es.length===0)}"search(Object)"(e,t){let i=this;return c((function*(){for(let a=i.es.length-1;a>=0;a--)if(yield*ne(e,t,i.es[a]))return i.es.length-a;return-1})())}},hs=class extends b{className="java.util.Vector$1";#e;#t=0;constructor(e,t){super(e),this.#e=t}"hasMoreElements()"(){return f(this.#t<this.#e.es.length)}"nextElement()"(e){return this.#t>=this.#e.es.length?e.fail(Qi,"Vector Enumeration"):this.#e.es[this.#t++]}"asIterator()"(e){return new Jt(e.hash(),this)}},_o={"LinkedList.<init>()":n=>new ta(n.hash()),"LinkedList.<init>(Collection)":(n,[e])=>{if(e===null)return n.fail("java.lang.NullPointerException",\'Cannot invoke "java.util.Collection.toArray()" because "c" is null\');let t=new ta(n.hash()),i=e.elements(n,!0);return n.allocate(i.length),t.es.push(...i),t},"Stack.<init>()":n=>new cs(n.hash()),"Vector.<init>()":n=>new On(n.hash()),"Vector.<init>(int)":(n,[e])=>Uo(n,e,0),"Vector.<init>(int,int)":(n,[e,t])=>Uo(n,e,t),"Vector.<init>(Collection)":(n,[e])=>{if(e===null)return n.fail("java.lang.NullPointerException",\'Cannot invoke "java.util.Collection.toArray()" because "c" is null\');let t=new On(n.hash()),i=e.elements(n,!0);return n.allocate(i.length),t.es.push(...i),t.capacity=i.length,t}};function Uo(n,e,t){if(e<0)return n.fail("java.lang.IllegalArgumentException",`Illegal Capacity: ${e}`);let i=new On(n.hash());return i.capacity=e,i.increment=t,i}var xt="java.lang.NumberFormatException",na="java.lang.StringIndexOutOfBoundsException",ue="java.lang.NullPointerException",Ko=\'Cannot invoke "String.length()" because "tgtStr" is null\',zo=\'Cannot read field "value" because "tgtStr" is null\',Ln=class extends b{className="java.lang.StringBuilder";text;capacity;constructor(e,t,i=t.length+16){super(e),this.text=t,this.capacity=i}#e(e){e>this.capacity&&(this.capacity=Math.max(e,this.capacity*2+2))}*javaString(){return this.text}#t(e,t,i=this.text.length+t){e.checkString(i),e.charge(t>>>4)}#n(e,t){return this.#t(e,t.length),this.#e(this.text.length+t.length),this.text+=t,this}#i(e,t){(t<0||t>=this.text.length)&&e.fail(na,`Index ${t} out of bounds for length ${this.text.length}`)}#a(e,t,i){let a=this.text.length;(t<0||t>i||i>a)&&e.fail(na,`Range [${t}, ${i}) out of bounds for length ${a}`)}#r(e,t,i){let a=this.text.length;return(t<0||t>a)&&e.fail(na,`Range [${t}, ${a}) out of bounds for length ${a}`),this.#t(e,i.length+a,i.length+a),this.#e(a+i.length),this.text=this.text.slice(0,t)+i+this.text.slice(t),this}"append(Object)"(e,t){return c(V(e,t),i=>this.#n(e,i))}"append(String)"(e,t){return this.#n(e,t===null?"null":t.value)}"append(char[])"(e,t){return t===null?e.fail(ue,\'Cannot read the array length because "str" is null\'):this.#n(e,la(t))}"append(boolean)"(e,t){return this.#n(e,t?"true":"false")}"append(char)"(e,t){return this.#n(e,String.fromCharCode(t))}"append(int)"(e,t){return this.#n(e,String(t))}"append(long)"(e,t){return this.#n(e,String(t))}"append(double)"(e,t){return this.#e(this.text.length+24),this.#n(e,h.doubleToString(t))}"append(float)"(e,t){return this.#e(this.text.length+15),this.#n(e,h.floatToString(t))}"insert(int,Object)"(e,t,i){return c(V(e,i),a=>this.#r(e,t,a))}"insert(int,String)"(e,t,i){return this.#r(e,t,i===null?"null":i.value)}"insert(int,char[])"(e,t,i){return i===null?e.fail(ue,\'Cannot read the array length because "str" is null\'):this.#r(e,t,la(i))}"insert(int,boolean)"(e,t,i){return this.#r(e,t,i?"true":"false")}"insert(int,char)"(e,t,i){return this.#r(e,t,String.fromCharCode(i))}"insert(int,int)"(e,t,i){return this.#r(e,t,String(i))}"insert(int,long)"(e,t,i){return this.#r(e,t,String(i))}"insert(int,double)"(e,t,i){return this.#r(e,t,h.doubleToString(i))}"insert(int,float)"(e,t,i){return this.#r(e,t,h.floatToString(i))}"length()"(){return this.text.length}"isEmpty()"(){return f(this.text.length===0)}"charAt(int)"(e,t){return this.#i(e,t),this.text.charCodeAt(t)}"setCharAt(int,char)"(e,t,i){this.#i(e,t),this.#t(e,this.text.length,this.text.length),this.text=this.text.slice(0,t)+String.fromCharCode(i)+this.text.slice(t+1)}"setLength(int)"(e,t){if(t<0)return e.fail(na,`String index out of range: ${t}`);t<=this.text.length?this.text=this.text.slice(0,t):(this.#t(e,t-this.text.length,t),this.#e(t),this.text+="\\0".repeat(t-this.text.length))}"deleteCharAt(int)"(e,t){return this.#i(e,t),this.#t(e,this.text.length,this.text.length),this.text=this.text.slice(0,t)+this.text.slice(t+1),this}"delete(int,int)"(e,t,i){return i=Math.min(i,this.text.length),this.#a(e,t,i),this.#t(e,this.text.length,this.text.length),this.text=this.text.slice(0,t)+this.text.slice(i),this}"replace(int,int,String)"(e,t,i,a){if(i=Math.min(i,this.text.length),this.#a(e,t,i),a===null)return e.fail(ue,\'Cannot invoke "String.length()" because "str" is null\');let r=a.value;return this.#t(e,this.text.length+r.length,this.text.length+r.length-(i-t)),this.#e(this.text.length+r.length-(i-t)),this.text=this.text.slice(0,t)+r+this.text.slice(i),this}"reverse()"(e){this.#t(e,this.text.length,this.text.length);let t=this.text.split("");t.reverse();for(let i=0;i<t.length-1;i++){let a=t[i].charCodeAt(0),r=t[i+1].charCodeAt(0);a>=56320&&a<=57343&&r>=55296&&r<=56319&&(t[i]=String.fromCharCode(r),t[i+1]=String.fromCharCode(a),i++)}return this.text=t.join(""),this}"indexOf(String)"(e,t){return t===null?e.fail(ue,Ko):(e.charge(this.text.length>>>4),this.text.indexOf(t.value))}"indexOf(String,int)"(e,t,i){return t===null?e.fail(ue,Ko):(e.charge(this.text.length>>>4),this.text.indexOf(t.value,Math.max(0,i)))}"lastIndexOf(String)"(e,t){return t===null?e.fail(ue,zo):(e.charge(this.text.length>>>4),this.text.lastIndexOf(t.value))}"lastIndexOf(String,int)"(e,t,i){return t===null?e.fail(ue,zo):(e.charge(this.text.length>>>4),i<0?-1:this.text.lastIndexOf(t.value,i))}"substring(int)"(e,t){return this["substring(int,int)"](e,t,this.text.length)}"substring(int,int)"(e,t,i){return this.#a(e,t,i),new h.JString(this.text.slice(t,i))}"compareTo(StringBuilder)"(e,t){return t===null?e.fail(ue,\'Cannot read field "value" because "another" is null\'):Ye(this.text,t.text)}"compareTo(StringBuffer)"(e,t){return this["compareTo(StringBuilder)"](e,t)}"capacity()"(){return this.capacity}"ensureCapacity(int)"(e,t){t>0&&this.#e(t)}"trimToSize()"(){this.text.length<this.capacity&&(this.capacity=this.text.length)}},li=class extends Ln{className="java.lang.StringBuffer"},sa=class extends b{className="java.util.StringJoiner";prefix;delimiter;suffix;joined=null;emptyValue=null;constructor(e,t,i,a){super(e),this.prefix=t,this.delimiter=i,this.suffix=a}#e(){return this.joined===null&&this.emptyValue!==null?this.emptyValue:this.prefix+(this.joined??"")+this.suffix}*javaString(){return this.#e()}#t(e,t){return e.checkString((this.joined?.length??0)+this.delimiter.length+t.length),e.charge(t.length>>>4),this.joined=this.joined===null?t:this.joined+this.delimiter+t,this}"add(String)"(e,t){return this.#t(e,t===null?"null":t.value)}"merge(StringJoiner)"(e,t){if(t===null)return e.fail(ue,null);let i=t.joined;return i===null?this:this.#t(e,i)}"setEmptyValue(String)"(e,t){return t===null?e.fail(ue,"The empty value must not be null"):(this.emptyValue=t.value,this)}"length()"(){return this.#e().length}"toString()"(){return new h.JString(this.#e())}},ia=(n,e,t)=>e===null?n.fail(ue,`The ${t} must not be null`):e.value;function la(n){let e=n.data,t="";for(let i=0;i<e.length;i+=8192)t+=String.fromCharCode(...e.subarray(i,i+8192));return t}var iu={"StringBuilder.<init>()":n=>new Ln(n.hash(),""),"StringBuilder.<init>(int)":(n,[e])=>e<0?n.fail("java.lang.NegativeArraySizeException",String(e)):new Ln(n.hash(),"",e),"StringBuilder.<init>(String)":(n,[e])=>e===null?n.fail(ue,\'Cannot invoke "String.length()" because "str" is null\'):new Ln(n.hash(),e.value),"StringBuffer.<init>()":n=>new li(n.hash(),""),"StringBuffer.<init>(int)":(n,[e])=>e<0?n.fail("java.lang.NegativeArraySizeException",String(e)):new li(n.hash(),"",e),"StringBuffer.<init>(String)":(n,[e])=>e===null?n.fail(ue,\'Cannot invoke "String.length()" because "str" is null\'):new li(n.hash(),e.value),"StringJoiner.<init>(String)":(n,[e])=>new sa(n.hash(),"",ia(n,e,"delimiter"),""),"StringJoiner.<init>(String,String,String)":(n,[e,t,i])=>{let a=ia(n,t,"prefix"),r=ia(n,e,"delimiter");return new sa(n.hash(),a,r,ia(n,i,"suffix"))}},Ah="0000000000000000002020202020000000000000000000000000000020202020a000000000000000000000000000000006060606060606060606000000000000004d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d00000000000055555555555555555555555555555555555555555555555555550000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000550000000000000000000055000000005500000000004d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d004d4d4d4d4d4d4d555555555555555555555555555555555555555555555555005555555555555555",au=new Uint8Array(256);for(let n=0;n<256;n++)au[n]=parseInt(Ah.slice(n*2,n*2+2),16);var Ho=1,qo=2,Wo=4,Yo=8,Zo=16,Xo=32,Mh=64,Qo=128,kh={178:2,179:3,185:1,188:-2,189:-2,190:-2};function oa(n,e,t){if(e<0||e>255){let i=(e>>>0).toString(16).toUpperCase().padStart(4,"0");n.limitation(`Character.${t} for characters outside Latin-1 (here U+${i})`)}return e}var oe=(n,e)=>(t,[i])=>f((au[oa(t,i,n)]&e)!==0);function aa(n,e,t){oa(n,e,t?"toUpperCase":"toLowerCase");let i=String.fromCharCode(e),a=t?i.toUpperCase():i.toLowerCase();return a.length===1?a.charCodeAt(0):e}function ms(n){return n>=48&&n<=57?n-48:n>=65&&n<=90?n-55:n>=97&&n<=122?n-87:-1}function eu(n,e,t){if(t<2||t>36)return-1;oa(n,e,"digit");let i=ms(e);return i<t?i:-1}function tu(n,e){return oa(n,e,"getNumericValue"),kh[e]??ms(e)}function rt(n,e,t,i){if(e===null)return n.fail(xt,"Cannot parse null string");if(t<2)return n.fail(xt,`radix ${t} less than Character.MIN_RADIX`);if(t>36)return n.fail(xt,`radix ${t} greater than Character.MAX_RADIX`);let a=e.value,r=()=>n.fail(xt,t===10?`For input string: "${a}"`:`For input string: "${a}" under radix ${t}`);a.length||r();let s=0,l=!1,o=a.charCodeAt(0);o<48&&(o===45?l=!0:o!==43&&r(),a.length===1&&r(),s=1);let u=(1n<<BigInt(i-1))-(l?0n:1n),d=BigInt(t),g=0n;for(n.charge(a.length>>>2);s<a.length;s++){let v=a.charCodeAt(s);v>255&&/\\p{Nd}/u.test(a[s])&&n.limitation("parsing digits outside Latin-1");let m=v>255?-1:ms(v);(m<0||m>=t)&&r(),g=g*d+BigInt(m),g>u&&r()}return l?-g:g}var Bh=/^[+-]?(NaN|Infinity|(\\d+\\.?\\d*|\\.\\d+)([eE][+-]?\\d+)?[fFdD]?)$/,Dh=/^[+-]?0[xX]/;function ra(n,e,t=!1){if(e===null)return n.fail(ue,\'Cannot invoke "String.length()" because "in" is null\');let i=e.value,a=i.replace(/^[\\0- ]+|[\\0- ]+$/g,"");if(!a.length)return n.fail(xt,"empty String");if(Bh.test(a)){let r=a.replace(/[fFdD]$/,"").replace(/^\\+/,"");return t?/^-?(NaN|Infinity)$/.test(r)?Math.fround(Number(r)):h.parseDecimalFloat(r):Number(r)}if(Dh.test(a)){let r=h.parseHexFloating(a,t);if(!Number.isNaN(r))return r}return(/^[+-]?([0-9.]*)/.exec(a)[1].match(/\\./g)?.length??0)>1?n.fail(xt,"multiple points"):n.fail(xt,`For input string: "${i}"`)}function yt(n,e,t,i){let a=Number(rt(n,e,t,32)),r=i===8?128:32768;return a<-r||a>=r?n.fail(xt,`Value out of range. Value:"${e.value}" Radix:${t}`):a}var $h=n=>n<<24>>24,Fh=n=>n<<16>>16,gs=n=>h.normLong(BigInt.asIntN(64,n)),oi=n=>BigInt(n);function Jh(n){return Number.isNaN(n)?0:n>=2147483647?2147483647:n<=-2147483648?-2147483648:Math.trunc(n)}function Gh(n){return Number.isNaN(n)?0:n>=9223372036854776e3?gs((1n<<63n)-1n):n<=-9223372036854776e3?gs(-(1n<<63n)):h.normLong(BigInt(Math.trunc(n)))}var ds=(n,e)=>n<e?-1:n>e?1:0;function Ph(n){return n=n-(n>>>1&1431655765),n=(n&858993459)+(n>>>2&858993459),Math.imul(n+(n>>>4)&252645135,16843009)>>>24|0}function Uh(n){let e=0;for(let t=0;t<32;t++)e=e<<1|n&1,n>>>=1;return e|0}var wn=n=>BigInt.asUintN(64,oi(n)),Q=n=>new h.JString(n),nu=n=>n<2||n>36?10:n;function _h(n){let e=wn(n);return e===0n?64:64-e.toString(2).length}function Kh(n){let e=wn(n);if(e===0n)return 64;let t=0;for(let i=e;(i&1n)===0n;i>>=1n)t++;return t}var ke=(n,e)=>new h.JBox(n,e),Tn=(n,e,t)=>(i,a)=>ke(t,n[e](i,a)),St={"Integer.<init>(int)":(n,[e])=>ke("int",e),"Integer.<init>(String)":(n,e)=>Tn(St,"Integer.parseInt(String)","int")(n,e),"Long.<init>(long)":(n,[e])=>ke("long",e),"Long.<init>(String)":(n,e)=>Tn(St,"Long.parseLong(String)","long")(n,e),"Double.<init>(double)":(n,[e])=>ke("double",e),"Double.<init>(String)":(n,e)=>Tn(St,"Double.parseDouble(String)","double")(n,e),"Float.<init>(float)":(n,[e])=>ke("float",e),"Float.<init>(double)":(n,[e])=>ke("float",Math.fround(e)),"Float.<init>(String)":(n,e)=>Tn(St,"Float.parseFloat(String)","float")(n,e),"Byte.<init>(byte)":(n,[e])=>ke("byte",e),"Byte.<init>(String)":(n,e)=>Tn(St,"Byte.parseByte(String)","byte")(n,e),"Short.<init>(short)":(n,[e])=>ke("short",e),"Short.<init>(String)":(n,e)=>Tn(St,"Short.parseShort(String)","short")(n,e),"Character.<init>(char)":(n,[e])=>ke("char",e),"Boolean.<init>(boolean)":(n,[e])=>ke("boolean",e),"Boolean.<init>(String)":(n,[e])=>ke("boolean",e!==null&&/^true$/i.test(e.value)?1:0),"Integer.toString(int,int)":(n,[e,t])=>Q(e.toString(nu(t))),"Integer.toHexString(int)":(n,[e])=>Q((e>>>0).toString(16)),"Integer.toOctalString(int)":(n,[e])=>Q((e>>>0).toString(8)),"Integer.toBinaryString(int)":(n,[e])=>Q((e>>>0).toString(2)),"Integer.toString(int)":(n,[e])=>Q(String(e)),"Integer.parseInt(String,int)":(n,[e,t])=>Number(rt(n,e,t,32)),"Integer.parseInt(String)":(n,[e])=>Number(rt(n,e,10,32)),"Integer.valueOf(String,int)":(n,[e,t])=>n.box("int",Number(rt(n,e,t,32))),"Integer.valueOf(String)":(n,[e])=>n.box("int",Number(rt(n,e,10,32))),"Integer.valueOf(int)":(n,[e])=>n.box("int",e),"Integer.hashCode(int)":(n,[e])=>e,"Integer.compare(int,int)":(n,[e,t])=>ds(e,t),"Integer.highestOneBit(int)":(n,[e])=>e===0?0:2147483648>>>Math.clz32(e)|0,"Integer.numberOfLeadingZeros(int)":(n,[e])=>Math.clz32(e),"Integer.numberOfTrailingZeros(int)":(n,[e])=>e===0?32:31-Math.clz32(e&-e),"Integer.bitCount(int)":(n,[e])=>Ph(e),"Integer.reverse(int)":(n,[e])=>Uh(e),"Integer.signum(int)":(n,[e])=>Math.sign(e),"Integer.sum(int,int)":(n,[e,t])=>e+t|0,"Integer.max(int,int)":(n,[e,t])=>Math.max(e,t),"Integer.min(int,int)":(n,[e,t])=>Math.min(e,t),"Long.toString(long,int)":(n,[e,t])=>Q(oi(e).toString(nu(t))),"Long.toHexString(long)":(n,[e])=>Q(wn(e).toString(16)),"Long.toOctalString(long)":(n,[e])=>Q(wn(e).toString(8)),"Long.toBinaryString(long)":(n,[e])=>Q(wn(e).toString(2)),"Long.toString(long)":(n,[e])=>Q(String(e)),"Long.parseLong(String,int)":(n,[e,t])=>h.normLong(rt(n,e,t,64)),"Long.parseLong(String)":(n,[e])=>h.normLong(rt(n,e,10,64)),"Long.valueOf(String,int)":(n,[e,t])=>n.box("long",h.normLong(rt(n,e,t,64))),"Long.valueOf(String)":(n,[e])=>n.box("long",h.normLong(rt(n,e,10,64))),"Long.valueOf(long)":(n,[e])=>n.box("long",e),"Long.hashCode(long)":(n,[e])=>Yn(e),"Long.compare(long,long)":(n,[e,t])=>ds(e,t),"Long.numberOfLeadingZeros(long)":(n,[e])=>_h(e),"Long.numberOfTrailingZeros(long)":(n,[e])=>Kh(e),"Long.bitCount(long)":(n,[e])=>[...wn(e).toString(2)].filter(t=>t==="1").length,"Long.signum(long)":(n,[e])=>ds(e,0),"Long.sum(long,long)":(n,[e,t])=>gs(oi(e)+oi(t)),"Long.max(long,long)":(n,[e,t])=>e>=t?e:t,"Long.min(long,long)":(n,[e,t])=>e<=t?e:t,"Double.toString(double)":(n,[e])=>Q(h.doubleToString(e)),"Double.valueOf(String)":(n,[e])=>n.box("double",ra(n,e)),"Double.valueOf(double)":(n,[e])=>n.box("double",e),"Double.parseDouble(String)":(n,[e])=>ra(n,e),"Double.isNaN(double)":(n,[e])=>f(Number.isNaN(e)),"Double.isInfinite(double)":(n,[e])=>f(e===1/0||e===-1/0),"Double.isFinite(double)":(n,[e])=>f(Number.isFinite(e)),"Double.hashCode(double)":(n,[e])=>Zn(e),"Double.compare(double,double)":(n,[e,t])=>ft(e,t),"Double.sum(double,double)":(n,[e,t])=>e+t,"Double.max(double,double)":(n,[e,t])=>Math.max(e,t),"Double.min(double,double)":(n,[e,t])=>Math.min(e,t),"Float.toString(float)":(n,[e])=>Q(h.floatToString(e)),"Float.valueOf(String)":(n,[e])=>n.box("float",ra(n,e,!0)),"Float.valueOf(float)":(n,[e])=>n.box("float",e),"Float.parseFloat(String)":(n,[e])=>ra(n,e,!0),"Float.isNaN(float)":(n,[e])=>f(Number.isNaN(e)),"Float.isInfinite(float)":(n,[e])=>f(e===1/0||e===-1/0),"Float.isFinite(float)":(n,[e])=>f(Number.isFinite(e)),"Float.hashCode(float)":(n,[e])=>h.floatToIntBits(e),"Float.floatToIntBits(float)":(n,[e])=>h.floatToIntBits(e),"Float.floatToRawIntBits(float)":(n,[e])=>Number.isNaN(e)?2143289344:h.floatToIntBits(e),"Float.intBitsToFloat(int)":(n,[e])=>h.intBitsToFloat(e),"Float.compare(float,float)":(n,[e,t])=>ft(e,t),"Float.sum(float,float)":(n,[e,t])=>Math.fround(e+t),"Float.max(float,float)":(n,[e,t])=>Math.max(e,t),"Float.min(float,float)":(n,[e,t])=>Math.min(e,t),"Byte.toString(byte)":(n,[e])=>Q(String(e)),"Byte.valueOf(byte)":(n,[e])=>n.box("byte",e),"Byte.parseByte(String,int)":(n,[e,t])=>yt(n,e,t,8),"Byte.parseByte(String)":(n,[e])=>yt(n,e,10,8),"Byte.valueOf(String,int)":(n,[e,t])=>n.box("byte",yt(n,e,t,8)),"Byte.valueOf(String)":(n,[e])=>n.box("byte",yt(n,e,10,8)),"Byte.hashCode(byte)":(n,[e])=>e,"Byte.compare(byte,byte)":(n,[e,t])=>e-t,"Byte.toUnsignedInt(byte)":(n,[e])=>e&255,"Byte.toUnsignedLong(byte)":(n,[e])=>e&255,"Short.toString(short)":(n,[e])=>Q(String(e)),"Short.valueOf(short)":(n,[e])=>n.box("short",e),"Short.parseShort(String,int)":(n,[e,t])=>yt(n,e,t,16),"Short.parseShort(String)":(n,[e])=>yt(n,e,10,16),"Short.valueOf(String,int)":(n,[e,t])=>n.box("short",yt(n,e,t,16)),"Short.valueOf(String)":(n,[e])=>n.box("short",yt(n,e,10,16)),"Short.hashCode(short)":(n,[e])=>e,"Short.compare(short,short)":(n,[e,t])=>e-t,"Short.toUnsignedInt(short)":(n,[e])=>e&65535,"Short.toUnsignedLong(short)":(n,[e])=>e&65535,"Character.valueOf(char)":(n,[e])=>n.box("char",e),"Character.hashCode(char)":(n,[e])=>e,"Character.toString(char)":(n,[e])=>Q(String.fromCharCode(e)),"Character.isLowerCase(char)":oe("isLowerCase",Zo),"Character.isLowerCase(int)":oe("isLowerCase",Zo),"Character.isUpperCase(char)":oe("isUpperCase",Yo),"Character.isUpperCase(int)":oe("isUpperCase",Yo),"Character.isDigit(char)":oe("isDigit",qo),"Character.isDigit(int)":oe("isDigit",qo),"Character.isLetter(char)":oe("isLetter",Ho),"Character.isLetter(int)":oe("isLetter",Ho),"Character.isLetterOrDigit(char)":oe("isLetterOrDigit",Wo),"Character.isLetterOrDigit(int)":oe("isLetterOrDigit",Wo),"Character.isAlphabetic(int)":oe("isAlphabetic",Mh),"Character.isSpaceChar(char)":oe("isSpaceChar",Qo),"Character.isSpaceChar(int)":oe("isSpaceChar",Qo),"Character.isWhitespace(char)":oe("isWhitespace",Xo),"Character.isWhitespace(int)":oe("isWhitespace",Xo),"Character.toLowerCase(char)":(n,[e])=>aa(n,e,!1),"Character.toLowerCase(int)":(n,[e])=>aa(n,e,!1),"Character.toUpperCase(char)":(n,[e])=>aa(n,e,!0),"Character.toUpperCase(int)":(n,[e])=>aa(n,e,!0),"Character.digit(char,int)":(n,[e,t])=>eu(n,e,t),"Character.digit(int,int)":(n,[e,t])=>eu(n,e,t),"Character.toChars(int)":(n,[e])=>{let t=e;(t<0||t>1114111)&&n.fail("java.lang.IllegalArgumentException",`Not a valid Unicode code point: 0x${(t>>>0).toString(16).toUpperCase()}`);let i=String.fromCodePoint(t);return n.allocate(i.length),new h.JArray(2,Uint16Array.from({length:i.length},(a,r)=>i.charCodeAt(r)),n.hash(),"[C")},"Character.getNumericValue(char)":(n,[e])=>tu(n,e),"Character.getNumericValue(int)":(n,[e])=>tu(n,e),"Character.forDigit(int,int)":(n,[e,t])=>{let i=e,a=t;return a<2||a>36||i<0||i>=a?0:i<10?48+i:87+i},"Character.compare(char,char)":(n,[e,t])=>e-t,"Boolean.parseBoolean(String)":(n,[e])=>f(e!==null&&/^true$/i.test(e.value)),"Boolean.TRUE":n=>n.box("boolean",1),"Boolean.FALSE":n=>n.box("boolean",0),"Boolean.valueOf(boolean)":(n,[e])=>n.box("boolean",e),"Boolean.valueOf(String)":(n,[e])=>n.box("boolean",f(e!==null&&/^true$/i.test(e.value))),"Boolean.toString(boolean)":(n,[e])=>Q(e?"true":"false"),"Boolean.hashCode(boolean)":(n,[e])=>e?1231:1237,"Boolean.compare(boolean,boolean)":(n,[e,t])=>e===t?0:e?1:-1,"Boolean.logicalAnd(boolean,boolean)":(n,[e,t])=>f(e===1&&t===1),"Boolean.logicalOr(boolean,boolean)":(n,[e,t])=>f(e===1||t===1),"Boolean.logicalXor(boolean,boolean)":(n,[e,t])=>f(e!==t)},zh={int:"anotherInteger",long:"anotherLong",double:"anotherDouble",char:"anotherCharacter",boolean:"b",float:"anotherFloat",byte:"anotherByte",short:"anotherShort"},fs=n=>n.kind==="double"||n.kind==="float"?Jh(n.value):n.kind==="long"?Number(BigInt.asIntN(32,oi(n.value))):n.value,ru={"intValue()":(n,e)=>fs(e),"longValue()":(n,e)=>e.kind==="double"||e.kind==="float"?Gh(e.value):e.value,"doubleValue()":(n,e)=>Number(e.value),"floatValue()":(n,e)=>e.kind==="long"?h.l2f(e.value):Math.fround(Number(e.value)),"byteValue()":(n,e)=>$h(fs(e)),"shortValue()":(n,e)=>Fh(fs(e)),"charValue()":(n,e)=>e.value,"booleanValue()":(n,e)=>e.value,"isNaN()":(n,e)=>f(Number.isNaN(e.value)),"isInfinite()":(n,e)=>f(e.value===1/0||e.value===-1/0),"toString()":(n,e)=>Q(jr(e)),"hashCode()":(n,e)=>Xn(e),"equals(Object)":(n,e,[,t])=>f(t instanceof h.JBox&&t.kind===e.kind&&Object.is(t.value,e.value)),compareTo:(n,e,[,t])=>t===null?n.fail(ue,`Cannot read field "value" because "${zh[e.kind]}" is null`):Qn(e,t)};var ui=class extends Error{index;constructor(e,t){super(e),this.index=t}},de=class extends Error{},lu="\\\\n\\\\r\\\\u0085\\\\u2028\\\\u2029",su=`(?=(?:\\\\r\\\\n|[${lu}])?(?![\\\\s\\\\S]))(?!(?<=\\\\r)\\\\n)`,da=" \\\\t\\\\n\\\\x0B\\\\f\\\\r",vs=" \\\\t\\\\xA0\\\\u1680\\\\u180E\\\\u2000-\\\\u200A\\\\u202F\\\\u205F\\\\u3000",ua="\\\\n\\\\x0B\\\\f\\\\r\\\\x85\\\\u2028\\\\u2029",ca={Lower:"a-z",Upper:"A-Z",ASCII:"\\\\x00-\\\\x7F",Alpha:"a-zA-Z",Digit:"0-9",Alnum:"a-zA-Z0-9",Punct:"!-\\\\/:-@\\\\[-`{-~",Graph:"!-~",Print:" -~",Blank:" \\\\t",Cntrl:"\\\\x00-\\\\x1F\\\\x7F",XDigit:"0-9a-fA-F",Space:da},Hh="\\\\^$.|?*+()[]{}";function Pe(n){let e=n.charCodeAt(0);return Hh.includes(n)||n==="-"||n==="/"?"\\\\"+n:e<32||e===127?`\\\\x${e.toString(16).padStart(2,"0")}`:n}var ps=class{#e;#t=0;groups=0;names=new Map;dotAll=!1;caseInsensitive=!1;constructor(e,t=!1,i=!1){this.#e=e,this.caseInsensitive=t,this.dotAll=i}#n(e,t=this.#t){throw new ui(e,t)}parse(){for(;;){let t=/^\\(\\?([a-zA-Z]+)\\)/.exec(this.#e.slice(this.#t));if(!t)break;for(let i of t[1])if(i==="i")this.caseInsensitive=!0;else if(i==="s")this.dotAll=!0;else{if("mxuUdc".includes(i))throw new de(`the regex flag (?${i})`);this.#n("Unknown inline modifier",this.#t+2+t[1].indexOf(i))}this.#t+=t[0].length}let e=this.#a(0);return this.#t<this.#e.length&&this.#n("Unmatched closing \')\'",this.#t-1),e}#i(e=0){return this.#e[this.#t+e]}#a(e){let t=[this.#r(e)];for(;this.#i()==="|";)this.#t++,t.push(this.#r(e));return t.join("|")}#r(e){let t="";for(;this.#t<this.#e.length;){let i=this.#i();if(i==="|")break;if(i===")"){e===0&&this.#n("Unmatched closing \')\'",this.#t-1);break}let a=this.#t,r=this.#l(e);r!==null&&(t+=r+this.#s(a))}return t}#s(e){let t="",i=this.#i();if(i==="*"||i==="+"||i==="?")t=i,this.#t++;else if(i==="{"){let r=/^\\{(\\d+)(,(\\d*))?\\}/.exec(this.#e.slice(this.#t));r||(/^\\{\\d+(,\\d*)?$/.test(this.#e.slice(this.#t))&&this.#n("Unclosed counted closure",this.#e.length),this.#n("Illegal repetition",this.#t+1)),r[3]&&Number(r[3])<Number(r[1])&&this.#n("Illegal repetition range",this.#t+r[0].length-1),t=r[0],this.#t+=r[0].length}else return"";if(this.#i()==="?")t+="?",this.#t++;else if(this.#i()==="+")throw new de("possessive quantifiers in a regex");let a=this.#i();return(a==="*"||a==="+"||a==="?")&&this.#n(`Dangling meta character \'${a}\'`,this.#t),t}#l(e){let t=this.#e[this.#t++];switch(t){case"*":case"+":case"?":this.#n(`Dangling meta character \'${t}\'`,this.#t-1);break;case"{":this.#n("Illegal repetition",this.#t);break;case".":return this.dotAll?"[\\\\s\\\\S]":`[^${lu}]`;case"^":return"^";case"$":return su;case"[":return this.#c();case"(":return this.#u(e);case"\\\\":return this.#h(!1);default:return Pe(t)}return""}#u(e){let t=this.#t-1,i="(";if(this.#i()==="?"){let a=this.#e.slice(this.#t+1);if(a.startsWith(":"))i="(?:";else if(a.startsWith("="))i="(?=";else if(a.startsWith("!"))i="(?!";else if(a.startsWith("<="))i="(?<=";else if(a.startsWith("<!"))i="(?<!";else{if(a.startsWith(">"))throw new de("atomic groups (?>...) in a regex");if(a.startsWith("<")){let r=/^<([a-zA-Z][a-zA-Z0-9]*)>/.exec(a);return r||this.#n("named capturing group is missing trailing \'>\'",this.#t+1),this.groups++,this.names.set(r[1],this.groups),this.#t+=r[0].length+1,this.#o(`(?<${r[1]}>`,e,t)}else{if(/^[a-zA-Z-]/.test(a))throw new de("regex flags written inside the pattern, (?i) other than at its start");this.#n("Unknown inline modifier",this.#t+1)}}return this.#t+=i.length-1,this.#o(i,e,t)}return this.groups++,this.#o(i,e,t)}#o(e,t,i){let a=this.#a(t+1);return this.#i()!==")"&&this.#n("Unclosed group",this.#e.length),this.#t++,e+a+")"}#h(e){let t=this.#e[this.#t++];switch(t===void 0&&this.#n("Unescaped trailing backslash",this.#e.length),t){case"d":return e?"0-9":"[0-9]";case"D":return e?this.#d():"[^0-9]";case"w":return e?"a-zA-Z_0-9":"[a-zA-Z_0-9]";case"W":return e?this.#d():"[^a-zA-Z_0-9]";case"s":return e?da:`[${da}]`;case"S":return e?this.#d():`[^${da}]`;case"h":return e?vs:`[${vs}]`;case"H":return e?this.#d():`[^${vs}]`;case"v":return e?ua:`[${ua}]`;case"V":return e?this.#d():`[^${ua}]`;case"R":return e&&this.#n("Illegal/unsupported escape sequence",this.#t-1),`(?:\\\\r\\\\n|[${ua}])`;case"b":case"B":return e&&this.#n("Illegal/unsupported escape sequence",this.#t-1),"\\\\"+t;case"A":return"^";case"z":return"(?![\\\\s\\\\S])";case"Z":return su;case"G":throw new de("\\\\G in a regex");case"t":return"\\\\t";case"n":return"\\\\n";case"r":return"\\\\r";case"f":return"\\\\f";case"a":return"\\\\x07";case"e":return"\\\\x1B";case"0":{let i=/^[0-3]?[0-7]{1,2}/.exec(this.#e.slice(this.#t));return i||this.#n("Illegal octal escape sequence",this.#t),this.#t+=i[0].length,Pe(String.fromCharCode(parseInt(i[0],8)))}case"x":{let i=/^(?:[0-9a-fA-F]{2}|\\{[0-9a-fA-F]+\\})/.exec(this.#e.slice(this.#t));i||this.#n("Illegal hexadecimal escape sequence",this.#t),this.#t+=i[0].length;let a=parseInt(i[0].replace(/[{}]/g,""),16);if(a>65535)throw new de("supplementary characters in a regex");return Pe(String.fromCharCode(a))}case"u":{let i=/^[0-9a-fA-F]{4}/.exec(this.#e.slice(this.#t));return i||this.#n("Illegal Unicode escape sequence",this.#t),this.#t+=4,Pe(String.fromCharCode(parseInt(i[0],16)))}case"c":{let i=this.#e[this.#t++];return i===void 0&&this.#n("Illegal control escape sequence",this.#t),Pe(String.fromCharCode(i.charCodeAt(0)^64))}case"Q":{let i=this.#e.indexOf("\\\\E",this.#t),a=i<0?this.#e.slice(this.#t):this.#e.slice(this.#t,i);return this.#t=i<0?this.#e.length:i+2,[...a].map(Pe).join("")||(e?"":"(?:)")}case"E":return"";case"p":case"P":{let i=/^\\{(?:Is)?([A-Za-z]+)\\}/.exec(this.#e.slice(this.#t)),a=i?.[1];if(!a||!(a in ca)){if(i)throw new de(`the regex class \\\\${t}{${i[1]}}`);this.#n("Unknown character property name {"+this.#e.slice(this.#t+1,this.#e.indexOf("}",this.#t))+"}",this.#t)}return this.#t+=i[0].length,t==="P"?e?this.#d():`[^${ca[a]}]`:e?ca[a]:`[${ca[a]}]`}case"k":{let i=/^<([a-zA-Z][a-zA-Z0-9]*)>/.exec(this.#e.slice(this.#t));return i||this.#n("\\\\k is not followed by \'<\' for named capturing group",this.#t),this.names.has(i[1])||this.#n(`named capturing group <${i[1]}> does not exist`,this.#t+i[0].length-1),this.#t+=i[0].length,`\\\\k<${i[1]}>`}default:if(t>="1"&&t<="9"){e&&this.#n("Illegal/unsupported escape sequence",this.#t-1);let i=Number(t);for(;/[0-9]/.test(this.#i()??"")&&i*10+Number(this.#i())<=this.groups;)i=i*10+Number(this.#e[this.#t++]);return i>this.groups?"(?!)":`\\\\${i}(?:)`}return/[a-zA-Z]/.test(t)&&this.#n("Illegal/unsupported escape sequence",this.#t-1),Pe(t)}}#d(){throw new de("negated classes such as \\\\S inside [...] in a regex")}#c(){let e=this.#t-1,t="[";this.#i()==="^"&&(t+="^",this.#t++);let i=!0;for(;;){let a=this.#i();if(a===void 0&&this.#n("Unclosed character class",this.#e.length-1),a==="]"&&!i){this.#t++;break}if(i=!1,a==="[")throw new de("nested character classes in a regex");if(a==="&"&&this.#i(1)==="&")throw new de("character class intersections (&&) in a regex");let r=this.#f();if(r.single!==null&&this.#i()==="-"&&this.#i(1)===void 0&&this.#n("Illegal character range",this.#e.length),r.single!==null&&this.#i()==="-"&&this.#i(1)!=="]"){this.#t++;let s=this.#f();s.single===null&&this.#n("Illegal character range",this.#t-1),s.single.charCodeAt(0)<r.single.charCodeAt(0)&&this.#n("Illegal character range",this.#t-1),t+=`${Pe(r.single)}-${Pe(s.single)}`}else t+=r.text}return t==="["?"(?!)":t==="[^"?"[\\\\s\\\\S]":t+"]"}#f(){let e=this.#e[this.#t++];if(e!=="\\\\")return{single:e,text:Pe(e)};let t=this.#t,i=this.#e[this.#t],a=this.#h(!0);return i!==void 0&&"dDwWsShHvVpPQ".includes(i)?{single:null,text:a}:{single:a.startsWith("\\\\x")?String.fromCharCode(parseInt(a.slice(2),16)):a.length===2&&a[0]==="\\\\"?qh(a[1]):a,text:a}}};function qh(n){return{t:" ",n:`\n`,r:"\\r",f:"\\f"}[n]??n}var ha=new Map,jn={CASE_INSENSITIVE:2,LITERAL:16,DOTALL:32},Wh=511;function An(n,e,t=0){if(t&~Wh)return n.fail("java.lang.IllegalArgumentException",`Unknown flag 0x${(t>>>0).toString(16)}`);let i=t&~(jn.CASE_INSENSITIVE|jn.LITERAL|jn.DOTALL);if(i)return n.limitation(`the Pattern flag ${{1:"UNIX_LINES",4:"COMMENTS",8:"MULTILINE",64:"UNICODE_CASE",128:"CANON_EQ",256:"UNICODE_CHARACTER_CLASS"}[i&-i]}`);let a=`${t}:${e}`,r=ha.get(a);if(!r){try{let s=(t&jn.LITERAL)!==0,l=new ps(s?bs(e):e,(t&jn.CASE_INSENSITIVE)!==0,(t&jn.DOTALL)!==0),o=l.parse(),u=l.caseInsensitive?"i":"";r={regex:new RegExp(o,"g"+u),source:o,flags:u,whole:new RegExp(`^(?:${o})(?![\\\\s\\\\S])`,u),groups:l.groups,names:l.names,caseInsensitive:l.caseInsensitive}}catch(s){if(!(s instanceof ui||s instanceof de))throw s;r=s}ha.size>200&&ha.clear(),ha.set(a,r)}if(r instanceof de)return n.limitation(r.message);if(r instanceof ui){let s=r.index>=0&&r.index<e.length?`\n${" ".repeat(r.index)}^`:"";return n.fail("java.util.regex.PatternSyntaxException",`${r.message} near index ${r.index}\n${e}${s}`)}return r}function bs(n){return n.includes("\\\\E")?`\\\\Q${n.split("\\\\E").join("\\\\E\\\\\\\\E\\\\Q")}\\\\E`:`\\\\Q${n}\\\\E`}function Vt(n,e,t){e.caseInsensitive&&/[^\\x00-\\x7f]/.test(t)&&n.limitation("case-insensitive regex matching of non-ASCII text"),n.charge(t.length)}function Ns(n,e,t=1/0){let i=n.regex;i.lastIndex=0;let a=[];for(;a.length<t;){let r=i.exec(e);if(!r||(a.push(r),r[0]===""&&(i.lastIndex=r.index+1),i.lastIndex>e.length))break}return a}function fa(n,e,t,i){let a="";for(let r=0;r<t.length;r++){let s=t[r];if(s==="\\\\")r++,r>=t.length&&n.fail("java.lang.IllegalArgumentException","character to be escaped is missing"),a+=t[r];else if(s==="$"){r++,r>=t.length&&n.fail("java.lang.IllegalArgumentException","Illegal group reference: group index is missing");let l;if(t[r]==="{"){let o=t.indexOf("}",r),u=o<0?"":t.slice(r+1,o);(o<0||!/^[a-zA-Z][a-zA-Z0-9]*$/.test(u))&&n.fail("java.lang.IllegalArgumentException","named capturing group is missing trailing \'}\'"),e.names.has(u)||n.fail("java.lang.IllegalArgumentException",`No group with name {${u}}`),l=e.names.get(u),r=o}else{let o=t.charCodeAt(r)-48;for((o<0||o>9)&&n.fail("java.lang.IllegalArgumentException","Illegal group reference"),l=o;r+1<t.length;){let u=t.charCodeAt(r+1)-48;if(u<0||u>9||l*10+u>e.groups)break;l=l*10+u,r++}l>e.groups&&n.fail("java.lang.IndexOutOfBoundsException",`No group ${l}`)}a+=i[l]??""}else a+=s}return a}var fe="java.lang.NumberFormatException",F="java.lang.ArithmeticException",lt="java.lang.NullPointerException",Vu="java.lang.IllegalArgumentException",P=n=>10n**BigInt(n),Y=n=>n<0n?-n:n,Is=n=>n>0n?1:n<0n?-1:0,Qt=n=>n===0n?1:Y(n).toString().length,Cs=[0,0,30,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5],It=class n extends b{className="java.math.BigInteger";v;constructor(e,t){super(e),this.v=t}*javaString(){return this.v.toString()}get contentEquality(){return!0}*contentEquals(e,t){return t instanceof n&&t.v===this.v}*contentHash(){return Eu(this.v)}naturalOrder(e,t){let i=ie(e,t);return this.v<i.v?-1:this.v>i.v?1:0}"add(BigInteger)"(e,t){return E(e,this.v+ie(e,t).v)}"subtract(BigInteger)"(e,t){return E(e,this.v-ie(e,t).v)}"multiply(BigInteger)"(e,t){return e.charge(Et(this.v)*Et(ie(e,t).v)),E(e,this.v*t.v)}"divide(BigInteger)"(e,t){return E(e,this.v/ys(e,t))}"remainder(BigInteger)"(e,t){return E(e,this.v%ys(e,t))}"divideAndRemainder(BigInteger)"(e,t){let i=ys(e,t);return new h.JArray(3,[E(e,this.v/i),E(e,this.v%i)],e.hash(),"[Ljava.math.BigInteger;")}"mod(BigInteger)"(e,t){let i=Ss(e,t),a=this.v%i;return E(e,a<0n?a+i:a)}"pow(int)"(e,t){return t<0?e.fail(F,"Negative exponent"):(e.charge(Et(this.v)*t),E(e,this.v**BigInt(t)))}"modPow(BigInteger,BigInteger)"(e,t,i){let a=ie(e,t).v,r=Ss(e,i);if(r===1n)return E(e,0n);let s=(this.v%r+r)%r;return a<0n&&(s=ou(e,s,r)),e.charge(Y(a).toString(2).length*Et(r)*Et(r)),E(e,Ru(s,Y(a),r))}"modInverse(BigInteger)"(e,t){let i=Ss(e,t);return i===1n?E(e,0n):E(e,ou(e,(this.v%i+i)%i,i))}"gcd(BigInteger)"(e,t){let i=Y(this.v),a=Y(ie(e,t).v);for(;a;)[i,a]=[a,i%a];return E(e,i)}"abs()"(e){return this.v<0n?E(e,-this.v):this}"negate()"(e){return E(e,-this.v)}"signum()"(){return Is(this.v)}"compareTo(BigInteger)"(e,t){return this.naturalOrder(e,t)}"max(BigInteger)"(e,t){return this.v>=ie(e,t).v?this:t}"min(BigInteger)"(e,t){return this.v<=ie(e,t).v?this:t}"sqrt()"(e){return this.v<0n?e.fail(F,"Negative BigInteger"):E(e,Iu(this.v))}"intValue()"(){return Number(BigInt.asIntN(32,this.v))}"longValue()"(){return h.normLong(BigInt.asIntN(64,this.v))}"doubleValue()"(){return Number(this.v)}"floatValue()"(){return h.parseDecimalFloat(this.v.toString())}"byteValue()"(){return Number(BigInt.asIntN(8,this.v))}"shortValue()"(){return Number(BigInt.asIntN(16,this.v))}"intValueExact()"(e){return BigInt.asIntN(32,this.v)!==this.v?e.fail(F,"BigInteger out of int range"):Number(this.v)}"longValueExact()"(e){return BigInt.asIntN(64,this.v)!==this.v?e.fail(F,"BigInteger out of long range"):h.normLong(this.v)}"toString(int)"(e,t){let i=t;return new h.JString(this.v.toString(i<2||i>36?10:i))}"bitLength()"(){let e=this.v<0n?-this.v-1n:this.v;return e===0n?0:e.toString(2).length}"bitCount()"(){let e=this.v<0n?-this.v-1n:this.v,t=0;for(let i of e.toString(2))i==="1"&&t++;return t}"testBit(int)"(e,t){return t<0?e.fail(F,"Negative bit address"):f((this.v>>BigInt(t)&1n)===1n)}"setBit(int)"(e,t){return t<0?e.fail(F,"Negative bit address"):E(e,this.v|1n<<BigInt(t))}"clearBit(int)"(e,t){return t<0?e.fail(F,"Negative bit address"):E(e,this.v&~(1n<<BigInt(t)))}"flipBit(int)"(e,t){return t<0?e.fail(F,"Negative bit address"):E(e,this.v^1n<<BigInt(t))}"getLowestSetBit()"(){if(this.v===0n)return-1;let e=0;for(;(this.v>>BigInt(e)&1n)===0n;)e++;return e}"shiftLeft(int)"(e,t){let i=t;return E(e,i>=0?this.v<<BigInt(i):this.v>>BigInt(-i))}"shiftRight(int)"(e,t){let i=t;return E(e,i>=0?this.v>>BigInt(i):this.v<<BigInt(-i))}"and(BigInteger)"(e,t){return E(e,this.v&ie(e,t).v)}"or(BigInteger)"(e,t){return E(e,this.v|ie(e,t).v)}"xor(BigInteger)"(e,t){return E(e,this.v^ie(e,t).v)}"not()"(e){return E(e,~this.v)}"andNot(BigInteger)"(e,t){return E(e,this.v&~ie(e,t).v)}"isProbablePrime(int)"(e,t){return t<=0?1:(e.charge(Et(this.v)**2*40),f(uu(Y(this.v))))}"nextProbablePrime()"(e){if(this.v<0n)return e.fail(F,`start < 0: ${this.v}`);let t=this.v<2n?2n:this.v+1n;for(t>2n&&t%2n===0n&&t++;!uu(t);)e.charge(Et(t)**2*40),t+=t===2n?1n:2n;return E(e,t)}};function Eu(n){let e=Y(n),t=[];for(;e>0n;)t.unshift(Number(e&0xffffffffn)|0),e>>=32n;let i=0;for(let a of t)i=Math.imul(31,i)+a|0;return Math.imul(i,Is(n))}var Et=n=>Math.max(1,Math.ceil(Y(n).toString(16).length/8));function ie(n,e){return e===null?n.fail(lt,\'Cannot read field "signum" because "val" is null\'):e}function ys(n,e){let t=ie(n,e).v;return t===0n?n.fail(F,"BigInteger divide by zero"):t}function Ss(n,e){let t=ie(n,e).v;return t<=0n?n.fail(F,"BigInteger: modulus not positive"):t}function ou(n,e,t){let[i,a]=[e,t],[r,s]=[1n,0n];for(;a;){let l=i/a;[i,a]=[a,i-l*a],[r,s]=[s,r-l*s]}return i!==1n?n.fail(F,"BigInteger not invertible."):(r%t+t)%t}function Ru(n,e,t){let i=1n,a=n%t;for(;e>0n;)e&1n&&(i=i*a%t),a=a*a%t,e>>=1n;return i}function Iu(n){if(n<2n)return n;let e=BigInt(Math.floor(Math.sqrt(Number(n))));for(;;){let t=e+n/e>>1n;if(t>=e)break;e=t}for(;e*e>n;)e--;for(;(e+1n)*(e+1n)<=n;)e++;return e}function uu(n){if(n<2n)return!1;let e=[2n,3n,5n,7n,11n,13n,17n,19n,23n,29n,31n,37n,41n,43n,47n,53n,59n,61n,67n,71n,73n,79n,83n,89n];for(let a of e){if(n===a)return!0;if(n%a===0n)return!1}let t=n-1n,i=0;for(;(t&1n)===0n;)t>>=1n,i++;e:for(let a of e){let r=Ru(a,t,n);if(!(r===1n||r===n-1n)){for(let s=1;s<i;s++)if(r=r*r%n,r===n-1n)continue e;return!1}}return!0}var cu=new WeakMap;function E(n,e){if(e>=-16n&&e<=16n){let t=cu.get(n);t||cu.set(n,t=new Map);let i=t.get(e);return i||t.set(e,i=new It(n.hash(),e)),i}return new It(n.hash(),e)}function hu(n,e,t){if(e===null)return n.fail(lt,\'Cannot invoke "String.length()" because "val" is null\');let i=e.value;if(t<2||t>36)return n.fail(fe,"Radix out of range");if(!i.length)return n.fail(fe,"Zero length BigInteger");let a=0,r=!1,s=i.lastIndexOf("-"),l=i.lastIndexOf("+");if(s>=0){if(s!==0||l>=0)return n.fail(fe,"Illegal embedded sign character");r=!0,a=1}else if(l>=0){if(l!==0)return n.fail(fe,"Illegal embedded sign character");a=1}if(a===i.length)return n.fail(fe,"Zero length BigInteger");if(/[^\\P{Nd}0-9]/u.test(i))return n.limitation("parsing digits outside ASCII");let o=m=>{let x=parseInt(m,36);return Number.isNaN(x)||x>=t?-1:x};for(;a<i.length&&o(i[a])===0;)a++;if(a===i.length)return 0n;let u=i.length-a,d=u%Cs[t];d===0&&(d=Cs[t]);let g=0n,v=BigInt(t);for(n.charge(u>>>3);a<i.length;){let m=i.slice(a,a+d);if(a+=d,d=Cs[t],!m.length||[...m].some(x=>o(x)<0))return n.fail(fe,`For input string: "${m}"${t===10?"":` under radix ${t}`}`);for(let x of m)g=g*v+BigInt(o(x))}return r?-g:g}var Os=["UP","DOWN","CEILING","FLOOR","HALF_UP","HALF_DOWN","HALF_EVEN","UNNECESSARY"],Es=class extends b{className="java.math.RoundingMode";name;ordinal;constructor(e,t){super(e),this.ordinal=t,this.name=Os[t]}*javaString(){return this.name}naturalOrder(e,t){return t===null?e.fail(lt,null):this.ordinal-t.ordinal}"name()"(){return new h.JString(this.name)}"ordinal()"(){return this.ordinal}"compareTo(RoundingMode)"(e,t){return this.naturalOrder(e,t)}},du=new WeakMap;function Rs(n){let e=du.get(n);return e||du.set(n,e=Os.map((t,i)=>new Es(n.hash(),i))),e}var be=(n,e)=>Rs(n)[Os.indexOf(e)];function xs(n,e){return e===null?n.fail(lt,\'Cannot invoke "java.math.RoundingMode.ordinal()" because "roundingMode" is null\'):e.name}function pa(n,e,t,i){let a=e/t,r=e-a*t;if(r===0n)return a;let s=e<0n!=t<0n?-1n:1n,l=2n*Y(r),o=l===Y(t)?0:l>Y(t)?1:-1;switch(i){case"UP":return a+s;case"DOWN":return a;case"CEILING":return s>0n?a+1n:a;case"FLOOR":return s<0n?a-1n:a;case"HALF_UP":return o>=0?a+s:a;case"HALF_DOWN":return o>0?a+s:a;case"HALF_EVEN":return o>0||o===0&&(a&1n)!==0n?a+s:a;case"UNNECESSARY":return n.fail(F,"Rounding necessary")}}var Xt=class n extends b{className="java.math.MathContext";precision;mode;constructor(e,t,i){super(e),this.precision=t,this.mode=i}*javaString(){return`precision=${this.precision} roundingMode=${this.mode.name}`}get contentEquality(){return!0}*contentEquals(e,t){return t instanceof n&&t.precision===this.precision&&t.mode===this.mode}*contentHash(){return this.mode.hash<<24|this.precision}"getPrecision()"(){return this.precision}"getRoundingMode()"(){return this.mode}},fu=new WeakMap;function ga(n,e){let t=fu.get(n);return t||(t={UNLIMITED:new Xt(n.hash(),0,be(n,"HALF_UP")),DECIMAL32:new Xt(n.hash(),7,be(n,"HALF_EVEN")),DECIMAL64:new Xt(n.hash(),16,be(n,"HALF_EVEN")),DECIMAL128:new Xt(n.hash(),34,be(n,"HALF_EVEN"))},fu.set(n,t)),t[e]}function gu(n,e,t){return e<0?n.fail(Vu,"Digits < 0"):t===null?n.fail(lt,"null RoundingMode"):new Xt(n.hash(),e,t)}function Vs(n,e){return e===null?n.fail(lt,\'Cannot read field "precision" because "mc" is null\'):e}var Ts=-2147483648,ws=2147483647,hi=class n extends b{className="java.math.BigDecimal";u;scale;constructor(e,t,i){super(e),this.u=t,this.scale=i}*javaString(){return ma(this.u,this.scale)}get contentEquality(){return!0}*contentEquals(e,t){return t instanceof n&&t.u===this.u&&t.scale===this.scale}*contentHash(){return Math.imul(31,Eu(this.u))+this.scale|0}naturalOrder(e,t){let i=Ue(e,t),[a,r]=ci(this,i);return a<r?-1:a>r?1:0}"add(BigDecimal)"(e,t){let i=Ue(e,t),[a,r,s]=ci(this,i);return O(e,a+r,s)}"subtract(BigDecimal)"(e,t){let i=Ue(e,t),[a,r,s]=ci(this,i);return O(e,a-r,s)}"multiply(BigDecimal)"(e,t){let i=Ue(e,t);return O(e,this.u*i.u,st(e,this.scale+i.scale))}"divide(BigDecimal)"(e,t){return bu(e,this,Ue(e,t))}"divide(BigDecimal,int,RoundingMode)"(e,t,i,a){return Nu(e,this,Ue(e,t),i,xs(e,a))}"divide(BigDecimal,RoundingMode)"(e,t,i){return Nu(e,this,Ue(e,t),this.scale,xs(e,i))}"divide(BigDecimal,MathContext)"(e,t,i){let a=Vs(e,i),r=Ue(e,t);return a.precision===0?bu(e,this,r):Qh(e,this,r,a.precision,a.mode.name)}"divideToIntegralValue(BigDecimal)"(e,t){return Cu(e,this,Ue(e,t))}"remainder(BigDecimal)"(e,t){let i=Ue(e,t),a=Cu(e,this,i),r=new n(0,a.u*i.u,a.scale+i.scale),[s,l,o]=ci(this,r);return O(e,s-l,o)}"setScale(int,RoundingMode)"(e,t,i){return yu(e,this,t,xs(e,i))}"setScale(int)"(e,t){return yu(e,this,t,"UNNECESSARY")}"round(MathContext)"(e,t){let i=Vs(e,t);return ed(e,this,i.precision,i.mode.name)}"sqrt(MathContext)"(e,t){return td(e,this,Vs(e,t))}"pow(int)"(e,t){let i=t;return i<0||i>999999999?e.fail(F,"Invalid operation"):(e.charge(Et(this.u)*i),O(e,this.u**BigInt(i),st(e,this.scale*i)))}"negate()"(e){return O(e,-this.u,this.scale)}"abs()"(e){return this.u<0n?O(e,-this.u,this.scale):this}"plus()"(){return this}"signum()"(){return Is(this.u)}"scale()"(){return this.scale}"precision()"(){return Qt(this.u)}"unscaledValue()"(e){return E(e,this.u)}"compareTo(BigDecimal)"(e,t){return this.naturalOrder(e,t)}"max(BigDecimal)"(e,t){return this.naturalOrder(e,t)>=0?this:t}"min(BigDecimal)"(e,t){return this.naturalOrder(e,t)<=0?this:t}"movePointLeft(int)"(e,t){return Su(e,this,st(e,this.scale+t))}"movePointRight(int)"(e,t){return Su(e,this,st(e,this.scale-t))}"scaleByPowerOfTen(int)"(e,t){return O(e,this.u,st(e,this.scale-t))}"stripTrailingZeros()"(e){if(this.u===0n)return O(e,0n,0);let t=this.u,i=this.scale;for(;t%10n===0n;)t/=10n,i--;return O(e,t,i)}"toPlainString()"(){return new h.JString(vu(this.u,this.scale))}"toBigInteger()"(e){return E(e,Rt(this))}"toBigIntegerExact()"(e){return Rt(this)*(this.scale>0?P(this.scale):1n)!==(this.scale>0?this.u:this.u*P(-this.scale))?e.fail(F,"Rounding necessary"):E(e,Rt(this))}"intValue()"(){return Number(BigInt.asIntN(32,Rt(this)))}"longValue()"(){return h.normLong(BigInt.asIntN(64,Rt(this)))}"intValueExact()"(e){let t=pu(e,this);return BigInt.asIntN(32,t)!==t?e.fail(F,"Overflow"):Number(t)}"longValueExact()"(e){let t=pu(e,this);return BigInt.asIntN(64,t)!==t?e.fail(F,"Overflow"):h.normLong(t)}"doubleValue()"(){return Number(ma(this.u,this.scale))}"floatValue()"(){return h.parseDecimalFloat(vu(this.u,this.scale))}"byteValue()"(){return Number(BigInt.asIntN(8,Rt(this)))}"shortValue()"(){return Number(BigInt.asIntN(16,Rt(this)))}};function Ue(n,e){return e===null?n.fail(lt,\'Cannot read field "scale" because "augend" is null\'):e}function st(n,e){return e<Ts||e>ws?n.fail(F,e>0?"Underflow":"Overflow"):e}function ci(n,e){return n.scale===e.scale?[n.u,e.u,n.scale]:n.scale>e.scale?[n.u,e.u*P(n.scale-e.scale),n.scale]:[n.u*P(e.scale-n.scale),e.u,e.scale]}var mu=new WeakMap;function O(n,e,t){return new hi(n.hash(),e,t)}function Mn(n,e){if(e<0n||e>10n)return O(n,e,0);let t=mu.get(n);t||mu.set(n,t=new Map);let i=t.get(e);return i||t.set(e,i=O(n,e,0)),i}function ma(n,e){let t=n<0n?"-":"",i=Y(n).toString();if(e===0)return t+i;let a=-e+(i.length-1);if(e>0&&a>=-6)return i.length>e?`${t}${i.slice(0,i.length-e)}.${i.slice(i.length-e)}`:`${t}0.${"0".repeat(e-i.length)}${i}`;let r=i.length>1?`${i[0]}.${i.slice(1)}`:i;return`${t}${r}E${a>=0?"+":""}${a}`}function vu(n,e){return e<=0?n===0n?"0":n.toString()+"0".repeat(-e):ma(n,e).includes("E")?Yh(n,e):ma(n,e)}function Yh(n,e){let t=n<0n?"-":"",i=Y(n).toString().padStart(e+1,"0");return`${t}${i.slice(0,i.length-e)}.${i.slice(i.length-e)}`}function Rt(n){return n.scale<=0?n.u*P(-n.scale):n.u/P(n.scale)}function pu(n,e){return e.scale>0&&e.u%P(e.scale)!==0n?n.fail(F,"Rounding necessary"):Rt(e)}function ba(n,e,t){t.u===0n&&n.fail(F,e.u===0n?"Division undefined":"Division by zero")}function di(n,e,t){for(;e>t&&n!==0n&&n%10n===0n;)n/=10n,e--;return[n,e]}var Ls=n=>Math.max(Ts,Math.min(ws,n));function bu(n,e,t){ba(n,e,t);let i=Ls(e.scale-t.scale);if(e.u===0n)return O(n,0n,i);let a=e.u,r=t.u;r<0n&&(a=-a,r=-r);let s=Zh(Y(a),r);a/=s,r/=s;let l=0,o=0,u=r;for(;u%2n===0n;)u/=2n,l++;for(;u%5n===0n;)u/=5n,o++;if(u!==1n)return n.fail(F,"Non-terminating decimal expansion; no exact representable decimal result.");let d=Math.max(l,o);s=a*P(d)/r;let[g,v]=di(s,i+d,i);return O(n,g,st(n,v))}function Zh(n,e){for(;e;)[n,e]=[e,n%e];return n}function Nu(n,e,t,i,a){ba(n,e,t);let r=i-e.scale+t.scale,s=r>=0?e.u*P(r):e.u,l=r>=0?t.u:t.u*P(-r);return O(n,pa(n,s,l,a),i)}function Xh(n,e){let t=n.toString().length-e.toString().length;return(t>=0?n<e*P(t):n*P(-t)<e)&&t--,t}function Qh(n,e,t,i,a){ba(n,e,t);let r=Ls(e.scale-t.scale);if(e.u===0n)return O(n,0n,r);let s=Y(e.u),l=Y(t.u),o=Xh(s,l)-r,u=i-1-o,d=u-r,g=d>=0?e.u*P(d):e.u,v=d>=0?t.u:t.u*P(-d),m=pa(n,g,v,a),x=g%v===0n;return Qt(m)>i&&(m/=10n,u--),x&&([m,u]=di(m,u,r)),O(n,m,st(n,u))}function Cu(n,e,t){ba(n,e,t);let i=Ls(e.scale-t.scale),[a,r]=ci(e,t);if(Y(a)<Y(r))return O(n,0n,i);let s=a/r;if(i>=0)return O(n,s*P(i),i);let[l,o]=di(s,0,i);return O(n,l,o)}function yu(n,e,t,i){return t>=e.scale?O(n,e.u*P(t-e.scale),t):O(n,pa(n,e.u,P(e.scale-t),i),t)}function ed(n,e,t,i){let a=Qt(e.u);if(t===0||a<=t)return e;let r=a-t,s=pa(n,e.u,P(r),i),l=e.scale-r;return Qt(s)>t&&(s/=10n,l--),O(n,s,st(n,l))}function Su(n,e,t){return t<0?O(n,e.u*P(-t),0):O(n,e.u,t)}function td(n,e,t){if(e.u<0n)return n.fail(F,"Attempted square root of negative BigDecimal");let i=Math.trunc(e.scale/2);if(e.u===0n)return O(n,0n,i);let a=t.precision===0?"UNNECESSARY":t.mode.name,r=t.precision===0?Math.ceil(Qt(e.u)/2)+1:t.precision,s=Math.floor((Qt(e.u)-1-e.scale)/2),l=r-1-s,o=m=>{let x=2*m-e.scale,te=x>=0?e.u*P(x):e.u,L=x>=0?1n:P(-x),A=Iu(te/L);return{u:A,exact:A*A*L===te,num:te,den:L}},{u,exact:d,num:g,den:v}=o(l);if(d)[u,l]=di(u,l,i);else{if(a==="UNNECESSARY")return n.fail(F,"Computed square root not exact.");let m=(2n*u+1n)**2n*v<4n*g;(a==="UP"||a==="CEILING"||(a==="HALF_UP"||a==="HALF_DOWN"||a==="HALF_EVEN")&&m)&&u++,Qt(u)>r&&(u/=10n,l--)}return O(n,u,st(n,l))}function va(n,e){if(e===null)return n.fail(lt,\'Cannot invoke "String.toCharArray()" because "val" is null\');let t=e.value;if(!t.length)return n.fail(fe,null);let i=0;(t[0]==="+"||t[0]==="-")&&i++;let a="",r=0,s=!1,l=0;for(;i<t.length;i++){let d=t[i];if(d>="0"&&d<="9")a+=d,s&&r++;else if(d==="."){if(s)return n.fail(fe,"Character array contains more than one decimal point.");s=!0}else if(d==="e"||d==="E"){let g=t.slice(i+1);if(!/^[+-]?\\d+$/.test(g))return n.fail(fe,null);l=Number(g);break}else return/\\p{Nd}/u.test(d)?n.limitation("parsing digits outside ASCII"):n.fail(fe,`Character ${d} is neither a decimal digit number, decimal point, nor "e" notation exponential mark.`)}if(!a.length)return n.fail(fe,"No digits found.");let o=r-l;if(o<Ts||o>ws)return n.fail(fe,"Scale out of range.");let u=BigInt(a);return O(n,t[0]==="-"?-u:u,o)}function nd(n,e){if(!Number.isFinite(e))return n.fail(fe,"Infinite or NaN");if(e===0)return O(n,0n,0);let t=new DataView(new ArrayBuffer(8));t.setFloat64(0,e);let i=t.getBigUint64(0),a=Number(i>>52n&0x7ffn),r=i&(1n<<52n)-1n,s;a===0?s=-1074:(r|=1n<<52n,s=a-1075);let l=e<0?-1n:1n;if(s>=0)return O(n,l*(r<<BigInt(s)),0);let[o,u]=di(r*5n**BigInt(-s),-s,0);return O(n,l*o,u)}var xu=n=>n.value,Ou={"BigInteger.ZERO":n=>E(n,0n),"BigInteger.ONE":n=>E(n,1n),"BigInteger.TWO":n=>E(n,2n),"BigInteger.TEN":n=>E(n,10n),"BigInteger.<init>(String)":(n,[e])=>new It(n.hash(),hu(n,e,10)),"BigInteger.<init>(String,int)":(n,[e,t])=>new It(n.hash(),hu(n,e,t)),"BigInteger.valueOf(long)":(n,[e])=>E(n,BigInt(e)),"BigDecimal.ZERO":n=>Mn(n,0n),"BigDecimal.ONE":n=>Mn(n,1n),"BigDecimal.TWO":n=>Mn(n,2n),"BigDecimal.TEN":n=>Mn(n,10n),"BigDecimal.<init>(String)":(n,[e])=>va(n,e),"BigDecimal.<init>(double)":(n,[e])=>nd(n,e),"BigDecimal.<init>(int)":(n,[e])=>O(n,BigInt(e),0),"BigDecimal.<init>(long)":(n,[e])=>O(n,BigInt(e),0),"BigDecimal.<init>(BigInteger)":(n,[e])=>O(n,ie(n,e).v,0),"BigDecimal.<init>(BigInteger,int)":(n,[e,t])=>O(n,ie(n,e).v,t),"BigDecimal.valueOf(long)":(n,[e])=>Mn(n,BigInt(e)),"BigDecimal.valueOf(long,int)":(n,[e,t])=>t===0?Mn(n,BigInt(e)):O(n,BigInt(e),t),"BigDecimal.valueOf(double)":(n,[e])=>Number.isFinite(e)?va(n,new h.JString(h.doubleToString(e))):n.fail(fe,"Infinite or NaN"),"RoundingMode.UP":n=>be(n,"UP"),"RoundingMode.DOWN":n=>be(n,"DOWN"),"RoundingMode.CEILING":n=>be(n,"CEILING"),"RoundingMode.FLOOR":n=>be(n,"FLOOR"),"RoundingMode.HALF_UP":n=>be(n,"HALF_UP"),"RoundingMode.HALF_DOWN":n=>be(n,"HALF_DOWN"),"RoundingMode.HALF_EVEN":n=>be(n,"HALF_EVEN"),"RoundingMode.UNNECESSARY":n=>be(n,"UNNECESSARY"),"RoundingMode.values()":n=>new h.JArray(3,Rs(n).slice(),n.hash(),"[Ljava.math.RoundingMode;"),"RoundingMode.valueOf(String)":(n,[e])=>e===null?n.fail(lt,"Name is null"):Rs(n).find(i=>i.name===xu(e))??n.fail(Vu,`No enum constant java.math.RoundingMode.${xu(e)}`),"MathContext.UNLIMITED":n=>ga(n,"UNLIMITED"),"MathContext.DECIMAL32":n=>ga(n,"DECIMAL32"),"MathContext.DECIMAL64":n=>ga(n,"DECIMAL64"),"MathContext.DECIMAL128":n=>ga(n,"DECIMAL128"),"MathContext.<init>(int)":(n,[e])=>gu(n,e,be(n,"HALF_UP")),"MathContext.<init>(int,RoundingMode)":(n,[e,t])=>gu(n,e,t)};var js=/%(\\d+\\$|<)?([-#+ 0,(]*)?(\\d+)?(\\.\\d+)?([tT])?([a-zA-Z%])/y;function Re(n,e,t){return n.fail(`java.util.${e}`,t)}function Ms(n){return n instanceof h.JString?"java.lang.String":n instanceof h.JBox?hn[n.kind]:Ze(n)}function Be(n,e,t){return e===void 0||n.length>=e?n:t?n+" ".repeat(e-n.length):" ".repeat(e-n.length)+n}function Tu(n){return n.replace(/\\B(?=(\\d{3})+(?!\\d))/g,",")}function Bs(n){if(typeof n!="number")return n;if(n===0)return{digits:"0",point:1};let[e,t]=Math.abs(n).toExponential().split("e");return{digits:e.replace(".","").replace(/0+$/,"")||"0",point:Number(t)+1}}function id(n,e){if(n===0n)return{digits:"0",point:1};let t=(n<0n?-n:n).toString();return{digits:t.replace(/0+$/,""),point:t.length-e}}function Ds(n,e,t){let i=e+t;if(i<0)return{digits:"0",point:1};if(n.length<=i)return{digits:n,point:e};let a=n.slice(0,i).split("").map(Number);if(Number(n[i])>=5){let r=a.length-1;for(;r>=0;r--)if(a[r]===9)a[r]=0;else{a[r]++;break}r<0&&(a.unshift(1),e++)}return{digits:a.join("")||"0",point:e}}function en(n,e){let t=Bs(n),{digits:i,point:a}=Ds(t.digits,t.point,e),r=a<=0?"0".repeat(1-a)+i:i.padEnd(a,"0"),s=Math.max(a,1),l=r.slice(0,s).replace(/^0+(?=\\d)/,"")||"0",o=r.slice(s).padEnd(e,"0").slice(0,e);return e?`${l}.${o}`:l}function ks(n,e,t){let{digits:i,point:a}=Bs(n),r=Ds(i,1,e),s=a-1+(r.point-1),l=r.digits.padEnd(e+1,"0"),o=e?`${l[0]}.${l.slice(1,e+1)}`:l[0],u=`${s<0?"-":"+"}${String(Math.abs(s)).padStart(2,"0")}`;return`${o}${t?"E":"e"}${u}`}function wu(n,e,t){let i=e===0?1:e;if(n===0||typeof n!="number"&&n.digits==="0")return en(0,i-1);let{digits:a,point:r}=Bs(n),l=Ds(a,r,i-r).point-1;return l>=-4&&l<i?en(n,Math.max(i-(l+1),0)):ks(n,i-1,t)}function Ot(n,e,t){for(let i of e.flags)t.includes(i)||Re(n,"FormatFlagsConversionMismatchException",`Conversion = ${e.conversion}, Flags = ${i}`);(e.flags.includes("-")||e.flags.includes("0"))&&e.width===void 0&&Re(n,"MissingFormatWidthException",e.text),e.flags.includes("-")&&e.flags.includes("0")&&Re(n,"IllegalFormatFlagsException",`Flags = \'${e.flags}\'`),e.flags.includes("+")&&e.flags.includes(" ")&&Re(n,"IllegalFormatFlagsException",`Flags = \'${e.flags}\'`)}function As(n,e){e.precision!==void 0&&Re(n,"IllegalFormatPrecisionException",String(e.precision))}function Na(n,e,t){let i=n.flags;if(i.includes(",")){let s=t.indexOf(".");t=s<0?Tu(t):Tu(t.slice(0,s))+t.slice(s)}let a="",r="";if(e?i.includes("(")?(a="(",r=")"):a="-":i.includes("+")?a="+":i.includes(" ")&&(a=" "),i.includes("0")&&n.width!==void 0){let s=n.width-a.length-r.length-t.length;s>0&&(t="0".repeat(s)+t)}return Be(a+t+r,n.width,i.includes("-"))}function Lu(n,e,t){if(t===null)return null;let i={int:32,long:64,byte:8,short:16},a=t instanceof h.JBox?i[t.kind]:void 0;return a!==void 0?{value:BigInt(t.value),bits:a}:t instanceof It?{value:t.v,bits:0}:Re(n,"IllegalFormatConversionException",`${e.conversion} != ${Ms(t)}`)}function*ad(n,e,t){let i=e.flags.includes("-"),a=e.conversion===e.conversion.toUpperCase();switch(e.conversion.toLowerCase()){case"b":{Ot(n,e,"-");let r=t===null?"false":t instanceof h.JBox&&t.kind==="boolean"?t.value?"true":"false":"true";return e.precision!==void 0&&(r=r.slice(0,e.precision)),Be(a?r.toUpperCase():r,e.width,i)}case"h":{Ot(n,e,"-");let r=t===null?"null":((yield*B(n,t))>>>0).toString(16);return e.precision!==void 0&&(r=r.slice(0,e.precision)),Be(a?r.toUpperCase():r,e.width,i)}case"s":{Ot(n,e,"-");let r=yield*V(n,t);return e.precision!==void 0&&(r=r.slice(0,e.precision)),Be(a?r.toUpperCase():r,e.width,i)}case"c":{if(Ot(n,e,"-"),As(n,e),t===null)return Be(a?"NULL":"null",e.width,i);let r;if(t instanceof h.JBox&&t.kind==="char")r=t.value;else if(t instanceof h.JBox&&(t.kind==="int"||t.kind==="byte"||t.kind==="short"))r=t.value,(r<0||r>1114111)&&Re(n,"IllegalFormatCodePointException",`Code point = 0x${(r>>>0).toString(16)}`);else return Re(n,"IllegalFormatConversionException",`c != ${Ms(t)}`);let s=String.fromCodePoint(r);return Be(a?s.toUpperCase():s,e.width,i)}case"d":{Ot(n,e,"-+ 0,("),As(n,e);let r=Lu(n,e,t);return r?Na(e,r.value<0n,(r.value<0n?-r.value:r.value).toString()):Be("null",e.width,i)}case"o":case"x":{Ot(n,e,"-#0"),As(n,e);let r=Lu(n,e,t);if(!r)return Be("null",e.width,i);let s=e.conversion.toLowerCase()==="o"?8:16,l=r.bits===0&&r.value<0n,o=(r.bits===0?l?-r.value:r.value:BigInt.asUintN(r.bits,r.value)).toString(s);return e.flags.includes("#")&&(o=(s===8?"0":"0x")+o),a&&(o=o.toUpperCase()),Na({...e,flags:e.flags.replace("#","")},l,o)}case"e":case"f":case"g":{let r=e.conversion.toLowerCase();if(Ot(n,e,r==="e"?"-#+ 0(":"-#+ 0,("),t===null)return Be("null",e.width,i);if(t instanceof hi){let d=id(t.u,t.scale),g=e.precision??6,v=r==="f"?en(d,g):r==="e"?ks(d,g,a):wu(d,g,a);return a&&(v=v.toUpperCase()),Na(e,t.u<0n,v)}if(!(t instanceof h.JBox&&(t.kind==="double"||t.kind==="float")))return Re(n,"IllegalFormatConversionException",`${e.conversion} != ${Ms(t)}`);let s=t.value;if(!Number.isFinite(s)){let d=Number.isNaN(s)?"NaN":s>0?e.flags.includes("+")?"+Infinity":"Infinity":e.flags.includes("(")?"(Infinity)":"-Infinity";return Be(a?d.toUpperCase():d,e.width,i)}let l=e.precision??6,o=Math.abs(s),u=r==="f"?en(o,l):r==="e"?ks(o,l,a):wu(o,l,a);return a&&(u=u.toUpperCase()),Na(e,s<0||Object.is(s,-0),u)}case"a":return n.limitation("hexadecimal floating point (%a) in String.format");default:return Re(n,"UnknownFormatConversionException",`Conversion = \'${e.conversion}\'`)}}function*tn(n,e,t){if(e===null)return n.fail("java.lang.NullPointerException",\'Cannot invoke "String.length()" because "s" is null\');let i=e.value,a=t?.data??[],r="",s=0,l=-1,o=0;for(n.charge(i.length);o<i.length;){let u=i.indexOf("%",o);if(u<0){r+=i.slice(o);break}r+=i.slice(o,u),js.lastIndex=u;let d=js.exec(i);if(!d){let m=i[u+1];Re(n,"UnknownFormatConversionException",`Conversion = \'${m===void 0?"%":m}\'`)}o=js.lastIndex;let g={index:d[1],flags:d[2]??"",width:d[3]?Number(d[3]):void 0,precision:d[4]?Number(d[4].slice(1)):void 0,conversion:d[6],text:d[0]};if(d[5]&&n.limitation("date and time conversions (%t) in String.format"),g.conversion==="n"){r+=`\n`;continue}if(g.conversion==="%"){Ot(n,{...g,conversion:"%"},"-"),r+=Be("%",g.width,g.flags.includes("-"));continue}let v;g.index==="<"?v=l:g.index?v=Number(g.index.slice(0,-1))-1:v=s++,(v<0||t!==null&&v>=a.length)&&Re(n,"MissingFormatArgumentException",`Format specifier \'${g.text}\'`),l=v,r+=yield*ad(n,g,t===null?null:a[v]),n.checkString(r.length)}return r}var H="java.lang.NullPointerException",qs="java.lang.IllegalStateException",rd="java.lang.IllegalArgumentException",sd="java.util.NoSuchElementException",_u=n=>n,mi=()=>null;function Ws(n){return{size:n.length,*push(e,t){t.begin(n.length);for(let i of n){if(t.cancelled())break;e.charge(1),yield*t.accept(i)}yield*t.end()}}}function Ks(n){return{size:null,*push(e,t){for(t.begin(-1);!t.cancelled();){e.charge(1);let i=yield*n(e);if(!i)break;yield*t.accept(i.value)}yield*t.end()}}}var ld={ref:"java.util.stream.ReferencePipeline",int:"java.util.stream.IntPipeline",long:"java.util.stream.LongPipeline",double:"java.util.stream.DoublePipeline"},Z=class n extends b{className;kind;#e;#t;pipeline;#n=!1;constructor(e,t,i,a=[],r=!0,s={parallel:!1,peeked:!1}){super(e),this.kind=t,this.#e=i,this.#t=a,this.pipeline=s,this.className=`${ld[t]}${r?"$Head":"$StatelessOp"}`}unordered(e,t){this.pipeline.parallel&&e.limitation(`${t} on a parallel stream (the JDK\'s result depends on its threads)`)}#i(e){this.#n&&e.fail(qs,"stream has already been operated upon or closed"),this.#n=!0}then(e,t,i){return this.#i(e),new n(e.hash(),t,this.#e,[...this.#t,i],!1,this.pipeline)}knownSize(){let e=this.#e().size;for(let t of this.#t)e=t.size(e);return e}*run(e,t){this.pipeline.peeked&&this.unordered(e,"peek"),this.#i(e);let i=t;for(let a=this.#t.length-1;a>=0;a--)i=this.#t[a].wrap(e,i);yield*this.#e().push(e,i)}*count(e){let t=this.knownSize();if(t!==null)return this.#i(e),t;let i=0;return yield*this.run(e,ce(function*(){i++})),i}*items(e){let t=[];return yield*this.run(e,ce(function*(i){t.push(i)})),t}};function ce(n,e=()=>!1){return{begin(){},accept:n,*end(){},cancelled:e}}function Ia(n,e=_u){return{size:e,wrap(t,i){return{begin:a=>i.begin(e(a===-1?null:a)??-1),accept:a=>n(t,a,i),end:()=>i.end(),cancelled:()=>i.cancelled()}}}}var fi=(n,e,t)=>e==="ref"?t:n.box(e,t);function ju(n){return h.normLong(BigInt(n))}function ot(n){return BigInt(n)}function Ys(n,e,t){if(n==="long"){let r=ot(e),s=ot(t);return r<s?-1:r>s?1:0}let i=e,a=t;if(n==="double"){if(i<a)return-1;if(i>a)return 1;let r=Object.is(i,-0)?0:Number.isNaN(i)?2:1,s=Object.is(a,-0)?0:Number.isNaN(a)?2:1;return r-s}return i<a?-1:i>a?1:0}var rn=class{sum=0;compensation=0;simple=0;add(e){this.simple+=e;let t=e-this.compensation,i=this.sum+t;this.compensation=i-this.sum-t,this.sum=i}get value(){let e=this.sum-this.compensation;return Number.isNaN(e)&&!Number.isFinite(this.simple)&&!Number.isNaN(this.simple)?this.simple:e}},Au={ref:"Optional",int:"OptionalInt",long:"OptionalLong",double:"OptionalDouble"},ee=class n extends b{className;kind;present;value;constructor(e,t,i,a=null){super(e),this.kind=t,this.present=i,this.value=a,this.className=`java.util.${Au[t]}`}*javaString(e){let t=Au[this.kind];return this.present?`${t}[${yield*V(e,fi(e,this.kind,this.value))}]`:`${t}.empty`}get contentEquality(){return!0}*contentEquals(e,t){return t===this?!0:!(t instanceof n)||t.kind!==this.kind?!1:!this.present||!t.present?this.present===t.present:this.kind==="ref"?yield*T(e,this.value,t.value):Ys(this.kind,this.value,t.value)===0&&Object.is(this.value,t.value)===(this.kind!=="double"||Object.is(this.value,t.value))}*contentHash(e){return this.present?yield*B(e,fi(e,this.kind,this.value)):0}#e(e){return this.present?this.value:e.fail(sd,"No value present")}"get()"(e){return this.#e(e)}"getAsInt()"(e){return this.#e(e)}"getAsLong()"(e){return this.#e(e)}"getAsDouble()"(e){return this.#e(e)}"orElseThrow()"(e){return this.#e(e)}"orElseThrow(Supplier)"(e,t){return this.present?this.value:c((function*(){let i=yield*p(e,t,"get",[]);return i===null?e.fail(H,null):e.raise(i)})())}"isPresent()"(){return f(this.present)}"isEmpty()"(){return f(!this.present)}#t(e){return this.present?this.value:e}"orElse(T)"(e,t){return this.#t(t)}"orElse(int)"(e,t){return this.#t(t)}"orElse(long)"(e,t){return this.#t(t)}"orElse(double)"(e,t){return this.#t(t)}#n(e,t,i){return this.present?this.value:c(p(e,t,i,[]))}"orElseGet(Supplier)"(e,t){return this.#n(e,t,"get")}"orElseGet(IntSupplier)"(e,t){return this.#n(e,t,"getAsInt")}"orElseGet(LongSupplier)"(e,t){return this.#n(e,t,"getAsLong")}"orElseGet(DoubleSupplier)"(e,t){return this.#n(e,t,"getAsDouble")}#i(e,t){if(this.present)return c(p(e,t,"accept",[this.value]),()=>{})}"ifPresent(Consumer)"(e,t){return this.#i(e,t)}"ifPresent(IntConsumer)"(e,t){return this.#i(e,t)}"ifPresent(LongConsumer)"(e,t){return this.#i(e,t)}"ifPresent(DoubleConsumer)"(e,t){return this.#i(e,t)}"ifPresentOrElse(Consumer,Runnable)"(e,t,i){return this.present?this.#i(e,t):c(p(e,i,"run",[]),()=>{})}"map(Function)"(e,t){return t===null?e.fail(H,null):this.present?c(p(e,t,"apply",[this.value]),i=>new n(e.hash(),"ref",i!==null,i??null)):this}"flatMap(Function)"(e,t){return this.present?c(p(e,t,"apply",[this.value]),i=>i===null?e.fail(H,null):i):this}"filter(Predicate)"(e,t){return this.present?c(p(e,t,"test",[this.value]),i=>k(i)?this:new n(e.hash(),"ref",!1)):this}"or(Supplier)"(e,t){return this.present?this:c(p(e,t,"get",[]),i=>i===null?e.fail(H,null):i)}"stream()"(e){let t=this.present?[this.value]:[];return new Z(e.hash(),this.kind,()=>Ws(t))}},Ca={ref:n=>new ee(n.hash(),"ref",!1),int:n=>new ee(n.hash(),"int",!1),long:n=>new ee(n.hash(),"long",!1),double:n=>new ee(n.hash(),"double",!1)},Mu={int:"IntSummaryStatistics",long:"LongSummaryStatistics",double:"DoubleSummaryStatistics"},an=class extends b{className;kind;count=0;sum;min;max;#e=new rn;constructor(e,t){super(e),this.kind=t,this.className=`java.util.${Mu[t]}`,this.sum=t==="long"?0n:0,this.min=t==="int"?2147483647:t==="long"?9223372036854775807n:1/0,this.max=t==="int"?-2147483648:t==="long"?-9223372036854775808n:-1/0}add(e){if(this.count++,this.kind==="double"){let t=e;this.#e.add(t),this.min=Math.min(this.min,t),this.max=Math.max(this.max,t)}else if(this.kind==="long"){let t=ot(e);this.sum=BigInt.asIntN(64,this.sum+t),t<this.min&&(this.min=t),t>this.max&&(this.max=t)}else{let t=e;this.sum=this.sum+t,this.min=Math.min(this.min,t),this.max=Math.max(this.max,t)}}#t(){return this.kind==="double"?this.#e.value:this.sum}#n(){return this.count?Number(this.#t())/this.count:0}*javaString(){let e=this.#n(),t=(e<0||Object.is(e,-0)?"-":"")+en(Math.abs(e),6),i=a=>this.kind==="double"?en(Math.abs(a),6).replace(/^/,a<0?"-":""):String(a);return`${Mu[this.kind]}{count=${this.count}, sum=${i(this.#t())}, min=${i(this.min)}, average=${t}, max=${i(this.max)}}`}"getCount()"(){return ju(this.count)}"getSum()"(){let e=this.#t();return typeof e=="bigint"?h.normLong(e):this.kind==="int"?ju(e):e}"getMin()"(){return typeof this.min=="bigint"?h.normLong(this.min):this.min}"getMax()"(){return typeof this.max=="bigint"?h.normLong(this.max):this.max}"getAverage()"(){return this.#n()}"accept(int)"(e,t){this.add(t)}"accept(long)"(e,t){this.add(t)}"accept(double)"(e,t){this.add(t)}},ae=class extends b{className="java.util.stream.Collectors$CollectorImpl";supply;add;finish;constructor(e,t,i,a=null){super(e),this.supply=t,this.add=i,this.finish=a}*collect(e,t){let i=yield*this.supply(e);for(let a of t)yield*this.add(e,i,a);return this.finish?yield*this.finish(e,i):i}},gi=class extends b{className="java.lang.Object";value;constructor(e,t){super(e),this.value=t}};function _e(n,e){return n===null?e.fail(H,null):n}var ku=n=>Ji["ArrayList.<init>()"](n,[]),Ku=n=>Sn["HashSet.<init>()"](n,[]),zu=n=>Sn["HashMap.<init>()"](n,[]);function*ya(n,e,t){return yield*w(n,e,"add","add(E)",[t])}function*Zs(n,e){return yield*p(n,e,"get",[])}function Bu(n,e,t){return new le(n.hash(),"java.util.stream.Collectors$$Lambda",e,t)}function $s(n,e,t,i){return new ae(n.hash(),function*(a){return t?yield*Zs(a,t):zu(a)},function*(a,r,s){let l=yield*p(a,e,"apply",[s]);if(l===null)return a.fail(H,"element cannot be mapped to a null key");let o=yield*w(a,r,"computeIfAbsent","computeIfAbsent(K,Function)",[l,Bu(a,"apply(T)",function*(u){return yield*i.supply(u)})]);return yield*i.add(a,o,s)},i.finish?function*(a,r){let s=i.finish;return yield*w(a,r,"replaceAll","replaceAll(BiFunction)",[Bu(a,"apply(T,U)",function*(l,[,o]){return yield*s(l,o)})]),r}:null)}function Du(n,e,t){return new ae(n.hash(),function*(i){return new gi(i.hash(),[yield*t.supply(i),yield*t.supply(i)])},function*(i,a,r){let s=a.value,l=k(yield*p(i,e,"test",[r]))?1:0;return yield*t.add(i,s[l],r)},function*(i,a){let r=a.value,s=Sn["LinkedHashMap.<init>()"](i,[]);for(let[l,o]of[!1,!0].entries()){let u=t.finish?yield*t.finish(i,r[l]):r[l];yield*w(i,s,"put","put(K,V)",[i.box("boolean",o?1:0),u])}return s})}function Ke(n,e,t,i){return new ae(n.hash(),function*(a){return new gi(a.hash(),e())},function*(a,r,s){let l=r;l.value=yield*t(a,l.value,s)},function*(a,r){return i(a,r.value)})}function*Ne(n,e,t,i){return yield*p(n,e,t,[i])}function*od(n,e){return yield*V(n,e)}var zs={"Collectors.toList()":n=>new ae(n.hash(),function*(e){return ku(e)},ya),"Collectors.toUnmodifiableList()":n=>new ae(n.hash(),function*(e){return ku(e)},ya,function*(e,t){let i=t.es;return i.includes(null)?e.fail(H,null):new at(e.hash(),i.slice())}),"Collectors.toSet()":n=>new ae(n.hash(),function*(e){return Ku(e)},ya),"Collectors.toCollection(Supplier)":(n,[e])=>new ae(n.hash(),t=>Zs(t,e),ya),"Collectors.joining()":n=>Fs(n,"","",""),"Collectors.joining(String)":(n,[e])=>Fs(n,Sa(n,e),"",""),"Collectors.joining(String,String,String)":(n,[e,t,i])=>Fs(n,Sa(n,e),Sa(n,t),Sa(n,i)),"Collectors.toMap(Function,Function)":(n,[e,t])=>Ps(n,e,t,null,null),"Collectors.toMap(Function,Function,BinaryOperator)":(n,[e,t,i])=>Ps(n,e,t,i,null),"Collectors.toMap(Function,Function,BinaryOperator,Supplier)":(n,[e,t,i,a])=>Ps(n,e,t,i,a),"Collectors.groupingBy(Function)":(n,[e])=>$s(n,e,null,zs["Collectors.toList()"](n,[])),"Collectors.groupingBy(Function,Collector)":(n,[e,t])=>$s(n,e,null,_e(t,n)),"Collectors.groupingBy(Function,Supplier,Collector)":(n,[e,t,i])=>$s(n,e,t,_e(i,n)),"Collectors.partitioningBy(Predicate)":(n,[e])=>Du(n,e,zs["Collectors.toList()"](n,[])),"Collectors.partitioningBy(Predicate,Collector)":(n,[e,t])=>Du(n,e,_e(t,n)),"Collectors.counting()":n=>Ke(n,()=>0n,function*(e,t){return t+1n},(e,t)=>e.box("long",h.normLong(t))),"Collectors.summingInt(ToIntFunction)":(n,[e])=>Ke(n,()=>0,function*(t,i,a){return i+(yield*Ne(t,e,"applyAsInt",a))|0},(t,i)=>t.box("int",i)),"Collectors.summingLong(ToLongFunction)":(n,[e])=>Ke(n,()=>0n,function*(t,i,a){return BigInt.asIntN(64,i+ot(yield*Ne(t,e,"applyAsLong",a)))},(t,i)=>t.box("long",h.normLong(i))),"Collectors.summingDouble(ToDoubleFunction)":(n,[e])=>Ke(n,()=>new rn,function*(t,i,a){return i.add(yield*Ne(t,e,"applyAsDouble",a)),i},(t,i)=>t.box("double",i.value)),"Collectors.averagingInt(ToIntFunction)":(n,[e])=>$u(n,e,"applyAsInt"),"Collectors.averagingLong(ToLongFunction)":(n,[e])=>$u(n,e,"applyAsLong"),"Collectors.averagingDouble(ToDoubleFunction)":(n,[e])=>Ke(n,()=>({s:new rn,n:0}),function*(t,i,a){return i.s.add(yield*Ne(t,e,"applyAsDouble",a)),i.n++,i},(t,i)=>t.box("double",i.n?i.s.value/i.n:0)),"Collectors.summarizingInt(ToIntFunction)":(n,[e])=>Js(n,e,"int","applyAsInt"),"Collectors.summarizingLong(ToLongFunction)":(n,[e])=>Js(n,e,"long","applyAsLong"),"Collectors.summarizingDouble(ToDoubleFunction)":(n,[e])=>Js(n,e,"double","applyAsDouble"),"Collectors.mapping(Function,Collector)":(n,[e,t])=>{let i=_e(t,n);return new ae(n.hash(),i.supply,function*(a,r,s){return yield*i.add(a,r,yield*Ne(a,e,"apply",s))},i.finish)},"Collectors.filtering(Predicate,Collector)":(n,[e,t])=>{let i=_e(t,n);return new ae(n.hash(),i.supply,function*(a,r,s){k(yield*Ne(a,e,"test",s))&&(yield*i.add(a,r,s))},i.finish)},"Collectors.flatMapping(Function,Collector)":(n,[e,t])=>{let i=_e(t,n);return new ae(n.hash(),i.supply,function*(a,r,s){let l=yield*Ne(a,e,"apply",s);if(l)for(let o of yield*l.items(a))yield*i.add(a,r,fi(a,l.kind,o))},i.finish)},"Collectors.teeing(Collector,Collector,BiFunction)":(n,[e,t,i])=>{if(e===null)return n.fail(H,"downstream1");if(t===null)return n.fail(H,"downstream2");if(i===null)return n.fail(H,"merger");let a=_e(e,n),r=_e(t,n);return new ae(n.hash(),function*(s){return new gi(s.hash(),[yield*a.supply(s),yield*r.supply(s)])},function*(s,l,o){let[u,d]=l.value;yield*a.add(s,u,o),yield*r.add(s,d,o)},function*(s,l){let[o,u]=l.value,d=a.finish?yield*a.finish(s,o):o,g=r.finish?yield*r.finish(s,u):u;return(yield*p(s,i,"apply",[d,g]))??null})},"Collectors.collectingAndThen(Collector,Function)":(n,[e,t])=>{let i=_e(e,n);return new ae(n.hash(),i.supply,i.add,function*(a,r){let s=i.finish?yield*i.finish(a,r):r;return yield*Ne(a,t,"apply",s)})},"Collectors.reducing(T,BinaryOperator)":(n,[e,t])=>Ke(n,()=>e,function*(i,a,r){return yield*p(i,t,"apply",[a,r])},(i,a)=>a),"Collectors.reducing(U,Function,BinaryOperator)":(n,[e,t,i])=>Ke(n,()=>e,function*(a,r,s){return yield*p(a,i,"apply",[r,yield*Ne(a,t,"apply",s)])},(a,r)=>r),"Collectors.reducing(BinaryOperator)":(n,[e])=>Gs(n,function*(t,i,a){return yield*p(t,e,"apply",[i,a])}),"Collectors.minBy(Comparator)":(n,[e])=>Gs(n,function*(t,i,a){return(yield*p(t,e,"compare",[i,a]))<=0?i:a}),"Collectors.maxBy(Comparator)":(n,[e])=>Gs(n,function*(t,i,a){return(yield*p(t,e,"compare",[i,a]))>=0?i:a})};function Sa(n,e){return e===null?n.fail(H,null):e.value}function Fs(n,e,t,i){return Ke(n,()=>[],function*(a,r,s){let l=yield*od(a,s);return r.push(l),a.checkString(r.reduce((o,u)=>o+u.length,0)),r},(a,r)=>new h.JString(t+r.join(e)+i))}function $u(n,e,t){return Ke(n,()=>({sum:0n,n:0}),function*(i,a,r){let s=yield*Ne(i,e,t,r);return a.sum+=BigInt(s),a.n++,a},(i,a)=>i.box("double",a.n?Number(a.sum)/a.n:0))}function Js(n,e,t,i){return new ae(n.hash(),function*(a){return new an(a.hash(),t)},function*(a,r,s){r.add(yield*Ne(a,e,i,s))})}function Gs(n,e){return Ke(n,()=>({present:!1,value:null}),function*(t,i,a){return i.present?i.value=yield*e(t,i.value,a):(i.present=!0,i.value=a),i},(t,i)=>i.present&&i.value===null?t.fail(H,null):new ee(t.hash(),"ref",i.present,i.value))}function Ps(n,e,t,i,a){return new ae(n.hash(),function*(r){return a?yield*Zs(r,a):zu(r)},function*(r,s,l){let o=yield*Ne(r,e,"apply",l),u=yield*Ne(r,t,"apply",l);if(i)return yield*w(r,s,"merge","merge(K,V,BiFunction)",[o,u,i]);if(u===null)return r.fail(H,null);let d=yield*w(r,s,"putIfAbsent","putIfAbsent(K,V)",[o,u]);if(d!==null){let g=`Duplicate key ${yield*V(r,o)} (attempted merging values ${yield*V(r,d)} and ${yield*V(r,u)})`;return r.fail(qs,g)}})}var Ra={ref:{predicate:"test",unary:"apply",consumer:"accept",binary:"apply"},int:{predicate:"test",unary:"applyAsInt",consumer:"accept",binary:"applyAsInt"},long:{predicate:"test",unary:"applyAsLong",consumer:"accept",binary:"applyAsLong"},double:{predicate:"test",unary:"applyAsDouble",consumer:"accept",binary:"applyAsDouble"}};function I(n,e){return e===null?n.fail(H,null):e}function ud(n,e){return Ia(function*(t,i,a){k(yield*p(t,n,e,[i]))&&(yield*a.accept(i))},mi)}function nn(n,e,t=(i,a)=>a){return Ia(function*(i,a,r){yield*r.accept(t(i,yield*p(i,n,e,[a])))})}function cd(n){return Ia(function*(e,t,i){yield*p(e,n,"accept",[t]),yield*i.accept(t)})}function Us(n){return Ia(function*(e,t,i){yield*i.accept(n(e,t))})}function _s(n,e){return{size:mi,wrap(t,i){return{begin:()=>i.begin(-1),*accept(a){let r=yield*p(t,n,e,[a]);r&&(yield*r.run(t,{begin(){},accept:s=>i.accept(s),*end(){},cancelled:()=>i.cancelled()}))},end:()=>i.end(),cancelled:()=>i.cancelled()}}}}function Fu(n,e){return{size:_u,wrap(t,i){let a=[];return{begin:()=>{},*accept(r){t.allocate(1),a.push(r)},*end(){n==="ref"?yield*mt(Zt(t,a,e,()=>{})):a.sort((r,s)=>Ys(n,r,s)),i.begin(a.length);for(let r of a){if(i.cancelled())break;yield*i.accept(r)}yield*i.end()},cancelled:()=>!1}}}}function hd(n){return{size:mi,wrap(e,t){let i=Ku(e);return{begin:()=>t.begin(-1),*accept(a){let r=yield*w(e,i,"add","add(E)",[fi(e,n,a)]);k(r)&&(yield*t.accept(a))},end:()=>t.end(),cancelled:()=>t.cancelled()}}}}function dd(n){return{size:e=>e===null?null:Math.min(e,n),wrap(e,t){let i=0;return{begin:a=>t.begin(a===-1?-1:Math.min(a,n)),*accept(a){i<n&&(i++,yield*t.accept(a))},end:()=>t.end(),cancelled:()=>i>=n||t.cancelled()}}}}function fd(n){return{size:e=>e===null?null:Math.max(0,e-n),wrap(e,t){let i=0;return{begin:a=>t.begin(a===-1?-1:Math.max(0,a-n)),*accept(a){i<n?i++:yield*t.accept(a)},end:()=>t.end(),cancelled:()=>t.cancelled()}}}}function gd(n){return{size:mi,wrap(e,t){let i=!0;return{begin:()=>t.begin(-1),*accept(a){i&&k(yield*p(e,n,"test",[a]))?yield*t.accept(a):i=!1},end:()=>t.end(),cancelled:()=>!i||t.cancelled()}}}}function md(n){return{size:mi,wrap(e,t){let i=!0;return{begin:()=>t.begin(-1),*accept(a){i&&k(yield*p(e,n,"test",[a]))||(i=!1,yield*t.accept(a))},end:()=>t.end(),cancelled:()=>t.cancelled()}}}}function Ju(n,e){let t=Number(e);return t<0?n.fail(rd,String(t)):t}function vd(){let n=Z.prototype,e=(t,i)=>{n[t]=i};for(let[t,i,a,r,s]of[["Predicate","Function","Consumer","BinaryOperator","Supplier"],["IntPredicate","IntUnaryOperator","IntConsumer","IntBinaryOperator","IntSupplier"],["LongPredicate","LongUnaryOperator","LongConsumer","LongBinaryOperator","LongSupplier"],["DoublePredicate","DoubleUnaryOperator","DoubleConsumer","DoubleBinaryOperator","DoubleSupplier"]]){e(`filter(${t})`,function(o,u){return this.then(o,this.kind,ud(I(o,u),"test"))}),e(`takeWhile(${t})`,function(o,u){return this.then(o,this.kind,gd(I(o,u)))}),e(`dropWhile(${t})`,function(o,u){return this.then(o,this.kind,md(I(o,u)))}),e(`peek(${a})`,function(o,u){return this.pipeline.peeked=!0,this.then(o,this.kind,cd(I(o,u)))}),e(`forEach(${a})`,function(o,u){return I(o,u),this.unordered(o,"forEach"),c(this.run(o,ce(function*(d){yield*p(o,u,"accept",[d])})),()=>{})}),e(`forEachOrdered(${a})`,function(o,u){return I(o,u),c(this.run(o,ce(function*(d){yield*p(o,u,"accept",[d])})),()=>{})});for(let[o,u,d]of[["anyMatch",!1,!0],["allMatch",!0,!1],["noneMatch",!0,!0]])e(`${o}(${t})`,function(g,v){I(g,v);let m=u,x=!1;return c(this.run(g,ce(function*(te){if(x)return;k(yield*p(g,v,"test",[te]))===d&&(x=!0,m=!u)},()=>x)),()=>f(m))});i!=="Function"&&e(`map(${i})`,function(o,u){return this.then(o,this.kind,nn(I(o,u),Ra[this.kind].unary))}),e(`reduce(${r})`,function(o,u){I(o,u);let d=this.kind,g=!1,v=null;return c(this.run(o,ce(function*(m){g?v=yield*p(o,u,Ra[d].binary,[v,m]):(g=!0,v=m)})),()=>d==="ref"&&g&&v===null?o.fail(H,null):new ee(o.hash(),d,g,v))});let l={Predicate:"T",IntPredicate:"int",LongPredicate:"long",DoublePredicate:"double"}[t];e(`reduce(${l},${r})`,function(o,u,d){I(o,d);let g=this.kind,v=u;return c(this.run(o,ce(function*(m){v=yield*p(o,d,Ra[g].binary,[v,m])})),()=>v)})}e("distinct()",function(t){return this.then(t,this.kind,hd(this.kind))}),e("sorted()",function(t){return this.then(t,this.kind,Fu(this.kind,null))}),e("sorted(Comparator)",function(t,i){return this.then(t,this.kind,Fu(this.kind,i))}),e("limit(long)",function(t,i){return this.then(t,this.kind,dd(Ju(t,i)))}),e("skip(long)",function(t,i){return this.then(t,this.kind,fd(Ju(t,i)))}),e("count()",function(t){return c(this.count(t),i=>h.normLong(BigInt(i)))}),e("boxed()",function(t){let i=this.kind;return this.then(t,"ref",Us((a,r)=>fi(a,i,r)))}),e("findFirst()",function(t){return Gu(t,this)}),e("findAny()",function(t){return this.unordered(t,"findAny"),Gu(t,this)}),e("parallel()",function(){return this.pipeline.parallel=!0,this}),e("sequential()",function(){return this.pipeline.parallel=!1,this}),e("isParallel()",function(){return f(this.pipeline.parallel)}),e("toArray()",function(t){let i=this.kind;return c(this.items(t),a=>(t.allocate(a.length),i==="ref"?new h.JArray(Gt,a,t.hash(),"[Ljava.lang.Object;"):i==="int"?new h.JArray(0,Int32Array.from(a),t.hash(),"[I"):i==="double"?new h.JArray(5,Float64Array.from(a),t.hash(),"[D"):new h.JArray(4,a.slice(),t.hash(),"[J")))}),e("toArray(IntFunction)",function(t,i){I(t,i);let a=this;return c((function*(){let r=yield*a.items(t),s=yield*p(t,i,"apply",[r.length]);return s===null?t.fail(H,null):s.data.length!==r.length?t.fail(qs,`Begin size ${r.length} is not equal to fixed size ${s.data.length}`):(r.forEach((l,o)=>{l!==null&&!t.storable(l,s.descriptor)&&t.fail("java.lang.ArrayStoreException",t.className(l)),s.data[o]=l}),s)})())}),e("map(Function)",function(t,i){return this.then(t,"ref",nn(I(t,i),"apply"))}),e("mapToInt(ToIntFunction)",function(t,i){return this.then(t,"int",nn(I(t,i),"applyAsInt"))}),e("mapToLong(ToLongFunction)",function(t,i){return this.then(t,"long",nn(I(t,i),"applyAsLong"))}),e("mapToDouble(ToDoubleFunction)",function(t,i){return this.then(t,"double",nn(I(t,i),"applyAsDouble"))}),e("flatMap(Function)",function(t,i){return this.then(t,"ref",_s(I(t,i),"apply"))}),e("flatMapToInt(Function)",function(t,i){return this.then(t,"int",_s(I(t,i),"apply"))}),e("collect(Collector)",function(t,i){let a=_e(i,t),r=this;return c((function*(){let s=yield*a.supply(t);return yield*r.run(t,ce(function*(l){yield*a.add(t,s,l)})),a.finish?yield*a.finish(t,s):s})())}),e("toList()",function(t){return c(this.items(t),i=>new Hs(t.hash(),i))}),e("min(Comparator)",function(t,i){return Pu(t,this,I(t,i),-1)}),e("max(Comparator)",function(t,i){return Pu(t,this,I(t,i),1)});for(let t of["int","long","double"]){let i=t==="int"?"Int":t==="long"?"Long":"Double";e(`mapToObj(${i}Function)`,function(a,r){return this.then(a,"ref",nn(I(a,r),"apply"))}),e(`flatMap(${i}Function)`,function(a,r){return this.then(a,this.kind,_s(I(a,r),"apply"))});for(let a of["int","long","double"]){if(a===t)continue;let r=a==="int"?"Int":a==="long"?"Long":"Double";e(`mapTo${r}(${i}To${r}Function)`,function(s,l){return this.then(s,a,nn(I(s,l),`applyAs${r}`))})}}e("asLongStream()",function(t){return this.then(t,"long",Us((i,a)=>h.normLong(BigInt(a))))}),e("asDoubleStream()",function(t){return this.then(t,"double",Us((i,a)=>Number(a)))}),e("sum()",function(t){let i=this.kind;if(i==="double"){let r=new rn;return c(this.run(t,ce(function*(s){r.add(s)})),()=>r.value)}let a=i==="long"?0n:0;return c(this.run(t,ce(function*(r){a=i==="long"?BigInt.asIntN(64,a+ot(r)):a+r|0})),()=>i==="long"?h.normLong(a):a)});for(let[t,i]of[["min",-1],["max",1]])e(`${t}()`,function(a){let r=this.kind,s=!1,l=null;return c(this.run(a,ce(function*(o){(!s||r==="double"&&Number.isNaN(o)||!(r==="double"&&Number.isNaN(l))&&Ys(r,o,l)*i>0)&&(l=o),s=!0})),()=>new ee(a.hash(),r,s,l))});e("average()",function(t){let i=this.kind,a=new rn,r=0n,s=0;return c(this.run(t,ce(function*(l){s++,i==="double"?a.add(l):r+=BigInt(l)})),()=>new ee(t.hash(),"double",s>0,s?(i==="double"?a.value:Number(r))/s:null))}),e("summaryStatistics()",function(t){let i=new an(t.hash(),this.kind);return c(this.run(t,ce(function*(a){i.add(a)})),()=>i)})}function*pd(n,e){let t=!1,i=null;return yield*e.run(n,ce(function*(a){t||(t=!0,i=a)},()=>t)),e.kind==="ref"&&t&&i===null?n.fail(H,null):new ee(n.hash(),e.kind,t,i)}function Gu(n,e){return c(pd(n,e))}function Pu(n,e,t,i){let a=!1,r=null;return c(e.run(n,ce(function*(s){if(!a){a=!0,r=s;return}let l=yield*p(n,t,"compare",[r,s]);(i<0?l>0:l<0)&&(r=s)})),()=>a&&r===null?n.fail(H,null):new ee(n.hash(),"ref",a,r))}var Hs=class extends at{className="java.util.ImmutableCollections$ListN";*indexOf(e,t,i){let a=this.items;for(let r=0;r<a.length;r++){let s=i?a.length-1-r:r;if(t===null?a[s]===null:yield*T(e,t,a[s]))return s}return-1}};vd();function xa(n,e,t){let i=e>n?Number(e-n):0;return{size:i,*push(a,r){r.begin(i);for(let s=n;s<e&&!r.cancelled();s++)a.charge(1),yield*r.accept(t==="int"?Number(s):h.normLong(s));yield*r.end()}}}function Va(n,e,t,i){let a=Ra[n].unary,r=!1,s=e,l=!1;return Ks(function*(o){return l?null:(r&&(s=yield*p(o,t,a,[s])),r=!0,i&&!k(yield*p(o,i,"test",[s]))?(l=!0,null):{value:s})})}function Uu(n,e,t){let i=n.knownSize()!==null&&e.knownSize()!==null?n.knownSize()+e.knownSize():null;return{size:i,*push(a,r){r.begin(i??-1);let s={begin(){},accept:l=>r.accept(l),*end(){},cancelled:()=>r.cancelled()};yield*n.run(t,s),r.cancelled()||(yield*e.run(t,s)),yield*r.end()}}}function kn(n,e,t,i){if(e===null)return n.fail(H,null);let a=Array.from(e.data),r=t===null?0:t,s=i===null?a.length:i;return r<0||s>a.length||r>s?r>s?n.fail("java.lang.ArrayIndexOutOfBoundsException",`origin(${r}) > fence(${s})`):n.fail("java.lang.ArrayIndexOutOfBoundsException",`Array index out of range: ${r<0?r:s}`):a.slice(r,s)}function z(n,e,t){return new Z(n.hash(),e,()=>Ws(t()))}function Hu(n,e){return z(n,"int",e)}function Tt(n,e){return z(n,"ref",e)}function Ea(n){return n===null?[]:Array.from(n.data)}var bd={"Stream.of(T)":(n,[e])=>z(n,"ref",()=>[e]),"Stream.of(T[])":(n,[e])=>z(n,"ref",()=>Ea(I(n,e))),"Stream.ofNullable(T)":(n,[e])=>z(n,"ref",()=>e===null?[]:[e]),"Stream.empty()":n=>z(n,"ref",()=>[]),"Stream.iterate(T,UnaryOperator)":(n,[e,t])=>new Z(n.hash(),"ref",()=>Va("ref",e,I(n,t),null)),"Stream.iterate(T,Predicate,UnaryOperator)":(n,[e,t,i])=>new Z(n.hash(),"ref",()=>Va("ref",e,I(n,i),I(n,t))),"Stream.generate(Supplier)":(n,[e])=>new Z(n.hash(),"ref",()=>Ks(function*(t){return{value:yield*p(t,e,"get",[])}})),"Stream.concat(Stream,Stream)":(n,[e,t])=>new Z(n.hash(),"ref",()=>Uu(I(n,e),I(n,t),n)),"IntStream.range(int,int)":(n,[e,t])=>new Z(n.hash(),"int",()=>xa(BigInt(e),BigInt(t),"int")),"IntStream.rangeClosed(int,int)":(n,[e,t])=>new Z(n.hash(),"int",()=>xa(BigInt(e),BigInt(t)+1n,"int")),"IntStream.of(int[])":(n,[e])=>z(n,"int",()=>Ea(I(n,e))),"IntStream.empty()":n=>z(n,"int",()=>[]),"IntStream.iterate(int,IntUnaryOperator)":(n,[e,t])=>new Z(n.hash(),"int",()=>Va("int",e,I(n,t),null)),"IntStream.iterate(int,IntPredicate,IntUnaryOperator)":(n,[e,t,i])=>new Z(n.hash(),"int",()=>Va("int",e,I(n,i),I(n,t))),"IntStream.generate(IntSupplier)":(n,[e])=>new Z(n.hash(),"int",()=>Ks(function*(t){return{value:yield*p(t,e,"getAsInt",[])}})),"IntStream.concat(IntStream,IntStream)":(n,[e,t])=>new Z(n.hash(),"int",()=>Uu(I(n,e),I(n,t),n)),"LongStream.range(long,long)":(n,[e,t])=>new Z(n.hash(),"long",()=>xa(ot(e),ot(t),"long")),"LongStream.rangeClosed(long,long)":(n,[e,t])=>new Z(n.hash(),"long",()=>xa(ot(e),ot(t)+1n,"long")),"LongStream.of(long[])":(n,[e])=>z(n,"long",()=>Ea(I(n,e))),"LongStream.empty()":n=>z(n,"long",()=>[]),"DoubleStream.of(double[])":(n,[e])=>z(n,"double",()=>Ea(I(n,e))),"DoubleStream.empty()":n=>z(n,"double",()=>[]),"Arrays.stream(int[])":(n,[e])=>z(n,"int",()=>kn(n,e,null,null)),"Arrays.stream(int[],int,int)":(n,[e,t,i])=>z(n,"int",()=>kn(n,e,t,i)),"Arrays.stream(long[])":(n,[e])=>z(n,"long",()=>kn(n,e,null,null)),"Arrays.stream(double[])":(n,[e])=>z(n,"double",()=>kn(n,e,null,null)),"Arrays.stream(T[])":(n,[e])=>z(n,"ref",()=>kn(n,e,null,null)),"Arrays.stream(T[],int,int)":(n,[e,t,i])=>z(n,"ref",()=>kn(n,e,t,i)),"Optional.of(T)":(n,[e])=>new ee(n.hash(),"ref",!0,I(n,e)),"Optional.ofNullable(T)":(n,[e])=>new ee(n.hash(),"ref",e!==null,e??null),"Optional.empty()":n=>Ca.ref(n),"OptionalInt.of(int)":(n,[e])=>new ee(n.hash(),"int",!0,e),"OptionalInt.empty()":n=>Ca.int(n),"OptionalLong.of(long)":(n,[e])=>new ee(n.hash(),"long",!0,e),"OptionalLong.empty()":n=>Ca.long(n),"OptionalDouble.of(double)":(n,[e])=>new ee(n.hash(),"double",!0,e),"OptionalDouble.empty()":n=>Ca.double(n),"IntSummaryStatistics.<init>()":n=>new an(n.hash(),"int"),"LongSummaryStatistics.<init>()":n=>new an(n.hash(),"long"),"DoubleSummaryStatistics.<init>()":n=>new an(n.hash(),"double"),...zs},qu=bd;function Xs(n,e,t=!1){let i=e;return new Z(n.hash(),"ref",()=>{let a=i.elements(n,!0);return Ws(a.slice())},[],!0,{parallel:t,peeked:!1})}function Wu(n,e){return z(n,"int",()=>{let t=[];for(let i=0;i<e.value.length;i++)t.push(e.value.charCodeAt(i));return t})}var ze="java.lang.NullPointerException",el="java.lang.StringIndexOutOfBoundsException",Nd=3,Cd=6,R=n=>new h.JString(n),Qs=n=>n.value;function Yu(n,e){return n.allocate(e.length),new h.JArray(Nd,e.map(R),n.hash(),"[Ljava.lang.String;")}var Oa=n=>n>=0&&n<=1114111;function q(n,e,t){return e===null&&n.fail(ze,t),Qs(e)}function Zu(n,e,t,i){(t<0||t>i||i>e.length)&&n.fail(el,`Range [${t}, ${i}) out of bounds for length ${e.length}`)}var ut=n=>/[\\t\\n\\x0B\\f\\r\\x1C-\\x1F]/.test(n)||/[\\p{Zs}\\p{Zl}\\p{Zp}]/u.test(n)&&!/[\xA0  ]/.test(n),Xu=n=>n.toUpperCase().length===1?n.toUpperCase():n,Qu=n=>n.toLowerCase().length===1?n.toLowerCase():n;function ec(n,e){let t=Math.min(n.length,e.length);for(let i=0;i<t;i++){let a=n[i],r=e[i];if(a!==r&&(a=Xu(a),r=Xu(r),a!==r&&(a=Qu(a),r=Qu(r),a!==r)))return a.charCodeAt(0)-r.charCodeAt(0)}return n.length-e.length}function Ta(n){let e=n.data,t="";for(let i=0;i<e.length;i+=8192)t+=String.fromCharCode(...e.subarray(i,i+8192));return t}function tc(n,e,t,i){if(e===null)return n.fail(ze,\'Cannot read the array length because "value" is null\');let a=e.data.length;return(t<0||i<0||t>a-i)&&n.fail(el,`Range [${t}, ${t} + ${i}) out of bounds for length ${a}`),Ta(e).slice(t,t+i)}function nc(n,e,t,i){return tl(n,An(n,q(n,t,\'Cannot invoke "String.length()" because "regex" is null\')),e,i)}function tl(n,e,t,i){Vt(n,e,t);let a=[],r=0,s=!1;for(let l of Ns(e,t)){let o=l.index,u=o+l[0].length;if(i>0&&a.length>=i-1)break;o===0&&u===0||(s=!0,a.push(t.slice(r,o)),r=u)}if(!s)return Yu(n,[t]);if(a.push(t.slice(r)),i===0)for(;a.length&&a[a.length-1]==="";)a.pop();return Yu(n,a)}var sc=\'Cannot invoke "String.isEmpty()" because "this.pattern" is null\';function ic(n,e,t,i,a){let r=An(n,q(n,t,sc));a&&i===null&&n.fail(ze,"replacement"),Vt(n,r,e);let s=Ns(r,e,a?1:1/0);if(!s.length)return R(e);let l=q(n,i,\'Cannot invoke "String.length()" because "replacement" is null\'),o="",u=0;for(let d of s)o+=e.slice(u,d.index)+fa(n,r,l,d),u=d.index+d[0].length,n.checkString(o.length);return R(o+e.slice(u))}var wa={"substring(int)":(n,e,[,t])=>(Zu(n,e.value,t,e.value.length),R(e.value.slice(t))),"substring(int,int)":(n,e,[,t,i])=>(Zu(n,e.value,t,i),R(e.value.slice(t,i))),"indexOf(String)":(n,e,[,t])=>e.value.indexOf(q(n,t,\'Cannot invoke "String.coder()" because "str" is null\')),"indexOf(String,int)":(n,e,[,t,i])=>e.value.indexOf(q(n,t,\'Cannot invoke "String.length()" because "tgtStr" is null\'),Math.max(0,i)),"indexOf(int)":(n,e,[,t])=>Oa(t)?e.value.indexOf(String.fromCodePoint(t)):-1,"indexOf(int,int)":(n,e,[,t,i])=>Oa(t)?e.value.indexOf(String.fromCodePoint(t),Math.max(0,i)):-1,"lastIndexOf(String)":(n,e,[,t])=>e.value.lastIndexOf(q(n,t,\'Cannot read field "value" because "tgtStr" is null\')),"lastIndexOf(String,int)":(n,e,[,t,i])=>{let a=q(n,t,\'Cannot read field "value" because "tgtStr" is null\');return i<0?-1:e.value.lastIndexOf(a,i)},"lastIndexOf(int)":(n,e,[,t])=>Oa(t)?e.value.lastIndexOf(String.fromCodePoint(t)):-1,"lastIndexOf(int,int)":(n,e,[,t,i])=>i<0||!Oa(t)?-1:e.value.lastIndexOf(String.fromCodePoint(t),i),"contains(String)":(n,e,[,t])=>f(e.value.includes(q(n,t,\'Cannot invoke "java.lang.CharSequence.toString()" because "s" is null\'))),"startsWith(String)":(n,e,[,t])=>f(e.value.startsWith(q(n,t,\'Cannot invoke "String.length()" because "prefix" is null\'))),"startsWith(String,int)":(n,e,[,t,i])=>{let a=q(n,t,\'Cannot invoke "String.length()" because "prefix" is null\'),r=i;return f(r>=0&&r<=e.value.length-a.length&&e.value.startsWith(a,r))},"endsWith(String)":(n,e,[,t])=>f(e.value.endsWith(q(n,t,\'Cannot invoke "String.length()" because "suffix" is null\'))),"toUpperCase()":(n,e)=>R(e.value.toUpperCase()),"toLowerCase()":(n,e)=>R(e.value.toLowerCase()),"intern()":(n,e)=>n.intern(e.value),"trim()":(n,e)=>R(e.value.replace(/^[\\0- ]+|[\\0- ]+$/g,"")),"strip()":(n,e)=>{let t=0,i=e.value.length;for(;t<i&&ut(e.value[t]);)t++;for(;i>t&&ut(e.value[i-1]);)i--;return R(e.value.slice(t,i))},"stripLeading()":(n,e)=>{let t=0;for(;t<e.value.length&&ut(e.value[t]);)t++;return R(e.value.slice(t))},"stripTrailing()":(n,e)=>{let t=e.value.length;for(;t>0&&ut(e.value[t-1]);)t--;return R(e.value.slice(0,t))},"isBlank()":(n,e)=>f([...e.value].every(ut)),"stripIndent()":(n,e)=>(n.charge(e.value.length),R(Sd(e.value))),"translateEscapes()":(n,e)=>(n.charge(e.value.length),R(xd(n,e.value))),"indent(int)":(n,e,[,t])=>{let i=t;if(!e.value)return R("");let r=nl(e.value).map(s=>{if(i>0)return" ".repeat(i)+s;if(i===0)return s;let l=0;for(;l<s.length&&l<-i&&ut(s[l]);)l++;return s.slice(l)}).map(s=>s+`\n`).join("");return n.checkString(r.length),R(r)},"codePointAt(int)":(n,e,[,t])=>{let i=t;return(i<0||i>=e.value.length)&&n.fail(el,`Index ${i} out of bounds for length ${e.value.length}`),e.value.codePointAt(i)},"getBytes()":(n,e)=>{let t=new TextEncoder().encode(e.value.replace(/[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?<![\\uD800-\\uDBFF])[\\uDC00-\\uDFFF]/g,"?"));return n.allocate(t.length),new h.JArray(Cd,new Int8Array(t.buffer,t.byteOffset,t.length),n.hash(),"[B")},"transform(Function)":(n,e,[,t])=>(t===null&&n.fail(ze,\'Cannot invoke "java.util.function.Function.apply(Object)" because "f" is null\'),c(p(n,t,"apply",[e]))),"repeat(int)":(n,e,[,t])=>{let i=t;return i<0&&n.fail("java.lang.IllegalArgumentException",`count is negative: ${i}`),n.checkString(e.value.length*i),R(e.value.repeat(i))},"replace(char,char)":(n,e,[,t,i])=>R(e.value.split(String.fromCharCode(t)).join(String.fromCharCode(i))),"replace(String,String)":(n,e,[,t,i])=>{let a=q(n,t,\'Cannot invoke "java.lang.CharSequence.toString()" because "target" is null\'),r=q(n,i,\'Cannot invoke "java.lang.CharSequence.toString()" because "replacement" is null\'),s=e.value.replaceAll(a,()=>r);return n.checkString(s.length),R(s)},"equalsIgnoreCase(String)":(n,e,[,t])=>f(t!==null&&Qs(t).length===e.value.length&&ec(e.value,Qs(t))===0),"compareToIgnoreCase(String)":(n,e,[,t])=>ec(e.value,q(n,t,\'Cannot read field "value" because "s2" is null\')),"concat(String)":(n,e,[,t])=>R(e.value+q(n,t,\'Cannot invoke "String.isEmpty()" because "str" is null\')),"hashCode()":(n,e)=>Mr(e.value),"toString()":(n,e)=>e,"split(String)":(n,e,[,t])=>nc(n,e.value,t,0),"split(String,int)":(n,e,[,t,i])=>nc(n,e.value,t,i),"replaceAll(String,String)":(n,e,[,t,i])=>ic(n,e.value,t,i,!1),"replaceFirst(String,String)":(n,e,[,t,i])=>ic(n,e.value,t,i,!0),"matches(String)":(n,e,[,t])=>{let i=An(n,q(n,t,sc));return Vt(n,i,e.value),f(i.whole.test(e.value))},"compareTo(T)":(n,e,[,t])=>{let i=q(n,t,\'Cannot read field "value" because "anotherString" is null\'),a=e.value,r=Math.min(a.length,i.length);for(let s=0;s<r;s++)if(a.charCodeAt(s)!==i.charCodeAt(s))return a.charCodeAt(s)-i.charCodeAt(s);return a.length-i.length},"formatted(Object[])":(n,e,[,t])=>c(tn(n,e,t),R)};function*yd(n,e){return yield*V(n,e)}function*ac(n,e,t){let i=q(n,e,\'Cannot invoke "java.lang.CharSequence.toString()" because "delimiter" is null\'),a=[];for(let r of t)a.push(r===null?"null":yield*V(n,r));return n.charge(a.length),a.join(i)}var lc={"String.valueOf(Object)":(n,[e])=>c(yd(n,e),R),"String.valueOf(char[])":(n,[e])=>e===null?n.fail(ze,\'Cannot read the array length because "value" is null\'):R(Ta(e)),"String.valueOf(char[],int,int)":(n,[e,t,i])=>R(tc(n,e,t,i)),"String.copyValueOf(char[])":(n,[e])=>e===null?n.fail(ze,\'Cannot read the array length because "value" is null\'):R(Ta(e)),"String.valueOf(boolean)":(n,[e])=>R(e?"true":"false"),"String.valueOf(char)":(n,[e])=>R(String.fromCharCode(e)),"String.valueOf(int)":(n,[e])=>R(String(e)),"String.valueOf(long)":(n,[e])=>R(String(e)),"String.valueOf(double)":(n,[e])=>R(h.doubleToString(e)),"String.valueOf(float)":(n,[e])=>R(h.floatToString(e)),"String.format(String,Object[])":(n,[e,t])=>c(tn(n,e,t),R),"String.join(String,String[])":(n,[e,t])=>e!==null&&t===null?n.fail(ze,\'Cannot read the array length because "elements" is null\'):c(ac(n,e,t.data),R),"String.join(String,Iterable)":(n,[e,t])=>e===null||t===null?n.fail(ze,null):c(ac(n,e,t.elements(n,!0)),R),"String.<init>()":()=>R(""),"String.<init>(String)":(n,[e])=>R(q(n,e,\'Cannot read field "value" because "original" is null\')),"String.<init>(char[])":(n,[e])=>e===null?n.fail(ze,\'Cannot read the array length because "value" is null\'):R(Ta(e)),"String.<init>(char[],int,int)":(n,[e,t,i])=>R(tc(n,e,t,i)),"String.<init>(StringBuilder)":(n,[e])=>e===null?n.fail(ze,\'Cannot invoke "java.lang.AbstractStringBuilder.getValue()" because "asb" is null\'):R(e.text)};function nl(n){if(!n)return[];let e=n.split(/\\r\\n|\\r|\\n/);return e[e.length-1]===""&&e.pop(),e}function Sd(n){let e=n.split(/\\r\\n|\\r|\\n/),t=a=>[...a].every(ut),i=1/0;return e.forEach((a,r)=>{if(t(a)&&r!==e.length-1)return;let s=0;for(;s<a.length&&ut(a[s]);)s++;i=Math.min(i,s)}),e.map(a=>{if(t(a))return"";let r=a.length;for(;r>0&&ut(a[r-1]);)r--;return a.slice(i,r)}).join(`\n`)}var rc={b:"\\b",s:" ",t:" ",n:`\n`,f:"\\f",r:"\\r",\'"\':\'"\',"\'":"\'","\\\\":"\\\\"};function xd(n,e){let t="";for(let i=0;i<e.length;i++){let a=e[i];if(a!=="\\\\"){t+=a;continue}let r=e[++i]??"\\0";if(Object.hasOwn(rc,r))t+=rc[r];else{if(r===`\n`)continue;if(r==="\\r")e[i+1]===`\n`&&i++;else if(r>="0"&&r<="7"){let s=r<="3"?3:2,l="";for(;l.length<s&&i<e.length&&e[i]>="0"&&e[i]<="7";)l+=e[i++];i--,t+=String.fromCharCode(parseInt(l,8))}else{let s=r.charCodeAt(0).toString(16).toUpperCase().padStart(4,"0");n.fail("java.lang.IllegalArgumentException",`Invalid escape sequence: \\\\${r} \\\\\\\\u${s}`)}}}return t}var Ie="java.lang.NullPointerException",oc="java.lang.IllegalStateException",uc="java.lang.IndexOutOfBoundsException",Vd="java.lang.IllegalArgumentException",al=class extends b{className="java.util.regex.Pattern";text;javaFlags;compiled;constructor(e,t,i,a){super(e),this.text=t,this.javaFlags=i,this.compiled=a}*javaString(){return this.text}"matcher(String)"(e,t){return t===null?e.fail(Ie,\'Cannot invoke "java.lang.CharSequence.length()" because "text" is null\'):new rl(e.hash(),this,t.value)}"pattern()"(){return new h.JString(this.text)}"toString()"(){return new h.JString(this.text)}"flags()"(){return this.javaFlags}"split(String)"(e,t){return this["split(String,int)"](e,t,0)}"split(String,int)"(e,t,i){return t===null?e.fail(Ie,\'Cannot invoke "java.lang.CharSequence.length()" because "input" is null\'):tl(e,this.compiled,t.value,i)}};function Ed(n){let e=[],t=[],i=[];for(let a=0;a<n.length;a++){let r=n.indices?.[a];e.push(n[a]??null),t.push(r?r[0]:-1),i.push(r?r[1]:-1)}return{texts:e,starts:t,ends:i}}var La=class extends b{#e(e,t){let i=this.current(e);return(t<0||t>=i.texts.length)&&e.fail(uc,`No group ${t}`),i}#t(e,t){if(this.current(e),t===null)return e.fail(Ie,"Group name");let i=t.value,a=this.pattern.compiled.names.get(i);return a===void 0?e.fail(Vd,`No group with name <${i}>`):a}"group()"(e){return this["group(int)"](e,0)}"group(int)"(e,t){let i=this.#e(e,t).texts[t]??null;return i===null?null:new h.JString(i)}"group(String)"(e,t){return this["group(int)"](e,this.#t(e,t))}"start()"(e){return this.current(e).starts[0]}"start(int)"(e,t){return this.#e(e,t).starts[t]}"start(String)"(e,t){return this["start(int)"](e,this.#t(e,t))}"end()"(e){return this.current(e).ends[0]}"end(int)"(e,t){return this.#e(e,t).ends[t]}"end(String)"(e,t){return this["end(int)"](e,this.#t(e,t))}"groupCount()"(){return this.pattern.compiled.groups}},ja=class extends La{className="java.util.regex.Matcher$ImmutableMatchResult";pattern;#e;constructor(e,t,i){super(e),this.pattern=t,this.#e=i}current(){return this.#e}},rl=class extends La{className="java.util.regex.Matcher";pattern;text;first=-1;last=0;#e=null;#t=0;constructor(e,t,i){super(e),this.pattern=t,this.text=i}*javaString(){let e=this.first>=0?this.text.slice(this.first,this.last):"";return`java.util.regex.Matcher[pattern=${this.pattern.text} region=0,${this.text.length} lastmatch=${e}]`}current(e){return this.first<0||!this.#e?e.fail(oc,"No match found"):this.#e}#n(e){let t=this.pattern.compiled;return e==="whole"?new RegExp(`^(?:${t.source})(?![\\\\s\\\\S])`,"d"+t.flags):new RegExp(t.source,e+"d"+t.flags)}#i(e){return e?(this.#e=Ed(e),this.first=e.index,this.last=e.index+e[0].length,!0):(this.first=-1,this.#e=null,!1)}#a(e,t){Vt(e,this.pattern.compiled,this.text);let i=this.#n("g");return i.lastIndex=t,this.#i(i.exec(this.text))}"find()"(e){let t=this.last;return t===this.first&&t++,t>this.text.length?(this.#e=null,this.first=-1,f(!1)):f(this.#a(e,t))}"find(int)"(e,t){let i=t;return i<0||i>this.text.length?e.fail(uc,"Illegal start index"):(this.#r(),f(this.#a(e,i)))}"matches()"(e){return Vt(e,this.pattern.compiled,this.text),f(this.#i(this.#n("whole").exec(this.text)))}"lookingAt()"(e){Vt(e,this.pattern.compiled,this.text);let t=this.#n("y");return t.lastIndex=0,f(this.#i(t.exec(this.text)))}#r(){this.first=-1,this.last=0,this.#e=null,this.#t=0}"reset()"(){return this.#r(),this}"reset(String)"(e,t){return t===null?e.fail(Ie,\'Cannot invoke "java.lang.CharSequence.length()" because "text" is null\'):(this.text=t.value,this.#r(),this)}"pattern()"(){return this.pattern}"toMatchResult()"(e){return new ja(e.hash(),this.pattern,this.#e??{texts:[],starts:[],ends:[]})}#s(e,t){let i=this.current(e),a=Object.assign([...i.texts.map(r=>r??void 0)],{index:this.first,input:this.text});return fa(e,this.pattern.compiled,t,a)}"replaceAll(String)"(e,t){return t===null?e.fail(Ie,"replacement"):new h.JString(this.#l(e,t.value,!1))}"replaceFirst(String)"(e,t){return t===null?e.fail(Ie,"replacement"):new h.JString(this.#l(e,t.value,!0))}#l(e,t,i){this.#r();let a="",r=0;for(;this["find()"](e)===1&&(a+=this.text.slice(r,this.first)+this.#s(e,t),r=this.last,!i););return a+this.text.slice(r)}"replaceAll(Function)"(e,t){if(t===null)return e.fail(Ie,null);let i=this;return c((function*(){i.#r();let a="",r=0;for(;i["find()"](e)===1;){let s=yield*p(e,t,"apply",[i]);a+=i.text.slice(r,i.first)+i.#s(e,s===null?"null":s.value),r=i.last}return new h.JString(a+i.text.slice(r))})())}#u(e,t,i){if(t===null)return e.fail(Ie,null);if(this.first<0)return e.fail(oc,"No match available");if(i===null)return e.fail(Ie,"replacement");let a=this.#s(e,i.value);return t["append(String)"](e,new h.JString(this.text.slice(this.#t,this.first)+a)),this.#t=this.last,this}"appendReplacement(StringBuilder,String)"(e,t,i){return this.#u(e,t,i)}"appendReplacement(StringBuffer,String)"(e,t,i){return this.#u(e,t,i)}#o(e,t){return t===null?e.fail(Ie,null):t["append(String)"](e,new h.JString(this.text.slice(this.#t)))}"appendTail(StringBuilder)"(e,t){return this.#o(e,t)}"appendTail(StringBuffer)"(e,t){return this.#o(e,t)}"results()"(e){return Tt(e,()=>{let t=[];for(;this["find()"](e)===1;)t.push(new ja(e.hash(),this.pattern,this.#e));return t})}};function il(n,e,t){if(e===null)return n.fail(Ie,\'Cannot invoke "String.length()" because "this.pattern" is null\');let i=e.value;return new al(n.hash(),i,t,An(n,i,t))}var cc={"Pattern.compile(String)":(n,[e])=>il(n,e,0),"Pattern.compile(String,int)":(n,[e,t])=>il(n,e,t),"Pattern.matches(String,String)":(n,[e,t])=>il(n,e,0)["matcher(String)"](n,t)["matches()"](n),"Pattern.quote(String)":(n,[e])=>e===null?n.fail(Ie,\'Cannot invoke "String.indexOf(String)" because "s" is null\'):new h.JString(bs(e.value))};var wt="java.lang.IndexOutOfBoundsException",sl=(1n<<64n)-1n,Rd=n=>{let e=0;for(let t=n;t;t&=t-1n)e++;return e},vi=class n extends b{className="java.util.BitSet";words;sticky;constructor(e,t,i){super(e),this.words=new Array(t).fill(0n),this.sticky=i}get wordsInUse(){let e=this.words.length;for(;e>0&&this.words[e-1]===0n;)e--;return e}#e(e,t){if(this.words.length>=t)return;let i=Math.max(2*this.words.length,t);for(e.allocate(i-this.words.length);this.words.length<i;)this.words.push(0n);this.sticky=!1}#t(e,t){t<0&&e.fail(wt,`bitIndex < 0: ${t}`)}#n(e,t,i){t<0&&e.fail(wt,`fromIndex < 0: ${t}`),i<0&&e.fail(wt,`toIndex < 0: ${i}`),t>i&&e.fail(wt,`fromIndex: ${t} > toIndex: ${i}`)}#i(e){let t=e>>6;return t<this.words.length&&(this.words[t]>>BigInt(e&63)&1n)===1n}#a(e,t,i){let a=t>>6;i?(this.#e(e,a+1),this.words[a]=this.words[a]|1n<<BigInt(t&63)):a<this.words.length&&(this.words[a]=this.words[a]&~(1n<<BigInt(t&63))&sl)}#r(e,t,i,a){this.#n(e,t,i),e.charge(i-t>>>6);for(let r=t;r<i;r++)a(r)}bits(){let e=[];return this.words.forEach((t,i)=>{for(let a=0;t;a++,t>>=1n)t&1n&&e.push(i*64+a)}),e}*javaString(e){let t=this.bits();return e.charge(t.length),`{${t.join(", ")}}`}get contentEquality(){return!0}*contentEquals(e,t){if(t===this)return!0;if(!(t instanceof n))return!1;let i=this.wordsInUse;if(i!==t.wordsInUse)return!1;for(let a=0;a<i;a++)if(this.words[a]!==t.words[a])return!1;return!0}*contentHash(){let e=1234n;for(let t=this.wordsInUse;--t>=0;)e=(e^this.words[t]*BigInt(t+1))&sl;return Number(BigInt.asIntN(32,e>>32n^e))}"get(int)"(e,t){return this.#t(e,t),f(this.#i(t))}"get(int,int)"(e,t,i){this.#n(e,t,i);let a=new n(e.hash(),0,!1),r=this.#s();for(let s=t;s<Math.min(i,r);s++)this.#i(s)&&a.#a(e,s-t,!0);return a.words.length=a.wordsInUse,a}"set(int)"(e,t){this.#t(e,t),this.#a(e,t,!0)}"set(int,boolean)"(e,t,i){this.#t(e,t),this.#a(e,t,i===1)}"set(int,int)"(e,t,i){t<i&&this.#e(e,(i-1>>6)+1),this.#r(e,t,i,a=>this.#a(e,a,!0))}"set(int,int,boolean)"(e,t,i,a){return a===1?this["set(int,int)"](e,t,i):this["clear(int,int)"](e,t,i)}"clear(int)"(e,t){this.#t(e,t),this.#a(e,t,!1)}"clear(int,int)"(e,t,i){this.#r(e,t,i,a=>this.#a(e,a,!1))}"clear()"(){this.words.fill(0n)}"flip(int)"(e,t){this.#t(e,t),this.#a(e,t,!this.#i(t))}"flip(int,int)"(e,t,i){t<i&&this.#e(e,(i-1>>6)+1),this.#r(e,t,i,a=>this.#a(e,a,!this.#i(a)))}#s(){let e=this.wordsInUse;return e===0?0:64*(e-1)+this.words[e-1].toString(2).length}"length()"(){return this.#s()}"size()"(){return this.words.length*64}"isEmpty()"(){return f(this.wordsInUse===0)}"cardinality()"(){return this.words.reduce((e,t)=>e+Rd(t),0)}"nextSetBit(int)"(e,t){if(t<0)return e.fail(wt,`fromIndex < 0: ${t}`);let i=this.words.length*64;e.charge(i-t>>>6);for(let a=t;a<i;a++)if(this.#i(a))return a;return-1}"nextClearBit(int)"(e,t){if(t<0)return e.fail(wt,`fromIndex < 0: ${t}`);let i=t;for(;this.#i(i);)i++;return i}"previousSetBit(int)"(e,t){if(t<-1)return e.fail(wt,`fromIndex < -1: ${t}`);for(let i=t;i>=0;i--)if(this.#i(i))return i;return-1}"previousClearBit(int)"(e,t){if(t<-1)return e.fail(wt,`fromIndex < -1: ${t}`);for(let i=t;i>=0;i--)if(!this.#i(i))return i;return-1}#l(e,t){return t===null?e.fail("java.lang.NullPointerException",null):t}"and(BitSet)"(e,t){let i=this.#l(e,t);for(let a=0;a<this.words.length;a++)this.words[a]=this.words[a]&(i.words[a]??0n)}"or(BitSet)"(e,t){let i=this.#l(e,t);this.#e(e,i.wordsInUse);for(let a=0;a<i.wordsInUse;a++)this.words[a]=this.words[a]|i.words[a]}"xor(BitSet)"(e,t){let i=this.#l(e,t);this.#e(e,i.wordsInUse);for(let a=0;a<i.wordsInUse;a++)this.words[a]=this.words[a]^i.words[a]}"andNot(BitSet)"(e,t){let i=this.#l(e,t);for(let a=0;a<Math.min(this.words.length,i.words.length);a++)this.words[a]=this.words[a]&~i.words[a]&sl}"intersects(BitSet)"(e,t){let i=this.#l(e,t);for(let a=0;a<Math.min(this.words.length,i.words.length);a++)if(this.words[a]&i.words[a])return f(!0);return f(!1)}"clone()"(e){let t=new n(e.hash(),0,this.sticky);return t.words=(this.sticky?this.words:this.words.slice(0,this.wordsInUse)).slice(),t}"toLongArray()"(e){let t=this.words.slice(0,this.wordsInUse).map(i=>h.normLong(i));return e.allocate(t.length),new h.JArray(4,t,e.hash(),"[J")}"stream()"(e){return Hu(e,()=>this.bits())}},hc={"BitSet.<init>()":n=>new vi(n.hash(),1,!1),"BitSet.<init>(int)":(n,[e])=>e<0?n.fail("java.lang.NegativeArraySizeException",`nbits < 0: ${e}`):new vi(n.hash(),(e-1>>6)+1,!0),"BitSet.valueOf(long[])":(n,[e])=>{if(e===null)return n.fail("java.lang.NullPointerException",null);let t=Array.from(e.data,r=>BigInt.asUintN(64,BigInt(r))),i=t.length;for(;i>0&&t[i-1]===0n;)i--;let a=new vi(n.hash(),0,!1);return a.words=t.slice(0,i),a}};var jt="java.time.DateTimeException",dc="java.time.format.DateTimeParseException",fc="java.time.temporal.UnsupportedTemporalTypeException",re="java.lang.NullPointerException",Bn="java.lang.IllegalArgumentException",Id="java.lang.ArithmeticException",Dn=["JANUARY","FEBRUARY","MARCH","APRIL","MAY","JUNE","JULY","AUGUST","SEPTEMBER","OCTOBER","NOVEMBER","DECEMBER"],vl=["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"],mc=["NANOS","MICROS","MILLIS","SECONDS","MINUTES","HOURS","HALF_DAYS","DAYS","WEEKS","MONTHS","YEARS","DECADES","CENTURIES","MILLENNIA","ERAS","FOREVER"],dl=["Nanos","Micros","Millis","Seconds","Minutes","Hours","HalfDays","Days","Weeks","Months","Years","Decades","Centuries","Millennia","Eras","Forever"],Ma=-999999999,ka=999999999,Od=719528,Ba=n=>n[0]+n.slice(1).toLowerCase(),ct=n=>(n&3)===0&&(n%100!==0||n%400===0),Lt=(n,e)=>n===2?e?29:28:n===4||n===6||n===9||n===11?30:31,vc=(n,e)=>Math.floor(n/e),$n=(n,e)=>(n%e+e)%e;function Da(n,e,t){let i=365*n;return n>=0?i+=Math.trunc((n+3)/4)-Math.trunc((n+99)/100)+Math.trunc((n+399)/400):i-=Math.trunc(n/-4)-Math.trunc(n/-100)+Math.trunc(n/-400),i+=Math.trunc((367*e-362)/12),i+=t-1,e>2&&(i--,ct(n)||i--),i-Od}function Td(n){let e=n+719468,t=vc(e,146097),i=e-t*146097,a=Math.floor((i-Math.floor(i/1460)+Math.floor(i/36524)-Math.floor(i/146096))/365),r=i-(365*a+Math.floor(a/4)-Math.floor(a/100)),s=Math.floor((5*r+2)/153),l=r-Math.floor((153*s+2)/5)+1,o=s<10?s+3:s-9;return[a+t*400+(o<=2?1:0),o,l]}var fl=class extends b{className;name;ordinal;#e;constructor(e,t,i,a,r=i){super(e),this.className=t,this.name=i,this.ordinal=a,this.#e=r}*javaString(){return this.#e}naturalOrder(e,t){return t===null?e.fail(re,null):this.ordinal-t.ordinal}"name()"(){return new h.JString(this.name)}"ordinal()"(){return this.ordinal}"toString()"(){return new h.JString(this.#e)}"getValue()"(){return this.ordinal+1}"compareTo(DayOfWeek)"(e,t){return this.naturalOrder(e,t)}"compareTo(Month)"(e,t){return this.naturalOrder(e,t)}"compareTo(ChronoUnit)"(e,t){return this.naturalOrder(e,t)}"plus(long)"(e,t){let i=this.className==="java.time.DayOfWeek"?pi(e):bi(e);return i[$n(this.ordinal+Number(BigInt(t)%BigInt(i.length)),i.length)]}"minus(long)"(e,t){let i=this.className==="java.time.DayOfWeek"?pi(e):bi(e);return i[$n(this.ordinal-Number(BigInt(t)%BigInt(i.length)),i.length)]}"length(boolean)"(e,t){return Lt(this.ordinal+1,t===1)}"maxLength()"(){return Lt(this.ordinal+1,!0)}"minLength()"(){return Lt(this.ordinal+1,!1)}"between(LocalDate,LocalDate)"(e,t,i){return t===null||i===null?e.fail(re,null):t.until(e,i,this)}};function pl(n,e,t){let i=new WeakMap;return a=>{let r=i.get(a);return r||i.set(a,r=n.map((s,l)=>new fl(a.hash(),e,s,l,t?.[l]))),r}}var pi=pl(vl,"java.time.DayOfWeek"),bi=pl(Dn,"java.time.Month"),wd=pl(mc,"java.time.temporal.ChronoUnit",dl),He=class n extends b{className="java.time.LocalDate";year;month;day;constructor(e,t,i,a){super(e),this.year=t,this.month=i,this.day=a}get epochDay(){return Da(this.year,this.month,this.day)}*javaString(){return ll(this)}get contentEquality(){return!0}*contentEquals(e,t){return t instanceof n&&t.year===this.year&&t.month===this.month&&t.day===this.day}*contentHash(){return this.year&4294965248^((this.year<<11)+(this.month<<6)+this.day|0)}naturalOrder(e,t){if(t===null)return e.fail(re,null);let i=t;return this.year!==i.year?this.year-i.year:this.month!==i.month?this.month-i.month:this.day-i.day}get prolepticMonth(){return this.year*12+this.month-1}until(e,t,i){let a=()=>Math.trunc((t.prolepticMonth*32+t.day-(this.prolepticMonth*32+this.day))/32);switch(i.name){case"DAYS":return t.epochDay-this.epochDay;case"WEEKS":return Math.trunc((t.epochDay-this.epochDay)/7);case"MONTHS":return a();case"YEARS":return Math.trunc(a()/12);case"DECADES":return Math.trunc(a()/120);case"CENTURIES":return Math.trunc(a()/1200);case"MILLENNIA":return Math.trunc(a()/12e3);case"ERAS":return e.limitation("ChronoUnit.ERAS");default:return e.fail(fc,`Unsupported unit: ${dl[i.ordinal]}`)}}"getYear()"(){return this.year}"getMonthValue()"(){return this.month}"getMonth()"(e){return bi(e)[this.month-1]}"getDayOfMonth()"(){return this.day}"getDayOfYear()"(){return this.epochDay-Da(this.year,1,1)+1}"getDayOfWeek()"(e){return pi(e)[$n(this.epochDay+3,7)]}"isLeapYear()"(){return f(ct(this.year))}"lengthOfMonth()"(){return Lt(this.month,ct(this.year))}"lengthOfYear()"(){return ct(this.year)?366:365}"toEpochDay()"(){return this.epochDay}"plusDays(long)"(e,t){return t===0?this:$a(e,this.epochDay+Number(t))}"minusDays(long)"(e,t){return this["plusDays(long)"](e,-Number(t))}"plusWeeks(long)"(e,t){return this["plusDays(long)"](e,Number(t)*7)}"minusWeeks(long)"(e,t){return this["plusDays(long)"](e,-Number(t)*7)}"plusMonths(long)"(e,t){if(t===0)return this;let i=this.prolepticMonth+Number(t);return Aa(e,vc(i,12),$n(i,12)+1,this.day)}"minusMonths(long)"(e,t){return this["plusMonths(long)"](e,-Number(t))}"plusYears(long)"(e,t){return t===0?this:Aa(e,this.year+Number(t),this.month,this.day)}"minusYears(long)"(e,t){return this["plusYears(long)"](e,-Number(t))}"plus(long,ChronoUnit)"(e,t,i){if(i===null)return e.fail(re,"unit");let a=Number(t);switch(i.name){case"DAYS":return this["plusDays(long)"](e,a);case"WEEKS":return this["plusWeeks(long)"](e,a);case"MONTHS":return this["plusMonths(long)"](e,a);case"YEARS":return this["plusYears(long)"](e,a);case"DECADES":return this["plusYears(long)"](e,a*10);case"CENTURIES":return this["plusYears(long)"](e,a*100);case"MILLENNIA":return this["plusYears(long)"](e,a*1e3);default:return e.fail(fc,`Unsupported unit: ${dl[i.ordinal]}`)}}"minus(long,ChronoUnit)"(e,t,i){return this["plus(long,ChronoUnit)"](e,-Number(t),i)}"plus(Period)"(e,t){if(t===null)return e.fail(re,"amountToAdd");let i=t,a=i.years*12+i.months;return(a===0?this:this["plusMonths(long)"](e,a))["plusDays(long)"](e,i.days)}"minus(Period)"(e,t){if(t===null)return e.fail(re,"amountToSubtract");let i=t,a=i.years*12+i.months;return(a===0?this:this["plusMonths(long)"](e,-a))["plusDays(long)"](e,-i.days)}"withDayOfMonth(int)"(e,t){return t===this.day?this:gl(e,this.year,this.month,t)}"withMonth(int)"(e,t){return Ni(e,"MonthOfYear",t,1,12),Aa(e,this.year,t,this.day)}"withYear(int)"(e,t){return Ja(e,t),Aa(e,t,this.month,this.day)}"withDayOfYear(int)"(e,t){return pc(e,this.year,t)}"isBefore(LocalDate)"(e,t){return f(this.naturalOrder(e,t)<0)}"isAfter(LocalDate)"(e,t){return f(this.naturalOrder(e,t)>0)}"isEqual(LocalDate)"(e,t){return f(this.naturalOrder(e,t)===0)}"compareTo(LocalDate)"(e,t){return this.naturalOrder(e,t)}"until(LocalDate,ChronoUnit)"(e,t,i){return t===null||i===null?e.fail(re,null):this.until(e,t,i)}"until(LocalDate)"(e,t){return t===null?e.fail(re,"endDateExclusive"):bc(e,this,t)}"format(DateTimeFormatter)"(e,t){return t===null?e.fail(re,"formatter"):new h.JString(t.format(e,this))}"datesUntil(LocalDate)"(e,t){if(t===null)return e.fail(re,"endExclusive");let i=t.epochDay;if(i<this.epochDay)return e.fail(Bn,`${ll(t)} < ${ll(this)}`);let a=this.epochDay;return Tt(e,()=>{e.allocate(i-a);let r=[];for(let s=a;s<i;s++)r.push($a(e,s));return r})}};function ll(n){let e=Math.abs(n.year);return`${e<1e3?(n.year<0?"-":"")+String(e).padStart(4,"0"):n.year>9999?`+${n.year}`:String(n.year)}-${String(n.month).padStart(2,"0")}-${String(n.day).padStart(2,"0")}`}function Ni(n,e,t,i,a,r=`${i} - ${a}`){(t<i||t>a)&&n.fail(jt,`Invalid value for ${e} (valid values ${r}): ${t}`)}var Ja=(n,e)=>Ni(n,"Year",e,Ma,ka);function gl(n,e,t,i){return Ja(n,e),Ni(n,"MonthOfYear",t,1,12),Ni(n,"DayOfMonth",i,1,31,"1 - 28/31"),i>28&&i>Lt(t,ct(e))&&(i===29&&n.fail(jt,`Invalid date \'February 29\' as \'${e}\' is not a leap year`),n.fail(jt,`Invalid date \'${Dn[t-1]} ${i}\'`)),new He(n.hash(),e,t,i)}function Aa(n,e,t,i){return Ja(n,e),new He(n.hash(),e,t,Math.min(i,Lt(t,ct(e))))}function $a(n,e){if(!Number.isSafeInteger(e)||e<-365243219162||e>365241780471)return n.fail(jt,`Invalid value for EpochDay (valid values -365243219162 - 365241780471): ${e}`);let[t,i,a]=Td(e);return new He(n.hash(),t,i,a)}function pc(n,e,t){return Ja(n,e),Ni(n,"DayOfYear",t,1,366,"1 - 365/366"),t===366&&!ct(e)&&n.fail(jt,`Invalid date \'DayOfYear 366\' as \'${e}\' is not a leap year`),$a(n,Da(e,1,1)+t-1)}var ml=class n extends b{className="java.time.Period";years;months;days;constructor(e,t,i,a){super(e),this.years=t,this.months=i,this.days=a}*javaString(){return this.years===0&&this.months===0&&this.days===0?"P0D":`P${this.years?`${this.years}Y`:""}${this.months?`${this.months}M`:""}${this.days?`${this.days}D`:""}`}get contentEquality(){return!0}*contentEquals(e,t){return t instanceof n&&t.years===this.years&&t.months===this.months&&t.days===this.days}*contentHash(){let e=(t,i)=>t<<i|t>>>32-i|0;return this.years+e(this.months,8)+e(this.days,16)|0}"getYears()"(){return this.years}"getMonths()"(){return this.months}"getDays()"(){return this.days}"toTotalMonths()"(){return this.years*12+this.months}"isZero()"(){return f(this.years===0&&this.months===0&&this.days===0)}"isNegative()"(){return f(this.years<0||this.months<0||this.days<0)}"normalized()"(e){let t=this.years*12+this.months;return Oe(e,Math.trunc(t/12),t%12,this.days)}"negated()"(e){return this["multipliedBy(int)"](e,-1)}"multipliedBy(int)"(e,t){let i=t;return Oe(e,sn(e,this.years*i),sn(e,this.months*i),sn(e,this.days*i))}"plusDays(long)"(e,t){return Oe(e,this.years,this.months,sn(e,this.days+Number(t)))}"plusMonths(long)"(e,t){return Oe(e,this.years,sn(e,this.months+Number(t)),this.days)}"plusYears(long)"(e,t){return Oe(e,sn(e,this.years+Number(t)),this.months,this.days)}};function sn(n,e){return e>2147483647||e<-2147483648?n.fail(Id,"integer overflow"):e}var Oe=(n,e,t,i)=>new ml(n.hash(),e,t,i);function bc(n,e,t){let i=t.prolepticMonth-e.prolepticMonth,a=t.day-e.day;if(i>0&&a<0){i--;let r=e["plusMonths(long)"](n,i);a=t.epochDay-r.epochDay}else i<0&&a>0&&(i++,a-=Lt(t.month,ct(t.year)));return Oe(n,Math.trunc(i/12),i%12,a)}var Ld="yuMLdDE",jd="GuyDMLdQqYwWEecFaBhKkHmsSAnNVvzOXxZpg",Fa=class extends b{className="java.time.format.DateTimeFormatter";parts;strict;constructor(e,t,i){super(e),this.parts=t,this.strict=i}*javaString(e){return e.limitation("printing a DateTimeFormatter (the JDK\'s description of its fields)")}"format(LocalDate)"(e,t){return t===null?e.fail(re,"temporal"):new h.JString(this.format(e,t))}format(e,t){let i="";for(let a of this.parts){if(a.kind==="literal"){i+=a.text;continue}let r=a.count;switch(a.letter){case"y":case"u":{if(a.letter==="y"&&t.year<=0)return e.limitation("formatting a year before 1 CE with the pattern letter y");if(r===2)i+=String($n(t.year,100)).padStart(2,"0");else{let s=String(Math.abs(t.year)).padStart(r===1?1:r,"0");i+=t.year<0?`-${s}`:r>=4&&s.length>r?`+${s}`:s}break}case"M":case"L":i+=r===1?String(t.month):r===2?String(t.month).padStart(2,"0"):ol(t.month,r);break;case"d":i+=r===1?String(t.day):String(t.day).padStart(2,"0");break;case"D":{let s=t.epochDay-Da(t.year,1,1)+1;i+=String(s).padStart(r,"0");break}case"E":{let s=vl[$n(t.epochDay+3,7)];i+=r<=3?Ba(s).slice(0,3):r===4?Ba(s):s[0];break}}}return i}parse(e,t){let i=v=>e.fail(dc,v),a=v=>i(`Text \'${t}\' could not be parsed at index ${v}`),r=0,s,l,o,u=v=>{let m=v;for(;m<t.length&&t.charCodeAt(m)>=48&&t.charCodeAt(m)<=57;)m++;return m-v};for(let v=0;v<this.parts.length;v++){let m=this.parts[v];if(m.kind==="literal"){t.startsWith(m.text,r)||a(r),r+=m.text.length;continue}let x=0;for(let L=v+1;L<this.parts.length;L++){let A=this.parts[L];if(A.kind!=="field"||A.count!==2||!"MLdy".includes(A.letter))break;x+=2}let te=u(r);switch(m.letter){case"y":case"u":{let L=1,A=r;m.count!==2&&(t[r]==="+"||t[r]==="-")&&(L=t[r]==="-"?-1:1,A++);let $e=u(A)-x;if(m.count===2){te<2&&a(r),s=2e3+Number(t.slice(r,r+2)),r+=2;break}let Kn=m.count>=4?4:m.count;$e<Kn&&a(r),m.count>=4&&$e>4&&A===r&&a(r),s=L*Number(t.slice(A,A+Math.min($e,10))),r=A+Math.min($e,10);break}case"M":case"L":case"d":{if(m.count>2){let $e=m.letter==="d"?-1:Dn.findIndex((Kn,xr)=>t.startsWith(ol(xr+1,m.count),r));$e<0&&a(r),l=$e+1,r+=ol(l,m.count).length;break}let L=m.count===2?2:Math.max(1,Math.min(te-x,2));(te<L||L<1)&&a(r);let A=Number(t.slice(r,r+L));m.letter==="d"?o=A:l=A,r+=L;break}default:return e.limitation(`parsing with the pattern letter ${m.letter}`)}}if(r<t.length&&i(`Text \'${t}\' could not be parsed, unparsed text found at index ${r}`),s===void 0||l===void 0||o===void 0)return e.limitation("parsing a date without a year, a month and a day");let d=v=>e.fail(dc,`Text \'${t}\' could not be parsed: ${v}`,{className:jt,message:v});(s<Ma||s>ka)&&d(`Invalid value for Year (valid values ${Ma} - ${ka}): ${s}`),(l<1||l>12)&&d(`Invalid value for MonthOfYear (valid values 1 - 12): ${l}`),(o<1||o>31)&&d(`Invalid value for DayOfMonth (valid values 1 - 28/31): ${o}`);let g=Lt(l,ct(s));return o>g&&(this.strict?d(o===29?`Invalid date \'February 29\' as \'${s}\' is not a leap year`:`Invalid date \'${Dn[l-1]} ${o}\'`):o=g),new He(e.hash(),s,l,o)}};function ol(n,e){let t=Dn[n-1];return e===3?Ba(t).slice(0,3):e===4?Ba(t):t[0]}function Ad(n,e){let t=[],i,a=r=>{let s=t[t.length-1];s?.kind==="literal"?s.text+=r:t.push({kind:"literal",text:r})};for(let r=0;r<e.length;){let s=e[r];if(/[a-zA-Z]/.test(s)){let l=1;for(;e[r+l]===s;)l++;if(jd.includes(s)||n.fail(Bn,`Unknown pattern letter: ${s}`),!Ld.includes(s)){i??=s,r+=l;continue}let o={y:19,u:19,M:5,L:5,d:2,D:3,E:5}[s];l>o&&n.fail(Bn,`Too many pattern letters: ${s}`),s==="L"&&l<3?t.push({kind:"field",letter:"M",count:l}):t.push({kind:"field",letter:s,count:l}),r+=l}else if(s==="\'"){if(e[r+1]==="\'"){a("\'"),r+=2;continue}let l="",o=r+1;for(;;)if(o>=e.length&&n.fail(Bn,`Pattern ends with an incomplete string literal: ${e}`),e[o]==="\'"){if(e[o+1]!=="\'")break;l+="\'",o+=2}else l+=e[o++];a(l),r=o+1}else s==="{"||s==="}"||s==="#"?n.fail(Bn,`Pattern includes reserved character: \'${s}\'`):s==="["||s==="]"?n.limitation("optional sections ([ and ]) in a DateTimeFormatter pattern"):(a(s),r++)}return i&&n.limitation(`the DateTimeFormatter pattern letter ${i}`),new Fa(n.hash(),t,!1)}var gc=new WeakMap;function ul(n){let e=gc.get(n);if(!e){let t=[{kind:"field",letter:"u",count:4},{kind:"literal",text:"-"},{kind:"field",letter:"M",count:2},{kind:"literal",text:"-"},{kind:"field",letter:"d",count:2}];gc.set(n,e=new Fa(n.hash(),t,!0))}return e}var cl=(n,e,t)=>e===null?n.fail(re,t):e.value;function hl(n,e,t,i){let a={};return t.forEach((r,s)=>a[`${n}.${r}`]=l=>e(l)[s]),a[`${n}.values()`]=r=>new h.JArray(3,e(r).slice(),r.hash(),i),a[`${n}.valueOf(String)`]=(r,[s])=>s===null?r.fail(re,"Name is null"):e(r).find(o=>o.name===s.value)??r.fail(Bn,`No enum constant ${i.slice(2,-1)}.${s.value}`),a}var Nc={...hl("DayOfWeek",pi,vl,"[Ljava.time.DayOfWeek;"),...hl("Month",bi,Dn,"[Ljava.time.Month;"),...hl("ChronoUnit",wd,mc,"[Ljava.time.temporal.ChronoUnit;"),"DayOfWeek.of(int)":(n,[e])=>e<1||e>7?n.fail(jt,`Invalid value for DayOfWeek: ${e}`):pi(n)[e-1],"Month.of(int)":(n,[e])=>e<1||e>12?n.fail(jt,`Invalid value for MonthOfYear: ${e}`):bi(n)[e-1],"LocalDate.of(int,int,int)":(n,[e,t,i])=>gl(n,e,t,i),"LocalDate.of(int,Month,int)":(n,[e,t,i])=>t===null?n.fail(re,"month"):gl(n,e,t.ordinal+1,i),"LocalDate.ofEpochDay(long)":(n,[e])=>$a(n,Number(e)),"LocalDate.ofYearDay(int,int)":(n,[e,t])=>pc(n,e,t),"LocalDate.parse(String)":(n,[e])=>ul(n).parse(n,cl(n,e,"text")),"LocalDate.parse(String,DateTimeFormatter)":(n,[e,t])=>t===null?n.fail(re,"formatter"):t.parse(n,cl(n,e,"text")),"LocalDate.now()":n=>{let e=new Date;return new He(n.hash(),e.getFullYear(),e.getMonth()+1,e.getDate())},"LocalDate.MIN":n=>new He(n.hash(),Ma,1,1),"LocalDate.MAX":n=>new He(n.hash(),ka,12,31),"LocalDate.EPOCH":n=>new He(n.hash(),1970,1,1),"Period.of(int,int,int)":(n,[e,t,i])=>Oe(n,e,t,i),"Period.ofDays(int)":(n,[e])=>Oe(n,0,0,e),"Period.ofWeeks(int)":(n,[e])=>Oe(n,0,0,sn(n,e*7)),"Period.ofMonths(int)":(n,[e])=>Oe(n,0,e,0),"Period.ofYears(int)":(n,[e])=>Oe(n,e,0,0),"Period.ZERO":n=>Oe(n,0,0,0),"Period.between(LocalDate,LocalDate)":(n,[e,t])=>e===null||t===null?n.fail(re,null):bc(n,e,t),"DateTimeFormatter.ofPattern(String)":(n,[e])=>Ad(n,cl(n,e,"pattern")),"DateTimeFormatter.ISO_LOCAL_DATE":n=>ul(n),"DateTimeFormatter.ISO_DATE":n=>ul(n)};var Ga="java.lang.UnsupportedOperationException",Md="java.lang.IllegalStateException",bl="java.lang.IndexOutOfBoundsException";function*Ce(n,e,t,i){let a=n.overrideOf(e,t);return a<0?n.fail(Ga,null):yield{invoke:a,args:[e,...i]}}function*kd(n,e){yield*e.openIterator(n);let t=[];for(let i=0;i!==(yield*e.size(n));i++){let a=yield*e.get(n,i);t.push(a===e.self?"(this Collection)":yield*V(n,a))}return`[${t.join(", ")}]`}function*Bd(n,e,t){yield*e.openIterator(n);for(let i=0;i!==(yield*e.size(n));i++){let a=yield*e.get(n,i);if(t===null?a===null:yield*T(n,t,a))return!0}return!1}function*Dd(n,e,t){yield*e.openListIterator(n);for(let i=0;i!==(yield*e.size(n));i++){let a=yield*e.get(n,i);if(t===null?a===null:yield*T(n,t,a))return i}return-1}function*$d(n,e,t){for(let i=(yield*e.openAtEnd(n))-1;i>=0;i--){let a=yield*e.get(n,i);if(t===null?a===null:yield*T(n,t,a))return i}return-1}function*Fd(n,e,t){if(t===e.self)return!0;let i=t instanceof M&&t.isList?t.elements(n,!0):null;if(!i)return t instanceof h.JObject&&t.base instanceof Ua?n.limitation("comparing two AbstractList subclasses with equals"):!1;yield*e.openListIterator(n);let a=0;for(;(yield*e.size(n))!==a&&a<i.length;){let r=yield*e.get(n,a),s=i[a];if(!(r===null?s===null:yield*T(n,r,s)))return!1;a++}return!((yield*e.size(n))!==a||a<i.length)}function*Jd(n,e){yield*e.openIterator(n);let t=1;for(let i=0;i!==(yield*e.size(n));i++)t=31*t+(yield*B(n,yield*e.get(n,i)))|0;return t}var Pa=class extends b{opaque=!0;get contentEquality(){return!0}*javaString(e){return yield*kd(e,this.access)}*contentEquals(e,t){return yield*Fd(e,this.access,t)}*contentHash(e){return yield*Jd(e,this.access)}"toString()"(e){return c(this.javaString(e),t=>new h.JString(t))}"equals(Object)"(e,t){return c(this.contentEquals(e,t),f)}"hashCode()"(e){return c(this.contentHash(e))}"isEmpty()"(e){return c(this.access.size(e),t=>f(t===0))}"contains(Object)"(e,t){return c(Bd(e,this.access,t),f)}"indexOf(Object)"(e,t){return c(Dd(e,this.access,t))}"lastIndexOf(Object)"(e,t){return c($d(e,this.access,t))}"forEach(Consumer)"(e,t){if(t===null)return e.fail("java.lang.NullPointerException",null);let i=this.access;return c((function*(){yield*i.openIterator(e);for(let a=0;a!==(yield*i.size(e));a++)yield*p(e,t,"accept",[yield*i.get(e,a)])})(),()=>{})}},Ua=class extends Pa{className="java.util.AbstractList";owner=null;access;constructor(e){super(e);let t=this;this.access={get self(){return t.owner},get:(i,a)=>Ce(i,t.owner,"get(int)",[a]),size:i=>Ce(i,t.owner,"size()",[]),*openIterator(){},*openListIterator(i){yield*t.access.size(i)},*openAtEnd(i){let a=yield*t.access.size(i);return yield*t.access.size(i),a}}}"add(E)"(e,t){let i=this.owner;return c((function*(){let a=yield*Ce(e,i,"size()",[]);return yield*Ce(e,i,"add(int,E)",[a,t]),1})())}"add(int,E)"(e){return e.fail(Ga,null)}"set(int,E)"(e){return e.fail(Ga,null)}"remove(int)"(e){return e.fail(Ga,null)}"iterator()"(e){return new Cl(e.hash(),this.owner)}"subList(int,int)"(e,t,i){let a=this.owner;return c((function*(){let r=yield*Ce(e,a,"size()",[]);return t<0?e.fail(bl,`fromIndex = ${t}`):i>r?e.fail(bl,`toIndex = ${i}`):t>i?e.fail("java.lang.IllegalArgumentException",`fromIndex(${t}) > toIndex(${i})`):new Nl(e.hash(),a,t,i-t)})())}},Nl=class extends Pa{className="java.util.AbstractList$SubList";access;#e;#t;#n;constructor(e,t,i,a){super(e),this.#t=t,this.#n=i,this.#e=a;let r=this,s=function*(l){yield*Ce(l,t,"size()",[])};this.access={self:r,get:(l,o)=>Ce(l,t,"get(int)",[i+o]),*size(){return a},openIterator:s,openListIterator:s,*openAtEnd(l){return yield*s(l),a}}}"size()"(){return this.#e}"get(int)"(e,t){return t<0||t>=this.#e?e.fail(bl,`Index ${t} out of bounds for length ${this.#e}`):c(Ce(e,this.#t,"get(int)",[this.#n+t]))}"iterator()"(e){return e.limitation("an iterator over an AbstractList subclass\'s subList")}},Cl=class extends b{className="java.util.AbstractList$Itr";#e;#t=0;#n=-1;constructor(e,t){super(e),this.#e=t}"hasNext()"(e){return c(Ce(e,this.#e,"size()",[]),t=>f(this.#t!==t))}"next()"(e){let t=this.#t;return c(Ce(e,this.#e,"get(int)",[t]),i=>(this.#n=t,this.#t=t+1,i))}"remove()"(e){return this.#n<0?e.fail(Md,null):c(Ce(e,this.#e,"remove(int)",[this.#n]),()=>{this.#n<this.#t&&this.#t--,this.#n=-1})}"forEachRemaining(Consumer)"(e,t){let i=this;return c((function*(){for(;(yield*Ce(e,i.#e,"size()",[]))!==i.#t;){let a=yield*Ce(e,i.#e,"get(int)",[i.#t]);i.#n=i.#t++,yield*p(e,t,"accept",[a])}})(),()=>{})}},Cc={"AbstractList.<init>()":n=>new Ua(n.hash())};var Sc="java.util.NoSuchElementException",Ka="java.util.ConcurrentModificationException",ge="java.lang.NullPointerException",Ci="java.lang.IllegalArgumentException",Gd="java.lang.IllegalStateException",xl="java.lang.UnsupportedOperationException",za=class extends b{className="java.util.TreeMap$Entry";key;value;left=null;right=null;parent;black=!0;constructor(e,t,i,a){super(e),this.key=t,this.value=i,this.parent=a}get entryKey(){return this.key}get entryValue(){return this.value}get contentEquality(){return!0}*javaString(e){return yield*Cn(e,this)}*contentEquals(e,t){return yield*zt(e,this,t)}*contentHash(e){return yield*yn(e,this)}"getKey()"(){return this.key}"getValue()"(){return this.value}"setValue(V)"(e,t){let i=this.value;return this.value=t,i}},yl=class extends b{className="java.util.AbstractMap$SimpleImmutableEntry";entryKey;entryValue;constructor(e,t,i){super(e),this.entryKey=t,this.entryValue=i}get contentEquality(){return!0}*javaString(e){return yield*Cn(e,this)}*contentEquals(e,t){return yield*zt(e,this,t)}*contentHash(e){return yield*yn(e,this)}"getKey()"(){return this.entryKey}"getValue()"(){return this.entryValue}"setValue(V)"(e){return e.fail(xl,null)}};function yi(n,e,t){return e instanceof h.JBox&&t instanceof h.JBox&&e.kind===t.kind&&e.kind!=="double"&&e.kind!=="boolean"?e.value<t.value?-1:e.value>t.value?1:0:e instanceof h.JString&&t instanceof h.JString?Ye(e.value,t.value):ve(n,e,t)}var ye=n=>n?n.black:!0,S=n=>n?n.parent:null,Te=n=>n?n.left:null,qe=n=>n?n.right:null,D=(n,e)=>{n&&(n.black=e)};function xi(n){if(!n)return null;if(n.right){let i=n.right;for(;i.left;)i=i.left;return i}let e=n.parent,t=n;for(;e&&t===e.right;)t=e,e=e.parent;return e}function _a(n){if(!n)return null;if(n.left){let i=n.left;for(;i.right;)i=i.right;return i}let e=n.parent,t=n;for(;e&&t===e.left;)t=e,e=e.parent;return e}var Fn=class{root=null;size=0;modCount=0;comparator;order;constructor(e,t=null){this.comparator=e,this.order=t}#e=null;compare(e,t,i){return this.order?ki(this.order(t,i)):this.comparator===null&&(t instanceof h.JString||t instanceof h.JBox)?ki(yi(e,t,i)):this.comparator===null&&t===null?e.fail(ge,\'Cannot invoke "java.lang.Comparable.compareTo(Object)" because "k1" is null\'):(this.#e??=W(e,this.comparator))(t,i)}#t(e){return this.comparator===null&&(e instanceof h.JString||e instanceof h.JBox)}*find(e,t){if(this.comparator===null&&t===null)return e.fail(ge,null);let i=this.#t(t),a=this.root;for(;a;){let r=i?yi(e,t,a.key):yield*this.compare(e,t,a.key);if(r<0)a=a.left;else if(r>0)a=a.right;else return a}return null}*above(e,t,i){let a=this.#t(t),r=this.root,s=null;for(;r;){let l=a?yi(e,t,r.key):yield*this.compare(e,t,r.key);if(l<0||l===0&&i){if(l===0)return r;s=r,r=r.left}else r=r.right}return s}*below(e,t,i){let a=this.#t(t),r=this.root,s=null;for(;r;){let l=a?yi(e,t,r.key):yield*this.compare(e,t,r.key);if(l>0||l===0&&i){if(l===0)return r;s=r,r=r.right}else r=r.left}return s}first(){let e=this.root;if(e)for(;e.left;)e=e.left;return e}last(){let e=this.root;if(e)for(;e.right;)e=e.right;return e}*put(e,t,i,a=!1){let r=this.root;if(!r){yield*this.compare(e,t,t),e.allocate(1),this.root=new za(e.hash(),t,i,null),this.size=1,this.modCount++;return}if(this.comparator===null&&t===null)return e.fail(ge,null);let s=this.#t(t),l,o;do if(l=r,o=s?yi(e,t,r.key):yield*this.compare(e,t,r.key),o<0)r=r.left;else if(o>0)r=r.right;else{let d=r.value;return(!a||d===null)&&(r.value=i),d}while(r);e.allocate(1);let u=new za(e.hash(),t,i,l);o<0?l.left=u:l.right=u,this.#a(u),this.size++,this.modCount++}#n(e){if(!e)return;let t=e.right;e.right=t.left,t.left&&(t.left.parent=e),t.parent=e.parent,e.parent?e.parent.left===e?e.parent.left=t:e.parent.right=t:this.root=t,t.left=e,e.parent=t}#i(e){if(!e)return;let t=e.left;e.left=t.right,t.right&&(t.right.parent=e),t.parent=e.parent,e.parent?e.parent.right===e?e.parent.right=t:e.parent.left=t:this.root=t,t.right=e,e.parent=t}#a(e){for(e.black=!1;e&&e!==this.root&&!e.parent.black;)if(S(e)===Te(S(S(e)))){let t=qe(S(S(e)));ye(t)?(e===qe(S(e))&&(e=S(e),this.#n(e)),D(S(e),!0),D(S(S(e)),!1),this.#i(S(S(e)))):(D(S(e),!0),D(t,!0),D(S(S(e)),!1),e=S(S(e)))}else{let t=Te(S(S(e)));ye(t)?(e===Te(S(e))&&(e=S(e),this.#i(e)),D(S(e),!0),D(S(S(e)),!1),this.#n(S(S(e)))):(D(S(e),!0),D(t,!0),D(S(S(e)),!1),e=S(S(e)))}this.root.black=!0}delete(e){if(this.modCount++,this.size--,e.left&&e.right){let i=xi(e);e.key=i.key,e.value=i.value,e=i}let t=e.left??e.right;t?(t.parent=e.parent,e.parent?e===e.parent.left?e.parent.left=t:e.parent.right=t:this.root=t,e.left=e.right=e.parent=null,e.black&&this.#r(t)):e.parent?(e.black&&this.#r(e),e.parent&&(e===e.parent.left?e.parent.left=null:e===e.parent.right&&(e.parent.right=null),e.parent=null)):this.root=null}#r(e){let t=e;for(;t!==this.root&&ye(t);)if(t===Te(S(t))){let i=qe(S(t));ye(i)||(D(i,!0),D(S(t),!1),this.#n(S(t)),i=qe(S(t))),ye(Te(i))&&ye(qe(i))?(D(i,!1),t=S(t)):(ye(qe(i))&&(D(Te(i),!0),D(i,!1),this.#i(i),i=qe(S(t))),D(i,ye(S(t))),D(S(t),!0),D(qe(i),!0),this.#n(S(t)),t=this.root)}else{let i=Te(S(t));ye(i)||(D(i,!0),D(S(t),!1),this.#i(S(t)),i=Te(S(t))),ye(qe(i))&&ye(Te(i))?(D(i,!1),t=S(t)):(ye(Te(i))&&(D(qe(i),!0),D(i,!1),this.#n(i),i=Te(S(t))),D(i,ye(S(t))),D(S(t),!0),D(Te(i),!0),this.#i(S(t)),t=this.root)}D(t,!0)}clear(){this.modCount++,this.size=0,this.root=null}},ht=class n extends vt{className;tree;lo;hi;descending;ctx;constructor(e,t,i,a,r,s){super(e.hash()),this.ctx=e,this.tree=t,this.lo=i,this.hi=a,this.descending=r,this.className=s??(r?"java.util.TreeMap$DescendingSubMap":"java.util.TreeMap$AscendingSubMap")}get whole(){return!this.lo&&!this.hi}*tooLow(e,t){if(!this.lo)return!1;let i=yield*this.tree.compare(e,t,this.lo.key);return i<0||i===0&&!this.lo.inclusive}*tooHigh(e,t){if(!this.hi)return!1;let i=yield*this.tree.compare(e,t,this.hi.key);return i>0||i===0&&!this.hi.inclusive}*inRange(e,t){return!(yield*this.tooLow(e,t))&&!(yield*this.tooHigh(e,t))}*absLowest(e){let t=this.lo?yield*this.tree.above(e,this.lo.key,this.lo.inclusive):this.tree.first();return!t||(yield*this.tooHigh(e,t.key))?null:t}*absHighest(e){let t=this.hi?yield*this.tree.below(e,this.hi.key,this.hi.inclusive):this.tree.last();return!t||(yield*this.tooLow(e,t.key))?null:t}*#e(e,t,i,a){if(i){if(yield*this.tooLow(e,t))return yield*this.absLowest(e);let s=yield*this.tree.above(e,t,a);return!s||(yield*this.tooHigh(e,s.key))?null:s}if(yield*this.tooHigh(e,t))return yield*this.absHighest(e);let r=yield*this.tree.below(e,t,a);return!r||(yield*this.tooLow(e,r.key))?null:r}*firstNode(e){return this.descending?yield*this.absHighest(e):yield*this.absLowest(e)}*lastNode(e){return this.descending?yield*this.absLowest(e):yield*this.absHighest(e)}*near(e,t,i,a){return yield*this.#e(e,t,i!==this.descending,a)}*#t(e){let t=yield*this.firstNode(e),i;return this.descending?i=this.lo?yield*this.tree.below(e,this.lo.key,!this.lo.inclusive):null:i=this.hi?yield*this.tree.above(e,this.hi.key,!this.hi.inclusive):null,{first:t,fence:i}}*nodes(e){let t=[],{first:i,fence:a}=yield*this.#t(e);for(let r=i;r&&r!==a;r=this.descending?_a(r):xi(r))t.push(r);return e.charge(t.length),t}#n(e){let i=this.nodes(e).next();return i.done?i.value:e.limitation("copying a TreeMap or TreeSet view whose range the program\'s comparator decides")}*javaString(e){let t=[];for(let i of yield*this.nodes(e))t.push(`${yield*V(e,i.key,this,"(this Map)")}=${yield*V(e,i.value,this,"(this Map)")}`);return`{${t.join(", ")}}`}get size(){return this.sizeNow(this.ctx)}sizeNow(e){return this.whole?this.tree.size:this.#n(e).length}mappings(e){return this.#n(e)}*lookup(e,t){if(!this.whole&&!(yield*this.inRange(e,t)))return;let i=yield*this.tree.find(e,t);return i?i.value:void 0}iterator(e,t){return c(this.#t(e),({first:i,fence:a})=>new Sl(e.hash(),this,i,a,t))}*view(e,t,i,a){let[r,s]=this.descending?[i,t]:[t,i];if(r&&!this.whole&&!(yield*this.#i(e,r)))return e.fail(Ci,`${this.descending?"toKey":"fromKey"} out of range`);if(s&&!this.whole&&!(yield*this.#i(e,s)))return e.fail(Ci,`${this.descending?"fromKey":"toKey"} out of range`);if(r??=this.lo,s??=this.hi,r&&s){if((yield*this.tree.compare(e,r.key,s.key))>0)return e.fail(Ci,"fromKey > toKey")}else r?yield*this.tree.compare(e,r.key,r.key):s&&(yield*this.tree.compare(e,s.key,s.key));return new n(e,this.tree,r,s,a)}*#i(e,t){if(this.lo){let i=yield*this.tree.compare(e,t.key,this.lo.key);if(i<0||i===0&&!this.lo.inclusive&&t.inclusive)return!1}if(this.hi){let i=yield*this.tree.compare(e,t.key,this.hi.key);if(i>0||i===0&&!this.hi.inclusive&&t.inclusive)return!1}return!0}"size()"(e=this.ctx){return this.whole?this.tree.size:c(this.nodes(e),t=>t.length)}"isEmpty()"(e=this.ctx){return this.whole?f(this.tree.size===0):c(this.firstNode(e),t=>f(t===null))}"get(Object)"(e,t){return c(this.lookup(e,t),i=>i===void 0?null:i)}"getOrDefault(Object,V)"(e,t,i){return c(this.lookup(e,t),a=>a===void 0?i:a)}"containsKey(Object)"(e,t){return c(this.lookup(e,t),i=>f(i!==void 0))}"containsValue(Object)"(e,t){let i=this;return c((function*(){for(let a of yield*i.nodes(e))if(t===null?a.value===null:yield*T(e,t,a.value))return!0;return!1})(),f)}*#a(e,t,i,a){if(!this.whole&&!(yield*this.inRange(e,t)))return e.fail(Ci,"key out of range");let r=yield*this.tree.put(e,t,i,a);return r===void 0?null:r}"put(K,V)"(e,t,i){return c(this.#a(e,t,i,!1))}"putIfAbsent(K,V)"(e,t,i){return c(this.#a(e,t,i,!0))}*removeKey(e,t){if(!this.whole&&!(yield*this.inRange(e,t)))return null;let i=yield*this.tree.find(e,t);if(!i)return null;let a=i.value;return this.tree.delete(i),{value:a}}"remove(Object)"(e,t){return c(this.removeKey(e,t),i=>i?i.value:null)}"remove(Object,Object)"(e,t,i){let a=this;return c((function*(){if(!a.whole&&!(yield*a.inRange(e,t)))return!1;let r=yield*a.tree.find(e,t);return!r||!(i===null?r.value===null:yield*T(e,i,r.value))?!1:(a.tree.delete(r),!0)})(),f)}"replace(K,V)"(e,t,i){let a=this;return c((function*(){if(!a.whole&&!(yield*a.inRange(e,t)))return null;let r=yield*a.tree.find(e,t);if(!r)return null;let s=r.value;return r.value=i,s})())}"replace(K,V,V)"(e,t,i,a){let r=this;return c((function*(){if(!r.whole&&!(yield*r.inRange(e,t)))return!1;let s=yield*r.tree.find(e,t);return!s||!(i===null?s.value===null:yield*T(e,i,s.value))?!1:(s.value=a,!0)})(),f)}"putAll(Map)"(e,t){if(t===null)return e.fail(ge,\'Cannot invoke "java.util.Map.size()" because "map" is null\');let i=this;return c((function*(){for(let a of t.copyMappings(e).mappings)yield*i.#a(e,a.entryKey,a.entryValue,!1)})(),()=>{})}"clear()"(e){if(this.whole){this.tree.clear();return}return c(this.#r(e),()=>{})}*#r(e){let{first:t,fence:i}=yield*this.#t(e),a=i?i.key:void 0,r=t;for(;r&&(a===void 0||r.key!==a);){let s=this.descending?_a(r):xi(r);!this.descending&&r.left&&r.right&&(s=r),this.tree.delete(r),r=s}}*#s(e,t){let i=this.tree,a=i.modCount,{first:r,fence:s}=yield*this.#t(e),l=s?s.key:void 0;for(let o=r;o&&(l===void 0||o.key!==l);o=this.descending?_a(o):xi(o))yield*t(o),i.modCount!==a&&e.fail(Ka,null)}"forEach(BiConsumer)"(e,t){return t===null?e.fail(ge,null):c(this.#s(e,function*(i){yield*p(e,t,"accept",[i.key,i.value])}),()=>{})}"replaceAll(BiFunction)"(e,t){return t===null?e.fail(ge,null):c(this.#s(e,function*(i){i.value=(yield*p(e,t,"apply",[i.key,i.value]))??null}),()=>{})}*#l(e,t,i){let a=this.tree.modCount,r=(yield*p(e,t,"apply",i))??null;return this.tree.modCount!==a&&e.fail(Ka,null),r}"computeIfAbsent(K,Function)"(e,t,i){if(i===null)return e.fail(ge,null);let a=this;return c((function*(){let r=a.tree.root?yield*a.#u(e,t):null;if(r&&r.value!==null)return r.value;let s=yield*a.#l(e,i,[t]);return s===null?null:(r?r.value=s:yield*a.#a(e,t,s,!1),s)})())}"computeIfPresent(K,BiFunction)"(e,t,i){if(i===null)return e.fail(ge,null);let a=this;return c((function*(){let r=yield*a.#u(e,t);if(!r||r.value===null)return null;let s=yield*a.#l(e,i,[t,r.value]);return s===null?a.tree.delete(r):r.value=s,s})())}"compute(K,BiFunction)"(e,t,i){if(i===null)return e.fail(ge,null);let a=this;return c((function*(){let r=a.tree.root?yield*a.#u(e,t):null,s=yield*a.#l(e,i,[t,r?r.value:null]);return r?s===null?a.tree.delete(r):r.value=s:s!==null&&(yield*a.#a(e,t,s,!1)),s})())}"merge(K,V,BiFunction)"(e,t,i,a){if(i===null||a===null)return e.fail(ge,null);let r=this;return c((function*(){let s=r.tree.root?yield*r.#u(e,t):null;if(!s)return yield*r.#a(e,t,i,!1),i;let l=s.value===null?i:yield*r.#l(e,a,[s.value,i]);return l===null?r.tree.delete(s):s.value=l,l})())}*#u(e,t){return!this.whole&&!(yield*this.inRange(e,t))?e.fail(Ci,"key out of range"):yield*this.tree.find(e,t)}"comparator()"(e){return this.descending?e.limitation("comparator() of a descending TreeMap or TreeSet view"):this.tree.comparator}#o(e,t){return t?t.key:e.fail(Sc,null)}#h(e,t){return t?new yl(e.hash(),t.key,t.value):null}"firstKey()"(e){return c(this.firstNode(e),t=>this.#o(e,t))}"lastKey()"(e){return c(this.lastNode(e),t=>this.#o(e,t))}"firstEntry()"(e){return c(this.firstNode(e),t=>this.#h(e,t))}"lastEntry()"(e){return c(this.lastNode(e),t=>this.#h(e,t))}#d(e,t){return c(t?this.lastNode(e):this.firstNode(e),i=>{let a=this.#h(e,i);return i&&this.tree.delete(i),a})}"pollFirstEntry()"(e){return this.#d(e,!1)}"pollLastEntry()"(e){return this.#d(e,!0)}#c(e,t,i,a){return c(this.near(e,t,i,a),r=>r?r.key:null)}#f(e,t,i,a){return c(this.near(e,t,i,a),r=>this.#h(e,r))}"ceilingKey(K)"(e,t){return this.#c(e,t,!0,!0)}"higherKey(K)"(e,t){return this.#c(e,t,!0,!1)}"floorKey(K)"(e,t){return this.#c(e,t,!1,!0)}"lowerKey(K)"(e,t){return this.#c(e,t,!1,!1)}"ceilingEntry(K)"(e,t){return this.#f(e,t,!0,!0)}"higherEntry(K)"(e,t){return this.#f(e,t,!0,!1)}"floorEntry(K)"(e,t){return this.#f(e,t,!1,!0)}"lowerEntry(K)"(e,t){return this.#f(e,t,!1,!1)}"headMap(K)"(e,t){return c(this.view(e,null,{key:t,inclusive:!1},this.descending))}"headMap(K,boolean)"(e,t,i){return c(this.view(e,null,{key:t,inclusive:i===1},this.descending))}"tailMap(K)"(e,t){return c(this.view(e,{key:t,inclusive:!0},null,this.descending))}"tailMap(K,boolean)"(e,t,i){return c(this.view(e,{key:t,inclusive:i===1},null,this.descending))}"subMap(K,K)"(e,t,i){return c(this.view(e,{key:t,inclusive:!0},{key:i,inclusive:!1},this.descending))}"subMap(K,boolean,K,boolean)"(e,t,i,a,r){return c(this.view(e,{key:t,inclusive:i===1},{key:a,inclusive:r===1},this.descending))}"descendingMap()"(e){return new n(e,this.tree,this.lo,this.hi,!this.descending)}"keySet()"(e){return new we(e,this,"java.util.TreeMap$KeySet")}"navigableKeySet()"(e){return new we(e,this,"java.util.TreeMap$KeySet")}"descendingKeySet()"(e){return new we(e,new n(e,this.tree,this.lo,this.hi,!this.descending),"java.util.TreeMap$KeySet")}"values()"(e){return new Ha(e,this,"value")}"entrySet()"(e){return new Ha(e,this,"entry")}},Sl=class extends b{className;#e;#t;#n;#i=null;#a;#r;constructor(e,t,i,a,r){super(e),this.#e=t,this.#t=i,this.#n=a?a.key:void 0,this.#a=t.tree.modCount,this.#r=r;let s=r==="key"?"Key":r==="value"?"Value":"Entry";this.className=t.whole&&!t.descending?`java.util.TreeMap$${s}Iterator`:`java.util.TreeMap$NavigableSubMap$SubMap${s}Iterator`}"hasNext()"(){return f(this.#t!==null&&(this.#n===void 0||this.#t.key!==this.#n))}"next()"(e){let t=this.#t;return!t||this.#n!==void 0&&t.key===this.#n?e.fail(Sc,null):this.#e.tree.modCount!==this.#a?e.fail(Ka,null):(this.#t=this.#e.descending?_a(t):xi(t),this.#i=t,e.charge(1),this.#r==="key"?t.key:this.#r==="value"?t.value:t)}"remove()"(e){let t=this.#i;if(!t)return e.fail(Gd,null);if(this.#e.tree.modCount!==this.#a)return e.fail(Ka,null);!this.#e.descending&&t.left&&t.right&&(this.#t=t),this.#e.tree.delete(t),this.#i=null,this.#a=this.#e.tree.modCount}},Ha=class extends M{className;map;kind;isSet;constructor(e,t,i){super(e.hash()),this.map=t,this.kind=i,this.isSet=i==="entry",this.className=i==="value"?"java.util.TreeMap$Values":t.whole?"java.util.TreeMap$EntrySet":"java.util.TreeMap$NavigableSubMap$EntrySetView"}get size(){return this.map.size}elements(e){return this.map.mappings(e).map(t=>this.kind==="value"?t.value:t)}*javaString(e){let t=[];for(let i of yield*this.map.nodes(e))t.push(yield*V(e,this.kind==="value"?i.value:i,this));return`[${t.join(", ")}]`}"size()"(e=this.map.ctx){return this.map["size()"](e)}"isEmpty()"(e=this.map.ctx){return this.map["isEmpty()"](e)}*contains(e,t){if(this.kind==="value"){for(let r of yield*this.map.nodes(e))if(t===null?r.value===null:yield*T(e,t,r.value))return!0;return!1}if(!(t instanceof b)||!("entryKey"in t))return!1;let i=t,a=yield*this.map.lookup(e,i.entryKey);return a!==void 0&&(a===null?i.entryValue===null:yield*T(e,a,i.entryValue))}get contentEquality(){return this.kind==="entry"}*contentEquals(e,t){if(t===this)return!0;if(this.kind!=="entry"||!(t instanceof M)||!t.isSet||t.size!==this.size)return!1;for(let i of t.elements(e,!1))if(!(yield*this.contains(e,i)))return!1;return!0}*contentHash(e){if(this.kind!=="entry")return this.hash;let t=0;for(let i of this.elements(e))t=t+(yield*B(e,i))|0;return t}"iterator()"(e){return this.map.iterator(e,this.kind)}"add(E)"(e){return e.fail(xl,null)}"remove(Object)"(e,t){let i=this.map,a=this.kind;return c((function*(){for(let r of yield*i.nodes(e))if(a==="value"?t===null?r.value===null:yield*T(e,t,r.value):yield*zt(e,r,t))return i.tree.delete(r),!0;return!1})(),f)}"clear()"(e){return this.map["clear()"](e)}},we=class n extends M{className;isSet=!0;map;constructor(e,t,i="java.util.TreeSet"){super(e.hash()),this.map=t,this.className=i}get size(){return this.map.size}elements(e){return this.map.mappings(e).map(t=>t.key)}*javaString(e){let t=[];for(let i of yield*this.map.nodes(e))t.push(yield*V(e,i.key,this));return`[${t.join(", ")}]`}get contentEquality(){return!0}*contentEquals(e,t){if(t===this)return!0;if(!(t instanceof M)||!t.isSet||t.size!==this.size)return!1;for(let i of t.elements(e,!1))if(!(yield*this.contains(e,i)))return!1;return!0}*contentHash(e){let t=0;for(let i of this.elements(e))t=t+(yield*B(e,i))|0;return t}*contains(e,t){return(yield*this.map.lookup(e,t))!==void 0}"size()"(e=this.map.ctx){return this.map["size()"](e)}"isEmpty()"(e=this.map.ctx){return this.map["isEmpty()"](e)}"add(E)"(e,t){if(this.className!=="java.util.TreeSet")return e.fail(xl,null);let i=this.map.tree.size;return c(Si(this.map["put(K,V)"](e,t,null)),()=>f(this.map.tree.size!==i))}"remove(Object)"(e,t){return c(this.map.removeKey(e,t),i=>f(i!==null))}"clear()"(e){return this.map["clear()"](e)}"iterator()"(e){return this.map.iterator(e,"key")}"descendingIterator()"(e){return new ht(e,this.map.tree,this.map.lo,this.map.hi,!this.map.descending).iterator(e,"key")}"comparator()"(e){return this.map["comparator()"](e)}"first()"(e){return this.map["firstKey()"](e)}"last()"(e){return this.map["lastKey()"](e)}#e(e,t,i,a){return c(this.map.near(e,t,i,a),r=>r?r.key:null)}"ceiling(E)"(e,t){return this.#e(e,t,!0,!0)}"higher(E)"(e,t){return this.#e(e,t,!0,!1)}"floor(E)"(e,t){return this.#e(e,t,!1,!0)}"lower(E)"(e,t){return this.#e(e,t,!1,!1)}#t(e,t){return c(t?this.map.lastNode(e):this.map.firstNode(e),i=>{if(!i)return null;let a=i.key;return this.map.tree.delete(i),a})}"pollFirst()"(e){return this.#t(e,!1)}"pollLast()"(e){return this.#t(e,!0)}#n(e,t,i){return c(this.map.view(e,t,i,this.map.descending),a=>new n(e,a,this.className))}"headSet(E)"(e,t){return this.#n(e,null,{key:t,inclusive:!1})}"headSet(E,boolean)"(e,t,i){return this.#n(e,null,{key:t,inclusive:i===1})}"tailSet(E)"(e,t){return this.#n(e,{key:t,inclusive:!0},null)}"tailSet(E,boolean)"(e,t,i){return this.#n(e,{key:t,inclusive:i===1},null)}"subSet(E,E)"(e,t,i){return this.#n(e,{key:t,inclusive:!0},{key:i,inclusive:!1})}"subSet(E,boolean,E,boolean)"(e,t,i,a,r){return this.#n(e,{key:t,inclusive:i===1},{key:a,inclusive:r===1})}"descendingSet()"(e){return new n(e,new ht(e,this.map.tree,this.map.lo,this.map.hi,!this.map.descending),this.className)}};function*Si(n){return n!==null&&typeof n=="object"&&Symbol.iterator in n?yield*n:n}var At=(n,e)=>new ht(n,new Fn(e),null,null,!1,"java.util.TreeMap"),yc=n=>n instanceof ht?n.tree.comparator:n instanceof we?n.map.tree.comparator:null,xc={"TreeMap.<init>()":n=>At(n,null),"TreeMap.<init>(Comparator)":(n,[e])=>At(n,e),"TreeMap.<init>(Map)":(n,[e])=>{if(e===null)return n.fail(ge,\'Cannot invoke "java.util.Map.size()" because "map" is null\');let t=At(n,null);return c(Si(t["putAll(Map)"](n,e)),()=>t)},"TreeMap.<init>(SortedMap)":(n,[e])=>{if(e===null)return n.fail(ge,\'Cannot invoke "java.util.SortedMap.comparator()" because "m" is null\');let t=At(n,yc(e));return c(Si(t["putAll(Map)"](n,e)),()=>t)},"TreeSet.<init>()":n=>new we(n,At(n,null)),"TreeSet.<init>(Comparator)":(n,[e])=>new we(n,At(n,e)),"TreeSet.<init>(Collection)":(n,[e])=>{if(e===null)return n.fail(ge,\'Cannot invoke "java.util.Collection.size()" because "c" is null\');let t=new we(n,At(n,null));return c(Si(t.addEach(n,e.copyItems(n).items)),()=>t)},"TreeSet.<init>(SortedSet)":(n,[e])=>{if(e===null)return n.fail(ge,\'Cannot invoke "java.util.SortedSet.comparator()" because "s" is null\');let t=new we(n,At(n,yc(e)));return c(Si(t.addEach(n,e.elements(n,!0))),()=>t)}};var Vl=["int size()","boolean isEmpty()","boolean contains(Object)","boolean add(E)","boolean remove(Object)","boolean addAll(Collection<? extends E>)","boolean containsAll(Collection<?>)","void clear()","Iterator<E> iterator()","boolean equals(Object)","int hashCode()","Object[] toArray()","<T> T[] toArray(T[])","<T> T[] toArray(IntFunction<T[]>)","boolean removeIf(Predicate<? super E>)","Stream<E> parallelStream()","boolean removeAll(Collection<?>)","boolean retainAll(Collection<?>)","void forEach(Consumer<? super E>)"],Vc=["boolean offer(E)","E poll()","E peek()","E element()","E remove()"],Pd=[{decl:"class Class<T>",pkg:"java.lang",members:["String getName()","String getSimpleName()","boolean isInterface()","boolean isArray()"],unsupported:"forName getTypeName getCanonicalName getPackageName getSuperclass getInterfaces getModifiers getMethods getMethod getDeclaredMethods getDeclaredMethod getFields getField getDeclaredFields getDeclaredField getConstructors getConstructor getDeclaredConstructors getDeclaredConstructor isInstance isAssignableFrom isPrimitive isEnum isRecord getEnumConstants cast newInstance getComponentType getClassLoader getResource getResourceAsStream arrayType componentType describeConstable descriptorString isAnnotation getAnnotations getAnnotation desiredAssertionStatus getNestHost isNestmateOf isHidden isSealed getRecordComponents getPermittedSubclasses getDeclaringClass getEnclosingClass isAnonymousClass isLocalClass isMemberClass isSynthetic"},{decl:"interface Comparable<T>",pkg:"java.lang",members:["int compareTo(T)"]},{decl:"interface Comparator<T>",pkg:"java.util",functional:"compare",members:["int compare(T, T)","boolean equals(Object)","Comparator<T> reversed()","Comparator<T> thenComparing(Comparator<? super T>)","<U extends Comparable> Comparator<T> thenComparing(Function<? super T, ? extends U>)","<U> Comparator<T> thenComparing(Function<? super T, ? extends U>, Comparator<? super U>)","Comparator<T> thenComparingInt(ToIntFunction<? super T>)","Comparator<T> thenComparingLong(ToLongFunction<? super T>)","Comparator<T> thenComparingDouble(ToDoubleFunction<? super T>)","static <T, U extends Comparable> Comparator<T> comparing(Function<? super T, ? extends U>)","static <T, U> Comparator<T> comparing(Function<? super T, ? extends U>, Comparator<? super U>)","static <T> Comparator<T> comparingInt(ToIntFunction<? super T>)","static <T> Comparator<T> comparingLong(ToLongFunction<? super T>)","static <T> Comparator<T> comparingDouble(ToDoubleFunction<? super T>)","static <T extends Comparable> Comparator<T> naturalOrder()","static <T extends Comparable> Comparator<T> reverseOrder()","static <T> Comparator<T> nullsFirst(Comparator<? super T>)","static <T> Comparator<T> nullsLast(Comparator<? super T>)"]},{decl:"interface Runnable",pkg:"java.lang",functional:"run",members:["void run()"]},{decl:"interface Function<T, R>",pkg:"java.util.function",functional:"apply",members:["R apply(T)","<V> Function<T, V> andThen(Function<? super R, ? extends V>)","<V> Function<V, R> compose(Function<? super V, ? extends T>)","static <T> Function<T, T> identity()"]},{decl:"interface BiFunction<T, U, R>",pkg:"java.util.function",functional:"apply",members:["R apply(T, U)","<V> BiFunction<T, U, V> andThen(Function<? super R, ? extends V>)"]},{decl:"interface UnaryOperator<T> extends Function<T, T>",pkg:"java.util.function",functional:"apply",members:["static <T> UnaryOperator<T> identity()"]},{decl:"interface BinaryOperator<T> extends BiFunction<T, T, T>",pkg:"java.util.function",functional:"apply",members:["static <T> BinaryOperator<T> minBy(Comparator<? super T>)","static <T> BinaryOperator<T> maxBy(Comparator<? super T>)"]},{decl:"interface Supplier<T>",pkg:"java.util.function",functional:"get",members:["T get()"]},{decl:"interface Consumer<T>",pkg:"java.util.function",functional:"accept",members:["void accept(T)","Consumer<T> andThen(Consumer<? super T>)"]},{decl:"interface BiConsumer<T, U>",pkg:"java.util.function",functional:"accept",members:["void accept(T, U)"],unsupported:"andThen"},{decl:"interface Predicate<T>",pkg:"java.util.function",functional:"test",members:["boolean test(T)","Predicate<T> and(Predicate<? super T>)","Predicate<T> or(Predicate<? super T>)","Predicate<T> negate()","static <T> Predicate<T> not(Predicate<? super T>)","static <T> Predicate<T> isEqual(Object)"]},{decl:"interface BiPredicate<T, U>",pkg:"java.util.function",functional:"test",members:["boolean test(T, U)"],unsupported:"and or negate"},{decl:"interface IntBinaryOperator",pkg:"java.util.function",functional:"applyAsInt",members:["int applyAsInt(int, int)"]},{decl:"interface IntUnaryOperator",pkg:"java.util.function",functional:"applyAsInt",members:["int applyAsInt(int)"],unsupported:"andThen compose identity"},{decl:"interface IntPredicate",pkg:"java.util.function",functional:"test",members:["boolean test(int)"],unsupported:"and or negate"},{decl:"interface IntFunction<R>",pkg:"java.util.function",functional:"apply",members:["R apply(int)"]},{decl:"interface IntConsumer",pkg:"java.util.function",functional:"accept",members:["void accept(int)"],unsupported:"andThen"},{decl:"interface IntSupplier",pkg:"java.util.function",functional:"getAsInt",members:["int getAsInt()"]},{decl:"interface ToIntFunction<T>",pkg:"java.util.function",functional:"applyAsInt",members:["int applyAsInt(T)"]},{decl:"interface ToLongFunction<T>",pkg:"java.util.function",functional:"applyAsLong",members:["long applyAsLong(T)"]},{decl:"interface ToDoubleFunction<T>",pkg:"java.util.function",functional:"applyAsDouble",members:["double applyAsDouble(T)"]},{decl:"interface ToIntBiFunction<T, U>",pkg:"java.util.function",functional:"applyAsInt",members:["int applyAsInt(T, U)"]},{decl:"interface LongBinaryOperator",pkg:"java.util.function",functional:"applyAsLong",members:["long applyAsLong(long, long)"]},{decl:"interface LongUnaryOperator",pkg:"java.util.function",functional:"applyAsLong",members:["long applyAsLong(long)"],unsupported:"andThen compose identity"},{decl:"interface DoubleBinaryOperator",pkg:"java.util.function",functional:"applyAsDouble",members:["double applyAsDouble(double, double)"]},{decl:"interface DoubleUnaryOperator",pkg:"java.util.function",functional:"applyAsDouble",members:["double applyAsDouble(double)"],unsupported:"andThen compose identity"},{decl:"interface BooleanSupplier",pkg:"java.util.function",functional:"getAsBoolean",members:["boolean getAsBoolean()"]},{decl:"interface ObjIntConsumer<T>",pkg:"java.util.function",functional:"accept",members:["void accept(T, int)"]},{decl:"interface Stream<T>",pkg:"java.util.stream",members:["Stream<T> parallel()","Stream<T> sequential()","boolean isParallel()","Stream<T> filter(Predicate<? super T>)","<R> Stream<R> map(Function<? super T, ? extends R>)","IntStream mapToInt(ToIntFunction<? super T>)","LongStream mapToLong(ToLongFunction<? super T>)","DoubleStream mapToDouble(ToDoubleFunction<? super T>)","<R> Stream<R> flatMap(Function<? super T, ? extends Stream<? extends R>>)","IntStream flatMapToInt(Function<? super T, ? extends IntStream>)","Stream<T> distinct()","Stream<T> sorted()","Stream<T> sorted(Comparator<? super T>)","Stream<T> peek(Consumer<? super T>)","Stream<T> limit(long)","Stream<T> skip(long)","Stream<T> takeWhile(Predicate<? super T>)","Stream<T> dropWhile(Predicate<? super T>)","void forEach(Consumer<? super T>)","void forEachOrdered(Consumer<? super T>)","Object[] toArray()","<A> A[] toArray(IntFunction<A[]>)","T reduce(T, BinaryOperator<T>)","Optional<T> reduce(BinaryOperator<T>)","<R, A> R collect(Collector<? super T, A, R>)","!<R> R collect(Supplier<R>, BiConsumer<R, ? super T>, BiConsumer<R, R>)","!<U> U reduce(U, BiFunction<U, ? super T, U>, BinaryOperator<U>)","List<T> toList()","Optional<T> min(Comparator<? super T>)","Optional<T> max(Comparator<? super T>)","long count()","boolean anyMatch(Predicate<? super T>)","boolean allMatch(Predicate<? super T>)","boolean noneMatch(Predicate<? super T>)","Optional<T> findFirst()","Optional<T> findAny()","static <T> Stream<T> of(T)","static <T> Stream<T> of(T...)","static <T> Stream<T> ofNullable(T)","static <T> Stream<T> empty()","static <T> Stream<T> iterate(T, UnaryOperator<T>)","static <T> Stream<T> iterate(T, Predicate<? super T>, UnaryOperator<T>)","static <T> Stream<T> generate(Supplier<? extends T>)","static <T> Stream<T> concat(Stream<? extends T>, Stream<? extends T>)"],unsupported:"unordered onClose close iterator spliterator mapMulti collect flatMapToLong flatMapToDouble"},{decl:"interface IntStream",pkg:"java.util.stream",members:["IntStream parallel()","IntStream sequential()","boolean isParallel()","IntStream filter(IntPredicate)","IntStream map(IntUnaryOperator)","<U> Stream<U> mapToObj(IntFunction<? extends U>)","LongStream mapToLong(IntToLongFunction)","DoubleStream mapToDouble(IntToDoubleFunction)","IntStream flatMap(IntFunction<? extends IntStream>)","IntStream distinct()","IntStream sorted()","IntStream peek(IntConsumer)","IntStream limit(long)","IntStream skip(long)","IntStream takeWhile(IntPredicate)","IntStream dropWhile(IntPredicate)","void forEach(IntConsumer)","void forEachOrdered(IntConsumer)","int[] toArray()","int reduce(int, IntBinaryOperator)","OptionalInt reduce(IntBinaryOperator)","int sum()","OptionalInt min()","OptionalInt max()","long count()","OptionalDouble average()","IntSummaryStatistics summaryStatistics()","boolean anyMatch(IntPredicate)","boolean allMatch(IntPredicate)","boolean noneMatch(IntPredicate)","OptionalInt findFirst()","OptionalInt findAny()","Stream<Integer> boxed()","static IntStream of(int...)","static IntStream empty()","LongStream asLongStream()","DoubleStream asDoubleStream()","static IntStream range(int, int)","static IntStream rangeClosed(int, int)","static IntStream iterate(int, IntUnaryOperator)","static IntStream iterate(int, IntPredicate, IntUnaryOperator)","static IntStream generate(IntSupplier)","static IntStream concat(IntStream, IntStream)"],unsupported:"unordered onClose close iterator spliterator mapMulti collect average"},{decl:"interface LongStream",pkg:"java.util.stream",members:["LongStream parallel()","LongStream sequential()","boolean isParallel()","LongStream filter(LongPredicate)","LongStream map(LongUnaryOperator)","<U> Stream<U> mapToObj(LongFunction<? extends U>)","IntStream mapToInt(LongToIntFunction)","DoubleStream mapToDouble(LongToDoubleFunction)","LongStream flatMap(LongFunction<? extends LongStream>)","LongStream distinct()","LongStream sorted()","LongStream peek(LongConsumer)","LongStream limit(long)","LongStream skip(long)","LongStream takeWhile(LongPredicate)","LongStream dropWhile(LongPredicate)","void forEach(LongConsumer)","void forEachOrdered(LongConsumer)","long[] toArray()","long reduce(long, LongBinaryOperator)","OptionalLong reduce(LongBinaryOperator)","long sum()","OptionalLong min()","OptionalLong max()","long count()","OptionalDouble average()","LongSummaryStatistics summaryStatistics()","boolean anyMatch(LongPredicate)","boolean allMatch(LongPredicate)","boolean noneMatch(LongPredicate)","OptionalLong findFirst()","OptionalLong findAny()","Stream<Long> boxed()","static LongStream of(long...)","static LongStream empty()","DoubleStream asDoubleStream()","static LongStream range(long, long)","static LongStream rangeClosed(long, long)"],unsupported:"unordered onClose close iterator spliterator mapMulti collect iterate generate concat"},{decl:"interface DoubleStream",pkg:"java.util.stream",members:["DoubleStream parallel()","DoubleStream sequential()","boolean isParallel()","DoubleStream filter(DoublePredicate)","DoubleStream map(DoubleUnaryOperator)","<U> Stream<U> mapToObj(DoubleFunction<? extends U>)","IntStream mapToInt(DoubleToIntFunction)","LongStream mapToLong(DoubleToLongFunction)","DoubleStream flatMap(DoubleFunction<? extends DoubleStream>)","DoubleStream distinct()","DoubleStream sorted()","DoubleStream peek(DoubleConsumer)","DoubleStream limit(long)","DoubleStream skip(long)","DoubleStream takeWhile(DoublePredicate)","DoubleStream dropWhile(DoublePredicate)","void forEach(DoubleConsumer)","void forEachOrdered(DoubleConsumer)","double[] toArray()","double reduce(double, DoubleBinaryOperator)","OptionalDouble reduce(DoubleBinaryOperator)","double sum()","OptionalDouble min()","OptionalDouble max()","long count()","OptionalDouble average()","DoubleSummaryStatistics summaryStatistics()","boolean anyMatch(DoublePredicate)","boolean allMatch(DoublePredicate)","boolean noneMatch(DoublePredicate)","OptionalDouble findFirst()","OptionalDouble findAny()","Stream<Double> boxed()","static DoubleStream of(double...)","static DoubleStream empty()"],unsupported:"unordered onClose close iterator spliterator mapMulti collect iterate generate concat"},{decl:"interface Collector<T, A, R>",pkg:"java.util.stream",members:[],unsupported:"supplier accumulator combiner finisher characteristics of"},{decl:"class Collectors",pkg:"java.util.stream",members:["static <T> Collector<T, ?, List<T>> toList()","static <T> Collector<T, ?, List<T>> toUnmodifiableList()","static <T> Collector<T, ?, Set<T>> toSet()","static <T, C extends Collection<T>> Collector<T, ?, C> toCollection(Supplier<C>)","static Collector<String, ?, String> joining()","static Collector<String, ?, String> joining(String)","static Collector<String, ?, String> joining(String, String, String)","static <T, K, U> Collector<T, ?, Map<K, U>> toMap(Function<? super T, ? extends K>, Function<? super T, ? extends U>)","static <T, K, U> Collector<T, ?, Map<K, U>> toMap(Function<? super T, ? extends K>, Function<? super T, ? extends U>, BinaryOperator<U>)","static <T, K, U, M extends Map<K, U>> Collector<T, ?, M> toMap(Function<? super T, ? extends K>, Function<? super T, ? extends U>, BinaryOperator<U>, Supplier<M>)","static <T, K> Collector<T, ?, Map<K, List<T>>> groupingBy(Function<? super T, ? extends K>)","static <T, K, A, D> Collector<T, ?, Map<K, D>> groupingBy(Function<? super T, ? extends K>, Collector<? super T, A, D>)","static <T, K, D, A, M extends Map<K, D>> Collector<T, ?, M> groupingBy(Function<? super T, ? extends K>, Supplier<M>, Collector<? super T, A, D>)","static <T> Collector<T, ?, Map<Boolean, List<T>>> partitioningBy(Predicate<? super T>)","static <T, D, A> Collector<T, ?, Map<Boolean, D>> partitioningBy(Predicate<? super T>, Collector<? super T, A, D>)","static <T> Collector<T, ?, Long> counting()","static <T> Collector<T, ?, Integer> summingInt(ToIntFunction<? super T>)","static <T> Collector<T, ?, Long> summingLong(ToLongFunction<? super T>)","static <T> Collector<T, ?, Double> summingDouble(ToDoubleFunction<? super T>)","static <T> Collector<T, ?, Double> averagingInt(ToIntFunction<? super T>)","static <T> Collector<T, ?, Double> averagingLong(ToLongFunction<? super T>)","static <T> Collector<T, ?, Double> averagingDouble(ToDoubleFunction<? super T>)","static <T> Collector<T, ?, IntSummaryStatistics> summarizingInt(ToIntFunction<? super T>)","static <T> Collector<T, ?, LongSummaryStatistics> summarizingLong(ToLongFunction<? super T>)","static <T> Collector<T, ?, DoubleSummaryStatistics> summarizingDouble(ToDoubleFunction<? super T>)","static <T, U, A, R> Collector<T, ?, R> mapping(Function<? super T, ? extends U>, Collector<? super U, A, R>)","static <T, A, R> Collector<T, ?, R> filtering(Predicate<? super T>, Collector<? super T, A, R>)","static <T, U, A, R> Collector<T, ?, R> flatMapping(Function<? super T, ? extends Stream<? extends U>>, Collector<? super U, A, R>)","static <T, A, R, RR> Collector<T, A, RR> collectingAndThen(Collector<T, A, R>, Function<R, RR>)","static <T, R1, R2, R> Collector<T, ?, R> teeing(Collector<? super T, ?, R1>, Collector<? super T, ?, R2>, BiFunction<? super R1, ? super R2, R>)","static <T> Collector<T, ?, T> reducing(T, BinaryOperator<T>)","static <T, U> Collector<T, ?, U> reducing(U, Function<? super T, ? extends U>, BinaryOperator<U>)","static <T> Collector<T, ?, Optional<T>> reducing(BinaryOperator<T>)","static <T> Collector<T, ?, Optional<T>> minBy(Comparator<? super T>)","static <T> Collector<T, ?, Optional<T>> maxBy(Comparator<? super T>)"],unsupported:"toUnmodifiableSet toUnmodifiableMap toConcurrentMap groupingByConcurrent"},{decl:"class Optional<T>",pkg:"java.util",members:["T get()","boolean isPresent()","boolean isEmpty()","T orElse(T)","T orElseGet(Supplier<? extends T>)","T orElseThrow()","<X extends Throwable> T orElseThrow(Supplier<? extends X>)","void ifPresent(Consumer<? super T>)","void ifPresentOrElse(Consumer<? super T>, Runnable)","<U> Optional<U> map(Function<? super T, ? extends U>)","<U> Optional<U> flatMap(Function<? super T, ? extends Optional<? extends U>>)","Optional<T> filter(Predicate<? super T>)","Optional<T> or(Supplier<? extends Optional<? extends T>>)","Stream<T> stream()","static <T> Optional<T> of(T)","static <T> Optional<T> ofNullable(T)","static <T> Optional<T> empty()"]},{decl:"class OptionalInt",pkg:"java.util",members:["int getAsInt()","boolean isPresent()","boolean isEmpty()","int orElse(int)","int orElseGet(IntSupplier)","int orElseThrow()","void ifPresent(IntConsumer)","IntStream stream()","static OptionalInt of(int)","static OptionalInt empty()"],unsupported:"ifPresentOrElse"},{decl:"class IntSummaryStatistics",pkg:"java.util",members:["IntSummaryStatistics()","long getCount()","long getSum()","int getMin()","int getMax()","double getAverage()","void accept(int)"],unsupported:"combine"},{decl:"class OptionalLong",pkg:"java.util",members:["long getAsLong()","boolean isPresent()","boolean isEmpty()","long orElse(long)","long orElseGet(LongSupplier)","long orElseThrow()","void ifPresent(LongConsumer)","LongStream stream()","static OptionalLong of(long)","static OptionalLong empty()"],unsupported:"ifPresentOrElse"},{decl:"class LongSummaryStatistics",pkg:"java.util",members:["LongSummaryStatistics()","long getCount()","long getSum()","long getMin()","long getMax()","double getAverage()","void accept(long)"],unsupported:"combine"},{decl:"class OptionalDouble",pkg:"java.util",members:["double getAsDouble()","boolean isPresent()","boolean isEmpty()","double orElse(double)","double orElseGet(DoubleSupplier)","double orElseThrow()","void ifPresent(DoubleConsumer)","DoubleStream stream()","static OptionalDouble of(double)","static OptionalDouble empty()"],unsupported:"ifPresentOrElse"},{decl:"class DoubleSummaryStatistics",pkg:"java.util",members:["DoubleSummaryStatistics()","long getCount()","double getSum()","double getMin()","double getMax()","double getAverage()","void accept(double)"],unsupported:"combine"},{decl:"interface LongPredicate",pkg:"java.util.function",functional:"test",members:["boolean test(long)"]},{decl:"interface DoublePredicate",pkg:"java.util.function",functional:"test",members:["boolean test(double)"]},{decl:"interface LongConsumer",pkg:"java.util.function",functional:"accept",members:["void accept(long)"]},{decl:"interface DoubleConsumer",pkg:"java.util.function",functional:"accept",members:["void accept(double)"]},{decl:"interface LongSupplier",pkg:"java.util.function",functional:"getAsLong",members:["long getAsLong()"]},{decl:"interface DoubleSupplier",pkg:"java.util.function",functional:"getAsDouble",members:["double getAsDouble()"]},{decl:"interface LongFunction<R>",pkg:"java.util.function",functional:"apply",members:["R apply(long)"]},{decl:"interface DoubleFunction<R>",pkg:"java.util.function",functional:"apply",members:["R apply(double)"]},{decl:"interface IntToLongFunction",pkg:"java.util.function",functional:"applyAsLong",members:["long applyAsLong(int)"]},{decl:"interface IntToDoubleFunction",pkg:"java.util.function",functional:"applyAsDouble",members:["double applyAsDouble(int)"]},{decl:"interface LongToIntFunction",pkg:"java.util.function",functional:"applyAsInt",members:["int applyAsInt(long)"]},{decl:"interface LongToDoubleFunction",pkg:"java.util.function",functional:"applyAsDouble",members:["double applyAsDouble(long)"]},{decl:"interface DoubleToIntFunction",pkg:"java.util.function",functional:"applyAsInt",members:["int applyAsInt(double)"]},{decl:"interface DoubleToLongFunction",pkg:"java.util.function",functional:"applyAsLong",members:["long applyAsLong(double)"]},{decl:"interface Iterable<E>",pkg:"java.lang",members:["Iterator<E> iterator()","void forEach(Consumer<? super E>)"],unsupported:"spliterator"},{decl:"interface Iterator<E>",pkg:"java.util",members:["boolean hasNext()","E next()","void remove()","void forEachRemaining(Consumer<? super E>)"]},{decl:"interface ListIterator<E> extends Iterator<E>",pkg:"java.util",members:["boolean hasNext()","E next()","boolean hasPrevious()","E previous()","int nextIndex()","int previousIndex()","void remove()","void set(E)","void add(E)","void forEachRemaining(Consumer<? super E>)"]},{decl:"interface Collection<E> extends Iterable<E>",pkg:"java.util",members:[...Vl,"Stream<E> stream()"],unsupported:"spliterator"},{decl:"interface List<E> extends Collection<E>",pkg:"java.util",members:[...Vl,"E get(int)","E set(int, E)","void add(int, E)","E remove(int)","int indexOf(Object)","int lastIndexOf(Object)","E getFirst()","E getLast()","E removeFirst()","E removeLast()","void addFirst(E)","void addLast(E)","void sort(Comparator<? super E>)","!boolean addAll(int, Collection<? extends E>)","static <E> List<E> of(E...)","static <E> List<E> copyOf(Collection<? extends E>)","void replaceAll(UnaryOperator<E>)","List<E> subList(int, int)","ListIterator<E> listIterator()","ListIterator<E> listIterator(int)","List<E> reversed()"]},{decl:"interface Set<E> extends Collection<E>",pkg:"java.util",members:[...Vl,"static <E> Set<E> of(E...)","static <E> Set<E> copyOf(Collection<? extends E>)"]},{decl:"interface Queue<E> extends Collection<E>",pkg:"java.util",members:["boolean add(E)",...Vc]},{decl:"interface Deque<E> extends Queue<E>",pkg:"java.util",members:["void addFirst(E)","void addLast(E)","boolean offerFirst(E)","boolean offerLast(E)","E removeFirst()","E removeLast()","E pollFirst()","E pollLast()","E getFirst()","E getLast()","E peekFirst()","E peekLast()","boolean removeFirstOccurrence(Object)","boolean removeLastOccurrence(Object)","boolean add(E)",...Vc,"boolean addAll(Collection<? extends E>)","void push(E)","E pop()","boolean remove(Object)","boolean contains(Object)","int size()","Iterator<E> iterator()","Iterator<E> descendingIterator()","Deque<E> reversed()"]},{decl:"interface Map<K, V>",pkg:"java.util",members:["int size()","boolean isEmpty()","boolean containsKey(Object)","boolean containsValue(Object)","V get(Object)","V put(K, V)","V remove(Object)","void putAll(Map<? extends K, ? extends V>)","void clear()","boolean equals(Object)","int hashCode()","V getOrDefault(Object, V)","V putIfAbsent(K, V)","boolean remove(Object, Object)","boolean replace(K, V, V)","V replace(K, V)","Set<K> keySet()","Collection<V> values()","Set<Entry<K, V>> entrySet()",...Array.from({length:11},(n,e)=>`static <K, V> Map<K, V> of(${Array.from({length:e},()=>"K, V").join(", ")})`),"static <K, V> Map<K, V> ofEntries(Entry<? extends K, ? extends V>...)","static <K, V> Entry<K, V> entry(K, V)","static <K, V> Map<K, V> copyOf(Map<? extends K, ? extends V>)","void forEach(BiConsumer<? super K, ? super V>)","void replaceAll(BiFunction<? super K, ? super V, ? extends V>)","V computeIfAbsent(K, Function<? super K, ? extends V>)","V computeIfPresent(K, BiFunction<? super K, ? super V, ? extends V>)","V compute(K, BiFunction<? super K, ? super V, ? extends V>)","V merge(K, V, BiFunction<? super V, ? super V, ? extends V>)"]},{decl:"interface Entry<K, V>",pkg:"java.util",binary:"java.util.Map$Entry",members:["K getKey()","V getValue()","V setValue(V)","boolean equals(Object)","int hashCode()","static <K extends Comparable, V> Comparator<Entry<K, V>> comparingByKey()","static <K, V extends Comparable> Comparator<Entry<K, V>> comparingByValue()","static <K, V> Comparator<Entry<K, V>> comparingByKey(Comparator<? super K>)","static <K, V> Comparator<Entry<K, V>> comparingByValue(Comparator<? super V>)"],unsupported:"copyOf"},{decl:"class ArrayList<E> implements List<E>",pkg:"java.util",members:["ArrayList(int)","ArrayList()","ArrayList(Collection<? extends E>)"],unsupported:"trimToSize ensureCapacity clone"},{decl:"class HashSet<E> implements Set<E>",pkg:"java.util",members:["HashSet()","HashSet(Collection<? extends E>)","HashSet(int)","HashSet(int, float)"],unsupported:"clone newHashSet"},{decl:"class LinkedHashSet<E> extends HashSet<E>",pkg:"java.util",members:["LinkedHashSet()","LinkedHashSet(Collection<? extends E>)","LinkedHashSet(int)","LinkedHashSet(int, float)"],unsupported:"newLinkedHashSet reversed addFirst addLast getFirst getLast removeFirst removeLast"},{decl:"class LinkedList<E> implements List<E>, Deque<E>",pkg:"java.util",members:["LinkedList()","LinkedList(Collection<? extends E>)","LinkedList<E> reversed()"],unsupported:"clone spliterator"},{decl:"abstract class AbstractList<E> implements List<E>",pkg:"java.util",members:["AbstractList()","abstract(AbstractList) E get(int)","abstract(AbstractCollection) int size()"]},{decl:"class Vector<E> implements List<E>",pkg:"java.util",members:["Vector()","Vector(int)","Vector(int, int)","Vector(Collection<? extends E>)","int capacity()","E firstElement()","E lastElement()","E elementAt(int)","void setElementAt(E, int)","void insertElementAt(E, int)","void removeElementAt(int)","void addElement(E)","boolean removeElement(Object)","void removeAllElements()","Enumeration<E> elements()","void setSize(int)","void trimToSize()","void ensureCapacity(int)","!int indexOf(Object, int)","!int lastIndexOf(Object, int)"],unsupported:"copyInto clone"},{decl:"class Stack<E> extends Vector<E>",pkg:"java.util",members:["Stack()","E push(E)","E pop()","E peek()","boolean empty()","int search(Object)"]},{decl:"interface Enumeration<E>",pkg:"java.util",members:["boolean hasMoreElements()","E nextElement()","Iterator<E> asIterator()"]},{decl:"interface SortedMap<K, V> extends Map<K, V>",pkg:"java.util",members:["Comparator<K> comparator()","K firstKey()","K lastKey()","SortedMap<K, V> headMap(K)","SortedMap<K, V> tailMap(K)","SortedMap<K, V> subMap(K, K)"],unsupported:"reversed putFirst putLast sequencedKeySet sequencedValues sequencedEntrySet"},{decl:"interface NavigableMap<K, V> extends SortedMap<K, V>",pkg:"java.util",members:["Entry<K, V> lowerEntry(K)","K lowerKey(K)","Entry<K, V> floorEntry(K)","K floorKey(K)","Entry<K, V> ceilingEntry(K)","K ceilingKey(K)","Entry<K, V> higherEntry(K)","K higherKey(K)","Entry<K, V> firstEntry()","Entry<K, V> lastEntry()","Entry<K, V> pollFirstEntry()","Entry<K, V> pollLastEntry()","NavigableMap<K, V> descendingMap()","NavigableSet<K> navigableKeySet()","NavigableSet<K> descendingKeySet()","NavigableMap<K, V> headMap(K, boolean)","NavigableMap<K, V> tailMap(K, boolean)","NavigableMap<K, V> subMap(K, boolean, K, boolean)"]},{decl:"class TreeMap<K, V> implements NavigableMap<K, V>",pkg:"java.util",members:["TreeMap()","TreeMap(Comparator<? super K>)","TreeMap(Map<? extends K, ? extends V>)","TreeMap(SortedMap<K, ? extends V>)"],unsupported:"clone"},{decl:"interface SortedSet<E> extends Set<E>",pkg:"java.util",members:["Comparator<E> comparator()","E first()","E last()","SortedSet<E> headSet(E)","SortedSet<E> tailSet(E)","SortedSet<E> subSet(E, E)"],unsupported:"reversed getFirst getLast removeFirst removeLast addFirst addLast"},{decl:"interface NavigableSet<E> extends SortedSet<E>",pkg:"java.util",members:["E lower(E)","E floor(E)","E ceiling(E)","E higher(E)","E pollFirst()","E pollLast()","NavigableSet<E> descendingSet()","Iterator<E> descendingIterator()","NavigableSet<E> reversed()","NavigableSet<E> headSet(E, boolean)","NavigableSet<E> tailSet(E, boolean)","NavigableSet<E> subSet(E, boolean, E, boolean)"]},{decl:"class TreeSet<E> implements NavigableSet<E>",pkg:"java.util",members:["TreeSet()","TreeSet(Comparator<? super E>)","TreeSet(Collection<? extends E>)","TreeSet(SortedSet<E>)"],unsupported:"clone"},{decl:"class EnumMap<K, V> implements Map<K, V>",pkg:"java.util",members:["EnumMap(Class<K>)","EnumMap(EnumMap<K, ? extends V>)","EnumMap(Map<K, ? extends V>)"],unsupported:"clone"},{decl:"class EnumSet<E> implements Set<E>",pkg:"java.util",members:["static <E> EnumSet<E> noneOf(Class<E>)","static <E> EnumSet<E> allOf(Class<E>)","static <E> EnumSet<E> of(E)","static <E> EnumSet<E> of(E, E)","static <E> EnumSet<E> of(E, E, E)","static <E> EnumSet<E> of(E, E, E, E)","static <E> EnumSet<E> of(E, E, E, E, E)","static <E> EnumSet<E> of(E, E...)","static <E> EnumSet<E> range(E, E)","static <E> EnumSet<E> complementOf(EnumSet<E>)","static <E> EnumSet<E> copyOf(EnumSet<E>)","static <E> EnumSet<E> copyOf(Collection<E>)","EnumSet<E> clone()"]},{decl:"class ArrayDeque<E> implements Deque<E>",pkg:"java.util",members:["ArrayDeque()","ArrayDeque(int)","ArrayDeque(Collection<? extends E>)"],unsupported:"clone"},{decl:"class PriorityQueue<E> implements Queue<E>",pkg:"java.util",members:["PriorityQueue()","PriorityQueue(int)","PriorityQueue(Comparator<? super E>)","PriorityQueue(int, Comparator<? super E>)","PriorityQueue(Collection<? extends E>)"],unsupported:"comparator"},{decl:"class HashMap<K, V> implements Map<K, V>",pkg:"java.util",members:["HashMap(int)","HashMap()","HashMap(Map<? extends K, ? extends V>)","HashMap(int, float)"],unsupported:"clone newHashMap"},{decl:"class Dictionary<K, V>",pkg:"java.util",members:["int size()","boolean isEmpty()","Enumeration<K> keys()","Enumeration<V> elements()","V get(Object)","V put(K, V)","V remove(Object)"]},{decl:"class Hashtable<K, V> extends Dictionary<K, V> implements Map<K, V>",pkg:"java.util",members:["Hashtable()","Hashtable(int)","Hashtable(int, float)","Hashtable(Map<? extends K, ? extends V>)","boolean contains(Object)"],unsupported:"clone rehash"},{decl:"class LinkedHashMap<K, V> extends HashMap<K, V>",pkg:"java.util",members:["LinkedHashMap(int)","LinkedHashMap()","LinkedHashMap(Map<? extends K, ? extends V>)","LinkedHashMap(int, float)","LinkedHashMap(int, float, boolean)","protected boolean removeEldestEntry(Entry<K, V>)"],unsupported:"newLinkedHashMap reversed sequencedKeySet sequencedValues sequencedEntrySet firstEntry lastEntry pollFirstEntry pollLastEntry putFirst putLast"},{decl:"class Arrays",pkg:"java.util",members:["static boolean deepEquals(Object[], Object[])","static int deepHashCode(Object[])","static IntStream stream(int[])","static IntStream stream(int[], int, int)","static LongStream stream(long[])","static DoubleStream stream(double[])","static <T> Stream<T> stream(T[])","static <T> Stream<T> stream(T[], int, int)","static void sort(int[])","static void sort(int[], int, int)","static void sort(long[])","static void sort(long[], int, int)","static void sort(short[])","static void sort(short[], int, int)","static void sort(char[])","static void sort(char[], int, int)","static void sort(byte[])","static void sort(byte[], int, int)","static void sort(float[])","static void sort(float[], int, int)","static void sort(double[])","static void sort(double[], int, int)","static void sort(Object[])","static void sort(Object[], int, int)","static <T> void sort(T[], Comparator<? super T>)","static <T> void sort(T[], int, int, Comparator<? super T>)","static int binarySearch(long[], long)","static int binarySearch(long[], int, int, long)","static int binarySearch(int[], int)","static int binarySearch(int[], int, int, int)","static int binarySearch(short[], short)","static int binarySearch(short[], int, int, short)","static int binarySearch(char[], char)","static int binarySearch(char[], int, int, char)","static int binarySearch(byte[], byte)","static int binarySearch(byte[], int, int, byte)","static int binarySearch(double[], double)","static int binarySearch(double[], int, int, double)","static int binarySearch(float[], float)","static int binarySearch(float[], int, int, float)","static int binarySearch(Object[], Object)","static int binarySearch(Object[], int, int, Object)","static boolean equals(long[], long[])","static boolean equals(int[], int[])","static boolean equals(short[], short[])","static boolean equals(char[], char[])","static boolean equals(byte[], byte[])","static boolean equals(boolean[], boolean[])","static boolean equals(double[], double[])","static boolean equals(float[], float[])","static boolean equals(Object[], Object[])","static void fill(long[], long)","static void fill(long[], int, int, long)","static void fill(int[], int)","static void fill(int[], int, int, int)","static void fill(short[], short)","static void fill(short[], int, int, short)","static void fill(char[], char)","static void fill(char[], int, int, char)","static void fill(byte[], byte)","static void fill(byte[], int, int, byte)","static void fill(boolean[], boolean)","static void fill(boolean[], int, int, boolean)","static void fill(double[], double)","static void fill(double[], int, int, double)","static void fill(float[], float)","static void fill(float[], int, int, float)","static void fill(Object[], Object)","static void fill(Object[], int, int, Object)","static <T> T[] copyOf(T[], int)","static byte[] copyOf(byte[], int)","static short[] copyOf(short[], int)","static int[] copyOf(int[], int)","static long[] copyOf(long[], int)","static char[] copyOf(char[], int)","static float[] copyOf(float[], int)","static double[] copyOf(double[], int)","static boolean[] copyOf(boolean[], int)","static <T> T[] copyOfRange(T[], int, int)","static byte[] copyOfRange(byte[], int, int)","static short[] copyOfRange(short[], int, int)","static int[] copyOfRange(int[], int, int)","static long[] copyOfRange(long[], int, int)","static char[] copyOfRange(char[], int, int)","static float[] copyOfRange(float[], int, int)","static double[] copyOfRange(double[], int, int)","static boolean[] copyOfRange(boolean[], int, int)","static int hashCode(long[])","static int hashCode(int[])","static int hashCode(short[])","static int hashCode(char[])","static int hashCode(byte[])","static int hashCode(boolean[])","static int hashCode(float[])","static int hashCode(double[])","static int hashCode(Object[])","static String toString(long[])","static String toString(int[])","static String toString(short[])","static String toString(char[])","static String toString(byte[])","static String toString(boolean[])","static String toString(float[])","static String toString(double[])","static String toString(Object[])","static String deepToString(Object[])","static <T> List<T> asList(T...)"],unsupported:"stream setAll parallelSort parallelPrefix parallelSetAll mismatch compare spliterator"},{decl:"class BigInteger extends Number, Comparable<BigInteger>",pkg:"java.math",fields:["BigInteger ZERO","BigInteger ONE","BigInteger TWO","BigInteger TEN"],members:["BigInteger(String)","BigInteger(String, int)","static BigInteger valueOf(long)","BigInteger add(BigInteger)","BigInteger subtract(BigInteger)","BigInteger multiply(BigInteger)","BigInteger divide(BigInteger)","BigInteger remainder(BigInteger)","BigInteger[] divideAndRemainder(BigInteger)","BigInteger mod(BigInteger)","BigInteger pow(int)","BigInteger modPow(BigInteger, BigInteger)","BigInteger modInverse(BigInteger)","BigInteger gcd(BigInteger)","BigInteger abs()","BigInteger negate()","int signum()","int compareTo(BigInteger)","BigInteger max(BigInteger)","BigInteger min(BigInteger)","BigInteger sqrt()","byte byteValue()","short shortValue()","int intValue()","long longValue()","float floatValue()","double doubleValue()","int intValueExact()","long longValueExact()","String toString()","String toString(int)","int hashCode()","boolean equals(Object)","int bitLength()","int bitCount()","boolean testBit(int)","BigInteger setBit(int)","BigInteger clearBit(int)","BigInteger flipBit(int)","int getLowestSetBit()","BigInteger shiftLeft(int)","BigInteger shiftRight(int)","BigInteger and(BigInteger)","BigInteger or(BigInteger)","BigInteger xor(BigInteger)","BigInteger not()","BigInteger andNot(BigInteger)","boolean isProbablePrime(int)","BigInteger nextProbablePrime()"],unsupported:"probablePrime toByteArray sqrtAndRemainder shortValueExact byteValueExact parallelMultiply"},{decl:"class RoundingMode implements Comparable<RoundingMode>",pkg:"java.math",isEnum:!0,fields:["RoundingMode UP","RoundingMode DOWN","RoundingMode CEILING","RoundingMode FLOOR","RoundingMode HALF_UP","RoundingMode HALF_DOWN","RoundingMode HALF_EVEN","RoundingMode UNNECESSARY"],members:["static RoundingMode[] values()","static RoundingMode valueOf(String)","String name()","int ordinal()","int compareTo(RoundingMode)","String toString()","boolean equals(Object)","int hashCode()"],unsupported:"getDeclaringClass describeConstable"},{decl:"class MathContext",pkg:"java.math",fields:["MathContext UNLIMITED","MathContext DECIMAL32","MathContext DECIMAL64","MathContext DECIMAL128"],members:["MathContext(int)","MathContext(int, RoundingMode)","int getPrecision()","RoundingMode getRoundingMode()","String toString()","boolean equals(Object)","int hashCode()"]},{decl:"class BigDecimal extends Number, Comparable<BigDecimal>",pkg:"java.math",fields:["BigDecimal ZERO","BigDecimal ONE","BigDecimal TWO","BigDecimal TEN"],members:["BigDecimal(String)","BigDecimal(double)","BigDecimal(int)","BigDecimal(long)","BigDecimal(BigInteger)","BigDecimal(BigInteger, int)","static BigDecimal valueOf(long)","static BigDecimal valueOf(long, int)","static BigDecimal valueOf(double)","BigDecimal add(BigDecimal)","BigDecimal subtract(BigDecimal)","BigDecimal multiply(BigDecimal)","BigDecimal divide(BigDecimal)","BigDecimal divide(BigDecimal, int, RoundingMode)","BigDecimal divide(BigDecimal, RoundingMode)","BigDecimal divide(BigDecimal, MathContext)","BigDecimal divideToIntegralValue(BigDecimal)","BigDecimal remainder(BigDecimal)","BigDecimal setScale(int, RoundingMode)","BigDecimal setScale(int)","BigDecimal round(MathContext)","BigDecimal sqrt(MathContext)","BigDecimal pow(int)","BigDecimal negate()","BigDecimal abs()","BigDecimal plus()","int signum()","int scale()","int precision()","BigInteger unscaledValue()","int compareTo(BigDecimal)","BigDecimal max(BigDecimal)","BigDecimal min(BigDecimal)","BigDecimal movePointLeft(int)","BigDecimal movePointRight(int)","BigDecimal scaleByPowerOfTen(int)","BigDecimal stripTrailingZeros()","String toString()","String toPlainString()","BigInteger toBigInteger()","BigInteger toBigIntegerExact()","byte byteValue()","short shortValue()","int intValue()","long longValue()","float floatValue()","double doubleValue()","int intValueExact()","long longValueExact()","int hashCode()","boolean equals(Object)","!BigDecimal add(BigDecimal, MathContext)","!BigDecimal subtract(BigDecimal, MathContext)","!BigDecimal multiply(BigDecimal, MathContext)","!BigDecimal pow(int, MathContext)","!BigDecimal abs(MathContext)","!BigDecimal negate(MathContext)","!BigDecimal plus(MathContext)","!BigDecimal remainder(BigDecimal, MathContext)"],unsupported:"toEngineeringString ulp divideAndRemainder byteValueExact shortValueExact"},{decl:"class Collections",pkg:"java.util",members:["static <T extends Comparable<? super T>> void sort(List<T>)","static <T> void sort(List<T>, Comparator<? super T>)","static <T> int binarySearch(List<? extends Comparable<? super T>>, T)","static boolean disjoint(Collection<?>, Collection<?>)","static <T> int binarySearch(List<? extends T>, T, Comparator<? super T>)","static void reverse(List<?>)","static void swap(List<?>, int, int)","static <T extends Object & Comparable<? super T>> T max(Collection<? extends T>)","static <T> T max(Collection<? extends T>, Comparator<? super T>)","static <T extends Object & Comparable<? super T>> T min(Collection<? extends T>)","static <T> T min(Collection<? extends T>, Comparator<? super T>)","static int frequency(Collection<?>, Object)","static <T> List<T> nCopies(int, T)","static <T> List<T> emptyList()","static <T> Set<T> emptySet()","static <K, V> Map<K, V> emptyMap()","static <T> List<T> singletonList(T)","static <T> Set<T> singleton(T)","static <K, V> Map<K, V> singletonMap(K, V)","static <T> List<T> unmodifiableList(List<? extends T>)","static <T> Set<T> unmodifiableSet(Set<? extends T>)","static <T> Collection<T> unmodifiableCollection(Collection<? extends T>)","static <K, V> Map<K, V> unmodifiableMap(Map<? extends K, ? extends V>)","static <T> boolean addAll(Collection<? super T>, T...)","static <T> void fill(List<? super T>, T)","static void shuffle(List<?>)","static void shuffle(List<?>, Random)","static <T> Comparator<T> reverseOrder()","static <T> Comparator<T> reverseOrder(Comparator<T>)"],unsupported:"copy rotate replaceAll indexOfSubList lastIndexOfSubList synchronizedList synchronizedMap checkedList emptyIterator enumeration list newSetFromMap asLifoQueue"},{decl:"class StringBuilder",pkg:"java.lang",members:["StringBuilder()","StringBuilder(int)","StringBuilder(String)","int compareTo(StringBuilder)","StringBuilder append(Object)","StringBuilder append(String)","StringBuilder append(char[])","StringBuilder append(boolean)","StringBuilder append(char)","StringBuilder append(int)","StringBuilder append(long)","StringBuilder append(float)","StringBuilder append(double)","StringBuilder delete(int, int)","StringBuilder deleteCharAt(int)","StringBuilder replace(int, int, String)","StringBuilder insert(int, Object)","StringBuilder insert(int, String)","StringBuilder insert(int, char[])","StringBuilder insert(int, boolean)","StringBuilder insert(int, char)","StringBuilder insert(int, int)","StringBuilder insert(int, long)","StringBuilder insert(int, float)","StringBuilder insert(int, double)","int indexOf(String)","int indexOf(String, int)","int lastIndexOf(String)","int lastIndexOf(String, int)","StringBuilder reverse()","String toString()","int length()","char charAt(int)","void setCharAt(int, char)","void setLength(int)","String substring(int)","String substring(int, int)","boolean isEmpty()","int capacity()","void ensureCapacity(int)","void trimToSize()"],unsupported:"codePointAt codePointBefore codePointCount offsetByCodePoints getChars subSequence appendCodePoint repeat chars codePoints"},{decl:"class StringBuffer",pkg:"java.lang",members:["StringBuffer()","StringBuffer(int)","StringBuffer(String)","int compareTo(StringBuffer)","StringBuffer append(Object)","StringBuffer append(String)","StringBuffer append(char[])","StringBuffer append(boolean)","StringBuffer append(char)","StringBuffer append(int)","StringBuffer append(long)","StringBuffer append(float)","StringBuffer append(double)","StringBuffer delete(int, int)","StringBuffer deleteCharAt(int)","StringBuffer replace(int, int, String)","StringBuffer insert(int, Object)","StringBuffer insert(int, String)","StringBuffer insert(int, char[])","StringBuffer insert(int, boolean)","StringBuffer insert(int, char)","StringBuffer insert(int, int)","StringBuffer insert(int, long)","StringBuffer insert(int, float)","StringBuffer insert(int, double)","int indexOf(String)","int indexOf(String, int)","int lastIndexOf(String)","int lastIndexOf(String, int)","StringBuffer reverse()","String toString()","int length()","char charAt(int)","void setCharAt(int, char)","void setLength(int)","String substring(int)","String substring(int, int)","boolean isEmpty()","int capacity()","void ensureCapacity(int)","void trimToSize()"],unsupported:"codePointAt codePointBefore codePointCount offsetByCodePoints getChars subSequence appendCodePoint repeat chars codePoints"},{decl:"class Number",pkg:"java.lang",members:["int intValue()","long longValue()","float floatValue()","double doubleValue()","byte byteValue()","short shortValue()"]},{decl:"class Integer extends Number",pkg:"java.lang",box:"int",members:["Integer(int)","Integer(String)","static String toString(int, int)","static String toHexString(int)","static String toOctalString(int)","static String toBinaryString(int)","static String toString(int)","static int parseInt(String, int)","static int parseInt(String)","static Integer valueOf(String, int)","static Integer valueOf(String)","static Integer valueOf(int)","byte byteValue()","short shortValue()","int intValue()","long longValue()","float floatValue()","double doubleValue()","String toString()","int hashCode()","static int hashCode(int)","boolean equals(Object)","int compareTo(Integer)","static int compare(int, int)","static int highestOneBit(int)","static int numberOfLeadingZeros(int)","static int numberOfTrailingZeros(int)","static int bitCount(int)","static int reverse(int)","static int signum(int)","static int sum(int, int)","static int max(int, int)","static int min(int, int)"],unsupported:"toUnsignedString parseUnsignedInt decode getInteger compareUnsigned toUnsignedLong divideUnsigned remainderUnsigned lowestOneBit rotateLeft rotateRight reverseBytes compress expand describeConstable resolveConstantDesc"},{decl:"class Long extends Number",pkg:"java.lang",box:"long",members:["Long(long)","Long(String)","static String toString(long, int)","static String toHexString(long)","static String toOctalString(long)","static String toBinaryString(long)","static String toString(long)","static long parseLong(String, int)","static long parseLong(String)","static Long valueOf(String, int)","static Long valueOf(String)","static Long valueOf(long)","byte byteValue()","short shortValue()","int intValue()","long longValue()","float floatValue()","double doubleValue()","String toString()","int hashCode()","static int hashCode(long)","boolean equals(Object)","int compareTo(Long)","static int compare(long, long)","static int numberOfLeadingZeros(long)","static int numberOfTrailingZeros(long)","static int bitCount(long)","static int signum(long)","static long sum(long, long)","static long max(long, long)","static long min(long, long)"],unsupported:"toUnsignedString parseUnsignedLong decode getLong compareUnsigned divideUnsigned remainderUnsigned highestOneBit lowestOneBit rotateLeft rotateRight reverse reverseBytes compress expand describeConstable resolveConstantDesc"},{decl:"class Double extends Number",pkg:"java.lang",box:"double",members:["Double(double)","Double(String)","static String toString(double)","static Double valueOf(String)","static Double valueOf(double)","static double parseDouble(String)","static boolean isNaN(double)","static boolean isInfinite(double)","static boolean isFinite(double)","boolean isNaN()","boolean isInfinite()","String toString()","byte byteValue()","short shortValue()","int intValue()","long longValue()","float floatValue()","double doubleValue()","int hashCode()","static int hashCode(double)","boolean equals(Object)","static int compare(double, double)","int compareTo(Double)","static double sum(double, double)","static double max(double, double)","static double min(double, double)"],unsupported:"toHexString doubleToLongBits doubleToRawLongBits longBitsToDouble describeConstable resolveConstantDesc"},{decl:"class Float extends Number",pkg:"java.lang",box:"float",members:["Float(float)","Float(double)","Float(String)","static String toString(float)","static Float valueOf(String)","static Float valueOf(float)","static float parseFloat(String)","static boolean isNaN(float)","static boolean isInfinite(float)","static boolean isFinite(float)","boolean isNaN()","boolean isInfinite()","String toString()","byte byteValue()","short shortValue()","int intValue()","long longValue()","float floatValue()","double doubleValue()","int hashCode()","static int hashCode(float)","boolean equals(Object)","static int floatToIntBits(float)","static int floatToRawIntBits(float)","static float intBitsToFloat(int)","int compareTo(Float)","static int compare(float, float)","static float sum(float, float)","static float max(float, float)","static float min(float, float)"],unsupported:"toHexString float16ToFloat floatToFloat16 describeConstable resolveConstantDesc"},{decl:"class Byte extends Number",pkg:"java.lang",box:"byte",members:["Byte(byte)","Byte(String)","static String toString(byte)","static Byte valueOf(byte)","static byte parseByte(String, int)","static byte parseByte(String)","static Byte valueOf(String, int)","static Byte valueOf(String)","byte byteValue()","short shortValue()","int intValue()","long longValue()","float floatValue()","double doubleValue()","String toString()","int hashCode()","static int hashCode(byte)","boolean equals(Object)","int compareTo(Byte)","static int compare(byte, byte)","static int toUnsignedInt(byte)","static long toUnsignedLong(byte)"],unsupported:"decode compareUnsigned describeConstable"},{decl:"class Short extends Number",pkg:"java.lang",box:"short",members:["Short(short)","Short(String)","static String toString(short)","static short parseShort(String, int)","static short parseShort(String)","static Short valueOf(String, int)","static Short valueOf(String)","static Short valueOf(short)","byte byteValue()","short shortValue()","int intValue()","long longValue()","float floatValue()","double doubleValue()","String toString()","int hashCode()","static int hashCode(short)","boolean equals(Object)","int compareTo(Short)","static int compare(short, short)","static int toUnsignedInt(short)","static long toUnsignedLong(short)"],unsupported:"decode compareUnsigned reverseBytes describeConstable"},{decl:"class Character",pkg:"java.lang",box:"char",members:["Character(char)","static char[] toChars(int)","static Character valueOf(char)","char charValue()","int hashCode()","static int hashCode(char)","boolean equals(Object)","String toString()","static String toString(char)","static boolean isLowerCase(char)","static boolean isLowerCase(int)","static boolean isUpperCase(char)","static boolean isUpperCase(int)","static boolean isDigit(char)","static boolean isDigit(int)","static boolean isLetter(char)","static boolean isLetter(int)","static boolean isLetterOrDigit(char)","static boolean isLetterOrDigit(int)","static boolean isAlphabetic(int)","static char toLowerCase(char)","static int toLowerCase(int)","static char toUpperCase(char)","static int toUpperCase(int)","static int digit(char, int)","static int digit(int, int)","static int getNumericValue(char)","static int getNumericValue(int)","static boolean isSpaceChar(char)","static boolean isSpaceChar(int)","static boolean isWhitespace(char)","static boolean isWhitespace(int)","static char forDigit(int, int)","int compareTo(Character)","static int compare(char, char)"],unsupported:"isValidCodePoint isBmpCodePoint isSupplementaryCodePoint isHighSurrogate isLowSurrogate isSurrogate isSurrogatePair charCount toCodePoint codePointAt codePointBefore highSurrogate lowSurrogate codePointCount offsetByCodePoints isTitleCase isDefined isIdeographic isJavaIdentifierStart isJavaIdentifierPart isUnicodeIdentifierStart isUnicodeIdentifierPart isIdentifierIgnorable isEmoji isEmojiPresentation isEmojiModifier isEmojiModifierBase isEmojiComponent isExtendedPictographic toTitleCase getType isISOControl isMirrored getDirectionality reverseBytes getName codePointOf isJavaLetter isJavaLetterOrDigit isSpace describeConstable"},{decl:"class Boolean",pkg:"java.lang",box:"boolean",fields:["Boolean TRUE","Boolean FALSE"],members:["Boolean(boolean)","Boolean(String)","static boolean parseBoolean(String)","boolean booleanValue()","static Boolean valueOf(boolean)","static Boolean valueOf(String)","static String toString(boolean)","String toString()","int hashCode()","static int hashCode(boolean)","boolean equals(Object)","int compareTo(Boolean)","static int compare(boolean, boolean)","static boolean logicalAnd(boolean, boolean)","static boolean logicalOr(boolean, boolean)","static boolean logicalXor(boolean, boolean)"],unsupported:"getBoolean describeConstable"},{decl:"class StringJoiner",pkg:"java.util",members:["StringJoiner(String)","StringJoiner(String, String, String)","StringJoiner add(String)","StringJoiner merge(StringJoiner)","StringJoiner setEmptyValue(String)","int length()","String toString()"]},{decl:"class Pattern",pkg:"java.util.regex",members:["static Pattern compile(String)","static Pattern compile(String, int)","static boolean matches(String, String)","static String quote(String)","Matcher matcher(String)","String pattern()","String toString()","int flags()","String[] split(String)","String[] split(String, int)"],unsupported:"asPredicate asMatchPredicate splitAsStream splitWithDelimiters namedGroups"},{decl:"interface MatchResult",pkg:"java.util.regex",members:["String group()","String group(int)","String group(String)","int start()","int start(int)","int start(String)","int end()","int end(int)","int end(String)","int groupCount()"],unsupported:"hasMatch namedGroups"},{decl:"class Matcher implements MatchResult",pkg:"java.util.regex",members:["boolean matches()","boolean lookingAt()","boolean find()","boolean find(int)","Matcher reset()","Matcher reset(String)","Pattern pattern()","MatchResult toMatchResult()","String replaceAll(String)","String replaceAll(Function<MatchResult, String>)","String replaceFirst(String)","Matcher appendReplacement(StringBuilder, String)","Matcher appendReplacement(StringBuffer, String)","StringBuilder appendTail(StringBuilder)","StringBuffer appendTail(StringBuffer)","Stream<MatchResult> results()"],unsupported:"region regionStart regionEnd hitEnd requireEnd usePattern useAnchoringBounds useTransparentBounds hasAnchoringBounds hasTransparentBounds quoteReplacement"},{decl:"class BitSet",pkg:"java.util",members:["BitSet()","BitSet(int)","static BitSet valueOf(long[])","!static BitSet valueOf(byte[])","boolean get(int)","BitSet get(int, int)","void set(int)","void set(int, boolean)","void set(int, int)","void set(int, int, boolean)","void clear(int)","void clear(int, int)","void clear()","void flip(int)","void flip(int, int)","int length()","int size()","boolean isEmpty()","int cardinality()","int nextSetBit(int)","int nextClearBit(int)","int previousSetBit(int)","int previousClearBit(int)","void and(BitSet)","void or(BitSet)","void xor(BitSet)","void andNot(BitSet)","boolean intersects(BitSet)","Object clone()","long[] toLongArray()","IntStream stream()","String toString()","boolean equals(Object)","int hashCode()"],unsupported:"toByteArray"},{decl:"class DayOfWeek implements Comparable<DayOfWeek>",pkg:"java.time",isEnum:!0,fields:["DayOfWeek MONDAY","DayOfWeek TUESDAY","DayOfWeek WEDNESDAY","DayOfWeek THURSDAY","DayOfWeek FRIDAY","DayOfWeek SATURDAY","DayOfWeek SUNDAY"],members:["static DayOfWeek[] values()","static DayOfWeek valueOf(String)","static DayOfWeek of(int)","int getValue()","DayOfWeek plus(long)","DayOfWeek minus(long)","String name()","int ordinal()","int compareTo(DayOfWeek)","String toString()","boolean equals(Object)","int hashCode()"],unsupported:"getDisplayName from getDeclaringClass describeConstable"},{decl:"class Month implements Comparable<Month>",pkg:"java.time",isEnum:!0,fields:["Month JANUARY","Month FEBRUARY","Month MARCH","Month APRIL","Month MAY","Month JUNE","Month JULY","Month AUGUST","Month SEPTEMBER","Month OCTOBER","Month NOVEMBER","Month DECEMBER"],members:["static Month[] values()","static Month valueOf(String)","static Month of(int)","int getValue()","Month plus(long)","Month minus(long)","int length(boolean)","int maxLength()","int minLength()","String name()","int ordinal()","int compareTo(Month)","String toString()","boolean equals(Object)","int hashCode()"],unsupported:"getDisplayName from firstDayOfYear firstMonthOfQuarter getDeclaringClass describeConstable"},{decl:"class ChronoUnit implements Comparable<ChronoUnit>",pkg:"java.time.temporal",isEnum:!0,fields:["ChronoUnit NANOS","ChronoUnit MICROS","ChronoUnit MILLIS","ChronoUnit SECONDS","ChronoUnit MINUTES","ChronoUnit HOURS","ChronoUnit HALF_DAYS","ChronoUnit DAYS","ChronoUnit WEEKS","ChronoUnit MONTHS","ChronoUnit YEARS","ChronoUnit DECADES","ChronoUnit CENTURIES","ChronoUnit MILLENNIA","ChronoUnit ERAS","ChronoUnit FOREVER"],members:["static ChronoUnit[] values()","static ChronoUnit valueOf(String)","long between(LocalDate, LocalDate)","String name()","int ordinal()","int compareTo(ChronoUnit)","String toString()","boolean equals(Object)","int hashCode()"],unsupported:"getDuration isDurationEstimated isDateBased isTimeBased isSupportedBy addTo getDeclaringClass describeConstable"},{decl:"class LocalDate implements Comparable<LocalDate>",pkg:"java.time",fields:["LocalDate MIN","LocalDate MAX","LocalDate EPOCH"],members:["static LocalDate of(int, int, int)","static LocalDate of(int, Month, int)","static LocalDate ofEpochDay(long)","static LocalDate ofYearDay(int, int)","static LocalDate parse(String)","static LocalDate parse(String, DateTimeFormatter)","static LocalDate now()","int getYear()","int getMonthValue()","Month getMonth()","int getDayOfMonth()","int getDayOfYear()","DayOfWeek getDayOfWeek()","boolean isLeapYear()","int lengthOfMonth()","int lengthOfYear()","long toEpochDay()","LocalDate plusDays(long)","LocalDate minusDays(long)","LocalDate plusWeeks(long)","LocalDate minusWeeks(long)","LocalDate plusMonths(long)","LocalDate minusMonths(long)","LocalDate plusYears(long)","LocalDate minusYears(long)","LocalDate plus(long, ChronoUnit)","LocalDate minus(long, ChronoUnit)","LocalDate plus(Period)","LocalDate minus(Period)","LocalDate withDayOfMonth(int)","LocalDate withMonth(int)","LocalDate withYear(int)","LocalDate withDayOfYear(int)","boolean isBefore(LocalDate)","boolean isAfter(LocalDate)","boolean isEqual(LocalDate)","int compareTo(LocalDate)","long until(LocalDate, ChronoUnit)","Period until(LocalDate)","String format(DateTimeFormatter)","Stream<LocalDate> datesUntil(LocalDate)","String toString()","boolean equals(Object)","int hashCode()"],unsupported:"atStartOfDay atTime atStartOfDay get getLong with range query adjustInto isSupported getChronology getEra toEpochSecond ofInstant from"},{decl:"class Period",pkg:"java.time",fields:["Period ZERO"],members:["static Period of(int, int, int)","static Period ofDays(int)","static Period ofWeeks(int)","static Period ofMonths(int)","static Period ofYears(int)","static Period between(LocalDate, LocalDate)","int getYears()","int getMonths()","int getDays()","long toTotalMonths()","boolean isZero()","boolean isNegative()","Period normalized()","Period negated()","Period multipliedBy(int)","Period plusDays(long)","Period plusMonths(long)","Period plusYears(long)","String toString()","boolean equals(Object)","int hashCode()"],unsupported:"parse from withDays withMonths withYears minusDays minusMonths minusYears plus minus addTo subtractFrom getUnits get getChronology"},{decl:"class DateTimeFormatter",pkg:"java.time.format",fields:["DateTimeFormatter ISO_LOCAL_DATE","DateTimeFormatter ISO_DATE"],members:["static DateTimeFormatter ofPattern(String)","String format(LocalDate)"],unsupported:"ofLocalizedDate ofLocalizedTime ofLocalizedDateTime withLocale withZone parse withResolverStyle toFormat getLocale"},{decl:"class Random",pkg:"java.util",members:["Random()","Random(long)","void setSeed(long)","int nextInt()","int nextInt(int)","int nextInt(int, int)","long nextLong()","long nextLong(long)","long nextLong(long, long)","boolean nextBoolean()","double nextDouble()","double nextDouble(double)","double nextDouble(double, double)","float nextFloat()","double nextGaussian()","!double nextGaussian(double, double)"],unsupported:"nextBytes nextExponential ints longs doubles from isDeprecated"}],Ud=[{decl:"class String",pkg:"java.lang",fields:["Comparator<String> CASE_INSENSITIVE_ORDER"],members:["String()","String(String)","String(char[])","String(char[], int, int)","String(StringBuilder)","boolean equalsIgnoreCase(String)","int compareToIgnoreCase(String)","boolean startsWith(String, int)","boolean startsWith(String)","boolean endsWith(String)","int hashCode()","int indexOf(int)","int indexOf(int, int)","!int indexOf(int, int, int)","int lastIndexOf(int)","int lastIndexOf(int, int)","int indexOf(String)","int indexOf(String, int)","!int indexOf(String, int, int)","int lastIndexOf(String)","int lastIndexOf(String, int)","String substring(int)","String substring(int, int)","String concat(String)","String replace(char, char)","boolean matches(String)","boolean contains(String)","String replaceFirst(String, String)","String replaceAll(String, String)","String replace(String, String)","String[] split(String, int)","String[] split(String)","static String join(String, String...)","static String join(String, Iterable<? extends String>)","String toLowerCase()","String toUpperCase()","IntStream chars()","String trim()","String intern()","String strip()","String stripLeading()","String stripTrailing()","boolean isBlank()","String toString()","static String format(String, Object...)","String formatted(Object...)","static String valueOf(Object)","static String valueOf(char[])","static String valueOf(char[], int, int)","static String copyValueOf(char[])","static String valueOf(boolean)","static String valueOf(char)","static String valueOf(int)","static String valueOf(long)","static String valueOf(float)","static String valueOf(double)","String repeat(int)","Stream<String> lines()","String stripIndent()","String translateEscapes()","String indent(int)","int codePointAt(int)","byte[] getBytes()","!byte[] getBytes(String)","<R> R transform(Function<? super String, ? extends R>)"],unsupported:"codePoints codePointBefore codePointCount offsetByCodePoints getChars describeConstable resolveConstantDesc contentEquals regionMatches subSequence getClass wait notify notifyAll splitWithDelimiters"},{decl:"class Math",pkg:"java.lang",members:["static double sin(double)","static double cos(double)","static double tan(double)","static double asin(double)","static double acos(double)","static double atan(double)","static double toRadians(double)","static double toDegrees(double)","static double exp(double)","static double log(double)","static double log10(double)","static double cbrt(double)","static double rint(double)","static double atan2(double, double)","static double pow(double, double)","static double random()","static int addExact(int, int)","static long addExact(long, long)","static int subtractExact(int, int)","static long subtractExact(long, long)","static int multiplyExact(int, int)","static long multiplyExact(long, int)","static long multiplyExact(long, long)","static int incrementExact(int)","static long incrementExact(long)","static int decrementExact(int)","static long decrementExact(long)","static int negateExact(int)","static long negateExact(long)","static int toIntExact(long)","static int floorDiv(int, int)","static long floorDiv(long, int)","static long floorDiv(long, long)","static int floorMod(int, int)","static int floorMod(long, int)","static long floorMod(long, long)","static int ceilDiv(int, int)","static long ceilDiv(long, int)","static long ceilDiv(long, long)","static int ceilMod(int, int)","static int ceilMod(long, int)","static long ceilMod(long, long)","static int absExact(int)","static long absExact(long)","static int clamp(long, int, int)","static long clamp(long, long, long)","static double clamp(double, double, double)","static float clamp(float, float, float)","static double ulp(double)","static float ulp(float)","static double signum(double)","static float signum(float)","static double sinh(double)","static double cosh(double)","static double tanh(double)","static double hypot(double, double)","static double expm1(double)","static double log1p(double)","static double nextUp(double)","static float nextUp(float)","static double nextDown(double)","static float nextDown(float)"],unsupported:"IEEEremainder fma copySign getExponent nextAfter scalb multiplyHigh unsignedMultiplyHigh multiplyFull floorDivExact ceilDivExact divideExact"},{decl:"class System",pkg:"java.lang",members:["static long currentTimeMillis()","static long nanoTime()","static void arraycopy(Object, int, Object, int, int)","static int identityHashCode(Object)","static String lineSeparator()","static void exit(int)"],unsupported:"getProperty getProperties setProperty clearProperty getenv gc setOut setErr setIn console inheritedChannel getLogger load loadLibrary mapLibraryName runFinalization"},{decl:"class Objects",pkg:"java.util",members:["static boolean equals(Object, Object)","static int hashCode(Object)","static int hash(Object...)","static String toString(Object)","static String toString(Object, String)","static boolean isNull(Object)","static boolean nonNull(Object)","static <T> T requireNonNull(T)","static <T> T requireNonNull(T, String)","static <T> T requireNonNullElse(T, T)","static int checkIndex(int, int)","static <T> int compare(T, T, Comparator<? super T>)"],unsupported:"deepEquals requireNonNullElseGet checkFromToIndex checkFromIndexSize toIdentityString"},{decl:"class InputStream",pkg:"java.io",members:[],unsupported:"read available close skip skipNBytes mark reset markSupported readAllBytes readNBytes transferTo nullInputStream"},{decl:"class Scanner",pkg:"java.util",closeable:!0,members:["Scanner(InputStream)","Scanner(String)","void close()","boolean hasNext()","String next()","boolean hasNextBoolean()","boolean nextBoolean()","boolean hasNextInt()","!boolean hasNextInt(int)","int nextInt()","!int nextInt(int)","boolean hasNextLong()","!boolean hasNextLong(int)","long nextLong()","!long nextLong(int)","boolean hasNextDouble()","double nextDouble()","boolean hasNextFloat()","float nextFloat()","boolean hasNextByte()","!boolean hasNextByte(int)","byte nextByte()","!byte nextByte(int)","boolean hasNextBigInteger()","BigInteger nextBigInteger()","boolean hasNextBigDecimal()","BigDecimal nextBigDecimal()","boolean hasNextShort()","!boolean hasNextShort(int)","short nextShort()","!short nextShort(int)","boolean hasNextLine()","String nextLine()"],unsupported:"useDelimiter delimiter findInLine findWithinHorizon skip match useLocale locale useRadix radix reset tokens findAll ioException remove forEachRemaining"},{decl:"interface CharSequence",pkg:"java.lang",members:[],unsupported:"length charAt subSequence chars codePoints isEmpty compare"},{decl:"class OutputStream",pkg:"java.io",members:[],unsupported:"write flush close nullOutputStream"},{decl:"class Reader",pkg:"java.io",closeable:!0,members:["int read() throws IOException","int read(char[]) throws IOException","int read(char[], int, int) throws IOException","boolean ready() throws IOException","long skip(long) throws IOException","void close() throws IOException"],unsupported:"mark reset markSupported transferTo nullReader of"},{decl:"class InputStreamReader extends Reader",pkg:"java.io",members:["InputStreamReader(InputStream)","!InputStreamReader(InputStream, String)"],unsupported:"getEncoding"},{decl:"class StringReader extends Reader",pkg:"java.io",members:["StringReader(String)"]},{decl:"class BufferedReader extends Reader",pkg:"java.io",members:["BufferedReader(Reader)","BufferedReader(Reader, int)","String readLine() throws IOException","Stream<String> lines()"]},{decl:"class Writer",pkg:"java.io",closeable:!0,members:["void write(int) throws IOException","void write(char[]) throws IOException","void write(char[], int, int) throws IOException","void write(String) throws IOException","void write(String, int, int) throws IOException","Writer append(CharSequence) throws IOException","Writer append(CharSequence, int, int) throws IOException","Writer append(char) throws IOException","void flush() throws IOException","void close() throws IOException"],unsupported:"nullWriter"},{decl:"class OutputStreamWriter extends Writer",pkg:"java.io",members:["OutputStreamWriter(OutputStream)","!OutputStreamWriter(OutputStream, String)"],unsupported:"getEncoding"},{decl:"class BufferedWriter extends Writer",pkg:"java.io",members:["BufferedWriter(Writer)","BufferedWriter(Writer, int)","void newLine() throws IOException"]},{decl:"class StringWriter extends Writer",pkg:"java.io",members:["StringWriter()","StringWriter(int)","void write(int)","void write(char[], int, int)","void write(String)","void write(String, int, int)","StringWriter append(CharSequence)","StringWriter append(CharSequence, int, int)","StringWriter append(char)","void flush()","String toString()"],unsupported:"getBuffer"},{decl:"class PrintWriter extends Writer",pkg:"java.io",members:["PrintWriter(Writer)","PrintWriter(Writer, boolean)","PrintWriter(OutputStream)","PrintWriter(OutputStream, boolean)","!PrintWriter(String)",...["boolean","char","int","long","float","double","char[]","String","Object"].map(n=>`void print(${n})`),"void println()",...["boolean","char","int","long","float","double","char[]","String","Object"].map(n=>`void println(${n})`),"PrintWriter printf(String, Object...)","PrintWriter format(String, Object...)","void write(int)","void write(char[])","void write(char[], int, int)","void write(String)","void write(String, int, int)","PrintWriter append(CharSequence)","PrintWriter append(CharSequence, int, int)","PrintWriter append(char)","void flush()","void close()","boolean checkError()"]},{decl:"class StreamTokenizer",pkg:"java.io",members:["StreamTokenizer(Reader)","int nextToken() throws IOException","void pushBack()","int lineno()","String toString()","void resetSyntax()","void wordChars(int, int)","void whitespaceChars(int, int)","void ordinaryChars(int, int)","void ordinaryChar(int)","void commentChar(int)","void quoteChar(int)","void parseNumbers()","void eolIsSignificant(boolean)","void lowerCaseMode(boolean)"],unsupported:"slashStarComments slashSlashComments",instanceFields:["int ttype","double nval","String sval"]},{decl:"class StringTokenizer",pkg:"java.util",members:["StringTokenizer(String)","StringTokenizer(String, String)","StringTokenizer(String, String, boolean)","boolean hasMoreTokens()","String nextToken()","String nextToken(String)","boolean hasMoreElements()","Object nextElement()","int countTokens()"],unsupported:"asIterator"}],_d=["boolean equals(Object)","int hashCode()","String toString()"],Ec={int:{tag:"int"},long:{tag:"long"},double:{tag:"double"},char:{tag:"char"},boolean:{tag:"boolean"},void:{tag:"void"},float:{tag:"float"},byte:{tag:"byte"},short:{tag:"short"},String:{tag:"string"},Object:{tag:"object"}},Mt=class{#e;#t;#n;#i=0;varargs=!1;constructor(e,t,i){this.#e=e,this.#t=t,this.#n=i}get done(){return this.#a(),this.#i>=this.#e.length}#a(){for(;this.#e[this.#i]===" ";)this.#i++}peek(){return this.#a(),this.#e[this.#i]??""}expect(e){if(this.peek()!==e)throw new Error(`library signature: expected \'${e}\' in ${this.#e}`);this.#i++}word(){this.#a();let e=this.#i;for(;/[\\w<>]/.test(this.#e[this.#i]??"")&&this.#e[this.#i]!=="<"&&this.#e[this.#i]!==">";)this.#i++;return this.#e.slice(e,this.#i)}type(){if(this.peek()==="?"){if(this.#i++,this.peek()==="e"||this.peek()==="s"){let i=this.word()==="super";return{tag:"wildcard",bound:this.type(),isSuper:i}}return{tag:"wildcard",bound:null}}let e=this.word(),t;if(Ec[e])t=Ec[e];else if(this.#t.includes(e))t={tag:"typevar",name:e};else{let i=this.#n.get(e);if(!i)throw new Error(`library signature: unknown type ${e}`);let a=[];if(this.peek()==="<"){for(this.#i++,a.push(this.type());this.peek()===",";)this.#i++,a.push(this.type());this.expect(">")}t={tag:"library",symbol:i,args:a}}for(;this.peek()==="[";)this.#i++,this.expect("]"),t={tag:"array",element:t};return this.#e.startsWith("...",this.#i)&&(this.#i+=3,this.varargs=!0,t={tag:"array",element:t}),t}};function qa(n,e,t){switch(n.tag){case"typevar":{let i=e.indexOf(n.name);return i>=0&&t[i]?t[i]:n}case"array":return{tag:"array",element:qa(n.element,e,t)};case"library":return{tag:"library",symbol:n.symbol,args:n.args.map(i=>qa(i,e,t))};case"wildcard":return n.bound?{tag:"wildcard",bound:qa(n.bound,e,t),...n.isSuper?{isSuper:!0}:{}}:n;default:return n}}function Wa(n){switch(n.tag){case"typevar":return n.name;case"library":return n.symbol.name;case"array":return`${Wa(n.element)}[]`;case"string":return"String";case"object":return"Object";default:return n.tag}}function Kd(n){let e=0,t=1,i=[];for(let a=0;a<n.length;a++){let r=n[a];if(r==="<")e++;else{if(r===">"&&--e===0)return i.push(n.slice(t,a).trim()),[n.slice(0,a+2),i];r===","&&e===1&&(i.push(n.slice(t,a).trim()),t=a+1)}}throw new Error(`library signature: unclosed type parameters in ${n}`)}function Rc(n,e,t){let i=n.startsWith("!"),a=n.indexOf(" throws "),r=a>=0?n.slice(a+8).split(", ").map(Dt=>zd[Dt]+"."+Dt):null;a>=0&&(n=n.slice(0,a));let s=i?n.slice(1):n,l=s.startsWith("protected ");l&&(s=s.slice(10));let o=/^abstract\\((\\w+)\\) /.exec(s)?.[1];o&&(s=s.slice(s.indexOf(") ")+2));let u=s.startsWith("static "),d=u?s.slice(7):s,g=d.startsWith("<")?Kd(d):null;g&&(d=d.slice(g[0].length));let v=g?g[1]:[],m=v.map(Dt=>Dt.split(" ")[0]),x=[...e.typeParams,...m],te=d.indexOf("("),L=d.slice(0,te).trim(),A=L===e.name,$e=L.lastIndexOf(" "),Kn=A?"<init>":L.slice($e+1),xr=A?{tag:"void"}:new Mt(L.slice(0,$e),x,t).type(),cn=new Mt(d.slice(te+1,d.lastIndexOf(")")),x,t),Ai=[];if(!cn.done)for(Ai.push(cn.type());cn.peek()===",";)cn.expect(","),Ai.push(cn.type());let Xl=`${Kn}(${Ai.map(Wa).join(",")})`,mh=i?"":u||A?`${e.name}.${Xl}`:Xl,We={name:Kn,params:Ai,returnType:xr,isStatic:u,native:mh,owner:e.name};if(cn.varargs&&(We.varargs=!0),l&&(We.isProtected=!0),o&&(We.abstractIn=o),r&&(We.throws=r),g){We.typeParams=m;let Dt=v.filter(zn=>/^(Object & )?Comparable/.test(zn.split(" extends ")[1]??"")).map(zn=>zn.split(" ")[0]);Dt.length&&(We.comparableParams=Dt);for(let zn of v){let[Ql,$t]=zn.split(" extends ");if($t?.includes(" & ")){(We.typeParamShown??={})[Ql]=$t.split(" & ").join(",");continue}!$t||$t==="Comparable"||$t==="Throwable"||!$t.includes("<")||((We.typeParamBounds??={})[Ql]=new Mt($t,x,t).type())}}return{method:We,isConstructor:A}}var zd={IOException:"java.io"},Ic=(n,e)=>n.name===e.name&&n.params.length===e.params.length&&n.params.every((t,i)=>Wa(t)===Wa(e.params[i]));function Oc(){let n=new Map,e=[...Pd,...Ud].map(t=>{let[,i,a,r,s=""]=/^(abstract )?(interface|class) (\\w+)(?:<([^>]*)>)?/.exec(t.decl),l={name:r,qualifiedName:t.binary??`${t.pkg}.${r}`,packageName:t.pkg,typeParams:s?s.split(",").map(o=>o.trim()):[],supertypes:[],constructors:[],methods:[],unsupported:new Set(t.unsupported?.split(" ")??[]),isInterface:a==="interface",...i?{isAbstract:!0}:{},...t.box?{box:t.box}:{},...t.functional?{functional:t.functional}:{}};return n.set(l.name,l),{spec:t,symbol:l}});for(let{spec:t,symbol:i}of e){let a=/(?:extends|implements) (.*)$/.exec(t.decl)?.[1]?.replace(" implements ",", ");if(a){let o=new Mt(a,i.typeParams,n);for(i.supertypes.push(o.type());o.peek()===",";)o.expect(","),i.supertypes.push(o.type())}for(let o of t.fields??[]){let u=o.lastIndexOf(" ");(i.staticFields??={})[o.slice(u+1)]=new Mt(o.slice(0,u),i.typeParams,n).type()}t.isEnum&&(i.enumConstants=(t.fields??[]).map(o=>o.slice(o.lastIndexOf(" ")+1)));for(let o of t.instanceFields??[]){let u=o.lastIndexOf(" ");(i.instanceFields??={})[o.slice(u+1)]=new Mt(o.slice(0,u),i.typeParams,n).type()}(t.closeable||i.supertypes.some(o=>o.tag==="library"&&o.symbol.closeable))&&(i.closeable=!0);let r=[];for(let o of t.members){let{method:u,isConstructor:d}=Rc(o,i,n);(d?i.constructors:r).push(u)}let s=[...r],l=i.unsupported;for(let o of i.supertypes)if(o.tag==="library"){for(let u of o.symbol.methods){if(u.isStatic&&o.symbol.isInterface)continue;let d=o.symbol.typeParams.map(m=>u.typeParams?.includes(m)?"":m),g=m=>qa(m,d,o.args),v=o.args.length?{...u,params:u.params.map(g),returnType:g(u.returnType)}:u;s.some(m=>Ic(m,v))||s.push(i.isInterface?v:{...v,owner:i.name})}for(let u of o.symbol.unsupported)l.add(u)}if(!i.supertypes.length)for(let o of _d){let{method:u}=Rc(o,i,n);s.some(d=>Ic(d,u))||s.push(i.isInterface?{...u,owner:"Object"}:u)}i.methods.push(...s)}return n}var Hd={I:"int",J:"long",D:"double",C:"char",Z:"boolean",B:"byte",S:"short",F:"float"};function Rl(n){if(n.startsWith("[")){let t=n.slice(1);return(t.startsWith("[")?Rl(t):t.startsWith("L")?Rl(t.slice(1,-1)):Hd[t]??t)+"[]"}return n.slice(Math.max(n.lastIndexOf("$"),n.lastIndexOf("."))+1).replace(/^\\d+/,"")}var Il=class extends b{className="java.lang.Class";name;isInterface;constructor(e,t,i){super(e),this.name=t,this.isInterface=i}*javaString(){return`${this.isInterface?"interface":"class"} ${this.name}`}"getName()"(){return new h.JString(this.name)}"getSimpleName()"(){return new h.JString(Rl(this.name))}"isInterface()"(){return f(this.isInterface)}"isArray()"(){return f(this.name.startsWith("["))}},Tc=new WeakMap;function El(n,e,t=!1){let i=Tc.get(n);i||Tc.set(n,i=new Map);let a=i.get(e);return a||i.set(e,a=new Il(n.hash(),e,t)),a}var Ya="java.lang.NullPointerException",Ol=class extends b{className="java.lang.Object"},wc={"Object.<init>()":n=>new Ol(n.hash()),"Object.getClass":(n,[e])=>e instanceof h.JLambda?n.limitation("getClass() of a lambda (the JDK\'s class name has an address)"):El(n,Ze(e)),"Enum.getDeclaringClass":(n,[e])=>El(n,qn(e.className)),"Class.literal":(n,[e,t])=>El(n,e.value,t===1),"Objects.equals(Object,Object)":(n,[e,t])=>c(ne(n,e,t),f),"Objects.hashCode(Object)":(n,[e])=>e===null?0:c(B(n,e)),"Objects.hash(Object[])":(n,[e])=>{if(e===null)return 0;let t=e.data;return c((function*(){let i=1;for(let a of t)i=Math.imul(31,i)+(a===null?0:yield*B(n,a))|0;return i})())},"Objects.isNull(Object)":(n,[e])=>f(e===null),"Objects.nonNull(Object)":(n,[e])=>f(e!==null),"Objects.toString(Object)":(n,[e])=>c(V(n,e),t=>new h.JString(t)),"Objects.toString(Object,String)":(n,[e,t])=>e===null?t:c(V(n,e),i=>new h.JString(i)),"Objects.requireNonNull(T)":(n,[e])=>e===null?n.fail(Ya,null):e,"Objects.requireNonNull(T,String)":(n,[e,t])=>e===null?n.fail(Ya,t===null?null:t.value):e,"Objects.requireNonNullElse(T,T)":(n,[e,t])=>e!==null?e:t!==null?t:n.fail(Ya,"defaultObj"),"Objects.checkIndex(int,int)":(n,[e,t])=>{let i=e,a=t;return i<0||i>=a?n.fail("java.lang.IndexOutOfBoundsException",`Index ${i} out of bounds for length ${a}`):i},"Objects.compare(T,T,Comparator)":(n,[e,t,i])=>e===t?0:i===null?n.fail(Ya,null):c(W(n,i)(e,t))};var qd="java.util.ConcurrentModificationException",Wd="java.lang.UnsupportedOperationException",Vi="java.util.NoSuchElementException",Za="java.lang.IndexOutOfBoundsException",Yd="java.lang.IllegalArgumentException";function Tl(n,e,t,i){e<0&&n.fail(Za,`fromIndex = ${e}`),t>i&&n.fail(Za,`toIndex = ${t}`),e>t&&n.fail(Yd,`fromIndex(${e}) > toIndex(${t})`)}function Zd(n){return n.kind==="fixed"?n.list.className.startsWith("java.util.ImmutableCollections$")?"java.util.ImmutableCollections$SubList":"java.util.AbstractList$RandomAccessSubList":n.list.className==="java.util.LinkedList"?"java.util.AbstractList$SubList":n.list.className==="java.util.Stack"?"java.util.Collections$SynchronizedRandomAccessList":"java.util.ArrayList$SubList"}var Xa=class n extends M{className;isList=!0;randomAccess;root;parent;offset;length;modCount;constructor(e,t,i,a,r){super(e),this.root=t,this.parent=i,this.offset=a,this.length=r,this.modCount=this.#t(),this.className=Zd(t),this.randomAccess=this.className!=="java.util.AbstractList$SubList"}get size(){return this.length}#e(){return this.root.kind==="array"?this.root.list.es:this.root.list.items}#t(){return this.root.kind==="array"?this.root.list.modCount:0}check(e){this.#t()!==this.modCount&&e.fail(qd,null)}#n(e){return this.root.kind!=="array"?e.fail(Wd,null):this.root.list}#i(e){let t=this.root.list;t.modCount++;for(let i=this;i;i=i.parent)i.length+=e,i.modCount=t.modCount}#a(e,t){(t<0||t>=this.length)&&e.fail(Za,`Index ${t} out of bounds for length ${this.length}`)}elements(e){return this.check(e),this.#e().slice(this.offset,this.offset+this.length)}get contentEquality(){return!0}*contentEquals(e,t){return yield*_t(e,this,t)}*contentHash(e){return yield*si(e,this.elements(e))}"size()"(e){return e&&this.check(e),this.length}"isEmpty()"(e){return e&&this.check(e),f(this.length===0)}"get(int)"(e,t){return this.check(e),this.#a(e,t),this.#e()[this.offset+t]}"set(int,E)"(e,t,i){if(this.root.kind==="fixed")return this.#a(e,t),this.root.list.setAt(e,this.offset+t,i);this.check(e),this.#a(e,t);let a=this.#e(),r=a[this.offset+t];return a[this.offset+t]=i,r}"add(E)"(e,t){return this["add(int,E)"](e,this.length,t),1}"add(int,E)"(e,t,i){let a=this.#n(e);if(t<0||t>this.length)return e.fail(Za,`Index: ${t}, Size: ${this.length}`);this.check(e),e.allocate(1),a.es.splice(this.offset+t,0,i),this.#i(1)}"remove(int)"(e,t){let i=this.#n(e);this.#a(e,t),this.check(e);let[a]=i.es.splice(this.offset+t,1);return this.#i(-1),a}"remove(Object)"(e,t){let i=this;return c((function*(){let a=yield*i.#r(e,t,!1);return a<0?!1:(i["remove(int)"](e,a),!0)})(),f)}"clear()"(e){let t=this.#n(e);this.check(e),t.es.splice(this.offset,this.length),this.#i(-this.length)}"addAll(Collection)"(e,t){let i=this.#n(e);if(t===null)return e.fail("java.lang.NullPointerException",null);let a=t.elements(e,!0).slice();return this.check(e),a.length?(e.allocate(a.length),i.es.splice(this.offset+this.length,0,...a),this.#i(a.length),1):0}*#r(e,t,i){let a=this.elements(e);for(let r=0;r<a.length;r++){let s=i?a.length-1-r:r;if(t===null?a[s]===null:yield*T(e,t,a[s]))return s}return-1}"indexOf(Object)"(e,t){return c(this.#r(e,t,!1))}"lastIndexOf(Object)"(e,t){return c(this.#r(e,t,!0))}"getFirst()"(e){return this.length?this["get(int)"](e,0):e.fail(Vi,null)}"getLast()"(e){return this.length?this["get(int)"](e,this.length-1):e.fail(Vi,null)}"removeFirst()"(e){return this.length?this["remove(int)"](e,0):e.fail(Vi,null)}"removeLast()"(e){return this.length?this["remove(int)"](e,this.length-1):e.fail(Vi,null)}"addFirst(E)"(e,t){return this["add(int,E)"](e,0,t)}"addLast(E)"(e,t){return this["add(int,E)"](e,this.length,t)}"sort(Comparator)"(e,t){let i=this.elements(e).slice(),a=this;return c((function*(){yield*mt(Zt(e,i,t,()=>{}));for(let r=0;r<i.length;r++)yield*mt(a["set(int,E)"](e,r,i[r]))})(),()=>{})}"replaceAll(UnaryOperator)"(e,t){if(t===null)return e.fail("java.lang.NullPointerException",null);let i=this;return c((function*(){i.check(e);for(let a=0;a<i.length;a++){let r=yield*p(e,t,"apply",[i.#e()[i.offset+a]]);yield*mt(i["set(int,E)"](e,a,r))}i.check(e)})(),()=>{})}"removeIf(Predicate)"(e,t){let i=this.#n(e);if(t===null)return e.fail("java.lang.NullPointerException",null);let a=this;return c((function*(){let r=a.elements(e),s=[];for(let l of r)k(yield*p(e,t,"test",[l]))||s.push(l);return a.check(e),s.length===r.length?!1:(i.es.splice(a.offset,a.length,...s),a.#i(s.length-r.length),!0)})(),f)}"forEach(Consumer)"(e,t){if(t===null)return e.fail("java.lang.NullPointerException",null);let i=this;return c((function*(){let a=i.elements(e);for(let r of a)yield*p(e,t,"accept",[r]),i.check(e)})(),()=>{})}"iterator()"(e){return this.check(e),new wl(e.hash(),this)}"subList(int,int)"(e,t,i){return this.check(e),Tl(e,t,i,this.length),new n(e.hash(),this.root,this,this.offset+t,i-t)}},wl=class extends b{className;#e;#t=0;#n=-1;constructor(e,t){super(e),this.#e=t,this.className=t.className.includes("ArrayList")?"java.util.ArrayList$SubList$1":"java.util.AbstractList$SubList$1"}"hasNext()"(){return f(this.#t!==this.#e.length)}"next()"(e){if(this.#e.check(e),this.#t>=this.#e.length)return e.fail(Vi,null);let t=this.#e["get(int)"](e,this.#t);return this.#n=this.#t++,t}"remove()"(e){if(this.#n<0)return e.fail("java.lang.IllegalStateException",null);this.#e["remove(int)"](e,this.#n),this.#t=this.#n,this.#n=-1}};function Xd(){let n=(e,t)=>{e["subList(int,int)"]=t};n(pe.prototype,function(e,t,i){let a=this;return Tl(e,t,i,a.es.length),new Xa(e.hash(),{kind:"array",list:a},null,t,i-t)}),n(qt.prototype,function(e,t,i){let a=this;return Tl(e,t,i,a.items.length),new Xa(e.hash(),{kind:"fixed",list:a},null,t,i-t)}),n(Ae.prototype,function(e,t,i){let a=this,r=a.c["subList(int,int)"].call(a.c,e,t,i);return new Ae(e.hash(),r,a.className)})}Xd();var Lc="java.lang.IndexOutOfBoundsException",Qd={"getFirst()":["getLast","getLast()"],"getLast()":["getFirst","getFirst()"],"removeFirst()":["removeLast","removeLast()"],"removeLast()":["removeFirst","removeFirst()"],"addFirst(E)":["addLast","addLast(E)"],"addLast(E)":["addFirst","addFirst(E)"],"peekFirst()":["peekLast","peekLast()"],"peekLast()":["peekFirst","peekFirst()"],"pollFirst()":["pollLast","pollLast()"],"pollLast()":["pollFirst","pollFirst()"],"offerFirst(E)":["offerLast","offerLast(E)"],"offerLast(E)":["offerFirst","offerFirst(E)"],"peek()":["peekLast","peekLast()"],"poll()":["pollLast","pollLast()"],"element()":["getLast","getLast()"],"remove()":["removeLast","removeLast()"],"pop()":["removeLast","removeLast()"],"push(E)":["addLast","addLast(E)"],"offer(E)":["offerFirst","offerFirst(E)"],"descendingIterator()":["iterator","iterator()"],"removeFirstOccurrence(Object)":["removeLastOccurrence","removeLastOccurrence(Object)"],"removeLastOccurrence(Object)":["removeFirstOccurrence","removeFirstOccurrence(Object)"]},ef=["subList(int,int)","sort(Comparator)","replaceAll(UnaryOperator)"],Ll=class extends M{className;base;isList;constructor(e,t){super(e),this.base=t,this.isList=t.isList,this.className=t.isList?"java.util.ReverseOrderListView":"java.util.ReverseOrderDequeView";for(let[i,[a,r]]of Object.entries(Qd))this[i]=(s,...l)=>this.#e(s,a,r,l);for(let i of ef)this[i]=a=>a.limitation(`${i.slice(0,i.indexOf("("))}() on a reversed() view`)}get size(){return this.base.size}elements(e){return[...this.base.elements(e,!0)].reverse()}#e(e,t,i,a){return c(w(e,this.base,t,i,a))}#t(e,t,i){return(t<0||t>=i)&&e.fail(Lc,`Index ${t} out of bounds for length ${i}`),this.size-1-t}"reversed()"(){return this.base}"iterator()"(e){return this.isList?new Rn(e.hash(),this,0):this.#e(e,"descendingIterator","descendingIterator()",[])}"add(E)"(e,t){let i=this;return c((function*(){return i.isList?yield*w(e,i.base,"add","add(int,E)",[0,t]):yield*w(e,i.base,"addFirst","addFirst(E)",[t]),!0})(),f)}"get(int)"(e,t){return this.#e(e,"get","get(int)",[this.#t(e,t,this.size)])}"set(int,E)"(e,t,i){return this.#e(e,"set","set(int,E)",[this.#t(e,t,this.size),i])}"remove(int)"(e,t){return this.#e(e,"remove","remove(int)",[this.#t(e,t,this.size)])}"add(int,E)"(e,t,i){let a=t;return a<0||a>this.size?e.fail(Lc,`Index ${a} out of bounds for length ${this.size}`):this.#e(e,"add","add(int,E)",[this.size-a,i])}"indexOf(Object)"(e,t){let i=this.size;return c(w(e,this.base,"lastIndexOf","lastIndexOf(Object)",[t]),a=>a<0?-1:i-1-a)}"lastIndexOf(Object)"(e,t){let i=this.size;return c(w(e,this.base,"indexOf","indexOf(Object)",[t]),a=>a<0?-1:i-1-a)}"remove(Object)"(e,t){if(!this.isList)return this.#e(e,"removeLastOccurrence","removeLastOccurrence(Object)",[t]);let i=this;return c((function*(){let a=yield*w(e,i.base,"lastIndexOf","lastIndexOf(Object)",[t]);return a<0?!1:(yield*w(e,i.base,"remove","remove(int)",[a]),!0)})(),f)}"clear()"(e){return this.#e(e,"clear","clear()",[])}"equals(Object)"(e,t){return this.isList?c(_t(e,this,t),f):f(t===this)}"hashCode()"(e){return this.isList?c(si(e,this.elements(e))):this.hash}},tf=X["reversed()"];X["reversed()"]=(n,e,t)=>e instanceof M&&e.className==="java.util.TreeSet"?c(w(n,e,"descendingSet","descendingSet()",[])):e instanceof M?new Ll(n.hash(),e):tf(n,e,t);var jc="java.util.NoSuchElementException",Le="java.util.InputMismatchException";function Ac(n){return n>=9&&n<=13||n>=28&&n<=32||n===5760||n>=8192&&n<=8202&&n!==8199||n===8232||n===8233||n===8287||n===12288}var Mc=/\\r\\n|[\\n\\r\\u2028\\u2029\\u0085]/g,kc=new WeakMap;function er(n){let e=kc.get(n);return e||kc.set(n,e={reader:null,position:0,stream:null}),e}var tr="a BufferedReader or InputStreamReader";function ir(n,e){let t=er(n);return!e||t.reader===e||(t.reader==="scanner"&&n.limitation(`reading System.in through ${tr} after a Scanner was made over it (on the JDK the Scanner may already hold the input)`),t.reader==="io"&&n.limitation(`reading System.in through ${tr} after IO.readln() (on the JDK IO.readln may already hold the input)`),t.reader!==null&&n.limitation("reading System.in through a second reader (on the JDK the first one may already hold the input); make one BufferedReader and pass it where it is needed"),t.reader=e),t}var Ml=class extends b{className="java.io.BufferedInputStream"},$c="(?:[0-9]+|[1-9][0-9]{0,2}(?:,[0-9]{3})+)",jl=new RegExp(`^[+-]?${$c}$`),Al=new RegExp(`^[+-]?(?:${$c}(?:\\\\.[0-9]*)?|\\\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$`),nf=/^[+-]?(?:NaN|Infinity)$/,af=/^[+-]?\\u221e$/,Bc=/^[+-]?0[xX][0-9a-fA-F]*\\.[0-9a-fA-F]+(?:[pP][+-]?[0-9]+)?$/;function Qa(n){return/[^\\P{Nd}0-9]/u.test(n)}var nr=class extends b{className="java.util.Scanner";#e;#t=0;#n=!1;constructor(e,t){super(e),this.#e=t}*javaString(e){return e.limitation("printing a Scanner")}#i(e){this.#n&&e.fail("java.lang.IllegalStateException","Scanner closed")}#a(e){let t=this.#t;for(;t<this.#e.length&&Ac(this.#e.charCodeAt(t));)t++;return e.charge(t-this.#t),t}#r(e){this.#i(e);let t=this.#a(e);if(t>=this.#e.length)return null;let i=t;for(;i<this.#e.length&&!Ac(this.#e.charCodeAt(i));)i++;return e.charge(i-t),{token:this.#e.slice(t,i),end:i}}#s(e){let t=this.#r(e);return t||(e.inputExhausted(),e.fail(jc,null))}#l(e,t,i,a){if(!jl.test(t))return Qa(t)&&e.limitation(`reading "${t}" as a number (digits outside ASCII)`),null;let r=t.replace(/,/g,""),s=BigInt(r),l=(1n<<BigInt(i-1))-1n;return s>l||s<-l-1n?(a&&e.fail(Le,`For input string: "${r}"`),null):s}#u(e,t,i=!1){return nf.test(t)?t.endsWith("NaN")?NaN:t.startsWith("-")?-1/0:1/0:Al.test(t)?Number(t.replace(/,/g,"")):af.test(t)?(i&&e.fail(Le,`For input string: "${t}"`),null):Bc.test(t)?h.parseHexFloating(t,!1):(Qa(t)&&e.limitation(`reading "${t}" as a number (digits outside ASCII)`),null)}"close()"(){this.#n=!0}"hasNext()"(e){return f(this.#r(e)!==null)}"next()"(e){let{token:t,end:i}=this.#s(e);return this.#t=i,new h.JString(t)}"hasNextBoolean()"(e){let t=this.#r(e);return f(t!==null&&/^(?:true|false)$/i.test(t.token))}"nextBoolean()"(e){let{token:t,end:i}=this.#s(e);return/^(?:true|false)$/i.test(t)?(this.#t=i,f(t.toLowerCase()==="true")):e.fail(Le,null)}"hasNextInt()"(e){let t=this.#r(e);return f(t!==null&&this.#l(e,t.token,32,!1)!==null)}"nextInt()"(e){let{token:t,end:i}=this.#s(e),a=this.#l(e,t,32,!0);return a===null?e.fail(Le,null):(this.#t=i,Number(a))}"hasNextLong()"(e){let t=this.#r(e);return f(t!==null&&this.#l(e,t.token,64,!1)!==null)}"nextLong()"(e){let{token:t,end:i}=this.#s(e),a=this.#l(e,t,64,!0);return a===null?e.fail(Le,null):(this.#t=i,h.normLong(a))}#o(e,t,i,a){let r=this.#l(e,t,32,a);if(r===null)return null;let s=i===8?128n:32768n;return r<-s||r>=s?(a&&e.fail(Le,`Value out of range. Value:"${t.replace(/,/g,"")}" Radix:10`),null):Number(r)}"hasNextByte()"(e){let t=this.#r(e);return f(t!==null&&this.#o(e,t.token,8,!1)!==null)}"nextByte()"(e){let{token:t,end:i}=this.#s(e),a=this.#o(e,t,8,!0);return a===null?e.fail(Le,null):(this.#t=i,a)}"hasNextShort()"(e){let t=this.#r(e);return f(t!==null&&this.#o(e,t.token,16,!1)!==null)}"nextShort()"(e){let{token:t,end:i}=this.#s(e),a=this.#o(e,t,16,!0);return a===null?e.fail(Le,null):(this.#t=i,a)}#h(e,t,i=!1){let a=this.#u(e,t,i);return a===null||!Number.isFinite(a)?a:Bc.test(t)?h.parseHexFloating(t,!0):h.parseDecimalFloat(t.replace(/,/g,"").replace(/^\\+/,""))}"hasNextFloat()"(e){let t=this.#r(e);return f(t!==null&&this.#h(e,t.token)!==null)}"nextFloat()"(e){let{token:t,end:i}=this.#s(e),a=this.#h(e,t,!0);return a===null?e.fail(Le,null):(this.#t=i,a)}"hasNextBigInteger()"(e){let t=this.#r(e);return f(t!==null&&jl.test(t.token))}"nextBigInteger()"(e){let{token:t,end:i}=this.#s(e);return jl.test(t)?(this.#t=i,E(e,BigInt(t.replace(/,/g,"")))):(Qa(t)&&e.limitation(`reading "${t}" as a number (digits outside ASCII)`),e.fail(Le,null))}"hasNextBigDecimal()"(e){let t=this.#r(e);return f(t!==null&&Al.test(t.token))}"nextBigDecimal()"(e){let{token:t,end:i}=this.#s(e);return Al.test(t)?(this.#t=i,va(e,new h.JString(t.replace(/,/g,"").replace(/^\\+/,"")))):(Qa(t)&&e.limitation(`reading "${t}" as a number (digits outside ASCII)`),e.fail(Le,null))}"hasNextDouble()"(e){let t=this.#r(e);return f(t!==null&&this.#u(e,t.token)!==null)}"nextDouble()"(e){let{token:t,end:i}=this.#s(e),a=this.#u(e,t,!0);return a===null?e.fail(Le,null):(this.#t=i,a)}"hasNextLine()"(e){return this.#i(e),f(this.#t<this.#e.length)}"nextLine()"(e){if(this.#i(e),this.#t>=this.#e.length)return e.inputExhausted(),e.fail(jc,"No line found");Mc.lastIndex=this.#t;let t=Mc.exec(this.#e),i=t?t.index:this.#e.length,a=this.#e.slice(this.#t,i);return e.charge(i-this.#t),this.#t=t?i+t[0].length:i,new h.JString(a)}};function Dc(n){let e=er(n);e.reader==="scanner"&&n.limitation("IO.readln() after a Scanner was made over System.in (on the JDK the Scanner may already hold the input)"),e.reader instanceof b&&n.limitation(`IO.readln() after ${tr} read System.in (on the JDK the reader may already hold the input)`),e.reader="io";let t=n.stdin();if(e.position>=t.length)return null;let i=/\\r\\n|[\\n\\r]/g;i.lastIndex=e.position;let a=i.exec(t),r=a?a.index:t.length,s=t.slice(e.position,r);return n.charge(r-e.position),e.position=a?r+a[0].length:r,new h.JString(s)}var Fc={"System.in":n=>{let e=er(n);return e.stream??=new Ml(n.hash()),e.stream},"Scanner.<init>(InputStream)":(n,[e])=>{if(e===null)return n.fail("java.lang.NullPointerException",null);let t=er(n);return t.reader==="scanner"&&n.limitation("a second Scanner over System.in (on the JDK the first one may already hold the input); make one Scanner and pass it where it is needed"),t.reader==="io"&&n.limitation("a Scanner over System.in after IO.readln() (on the JDK IO.readln may already hold the input)"),t.reader instanceof b&&n.limitation(`a Scanner over System.in after ${tr} read it (on the JDK the reader may already hold the input)`),t.reader="scanner",new nr(n.hash(),n.stdin())},"Scanner.<init>(String)":(n,[e])=>e===null?n.fail("java.lang.NullPointerException",null):new nr(n.hash(),e.value),"IO.readln()":n=>Dc(n),"IO.readln(String)":(n,[e])=>(n.print("out",e===null?"null":e.value),Dc(n))};var Ve="java.lang.NullPointerException",kl="java.lang.IllegalArgumentException",rf="java.util.NoSuchElementException",sf="java.lang.IllegalStateException",Jn=n=>n.fields[1],Jc=(n,e)=>Jn(n)-Jn(e),Ei=(n,e)=>n instanceof h.JObject&&qn(n.className)===e;function*ar(n,e){let t=n.staticMethod(e,"values",0);return t<0?n.limitation(`EnumSet or EnumMap of ${e}, which is not an enum of the program`):(yield{invoke:t,args:[]}).data}var ln=class extends ht{enumClass;constructor(e,t){super(e,new Fn(null,Jc),null,null,!1,"java.util.EnumMap"),this.enumClass=t}*lookup(e,t){if(Ei(t,this.enumClass))return yield*super.lookup(e,t)}*removeKey(e,t){return Ei(t,this.enumClass)?yield*super.removeKey(e,t):null}"put(K,V)"(e,t,i){return t===null?e.fail(Ve,\'Cannot invoke "Object.getClass()" because "key" is null\'):super["put(K,V)"](e,t,i)}"putIfAbsent(K,V)"(e,t,i){return t===null?e.fail(Ve,\'Cannot invoke "Object.getClass()" because "key" is null\'):super["putIfAbsent(K,V)"](e,t,i)}},rr=class n extends we{enumClass;constructor(e,t,i){super(e,new ht(e,new Fn(null,Jc),null,null,!1,"java.util.EnumMap"),i>64?"java.util.JumboEnumSet":"java.util.RegularEnumSet"),this.enumClass=t}"add(E)"(e,t){if(t===null)return e.fail(Ve,\'Cannot invoke "Object.getClass()" because "e" is null\');let i=this.map.tree.size;return c(Gn(this.map["put(K,V)"](e,t,null)),()=>f(this.map.tree.size!==i))}"remove(Object)"(e,t){return Ei(t,this.enumClass)?super["remove(Object)"](e,t):0}*contains(e,t){return Ei(t,this.enumClass)?yield*super.contains(e,t):!1}"iterator()"(e){return new Dl(e.hash(),this,this.elements(e).slice())}"removeAll(Collection)"(e,t){if(t===null)return e.fail(Ve,null);let i=t.elements(e,!1),a=!1;for(let r of i)Ei(r,this.enumClass)&&this.map.tree.size&&this["remove(Object)"](e,r)===1&&(a=!0);return f(a)}"retainAll(Collection)"(e,t){if(t===null)return e.fail(Ve,null);let i=t,a=this;return c((function*(){let r=!1;for(let s of a.elements(e).slice())(yield*i.contains(e,s))||(a["remove(Object)"](e,s),r=!0);return r})(),f)}"clone()"(e){let t=new n(e,this.enumClass,0);return c(Gn(t.addEach(e,this.elements(e))),()=>lf(t,this.className))}},lf=(n,e)=>Object.assign(n,{className:e}),Dl=class extends b{className="java.util.RegularEnumSet$EnumSetIterator";#e;#t;#n=0;#i;constructor(e,t,i){super(e),this.#e=t,this.#t=i}"hasNext()"(){return f(this.#n<this.#t.length)}"next()"(e){return this.#n>=this.#t.length?e.fail(rf,null):(this.#i=this.#t[this.#n++],this.#i)}"remove()"(e){if(this.#i===void 0)return e.fail(sf,null);this.#e["remove(Object)"](e,this.#i),this.#i=void 0}};function*Gn(n){return n!==null&&typeof n=="object"&&Symbol.iterator in n?yield*n:n}function*Se(n,e,t){let i=yield*ar(n,e),a=new rr(n,e,i.length);return yield*Gn(a.addEach(n,t)),a}function Bl(n,e,t){return e===null?n.fail(Ve,`Cannot invoke "java.lang.Class.getEnumConstantsShared()" because "${t}" is null`):e.name}function dt(n,e){return e===null?n.fail(Ve,\'Cannot invoke "Object.getClass()" because "e" is null\'):qn(e.className)}var xe=n=>c(n),Gc={"EnumMap.<init>(Class)":(n,[e])=>new ln(n,Bl(n,e,"keyType")),"EnumMap.<init>(EnumMap)":(n,[e])=>{if(e===null)return n.fail(Ve,\'Cannot read field "keyType" because "m" is null\');let t=new ln(n,e.enumClass);return c(Gn(t["putAll(Map)"](n,e)),()=>t)},"EnumMap.<init>(Map)":(n,[e])=>{if(e===null)return n.fail(Ve,\'Cannot invoke "java.util.Map.isEmpty()" because "m" is null\');if(e instanceof ln){let a=new ln(n,e.enumClass);return c(Gn(a["putAll(Map)"](n,e)),()=>a)}let t=e.mappings(n,!0).map(a=>a.entryKey);if(!t.length)return n.fail(kl,"Specified map is empty");let i=new ln(n,dt(n,t[0]));return c(Gn(i["putAll(Map)"](n,e)),()=>i)},"EnumSet.noneOf(Class)":(n,[e])=>xe(Se(n,Bl(n,e,"elementType"),[])),"EnumSet.allOf(Class)":(n,[e])=>{let t=Bl(n,e,"elementType");return xe((function*(){return yield*Se(n,t,yield*ar(n,t))})())},"EnumSet.of(E)":(n,[e])=>xe(Se(n,dt(n,e),[e])),"EnumSet.of(E,E)":(n,e)=>xe(Se(n,dt(n,e[0]),e)),"EnumSet.of(E,E,E)":(n,e)=>xe(Se(n,dt(n,e[0]),e)),"EnumSet.of(E,E,E,E)":(n,e)=>xe(Se(n,dt(n,e[0]),e)),"EnumSet.of(E,E,E,E,E)":(n,e)=>xe(Se(n,dt(n,e[0]),e)),"EnumSet.of(E,E[])":(n,[e,t])=>xe(Se(n,dt(n,e),[e,...t.data])),"EnumSet.range(E,E)":(n,[e,t])=>{let i=dt(n,e);if(t===null)return n.fail(Ve,\'Cannot invoke "java.lang.Enum.ordinal()" because "to" is null\');if(Jn(e)>Jn(t)){let a=r=>r.fields[0].value;return n.fail(kl,`${a(e)} > ${a(t)}`)}return xe((function*(){let a=yield*ar(n,i);return yield*Se(n,i,a.slice(Jn(e),Jn(t)+1))})())},"EnumSet.complementOf(EnumSet)":(n,[e])=>{if(e===null)return n.fail(Ve,\'Cannot invoke "java.util.EnumSet.clone()" because "s" is null\');let t=e;return xe((function*(){let i=yield*ar(n,t.enumClass),a=new Set(t.elements(n));return yield*Se(n,t.enumClass,i.filter(r=>!a.has(r)))})())},"EnumSet.copyOf(EnumSet)":(n,[e])=>e===null?n.fail(Ve,\'Cannot invoke "java.util.EnumSet.clone()" because "s" is null\'):xe(Se(n,e.enumClass,e.elements(n))),"EnumSet.copyOf(Collection)":(n,[e])=>{if(e===null)return n.fail(Ve,\'Cannot invoke "java.util.Collection.isEmpty()" because "c" is null\');if(e instanceof rr)return xe(Se(n,e.enumClass,e.elements(n)));let t=e.elements(n,!0);return t.length?xe(Se(n,dt(n,t[0]),t)):n.fail(kl,"Collection is empty")}};var gr="java.io.IOException",De="java.lang.NullPointerException",mr="Stream closed",Yc=8192;function Zc(n,e,t,i){(e<0||t<0||e+t>i||e+t<0)&&n.fail("java.lang.IndexOutOfBoundsException",`Range [${e}, ${e} + ${t}) out of bounds for length ${i}`)}function ur(n,e,t){return e===null?n.fail(De,`Cannot read the array length because "${t}" is null`):la(e)}function Xc(n,e,t,i,a){if(e===null)return n.fail(De,`Cannot read the array length because "${a}" is null`);let r=e.data;Zc(n,t,i,r.length);let s="";for(let l=t;l<t+i;l+=8192)s+=String.fromCharCode(...r.subarray(l,Math.min(l+8192,t+i)));return s}function Qc(n,e,t,i,a){if(e===null)return n.fail(De,`Cannot invoke "String.length()" because "${a}" is null`);let r=e.value;return i<=0?"":((t<0||t+i>r.length)&&n.fail("java.lang.StringIndexOutOfBoundsException",`Range [${t}, ${t+i}) out of bounds for length ${r.length}`),r.slice(t,t+i))}function eh(n,e,t,i){let a=e===null?"null":e instanceof h.JString?e.value:e.text;return(t<0||i>a.length||t>i)&&n.fail("java.lang.StringIndexOutOfBoundsException",`begin ${t}, end ${i}, length ${a.length}`),a.slice(t,i)}function th(n){return n===null?"null":n instanceof h.JString?n.value:n.text}var cr=class extends b{className="java.io.PrintStream";stream;#e=!1;constructor(e,t){super(e),this.stream=t}write(e,t){e.streamClosed(this.stream)?this.#e=!0:e.print(this.stream,t)}flush(e){e.streamClosed(this.stream)&&(this.#e=!0)}close(e){e.closeStream(this.stream)}checkError(e){return this.flush(e),this.#e}},Pc=new WeakMap;function kt(n,e){let t=Pc.get(n);return t||Pc.set(n,t={out:new cr(n.hash(),"out"),err:new cr(n.hash(),"err")}),t[e]}var Ti=class extends b{putChar(e,t){return this.put(e,String.fromCharCode(t&65535))}putChars(e,t){return this.put(e,t)}#e(e,t){t||e.fail(gr,mr)}"write(int)"(e,t){return this.#e(e,this.putChar(e,t))}"write(String)"(e,t){return t===null?e.fail(De,\'Cannot invoke "String.length()" because "str" is null\'):this.#e(e,this.put(e,t.value))}"write(String,int,int)"(e,t,i,a){return this.#e(e,this.put(e,Qc(e,t,i,a,"str")))}"write(char[])"(e,t){return this.#e(e,this.putChars(e,ur(e,t,"cbuf")))}"write(char[],int,int)"(e,t,i,a){return this.#e(e,this.putChars(e,Xc(e,t,i,a,"cbuf")))}"append(CharSequence)"(e,t){return this.#e(e,this.put(e,th(t))),this}"append(CharSequence,int,int)"(e,t,i,a){return this.#e(e,this.put(e,eh(e,t,i,a))),this}"append(char)"(e,t){return this.#e(e,this.putChar(e,t)),this}"flush()"(e){return this.#e(e,this.flushAll(e))}"close()"(e){this.shut(e)}},of=/^[\\x00-\\x7f]*$/,Uc=8192,wi=class extends Ti{className="java.io.OutputStreamWriter";#e;#t=512;#n="";#i=0;#a="";#r=!1;constructor(e,t){super(e),this.#e=t}#s(e){this.#n&&(this.#e.write(e,this.#n),this.#n="",this.#i=0)}put(e,t){if(this.#r)return!1;let i=t.length;if(!i)return!0;if(i*3>this.#t&&this.#t<Uc&&(this.#s(e),this.#t=Math.min(Uc,i*3)),this.#a&&(t=this.#a+t,this.#a=""),e.charge(t.length>>>4),of.test(t)){let a=0;for(;a<t.length;){let r=this.#t-this.#i;if(r===0){this.#s(e);continue}let s=Math.min(r,t.length-a);this.#n+=s===t.length?t:t.slice(a,a+s),this.#i+=s,a+=s}return!0}for(let a=0;a<t.length;a++){let r=t.charCodeAt(a),s,l;if(r>=55296&&r<=56319){if(a+1===t.length){this.#a=t[a];break}let o=t.charCodeAt(a+1);o>=56320&&o<=57343?(s=t.slice(a,a+2),l=4,a++):(s="?",l=1)}else r>=56320&&r<=57343?(s="?",l=1):(s=t[a],l=r<128?1:r<2048?2:3);this.#i+l>this.#t&&this.#s(e),this.#n+=s,this.#i+=l}return!0}flushAll(e){return this.#r?!1:(this.#s(e),this.#e.flush(e),!0)}shut(e){this.#r||(this.#a&&(this.#a="",this.put(e,"?")),this.#s(e),this.#e.close(e),this.#r=!0)}get printStream(){return this.#e}},Pn=class extends Ti{className="java.io.BufferedWriter";#e;#t;#n="";#i=!1;constructor(e,t,i){super(e),this.#e=t,this.#t=i}#a(e){if(!this.#n)return!0;let t=this.#n;return this.#n="",this.#e.put(e,t)}put(e,t){if(this.#i)return!1;let i=0;for(;i<t.length;){let a=Math.min(this.#t-this.#n.length,t.length-i);if(this.#n+=a===t.length?t:t.slice(i,i+a),i+=a,this.#n.length>=this.#t&&!this.#a(e))return!1}return!0}putChar(e,t){return this.#i||this.#n.length>=this.#t&&!this.#a(e)?!1:(this.#n+=String.fromCharCode(t&65535),!0)}putChars(e,t){return this.#i?!1:t.length<this.#t?this.put(e,t):this.#a(e)&&this.#e.putChars(e,t)}flushAll(e){return this.#i?!1:this.#a(e)&&this.#e.flushAll(e)}shut(e){this.#i||(this.#a(e),this.#e.shut(e),this.#i=!0)}get sink(){return this.#e}"newLine()"(e){this.put(e,`\n`)||e.fail(gr,mr)}},hr=class extends Ti{className="java.io.StringWriter";text="";put(e,t){return e.checkString(this.text.length+t.length),this.text+=t,!0}flushAll(){return!0}shut(){}*javaString(){return this.text}"write(String)"(e,t){this.put(e,t===null?"null":t.value)}},dr=class extends b{className="java.io.PrintWriter";#e;#t;#n;#i=!1;constructor(e,t,i,a){super(e),this.#e=t,this.#t=i,this.#n=a}#a(e,t){(!this.#e||!this.#e.put(e,t))&&(this.#i=!0)}#r(e,t){(!this.#e||!this.#e.putChar(e,t))&&(this.#i=!0)}#s(e,t){(!this.#e||!this.#e.putChars(e,t))&&(this.#i=!0)}#l(e){(!this.#e||!this.#e.flushAll(e))&&(this.#i=!0)}#u(e){this.#a(e,`\n`),this.#t&&this.#l(e)}#o(e,t){this.#a(e,t)}#h(e,t){return this.#a(e,t),this.#u(e)}"print(boolean)"(e,t){return this.#o(e,t?"true":"false")}"print(char)"(e,t){this.#r(e,t)}"print(int)"(e,t){return this.#o(e,String(t))}"print(long)"(e,t){return this.#o(e,String(t))}"print(float)"(e,t){return this.#o(e,h.floatToString(t))}"print(double)"(e,t){return this.#o(e,h.doubleToString(t))}"print(char[])"(e,t){this.#s(e,ur(e,t,"buf"))}"print(String)"(e,t){return this.#o(e,t===null?"null":t.value)}"print(Object)"(e,t){return c(V(e,t),i=>this.#o(e,i))}"println()"(e){return this.#u(e)}"println(boolean)"(e,t){return this.#h(e,t?"true":"false")}"println(char)"(e,t){return this.#r(e,t),this.#u(e)}"println(int)"(e,t){return this.#h(e,String(t))}"println(long)"(e,t){return this.#h(e,String(t))}"println(float)"(e,t){return this.#h(e,h.floatToString(t))}"println(double)"(e,t){return this.#h(e,h.doubleToString(t))}"println(char[])"(e,t){return this.#s(e,ur(e,t,"buf")),this.#u(e)}"println(String)"(e,t){return this.#h(e,t===null?"null":t.value)}"println(Object)"(e,t){return c(V(e,t),i=>this.#h(e,i))}"printf(String,Object[])"(e,t,i){return c(tn(e,t,i),a=>(this.#a(e,a),this.#t&&this.#l(e),this))}"format(String,Object[])"(e,t,i){return this["printf(String,Object[])"](e,t,i)}"write(int)"(e,t){this.#r(e,t)}"write(String)"(e,t){return t===null?e.fail(De,\'Cannot invoke "String.length()" because "s" is null\'):this.#o(e,t.value)}"write(String,int,int)"(e,t,i,a){return this.#o(e,Qc(e,t,i,a,"s"))}"write(char[])"(e,t){this.#s(e,ur(e,t,"buf"))}"write(char[],int,int)"(e,t,i,a){this.#s(e,Xc(e,t,i,a,"buf"))}"append(CharSequence)"(e,t){return this.#a(e,th(t)),this}"append(CharSequence,int,int)"(e,t,i,a){return this.#a(e,eh(e,t,i,a)),this}"append(char)"(e,t){return this.#r(e,t),this}"flush()"(e){this.#l(e)}"close()"(e){this.#e&&(this.#e.shut(e),this.#e=null)}"checkError()"(e){return this.#e&&this.#l(e),f(this.#i||this.#n!==null&&this.#n.checkError(e))}};function nh(n){return n instanceof wi?n.printStream:n instanceof Pn?nh(n.sink):null}var Li=class extends b{closed=!1;claim(e,t){}exhausted(e){}open(e){this.closed&&e.fail(gr,mr)}readChar(e,t){this.open(e),this.claim(e,t);let i=this.text(e),a=this.position(e);return a>=i.length?(this.exhausted(e),-1):(this.seek(e,a+1),i.charCodeAt(a))}"read()"(e){return this.readChar(e,this)}"read(char[])"(e,t){return t===null?e.fail(De,\'Cannot read the array length because "cbuf" is null\'):this["read(char[],int,int)"](e,t,0,t.data.length)}"read(char[],int,int)"(e,t,i,a){if(this.open(e),t===null)return e.fail(De,\'Cannot read the array length because "cbuf" is null\');let r=t.data;if(Zc(e,i,a,r.length),a===0)return 0;this.claim(e,this);let s=this.text(e),l=this.position(e);if(l>=s.length)return this.exhausted(e),-1;let o=Math.min(a,s.length-l);for(let u=0;u<o;u++)r[i+u]=s.charCodeAt(l+u);return e.charge(o),this.seek(e,l+o),o}"ready()"(e){return this.open(e),f(this.position(e)<this.text(e).length||this.readyAtEnd)}"skip(long)"(e,t){let i=Number(t);i<0&&e.fail("java.lang.IllegalArgumentException","skip value is negative"),this.open(e),this.claim(e,this);let a=this.position(e),r=Math.min(i,this.text(e).length-a);return this.seek(e,a+r),h.normLong(BigInt(r))}"close()"(e){this.closed=!0}},Ul=class extends Li{className="java.io.InputStreamReader";readyAtEnd=!1;text(e){return e.stdin()}position(e){return ir(e).position}seek(e,t){ir(e).position=t}claim(e,t){ir(e,t)}exhausted(e){e.inputExhausted()}},_l=class extends Li{className="java.io.StringReader";readyAtEnd=!0;#e;#t=0;constructor(e,t){super(e),this.#e=t}text(){return this.#e}position(){return this.#t}seek(e,t){this.#t=t}},fr=class extends Li{className="java.io.BufferedReader";#e;constructor(e,t){super(e),this.#e=t}get readyAtEnd(){return this.#e.readyAtEnd}text(e){return this.#e.text(e)}position(e){return this.#e.position(e)}seek(e,t){this.#e.seek(e,t)}claim(e,t){this.#e.claim(e,t)}exhausted(e){this.#e.exhausted(e)}open(e){(this.closed||this.#e.closed)&&e.fail(gr,mr)}line(e){this.open(e),this.claim(e,this);let t=this.text(e),i=this.position(e);if(i>=t.length)return this.exhausted(e),null;let a=i;for(;a<t.length;){let s=t.charCodeAt(a);if(s===10||s===13)break;a++}e.charge(a-i);let r=a;return r<t.length&&(r+=t.charCodeAt(r)===13&&t.charCodeAt(r+1)===10?2:1),this.seek(e,r),t.slice(i,a)}"readLine()"(e){let t=this.line(e);return t===null?null:new h.JString(t)}"lines()"(e){return Tt(e,()=>{let t=[];for(let i=this.line(e);i!==null;i=this.line(e))t.push(new h.JString(i));return e.allocate(t.length),t})}"close()"(e){this.closed=!0,this.#e.closed=!0}},uf=` \n\\r\\f`,Kl=class extends b{className="java.util.StringTokenizer";#e;#t;#n;#i=0;constructor(e,t,i,a){super(e),this.#e=t,this.#t=i,this.#n=a}#a(e){return this.#t.indexOf(String.fromCharCode(e))>=0}#r(e,t){this.#t===null&&e.fail(De,null);let i=t;if(!this.#n)for(;i<this.#e.length&&this.#a(this.#e.charCodeAt(i));)i++;return i}#s(e){let t=e;for(;t<this.#e.length&&!this.#a(this.#e.charCodeAt(t));)t++;return this.#n&&t===e&&t<this.#e.length&&t++,t}#l(e){let t=this.#r(e,this.#i);t>=this.#e.length&&e.fail("java.util.NoSuchElementException",null);let i=this.#s(t);return e.charge(i-this.#i),this.#i=i,this.#e.slice(t,i)}"hasMoreTokens()"(e){return f(this.#r(e,this.#i)<this.#e.length)}"hasMoreElements()"(e){return this["hasMoreTokens()"](e)}"nextToken()"(e){return new h.JString(this.#l(e))}"nextElement()"(e){return new h.JString(this.#l(e))}"nextToken(String)"(e,t){return t===null?e.fail(De,null):(this.#t=t.value,new h.JString(this.#l(e)))}"countTokens()"(e){let t=0;for(let i=this.#r(e,this.#i);i<this.#e.length;i=this.#r(e,i))i=this.#s(i),t++;return e.charge(this.#e.length-this.#i),t}},$l=1,Ri=2,sr=4,Ii=8,Fl=16,lr=-1,Jl=10,_c=-2,Kc=-3,Gl=-4,Oi=-5,zc=-6,zl=class extends b{className="java.io.StreamTokenizer";#e;#t=new Uint8Array(256);#n=Oi;#i=!1;#a=!1;#r=!1;#s=1;ttype=Gl;nval=0;sval=null;constructor(e,t){super(e),this.#e=t,this.#u(97,122),this.#u(65,90),this.#u(160,255),this.#o(0,32),this.#t[47]=Fl,this.#t[34]=Ii,this.#t[39]=Ii,this.#h()}#l(e,t){return[Math.max(e,0),Math.min(t,255)]}#u(e,t){let[i,a]=this.#l(e,t);for(let r=i;r<=a;r++)this.#t[r]|=sr}#o(e,t){let[i,a]=this.#l(e,t);for(let r=i;r<=a;r++)this.#t[r]=$l}#h(){for(let e=48;e<=57;e++)this.#t[e]|=Ri;this.#t[46]|=Ri,this.#t[45]|=Ri}#d(e){return e<256?this.#t[e]:sr}#c(e){return this.#e.readChar(e,this.#e)}next(e){if(this.#i)return this.#i=!1,this.ttype;this.sval=null;let t=this.#n;if(t===zc){if(t=this.#c(e),t<0)return this.ttype=lr;t===10&&(t=Oi)}if(t===Oi&&(t=this.#c(e)),t<0)return this.ttype=lr;this.ttype=t,this.#n=Oi;let i=this.#d(t);for(;i&$l;){if(t===13){if(this.#s++,this.#a)return this.#n=zc,this.ttype=Jl;t=this.#c(e),t===10&&(t=this.#c(e))}else{if(t===10&&(this.#s++,this.#a))return this.ttype=Jl;t=this.#c(e)}if(t<0)return this.ttype=lr;i=this.#d(t)}if(i&Ri){let a=!1;if(t===45){if(t=this.#c(e),t!==46&&(t<48||t>57))return this.#n=t,this.ttype=45;a=!0}let r=0,s=0,l=0;for(;;){if(t===46&&l===0)l=1;else if(t>=48&&t<=57)r=r*10+(t-48),s+=l;else break;t=this.#c(e)}if(this.#n=t,s!==0){let o=10;for(s--;s>0;s--)o*=10;r=r/o}return this.nval=a?-r:r,this.ttype=_c}if(i&sr){let a="";do a+=String.fromCharCode(t),t=this.#c(e),i=t<0?$l:this.#d(t);while(i&(sr|Ri));return e.charge(a.length),this.#n=t,this.sval=this.#r?a.toLowerCase():a,this.ttype=Kc}if(i&Ii){this.ttype=t;let a="",r=this.#c(e);for(;r>=0&&r!==this.ttype&&r!==10&&r!==13;){if(r===92){t=this.#c(e);let s=t;if(t>=48&&t<=55){t-=48;let l=this.#c(e);l>=48&&l<=55?(t=(t<<3)+(l-48),l=this.#c(e),l>=48&&l<=55&&s<=51?(t=(t<<3)+(l-48),r=this.#c(e)):r=l):r=l}else{switch(t){case 97:t=7;break;case 98:t=8;break;case 102:t=12;break;case 110:t=10;break;case 114:t=13;break;case 116:t=9;break;case 118:t=11;break}r=this.#c(e)}}else t=r,r=this.#c(e);t>=0&&(a+=String.fromCharCode(t))}return e.charge(a.length),this.#n=r===this.ttype?Oi:r,this.sval=a,this.ttype}if(i&Fl){for(;(t=this.#c(e))!==10&&t!==13&&t>=0;);return this.#n=t,this.next(e)}return this.ttype=t}*javaString(){let e;switch(this.ttype){case lr:e="EOF";break;case Jl:e="EOL";break;case Kc:e=this.sval??"null";break;case _c:e=`n=${h.doubleToString(this.nval)}`;break;case Gl:e="NOTHING";break;default:e=this.ttype<256&&this.#t[this.ttype]&Ii?this.sval??"null":`\'${String.fromCharCode(this.ttype)}\'`}return`Token[${e}], line ${this.#s}`}"nextToken()"(e){return this.next(e)}"pushBack()"(){this.ttype!==Gl&&(this.#i=!0)}"lineno()"(){return this.#s}"resetSyntax()"(){this.#t.fill(0)}"wordChars(int,int)"(e,t,i){this.#u(t,i)}"whitespaceChars(int,int)"(e,t,i){this.#o(t,i)}"ordinaryChars(int,int)"(e,t,i){let[a,r]=this.#l(t,i);for(let s=a;s<=r;s++)this.#t[s]=0}"ordinaryChar(int)"(e,t){t>=0&&t<256&&(this.#t[t]=0)}"commentChar(int)"(e,t){t>=0&&t<256&&(this.#t[t]=Fl)}"quoteChar(int)"(e,t){t>=0&&t<256&&(this.#t[t]=Ii)}"parseNumbers()"(){this.#h()}"eolIsSignificant(boolean)"(e,t){this.#a=t===1}"lowerCaseMode(boolean)"(e,t){this.#r=t===1}};function Bt(n,e){return e===null?n.fail(De,null):e}function Hc(n,e){return e<=0&&n.fail("java.lang.IllegalArgumentException","Buffer size <= 0"),e}function or(n,e){return Bt(n,e)}function qc(n,e,t){return new dr(n.hash(),e,t,nh(e))}function Wc(n,e,t){let i=Bt(n,e),a=new Pn(n.hash(),new wi(n.hash(),i),Yc);return new dr(n.hash(),a,t,i)}function Pl(n,e,t,i){return e===null?n.fail(De,\'Cannot invoke "String.length()" because "str" is null\'):new Kl(n.hash(),e.value,t,i)}var ih={"System.out":n=>kt(n,"out"),"System.err":n=>kt(n,"err"),"PrintStream.out.flush()":n=>{kt(n,"out").flush(n)},"PrintStream.err.flush()":n=>{kt(n,"err").flush(n)},"PrintStream.out.close()":n=>{kt(n,"out").close(n)},"PrintStream.err.close()":n=>{kt(n,"err").close(n)},"PrintStream.out.checkError()":n=>f(kt(n,"out").checkError(n)),"PrintStream.err.checkError()":n=>f(kt(n,"err").checkError(n)),"InputStreamReader.<init>(InputStream)":(n,[e])=>(Bt(n,e),new Ul(n.hash())),"StringReader.<init>(String)":(n,[e])=>new _l(n.hash(),Bt(n,e).value),"BufferedReader.<init>(Reader)":(n,[e])=>new fr(n.hash(),Bt(n,e)),"BufferedReader.<init>(Reader,int)":(n,[e,t])=>(Bt(n,e),Hc(n,t),new fr(n.hash(),e)),"OutputStreamWriter.<init>(OutputStream)":(n,[e])=>new wi(n.hash(),Bt(n,e)),"BufferedWriter.<init>(Writer)":(n,[e])=>new Pn(n.hash(),or(n,e),Yc),"BufferedWriter.<init>(Writer,int)":(n,[e,t])=>{let i=or(n,e);return new Pn(n.hash(),i,Hc(n,t))},"StringWriter.<init>()":n=>new hr(n.hash()),"StringWriter.<init>(int)":(n,[e])=>(e<0&&n.fail("java.lang.IllegalArgumentException","Negative buffer size"),new hr(n.hash())),"PrintWriter.<init>(Writer)":(n,[e])=>qc(n,or(n,e),!1),"PrintWriter.<init>(Writer,boolean)":(n,[e,t])=>qc(n,or(n,e),t===1),"PrintWriter.<init>(OutputStream)":(n,[e])=>Wc(n,e,!1),"PrintWriter.<init>(OutputStream,boolean)":(n,[e,t])=>Wc(n,e,t===1),"StreamTokenizer.<init>(Reader)":(n,[e])=>new zl(n.hash(),Bt(n,e)),"StreamTokenizer#ttype":(n,[e])=>e.ttype,"StreamTokenizer#nval":(n,[e])=>e.nval,"StreamTokenizer#sval":(n,[e])=>{let t=e.sval;return t===null?null:new h.JString(t)},"StringTokenizer.<init>(String)":(n,[e])=>Pl(n,e,uf,!1),"StringTokenizer.<init>(String,String)":(n,[e,t])=>Pl(n,e,t===null?null:t.value,!1),"StringTokenizer.<init>(String,String,boolean)":(n,[e,t,i])=>Pl(n,e,t===null?null:t.value,i===1)};var Un="java.lang.ArithmeticException",me="java.lang.IllegalArgumentException",oh=-2147483648,Yl=2147483647,uh=-(1n<<63n),cf=(1n<<63n)-1n,y=n=>BigInt(n),vr=n=>h.normLong(BigInt.asIntN(64,n));function on(n,e){return(e<oh||e>Yl)&&n.fail(Un,"integer overflow"),e}function un(n,e){return(e<uh||e>cf)&&n.fail(Un,"long overflow"),h.normLong(e)}function yr(n,e,t){t===0n&&n.fail(Un,"/ by zero");let i=e/t;return e%t!==0n&&e<0n!=t<0n?i-1n:i}function Hl(n,e,t){return e-yr(n,e,t)*t}function Sr(n,e,t){t===0n&&n.fail(Un,"/ by zero");let i=e/t;return e%t!==0n&&e<0n==t<0n?i+1n:i}function ql(n,e,t){return e-Sr(n,e,t)*t}var pr=new DataView(new ArrayBuffer(8));function _n(n,e){if(Number.isNaN(n)||n===(e?1/0:-1/0))return n;if(n===0)return e?Number.MIN_VALUE:-Number.MIN_VALUE;pr.setFloat64(0,n);let t=pr.getBigInt64(0);return t+=n>0===e?1n:-1n,pr.setBigInt64(0,t),pr.getFloat64(0)}function br(n,e){if(Number.isNaN(n)||n===(e?1/0:-1/0))return n;if(n===0)return e?h.intBitsToFloat(1):-h.intBitsToFloat(1);let t=h.floatToIntBits(n);return h.intBitsToFloat(t+(n>0===e?1:-1))}function hf(n){if(Number.isNaN(n))return NaN;if(!Number.isFinite(n))return 1/0;let e=Math.abs(n);return e===Number.MAX_VALUE?e-_n(e,!1):_n(e,!0)-e}function df(n){if(!Number.isFinite(n)||Math.abs(n)>=2**52)return n;let e=Math.floor(n),t=n-e,i=t<.5?e:t>.5?e+1:e%2===0?e:e+1;return i===0&&(n<0||Object.is(n,-0))?-0:i}var ah=new WeakMap;function ch(n){let e=ah.get(n);return e||ah.set(n,e={identity:new WeakMap}),e}var N=n=>n,hh={"Math.pow(double,double)":(n,[e,t])=>Math.pow(N(e),N(t)),"Math.exp(double)":(n,[e])=>Math.exp(N(e)),"Math.log(double)":(n,[e])=>Math.log(N(e)),"Math.log10(double)":(n,[e])=>Math.log10(N(e)),"Math.sin(double)":(n,[e])=>Math.sin(N(e)),"Math.cos(double)":(n,[e])=>Math.cos(N(e)),"Math.tan(double)":(n,[e])=>Math.tan(N(e)),"Math.asin(double)":(n,[e])=>Math.asin(N(e)),"Math.acos(double)":(n,[e])=>Math.acos(N(e)),"Math.atan(double)":(n,[e])=>Math.atan(N(e)),"Math.atan2(double,double)":(n,[e,t])=>Math.atan2(N(e),N(t)),"Math.sinh(double)":(n,[e])=>Math.sinh(N(e)),"Math.cosh(double)":(n,[e])=>Math.cosh(N(e)),"Math.tanh(double)":(n,[e])=>Math.tanh(N(e)),"Math.cbrt(double)":(n,[e])=>Math.cbrt(N(e)),"Math.hypot(double,double)":(n,[e,t])=>Math.hypot(N(e),N(t)),"Math.expm1(double)":(n,[e])=>Math.expm1(N(e)),"Math.log1p(double)":(n,[e])=>Math.log1p(N(e)),"Math.signum(double)":(n,[e])=>N(e)>0?1:N(e)<0?-1:N(e),"Math.toRadians(double)":(n,[e])=>N(e)*.017453292519943295,"Math.toDegrees(double)":(n,[e])=>N(e)*57.29577951308232,"Math.rint(double)":(n,[e])=>df(N(e)),"Math.ulp(double)":(n,[e])=>hf(N(e)),"Math.nextUp(double)":(n,[e])=>_n(N(e),!0),"Math.nextDown(double)":(n,[e])=>_n(N(e),!1),"Math.signum(float)":(n,[e])=>N(e)>0?1:N(e)<0?-1:N(e),"Math.ulp(float)":(n,[e])=>{let t=Math.abs(N(e));return Number.isNaN(t)?NaN:Number.isFinite(t)?t===34028234663852886e22?t-br(t,!1):br(t,!0)-t:1/0},"Math.nextUp(float)":(n,[e])=>br(N(e),!0),"Math.nextDown(float)":(n,[e])=>br(N(e),!1),"Math.random()":n=>{let e=ch(n);return e.random??=new ji(n.hash(),n.seed()),e.random.nextDouble()},"Math.floorDiv(int,int)":(n,[e,t])=>Number(BigInt.asIntN(32,yr(n,y(e),y(t)))),"Math.floorDiv(long,int)":(n,[e,t])=>vr(yr(n,y(e),y(t))),"Math.floorDiv(long,long)":(n,[e,t])=>vr(yr(n,y(e),y(t))),"Math.floorMod(int,int)":(n,[e,t])=>Number(Hl(n,y(e),y(t))),"Math.floorMod(long,int)":(n,[e,t])=>Number(Hl(n,y(e),y(t))),"Math.floorMod(long,long)":(n,[e,t])=>h.normLong(Hl(n,y(e),y(t))),"Math.ceilDiv(int,int)":(n,[e,t])=>Number(BigInt.asIntN(32,Sr(n,y(e),y(t)))),"Math.ceilDiv(long,int)":(n,[e,t])=>vr(Sr(n,y(e),y(t))),"Math.ceilDiv(long,long)":(n,[e,t])=>vr(Sr(n,y(e),y(t))),"Math.ceilMod(int,int)":(n,[e,t])=>Number(ql(n,y(e),y(t))),"Math.ceilMod(long,int)":(n,[e,t])=>Number(ql(n,y(e),y(t))),"Math.ceilMod(long,long)":(n,[e,t])=>h.normLong(ql(n,y(e),y(t))),"Math.addExact(int,int)":(n,[e,t])=>on(n,N(e)+N(t)),"Math.addExact(long,long)":(n,[e,t])=>un(n,y(e)+y(t)),"Math.subtractExact(int,int)":(n,[e,t])=>on(n,N(e)-N(t)),"Math.subtractExact(long,long)":(n,[e,t])=>un(n,y(e)-y(t)),"Math.multiplyExact(int,int)":(n,[e,t])=>on(n,Number(y(e)*y(t))),"Math.multiplyExact(long,int)":(n,[e,t])=>un(n,y(e)*y(t)),"Math.multiplyExact(long,long)":(n,[e,t])=>un(n,y(e)*y(t)),"Math.negateExact(int)":(n,[e])=>on(n,-N(e)),"Math.negateExact(long)":(n,[e])=>un(n,-y(e)),"Math.incrementExact(int)":(n,[e])=>on(n,N(e)+1),"Math.incrementExact(long)":(n,[e])=>un(n,y(e)+1n),"Math.decrementExact(int)":(n,[e])=>on(n,N(e)-1),"Math.decrementExact(long)":(n,[e])=>un(n,y(e)-1n),"Math.toIntExact(long)":(n,[e])=>on(n,Number(y(e))),"Math.absExact(int)":(n,[e])=>(e===oh&&n.fail(Un,"Overflow to represent absolute value of Integer.MIN_VALUE"),Math.abs(N(e))),"Math.absExact(long)":(n,[e])=>(y(e)===uh&&n.fail(Un,"Overflow to represent absolute value of Long.MIN_VALUE"),h.normLong(y(e)<0n?-y(e):y(e))),"Math.clamp(long,int,int)":(n,[e,t,i])=>(N(t)>N(i)&&n.fail(me,`${t} > ${i}`),Number(y(e)<y(t)?y(t):y(e)>y(i)?y(i):y(e))),"Math.clamp(long,long,long)":(n,[e,t,i])=>(y(t)>y(i)&&n.fail(me,`${t} > ${i}`),h.normLong(y(e)<y(t)?y(t):y(e)>y(i)?y(i):y(e))),"Math.clamp(double,double,double)":(n,[e,t,i])=>(Number.isNaN(N(t))&&n.fail(me,"min is NaN"),Number.isNaN(N(i))&&n.fail(me,"max is NaN"),N(t)>N(i)&&n.fail(me,`${h.doubleToString(N(t))} > ${h.doubleToString(N(i))}`),Math.min(N(i),Math.max(N(e),N(t)))),"Math.clamp(float,float,float)":(n,[e,t,i])=>(Number.isNaN(N(t))&&n.fail(me,"min is NaN"),Number.isNaN(N(i))&&n.fail(me,"max is NaN"),N(t)>N(i)&&n.fail(me,`${h.floatToString(N(t))} > ${h.floatToString(N(i))}`),Math.min(N(i),Math.max(N(e),N(t))))},ff={"[I":"int","[J":"long","[D":"double","[C":"char","[Z":"boolean"};function Nr(n){return`${ff[n.descriptor]??"object array"}[${n.data.length}]`}var gf={I:"int",J:"long",D:"double",C:"char",Z:"boolean"};function dh(n){return n.startsWith("[")?`${dh(n.slice(1))}[]`:n.startsWith("L")?n.slice(1,-1):gf[n]??n}var Cr=n=>dh(n.descriptor);function Wl(n){return n instanceof h.JString?"java.lang.String":n instanceof h.JBox?hn[n.kind]:n instanceof h.JArray?n.descriptor:n.className}function mf(n,e,t,i,a,r){let s="java.lang.ArrayStoreException",l="java.lang.ArrayIndexOutOfBoundsException";if(e===null||i===null)return n.fail("java.lang.NullPointerException",null);if(!(e instanceof h.JArray))return n.fail(s,`arraycopy: source type ${Wl(e)} is not an array`);if(!(i instanceof h.JArray))return n.fail(s,`arraycopy: destination type ${Wl(i)} is not an array`);let o=L=>L.descriptor.length===2;if((o(e)||o(i))&&e.descriptor!==i.descriptor){let L=A=>o(A)?Cr(A):"object array[]";return n.fail(s,`arraycopy: type mismatch: can not copy ${L(e)} into ${L(i)}`)}if(t<0)return n.fail(l,`arraycopy: source index ${t} out of bounds for ${Nr(e)}`);if(a<0)return n.fail(l,`arraycopy: destination index ${a} out of bounds for ${Nr(i)}`);if(r<0)return n.fail(l,`arraycopy: length ${r} is negative`);if(t+r>e.data.length)return n.fail(l,`arraycopy: last source index ${t+r} out of bounds for ${Nr(e)}`);if(a+r>i.data.length)return n.fail(l,`arraycopy: last destination index ${a+r} out of bounds for ${Nr(i)}`);let u=e.descriptor.slice(1),d=i.descriptor.slice(1),g="Ljava.lang.Object;";if(!o(e)&&u!==d&&d!==g&&u!==g)return n.fail(s,`arraycopy: type mismatch: can not copy ${Cr(e)} into ${Cr(i)}`);n.charge(r>>>2);let v=e.data,m=i.data,x=Array.prototype.slice.call(v,t,t+r),te=u!==d&&d!==g?d.startsWith("L")?d.slice(1,-1):d:null;for(let L=0;L<x.length;L++){let A=x[L];if(te&&A!==null&&typeof A=="object"&&Wl(A)!==te)return n.fail(s,`arraycopy: element type mismatch: can not cast one of the elements of ${Cr(e)} to the type of the destination array, ${te}`);m[a+L]=A}}var fh={"System.currentTimeMillis()":()=>h.normLong(BigInt(Date.now())),"System.nanoTime()":()=>h.normLong(BigInt(Math.round(globalThis.performance.now()*1e6))),"System.exit(int)":(n,[e])=>n.exit(e),"System.lineSeparator()":()=>new h.JString(`\n`),"System.identityHashCode(Object)":(n,[e])=>{if(e===null)return 0;if(typeof e=="object"&&"hash"in e)return e.hash;let t=ch(n).identity,i=t.get(e);return i===void 0&&t.set(e,i=n.hash()),i},"System.arraycopy(Object,int,Object,int,int)":(n,[e,t,i,a,r])=>mf(n,e,t,i,a,r),"PrintStream.out.printf(String,Object[])":(n,[e,t])=>rh(n,"out",e,t),"PrintStream.err.printf(String,Object[])":(n,[e,t])=>rh(n,"err",e,t)};function rh(n,e,t,i){return c(tn(n,t,i),a=>{n.print(e,a)})}var sh=0x5deece66dn,lh=(1n<<48n)-1n,ji=class extends b{className="java.util.Random";#e=0n;#t=null;constructor(e,t){super(e),this.setSeed(t)}setSeed(e){this.#e=(BigInt.asIntN(64,e)^sh)&lh,this.#t=null}next(e){return this.#e=this.#e*sh+0xbn&lh,Number(BigInt.asIntN(32,this.#e>>BigInt(48-e)))}nextInt(){return this.next(32)}nextBounded(e){let t=this.next(31),i=e-1;if((e&i)===0)return Number(BigInt(e)*BigInt(t)>>31n);for(let a=t;a-(t=a%e)+i>Yl;a=this.next(31));return t}nextLong(){return BigInt.asIntN(64,(BigInt(this.next(32))<<32n)+BigInt(this.next(32)))}nextDouble(){return Number((BigInt(this.next(26))<<27n)+BigInt(this.next(27)))*2**-53}nextGaussian(){if(this.#t!==null){let r=this.#t;return this.#t=null,r}let e,t,i;do e=2*this.nextDouble()-1,t=2*this.nextDouble()-1,i=e*e+t*t;while(i>=1||i===0);let a=Math.sqrt(-2*Math.log(i)/i);return this.#t=t*a,e*a}nextIntBetween(e,t){let i=this.nextInt(),a=t-e|0,r=a-1|0;if(a>0&&(a&r)===0)return(i&r)+e|0;if(a>0){for(let s=i>>>1;s+r-(i=s%a)>Yl;s=this.nextInt()>>>1);return i+e|0}for(;i<e||i>=t;)i=this.nextInt();return i}nextLongBetween(e,t){let i=this.nextLong(),a=BigInt.asIntN(64,t-e),r=a-1n;if(a>0n&&(a&r)===0n)return BigInt.asIntN(64,(i&r)+e);if(a>0n){for(let s=BigInt.asUintN(64,i)>>1n;BigInt.asIntN(64,s+r-(i=s%a))<0n;s=BigInt.asUintN(64,this.nextLong())>>1n);return BigInt.asIntN(64,i+e)}for(;i<e||i>=t;)i=this.nextLong();return i}"nextInt()"(){return this.nextInt()}"nextInt(int)"(e,t){return N(t)<=0?e.fail(me,"bound must be positive"):this.nextBounded(N(t))}"nextInt(int,int)"(e,t,i){return N(t)>=N(i)?e.fail(me,"bound must be greater than origin"):this.nextIntBetween(N(t),N(i))}"nextLong()"(){return h.normLong(this.nextLong())}"nextLong(long)"(e,t){return y(t)<=0n?e.fail(me,"bound must be positive"):h.normLong(this.nextLongBetween(0n,y(t)))}"nextLong(long,long)"(e,t,i){return y(t)>=y(i)?e.fail(me,"bound must be greater than origin"):h.normLong(this.nextLongBetween(y(t),y(i)))}"nextDouble()"(){return this.nextDouble()}"nextDouble(double)"(e,t){let i=N(t);if(!(i>0&&Number.isFinite(i)))return e.fail(me,"bound must be finite and positive");let a=this.nextDouble()*i;return a<i?a:_n(i,!1)}"nextDouble(double,double)"(e,t,i){let a=N(t),r=N(i);if(!(a<r&&Number.isFinite(r-a)))return e.fail(me,"bound must be greater than origin");let s=this.nextDouble()*(r-a)+a;return s<r?s:_n(r,!1)}"nextBoolean()"(){return f(this.next(1)!==0)}"nextFloat()"(){return this.next(24)/(1<<24)}"nextGaussian()"(){return this.nextGaussian()}"setSeed(long)"(e,t){this.setSeed(y(t))}},Zl={"Random.<init>()":n=>new ji(n.hash(),n.seed()),"Random.<init>(long)":(n,[e])=>new ji(n.hash(),y(e))};X["stream()"]=(n,e)=>Xs(n,e);X["parallelStream()"]=(n,e)=>Xs(n,e,!0);wa["chars()"]=(n,e)=>Wu(n,e);wa["lines()"]=(n,e)=>Tt(n,()=>nl(e.value).map(t=>new h.JString(t)));function vf(n){let e=ru[n.startsWith("compareTo(")?"compareTo":n],t=wa[n],i=n.slice(0,n.indexOf("(")),a=n.endsWith("()")?0:n.split(",").length,r=(s,l)=>{let o=l[0];if(o instanceof h.JObject&&o.base!==null){let d=n==="toString()"?s.toStringMethod(o):n==="hashCode()"?s.hashCodeMethod(o):n==="equals(Object)"?s.equalsMethod(o):s.overrideOf(o,n);return d<0?r(s,[o.base,...l.slice(1)]):(function*(){return yield{invoke:d,args:l}})()}if(o instanceof b&&!(o instanceof Fe)){let d=o[n];if(typeof d=="function")switch(l.length){case 1:return d.call(o,s);case 2:return d.call(o,s,l[1]);case 3:return d.call(o,s,l[1],l[2]);case 4:return d.call(o,s,l[1],l[2],l[3]);default:return d.call(o,s,...l.slice(1))}}if(o instanceof h.JObject){let d=s.methodOf(o,i,a);if(d<0){let g=X[n];if(g)return g(s,o,l.slice(1));throw new Error(`library: ${o.className} has no ${n}`)}return(function*(){return yield{invoke:d,args:l}})()}if(o instanceof h.JString){if(!t)throw new Error(`library: no ${n} on a String`);return t(s,o,l)}if(o instanceof h.JLambda)return pf(n,s,o,l);if(o instanceof h.JBox){if(!e)throw new Error(`library: no ${n} on a boxed value`);return e(s,o,l)}if(o instanceof Fe&&n===o.samKey)return c(o.call(s,l.slice(1)));let u=Reflect.get(o,n);if(typeof u!="function"&&o.opaque)return s.limitation(`${n.slice(0,n.indexOf("("))}() of an AbstractList subclass`);if(typeof u!="function"){let d=X[n];if(d)return d(s,o,l.slice(1));throw new Error(`library: ${o.className} has no ${n}`)}return u.call(o,s,...l.slice(1))};return r}function pf(n,e,t,i){if(n===t.samKey)return(function*(){return yield{invoke:t.method,args:[...t.captured,...i.slice(1)]}})();let a=X[n];if(a)return a(e,t,i.slice(1));switch(n){case"equals(Object)":return t===i[1]?1:0;case"hashCode()":return t.hash;default:return e.limitation(`${n} on a lambda`)}}function*bf(n,e){return e instanceof h.JLambda?n.limitation("printing a lambda"):yield*e.javaString(n)}var Nf=[[/^java\\.util\\.(ImmutableCollections\\$List(12|N)|Arrays\\$ArrayList|Collections\\$(EmptyList|SingletonList|CopiesList|UnmodifiableRandomAccessList|UnmodifiableList))$/,"java.util.List"],[/^java\\.util\\.(ImmutableCollections\\$Set(12|N)|ImmutableCollections\\$MapN\\$1|Collections\\$(EmptySet|SingletonSet|UnmodifiableSet|UnmodifiableMap\\$UnmodifiableEntrySet)|HashMap\\$(KeySet|EntrySet)|LinkedHashMap\\$Linked(KeySet|EntrySet)|AbstractMap\\$1)$/,"java.util.Set"],[/^java\\.util\\.(HashMap\\$Values|LinkedHashMap\\$LinkedValues|AbstractMap\\$2|Collections\\$UnmodifiableCollection)$/,"java.util.Collection"],[/^java\\.util\\.(ImmutableCollections\\$Map(1|N)|Collections\\$(EmptyMap|SingletonMap|UnmodifiableMap))$/,"java.util.Map"],[/^java\\.util\\.(HashMap\\$Node|KeyValueHolder|TreeMap\\$Entry|AbstractMap\\$SimpleImmutableEntry)$/,"java.util.Map$Entry"],[/^java\\.util\\.TreeMap\\$(AscendingSubMap|DescendingSubMap)$/,"java.util.NavigableMap"],[/^java\\.util\\.TreeMap\\$KeySet$/,"java.util.NavigableSet"],[/^java\\.util\\.TreeMap\\$(EntrySet|NavigableSubMap\\$EntrySetView)$/,"java.util.Set"],[/^java\\.util\\.TreeMap\\$Values$/,"java.util.Collection"],[/^java\\.util\\.(Regular|Jumbo)EnumSet$/,"java.util.EnumSet"],[/^java\\.io\\.PrintStream$/,"java.io.OutputStream"],[/(Iterator|Itr|\\$1|\\$2\\$1)$/,"java.util.Iterator"]];function Cf(n,e){for(let[t,i]of Nf)if(t.test(n))return[n,...e.get(i)];return[n,"java.lang.Object"]}var gh=n=>{io(n),Object.setPrototypeOf(b.prototype,n.JLibObject.prototype);let e=Oc(),t=new Map,i=(r,s)=>{s.add(r.qualifiedName);for(let l of r.supertypes)l.tag==="library"&&i(l.symbol,s)};for(let r of e.values()){let s=new Set;i(r,s),s.add("java.lang.Object"),t.set(r.qualifiedName,[...s])}let a={...Ji,...Sn,...ls,...Bo,...xc,..._o,...Co,...iu,...cc,...hc,...Nc,...Cc,...St,...U,...lc,...hh,...fh,...Zl,...Fc,...wc,...qu,...Ou,...Gc,...ih};for(let r of e.values())for(let s of[...r.methods,...r.constructors])if(!(!s.native||a[s.native])){if(s.isStatic||s.name==="<init>")throw new Error(`library: no native for ${s.native}`);a[s.native]=vf(s.native)}return os.make=r=>Zl["Random.<init>()"](r,[]),a["Iterable.iterator"]=a["iterator()"],a["Iterator.hasNext"]=a["hasNext()"],a["Iterator.next"]=a["next()"],{classes:e,natives:a,toString:(r,s)=>bf(r,s),typesOf:r=>t.get(r)??Cf(r,t),newList:(r,s)=>{let l=new pe(r.hash());return r.allocate(s.length),l.es.push(...s),l},listItems:r=>r instanceof pe?r.es:null}};globalThis.javaOnlineCompilerLibrary=gh;})();\n';export{e as JAVA_LIBRARY_SOURCE};