/* kaitai_struct_compiler 0.9-SNAPSHOT20210430.133743.43426dd1 */ 'use strict'; /* Scala.js runtime support * Copyright 2013 LAMP/EPFL * Author: Sébastien Doeraene */ /* ---------------------------------- * * The top-level Scala.js environment * * ---------------------------------- */ // Get the environment info const $env = (typeof __ScalaJSEnv === "object" && __ScalaJSEnv) ? __ScalaJSEnv : {}; // Global scope const $g = (typeof $env["global"] === "object" && $env["global"]) ? $env["global"] : ((typeof global === "object" && global && global["Object"] === Object) ? global : this); $env["global"] = $g; $env["exportsNamespace"] = void 0; // Freeze the environment info $g["Object"]["freeze"]($env); // Linking info - must be in sync with scala.scalajs.runtime.LinkingInfo const $linkingInfo = { "envInfo": $env, "semantics": { "asInstanceOfs": 2, "arrayIndexOutOfBounds": 2, "moduleInit": 2, "strictFloats": false, "productionMode": true }, "assumingES6": true, "linkerVersion": "0.6.33", "globalThis": this }; $g["Object"]["freeze"]($linkingInfo); $g["Object"]["freeze"]($linkingInfo["semantics"]); // Snapshots of builtins and polyfills const $imul = $g["Math"]["imul"]; const $fround = $g["Math"]["fround"]; const $clz32 = $g["Math"]["clz32"]; // Other fields let $lastIDHash = 0; // last value attributed to an id hash code const $idHashCodeMap = new $g["WeakMap"](); // Core mechanism const $makeIsArrayOfPrimitive = function(primitiveData) { return function(obj, depth) { return !!(obj && obj.$classData && (obj.$classData.arrayDepth === depth) && (obj.$classData.arrayBase === primitiveData)); } }; /** Encode a property name for runtime manipulation * Usage: * env.propertyName({someProp:0}) * Returns: * "someProp" * Useful when the property is renamed by a global optimizer (like Closure) * but we must still get hold of a string of that name for runtime * reflection. */ const $propertyName = function(obj) { for (const prop in obj) return prop; }; // Runtime functions const $isScalaJSObject = function(obj) { return !!(obj && obj.$classData); }; const $noIsInstance = function(instance) { throw new $g["TypeError"]( "Cannot call isInstance() on a Class representing a raw JS trait/object"); }; const $makeNativeArrayWrapper = function(arrayClassData, nativeArray) { return new arrayClassData.constr(nativeArray); }; const $newArrayObject = function(arrayClassData, lengths) { return $newArrayObjectInternal(arrayClassData, lengths, 0); }; const $newArrayObjectInternal = function(arrayClassData, lengths, lengthIndex) { const result = new arrayClassData.constr(lengths[lengthIndex]); if (lengthIndex < lengths.length-1) { const subArrayClassData = arrayClassData.componentData; const subLengthIndex = lengthIndex+1; const underlying = result.u; for (let i = 0; i < underlying.length; i++) { underlying[i] = $newArrayObjectInternal( subArrayClassData, lengths, subLengthIndex); } } return result; }; const $objectToString = function(instance) { if (instance === void 0) return "undefined"; else return instance.toString(); }; const $objectGetClass = function(instance) { switch (typeof instance) { case "string": return $d_T.getClassOf(); case "number": { const v = instance | 0; if (v === instance) { // is the value integral? if ($isByte(v)) return $d_jl_Byte.getClassOf(); else if ($isShort(v)) return $d_jl_Short.getClassOf(); else return $d_jl_Integer.getClassOf(); } else { if ($isFloat(instance)) return $d_jl_Float.getClassOf(); else return $d_jl_Double.getClassOf(); } } case "boolean": return $d_jl_Boolean.getClassOf(); case "undefined": return $d_sr_BoxedUnit.getClassOf(); default: if (instance === null) return instance.getClass__jl_Class(); else if (instance instanceof $c_sjsr_RuntimeLong) return $d_jl_Long.getClassOf(); else if ($isScalaJSObject(instance)) return instance.$classData.getClassOf(); else return null; // Exception? } }; const $objectClone = function(instance) { if ($isScalaJSObject(instance) || (instance === null)) return instance.clone__O(); else throw new $c_jl_CloneNotSupportedException().init___(); }; const $objectNotify = function(instance) { // final and no-op in java.lang.Object if (instance === null) instance.notify__V(); }; const $objectNotifyAll = function(instance) { // final and no-op in java.lang.Object if (instance === null) instance.notifyAll__V(); }; const $objectFinalize = function(instance) { if ($isScalaJSObject(instance) || (instance === null)) instance.finalize__V(); // else no-op }; const $objectEquals = function(instance, rhs) { if ($isScalaJSObject(instance) || (instance === null)) return instance.equals__O__Z(rhs); else if (typeof instance === "number") return typeof rhs === "number" && $numberEquals(instance, rhs); else return instance === rhs; }; const $numberEquals = function(lhs, rhs) { return (lhs === rhs) ? ( // 0.0.equals(-0.0) must be false lhs !== 0 || 1/lhs === 1/rhs ) : ( // are they both NaN? (lhs !== lhs) && (rhs !== rhs) ); }; const $objectHashCode = function(instance) { switch (typeof instance) { case "string": return $m_sjsr_RuntimeString$().hashCode__T__I(instance); case "number": return $m_sjsr_Bits$().numberHashCode__D__I(instance); case "boolean": return instance ? 1231 : 1237; case "undefined": return 0; default: if ($isScalaJSObject(instance) || instance === null) return instance.hashCode__I(); else return $systemIdentityHashCode(instance); } }; const $comparableCompareTo = function(instance, rhs) { switch (typeof instance) { case "string": return instance === rhs ? 0 : (instance < rhs ? -1 : 1); case "number": return $m_jl_Double$().compare__D__D__I(instance, rhs); case "boolean": return instance - rhs; // yes, this gives the right result default: return instance.compareTo__O__I(rhs); } }; const $charSequenceLength = function(instance) { if (typeof(instance) === "string") return instance["length"] | 0; else return instance.length__I(); }; const $charSequenceCharAt = function(instance, index) { if (typeof(instance) === "string") return instance["charCodeAt"](index) & 0xffff; else return instance.charAt__I__C(index); }; const $charSequenceSubSequence = function(instance, start, end) { if (typeof(instance) === "string") return instance["substring"](start, end); else return instance.subSequence__I__I__jl_CharSequence(start, end); }; const $booleanBooleanValue = function(instance) { if (typeof instance === "boolean") return instance; else return instance.booleanValue__Z(); }; const $numberByteValue = function(instance) { if (typeof instance === "number") return (instance << 24) >> 24; else return instance.byteValue__B(); }; const $numberShortValue = function(instance) { if (typeof instance === "number") return (instance << 16) >> 16; else return instance.shortValue__S(); }; const $numberIntValue = function(instance) { if (typeof instance === "number") return instance | 0; else return instance.intValue__I(); }; const $numberLongValue = function(instance) { if (typeof instance === "number") return $m_sjsr_RuntimeLong$().fromDouble__D__sjsr_RuntimeLong(instance); else return instance.longValue__J(); }; const $numberFloatValue = function(instance) { if (typeof instance === "number") return $fround(instance); else return instance.floatValue__F(); }; const $numberDoubleValue = function(instance) { if (typeof instance === "number") return instance; else return instance.doubleValue__D(); }; const $isNaN = function(instance) { return instance !== instance; }; const $isInfinite = function(instance) { return !$g["isFinite"](instance) && !$isNaN(instance); }; const $doubleToInt = function(x) { return (x > 2147483647) ? (2147483647) : ((x < -2147483648) ? -2147483648 : (x | 0)); }; /** Instantiates a JS object with variadic arguments to the constructor. */ const $newJSObjectWithVarargs = function(ctor, args) { // This basically emulates the ECMAScript specification for 'new'. const instance = $g["Object"]["create"](ctor.prototype); const result = ctor["apply"](instance, args); switch (typeof result) { case "string": case "number": case "boolean": case "undefined": case "symbol": return instance; default: return result === null ? instance : result; } }; const $resolveSuperRef = function(initialProto, propName) { const getPrototypeOf = $g["Object"]["getPrototypeOf"]; const getOwnPropertyDescriptor = $g["Object"]["getOwnPropertyDescriptor"]; let superProto = getPrototypeOf(initialProto); while (superProto !== null) { const desc = getOwnPropertyDescriptor(superProto, propName); if (desc !== void 0) return desc; superProto = getPrototypeOf(superProto); } return void 0; }; const $superGet = function(initialProto, self, propName) { const desc = $resolveSuperRef(initialProto, propName); if (desc !== void 0) { const getter = desc["get"]; if (getter !== void 0) return getter["call"](self); else return desc["value"]; } return void 0; }; const $superSet = function(initialProto, self, propName, value) { const desc = $resolveSuperRef(initialProto, propName); if (desc !== void 0) { const setter = desc["set"]; if (setter !== void 0) { setter["call"](self, value); return void 0; } } throw new $g["TypeError"]("super has no setter '" + propName + "'."); }; const $propertiesOf = function(obj) { const result = []; for (const prop in obj) result["push"](prop); return result; }; const $systemArraycopy = function(src, srcPos, dest, destPos, length) { const srcu = src.u; const destu = dest.u; if (srcu !== destu || destPos < srcPos || (((srcPos + length) | 0) < destPos)) { for (let i = 0; i < length; i = (i + 1) | 0) destu[(destPos + i) | 0] = srcu[(srcPos + i) | 0]; } else { for (let i = (length - 1) | 0; i >= 0; i = (i - 1) | 0) destu[(destPos + i) | 0] = srcu[(srcPos + i) | 0]; } }; const $systemIdentityHashCode = (function(obj) { switch (typeof obj) { case "string": case "number": case "boolean": case "undefined": return $objectHashCode(obj); default: if (obj === null) { return 0; } else { let hash = $idHashCodeMap["get"](obj); if (hash === void 0) { hash = ($lastIDHash + 1) | 0; $lastIDHash = hash; $idHashCodeMap["set"](obj, hash); } return hash; } } }); // is/as for hijacked boxed classes (the non-trivial ones) const $isByte = function(v) { return typeof v === "number" && (v << 24 >> 24) === v && 1/v !== 1/-0; }; const $isShort = function(v) { return typeof v === "number" && (v << 16 >> 16) === v && 1/v !== 1/-0; }; const $isInt = function(v) { return typeof v === "number" && (v | 0) === v && 1/v !== 1/-0; }; const $isFloat = function(v) { return typeof v === "number"; }; // Unboxes const $uJ = function(value) { return null === value ? $m_sjsr_RuntimeLong$().Zero$1 : value; }; // TypeArray conversions const $byteArray2TypedArray = function(value) { return new $g["Int8Array"](value.u); }; const $shortArray2TypedArray = function(value) { return new $g["Int16Array"](value.u); }; const $charArray2TypedArray = function(value) { return new $g["Uint16Array"](value.u); }; const $intArray2TypedArray = function(value) { return new $g["Int32Array"](value.u); }; const $floatArray2TypedArray = function(value) { return new $g["Float32Array"](value.u); }; const $doubleArray2TypedArray = function(value) { return new $g["Float64Array"](value.u); }; const $typedArray2ByteArray = function(value) { const arrayClassData = $d_B.getArrayOf(); return new arrayClassData.constr(new $g["Int8Array"](value)); }; const $typedArray2ShortArray = function(value) { const arrayClassData = $d_S.getArrayOf(); return new arrayClassData.constr(new $g["Int16Array"](value)); }; const $typedArray2CharArray = function(value) { const arrayClassData = $d_C.getArrayOf(); return new arrayClassData.constr(new $g["Uint16Array"](value)); }; const $typedArray2IntArray = function(value) { const arrayClassData = $d_I.getArrayOf(); return new arrayClassData.constr(new $g["Int32Array"](value)); }; const $typedArray2FloatArray = function(value) { const arrayClassData = $d_F.getArrayOf(); return new arrayClassData.constr(new $g["Float32Array"](value)); }; const $typedArray2DoubleArray = function(value) { const arrayClassData = $d_D.getArrayOf(); return new arrayClassData.constr(new $g["Float64Array"](value)); }; // TypeData class class $TypeData { constructor() { // Runtime support this.constr = void 0; this.parentData = void 0; this.ancestors = null; this.componentData = null; this.arrayBase = null; this.arrayDepth = 0; this.zero = null; this.arrayEncodedName = ""; this._classOf = void 0; this._arrayOf = void 0; this.isArrayOf = void 0; // java.lang.Class support this["name"] = ""; this["isPrimitive"] = false; this["isInterface"] = false; this["isArrayClass"] = false; this["isRawJSType"] = false; this["isInstance"] = void 0; }; initPrim( zero, arrayEncodedName, displayName) { // Runtime support this.ancestors = {}; this.componentData = null; this.zero = zero; this.arrayEncodedName = arrayEncodedName; this.isArrayOf = function(obj, depth) { return false; }; // java.lang.Class support this["name"] = displayName; this["isPrimitive"] = true; this["isInstance"] = function(obj) { return false; }; return this; }; initClass( internalNameObj, isInterface, fullName, ancestors, isRawJSType, parentData, isInstance, isArrayOf) { const internalName = $propertyName(internalNameObj); isInstance = isInstance || function(obj) { return !!(obj && obj.$classData && obj.$classData.ancestors[internalName]); }; isArrayOf = isArrayOf || function(obj, depth) { return !!(obj && obj.$classData && (obj.$classData.arrayDepth === depth) && obj.$classData.arrayBase.ancestors[internalName]) }; // Runtime support this.parentData = parentData; this.ancestors = ancestors; this.arrayEncodedName = "L"+fullName+";"; this.isArrayOf = isArrayOf; // java.lang.Class support this["name"] = fullName; this["isInterface"] = isInterface; this["isRawJSType"] = !!isRawJSType; this["isInstance"] = isInstance; return this; }; initArray( componentData) { // The constructor const componentZero0 = componentData.zero; // The zero for the Long runtime representation // is a special case here, since the class has not // been defined yet, when this file is read const componentZero = (componentZero0 == "longZero") ? $m_sjsr_RuntimeLong$().Zero$1 : componentZero0; class ArrayClass extends $c_O { constructor(arg) { super(); if (typeof(arg) === "number") { // arg is the length of the array this.u = new Array(arg); for (let i = 0; i < arg; i++) this.u[i] = componentZero; } else { // arg is a native array that we wrap this.u = arg; } }; clone__O() { if (this.u instanceof Array) return new ArrayClass(this.u["slice"](0)); else // The underlying Array is a TypedArray return new ArrayClass(new this.u.constructor(this.u)); }; }; ArrayClass.prototype.$classData = this; // Don't generate reflective call proxies. The compiler special cases // reflective calls to methods on scala.Array // The data const encodedName = "[" + componentData.arrayEncodedName; const componentBase = componentData.arrayBase || componentData; const arrayDepth = componentData.arrayDepth + 1; const isInstance = function(obj) { return componentBase.isArrayOf(obj, arrayDepth); } // Runtime support this.constr = ArrayClass; this.parentData = $d_O; this.ancestors = {O: 1, jl_Cloneable: 1, Ljava_io_Serializable: 1}; this.componentData = componentData; this.arrayBase = componentBase; this.arrayDepth = arrayDepth; this.zero = null; this.arrayEncodedName = encodedName; this._classOf = undefined; this._arrayOf = undefined; this.isArrayOf = undefined; // java.lang.Class support this["name"] = encodedName; this["isPrimitive"] = false; this["isInterface"] = false; this["isArrayClass"] = true; this["isInstance"] = isInstance; return this; }; getClassOf() { if (!this._classOf) this._classOf = new $c_jl_Class().init___jl_ScalaJSClassData(this); return this._classOf; }; getArrayOf() { if (!this._arrayOf) this._arrayOf = new $TypeData().initArray(this); return this._arrayOf; }; // java.lang.Class support "getFakeInstance"() { if (this === $d_T) return "some string"; else if (this === $d_jl_Boolean) return false; else if (this === $d_jl_Byte || this === $d_jl_Short || this === $d_jl_Integer || this === $d_jl_Float || this === $d_jl_Double) return 0; else if (this === $d_jl_Long) return $m_sjsr_RuntimeLong$().Zero$1; else if (this === $d_sr_BoxedUnit) return void 0; else return {$classData: this}; }; "getSuperclass"() { return this.parentData ? this.parentData.getClassOf() : null; }; "getComponentType"() { return this.componentData ? this.componentData.getClassOf() : null; }; "newArrayOfThisClass"(lengths) { let arrayClassData = this; for (let i = 0; i < lengths.length; i++) arrayClassData = arrayClassData.getArrayOf(); return $newArrayObject(arrayClassData, lengths); }; }; // Create primitive types const $d_V = new $TypeData().initPrim(undefined, "V", "void"); const $d_Z = new $TypeData().initPrim(false, "Z", "boolean"); const $d_C = new $TypeData().initPrim(0, "C", "char"); const $d_B = new $TypeData().initPrim(0, "B", "byte"); const $d_S = new $TypeData().initPrim(0, "S", "short"); const $d_I = new $TypeData().initPrim(0, "I", "int"); const $d_J = new $TypeData().initPrim("longZero", "J", "long"); const $d_F = new $TypeData().initPrim(0.0, "F", "float"); const $d_D = new $TypeData().initPrim(0.0, "D", "double"); // Instance tests for array of primitives const $isArrayOf_Z = $makeIsArrayOfPrimitive($d_Z); $d_Z.isArrayOf = $isArrayOf_Z; const $isArrayOf_C = $makeIsArrayOfPrimitive($d_C); $d_C.isArrayOf = $isArrayOf_C; const $isArrayOf_B = $makeIsArrayOfPrimitive($d_B); $d_B.isArrayOf = $isArrayOf_B; const $isArrayOf_S = $makeIsArrayOfPrimitive($d_S); $d_S.isArrayOf = $isArrayOf_S; const $isArrayOf_I = $makeIsArrayOfPrimitive($d_I); $d_I.isArrayOf = $isArrayOf_I; const $isArrayOf_J = $makeIsArrayOfPrimitive($d_J); $d_J.isArrayOf = $isArrayOf_J; const $isArrayOf_F = $makeIsArrayOfPrimitive($d_F); $d_F.isArrayOf = $isArrayOf_F; const $isArrayOf_D = $makeIsArrayOfPrimitive($d_D); $d_D.isArrayOf = $isArrayOf_D; const $is_F0 = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.F0))) }); const $isArrayOf_F0 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.F0))) }); const $is_F1 = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.F1))) }); const $isArrayOf_F1 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.F1))) }); const $is_Lfastparse_core_Implicits$Sequencer = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lfastparse_core_Implicits$Sequencer))) }); const $isArrayOf_Lfastparse_core_Implicits$Sequencer = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Implicits$Sequencer))) }); const $f_Lfastparse_core_LowestPriSequencer__Sequencer1__O = (function($thiz) { const f = new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(x0$1$2, x1$1$2) { return new $c_T2().init___O__O(x0$1$2, x1$1$2) }) })($thiz)); return new $c_Lfastparse_core_Implicits$Sequencer$$anon$1().init___F2(f) }); const $is_Lfastparse_core_Mutable = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lfastparse_core_Mutable))) }); const $isArrayOf_Lfastparse_core_Mutable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Mutable))) }); const $f_Lfastparse_core_ParserResults__mergeTrace__I__sci_Set__sci_Set__sci_Set = (function($thiz, traceIndex, lhs, rhs) { return ((traceIndex !== (-1)) ? lhs.union__sc_GenSet__O(rhs) : $m_sci_Set$EmptySet$()) }); const $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure = (function($thiz, f, index, traceParsers, cut) { f.index$1 = index; f.cut$1 = cut; f.fullStack$1.clear__V(); if (((f.traceIndex$1 !== (-1)) && (f.traceIndex$1 >= index))) { if ((f.traceIndex$1 === index)) { f.traceParsers$1 = ((traceParsers === null) ? $m_s_Predef$().Set$2.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array([$thiz])) : traceParsers) } else { f.traceParsers$1 = $m_sci_Set$EmptySet$() } }; f.lastParser$1 = $thiz; return f }); const $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure = (function($thiz, f, index, logDepth, traceParsers, cut) { if ((f.traceIndex$1 !== (-1))) { if (((index >= f.traceIndex$1) && (traceParsers !== null))) { f.traceParsers$1 = traceParsers } }; if (((f.traceIndex$1 !== (-1)) || (logDepth > 0))) { f.fullStack$1.$$plus$eq__O__scm_Buffer(new $c_Lfastparse_core_Frame().init___I__Lfastparse_core_Parser(index, $thiz)) }; f.cut$1 = (!(!(f.cut$1 | cut))); return f }); const $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success = (function($thiz, s, value, index, traceParsers, cut) { s.value$1 = value; s.index$1 = index; s.cut$1 = cut; s.traceParsers$1 = traceParsers; return s }); const $is_Lfastparse_core_ParserResults = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lfastparse_core_ParserResults))) }); const $isArrayOf_Lfastparse_core_ParserResults = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_ParserResults))) }); const $is_Lfastparse_core_Precedence = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lfastparse_core_Precedence))) }); const $isArrayOf_Lfastparse_core_Precedence = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Precedence))) }); const $f_Lfastparse_parsers_Intrinsics$WhileParser__parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable = (function($thiz, cfg, index) { let curr = index; const input = cfg.input$1; while (true) { let jsx$1; if (input.isReachable__I__Z(curr)) { const index$1 = curr; const value = input.data$2; const input$1 = value; const c = (65535 & (input$1.charCodeAt(index$1) | 0)); jsx$1 = $thiz.check__O__Z(new $c_jl_Character().init___C(c)) } else { jsx$1 = false }; if (jsx$1) { curr = ((1 + curr) | 0) } else { break } }; if ((((curr - index) | 0) < $thiz.min$3)) { const this$7 = $thiz; const f = cfg.failure$1; const index$2 = curr; const traceParsers = null; const cut = false; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this$7, f, index$2, traceParsers, cut) } else { const this$9 = $thiz; const s = cfg.success$1; const index$3 = curr; const traceParsers$1 = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this$9, s, (void 0), index$3, traceParsers$1, false) } }); const $is_Lio_kaitai_struct_datatype_DataType = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_datatype_DataType))) }); const $isArrayOf_Lio_kaitai_struct_datatype_DataType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType))) }); const $is_Lio_kaitai_struct_datatype_Endianness = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_datatype_Endianness))) }); const $isArrayOf_Lio_kaitai_struct_datatype_Endianness = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_Endianness))) }); const $f_Lio_kaitai_struct_datatype_NeedRaw__$$init$__V = (function($thiz) { $thiz.io$kaitai$struct$datatype$NeedRaw$$undsetter$und$hasIO$und$eq__Z__V(false); $thiz.io$kaitai$struct$datatype$NeedRaw$$undsetter$und$hasRaw$und$eq__Z__V(false) }); const $is_Lio_kaitai_struct_exprlang_Ast$cmpop = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_exprlang_Ast$cmpop))) }); const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$cmpop = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$cmpop))) }); const $f_Lio_kaitai_struct_exprlang_Ast$expr__evaluateIntConst__s_Option = (function($thiz) { const nonLocalReturnKey1 = new $c_O().init___(); try { if (($thiz instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum)) { const x2 = $thiz; const x = x2.n$1; return new $c_s_Some().init___O(x) } else if (($thiz instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp)) { const x3 = $thiz; const op = x3.op$1; const operand = x3.operand$1; const this$1 = $f_Lio_kaitai_struct_exprlang_Ast$expr__evaluateIntConst__s_Option(operand); if (this$1.isEmpty__Z()) { return $m_s_None$() } else { const arg1 = this$1.get__O(); const opValue = arg1; const x$1 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$(); let jsx$1; if ((x$1 === op)) { jsx$1 = opValue.unary$und$tilde__s_math_BigInt() } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$(); if ((x$3 === op)) { throw new $c_sr_NonLocalReturnControl().init___O__O(nonLocalReturnKey1, $m_s_None$()) } else { const x$5 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$(); if ((x$5 === op)) { jsx$1 = opValue.unary$und$minus__s_math_BigInt() } else { throw new $c_s_MatchError().init___O(op) } } }; return new $c_s_Some().init___O(jsx$1) } } else if (($thiz instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BinOp)) { const x4 = $thiz; const left = x4.left$1; const op$2 = x4.op$1; const right = x4.right$1; const x1$2 = $f_Lio_kaitai_struct_exprlang_Ast$expr__evaluateIntConst__s_Option(left); if ((!(x1$2 instanceof $c_s_Some))) { const x$3$1 = $m_s_None$(); if ((x$3$1 === x1$2)) { return $m_s_None$() }; throw new $c_s_MatchError().init___O(x1$2) }; const x2$2 = x1$2; const x$2 = x2$2.value$2; const x1$3 = $f_Lio_kaitai_struct_exprlang_Ast$expr__evaluateIntConst__s_Option(right); if ((!(x1$3 instanceof $c_s_Some))) { const x$6 = $m_s_None$(); if ((x$6 === x1$3)) { return $m_s_None$() }; throw new $c_s_MatchError().init___O(x1$3) }; const x2$3 = x1$3; const x$5$1 = x2$3.value$2; const x$8 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Add$(); if ((x$8 === op$2)) { return new $c_s_Some().init___O(x$2.$$plus__s_math_BigInt__s_math_BigInt(x$5$1)) } else { const x$10 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Sub$(); if ((x$10 === op$2)) { return new $c_s_Some().init___O(x$2.$$minus__s_math_BigInt__s_math_BigInt(x$5$1)) } else { const x$12 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mult$(); if ((x$12 === op$2)) { return new $c_s_Some().init___O(x$2.$$times__s_math_BigInt__s_math_BigInt(x$5$1)) } else { const x$14 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$(); if ((x$14 === op$2)) { return new $c_s_Some().init___O(x$2.$$div__s_math_BigInt__s_math_BigInt(x$5$1)) } else { const x$16 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$(); if ((x$16 === op$2)) { return new $c_s_Some().init___O(x$2.$$percent__s_math_BigInt__s_math_BigInt(x$5$1)) } else { const x$18 = $m_Lio_kaitai_struct_exprlang_Ast$operator$LShift$(); if ((x$18 === op$2)) { return new $c_s_Some().init___O(x$2.$$less$less__I__s_math_BigInt(x$5$1.bigInteger$3.intValue__I())) } else { const x$20 = $m_Lio_kaitai_struct_exprlang_Ast$operator$RShift$(); if ((x$20 === op$2)) { return new $c_s_Some().init___O(x$2.$$greater$greater__I__s_math_BigInt(x$5$1.bigInteger$3.intValue__I())) } else { const x$22 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$(); if ((x$22 === op$2)) { return new $c_s_Some().init___O(x$2.$$bar__s_math_BigInt__s_math_BigInt(x$5$1)) } else { const x$24 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$(); if ((x$24 === op$2)) { return new $c_s_Some().init___O(x$2.$$up__s_math_BigInt__s_math_BigInt(x$5$1)) } else { const x$26 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$(); if ((x$26 === op$2)) { return new $c_s_Some().init___O(x$2.$$amp__s_math_BigInt__s_math_BigInt(x$5$1)) } else { throw new $c_s_MatchError().init___O(op$2) } } } } } } } } } } } else { return $m_s_None$() } } catch (e) { if ((e instanceof $c_sr_NonLocalReturnControl)) { const ex = e; if ((ex.key$2 === nonLocalReturnKey1)) { return ex.value__O() } else { throw ex } } else { throw e } } }); const $is_Lio_kaitai_struct_exprlang_Ast$expr = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_exprlang_Ast$expr))) }); const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr))) }); const $is_Lio_kaitai_struct_exprlang_Ast$operator = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_exprlang_Ast$operator))) }); const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$operator = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$operator))) }); const $is_Lio_kaitai_struct_format_ProcessExpr = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_format_ProcessExpr))) }); const $isArrayOf_Lio_kaitai_struct_format_ProcessExpr = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ProcessExpr))) }); const $is_Lio_kaitai_struct_format_RefSpec = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_format_RefSpec))) }); const $isArrayOf_Lio_kaitai_struct_format_RefSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_RefSpec))) }); const $is_Lio_kaitai_struct_format_RepeatSpec = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_format_RepeatSpec))) }); const $isArrayOf_Lio_kaitai_struct_format_RepeatSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_RepeatSpec))) }); const $is_Lio_kaitai_struct_format_Sized = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_format_Sized))) }); const $isArrayOf_Lio_kaitai_struct_format_Sized = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_Sized))) }); const $is_Lio_kaitai_struct_format_ValidationSpec = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_format_ValidationSpec))) }); const $isArrayOf_Lio_kaitai_struct_format_ValidationSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ValidationSpec))) }); const $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__s_Option__V = (function($thiz, attr, id, defEndian) { $thiz.attrParseIfHeader__Lio_kaitai_struct_format_Identifier__s_Option__V(id, attr.cond__Lio_kaitai_struct_format_ConditionalSpec().ifExpr$1); let io$2; if ((attr instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = attr; const x1$2 = x2.io$2; const x = $m_s_None$(); let io; if ((x === x1$2)) { io = $thiz.normalIO__T() } else { if ((!(x1$2 instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(x1$2) }; const x2$2 = x1$2; const ex = x2$2.value$2; io = $thiz.useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ex) }; const this$1 = x2.pos$2; if ((!this$1.isEmpty__Z())) { const arg1 = this$1.get__O(); const pos = arg1; $thiz.pushPos__T__V(io); $thiz.seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) }; io$2 = io } else { io$2 = $thiz.normalIO__T() }; if ($thiz.config$1.readStoresPos$1) { $thiz.attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(id, attr.dataType__Lio_kaitai_struct_datatype_DataType(), new $c_s_Some().init___O(io$2), $m_Lio_kaitai_struct_format_NoRepeat$()) }; matchEnd12: { let jsx$1; matchEnd15: { if ((defEndian instanceof $c_s_Some)) { const x2$3 = defEndian; if ((x2$3.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { jsx$1 = true; break matchEnd15 } }; if ((defEndian instanceof $c_s_Some)) { const x4 = defEndian; const p5 = x4.value$2; const x$3 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$3 === p5)) { jsx$1 = true; break matchEnd15 } }; jsx$1 = false }; if (jsx$1) { $thiz.attrParseHybrid__F0__F0__V(new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$2, id$1, attr$1, io$2$1) { return (function() { const defEndian$1 = new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_LittleEndian$()); $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse0__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__T__s_Option__V(this$2, id$1, attr$1, io$2$1, defEndian$1) }) })($thiz, id, attr, io$2)), new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$3, id$2, attr$2, io$2$2) { return (function() { const defEndian$2 = new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_BigEndian$()); $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse0__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__T__s_Option__V(this$3, id$2, attr$2, io$2$2, defEndian$2) }) })($thiz, id, attr, io$2))); break matchEnd12 }; const x$5 = $m_s_None$(); if ((x$5 === defEndian)) { const defEndian$3 = $m_s_None$(); $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse0__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__T__s_Option__V($thiz, id, attr, io$2, defEndian$3); break matchEnd12 }; if ((defEndian instanceof $c_s_Some)) { const x6 = defEndian; const fe = x6.value$2; if ((fe instanceof $c_Lio_kaitai_struct_datatype_FixedEndian)) { const x10 = fe; const defEndian$4 = new $c_s_Some().init___O(x10); $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse0__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__T__s_Option__V($thiz, id, attr, io$2, defEndian$4); break matchEnd12 } }; throw new $c_s_MatchError().init___O(defEndian) }; if ($thiz.config$1.readStoresPos$1) { $thiz.attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(id, attr.dataType__Lio_kaitai_struct_datatype_DataType(), io$2, $m_Lio_kaitai_struct_format_NoRepeat$()) }; if ((attr instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2$4 = attr; if (x2$4.pos$2.isDefined__Z()) { $thiz.popPos__T__V(io$2) }; $thiz.instanceSetCalculated__Lio_kaitai_struct_format_InstanceIdentifier__V(x2$4.id$2) }; $f_Lio_kaitai_struct_languages_components_CommonReads__attrValidateAll__Lio_kaitai_struct_format_AttrLikeSpec__V($thiz, attr); $thiz.attrParseIfFooter__s_Option__V(attr.cond__Lio_kaitai_struct_format_ConditionalSpec().ifExpr$1) }); const $f_Lio_kaitai_struct_languages_components_CommonReads__needRaw__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw = (function($thiz, dataType) { let rawIo; if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { rawIo = true } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x3 = dataType; rawIo = x3.hasSize__Z() } else { rawIo = false }; let rawProcess; if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { const x2 = dataType; const this$1 = x2.process__s_Option(); rawProcess = this$1.isDefined__Z() } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { const x3$2 = dataType; const this$2 = x3$2.bytes$4.process__s_Option(); rawProcess = this$2.isDefined__Z() } else { rawProcess = false }; return (((rawIo === true) && (rawProcess === false)) ? $m_Lio_kaitai_struct_datatype_RawIo$() : (((rawIo === false) && (rawProcess === true)) ? $m_Lio_kaitai_struct_datatype_RawProcess$() : (((rawIo === true) && (rawProcess === true)) ? $m_Lio_kaitai_struct_datatype_RawIoProcess$() : $m_Lio_kaitai_struct_datatype_NotRaw$()))) }); const $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse0__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__T__s_Option__V = (function($thiz, id, attr, io, defEndian) { const x1 = attr.cond__Lio_kaitai_struct_format_ConditionalSpec().repeat$1; matchEnd9: { const x = $m_Lio_kaitai_struct_format_RepeatEos$(); if ((x === x1)) { const jsx$1 = attr.dataType__Lio_kaitai_struct_datatype_DataType(); const dataType = attr.dataType__Lio_kaitai_struct_datatype_DataType(); $thiz.condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, jsx$1, $f_Lio_kaitai_struct_languages_components_CommonReads__needRaw__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw($thiz, dataType)); $thiz.attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, attr.dataType__Lio_kaitai_struct_datatype_DataType(), io, attr.cond__Lio_kaitai_struct_format_ConditionalSpec().repeat$1, false, defEndian, $thiz.attrParse2$default$7__s_Option()); $thiz.condRepeatEosFooter__V(); break matchEnd9 }; if ((x1 instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { const x2 = x1; const repeatExpr = x2.expr$1; if ((repeatExpr !== null)) { const jsx$2 = attr.dataType__Lio_kaitai_struct_datatype_DataType(); const dataType$1 = attr.dataType__Lio_kaitai_struct_datatype_DataType(); $thiz.condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, jsx$2, $f_Lio_kaitai_struct_languages_components_CommonReads__needRaw__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw($thiz, dataType$1), repeatExpr); $thiz.attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, attr.dataType__Lio_kaitai_struct_datatype_DataType(), io, attr.cond__Lio_kaitai_struct_format_ConditionalSpec().repeat$1, false, defEndian, $thiz.attrParse2$default$7__s_Option()); $thiz.condRepeatExprFooter__V(); break matchEnd9 } }; if ((x1 instanceof $c_Lio_kaitai_struct_format_RepeatUntil)) { const x3 = x1; const untilExpr = x3.expr$1; if ((untilExpr !== null)) { const jsx$3 = attr.dataType__Lio_kaitai_struct_datatype_DataType(); const dataType$2 = attr.dataType__Lio_kaitai_struct_datatype_DataType(); $thiz.condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, jsx$3, $f_Lio_kaitai_struct_languages_components_CommonReads__needRaw__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw($thiz, dataType$2), untilExpr); $thiz.attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, attr.dataType__Lio_kaitai_struct_datatype_DataType(), io, attr.cond__Lio_kaitai_struct_format_ConditionalSpec().repeat$1, false, defEndian, $thiz.attrParse2$default$7__s_Option()); const jsx$4 = attr.dataType__Lio_kaitai_struct_datatype_DataType(); const dataType$3 = attr.dataType__Lio_kaitai_struct_datatype_DataType(); $thiz.condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, jsx$4, $f_Lio_kaitai_struct_languages_components_CommonReads__needRaw__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw($thiz, dataType$3), untilExpr); break matchEnd9 } }; const x$3 = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x$3 === x1)) { $thiz.attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, attr.dataType__Lio_kaitai_struct_datatype_DataType(), io, attr.cond__Lio_kaitai_struct_format_ConditionalSpec().repeat$1, false, defEndian, $thiz.attrParse2$default$7__s_Option()); break matchEnd9 }; throw new $c_s_MatchError().init___O(x1) } }); const $f_Lio_kaitai_struct_languages_components_CommonReads__attrValidateAll__Lio_kaitai_struct_format_AttrLikeSpec__V = (function($thiz, attr) { const this$1 = attr.valid__s_Option(); if ((!this$1.isEmpty__Z())) { const arg1 = this$1.get__O(); const valid = arg1; const this$2 = $thiz; const attrId = attr.id__Lio_kaitai_struct_format_Identifier(); $f_Lio_kaitai_struct_languages_components_ValidateOps__attrValidate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_ValidationSpec__V(this$2, attrId, attr, valid) } }); const $is_Lio_kaitai_struct_languages_components_LanguageCompilerStatic = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_languages_components_LanguageCompilerStatic))) }); const $isArrayOf_Lio_kaitai_struct_languages_components_LanguageCompilerStatic = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_languages_components_LanguageCompilerStatic))) }); const $f_Lio_kaitai_struct_languages_components_NoNeedForFullClassPath__enumDeclaration__sci_List__T__sc_Seq__V = (function($thiz, curClass, enumName, enumColl) { const jsx$2 = $f_sc_LinearSeqOptimized__last__O(curClass); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$2) { const x = x$2; return new $c_T2().init___O__O(x.$$und1$mcJ$sp__J(), x.$$und2__O().name$1) }) })($thiz)); const this$1 = $m_sc_Seq$(); $thiz.enumDeclaration__T__T__sc_Seq__V(jsx$2, enumName, enumColl.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2)) }); const $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T = (function($thiz, e) { return $thiz.translator__Lio_kaitai_struct_translators_AbstractTranslator().translate__Lio_kaitai_struct_exprlang_Ast$expr__T(e) }); const $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map = (function($thiz, topClass) { const this$1 = topClass.name$1; const self = $thiz.outFileName__T__T($f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", "")); const this$3 = $thiz.outHeader__Lio_kaitai_struct_StringLanguageOutputWriter(); const this$4 = this$3.sb$2; const jsx$2 = this$4.underlying$5.java$lang$StringBuilder$$content$f; const jsx$1 = $thiz.outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass); const this$5 = $thiz.out__Lio_kaitai_struct_StringLanguageOutputWriter(); const this$6 = this$5.sb$2; const y = ((("" + jsx$2) + jsx$1) + this$6.underlying$5.java$lang$StringBuilder$$content$f); const array = [new $c_T2().init___O__O(self, y)]; const this$11 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$11.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; return this$11.elems$1 }); const $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V = (function($thiz) { $thiz.io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T($thiz.indent__T())); $thiz.io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T($thiz.indent__T())); $thiz.io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(new $c_Lio_kaitai_struct_ImportList().init___()) }); const $f_Lio_kaitai_struct_languages_components_SwitchOps__switchCasesRender__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V = (function($thiz, id, on, cases, normalCaseProc, elseCaseProc) { const someNormalCases = (cases.filter__F1__O(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const caseExpr = x0$1.$$und1__O(); const x$2 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; return (!((caseExpr === null) ? (x$2 === null) : caseExpr.equals__O__Z(x$2))) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })($thiz))).size__I() > 0); if (someNormalCases) { $thiz.switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on); const first = new $c_sr_BooleanRef().init___Z(true); cases.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2, first$1, normalCaseProc$1) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const condition = x0$2.$$und1__O(); const result = x0$2.$$und2__O(); const x = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; if (((x === null) ? (condition === null) : x.equals__O__Z(condition))) { /**/ } else { if (first$1.elem$1) { this$2.switchCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition); first$1.elem$1 = false } else { this$2.switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) }; normalCaseProc$1.apply__O__O(result); this$2.switchCaseEnd__V() } } else { throw new $c_s_MatchError().init___O(x0$2) } }) })($thiz, first, normalCaseProc))); const this$3 = cases.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); if ((!this$3.isEmpty__Z())) { const arg1 = this$3.get__O(); $thiz.switchElseStart__V(); elseCaseProc.apply__O__O(arg1); $thiz.switchElseEnd__V() }; $thiz.switchEnd__V() } else { const this$4 = cases.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); if ((!this$4.isEmpty__Z())) { const arg1$1 = this$4.get__O(); elseCaseProc.apply__O__O(arg1$1) } } }); const $is_Lio_kaitai_struct_precompile_LoadImports$ImportPath = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_precompile_LoadImports$ImportPath))) }); const $isArrayOf_Lio_kaitai_struct_precompile_LoadImports$ImportPath = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_precompile_LoadImports$ImportPath))) }); const $f_Lio_kaitai_struct_translators_CommonArraysAndCast__doByteArray__pLio_kaitai_struct_translators_CommonArraysAndCast__sc_Seq__O = (function($thiz, elts) { const x1 = $f_Lio_kaitai_struct_translators_CommonArraysAndCast__valuesAsByteArrayLiteral__pLio_kaitai_struct_translators_CommonArraysAndCast__sc_Seq__s_Option($thiz, elts); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const arr = x2.value$2; return $thiz.doByteArrayLiteral__sc_Seq__O(arr) } else { const x = $m_s_None$(); if ((x === x1)) { return $thiz.doByteArrayNonLiteral__sc_Seq__O(elts) } else { throw new $c_s_MatchError().init___O(x1) } } }); const $f_Lio_kaitai_struct_translators_CommonArraysAndCast__doGuessArrayLiteral__sc_Seq__O = (function($thiz, values) { const elementType = $thiz.detectArrayType__sc_Seq__Lio_kaitai_struct_datatype_DataType(values); if ((elementType instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum)) { const x2 = x0$1; const x = x2.n$1; const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__I__s_math_BigInt(0); let jsx$2; if ($f_s_math_Ordered__$$less__O__Z(x, that)) { jsx$2 = true } else { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__I__s_math_BigInt(255); jsx$2 = $f_s_math_Ordered__$$greater__O__Z(x, that$1) }; if (jsx$2) { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(("got a weird byte value in byte array: " + x)) } else { return x.byteValue__B() } } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((("got " + x0$1) + " in byte array, unable to put it literally")) } }) })($thiz)); const this$3 = $m_sc_Seq$(); const literalBytes = values.map__F1__scg_CanBuildFrom__O(jsx$1, this$3.ReusableCBFInstance$2); return $thiz.doByteArrayLiteral__sc_Seq__O(literalBytes) } else { return $thiz.doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__O(elementType, values) } }); const $f_Lio_kaitai_struct_translators_CommonArraysAndCast__valuesAsByteArrayLiteral__pLio_kaitai_struct_translators_CommonArraysAndCast__sc_Seq__s_Option = (function($thiz, elts) { const nonLocalReturnKey1 = new $c_O().init___(); try { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, nonLocalReturnKey1$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum)) { const x2 = x0$1; const x = x2.n$1; const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__I__s_math_BigInt(0); let jsx$2; if ($f_s_math_Ordered__$$less__O__Z(x, that)) { jsx$2 = true } else { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__I__s_math_BigInt(255); jsx$2 = $f_s_math_Ordered__$$greater__O__Z(x, that$1) }; if (jsx$2) { throw new $c_sr_NonLocalReturnControl().init___O__O(nonLocalReturnKey1$1, $m_s_None$()) } else { return x.byteValue__B() } } else { throw new $c_sr_NonLocalReturnControl().init___O__O(nonLocalReturnKey1$1, $m_s_None$()) } }) })($thiz, nonLocalReturnKey1)); const this$3 = $m_sc_Seq$(); return new $c_s_Some().init___O(elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$3.ReusableCBFInstance$2)) } catch (e) { if ((e instanceof $c_sr_NonLocalReturnControl)) { const ex = e; if ((ex.key$2 === nonLocalReturnKey1)) { return ex.value__O() } else { throw ex } } else { throw e } } }); const $f_Lio_kaitai_struct_translators_CommonArraysAndCast__doCastOrArray__Lio_kaitai_struct_exprlang_Ast$expr$CastToType__O = (function($thiz, v) { const castToType = $thiz.detectCastType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(v.typeName$1); const x1 = v.value$1; if ((x1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$List)) { const x2 = x1; if ((castToType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { const elts = x2.elts$1; return $f_Lio_kaitai_struct_translators_CommonArraysAndCast__doByteArray__pLio_kaitai_struct_translators_CommonArraysAndCast__sc_Seq__O($thiz, elts) } else if ((castToType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream)) { const x2$2 = castToType; const elType = x2$2.elType$2; return $thiz.doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__O(elType, x2.elts$1) } else { return $thiz.doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__O(v.value$1, castToType) } } else { return $thiz.doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__O(v.value$1, castToType) } }); const $f_Lio_kaitai_struct_translators_CommonLiterals__strLiteralUnicode__C__T = (function($thiz, code) { const this$4 = new $c_sci_StringOps().init___T("\\u%04x"); const array = [code]; const jsx$2 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x = (array$1.length | 0); const x$1 = ((x < len$2) ? x : len$2); const that = result.u.length; const end = ((x$1 < that) ? x$1 : that); while ((i$1 < end)) { const jsx$1 = j; const index$1 = i$1; result.u[jsx$1] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; return jsx$2.format__T__AO__T($$this, result) }); const $f_Lio_kaitai_struct_translators_CommonLiterals__strLiteralAsciiChar__C__T = (function($thiz, code) { const x1 = $thiz.asciiCharQuoteMap__sci_Map().get__O__s_Option(new $c_jl_Character().init___C(code)); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const encoded = x2.value$2; return encoded } else { const x = $m_s_None$(); if ((x === x1)) { return (((code >= 32) && (code < 128)) ? $g.String.fromCharCode(code) : $thiz.strLiteralGenericCC__C__T(code)) } else { throw new $c_s_MatchError().init___O(x1) } } }); const $f_Lio_kaitai_struct_translators_CommonLiterals__$$init$__V = (function($thiz) { const self = new $c_jl_Character().init___C(9); const jsx$4 = new $c_T2().init___O__O(self, "\\t"); const self$1 = new $c_jl_Character().init___C(10); const jsx$3 = new $c_T2().init___O__O(self$1, "\\n"); const self$2 = new $c_jl_Character().init___C(13); const jsx$2 = new $c_T2().init___O__O(self$2, "\\r"); const self$3 = new $c_jl_Character().init___C(34); const jsx$1 = new $c_T2().init___O__O(self$3, "\\\""); const self$4 = new $c_jl_Character().init___C(92); const array = [jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O(self$4, "\\\\")]; const this$24 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$24.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; $thiz.io$kaitai$struct$translators$CommonLiterals$$undsetter$und$asciiCharQuoteMap$und$eq__sci_Map__V(this$24.elems$1) }); const $f_Lio_kaitai_struct_translators_CommonLiterals__strLiteralGenericCC__C__T = (function($thiz, code) { const this$4 = new $c_sci_StringOps().init___T("\\%03o"); const array = [code]; const jsx$2 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x = (array$1.length | 0); const x$1 = ((x < len$2) ? x : len$2); const that = result.u.length; const end = ((x$1 < that) ? x$1 : that); while ((i$1 < end)) { const jsx$1 = j; const index$1 = i$1; result.u[jsx$1] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; return jsx$2.format__T__AO__T($$this, result) }); const $f_Lio_kaitai_struct_translators_CommonLiterals__doStringLiteral__T__T = (function($thiz, s) { const xs = $m_sjsr_RuntimeString$().toCharArray__T__AC(s); let elems$2 = null; elems$2 = []; const x1 = xs.u.length; switch (x1) { case (-1): { break } }; let i = 0; const len = xs.u.length; while ((i < len)) { const idx = i; const c = xs.u[idx]; const elem = ((c <= 255) ? $f_Lio_kaitai_struct_translators_CommonLiterals__strLiteralAsciiChar__C__T($thiz, c) : $thiz.strLiteralUnicode__C__T(c)); const unboxedElem = ((elem === null) ? null : elem); elems$2.push(unboxedElem); i = ((1 + i) | 0) }; const xs$1 = $makeNativeArrayWrapper($d_T.getArrayOf(), elems$2); const this$13 = new $c_scm_ArrayOps$ofRef().init___AO(xs$1); const encoded = $f_sc_TraversableOnce__mkString__T__T__T__T(this$13, "", "", ""); return (("\"" + encoded) + "\"") }); const $f_Lio_kaitai_struct_translators_CommonMethods__translateCall__Lio_kaitai_struct_exprlang_Ast$expr$Call__O = (function($thiz, call) { const func = call.func$1; const args = call.args$1; if ((func instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute)) { const x2 = func; const obj = x2.value$1; const methodName = x2.attr$1; if ((obj !== null)) { if ((methodName !== null)) { const objType = $thiz.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(obj); const _2 = methodName.name$1; if (((objType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) && (_2 === "substring"))) { return $thiz.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(obj, args.apply__I__O(0), args.apply__I__O(1)) } else if (((objType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) && (_2 === "to_i"))) { return $thiz.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(obj, args.apply__I__O(0)) } else if (((objType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType) && (_2 === "to_s"))) { return $thiz.bytesToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(obj, args.apply__I__O(0)) } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((((("don't know how to call method '" + methodName) + "' of object type '") + objType) + "'")) } } } }; throw new $c_s_MatchError().init___O(func) }); const $f_Lio_kaitai_struct_translators_CommonMethods__translateAttribute__Lio_kaitai_struct_exprlang_Ast$expr$Attribute__O = (function($thiz, call) { const attr = call.attr$1; const value = call.value$1; const valType = $thiz.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(value); if ((attr.name$1 === $m_Lio_kaitai_struct_format_Identifier$().SIZEOF$1)) { return $thiz.byteSizeOfValue__T__Lio_kaitai_struct_datatype_DataType__O(value.toString__T(), valType) }; const x = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); let jsx$1; if ((x === valType)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$1 = (x$3 === valType) }; if (jsx$1) { const x1$2 = attr.name$1; if (($m_Lio_kaitai_struct_format_Identifier$().PARENT$1 === x1$2)) { return $thiz.kaitaiStructField__Lio_kaitai_struct_exprlang_Ast$expr__T__O(value, attr.name$1) } else { throw new $c_s_MatchError().init___O(x1$2) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x4 = valType; return $thiz.userTypeField__Lio_kaitai_struct_datatype_DataType$UserType__Lio_kaitai_struct_exprlang_Ast$expr__T__O(x4, value, attr.name$1) } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { const x1$3 = attr.name$1; if ((x1$3 === "first")) { return $thiz.bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$3 === "last")) { return $thiz.bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if (((x1$3 === "length") || (x1$3 === "size"))) { return $thiz.bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$3 === "min")) { return $thiz.bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$3 === "max")) { return $thiz.bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else { throw new $c_s_MatchError().init___O(x1$3) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { const x1$4 = attr.name$1; if ((x1$4 === "length")) { return $thiz.strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$4 === "reverse")) { return $thiz.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$4 === "to_i")) { const this$1 = $m_s_math_BigInt$(); return $thiz.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(this$1.apply__I__s_math_BigInt(10))) } else { throw new $c_s_MatchError().init___O(x1$4) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x1$5 = attr.name$1; if ((x1$5 === "to_s")) { const this$2 = $m_s_math_BigInt$(); return $thiz.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(this$2.apply__I__s_math_BigInt(10))) } else { throw new $c_s_MatchError().init___O(x1$5) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatType)) { const x1$6 = attr.name$1; if ((x1$6 === "to_i")) { return $thiz.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else { throw new $c_s_MatchError().init___O(x1$6) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x1$7 = attr.name$1; if ((x1$7 === "first")) { return $thiz.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$7 === "last")) { return $thiz.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$7 === "size")) { return $thiz.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$7 === "min")) { return $thiz.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$7 === "max")) { return $thiz.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else { throw new $c_s_MatchError().init___O(x1$7) } } else { const x$5 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); let jsx$2; if ((x$5 === valType)) { jsx$2 = true } else { const x$7 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); jsx$2 = (x$7 === valType) }; if (jsx$2) { const x1$8 = attr.name$1; if ((x1$8 === "size")) { return $thiz.kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$8 === "eof")) { return $thiz.kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else if ((x1$8 === "pos")) { return $thiz.kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else { throw new $c_s_MatchError().init___O(x1$8) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x12 = valType; const x1$9 = attr.name$1; if ((x1$9 === "to_i")) { return $thiz.enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, x12) } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((("called invalid attribute '" + attr.name$1) + "' on expression of type ") + valType)) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { const x1$10 = attr.name$1; if ((x1$10 === "to_i")) { return $thiz.boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((("called invalid attribute '" + attr.name$1) + "' on expression of type ") + valType)) } } else { throw new $c_s_MatchError().init___O(valType) } } }); const $is_Lio_kaitai_struct_translators_TranslatorResult = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_translators_TranslatorResult))) }); const $isArrayOf_Lio_kaitai_struct_translators_TranslatorResult = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_translators_TranslatorResult))) }); class $c_O { init___() { return this }; equals__O__Z(that) { return (this === that) }; toString__T() { const jsx$2 = $objectGetClass(this).getName__T(); const i = this.hashCode__I(); const x = (+(i >>> 0)); const jsx$1 = x.toString(16); return ((jsx$2 + "@") + jsx$1) }; hashCode__I() { return $systemIdentityHashCode(this) }; "toString"() { return this.toString__T() }; } const $is_O = (function(obj) { return (obj !== null) }); const $isArrayOf_O = (function(obj, depth) { const data = (obj && obj.$classData); if ((!data)) { return false } else { const arrayDepth = (data.arrayDepth || 0); return ((!(arrayDepth < depth)) && ((arrayDepth > depth) || (!data.arrayBase.isPrimitive))) } }); const $d_O = new $TypeData().initClass({ O: 0 }, false, "java.lang.Object", { O: 1 }, (void 0), (void 0), $is_O, $isArrayOf_O); $c_O.prototype.$classData = $d_O; const $is_jl_Runnable = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.jl_Runnable))) }); const $isArrayOf_jl_Runnable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Runnable))) }); const $is_ju_Formattable = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.ju_Formattable))) }); const $isArrayOf_ju_Formattable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.ju_Formattable))) }); const $is_ju_Map = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.ju_Map))) }); const $isArrayOf_ju_Map = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.ju_Map))) }); const $is_ju_Map$Entry = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.ju_Map$Entry))) }); const $isArrayOf_ju_Map$Entry = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.ju_Map$Entry))) }); const $f_s_Proxy__equals__O__Z = (function($thiz, that) { return ((that !== null) && (((that === $thiz) || (that === $thiz.self__O())) || $objectEquals(that, $thiz.self__O()))) }); const $f_s_Proxy__toString__T = (function($thiz) { return ("" + $thiz.self__O()) }); const $is_s_concurrent_BlockContext = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.s_concurrent_BlockContext))) }); const $isArrayOf_s_concurrent_BlockContext = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_concurrent_BlockContext))) }); const $is_s_concurrent_OnCompleteRunnable = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.s_concurrent_OnCompleteRunnable))) }); const $isArrayOf_s_concurrent_OnCompleteRunnable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_concurrent_OnCompleteRunnable))) }); const $f_s_concurrent_Promise__failure__jl_Throwable__s_concurrent_Promise = (function($thiz, cause) { const result = new $c_s_util_Failure().init___jl_Throwable(cause); return $f_s_concurrent_Promise__complete__s_util_Try__s_concurrent_Promise($thiz, result) }); const $f_s_concurrent_Promise__tryCompleteWith__s_concurrent_Future__s_concurrent_Promise = (function($thiz, other) { if ((other !== $thiz)) { other.onComplete__F1__s_concurrent_ExecutionContext__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$1$2) { const x$1 = x$1$2; return $this.tryComplete__s_util_Try__Z(x$1) }) })($thiz)), $m_s_concurrent_Future$InternalCallbackExecutor$()) }; return $thiz }); const $f_s_concurrent_Promise__complete__s_util_Try__s_concurrent_Promise = (function($thiz, result) { if ($thiz.tryComplete__s_util_Try__Z(result)) { return $thiz } else { throw new $c_jl_IllegalStateException().init___T("Promise already completed.") } }); const $f_s_concurrent_Promise__success__O__s_concurrent_Promise = (function($thiz, value) { const result = new $c_s_util_Success().init___O(value); return $f_s_concurrent_Promise__complete__s_util_Try__s_concurrent_Promise($thiz, result) }); const $f_s_math_ScalaNumericAnyConversions__isValidInt__Z = (function($thiz) { if ($thiz.isWhole__Z()) { const t = $thiz.longValue__J(); const lo = t.lo$2; const hi$1 = t.hi$2; const value = $thiz.intValue__I(); const hi = (value >> 31); return ((lo === value) && (hi$1 === hi)) } else { return false } }); const $f_s_math_ScalaNumericAnyConversions__isValidShort__Z = (function($thiz) { return ($thiz.isWhole__Z() && ($thiz.intValue__I() === $thiz.shortValue__S())) }); const $f_s_math_ScalaNumericAnyConversions__unifiedPrimitiveEquals__O__Z = (function($thiz, x) { if ((x instanceof $c_jl_Character)) { let x2; if ((x === null)) { x2 = 0 } else { const this$2 = x; x2 = this$2.value$1 }; return ($thiz.isValidChar__Z() && ($thiz.intValue__I() === x2)) } else if ($isByte(x)) { const x3 = (x | 0); return ($thiz.isValidByte__Z() && ($thiz.byteValue__B() === x3)) } else if ($isShort(x)) { const x4 = (x | 0); return ($thiz.isValidShort__Z() && ($thiz.shortValue__S() === x4)) } else if ($isInt(x)) { const x5 = (x | 0); return ($thiz.isValidInt__Z() && ($thiz.intValue__I() === x5)) } else if ((x instanceof $c_sjsr_RuntimeLong)) { const t = $uJ(x); const lo = t.lo$2; const hi = t.hi$2; const t$1 = $thiz.longValue__J(); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; return ((lo$1 === lo) && (hi$1 === hi)) } else if ($isFloat(x)) { const x7 = (+x); return ($thiz.floatValue__F() === x7) } else if (((typeof x) === "number")) { const x8 = (+x); return ($thiz.doubleValue__D() === x8) } else { return false } }); const $f_s_math_ScalaNumericAnyConversions__unifiedPrimitiveHashcode__I = (function($thiz) { const t = $thiz.longValue__J(); const lo = t.lo$2; const hi = t.hi$2; return ((((hi === (-1)) ? (((-2147483648) ^ lo) >= 0) : (hi > (-1))) && ((hi === 0) ? (((-2147483648) ^ lo) <= (-1)) : (hi < 0))) ? lo : $m_sr_Statics$().longHash__J__I(new $c_sjsr_RuntimeLong().init___I__I(lo, hi))) }); const $f_s_math_ScalaNumericAnyConversions__isValidByte__Z = (function($thiz) { return ($thiz.isWhole__Z() && ($thiz.intValue__I() === $thiz.byteValue__B())) }); const $f_s_util_control_NoStackTrace__fillInStackTrace__jl_Throwable = (function($thiz) { const this$1 = $m_s_util_control_NoStackTrace$(); if (this$1.$$undnoSuppression$1) { return $c_jl_Throwable.prototype.fillInStackTrace__jl_Throwable.call($thiz) } else { return $thiz } }); const $is_sc_GenTraversableOnce = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_GenTraversableOnce))) }); const $isArrayOf_sc_GenTraversableOnce = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_GenTraversableOnce))) }); const $f_sc_convert_LowPriorityWrapAsJava__mapAsJavaMap__sc_Map__ju_Map = (function($thiz, m) { if ((m === null)) { return null } else if (((m instanceof $c_sc_convert_Wrappers$JMapWrapper) && (m.scala$collection$convert$Wrappers$JMapWrapper$$$outer__sc_convert_Wrappers() === $m_sc_convert_Wrappers$()))) { const x2 = m; const wrapped = x2.underlying__ju_Map(); return wrapped } else { return new $c_sc_convert_Wrappers$MapWrapper().init___sc_convert_Wrappers__sc_Map($m_sc_convert_Wrappers$(), m) } }); const $f_sci_VectorPointer__copyOf__AO__AO = (function($thiz, a) { const copy = $newArrayObject($d_O.getArrayOf(), [a.u.length]); $systemArraycopy(a, 0, copy, 0, a.u.length); return copy }); const $f_sci_VectorPointer__gotoNextBlockStart__I__I__V = (function($thiz, index, xor) { if ((xor < 1024)) { $thiz.display0$und$eq__AO__V($thiz.display1__AO().u[(31 & ((index >>> 5) | 0))]) } else if ((xor < 32768)) { $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[(31 & ((index >>> 10) | 0))]); $thiz.display0$und$eq__AO__V($thiz.display1__AO().u[0]) } else if ((xor < 1048576)) { $thiz.display2$und$eq__AO__V($thiz.display3__AO().u[(31 & ((index >>> 15) | 0))]); $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[0]); $thiz.display0$und$eq__AO__V($thiz.display1__AO().u[0]) } else if ((xor < 33554432)) { $thiz.display3$und$eq__AO__V($thiz.display4__AO().u[(31 & ((index >>> 20) | 0))]); $thiz.display2$und$eq__AO__V($thiz.display3__AO().u[0]); $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[0]); $thiz.display0$und$eq__AO__V($thiz.display1__AO().u[0]) } else if ((xor < 1073741824)) { $thiz.display4$und$eq__AO__V($thiz.display5__AO().u[(31 & ((index >>> 25) | 0))]); $thiz.display3$und$eq__AO__V($thiz.display4__AO().u[0]); $thiz.display2$und$eq__AO__V($thiz.display3__AO().u[0]); $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[0]); $thiz.display0$und$eq__AO__V($thiz.display1__AO().u[0]) } else { throw new $c_jl_IllegalArgumentException().init___() } }); const $f_sci_VectorPointer__gotoFreshPosWritable1__I__I__I__V = (function($thiz, oldIndex, newIndex, xor) { $f_sci_VectorPointer__stabilize__I__V($thiz, oldIndex); $f_sci_VectorPointer__gotoFreshPosWritable0__I__I__I__V($thiz, oldIndex, newIndex, xor) }); const $f_sci_VectorPointer__getElem__I__I__O = (function($thiz, index, xor) { if ((xor < 32)) { return $thiz.display0__AO().u[(31 & index)] } else if ((xor < 1024)) { return $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))].u[(31 & index)] } else if ((xor < 32768)) { return $thiz.display2__AO().u[(31 & ((index >>> 10) | 0))].u[(31 & ((index >>> 5) | 0))].u[(31 & index)] } else if ((xor < 1048576)) { return $thiz.display3__AO().u[(31 & ((index >>> 15) | 0))].u[(31 & ((index >>> 10) | 0))].u[(31 & ((index >>> 5) | 0))].u[(31 & index)] } else if ((xor < 33554432)) { return $thiz.display4__AO().u[(31 & ((index >>> 20) | 0))].u[(31 & ((index >>> 15) | 0))].u[(31 & ((index >>> 10) | 0))].u[(31 & ((index >>> 5) | 0))].u[(31 & index)] } else if ((xor < 1073741824)) { return $thiz.display5__AO().u[(31 & ((index >>> 25) | 0))].u[(31 & ((index >>> 20) | 0))].u[(31 & ((index >>> 15) | 0))].u[(31 & ((index >>> 10) | 0))].u[(31 & ((index >>> 5) | 0))].u[(31 & index)] } else { throw new $c_jl_IllegalArgumentException().init___() } }); const $f_sci_VectorPointer__gotoFreshPosWritable0__I__I__I__V = (function($thiz, oldIndex, newIndex, xor) { if ((!(xor < 32))) { if ((xor < 1024)) { if (($thiz.depth__I() === 1)) { $thiz.display1$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1__AO().u[(31 & ((oldIndex >>> 5) | 0))] = $thiz.display0__AO(); $thiz.depth$und$eq__I__V(((1 + $thiz.depth__I()) | 0)) }; $thiz.display0$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) } else if ((xor < 32768)) { if (($thiz.depth__I() === 2)) { $thiz.display2$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display2__AO().u[(31 & ((oldIndex >>> 10) | 0))] = $thiz.display1__AO(); $thiz.depth$und$eq__I__V(((1 + $thiz.depth__I()) | 0)) }; $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[(31 & ((newIndex >>> 10) | 0))]); if (($thiz.display1__AO() === null)) { $thiz.display1$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) }; $thiz.display0$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) } else if ((xor < 1048576)) { if (($thiz.depth__I() === 3)) { $thiz.display3$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display3__AO().u[(31 & ((oldIndex >>> 15) | 0))] = $thiz.display2__AO(); $thiz.depth$und$eq__I__V(((1 + $thiz.depth__I()) | 0)) }; $thiz.display2$und$eq__AO__V($thiz.display3__AO().u[(31 & ((newIndex >>> 15) | 0))]); if (($thiz.display2__AO() === null)) { $thiz.display2$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) }; $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[(31 & ((newIndex >>> 10) | 0))]); if (($thiz.display1__AO() === null)) { $thiz.display1$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) }; $thiz.display0$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) } else if ((xor < 33554432)) { if (($thiz.depth__I() === 4)) { $thiz.display4$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display4__AO().u[(31 & ((oldIndex >>> 20) | 0))] = $thiz.display3__AO(); $thiz.depth$und$eq__I__V(((1 + $thiz.depth__I()) | 0)) }; $thiz.display3$und$eq__AO__V($thiz.display4__AO().u[(31 & ((newIndex >>> 20) | 0))]); if (($thiz.display3__AO() === null)) { $thiz.display3$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) }; $thiz.display2$und$eq__AO__V($thiz.display3__AO().u[(31 & ((newIndex >>> 15) | 0))]); if (($thiz.display2__AO() === null)) { $thiz.display2$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) }; $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[(31 & ((newIndex >>> 10) | 0))]); if (($thiz.display1__AO() === null)) { $thiz.display1$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) }; $thiz.display0$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) } else if ((xor < 1073741824)) { if (($thiz.depth__I() === 5)) { $thiz.display5$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display5__AO().u[(31 & ((oldIndex >>> 25) | 0))] = $thiz.display4__AO(); $thiz.depth$und$eq__I__V(((1 + $thiz.depth__I()) | 0)) }; $thiz.display4$und$eq__AO__V($thiz.display5__AO().u[(31 & ((newIndex >>> 25) | 0))]); if (($thiz.display4__AO() === null)) { $thiz.display4$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) }; $thiz.display3$und$eq__AO__V($thiz.display4__AO().u[(31 & ((newIndex >>> 20) | 0))]); if (($thiz.display3__AO() === null)) { $thiz.display3$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) }; $thiz.display2$und$eq__AO__V($thiz.display3__AO().u[(31 & ((newIndex >>> 15) | 0))]); if (($thiz.display2__AO() === null)) { $thiz.display2$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) }; $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[(31 & ((newIndex >>> 10) | 0))]); if (($thiz.display1__AO() === null)) { $thiz.display1$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) }; $thiz.display0$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])) } else { throw new $c_jl_IllegalArgumentException().init___() } } }); const $f_sci_VectorPointer__gotoPosWritable1__I__I__I__V = (function($thiz, oldIndex, newIndex, xor) { if ((xor < 32)) { const a = $thiz.display0__AO(); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a)) } else if ((xor < 1024)) { const a$1 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$1)); $thiz.display1__AO().u[(31 & ((oldIndex >>> 5) | 0))] = $thiz.display0__AO(); const array = $thiz.display1__AO(); const index = (31 & ((newIndex >>> 5) | 0)); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array, index)) } else if ((xor < 32768)) { const a$2 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$2)); const a$3 = $thiz.display2__AO(); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$3)); $thiz.display1__AO().u[(31 & ((oldIndex >>> 5) | 0))] = $thiz.display0__AO(); $thiz.display2__AO().u[(31 & ((oldIndex >>> 10) | 0))] = $thiz.display1__AO(); const array$1 = $thiz.display2__AO(); const index$1 = (31 & ((newIndex >>> 10) | 0)); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$1, index$1)); const array$2 = $thiz.display1__AO(); const index$2 = (31 & ((newIndex >>> 5) | 0)); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$2, index$2)) } else if ((xor < 1048576)) { const a$4 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$4)); const a$5 = $thiz.display2__AO(); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$5)); const a$6 = $thiz.display3__AO(); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$6)); $thiz.display1__AO().u[(31 & ((oldIndex >>> 5) | 0))] = $thiz.display0__AO(); $thiz.display2__AO().u[(31 & ((oldIndex >>> 10) | 0))] = $thiz.display1__AO(); $thiz.display3__AO().u[(31 & ((oldIndex >>> 15) | 0))] = $thiz.display2__AO(); const array$3 = $thiz.display3__AO(); const index$3 = (31 & ((newIndex >>> 15) | 0)); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$3, index$3)); const array$4 = $thiz.display2__AO(); const index$4 = (31 & ((newIndex >>> 10) | 0)); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$4, index$4)); const array$5 = $thiz.display1__AO(); const index$5 = (31 & ((newIndex >>> 5) | 0)); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$5, index$5)) } else if ((xor < 33554432)) { const a$7 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$7)); const a$8 = $thiz.display2__AO(); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$8)); const a$9 = $thiz.display3__AO(); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$9)); const a$10 = $thiz.display4__AO(); $thiz.display4$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$10)); $thiz.display1__AO().u[(31 & ((oldIndex >>> 5) | 0))] = $thiz.display0__AO(); $thiz.display2__AO().u[(31 & ((oldIndex >>> 10) | 0))] = $thiz.display1__AO(); $thiz.display3__AO().u[(31 & ((oldIndex >>> 15) | 0))] = $thiz.display2__AO(); $thiz.display4__AO().u[(31 & ((oldIndex >>> 20) | 0))] = $thiz.display3__AO(); const array$6 = $thiz.display4__AO(); const index$6 = (31 & ((newIndex >>> 20) | 0)); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$6, index$6)); const array$7 = $thiz.display3__AO(); const index$7 = (31 & ((newIndex >>> 15) | 0)); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$7, index$7)); const array$8 = $thiz.display2__AO(); const index$8 = (31 & ((newIndex >>> 10) | 0)); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$8, index$8)); const array$9 = $thiz.display1__AO(); const index$9 = (31 & ((newIndex >>> 5) | 0)); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$9, index$9)) } else if ((xor < 1073741824)) { const a$11 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$11)); const a$12 = $thiz.display2__AO(); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$12)); const a$13 = $thiz.display3__AO(); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$13)); const a$14 = $thiz.display4__AO(); $thiz.display4$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$14)); const a$15 = $thiz.display5__AO(); $thiz.display5$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$15)); $thiz.display1__AO().u[(31 & ((oldIndex >>> 5) | 0))] = $thiz.display0__AO(); $thiz.display2__AO().u[(31 & ((oldIndex >>> 10) | 0))] = $thiz.display1__AO(); $thiz.display3__AO().u[(31 & ((oldIndex >>> 15) | 0))] = $thiz.display2__AO(); $thiz.display4__AO().u[(31 & ((oldIndex >>> 20) | 0))] = $thiz.display3__AO(); $thiz.display5__AO().u[(31 & ((oldIndex >>> 25) | 0))] = $thiz.display4__AO(); const array$10 = $thiz.display5__AO(); const index$10 = (31 & ((newIndex >>> 25) | 0)); $thiz.display4$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$10, index$10)); const array$11 = $thiz.display4__AO(); const index$11 = (31 & ((newIndex >>> 20) | 0)); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$11, index$11)); const array$12 = $thiz.display3__AO(); const index$12 = (31 & ((newIndex >>> 15) | 0)); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$12, index$12)); const array$13 = $thiz.display2__AO(); const index$13 = (31 & ((newIndex >>> 10) | 0)); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$13, index$13)); const array$14 = $thiz.display1__AO(); const index$14 = (31 & ((newIndex >>> 5) | 0)); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$14, index$14)) } else { throw new $c_jl_IllegalArgumentException().init___() } }); const $f_sci_VectorPointer__copyRange__AO__I__I__AO = (function($thiz, array, oldLeft, newLeft) { const elems = $newArrayObject($d_O.getArrayOf(), [32]); $systemArraycopy(array, oldLeft, elems, newLeft, ((32 - ((newLeft > oldLeft) ? newLeft : oldLeft)) | 0)); return elems }); const $f_sci_VectorPointer__gotoPos__I__I__V = (function($thiz, index, xor) { if ((!(xor < 32))) { if ((xor < 1024)) { $thiz.display0$und$eq__AO__V($thiz.display1__AO().u[(31 & ((index >>> 5) | 0))]) } else if ((xor < 32768)) { $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[(31 & ((index >>> 10) | 0))]); $thiz.display0$und$eq__AO__V($thiz.display1__AO().u[(31 & ((index >>> 5) | 0))]) } else if ((xor < 1048576)) { $thiz.display2$und$eq__AO__V($thiz.display3__AO().u[(31 & ((index >>> 15) | 0))]); $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[(31 & ((index >>> 10) | 0))]); $thiz.display0$und$eq__AO__V($thiz.display1__AO().u[(31 & ((index >>> 5) | 0))]) } else if ((xor < 33554432)) { $thiz.display3$und$eq__AO__V($thiz.display4__AO().u[(31 & ((index >>> 20) | 0))]); $thiz.display2$und$eq__AO__V($thiz.display3__AO().u[(31 & ((index >>> 15) | 0))]); $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[(31 & ((index >>> 10) | 0))]); $thiz.display0$und$eq__AO__V($thiz.display1__AO().u[(31 & ((index >>> 5) | 0))]) } else if ((xor < 1073741824)) { $thiz.display4$und$eq__AO__V($thiz.display5__AO().u[(31 & ((index >>> 25) | 0))]); $thiz.display3$und$eq__AO__V($thiz.display4__AO().u[(31 & ((index >>> 20) | 0))]); $thiz.display2$und$eq__AO__V($thiz.display3__AO().u[(31 & ((index >>> 15) | 0))]); $thiz.display1$und$eq__AO__V($thiz.display2__AO().u[(31 & ((index >>> 10) | 0))]); $thiz.display0$und$eq__AO__V($thiz.display1__AO().u[(31 & ((index >>> 5) | 0))]) } else { throw new $c_jl_IllegalArgumentException().init___() } } }); const $f_sci_VectorPointer__gotoPosWritable0__I__I__V = (function($thiz, newIndex, xor) { const x1 = (((-1) + $thiz.depth__I()) | 0); switch (x1) { case 5: { const a = $thiz.display5__AO(); $thiz.display5$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a)); const array = $thiz.display5__AO(); const index = (31 & ((newIndex >>> 25) | 0)); $thiz.display4$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array, index)); const array$1 = $thiz.display4__AO(); const index$1 = (31 & ((newIndex >>> 20) | 0)); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$1, index$1)); const array$2 = $thiz.display3__AO(); const index$2 = (31 & ((newIndex >>> 15) | 0)); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$2, index$2)); const array$3 = $thiz.display2__AO(); const index$3 = (31 & ((newIndex >>> 10) | 0)); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$3, index$3)); const array$4 = $thiz.display1__AO(); const index$4 = (31 & ((newIndex >>> 5) | 0)); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$4, index$4)); break } case 4: { const a$1 = $thiz.display4__AO(); $thiz.display4$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$1)); const array$5 = $thiz.display4__AO(); const index$5 = (31 & ((newIndex >>> 20) | 0)); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$5, index$5)); const array$6 = $thiz.display3__AO(); const index$6 = (31 & ((newIndex >>> 15) | 0)); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$6, index$6)); const array$7 = $thiz.display2__AO(); const index$7 = (31 & ((newIndex >>> 10) | 0)); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$7, index$7)); const array$8 = $thiz.display1__AO(); const index$8 = (31 & ((newIndex >>> 5) | 0)); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$8, index$8)); break } case 3: { const a$2 = $thiz.display3__AO(); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$2)); const array$9 = $thiz.display3__AO(); const index$9 = (31 & ((newIndex >>> 15) | 0)); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$9, index$9)); const array$10 = $thiz.display2__AO(); const index$10 = (31 & ((newIndex >>> 10) | 0)); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$10, index$10)); const array$11 = $thiz.display1__AO(); const index$11 = (31 & ((newIndex >>> 5) | 0)); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$11, index$11)); break } case 2: { const a$3 = $thiz.display2__AO(); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$3)); const array$12 = $thiz.display2__AO(); const index$12 = (31 & ((newIndex >>> 10) | 0)); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$12, index$12)); const array$13 = $thiz.display1__AO(); const index$13 = (31 & ((newIndex >>> 5) | 0)); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$13, index$13)); break } case 1: { const a$4 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$4)); const array$14 = $thiz.display1__AO(); const index$14 = (31 & ((newIndex >>> 5) | 0)); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO($thiz, array$14, index$14)); break } case 0: { const a$5 = $thiz.display0__AO(); $thiz.display0$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$5)); break } default: { throw new $c_s_MatchError().init___O(x1) } } }); const $f_sci_VectorPointer__stabilize__I__V = (function($thiz, index) { const x1 = (((-1) + $thiz.depth__I()) | 0); switch (x1) { case 5: { const a = $thiz.display5__AO(); $thiz.display5$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a)); const a$1 = $thiz.display4__AO(); $thiz.display4$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$1)); const a$2 = $thiz.display3__AO(); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$2)); const a$3 = $thiz.display2__AO(); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$3)); const a$4 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$4)); $thiz.display5__AO().u[(31 & ((index >>> 25) | 0))] = $thiz.display4__AO(); $thiz.display4__AO().u[(31 & ((index >>> 20) | 0))] = $thiz.display3__AO(); $thiz.display3__AO().u[(31 & ((index >>> 15) | 0))] = $thiz.display2__AO(); $thiz.display2__AO().u[(31 & ((index >>> 10) | 0))] = $thiz.display1__AO(); $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))] = $thiz.display0__AO(); break } case 4: { const a$5 = $thiz.display4__AO(); $thiz.display4$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$5)); const a$6 = $thiz.display3__AO(); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$6)); const a$7 = $thiz.display2__AO(); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$7)); const a$8 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$8)); $thiz.display4__AO().u[(31 & ((index >>> 20) | 0))] = $thiz.display3__AO(); $thiz.display3__AO().u[(31 & ((index >>> 15) | 0))] = $thiz.display2__AO(); $thiz.display2__AO().u[(31 & ((index >>> 10) | 0))] = $thiz.display1__AO(); $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))] = $thiz.display0__AO(); break } case 3: { const a$9 = $thiz.display3__AO(); $thiz.display3$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$9)); const a$10 = $thiz.display2__AO(); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$10)); const a$11 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$11)); $thiz.display3__AO().u[(31 & ((index >>> 15) | 0))] = $thiz.display2__AO(); $thiz.display2__AO().u[(31 & ((index >>> 10) | 0))] = $thiz.display1__AO(); $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))] = $thiz.display0__AO(); break } case 2: { const a$12 = $thiz.display2__AO(); $thiz.display2$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$12)); const a$13 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$13)); $thiz.display2__AO().u[(31 & ((index >>> 10) | 0))] = $thiz.display1__AO(); $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))] = $thiz.display0__AO(); break } case 1: { const a$14 = $thiz.display1__AO(); $thiz.display1$und$eq__AO__V($f_sci_VectorPointer__copyOf__AO__AO($thiz, a$14)); $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))] = $thiz.display0__AO(); break } case 0: { break } default: { throw new $c_s_MatchError().init___O(x1) } } }); const $f_sci_VectorPointer__nullSlotAndCopy__AO__I__AO = (function($thiz, array, index) { const x = array.u[index]; array.u[index] = null; const a = x; return $f_sci_VectorPointer__copyOf__AO__AO($thiz, a) }); const $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V = (function($thiz, that, depth) { $thiz.depth$und$eq__I__V(depth); const x1 = (((-1) + depth) | 0); switch (x1) { case (-1): { break } case 0: { $thiz.display0$und$eq__AO__V(that.display0__AO()); break } case 1: { $thiz.display1$und$eq__AO__V(that.display1__AO()); $thiz.display0$und$eq__AO__V(that.display0__AO()); break } case 2: { $thiz.display2$und$eq__AO__V(that.display2__AO()); $thiz.display1$und$eq__AO__V(that.display1__AO()); $thiz.display0$und$eq__AO__V(that.display0__AO()); break } case 3: { $thiz.display3$und$eq__AO__V(that.display3__AO()); $thiz.display2$und$eq__AO__V(that.display2__AO()); $thiz.display1$und$eq__AO__V(that.display1__AO()); $thiz.display0$und$eq__AO__V(that.display0__AO()); break } case 4: { $thiz.display4$und$eq__AO__V(that.display4__AO()); $thiz.display3$und$eq__AO__V(that.display3__AO()); $thiz.display2$und$eq__AO__V(that.display2__AO()); $thiz.display1$und$eq__AO__V(that.display1__AO()); $thiz.display0$und$eq__AO__V(that.display0__AO()); break } case 5: { $thiz.display5$und$eq__AO__V(that.display5__AO()); $thiz.display4$und$eq__AO__V(that.display4__AO()); $thiz.display3$und$eq__AO__V(that.display3__AO()); $thiz.display2$und$eq__AO__V(that.display2__AO()); $thiz.display1$und$eq__AO__V(that.display1__AO()); $thiz.display0$und$eq__AO__V(that.display0__AO()); break } default: { throw new $c_s_MatchError().init___O(x1) } } }); const $f_sci_VectorPointer__gotoNextBlockStartWritable__I__I__V = (function($thiz, index, xor) { if ((xor < 1024)) { if (($thiz.depth__I() === 1)) { $thiz.display1$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1__AO().u[0] = $thiz.display0__AO(); $thiz.depth$und$eq__I__V(((1 + $thiz.depth__I()) | 0)) }; $thiz.display0$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))] = $thiz.display0__AO() } else if ((xor < 32768)) { if (($thiz.depth__I() === 2)) { $thiz.display2$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display2__AO().u[0] = $thiz.display1__AO(); $thiz.depth$und$eq__I__V(((1 + $thiz.depth__I()) | 0)) }; $thiz.display0$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))] = $thiz.display0__AO(); $thiz.display2__AO().u[(31 & ((index >>> 10) | 0))] = $thiz.display1__AO() } else if ((xor < 1048576)) { if (($thiz.depth__I() === 3)) { $thiz.display3$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display3__AO().u[0] = $thiz.display2__AO(); $thiz.depth$und$eq__I__V(((1 + $thiz.depth__I()) | 0)) }; $thiz.display0$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display2$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))] = $thiz.display0__AO(); $thiz.display2__AO().u[(31 & ((index >>> 10) | 0))] = $thiz.display1__AO(); $thiz.display3__AO().u[(31 & ((index >>> 15) | 0))] = $thiz.display2__AO() } else if ((xor < 33554432)) { if (($thiz.depth__I() === 4)) { $thiz.display4$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display4__AO().u[0] = $thiz.display3__AO(); $thiz.depth$und$eq__I__V(((1 + $thiz.depth__I()) | 0)) }; $thiz.display0$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display2$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display3$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))] = $thiz.display0__AO(); $thiz.display2__AO().u[(31 & ((index >>> 10) | 0))] = $thiz.display1__AO(); $thiz.display3__AO().u[(31 & ((index >>> 15) | 0))] = $thiz.display2__AO(); $thiz.display4__AO().u[(31 & ((index >>> 20) | 0))] = $thiz.display3__AO() } else if ((xor < 1073741824)) { if (($thiz.depth__I() === 5)) { $thiz.display5$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display5__AO().u[0] = $thiz.display4__AO(); $thiz.depth$und$eq__I__V(((1 + $thiz.depth__I()) | 0)) }; $thiz.display0$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display2$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display3$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display4$und$eq__AO__V($newArrayObject($d_O.getArrayOf(), [32])); $thiz.display1__AO().u[(31 & ((index >>> 5) | 0))] = $thiz.display0__AO(); $thiz.display2__AO().u[(31 & ((index >>> 10) | 0))] = $thiz.display1__AO(); $thiz.display3__AO().u[(31 & ((index >>> 15) | 0))] = $thiz.display2__AO(); $thiz.display4__AO().u[(31 & ((index >>> 20) | 0))] = $thiz.display3__AO(); $thiz.display5__AO().u[(31 & ((index >>> 25) | 0))] = $thiz.display4__AO() } else { throw new $c_jl_IllegalArgumentException().init___() } }); const $f_scm_FlatHashTable$HashUtils__elemToEntry__O__O = (function($thiz, elem) { return ((elem === null) ? $m_scm_FlatHashTable$NullSentinel$() : elem) }); const $f_scm_FlatHashTable$HashUtils__entryToElem__O__O = (function($thiz, entry) { return ((entry === $m_scm_FlatHashTable$NullSentinel$()) ? null : entry) }); const $f_scm_FlatHashTable$HashUtils__improve__I__I__I = (function($thiz, hcode, seed) { const i = $m_s_util_hashing_package$().byteswap32__I__I(hcode); return (((i >>> seed) | 0) | (i << ((-seed) | 0))) }); const $d_scm_HashEntry = new $TypeData().initClass({ scm_HashEntry: 0 }, true, "scala.collection.mutable.HashEntry", { scm_HashEntry: 1 }); const $f_scm_HashTable$HashUtils__improve__I__I__I = (function($thiz, hcode, seed) { const i = $m_s_util_hashing_package$().byteswap32__I__I(hcode); return (((i >>> seed) | 0) | (i << ((-seed) | 0))) }); class $c_Lfastparse_Api extends $c_O { constructor() { super(); this.Mutable$module$1 = null; this.Parsed$module$1 = null; this.implicitReprOps$1 = null; this.implicitElemSetHelper$1 = null; this.implicitClassTag$1 = null; this.implicitOrdering$1 = null; this.Pass$1 = null; this.Fail$1 = null; this.Start$1 = null; this.End$1 = null; this.Index$1 = null; this.NoTrace$1 = null; this.NoCut$1 = null; this.ParseError$1 = null }; } class $c_Lfastparse_Api$ElemPred extends $c_O { constructor() { super(); this.$$outer$1 = null }; init___Lfastparse_Api($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; } class $c_Lfastparse_Api$ElemsWhile extends $c_O { constructor() { super(); this.$$outer$1 = null }; init___Lfastparse_Api($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; } class $c_Lfastparse_CharPredicates$ extends $c_O { constructor() { super(); this.isPrintableChar$1 = null; this.bit1$1 = null; this.bit2$1 = null; this.bit3$1 = null; this.bit4$1 = null; this.bit5$1 = null; this.charTypeLookup$1 = null; this.bitmap$0$1 = 0 }; init___() { return this }; } const $d_Lfastparse_CharPredicates$ = new $TypeData().initClass({ Lfastparse_CharPredicates$: 0 }, false, "fastparse.CharPredicates$", { Lfastparse_CharPredicates$: 1, O: 1 }); $c_Lfastparse_CharPredicates$.prototype.$classData = $d_Lfastparse_CharPredicates$; let $n_Lfastparse_CharPredicates$ = (void 0); const $m_Lfastparse_CharPredicates$ = (function() { if ((!$n_Lfastparse_CharPredicates$)) { $n_Lfastparse_CharPredicates$ = new $c_Lfastparse_CharPredicates$().init___() }; return $n_Lfastparse_CharPredicates$ }); class $c_Lfastparse_WhitespaceApi$Wrapper extends $c_O { constructor() { super(); this.WL$1 = null }; init___Lfastparse_core_Parser(WL) { this.WL$1 = WL; return this }; } class $c_Lfastparse_core_ParserApi extends $c_O { constructor() { super(); this.repr$1 = null }; init___Lfastparse_utils_ReprOps(repr) { this.repr$1 = repr; return this }; } class $c_Lfastparse_core_Precedence$ extends $c_O { constructor() { super(); this.Letters$1 = 0; this.$$bar$1 = 0; this.$$up$1 = 0; this.$$amp$1 = 0; this.$$less$greater$1 = 0; this.$$eq$bang$1 = 0; this.$$colon$1 = 0; this.$$plus$minus$1 = 0; this.$$times$div$percent$1 = 0; this.OtherOp$1 = 0; this.PrefixOp$1 = 0; this.Max$1 = 0 }; init___() { this.Letters$1 = 0; this.$$bar$1 = 1; this.$$up$1 = 2; this.$$amp$1 = 3; this.$$less$greater$1 = 4; this.$$eq$bang$1 = 5; this.$$colon$1 = 6; this.$$plus$minus$1 = 7; this.$$times$div$percent$1 = 8; this.OtherOp$1 = 9; this.PrefixOp$1 = 10; this.Max$1 = 11; return this }; opWrap__Lfastparse_core_Precedence__I__T(s, selfOpPred) { return ((s.opPred__I() >= selfOpPred) ? s.toString__T() : (("(" + s) + ")")) }; } const $d_Lfastparse_core_Precedence$ = new $TypeData().initClass({ Lfastparse_core_Precedence$: 0 }, false, "fastparse.core.Precedence$", { Lfastparse_core_Precedence$: 1, O: 1 }); $c_Lfastparse_core_Precedence$.prototype.$classData = $d_Lfastparse_core_Precedence$; let $n_Lfastparse_core_Precedence$ = (void 0); const $m_Lfastparse_core_Precedence$ = (function() { if ((!$n_Lfastparse_core_Precedence$)) { $n_Lfastparse_core_Precedence$ = new $c_Lfastparse_core_Precedence$().init___() }; return $n_Lfastparse_core_Precedence$ }); const $f_Lfastparse_core_SequencerGen__Sequencer2__O = (function($thiz) { const f = new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(t$2, d$2) { const t = t$2; return new $c_T3().init___O__O__O(t.$$und1__O(), t.$$und2__O(), d$2) }) })($thiz)); return new $c_Lfastparse_core_Implicits$Sequencer$$anon$1().init___F2(f) }); class $c_Lfastparse_parsers_Intrinsics$ extends $c_O { init___() { return this }; flattenStringsGen__sc_Seq__Lfastparse_utils_Generator$Iter(items) { const this$1 = items.iterator__sc_Iterator(); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$1$2) { const x$1 = x$1$2; return x$1.iterator__sc_Iterator() }) })(this)); const travs = new $c_sc_Iterator$$anon$10().init___sc_Iterator__F1(this$1, f); const ev = $m_s_Predef$().singleton$und$less$colon$less$2; const this$3 = new $c_sc_TraversableOnce$MonadOps().init___sc_TraversableOnce(travs); const this$4 = this$3.trav$1.toIterator__sc_Iterator(); const this$5 = new $c_sc_TraversableOnce$FlattenOps().init___sc_TraversableOnce(new $c_sc_Iterator$$anon$10().init___sc_Iterator__F1(this$4, ev)); return new $c_Lfastparse_utils_Generator$Iter().init___sc_Iterator(new $c_sc_TraversableOnce$FlattenOps$$anon$2().init___sc_TraversableOnce$FlattenOps(this$5)) }; makeGenOrPred__F1__Z__Lfastparse_utils_ElemSetHelper__s_util_Either(predicate, precompute, helper) { if (precompute) { $m_s_package$(); const value = new $c_Lfastparse_utils_Generator$Pred().init___F1__Lfastparse_utils_ElemSetHelper(predicate, helper); return new $c_s_util_Left().init___O(value) } else { $m_s_package$(); return new $c_s_util_Right().init___O(predicate) } }; prettyPrintStrings__T__sc_Seq__Lfastparse_utils_ReprOps__T(name, strings, repr) { const jsx$2 = new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["", "(", ")"])); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, repr$1) { return (function(input$2) { const input = input$2; return input.mkString__T() }) })(this, repr)); const this$1 = $m_sc_Seq$(); const input$1 = strings.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2); const input$3 = input$1.mkString__T(); return jsx$2.s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([name, repr.literalize__T__T(input$3)])) }; } const $d_Lfastparse_parsers_Intrinsics$ = new $TypeData().initClass({ Lfastparse_parsers_Intrinsics$: 0 }, false, "fastparse.parsers.Intrinsics$", { Lfastparse_parsers_Intrinsics$: 1, O: 1 }); $c_Lfastparse_parsers_Intrinsics$.prototype.$classData = $d_Lfastparse_parsers_Intrinsics$; let $n_Lfastparse_parsers_Intrinsics$ = (void 0); const $m_Lfastparse_parsers_Intrinsics$ = (function() { if ((!$n_Lfastparse_parsers_Intrinsics$)) { $n_Lfastparse_parsers_Intrinsics$ = new $c_Lfastparse_parsers_Intrinsics$().init___() }; return $n_Lfastparse_parsers_Intrinsics$ }); class $c_Lfastparse_parsers_Terminals$ extends $c_O { init___() { return this }; rec$1__p1__I__Lfastparse_utils_ParserInput__O__I__Lfastparse_utils_ReprOps__Z(i, src$1, prefix$1, offset$1, repr$1) { _rec: while (true) { const jsx$1 = i; const input = prefix$1; if ((jsx$1 >= (input.length | 0))) { return true } else if (src$1.isReachable__I__Z(((i + offset$1) | 0))) { const jsx$3 = $m_sr_BoxesRunTime$(); const index = ((i + offset$1) | 0); const value = src$1.data$2; const input$1 = value; const c = (65535 & (input$1.charCodeAt(index) | 0)); const jsx$2 = new $c_jl_Character().init___C(c); const i$1 = i; const input$2 = prefix$1; const c$1 = (65535 & (input$2.charCodeAt(i$1) | 0)); if ((!jsx$3.equals__O__O__Z(jsx$2, new $c_jl_Character().init___C(c$1)))) { return false } else { i = ((1 + i) | 0); continue _rec } } else { return false } } }; } const $d_Lfastparse_parsers_Terminals$ = new $TypeData().initClass({ Lfastparse_parsers_Terminals$: 0 }, false, "fastparse.parsers.Terminals$", { Lfastparse_parsers_Terminals$: 1, O: 1 }); $c_Lfastparse_parsers_Terminals$.prototype.$classData = $d_Lfastparse_parsers_Terminals$; let $n_Lfastparse_parsers_Terminals$ = (void 0); const $m_Lfastparse_parsers_Terminals$ = (function() { if ((!$n_Lfastparse_parsers_Terminals$)) { $n_Lfastparse_parsers_Terminals$ = new $c_Lfastparse_parsers_Terminals$().init___() }; return $n_Lfastparse_parsers_Terminals$ }); class $c_Lfastparse_utils_Generator extends $c_O { } const $isArrayOf_Lfastparse_utils_Generator = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_utils_Generator))) }); class $c_Lfastparse_utils_Generator$Callback extends $c_O { } class $c_Lfastparse_utils_ReprOps extends $c_O { } class $c_Lfastparse_utils_Utils$ extends $c_O { init___() { return this }; literalize__sc_IndexedSeq__Z__T(s, unicode) { const sb = new $c_scm_StringBuilder().init___(); sb.append__C__scm_StringBuilder(34); let i = 0; const len = s.length__I(); while ((i < len)) { const c = s.apply__I__O(i); let x1; if ((c === null)) { x1 = 0 } else { const this$2 = c; x1 = this$2.value$1 }; switch (x1) { case 34: { sb.append__T__scm_StringBuilder("\\\""); break } case 92: { sb.append__T__scm_StringBuilder("\\\\"); break } case 8: { sb.append__T__scm_StringBuilder("\\b"); break } case 12: { sb.append__T__scm_StringBuilder("\\f"); break } case 10: { sb.append__T__scm_StringBuilder("\\n"); break } case 13: { sb.append__T__scm_StringBuilder("\\r"); break } case 9: { sb.append__T__scm_StringBuilder("\\t"); break } default: { if (((x1 < 32) || ((x1 > 126) && unicode))) { const this$4 = new $c_sci_StringOps().init___T("\\u%04x"); const array = [x1]; const jsx$2 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1$1 = (array.length | 0); switch (x1$1) { case (-1): { break } }; let i$1 = 0; const len$1 = (array.length | 0); while ((i$1 < len$1)) { const index = i$1; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i$1 = ((1 + i$1) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$2 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$2]); const len$3 = result.u.length; let i$2 = 0; let j = 0; const x = (array$1.length | 0); const x$1 = ((x < len$3) ? x : len$3); const that = result.u.length; const end = ((x$1 < that) ? x$1 : that); while ((i$2 < end)) { const jsx$1 = j; const index$1 = i$2; result.u[jsx$1] = array$1[index$1]; i$2 = ((1 + i$2) | 0); j = ((1 + j) | 0) }; sb.append__T__scm_StringBuilder(jsx$2.format__T__AO__T($$this, result)) } else { sb.append__C__scm_StringBuilder(x1) } } }; i = ((1 + i) | 0) }; sb.append__C__scm_StringBuilder(34); return sb.underlying$5.java$lang$StringBuilder$$content$f }; } const $d_Lfastparse_utils_Utils$ = new $TypeData().initClass({ Lfastparse_utils_Utils$: 0 }, false, "fastparse.utils.Utils$", { Lfastparse_utils_Utils$: 1, O: 1 }); $c_Lfastparse_utils_Utils$.prototype.$classData = $d_Lfastparse_utils_Utils$; let $n_Lfastparse_utils_Utils$ = (void 0); const $m_Lfastparse_utils_Utils$ = (function() { if ((!$n_Lfastparse_utils_Utils$)) { $n_Lfastparse_utils_Utils$ = new $c_Lfastparse_utils_Utils$().init___() }; return $n_Lfastparse_utils_Utils$ }); class $c_Lfastparse_utils_Utils$BitSet$ extends $c_O { init___() { return this }; apply__Lfastparse_utils_Generator__Lfastparse_utils_ElemSetHelper__Lfastparse_utils_Utils$BitSet(generator, helper) { const x1 = this.compute__Lfastparse_utils_Generator__Lfastparse_utils_ElemSetHelper__T3(generator, helper); if ((x1 === null)) { throw new $c_s_MatchError().init___O(x1) }; const first = (x1.$$und1$1 | 0); const last = (x1.$$und2$1 | 0); const array = x1.$$und3$1; return new $c_Lfastparse_utils_Utils$BitSet().init___AI__I__I__Lfastparse_utils_ElemSetHelper(array, first, last, helper) }; compute__Lfastparse_utils_Generator__Lfastparse_utils_ElemSetHelper__T3(generator, helper) { $m_scm_ArrayBuffer$(); const this$2 = new $c_scm_ArrayBuffer().init___(); generator.apply__Lfastparse_utils_Generator$Callback__V(new $c_Lfastparse_utils_Utils$BitSet$BitsetComputeCallback().init___scm_Buffer(this$2)); const e = $m_s_math_Ordering$Char$(); const a = $f_sc_TraversableOnce__min__s_math_Ordering__O(this$2, e); let a$1; if ((a === null)) { a$1 = 0 } else { const this$5 = a; a$1 = this$5.value$1 }; const e$1 = $m_s_math_Ordering$Char$(); const a$2 = $f_sc_TraversableOnce__max__s_math_Ordering__O(this$2, e$1); let a$3; if ((a$2 === null)) { a$3 = 0 } else { const this$8 = a$2; a$3 = this$8.value$1 }; const span = ((a$3 - a$1) | 0); const array = $newArrayObject($d_I.getArrayOf(), [((1 + ((span / 32) | 0)) | 0)]); let i = 0; while ((i < this$2.size0$6)) { const idx = i; const c = $f_scm_ResizableArray__apply__I__O(this$2, idx); let a$4; if ((c === null)) { a$4 = 0 } else { const this$10 = c; a$4 = this$10.value$1 }; const ev$1 = (((a$4 - a$1) | 0) >> 5); const jsx$1 = array.u[ev$1]; let a$5; if ((c === null)) { a$5 = 0 } else { const this$12 = c; a$5 = this$12.value$1 }; array.u[ev$1] = (jsx$1 | (1 << (31 & ((a$5 - a$1) | 0)))); i = ((1 + i) | 0) }; return new $c_T3().init___O__O__O(a$1, a$3, array) }; } const $d_Lfastparse_utils_Utils$BitSet$ = new $TypeData().initClass({ Lfastparse_utils_Utils$BitSet$: 0 }, false, "fastparse.utils.Utils$BitSet$", { Lfastparse_utils_Utils$BitSet$: 1, O: 1 }); $c_Lfastparse_utils_Utils$BitSet$.prototype.$classData = $d_Lfastparse_utils_Utils$BitSet$; let $n_Lfastparse_utils_Utils$BitSet$ = (void 0); const $m_Lfastparse_utils_Utils$BitSet$ = (function() { if ((!$n_Lfastparse_utils_Utils$BitSet$)) { $n_Lfastparse_utils_Utils$BitSet$ = new $c_Lfastparse_utils_Utils$BitSet$().init___() }; return $n_Lfastparse_utils_Utils$BitSet$ }); class $c_Lio_kaitai_struct_ImportList extends $c_O { constructor() { super(); this.list$1 = null }; init___() { this.list$1 = $m_scm_ListBuffer$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$()); return this }; } const $d_Lio_kaitai_struct_ImportList = new $TypeData().initClass({ Lio_kaitai_struct_ImportList: 0 }, false, "io.kaitai.struct.ImportList", { Lio_kaitai_struct_ImportList: 1, O: 1 }); $c_Lio_kaitai_struct_ImportList.prototype.$classData = $d_Lio_kaitai_struct_ImportList; class $c_Lio_kaitai_struct_LanguageOutputWriter extends $c_O { constructor() { super(); this.indentStr$1 = null; this.indentLevel$1 = 0 }; indentNow__T() { const x = this.indentStr$1; const this$2 = new $c_sci_StringOps().init___T(x); const n = this.indentLevel$1; return $f_sci_StringLike__$$times__I__T(this$2, n) }; inc__V() { this.indentLevel$1 = ((1 + this.indentLevel$1) | 0) }; putsLines__T__T__T__V(prefix, lines, hanging) { const strs = $m_sjsr_RuntimeString$().split__T__T__I__AT(lines, "\n", 0); this.puts__T__V((("" + prefix) + strs.u[0])); const until = strs.u.length; const x = ((until > 0) ? until : 0); const y = strs.u.length; const hi = ((x < y) ? x : y); const x$1 = (((-1) + hi) | 0); const size = ((x$1 > 0) ? x$1 : 0); const result = $m_jl_reflect_Array$().newInstance__jl_Class__I__O($objectGetClass(strs).getComponentType__jl_Class(), size); if ((size > 0)) { $m_s_Array$().copy__O__I__O__I__I__V(strs, 1, result, 0, size) }; const xs = result; let i = 0; const len = xs.u.length; while ((i < len)) { const index = i; const arg1 = xs.u[index]; const line = arg1; this.puts__T__V(((("" + prefix) + hanging) + line)); i = ((1 + i) | 0) } }; init___T(indentStr) { this.indentStr$1 = indentStr; this.indentLevel$1 = 0; return this }; dec__V() { this.indentLevel$1 = (((-1) + this.indentLevel$1) | 0) }; } class $c_Lio_kaitai_struct_Log$ extends $c_O { constructor() { super(); this.VALID$undSUBSYS$1 = null; this.fileOps$1 = null; this.typeProcValue$1 = null; this.typeProcParent$1 = null; this.typeResolve$1 = null; this.typeValid$1 = null; this.seqSizes$1 = null; this.importOps$1 = null; this.enumResolve$1 = null }; init___() { $n_Lio_kaitai_struct_Log$ = this; const jsx$1 = $m_sc_Seq$(); const array = ["file", "value", "parent", "type_resolve", "type_valid", "seq_sizes", "import", "enum_resolve"]; this.VALID$undSUBSYS$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); this.fileOps$1 = $m_Lio_kaitai_struct_NullLogger$(); this.typeProcValue$1 = $m_Lio_kaitai_struct_NullLogger$(); this.typeProcParent$1 = $m_Lio_kaitai_struct_NullLogger$(); this.typeResolve$1 = $m_Lio_kaitai_struct_NullLogger$(); this.typeValid$1 = $m_Lio_kaitai_struct_NullLogger$(); this.seqSizes$1 = $m_Lio_kaitai_struct_NullLogger$(); this.importOps$1 = $m_Lio_kaitai_struct_NullLogger$(); this.enumResolve$1 = $m_Lio_kaitai_struct_NullLogger$(); return this }; } const $d_Lio_kaitai_struct_Log$ = new $TypeData().initClass({ Lio_kaitai_struct_Log$: 0 }, false, "io.kaitai.struct.Log$", { Lio_kaitai_struct_Log$: 1, O: 1 }); $c_Lio_kaitai_struct_Log$.prototype.$classData = $d_Lio_kaitai_struct_Log$; let $n_Lio_kaitai_struct_Log$ = (void 0); const $m_Lio_kaitai_struct_Log$ = (function() { if ((!$n_Lio_kaitai_struct_Log$)) { $n_Lio_kaitai_struct_Log$ = new $c_Lio_kaitai_struct_Log$().init___() }; return $n_Lio_kaitai_struct_Log$ }); class $c_Lio_kaitai_struct_Main$ extends $c_O { init___() { return this }; importAndPrecompile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_RuntimeConfig__s_concurrent_Future(specs, config) { return new $c_Lio_kaitai_struct_precompile_LoadImports().init___Lio_kaitai_struct_format_ClassSpecs(specs).processClass__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future(specs.firstSpec$6, $m_Lio_kaitai_struct_precompile_LoadImports$().BasePath$1).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, specs$1, config$1) { return (function(allSpecs$2) { $m_Lio_kaitai_struct_Log$(); return $m_Lio_kaitai_struct_Main$().precompile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_RuntimeConfig__sc_Iterable(specs$1, config$1) }) })(this, specs, config)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()) }; precompile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig__sc_Iterable(classSpecs, topClass, config) { const iterTable = classSpecs.table$5; let idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(classSpecs); let es = iterTable.u[idx]; while ((es !== null)) { const this$1 = es; const next = this$1.next$1; const arg1 = es; const e = arg1; const _2 = e.value$1; const curClass = _2; $m_Lio_kaitai_struct_precompile_MarkupClassNames$().markupClassNames__Lio_kaitai_struct_format_ClassSpec__V(curClass); es = next; while (((es === null) && (idx > 0))) { idx = (((-1) + idx) | 0); es = iterTable.u[idx] } }; const this$2 = topClass.meta$1.opaqueTypes$1; const opaqueTypes = (!(!(this$2.isEmpty__Z() ? config.opaqueTypes$1 : this$2.get__O()))); new $c_Lio_kaitai_struct_precompile_ResolveTypes().init___Lio_kaitai_struct_format_ClassSpecs__Z(classSpecs, opaqueTypes).run__V(); new $c_Lio_kaitai_struct_precompile_ParentTypes().init___Lio_kaitai_struct_format_ClassSpecs(classSpecs).run__V(); new $c_Lio_kaitai_struct_precompile_SpecsValueTypeDerive().init___Lio_kaitai_struct_format_ClassSpecs(classSpecs).run__V(); new $c_Lio_kaitai_struct_precompile_CalculateSeqSizes().init___Lio_kaitai_struct_format_ClassSpecs(classSpecs).run__V(); const typeValidatorProblems = new $c_Lio_kaitai_struct_precompile_TypeValidator().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass).run__sc_Iterable(); const styleWarnings = new $c_Lio_kaitai_struct_precompile_StyleCheckIds().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass).run__sc_Iterable(); topClass.parentClass$1 = $m_Lio_kaitai_struct_format_GenericStructClassSpec$(); const this$3 = $m_sc_Iterable$(); return typeValidatorProblems.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(styleWarnings, this$3.ReusableCBFInstance$2) }; updateConfig__p1__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig(config, topClass) { if (topClass.meta$1.forceDebug$1) { const opaqueTypes = config.opaqueTypes$1; const cppConfig = config.cppConfig$1; const goPackage = config.goPackage$1; const java = config.java$1; const dotNetNamespace = config.dotNetNamespace$1; const phpNamespace = config.phpNamespace$1; const pythonPackage = config.pythonPackage$1; const nimModule = config.nimModule$1; const nimOpaque = config.nimOpaque$1; return new $c_Lio_kaitai_struct_RuntimeConfig().init___Z__Z__Z__Lio_kaitai_struct_CppRuntimeConfig__T__Lio_kaitai_struct_JavaRuntimeConfig__T__T__T__T__T(false, true, opaqueTypes, cppConfig, goPackage, java, dotNetNamespace, phpNamespace, pythonPackage, nimModule, nimOpaque) } else { return config } }; precompile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_RuntimeConfig__sc_Iterable(specs, config) { $m_scm_Iterable$(); $m_scm_Iterable$(); const b = new $c_scm_ArrayBuffer().init___(); const iterTable = specs.table$5; let idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(specs); let es = iterTable.u[idx]; while ((es !== null)) { const this$3 = es; const next = this$3.next$1; const arg1 = es; const e = arg1; const _2 = e.value$1; const classSpec = _2; const xs = $m_Lio_kaitai_struct_Main$().precompile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig__sc_Iterable(specs, classSpec, config).seq__sc_TraversableOnce(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ArrayBuffer(xs); es = next; while (((es === null) && (idx > 0))) { idx = (((-1) + idx) | 0); es = iterTable.u[idx] } }; return b }; compile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_languages_components_LanguageCompilerStatic__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_CompileLog$SpecSuccess(specs, spec, lang, conf) { const config = this.updateConfig__p1__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig(conf, spec); const x = $m_Lio_kaitai_struct_GraphvizClassCompiler$(); let cc; if ((x === lang)) { cc = new $c_Lio_kaitai_struct_GraphvizClassCompiler().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(specs, spec) } else { const x$3 = $m_Lio_kaitai_struct_languages_GoCompiler$(); if ((x$3 === lang)) { cc = new $c_Lio_kaitai_struct_GoClassCompiler().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig(specs, spec, config) } else { const x$5 = $m_Lio_kaitai_struct_languages_RustCompiler$(); if ((x$5 === lang)) { cc = new $c_Lio_kaitai_struct_RustClassCompiler().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig(specs, spec, config) } else { const x$7 = $m_Lio_kaitai_struct_ConstructClassCompiler$(); if ((x$7 === lang)) { cc = new $c_Lio_kaitai_struct_ConstructClassCompiler().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(specs, spec) } else { const x$9 = $m_Lio_kaitai_struct_languages_NimCompiler$(); if ((x$9 === lang)) { cc = new $c_Lio_kaitai_struct_NimClassCompiler().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig(specs, spec, config) } else { const x$11 = $m_Lio_kaitai_struct_HtmlClassCompiler$(); if ((x$11 === lang)) { cc = new $c_Lio_kaitai_struct_HtmlClassCompiler().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(specs, spec) } else { cc = new $c_Lio_kaitai_struct_ClassCompiler().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompilerStatic(specs, spec, config, lang) } } } } } }; return cc.compile__Lio_kaitai_struct_CompileLog$SpecSuccess() }; } const $d_Lio_kaitai_struct_Main$ = new $TypeData().initClass({ Lio_kaitai_struct_Main$: 0 }, false, "io.kaitai.struct.Main$", { Lio_kaitai_struct_Main$: 1, O: 1 }); $c_Lio_kaitai_struct_Main$.prototype.$classData = $d_Lio_kaitai_struct_Main$; let $n_Lio_kaitai_struct_Main$ = (void 0); const $m_Lio_kaitai_struct_Main$ = (function() { if ((!$n_Lio_kaitai_struct_Main$)) { $n_Lio_kaitai_struct_Main$ = new $c_Lio_kaitai_struct_Main$().init___() }; return $n_Lio_kaitai_struct_Main$ }); class $c_Lio_kaitai_struct_MainJs$ extends $c_O { constructor() { super(); this.languages$1 = null; this.version$1 = null; this.buildDate$1 = null; this.bitmap$0$1 = 0 }; init___() { $n_Lio_kaitai_struct_MainJs$ = this; $m_Lio_kaitai_struct_format_KSVersion$().current$und$eq__T__V($m_Lio_kaitai_struct_Version$().version$1); return this }; languages__sjs_js_Array() { return (((((1 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.languages$lzycompute__p1__sjs_js_Array() : this.languages$1) }; $$js$exported$meth$compile__T__sjs_js_Object__Lio_kaitai_struct_JavaScriptImporter__Z__O(langStr, yaml, importer, debug) { return this.compile__T__sjs_js_Object__Lio_kaitai_struct_JavaScriptImporter__Z__sjs_js_Promise(langStr, yaml, importer, debug) }; $$js$exported$meth$compile$default$4__Z() { return false }; $$js$exported$prop$version__O() { return this.version__T() }; version$lzycompute__p1__T() { if (((((2 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.version$1 = $m_Lio_kaitai_struct_Version$().version$1; this.bitmap$0$1 = (((2 | this.bitmap$0$1) << 24) >> 24) }; return this.version$1 }; version__T() { return (((((2 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.version$lzycompute__p1__T() : this.version$1) }; $$js$exported$prop$languages__O() { return this.languages__sjs_js_Array() }; buildDate__T() { return (((((4 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.buildDate$lzycompute__p1__T() : this.buildDate$1) }; languages$lzycompute__p1__sjs_js_Array() { if (((((1 & this.bitmap$0$1) << 24) >> 24) === 0)) { const jsx$1 = $m_sjs_js_JSConverters$JSRichGenTraversableOnce$(); const this$1 = $m_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$().NAME$undTO$undCLASS$1; const this$2 = this$1.keySet__sci_Set(); const this$3 = $f_sc_SetLike__toSeq__sc_Seq(this$2); const ord = $m_s_math_Ordering$String$(); const col = $f_sc_SeqLike__sorted__s_math_Ordering__O(this$3, ord); this.languages$1 = jsx$1.toJSArray$extension__sc_GenTraversableOnce__sjs_js_Array(col); this.bitmap$0$1 = (((1 | this.bitmap$0$1) << 24) >> 24) }; return this.languages$1 }; $$js$exported$prop$buildDate__O() { return this.buildDate__T() }; compile__T__sjs_js_Object__Lio_kaitai_struct_JavaScriptImporter__Z__sjs_js_Promise(langStr, yaml, importer, debug) { try { const config = new $c_Lio_kaitai_struct_RuntimeConfig().init___Z__Z__Z__Lio_kaitai_struct_CppRuntimeConfig__T__Lio_kaitai_struct_JavaRuntimeConfig__T__T__T__T__T((!debug), debug, false, new $c_Lio_kaitai_struct_CppRuntimeConfig().init___sci_List__Z__Z__Z__Lio_kaitai_struct_CppRuntimeConfig$Pointers($m_sci_Nil$(), false, false, false, $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$()), "", new $c_Lio_kaitai_struct_JavaRuntimeConfig().init___T__T__T("", "io.kaitai.struct.ByteBufferKaitaiStream", "java.nio.BufferUnderflowException"), "Kaitai", "", "", "kaitai_struct_nim_runtime", ""); const this$5 = $m_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$(); const lang = this$5.NAME$undTO$undCLASS$1.apply__O__O(langStr); const jsx$2 = $m_sjs_js_JSConverters$JSRichFuture$(); const f$1 = $m_Lio_kaitai_struct_format_JavaScriptKSYParser$().yamlToSpecs__O__Lio_kaitai_struct_JavaScriptImporter__Lio_kaitai_struct_RuntimeConfig__s_concurrent_Future(yaml, importer, config).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, lang$1, config$1) { return (function(specs$2) { const specs = specs$2; const this$14 = $m_sjs_js_JSConverters$JSRichGenMap$(); const bf = $m_scm_HashMap$().ReusableCBF$4; const b = bf.$$outer$1.newBuilder__scm_Builder(); const iterTable = specs.table$5; let idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(specs); let es = iterTable.u[idx]; while ((es !== null)) { const this$6 = es; const next = this$6.next$1; const arg1 = es; const e = arg1; const _2 = e.value$1; const spec = _2; const files = $m_Lio_kaitai_struct_Main$().compile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_languages_components_LanguageCompilerStatic__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_CompileLog$SpecSuccess(specs, spec, lang$1, config$1).files$1; const f = (function($this$1) { return (function(x$2) { const x = x$2; const self = x.fileName$1; const y = x.contents$1; return new $c_T2().init___O__O(self, y) }) })($this); const this$9 = $m_sci_List$(); const bf$1 = this$9.ReusableCBFInstance$2; let jsx$1; if ((bf$1 === $m_sci_List$().ReusableCBFInstance$2)) { if ((files === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1$1 = files.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); let t = h; let rest = files.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$2 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$2), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$10 = rest; rest = this$10.tail__sci_List() }; jsx$1 = h } } else { const b$1 = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(files, bf$1); let these = files; while ((!these.isEmpty__Z())) { const arg1$3 = these.head__O(); b$1.$$plus$eq__O__scm_Builder(f(arg1$3)); const this$11 = these; these = this$11.tail__sci_List() }; jsx$1 = b$1.result__O() }; const this$12 = jsx$1.toMap__s_Predef$$less$colon$less__sci_Map($m_s_Predef$().singleton$und$less$colon$less$2); b.$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this$12); es = next; while (((es === null) && (idx > 0))) { idx = (((-1) + idx) | 0); es = iterTable.u[idx] } }; const map = b.result__O(); const result = {}; map.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$2, result$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const key = x0$1.$$und1__O(); const value = x0$1.$$und2__O(); result$1[key] = value } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this$14, result))); return result }) })(this, lang, config)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()); return jsx$2.toJSPromise$extension__s_concurrent_Future__s_concurrent_ExecutionContext__sjs_js_Promise(f$1, $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()) } catch (e$1) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e$1); if ((e$2 !== null)) { const jsx$3 = $m_sjs_js_JSConverters$JSRichFuture$(); const f$2 = $m_s_concurrent_Future$().apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$2$1, err) { return (function() { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(err) }) })(this, e$2)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()); return jsx$3.toJSPromise$extension__s_concurrent_Future__s_concurrent_ExecutionContext__sjs_js_Promise(f$2, $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()) } else { throw e$1 } } }; buildDate$lzycompute__p1__T() { if (((((4 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.buildDate$1 = $m_Lio_kaitai_struct_Version$().gitTime$1; this.bitmap$0$1 = (((4 | this.bitmap$0$1) << 24) >> 24) }; return this.buildDate$1 }; get "buildDate"() { return this.$$js$exported$prop$buildDate__O() }; get "version"() { return this.$$js$exported$prop$version__O() }; get "languages"() { return this.$$js$exported$prop$languages__O() }; "compile"(arg, arg$2, arg$3, ...rest) { const prep = arg; const prep$2 = arg$2; const prep$3 = arg$3; const prep$4 = ((rest[0] === (void 0)) ? this.$$js$exported$meth$compile$default$4__Z() : (!(!rest[0]))); return this.$$js$exported$meth$compile__T__sjs_js_Object__Lio_kaitai_struct_JavaScriptImporter__Z__O(prep, prep$2, prep$3, prep$4) }; } const $d_Lio_kaitai_struct_MainJs$ = new $TypeData().initClass({ Lio_kaitai_struct_MainJs$: 0 }, false, "io.kaitai.struct.MainJs$", { Lio_kaitai_struct_MainJs$: 1, O: 1 }); $c_Lio_kaitai_struct_MainJs$.prototype.$classData = $d_Lio_kaitai_struct_MainJs$; let $n_Lio_kaitai_struct_MainJs$ = (void 0); const $m_Lio_kaitai_struct_MainJs$ = (function() { if ((!$n_Lio_kaitai_struct_MainJs$)) { $n_Lio_kaitai_struct_MainJs$ = new $c_Lio_kaitai_struct_MainJs$().init___() }; return $n_Lio_kaitai_struct_MainJs$ }); class $c_Lio_kaitai_struct_TypeProcessor$ extends $c_O { init___() { return this }; getOpaqueDataTypes__Lio_kaitai_struct_datatype_DataType__sc_Iterable(dataType) { if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2 = dataType; if (x2.isOpaque__Z()) { $m_sci_List$(); const array = [x2.classSpec$3.get__O()]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; return result } else { return $m_sci_Nil$() } } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x3 = dataType; const this$6 = x3.cases$2; const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const ut = x0$1.$$und2__O(); return $m_Lio_kaitai_struct_TypeProcessor$().getOpaqueDataTypes__Lio_kaitai_struct_datatype_DataType__sc_Iterable(ut) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this)); const this$5 = $m_sci_Iterable$(); const bf = this$5.ReusableCBFInstance$2; return $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this$6, f, bf) } else { return $m_sci_Nil$() } }; getOpaqueClasses__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(curClass) { const res = $m_scm_Set$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$()); const this$2 = curClass.seq$1; const f = (function($this, res$1) { return (function(attr$2) { const attr = attr$2; const xs = $m_Lio_kaitai_struct_TypeProcessor$().getOpaqueDataTypes__Lio_kaitai_struct_datatype_DataType__sc_Iterable(attr.dataType$1); return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(res$1, xs) }) })(this, res); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$2 !== $m_sci_Nil$())) { const arg1 = this$2.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$2.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() } } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$2, bf); let these = this$2; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; b.result__O() }; curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, res$2) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const inst = x0$1.$$und2__O(); if ((inst instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = inst; const xs$1 = $m_Lio_kaitai_struct_TypeProcessor$().getOpaqueDataTypes__Lio_kaitai_struct_datatype_DataType__sc_Iterable(x2.dataType$2); return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(res$2, xs$1) } else { return $m_s_None$() } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, res))); curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$3$1, res$3) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const nestedType = x0$2.$$und2__O(); const xs$2 = $m_Lio_kaitai_struct_TypeProcessor$().getOpaqueClasses__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(nestedType); return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(res$3, xs$2) } else { throw new $c_s_MatchError().init___O(x0$2) } }) })(this, res))); return res }; } const $d_Lio_kaitai_struct_TypeProcessor$ = new $TypeData().initClass({ Lio_kaitai_struct_TypeProcessor$: 0 }, false, "io.kaitai.struct.TypeProcessor$", { Lio_kaitai_struct_TypeProcessor$: 1, O: 1 }); $c_Lio_kaitai_struct_TypeProcessor$.prototype.$classData = $d_Lio_kaitai_struct_TypeProcessor$; let $n_Lio_kaitai_struct_TypeProcessor$ = (void 0); const $m_Lio_kaitai_struct_TypeProcessor$ = (function() { if ((!$n_Lio_kaitai_struct_TypeProcessor$)) { $n_Lio_kaitai_struct_TypeProcessor$ = new $c_Lio_kaitai_struct_TypeProcessor$().init___() }; return $n_Lio_kaitai_struct_TypeProcessor$ }); class $c_Lio_kaitai_struct_Utils$ extends $c_O { constructor() { super(); this.MAX$undUINT64$1 = null; this.RDecimal$1 = null; this.RHex$1 = null }; init___() { $n_Lio_kaitai_struct_Utils$ = this; this.MAX$undUINT64$1 = $m_s_package$().BigInt__s_math_BigInt$().apply__T__s_math_BigInt("18446744073709551615"); const this$2 = new $c_sci_StringOps().init___T("^(-?[0-9]+)$"); const groupNames = $m_sci_Nil$(); const $$this = this$2.repr$1; this.RDecimal$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this, groupNames); const this$5 = new $c_sci_StringOps().init___T("^0x([0-9a-fA-F]+)$"); const groupNames$1 = $m_sci_Nil$(); const $$this$1 = this$5.repr$1; this.RHex$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this$1, groupNames$1); return this }; clampIntToByte__I__B(i) { if (((i >= (-128)) && (i < 256))) { return ((i << 24) >> 24) } else { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T((("value " + i) + " outside of byte range"))) } }; safeLookup__T__I__I__T(src, from, len) { const maxLen = (src.length | 0); if ((from >= maxLen)) { return "" } else { const to = ((from + len) | 0); const safeTo = ((to > maxLen) ? maxLen : to); return src.substring(from, safeTo) } }; relClass__sci_List__sci_List__sci_List(fullPath, curPath) { return ($f_sc_SeqLike__startsWith__sc_GenSeq__I__Z(fullPath, curPath, 0) ? fullPath.slice__I__I__sci_List($f_sc_LinearSeqOptimized__length__I(curPath), $f_sc_LinearSeqOptimized__length__I(fullPath)) : fullPath) }; capitalize__T__T(s) { if ((s === null)) { throw new $c_jl_NullPointerException().init___() }; if ((s === "")) { return s } else { const c = (65535 & (s.charCodeAt(0) | 0)); const c$1 = $m_jl_Character$().toUpperCase__C__C(c); return (("" + new $c_jl_Character().init___C(c$1)) + s.substring(1)) } }; strToLong__T__J(s) { const o9 = this.RDecimal$1.unapplySeq__jl_CharSequence__s_Option(s); let jsx$1; if ((!o9.isEmpty__Z())) { if ((o9.get__O() !== null)) { const this$1 = o9.get__O(); jsx$1 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$1, 1) === 0) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { const this$3 = new $c_sci_StringOps().init___T(s); const this$5 = $m_jl_Long$(); const $$this = this$3.repr$1; return this$5.parseLong__T__I__J($$this, 10) }; const o11 = this.RHex$1.unapplySeq__jl_CharSequence__s_Option(s); let jsx$2; if ((!o11.isEmpty__Z())) { if ((o11.get__O() !== null)) { const this$6 = o11.get__O(); jsx$2 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$6, 1) === 0) } else { jsx$2 = false } } else { jsx$2 = false }; if (jsx$2) { const this$7 = o11.get__O(); const hex = $f_sc_LinearSeqOptimized__apply__I__O(this$7, 0); return $m_jl_Long$().parseLong__T__I__J(hex, 16) }; throw new $c_s_MatchError().init___O(s) }; strToBytes__T__AB(s) { const o9 = this.RDecimal$1.unapplySeq__jl_CharSequence__s_Option(s); let jsx$1; if ((!o9.isEmpty__Z())) { if ((o9.get__O() !== null)) { const this$1 = o9.get__O(); jsx$1 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$1, 1) === 0) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { const this$3 = new $c_sci_StringOps().init___T(s); const this$5 = $m_jl_Integer$(); const $$this = this$3.repr$1; return $makeNativeArrayWrapper($d_B.getArrayOf(), [this.clampIntToByte__I__B(this$5.parseInt__T__I__I($$this, 10))]) }; const o11 = this.RHex$1.unapplySeq__jl_CharSequence__s_Option(s); let jsx$2; if ((!o11.isEmpty__Z())) { if ((o11.get__O() !== null)) { const this$6 = o11.get__O(); jsx$2 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$6, 1) === 0) } else { jsx$2 = false } } else { jsx$2 = false }; if (jsx$2) { const this$7 = o11.get__O(); const hex = $f_sc_LinearSeqOptimized__apply__I__O(this$7, 0); return $makeNativeArrayWrapper($d_B.getArrayOf(), [this.clampIntToByte__I__B($m_jl_Integer$().parseInt__T__I__I(hex, 16))]) }; return $m_sjsr_RuntimeString$().getBytes__T__Ljava_nio_charset_Charset__AB(s, $m_Ljava_nio_charset_Charset$().forName__T__Ljava_nio_charset_Charset("UTF-8")) }; addUniqueAttr__scm_ListBuffer__O__V(list, element) { const this$1 = list.scala$collection$mutable$ListBuffer$$start$6; if ((!$f_sc_LinearSeqOptimized__contains__O__Z(this$1, element))) { list.$$plus$eq__O__scm_ListBuffer(element) } }; join__sc_TraversableOnce__T__T__T__T(coll, start, sep, end) { return (coll.isEmpty__Z() ? "" : coll.mkString__T__T__T__T(start, sep, end)) }; upperCamelCase__T__T(s) { if ((((s.length | 0) >= 0) && (s.substring(0, ("_".length | 0)) === "_"))) { return ("_" + this.upperCamelCase__T__T(s.substring(1))) } else { const xs = $m_sjsr_RuntimeString$().split__T__T__I__AT(s, "_", 0); let elems$2 = null; elems$2 = []; const x1 = xs.u.length; switch (x1) { case (-1): { break } }; let i = 0; const len = xs.u.length; while ((i < len)) { const index = i; const arg1 = xs.u[index]; const s$2 = arg1; const elem = $m_Lio_kaitai_struct_Utils$().capitalize__T__T(s$2); const unboxedElem = ((elem === null) ? null : elem); elems$2.push(unboxedElem); i = ((1 + i) | 0) }; const xs$1 = $makeNativeArrayWrapper($d_T.getArrayOf(), elems$2); const this$18 = new $c_scm_ArrayOps$ofRef().init___AO(xs$1); return $f_sc_TraversableOnce__mkString__T__T__T__T(this$18, "", "", "") } }; lowerCamelCase__T__T(s) { if ((((s.length | 0) >= 0) && (s.substring(0, ("_".length | 0)) === "_"))) { return ("_" + this.lowerCamelCase__T__T(s.substring(1))) } else { const xs = $m_sjsr_RuntimeString$().split__T__T__I__AT(s, "_", 0); let i = (((-1) + xs.u.length) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$12 = result; const index = i; const x = xs.u[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$12); i = (((-1) + i) | 0) }; const x1 = result; if ((!(x1 instanceof $c_sci_$colon$colon))) { throw new $c_s_MatchError().init___O(x1) }; const x2 = x1; const firstWord = x2.head$5; const restWords = x2.tl$5; const f = (function($this) { return (function(s$2$2) { const s$2 = s$2$2; return $m_Lio_kaitai_struct_Utils$().capitalize__T__T(s$2) }) })(this); const this$13 = $m_sci_List$(); const bf = this$13.ReusableCBFInstance$2; let this$16; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((restWords === $m_sci_Nil$())) { this$16 = $m_sci_Nil$() } else { const arg1 = restWords.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = restWords.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$14 = rest; rest = this$14.tail__sci_List() }; this$16 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(restWords, bf); let these = restWords; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$15 = these; these = this$15.tail__sci_List() }; this$16 = b.result__O() }; const this$17 = new $c_sci_$colon$colon().init___O__sci_List(firstWord, this$16); return $f_sc_TraversableOnce__mkString__T__T__T__T(this$17, "", "", "") } }; hexEscapeByteArray__sc_Seq__T(arr) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$2) { const x = (x$2 | 0); const this$4 = new $c_sci_StringOps().init___T("\\x%02X"); const array = [(255 & x)]; const jsx$3 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x$1 = (array$1.length | 0); const x$3 = ((x$1 < len$2) ? x$1 : len$2); const that = result.u.length; const end = ((x$3 < that) ? x$3 : that); while ((i$1 < end)) { const jsx$2 = j; const index$1 = i$1; result.u[jsx$2] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; return jsx$3.format__T__AO__T($$this, result) }) })(this)); const this$18 = $m_sc_Seq$(); return arr.map__F1__scg_CanBuildFrom__O(jsx$1, this$18.ReusableCBFInstance$2).mkString__T() }; } const $d_Lio_kaitai_struct_Utils$ = new $TypeData().initClass({ Lio_kaitai_struct_Utils$: 0 }, false, "io.kaitai.struct.Utils$", { Lio_kaitai_struct_Utils$: 1, O: 1 }); $c_Lio_kaitai_struct_Utils$.prototype.$classData = $d_Lio_kaitai_struct_Utils$; let $n_Lio_kaitai_struct_Utils$ = (void 0); const $m_Lio_kaitai_struct_Utils$ = (function() { if ((!$n_Lio_kaitai_struct_Utils$)) { $n_Lio_kaitai_struct_Utils$ = new $c_Lio_kaitai_struct_Utils$().init___() }; return $n_Lio_kaitai_struct_Utils$ }); class $c_Lio_kaitai_struct_Version$ extends $c_O { constructor() { super(); this.name$1 = null; this.version$1 = null; this.gitCommit$1 = null; this.gitTime$1 = null }; init___() { this.name$1 = "kaitai-struct-compiler-js"; this.version$1 = "0.9-SNAPSHOT20210430.133743.43426dd1"; this.gitCommit$1 = "43426dd1"; this.gitTime$1 = "2021-04-30T13:37:43+00:00"; return this }; } const $d_Lio_kaitai_struct_Version$ = new $TypeData().initClass({ Lio_kaitai_struct_Version$: 0 }, false, "io.kaitai.struct.Version$", { Lio_kaitai_struct_Version$: 1, O: 1 }); $c_Lio_kaitai_struct_Version$.prototype.$classData = $d_Lio_kaitai_struct_Version$; let $n_Lio_kaitai_struct_Version$ = (void 0); const $m_Lio_kaitai_struct_Version$ = (function() { if ((!$n_Lio_kaitai_struct_Version$)) { $n_Lio_kaitai_struct_Version$ = new $c_Lio_kaitai_struct_Version$().init___() }; return $n_Lio_kaitai_struct_Version$ }); class $c_Lio_kaitai_struct_XMLUtils$ extends $c_O { init___() { return this }; escape__T__scm_StringBuilder__scm_StringBuilder(text, s) { const len = (text.length | 0); let pos = 0; while ((pos < len)) { const index = pos; const x1 = (65535 & (text.charCodeAt(index) | 0)); switch (x1) { case 60: { s.append__T__scm_StringBuilder("<"); break } case 62: { s.append__T__scm_StringBuilder(">"); break } case 38: { s.append__T__scm_StringBuilder("&"); break } case 34: { s.append__T__scm_StringBuilder("""); break } case 10: { s.append__C__scm_StringBuilder(10); break } case 13: { s.append__C__scm_StringBuilder(13); break } case 9: { s.append__C__scm_StringBuilder(9); break } default: { if ((x1 >= 32)) { s.append__C__scm_StringBuilder(x1) } } }; pos = ((1 + pos) | 0) }; return s }; escape__T__T(text) { const sb = new $c_scm_StringBuilder().init___(); $m_Lio_kaitai_struct_XMLUtils$().escape__T__scm_StringBuilder__scm_StringBuilder(text, sb); return sb.underlying$5.java$lang$StringBuilder$$content$f }; } const $d_Lio_kaitai_struct_XMLUtils$ = new $TypeData().initClass({ Lio_kaitai_struct_XMLUtils$: 0 }, false, "io.kaitai.struct.XMLUtils$", { Lio_kaitai_struct_XMLUtils$: 1, O: 1 }); $c_Lio_kaitai_struct_XMLUtils$.prototype.$classData = $d_Lio_kaitai_struct_XMLUtils$; let $n_Lio_kaitai_struct_XMLUtils$ = (void 0); const $m_Lio_kaitai_struct_XMLUtils$ = (function() { if ((!$n_Lio_kaitai_struct_XMLUtils$)) { $n_Lio_kaitai_struct_XMLUtils$ = new $c_Lio_kaitai_struct_XMLUtils$().init___() }; return $n_Lio_kaitai_struct_XMLUtils$ }); class $c_Lio_kaitai_struct_datatype_BitEndianness extends $c_O { } const $isArrayOf_Lio_kaitai_struct_datatype_BitEndianness = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_BitEndianness))) }); class $c_Lio_kaitai_struct_datatype_BitEndianness$ extends $c_O { init___() { return this }; fromYaml__s_Option__sci_List__s_Option(src, path) { let rc11 = false; let x2 = null; const x = $m_s_None$(); if ((x === src)) { return $m_s_None$() }; if ((src instanceof $c_s_Some)) { rc11 = true; x2 = src; const p3 = x2.value$2; if ((p3 === "le")) { return new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_LittleBitEndian$()) } }; if (rc11) { const p5 = x2.value$2; if ((p5 === "be")) { return new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_BigBitEndian$()) } }; if (rc11) { const s = x2.value$2; $m_sci_List$(); const array = ["bit-endian"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); const this$7 = new $c_Lio_kaitai_struct_problems_KSYParseError().init___T__sci_List__s_Option(("unable to parse bit endianness: expected `le` or `be`, found " + s), path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2), $m_s_None$()); throw new $c_Lio_kaitai_struct_problems_CompilationProblemException().init___Lio_kaitai_struct_problems_CompilationProblem(this$7) }; throw new $c_s_MatchError().init___O(src) }; fromString__s_Option__s_Option__T__sci_List__Lio_kaitai_struct_datatype_BitEndianness(s, defBitEndian, dt, path) { let rc10 = false; let x2 = null; if ((s instanceof $c_s_Some)) { rc10 = true; x2 = s; const p3 = x2.value$2; if ((p3 === "le")) { return $m_Lio_kaitai_struct_datatype_LittleBitEndian$() } }; if (rc10) { const p5 = x2.value$2; if ((p5 === "be")) { return $m_Lio_kaitai_struct_datatype_BigBitEndian$() } }; const x = $m_s_None$(); if ((x === s)) { if ((defBitEndian instanceof $c_s_Some)) { const x2$2 = defBitEndian; const e = x2$2.value$2; return e } else { const x$3 = $m_s_None$(); if ((x$3 === defBitEndian)) { return $m_Lio_kaitai_struct_datatype_BigBitEndian$() } else { throw new $c_s_MatchError().init___O(defBitEndian) } } }; throw new $c_s_MatchError().init___O(s) }; } const $d_Lio_kaitai_struct_datatype_BitEndianness$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_BitEndianness$: 0 }, false, "io.kaitai.struct.datatype.BitEndianness$", { Lio_kaitai_struct_datatype_BitEndianness$: 1, O: 1 }); $c_Lio_kaitai_struct_datatype_BitEndianness$.prototype.$classData = $d_Lio_kaitai_struct_datatype_BitEndianness$; let $n_Lio_kaitai_struct_datatype_BitEndianness$ = (void 0); const $m_Lio_kaitai_struct_datatype_BitEndianness$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_BitEndianness$)) { $n_Lio_kaitai_struct_datatype_BitEndianness$ = new $c_Lio_kaitai_struct_datatype_BitEndianness$().init___() }; return $n_Lio_kaitai_struct_datatype_BitEndianness$ }); class $c_Lio_kaitai_struct_datatype_DataType$ extends $c_O { constructor() { super(); this.USER$undTYPE$undNO$undPARENT$1 = null; this.ReIntType$1 = null; this.ReFloatType$1 = null; this.ReBitType$1 = null; this.ReUserTypeWithArgs$1 = null; this.RePureIntType$1 = null; this.RePureFloatType$1 = null }; init___() { $n_Lio_kaitai_struct_datatype_DataType$ = this; this.USER$undTYPE$undNO$undPARENT$1 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool().init___Z(false); const this$2 = new $c_sci_StringOps().init___T("([us])(2|4|8)(le|be)?"); const groupNames = $m_sci_Nil$(); const $$this = this$2.repr$1; this.ReIntType$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this, groupNames); const this$5 = new $c_sci_StringOps().init___T("f(4|8)(le|be)?"); const groupNames$1 = $m_sci_Nil$(); const $$this$1 = this$5.repr$1; this.ReFloatType$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this$1, groupNames$1); const this$8 = new $c_sci_StringOps().init___T("b(\\d+)(le|be)?"); const groupNames$2 = $m_sci_Nil$(); const $$this$2 = this$8.repr$1; this.ReBitType$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this$2, groupNames$2); const this$11 = new $c_sci_StringOps().init___T("^((?:[a-z][a-z0-9_]*::)*[a-z][a-z0-9_]*)\\((.*)\\)$"); const groupNames$3 = $m_sci_Nil$(); const $$this$3 = this$11.repr$1; this.ReUserTypeWithArgs$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this$3, groupNames$3); const this$14 = new $c_sci_StringOps().init___T("([us])(2|4|8)"); const groupNames$4 = $m_sci_Nil$(); const $$this$4 = this$14.repr$1; this.RePureIntType$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this$4, groupNames$4); const this$17 = new $c_sci_StringOps().init___T("f(4|8)"); const groupNames$5 = $m_sci_Nil$(); const $$this$5 = this$17.repr$1; this.RePureFloatType$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this$5, groupNames$5); return this }; pureFromString__s_Option__s_Option__sci_List__Lio_kaitai_struct_datatype_DataType(dto, enumRef, path) { return this.applyEnumType__p1__Lio_kaitai_struct_datatype_DataType__s_Option__sci_List__Lio_kaitai_struct_datatype_DataType(this.pureFromString__s_Option__Lio_kaitai_struct_datatype_DataType(dto), enumRef, path) }; pureFromString__s_Option__Lio_kaitai_struct_datatype_DataType(dto) { const x = $m_s_None$(); if ((x === dto)) { return $m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$() } else if ((dto instanceof $c_s_Some)) { const x2 = dto; const dt = x2.value$2; return this.pureFromString__T__Lio_kaitai_struct_datatype_DataType(dt) } else { throw new $c_s_MatchError().init___O(dto) } }; classNameToList__T__sci_List(s) { const xs = $m_sjsr_RuntimeString$().split__T__T__I__AT(s, "::", (-1)); let i = (((-1) + xs.u.length) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = xs.u[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; return result }; fromYaml__s_Option__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_YamlAttrArgs__Lio_kaitai_struct_datatype_DataType(dto, path, metaDef, arg) { const x = $m_s_None$(); let r; if ((x === dto)) { const x1$2 = arg.contents$1; let x$3; if ((x1$2 instanceof $c_s_Some)) { const x2 = x1$2; const c = x2.value$2; const this$1 = $m_s_math_BigInt$(); const i = c.u.length; x$3 = new $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType().init___Lio_kaitai_struct_exprlang_Ast$expr__s_Option__Z__s_Option__s_Option(new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(this$1.apply__I__s_math_BigInt(i)), $m_s_None$(), false, $m_s_None$(), arg.process$1) } else { x$3 = arg.getByteArrayType__sci_List__Lio_kaitai_struct_datatype_DataType$BytesType(path) }; r = x$3 } else { if ((!(dto instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(dto) }; const x2$2 = dto; const dt = x2$2.value$2; matchEnd10: { if ((dt === "u1")) { r = new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(false); break matchEnd10 }; if ((dt === "s1")) { r = new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(true); break matchEnd10 }; const o15 = this.ReIntType$1.unapplySeq__jl_CharSequence__s_Option(dt); let jsx$1; if ((!o15.isEmpty__Z())) { if ((o15.get__O() !== null)) { const this$2 = o15.get__O(); jsx$1 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$2, 3) === 0) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { const this$3 = o15.get__O(); const signStr = $f_sc_LinearSeqOptimized__apply__I__O(this$3, 0); const this$4 = o15.get__O(); const widthStr = $f_sc_LinearSeqOptimized__apply__I__O(this$4, 1); const this$5 = o15.get__O(); const endianStr = $f_sc_LinearSeqOptimized__apply__I__O(this$5, 2); let jsx$3; if ((signStr === "s")) { jsx$3 = true } else { if ((signStr !== "u")) { throw new $c_s_MatchError().init___O(signStr) }; jsx$3 = false }; let jsx$2; if ((widthStr === "2")) { jsx$2 = $m_Lio_kaitai_struct_datatype_DataType$Width2$() } else if ((widthStr === "4")) { jsx$2 = $m_Lio_kaitai_struct_datatype_DataType$Width4$() } else { if ((widthStr !== "8")) { throw new $c_s_MatchError().init___O(widthStr) }; jsx$2 = $m_Lio_kaitai_struct_datatype_DataType$Width8$() }; r = new $c_Lio_kaitai_struct_datatype_DataType$IntMultiType().init___Z__Lio_kaitai_struct_datatype_DataType$IntWidth__s_Option(jsx$3, jsx$2, $m_Lio_kaitai_struct_datatype_Endianness$().fromString__s_Option__s_Option__T__sci_List__s_Option($m_s_Option$().apply__O__s_Option(endianStr), metaDef.endian$1, dt, path)); break matchEnd10 }; const o17 = this.ReFloatType$1.unapplySeq__jl_CharSequence__s_Option(dt); let jsx$4; if ((!o17.isEmpty__Z())) { if ((o17.get__O() !== null)) { const this$6 = o17.get__O(); jsx$4 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$6, 2) === 0) } else { jsx$4 = false } } else { jsx$4 = false }; if (jsx$4) { const this$7 = o17.get__O(); const widthStr$2 = $f_sc_LinearSeqOptimized__apply__I__O(this$7, 0); const this$8 = o17.get__O(); const endianStr$2 = $f_sc_LinearSeqOptimized__apply__I__O(this$8, 1); let jsx$5; if ((widthStr$2 === "4")) { jsx$5 = $m_Lio_kaitai_struct_datatype_DataType$Width4$() } else { if ((widthStr$2 !== "8")) { throw new $c_s_MatchError().init___O(widthStr$2) }; jsx$5 = $m_Lio_kaitai_struct_datatype_DataType$Width8$() }; r = new $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType().init___Lio_kaitai_struct_datatype_DataType$IntWidth__s_Option(jsx$5, $m_Lio_kaitai_struct_datatype_Endianness$().fromString__s_Option__s_Option__T__sci_List__s_Option($m_s_Option$().apply__O__s_Option(endianStr$2), metaDef.endian$1, dt, path)); break matchEnd10 }; const o19 = this.ReBitType$1.unapplySeq__jl_CharSequence__s_Option(dt); let jsx$6; if ((!o19.isEmpty__Z())) { if ((o19.get__O() !== null)) { const this$9 = o19.get__O(); jsx$6 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$9, 2) === 0) } else { jsx$6 = false } } else { jsx$6 = false }; if (jsx$6) { const this$10 = o19.get__O(); const widthStr$3 = $f_sc_LinearSeqOptimized__apply__I__O(this$10, 0); const this$11 = o19.get__O(); const bitEndianStr = $f_sc_LinearSeqOptimized__apply__I__O(this$11, 1); const _1 = arg.enumRef$1; const this$13 = new $c_sci_StringOps().init___T(widthStr$3); const this$15 = $m_jl_Integer$(); const $$this = this$13.repr$1; const _2 = this$15.parseInt__T__I__I($$this, 10); const x$4 = $m_s_None$(); if (((x$4 === _1) && (_2 === 1))) { r = new $c_Lio_kaitai_struct_datatype_DataType$BitsType1().init___Lio_kaitai_struct_datatype_BitEndianness($m_Lio_kaitai_struct_datatype_BitEndianness$().fromString__s_Option__s_Option__T__sci_List__Lio_kaitai_struct_datatype_BitEndianness($m_s_Option$().apply__O__s_Option(bitEndianStr), metaDef.bitEndian$1, dt, path)); break matchEnd10 } else { r = new $c_Lio_kaitai_struct_datatype_DataType$BitsType().init___I__Lio_kaitai_struct_datatype_BitEndianness(_2, $m_Lio_kaitai_struct_datatype_BitEndianness$().fromString__s_Option__s_Option__T__sci_List__Lio_kaitai_struct_datatype_BitEndianness($m_s_Option$().apply__O__s_Option(bitEndianStr), metaDef.bitEndian$1, dt, path)); break matchEnd10 } }; if (((dt === "str") || (dt === "strz"))) { const enc = this.getEncoding__s_Option__Lio_kaitai_struct_format_MetaSpec__sci_List__T(arg.encoding$1, metaDef, path); let arg2; if ((dt === "strz")) { const this$16 = arg.terminator$1; const x$1 = (this$16.isEmpty__Z() ? new $c_s_Some().init___O(0) : this$16); const x$2$2 = arg.size$1; const x$3$2 = arg.sizeEos$1; const x$4$2 = arg.encoding$1; const x$5$2 = arg.include$1; const x$6 = arg.consume$1; const x$7 = arg.eosError$1; const x$8 = arg.padRight$1; const x$9 = arg.contents$1; const x$10 = arg.enumRef$1; const x$11 = arg.parent$1; const x$12 = arg.process$1; arg2 = new $c_Lio_kaitai_struct_format_YamlAttrArgs().init___s_Option__Z__s_Option__s_Option__Z__Z__Z__s_Option__s_Option__s_Option__s_Option__s_Option(x$2$2, x$3$2, x$4$2, x$1, x$5$2, x$6, x$7, x$8, x$9, x$10, x$11, x$12) } else { arg2 = arg }; const bat = arg2.getByteArrayType__sci_List__Lio_kaitai_struct_datatype_DataType$BytesType(path); r = new $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType().init___Lio_kaitai_struct_datatype_DataType$BytesType__T(bat, enc); break matchEnd10 }; let x1$9_$_$$und1$f; let x1$9_$_$$und2$f; matchEnd4$2: { const o7 = this.ReUserTypeWithArgs$1.unapplySeq__jl_CharSequence__s_Option(dt); let jsx$7; if ((!o7.isEmpty__Z())) { if ((o7.get__O() !== null)) { const this$17 = o7.get__O(); jsx$7 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$17, 2) === 0) } else { jsx$7 = false } } else { jsx$7 = false }; if (jsx$7) { const this$18 = o7.get__O(); const typeStr = $f_sc_LinearSeqOptimized__apply__I__O(this$18, 0); const this$19 = o7.get__O(); const argsStr = $f_sc_LinearSeqOptimized__apply__I__O(this$19, 1); const this$20 = $m_Lio_kaitai_struct_exprlang_Expressions$(); const _2$1 = this$20.realParse__p1__T__Lfastparse_core_Parser__O(argsStr, this$20.topExprList$1); const jsx$8_$_$$und1$f = typeStr; const jsx$8_$_$$und2$f = _2$1; x1$9_$_$$und1$f = jsx$8_$_$$und1$f; x1$9_$_$$und2$f = jsx$8_$_$$und2$f; break matchEnd4$2 }; const _2$2 = $m_sci_Nil$(); const jsx$9_$_$$und1$f = dt; const jsx$9_$_$$und2$f = _2$2; x1$9_$_$$und1$f = jsx$9_$_$$und1$f; x1$9_$_$$und2$f = jsx$9_$_$$und2$f }; const arglessType = x1$9_$_$$und1$f; const args = x1$9_$_$$und2$f; const dtl = this.classNameToList__T__sci_List(arglessType); if (((arg.size$1.isEmpty__Z() && (!arg.sizeEos$1)) && arg.terminator$1.isEmpty__Z())) { if (arg.process$1.isDefined__Z()) { const this$22 = new $c_Lio_kaitai_struct_problems_KSYParseError().init___T__sci_List__s_Option((("user type '" + dt) + "': need 'size' / 'size-eos' / 'terminator' if 'process' is used"), path, $m_s_None$()); throw new $c_Lio_kaitai_struct_problems_CompilationProblemException().init___Lio_kaitai_struct_problems_CompilationProblem(this$22) }; r = new $c_Lio_kaitai_struct_datatype_DataType$UserTypeInstream().init___sci_List__s_Option__sc_Seq(dtl, arg.parent$1, args) } else { const bat$2 = arg.getByteArrayType__sci_List__Lio_kaitai_struct_datatype_DataType$BytesType(path); r = new $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes().init___sci_List__s_Option__sc_Seq__Lio_kaitai_struct_datatype_DataType$BytesType__s_Option(dtl, arg.parent$1, args, bat$2, arg.process$1) } } }; return this.applyEnumType__p1__Lio_kaitai_struct_datatype_DataType__s_Option__sci_List__Lio_kaitai_struct_datatype_DataType(r, arg.enumRef$1, path) }; applyEnumType__p1__Lio_kaitai_struct_datatype_DataType__s_Option__sci_List__Lio_kaitai_struct_datatype_DataType(r, enumRef, path) { if ((enumRef instanceof $c_s_Some)) { const x2 = enumRef; const enumName = x2.value$2; if ((r instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x2$2 = r; return new $c_Lio_kaitai_struct_datatype_DataType$EnumType().init___sci_List__Lio_kaitai_struct_datatype_DataType$IntType(this.classNameToList__T__sci_List(enumName), x2$2) } else { const this$2 = new $c_Lio_kaitai_struct_problems_KSYParseError().init___T__sci_List__s_Option((("tried to resolve non-integer " + r) + " to enum"), path, $m_s_None$()); throw new $c_Lio_kaitai_struct_problems_CompilationProblemException().init___Lio_kaitai_struct_problems_CompilationProblem(this$2) } } else { const x = $m_s_None$(); if ((x === enumRef)) { return r } else { throw new $c_s_MatchError().init___O(enumRef) } } }; getEncoding__s_Option__Lio_kaitai_struct_format_MetaSpec__sci_List__T(curEncoding, metaDef, path) { const x1 = (curEncoding.isEmpty__Z() ? metaDef.encoding$1 : curEncoding); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const enc = x2.value$2; return enc } else { const x = $m_s_None$(); if ((x === x1)) { const this$2 = new $c_Lio_kaitai_struct_problems_KSYParseError().init___T__sci_List__s_Option("string type, but no encoding found", path, $m_s_None$()); throw new $c_Lio_kaitai_struct_problems_CompilationProblemException().init___Lio_kaitai_struct_problems_CompilationProblem(this$2) } else { throw new $c_s_MatchError().init___O(x1) } } }; pureFromString__T__Lio_kaitai_struct_datatype_DataType(dt) { const _1 = $m_sjsr_RuntimeString$().endsWith__T__T__Z(dt, "[]"); const this$2 = new $c_sci_StringOps().init___T(dt); const _2 = $f_sci_StringLike__stripSuffix__T__T(this$2, "[]"); let singleType; matchEnd14: { if ((_2 === "bytes")) { singleType = $m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$(); break matchEnd14 }; if ((_2 === "u1")) { singleType = new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(false); break matchEnd14 }; if ((_2 === "s1")) { singleType = new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(true); break matchEnd14 }; const o20 = this.RePureIntType$1.unapplySeq__jl_CharSequence__s_Option(_2); let jsx$1; if ((!o20.isEmpty__Z())) { if ((o20.get__O() !== null)) { const this$3 = o20.get__O(); jsx$1 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$3, 2) === 0) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { const this$4 = o20.get__O(); const signStr = $f_sc_LinearSeqOptimized__apply__I__O(this$4, 0); const this$5 = o20.get__O(); const widthStr = $f_sc_LinearSeqOptimized__apply__I__O(this$5, 1); let jsx$3; if ((signStr === "s")) { jsx$3 = true } else { if ((signStr !== "u")) { throw new $c_s_MatchError().init___O(signStr) }; jsx$3 = false }; let jsx$2; if ((widthStr === "2")) { jsx$2 = $m_Lio_kaitai_struct_datatype_DataType$Width2$() } else if ((widthStr === "4")) { jsx$2 = $m_Lio_kaitai_struct_datatype_DataType$Width4$() } else { if ((widthStr !== "8")) { throw new $c_s_MatchError().init___O(widthStr) }; jsx$2 = $m_Lio_kaitai_struct_datatype_DataType$Width8$() }; singleType = new $c_Lio_kaitai_struct_datatype_DataType$IntMultiType().init___Z__Lio_kaitai_struct_datatype_DataType$IntWidth__s_Option(jsx$3, jsx$2, $m_s_None$()); break matchEnd14 }; const o22 = this.RePureFloatType$1.unapplySeq__jl_CharSequence__s_Option(_2); let jsx$4; if ((!o22.isEmpty__Z())) { if ((o22.get__O() !== null)) { const this$6 = o22.get__O(); jsx$4 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$6, 1) === 0) } else { jsx$4 = false } } else { jsx$4 = false }; if (jsx$4) { const this$7 = o22.get__O(); const widthStr$2 = $f_sc_LinearSeqOptimized__apply__I__O(this$7, 0); let jsx$5; if ((widthStr$2 === "4")) { jsx$5 = $m_Lio_kaitai_struct_datatype_DataType$Width4$() } else { if ((widthStr$2 !== "8")) { throw new $c_s_MatchError().init___O(widthStr$2) }; jsx$5 = $m_Lio_kaitai_struct_datatype_DataType$Width8$() }; singleType = new $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType().init___Lio_kaitai_struct_datatype_DataType$IntWidth__s_Option(jsx$5, $m_s_None$()); break matchEnd14 }; const o24 = this.ReBitType$1.unapplySeq__jl_CharSequence__s_Option(_2); let jsx$6; if ((!o24.isEmpty__Z())) { if ((o24.get__O() !== null)) { const this$8 = o24.get__O(); jsx$6 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$8, 2) === 0) } else { jsx$6 = false } } else { jsx$6 = false }; if (jsx$6) { const this$9 = o24.get__O(); const widthStr$3 = $f_sc_LinearSeqOptimized__apply__I__O(this$9, 0); if ((widthStr$3 === "1")) { singleType = new $c_Lio_kaitai_struct_datatype_DataType$BitsType1().init___Lio_kaitai_struct_datatype_BitEndianness($m_Lio_kaitai_struct_datatype_BigBitEndian$()); break matchEnd14 } else { const this$11 = new $c_sci_StringOps().init___T(widthStr$3); const this$13 = $m_jl_Integer$(); const $$this = this$11.repr$1; singleType = new $c_Lio_kaitai_struct_datatype_DataType$BitsType().init___I__Lio_kaitai_struct_datatype_BitEndianness(this$13.parseInt__T__I__I($$this, 10), $m_Lio_kaitai_struct_datatype_BigBitEndian$()); break matchEnd14 } }; if ((_2 === "str")) { singleType = $m_Lio_kaitai_struct_datatype_DataType$CalcStrType$(); break matchEnd14 }; if ((_2 === "bool")) { singleType = $m_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$(); break matchEnd14 }; if ((_2 === "struct")) { singleType = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); break matchEnd14 }; if ((_2 === "io")) { singleType = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); break matchEnd14 }; if ((_2 === "any")) { singleType = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); break matchEnd14 }; singleType = new $c_Lio_kaitai_struct_datatype_DataType$CalcUserType().init___sci_List__s_Option__sc_Seq(this.classNameToList__T__sci_List(_2), $m_s_None$(), $m_sc_Seq$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$())) }; return (_1 ? new $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType().init___Lio_kaitai_struct_datatype_DataType(singleType) : singleType) }; } const $d_Lio_kaitai_struct_datatype_DataType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$: 0 }, false, "io.kaitai.struct.datatype.DataType$", { Lio_kaitai_struct_datatype_DataType$: 1, O: 1 }); $c_Lio_kaitai_struct_datatype_DataType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$; let $n_Lio_kaitai_struct_datatype_DataType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$)) { $n_Lio_kaitai_struct_datatype_DataType$ = new $c_Lio_kaitai_struct_datatype_DataType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$ }); class $c_Lio_kaitai_struct_datatype_DataType$IntWidth extends $c_O { constructor() { super(); this.width$1 = 0 }; init___I(width) { this.width$1 = width; return this }; } const $is_Lio_kaitai_struct_datatype_DataType$ReadableType = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_datatype_DataType$ReadableType))) }); const $isArrayOf_Lio_kaitai_struct_datatype_DataType$ReadableType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$ReadableType))) }); class $c_Lio_kaitai_struct_datatype_Endianness$ extends $c_O { init___() { return this }; fromYaml__s_Option__sci_List__s_Option(src, path) { let rc12 = false; let x2 = null; const x = $m_s_None$(); if ((x === src)) { return $m_s_None$() }; if ((src instanceof $c_s_Some)) { rc12 = true; x2 = src; const p3 = x2.value$2; if ((p3 === "be")) { return new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_BigEndian$()) } }; if (rc12) { const p5 = x2.value$2; if ((p5 === "le")) { return new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_LittleEndian$()) } }; if (rc12) { const srcMap = x2.value$2; if ($is_sci_Map(srcMap)) { const x10 = srcMap; const endianMap = $m_Lio_kaitai_struct_format_ParseUtils$().asMapStr__O__sci_List__sci_Map(x10, path); return new $c_s_Some().init___O(this.fromMap__sci_Map__sci_List__Lio_kaitai_struct_datatype_CalcEndian(endianMap, path)) } }; const jsx$2 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array = ["endian"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); throw jsx$2.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("unable to parse endianness: `le`, `be` or calculated endianness map is expected", path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)) }; fromMap__sci_Map__sci_List__Lio_kaitai_struct_datatype_CalcEndian(srcMap, path) { const x1 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().fromYaml1__sci_Map__sci_List__T2(srcMap, path); if ((x1 === null)) { throw new $c_s_MatchError().init___O(x1) }; const _on = x1.$$und1__O(); const _cases = x1.$$und2__O(); const this$1 = $m_Lio_kaitai_struct_exprlang_Expressions$(); const on = this$1.realParse__p1__T__Lfastparse_core_Parser__O(_on, this$1.topExpr$1); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, path$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const condition = x0$1.$$und1__O(); const endStr = x0$1.$$und2__O(); const this$2 = $m_Lio_kaitai_struct_exprlang_Expressions$(); const self = this$2.realParse__p1__T__Lfastparse_core_Parser__O(condition, this$2.topExpr$1); let y; if ((endStr === "be")) { y = $m_Lio_kaitai_struct_datatype_BigEndian$() } else { if ((endStr !== "le")) { const jsx$4 = $m_Lio_kaitai_struct_problems_KSYParseError$(); const jsx$3 = $m_s_Predef$().Set$2; const array = ["be", "le"]; const jsx$2 = jsx$3.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); $m_sci_List$(); const array$1 = ["cases", condition]; let i = (((-1) + (array$1.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$9 = result; const index = i; const x = array$1[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$9); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$10 = $m_sci_List$(); throw jsx$4.badDictValue__sci_Set__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(jsx$2, endStr, path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$10.ReusableCBFInstance$2)) }; y = $m_Lio_kaitai_struct_datatype_LittleEndian$() }; return new $c_T2().init___O__O(self, y) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path)); const bf = $m_sci_Map$().ReusableCBF$4; const cases = $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(_cases, f, bf); return new $c_Lio_kaitai_struct_datatype_CalcEndian().init___Lio_kaitai_struct_exprlang_Ast$expr__sci_Map(on, cases) }; fromString__s_Option__s_Option__T__sci_List__s_Option(s, defaultEndian, dt, path) { let rc10 = false; let x2 = null; if ((s instanceof $c_s_Some)) { rc10 = true; x2 = s; const p3 = x2.value$2; if ((p3 === "le")) { return new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_LittleEndian$()) } }; if (rc10) { const p5 = x2.value$2; if ((p5 === "be")) { return new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_BigEndian$()) } }; const x = $m_s_None$(); if ((x === s)) { if ((defaultEndian instanceof $c_s_Some)) { const x2$2 = defaultEndian; const e = x2$2.value$2; if ((e instanceof $c_Lio_kaitai_struct_datatype_FixedEndian)) { const x7 = e; return new $c_s_Some().init___O(x7) } }; let jsx$1; matchEnd16: { if ((defaultEndian instanceof $c_s_Some)) { const x3 = defaultEndian; if ((x3.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { jsx$1 = true; break matchEnd16 } }; if ((defaultEndian instanceof $c_s_Some)) { const x5 = defaultEndian; const p6 = x5.value$2; const x$3 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$3 === p6)) { jsx$1 = true; break matchEnd16 } }; jsx$1 = false }; if (jsx$1) { return $m_s_None$() }; const x$5 = $m_s_None$(); if ((x$5 === defaultEndian)) { const jsx$3 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array = ["type"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$4); i = (((-1) + i) | 0) }; const jsx$2 = result; const this$5 = $m_sci_List$(); throw jsx$3.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException((("unable to use type '" + dt) + "' without default endianness"), path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$5.ReusableCBFInstance$2)) }; throw new $c_s_MatchError().init___O(defaultEndian) }; throw new $c_s_MatchError().init___O(s) }; } const $d_Lio_kaitai_struct_datatype_Endianness$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_Endianness$: 0 }, false, "io.kaitai.struct.datatype.Endianness$", { Lio_kaitai_struct_datatype_Endianness$: 1, O: 1 }); $c_Lio_kaitai_struct_datatype_Endianness$.prototype.$classData = $d_Lio_kaitai_struct_datatype_Endianness$; let $n_Lio_kaitai_struct_datatype_Endianness$ = (void 0); const $m_Lio_kaitai_struct_datatype_Endianness$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_Endianness$)) { $n_Lio_kaitai_struct_datatype_Endianness$ = new $c_Lio_kaitai_struct_datatype_Endianness$().init___() }; return $n_Lio_kaitai_struct_datatype_Endianness$ }); class $c_Lio_kaitai_struct_exprlang_Ast$ extends $c_O { constructor() { super(); this.EmptyTypeId$1 = null }; init___() { $n_Lio_kaitai_struct_exprlang_Ast$ = this; this.EmptyTypeId$1 = new $c_Lio_kaitai_struct_exprlang_Ast$typeId().init___Z__sc_Seq__Z(false, $m_sc_Seq$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$()), false); return this }; } const $d_Lio_kaitai_struct_exprlang_Ast$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$: 0 }, false, "io.kaitai.struct.exprlang.Ast$", { Lio_kaitai_struct_exprlang_Ast$: 1, O: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$; let $n_Lio_kaitai_struct_exprlang_Ast$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$)) { $n_Lio_kaitai_struct_exprlang_Ast$ = new $c_Lio_kaitai_struct_exprlang_Ast$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$ }); class $c_Lio_kaitai_struct_exprlang_Expressions$ extends $c_O { constructor() { super(); this.NAME$1 = null; this.TYPE$undNAME$1 = null; this.INT$undNUMBER$1 = null; this.FLOAT$undNUMBER$1 = null; this.STRING$1 = null; this.test$1 = null; this.or$undtest$1 = null; this.and$undtest$1 = null; this.not$undtest$1 = null; this.comparison$1 = null; this.LShift$1 = null; this.RShift$1 = null; this.Lt$1 = null; this.Gt$1 = null; this.Eq$1 = null; this.GtE$1 = null; this.LtE$1 = null; this.NotEq$1 = null; this.comp$undop$1 = null; this.Add$1 = null; this.Sub$1 = null; this.Mult$1 = null; this.Div$1 = null; this.Mod$1 = null; this.BitOr$1 = null; this.BitAnd$1 = null; this.BitXor$1 = null; this.expr$1 = null; this.xor$undexpr$1 = null; this.and$undexpr$1 = null; this.shift$undexpr$1 = null; this.arith$undexpr$1 = null; this.term$1 = null; this.factor$1 = null; this.power$1 = null; this.atom$1 = null; this.list$undcontents$1 = null; this.list$1 = null; this.trailer$1 = null; this.exprlist$1 = null; this.testlist$1 = null; this.arglist$1 = null; this.comp$undif$1 = null; this.testlist1$1 = null; this.enumByName$1 = null; this.byteSizeOfType$1 = null; this.bitSizeOfType$1 = null; this.topExpr$1 = null; this.topExprList$1 = null }; init___() { $n_Lio_kaitai_struct_exprlang_Expressions$ = this; this.NAME$1 = $m_Lio_kaitai_struct_exprlang_Lexical$().identifier$1; const this$15 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$14 = $m_Lfastparse_noApi$(); const p = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this) { return (function() { const this$8 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$4 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$2 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$1 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("::"), this$1.WL$1).$$bang__Lfastparse_core_Parser(); const jsx$4 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0, this$2.WL$1); const this$3 = $m_Lfastparse_core_Implicits$Optioner$(); const p0$1 = jsx$4.$$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser(new $c_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner().init___Lfastparse_core_Implicits$LowPriOptioner(this$3)); const jsx$5 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$1, this$4.WL$1); const this$5 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$2 = $m_Lio_kaitai_struct_exprlang_Expressions$().NAME$1; const qual$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$2, this$5.WL$1); const x$2 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("::"); const this$6 = $m_Lfastparse_core_Implicits$Repeater$(); const jsx$3 = qual$1.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$2, 2147483647, (-1), new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$6)); const this$7 = $m_Lfastparse_core_Implicits$Sequencer$(); const p0$3 = jsx$5.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$3, $f_Lfastparse_core_LowestPriSequencer__Sequencer1__O(this$7)); const jsx$6 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$3, this$8.WL$1); const this$11 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$10 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$9 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$4 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("["), this$9.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("]"), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const p0$5 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$4, this$10.WL$1).$$bang__Lfastparse_core_Parser(); const jsx$2 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$5, this$11.WL$1); const this$12 = $m_Lfastparse_core_Implicits$Optioner$(); const jsx$1 = jsx$2.$$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser(new $c_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner().init___Lfastparse_core_Implicits$LowPriOptioner(this$12)); const this$13 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$6.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$1, $f_Lfastparse_core_SequencerGen__Sequencer2__O(this$13)) }) })(this)); const name = new $c_Lsourcecode_Name().init___T("TYPE_NAME"); const p0$6 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name.value$2, p, this$14.implicitReprOps$1); this.TYPE$undNAME$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$6, this$15.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const first = x0$1.$$und1$1; const names = x0$1.$$und2$1; const arrayStr = x0$1.$$und3$1; if ((names !== null)) { const jsx$8 = first.isDefined__Z(); const jsx$7 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$1) { return (function(el$2) { const el = el$2; return el.name$1 }) })(this$2$1)); const this$16 = $m_sc_Seq$(); return new $c_Lio_kaitai_struct_exprlang_Ast$typeId().init___Z__sc_Seq__Z(jsx$8, names.map__F1__scg_CanBuildFrom__O(jsx$7, this$16.ReusableCBFInstance$2), arrayStr.isDefined__Z()) } }; throw new $c_s_MatchError().init___O(x0$1) }) })(this))); this.INT$undNUMBER$1 = $m_Lio_kaitai_struct_exprlang_Lexical$().integer$1; this.FLOAT$undNUMBER$1 = $m_Lio_kaitai_struct_exprlang_Lexical$().floatnumber$1; this.STRING$1 = $m_Lio_kaitai_struct_exprlang_Lexical$().stringliteral$1; const this$27 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$26 = $m_Lfastparse_noApi$(); const p$1 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$3$1) { return (function() { const this$17 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$7 = $m_Lio_kaitai_struct_exprlang_Expressions$().or$undtest$1; const jsx$15 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$7, this$17.WL$1); const this$23 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$21 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$19 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$18 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$8 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("?"), this$18.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().test$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$12 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$8, this$19.WL$1); const jsx$11 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(":"); const this$20 = $m_Lfastparse_core_Implicits$Sequencer$(); const p0$9 = jsx$12.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$11, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$20)); const jsx$13 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$9, this$21.WL$1); const jsx$10 = $m_Lio_kaitai_struct_exprlang_Expressions$().test$1; const this$22 = $m_Lfastparse_core_Implicits$Sequencer$(); const p0$10 = jsx$13.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$10, $f_Lfastparse_core_LowestPriSequencer__Sequencer1__O(this$22)); const jsx$14 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$10, this$23.WL$1); const this$24 = $m_Lfastparse_core_Implicits$Optioner$(); const jsx$9 = jsx$14.$$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser(new $c_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner().init___Lfastparse_core_Implicits$LowPriOptioner(this$24)); const this$25 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$15.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$9, $f_Lfastparse_core_LowestPriSequencer__Sequencer1__O(this$25)) }) })(this)); const name$1 = new $c_Lsourcecode_Name().init___T("test"); const p0$11 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$1.value$2, p$1, this$26.implicitReprOps$1); this.test$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$11, this$27.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$4$1) { return (function(x0$4$2) { const x0$4 = x0$4$2; if ((x0$4 !== null)) { const x = x0$4.$$und1__O(); const p2 = x0$4.$$und2__O(); const x$2$1 = $m_s_None$(); if ((x$2$1 === p2)) { return x } }; if ((x0$4 !== null)) { const condition = x0$4.$$und1__O(); const p3 = x0$4.$$und2__O(); if ((p3 instanceof $c_s_Some)) { const x4 = p3; const p5 = x4.value$2; if ((p5 !== null)) { const ifTrue = p5.$$und1__O(); const ifFalse = p5.$$und2__O(); return new $c_Lio_kaitai_struct_exprlang_Ast$expr$IfExp().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr(condition, ifTrue, ifFalse) } } }; throw new $c_s_MatchError().init___O(x0$4) }) })(this))); const this$31 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$30 = $m_Lfastparse_noApi$(); const p$2 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$5$1) { return (function() { const this$28 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$12 = $m_Lio_kaitai_struct_exprlang_Expressions$().and$undtest$1; const qual$3 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$12, this$28.WL$1); const x$10 = $m_Lio_kaitai_struct_exprlang_Lexical$().kw__T__Lfastparse_core_Parser("or"); const this$29 = $m_Lfastparse_core_Implicits$Repeater$(); return qual$3.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$10, 2147483647, (-1), new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$29)) }) })(this)); const name$2 = new $c_Lsourcecode_Name().init___T("or_test"); const p0$13 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$2.value$2, p$2, this$30.implicitReprOps$1); this.or$undtest$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$13, this$31.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$6$1) { return (function(x0$3$2) { const x0$3 = x0$3$2; $m_sc_Seq$(); const o7 = new $c_s_Some().init___O(x0$3); if (((o7.value$2 !== null) && (o7.value$2.lengthCompare__I__I(1) === 0))) { const x$1 = o7.value$2.apply__I__O(0); return x$1 }; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp().init___Lio_kaitai_struct_exprlang_Ast$boolop__sc_Seq($m_Lio_kaitai_struct_exprlang_Ast$boolop$Or$(), x0$3) }) })(this))); const this$36 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$35 = $m_Lfastparse_noApi$(); const p$3 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$7$1) { return (function() { const this$33 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$14 = $m_Lio_kaitai_struct_exprlang_Expressions$().not$undtest$1; const qual$2 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$14, this$33.WL$1); const x$6 = $m_Lio_kaitai_struct_exprlang_Lexical$().kw__T__Lfastparse_core_Parser("and"); const this$34 = $m_Lfastparse_core_Implicits$Repeater$(); return qual$2.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$6, 2147483647, (-1), new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$34)) }) })(this)); const name$3 = new $c_Lsourcecode_Name().init___T("and_test"); const p0$15 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$3.value$2, p$3, this$35.implicitReprOps$1); this.and$undtest$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$15, this$36.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$8$1) { return (function(x0$2$2) { const x0$2 = x0$2$2; $m_sc_Seq$(); const o7$1 = new $c_s_Some().init___O(x0$2); if (((o7$1.value$2 !== null) && (o7$1.value$2.lengthCompare__I__I(1) === 0))) { const x$3 = o7$1.value$2.apply__I__O(0); return x$3 }; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp().init___Lio_kaitai_struct_exprlang_Ast$boolop__sc_Seq($m_Lio_kaitai_struct_exprlang_Ast$boolop$And$(), x0$2) }) })(this))); const this$41 = $m_Lfastparse_noApi$(); const p$4 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$9$1) { return (function() { const this$40 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$39 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$38 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$16 = $m_Lio_kaitai_struct_exprlang_Lexical$().kw__T__Lfastparse_core_Parser("not"); const p0$17 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$16, this$38.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().not$undtest$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const p0$18 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$17, this$39.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$2) { return (function(x$1$2) { const x$1$1 = x$1$2; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp().init___Lio_kaitai_struct_exprlang_Ast$unaryop__Lio_kaitai_struct_exprlang_Ast$expr($m_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$(), x$1$1) }) })(this$9$1))); return new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$18, this$40.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().comparison$1) }) })(this)); const name$4 = new $c_Lsourcecode_Name().init___T("not_test"); this.not$undtest$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$4.value$2, p$4, this$41.implicitReprOps$1); const this$49 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$48 = $m_Lfastparse_noApi$(); const p$5 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$10$1) { return (function() { const this$42 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$19 = $m_Lio_kaitai_struct_exprlang_Expressions$().expr$1; const jsx$20 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$19, this$42.WL$1); const this$45 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$43 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$20 = $m_Lio_kaitai_struct_exprlang_Expressions$().comp$undop$1; const jsx$18 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$20, this$43.WL$1); const jsx$17 = $m_Lio_kaitai_struct_exprlang_Expressions$().expr$1; const this$44 = $m_Lfastparse_core_Implicits$Sequencer$(); const p0$21 = jsx$18.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$17, $f_Lfastparse_core_LowestPriSequencer__Sequencer1__O(this$44)); const jsx$19 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$21, this$45.WL$1); const this$46 = $m_Lfastparse_core_Implicits$Optioner$(); const jsx$16 = jsx$19.$$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser(new $c_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner().init___Lfastparse_core_Implicits$LowPriOptioner(this$46)); const this$47 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$20.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$16, $f_Lfastparse_core_LowestPriSequencer__Sequencer1__O(this$47)) }) })(this)); const name$5 = new $c_Lsourcecode_Name().init___T("comparison"); const p0$22 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$5.value$2, p$5, this$48.implicitReprOps$1); this.comparison$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$22, this$49.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$11$1) { return (function(x0$5$2) { const x0$5 = x0$5$2; if ((x0$5 !== null)) { const lhs = x0$5.$$und1__O(); const p2$1 = x0$5.$$und2__O(); const x$4 = $m_s_None$(); if ((x$4 === p2$1)) { return lhs } }; if ((x0$5 !== null)) { const lhs$2 = x0$5.$$und1__O(); const p3$1 = x0$5.$$und2__O(); if ((p3$1 instanceof $c_s_Some)) { const x4$1 = p3$1; const chunks = x4$1.value$2; if ((chunks === null)) { throw new $c_s_MatchError().init___O(chunks) }; const op = chunks.$$und1__O(); const rhs = chunks.$$und2__O(); return new $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr(lhs$2, op, rhs) } }; throw new $c_s_MatchError().init___O(x0$5) }) })(this))); this.LShift$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("<<"), $m_Lio_kaitai_struct_exprlang_Ast$operator$LShift$()); this.RShift$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(">>"), $m_Lio_kaitai_struct_exprlang_Ast$operator$RShift$()); this.Lt$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("<"), $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$()); this.Gt$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(">"), $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$()); this.Eq$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("=="), $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$()); this.GtE$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(">="), $m_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$()); this.LtE$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("<="), $m_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$()); this.NotEq$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("!="), $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$()); const this$55 = $m_Lfastparse_noApi$(); const p$6 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$12$1) { return (function() { const this$54 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$53 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$52 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$51 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$50 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$23 = $m_Lio_kaitai_struct_exprlang_Expressions$().LtE$1; const p0$24 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$23, this$50.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().GtE$1); const p0$25 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$24, this$51.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().Eq$1); const p0$26 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$25, this$52.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().Gt$1); const p0$27 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$26, this$53.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().Lt$1); return new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$27, this$54.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().NotEq$1) }) })(this)); const name$6 = new $c_Lsourcecode_Name().init___T("comp_op"); this.comp$undop$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$6.value$2, p$6, this$55.implicitReprOps$1); this.Add$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("+"), $m_Lio_kaitai_struct_exprlang_Ast$operator$Add$()); this.Sub$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("-"), $m_Lio_kaitai_struct_exprlang_Ast$operator$Sub$()); this.Mult$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("*"), $m_Lio_kaitai_struct_exprlang_Ast$operator$Mult$()); this.Div$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("/"), $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$()); this.Mod$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("%"), $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$()); this.BitOr$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("|"), $m_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$()); this.BitAnd$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("&"), $m_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$()); this.BitXor$1 = this.op__Lfastparse_core_Parser__O__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("^"), $m_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$()); const this$56 = $m_Lfastparse_noApi$(); const p$7 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$13$1) { return (function() { return $m_Lio_kaitai_struct_exprlang_Expressions$().Chain__Lfastparse_core_Parser__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().xor$undexpr$1, $m_Lio_kaitai_struct_exprlang_Expressions$().BitOr$1) }) })(this)); const name$7 = new $c_Lsourcecode_Name().init___T("expr"); this.expr$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$7.value$2, p$7, this$56.implicitReprOps$1); const this$57 = $m_Lfastparse_noApi$(); const p$8 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$14$1) { return (function() { return $m_Lio_kaitai_struct_exprlang_Expressions$().Chain__Lfastparse_core_Parser__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().and$undexpr$1, $m_Lio_kaitai_struct_exprlang_Expressions$().BitXor$1) }) })(this)); const name$8 = new $c_Lsourcecode_Name().init___T("xor_expr"); this.xor$undexpr$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$8.value$2, p$8, this$57.implicitReprOps$1); const this$58 = $m_Lfastparse_noApi$(); const p$9 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$15$1) { return (function() { return $m_Lio_kaitai_struct_exprlang_Expressions$().Chain__Lfastparse_core_Parser__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().shift$undexpr$1, $m_Lio_kaitai_struct_exprlang_Expressions$().BitAnd$1) }) })(this)); const name$9 = new $c_Lsourcecode_Name().init___T("and_expr"); this.and$undexpr$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$9.value$2, p$9, this$58.implicitReprOps$1); const this$60 = $m_Lfastparse_noApi$(); const p$10 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$16$1) { return (function() { const jsx$22 = $m_Lio_kaitai_struct_exprlang_Expressions$(); const jsx$21 = $m_Lio_kaitai_struct_exprlang_Expressions$().arith$undexpr$1; const this$59 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$28 = $m_Lio_kaitai_struct_exprlang_Expressions$().LShift$1; return jsx$22.Chain__Lfastparse_core_Parser__Lfastparse_core_Parser__Lfastparse_core_Parser(jsx$21, new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$28, this$59.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().RShift$1)) }) })(this)); const name$10 = new $c_Lsourcecode_Name().init___T("shift_expr"); this.shift$undexpr$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$10.value$2, p$10, this$60.implicitReprOps$1); const this$62 = $m_Lfastparse_noApi$(); const p$11 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$17$1) { return (function() { const jsx$24 = $m_Lio_kaitai_struct_exprlang_Expressions$(); const jsx$23 = $m_Lio_kaitai_struct_exprlang_Expressions$().term$1; const this$61 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$29 = $m_Lio_kaitai_struct_exprlang_Expressions$().Add$1; return jsx$24.Chain__Lfastparse_core_Parser__Lfastparse_core_Parser__Lfastparse_core_Parser(jsx$23, new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$29, this$61.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().Sub$1)) }) })(this)); const name$11 = new $c_Lsourcecode_Name().init___T("arith_expr"); this.arith$undexpr$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$11.value$2, p$11, this$62.implicitReprOps$1); const this$65 = $m_Lfastparse_noApi$(); const p$12 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$18$1) { return (function() { const jsx$26 = $m_Lio_kaitai_struct_exprlang_Expressions$(); const jsx$25 = $m_Lio_kaitai_struct_exprlang_Expressions$().factor$1; const this$64 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$63 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$30 = $m_Lio_kaitai_struct_exprlang_Expressions$().Mult$1; const p0$31 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$30, this$63.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().Div$1); return jsx$26.Chain__Lfastparse_core_Parser__Lfastparse_core_Parser__Lfastparse_core_Parser(jsx$25, new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$31, this$64.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().Mod$1)) }) })(this)); const name$12 = new $c_Lsourcecode_Name().init___T("term"); this.term$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$12.value$2, p$12, this$65.implicitReprOps$1); const this$74 = $m_Lfastparse_noApi$(); const p$13 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$19$1) { return (function() { const this$73 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$70 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$67 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$66 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$32 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("+"), this$66.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().factor$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$27 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$32, this$67.WL$1); const this$69 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$68 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$33 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("-"), this$68.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().factor$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const p0$34 = jsx$27.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$33, this$69.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$3$2) { return (function(x$4$2) { const x$4$1 = x$4$2; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp().init___Lio_kaitai_struct_exprlang_Ast$unaryop__Lio_kaitai_struct_exprlang_Ast$expr($m_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$(), x$4$1) }) })(this$19$1)))); const jsx$28 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$34, this$70.WL$1); const this$72 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$71 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$35 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("~"), this$71.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().factor$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const p0$36 = jsx$28.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$35, this$72.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$5$2) { return (function(x$5$2) { const x$5 = x$5$2; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp().init___Lio_kaitai_struct_exprlang_Ast$unaryop__Lio_kaitai_struct_exprlang_Ast$expr($m_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$(), x$5) }) })(this$19$1)))); return new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$36, this$73.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().power$1) }) })(this)); const name$13 = new $c_Lsourcecode_Name().init___T("factor"); this.factor$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$13.value$2, p$13, this$74.implicitReprOps$1); const this$80 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$79 = $m_Lfastparse_noApi$(); const p$14 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$20$1) { return (function() { const this$75 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$37 = $m_Lio_kaitai_struct_exprlang_Expressions$().atom$1; const jsx$31 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$37, this$75.WL$1); const this$76 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$38 = $m_Lio_kaitai_struct_exprlang_Expressions$().trailer$1; const jsx$30 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$38, this$76.WL$1); const this$77 = $m_Lfastparse_core_Implicits$Repeater$(); const jsx$29 = jsx$30.rep__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$77)); const this$78 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$31.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$29, $f_Lfastparse_core_LowestPriSequencer__Sequencer1__O(this$78)) }) })(this)); const name$14 = new $c_Lsourcecode_Name().init___T("power"); const p0$39 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$14.value$2, p$14, this$79.implicitReprOps$1); this.power$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$39, this$80.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$21$1) { return (function(x0$6$2) { const x0$6 = x0$6$2; if ((x0$6 !== null)) { const lhs$1 = x0$6.$$und1__O(); const trailers = x0$6.$$und2__O(); return trailers.foldLeft__O__F2__O(lhs$1, new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this$3) { return (function(l$2, t$2) { const l = l$2; const t = t$2; return t.apply__O__O(l) }) })(this$21$1))) } else { throw new $c_s_MatchError().init___O(x0$6) } }) })(this))); const this$82 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$81 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$40 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("["), this$81.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("]"), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const empty_list = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$40, this$82.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$23$1) { return (function(x$6$2) { return new $c_Lio_kaitai_struct_exprlang_Ast$expr$List().init___sc_Seq($m_sci_Nil$()) }) })(this))); const this$105 = $m_Lfastparse_noApi$(); const p$15 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$24$1, empty_list$1) { return (function() { const this$103 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$101 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$99 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$94 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$93 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$92 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$91 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$87 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$83 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const jsx$36 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(empty_list$1, this$83.WL$1); const this$85 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$84 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$41 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("("), this$84.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().test$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$35 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$41, this$85.WL$1); const jsx$34 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(")"); const this$86 = $m_Lfastparse_core_Implicits$Sequencer$(); const p0$42 = jsx$36.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(jsx$35.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$34, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$86))); const jsx$37 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$42, this$87.WL$1); const this$89 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$88 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$43 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("["), this$88.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().list$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$33 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$43, this$89.WL$1); const jsx$32 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("]"); const this$90 = $m_Lfastparse_core_Implicits$Sequencer$(); const p0$44 = jsx$37.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(jsx$33.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$32, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$90))); const p0$45 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$44, this$91.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().enumByName$1); const p0$46 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$45, this$92.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().byteSizeOfType$1); const p0$47 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$46, this$93.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().bitSizeOfType$1); const jsx$38 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$47, this$94.WL$1); const this$98 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$97 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$95 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$48 = $m_Lio_kaitai_struct_exprlang_Expressions$().STRING$1; const qual$5 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$48, this$95.WL$1); const x$18 = $m_Lfastparse_all$().Pass$1; const this$96 = $m_Lfastparse_core_Implicits$Repeater$(); const p0$49 = qual$5.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$18, 2147483647, (-1), new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$96)); const p0$50 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$49, this$97.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$3$3) { return (function(x$7$2) { const x$7 = x$7$2; return x$7.mkString__T() }) })(this$24$1))); const p0$51 = jsx$38.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$50, this$98.WL$1).map__F1__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Ast$expr$Str$())); const jsx$39 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$51, this$99.WL$1); const this$100 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$52 = $m_Lio_kaitai_struct_exprlang_Expressions$().NAME$1; const p0$53 = jsx$39.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$52, this$100.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$4$2) { return (function(x$2$2) { const x$8 = x$2$2; const x1 = x$8.name$1; return ((x1 === "true") ? new $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool().init___Z(true) : ((x1 === "false") ? new $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool().init___Z(false) : new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(x$8))) }) })(this$24$1)))); const jsx$40 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$53, this$101.WL$1); const this$102 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$54 = $m_Lio_kaitai_struct_exprlang_Expressions$().FLOAT$undNUMBER$1; const p0$55 = jsx$40.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$54, this$102.WL$1).map__F1__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$())); const jsx$41 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$55, this$103.WL$1); const this$104 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$56 = $m_Lio_kaitai_struct_exprlang_Expressions$().INT$undNUMBER$1; return jsx$41.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$56, this$104.WL$1).map__F1__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$())) }) })(this, empty_list)); const name$15 = new $c_Lsourcecode_Name().init___T("atom"); this.atom$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$15.value$2, p$15, this$105.implicitReprOps$1); const this$111 = $m_Lfastparse_noApi$(); const p$16 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$25$1) { return (function() { const this$108 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$106 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$57 = $m_Lio_kaitai_struct_exprlang_Expressions$().test$1; const qual$4 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$57, this$106.WL$1); const x$14 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(","); const this$107 = $m_Lfastparse_core_Implicits$Repeater$(); const p0$58 = qual$4.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$14, 2147483647, (-1), new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$107)); const jsx$43 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$58, this$108.WL$1); const this$109 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const jsx$42 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(","), this$109.WL$1).$$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser($m_Lfastparse_core_Implicits$Optioner$UnitOptioner$()); const this$110 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$43.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$42, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$110)) }) })(this)); const name$16 = new $c_Lsourcecode_Name().init___T("list_contents"); this.list$undcontents$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$16.value$2, p$16, this$111.implicitReprOps$1); const this$113 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$112 = $m_Lfastparse_noApi$(); const p$17 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$26$1) { return (function() { return $m_Lio_kaitai_struct_exprlang_Expressions$().list$undcontents$1 }) })(this)); const name$17 = new $c_Lsourcecode_Name().init___T("list"); const p0$59 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$17.value$2, p$17, this$112.implicitReprOps$1); this.list$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$59, this$113.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$27$1) { return (function(x$8$2) { const x$8$1 = x$8$2; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$List().init___sc_Seq(x$8$1) }) })(this))); const this$118 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$117 = $m_Lfastparse_noApi$(); const p$18 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$28$1) { return (function() { const this$115 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$114 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$60 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("("), this$114.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().arglist$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$45 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$60, this$115.WL$1); const jsx$44 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(")"); const this$116 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$45.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$44, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$116)) }) })(this)); const name$18 = new $c_Lsourcecode_Name().init___T("call"); const p0$61 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$18.value$2, p$18, this$117.implicitReprOps$1); const call = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$61, this$118.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$29$1) { return (function(x0$7$2) { const x0$7 = x0$7$2; return new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$4, x1$1) { return (function(lhs$2$1) { const lhs$3 = lhs$2$1; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$Call().init___Lio_kaitai_struct_exprlang_Ast$expr__sc_Seq(lhs$3, x1$1) }) })(this$29$1, x0$7)) }) })(this))); const this$123 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$122 = $m_Lfastparse_noApi$(); const p$19 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$30$1) { return (function() { const this$120 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$119 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$62 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("["), this$119.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().test$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$47 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$62, this$120.WL$1); const jsx$46 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("]"); const this$121 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$47.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$46, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$121)) }) })(this)); const name$19 = new $c_Lsourcecode_Name().init___T("slice"); const p0$63 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$19.value$2, p$19, this$122.implicitReprOps$1); const slice = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$63, this$123.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$31$1) { return (function(x0$8$2) { const x0$8 = x0$8$2; return new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$5, x1$2) { return (function(lhs$2$2) { const lhs$4 = lhs$2$2; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$Subscript().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr(lhs$4, x1$2) }) })(this$31$1, x0$8)) }) })(this))); const this$130 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$129 = $m_Lfastparse_noApi$(); const p$20 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$32$1) { return (function() { const this$127 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$126 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$125 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$124 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$64 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("."), this$124.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("as"), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const p0$65 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$64, this$125.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("<"), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const p0$66 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$65, this$126.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().TYPE$undNAME$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$49 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$66, this$127.WL$1); const jsx$48 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(">"); const this$128 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$49.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$48, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$128)) }) })(this)); const name$20 = new $c_Lsourcecode_Name().init___T("cast"); const p0$67 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$20.value$2, p$20, this$129.implicitReprOps$1); const cast = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$67, this$130.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$33$1) { return (function(typeName$2) { const typeName = typeName$2; return new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$6, typeName$1) { return (function(lhs$2$3) { const lhs$5 = lhs$2$3; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$CastToType().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$typeId(lhs$5, typeName$1) }) })(this$33$1, typeName)) }) })(this))); const this$133 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$132 = $m_Lfastparse_noApi$(); const p$21 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$34$1) { return (function() { const this$131 = $m_Lio_kaitai_struct_exprlang_WsApi$(); return new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("."), this$131.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().NAME$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()) }) })(this)); const name$21 = new $c_Lsourcecode_Name().init___T("attr"); const p0$68 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$21.value$2, p$21, this$132.implicitReprOps$1); const attr = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$68, this$133.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$35$1) { return (function(id$2) { const id = id$2; return new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$7, id$1) { return (function(lhs$2$4) { const lhs$6 = lhs$2$4; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$identifier(lhs$6, id$1) }) })(this$35$1, id)) }) })(this))); const this$137 = $m_Lfastparse_noApi$(); const p$22 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$36$1, call$1, slice$1, cast$1, attr$1) { return (function() { const this$136 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$135 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$134 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$69 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(call$1, this$134.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(slice$1); const p0$70 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$69, this$135.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(cast$1); return new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$70, this$136.WL$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(attr$1) }) })(this, call, slice, cast, attr)); const name$22 = new $c_Lsourcecode_Name().init___T("trailer"); this.trailer$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$22.value$2, p$22, this$137.implicitReprOps$1); const this$143 = $m_Lfastparse_noApi$(); const p$23 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$37$1) { return (function() { const this$140 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$138 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$71 = $m_Lio_kaitai_struct_exprlang_Expressions$().expr$1; const qual$6 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$71, this$138.WL$1); const x$22 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(","); const this$139 = $m_Lfastparse_core_Implicits$Repeater$(); const p0$72 = qual$6.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$22, 2147483647, (-1), new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$139)); const jsx$51 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$72, this$140.WL$1); const this$141 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const jsx$50 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(","), this$141.WL$1).$$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser($m_Lfastparse_core_Implicits$Optioner$UnitOptioner$()); const this$142 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$51.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$50, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$142)) }) })(this)); const name$23 = new $c_Lsourcecode_Name().init___T("exprlist"); this.exprlist$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$23.value$2, p$23, this$143.implicitReprOps$1); const this$149 = $m_Lfastparse_noApi$(); const p$24 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$38$1) { return (function() { const this$146 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$144 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$73 = $m_Lio_kaitai_struct_exprlang_Expressions$().test$1; const qual$7 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$73, this$144.WL$1); const x$26 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(","); const this$145 = $m_Lfastparse_core_Implicits$Repeater$(); const p0$74 = qual$7.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$26, 2147483647, (-1), new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$145)); const jsx$53 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$74, this$146.WL$1); const this$147 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const jsx$52 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(","), this$147.WL$1).$$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser($m_Lfastparse_core_Implicits$Optioner$UnitOptioner$()); const this$148 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$53.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$52, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$148)) }) })(this)); const name$24 = new $c_Lsourcecode_Name().init___T("testlist"); this.testlist$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$24.value$2, p$24, this$149.implicitReprOps$1); const this$152 = $m_Lfastparse_noApi$(); const p$25 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$39$1) { return (function() { const this$150 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$75 = $m_Lio_kaitai_struct_exprlang_Expressions$().test$1; const qual$8 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$75, this$150.WL$1); const x$30 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(","); const this$151 = $m_Lfastparse_core_Implicits$Repeater$(); return qual$8.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(0, x$30, 2147483647, (-1), new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$151)) }) })(this)); const name$25 = new $c_Lsourcecode_Name().init___T("arglist"); this.arglist$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$25.value$2, p$25, this$152.implicitReprOps$1); const this$154 = $m_Lfastparse_noApi$(); const p$26 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$40$1) { return (function() { const this$153 = $m_Lio_kaitai_struct_exprlang_WsApi$(); return new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("if"), this$153.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().test$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()) }) })(this)); const name$26 = new $c_Lsourcecode_Name().init___T("comp_if"); this.comp$undif$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$26.value$2, p$26, this$154.implicitReprOps$1); const this$157 = $m_Lfastparse_noApi$(); const p$27 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$41$1) { return (function() { const this$155 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$76 = $m_Lio_kaitai_struct_exprlang_Expressions$().test$1; const qual$9 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$76, this$155.WL$1); const x$34 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(","); const this$156 = $m_Lfastparse_core_Implicits$Repeater$(); return qual$9.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$34, 2147483647, (-1), new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$156)) }) })(this)); const name$27 = new $c_Lsourcecode_Name().init___T("testlist1"); this.testlist1$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$27.value$2, p$27, this$157.implicitReprOps$1); const this$166 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$165 = $m_Lfastparse_noApi$(); const p$28 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$42$1) { return (function() { const this$161 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$159 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$158 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$77 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("::"), this$158.WL$1).$$bang__Lfastparse_core_Parser(); const jsx$55 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$77, this$159.WL$1); const this$160 = $m_Lfastparse_core_Implicits$Optioner$(); const p0$78 = jsx$55.$$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser(new $c_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner().init___Lfastparse_core_Implicits$LowPriOptioner(this$160)); const jsx$56 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$78, this$161.WL$1); const this$162 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$79 = $m_Lio_kaitai_struct_exprlang_Expressions$().NAME$1; const qual$10 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$79, this$162.WL$1); const x$38 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("::"); const this$163 = $m_Lfastparse_core_Implicits$Repeater$(); const jsx$54 = qual$10.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(2, x$38, 2147483647, (-1), new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$163)); const this$164 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$56.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$54, $f_Lfastparse_core_LowestPriSequencer__Sequencer1__O(this$164)) }) })(this)); const name$28 = new $c_Lsourcecode_Name().init___T("enumByName"); const p0$80 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$28.value$2, p$28, this$165.implicitReprOps$1); this.enumByName$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$80, this$166.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$43$1) { return (function(x0$9$2) { const x0$9 = x0$9$2; if ((x0$9 !== null)) { const first$1 = x0$9.$$und1__O(); const names$1 = x0$9.$$und2__O(); if ((names$1 !== null)) { const isAbsolute = first$1.isDefined__Z(); const x1$2$1 = names$1.takeRight__I__O(2); let x1$3_$_$$und1$f; let x1$3_$_$$und2$f; matchEnd4$3: { $m_sc_Seq$(); const o7$2 = new $c_s_Some().init___O(x1$2$1); if (((o7$2.value$2 !== null) && (o7$2.value$2.lengthCompare__I__I(2) === 0))) { const a = o7$2.value$2.apply__I__O(0); const b = o7$2.value$2.apply__I__O(1); const jsx$57_$_$$und1$f = a; const jsx$57_$_$$und2$f = b; x1$3_$_$$und1$f = jsx$57_$_$$und1$f; x1$3_$_$$und2$f = jsx$57_$_$$und2$f; break matchEnd4$3 }; throw new $c_s_MatchError().init___O(x1$2$1) }; const enumName = x1$3_$_$$und1$f; const enumLabel = x1$3_$_$$und2$f; const typePath = names$1.dropRight__I__O(2); if (typePath.isEmpty__Z()) { return new $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel().init___Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_exprlang_Ast$typeId(enumName, enumLabel, $m_Lio_kaitai_struct_exprlang_Ast$().EmptyTypeId$1) } else { const jsx$58 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$8) { return (function(x$10$2) { const x$10$1 = x$10$2; return x$10$1.name$1 }) })(this$43$1)); const this$168 = $m_sc_Seq$(); return new $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel().init___Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_exprlang_Ast$typeId(enumName, enumLabel, new $c_Lio_kaitai_struct_exprlang_Ast$typeId().init___Z__sc_Seq__Z(isAbsolute, typePath.map__F1__scg_CanBuildFrom__O(jsx$58, this$168.ReusableCBFInstance$2), false)) } } }; throw new $c_s_MatchError().init___O(x0$9) }) })(this))); const this$174 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$173 = $m_Lfastparse_noApi$(); const p$29 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$44$1) { return (function() { const this$171 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$170 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$169 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$81 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("sizeof"), this$169.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("<"), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const p0$82 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$81, this$170.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().TYPE$undNAME$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$60 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$82, this$171.WL$1); const jsx$59 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(">"); const this$172 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$60.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$59, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$172)) }) })(this)); const name$29 = new $c_Lsourcecode_Name().init___T("byteSizeOfType"); const p0$83 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$29.value$2, p$29, this$173.implicitReprOps$1); this.byteSizeOfType$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$83, this$174.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$45$1) { return (function(typeName$3$2) { const typeName$3 = typeName$3$2; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType().init___Lio_kaitai_struct_exprlang_Ast$typeId(typeName$3) }) })(this))); const this$180 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$179 = $m_Lfastparse_noApi$(); const p$30 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$46$1) { return (function() { const this$177 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$176 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$175 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$84 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("bitsizeof"), this$175.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser("<"), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const p0$85 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$84, this$176.WL$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Expressions$().TYPE$undNAME$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$62 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$85, this$177.WL$1); const jsx$61 = $m_Lfastparse_noApi$().LiteralStr__T__Lfastparse_core_Parser(">"); const this$178 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$62.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$61, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$178)) }) })(this)); const name$30 = new $c_Lsourcecode_Name().init___T("bitSizeOfType"); const p0$86 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$30.value$2, p$30, this$179.implicitReprOps$1); this.bitSizeOfType$1 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$86, this$180.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$47$1) { return (function(typeName$4$2) { const typeName$4 = typeName$4$2; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType().init___Lio_kaitai_struct_exprlang_Ast$typeId(typeName$4) }) })(this))); const this$183 = $m_Lfastparse_noApi$(); const p$31 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$48$1) { return (function() { const this$181 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$87 = $m_Lio_kaitai_struct_exprlang_Expressions$().test$1; const jsx$64 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$87, this$181.WL$1); const jsx$63 = $m_Lfastparse_noApi$().End$1; const this$182 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$64.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$63, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$182)) }) })(this)); const name$31 = new $c_Lsourcecode_Name().init___T("topExpr"); this.topExpr$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$31.value$2, p$31, this$183.implicitReprOps$1); const this$186 = $m_Lfastparse_noApi$(); const p$32 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$49$1) { return (function() { const this$184 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0$88 = $m_Lio_kaitai_struct_exprlang_Expressions$().testlist1$1; const jsx$66 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$88, this$184.WL$1); const jsx$65 = $m_Lfastparse_noApi$().End$1; const this$185 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$66.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$65, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$185)) }) })(this)); const name$32 = new $c_Lsourcecode_Name().init___T("topExprList"); this.topExprList$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$32.value$2, p$32, this$186.implicitReprOps$1); return this }; op__Lfastparse_core_Parser__O__Lfastparse_core_Parser(s, rhs) { const this$2 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$1 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const p0 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(s, this$1.WL$1).$$bang__Lfastparse_core_Parser(); return new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0, this$2.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, rhs$1) { return (function(x$3$2) { return rhs$1 }) })(this, rhs))) }; realParse__p1__T__Lfastparse_core_Parser__O(src, parser) { const r = parser.parse__O__I__F3__Lfastparse_core_Parsed(src.trim(), 0, null); if ((r instanceof $c_Lfastparse_core_Parsed$Success)) { const x2 = r; const value = x2.value$1; return value } else if ((r instanceof $c_Lfastparse_core_Parsed$Failure)) { const x4 = r; throw new $c_Lio_kaitai_struct_exprlang_Expressions$ParseException().init___T__Lfastparse_core_Parsed$Failure(src, x4) } else { throw new $c_s_MatchError().init___O(r) } }; Chain__Lfastparse_core_Parser__Lfastparse_core_Parser__Lfastparse_core_Parser(p, op) { const this$8 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$7 = $m_Lfastparse_noApi$(); const p$2 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, p$1, op$1) { return (function() { const this$1 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const jsx$4 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p$1, this$1.WL$1); const this$4 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const this$2 = $m_Lio_kaitai_struct_exprlang_WsApi$(); const jsx$2 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(op$1, this$2.WL$1); const this$3 = $m_Lfastparse_core_Implicits$Sequencer$(); const p0 = jsx$2.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(p$1, $f_Lfastparse_core_LowestPriSequencer__Sequencer1__O(this$3)); const jsx$3 = new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0, this$4.WL$1); const this$5 = $m_Lfastparse_core_Implicits$Repeater$(); const jsx$1 = jsx$3.rep__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$5)); const this$6 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$4.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$1, $f_Lfastparse_core_LowestPriSequencer__Sequencer1__O(this$6)) }) })(this, p, op)); const name = new $c_Lsourcecode_Name().init___T("Chain"); const p0$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name.value$2, p$2, this$7.implicitReprOps$1); return new $c_Lfastparse_WhitespaceApi().init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0$1, this$8.WL$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const lhs = x0$1.$$und1__O(); const chunks = x0$1.$$und2__O(); return chunks.foldLeft__O__F2__O(lhs, new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this$1) { return (function(x0$2$2, x1$1$2) { const x0$2 = x0$2$2; const x1$1 = x1$1$2; const x1 = new $c_T2().init___O__O(x0$2, x1$1); const lhs$1 = x1.$$und1$f; const p2 = x1.$$und2$f; if ((p2 !== null)) { const op$2 = p2.$$und1__O(); const rhs = p2.$$und2__O(); return new $c_Lio_kaitai_struct_exprlang_Ast$expr$BinOp().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr(lhs$1, op$2, rhs) }; throw new $c_s_MatchError().init___O(x1) }) })(this$2$1))) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))) }; } const $d_Lio_kaitai_struct_exprlang_Expressions$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Expressions$: 0 }, false, "io.kaitai.struct.exprlang.Expressions$", { Lio_kaitai_struct_exprlang_Expressions$: 1, O: 1 }); $c_Lio_kaitai_struct_exprlang_Expressions$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Expressions$; let $n_Lio_kaitai_struct_exprlang_Expressions$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Expressions$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Expressions$)) { $n_Lio_kaitai_struct_exprlang_Expressions$ = new $c_Lio_kaitai_struct_exprlang_Expressions$().init___() }; return $n_Lio_kaitai_struct_exprlang_Expressions$ }); class $c_Lio_kaitai_struct_exprlang_Lexical$ extends $c_O { constructor() { super(); this.wscomment$1 = null; this.nameStart$1 = null; this.namePart$1 = null; this.identifier$1 = null; this.letter$1 = null; this.lowercase$1 = null; this.uppercase$1 = null; this.digit$1 = null; this.stringliteral$1 = null; this.singlestring$1 = null; this.singlestringchar$1 = null; this.doublestring$1 = null; this.doublestringitem$1 = null; this.doublestringchar$1 = null; this.escapeseq$1 = null; this.QUOTED$undCC$1 = null; this.VALID$undQUOTED$1 = null; this.quotedchar$1 = null; this.quotedoctal$1 = null; this.quotedhex$1 = null; this.integer$1 = null; this.decimalinteger$1 = null; this.octinteger$1 = null; this.hexinteger$1 = null; this.bininteger$1 = null; this.nonzerodigit$1 = null; this.octdigit$1 = null; this.bindigit$1 = null; this.hexdigit$1 = null; this.floatnumber$1 = null; this.fixed$1 = null; this.exponent$1 = null }; init___() { $n_Lio_kaitai_struct_exprlang_Lexical$ = this; const this$6 = $m_Lfastparse_all$(); const p$2 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this) { return (function() { const this$5 = $m_Lfastparse_all$(); const this$4 = $m_Lfastparse_all$(); const this$3 = $m_Lfastparse_all$().CharsWhile$2; const this$2 = new $c_sci_StringOps().init___T(" \n"); const cbf = $m_sci_Set$().ReusableCBF$5; const pred = $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this$2, cbf); const p = this$3.create__F1__I__Z__Lfastparse_parsers_Intrinsics$ElemsWhile(pred, 1, true); const p$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p, this$4.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("\\\n")); return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$1, this$5.implicitReprOps$1).rep__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser($m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()) }) })(this)); const name = new $c_Lsourcecode_Name().init___T("wscomment"); this.wscomment$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name.value$2, p$2, this$6.implicitReprOps$1); const this$8 = $m_Lfastparse_all$(); const p$4 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$2$1) { return (function() { const this$7 = $m_Lfastparse_all$(); const p$3 = $m_Lio_kaitai_struct_exprlang_Lexical$().letter$1; return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$3, this$7.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("_")) }) })(this)); const name$1 = new $c_Lsourcecode_Name().init___T("nameStart"); this.nameStart$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$1.value$2, p$4, this$8.implicitReprOps$1); const this$11 = $m_Lfastparse_all$(); const p$7 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$3$1) { return (function() { const this$10 = $m_Lfastparse_all$(); const this$9 = $m_Lfastparse_all$(); const p$5 = $m_Lio_kaitai_struct_exprlang_Lexical$().letter$1; const p$6 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$5, this$9.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().digit$1); return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$6, this$10.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("_")) }) })(this)); const name$2 = new $c_Lsourcecode_Name().init___T("namePart"); this.namePart$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$2.value$2, p$7, this$11.implicitReprOps$1); const this$16 = $m_Lfastparse_all$(); const this$15 = $m_Lfastparse_all$(); const this$14 = $m_Lfastparse_all$(); const p$10 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$4$1) { return (function() { const this$12 = $m_Lfastparse_all$(); const p$8 = $m_Lio_kaitai_struct_exprlang_Lexical$().nameStart$1; const jsx$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$8, this$12.implicitReprOps$1); const this$13 = $m_Lfastparse_all$(); const p$9 = $m_Lio_kaitai_struct_exprlang_Lexical$().namePart$1; return jsx$1.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$9, this$13.implicitReprOps$1).rep__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser($m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()) }) })(this)); const name$3 = new $c_Lsourcecode_Name().init___T("identifier"); const p$11 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$3.value$2, p$10, this$14.implicitReprOps$1); const p$12 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$11, this$15.implicitReprOps$1).$$bang__Lfastparse_core_Parser(); this.identifier$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$12, this$16.implicitReprOps$1).map__F1__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Ast$identifier$()); const this$18 = $m_Lfastparse_all$(); const p$14 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$5$1) { return (function() { const this$17 = $m_Lfastparse_all$(); const p$13 = $m_Lio_kaitai_struct_exprlang_Lexical$().lowercase$1; return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$13, this$17.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().uppercase$1) }) })(this)); const name$4 = new $c_Lsourcecode_Name().init___T("letter"); this.letter$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$4.value$2, p$14, this$18.implicitReprOps$1); const this$28 = $m_Lfastparse_all$(); const p$15 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$6$1) { return (function() { const this$25 = $m_Lfastparse_all$(); const this$22 = new $c_sr_RichChar().init___C(97); const end = new $c_jl_Character().init___C(122); const array = [$f_sr_IntegralProxy__to__O__sci_NumericRange$Inclusive(this$22, end)]; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const b = new $c_sjs_js_WrappedArray().init___(); const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const x$1 = arg1; const elem = x$1.toIndexedSeq__sci_IndexedSeq(); b.array$6.push(elem); i = ((1 + i) | 0) }; return new $c_Lfastparse_parsers_Intrinsics$ElemIn().init___T__sc_Seq__Lfastparse_utils_ReprOps__Lfastparse_utils_ElemSetHelper("CharIn", b, this$25.implicitReprOps$1, $m_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$()) }) })(this)); const name$5 = new $c_Lsourcecode_Name().init___T("lowercase"); this.lowercase$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$5.value$2, p$15, this$28.implicitReprOps$1); const this$38 = $m_Lfastparse_all$(); const p$16 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$7$1) { return (function() { const this$35 = $m_Lfastparse_all$(); const this$32 = new $c_sr_RichChar().init___C(65); const end$1 = new $c_jl_Character().init___C(90); const array$1 = [$f_sr_IntegralProxy__to__O__sci_NumericRange$Inclusive(this$32, end$1)]; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const b$1 = new $c_sjs_js_WrappedArray().init___(); const x1$1 = (array$1.length | 0); switch (x1$1) { case (-1): { break } }; let i$1 = 0; const len$1 = (array$1.length | 0); while ((i$1 < len$1)) { const index$1 = i$1; const arg1$1 = array$1[index$1]; const x$1$1 = arg1$1; const elem$1 = x$1$1.toIndexedSeq__sci_IndexedSeq(); b$1.array$6.push(elem$1); i$1 = ((1 + i$1) | 0) }; return new $c_Lfastparse_parsers_Intrinsics$ElemIn().init___T__sc_Seq__Lfastparse_utils_ReprOps__Lfastparse_utils_ElemSetHelper("CharIn", b$1, this$35.implicitReprOps$1, $m_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$()) }) })(this)); const name$6 = new $c_Lsourcecode_Name().init___T("uppercase"); this.uppercase$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$6.value$2, p$16, this$38.implicitReprOps$1); const this$48 = $m_Lfastparse_all$(); const p$17 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$8$1) { return (function() { const this$45 = $m_Lfastparse_all$(); const this$42 = new $c_sr_RichChar().init___C(48); const end$2 = new $c_jl_Character().init___C(57); const array$2 = [$f_sr_IntegralProxy__to__O__sci_NumericRange$Inclusive(this$42, end$2)]; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const b$2 = new $c_sjs_js_WrappedArray().init___(); const x1$2 = (array$2.length | 0); switch (x1$2) { case (-1): { break } }; let i$2 = 0; const len$2 = (array$2.length | 0); while ((i$2 < len$2)) { const index$2 = i$2; const arg1$2 = array$2[index$2]; const x$1$2 = arg1$2; const elem$2 = x$1$2.toIndexedSeq__sci_IndexedSeq(); b$2.array$6.push(elem$2); i$2 = ((1 + i$2) | 0) }; return new $c_Lfastparse_parsers_Intrinsics$ElemIn().init___T__sc_Seq__Lfastparse_utils_ReprOps__Lfastparse_utils_ElemSetHelper("CharIn", b$2, this$45.implicitReprOps$1, $m_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$()) }) })(this)); const name$7 = new $c_Lsourcecode_Name().init___T("digit"); this.digit$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$7.value$2, p$17, this$48.implicitReprOps$1); const this$50 = $m_Lfastparse_all$(); const p$19 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$9$1) { return (function() { const this$49 = $m_Lfastparse_all$(); const p$18 = $m_Lio_kaitai_struct_exprlang_Lexical$().singlestring$1; return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$18, this$49.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().doublestring$1) }) })(this)); const name$8 = new $c_Lsourcecode_Name().init___T("stringliteral"); this.stringliteral$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$8.value$2, p$19, this$50.implicitReprOps$1); const this$56 = $m_Lfastparse_all$(); const p$23 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$10$1) { return (function() { const this$54 = $m_Lfastparse_all$(); const this$51 = $m_Lfastparse_all$(); const jsx$3 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("'"), this$51.implicitReprOps$1); const this$53 = $m_Lfastparse_all$(); const this$52 = $m_Lfastparse_all$(); const p$20 = $m_Lio_kaitai_struct_exprlang_Lexical$().singlestringchar$1; const p$21 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$20, this$52.implicitReprOps$1).rep__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser($m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()); const p$22 = jsx$3.$$tilde$div__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$21, this$53.implicitReprOps$1).$$bang__Lfastparse_core_Parser(), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$4 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$22, this$54.implicitReprOps$1); const jsx$2 = $m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("'"); const this$55 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$4.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$2, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$55)) }) })(this)); const name$9 = new $c_Lsourcecode_Name().init___T("singlestring"); this.singlestring$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$9.value$2, p$23, this$56.implicitReprOps$1); const this$64 = $m_Lfastparse_all$(); const p$24 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$11$1) { return (function() { const this$63 = $m_Lfastparse_all$().CharsWhile$2; const pred$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$1) { return (function(x$1$2$1) { let x$1$3; if ((x$1$2$1 === null)) { x$1$3 = 0 } else { const this$58 = x$1$2$1; x$1$3 = this$58.value$1 }; const this$62 = new $c_sci_StringOps().init___T("'"); const elem$3 = new $c_jl_Character().init___C(x$1$3); return (!$f_sc_SeqLike__contains__O__Z(this$62, elem$3)) }) })(this$11$1)); $m_Lfastparse_all$(); const min = 1; return this$63.create__F1__I__Z__Lfastparse_parsers_Intrinsics$ElemsWhile(pred$1, min, true) }) })(this)); const name$10 = new $c_Lsourcecode_Name().init___T("singlestringchar"); this.singlestringchar$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$10.value$2, p$24, this$64.implicitReprOps$1); const this$71 = $m_Lfastparse_all$(); const this$70 = $m_Lfastparse_all$(); const p$27 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$12$1) { return (function() { const this$68 = $m_Lfastparse_all$(); const this$65 = $m_Lfastparse_all$(); const jsx$7 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("\""), this$65.implicitReprOps$1); const this$66 = $m_Lfastparse_all$(); const p$25 = $m_Lio_kaitai_struct_exprlang_Lexical$().doublestringitem$1; const jsx$6 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$25, this$66.implicitReprOps$1); const this$67 = $m_Lfastparse_core_Implicits$Repeater$(); const p$26 = jsx$7.$$tilde$div__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$6.rep__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(new $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater().init___Lfastparse_core_Implicits$LowPriRepeater(this$67)), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$8 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$26, this$68.implicitReprOps$1); const jsx$5 = $m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("\""); const this$69 = $m_Lfastparse_core_Implicits$Sequencer$(); return jsx$8.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$5, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$69)) }) })(this)); const name$11 = new $c_Lsourcecode_Name().init___T("doublestring"); const p$28 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$11.value$2, p$27, this$70.implicitReprOps$1); this.doublestring$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$28, this$71.implicitReprOps$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$13$1) { return (function(x$2$2) { const x$2 = x$2$2; return x$2.mkString__T() }) })(this))); const this$74 = $m_Lfastparse_all$(); const p$31 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$14$1) { return (function() { const this$73 = $m_Lfastparse_all$(); const this$72 = $m_Lfastparse_all$(); const p$29 = $m_Lio_kaitai_struct_exprlang_Lexical$().doublestringchar$1; const p$30 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$29, this$72.implicitReprOps$1).$$bang__Lfastparse_core_Parser(); return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$30, this$73.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().escapeseq$1) }) })(this)); const name$12 = new $c_Lsourcecode_Name().init___T("doublestringitem"); this.doublestringitem$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$12.value$2, p$31, this$74.implicitReprOps$1); const this$82 = $m_Lfastparse_all$(); const p$32 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$15$1) { return (function() { const this$81 = $m_Lfastparse_all$().CharsWhile$2; const pred$2 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$2) { return (function(x$3$2) { let x$3; if ((x$3$2 === null)) { x$3 = 0 } else { const this$76 = x$3$2; x$3 = this$76.value$1 }; const this$80 = new $c_sci_StringOps().init___T("\\\""); const elem$4 = new $c_jl_Character().init___C(x$3); return (!$f_sc_SeqLike__contains__O__Z(this$80, elem$4)) }) })(this$15$1)); $m_Lfastparse_all$(); const min$1 = 1; return this$81.create__F1__I__Z__Lfastparse_parsers_Intrinsics$ElemsWhile(pred$2, min$1, true) }) })(this)); const name$13 = new $c_Lsourcecode_Name().init___T("doublestringchar"); this.doublestringchar$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$13.value$2, p$32, this$82.implicitReprOps$1); const this$86 = $m_Lfastparse_all$(); const p$35 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$16$1) { return (function() { const this$83 = $m_Lfastparse_all$(); const jsx$9 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("\\"), this$83.implicitReprOps$1); const this$85 = $m_Lfastparse_all$(); const this$84 = $m_Lfastparse_all$(); const p$33 = $m_Lio_kaitai_struct_exprlang_Lexical$().quotedchar$1; const p$34 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$33, this$84.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().quotedoctal$1); return jsx$9.$$tilde$div__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$34, this$85.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().quotedhex$1), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()) }) })(this)); const name$14 = new $c_Lsourcecode_Name().init___T("escapeseq"); this.escapeseq$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$14.value$2, p$35, this$86.implicitReprOps$1); const array$3 = [new $c_T2().init___O__O("a", "\u0007"), new $c_T2().init___O__O("b", "\b"), new $c_T2().init___O__O("t", "\t"), new $c_T2().init___O__O("n", "\n"), new $c_T2().init___O__O("v", "\v"), new $c_T2().init___O__O("f", "\f"), new $c_T2().init___O__O("r", "\r"), new $c_T2().init___O__O("e", "\u001b"), new $c_T2().init___O__O("'", "'"), new $c_T2().init___O__O("\"", "\""), new $c_T2().init___O__O("\\", "\\")]; const this$112 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i$3 = 0; const len$3 = (array$3.length | 0); while ((i$3 < len$3)) { const index$3 = i$3; const arg1$3 = array$3[index$3]; this$112.$$plus$eq__T2__scm_MapBuilder(arg1$3); i$3 = ((1 + i$3) | 0) }; this.QUOTED$undCC$1 = this$112.elems$1; const this$113 = this.QUOTED$undCC$1; const this$114 = this$113.keySet__sci_Set(); const this$115 = $m_sci_List$(); const cbf$1 = this$115.ReusableCBFInstance$2; const this$116 = $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this$114, cbf$1); const ord = $m_s_math_Ordering$String$(); this.VALID$undQUOTED$1 = $f_sc_SeqLike__sorted__s_math_Ordering__O(this$116, ord).mkString__T(); const this$124 = $m_Lfastparse_all$(); const this$123 = $m_Lfastparse_all$(); const p$37 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$17$1) { return (function() { const this$122 = $m_Lfastparse_all$(); const this$119 = $m_Lfastparse_all$(); const array$4 = [$m_s_Predef$().wrapString__T__sci_WrappedString($m_Lio_kaitai_struct_exprlang_Lexical$().VALID$undQUOTED$1)]; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const b$3 = new $c_sjs_js_WrappedArray().init___(); const x1$3 = (array$4.length | 0); switch (x1$3) { case (-1): { break } }; let i$4 = 0; const len$4 = (array$4.length | 0); while ((i$4 < len$4)) { const index$4 = i$4; const arg1$4 = array$4[index$4]; const x$1$4 = arg1$4; const elem$5 = x$1$4.toIndexedSeq__sci_IndexedSeq(); b$3.array$6.push(elem$5); i$4 = ((1 + i$4) | 0) }; const p$36 = new $c_Lfastparse_parsers_Intrinsics$ElemIn().init___T__sc_Seq__Lfastparse_utils_ReprOps__Lfastparse_utils_ElemSetHelper("CharIn", b$3, this$119.implicitReprOps$1, $m_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$()); return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$36, this$122.implicitReprOps$1).$$bang__Lfastparse_core_Parser() }) })(this)); const name$15 = new $c_Lsourcecode_Name().init___T("quotedchar"); const p$38 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$15.value$2, p$37, this$123.implicitReprOps$1); this.quotedchar$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$38, this$124.implicitReprOps$1).map__F1__Lfastparse_core_Parser(this.QUOTED$undCC$1); const this$128 = $m_Lfastparse_all$(); const this$127 = $m_Lfastparse_all$(); const p$41 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$18$1) { return (function() { const this$126 = $m_Lfastparse_all$(); const this$125 = $m_Lfastparse_all$(); const p$39 = $m_Lio_kaitai_struct_exprlang_Lexical$().octdigit$1; const qual$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$39, this$125.implicitReprOps$1); const x$2$1 = qual$1.rep$default$2__Lfastparse_core_Parser(); const p$40 = qual$1.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$2$1, 2147483647, (-1), $m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()); return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$40, this$126.implicitReprOps$1).$$bang__Lfastparse_core_Parser() }) })(this)); const name$16 = new $c_Lsourcecode_Name().init___T("quotedoctal"); const p$42 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$16.value$2, p$41, this$127.implicitReprOps$1); this.quotedoctal$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$42, this$128.implicitReprOps$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$19$1) { return (function(digits$2) { const digits = digits$2; const code = (65535 & $m_jl_Integer$().parseInt__T__I__I(digits, 8)); return $g.String.fromCharCode(code) }) })(this))); const this$137 = $m_Lfastparse_all$(); const this$136 = $m_Lfastparse_all$(); const p$45 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$20$1) { return (function() { const this$133 = $m_Lfastparse_all$(); const jsx$10 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("u"), this$133.implicitReprOps$1); const this$135 = $m_Lfastparse_all$(); const this$134 = $m_Lfastparse_all$(); const p$43 = $m_Lio_kaitai_struct_exprlang_Lexical$().hexdigit$1; const qual$2 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$43, this$134.implicitReprOps$1); const x$7 = qual$2.rep$default$2__Lfastparse_core_Parser(); const p$44 = qual$2.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(0, x$7, 2147483647, 4, $m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()); return jsx$10.$$tilde$div__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$44, this$135.implicitReprOps$1).$$bang__Lfastparse_core_Parser(), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()) }) })(this)); const name$17 = new $c_Lsourcecode_Name().init___T("quotedhex"); const p$46 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$17.value$2, p$45, this$136.implicitReprOps$1); this.quotedhex$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$46, this$137.implicitReprOps$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$21$1) { return (function(digits$3$2) { const digits$3 = digits$3$2; const code$1 = (65535 & $m_jl_Integer$().parseInt__T__I__I(digits$3, 16)); return $g.String.fromCharCode(code$1) }) })(this))); const this$145 = $m_Lfastparse_all$(); const p$50 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$22$1) { return (function() { const this$144 = $m_Lfastparse_all$(); const this$143 = $m_Lfastparse_all$(); const this$142 = $m_Lfastparse_all$(); const p$47 = $m_Lio_kaitai_struct_exprlang_Lexical$().octinteger$1; const p$48 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$47, this$142.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().hexinteger$1); const p$49 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$48, this$143.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().bininteger$1); return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$49, this$144.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().decimalinteger$1) }) })(this)); const name$18 = new $c_Lsourcecode_Name().init___T("integer"); this.integer$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$18.value$2, p$50, this$145.implicitReprOps$1); const this$152 = $m_Lfastparse_all$(); const this$151 = $m_Lfastparse_all$(); const this$150 = $m_Lfastparse_all$(); const p$55 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$23$1) { return (function() { const this$149 = $m_Lfastparse_all$(); const this$146 = $m_Lfastparse_all$(); const p$51 = $m_Lio_kaitai_struct_exprlang_Lexical$().nonzerodigit$1; const jsx$11 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$51, this$146.implicitReprOps$1); const this$148 = $m_Lfastparse_all$(); const this$147 = $m_Lfastparse_all$(); const p$52 = $m_Lio_kaitai_struct_exprlang_Lexical$().digit$1; const p$53 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$52, this$147.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("_")); const p$54 = jsx$11.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$53, this$148.implicitReprOps$1).rep__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser($m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$54, this$149.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("0")) }) })(this)); const name$19 = new $c_Lsourcecode_Name().init___T("decimalinteger"); const p$56 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$19.value$2, p$55, this$150.implicitReprOps$1); const p$57 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$56, this$151.implicitReprOps$1).$$bang__Lfastparse_core_Parser(); this.decimalinteger$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$57, this$152.implicitReprOps$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$24$1) { return (function(x$4$2) { const x$4 = x$4$2; return $m_Lio_kaitai_struct_exprlang_Lexical$().parseNum__T__I__s_math_BigInt(x$4, 10) }) })(this))); const this$159 = $m_Lfastparse_all$(); const this$158 = $m_Lfastparse_all$(); const p$61 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$25$1) { return (function() { const this$155 = $m_Lfastparse_all$(); const this$153 = $m_Lfastparse_all$(); const jsx$12 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("0"), this$153.implicitReprOps$1); const this$154 = $m_Lfastparse_all$(); const p$58 = jsx$12.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("o"), this$154.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("O")), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$13 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$58, this$155.implicitReprOps$1); const this$157 = $m_Lfastparse_all$(); const this$156 = $m_Lfastparse_all$(); const p$59 = $m_Lio_kaitai_struct_exprlang_Lexical$().octdigit$1; const qual$3 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$59, this$156.implicitReprOps$1); const x$10 = qual$3.rep$default$2__Lfastparse_core_Parser(); const p$60 = qual$3.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$10, 2147483647, (-1), $m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()); return jsx$13.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$60, this$157.implicitReprOps$1).$$bang__Lfastparse_core_Parser(), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()) }) })(this)); const name$20 = new $c_Lsourcecode_Name().init___T("octinteger"); const p$62 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$20.value$2, p$61, this$158.implicitReprOps$1); this.octinteger$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$62, this$159.implicitReprOps$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$26$1) { return (function(x$5$2) { const x$5 = x$5$2; return $m_Lio_kaitai_struct_exprlang_Lexical$().parseNum__T__I__s_math_BigInt(x$5, 8) }) })(this))); const this$166 = $m_Lfastparse_all$(); const this$165 = $m_Lfastparse_all$(); const p$66 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$27$1) { return (function() { const this$162 = $m_Lfastparse_all$(); const this$160 = $m_Lfastparse_all$(); const jsx$14 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("0"), this$160.implicitReprOps$1); const this$161 = $m_Lfastparse_all$(); const p$63 = jsx$14.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("x"), this$161.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("X")), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$15 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$63, this$162.implicitReprOps$1); const this$164 = $m_Lfastparse_all$(); const this$163 = $m_Lfastparse_all$(); const p$64 = $m_Lio_kaitai_struct_exprlang_Lexical$().hexdigit$1; const qual$4 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$64, this$163.implicitReprOps$1); const x$14 = qual$4.rep$default$2__Lfastparse_core_Parser(); const p$65 = qual$4.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$14, 2147483647, (-1), $m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()); return jsx$15.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$65, this$164.implicitReprOps$1).$$bang__Lfastparse_core_Parser(), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()) }) })(this)); const name$21 = new $c_Lsourcecode_Name().init___T("hexinteger"); const p$67 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$21.value$2, p$66, this$165.implicitReprOps$1); this.hexinteger$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$67, this$166.implicitReprOps$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$28$1) { return (function(x$6$2) { const x$6 = x$6$2; return $m_Lio_kaitai_struct_exprlang_Lexical$().parseNum__T__I__s_math_BigInt(x$6, 16) }) })(this))); const this$173 = $m_Lfastparse_all$(); const this$172 = $m_Lfastparse_all$(); const p$71 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$29$1) { return (function() { const this$169 = $m_Lfastparse_all$(); const this$167 = $m_Lfastparse_all$(); const jsx$16 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("0"), this$167.implicitReprOps$1); const this$168 = $m_Lfastparse_all$(); const p$68 = jsx$16.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("b"), this$168.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("B")), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$17 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$68, this$169.implicitReprOps$1); const this$171 = $m_Lfastparse_all$(); const this$170 = $m_Lfastparse_all$(); const p$69 = $m_Lio_kaitai_struct_exprlang_Lexical$().bindigit$1; const qual$5 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$69, this$170.implicitReprOps$1); const x$18 = qual$5.rep$default$2__Lfastparse_core_Parser(); const p$70 = qual$5.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$18, 2147483647, (-1), $m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()); return jsx$17.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$70, this$171.implicitReprOps$1).$$bang__Lfastparse_core_Parser(), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()) }) })(this)); const name$22 = new $c_Lsourcecode_Name().init___T("bininteger"); const p$72 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$22.value$2, p$71, this$172.implicitReprOps$1); this.bininteger$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$72, this$173.implicitReprOps$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$30$1) { return (function(x$7$2) { const x$7$1 = x$7$2; return $m_Lio_kaitai_struct_exprlang_Lexical$().parseNum__T__I__s_math_BigInt(x$7$1, 2) }) })(this))); const this$183 = $m_Lfastparse_all$(); const p$73 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$31$1) { return (function() { const this$180 = $m_Lfastparse_all$(); const this$177 = new $c_sr_RichChar().init___C(49); const end$3 = new $c_jl_Character().init___C(57); const array$5 = [$f_sr_IntegralProxy__to__O__sci_NumericRange$Inclusive(this$177, end$3)]; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const b$4 = new $c_sjs_js_WrappedArray().init___(); const x1$4 = (array$5.length | 0); switch (x1$4) { case (-1): { break } }; let i$5 = 0; const len$5 = (array$5.length | 0); while ((i$5 < len$5)) { const index$5 = i$5; const arg1$5 = array$5[index$5]; const x$1$5 = arg1$5; const elem$6 = x$1$5.toIndexedSeq__sci_IndexedSeq(); b$4.array$6.push(elem$6); i$5 = ((1 + i$5) | 0) }; return new $c_Lfastparse_parsers_Intrinsics$ElemIn().init___T__sc_Seq__Lfastparse_utils_ReprOps__Lfastparse_utils_ElemSetHelper("CharIn", b$4, this$180.implicitReprOps$1, $m_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$()) }) })(this)); const name$23 = new $c_Lsourcecode_Name().init___T("nonzerodigit"); this.nonzerodigit$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$23.value$2, p$73, this$183.implicitReprOps$1); const this$194 = $m_Lfastparse_all$(); const p$75 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$32$1) { return (function() { const this$193 = $m_Lfastparse_all$(); const this$190 = $m_Lfastparse_all$(); const this$187 = new $c_sr_RichChar().init___C(48); const end$4 = new $c_jl_Character().init___C(55); const array$6 = [$f_sr_IntegralProxy__to__O__sci_NumericRange$Inclusive(this$187, end$4)]; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const b$5 = new $c_sjs_js_WrappedArray().init___(); const x1$5 = (array$6.length | 0); switch (x1$5) { case (-1): { break } }; let i$6 = 0; const len$6 = (array$6.length | 0); while ((i$6 < len$6)) { const index$6 = i$6; const arg1$6 = array$6[index$6]; const x$1$6 = arg1$6; const elem$7 = x$1$6.toIndexedSeq__sci_IndexedSeq(); b$5.array$6.push(elem$7); i$6 = ((1 + i$6) | 0) }; const p$74 = new $c_Lfastparse_parsers_Intrinsics$ElemIn().init___T__sc_Seq__Lfastparse_utils_ReprOps__Lfastparse_utils_ElemSetHelper("CharIn", b$5, this$190.implicitReprOps$1, $m_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$()); return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$74, this$193.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("_")) }) })(this)); const name$24 = new $c_Lsourcecode_Name().init___T("octdigit"); this.octdigit$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$24.value$2, p$75, this$194.implicitReprOps$1); const this$197 = $m_Lfastparse_all$(); const p$77 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$33$1) { return (function() { const this$196 = $m_Lfastparse_all$(); const this$195 = $m_Lfastparse_all$(); const p$76 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("0"), this$195.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("1")); return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$76, this$196.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("_")) }) })(this)); const name$25 = new $c_Lsourcecode_Name().init___T("bindigit"); this.bindigit$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$25.value$2, p$77, this$197.implicitReprOps$1); const this$213 = $m_Lfastparse_all$(); const p$80 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$34$1) { return (function() { const this$212 = $m_Lfastparse_all$(); const this$198 = $m_Lfastparse_all$(); const p$78 = $m_Lio_kaitai_struct_exprlang_Lexical$().digit$1; const jsx$19 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$78, this$198.implicitReprOps$1); const this$209 = $m_Lfastparse_all$(); const this$202 = new $c_sr_RichChar().init___C(97); const end$5 = new $c_jl_Character().init___C(102); const jsx$18 = $f_sr_IntegralProxy__to__O__sci_NumericRange$Inclusive(this$202, end$5); const this$206 = new $c_sr_RichChar().init___C(65); const end$6 = new $c_jl_Character().init___C(70); const array$7 = [jsx$18, $f_sr_IntegralProxy__to__O__sci_NumericRange$Inclusive(this$206, end$6)]; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const b$6 = new $c_sjs_js_WrappedArray().init___(); const x1$6 = (array$7.length | 0); switch (x1$6) { case (-1): { break } }; let i$7 = 0; const len$7 = (array$7.length | 0); while ((i$7 < len$7)) { const index$7 = i$7; const arg1$7 = array$7[index$7]; const x$1$7 = arg1$7; const elem$8 = x$1$7.toIndexedSeq__sci_IndexedSeq(); b$6.array$6.push(elem$8); i$7 = ((1 + i$7) | 0) }; const p$79 = jsx$19.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(new $c_Lfastparse_parsers_Intrinsics$ElemIn().init___T__sc_Seq__Lfastparse_utils_ReprOps__Lfastparse_utils_ElemSetHelper("CharIn", b$6, this$209.implicitReprOps$1, $m_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$())); return new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$79, this$212.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("_")) }) })(this)); const name$26 = new $c_Lsourcecode_Name().init___T("hexdigit"); this.hexdigit$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$26.value$2, p$80, this$213.implicitReprOps$1); const this$221 = $m_Lfastparse_all$(); const this$220 = $m_Lfastparse_all$(); const this$219 = $m_Lfastparse_all$(); const p$86 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$35$1) { return (function() { const this$216 = $m_Lfastparse_all$(); const this$215 = $m_Lfastparse_all$(); const this$214 = $m_Lfastparse_all$(); const p$81 = $m_Lio_kaitai_struct_exprlang_Lexical$().digit$1; const qual$6 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$81, this$214.implicitReprOps$1); const x$22 = qual$6.rep$default$2__Lfastparse_core_Parser(); const p$82 = qual$6.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$22, 2147483647, (-1), $m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()); const p$83 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$82, this$215.implicitReprOps$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().exponent$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$21 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$83, this$216.implicitReprOps$1); const this$217 = $m_Lfastparse_all$(); const p$84 = $m_Lio_kaitai_struct_exprlang_Lexical$().fixed$1; const jsx$20 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$84, this$217.implicitReprOps$1); const this$218 = $m_Lfastparse_all$(); const p$85 = $m_Lio_kaitai_struct_exprlang_Lexical$().exponent$1; return jsx$21.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(jsx$20.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$85, this$218.implicitReprOps$1).$$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser($m_Lfastparse_core_Implicits$Optioner$UnitOptioner$()), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer())) }) })(this)); const name$27 = new $c_Lsourcecode_Name().init___T("floatnumber"); const p$87 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$27.value$2, p$86, this$219.implicitReprOps$1); const p$88 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$87, this$220.implicitReprOps$1).$$bang__Lfastparse_core_Parser(); this.floatnumber$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$88, this$221.implicitReprOps$1).map__F1__Lfastparse_core_Parser(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$36$1) { return (function(x$8$2) { const x$8 = x$8$2; const this$222 = $m_s_package$().BigDecimal__s_math_BigDecimal$(); return this$222.exact__T__s_math_BigDecimal(x$8) }) })(this))); const this$233 = $m_Lfastparse_all$(); const p$99 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$37$1) { return (function() { const this$227 = $m_Lfastparse_all$(); const this$225 = $m_Lfastparse_all$(); const this$224 = $m_Lfastparse_all$(); const this$223 = $m_Lfastparse_all$(); const p$89 = $m_Lio_kaitai_struct_exprlang_Lexical$().digit$1; const p$90 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$89, this$223.implicitReprOps$1).rep__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser($m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()); const p$91 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$90, this$224.implicitReprOps$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("."), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$23 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$91, this$225.implicitReprOps$1); const this$226 = $m_Lfastparse_all$(); const p$92 = $m_Lio_kaitai_struct_exprlang_Lexical$().digit$1; const qual$7 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$92, this$226.implicitReprOps$1); const x$26 = qual$7.rep$default$2__Lfastparse_core_Parser(); const p$93 = jsx$23.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(qual$7.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$26, 2147483647, (-1), $m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$24 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$93, this$227.implicitReprOps$1); const this$230 = $m_Lfastparse_all$(); const this$229 = $m_Lfastparse_all$(); const this$228 = $m_Lfastparse_all$(); const p$94 = $m_Lio_kaitai_struct_exprlang_Lexical$().digit$1; const qual$8 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$94, this$228.implicitReprOps$1); const x$30 = qual$8.rep$default$2__Lfastparse_core_Parser(); const p$95 = qual$8.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$30, 2147483647, (-1), $m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()); const p$96 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$95, this$229.implicitReprOps$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("."), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$22 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$96, this$230.implicitReprOps$1); const this$232 = $m_Lfastparse_all$(); const this$231 = $m_Lfastparse_all$(); const p$97 = $m_Lio_kaitai_struct_exprlang_Lexical$().wscomment$1; const p$98 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$97, this$231.implicitReprOps$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser($m_Lio_kaitai_struct_exprlang_Lexical$().nameStart$1, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); return jsx$24.$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(jsx$22.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$98, this$232.implicitReprOps$1).unary$und$bang__Lfastparse_core_Parser(), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer())) }) })(this)); const name$28 = new $c_Lsourcecode_Name().init___T("fixed"); this.fixed$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$28.value$2, p$99, this$233.implicitReprOps$1); const this$240 = $m_Lfastparse_all$(); const p$104 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$38$1) { return (function() { const this$238 = $m_Lfastparse_all$(); const this$235 = $m_Lfastparse_all$(); const this$234 = $m_Lfastparse_all$(); const p$100 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("e"), this$234.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("E")); const jsx$25 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$100, this$235.implicitReprOps$1); const this$237 = $m_Lfastparse_all$(); const this$236 = $m_Lfastparse_all$(); const p$101 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("+"), this$236.implicitReprOps$1).$$bar__Lfastparse_core_Parser__Lfastparse_core_Parser($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser("-")); const p$102 = jsx$25.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$101, this$237.implicitReprOps$1).$$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser($m_Lfastparse_core_Implicits$Optioner$UnitOptioner$()), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$26 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$102, this$238.implicitReprOps$1); const this$239 = $m_Lfastparse_all$(); const p$103 = $m_Lio_kaitai_struct_exprlang_Lexical$().digit$1; const qual$9 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$103, this$239.implicitReprOps$1); const x$34 = qual$9.rep$default$2__Lfastparse_core_Parser(); return jsx$26.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(qual$9.rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(1, x$34, 2147483647, (-1), $m_Lfastparse_core_Implicits$Repeater$UnitRepeater$()), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()) }) })(this)); const name$29 = new $c_Lsourcecode_Name().init___T("exponent"); this.exponent$1 = new $c_Lfastparse_parsers_Combinators$Rule().init___T__F0__Lfastparse_utils_ReprOps(name$29.value$2, p$104, this$240.implicitReprOps$1); return this }; parseNum__T__I__s_math_BigInt(literal, base) { const cleanLiteral = literal.split("_").join(""); return $m_s_package$().BigInt__s_math_BigInt$().apply__T__I__s_math_BigInt(cleanLiteral, base) }; kw__T__Lfastparse_core_Parser(s) { const this$1 = $m_Lfastparse_all$(); const jsx$1 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps($m_Lfastparse_all$().LiteralStr__T__Lfastparse_core_Parser(s), this$1.implicitReprOps$1); const this$2 = $m_Lfastparse_all$(); const p = this.namePart$1; return jsx$1.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p, this$2.implicitReprOps$1).unary$und$bang__Lfastparse_core_Parser(), $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()) }; } const $d_Lio_kaitai_struct_exprlang_Lexical$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Lexical$: 0 }, false, "io.kaitai.struct.exprlang.Lexical$", { Lio_kaitai_struct_exprlang_Lexical$: 1, O: 1 }); $c_Lio_kaitai_struct_exprlang_Lexical$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Lexical$; let $n_Lio_kaitai_struct_exprlang_Lexical$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Lexical$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Lexical$)) { $n_Lio_kaitai_struct_exprlang_Lexical$ = new $c_Lio_kaitai_struct_exprlang_Lexical$().init___() }; return $n_Lio_kaitai_struct_exprlang_Lexical$ }); class $c_Lio_kaitai_struct_format_Identifier extends $c_O { } class $c_Lio_kaitai_struct_format_Identifier$ extends $c_O { constructor() { super(); this.ReIdentifier$1 = null; this.ROOT$1 = null; this.PARENT$1 = null; this.IO$1 = null; this.ITERATOR$1 = null; this.ITERATOR2$1 = null; this.INDEX$1 = null; this.SWITCH$undON$1 = null; this.IS$undLE$1 = null; this.SIZEOF$1 = null }; checkIdentifierSource__T__T__sci_List__V(id, entity, path) { matchEnd4: { const o7 = this.ReIdentifier$1.unapplySeq__jl_CharSequence__s_Option(id); let jsx$1; if ((!o7.isEmpty__Z())) { if ((o7.get__O() !== null)) { const this$1 = o7.get__O(); jsx$1 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$1, 0) === 0) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { break matchEnd4 }; throw $m_Lio_kaitai_struct_problems_KSYParseError$().invalidId__T__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(id, entity, path) } }; init___() { $n_Lio_kaitai_struct_format_Identifier$ = this; const this$2 = new $c_sci_StringOps().init___T("^[a-z][a-z0-9_]*$"); const groupNames = $m_sci_Nil$(); const $$this = this$2.repr$1; this.ReIdentifier$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this, groupNames); this.ROOT$1 = "_root"; this.PARENT$1 = "_parent"; this.IO$1 = "_io"; this.ITERATOR$1 = "_"; this.ITERATOR2$1 = "_buf"; this.INDEX$1 = "_index"; this.SWITCH$undON$1 = "_on"; this.IS$undLE$1 = "_is_le"; this.SIZEOF$1 = "_sizeof"; return this }; checkIdentifier__T__V(id) { matchEnd4: { const o7 = this.ReIdentifier$1.unapplySeq__jl_CharSequence__s_Option(id); let jsx$1; if ((!o7.isEmpty__Z())) { if ((o7.get__O() !== null)) { const this$1 = o7.get__O(); jsx$1 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$1, 0) === 0) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { break matchEnd4 }; throw new $c_Lio_kaitai_struct_format_InvalidIdentifier().init___T(id) } }; } const $d_Lio_kaitai_struct_format_Identifier$ = new $TypeData().initClass({ Lio_kaitai_struct_format_Identifier$: 0 }, false, "io.kaitai.struct.format.Identifier$", { Lio_kaitai_struct_format_Identifier$: 1, O: 1 }); $c_Lio_kaitai_struct_format_Identifier$.prototype.$classData = $d_Lio_kaitai_struct_format_Identifier$; let $n_Lio_kaitai_struct_format_Identifier$ = (void 0); const $m_Lio_kaitai_struct_format_Identifier$ = (function() { if ((!$n_Lio_kaitai_struct_format_Identifier$)) { $n_Lio_kaitai_struct_format_Identifier$ = new $c_Lio_kaitai_struct_format_Identifier$().init___() }; return $n_Lio_kaitai_struct_format_Identifier$ }); class $c_Lio_kaitai_struct_format_InstanceSpec$ extends $c_O { constructor() { super(); this.LEGAL$undKEYS$undVALUE$undINST$1 = null }; init___() { $n_Lio_kaitai_struct_format_InstanceSpec$ = this; const jsx$1 = $m_s_Predef$().Set$2; const array = ["value", "doc", "doc-ref", "enum", "if"]; this.LEGAL$undKEYS$undVALUE$undINST$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); return this }; fromYaml__O__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec(src, path, metaDef, id) { const srcMap = $m_Lio_kaitai_struct_format_ParseUtils$().asMapStr__O__sci_List__sci_Map(src, path); const x1 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(srcMap, "value", path); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const value = x2.value$2; $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(srcMap, this.LEGAL$undKEYS$undVALUE$undINST$1, path, new $c_s_Some().init___O("value instance")); const x1$2 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "enum", path); const x = $m_s_None$(); let value2; if ((x === x1$2)) { value2 = value } else { if ((!(x1$2 instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(x1$2) }; const x2$2 = x1$2; const enumName = x2$2.value$2; value2 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById().init___Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$typeId(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(enumName), value, $m_Lio_kaitai_struct_exprlang_Ast$().EmptyTypeId$1) }; const ifExpr = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(srcMap, "if", path); return new $c_Lio_kaitai_struct_format_ValueInstanceSpec().init___Lio_kaitai_struct_format_InstanceIdentifier__sci_List__Lio_kaitai_struct_format_DocSpec__Lio_kaitai_struct_exprlang_Ast$expr__s_Option__s_Option(id, path, $m_Lio_kaitai_struct_format_DocSpec$().fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_DocSpec(srcMap, path), value2, ifExpr, $m_s_None$()) } else { const x$3 = $m_s_None$(); if ((x$3 === x1)) { const pos = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(srcMap, "pos", path); const io = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(srcMap, "io", path); const p = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(key$2) { const key = key$2; return ((key !== "pos") && (key !== "io")) }) })(this)); const fakeAttrMap = new $c_sci_MapLike$$anon$1().init___sci_MapLike__F1(srcMap, p); const a = $m_Lio_kaitai_struct_format_AttrSpec$().fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrSpec(fakeAttrMap, path, metaDef, id); const this$2 = srcMap.get__O__s_Option("valid"); let valid; if (this$2.isEmpty__Z()) { valid = $m_s_None$() } else { const arg1 = this$2.get__O(); const jsx$2 = $m_Lio_kaitai_struct_format_ValidationSpec$(); $m_sci_List$(); const array = ["valid"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$6 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$6); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$7 = $m_sci_List$(); valid = new $c_s_Some().init___O(jsx$2.fromYaml__O__sci_List__Lio_kaitai_struct_format_ValidationSpec(arg1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$7.ReusableCBFInstance$2))) }; return new $c_Lio_kaitai_struct_format_ParseInstanceSpec().init___Lio_kaitai_struct_format_InstanceIdentifier__sci_List__Lio_kaitai_struct_format_DocSpec__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__s_Option__s_Option(id, path, a.doc$1, a.dataType$1, a.cond$1, pos, io, valid) } else { throw new $c_s_MatchError().init___O(x1) } } }; } const $d_Lio_kaitai_struct_format_InstanceSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_InstanceSpec$: 0 }, false, "io.kaitai.struct.format.InstanceSpec$", { Lio_kaitai_struct_format_InstanceSpec$: 1, O: 1 }); $c_Lio_kaitai_struct_format_InstanceSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_InstanceSpec$; let $n_Lio_kaitai_struct_format_InstanceSpec$ = (void 0); const $m_Lio_kaitai_struct_format_InstanceSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_InstanceSpec$)) { $n_Lio_kaitai_struct_format_InstanceSpec$ = new $c_Lio_kaitai_struct_format_InstanceSpec$().init___() }; return $n_Lio_kaitai_struct_format_InstanceSpec$ }); class $c_Lio_kaitai_struct_format_JavaScriptKSYParser$ extends $c_O { init___() { return this }; yamlJavascriptToScala__O__O(src) { if ((!(!(src instanceof $g.Array)))) { let i = (((-1) + (src.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$2 = result; const index = i; const x = src[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$2); i = (((-1) + i) | 0) }; const this$4 = result; const f = (function($this) { return (function(src$2$2) { return $m_Lio_kaitai_struct_format_JavaScriptKSYParser$().yamlJavascriptToScala__O__O(src$2$2) }) })(this); const this$3 = $m_sci_List$(); const bf = this$3.ReusableCBFInstance$2; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$4 === $m_sci_Nil$())) { return $m_sci_Nil$() } else { const arg1 = this$4.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$4.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$5 = rest; rest = this$5.tail__sci_List() }; return h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$4, bf); let these = this$4; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$6 = these; these = this$6.tail__sci_List() }; return b.result__O() } } else if (($is_T(src) || ($isInt(src) || (((typeof src) === "number") || ((typeof src) === "boolean"))))) { return src } else { $m_sci_Map$(); const b$1 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); const this$9 = new $c_sjs_js_WrappedDictionary$DictionaryIterator().init___sjs_js_Dictionary(src); while (this$9.hasNext__Z()) { const arg1$3 = this$9.next__T2(); b$1.$$plus$eq__T2__scm_MapBuilder(arg1$3) }; const this$10 = b$1.elems$1; const f$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(src$3$2) { return $m_Lio_kaitai_struct_format_JavaScriptKSYParser$().yamlJavascriptToScala__O__O(src$3$2) }) })(this)); return new $c_sci_MapLike$$anon$2().init___sci_MapLike__F1(this$10, f$1) } }; yamlToSpecs__O__Lio_kaitai_struct_JavaScriptImporter__Lio_kaitai_struct_RuntimeConfig__s_concurrent_Future(yaml, importer, config) { const yamlScala = this.yamlJavascriptToScala__O__O(yaml); const this$1 = $m_Lio_kaitai_struct_format_ClassSpec$(); const fileName = $m_s_None$(); const firstSpec = this$1.fromYaml__O__s_Option__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_ClassSpec(yamlScala, fileName, $m_sci_Nil$(), $m_Lio_kaitai_struct_format_MetaSpec$().OPAQUE$1); const specs = new $c_Lio_kaitai_struct_format_JavaScriptClassSpecs().init___Lio_kaitai_struct_JavaScriptImporter__Lio_kaitai_struct_format_ClassSpec(importer, firstSpec); return $m_Lio_kaitai_struct_Main$().importAndPrecompile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_RuntimeConfig__s_concurrent_Future(specs, config).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, specs$1) { return (function(x$1$2) { return specs$1 }) })(this, specs)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()) }; } const $d_Lio_kaitai_struct_format_JavaScriptKSYParser$ = new $TypeData().initClass({ Lio_kaitai_struct_format_JavaScriptKSYParser$: 0 }, false, "io.kaitai.struct.format.JavaScriptKSYParser$", { Lio_kaitai_struct_format_JavaScriptKSYParser$: 1, O: 1 }); $c_Lio_kaitai_struct_format_JavaScriptKSYParser$.prototype.$classData = $d_Lio_kaitai_struct_format_JavaScriptKSYParser$; let $n_Lio_kaitai_struct_format_JavaScriptKSYParser$ = (void 0); const $m_Lio_kaitai_struct_format_JavaScriptKSYParser$ = (function() { if ((!$n_Lio_kaitai_struct_format_JavaScriptKSYParser$)) { $n_Lio_kaitai_struct_format_JavaScriptKSYParser$ = new $c_Lio_kaitai_struct_format_JavaScriptKSYParser$().init___() }; return $n_Lio_kaitai_struct_format_JavaScriptKSYParser$ }); const $is_Lio_kaitai_struct_format_MemberSpec = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_format_MemberSpec))) }); const $isArrayOf_Lio_kaitai_struct_format_MemberSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_MemberSpec))) }); class $c_Lio_kaitai_struct_format_ParseUtils$ extends $c_O { init___() { return this }; anyMapToStrStrMap__sci_Map__sci_List__sci_Map(anyMap, path) { const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, path$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const key = x0$1.$$und1__O(); const value = x0$1.$$und2__O(); const keyStr = $m_Lio_kaitai_struct_format_ParseUtils$().asStr__O__sci_List__T(key, path$1); const jsx$2 = $m_Lio_kaitai_struct_format_ParseUtils$(); $m_sci_List$(); const array = [keyStr]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); const valueStr = jsx$2.asStr__O__sci_List__T(value, path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)); return new $c_T2().init___O__O(keyStr, valueStr) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path)); const bf = $m_sci_Map$().ReusableCBF$4; return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(anyMap, f, bf) }; getValueExpression__sci_Map__T__sci_List__Lio_kaitai_struct_exprlang_Ast$expr(src, field, path) { try { const this$1 = $m_Lio_kaitai_struct_exprlang_Expressions$(); const src$1 = this.getValueStr__sci_Map__T__sci_List__T(src, field, path); return this$1.realParse__p1__T__Lfastparse_core_Parser__O(src$1, this$1.topExpr$1) } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_exprlang_Expressions$ParseException)) { const epe = e; throw $m_Lio_kaitai_struct_problems_KSYParseError$().expression__Lio_kaitai_struct_exprlang_Expressions$ParseException__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(epe, path) } else { throw e } } }; asMap__O__sci_List__sci_Map(src, path) { if ($is_sci_Map(src)) { const x2 = src; return x2 } else { throw $m_Lio_kaitai_struct_problems_KSYParseError$().badType__T__O__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("map", src, path) } }; getOptValueExpression__sci_Map__T__sci_List__s_Option(src, field, path) { try { const this$1 = this.getOptValueStr__sci_Map__T__sci_List__s_Option(src, field, path); if (this$1.isEmpty__Z()) { return $m_s_None$() } else { const arg1 = this$1.get__O(); const src$2 = arg1; const this$2 = $m_Lio_kaitai_struct_exprlang_Expressions$(); return new $c_s_Some().init___O(this$2.realParse__p1__T__Lfastparse_core_Parser__O(src$2, this$2.topExpr$1)) } } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_exprlang_Expressions$ParseException)) { const epe = e; throw $m_Lio_kaitai_struct_problems_KSYParseError$().expression__Lio_kaitai_struct_exprlang_Expressions$ParseException__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(epe, path) } else { throw e } } }; getOptValueInt__sci_Map__T__sci_List__s_Option(src, field, path) { const x1 = src.get__O__s_Option(field); const x = $m_s_None$(); if ((x === x1)) { return $m_s_None$() }; if ((x1 instanceof $c_s_Some)) { const x2 = x1; const value = x2.value$2; if ($isInt(value)) { const x4 = (value | 0); return new $c_s_Some().init___O(x4) } }; const jsx$2 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array = [field]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); throw jsx$2.badType__T__O__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("int", x1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)) }; ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(src, legalKeys, path, where) { src.keySet__sci_Set().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, legalKeys$1, where$1, path$1) { return (function(key$2) { const key = key$2; if (((!(((key.length | 0) >= 0) && (key.substring(0, ("-".length | 0)) === "-"))) && (!legalKeys$1.contains__O__Z(key)))) { let msg; if ((where$1 instanceof $c_s_Some)) { const x2 = where$1; const ctx = x2.value$2; msg = (("invalid key found in " + ctx) + ", allowed") } else { const x = $m_s_None$(); if ((!(x === where$1))) { throw new $c_s_MatchError().init___O(where$1) }; msg = "unknown key found, expected" }; const jsx$3 = $m_Lio_kaitai_struct_problems_KSYParseError$(); const this$6 = $m_sci_List$(); const cbf = this$6.ReusableCBFInstance$2; const this$7 = $f_sc_TraversableLike__to__scg_CanBuildFrom__O(legalKeys$1, cbf); const ord = $m_s_math_Ordering$String$(); const jsx$2 = $f_sc_SeqLike__sorted__s_math_Ordering__O(this$7, ord).mkString__T__T(", "); $m_sci_List$(); const array = [key]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$11 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$11); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$12 = $m_sci_List$(); throw jsx$3.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(((msg + ": ") + jsx$2), path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$12.ReusableCBFInstance$2)) } }) })(this, legalKeys, where, path))) }; getOptValueBool__sci_Map__T__sci_List__s_Option(src, field, path) { const x1 = src.get__O__s_Option(field); const x = $m_s_None$(); if ((x === x1)) { return $m_s_None$() }; if ((x1 instanceof $c_s_Some)) { const x2 = x1; const value = x2.value$2; if (((typeof value) === "boolean")) { const x4 = (!(!value)); return new $c_s_Some().init___O(x4) } }; const jsx$2 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array = [field]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); throw jsx$2.badType__T__O__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("boolean", x1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)) }; getList__sci_Map__T__F2__sci_List__sci_List(src, field, convertFunc, path) { $m_sci_List$(); const array = [field]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); const pathField = path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2); let rc8 = false; let x2 = null; const x1 = src.get__O__s_Option(field); if ((x1 instanceof $c_s_Some)) { rc8 = true; x2 = x1; const srcList = x2.value$2; if ((srcList instanceof $c_sci_List)) { const x4 = srcList; const this$6 = $m_sci_List$(); const bf = this$6.ReusableCBFInstance$2; const this$14 = $f_sc_IterableLike__zipWithIndex__scg_CanBuildFrom__O(x4, bf); const f = (function($this, convertFunc$1, pathField$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const element = x0$1.$$und1__O(); const idx = x0$1.$$und2$mcI$sp__I(); $m_sci_List$(); const array$1 = [("" + idx)]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$11 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$11); i$1 = (((-1) + i$1) | 0) }; const jsx$2 = result$1; const this$12 = $m_sci_List$(); return convertFunc$1.apply__O__O__O(element, pathField$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$12.ReusableCBFInstance$2)) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, convertFunc, pathField); const this$13 = $m_sci_List$(); const bf$1 = this$13.ReusableCBFInstance$2; if ((bf$1 === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$14 === $m_sci_Nil$())) { return $m_sci_Nil$() } else { const arg1 = this$14.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$14.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$15 = rest; rest = this$15.tail__sci_List() }; return h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$14, bf$1); let these = this$14; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$16 = these; these = this$16.tail__sci_List() }; return b.result__O() } } }; if (rc8) { const singleObject = x2.value$2; if ((singleObject !== null)) { $m_sci_List$(); const array$2 = [singleObject]; let i$2 = (((-1) + (array$2.length | 0)) | 0); let result$2 = $m_sci_Nil$(); while ((i$2 >= 0)) { const this$20 = result$2; const index$2 = i$2; const x$2 = array$2[index$2]; result$2 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$20); i$2 = (((-1) + i$2) | 0) }; return result$2 } }; const x$3 = $m_s_None$(); if ((x$3 === x1)) { return $m_sci_Nil$() }; throw $m_Lio_kaitai_struct_problems_KSYParseError$().badType__T__O__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("array", x1, pathField) }; asMapStrStr__O__sci_List__sci_Map(src, path) { return this.anyMapToStrStrMap__sci_Map__sci_List__sci_Map(this.asMap__O__sci_List__sci_Map(src, path), path) }; getValueStr__sci_Map__T__sci_List__T(src, field, path) { const x1 = src.get__O__s_Option(field); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const value = x2.value$2; $m_sci_List$(); const array = [field]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); return this.asStr__O__sci_List__T(value, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)) } else { const x$1 = $m_s_None$(); if ((x$1 === x1)) { const jsx$3 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array$1 = [field]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$9 = result$1; const index$1 = i$1; const x$2 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$9); i$1 = (((-1) + i$1) | 0) }; const jsx$2 = result$1; const this$10 = $m_sci_List$(); throw jsx$3.noKey__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$10.ReusableCBFInstance$2)) } else { throw new $c_s_MatchError().init___O(x1) } } }; getValueMapStrStr__sci_Map__T__sci_List__sci_Map(src, field, path) { const x1 = src.get__O__s_Option(field); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const value = x2.value$2; $m_sci_List$(); const array = [field]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); return this.asMapStrStr__O__sci_List__sci_Map(value, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)) } else { const x$1 = $m_s_None$(); if ((x$1 === x1)) { const jsx$3 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array$1 = [field]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$9 = result$1; const index$1 = i$1; const x$2 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$9); i$1 = (((-1) + i$1) | 0) }; const jsx$2 = result$1; const this$10 = $m_sci_List$(); throw jsx$3.noKey__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$10.ReusableCBFInstance$2)) } else { throw new $c_s_MatchError().init___O(x1) } } }; asLong__O__sci_List__J(src, path) { if ((src instanceof $c_sjsr_RuntimeLong)) { const t = $uJ(src); const lo = t.lo$2; const hi = t.hi$2; return new $c_sjsr_RuntimeLong().init___I__I(lo, hi) } else if ($isInt(src)) { const x3 = (src | 0); const hi$1 = (x3 >> 31); return new $c_sjsr_RuntimeLong().init___I__I(x3, hi$1) } else if ($is_T(src)) { const x4 = src; try { return $m_Lio_kaitai_struct_Utils$().strToLong__T__J(x4) } catch (e) { if ((e instanceof $c_s_MatchError)) { throw $m_Lio_kaitai_struct_problems_KSYParseError$().withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException((("unable to parse `" + x4) + "` as int"), path) } else { throw e } } } else { throw $m_Lio_kaitai_struct_problems_KSYParseError$().badType__T__O__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("int", src, path) } }; anyMapToStrMap__sci_Map__sci_List__sci_Map(anyMap, path) { const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, path$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const key = x0$1.$$und1__O(); const value = x0$1.$$und2__O(); const keyStr = $m_Lio_kaitai_struct_format_ParseUtils$().asStr__O__sci_List__T(key, path$1); return new $c_T2().init___O__O(keyStr, value) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path)); const bf = $m_sci_Map$().ReusableCBF$4; return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(anyMap, f, bf) }; asMapStr__O__sci_List__sci_Map(src, path) { return this.anyMapToStrMap__sci_Map__sci_List__sci_Map(this.asMap__O__sci_List__sci_Map(src, path), path) }; asExpression__O__sci_List__Lio_kaitai_struct_exprlang_Ast$expr(src, path) { try { const this$1 = $m_Lio_kaitai_struct_exprlang_Expressions$(); const src$1 = this.asStr__O__sci_List__T(src, path); return this$1.realParse__p1__T__Lfastparse_core_Parser__O(src$1, this$1.topExpr$1) } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_exprlang_Expressions$ParseException)) { const epe = e; throw $m_Lio_kaitai_struct_problems_KSYParseError$().expression__Lio_kaitai_struct_exprlang_Expressions$ParseException__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(epe, path) } else { throw e } } }; getOptValueStr__sci_Map__T__sci_List__s_Option(src, field, path) { const x1 = src.get__O__s_Option(field); const x = $m_s_None$(); if ((x === x1)) { return $m_s_None$() } else if ((x1 instanceof $c_s_Some)) { const x2 = x1; const value = x2.value$2; $m_sci_List$(); const array = [field]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); return new $c_s_Some().init___O(this.asStr__O__sci_List__T(value, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2))) } else { const jsx$3 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array$1 = [field]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$9 = result$1; const index$1 = i$1; const x$2 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$9); i$1 = (((-1) + i$1) | 0) }; const jsx$2 = result$1; const this$10 = $m_sci_List$(); throw jsx$3.badType__T__O__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("string", x1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$10.ReusableCBFInstance$2)) } }; getListStr__sci_Map__T__sci_List__sci_List(src, field, path) { return this.getList__sci_Map__T__F2__sci_List__sci_List(src, field, new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(src$2$2, path$2$2) { const path$2 = path$2$2; return $m_Lio_kaitai_struct_format_ParseUtils$().asStr__O__sci_List__T(src$2$2, path$2) }) })(this)), path) }; asStr__O__sci_List__T(src, path) { if ($is_T(src)) { const x2 = src; return x2 } else if ($isInt(src)) { const x3 = (src | 0); return ("" + x3) } else if ((src instanceof $c_sjsr_RuntimeLong)) { const t = $uJ(src); const lo = t.lo$2; const hi = t.hi$2; return $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toString__I__I__T(lo, hi) } else if (((typeof src) === "number")) { const x5 = (+src); return ("" + x5) } else if (((typeof src) === "boolean")) { const x6 = (!(!src)); return ("" + x6) } else { throw $m_Lio_kaitai_struct_problems_KSYParseError$().badType__T__O__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("string", src, path) } }; getValueIdentifier__sci_Map__I__T__sci_List__Lio_kaitai_struct_format_Identifier(src, idx, entityName, path) { const x1 = this.getOptValueStr__sci_Map__T__sci_List__s_Option(src, "id", path); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const idStr = x2.value$2; try { return new $c_Lio_kaitai_struct_format_NamedIdentifier().init___T(idStr) } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_format_InvalidIdentifier)) { const jsx$2 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array = ["id"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); throw jsx$2.invalidId__T__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(idStr, entityName, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)) } else { throw e } } } else { const x$1 = $m_s_None$(); if ((x$1 === x1)) { return new $c_Lio_kaitai_struct_format_NumberedIdentifier().init___I(idx) } else { throw new $c_s_MatchError().init___O(x1) } } }; } const $d_Lio_kaitai_struct_format_ParseUtils$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ParseUtils$: 0 }, false, "io.kaitai.struct.format.ParseUtils$", { Lio_kaitai_struct_format_ParseUtils$: 1, O: 1 }); $c_Lio_kaitai_struct_format_ParseUtils$.prototype.$classData = $d_Lio_kaitai_struct_format_ParseUtils$; let $n_Lio_kaitai_struct_format_ParseUtils$ = (void 0); const $m_Lio_kaitai_struct_format_ParseUtils$ = (function() { if ((!$n_Lio_kaitai_struct_format_ParseUtils$)) { $n_Lio_kaitai_struct_format_ParseUtils$ = new $c_Lio_kaitai_struct_format_ParseUtils$().init___() }; return $n_Lio_kaitai_struct_format_ParseUtils$ }); class $c_Lio_kaitai_struct_format_ProcessExpr$ extends $c_O { constructor() { super(); this.ReXor$1 = null; this.ReRotate$1 = null; this.ReCustom$1 = null; this.ReCustomNoArg$1 = null }; init___() { $n_Lio_kaitai_struct_format_ProcessExpr$ = this; const this$2 = new $c_sci_StringOps().init___T("^xor\\(\\s*(.*?)\\s*\\)$"); const groupNames = $m_sci_Nil$(); const $$this = this$2.repr$1; this.ReXor$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this, groupNames); const this$5 = new $c_sci_StringOps().init___T("^ro(l|r)\\(\\s*(.*?)\\s*\\)$"); const groupNames$1 = $m_sci_Nil$(); const $$this$1 = this$5.repr$1; this.ReRotate$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this$1, groupNames$1); const this$8 = new $c_sci_StringOps().init___T("^([a-z][a-z0-9_.]*)\\(\\s*(.*?)\\s*\\)$"); const groupNames$2 = $m_sci_Nil$(); const $$this$2 = this$8.repr$1; this.ReCustom$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this$2, groupNames$2); const this$11 = new $c_sci_StringOps().init___T("^([a-z][a-z0-9_.]*)$"); const groupNames$3 = $m_sci_Nil$(); const $$this$3 = this$11.repr$1; this.ReCustomNoArg$1 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this$3, groupNames$3); return this }; fromStr__s_Option__sci_List__s_Option(s, path) { const x = $m_s_None$(); if ((x === s)) { return $m_s_None$() } else if ((s instanceof $c_s_Some)) { const x2 = s; const op = x2.value$2; try { let jsx$1; matchEnd8: { if ((op === "zlib")) { jsx$1 = $m_Lio_kaitai_struct_format_ProcessZlib$(); break matchEnd8 }; const o12 = this.ReXor$1.unapplySeq__jl_CharSequence__s_Option(op); let jsx$2; if ((!o12.isEmpty__Z())) { if ((o12.get__O() !== null)) { const this$1 = o12.get__O(); jsx$2 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$1, 1) === 0) } else { jsx$2 = false } } else { jsx$2 = false }; if (jsx$2) { const this$2 = o12.get__O(); const arg = $f_sc_LinearSeqOptimized__apply__I__O(this$2, 0); const this$3 = $m_Lio_kaitai_struct_exprlang_Expressions$(); jsx$1 = new $c_Lio_kaitai_struct_format_ProcessXor().init___Lio_kaitai_struct_exprlang_Ast$expr(this$3.realParse__p1__T__Lfastparse_core_Parser__O(arg, this$3.topExpr$1)); break matchEnd8 }; const o14 = this.ReRotate$1.unapplySeq__jl_CharSequence__s_Option(op); let jsx$3; if ((!o14.isEmpty__Z())) { if ((o14.get__O() !== null)) { const this$4 = o14.get__O(); jsx$3 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$4, 2) === 0) } else { jsx$3 = false } } else { jsx$3 = false }; if (jsx$3) { const this$5 = o14.get__O(); const dir = $f_sc_LinearSeqOptimized__apply__I__O(this$5, 0); const this$6 = o14.get__O(); const arg$2 = $f_sc_LinearSeqOptimized__apply__I__O(this$6, 1); const this$7 = $m_Lio_kaitai_struct_exprlang_Expressions$(); jsx$1 = new $c_Lio_kaitai_struct_format_ProcessRotate().init___Z__Lio_kaitai_struct_exprlang_Ast$expr((dir === "l"), this$7.realParse__p1__T__Lfastparse_core_Parser__O(arg$2, this$7.topExpr$1)); break matchEnd8 }; const o16 = this.ReCustom$1.unapplySeq__jl_CharSequence__s_Option(op); let jsx$4; if ((!o16.isEmpty__Z())) { if ((o16.get__O() !== null)) { const this$8 = o16.get__O(); jsx$4 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$8, 2) === 0) } else { jsx$4 = false } } else { jsx$4 = false }; if (jsx$4) { const this$9 = o16.get__O(); const name = $f_sc_LinearSeqOptimized__apply__I__O(this$9, 0); const this$10 = o16.get__O(); const args = $f_sc_LinearSeqOptimized__apply__I__O(this$10, 1); const this$12 = new $c_sci_StringOps().init___T(name); const xs = $f_sci_StringLike__split__C__AT(this$12, 46); let i = (((-1) + xs.u.length) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$16 = result; const index = i; const x$1 = xs.u[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$16); i = (((-1) + i) | 0) }; const jsx$5 = result; const this$17 = $m_Lio_kaitai_struct_exprlang_Expressions$(); jsx$1 = new $c_Lio_kaitai_struct_format_ProcessCustom().init___sci_List__sc_Seq(jsx$5, this$17.realParse__p1__T__Lfastparse_core_Parser__O(args, this$17.topExprList$1)); break matchEnd8 }; const o18 = this.ReCustomNoArg$1.unapplySeq__jl_CharSequence__s_Option(op); let jsx$6; if ((!o18.isEmpty__Z())) { if ((o18.get__O() !== null)) { const this$18 = o18.get__O(); jsx$6 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$18, 1) === 0) } else { jsx$6 = false } } else { jsx$6 = false }; if (jsx$6) { const this$19 = o18.get__O(); const name$2 = $f_sc_LinearSeqOptimized__apply__I__O(this$19, 0); const this$21 = new $c_sci_StringOps().init___T(name$2); const xs$1 = $f_sci_StringLike__split__C__AT(this$21, 46); let i$1 = (((-1) + xs$1.u.length) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$25 = result$1; const index$1 = i$1; const x$2 = xs$1.u[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$25); i$1 = (((-1) + i$1) | 0) }; jsx$1 = new $c_Lio_kaitai_struct_format_ProcessCustom().init___sci_List__sc_Seq(result$1, $m_sc_Seq$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$())); break matchEnd8 }; throw $m_Lio_kaitai_struct_problems_KSYParseError$().badProcess__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(op, path) }; return new $c_s_Some().init___O(jsx$1) } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_exprlang_Expressions$ParseException)) { const epe = e; throw $m_Lio_kaitai_struct_problems_KSYParseError$().expression__Lio_kaitai_struct_exprlang_Expressions$ParseException__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(epe, path) } else { throw e } } } else { throw new $c_s_MatchError().init___O(s) } }; } const $d_Lio_kaitai_struct_format_ProcessExpr$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ProcessExpr$: 0 }, false, "io.kaitai.struct.format.ProcessExpr$", { Lio_kaitai_struct_format_ProcessExpr$: 1, O: 1 }); $c_Lio_kaitai_struct_format_ProcessExpr$.prototype.$classData = $d_Lio_kaitai_struct_format_ProcessExpr$; let $n_Lio_kaitai_struct_format_ProcessExpr$ = (void 0); const $m_Lio_kaitai_struct_format_ProcessExpr$ = (function() { if ((!$n_Lio_kaitai_struct_format_ProcessExpr$)) { $n_Lio_kaitai_struct_format_ProcessExpr$ = new $c_Lio_kaitai_struct_format_ProcessExpr$().init___() }; return $n_Lio_kaitai_struct_format_ProcessExpr$ }); class $c_Lio_kaitai_struct_format_RepeatSpec$ extends $c_O { init___() { return this }; fromYaml__sci_Map__sci_List__T2(srcMap, path) { const repeat = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "repeat", path); const repeatExpr = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(srcMap, "repeat-expr", path); const repeatUntil = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(srcMap, "repeat-until", path); let rc14 = false; let x2 = null; const x = $m_s_None$(); if ((x === repeat)) { return new $c_T2().init___O__O($m_Lio_kaitai_struct_format_NoRepeat$(), $m_s_Predef$().Set$2.apply__sc_Seq__sc_GenTraversable($m_sci_Nil$())) }; if ((repeat instanceof $c_s_Some)) { rc14 = true; x2 = repeat; const p3 = x2.value$2; if ((p3 === "until")) { if ((!(repeatUntil instanceof $c_s_Some))) { const x$3 = $m_s_None$(); if ((x$3 === repeatUntil)) { const jsx$2 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array = ["repeat"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); throw jsx$2.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("`repeat: until` requires a `repeat-until` expression", path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)) }; throw new $c_s_MatchError().init___O(repeatUntil) }; const x2$2 = repeatUntil; const expr = x2$2.value$2; const spec = new $c_Lio_kaitai_struct_format_RepeatUntil().init___Lio_kaitai_struct_exprlang_Ast$expr(expr); const jsx$3 = $m_s_Predef$().Set$2; const array$1 = ["repeat-until"]; return new $c_T2().init___O__O(spec, jsx$3.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array$1))) } }; if (rc14) { const p5 = x2.value$2; if ((p5 === "expr")) { if ((!(repeatExpr instanceof $c_s_Some))) { const x$5 = $m_s_None$(); if ((x$5 === repeatExpr)) { const jsx$5 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array$2 = ["repeat"]; let i$1 = (((-1) + (array$2.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$11 = result$1; const index$1 = i$1; const x$2 = array$2[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$11); i$1 = (((-1) + i$1) | 0) }; const jsx$4 = result$1; const this$12 = $m_sci_List$(); throw jsx$5.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("`repeat: expr` requires a `repeat-expr` expression", path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$4, this$12.ReusableCBFInstance$2)) }; throw new $c_s_MatchError().init___O(repeatExpr) }; const x2$3 = repeatExpr; const expr$2 = x2$3.value$2; const spec$2 = new $c_Lio_kaitai_struct_format_RepeatExpr().init___Lio_kaitai_struct_exprlang_Ast$expr(expr$2); const jsx$6 = $m_s_Predef$().Set$2; const array$3 = ["repeat-expr"]; return new $c_T2().init___O__O(spec$2, jsx$6.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array$3))) } }; if (rc14) { const p7 = x2.value$2; if ((p7 === "eos")) { return new $c_T2().init___O__O($m_Lio_kaitai_struct_format_RepeatEos$(), $m_s_Predef$().Set$2.apply__sc_Seq__sc_GenTraversable($m_sci_Nil$())) } }; if (rc14) { const other = x2.value$2; const jsx$10 = $m_Lio_kaitai_struct_problems_KSYParseError$(); const jsx$9 = $m_s_Predef$().Set$2; const array$4 = ["until", "expr", "eos"]; const jsx$8 = jsx$9.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array$4)); $m_sci_List$(); const array$5 = ["repeat"]; let i$2 = (((-1) + (array$5.length | 0)) | 0); let result$2 = $m_sci_Nil$(); while ((i$2 >= 0)) { const this$20 = result$2; const index$2 = i$2; const x$4 = array$5[index$2]; result$2 = new $c_sci_$colon$colon().init___O__sci_List(x$4, this$20); i$2 = (((-1) + i$2) | 0) }; const jsx$7 = result$2; const this$21 = $m_sci_List$(); throw jsx$10.badDictValue__sci_Set__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(jsx$8, other, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$7, this$21.ReusableCBFInstance$2)) }; throw new $c_s_MatchError().init___O(repeat) }; } const $d_Lio_kaitai_struct_format_RepeatSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_RepeatSpec$: 0 }, false, "io.kaitai.struct.format.RepeatSpec$", { Lio_kaitai_struct_format_RepeatSpec$: 1, O: 1 }); $c_Lio_kaitai_struct_format_RepeatSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_RepeatSpec$; let $n_Lio_kaitai_struct_format_RepeatSpec$ = (void 0); const $m_Lio_kaitai_struct_format_RepeatSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_RepeatSpec$)) { $n_Lio_kaitai_struct_format_RepeatSpec$ = new $c_Lio_kaitai_struct_format_RepeatSpec$().init___() }; return $n_Lio_kaitai_struct_format_RepeatSpec$ }); class $c_Lio_kaitai_struct_format_ValidationSpec$ extends $c_O { constructor() { super(); this.LEGAL$undKEYS$1 = null }; init___() { $n_Lio_kaitai_struct_format_ValidationSpec$ = this; this.LEGAL$undKEYS$1 = $m_Lio_kaitai_struct_format_ValidationEq$().LEGAL$undKEYS$1.$$plus$plus__sc_GenTraversableOnce__sc_Set($m_Lio_kaitai_struct_format_ValidationRange$().LEGAL$undKEYS$1).$$plus$plus__sc_GenTraversableOnce__sc_Set($m_Lio_kaitai_struct_format_ValidationAnyOf$().LEGAL$undKEYS$1).$$plus$plus__sc_GenTraversableOnce__sc_Set($m_Lio_kaitai_struct_format_ValidationExpr$().LEGAL$undKEYS$1); return this }; fromYaml__O__sci_List__Lio_kaitai_struct_format_ValidationSpec(src, path) { if ($is_T(src)) { const x2 = src; return this.fromString__T__sci_List__Lio_kaitai_struct_format_ValidationSpec(x2, path) } else if (((typeof src) === "boolean")) { const x3 = (!(!src)); return this.fromString__T__sci_List__Lio_kaitai_struct_format_ValidationSpec(("" + x3), path) } else if ($isInt(src)) { const x4 = (src | 0); return this.fromString__T__sci_List__Lio_kaitai_struct_format_ValidationSpec(("" + x4), path) } else if ((src instanceof $c_sjsr_RuntimeLong)) { const t = $uJ(src); const lo = t.lo$2; const hi = t.hi$2; return this.fromString__T__sci_List__Lio_kaitai_struct_format_ValidationSpec($m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toString__I__I__T(lo, hi), path) } else if ($is_sci_Map(src)) { const x6 = src; return this.fromMap__sci_Map__sci_List__Lio_kaitai_struct_format_ValidationSpec($m_Lio_kaitai_struct_format_ParseUtils$().anyMapToStrMap__sci_Map__sci_List__sci_Map(x6, path), path) } else { throw $m_Lio_kaitai_struct_problems_KSYParseError$().badType__T__O__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("string or map", src, path) } }; fromString__T__sci_List__Lio_kaitai_struct_format_ValidationSpec(value, path) { const this$1 = $m_Lio_kaitai_struct_exprlang_Expressions$(); return new $c_Lio_kaitai_struct_format_ValidationEq().init___Lio_kaitai_struct_exprlang_Ast$expr(this$1.realParse__p1__T__Lfastparse_core_Parser__O(value, this$1.topExpr$1)) }; fromMap__sci_Map__sci_List__Lio_kaitai_struct_format_ValidationSpec(src, path) { const opt1 = $m_Lio_kaitai_struct_format_ValidationEq$().fromMap__sci_Map__sci_List__s_Option(src, path); if (opt1.isDefined__Z()) { return opt1.get__O() }; const opt2 = $m_Lio_kaitai_struct_format_ValidationRange$().fromMap__sci_Map__sci_List__s_Option(src, path); if (opt2.isDefined__Z()) { return opt2.get__O() }; const opt3 = $m_Lio_kaitai_struct_format_ValidationAnyOf$().fromMap__sci_Map__sci_List__s_Option(src, path); if (opt3.isDefined__Z()) { return opt3.get__O() }; const opt4 = $m_Lio_kaitai_struct_format_ValidationExpr$().fromMap__sci_Map__sci_List__s_Option(src, path); if (opt4.isDefined__Z()) { return opt4.get__O() }; $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(src, this.LEGAL$undKEYS$1, path, $m_s_None$()); throw $m_Lio_kaitai_struct_problems_KSYParseError$().noKeys__sci_List__sci_Set__Lio_kaitai_struct_problems_CompilationProblemException(path, this.LEGAL$undKEYS$1) }; } const $d_Lio_kaitai_struct_format_ValidationSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationSpec$: 0 }, false, "io.kaitai.struct.format.ValidationSpec$", { Lio_kaitai_struct_format_ValidationSpec$: 1, O: 1 }); $c_Lio_kaitai_struct_format_ValidationSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationSpec$; let $n_Lio_kaitai_struct_format_ValidationSpec$ = (void 0); const $m_Lio_kaitai_struct_format_ValidationSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_ValidationSpec$)) { $n_Lio_kaitai_struct_format_ValidationSpec$ = new $c_Lio_kaitai_struct_format_ValidationSpec$().init___() }; return $n_Lio_kaitai_struct_format_ValidationSpec$ }); const $f_Lio_kaitai_struct_languages_components_AllocateAndStoreIO__extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List = (function($thiz, id, rep) { const ioId = new $c_Lio_kaitai_struct_format_IoStorageIdentifier().init___Lio_kaitai_struct_format_Identifier(id); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); let ioType; if ((x === rep)) { ioType = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$() } else { ioType = new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType($m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$()) }; $m_sci_List$(); const array = [new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), ioId, ioType, ($m_Lio_kaitai_struct_format_AttrSpec$(), new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec($m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1))]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$7 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$7); i = (((-1) + i) | 0) }; return result }); const $is_Lio_kaitai_struct_languages_components_AllocateAndStoreIO = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_languages_components_AllocateAndStoreIO))) }); const $isArrayOf_Lio_kaitai_struct_languages_components_AllocateAndStoreIO = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_languages_components_AllocateAndStoreIO))) }); const $is_Lio_kaitai_struct_languages_components_AllocateIOLocalVar = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_languages_components_AllocateIOLocalVar))) }); const $isArrayOf_Lio_kaitai_struct_languages_components_AllocateIOLocalVar = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_languages_components_AllocateIOLocalVar))) }); class $c_Lio_kaitai_struct_languages_components_CppImportList extends $c_O { constructor() { super(); this.importList$1 = null }; init___() { this.importList$1 = new $c_Lio_kaitai_struct_ImportList().init___(); return this }; addLocal__T__V(fileName) { const this$1 = this.importList$1; const s = (("\"" + fileName) + "\""); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, s) }; addSystem__T__V(fileName) { const this$1 = this.importList$1; const s = (("<" + fileName) + ">"); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, s) }; result__T() { const this$1 = this.importList$1; const this$3 = this$1.list$1.toList__sci_List(); const f = (function($this) { return (function(x$2) { const x = x$2; return ("#include " + x) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = this$3.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$3.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$4 = rest; rest = this$4.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$3, bf); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$5 = these; these = this$5.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T__T__T("", "\n", "\n") }; } const $d_Lio_kaitai_struct_languages_components_CppImportList = new $TypeData().initClass({ Lio_kaitai_struct_languages_components_CppImportList: 0 }, false, "io.kaitai.struct.languages.components.CppImportList", { Lio_kaitai_struct_languages_components_CppImportList: 1, O: 1 }); $c_Lio_kaitai_struct_languages_components_CppImportList.prototype.$classData = $d_Lio_kaitai_struct_languages_components_CppImportList; class $c_Lio_kaitai_struct_languages_components_ExtraAttrs$ extends $c_O { init___() { return this }; forClassSpec__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_languages_components_ExtraAttrs__sci_List(curClass, compiler) { const jsx$2 = curClass.instances$1.values__sc_Iterable(); const jsx$1 = new $c_Lio_kaitai_struct_languages_components_ExtraAttrs$$anonfun$1().init___(); const this$1 = $m_sc_Iterable$(); const parseInstances = jsx$2.collect__s_PartialFunction__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2); const jsx$3 = curClass.seq$1; const this$2 = $m_sci_List$(); return jsx$3.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(parseInstances, this$2.ReusableCBFInstance$2).foldLeft__O__F2__O($m_sci_Nil$(), new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this, compiler$1) { return (function(attrs$2, attr$2) { const attrs = attrs$2; const attr = attr$2; const this$3 = $m_Lio_kaitai_struct_languages_components_ExtraAttrs$(); const jsx$4 = this$3.forAttr__p1__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__Lio_kaitai_struct_languages_components_ExtraAttrs__sc_Iterable(attr.id__Lio_kaitai_struct_format_Identifier(), attr.dataType__Lio_kaitai_struct_datatype_DataType(), attr.cond__Lio_kaitai_struct_format_ConditionalSpec(), compiler$1); const this$4 = $m_sci_List$(); return attrs.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$4, this$4.ReusableCBFInstance$2) }) })(this, compiler))) }; forAttr__p1__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__Lio_kaitai_struct_languages_components_ExtraAttrs__sc_Iterable(id, dataType, condSpec, compiler) { if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { const x2 = dataType; const x1$2 = x2.process__s_Option(); const x = $m_s_None$(); if ((x === x1$2)) { return $m_sci_Nil$() } else if ((x1$2 instanceof $c_s_Some)) { const rawId = new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id); $m_sci_List$(); const array = [new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), rawId, x2, condSpec, ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1))]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$6 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$6); i = (((-1) + i) | 0) }; const jsx$2 = result; const jsx$1 = compiler.extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, condSpec.repeat$1); const this$7 = $m_sci_List$(); return jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$7.ReusableCBFInstance$2) } else { throw new $c_s_MatchError().init___O(x1$2) } } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { const x3 = dataType; const rawId$2 = new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id); $m_sci_List$(); const array$1 = [new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), rawId$2, x3.bytes$4, condSpec, ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1))]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$13 = result$1; const index$1 = i$1; const x$2 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$13); i$1 = (((-1) + i$1) | 0) }; const jsx$6 = result$1; const jsx$5 = compiler.extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(rawId$2, condSpec.repeat$1); const this$14 = $m_sci_List$(); const jsx$4 = jsx$6.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$5, this$14.ReusableCBFInstance$2); const jsx$3 = this.forAttr__p1__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__Lio_kaitai_struct_languages_components_ExtraAttrs__sc_Iterable(rawId$2, x3.bytes$4, condSpec, compiler); const this$15 = $m_sci_List$(); const this$16 = jsx$4.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$3, this$15.ReusableCBFInstance$2); return $f_sc_SeqLike__distinct__O(this$16) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x4 = dataType; const this$18 = x4.cases$2; const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, id$1, condSpec$1, compiler$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const caseType = x0$1.$$und2__O(); return $m_Lio_kaitai_struct_languages_components_ExtraAttrs$().forAttr__p1__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__Lio_kaitai_struct_languages_components_ExtraAttrs__sc_Iterable(id$1, caseType, condSpec$1, compiler$1) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, id, condSpec, compiler)); const this$17 = $m_sci_Iterable$(); const bf = this$17.ReusableCBFInstance$2; const this$19 = $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this$18, f, bf).toList__sci_List(); return $f_sc_SeqLike__distinct__O(this$19) } else { return $m_sci_Nil$() } }; } const $d_Lio_kaitai_struct_languages_components_ExtraAttrs$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_components_ExtraAttrs$: 0 }, false, "io.kaitai.struct.languages.components.ExtraAttrs$", { Lio_kaitai_struct_languages_components_ExtraAttrs$: 1, O: 1 }); $c_Lio_kaitai_struct_languages_components_ExtraAttrs$.prototype.$classData = $d_Lio_kaitai_struct_languages_components_ExtraAttrs$; let $n_Lio_kaitai_struct_languages_components_ExtraAttrs$ = (void 0); const $m_Lio_kaitai_struct_languages_components_ExtraAttrs$ = (function() { if ((!$n_Lio_kaitai_struct_languages_components_ExtraAttrs$)) { $n_Lio_kaitai_struct_languages_components_ExtraAttrs$ = new $c_Lio_kaitai_struct_languages_components_ExtraAttrs$().init___() }; return $n_Lio_kaitai_struct_languages_components_ExtraAttrs$ }); const $f_Lio_kaitai_struct_languages_components_GoSwitchOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V = (function($thiz, id, on, cases, normalCaseProc, elseCaseProc) { const onType = $thiz.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(on); const x1 = $thiz.switchShouldUseCompareFn__Lio_kaitai_struct_datatype_DataType__T2(onType); matchEnd9: { if ((x1 !== null)) { const p2 = x1.$$und1__O(); const compareFnCallback = x1.$$und2__O(); if ((p2 instanceof $c_s_Some)) { const x3 = p2; const compareFn = x3.value$2; if ((compareFn !== null)) { $f_Lio_kaitai_struct_languages_components_GoSwitchOps__switchCasesUsingCompareFn__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__T__F0__sci_Map__F1__F1__V($thiz, id, on, compareFn, compareFnCallback, cases, normalCaseProc, elseCaseProc); break matchEnd9 } } }; if ((x1 !== null)) { const p4 = x1.$$und1__O(); const x = $m_s_None$(); if ((x === p4)) { $f_Lio_kaitai_struct_languages_components_SwitchOps__switchCasesRender__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V($thiz, id, on, cases, normalCaseProc, elseCaseProc); break matchEnd9 } }; throw new $c_s_MatchError().init___O(x1) } }); const $f_Lio_kaitai_struct_languages_components_GoSwitchOps__switchCasesUsingCompareFn__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__T__F0__sci_Map__F1__F1__V = (function($thiz, id, on, compareFn, compareFnCallback, cases, normalCaseProc, elseCaseProc) { $thiz.switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, new $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool().init___Z(true)); cases.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, compareFnCallback$1, compareFn$1, on$1, normalCaseProc$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const condition = x0$1.$$und1__O(); const result = x0$1.$$und2__O(); const x = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; if (((x === null) ? (condition === null) : x.equals__O__Z(condition))) { /**/ } else { compareFnCallback$1.apply__O(); $this.switchCaseStartCompareFn__T__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(compareFn$1, on$1, condition); normalCaseProc$1.apply__O__O(result); $this.out$2.dec__V() } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })($thiz, compareFnCallback, compareFn, on, normalCaseProc))); const this$1 = cases.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); if ((!this$1.isEmpty__Z())) { const arg1 = this$1.get__O(); $thiz.switchElseStart__V(); elseCaseProc.apply__O__O(arg1); $thiz.out$2.dec__V() }; $thiz.out$2.puts__T__V("}") }); class $c_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$ extends $c_O { constructor() { super(); this.NAME$undTO$undCLASS$1 = null; this.CLASS$undTO$undNAME$1 = null }; init___() { $n_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$ = this; const y = $m_Lio_kaitai_struct_ConstructClassCompiler$(); const jsx$14 = new $c_T2().init___O__O("construct", y); const y$1 = $m_Lio_kaitai_struct_languages_CppCompiler$(); const jsx$13 = new $c_T2().init___O__O("cpp_stl", y$1); const y$2 = $m_Lio_kaitai_struct_languages_CSharpCompiler$(); const jsx$12 = new $c_T2().init___O__O("csharp", y$2); const y$3 = $m_Lio_kaitai_struct_GraphvizClassCompiler$(); const jsx$11 = new $c_T2().init___O__O("graphviz", y$3); const y$4 = $m_Lio_kaitai_struct_languages_GoCompiler$(); const jsx$10 = new $c_T2().init___O__O("go", y$4); const y$5 = $m_Lio_kaitai_struct_HtmlClassCompiler$(); const jsx$9 = new $c_T2().init___O__O("html", y$5); const y$6 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); const jsx$8 = new $c_T2().init___O__O("java", y$6); const y$7 = $m_Lio_kaitai_struct_languages_JavaScriptCompiler$(); const jsx$7 = new $c_T2().init___O__O("javascript", y$7); const y$8 = $m_Lio_kaitai_struct_languages_LuaCompiler$(); const jsx$6 = new $c_T2().init___O__O("lua", y$8); const y$9 = $m_Lio_kaitai_struct_languages_NimCompiler$(); const jsx$5 = new $c_T2().init___O__O("nim", y$9); const y$10 = $m_Lio_kaitai_struct_languages_PerlCompiler$(); const jsx$4 = new $c_T2().init___O__O("perl", y$10); const y$11 = $m_Lio_kaitai_struct_languages_PHPCompiler$(); const jsx$3 = new $c_T2().init___O__O("php", y$11); const y$12 = $m_Lio_kaitai_struct_languages_PythonCompiler$(); const jsx$2 = new $c_T2().init___O__O("python", y$12); const y$13 = $m_Lio_kaitai_struct_languages_RubyCompiler$(); const jsx$1 = new $c_T2().init___O__O("ruby", y$13); const y$14 = $m_Lio_kaitai_struct_languages_RustCompiler$(); const array = [jsx$14, jsx$13, jsx$12, jsx$11, jsx$10, jsx$9, jsx$8, jsx$7, jsx$6, jsx$5, jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O("rust", y$14)]; const this$34 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$34.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.NAME$undTO$undCLASS$1 = this$34.elems$1; const this$35 = this.NAME$undTO$undCLASS$1; const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$1$2) { const x$1 = x$1$2; return x$1.swap__T2() }) })(this)); const bf = $m_sci_Map$().ReusableCBF$4; this.CLASS$undTO$undNAME$1 = $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this$35, f, bf); return this }; } const $d_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_components_LanguageCompilerStatic$: 0 }, false, "io.kaitai.struct.languages.components.LanguageCompilerStatic$", { Lio_kaitai_struct_languages_components_LanguageCompilerStatic$: 1, O: 1 }); $c_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$.prototype.$classData = $d_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$; let $n_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$ = (void 0); const $m_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$ = (function() { if ((!$n_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$)) { $n_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$ = new $c_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$().init___() }; return $n_Lio_kaitai_struct_languages_components_LanguageCompilerStatic$ }); const $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V = (function($thiz, id, on, onType, cases, normalCaseProc, elseCaseProc) { const someNormalCases = (cases.filter__F1__O(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const caseExpr = x0$1.$$und1__O(); const x$2 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; return (!((caseExpr === null) ? (x$2 === null) : caseExpr.equals__O__Z(x$2))) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })($thiz))).size__I() > 0); if (someNormalCases) { $thiz.switchIfStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__V(id, on, onType); const first = new $c_sr_BooleanRef().init___Z(true); cases.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2, first$1, normalCaseProc$1) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const condition = x0$2.$$und1__O(); const result = x0$2.$$und2__O(); const x = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; if (((x === null) ? (condition === null) : x.equals__O__Z(condition))) { /**/ } else { if (first$1.elem$1) { this$2.switchIfCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition); first$1.elem$1 = false } else { this$2.switchIfCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) }; normalCaseProc$1.apply__O__O(result); this$2.switchIfCaseEnd__V() } } else { throw new $c_s_MatchError().init___O(x0$2) } }) })($thiz, first, normalCaseProc))); const this$3 = cases.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); if ((!this$3.isEmpty__Z())) { const arg1 = this$3.get__O(); $thiz.switchIfElseStart__V(); elseCaseProc.apply__O__O(arg1); $thiz.switchIfCaseEnd__V() }; $thiz.switchIfEnd__V() } else { const this$4 = cases.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); if ((!this$4.isEmpty__Z())) { const arg1$1 = this$4.get__O(); elseCaseProc.apply__O__O(arg1$1) } } }); const $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V = (function($thiz, id, on, cases, normalCaseProc, elseCaseProc) { const onType = $thiz.translator__Lio_kaitai_struct_translators_BaseTranslator().detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(on); $thiz.typeProvider$1.$$undcurrentSwitchType$1 = new $c_s_Some().init___O(onType); const switchIfs = $thiz.switchRequiresIfs__Lio_kaitai_struct_datatype_DataType__Z(onType); if (switchIfs) { $thiz.switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(id, on, onType, cases, normalCaseProc, elseCaseProc) } else { $thiz.switchCasesRender__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) } }); const $f_Lio_kaitai_struct_languages_components_ValidateOps__attrValidateExprCompare__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__V = (function($thiz, attrId, attr, op, expected, err) { const jsx$4 = $f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr); const jsx$3 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr(new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(attrId.humanReadable__T())), op, expected); $m_sci_List$(); const jsx$2 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(attrId.humanReadable__T())); const this$1 = $m_Lio_kaitai_struct_format_IoIdentifier$(); const jsx$1 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(this$1.name$2)); const this$2 = attr.path__sci_List(); const array = [expected, jsx$2, jsx$1, new $c_Lio_kaitai_struct_exprlang_Ast$expr$Str().init___T($f_sc_TraversableOnce__mkString__T__T__T__T(this$2, "/", "/", ""))]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$6 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$6); i = (((-1) + i) | 0) }; $thiz.attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, jsx$4, jsx$3, err, result) }); const $f_Lio_kaitai_struct_languages_components_ValidateOps__attrValidate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_ValidationSpec__V = (function($thiz, attrId, attr, valid) { if ((valid instanceof $c_Lio_kaitai_struct_format_ValidationEq)) { const x2 = valid; const expected = x2.value$1; const op = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(); const err = new $c_Lio_kaitai_struct_datatype_ValidationNotEqualError().init___Lio_kaitai_struct_datatype_DataType($f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr)); $f_Lio_kaitai_struct_languages_components_ValidateOps__attrValidateExprCompare__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__V($thiz, attrId, attr, op, expected, err) } else if ((valid instanceof $c_Lio_kaitai_struct_format_ValidationMin)) { const x3 = valid; const min = x3.min$1; const op$1 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$(); const err$1 = new $c_Lio_kaitai_struct_datatype_ValidationLessThanError().init___Lio_kaitai_struct_datatype_DataType($f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr)); $f_Lio_kaitai_struct_languages_components_ValidateOps__attrValidateExprCompare__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__V($thiz, attrId, attr, op$1, min, err$1) } else if ((valid instanceof $c_Lio_kaitai_struct_format_ValidationMax)) { const x4 = valid; const max = x4.max$1; const op$2 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$(); const err$2 = new $c_Lio_kaitai_struct_datatype_ValidationGreaterThanError().init___Lio_kaitai_struct_datatype_DataType($f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr)); $f_Lio_kaitai_struct_languages_components_ValidateOps__attrValidateExprCompare__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__V($thiz, attrId, attr, op$2, max, err$2) } else if ((valid instanceof $c_Lio_kaitai_struct_format_ValidationRange)) { const x5 = valid; const min$2 = x5.min$1; const max$2 = x5.max$1; const op$3 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$(); const err$3 = new $c_Lio_kaitai_struct_datatype_ValidationLessThanError().init___Lio_kaitai_struct_datatype_DataType($f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr)); $f_Lio_kaitai_struct_languages_components_ValidateOps__attrValidateExprCompare__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__V($thiz, attrId, attr, op$3, min$2, err$3); const op$4 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$(); const err$4 = new $c_Lio_kaitai_struct_datatype_ValidationGreaterThanError().init___Lio_kaitai_struct_datatype_DataType($f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr)); $f_Lio_kaitai_struct_languages_components_ValidateOps__attrValidateExprCompare__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__V($thiz, attrId, attr, op$4, max$2, err$4) } else if ((valid instanceof $c_Lio_kaitai_struct_format_ValidationAnyOf)) { const x6 = valid; const values = x6.values$1; const jsx$2 = $m_Lio_kaitai_struct_exprlang_Ast$boolop$Or$(); const f = (function($this, attrId$1) { return (function(expected$2$2) { const expected$2 = expected$2$2; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr(new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(attrId$1.humanReadable__T())), $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(), expected$2) }) })($thiz, attrId); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((values === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = values.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = values.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(values, bf); let these = values; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const bigOrExpr = new $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp().init___Lio_kaitai_struct_exprlang_Ast$boolop__sc_Seq(jsx$2, jsx$1); const jsx$6 = $f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr); const jsx$5 = new $c_Lio_kaitai_struct_datatype_ValidationNotAnyOfError().init___Lio_kaitai_struct_datatype_DataType($f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr)); $m_sci_List$(); const jsx$4 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(attrId.humanReadable__T())); const this$4 = $m_Lio_kaitai_struct_format_IoIdentifier$(); const jsx$3 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(this$4.name$2)); const this$5 = attr.path__sci_List(); const array = [jsx$4, jsx$3, new $c_Lio_kaitai_struct_exprlang_Ast$expr$Str().init___T($f_sc_TraversableOnce__mkString__T__T__T__T(this$5, "/", "/", ""))]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$9 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$9); i = (((-1) + i) | 0) }; $thiz.attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, jsx$6, bigOrExpr, jsx$5, result) } else if ((valid instanceof $c_Lio_kaitai_struct_format_ValidationExpr)) { const x7 = valid; const expr = x7.checkExpr$1; $thiz.blockScopeHeader__V(); $thiz.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O($f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr)); $thiz.handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V($f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr), $thiz.translator__Lio_kaitai_struct_translators_AbstractTranslator().translate__Lio_kaitai_struct_exprlang_Ast$expr__T(new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1))), $thiz.translator__Lio_kaitai_struct_translators_AbstractTranslator().translate__Lio_kaitai_struct_exprlang_Ast$expr__T(new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(attrId.humanReadable__T())))); const jsx$10 = $f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr); const jsx$9 = new $c_Lio_kaitai_struct_datatype_ValidationExprError().init___Lio_kaitai_struct_datatype_DataType($f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr)); $m_sci_List$(); const jsx$8 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(attrId.humanReadable__T())); const this$10 = $m_Lio_kaitai_struct_format_IoIdentifier$(); const jsx$7 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(this$10.name$2)); const this$11 = attr.path__sci_List(); const array$1 = [jsx$8, jsx$7, new $c_Lio_kaitai_struct_exprlang_Ast$expr$Str().init___T($f_sc_TraversableOnce__mkString__T__T__T__T(this$11, "/", "/", ""))]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$15 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$15); i$1 = (((-1) + i$1) | 0) }; $thiz.attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, jsx$10, expr, jsx$9, result$1); $thiz.blockScopeFooter__V() } else { throw new $c_s_MatchError().init___O(valid) } }); const $is_Lio_kaitai_struct_languages_components_ValidateOps = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_languages_components_ValidateOps))) }); const $isArrayOf_Lio_kaitai_struct_languages_components_ValidateOps = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_languages_components_ValidateOps))) }); class $c_Lio_kaitai_struct_precompile_CalculateSeqSizes extends $c_O { constructor() { super(); this.specs$1 = null }; run__V() { this.specs$1.forEachRec__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(curClass$2) { const curClass = curClass$2; $m_Lio_kaitai_struct_precompile_CalculateSeqSizes$().getSeqSize__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_Sized(curClass) }) })(this))) }; init___Lio_kaitai_struct_format_ClassSpecs(specs) { this.specs$1 = specs; return this }; } const $d_Lio_kaitai_struct_precompile_CalculateSeqSizes = new $TypeData().initClass({ Lio_kaitai_struct_precompile_CalculateSeqSizes: 0 }, false, "io.kaitai.struct.precompile.CalculateSeqSizes", { Lio_kaitai_struct_precompile_CalculateSeqSizes: 1, O: 1 }); $c_Lio_kaitai_struct_precompile_CalculateSeqSizes.prototype.$classData = $d_Lio_kaitai_struct_precompile_CalculateSeqSizes; class $c_Lio_kaitai_struct_precompile_CalculateSeqSizes$ extends $c_O { init___() { return this }; getSeqSize__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_Sized(curClass) { const x1 = curClass.seqSize$1; const x = $m_Lio_kaitai_struct_format_DynamicSized$(); if ((!((x === x1) || (x1 instanceof $c_Lio_kaitai_struct_format_FixedSized)))) { const x$3 = $m_Lio_kaitai_struct_format_StartedCalculationSized$(); if ((x$3 === x1)) { curClass.seqSize$1 = $m_Lio_kaitai_struct_format_DynamicSized$() } else { const x$5 = $m_Lio_kaitai_struct_format_NotCalculatedSized$(); if ((x$5 === x1)) { curClass.seqSize$1 = $m_Lio_kaitai_struct_format_StartedCalculationSized$(); const elem = new $c_s_Some().init___O(0); let elem$1 = null; elem$1 = elem; const this$2 = curClass.seq$1; let these = this$2; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; const sizeElement = $m_Lio_kaitai_struct_precompile_CalculateSeqSizes$().dataTypeBitsSize__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_Sized(attr.dataType$1); const sizeContainer = $m_Lio_kaitai_struct_precompile_CalculateSeqSizes$().sizeMultiply__Lio_kaitai_struct_format_Sized__Lio_kaitai_struct_format_RepeatSpec__Lio_kaitai_struct_format_Sized(sizeElement, attr.cond$1.repeat$1); const _1 = elem$1; matchEnd7: { if ((_1 instanceof $c_s_Some)) { const x4 = _1; const pos = (x4.value$2 | 0); if ((sizeContainer instanceof $c_Lio_kaitai_struct_format_FixedSized)) { const x5 = sizeContainer; const siz = x5.n$1; elem$1 = new $c_s_Some().init___O(((pos + siz) | 0)); break matchEnd7 } }; elem$1 = $m_s_None$() }; const this$3 = these; these = this$3.tail__sci_List() }; const seqSize = elem$1; let jsx$1; if ((seqSize instanceof $c_s_Some)) { const x2 = seqSize; const size = (x2.value$2 | 0); jsx$1 = new $c_Lio_kaitai_struct_format_FixedSized().init___I(size) } else { const x$7 = $m_s_None$(); if ((!(x$7 === seqSize))) { throw new $c_s_MatchError().init___O(seqSize) }; jsx$1 = $m_Lio_kaitai_struct_format_DynamicSized$() }; curClass.seqSize$1 = jsx$1 } else { throw new $c_s_MatchError().init___O(x1) } } }; $m_Lio_kaitai_struct_Log$(); return curClass.seqSize$1 }; dataTypeByteSize__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_Sized(dataType) { _dataTypeByteSize: while (true) { const x1 = dataType; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { return new $c_Lio_kaitai_struct_format_FixedSized().init___I(1) } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { const x2 = x1; const width = x2.width$3; return new $c_Lio_kaitai_struct_format_FixedSized().init___I(width.width$1) } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) { const x5 = x1; const width$2 = x5.width$3; return new $c_Lio_kaitai_struct_format_FixedSized().init___I(width$2.width$1) } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return $m_Lio_kaitai_struct_format_DynamicSized$() } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x11 = x1; const this$1 = x11.size$2; const x1$2 = $f_Lio_kaitai_struct_exprlang_Ast$expr__evaluateIntConst__s_Option(this$1); if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const x$2 = x2$2.value$2; return new $c_Lio_kaitai_struct_format_FixedSized().init___I(x$2.bigInteger$3.intValue__I()) } else { const x$3 = $m_s_None$(); if ((x$3 === x1$2)) { return $m_Lio_kaitai_struct_format_DynamicSized$() } else { throw new $c_s_MatchError().init___O(x1$2) } } } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { return $m_Lio_kaitai_struct_format_DynamicSized$() } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType)) { const x7 = x1; const basedOn = x7.bytes$2; dataType = basedOn; continue _dataTypeByteSize } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { const x13 = x1; dataType = x13.bytes$4; continue _dataTypeByteSize } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes)) { const x14 = x1; dataType = x14.bytes$4; continue _dataTypeByteSize } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { return $m_Lio_kaitai_struct_format_DynamicSized$() } else { throw new $c_s_MatchError().init___O(x1) } } }; sizeMultiply__Lio_kaitai_struct_format_Sized__Lio_kaitai_struct_format_RepeatSpec__Lio_kaitai_struct_format_Sized(sizeElement, repeat) { if ((sizeElement instanceof $c_Lio_kaitai_struct_format_FixedSized)) { const x2 = sizeElement; const elementSize = x2.n$1; const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === repeat)) { return sizeElement } else if ((repeat instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { const x2$2 = repeat; const expr = x2$2.expr$1; const x1$3 = $f_Lio_kaitai_struct_exprlang_Ast$expr__evaluateIntConst__s_Option(expr); let x$5; if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const count = x2$3.value$2; x$5 = new $c_Lio_kaitai_struct_format_FixedSized().init___I($imul(elementSize, count.bigInteger$3.intValue__I())) } else { const x$3 = $m_s_None$(); if ((!(x$3 === x1$3))) { throw new $c_s_MatchError().init___O(x1$3) }; x$5 = $m_Lio_kaitai_struct_format_DynamicSized$() }; return x$5 } else { let jsx$1; if ((repeat instanceof $c_Lio_kaitai_struct_format_RepeatUntil)) { jsx$1 = true } else { const x$6 = $m_Lio_kaitai_struct_format_RepeatEos$(); jsx$1 = (x$6 === repeat) }; if (jsx$1) { return $m_Lio_kaitai_struct_format_DynamicSized$() } else { throw new $c_s_MatchError().init___O(repeat) } } } else { return sizeElement } }; dataTypeBitsSize__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_Sized(dataType) { _dataTypeBitsSize: while (true) { const x1 = dataType; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { return new $c_Lio_kaitai_struct_format_FixedSized().init___I(1) } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x4 = x1; const width = x4.width$3; return new $c_Lio_kaitai_struct_format_FixedSized().init___I(width) } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x6 = x1; const basedOn = x6.basedOn$1; dataType = basedOn; continue _dataTypeBitsSize } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeInstream)) { const x8 = x1; return this.getSeqSize__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_Sized(x8.classSpec$3.get__O()) } else { const x1$2 = this.dataTypeByteSize__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_Sized(dataType); if ((x1$2 instanceof $c_Lio_kaitai_struct_format_FixedSized)) { const x2 = x1$2; const x$2 = x2.n$1; return new $c_Lio_kaitai_struct_format_FixedSized().init___I((x$2 << 3)) } else { return x1$2 } } } }; } const $d_Lio_kaitai_struct_precompile_CalculateSeqSizes$ = new $TypeData().initClass({ Lio_kaitai_struct_precompile_CalculateSeqSizes$: 0 }, false, "io.kaitai.struct.precompile.CalculateSeqSizes$", { Lio_kaitai_struct_precompile_CalculateSeqSizes$: 1, O: 1 }); $c_Lio_kaitai_struct_precompile_CalculateSeqSizes$.prototype.$classData = $d_Lio_kaitai_struct_precompile_CalculateSeqSizes$; let $n_Lio_kaitai_struct_precompile_CalculateSeqSizes$ = (void 0); const $m_Lio_kaitai_struct_precompile_CalculateSeqSizes$ = (function() { if ((!$n_Lio_kaitai_struct_precompile_CalculateSeqSizes$)) { $n_Lio_kaitai_struct_precompile_CalculateSeqSizes$ = new $c_Lio_kaitai_struct_precompile_CalculateSeqSizes$().init___() }; return $n_Lio_kaitai_struct_precompile_CalculateSeqSizes$ }); class $c_Lio_kaitai_struct_precompile_LoadImports extends $c_O { constructor() { super(); this.specs$1 = null }; processClass__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future(curClass, workDir) { $m_Lio_kaitai_struct_Log$(); const jsx$5 = $m_s_concurrent_Future$(); const this$2 = curClass.meta$1.imports$1; const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; const this$11 = $f_sc_IterableLike__zipWithIndex__scg_CanBuildFrom__O(this$2, bf); const f = (function(this$2$1, curClass$1, workDir$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const name = x0$1.$$und1__O(); const idx = x0$1.$$und2$mcI$sp__I(); const jsx$3 = curClass$1.meta$1.path$1; $m_sci_List$(); const array = ["imports", ("" + idx)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$7 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$7); i = (((-1) + i) | 0) }; const jsx$2 = result; const this$8 = $m_sci_List$(); const jsx$1 = jsx$3.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$8.ReusableCBFInstance$2); const this$9 = curClass$1.name$1; return this$2$1.loadImport__p1__T__sci_List__s_Option__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future(name, jsx$1, new $c_s_Some().init___O($f_sc_TraversableOnce__mkString__T__T__T__T(this$9, "", "::", "")), workDir$1) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass, workDir); const this$10 = $m_sci_List$(); const bf$1 = this$10.ReusableCBFInstance$2; let jsx$4; if ((bf$1 === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$11 === $m_sci_Nil$())) { jsx$4 = $m_sci_Nil$() } else { const arg1 = this$11.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$11.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$12 = rest; rest = this$12.tail__sci_List() }; jsx$4 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$11, bf$1); let these = this$11; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$13 = these; these = this$13.tail__sci_List() }; jsx$4 = b.result__O() }; const this$14 = $m_sci_List$(); const thisMetaFuture = jsx$5.sequence__sc_TraversableOnce__scg_CanBuildFrom__s_concurrent_ExecutionContext__s_concurrent_Future(jsx$4, this$14.ReusableCBFInstance$2, $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$3$1) { return (function(x$2) { const x$1 = x$2; $m_sci_List$(); const b$1 = new $c_scm_ListBuffer().init___(); let these$1 = x$1; while ((!these$1.isEmpty__Z())) { const arg1$3 = these$1.head__O(); const xs = arg1$3.seq__sc_TraversableOnce(); b$1.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs); const this$16 = these$1; these$1 = this$16.tail__sci_List() }; return b$1.toList__sci_List() }) })(this)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()); const jsx$7 = $m_s_concurrent_Future$(); const this$18 = curClass.types$1; const f$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$4$1, workDir$2) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const nestedClass = x0$2.$$und2__O(); return this$4$1.processClass__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future(nestedClass, workDir$2) } else { throw new $c_s_MatchError().init___O(x0$2) } }) })(this, workDir)); const this$17 = $m_sci_Iterable$(); const bf$2 = this$17.ReusableCBFInstance$2; const jsx$6 = $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this$18, f$1, bf$2); const this$19 = $m_sci_Iterable$(); const nestedFuture = jsx$7.sequence__sc_TraversableOnce__scg_CanBuildFrom__s_concurrent_ExecutionContext__s_concurrent_Future(jsx$6, this$19.ReusableCBFInstance$2, $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$5$1) { return (function(listOfLists$2) { const listOfLists = listOfLists$2; return listOfLists.flatten__F1__sc_GenTraversable($m_s_Predef$().singleton$und$less$colon$less$2) }) })(this)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()); const jsx$9 = $m_s_concurrent_Future$(); $m_sci_List$(); const array$1 = [thisMetaFuture, nestedFuture]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$23 = result$1; const index$1 = i$1; const x$3 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$23); i$1 = (((-1) + i$1) | 0) }; const jsx$8 = result$1; const this$24 = $m_sci_List$(); return jsx$9.sequence__sc_TraversableOnce__scg_CanBuildFrom__s_concurrent_ExecutionContext__s_concurrent_Future(jsx$8, this$24.ReusableCBFInstance$2, $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$6$1) { return (function(x$3$2) { const x$3$1 = x$3$2; $m_sci_List$(); const b$2 = new $c_scm_ListBuffer().init___(); let these$2 = x$3$1; while ((!these$2.isEmpty__Z())) { const arg1$4 = these$2.head__O(); const xs$1 = arg1$4.seq__sc_TraversableOnce(); b$2.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs$1); const this$26 = these$2; these$2 = this$26.tail__sci_List() }; return b$2.toList__sci_List() }) })(this)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()) }; loadImport__p1__T__sci_List__s_Option__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future(name, path, inFile, workDir) { $m_Lio_kaitai_struct_Log$(); const impPath = $m_Lio_kaitai_struct_precompile_LoadImports$ImportPath$().fromString__T__Lio_kaitai_struct_precompile_LoadImports$ImportPath(name); const fullPath = $m_Lio_kaitai_struct_precompile_LoadImports$ImportPath$().add__Lio_kaitai_struct_precompile_LoadImports$ImportPath__Lio_kaitai_struct_precompile_LoadImports$ImportPath__Lio_kaitai_struct_precompile_LoadImports$ImportPath(workDir, impPath); let futureSpec; if ((fullPath instanceof $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath)) { const x2 = fullPath; const p = x2.path$1; const this$1 = this.specs$1; const name$1 = $f_sc_TraversableOnce__mkString__T__T__T__T(p, "", "/", ""); futureSpec = this$1.doImport__T__T__s_concurrent_Future(name$1, this$1.MODE$undREL$7) } else { if ((!(fullPath instanceof $c_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath))) { throw new $c_s_MatchError().init___O(fullPath) }; const x3 = fullPath; const p$2 = x3.path$1; const this$2 = this.specs$1; const name$2 = $f_sc_TraversableOnce__mkString__T__T__T__T(p$2, "", "/", ""); futureSpec = this$2.doImport__T__T__s_concurrent_Future(name$2, this$2.MODE$undABS$7) }; return futureSpec.flatMap__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, name$3, workDir$1, impPath$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; $m_Lio_kaitai_struct_Log$(); if ((x0$1 instanceof $c_s_Some)) { const x2$1 = x0$1; const spec = x2$1.value$2; const specName = spec.name$1.head__O(); if ((name$3 !== specName)) { $m_Lio_kaitai_struct_Log$() }; if ((!this$2$1.specs$1.contains__O__Z(specName))) { const this$3 = this$2$1.specs$1; this$3.put__O__O__s_Option(specName, spec); return this$2$1.processClass__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future(spec, $m_Lio_kaitai_struct_precompile_LoadImports$ImportPath$().updateWorkDir__Lio_kaitai_struct_precompile_LoadImports$ImportPath__Lio_kaitai_struct_precompile_LoadImports$ImportPath__Lio_kaitai_struct_precompile_LoadImports$ImportPath(workDir$1, impPath$1)) } else { $m_Lio_kaitai_struct_Log$(); return $m_s_concurrent_Future$().apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$4) { return (function() { return $m_sci_Nil$() }) })(this$2$1)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()) } } else { const x = $m_s_None$(); if ((x === x0$1)) { return $m_s_concurrent_Future$().apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$5) { return (function() { return $m_sci_Nil$() }) })(this$2$1)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()) } else { throw new $c_s_MatchError().init___O(x0$1) } } }) })(this, name, workDir, impPath)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext()) }; init___Lio_kaitai_struct_format_ClassSpecs(specs) { this.specs$1 = specs; return this }; } const $d_Lio_kaitai_struct_precompile_LoadImports = new $TypeData().initClass({ Lio_kaitai_struct_precompile_LoadImports: 0 }, false, "io.kaitai.struct.precompile.LoadImports", { Lio_kaitai_struct_precompile_LoadImports: 1, O: 1 }); $c_Lio_kaitai_struct_precompile_LoadImports.prototype.$classData = $d_Lio_kaitai_struct_precompile_LoadImports; class $c_Lio_kaitai_struct_precompile_LoadImports$ extends $c_O { constructor() { super(); this.BasePath$1 = null }; init___() { $n_Lio_kaitai_struct_precompile_LoadImports$ = this; this.BasePath$1 = new $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath().init___sci_List($m_sci_Nil$()); return this }; } const $d_Lio_kaitai_struct_precompile_LoadImports$ = new $TypeData().initClass({ Lio_kaitai_struct_precompile_LoadImports$: 0 }, false, "io.kaitai.struct.precompile.LoadImports$", { Lio_kaitai_struct_precompile_LoadImports$: 1, O: 1 }); $c_Lio_kaitai_struct_precompile_LoadImports$.prototype.$classData = $d_Lio_kaitai_struct_precompile_LoadImports$; let $n_Lio_kaitai_struct_precompile_LoadImports$ = (void 0); const $m_Lio_kaitai_struct_precompile_LoadImports$ = (function() { if ((!$n_Lio_kaitai_struct_precompile_LoadImports$)) { $n_Lio_kaitai_struct_precompile_LoadImports$ = new $c_Lio_kaitai_struct_precompile_LoadImports$().init___() }; return $n_Lio_kaitai_struct_precompile_LoadImports$ }); class $c_Lio_kaitai_struct_precompile_LoadImports$ImportPath$ extends $c_O { init___() { return this }; add__Lio_kaitai_struct_precompile_LoadImports$ImportPath__Lio_kaitai_struct_precompile_LoadImports$ImportPath__Lio_kaitai_struct_precompile_LoadImports$ImportPath(curWorkDir, newPath) { const x1 = new $c_T2().init___O__O(curWorkDir, newPath); const p3 = x1.$$und2$f; if ((p3 instanceof $c_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath)) { const x4 = p3; const newPathAbs = x4.path$1; return new $c_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath().init___sci_List(newPathAbs) }; const p5 = x1.$$und1$f; const p6 = x1.$$und2$f; if ((p5 instanceof $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath)) { const x7 = p5; const curDir = x7.path$1; if ((p6 instanceof $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath)) { const x8 = p6; const newPathRel = x8.path$1; const this$1 = $m_sci_List$(); return new $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath().init___sci_List(curDir.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(newPathRel, this$1.ReusableCBFInstance$2)) } }; const p9 = x1.$$und1$f; const p10 = x1.$$und2$f; if ((p9 instanceof $c_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath)) { const x11 = p9; const curDir$2 = x11.path$1; if ((p10 instanceof $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath)) { const x12 = p10; const newPathRel$2 = x12.path$1; const this$2 = $m_sci_List$(); return new $c_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath().init___sci_List(curDir$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(newPathRel$2, this$2.ReusableCBFInstance$2)) } }; throw new $c_s_MatchError().init___O(x1) }; fromString__T__Lio_kaitai_struct_precompile_LoadImports$ImportPath(s) { if ((((s.length | 0) >= 0) && (s.substring(0, ("/".length | 0)) === "/"))) { const xs = $m_sjsr_RuntimeString$().split__T__T__I__AT(s.substring(1), "/", (-1)); let i = (((-1) + xs.u.length) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$11 = result; const index = i; const x = xs.u[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$11); i = (((-1) + i) | 0) }; return new $c_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath().init___sci_List(result) } else { const xs$1 = $m_sjsr_RuntimeString$().split__T__T__I__AT(s, "/", (-1)); let i$1 = (((-1) + xs$1.u.length) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$15 = result$1; const index$1 = i$1; const x$1 = xs$1.u[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$15); i$1 = (((-1) + i$1) | 0) }; return new $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath().init___sci_List(result$1) } }; updateWorkDir__Lio_kaitai_struct_precompile_LoadImports$ImportPath__Lio_kaitai_struct_precompile_LoadImports$ImportPath__Lio_kaitai_struct_precompile_LoadImports$ImportPath(curWorkDir, newPath) { return this.add__Lio_kaitai_struct_precompile_LoadImports$ImportPath__Lio_kaitai_struct_precompile_LoadImports$ImportPath__Lio_kaitai_struct_precompile_LoadImports$ImportPath(curWorkDir, newPath).baseDir__Lio_kaitai_struct_precompile_LoadImports$ImportPath() }; } const $d_Lio_kaitai_struct_precompile_LoadImports$ImportPath$ = new $TypeData().initClass({ Lio_kaitai_struct_precompile_LoadImports$ImportPath$: 0 }, false, "io.kaitai.struct.precompile.LoadImports$ImportPath$", { Lio_kaitai_struct_precompile_LoadImports$ImportPath$: 1, O: 1 }); $c_Lio_kaitai_struct_precompile_LoadImports$ImportPath$.prototype.$classData = $d_Lio_kaitai_struct_precompile_LoadImports$ImportPath$; let $n_Lio_kaitai_struct_precompile_LoadImports$ImportPath$ = (void 0); const $m_Lio_kaitai_struct_precompile_LoadImports$ImportPath$ = (function() { if ((!$n_Lio_kaitai_struct_precompile_LoadImports$ImportPath$)) { $n_Lio_kaitai_struct_precompile_LoadImports$ImportPath$ = new $c_Lio_kaitai_struct_precompile_LoadImports$ImportPath$().init___() }; return $n_Lio_kaitai_struct_precompile_LoadImports$ImportPath$ }); class $c_Lio_kaitai_struct_precompile_MarkupClassNames$ extends $c_O { init___() { return this }; markupClassNames__Lio_kaitai_struct_format_ClassSpec__V(curClass) { curClass.enums$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const enumName = x0$1.$$und1__O(); const enumSpec = x0$1.$$und2__O(); const x$1 = curClass$1.name$1; $m_sci_List$(); const array = [enumName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; enumSpec.name$1 = result.$$colon$colon$colon__sci_List__sci_List(x$1) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass))); curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, curClass$2) { return (function(x0$2$2) { const x0$2 = x0$2$2; matchEnd4: { if ((x0$2 !== null)) { const nestedName = x0$2.$$und1__O(); const nestedClass = x0$2.$$und2__O(); if ((nestedName !== null)) { const x$2 = curClass$2.name$1; $m_sci_List$(); const array$1 = [nestedName]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$8 = result$1; const index$1 = i$1; const x$3 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$8); i$1 = (((-1) + i$1) | 0) }; nestedClass.name$1 = result$1.$$colon$colon$colon__sci_List__sci_List(x$2); nestedClass.upClass$1 = new $c_s_Some().init___O(curClass$2); $m_Lio_kaitai_struct_precompile_MarkupClassNames$().markupClassNames__Lio_kaitai_struct_format_ClassSpec__V(nestedClass); break matchEnd4 } }; throw new $c_s_MatchError().init___O(x0$2) } }) })(this, curClass))) }; } const $d_Lio_kaitai_struct_precompile_MarkupClassNames$ = new $TypeData().initClass({ Lio_kaitai_struct_precompile_MarkupClassNames$: 0 }, false, "io.kaitai.struct.precompile.MarkupClassNames$", { Lio_kaitai_struct_precompile_MarkupClassNames$: 1, O: 1 }); $c_Lio_kaitai_struct_precompile_MarkupClassNames$.prototype.$classData = $d_Lio_kaitai_struct_precompile_MarkupClassNames$; let $n_Lio_kaitai_struct_precompile_MarkupClassNames$ = (void 0); const $m_Lio_kaitai_struct_precompile_MarkupClassNames$ = (function() { if ((!$n_Lio_kaitai_struct_precompile_MarkupClassNames$)) { $n_Lio_kaitai_struct_precompile_MarkupClassNames$ = new $c_Lio_kaitai_struct_precompile_MarkupClassNames$().init___() }; return $n_Lio_kaitai_struct_precompile_MarkupClassNames$ }); class $c_Lio_kaitai_struct_precompile_ParentTypes extends $c_O { constructor() { super(); this.classSpecs$1 = null }; run__V() { const this$1 = this.classSpecs$1; const iterTable = this$1.table$5; let idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(this$1); let es = iterTable.u[idx]; while ((es !== null)) { const this$2 = es; const next = this$2.next$1; const arg1 = es; const e = arg1; const _2 = e.value$1; const curClass = _2; this.markup__Lio_kaitai_struct_format_ClassSpec__V(curClass); es = next; while (((es === null) && (idx > 0))) { idx = (((-1) + idx) | 0); es = iterTable.u[idx] } } }; markupParentTypesAdd__p1__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__V(curClass, dt) { _markupParentTypesAdd: while (true) { const x1 = dt; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x3 = x1; let rc8 = false; let x2 = null; const x1$2 = x3.forcedParent$3; let this$1; matchEnd9: { const x$2 = $m_s_None$(); if ((x$2 === x1$2)) { this$1 = new $c_s_Some().init___O(curClass); break matchEnd9 }; if ((x1$2 instanceof $c_s_Some)) { rc8 = true; x2 = x1$2; const p3 = x2.value$2; const x$4 = $m_Lio_kaitai_struct_datatype_DataType$().USER$undTYPE$undNO$undPARENT$1; if (((x$4 === null) ? (p3 === null) : x$4.equals__O__Z(p3))) { $m_Lio_kaitai_struct_Log$(); this$1 = $m_s_None$(); break matchEnd9 } }; if (rc8) { const parent = x2.value$2; const provider = new $c_Lio_kaitai_struct_ClassTypeProvider().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(this.classSpecs$1, curClass); const detector = new $c_Lio_kaitai_struct_translators_TypeDetector().init___Lio_kaitai_struct_translators_TypeProvider(provider); const parentType = detector.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(parent); $m_Lio_kaitai_struct_Log$(); if ((!(parentType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType))) { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((((("parent=" + parent) + " is expected to be either of user type or `false`, but ") + parentType) + " found")) }; const x2$2 = parentType; this$1 = new $c_s_Some().init___O(x2$2.classSpec$3.get__O()); break matchEnd9 }; throw new $c_s_MatchError().init___O(x1$2) }; if ((!this$1.isEmpty__Z())) { const arg1 = this$1.get__O(); const parentClass = arg1; this.markupParentAs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType$UserType__V(parentClass, x3) } } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x4 = x1; x4.cases$2.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$4, curClass$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; matchEnd7: { if ((x0$1 !== null)) { const ut = x0$1.$$und2__O(); if ((ut instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x5 = ut; this$4.markupParentAs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType$UserType__V(curClass$1, x5); break matchEnd7 } }; if ((x0$1 !== null)) { break matchEnd7 }; throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass))) } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream)) { const x2$3 = x1; const innerType = x2$3.elType$2; dt = innerType; continue _markupParentTypesAdd }; break } }; init___Lio_kaitai_struct_format_ClassSpecs(classSpecs) { this.classSpecs$1 = classSpecs; return this }; markup__Lio_kaitai_struct_format_ClassSpec__V(curClass) { $m_Lio_kaitai_struct_Log$(); const this$1 = curClass.seq$1; if ($f_sc_TraversableOnce__nonEmpty__Z(this$1)) { $m_Lio_kaitai_struct_Log$() }; const this$2 = curClass.seq$1; let these = this$2; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; this.markupParentTypesAdd__p1__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__V(curClass, attr.dataType$1); const this$3 = these; these = this$3.tail__sci_List() }; const this$4 = curClass.instances$1; if ($f_sc_TraversableOnce__nonEmpty__Z(this$4)) { $m_Lio_kaitai_struct_Log$() }; curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$5, curClass$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instSpec = x0$1.$$und2__O(); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = instSpec; this$5.markupParentTypesAdd__p1__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__V(curClass$1, $f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(x2)) } else if ((!(instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec))) { throw new $c_s_MatchError().init___O(instSpec) } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass))) }; markupParentAs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType$UserType__V(curClass, ut) { $m_Lio_kaitai_struct_Log$(); const x1 = ut.classSpec$3; if ((x1 instanceof $c_s_Some)) { const x2 = x1; const usedClass = x2.value$2; this.markupParentAs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_ClassSpec__V(curClass, usedClass) } else { const x = $m_s_None$(); if ((x === x1)) { const this$2 = $m_s_Console$(); const jsx$1 = curClass.name$1; const this$1 = ut.name$3; const x$1 = (((("warning: tried to mark up parent=" + jsx$1) + " for user type ") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", "")) + ", but that type wasn't found, so doing nothing"); const this$3 = this$2.outVar$2.v$1; this$3.java$lang$JSConsoleBasedPrintStream$$printString__T__V((x$1 + "\n")) } else { throw new $c_s_MatchError().init___O(x1) } } }; markupParentAs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_ClassSpec__V(parent, child) { const x1 = child.parentClass$1; const x = $m_Lio_kaitai_struct_format_UnknownClassSpec$(); if ((x === x1)) { child.parentClass$1 = parent; this.markup__Lio_kaitai_struct_format_ClassSpec__V(child) } else if ((x1 instanceof $c_Lio_kaitai_struct_format_ClassSpec)) { const x3 = x1; if ((!((x3 === null) ? (parent === null) : x3.equals__O__Z(parent)))) { child.parentClass$1 = $m_Lio_kaitai_struct_format_GenericStructClassSpec$() } } else { const x$5 = $m_Lio_kaitai_struct_format_GenericStructClassSpec$(); if ((!(x$5 === x1))) { throw new $c_s_MatchError().init___O(x1) } } }; } const $d_Lio_kaitai_struct_precompile_ParentTypes = new $TypeData().initClass({ Lio_kaitai_struct_precompile_ParentTypes: 0 }, false, "io.kaitai.struct.precompile.ParentTypes", { Lio_kaitai_struct_precompile_ParentTypes: 1, O: 1 }); $c_Lio_kaitai_struct_precompile_ParentTypes.prototype.$classData = $d_Lio_kaitai_struct_precompile_ParentTypes; class $c_Lio_kaitai_struct_precompile_ResolveTypes extends $c_O { constructor() { super(); this.specs$1 = null; this.opaqueTypes$1 = false }; realResolveUserType__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(curClass, typeName, path) { if ((!(typeName instanceof $c_sci_$colon$colon))) { throw new $c_s_MatchError().init___O(typeName) }; const x2 = typeName; const firstName = x2.head$5; const restNames = x2.tl$5; const this$1 = curClass.types$1.get__O__s_Option(firstName); let resolvedHere; if (this$1.isEmpty__Z()) { resolvedHere = $m_s_None$() } else { const arg1 = this$1.get__O(); const nestedClass = arg1; resolvedHere = (restNames.isEmpty__Z() ? new $c_s_Some().init___O(nestedClass) : this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(nestedClass, restNames, path)) }; if ((resolvedHere instanceof $c_s_Some)) { return resolvedHere } else { const x = $m_s_None$(); if ((x === resolvedHere)) { const x1$3 = curClass.upClass$1; if ((x1$3 instanceof $c_s_Some)) { const x2$2 = x1$3; const upClass = x2$2.value$2; return this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(upClass, typeName, path) } else { const x$3 = $m_s_None$(); if ((x$3 === x1$3)) { const x$5 = curClass.name$1.head__O(); if (((x$5 === null) ? (firstName === null) : $objectEquals(x$5, firstName))) { return new $c_s_Some().init___O(curClass) } else { const resolvedTop = this.specs$1.get__O__s_Option(firstName); const x$7 = $m_s_None$(); if ((x$7 === resolvedTop)) { return $m_s_None$() } else if ((resolvedTop instanceof $c_s_Some)) { const x2$3 = resolvedTop; const classSpec = x2$3.value$2; return (restNames.isEmpty__Z() ? resolvedTop : this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(classSpec, restNames, path)) } else { throw new $c_s_MatchError().init___O(resolvedTop) } } } else { throw new $c_s_MatchError().init___O(x1$3) } } } else { throw new $c_s_MatchError().init___O(resolvedHere) } } }; run__V() { this.specs$1.forEachRec__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(curClass$2) { const curClass = curClass$2; $this.resolveUserTypes__Lio_kaitai_struct_format_ClassSpec__V(curClass) }) })(this))) }; resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(curClass, typeName, path) { $m_Lio_kaitai_struct_Log$(); const res = this.realResolveUserType__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(curClass, typeName, path); const x = $m_s_None$(); if ((x === res)) { if (this.opaqueTypes$1) { $m_Lio_kaitai_struct_Log$(); return new $c_s_Some().init___O($m_Lio_kaitai_struct_format_ClassSpec$().opaquePlaceholder__sci_List__Lio_kaitai_struct_format_ClassSpec(typeName)) } else { const err = new $c_Lio_kaitai_struct_precompile_TypeNotFoundError().init___T__Lio_kaitai_struct_format_ClassSpec($f_sc_TraversableOnce__mkString__T__T__T__T(typeName, "", "::", ""), curClass); throw $m_Lio_kaitai_struct_problems_KSYParseError$().withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(err.s$1, path) } } else if ((res instanceof $c_s_Some)) { const x2 = res; x2.value$2; $m_Lio_kaitai_struct_Log$(); return res } else { throw new $c_s_MatchError().init___O(res) } }; realResolveEnumSpec__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, typeName) { if ((!(typeName instanceof $c_sci_$colon$colon))) { throw new $c_s_MatchError().init___O(typeName) }; const x2 = typeName; const firstName = x2.head$5; const restNames = x2.tl$5; let resolvedHere; if (restNames.isEmpty__Z()) { resolvedHere = curClass.enums$1.get__O__s_Option(firstName) } else { const this$1 = curClass.types$1.get__O__s_Option(firstName); if (this$1.isEmpty__Z()) { resolvedHere = $m_s_None$() } else { const arg1 = this$1.get__O(); const nestedClass = arg1; resolvedHere = this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(nestedClass, restNames) } }; if ((resolvedHere instanceof $c_s_Some)) { return resolvedHere } else { const x = $m_s_None$(); if ((x === resolvedHere)) { const x1$3 = curClass.upClass$1; if ((x1$3 instanceof $c_s_Some)) { const x2$2 = x1$3; const upClass = x2$2.value$2; return this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(upClass, typeName) } else { const x$4 = $m_s_None$(); if ((x$4 === x1$3)) { const x$6 = curClass.name$1.head__O(); if (((x$6 === null) ? (firstName === null) : $objectEquals(x$6, firstName))) { return this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, restNames) } else { const resolvedTop = this.specs$1.get__O__s_Option(firstName); const x$8 = $m_s_None$(); if ((x$8 === resolvedTop)) { return $m_s_None$() } else if ((resolvedTop instanceof $c_s_Some)) { const x2$3 = resolvedTop; const classSpec = x2$3.value$2; return (restNames.isEmpty__Z() ? $m_s_None$() : this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(classSpec, restNames)) } else { throw new $c_s_MatchError().init___O(resolvedTop) } } } else { throw new $c_s_MatchError().init___O(x1$3) } } } else { throw new $c_s_MatchError().init___O(resolvedHere) } } }; resolveUserTypes__Lio_kaitai_struct_format_ClassSpec__V(curClass) { const this$1 = curClass.seq$1; let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass, attr.dataType$1, attr.path$1); const this$2 = these; these = this$2.tail__sci_List() }; curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, curClass$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instSpec = x0$1.$$und2__O(); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = instSpec; this$2$1.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass$1, x2.dataType$2, x2.path$2) } else if ((!(instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec))) { throw new $c_s_MatchError().init___O(instSpec) } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass))); const this$3 = curClass.params$1; let these$1 = this$3; while ((!these$1.isEmpty__Z())) { const arg1$1 = these$1.head__O(); const paramDef = arg1$1; this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass, paramDef.dataType$1, paramDef.path$1); const this$4 = these$1; these$1 = this$4.tail__sci_List() } }; resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass, dataType, path) { if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2 = dataType; x2.classSpec$3 = this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(curClass, x2.name$3, path) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x3 = dataType; x3.enumSpec$1 = this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, x3.name$1); if (x3.enumSpec$1.isEmpty__Z()) { const this$1 = x3.name$1; const err = new $c_Lio_kaitai_struct_precompile_EnumNotFoundError().init___T__Lio_kaitai_struct_format_ClassSpec($f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", ""), curClass); throw $m_Lio_kaitai_struct_problems_KSYParseError$().withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(err.s$1, path) } } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x4 = dataType; x4.cases$2.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1, path$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const caseName = x0$1.$$und1__O(); const ut = x0$1.$$und2__O(); $m_sci_List$(); const array = ["type", "cases", caseName.toString__T()]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$5 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$5); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$6 = $m_sci_List$(); $this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass$1, ut, path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$6.ReusableCBFInstance$2)) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass, path))) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x5 = dataType; this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass, x5.elType$2, path) } }; init___Lio_kaitai_struct_format_ClassSpecs__Z(specs, opaqueTypes) { this.specs$1 = specs; this.opaqueTypes$1 = opaqueTypes; return this }; resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, typeName) { $m_Lio_kaitai_struct_Log$(); const res = this.realResolveEnumSpec__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, typeName); const x = $m_s_None$(); if ((x === res)) { $m_Lio_kaitai_struct_Log$(); return res } else if ((res instanceof $c_s_Some)) { const x2 = res; x2.value$2; $m_Lio_kaitai_struct_Log$(); return res } else { throw new $c_s_MatchError().init___O(res) } }; } const $d_Lio_kaitai_struct_precompile_ResolveTypes = new $TypeData().initClass({ Lio_kaitai_struct_precompile_ResolveTypes: 0 }, false, "io.kaitai.struct.precompile.ResolveTypes", { Lio_kaitai_struct_precompile_ResolveTypes: 1, O: 1 }); $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.$classData = $d_Lio_kaitai_struct_precompile_ResolveTypes; class $c_Lio_kaitai_struct_precompile_SpecsValueTypeDerive extends $c_O { constructor() { super(); this.specs$1 = null }; run__V() { let elem$1 = 0; elem$1 = 1; let elem$1$1 = false; elem$1$1 = false; do { elem$1$1 = false; $m_Lio_kaitai_struct_Log$(); const this$3 = this.specs$1; const iterTable = this$3.table$5; let idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(this$3); let es = iterTable.u[idx]; while ((es !== null)) { const this$4 = es; const next = this$4.next$1; const arg1 = es; const e = arg1; const _1 = e.key$1; const _2 = e.value$1; const spec = _2; $m_Lio_kaitai_struct_Log$(); const thisChanged = new $c_Lio_kaitai_struct_precompile_ValueTypesDeriver().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(this.specs$1, spec).run__Z(); $m_Lio_kaitai_struct_Log$(); elem$1$1 = (!(!(elem$1$1 | thisChanged))); es = next; while (((es === null) && (idx > 0))) { idx = (((-1) + idx) | 0); es = iterTable.u[idx] } }; elem$1 = ((1 + elem$1) | 0) } while (elem$1$1); $m_Lio_kaitai_struct_Log$() }; init___Lio_kaitai_struct_format_ClassSpecs(specs) { this.specs$1 = specs; return this }; } const $d_Lio_kaitai_struct_precompile_SpecsValueTypeDerive = new $TypeData().initClass({ Lio_kaitai_struct_precompile_SpecsValueTypeDerive: 0 }, false, "io.kaitai.struct.precompile.SpecsValueTypeDerive", { Lio_kaitai_struct_precompile_SpecsValueTypeDerive: 1, O: 1 }); $c_Lio_kaitai_struct_precompile_SpecsValueTypeDerive.prototype.$classData = $d_Lio_kaitai_struct_precompile_SpecsValueTypeDerive; class $c_Lio_kaitai_struct_precompile_ValueTypesDeriver extends $c_O { constructor() { super(); this.topClass$1 = null; this.provider$1 = null; this.detector$1 = null }; deriveValueType__Lio_kaitai_struct_format_ClassSpec__Z(curClass) { $m_Lio_kaitai_struct_Log$(); const hasChanged = new $c_sr_BooleanRef().init___Z(false); const hasUndecided = new $c_sr_BooleanRef().init___Z(false); this.provider$1.nowClass$1 = curClass; curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, hasChanged$1, hasUndecided$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { x0$1.$$und1__O(); const inst = x0$1.$$und2__O(); if ((inst instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) { const x2 = inst; const x1$3 = x2.dataTypeOpt$2; const x = $m_s_None$(); if ((x === x1$3)) { try { const viType = this$2$1.detector$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(x2.value$2); x2.dataTypeOpt$2 = new $c_s_Some().init___O(viType); $m_Lio_kaitai_struct_Log$(); hasChanged$1.elem$1 = true } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_precompile_TypeUndecidedError)) { $m_Lio_kaitai_struct_Log$(); hasUndecided$1.elem$1 = true } else if ((e instanceof $c_Lio_kaitai_struct_precompile_ExpressionError)) { const err = e; const jsx$2 = x2.path$2; $m_sci_List$(); const array = ["value"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$6 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$6); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$7 = $m_sci_List$(); const this$9 = new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err, jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$7.ReusableCBFInstance$2), $m_s_None$()); throw new $c_Lio_kaitai_struct_problems_CompilationProblemException().init___Lio_kaitai_struct_problems_CompilationProblem(this$9) } else { throw e } } } else if ((!(x1$3 instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(x1$3) } } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, hasChanged, hasUndecided))); curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$3$1, hasChanged$2) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const classSpec = x0$2.$$und2__O(); hasChanged$2.elem$1 = (hasChanged$2.elem$1 || this$3$1.deriveValueType__Lio_kaitai_struct_format_ClassSpec__Z(classSpec)) } else { throw new $c_s_MatchError().init___O(x0$2) } }) })(this, hasChanged))); return hasChanged.elem$1 }; run__Z() { return this.deriveValueType__Lio_kaitai_struct_format_ClassSpec__Z(this.topClass$1) }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(specs, topClass) { this.topClass$1 = topClass; this.provider$1 = new $c_Lio_kaitai_struct_ClassTypeProvider().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(specs, topClass); this.detector$1 = new $c_Lio_kaitai_struct_translators_TypeDetector().init___Lio_kaitai_struct_translators_TypeProvider(this.provider$1); return this }; } const $d_Lio_kaitai_struct_precompile_ValueTypesDeriver = new $TypeData().initClass({ Lio_kaitai_struct_precompile_ValueTypesDeriver: 0 }, false, "io.kaitai.struct.precompile.ValueTypesDeriver", { Lio_kaitai_struct_precompile_ValueTypesDeriver: 1, O: 1 }); $c_Lio_kaitai_struct_precompile_ValueTypesDeriver.prototype.$classData = $d_Lio_kaitai_struct_precompile_ValueTypesDeriver; const $f_Lio_kaitai_struct_translators_CommonOps__doNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T = (function($thiz, left, op, right) { return (((($thiz.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " ") + $thiz.cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(op)) + " ") + $thiz.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) }); const $f_Lio_kaitai_struct_translators_CommonOps__doEnumCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T = (function($thiz, left, op, right) { return (((($thiz.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " ") + $thiz.cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(op)) + " ") + $thiz.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) }); const $f_Lio_kaitai_struct_translators_CommonOps__binOp__Lio_kaitai_struct_exprlang_Ast$operator__T = (function($thiz, op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Add$(); if ((x === op)) { return "+" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Sub$(); if ((x$3 === op)) { return "-" } else { const x$5 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mult$(); if ((x$5 === op)) { return "*" } else { const x$7 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$(); if ((x$7 === op)) { return "/" } else { const x$9 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$(); if ((x$9 === op)) { return "%" } else { const x$11 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$(); if ((x$11 === op)) { return "&" } else { const x$13 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$(); if ((x$13 === op)) { return "|" } else { const x$15 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$(); if ((x$15 === op)) { return "^" } else { const x$17 = $m_Lio_kaitai_struct_exprlang_Ast$operator$LShift$(); if ((x$17 === op)) { return "<<" } else { const x$19 = $m_Lio_kaitai_struct_exprlang_Ast$operator$RShift$(); if ((x$19 === op)) { return ">>" } else { throw new $c_s_MatchError().init___O(op) } } } } } } } } } } }); const $f_Lio_kaitai_struct_translators_CommonOps__unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T = (function($thiz, op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$(); if ((x === op)) { return "~" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$(); if ((x$3 === op)) { return "-" } else { const x$5 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$(); if ((x$5 === op)) { return "!" } else { throw new $c_s_MatchError().init___O(op) } } } }); const $f_Lio_kaitai_struct_translators_CommonOps__booleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__T = (function($thiz, op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$boolop$Or$(); if ((x === op)) { return "||" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$boolop$And$(); if ((x$3 === op)) { return "&&" } else { throw new $c_s_MatchError().init___O(op) } } }); const $f_Lio_kaitai_struct_translators_CommonOps__doBooleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__sc_Seq__T = (function($thiz, op, values) { const opStr = ("" + $thiz.booleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__T(op)); const dividerStr = ((") " + opStr) + " ("); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })($thiz)); const this$1 = $m_sc_Seq$(); const valuesStr = values.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T__T__T("(", dividerStr, ")"); return ((" (" + valuesStr) + ") ") }); const $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T = (function($thiz, op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$(); if ((x === op)) { return "<" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$(); if ((x$3 === op)) { return "<=" } else { const x$5 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$(); if ((x$5 === op)) { return ">" } else { const x$7 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$(); if ((x$7 === op)) { return ">=" } else { const x$9 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(); if ((x$9 === op)) { return "==" } else { const x$11 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$(); if ((x$11 === op)) { return "!=" } else { throw new $c_s_MatchError().init___O(op) } } } } } } }); const $f_Lio_kaitai_struct_translators_CommonOps__doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T = (function($thiz, left, op, right) { return (((($thiz.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " ") + $thiz.cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(op)) + " ") + $thiz.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) }); const $f_Lio_kaitai_struct_translators_CommonOps__doBytesCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T = (function($thiz, left, op, right) { return (((($thiz.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " ") + $thiz.cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(op)) + " ") + $thiz.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) }); const $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T = (function($thiz, left, op, right) { return (((((("(" + $thiz.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + " ") + $thiz.binOp__Lio_kaitai_struct_exprlang_Ast$operator__T(op)) + " ") + $thiz.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") }); class $c_Lio_kaitai_struct_translators_CommonSizeOf$ extends $c_O { init___() { return this }; getByteSizeOfClassSpec__Lio_kaitai_struct_format_ClassSpec__I(cs) { const x1 = cs.seqSize$1; if ((!(x1 instanceof $c_Lio_kaitai_struct_format_FixedSized))) { const x = $m_Lio_kaitai_struct_format_DynamicSized$(); if ((x === x1)) { const this$1 = cs.name$1; throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((("unable to derive sizeof for type `" + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", "")) + "`: dynamic sized type")) }; const this$2 = cs.name$1; throw new $c_Lio_kaitai_struct_precompile_InternalCompilerError().init___T((((("internal compiler error: sizeSpec=" + x1) + " for type `") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$2, "", "::", "")) + "`")) }; const x2 = x1; const n = x2.n$1; return this.bitToByteSize__I__I(n) }; bitToByteSize__I__I(bits) { return ((((7 + bits) | 0) / 8) | 0) }; getBitsSizeOfType__T__Lio_kaitai_struct_datatype_DataType__I(typeName, dataType) { let sizeSpec; if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcUserType)) { const x2 = dataType; sizeSpec = x2.classSpec$3.get__O().seqSize$1 } else { sizeSpec = $m_Lio_kaitai_struct_precompile_CalculateSeqSizes$().dataTypeBitsSize__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_Sized(dataType) }; if ((sizeSpec instanceof $c_Lio_kaitai_struct_format_FixedSized)) { const x2$2 = sizeSpec; const n = x2$2.n$1; return n } else { const x = $m_Lio_kaitai_struct_format_DynamicSized$(); if ((x === sizeSpec)) { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((("unable to derive sizeof of `" + typeName) + "`: dynamic sized type")) } else { throw new $c_Lio_kaitai_struct_precompile_InternalCompilerError().init___T((((("internal compiler error: sizeSpec=" + sizeSpec) + " for `") + typeName) + "`")) } } }; } const $d_Lio_kaitai_struct_translators_CommonSizeOf$ = new $TypeData().initClass({ Lio_kaitai_struct_translators_CommonSizeOf$: 0 }, false, "io.kaitai.struct.translators.CommonSizeOf$", { Lio_kaitai_struct_translators_CommonSizeOf$: 1, O: 1 }); $c_Lio_kaitai_struct_translators_CommonSizeOf$.prototype.$classData = $d_Lio_kaitai_struct_translators_CommonSizeOf$; let $n_Lio_kaitai_struct_translators_CommonSizeOf$ = (void 0); const $m_Lio_kaitai_struct_translators_CommonSizeOf$ = (function() { if ((!$n_Lio_kaitai_struct_translators_CommonSizeOf$)) { $n_Lio_kaitai_struct_translators_CommonSizeOf$ = new $c_Lio_kaitai_struct_translators_CommonSizeOf$().init___() }; return $n_Lio_kaitai_struct_translators_CommonSizeOf$ }); class $c_Lio_kaitai_struct_translators_TypeDetector extends $c_O { constructor() { super(); this.provider$1 = null }; detectArrayType__sc_Seq__Lio_kaitai_struct_datatype_DataType(values) { const elem = $m_s_None$(); const t1o = new $c_sr_ObjectRef().init___O(elem); values.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, t1o$1) { return (function(v$2) { const v = v$2; const t2 = $this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(v); const x1 = t1o$1.elem$1; const x = $m_s_None$(); let jsx$1; if ((x === x1)) { jsx$1 = new $c_s_Some().init___O(t2) } else if ((x1 instanceof $c_s_Some)) { const x2 = x1; const t1 = x2.value$2; jsx$1 = new $c_s_Some().init___O($m_Lio_kaitai_struct_translators_TypeDetector$().combineTypesAndFail__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType(t1, t2)) } else { throw new $c_s_MatchError().init___O(x1) }; t1o$1.elem$1 = jsx$1 }) })(this, t1o))); const x1$1 = t1o.elem$1; const x$1 = $m_s_None$(); if ((x$1 === x1$1)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T("empty array literals are not allowed - can't detect array type")) } else if ((x1$1 instanceof $c_s_Some)) { const x2$1 = x1$1; const t = x2$1.value$2; return t } else { throw new $c_s_MatchError().init___O(x1$1) } }; detectCallType__Lio_kaitai_struct_exprlang_Ast$expr$Call__Lio_kaitai_struct_datatype_DataType(call) { const x1 = call.func$1; if ((x1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute)) { const x2 = x1; const obj = x2.value$1; const methodName = x2.attr$1; if ((obj !== null)) { if ((methodName !== null)) { const objType = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(obj); const _2 = methodName.name$1; if (((objType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) && (_2 === "substring"))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcStrType$() } else if (((objType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) && (_2 === "to_i"))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else if (((objType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType) && (_2 === "to_s"))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcStrType$() } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(methodName.name$1, objType) } } } }; throw new $c_s_MatchError().init___O(x1) }; detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(v) { const x1 = this.detectTypeRaw__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(v); if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x2 = x1; return x2.combinedType__Lio_kaitai_struct_datatype_DataType() } else { return x1 } }; init___Lio_kaitai_struct_translators_TypeProvider(provider) { this.provider$1 = provider; return this }; detectAttributeType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_datatype_DataType(value, attr) { const valType = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(value); if ((attr.name$1 === $m_Lio_kaitai_struct_format_Identifier$().SIZEOF$1)) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() }; const x = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); let jsx$1; if ((x === valType)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$1 = (x$3 === valType) }; if (jsx$1) { const x1$2 = attr.name$1; if (($m_Lio_kaitai_struct_format_Identifier$().PARENT$1 === x1$2)) { return $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$() } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(attr.name$1, valType) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x8 = valType; const x1$3 = x8.classSpec$3; if ((x1$3 instanceof $c_s_Some)) { const x2 = x1$3; const tt = x2.value$2; return this.provider$1.determineType__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_datatype_DataType(tt, attr.name$1).asNonOwning__Lio_kaitai_struct_datatype_DataType() } else { const x$5 = $m_s_None$(); if ((x$5 === x1$3)) { throw new $c_Lio_kaitai_struct_precompile_TypeUndecidedError().init___T((((((("expression '" + value) + "' has undecided type '") + x8.name$3) + "' (while asking for attribute '") + attr.name$1) + "')")) } else { throw new $c_s_MatchError().init___O(x1$3) } } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { const x1$4 = attr.name$1; if (((x1$4 === "length") || (x1$4 === "size"))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else if (((x1$4 === "first") || ((x1$4 === "last") || ((x1$4 === "min") || (x1$4 === "max"))))) { return new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(false) } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(attr.name$1, valType) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { const x1$5 = attr.name$1; if ((x1$5 === "length")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else if ((x1$5 === "reverse")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcStrType$() } else if ((x1$5 === "to_i")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(attr.name$1, valType) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x1$6 = attr.name$1; if ((x1$6 === "to_s")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcStrType$() } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(attr.name$1, valType) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatType)) { const x1$7 = attr.name$1; if ((x1$7 === "to_i")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(attr.name$1, valType) } } else if (((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream) || (valType instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType))) { let inType$3; if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream)) { const x2$2 = valType; const inType = x2$2.elType$2; inType$3 = inType } else { if ((!(valType instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType))) { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((("Unexpected type for arrays " + valType) + ".")) }; const x3 = valType; const inType$2 = x3.elType$2; inType$3 = inType$2 }; const x1$9 = attr.name$1; if (((x1$9 === "first") || ((x1$9 === "last") || ((x1$9 === "min") || (x1$9 === "max"))))) { return inType$3 } else if ((x1$9 === "size")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(attr.name$1, valType) } } else { const x$7 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); let jsx$2; if ((x$7 === valType)) { jsx$2 = true } else { const x$9 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); jsx$2 = (x$9 === valType) }; if (jsx$2) { const x1$10 = attr.name$1; if ((x1$10 === "size")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else if ((x1$10 === "pos")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else if ((x1$10 === "eof")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$() } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(attr.name$1, valType) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x1$11 = attr.name$1; if ((x1$11 === "to_i")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(attr.name$1, valType) } } else if ((valType instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { const x1$12 = attr.name$1; if ((x1$12 === "to_i")) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(attr.name$1, valType) } } else { throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError().init___T__Lio_kaitai_struct_datatype_DataType(attr.name$1, valType) } } }; detectTypeRaw__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(v) { if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum)) { const x2 = v; const x = x2.n$1; const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__I__s_math_BigInt(0); let jsx$1; if ($f_s_math_Ordered__$$less__O__Z(x, that)) { jsx$1 = true } else { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__I__s_math_BigInt(255); jsx$1 = $f_s_math_Ordered__$$greater__O__Z(x, that$1) }; if (jsx$1) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else { const this$3 = $m_s_math_BigInt$(); const that$2 = this$3.apply__I__s_math_BigInt(127); if ($f_s_math_Ordered__$$less$eq__O__Z(x, that$2)) { return new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(true) } else { return new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(false) } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum)) { return $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$() }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Str)) { return $m_Lio_kaitai_struct_datatype_DataType$CalcStrType$() }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool)) { return $m_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$() }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel)) { const x9 = v; const enumType = x9.enumName$1; const inType = x9.inType$1; $m_sci_List$(); const array = [enumType.name$1]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$7 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$7); i = (((-1) + i) | 0) }; const t = new $c_Lio_kaitai_struct_datatype_DataType$EnumType().init___sci_List__Lio_kaitai_struct_datatype_DataType$IntType(result, $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$()); t.enumSpec$1 = new $c_s_Some().init___O(this.provider$1.resolveEnum__Lio_kaitai_struct_exprlang_Ast$typeId__T__Lio_kaitai_struct_format_EnumSpec(inType, enumType.name$1)); return t }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById)) { const x11 = v; const enumType$2 = x11.enumName$1; const inType$2 = x11.inType$1; $m_sci_List$(); const array$1 = [enumType$2.name$1]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$11 = result$1; const index$1 = i$1; const x$2 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$11); i$1 = (((-1) + i$1) | 0) }; const t$2 = new $c_Lio_kaitai_struct_datatype_DataType$EnumType().init___sci_List__Lio_kaitai_struct_datatype_DataType$IntType(result$1, $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$()); t$2.enumSpec$1 = new $c_s_Some().init___O(this.provider$1.resolveEnum__Lio_kaitai_struct_exprlang_Ast$typeId__T__Lio_kaitai_struct_format_EnumSpec(inType$2, enumType$2.name$1)); return t$2 }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Name)) { const x13 = v; const name = x13.id$1; if ((name !== null)) { const this$12 = this.provider$1; const attrName = name.name$1; return this$12.determineType__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_datatype_DataType(this$12.nowClass$1, attrName).asNonOwning__Lio_kaitai_struct_datatype_DataType() } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp)) { const x14 = v; const op = x14.op$1; const v$2 = x14.operand$1; if ((op !== null)) { if ((v$2 !== null)) { const t$3 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(v$2); if ((t$3 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { const x4 = t$3; const w = x4.width$3; const x$2$1 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$(); let jsx$2; if ((x$2$1 === op)) { jsx$2 = true } else { const x$4 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$(); jsx$2 = (x$4 === op) }; if ((jsx$2 && (w.width$1 > 4))) { return t$3 } }; let jsx$3; if ((t$3 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x$6 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$(); if ((x$6 === op)) { jsx$3 = true } else { const x$8 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$(); jsx$3 = (x$8 === op) } } else { jsx$3 = false }; if (jsx$3) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() }; let jsx$4; if ((t$3 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatType)) { const x$10 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$(); jsx$4 = (x$10 === op) } else { jsx$4 = false }; if (jsx$4) { return t$3 }; let jsx$5; if ((t$3 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { const x$12 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$(); jsx$5 = (x$12 === op) } else { jsx$5 = false }; if (jsx$5) { return t$3 }; throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((("unable to apply unary operator " + op) + " to ") + t$3)) } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare)) { const x15 = v; const left = x15.left$1; const op$2 = x15.ops$1; const right = x15.right$1; if ((left !== null)) { if ((op$2 !== null)) { if ((right !== null)) { const ltype = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const rtype = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); $m_Lio_kaitai_struct_translators_TypeDetector$().assertCompareTypes__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$cmpop__V(ltype, rtype, op$2); return $m_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$() } } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BinOp)) { const x16 = v; const left$2 = x16.left$1; const op$3 = x16.op$1; const right$2 = x16.right$1; if ((left$2 !== null)) { if ((op$3 !== null)) { if ((right$2 !== null)) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left$2); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right$2); if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } else if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$() } else { let jsx$6; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { const x$14 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Add$(); jsx$6 = (x$14 === op$3) } else { jsx$6 = false } } else { jsx$6 = false }; if (jsx$6) { return $m_Lio_kaitai_struct_datatype_DataType$CalcStrType$() } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((((("can't apply operator " + op$3) + " to ") + _1) + " and ") + _2)) } } } } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp)) { const x17 = v; const op$4 = x17.op$1; const values = x17.values$1; if ((op$4 !== null)) { if ((values !== null)) { values.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, x37) { return (function(v$3$2) { const v$3 = v$3$2; const t$1 = $this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(v$3); if ((!(t$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType))) { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((((("unable to use " + t$1) + " argument in ") + x37) + " boolean expression")) } }) })(this, op$4))); return $m_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$() } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IfExp)) { const x18 = v; const condition = x18.condition$1; const ifTrue = x18.ifTrue$1; const ifFalse = x18.ifFalse$1; if ((condition !== null)) { if ((ifTrue !== null)) { if ((ifFalse !== null)) { const x1$4 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(condition); if ((x1$4 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { const trueType = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(ifTrue); const falseType = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(ifFalse); return $m_Lio_kaitai_struct_translators_TypeDetector$().combineTypesAndFail__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType(trueType, falseType) } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(("unable to switch over " + x1$4)) } } } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Subscript)) { const x19 = v; const container = x19.value$1; const idx = x19.idx$1; if ((container !== null)) { if ((idx !== null)) { const x1$5 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(container); let jsx$7; matchEnd8: { if ((x1$5 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream)) { const x2$2 = x1$5; const elType = x2$2.elType$2; if ((elType !== null)) { const x1$6 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(idx); if ((!(x1$6 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType))) { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(("unable to index an array using " + x1$6)) }; jsx$7 = elType; break matchEnd8 } }; if ((x1$5 instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType)) { const x3 = x1$5; const elType$2 = x3.elType$2; if ((elType$2 !== null)) { const x1$7 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(idx); if ((!(x1$7 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType))) { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(("unable to index an array using " + x1$7)) }; jsx$7 = elType$2; break matchEnd8 } }; if ((x1$5 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { jsx$7 = new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(false); break matchEnd8 }; throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(("unable to apply operation [] to " + x1$5)) }; return jsx$7.asNonOwning__Lio_kaitai_struct_datatype_DataType() } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute)) { const x20 = v; const value = x20.value$1; const attr = x20.attr$1; if ((value !== null)) { if ((attr !== null)) { return this.detectAttributeType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_datatype_DataType(value, attr).asNonOwning__Lio_kaitai_struct_datatype_DataType() } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Call)) { const x46 = v; return this.detectCallType__Lio_kaitai_struct_exprlang_Ast$expr$Call__Lio_kaitai_struct_datatype_DataType(x46).asNonOwning__Lio_kaitai_struct_datatype_DataType() }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$List)) { const x21 = v; const values$2 = x21.elts$1; if ((values$2 !== null)) { const x1$8 = this.detectArrayType__sc_Seq__Lio_kaitai_struct_datatype_DataType(values$2); return ((x1$8 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type) ? $m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$() : new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(x1$8)) } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$CastToType)) { const x22 = v; const typeName = x22.typeName$1; return this.detectCastType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName) }; if (((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType) || (v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() }; throw new $c_s_MatchError().init___O(v) }; detectCastType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName) { let singleType; if (((!typeName.absolute$1) && (typeName.names$1.size__I() === 1))) { const x1 = $m_Lio_kaitai_struct_datatype_DataType$().pureFromString__s_Option__Lio_kaitai_struct_datatype_DataType(new $c_s_Some().init___O(typeName.names$1.apply__I__O(0))); singleType = ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType) ? this.provider$1.resolveType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName) : x1) } else { singleType = this.provider$1.resolveType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName) }; return (typeName.isArray$1 ? new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(singleType) : singleType) }; } const $isArrayOf_Lio_kaitai_struct_translators_TypeDetector = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_translators_TypeDetector))) }); const $d_Lio_kaitai_struct_translators_TypeDetector = new $TypeData().initClass({ Lio_kaitai_struct_translators_TypeDetector: 0 }, false, "io.kaitai.struct.translators.TypeDetector", { Lio_kaitai_struct_translators_TypeDetector: 1, O: 1 }); $c_Lio_kaitai_struct_translators_TypeDetector.prototype.$classData = $d_Lio_kaitai_struct_translators_TypeDetector; class $c_Lio_kaitai_struct_translators_TypeDetector$ extends $c_O { init___() { return this }; combineTypesAndFail__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType(t1, t2) { const x$2 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); let jsx$1; if (((t1 !== null) && t1.equals__O__Z(x$2))) { jsx$1 = true } else { const x$4 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); jsx$1 = ((t2 !== null) && t2.equals__O__Z(x$4)) }; if (jsx$1) { return $m_Lio_kaitai_struct_datatype_DataType$AnyType$() } else { const x1 = this.combineTypes__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType(t1, t2); const x$5 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); if ((x$5 === x1)) { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((("can't combine output types: " + t1) + " vs ") + t2)) } else { return x1 } } }; canAssign__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Z(src, dst) { _canAssign: while (true) { const x$2 = src; const x$3 = dst; if (((x$2 === null) ? (x$3 === null) : x$2.equals__O__Z(x$3))) { return true } else { const _1 = src; const _2 = dst; const x$4 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); if ((x$4 === _2)) { return true }; if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType))) { return true }; if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatType))) { return true }; if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { return true }; if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType))) { return true }; if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType))) { return true }; let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x$6 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); jsx$1 = (x$6 === _2) } else { jsx$1 = false }; if (jsx$1) { return true }; let jsx$2; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x$8 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$2 = (x$8 === _2) } else { jsx$2 = false }; if (jsx$2) { return true }; const x$10 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); let jsx$3; if ((x$10 === _1)) { const x$12 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$3 = (x$12 === _2) } else { jsx$3 = false }; if (jsx$3) { return true }; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x39 = _1; if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x40 = _2; const _1$1 = x39.classSpec$3; const _2$1 = x40.classSpec$3; const x$14 = $m_s_None$(); let jsx$4; if ((x$14 === _1$1)) { const x$16 = $m_s_None$(); jsx$4 = (x$16 === _2$1) } else { jsx$4 = false }; if (jsx$4) { const x$18 = x39.name$3; const x$19 = x40.name$3; return ((x$18 === null) ? (x$19 === null) : x$18.equals__O__Z(x$19)) }; if ((_1$1 instanceof $c_s_Some)) { const x6 = _1$1; const cs1 = x6.value$2; if ((_2$1 instanceof $c_s_Some)) { const x7 = _2$1; const cs2 = x7.value$2; return ((cs1 === null) ? (cs2 === null) : cs1.equals__O__Z(cs2)) } }; return false } }; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x41 = _1; if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x42 = _2; return $m_sr_BoxesRunTime$().equals__O__O__Z(x41.enumSpec$1.get__O(), x42.enumSpec$1.get__O()) } }; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x43 = _1; if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x44 = _2; const temp$src = x43.elType$2; const temp$dst = x44.elType$2; src = temp$src; dst = temp$dst; continue _canAssign } }; return false } } }; combineTypes__sc_Iterable__Lio_kaitai_struct_datatype_DataType(types) { return types.reduceLeft__F2__O(new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(t1$2, t2$2) { const t1 = t1$2; const t2 = t2$2; return $m_Lio_kaitai_struct_translators_TypeDetector$().combineTypes__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType(t1, t2) }) })(this))) }; assertCompareTypes__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$cmpop__V(ltype, rtype, op) { matchEnd21: { if (((ltype instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) && (rtype instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType))) { break matchEnd21 }; if (((ltype instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType) && (rtype instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType))) { break matchEnd21 }; if (((ltype instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType) && (rtype instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType))) { break matchEnd21 }; if (((ltype instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType) && (rtype instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { break matchEnd21 }; if ((ltype instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x18 = ltype; if ((rtype instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x19 = rtype; const et1Spec = x18.enumSpec$1.get__O(); const et2Spec = x19.enumSpec$1.get__O(); if ((!((et1Spec === null) ? (et2Spec === null) : et1Spec.equals__O__Z(et2Spec)))) { const this$1 = et1Spec.name$1; const jsx$1 = $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", ""); const this$2 = et2Spec.name$1; throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((((("can't compare different enums '" + jsx$1) + "' and '") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$2, "", "::", "")) + "'")) }; const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(); let jsx$2; if ((x$3 === op)) { jsx$2 = true } else { const x$5 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$(); jsx$2 = (x$5 === op) }; if ((!jsx$2)) { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((("can't use comparison operator " + op) + " on enums")) }; break matchEnd21 } }; throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((("can't compare " + ltype) + " and ") + rtype)) } }; combineTypes__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType(t1, t2) { if (((t1 === null) ? (t2 === null) : t1.equals__O__Z(t2))) { return t1 } else { if ((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { const x4 = t1; const p5 = x4.signed$3; if (((p5 === false) && (t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type))) { const x6 = t2; const p7 = x6.signed$3; if ((p7 === true)) { return new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(false) } } }; if ((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { const x10 = t1; const p11 = x10.signed$3; if (((p11 === true) && (t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type))) { const x12 = t2; const p13 = x12.signed$3; if ((p13 === false)) { return new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(false) } } }; if (((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type) && (t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType))) { return t2 }; if (((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType) && (t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type))) { return t1 }; if ((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { const x38 = t1; if ((t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { const x39 = t2; const x$3 = x38.endian$3; const x$4 = x39.endian$3; if ((((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) && (x38.signed$3 === x39.signed$3))) { const width = ((x38.width$3.width$1 > x39.width$3.width$1) ? x38.width$3 : x39.width$3); return new $c_Lio_kaitai_struct_datatype_DataType$IntMultiType().init___Z__Lio_kaitai_struct_datatype_DataType$IntWidth__s_Option(x38.signed$3, width, x38.endian$3) } else { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() } } }; if (((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType) && (t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() }; if (((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType) && (t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$() }; if (((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType) && (t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$() }; if (((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType) && (t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$() }; if (((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) && (t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType))) { return $m_Lio_kaitai_struct_datatype_DataType$CalcStrType$() }; if ((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x50 = t1; if ((t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x51 = t2; const _1 = x50.classSpec$3; const _2 = x51.classSpec$3; const x$5 = $m_s_None$(); let jsx$1; if ((x$5 === _1)) { const x$7 = $m_s_None$(); jsx$1 = (x$7 === _2) } else { jsx$1 = false }; if (jsx$1) { const x$9 = x50.name$3; const x$10 = x51.name$3; if (((x$9 === null) ? (x$10 === null) : x$9.equals__O__Z(x$10))) { return x50 } else { return ((x50.isOwning__Z() || x51.isOwning__Z()) ? $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$() : $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$()) } }; if ((_1 instanceof $c_s_Some)) { const x6$2 = _1; const cs1 = x6$2.value$2; if ((_2 instanceof $c_s_Some)) { const x7 = _2; const cs2 = x7.value$2; return (((cs1 === null) ? (cs2 === null) : cs1.equals__O__Z(cs2)) ? x50 : ((x50.isOwning__Z() || x51.isOwning__Z()) ? $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$() : $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$())) } }; return ((x50.isOwning__Z() || x51.isOwning__Z()) ? $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$() : $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$()) } }; if ((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StructType)) { const x52 = t1; if ((t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$StructType)) { const x53 = t2; return ((x52.isOwning__Z() || x53.isOwning__Z()) ? $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$() : $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$()) } }; if ((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x54 = t1; if ((t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x55 = t2; if ($m_sr_BoxesRunTime$().equals__O__O__Z(x54.enumSpec$1.get__O(), x55.enumSpec$1.get__O())) { const t = new $c_Lio_kaitai_struct_datatype_DataType$EnumType().init___sci_List__Lio_kaitai_struct_datatype_DataType$IntType(x54.name$1, $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$()); t.enumSpec$1 = x54.enumSpec$1; return t } else { return $m_Lio_kaitai_struct_datatype_DataType$AnyType$() } } }; if ((t1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x56 = t1; if ((t2 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x57 = t2; return new $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType().init___Lio_kaitai_struct_datatype_DataType(this.combineTypesAndFail__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType(x56.elType$2, x57.elType$2)) } }; return $m_Lio_kaitai_struct_datatype_DataType$AnyType$() } }; } const $d_Lio_kaitai_struct_translators_TypeDetector$ = new $TypeData().initClass({ Lio_kaitai_struct_translators_TypeDetector$: 0 }, false, "io.kaitai.struct.translators.TypeDetector$", { Lio_kaitai_struct_translators_TypeDetector$: 1, O: 1 }); $c_Lio_kaitai_struct_translators_TypeDetector$.prototype.$classData = $d_Lio_kaitai_struct_translators_TypeDetector$; let $n_Lio_kaitai_struct_translators_TypeDetector$ = (void 0); const $m_Lio_kaitai_struct_translators_TypeDetector$ = (function() { if ((!$n_Lio_kaitai_struct_translators_TypeDetector$)) { $n_Lio_kaitai_struct_translators_TypeDetector$ = new $c_Lio_kaitai_struct_translators_TypeDetector$().init___() }; return $n_Lio_kaitai_struct_translators_TypeDetector$ }); const $is_Ljava_io_Closeable = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Ljava_io_Closeable))) }); const $isArrayOf_Ljava_io_Closeable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_io_Closeable))) }); class $c_Ljava_math_BigInteger$QuotAndRem extends $c_O { constructor() { super(); this.quot$1 = null; this.rem$1 = null }; toArray__ALjava_math_BigInteger() { return $makeNativeArrayWrapper($d_Ljava_math_BigInteger.getArrayOf(), [this.quot$1, this.rem$1]) }; init___Ljava_math_BigInteger__Ljava_math_BigInteger(quot, rem) { this.quot$1 = quot; this.rem$1 = rem; return this }; } const $d_Ljava_math_BigInteger$QuotAndRem = new $TypeData().initClass({ Ljava_math_BigInteger$QuotAndRem: 0 }, false, "java.math.BigInteger$QuotAndRem", { Ljava_math_BigInteger$QuotAndRem: 1, O: 1 }); $c_Ljava_math_BigInteger$QuotAndRem.prototype.$classData = $d_Ljava_math_BigInteger$QuotAndRem; class $c_Ljava_math_BitLevel$ extends $c_O { init___() { return this }; shiftLeftOneBit__AI__AI__I__V(result, source, srcLen) { let elem$1 = 0; elem$1 = 0; let i = 0; while ((i < srcLen)) { const arg1 = i; const iVal = source.u[arg1]; result.u[arg1] = ((iVal << 1) | elem$1); elem$1 = ((iVal >>> 31) | 0); i = ((1 + i) | 0) }; if ((elem$1 !== 0)) { result.u[srcLen] = elem$1 } }; shiftLeft__Ljava_math_BigInteger__I__Ljava_math_BigInteger(source, count) { const intCount = (count >> 5); const andCount = (31 & count); const offset = ((andCount === 0) ? 0 : 1); const resLength = ((((source.numberLength$2 + intCount) | 0) + offset) | 0); const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); this.shiftLeft__AI__AI__I__I__V(resDigits, source.digits$2, intCount, andCount); const result = new $c_Ljava_math_BigInteger().init___I__I__AI(source.sign$2, resLength, resDigits); result.cutOffLeadingZeroes__V(); return result }; shiftRight__Ljava_math_BigInteger__I__Ljava_math_BigInteger(source, count) { const intCount = (count >> 5); const andCount = (31 & count); if ((intCount >= source.numberLength$2)) { return ((source.sign$2 < 0) ? $m_Ljava_math_BigInteger$().MINUS$undONE$1 : $m_Ljava_math_BigInteger$().ZERO$1) } else { let resLength = ((source.numberLength$2 - intCount) | 0); const resDigits = $newArrayObject($d_I.getArrayOf(), [((1 + resLength) | 0)]); this.shiftRight__AI__I__AI__I__I__Z(resDigits, resLength, source.digits$2, intCount, andCount); if ((source.sign$2 < 0)) { let i = 0; while (((i < intCount) && (source.digits$2.u[i] === 0))) { i = ((1 + i) | 0) }; const cmp = ((source.digits$2.u[i] << ((32 - andCount) | 0)) !== 0); if (((i < intCount) || ((andCount > 0) && cmp))) { i = 0; while (((i < resLength) && (resDigits.u[i] === (-1)))) { resDigits.u[i] = 0; i = ((1 + i) | 0) }; if ((i === resLength)) { resLength = ((1 + resLength) | 0) }; const ev$1 = i; resDigits.u[ev$1] = ((1 + resDigits.u[ev$1]) | 0) } }; const result = new $c_Ljava_math_BigInteger().init___I__I__AI(source.sign$2, resLength, resDigits); result.cutOffLeadingZeroes__V(); return result } }; shiftLeftOneBit__Ljava_math_BigInteger__Ljava_math_BigInteger(source) { const srcLen = source.numberLength$2; const resLen = ((1 + srcLen) | 0); const resDigits = $newArrayObject($d_I.getArrayOf(), [resLen]); this.shiftLeftOneBit__AI__AI__I__V(resDigits, source.digits$2, srcLen); const result = new $c_Ljava_math_BigInteger().init___I__I__AI(source.sign$2, resLen, resDigits); result.cutOffLeadingZeroes__V(); return result }; bitLength__Ljava_math_BigInteger__I(bi) { if ((bi.sign$2 === 0)) { return 0 } else { let bLength = (bi.numberLength$2 << 5); let highDigit = bi.digits$2.u[(((-1) + bi.numberLength$2) | 0)]; if ((bi.sign$2 < 0)) { const i = bi.getFirstNonzeroDigit__I(); if ((i === (((-1) + bi.numberLength$2) | 0))) { highDigit = (((-1) + highDigit) | 0) } }; bLength = ((bLength - $clz32(highDigit)) | 0); return bLength } }; shiftRight__AI__I__AI__I__I__Z(result, resultLen, source, intCount, count) { let i = 0; let allZero = true; while ((i < intCount)) { allZero = (!(!(allZero & (source.u[i] === 0)))); i = ((1 + i) | 0) }; if ((count === 0)) { $systemArraycopy(source, intCount, result, 0, resultLen) } else { const leftShiftCount = ((32 - count) | 0); allZero = (!(!(allZero & ((source.u[i] << leftShiftCount) === 0)))); i = 0; while ((i < (((-1) + resultLen) | 0))) { result.u[i] = (((source.u[((i + intCount) | 0)] >>> count) | 0) | (source.u[((1 + ((i + intCount) | 0)) | 0)] << leftShiftCount)); i = ((1 + i) | 0) }; result.u[i] = ((source.u[((i + intCount) | 0)] >>> count) | 0); i = ((1 + i) | 0) }; return allZero }; shiftLeft__AI__AI__I__I__V(result, source, intCount, count) { if ((count === 0)) { $systemArraycopy(source, 0, result, intCount, ((result.u.length - intCount) | 0)) } else { const rightShiftCount = ((32 - count) | 0); result.u[(((-1) + result.u.length) | 0)] = 0; let i = (((-1) + result.u.length) | 0); while ((i > intCount)) { const ev$1 = i; result.u[ev$1] = (result.u[ev$1] | ((source.u[(((-1) + ((i - intCount) | 0)) | 0)] >>> rightShiftCount) | 0)); result.u[(((-1) + i) | 0)] = (source.u[(((-1) + ((i - intCount) | 0)) | 0)] << count); i = (((-1) + i) | 0) } }; let i$1 = 0; while ((i$1 < intCount)) { const arg1 = i$1; result.u[arg1] = 0; i$1 = ((1 + i$1) | 0) } }; } const $d_Ljava_math_BitLevel$ = new $TypeData().initClass({ Ljava_math_BitLevel$: 0 }, false, "java.math.BitLevel$", { Ljava_math_BitLevel$: 1, O: 1 }); $c_Ljava_math_BitLevel$.prototype.$classData = $d_Ljava_math_BitLevel$; let $n_Ljava_math_BitLevel$ = (void 0); const $m_Ljava_math_BitLevel$ = (function() { if ((!$n_Ljava_math_BitLevel$)) { $n_Ljava_math_BitLevel$ = new $c_Ljava_math_BitLevel$().init___() }; return $n_Ljava_math_BitLevel$ }); class $c_Ljava_math_Conversion$ extends $c_O { constructor() { super(); this.DigitFitInInt$1 = null; this.BigRadices$1 = null }; init___() { $n_Ljava_math_Conversion$ = this; this.DigitFitInInt$1 = $makeNativeArrayWrapper($d_I.getArrayOf(), [(-1), (-1), 31, 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]); this.BigRadices$1 = $makeNativeArrayWrapper($d_I.getArrayOf(), [(-2147483648), 1162261467, 1073741824, 1220703125, 362797056, 1977326743, 1073741824, 387420489, 1000000000, 214358881, 429981696, 815730721, 1475789056, 170859375, 268435456, 410338673, 612220032, 893871739, 1280000000, 1801088541, 113379904, 148035889, 191102976, 244140625, 308915776, 387420489, 481890304, 594823321, 729000000, 887503681, 1073741824, 1291467969, 1544804416, 1838265625, 60466176]); return this }; toDecimalScaledString__J__I__T(value, scale) { if (((value.lo$2 === 0) && (value.hi$2 === 0))) { switch (scale) { case 0: { return "0"; break } case 1: { return "0.0"; break } case 2: { return "0.00"; break } case 3: { return "0.000"; break } case 4: { return "0.0000"; break } case 5: { return "0.00000"; break } case 6: { return "0.000000"; break } default: { let scaleVal; if ((scale === (-2147483648))) { scaleVal = "2147483648" } else { const i = ((-scale) | 0); scaleVal = ("" + i) }; const result = ((scale < 0) ? "0E+" : "0E"); return (result + scaleVal) } } } else { const ahi = value.hi$2; const negNumber = (ahi < 0); let elem$1 = null; elem$1 = ""; let currentChar = 18; let t; if (negNumber) { const lo = value.lo$2; const hi = value.hi$2; const lo$1 = ((-lo) | 0); const hi$1 = ((lo !== 0) ? (~hi) : ((-hi) | 0)); const x_$_lo$2 = lo$1; const x_$_hi$2 = hi$1; t = new $c_sjsr_RuntimeLong().init___I__I(x_$_lo$2, x_$_hi$2) } else { t = value }; const lo$2 = t.lo$2; const hi$2 = t.hi$2; let v_$_lo$2 = lo$2; let v_$_hi$2 = hi$2; while (true) { const prev_$_lo$2 = v_$_lo$2; const prev_$_hi$2 = v_$_hi$2; const this$5_$_lo$2 = v_$_lo$2; const this$5_$_hi$2 = v_$_hi$2; const this$6 = $m_sjsr_RuntimeLong$(); const lo$3 = this$6.divideImpl__I__I__I__I__I(this$5_$_lo$2, this$5_$_hi$2, 10, 0); const hi$3 = this$6.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const jsx$1_$_lo$2 = lo$3; const jsx$1_$_hi$2 = hi$3; v_$_lo$2 = jsx$1_$_lo$2; v_$_hi$2 = jsx$1_$_hi$2; currentChar = (((-1) + currentChar) | 0); const b_$_lo$2 = v_$_lo$2; const b_$_hi$2 = v_$_hi$2; const blo = b_$_lo$2; const b0 = (65535 & blo); const b1 = ((blo >>> 16) | 0); const a0b0 = $imul(10, b0); const a0b1 = $imul(10, b1); const lo$4 = ((a0b0 + (a0b1 << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$4 = (($imul(10, b_$_hi$2) + ((c1part >>> 16) | 0)) | 0); const alo = prev_$_lo$2; const ahi$1 = prev_$_hi$2; const lo$5 = ((alo - lo$4) | 0); elem$1 = (("" + lo$5) + elem$1); const this$9_$_lo$2 = v_$_lo$2; const this$9_$_hi$2 = v_$_hi$2; if ((!((this$9_$_lo$2 === 0) && (this$9_$_hi$2 === 0)))) { /**/ } else { break } }; const exponent = (((-1) + ((((18 - currentChar) | 0) - scale) | 0)) | 0); if (((scale > 0) && (exponent >= (-6)))) { const index = ((1 + exponent) | 0); if ((index > 0)) { const thiz = elem$1; const jsx$2 = thiz.substring(0, index); const thiz$1 = elem$1; elem$1 = ((jsx$2 + ".") + thiz$1.substring(index)) } else { const end = ((-index) | 0); let i$1 = 0; while ((i$1 < end)) { const arg1 = i$1; elem$1 = ("0" + elem$1); i$1 = ((1 + i$1) | 0) }; elem$1 = ("0." + elem$1) } } else if ((scale !== 0)) { let result1 = ("" + exponent); if ((exponent > 0)) { result1 = ("+" + result1) }; result1 = ("E" + result1); if ((((18 - currentChar) | 0) > 1)) { const thiz$2 = elem$1; const jsx$3 = thiz$2.substring(0, 1); const thiz$3 = elem$1; elem$1 = (((jsx$3 + ".") + thiz$3.substring(1)) + result1) } else { elem$1 = (("" + elem$1) + result1) } }; return (negNumber ? ("-" + elem$1) : elem$1) } }; dropLeadingZeros__p1__T__T(s) { let zeroPrefixLength = 0; const len = (s.length | 0); while (true) { let jsx$1; if ((zeroPrefixLength < len)) { const index = zeroPrefixLength; jsx$1 = ((65535 & (s.charCodeAt(index) | 0)) === 48) } else { jsx$1 = false }; if (jsx$1) { zeroPrefixLength = ((1 + zeroPrefixLength) | 0) } else { break } }; const beginIndex = zeroPrefixLength; return s.substring(beginIndex) }; toDecimalScaledString__Ljava_math_BigInteger__T(bi) { const sign = bi.sign$2; const numberLength = bi.numberLength$2; const digits = bi.digits$2; if ((sign === 0)) { return "0" } else if ((numberLength === 1)) { const i = digits.u[0]; const x = (+(i >>> 0)); const absStr = x.toString(10); return ((sign < 0) ? ("-" + absStr) : absStr) } else { let result = ""; const temp = $newArrayObject($d_I.getArrayOf(), [numberLength]); let tempLen = numberLength; $systemArraycopy(digits, 0, temp, 0, tempLen); do { let rem = 0; let i$1 = (((-1) + tempLen) | 0); while ((i$1 >= 0)) { const value = rem; const value$1 = temp.u[i$1]; const this$6 = $m_sjsr_RuntimeLong$(); const lo = this$6.divideUnsignedImpl__I__I__I__I__I(value$1, value, 1000000000, 0); temp.u[i$1] = lo; const hi$3 = (lo >> 31); const b0 = (65535 & lo); const b1 = ((lo >>> 16) | 0); const a0b0 = $imul(51712, b0); const a1b0 = $imul(15258, b0); const a0b1 = $imul(51712, b1); const lo$1 = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$4 = (((((($imul(1000000000, hi$3) + $imul(15258, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const lo$2 = ((value$1 - lo$1) | 0); rem = lo$2; i$1 = (((-1) + i$1) | 0) }; const this$8 = rem; const remStr = ("" + this$8); const beginIndex = (remStr.length | 0); const padding = "000000000".substring(beginIndex); result = ((padding + remStr) + result); while (((tempLen !== 0) && (temp.u[(((-1) + tempLen) | 0)] === 0))) { tempLen = (((-1) + tempLen) | 0) } } while ((tempLen !== 0)); result = this.dropLeadingZeros__p1__T__T(result); return ((sign < 0) ? ("-" + result) : result) } }; bigInteger2String__Ljava_math_BigInteger__I__T(bi, radix) { const sign = bi.sign$2; const numberLength = bi.numberLength$2; const digits = bi.digits$2; const radixOutOfBounds = ((radix < 2) || (radix > 36)); if ((sign === 0)) { return "0" } else if ((numberLength === 1)) { const highDigit = digits.u[(((-1) + numberLength) | 0)]; let v_$_lo$2 = highDigit; let v_$_hi$2 = 0; if ((sign < 0)) { const this$1_$_lo$2 = v_$_lo$2; const this$1_$_hi$2 = v_$_hi$2; const lo = this$1_$_lo$2; const hi$1 = this$1_$_hi$2; const lo$1 = ((-lo) | 0); const hi$2 = ((lo !== 0) ? (~hi$1) : ((-hi$1) | 0)); const jsx$1_$_lo$2 = lo$1; const jsx$1_$_hi$2 = hi$2; v_$_lo$2 = jsx$1_$_lo$2; v_$_hi$2 = jsx$1_$_hi$2 }; const this$4 = $m_jl_Long$(); const i_$_lo$2 = v_$_lo$2; const i_$_hi$2 = v_$_hi$2; return ((((radix === 10) || (radix < 2)) || (radix > 36)) ? $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toString__I__I__T(i_$_lo$2, i_$_hi$2) : this$4.java$lang$Long$$toStringImpl__J__I__T(new $c_sjsr_RuntimeLong().init___I__I(i_$_lo$2, i_$_hi$2), radix)) } else if (((radix === 10) || radixOutOfBounds)) { return $m_Ljava_math_Conversion$().toDecimalScaledString__Ljava_math_BigInteger__T(bi) } else { let bitsForRadixDigit = 0.0; bitsForRadixDigit = ((+$g.Math.log(radix)) / (+$g.Math.log(2.0))); const addForSign = ((sign < 0) ? 1 : 0); const this$7 = bi.abs__Ljava_math_BigInteger(); const biAbsLen = $m_Ljava_math_BitLevel$().bitLength__Ljava_math_BigInteger__I(this$7); const resLenInChars = ((1 + $doubleToInt(((biAbsLen / bitsForRadixDigit) + addForSign))) | 0); let elem$1 = null; elem$1 = ""; let elem$1$1 = 0; elem$1$1 = resLenInChars; let elem$1$2 = 0; elem$1$2 = 0; if ((radix !== 16)) { const temp = $newArrayObject($d_I.getArrayOf(), [numberLength]); $systemArraycopy(digits, 0, temp, 0, numberLength); let elem$1$3 = 0; elem$1$3 = numberLength; const charsPerInt = this.DigitFitInInt$1.u[radix]; const bigRadix = this.BigRadices$1.u[(((-2) + radix) | 0)]; _loop: while (true) { elem$1$2 = $m_Ljava_math_Division$().divideArrayByInt__AI__AI__I__I__I(temp, temp, elem$1$3, bigRadix); const previous = elem$1$1; _innerLoop: while (true) { elem$1$1 = (((-1) + elem$1$1) | 0); const c = $m_jl_Character$().forDigit__I__I__C(((elem$1$2 % radix) | 0), radix); elem$1 = (("" + $g.String.fromCharCode(c)) + elem$1); elem$1$2 = ((elem$1$2 / radix) | 0); if (((elem$1$2 !== 0) && (elem$1$1 !== 0))) { continue _innerLoop }; break }; const delta = ((((charsPerInt - previous) | 0) + elem$1$1) | 0); let i$1 = 0; while (((i$1 < delta) && (elem$1$1 > 0))) { elem$1$1 = (((-1) + elem$1$1) | 0); elem$1 = ("0" + elem$1); i$1 = ((1 + i$1) | 0) }; i$1 = (((-1) + elem$1$3) | 0); while (((i$1 > 0) && (temp.u[i$1] === 0))) { i$1 = (((-1) + i$1) | 0) }; elem$1$3 = ((1 + i$1) | 0); if ((!((elem$1$3 === 1) && (temp.u[0] === 0)))) { continue _loop }; break } } else { let i$2 = 0; while ((i$2 < numberLength)) { const arg1 = i$2; let j = 0; while (((j < 8) && (elem$1$1 > 0))) { elem$1$2 = (15 & (digits.u[arg1] >> (j << 2))); elem$1$1 = (((-1) + elem$1$1) | 0); const i$3 = elem$1$2; const x = (+(i$3 >>> 0)); const jsx$2 = x.toString(16); elem$1 = (("" + jsx$2) + elem$1); j = ((1 + j) | 0) }; i$2 = ((1 + i$2) | 0) } }; let dropLen = 0; while (true) { const thiz = elem$1; const index = dropLen; if (((65535 & (thiz.charCodeAt(index) | 0)) === 48)) { dropLen = ((1 + dropLen) | 0) } else { break } }; if ((dropLen !== 0)) { const thiz$1 = elem$1; const beginIndex = dropLen; elem$1 = thiz$1.substring(beginIndex) }; return ((sign === (-1)) ? ("-" + elem$1) : elem$1) } }; } const $d_Ljava_math_Conversion$ = new $TypeData().initClass({ Ljava_math_Conversion$: 0 }, false, "java.math.Conversion$", { Ljava_math_Conversion$: 1, O: 1 }); $c_Ljava_math_Conversion$.prototype.$classData = $d_Ljava_math_Conversion$; let $n_Ljava_math_Conversion$ = (void 0); const $m_Ljava_math_Conversion$ = (function() { if ((!$n_Ljava_math_Conversion$)) { $n_Ljava_math_Conversion$ = new $c_Ljava_math_Conversion$().init___() }; return $n_Ljava_math_Conversion$ }); class $c_Ljava_math_Division$ extends $c_O { init___() { return this }; divide__AI__I__AI__I__AI__I__AI(quot, quotLength, a, aLength, b, bLength) { const normA = $newArrayObject($d_I.getArrayOf(), [((1 + aLength) | 0)]); const normB = $newArrayObject($d_I.getArrayOf(), [((1 + bLength) | 0)]); const divisorShift = $clz32(b.u[(((-1) + bLength) | 0)]); if ((divisorShift !== 0)) { $m_Ljava_math_BitLevel$().shiftLeft__AI__AI__I__I__V(normB, b, 0, divisorShift); $m_Ljava_math_BitLevel$().shiftLeft__AI__AI__I__I__V(normA, a, 0, divisorShift) } else { $systemArraycopy(a, 0, normA, 0, aLength); $systemArraycopy(b, 0, normB, 0, bLength) }; const firstDivisorDigit = normB.u[(((-1) + bLength) | 0)]; let i = (((-1) + quotLength) | 0); let elem$1 = 0; elem$1 = aLength; while ((i >= 0)) { let elem$1$1 = 0; elem$1$1 = 0; if ((normA.u[elem$1] === firstDivisorDigit)) { elem$1$1 = (-1) } else { const value = normA.u[elem$1]; const value$1 = normA.u[(((-1) + elem$1) | 0)]; const this$4 = $m_sjsr_RuntimeLong$(); const lo = this$4.divideUnsignedImpl__I__I__I__I__I(value$1, value, firstDivisorDigit, 0); const hi$3 = this$4.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; elem$1$1 = lo; const a0 = (65535 & lo); const a1 = ((lo >>> 16) | 0); const b0 = (65535 & firstDivisorDigit); const b1 = ((firstDivisorDigit >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo$1 = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$4 = (((((($imul(hi$3, firstDivisorDigit) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const lo$2 = ((value$1 - lo$1) | 0); let elem$1$2 = 0; elem$1$2 = lo$2; if ((elem$1$1 !== 0)) { elem$1$1 = ((1 + elem$1$1) | 0); _loop: while (true) { elem$1$1 = (((-1) + elem$1$1) | 0); const value$2 = elem$1$1; const value$3 = normB.u[(((-2) + bLength) | 0)]; const a0$1 = (65535 & value$2); const a1$1 = ((value$2 >>> 16) | 0); const b0$1 = (65535 & value$3); const b1$1 = ((value$3 >>> 16) | 0); const a0b0$1 = $imul(a0$1, b0$1); const a1b0$1 = $imul(a1$1, b0$1); const a0b1$1 = $imul(a0$1, b1$1); const lo$3 = ((a0b0$1 + (((a1b0$1 + a0b1$1) | 0) << 16)) | 0); const c1part$1 = ((((a0b0$1 >>> 16) | 0) + a0b1$1) | 0); const hi$8 = (((($imul(a1$1, b1$1) + ((c1part$1 >>> 16) | 0)) | 0) + (((((65535 & c1part$1) + a1b0$1) | 0) >>> 16) | 0)) | 0); const value$4 = elem$1$2; const value$5 = normA.u[(((-2) + elem$1) | 0)]; const value$6 = elem$1$2; const lo$4 = ((value$6 + firstDivisorDigit) | 0); const hi$13 = ((((-2147483648) ^ lo$4) < ((-2147483648) ^ value$6)) ? 1 : 0); if ((hi$13 === 0)) { elem$1$2 = lo$4; const hi$14 = ((-2147483648) ^ hi$8); const hi$15 = ((-2147483648) ^ value$4); if (((hi$14 === hi$15) ? (((-2147483648) ^ lo$3) > ((-2147483648) ^ value$5)) : (hi$14 > hi$15))) { continue _loop } }; break } } }; if ((elem$1$1 !== 0)) { const borrow = $m_Ljava_math_Division$().multiplyAndSubtract__AI__I__AI__I__I__I(normA, ((elem$1 - bLength) | 0), normB, bLength, elem$1$1); if ((borrow !== 0)) { elem$1$1 = (((-1) + elem$1$1) | 0); let elem$1$3_$_lo$2 = 0; let elem$1$3_$_hi$2 = 0; const jsx$1_$_lo$2 = 0; const jsx$1_$_hi$2 = 0; elem$1$3_$_lo$2 = jsx$1_$_lo$2; elem$1$3_$_hi$2 = jsx$1_$_hi$2; let i$1 = 0; while ((i$1 < bLength)) { const arg1 = i$1; const this$13_$_lo$2 = elem$1$3_$_lo$2; const this$13_$_hi$2 = elem$1$3_$_hi$2; const value$7 = normA.u[((((elem$1 - bLength) | 0) + arg1) | 0)]; const value$8 = normB.u[arg1]; const lo$5 = ((value$7 + value$8) | 0); const hi$18 = ((((-2147483648) ^ lo$5) < ((-2147483648) ^ value$7)) ? 1 : 0); const alo = this$13_$_lo$2; const ahi = this$13_$_hi$2; const lo$6 = ((alo + lo$5) | 0); const hi$19 = ((((-2147483648) ^ lo$6) < ((-2147483648) ^ alo)) ? ((1 + ((ahi + hi$18) | 0)) | 0) : ((ahi + hi$18) | 0)); const jsx$2_$_lo$2 = lo$6; const jsx$2_$_hi$2 = hi$19; elem$1$3_$_lo$2 = jsx$2_$_lo$2; elem$1$3_$_hi$2 = jsx$2_$_hi$2; const jsx$3 = elem$1; const this$15_$_lo$2 = elem$1$3_$_lo$2; const this$15_$_hi$2 = elem$1$3_$_hi$2; normA.u[((((jsx$3 - bLength) | 0) + arg1) | 0)] = this$15_$_lo$2; const this$16_$_lo$2 = elem$1$3_$_lo$2; const this$16_$_hi$2 = elem$1$3_$_hi$2; const lo$7 = this$16_$_hi$2; const jsx$4_$_lo$2 = lo$7; const jsx$4_$_hi$2 = 0; elem$1$3_$_lo$2 = jsx$4_$_lo$2; elem$1$3_$_hi$2 = jsx$4_$_hi$2; i$1 = ((1 + i$1) | 0) } } }; if ((quot !== null)) { quot.u[i] = elem$1$1 }; elem$1 = (((-1) + elem$1) | 0); i = (((-1) + i) | 0) }; return ((divisorShift !== 0) ? ($m_Ljava_math_BitLevel$().shiftRight__AI__I__AI__I__I__Z(normB, bLength, normA, 0, divisorShift), normB) : ($systemArraycopy(normA, 0, normB, 0, bLength), normA)) }; remainderArrayByInt__AI__I__I__I(src, srcLength, divisor) { let result = 0; let i = (((-1) + srcLength) | 0); while ((i >= 0)) { const value = result; const value$1 = src.u[i]; const this$1 = $m_sjsr_RuntimeLong$(); const lo = this$1.remainderUnsignedImpl__I__I__I__I__I(value$1, value, divisor, 0); result = lo; i = (((-1) + i) | 0) }; return result }; divideAndRemainderByInteger__Ljava_math_BigInteger__I__I__Ljava_math_BigInteger$QuotAndRem(bi, divisor, divisorSign) { const valDigits = bi.digits$2; const valLen = bi.numberLength$2; const valSign = bi.sign$2; if ((valLen === 1)) { const valDigit = valDigits.u[0]; const n = ((+(valDigit >>> 0)) / (+(divisor >>> 0))); const value = ((n | 0) | 0); let quo_$_lo$2 = value; let quo_$_hi$2 = 0; const n$1 = ((+(valDigit >>> 0)) % (+(divisor >>> 0))); const value$1 = ((n$1 | 0) | 0); let rem_$_lo$2 = value$1; let rem_$_hi$2 = 0; if ((valSign !== divisorSign)) { const this$11_$_lo$2 = quo_$_lo$2; const this$11_$_hi$2 = quo_$_hi$2; const lo = this$11_$_lo$2; const hi$2 = this$11_$_hi$2; const lo$1 = ((-lo) | 0); const hi$3 = ((lo !== 0) ? (~hi$2) : ((-hi$2) | 0)); const jsx$1_$_lo$2 = lo$1; const jsx$1_$_hi$2 = hi$3; quo_$_lo$2 = jsx$1_$_lo$2; quo_$_hi$2 = jsx$1_$_hi$2 }; if ((valSign < 0)) { const this$14_$_lo$2 = rem_$_lo$2; const this$14_$_hi$2 = rem_$_hi$2; const lo$2 = this$14_$_lo$2; const hi$4 = this$14_$_hi$2; const lo$3 = ((-lo$2) | 0); const hi$5 = ((lo$2 !== 0) ? (~hi$4) : ((-hi$4) | 0)); const jsx$2_$_lo$2 = lo$3; const jsx$2_$_hi$2 = hi$5; rem_$_lo$2 = jsx$2_$_lo$2; rem_$_hi$2 = jsx$2_$_hi$2 }; return new $c_Ljava_math_BigInteger$QuotAndRem().init___Ljava_math_BigInteger__Ljava_math_BigInteger($m_Ljava_math_BigInteger$().valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(quo_$_lo$2, quo_$_hi$2)), $m_Ljava_math_BigInteger$().valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(rem_$_lo$2, rem_$_hi$2))) } else { const quotientSign = ((valSign === divisorSign) ? 1 : (-1)); const quotientDigits = $newArrayObject($d_I.getArrayOf(), [valLen]); const div = this.divideArrayByInt__AI__AI__I__I__I(quotientDigits, valDigits, valLen, divisor); const remainderDigits = $makeNativeArrayWrapper($d_I.getArrayOf(), [div]); const result0 = new $c_Ljava_math_BigInteger().init___I__I__AI(quotientSign, valLen, quotientDigits); const result1 = new $c_Ljava_math_BigInteger().init___I__I__AI(valSign, 1, remainderDigits); result0.cutOffLeadingZeroes__V(); result1.cutOffLeadingZeroes__V(); return new $c_Ljava_math_BigInteger$QuotAndRem().init___Ljava_math_BigInteger__Ljava_math_BigInteger(result0, result1) } }; multiplyAndSubtract__AI__I__AI__I__I__I(a, start, b, bLen, c) { let elem$1 = 0; elem$1 = 0; let elem$1$1 = 0; elem$1$1 = 0; let i = 0; while ((i < bLen)) { const arg1 = i; $m_Ljava_math_Multiplication$(); const a$1 = b.u[arg1]; const c$1 = elem$1; const a0 = (65535 & a$1); const a1 = ((a$1 >>> 16) | 0); const b0 = (65535 & c); const b1 = ((c >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$2 = (((($imul(a1, b1) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const lo$1 = ((lo + c$1) | 0); const hi$4 = ((((-2147483648) ^ lo$1) < ((-2147483648) ^ lo)) ? ((1 + hi$2) | 0) : hi$2); const value = a.u[((start + arg1) | 0)]; const lo$2 = ((value - lo$1) | 0); const hi$6 = ((((-2147483648) ^ lo$2) > ((-2147483648) ^ value)) ? (-1) : 0); const value$1 = elem$1$1; const hi$7 = (value$1 >> 31); const lo$3 = ((lo$2 + value$1) | 0); const hi$8 = ((((-2147483648) ^ lo$3) < ((-2147483648) ^ lo$2)) ? ((1 + ((hi$6 + hi$7) | 0)) | 0) : ((hi$6 + hi$7) | 0)); a.u[((start + arg1) | 0)] = lo$3; elem$1$1 = hi$8; elem$1 = hi$4; i = ((1 + i) | 0) }; const value$2 = a.u[((start + bLen) | 0)]; const value$3 = elem$1; const lo$4 = ((value$2 - value$3) | 0); const hi$13 = ((((-2147483648) ^ lo$4) > ((-2147483648) ^ value$2)) ? (-1) : 0); const value$4 = elem$1$1; const hi$14 = (value$4 >> 31); const lo$5 = ((lo$4 + value$4) | 0); const hi$15 = ((((-2147483648) ^ lo$5) < ((-2147483648) ^ lo$4)) ? ((1 + ((hi$13 + hi$14) | 0)) | 0) : ((hi$13 + hi$14) | 0)); a.u[((start + bLen) | 0)] = lo$5; return hi$15 }; divideArrayByInt__AI__AI__I__I__I(dest, src, srcLength, divisor) { let rem = 0; let i = (((-1) + srcLength) | 0); while ((i >= 0)) { const value = rem; const value$1 = src.u[i]; const this$1 = $m_sjsr_RuntimeLong$(); const lo = this$1.divideUnsignedImpl__I__I__I__I__I(value$1, value, divisor, 0); const hi$3 = this$1.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const a0 = (65535 & lo); const a1 = ((lo >>> 16) | 0); const b0 = (65535 & divisor); const b1 = ((divisor >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo$1 = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$4 = (((((($imul(hi$3, divisor) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const lo$2 = ((value$1 - lo$1) | 0); rem = lo$2; dest.u[i] = lo; i = (((-1) + i) | 0) }; return rem }; } const $d_Ljava_math_Division$ = new $TypeData().initClass({ Ljava_math_Division$: 0 }, false, "java.math.Division$", { Ljava_math_Division$: 1, O: 1 }); $c_Ljava_math_Division$.prototype.$classData = $d_Ljava_math_Division$; let $n_Ljava_math_Division$ = (void 0); const $m_Ljava_math_Division$ = (function() { if ((!$n_Ljava_math_Division$)) { $n_Ljava_math_Division$ = new $c_Ljava_math_Division$().init___() }; return $n_Ljava_math_Division$ }); class $c_Ljava_math_Elementary$ extends $c_O { init___() { return this }; subtract__p1__AI__I__AI__I__AI(a, aSize, b, bSize) { const res = $newArrayObject($d_I.getArrayOf(), [aSize]); this.subtract__p1__AI__AI__I__AI__I__V(res, a, aSize, b, bSize); return res }; compareArrays__AI__AI__I__I(a, b, size) { let i = (((-1) + size) | 0); while (((i >= 0) && (a.u[i] === b.u[i]))) { i = (((-1) + i) | 0) }; if ((i < 0)) { return 0 } else { const value = a.u[i]; const value$1 = b.u[i]; if ((((-2147483648) ^ value) < ((-2147483648) ^ value$1))) { return (-1) } else { return 1 } } }; inplaceAdd__AI__I__I__I(a, aSize, addend) { let carry = addend; let i = 0; while (((carry !== 0) && (i < aSize))) { const value = carry; const value$1 = a.u[i]; const lo = ((value + value$1) | 0); const hi$2 = ((((-2147483648) ^ lo) < ((-2147483648) ^ value)) ? 1 : 0); a.u[i] = lo; carry = hi$2; i = ((1 + i) | 0) }; return carry }; add__p1__AI__I__AI__I__AI(a, aSize, b, bSize) { const res = $newArrayObject($d_I.getArrayOf(), [((1 + aSize) | 0)]); this.add__p1__AI__AI__I__AI__I__V(res, a, aSize, b, bSize); return res }; add__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(op1, op2) { const op1Sign = op1.sign$2; const op2Sign = op2.sign$2; const op1Len = op1.numberLength$2; const op2Len = op2.numberLength$2; if ((op1Sign === 0)) { return op2 } else if ((op2Sign === 0)) { return op1 } else if ((((op1Len + op2Len) | 0) === 2)) { const value = op1.digits$2.u[0]; const value$1 = op2.digits$2.u[0]; if ((op1Sign === op2Sign)) { const lo = ((value + value$1) | 0); const hi$2 = ((((-2147483648) ^ lo) < ((-2147483648) ^ value)) ? 1 : 0); return ((hi$2 === 0) ? new $c_Ljava_math_BigInteger().init___I__I(op1Sign, lo) : new $c_Ljava_math_BigInteger().init___I__I__AI(op1Sign, 2, $makeNativeArrayWrapper($d_I.getArrayOf(), [lo, hi$2]))) } else { const jsx$3 = $m_Ljava_math_BigInteger$(); let x_$_lo$2; let x_$_hi$2; if ((op1Sign < 0)) { const lo$1 = ((value$1 - value) | 0); const hi$3 = ((((-2147483648) ^ lo$1) > ((-2147483648) ^ value$1)) ? (-1) : 0); const jsx$1_$_lo$2 = lo$1; const jsx$1_$_hi$2 = hi$3; x_$_lo$2 = jsx$1_$_lo$2; x_$_hi$2 = jsx$1_$_hi$2 } else { const lo$2 = ((value - value$1) | 0); const hi$4 = ((((-2147483648) ^ lo$2) > ((-2147483648) ^ value)) ? (-1) : 0); const jsx$2_$_lo$2 = lo$2; const jsx$2_$_hi$2 = hi$4; x_$_lo$2 = jsx$2_$_lo$2; x_$_hi$2 = jsx$2_$_hi$2 }; return jsx$3.valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(x_$_lo$2, x_$_hi$2)) } } else { let x1_$_$$und1$f; let x1_$_$$und2$f; if ((op1Sign === op2Sign)) { const res$2 = ((op1Len >= op2Len) ? this.add__p1__AI__I__AI__I__AI(op1.digits$2, op1Len, op2.digits$2, op2Len) : this.add__p1__AI__I__AI__I__AI(op2.digits$2, op2Len, op1.digits$2, op1Len)); const jsx$4_$_$$und1$f = op1Sign; const jsx$4_$_$$und2$f = res$2; x1_$_$$und1$f = jsx$4_$_$$und1$f; x1_$_$$und2$f = jsx$4_$_$$und2$f } else { const cmp = ((op1Len !== op2Len) ? ((op1Len > op2Len) ? 1 : (-1)) : this.compareArrays__AI__AI__I__I(op1.digits$2, op2.digits$2, op1Len)); if ((cmp === 0)) { return $m_Ljava_math_BigInteger$().ZERO$1 }; if ((cmp === 1)) { const _2 = this.subtract__p1__AI__I__AI__I__AI(op1.digits$2, op1Len, op2.digits$2, op2Len); const jsx$5_$_$$und1$f = op1Sign; const jsx$5_$_$$und2$f = _2; x1_$_$$und1$f = jsx$5_$_$$und1$f; x1_$_$$und2$f = jsx$5_$_$$und2$f } else { const _2$1 = this.subtract__p1__AI__I__AI__I__AI(op2.digits$2, op2Len, op1.digits$2, op1Len); const jsx$6_$_$$und1$f = op2Sign; const jsx$6_$_$$und2$f = _2$1; x1_$_$$und1$f = jsx$6_$_$$und1$f; x1_$_$$und2$f = jsx$6_$_$$und2$f } }; const resSign = (x1_$_$$und1$f | 0); const resDigits = x1_$_$$und2$f; const res$3 = new $c_Ljava_math_BigInteger().init___I__I__AI(resSign, resDigits.u.length, resDigits); res$3.cutOffLeadingZeroes__V(); return res$3 } }; subtract__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(op1, op2) { const op1Sign = op1.sign$2; const op2Sign = op2.sign$2; const op1Len = op1.numberLength$2; const op2Len = op2.numberLength$2; if ((op2Sign === 0)) { return op1 } else if ((op1Sign === 0)) { return op2.negate__Ljava_math_BigInteger() } else if ((((op1Len + op2Len) | 0) === 2)) { const value = op1.digits$2.u[0]; let a_$_lo$2 = value; let a_$_hi$2 = 0; const value$1 = op2.digits$2.u[0]; let b_$_lo$2 = value$1; let b_$_hi$2 = 0; if ((op1Sign < 0)) { const this$1_$_lo$2 = a_$_lo$2; const this$1_$_hi$2 = a_$_hi$2; const lo = this$1_$_lo$2; const hi$2 = this$1_$_hi$2; const lo$1 = ((-lo) | 0); const hi$3 = ((lo !== 0) ? (~hi$2) : ((-hi$2) | 0)); const jsx$1_$_lo$2 = lo$1; const jsx$1_$_hi$2 = hi$3; a_$_lo$2 = jsx$1_$_lo$2; a_$_hi$2 = jsx$1_$_hi$2 }; if ((op2Sign < 0)) { const this$4_$_lo$2 = b_$_lo$2; const this$4_$_hi$2 = b_$_hi$2; const lo$2 = this$4_$_lo$2; const hi$4 = this$4_$_hi$2; const lo$3 = ((-lo$2) | 0); const hi$5 = ((lo$2 !== 0) ? (~hi$4) : ((-hi$4) | 0)); const jsx$2_$_lo$2 = lo$3; const jsx$2_$_hi$2 = hi$5; b_$_lo$2 = jsx$2_$_lo$2; b_$_hi$2 = jsx$2_$_hi$2 }; const jsx$3 = $m_Ljava_math_BigInteger$(); const this$7_$_lo$2 = a_$_lo$2; const this$7_$_hi$2 = a_$_hi$2; const b$1_$_lo$2 = b_$_lo$2; const b$1_$_hi$2 = b_$_hi$2; const alo = this$7_$_lo$2; const ahi = this$7_$_hi$2; const bhi = b$1_$_hi$2; const lo$4 = ((alo - b$1_$_lo$2) | 0); const hi$6 = ((((-2147483648) ^ lo$4) > ((-2147483648) ^ alo)) ? (((-1) + ((ahi - bhi) | 0)) | 0) : ((ahi - bhi) | 0)); return jsx$3.valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(lo$4, hi$6)) } else { const cmp = ((op1Len !== op2Len) ? ((op1Len > op2Len) ? 1 : (-1)) : $m_Ljava_math_Elementary$().compareArrays__AI__AI__I__I(op1.digits$2, op2.digits$2, op1Len)); if (((op1Sign === op2Sign) && (cmp === 0))) { return $m_Ljava_math_BigInteger$().ZERO$1 }; let x1_$_$$und1$f; let x1_$_$$und2$f; if ((cmp === (-1))) { const res = ((op1Sign === op2Sign) ? this.subtract__p1__AI__I__AI__I__AI(op2.digits$2, op2Len, op1.digits$2, op1Len) : this.add__p1__AI__I__AI__I__AI(op2.digits$2, op2Len, op1.digits$2, op1Len)); const _1 = ((-op2Sign) | 0); const jsx$4_$_$$und1$f = _1; const jsx$4_$_$$und2$f = res; x1_$_$$und1$f = jsx$4_$_$$und1$f; x1_$_$$und2$f = jsx$4_$_$$und2$f } else if ((op1Sign === op2Sign)) { const _2 = this.subtract__p1__AI__I__AI__I__AI(op1.digits$2, op1Len, op2.digits$2, op2Len); const jsx$5_$_$$und1$f = op1Sign; const jsx$5_$_$$und2$f = _2; x1_$_$$und1$f = jsx$5_$_$$und1$f; x1_$_$$und2$f = jsx$5_$_$$und2$f } else { const _2$1 = this.add__p1__AI__I__AI__I__AI(op1.digits$2, op1Len, op2.digits$2, op2Len); const jsx$6_$_$$und1$f = op1Sign; const jsx$6_$_$$und2$f = _2$1; x1_$_$$und1$f = jsx$6_$_$$und1$f; x1_$_$$und2$f = jsx$6_$_$$und2$f }; const resSign = (x1_$_$$und1$f | 0); const resDigits = x1_$_$$und2$f; const res$2 = new $c_Ljava_math_BigInteger().init___I__I__AI(resSign, resDigits.u.length, resDigits); res$2.cutOffLeadingZeroes__V(); return res$2 } }; subtract__p1__AI__AI__I__AI__I__V(res, a, aSize, b, bSize) { let i = 0; let borrow = 0; while ((i < bSize)) { const value = a.u[i]; const value$1 = b.u[i]; const lo = ((value - value$1) | 0); const hi$2 = ((((-2147483648) ^ lo) > ((-2147483648) ^ value)) ? (-1) : 0); const value$2 = borrow; const hi$3 = (value$2 >> 31); const lo$1 = ((lo + value$2) | 0); const hi$4 = ((((-2147483648) ^ lo$1) < ((-2147483648) ^ lo)) ? ((1 + ((hi$2 + hi$3) | 0)) | 0) : ((hi$2 + hi$3) | 0)); res.u[i] = lo$1; borrow = hi$4; i = ((1 + i) | 0) }; while ((i < aSize)) { const value$3 = a.u[i]; const value$4 = borrow; const hi$7 = (value$4 >> 31); const lo$2 = ((value$3 + value$4) | 0); const hi$8 = ((((-2147483648) ^ lo$2) < ((-2147483648) ^ value$3)) ? ((1 + hi$7) | 0) : hi$7); res.u[i] = lo$2; borrow = hi$8; i = ((1 + i) | 0) } }; add__p1__AI__AI__I__AI__I__V(res, a, aSize, b, bSize) { let i = 1; const value = a.u[0]; const value$1 = b.u[0]; const lo = ((value + value$1) | 0); const hi$2 = ((((-2147483648) ^ lo) < ((-2147483648) ^ value)) ? 1 : 0); res.u[0] = lo; let carry = hi$2; if ((aSize >= bSize)) { while ((i < bSize)) { const value$2 = a.u[i]; const value$3 = b.u[i]; const lo$1 = ((value$2 + value$3) | 0); const hi$6 = ((((-2147483648) ^ lo$1) < ((-2147483648) ^ value$2)) ? 1 : 0); const value$4 = carry; const lo$2 = ((lo$1 + value$4) | 0); const hi$8 = ((((-2147483648) ^ lo$2) < ((-2147483648) ^ lo$1)) ? ((1 + hi$6) | 0) : hi$6); res.u[i] = lo$2; carry = hi$8; i = ((1 + i) | 0) }; while ((i < aSize)) { const value$5 = a.u[i]; const value$6 = carry; const lo$3 = ((value$5 + value$6) | 0); const hi$12 = ((((-2147483648) ^ lo$3) < ((-2147483648) ^ value$5)) ? 1 : 0); res.u[i] = lo$3; carry = hi$12; i = ((1 + i) | 0) } } else { while ((i < aSize)) { const value$7 = a.u[i]; const value$8 = b.u[i]; const lo$4 = ((value$7 + value$8) | 0); const hi$16 = ((((-2147483648) ^ lo$4) < ((-2147483648) ^ value$7)) ? 1 : 0); const value$9 = carry; const lo$5 = ((lo$4 + value$9) | 0); const hi$18 = ((((-2147483648) ^ lo$5) < ((-2147483648) ^ lo$4)) ? ((1 + hi$16) | 0) : hi$16); res.u[i] = lo$5; carry = hi$18; i = ((1 + i) | 0) }; while ((i < bSize)) { const value$10 = b.u[i]; const value$11 = carry; const lo$6 = ((value$10 + value$11) | 0); const hi$22 = ((((-2147483648) ^ lo$6) < ((-2147483648) ^ value$10)) ? 1 : 0); res.u[i] = lo$6; carry = hi$22; i = ((1 + i) | 0) } }; if ((carry !== 0)) { res.u[i] = carry } }; } const $d_Ljava_math_Elementary$ = new $TypeData().initClass({ Ljava_math_Elementary$: 0 }, false, "java.math.Elementary$", { Ljava_math_Elementary$: 1, O: 1 }); $c_Ljava_math_Elementary$.prototype.$classData = $d_Ljava_math_Elementary$; let $n_Ljava_math_Elementary$ = (void 0); const $m_Ljava_math_Elementary$ = (function() { if ((!$n_Ljava_math_Elementary$)) { $n_Ljava_math_Elementary$ = new $c_Ljava_math_Elementary$().init___() }; return $n_Ljava_math_Elementary$ }); class $c_Ljava_math_Logical$ extends $c_O { init___() { return this }; orDiffSigns__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(positive, negative) { const iNeg = negative.getFirstNonzeroDigit__I(); const iPos = positive.getFirstNonzeroDigit__I(); if ((iPos >= negative.numberLength$2)) { return negative } else { const resLength = negative.numberLength$2; const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); let i = 0; if ((iNeg < iPos)) { i = iNeg; while ((i < iPos)) { resDigits.u[i] = negative.digits$2.u[i]; i = ((1 + i) | 0) } } else if ((iPos < iNeg)) { i = iPos; resDigits.u[i] = ((-positive.digits$2.u[i]) | 0); const a = positive.numberLength$2; const limit = ((a < iNeg) ? a : iNeg); i = ((1 + i) | 0); while ((i < limit)) { resDigits.u[i] = (~positive.digits$2.u[i]); i = ((1 + i) | 0) }; if ((i !== positive.numberLength$2)) { resDigits.u[i] = (~(((-negative.digits$2.u[i]) | 0) | positive.digits$2.u[i])) } else { while ((i < iNeg)) { resDigits.u[i] = (-1); i = ((1 + i) | 0) }; resDigits.u[i] = (((-1) + negative.digits$2.u[i]) | 0) }; i = ((1 + i) | 0) } else { i = iPos; resDigits.u[i] = ((-(((-negative.digits$2.u[i]) | 0) | positive.digits$2.u[i])) | 0); i = ((1 + i) | 0) }; const a$1 = negative.numberLength$2; const b = positive.numberLength$2; const limit$2 = ((a$1 < b) ? a$1 : b); while ((i < limit$2)) { resDigits.u[i] = (negative.digits$2.u[i] & (~positive.digits$2.u[i])); i = ((1 + i) | 0) }; while ((i < negative.numberLength$2)) { resDigits.u[i] = negative.digits$2.u[i]; i = ((1 + i) | 0) }; const result = new $c_Ljava_math_BigInteger().init___I__I__AI((-1), resLength, resDigits); result.cutOffLeadingZeroes__V(); return result } }; orPositive__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(longer, shorter) { const resLength = longer.numberLength$2; const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); let i = 0; while ((i < shorter.numberLength$2)) { resDigits.u[i] = (longer.digits$2.u[i] | shorter.digits$2.u[i]); i = ((1 + i) | 0) }; while ((i < resLength)) { resDigits.u[i] = longer.digits$2.u[i]; i = ((1 + i) | 0) }; return new $c_Ljava_math_BigInteger().init___I__I__AI(1, resLength, resDigits) }; xorNegative__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) { const a = bi.numberLength$2; const b = that.numberLength$2; const resLength = ((a > b) ? a : b); const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); const iVal = bi.getFirstNonzeroDigit__I(); const iThat = that.getFirstNonzeroDigit__I(); let i = iThat; if ((iVal === iThat)) { resDigits.u[i] = (((-bi.digits$2.u[i]) | 0) ^ ((-that.digits$2.u[i]) | 0)) } else { resDigits.u[i] = ((-that.digits$2.u[i]) | 0); const a$1 = that.numberLength$2; const limit = ((a$1 < iVal) ? a$1 : iVal); i = ((1 + i) | 0); while ((i < limit)) { resDigits.u[i] = (~that.digits$2.u[i]); i = ((1 + i) | 0) }; if ((i === that.numberLength$2)) { while ((i < iVal)) { resDigits.u[i] = (-1); i = ((1 + i) | 0) }; resDigits.u[i] = (((-1) + bi.digits$2.u[i]) | 0) } else { resDigits.u[i] = (((-bi.digits$2.u[i]) | 0) ^ (~that.digits$2.u[i])) } }; const a$2 = bi.numberLength$2; const b$1 = that.numberLength$2; const limit$2 = ((a$2 < b$1) ? a$2 : b$1); i = ((1 + i) | 0); while ((i < limit$2)) { resDigits.u[i] = (bi.digits$2.u[i] ^ that.digits$2.u[i]); i = ((1 + i) | 0) }; while ((i < bi.numberLength$2)) { resDigits.u[i] = bi.digits$2.u[i]; i = ((1 + i) | 0) }; while ((i < that.numberLength$2)) { resDigits.u[i] = that.digits$2.u[i]; i = ((1 + i) | 0) }; const result = new $c_Ljava_math_BigInteger().init___I__I__AI(1, resLength, resDigits); result.cutOffLeadingZeroes__V(); return result }; xorDiffSigns__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(positive, negative) { const a = negative.numberLength$2; const b = positive.numberLength$2; const resLength = ((a > b) ? a : b); const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); const iNeg = negative.getFirstNonzeroDigit__I(); const iPos = positive.getFirstNonzeroDigit__I(); let elem$1 = 0; elem$1 = 0; if ((iNeg < iPos)) { elem$1 = iNeg; resDigits.u[elem$1] = negative.digits$2.u[elem$1]; const a$1 = negative.numberLength$2; const limit = ((a$1 < iPos) ? a$1 : iPos); elem$1 = ((1 + elem$1) | 0); while ((elem$1 < limit)) { resDigits.u[elem$1] = negative.digits$2.u[elem$1]; elem$1 = ((1 + elem$1) | 0) }; if ((elem$1 === negative.numberLength$2)) { while ((elem$1 < positive.numberLength$2)) { resDigits.u[elem$1] = positive.digits$2.u[elem$1]; elem$1 = ((1 + elem$1) | 0) } } } else if ((iPos < iNeg)) { elem$1 = iPos; resDigits.u[elem$1] = ((-positive.digits$2.u[elem$1]) | 0); const a$2 = positive.numberLength$2; const limit$2 = ((a$2 < iNeg) ? a$2 : iNeg); elem$1 = ((1 + elem$1) | 0); while ((elem$1 < limit$2)) { resDigits.u[elem$1] = (~positive.digits$2.u[elem$1]); elem$1 = ((1 + elem$1) | 0) }; if ((elem$1 === iNeg)) { resDigits.u[elem$1] = (~(positive.digits$2.u[elem$1] ^ ((-negative.digits$2.u[elem$1]) | 0))); elem$1 = ((1 + elem$1) | 0) } else { while ((elem$1 < iNeg)) { resDigits.u[elem$1] = (-1); elem$1 = ((1 + elem$1) | 0) }; while ((elem$1 < negative.numberLength$2)) { resDigits.u[elem$1] = negative.digits$2.u[elem$1]; elem$1 = ((1 + elem$1) | 0) } } } else { elem$1 = iNeg; const elem = (positive.digits$2.u[elem$1] ^ ((-negative.digits$2.u[elem$1]) | 0)); let elem$1$1 = 0; elem$1$1 = elem; if ((elem$1$1 === 0)) { const a$3 = positive.numberLength$2; const b$1 = negative.numberLength$2; const limit$3 = ((a$3 < b$1) ? a$3 : b$1); elem$1 = ((1 + elem$1) | 0); while (true) { let jsx$1; if ((elem$1 < limit$3)) { elem$1$1 = (positive.digits$2.u[elem$1] ^ (~negative.digits$2.u[elem$1])); jsx$1 = (elem$1$1 === 0) } else { jsx$1 = false }; if (jsx$1) { elem$1 = ((1 + elem$1) | 0) } else { break } }; if ((elem$1$1 === 0)) { _loop: while (true) { if ((elem$1 < positive.numberLength$2)) { elem$1$1 = (~positive.digits$2.u[elem$1]); if ((elem$1$1 === 0)) { elem$1 = ((1 + elem$1) | 0); continue _loop } }; break }; _loop$1: while (true) { if ((elem$1 < negative.numberLength$2)) { elem$1$1 = (~negative.digits$2.u[elem$1]); if ((elem$1$1 === 0)) { elem$1 = ((1 + elem$1) | 0); continue _loop$1 } }; break }; if ((elem$1$1 === 0)) { const newResLength = ((1 + resLength) | 0); const resDigits$2 = $newArrayObject($d_I.getArrayOf(), [newResLength]); resDigits$2.u[(((-1) + resLength) | 0)] = 1; return new $c_Ljava_math_BigInteger().init___I__I__AI((-1), newResLength, resDigits$2) } } }; resDigits.u[elem$1] = ((-elem$1$1) | 0); elem$1 = ((1 + elem$1) | 0) }; const a$4 = negative.numberLength$2; const b$2 = positive.numberLength$2; const limit$4 = ((a$4 < b$2) ? a$4 : b$2); while ((elem$1 < limit$4)) { resDigits.u[elem$1] = (~((~negative.digits$2.u[elem$1]) ^ positive.digits$2.u[elem$1])); elem$1 = ((1 + elem$1) | 0) }; while ((elem$1 < positive.numberLength$2)) { resDigits.u[elem$1] = positive.digits$2.u[elem$1]; elem$1 = ((1 + elem$1) | 0) }; while ((elem$1 < negative.numberLength$2)) { resDigits.u[elem$1] = negative.digits$2.u[elem$1]; elem$1 = ((1 + elem$1) | 0) }; const result = new $c_Ljava_math_BigInteger().init___I__I__AI((-1), resLength, resDigits); result.cutOffLeadingZeroes__V(); return result }; or__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) { return (($m_sr_BoxesRunTime$().equalsNumNum__jl_Number__jl_Number__Z(that, $m_Ljava_math_BigInteger$().MINUS$undONE$1) || $m_sr_BoxesRunTime$().equalsNumNum__jl_Number__jl_Number__Z(bi, $m_Ljava_math_BigInteger$().MINUS$undONE$1)) ? $m_Ljava_math_BigInteger$().MINUS$undONE$1 : ((that.sign$2 === 0) ? bi : ((bi.sign$2 === 0) ? that : ((bi.sign$2 > 0) ? ((that.sign$2 > 0) ? ((bi.numberLength$2 > that.numberLength$2) ? this.orPositive__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) : this.orPositive__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(that, bi)) : this.orDiffSigns__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that)) : ((that.sign$2 > 0) ? this.orDiffSigns__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(that, bi) : ((that.getFirstNonzeroDigit__I() > bi.getFirstNonzeroDigit__I()) ? this.orNegative__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(that, bi) : this.orNegative__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that))))))) }; andPositive__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) { const a = bi.numberLength$2; const b = that.numberLength$2; const resLength = ((a < b) ? a : b); const a$1 = bi.getFirstNonzeroDigit__I(); const b$1 = that.getFirstNonzeroDigit__I(); let i = ((a$1 > b$1) ? a$1 : b$1); if ((i >= resLength)) { return $m_Ljava_math_BigInteger$().ZERO$1 } else { const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); while ((i < resLength)) { resDigits.u[i] = (bi.digits$2.u[i] & that.digits$2.u[i]); i = ((1 + i) | 0) }; const result = new $c_Ljava_math_BigInteger().init___I__I__AI(1, resLength, resDigits); result.cutOffLeadingZeroes__V(); return result } }; xorPositive__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(longer, shorter) { const resLength = longer.numberLength$2; const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); const a = longer.getFirstNonzeroDigit__I(); const b = shorter.getFirstNonzeroDigit__I(); let i = ((a < b) ? a : b); while ((i < shorter.numberLength$2)) { resDigits.u[i] = (longer.digits$2.u[i] ^ shorter.digits$2.u[i]); i = ((1 + i) | 0) }; while ((i < longer.numberLength$2)) { resDigits.u[i] = longer.digits$2.u[i]; i = ((1 + i) | 0) }; const result = new $c_Ljava_math_BigInteger().init___I__I__AI(1, resLength, resDigits); result.cutOffLeadingZeroes__V(); return result }; and__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) { return (((that.sign$2 === 0) || (bi.sign$2 === 0)) ? $m_Ljava_math_BigInteger$().ZERO$1 : ($m_sr_BoxesRunTime$().equalsNumNum__jl_Number__jl_Number__Z(that, $m_Ljava_math_BigInteger$().MINUS$undONE$1) ? bi : ($m_sr_BoxesRunTime$().equalsNumNum__jl_Number__jl_Number__Z(bi, $m_Ljava_math_BigInteger$().MINUS$undONE$1) ? that : (((bi.sign$2 > 0) && (that.sign$2 > 0)) ? this.andPositive__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) : ((bi.sign$2 > 0) ? this.andDiffSigns__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) : ((that.sign$2 > 0) ? this.andDiffSigns__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(that, bi) : ((bi.numberLength$2 > that.numberLength$2) ? this.andNegative__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) : this.andNegative__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(that, bi)))))))) }; not__Ljava_math_BigInteger__Ljava_math_BigInteger(bi) { if ((bi.sign$2 === 0)) { return $m_Ljava_math_BigInteger$().MINUS$undONE$1 } else if ($m_sr_BoxesRunTime$().equalsNumNum__jl_Number__jl_Number__Z(bi, $m_Ljava_math_BigInteger$().MINUS$undONE$1)) { return $m_Ljava_math_BigInteger$().ZERO$1 } else { const resDigits = $newArrayObject($d_I.getArrayOf(), [((1 + bi.numberLength$2) | 0)]); let i = 0; if ((bi.sign$2 > 0)) { if ((bi.digits$2.u[(((-1) + bi.numberLength$2) | 0)] !== (-1))) { while ((bi.digits$2.u[i] === (-1))) { i = ((1 + i) | 0) } } else { while (((i < bi.numberLength$2) && (bi.digits$2.u[i] === (-1)))) { i = ((1 + i) | 0) }; if ((i === bi.numberLength$2)) { resDigits.u[i] = 1; return new $c_Ljava_math_BigInteger().init___I__I__AI(((-bi.sign$2) | 0), ((1 + i) | 0), resDigits) } } } else { while ((bi.digits$2.u[i] === 0)) { resDigits.u[i] = (-1); i = ((1 + i) | 0) } }; resDigits.u[i] = ((bi.digits$2.u[i] + bi.sign$2) | 0); i = ((1 + i) | 0); while ((i < bi.numberLength$2)) { resDigits.u[i] = bi.digits$2.u[i]; i = ((1 + i) | 0) }; return new $c_Ljava_math_BigInteger().init___I__I__AI(((-bi.sign$2) | 0), i, resDigits) } }; orNegative__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) { const iThat = that.getFirstNonzeroDigit__I(); const iVal = bi.getFirstNonzeroDigit__I(); let i = 0; if ((iVal >= that.numberLength$2)) { return that } else if ((iThat >= bi.numberLength$2)) { return bi } else { const a = bi.numberLength$2; const b = that.numberLength$2; const resLength = ((a < b) ? a : b); const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); if ((iThat === iVal)) { resDigits.u[iVal] = ((-(((-bi.digits$2.u[iVal]) | 0) | ((-that.digits$2.u[iVal]) | 0))) | 0); i = iVal } else { i = iThat; while ((i < iVal)) { resDigits.u[i] = that.digits$2.u[i]; i = ((1 + i) | 0) }; resDigits.u[i] = (that.digits$2.u[i] & (((-1) + bi.digits$2.u[i]) | 0)) }; i = ((1 + i) | 0); while ((i < resLength)) { resDigits.u[i] = (bi.digits$2.u[i] & that.digits$2.u[i]); i = ((1 + i) | 0) }; const result = new $c_Ljava_math_BigInteger().init___I__I__AI((-1), resLength, resDigits); result.cutOffLeadingZeroes__V(); return result } }; andNegative__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(longer, shorter) { const iLonger = longer.getFirstNonzeroDigit__I(); const iShorter = shorter.getFirstNonzeroDigit__I(); if ((iLonger >= shorter.numberLength$2)) { return longer } else { const elem = ((iShorter > iLonger) ? iShorter : iLonger); let elem$1 = 0; elem$1 = elem; const elem$2 = ((iShorter > iLonger) ? (((-shorter.digits$2.u[elem$1]) | 0) & (~longer.digits$2.u[elem$1])) : ((iShorter < iLonger) ? ((~shorter.digits$2.u[elem$1]) & ((-longer.digits$2.u[elem$1]) | 0)) : (((-shorter.digits$2.u[elem$1]) | 0) & ((-longer.digits$2.u[elem$1]) | 0)))); let elem$1$1 = 0; elem$1$1 = elem$2; if ((elem$1$1 === 0)) { elem$1 = ((1 + elem$1) | 0); _loop: while (true) { if ((elem$1 < shorter.numberLength$2)) { elem$1$1 = (~(longer.digits$2.u[elem$1] | shorter.digits$2.u[elem$1])); if ((elem$1$1 === 0)) { elem$1 = ((1 + elem$1) | 0); continue _loop } }; break }; if ((elem$1$1 === 0)) { _loop$1: while (true) { if ((elem$1 < longer.numberLength$2)) { elem$1$1 = (~(shorter.digits$2.u[elem$1] | longer.digits$2.u[elem$1])); if ((elem$1$1 === 0)) { elem$1 = ((1 + elem$1) | 0); continue _loop$1 } }; break }; if ((elem$1$1 === 0)) { const resLength = ((1 + longer.numberLength$2) | 0); const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); resDigits.u[(((-1) + resLength) | 0)] = 1; return new $c_Ljava_math_BigInteger().init___I__I__AI((-1), resLength, resDigits) } } }; const resLength$2 = longer.numberLength$2; const resDigits$2 = $newArrayObject($d_I.getArrayOf(), [resLength$2]); resDigits$2.u[elem$1] = ((-elem$1$1) | 0); elem$1 = ((1 + elem$1) | 0); while ((elem$1 < shorter.numberLength$2)) { resDigits$2.u[elem$1] = (longer.digits$2.u[elem$1] | shorter.digits$2.u[elem$1]); elem$1 = ((1 + elem$1) | 0) }; while ((elem$1 < longer.numberLength$2)) { resDigits$2.u[elem$1] = longer.digits$2.u[elem$1]; elem$1 = ((1 + elem$1) | 0) }; return new $c_Ljava_math_BigInteger().init___I__I__AI((-1), resLength$2, resDigits$2) } }; andDiffSigns__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(positive, negative) { const iPos = positive.getFirstNonzeroDigit__I(); const iNeg = negative.getFirstNonzeroDigit__I(); if ((iNeg >= positive.numberLength$2)) { return $m_Ljava_math_BigInteger$().ZERO$1 } else { const resLength = positive.numberLength$2; const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); let i = ((iPos > iNeg) ? iPos : iNeg); if ((i === iNeg)) { resDigits.u[i] = (((-negative.digits$2.u[i]) | 0) & positive.digits$2.u[i]); i = ((1 + i) | 0) }; const a = negative.numberLength$2; const b = positive.numberLength$2; const limit = ((a < b) ? a : b); while ((i < limit)) { resDigits.u[i] = ((~negative.digits$2.u[i]) & positive.digits$2.u[i]); i = ((1 + i) | 0) }; if ((i >= negative.numberLength$2)) { while ((i < positive.numberLength$2)) { resDigits.u[i] = positive.digits$2.u[i]; i = ((1 + i) | 0) } }; const result = new $c_Ljava_math_BigInteger().init___I__I__AI(1, resLength, resDigits); result.cutOffLeadingZeroes__V(); return result } }; xor__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) { return ((that.sign$2 === 0) ? bi : ((bi.sign$2 === 0) ? that : ($m_sr_BoxesRunTime$().equalsNumNum__jl_Number__jl_Number__Z(that, $m_Ljava_math_BigInteger$().MINUS$undONE$1) ? $m_Ljava_math_Logical$().not__Ljava_math_BigInteger__Ljava_math_BigInteger(bi) : ($m_sr_BoxesRunTime$().equalsNumNum__jl_Number__jl_Number__Z(bi, $m_Ljava_math_BigInteger$().MINUS$undONE$1) ? $m_Ljava_math_Logical$().not__Ljava_math_BigInteger__Ljava_math_BigInteger(that) : ((bi.sign$2 > 0) ? ((that.sign$2 > 0) ? ((bi.numberLength$2 > that.numberLength$2) ? this.xorPositive__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that) : this.xorPositive__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(that, bi)) : this.xorDiffSigns__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that)) : ((that.sign$2 > 0) ? this.xorDiffSigns__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(that, bi) : ((that.getFirstNonzeroDigit__I() > bi.getFirstNonzeroDigit__I()) ? this.xorNegative__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(that, bi) : this.xorNegative__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(bi, that)))))))) }; } const $d_Ljava_math_Logical$ = new $TypeData().initClass({ Ljava_math_Logical$: 0 }, false, "java.math.Logical$", { Ljava_math_Logical$: 1, O: 1 }); $c_Ljava_math_Logical$.prototype.$classData = $d_Ljava_math_Logical$; let $n_Ljava_math_Logical$ = (void 0); const $m_Ljava_math_Logical$ = (function() { if ((!$n_Ljava_math_Logical$)) { $n_Ljava_math_Logical$ = new $c_Ljava_math_Logical$().init___() }; return $n_Ljava_math_Logical$ }); class $c_Ljava_math_MathContext extends $c_O { constructor() { super(); this.precision$1 = 0; this.roundingMode$1 = null }; equals__O__Z(x) { if ((x instanceof $c_Ljava_math_MathContext)) { const x2 = x; if ((this.precision$1 === x2.precision$1)) { const x$2 = this.roundingMode$1; const x$3 = x2.roundingMode$1; return (x$2 === x$3) } else { return false } } else { return false } }; toString__T() { return ((("precision=" + this.precision$1) + " roundingMode=") + this.roundingMode$1) }; init___I__Ljava_math_RoundingMode(setPrecision, setRoundingMode) { this.precision$1 = setPrecision; this.roundingMode$1 = setRoundingMode; return this }; hashCode__I() { return ((this.precision$1 << 3) | this.roundingMode$1.$$undordinal$1) }; } const $isArrayOf_Ljava_math_MathContext = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_math_MathContext))) }); const $d_Ljava_math_MathContext = new $TypeData().initClass({ Ljava_math_MathContext: 0 }, false, "java.math.MathContext", { Ljava_math_MathContext: 1, O: 1 }); $c_Ljava_math_MathContext.prototype.$classData = $d_Ljava_math_MathContext; class $c_Ljava_math_MathContext$ extends $c_O { constructor() { super(); this.DECIMAL128$1 = null; this.DECIMAL32$1 = null; this.DECIMAL64$1 = null; this.UNLIMITED$1 = null }; init___() { $n_Ljava_math_MathContext$ = this; $m_Ljava_math_MathContext$(); const roundingMode = $m_Ljava_math_RoundingMode$().HALF$undEVEN$1; this.DECIMAL128$1 = new $c_Ljava_math_MathContext().init___I__Ljava_math_RoundingMode(34, roundingMode); $m_Ljava_math_MathContext$(); const roundingMode$1 = $m_Ljava_math_RoundingMode$().HALF$undEVEN$1; this.DECIMAL32$1 = new $c_Ljava_math_MathContext().init___I__Ljava_math_RoundingMode(7, roundingMode$1); $m_Ljava_math_MathContext$(); const roundingMode$2 = $m_Ljava_math_RoundingMode$().HALF$undEVEN$1; this.DECIMAL64$1 = new $c_Ljava_math_MathContext().init___I__Ljava_math_RoundingMode(16, roundingMode$2); $m_Ljava_math_MathContext$(); const roundingMode$3 = $m_Ljava_math_RoundingMode$().HALF$undUP$1; this.UNLIMITED$1 = new $c_Ljava_math_MathContext().init___I__Ljava_math_RoundingMode(0, roundingMode$3); return this }; } const $d_Ljava_math_MathContext$ = new $TypeData().initClass({ Ljava_math_MathContext$: 0 }, false, "java.math.MathContext$", { Ljava_math_MathContext$: 1, O: 1 }); $c_Ljava_math_MathContext$.prototype.$classData = $d_Ljava_math_MathContext$; let $n_Ljava_math_MathContext$ = (void 0); const $m_Ljava_math_MathContext$ = (function() { if ((!$n_Ljava_math_MathContext$)) { $n_Ljava_math_MathContext$ = new $c_Ljava_math_MathContext$().init___() }; return $n_Ljava_math_MathContext$ }); class $c_Ljava_math_Multiplication$ extends $c_O { constructor() { super(); this.TenPows$1 = null; this.FivePows$1 = null; this.BigTenPows$1 = null; this.BigFivePows$1 = null }; multiplyPAP__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(a, b) { const aLen = a.numberLength$2; const bLen = b.numberLength$2; const resLength = ((aLen + bLen) | 0); const resSign = ((a.sign$2 !== b.sign$2) ? (-1) : 1); if ((resLength === 2)) { const a$1 = a.digits$2.u[0]; const b$1 = b.digits$2.u[0]; const a0 = (65535 & a$1); const a1 = ((a$1 >>> 16) | 0); const b0 = (65535 & b$1); const b1 = ((b$1 >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$2 = (((($imul(a1, b1) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); return ((hi$2 === 0) ? new $c_Ljava_math_BigInteger().init___I__I(resSign, lo) : new $c_Ljava_math_BigInteger().init___I__I__AI(resSign, 2, $makeNativeArrayWrapper($d_I.getArrayOf(), [lo, hi$2]))) } else { const aDigits = a.digits$2; const bDigits = b.digits$2; const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); this.multArraysPAP__AI__I__AI__I__AI__V(aDigits, aLen, bDigits, bLen, resDigits); const result = new $c_Ljava_math_BigInteger().init___I__I__AI(resSign, resLength, resDigits); result.cutOffLeadingZeroes__V(); return result } }; init___() { $n_Ljava_math_Multiplication$ = this; this.TenPows$1 = this.newArrayOfPows__p1__I__I__AI(10, 10); this.FivePows$1 = this.newArrayOfPows__p1__I__I__AI(14, 5); this.BigTenPows$1 = $newArrayObject($d_Ljava_math_BigInteger.getArrayOf(), [32]); this.BigFivePows$1 = $newArrayObject($d_Ljava_math_BigInteger.getArrayOf(), [32]); this.initialiseArrays__p1__V(); return this }; square__AI__I__AI__AI(a, aLen, res) { let elem$1 = 0; elem$1 = 0; let i = 0; while ((i < aLen)) { const arg1 = i; elem$1 = 0; const __self = ((1 + arg1) | 0); let i$1 = __self; while ((i$1 < aLen)) { const arg1$1 = i$1; $m_Ljava_math_Multiplication$(); const a$1 = a.u[arg1]; const b = a.u[arg1$1]; const c = res.u[((arg1 + arg1$1) | 0)]; const d = elem$1; const a0 = (65535 & a$1); const a1 = ((a$1 >>> 16) | 0); const b0 = (65535 & b); const b1 = ((b >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$2 = (((($imul(a1, b1) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const lo$1 = ((lo + c) | 0); const hi$4 = ((((-2147483648) ^ lo$1) < ((-2147483648) ^ lo)) ? ((1 + hi$2) | 0) : hi$2); const lo$2 = ((lo$1 + d) | 0); const hi$6 = ((((-2147483648) ^ lo$2) < ((-2147483648) ^ lo$1)) ? ((1 + hi$4) | 0) : hi$4); res.u[((arg1 + arg1$1) | 0)] = lo$2; elem$1 = hi$6; i$1 = ((1 + i$1) | 0) }; res.u[((arg1 + aLen) | 0)] = elem$1; i = ((1 + i) | 0) }; $m_Ljava_math_BitLevel$().shiftLeftOneBit__AI__AI__I__V(res, res, (aLen << 1)); elem$1 = 0; let i$3 = 0; let index = 0; while ((i$3 < aLen)) { const a$2 = a.u[i$3]; const b$1 = a.u[i$3]; const c$1 = res.u[index]; const d$1 = elem$1; const a0$1 = (65535 & a$2); const a1$1 = ((a$2 >>> 16) | 0); const b0$1 = (65535 & b$1); const b1$1 = ((b$1 >>> 16) | 0); const a0b0$1 = $imul(a0$1, b0$1); const a1b0$1 = $imul(a1$1, b0$1); const a0b1$1 = $imul(a0$1, b1$1); const lo$3 = ((a0b0$1 + (((a1b0$1 + a0b1$1) | 0) << 16)) | 0); const c1part$1 = ((((a0b0$1 >>> 16) | 0) + a0b1$1) | 0); const hi$9 = (((($imul(a1$1, b1$1) + ((c1part$1 >>> 16) | 0)) | 0) + (((((65535 & c1part$1) + a1b0$1) | 0) >>> 16) | 0)) | 0); const lo$4 = ((lo$3 + c$1) | 0); const hi$11 = ((((-2147483648) ^ lo$4) < ((-2147483648) ^ lo$3)) ? ((1 + hi$9) | 0) : hi$9); const lo$5 = ((lo$4 + d$1) | 0); const hi$13 = ((((-2147483648) ^ lo$5) < ((-2147483648) ^ lo$4)) ? ((1 + hi$11) | 0) : hi$11); res.u[index] = lo$5; index = ((1 + index) | 0); const value = res.u[index]; const lo$6 = ((hi$13 + value) | 0); const hi$15 = ((((-2147483648) ^ lo$6) < ((-2147483648) ^ hi$13)) ? 1 : 0); res.u[index] = lo$6; elem$1 = hi$15; i$3 = ((1 + i$3) | 0); index = ((1 + index) | 0) }; return res }; pow__Ljava_math_BigInteger__I__Ljava_math_BigInteger(base, exponent) { let exp = exponent; let res = $m_Ljava_math_BigInteger$().ONE$1; let acc = base; _loop: while (true) { if ((exp > 1)) { const res2 = (((1 & exp) !== 0) ? res.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(acc) : res); let acc2; if ((acc.numberLength$2 === 1)) { acc2 = acc.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(acc) } else { const a = $newArrayObject($d_I.getArrayOf(), [(acc.numberLength$2 << 1)]); const sq = this.square__AI__I__AI__AI(acc.digits$2, acc.numberLength$2, a); acc2 = new $c_Ljava_math_BigInteger().init___I__AI(1, sq) }; const temp$exp = (exp >> 1); exp = temp$exp; res = res2; acc = acc2; continue _loop } else { return res.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(acc) } } }; multPAP__p1__AI__AI__AI__I__I__V(a, b, t, aLen, bLen) { if (((a === b) && (aLen === bLen))) { this.square__AI__I__AI__AI(a, aLen, t) } else { let i = 0; while ((i < aLen)) { const arg1 = i; let elem$1 = 0; elem$1 = 0; const aI = a.u[arg1]; let i$1 = 0; while ((i$1 < bLen)) { const arg1$1 = i$1; $m_Ljava_math_Multiplication$(); const b$1 = b.u[arg1$1]; const c = t.u[((arg1 + arg1$1) | 0)]; const d = elem$1; const a0 = (65535 & aI); const a1 = ((aI >>> 16) | 0); const b0 = (65535 & b$1); const b1 = ((b$1 >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$2 = (((($imul(a1, b1) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const lo$1 = ((lo + c) | 0); const hi$4 = ((((-2147483648) ^ lo$1) < ((-2147483648) ^ lo)) ? ((1 + hi$2) | 0) : hi$2); const lo$2 = ((lo$1 + d) | 0); const hi$6 = ((((-2147483648) ^ lo$2) < ((-2147483648) ^ lo$1)) ? ((1 + hi$4) | 0) : hi$4); t.u[((arg1 + arg1$1) | 0)] = lo$2; elem$1 = hi$6; i$1 = ((1 + i$1) | 0) }; t.u[((arg1 + bLen) | 0)] = elem$1; i = ((1 + i) | 0) } } }; initialiseArrays__p1__V() { let elem$1_$_lo$2 = 0; let elem$1_$_hi$2 = 0; const jsx$1_$_lo$2 = 1; const jsx$1_$_hi$2 = 0; elem$1_$_lo$2 = jsx$1_$_lo$2; elem$1_$_hi$2 = jsx$1_$_hi$2; let i = 0; while ((i < 32)) { const arg1 = i; if ((arg1 <= 18)) { $m_Ljava_math_Multiplication$().BigFivePows$1.u[arg1] = $m_Ljava_math_BigInteger$().valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(elem$1_$_lo$2, elem$1_$_hi$2)); const jsx$3 = $m_Ljava_math_Multiplication$().BigTenPows$1; const jsx$2 = $m_Ljava_math_BigInteger$(); const this$4_$_lo$2 = elem$1_$_lo$2; const this$4_$_hi$2 = elem$1_$_hi$2; const lo = (((32 & arg1) === 0) ? (this$4_$_lo$2 << arg1) : 0); const hi = (((32 & arg1) === 0) ? (((((this$4_$_lo$2 >>> 1) | 0) >>> ((31 - arg1) | 0)) | 0) | (this$4_$_hi$2 << arg1)) : (this$4_$_lo$2 << arg1)); jsx$3.u[arg1] = jsx$2.valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(lo, hi)); const b_$_lo$2 = elem$1_$_lo$2; const b_$_hi$2 = elem$1_$_hi$2; const blo = b_$_lo$2; const b0 = (65535 & blo); const b1 = ((blo >>> 16) | 0); const a0b0 = $imul(5, b0); const a0b1 = $imul(5, b1); const lo$1 = ((a0b0 + (a0b1 << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$1 = (($imul(5, b_$_hi$2) + ((c1part >>> 16) | 0)) | 0); const jsx$4_$_lo$2 = lo$1; const jsx$4_$_hi$2 = hi$1; elem$1_$_lo$2 = jsx$4_$_lo$2; elem$1_$_hi$2 = jsx$4_$_hi$2 } else { $m_Ljava_math_Multiplication$().BigFivePows$1.u[arg1] = $m_Ljava_math_Multiplication$().BigFivePows$1.u[(((-1) + arg1) | 0)].multiply__Ljava_math_BigInteger__Ljava_math_BigInteger($m_Ljava_math_Multiplication$().BigFivePows$1.u[1]); $m_Ljava_math_Multiplication$().BigTenPows$1.u[arg1] = $m_Ljava_math_Multiplication$().BigTenPows$1.u[(((-1) + arg1) | 0)].multiply__Ljava_math_BigInteger__Ljava_math_BigInteger($m_Ljava_math_BigInteger$().TEN$1) }; i = ((1 + i) | 0) } }; newArrayOfPows__p1__I__I__AI(len, pow) { let elems$2 = null; elems$2 = []; if ((len > 0)) { let acc = 1; let i = 1; const elem = acc; const unboxedElem = ((elem === null) ? 0 : elem); elems$2.push(unboxedElem); while ((i < len)) { const arg1 = acc; const x$2 = (arg1 | 0); acc = $imul(x$2, pow); i = ((1 + i) | 0); const elem$1 = acc; const unboxedElem$1 = ((elem$1 === null) ? 0 : elem$1); elems$2.push(unboxedElem$1) } }; return $makeNativeArrayWrapper($d_I.getArrayOf(), elems$2) }; karatsuba__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(val1, val2) { let x1_$_$$und1$f; let x1_$_$$und2$f; if ((val2.numberLength$2 > val1.numberLength$2)) { const jsx$1_$_$$und1$f = val2; const jsx$1_$_$$und2$f = val1; x1_$_$$und1$f = jsx$1_$_$$und1$f; x1_$_$$und2$f = jsx$1_$_$$und2$f } else { const jsx$2_$_$$und1$f = val1; const jsx$2_$_$$und2$f = val2; x1_$_$$und1$f = jsx$2_$_$$und1$f; x1_$_$$und2$f = jsx$2_$_$$und2$f }; const op1 = x1_$_$$und1$f; const op2 = x1_$_$$und2$f; if ((op2.numberLength$2 < 63)) { return this.multiplyPAP__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(op1, op2) } else { const ndiv2 = (((-2) & op1.numberLength$2) << 4); const upperOp1 = op1.shiftRight__I__Ljava_math_BigInteger(ndiv2); const upperOp2 = op2.shiftRight__I__Ljava_math_BigInteger(ndiv2); const bi = upperOp1.shiftLeft__I__Ljava_math_BigInteger(ndiv2); const lowerOp1 = $m_Ljava_math_Elementary$().subtract__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(op1, bi); const bi$1 = upperOp2.shiftLeft__I__Ljava_math_BigInteger(ndiv2); const lowerOp2 = $m_Ljava_math_Elementary$().subtract__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(op2, bi$1); let upper = this.karatsuba__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(upperOp1, upperOp2); const lower = this.karatsuba__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(lowerOp1, lowerOp2); let middle = this.karatsuba__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger($m_Ljava_math_Elementary$().subtract__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(upperOp1, lowerOp1), $m_Ljava_math_Elementary$().subtract__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(lowerOp2, upperOp2)); const this$1 = middle; const bi$2 = upper; const this$2 = $m_Ljava_math_Elementary$().add__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$1, bi$2); middle = $m_Ljava_math_Elementary$().add__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$2, lower); middle = middle.shiftLeft__I__Ljava_math_BigInteger(ndiv2); upper = upper.shiftLeft__I__Ljava_math_BigInteger((ndiv2 << 1)); const this$3 = upper; const bi$3 = middle; const this$4 = $m_Ljava_math_Elementary$().add__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$3, bi$3); return $m_Ljava_math_Elementary$().add__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$4, lower) } }; multiplyByInt__p1__AI__AI__I__I__I(res, a, aSize, factor) { let elem$1 = 0; elem$1 = 0; let i = 0; while ((i < aSize)) { const arg1 = i; $m_Ljava_math_Multiplication$(); const a$1 = a.u[arg1]; const c = elem$1; const a0 = (65535 & a$1); const a1 = ((a$1 >>> 16) | 0); const b0 = (65535 & factor); const b1 = ((factor >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$2 = (((($imul(a1, b1) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const lo$1 = ((lo + c) | 0); const hi$4 = ((((-2147483648) ^ lo$1) < ((-2147483648) ^ lo)) ? ((1 + hi$2) | 0) : hi$2); res.u[arg1] = lo$1; elem$1 = hi$4; i = ((1 + i) | 0) }; return elem$1 }; multArraysPAP__AI__I__AI__I__AI__V(aDigits, aLen, bDigits, bLen, resDigits) { if ((!((aLen === 0) || (bLen === 0)))) { if ((aLen === 1)) { resDigits.u[bLen] = this.multiplyByInt__p1__AI__AI__I__I__I(resDigits, bDigits, bLen, aDigits.u[0]) } else if ((bLen === 1)) { resDigits.u[aLen] = this.multiplyByInt__p1__AI__AI__I__I__I(resDigits, aDigits, aLen, bDigits.u[0]) } else { this.multPAP__p1__AI__AI__AI__I__I__V(aDigits, bDigits, resDigits, aLen, bLen) } } }; powerOf10__J__Ljava_math_BigInteger(exp) { const value = this.BigTenPows$1.u.length; const hi = (value >> 31); const ahi = exp.hi$2; if (((ahi === hi) ? (((-2147483648) ^ exp.lo$2) < ((-2147483648) ^ value)) : (ahi < hi))) { return this.BigTenPows$1.u[exp.lo$2] } else { const ahi$1 = exp.hi$2; if (((ahi$1 === 0) ? (((-2147483648) ^ exp.lo$2) <= (-2147483598)) : (ahi$1 < 0))) { return $m_Ljava_math_BigInteger$().TEN$1.pow__I__Ljava_math_BigInteger(exp.lo$2) } else { const ahi$2 = exp.hi$2; if (((ahi$2 === 0) ? (((-2147483648) ^ exp.lo$2) <= (-1)) : (ahi$2 < 0))) { return this.BigFivePows$1.u[1].pow__I__Ljava_math_BigInteger(exp.lo$2).shiftLeft__I__Ljava_math_BigInteger(exp.lo$2) } else { const powerOfFive = this.BigFivePows$1.u[1].pow__I__Ljava_math_BigInteger(2147483647); let res = powerOfFive; const bhi = exp.hi$2; const lo = (((-2147483647) + exp.lo$2) | 0); const hi$1 = ((((-2147483648) ^ lo) < 1) ? bhi : (((-1) + bhi) | 0)); let longExp_$_lo$2 = lo; let longExp_$_hi$2 = hi$1; const this$2 = $m_sjsr_RuntimeLong$(); const lo$1 = this$2.remainderImpl__I__I__I__I__I(exp.lo$2, exp.hi$2, 2147483647, 0); while (true) { const this$3_$_lo$2 = longExp_$_lo$2; const this$3_$_hi$2 = longExp_$_hi$2; const ahi$3 = this$3_$_hi$2; if (((ahi$3 === 0) ? (((-2147483648) ^ this$3_$_lo$2) > (-1)) : (ahi$3 > 0))) { res = res.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(powerOfFive); const b_$_lo$2 = longExp_$_lo$2; const b_$_hi$2 = longExp_$_hi$2; const bhi$1 = b_$_hi$2; const lo$2 = (((-2147483647) + b_$_lo$2) | 0); const hi$3 = ((((-2147483648) ^ lo$2) < 1) ? bhi$1 : (((-1) + bhi$1) | 0)); const jsx$1_$_lo$2 = lo$2; const jsx$1_$_hi$2 = hi$3; longExp_$_lo$2 = jsx$1_$_lo$2; longExp_$_hi$2 = jsx$1_$_hi$2 } else { break } }; res = res.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(this.BigFivePows$1.u[1].pow__I__Ljava_math_BigInteger(lo$1)); res = res.shiftLeft__I__Ljava_math_BigInteger(2147483647); const bhi$2 = exp.hi$2; const lo$3 = (((-2147483647) + exp.lo$2) | 0); const hi$4 = ((((-2147483648) ^ lo$3) < 1) ? bhi$2 : (((-1) + bhi$2) | 0)); const jsx$2_$_lo$2 = lo$3; const jsx$2_$_hi$2 = hi$4; longExp_$_lo$2 = jsx$2_$_lo$2; longExp_$_hi$2 = jsx$2_$_hi$2; while (true) { const this$6_$_lo$2 = longExp_$_lo$2; const this$6_$_hi$2 = longExp_$_hi$2; const ahi$4 = this$6_$_hi$2; if (((ahi$4 === 0) ? (((-2147483648) ^ this$6_$_lo$2) > (-1)) : (ahi$4 > 0))) { res = res.shiftLeft__I__Ljava_math_BigInteger(2147483647); const b$1_$_lo$2 = longExp_$_lo$2; const b$1_$_hi$2 = longExp_$_hi$2; const bhi$3 = b$1_$_hi$2; const lo$4 = (((-2147483647) + b$1_$_lo$2) | 0); const hi$5 = ((((-2147483648) ^ lo$4) < 1) ? bhi$3 : (((-1) + bhi$3) | 0)); const jsx$3_$_lo$2 = lo$4; const jsx$3_$_hi$2 = hi$5; longExp_$_lo$2 = jsx$3_$_lo$2; longExp_$_hi$2 = jsx$3_$_hi$2 } else { break } }; return res.shiftLeft__I__Ljava_math_BigInteger(lo$1) } } } }; } const $d_Ljava_math_Multiplication$ = new $TypeData().initClass({ Ljava_math_Multiplication$: 0 }, false, "java.math.Multiplication$", { Ljava_math_Multiplication$: 1, O: 1 }); $c_Ljava_math_Multiplication$.prototype.$classData = $d_Ljava_math_Multiplication$; let $n_Ljava_math_Multiplication$ = (void 0); const $m_Ljava_math_Multiplication$ = (function() { if ((!$n_Ljava_math_Multiplication$)) { $n_Ljava_math_Multiplication$ = new $c_Ljava_math_Multiplication$().init___() }; return $n_Ljava_math_Multiplication$ }); class $c_Ljava_nio_Buffer extends $c_O { constructor() { super(); this.$$undcapacity$1 = 0; this.$$undlimit$1 = 0; this.java$nio$Buffer$$$undposition$1 = 0; this.$$undmark$1 = 0 }; position__I__Ljava_nio_Buffer(newPosition) { if (((newPosition < 0) || (newPosition > this.$$undlimit$1))) { throw new $c_jl_IllegalArgumentException().init___() }; this.java$nio$Buffer$$$undposition$1 = newPosition; if ((this.$$undmark$1 > newPosition)) { this.$$undmark$1 = (-1) }; return this }; toString__T() { return ((((((($objectGetClass(this).getName__T() + "[pos=") + this.java$nio$Buffer$$$undposition$1) + " lim=") + this.$$undlimit$1) + " cap=") + this.$$undcapacity$1) + "]") }; flip__Ljava_nio_Buffer() { this.$$undmark$1 = (-1); this.$$undlimit$1 = this.java$nio$Buffer$$$undposition$1; this.java$nio$Buffer$$$undposition$1 = 0; return this }; limit__I__Ljava_nio_Buffer(newLimit) { if (((newLimit < 0) || (newLimit > this.$$undcapacity$1))) { throw new $c_jl_IllegalArgumentException().init___() }; this.$$undlimit$1 = newLimit; if ((this.java$nio$Buffer$$$undposition$1 > newLimit)) { this.java$nio$Buffer$$$undposition$1 = newLimit; if ((this.$$undmark$1 > newLimit)) { this.$$undmark$1 = (-1) } }; return this }; init___I(_capacity) { this.$$undcapacity$1 = _capacity; this.$$undlimit$1 = this.$$undcapacity$1; this.java$nio$Buffer$$$undposition$1 = 0; this.$$undmark$1 = (-1); return this }; } class $c_Ljava_nio_ByteBuffer$ extends $c_O { init___() { return this }; allocate__I__Ljava_nio_ByteBuffer(capacity) { const array = $newArrayObject($d_B.getArrayOf(), [capacity]); const length = array.u.length; return $m_Ljava_nio_HeapByteBuffer$().wrap__AB__I__I__I__I__Z__Ljava_nio_ByteBuffer(array, 0, array.u.length, 0, length, false) }; } const $d_Ljava_nio_ByteBuffer$ = new $TypeData().initClass({ Ljava_nio_ByteBuffer$: 0 }, false, "java.nio.ByteBuffer$", { Ljava_nio_ByteBuffer$: 1, O: 1 }); $c_Ljava_nio_ByteBuffer$.prototype.$classData = $d_Ljava_nio_ByteBuffer$; let $n_Ljava_nio_ByteBuffer$ = (void 0); const $m_Ljava_nio_ByteBuffer$ = (function() { if ((!$n_Ljava_nio_ByteBuffer$)) { $n_Ljava_nio_ByteBuffer$ = new $c_Ljava_nio_ByteBuffer$().init___() }; return $n_Ljava_nio_ByteBuffer$ }); class $c_Ljava_nio_CharBuffer$ extends $c_O { init___() { return this }; wrap__jl_CharSequence__I__I__Ljava_nio_CharBuffer(csq, start, end) { return $m_Ljava_nio_StringCharBuffer$().wrap__jl_CharSequence__I__I__I__I__Ljava_nio_CharBuffer(csq, 0, $charSequenceLength(csq), start, ((end - start) | 0)) }; } const $d_Ljava_nio_CharBuffer$ = new $TypeData().initClass({ Ljava_nio_CharBuffer$: 0 }, false, "java.nio.CharBuffer$", { Ljava_nio_CharBuffer$: 1, O: 1 }); $c_Ljava_nio_CharBuffer$.prototype.$classData = $d_Ljava_nio_CharBuffer$; let $n_Ljava_nio_CharBuffer$ = (void 0); const $m_Ljava_nio_CharBuffer$ = (function() { if ((!$n_Ljava_nio_CharBuffer$)) { $n_Ljava_nio_CharBuffer$ = new $c_Ljava_nio_CharBuffer$().init___() }; return $n_Ljava_nio_CharBuffer$ }); class $c_Ljava_nio_HeapByteBuffer$ extends $c_O { init___() { return this }; wrap__AB__I__I__I__I__Z__Ljava_nio_ByteBuffer(array, arrayOffset, capacity, initialPosition, initialLength, isReadOnly) { if ((((arrayOffset < 0) || (capacity < 0)) || (((arrayOffset + capacity) | 0) > array.u.length))) { throw new $c_jl_IndexOutOfBoundsException().init___() }; const initialLimit = ((initialPosition + initialLength) | 0); if ((((initialPosition < 0) || (initialLength < 0)) || (initialLimit > capacity))) { throw new $c_jl_IndexOutOfBoundsException().init___() }; return new $c_Ljava_nio_HeapByteBuffer().init___I__AB__I__I__I__Z(capacity, array, arrayOffset, initialPosition, initialLimit, isReadOnly) }; } const $d_Ljava_nio_HeapByteBuffer$ = new $TypeData().initClass({ Ljava_nio_HeapByteBuffer$: 0 }, false, "java.nio.HeapByteBuffer$", { Ljava_nio_HeapByteBuffer$: 1, O: 1 }); $c_Ljava_nio_HeapByteBuffer$.prototype.$classData = $d_Ljava_nio_HeapByteBuffer$; let $n_Ljava_nio_HeapByteBuffer$ = (void 0); const $m_Ljava_nio_HeapByteBuffer$ = (function() { if ((!$n_Ljava_nio_HeapByteBuffer$)) { $n_Ljava_nio_HeapByteBuffer$ = new $c_Ljava_nio_HeapByteBuffer$().init___() }; return $n_Ljava_nio_HeapByteBuffer$ }); class $c_Ljava_nio_StringCharBuffer$ extends $c_O { init___() { return this }; wrap__jl_CharSequence__I__I__I__I__Ljava_nio_CharBuffer(csq, csqOffset, capacity, initialPosition, initialLength) { if ((((csqOffset < 0) || (capacity < 0)) || (((csqOffset + capacity) | 0) > $charSequenceLength(csq)))) { throw new $c_jl_IndexOutOfBoundsException().init___() }; const initialLimit = ((initialPosition + initialLength) | 0); if ((((initialPosition < 0) || (initialLength < 0)) || (initialLimit > capacity))) { throw new $c_jl_IndexOutOfBoundsException().init___() }; return new $c_Ljava_nio_StringCharBuffer().init___I__jl_CharSequence__I__I__I(capacity, csq, csqOffset, initialPosition, initialLimit) }; } const $d_Ljava_nio_StringCharBuffer$ = new $TypeData().initClass({ Ljava_nio_StringCharBuffer$: 0 }, false, "java.nio.StringCharBuffer$", { Ljava_nio_StringCharBuffer$: 1, O: 1 }); $c_Ljava_nio_StringCharBuffer$.prototype.$classData = $d_Ljava_nio_StringCharBuffer$; let $n_Ljava_nio_StringCharBuffer$ = (void 0); const $m_Ljava_nio_StringCharBuffer$ = (function() { if ((!$n_Ljava_nio_StringCharBuffer$)) { $n_Ljava_nio_StringCharBuffer$ = new $c_Ljava_nio_StringCharBuffer$().init___() }; return $n_Ljava_nio_StringCharBuffer$ }); class $c_Ljava_nio_charset_Charset$ extends $c_O { constructor() { super(); this.CharsetMap$1 = null; this.bitmap$0$1 = false }; init___() { return this }; CharsetMap__p1__sjs_js_Dictionary() { return ((!this.bitmap$0$1) ? this.CharsetMap$lzycompute__p1__sjs_js_Dictionary() : this.CharsetMap$1) }; forName__T__Ljava_nio_charset_Charset(charsetName) { const dict = this.CharsetMap__p1__sjs_js_Dictionary(); const key = charsetName.toLowerCase(); const x1 = ((!(!$m_sjs_js_WrappedDictionary$Cache$().safeHasOwnProperty$1.call(dict, key))) ? new $c_s_Some().init___O(dict[key]) : $m_s_None$()); if ((!(x1 instanceof $c_s_Some))) { const x = $m_s_None$(); if ((x === x1)) { throw new $c_Ljava_nio_charset_UnsupportedCharsetException().init___T(charsetName) }; throw new $c_s_MatchError().init___O(x1) }; const x2 = x1; const v = x2.value$2; return v }; CharsetMap$lzycompute__p1__sjs_js_Dictionary() { if ((!this.bitmap$0$1)) { const m = {}; const array = [$m_Ljava_nio_charset_US$undASCII$(), $m_Ljava_nio_charset_ISO$und8859$und1$(), $m_Ljava_nio_charset_UTF$und8$(), $m_Ljava_nio_charset_UTF$und16BE$(), $m_Ljava_nio_charset_UTF$und16LE$(), $m_Ljava_nio_charset_UTF$und16$()]; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const c = arg1; const thiz = c.canonicalName$1; m[thiz.toLowerCase()] = c; const aliases = c.java$nio$charset$Charset$$$undaliases$1; const end = aliases.u.length; let i$1 = 0; while ((i$1 < end)) { const arg1$1 = i$1; const thiz$1 = aliases.u[arg1$1]; m[thiz$1.toLowerCase()] = c; i$1 = ((1 + i$1) | 0) }; i = ((1 + i) | 0) }; this.CharsetMap$1 = m; this.bitmap$0$1 = true }; return this.CharsetMap$1 }; } const $d_Ljava_nio_charset_Charset$ = new $TypeData().initClass({ Ljava_nio_charset_Charset$: 0 }, false, "java.nio.charset.Charset$", { Ljava_nio_charset_Charset$: 1, O: 1 }); $c_Ljava_nio_charset_Charset$.prototype.$classData = $d_Ljava_nio_charset_Charset$; let $n_Ljava_nio_charset_Charset$ = (void 0); const $m_Ljava_nio_charset_Charset$ = (function() { if ((!$n_Ljava_nio_charset_Charset$)) { $n_Ljava_nio_charset_Charset$ = new $c_Ljava_nio_charset_Charset$().init___() }; return $n_Ljava_nio_charset_Charset$ }); class $c_Ljava_nio_charset_CharsetEncoder extends $c_O { constructor() { super(); this.cs$1 = null; this.$$undaverageBytesPerChar$1 = 0.0; this.$$undmaxBytesPerChar$1 = 0.0; this.$$undreplacement$1 = null; this.$$undmalformedInputAction$1 = null; this.$$undunmappableCharacterAction$1 = null; this.status$1 = 0 }; grow$1__p1__Ljava_nio_ByteBuffer__Ljava_nio_ByteBuffer(out) { if ((out.$$undcapacity$1 === 0)) { return $m_Ljava_nio_ByteBuffer$().allocate__I__Ljava_nio_ByteBuffer(1) } else { const result = $m_Ljava_nio_ByteBuffer$().allocate__I__Ljava_nio_ByteBuffer((out.$$undcapacity$1 << 1)); $c_Ljava_nio_Buffer.prototype.flip__Ljava_nio_Buffer.call(out); result.put__Ljava_nio_ByteBuffer__Ljava_nio_ByteBuffer(out); return result } }; onUnmappableCharacter__Ljava_nio_charset_CodingErrorAction__Ljava_nio_charset_CharsetEncoder(newAction) { if ((newAction === null)) { throw new $c_jl_IllegalArgumentException().init___T("null CodingErrorAction") }; this.$$undunmappableCharacterAction$1 = newAction; return this }; encode__Ljava_nio_CharBuffer__Ljava_nio_ByteBuffer__Z__Ljava_nio_charset_CoderResult($in, out, endOfInput) { if (((this.status$1 === 3) || ((!endOfInput) && (this.status$1 === 2)))) { throw new $c_jl_IllegalStateException().init___() }; this.status$1 = (endOfInput ? 2 : 1); _loop: while (true) { let result1; try { result1 = this.encodeLoop__Ljava_nio_CharBuffer__Ljava_nio_ByteBuffer__Ljava_nio_charset_CoderResult($in, out) } catch (e) { if ((e instanceof $c_Ljava_nio_BufferOverflowException)) { const ex$2 = e; throw new $c_Ljava_nio_charset_CoderMalfunctionError().init___jl_Exception(ex$2) } else if ((e instanceof $c_Ljava_nio_BufferUnderflowException)) { const ex = e; throw new $c_Ljava_nio_charset_CoderMalfunctionError().init___jl_Exception(ex) } else { throw e } }; let result2; if ((result1.java$nio$charset$CoderResult$$kind$f === 0)) { const remaining = (($in.$$undlimit$1 - $in.java$nio$Buffer$$$undposition$1) | 0); if ((endOfInput && (remaining > 0))) { const this$1 = $m_Ljava_nio_charset_CoderResult$(); switch (remaining) { case 1: { result2 = this$1.java$nio$charset$CoderResult$$Malformed1$1; break } case 2: { result2 = this$1.java$nio$charset$CoderResult$$Malformed2$1; break } case 3: { result2 = this$1.java$nio$charset$CoderResult$$Malformed3$1; break } case 4: { result2 = this$1.java$nio$charset$CoderResult$$Malformed4$1; break } default: { result2 = this$1.java$nio$charset$CoderResult$$malformedForLengthImpl__I__Ljava_nio_charset_CoderResult(remaining) } } } else { result2 = result1 } } else { result2 = result1 }; if (((result2.java$nio$charset$CoderResult$$kind$f === 0) || (result2.java$nio$charset$CoderResult$$kind$f === 1))) { return result2 } else { const action = ((result2.java$nio$charset$CoderResult$$kind$f === 3) ? this.$$undunmappableCharacterAction$1 : this.$$undmalformedInputAction$1); const x$2 = $m_Ljava_nio_charset_CodingErrorAction$().REPLACE$1; if ((x$2 === action)) { if ((((out.$$undlimit$1 - out.java$nio$Buffer$$$undposition$1) | 0) < this.$$undreplacement$1.u.length)) { return $m_Ljava_nio_charset_CoderResult$().OVERFLOW$1 } else { const src = this.$$undreplacement$1; out.put__AB__I__I__Ljava_nio_ByteBuffer(src, 0, src.u.length); const jsx$1 = $in.java$nio$Buffer$$$undposition$1; const l = result2.java$nio$charset$CoderResult$$$undlength$f; if ((l < 0)) { throw new $c_jl_UnsupportedOperationException().init___() }; const newPosition = ((jsx$1 + l) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition); continue _loop } } else { const x$4 = $m_Ljava_nio_charset_CodingErrorAction$().REPORT$1; if ((x$4 === action)) { return result2 } else { const x$6 = $m_Ljava_nio_charset_CodingErrorAction$().IGNORE$1; if ((x$6 === action)) { const jsx$2 = $in.java$nio$Buffer$$$undposition$1; const l$1 = result2.java$nio$charset$CoderResult$$$undlength$f; if ((l$1 < 0)) { throw new $c_jl_UnsupportedOperationException().init___() }; const newPosition$1 = ((jsx$2 + l$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$1); continue _loop } else { throw new $c_s_MatchError().init___O(action) } } } } } }; flush__Ljava_nio_ByteBuffer__Ljava_nio_charset_CoderResult(out) { const x1 = this.status$1; switch (x1) { case 2: { const result = $m_Ljava_nio_charset_CoderResult$().UNDERFLOW$1; if ((result.java$nio$charset$CoderResult$$kind$f === 0)) { this.status$1 = 3 }; return result; break } case 3: { return $m_Ljava_nio_charset_CoderResult$().UNDERFLOW$1; break } default: { throw new $c_jl_IllegalStateException().init___() } } }; encode__Ljava_nio_CharBuffer__Ljava_nio_ByteBuffer($in) { if (((($in.$$undlimit$1 - $in.java$nio$Buffer$$$undposition$1) | 0) === 0)) { return $m_Ljava_nio_ByteBuffer$().allocate__I__Ljava_nio_ByteBuffer(0) } else { this.reset__Ljava_nio_charset_CharsetEncoder(); const initLength = $doubleToInt($fround(($fround((($in.$$undlimit$1 - $in.java$nio$Buffer$$$undposition$1) | 0)) * this.$$undaverageBytesPerChar$1))); let out = $m_Ljava_nio_ByteBuffer$().allocate__I__Ljava_nio_ByteBuffer(initLength); let out$1; _loopEncode: while (true) { const result = this.encode__Ljava_nio_CharBuffer__Ljava_nio_ByteBuffer__Z__Ljava_nio_charset_CoderResult($in, out, true); if ((result.java$nio$charset$CoderResult$$kind$f !== 0)) { if ((result.java$nio$charset$CoderResult$$kind$f === 1)) { out = this.grow$1__p1__Ljava_nio_ByteBuffer__Ljava_nio_ByteBuffer(out); continue _loopEncode }; result.throwException__V(); throw new $c_jl_AssertionError().init___O("should not get here") }; if (($in.java$nio$Buffer$$$undposition$1 !== $in.$$undlimit$1)) { throw new $c_jl_AssertionError().init___() }; out$1 = out; break }; let out$2; _loopFlush: while (true) { const result$1 = this.flush__Ljava_nio_ByteBuffer__Ljava_nio_charset_CoderResult(out$1); if ((result$1.java$nio$charset$CoderResult$$kind$f !== 0)) { if ((result$1.java$nio$charset$CoderResult$$kind$f === 1)) { out$1 = this.grow$1__p1__Ljava_nio_ByteBuffer__Ljava_nio_ByteBuffer(out$1); continue _loopFlush }; result$1.throwException__V(); throw new $c_jl_AssertionError().init___O("should not get here") }; out$2 = out$1; break }; $c_Ljava_nio_Buffer.prototype.flip__Ljava_nio_Buffer.call(out$2); return out$2 } }; init___Ljava_nio_charset_Charset__F__F(cs, _averageBytesPerChar, _maxBytesPerChar) { $c_Ljava_nio_charset_CharsetEncoder.prototype.init___Ljava_nio_charset_Charset__F__F__AB.call(this, cs, _averageBytesPerChar, _maxBytesPerChar, $makeNativeArrayWrapper($d_B.getArrayOf(), [63])); return this }; init___Ljava_nio_charset_Charset__F__F__AB(cs, _averageBytesPerChar, _maxBytesPerChar, _replacement) { this.cs$1 = cs; this.$$undaverageBytesPerChar$1 = _averageBytesPerChar; this.$$undmaxBytesPerChar$1 = _maxBytesPerChar; this.$$undreplacement$1 = _replacement; this.$$undmalformedInputAction$1 = $m_Ljava_nio_charset_CodingErrorAction$().REPORT$1; this.$$undunmappableCharacterAction$1 = $m_Ljava_nio_charset_CodingErrorAction$().REPORT$1; this.status$1 = 0; return this }; implReset__V() { /**/ }; onMalformedInput__Ljava_nio_charset_CodingErrorAction__Ljava_nio_charset_CharsetEncoder(newAction) { if ((newAction === null)) { throw new $c_jl_IllegalArgumentException().init___T("null CodingErrorAction") }; this.$$undmalformedInputAction$1 = newAction; return this }; reset__Ljava_nio_charset_CharsetEncoder() { this.status$1 = 0; this.implReset__V(); return this }; } class $c_Ljava_nio_charset_CoderResult extends $c_O { constructor() { super(); this.java$nio$charset$CoderResult$$kind$f = 0; this.java$nio$charset$CoderResult$$$undlength$f = 0 }; init___I__I(kind, _length) { this.java$nio$charset$CoderResult$$kind$f = kind; this.java$nio$charset$CoderResult$$$undlength$f = _length; return this }; throwException__V() { const x1 = this.java$nio$charset$CoderResult$$kind$f; switch (x1) { case 1: { throw new $c_Ljava_nio_BufferOverflowException().init___(); break } case 0: { throw new $c_Ljava_nio_BufferUnderflowException().init___(); break } case 2: { throw new $c_Ljava_nio_charset_MalformedInputException().init___I(this.java$nio$charset$CoderResult$$$undlength$f); break } case 3: { throw new $c_Ljava_nio_charset_UnmappableCharacterException().init___I(this.java$nio$charset$CoderResult$$$undlength$f); break } default: { throw new $c_s_MatchError().init___O(x1) } } }; } const $isArrayOf_Ljava_nio_charset_CoderResult = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_nio_charset_CoderResult))) }); const $d_Ljava_nio_charset_CoderResult = new $TypeData().initClass({ Ljava_nio_charset_CoderResult: 0 }, false, "java.nio.charset.CoderResult", { Ljava_nio_charset_CoderResult: 1, O: 1 }); $c_Ljava_nio_charset_CoderResult.prototype.$classData = $d_Ljava_nio_charset_CoderResult; class $c_Ljava_nio_charset_CoderResult$ extends $c_O { constructor() { super(); this.OVERFLOW$1 = null; this.UNDERFLOW$1 = null; this.java$nio$charset$CoderResult$$Malformed1$1 = null; this.java$nio$charset$CoderResult$$Malformed2$1 = null; this.java$nio$charset$CoderResult$$Malformed3$1 = null; this.java$nio$charset$CoderResult$$Malformed4$1 = null; this.uniqueMalformed$1 = null; this.java$nio$charset$CoderResult$$Unmappable1$1 = null; this.java$nio$charset$CoderResult$$Unmappable2$1 = null; this.java$nio$charset$CoderResult$$Unmappable3$1 = null; this.java$nio$charset$CoderResult$$Unmappable4$1 = null; this.uniqueUnmappable$1 = null }; init___() { $n_Ljava_nio_charset_CoderResult$ = this; this.OVERFLOW$1 = new $c_Ljava_nio_charset_CoderResult().init___I__I(1, (-1)); this.UNDERFLOW$1 = new $c_Ljava_nio_charset_CoderResult().init___I__I(0, (-1)); this.java$nio$charset$CoderResult$$Malformed1$1 = new $c_Ljava_nio_charset_CoderResult().init___I__I(2, 1); this.java$nio$charset$CoderResult$$Malformed2$1 = new $c_Ljava_nio_charset_CoderResult().init___I__I(2, 2); this.java$nio$charset$CoderResult$$Malformed3$1 = new $c_Ljava_nio_charset_CoderResult().init___I__I(2, 3); this.java$nio$charset$CoderResult$$Malformed4$1 = new $c_Ljava_nio_charset_CoderResult().init___I__I(2, 4); this.uniqueMalformed$1 = []; this.java$nio$charset$CoderResult$$Unmappable1$1 = new $c_Ljava_nio_charset_CoderResult().init___I__I(3, 1); this.java$nio$charset$CoderResult$$Unmappable2$1 = new $c_Ljava_nio_charset_CoderResult().init___I__I(3, 2); this.java$nio$charset$CoderResult$$Unmappable3$1 = new $c_Ljava_nio_charset_CoderResult().init___I__I(3, 3); this.java$nio$charset$CoderResult$$Unmappable4$1 = new $c_Ljava_nio_charset_CoderResult().init___I__I(3, 4); this.uniqueUnmappable$1 = []; return this }; java$nio$charset$CoderResult$$malformedForLengthImpl__I__Ljava_nio_charset_CoderResult(length) { const value = this.uniqueMalformed$1[length]; if ((value === (void 0))) { const result = new $c_Ljava_nio_charset_CoderResult().init___I__I(2, length); $m_Ljava_nio_charset_CoderResult$().uniqueMalformed$1[length] = result; return result } else { const result$1 = value; return result$1 } }; } const $d_Ljava_nio_charset_CoderResult$ = new $TypeData().initClass({ Ljava_nio_charset_CoderResult$: 0 }, false, "java.nio.charset.CoderResult$", { Ljava_nio_charset_CoderResult$: 1, O: 1 }); $c_Ljava_nio_charset_CoderResult$.prototype.$classData = $d_Ljava_nio_charset_CoderResult$; let $n_Ljava_nio_charset_CoderResult$ = (void 0); const $m_Ljava_nio_charset_CoderResult$ = (function() { if ((!$n_Ljava_nio_charset_CoderResult$)) { $n_Ljava_nio_charset_CoderResult$ = new $c_Ljava_nio_charset_CoderResult$().init___() }; return $n_Ljava_nio_charset_CoderResult$ }); class $c_Ljava_nio_charset_CodingErrorAction extends $c_O { constructor() { super(); this.name$1 = null }; toString__T() { return this.name$1 }; init___T(name) { this.name$1 = name; return this }; } const $d_Ljava_nio_charset_CodingErrorAction = new $TypeData().initClass({ Ljava_nio_charset_CodingErrorAction: 0 }, false, "java.nio.charset.CodingErrorAction", { Ljava_nio_charset_CodingErrorAction: 1, O: 1 }); $c_Ljava_nio_charset_CodingErrorAction.prototype.$classData = $d_Ljava_nio_charset_CodingErrorAction; class $c_Ljava_nio_charset_CodingErrorAction$ extends $c_O { constructor() { super(); this.IGNORE$1 = null; this.REPLACE$1 = null; this.REPORT$1 = null }; init___() { $n_Ljava_nio_charset_CodingErrorAction$ = this; this.IGNORE$1 = new $c_Ljava_nio_charset_CodingErrorAction().init___T("IGNORE"); this.REPLACE$1 = new $c_Ljava_nio_charset_CodingErrorAction().init___T("REPLACE"); this.REPORT$1 = new $c_Ljava_nio_charset_CodingErrorAction().init___T("REPORT"); return this }; } const $d_Ljava_nio_charset_CodingErrorAction$ = new $TypeData().initClass({ Ljava_nio_charset_CodingErrorAction$: 0 }, false, "java.nio.charset.CodingErrorAction$", { Ljava_nio_charset_CodingErrorAction$: 1, O: 1 }); $c_Ljava_nio_charset_CodingErrorAction$.prototype.$classData = $d_Ljava_nio_charset_CodingErrorAction$; let $n_Ljava_nio_charset_CodingErrorAction$ = (void 0); const $m_Ljava_nio_charset_CodingErrorAction$ = (function() { if ((!$n_Ljava_nio_charset_CodingErrorAction$)) { $n_Ljava_nio_charset_CodingErrorAction$ = new $c_Ljava_nio_charset_CodingErrorAction$().init___() }; return $n_Ljava_nio_charset_CodingErrorAction$ }); class $c_Lsourcecode_SourceValue extends $c_O { } class $c_jl_Class extends $c_O { constructor() { super(); this.data$1 = null }; getName__T() { return this.data$1.name }; getComponentType__jl_Class() { return this.data$1.getComponentType() }; isPrimitive__Z() { return (!(!this.data$1.isPrimitive)) }; toString__T() { return ((this.isInterface__Z() ? "interface " : (this.isPrimitive__Z() ? "" : "class ")) + this.getName__T()) }; isAssignableFrom__jl_Class__Z(that) { return ((this.isPrimitive__Z() || that.isPrimitive__Z()) ? ((this === that) || ((this === $d_S.getClassOf()) ? (that === $d_B.getClassOf()) : ((this === $d_I.getClassOf()) ? ((that === $d_B.getClassOf()) || (that === $d_S.getClassOf())) : ((this === $d_F.getClassOf()) ? (((that === $d_B.getClassOf()) || (that === $d_S.getClassOf())) || (that === $d_I.getClassOf())) : ((this === $d_D.getClassOf()) && ((((that === $d_B.getClassOf()) || (that === $d_S.getClassOf())) || (that === $d_I.getClassOf())) || (that === $d_F.getClassOf()))))))) : this.isInstance__O__Z(that.getFakeInstance__p1__O())) }; isInstance__O__Z(obj) { return (!(!this.data$1.isInstance(obj))) }; init___jl_ScalaJSClassData(data) { this.data$1 = data; return this }; getFakeInstance__p1__O() { return this.data$1.getFakeInstance() }; newArrayOfThisClass__sjs_js_Array__O(dimensions) { return this.data$1.newArrayOfThisClass(dimensions) }; isArray__Z() { return (!(!this.data$1.isArrayClass)) }; isInterface__Z() { return (!(!this.data$1.isInterface)) }; } const $isArrayOf_jl_Class = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Class))) }); const $d_jl_Class = new $TypeData().initClass({ jl_Class: 0 }, false, "java.lang.Class", { jl_Class: 1, O: 1 }); $c_jl_Class.prototype.$classData = $d_jl_Class; class $c_jl_Long$StringRadixInfo extends $c_O { constructor() { super(); this.chunkLength$1 = 0; this.radixPowLength$1 = $m_sjsr_RuntimeLong$().Zero__sjsr_RuntimeLong(); this.paddingZeros$1 = null; this.overflowBarrier$1 = $m_sjsr_RuntimeLong$().Zero__sjsr_RuntimeLong() }; init___I__J__T__J(chunkLength, radixPowLength, paddingZeros, overflowBarrier) { this.chunkLength$1 = chunkLength; this.radixPowLength$1 = radixPowLength; this.paddingZeros$1 = paddingZeros; this.overflowBarrier$1 = overflowBarrier; return this }; } const $isArrayOf_jl_Long$StringRadixInfo = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Long$StringRadixInfo))) }); const $d_jl_Long$StringRadixInfo = new $TypeData().initClass({ jl_Long$StringRadixInfo: 0 }, false, "java.lang.Long$StringRadixInfo", { jl_Long$StringRadixInfo: 1, O: 1 }); $c_jl_Long$StringRadixInfo.prototype.$classData = $d_jl_Long$StringRadixInfo; class $c_jl_System$ extends $c_O { constructor() { super(); this.out$1 = null; this.err$1 = null; this.in$1 = null; this.getHighPrecisionTime$1 = null }; init___() { $n_jl_System$ = this; this.out$1 = new $c_jl_JSConsoleBasedPrintStream().init___Z(false); this.err$1 = new $c_jl_JSConsoleBasedPrintStream().init___Z(true); this.in$1 = null; const x = $g.performance; let jsx$1; if ((!(!(!(!x))))) { const x$1 = $g.performance.now; if ((!(!(!(!x$1))))) { jsx$1 = (function() { return $m_jl_System$().java$lang$System$$$anonfun$getHighPrecisionTime$1__D() }) } else { const x$2 = $g.performance.webkitNow; if ((!(!(!(!x$2))))) { jsx$1 = (function() { return $m_jl_System$().java$lang$System$$$anonfun$getHighPrecisionTime$2__D() }) } else { jsx$1 = (function() { return $m_jl_System$().java$lang$System$$$anonfun$getHighPrecisionTime$3__D() }) } } } else { jsx$1 = (function() { return $m_jl_System$().java$lang$System$$$anonfun$getHighPrecisionTime$4__D() }) }; this.getHighPrecisionTime$1 = jsx$1; return this }; java$lang$System$$$anonfun$getHighPrecisionTime$3__D() { return (+new $g.Date().getTime()) }; java$lang$System$$$anonfun$getHighPrecisionTime$1__D() { return (+$g.performance.now()) }; java$lang$System$$$anonfun$getHighPrecisionTime$4__D() { return (+new $g.Date().getTime()) }; java$lang$System$$$anonfun$getHighPrecisionTime$2__D() { return (+$g.performance.webkitNow()) }; } const $d_jl_System$ = new $TypeData().initClass({ jl_System$: 0 }, false, "java.lang.System$", { jl_System$: 1, O: 1 }); $c_jl_System$.prototype.$classData = $d_jl_System$; let $n_jl_System$ = (void 0); const $m_jl_System$ = (function() { if ((!$n_jl_System$)) { $n_jl_System$ = new $c_jl_System$().init___() }; return $n_jl_System$ }); class $c_jl_Thread$ extends $c_O { constructor() { super(); this.SingleThread$1 = null }; init___() { $n_jl_Thread$ = this; this.SingleThread$1 = new $c_jl_Thread().init___sr_BoxedUnit((void 0)); return this }; } const $d_jl_Thread$ = new $TypeData().initClass({ jl_Thread$: 0 }, false, "java.lang.Thread$", { jl_Thread$: 1, O: 1 }); $c_jl_Thread$.prototype.$classData = $d_jl_Thread$; let $n_jl_Thread$ = (void 0); const $m_jl_Thread$ = (function() { if ((!$n_jl_Thread$)) { $n_jl_Thread$ = new $c_jl_Thread$().init___() }; return $n_jl_Thread$ }); class $c_jl_ThreadLocal extends $c_O { constructor() { super(); this.hasValue$1 = false; this.v$1 = null }; init___() { this.hasValue$1 = false; return this }; remove__V() { this.hasValue$1 = false; this.v$1 = null }; get__O() { if ((!this.hasValue$1)) { this.set__O__V(null) }; return this.v$1 }; set__O__V(o) { this.v$1 = o; this.hasValue$1 = true }; } const $d_jl_ThreadLocal = new $TypeData().initClass({ jl_ThreadLocal: 0 }, false, "java.lang.ThreadLocal", { jl_ThreadLocal: 1, O: 1 }); $c_jl_ThreadLocal.prototype.$classData = $d_jl_ThreadLocal; class $c_jl_reflect_Array$ extends $c_O { init___() { return this }; newInstance__jl_Class__I__O(componentType, length) { return componentType.newArrayOfThisClass__sjs_js_Array__O([length]) }; } const $d_jl_reflect_Array$ = new $TypeData().initClass({ jl_reflect_Array$: 0 }, false, "java.lang.reflect.Array$", { jl_reflect_Array$: 1, O: 1 }); $c_jl_reflect_Array$.prototype.$classData = $d_jl_reflect_Array$; let $n_jl_reflect_Array$ = (void 0); const $m_jl_reflect_Array$ = (function() { if ((!$n_jl_reflect_Array$)) { $n_jl_reflect_Array$ = new $c_jl_reflect_Array$().init___() }; return $n_jl_reflect_Array$ }); class $c_ju_Arrays$ extends $c_O { equals__AO__AO__Z(a, b) { if ((a === b)) { return true }; if (((a === null) || (b === null))) { return false }; const len = a.u.length; if ((b.u.length !== len)) { return false }; let i = 0; while ((i !== len)) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(a.u[i], b.u[i]))) { return false }; i = ((1 + i) | 0) }; return true }; init___() { return this }; binarySearch__AJ__J__I(a, key) { let startIndex = 0; let endIndex = a.u.length; _binarySearchImpl: while (true) { if ((startIndex === endIndex)) { return (((-1) - startIndex) | 0) } else { const mid = ((((startIndex + endIndex) | 0) >>> 1) | 0); const elem = a.u[mid]; const t = $uJ(elem); const lo = t.lo$2; const hi = t.hi$2; const ahi = key.hi$2; if (((ahi === hi) ? (((-2147483648) ^ key.lo$2) < ((-2147483648) ^ lo)) : (ahi < hi))) { endIndex = mid; continue _binarySearchImpl } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, elem)) { return mid } else { startIndex = ((1 + mid) | 0); continue _binarySearchImpl } } } }; equals__AD__AD__Z(a, b) { if ((a === b)) { return true }; if (((a === null) || (b === null))) { return false }; const len = a.u.length; if ((b.u.length !== len)) { return false }; let i = 0; while ((i !== len)) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(a.u[i], b.u[i]))) { return false }; i = ((1 + i) | 0) }; return true }; equals__AI__AI__Z(a, b) { if ((a === b)) { return true }; if (((a === null) || (b === null))) { return false }; const len = a.u.length; if ((b.u.length !== len)) { return false }; let i = 0; while ((i !== len)) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(a.u[i], b.u[i]))) { return false }; i = ((1 + i) | 0) }; return true }; equals__AF__AF__Z(a, b) { if ((a === b)) { return true }; if (((a === null) || (b === null))) { return false }; const len = a.u.length; if ((b.u.length !== len)) { return false }; let i = 0; while ((i !== len)) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(a.u[i], b.u[i]))) { return false }; i = ((1 + i) | 0) }; return true }; equals__AJ__AJ__Z(a, b) { if ((a === b)) { return true }; if (((a === null) || (b === null))) { return false }; const len = a.u.length; if ((b.u.length !== len)) { return false }; let i = 0; while ((i !== len)) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(a.u[i], b.u[i]))) { return false }; i = ((1 + i) | 0) }; return true }; binarySearch__AI__I__I(a, key) { let startIndex = 0; let endIndex = a.u.length; _binarySearchImpl: while (true) { if ((startIndex === endIndex)) { return (((-1) - startIndex) | 0) } else { const mid = ((((startIndex + endIndex) | 0) >>> 1) | 0); const elem = a.u[mid]; if ((key < elem)) { endIndex = mid; continue _binarySearchImpl } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, elem)) { return mid } else { startIndex = ((1 + mid) | 0); continue _binarySearchImpl } } } }; equals__AB__AB__Z(a, b) { if ((a === b)) { return true }; if (((a === null) || (b === null))) { return false }; const len = a.u.length; if ((b.u.length !== len)) { return false }; let i = 0; while ((i !== len)) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(a.u[i], b.u[i]))) { return false }; i = ((1 + i) | 0) }; return true }; equals__AZ__AZ__Z(a, b) { if ((a === b)) { return true }; if (((a === null) || (b === null))) { return false }; const len = a.u.length; if ((b.u.length !== len)) { return false }; let i = 0; while ((i !== len)) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(a.u[i], b.u[i]))) { return false }; i = ((1 + i) | 0) }; return true }; java$util$Arrays$$insertionSortAnyRef__AO__I__I__s_math_Ordering__V(a, start, end, ord) { const n = ((end - start) | 0); if ((n >= 2)) { if ((ord.compare__O__O__I(a.u[start], a.u[((1 + start) | 0)]) > 0)) { const temp = a.u[start]; a.u[start] = a.u[((1 + start) | 0)]; a.u[((1 + start) | 0)] = temp }; let m = 2; while ((m < n)) { const next = a.u[((start + m) | 0)]; if ((ord.compare__O__O__I(next, a.u[(((-1) + ((start + m) | 0)) | 0)]) < 0)) { let iA = start; let iB = (((-1) + ((start + m) | 0)) | 0); while ((((iB - iA) | 0) > 1)) { const ix = ((((iA + iB) | 0) >>> 1) | 0); if ((ord.compare__O__O__I(next, a.u[ix]) < 0)) { iB = ix } else { iA = ix } }; const ix$2 = ((iA + ((ord.compare__O__O__I(next, a.u[iA]) < 0) ? 0 : 1)) | 0); let i = ((start + m) | 0); while ((i > ix$2)) { a.u[i] = a.u[(((-1) + i) | 0)]; i = (((-1) + i) | 0) }; a.u[ix$2] = next }; m = ((1 + m) | 0) } } }; fill__AI__I__V(a, value) { const toIndex = a.u.length; let i = 0; while ((i !== toIndex)) { a.u[i] = value; i = ((1 + i) | 0) } }; equals__AC__AC__Z(a, b) { if ((a === b)) { return true }; if (((a === null) || (b === null))) { return false }; const len = a.u.length; if ((b.u.length !== len)) { return false }; let i = 0; while ((i !== len)) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(new $c_jl_Character().init___C(a.u[i]), new $c_jl_Character().init___C(b.u[i])))) { return false }; i = ((1 + i) | 0) }; return true }; equals__AS__AS__Z(a, b) { if ((a === b)) { return true }; if (((a === null) || (b === null))) { return false }; const len = a.u.length; if ((b.u.length !== len)) { return false }; let i = 0; while ((i !== len)) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(a.u[i], b.u[i]))) { return false }; i = ((1 + i) | 0) }; return true }; sort__AO__ju_Comparator__V(array, comparator) { const ord = new $c_ju_Arrays$$anon$3().init___ju_Comparator(comparator); const end = array.u.length; if ((end > 16)) { this.java$util$Arrays$$stableSplitMergeAnyRef__AO__AO__I__I__s_math_Ordering__V(array, $newArrayObject($d_O.getArrayOf(), [array.u.length]), 0, end, ord) } else { this.java$util$Arrays$$insertionSortAnyRef__AO__I__I__s_math_Ordering__V(array, 0, end, ord) } }; java$util$Arrays$$stableSplitMergeAnyRef__AO__AO__I__I__s_math_Ordering__V(a, temp, start, end, ord) { const length = ((end - start) | 0); if ((length > 16)) { const middle = ((start + ((length / 2) | 0)) | 0); this.java$util$Arrays$$stableSplitMergeAnyRef__AO__AO__I__I__s_math_Ordering__V(a, temp, start, middle, ord); this.java$util$Arrays$$stableSplitMergeAnyRef__AO__AO__I__I__s_math_Ordering__V(a, temp, middle, end, ord); let outIndex = start; let leftInIndex = start; let rightInIndex = middle; while ((outIndex < end)) { let jsx$1; if ((leftInIndex < middle)) { if ((rightInIndex >= end)) { jsx$1 = true } else { const x = a.u[leftInIndex]; const y = a.u[rightInIndex]; jsx$1 = $f_s_math_Ordering__lteq__O__O__Z(ord, x, y) } } else { jsx$1 = false }; if (jsx$1) { temp.u[outIndex] = a.u[leftInIndex]; leftInIndex = ((1 + leftInIndex) | 0) } else { temp.u[outIndex] = a.u[rightInIndex]; rightInIndex = ((1 + rightInIndex) | 0) }; outIndex = ((1 + outIndex) | 0) }; $systemArraycopy(temp, start, a, start, length) } else { this.java$util$Arrays$$insertionSortAnyRef__AO__I__I__s_math_Ordering__V(a, start, end, ord) } }; } const $d_ju_Arrays$ = new $TypeData().initClass({ ju_Arrays$: 0 }, false, "java.util.Arrays$", { ju_Arrays$: 1, O: 1 }); $c_ju_Arrays$.prototype.$classData = $d_ju_Arrays$; let $n_ju_Arrays$ = (void 0); const $m_ju_Arrays$ = (function() { if ((!$n_ju_Arrays$)) { $n_ju_Arrays$ = new $c_ju_Arrays$().init___() }; return $n_ju_Arrays$ }); const $is_ju_Collection = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.ju_Collection))) }); const $isArrayOf_ju_Collection = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.ju_Collection))) }); class $c_ju_Formatter$ extends $c_O { constructor() { super(); this.java$util$Formatter$$FormatSpecifier$1 = null }; init___() { $n_ju_Formatter$ = this; this.java$util$Formatter$$FormatSpecifier$1 = new $g.RegExp("(?:(\\d+)\\$)?([-#+ 0,\\(<]*)(\\d+)?(?:\\.(\\d+))?[%A-Za-z]", "g"); return this }; } const $d_ju_Formatter$ = new $TypeData().initClass({ ju_Formatter$: 0 }, false, "java.util.Formatter$", { ju_Formatter$: 1, O: 1 }); $c_ju_Formatter$.prototype.$classData = $d_ju_Formatter$; let $n_ju_Formatter$ = (void 0); const $m_ju_Formatter$ = (function() { if ((!$n_ju_Formatter$)) { $n_ju_Formatter$ = new $c_ju_Formatter$().init___() }; return $n_ju_Formatter$ }); class $c_ju_regex_Matcher$ extends $c_O { init___() { return this }; java$util$regex$Matcher$$getGroupCount__sjs_js_RegExp$ExecResult__ju_regex_Pattern__I(lastMatch, pattern) { return ((lastMatch !== null) ? (((-1) + (lastMatch.length | 0)) | 0) : pattern.groupCount__I()) }; } const $d_ju_regex_Matcher$ = new $TypeData().initClass({ ju_regex_Matcher$: 0 }, false, "java.util.regex.Matcher$", { ju_regex_Matcher$: 1, O: 1 }); $c_ju_regex_Matcher$.prototype.$classData = $d_ju_regex_Matcher$; let $n_ju_regex_Matcher$ = (void 0); const $m_ju_regex_Matcher$ = (function() { if ((!$n_ju_regex_Matcher$)) { $n_ju_regex_Matcher$ = new $c_ju_regex_Matcher$().init___() }; return $n_ju_regex_Matcher$ }); class $c_s_DeprecatedConsole extends $c_O { } class $c_s_FallbackArrayBuilding extends $c_O { } class $c_s_LowPriorityImplicits extends $c_O { unwrapString__sci_WrappedString__T(ws) { return ((ws !== null) ? ws.self$4 : null) }; wrapString__T__sci_WrappedString(s) { return ((s !== null) ? new $c_sci_WrappedString().init___T(s) : null) }; } const $f_s_PartialFunction__runWith__F1__F1 = (function($thiz, action) { return new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, action$1) { return (function(x$2) { const z = $this.applyOrElse__O__F1__O(x$2, $m_s_PartialFunction$().scala$PartialFunction$$fallback$undpf$f); return ((!$m_s_PartialFunction$().scala$PartialFunction$$fallbackOccurred__O__Z(z)) && (action$1.apply__O__O(z), true)) }) })($thiz, action)) }); const $f_s_PartialFunction__applyOrElse__O__F1__O = (function($thiz, x, $default) { return ($thiz.isDefinedAt__O__Z(x) ? $thiz.apply__O__O(x) : $default.apply__O__O(x)) }); class $c_s_PartialFunction$ extends $c_O { constructor() { super(); this.scala$PartialFunction$$fallback$undpf$f = null; this.scala$PartialFunction$$constFalse$f = null; this.empty$undpf$1 = null }; init___() { $n_s_PartialFunction$ = this; this.scala$PartialFunction$$fallback$undpf$f = new $c_s_PartialFunction$$anonfun$1().init___(); this.scala$PartialFunction$$constFalse$f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$1$2) { return false }) })(this)); this.empty$undpf$1 = new $c_s_PartialFunction$$anon$1().init___(); return this }; scala$PartialFunction$$fallbackOccurred__O__Z(x) { return (this.scala$PartialFunction$$fallback$undpf$f === x) }; } const $d_s_PartialFunction$ = new $TypeData().initClass({ s_PartialFunction$: 0 }, false, "scala.PartialFunction$", { s_PartialFunction$: 1, O: 1 }); $c_s_PartialFunction$.prototype.$classData = $d_s_PartialFunction$; let $n_s_PartialFunction$ = (void 0); const $m_s_PartialFunction$ = (function() { if ((!$n_s_PartialFunction$)) { $n_s_PartialFunction$ = new $c_s_PartialFunction$().init___() }; return $n_s_PartialFunction$ }); class $c_s_Predef$DummyImplicit extends $c_O { init___() { return this }; } const $d_s_Predef$DummyImplicit = new $TypeData().initClass({ s_Predef$DummyImplicit: 0 }, false, "scala.Predef$DummyImplicit", { s_Predef$DummyImplicit: 1, O: 1 }); $c_s_Predef$DummyImplicit.prototype.$classData = $d_s_Predef$DummyImplicit; class $c_s_Predef$any2stringadd$ extends $c_O { init___() { return this }; $$plus$extension__O__T__T($$this, other) { return (("" + $$this) + other) }; } const $d_s_Predef$any2stringadd$ = new $TypeData().initClass({ s_Predef$any2stringadd$: 0 }, false, "scala.Predef$any2stringadd$", { s_Predef$any2stringadd$: 1, O: 1 }); $c_s_Predef$any2stringadd$.prototype.$classData = $d_s_Predef$any2stringadd$; let $n_s_Predef$any2stringadd$ = (void 0); const $m_s_Predef$any2stringadd$ = (function() { if ((!$n_s_Predef$any2stringadd$)) { $n_s_Predef$any2stringadd$ = new $c_s_Predef$any2stringadd$().init___() }; return $n_s_Predef$any2stringadd$ }); const $is_s_Product = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.s_Product))) }); const $isArrayOf_s_Product = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_Product))) }); const $f_s_concurrent_BatchingExecutor__batchable__jl_Runnable__Z = (function($thiz, runnable) { return $is_s_concurrent_OnCompleteRunnable(runnable) }); const $f_s_concurrent_BatchingExecutor__execute__jl_Runnable__V = (function($thiz, runnable) { if ($f_s_concurrent_BatchingExecutor__batchable__jl_Runnable__Z($thiz, runnable)) { const x1 = $thiz.scala$concurrent$BatchingExecutor$$$undtasksLocal$1.get__O(); if ((x1 === null)) { const this$1 = $m_sci_Nil$(); const r = new $c_s_concurrent_BatchingExecutor$Batch().init___s_concurrent_BatchingExecutor__sci_List($thiz, new $c_sci_$colon$colon().init___O__sci_List(runnable, this$1)); r.run__V() } else { $thiz.scala$concurrent$BatchingExecutor$$$undtasksLocal$1.set__O__V(new $c_sci_$colon$colon().init___O__sci_List(runnable, x1)) } } else { runnable.run__V() } }); class $c_s_concurrent_BlockContext$ extends $c_O { constructor() { super(); this.contextLocal$1 = null }; init___() { $n_s_concurrent_BlockContext$ = this; this.contextLocal$1 = new $c_jl_ThreadLocal().init___(); return this }; current__s_concurrent_BlockContext() { const x1 = this.contextLocal$1.get__O(); if ((x1 === null)) { const x1$2 = $m_jl_Thread$().SingleThread$1; return ($is_s_concurrent_BlockContext(x1$2) ? x1$2 : $m_s_concurrent_BlockContext$DefaultBlockContext$()) } else { return x1 } }; } const $d_s_concurrent_BlockContext$ = new $TypeData().initClass({ s_concurrent_BlockContext$: 0 }, false, "scala.concurrent.BlockContext$", { s_concurrent_BlockContext$: 1, O: 1 }); $c_s_concurrent_BlockContext$.prototype.$classData = $d_s_concurrent_BlockContext$; let $n_s_concurrent_BlockContext$ = (void 0); const $m_s_concurrent_BlockContext$ = (function() { if ((!$n_s_concurrent_BlockContext$)) { $n_s_concurrent_BlockContext$ = new $c_s_concurrent_BlockContext$().init___() }; return $n_s_concurrent_BlockContext$ }); class $c_s_concurrent_ExecutionContext$Implicits$ extends $c_O { constructor() { super(); this.global$1 = null; this.bitmap$0$1 = false }; init___() { return this }; global$lzycompute__p1__s_concurrent_ExecutionContext() { if ((!this.bitmap$0$1)) { this.global$1 = $m_sjs_concurrent_JSExecutionContext$().queue$1; this.bitmap$0$1 = true }; return this.global$1 }; global__s_concurrent_ExecutionContext() { return ((!this.bitmap$0$1) ? this.global$lzycompute__p1__s_concurrent_ExecutionContext() : this.global$1) }; } const $d_s_concurrent_ExecutionContext$Implicits$ = new $TypeData().initClass({ s_concurrent_ExecutionContext$Implicits$: 0 }, false, "scala.concurrent.ExecutionContext$Implicits$", { s_concurrent_ExecutionContext$Implicits$: 1, O: 1 }); $c_s_concurrent_ExecutionContext$Implicits$.prototype.$classData = $d_s_concurrent_ExecutionContext$Implicits$; let $n_s_concurrent_ExecutionContext$Implicits$ = (void 0); const $m_s_concurrent_ExecutionContext$Implicits$ = (function() { if ((!$n_s_concurrent_ExecutionContext$Implicits$)) { $n_s_concurrent_ExecutionContext$Implicits$ = new $c_s_concurrent_ExecutionContext$Implicits$().init___() }; return $n_s_concurrent_ExecutionContext$Implicits$ }); const $f_s_concurrent_Future__flatMap__F1__s_concurrent_ExecutionContext__s_concurrent_Future = (function($thiz, f, executor) { const f$2 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, f$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 instanceof $c_s_util_Success)) { const x2 = x0$1; const s = x2.value$2; return f$1.apply__O__O(s) } else if ((x0$1 instanceof $c_s_util_Failure)) { return $this } else { throw new $c_s_MatchError().init___O(x0$1) } }) })($thiz, f)); return $f_s_concurrent_impl_Promise__transformWith__F1__s_concurrent_ExecutionContext__s_concurrent_Future($thiz, f$2, executor) }); const $f_s_concurrent_Future__zipWith__s_concurrent_Future__F2__s_concurrent_ExecutionContext__s_concurrent_Future = (function($thiz, that, f, executor) { return $thiz.flatMap__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, that$1, f$1, executor$1) { return (function(r1$2) { return that$1.map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$1, f$5, r1) { return (function(r2$2) { return f$5.apply__O__O__O(r1, r2$2) }) })($this, f$1, r1$2)), executor$1) }) })($thiz, that, f, executor)), $m_s_concurrent_Future$InternalCallbackExecutor$()) }); const $f_s_concurrent_Future__map__F1__s_concurrent_ExecutionContext__s_concurrent_Future = (function($thiz, f, executor) { const f$2 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, f$1) { return (function(x$2$2) { const x$2 = x$2$2; return x$2.map__F1__s_util_Try(f$1) }) })($thiz, f)); return $f_s_concurrent_impl_Promise__transform__F1__s_concurrent_ExecutionContext__s_concurrent_Future($thiz, f$2, executor) }); const $is_s_concurrent_Future = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.s_concurrent_Future))) }); const $isArrayOf_s_concurrent_Future = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_concurrent_Future))) }); class $c_s_concurrent_Future$ extends $c_O { constructor() { super(); this.toBoxed$1 = null; this.unit$1 = null }; init___() { $n_s_concurrent_Future$ = this; const array = [new $c_T2().init___O__O($d_Z.getClassOf(), $d_jl_Boolean.getClassOf()), new $c_T2().init___O__O($d_B.getClassOf(), $d_jl_Byte.getClassOf()), new $c_T2().init___O__O($d_C.getClassOf(), $d_jl_Character.getClassOf()), new $c_T2().init___O__O($d_S.getClassOf(), $d_jl_Short.getClassOf()), new $c_T2().init___O__O($d_I.getClassOf(), $d_jl_Integer.getClassOf()), new $c_T2().init___O__O($d_J.getClassOf(), $d_jl_Long.getClassOf()), new $c_T2().init___O__O($d_F.getClassOf(), $d_jl_Float.getClassOf()), new $c_T2().init___O__O($d_D.getClassOf(), $d_jl_Double.getClassOf()), new $c_T2().init___O__O($d_V.getClassOf(), $d_sr_BoxedUnit.getClassOf())]; const this$22 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$22.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.toBoxed$1 = this$22.elems$1; this.unit$1 = this.successful__O__s_concurrent_Future((void 0)); return this }; sequence__sc_TraversableOnce__scg_CanBuildFrom__s_concurrent_ExecutionContext__s_concurrent_Future($in, cbf, executor) { return $in.foldLeft__O__F2__O(this.successful__O__s_concurrent_Future(cbf.apply__O__scm_Builder($in)), new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this, executor$1) { return (function(fr$2, fa$2) { const fr = fr$2; const fa = fa$2; return fr.zipWith__s_concurrent_Future__F2__s_concurrent_ExecutionContext__s_concurrent_Future(fa, new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this$1) { return (function(x$6$2, x$7$2) { const x$6 = x$6$2; return x$6.$$plus$eq__O__scm_Builder(x$7$2) }) })($this)), executor$1) }) })(this, executor))).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2) { return (function(x$8$2) { const x$8 = x$8$2; return x$8.result__O() }) })(this)), $m_s_concurrent_Future$InternalCallbackExecutor$()) }; successful__O__s_concurrent_Future(result) { const this$1 = $m_s_concurrent_Promise$().successful__O__s_concurrent_Promise(result); return this$1 }; apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future(body, executor) { return this.unit$1.map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, body$1) { return (function(x$5$2) { return body$1.apply__O() }) })(this, body)), executor) }; } const $d_s_concurrent_Future$ = new $TypeData().initClass({ s_concurrent_Future$: 0 }, false, "scala.concurrent.Future$", { s_concurrent_Future$: 1, O: 1 }); $c_s_concurrent_Future$.prototype.$classData = $d_s_concurrent_Future$; let $n_s_concurrent_Future$ = (void 0); const $m_s_concurrent_Future$ = (function() { if ((!$n_s_concurrent_Future$)) { $n_s_concurrent_Future$ = new $c_s_concurrent_Future$().init___() }; return $n_s_concurrent_Future$ }); class $c_s_concurrent_Promise$ extends $c_O { init___() { return this }; successful__O__s_concurrent_Promise(result) { const result$1 = new $c_s_util_Success().init___O(result); return $m_s_concurrent_impl_Promise$KeptPromise$().apply__s_util_Try__s_concurrent_Promise(result$1) }; } const $d_s_concurrent_Promise$ = new $TypeData().initClass({ s_concurrent_Promise$: 0 }, false, "scala.concurrent.Promise$", { s_concurrent_Promise$: 1, O: 1 }); $c_s_concurrent_Promise$.prototype.$classData = $d_s_concurrent_Promise$; let $n_s_concurrent_Promise$ = (void 0); const $m_s_concurrent_Promise$ = (function() { if ((!$n_s_concurrent_Promise$)) { $n_s_concurrent_Promise$ = new $c_s_concurrent_Promise$().init___() }; return $n_s_concurrent_Promise$ }); class $c_s_concurrent_impl_Promise$ extends $c_O { init___() { return this }; scala$concurrent$impl$Promise$$resolveTry__s_util_Try__s_util_Try(source) { if ((source instanceof $c_s_util_Failure)) { const x2 = source; const t = x2.exception$2; return this.resolver__p1__jl_Throwable__s_util_Try(t) } else { return source } }; resolver__p1__jl_Throwable__s_util_Try(throwable) { if ((throwable instanceof $c_sr_NonLocalReturnControl)) { const x2 = throwable; return new $c_s_util_Success().init___O(x2.value__O()) } else if ($is_s_util_control_ControlThrowable(throwable)) { const x3 = throwable; return new $c_s_util_Failure().init___jl_Throwable(new $c_ju_concurrent_ExecutionException().init___T__jl_Throwable("Boxed ControlThrowable", x3)) } else if ((throwable instanceof $c_jl_InterruptedException)) { const x4 = throwable; return new $c_s_util_Failure().init___jl_Throwable(new $c_ju_concurrent_ExecutionException().init___T__jl_Throwable("Boxed InterruptedException", x4)) } else if ((throwable instanceof $c_jl_Error)) { const x5 = throwable; return new $c_s_util_Failure().init___jl_Throwable(new $c_ju_concurrent_ExecutionException().init___T__jl_Throwable("Boxed Error", x5)) } else { return new $c_s_util_Failure().init___jl_Throwable(throwable) } }; } const $d_s_concurrent_impl_Promise$ = new $TypeData().initClass({ s_concurrent_impl_Promise$: 0 }, false, "scala.concurrent.impl.Promise$", { s_concurrent_impl_Promise$: 1, O: 1 }); $c_s_concurrent_impl_Promise$.prototype.$classData = $d_s_concurrent_impl_Promise$; let $n_s_concurrent_impl_Promise$ = (void 0); const $m_s_concurrent_impl_Promise$ = (function() { if ((!$n_s_concurrent_impl_Promise$)) { $n_s_concurrent_impl_Promise$ = new $c_s_concurrent_impl_Promise$().init___() }; return $n_s_concurrent_impl_Promise$ }); class $c_s_concurrent_impl_Promise$KeptPromise$ extends $c_O { init___() { return this }; apply__s_util_Try__s_concurrent_Promise(result) { const x1 = $m_s_concurrent_impl_Promise$().scala$concurrent$impl$Promise$$resolveTry__s_util_Try__s_util_Try(result); if ((x1 instanceof $c_s_util_Success)) { const x2 = x1; return new $c_s_concurrent_impl_Promise$KeptPromise$Successful().init___s_util_Success(x2) } else if ((x1 instanceof $c_s_util_Failure)) { const x4 = x1; return new $c_s_concurrent_impl_Promise$KeptPromise$Failed().init___s_util_Failure(x4) } else { throw new $c_s_MatchError().init___O(x1) } }; } const $d_s_concurrent_impl_Promise$KeptPromise$ = new $TypeData().initClass({ s_concurrent_impl_Promise$KeptPromise$: 0 }, false, "scala.concurrent.impl.Promise$KeptPromise$", { s_concurrent_impl_Promise$KeptPromise$: 1, O: 1 }); $c_s_concurrent_impl_Promise$KeptPromise$.prototype.$classData = $d_s_concurrent_impl_Promise$KeptPromise$; let $n_s_concurrent_impl_Promise$KeptPromise$ = (void 0); const $m_s_concurrent_impl_Promise$KeptPromise$ = (function() { if ((!$n_s_concurrent_impl_Promise$KeptPromise$)) { $n_s_concurrent_impl_Promise$KeptPromise$ = new $c_s_concurrent_impl_Promise$KeptPromise$().init___() }; return $n_s_concurrent_impl_Promise$KeptPromise$ }); class $c_s_math_Numeric$Ops extends $c_O { constructor() { super(); this.lhs$1 = null; this.$$outer$1 = null }; $$times__O__O(rhs) { return this.$$outer$1.times__O__O__O(this.lhs$1, rhs) }; $$plus__O__O(rhs) { return this.$$outer$1.plus__O__O__O(this.lhs$1, rhs) }; init___s_math_Numeric__O($$outer, lhs) { this.lhs$1 = lhs; if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; } const $f_s_math_Ordered__$$less__O__Z = (function($thiz, that) { return ($thiz.compare__O__I(that) < 0) }); const $f_s_math_Ordered__$$less$eq__O__Z = (function($thiz, that) { return ($thiz.compare__O__I(that) <= 0) }); const $f_s_math_Ordered__$$greater$eq__O__Z = (function($thiz, that) { return ($thiz.compare__O__I(that) >= 0) }); const $f_s_math_Ordered__$$greater__O__Z = (function($thiz, that) { return ($thiz.compare__O__I(that) > 0) }); class $c_s_math_Ordered$ extends $c_O { init___() { return this }; } const $d_s_math_Ordered$ = new $TypeData().initClass({ s_math_Ordered$: 0 }, false, "scala.math.Ordered$", { s_math_Ordered$: 1, O: 1 }); $c_s_math_Ordered$.prototype.$classData = $d_s_math_Ordered$; let $n_s_math_Ordered$ = (void 0); const $m_s_math_Ordered$ = (function() { if ((!$n_s_math_Ordered$)) { $n_s_math_Ordered$ = new $c_s_math_Ordered$().init___() }; return $n_s_math_Ordered$ }); class $c_s_package$ extends $c_O { constructor() { super(); this.BigDecimal$1 = null; this.BigInt$1 = null; this.AnyRef$1 = null; this.Traversable$1 = null; this.Iterable$1 = null; this.Seq$1 = null; this.IndexedSeq$1 = null; this.Iterator$1 = null; this.List$1 = null; this.Nil$1 = null; this.$$colon$colon$1 = null; this.$$plus$colon$1 = null; this.$$colon$plus$1 = null; this.Stream$1 = null; this.$$hash$colon$colon$1 = null; this.Vector$1 = null; this.StringBuilder$1 = null; this.Range$1 = null; this.Equiv$1 = null; this.Fractional$1 = null; this.Integral$1 = null; this.Numeric$1 = null; this.Ordered$1 = null; this.Ordering$1 = null; this.Either$1 = null; this.Left$1 = null; this.Right$1 = null; this.bitmap$0$1 = 0 }; init___() { $n_s_package$ = this; this.AnyRef$1 = new $c_s_package$$anon$1().init___(); this.Traversable$1 = $m_sc_Traversable$(); this.Iterable$1 = $m_sc_Iterable$(); this.Seq$1 = $m_sc_Seq$(); this.IndexedSeq$1 = $m_sc_IndexedSeq$(); this.Iterator$1 = $m_sc_Iterator$(); this.List$1 = $m_sci_List$(); this.Nil$1 = $m_sci_Nil$(); this.$$colon$colon$1 = $m_sci_$colon$colon$(); this.$$plus$colon$1 = $m_sc_$plus$colon$(); this.$$colon$plus$1 = $m_sc_$colon$plus$(); this.Stream$1 = $m_sci_Stream$(); this.$$hash$colon$colon$1 = $m_sci_Stream$$hash$colon$colon$(); this.Vector$1 = $m_sci_Vector$(); this.StringBuilder$1 = $m_scm_StringBuilder$(); this.Range$1 = $m_sci_Range$(); this.Equiv$1 = $m_s_math_Equiv$(); this.Fractional$1 = $m_s_math_Fractional$(); this.Integral$1 = $m_s_math_Integral$(); this.Numeric$1 = $m_s_math_Numeric$(); this.Ordered$1 = $m_s_math_Ordered$(); this.Ordering$1 = $m_s_math_Ordering$(); this.Either$1 = $m_s_util_Either$(); this.Left$1 = $m_s_util_Left$(); this.Right$1 = $m_s_util_Right$(); return this }; BigInt__s_math_BigInt$() { return (((((2 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.BigInt$lzycompute__p1__s_math_BigInt$() : this.BigInt$1) }; BigInt$lzycompute__p1__s_math_BigInt$() { if (((((2 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.BigInt$1 = $m_s_math_BigInt$(); this.bitmap$0$1 = (((2 | this.bitmap$0$1) << 24) >> 24) }; return this.BigInt$1 }; BigDecimal__s_math_BigDecimal$() { return (((((1 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.BigDecimal$lzycompute__p1__s_math_BigDecimal$() : this.BigDecimal$1) }; BigDecimal$lzycompute__p1__s_math_BigDecimal$() { if (((((1 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.BigDecimal$1 = $m_s_math_BigDecimal$(); this.bitmap$0$1 = (((1 | this.bitmap$0$1) << 24) >> 24) }; return this.BigDecimal$1 }; } const $d_s_package$ = new $TypeData().initClass({ s_package$: 0 }, false, "scala.package$", { s_package$: 1, O: 1 }); $c_s_package$.prototype.$classData = $d_s_package$; let $n_s_package$ = (void 0); const $m_s_package$ = (function() { if ((!$n_s_package$)) { $n_s_package$ = new $c_s_package$().init___() }; return $n_s_package$ }); class $c_s_reflect_ClassManifestFactory$ extends $c_O { constructor() { super(); this.Byte$1 = null; this.Short$1 = null; this.Char$1 = null; this.Int$1 = null; this.Long$1 = null; this.Float$1 = null; this.Double$1 = null; this.Boolean$1 = null; this.Unit$1 = null; this.Any$1 = null; this.Object$1 = null; this.AnyVal$1 = null; this.Nothing$1 = null; this.Null$1 = null }; init___() { $n_s_reflect_ClassManifestFactory$ = this; this.Byte$1 = $m_s_reflect_ManifestFactory$ByteManifest$(); this.Short$1 = $m_s_reflect_ManifestFactory$ShortManifest$(); this.Char$1 = $m_s_reflect_ManifestFactory$CharManifest$(); this.Int$1 = $m_s_reflect_ManifestFactory$IntManifest$(); this.Long$1 = $m_s_reflect_ManifestFactory$LongManifest$(); this.Float$1 = $m_s_reflect_ManifestFactory$FloatManifest$(); this.Double$1 = $m_s_reflect_ManifestFactory$DoubleManifest$(); this.Boolean$1 = $m_s_reflect_ManifestFactory$BooleanManifest$(); this.Unit$1 = $m_s_reflect_ManifestFactory$UnitManifest$(); this.Any$1 = $m_s_reflect_ManifestFactory$AnyManifest$(); this.Object$1 = $m_s_reflect_ManifestFactory$ObjectManifest$(); this.AnyVal$1 = $m_s_reflect_ManifestFactory$AnyValManifest$(); this.Nothing$1 = $m_s_reflect_ManifestFactory$NothingManifest$(); this.Null$1 = $m_s_reflect_ManifestFactory$NullManifest$(); return this }; } const $d_s_reflect_ClassManifestFactory$ = new $TypeData().initClass({ s_reflect_ClassManifestFactory$: 0 }, false, "scala.reflect.ClassManifestFactory$", { s_reflect_ClassManifestFactory$: 1, O: 1 }); $c_s_reflect_ClassManifestFactory$.prototype.$classData = $d_s_reflect_ClassManifestFactory$; let $n_s_reflect_ClassManifestFactory$ = (void 0); const $m_s_reflect_ClassManifestFactory$ = (function() { if ((!$n_s_reflect_ClassManifestFactory$)) { $n_s_reflect_ClassManifestFactory$ = new $c_s_reflect_ClassManifestFactory$().init___() }; return $n_s_reflect_ClassManifestFactory$ }); class $c_s_reflect_ManifestFactory$ extends $c_O { init___() { return this }; } const $d_s_reflect_ManifestFactory$ = new $TypeData().initClass({ s_reflect_ManifestFactory$: 0 }, false, "scala.reflect.ManifestFactory$", { s_reflect_ManifestFactory$: 1, O: 1 }); $c_s_reflect_ManifestFactory$.prototype.$classData = $d_s_reflect_ManifestFactory$; let $n_s_reflect_ManifestFactory$ = (void 0); const $m_s_reflect_ManifestFactory$ = (function() { if ((!$n_s_reflect_ManifestFactory$)) { $n_s_reflect_ManifestFactory$ = new $c_s_reflect_ManifestFactory$().init___() }; return $n_s_reflect_ManifestFactory$ }); class $c_s_reflect_package$ extends $c_O { constructor() { super(); this.ClassManifest$1 = null; this.Manifest$1 = null }; init___() { $n_s_reflect_package$ = this; this.ClassManifest$1 = $m_s_reflect_ClassManifestFactory$(); this.Manifest$1 = $m_s_reflect_ManifestFactory$(); return this }; } const $d_s_reflect_package$ = new $TypeData().initClass({ s_reflect_package$: 0 }, false, "scala.reflect.package$", { s_reflect_package$: 1, O: 1 }); $c_s_reflect_package$.prototype.$classData = $d_s_reflect_package$; let $n_s_reflect_package$ = (void 0); const $m_s_reflect_package$ = (function() { if ((!$n_s_reflect_package$)) { $n_s_reflect_package$ = new $c_s_reflect_package$().init___() }; return $n_s_reflect_package$ }); class $c_s_sys_package$ extends $c_O { init___() { return this }; error__T__sr_Nothing$(message) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T(message)) }; } const $d_s_sys_package$ = new $TypeData().initClass({ s_sys_package$: 0 }, false, "scala.sys.package$", { s_sys_package$: 1, O: 1 }); $c_s_sys_package$.prototype.$classData = $d_s_sys_package$; let $n_s_sys_package$ = (void 0); const $m_s_sys_package$ = (function() { if ((!$n_s_sys_package$)) { $n_s_sys_package$ = new $c_s_sys_package$().init___() }; return $n_s_sys_package$ }); class $c_s_util_DynamicVariable extends $c_O { constructor() { super(); this.v$1 = null }; toString__T() { return (("DynamicVariable(" + this.v$1) + ")") }; init___O(init) { this.v$1 = init; return this }; } const $d_s_util_DynamicVariable = new $TypeData().initClass({ s_util_DynamicVariable: 0 }, false, "scala.util.DynamicVariable", { s_util_DynamicVariable: 1, O: 1 }); $c_s_util_DynamicVariable.prototype.$classData = $d_s_util_DynamicVariable; class $c_s_util_control_Breaks extends $c_O { constructor() { super(); this.scala$util$control$Breaks$$breakException$1 = null }; init___() { this.scala$util$control$Breaks$$breakException$1 = new $c_s_util_control_BreakControl().init___(); return this }; } const $d_s_util_control_Breaks = new $TypeData().initClass({ s_util_control_Breaks: 0 }, false, "scala.util.control.Breaks", { s_util_control_Breaks: 1, O: 1 }); $c_s_util_control_Breaks.prototype.$classData = $d_s_util_control_Breaks; const $is_s_util_control_ControlThrowable = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.s_util_control_ControlThrowable))) }); const $isArrayOf_s_util_control_ControlThrowable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_util_control_ControlThrowable))) }); class $c_s_util_control_NonFatal$ extends $c_O { init___() { return this }; apply__jl_Throwable__Z(t) { return (!((t instanceof $c_jl_VirtualMachineError) || ((t instanceof $c_jl_ThreadDeath) || ((t instanceof $c_jl_InterruptedException) || ((t instanceof $c_jl_LinkageError) || $is_s_util_control_ControlThrowable(t)))))) }; unapply__jl_Throwable__s_Option(t) { return (this.apply__jl_Throwable__Z(t) ? new $c_s_Some().init___O(t) : $m_s_None$()) }; } const $d_s_util_control_NonFatal$ = new $TypeData().initClass({ s_util_control_NonFatal$: 0 }, false, "scala.util.control.NonFatal$", { s_util_control_NonFatal$: 1, O: 1 }); $c_s_util_control_NonFatal$.prototype.$classData = $d_s_util_control_NonFatal$; let $n_s_util_control_NonFatal$ = (void 0); const $m_s_util_control_NonFatal$ = (function() { if ((!$n_s_util_control_NonFatal$)) { $n_s_util_control_NonFatal$ = new $c_s_util_control_NonFatal$().init___() }; return $n_s_util_control_NonFatal$ }); class $c_s_util_hashing_MurmurHash3 extends $c_O { arrayHash$mVc$sp__Asr_BoxedUnit__I__I(a, seed) { let h = seed; let i = 0; while ((i < a.u.length)) { h = this.mix__I__I__I(h, 0); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, a.u.length) }; arrayHash$mDc$sp__AD__I__I(a, seed) { let h = seed; let i = 0; while ((i < a.u.length)) { h = this.mix__I__I__I(h, $m_sr_Statics$().doubleHash__D__I(a.u[i])); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, a.u.length) }; mixLast__I__I__I(hash, data) { let k = data; k = $imul((-862048943), k); const i = k; k = ((i << 15) | ((i >>> 17) | 0)); k = $imul(461845907, k); return (hash ^ k) }; arrayHash$mJc$sp__AJ__I__I(a, seed) { let h = seed; let i = 0; while ((i < a.u.length)) { h = this.mix__I__I__I(h, $m_sr_Statics$().longHash__J__I(a.u[i])); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, a.u.length) }; hasher$lzycompute$2__p1__sr_LazyRef__I__s_util_hashing_MurmurHash3$hasher$3$(hasher$module$2, seed$1) { if ((hasher$module$2 === null)) { throw new $c_jl_NullPointerException().init___() }; return (hasher$module$2.$$undinitialized$1 ? hasher$module$2.$$undvalue$1 : hasher$module$2.initialize__O__O(new $c_s_util_hashing_MurmurHash3$hasher$3$().init___s_util_hashing_MurmurHash3__I(this, seed$1))) }; arrayHash$mZc$sp__AZ__I__I(a, seed) { let h = seed; let i = 0; while ((i < a.u.length)) { h = this.mix__I__I__I(h, (a.u[i] ? 1231 : 1237)); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, a.u.length) }; arrayHash$mBc$sp__AB__I__I(a, seed) { let h = seed; let i = 0; while ((i < a.u.length)) { h = this.mix__I__I__I(h, a.u[i]); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, a.u.length) }; mix__I__I__I(hash, data) { let h = this.mixLast__I__I__I(hash, data); const i = h; h = ((i << 13) | ((i >>> 19) | 0)); return (((-430675100) + $imul(5, h)) | 0) }; hasher$4__p1__sr_LazyRef__I__s_util_hashing_MurmurHash3$hasher$3$(hasher$module$2, seed$1) { return (hasher$module$2.$$undinitialized$1 ? hasher$module$2.$$undvalue$1 : this.hasher$lzycompute$2__p1__sr_LazyRef__I__s_util_hashing_MurmurHash3$hasher$3$(hasher$module$2, seed$1)) }; avalanche__p1__I__I(hash) { let h = hash; h = (h ^ ((h >>> 16) | 0)); h = $imul((-2048144789), h); h = (h ^ ((h >>> 13) | 0)); h = $imul((-1028477387), h); h = (h ^ ((h >>> 16) | 0)); return h }; arrayHash$mSc$sp__AS__I__I(a, seed) { let h = seed; let i = 0; while ((i < a.u.length)) { h = this.mix__I__I__I(h, a.u[i]); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, a.u.length) }; arrayHash__O__I__I(a, seed) { let h = seed; let i = 0; while ((i < $m_sr_ScalaRunTime$().array$undlength__O__I(a))) { h = this.mix__I__I__I(h, $m_sr_Statics$().anyHash__O__I($m_sr_ScalaRunTime$().array$undapply__O__I__O(a, i))); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, $m_sr_ScalaRunTime$().array$undlength__O__I(a)) }; productHash__s_Product__I__I(x, seed) { const arr = x.productArity__I(); if ((arr === 0)) { const this$1 = x.productPrefix__T(); return $m_sjsr_RuntimeString$().hashCode__T__I(this$1) } else { let h = seed; let i = 0; while ((i < arr)) { h = this.mix__I__I__I(h, $m_sr_Statics$().anyHash__O__I(x.productElement__I__O(i))); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, arr) } }; unorderedHash__sc_TraversableOnce__I__I(xs, seed) { if (xs.isEmpty__Z()) { let h = seed; h = this.mix__I__I__I(h, 0); h = this.mix__I__I__I(h, 0); h = this.mixLast__I__I__I(h, 1); return this.finalizeHash__I__I__I(h, 0) } else { const hasher$module = new $c_sr_LazyRef().init___(); xs.foreach__F1__V(this.hasher$2__p1__sr_LazyRef__s_util_hashing_MurmurHash3$hasher$1$(hasher$module)); let h$2 = seed; h$2 = this.mix__I__I__I(h$2, this.hasher$2__p1__sr_LazyRef__s_util_hashing_MurmurHash3$hasher$1$(hasher$module).a$1); h$2 = this.mix__I__I__I(h$2, this.hasher$2__p1__sr_LazyRef__s_util_hashing_MurmurHash3$hasher$1$(hasher$module).b$1); h$2 = this.mixLast__I__I__I(h$2, this.hasher$2__p1__sr_LazyRef__s_util_hashing_MurmurHash3$hasher$1$(hasher$module).c$1); return this.finalizeHash__I__I__I(h$2, this.hasher$2__p1__sr_LazyRef__s_util_hashing_MurmurHash3$hasher$1$(hasher$module).n$1) } }; arrayHash$mCc$sp__AC__I__I(a, seed) { let h = seed; let i = 0; while ((i < a.u.length)) { h = this.mix__I__I__I(h, a.u[i]); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, a.u.length) }; hasher$lzycompute$1__p1__sr_LazyRef__s_util_hashing_MurmurHash3$hasher$1$(hasher$module$1) { if ((hasher$module$1 === null)) { throw new $c_jl_NullPointerException().init___() }; return (hasher$module$1.$$undinitialized$1 ? hasher$module$1.$$undvalue$1 : hasher$module$1.initialize__O__O(new $c_s_util_hashing_MurmurHash3$hasher$1$().init___s_util_hashing_MurmurHash3(this))) }; arrayHash$mFc$sp__AF__I__I(a, seed) { let h = seed; let i = 0; while ((i < a.u.length)) { const jsx$1 = h; const this$1 = $m_sr_Statics$(); const fv = a.u[i]; h = this.mix__I__I__I(jsx$1, this$1.doubleHash__D__I(fv)); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, a.u.length) }; finalizeHash__I__I__I(hash, length) { return this.avalanche__p1__I__I((hash ^ length)) }; arrayHash$mIc$sp__AI__I__I(a, seed) { let h = seed; let i = 0; while ((i < a.u.length)) { h = this.mix__I__I__I(h, a.u[i]); i = ((1 + i) | 0) }; return this.finalizeHash__I__I__I(h, a.u.length) }; product2Hash__O__O__I__I(x, y, seed) { let h = seed; h = this.mix__I__I__I(h, $m_sr_Statics$().anyHash__O__I(x)); h = this.mix__I__I__I(h, $m_sr_Statics$().anyHash__O__I(y)); return this.finalizeHash__I__I__I(h, 2) }; orderedHash__sc_TraversableOnce__I__I(xs, seed) { if (xs.isEmpty__Z()) { return this.finalizeHash__I__I__I(seed, 0) } else { const hasher$module = new $c_sr_LazyRef().init___(); xs.foreach__F1__V(this.hasher$4__p1__sr_LazyRef__I__s_util_hashing_MurmurHash3$hasher$3$(hasher$module, seed)); return this.finalizeHash__I__I__I(this.hasher$4__p1__sr_LazyRef__I__s_util_hashing_MurmurHash3$hasher$3$(hasher$module, seed).h$1, this.hasher$4__p1__sr_LazyRef__I__s_util_hashing_MurmurHash3$hasher$3$(hasher$module, seed).n$1) } }; hasher$2__p1__sr_LazyRef__s_util_hashing_MurmurHash3$hasher$1$(hasher$module$1) { return (hasher$module$1.$$undinitialized$1 ? hasher$module$1.$$undvalue$1 : this.hasher$lzycompute$1__p1__sr_LazyRef__s_util_hashing_MurmurHash3$hasher$1$(hasher$module$1)) }; listHash__sci_List__I__I(xs, seed) { let n = 0; let h = seed; let elems = xs; while ((!elems.isEmpty__Z())) { const head = elems.head__O(); const this$1 = elems; const tail = this$1.tail__sci_List(); h = this.mix__I__I__I(h, $m_sr_Statics$().anyHash__O__I(head)); n = ((1 + n) | 0); elems = tail }; return this.finalizeHash__I__I__I(h, n) }; } class $c_s_util_hashing_package$ extends $c_O { init___() { return this }; byteswap32__I__I(v) { let hc = $imul((-1640532531), v); hc = $m_jl_Integer$().reverseBytes__I__I(hc); return $imul((-1640532531), hc) }; } const $d_s_util_hashing_package$ = new $TypeData().initClass({ s_util_hashing_package$: 0 }, false, "scala.util.hashing.package$", { s_util_hashing_package$: 1, O: 1 }); $c_s_util_hashing_package$.prototype.$classData = $d_s_util_hashing_package$; let $n_s_util_hashing_package$ = (void 0); const $m_s_util_hashing_package$ = (function() { if ((!$n_s_util_hashing_package$)) { $n_s_util_hashing_package$ = new $c_s_util_hashing_package$().init___() }; return $n_s_util_hashing_package$ }); class $c_sc_$colon$plus$ extends $c_O { init___() { return this }; } const $d_sc_$colon$plus$ = new $TypeData().initClass({ sc_$colon$plus$: 0 }, false, "scala.collection.$colon$plus$", { sc_$colon$plus$: 1, O: 1 }); $c_sc_$colon$plus$.prototype.$classData = $d_sc_$colon$plus$; let $n_sc_$colon$plus$ = (void 0); const $m_sc_$colon$plus$ = (function() { if ((!$n_sc_$colon$plus$)) { $n_sc_$colon$plus$ = new $c_sc_$colon$plus$().init___() }; return $n_sc_$colon$plus$ }); class $c_sc_$plus$colon$ extends $c_O { init___() { return this }; } const $d_sc_$plus$colon$ = new $TypeData().initClass({ sc_$plus$colon$: 0 }, false, "scala.collection.$plus$colon$", { sc_$plus$colon$: 1, O: 1 }); $c_sc_$plus$colon$.prototype.$classData = $d_sc_$plus$colon$; let $n_sc_$plus$colon$ = (void 0); const $m_sc_$plus$colon$ = (function() { if ((!$n_sc_$plus$colon$)) { $n_sc_$plus$colon$ = new $c_sc_$plus$colon$().init___() }; return $n_sc_$plus$colon$ }); class $c_sc_Iterator$ extends $c_O { constructor() { super(); this.empty$1 = null }; init___() { $n_sc_Iterator$ = this; this.empty$1 = new $c_sc_Iterator$$anon$2().init___(); return this }; } const $d_sc_Iterator$ = new $TypeData().initClass({ sc_Iterator$: 0 }, false, "scala.collection.Iterator$", { sc_Iterator$: 1, O: 1 }); $c_sc_Iterator$.prototype.$classData = $d_sc_Iterator$; let $n_sc_Iterator$ = (void 0); const $m_sc_Iterator$ = (function() { if ((!$n_sc_Iterator$)) { $n_sc_Iterator$ = new $c_sc_Iterator$().init___() }; return $n_sc_Iterator$ }); const $f_sc_TraversableOnce__copyToArray__O__I__V = (function($thiz, xs, start) { $thiz.copyToArray__O__I__I__V(xs, start, (($m_sr_ScalaRunTime$().array$undlength__O__I(xs) - start) | 0)) }); const $f_sc_TraversableOnce__appender$2__psc_TraversableOnce__sr_LazyRef__scm_StringBuilder__T__sc_TraversableOnce$appender$1$ = (function($thiz, appender$module$1, b$2, sep$1) { return (appender$module$1.$$undinitialized$1 ? appender$module$1.$$undvalue$1 : $f_sc_TraversableOnce__appender$lzycompute$1__psc_TraversableOnce__sr_LazyRef__scm_StringBuilder__T__sc_TraversableOnce$appender$1$($thiz, appender$module$1, b$2, sep$1)) }); const $f_sc_TraversableOnce__reducer$lzycompute$1__psc_TraversableOnce__sr_LazyRef__F2__sc_TraversableOnce$reducer$1$ = (function($thiz, reducer$module$1, op$3) { if ((reducer$module$1 === null)) { throw new $c_jl_NullPointerException().init___() }; return (reducer$module$1.$$undinitialized$1 ? reducer$module$1.$$undvalue$1 : reducer$module$1.initialize__O__O(new $c_sc_TraversableOnce$reducer$1$().init___sc_TraversableOnce__F2($thiz, op$3))) }); const $f_sc_TraversableOnce__to__scg_CanBuildFrom__O = (function($thiz, cbf) { const b = cbf.apply__scm_Builder(); b.$$plus$plus$eq__sc_TraversableOnce__scg_Growable($thiz.seq__sc_TraversableOnce()); return b.result__O() }); const $f_sc_TraversableOnce__mkString__T__T__T__T = (function($thiz, start, sep, end) { const this$1 = $thiz.addString__scm_StringBuilder__T__T__T__scm_StringBuilder(new $c_scm_StringBuilder().init___(), start, sep, end); return this$1.underlying$5.java$lang$StringBuilder$$content$f }); const $f_sc_TraversableOnce__foldLeft__O__F2__O = (function($thiz, z, op) { const folder$module = new $c_sr_LazyRef().init___(); $thiz.foreach__F1__V($f_sc_TraversableOnce__folder$2__psc_TraversableOnce__sr_LazyRef__O__F2__sc_TraversableOnce$folder$1$($thiz, folder$module, z, op)); return $f_sc_TraversableOnce__folder$2__psc_TraversableOnce__sr_LazyRef__O__F2__sc_TraversableOnce$folder$1$($thiz, folder$module, z, op).result$1 }); const $f_sc_TraversableOnce__reducer$2__psc_TraversableOnce__sr_LazyRef__F2__sc_TraversableOnce$reducer$1$ = (function($thiz, reducer$module$1, op$3) { return (reducer$module$1.$$undinitialized$1 ? reducer$module$1.$$undvalue$1 : $f_sc_TraversableOnce__reducer$lzycompute$1__psc_TraversableOnce__sr_LazyRef__F2__sc_TraversableOnce$reducer$1$($thiz, reducer$module$1, op$3)) }); const $f_sc_TraversableOnce__size__I = (function($thiz) { const counter$module = new $c_sr_LazyRef().init___(); $thiz.foreach__F1__V($f_sc_TraversableOnce__counter$2__psc_TraversableOnce__sr_LazyRef__sc_TraversableOnce$counter$1$($thiz, counter$module)); return $f_sc_TraversableOnce__counter$2__psc_TraversableOnce__sr_LazyRef__sc_TraversableOnce$counter$1$($thiz, counter$module).result$1 }); const $f_sc_TraversableOnce__min__s_math_Ordering__O = (function($thiz, cmp) { if ($thiz.isEmpty__Z()) { throw new $c_jl_UnsupportedOperationException().init___T("empty.min") }; return $thiz.reduceLeft__F2__O(new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this, cmp$1) { return (function(x$2, y$2) { return ($f_s_math_Ordering__lteq__O__O__Z(cmp$1, x$2, y$2) ? x$2 : y$2) }) })($thiz, cmp))) }); const $f_sc_TraversableOnce__appender$lzycompute$1__psc_TraversableOnce__sr_LazyRef__scm_StringBuilder__T__sc_TraversableOnce$appender$1$ = (function($thiz, appender$module$1, b$2, sep$1) { if ((appender$module$1 === null)) { throw new $c_jl_NullPointerException().init___() }; return (appender$module$1.$$undinitialized$1 ? appender$module$1.$$undvalue$1 : appender$module$1.initialize__O__O(new $c_sc_TraversableOnce$appender$1$().init___sc_TraversableOnce__scm_StringBuilder__T($thiz, b$2, sep$1))) }); const $f_sc_TraversableOnce__addString__scm_StringBuilder__T__T__T__scm_StringBuilder = (function($thiz, b, start, sep, end) { const appender$module = new $c_sr_LazyRef().init___(); b.append__T__scm_StringBuilder(start); $thiz.foreach__F1__V($f_sc_TraversableOnce__appender$2__psc_TraversableOnce__sr_LazyRef__scm_StringBuilder__T__sc_TraversableOnce$appender$1$($thiz, appender$module, b, sep)); b.append__T__scm_StringBuilder(end); return b }); const $f_sc_TraversableOnce__counter$2__psc_TraversableOnce__sr_LazyRef__sc_TraversableOnce$counter$1$ = (function($thiz, counter$module$1) { return (counter$module$1.$$undinitialized$1 ? counter$module$1.$$undvalue$1 : $f_sc_TraversableOnce__counter$lzycompute$1__psc_TraversableOnce__sr_LazyRef__sc_TraversableOnce$counter$1$($thiz, counter$module$1)) }); const $f_sc_TraversableOnce__folder$2__psc_TraversableOnce__sr_LazyRef__O__F2__sc_TraversableOnce$folder$1$ = (function($thiz, folder$module$1, z$1, op$1) { return (folder$module$1.$$undinitialized$1 ? folder$module$1.$$undvalue$1 : $f_sc_TraversableOnce__folder$lzycompute$1__psc_TraversableOnce__sr_LazyRef__O__F2__sc_TraversableOnce$folder$1$($thiz, folder$module$1, z$1, op$1)) }); const $f_sc_TraversableOnce__max__s_math_Ordering__O = (function($thiz, cmp) { if ($thiz.isEmpty__Z()) { throw new $c_jl_UnsupportedOperationException().init___T("empty.max") }; return $thiz.reduceLeft__F2__O(new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this, cmp$1) { return (function(x$2, y$2) { return ($f_s_math_Ordering__gteq__O__O__Z(cmp$1, x$2, y$2) ? x$2 : y$2) }) })($thiz, cmp))) }); const $f_sc_TraversableOnce__counter$lzycompute$1__psc_TraversableOnce__sr_LazyRef__sc_TraversableOnce$counter$1$ = (function($thiz, counter$module$1) { if ((counter$module$1 === null)) { throw new $c_jl_NullPointerException().init___() }; return (counter$module$1.$$undinitialized$1 ? counter$module$1.$$undvalue$1 : counter$module$1.initialize__O__O(new $c_sc_TraversableOnce$counter$1$().init___sc_TraversableOnce($thiz))) }); const $f_sc_TraversableOnce__toArray__s_reflect_ClassTag__O = (function($thiz, evidence$1) { if ($thiz.isTraversableAgain__Z()) { const result = evidence$1.newArray__I__O($thiz.size__I()); $thiz.copyToArray__O__I__V(result, 0); return result } else { return $thiz.toBuffer__scm_Buffer().toArray__s_reflect_ClassTag__O(evidence$1) } }); const $f_sc_TraversableOnce__nonEmpty__Z = (function($thiz) { return (!$thiz.isEmpty__Z()) }); const $f_sc_TraversableOnce__folder$lzycompute$1__psc_TraversableOnce__sr_LazyRef__O__F2__sc_TraversableOnce$folder$1$ = (function($thiz, folder$module$1, z$1, op$1) { if ((folder$module$1 === null)) { throw new $c_jl_NullPointerException().init___() }; return (folder$module$1.$$undinitialized$1 ? folder$module$1.$$undvalue$1 : folder$module$1.initialize__O__O(new $c_sc_TraversableOnce$folder$1$().init___sc_TraversableOnce__O__F2($thiz, z$1, op$1))) }); const $f_sc_TraversableOnce__reduceLeft__F2__O = (function($thiz, op) { const reducer$module = new $c_sr_LazyRef().init___(); if ($thiz.isEmpty__Z()) { throw new $c_jl_UnsupportedOperationException().init___T("empty.reduceLeft") }; $thiz.foreach__F1__V($f_sc_TraversableOnce__reducer$2__psc_TraversableOnce__sr_LazyRef__F2__sc_TraversableOnce$reducer$1$($thiz, reducer$module, op)); return $f_sc_TraversableOnce__reducer$2__psc_TraversableOnce__sr_LazyRef__F2__sc_TraversableOnce$reducer$1$($thiz, reducer$module, op).acc$1 }); const $is_sc_TraversableOnce = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_TraversableOnce))) }); const $isArrayOf_sc_TraversableOnce = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_TraversableOnce))) }); class $c_sc_TraversableOnce$FlattenOps extends $c_O { constructor() { super(); this.scala$collection$TraversableOnce$FlattenOps$$travs$f = null }; init___sc_TraversableOnce(travs) { this.scala$collection$TraversableOnce$FlattenOps$$travs$f = travs; return this }; } const $d_sc_TraversableOnce$FlattenOps = new $TypeData().initClass({ sc_TraversableOnce$FlattenOps: 0 }, false, "scala.collection.TraversableOnce$FlattenOps", { sc_TraversableOnce$FlattenOps: 1, O: 1 }); $c_sc_TraversableOnce$FlattenOps.prototype.$classData = $d_sc_TraversableOnce$FlattenOps; class $c_sc_TraversableOnce$MonadOps extends $c_O { constructor() { super(); this.trav$1 = null }; init___sc_TraversableOnce(trav) { this.trav$1 = trav; return this }; } const $d_sc_TraversableOnce$MonadOps = new $TypeData().initClass({ sc_TraversableOnce$MonadOps: 0 }, false, "scala.collection.TraversableOnce$MonadOps", { sc_TraversableOnce$MonadOps: 1, O: 1 }); $c_sc_TraversableOnce$MonadOps.prototype.$classData = $d_sc_TraversableOnce$MonadOps; class $c_scg_GenMapFactory extends $c_O { apply__sc_Seq__sc_GenMap(elems) { return this.newBuilder__scm_Builder().$$plus$plus$eq__sc_TraversableOnce__scg_Growable(elems).result__O() }; newBuilder__scm_Builder() { return new $c_scm_MapBuilder().init___sc_GenMap(this.empty__sc_GenMap()) }; } class $c_scg_GenericCompanion extends $c_O { apply__sc_Seq__sc_GenTraversable(elems) { if (elems.isEmpty__Z()) { return this.empty__sc_GenTraversable() } else { const b = this.newBuilder__scm_Builder(); b.$$plus$plus$eq__sc_TraversableOnce__scg_Growable(elems); return b.result__O() } }; empty__sc_GenTraversable() { return this.newBuilder__scm_Builder().result__O() }; } const $f_scg_GenericTraversableTemplate__flatten__F1__sc_GenTraversable = (function($thiz, asTraversable) { const b = $thiz.companion__scg_GenericCompanion().newBuilder__scm_Builder(); $thiz.seq__sc_TraversableOnce().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, b$1, asTraversable$1) { return (function(xs$2) { return b$1.$$plus$plus$eq__sc_TraversableOnce__scg_Growable(asTraversable$1.apply__O__O(xs$2).seq__sc_TraversableOnce()) }) })($thiz, b, asTraversable))); return b.result__O() }); const $f_scg_Growable__loop$1__pscg_Growable__sc_LinearSeq__V = (function($thiz, xs) { _loop: while (true) { const this$1 = xs; if ($f_sc_TraversableOnce__nonEmpty__Z(this$1)) { $thiz.$$plus$eq__O__scg_Growable(xs.head__O()); xs = xs.tail__O(); continue _loop }; break } }); const $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable = (function($thiz, xs) { if ($is_sc_LinearSeq(xs)) { const x2 = xs; let xs$1 = x2; $f_scg_Growable__loop$1__pscg_Growable__sc_LinearSeq__V($thiz, xs$1) } else { xs.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(elem$2) { return $this.$$plus$eq__O__scg_Growable(elem$2) }) })($thiz))) }; return $thiz }); const $is_scg_Growable = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.scg_Growable))) }); const $isArrayOf_scg_Growable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scg_Growable))) }); class $c_sci_HashMap$Merger extends $c_O { retainIdentical__Z() { return false }; } class $c_sci_Stream$$hash$colon$colon$ extends $c_O { init___() { return this }; } const $d_sci_Stream$$hash$colon$colon$ = new $TypeData().initClass({ sci_Stream$$hash$colon$colon$: 0 }, false, "scala.collection.immutable.Stream$$hash$colon$colon$", { sci_Stream$$hash$colon$colon$: 1, O: 1 }); $c_sci_Stream$$hash$colon$colon$.prototype.$classData = $d_sci_Stream$$hash$colon$colon$; let $n_sci_Stream$$hash$colon$colon$ = (void 0); const $m_sci_Stream$$hash$colon$colon$ = (function() { if ((!$n_sci_Stream$$hash$colon$colon$)) { $n_sci_Stream$$hash$colon$colon$ = new $c_sci_Stream$$hash$colon$colon$().init___() }; return $n_sci_Stream$$hash$colon$colon$ }); class $c_sci_Stream$ConsWrapper extends $c_O { constructor() { super(); this.tl$1 = null }; init___F0(tl) { this.tl$1 = tl; return this }; $$hash$colon$colon$colon__sci_Stream__sci_Stream(prefix) { return prefix.append__F0__sci_Stream(this.tl$1) }; } const $d_sci_Stream$ConsWrapper = new $TypeData().initClass({ sci_Stream$ConsWrapper: 0 }, false, "scala.collection.immutable.Stream$ConsWrapper", { sci_Stream$ConsWrapper: 1, O: 1 }); $c_sci_Stream$ConsWrapper.prototype.$classData = $d_sci_Stream$ConsWrapper; class $c_sci_StreamIterator$LazyCell extends $c_O { constructor() { super(); this.v$1 = null; this.st$1 = null; this.bitmap$0$1 = false; this.$$outer$1 = null }; init___sci_StreamIterator__F0($$outer, st) { this.st$1 = st; if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; v$lzycompute__p1__sci_Stream() { if ((!this.bitmap$0$1)) { this.v$1 = this.st$1.apply__O(); this.bitmap$0$1 = true }; this.st$1 = null; return this.v$1 }; v__sci_Stream() { return ((!this.bitmap$0$1) ? this.v$lzycompute__p1__sci_Stream() : this.v$1) }; } const $d_sci_StreamIterator$LazyCell = new $TypeData().initClass({ sci_StreamIterator$LazyCell: 0 }, false, "scala.collection.immutable.StreamIterator$LazyCell", { sci_StreamIterator$LazyCell: 1, O: 1 }); $c_sci_StreamIterator$LazyCell.prototype.$classData = $d_sci_StreamIterator$LazyCell; class $c_sci_StringOps$ extends $c_O { init___() { return this }; equals$extension__T__O__Z($$this, x$1) { if ((x$1 instanceof $c_sci_StringOps)) { const StringOps$1 = ((x$1 === null) ? null : x$1.repr$1); return ($$this === StringOps$1) } else { return false } }; slice$extension__T__I__I__T($$this, from, until) { const start = ((from < 0) ? 0 : from); if (((until <= start) || (start >= ($$this.length | 0)))) { return "" }; const end = ((until > ($$this.length | 0)) ? ($$this.length | 0) : until); return $$this.substring(start, end) }; } const $d_sci_StringOps$ = new $TypeData().initClass({ sci_StringOps$: 0 }, false, "scala.collection.immutable.StringOps$", { sci_StringOps$: 1, O: 1 }); $c_sci_StringOps$.prototype.$classData = $d_sci_StringOps$; let $n_sci_StringOps$ = (void 0); const $m_sci_StringOps$ = (function() { if ((!$n_sci_StringOps$)) { $n_sci_StringOps$ = new $c_sci_StringOps$().init___() }; return $n_sci_StringOps$ }); class $c_sci_WrappedString$ extends $c_O { constructor() { super(); this.canBuildFrom$1 = null }; init___() { $n_sci_WrappedString$ = this; this.canBuildFrom$1 = new $c_sci_WrappedString$$anon$1().init___(); return this }; newBuilder__scm_Builder() { const this$2 = new $c_scm_StringBuilder().init___(); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$2) { const x = x$2; return new $c_sci_WrappedString().init___T(x) }) })(this)); return new $c_scm_Builder$$anon$1().init___scm_Builder__F1(this$2, f) }; } const $d_sci_WrappedString$ = new $TypeData().initClass({ sci_WrappedString$: 0 }, false, "scala.collection.immutable.WrappedString$", { sci_WrappedString$: 1, O: 1 }); $c_sci_WrappedString$.prototype.$classData = $d_sci_WrappedString$; let $n_sci_WrappedString$ = (void 0); const $m_sci_WrappedString$ = (function() { if ((!$n_sci_WrappedString$)) { $n_sci_WrappedString$ = new $c_sci_WrappedString$().init___() }; return $n_sci_WrappedString$ }); class $c_scm_ArrayOps$ofRef$ extends $c_O { init___() { return this }; equals$extension__AO__O__Z($$this, x$1) { if ((x$1 instanceof $c_scm_ArrayOps$ofRef)) { const ofRef$1 = ((x$1 === null) ? null : x$1.repr$1); return ($$this === ofRef$1) } else { return false } }; } const $d_scm_ArrayOps$ofRef$ = new $TypeData().initClass({ scm_ArrayOps$ofRef$: 0 }, false, "scala.collection.mutable.ArrayOps$ofRef$", { scm_ArrayOps$ofRef$: 1, O: 1 }); $c_scm_ArrayOps$ofRef$.prototype.$classData = $d_scm_ArrayOps$ofRef$; let $n_scm_ArrayOps$ofRef$ = (void 0); const $m_scm_ArrayOps$ofRef$ = (function() { if ((!$n_scm_ArrayOps$ofRef$)) { $n_scm_ArrayOps$ofRef$ = new $c_scm_ArrayOps$ofRef$().init___() }; return $n_scm_ArrayOps$ofRef$ }); const $f_scm_FlatHashTable__calcSizeMapSize__I__I = (function($thiz, tableLength) { return ((1 + (tableLength >> 5)) | 0) }); const $f_scm_FlatHashTable__tableSizeSeed__I = (function($thiz) { return $m_jl_Integer$().bitCount__I__I((((-1) + $thiz.table$5.u.length) | 0)) }); const $f_scm_FlatHashTable__addElem__O__Z = (function($thiz, elem) { const newEntry = $f_scm_FlatHashTable$HashUtils__elemToEntry__O__O($thiz, elem); return $f_scm_FlatHashTable__addEntry__O__Z($thiz, newEntry) }); const $f_scm_FlatHashTable__index__I__I = (function($thiz, hcode) { const seed = $thiz.seedvalue$5; const improved = $f_scm_FlatHashTable$HashUtils__improve__I__I__I($thiz, hcode, seed); const ones = (((-1) + $thiz.table$5.u.length) | 0); return (((improved >>> ((32 - $m_jl_Integer$().bitCount__I__I(ones)) | 0)) | 0) & ones) }); const $f_scm_FlatHashTable__addEntry__O__Z = (function($thiz, newEntry) { const hcode = $objectHashCode(newEntry); let h = $f_scm_FlatHashTable__index__I__I($thiz, hcode); let curEntry = $thiz.table$5.u[h]; while ((curEntry !== null)) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(curEntry, newEntry)) { return false }; h = ((((1 + h) | 0) % $thiz.table$5.u.length) | 0); curEntry = $thiz.table$5.u[h] }; $thiz.table$5.u[h] = newEntry; $thiz.tableSize$5 = ((1 + $thiz.tableSize$5) | 0); const h$1 = h; $f_scm_FlatHashTable__nnSizeMapAdd__I__V($thiz, h$1); if (($thiz.tableSize$5 >= $thiz.threshold$5)) { $f_scm_FlatHashTable__growTable__pscm_FlatHashTable__V($thiz) }; return true }); const $f_scm_FlatHashTable__initWithContents__scm_FlatHashTable$Contents__V = (function($thiz, c) { if ((c !== null)) { $thiz.$$undloadFactor$5 = c.loadFactor__I(); $thiz.table$5 = c.table__AO(); $thiz.tableSize$5 = c.tableSize__I(); $thiz.threshold$5 = c.threshold__I(); $thiz.seedvalue$5 = c.seedvalue__I(); $thiz.sizemap$5 = c.sizemap__AI() } }); const $f_scm_FlatHashTable__$$init$__V = (function($thiz) { $thiz.$$undloadFactor$5 = 450; $thiz.table$5 = $newArrayObject($d_O.getArrayOf(), [$m_scm_HashTable$().nextPositivePowerOfTwo__I__I(32)]); $thiz.tableSize$5 = 0; $thiz.threshold$5 = $m_scm_FlatHashTable$().newThreshold__I__I__I($thiz.$$undloadFactor$5, $m_scm_HashTable$().nextPositivePowerOfTwo__I__I(32)); $thiz.sizemap$5 = null; $thiz.seedvalue$5 = $f_scm_FlatHashTable__tableSizeSeed__I($thiz) }); const $f_scm_FlatHashTable__findElemImpl__pscm_FlatHashTable__O__O = (function($thiz, elem) { const searchEntry = $f_scm_FlatHashTable$HashUtils__elemToEntry__O__O($thiz, elem); const hcode = $objectHashCode(searchEntry); let h = $f_scm_FlatHashTable__index__I__I($thiz, hcode); let curEntry = $thiz.table$5.u[h]; while (((curEntry !== null) && (!$m_sr_BoxesRunTime$().equals__O__O__Z(curEntry, searchEntry)))) { h = ((((1 + h) | 0) % $thiz.table$5.u.length) | 0); curEntry = $thiz.table$5.u[h] }; return curEntry }); const $f_scm_FlatHashTable__containsElem__O__Z = (function($thiz, elem) { return ($f_scm_FlatHashTable__findElemImpl__pscm_FlatHashTable__O__O($thiz, elem) !== null) }); const $f_scm_FlatHashTable__nnSizeMapReset__I__V = (function($thiz, tableLength) { if (($thiz.sizemap$5 !== null)) { const nsize = $f_scm_FlatHashTable__calcSizeMapSize__I__I($thiz, tableLength); if (($thiz.sizemap$5.u.length !== nsize)) { $thiz.sizemap$5 = $newArrayObject($d_I.getArrayOf(), [nsize]) } else { $m_ju_Arrays$().fill__AI__I__V($thiz.sizemap$5, 0) } } }); const $f_scm_FlatHashTable__growTable__pscm_FlatHashTable__V = (function($thiz) { const oldtable = $thiz.table$5; $thiz.table$5 = $newArrayObject($d_O.getArrayOf(), [($thiz.table$5.u.length << 1)]); $thiz.tableSize$5 = 0; const tableLength = $thiz.table$5.u.length; $f_scm_FlatHashTable__nnSizeMapReset__I__V($thiz, tableLength); $thiz.seedvalue$5 = $f_scm_FlatHashTable__tableSizeSeed__I($thiz); $thiz.threshold$5 = $m_scm_FlatHashTable$().newThreshold__I__I__I($thiz.$$undloadFactor$5, $thiz.table$5.u.length); let i = 0; while ((i < oldtable.u.length)) { const entry = oldtable.u[i]; if ((entry !== null)) { $f_scm_FlatHashTable__addEntry__O__Z($thiz, entry) }; i = ((1 + i) | 0) } }); const $f_scm_FlatHashTable__nnSizeMapAdd__I__V = (function($thiz, h) { if (($thiz.sizemap$5 !== null)) { const p = (h >> 5); const ev$1 = $thiz.sizemap$5; ev$1.u[p] = ((1 + ev$1.u[p]) | 0) } }); class $c_scm_FlatHashTable$ extends $c_O { init___() { return this }; newThreshold__I__I__I(_loadFactor, size) { const assertion = (_loadFactor < 500); if ((!assertion)) { throw new $c_jl_AssertionError().init___O("assertion failed: loadFactor too large; must be < 0.5") }; const hi = (size >> 31); const hi$1 = (_loadFactor >> 31); const a0 = (65535 & size); const a1 = ((size >>> 16) | 0); const b0 = (65535 & _loadFactor); const b1 = ((_loadFactor >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$2 = (((((((($imul(size, hi$1) + $imul(hi, _loadFactor)) | 0) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const this$2 = $m_sjsr_RuntimeLong$(); const lo$1 = this$2.divideImpl__I__I__I__I__I(lo, hi$2, 1000, 0); return lo$1 }; } const $d_scm_FlatHashTable$ = new $TypeData().initClass({ scm_FlatHashTable$: 0 }, false, "scala.collection.mutable.FlatHashTable$", { scm_FlatHashTable$: 1, O: 1 }); $c_scm_FlatHashTable$.prototype.$classData = $d_scm_FlatHashTable$; let $n_scm_FlatHashTable$ = (void 0); const $m_scm_FlatHashTable$ = (function() { if ((!$n_scm_FlatHashTable$)) { $n_scm_FlatHashTable$ = new $c_scm_FlatHashTable$().init___() }; return $n_scm_FlatHashTable$ }); class $c_scm_FlatHashTable$NullSentinel$ extends $c_O { init___() { return this }; toString__T() { return "NullSentinel" }; hashCode__I() { return 0 }; } const $d_scm_FlatHashTable$NullSentinel$ = new $TypeData().initClass({ scm_FlatHashTable$NullSentinel$: 0 }, false, "scala.collection.mutable.FlatHashTable$NullSentinel$", { scm_FlatHashTable$NullSentinel$: 1, O: 1 }); $c_scm_FlatHashTable$NullSentinel$.prototype.$classData = $d_scm_FlatHashTable$NullSentinel$; let $n_scm_FlatHashTable$NullSentinel$ = (void 0); const $m_scm_FlatHashTable$NullSentinel$ = (function() { if ((!$n_scm_FlatHashTable$NullSentinel$)) { $n_scm_FlatHashTable$NullSentinel$ = new $c_scm_FlatHashTable$NullSentinel$().init___() }; return $n_scm_FlatHashTable$NullSentinel$ }); const $f_scm_HashTable__calcSizeMapSize__I__I = (function($thiz, tableLength) { return ((1 + (tableLength >> 5)) | 0) }); const $f_scm_HashTable__tableSizeSeed__I = (function($thiz) { return $m_jl_Integer$().bitCount__I__I((((-1) + $thiz.table$5.u.length) | 0)) }); const $f_scm_HashTable__findEntry0__pscm_HashTable__O__I__scm_HashEntry = (function($thiz, key, h) { let e = $thiz.table$5.u[h]; while (true) { let jsx$1; if ((e !== null)) { const key1 = e.key$1; jsx$1 = (!$m_sr_BoxesRunTime$().equals__O__O__Z(key1, key)) } else { jsx$1 = false }; if (jsx$1) { const this$1 = e; e = this$1.next$1 } else { break } }; return e }); const $f_scm_HashTable__initWithContents__scm_HashTable$Contents__V = (function($thiz, c) { if ((c !== null)) { $thiz.$$undloadFactor$5 = c.loadFactor__I(); $thiz.table$5 = c.table__Ascm_HashEntry(); $thiz.tableSize$5 = c.tableSize__I(); $thiz.threshold$5 = c.threshold__I(); $thiz.seedvalue$5 = c.seedvalue__I(); $thiz.sizemap$5 = c.sizemap__AI() } }); const $f_scm_HashTable__index__I__I = (function($thiz, hcode) { const ones = (((-1) + $thiz.table$5.u.length) | 0); const exponent = $clz32(ones); const seed = $thiz.seedvalue$5; return ((($f_scm_HashTable$HashUtils__improve__I__I__I($thiz, hcode, seed) >>> exponent) | 0) & ones) }); const $f_scm_HashTable__removeEntry__O__scm_HashEntry = (function($thiz, key) { const hcode = $m_sr_Statics$().anyHash__O__I(key); const h = $f_scm_HashTable__index__I__I($thiz, hcode); let e = $thiz.table$5.u[h]; if ((e !== null)) { const key1 = e.key$1; if ($m_sr_BoxesRunTime$().equals__O__O__Z(key1, key)) { const jsx$1 = $thiz.table$5; const this$1 = e; jsx$1.u[h] = this$1.next$1; $thiz.tableSize$5 = (((-1) + $thiz.tableSize$5) | 0); $f_scm_HashTable__nnSizeMapRemove__I__V($thiz, h); const this$2 = e; this$2.next$1 = null; return e } else { const this$3 = e; let e1 = this$3.next$1; while (true) { let jsx$2; if ((e1 !== null)) { const key1$1 = e1.key$1; jsx$2 = (!$m_sr_BoxesRunTime$().equals__O__O__Z(key1$1, key)) } else { jsx$2 = false }; if (jsx$2) { e = e1; const this$4 = e1; e1 = this$4.next$1 } else { break } }; if ((e1 !== null)) { const this$6 = e; const this$5 = e1; const x$1 = this$5.next$1; this$6.next$1 = x$1; $thiz.tableSize$5 = (((-1) + $thiz.tableSize$5) | 0); $f_scm_HashTable__nnSizeMapRemove__I__V($thiz, h); const this$7 = e1; this$7.next$1 = null; return e1 } } }; return null }); const $f_scm_HashTable__$$init$__V = (function($thiz) { $thiz.$$undloadFactor$5 = 750; const this$1 = $m_scm_HashTable$(); $thiz.table$5 = $newArrayObject($d_scm_HashEntry.getArrayOf(), [this$1.nextPositivePowerOfTwo__I__I(16)]); $thiz.tableSize$5 = 0; const _loadFactor = $thiz.$$undloadFactor$5; const jsx$1 = $m_scm_HashTable$(); const this$2 = $m_scm_HashTable$(); $thiz.threshold$5 = jsx$1.newThreshold__I__I__I(_loadFactor, this$2.nextPositivePowerOfTwo__I__I(16)); $thiz.sizemap$5 = null; $thiz.seedvalue$5 = $f_scm_HashTable__tableSizeSeed__I($thiz) }); const $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I = (function($thiz) { let idx = (((-1) + $thiz.table$5.u.length) | 0); while ((($thiz.table$5.u[idx] === null) && (idx > 0))) { idx = (((-1) + idx) | 0) }; return idx }); const $f_scm_HashTable__findOrAddEntry__O__O__scm_HashEntry = (function($thiz, key, value) { const hcode = $m_sr_Statics$().anyHash__O__I(key); const h = $f_scm_HashTable__index__I__I($thiz, hcode); const e = $f_scm_HashTable__findEntry0__pscm_HashTable__O__I__scm_HashEntry($thiz, key, h); if ((e !== null)) { return e } else { const e$1 = new $c_scm_DefaultEntry().init___O__O(key, value); $f_scm_HashTable__addEntry0__pscm_HashTable__scm_HashEntry__I__V($thiz, e$1, h); return null } }); const $f_scm_HashTable__findEntry__O__scm_HashEntry = (function($thiz, key) { const hcode = $m_sr_Statics$().anyHash__O__I(key); const h = $f_scm_HashTable__index__I__I($thiz, hcode); return $f_scm_HashTable__findEntry0__pscm_HashTable__O__I__scm_HashEntry($thiz, key, h) }); const $f_scm_HashTable__addEntry0__pscm_HashTable__scm_HashEntry__I__V = (function($thiz, e, h) { const x$1 = $thiz.table$5.u[h]; e.next$1 = x$1; $thiz.table$5.u[h] = e; $thiz.tableSize$5 = ((1 + $thiz.tableSize$5) | 0); $f_scm_HashTable__nnSizeMapAdd__I__V($thiz, h); if (($thiz.tableSize$5 > $thiz.threshold$5)) { const newSize = ($thiz.table$5.u.length << 1); $f_scm_HashTable__resize__pscm_HashTable__I__V($thiz, newSize) } }); const $f_scm_HashTable__nnSizeMapRemove__I__V = (function($thiz, h) { if (($thiz.sizemap$5 !== null)) { const ev$1 = $thiz.sizemap$5; const ev$2 = (h >> 5); ev$1.u[ev$2] = (((-1) + ev$1.u[ev$2]) | 0) } }); const $f_scm_HashTable__nnSizeMapReset__I__V = (function($thiz, tableLength) { if (($thiz.sizemap$5 !== null)) { const nsize = $f_scm_HashTable__calcSizeMapSize__I__I($thiz, tableLength); if (($thiz.sizemap$5.u.length !== nsize)) { $thiz.sizemap$5 = $newArrayObject($d_I.getArrayOf(), [nsize]) } else { $m_ju_Arrays$().fill__AI__I__V($thiz.sizemap$5, 0) } } }); const $f_scm_HashTable__nnSizeMapAdd__I__V = (function($thiz, h) { if (($thiz.sizemap$5 !== null)) { const ev$1 = $thiz.sizemap$5; const ev$2 = (h >> 5); ev$1.u[ev$2] = ((1 + ev$1.u[ev$2]) | 0) } }); const $f_scm_HashTable__resize__pscm_HashTable__I__V = (function($thiz, newSize) { const oldTable = $thiz.table$5; $thiz.table$5 = $newArrayObject($d_scm_HashEntry.getArrayOf(), [newSize]); const tableLength = $thiz.table$5.u.length; $f_scm_HashTable__nnSizeMapReset__I__V($thiz, tableLength); let i = (((-1) + oldTable.u.length) | 0); while ((i >= 0)) { let e = oldTable.u[i]; while ((e !== null)) { const key = e.key$1; const hcode = $m_sr_Statics$().anyHash__O__I(key); const h = $f_scm_HashTable__index__I__I($thiz, hcode); const this$1 = e; const e1 = this$1.next$1; const this$2 = e; const x$1 = $thiz.table$5.u[h]; this$2.next$1 = x$1; $thiz.table$5.u[h] = e; e = e1; $f_scm_HashTable__nnSizeMapAdd__I__V($thiz, h) }; i = (((-1) + i) | 0) }; $thiz.threshold$5 = $m_scm_HashTable$().newThreshold__I__I__I($thiz.$$undloadFactor$5, newSize) }); class $c_scm_HashTable$ extends $c_O { init___() { return this }; nextPositivePowerOfTwo__I__I(target) { return (1 << ((-$clz32((((-1) + target) | 0))) | 0)) }; newThreshold__I__I__I(_loadFactor, size) { const hi = (size >> 31); const hi$1 = (_loadFactor >> 31); const a0 = (65535 & size); const a1 = ((size >>> 16) | 0); const b0 = (65535 & _loadFactor); const b1 = ((_loadFactor >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$2 = (((((((($imul(size, hi$1) + $imul(hi, _loadFactor)) | 0) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const this$1 = $m_sjsr_RuntimeLong$(); const lo$1 = this$1.divideImpl__I__I__I__I__I(lo, hi$2, 1000, 0); return lo$1 }; } const $d_scm_HashTable$ = new $TypeData().initClass({ scm_HashTable$: 0 }, false, "scala.collection.mutable.HashTable$", { scm_HashTable$: 1, O: 1 }); $c_scm_HashTable$.prototype.$classData = $d_scm_HashTable$; let $n_scm_HashTable$ = (void 0); const $m_scm_HashTable$ = (function() { if ((!$n_scm_HashTable$)) { $n_scm_HashTable$ = new $c_scm_HashTable$().init___() }; return $n_scm_HashTable$ }); class $c_sjs_concurrent_JSExecutionContext$ extends $c_O { constructor() { super(); this.runNow$1 = null; this.queue$1 = null }; init___() { $n_sjs_concurrent_JSExecutionContext$ = this; this.runNow$1 = $m_sjs_concurrent_RunNowExecutionContext$(); this.queue$1 = $m_sjs_concurrent_QueueExecutionContext$().apply__s_concurrent_ExecutionContextExecutor(); return this }; } const $d_sjs_concurrent_JSExecutionContext$ = new $TypeData().initClass({ sjs_concurrent_JSExecutionContext$: 0 }, false, "scala.scalajs.concurrent.JSExecutionContext$", { sjs_concurrent_JSExecutionContext$: 1, O: 1 }); $c_sjs_concurrent_JSExecutionContext$.prototype.$classData = $d_sjs_concurrent_JSExecutionContext$; let $n_sjs_concurrent_JSExecutionContext$ = (void 0); const $m_sjs_concurrent_JSExecutionContext$ = (function() { if ((!$n_sjs_concurrent_JSExecutionContext$)) { $n_sjs_concurrent_JSExecutionContext$ = new $c_sjs_concurrent_JSExecutionContext$().init___() }; return $n_sjs_concurrent_JSExecutionContext$ }); class $c_sjs_concurrent_QueueExecutionContext$ extends $c_O { init___() { return this }; apply__s_concurrent_ExecutionContextExecutor() { const v = $g.Promise; if ((v === (void 0))) { return new $c_sjs_concurrent_QueueExecutionContext$TimeoutsExecutionContext().init___() } else { return new $c_sjs_concurrent_QueueExecutionContext$PromisesExecutionContext().init___() } }; } const $d_sjs_concurrent_QueueExecutionContext$ = new $TypeData().initClass({ sjs_concurrent_QueueExecutionContext$: 0 }, false, "scala.scalajs.concurrent.QueueExecutionContext$", { sjs_concurrent_QueueExecutionContext$: 1, O: 1 }); $c_sjs_concurrent_QueueExecutionContext$.prototype.$classData = $d_sjs_concurrent_QueueExecutionContext$; let $n_sjs_concurrent_QueueExecutionContext$ = (void 0); const $m_sjs_concurrent_QueueExecutionContext$ = (function() { if ((!$n_sjs_concurrent_QueueExecutionContext$)) { $n_sjs_concurrent_QueueExecutionContext$ = new $c_sjs_concurrent_QueueExecutionContext$().init___() }; return $n_sjs_concurrent_QueueExecutionContext$ }); class $c_sjs_js_JSConverters$JSRichFuture$ extends $c_O { init___() { return this }; scala$scalajs$js$JSConverters$JSRichFuture$$$anonfun$toJSPromise$1__sjs_js_Function1__sjs_js_Function1__s_concurrent_Future__s_concurrent_ExecutionContext__V(resolve, reject, $$this$1, executor$1) { $$this$1.onComplete__F1__s_concurrent_ExecutionContext__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, resolve$1, reject$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 instanceof $c_s_util_Success)) { const x2 = x0$1; const value = x2.value$2; return resolve$1(value) } else if ((x0$1 instanceof $c_s_util_Failure)) { const x3 = x0$1; const th = x3.exception$2; let jsx$1; if ((th instanceof $c_sjs_js_JavaScriptException)) { const x2$2 = th; const e = x2$2.exception$4; jsx$1 = e } else { jsx$1 = th }; return reject$1(jsx$1) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, resolve, reject)), executor$1) }; toJSPromise$extension__s_concurrent_Future__s_concurrent_ExecutionContext__sjs_js_Promise($$this, executor) { return new $g.Promise((function($$this$1, executor$1) { return (function(arg1$2, arg2$2) { $m_sjs_js_JSConverters$JSRichFuture$().scala$scalajs$js$JSConverters$JSRichFuture$$$anonfun$toJSPromise$1__sjs_js_Function1__sjs_js_Function1__s_concurrent_Future__s_concurrent_ExecutionContext__V(arg1$2, arg2$2, $$this$1, executor$1) }) })($$this, executor)) }; } const $d_sjs_js_JSConverters$JSRichFuture$ = new $TypeData().initClass({ sjs_js_JSConverters$JSRichFuture$: 0 }, false, "scala.scalajs.js.JSConverters$JSRichFuture$", { sjs_js_JSConverters$JSRichFuture$: 1, O: 1 }); $c_sjs_js_JSConverters$JSRichFuture$.prototype.$classData = $d_sjs_js_JSConverters$JSRichFuture$; let $n_sjs_js_JSConverters$JSRichFuture$ = (void 0); const $m_sjs_js_JSConverters$JSRichFuture$ = (function() { if ((!$n_sjs_js_JSConverters$JSRichFuture$)) { $n_sjs_js_JSConverters$JSRichFuture$ = new $c_sjs_js_JSConverters$JSRichFuture$().init___() }; return $n_sjs_js_JSConverters$JSRichFuture$ }); class $c_sjs_js_JSConverters$JSRichGenMap$ extends $c_O { init___() { return this }; } const $d_sjs_js_JSConverters$JSRichGenMap$ = new $TypeData().initClass({ sjs_js_JSConverters$JSRichGenMap$: 0 }, false, "scala.scalajs.js.JSConverters$JSRichGenMap$", { sjs_js_JSConverters$JSRichGenMap$: 1, O: 1 }); $c_sjs_js_JSConverters$JSRichGenMap$.prototype.$classData = $d_sjs_js_JSConverters$JSRichGenMap$; let $n_sjs_js_JSConverters$JSRichGenMap$ = (void 0); const $m_sjs_js_JSConverters$JSRichGenMap$ = (function() { if ((!$n_sjs_js_JSConverters$JSRichGenMap$)) { $n_sjs_js_JSConverters$JSRichGenMap$ = new $c_sjs_js_JSConverters$JSRichGenMap$().init___() }; return $n_sjs_js_JSConverters$JSRichGenMap$ }); class $c_sjs_js_JSConverters$JSRichGenTraversableOnce$ extends $c_O { init___() { return this }; toJSArray$extension__sc_GenTraversableOnce__sjs_js_Array($$this) { if (($$this instanceof $c_sjs_js_ArrayOps)) { const x2 = $$this; return x2.scala$scalajs$js$ArrayOps$$array$f } else if (($$this instanceof $c_sjs_js_WrappedArray)) { const x3 = $$this; return x3.array$6 } else { const result = []; $$this.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, result$1) { return (function(x$2) { return (result$1.push(x$2) | 0) }) })(this, result))); return result } }; } const $d_sjs_js_JSConverters$JSRichGenTraversableOnce$ = new $TypeData().initClass({ sjs_js_JSConverters$JSRichGenTraversableOnce$: 0 }, false, "scala.scalajs.js.JSConverters$JSRichGenTraversableOnce$", { sjs_js_JSConverters$JSRichGenTraversableOnce$: 1, O: 1 }); $c_sjs_js_JSConverters$JSRichGenTraversableOnce$.prototype.$classData = $d_sjs_js_JSConverters$JSRichGenTraversableOnce$; let $n_sjs_js_JSConverters$JSRichGenTraversableOnce$ = (void 0); const $m_sjs_js_JSConverters$JSRichGenTraversableOnce$ = (function() { if ((!$n_sjs_js_JSConverters$JSRichGenTraversableOnce$)) { $n_sjs_js_JSConverters$JSRichGenTraversableOnce$ = new $c_sjs_js_JSConverters$JSRichGenTraversableOnce$().init___() }; return $n_sjs_js_JSConverters$JSRichGenTraversableOnce$ }); class $c_sjs_js_Thenable$ThenableOps$ extends $c_O { init___() { return this }; toFuture$extension__sjs_js_Thenable__s_concurrent_Future($$this) { const p2 = new $c_s_concurrent_impl_Promise$DefaultPromise().init___(); const a = (function(p2$1$1) { return (function(arg1$2$1) { return $m_sjs_js_Thenable$ThenableOps$().scala$scalajs$js$Thenable$ThenableOps$$$anonfun$toFuture$2__O__s_concurrent_Promise__sjs_js_$bar(arg1$2$1, p2$1$1) }) })(p2); $$this.then((function(p2$1) { return (function(arg1$2) { return $m_sjs_js_Thenable$ThenableOps$().scala$scalajs$js$Thenable$ThenableOps$$$anonfun$toFuture$1__O__s_concurrent_Promise__sjs_js_$bar(arg1$2, p2$1) }) })(p2), a); return p2 }; scala$scalajs$js$Thenable$ThenableOps$$$anonfun$toFuture$2__O__s_concurrent_Promise__sjs_js_$bar(e, p2$1) { let cause; if ((e instanceof $c_jl_Throwable)) { const x2 = e; cause = x2 } else { cause = new $c_sjs_js_JavaScriptException().init___O(e) }; $f_s_concurrent_Promise__failure__jl_Throwable__s_concurrent_Promise(p2$1, cause) }; scala$scalajs$js$Thenable$ThenableOps$$$anonfun$toFuture$1__O__s_concurrent_Promise__sjs_js_$bar(v, p2$1) { $f_s_concurrent_Promise__success__O__s_concurrent_Promise(p2$1, v) }; } const $d_sjs_js_Thenable$ThenableOps$ = new $TypeData().initClass({ sjs_js_Thenable$ThenableOps$: 0 }, false, "scala.scalajs.js.Thenable$ThenableOps$", { sjs_js_Thenable$ThenableOps$: 1, O: 1 }); $c_sjs_js_Thenable$ThenableOps$.prototype.$classData = $d_sjs_js_Thenable$ThenableOps$; let $n_sjs_js_Thenable$ThenableOps$ = (void 0); const $m_sjs_js_Thenable$ThenableOps$ = (function() { if ((!$n_sjs_js_Thenable$ThenableOps$)) { $n_sjs_js_Thenable$ThenableOps$ = new $c_sjs_js_Thenable$ThenableOps$().init___() }; return $n_sjs_js_Thenable$ThenableOps$ }); class $c_sjs_js_WrappedDictionary$Cache$ extends $c_O { constructor() { super(); this.safeHasOwnProperty$1 = null }; init___() { $n_sjs_js_WrappedDictionary$Cache$ = this; this.safeHasOwnProperty$1 = $g.Object.prototype.hasOwnProperty; return this }; } const $d_sjs_js_WrappedDictionary$Cache$ = new $TypeData().initClass({ sjs_js_WrappedDictionary$Cache$: 0 }, false, "scala.scalajs.js.WrappedDictionary$Cache$", { sjs_js_WrappedDictionary$Cache$: 1, O: 1 }); $c_sjs_js_WrappedDictionary$Cache$.prototype.$classData = $d_sjs_js_WrappedDictionary$Cache$; let $n_sjs_js_WrappedDictionary$Cache$ = (void 0); const $m_sjs_js_WrappedDictionary$Cache$ = (function() { if ((!$n_sjs_js_WrappedDictionary$Cache$)) { $n_sjs_js_WrappedDictionary$Cache$ = new $c_sjs_js_WrappedDictionary$Cache$().init___() }; return $n_sjs_js_WrappedDictionary$Cache$ }); class $c_sjsr_Bits$ extends $c_O { constructor() { super(); this.scala$scalajs$runtime$Bits$$$undareTypedArraysSupported$f = false; this.arrayBuffer$1 = null; this.int32Array$1 = null; this.float32Array$1 = null; this.float64Array$1 = null; this.areTypedArraysBigEndian$1 = false; this.highOffset$1 = 0; this.lowOffset$1 = 0 }; init___() { $n_sjsr_Bits$ = this; this.scala$scalajs$runtime$Bits$$$undareTypedArraysSupported$f = true; this.arrayBuffer$1 = new $g.ArrayBuffer(8); this.int32Array$1 = new $g.Int32Array(this.arrayBuffer$1, 0, 2); this.float32Array$1 = new $g.Float32Array(this.arrayBuffer$1, 0, 2); this.float64Array$1 = new $g.Float64Array(this.arrayBuffer$1, 0, 1); this.int32Array$1[0] = 16909060; this.areTypedArraysBigEndian$1 = ((new $g.Int8Array(this.arrayBuffer$1, 0, 8)[0] | 0) === 1); this.highOffset$1 = (this.areTypedArraysBigEndian$1 ? 0 : 1); this.lowOffset$1 = (this.areTypedArraysBigEndian$1 ? 1 : 0); return this }; numberHashCode__D__I(value) { const iv = ((value | 0) | 0); if (((iv === value) && ((1.0 / value) !== (-Infinity)))) { return iv } else { const t = this.doubleToLongBits__D__J(value); const lo = t.lo$2; const hi = t.hi$2; return (lo ^ hi) } }; longBitsToDouble__J__D(bits) { const jsx$2 = this.int32Array$1; const jsx$1 = this.highOffset$1; const lo = bits.hi$2; jsx$2[jsx$1] = lo; this.int32Array$1[this.lowOffset$1] = bits.lo$2; return (+this.float64Array$1[0]) }; doubleToLongBits__D__J(value) { this.float64Array$1[0] = value; const value$1 = (this.int32Array$1[this.highOffset$1] | 0); const value$2 = (this.int32Array$1[this.lowOffset$1] | 0); return new $c_sjsr_RuntimeLong().init___I__I(value$2, value$1) }; } const $d_sjsr_Bits$ = new $TypeData().initClass({ sjsr_Bits$: 0 }, false, "scala.scalajs.runtime.Bits$", { sjsr_Bits$: 1, O: 1 }); $c_sjsr_Bits$.prototype.$classData = $d_sjsr_Bits$; let $n_sjsr_Bits$ = (void 0); const $m_sjsr_Bits$ = (function() { if ((!$n_sjsr_Bits$)) { $n_sjsr_Bits$ = new $c_sjsr_Bits$().init___() }; return $n_sjsr_Bits$ }); class $c_sjsr_RuntimeString$ extends $c_O { constructor() { super(); this.CASE$undINSENSITIVE$undORDER$1 = null; this.bitmap$0$1 = false }; endsWith__T__T__Z(thiz, suffix) { return (thiz.substring((((thiz.length | 0) - (suffix.length | 0)) | 0)) === suffix) }; init___() { return this }; indexOf__T__I__I__I(thiz, ch, fromIndex) { const str = this.fromCodePoint__p1__I__T(ch); return (thiz.indexOf(str, fromIndex) | 0) }; toCharArray__T__AC(thiz) { const length = (thiz.length | 0); const result = $newArrayObject($d_C.getArrayOf(), [length]); let i = 0; while ((i < length)) { const jsx$1 = i; const index = i; result.u[jsx$1] = (65535 & (thiz.charCodeAt(index) | 0)); i = ((1 + i) | 0) }; return result }; split__T__T__I__AT(thiz, regex, limit) { if ((thiz === null)) { throw new $c_jl_NullPointerException().init___() }; const this$1 = $m_ju_regex_Pattern$(); return this$1.compile__T__I__ju_regex_Pattern(regex, 0).split__jl_CharSequence__I__AT(thiz, limit) }; lastIndexOf__T__I__I(thiz, ch) { const str = this.fromCodePoint__p1__I__T(ch); return (thiz.lastIndexOf(str) | 0) }; getBytes__T__Ljava_nio_charset_Charset__AB(thiz, charset) { const buf = charset.encode__T__Ljava_nio_ByteBuffer(thiz); const res = $newArrayObject($d_B.getArrayOf(), [((buf.$$undlimit$1 - buf.java$nio$Buffer$$$undposition$1) | 0)]); buf.get__AB__I__I__Ljava_nio_ByteBuffer(res, 0, res.u.length); return res }; indexOf__T__I__I(thiz, ch) { const str = this.fromCodePoint__p1__I__T(ch); return (thiz.indexOf(str) | 0) }; newString__AC__I__I__T(value, offset, count) { const end = ((offset + count) | 0); if ((((offset < 0) || (end < offset)) || (end > value.u.length))) { throw new $c_jl_StringIndexOutOfBoundsException().init___() }; let result = ""; let i = offset; while ((i !== end)) { const jsx$1 = result; const c = value.u[i]; result = (("" + jsx$1) + $g.String.fromCharCode(c)); i = ((1 + i) | 0) }; return result }; fromCodePoint__p1__I__T(codePoint) { if ((((-65536) & codePoint) === 0)) { return $g.String.fromCharCode(codePoint) } else if (((codePoint < 0) || (codePoint > 1114111))) { throw new $c_jl_IllegalArgumentException().init___() } else { const offsetCp = (((-65536) + codePoint) | 0); return $g.String.fromCharCode((55296 | (offsetCp >> 10)), (56320 | (1023 & offsetCp))) } }; hashCode__T__I(thiz) { let res = 0; let mul = 1; let i = (((-1) + (thiz.length | 0)) | 0); while ((i >= 0)) { const jsx$1 = res; const index = i; res = ((jsx$1 + $imul((65535 & (thiz.charCodeAt(index) | 0)), mul)) | 0); mul = $imul(31, mul); i = (((-1) + i) | 0) }; return res }; format__T__AO__T(format, args) { const frm = new $c_ju_Formatter().init___(); const res = frm.format__T__AO__ju_Formatter(format, args).toString__T(); frm.close__V(); return res }; replaceAll__T__T__T__T(thiz, regex, replacement) { if ((thiz === null)) { throw new $c_jl_NullPointerException().init___() }; const this$1 = $m_ju_regex_Pattern$(); const this$2 = this$1.compile__T__I__ju_regex_Pattern(regex, 0); return new $c_ju_regex_Matcher().init___ju_regex_Pattern__jl_CharSequence__I__I(this$2, thiz, 0, (thiz.length | 0)).replaceAll__T__T(replacement) }; } const $d_sjsr_RuntimeString$ = new $TypeData().initClass({ sjsr_RuntimeString$: 0 }, false, "scala.scalajs.runtime.RuntimeString$", { sjsr_RuntimeString$: 1, O: 1 }); $c_sjsr_RuntimeString$.prototype.$classData = $d_sjsr_RuntimeString$; let $n_sjsr_RuntimeString$ = (void 0); const $m_sjsr_RuntimeString$ = (function() { if ((!$n_sjsr_RuntimeString$)) { $n_sjsr_RuntimeString$ = new $c_sjsr_RuntimeString$().init___() }; return $n_sjsr_RuntimeString$ }); class $c_sjsr_StackTrace$ extends $c_O { constructor() { super(); this.isRhino$1 = false; this.decompressedClasses$1 = null; this.decompressedPrefixes$1 = null; this.compressedPrefixes$1 = null; this.bitmap$0$1 = 0 }; compressedPrefixes$lzycompute__p1__sjs_js_Array() { if (((((8 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.compressedPrefixes$1 = $g.Object.keys(this.decompressedPrefixes__p1__sjs_js_Dictionary()); this.bitmap$0$1 = (((8 | this.bitmap$0$1) << 24) >> 24) }; return this.compressedPrefixes$1 }; extractFirefox__p1__sjs_js_Dynamic__sjs_js_Array(e) { const x = e.stack; const x$1 = x.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("(?:\\n@:0)?\\s+$", "m"), ""); const x$2 = x$1.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^(?:\\((\\S*)\\))?@", "gm"), "{anonymous}($1)@"); return x$2.split("\n") }; extractOpera10a__p1__sjs_js_Dynamic__sjs_js_Array(e) { const lineRE = $m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("Line (\\d+).*script (?:in )?(\\S+)(?:: In function (\\S+))?$", "i"); const x = e.stacktrace; const lines = x.split("\n"); const result = []; let i = 0; const len = (lines.length | 0); while ((i < len)) { const mtch = lineRE.exec(lines[i]); if ((mtch !== null)) { const value = mtch[3]; const fnName = ((value === (void 0)) ? "{anonymous}" : value); const value$1 = mtch[2]; if ((value$1 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const value$2 = mtch[1]; if ((value$2 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const jsx$1 = result.push(((((fnName + "()@") + value$1) + ":") + value$2)) }; i = ((2 + i) | 0) }; return result }; init___() { return this }; isRhino__p1__Z() { return (((((1 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.isRhino$lzycompute__p1__Z() : this.isRhino$1) }; decodeClassName__p1__T__T(encodedName) { const encoded = (((65535 & (encodedName.charCodeAt(0) | 0)) === 36) ? encodedName.substring(1) : encodedName); const dict = this.decompressedClasses__p1__sjs_js_Dictionary(); let base; if ((!(!$m_sjs_js_WrappedDictionary$Cache$().safeHasOwnProperty$1.call(dict, encoded)))) { const dict$1 = this.decompressedClasses__p1__sjs_js_Dictionary(); if ((!(!(!$m_sjs_js_WrappedDictionary$Cache$().safeHasOwnProperty$1.call(dict$1, encoded))))) { throw new $c_ju_NoSuchElementException().init___T(("key not found: " + encoded)) }; base = dict$1[encoded] } else { base = this.loop$1__p1__I__T__T(0, encoded) }; const thiz = base.split("_").join("."); return thiz.split("$und").join("_") }; extractOpera10b__p1__sjs_js_Dynamic__sjs_js_Array(e) { const lineRE = $m_sjsr_StackTrace$StringRE$().re$extension0__T__sjs_js_RegExp("^(.*)@(.+):(\\d+)$"); const x = e.stacktrace; const lines = x.split("\n"); const result = []; let i = 0; const len = (lines.length | 0); while ((i < len)) { const mtch = lineRE.exec(lines[i]); if ((mtch !== null)) { const value = mtch[1]; let fnName; if ((value === (void 0))) { fnName = "global code" } else { const x$3 = value; fnName = (x$3 + "()") }; const value$1 = mtch[2]; if ((value$1 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const value$2 = mtch[3]; if ((value$2 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const jsx$1 = result.push(((((fnName + "@") + value$1) + ":") + value$2)) }; i = ((1 + i) | 0) }; return result }; extractChrome__p1__sjs_js_Dynamic__sjs_js_Array(e) { const x = (e.stack + "\n"); const x$1 = x.replace($m_sjsr_StackTrace$StringRE$().re$extension0__T__sjs_js_RegExp("^[\\s\\S]+?\\s+at\\s+"), " at "); const x$2 = x$1.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^\\s+(at eval )?at\\s+", "gm"), ""); const x$3 = x$2.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^([^\\(]+?)([\\n])", "gm"), "{anonymous}() ($1)$2"); const x$4 = x$3.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^Object.\\s*\\(([^\\)]+)\\)", "gm"), "{anonymous}() ($1)"); const x$5 = x$4.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^([^\\(]+|\\{anonymous\\}\\(\\)) \\((.+)\\)$", "gm"), "$1@$2"); const jsx$1 = x$5.split("\n"); return jsx$1.slice(0, (-1)) }; extract__sjs_js_Dynamic__Ajl_StackTraceElement(stackdata) { const lines = this.normalizeStackTraceLines__p1__sjs_js_Dynamic__sjs_js_Array(stackdata); return this.normalizedLinesToStackTrace__p1__sjs_js_Array__Ajl_StackTraceElement(lines) }; compressedPrefixes__p1__sjs_js_Array() { return (((((8 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.compressedPrefixes$lzycompute__p1__sjs_js_Array() : this.compressedPrefixes$1) }; decompressedClasses__p1__sjs_js_Dictionary() { return (((((2 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.decompressedClasses$lzycompute__p1__sjs_js_Dictionary() : this.decompressedClasses$1) }; extractClassMethod__p1__T__T2(functionName) { const PatC = $m_sjsr_StackTrace$StringRE$().re$extension0__T__sjs_js_RegExp("^(?:Object\\.|\\[object Object\\]\\.)?(?:ScalaJS\\.c\\.|\\$c_)([^\\.]+)(?:\\.prototype)?\\.([^\\.]+)$"); const PatS = $m_sjsr_StackTrace$StringRE$().re$extension0__T__sjs_js_RegExp("^(?:Object\\.|\\[object Object\\]\\.)?(?:ScalaJS\\.(?:s|f)\\.|\\$(?:s|f)_)((?:_[^_]|[^_])+)__([^\\.]+)$"); const PatM = $m_sjsr_StackTrace$StringRE$().re$extension0__T__sjs_js_RegExp("^(?:Object\\.|\\[object Object\\]\\.)?(?:ScalaJS\\.m\\.|\\$m_)([^\\.]+)$"); let isModule = false; let mtch = PatC.exec(functionName); if ((mtch === null)) { mtch = PatS.exec(functionName); if ((mtch === null)) { mtch = PatM.exec(functionName); isModule = true } }; if ((mtch !== null)) { const value = mtch[1]; if ((value === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const className = this.decodeClassName__p1__T__T(value); let methodName; if (isModule) { methodName = "" } else { const value$1 = mtch[2]; if ((value$1 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; methodName = this.decodeMethodName__p1__T__T(value$1) }; return new $c_T2().init___O__O(className, methodName) } else { return new $c_T2().init___O__O("", functionName) } }; isRhino$lzycompute__p1__Z() { if (((((1 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.isRhino$1 = this.liftedTree1$1__p1__Z(); this.bitmap$0$1 = (((1 | this.bitmap$0$1) << 24) >> 24) }; return this.isRhino$1 }; decompressedPrefixes$lzycompute__p1__sjs_js_Dictionary() { if (((((4 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.decompressedPrefixes$1 = { "sjsr_": "scala_scalajs_runtime_", "sjs_": "scala_scalajs_", "sci_": "scala_collection_immutable_", "scm_": "scala_collection_mutable_", "scg_": "scala_collection_generic_", "sc_": "scala_collection_", "sr_": "scala_runtime_", "s_": "scala_", "jl_": "java_lang_", "ju_": "java_util_" }; this.bitmap$0$1 = (((4 | this.bitmap$0$1) << 24) >> 24) }; return this.decompressedPrefixes$1 }; extract__jl_Throwable__Ajl_StackTraceElement(throwable) { return this.extract__sjs_js_Dynamic__Ajl_StackTraceElement(throwable.stackdata) }; decompressedClasses$lzycompute__p1__sjs_js_Dictionary() { if (((((2 & this.bitmap$0$1) << 24) >> 24) === 0)) { const dict = { "O": "java_lang_Object", "T": "java_lang_String", "V": "scala_Unit", "Z": "scala_Boolean", "C": "scala_Char", "B": "scala_Byte", "S": "scala_Short", "I": "scala_Int", "J": "scala_Long", "F": "scala_Float", "D": "scala_Double" }; let index = 0; while ((index <= 22)) { if ((index >= 2)) { dict[("T" + index)] = ("scala_Tuple" + index) }; dict[("F" + index)] = ("scala_Function" + index); index = ((1 + index) | 0) }; this.decompressedClasses$1 = dict; this.bitmap$0$1 = (((2 | this.bitmap$0$1) << 24) >> 24) }; return this.decompressedClasses$1 }; normalizeStackTraceLines__p1__sjs_js_Dynamic__sjs_js_Array(e) { const x = (!e); if ((!(!(!(!x))))) { return [] } else if (this.isRhino__p1__Z()) { return this.extractRhino__p1__sjs_js_Dynamic__sjs_js_Array(e) } else { const x$1 = (e.arguments && e.stack); if ((!(!(!(!x$1))))) { return this.extractChrome__p1__sjs_js_Dynamic__sjs_js_Array(e) } else { const x$2 = (e.stack && e.sourceURL); if ((!(!(!(!x$2))))) { return this.extractSafari__p1__sjs_js_Dynamic__sjs_js_Array(e) } else { const x$3 = (e.stack && e.number); if ((!(!(!(!x$3))))) { return this.extractIE__p1__sjs_js_Dynamic__sjs_js_Array(e) } else { const x$4 = (e.stack && e.fileName); if ((!(!(!(!x$4))))) { return this.extractFirefox__p1__sjs_js_Dynamic__sjs_js_Array(e) } else { const x$5 = (e.message && e["opera#sourceloc"]); if ((!(!(!(!x$5))))) { const x$6 = (!e.stacktrace); if ((!(!(!(!x$6))))) { return this.extractOpera9__p1__sjs_js_Dynamic__sjs_js_Array(e) } else { const x$7 = ((e.message.indexOf("\n") > (-1)) && (e.message.split("\n").length > e.stacktrace.split("\n").length)); if ((!(!(!(!x$7))))) { return this.extractOpera9__p1__sjs_js_Dynamic__sjs_js_Array(e) } else { return this.extractOpera10a__p1__sjs_js_Dynamic__sjs_js_Array(e) } } } else { const x$8 = ((e.message && e.stack) && e.stacktrace); if ((!(!(!(!x$8))))) { const x$9 = (e.stacktrace.indexOf("called from line") < 0); if ((!(!(!(!x$9))))) { return this.extractOpera10b__p1__sjs_js_Dynamic__sjs_js_Array(e) } else { return this.extractOpera11__p1__sjs_js_Dynamic__sjs_js_Array(e) } } else { const x$10 = (e.stack && (!e.fileName)); if ((!(!(!(!x$10))))) { return this.extractChrome__p1__sjs_js_Dynamic__sjs_js_Array(e) } else { return this.extractOther__p1__sjs_js_Dynamic__sjs_js_Array(e) } } } } } } } } }; extractOpera9__p1__sjs_js_Dynamic__sjs_js_Array(e) { const lineRE = $m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("Line (\\d+).*script (?:in )?(\\S+)", "i"); const x = e.message; const lines = x.split("\n"); const result = []; let i = 2; const len = (lines.length | 0); while ((i < len)) { const mtch = lineRE.exec(lines[i]); if ((mtch !== null)) { const value = mtch[2]; if ((value === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const value$1 = mtch[1]; if ((value$1 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const jsx$1 = result.push(((("{anonymous}()@" + value) + ":") + value$1)) }; i = ((2 + i) | 0) }; return result }; normalizedLinesToStackTrace__p1__sjs_js_Array__Ajl_StackTraceElement(lines) { const NormalizedFrameLine = $m_sjsr_StackTrace$StringRE$().re$extension0__T__sjs_js_RegExp("^([^\\@]*)\\@(.*):([0-9]+)$"); const NormalizedFrameLineWithColumn = $m_sjsr_StackTrace$StringRE$().re$extension0__T__sjs_js_RegExp("^([^\\@]*)\\@(.*):([0-9]+):([0-9]+)$"); const trace = []; let i = 0; while ((i < (lines.length | 0))) { const line = lines[i]; if ((line === null)) { throw new $c_jl_NullPointerException().init___() }; if ((line !== "")) { const mtch1 = NormalizedFrameLineWithColumn.exec(line); if ((mtch1 !== null)) { const value = mtch1[1]; if ((value === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const x1 = this.extractClassMethod__p1__T__T2(value); if ((x1 === null)) { throw new $c_s_MatchError().init___O(x1) }; const className = x1.$$und1__O(); const methodName = x1.$$und2__O(); const value$1 = mtch1[2]; if ((value$1 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const fileName = value$1; const value$2 = mtch1[3]; if ((value$2 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const x = value$2; const this$15 = new $c_sci_StringOps().init___T(x); const this$17 = $m_jl_Integer$(); const $$this = this$15.repr$1; const lineNumber = this$17.parseInt__T__I__I($$this, 10); const value$3 = mtch1[4]; if ((value$3 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const x$1 = value$3; const this$23 = new $c_sci_StringOps().init___T(x$1); const this$25 = $m_jl_Integer$(); const $$this$1 = this$23.repr$1; const value$4 = this$25.parseInt__T__I__I($$this$1, 10); const jsx$1 = trace.push({ "declaringClass": className, "methodName": methodName, "fileName": fileName, "lineNumber": lineNumber, "columnNumber": ((value$4 === (void 0)) ? (void 0) : value$4) }) } else { const mtch2 = NormalizedFrameLine.exec(line); if ((mtch2 !== null)) { const value$5 = mtch2[1]; if ((value$5 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const x1$2 = this.extractClassMethod__p1__T__T2(value$5); if ((x1$2 === null)) { throw new $c_s_MatchError().init___O(x1$2) }; const className$3 = x1$2.$$und1__O(); const methodName$3 = x1$2.$$und2__O(); const value$6 = mtch2[2]; if ((value$6 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const fileName$1 = value$6; const value$7 = mtch2[3]; if ((value$7 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const x$2 = value$7; const this$52 = new $c_sci_StringOps().init___T(x$2); const this$54 = $m_jl_Integer$(); const $$this$2 = this$52.repr$1; const lineNumber$1 = this$54.parseInt__T__I__I($$this$2, 10); const jsx$2 = trace.push({ "declaringClass": className$3, "methodName": methodName$3, "fileName": fileName$1, "lineNumber": lineNumber$1, "columnNumber": (void 0) }) } else { (trace.push({ "declaringClass": "", "methodName": line, "fileName": null, "lineNumber": (-1), "columnNumber": (void 0) }) | 0) } } }; i = ((1 + i) | 0) }; const value$8 = $env.sourceMapper; const mappedTrace = ((value$8 === (void 0)) ? trace : value$8(trace)); const result = $newArrayObject($d_jl_StackTraceElement.getArrayOf(), [(mappedTrace.length | 0)]); i = 0; while ((i < (mappedTrace.length | 0))) { const jsSte = mappedTrace[i]; const ste = new $c_jl_StackTraceElement().init___T__T__T__I(jsSte.declaringClass, jsSte.methodName, jsSte.fileName, (jsSte.lineNumber | 0)); const value$9 = jsSte.columnNumber; if ((value$9 !== (void 0))) { const columnNumber = (value$9 | 0); ste.setColumnNumber(columnNumber) }; result.u[i] = ste; i = ((1 + i) | 0) }; return result }; extractOpera11__p1__sjs_js_Dynamic__sjs_js_Array(e) { const lineRE = $m_sjsr_StackTrace$StringRE$().re$extension0__T__sjs_js_RegExp("^.*line (\\d+), column (\\d+)(?: in (.+))? in (\\S+):$"); const x = e.stacktrace; const lines = x.split("\n"); const result = []; let i = 0; const len = (lines.length | 0); while ((i < len)) { const mtch = lineRE.exec(lines[i]); if ((mtch !== null)) { const value = mtch[4]; if ((value === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const value$1 = mtch[1]; if ((value$1 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const value$2 = mtch[2]; if ((value$2 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const location = ((((value + ":") + value$1) + ":") + value$2); const value$3 = mtch[2]; const fnName0 = ((value$3 === (void 0)) ? "global code" : value$3); const x$1 = fnName0.replace($m_sjsr_StackTrace$StringRE$().re$extension0__T__sjs_js_RegExp(""), "$1"); const fnName = x$1.replace($m_sjsr_StackTrace$StringRE$().re$extension0__T__sjs_js_RegExp(""), "{anonymous}"); (result.push(((fnName + "@") + location)) | 0) }; i = ((2 + i) | 0) }; return result }; extractSafari__p1__sjs_js_Dynamic__sjs_js_Array(e) { const x = e.stack; const x$1 = x.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("\\[native code\\]\\n", "m"), ""); const x$2 = x$1.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^(?=\\w+Error\\:).*$\\n", "m"), ""); const x$3 = x$2.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^@", "gm"), "{anonymous}()@"); return x$3.split("\n") }; loop$1__p1__I__T__T(i, encoded$1) { _loop: while (true) { if ((i < (this.compressedPrefixes__p1__sjs_js_Array().length | 0))) { const prefix = this.compressedPrefixes__p1__sjs_js_Array()[i]; if ((((encoded$1.length | 0) >= 0) && (encoded$1.substring(0, (prefix.length | 0)) === prefix))) { const dict = this.decompressedPrefixes__p1__sjs_js_Dictionary(); if ((!(!(!$m_sjs_js_WrappedDictionary$Cache$().safeHasOwnProperty$1.call(dict, prefix))))) { throw new $c_ju_NoSuchElementException().init___T(("key not found: " + prefix)) }; const jsx$1 = dict[prefix]; const beginIndex = (prefix.length | 0); return (("" + jsx$1) + encoded$1.substring(beginIndex)) } else { i = ((1 + i) | 0); continue _loop } } else { return ((((encoded$1.length | 0) >= 0) && (encoded$1.substring(0, ("L".length | 0)) === "L")) ? encoded$1.substring(1) : encoded$1) } } }; liftedTree1$1__p1__Z() { try { $g.Packages.org.mozilla.javascript.JavaScriptException; return true } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { if ((e$2 instanceof $c_sjs_js_JavaScriptException)) { return false } else { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(e$2) } } else { throw e } } }; decompressedPrefixes__p1__sjs_js_Dictionary() { return (((((4 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.decompressedPrefixes$lzycompute__p1__sjs_js_Dictionary() : this.decompressedPrefixes$1) }; extractRhino__p1__sjs_js_Dynamic__sjs_js_Array(e) { const value = e.stack; const x = ((value === (void 0)) ? "" : value); const x$1 = x.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^\\s+at\\s+", "gm"), ""); const x$2 = x$1.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^(.+?)(?: \\((.+)\\))?$", "gm"), "$2@$1"); const x$3 = x$2.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("\\r\\n?", "gm"), "\n"); return x$3.split("\n") }; extractOther__p1__sjs_js_Dynamic__sjs_js_Array(e) { return [] }; extractIE__p1__sjs_js_Dynamic__sjs_js_Array(e) { const x = e.stack; const x$1 = x.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^\\s*at\\s+(.*)$", "gm"), "$1"); const x$2 = x$1.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^Anonymous function\\s+", "gm"), "{anonymous}() "); const x$3 = x$2.replace($m_sjsr_StackTrace$StringRE$().re$extension1__T__T__sjs_js_RegExp("^([^\\(]+|\\{anonymous\\}\\(\\))\\s+\\((.+)\\)$", "gm"), "$1@$2"); const qual$1 = x$3.split("\n"); return qual$1.slice(1) }; decodeMethodName__p1__T__T(encodedName) { if ((((encodedName.length | 0) >= 0) && (encodedName.substring(0, ("init___".length | 0)) === "init___"))) { return "" } else { const methodNameLen = (encodedName.indexOf("__") | 0); return ((methodNameLen < 0) ? encodedName : encodedName.substring(0, methodNameLen)) } }; } const $d_sjsr_StackTrace$ = new $TypeData().initClass({ sjsr_StackTrace$: 0 }, false, "scala.scalajs.runtime.StackTrace$", { sjsr_StackTrace$: 1, O: 1 }); $c_sjsr_StackTrace$.prototype.$classData = $d_sjsr_StackTrace$; let $n_sjsr_StackTrace$ = (void 0); const $m_sjsr_StackTrace$ = (function() { if ((!$n_sjsr_StackTrace$)) { $n_sjsr_StackTrace$ = new $c_sjsr_StackTrace$().init___() }; return $n_sjsr_StackTrace$ }); class $c_sjsr_StackTrace$StringRE$ extends $c_O { init___() { return this }; re$extension1__T__T__sjs_js_RegExp($$this, mods) { return new $g.RegExp($$this, mods) }; re$extension0__T__sjs_js_RegExp($$this) { return new $g.RegExp($$this) }; } const $d_sjsr_StackTrace$StringRE$ = new $TypeData().initClass({ sjsr_StackTrace$StringRE$: 0 }, false, "scala.scalajs.runtime.StackTrace$StringRE$", { sjsr_StackTrace$StringRE$: 1, O: 1 }); $c_sjsr_StackTrace$StringRE$.prototype.$classData = $d_sjsr_StackTrace$StringRE$; let $n_sjsr_StackTrace$StringRE$ = (void 0); const $m_sjsr_StackTrace$StringRE$ = (function() { if ((!$n_sjsr_StackTrace$StringRE$)) { $n_sjsr_StackTrace$StringRE$ = new $c_sjsr_StackTrace$StringRE$().init___() }; return $n_sjsr_StackTrace$StringRE$ }); class $c_sjsr_package$ extends $c_O { init___() { return this }; unwrapJavaScriptException__jl_Throwable__O(th) { if ((th instanceof $c_sjs_js_JavaScriptException)) { const x2 = th; const e = x2.exception$4; return e } else { return th } }; wrapJavaScriptException__O__jl_Throwable(e) { if ((e instanceof $c_jl_Throwable)) { const x2 = e; return x2 } else { return new $c_sjs_js_JavaScriptException().init___O(e) } }; } const $d_sjsr_package$ = new $TypeData().initClass({ sjsr_package$: 0 }, false, "scala.scalajs.runtime.package$", { sjsr_package$: 1, O: 1 }); $c_sjsr_package$.prototype.$classData = $d_sjsr_package$; let $n_sjsr_package$ = (void 0); const $m_sjsr_package$ = (function() { if ((!$n_sjsr_package$)) { $n_sjsr_package$ = new $c_sjsr_package$().init___() }; return $n_sjsr_package$ }); class $c_sr_BoxesRunTime$ extends $c_O { init___() { return this }; equalsCharObject__jl_Character__O__Z(xc, y) { if ((y instanceof $c_jl_Character)) { const x2 = y; return (xc.value$1 === x2.value$1) } else if ($is_jl_Number(y)) { const x3 = y; if (((typeof x3) === "number")) { const x2$1 = (+x3); return (x2$1 === xc.value$1) } else if ((x3 instanceof $c_sjsr_RuntimeLong)) { const t = $uJ(x3); const lo = t.lo$2; const hi = t.hi$2; const value = xc.value$1; const hi$1 = (value >> 31); return ((lo === value) && (hi === hi$1)) } else { return ((x3 === null) ? (xc === null) : $objectEquals(x3, xc)) } } else { return ((xc === null) && (y === null)) } }; equalsNumObject__jl_Number__O__Z(xn, y) { if ($is_jl_Number(y)) { const x2 = y; return this.equalsNumNum__jl_Number__jl_Number__Z(xn, x2) } else if ((y instanceof $c_jl_Character)) { const x3 = y; if (((typeof xn) === "number")) { const x2$1 = (+xn); return (x2$1 === x3.value$1) } else if ((xn instanceof $c_sjsr_RuntimeLong)) { const t = $uJ(xn); const lo = t.lo$2; const hi = t.hi$2; const value = x3.value$1; const hi$1 = (value >> 31); return ((lo === value) && (hi === hi$1)) } else { return ((xn === null) ? (x3 === null) : $objectEquals(xn, x3)) } } else { return ((xn === null) ? (y === null) : $objectEquals(xn, y)) } }; equals__O__O__Z(x, y) { if ((x === y)) { return true } else if ($is_jl_Number(x)) { const x2 = x; return this.equalsNumObject__jl_Number__O__Z(x2, y) } else if ((x instanceof $c_jl_Character)) { const x3 = x; return this.equalsCharObject__jl_Character__O__Z(x3, y) } else { return ((x === null) ? (y === null) : $objectEquals(x, y)) } }; equalsNumNum__jl_Number__jl_Number__Z(xn, yn) { if (((typeof xn) === "number")) { const x2 = (+xn); if (((typeof yn) === "number")) { const x2$2 = (+yn); return (x2 === x2$2) } else if ((yn instanceof $c_sjsr_RuntimeLong)) { const t = $uJ(yn); const lo = t.lo$2; const hi = t.hi$2; return (x2 === $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toDouble__I__I__D(lo, hi)) } else if ((yn instanceof $c_s_math_ScalaNumber)) { const x4 = yn; return x4.equals__O__Z(x2) } else { return false } } else if ((xn instanceof $c_sjsr_RuntimeLong)) { const t$1 = $uJ(xn); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; if ((yn instanceof $c_sjsr_RuntimeLong)) { const t$2 = $uJ(yn); const lo$2 = t$2.lo$2; const hi$2 = t$2.hi$2; return ((lo$1 === lo$2) && (hi$1 === hi$2)) } else if (((typeof yn) === "number")) { const x3$3 = (+yn); return ($m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toDouble__I__I__D(lo$1, hi$1) === x3$3) } else if ((yn instanceof $c_s_math_ScalaNumber)) { const x4$2 = yn; return x4$2.equals__O__Z(new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$1)) } else { return false } } else { return ((xn === null) ? (yn === null) : $objectEquals(xn, yn)) } }; } const $d_sr_BoxesRunTime$ = new $TypeData().initClass({ sr_BoxesRunTime$: 0 }, false, "scala.runtime.BoxesRunTime$", { sr_BoxesRunTime$: 1, O: 1 }); $c_sr_BoxesRunTime$.prototype.$classData = $d_sr_BoxesRunTime$; let $n_sr_BoxesRunTime$ = (void 0); const $m_sr_BoxesRunTime$ = (function() { if ((!$n_sr_BoxesRunTime$)) { $n_sr_BoxesRunTime$ = new $c_sr_BoxesRunTime$().init___() }; return $n_sr_BoxesRunTime$ }); const $d_sr_Null$ = new $TypeData().initClass({ sr_Null$: 0 }, false, "scala.runtime.Null$", { sr_Null$: 1, O: 1 }); class $c_sr_RichChar$ extends $c_O { init___() { return this }; equals$extension__C__O__Z($$this, x$1) { if ((x$1 instanceof $c_sr_RichChar)) { const RichChar$1 = x$1.self$1; return ($$this === RichChar$1) } else { return false } }; hashCode$extension__C__I($$this) { return $$this }; shortValue$extension__C__S($$this) { return (($$this << 16) >> 16) }; longValue$extension__C__J($$this) { const hi = ($$this >> 31); return new $c_sjsr_RuntimeLong().init___I__I($$this, hi) }; floatValue$extension__C__F($$this) { return $fround($$this) }; byteValue$extension__C__B($$this) { return (($$this << 24) >> 24) }; } const $d_sr_RichChar$ = new $TypeData().initClass({ sr_RichChar$: 0 }, false, "scala.runtime.RichChar$", { sr_RichChar$: 1, O: 1 }); $c_sr_RichChar$.prototype.$classData = $d_sr_RichChar$; let $n_sr_RichChar$ = (void 0); const $m_sr_RichChar$ = (function() { if ((!$n_sr_RichChar$)) { $n_sr_RichChar$ = new $c_sr_RichChar$().init___() }; return $n_sr_RichChar$ }); class $c_sr_ScalaRunTime$ extends $c_O { init___() { return this }; array$undlength__O__I(xs) { if ($isArrayOf_O(xs, 1)) { const x2 = xs; return x2.u.length } else if ($isArrayOf_I(xs, 1)) { const x3 = xs; return x3.u.length } else if ($isArrayOf_D(xs, 1)) { const x4 = xs; return x4.u.length } else if ($isArrayOf_J(xs, 1)) { const x5 = xs; return x5.u.length } else if ($isArrayOf_F(xs, 1)) { const x6 = xs; return x6.u.length } else if ($isArrayOf_C(xs, 1)) { const x7 = xs; return x7.u.length } else if ($isArrayOf_B(xs, 1)) { const x8 = xs; return x8.u.length } else if ($isArrayOf_S(xs, 1)) { const x9 = xs; return x9.u.length } else if ($isArrayOf_Z(xs, 1)) { const x10 = xs; return x10.u.length } else if ($isArrayOf_sr_BoxedUnit(xs, 1)) { const x11 = xs; return x11.u.length } else if ((xs === null)) { throw new $c_jl_NullPointerException().init___() } else { throw new $c_s_MatchError().init___O(xs) } }; array$undupdate__O__I__O__V(xs, idx, value) { if ($isArrayOf_O(xs, 1)) { const x2 = xs; x2.u[idx] = value } else if ($isArrayOf_I(xs, 1)) { const x3 = xs; x3.u[idx] = (value | 0) } else if ($isArrayOf_D(xs, 1)) { const x4 = xs; x4.u[idx] = (+value) } else if ($isArrayOf_J(xs, 1)) { const x5 = xs; x5.u[idx] = $uJ(value) } else if ($isArrayOf_F(xs, 1)) { const x6 = xs; x6.u[idx] = (+value) } else if ($isArrayOf_C(xs, 1)) { const x7 = xs; let jsx$1; if ((value === null)) { jsx$1 = 0 } else { const this$2 = value; jsx$1 = this$2.value$1 }; x7.u[idx] = jsx$1 } else if ($isArrayOf_B(xs, 1)) { const x8 = xs; x8.u[idx] = (value | 0) } else if ($isArrayOf_S(xs, 1)) { const x9 = xs; x9.u[idx] = (value | 0) } else if ($isArrayOf_Z(xs, 1)) { const x10 = xs; x10.u[idx] = (!(!value)) } else if ($isArrayOf_sr_BoxedUnit(xs, 1)) { const x11 = xs; x11.u[idx] = (void 0) } else if ((xs === null)) { throw new $c_jl_NullPointerException().init___() } else { throw new $c_s_MatchError().init___O(xs) } }; $$undtoString__s_Product__T(x) { const this$1 = x.productIterator__sc_Iterator(); const start = (x.productPrefix__T() + "("); return $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, start, ",", ")") }; array$undapply__O__I__O(xs, idx) { if ($isArrayOf_O(xs, 1)) { const x2 = xs; return x2.u[idx] } else if ($isArrayOf_I(xs, 1)) { const x3 = xs; return x3.u[idx] } else if ($isArrayOf_D(xs, 1)) { const x4 = xs; return x4.u[idx] } else if ($isArrayOf_J(xs, 1)) { const x5 = xs; return x5.u[idx] } else if ($isArrayOf_F(xs, 1)) { const x6 = xs; return x6.u[idx] } else if ($isArrayOf_C(xs, 1)) { const x7 = xs; const c = x7.u[idx]; return new $c_jl_Character().init___C(c) } else if ($isArrayOf_B(xs, 1)) { const x8 = xs; return x8.u[idx] } else if ($isArrayOf_S(xs, 1)) { const x9 = xs; return x9.u[idx] } else if ($isArrayOf_Z(xs, 1)) { const x10 = xs; return x10.u[idx] } else if ($isArrayOf_sr_BoxedUnit(xs, 1)) { const x11 = xs; return x11.u[idx] } else if ((xs === null)) { throw new $c_jl_NullPointerException().init___() } else { throw new $c_s_MatchError().init___O(xs) } }; } const $d_sr_ScalaRunTime$ = new $TypeData().initClass({ sr_ScalaRunTime$: 0 }, false, "scala.runtime.ScalaRunTime$", { sr_ScalaRunTime$: 1, O: 1 }); $c_sr_ScalaRunTime$.prototype.$classData = $d_sr_ScalaRunTime$; let $n_sr_ScalaRunTime$ = (void 0); const $m_sr_ScalaRunTime$ = (function() { if ((!$n_sr_ScalaRunTime$)) { $n_sr_ScalaRunTime$ = new $c_sr_ScalaRunTime$().init___() }; return $n_sr_ScalaRunTime$ }); class $c_sr_Statics$ extends $c_O { init___() { return this }; mixLast__I__I__I(hash, data) { let k = data; k = $imul((-862048943), k); const i = k; k = ((i << 15) | ((i >>> 17) | 0)); k = $imul(461845907, k); return (hash ^ k) }; doubleHash__D__I(dv) { const iv = $doubleToInt(dv); if ((iv === dv)) { return iv } else { const this$1 = $m_sjsr_RuntimeLong$(); const lo = this$1.scala$scalajs$runtime$RuntimeLong$$fromDoubleImpl__D__I(dv); const hi = this$1.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; return (($m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toDouble__I__I__D(lo, hi) === dv) ? (lo ^ hi) : $m_sjsr_Bits$().numberHashCode__D__I(dv)) } }; anyHash__O__I(x) { if ((x === null)) { return 0 } else if (((typeof x) === "number")) { const x3 = (+x); return this.doubleHash__D__I(x3) } else if ((x instanceof $c_sjsr_RuntimeLong)) { const t = $uJ(x); const lo = t.lo$2; const hi = t.hi$2; return this.longHash__J__I(new $c_sjsr_RuntimeLong().init___I__I(lo, hi)) } else { return $objectHashCode(x) } }; avalanche__I__I(h0) { let h = h0; h = (h ^ ((h >>> 16) | 0)); h = $imul((-2048144789), h); h = (h ^ ((h >>> 13) | 0)); h = $imul((-1028477387), h); h = (h ^ ((h >>> 16) | 0)); return h }; mix__I__I__I(hash, data) { let h = this.mixLast__I__I__I(hash, data); const i = h; h = ((i << 13) | ((i >>> 19) | 0)); return (((-430675100) + $imul(5, h)) | 0) }; longHash__J__I(lv) { const lo = lv.lo$2; const lo$1 = lv.hi$2; return ((lo$1 === (lo >> 31)) ? lo : (lo ^ lo$1)) }; finalizeHash__I__I__I(hash, length) { return this.avalanche__I__I((hash ^ length)) }; } const $d_sr_Statics$ = new $TypeData().initClass({ sr_Statics$: 0 }, false, "scala.runtime.Statics$", { sr_Statics$: 1, O: 1 }); $c_sr_Statics$.prototype.$classData = $d_sr_Statics$; let $n_sr_Statics$ = (void 0); const $m_sr_Statics$ = (function() { if ((!$n_sr_Statics$)) { $n_sr_Statics$ = new $c_sr_Statics$().init___() }; return $n_sr_Statics$ }); class $c_Lfastparse_StringApi extends $c_Lfastparse_Api { constructor() { super(); this.ElemPred$module$2 = null; this.ElemsWhile$module$2 = null; this.AnyChar$2 = null; this.AnyElem$2 = null; this.CharsWhile$2 = null; this.CharPred$2 = null; this.CharPredicates$2 = null; this.IgnoreCase$2 = null }; init___() { const e = $m_s_reflect_ManifestFactory$CharManifest$(); const elemSetHelper = $m_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$(); const reprOps = $m_Lfastparse_StringReprOps$(); const e$1 = $m_s_math_Ordering$Char$(); this.implicitReprOps$1 = reprOps; this.implicitElemSetHelper$1 = elemSetHelper; this.implicitClassTag$1 = e; this.implicitOrdering$1 = e$1; this.Pass$1 = new $c_Lfastparse_parsers_Terminals$Pass().init___Lfastparse_utils_ReprOps(this.implicitReprOps$1); this.Fail$1 = new $c_Lfastparse_parsers_Terminals$Fail().init___Lfastparse_utils_ReprOps(this.implicitReprOps$1); this.Start$1 = new $c_Lfastparse_parsers_Terminals$Start().init___Lfastparse_utils_ReprOps(this.implicitReprOps$1); this.End$1 = new $c_Lfastparse_parsers_Terminals$End().init___Lfastparse_utils_ReprOps(this.implicitReprOps$1); this.Index$1 = new $c_Lfastparse_parsers_Terminals$Index().init___Lfastparse_utils_ReprOps(this.implicitReprOps$1); this.NoTrace$1 = $m_Lfastparse_parsers_Combinators$NoTrace$(); this.NoCut$1 = $m_Lfastparse_parsers_Combinators$NoCut$(); this.ParseError$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(failure$2) { const failure = failure$2; return new $c_Lfastparse_core_ParseError().init___Lfastparse_core_Parsed$Failure(failure) }) })(this)); this.AnyChar$2 = new $c_Lfastparse_parsers_Terminals$AnyElem().init___T__Lfastparse_utils_ReprOps("AnyChar", this.implicitReprOps$1); this.AnyElem$2 = this.AnyChar$2; this.CharsWhile$2 = this.ElemsWhile__Lfastparse_StringApi$ElemsWhile$(); this.CharPred$2 = this.ElemPred__Lfastparse_StringApi$ElemPred$(); this.CharPredicates$2 = $m_Lfastparse_CharPredicates$(); this.IgnoreCase$2 = $m_Lfastparse_parsers_Terminals$IgnoreCase$(); return this }; ElemsWhile$lzycompute$1__p2__V() { if ((this.ElemsWhile$module$2 === null)) { this.ElemsWhile$module$2 = new $c_Lfastparse_StringApi$ElemsWhile$().init___Lfastparse_StringApi(this) } }; ElemsWhile__Lfastparse_StringApi$ElemsWhile$() { if ((this.ElemsWhile$module$2 === null)) { this.ElemsWhile$lzycompute$1__p2__V() }; return this.ElemsWhile$module$2 }; ElemPred$lzycompute$1__p2__V() { if ((this.ElemPred$module$2 === null)) { this.ElemPred$module$2 = new $c_Lfastparse_StringApi$ElemPred$().init___Lfastparse_StringApi(this) } }; LiteralStr__T__Lfastparse_core_Parser(s) { if (((s.length | 0) === 1)) { const c = (65535 & (s.charCodeAt(0) | 0)); return new $c_Lfastparse_parsers_Terminals$ElemLiteral().init___O__Lfastparse_utils_ReprOps(new $c_jl_Character().init___C(c), this.implicitReprOps$1) } else { return new $c_Lfastparse_parsers_Terminals$Literal().init___O__Lfastparse_utils_ReprOps(s, this.implicitReprOps$1) } }; ElemPred__Lfastparse_StringApi$ElemPred$() { if ((this.ElemPred$module$2 === null)) { this.ElemPred$lzycompute$1__p2__V() }; return this.ElemPred$module$2 }; } const $isArrayOf_Lfastparse_StringApi = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_StringApi))) }); class $c_Lfastparse_StringApi$ElemPred$ extends $c_Lfastparse_Api$ElemPred { init___Lfastparse_StringApi($$outer) { $c_Lfastparse_Api$ElemPred.prototype.init___Lfastparse_Api.call(this, $$outer); return this }; } const $d_Lfastparse_StringApi$ElemPred$ = new $TypeData().initClass({ Lfastparse_StringApi$ElemPred$: 0 }, false, "fastparse.StringApi$ElemPred$", { Lfastparse_StringApi$ElemPred$: 1, Lfastparse_Api$ElemPred: 1, O: 1 }); $c_Lfastparse_StringApi$ElemPred$.prototype.$classData = $d_Lfastparse_StringApi$ElemPred$; class $c_Lfastparse_StringApi$ElemsWhile$ extends $c_Lfastparse_Api$ElemsWhile { init___Lfastparse_StringApi($$outer) { $c_Lfastparse_Api$ElemsWhile.prototype.init___Lfastparse_Api.call(this, $$outer); return this }; create__F1__I__Z__Lfastparse_parsers_Intrinsics$ElemsWhile(pred, min, precompute) { return new $c_Lfastparse_parsers_Intrinsics$ElemsWhile().init___T__F1__I__Z__Lfastparse_utils_ElemSetHelper__Lfastparse_utils_ReprOps("CharsWhile", pred, min, precompute, $m_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$(), this.$$outer$1.implicitReprOps$1) }; } const $d_Lfastparse_StringApi$ElemsWhile$ = new $TypeData().initClass({ Lfastparse_StringApi$ElemsWhile$: 0 }, false, "fastparse.StringApi$ElemsWhile$", { Lfastparse_StringApi$ElemsWhile$: 1, Lfastparse_Api$ElemsWhile: 1, O: 1 }); $c_Lfastparse_StringApi$ElemsWhile$.prototype.$classData = $d_Lfastparse_StringApi$ElemsWhile$; class $c_Lfastparse_StringReprOps$ extends $c_Lfastparse_utils_ReprOps { init___() { return this }; fromSingle__C__T(input) { return $g.String.fromCharCode(input) }; literalize__T__T(input) { return $m_Lfastparse_utils_Utils$().literalize__sc_IndexedSeq__Z__T($m_s_Predef$().wrapString__T__sci_WrappedString(input), true) }; slice__T__I__I__T(input, start, end) { return $m_sci_StringOps$().slice$extension__T__I__I__T(input, start, end) }; errorMessage__Lfastparse_utils_ParserInput__T__I__T(input, expected, idx) { const from = (((-20) + idx) | 0); const this$1 = input.repr$2; const value = input.data$2; const first = this$1.slice__T__I__I__T(value, from, idx); const until = ((20 + idx) | 0); const this$2 = input.repr$2; const value$1 = input.data$2; const last = this$2.slice__T__I__I__T(value$1, idx, until); const this$4 = new $c_sci_StringOps().init___T(last); const this$5 = $f_sci_StringLike__lines__sc_Iterator(this$4); const this$6 = this$5.toStream__sci_Stream(); const this$7 = $f_sc_TraversableLike__headOption__s_Option(this$6); const lastSnippet = (this$7.isEmpty__Z() ? "" : this$7.get__O()); const this$9 = new $c_sci_StringOps().init___T(first); const x = $f_sc_IndexedSeqOptimized__reverse__O(this$9); const this$11 = new $c_sci_StringOps().init___T(x); const this$12 = $f_sci_StringLike__lines__sc_Iterator(this$11); const this$13 = this$12.toStream__sci_Stream(); const this$14 = $f_sc_TraversableLike__headOption__s_Option(this$13); const x$1 = (this$14.isEmpty__Z() ? "" : this$14.get__O()); const this$16 = new $c_sci_StringOps().init___T(x$1); const firstSnippet = $f_sc_IndexedSeqOptimized__reverse__O(this$16); const this$19 = new $c_sci_StringOps().init___T(" "); const n = (firstSnippet.length | 0); const locationCode = ((((("" + firstSnippet) + lastSnippet) + "\n") + $f_sci_StringLike__$$times__I__T(this$19, n)) + "^"); const until$1 = ((20 + idx) | 0); const this$20 = input.repr$2; const value$2 = input.data$2; const literal = this.literalize__T__T(this$20.slice__T__I__I__T(value$2, idx, until$1)); return new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["found ", ", expected ", " at index ", "\\n", ""])).s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([literal, expected, idx, locationCode])) }; prettyIndex__Lfastparse_utils_ParserInput__I__T(input, index) { if ((input instanceof $c_Lfastparse_utils_IndexedParserInput)) { const x2 = input; const data = x2.data$2; let line = 1; let col = 1; let i = 0; while ((i < index)) { const index$1 = i; if (((65535 & (data.charCodeAt(index$1) | 0)) === 10)) { col = 1; line = ((1 + line) | 0) } else { col = ((1 + col) | 0) }; i = ((1 + i) | 0) }; return new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["", ":", ""])).s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([line, col])) } else { return ("" + index) } }; } const $d_Lfastparse_StringReprOps$ = new $TypeData().initClass({ Lfastparse_StringReprOps$: 0 }, false, "fastparse.StringReprOps$", { Lfastparse_StringReprOps$: 1, Lfastparse_utils_ReprOps: 1, O: 1 }); $c_Lfastparse_StringReprOps$.prototype.$classData = $d_Lfastparse_StringReprOps$; let $n_Lfastparse_StringReprOps$ = (void 0); const $m_Lfastparse_StringReprOps$ = (function() { if ((!$n_Lfastparse_StringReprOps$)) { $n_Lfastparse_StringReprOps$ = new $c_Lfastparse_StringReprOps$().init___() }; return $n_Lfastparse_StringReprOps$ }); class $c_Lfastparse_core_Implicits$Optioner$ extends $c_O { constructor() { super(); this.GenericOptioner$module$1 = null }; init___() { return this }; } const $d_Lfastparse_core_Implicits$Optioner$ = new $TypeData().initClass({ Lfastparse_core_Implicits$Optioner$: 0 }, false, "fastparse.core.Implicits$Optioner$", { Lfastparse_core_Implicits$Optioner$: 1, O: 1, Lfastparse_core_Implicits$LowPriOptioner: 1 }); $c_Lfastparse_core_Implicits$Optioner$.prototype.$classData = $d_Lfastparse_core_Implicits$Optioner$; let $n_Lfastparse_core_Implicits$Optioner$ = (void 0); const $m_Lfastparse_core_Implicits$Optioner$ = (function() { if ((!$n_Lfastparse_core_Implicits$Optioner$)) { $n_Lfastparse_core_Implicits$Optioner$ = new $c_Lfastparse_core_Implicits$Optioner$().init___() }; return $n_Lfastparse_core_Implicits$Optioner$ }); class $c_Lfastparse_core_Implicits$Optioner$UnitOptioner$ extends $c_O { init___() { return this }; some__O__O(value) { return (void 0) }; none__O() { return (void 0) }; } const $d_Lfastparse_core_Implicits$Optioner$UnitOptioner$ = new $TypeData().initClass({ Lfastparse_core_Implicits$Optioner$UnitOptioner$: 0 }, false, "fastparse.core.Implicits$Optioner$UnitOptioner$", { Lfastparse_core_Implicits$Optioner$UnitOptioner$: 1, O: 1, Lfastparse_core_Implicits$Optioner: 1 }); $c_Lfastparse_core_Implicits$Optioner$UnitOptioner$.prototype.$classData = $d_Lfastparse_core_Implicits$Optioner$UnitOptioner$; let $n_Lfastparse_core_Implicits$Optioner$UnitOptioner$ = (void 0); const $m_Lfastparse_core_Implicits$Optioner$UnitOptioner$ = (function() { if ((!$n_Lfastparse_core_Implicits$Optioner$UnitOptioner$)) { $n_Lfastparse_core_Implicits$Optioner$UnitOptioner$ = new $c_Lfastparse_core_Implicits$Optioner$UnitOptioner$().init___() }; return $n_Lfastparse_core_Implicits$Optioner$UnitOptioner$ }); class $c_Lfastparse_core_Implicits$Repeater$ extends $c_O { constructor() { super(); this.GenericRepeater$module$1 = null }; init___() { return this }; } const $d_Lfastparse_core_Implicits$Repeater$ = new $TypeData().initClass({ Lfastparse_core_Implicits$Repeater$: 0 }, false, "fastparse.core.Implicits$Repeater$", { Lfastparse_core_Implicits$Repeater$: 1, O: 1, Lfastparse_core_Implicits$LowPriRepeater: 1 }); $c_Lfastparse_core_Implicits$Repeater$.prototype.$classData = $d_Lfastparse_core_Implicits$Repeater$; let $n_Lfastparse_core_Implicits$Repeater$ = (void 0); const $m_Lfastparse_core_Implicits$Repeater$ = (function() { if ((!$n_Lfastparse_core_Implicits$Repeater$)) { $n_Lfastparse_core_Implicits$Repeater$ = new $c_Lfastparse_core_Implicits$Repeater$().init___() }; return $n_Lfastparse_core_Implicits$Repeater$ }); class $c_Lfastparse_core_Implicits$Repeater$UnitRepeater$ extends $c_O { init___() { return this }; initial__O() { return (void 0) }; result__O__O(acc) { return (void 0) }; accumulate__O__O__V(t, acc) { /**/ }; } const $d_Lfastparse_core_Implicits$Repeater$UnitRepeater$ = new $TypeData().initClass({ Lfastparse_core_Implicits$Repeater$UnitRepeater$: 0 }, false, "fastparse.core.Implicits$Repeater$UnitRepeater$", { Lfastparse_core_Implicits$Repeater$UnitRepeater$: 1, O: 1, Lfastparse_core_Implicits$Repeater: 1 }); $c_Lfastparse_core_Implicits$Repeater$UnitRepeater$.prototype.$classData = $d_Lfastparse_core_Implicits$Repeater$UnitRepeater$; let $n_Lfastparse_core_Implicits$Repeater$UnitRepeater$ = (void 0); const $m_Lfastparse_core_Implicits$Repeater$UnitRepeater$ = (function() { if ((!$n_Lfastparse_core_Implicits$Repeater$UnitRepeater$)) { $n_Lfastparse_core_Implicits$Repeater$UnitRepeater$ = new $c_Lfastparse_core_Implicits$Repeater$UnitRepeater$().init___() }; return $n_Lfastparse_core_Implicits$Repeater$UnitRepeater$ }); class $c_Lfastparse_core_Implicits$Sequencer$$anon$1 extends $c_O { constructor() { super(); this.f$1$1 = null }; init___F2(f$1) { this.f$1$1 = f$1; return this }; apply__O__O__O(t, v) { return this.f$1$1.apply__O__O__O(t, v) }; } const $d_Lfastparse_core_Implicits$Sequencer$$anon$1 = new $TypeData().initClass({ Lfastparse_core_Implicits$Sequencer$$anon$1: 0 }, false, "fastparse.core.Implicits$Sequencer$$anon$1", { Lfastparse_core_Implicits$Sequencer$$anon$1: 1, O: 1, Lfastparse_core_Implicits$Sequencer: 1 }); $c_Lfastparse_core_Implicits$Sequencer$$anon$1.prototype.$classData = $d_Lfastparse_core_Implicits$Sequencer$$anon$1; class $c_Lfastparse_core_Parsed$Failure$Extra$Impl extends $c_O { constructor() { super(); this.traced$1 = null; this.input$1 = null; this.startParser$1 = null; this.startIndex$1 = 0; this.lastParser$1 = null; this.index$1 = 0; this.bitmap$0$1 = false }; toString__T() { const this$1 = this.input$1; const value = this$1.data$2; const input = value; let jsx$1; if (((input.length | 0) < 20)) { const this$4 = this.input$1; const value$1 = this$4.data$2; const input$1 = value$1; const jsx$2 = input$1.length; const this$7 = this.input$1; const value$2 = this$7.data$2; const input$2 = value$2; jsx$1 = ((jsx$2 | 0) === (input$2.length | 0)) } else { jsx$1 = false }; let ellipses; if (jsx$1) { ellipses = "" } else { ellipses = "..." }; const this$16 = this.input$1; const this$10 = this.input$1; const value$3 = this$10.data$2; const input$3 = value$3; const from = (((-20) + (input$3.length | 0)) | 0); const this$13 = this.input$1; const value$4 = this$13.data$2; const input$4 = value$4; const until = (input$4.length | 0); const this$17 = this$16.repr$2; const value$5 = this$16.data$2; const inputHead = (ellipses + this$17.slice__T__I__I__T(value$5, from, until)); return new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["Extra(", ", [traced - not evaluated])"])).s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([inputHead])) }; init___Lfastparse_utils_ParserInput__Lfastparse_core_Parser__I__Lfastparse_core_Parser__I(input, startParser, startIndex, lastParser, index) { this.input$1 = input; this.startParser$1 = startParser; this.startIndex$1 = startIndex; this.lastParser$1 = lastParser; this.index$1 = index; return this }; traced$lzycompute__p1__Lfastparse_core_Parsed$TracedFailure() { if ((!this.bitmap$0$1)) { const this$1 = $m_Lfastparse_core_Parsed$TracedFailure$(); const input = this.input$1; const index = this.index$1; const lastParser = this.lastParser$1; const _1 = this.startIndex$1; const _2 = this.startParser$1; const mutFailure = _2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(new $c_Lfastparse_core_ParseCtx().init___Lfastparse_utils_ParserInput__I__I__Lfastparse_core_Parser__I__F3__Z__Z__Z(input, 0, index, _2, _1, new $c_sjsr_AnonFunction3().init___sjs_js_Function3((function($this) { return (function(x$3$2, x$4$2, x$5$2) { return (void 0) }) })(this$1)), false, false, false), _1); const this$2 = mutFailure.fullStack$1; $m_sci_Vector$(); const cbf = $m_sc_IndexedSeq$().ReusableCBF$6; const this$4 = $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this$2, cbf); this.traced$1 = new $c_Lfastparse_core_Parsed$TracedFailure().init___Lfastparse_utils_ParserInput__I__sci_Vector__sci_Set(input, index, $f_sc_SeqLike__reverse__O(this$4), mutFailure.traceParsers$1.$$plus__O__sc_Set(lastParser)); this.bitmap$0$1 = true }; this.startParser$1 = null; this.lastParser$1 = null; return this.traced$1 }; traced__Lfastparse_core_Parsed$TracedFailure() { return ((!this.bitmap$0$1) ? this.traced$lzycompute__p1__Lfastparse_core_Parsed$TracedFailure() : this.traced$1) }; } const $d_Lfastparse_core_Parsed$Failure$Extra$Impl = new $TypeData().initClass({ Lfastparse_core_Parsed$Failure$Extra$Impl: 0 }, false, "fastparse.core.Parsed$Failure$Extra$Impl", { Lfastparse_core_Parsed$Failure$Extra$Impl: 1, O: 1, Lfastparse_core_Parsed$Failure$Extra: 1 }); $c_Lfastparse_core_Parsed$Failure$Extra$Impl.prototype.$classData = $d_Lfastparse_core_Parsed$Failure$Extra$Impl; class $c_Lfastparse_core_Parsed$TracedFailure$$anon$1 extends $c_O { constructor() { super(); this.$$outer$1 = null }; toString__T() { const this$1 = this.$$outer$1.traceParsers$1; const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(s$2) { const s = s$2; return $m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s, $this.opPred__I()) }) })(this)); const bf = $m_sci_Set$().ReusableCBF$5; return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this$1, f, bf).mkString__T__T(" | ") }; init___Lfastparse_core_Parsed$TracedFailure($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; opPred__I() { return ((this.$$outer$1.traceParsers$1.size__I() === 1) ? this.$$outer$1.traceParsers$1.head__O().opPred__I() : $m_Lfastparse_core_Precedence$().$$bar$1) }; } const $d_Lfastparse_core_Parsed$TracedFailure$$anon$1 = new $TypeData().initClass({ Lfastparse_core_Parsed$TracedFailure$$anon$1: 0 }, false, "fastparse.core.Parsed$TracedFailure$$anon$1", { Lfastparse_core_Parsed$TracedFailure$$anon$1: 1, O: 1, Lfastparse_core_Precedence: 1 }); $c_Lfastparse_core_Parsed$TracedFailure$$anon$1.prototype.$classData = $d_Lfastparse_core_Parsed$TracedFailure$$anon$1; class $c_Lfastparse_core_ParserApiImpl extends $c_Lfastparse_core_ParserApi { constructor() { super(); this.self$2 = null; this.repr$2 = null }; rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(min, sep, max, exactly, ev) { return ((exactly < 0) ? new $c_Lfastparse_parsers_Combinators$Repeat().init___Lfastparse_core_Parser__I__I__Lfastparse_core_Parser__Lfastparse_core_Implicits$Repeater__Lfastparse_utils_ReprOps(this.self$2, min, max, sep, ev, this.repr$2) : new $c_Lfastparse_parsers_Combinators$Repeat().init___Lfastparse_core_Parser__I__I__Lfastparse_core_Parser__Lfastparse_core_Implicits$Repeater__Lfastparse_utils_ReprOps(this.self$2, exactly, exactly, sep, ev, this.repr$2)) }; rep$default$2__Lfastparse_core_Parser() { return new $c_Lfastparse_parsers_Terminals$Pass().init___Lfastparse_utils_ReprOps(this.repr$2) }; rep__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(ev) { return new $c_Lfastparse_parsers_Combinators$Repeat().init___Lfastparse_core_Parser__I__I__Lfastparse_core_Parser__Lfastparse_core_Implicits$Repeater__Lfastparse_utils_ReprOps(this.self$2, 0, 2147483647, new $c_Lfastparse_parsers_Terminals$Pass().init___Lfastparse_utils_ReprOps(this.repr$2), ev, this.repr$2) }; $$bar__Lfastparse_core_Parser__Lfastparse_core_Parser(p) { const jsx$2 = $m_Lfastparse_parsers_Combinators$Either$(); const this$1 = $m_s_package$().Vector$1; const array = [this.self$2, p]; let jsx$1; if (((array.length | 0) === 0)) { jsx$1 = this$1.NIL$6 } else { const b = new $c_sci_VectorBuilder().init___(); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; b.$$plus$eq__O__sci_VectorBuilder(arg1); i = ((1 + i) | 0) }; jsx$1 = b.result__sci_Vector() }; return new $c_Lfastparse_parsers_Combinators$Either().init___sc_Seq__Lfastparse_utils_ReprOps(jsx$2.flatten__sci_Vector__sci_Vector(jsx$1), this.repr$2) }; init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(self, repr) { this.self$2 = self; this.repr$2 = repr; $c_Lfastparse_core_ParserApi.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; $$qmark__Lfastparse_core_Implicits$Optioner__Lfastparse_core_Parser(ev) { return new $c_Lfastparse_parsers_Combinators$Optional().init___Lfastparse_core_Parser__Lfastparse_core_Implicits$Optioner__Lfastparse_utils_ReprOps(this.self$2, ev, this.repr$2) }; map__F1__Lfastparse_core_Parser(f) { return new $c_Lfastparse_parsers_Transformers$Mapper().init___Lfastparse_core_Parser__F1__Lfastparse_utils_ReprOps(this.self$2, f, this.repr$2) }; $$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(p, ev) { const this$1 = $m_Lfastparse_parsers_Combinators$Sequence$(); const s = new $c_Lfastparse_parsers_Combinators$Sequence().init___Lfastparse_core_Parser__Lfastparse_core_Parser__Z__Lfastparse_core_Implicits$Sequencer__Lfastparse_utils_ReprOps(this.self$2, p, false, ev, this.repr$2); const repr = this.repr$2; return this$1.rec$2__p1__Lfastparse_parsers_Combinators$Sequence__Lfastparse_utils_ReprOps__Lfastparse_parsers_Combinators$Sequence$Flat(s, repr) }; $$bang__Lfastparse_core_Parser() { return new $c_Lfastparse_parsers_Combinators$Capturing().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(this.self$2, this.repr$2) }; $$tilde$div__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(p, ev) { const this$1 = $m_Lfastparse_parsers_Combinators$Sequence$(); const s = new $c_Lfastparse_parsers_Combinators$Sequence().init___Lfastparse_core_Parser__Lfastparse_core_Parser__Z__Lfastparse_core_Implicits$Sequencer__Lfastparse_utils_ReprOps(this.self$2, p, true, ev, this.repr$2); const repr = this.repr$2; return this$1.rec$2__p1__Lfastparse_parsers_Combinators$Sequence__Lfastparse_utils_ReprOps__Lfastparse_parsers_Combinators$Sequence$Flat(s, repr) }; unary$und$bang__Lfastparse_core_Parser() { return new $c_Lfastparse_parsers_Combinators$Not().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(this.self$2, this.repr$2) }; } const $d_Lfastparse_core_ParserApiImpl = new $TypeData().initClass({ Lfastparse_core_ParserApiImpl: 0 }, false, "fastparse.core.ParserApiImpl", { Lfastparse_core_ParserApiImpl: 1, Lfastparse_core_ParserApi: 1, O: 1 }); $c_Lfastparse_core_ParserApiImpl.prototype.$classData = $d_Lfastparse_core_ParserApiImpl; class $c_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$ extends $c_O { init___() { return this }; generateValues__Lfastparse_utils_Generator$Callback__V(f) { let i = 0; while ((i <= 65535)) { const c = (65535 & i); f.apply__O__V(new $c_jl_Character().init___C(c)); i = ((1 + i) | 0) } }; } const $d_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$ = new $TypeData().initClass({ Lfastparse_utils_ElemSetHelper$CharBitSetHelper$: 0 }, false, "fastparse.utils.ElemSetHelper$CharBitSetHelper$", { Lfastparse_utils_ElemSetHelper$CharBitSetHelper$: 1, O: 1, Lfastparse_utils_ElemSetHelper: 1 }); $c_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$.prototype.$classData = $d_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$; let $n_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$ = (void 0); const $m_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$ = (function() { if ((!$n_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$)) { $n_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$ = new $c_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$().init___() }; return $n_Lfastparse_utils_ElemSetHelper$CharBitSetHelper$ }); class $c_Lfastparse_utils_Generator$Iter extends $c_Lfastparse_utils_Generator { constructor() { super(); this.items$2 = null }; apply__Lfastparse_utils_Generator$Callback__V(callback) { const this$1 = this.items$2; while (this$1.hasNext__Z()) { const arg1 = this$1.next__O(); callback.apply__O__V(arg1) } }; init___sc_Iterator(items) { this.items$2 = items; return this }; } const $d_Lfastparse_utils_Generator$Iter = new $TypeData().initClass({ Lfastparse_utils_Generator$Iter: 0 }, false, "fastparse.utils.Generator$Iter", { Lfastparse_utils_Generator$Iter: 1, Lfastparse_utils_Generator: 1, O: 1 }); $c_Lfastparse_utils_Generator$Iter.prototype.$classData = $d_Lfastparse_utils_Generator$Iter; class $c_Lfastparse_utils_Generator$Pred extends $c_Lfastparse_utils_Generator { constructor() { super(); this.predicate$2 = null; this.helper$2 = null }; apply__Lfastparse_utils_Generator$Callback__V(callback) { this.helper$2.generateValues__Lfastparse_utils_Generator$Callback__V(new $c_Lfastparse_utils_Generator$PredCallback().init___F1__Lfastparse_utils_Generator$Callback(this.predicate$2, callback)) }; init___F1__Lfastparse_utils_ElemSetHelper(predicate, helper) { this.predicate$2 = predicate; this.helper$2 = helper; return this }; } const $d_Lfastparse_utils_Generator$Pred = new $TypeData().initClass({ Lfastparse_utils_Generator$Pred: 0 }, false, "fastparse.utils.Generator$Pred", { Lfastparse_utils_Generator$Pred: 1, Lfastparse_utils_Generator: 1, O: 1 }); $c_Lfastparse_utils_Generator$Pred.prototype.$classData = $d_Lfastparse_utils_Generator$Pred; class $c_Lfastparse_utils_Generator$PredCallback extends $c_Lfastparse_utils_Generator$Callback { constructor() { super(); this.predicate$2 = null; this.callback$2 = null }; init___F1__Lfastparse_utils_Generator$Callback(predicate, callback) { this.predicate$2 = predicate; this.callback$2 = callback; return this }; apply__O__V(v) { if ((!(!this.predicate$2.apply__O__O(v)))) { this.callback$2.apply__O__V(v) } }; } const $d_Lfastparse_utils_Generator$PredCallback = new $TypeData().initClass({ Lfastparse_utils_Generator$PredCallback: 0 }, false, "fastparse.utils.Generator$PredCallback", { Lfastparse_utils_Generator$PredCallback: 1, Lfastparse_utils_Generator$Callback: 1, O: 1 }); $c_Lfastparse_utils_Generator$PredCallback.prototype.$classData = $d_Lfastparse_utils_Generator$PredCallback; class $c_Lfastparse_utils_ParserInput extends $c_O { } class $c_Lfastparse_utils_Utils$BitSet extends $c_O { constructor() { super(); this.array$1 = null; this.first$1 = 0; this.last$1 = 0; this.helper$1 = null }; apply__O__O(v1) { return this.apply__O__Z(v1) }; toString__T() { return "" }; apply__O__Z(c) { let a; if ((c === null)) { a = 0 } else { const this$3 = c; a = this$3.value$1 }; if ((!((a > this.last$1) || (a < this.first$1)))) { const offset = ((a - this.first$1) | 0); return ((this.array$1.u[(offset >> 5)] & (1 << (31 & offset))) !== 0) } else { return false } }; init___AI__I__I__Lfastparse_utils_ElemSetHelper(array, first, last, helper) { this.array$1 = array; this.first$1 = first; this.last$1 = last; this.helper$1 = helper; return this }; } const $d_Lfastparse_utils_Utils$BitSet = new $TypeData().initClass({ Lfastparse_utils_Utils$BitSet: 0 }, false, "fastparse.utils.Utils$BitSet", { Lfastparse_utils_Utils$BitSet: 1, O: 1, F1: 1 }); $c_Lfastparse_utils_Utils$BitSet.prototype.$classData = $d_Lfastparse_utils_Utils$BitSet; class $c_Lfastparse_utils_Utils$BitSet$BitsetComputeCallback extends $c_Lfastparse_utils_Generator$Callback { constructor() { super(); this.buffer$2 = null }; init___scm_Buffer(buffer) { this.buffer$2 = buffer; return this }; apply__O__V(v) { const this$1 = this.buffer$2; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array([v]); this$1.$$plus$plus$eq__sc_TraversableOnce__scg_Growable(elems) }; } const $d_Lfastparse_utils_Utils$BitSet$BitsetComputeCallback = new $TypeData().initClass({ Lfastparse_utils_Utils$BitSet$BitsetComputeCallback: 0 }, false, "fastparse.utils.Utils$BitSet$BitsetComputeCallback", { Lfastparse_utils_Utils$BitSet$BitsetComputeCallback: 1, Lfastparse_utils_Generator$Callback: 1, O: 1 }); $c_Lfastparse_utils_Utils$BitSet$BitsetComputeCallback.prototype.$classData = $d_Lfastparse_utils_Utils$BitSet$BitsetComputeCallback; class $c_Lio_kaitai_struct_ClassCompiler extends $c_O { constructor() { super(); this.topClass$1 = null; this.provider$1 = null; this.topClassName$1 = null; this.lang$1 = null; this.IS$undLE$undID$1 = null }; compileClassDoc__Lio_kaitai_struct_format_ClassSpec__V(curClass) { if ((!curClass.doc$1.isEmpty__Z())) { this.lang$1.classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(curClass.name$1, curClass.doc$1) } }; compileInstance__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__s_Option__V(className, instName, instSpec, endian) { const dataType = instSpec.dataTypeComposite__Lio_kaitai_struct_datatype_DataType(); this.compileInstanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__V(instName, instSpec); if ((!this.lang$1.innerDocstrings__Z())) { this.compileInstanceDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_InstanceSpec__V(instName, instSpec) }; this.lang$1.instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, instSpec.isNullable__Z()); if (this.lang$1.innerDocstrings__Z()) { this.compileInstanceDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_InstanceSpec__V(instName, instSpec) }; this.lang$1.instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) { const x2 = instSpec; this.lang$1.attrParseIfHeader__Lio_kaitai_struct_format_Identifier__s_Option__V(instName, x2.ifExpr$2); this.lang$1.instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, x2.value$2); this.lang$1.attrParseIfFooter__s_Option__V(x2.ifExpr$2); this.lang$1.instanceSetCalculated__Lio_kaitai_struct_format_InstanceIdentifier__V(instName) } else if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x3 = instSpec; const this$1 = this.lang$1; $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__s_Option__V(this$1, x3, instName, endian) } else { throw new $c_s_MatchError().init___O(instSpec) }; this.lang$1.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.lang$1.instanceFooter__V() }; compileSubclasses__Lio_kaitai_struct_format_ClassSpec__V(curClass) { curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const intClass = x0$1.$$und2__O(); $this.compileClass__Lio_kaitai_struct_format_ClassSpec__V(intClass) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))) }; compileConstructor__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.lang$1.classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(curClass.name$1, curClass.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType(), this.topClassName$1, curClass.meta$1.endian$1.contains__O__Z($m_Lio_kaitai_struct_datatype_InheritedEndian$()), curClass.params$1); this.compileInit__Lio_kaitai_struct_format_ClassSpec__V(curClass); curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instName = x0$1.$$und1__O(); $this.lang$1.instanceClear__Lio_kaitai_struct_format_InstanceIdentifier__V(instName) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); if (this.lang$1.config$1.autoRead$1) { this.lang$1.runRead__sci_List__V(curClass.name$1) }; this.lang$1.classConstructorFooter__V() }; compileSeq__sci_List__s_Option__V(seq, defEndian) { let elem$1 = false; elem$1 = false; let these = seq; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; const nowUnaligned = this.isUnalignedBits__Lio_kaitai_struct_datatype_DataType__Z(attr.dataType$1); if ((elem$1 && (!nowUnaligned))) { this.lang$1.alignToByte__T__V(this.lang$1.normalIO__T()) }; const this$2 = this.lang$1; const id = attr.id$1; $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__s_Option__V(this$2, attr, id, defEndian); elem$1 = nowUnaligned; const this$3 = these; these = this$3.tail__sci_List() } }; compile__Lio_kaitai_struct_CompileLog$SpecSuccess() { this.lang$1.fileHeader__T__V(this.topClassName$1.head__O()); this.compileOpaqueClasses__Lio_kaitai_struct_format_ClassSpec__V(this.topClass__Lio_kaitai_struct_format_ClassSpec()); this.compileClass__Lio_kaitai_struct_format_ClassSpec__V(this.topClass__Lio_kaitai_struct_format_ClassSpec()); this.lang$1.fileFooter__T__V(this.topClassName$1.head__O()); const jsx$1 = this.lang$1.type2class__T__T(this.topClassName$1.head__O()); const this$2 = this.lang$1.results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this.topClass__Lio_kaitai_struct_format_ClassSpec()); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const fileName = x0$1.$$und1__O(); const contents = x0$1.$$und2__O(); return new $c_Lio_kaitai_struct_CompileLog$FileSuccess().init___T__T(fileName, contents) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this)); const this$1 = $m_sci_Iterable$(); const bf = this$1.ReusableCBFInstance$2; return new $c_Lio_kaitai_struct_CompileLog$SpecSuccess().init___T__sci_List(jsx$1, $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this$2, f, bf).toList__sci_List()) }; isUnalignedBits__Lio_kaitai_struct_datatype_DataType__Z(dt) { if (((dt instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType) || (dt instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1))) { return true } else if ((dt instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x4 = dt; return this.isUnalignedBits__Lio_kaitai_struct_datatype_DataType__Z(x4.basedOn$1) } else { return false } }; compileInstances__Lio_kaitai_struct_format_ClassSpec__V(curClass) { curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instName = x0$1.$$und1__O(); const instSpec = x0$1.$$und2__O(); $this.compileInstance__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__s_Option__V(curClass$1.name$1, instName, instSpec, curClass$1.meta$1.endian$1) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass))) }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompilerStatic(classSpecs, topClass, config, langObj) { this.topClass$1 = topClass; this.provider$1 = new $c_Lio_kaitai_struct_ClassTypeProvider().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass); this.topClassName$1 = topClass.name$1; this.lang$1 = langObj.getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(this.provider$1, config); this.IS$undLE$undID$1 = new $c_Lio_kaitai_struct_format_SpecialIdentifier().init___T("_is_le"); return this }; compileEnums__Lio_kaitai_struct_format_ClassSpec__V(curClass) { curClass.enums$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const enumColl = x0$1.$$und2__O(); $this.compileEnum__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_EnumSpec__V(curClass$1, enumColl) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass))) }; compileClass__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.provider$1.nowClass$1 = curClass; const this$1 = curClass.meta$1.imports$1; let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const file = arg1; this.lang$1.importFile__T__V(file); const this$2 = these; these = this$2.tail__sci_List() }; if ((!this.lang$1.innerDocstrings__Z())) { this.compileClassDoc__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; this.lang$1.classHeader__sci_List__V(curClass.name$1); if (this.lang$1.innerDocstrings__Z()) { this.compileClassDoc__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const typeName = x0$1.$$und1__O(); const jsx$1 = this$2$1.lang$1; $m_sci_List$(); const array = [typeName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$6 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$6); i = (((-1) + i) | 0) }; jsx$1.classForwardDeclaration__sci_List__V(result) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); const this$7 = curClass.params$1; let these$1 = this$7; while ((!these$1.isEmpty__Z())) { const arg1$1 = these$1.head__O(); const paramDefSpec = arg1$1; const x1 = paramDefSpec.dataType$1; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2 = x1; const externalTypeName = x2.classSpec$3.get__O().name$1; if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(externalTypeName.head__O(), curClass.name$1.head__O()))) { this.lang$1.classForwardDeclaration__sci_List__V(externalTypeName) } }; const this$8 = these$1; these$1 = this$8.tail__sci_List() }; if (this.lang$1.innerEnums__Z()) { this.compileEnums__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; if (this.lang$1.config$1.readStoresPos$1) { this.lang$1.debugClassSequence__sci_List__V(curClass.seq$1) }; this.compileConstructor__Lio_kaitai_struct_format_ClassSpec__V(curClass); this.compileEagerRead__sci_List__s_Option__V(curClass.seq$1, curClass.meta$1.endian$1); this.compileDestructor__Lio_kaitai_struct_format_ClassSpec__V(curClass); if (this.lang$1.innerClasses__Z()) { this.compileSubclasses__Lio_kaitai_struct_format_ClassSpec__V(curClass); this.provider$1.nowClass$1 = curClass }; this.compileInstances__Lio_kaitai_struct_format_ClassSpec__V(curClass); const jsx$7 = curClass.seq$1; const jsx$6 = curClass.params$1; const this$9 = $m_sci_List$(); const jsx$5 = jsx$7.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$6, this$9.ReusableCBFInstance$2); $m_sci_List$(); const array$1 = [new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), $m_Lio_kaitai_struct_format_RootIdentifier$(), new $c_Lio_kaitai_struct_datatype_DataType$CalcUserType().init___sci_List__s_Option__sc_Seq(this.topClassName$1, $m_s_None$(), $m_sc_Seq$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec($m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1)), new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), $m_Lio_kaitai_struct_format_ParentIdentifier$(), curClass.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType(), ($m_Lio_kaitai_struct_format_AttrSpec$(), new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec($m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1))]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$20 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$20); i$1 = (((-1) + i$1) | 0) }; const jsx$4 = result$1; const this$21 = $m_sci_List$(); const jsx$3 = jsx$5.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$4, this$21.ReusableCBFInstance$2); const jsx$2 = $m_Lio_kaitai_struct_languages_components_ExtraAttrs$().forClassSpec__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_languages_components_ExtraAttrs__sci_List(curClass, this.lang$1); const this$22 = $m_sci_List$(); const allAttrs = jsx$3.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$22.ReusableCBFInstance$2); this.compileAttrDeclarations__sci_List__V(allAttrs); this.compileAttrReaders__sci_List__V(allAttrs); const this$23 = curClass.toStringExpr$1; if ((!this$23.isEmpty__Z())) { const arg1$2 = this$23.get__O(); const expr = arg1$2; this.lang$1.classToString__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) }; this.lang$1.classFooter__sci_List__V(curClass.name$1); if ((!this.lang$1.innerClasses__Z())) { this.compileSubclasses__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; if ((!this.lang$1.innerEnums__Z())) { this.compileEnums__Lio_kaitai_struct_format_ClassSpec__V(curClass) } }; compileSeqProc__sci_List__s_Option__V(seq, defEndian) { this.lang$1.readHeader__s_Option__Z__V(defEndian, seq.isEmpty__Z()); this.compileSeq__sci_List__s_Option__V(seq, defEndian); this.lang$1.readFooter__V() }; compileInstanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__V(instName, instSpec) { let isNullable; if (this.lang$1.switchBytesOnlyAsRaw__Z()) { if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = instSpec; isNullable = $f_Lio_kaitai_struct_format_AttrLikeSpec__isNullableSwitchRaw__Z(x2) } else { isNullable = instSpec.isNullable__Z() } } else { isNullable = instSpec.isNullable__Z() }; this.lang$1.instanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(instName, instSpec.dataTypeComposite__Lio_kaitai_struct_datatype_DataType(), isNullable) }; compileCalcEndian__Lio_kaitai_struct_datatype_CalcEndian__V(ce) { this.lang$1.switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this.IS$undLE$undID$1, ce.on$1, ce.cases$1, new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(result$2) { const result = result$2; $this.renderProc$1__p1__Lio_kaitai_struct_datatype_FixedEndian__V(result) }) })(this)), new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2) { return (function(result$3$2) { const result$3 = result$3$2; this$2.renderProc$1__p1__Lio_kaitai_struct_datatype_FixedEndian__V(result$3) }) })(this))) }; compileAttrInit__Lio_kaitai_struct_format_AttrLikeSpec__V(originalAttr) { const this$1 = $m_Lio_kaitai_struct_languages_components_ExtraAttrs$(); const compiler = this.lang$1; const extraAttrs = this$1.forAttr__p1__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__Lio_kaitai_struct_languages_components_ExtraAttrs__sc_Iterable(originalAttr.id__Lio_kaitai_struct_format_Identifier(), originalAttr.dataType__Lio_kaitai_struct_datatype_DataType(), originalAttr.cond__Lio_kaitai_struct_format_ConditionalSpec(), compiler); $m_sci_List$(); const array = [originalAttr]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$5 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$5); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$6 = $m_sci_List$(); const allAttrs = jsx$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(extraAttrs, this$6.ReusableCBFInstance$2); let these = allAttrs; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; this.lang$1.attrInit__Lio_kaitai_struct_format_AttrLikeSpec__V(attr); const this$7 = these; these = this$7.tail__sci_List() } }; topClass__Lio_kaitai_struct_format_ClassSpec() { return this.topClass$1 }; compileInstanceDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_InstanceSpec__V(instName, instSpec) { if ((!instSpec.doc$1.isEmpty__Z())) { this.lang$1.attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(instName, instSpec.doc$1) } }; renderProc$1__p1__Lio_kaitai_struct_datatype_FixedEndian__V(result) { const x$2 = $m_Lio_kaitai_struct_datatype_LittleEndian$(); const v = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool().init___Z(((result !== null) && (result === x$2))); this.lang$1.instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(this.IS$undLE$undID$1, $m_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$(), v) }; compileDestructor__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.lang$1.classDestructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass.name$1, curClass.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType(), this.topClassName$1); const this$1 = curClass.seq$1; let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; this.lang$1.attrDestructor__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__V(attr, attr.id$1); const this$2 = these; these = this$2.tail__sci_List() }; curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const id = x0$1.$$und1__O(); const instSpec = x0$1.$$und2__O(); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = instSpec; this$2$1.lang$1.attrDestructor__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__V(x2, id) } else if ((!(instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec))) { throw new $c_s_MatchError().init___O(instSpec) } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.lang$1.classDestructorFooter__V() }; compileAttrDeclarations__sci_List__V(attrs) { let these = attrs; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; const isNullable = (this.lang$1.switchBytesOnlyAsRaw__Z() ? attr.isNullableSwitchRaw__Z() : attr.isNullable__Z()); this.lang$1.attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attr.id__Lio_kaitai_struct_format_Identifier(), attr.dataTypeComposite__Lio_kaitai_struct_datatype_DataType(), isNullable); const this$1 = these; these = this$1.tail__sci_List() } }; compileOpaqueClasses__Lio_kaitai_struct_format_ClassSpec__V(topClass) { $m_Lio_kaitai_struct_TypeProcessor$().getOpaqueClasses__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(topClass).foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, topClass$1) { return (function(classSpec$2) { const classSpec = classSpec$2; if ((!((classSpec === null) ? (topClass$1 === null) : classSpec.equals__O__Z(topClass$1)))) { $this.lang$1.opaqueClassDeclaration__Lio_kaitai_struct_format_ClassSpec__V(classSpec) } }) })(this, topClass))) }; compileAttrReaders__sci_List__V(attrs) { let these = attrs; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; if (((!attr.doc__Lio_kaitai_struct_format_DocSpec().isEmpty__Z()) && (!this.lang$1.innerDocstrings__Z()))) { this.lang$1.attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(attr.id__Lio_kaitai_struct_format_Identifier(), attr.doc__Lio_kaitai_struct_format_DocSpec()) }; const isNullable = (this.lang$1.switchBytesOnlyAsRaw__Z() ? attr.isNullableSwitchRaw__Z() : attr.isNullable__Z()); this.lang$1.attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attr.id__Lio_kaitai_struct_format_Identifier(), attr.dataTypeComposite__Lio_kaitai_struct_datatype_DataType(), isNullable); const this$1 = these; these = this$1.tail__sci_List() } }; compileInit__Lio_kaitai_struct_format_ClassSpec__V(curClass) { const this$1 = curClass.seq$1; let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; this.compileAttrInit__Lio_kaitai_struct_format_AttrLikeSpec__V(attr); const this$2 = these; these = this$2.tail__sci_List() }; curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instSpec = x0$1.$$und2__O(); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = instSpec; this$2$1.compileAttrInit__Lio_kaitai_struct_format_AttrLikeSpec__V(x2) } else if ((!(instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec))) { throw new $c_s_MatchError().init___O(instSpec) } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))) }; compileEnum__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_EnumSpec__V(curClass, enumColl) { const jsx$2 = this.lang$1; const jsx$1 = curClass.name$1; const this$1 = enumColl.name$1; jsx$2.enumDeclaration__sci_List__T__sc_Seq__V(jsx$1, $f_sc_LinearSeqOptimized__last__O(this$1), enumColl.sortedSeq__sc_Seq()) }; compileEagerRead__sci_List__s_Option__V(seq, endian) { let rc12 = false; let x4 = null; matchEnd13: { let jsx$1; matchEnd16: { const x = $m_s_None$(); if ((x === endian)) { jsx$1 = true; break matchEnd16 }; if ((endian instanceof $c_s_Some)) { const x2 = endian; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_FixedEndian)) { jsx$1 = true; break matchEnd16 } }; jsx$1 = false }; if (jsx$1) { this.compileSeqProc__sci_List__s_Option__V(seq, $m_s_None$()); break matchEnd13 }; if ((endian instanceof $c_s_Some)) { rc12 = true; x4 = endian; const ce = x4.value$2; if ((ce instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { const x9 = ce; this.lang$1.readHeader__s_Option__Z__V($m_s_None$(), false); this.compileCalcEndian__Lio_kaitai_struct_datatype_CalcEndian__V(x9); this.lang$1.runReadCalc__V(); this.lang$1.readFooter__V(); this.compileSeqProc__sci_List__s_Option__V(seq, new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_LittleEndian$())); this.compileSeqProc__sci_List__s_Option__V(seq, new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_BigEndian$())); break matchEnd13 } }; if (rc12) { const p6 = x4.value$2; const x$3 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$3 === p6)) { this.lang$1.readHeader__s_Option__Z__V($m_s_None$(), false); this.lang$1.runReadCalc__V(); this.lang$1.readFooter__V(); this.compileSeqProc__sci_List__s_Option__V(seq, new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_LittleEndian$())); this.compileSeqProc__sci_List__s_Option__V(seq, new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_BigEndian$())); break matchEnd13 } }; throw new $c_s_MatchError().init___O(endian) } }; } const $d_Lio_kaitai_struct_ClassCompiler = new $TypeData().initClass({ Lio_kaitai_struct_ClassCompiler: 0 }, false, "io.kaitai.struct.ClassCompiler", { Lio_kaitai_struct_ClassCompiler: 1, O: 1, Lio_kaitai_struct_AbstractCompiler: 1 }); $c_Lio_kaitai_struct_ClassCompiler.prototype.$classData = $d_Lio_kaitai_struct_ClassCompiler; class $c_Lio_kaitai_struct_ClassTypeProvider extends $c_O { constructor() { super(); this.classSpecs$1 = null; this.topClass$1 = null; this.nowClass$1 = null; this.$$undcurrentIteratorType$1 = null; this.$$undcurrentSwitchType$1 = null }; resolveEnum__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_format_EnumSpec(inClass, enumName) { const x1 = inClass.enums$1.get__O__s_Option(enumName); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const spec = x2.value$2; return spec } else { const x = $m_s_None$(); if ((x === x1)) { const x1$2 = inClass.upClass$1; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const upClass = x2$2.value$2; return this.resolveEnum__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_format_EnumSpec(upClass, enumName) } else { const x$3 = $m_s_None$(); if ((x$3 === x1$2)) { throw new $c_Lio_kaitai_struct_precompile_EnumNotFoundError().init___T__Lio_kaitai_struct_format_ClassSpec(enumName, this.nowClass$1) } else { throw new $c_s_MatchError().init___O(x1$2) } } } else { throw new $c_s_MatchError().init___O(x1) } } }; determineType__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_datatype_DataType(inClass, attrName) { if (($m_Lio_kaitai_struct_format_Identifier$().ROOT$1 === attrName)) { return this.topClass$1.toDataType__Lio_kaitai_struct_datatype_DataType() } else if (($m_Lio_kaitai_struct_format_Identifier$().PARENT$1 === attrName)) { const x = inClass.parentClass$1; const x$2 = $m_Lio_kaitai_struct_format_UnknownClassSpec$(); if (((x !== null) && x.equals__O__Z(x$2))) { const jsx$2 = $m_sjsr_package$(); const jsx$1 = $m_Lio_kaitai_struct_format_Identifier$().PARENT$1; const this$1 = inClass.name$1; throw jsx$2.unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T(((("Unable to derive " + jsx$1) + " type in ") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", "")))) }; return inClass.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType() } else { return (($m_Lio_kaitai_struct_format_Identifier$().IO$1 === attrName) ? $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$() : (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === attrName) ? this.$$undcurrentIteratorType$1.get__O() : (($m_Lio_kaitai_struct_format_Identifier$().SWITCH$undON$1 === attrName) ? this.$$undcurrentSwitchType$1.get__O() : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === attrName) ? $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() : (($m_Lio_kaitai_struct_format_Identifier$().SIZEOF$1 === attrName) ? $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$() : this.resolveMember__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_format_MemberSpec(inClass, attrName).dataTypeComposite__Lio_kaitai_struct_datatype_DataType()))))) } }; resolveType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName) { return this.resolveClassSpec__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_format_ClassSpec(typeName).toDataType__Lio_kaitai_struct_datatype_DataType() }; resolveClassSpec__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_format_ClassSpec(typeName) { return this.resolveClassSpec__Lio_kaitai_struct_format_ClassSpec__sc_Seq__Lio_kaitai_struct_format_ClassSpec((typeName.absolute$1 ? this.topClass$1 : this.nowClass$1), typeName.names$1) }; resolveClassSpec__Lio_kaitai_struct_format_ClassSpec__sc_Seq__Lio_kaitai_struct_format_ClassSpec(inClass, typeName) { if (typeName.isEmpty__Z()) { return inClass }; const x1 = typeName.toList__sci_List(); if ((!(x1 instanceof $c_sci_$colon$colon))) { throw new $c_s_MatchError().init___O(x1) }; const x2 = x1; const headTypeName = x2.head$5; const restTypesNames = x2.tl$5; const nextClass = this.resolveClassSpec__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_format_ClassSpec(inClass, headTypeName); return (restTypesNames.isEmpty__Z() ? nextClass : this.resolveClassSpec__Lio_kaitai_struct_format_ClassSpec__sc_Seq__Lio_kaitai_struct_format_ClassSpec(nextClass, restTypesNames)) }; resolveEnum__Lio_kaitai_struct_exprlang_Ast$typeId__T__Lio_kaitai_struct_format_EnumSpec(inType, enumName) { return this.resolveEnum__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_format_EnumSpec(this.resolveClassSpec__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_format_ClassSpec(inType), enumName) }; isLazy__Lio_kaitai_struct_format_ClassSpec__T__Z(inClass, attrName) { const nonLocalReturnKey2 = new $c_O().init___(); try { const this$1 = inClass.seq$1; let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const el = arg1; const x = el.id$1; const x$2 = new $c_Lio_kaitai_struct_format_NamedIdentifier().init___T(attrName); if (((x !== null) && x.equals__O__Z(x$2))) { throw new $c_sr_NonLocalReturnControl$mcZ$sp().init___O__Z(nonLocalReturnKey2, false) }; const this$2 = these; these = this$2.tail__sci_List() }; const this$3 = inClass.params$1; let these$1 = this$3; while ((!these$1.isEmpty__Z())) { const arg1$1 = these$1.head__O(); const el$3 = arg1$1; const x$1 = el$3.id$1; const x$2$1 = new $c_Lio_kaitai_struct_format_NamedIdentifier().init___T(attrName); if (((x$1 !== null) && x$1.equals__O__Z(x$2$1))) { throw new $c_sr_NonLocalReturnControl$mcZ$sp().init___O__Z(nonLocalReturnKey2, false) }; const this$4 = these$1; these$1 = this$4.tail__sci_List() }; const x1 = inClass.instances$1.get__O__s_Option(new $c_Lio_kaitai_struct_format_InstanceIdentifier().init___T(attrName)); if ((x1 instanceof $c_s_Some)) { return true } else { const x$3 = $m_s_None$(); if ((!(x$3 === x1))) { throw new $c_s_MatchError().init___O(x1) } }; throw new $c_Lio_kaitai_struct_precompile_FieldNotFoundError().init___T__Lio_kaitai_struct_format_ClassSpec(attrName, inClass) } catch (e) { if ((e instanceof $c_sr_NonLocalReturnControl)) { const ex = e; if ((ex.key$2 === nonLocalReturnKey2)) { return ex.value$mcZ$sp__Z() } else { throw ex } } else { throw e } } }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass) { this.classSpecs$1 = classSpecs; this.topClass$1 = topClass; this.nowClass$1 = this.topClass$1; this.$$undcurrentIteratorType$1 = $m_s_None$(); this.$$undcurrentSwitchType$1 = $m_s_None$(); return this }; resolveClassSpec__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_format_ClassSpec(inClass, typeName) { const this$1 = inClass.name$1; const x = $f_sc_LinearSeqOptimized__last__O(this$1); if (((x === null) ? (typeName === null) : $objectEquals(x, typeName))) { return inClass }; const x1 = inClass.types$1.get__O__s_Option(typeName); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const spec = x2.value$2; return spec } else { const x$3 = $m_s_None$(); if ((x$3 === x1)) { const x1$2 = inClass.upClass$1; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const upClass = x2$2.value$2; return this.resolveClassSpec__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_format_ClassSpec(upClass, typeName) } else { const x$5 = $m_s_None$(); if ((x$5 === x1$2)) { const x1$3 = this.classSpecs$1.get__O__s_Option(typeName); if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const spec$2 = x2$3.value$2; return spec$2 } else { const x$7 = $m_s_None$(); if ((x$7 === x1$3)) { throw new $c_Lio_kaitai_struct_precompile_TypeNotFoundError().init___T__Lio_kaitai_struct_format_ClassSpec(typeName, this.nowClass$1) } else { throw new $c_s_MatchError().init___O(x1$3) } } } else { throw new $c_s_MatchError().init___O(x1$2) } } } else { throw new $c_s_MatchError().init___O(x1) } } }; resolveMember__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_format_MemberSpec(inClass, attrName) { const nonLocalReturnKey1 = new $c_O().init___(); try { const this$1 = inClass.seq$1; let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const el = arg1; const x = el.id$1; const x$2 = new $c_Lio_kaitai_struct_format_NamedIdentifier().init___T(attrName); if (((x !== null) && x.equals__O__Z(x$2))) { throw new $c_sr_NonLocalReturnControl().init___O__O(nonLocalReturnKey1, el) }; const this$2 = these; these = this$2.tail__sci_List() }; const this$3 = inClass.params$1; let these$1 = this$3; while ((!these$1.isEmpty__Z())) { const arg1$1 = these$1.head__O(); const el$3 = arg1$1; const x$1 = el$3.id$1; const x$2$1 = new $c_Lio_kaitai_struct_format_NamedIdentifier().init___T(attrName); if (((x$1 !== null) && x$1.equals__O__Z(x$2$1))) { throw new $c_sr_NonLocalReturnControl().init___O__O(nonLocalReturnKey1, el$3) }; const this$4 = these$1; these$1 = this$4.tail__sci_List() }; let rc8 = false; let x2 = null; const x1 = inClass.instances$1.get__O__s_Option(new $c_Lio_kaitai_struct_format_InstanceIdentifier().init___T(attrName)); matchEnd9: { if ((x1 instanceof $c_s_Some)) { rc8 = true; x2 = x1; const i = x2.value$2; if ((i instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) { const x4 = i; return x4 } }; if (rc8) { const i$2 = x2.value$2; if ((i$2 instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x5 = i$2; return x5 } }; const x$3 = $m_s_None$(); if ((x$3 === x1)) { break matchEnd9 }; throw new $c_s_MatchError().init___O(x1) }; throw new $c_Lio_kaitai_struct_precompile_FieldNotFoundError().init___T__Lio_kaitai_struct_format_ClassSpec(attrName, inClass) } catch (e) { if ((e instanceof $c_sr_NonLocalReturnControl)) { const ex = e; if ((ex.key$2 === nonLocalReturnKey1)) { return ex.value__O() } else { throw ex } } else { throw e } } }; } const $d_Lio_kaitai_struct_ClassTypeProvider = new $TypeData().initClass({ Lio_kaitai_struct_ClassTypeProvider: 0 }, false, "io.kaitai.struct.ClassTypeProvider", { Lio_kaitai_struct_ClassTypeProvider: 1, O: 1, Lio_kaitai_struct_translators_TypeProvider: 1 }); $c_Lio_kaitai_struct_ClassTypeProvider.prototype.$classData = $d_Lio_kaitai_struct_ClassTypeProvider; class $c_Lio_kaitai_struct_ConstructClassCompiler extends $c_O { constructor() { super(); this.topClass$1 = null; this.out$1 = null; this.importList$1 = null; this.provider$1 = null; this.translator$1 = null }; compileParseInstance__Lio_kaitai_struct_format_ParseInstanceSpec__V(attr) { const x1 = attr.pos$2; const x = $m_s_None$(); if ((x === x1)) { this.compileAttr__Lio_kaitai_struct_format_AttrLikeSpec__V(attr) } else if ((x1 instanceof $c_s_Some)) { const x2 = x1; const pos = x2.value$2; this.out$1.puts__T__V((((("'" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attr.id$2)) + "' / ") + ((("Pointer(" + this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(pos)) + ", ") + this.compileAttrBody__Lio_kaitai_struct_format_AttrLikeSpec__T(attr))) + "),")) } else { throw new $c_s_MatchError().init___O(x1) } }; compileEnum__Lio_kaitai_struct_format_EnumSpec__V(enumSpec) { const jsx$1 = this.out$1; const this$1 = enumSpec.name$1; jsx$1.puts__T__V((("def " + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "__", "")) + "(subcon):")); this.out$1.inc__V(); this.out$1.puts__T__V("return Enum(subcon,"); this.out$1.inc__V(); enumSpec.sortedSeq__sc_Seq().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const valueSpec = x0$1.$$und2__O(); $this.out$1.puts__T__V((((valueSpec.name$1 + "=") + new $c_sjsr_RuntimeLong().init___I__I(lo, hi)) + ",")) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.out$1.dec__V(); this.out$1.puts__T__V(")"); this.out$1.dec__V(); const this$2 = this.out$1; this$2.sb$2.append__T__scm_StringBuilder("\n") }; fixedEndianToStr__Lio_kaitai_struct_datatype_FixedEndian__T(e) { const x = $m_Lio_kaitai_struct_datatype_LittleEndian$(); if ((x === e)) { return "l" } else { const x$3 = $m_Lio_kaitai_struct_datatype_BigEndian$(); if ((x$3 === e)) { return "b" } else { throw new $c_s_MatchError().init___O(e) } } }; compile__Lio_kaitai_struct_CompileLog$SpecSuccess() { this.out$1.puts__T__V("from construct import *"); this.out$1.puts__T__V("from construct.lib import *"); const this$1 = this.out$1; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.compileClass__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); const jsx$1 = this.out$1; const cs = this.topClass$1; const this$2 = cs.name$1; jsx$1.puts__T__V(("_schema = " + $f_sc_TraversableOnce__mkString__T__T__T__T(this$2, "", "__", ""))); $m_sci_List$(); const this$3 = this.topClass$1; const this$4 = this$3.name$1; const jsx$2 = this.outFileName__T__T($f_sc_TraversableOnce__mkString__T__T__T__T(this$4, "", "::", "")); const this$5 = this.out$1; const this$6 = this$5.sb$2; const array = [new $c_Lio_kaitai_struct_CompileLog$FileSuccess().init___T__T(jsx$2, this$6.underlying$5.java$lang$StringBuilder$$content$f)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$10 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$10); i = (((-1) + i) | 0) }; return new $c_Lio_kaitai_struct_CompileLog$SpecSuccess().init___T__sci_List("", result) }; attrBytesLimitType__Lio_kaitai_struct_datatype_DataType$BytesLimitType__T__T(blt, subcon) { const x1 = blt.terminator$2; const x = $m_s_None$(); let subcon2; if ((x === x1)) { subcon2 = subcon } else { if ((!(x1 instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(x1) }; const x2 = x1; const term = (x2.value$2 | 0); const this$4 = new $c_sci_StringOps().init___T("\\x%02X"); const array = [(255 & term)]; const jsx$2 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1$1 = (array.length | 0); switch (x1$1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x$1 = (array$1.length | 0); const x$2 = ((x$1 < len$2) ? x$1 : len$2); const that = result.u.length; const end = ((x$2 < that) ? x$2 : that); while ((i$1 < end)) { const jsx$1 = j; const index$1 = i$1; result.u[jsx$1] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; const termStr = jsx$2.format__T__AO__T($$this, result); subcon2 = (((((("NullTerminated(" + subcon) + ", term=b'") + termStr) + "', include=") + this.translator$1.doBoolLiteral__Z__T(blt.include$2)) + ")") }; const x1$2 = blt.padRight$2; const x$3 = $m_s_None$(); let subcon3; if ((x$3 === x1$2)) { subcon3 = subcon2 } else { if ((!(x1$2 instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(x1$2) }; const x2$2 = x1$2; const padRight = (x2$2.value$2 | 0); const this$21 = new $c_sci_StringOps().init___T("\\x%02X"); const array$2 = [(255 & padRight)]; const jsx$4 = $m_sjsr_RuntimeString$(); const $$this$1 = this$21.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$3 = []; const x1$3 = (array$2.length | 0); switch (x1$3) { case (-1): { break } }; let i$2 = 0; const len$3 = (array$2.length | 0); while ((i$2 < len$3)) { const index$2 = i$2; const arg1$1 = array$2[index$2]; const elem$1 = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$21, arg1$1); array$3.push(elem$1); i$2 = ((1 + i$2) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$4 = (array$3.length | 0); const result$1 = $newArrayObject($d_O.getArrayOf(), [len$4]); const len$5 = result$1.u.length; let i$3 = 0; let j$1 = 0; const x$4 = (array$3.length | 0); const x$5 = ((x$4 < len$5) ? x$4 : len$5); const that$1 = result$1.u.length; const end$1 = ((x$5 < that$1) ? x$5 : that$1); while ((i$3 < end$1)) { const jsx$3 = j$1; const index$3 = i$3; result$1.u[jsx$3] = array$3[index$3]; i$3 = ((1 + i$3) | 0); j$1 = ((1 + j$1) | 0) }; const padStr = jsx$4.format__T__AO__T($$this$1, result$1); subcon3 = (((("NullStripped(" + subcon2) + ", pad=b'") + padStr) + "')") }; return (((("FixedSized(" + this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(blt.size$2)) + ", ") + subcon3) + ")") }; attrBytesTerminatedType__Lio_kaitai_struct_datatype_DataType$BytesTerminatedType__T__T(btt, subcon) { const this$4 = new $c_sci_StringOps().init___T("\\x%02X"); const array = [(255 & btt.terminator$2)]; const jsx$2 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x = (array$1.length | 0); const x$1 = ((x < len$2) ? x : len$2); const that = result.u.length; const end = ((x$1 < that) ? x$1 : that); while ((i$1 < end)) { const jsx$1 = j; const index$1 = i$1; result.u[jsx$1] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; const termStr = jsx$2.format__T__AO__T($$this, result); return (((((((("NullTerminated(" + subcon) + ", ") + ("term=b'" + termStr)) + "', ") + ("include=" + this.translator$1.doBoolLiteral__Z__T(btt.include$2))) + ", ") + ("consume=" + this.translator$1.doBoolLiteral__Z__T(btt.consume$2))) + ")") }; compileClass__Lio_kaitai_struct_format_ClassSpec__V(cs) { cs.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const typeSpec = x0$1.$$und2__O(); $this.compileClass__Lio_kaitai_struct_format_ClassSpec__V(typeSpec) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); cs.enums$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const enumSpec = x0$2.$$und2__O(); this$2.compileEnum__Lio_kaitai_struct_format_EnumSpec__V(enumSpec) } else { throw new $c_s_MatchError().init___O(x0$2) } }) })(this))); const jsx$1 = this.out$1; const this$1 = cs.name$1; jsx$1.puts__T__V(($f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "__", "") + " = Struct(")); this.out$1.inc__V(); this.provider$1.nowClass$1 = cs; const this$3 = cs.seq$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const seqAttr = arg1; this.compileAttr__Lio_kaitai_struct_format_AttrLikeSpec__V(seqAttr); const this$4 = these; these = this$4.tail__sci_List() }; cs.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$4$1) { return (function(x0$3$2) { const x0$3 = x0$3$2; if ((x0$3 !== null)) { const id = x0$3.$$und1__O(); const instSpec = x0$3.$$und2__O(); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) { const x2 = instSpec; this$4$1.compileValueInstance__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_ValueInstanceSpec__V(id, x2) } else { if ((!(instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec))) { throw new $c_s_MatchError().init___O(instSpec) }; const x3 = instSpec; this$4$1.compileParseInstance__Lio_kaitai_struct_format_ParseInstanceSpec__V(x3) } } else { throw new $c_s_MatchError().init___O(x0$3) } }) })(this))); this.out$1.dec__V(); this.out$1.puts__T__V(")"); const this$5 = this.out$1; this$5.sb$2.append__T__scm_StringBuilder("\n") }; attrSwitchType__Lio_kaitai_struct_datatype_DataType$SwitchType__T(st) { const jsx$2 = st.cases$2.filter__F1__O(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const caseExpr = x0$1.$$und1__O(); const x$2 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; return (!((caseExpr === null) ? (x$2 === null) : caseExpr.equals__O__Z(x$2))) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const caseExpr$1 = x0$2.$$und1__O(); const caseType = x0$2.$$und2__O(); return (((this$2.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(caseExpr$1) + ": ") + this$2.typeToStr__Lio_kaitai_struct_datatype_DataType__T(caseType)) + ", ") } else { throw new $c_s_MatchError().init___O(x0$2) } }) })(this)); const this$1 = $m_sci_Iterable$(); const cases = jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2); const this$3 = st.cases$2.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); let this$4; if (this$3.isEmpty__Z()) { this$4 = $m_s_None$() } else { const arg1 = this$3.get__O(); const t = arg1; this$4 = new $c_s_Some().init___O((", default=" + this.typeToStr__Lio_kaitai_struct_datatype_DataType__T(t))) }; const defaultSuffix = (this$4.isEmpty__Z() ? "" : this$4.get__O()); return (((((("Switch(" + this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(st.on$2)) + ", {") + cases.mkString__T()) + "}") + defaultSuffix) + ")") }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return name$2 } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$3 = x5.name$2; return name$3 } else { throw new $c_s_MatchError().init___O(id) } }; compileValueInstance__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_ValueInstanceSpec__V(id, vis) { const typeStr = (("Computed(lambda this: " + this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(vis.value$2)) + ")"); const typeStr2 = this.wrapWithIf__T__s_Option__T(typeStr, vis.ifExpr$2); this.out$1.puts__T__V((((("'" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) + "' / ") + typeStr2) + ",")) }; compileAttrBody__Lio_kaitai_struct_format_AttrLikeSpec__T(attr) { const typeStr1 = this.typeToStr__Lio_kaitai_struct_datatype_DataType__T(attr.dataType__Lio_kaitai_struct_datatype_DataType()); const typeStr2 = this.wrapWithRepeat__T__Lio_kaitai_struct_format_RepeatSpec__Lio_kaitai_struct_datatype_DataType__T(typeStr1, attr.cond__Lio_kaitai_struct_format_ConditionalSpec().repeat$1, attr.dataType__Lio_kaitai_struct_datatype_DataType()); return this.wrapWithIf__T__s_Option__T(typeStr2, attr.cond__Lio_kaitai_struct_format_ConditionalSpec().ifExpr$1) }; outFileName__T__T(topClassName) { return (topClassName + ".py") }; signToStr__Z__T(signed) { return (signed ? "s" : "u") }; wrapWithRepeat__T__Lio_kaitai_struct_format_RepeatSpec__Lio_kaitai_struct_datatype_DataType__T(typeStr, repeat, dataType) { if ((repeat instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { const x2 = repeat; const expr = x2.expr$1; return (((("Array(" + this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(expr)) + ", ") + typeStr) + ")") } else if ((repeat instanceof $c_Lio_kaitai_struct_format_RepeatUntil)) { const x3 = repeat; const expr$2 = x3.expr$1; this.provider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); return (((("RepeatUntil(lambda obj_, list_, this: " + this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(expr$2)) + ", ") + typeStr) + ")") } else { const x = $m_Lio_kaitai_struct_format_RepeatEos$(); if ((x === repeat)) { return (("GreedyRange(" + typeStr) + ")") } else { const x$3 = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x$3 === repeat)) { return typeStr } else { throw new $c_s_MatchError().init___O(repeat) } } } }; typeToStr__Lio_kaitai_struct_datatype_DataType__T(dataType) { if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { const x2 = dataType; const signed = x2.signed$3; return (("Int8" + this.signToStr__Z__T(signed)) + "b") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { const x3 = dataType; const signed$2 = x3.signed$3; const width = x3.width$3; const endianOpt = x3.endian$3; return ((("Int" + (width.width$1 << 3)) + this.signToStr__Z__T(signed$2)) + this.fixedEndianToStr__Lio_kaitai_struct_datatype_FixedEndian__T(endianOpt.get__O())) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) { const x4 = dataType; const width$2 = x4.width$3; const endianOpt$2 = x4.endian$3; return (("Float" + (width$2.width$1 << 3)) + this.fixedEndianToStr__Lio_kaitai_struct_datatype_FixedEndian__T(endianOpt$2.get__O())) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return "GreedyBytes" } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; return this.attrBytesLimitType__Lio_kaitai_struct_datatype_DataType$BytesLimitType__T__T(x7, "GreedyBytes") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x8 = dataType; return this.attrBytesTerminatedType__Lio_kaitai_struct_datatype_DataType$BytesTerminatedType__T__T(x8, "GreedyBytes") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType)) { const x6 = dataType; const bytes = x6.bytes$2; const encoding = x6.encoding$2; if ((bytes instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (("GreedyString(encoding='" + encoding) + "')") } else if ((bytes instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x3$2 = bytes; return this.attrBytesLimitType__Lio_kaitai_struct_datatype_DataType$BytesLimitType__T__T(x3$2, (("GreedyString(encoding='" + encoding) + "')")) } else if ((bytes instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x4$2 = bytes; return this.attrBytesTerminatedType__Lio_kaitai_struct_datatype_DataType$BytesTerminatedType__T__T(x4$2, (("GreedyString(encoding='" + encoding) + "')")) } else { throw new $c_s_MatchError().init___O(bytes) } } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeInstream)) { const x9 = dataType; const cs = x9.classSpec$3.get__O(); const this$1 = cs.name$1; return (("LazyBound(lambda: " + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "__", "")) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { const x10 = dataType; const x1$3 = x10.bytes$4; if ((x1$3 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x2$2 = x1$3; const size = x2$2.size$2; const jsx$1 = this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(size); const cs$1 = x10.classSpec$3.get__O(); const this$2 = cs$1.name$1; return (((("FixedSized(" + jsx$1) + ", LazyBound(lambda: ") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$2, "", "__", "")) + "))") } else { return "???" } } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x11 = dataType; const enumSpec = x11.enumSpec$1.get__O(); const this$3 = enumSpec.name$1; return ((($f_sc_TraversableOnce__mkString__T__T__T__T(this$3, "", "__", "") + "(") + this.typeToStr__Lio_kaitai_struct_datatype_DataType__T(x11.basedOn$1)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x12 = dataType; return this.attrSwitchType__Lio_kaitai_struct_datatype_DataType$SwitchType__T(x12) } else { return "???" } }; wrapWithIf__T__s_Option__T(typeStr, ifExpr) { if ((ifExpr instanceof $c_s_Some)) { const x2 = ifExpr; const expr = x2.value$2; return (((("If(" + this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(expr)) + ", ") + typeStr) + ")") } else { const x = $m_s_None$(); if ((x === ifExpr)) { return typeStr } else { throw new $c_s_MatchError().init___O(ifExpr) } } }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass) { this.topClass$1 = topClass; this.out$1 = new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T("\t"); this.importList$1 = new $c_Lio_kaitai_struct_ImportList().init___(); this.provider$1 = new $c_Lio_kaitai_struct_ClassTypeProvider().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass); this.translator$1 = new $c_Lio_kaitai_struct_translators_ConstructTranslator().init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(this.provider$1, this.importList$1); return this }; compileAttr__Lio_kaitai_struct_format_AttrLikeSpec__V(attr) { this.out$1.puts__T__V((((("'" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attr.id__Lio_kaitai_struct_format_Identifier())) + "' / ") + this.compileAttrBody__Lio_kaitai_struct_format_AttrLikeSpec__T(attr)) + ",")) }; } const $d_Lio_kaitai_struct_ConstructClassCompiler = new $TypeData().initClass({ Lio_kaitai_struct_ConstructClassCompiler: 0 }, false, "io.kaitai.struct.ConstructClassCompiler", { Lio_kaitai_struct_ConstructClassCompiler: 1, O: 1, Lio_kaitai_struct_AbstractCompiler: 1 }); $c_Lio_kaitai_struct_ConstructClassCompiler.prototype.$classData = $d_Lio_kaitai_struct_ConstructClassCompiler; class $c_Lio_kaitai_struct_ConstructClassCompiler$ extends $c_O { init___() { return this }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; } const $d_Lio_kaitai_struct_ConstructClassCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_ConstructClassCompiler$: 0 }, false, "io.kaitai.struct.ConstructClassCompiler$", { Lio_kaitai_struct_ConstructClassCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1 }); $c_Lio_kaitai_struct_ConstructClassCompiler$.prototype.$classData = $d_Lio_kaitai_struct_ConstructClassCompiler$; let $n_Lio_kaitai_struct_ConstructClassCompiler$ = (void 0); const $m_Lio_kaitai_struct_ConstructClassCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_ConstructClassCompiler$)) { $n_Lio_kaitai_struct_ConstructClassCompiler$ = new $c_Lio_kaitai_struct_ConstructClassCompiler$().init___() }; return $n_Lio_kaitai_struct_ConstructClassCompiler$ }); class $c_Lio_kaitai_struct_DocClassCompiler extends $c_O { constructor() { super(); this.topClass$1 = null; this.provider$1 = null; this.translator$1 = null; this.out$1 = null }; compile__Lio_kaitai_struct_CompileLog$SpecSuccess() { this.fileHeader__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); this.compileClass__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); this.fileFooter__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); $m_sci_List$(); const jsx$1 = this.outFileName__Lio_kaitai_struct_format_ClassSpec__T(this.topClass$1); const this$1 = this.out$1; const this$2 = this$1.sb$2; const array = [new $c_Lio_kaitai_struct_CompileLog$FileSuccess().init___T__T(jsx$1, this$2.underlying$5.java$lang$StringBuilder$$content$f)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$6 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$6); i = (((-1) + i) | 0) }; return new $c_Lio_kaitai_struct_CompileLog$SpecSuccess().init___T__sci_List("", result) }; compileClass__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.provider$1.nowClass$1 = curClass; this.classHeader__Lio_kaitai_struct_format_ClassSpec__V(curClass); this.compileSeq__Lio_kaitai_struct_format_ClassSpec__V(curClass); curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instSpec = x0$1.$$und2__O(); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = instSpec; $this.compileParseInstance__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_ParseInstanceSpec__V(curClass$1, x2) } else { if ((!(instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec))) { throw new $c_s_MatchError().init___O(instSpec) }; const x3 = instSpec; $this.compileValueInstance__Lio_kaitai_struct_format_ValueInstanceSpec__V(x3) } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass))); curClass.enums$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const enumName = x0$2.$$und1__O(); const enumColl = x0$2.$$und2__O(); this$2.compileEnum__T__Lio_kaitai_struct_format_EnumSpec__V(enumName, enumColl) } else { throw new $c_s_MatchError().init___O(x0$2) } }) })(this))); curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$3) { return (function(x0$3$2) { const x0$3 = x0$3$2; if ((x0$3 !== null)) { const intClass = x0$3.$$und2__O(); this$3.compileClass__Lio_kaitai_struct_format_ClassSpec__V(intClass) } else { throw new $c_s_MatchError().init___O(x0$3) } }) })(this))); this.out$1.dec__V() }; compileSeq__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.seqHeader__Lio_kaitai_struct_format_ClassSpec__V(curClass); const elem = new $c_s_Some().init___O(0); let elem$1 = null; elem$1 = elem; const this$3 = curClass.seq$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; const sizeElement = $m_Lio_kaitai_struct_precompile_CalculateSeqSizes$().dataTypeBitsSize__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_Sized(attr.dataType$1); const sizeContainer = $m_Lio_kaitai_struct_precompile_CalculateSeqSizes$().sizeMultiply__Lio_kaitai_struct_format_Sized__Lio_kaitai_struct_format_RepeatSpec__Lio_kaitai_struct_format_Sized(sizeElement, attr.cond$1.repeat$1); const arg2 = elem$1; this.compileSeqAttr__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_AttrSpec__s_Option__Lio_kaitai_struct_format_Sized__Lio_kaitai_struct_format_Sized__V(curClass, attr, arg2, sizeElement, sizeContainer); const _1 = elem$1; matchEnd7: { if ((_1 instanceof $c_s_Some)) { const x4 = _1; const pos = (x4.value$2 | 0); if ((sizeContainer instanceof $c_Lio_kaitai_struct_format_FixedSized)) { const x5 = sizeContainer; const siz = x5.n$1; elem$1 = new $c_s_Some().init___O(((pos + siz) | 0)); break matchEnd7 } }; elem$1 = $m_s_None$() }; const this$4 = these; these = this$4.tail__sci_List() }; this.out$1.puts__T__V("") }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass) { this.topClass$1 = topClass; this.provider$1 = new $c_Lio_kaitai_struct_ClassTypeProvider().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass); this.translator$1 = new $c_Lio_kaitai_struct_translators_RubyTranslator().init___Lio_kaitai_struct_translators_TypeProvider(this.provider$1); this.out$1 = new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T(""); return this }; } class $c_Lio_kaitai_struct_GraphvizClassCompiler extends $c_O { constructor() { super(); this.topClass$1 = null; this.out$1 = null; this.provider$1 = null; this.translator$1 = null; this.links$1 = null; this.extraClusterLines$1 = null; this.currentTable$1 = null; this.HEADER$undBGCOLOR$1 = null; this.SWITCH$undHEADER$undBGCOLOR$1 = null; this.TH$undSTART$1 = null; this.SWITCH$undTH$undSTART$1 = null; this.STYLE$undEDGE$undTYPE$1 = null; this.STYLE$undEDGE$undMISC$1 = null; this.STYLE$undEDGE$undPOS$1 = null; this.STYLE$undEDGE$undSIZE$1 = null; this.STYLE$undEDGE$undREPEAT$1 = null; this.STYLE$undEDGE$undVALUE$1 = null; this.END$undOF$undSTREAM$1 = null; this.UNKNOWN$1 = null }; compileSeq__sci_List__Lio_kaitai_struct_format_ClassSpec__V(className, curClass) { this.tableStart__sci_List__T__V(className, "seq"); const elem = new $c_s_Some().init___O(0); let elem$1 = null; elem$1 = elem; const this$3 = curClass.seq$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; const sizeElement = $m_Lio_kaitai_struct_precompile_CalculateSeqSizes$().dataTypeBitsSize__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_Sized(attr.dataType$1); const sizeContainer = $m_Lio_kaitai_struct_precompile_CalculateSeqSizes$().sizeMultiply__Lio_kaitai_struct_format_Sized__Lio_kaitai_struct_format_RepeatSpec__Lio_kaitai_struct_format_Sized(sizeElement, attr.cond$1.repeat$1); const arg2 = elem$1; const x1 = attr.id$1; if ((x1 instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2 = x1; const name = x2.name$2; this.tableRow__sci_List__s_Option__Lio_kaitai_struct_format_AttrLikeSpec__T__V(className, $m_Lio_kaitai_struct_GraphvizClassCompiler$().seqPosToStr__s_Option__s_Option(arg2), attr, name) } else if ((x1 instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x3 = x1; const n = x3.idx$2; this.tableRow__sci_List__s_Option__Lio_kaitai_struct_format_AttrLikeSpec__T__V(className, $m_Lio_kaitai_struct_GraphvizClassCompiler$().seqPosToStr__s_Option__s_Option(arg2), attr, (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + n)) } else { throw new $c_s_MatchError().init___O(x1) }; const _1 = elem$1; matchEnd7: { if ((_1 instanceof $c_s_Some)) { const x4 = _1; const pos = (x4.value$2 | 0); if ((sizeContainer instanceof $c_Lio_kaitai_struct_format_FixedSized)) { const x5 = sizeContainer; const siz = x5.n$1; elem$1 = new $c_s_Some().init___O(((pos + siz) | 0)); break matchEnd7 } }; elem$1 = $m_s_None$() }; const this$4 = these; these = this$4.tail__sci_List() }; this.tableEnd__V() }; tableEnd__V() { this.out$1.dec__V(); this.out$1.puts__T__V(">];") }; dataTypeSizeAsString__Lio_kaitai_struct_datatype_DataType__T__T(dataType, attrName) { if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return this.END$undOF$undSTREAM$1 } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; return this.expressionSize__Lio_kaitai_struct_exprlang_Ast$expr__T__T(x7.size$2, attrName) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType)) { const x2 = dataType; const basedOn = x2.bytes$2; return this.dataTypeSizeAsString__Lio_kaitai_struct_datatype_DataType__T__T(basedOn, attrName) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { const x8 = dataType; return this.dataTypeSizeAsString__Lio_kaitai_struct_datatype_DataType__T__T(x8.bytes$4, attrName) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x4 = dataType; const basedOn$2 = x4.basedOn$1; return this.dataTypeSizeAsString__Lio_kaitai_struct_datatype_DataType__T__T(basedOn$2, attrName) } else { const x1$2 = $m_Lio_kaitai_struct_precompile_CalculateSeqSizes$().dataTypeBitsSize__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_Sized(dataType); if ((x1$2 instanceof $c_Lio_kaitai_struct_format_FixedSized)) { const x2$2 = x1$2; const n = x2$2.n$1; return ((((n % 8) | 0) === 0) ? ("" + ((n / 8) | 0)) : (n + "b")) } else { const x = $m_Lio_kaitai_struct_format_DynamicSized$(); if ((x === x1$2)) { return this.UNKNOWN$1 } else { const x$3 = $m_Lio_kaitai_struct_format_NotCalculatedSized$(); let jsx$1; if ((x$3 === x1$2)) { jsx$1 = true } else { const x$5 = $m_Lio_kaitai_struct_format_StartedCalculationSized$(); jsx$1 = (x$5 === x1$2) }; if (jsx$1) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T("Should never happen: problems with CalculateSeqSizes")) } else { throw new $c_s_MatchError().init___O(x1$2) } } } } }; compile__Lio_kaitai_struct_CompileLog$SpecSuccess() { this.out$1.puts__T__V("digraph {"); this.out$1.inc__V(); this.out$1.puts__T__V("rankdir=LR;"); this.out$1.puts__T__V("node [shape=plaintext];"); this.compileClass__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); const this$1 = this.links$1; const this$2 = this$1.scala$collection$mutable$ListBuffer$$start$6; let these = this$2; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const x0$1 = arg1; if ((x0$1 !== null)) { const t1 = x0$1.$$und1$1; const t2 = x0$1.$$und2$1; const style = x0$1.$$und3$1; this.out$1.puts__T__V((((((t1 + " -> ") + t2) + " [") + style) + "];")) } else { throw new $c_s_MatchError().init___O(x0$1) }; const this$3 = these; these = this$3.tail__sci_List() }; this.out$1.dec__V(); this.out$1.puts__T__V("}"); $m_sci_List$(); const this$4 = this.topClass$1; const this$5 = this$4.name$1; const jsx$1 = this.outFileName__T__T($f_sc_TraversableOnce__mkString__T__T__T__T(this$5, "", "::", "")); const this$6 = this.out$1; const this$7 = this$6.sb$2; const array = [new $c_Lio_kaitai_struct_CompileLog$FileSuccess().init___T__T(jsx$1, this$7.underlying$5.java$lang$StringBuilder$$content$f)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$11 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$11); i = (((-1) + i) | 0) }; return new $c_Lio_kaitai_struct_CompileLog$SpecSuccess().init___T__sci_List("", result) }; expressionType__Lio_kaitai_struct_exprlang_Ast$expr__T__T(ex, attrName) { return this.expression__Lio_kaitai_struct_exprlang_Ast$expr__T__T__T(ex, ((this.getGraphvizNode__sci_List__Lio_kaitai_struct_format_ClassSpec__T__T(this.nowClassName__sci_List(), this.provider$1.nowClass$1, attrName) + (":" + attrName)) + "_type"), this.STYLE$undEDGE$undVALUE$1) }; resolveTypedNode__Lio_kaitai_struct_datatype_DataType$UserType__T__T(t, s) { const className = t.name$3; const classSpec = t.classSpec$3.get__O(); return this.resolveNodeForClass__sci_List__Lio_kaitai_struct_format_ClassSpec__T__T(className, classSpec, s) }; compileClass__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.provider$1.nowClass$1 = curClass; const className = curClass.name$1; this.out$1.puts__T__V((("subgraph cluster__" + $f_sc_LinearSeqOptimized__last__O(className)) + " {")); this.out$1.inc__V(); this.out$1.puts__T__V((("label=\"" + $m_Lio_kaitai_struct_GraphvizClassCompiler$().type2display__sci_List__T(className)) + "\";")); this.out$1.puts__T__V("graph[style=dotted];"); const this$2 = this.out$1; this$2.sb$2.append__T__scm_StringBuilder("\n"); this.compileSeq__sci_List__Lio_kaitai_struct_format_ClassSpec__V(className, curClass); curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, className$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instName = x0$1.$$und1__O(); const instSpec = x0$1.$$und2__O(); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = instSpec; $this.tableStart__sci_List__T__V(className$1, ("inst__" + instName.name$2)); $this.compileParseInstance__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_ParseInstanceSpec__V(className$1, instName, x2); $this.tableEnd__V() } else { if ((!(instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec))) { throw new $c_s_MatchError().init___O(instSpec) }; const x3 = instSpec; $this.tableValueInstance__sci_List__T__Lio_kaitai_struct_format_ValueInstanceSpec__V(className$1, instName.name$2, x3) } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, className))); const this$3 = this.out$1; const other = this.extraClusterLines$1; const jsx$1 = this$3.sb$2; const this$4 = other.sb$2; jsx$1.append__T__scm_StringBuilder(this$4.underlying$5.java$lang$StringBuilder$$content$f); const this$5 = this.extraClusterLines$1; const this$6 = this$5.sb$2; this$6.underlying$5.setLength__I__V(0); curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const intClass = x0$2.$$und2__O(); this$2$1.compileClass__Lio_kaitai_struct_format_ClassSpec__V(intClass) } else { throw new $c_s_MatchError().init___O(x0$2) } }) })(this))); this.out$1.dec__V(); this.out$1.puts__T__V("}") }; compileParseInstance__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_ParseInstanceSpec__V(className, id, inst) { const name = id.name$2; const lastInstPos = inst.pos$2; if ((lastInstPos instanceof $c_s_Some)) { const x2 = lastInstPos; const pos = x2.value$2; const posStr = this.expressionPos__Lio_kaitai_struct_exprlang_Ast$expr__T__T(pos, name); this.tableRow__sci_List__s_Option__Lio_kaitai_struct_format_AttrLikeSpec__T__V(className, new $c_s_Some().init___O(posStr), inst, name) } else { const x = $m_s_None$(); if ((x === lastInstPos)) { this.tableRow__sci_List__s_Option__Lio_kaitai_struct_format_AttrLikeSpec__T__V(className, $m_s_None$(), inst, name) } else { throw new $c_s_MatchError().init___O(lastInstPos) } } }; expressionSize__Lio_kaitai_struct_exprlang_Ast$expr__T__T(ex, attrName) { return this.expression__Lio_kaitai_struct_exprlang_Ast$expr__T__T__T(ex, ((this.getGraphvizNode__sci_List__Lio_kaitai_struct_format_ClassSpec__T__T(this.nowClassName__sci_List(), this.provider$1.nowClass$1, attrName) + (":" + attrName)) + "_size"), this.STYLE$undEDGE$undSIZE$1) }; affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(e) { if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp)) { const x2 = e; const values = x2.values$1; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(e$2$2) { const e$2 = e$2$2; return $this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(e$2) }) })(this)); const this$1 = $m_sc_Seq$(); return values.flatMap__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).toList__sci_List() } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BinOp)) { const x3 = e; const left = x3.left$1; const right = x3.right$1; const jsx$3 = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(left); const jsx$2 = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(right); const this$2 = $m_sci_List$(); return jsx$3.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$2.ReusableCBFInstance$2) } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp)) { const x4 = e; const operand = x4.operand$1; return this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(operand) } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IfExp)) { const x5 = e; const condition = x5.condition$1; const ifTrue = x5.ifTrue$1; const ifFalse = x5.ifFalse$1; const jsx$7 = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(condition); const jsx$6 = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(ifTrue); const this$3 = $m_sci_List$(); const jsx$5 = jsx$7.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$6, this$3.ReusableCBFInstance$2); const jsx$4 = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(ifFalse); const this$4 = $m_sci_List$(); return jsx$5.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$4, this$4.ReusableCBFInstance$2) } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare)) { const x6 = e; const left$2 = x6.left$1; const right$2 = x6.right$1; const jsx$9 = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(left$2); const jsx$8 = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(right$2); const this$5 = $m_sci_List$(); return jsx$9.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$8, this$5.ReusableCBFInstance$2) } else if (((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum) || ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum) || ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Str) || (e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool))))) { return $m_sci_Nil$() } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel)) { return $m_sci_Nil$() } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById)) { const x15 = e; const id = x15.id$1; return this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(id) } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute)) { const x18 = e; const value = x18.value$1; const attr = x18.attr$1; const targetClass = this.translator$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(value); if ((targetClass instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2$2 = targetClass; $m_sci_List$(); const array = [this.resolveTypedNode__Lio_kaitai_struct_datatype_DataType$UserType__T__T(x2$2, attr.name$1)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$9 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$9); i = (((-1) + i) | 0) }; return result } else { return this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(value) } } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Call)) { const x19 = e; const func = x19.func$1; const args = x19.args$1; let fromFunc; matchEnd6: { if ((func instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute)) { const x2$3 = func; const obj = x2$3.value$1; const methodName = x2$3.attr$1; if ((obj !== null)) { if ((methodName !== null)) { fromFunc = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(obj); break matchEnd6 } } }; throw new $c_s_MatchError().init___O(func) }; return this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(new $c_Lio_kaitai_struct_exprlang_Ast$expr$List().init___sc_Seq(args)).$$colon$colon$colon__sci_List__sci_List(fromFunc) } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Subscript)) { const x20 = e; const value$2 = x20.value$1; const idx = x20.idx$1; const jsx$11 = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(value$2); const jsx$10 = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(idx); const this$10 = $m_sci_List$(); return jsx$11.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$10, this$10.ReusableCBFInstance$2) } else { const x$1 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; if (((x$1 === null) ? (e === null) : x$1.equals__O__Z(e))) { return $m_sci_Nil$() } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Name)) { const x21 = e; const id$2 = x21.id$1; const thiz = id$2.name$1; if (((65535 & (thiz.charCodeAt(0) | 0)) === 95)) { return $m_sci_Nil$() } else { $m_sci_List$(); const s = id$2.name$1; const array$1 = [this.resolveNodeForClass__sci_List__Lio_kaitai_struct_format_ClassSpec__T__T(this.nowClassName__sci_List(), this.provider$1.nowClass$1, s)]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$15 = result$1; const index$1 = i$1; const x$2 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$15); i$1 = (((-1) + i$1) | 0) }; return result$1 } } else if ((e instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$List)) { const x22 = e; const elts = x22.elts$1; const jsx$12 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(e$3$2) { const e$3 = e$3$2; return this$2$1.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(e$3) }) })(this)); const this$16 = $m_sc_Seq$(); return elts.flatMap__F1__scg_CanBuildFrom__O(jsx$12, this$16.ReusableCBFInstance$2).toList__sci_List() } else { throw new $c_s_MatchError().init___O(e) } } }; resolveNodeForClass__sci_List__Lio_kaitai_struct_format_ClassSpec__T__T(className, cs, s) { return (((this.getGraphvizNode__sci_List__Lio_kaitai_struct_format_ClassSpec__T__T(className, cs, s) + ":") + s) + "_type") }; getGraphvizNode__sci_List__Lio_kaitai_struct_format_ClassSpec__T__T(className, cs, s) { const nonLocalReturnKey1 = new $c_O().init___(); try { const this$1 = cs.seq$1; let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; const x1 = attr.id$1; let name; if ((x1 instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2 = x1; const attrName = x2.name$2; name = attrName } else { if ((!(x1 instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier))) { throw new $c_s_MatchError().init___O(x1) }; const x3 = x1; const n = x3.idx$2; name = (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + n) }; if ((name === s)) { throw new $c_sr_NonLocalReturnControl().init___O__O(nonLocalReturnKey1, ($f_sc_LinearSeqOptimized__last__O(className) + "__seq")) }; const this$3 = these; these = this$3.tail__sci_List() }; const this$4 = cs.params$1; let these$1 = this$4; while ((!these$1.isEmpty__Z())) { const arg1$1 = these$1.head__O(); const attr$3 = arg1$1; const x1$1 = attr$3.id$1; let name$1; if ((x1$1 instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2$1 = x1$1; const attrName$1 = x2$1.name$2; name$1 = attrName$1 } else { if ((!(x1$1 instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier))) { throw new $c_s_MatchError().init___O(x1$1) }; const x3$1 = x1$1; const n$1 = x3$1.idx$2; name$1 = (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + n$1) }; if ((name$1 === s)) { throw new $c_sr_NonLocalReturnControl().init___O__O(nonLocalReturnKey1, ($f_sc_LinearSeqOptimized__last__O(className) + "__params")) }; const this$6 = these$1; these$1 = this$6.tail__sci_List() }; const this$7 = cs.instances$1.get__O__s_Option(new $c_Lio_kaitai_struct_format_InstanceIdentifier().init___T(s)); if ((!this$7.isEmpty__Z())) { const arg1$2 = this$7.get__O(); throw new $c_sr_NonLocalReturnControl().init___O__O(nonLocalReturnKey1, (($f_sc_LinearSeqOptimized__last__O(className) + "__inst__") + s)) }; throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T((((("unable to resolve node '" + s) + "' in type '") + $m_Lio_kaitai_struct_GraphvizClassCompiler$().type2display__sci_List__T(className)) + "'"))) } catch (e) { if ((e instanceof $c_sr_NonLocalReturnControl)) { const ex = e; if ((ex.key$2 === nonLocalReturnKey1)) { return ex.value__O() } else { throw ex } } else { throw e } } }; tableValueInstance__sci_List__T__Lio_kaitai_struct_format_ValueInstanceSpec__V(curClass, name, inst) { this.currentTable$1 = (($f_sc_LinearSeqOptimized__last__O(curClass) + "__inst__") + name); this.out$1.puts__T__V((this.currentTable$1 + " [label=<")); this.out$1.inc__V(); this.out$1.puts__T__V((((("" + this.TH$undSTART$1) + "id") + this.TH$undSTART$1) + "value")); this.out$1.puts__T__V((((("")); this.tableEnd__V() }; outFileName__T__T(topClassName) { return (topClassName + ".dot") }; tableRow__sci_List__s_Option__Lio_kaitai_struct_format_AttrLikeSpec__T__V(curClass, pos, attr, name) { const dataType = attr.dataType__Lio_kaitai_struct_datatype_DataType(); const sizeStr = this.dataTypeSizeAsString__Lio_kaitai_struct_datatype_DataType__T__T(dataType, name); let dataTypeStr; if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x2 = dataType; this.compileSwitch__T__Lio_kaitai_struct_datatype_DataType$SwitchType__V(name, x2); dataTypeStr = (("switch (" + this.expressionType__Lio_kaitai_struct_exprlang_Ast$expr__T__T(x2.on$2, name)) + ")") } else { dataTypeStr = $m_Lio_kaitai_struct_GraphvizClassCompiler$().dataTypeName__Lio_kaitai_struct_datatype_DataType__T(dataType) }; this.out$1.puts__T__V((((((((((((((("") + ("")); if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2$2 = dataType; const jsx$2 = this.links$1; const jsx$1 = this.currentTable$1; const name$1 = x2$2.name$3; jsx$2.$$plus$eq__O__scm_ListBuffer(new $c_T3().init___O__O__O((((jsx$1 + ":") + name) + "_type"), ($f_sc_LinearSeqOptimized__last__O(name$1) + "__seq"), this.STYLE$undEDGE$undTYPE$1)) }; const portName = (name + "__repeat"); const x1$3 = attr.cond__Lio_kaitai_struct_format_ConditionalSpec().repeat$1; if ((x1$3 instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { const x2$3 = x1$3; const ex = x2$3.expr$1; this.out$1.puts__T__V((((("")) } else if ((x1$3 instanceof $c_Lio_kaitai_struct_format_RepeatUntil)) { const x3 = x1$3; const ex$2 = x3.expr$1; this.provider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$1.puts__T__V((((("")) } else { const x = $m_Lio_kaitai_struct_format_RepeatEos$(); if ((x === x1$3)) { this.out$1.puts__T__V((("")) } else { const x$3 = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((!(x$3 === x1$3))) { throw new $c_s_MatchError().init___O(x1$3) } } } }; nowClassName__sci_List() { return this.provider$1.nowClass$1.name$1 }; expression__Lio_kaitai_struct_exprlang_Ast$expr__T__T__T(e, portName, style) { const this$1 = this.affectedVars__Lio_kaitai_struct_exprlang_Ast$expr__sci_List(e); let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const v = arg1; this.links$1.$$plus$eq__O__scm_ListBuffer(new $c_T3().init___O__O__O(v, portName, style)); const this$2 = these; these = this$2.tail__sci_List() }; return $m_Lio_kaitai_struct_GraphvizClassCompiler$().htmlEscape__T__T(this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(e)) }; compileSwitch__T__Lio_kaitai_struct_datatype_DataType$SwitchType__V(attrName, st) { this.links$1.$$plus$eq__O__scm_ListBuffer(new $c_T3().init___O__O__O((((this.currentTable$1 + ":") + attrName) + "_type"), (((this.currentTable$1 + "_") + attrName) + "_switch"), this.STYLE$undEDGE$undTYPE$1)); this.extraClusterLines$1.puts__T__V((((this.currentTable$1 + "_") + attrName) + "_switch [label=<
" + name) + "") + this.expression__Lio_kaitai_struct_exprlang_Ast$expr__T__T__T(inst.value$2, this.currentTable$1, this.STYLE$undEDGE$undVALUE$1)) + "
") + (pos.isEmpty__Z() ? "..." : pos.get__O())) + "") + sizeStr) + "" + dataTypeStr)) + "") + name) + "
repeat ") + this.expression__Lio_kaitai_struct_exprlang_Ast$expr__T__T__T(ex, ((this.currentTable$1 + ":") + portName), this.STYLE$undEDGE$undREPEAT$1)) + " times
repeat until ") + this.expression__Lio_kaitai_struct_exprlang_Ast$expr__T__T__T(ex$2, ((this.currentTable$1 + ":") + portName), this.STYLE$undEDGE$undREPEAT$1)) + "
repeat to end of stream
")); this.extraClusterLines$1.inc__V(); this.extraClusterLines$1.puts__T__V((((("" + this.SWITCH$undTH$undSTART$1) + "case") + this.SWITCH$undTH$undSTART$1) + "type")); const lineNum = new $c_sr_IntRef().init___I(0); st.cases$2.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, lineNum$1, attrName$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const caseExpr = x0$1.$$und1__O(); const caseType = x0$1.$$und2__O(); if ((caseType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2 = caseType; const exprStr = $m_Lio_kaitai_struct_GraphvizClassCompiler$().htmlEscape__T__T($this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(caseExpr)); const portName = ("case" + lineNum$1.elem$1); lineNum$1.elem$1 = ((1 + lineNum$1.elem$1) | 0); $this.extraClusterLines$1.puts__T__V((((((("")); const jsx$2 = $this.links$1; const jsx$1 = $this.currentTable$1; const name = x2.name$3; return jsx$2.$$plus$eq__O__scm_ListBuffer(new $c_T3().init___O__O__O(((((jsx$1 + "_") + attrName$1) + "_switch:") + portName), ($f_sc_LinearSeqOptimized__last__O(name) + "__seq"), $this.STYLE$undEDGE$undTYPE$1)) } else { return (void 0) } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, lineNum, attrName))); this.extraClusterLines$1.dec__V(); this.extraClusterLines$1.puts__T__V("
" + exprStr) + "") + $m_Lio_kaitai_struct_GraphvizClassCompiler$().type2display__sci_List__T(x2.name$3)) + "
>];") }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass) { this.topClass$1 = topClass; this.out$1 = new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T("\t"); this.provider$1 = new $c_Lio_kaitai_struct_ClassTypeProvider().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass); this.translator$1 = new $c_Lio_kaitai_struct_translators_RubyTranslator().init___Lio_kaitai_struct_translators_TypeProvider(this.provider$1); this.links$1 = $m_scm_ListBuffer$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$()); this.extraClusterLines$1 = new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T("\t"); this.currentTable$1 = ""; this.HEADER$undBGCOLOR$1 = "#E0FFE0"; this.SWITCH$undHEADER$undBGCOLOR$1 = "#F0F2E4"; this.TH$undSTART$1 = ((""); this.SWITCH$undTH$undSTART$1 = ((""); this.STYLE$undEDGE$undTYPE$1 = "style=bold"; this.STYLE$undEDGE$undMISC$1 = "color=\"#404040\""; this.STYLE$undEDGE$undPOS$1 = this.STYLE$undEDGE$undMISC$1; this.STYLE$undEDGE$undSIZE$1 = this.STYLE$undEDGE$undMISC$1; this.STYLE$undEDGE$undREPEAT$1 = this.STYLE$undEDGE$undMISC$1; this.STYLE$undEDGE$undVALUE$1 = this.STYLE$undEDGE$undMISC$1; this.END$undOF$undSTREAM$1 = "\u21f2"; this.UNKNOWN$1 = "..."; return this }; tableStart__sci_List__T__V(className, extra) { this.currentTable$1 = (($f_sc_LinearSeqOptimized__last__O(className) + "__") + extra); this.out$1.puts__T__V((this.currentTable$1 + " [label=<")); this.out$1.inc__V(); this.out$1.puts__T__V((((((((("" + this.TH$undSTART$1) + "pos") + this.TH$undSTART$1) + "size") + this.TH$undSTART$1) + "type") + this.TH$undSTART$1) + "id")) }; expressionPos__Lio_kaitai_struct_exprlang_Ast$expr__T__T(ex, attrName) { return this.expression__Lio_kaitai_struct_exprlang_Ast$expr__T__T__T(ex, ((this.getGraphvizNode__sci_List__Lio_kaitai_struct_format_ClassSpec__T__T(this.nowClassName__sci_List(), this.provider$1.nowClass$1, attrName) + (":" + attrName)) + "_pos"), this.STYLE$undEDGE$undPOS$1) }; } const $d_Lio_kaitai_struct_GraphvizClassCompiler = new $TypeData().initClass({ Lio_kaitai_struct_GraphvizClassCompiler: 0 }, false, "io.kaitai.struct.GraphvizClassCompiler", { Lio_kaitai_struct_GraphvizClassCompiler: 1, O: 1, Lio_kaitai_struct_AbstractCompiler: 1 }); $c_Lio_kaitai_struct_GraphvizClassCompiler.prototype.$classData = $d_Lio_kaitai_struct_GraphvizClassCompiler; class $c_Lio_kaitai_struct_GraphvizClassCompiler$ extends $c_O { init___() { return this }; htmlEscape__T__T(s) { return $m_sjsr_RuntimeString$().replaceAll__T__T__T__T($m_sjsr_RuntimeString$().replaceAll__T__T__T__T($m_sjsr_RuntimeString$().replaceAll__T__T__T__T($m_sjsr_RuntimeString$().replaceAll__T__T__T__T(s, "&", "&"), "<", "<"), ">", ">"), "\"", """) }; dataTypeName__Lio_kaitai_struct_datatype_DataType__T(dataType) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x7 = dataType; return x7.apiCall__s_Option__T($m_s_None$()) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x8 = dataType; return this.type2display__sci_List__T(x8.name$3) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; const args = $m_scm_ListBuffer$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$()); if ((terminator !== 0)) { args.$$plus$eq__O__scm_ListBuffer(("term=" + terminator)) }; if (include) { args.$$plus$eq__O__scm_ListBuffer("include") }; if ((!consume)) { args.$$plus$eq__O__scm_ListBuffer("don't consume") }; if ((!eosError)) { args.$$plus$eq__O__scm_ListBuffer("ignore EOS") }; const this$1 = args.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", ", ", "") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { return "" } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType)) { const x4 = dataType; const basedOn = x4.bytes$2; const encoding = x4.encoding$2; const bytesStr = this.dataTypeName__Lio_kaitai_struct_datatype_DataType__T(basedOn); if ((bytesStr === null)) { throw new $c_jl_NullPointerException().init___() }; let comma; if ((bytesStr === "")) { comma = "" } else { comma = ", " }; return (((("str(" + bytesStr) + comma) + encoding) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x5 = dataType; const name = x5.name$1; const basedOn$2 = x5.basedOn$1; return ((this.dataTypeName__Lio_kaitai_struct_datatype_DataType__T(basedOn$2) + "\u2192") + this.type2display__sci_List__T(name)) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x6 = dataType; const width = x6.width$3; return ("b" + width) } else { return dataType.toString__T() } }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; seqPosToStr__s_Option__s_Option(seqPos) { if (seqPos.isEmpty__Z()) { return $m_s_None$() } else { const arg1 = seqPos.get__O(); const pos = (arg1 | 0); const posByte = ((pos / 8) | 0); const posBit = ((pos % 8) | 0); return new $c_s_Some().init___O(((posBit === 0) ? ("" + posByte) : ((posByte + ":") + posBit))) } }; type2display__sci_List__T(name) { const f = (function($this) { return (function(s$2) { const s = s$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(s) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((name === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = name.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = name.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(name, bf); let these = name; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T("::") }; } const $d_Lio_kaitai_struct_GraphvizClassCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_GraphvizClassCompiler$: 0 }, false, "io.kaitai.struct.GraphvizClassCompiler$", { Lio_kaitai_struct_GraphvizClassCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1 }); $c_Lio_kaitai_struct_GraphvizClassCompiler$.prototype.$classData = $d_Lio_kaitai_struct_GraphvizClassCompiler$; let $n_Lio_kaitai_struct_GraphvizClassCompiler$ = (void 0); const $m_Lio_kaitai_struct_GraphvizClassCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_GraphvizClassCompiler$)) { $n_Lio_kaitai_struct_GraphvizClassCompiler$ = new $c_Lio_kaitai_struct_GraphvizClassCompiler$().init___() }; return $n_Lio_kaitai_struct_GraphvizClassCompiler$ }); class $c_Lio_kaitai_struct_HtmlClassCompiler$ extends $c_O { init___() { return this }; kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attrType) { if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2 = attrType; const jsx$1 = this.classSpec2Anchor__Lio_kaitai_struct_format_ClassSpec__T(x2.classSpec$3.get__O()); const this$1 = x2.name$3; const name = $f_sc_LinearSeqOptimized__last__O(this$1); return (((("") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + "") } else { return $m_Lio_kaitai_struct_GraphvizClassCompiler$().dataTypeName__Lio_kaitai_struct_datatype_DataType__T(attrType) } }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; enumSpec2Anchor__Lio_kaitai_struct_format_EnumSpec__T(spec) { const this$1 = spec.name$1; return ("enum-" + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "-", "")) }; classSpec2Anchor__Lio_kaitai_struct_format_ClassSpec__T(spec) { const this$1 = spec.name$1; return ("type-" + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "-", "")) }; } const $d_Lio_kaitai_struct_HtmlClassCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_HtmlClassCompiler$: 0 }, false, "io.kaitai.struct.HtmlClassCompiler$", { Lio_kaitai_struct_HtmlClassCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1 }); $c_Lio_kaitai_struct_HtmlClassCompiler$.prototype.$classData = $d_Lio_kaitai_struct_HtmlClassCompiler$; let $n_Lio_kaitai_struct_HtmlClassCompiler$ = (void 0); const $m_Lio_kaitai_struct_HtmlClassCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_HtmlClassCompiler$)) { $n_Lio_kaitai_struct_HtmlClassCompiler$ = new $c_Lio_kaitai_struct_HtmlClassCompiler$().init___() }; return $n_Lio_kaitai_struct_HtmlClassCompiler$ }); class $c_Lio_kaitai_struct_StringLanguageOutputWriter extends $c_Lio_kaitai_struct_LanguageOutputWriter { constructor() { super(); this.sb$2 = null }; init___T(indentStr) { $c_Lio_kaitai_struct_LanguageOutputWriter.prototype.init___T.call(this, indentStr); this.sb$2 = new $c_scm_StringBuilder().init___(); return this }; puts__T__V(s) { this.sb$2.append__T__scm_StringBuilder(this.indentNow__T()); this.sb$2.append__T__scm_StringBuilder(s); this.sb$2.append__T__scm_StringBuilder("\n") }; } const $d_Lio_kaitai_struct_StringLanguageOutputWriter = new $TypeData().initClass({ Lio_kaitai_struct_StringLanguageOutputWriter: 0 }, false, "io.kaitai.struct.StringLanguageOutputWriter", { Lio_kaitai_struct_StringLanguageOutputWriter: 1, Lio_kaitai_struct_LanguageOutputWriter: 1, O: 1 }); $c_Lio_kaitai_struct_StringLanguageOutputWriter.prototype.$classData = $d_Lio_kaitai_struct_StringLanguageOutputWriter; class $c_Lio_kaitai_struct_datatype_DataType$BooleanType extends $c_O { asNonOwning__Lio_kaitai_struct_datatype_DataType() { return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$BooleanType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$BooleanType))) }); const $d_Lio_kaitai_struct_datatype_DataType$BooleanType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$BooleanType: 0 }, false, "io.kaitai.struct.datatype.DataType$BooleanType", { Lio_kaitai_struct_datatype_DataType$BooleanType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1 }); $c_Lio_kaitai_struct_datatype_DataType$BooleanType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$BooleanType; class $c_Lio_kaitai_struct_datatype_DataType$ComplexDataType extends $c_O { asNonOwning__Lio_kaitai_struct_datatype_DataType() { return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$ComplexDataType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$ComplexDataType))) }); class $c_Lio_kaitai_struct_datatype_DataType$NumericType extends $c_O { asNonOwning__Lio_kaitai_struct_datatype_DataType() { return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$NumericType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$NumericType))) }); class $c_Lio_kaitai_struct_datatype_DataType$StrType extends $c_O { asNonOwning__Lio_kaitai_struct_datatype_DataType() { return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$StrType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$StrType))) }); class $c_Lio_kaitai_struct_datatype_FixedEndian extends $c_O { } const $isArrayOf_Lio_kaitai_struct_datatype_FixedEndian = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_FixedEndian))) }); class $c_Lio_kaitai_struct_datatype_ValidationError extends $c_O { constructor() { super(); this.dt$1 = null }; init___Lio_kaitai_struct_datatype_DataType(dt) { this.dt$1 = dt; return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_ValidationError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_ValidationError))) }); class $c_Lio_kaitai_struct_exprlang_WsApi$ extends $c_Lfastparse_WhitespaceApi$Wrapper { init___() { $c_Lfastparse_WhitespaceApi$Wrapper.prototype.init___Lfastparse_core_Parser.call(this, $m_Lio_kaitai_struct_exprlang_Lexical$().wscomment$1); return this }; } const $d_Lio_kaitai_struct_exprlang_WsApi$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_WsApi$: 0 }, false, "io.kaitai.struct.exprlang.WsApi$", { Lio_kaitai_struct_exprlang_WsApi$: 1, Lfastparse_WhitespaceApi$Wrapper: 1, O: 1 }); $c_Lio_kaitai_struct_exprlang_WsApi$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_WsApi$; let $n_Lio_kaitai_struct_exprlang_WsApi$ = (void 0); const $m_Lio_kaitai_struct_exprlang_WsApi$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_WsApi$)) { $n_Lio_kaitai_struct_exprlang_WsApi$ = new $c_Lio_kaitai_struct_exprlang_WsApi$().init___() }; return $n_Lio_kaitai_struct_exprlang_WsApi$ }); const $f_Lio_kaitai_struct_format_AttrLikeSpec__isNullable__Z = (function($thiz) { if ($thiz.cond__Lio_kaitai_struct_format_ConditionalSpec().ifExpr$1.isDefined__Z()) { return true } else if ((!$f_Lio_kaitai_struct_format_AttrLikeSpec__isArray__Z($thiz))) { const x1 = $thiz.dataType__Lio_kaitai_struct_datatype_DataType(); if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x2 = x1; return x2.isNullable__Z() } else { return false } } else { return false } }); const $f_Lio_kaitai_struct_format_AttrLikeSpec__isNullableSwitchRaw__Z = (function($thiz) { if ($thiz.cond__Lio_kaitai_struct_format_ConditionalSpec().ifExpr$1.isDefined__Z()) { return true } else if ((!$f_Lio_kaitai_struct_format_AttrLikeSpec__isArray__Z($thiz))) { const x1 = $thiz.dataType__Lio_kaitai_struct_datatype_DataType(); if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x2 = x1; return x2.isNullableSwitchRaw__Z() } else { return false } } else { return false } }); const $f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType = (function($thiz) { return ($f_Lio_kaitai_struct_format_AttrLikeSpec__isArray__Z($thiz) ? new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType($thiz.dataType__Lio_kaitai_struct_datatype_DataType()) : $thiz.dataType__Lio_kaitai_struct_datatype_DataType()) }); const $f_Lio_kaitai_struct_format_AttrLikeSpec__isArray__Z = (function($thiz) { const x = $thiz.cond__Lio_kaitai_struct_format_ConditionalSpec().repeat$1; const x$2 = $m_Lio_kaitai_struct_format_NoRepeat$(); return (!((x !== null) && x.equals__O__Z(x$2))) }); const $is_Lio_kaitai_struct_format_AttrLikeSpec = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_format_AttrLikeSpec))) }); const $isArrayOf_Lio_kaitai_struct_format_AttrLikeSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_AttrLikeSpec))) }); class $c_Lio_kaitai_struct_precompile_StyleCheckIds extends $c_O { constructor() { super(); this.specs$1 = null; this.provider$1 = null }; getSizeRefProblems__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(spec) { const this$3 = spec.seq$1; const f = (function($this, spec$1) { return (function(attr$2) { const attr = attr$2; const xo = $this.getSizeRefProblem__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_MemberSpec__s_Option(spec$1, attr); return xo.toList__sci_List() }) })(this, spec); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$2; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$2 = $m_sci_Nil$() } else { let rest = this$3; const found = new $c_sr_BooleanRef().init___Z(false); const h = new $c_sr_ObjectRef().init___O(null); const t = new $c_sr_ObjectRef().init___O(null); while ((rest !== $m_sci_Nil$())) { const arg1 = rest.head__O(); f(arg1).seq__sc_TraversableOnce().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$1, found$1, h$1, t$1) { return (function(b$2) { if ((!found$1.elem$1)) { h$1.elem$1 = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$()); t$1.elem$1 = h$1.elem$1; found$1.elem$1 = true } else { const nx = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$()); t$1.elem$1.tl$5 = nx; t$1.elem$1 = nx } }) })(this$3, found, h, t))); const this$7 = rest; rest = this$7.tail__sci_List() }; jsx$2 = ((!found.elem$1) ? $m_sci_Nil$() : h.elem$1) } } else { $m_sci_List$(); const b = new $c_scm_ListBuffer().init___(); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const xs = f(arg1$1).seq__sc_TraversableOnce(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs); const this$9 = these; these = this$9.tail__sci_List() }; jsx$2 = b.toList__sci_List() }; const this$12 = spec.instances$1; const f$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, spec$2) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instance = x0$1.$$und2__O(); const xo$1 = this$2$1.getSizeRefProblem__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_MemberSpec__s_Option(spec$2, instance); return xo$1.toList__sci_List() } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, spec)); const this$11 = $m_sci_Iterable$(); const bf$1 = this$11.ReusableCBFInstance$2; const jsx$1 = $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this$12, f$1, bf$1); const this$13 = $m_sci_List$(); return jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$13.ReusableCBFInstance$2) }; getSizeRefProblem__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_MemberSpec__s_Option(spec, attr) { const this$1 = this.getSizeReference__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__s_Option(spec, attr.dataType__Lio_kaitai_struct_datatype_DataType()); if (this$1.isEmpty__Z()) { return $m_s_None$() } else { const arg1 = this$1.get__O(); const sizeRefAttr = arg1; const existingName = sizeRefAttr.id__Lio_kaitai_struct_format_Identifier().humanReadable__T(); const goodName = ("len_" + attr.id__Lio_kaitai_struct_format_Identifier().humanReadable__T()); if ((existingName !== goodName)) { const jsx$3 = attr.id__Lio_kaitai_struct_format_Identifier().humanReadable__T(); const jsx$2 = sizeRefAttr.path__sci_List(); $m_sci_List$(); const array = ["id"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$5 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$5); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$6 = $m_sci_List$(); const x$1 = new $c_s_Some().init___O(jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$6.ReusableCBFInstance$2)); const x$2 = $m_s_None$(); const x$3 = $m_s_None$(); const x$4 = $m_s_None$(); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_StyleWarningSizeLen().init___T__T__T__Lio_kaitai_struct_problems_ProblemCoords(goodName, existingName, jsx$3, new $c_Lio_kaitai_struct_problems_ProblemCoords().init___s_Option__s_Option__s_Option__s_Option(x$2, x$1, x$3, x$4))) } else { return $m_s_None$() } } }; getRepeatExprRefProblem__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_AttrLikeSpec__s_Option(spec, attr) { const this$1 = this.getRepeatExprReference__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_AttrLikeSpec__s_Option(spec, attr); if (this$1.isEmpty__Z()) { return $m_s_None$() } else { const arg1 = this$1.get__O(); const repeatExprRefAttr = arg1; const existingName = repeatExprRefAttr.id__Lio_kaitai_struct_format_Identifier().humanReadable__T(); const goodName = ("num_" + attr.id__Lio_kaitai_struct_format_Identifier().humanReadable__T()); if ((existingName !== goodName)) { const jsx$3 = attr.id__Lio_kaitai_struct_format_Identifier().humanReadable__T(); const jsx$2 = repeatExprRefAttr.path__sci_List(); $m_sci_List$(); const array = ["id"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$5 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$5); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$6 = $m_sci_List$(); const x$1 = new $c_s_Some().init___O(jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$6.ReusableCBFInstance$2)); const x$2 = $m_s_None$(); const x$3 = $m_s_None$(); const x$4 = $m_s_None$(); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_StyleWarningRepeatExprNum().init___T__T__T__Lio_kaitai_struct_problems_ProblemCoords(goodName, existingName, jsx$3, new $c_Lio_kaitai_struct_problems_ProblemCoords().init___s_Option__s_Option__s_Option__s_Option(x$2, x$1, x$3, x$4))) } else { return $m_s_None$() } } }; processType__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(spec) { this.provider$1.nowClass$1 = spec; const sizeRefProblems = this.getSizeRefProblems__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(spec); const repeatExprRefProblems = this.getRepeatExprRefProblems__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(spec); const this$1 = $m_sc_Iterable$(); return sizeRefProblems.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(repeatExprRefProblems, this$1.ReusableCBFInstance$2) }; getDirectAttrReference__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_exprlang_Ast$expr__s_Option(spec, expr) { try { if ((expr instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Name)) { const x2 = expr; const attrId = x2.id$1; return new $c_s_Some().init___O(this.provider$1.resolveMember__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_format_MemberSpec(spec, attrId.name$1)) } else { return $m_s_None$() } } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { if (((e$2 instanceof $c_Lio_kaitai_struct_format_InvalidIdentifier) || (e$2 instanceof $c_Lio_kaitai_struct_precompile_FieldNotFoundError))) { return $m_s_None$() } else { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(e$2) } } else { throw e } } }; run__sc_Iterable() { return this.specs$1.mapRec__F1__sc_Iterable(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(spec$2) { const spec = spec$2; return $this.processType__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(spec) }) })(this))) }; getRepeatExprRefProblems__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(spec) { const this$3 = spec.seq$1; const f = (function($this, spec$1) { return (function(attr$2) { const attr = attr$2; const xo = $this.getRepeatExprRefProblem__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_AttrLikeSpec__s_Option(spec$1, attr); return xo.toList__sci_List() }) })(this, spec); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$2; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$2 = $m_sci_Nil$() } else { let rest = this$3; const found = new $c_sr_BooleanRef().init___Z(false); const h = new $c_sr_ObjectRef().init___O(null); const t = new $c_sr_ObjectRef().init___O(null); while ((rest !== $m_sci_Nil$())) { const arg1 = rest.head__O(); f(arg1).seq__sc_TraversableOnce().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$1, found$1, h$1, t$1) { return (function(b$2) { if ((!found$1.elem$1)) { h$1.elem$1 = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$()); t$1.elem$1 = h$1.elem$1; found$1.elem$1 = true } else { const nx = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$()); t$1.elem$1.tl$5 = nx; t$1.elem$1 = nx } }) })(this$3, found, h, t))); const this$7 = rest; rest = this$7.tail__sci_List() }; jsx$2 = ((!found.elem$1) ? $m_sci_Nil$() : h.elem$1) } } else { $m_sci_List$(); const b = new $c_scm_ListBuffer().init___(); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const xs = f(arg1$1).seq__sc_TraversableOnce(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs); const this$9 = these; these = this$9.tail__sci_List() }; jsx$2 = b.toList__sci_List() }; const this$13 = spec.instances$1; const f$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, spec$2) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instance = x0$1.$$und2__O(); if ((instance instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = instance; const xo$1 = this$2$1.getRepeatExprRefProblem__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_AttrLikeSpec__s_Option(spec$2, x2); return xo$1.toList__sci_List() } else if ((instance instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) { const xo$2 = $m_s_None$(); return xo$2.toList__sci_List() } else { throw new $c_s_MatchError().init___O(instance) } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, spec)); const this$12 = $m_sci_Iterable$(); const bf$1 = this$12.ReusableCBFInstance$2; const jsx$1 = $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this$13, f$1, bf$1); const this$14 = $m_sci_List$(); return jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$14.ReusableCBFInstance$2) }; getSizeReference__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__s_Option(spec, dataType) { if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x2 = dataType; return this.getDirectAttrReference__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_exprlang_Ast$expr__s_Option(spec, x2.size$2) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { const x3 = dataType; return this.getSizeReference__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__s_Option(spec, x3.bytes$4) } else { return $m_s_None$() } }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(specs, topClass) { this.specs$1 = specs; this.provider$1 = new $c_Lio_kaitai_struct_ClassTypeProvider().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(specs, topClass); return this }; getRepeatExprReference__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_AttrLikeSpec__s_Option(spec, attr) { const x1 = attr.cond__Lio_kaitai_struct_format_ConditionalSpec().repeat$1; if ((x1 instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { const x2 = x1; const expr = x2.expr$1; return this.getDirectAttrReference__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_exprlang_Ast$expr__s_Option(spec, expr) } else { return $m_s_None$() } }; } const $d_Lio_kaitai_struct_precompile_StyleCheckIds = new $TypeData().initClass({ Lio_kaitai_struct_precompile_StyleCheckIds: 0 }, false, "io.kaitai.struct.precompile.StyleCheckIds", { Lio_kaitai_struct_precompile_StyleCheckIds: 1, O: 1, Lio_kaitai_struct_precompile_PrecompileStep: 1 }); $c_Lio_kaitai_struct_precompile_StyleCheckIds.prototype.$classData = $d_Lio_kaitai_struct_precompile_StyleCheckIds; class $c_Lio_kaitai_struct_precompile_TypeValidator extends $c_O { constructor() { super(); this.specs$1 = null; this.provider$1 = null; this.detector$1 = null }; checkAssertObject__Lio_kaitai_struct_exprlang_Ast$expr__O__T__sci_List__T__s_Option(expr, expected, expectStr, path, pathKey) { try { const detected = this.detector$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(expr); if ((!((detected === null) ? (expected === null) : detected.equals__O__Z(expected)))) { if ((detected instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x2 = detected; const combinedType = x2.combinedType__Lio_kaitai_struct_datatype_DataType(); if ((!((combinedType === null) ? (expected === null) : combinedType.equals__O__Z(expected)))) { $m_sci_List$(); const array = [pathKey]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option(expectStr, combinedType, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2), $m_s_None$())) } } else { $m_sci_List$(); const array$1 = [pathKey]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$10 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$10); i$1 = (((-1) + i$1) | 0) }; const jsx$2 = result$1; const this$11 = $m_sci_List$(); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option(expectStr, detected, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$11.ReusableCBFInstance$2), $m_s_None$())) } }; this.detector$1.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(expr); return $m_s_None$() } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_format_InvalidIdentifier)) { const err$2 = e; $m_sci_List$(); const array$2 = [pathKey]; let i$2 = (((-1) + (array$2.length | 0)) | 0); let result$2 = $m_sci_Nil$(); while ((i$2 >= 0)) { const this$16 = result$2; const index$2 = i$2; const x$2 = array$2[index$2]; result$2 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$16); i$2 = (((-1) + i$2) | 0) }; const jsx$3 = result$2; const this$17 = $m_sci_List$(); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err$2, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$3, this$17.ReusableCBFInstance$2), $m_s_None$())) } else if ((e instanceof $c_Lio_kaitai_struct_precompile_ExpressionError)) { const err = e; $m_sci_List$(); const array$3 = [pathKey]; let i$3 = (((-1) + (array$3.length | 0)) | 0); let result$3 = $m_sci_Nil$(); while ((i$3 >= 0)) { const this$22 = result$3; const index$3 = i$3; const x$3 = array$3[index$3]; result$3 = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$22); i$3 = (((-1) + i$3) | 0) }; const jsx$4 = result$3; const this$23 = $m_sci_List$(); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$4, this$23.ReusableCBFInstance$2), $m_s_None$())) } else { throw e } } }; validateArgsVsParams__sc_Seq__sci_List__sci_List__sc_Iterable(args, params, path) { if ((args.size__I() !== $f_sc_LinearSeqOptimized__length__I(params))) { const xo = new $c_s_Some().init___O($m_Lio_kaitai_struct_problems_KSYParseError$().invalidParamCount__I__I__sci_List__Lio_kaitai_struct_problems_CompilationProblemException($f_sc_LinearSeqOptimized__length__I(params), args.size__I(), path).problem$4); return xo.toList__sci_List() }; const this$3 = args.indices__sci_Range(); $m_sci_IndexedSeq$(); $m_sc_IndexedSeq$(); $m_sci_IndexedSeq$(); $m_sci_Vector$(); const b = new $c_sci_VectorBuilder().init___(); if ((!this$3.isEmpty$4)) { let i = this$3.start$4; while (true) { const arg1 = i; const arg = args.apply__I__O(arg1); const param = $f_sc_LinearSeqOptimized__apply__I__O(params, arg1); const tArg = this.detector$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(arg); this.detector$1.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(arg); const tParam = param.dataType$1; let this$9; if ((!$m_Lio_kaitai_struct_translators_TypeDetector$().canAssign__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Z(tArg, tParam))) { const xo$1 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ParamMismatchError().init___I__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option(arg1, tArg, param.id$1.humanReadable__T(), tParam, path, $m_s_None$())); this$9 = xo$1.toList__sci_List() } else { const xo$2 = $m_s_None$(); this$9 = xo$2.toList__sci_List() }; $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(b, this$9); if ((i === this$3.scala$collection$immutable$Range$$lastElement$4)) { break }; i = ((i + this$3.step$4) | 0) } }; return b.result__sci_Vector() }; validateValueInstance__Lio_kaitai_struct_format_ValueInstanceSpec__s_Option(vis) { try { this.detector$1.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(vis.value$2); return $m_s_None$() } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_precompile_ExpressionError)) { const err = e; const jsx$2 = vis.path$2; $m_sci_List$(); const array = ["value"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err, jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2), $m_s_None$())) } else { throw e } } }; validateParseInstance__Lio_kaitai_struct_format_ParseInstanceSpec__sc_Iterable(pis) { const problemsAttr = this.validateAttr__Lio_kaitai_struct_format_AttrLikeSpec__sc_Iterable(pis); $m_Lio_kaitai_struct_Log$(); const x1 = pis.io$2; let problemsIo; if ((x1 instanceof $c_s_Some)) { const x2 = x1; const io = x2.value$2; const xo = this.checkAssertObject__Lio_kaitai_struct_exprlang_Ast$expr__O__T__sci_List__T__s_Option(io, $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(), "IO stream", pis.path$2, "io"); problemsIo = xo.toList__sci_List() } else { const x = $m_s_None$(); if ((!(x === x1))) { throw new $c_s_MatchError().init___O(x1) }; const xo$1 = $m_s_None$(); problemsIo = xo$1.toList__sci_List() }; const x1$2 = pis.pos$2; let problemsPos; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const pos = x2$2.value$2; const path = pis.path$2; let xo$2; inlinereturn$16: { try { const x1$1 = this.detector$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(pos); matchEnd7: { const o10 = (((x1$1 !== null) && ((((((((($d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isInstance__O__Z(x1$1) || ($isByte(x1$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_B.getClassOf()))) || ($isShort(x1$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_S.getClassOf()))) || ((x1$1 instanceof $c_jl_Character) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_C.getClassOf()))) || ($isInt(x1$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_I.getClassOf()))) || ((x1$1 instanceof $c_sjsr_RuntimeLong) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_J.getClassOf()))) || ($isFloat(x1$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_F.getClassOf()))) || (((typeof x1$1) === "number") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_D.getClassOf()))) || (((typeof x1$1) === "boolean") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_Z.getClassOf()))) || ((x1$1 === (void 0)) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_V.getClassOf())))) ? new $c_s_Some().init___O(x1$1) : $m_s_None$()); if (((!o10.isEmpty__Z()) && (o10.get__O() !== null))) { break matchEnd7 }; if ((x1$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x5 = x1$1; const x1$2$1 = x5.combinedType__Lio_kaitai_struct_datatype_DataType(); matchEnd6: { const o9 = (((x1$2$1 !== null) && ((((((((($d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isInstance__O__Z(x1$2$1) || ($isByte(x1$2$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_B.getClassOf()))) || ($isShort(x1$2$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_S.getClassOf()))) || ((x1$2$1 instanceof $c_jl_Character) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_C.getClassOf()))) || ($isInt(x1$2$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_I.getClassOf()))) || ((x1$2$1 instanceof $c_sjsr_RuntimeLong) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_J.getClassOf()))) || ($isFloat(x1$2$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_F.getClassOf()))) || (((typeof x1$2$1) === "number") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_D.getClassOf()))) || (((typeof x1$2$1) === "boolean") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_Z.getClassOf()))) || ((x1$2$1 === (void 0)) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_V.getClassOf())))) ? new $c_s_Some().init___O(x1$2$1) : $m_s_None$()); if (((!o9.isEmpty__Z()) && (o9.get__O() !== null))) { break matchEnd6 }; $m_sci_List$(); const array = ["pos"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$7 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$7); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$8 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option("integer", x1$2$1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$8.ReusableCBFInstance$2), $m_s_None$())); break inlinereturn$16 }; break matchEnd7 }; $m_sci_List$(); const array$1 = ["pos"]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$13 = result$1; const index$1 = i$1; const x$3 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$13); i$1 = (((-1) + i$1) | 0) }; const jsx$2 = result$1; const this$14 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option("integer", x1$1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$14.ReusableCBFInstance$2), $m_s_None$())); break inlinereturn$16 }; this.detector$1.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(pos); xo$2 = $m_s_None$() } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_format_InvalidIdentifier)) { const err$2 = e; $m_sci_List$(); const array$2 = ["pos"]; let i$2 = (((-1) + (array$2.length | 0)) | 0); let result$2 = $m_sci_Nil$(); while ((i$2 >= 0)) { const this$19 = result$2; const index$2 = i$2; const x$4 = array$2[index$2]; result$2 = new $c_sci_$colon$colon().init___O__sci_List(x$4, this$19); i$2 = (((-1) + i$2) | 0) }; const jsx$3 = result$2; const this$20 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err$2, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$3, this$20.ReusableCBFInstance$2), $m_s_None$())) } else if ((e instanceof $c_Lio_kaitai_struct_precompile_ExpressionError)) { const err = e; $m_sci_List$(); const array$3 = ["pos"]; let i$3 = (((-1) + (array$3.length | 0)) | 0); let result$3 = $m_sci_Nil$(); while ((i$3 >= 0)) { const this$25 = result$3; const index$3 = i$3; const x$5 = array$3[index$3]; result$3 = new $c_sci_$colon$colon().init___O__sci_List(x$5, this$25); i$3 = (((-1) + i$3) | 0) }; const jsx$4 = result$3; const this$26 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$4, this$26.ReusableCBFInstance$2), $m_s_None$())) } else { throw e } } }; problemsPos = xo$2.toList__sci_List() } else { const x$3$1 = $m_s_None$(); if ((!(x$3$1 === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; const xo$3 = $m_s_None$(); problemsPos = xo$3.toList__sci_List() }; $m_sci_List$(); const array$4 = [problemsAttr, problemsIo, problemsPos]; let i$4 = (((-1) + (array$4.length | 0)) | 0); let result$4 = $m_sci_Nil$(); while ((i$4 >= 0)) { const this$33 = result$4; const index$4 = i$4; const x$6 = array$4[index$4]; result$4 = new $c_sci_$colon$colon().init___O__sci_List(x$6, this$33); i$4 = (((-1) + i$4) | 0) }; const this$34 = result$4; $m_sci_List$(); const b = new $c_scm_ListBuffer().init___(); let these = this$34; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const xs = arg1.seq__sc_TraversableOnce(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs); const this$36 = these; these = this$36.tail__sci_List() }; return b.toList__sci_List() }; validateSwitchType__Lio_kaitai_struct_datatype_DataType$SwitchType__sci_List__sc_Iterable(st, path) { const onType = this.detector$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(st.on$2); this.detector$1.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(st.on$2); const this$10 = st.cases$2; const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, path$1, onType$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const caseExpr = x0$1.$$und1__O(); const caseType = x0$1.$$und2__O(); $m_sci_List$(); const array = ["type", "cases", caseExpr.toString__T()]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); const casePath = path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2); const x$2 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; let problems1; if ((!((caseExpr === null) ? (x$2 === null) : caseExpr.equals__O__Z(x$2)))) { try { $m_Lio_kaitai_struct_translators_TypeDetector$().assertCompareTypes__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$cmpop__V(onType$1, $this.detector$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(caseExpr), $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$()); $this.detector$1.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(caseExpr); problems1 = $m_s_None$() } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { problems1 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(e$2, casePath, $m_s_None$())) } else { throw e } } } else { problems1 = $m_s_None$() }; const problems2 = $this.validateDataType__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable(caseType, casePath); const jsx$2 = problems1.toList__sci_List(); const this$8 = $m_sc_Iterable$(); return jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(problems2, this$8.ReusableCBFInstance$2) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path, onType)); const this$9 = $m_sci_Iterable$(); const bf = this$9.ReusableCBFInstance$2; return $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this$10, f, bf) }; validateAttr__Lio_kaitai_struct_format_AttrLikeSpec__sc_Iterable(attr) { $m_Lio_kaitai_struct_Log$(); const path = attr.path__sci_List(); const this$1 = attr.cond__Lio_kaitai_struct_format_ConditionalSpec().ifExpr$1; let xo; if (this$1.isEmpty__Z()) { xo = $m_s_None$() } else { const arg1 = this$1.get__O(); const ifExpr = arg1; inlinereturn$17: { try { const x1 = this.detector$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(ifExpr); matchEnd7: { const o10 = (((x1 !== null) && ((((((((($d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isInstance__O__Z(x1) || ($isByte(x1) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_B.getClassOf()))) || ($isShort(x1) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_S.getClassOf()))) || ((x1 instanceof $c_jl_Character) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_C.getClassOf()))) || ($isInt(x1) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_I.getClassOf()))) || ((x1 instanceof $c_sjsr_RuntimeLong) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_J.getClassOf()))) || ($isFloat(x1) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_F.getClassOf()))) || (((typeof x1) === "number") && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_D.getClassOf()))) || (((typeof x1) === "boolean") && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_Z.getClassOf()))) || ((x1 === (void 0)) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_V.getClassOf())))) ? new $c_s_Some().init___O(x1) : $m_s_None$()); if (((!o10.isEmpty__Z()) && (o10.get__O() !== null))) { break matchEnd7 }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x5 = x1; const x1$2 = x5.combinedType__Lio_kaitai_struct_datatype_DataType(); matchEnd6: { const o9 = (((x1$2 !== null) && ((((((((($d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isInstance__O__Z(x1$2) || ($isByte(x1$2) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_B.getClassOf()))) || ($isShort(x1$2) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_S.getClassOf()))) || ((x1$2 instanceof $c_jl_Character) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_C.getClassOf()))) || ($isInt(x1$2) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_I.getClassOf()))) || ((x1$2 instanceof $c_sjsr_RuntimeLong) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_J.getClassOf()))) || ($isFloat(x1$2) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_F.getClassOf()))) || (((typeof x1$2) === "number") && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_D.getClassOf()))) || (((typeof x1$2) === "boolean") && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_Z.getClassOf()))) || ((x1$2 === (void 0)) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_V.getClassOf())))) ? new $c_s_Some().init___O(x1$2) : $m_s_None$()); if (((!o9.isEmpty__Z()) && (o9.get__O() !== null))) { break matchEnd6 }; $m_sci_List$(); const array = ["if"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$6 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$6); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$7 = $m_sci_List$(); xo = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option("boolean", x1$2, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$7.ReusableCBFInstance$2), $m_s_None$())); break inlinereturn$17 }; break matchEnd7 }; $m_sci_List$(); const array$1 = ["if"]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$12 = result$1; const index$1 = i$1; const x$2 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$12); i$1 = (((-1) + i$1) | 0) }; const jsx$2 = result$1; const this$13 = $m_sci_List$(); xo = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option("boolean", x1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$13.ReusableCBFInstance$2), $m_s_None$())); break inlinereturn$17 }; this.detector$1.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(ifExpr); xo = $m_s_None$() } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_format_InvalidIdentifier)) { const err$2 = e; $m_sci_List$(); const array$2 = ["if"]; let i$2 = (((-1) + (array$2.length | 0)) | 0); let result$2 = $m_sci_Nil$(); while ((i$2 >= 0)) { const this$18 = result$2; const index$2 = i$2; const x$3 = array$2[index$2]; result$2 = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$18); i$2 = (((-1) + i$2) | 0) }; const jsx$3 = result$2; const this$19 = $m_sci_List$(); xo = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err$2, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$3, this$19.ReusableCBFInstance$2), $m_s_None$())) } else if ((e instanceof $c_Lio_kaitai_struct_precompile_ExpressionError)) { const err = e; $m_sci_List$(); const array$3 = ["if"]; let i$3 = (((-1) + (array$3.length | 0)) | 0); let result$3 = $m_sci_Nil$(); while ((i$3 >= 0)) { const this$24 = result$3; const index$3 = i$3; const x$4 = array$3[index$3]; result$3 = new $c_sci_$colon$colon().init___O__sci_List(x$4, this$24); i$3 = (((-1) + i$3) | 0) }; const jsx$4 = result$3; const this$25 = $m_sci_List$(); xo = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$4, this$25.ReusableCBFInstance$2), $m_s_None$())) } else { throw e } } } }; const problemsIf = xo.toList__sci_List(); this.provider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(attr.dataType__Lio_kaitai_struct_datatype_DataType()); const x1$1 = attr.cond__Lio_kaitai_struct_format_ConditionalSpec().repeat$1; let problemsRepeat; if ((x1$1 instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { const x2 = x1$1; const expr = x2.expr$1; let xo$1; inlinereturn$76: { try { const x1$3 = this.detector$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(expr); matchEnd7$1: { const o10$1 = (((x1$3 !== null) && ((((((((($d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isInstance__O__Z(x1$3) || ($isByte(x1$3) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_B.getClassOf()))) || ($isShort(x1$3) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_S.getClassOf()))) || ((x1$3 instanceof $c_jl_Character) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_C.getClassOf()))) || ($isInt(x1$3) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_I.getClassOf()))) || ((x1$3 instanceof $c_sjsr_RuntimeLong) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_J.getClassOf()))) || ($isFloat(x1$3) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_F.getClassOf()))) || (((typeof x1$3) === "number") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_D.getClassOf()))) || (((typeof x1$3) === "boolean") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_Z.getClassOf()))) || ((x1$3 === (void 0)) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_V.getClassOf())))) ? new $c_s_Some().init___O(x1$3) : $m_s_None$()); if (((!o10$1.isEmpty__Z()) && (o10$1.get__O() !== null))) { break matchEnd7$1 }; if ((x1$3 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x5$1 = x1$3; const x1$2$1 = x5$1.combinedType__Lio_kaitai_struct_datatype_DataType(); matchEnd6$1: { const o9$1 = (((x1$2$1 !== null) && ((((((((($d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isInstance__O__Z(x1$2$1) || ($isByte(x1$2$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_B.getClassOf()))) || ($isShort(x1$2$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_S.getClassOf()))) || ((x1$2$1 instanceof $c_jl_Character) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_C.getClassOf()))) || ($isInt(x1$2$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_I.getClassOf()))) || ((x1$2$1 instanceof $c_sjsr_RuntimeLong) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_J.getClassOf()))) || ($isFloat(x1$2$1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_F.getClassOf()))) || (((typeof x1$2$1) === "number") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_D.getClassOf()))) || (((typeof x1$2$1) === "boolean") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_Z.getClassOf()))) || ((x1$2$1 === (void 0)) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_V.getClassOf())))) ? new $c_s_Some().init___O(x1$2$1) : $m_s_None$()); if (((!o9$1.isEmpty__Z()) && (o9$1.get__O() !== null))) { break matchEnd6$1 }; $m_sci_List$(); const array$4 = ["repeat-expr"]; let i$4 = (((-1) + (array$4.length | 0)) | 0); let result$4 = $m_sci_Nil$(); while ((i$4 >= 0)) { const this$32 = result$4; const index$4 = i$4; const x$5 = array$4[index$4]; result$4 = new $c_sci_$colon$colon().init___O__sci_List(x$5, this$32); i$4 = (((-1) + i$4) | 0) }; const jsx$5 = result$4; const this$33 = $m_sci_List$(); xo$1 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option("integer", x1$2$1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$5, this$33.ReusableCBFInstance$2), $m_s_None$())); break inlinereturn$76 }; break matchEnd7$1 }; $m_sci_List$(); const array$5 = ["repeat-expr"]; let i$5 = (((-1) + (array$5.length | 0)) | 0); let result$5 = $m_sci_Nil$(); while ((i$5 >= 0)) { const this$38 = result$5; const index$5 = i$5; const x$7 = array$5[index$5]; result$5 = new $c_sci_$colon$colon().init___O__sci_List(x$7, this$38); i$5 = (((-1) + i$5) | 0) }; const jsx$6 = result$5; const this$39 = $m_sci_List$(); xo$1 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option("integer", x1$3, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$6, this$39.ReusableCBFInstance$2), $m_s_None$())); break inlinereturn$76 }; this.detector$1.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(expr); xo$1 = $m_s_None$() } catch (e$1) { if ((e$1 instanceof $c_Lio_kaitai_struct_format_InvalidIdentifier)) { const err$2$1 = e$1; $m_sci_List$(); const array$6 = ["repeat-expr"]; let i$6 = (((-1) + (array$6.length | 0)) | 0); let result$6 = $m_sci_Nil$(); while ((i$6 >= 0)) { const this$44 = result$6; const index$6 = i$6; const x$8 = array$6[index$6]; result$6 = new $c_sci_$colon$colon().init___O__sci_List(x$8, this$44); i$6 = (((-1) + i$6) | 0) }; const jsx$7 = result$6; const this$45 = $m_sci_List$(); xo$1 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err$2$1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$7, this$45.ReusableCBFInstance$2), $m_s_None$())) } else if ((e$1 instanceof $c_Lio_kaitai_struct_precompile_ExpressionError)) { const err$1 = e$1; $m_sci_List$(); const array$7 = ["repeat-expr"]; let i$7 = (((-1) + (array$7.length | 0)) | 0); let result$7 = $m_sci_Nil$(); while ((i$7 >= 0)) { const this$50 = result$7; const index$7 = i$7; const x$9 = array$7[index$7]; result$7 = new $c_sci_$colon$colon().init___O__sci_List(x$9, this$50); i$7 = (((-1) + i$7) | 0) }; const jsx$8 = result$7; const this$51 = $m_sci_List$(); xo$1 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err$1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$8, this$51.ReusableCBFInstance$2), $m_s_None$())) } else { throw e$1 } } }; problemsRepeat = xo$1.toList__sci_List() } else if ((x1$1 instanceof $c_Lio_kaitai_struct_format_RepeatUntil)) { const x3 = x1$1; const expr$2 = x3.expr$1; let xo$2; inlinereturn$135: { try { const x1$4 = this.detector$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(expr$2); matchEnd7$2: { const o10$2 = (((x1$4 !== null) && ((((((((($d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isInstance__O__Z(x1$4) || ($isByte(x1$4) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_B.getClassOf()))) || ($isShort(x1$4) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_S.getClassOf()))) || ((x1$4 instanceof $c_jl_Character) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_C.getClassOf()))) || ($isInt(x1$4) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_I.getClassOf()))) || ((x1$4 instanceof $c_sjsr_RuntimeLong) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_J.getClassOf()))) || ($isFloat(x1$4) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_F.getClassOf()))) || (((typeof x1$4) === "number") && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_D.getClassOf()))) || (((typeof x1$4) === "boolean") && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_Z.getClassOf()))) || ((x1$4 === (void 0)) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_V.getClassOf())))) ? new $c_s_Some().init___O(x1$4) : $m_s_None$()); if (((!o10$2.isEmpty__Z()) && (o10$2.get__O() !== null))) { break matchEnd7$2 }; if ((x1$4 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x5$2 = x1$4; const x1$2$2 = x5$2.combinedType__Lio_kaitai_struct_datatype_DataType(); matchEnd6$2: { const o9$2 = (((x1$2$2 !== null) && ((((((((($d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isInstance__O__Z(x1$2$2) || ($isByte(x1$2$2) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_B.getClassOf()))) || ($isShort(x1$2$2) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_S.getClassOf()))) || ((x1$2$2 instanceof $c_jl_Character) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_C.getClassOf()))) || ($isInt(x1$2$2) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_I.getClassOf()))) || ((x1$2$2 instanceof $c_sjsr_RuntimeLong) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_J.getClassOf()))) || ($isFloat(x1$2$2) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_F.getClassOf()))) || (((typeof x1$2$2) === "number") && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_D.getClassOf()))) || (((typeof x1$2$2) === "boolean") && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_Z.getClassOf()))) || ((x1$2$2 === (void 0)) && $d_Lio_kaitai_struct_datatype_DataType$BooleanType.getClassOf().isAssignableFrom__jl_Class__Z($d_V.getClassOf())))) ? new $c_s_Some().init___O(x1$2$2) : $m_s_None$()); if (((!o9$2.isEmpty__Z()) && (o9$2.get__O() !== null))) { break matchEnd6$2 }; $m_sci_List$(); const array$8 = ["repeat-until"]; let i$8 = (((-1) + (array$8.length | 0)) | 0); let result$8 = $m_sci_Nil$(); while ((i$8 >= 0)) { const this$58 = result$8; const index$8 = i$8; const x$10 = array$8[index$8]; result$8 = new $c_sci_$colon$colon().init___O__sci_List(x$10, this$58); i$8 = (((-1) + i$8) | 0) }; const jsx$9 = result$8; const this$59 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option("boolean", x1$2$2, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$9, this$59.ReusableCBFInstance$2), $m_s_None$())); break inlinereturn$135 }; break matchEnd7$2 }; $m_sci_List$(); const array$9 = ["repeat-until"]; let i$9 = (((-1) + (array$9.length | 0)) | 0); let result$9 = $m_sci_Nil$(); while ((i$9 >= 0)) { const this$64 = result$9; const index$9 = i$9; const x$12 = array$9[index$9]; result$9 = new $c_sci_$colon$colon().init___O__sci_List(x$12, this$64); i$9 = (((-1) + i$9) | 0) }; const jsx$10 = result$9; const this$65 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option("boolean", x1$4, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$10, this$65.ReusableCBFInstance$2), $m_s_None$())); break inlinereturn$135 }; this.detector$1.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(expr$2); xo$2 = $m_s_None$() } catch (e$2) { if ((e$2 instanceof $c_Lio_kaitai_struct_format_InvalidIdentifier)) { const err$2$2 = e$2; $m_sci_List$(); const array$10 = ["repeat-until"]; let i$10 = (((-1) + (array$10.length | 0)) | 0); let result$10 = $m_sci_Nil$(); while ((i$10 >= 0)) { const this$70 = result$10; const index$10 = i$10; const x$13 = array$10[index$10]; result$10 = new $c_sci_$colon$colon().init___O__sci_List(x$13, this$70); i$10 = (((-1) + i$10) | 0) }; const jsx$11 = result$10; const this$71 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err$2$2, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$11, this$71.ReusableCBFInstance$2), $m_s_None$())) } else if ((e$2 instanceof $c_Lio_kaitai_struct_precompile_ExpressionError)) { const err$3 = e$2; $m_sci_List$(); const array$11 = ["repeat-until"]; let i$11 = (((-1) + (array$11.length | 0)) | 0); let result$11 = $m_sci_Nil$(); while ((i$11 >= 0)) { const this$76 = result$11; const index$11 = i$11; const x$14 = array$11[index$11]; result$11 = new $c_sci_$colon$colon().init___O__sci_List(x$14, this$76); i$11 = (((-1) + i$11) | 0) }; const jsx$12 = result$11; const this$77 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err$3, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$12, this$77.ReusableCBFInstance$2), $m_s_None$())) } else { throw e$2 } } }; problemsRepeat = xo$2.toList__sci_List() } else { const x$15 = $m_Lio_kaitai_struct_format_RepeatEos$(); let jsx$13; if ((x$15 === x1$1)) { jsx$13 = true } else { const x$3$1 = $m_Lio_kaitai_struct_format_NoRepeat$(); jsx$13 = (x$3$1 === x1$1) }; if ((!jsx$13)) { throw new $c_s_MatchError().init___O(x1$1) }; const xo$3 = $m_s_None$(); problemsRepeat = xo$3.toList__sci_List() }; const problemsDataType = this.validateDataType__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable(attr.dataType__Lio_kaitai_struct_datatype_DataType(), path); $m_sci_List$(); const array$12 = [problemsIf, problemsRepeat, problemsDataType]; let i$12 = (((-1) + (array$12.length | 0)) | 0); let result$12 = $m_sci_Nil$(); while ((i$12 >= 0)) { const this$84 = result$12; const index$12 = i$12; const x$16 = array$12[index$12]; result$12 = new $c_sci_$colon$colon().init___O__sci_List(x$16, this$84); i$12 = (((-1) + i$12) | 0) }; const this$85 = result$12; $m_sci_List$(); const b = new $c_scm_ListBuffer().init___(); let these = this$85; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const xs = arg1$1.seq__sc_TraversableOnce(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs); const this$87 = these; these = this$87.tail__sci_List() }; return b.toList__sci_List() }; validateClass__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(curClass) { $m_Lio_kaitai_struct_Log$(); this.provider$1.nowClass$1 = curClass; const this$3 = curClass.seq$1; const f = (function(this$2) { return (function(attr$2) { const attr = attr$2; return this$2.validateAttr__Lio_kaitai_struct_format_AttrLikeSpec__sc_Iterable(attr) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let res1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { res1 = $m_sci_Nil$() } else { let rest = this$3; const found = new $c_sr_BooleanRef().init___Z(false); const h = new $c_sr_ObjectRef().init___O(null); const t = new $c_sr_ObjectRef().init___O(null); while ((rest !== $m_sci_Nil$())) { const arg1 = rest.head__O(); f(arg1).seq__sc_TraversableOnce().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, found$1, h$1, t$1) { return (function(b$2) { if ((!found$1.elem$1)) { h$1.elem$1 = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$()); t$1.elem$1 = h$1.elem$1; found$1.elem$1 = true } else { const nx = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$()); t$1.elem$1.tl$5 = nx; t$1.elem$1 = nx } }) })(this$3, found, h, t))); const this$7 = rest; rest = this$7.tail__sci_List() }; res1 = ((!found.elem$1) ? $m_sci_Nil$() : h.elem$1) } } else { $m_sci_List$(); const b = new $c_scm_ListBuffer().init___(); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const xs = f(arg1$1).seq__sc_TraversableOnce(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs); const this$9 = these; these = this$9.tail__sci_List() }; res1 = b.toList__sci_List() }; const this$12 = curClass.instances$1; const f$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$3$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const inst = x0$1.$$und2__O(); if ((inst instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x2 = inst; return this$3$1.validateParseInstance__Lio_kaitai_struct_format_ParseInstanceSpec__sc_Iterable(x2) } else if ((inst instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) { const x3 = inst; const xo = this$3$1.validateValueInstance__Lio_kaitai_struct_format_ValueInstanceSpec__s_Option(x3); return xo.toList__sci_List() } else { throw new $c_s_MatchError().init___O(inst) } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this)); const this$11 = $m_sci_Iterable$(); const bf$1 = this$11.ReusableCBFInstance$2; const res2 = $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this$12, f$1, bf$1); $m_sci_List$(); const array = [res1, res2]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$16 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$16); i = (((-1) + i) | 0) }; const this$17 = result; $m_sci_List$(); const b$1 = new $c_scm_ListBuffer().init___(); let these$1 = this$17; while ((!these$1.isEmpty__Z())) { const arg1$2 = these$1.head__O(); const xs$1 = arg1$2.seq__sc_TraversableOnce(); b$1.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs$1); const this$19 = these$1; these$1 = this$19.tail__sci_List() }; return b$1.toList__sci_List() }; run__sc_Iterable() { const this$1 = this.specs$1; $m_scm_Iterable$(); $m_scm_Iterable$(); const b = new $c_scm_ArrayBuffer().init___(); const iterTable = this$1.table$5; let idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(this$1); let es = iterTable.u[idx]; while ((es !== null)) { const this$4 = es; const next = this$4.next$1; const arg1 = es; const e = arg1; const _1 = e.key$1; const _2 = e.value$1; const typeSpec = _2; $m_Lio_kaitai_struct_Log$(); this.provider$1.topClass$1 = typeSpec; const jsx$4 = typeSpec.mapRec__F1__sc_Iterable(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(curClass$2$2) { const curClass$2 = curClass$2$2; return this$2$1.validateClass__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(curClass$2) }) })(this))); const jsx$3 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$3$1, curClass) { return (function(problem$2) { const problem = problem$2; return problem.localizedInType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_problems_CompilationProblem(curClass) }) })(this, typeSpec)); const this$5 = $m_sc_Iterable$(); const jsx$2 = jsx$4.map__F1__scg_CanBuildFrom__O(jsx$3, this$5.ReusableCBFInstance$2); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, typeSpec$1) { return (function(problem$2$1) { const problem$1 = problem$2$1; return problem$1.localizedInType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_problems_CompilationProblem(typeSpec$1) }) })(this$1, typeSpec)); const this$6 = $m_sc_Iterable$(); const xs = jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$6.ReusableCBFInstance$2).seq__sc_TraversableOnce(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ArrayBuffer(xs); es = next; while (((es === null) && (idx > 0))) { idx = (((-1) + idx) | 0); es = iterTable.u[idx] } }; return b }; validateDataType__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable(dataType, path) { let problemsArgsVsParams; if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2 = dataType; if ((!x2.isOpaque__Z())) { const jsx$3 = x2.args$3; const jsx$2 = x2.classSpec$3.get__O().params$1; $m_sci_List$(); const array = ["type"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); problemsArgsVsParams = this.validateArgsVsParams__sc_Seq__sci_List__sci_List__sc_Iterable(jsx$3, jsx$2, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)) } else { const xo = $m_s_None$(); problemsArgsVsParams = xo.toList__sci_List() } } else { const xo$1 = $m_s_None$(); problemsArgsVsParams = xo$1.toList__sci_List() }; let problemsTypeSpecific; if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x2$2 = dataType; const expr = x2$2.size$2; let xo$2; inlinereturn$24: { try { const x1 = this.detector$1.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(expr); matchEnd7: { const o10 = (((x1 !== null) && ((((((((($d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isInstance__O__Z(x1) || ($isByte(x1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_B.getClassOf()))) || ($isShort(x1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_S.getClassOf()))) || ((x1 instanceof $c_jl_Character) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_C.getClassOf()))) || ($isInt(x1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_I.getClassOf()))) || ((x1 instanceof $c_sjsr_RuntimeLong) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_J.getClassOf()))) || ($isFloat(x1) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_F.getClassOf()))) || (((typeof x1) === "number") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_D.getClassOf()))) || (((typeof x1) === "boolean") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_Z.getClassOf()))) || ((x1 === (void 0)) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_V.getClassOf())))) ? new $c_s_Some().init___O(x1) : $m_s_None$()); if (((!o10.isEmpty__Z()) && (o10.get__O() !== null))) { break matchEnd7 }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x5 = x1; const x1$2 = x5.combinedType__Lio_kaitai_struct_datatype_DataType(); matchEnd6: { const o9 = (((x1$2 !== null) && ((((((((($d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isInstance__O__Z(x1$2) || ($isByte(x1$2) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_B.getClassOf()))) || ($isShort(x1$2) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_S.getClassOf()))) || ((x1$2 instanceof $c_jl_Character) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_C.getClassOf()))) || ($isInt(x1$2) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_I.getClassOf()))) || ((x1$2 instanceof $c_sjsr_RuntimeLong) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_J.getClassOf()))) || ($isFloat(x1$2) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_F.getClassOf()))) || (((typeof x1$2) === "number") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_D.getClassOf()))) || (((typeof x1$2) === "boolean") && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_Z.getClassOf()))) || ((x1$2 === (void 0)) && $d_Lio_kaitai_struct_datatype_DataType$IntType.getClassOf().isAssignableFrom__jl_Class__Z($d_V.getClassOf())))) ? new $c_s_Some().init___O(x1$2) : $m_s_None$()); if (((!o9.isEmpty__Z()) && (o9.get__O() !== null))) { break matchEnd6 }; $m_sci_List$(); const array$1 = ["size"]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$12 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$12); i$1 = (((-1) + i$1) | 0) }; const jsx$4 = result$1; const this$13 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option("integer", x1$2, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$4, this$13.ReusableCBFInstance$2), $m_s_None$())); break inlinereturn$24 }; break matchEnd7 }; $m_sci_List$(); const array$2 = ["size"]; let i$2 = (((-1) + (array$2.length | 0)) | 0); let result$2 = $m_sci_Nil$(); while ((i$2 >= 0)) { const this$18 = result$2; const index$2 = i$2; const x$3 = array$2[index$2]; result$2 = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$18); i$2 = (((-1) + i$2) | 0) }; const jsx$5 = result$2; const this$19 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option("integer", x1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$5, this$19.ReusableCBFInstance$2), $m_s_None$())); break inlinereturn$24 }; this.detector$1.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(expr); xo$2 = $m_s_None$() } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_format_InvalidIdentifier)) { const err$2 = e; $m_sci_List$(); const array$3 = ["size"]; let i$3 = (((-1) + (array$3.length | 0)) | 0); let result$3 = $m_sci_Nil$(); while ((i$3 >= 0)) { const this$24 = result$3; const index$3 = i$3; const x$4 = array$3[index$3]; result$3 = new $c_sci_$colon$colon().init___O__sci_List(x$4, this$24); i$3 = (((-1) + i$3) | 0) }; const jsx$6 = result$3; const this$25 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err$2, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$6, this$25.ReusableCBFInstance$2), $m_s_None$())) } else if ((e instanceof $c_Lio_kaitai_struct_precompile_ExpressionError)) { const err = e; $m_sci_List$(); const array$4 = ["size"]; let i$4 = (((-1) + (array$4.length | 0)) | 0); let result$4 = $m_sci_Nil$(); while ((i$4 >= 0)) { const this$30 = result$4; const index$4 = i$4; const x$5 = array$4[index$4]; result$4 = new $c_sci_$colon$colon().init___O__sci_List(x$5, this$30); i$4 = (((-1) + i$4) | 0) }; const jsx$7 = result$4; const this$31 = $m_sci_List$(); xo$2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(err, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$7, this$31.ReusableCBFInstance$2), $m_s_None$())) } else { throw e } } }; problemsTypeSpecific = xo$2.toList__sci_List() } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType)) { const x3 = dataType; problemsTypeSpecific = this.validateDataType__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable(x3.bytes$2, path) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { const x4 = dataType; problemsTypeSpecific = this.validateDataType__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable(x4.bytes$4, path) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x5$1 = dataType; problemsTypeSpecific = this.validateSwitchType__Lio_kaitai_struct_datatype_DataType$SwitchType__sci_List__sc_Iterable(x5$1, path) } else { const xo$3 = $m_s_None$(); problemsTypeSpecific = xo$3.toList__sci_List() }; $m_sci_List$(); const array$5 = [problemsArgsVsParams, problemsTypeSpecific]; let i$5 = (((-1) + (array$5.length | 0)) | 0); let result$5 = $m_sci_Nil$(); while ((i$5 >= 0)) { const this$38 = result$5; const index$5 = i$5; const x$6 = array$5[index$5]; result$5 = new $c_sci_$colon$colon().init___O__sci_List(x$6, this$38); i$5 = (((-1) + i$5) | 0) }; const this$39 = result$5; $m_sci_List$(); const b = new $c_scm_ListBuffer().init___(); let these = this$39; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const xs = arg1.seq__sc_TraversableOnce(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs); const this$41 = these; these = this$41.tail__sci_List() }; return b.toList__sci_List() }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(specs, topClass) { this.specs$1 = specs; this.provider$1 = new $c_Lio_kaitai_struct_ClassTypeProvider().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(specs, topClass); this.detector$1 = new $c_Lio_kaitai_struct_translators_ExpressionValidator().init___Lio_kaitai_struct_translators_TypeProvider(this.provider$1); return this }; } const $d_Lio_kaitai_struct_precompile_TypeValidator = new $TypeData().initClass({ Lio_kaitai_struct_precompile_TypeValidator: 0 }, false, "io.kaitai.struct.precompile.TypeValidator", { Lio_kaitai_struct_precompile_TypeValidator: 1, O: 1, Lio_kaitai_struct_precompile_PrecompileStep: 1 }); $c_Lio_kaitai_struct_precompile_TypeValidator.prototype.$classData = $d_Lio_kaitai_struct_precompile_TypeValidator; class $c_Lio_kaitai_struct_problems_CompilationProblem extends $c_O { localizedInType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_problems_CompilationProblem(typeSpec) { const x1 = this.coords__Lio_kaitai_struct_problems_ProblemCoords().file$1; if ((x1 instanceof $c_s_Some)) { return this } else { const x = $m_s_None$(); if ((x === x1)) { return this.localizedInFile__T__Lio_kaitai_struct_problems_CompilationProblem(typeSpec.fileNameAsStr__T()) } else { throw new $c_s_MatchError().init___O(x1) } } }; message__T() { return ((((this.coords__Lio_kaitai_struct_problems_ProblemCoords().message__T() + ": ") + this.severity__Lio_kaitai_struct_problems_ProblemSeverity().message__T()) + ": ") + this.text__T()) }; } const $isArrayOf_Lio_kaitai_struct_problems_CompilationProblem = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_CompilationProblem))) }); class $c_Ljava_nio_charset_Charset extends $c_O { constructor() { super(); this.aliasesSet$1 = null; this.cachedDecoder$1 = null; this.cachedEncoder$1 = null; this.canonicalName$1 = null; this.java$nio$charset$Charset$$$undaliases$1 = null; this.bitmap$0$1 = 0 }; cachedEncoder__p1__Ljava_nio_charset_CharsetEncoder() { return (((((4 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.cachedEncoder$lzycompute__p1__Ljava_nio_charset_CharsetEncoder() : this.cachedEncoder$1) }; cachedEncoder$lzycompute__p1__Ljava_nio_charset_CharsetEncoder() { if (((((4 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.cachedEncoder$1 = this.newEncoder__Ljava_nio_charset_CharsetEncoder().onMalformedInput__Ljava_nio_charset_CodingErrorAction__Ljava_nio_charset_CharsetEncoder($m_Ljava_nio_charset_CodingErrorAction$().REPLACE$1).onUnmappableCharacter__Ljava_nio_charset_CodingErrorAction__Ljava_nio_charset_CharsetEncoder($m_Ljava_nio_charset_CodingErrorAction$().REPLACE$1); this.bitmap$0$1 = (((4 | this.bitmap$0$1) << 24) >> 24) }; return this.cachedEncoder$1 }; init___T__AT(canonicalName, _aliases) { this.canonicalName$1 = canonicalName; this.java$nio$charset$Charset$$$undaliases$1 = _aliases; return this }; equals__O__Z(that) { if ((that instanceof $c_Ljava_nio_charset_Charset)) { const x2 = that; return (this.canonicalName$1 === x2.canonicalName$1) } else { return false } }; toString__T() { return this.canonicalName$1 }; encode__T__Ljava_nio_ByteBuffer(str) { const this$1 = $m_Ljava_nio_CharBuffer$(); const cb = this$1.wrap__jl_CharSequence__I__I__Ljava_nio_CharBuffer(str, 0, (str.length | 0)); return this.cachedEncoder__p1__Ljava_nio_charset_CharsetEncoder().encode__Ljava_nio_CharBuffer__Ljava_nio_ByteBuffer(cb) }; hashCode__I() { return $m_sr_Statics$().anyHash__O__I(this.canonicalName$1) }; } const $isArrayOf_Ljava_nio_charset_Charset = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_nio_charset_Charset))) }); class $c_Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon$Encoder extends $c_Ljava_nio_charset_CharsetEncoder { constructor() { super(); this.$$outer$2 = null }; encodeLoop__Ljava_nio_CharBuffer__Ljava_nio_ByteBuffer__Ljava_nio_charset_CoderResult($in, out) { const maxValue = this.$$outer$2.java$nio$charset$ISO$und8859$und1$undAnd$undUS$undASCII$undCommon$$maxValue$2; const inRemaining = (($in.$$undlimit$1 - $in.java$nio$Buffer$$$undposition$1) | 0); if ((inRemaining === 0)) { return $m_Ljava_nio_charset_CoderResult$().UNDERFLOW$1 } else { _loop: while (true) { if (($in.java$nio$Buffer$$$undposition$1 === $in.$$undlimit$1)) { return $m_Ljava_nio_charset_CoderResult$().UNDERFLOW$1 } else if ((out.java$nio$Buffer$$$undposition$1 === out.$$undlimit$1)) { return $m_Ljava_nio_charset_CoderResult$().OVERFLOW$1 } else { const c = $in.get__C(); if ((c <= maxValue)) { out.put__B__Ljava_nio_ByteBuffer(((c << 24) >> 24)); continue _loop } else if (((64512 & c) === 56320)) { const newPosition = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition); const this$4 = $m_Ljava_nio_charset_CoderResult$(); return this$4.java$nio$charset$CoderResult$$Malformed1$1 } else if (((64512 & c) === 55296)) { if (($in.java$nio$Buffer$$$undposition$1 !== $in.$$undlimit$1)) { const c2 = $in.get__C(); const newPosition$1 = (((-2) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$1); if (((64512 & c2) === 56320)) { const this$7 = $m_Ljava_nio_charset_CoderResult$(); return this$7.java$nio$charset$CoderResult$$Unmappable2$1 } else { const this$8 = $m_Ljava_nio_charset_CoderResult$(); return this$8.java$nio$charset$CoderResult$$Malformed1$1 } } else { const newPosition$2 = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$2); return $m_Ljava_nio_charset_CoderResult$().UNDERFLOW$1 } } else { const newPosition$3 = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$3); const this$9 = $m_Ljava_nio_charset_CoderResult$(); return this$9.java$nio$charset$CoderResult$$Unmappable1$1 } } } } }; init___Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; $c_Ljava_nio_charset_CharsetEncoder.prototype.init___Ljava_nio_charset_Charset__F__F.call(this, $$outer, 1.0, 1.0); return this }; } const $d_Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon$Encoder = new $TypeData().initClass({ Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon$Encoder: 0 }, false, "java.nio.charset.ISO_8859_1_And_US_ASCII_Common$Encoder", { Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon$Encoder: 1, Ljava_nio_charset_CharsetEncoder: 1, O: 1 }); $c_Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon$Encoder.prototype.$classData = $d_Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon$Encoder; class $c_Ljava_nio_charset_UTF$und16$undCommon$Encoder extends $c_Ljava_nio_charset_CharsetEncoder { constructor() { super(); this.needToWriteBOM$2 = false; this.$$outer$2 = null }; encodeLoop__Ljava_nio_CharBuffer__Ljava_nio_ByteBuffer__Ljava_nio_charset_CoderResult($in, out) { if (this.needToWriteBOM$2) { if ((((out.$$undlimit$1 - out.java$nio$Buffer$$$undposition$1) | 0) < 2)) { return $m_Ljava_nio_charset_CoderResult$().OVERFLOW$1 } else { out.put__B__Ljava_nio_ByteBuffer((-2)); out.put__B__Ljava_nio_ByteBuffer((-1)); this.needToWriteBOM$2 = false } }; const bigEndian = (this.$$outer$2.java$nio$charset$UTF$und16$undCommon$$endianness$2 !== 2); _loop: while (true) { if (((($in.$$undlimit$1 - $in.java$nio$Buffer$$$undposition$1) | 0) === 0)) { return $m_Ljava_nio_charset_CoderResult$().UNDERFLOW$1 } else { const c1 = $in.get__C(); if (((64512 & c1) === 56320)) { const newPosition = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition); const this$2 = $m_Ljava_nio_charset_CoderResult$(); return this$2.java$nio$charset$CoderResult$$Malformed1$1 } else if (((64512 & c1) !== 55296)) { if ((((out.$$undlimit$1 - out.java$nio$Buffer$$$undposition$1) | 0) < 2)) { const newPosition$1 = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$1); return $m_Ljava_nio_charset_CoderResult$().OVERFLOW$1 } else { if (bigEndian) { out.put__B__Ljava_nio_ByteBuffer((((c1 >> 8) << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer(((c1 << 24) >> 24)) } else { out.put__B__Ljava_nio_ByteBuffer(((c1 << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer((((c1 >> 8) << 24) >> 24)) }; continue _loop } } else if (((($in.$$undlimit$1 - $in.java$nio$Buffer$$$undposition$1) | 0) < 1)) { const newPosition$2 = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$2); return $m_Ljava_nio_charset_CoderResult$().UNDERFLOW$1 } else { const c2 = $in.get__C(); if (((64512 & c2) !== 56320)) { const newPosition$3 = (((-2) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$3); const this$5 = $m_Ljava_nio_charset_CoderResult$(); return this$5.java$nio$charset$CoderResult$$Malformed1$1 } else if ((((out.$$undlimit$1 - out.java$nio$Buffer$$$undposition$1) | 0) < 4)) { const newPosition$4 = (((-2) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$4); return $m_Ljava_nio_charset_CoderResult$().OVERFLOW$1 } else { if (bigEndian) { out.put__B__Ljava_nio_ByteBuffer((((c1 >> 8) << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer(((c1 << 24) >> 24)) } else { out.put__B__Ljava_nio_ByteBuffer(((c1 << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer((((c1 >> 8) << 24) >> 24)) }; if (bigEndian) { out.put__B__Ljava_nio_ByteBuffer((((c2 >> 8) << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer(((c2 << 24) >> 24)) } else { out.put__B__Ljava_nio_ByteBuffer(((c2 << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer((((c2 >> 8) << 24) >> 24)) }; continue _loop } } } } }; init___Ljava_nio_charset_UTF$und16$undCommon($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; const jsx$2 = (($$outer.java$nio$charset$UTF$und16$undCommon$$endianness$2 === 0) ? 4.0 : 2.0); let jsx$1; if (($$outer.java$nio$charset$UTF$und16$undCommon$$endianness$2 === 2)) { const array = [(-3), (-1)]; const xs = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); const len = (xs.array$6.length | 0); const array$1 = $newArrayObject($d_B.getArrayOf(), [len]); let elem$1 = 0; elem$1 = 0; const this$7 = new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(xs, 0, (xs.array$6.length | 0)); while (this$7.hasNext__Z()) { const arg1 = this$7.next__O(); array$1.u[elem$1] = (arg1 | 0); elem$1 = ((1 + elem$1) | 0) }; jsx$1 = array$1 } else { const array$2 = [(-1), (-3)]; const xs$1 = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array$2); const len$1 = (xs$1.array$6.length | 0); const array$3 = $newArrayObject($d_B.getArrayOf(), [len$1]); let elem$1$1 = 0; elem$1$1 = 0; const this$14 = new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(xs$1, 0, (xs$1.array$6.length | 0)); while (this$14.hasNext__Z()) { const arg1$1 = this$14.next__O(); array$3.u[elem$1$1] = (arg1$1 | 0); elem$1$1 = ((1 + elem$1$1) | 0) }; jsx$1 = array$3 }; $c_Ljava_nio_charset_CharsetEncoder.prototype.init___Ljava_nio_charset_Charset__F__F__AB.call(this, $$outer, 2.0, jsx$2, jsx$1); this.needToWriteBOM$2 = ($$outer.java$nio$charset$UTF$und16$undCommon$$endianness$2 === 0); return this }; implReset__V() { this.needToWriteBOM$2 = (this.$$outer$2.java$nio$charset$UTF$und16$undCommon$$endianness$2 === 0) }; } const $d_Ljava_nio_charset_UTF$und16$undCommon$Encoder = new $TypeData().initClass({ Ljava_nio_charset_UTF$und16$undCommon$Encoder: 0 }, false, "java.nio.charset.UTF_16_Common$Encoder", { Ljava_nio_charset_UTF$und16$undCommon$Encoder: 1, Ljava_nio_charset_CharsetEncoder: 1, O: 1 }); $c_Ljava_nio_charset_UTF$und16$undCommon$Encoder.prototype.$classData = $d_Ljava_nio_charset_UTF$und16$undCommon$Encoder; class $c_Ljava_nio_charset_UTF$und8$Encoder extends $c_Ljava_nio_charset_CharsetEncoder { init___() { $c_Ljava_nio_charset_CharsetEncoder.prototype.init___Ljava_nio_charset_Charset__F__F.call(this, $m_Ljava_nio_charset_UTF$und8$(), 1.100000023841858, 3.0); return this }; encodeLoop__Ljava_nio_CharBuffer__Ljava_nio_ByteBuffer__Ljava_nio_charset_CoderResult($in, out) { _loop: while (true) { if (($in.java$nio$Buffer$$$undposition$1 === $in.$$undlimit$1)) { return $m_Ljava_nio_charset_CoderResult$().UNDERFLOW$1 } else { const c1 = $in.get__C(); if ((c1 < 128)) { if ((out.java$nio$Buffer$$$undposition$1 === out.$$undlimit$1)) { const result = $m_Ljava_nio_charset_CoderResult$().OVERFLOW$1; const newPosition = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition); return result } else { out.put__B__Ljava_nio_ByteBuffer(((c1 << 24) >> 24)); continue _loop } } else if ((c1 < 2048)) { if ((((out.$$undlimit$1 - out.java$nio$Buffer$$$undposition$1) | 0) < 2)) { const result$1 = $m_Ljava_nio_charset_CoderResult$().OVERFLOW$1; const newPosition$1 = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$1); return result$1 } else { out.put__B__Ljava_nio_ByteBuffer((((192 | (c1 >> 6)) << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer((((128 | (63 & c1)) << 24) >> 24)); continue _loop } } else if ((!($m_Ljava_nio_charset_UTF$und8$(), ((63488 & c1) === 55296)))) { if ((((out.$$undlimit$1 - out.java$nio$Buffer$$$undposition$1) | 0) < 3)) { const result$2 = $m_Ljava_nio_charset_CoderResult$().OVERFLOW$1; const newPosition$2 = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$2); return result$2 } else { out.put__B__Ljava_nio_ByteBuffer((((224 | (c1 >> 12)) << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer((((128 | (63 & (c1 >> 6))) << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer((((128 | (63 & c1)) << 24) >> 24)); continue _loop } } else if (((64512 & c1) === 55296)) { if (($in.java$nio$Buffer$$$undposition$1 === $in.$$undlimit$1)) { const result$3 = $m_Ljava_nio_charset_CoderResult$().UNDERFLOW$1; const newPosition$3 = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$3); return result$3 } else { const c2 = $in.get__C(); if (((64512 & c2) !== 56320)) { const this$6 = $m_Ljava_nio_charset_CoderResult$(); const result$4 = this$6.java$nio$charset$CoderResult$$Malformed1$1; const newPosition$4 = (((-2) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$4); return result$4 } else if ((((out.$$undlimit$1 - out.java$nio$Buffer$$$undposition$1) | 0) < 4)) { const result$5 = $m_Ljava_nio_charset_CoderResult$().OVERFLOW$1; const newPosition$5 = (((-2) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$5); return result$5 } else { const cp = ((65536 + ((((1023 & c1) << 10) + (1023 & c2)) | 0)) | 0); out.put__B__Ljava_nio_ByteBuffer((((240 | (cp >> 18)) << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer((((128 | (63 & (cp >> 12))) << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer((((128 | (63 & (cp >> 6))) << 24) >> 24)); out.put__B__Ljava_nio_ByteBuffer((((128 | (63 & cp)) << 24) >> 24)); continue _loop } } } else { const this$8 = $m_Ljava_nio_charset_CoderResult$(); const result$6 = this$8.java$nio$charset$CoderResult$$Malformed1$1; const newPosition$6 = (((-1) + $in.java$nio$Buffer$$$undposition$1) | 0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call($in, newPosition$6); return result$6 } } } }; } const $d_Ljava_nio_charset_UTF$und8$Encoder = new $TypeData().initClass({ Ljava_nio_charset_UTF$und8$Encoder: 0 }, false, "java.nio.charset.UTF_8$Encoder", { Ljava_nio_charset_UTF$und8$Encoder: 1, Ljava_nio_charset_CharsetEncoder: 1, O: 1 }); $c_Ljava_nio_charset_UTF$und8$Encoder.prototype.$classData = $d_Ljava_nio_charset_UTF$und8$Encoder; class $c_jl_Number extends $c_O { } const $is_jl_Number = (function(obj) { return ((obj instanceof $c_jl_Number) || ((typeof obj) === "number")) }); const $isArrayOf_jl_Number = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Number))) }); class $c_jl_StackTraceElement extends $c_O { constructor() { super(); this.declaringClass$1 = null; this.methodName$1 = null; this.fileName$1 = null; this.lineNumber$1 = 0; this.columnNumber$1 = 0 }; $$js$exported$meth$getColumnNumber__O() { return this.columnNumber$1 }; init___T__T__T__I(declaringClass, methodName, fileName, lineNumber) { this.declaringClass$1 = declaringClass; this.methodName$1 = methodName; this.fileName$1 = fileName; this.lineNumber$1 = lineNumber; this.columnNumber$1 = (-1); return this }; equals__O__Z(that) { if ((that instanceof $c_jl_StackTraceElement)) { const x2 = that; return ((((this.fileName$1 === x2.fileName$1) && (this.lineNumber$1 === x2.lineNumber$1)) && (this.declaringClass$1 === x2.declaringClass$1)) && (this.methodName$1 === x2.methodName$1)) } else { return false } }; $$js$exported$meth$setColumnNumber__I__O(columnNumber) { this.columnNumber$1 = columnNumber }; toString__T() { let result = ""; if ((this.declaringClass$1 !== "")) { result = ((("" + result) + this.declaringClass$1) + ".") }; result = (("" + result) + this.methodName$1); if ((this.fileName$1 === null)) { result = (result + "(Unknown Source)") } else { result = ((result + "(") + this.fileName$1); if ((this.lineNumber$1 >= 0)) { result = ((result + ":") + this.lineNumber$1); if ((this.columnNumber$1 >= 0)) { result = ((result + ":") + this.columnNumber$1) } }; result = (result + ")") }; return result }; hashCode__I() { const this$1 = this.declaringClass$1; const jsx$1 = $m_sjsr_RuntimeString$().hashCode__T__I(this$1); const this$2 = this.methodName$1; return (jsx$1 ^ $m_sjsr_RuntimeString$().hashCode__T__I(this$2)) }; "setColumnNumber"(arg) { const prep = (arg | 0); return this.$$js$exported$meth$setColumnNumber__I__O(prep) }; "getColumnNumber"() { return this.$$js$exported$meth$getColumnNumber__O() }; } const $isArrayOf_jl_StackTraceElement = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_StackTraceElement))) }); const $d_jl_StackTraceElement = new $TypeData().initClass({ jl_StackTraceElement: 0 }, false, "java.lang.StackTraceElement", { jl_StackTraceElement: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_StackTraceElement.prototype.$classData = $d_jl_StackTraceElement; class $c_jl_Thread extends $c_O { constructor() { super(); this.java$lang$Thread$$interruptedState$1 = false; this.name$1 = null }; run__V() { /**/ }; init___sr_BoxedUnit(dummy) { this.java$lang$Thread$$interruptedState$1 = false; this.name$1 = "main"; return this }; } const $d_jl_Thread = new $TypeData().initClass({ jl_Thread: 0 }, false, "java.lang.Thread", { jl_Thread: 1, O: 1, jl_Runnable: 1 }); $c_jl_Thread.prototype.$classData = $d_jl_Thread; class $c_jl_Throwable extends $c_O { constructor() { super(); this.s$1 = null; this.e$1 = null; this.enableSuppression$1 = false; this.writableStackTrace$1 = false; this.stackTrace$1 = null; this.suppressed$1 = null }; fillInStackTrace__jl_Throwable() { const v = $g.Error.captureStackTrace; if ((v === (void 0))) { let e$1; try { e$1 = {}.undef() } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { if ((e$2 instanceof $c_sjs_js_JavaScriptException)) { const x5 = e$2; const e$3 = x5.exception$4; e$1 = e$3 } else { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(e$2) } } else { throw e } }; this.stackdata = e$1 } else { $g.Error.captureStackTrace(this); this.stackdata = this }; return this }; getMessage__T() { return this.s$1 }; toString__T() { const className = $objectGetClass(this).getName__T(); const message = this.getMessage__T(); return ((message === null) ? className : ((className + ": ") + message)) }; getStackTrace__Ajl_StackTraceElement() { if ((this.stackTrace$1 === null)) { if (this.writableStackTrace$1) { this.stackTrace$1 = $m_sjsr_StackTrace$().extract__jl_Throwable__Ajl_StackTraceElement(this) } else { this.stackTrace$1 = $newArrayObject($d_jl_StackTraceElement.getArrayOf(), [0]) } }; return this.stackTrace$1 }; printStackTrace__Ljava_io_PrintStream__V(s) { const f = (function($this, s$1) { return (function(x$1$2) { const x$1 = x$1$2; s$1.println__T__V(x$1) }) })(this, s); this.getStackTrace__Ajl_StackTraceElement(); const arg1 = this.toString__T(); f(arg1); if ((this.stackTrace$1.u.length !== 0)) { let i = 0; while ((i < this.stackTrace$1.u.length)) { const arg1$1 = (" at " + this.stackTrace$1.u[i]); f(arg1$1); i = ((1 + i) | 0) } } else { f(" ") }; let wCause = this; while (true) { const jsx$2 = wCause; const this$1 = wCause; let jsx$1; if ((jsx$2 !== this$1.e$1)) { const this$2 = wCause; jsx$1 = (this$2.e$1 !== null) } else { jsx$1 = false }; if (jsx$1) { const parentTrace = wCause.getStackTrace__Ajl_StackTraceElement(); const this$3 = wCause; wCause = this$3.e$1; const thisTrace = wCause.getStackTrace__Ajl_StackTraceElement(); const thisLength = thisTrace.u.length; const parentLength = parentTrace.u.length; const arg1$2 = ("Caused by: " + wCause.toString__T()); f(arg1$2); if ((thisLength !== 0)) { let sameFrameCount = 0; while (true) { let jsx$3; if (((sameFrameCount < thisLength) && (sameFrameCount < parentLength))) { const x = thisTrace.u[(((-1) + ((thisLength - sameFrameCount) | 0)) | 0)]; const x$2 = parentTrace.u[(((-1) + ((parentLength - sameFrameCount) | 0)) | 0)]; jsx$3 = ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { jsx$3 = false }; if (jsx$3) { sameFrameCount = ((1 + sameFrameCount) | 0) } else { break } }; if ((sameFrameCount > 0)) { sameFrameCount = (((-1) + sameFrameCount) | 0) }; const lengthToPrint = ((thisLength - sameFrameCount) | 0); let i$2 = 0; while ((i$2 < lengthToPrint)) { const arg1$3 = (" at " + thisTrace.u[i$2]); f(arg1$3); i$2 = ((1 + i$2) | 0) }; if ((sameFrameCount > 0)) { const arg1$4 = ((" ... " + sameFrameCount) + " more"); f(arg1$4) } } else { f(" ") } } else { break } } }; init___T__jl_Throwable__Z__Z(s, e, enableSuppression, writableStackTrace) { this.s$1 = s; this.e$1 = e; this.enableSuppression$1 = enableSuppression; this.writableStackTrace$1 = writableStackTrace; if (writableStackTrace) { this.fillInStackTrace__jl_Throwable() }; return this }; } const $isArrayOf_jl_Throwable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Throwable))) }); class $c_ju_AbstractMap extends $c_O { equals__O__Z(o) { if ((o === this)) { return true } else if ($is_ju_Map(o)) { const x2 = o; if ((this.size__I() === x2.size__I())) { const __self = new $c_sc_convert_Wrappers$MapWrapper$$anon$2().init___sc_convert_Wrappers$MapWrapper(this); const __self$1 = new $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3().init___sc_convert_Wrappers$MapWrapper$$anon$2(__self); let jsx$1; inlinereturn$8: { while (__self$1.ui$1.hasNext__Z()) { const arg1 = __self$1.next__ju_Map$Entry(); const a = x2.get__O__O(arg1.k$1$1); const b = arg1.v$1$1; if ((!((a === null) ? (b === null) : $objectEquals(a, b)))) { jsx$1 = true; break inlinereturn$8 } }; jsx$1 = false }; return (!jsx$1) } else { return false } } else { return false } }; toString__T() { let result = "{"; let first = true; const this$1 = new $c_sc_convert_Wrappers$MapWrapper$$anon$2().init___sc_convert_Wrappers$MapWrapper(this); const iter = new $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3().init___sc_convert_Wrappers$MapWrapper$$anon$2(this$1); while (iter.ui$1.hasNext__Z()) { const entry = iter.next__ju_Map$Entry(); if (first) { first = false } else { result = (result + ", ") }; result = (((("" + result) + entry.k$1$1) + "=") + entry.v$1$1) }; return (result + "}") }; hashCode__I() { const __self = new $c_sc_convert_Wrappers$MapWrapper$$anon$2().init___sc_convert_Wrappers$MapWrapper(this); const __self$1 = new $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3().init___sc_convert_Wrappers$MapWrapper$$anon$2(__self); let result = 0; while (__self$1.ui$1.hasNext__Z()) { const arg1 = result; const arg2 = __self$1.next__ju_Map$Entry(); const prev = (arg1 | 0); result = ((arg2.hashCode__I() + prev) | 0) }; return (result | 0) }; } class $c_ju_regex_Matcher extends $c_O { constructor() { super(); this.pattern0$1 = null; this.input0$1 = null; this.regionStart0$1 = 0; this.regionEnd0$1 = 0; this.regexp$1 = null; this.inputstr$1 = null; this.lastMatch$1 = null; this.lastMatchIsValid$1 = false; this.canStillFind$1 = false; this.appendPos$1 = 0; this.startOfGroupCache$1 = null }; find__Z() { if (this.canStillFind$1) { this.lastMatchIsValid$1 = true; this.lastMatch$1 = this.regexp$1.exec(this.inputstr$1); if ((this.lastMatch$1 !== null)) { const value = this.lastMatch$1[0]; if ((value === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const thiz = value; if ((thiz === null)) { throw new $c_jl_NullPointerException().init___() }; if ((thiz === "")) { const ev$1 = this.regexp$1; ev$1.lastIndex = ((1 + (ev$1.lastIndex | 0)) | 0) } } else { this.canStillFind$1 = false }; this.startOfGroupCache$1 = null; return (this.lastMatch$1 !== null) } else { return false } }; ensureLastMatch__p1__sjs_js_RegExp$ExecResult() { if ((this.lastMatch$1 === null)) { throw new $c_jl_IllegalStateException().init___T("No match available") }; return this.lastMatch$1 }; group__I__T(group) { const value = this.ensureLastMatch__p1__sjs_js_RegExp$ExecResult()[group]; return ((value === (void 0)) ? null : value) }; matches__Z() { this.reset__ju_regex_Matcher(); this.find__Z(); let jsx$1; if ((this.lastMatch$1 !== null)) { if ((this.start__I() !== 0)) { jsx$1 = true } else { const jsx$2 = this.end__I(); const thiz = this.inputstr$1; jsx$1 = (jsx$2 !== (thiz.length | 0)) } } else { jsx$1 = false }; if (jsx$1) { this.reset__ju_regex_Matcher() }; return (this.lastMatch$1 !== null) }; appendTail__jl_StringBuffer__jl_StringBuffer(sb) { const thiz = this.inputstr$1; const beginIndex = this.appendPos$1; sb.append__T__jl_StringBuffer(thiz.substring(beginIndex)); const thiz$1 = this.inputstr$1; this.appendPos$1 = (thiz$1.length | 0); return sb }; end__I() { const jsx$1 = this.start__I(); const thiz = this.group__T(); return ((jsx$1 + (thiz.length | 0)) | 0) }; init___ju_regex_Pattern__jl_CharSequence__I__I(pattern0, input0, regionStart0, regionEnd0) { this.pattern0$1 = pattern0; this.input0$1 = input0; this.regionStart0$1 = regionStart0; this.regionEnd0$1 = regionEnd0; this.regexp$1 = this.pattern0$1.newJSRegExp__sjs_js_RegExp(); this.inputstr$1 = $objectToString($charSequenceSubSequence(this.input0$1, this.regionStart0$1, this.regionEnd0$1)); this.lastMatch$1 = null; this.lastMatchIsValid$1 = false; this.canStillFind$1 = true; this.appendPos$1 = 0; return this }; appendReplacement__jl_StringBuffer__T__ju_regex_Matcher(sb, replacement) { const thiz = this.inputstr$1; const beginIndex = this.appendPos$1; const endIndex = this.start__I(); sb.append__T__jl_StringBuffer(thiz.substring(beginIndex, endIndex)); const len = (replacement.length | 0); let i = 0; while ((i < len)) { const index = i; const x1 = (65535 & (replacement.charCodeAt(index) | 0)); switch (x1) { case 36: { i = ((1 + i) | 0); const j = i; while (true) { let jsx$1; if ((i < len)) { const index$1 = i; const c = (65535 & (replacement.charCodeAt(index$1) | 0)); jsx$1 = ((c >= 48) && (c <= 57)) } else { jsx$1 = false }; if (jsx$1) { i = ((1 + i) | 0) } else { break } }; const this$8 = $m_jl_Integer$(); const endIndex$1 = i; const s = replacement.substring(j, endIndex$1); const group = this$8.parseInt__T__I__I(s, 10); sb.append__T__jl_StringBuffer(this.group__I__T(group)); break } case 92: { i = ((1 + i) | 0); if ((i < len)) { const index$2 = i; sb.append__C__jl_StringBuffer((65535 & (replacement.charCodeAt(index$2) | 0))) }; i = ((1 + i) | 0); break } default: { sb.append__C__jl_StringBuffer(x1); i = ((1 + i) | 0) } } }; this.appendPos$1 = this.end__I(); return this }; replaceAll__T__T(replacement) { this.reset__ju_regex_Matcher(); const sb = new $c_jl_StringBuffer().init___(); while (this.find__Z()) { this.appendReplacement__jl_StringBuffer__T__ju_regex_Matcher(sb, replacement) }; this.appendTail__jl_StringBuffer__jl_StringBuffer(sb); return sb.toString__T() }; group__T() { const value = this.ensureLastMatch__p1__sjs_js_RegExp$ExecResult()[0]; if ((value === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; return value }; start__I() { return (this.ensureLastMatch__p1__sjs_js_RegExp$ExecResult().index | 0) }; reset__ju_regex_Matcher() { this.regexp$1.lastIndex = 0; this.lastMatch$1 = null; this.lastMatchIsValid$1 = false; this.canStillFind$1 = true; this.appendPos$1 = 0; this.startOfGroupCache$1 = null; return this }; } const $d_ju_regex_Matcher = new $TypeData().initClass({ ju_regex_Matcher: 0 }, false, "java.util.regex.Matcher", { ju_regex_Matcher: 1, O: 1, ju_regex_MatchResult: 1 }); $c_ju_regex_Matcher.prototype.$classData = $d_ju_regex_Matcher; class $c_s_FallbackArrayBuilding$$anon$1 extends $c_O { apply__scm_Builder() { return $m_scm_ArraySeq$().newBuilder__scm_Builder() }; init___s_FallbackArrayBuilding($$outer) { return this }; apply__O__scm_Builder(from) { return $m_scm_ArraySeq$().newBuilder__scm_Builder() }; } const $d_s_FallbackArrayBuilding$$anon$1 = new $TypeData().initClass({ s_FallbackArrayBuilding$$anon$1: 0 }, false, "scala.FallbackArrayBuilding$$anon$1", { s_FallbackArrayBuilding$$anon$1: 1, O: 1, scg_CanBuildFrom: 1 }); $c_s_FallbackArrayBuilding$$anon$1.prototype.$classData = $d_s_FallbackArrayBuilding$$anon$1; class $c_s_LowPriorityImplicits$$anon$4 extends $c_O { apply__scm_Builder() { $m_sci_IndexedSeq$(); $m_sci_Vector$(); return new $c_sci_VectorBuilder().init___() }; apply__O__scm_Builder(from) { $m_sci_IndexedSeq$(); $m_sci_Vector$(); return new $c_sci_VectorBuilder().init___() }; init___s_LowPriorityImplicits($$outer) { return this }; } const $d_s_LowPriorityImplicits$$anon$4 = new $TypeData().initClass({ s_LowPriorityImplicits$$anon$4: 0 }, false, "scala.LowPriorityImplicits$$anon$4", { s_LowPriorityImplicits$$anon$4: 1, O: 1, scg_CanBuildFrom: 1 }); $c_s_LowPriorityImplicits$$anon$4.prototype.$classData = $d_s_LowPriorityImplicits$$anon$4; class $c_s_Predef$$anon$1 extends $c_O { init___() { return this }; apply__scm_Builder() { return new $c_scm_StringBuilder().init___() }; apply__O__scm_Builder(from) { return new $c_scm_StringBuilder().init___() }; } const $d_s_Predef$$anon$1 = new $TypeData().initClass({ s_Predef$$anon$1: 0 }, false, "scala.Predef$$anon$1", { s_Predef$$anon$1: 1, O: 1, scg_CanBuildFrom: 1 }); $c_s_Predef$$anon$1.prototype.$classData = $d_s_Predef$$anon$1; const $f_s_Product2__productElement__I__O = (function($thiz, n) { switch (n) { case 0: { return $thiz.$$und1__O(); break } case 1: { return $thiz.$$und2__O(); break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + n)) } } }); const $f_s_Product3__productElement__I__O = (function($thiz, n) { switch (n) { case 0: { return $thiz.$$und1$1; break } case 1: { return $thiz.$$und2$1; break } case 2: { return $thiz.$$und3$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + n)) } } }); class $c_s_concurrent_BlockContext$DefaultBlockContext$ extends $c_O { init___() { return this }; } const $d_s_concurrent_BlockContext$DefaultBlockContext$ = new $TypeData().initClass({ s_concurrent_BlockContext$DefaultBlockContext$: 0 }, false, "scala.concurrent.BlockContext$DefaultBlockContext$", { s_concurrent_BlockContext$DefaultBlockContext$: 1, O: 1, s_concurrent_BlockContext: 1 }); $c_s_concurrent_BlockContext$DefaultBlockContext$.prototype.$classData = $d_s_concurrent_BlockContext$DefaultBlockContext$; let $n_s_concurrent_BlockContext$DefaultBlockContext$ = (void 0); const $m_s_concurrent_BlockContext$DefaultBlockContext$ = (function() { if ((!$n_s_concurrent_BlockContext$DefaultBlockContext$)) { $n_s_concurrent_BlockContext$DefaultBlockContext$ = new $c_s_concurrent_BlockContext$DefaultBlockContext$().init___() }; return $n_s_concurrent_BlockContext$DefaultBlockContext$ }); class $c_s_math_Integral$IntegralOps extends $c_s_math_Numeric$Ops { constructor() { super(); this.lhs$2 = null }; init___s_math_Integral__O($$outer, lhs) { this.lhs$2 = lhs; $c_s_math_Numeric$Ops.prototype.init___s_math_Numeric__O.call(this, $$outer, lhs); return this }; } const $d_s_math_Integral$IntegralOps = new $TypeData().initClass({ s_math_Integral$IntegralOps: 0 }, false, "scala.math.Integral$IntegralOps", { s_math_Integral$IntegralOps: 1, s_math_Numeric$Ops: 1, O: 1 }); $c_s_math_Integral$IntegralOps.prototype.$classData = $d_s_math_Integral$IntegralOps; class $c_s_package$$anon$1 extends $c_O { init___() { return this }; toString__T() { return "object AnyRef" }; } const $d_s_package$$anon$1 = new $TypeData().initClass({ s_package$$anon$1: 0 }, false, "scala.package$$anon$1", { s_package$$anon$1: 1, O: 1, s_Specializable: 1 }); $c_s_package$$anon$1.prototype.$classData = $d_s_package$$anon$1; class $c_s_util_hashing_MurmurHash3$ extends $c_s_util_hashing_MurmurHash3 { constructor() { super(); this.seqSeed$2 = 0; this.mapSeed$2 = 0; this.setSeed$2 = 0; this.emptyMapHash$2 = 0 }; init___() { $n_s_util_hashing_MurmurHash3$ = this; this.seqSeed$2 = $m_sjsr_RuntimeString$().hashCode__T__I("Seq"); this.mapSeed$2 = $m_sjsr_RuntimeString$().hashCode__T__I("Map"); this.setSeed$2 = $m_sjsr_RuntimeString$().hashCode__T__I("Set"); this.emptyMapHash$2 = this.unorderedHash__sc_TraversableOnce__I__I($m_sci_Nil$(), this.mapSeed$2); return this }; seqHash__sc_Seq__I(xs) { if ((xs instanceof $c_sci_List)) { const x2 = xs; return this.listHash__sci_List__I__I(x2, this.seqSeed$2) } else { return this.orderedHash__sc_TraversableOnce__I__I(xs, this.seqSeed$2) } }; } const $d_s_util_hashing_MurmurHash3$ = new $TypeData().initClass({ s_util_hashing_MurmurHash3$: 0 }, false, "scala.util.hashing.MurmurHash3$", { s_util_hashing_MurmurHash3$: 1, s_util_hashing_MurmurHash3: 1, O: 1 }); $c_s_util_hashing_MurmurHash3$.prototype.$classData = $d_s_util_hashing_MurmurHash3$; let $n_s_util_hashing_MurmurHash3$ = (void 0); const $m_s_util_hashing_MurmurHash3$ = (function() { if ((!$n_s_util_hashing_MurmurHash3$)) { $n_s_util_hashing_MurmurHash3$ = new $c_s_util_hashing_MurmurHash3$().init___() }; return $n_s_util_hashing_MurmurHash3$ }); class $c_s_util_hashing_MurmurHash3$hasher$1$ extends $c_O { constructor() { super(); this.a$1 = 0; this.b$1 = 0; this.n$1 = 0; this.c$1 = 0 }; apply__O__O(v1) { this.apply__O__V(v1) }; init___s_util_hashing_MurmurHash3($$outer) { this.a$1 = 0; this.b$1 = 0; this.n$1 = 0; this.c$1 = 1; return this }; toString__T() { return "" }; apply__O__V(x) { const h = $m_sr_Statics$().anyHash__O__I(x); this.a$1 = ((this.a$1 + h) | 0); this.b$1 = (this.b$1 ^ h); if ((h !== 0)) { this.c$1 = $imul(this.c$1, h) }; this.n$1 = ((1 + this.n$1) | 0) }; } const $isArrayOf_s_util_hashing_MurmurHash3$hasher$1$ = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_util_hashing_MurmurHash3$hasher$1$))) }); const $d_s_util_hashing_MurmurHash3$hasher$1$ = new $TypeData().initClass({ s_util_hashing_MurmurHash3$hasher$1$: 0 }, false, "scala.util.hashing.MurmurHash3$hasher$1$", { s_util_hashing_MurmurHash3$hasher$1$: 1, O: 1, F1: 1 }); $c_s_util_hashing_MurmurHash3$hasher$1$.prototype.$classData = $d_s_util_hashing_MurmurHash3$hasher$1$; class $c_s_util_hashing_MurmurHash3$hasher$3$ extends $c_O { constructor() { super(); this.n$1 = 0; this.h$1 = 0; this.$$outer$1 = null }; apply__O__O(v1) { this.apply__O__V(v1) }; toString__T() { return "" }; init___s_util_hashing_MurmurHash3__I($$outer, seed$1) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; this.n$1 = 0; this.h$1 = seed$1; return this }; apply__O__V(x) { this.h$1 = this.$$outer$1.mix__I__I__I(this.h$1, $m_sr_Statics$().anyHash__O__I(x)); this.n$1 = ((1 + this.n$1) | 0) }; } const $isArrayOf_s_util_hashing_MurmurHash3$hasher$3$ = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_util_hashing_MurmurHash3$hasher$3$))) }); const $d_s_util_hashing_MurmurHash3$hasher$3$ = new $TypeData().initClass({ s_util_hashing_MurmurHash3$hasher$3$: 0 }, false, "scala.util.hashing.MurmurHash3$hasher$3$", { s_util_hashing_MurmurHash3$hasher$3$: 1, O: 1, F1: 1 }); $c_s_util_hashing_MurmurHash3$hasher$3$.prototype.$classData = $d_s_util_hashing_MurmurHash3$hasher$3$; const $f_sc_Iterator__exists__F1__Z = (function($thiz, p) { let res = false; while (((!res) && $thiz.hasNext__Z())) { res = (!(!p.apply__O__O($thiz.next__O()))) }; return res }); const $f_sc_Iterator__isEmpty__Z = (function($thiz) { return (!$thiz.hasNext__Z()) }); const $f_sc_Iterator__forall__F1__Z = (function($thiz, p) { let res = true; while ((res && $thiz.hasNext__Z())) { res = (!(!p.apply__O__O($thiz.next__O()))) }; return res }); const $f_sc_Iterator__foreach__F1__V = (function($thiz, f) { while ($thiz.hasNext__Z()) { f.apply__O__O($thiz.next__O()) } }); const $f_sc_Iterator__toStream__sci_Stream = (function($thiz) { if ($thiz.hasNext__Z()) { const hd = $thiz.next__O(); const tl = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this) { return (function() { return $this.toStream__sci_Stream() }) })($thiz)); return new $c_sci_Stream$Cons().init___O__F0(hd, tl) } else { $m_sci_Stream$(); return $m_sci_Stream$Empty$() } }); const $f_sc_Iterator__drop__I__sc_Iterator = (function($thiz, n) { let j = 0; while (((j < n) && $thiz.hasNext__Z())) { $thiz.next__O(); j = ((1 + j) | 0) }; return $thiz }); const $f_sc_Iterator__copyToArray__O__I__I__V = (function($thiz, xs, start, len) { let i = start; const y = (($m_sr_ScalaRunTime$().array$undlength__O__I(xs) - start) | 0); const end = ((start + ((len < y) ? len : y)) | 0); while (((i < end) && $thiz.hasNext__Z())) { $m_sr_ScalaRunTime$().array$undupdate__O__I__O__V(xs, i, $thiz.next__O()); i = ((1 + i) | 0) } }); class $c_sc_TraversableLike$WithFilter extends $c_O { constructor() { super(); this.p$1 = null; this.$$outer$1 = null }; foreach__F1__V(f) { this.$$outer$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, f$1) { return (function(x$2) { return ((!(!$this.p$1.apply__O__O(x$2))) ? f$1.apply__O__O(x$2) : (void 0)) }) })(this, f))) }; map__F1__scg_CanBuildFrom__O(f, bf) { const b = bf.apply__O__scm_Builder(this.$$outer$1.repr__O()); this.$$outer$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, b$1, f$1) { return (function(x$2) { return ((!(!$this.p$1.apply__O__O(x$2))) ? b$1.$$plus$eq__O__scm_Builder(f$1.apply__O__O(x$2)) : (void 0)) }) })(this, b, f))); return b.result__O() }; init___sc_TraversableLike__F1($$outer, p) { this.p$1 = p; if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; } const $d_sc_TraversableLike$WithFilter = new $TypeData().initClass({ sc_TraversableLike$WithFilter: 0 }, false, "scala.collection.TraversableLike$WithFilter", { sc_TraversableLike$WithFilter: 1, O: 1, scg_FilterMonadic: 1 }); $c_sc_TraversableLike$WithFilter.prototype.$classData = $d_sc_TraversableLike$WithFilter; class $c_sc_TraversableOnce$appender$1$ extends $c_O { constructor() { super(); this.first$1 = false; this.b$2$1 = null; this.sep$1$1 = null }; apply__O__O(v1) { this.apply__O__V(v1) }; toString__T() { return "" }; init___sc_TraversableOnce__scm_StringBuilder__T($$outer, b$2, sep$1) { this.b$2$1 = b$2; this.sep$1$1 = sep$1; this.first$1 = true; return this }; apply__O__V(x) { if (this.first$1) { this.b$2$1.append__O__scm_StringBuilder(x); this.first$1 = false } else { this.b$2$1.append__T__scm_StringBuilder(this.sep$1$1); this.b$2$1.append__O__scm_StringBuilder(x) } }; } const $isArrayOf_sc_TraversableOnce$appender$1$ = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_TraversableOnce$appender$1$))) }); const $d_sc_TraversableOnce$appender$1$ = new $TypeData().initClass({ sc_TraversableOnce$appender$1$: 0 }, false, "scala.collection.TraversableOnce$appender$1$", { sc_TraversableOnce$appender$1$: 1, O: 1, F1: 1 }); $c_sc_TraversableOnce$appender$1$.prototype.$classData = $d_sc_TraversableOnce$appender$1$; class $c_sc_TraversableOnce$counter$1$ extends $c_O { constructor() { super(); this.result$1 = 0 }; apply__O__O(v1) { this.apply__O__V(v1) }; toString__T() { return "" }; init___sc_TraversableOnce($$outer) { this.result$1 = 0; return this }; apply__O__V(v1) { this.result$1 = ((1 + this.result$1) | 0) }; } const $isArrayOf_sc_TraversableOnce$counter$1$ = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_TraversableOnce$counter$1$))) }); const $d_sc_TraversableOnce$counter$1$ = new $TypeData().initClass({ sc_TraversableOnce$counter$1$: 0 }, false, "scala.collection.TraversableOnce$counter$1$", { sc_TraversableOnce$counter$1$: 1, O: 1, F1: 1 }); $c_sc_TraversableOnce$counter$1$.prototype.$classData = $d_sc_TraversableOnce$counter$1$; class $c_sc_TraversableOnce$folder$1$ extends $c_O { constructor() { super(); this.result$1 = null; this.op$1$1 = null }; apply__O__O(v1) { this.apply__O__V(v1) }; toString__T() { return "" }; init___sc_TraversableOnce__O__F2($$outer, z$1, op$1) { this.op$1$1 = op$1; this.result$1 = z$1; return this }; apply__O__V(v1) { this.result$1 = this.op$1$1.apply__O__O__O(this.result$1, v1) }; } const $isArrayOf_sc_TraversableOnce$folder$1$ = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_TraversableOnce$folder$1$))) }); const $d_sc_TraversableOnce$folder$1$ = new $TypeData().initClass({ sc_TraversableOnce$folder$1$: 0 }, false, "scala.collection.TraversableOnce$folder$1$", { sc_TraversableOnce$folder$1$: 1, O: 1, F1: 1 }); $c_sc_TraversableOnce$folder$1$.prototype.$classData = $d_sc_TraversableOnce$folder$1$; class $c_sc_TraversableOnce$reducer$1$ extends $c_O { constructor() { super(); this.first$1 = false; this.acc$1 = null; this.op$3$1 = null }; apply__O__O(v1) { this.apply__O__V(v1) }; toString__T() { return "" }; apply__O__V(x) { if (this.first$1) { this.acc$1 = x; this.first$1 = false } else { this.acc$1 = this.op$3$1.apply__O__O__O(this.acc$1, x) } }; init___sc_TraversableOnce__F2($$outer, op$3) { this.op$3$1 = op$3; this.first$1 = true; this.acc$1 = 0; return this }; } const $isArrayOf_sc_TraversableOnce$reducer$1$ = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_TraversableOnce$reducer$1$))) }); const $d_sc_TraversableOnce$reducer$1$ = new $TypeData().initClass({ sc_TraversableOnce$reducer$1$: 0 }, false, "scala.collection.TraversableOnce$reducer$1$", { sc_TraversableOnce$reducer$1$: 1, O: 1, F1: 1 }); $c_sc_TraversableOnce$reducer$1$.prototype.$classData = $d_sc_TraversableOnce$reducer$1$; class $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3 extends $c_O { constructor() { super(); this.ui$1 = null; this.prev$1 = null; this.$$outer$1 = null }; next__ju_Map$Entry() { const x1 = this.ui$1.next__O(); if ((x1 === null)) { throw new $c_s_MatchError().init___O(x1) }; const k = x1.$$und1__O(); const v = x1.$$und2__O(); this.prev$1 = new $c_s_Some().init___O(k); return new $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3$$anon$4().init___sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3__O__O(this, k, v) }; init___sc_convert_Wrappers$MapWrapper$$anon$2($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; this.ui$1 = $$outer.$$outer$3.scala$collection$convert$Wrappers$MapWrapper$$underlying$f.iterator__sc_Iterator(); this.prev$1 = $m_s_None$(); return this }; } const $d_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3 = new $TypeData().initClass({ sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3: 0 }, false, "scala.collection.convert.Wrappers$MapWrapper$$anon$2$$anon$3", { sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3: 1, O: 1, ju_Iterator: 1 }); $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3.prototype.$classData = $d_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3; class $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3$$anon$4 extends $c_O { constructor() { super(); this.$$outer$1 = null; this.k$1$1 = null; this.v$1$1 = null }; equals__O__Z(other) { if ($is_ju_Map$Entry(other)) { const x2 = other; return ($m_sr_BoxesRunTime$().equals__O__O__Z(this.k$1$1, x2.k$1$1) && $m_sr_BoxesRunTime$().equals__O__O__Z(this.v$1$1, x2.v$1$1)) } else { return false } }; hashCode__I() { return (((this.k$1$1 === null) ? 0 : $objectHashCode(this.k$1$1)) ^ ((this.v$1$1 === null) ? 0 : $objectHashCode(this.v$1$1))) }; init___sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3__O__O($$outer, k$1, v$1) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; this.k$1$1 = k$1; this.v$1$1 = v$1; return this }; } const $d_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3$$anon$4 = new $TypeData().initClass({ sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3$$anon$4: 0 }, false, "scala.collection.convert.Wrappers$MapWrapper$$anon$2$$anon$3$$anon$4", { sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3$$anon$4: 1, O: 1, ju_Map$Entry: 1 }); $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3$$anon$4.prototype.$classData = $d_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3$$anon$4; class $c_sc_package$WrappedCanBuildFrom { } const $isArrayOf_sc_package$WrappedCanBuildFrom = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_package$WrappedCanBuildFrom))) }); class $c_scg_GenMapFactory$MapCanBuildFrom extends $c_O { constructor() { super(); this.$$outer$1 = null }; apply__scm_Builder() { return this.$$outer$1.newBuilder__scm_Builder() }; apply__O__scm_Builder(from) { return this.$$outer$1.newBuilder__scm_Builder() }; init___scg_GenMapFactory($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; } const $d_scg_GenMapFactory$MapCanBuildFrom = new $TypeData().initClass({ scg_GenMapFactory$MapCanBuildFrom: 0 }, false, "scala.collection.generic.GenMapFactory$MapCanBuildFrom", { scg_GenMapFactory$MapCanBuildFrom: 1, O: 1, scg_CanBuildFrom: 1 }); $c_scg_GenMapFactory$MapCanBuildFrom.prototype.$classData = $d_scg_GenMapFactory$MapCanBuildFrom; class $c_scg_GenSetFactory extends $c_scg_GenericCompanion { } class $c_scg_GenSetFactory$$anon$1 extends $c_O { constructor() { super(); this.$$outer$1 = null }; apply__scm_Builder() { return this.$$outer$1.newBuilder__scm_Builder() }; apply__O__scm_Builder(from) { return this.apply__sc_GenSet__scm_Builder(from) }; init___scg_GenSetFactory($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; apply__sc_GenSet__scm_Builder(from) { return ($is_sc_Set(from) ? from.companion__scg_GenericCompanion().newBuilder__scm_Builder() : this.$$outer$1.newBuilder__scm_Builder()) }; } const $d_scg_GenSetFactory$$anon$1 = new $TypeData().initClass({ scg_GenSetFactory$$anon$1: 0 }, false, "scala.collection.generic.GenSetFactory$$anon$1", { scg_GenSetFactory$$anon$1: 1, O: 1, scg_CanBuildFrom: 1 }); $c_scg_GenSetFactory$$anon$1.prototype.$classData = $d_scg_GenSetFactory$$anon$1; class $c_scg_GenTraversableFactory extends $c_scg_GenericCompanion { constructor() { super(); this.ReusableCBFInstance$2 = null }; init___() { this.ReusableCBFInstance$2 = new $c_scg_GenTraversableFactory$$anon$1().init___scg_GenTraversableFactory(this); return this }; } class $c_scg_GenTraversableFactory$GenericCanBuildFrom extends $c_O { constructor() { super(); this.$$outer$1 = null }; apply__scm_Builder() { return this.$$outer$1.newBuilder__scm_Builder() }; apply__O__scm_Builder(from) { const from$1 = from; return from$1.companion__scg_GenericCompanion().newBuilder__scm_Builder() }; init___scg_GenTraversableFactory($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; } class $c_scg_MapFactory extends $c_scg_GenMapFactory { } class $c_sci_HashMap$$anon$1 extends $c_sci_HashMap$Merger { constructor() { super(); this.invert$2 = null }; init___() { this.invert$2 = new $c_sci_HashMap$$anon$1$$anon$2().init___sci_HashMap$$anon$1(this); return this }; apply__T2__T2__T2(a, b) { return a }; retainIdentical__Z() { return true }; invert__sci_HashMap$Merger() { return this.invert$2 }; } const $d_sci_HashMap$$anon$1 = new $TypeData().initClass({ sci_HashMap$$anon$1: 0 }, false, "scala.collection.immutable.HashMap$$anon$1", { sci_HashMap$$anon$1: 1, sci_HashMap$Merger: 1, O: 1 }); $c_sci_HashMap$$anon$1.prototype.$classData = $d_sci_HashMap$$anon$1; class $c_sci_HashMap$$anon$1$$anon$2 extends $c_sci_HashMap$Merger { init___sci_HashMap$$anon$1($$outer) { return this }; apply__T2__T2__T2(a, b) { return b }; retainIdentical__Z() { return true }; invert__sci_HashMap$Merger() { return $m_sci_HashMap$().scala$collection$immutable$HashMap$$defaultMerger$4 }; } const $d_sci_HashMap$$anon$1$$anon$2 = new $TypeData().initClass({ sci_HashMap$$anon$1$$anon$2: 0 }, false, "scala.collection.immutable.HashMap$$anon$1$$anon$2", { sci_HashMap$$anon$1$$anon$2: 1, sci_HashMap$Merger: 1, O: 1 }); $c_sci_HashMap$$anon$1$$anon$2.prototype.$classData = $d_sci_HashMap$$anon$1$$anon$2; class $c_sci_HashMap$$anon$3 extends $c_sci_HashMap$Merger { constructor() { super(); this.invert$2 = null; this.mergef$1$f = null }; init___F2(mergef$1) { this.mergef$1$f = mergef$1; this.invert$2 = new $c_sci_HashMap$$anon$3$$anon$4().init___sci_HashMap$$anon$3(this); return this }; apply__T2__T2__T2(kv1, kv2) { return this.mergef$1$f.apply__O__O__O(kv1, kv2) }; invert__sci_HashMap$Merger() { return this.invert$2 }; } const $d_sci_HashMap$$anon$3 = new $TypeData().initClass({ sci_HashMap$$anon$3: 0 }, false, "scala.collection.immutable.HashMap$$anon$3", { sci_HashMap$$anon$3: 1, sci_HashMap$Merger: 1, O: 1 }); $c_sci_HashMap$$anon$3.prototype.$classData = $d_sci_HashMap$$anon$3; class $c_sci_HashMap$$anon$3$$anon$4 extends $c_sci_HashMap$Merger { constructor() { super(); this.$$outer$2 = null }; apply__T2__T2__T2(kv1, kv2) { return this.$$outer$2.mergef$1$f.apply__O__O__O(kv2, kv1) }; init___sci_HashMap$$anon$3($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; return this }; invert__sci_HashMap$Merger() { return this.$$outer$2 }; } const $d_sci_HashMap$$anon$3$$anon$4 = new $TypeData().initClass({ sci_HashMap$$anon$3$$anon$4: 0 }, false, "scala.collection.immutable.HashMap$$anon$3$$anon$4", { sci_HashMap$$anon$3$$anon$4: 1, sci_HashMap$Merger: 1, O: 1 }); $c_sci_HashMap$$anon$3$$anon$4.prototype.$classData = $d_sci_HashMap$$anon$3$$anon$4; class $c_sci_HashSet$acc$1$ extends $c_O { constructor() { super(); this.res$1 = null }; apply__O__O(v1) { this.apply__O__V(v1) }; init___sci_HashSet($$outer) { this.res$1 = $$outer; return this }; toString__T() { return "" }; apply__O__V(v1) { this.res$1 = this.res$1.$$plus__O__sci_HashSet(v1) }; } const $isArrayOf_sci_HashSet$acc$1$ = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_HashSet$acc$1$))) }); const $d_sci_HashSet$acc$1$ = new $TypeData().initClass({ sci_HashSet$acc$1$: 0 }, false, "scala.collection.immutable.HashSet$acc$1$", { sci_HashSet$acc$1$: 1, O: 1, F1: 1 }); $c_sci_HashSet$acc$1$.prototype.$classData = $d_sci_HashSet$acc$1$; class $c_sci_List$$anon$1 extends $c_O { init___() { return this }; apply__O__O(x) { return this }; toString__T() { return "" }; } const $d_sci_List$$anon$1 = new $TypeData().initClass({ sci_List$$anon$1: 0 }, false, "scala.collection.immutable.List$$anon$1", { sci_List$$anon$1: 1, O: 1, F1: 1 }); $c_sci_List$$anon$1.prototype.$classData = $d_sci_List$$anon$1; class $c_sci_Stream$StreamWithFilter extends $c_O { constructor() { super(); this.filtered$1 = null; this.p$1 = null; this.s$1 = null; this.bitmap$0$1 = false }; filtered__p1__sci_Stream() { return ((!this.bitmap$0$1) ? this.filtered$lzycompute__p1__sci_Stream() : this.filtered$1) }; init___F0__F1(sl, p) { this.p$1 = p; this.s$1 = sl.apply__O(); return this }; map__F1__scg_CanBuildFrom__O(f, bf) { return this.filtered__p1__sci_Stream().map__F1__scg_CanBuildFrom__O(f, bf) }; filtered$lzycompute__p1__sci_Stream() { if ((!this.bitmap$0$1)) { const this$1 = this.s$1; const p = this.p$1; const f = this$1.filterImpl__F1__Z__sci_Stream(p, false); this.s$1 = null; this.filtered$1 = f; this.bitmap$0$1 = true }; return this.filtered$1 }; } const $d_sci_Stream$StreamWithFilter = new $TypeData().initClass({ sci_Stream$StreamWithFilter: 0 }, false, "scala.collection.immutable.Stream$StreamWithFilter", { sci_Stream$StreamWithFilter: 1, O: 1, scg_FilterMonadic: 1 }); $c_sci_Stream$StreamWithFilter.prototype.$classData = $d_sci_Stream$StreamWithFilter; class $c_sci_WrappedString$$anon$1 extends $c_O { init___() { return this }; apply__scm_Builder() { return $m_sci_WrappedString$().newBuilder__scm_Builder() }; apply__O__scm_Builder(from) { return $m_sci_WrappedString$().newBuilder__scm_Builder() }; } const $d_sci_WrappedString$$anon$1 = new $TypeData().initClass({ sci_WrappedString$$anon$1: 0 }, false, "scala.collection.immutable.WrappedString$$anon$1", { sci_WrappedString$$anon$1: 1, O: 1, scg_CanBuildFrom: 1 }); $c_sci_WrappedString$$anon$1.prototype.$classData = $d_sci_WrappedString$$anon$1; const $f_scm_Builder__sizeHint__sc_TraversableLike__V = (function($thiz, coll) { const x1 = coll.sizeHintIfCheap__I(); switch (x1) { case (-1): { break } default: { $thiz.sizeHint__I__V(x1) } } }); const $f_scm_Builder__sizeHint__sc_TraversableLike__I__V = (function($thiz, coll, delta) { const x1 = coll.sizeHintIfCheap__I(); switch (x1) { case (-1): { break } default: { $thiz.sizeHint__I__V(((x1 + delta) | 0)) } } }); const $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V = (function($thiz, size, boundingColl) { const x1 = boundingColl.sizeHintIfCheap__I(); switch (x1) { case (-1): { break } default: { $thiz.sizeHint__I__V(((size < x1) ? size : x1)) } } }); const $is_scm_Builder = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.scm_Builder))) }); const $isArrayOf_scm_Builder = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_Builder))) }); class $c_sr_AbstractFunction0 extends $c_O { toString__T() { return "" }; } class $c_sr_AbstractFunction1 extends $c_O { toString__T() { return "" }; } class $c_sr_AbstractFunction2 extends $c_O { toString__T() { return "" }; } class $c_sr_AbstractFunction3 extends $c_O { toString__T() { return "" }; } class $c_sr_BooleanRef extends $c_O { constructor() { super(); this.elem$1 = false }; toString__T() { const b = this.elem$1; return ("" + b) }; init___Z(elem) { this.elem$1 = elem; return this }; } const $d_sr_BooleanRef = new $TypeData().initClass({ sr_BooleanRef: 0 }, false, "scala.runtime.BooleanRef", { sr_BooleanRef: 1, O: 1, Ljava_io_Serializable: 1 }); $c_sr_BooleanRef.prototype.$classData = $d_sr_BooleanRef; const $isArrayOf_sr_BoxedUnit = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sr_BoxedUnit))) }); const $d_sr_BoxedUnit = new $TypeData().initClass({ sr_BoxedUnit: 0 }, false, "scala.runtime.BoxedUnit", { sr_BoxedUnit: 1, O: 1, Ljava_io_Serializable: 1 }, (void 0), (void 0), (function(x) { return (x === (void 0)) })); class $c_sr_IntRef extends $c_O { constructor() { super(); this.elem$1 = 0 }; toString__T() { const i = this.elem$1; return ("" + i) }; init___I(elem) { this.elem$1 = elem; return this }; } const $d_sr_IntRef = new $TypeData().initClass({ sr_IntRef: 0 }, false, "scala.runtime.IntRef", { sr_IntRef: 1, O: 1, Ljava_io_Serializable: 1 }); $c_sr_IntRef.prototype.$classData = $d_sr_IntRef; class $c_sr_ObjectRef extends $c_O { constructor() { super(); this.elem$1 = null }; toString__T() { const obj = this.elem$1; return ("" + obj) }; init___O(elem) { this.elem$1 = elem; return this }; } const $d_sr_ObjectRef = new $TypeData().initClass({ sr_ObjectRef: 0 }, false, "scala.runtime.ObjectRef", { sr_ObjectRef: 1, O: 1, Ljava_io_Serializable: 1 }); $c_sr_ObjectRef.prototype.$classData = $d_sr_ObjectRef; class $c_Lfastparse_WhitespaceApi extends $c_Lfastparse_core_ParserApiImpl { constructor() { super(); this.p0$3 = null; this.WL$3 = null }; init___Lfastparse_core_Parser__Lfastparse_core_Parser(p0, WL) { this.p0$3 = p0; this.WL$3 = WL; $c_Lfastparse_core_ParserApiImpl.prototype.init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps.call(this, p0, $m_Lfastparse_all$().implicitReprOps$1); return this }; rep__I__Lfastparse_core_Parser__I__I__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(min, sep, max, exactly, ev) { const jsx$4 = this.p0$3; const x$2 = $m_Lfastparse_all$().Pass$1; let jsx$1; if ((!((sep === null) ? (x$2 === null) : sep.equals__O__Z(x$2)))) { const this$3 = $m_Lfastparse_all$(); const this$2 = $m_Lfastparse_all$(); $m_Lfastparse_all$(); const p = this.WL$3; const repr = $m_Lfastparse_all$().implicitReprOps$1; const p$1 = new $c_Lfastparse_parsers_Combinators$NoCut().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p, repr); const p$2 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$1, this$2.implicitReprOps$1).$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(sep, $m_Lfastparse_core_Implicits$Sequencer$().SingleSequencer__Lfastparse_core_Implicits$Sequencer()); const jsx$3 = new $c_Lfastparse_core_ParserApiImpl().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$2, this$3.implicitReprOps$1); $m_Lfastparse_all$(); const p$3 = this.WL$3; const repr$1 = $m_Lfastparse_all$().implicitReprOps$1; const jsx$2 = new $c_Lfastparse_parsers_Combinators$NoCut().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$3, repr$1); const this$5 = $m_Lfastparse_core_Implicits$Sequencer$(); jsx$1 = jsx$3.$$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(jsx$2, $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer(this$5)) } else { $m_Lfastparse_all$(); const p$4 = this.WL$3; const repr$2 = $m_Lfastparse_all$().implicitReprOps$1; jsx$1 = new $c_Lfastparse_parsers_Combinators$NoCut().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p$4, repr$2) }; return new $c_Lfastparse_parsers_Combinators$Repeat().init___Lfastparse_core_Parser__I__I__Lfastparse_core_Parser__Lfastparse_core_Implicits$Repeater__Lfastparse_utils_ReprOps(jsx$4, ((exactly < 0) ? min : exactly), ((exactly < 0) ? max : exactly), jsx$1, ev, $m_Lfastparse_all$().implicitReprOps$1) }; rep$default$2__Lfastparse_core_Parser() { return $m_Lfastparse_all$().Pass$1 }; rep__Lfastparse_core_Implicits$Repeater__Lfastparse_core_Parser(ev) { const jsx$1 = this.p0$3; $m_Lfastparse_all$(); const p = this.WL$3; const repr = $m_Lfastparse_all$().implicitReprOps$1; return new $c_Lfastparse_parsers_Combinators$Repeat().init___Lfastparse_core_Parser__I__I__Lfastparse_core_Parser__Lfastparse_core_Implicits$Repeater__Lfastparse_utils_ReprOps(jsx$1, 0, 2147483647, new $c_Lfastparse_parsers_Combinators$NoCut().init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p, repr), ev, $m_Lfastparse_all$().implicitReprOps$1) }; $$tilde__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(p, ev) { $m_s_Predef$().assert__Z__V((p !== null)); const jsx$1 = this.WL$3; const x = this.p0$3; const x$2 = this.WL$3; return new $c_Lfastparse_WhitespaceApi$CustomSequence().init___Lfastparse_core_Parser__Lfastparse_core_Parser__Lfastparse_core_Parser__Z__Lfastparse_core_Implicits$Sequencer(jsx$1, ((!((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) ? this.p0$3 : $m_Lfastparse_all$().Pass$1), p, false, ev) }; $$tilde$div__Lfastparse_core_Parser__Lfastparse_core_Implicits$Sequencer__Lfastparse_core_Parser(p, ev) { $m_s_Predef$().assert__Z__V((p !== null)); const jsx$1 = this.WL$3; const x = this.p0$3; const x$2 = this.WL$3; return new $c_Lfastparse_WhitespaceApi$CustomSequence().init___Lfastparse_core_Parser__Lfastparse_core_Parser__Lfastparse_core_Parser__Z__Lfastparse_core_Implicits$Sequencer(jsx$1, ((!((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) ? this.p0$3 : $m_Lfastparse_all$().Pass$1), p, true, ev) }; } const $d_Lfastparse_WhitespaceApi = new $TypeData().initClass({ Lfastparse_WhitespaceApi: 0 }, false, "fastparse.WhitespaceApi", { Lfastparse_WhitespaceApi: 1, Lfastparse_core_ParserApiImpl: 1, Lfastparse_core_ParserApi: 1, O: 1 }); $c_Lfastparse_WhitespaceApi.prototype.$classData = $d_Lfastparse_WhitespaceApi; class $c_Lfastparse_all$ extends $c_Lfastparse_StringApi { init___() { $c_Lfastparse_StringApi.prototype.init___.call(this); return this }; } const $d_Lfastparse_all$ = new $TypeData().initClass({ Lfastparse_all$: 0 }, false, "fastparse.all$", { Lfastparse_all$: 1, Lfastparse_StringApi: 1, Lfastparse_Api: 1, O: 1 }); $c_Lfastparse_all$.prototype.$classData = $d_Lfastparse_all$; let $n_Lfastparse_all$ = (void 0); const $m_Lfastparse_all$ = (function() { if ((!$n_Lfastparse_all$)) { $n_Lfastparse_all$ = new $c_Lfastparse_all$().init___() }; return $n_Lfastparse_all$ }); const $f_Lfastparse_core_Implicits$LowPriSequencer__UnitSequencer__Lfastparse_core_Implicits$Sequencer = (function($thiz) { const f = new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(t$2, x$2$2) { return t$2 }) })($thiz)); return new $c_Lfastparse_core_Implicits$Sequencer$$anon$1().init___F2(f) }); class $c_Lfastparse_core_Parsed$Failure$ extends $c_O { init___() { return this }; formatParser__Lfastparse_core_Precedence__Lfastparse_utils_ParserInput__I__T(p, input, index) { return new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["", ":", ""])).s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([$m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(p, $m_Lfastparse_core_Precedence$().$$colon$1), input.repr$2.prettyIndex__Lfastparse_utils_ParserInput__I__T(input, index)])) }; formatStackTrace__sc_Seq__Lfastparse_utils_ParserInput__I__T__T(stack, input, index, last) { const jsx$2 = stack.withFilter__F1__scg_FilterMonadic(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(check$ifrefutable$1$2) { const check$ifrefutable$1 = check$ifrefutable$1$2; return (check$ifrefutable$1 !== null) }) })(this))); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2, input$1) { return (function(x$1$2) { const x$1 = x$1$2; if ((x$1 !== null)) { const index$1 = x$1.index$1; const p = x$1.parser$1; return $m_Lfastparse_core_Parsed$Failure$().formatParser__Lfastparse_core_Precedence__Lfastparse_utils_ParserInput__I__T(p, input$1, index$1) } else { throw new $c_s_MatchError().init___O(x$1) } }) })(this, input)); const this$1 = $m_sc_Seq$(); const body = jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2); const this$3 = $m_sc_Seq$(); const jsx$3 = body.$$colon$plus__O__scg_CanBuildFrom__O(last, this$3.ReusableCBFInstance$2).mkString__T__T(" / "); const this$5 = input.repr$2; const until = ((10 + index) | 0); const this$4 = input.repr$2; const value = input.data$2; const input$2 = this$4.slice__T__I__I__T(value, index, until); return ((jsx$3 + " ...") + this$5.literalize__T__T(input$2)) }; } const $d_Lfastparse_core_Parsed$Failure$ = new $TypeData().initClass({ Lfastparse_core_Parsed$Failure$: 0 }, false, "fastparse.core.Parsed$Failure$", { Lfastparse_core_Parsed$Failure$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_Parsed$Failure$.prototype.$classData = $d_Lfastparse_core_Parsed$Failure$; let $n_Lfastparse_core_Parsed$Failure$ = (void 0); const $m_Lfastparse_core_Parsed$Failure$ = (function() { if ((!$n_Lfastparse_core_Parsed$Failure$)) { $n_Lfastparse_core_Parsed$Failure$ = new $c_Lfastparse_core_Parsed$Failure$().init___() }; return $n_Lfastparse_core_Parsed$Failure$ }); class $c_Lfastparse_core_Parsed$TracedFailure$ extends $c_O { init___() { return this }; } const $d_Lfastparse_core_Parsed$TracedFailure$ = new $TypeData().initClass({ Lfastparse_core_Parsed$TracedFailure$: 0 }, false, "fastparse.core.Parsed$TracedFailure$", { Lfastparse_core_Parsed$TracedFailure$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_Parsed$TracedFailure$.prototype.$classData = $d_Lfastparse_core_Parsed$TracedFailure$; let $n_Lfastparse_core_Parsed$TracedFailure$ = (void 0); const $m_Lfastparse_core_Parsed$TracedFailure$ = (function() { if ((!$n_Lfastparse_core_Parsed$TracedFailure$)) { $n_Lfastparse_core_Parsed$TracedFailure$ = new $c_Lfastparse_core_Parsed$TracedFailure$().init___() }; return $n_Lfastparse_core_Parsed$TracedFailure$ }); class $c_Lfastparse_core_Parser extends $c_O { constructor() { super(); this.reprOps$1 = null }; parseInput__Lfastparse_utils_ParserInput__I__F3__Lfastparse_core_Parsed(input, index, instrument) { return this.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(new $c_Lfastparse_core_ParseCtx().init___Lfastparse_utils_ParserInput__I__I__Lfastparse_core_Parser__I__F3__Z__Z__Z(input, 0, (-1), this, index, instrument, false, false, false), index).toResult__Lfastparse_core_Parsed() }; parse__O__I__F3__Lfastparse_core_Parsed(input, index, instrument) { return this.parseInput__Lfastparse_utils_ParserInput__I__F3__Lfastparse_core_Parsed(new $c_Lfastparse_utils_IndexedParserInput().init___O__Lfastparse_utils_ReprOps(input, this.reprOps$1), index, instrument) }; init___Lfastparse_utils_ReprOps(reprOps) { this.reprOps$1 = reprOps; return this }; opPred__I() { return $m_Lfastparse_core_Precedence$().Max$1 }; } const $isArrayOf_Lfastparse_core_Parser = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Parser))) }); const $d_Lfastparse_core_Parser = new $TypeData().initClass({ Lfastparse_core_Parser: 0 }, false, "fastparse.core.Parser", { Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1 }); $c_Lfastparse_core_Parser.prototype.$classData = $d_Lfastparse_core_Parser; class $c_Lfastparse_noApi$ extends $c_Lfastparse_StringApi { init___() { $c_Lfastparse_StringApi.prototype.init___.call(this); return this }; } const $d_Lfastparse_noApi$ = new $TypeData().initClass({ Lfastparse_noApi$: 0 }, false, "fastparse.noApi$", { Lfastparse_noApi$: 1, Lfastparse_StringApi: 1, Lfastparse_Api: 1, O: 1 }); $c_Lfastparse_noApi$.prototype.$classData = $d_Lfastparse_noApi$; let $n_Lfastparse_noApi$ = (void 0); const $m_Lfastparse_noApi$ = (function() { if ((!$n_Lfastparse_noApi$)) { $n_Lfastparse_noApi$ = new $c_Lfastparse_noApi$().init___() }; return $n_Lfastparse_noApi$ }); class $c_Lfastparse_parsers_Combinators$Either$ extends $c_O { init___() { return this }; flatten__sci_Vector__sci_Vector(p) { $m_sci_Vector$(); $m_sc_IndexedSeq$(); $m_sci_Vector$(); const b = new $c_sci_VectorBuilder().init___(); const this$3 = p.iterator__sci_VectorIterator(); while (this$3.$$undhasNext$2) { const arg1 = this$3.next__O(); const x0$1 = arg1; let jsx$1; if ((x0$1 instanceof $c_Lfastparse_parsers_Combinators$Either)) { const x2 = x0$1; const ps = x2.ps$2; jsx$1 = ps } else { const this$4 = $m_s_package$().Vector$1; const array = [x0$1]; if (((array.length | 0) === 0)) { jsx$1 = this$4.NIL$6 } else { const b$1 = new $c_sci_VectorBuilder().init___(); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1$1 = array[index]; b$1.$$plus$eq__O__sci_VectorBuilder(arg1$1); i = ((1 + i) | 0) }; jsx$1 = b$1.result__sci_Vector() } }; const xs = jsx$1.seq__sc_TraversableOnce(); $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(b, xs) }; return b.result__sci_Vector() }; } const $d_Lfastparse_parsers_Combinators$Either$ = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Either$: 0 }, false, "fastparse.parsers.Combinators$Either$", { Lfastparse_parsers_Combinators$Either$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Either$.prototype.$classData = $d_Lfastparse_parsers_Combinators$Either$; let $n_Lfastparse_parsers_Combinators$Either$ = (void 0); const $m_Lfastparse_parsers_Combinators$Either$ = (function() { if ((!$n_Lfastparse_parsers_Combinators$Either$)) { $n_Lfastparse_parsers_Combinators$Either$ = new $c_Lfastparse_parsers_Combinators$Either$().init___() }; return $n_Lfastparse_parsers_Combinators$Either$ }); class $c_Lfastparse_parsers_Combinators$NoCut$ extends $c_O { init___() { return this }; toString__T() { return "NoCut" }; } const $d_Lfastparse_parsers_Combinators$NoCut$ = new $TypeData().initClass({ Lfastparse_parsers_Combinators$NoCut$: 0 }, false, "fastparse.parsers.Combinators$NoCut$", { Lfastparse_parsers_Combinators$NoCut$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$NoCut$.prototype.$classData = $d_Lfastparse_parsers_Combinators$NoCut$; let $n_Lfastparse_parsers_Combinators$NoCut$ = (void 0); const $m_Lfastparse_parsers_Combinators$NoCut$ = (function() { if ((!$n_Lfastparse_parsers_Combinators$NoCut$)) { $n_Lfastparse_parsers_Combinators$NoCut$ = new $c_Lfastparse_parsers_Combinators$NoCut$().init___() }; return $n_Lfastparse_parsers_Combinators$NoCut$ }); class $c_Lfastparse_parsers_Combinators$NoTrace$ extends $c_O { init___() { return this }; toString__T() { return "NoTrace" }; } const $d_Lfastparse_parsers_Combinators$NoTrace$ = new $TypeData().initClass({ Lfastparse_parsers_Combinators$NoTrace$: 0 }, false, "fastparse.parsers.Combinators$NoTrace$", { Lfastparse_parsers_Combinators$NoTrace$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$NoTrace$.prototype.$classData = $d_Lfastparse_parsers_Combinators$NoTrace$; let $n_Lfastparse_parsers_Combinators$NoTrace$ = (void 0); const $m_Lfastparse_parsers_Combinators$NoTrace$ = (function() { if ((!$n_Lfastparse_parsers_Combinators$NoTrace$)) { $n_Lfastparse_parsers_Combinators$NoTrace$ = new $c_Lfastparse_parsers_Combinators$NoTrace$().init___() }; return $n_Lfastparse_parsers_Combinators$NoTrace$ }); class $c_Lfastparse_parsers_Combinators$Sequence$ extends $c_O { init___() { return this }; rec$2__p1__Lfastparse_parsers_Combinators$Sequence__Lfastparse_utils_ReprOps__Lfastparse_parsers_Combinators$Sequence$Flat(s, repr$1) { const ev2 = s.ev$2; const x1 = s.p1$2; if ((x1 instanceof $c_Lfastparse_parsers_Combinators$Sequence$Flat)) { const x2 = x1; const this$2 = x2.ps$2; const elem = new $c_Lfastparse_parsers_Combinators$Sequence$Chain().init___Lfastparse_core_Parser__Z__Lfastparse_core_Implicits$Sequencer(s.p2$2, s.cut$2, ev2); const this$1 = $m_scm_ArrayBuffer$(); const bf = this$1.ReusableCBFInstance$2; const x$6 = $f_sc_SeqLike__$$colon$plus__O__scg_CanBuildFrom__O(this$2, elem, bf); const x$7 = x2.p0$2; return new $c_Lfastparse_parsers_Combinators$Sequence$Flat().init___Lfastparse_core_Parser__scm_ArrayBuffer__Lfastparse_utils_ReprOps(x$7, x$6, repr$1) } else if ((x1 instanceof $c_Lfastparse_parsers_Combinators$Sequence)) { const x3 = x1; const res = this.rec$2__p1__Lfastparse_parsers_Combinators$Sequence__Lfastparse_utils_ReprOps__Lfastparse_parsers_Combinators$Sequence$Flat(x3, repr$1); const this$4 = res.ps$2; const elem$1 = new $c_Lfastparse_parsers_Combinators$Sequence$Chain().init___Lfastparse_core_Parser__Z__Lfastparse_core_Implicits$Sequencer(s.p2$2, s.cut$2, ev2); const this$3 = $m_scm_ArrayBuffer$(); const bf$1 = this$3.ReusableCBFInstance$2; const x$8 = $f_sc_SeqLike__$$colon$plus__O__scg_CanBuildFrom__O(this$4, elem$1, bf$1); const x$9 = res.p0$2; return new $c_Lfastparse_parsers_Combinators$Sequence$Flat().init___Lfastparse_core_Parser__scm_ArrayBuffer__Lfastparse_utils_ReprOps(x$9, x$8, repr$1) } else { $m_scm_ArrayBuffer$(); const array = [new $c_Lfastparse_parsers_Combinators$Sequence$Chain().init___Lfastparse_core_Parser__Z__Lfastparse_core_Implicits$Sequencer(s.p2$2, s.cut$2, ev2)]; let jsx$1; if (((array.length | 0) === 0)) { const this$6 = new $c_scm_ArrayBuffer().init___(); jsx$1 = this$6 } else { const b = new $c_scm_ArrayBuffer().init___(); const n = (array.length | 0); const n$1 = ((b.size0$6 + n) | 0); $f_scm_ResizableArray__ensureSize__I__V(b, n$1); const xs = b.array$6; const start = b.size0$6; let i = 0; let j = start; const x = (array.length | 0); const x$1 = ((x < n) ? x : n); const that = ((xs.u.length - start) | 0); const end = ((x$1 < that) ? x$1 : that); while ((i < end)) { const jsx$2 = j; const index = i; xs.u[jsx$2] = array[index]; i = ((1 + i) | 0); j = ((1 + j) | 0) }; b.size0$6 = ((b.size0$6 + n) | 0); jsx$1 = b }; return new $c_Lfastparse_parsers_Combinators$Sequence$Flat().init___Lfastparse_core_Parser__scm_ArrayBuffer__Lfastparse_utils_ReprOps(x1, jsx$1, repr$1) } }; } const $d_Lfastparse_parsers_Combinators$Sequence$ = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Sequence$: 0 }, false, "fastparse.parsers.Combinators$Sequence$", { Lfastparse_parsers_Combinators$Sequence$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Sequence$.prototype.$classData = $d_Lfastparse_parsers_Combinators$Sequence$; let $n_Lfastparse_parsers_Combinators$Sequence$ = (void 0); const $m_Lfastparse_parsers_Combinators$Sequence$ = (function() { if ((!$n_Lfastparse_parsers_Combinators$Sequence$)) { $n_Lfastparse_parsers_Combinators$Sequence$ = new $c_Lfastparse_parsers_Combinators$Sequence$().init___() }; return $n_Lfastparse_parsers_Combinators$Sequence$ }); class $c_Lfastparse_parsers_Terminals$IgnoreCase$ extends $c_O { init___() { return this }; toString__T() { return "IgnoreCase" }; } const $d_Lfastparse_parsers_Terminals$IgnoreCase$ = new $TypeData().initClass({ Lfastparse_parsers_Terminals$IgnoreCase$: 0 }, false, "fastparse.parsers.Terminals$IgnoreCase$", { Lfastparse_parsers_Terminals$IgnoreCase$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Terminals$IgnoreCase$.prototype.$classData = $d_Lfastparse_parsers_Terminals$IgnoreCase$; let $n_Lfastparse_parsers_Terminals$IgnoreCase$ = (void 0); const $m_Lfastparse_parsers_Terminals$IgnoreCase$ = (function() { if ((!$n_Lfastparse_parsers_Terminals$IgnoreCase$)) { $n_Lfastparse_parsers_Terminals$IgnoreCase$ = new $c_Lfastparse_parsers_Terminals$IgnoreCase$().init___() }; return $n_Lfastparse_parsers_Terminals$IgnoreCase$ }); class $c_Lio_kaitai_struct_GoClassCompiler extends $c_Lio_kaitai_struct_ClassCompiler { compileInstance__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__s_Option__V(className, instName, instSpec, endian) { const dataType = instSpec.dataTypeComposite__Lio_kaitai_struct_datatype_DataType(); if ((!instSpec.doc$1.isEmpty__Z())) { this.lang$1.attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(instName, instSpec.doc$1) }; this.lang$1.instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, instSpec.isNullable__Z()); this.lang$1.instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) { const x2 = instSpec; this.lang$1.attrParseIfHeader__Lio_kaitai_struct_format_Identifier__s_Option__V(instName, x2.ifExpr$2); this.lang$1.instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, x2.value$2); this.lang$1.attrParseIfFooter__s_Option__V(x2.ifExpr$2) } else if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x3 = instSpec; const this$1 = this.lang$1; $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__s_Option__V(this$1, x3, instName, endian) } else { throw new $c_s_MatchError().init___O(instSpec) }; this.lang$1.instanceSetCalculated__Lio_kaitai_struct_format_InstanceIdentifier__V(instName); this.lang$1.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.lang$1.instanceFooter__V() }; renderProc$1__p2__Lio_kaitai_struct_datatype_FixedEndian__V(result) { const x = $m_Lio_kaitai_struct_datatype_LittleEndian$(); let v; if ((x === result)) { const this$1 = $m_s_math_BigInt$(); v = new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(this$1.apply__I__s_math_BigInt(1)) } else { const x$3 = $m_Lio_kaitai_struct_datatype_BigEndian$(); if ((!(x$3 === result))) { throw new $c_s_MatchError().init___O(result) }; const this$2 = $m_s_math_BigInt$(); v = new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(this$2.apply__I__s_math_BigInt(0)) }; this.lang$1.instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(this.IS$undLE$undID$1, $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$(), v) }; compileClass__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.provider$1.nowClass$1 = curClass; $m_sci_List$(); const array = [new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), $m_Lio_kaitai_struct_format_IoIdentifier$(), $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(), ($m_Lio_kaitai_struct_format_AttrSpec$(), new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec($m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1)), new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), $m_Lio_kaitai_struct_format_RootIdentifier$(), new $c_Lio_kaitai_struct_datatype_DataType$UserTypeInstream().init___sci_List__s_Option__sc_Seq(this.topClassName$1, $m_s_None$(), $m_sc_Seq$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec($m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1)), new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), $m_Lio_kaitai_struct_format_ParentIdentifier$(), curClass.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType(), ($m_Lio_kaitai_struct_format_AttrSpec$(), new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec($m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1))]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$14 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$14); i = (((-1) + i) | 0) }; const jsx$2 = result; const jsx$1 = $m_Lio_kaitai_struct_languages_components_ExtraAttrs$().forClassSpec__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_languages_components_ExtraAttrs__sci_List(curClass, this.lang$1); const this$15 = $m_sci_List$(); const extraAttrs = jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$15.ReusableCBFInstance$2); if ((!curClass.doc$1.isEmpty__Z())) { this.lang$1.classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(curClass.name$1, curClass.doc$1) }; this.compileEnums__Lio_kaitai_struct_format_ClassSpec__V(curClass); this.lang$1.classHeader__sci_List__V(curClass.name$1); const jsx$5 = curClass.seq$1; const jsx$4 = curClass.params$1; const this$16 = $m_sci_List$(); const jsx$3 = jsx$5.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$4, this$16.ReusableCBFInstance$2); const this$17 = $m_sci_List$(); this.compileAttrDeclarations__sci_List__V(jsx$3.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(extraAttrs, this$17.ReusableCBFInstance$2)); curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instName = x0$1.$$und1__O(); const instSpec = x0$1.$$und2__O(); $this.compileInstanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__V(instName, instSpec) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.lang$1.classFooter__sci_List__V(curClass.name$1); this.compileReadFunction__Lio_kaitai_struct_format_ClassSpec__V(curClass); this.compileInstances__Lio_kaitai_struct_format_ClassSpec__V(curClass); const jsx$6 = curClass.seq$1; const this$18 = $m_sci_List$(); this.compileAttrReaders__sci_List__V(jsx$6.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(extraAttrs, this$18.ReusableCBFInstance$2)); this.compileSubclasses__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; compileReadFunction__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.lang$1.classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(curClass.name$1, curClass.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType(), this.topClassName$1, curClass.meta$1.endian$1.contains__O__Z($m_Lio_kaitai_struct_datatype_InheritedEndian$()), curClass.params$1); this.compileEagerRead__sci_List__s_Option__V(curClass.seq$1, curClass.meta$1.endian$1); this.lang$1.classConstructorFooter__V() }; compileCalcEndian__Lio_kaitai_struct_datatype_CalcEndian__V(ce) { this.lang$1.switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this.IS$undLE$undID$1, ce.on$1, ce.cases$1, new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(result$2) { const result = result$2; $this.renderProc$1__p2__Lio_kaitai_struct_datatype_FixedEndian__V(result) }) })(this)), new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2) { return (function(result$3$2) { const result$3 = result$3$2; this$2.renderProc$1__p2__Lio_kaitai_struct_datatype_FixedEndian__V(result$3) }) })(this))) }; topClass__Lio_kaitai_struct_format_ClassSpec() { return this.topClass$1 }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig(classSpecs, topClass, config) { $c_Lio_kaitai_struct_ClassCompiler.prototype.init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompilerStatic.call(this, classSpecs, topClass, config, $m_Lio_kaitai_struct_languages_GoCompiler$()); return this }; } const $d_Lio_kaitai_struct_GoClassCompiler = new $TypeData().initClass({ Lio_kaitai_struct_GoClassCompiler: 0 }, false, "io.kaitai.struct.GoClassCompiler", { Lio_kaitai_struct_GoClassCompiler: 1, Lio_kaitai_struct_ClassCompiler: 1, O: 1, Lio_kaitai_struct_AbstractCompiler: 1 }); $c_Lio_kaitai_struct_GoClassCompiler.prototype.$classData = $d_Lio_kaitai_struct_GoClassCompiler; class $c_Lio_kaitai_struct_HtmlClassCompiler extends $c_Lio_kaitai_struct_DocClassCompiler { compileSeqAttr__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_AttrSpec__s_Option__Lio_kaitai_struct_format_Sized__Lio_kaitai_struct_format_Sized__V(classSpec, attr, seqPos, sizeElement, sizeContainer) { this.out$1.puts__T__V(""); const jsx$1 = this.out$1; const this$1 = $m_Lio_kaitai_struct_GraphvizClassCompiler$().seqPosToStr__s_Option__s_Option(seqPos); jsx$1.puts__T__V((("")); this.out$1.puts__T__V(""); this.out$1.puts__T__V((("")); this.out$1.puts__T__V((("")); const jsx$2 = this.out$1; const this$2 = attr.doc$1.summary$1; jsx$2.puts__T__V((("")); this.out$1.puts__T__V("") }; headerByIndent__T() { return ("h" + ((1 + this.out$1.indentLevel$1) | 0)) }; expression__s_Option__T(exOpt) { if ((exOpt instanceof $c_s_Some)) { const x2 = exOpt; const ex = x2.value$2; return this.translator$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ex) } else { const x = $m_s_None$(); if ((x === exOpt)) { return "" } else { throw new $c_s_MatchError().init___O(exOpt) } } }; outFileName__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = topClass.name$1; return ($f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", "") + ".html") }; fileFooter__Lio_kaitai_struct_format_ClassSpec__V(topClass) { const jsx$1 = this.out$1; const this$2 = new $c_sci_StringOps().init___T("\n | \n | \n | \n | \n | \n | \n | \n |\n "); jsx$1.puts__T__V($f_sci_StringLike__stripMargin__C__T(this$2, 124)) }; compileValueInstance__Lio_kaitai_struct_format_ValueInstanceSpec__V(vis) { this.out$1.puts__T__V(("value instance: " + vis)) }; compileEnum__T__Lio_kaitai_struct_format_EnumSpec__V(enumName, enumColl) { this.out$1.puts__T__V((("")); this.out$1.puts__T__V((((((("<" + this.headerByIndent__T()) + ">Enum: ") + enumName) + "")); const this$1 = this.out$1; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$1.puts__T__V("
" + (this$1.isEmpty__Z() ? "???" : this$1.get__O())) + "..." + attr.id$1.humanReadable__T()) + "" + $m_Lio_kaitai_struct_HtmlClassCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attr.dataType$1)) + "" + (this$2.isEmpty__Z() ? "" : this$2.get__O())) + "
"); this.out$1.puts__T__V(""); this.out$1.puts__T__V(""); this.out$1.puts__T__V(""); enumColl.sortedSeq__sc_Seq().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const value = x0$1.$$und2__O(); $this.out$1.puts__T__V(""); const jsx$3 = $this.out$1; const jsx$2 = new $c_sjsr_RuntimeLong().init___I__I(lo, hi); const jsx$1 = value.name$1; const this$2 = value.doc$1.summary$1; jsx$3.puts__T__V((((((("")); $this.out$1.puts__T__V("") } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.out$1.puts__T__V("
IDNameNote
" + jsx$2) + "") + jsx$1) + "") + (this$2.isEmpty__Z() ? "" : this$2.get__O())) + "
") }; compileParseInstance__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_ParseInstanceSpec__V(classSpec, inst) { const jsx$1 = this.out$1; const this$1 = inst.id$2; jsx$1.puts__T__V((("

Parse instance: " + this$1.name$2) + "

")); this.out$1.puts__T__V(""); this.out$1.puts__T__V(""); this.out$1.puts__T__V((("")); this.out$1.puts__T__V(""); const jsx$2 = this.out$1; const this$2 = inst.id$2; jsx$2.puts__T__V((("")); this.out$1.puts__T__V((("")); const jsx$3 = this.out$1; const this$3 = inst.doc$1.summary$1; jsx$3.puts__T__V((("")); this.out$1.puts__T__V(""); this.out$1.puts__T__V("
" + this.expression__s_Option__T(inst.pos$2)) + "..." + this$2.name$2) + "" + $m_Lio_kaitai_struct_HtmlClassCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(inst.dataType$2)) + "" + (this$3.isEmpty__Z() ? "" : this$3.get__O())) + "
") }; classHeader__Lio_kaitai_struct_format_ClassSpec__V(classSpec) { this.out$1.puts__T__V((("")); const jsx$2 = this.out$1; const jsx$1 = this.headerByIndent__T(); const this$1 = classSpec.name$1; const name = $f_sc_LinearSeqOptimized__last__O(this$1); jsx$2.puts__T__V((((((("<" + jsx$1) + ">Type: ") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + "")); const this$3 = this.out$1; this$3.sb$2.append__T__scm_StringBuilder("\n"); const this$4 = classSpec.doc$1.summary$1; if ((!this$4.isEmpty__Z())) { const arg1 = this$4.get__O(); const summary = arg1; this.out$1.puts__T__V((("

" + summary) + "

")) }; this.out$1.inc__V() }; seqHeader__Lio_kaitai_struct_format_ClassSpec__V(classSpec) { this.out$1.puts__T__V(""); this.out$1.puts__T__V("") }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass) { $c_Lio_kaitai_struct_DocClassCompiler.prototype.init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec.call(this, classSpecs, topClass); return this }; fileHeader__Lio_kaitai_struct_format_ClassSpec__V(topClass) { const jsx$2 = this.out$1; const this$1 = topClass.name$1; const name = $f_sc_LinearSeqOptimized__last__O(this$1); const jsx$1 = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name); const this$3 = topClass.name$1; const name$1 = $f_sc_LinearSeqOptimized__last__O(this$3); const x = (((("\n |\n |\n | \n | \n | \n | \n |\n | \n | \n |\n | " + jsx$1) + " format specification\n | \n | \n
\n |

") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$1)) + " format specification

\n |\n "); const this$6 = new $c_sci_StringOps().init___T(x); jsx$2.puts__T__V($f_sci_StringLike__stripMargin__C__T(this$6, 124)) }; } const $d_Lio_kaitai_struct_HtmlClassCompiler = new $TypeData().initClass({ Lio_kaitai_struct_HtmlClassCompiler: 0 }, false, "io.kaitai.struct.HtmlClassCompiler", { Lio_kaitai_struct_HtmlClassCompiler: 1, Lio_kaitai_struct_DocClassCompiler: 1, O: 1, Lio_kaitai_struct_AbstractCompiler: 1 }); $c_Lio_kaitai_struct_HtmlClassCompiler.prototype.$classData = $d_Lio_kaitai_struct_HtmlClassCompiler; class $c_Lio_kaitai_struct_NimClassCompiler extends $c_Lio_kaitai_struct_ClassCompiler { constructor() { super(); this.nimlang$2 = null }; compileInstance__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__s_Option__V(className, instName, instSpec, endian) { const dataType = instSpec.dataTypeComposite__Lio_kaitai_struct_datatype_DataType(); this.lang$1.instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, instSpec.isNullable__Z()); this.compileInstanceDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_InstanceSpec__V(instName, instSpec); this.lang$1.instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) { const x2 = instSpec; this.lang$1.attrParseIfHeader__Lio_kaitai_struct_format_Identifier__s_Option__V(instName, x2.ifExpr$2); this.lang$1.instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, x2.value$2); this.lang$1.attrParseIfFooter__s_Option__V(x2.ifExpr$2); this.lang$1.instanceSetCalculated__Lio_kaitai_struct_format_InstanceIdentifier__V(instName) } else if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x3 = instSpec; const this$1 = this.lang$1; $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__s_Option__V(this$1, x3, instName, endian) } else { throw new $c_s_MatchError().init___O(instSpec) }; this.lang$1.instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.lang$1.instanceFooter__V() }; compileSeq__sci_List__s_Option__V(seq, defEndian) { let elem$1 = false; elem$1 = false; let these = seq; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; const nowUnaligned = this.isUnalignedBits__Lio_kaitai_struct_datatype_DataType__Z(attr.dataType$1); if ((elem$1 && (!nowUnaligned))) { this.lang$1.alignToByte__T__V(this.lang$1.normalIO__T()) }; if ((!attr.doc$1.isEmpty__Z())) { this.lang$1.attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(attr.id$1, attr.doc$1) }; const this$2 = this.lang$1; const id = attr.id$1; $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__s_Option__V(this$2, attr, id, defEndian); elem$1 = nowUnaligned; const this$3 = these; these = this$3.tail__sci_List() } }; compile__Lio_kaitai_struct_CompileLog$SpecSuccess() { const jsx$1 = this.lang$1; const theClass = this.topClass$1; jsx$1.fileHeader__T__V(this.nimlang$2.namespaced__sci_List__T(theClass.name$1)); this.compileOpaqueClasses__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); this.compileImports__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); this.nimlang$2.typeSectionHeader__V(); this.compileTypes__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); this.nimlang$2.typeSectionFooter__V(); this.compileReadsForward__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); const this$1 = this.nimlang$2; const this$2 = this$1.out$2; this$2.sb$2.append__T__scm_StringBuilder("\n"); this.compileInstancesForward__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); const this$3 = this.nimlang$2; const this$4 = this$3.out$2; this$4.sb$2.append__T__scm_StringBuilder("\n"); this.compileProcs__Lio_kaitai_struct_format_ClassSpec__V(this.topClass$1); const theClass$1 = this.topClass$1; const jsx$2 = this.nimlang$2.namespaced__sci_List__T(theClass$1.name$1); const this$6 = this.lang$1.results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this.topClass$1); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const fileName = x0$1.$$und1__O(); const contents = x0$1.$$und2__O(); return new $c_Lio_kaitai_struct_CompileLog$FileSuccess().init___T__T(fileName, contents) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this)); const this$5 = $m_sci_Iterable$(); const bf = this$5.ReusableCBFInstance$2; return new $c_Lio_kaitai_struct_CompileLog$SpecSuccess().init___T__sci_List(jsx$2, $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this$6, f, bf).toList__sci_List()) }; compileInstances__Lio_kaitai_struct_format_ClassSpec__V(curClass) { curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instName = x0$1.$$und1__O(); const instSpec = x0$1.$$und2__O(); $this.compileInstance__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__s_Option__V(curClass$1.name$1, instName, instSpec, curClass$1.meta$1.endian$1) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass))) }; compileProcsRec__Lio_kaitai_struct_format_ClassSpec__V(curClass) { curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const subClass = x0$1.$$und2__O(); $this.compileProcs__Lio_kaitai_struct_format_ClassSpec__V(subClass) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))) }; compileReadsForward__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.provider$1.nowClass$1 = curClass; this.nimlang$2.classForwardDeclaration__sci_List__V(curClass.name$1); this.compileReadsForwardRec__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; compileImports__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.provider$1.nowClass$1 = curClass; const this$1 = curClass.meta$1.imports$1; let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const file = arg1; this.lang$1.importFile__T__V(file); const this$2 = these; these = this$2.tail__sci_List() }; this.compileImportsRec__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; compileTypes__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.provider$1.nowClass$1 = curClass; this.nimlang$2.classHeader__sci_List__V(curClass.name$1); const jsx$6 = curClass.seq$1; const jsx$5 = curClass.params$1; const this$1 = $m_sci_List$(); const jsx$4 = jsx$6.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$5, this$1.ReusableCBFInstance$2); $m_sci_List$(); const array = [new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), $m_Lio_kaitai_struct_format_ParentIdentifier$(), curClass.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType(), ($m_Lio_kaitai_struct_format_AttrSpec$(), new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec($m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1))]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$8 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$8); i = (((-1) + i) | 0) }; const jsx$3 = result; const this$9 = $m_sci_List$(); const jsx$2 = jsx$4.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$3, this$9.ReusableCBFInstance$2); const jsx$1 = $m_Lio_kaitai_struct_languages_components_ExtraAttrs$().forClassSpec__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_languages_components_ExtraAttrs__sci_List(curClass, this.lang$1); const this$10 = $m_sci_List$(); const allAttrs = jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$10.ReusableCBFInstance$2); this.compileAttrDeclarations__sci_List__V(allAttrs); curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instName = x0$1.$$und1__O(); const instSpec = x0$1.$$und2__O(); $this.compileInstanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__V(instName, instSpec) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.nimlang$2.classFooter__sci_List__V(curClass.name$1); this.compileEnums__Lio_kaitai_struct_format_ClassSpec__V(curClass); this.compileTypesRec__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; compileProcs__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.provider$1.nowClass$1 = curClass; this.compileClassDoc__Lio_kaitai_struct_format_ClassSpec__V(curClass); this.compileEagerRead__sci_List__s_Option__V(curClass.seq$1, curClass.meta$1.endian$1); this.compileInstances__Lio_kaitai_struct_format_ClassSpec__V(curClass); this.nimlang$2.fromFile__sci_List__V(curClass.name$1); this.compileProcsRec__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; compileInstancesForwardRec__Lio_kaitai_struct_format_ClassSpec__V(curClass) { curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const subClass = x0$1.$$und2__O(); $this.compileInstancesForward__Lio_kaitai_struct_format_ClassSpec__V(subClass) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))) }; compileTypesRec__Lio_kaitai_struct_format_ClassSpec__V(curClass) { curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const subClass = x0$1.$$und2__O(); $this.compileTypes__Lio_kaitai_struct_format_ClassSpec__V(subClass) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))) }; topClass__Lio_kaitai_struct_format_ClassSpec() { return this.topClass$1 }; compileImportsRec__Lio_kaitai_struct_format_ClassSpec__V(curClass) { curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const subClass = x0$1.$$und2__O(); $this.compileImports__Lio_kaitai_struct_format_ClassSpec__V(subClass) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))) }; compileReadsForwardRec__Lio_kaitai_struct_format_ClassSpec__V(curClass) { curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const subClass = x0$1.$$und2__O(); $this.compileReadsForward__Lio_kaitai_struct_format_ClassSpec__V(subClass) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))) }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig(classSpecs, topClass, config) { $c_Lio_kaitai_struct_ClassCompiler.prototype.init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompilerStatic.call(this, classSpecs, topClass, config, $m_Lio_kaitai_struct_languages_NimCompiler$()); this.nimlang$2 = this.lang$1; return this }; compileInstancesForward__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.provider$1.nowClass$1 = curClass; curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instName = x0$1.$$und1__O(); const instSpec = x0$1.$$und2__O(); $this.nimlang$2.instanceForwardDeclaration__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(curClass$1.name$1, instName, instSpec.dataTypeComposite__Lio_kaitai_struct_datatype_DataType()) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass))); this.compileInstancesForwardRec__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; compileEagerRead__sci_List__s_Option__V(seq, endian) { let rc12 = false; let x4 = null; matchEnd13: { let jsx$1; matchEnd16: { const x = $m_s_None$(); if ((x === endian)) { jsx$1 = true; break matchEnd16 }; if ((endian instanceof $c_s_Some)) { const x2 = endian; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_FixedEndian)) { jsx$1 = true; break matchEnd16 } }; jsx$1 = false }; if (jsx$1) { this.compileSeqProc__sci_List__s_Option__V(seq, $m_s_None$()); break matchEnd13 }; if ((endian instanceof $c_s_Some)) { rc12 = true; x4 = endian; const ce = x4.value$2; if ((ce instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { const x9 = ce; this.compileSeqProc__sci_List__s_Option__V(seq, new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_LittleEndian$())); this.compileSeqProc__sci_List__s_Option__V(seq, new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_BigEndian$())); this.lang$1.readHeader__s_Option__Z__V($m_s_None$(), false); this.compileCalcEndian__Lio_kaitai_struct_datatype_CalcEndian__V(x9); this.lang$1.runReadCalc__V(); this.lang$1.readFooter__V(); break matchEnd13 } }; if (rc12) { const p6 = x4.value$2; const x$3 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$3 === p6)) { this.compileSeqProc__sci_List__s_Option__V(seq, new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_LittleEndian$())); this.compileSeqProc__sci_List__s_Option__V(seq, new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_BigEndian$())); this.lang$1.readHeader__s_Option__Z__V($m_s_None$(), false); this.lang$1.runReadCalc__V(); this.lang$1.readFooter__V(); break matchEnd13 } }; throw new $c_s_MatchError().init___O(endian) } }; } const $d_Lio_kaitai_struct_NimClassCompiler = new $TypeData().initClass({ Lio_kaitai_struct_NimClassCompiler: 0 }, false, "io.kaitai.struct.NimClassCompiler", { Lio_kaitai_struct_NimClassCompiler: 1, Lio_kaitai_struct_ClassCompiler: 1, O: 1, Lio_kaitai_struct_AbstractCompiler: 1 }); $c_Lio_kaitai_struct_NimClassCompiler.prototype.$classData = $d_Lio_kaitai_struct_NimClassCompiler; class $c_Lio_kaitai_struct_RustClassCompiler extends $c_Lio_kaitai_struct_ClassCompiler { compileInstance__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__s_Option__V(className, instName, instSpec, endian) { const dataType = instSpec.dataTypeComposite__Lio_kaitai_struct_datatype_DataType(); if ((!instSpec.doc$1.isEmpty__Z())) { this.lang$1.attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(instName, instSpec.doc$1) }; this.lang$1.instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, instSpec.isNullable__Z()); this.lang$1.instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); if ((instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) { const x2 = instSpec; this.lang$1.attrParseIfHeader__Lio_kaitai_struct_format_Identifier__s_Option__V(instName, x2.ifExpr$2); this.lang$1.instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, x2.value$2); this.lang$1.attrParseIfFooter__s_Option__V(x2.ifExpr$2) } else if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const x3 = instSpec; const this$1 = this.lang$1; const defEndian = $m_s_None$(); $f_Lio_kaitai_struct_languages_components_CommonReads__attrParse__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__s_Option__V(this$1, x3, instName, defEndian) } else { throw new $c_s_MatchError().init___O(instSpec) }; this.lang$1.instanceSetCalculated__Lio_kaitai_struct_format_InstanceIdentifier__V(instName); this.lang$1.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.lang$1.instanceFooter__V() }; compileInstances__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.lang$1.instanceDeclHeader__sci_List__V(curClass.name$1); curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instName = x0$1.$$und1__O(); const instSpec = x0$1.$$und2__O(); $this.compileInstance__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__s_Option__V(curClass$1.name$1, instName, instSpec, curClass$1.meta$1.endian$1) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, curClass))) }; compileClass__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.provider$1.nowClass$1 = curClass; const extraAttrs = $m_scm_ListBuffer$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$()); extraAttrs.$$plus$eq__O__scm_ListBuffer(new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), $m_Lio_kaitai_struct_format_IoIdentifier$(), $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(), ($m_Lio_kaitai_struct_format_AttrSpec$(), new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec($m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1))); extraAttrs.$$plus$eq__O__scm_ListBuffer(new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), $m_Lio_kaitai_struct_format_RootIdentifier$(), new $c_Lio_kaitai_struct_datatype_DataType$UserTypeInstream().init___sci_List__s_Option__sc_Seq(this.topClassName$1, $m_s_None$(), $m_sc_Seq$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec($m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1))); extraAttrs.$$plus$eq__O__scm_ListBuffer(new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec($m_sci_Nil$(), $m_Lio_kaitai_struct_format_ParentIdentifier$(), curClass.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType(), ($m_Lio_kaitai_struct_format_AttrSpec$(), new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec($m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$())), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_s_None$()), ($m_Lio_kaitai_struct_format_AttrSpec$(), $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1))); extraAttrs.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer($m_Lio_kaitai_struct_languages_components_ExtraAttrs$().forClassSpec__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_languages_components_ExtraAttrs__sci_List(curClass, this.lang$1)); if ((!curClass.doc$1.isEmpty__Z())) { this.lang$1.classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(curClass.name$1, curClass.doc$1) }; this.lang$1.classHeader__sci_List__V(curClass.name$1); const jsx$1 = curClass.seq$1; const this$11 = $m_sci_List$(); this.compileAttrDeclarations__sci_List__V(jsx$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(extraAttrs, this$11.ReusableCBFInstance$2)); curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const instName = x0$1.$$und1__O(); const instSpec = x0$1.$$und2__O(); $this.compileInstanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec__V(instName, instSpec) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.compileReadFunction__Lio_kaitai_struct_format_ClassSpec__V(curClass); this.compileInstances__Lio_kaitai_struct_format_ClassSpec__V(curClass); const jsx$2 = curClass.seq$1; const this$12 = $m_sci_List$(); this.compileAttrReaders__sci_List__V(jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(extraAttrs, this$12.ReusableCBFInstance$2)); this.lang$1.classFooter__sci_List__V(curClass.name$1); this.compileEnums__Lio_kaitai_struct_format_ClassSpec__V(curClass); this.compileSubclasses__Lio_kaitai_struct_format_ClassSpec__V(curClass) }; compileReadFunction__Lio_kaitai_struct_format_ClassSpec__V(curClass) { this.lang$1.classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(curClass.name$1, curClass.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType(), this.topClassName$1, curClass.meta$1.endian$1.contains__O__Z($m_Lio_kaitai_struct_datatype_InheritedEndian$()), curClass.params$1); const x1 = curClass.meta$1.endian$1; let defEndian; matchEnd5: { if ((x1 instanceof $c_s_Some)) { const x2 = x1; const fe = x2.value$2; if ((fe instanceof $c_Lio_kaitai_struct_datatype_FixedEndian)) { const x3 = fe; defEndian = new $c_s_Some().init___O(x3); break matchEnd5 } }; defEndian = $m_s_None$() }; this.lang$1.readHeader__s_Option__Z__V(defEndian, false); this.compileSeq__sci_List__s_Option__V(curClass.seq$1, defEndian); this.lang$1.classConstructorFooter__V() }; topClass__Lio_kaitai_struct_format_ClassSpec() { return this.topClass$1 }; init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig(classSpecs, topClass, config) { $c_Lio_kaitai_struct_ClassCompiler.prototype.init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompilerStatic.call(this, classSpecs, topClass, config, $m_Lio_kaitai_struct_languages_RustCompiler$()); return this }; } const $d_Lio_kaitai_struct_RustClassCompiler = new $TypeData().initClass({ Lio_kaitai_struct_RustClassCompiler: 0 }, false, "io.kaitai.struct.RustClassCompiler", { Lio_kaitai_struct_RustClassCompiler: 1, Lio_kaitai_struct_ClassCompiler: 1, O: 1, Lio_kaitai_struct_AbstractCompiler: 1 }); $c_Lio_kaitai_struct_RustClassCompiler.prototype.$classData = $d_Lio_kaitai_struct_RustClassCompiler; class $c_Lio_kaitai_struct_datatype_DataType$ArrayType extends $c_Lio_kaitai_struct_datatype_DataType$ComplexDataType { constructor() { super(); this.elType$2 = null }; init___Lio_kaitai_struct_datatype_DataType(elType) { this.elType$2 = elType; return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$ArrayType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$ArrayType))) }); class $c_Lio_kaitai_struct_datatype_DataType$BytesType extends $c_O { asNonOwning__Lio_kaitai_struct_datatype_DataType() { return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$BytesType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$BytesType))) }); class $c_Lio_kaitai_struct_datatype_DataType$FloatType extends $c_Lio_kaitai_struct_datatype_DataType$NumericType { } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$FloatType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$FloatType))) }); class $c_Lio_kaitai_struct_datatype_DataType$IntType extends $c_Lio_kaitai_struct_datatype_DataType$NumericType { } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$IntType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$IntType))) }); const $d_Lio_kaitai_struct_datatype_DataType$IntType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$IntType: 0 }, false, "io.kaitai.struct.datatype.DataType$IntType", { Lio_kaitai_struct_datatype_DataType$IntType: 1, Lio_kaitai_struct_datatype_DataType$NumericType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1 }); $c_Lio_kaitai_struct_datatype_DataType$IntType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$IntType; class $c_Lio_kaitai_struct_datatype_DataType$StructType extends $c_Lio_kaitai_struct_datatype_DataType$ComplexDataType { } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$StructType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$StructType))) }); class $c_Lio_kaitai_struct_datatype_DataType$SwitchType$ extends $c_O { constructor() { super(); this.ELSE$undCONST$1 = null; this.LEGAL$undKEYS$undSWITCH$1 = null }; init___() { $n_Lio_kaitai_struct_datatype_DataType$SwitchType$ = this; this.ELSE$undCONST$1 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T("_")); const jsx$1 = $m_s_Predef$().Set$2; const array = ["switch-on", "cases"]; this.LEGAL$undKEYS$undSWITCH$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); return this }; fromYaml1__sci_Map__sci_List__T2(switchSpec, path) { const _on = $m_Lio_kaitai_struct_format_ParseUtils$().getValueStr__sci_Map__T__sci_List__T(switchSpec, "switch-on", path); const x1 = switchSpec.get__O__s_Option("cases"); const x = $m_s_None$(); let _cases; if ((x === x1)) { _cases = $m_s_Predef$().Map$2.apply__sc_Seq__sc_GenMap($m_sci_Nil$()) } else { if ((!(x1 instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(x1) }; const x2 = x1; const x$3 = x2.value$2; const jsx$2 = $m_Lio_kaitai_struct_format_ParseUtils$(); $m_sci_List$(); const array = ["cases"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); _cases = jsx$2.asMapStrStr__O__sci_List__sci_Map(x$3, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)) }; $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(switchSpec, this.LEGAL$undKEYS$undSWITCH$1, path, $m_s_None$()); return new $c_T2().init___O__O(_on, _cases) }; } const $d_Lio_kaitai_struct_datatype_DataType$SwitchType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$SwitchType$: 0 }, false, "io.kaitai.struct.datatype.DataType$SwitchType$", { Lio_kaitai_struct_datatype_DataType$SwitchType$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$SwitchType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$SwitchType$; let $n_Lio_kaitai_struct_datatype_DataType$SwitchType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$SwitchType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$SwitchType$)) { $n_Lio_kaitai_struct_datatype_DataType$SwitchType$ = new $c_Lio_kaitai_struct_datatype_DataType$SwitchType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$SwitchType$ }); class $c_Lio_kaitai_struct_format_AttrSpec$ extends $c_O { constructor() { super(); this.LEGAL$undKEYS$1 = null; this.LEGAL$undKEYS$undBYTES$1 = null; this.LEGAL$undKEYS$undSTR$1 = null; this.LEGAL$undKEYS$undENUM$1 = null; this.LEGAL$undKEYS$undSWITCH$1 = null }; init___() { $n_Lio_kaitai_struct_format_AttrSpec$ = this; const jsx$1 = $m_s_Predef$().Set$2; const array = ["id", "doc", "doc-ref", "type", "if", "terminator", "consume", "include", "eos-error", "valid", "repeat"]; this.LEGAL$undKEYS$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); const jsx$2 = $m_s_Predef$().Set$2; const array$1 = ["contents", "size", "size-eos", "pad-right", "parent", "process"]; this.LEGAL$undKEYS$undBYTES$1 = jsx$2.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array$1)); const jsx$3 = $m_s_Predef$().Set$2; const array$2 = ["size", "size-eos", "pad-right", "encoding"]; this.LEGAL$undKEYS$undSTR$1 = jsx$3.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array$2)); const jsx$4 = $m_s_Predef$().Set$2; const array$3 = ["enum"]; this.LEGAL$undKEYS$undENUM$1 = jsx$4.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array$3)); const jsx$5 = $m_s_Predef$().Set$2; const array$4 = ["switch-on", "cases"]; this.LEGAL$undKEYS$undSWITCH$1 = jsx$5.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array$4)); return this }; fromYaml2__sci_Map__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrSpec(srcMap, path, metaDef, id) { const doc = $m_Lio_kaitai_struct_format_DocSpec$().fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_DocSpec(srcMap, path); const process = $m_Lio_kaitai_struct_format_ProcessExpr$().fromStr__s_Option__sci_List__s_Option($m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "process", path), path); const this$1 = srcMap.get__O__s_Option("contents"); let contents; if (this$1.isEmpty__Z()) { contents = $m_s_None$() } else { const arg1 = this$1.get__O(); const jsx$2 = $m_Lio_kaitai_struct_format_AttrSpec$(); $m_sci_List$(); const array = ["contents"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$5 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$5); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$6 = $m_sci_List$(); contents = new $c_s_Some().init___O(jsx$2.parseContentSpec__O__sci_List__AB(arg1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$6.ReusableCBFInstance$2))) }; const size = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(srcMap, "size", path); const this$7 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueBool__sci_Map__T__sci_List__s_Option(srcMap, "size-eos", path); const sizeEos = (!(!(this$7.isEmpty__Z() ? false : this$7.get__O()))); const ifExpr = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(srcMap, "if", path); const encoding = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "encoding", path); const terminator = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueInt__sci_Map__T__sci_List__s_Option(srcMap, "terminator", path); const this$8 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueBool__sci_Map__T__sci_List__s_Option(srcMap, "consume", path); const consume = (!(!(this$8.isEmpty__Z() || this$8.get__O()))); const this$9 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueBool__sci_Map__T__sci_List__s_Option(srcMap, "include", path); const include = (!(!(this$9.isEmpty__Z() ? false : this$9.get__O()))); const this$10 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueBool__sci_Map__T__sci_List__s_Option(srcMap, "eos-error", path); const eosError = (!(!(this$10.isEmpty__Z() || this$10.get__O()))); const padRight = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueInt__sci_Map__T__sci_List__s_Option(srcMap, "pad-right", path); const $enum = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "enum", path); const parent = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(srcMap, "parent", path); const this$11 = srcMap.get__O__s_Option("valid"); let valid; if (this$11.isEmpty__Z()) { valid = $m_s_None$() } else { const arg1$1 = this$11.get__O(); const jsx$4 = $m_Lio_kaitai_struct_format_ValidationSpec$(); $m_sci_List$(); const array$1 = ["valid"]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$15 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$15); i$1 = (((-1) + i$1) | 0) }; const jsx$3 = result$1; const this$16 = $m_sci_List$(); valid = new $c_s_Some().init___O(jsx$4.fromYaml__O__sci_List__Lio_kaitai_struct_format_ValidationSpec(arg1$1, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$3, this$16.ReusableCBFInstance$2))) }; const x1 = new $c_T2().init___O__O(contents, valid); let valid2; matchEnd16: { const p2 = x1.$$und1$f; const x$2 = $m_s_None$(); if ((x$2 === p2)) { valid2 = valid; break matchEnd16 }; const p4 = x1.$$und1$f; const p5 = x1.$$und2$f; if ((p4 instanceof $c_s_Some)) { const x6 = p4; const byteArray = x6.value$2; const x$4 = $m_s_None$(); if ((x$4 === p5)) { const this$19 = $m_s_Array$(); new $c_s_Predef$DummyImplicit().init___(); new $c_s_FallbackArrayBuilding$$anon$1().init___s_FallbackArrayBuilding(this$19); const b = $m_scm_ArraySeq$().newBuilder__scm_Builder(); const x1$1 = byteArray.u.length; switch (x1$1) { case (-1): { break } default: { b.sizeHint__I__V(x1$1) } }; let i$2 = 0; const len = byteArray.u.length; while ((i$2 < len)) { const idx = i$2; const arg1$2 = byteArray.u[idx]; const x$6 = (arg1$2 | 0); const this$23 = $m_s_math_BigInt$(); const i$3 = (255 & x$6); b.$$plus$eq__O__scm_Builder(new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(this$23.apply__I__s_math_BigInt(i$3))); i$2 = ((1 + i$2) | 0) }; valid2 = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_format_ValidationEq().init___Lio_kaitai_struct_exprlang_Ast$expr(new $c_Lio_kaitai_struct_exprlang_Ast$expr$List().init___sc_Seq(b.result__O()))); break matchEnd16 } }; const p7 = x1.$$und1$f; const p8 = x1.$$und2$f; if (((p7 instanceof $c_s_Some) && (p8 instanceof $c_s_Some))) { throw $m_Lio_kaitai_struct_problems_KSYParseError$().withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("`contents` and `valid` can't be used together", path) }; throw new $c_s_MatchError().init___O(x1) }; const typObj = srcMap.get__O__s_Option("type"); const yamlAttrArgs = new $c_Lio_kaitai_struct_format_YamlAttrArgs().init___s_Option__Z__s_Option__s_Option__Z__Z__Z__s_Option__s_Option__s_Option__s_Option__s_Option(size, sizeEos, encoding, terminator, include, consume, eosError, padRight, contents, $enum, parent, process); const x$7 = $m_s_None$(); let dataType; if ((x$7 === typObj)) { dataType = $m_Lio_kaitai_struct_datatype_DataType$().fromYaml__s_Option__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_YamlAttrArgs__Lio_kaitai_struct_datatype_DataType($m_s_None$(), path, metaDef, yamlAttrArgs) } else { if ((!(typObj instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(typObj) }; const x2 = typObj; const x$9 = x2.value$2; if ($is_T(x$9)) { const x2$2 = x$9; dataType = $m_Lio_kaitai_struct_datatype_DataType$().fromYaml__s_Option__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_YamlAttrArgs__Lio_kaitai_struct_datatype_DataType(new $c_s_Some().init___O(x2$2), path, metaDef, yamlAttrArgs) } else { if ((!$is_sci_Map(x$9))) { const jsx$6 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array$2 = ["type"]; let i$4 = (((-1) + (array$2.length | 0)) | 0); let result$2 = $m_sci_Nil$(); while ((i$4 >= 0)) { const this$27 = result$2; const index$2 = i$4; const x$3 = array$2[index$2]; result$2 = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$27); i$4 = (((-1) + i$4) | 0) }; const jsx$5 = result$2; const this$28 = $m_sci_List$(); throw jsx$6.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(("expected map or string, found " + x$9), path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$5, this$28.ReusableCBFInstance$2)) }; const x3 = x$9; const switchMapStr = $m_Lio_kaitai_struct_format_ParseUtils$().anyMapToStrMap__sci_Map__sci_List__sci_Map(x3, path); dataType = this.parseSwitch__p1__sci_Map__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_YamlAttrArgs__Lio_kaitai_struct_datatype_DataType(switchMapStr, path, metaDef, yamlAttrArgs) } }; const x1$4 = $m_Lio_kaitai_struct_format_RepeatSpec$().fromYaml__sci_Map__sci_List__T2(srcMap, path); if ((x1$4 === null)) { throw new $c_s_MatchError().init___O(x1$4) }; const repeatSpec = x1$4.$$und1__O(); const legalRepeatKeys = x1$4.$$und2__O(); const legalKeys = this.LEGAL$undKEYS$1.$$plus$plus__sc_GenTraversableOnce__sc_Set(legalRepeatKeys).$$plus$plus__sc_GenTraversableOnce__sc_Set(((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType) ? this.LEGAL$undKEYS$undBYTES$1 : ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType) ? this.LEGAL$undKEYS$undSTR$1 : ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType) ? this.LEGAL$undKEYS$undBYTES$1 : ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType) ? this.LEGAL$undKEYS$undENUM$1 : ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType) ? this.LEGAL$undKEYS$undBYTES$1 : $m_s_Predef$().Set$2.apply__sc_Seq__sc_GenTraversable($m_sci_Nil$()))))))); $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(srcMap, legalKeys, path, $m_s_None$()); return new $c_Lio_kaitai_struct_format_AttrSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec(path, id, dataType, new $c_Lio_kaitai_struct_format_ConditionalSpec().init___s_Option__Lio_kaitai_struct_format_RepeatSpec(ifExpr, repeatSpec), valid2, doc) }; fromYaml__O__sci_List__Lio_kaitai_struct_format_MetaSpec__I__Lio_kaitai_struct_format_AttrSpec(src, path, metaDef, idx) { const srcMap = $m_Lio_kaitai_struct_format_ParseUtils$().asMapStr__O__sci_List__sci_Map(src, path); const x1 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "id", path); let id; if ((x1 instanceof $c_s_Some)) { const x2 = x1; const idStr = x2.value$2; try { id = new $c_Lio_kaitai_struct_format_NamedIdentifier().init___T(idStr) } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_format_InvalidIdentifier)) { const jsx$2 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array = ["id"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); throw jsx$2.invalidId__T__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(idStr, "attribute", path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)) } else { throw e } } } else { const x$1 = $m_s_None$(); if ((!(x$1 === x1))) { throw new $c_s_MatchError().init___O(x1) }; id = new $c_Lio_kaitai_struct_format_NumberedIdentifier().init___I(idx) }; return this.fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrSpec(srcMap, path, metaDef, id) }; fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrSpec(srcMap, path, metaDef, id) { try { return this.fromYaml2__sci_Map__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_AttrSpec(srcMap, path, metaDef, id) } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_exprlang_Expressions$ParseException)) { const epe = e; throw $m_Lio_kaitai_struct_problems_KSYParseError$().expression__Lio_kaitai_struct_exprlang_Expressions$ParseException__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(epe, path) } else { throw e } } }; parseSwitch__p1__sci_Map__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_YamlAttrArgs__Lio_kaitai_struct_datatype_DataType(switchSpec, path, metaDef, arg) { const on = $m_Lio_kaitai_struct_format_ParseUtils$().getValueExpression__sci_Map__T__sci_List__Lio_kaitai_struct_exprlang_Ast$expr(switchSpec, "switch-on", path); const _cases = $m_Lio_kaitai_struct_format_ParseUtils$().getValueMapStrStr__sci_Map__T__sci_List__sci_Map(switchSpec, "cases", path); $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(switchSpec, this.LEGAL$undKEYS$undSWITCH$1, path, $m_s_None$()); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, path$1, metaDef$1, arg$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const condition = x0$1.$$und1__O(); const typeName = x0$1.$$und2__O(); $m_sci_List$(); const array = ["cases", condition]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$5 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$5); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$6 = $m_sci_List$(); const casePath = path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$6.ReusableCBFInstance$2); const condType = $m_Lio_kaitai_struct_datatype_DataType$().fromYaml__s_Option__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_YamlAttrArgs__Lio_kaitai_struct_datatype_DataType(new $c_s_Some().init___O(typeName), casePath, metaDef$1, arg$1); try { const this$7 = $m_Lio_kaitai_struct_exprlang_Expressions$(); const self = this$7.realParse__p1__T__Lfastparse_core_Parser__O(condition, this$7.topExpr$1); return new $c_T2().init___O__O(self, condType) } catch (e) { if ((e instanceof $c_Lio_kaitai_struct_exprlang_Expressions$ParseException)) { const epe = e; throw $m_Lio_kaitai_struct_problems_KSYParseError$().expression__Lio_kaitai_struct_exprlang_Expressions$ParseException__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(epe, casePath) } else { throw e } } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path, metaDef, arg)); const bf = $m_sci_Map$().ReusableCBF$4; const cases = $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(_cases, f, bf); const this$10 = $m_sc_JavaConversions$(); let addCases; if ($f_sc_convert_LowPriorityWrapAsJava__mapAsJavaMap__sc_Map__ju_Map(this$10, cases).containsKey__O__Z($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1)) { addCases = $m_s_Predef$().Map$2.apply__sc_Seq__sc_GenMap($m_sci_Nil$()) } else { const x1 = new $c_T2().init___O__O(arg.size$1, arg.sizeEos$1); matchEnd20: { const p2 = x1.$$und1$f; const p3 = (!(!x1.$$und2$f)); if ((p2 instanceof $c_s_Some)) { const x4 = p2; const sizeValue = x4.value$2; if ((p3 === false)) { const self$1 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; const y = new $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType().init___Lio_kaitai_struct_exprlang_Ast$expr__s_Option__Z__s_Option__s_Option(sizeValue, $m_s_None$(), false, $m_s_None$(), arg.process$1); const array$1 = [new $c_T2().init___O__O(self$1, y)]; const this$16 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i$1 = 0; const len = (array$1.length | 0); while ((i$1 < len)) { const index$1 = i$1; const arg1 = array$1[index$1]; this$16.$$plus$eq__T2__scm_MapBuilder(arg1); i$1 = ((1 + i$1) | 0) }; addCases = this$16.elems$1; break matchEnd20 } }; const p5 = x1.$$und1$f; const p6 = (!(!x1.$$und2$f)); const x$1 = $m_s_None$(); if (((x$1 === p5) && (p6 === true))) { const self$2 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; const y$1 = new $c_Lio_kaitai_struct_datatype_DataType$BytesEosType().init___s_Option__Z__s_Option__s_Option($m_s_None$(), false, $m_s_None$(), arg.process$1); const array$2 = [new $c_T2().init___O__O(self$2, y$1)]; const this$22 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i$2 = 0; const len$1 = (array$2.length | 0); while ((i$2 < len$1)) { const index$2 = i$2; const arg1$1 = array$2[index$2]; this$22.$$plus$eq__T2__scm_MapBuilder(arg1$1); i$2 = ((1 + i$2) | 0) }; addCases = this$22.elems$1; break matchEnd20 }; const p7 = x1.$$und1$f; const p8 = (!(!x1.$$und2$f)); const x$3 = $m_s_None$(); if (((x$3 === p7) && (p8 === false))) { addCases = $m_s_Predef$().Map$2.apply__sc_Seq__sc_GenMap($m_sci_Nil$()); break matchEnd20 }; const p9 = x1.$$und1$f; const p10 = (!(!x1.$$und2$f)); if (((p9 instanceof $c_s_Some) && (p10 === true))) { throw $m_Lio_kaitai_struct_problems_KSYParseError$().withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("can't have both `size` and `size-eos` defined", path) }; throw new $c_s_MatchError().init___O(x1) } }; return new $c_Lio_kaitai_struct_datatype_DataType$SwitchType().init___Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__Z(on, cases.$$plus$plus__sc_GenTraversableOnce__sci_Map(addCases), ($m_Lio_kaitai_struct_datatype_DataType$SwitchType$(), true)) }; parseContentSpec__O__sci_List__AB(c, path) { if ($is_T(c)) { const x2 = c; return $m_sjsr_RuntimeString$().getBytes__T__Ljava_nio_charset_Charset__AB(x2, $m_Ljava_nio_charset_Charset$().forName__T__Ljava_nio_charset_Charset("UTF-8")) } else if ((c instanceof $c_sci_List)) { const x3 = c; const bb = new $c_scm_ArrayBuffer().init___(); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; const this$2 = $f_sc_IterableLike__zipWithIndex__scg_CanBuildFrom__O(x3, bf); let these = this$2; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const x0$1 = arg1; if ((x0$1 !== null)) { const value = x0$1.$$und1__O(); const idx = x0$1.$$und2$mcI$sp__I(); if ($is_T(value)) { const x2$1 = value; const xs = $m_Lio_kaitai_struct_Utils$().strToBytes__T__AB(x2$1); const n = xs.u.length; const n$1 = ((bb.size0$6 + n) | 0); $f_scm_ResizableArray__ensureSize__I__V(bb, n$1); const xs$1 = bb.array$6; const start = bb.size0$6; const that = xs.u.length; const x = ((n < that) ? n : that); const that$1 = ((xs$1.u.length - start) | 0); const l = ((x < that$1) ? x : that$1); if ((l > 0)) { $m_s_Array$().copy__O__I__O__I__I__V(xs, 0, xs$1, start, l) }; bb.size0$6 = ((bb.size0$6 + n) | 0) } else { if ((!$isInt(value))) { const jsx$2 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array$1 = [("" + idx)]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$28 = result; const index$1 = i$1; const x$3 = array$1[index$1]; result = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$28); i$1 = (((-1) + i$1) | 0) }; const jsx$1 = result; const this$29 = $m_sci_List$(); throw jsx$2.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(("unable to parse fixed content in array: " + value), path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$29.ReusableCBFInstance$2)) }; const x3$1 = value; const array = [$m_Lio_kaitai_struct_Utils$().clampIntToByte__I__B((x3$1 | 0))]; const n$2 = (array.length | 0); const n$3 = ((bb.size0$6 + n$2) | 0); $f_scm_ResizableArray__ensureSize__I__V(bb, n$3); const xs$2 = bb.array$6; const start$1 = bb.size0$6; let i = 0; let j = start$1; const x$1 = (array.length | 0); const x$2 = ((x$1 < n$2) ? x$1 : n$2); const that$2 = ((xs$2.u.length - start$1) | 0); const end = ((x$2 < that$2) ? x$2 : that$2); while ((i < end)) { const jsx$3 = j; const index = i; xs$2.u[jsx$3] = array[index]; i = ((1 + i) | 0); j = ((1 + j) | 0) }; bb.size0$6 = ((bb.size0$6 + n$2) | 0) } } else { throw new $c_s_MatchError().init___O(x0$1) }; const this$30 = these; these = this$30.tail__sci_List() }; const len = bb.size0$6; const result$1 = $newArrayObject($d_B.getArrayOf(), [len]); $f_sc_TraversableOnce__copyToArray__O__I__V(bb, result$1, 0); return result$1 } else { throw $m_Lio_kaitai_struct_problems_KSYParseError$().withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(("unable to parse fixed content: " + c), path) } }; } const $d_Lio_kaitai_struct_format_AttrSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_AttrSpec$: 0 }, false, "io.kaitai.struct.format.AttrSpec$", { Lio_kaitai_struct_format_AttrSpec$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_AttrSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_AttrSpec$; let $n_Lio_kaitai_struct_format_AttrSpec$ = (void 0); const $m_Lio_kaitai_struct_format_AttrSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_AttrSpec$)) { $n_Lio_kaitai_struct_format_AttrSpec$ = new $c_Lio_kaitai_struct_format_AttrSpec$().init___() }; return $n_Lio_kaitai_struct_format_AttrSpec$ }); class $c_Lio_kaitai_struct_format_ClassSpec$ extends $c_O { constructor() { super(); this.LEGAL$undKEYS$1 = null }; init___() { $n_Lio_kaitai_struct_format_ClassSpec$ = this; const jsx$1 = $m_s_Predef$().Set$2; const array = ["meta", "doc", "doc-ref", "to-string", "params", "seq", "types", "instances", "enums"]; this.LEGAL$undKEYS$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); return this }; opaquePlaceholder__sci_List__Lio_kaitai_struct_format_ClassSpec(typeName) { const placeholder = new $c_Lio_kaitai_struct_format_ClassSpec().init___s_Option__sci_List__Z__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_DocSpec__s_Option__sci_List__sci_List__sci_Map__sci_Map__sci_Map($m_s_None$(), $m_sci_Nil$(), true, $m_Lio_kaitai_struct_format_MetaSpec$().OPAQUE$1, $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1, $m_s_None$(), $m_sci_Nil$(), $m_sci_Nil$(), $m_s_Predef$().Map$2.apply__sc_Seq__sc_GenMap($m_sci_Nil$()), $m_s_Predef$().Map$2.apply__sc_Seq__sc_GenMap($m_sci_Nil$()), $m_s_Predef$().Map$2.apply__sc_Seq__sc_GenMap($m_sci_Nil$())); placeholder.name$1 = typeName; return placeholder }; checkDupSeqInstIds__sci_List__sci_Map__V(seq, instances) { const f = (function($this) { return (function(attr$2) { const attr = attr$2; const x1 = attr.id$1; if ((x1 instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2 = x1; const id = x2.name$2; const xo = new $c_s_Some().init___O(new $c_T2().init___O__O(id, attr)); return xo.toList__sci_List() } else { const xo$1 = $m_s_None$(); return xo$1.toList__sci_List() } }) })(this); const this$5 = $m_sci_List$(); const bf = this$5.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((seq === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { let rest = seq; const found = new $c_sr_BooleanRef().init___Z(false); const h = new $c_sr_ObjectRef().init___O(null); const t = new $c_sr_ObjectRef().init___O(null); while ((rest !== $m_sci_Nil$())) { const arg1 = rest.head__O(); f(arg1).seq__sc_TraversableOnce().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$1, found$1, h$1, t$1) { return (function(b$2) { if ((!found$1.elem$1)) { h$1.elem$1 = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$()); t$1.elem$1 = h$1.elem$1; found$1.elem$1 = true } else { const nx = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$()); t$1.elem$1.tl$5 = nx; t$1.elem$1 = nx } }) })(seq, found, h, t))); const this$9 = rest; rest = this$9.tail__sci_List() }; jsx$1 = ((!found.elem$1) ? $m_sci_Nil$() : h.elem$1) } } else { $m_sci_List$(); const b = new $c_scm_ListBuffer().init___(); let these = seq; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const xs = f(arg1$1).seq__sc_TraversableOnce(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs); const this$11 = these; these = this$11.tail__sci_List() }; jsx$1 = b.toList__sci_List() }; const attrIds = jsx$1.toMap__s_Predef$$less$colon$less__sci_Map($m_s_Predef$().singleton$und$less$colon$less$2); instances.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, attrIds$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const id$1 = x0$1.$$und1__O(); const instSpec = x0$1.$$und2__O(); $m_Lio_kaitai_struct_format_ClassSpec$().checkDupId__p1__s_Option__T__Lio_kaitai_struct_format_YAMLPath__V(attrIds$1.get__O__s_Option(id$1.name$2), id$1.name$2, instSpec) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, attrIds))) }; checkDupId__p1__s_Option__T__Lio_kaitai_struct_format_YAMLPath__V(prevAttrOpt, id, nowAttr) { if ((prevAttrOpt instanceof $c_s_Some)) { const x2 = prevAttrOpt; const prevAttr = x2.value$2; const jsx$1 = $m_Lio_kaitai_struct_problems_KSYParseError$(); const this$1 = prevAttr.path$1; throw jsx$1.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(((("duplicate attribute ID '" + id) + "', previously defined at /") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "/", "")), nowAttr.path__sci_List()) } else { const x = $m_s_None$(); if ((!(x === prevAttrOpt))) { throw new $c_s_MatchError().init___O(prevAttrOpt) } } }; fromYaml__O__s_Option__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_ClassSpec(src, fileName, path, metaDef) { const srcMap = $m_Lio_kaitai_struct_format_ParseUtils$().asMapStr__O__sci_List__sci_Map(src, path); $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(srcMap, this.LEGAL$undKEYS$1, path, $m_s_None$()); $m_sci_List$(); const array = ["meta"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$5 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$5); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$6 = $m_sci_List$(); const metaPath = path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$6.ReusableCBFInstance$2); const this$7 = srcMap.get__O__s_Option("meta"); let this$8; if (this$7.isEmpty__Z()) { this$8 = $m_s_None$() } else { const arg1 = this$7.get__O(); this$8 = new $c_s_Some().init___O($m_Lio_kaitai_struct_format_MetaSpec$().fromYaml__O__sci_List__Lio_kaitai_struct_format_MetaSpec(arg1, metaPath)) }; const explicitMeta = (this$8.isEmpty__Z() ? $m_Lio_kaitai_struct_format_MetaSpec$().emptyWithPath__sci_List__Lio_kaitai_struct_format_MetaSpec(metaPath) : this$8.get__O()); const meta = explicitMeta.fillInDefaults__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_MetaSpec(metaDef); const doc = $m_Lio_kaitai_struct_format_DocSpec$().fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_DocSpec(srcMap, path); const toStringExpr = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(srcMap, "to-string", path); const x1 = srcMap.get__O__s_Option("params"); let params; if ((x1 instanceof $c_s_Some)) { const x2 = x1; const value = x2.value$2; $m_sci_List$(); const array$1 = ["params"]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$12 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$12); i$1 = (((-1) + i$1) | 0) }; const jsx$2 = result$1; const this$13 = $m_sci_List$(); params = this.paramDefFromYaml__O__sci_List__sci_List(value, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$13.ReusableCBFInstance$2)) } else { const x$2 = $m_s_None$(); if ((!(x$2 === x1))) { throw new $c_s_MatchError().init___O(x1) }; params = $m_sci_Nil$() }; const x1$2 = srcMap.get__O__s_Option("seq"); let seq; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const value$2 = x2$2.value$2; $m_sci_List$(); const array$2 = ["seq"]; let i$2 = (((-1) + (array$2.length | 0)) | 0); let result$2 = $m_sci_Nil$(); while ((i$2 >= 0)) { const this$17 = result$2; const index$2 = i$2; const x$3 = array$2[index$2]; result$2 = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$17); i$2 = (((-1) + i$2) | 0) }; const jsx$3 = result$2; const this$18 = $m_sci_List$(); seq = this.seqFromYaml__O__sci_List__Lio_kaitai_struct_format_MetaSpec__sci_List(value$2, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$3, this$18.ReusableCBFInstance$2), meta) } else { const x$3$1 = $m_s_None$(); if ((!(x$3$1 === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; seq = $m_sci_Nil$() }; const x1$3 = srcMap.get__O__s_Option("types"); let types; if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const value$3 = x2$3.value$2; $m_sci_List$(); const array$3 = ["types"]; let i$3 = (((-1) + (array$3.length | 0)) | 0); let result$3 = $m_sci_Nil$(); while ((i$3 >= 0)) { const this$22 = result$3; const index$3 = i$3; const x$4 = array$3[index$3]; result$3 = new $c_sci_$colon$colon().init___O__sci_List(x$4, this$22); i$3 = (((-1) + i$3) | 0) }; const jsx$4 = result$3; const this$23 = $m_sci_List$(); types = this.typesFromYaml__O__s_Option__sci_List__Lio_kaitai_struct_format_MetaSpec__sci_Map(value$3, fileName, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$4, this$23.ReusableCBFInstance$2), meta) } else { const x$5 = $m_s_None$(); if ((!(x$5 === x1$3))) { throw new $c_s_MatchError().init___O(x1$3) }; types = $m_s_Predef$().Map$2.apply__sc_Seq__sc_GenMap($m_sci_Nil$()) }; const x1$4 = srcMap.get__O__s_Option("instances"); let instances; if ((x1$4 instanceof $c_s_Some)) { const x2$4 = x1$4; const value$4 = x2$4.value$2; $m_sci_List$(); const array$4 = ["instances"]; let i$4 = (((-1) + (array$4.length | 0)) | 0); let result$4 = $m_sci_Nil$(); while ((i$4 >= 0)) { const this$27 = result$4; const index$4 = i$4; const x$6 = array$4[index$4]; result$4 = new $c_sci_$colon$colon().init___O__sci_List(x$6, this$27); i$4 = (((-1) + i$4) | 0) }; const jsx$5 = result$4; const this$28 = $m_sci_List$(); instances = this.instancesFromYaml__O__sci_List__Lio_kaitai_struct_format_MetaSpec__sci_Map(value$4, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$5, this$28.ReusableCBFInstance$2), meta) } else { const x$7 = $m_s_None$(); if ((!(x$7 === x1$4))) { throw new $c_s_MatchError().init___O(x1$4) }; instances = $m_s_Predef$().Map$2.apply__sc_Seq__sc_GenMap($m_sci_Nil$()) }; const x1$5 = srcMap.get__O__s_Option("enums"); let enums; if ((x1$5 instanceof $c_s_Some)) { const x2$5 = x1$5; const value$5 = x2$5.value$2; $m_sci_List$(); const array$5 = ["enums"]; let i$5 = (((-1) + (array$5.length | 0)) | 0); let result$5 = $m_sci_Nil$(); while ((i$5 >= 0)) { const this$32 = result$5; const index$5 = i$5; const x$8 = array$5[index$5]; result$5 = new $c_sci_$colon$colon().init___O__sci_List(x$8, this$32); i$5 = (((-1) + i$5) | 0) }; const jsx$6 = result$5; const this$33 = $m_sci_List$(); enums = this.enumsFromYaml__O__sci_List__sci_Map(value$5, path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$6, this$33.ReusableCBFInstance$2)) } else { const x$9 = $m_s_None$(); if ((!(x$9 === x1$5))) { throw new $c_s_MatchError().init___O(x1$5) }; enums = $m_s_Predef$().Map$2.apply__sc_Seq__sc_GenMap($m_sci_Nil$()) }; this.checkDupSeqInstIds__sci_List__sci_Map__V(seq, instances); const cs = new $c_Lio_kaitai_struct_format_ClassSpec().init___s_Option__sci_List__Z__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_DocSpec__s_Option__sci_List__sci_List__sci_Map__sci_Map__sci_Map(fileName, path, path.isEmpty__Z(), meta, doc, toStringExpr, params, seq, types, instances, enums); if (path.isEmpty__Z()) { const x1$6 = explicitMeta.id$1; const x$11 = $m_s_None$(); if ((x$11 === x1$6)) { const jsx$8 = $m_Lio_kaitai_struct_problems_KSYParseError$(); $m_sci_List$(); const array$6 = ["meta", "id"]; let i$6 = (((-1) + (array$6.length | 0)) | 0); let result$6 = $m_sci_Nil$(); while ((i$6 >= 0)) { const this$37 = result$6; const index$6 = i$6; const x$10 = array$6[index$6]; result$6 = new $c_sci_$colon$colon().init___O__sci_List(x$10, this$37); i$6 = (((-1) + i$6) | 0) }; const jsx$7 = result$6; const this$38 = $m_sci_List$(); throw jsx$8.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("no `meta/id` encountered in top-level class spec", path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$7, this$38.ReusableCBFInstance$2)) } else if ((x1$6 instanceof $c_s_Some)) { const x2$6 = x1$6; const id = x2$6.value$2; $m_sci_List$(); const array$7 = [id]; let i$7 = (((-1) + (array$7.length | 0)) | 0); let result$7 = $m_sci_Nil$(); while ((i$7 >= 0)) { const this$42 = result$7; const index$7 = i$7; const x$12 = array$7[index$7]; result$7 = new $c_sci_$colon$colon().init___O__sci_List(x$12, this$42); i$7 = (((-1) + i$7) | 0) }; cs.name$1 = result$7 } else { throw new $c_s_MatchError().init___O(x1$6) } }; return cs }; seqFromYaml__O__sci_List__Lio_kaitai_struct_format_MetaSpec__sci_List(src, path, metaDef) { if ((src instanceof $c_sci_List)) { const x2 = src; const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; const this$9 = $f_sc_IterableLike__zipWithIndex__scg_CanBuildFrom__O(x2, bf); const f = (function($this, path$1, metaDef$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const attrSrc = x0$1.$$und1__O(); const idx = x0$1.$$und2$mcI$sp__I(); const jsx$2 = $m_Lio_kaitai_struct_format_AttrSpec$(); $m_sci_List$(); const array = [("" + idx)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$6 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$6); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$7 = $m_sci_List$(); return jsx$2.fromYaml__O__sci_List__Lio_kaitai_struct_format_MetaSpec__I__Lio_kaitai_struct_format_AttrSpec(attrSrc, path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$7.ReusableCBFInstance$2), metaDef$1, idx) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path, metaDef); const this$8 = $m_sci_List$(); const bf$1 = this$8.ReusableCBFInstance$2; let seq; if ((bf$1 === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$9 === $m_sci_Nil$())) { seq = $m_sci_Nil$() } else { const arg1 = this$9.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$9.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$10 = rest; rest = this$10.tail__sci_List() }; seq = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$9, bf$1); let these = this$9; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$11 = these; these = this$11.tail__sci_List() }; seq = b.result__O() }; this.checkDupSeqIds__sci_List__V(seq); return seq } else { throw $m_Lio_kaitai_struct_problems_KSYParseError$().withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(("expected array, found " + src), path) } }; checkDupSeqIds__sci_List__V(seq) { const attrIds = $m_scm_Map$().apply__sc_Seq__sc_GenMap($m_sci_Nil$()); let these = seq; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const attr = arg1; const x1 = attr.id$1; if ((x1 instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2 = x1; const id = x2.name$2; $m_Lio_kaitai_struct_format_ClassSpec$().checkDupId__p1__s_Option__T__Lio_kaitai_struct_format_YAMLPath__V(attrIds.get__O__s_Option(id), id, attr); attrIds.put__O__O__s_Option(id, attr) }; const this$1 = these; these = this$1.tail__sci_List() } }; instancesFromYaml__O__sci_List__Lio_kaitai_struct_format_MetaSpec__sci_Map(src, path, metaDef) { const srcMap = $m_Lio_kaitai_struct_format_ParseUtils$().asMap__O__sci_List__sci_Map(src, path); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, path$1, metaDef$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const key = x0$1.$$und1__O(); const body = x0$1.$$und2__O(); const instName = $m_Lio_kaitai_struct_format_ParseUtils$().asStr__O__sci_List__T(key, path$1); const jsx$2 = $m_Lio_kaitai_struct_format_Identifier$(); $m_sci_List$(); const array = [instName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); jsx$2.checkIdentifierSource__T__T__sci_List__V(instName, "instance", path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)); const id = new $c_Lio_kaitai_struct_format_InstanceIdentifier().init___T(instName); const jsx$4 = $m_Lio_kaitai_struct_format_InstanceSpec$(); $m_sci_List$(); const array$1 = [instName]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$10 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$10); i$1 = (((-1) + i$1) | 0) }; const jsx$3 = result$1; const this$11 = $m_sci_List$(); const y = jsx$4.fromYaml__O__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_format_InstanceSpec(body, path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$3, this$11.ReusableCBFInstance$2), metaDef$1, id); return new $c_T2().init___O__O(id, y) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path, metaDef)); const bf = $m_sci_Map$().ReusableCBF$4; return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(srcMap, f, bf) }; typesFromYaml__O__s_Option__sci_List__Lio_kaitai_struct_format_MetaSpec__sci_Map(src, fileName, path, metaDef) { const srcMap = $m_Lio_kaitai_struct_format_ParseUtils$().asMapStr__O__sci_List__sci_Map(src, path); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, path$1, fileName$1, metaDef$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const typeName = x0$1.$$und1__O(); const body = x0$1.$$und2__O(); const jsx$2 = $m_Lio_kaitai_struct_format_Identifier$(); $m_sci_List$(); const array = [typeName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); jsx$2.checkIdentifierSource__T__T__sci_List__V(typeName, "type", path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)); const jsx$4 = $m_Lio_kaitai_struct_format_ClassSpec$(); $m_sci_List$(); const array$1 = [typeName]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$10 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$10); i$1 = (((-1) + i$1) | 0) }; const jsx$3 = result$1; const this$11 = $m_sci_List$(); const y = jsx$4.fromYaml__O__s_Option__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_ClassSpec(body, fileName$1, path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$3, this$11.ReusableCBFInstance$2), metaDef$1); return new $c_T2().init___O__O(typeName, y) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path, fileName, metaDef)); const bf = $m_sci_Map$().ReusableCBF$4; return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(srcMap, f, bf) }; enumsFromYaml__O__sci_List__sci_Map(src, path) { const srcMap = $m_Lio_kaitai_struct_format_ParseUtils$().asMap__O__sci_List__sci_Map(src, path); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, path$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const key = x0$1.$$und1__O(); const body = x0$1.$$und2__O(); const enumName = $m_Lio_kaitai_struct_format_ParseUtils$().asStr__O__sci_List__T(key, path$1); const jsx$2 = $m_Lio_kaitai_struct_format_Identifier$(); $m_sci_List$(); const array = [enumName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); jsx$2.checkIdentifierSource__T__T__sci_List__V(enumName, "enum", path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)); const jsx$4 = $m_Lio_kaitai_struct_format_EnumSpec$(); $m_sci_List$(); const array$1 = [enumName]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$10 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$10); i$1 = (((-1) + i$1) | 0) }; const jsx$3 = result$1; const this$11 = $m_sci_List$(); const y = jsx$4.fromYaml__O__sci_List__Lio_kaitai_struct_format_EnumSpec(body, path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$3, this$11.ReusableCBFInstance$2)); return new $c_T2().init___O__O(enumName, y) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path)); const bf = $m_sci_Map$().ReusableCBF$4; return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(srcMap, f, bf) }; paramDefFromYaml__O__sci_List__sci_List(src, path) { if ((src instanceof $c_sci_List)) { const x2 = src; const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; const this$9 = $f_sc_IterableLike__zipWithIndex__scg_CanBuildFrom__O(x2, bf); const f = (function($this, path$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const attrSrc = x0$1.$$und1__O(); const idx = x0$1.$$und2$mcI$sp__I(); const jsx$2 = $m_Lio_kaitai_struct_format_ParamDefSpec$(); $m_sci_List$(); const array = [("" + idx)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$6 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$6); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$7 = $m_sci_List$(); return jsx$2.fromYaml__O__sci_List__I__Lio_kaitai_struct_format_ParamDefSpec(attrSrc, path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$7.ReusableCBFInstance$2), idx) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path); const this$8 = $m_sci_List$(); const bf$1 = this$8.ReusableCBFInstance$2; let params; if ((bf$1 === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$9 === $m_sci_Nil$())) { params = $m_sci_Nil$() } else { const arg1 = this$9.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$9.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$10 = rest; rest = this$10.tail__sci_List() }; params = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$9, bf$1); let these = this$9; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$11 = these; these = this$11.tail__sci_List() }; params = b.result__O() }; return params } else { throw $m_Lio_kaitai_struct_problems_KSYParseError$().withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(("expected array, found " + src), path) } }; } const $d_Lio_kaitai_struct_format_ClassSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ClassSpec$: 0 }, false, "io.kaitai.struct.format.ClassSpec$", { Lio_kaitai_struct_format_ClassSpec$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ClassSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_ClassSpec$; let $n_Lio_kaitai_struct_format_ClassSpec$ = (void 0); const $m_Lio_kaitai_struct_format_ClassSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_ClassSpec$)) { $n_Lio_kaitai_struct_format_ClassSpec$ = new $c_Lio_kaitai_struct_format_ClassSpec$().init___() }; return $n_Lio_kaitai_struct_format_ClassSpec$ }); class $c_Lio_kaitai_struct_format_DocSpec$ extends $c_O { constructor() { super(); this.EMPTY$1 = null }; init___() { $n_Lio_kaitai_struct_format_DocSpec$ = this; this.EMPTY$1 = new $c_Lio_kaitai_struct_format_DocSpec().init___s_Option__sci_List($m_s_None$(), $m_sci_Nil$()); return this }; parseSingleRefSpec__T__Lio_kaitai_struct_format_RefSpec(docRef) { if (((((docRef.length | 0) >= 0) && (docRef.substring(0, ("http://".length | 0)) === "http://")) || (((docRef.length | 0) >= 0) && (docRef.substring(0, ("https://".length | 0)) === "https://")))) { const splitPoint = $m_sjsr_RuntimeString$().indexOf__T__I__I(docRef, 32); if ((splitPoint < 0)) { return new $c_Lio_kaitai_struct_format_UrlRef().init___T__T(docRef, "Source") } else { const thiz = docRef.substring(0, splitPoint); const url = thiz.trim(); const beginIndex = ((1 + splitPoint) | 0); const thiz$1 = docRef.substring(beginIndex); const text = thiz$1.trim(); return new $c_Lio_kaitai_struct_format_UrlRef().init___T__T(url, text) } } else { return new $c_Lio_kaitai_struct_format_TextRef().init___T(docRef) } }; fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_DocSpec(srcMap, path) { const doc = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "doc", path); const docRefs = $m_Lio_kaitai_struct_format_ParseUtils$().getListStr__sci_Map__T__sci_List__sci_List(srcMap, "doc-ref", path); const f = (function($this) { return (function(docRef$2) { const docRef = docRef$2; return $m_Lio_kaitai_struct_format_DocSpec$().parseSingleRefSpec__T__Lio_kaitai_struct_format_RefSpec(docRef) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let refSpec; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((docRefs === $m_sci_Nil$())) { refSpec = $m_sci_Nil$() } else { const arg1 = docRefs.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = docRefs.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; refSpec = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(docRefs, bf); let these = docRefs; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; refSpec = b.result__O() }; return new $c_Lio_kaitai_struct_format_DocSpec().init___s_Option__sci_List(doc, refSpec) }; } const $d_Lio_kaitai_struct_format_DocSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_DocSpec$: 0 }, false, "io.kaitai.struct.format.DocSpec$", { Lio_kaitai_struct_format_DocSpec$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_DocSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_DocSpec$; let $n_Lio_kaitai_struct_format_DocSpec$ = (void 0); const $m_Lio_kaitai_struct_format_DocSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_DocSpec$)) { $n_Lio_kaitai_struct_format_DocSpec$ = new $c_Lio_kaitai_struct_format_DocSpec$().init___() }; return $n_Lio_kaitai_struct_format_DocSpec$ }); class $c_Lio_kaitai_struct_format_EnumSpec$ extends $c_O { init___() { return this }; fromYaml__O__sci_List__Lio_kaitai_struct_format_EnumSpec(src, path) { const srcMap = $m_Lio_kaitai_struct_format_ParseUtils$().asMap__O__sci_List__sci_Map(src, path); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, path$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const id = x0$1.$$und1__O(); const desc = x0$1.$$und2__O(); const t = $m_Lio_kaitai_struct_format_ParseUtils$().asLong__O__sci_List__J(id, path$1); const lo = t.lo$2; const hi = t.hi$2; const jsx$2 = $m_Lio_kaitai_struct_format_EnumValueSpec$(); $m_sci_List$(); const array = [$m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toString__I__I__T(lo, hi)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); const value = jsx$2.fromYaml__O__sci_List__Lio_kaitai_struct_format_EnumValueSpec(desc, path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2)); return new $c_T2().init___O__O(new $c_sjsr_RuntimeLong().init___I__I(lo, hi), value) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, path)); const bf = $m_sci_Map$().ReusableCBF$4; return new $c_Lio_kaitai_struct_format_EnumSpec().init___sci_Map($f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(srcMap, f, bf)) }; } const $d_Lio_kaitai_struct_format_EnumSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_EnumSpec$: 0 }, false, "io.kaitai.struct.format.EnumSpec$", { Lio_kaitai_struct_format_EnumSpec$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_EnumSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_EnumSpec$; let $n_Lio_kaitai_struct_format_EnumSpec$ = (void 0); const $m_Lio_kaitai_struct_format_EnumSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_EnumSpec$)) { $n_Lio_kaitai_struct_format_EnumSpec$ = new $c_Lio_kaitai_struct_format_EnumSpec$().init___() }; return $n_Lio_kaitai_struct_format_EnumSpec$ }); class $c_Lio_kaitai_struct_format_EnumValueSpec$ extends $c_O { constructor() { super(); this.LEGAL$undKEYS$1 = null }; init___() { $n_Lio_kaitai_struct_format_EnumValueSpec$ = this; const jsx$1 = $m_s_Predef$().Set$2; const array = ["id", "doc", "doc-ref"]; this.LEGAL$undKEYS$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); return this }; fromMap__sci_Map__sci_List__Lio_kaitai_struct_format_EnumValueSpec(srcMap, path) { $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(srcMap, this.LEGAL$undKEYS$1, path, new $c_s_Some().init___O("enum value spec")); const name = $m_Lio_kaitai_struct_format_ParseUtils$().getValueStr__sci_Map__T__sci_List__T(srcMap, "id", path); $m_Lio_kaitai_struct_format_Identifier$().checkIdentifierSource__T__T__sci_List__V(name, "enum value spec id", path); const doc = $m_Lio_kaitai_struct_format_DocSpec$().fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_DocSpec(srcMap, path); return new $c_Lio_kaitai_struct_format_EnumValueSpec().init___T__Lio_kaitai_struct_format_DocSpec(name, doc) }; fromSimpleName__T__sci_List__Lio_kaitai_struct_format_EnumValueSpec(name, path) { $m_Lio_kaitai_struct_format_Identifier$().checkIdentifierSource__T__T__sci_List__V(name, "enum member", path); return new $c_Lio_kaitai_struct_format_EnumValueSpec().init___T__Lio_kaitai_struct_format_DocSpec(name, $m_Lio_kaitai_struct_format_DocSpec$().EMPTY$1) }; fromYaml__O__sci_List__Lio_kaitai_struct_format_EnumValueSpec(src, path) { if ($is_T(src)) { const x2 = src; return this.fromSimpleName__T__sci_List__Lio_kaitai_struct_format_EnumValueSpec(x2, path) } else if (((typeof src) === "boolean")) { const x3 = (!(!src)); return this.fromSimpleName__T__sci_List__Lio_kaitai_struct_format_EnumValueSpec(("" + x3), path) } else if ($is_sci_Map(src)) { const x4 = src; return this.fromMap__sci_Map__sci_List__Lio_kaitai_struct_format_EnumValueSpec($m_Lio_kaitai_struct_format_ParseUtils$().anyMapToStrMap__sci_Map__sci_List__sci_Map(x4, path), path) } else { throw $m_Lio_kaitai_struct_problems_KSYParseError$().badType__T__O__sci_List__Lio_kaitai_struct_problems_CompilationProblemException("string or map", src, path) } }; } const $d_Lio_kaitai_struct_format_EnumValueSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_EnumValueSpec$: 0 }, false, "io.kaitai.struct.format.EnumValueSpec$", { Lio_kaitai_struct_format_EnumValueSpec$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_EnumValueSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_EnumValueSpec$; let $n_Lio_kaitai_struct_format_EnumValueSpec$ = (void 0); const $m_Lio_kaitai_struct_format_EnumValueSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_EnumValueSpec$)) { $n_Lio_kaitai_struct_format_EnumValueSpec$ = new $c_Lio_kaitai_struct_format_EnumValueSpec$().init___() }; return $n_Lio_kaitai_struct_format_EnumValueSpec$ }); class $c_Lio_kaitai_struct_format_InstanceSpec extends $c_O { constructor() { super(); this.doc$1 = null }; init___Lio_kaitai_struct_format_DocSpec(doc) { this.doc$1 = doc; return this }; doc__Lio_kaitai_struct_format_DocSpec() { return this.doc$1 }; } const $isArrayOf_Lio_kaitai_struct_format_InstanceSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_InstanceSpec))) }); class $c_Lio_kaitai_struct_format_KSVersion$ extends $c_O { constructor() { super(); this.$$undcurrent$1 = null; this.minimalRuntime$1 = null }; init___() { $n_Lio_kaitai_struct_format_KSVersion$ = this; this.$$undcurrent$1 = $m_s_None$(); this.minimalRuntime$1 = $m_Lio_kaitai_struct_format_KSVersion$().fromStr__T__Lio_kaitai_struct_format_KSVersion("0.9"); return this }; fromStr__T__Lio_kaitai_struct_format_KSVersion(str) { const x = $m_sjsr_RuntimeString$().replaceAll__T__T__T__T(str, "-SNAPSHOT.*$", ""); const this$2 = new $c_sci_StringOps().init___T(x); const xs = $f_sci_StringLike__split__C__AT(this$2, 46); let elems$2 = null; elems$2 = []; const x1 = xs.u.length; switch (x1) { case (-1): { break } }; let i = 0; const len = xs.u.length; while ((i < len)) { const index = i; const arg1 = xs.u[index]; const x$2 = arg1; const this$13 = new $c_sci_StringOps().init___T(x$2); const this$15 = $m_jl_Integer$(); const $$this = this$13.repr$1; const elem = this$15.parseInt__T__I__I($$this, 10); elems$2.push(elem); i = ((1 + i) | 0) }; const xs$1 = $makeNativeArrayWrapper($d_I.getArrayOf(), elems$2); let i$1 = (((-1) + xs$1.u.length) | 0); let result = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$19 = result; const idx = i$1; const x$1 = xs$1.u[idx]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$19); i$1 = (((-1) + i$1) | 0) }; return new $c_Lio_kaitai_struct_format_KSVersion().init___sci_List(result) }; current$und$eq__T__V(str) { this.$$undcurrent$1 = new $c_s_Some().init___O($m_Lio_kaitai_struct_format_KSVersion$().fromStr__T__Lio_kaitai_struct_format_KSVersion(str)) }; } const $d_Lio_kaitai_struct_format_KSVersion$ = new $TypeData().initClass({ Lio_kaitai_struct_format_KSVersion$: 0 }, false, "io.kaitai.struct.format.KSVersion$", { Lio_kaitai_struct_format_KSVersion$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_KSVersion$.prototype.$classData = $d_Lio_kaitai_struct_format_KSVersion$; let $n_Lio_kaitai_struct_format_KSVersion$ = (void 0); const $m_Lio_kaitai_struct_format_KSVersion$ = (function() { if ((!$n_Lio_kaitai_struct_format_KSVersion$)) { $n_Lio_kaitai_struct_format_KSVersion$ = new $c_Lio_kaitai_struct_format_KSVersion$().init___() }; return $n_Lio_kaitai_struct_format_KSVersion$ }); class $c_Lio_kaitai_struct_format_MetaSpec$ extends $c_O { constructor() { super(); this.OPAQUE$1 = null; this.LEGAL$undKEYS$1 = null }; init___() { $n_Lio_kaitai_struct_format_MetaSpec$ = this; this.OPAQUE$1 = new $c_Lio_kaitai_struct_format_MetaSpec().init___sci_List__Z__s_Option__s_Option__s_Option__s_Option__Z__s_Option__sci_List($m_sci_Nil$(), true, $m_s_None$(), $m_s_None$(), $m_s_None$(), $m_s_None$(), false, $m_s_None$(), $m_sci_Nil$()); const jsx$1 = $m_s_Predef$().Set$2; const array = ["id", "imports", "endian", "bit-endian", "encoding", "title", "ks-version", "ks-debug", "ks-opaque-types", "license", "file-extension", "xref", "tags", "application"]; this.LEGAL$undKEYS$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); return this }; fromYaml__O__sci_List__Lio_kaitai_struct_format_MetaSpec(src, path) { const srcMap = $m_Lio_kaitai_struct_format_ParseUtils$().asMapStr__O__sci_List__sci_Map(src, path); const this$1 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "ks-version", path); if ((!this$1.isEmpty__Z())) { const arg1 = this$1.get__O(); const verStr = arg1; const ver = $m_Lio_kaitai_struct_format_KSVersion$().fromStr__T__Lio_kaitai_struct_format_KSVersion(verStr); const this$2 = $m_Lio_kaitai_struct_format_KSVersion$(); const that = this$2.$$undcurrent$1.get__O(); if ($f_s_math_Ordered__$$greater__O__Z(ver, that)) { const jsx$1 = $m_Lio_kaitai_struct_problems_KSYParseError$(); const this$3 = $m_Lio_kaitai_struct_format_KSVersion$(); throw jsx$1.incompatibleVersion__Lio_kaitai_struct_format_KSVersion__Lio_kaitai_struct_format_KSVersion__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(ver, this$3.$$undcurrent$1.get__O(), path) } }; const endian = $m_Lio_kaitai_struct_datatype_Endianness$().fromYaml__s_Option__sci_List__s_Option(srcMap.get__O__s_Option("endian"), path); const bitEndian = $m_Lio_kaitai_struct_datatype_BitEndianness$().fromYaml__s_Option__sci_List__s_Option(srcMap.get__O__s_Option("bit-endian"), path); $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(srcMap, this.LEGAL$undKEYS$1, path, $m_s_None$()); const id = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "id", path); if ((!id.isEmpty__Z())) { const arg1$1 = id.get__O(); const idStr = arg1$1; const jsx$3 = $m_Lio_kaitai_struct_format_Identifier$(); $m_sci_List$(); const array = ["id"]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$8 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$8); i = (((-1) + i) | 0) }; const jsx$2 = result; const this$9 = $m_sci_List$(); jsx$3.checkIdentifierSource__T__T__sci_List__V(idStr, "meta", path.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$2, this$9.ReusableCBFInstance$2)) }; const encoding = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "encoding", path); const this$10 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueBool__sci_Map__T__sci_List__s_Option(srcMap, "ks-debug", path); const forceDebug = (!(!(this$10.isEmpty__Z() ? false : this$10.get__O()))); const opaqueTypes = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueBool__sci_Map__T__sci_List__s_Option(srcMap, "ks-opaque-types", path); const imports = $m_Lio_kaitai_struct_format_ParseUtils$().getListStr__sci_Map__T__sci_List__sci_List(srcMap, "imports", path); return new $c_Lio_kaitai_struct_format_MetaSpec().init___sci_List__Z__s_Option__s_Option__s_Option__s_Option__Z__s_Option__sci_List(path, false, id, endian, bitEndian, encoding, forceDebug, opaqueTypes, imports) }; emptyWithPath__sci_List__Lio_kaitai_struct_format_MetaSpec(path) { const this$1 = this.OPAQUE$1; const x$3 = this$1.id$1; const this$2 = this.OPAQUE$1; const x$4 = this$2.endian$1; const this$3 = this.OPAQUE$1; const x$5 = this$3.bitEndian$1; const this$4 = this.OPAQUE$1; const x$6 = this$4.encoding$1; const this$5 = this.OPAQUE$1; const x$7 = this$5.forceDebug$1; const this$6 = this.OPAQUE$1; const x$8 = this$6.opaqueTypes$1; const this$7 = this.OPAQUE$1; const x$9 = this$7.imports$1; return new $c_Lio_kaitai_struct_format_MetaSpec().init___sci_List__Z__s_Option__s_Option__s_Option__s_Option__Z__s_Option__sci_List(path, false, x$3, x$4, x$5, x$6, x$7, x$8, x$9) }; } const $d_Lio_kaitai_struct_format_MetaSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_MetaSpec$: 0 }, false, "io.kaitai.struct.format.MetaSpec$", { Lio_kaitai_struct_format_MetaSpec$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_MetaSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_MetaSpec$; let $n_Lio_kaitai_struct_format_MetaSpec$ = (void 0); const $m_Lio_kaitai_struct_format_MetaSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_MetaSpec$)) { $n_Lio_kaitai_struct_format_MetaSpec$ = new $c_Lio_kaitai_struct_format_MetaSpec$().init___() }; return $n_Lio_kaitai_struct_format_MetaSpec$ }); class $c_Lio_kaitai_struct_format_NumberedIdentifier$ extends $c_O { constructor() { super(); this.TEMPLATE$1 = null }; init___() { this.TEMPLATE$1 = "unnamed"; return this }; } const $d_Lio_kaitai_struct_format_NumberedIdentifier$ = new $TypeData().initClass({ Lio_kaitai_struct_format_NumberedIdentifier$: 0 }, false, "io.kaitai.struct.format.NumberedIdentifier$", { Lio_kaitai_struct_format_NumberedIdentifier$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_NumberedIdentifier$.prototype.$classData = $d_Lio_kaitai_struct_format_NumberedIdentifier$; let $n_Lio_kaitai_struct_format_NumberedIdentifier$ = (void 0); const $m_Lio_kaitai_struct_format_NumberedIdentifier$ = (function() { if ((!$n_Lio_kaitai_struct_format_NumberedIdentifier$)) { $n_Lio_kaitai_struct_format_NumberedIdentifier$ = new $c_Lio_kaitai_struct_format_NumberedIdentifier$().init___() }; return $n_Lio_kaitai_struct_format_NumberedIdentifier$ }); class $c_Lio_kaitai_struct_format_ParamDefSpec$ extends $c_O { constructor() { super(); this.LEGAL$undKEYS$1 = null }; init___() { $n_Lio_kaitai_struct_format_ParamDefSpec$ = this; const jsx$1 = $m_s_Predef$().Set$2; const array = ["id", "type", "enum", "doc", "doc-ref"]; this.LEGAL$undKEYS$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); return this }; fromYaml__O__sci_List__I__Lio_kaitai_struct_format_ParamDefSpec(src, path, idx) { const srcMap = $m_Lio_kaitai_struct_format_ParseUtils$().asMapStr__O__sci_List__sci_Map(src, path); const id = $m_Lio_kaitai_struct_format_ParseUtils$().getValueIdentifier__sci_Map__I__T__sci_List__Lio_kaitai_struct_format_Identifier(srcMap, idx, "parameter", path); return this.fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_ParamDefSpec(srcMap, path, id) }; fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_ParamDefSpec(srcMap, path, id) { const doc = $m_Lio_kaitai_struct_format_DocSpec$().fromYaml__sci_Map__sci_List__Lio_kaitai_struct_format_DocSpec(srcMap, path); const typeStr = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "type", path); const enumRef = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueStr__sci_Map__T__sci_List__s_Option(srcMap, "enum", path); const dataType = $m_Lio_kaitai_struct_datatype_DataType$().pureFromString__s_Option__s_Option__sci_List__Lio_kaitai_struct_datatype_DataType(typeStr, enumRef, path); $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(srcMap, this.LEGAL$undKEYS$1, path, new $c_s_Some().init___O("parameter definition")); return new $c_Lio_kaitai_struct_format_ParamDefSpec().init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_DocSpec(path, id, dataType, doc) }; } const $d_Lio_kaitai_struct_format_ParamDefSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ParamDefSpec$: 0 }, false, "io.kaitai.struct.format.ParamDefSpec$", { Lio_kaitai_struct_format_ParamDefSpec$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ParamDefSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_ParamDefSpec$; let $n_Lio_kaitai_struct_format_ParamDefSpec$ = (void 0); const $m_Lio_kaitai_struct_format_ParamDefSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_ParamDefSpec$)) { $n_Lio_kaitai_struct_format_ParamDefSpec$ = new $c_Lio_kaitai_struct_format_ParamDefSpec$().init___() }; return $n_Lio_kaitai_struct_format_ParamDefSpec$ }); class $c_Lio_kaitai_struct_format_ValidationAnyOf$ extends $c_O { constructor() { super(); this.LEGAL$undKEYS$1 = null }; init___() { $n_Lio_kaitai_struct_format_ValidationAnyOf$ = this; const jsx$1 = $m_s_Predef$().Set$2; const array = ["any-of"]; this.LEGAL$undKEYS$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); return this }; fromMap__sci_Map__sci_List__s_Option(src, path) { const this$1 = src.get__O__s_Option("any-of"); if (this$1.isDefined__Z()) { $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(src, this.LEGAL$undKEYS$1, path, $m_s_None$()); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_format_ValidationAnyOf().init___sci_List($m_Lio_kaitai_struct_format_ParseUtils$().getList__sci_Map__T__F2__sci_List__sci_List(src, "any-of", new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(src$2$2, path$2$2) { const path$2 = path$2$2; return $m_Lio_kaitai_struct_format_ParseUtils$().asExpression__O__sci_List__Lio_kaitai_struct_exprlang_Ast$expr(src$2$2, path$2) }) })(this)), path))) } else { return $m_s_None$() } }; } const $d_Lio_kaitai_struct_format_ValidationAnyOf$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationAnyOf$: 0 }, false, "io.kaitai.struct.format.ValidationAnyOf$", { Lio_kaitai_struct_format_ValidationAnyOf$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValidationAnyOf$.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationAnyOf$; let $n_Lio_kaitai_struct_format_ValidationAnyOf$ = (void 0); const $m_Lio_kaitai_struct_format_ValidationAnyOf$ = (function() { if ((!$n_Lio_kaitai_struct_format_ValidationAnyOf$)) { $n_Lio_kaitai_struct_format_ValidationAnyOf$ = new $c_Lio_kaitai_struct_format_ValidationAnyOf$().init___() }; return $n_Lio_kaitai_struct_format_ValidationAnyOf$ }); class $c_Lio_kaitai_struct_format_ValidationEq$ extends $c_O { constructor() { super(); this.LEGAL$undKEYS$1 = null }; init___() { $n_Lio_kaitai_struct_format_ValidationEq$ = this; const jsx$1 = $m_s_Predef$().Set$2; const array = ["eq"]; this.LEGAL$undKEYS$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); return this }; fromMap__sci_Map__sci_List__s_Option(src, path) { const this$1 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(src, "eq", path); if (this$1.isEmpty__Z()) { return $m_s_None$() } else { const arg1 = this$1.get__O(); const x0$1 = arg1; $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(src, $m_Lio_kaitai_struct_format_ValidationEq$().LEGAL$undKEYS$1, path, $m_s_None$()); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_format_ValidationEq().init___Lio_kaitai_struct_exprlang_Ast$expr(x0$1)) } }; } const $d_Lio_kaitai_struct_format_ValidationEq$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationEq$: 0 }, false, "io.kaitai.struct.format.ValidationEq$", { Lio_kaitai_struct_format_ValidationEq$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValidationEq$.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationEq$; let $n_Lio_kaitai_struct_format_ValidationEq$ = (void 0); const $m_Lio_kaitai_struct_format_ValidationEq$ = (function() { if ((!$n_Lio_kaitai_struct_format_ValidationEq$)) { $n_Lio_kaitai_struct_format_ValidationEq$ = new $c_Lio_kaitai_struct_format_ValidationEq$().init___() }; return $n_Lio_kaitai_struct_format_ValidationEq$ }); class $c_Lio_kaitai_struct_format_ValidationExpr$ extends $c_O { constructor() { super(); this.LEGAL$undKEYS$1 = null }; init___() { $n_Lio_kaitai_struct_format_ValidationExpr$ = this; const jsx$1 = $m_s_Predef$().Set$2; const array = ["expr"]; this.LEGAL$undKEYS$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); return this }; fromMap__sci_Map__sci_List__s_Option(src, path) { const this$1 = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(src, "expr", path); if (this$1.isEmpty__Z()) { return $m_s_None$() } else { const arg1 = this$1.get__O(); const x0$1 = arg1; $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(src, $m_Lio_kaitai_struct_format_ValidationExpr$().LEGAL$undKEYS$1, path, $m_s_None$()); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_format_ValidationExpr().init___Lio_kaitai_struct_exprlang_Ast$expr(x0$1)) } }; } const $d_Lio_kaitai_struct_format_ValidationExpr$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationExpr$: 0 }, false, "io.kaitai.struct.format.ValidationExpr$", { Lio_kaitai_struct_format_ValidationExpr$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValidationExpr$.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationExpr$; let $n_Lio_kaitai_struct_format_ValidationExpr$ = (void 0); const $m_Lio_kaitai_struct_format_ValidationExpr$ = (function() { if ((!$n_Lio_kaitai_struct_format_ValidationExpr$)) { $n_Lio_kaitai_struct_format_ValidationExpr$ = new $c_Lio_kaitai_struct_format_ValidationExpr$().init___() }; return $n_Lio_kaitai_struct_format_ValidationExpr$ }); class $c_Lio_kaitai_struct_format_ValidationRange$ extends $c_O { constructor() { super(); this.LEGAL$undKEYS$1 = null }; init___() { $n_Lio_kaitai_struct_format_ValidationRange$ = this; const jsx$1 = $m_s_Predef$().Set$2; const array = ["min", "max"]; this.LEGAL$undKEYS$1 = jsx$1.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array(array)); return this }; fromMap__sci_Map__sci_List__s_Option(src, path) { const minExprOpt = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(src, "min", path); const maxExprOpt = $m_Lio_kaitai_struct_format_ParseUtils$().getOptValueExpression__sci_Map__T__sci_List__s_Option(src, "max", path); const x1 = new $c_T2().init___O__O(minExprOpt, maxExprOpt); const p2 = x1.$$und1$f; const p3 = x1.$$und2$f; const x = $m_s_None$(); let jsx$1; if ((x === p2)) { const x$3 = $m_s_None$(); jsx$1 = (x$3 === p3) } else { jsx$1 = false }; if (jsx$1) { return $m_s_None$() }; const p4 = x1.$$und1$f; const p5 = x1.$$und2$f; if ((p4 instanceof $c_s_Some)) { const x6 = p4; const minExpr = x6.value$2; const x$5 = $m_s_None$(); if ((x$5 === p5)) { $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(src, this.LEGAL$undKEYS$1, path, $m_s_None$()); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_format_ValidationMin().init___Lio_kaitai_struct_exprlang_Ast$expr(minExpr)) } }; const p7 = x1.$$und1$f; const p8 = x1.$$und2$f; const x$7 = $m_s_None$(); if (((x$7 === p7) && (p8 instanceof $c_s_Some))) { const x9 = p8; const maxExpr = x9.value$2; $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(src, this.LEGAL$undKEYS$1, path, $m_s_None$()); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_format_ValidationMax().init___Lio_kaitai_struct_exprlang_Ast$expr(maxExpr)) }; const p10 = x1.$$und1$f; const p11 = x1.$$und2$f; if ((p10 instanceof $c_s_Some)) { const x12 = p10; const minExpr$2 = x12.value$2; if ((p11 instanceof $c_s_Some)) { const x13 = p11; const maxExpr$2 = x13.value$2; $m_Lio_kaitai_struct_format_ParseUtils$().ensureLegalKeys__sci_Map__sci_Set__sci_List__s_Option__V(src, this.LEGAL$undKEYS$1, path, $m_s_None$()); return new $c_s_Some().init___O(new $c_Lio_kaitai_struct_format_ValidationRange().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr(minExpr$2, maxExpr$2)) } }; throw new $c_s_MatchError().init___O(x1) }; } const $d_Lio_kaitai_struct_format_ValidationRange$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationRange$: 0 }, false, "io.kaitai.struct.format.ValidationRange$", { Lio_kaitai_struct_format_ValidationRange$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValidationRange$.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationRange$; let $n_Lio_kaitai_struct_format_ValidationRange$ = (void 0); const $m_Lio_kaitai_struct_format_ValidationRange$ = (function() { if ((!$n_Lio_kaitai_struct_format_ValidationRange$)) { $n_Lio_kaitai_struct_format_ValidationRange$ = new $c_Lio_kaitai_struct_format_ValidationRange$().init___() }; return $n_Lio_kaitai_struct_format_ValidationRange$ }); class $c_Lio_kaitai_struct_languages_CppCompiler$ extends $c_O { init___() { return this }; types2class__sci_List__T(components) { const f = (function($this) { return (function(name$2) { const name = name$2; return $m_Lio_kaitai_struct_languages_CppCompiler$().type2class__T__T(name) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((components === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = components.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = components.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(components, bf); let these = components; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T("::") }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_CppCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; kaitaiType2NativeType__Lio_kaitai_struct_CppRuntimeConfig__Lio_kaitai_struct_datatype_DataType__Z__T(config, attrType, absolute) { _kaitaiType2NativeType: while (true) { let rc70 = false; let x2 = null; let rc71 = false; let x4 = null; let rc72 = false; let x30 = null; const x1 = attrType; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { rc70 = true; x2 = x1; const p3 = x2.signed$3; if ((p3 === false)) { return "uint8_t" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { rc71 = true; x4 = x1; const p5 = x4.signed$3; const p6 = x4.width$3; let jsx$1; if ((p5 === false)) { const x$2 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$1 = (x$2 === p6) } else { jsx$1 = false }; if (jsx$1) { return "uint16_t" } }; if (rc71) { const p9 = x4.signed$3; const p10 = x4.width$3; let jsx$2; if ((p9 === false)) { const x$4 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$2 = (x$4 === p10) } else { jsx$2 = false }; if (jsx$2) { return "uint32_t" } }; if (rc71) { const p13 = x4.signed$3; const p14 = x4.width$3; let jsx$3; if ((p13 === false)) { const x$6 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$3 = (x$6 === p14) } else { jsx$3 = false }; if (jsx$3) { return "uint64_t" } }; if (rc70) { const p17 = x2.signed$3; if ((p17 === true)) { return "int8_t" } }; if (rc71) { const p19 = x4.signed$3; const p20 = x4.width$3; let jsx$4; if ((p19 === true)) { const x$8 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$4 = (x$8 === p20) } else { jsx$4 = false }; if (jsx$4) { return "int16_t" } }; if (rc71) { const p23 = x4.signed$3; const p24 = x4.width$3; let jsx$5; if ((p23 === true)) { const x$10 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$5 = (x$10 === p24) } else { jsx$5 = false }; if (jsx$5) { return "int32_t" } }; if (rc71) { const p27 = x4.signed$3; const p28 = x4.width$3; let jsx$6; if ((p27 === true)) { const x$12 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$6 = (x$12 === p28) } else { jsx$6 = false }; if (jsx$6) { return "int64_t" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) { rc72 = true; x30 = x1; const p31 = x30.width$3; const x$14 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); if ((x$14 === p31)) { return "float" } }; if (rc72) { const p34 = x30.width$3; const x$16 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); if ((x$16 === p34)) { return "double" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { return "uint64_t" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { return "bool" }; const x$18 = $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$(); if ((x$18 === x1)) { return "int32_t" }; const x$20 = $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$(); if ((x$20 === x1)) { return "double" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { return "std::string" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { return "std::string" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x62 = x1; const typeStr = this.types2class__sci_List__T((absolute ? x62.classSpec$3.get__O().name$1 : x62.name$3)); const x1$2 = config.pointers$1; const x$22 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x$22 === x1$2)) { return (typeStr + "*") } else { const x$24 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); if ((x$24 === x1$2)) { return (("std::shared_ptr<" + typeStr) + ">") } else { const x$26 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((x$26 === x1$2)) { return (x62.isOwning__Z() ? (("std::unique_ptr<" + typeStr) + ">") : (typeStr + "*")) } else { throw new $c_s_MatchError().init___O(x1$2) } } } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x63 = x1; return this.types2class__sci_List__T((absolute ? x63.enumSpec$1.get__O().name$1 : x63.name$1)) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream)) { const x39 = x1; const inType = x39.elType$2; const x1$3 = config.pointers$1; const x$28 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x$28 === x1$3)) { return (("std::vector<" + this.kaitaiType2NativeType__Lio_kaitai_struct_CppRuntimeConfig__Lio_kaitai_struct_datatype_DataType__Z__T(config, inType, absolute)) + ">*") } else { const x$30 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((x$30 === x1$3)) { return (("std::unique_ptr>") } else { throw new $c_s_MatchError().init___O(x1$3) } } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType)) { const x40 = x1; const inType$2 = x40.elType$2; return (("std::vector<" + this.kaitaiType2NativeType__Lio_kaitai_struct_CppRuntimeConfig__Lio_kaitai_struct_datatype_DataType__Z__T(config, inType$2, absolute)) + ">*") }; const x$32 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); if ((x$32 === x1)) { const x1$4 = config.pointers$1; const x$34 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x$34 === x1$4)) { return "kaitai::kstream*" } else { const x$36 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((x$36 === x1$4)) { return "std::unique_ptr" } else { throw new $c_s_MatchError().init___O(x1$4) } } }; const x$38 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); if ((x$38 === x1)) { return "kaitai::kstream*" }; const x$40 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); if ((x$40 === x1)) { const x1$5 = config.pointers$1; const x$42 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x$42 === x1$5)) { return "kaitai::kstruct*" } else { const x$44 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); if ((x$44 === x1$5)) { return "std::shared_ptr" } else { const x$46 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((x$46 === x1$5)) { return "std::unique_ptr" } else { throw new $c_s_MatchError().init___O(x1$5) } } } }; const x$48 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); if ((x$48 === x1)) { const x1$6 = config.pointers$1; const x$50 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x$50 === x1$6)) { return "kaitai::kstruct*" } else { const x$52 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); if ((x$52 === x1$6)) { return "std::shared_ptr" } else { const x$54 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((x$54 === x1$6)) { return "kaitai::kstruct*" } else { throw new $c_s_MatchError().init___O(x1$6) } } } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x68 = x1; attrType = this.combineSwitchType__Lio_kaitai_struct_datatype_DataType$SwitchType__Lio_kaitai_struct_datatype_DataType(x68); continue _kaitaiType2NativeType }; throw new $c_s_MatchError().init___O(x1) } }; combineSwitchType__Lio_kaitai_struct_datatype_DataType$SwitchType__Lio_kaitai_struct_datatype_DataType(st) { const ct1 = $m_Lio_kaitai_struct_translators_TypeDetector$().combineTypes__sc_Iterable__Lio_kaitai_struct_datatype_DataType(st.cases$2.filterNot__F1__sc_Map(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const caseExpr = x0$1.$$und1__O(); if ((x0$1.$$und2__O() instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { const x$2 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; return ((caseExpr === null) ? (x$2 === null) : caseExpr.equals__O__Z(x$2)) } }; return false }) })(this))).values__sc_Iterable()); return (st.isOwning$2 ? ct1 : ct1.asNonOwning__Lio_kaitai_struct_datatype_DataType()) }; type2class__T__T(name) { return (($m_Lio_kaitai_struct_Utils$(), name) + "_t") }; } const $d_Lio_kaitai_struct_languages_CppCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_CppCompiler$: 0 }, false, "io.kaitai.struct.languages.CppCompiler$", { Lio_kaitai_struct_languages_CppCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1 }); $c_Lio_kaitai_struct_languages_CppCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_CppCompiler$; let $n_Lio_kaitai_struct_languages_CppCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_CppCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_CppCompiler$)) { $n_Lio_kaitai_struct_languages_CppCompiler$ = new $c_Lio_kaitai_struct_languages_CppCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_CppCompiler$ }); const $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V = (function($thiz, id, expr, rep, isRaw) { const x = $m_Lio_kaitai_struct_format_RepeatEos$(); if ((x === rep)) { $thiz.handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) } else if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { $thiz.handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) } else if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil)) { $thiz.handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) } else { const x$3 = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x$3 === rep)) { $thiz.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) } else { throw new $c_s_MatchError().init___O(rep) } } }); const $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrBytesTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType$BytesType__T__Lio_kaitai_struct_format_RepeatSpec__Z__V = (function($thiz, id, dataType, io, rep, isRaw) { const x1 = dataType.process__s_Option(); const x = $m_s_None$(); let rawId; if ((x === x1)) { rawId = id } else { if ((!(x1 instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(x1) }; rawId = new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id) }; const expr = $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__parseExprBytes__Lio_kaitai_struct_datatype_DataType$BytesType__T__T($thiz, dataType, io); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, rawId, expr, rep, isRaw); const this$1 = dataType.process__s_Option(); if ((!this$1.isEmpty__Z())) { const arg1 = this$1.get__O(); const proc = arg1; $thiz.attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, rawId, id, rep) } }); const $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrSwitchTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__T__Lio_kaitai_struct_format_RepeatSpec__s_Option__Z__Lio_kaitai_struct_datatype_DataType__V = (function($thiz, id, on, cases, io, rep, defEndian, isNullable, assignType) { if (isNullable) { $thiz.condIfSetNull__Lio_kaitai_struct_format_Identifier__V(id) }; $thiz.switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, isNullable$1, id$1, io$1, rep$1, defEndian$1, assignType$1) { return (function(dataType$2) { const dataType = dataType$2; if (isNullable$1) { $this.condIfSetNonNull__Lio_kaitai_struct_format_Identifier__V(id$1) }; const assignTypeOpt = new $c_s_Some().init___O(assignType$1); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V($this, id$1, dataType, io$1, rep$1, false, defEndian$1, assignTypeOpt) }) })($thiz, isNullable, id, io, rep, defEndian, assignType)), new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2, id$2, io$2, rep$2, defEndian$2, assignType$2) { return (function(dataType$3$2) { const dataType$3 = dataType$3$2; if (this$2.switchBytesOnlyAsRaw__Z()) { if ((dataType$3 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { const id$3 = new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id$2); const assignTypeOpt$1 = new $c_s_Some().init___O(assignType$2); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this$2, id$3, dataType$3, io$2, rep$2, false, defEndian$2, assignTypeOpt$1) } else { const assignTypeOpt$2 = new $c_s_Some().init___O(assignType$2); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this$2, id$2, dataType$3, io$2, rep$2, false, defEndian$2, assignTypeOpt$2) } } else { const assignTypeOpt$3 = new $c_s_Some().init___O(assignType$2); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this$2, id$2, dataType$3, io$2, rep$2, false, defEndian$2, assignTypeOpt$3) } }) })($thiz, id, io, rep, defEndian, assignType))) }); const $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrUserTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType$UserType__T__Lio_kaitai_struct_format_RepeatSpec__s_Option__Lio_kaitai_struct_datatype_DataType__V = (function($thiz, id, dataType, io, rep, defEndian, assignType) { let newIO; if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { const x2 = dataType; const rawId = new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id); const byteType = x2.bytes$4; const assignTypeOpt = $m_s_None$(); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V($thiz, rawId, byteType, io, rep, true, defEndian, assignTypeOpt); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { /**/ } else { new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(byteType) }; if ($is_Lio_kaitai_struct_languages_components_AllocateAndStoreIO($thiz)) { newIO = $thiz.allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(rawId, rep) } else { if ((!$is_Lio_kaitai_struct_languages_components_AllocateIOLocalVar($thiz))) { throw new $c_s_MatchError().init___O($thiz) }; newIO = $thiz.allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(rawId, rep) } } else { if ((!(dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeInstream))) { throw new $c_s_MatchError().init___O(dataType) }; newIO = io }; const expr = $thiz.parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, dataType, newIO, defEndian); if ($thiz.config$1.autoRead$1) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, expr, rep, false) } else { const x$3 = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x$3 === rep)) { $thiz.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr); $thiz.userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V($thiz.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id), dataType, assignType) } else { const tempVarName = $thiz.localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id); $thiz.handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, tempVarName, expr); $thiz.userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(tempVarName, dataType, assignType); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, tempVarName, rep, false) } } }); const $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V = (function($thiz, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { const assignType = (assignTypeOpt.isEmpty__Z() ? dataType : assignTypeOpt.get__O()); let jsx$1; if ($thiz.config$1.readStoresPos$1) { const x$2 = $m_Lio_kaitai_struct_format_NoRepeat$(); jsx$1 = (!((rep !== null) && rep.equals__O__Z(x$2))) } else { jsx$1 = false }; if (jsx$1) { $thiz.attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(id, dataType, new $c_s_Some().init___O(io), rep) }; if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2 = dataType; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrUserTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType$UserType__T__Lio_kaitai_struct_format_RepeatSpec__s_Option__Lio_kaitai_struct_datatype_DataType__V($thiz, id, x2, io, rep, defEndian, assignType) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { const x3 = dataType; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrBytesTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType$BytesType__T__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, x3, io, rep, isRaw) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x4 = dataType; const x$4 = $m_Lio_kaitai_struct_format_NoRepeat$(); let isNullable; if (((rep !== null) && rep.equals__O__Z(x$4))) { isNullable = ($thiz.switchBytesOnlyAsRaw__Z() ? x4.isNullableSwitchRaw__Z() : x4.isNullable__Z()) } else { isNullable = false }; const on = x4.on$2; const cases = x4.cases$2; const assignType$1 = x4.combinedType__Lio_kaitai_struct_datatype_DataType(); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrSwitchTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__T__Lio_kaitai_struct_format_RepeatSpec__s_Option__Z__Lio_kaitai_struct_datatype_DataType__V($thiz, id, on, cases, io, rep, defEndian, isNullable, assignType$1) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType)) { const x5 = dataType; const jsx$2 = $thiz.translator__Lio_kaitai_struct_translators_BaseTranslator(); const dataType$1 = x5.bytes$2; const expr = jsx$2.bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T($f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__parseExprBytes__Lio_kaitai_struct_datatype_DataType$BytesType__T__T($thiz, dataType$1, io), new $c_Lio_kaitai_struct_exprlang_Ast$expr$Str().init___T(x5.encoding$2)); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, expr, rep, isRaw) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x6 = dataType; const expr$2 = $thiz.translator__Lio_kaitai_struct_translators_BaseTranslator().doEnumById__sci_List__T__T(x6.enumSpec$1.get__O().name$1, $thiz.parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(x6.basedOn$1, x6.basedOn$1, io, defEndian)); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, expr$2, rep, isRaw) } else { const expr$3 = $thiz.parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian); $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, expr$3, rep, isRaw) }; let jsx$3; if ($thiz.config$1.readStoresPos$1) { const x$6 = $m_Lio_kaitai_struct_format_NoRepeat$(); jsx$3 = (!((rep !== null) && rep.equals__O__Z(x$6))) } else { jsx$3 = false }; if (jsx$3) { $thiz.attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(id, dataType, io, rep) } }); const $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__parseExprBytes__Lio_kaitai_struct_datatype_DataType$BytesType__T__T = (function($thiz, dataType, io) { const expr = $thiz.parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, dataType, io, $m_s_None$()); if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const padRight = x2.padRight$2; return $thiz.bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr, padRight, terminator, include) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x4 = dataType; const terminator$2 = x4.terminator$2; const include$2 = x4.include$2; const padRight$2 = x4.padRight$2; return $thiz.bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr, padRight$2, terminator$2, include$2) } else { return expr } }); const $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V = (function($thiz, instName, dataType, value) { if ($thiz.config$1.readStoresPos$1) { $thiz.attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(instName, dataType, $m_s_None$(), $m_Lio_kaitai_struct_format_NoRepeat$()) }; $thiz.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(instName, $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T($thiz, value)) }); class $c_Lio_kaitai_struct_problems_KSYParseError$ extends $c_O { init___() { return this }; invalidParamCount__I__I__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(paramSize, argSize, path) { return this.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException((((("parameter count mismatch: " + paramSize) + " declared, but ") + argSize) + " used"), path) }; invalidId__T__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(id, entity, path) { const this$1 = $m_Lio_kaitai_struct_format_Identifier$().ReIdentifier$1; return this.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException((((((("invalid " + entity) + " ID: '") + id) + "', expected /") + this$1.pattern$1.$$undpattern$1) + "/"), path) }; incompatibleVersion__Lio_kaitai_struct_format_KSVersion__Lio_kaitai_struct_format_KSVersion__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(expected, got, path) { return this.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(((("this ksy requires compiler version at least " + expected) + ", but you have ") + got), path) }; withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(text, path) { const this$2 = new $c_Lio_kaitai_struct_problems_KSYParseError().init___T__sci_List__s_Option(text, path, $m_s_None$()); return new $c_Lio_kaitai_struct_problems_CompilationProblemException().init___Lio_kaitai_struct_problems_CompilationProblem(this$2) }; noKey__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(path) { return this.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException((("missing mandatory argument `" + $f_sc_LinearSeqOptimized__last__O(path)) + "`"), path) }; badProcess__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(got, path) { return this.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException((("incorrect process expression `" + got) + "`"), path) }; badDictValue__sci_Set__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(expected, got, path) { const this$1 = $m_sci_List$(); const cbf = this$1.ReusableCBFInstance$2; const this$2 = $f_sc_TraversableLike__to__scg_CanBuildFrom__O(expected, cbf); const ord = $m_s_math_Ordering$String$(); return this.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException((((("expected " + $f_sc_SeqLike__sorted__s_math_Ordering__O(this$2, ord).mkString__T__T(" / ")) + ", got '") + got) + "'"), path) }; expression__Lio_kaitai_struct_exprlang_Expressions$ParseException__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(epe, path) { const f = epe.failure$4; const pos = $m_Lfastparse_StringReprOps$().prettyIndex__Lfastparse_utils_ParserInput__I__T(f.extra$1.input$1, f.index$1); const lookup2 = $m_Lio_kaitai_struct_Utils$().safeLookup__T__I__I__T(epe.src$4, f.index$1, 2); const this$1 = ((lookup2 === "&&") ? new $c_s_Some().init___O("and") : ((lookup2 === "||") ? new $c_s_Some().init___O("or") : $m_s_None$())); let this$2; if (this$1.isEmpty__Z()) { this$2 = $m_s_None$() } else { const arg1 = this$1.get__O(); const x = arg1; this$2 = new $c_s_Some().init___O(((", did you mean '" + x) + "'?")) }; const suggestion = (this$2.isEmpty__Z() ? "" : this$2.get__O()); const this$3 = f.extra$1.traced__Lfastparse_core_Parsed$TracedFailure(); this$3.expected0__p1__Lfastparse_core_Precedence().toString__T(); const jsx$2 = epe.src$4; const jsx$1 = $m_sjsr_RuntimeString$(); const this$4 = f.extra$1.traced__Lfastparse_core_Parsed$TracedFailure(); return this.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException((((((("parsing expression '" + jsx$2) + "' failed on ") + pos) + ", ") + ("expected " + jsx$1.replaceAll__T__T__T__T(this$4.expected0__p1__Lfastparse_core_Precedence().toString__T(), "\n", "\\n"))) + suggestion), path) }; noKeys__sci_List__sci_Set__Lio_kaitai_struct_problems_CompilationProblemException(path, expectedKeys) { const this$1 = $m_sci_List$(); const cbf = this$1.ReusableCBFInstance$2; const this$2 = $f_sc_TraversableLike__to__scg_CanBuildFrom__O(expectedKeys, cbf); const ord = $m_s_math_Ordering$String$(); return this.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException((("expected any of " + $f_sc_SeqLike__sorted__s_math_Ordering__O(this$2, ord).mkString__T__T(", ")) + ", found none"), path) }; badType__T__O__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(expected, got, path) { const gotStr = ((got === null) ? "null" : (((got + " (") + $objectGetClass(got)) + ")")); return this.withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(((("expected " + expected) + ", got ") + gotStr), path) }; } const $d_Lio_kaitai_struct_problems_KSYParseError$ = new $TypeData().initClass({ Lio_kaitai_struct_problems_KSYParseError$: 0 }, false, "io.kaitai.struct.problems.KSYParseError$", { Lio_kaitai_struct_problems_KSYParseError$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_KSYParseError$.prototype.$classData = $d_Lio_kaitai_struct_problems_KSYParseError$; let $n_Lio_kaitai_struct_problems_KSYParseError$ = (void 0); const $m_Lio_kaitai_struct_problems_KSYParseError$ = (function() { if ((!$n_Lio_kaitai_struct_problems_KSYParseError$)) { $n_Lio_kaitai_struct_problems_KSYParseError$ = new $c_Lio_kaitai_struct_problems_KSYParseError$().init___() }; return $n_Lio_kaitai_struct_problems_KSYParseError$ }); class $c_Lio_kaitai_struct_problems_ProblemCoords$ extends $c_O { init___() { return this }; formatFileName__s_Option__T(file) { if ((file instanceof $c_s_Some)) { const x2 = file; const x = x2.value$2; const target = $g.String.fromCharCode(92); const replacement = $g.String.fromCharCode(47); return x.split(target).join(replacement) } else { const x$2 = $m_s_None$(); if ((x$2 === file)) { return "(main)" } else { throw new $c_s_MatchError().init___O(file) } } }; } const $d_Lio_kaitai_struct_problems_ProblemCoords$ = new $TypeData().initClass({ Lio_kaitai_struct_problems_ProblemCoords$: 0 }, false, "io.kaitai.struct.problems.ProblemCoords$", { Lio_kaitai_struct_problems_ProblemCoords$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_ProblemCoords$.prototype.$classData = $d_Lio_kaitai_struct_problems_ProblemCoords$; let $n_Lio_kaitai_struct_problems_ProblemCoords$ = (void 0); const $m_Lio_kaitai_struct_problems_ProblemCoords$ = (function() { if ((!$n_Lio_kaitai_struct_problems_ProblemCoords$)) { $n_Lio_kaitai_struct_problems_ProblemCoords$ = new $c_Lio_kaitai_struct_problems_ProblemCoords$().init___() }; return $n_Lio_kaitai_struct_problems_ProblemCoords$ }); class $c_Lio_kaitai_struct_problems_StyleWarning extends $c_Lio_kaitai_struct_problems_CompilationProblem { constructor() { super(); this.coords$2 = null }; severity__Lio_kaitai_struct_problems_ProblemSeverity() { return $m_Lio_kaitai_struct_problems_ProblemSeverity$Warning$() }; init___Lio_kaitai_struct_problems_ProblemCoords(coords) { this.coords$2 = coords; return this }; text__T() { return (((this.warningText__T() + " (see https://doc.kaitai.io/ksy_style_guide.html#") + this.styleGuideAnchor__T()) + ")") }; } class $c_Ljava_math_BigDecimal$ extends $c_O { constructor() { super(); this.ZERO$1 = null; this.ONE$1 = null; this.TEN$1 = null; this.java$math$BigDecimal$$LongFivePows$1 = null; this.java$math$BigDecimal$$LongFivePowsBitLength$1 = null; this.LongTenPows$1 = null; this.java$math$BigDecimal$$LongTenPowsBitLength$1 = null; this.BigIntScaledByZero$1 = null; this.ZeroScaledBy$1 = null; this.java$math$BigDecimal$$CharZeros$1 = null }; valueOf__J__I__Ljava_math_BigDecimal(unscaledVal, scale) { return ((scale === 0) ? this.valueOf__J__Ljava_math_BigDecimal(unscaledVal) : (((((unscaledVal.lo$2 === 0) && (unscaledVal.hi$2 === 0)) && (scale >= 0)) && (scale < this.ZeroScaledBy$1.u.length)) ? this.ZeroScaledBy$1.u[scale] : new $c_Ljava_math_BigDecimal().init___J__I(unscaledVal, scale))) }; java$math$BigDecimal$$longCompareTo__J__J__I(value1, value2) { const ahi = value1.hi$2; const bhi = value2.hi$2; if (((ahi === bhi) ? (((-2147483648) ^ value1.lo$2) > ((-2147483648) ^ value2.lo$2)) : (ahi > bhi))) { return 1 } else { const ahi$1 = value1.hi$2; const bhi$1 = value2.hi$2; if (((ahi$1 === bhi$1) ? (((-2147483648) ^ value1.lo$2) < ((-2147483648) ^ value2.lo$2)) : (ahi$1 < bhi$1))) { return (-1) } else { return 0 } } }; init___() { $n_Ljava_math_BigDecimal$ = this; this.ZERO$1 = new $c_Ljava_math_BigDecimal().init___I__I(0, 0); this.ONE$1 = new $c_Ljava_math_BigDecimal().init___I__I(1, 0); this.TEN$1 = new $c_Ljava_math_BigDecimal().init___I__I(10, 0); this.java$math$BigDecimal$$LongFivePows$1 = this.newArrayOfPows__I__I__AJ(28, 5); const n = this.java$math$BigDecimal$$LongFivePows$1.u.length; let elems$2 = null; elems$2 = []; let i = 0; while ((i < n)) { const arg1 = i; const elem = $m_Ljava_math_BigDecimal$().bitLength__J__I($m_Ljava_math_BigDecimal$().java$math$BigDecimal$$LongFivePows$1.u[arg1]); elems$2.push(elem); i = ((1 + i) | 0) }; this.java$math$BigDecimal$$LongFivePowsBitLength$1 = $makeNativeArrayWrapper($d_I.getArrayOf(), elems$2); this.LongTenPows$1 = this.newArrayOfPows__I__I__AJ(19, 10); const n$1 = this.LongTenPows$1.u.length; let elems$2$1 = null; elems$2$1 = []; let i$1 = 0; while ((i$1 < n$1)) { const arg1$1 = i$1; const elem$1 = $m_Ljava_math_BigDecimal$().bitLength__J__I($m_Ljava_math_BigDecimal$().LongTenPows$1.u[arg1$1]); elems$2$1.push(elem$1); i$1 = ((1 + i$1) | 0) }; this.java$math$BigDecimal$$LongTenPowsBitLength$1 = $makeNativeArrayWrapper($d_I.getArrayOf(), elems$2$1); let elems$2$2 = null; elems$2$2 = []; let i$2 = 0; while ((i$2 < 11)) { const arg1$2 = i$2; const elem$2 = new $c_Ljava_math_BigDecimal().init___I__I(arg1$2, 0); elems$2$2.push(elem$2); i$2 = ((1 + i$2) | 0) }; this.BigIntScaledByZero$1 = $makeNativeArrayWrapper($d_Ljava_math_BigDecimal.getArrayOf(), elems$2$2); let elems$2$3 = null; elems$2$3 = []; let i$3 = 0; while ((i$3 < 11)) { const arg1$3 = i$3; const elem$3 = new $c_Ljava_math_BigDecimal().init___I__I(0, arg1$3); elems$2$3.push(elem$3); i$3 = ((1 + i$3) | 0) }; this.ZeroScaledBy$1 = $makeNativeArrayWrapper($d_Ljava_math_BigDecimal.getArrayOf(), elems$2$3); this.java$math$BigDecimal$$CharZeros$1 = "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; return this }; java$math$BigDecimal$$roundingBehavior__I__I__Ljava_math_RoundingMode__I(parityBit, fraction, roundingMode) { const absFraction = ((fraction < 0) ? ((-fraction) | 0) : fraction); const sigFraction = ((fraction === 0) ? 0 : ((fraction < 0) ? (-1) : 1)); const x = $m_Ljava_math_RoundingMode$().UP$1; if ((x === roundingMode)) { return sigFraction } else { const x$3 = $m_Ljava_math_RoundingMode$().DOWN$1; if ((x$3 === roundingMode)) { return 0 } else { const x$5 = $m_Ljava_math_RoundingMode$().CEILING$1; if ((x$5 === roundingMode)) { return ((sigFraction > 0) ? sigFraction : 0) } else { const x$7 = $m_Ljava_math_RoundingMode$().FLOOR$1; if ((x$7 === roundingMode)) { return ((sigFraction < 0) ? sigFraction : 0) } else { const x$9 = $m_Ljava_math_RoundingMode$().HALF$undUP$1; if ((x$9 === roundingMode)) { return ((absFraction >= 5) ? sigFraction : 0) } else { const x$11 = $m_Ljava_math_RoundingMode$().HALF$undDOWN$1; if ((x$11 === roundingMode)) { return ((absFraction > 5) ? sigFraction : 0) } else { const x$13 = $m_Ljava_math_RoundingMode$().HALF$undEVEN$1; if ((x$13 === roundingMode)) { return ((((absFraction + parityBit) | 0) > 5) ? sigFraction : 0) } else { const x$15 = $m_Ljava_math_RoundingMode$().UNNECESSARY$1; if ((x$15 === roundingMode)) { if ((fraction === 0)) { return 0 } else { throw new $c_jl_ArithmeticException().init___T("Rounding necessary") } } else { throw new $c_s_MatchError().init___O(roundingMode) } } } } } } } } }; java$math$BigDecimal$$bitLength__I__I(sValue) { const smallValue = ((sValue < 0) ? (~sValue) : sValue); return ((32 - $clz32(smallValue)) | 0) }; java$math$BigDecimal$$safeLongToInt__J__I(longValue) { const ahi = longValue.hi$2; let jsx$1; if (((ahi === (-1)) ? (((-2147483648) ^ longValue.lo$2) < 0) : (ahi < (-1)))) { jsx$1 = true } else { const ahi$1 = longValue.hi$2; jsx$1 = ((ahi$1 === 0) ? (((-2147483648) ^ longValue.lo$2) > (-1)) : (ahi$1 > 0)) }; if (jsx$1) { throw new $c_jl_ArithmeticException().init___T(("Out of int range: " + longValue)) }; return longValue.lo$2 }; valueOf__J__Ljava_math_BigDecimal(unscaledVal) { const ahi = unscaledVal.hi$2; let jsx$1; if ((ahi >= 0)) { const ahi$1 = unscaledVal.hi$2; jsx$1 = ((ahi$1 === 0) ? (((-2147483648) ^ unscaledVal.lo$2) < (-2147483637)) : (ahi$1 < 0)) } else { jsx$1 = false }; if (jsx$1) { return this.BigIntScaledByZero$1.u[unscaledVal.lo$2] } else { return new $c_Ljava_math_BigDecimal().init___J__I(unscaledVal, 0) } }; bitLength__J__I(sValue) { const ahi = sValue.hi$2; let t; if ((ahi < 0)) { const lo = (~sValue.lo$2); const hi = (~sValue.hi$2); const x_$_lo$2 = lo; const x_$_hi$2 = hi; t = new $c_sjsr_RuntimeLong().init___I__I(x_$_lo$2, x_$_hi$2) } else { t = sValue }; const lo$1 = t.lo$2; const hi$1 = t.hi$2; return ((64 - ((hi$1 !== 0) ? $clz32(hi$1) : ((32 + $clz32(lo$1)) | 0))) | 0) }; newArrayOfPows__I__I__AJ(len, pow) { let elems$2 = null; elems$2 = []; if ((len > 0)) { let acc = new $c_sjsr_RuntimeLong().init___I__I(1, 0); let i = 1; const elem = acc; const unboxedElem = ((elem === null) ? null : elem); elems$2.push(unboxedElem); while ((i < len)) { const arg1 = acc; const t = $uJ(arg1); const lo = t.lo$2; const hi = t.hi$2; const hi$1 = (pow >> 31); const a0 = (65535 & lo); const a1 = ((lo >>> 16) | 0); const b0 = (65535 & pow); const b1 = ((pow >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo$1 = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$2 = (((((((($imul(lo, hi$1) + $imul(hi, pow)) | 0) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); acc = new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$2); i = ((1 + i) | 0); const elem$1 = acc; const unboxedElem$1 = ((elem$1 === null) ? null : elem$1); elems$2.push(unboxedElem$1) } }; return $makeNativeArrayWrapper($d_J.getArrayOf(), elems$2) }; java$math$BigDecimal$$zeroScaledBy__J__Ljava_math_BigDecimal(longScale) { const value = longScale.lo$2; const hi = (value >> 31); if (((longScale.lo$2 === value) && (longScale.hi$2 === hi))) { return this.valueOf__J__I__Ljava_math_BigDecimal($m_sjsr_RuntimeLong$().Zero__sjsr_RuntimeLong(), longScale.lo$2) } else { const ahi = longScale.hi$2; if ((ahi >= 0)) { return new $c_Ljava_math_BigDecimal().init___I__I(0, 2147483647) } else { return new $c_Ljava_math_BigDecimal().init___I__I(0, (-2147483648)) } } }; } const $d_Ljava_math_BigDecimal$ = new $TypeData().initClass({ Ljava_math_BigDecimal$: 0 }, false, "java.math.BigDecimal$", { Ljava_math_BigDecimal$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Ljava_math_BigDecimal$.prototype.$classData = $d_Ljava_math_BigDecimal$; let $n_Ljava_math_BigDecimal$ = (void 0); const $m_Ljava_math_BigDecimal$ = (function() { if ((!$n_Ljava_math_BigDecimal$)) { $n_Ljava_math_BigDecimal$ = new $c_Ljava_math_BigDecimal$().init___() }; return $n_Ljava_math_BigDecimal$ }); class $c_Ljava_math_BigInteger$ extends $c_O { constructor() { super(); this.ONE$1 = null; this.TEN$1 = null; this.ZERO$1 = null; this.MINUS$undONE$1 = null; this.SMALL$undVALUES$1 = null; this.TWO$undPOWS$1 = null }; init___() { $n_Ljava_math_BigInteger$ = this; this.ONE$1 = new $c_Ljava_math_BigInteger().init___I__I(1, 1); this.TEN$1 = new $c_Ljava_math_BigInteger().init___I__I(1, 10); this.ZERO$1 = new $c_Ljava_math_BigInteger().init___I__I(0, 0); this.MINUS$undONE$1 = new $c_Ljava_math_BigInteger().init___I__I((-1), 1); this.SMALL$undVALUES$1 = $makeNativeArrayWrapper($d_Ljava_math_BigInteger.getArrayOf(), [this.ZERO$1, this.ONE$1, new $c_Ljava_math_BigInteger().init___I__I(1, 2), new $c_Ljava_math_BigInteger().init___I__I(1, 3), new $c_Ljava_math_BigInteger().init___I__I(1, 4), new $c_Ljava_math_BigInteger().init___I__I(1, 5), new $c_Ljava_math_BigInteger().init___I__I(1, 6), new $c_Ljava_math_BigInteger().init___I__I(1, 7), new $c_Ljava_math_BigInteger().init___I__I(1, 8), new $c_Ljava_math_BigInteger().init___I__I(1, 9), this.TEN$1]); let elems$2 = null; elems$2 = []; let i = 0; while ((i < 32)) { const arg1 = i; const jsx$1 = $m_Ljava_math_BigInteger$(); const lo = (((32 & arg1) === 0) ? (1 << arg1) : 0); const hi = (((32 & arg1) === 0) ? 0 : (1 << arg1)); const elem = jsx$1.valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(lo, hi)); const unboxedElem = ((elem === null) ? null : elem); elems$2.push(unboxedElem); i = ((1 + i) | 0) }; this.TWO$undPOWS$1 = $makeNativeArrayWrapper($d_Ljava_math_BigInteger.getArrayOf(), elems$2); return this }; getPowerOfTwo__I__Ljava_math_BigInteger(exp) { if ((exp < this.TWO$undPOWS$1.u.length)) { return this.TWO$undPOWS$1.u[exp] } else { const intCount = (exp >> 5); const bitN = (31 & exp); const resDigits = $newArrayObject($d_I.getArrayOf(), [((1 + intCount) | 0)]); resDigits.u[intCount] = (1 << bitN); return new $c_Ljava_math_BigInteger().init___I__I__AI(1, ((1 + intCount) | 0), resDigits) } }; valueOf__J__Ljava_math_BigInteger(lVal) { const ahi = lVal.hi$2; if ((ahi < 0)) { if ((!((lVal.lo$2 === (-1)) && (lVal.hi$2 === (-1))))) { const lo = lVal.lo$2; const hi = lVal.hi$2; const lo$1 = ((-lo) | 0); const hi$1 = ((lo !== 0) ? (~hi) : ((-hi) | 0)); return new $c_Ljava_math_BigInteger().init___I__J((-1), new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$1)) } else { return this.MINUS$undONE$1 } } else { const ahi$1 = lVal.hi$2; if (((ahi$1 === 0) ? (((-2147483648) ^ lVal.lo$2) <= (-2147483638)) : (ahi$1 < 0))) { return this.SMALL$undVALUES$1.u[lVal.lo$2] } else { return new $c_Ljava_math_BigInteger().init___I__J(1, lVal) } } }; } const $d_Ljava_math_BigInteger$ = new $TypeData().initClass({ Ljava_math_BigInteger$: 0 }, false, "java.math.BigInteger$", { Ljava_math_BigInteger$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Ljava_math_BigInteger$.prototype.$classData = $d_Ljava_math_BigInteger$; let $n_Ljava_math_BigInteger$ = (void 0); const $m_Ljava_math_BigInteger$ = (function() { if ((!$n_Ljava_math_BigInteger$)) { $n_Ljava_math_BigInteger$ = new $c_Ljava_math_BigInteger$().init___() }; return $n_Ljava_math_BigInteger$ }); class $c_Ljava_math_RoundingMode$ extends $c_O { constructor() { super(); this.UP$1 = null; this.DOWN$1 = null; this.CEILING$1 = null; this.FLOOR$1 = null; this.HALF$undUP$1 = null; this.HALF$undDOWN$1 = null; this.HALF$undEVEN$1 = null; this.UNNECESSARY$1 = null; this.$$undvalues$1 = null }; init___() { $n_Ljava_math_RoundingMode$ = this; this.UP$1 = new $c_Ljava_math_RoundingMode().init___T__I("UP", 0); this.DOWN$1 = new $c_Ljava_math_RoundingMode().init___T__I("DOWN", 1); this.CEILING$1 = new $c_Ljava_math_RoundingMode().init___T__I("CEILING", 2); this.FLOOR$1 = new $c_Ljava_math_RoundingMode().init___T__I("FLOOR", 3); this.HALF$undUP$1 = new $c_Ljava_math_RoundingMode().init___T__I("HALF_UP", 4); this.HALF$undDOWN$1 = new $c_Ljava_math_RoundingMode().init___T__I("HALF_DOWN", 5); this.HALF$undEVEN$1 = new $c_Ljava_math_RoundingMode().init___T__I("HALF_EVEN", 6); this.UNNECESSARY$1 = new $c_Ljava_math_RoundingMode().init___T__I("UNNECESSARY", 7); this.$$undvalues$1 = $makeNativeArrayWrapper($d_Ljava_math_RoundingMode.getArrayOf(), [this.UP$1, this.DOWN$1, this.CEILING$1, this.FLOOR$1, this.HALF$undUP$1, this.HALF$undDOWN$1, this.HALF$undEVEN$1, this.UNNECESSARY$1]); return this }; } const $d_Ljava_math_RoundingMode$ = new $TypeData().initClass({ Ljava_math_RoundingMode$: 0 }, false, "java.math.RoundingMode$", { Ljava_math_RoundingMode$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Ljava_math_RoundingMode$.prototype.$classData = $d_Ljava_math_RoundingMode$; let $n_Ljava_math_RoundingMode$ = (void 0); const $m_Ljava_math_RoundingMode$ = (function() { if ((!$n_Ljava_math_RoundingMode$)) { $n_Ljava_math_RoundingMode$ = new $c_Ljava_math_RoundingMode$().init___() }; return $n_Ljava_math_RoundingMode$ }); class $c_Ljava_nio_ByteBuffer extends $c_Ljava_nio_Buffer { constructor() { super(); this.$$undarray$2 = null; this.$$undarrayOffset$2 = 0; this.$$undisBigEndian$2 = false }; equals__O__Z(that) { if ((that instanceof $c_Ljava_nio_ByteBuffer)) { const x2 = that; return (this.compareTo__Ljava_nio_ByteBuffer__I(x2) === 0) } else { return false } }; init___I__AB__I(_capacity, _array, _arrayOffset) { this.$$undarray$2 = _array; this.$$undarrayOffset$2 = _arrayOffset; $c_Ljava_nio_Buffer.prototype.init___I.call(this, _capacity); this.$$undisBigEndian$2 = true; return this }; compareTo__Ljava_nio_ByteBuffer__I(that) { if ((this === that)) { return 0 } else { const thisStart = this.java$nio$Buffer$$$undposition$1; const thisRemaining = ((this.$$undlimit$1 - thisStart) | 0); const thatStart = that.java$nio$Buffer$$$undposition$1; const thatRemaining = ((that.$$undlimit$1 - thatStart) | 0); const shortestLength = ((thisRemaining < thatRemaining) ? thisRemaining : thatRemaining); let i = 0; while ((i !== shortestLength)) { const index = ((thisStart + i) | 0); const arg1 = (this.$$undarray$2.u[((this.$$undarrayOffset$2 + index) | 0)] | 0); const index$1 = ((thatStart + i) | 0); const arg2 = (that.$$undarray$2.u[((that.$$undarrayOffset$2 + index$1) | 0)] | 0); const x$1 = (arg1 | 0); const x$2 = (arg2 | 0); const cmp = ((x$1 - x$2) | 0); if ((cmp !== 0)) { return cmp }; i = ((1 + i) | 0) }; return ((thisRemaining === thatRemaining) ? 0 : ((thisRemaining < thatRemaining) ? (-1) : 1)) } }; put__Ljava_nio_ByteBuffer__Ljava_nio_ByteBuffer(src) { if ((src === this)) { throw new $c_jl_IllegalArgumentException().init___() }; if (this.$$undreadOnly$3) { throw new $c_Ljava_nio_ReadOnlyBufferException().init___() }; const srcLimit = src.$$undlimit$1; let srcPos = src.java$nio$Buffer$$$undposition$1; const length = ((srcLimit - srcPos) | 0); const p = this.java$nio$Buffer$$$undposition$1; const newPos = ((p + length) | 0); if ((newPos > this.$$undlimit$1)) { throw new $c_Ljava_nio_BufferOverflowException().init___() }; this.java$nio$Buffer$$$undposition$1 = newPos; let selfPos = p; $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call(src, srcLimit); const srcArray = src.$$undarray$2; if ((srcArray !== null)) { const startIndex = selfPos; const offset = ((src.$$undarrayOffset$2 + srcPos) | 0); $systemArraycopy(srcArray, offset, this.$$undarray$2, ((this.$$undarrayOffset$2 + startIndex) | 0), length) } else { while ((srcPos !== srcLimit)) { const index$1 = selfPos; const index = srcPos; const elem = (src.$$undarray$2.u[((src.$$undarrayOffset$2 + index) | 0)] | 0); const elem$1 = (elem | 0); this.$$undarray$2.u[((this.$$undarrayOffset$2 + index$1) | 0)] = (elem$1 | 0); srcPos = ((1 + srcPos) | 0); selfPos = ((1 + selfPos) | 0) } }; return this }; hashCode__I() { const start = this.java$nio$Buffer$$$undposition$1; const end = this.$$undlimit$1; let h = (-547316498); let i = start; while ((i !== end)) { const jsx$3 = $m_s_util_hashing_MurmurHash3$(); const jsx$2 = h; const jsx$1 = $m_sr_Statics$(); const index = i; h = jsx$3.mix__I__I__I(jsx$2, jsx$1.anyHash__O__I((this.$$undarray$2.u[((this.$$undarrayOffset$2 + index) | 0)] | 0))); i = ((1 + i) | 0) }; return $m_s_util_hashing_MurmurHash3$().finalizeHash__I__I__I(h, ((end - start) | 0)) }; } const $isArrayOf_Ljava_nio_ByteBuffer = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_nio_ByteBuffer))) }); class $c_Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon extends $c_Ljava_nio_charset_Charset { constructor() { super(); this.java$nio$charset$ISO$und8859$und1$undAnd$undUS$undASCII$undCommon$$maxValue$2 = 0 }; init___T__AT__I(name, aliases, maxValue) { this.java$nio$charset$ISO$und8859$und1$undAnd$undUS$undASCII$undCommon$$maxValue$2 = maxValue; $c_Ljava_nio_charset_Charset.prototype.init___T__AT.call(this, name, aliases); return this }; newEncoder__Ljava_nio_charset_CharsetEncoder() { return new $c_Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon$Encoder().init___Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon(this) }; } class $c_Ljava_nio_charset_UTF$und16$undCommon extends $c_Ljava_nio_charset_Charset { constructor() { super(); this.java$nio$charset$UTF$und16$undCommon$$endianness$2 = 0 }; init___T__AT__I(name, aliases, endianness) { this.java$nio$charset$UTF$und16$undCommon$$endianness$2 = endianness; $c_Ljava_nio_charset_Charset.prototype.init___T__AT.call(this, name, aliases); return this }; newEncoder__Ljava_nio_charset_CharsetEncoder() { return new $c_Ljava_nio_charset_UTF$und16$undCommon$Encoder().init___Ljava_nio_charset_UTF$und16$undCommon(this) }; } class $c_Ljava_nio_charset_UTF$und8$ extends $c_Ljava_nio_charset_Charset { constructor() { super(); this.java$nio$charset$UTF$und8$$lengthByLeading$2 = null }; init___() { $c_Ljava_nio_charset_Charset.prototype.init___T__AT.call(this, "UTF-8", $makeNativeArrayWrapper($d_T.getArrayOf(), ["UTF8", "unicode-1-1-utf-8"])); $n_Ljava_nio_charset_UTF$und8$ = this; this.java$nio$charset$UTF$und8$$lengthByLeading$2 = $makeNativeArrayWrapper($d_I.getArrayOf(), [(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)]); return this }; newEncoder__Ljava_nio_charset_CharsetEncoder() { return new $c_Ljava_nio_charset_UTF$und8$Encoder().init___() }; } const $d_Ljava_nio_charset_UTF$und8$ = new $TypeData().initClass({ Ljava_nio_charset_UTF$und8$: 0 }, false, "java.nio.charset.UTF_8$", { Ljava_nio_charset_UTF$und8$: 1, Ljava_nio_charset_Charset: 1, O: 1, jl_Comparable: 1 }); $c_Ljava_nio_charset_UTF$und8$.prototype.$classData = $d_Ljava_nio_charset_UTF$und8$; let $n_Ljava_nio_charset_UTF$und8$ = (void 0); const $m_Ljava_nio_charset_UTF$und8$ = (function() { if ((!$n_Ljava_nio_charset_UTF$und8$)) { $n_Ljava_nio_charset_UTF$und8$ = new $c_Ljava_nio_charset_UTF$und8$().init___() }; return $n_Ljava_nio_charset_UTF$und8$ }); const $isArrayOf_jl_Boolean = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Boolean))) }); const $d_jl_Boolean = new $TypeData().initClass({ jl_Boolean: 0 }, false, "java.lang.Boolean", { jl_Boolean: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }, (void 0), (void 0), (function(x) { return ((typeof x) === "boolean") })); class $c_jl_Character extends $c_O { constructor() { super(); this.value$1 = 0 }; equals__O__Z(that) { if ((that instanceof $c_jl_Character)) { const jsx$1 = this.value$1; const this$1 = that; return (jsx$1 === this$1.value$1) } else { return false } }; toString__T() { const c = this.value$1; return $g.String.fromCharCode(c) }; init___C(value) { this.value$1 = value; return this }; hashCode__I() { return this.value$1 }; } const $isArrayOf_jl_Character = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Character))) }); const $d_jl_Character = new $TypeData().initClass({ jl_Character: 0 }, false, "java.lang.Character", { jl_Character: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }); $c_jl_Character.prototype.$classData = $d_jl_Character; class $c_jl_Character$ extends $c_O { constructor() { super(); this.java$lang$Character$$charTypesFirst256$1 = null; this.charTypeIndices$1 = null; this.charTypes$1 = null; this.isMirroredIndices$1 = null; this.nonASCIIZeroDigitCodePoints$1 = null; this.bitmap$0$1 = 0 }; charTypes$lzycompute__p1__AI() { if (((((4 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.charTypes$1 = $makeNativeArrayWrapper($d_I.getArrayOf(), [1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 5, 1, 2, 5, 1, 3, 2, 1, 3, 2, 1, 3, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 3, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 5, 2, 4, 27, 4, 27, 4, 27, 4, 27, 4, 27, 6, 1, 2, 1, 2, 4, 27, 1, 2, 0, 4, 2, 24, 0, 27, 1, 24, 1, 0, 1, 0, 1, 2, 1, 0, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 25, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 28, 6, 7, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 0, 1, 0, 4, 24, 0, 2, 0, 24, 20, 0, 26, 0, 6, 20, 6, 24, 6, 24, 6, 24, 6, 0, 5, 0, 5, 24, 0, 16, 0, 25, 24, 26, 24, 28, 6, 24, 0, 24, 5, 4, 5, 6, 9, 24, 5, 6, 5, 24, 5, 6, 16, 28, 6, 4, 6, 28, 6, 5, 9, 5, 28, 5, 24, 0, 16, 5, 6, 5, 6, 0, 5, 6, 5, 0, 9, 5, 6, 4, 28, 24, 4, 0, 5, 6, 4, 6, 4, 6, 4, 6, 0, 24, 0, 5, 6, 0, 24, 0, 5, 0, 5, 0, 6, 0, 6, 8, 5, 6, 8, 6, 5, 8, 6, 8, 6, 8, 5, 6, 5, 6, 24, 9, 24, 4, 5, 0, 5, 0, 6, 8, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 6, 5, 8, 6, 0, 8, 0, 8, 6, 5, 0, 8, 0, 5, 0, 5, 6, 0, 9, 5, 26, 11, 28, 26, 0, 6, 8, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 6, 0, 8, 6, 0, 6, 0, 6, 0, 6, 0, 5, 0, 5, 0, 9, 6, 5, 6, 0, 6, 8, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 6, 5, 8, 6, 0, 6, 8, 0, 8, 6, 0, 5, 0, 5, 6, 0, 9, 24, 26, 0, 6, 8, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 6, 5, 8, 6, 8, 6, 0, 8, 0, 8, 6, 0, 6, 8, 0, 5, 0, 5, 6, 0, 9, 28, 5, 11, 0, 6, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 8, 6, 8, 0, 8, 0, 8, 6, 0, 5, 0, 8, 0, 9, 11, 28, 26, 28, 0, 8, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 6, 8, 0, 6, 0, 6, 0, 6, 0, 5, 0, 5, 6, 0, 9, 0, 11, 28, 0, 8, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 6, 5, 8, 6, 8, 0, 6, 8, 0, 8, 6, 0, 8, 0, 5, 0, 5, 6, 0, 9, 0, 5, 0, 8, 0, 5, 0, 5, 0, 5, 0, 5, 8, 6, 0, 8, 0, 8, 6, 5, 0, 8, 0, 5, 6, 0, 9, 11, 0, 28, 5, 0, 8, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 6, 0, 8, 6, 0, 6, 0, 8, 0, 8, 24, 0, 5, 6, 5, 6, 0, 26, 5, 4, 6, 24, 9, 24, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 6, 5, 6, 0, 6, 5, 0, 5, 0, 4, 0, 6, 0, 9, 0, 5, 0, 5, 28, 24, 28, 24, 28, 6, 28, 9, 11, 28, 6, 28, 6, 28, 6, 21, 22, 21, 22, 8, 5, 0, 5, 0, 6, 8, 6, 24, 6, 5, 6, 0, 6, 0, 28, 6, 28, 0, 28, 24, 28, 24, 0, 5, 8, 6, 8, 6, 8, 6, 8, 6, 5, 9, 24, 5, 8, 6, 5, 6, 5, 8, 5, 8, 5, 6, 5, 6, 8, 6, 8, 6, 5, 8, 9, 8, 6, 28, 1, 0, 1, 0, 1, 0, 5, 24, 4, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 6, 24, 11, 0, 5, 28, 0, 5, 0, 20, 5, 24, 5, 12, 5, 21, 22, 0, 5, 24, 10, 0, 5, 0, 5, 6, 0, 5, 6, 24, 0, 5, 6, 0, 5, 0, 5, 0, 6, 0, 5, 6, 8, 6, 8, 6, 8, 6, 24, 4, 24, 26, 5, 6, 0, 9, 0, 11, 0, 24, 20, 24, 6, 12, 0, 9, 0, 5, 4, 5, 0, 5, 6, 5, 0, 5, 0, 5, 0, 6, 8, 6, 8, 0, 8, 6, 8, 6, 0, 28, 0, 24, 9, 5, 0, 5, 0, 5, 0, 8, 5, 8, 0, 9, 11, 0, 28, 5, 6, 8, 0, 24, 5, 8, 6, 8, 6, 0, 6, 8, 6, 8, 6, 8, 6, 0, 6, 9, 0, 9, 0, 24, 4, 24, 0, 6, 8, 5, 6, 8, 6, 8, 6, 8, 6, 8, 5, 0, 9, 24, 28, 6, 28, 0, 6, 8, 5, 8, 6, 8, 6, 8, 6, 8, 5, 9, 5, 6, 8, 6, 8, 6, 8, 6, 8, 0, 24, 5, 8, 6, 8, 6, 0, 24, 9, 0, 5, 9, 5, 4, 24, 0, 24, 0, 6, 24, 6, 8, 6, 5, 6, 5, 8, 6, 5, 0, 2, 4, 2, 4, 2, 4, 6, 0, 6, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 0, 1, 0, 2, 1, 2, 1, 2, 0, 1, 0, 2, 0, 1, 0, 1, 0, 1, 0, 1, 2, 1, 2, 0, 2, 3, 2, 3, 2, 3, 2, 0, 2, 1, 3, 27, 2, 27, 2, 0, 2, 1, 3, 27, 2, 0, 2, 1, 0, 27, 2, 1, 27, 0, 2, 0, 2, 1, 3, 27, 0, 12, 16, 20, 24, 29, 30, 21, 29, 30, 21, 29, 24, 13, 14, 16, 12, 24, 29, 30, 24, 23, 24, 25, 21, 22, 24, 25, 24, 23, 24, 12, 16, 0, 16, 11, 4, 0, 11, 25, 21, 22, 4, 11, 25, 21, 22, 0, 4, 0, 26, 0, 6, 7, 6, 7, 6, 0, 28, 1, 28, 1, 28, 2, 1, 2, 1, 2, 28, 1, 28, 25, 1, 28, 1, 28, 1, 28, 1, 28, 1, 28, 2, 1, 2, 5, 2, 28, 2, 1, 25, 1, 2, 28, 25, 28, 2, 28, 11, 10, 1, 2, 10, 11, 0, 25, 28, 25, 28, 25, 28, 25, 28, 25, 28, 25, 28, 25, 28, 25, 28, 25, 28, 25, 28, 25, 28, 25, 28, 21, 22, 28, 25, 28, 25, 28, 25, 28, 0, 28, 0, 28, 0, 11, 28, 11, 28, 25, 28, 25, 28, 25, 28, 25, 28, 0, 28, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 11, 28, 25, 21, 22, 25, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 25, 28, 25, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 25, 21, 22, 21, 22, 25, 21, 22, 25, 28, 25, 28, 25, 0, 28, 0, 1, 0, 2, 0, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 4, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 28, 1, 2, 1, 2, 6, 1, 2, 0, 24, 11, 24, 2, 0, 2, 0, 2, 0, 5, 0, 4, 24, 0, 6, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 6, 24, 29, 30, 29, 30, 24, 29, 30, 24, 29, 30, 24, 20, 24, 20, 24, 29, 30, 24, 29, 30, 21, 22, 21, 22, 21, 22, 21, 22, 24, 4, 24, 20, 0, 28, 0, 28, 0, 28, 0, 28, 0, 12, 24, 28, 4, 5, 10, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 28, 21, 22, 21, 22, 21, 22, 21, 22, 20, 21, 22, 28, 10, 6, 8, 20, 4, 28, 10, 4, 5, 24, 28, 0, 5, 0, 6, 27, 4, 5, 20, 5, 24, 4, 5, 0, 5, 0, 5, 0, 28, 11, 28, 5, 0, 28, 0, 5, 28, 0, 11, 28, 11, 28, 11, 28, 11, 28, 11, 28, 5, 0, 28, 5, 0, 5, 4, 5, 0, 28, 0, 5, 4, 24, 5, 4, 24, 5, 9, 5, 0, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 5, 6, 7, 24, 6, 24, 4, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 0, 6, 5, 10, 6, 24, 0, 27, 4, 27, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 4, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 4, 27, 1, 2, 1, 2, 0, 1, 2, 1, 2, 0, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 0, 4, 2, 5, 6, 5, 6, 5, 6, 5, 8, 6, 8, 28, 0, 11, 28, 26, 28, 0, 5, 24, 0, 8, 5, 8, 6, 0, 24, 9, 0, 6, 5, 24, 5, 0, 9, 5, 6, 24, 5, 6, 8, 0, 24, 5, 0, 6, 8, 5, 6, 8, 6, 8, 6, 8, 24, 0, 4, 9, 0, 24, 0, 5, 6, 8, 6, 8, 6, 0, 5, 6, 5, 6, 8, 0, 9, 0, 24, 5, 4, 5, 28, 5, 8, 0, 5, 6, 5, 6, 5, 6, 5, 6, 5, 6, 5, 0, 5, 4, 24, 5, 8, 6, 8, 24, 5, 4, 8, 6, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 8, 6, 8, 6, 8, 24, 8, 6, 0, 9, 0, 5, 0, 5, 0, 5, 0, 19, 18, 5, 0, 5, 0, 2, 0, 2, 0, 5, 6, 5, 25, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 27, 0, 5, 21, 22, 0, 5, 0, 5, 0, 5, 26, 28, 0, 6, 24, 21, 22, 24, 0, 6, 0, 24, 20, 23, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 24, 21, 22, 24, 23, 24, 0, 24, 20, 21, 22, 21, 22, 21, 22, 24, 25, 20, 25, 0, 24, 26, 24, 0, 5, 0, 5, 0, 16, 0, 24, 26, 24, 21, 22, 24, 25, 24, 20, 24, 9, 24, 25, 24, 1, 21, 24, 22, 27, 23, 27, 2, 21, 25, 22, 25, 21, 22, 24, 21, 22, 24, 5, 4, 5, 4, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 26, 25, 27, 28, 26, 0, 28, 25, 28, 0, 16, 28, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 24, 0, 11, 0, 28, 10, 11, 28, 11, 0, 28, 0, 28, 6, 0, 5, 0, 5, 0, 5, 0, 11, 0, 5, 10, 5, 10, 0, 5, 0, 24, 5, 0, 5, 24, 10, 0, 1, 2, 5, 0, 9, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 24, 11, 0, 5, 11, 0, 24, 5, 0, 24, 0, 5, 0, 5, 0, 5, 6, 0, 6, 0, 6, 5, 0, 5, 0, 5, 0, 6, 0, 6, 11, 0, 24, 0, 5, 11, 24, 0, 5, 0, 24, 5, 0, 11, 5, 0, 11, 0, 5, 0, 11, 0, 8, 6, 8, 5, 6, 24, 0, 11, 9, 0, 6, 8, 5, 8, 6, 8, 6, 24, 16, 24, 0, 5, 0, 9, 0, 6, 5, 6, 8, 6, 0, 9, 24, 0, 6, 8, 5, 8, 6, 8, 5, 24, 0, 9, 0, 5, 6, 8, 6, 8, 6, 8, 6, 0, 9, 0, 5, 0, 10, 0, 24, 0, 5, 0, 5, 0, 5, 0, 5, 8, 0, 6, 4, 0, 5, 0, 28, 0, 28, 0, 28, 8, 6, 28, 8, 16, 6, 28, 6, 28, 6, 28, 0, 28, 6, 28, 0, 28, 0, 11, 0, 1, 2, 1, 2, 0, 2, 1, 2, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 2, 0, 2, 0, 2, 0, 2, 1, 2, 1, 0, 1, 0, 1, 0, 1, 0, 2, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 0, 1, 25, 2, 25, 2, 1, 25, 2, 25, 2, 1, 25, 2, 25, 2, 1, 25, 2, 25, 2, 1, 25, 2, 25, 2, 1, 2, 0, 9, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 25, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 11, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 28, 0, 5, 0, 5, 0, 5, 0, 5, 0, 16, 0, 16, 0, 6, 0, 18, 0, 18, 0]); this.bitmap$0$1 = (((4 | this.bitmap$0$1) << 24) >> 24) }; return this.charTypes$1 }; init___() { return this }; getTypeGE256__p1__I__I(codePoint) { const idx = ((1 + $m_ju_Arrays$().binarySearch__AI__I__I(this.charTypeIndices__p1__AI(), codePoint)) | 0); return this.charTypes__p1__AI().u[((idx < 0) ? ((-idx) | 0) : idx)] }; getType__I__I(codePoint) { return ((codePoint < 0) ? 0 : ((codePoint < 256) ? this.java$lang$Character$$charTypesFirst256__AI().u[codePoint] : this.getTypeGE256__p1__I__I(codePoint))) }; charTypeIndices__p1__AI() { return (((((2 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.charTypeIndices$lzycompute__p1__AI() : this.charTypeIndices$1) }; charTypeIndices$lzycompute__p1__AI() { if (((((2 & this.bitmap$0$1) << 24) >> 24) === 0)) { const deltas = $makeNativeArrayWrapper($d_I.getArrayOf(), [257, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 3, 2, 1, 1, 1, 2, 1, 3, 2, 4, 1, 2, 1, 3, 3, 2, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 2, 1, 3, 1, 1, 1, 2, 2, 1, 1, 3, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 7, 2, 1, 2, 2, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 69, 1, 27, 18, 4, 12, 14, 5, 7, 1, 1, 1, 17, 112, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 3, 1, 5, 2, 1, 1, 3, 1, 1, 1, 2, 1, 17, 1, 9, 35, 1, 2, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 5, 1, 1, 1, 1, 1, 2, 2, 51, 48, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 9, 38, 2, 1, 6, 1, 39, 1, 1, 1, 4, 1, 1, 45, 1, 1, 1, 2, 1, 2, 1, 1, 8, 27, 5, 3, 2, 11, 5, 1, 3, 2, 1, 2, 2, 11, 1, 2, 2, 32, 1, 10, 21, 10, 4, 2, 1, 99, 1, 1, 7, 1, 1, 6, 2, 2, 1, 4, 2, 10, 3, 2, 1, 14, 1, 1, 1, 1, 30, 27, 2, 89, 11, 1, 14, 10, 33, 9, 2, 1, 3, 1, 5, 22, 4, 1, 9, 1, 3, 1, 5, 2, 15, 1, 25, 3, 2, 1, 65, 1, 1, 11, 55, 27, 1, 3, 1, 54, 1, 1, 1, 1, 3, 8, 4, 1, 2, 1, 7, 10, 2, 2, 10, 1, 1, 6, 1, 7, 1, 1, 2, 1, 8, 2, 2, 2, 22, 1, 7, 1, 1, 3, 4, 2, 1, 1, 3, 4, 2, 2, 2, 2, 1, 1, 8, 1, 4, 2, 1, 3, 2, 2, 10, 2, 2, 6, 1, 1, 5, 2, 1, 1, 6, 4, 2, 2, 22, 1, 7, 1, 2, 1, 2, 1, 2, 2, 1, 1, 3, 2, 4, 2, 2, 3, 3, 1, 7, 4, 1, 1, 7, 10, 2, 3, 1, 11, 2, 1, 1, 9, 1, 3, 1, 22, 1, 7, 1, 2, 1, 5, 2, 1, 1, 3, 5, 1, 2, 1, 1, 2, 1, 2, 1, 15, 2, 2, 2, 10, 1, 1, 15, 1, 2, 1, 8, 2, 2, 2, 22, 1, 7, 1, 2, 1, 5, 2, 1, 1, 1, 1, 1, 4, 2, 2, 2, 2, 1, 8, 1, 1, 4, 2, 1, 3, 2, 2, 10, 1, 1, 6, 10, 1, 1, 1, 6, 3, 3, 1, 4, 3, 2, 1, 1, 1, 2, 3, 2, 3, 3, 3, 12, 4, 2, 1, 2, 3, 3, 1, 3, 1, 2, 1, 6, 1, 14, 10, 3, 6, 1, 1, 6, 3, 1, 8, 1, 3, 1, 23, 1, 10, 1, 5, 3, 1, 3, 4, 1, 3, 1, 4, 7, 2, 1, 2, 6, 2, 2, 2, 10, 8, 7, 1, 2, 2, 1, 8, 1, 3, 1, 23, 1, 10, 1, 5, 2, 1, 1, 1, 1, 5, 1, 1, 2, 1, 2, 2, 7, 2, 7, 1, 1, 2, 2, 2, 10, 1, 2, 15, 2, 1, 8, 1, 3, 1, 41, 2, 1, 3, 4, 1, 3, 1, 3, 1, 1, 8, 1, 8, 2, 2, 2, 10, 6, 3, 1, 6, 2, 2, 1, 18, 3, 24, 1, 9, 1, 1, 2, 7, 3, 1, 4, 3, 3, 1, 1, 1, 8, 18, 2, 1, 12, 48, 1, 2, 7, 4, 1, 6, 1, 8, 1, 10, 2, 37, 2, 1, 1, 2, 2, 1, 1, 2, 1, 6, 4, 1, 7, 1, 3, 1, 1, 1, 1, 2, 2, 1, 4, 1, 2, 6, 1, 2, 1, 2, 5, 1, 1, 1, 6, 2, 10, 2, 4, 32, 1, 3, 15, 1, 1, 3, 2, 6, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 8, 1, 36, 4, 14, 1, 5, 1, 2, 5, 11, 1, 36, 1, 8, 1, 6, 1, 2, 5, 4, 2, 37, 43, 2, 4, 1, 6, 1, 2, 2, 2, 1, 10, 6, 6, 2, 2, 4, 3, 1, 3, 2, 7, 3, 4, 13, 1, 2, 2, 6, 1, 1, 1, 10, 3, 1, 2, 38, 1, 1, 5, 1, 2, 43, 1, 1, 332, 1, 4, 2, 7, 1, 1, 1, 4, 2, 41, 1, 4, 2, 33, 1, 4, 2, 7, 1, 1, 1, 4, 2, 15, 1, 57, 1, 4, 2, 67, 2, 3, 9, 20, 3, 16, 10, 6, 85, 11, 1, 620, 2, 17, 1, 26, 1, 1, 3, 75, 3, 3, 15, 13, 1, 4, 3, 11, 18, 3, 2, 9, 18, 2, 12, 13, 1, 3, 1, 2, 12, 52, 2, 1, 7, 8, 1, 2, 11, 3, 1, 3, 1, 1, 1, 2, 10, 6, 10, 6, 6, 1, 4, 3, 1, 1, 10, 6, 35, 1, 52, 8, 41, 1, 1, 5, 70, 10, 29, 3, 3, 4, 2, 3, 4, 2, 1, 6, 3, 4, 1, 3, 2, 10, 30, 2, 5, 11, 44, 4, 17, 7, 2, 6, 10, 1, 3, 34, 23, 2, 3, 2, 2, 53, 1, 1, 1, 7, 1, 1, 1, 1, 2, 8, 6, 10, 2, 1, 10, 6, 10, 6, 7, 1, 6, 82, 4, 1, 47, 1, 1, 5, 1, 1, 5, 1, 2, 7, 4, 10, 7, 10, 9, 9, 3, 2, 1, 30, 1, 4, 2, 2, 1, 1, 2, 2, 10, 44, 1, 1, 2, 3, 1, 1, 3, 2, 8, 4, 36, 8, 8, 2, 2, 3, 5, 10, 3, 3, 10, 30, 6, 2, 64, 8, 8, 3, 1, 13, 1, 7, 4, 1, 4, 2, 1, 2, 9, 44, 63, 13, 1, 34, 37, 39, 21, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 9, 8, 6, 2, 6, 2, 8, 8, 8, 8, 6, 2, 6, 2, 8, 1, 1, 1, 1, 1, 1, 1, 1, 8, 8, 14, 2, 8, 8, 8, 8, 8, 8, 5, 1, 2, 4, 1, 1, 1, 3, 3, 1, 2, 4, 1, 3, 4, 2, 2, 4, 1, 3, 8, 5, 3, 2, 3, 1, 2, 4, 1, 2, 1, 11, 5, 6, 2, 1, 1, 1, 2, 1, 1, 1, 8, 1, 1, 5, 1, 9, 1, 1, 4, 2, 3, 1, 1, 1, 11, 1, 1, 1, 10, 1, 5, 5, 6, 1, 1, 2, 6, 3, 1, 1, 1, 10, 3, 1, 1, 1, 13, 3, 32, 16, 13, 4, 1, 3, 12, 15, 2, 1, 4, 1, 2, 1, 3, 2, 3, 1, 1, 1, 2, 1, 5, 6, 1, 1, 1, 1, 1, 1, 4, 1, 1, 4, 1, 4, 1, 2, 2, 2, 5, 1, 4, 1, 1, 2, 1, 1, 16, 35, 1, 1, 4, 1, 6, 5, 5, 2, 4, 1, 2, 1, 2, 1, 7, 1, 31, 2, 2, 1, 1, 1, 31, 268, 8, 4, 20, 2, 7, 1, 1, 81, 1, 30, 25, 40, 6, 18, 12, 39, 25, 11, 21, 60, 78, 22, 183, 1, 9, 1, 54, 8, 111, 1, 144, 1, 103, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 30, 44, 5, 1, 1, 31, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 16, 256, 131, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 63, 1, 1, 1, 1, 32, 1, 1, 258, 48, 21, 2, 6, 3, 10, 166, 47, 1, 47, 1, 1, 1, 3, 2, 1, 1, 1, 1, 1, 1, 4, 1, 1, 2, 1, 6, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 6, 1, 1, 1, 1, 3, 1, 1, 5, 4, 1, 2, 38, 1, 1, 5, 1, 2, 56, 7, 1, 1, 14, 1, 23, 9, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 32, 2, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 9, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 5, 1, 10, 2, 68, 26, 1, 89, 12, 214, 26, 12, 4, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 9, 4, 2, 1, 5, 2, 3, 1, 1, 1, 2, 1, 86, 2, 2, 2, 2, 1, 1, 90, 1, 3, 1, 5, 41, 3, 94, 1, 2, 4, 10, 27, 5, 36, 12, 16, 31, 1, 10, 30, 8, 1, 15, 32, 10, 39, 15, 320, 6582, 10, 64, 20941, 51, 21, 1, 1143, 3, 55, 9, 40, 6, 2, 268, 1, 3, 16, 10, 2, 20, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 7, 1, 70, 10, 2, 6, 8, 23, 9, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 8, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 77, 2, 1, 7, 1, 3, 1, 4, 1, 23, 2, 2, 1, 4, 4, 6, 2, 1, 1, 6, 52, 4, 8, 2, 50, 16, 1, 9, 2, 10, 6, 18, 6, 3, 1, 4, 10, 28, 8, 2, 23, 11, 2, 11, 1, 29, 3, 3, 1, 47, 1, 2, 4, 2, 1, 4, 13, 1, 1, 10, 4, 2, 32, 41, 6, 2, 2, 2, 2, 9, 3, 1, 8, 1, 1, 2, 10, 2, 4, 16, 1, 6, 3, 1, 1, 4, 48, 1, 1, 3, 2, 2, 5, 2, 1, 1, 1, 24, 2, 1, 2, 11, 1, 2, 2, 2, 1, 2, 1, 1, 10, 6, 2, 6, 2, 6, 9, 7, 1, 7, 145, 35, 2, 1, 2, 1, 2, 1, 1, 1, 2, 10, 6, 11172, 12, 23, 4, 49, 4, 2048, 6400, 366, 2, 106, 38, 7, 12, 5, 5, 1, 1, 10, 1, 13, 1, 5, 1, 1, 1, 2, 1, 2, 1, 108, 16, 17, 363, 1, 1, 16, 64, 2, 54, 40, 12, 1, 1, 2, 16, 7, 1, 1, 1, 6, 7, 9, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 4, 3, 3, 1, 4, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 3, 1, 1, 1, 2, 4, 5, 1, 135, 2, 1, 1, 3, 1, 3, 1, 1, 1, 1, 1, 1, 2, 10, 2, 3, 2, 26, 1, 1, 1, 1, 1, 1, 26, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 10, 1, 45, 2, 31, 3, 6, 2, 6, 2, 6, 2, 3, 3, 2, 1, 1, 1, 2, 1, 1, 4, 2, 10, 3, 2, 2, 12, 1, 26, 1, 19, 1, 2, 1, 15, 2, 14, 34, 123, 5, 3, 4, 45, 3, 9, 53, 4, 17, 1, 5, 12, 52, 45, 1, 130, 29, 3, 49, 47, 31, 1, 4, 12, 17, 1, 8, 1, 53, 30, 1, 1, 36, 4, 8, 1, 5, 42, 40, 40, 78, 2, 10, 854, 6, 2, 1, 1, 44, 1, 2, 3, 1, 2, 23, 1, 1, 8, 160, 22, 6, 3, 1, 26, 5, 1, 64, 56, 6, 2, 64, 1, 3, 1, 2, 5, 4, 4, 1, 3, 1, 27, 4, 3, 4, 1, 8, 8, 9, 7, 29, 2, 1, 128, 54, 3, 7, 22, 2, 8, 19, 5, 8, 128, 73, 535, 31, 385, 1, 1, 1, 53, 15, 7, 4, 20, 10, 16, 2, 1, 45, 3, 4, 2, 2, 2, 1, 4, 14, 25, 7, 10, 6, 3, 36, 5, 1, 8, 1, 10, 4, 60, 2, 1, 48, 3, 9, 2, 4, 4, 7, 10, 1190, 43, 1, 1, 1, 2, 6, 1, 1, 8, 10, 2358, 879, 145, 99, 13, 4, 2956, 1071, 13265, 569, 1223, 69, 11, 1, 46, 16, 4, 13, 16480, 2, 8190, 246, 10, 39, 2, 60, 2, 3, 3, 6, 8, 8, 2, 7, 30, 4, 48, 34, 66, 3, 1, 186, 87, 9, 18, 142, 26, 26, 26, 7, 1, 18, 26, 26, 1, 1, 2, 2, 1, 2, 2, 2, 4, 1, 8, 4, 1, 1, 1, 7, 1, 11, 26, 26, 2, 1, 4, 2, 8, 1, 7, 1, 26, 2, 1, 4, 1, 5, 1, 1, 3, 7, 1, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 28, 2, 25, 1, 25, 1, 6, 25, 1, 25, 1, 6, 25, 1, 25, 1, 6, 25, 1, 25, 1, 6, 25, 1, 25, 1, 6, 1, 1, 2, 50, 5632, 4, 1, 27, 1, 2, 1, 1, 2, 1, 1, 10, 1, 4, 1, 1, 1, 1, 6, 1, 4, 1, 1, 1, 1, 1, 1, 3, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 4, 1, 7, 1, 4, 1, 4, 1, 1, 1, 10, 1, 17, 5, 3, 1, 5, 1, 17, 52, 2, 270, 44, 4, 100, 12, 15, 2, 14, 2, 15, 1, 15, 32, 11, 5, 31, 1, 60, 4, 43, 75, 29, 13, 43, 5, 9, 7, 2, 174, 33, 15, 6, 1, 70, 3, 20, 12, 37, 1, 5, 21, 17, 15, 63, 1, 1, 1, 182, 1, 4, 3, 62, 2, 4, 12, 24, 147, 70, 4, 11, 48, 70, 58, 116, 2188, 42711, 41, 4149, 11, 222, 16354, 542, 722403, 1, 30, 96, 128, 240, 65040, 65534, 2, 65534]); this.charTypeIndices$1 = this.uncompressDeltas__p1__AI__AI(deltas); this.bitmap$0$1 = (((2 | this.bitmap$0$1) << 24) >> 24) }; return this.charTypeIndices$1 }; java$lang$Character$$charTypesFirst256$lzycompute__p1__AI() { if (((((1 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.java$lang$Character$$charTypesFirst256$1 = $makeNativeArrayWrapper($d_I.getArrayOf(), [15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 12, 24, 24, 24, 26, 24, 24, 24, 21, 22, 24, 25, 24, 20, 24, 24, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 24, 24, 25, 25, 25, 24, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 21, 24, 22, 27, 23, 27, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 21, 25, 22, 25, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 12, 24, 26, 26, 26, 26, 28, 24, 27, 28, 5, 29, 25, 16, 28, 27, 28, 25, 11, 11, 27, 2, 24, 24, 27, 11, 5, 30, 11, 11, 11, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 25, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 25, 2, 2, 2, 2, 2, 2, 2, 2]); this.bitmap$0$1 = (((1 | this.bitmap$0$1) << 24) >> 24) }; return this.java$lang$Character$$charTypesFirst256$1 }; charTypes__p1__AI() { return (((((4 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.charTypes$lzycompute__p1__AI() : this.charTypes$1) }; java$lang$Character$$charTypesFirst256__AI() { return (((((1 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.java$lang$Character$$charTypesFirst256$lzycompute__p1__AI() : this.java$lang$Character$$charTypesFirst256$1) }; digitWithValidRadix__I__I__I(codePoint, radix) { let value; if ((codePoint < 256)) { value = (((codePoint >= 48) && (codePoint <= 57)) ? (((-48) + codePoint) | 0) : (((codePoint >= 65) && (codePoint <= 90)) ? (((-55) + codePoint) | 0) : (((codePoint >= 97) && (codePoint <= 122)) ? (((-87) + codePoint) | 0) : (-1)))) } else if (((codePoint >= 65313) && (codePoint <= 65338))) { value = (((-65303) + codePoint) | 0) } else if (((codePoint >= 65345) && (codePoint <= 65370))) { value = (((-65335) + codePoint) | 0) } else { const p = $m_ju_Arrays$().binarySearch__AI__I__I(this.nonASCIIZeroDigitCodePoints__p1__AI(), codePoint); const zeroCodePointIndex = ((p < 0) ? (((-2) - p) | 0) : p); if ((zeroCodePointIndex < 0)) { value = (-1) } else { const v = ((codePoint - this.nonASCIIZeroDigitCodePoints__p1__AI().u[zeroCodePointIndex]) | 0); value = ((v > 9) ? (-1) : v) } }; return ((value < radix) ? value : (-1)) }; forDigit__I__I__C(digit, radix) { if (((((radix < 2) || (radix > 36)) || (digit < 0)) || (digit >= radix))) { return 0 } else { const overBaseTen = (((-10) + digit) | 0); const result = ((overBaseTen < 0) ? ((48 + digit) | 0) : ((97 + overBaseTen) | 0)); return (65535 & result) } }; isZeroDigit__C__Z(ch) { return ((ch < 256) ? (ch === 48) : ($m_ju_Arrays$().binarySearch__AI__I__I(this.nonASCIIZeroDigitCodePoints__p1__AI(), ch) >= 0)) }; isUpperCase__I__Z(c) { return ((((c >= 8544) && (c <= 8559)) || ((c >= 9398) && (c <= 9423))) || (this.getType__I__I(c) === 1)) }; nonASCIIZeroDigitCodePoints__p1__AI() { return (((((16 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.nonASCIIZeroDigitCodePoints$lzycompute__p1__AI() : this.nonASCIIZeroDigitCodePoints$1) }; toUpperCase__C__C(c) { const thiz = $g.String.fromCharCode(c); const thiz$1 = thiz.toUpperCase(); return (65535 & (thiz$1.charCodeAt(0) | 0)) }; uncompressDeltas__p1__AI__AI(deltas) { let acc = deltas.u[0]; let i = 1; const len = deltas.u.length; while ((i !== len)) { acc = ((acc + deltas.u[i]) | 0); deltas.u[i] = acc; i = ((1 + i) | 0) }; return deltas }; nonASCIIZeroDigitCodePoints$lzycompute__p1__AI() { if (((((16 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.nonASCIIZeroDigitCodePoints$1 = $makeNativeArrayWrapper($d_I.getArrayOf(), [1632, 1776, 1984, 2406, 2534, 2662, 2790, 2918, 3046, 3174, 3302, 3430, 3664, 3792, 3872, 4160, 4240, 6112, 6160, 6470, 6608, 6784, 6800, 6992, 7088, 7232, 7248, 42528, 43216, 43264, 43472, 43600, 44016, 65296, 66720, 69734, 69872, 69942, 70096, 71360, 120782, 120792, 120802, 120812, 120822]); this.bitmap$0$1 = (((16 | this.bitmap$0$1) << 24) >> 24) }; return this.nonASCIIZeroDigitCodePoints$1 }; } const $d_jl_Character$ = new $TypeData().initClass({ jl_Character$: 0 }, false, "java.lang.Character$", { jl_Character$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_jl_Character$.prototype.$classData = $d_jl_Character$; let $n_jl_Character$ = (void 0); const $m_jl_Character$ = (function() { if ((!$n_jl_Character$)) { $n_jl_Character$ = new $c_jl_Character$().init___() }; return $n_jl_Character$ }); class $c_jl_Double$ extends $c_O { constructor() { super(); this.doubleStrPat$1 = null; this.doubleStrHexPat$1 = null; this.bitmap$0$1 = 0 }; init___() { return this }; doubleStrPat__p1__sjs_js_RegExp() { return (((((1 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.doubleStrPat$lzycompute__p1__sjs_js_RegExp() : this.doubleStrPat$1) }; doubleStrPat$lzycompute__p1__sjs_js_RegExp() { if (((((1 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.doubleStrPat$1 = new $g.RegExp("^[\\x00-\\x20]*([+-]?(?:NaN|Infinity|(?:\\d+\\.?\\d*|\\.\\d+)(?:[eE][+-]?\\d+)?)[fFdD]?)[\\x00-\\x20]*$"); this.bitmap$0$1 = (((1 | this.bitmap$0$1) << 24) >> 24) }; return this.doubleStrPat$1 }; fail$1__p1__T__sr_Nothing$(s$1) { throw new $c_jl_NumberFormatException().init___T((("For input string: \"" + s$1) + "\"")) }; compare__D__D__I(a, b) { if ((a !== a)) { return ((b !== b) ? 0 : 1) } else if ((b !== b)) { return (-1) } else if ((a === b)) { if ((a === 0.0)) { const ainf = (1.0 / a); return ((ainf === (1.0 / b)) ? 0 : ((ainf < 0) ? (-1) : 1)) } else { return 0 } } else { return ((a < b) ? (-1) : 1) } }; doubleStrHexPat$lzycompute__p1__sjs_js_RegExp() { if (((((2 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.doubleStrHexPat$1 = new $g.RegExp("^[\\x00-\\x20]*([+-]?)0[xX]([0-9A-Fa-f]*)\\.?([0-9A-Fa-f]*)[pP]([+-]?\\d+)[fFdD]?[\\x00-\\x20]*$"); this.bitmap$0$1 = (((2 | this.bitmap$0$1) << 24) >> 24) }; return this.doubleStrHexPat$1 }; parseHexDoubleImpl$1__p1__sjs_js_RegExp$ExecResult__T__D(match2, s$1) { const signStr = match2[1]; const integralPartStr = match2[2]; const fractionalPartStr = match2[3]; const binaryExpStr = match2[4]; if (((integralPartStr === "") && (fractionalPartStr === ""))) { this.fail$1__p1__T__sr_Nothing$(s$1) }; const mantissaStr0 = (("" + integralPartStr) + fractionalPartStr); const correction1 = ((-((fractionalPartStr.length | 0) << 2)) | 0); let i = 0; while (true) { let jsx$1; if ((i !== (mantissaStr0.length | 0))) { const index = i; jsx$1 = ((65535 & (mantissaStr0.charCodeAt(index) | 0)) === 48) } else { jsx$1 = false }; if (jsx$1) { i = ((1 + i) | 0) } else { break } }; const beginIndex = i; const mantissaStr = mantissaStr0.substring(beginIndex); if ((mantissaStr === "")) { if ((signStr === "-")) { return (-0) } else { return 0.0 } }; const needsCorrection2 = ((mantissaStr.length | 0) > 15); const truncatedMantissaStr = (needsCorrection2 ? mantissaStr.substring(0, 15) : mantissaStr); const correction2 = (needsCorrection2 ? ((((-15) + (mantissaStr.length | 0)) | 0) << 2) : 0); const fullCorrection = ((correction1 + correction2) | 0); const mantissa = (+$g.parseInt(truncatedMantissaStr, 16)); const binaryExpDouble = (+$g.parseInt(binaryExpStr, 10)); const binaryExp = $doubleToInt(binaryExpDouble); const binExpAndCorrection = ((binaryExp + fullCorrection) | 0); const binExpAndCorrection_div_3 = ((binExpAndCorrection / 3) | 0); const correctingPow = (+$g.Math.pow(2.0, binExpAndCorrection_div_3)); const b = ((binExpAndCorrection - (binExpAndCorrection_div_3 << 1)) | 0); const correctingPow3 = (+$g.Math.pow(2.0, b)); const r = (((mantissa * correctingPow) * correctingPow) * correctingPow3); return ((signStr === "-") ? (-r) : r) }; doubleStrHexPat__p1__sjs_js_RegExp() { return (((((2 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.doubleStrHexPat$lzycompute__p1__sjs_js_RegExp() : this.doubleStrHexPat$1) }; parseDouble__T__D(s) { const match1 = this.doubleStrPat__p1__sjs_js_RegExp().exec(s); if ((match1 !== null)) { const value = match1[1]; let jsx$2; if ((value === (void 0))) { jsx$2 = (void 0) } else { const s$2 = value; jsx$2 = s$2 }; const jsx$1 = $g.parseFloat(jsx$2); return (+jsx$1) } else { const match2 = this.doubleStrHexPat__p1__sjs_js_RegExp().exec(s); return ((match2 !== null) ? this.parseHexDoubleImpl$1__p1__sjs_js_RegExp$ExecResult__T__D(match2, s) : this.fail$1__p1__T__sr_Nothing$(s)) } }; } const $d_jl_Double$ = new $TypeData().initClass({ jl_Double$: 0 }, false, "java.lang.Double$", { jl_Double$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_jl_Double$.prototype.$classData = $d_jl_Double$; let $n_jl_Double$ = (void 0); const $m_jl_Double$ = (function() { if ((!$n_jl_Double$)) { $n_jl_Double$ = new $c_jl_Double$().init___() }; return $n_jl_Double$ }); class $c_jl_Enum extends $c_O { constructor() { super(); this.$$undname$1 = null; this.$$undordinal$1 = 0 }; equals__O__Z(that) { return (this === that) }; toString__T() { return this.$$undname$1 }; init___T__I(_name, _ordinal) { this.$$undname$1 = _name; this.$$undordinal$1 = _ordinal; return this }; hashCode__I() { return $systemIdentityHashCode(this) }; } class $c_jl_Error extends $c_jl_Throwable { init___jl_Throwable(e) { const message = ((e === null) ? null : e.toString__T()); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, message, e, true, true); return this }; } const $isArrayOf_jl_Error = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Error))) }); class $c_jl_Exception extends $c_jl_Throwable { } class $c_jl_Integer$ extends $c_O { init___() { return this }; fail$1__p1__T__sr_Nothing$(s$1) { throw new $c_jl_NumberFormatException().init___T((("For input string: \"" + s$1) + "\"")) }; parseInt__T__I__I(s, radix) { const len = ((s === null) ? 0 : (s.length | 0)); if ((((len === 0) || (radix < 2)) || (radix > 36))) { this.fail$1__p1__T__sr_Nothing$(s) }; const firstChar = (65535 & (s.charCodeAt(0) | 0)); const negative = (firstChar === 45); const maxAbsValue = (negative ? 2.147483648E9 : 2.147483647E9); let i = ((negative || (firstChar === 43)) ? 1 : 0); if ((i >= (s.length | 0))) { this.fail$1__p1__T__sr_Nothing$(s) }; let result = 0.0; while ((i !== len)) { const jsx$1 = $m_jl_Character$(); const index = i; const digit = jsx$1.digitWithValidRadix__I__I__I((65535 & (s.charCodeAt(index) | 0)), radix); result = ((result * radix) + digit); if (((digit === (-1)) || (result > maxAbsValue))) { this.fail$1__p1__T__sr_Nothing$(s) }; i = ((1 + i) | 0) }; if (negative) { const n = (-result); return ((n | 0) | 0) } else { const n$1 = result; return ((n$1 | 0) | 0) } }; bitCount__I__I(i) { const t1 = ((i - (1431655765 & (i >> 1))) | 0); const t2 = (((858993459 & t1) + (858993459 & (t1 >> 2))) | 0); return ($imul(16843009, (252645135 & ((t2 + (t2 >> 4)) | 0))) >> 24) }; reverseBytes__I__I(i) { const byte3 = ((i >>> 24) | 0); const byte2 = (65280 & ((i >>> 8) | 0)); const byte1 = (16711680 & (i << 8)); const byte0 = (i << 24); return (((byte0 | byte1) | byte2) | byte3) }; } const $d_jl_Integer$ = new $TypeData().initClass({ jl_Integer$: 0 }, false, "java.lang.Integer$", { jl_Integer$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_jl_Integer$.prototype.$classData = $d_jl_Integer$; let $n_jl_Integer$ = (void 0); const $m_jl_Integer$ = (function() { if ((!$n_jl_Integer$)) { $n_jl_Integer$ = new $c_jl_Integer$().init___() }; return $n_jl_Integer$ }); class $c_jl_Long$ extends $c_O { constructor() { super(); this.StringRadixInfos$1 = null; this.bitmap$0$1 = false }; toUnsignedStringInternalLarge__p1__J__I__T(i, radix) { const radixInfo = this.StringRadixInfos__p1__sjs_js_Array()[radix]; const t = radixInfo.radixPowLength$1; const lo = t.lo$2; const hi = t.hi$2; const paddingZeros = radixInfo.paddingZeros$1; const hi$1 = ((-2147483648) ^ hi); let res = ""; const lo$1 = i.lo$2; const hi$2 = i.hi$2; let value_$_lo$2 = lo$1; let value_$_hi$2 = hi$2; while (true) { const b_$_lo$2 = value_$_lo$2; const b_$_hi$2 = value_$_hi$2; const lo$2 = b_$_lo$2; const hi$3 = ((-2147483648) ^ b_$_hi$2); if (((hi$3 === hi$1) ? (((-2147483648) ^ lo$2) >= ((-2147483648) ^ lo)) : (hi$3 > hi$1))) { const this$1_$_lo$2 = value_$_lo$2; const this$1_$_hi$2 = value_$_hi$2; const this$2 = $m_sjsr_RuntimeLong$(); const lo$3 = this$2.divideUnsignedImpl__I__I__I__I__I(this$1_$_lo$2, this$1_$_hi$2, lo, hi); const hi$4 = this$2.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const this$3_$_lo$2 = value_$_lo$2; const this$3_$_hi$2 = value_$_hi$2; const a0 = (65535 & lo$3); const a1 = ((lo$3 >>> 16) | 0); const b0 = (65535 & lo); const b1 = ((lo >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo$4 = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$5 = (((((((($imul(lo$3, hi) + $imul(hi$4, lo)) | 0) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const alo = this$3_$_lo$2; const ahi = this$3_$_hi$2; const lo$5 = ((alo - lo$4) | 0); const remStr = lo$5.toString(radix); res = ((("" + paddingZeros.substring((remStr.length | 0))) + remStr) + res); const jsx$1_$_lo$2 = lo$3; const jsx$1_$_hi$2 = hi$4; value_$_lo$2 = jsx$1_$_lo$2; value_$_hi$2 = jsx$1_$_hi$2 } else { break } }; const this$8_$_lo$2 = value_$_lo$2; const this$8_$_hi$2 = value_$_hi$2; const x = this$8_$_lo$2; const jsx$2 = x.toString(radix); return (("" + jsx$2) + res) }; init___() { return this }; StringRadixInfos__p1__sjs_js_Array() { return ((!this.bitmap$0$1) ? this.StringRadixInfos$lzycompute__p1__sjs_js_Array() : this.StringRadixInfos$1) }; parseLong__T__I__J(s, radix) { if ((s === "")) { this.parseLongError__p1__T__sr_Nothing$(s) }; let start = 0; let neg = false; const x1 = (65535 & (s.charCodeAt(0) | 0)); switch (x1) { case 43: { start = 1; break } case 45: { start = 1; neg = true; break } }; const t = this.parseUnsignedLongInternal__T__I__I__J(s, radix, start); const lo = t.lo$2; const hi = t.hi$2; if (neg) { const lo$1 = ((-lo) | 0); const hi$1 = ((lo !== 0) ? (~hi) : ((-hi) | 0)); if (((hi$1 === 0) ? (lo$1 !== 0) : (hi$1 > 0))) { this.parseLongError__p1__T__sr_Nothing$(s) }; return new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$1) } else { if ((hi < 0)) { this.parseLongError__p1__T__sr_Nothing$(s) }; return new $c_sjsr_RuntimeLong().init___I__I(lo, hi) } }; java$lang$Long$$toHexString__I__I__T(lo, hi) { if ((hi !== 0)) { const x = (+(hi >>> 0)); const jsx$1 = x.toString(16); const x$1 = (+(lo >>> 0)); const s = x$1.toString(16); const beginIndex = (s.length | 0); return (jsx$1 + (("" + "00000000".substring(beginIndex)) + s)) } else { const x$2 = (+(lo >>> 0)); return x$2.toString(16) } }; java$lang$Long$$toStringImpl__J__I__T(i, radix) { const lo = i.lo$2; const lo$1 = i.hi$2; if (((lo >> 31) === lo$1)) { return lo.toString(radix) } else if ((lo$1 < 0)) { const lo$2 = i.lo$2; const hi = i.hi$2; const lo$3 = ((-lo$2) | 0); const hi$1 = ((lo$2 !== 0) ? (~hi) : ((-hi) | 0)); return ("-" + this.toUnsignedStringInternalLarge__p1__J__I__T(new $c_sjsr_RuntimeLong().init___I__I(lo$3, hi$1), radix)) } else { return this.toUnsignedStringInternalLarge__p1__J__I__T(i, radix) } }; parseLongError__p1__T__sr_Nothing$(s) { throw new $c_jl_NumberFormatException().init___T((("For input string: \"" + s) + "\"")) }; parseUnsignedLongInternal__T__I__I__J(s, radix, start) { const length = (s.length | 0); if ((((start >= length) || (radix < 2)) || (radix > 36))) { this.parseLongError__p1__T__sr_Nothing$(s) } else { const radixInfo = this.StringRadixInfos__p1__sjs_js_Array()[radix]; const chunkLen = radixInfo.chunkLength$1; let firstChunkStart = start; while (true) { let jsx$1; if ((firstChunkStart < length)) { const jsx$2 = $m_jl_Character$(); const index = firstChunkStart; jsx$1 = jsx$2.isZeroDigit__C__Z((65535 & (s.charCodeAt(index) | 0))) } else { jsx$1 = false }; if (jsx$1) { firstChunkStart = ((1 + firstChunkStart) | 0) } else { break } }; if ((((length - firstChunkStart) | 0) > $imul(3, chunkLen))) { this.parseLongError__p1__T__sr_Nothing$(s) }; const firstChunkLength = ((1 + (((((-1) + ((length - firstChunkStart) | 0)) | 0) % chunkLen) | 0)) | 0); const firstChunkEnd = ((firstChunkStart + firstChunkLength) | 0); const chunkStart = firstChunkStart; const x = this.parseChunkAsUInt$1__p1__I__I__T__I__I(chunkStart, firstChunkEnd, s, radix); if ((firstChunkEnd === length)) { return new $c_sjsr_RuntimeLong().init___I__I(x, 0) } else { const t = radixInfo.radixPowLength$1; const lo = t.lo$2; const hi$1 = t.hi$2; const secondChunkEnd = ((firstChunkEnd + chunkLen) | 0); const a0 = (65535 & x); const a1 = ((x >>> 16) | 0); const b0 = (65535 & lo); const b1 = ((lo >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo$1 = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$2 = (((((($imul(x, hi$1) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const x$1 = this.parseChunkAsUInt$1__p1__I__I__T__I__I(firstChunkEnd, secondChunkEnd, s, radix); const lo$2 = ((lo$1 + x$1) | 0); const hi$4 = ((((-2147483648) ^ lo$2) < ((-2147483648) ^ lo$1)) ? ((1 + hi$2) | 0) : hi$2); if ((secondChunkEnd === length)) { return new $c_sjsr_RuntimeLong().init___I__I(lo$2, hi$4) } else { const t$1 = radixInfo.overflowBarrier$1; const lo$3 = t$1.lo$2; const hi$5 = t$1.hi$2; const x$2 = this.parseChunkAsUInt$1__p1__I__I__T__I__I(secondChunkEnd, length, s, radix); if (((hi$4 === hi$5) ? (((-2147483648) ^ lo$2) > ((-2147483648) ^ lo$3)) : (hi$4 > hi$5))) { this.parseLongError__p1__T__sr_Nothing$(s) }; const a0$1 = (65535 & lo$2); const a1$1 = ((lo$2 >>> 16) | 0); const b0$1 = (65535 & lo); const b1$1 = ((lo >>> 16) | 0); const a0b0$1 = $imul(a0$1, b0$1); const a1b0$1 = $imul(a1$1, b0$1); const a0b1$1 = $imul(a0$1, b1$1); const lo$4 = ((a0b0$1 + (((a1b0$1 + a0b1$1) | 0) << 16)) | 0); const c1part$1 = ((((a0b0$1 >>> 16) | 0) + a0b1$1) | 0); const hi$7 = (((((((($imul(lo$2, hi$1) + $imul(hi$4, lo)) | 0) + $imul(a1$1, b1$1)) | 0) + ((c1part$1 >>> 16) | 0)) | 0) + (((((65535 & c1part$1) + a1b0$1) | 0) >>> 16) | 0)) | 0); const lo$5 = ((lo$4 + x$2) | 0); const hi$8 = ((((-2147483648) ^ lo$5) < ((-2147483648) ^ lo$4)) ? ((1 + hi$7) | 0) : hi$7); const hi$9 = ((-2147483648) ^ hi$8); if (((hi$9 === (-2147483648)) && (((-2147483648) ^ lo$5) < ((-2147483648) ^ x$2)))) { this.parseLongError__p1__T__sr_Nothing$(s) }; return new $c_sjsr_RuntimeLong().init___I__I(lo$5, hi$8) } } } }; parseChunkAsUInt$1__p1__I__I__T__I__I(chunkStart, chunkEnd, s$1, radix$1) { let result = 0; let i = chunkStart; while ((i !== chunkEnd)) { const jsx$1 = $m_jl_Character$(); const index = i; const digit = jsx$1.digitWithValidRadix__I__I__I((65535 & (s$1.charCodeAt(index) | 0)), radix$1); if ((digit === (-1))) { this.parseLongError__p1__T__sr_Nothing$(s$1) }; result = (($imul(result, radix$1) + digit) | 0); i = ((1 + i) | 0) }; return result }; StringRadixInfos$lzycompute__p1__sjs_js_Array() { if ((!this.bitmap$0$1)) { const r = []; let radix = 0; while ((radix < 2)) { r.push(null); radix = ((1 + radix) | 0) }; while ((radix <= 36)) { const barrier = ((2147483647 / radix) | 0); let radixPowLength = radix; let chunkLength = 1; let paddingZeros = "0"; while ((radixPowLength <= barrier)) { radixPowLength = $imul(radixPowLength, radix); chunkLength = ((1 + chunkLength) | 0); paddingZeros = (paddingZeros + "0") }; const value = radixPowLength; const hi = (value >> 31); const this$2 = $m_sjsr_RuntimeLong$(); const lo = this$2.divideUnsignedImpl__I__I__I__I__I((-1), (-1), value, hi); const hi$1 = this$2.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const elem = new $c_jl_Long$StringRadixInfo().init___I__J__T__J(chunkLength, new $c_sjsr_RuntimeLong().init___I__I(value, hi), paddingZeros, new $c_sjsr_RuntimeLong().init___I__I(lo, hi$1)); r.push(elem); radix = ((1 + radix) | 0) }; this.StringRadixInfos$1 = r; this.bitmap$0$1 = true }; return this.StringRadixInfos$1 }; java$lang$Long$$toOctalString__I__I__T(lo, hi) { const lp = (1073741823 & lo); const mp = (1073741823 & ((((lo >>> 30) | 0) + (hi << 2)) | 0)); const hp = ((hi >>> 28) | 0); if ((hp !== 0)) { const x = (+(hp >>> 0)); const jsx$2 = x.toString(8); const x$1 = (+(mp >>> 0)); const s = x$1.toString(8); const beginIndex = (s.length | 0); const jsx$1 = "0000000000".substring(beginIndex); const x$2 = (+(lp >>> 0)); const s$1 = x$2.toString(8); const beginIndex$1 = (s$1.length | 0); return ((jsx$2 + (("" + jsx$1) + s)) + (("" + "0000000000".substring(beginIndex$1)) + s$1)) } else if ((mp !== 0)) { const x$3 = (+(mp >>> 0)); const jsx$3 = x$3.toString(8); const x$4 = (+(lp >>> 0)); const s$2 = x$4.toString(8); const beginIndex$2 = (s$2.length | 0); return (jsx$3 + (("" + "0000000000".substring(beginIndex$2)) + s$2)) } else { const x$5 = (+(lp >>> 0)); return x$5.toString(8) } }; } const $d_jl_Long$ = new $TypeData().initClass({ jl_Long$: 0 }, false, "java.lang.Long$", { jl_Long$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_jl_Long$.prototype.$classData = $d_jl_Long$; let $n_jl_Long$ = (void 0); const $m_jl_Long$ = (function() { if ((!$n_jl_Long$)) { $n_jl_Long$ = new $c_jl_Long$().init___() }; return $n_jl_Long$ }); class $c_ju_AbstractCollection extends $c_O { containsAll__ju_Collection__Z(c) { const __self = new $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3().init___sc_convert_Wrappers$MapWrapper$$anon$2(c); let jsx$1; inlinereturn$7: { while (__self.ui$1.hasNext__Z()) { const arg1 = __self.next__ju_Map$Entry(); if ((!this.contains__O__Z(arg1))) { jsx$1 = true; break inlinereturn$7 } }; jsx$1 = false }; return (!jsx$1) }; toString__T() { const __self = new $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3().init___sc_convert_Wrappers$MapWrapper$$anon$2(this); let result = "["; let first = true; while (__self.ui$1.hasNext__Z()) { if (first) { first = false } else { result = (result + ", ") }; result = (("" + result) + __self.next__ju_Map$Entry()) }; return (result + "]") }; contains__O__Z(o) { const __self = new $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3().init___sc_convert_Wrappers$MapWrapper$$anon$2(this); while (__self.ui$1.hasNext__Z()) { const arg1 = __self.next__ju_Map$Entry(); if (((o === null) ? (arg1 === null) : $objectEquals(o, arg1))) { return true } }; return false }; } class $c_ju_concurrent_atomic_AtomicReference extends $c_O { constructor() { super(); this.value$1 = null }; compareAndSet__O__O__Z(expect, update) { if ((expect === this.value$1)) { this.value$1 = update; return true } else { return false } }; init___O(value) { this.value$1 = value; return this }; } class $c_ju_regex_Pattern extends $c_O { constructor() { super(); this.groupCount$1 = 0; this.groupStartMapper$1 = null; this.jsRegExp$1 = null; this.$$undpattern$1 = null; this.$$undflags$1 = 0; this.bitmap$0$1 = 0 }; jsFlags__p1__T() { return ((((!(!this.jsRegExp$1.global)) ? "g" : "") + ((!(!this.jsRegExp$1.ignoreCase)) ? "i" : "")) + ((!(!this.jsRegExp$1.multiline)) ? "m" : "")) }; jsPattern__p1__T() { return this.jsRegExp$1.source }; init___sjs_js_RegExp__T__I(jsRegExp, _pattern, _flags) { this.jsRegExp$1 = jsRegExp; this.$$undpattern$1 = _pattern; this.$$undflags$1 = _flags; return this }; toString__T() { return this.$$undpattern$1 }; groupCount__I() { return (((((1 & this.bitmap$0$1) << 24) >> 24) === 0) ? this.groupCount$lzycompute__p1__I() : this.groupCount$1) }; split__jl_CharSequence__I__AT(input, limit) { const inputStr = $objectToString(input); if ((inputStr === "")) { return $makeNativeArrayWrapper($d_T.getArrayOf(), [""]) } else { const lim = ((limit > 0) ? limit : 2147483647); const matcher = new $c_ju_regex_Matcher().init___ju_regex_Pattern__jl_CharSequence__I__I(this, inputStr, 0, (inputStr.length | 0)); let elems$2 = null; elems$2 = []; let prevEnd = 0; let size = 0; while (((size < (((-1) + lim) | 0)) && matcher.find__Z())) { if ((matcher.end__I() !== 0)) { const beginIndex = prevEnd; const endIndex = matcher.start__I(); const elem = inputStr.substring(beginIndex, endIndex); const unboxedElem = ((elem === null) ? null : elem); elems$2.push(unboxedElem); size = ((1 + size) | 0) }; prevEnd = matcher.end__I() }; const beginIndex$1 = prevEnd; const elem$1 = inputStr.substring(beginIndex$1); const unboxedElem$1 = ((elem$1 === null) ? null : elem$1); elems$2.push(unboxedElem$1); const result = $makeNativeArrayWrapper($d_T.getArrayOf(), elems$2); if ((limit !== 0)) { return result } else { let actualLength = result.u.length; while (((actualLength !== 0) && (result.u[(((-1) + actualLength) | 0)] === ""))) { actualLength = (((-1) + actualLength) | 0) }; if ((actualLength === result.u.length)) { return result } else { const actualResult = $newArrayObject($d_T.getArrayOf(), [actualLength]); $systemArraycopy(result, 0, actualResult, 0, actualLength); return actualResult } } } }; groupCount$lzycompute__p1__I() { if (((((1 & this.bitmap$0$1) << 24) >> 24) === 0)) { this.groupCount$1 = (((-1) + (new $g.RegExp(("|" + this.jsPattern__p1__T())).exec("").length | 0)) | 0); this.bitmap$0$1 = (((1 | this.bitmap$0$1) << 24) >> 24) }; return this.groupCount$1 }; newJSRegExp__sjs_js_RegExp() { const r = new $g.RegExp(this.jsRegExp$1); return ((r !== this.jsRegExp$1) ? r : new $g.RegExp(this.jsPattern__p1__T(), this.jsFlags__p1__T())) }; } const $d_ju_regex_Pattern = new $TypeData().initClass({ ju_regex_Pattern: 0 }, false, "java.util.regex.Pattern", { ju_regex_Pattern: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_ju_regex_Pattern.prototype.$classData = $d_ju_regex_Pattern; class $c_ju_regex_Pattern$ extends $c_O { constructor() { super(); this.java$util$regex$Pattern$$splitHackPat$1 = null; this.java$util$regex$Pattern$$flagHackPat$1 = null }; init___() { $n_ju_regex_Pattern$ = this; this.java$util$regex$Pattern$$splitHackPat$1 = new $g.RegExp("^\\\\Q(.|\\n|\\r)\\\\E$"); this.java$util$regex$Pattern$$flagHackPat$1 = new $g.RegExp("^\\(\\?([idmsuxU]*)(?:-([idmsuxU]*))?\\)"); return this }; compile__T__I__ju_regex_Pattern(regex, flags) { let x1; if (((16 & flags) !== 0)) { x1 = new $c_T2().init___O__O(this.quote__T__T(regex), flags) } else { const m = this.java$util$regex$Pattern$$splitHackPat$1.exec(regex); let this$5; if ((m !== null)) { const value = m[1]; if ((value === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; this$5 = new $c_s_Some().init___O(new $c_T2().init___O__O(this.quote__T__T(value), flags)) } else { this$5 = $m_s_None$() }; let this$33; if (this$5.isEmpty__Z()) { const this$6 = $m_ju_regex_Pattern$(); const m$1 = this$6.java$util$regex$Pattern$$flagHackPat$1.exec(regex); if ((m$1 !== null)) { const value$1 = m$1[0]; if ((value$1 === (void 0))) { throw new $c_ju_NoSuchElementException().init___T("undefined.get") }; const thiz = value$1; const beginIndex = (thiz.length | 0); const newPat = regex.substring(beginIndex); let elem$1 = 0; elem$1 = flags; const value$2 = m$1[1]; if ((value$2 !== (void 0))) { const chars = value$2; const end = (chars.length | 0); let i = 0; while ((i < end)) { const arg1 = i; elem$1 = (elem$1 | $m_ju_regex_Pattern$().java$util$regex$Pattern$$charToFlag__C__I((65535 & (chars.charCodeAt(arg1) | 0)))); i = ((1 + i) | 0) } }; const value$3 = m$1[2]; if ((value$3 !== (void 0))) { const chars$3 = value$3; const end$1 = (chars$3.length | 0); let i$1 = 0; while ((i$1 < end$1)) { const arg1$1 = i$1; elem$1 = (elem$1 & (~$m_ju_regex_Pattern$().java$util$regex$Pattern$$charToFlag__C__I((65535 & (chars$3.charCodeAt(arg1$1) | 0))))); i$1 = ((1 + i$1) | 0) } }; this$33 = new $c_s_Some().init___O(new $c_T2().init___O__O(newPat, elem$1)) } else { this$33 = $m_s_None$() } } else { this$33 = this$5 }; x1 = (this$33.isEmpty__Z() ? new $c_T2().init___O__O(regex, flags) : this$33.get__O()) }; if ((x1 === null)) { throw new $c_s_MatchError().init___O(x1) }; const jsPattern = x1.$$und1__O(); const flags1 = x1.$$und2$mcI$sp__I(); const jsFlags = (("g" + (((2 & flags1) !== 0) ? "i" : "")) + (((8 & flags1) !== 0) ? "m" : "")); const jsRegExp = new $g.RegExp(jsPattern, jsFlags); return new $c_ju_regex_Pattern().init___sjs_js_RegExp__T__I(jsRegExp, regex, flags1) }; quote__T__T(s) { let result = ""; let i = 0; while ((i < (s.length | 0))) { const index = i; const c = (65535 & (s.charCodeAt(index) | 0)); const jsx$2 = result; let jsx$1; switch (c) { case 92: case 46: case 40: case 41: case 91: case 93: case 123: case 125: case 124: case 63: case 42: case 43: case 94: case 36: { jsx$1 = ("\\" + new $c_jl_Character().init___C(c)); break } default: { jsx$1 = new $c_jl_Character().init___C(c) } }; result = (("" + jsx$2) + jsx$1); i = ((1 + i) | 0) }; return result }; java$util$regex$Pattern$$charToFlag__C__I(c) { switch (c) { case 105: { return 2; break } case 100: { return 1; break } case 109: { return 8; break } case 115: { return 32; break } case 117: { return 64; break } case 120: { return 4; break } case 85: { return 256; break } default: { throw new $c_jl_IllegalArgumentException().init___T("bad in-pattern flag") } } }; } const $d_ju_regex_Pattern$ = new $TypeData().initClass({ ju_regex_Pattern$: 0 }, false, "java.util.regex.Pattern$", { ju_regex_Pattern$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_ju_regex_Pattern$.prototype.$classData = $d_ju_regex_Pattern$; let $n_ju_regex_Pattern$ = (void 0); const $m_ju_regex_Pattern$ = (function() { if ((!$n_ju_regex_Pattern$)) { $n_ju_regex_Pattern$ = new $c_ju_regex_Pattern$().init___() }; return $n_ju_regex_Pattern$ }); class $c_s_Console$ extends $c_s_DeprecatedConsole { constructor() { super(); this.outVar$2 = null; this.errVar$2 = null; this.inVar$2 = null }; init___() { $n_s_Console$ = this; this.outVar$2 = new $c_s_util_DynamicVariable().init___O($m_jl_System$().out$1); this.errVar$2 = new $c_s_util_DynamicVariable().init___O($m_jl_System$().err$1); this.inVar$2 = new $c_s_util_DynamicVariable().init___O(null); return this }; } const $d_s_Console$ = new $TypeData().initClass({ s_Console$: 0 }, false, "scala.Console$", { s_Console$: 1, s_DeprecatedConsole: 1, O: 1, s_io_AnsiColor: 1 }); $c_s_Console$.prototype.$classData = $d_s_Console$; let $n_s_Console$ = (void 0); const $m_s_Console$ = (function() { if ((!$n_s_Console$)) { $n_s_Console$ = new $c_s_Console$().init___() }; return $n_s_Console$ }); class $c_s_Option$ extends $c_O { init___() { return this }; apply__O__s_Option(x) { return ((x === null) ? $m_s_None$() : new $c_s_Some().init___O(x)) }; } const $d_s_Option$ = new $TypeData().initClass({ s_Option$: 0 }, false, "scala.Option$", { s_Option$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_Option$.prototype.$classData = $d_s_Option$; let $n_s_Option$ = (void 0); const $m_s_Option$ = (function() { if ((!$n_s_Option$)) { $n_s_Option$ = new $c_s_Option$().init___() }; return $n_s_Option$ }); class $c_s_Predef$ extends $c_s_LowPriorityImplicits { constructor() { super(); this.Map$2 = null; this.Set$2 = null; this.ClassManifest$2 = null; this.Manifest$2 = null; this.NoManifest$2 = null; this.StringCanBuildFrom$2 = null; this.singleton$und$less$colon$less$2 = null; this.scala$Predef$$singleton$und$eq$colon$eq$f = null }; init___() { $n_s_Predef$ = this; $m_s_package$(); $m_sci_List$(); this.Map$2 = $m_sci_Map$(); this.Set$2 = $m_sci_Set$(); this.ClassManifest$2 = $m_s_reflect_package$().ClassManifest$1; this.Manifest$2 = $m_s_reflect_package$().Manifest$1; this.NoManifest$2 = $m_s_reflect_NoManifest$(); this.StringCanBuildFrom$2 = new $c_s_Predef$$anon$1().init___(); this.singleton$und$less$colon$less$2 = new $c_s_Predef$$anon$2().init___(); this.scala$Predef$$singleton$und$eq$colon$eq$f = new $c_s_Predef$$anon$3().init___(); return this }; assert__Z__V(assertion) { if ((!assertion)) { throw new $c_jl_AssertionError().init___O("assertion failed") } }; require__Z__V(requirement) { if ((!requirement)) { throw new $c_jl_IllegalArgumentException().init___T("requirement failed") } }; $$qmark$qmark$qmark__sr_Nothing$() { throw new $c_s_NotImplementedError().init___() }; } const $d_s_Predef$ = new $TypeData().initClass({ s_Predef$: 0 }, false, "scala.Predef$", { s_Predef$: 1, s_LowPriorityImplicits: 1, O: 1, s_DeprecatedPredef: 1 }); $c_s_Predef$.prototype.$classData = $d_s_Predef$; let $n_s_Predef$ = (void 0); const $m_s_Predef$ = (function() { if ((!$n_s_Predef$)) { $n_s_Predef$ = new $c_s_Predef$().init___() }; return $n_s_Predef$ }); class $c_s_StringContext$ extends $c_O { init___() { return this }; loop$1__p1__I__I__jl_StringBuilder__T__I__Z__T(i, next, b$1, str$1, len$1, strict$1) { _loop: while (true) { if ((next >= 0)) { if ((next > i)) { b$1.append__jl_CharSequence__I__I__jl_StringBuilder(str$1, i, next) }; let idx = ((1 + next) | 0); if ((idx >= len$1)) { throw new $c_s_StringContext$InvalidEscapeException().init___T__I(str$1, next) }; const index = idx; const x1 = (65535 & (str$1.charCodeAt(index) | 0)); let c; switch (x1) { case 98: { c = 8; break } case 116: { c = 9; break } case 110: { c = 10; break } case 102: { c = 12; break } case 114: { c = 13; break } case 34: { c = 34; break } case 39: { c = 39; break } case 92: { c = 92; break } default: { if (((x1 >= 48) && (x1 <= 55))) { if (strict$1) { throw new $c_s_StringContext$InvalidEscapeException().init___T__I(str$1, next) }; const index$1 = idx; const leadch = (65535 & (str$1.charCodeAt(index$1) | 0)); let oct = (((-48) + leadch) | 0); idx = ((1 + idx) | 0); let jsx$2; if ((idx < len$1)) { const index$2 = idx; jsx$2 = ((65535 & (str$1.charCodeAt(index$2) | 0)) >= 48) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const index$3 = idx; jsx$1 = ((65535 & (str$1.charCodeAt(index$3) | 0)) <= 55) } else { jsx$1 = false }; if (jsx$1) { const jsx$3 = oct; const index$4 = idx; oct = (((-48) + (((jsx$3 << 3) + (65535 & (str$1.charCodeAt(index$4) | 0))) | 0)) | 0); idx = ((1 + idx) | 0); let jsx$5; if (((idx < len$1) && (leadch <= 51))) { const index$5 = idx; jsx$5 = ((65535 & (str$1.charCodeAt(index$5) | 0)) >= 48) } else { jsx$5 = false }; let jsx$4; if (jsx$5) { const index$6 = idx; jsx$4 = ((65535 & (str$1.charCodeAt(index$6) | 0)) <= 55) } else { jsx$4 = false }; if (jsx$4) { const jsx$6 = oct; const index$7 = idx; oct = (((-48) + (((jsx$6 << 3) + (65535 & (str$1.charCodeAt(index$7) | 0))) | 0)) | 0); idx = ((1 + idx) | 0) } }; idx = (((-1) + idx) | 0); c = (65535 & oct) } else { throw new $c_s_StringContext$InvalidEscapeException().init___T__I(str$1, next) } } }; idx = ((1 + idx) | 0); b$1.append__C__jl_StringBuilder(c); const temp$i = idx; const temp$next = $m_sjsr_RuntimeString$().indexOf__T__I__I__I(str$1, 92, idx); i = temp$i; next = temp$next; continue _loop } else { if ((i < len$1)) { b$1.append__jl_CharSequence__I__I__jl_StringBuilder(str$1, i, len$1) }; return b$1.java$lang$StringBuilder$$content$f } } }; treatEscapes0__p1__T__Z__T(str, strict) { const len = (str.length | 0); const x1 = $m_sjsr_RuntimeString$().indexOf__T__I__I(str, 92); switch (x1) { case (-1): { return str; break } default: { return this.replace$1__p1__I__T__I__Z__T(x1, str, len, strict) } } }; replace$1__p1__I__T__I__Z__T(first, str$1, len$1, strict$1) { const b = new $c_jl_StringBuilder().init___(); return this.loop$1__p1__I__I__jl_StringBuilder__T__I__Z__T(0, first, b, str$1, len$1, strict$1) }; } const $d_s_StringContext$ = new $TypeData().initClass({ s_StringContext$: 0 }, false, "scala.StringContext$", { s_StringContext$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_StringContext$.prototype.$classData = $d_s_StringContext$; let $n_s_StringContext$ = (void 0); const $m_s_StringContext$ = (function() { if ((!$n_s_StringContext$)) { $n_s_StringContext$ = new $c_s_StringContext$().init___() }; return $n_s_StringContext$ }); class $c_s_concurrent_BatchingExecutor$Batch extends $c_O { constructor() { super(); this.initial$1 = null; this.parentBlockContext$1 = null; this.$$outer$1 = null }; init___s_concurrent_BatchingExecutor__sci_List($$outer, initial) { this.initial$1 = initial; if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; processBatch$1__p1__sci_List__V(batch) { _processBatch: while (true) { const x1 = batch; const x$2 = $m_sci_Nil$(); if ((!x$2.equals__O__Z(x1))) { if ((x1 instanceof $c_sci_$colon$colon)) { const x2 = x1; const head = x2.head$5; const tail = x2.tl$5; this.$$outer$1.scala$concurrent$BatchingExecutor$$$undtasksLocal$1.set__O__V(tail); try { head.run__V() } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { const remaining = this.$$outer$1.scala$concurrent$BatchingExecutor$$$undtasksLocal$1.get__O(); this.$$outer$1.scala$concurrent$BatchingExecutor$$$undtasksLocal$1.set__O__V($m_sci_Nil$()); const r = new $c_s_concurrent_BatchingExecutor$Batch().init___s_concurrent_BatchingExecutor__sci_List(this.$$outer$1, remaining); r.run__V(); throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(e$2) } else { throw e } }; batch = this.$$outer$1.scala$concurrent$BatchingExecutor$$$undtasksLocal$1.get__O(); continue _processBatch }; throw new $c_s_MatchError().init___O(x1) }; break } }; run__V() { $m_s_Predef$().require__Z__V((this.$$outer$1.scala$concurrent$BatchingExecutor$$$undtasksLocal$1.get__O() === null)); const prevBlockContext = $m_s_concurrent_BlockContext$().current__s_concurrent_BlockContext(); const this$1 = $m_s_concurrent_BlockContext$(); const old = this$1.contextLocal$1.get__O(); try { this$1.contextLocal$1.set__O__V(this); try { this.parentBlockContext$1 = prevBlockContext; this.processBatch$1__p1__sci_List__V(this.initial$1) } finally { this.$$outer$1.scala$concurrent$BatchingExecutor$$$undtasksLocal$1.remove__V(); this.parentBlockContext$1 = null } } finally { this$1.contextLocal$1.set__O__V(old) } }; } const $d_s_concurrent_BatchingExecutor$Batch = new $TypeData().initClass({ s_concurrent_BatchingExecutor$Batch: 0 }, false, "scala.concurrent.BatchingExecutor$Batch", { s_concurrent_BatchingExecutor$Batch: 1, O: 1, jl_Runnable: 1, s_concurrent_BlockContext: 1 }); $c_s_concurrent_BatchingExecutor$Batch.prototype.$classData = $d_s_concurrent_BatchingExecutor$Batch; class $c_s_concurrent_impl_CallbackRunnable extends $c_O { constructor() { super(); this.executor$1 = null; this.onComplete$1 = null; this.value$1 = null }; run__V() { $m_s_Predef$().require__Z__V((this.value$1 !== null)); try { this.onComplete$1.apply__O__O(this.value$1) } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { matchEnd8: { const o11 = $m_s_util_control_NonFatal$().unapply__jl_Throwable__s_Option(e$2); if ((!o11.isEmpty__Z())) { const e$3 = o11.get__O(); this.executor$1.reportFailure__jl_Throwable__V(e$3); break matchEnd8 }; throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(e$2) } } else { throw e } } }; init___s_concurrent_ExecutionContext__F1(executor, onComplete) { this.executor$1 = executor; this.onComplete$1 = onComplete; this.value$1 = null; return this }; executeWithValue__s_util_Try__V(v) { $m_s_Predef$().require__Z__V((this.value$1 === null)); this.value$1 = v; try { this.executor$1.execute__jl_Runnable__V(this) } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { matchEnd8: { const o11 = $m_s_util_control_NonFatal$().unapply__jl_Throwable__s_Option(e$2); if ((!o11.isEmpty__Z())) { const t = o11.get__O(); this.executor$1.reportFailure__jl_Throwable__V(t); break matchEnd8 }; throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(e$2) } } else { throw e } } }; } const $isArrayOf_s_concurrent_impl_CallbackRunnable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_concurrent_impl_CallbackRunnable))) }); const $d_s_concurrent_impl_CallbackRunnable = new $TypeData().initClass({ s_concurrent_impl_CallbackRunnable: 0 }, false, "scala.concurrent.impl.CallbackRunnable", { s_concurrent_impl_CallbackRunnable: 1, O: 1, jl_Runnable: 1, s_concurrent_OnCompleteRunnable: 1 }); $c_s_concurrent_impl_CallbackRunnable.prototype.$classData = $d_s_concurrent_impl_CallbackRunnable; const $f_s_concurrent_impl_Promise__transformWith__F1__s_concurrent_ExecutionContext__s_concurrent_Future = (function($thiz, f, executor) { const p = new $c_s_concurrent_impl_Promise$DefaultPromise().init___(); $thiz.onComplete__F1__s_concurrent_ExecutionContext__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, f$1, p$1) { return (function(v$2) { const v = v$2; try { const x1 = f$1.apply__O__O(v); if ((x1 === $this)) { return $f_s_concurrent_Promise__complete__s_util_Try__s_concurrent_Promise(p$1, v) } else if ((x1 instanceof $c_s_concurrent_impl_Promise$DefaultPromise)) { const x2 = x1; x2.link__p2__s_concurrent_impl_Promise$DefaultPromise__V(p$1.compressedRoot__p2__s_concurrent_impl_Promise$DefaultPromise()); return (void 0) } else { return $f_s_concurrent_Promise__tryCompleteWith__s_concurrent_Future__s_concurrent_Promise(p$1, x1) } } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { const o11 = $m_s_util_control_NonFatal$().unapply__jl_Throwable__s_Option(e$2); if ((!o11.isEmpty__Z())) { const t = o11.get__O(); return $f_s_concurrent_Promise__failure__jl_Throwable__s_concurrent_Promise(p$1, t) }; throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(e$2) } else { throw e } } }) })($thiz, f, p)), executor); return p }); const $f_s_concurrent_impl_Promise__toString__T = (function($thiz) { const x1 = $thiz.value__s_Option(); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const result = x2.value$2; return (("Future(" + result) + ")") } else { const x = $m_s_None$(); if ((x === x1)) { return "Future()" } else { throw new $c_s_MatchError().init___O(x1) } } }); const $f_s_concurrent_impl_Promise__transform__F1__s_concurrent_ExecutionContext__s_concurrent_Future = (function($thiz, f, executor) { const p = new $c_s_concurrent_impl_Promise$DefaultPromise().init___(); $thiz.onComplete__F1__s_concurrent_ExecutionContext__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, p$1, f$1) { return (function(result$2) { const result = result$2; const result$1 = $f_s_concurrent_impl_Promise__liftedTree1$1__ps_concurrent_impl_Promise__F1__s_util_Try__s_util_Try($this, f$1, result); return $f_s_concurrent_Promise__complete__s_util_Try__s_concurrent_Promise(p$1, result$1) }) })($thiz, p, f)), executor); return p }); const $f_s_concurrent_impl_Promise__liftedTree1$1__ps_concurrent_impl_Promise__F1__s_util_Try__s_util_Try = (function($thiz, f$1, result$1) { try { return f$1.apply__O__O(result$1) } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { const o11 = $m_s_util_control_NonFatal$().unapply__jl_Throwable__s_Option(e$2); if ((!o11.isEmpty__Z())) { const t = o11.get__O(); return new $c_s_util_Failure().init___jl_Throwable(t) }; throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(e$2) } else { throw e } } }); class $c_s_math_BigDecimal$ extends $c_O { constructor() { super(); this.cache$1 = null; this.minCached$1 = 0; this.maxCached$1 = 0; this.defaultMathContext$1 = null; this.bitmap$0$1 = false }; init___() { $n_s_math_BigDecimal$ = this; this.minCached$1 = (-512); this.maxCached$1 = 512; this.defaultMathContext$1 = $m_Ljava_math_MathContext$().DECIMAL128$1; return this }; decimal__D__Ljava_math_MathContext__s_math_BigDecimal(d, mc) { return new $c_s_math_BigDecimal().init___Ljava_math_BigDecimal__Ljava_math_MathContext(new $c_Ljava_math_BigDecimal().init___T__Ljava_math_MathContext(("" + d), mc), mc) }; exact__T__s_math_BigDecimal(s) { return this.exact__Ljava_math_BigDecimal__s_math_BigDecimal(new $c_Ljava_math_BigDecimal().init___T(s)) }; exact__Ljava_math_BigDecimal__s_math_BigDecimal(repr) { const jsx$1 = repr.precision__I(); const this$1 = this.defaultMathContext$1; let mc; if ((jsx$1 <= this$1.precision$1)) { mc = this.defaultMathContext$1 } else { mc = new $c_Ljava_math_MathContext().init___I__Ljava_math_RoundingMode(repr.precision__I(), $m_Ljava_math_RoundingMode$().HALF$undEVEN$1) }; return new $c_s_math_BigDecimal().init___Ljava_math_BigDecimal__Ljava_math_MathContext(repr, mc) }; } const $d_s_math_BigDecimal$ = new $TypeData().initClass({ s_math_BigDecimal$: 0 }, false, "scala.math.BigDecimal$", { s_math_BigDecimal$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_BigDecimal$.prototype.$classData = $d_s_math_BigDecimal$; let $n_s_math_BigDecimal$ = (void 0); const $m_s_math_BigDecimal$ = (function() { if ((!$n_s_math_BigDecimal$)) { $n_s_math_BigDecimal$ = new $c_s_math_BigDecimal$().init___() }; return $n_s_math_BigDecimal$ }); class $c_s_math_BigInt$ extends $c_O { constructor() { super(); this.minCached$1 = 0; this.maxCached$1 = 0; this.cache$1 = null; this.scala$math$BigInt$$minusOne$1 = null }; init___() { $n_s_math_BigInt$ = this; this.minCached$1 = (-1024); this.maxCached$1 = 1024; this.cache$1 = $newArrayObject($d_s_math_BigInt.getArrayOf(), [((1 + ((this.maxCached$1 - this.minCached$1) | 0)) | 0)]); this.scala$math$BigInt$$minusOne$1 = $m_Ljava_math_BigInteger$().valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I((-1), (-1))); return this }; apply__I__s_math_BigInt(i) { if (((this.minCached$1 <= i) && (i <= this.maxCached$1))) { const offset = ((i - this.minCached$1) | 0); let n = this.cache$1.u[offset]; if ((n === null)) { const jsx$1 = $m_Ljava_math_BigInteger$(); const hi = (i >> 31); n = new $c_s_math_BigInt().init___Ljava_math_BigInteger(jsx$1.valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(i, hi))); this.cache$1.u[offset] = n }; return n } else { const jsx$2 = $m_Ljava_math_BigInteger$(); const hi$1 = (i >> 31); return new $c_s_math_BigInt().init___Ljava_math_BigInteger(jsx$2.valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(i, hi$1))) } }; apply__T__I__s_math_BigInt(x, radix) { return new $c_s_math_BigInt().init___Ljava_math_BigInteger(new $c_Ljava_math_BigInteger().init___T__I(x, radix)) }; apply__J__s_math_BigInt(l) { const value = this.minCached$1; const hi = (value >> 31); const bhi = l.hi$2; let jsx$1; if (((hi === bhi) ? (((-2147483648) ^ value) <= ((-2147483648) ^ l.lo$2)) : (hi < bhi))) { const value$1 = this.maxCached$1; const hi$1 = (value$1 >> 31); const ahi = l.hi$2; jsx$1 = ((ahi === hi$1) ? (((-2147483648) ^ l.lo$2) <= ((-2147483648) ^ value$1)) : (ahi < hi$1)) } else { jsx$1 = false }; if (jsx$1) { return this.apply__I__s_math_BigInt(l.lo$2) } else { return new $c_s_math_BigInt().init___Ljava_math_BigInteger($m_Ljava_math_BigInteger$().valueOf__J__Ljava_math_BigInteger(l)) } }; apply__T__s_math_BigInt(x) { return new $c_s_math_BigInt().init___Ljava_math_BigInteger(new $c_Ljava_math_BigInteger().init___T(x)) }; } const $d_s_math_BigInt$ = new $TypeData().initClass({ s_math_BigInt$: 0 }, false, "scala.math.BigInt$", { s_math_BigInt$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_BigInt$.prototype.$classData = $d_s_math_BigInt$; let $n_s_math_BigInt$ = (void 0); const $m_s_math_BigInt$ = (function() { if ((!$n_s_math_BigInt$)) { $n_s_math_BigInt$ = new $c_s_math_BigInt$().init___() }; return $n_s_math_BigInt$ }); class $c_s_math_Fractional$ extends $c_O { init___() { return this }; } const $d_s_math_Fractional$ = new $TypeData().initClass({ s_math_Fractional$: 0 }, false, "scala.math.Fractional$", { s_math_Fractional$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Fractional$.prototype.$classData = $d_s_math_Fractional$; let $n_s_math_Fractional$ = (void 0); const $m_s_math_Fractional$ = (function() { if ((!$n_s_math_Fractional$)) { $n_s_math_Fractional$ = new $c_s_math_Fractional$().init___() }; return $n_s_math_Fractional$ }); class $c_s_math_Integral$ extends $c_O { init___() { return this }; } const $d_s_math_Integral$ = new $TypeData().initClass({ s_math_Integral$: 0 }, false, "scala.math.Integral$", { s_math_Integral$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Integral$.prototype.$classData = $d_s_math_Integral$; let $n_s_math_Integral$ = (void 0); const $m_s_math_Integral$ = (function() { if ((!$n_s_math_Integral$)) { $n_s_math_Integral$ = new $c_s_math_Integral$().init___() }; return $n_s_math_Integral$ }); class $c_s_math_Numeric$ extends $c_O { init___() { return this }; } const $d_s_math_Numeric$ = new $TypeData().initClass({ s_math_Numeric$: 0 }, false, "scala.math.Numeric$", { s_math_Numeric$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Numeric$.prototype.$classData = $d_s_math_Numeric$; let $n_s_math_Numeric$ = (void 0); const $m_s_math_Numeric$ = (function() { if ((!$n_s_math_Numeric$)) { $n_s_math_Numeric$ = new $c_s_math_Numeric$().init___() }; return $n_s_math_Numeric$ }); class $c_s_math_ScalaNumber extends $c_jl_Number { } const $isArrayOf_s_math_ScalaNumber = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_math_ScalaNumber))) }); class $c_s_reflect_ClassTag$ extends $c_O { init___() { return this }; apply__jl_Class__s_reflect_ClassTag(runtimeClass1) { return ((runtimeClass1 === $d_B.getClassOf()) ? $m_s_reflect_ManifestFactory$ByteManifest$() : ((runtimeClass1 === $d_S.getClassOf()) ? $m_s_reflect_ManifestFactory$ShortManifest$() : ((runtimeClass1 === $d_C.getClassOf()) ? $m_s_reflect_ManifestFactory$CharManifest$() : ((runtimeClass1 === $d_I.getClassOf()) ? $m_s_reflect_ManifestFactory$IntManifest$() : ((runtimeClass1 === $d_J.getClassOf()) ? $m_s_reflect_ManifestFactory$LongManifest$() : ((runtimeClass1 === $d_F.getClassOf()) ? $m_s_reflect_ManifestFactory$FloatManifest$() : ((runtimeClass1 === $d_D.getClassOf()) ? $m_s_reflect_ManifestFactory$DoubleManifest$() : ((runtimeClass1 === $d_Z.getClassOf()) ? $m_s_reflect_ManifestFactory$BooleanManifest$() : ((runtimeClass1 === $d_V.getClassOf()) ? $m_s_reflect_ManifestFactory$UnitManifest$() : ((runtimeClass1 === $d_O.getClassOf()) ? $m_s_reflect_ManifestFactory$ObjectManifest$() : ((runtimeClass1 === $d_sr_Nothing$.getClassOf()) ? $m_s_reflect_ManifestFactory$NothingManifest$() : ((runtimeClass1 === $d_sr_Null$.getClassOf()) ? $m_s_reflect_ManifestFactory$NullManifest$() : new $c_s_reflect_ClassTag$GenericClassTag().init___jl_Class(runtimeClass1))))))))))))) }; } const $d_s_reflect_ClassTag$ = new $TypeData().initClass({ s_reflect_ClassTag$: 0 }, false, "scala.reflect.ClassTag$", { s_reflect_ClassTag$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_reflect_ClassTag$.prototype.$classData = $d_s_reflect_ClassTag$; let $n_s_reflect_ClassTag$ = (void 0); const $m_s_reflect_ClassTag$ = (function() { if ((!$n_s_reflect_ClassTag$)) { $n_s_reflect_ClassTag$ = new $c_s_reflect_ClassTag$().init___() }; return $n_s_reflect_ClassTag$ }); class $c_s_util_Either$ extends $c_O { init___() { return this }; } const $d_s_util_Either$ = new $TypeData().initClass({ s_util_Either$: 0 }, false, "scala.util.Either$", { s_util_Either$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_util_Either$.prototype.$classData = $d_s_util_Either$; let $n_s_util_Either$ = (void 0); const $m_s_util_Either$ = (function() { if ((!$n_s_util_Either$)) { $n_s_util_Either$ = new $c_s_util_Either$().init___() }; return $n_s_util_Either$ }); class $c_s_util_Left$ extends $c_O { init___() { return this }; toString__T() { return "Left" }; } const $d_s_util_Left$ = new $TypeData().initClass({ s_util_Left$: 0 }, false, "scala.util.Left$", { s_util_Left$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_util_Left$.prototype.$classData = $d_s_util_Left$; let $n_s_util_Left$ = (void 0); const $m_s_util_Left$ = (function() { if ((!$n_s_util_Left$)) { $n_s_util_Left$ = new $c_s_util_Left$().init___() }; return $n_s_util_Left$ }); class $c_s_util_Right$ extends $c_O { init___() { return this }; toString__T() { return "Right" }; } const $d_s_util_Right$ = new $TypeData().initClass({ s_util_Right$: 0 }, false, "scala.util.Right$", { s_util_Right$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_util_Right$.prototype.$classData = $d_s_util_Right$; let $n_s_util_Right$ = (void 0); const $m_s_util_Right$ = (function() { if ((!$n_s_util_Right$)) { $n_s_util_Right$ = new $c_s_util_Right$().init___() }; return $n_s_util_Right$ }); class $c_s_util_control_NoStackTrace$ extends $c_O { constructor() { super(); this.$$undnoSuppression$1 = false }; init___() { this.$$undnoSuppression$1 = false; return this }; } const $d_s_util_control_NoStackTrace$ = new $TypeData().initClass({ s_util_control_NoStackTrace$: 0 }, false, "scala.util.control.NoStackTrace$", { s_util_control_NoStackTrace$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_util_control_NoStackTrace$.prototype.$classData = $d_s_util_control_NoStackTrace$; let $n_s_util_control_NoStackTrace$ = (void 0); const $m_s_util_control_NoStackTrace$ = (function() { if ((!$n_s_util_control_NoStackTrace$)) { $n_s_util_control_NoStackTrace$ = new $c_s_util_control_NoStackTrace$().init___() }; return $n_s_util_control_NoStackTrace$ }); class $c_s_util_matching_Regex extends $c_O { constructor() { super(); this.pattern$1 = null; this.scala$util$matching$Regex$$groupNames$f = null }; init___T__sc_Seq(regex, groupNames) { const this$1 = $m_ju_regex_Pattern$(); $c_s_util_matching_Regex.prototype.init___ju_regex_Pattern__sc_Seq.call(this, this$1.compile__T__I__ju_regex_Pattern(regex, 0), groupNames); return this }; init___ju_regex_Pattern__sc_Seq(pattern, groupNames) { this.pattern$1 = pattern; this.scala$util$matching$Regex$$groupNames$f = groupNames; return this }; toString__T() { return this.pattern$1.$$undpattern$1 }; unapplySeq__jl_CharSequence__s_Option(s) { if ((s === null)) { return $m_s_None$() } else { const this$1 = this.pattern$1; const m = new $c_ju_regex_Matcher().init___ju_regex_Pattern__jl_CharSequence__I__I(this$1, s, 0, $charSequenceLength(s)); return (m.matches__Z() ? $m_s_util_matching_Regex$().scala$util$matching$Regex$$extractGroupsFromMatcher__ju_regex_Matcher__s_Option(m) : $m_s_None$()) } }; } const $d_s_util_matching_Regex = new $TypeData().initClass({ s_util_matching_Regex: 0 }, false, "scala.util.matching.Regex", { s_util_matching_Regex: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_util_matching_Regex.prototype.$classData = $d_s_util_matching_Regex; class $c_s_util_matching_Regex$ extends $c_O { init___() { return this }; scala$util$matching$Regex$$extractGroupsFromMatcher__ju_regex_Matcher__s_Option(m) { $m_sci_List$(); let res = $m_sci_Nil$(); let index = $m_ju_regex_Matcher$().java$util$regex$Matcher$$getGroupCount__sjs_js_RegExp$ExecResult__ju_regex_Pattern__I(m.lastMatch$1, m.pattern0$1); while ((index > 0)) { const this$2 = res; const x = m.group__I__T(index); res = new $c_sci_$colon$colon().init___O__sci_List(x, this$2); index = (((-1) + index) | 0) }; return new $c_s_Some().init___O(res) }; } const $d_s_util_matching_Regex$ = new $TypeData().initClass({ s_util_matching_Regex$: 0 }, false, "scala.util.matching.Regex$", { s_util_matching_Regex$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_util_matching_Regex$.prototype.$classData = $d_s_util_matching_Regex$; let $n_s_util_matching_Regex$ = (void 0); const $m_s_util_matching_Regex$ = (function() { if ((!$n_s_util_matching_Regex$)) { $n_s_util_matching_Regex$ = new $c_s_util_matching_Regex$().init___() }; return $n_s_util_matching_Regex$ }); class $c_sc_IndexedSeq$$anon$1 extends $c_scg_GenTraversableFactory$GenericCanBuildFrom { init___() { $c_scg_GenTraversableFactory$GenericCanBuildFrom.prototype.init___scg_GenTraversableFactory.call(this, $m_sc_IndexedSeq$()); return this }; apply__scm_Builder() { $m_sc_IndexedSeq$(); $m_sci_IndexedSeq$(); $m_sci_Vector$(); return new $c_sci_VectorBuilder().init___() }; } const $d_sc_IndexedSeq$$anon$1 = new $TypeData().initClass({ sc_IndexedSeq$$anon$1: 0 }, false, "scala.collection.IndexedSeq$$anon$1", { sc_IndexedSeq$$anon$1: 1, scg_GenTraversableFactory$GenericCanBuildFrom: 1, O: 1, scg_CanBuildFrom: 1 }); $c_sc_IndexedSeq$$anon$1.prototype.$classData = $d_sc_IndexedSeq$$anon$1; class $c_scg_GenSeqFactory extends $c_scg_GenTraversableFactory { } class $c_scg_GenTraversableFactory$$anon$1 extends $c_scg_GenTraversableFactory$GenericCanBuildFrom { constructor() { super(); this.$$outer$2 = null }; apply__scm_Builder() { return this.$$outer$2.newBuilder__scm_Builder() }; init___scg_GenTraversableFactory($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; $c_scg_GenTraversableFactory$GenericCanBuildFrom.prototype.init___scg_GenTraversableFactory.call(this, $$outer); return this }; } const $d_scg_GenTraversableFactory$$anon$1 = new $TypeData().initClass({ scg_GenTraversableFactory$$anon$1: 0 }, false, "scala.collection.generic.GenTraversableFactory$$anon$1", { scg_GenTraversableFactory$$anon$1: 1, scg_GenTraversableFactory$GenericCanBuildFrom: 1, O: 1, scg_CanBuildFrom: 1 }); $c_scg_GenTraversableFactory$$anon$1.prototype.$classData = $d_scg_GenTraversableFactory$$anon$1; class $c_scg_ImmutableMapFactory extends $c_scg_MapFactory { } class $c_scg_MutableMapFactory extends $c_scg_MapFactory { newBuilder__scm_Builder() { return this.empty__sc_Map() }; } class $c_sci_$colon$colon$ extends $c_O { init___() { return this }; toString__T() { return "::" }; } const $d_sci_$colon$colon$ = new $TypeData().initClass({ sci_$colon$colon$: 0 }, false, "scala.collection.immutable.$colon$colon$", { sci_$colon$colon$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_$colon$colon$.prototype.$classData = $d_sci_$colon$colon$; let $n_sci_$colon$colon$ = (void 0); const $m_sci_$colon$colon$ = (function() { if ((!$n_sci_$colon$colon$)) { $n_sci_$colon$colon$ = new $c_sci_$colon$colon$().init___() }; return $n_sci_$colon$colon$ }); class $c_sci_Map$HashCodeAccumulator extends $c_sr_AbstractFunction2 { constructor() { super(); this.a$2 = 0; this.b$2 = 0; this.n$2 = 0; this.c$2 = 0 }; init___() { this.a$2 = 0; this.b$2 = 0; this.n$2 = 0; this.c$2 = 1; return this }; apply__O__O__V(key, value) { const this$1 = $m_s_util_hashing_MurmurHash3$(); const h = this$1.product2Hash__O__O__I__I(key, value, (-889275714)); this.a$2 = ((this.a$2 + h) | 0); this.b$2 = (this.b$2 ^ h); if ((h !== 0)) { this.c$2 = $imul(this.c$2, h) }; this.n$2 = ((1 + this.n$2) | 0) }; apply__O__O__O(v1, v2) { this.apply__O__O__V(v1, v2) }; finalizeHash__I() { let h = $m_s_util_hashing_MurmurHash3$().mapSeed$2; h = $m_s_util_hashing_MurmurHash3$().mix__I__I__I(h, this.a$2); h = $m_s_util_hashing_MurmurHash3$().mix__I__I__I(h, this.b$2); h = $m_s_util_hashing_MurmurHash3$().mixLast__I__I__I(h, this.c$2); return $m_s_util_hashing_MurmurHash3$().finalizeHash__I__I__I(h, this.n$2) }; } const $d_sci_Map$HashCodeAccumulator = new $TypeData().initClass({ sci_Map$HashCodeAccumulator: 0 }, false, "scala.collection.immutable.Map$HashCodeAccumulator", { sci_Map$HashCodeAccumulator: 1, sr_AbstractFunction2: 1, O: 1, F2: 1 }); $c_sci_Map$HashCodeAccumulator.prototype.$classData = $d_sci_Map$HashCodeAccumulator; class $c_sci_NumericRange$ extends $c_O { constructor() { super(); this.defaultOrdering$1 = null }; init___() { $n_sci_NumericRange$ = this; $m_sci_Map$(); const self = $m_s_math_Numeric$IntIsIntegral$(); const y = $m_s_math_Ordering$Int$(); const jsx$4 = new $c_T2().init___O__O(self, y); const self$1 = $m_s_math_Numeric$ShortIsIntegral$(); const y$1 = $m_s_math_Ordering$Short$(); const jsx$3 = new $c_T2().init___O__O(self$1, y$1); const self$2 = $m_s_math_Numeric$ByteIsIntegral$(); const y$2 = $m_s_math_Ordering$Byte$(); const jsx$2 = new $c_T2().init___O__O(self$2, y$2); const self$3 = $m_s_math_Numeric$CharIsIntegral$(); const y$3 = $m_s_math_Ordering$Char$(); const jsx$1 = new $c_T2().init___O__O(self$3, y$3); const self$4 = $m_s_math_Numeric$LongIsIntegral$(); const y$4 = $m_s_math_Ordering$Long$(); const array = [jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O(self$4, y$4)]; const this$14 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$14.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.defaultOrdering$1 = this$14.elems$1; return this }; check$1__p1__O__s_math_Integral__O__O(t, num$1, limit$1) { if ($f_s_math_Ordering__gt__O__O__Z(num$1, t, limit$1)) { throw new $c_jl_IllegalArgumentException().init___T("More than Int.MaxValue elements.") } else { return t } }; count__O__O__O__Z__s_math_Integral__I(start, end, step, isInclusive, num) { const zero = num.fromInt__I__O(0); const upward = $f_s_math_Ordering__lt__O__O__Z(num, start, end); const posStep = $f_s_math_Ordering__gt__O__O__Z(num, step, zero); if ($m_sr_BoxesRunTime$().equals__O__O__Z(step, zero)) { throw new $c_jl_IllegalArgumentException().init___T("step cannot be 0.") } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(start, end)) { return (isInclusive ? 1 : 0) } else if ((upward !== posStep)) { return 0 } else { const startint = num.toInt__O__I(start); if ($m_sr_BoxesRunTime$().equals__O__O__Z(start, num.fromInt__I__O(startint))) { const endint = num.toInt__O__I(end); if ($m_sr_BoxesRunTime$().equals__O__O__Z(end, num.fromInt__I__O(endint))) { const stepint = num.toInt__O__I(step); if ($m_sr_BoxesRunTime$().equals__O__O__Z(step, num.fromInt__I__O(stepint))) { if (isInclusive) { const isEmpty$4 = (((startint > endint) && (stepint > 0)) || ((startint < endint) && (stepint < 0))); if ((stepint === 0)) { throw new $c_jl_IllegalArgumentException().init___T("step cannot be 0.") }; let scala$collection$immutable$Range$$numRangeElements$4; if (isEmpty$4) { scala$collection$immutable$Range$$numRangeElements$4 = 0 } else { const hi = (endint >> 31); const hi$1 = (startint >> 31); const lo = ((endint - startint) | 0); const hi$2 = ((((-2147483648) ^ lo) > ((-2147483648) ^ endint)) ? (((-1) + ((hi - hi$1) | 0)) | 0) : ((hi - hi$1) | 0)); const hi$3 = (stepint >> 31); const this$3 = $m_sjsr_RuntimeLong$(); const lo$1 = this$3.divideImpl__I__I__I__I__I(lo, hi$2, stepint, hi$3); const hi$4 = this$3.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const lo$2 = ((1 + lo$1) | 0); const hi$5 = ((lo$2 === 0) ? ((1 + hi$4) | 0) : hi$4); scala$collection$immutable$Range$$numRangeElements$4 = (((hi$5 === 0) ? (((-2147483648) ^ lo$2) > (-1)) : (hi$5 > 0)) ? (-1) : lo$2) }; switch (stepint) { case 1: { break } case (-1): { break } default: { const hi$6 = (endint >> 31); const hi$7 = (startint >> 31); const lo$3 = ((endint - startint) | 0); const hi$8 = ((((-2147483648) ^ lo$3) > ((-2147483648) ^ endint)) ? (((-1) + ((hi$6 - hi$7) | 0)) | 0) : ((hi$6 - hi$7) | 0)); const hi$9 = (stepint >> 31); const this$6 = $m_sjsr_RuntimeLong$(); const lo$4 = this$6.remainderImpl__I__I__I__I__I(lo$3, hi$8, stepint, hi$9) } }; return ((scala$collection$immutable$Range$$numRangeElements$4 < 0) ? $m_sci_Range$().scala$collection$immutable$Range$$fail__I__I__I__Z__sr_Nothing$(startint, endint, stepint, true) : scala$collection$immutable$Range$$numRangeElements$4) } else { const isEmpty$4$1 = ((((startint > endint) && (stepint > 0)) || ((startint < endint) && (stepint < 0))) || (startint === endint)); if ((stepint === 0)) { throw new $c_jl_IllegalArgumentException().init___T("step cannot be 0.") }; let scala$collection$immutable$Range$$numRangeElements$4$1; if (isEmpty$4$1) { scala$collection$immutable$Range$$numRangeElements$4$1 = 0 } else { const hi$11 = (endint >> 31); const hi$12 = (startint >> 31); const lo$5 = ((endint - startint) | 0); const hi$13 = ((((-2147483648) ^ lo$5) > ((-2147483648) ^ endint)) ? (((-1) + ((hi$11 - hi$12) | 0)) | 0) : ((hi$11 - hi$12) | 0)); const hi$14 = (stepint >> 31); const this$9 = $m_sjsr_RuntimeLong$(); const lo$6 = this$9.divideImpl__I__I__I__I__I(lo$5, hi$13, stepint, hi$14); const hi$15 = this$9.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const hi$16 = (endint >> 31); const hi$17 = (startint >> 31); const lo$7 = ((endint - startint) | 0); const hi$18 = ((((-2147483648) ^ lo$7) > ((-2147483648) ^ endint)) ? (((-1) + ((hi$16 - hi$17) | 0)) | 0) : ((hi$16 - hi$17) | 0)); const hi$19 = (stepint >> 31); const this$11 = $m_sjsr_RuntimeLong$(); const lo$8 = this$11.remainderImpl__I__I__I__I__I(lo$7, hi$18, stepint, hi$19); const hi$20 = this$11.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; let value; if ((!((lo$8 === 0) && (hi$20 === 0)))) { value = 1 } else { value = 0 }; const hi$21 = (value >> 31); const lo$9 = ((lo$6 + value) | 0); const hi$22 = ((((-2147483648) ^ lo$9) < ((-2147483648) ^ lo$6)) ? ((1 + ((hi$15 + hi$21) | 0)) | 0) : ((hi$15 + hi$21) | 0)); scala$collection$immutable$Range$$numRangeElements$4$1 = (((hi$22 === 0) ? (((-2147483648) ^ lo$9) > (-1)) : (hi$22 > 0)) ? (-1) : lo$9) }; switch (stepint) { case 1: { break } case (-1): { break } default: { const hi$23 = (endint >> 31); const hi$24 = (startint >> 31); const lo$10 = ((endint - startint) | 0); const hi$25 = ((((-2147483648) ^ lo$10) > ((-2147483648) ^ endint)) ? (((-1) + ((hi$23 - hi$24) | 0)) | 0) : ((hi$23 - hi$24) | 0)); const hi$26 = (stepint >> 31); const this$14 = $m_sjsr_RuntimeLong$(); const lo$11 = this$14.remainderImpl__I__I__I__I__I(lo$10, hi$25, stepint, hi$26) } }; return ((scala$collection$immutable$Range$$numRangeElements$4$1 < 0) ? $m_sci_Range$().scala$collection$immutable$Range$$fail__I__I__I__Z__sr_Nothing$(startint, endint, stepint, false) : scala$collection$immutable$Range$$numRangeElements$4$1) } } } }; const one = num.fromInt__I__O(1); const limit = num.fromInt__I__O(2147483647); const startside = $f_s_math_Numeric__signum__O__I(num, start); const endside = $f_s_math_Numeric__signum__O__I(num, end); let jsx$1; if (($imul(startside, endside) >= 0)) { const diff = num.minus__O__O__O(end, start); const quotient = this.check$1__p1__O__s_math_Integral__O__O(num.quot__O__O__O(diff, step), num, limit); const remainder = num.minus__O__O__O(diff, num.times__O__O__O(quotient, step)); jsx$1 = (((!isInclusive) && $m_sr_BoxesRunTime$().equals__O__O__Z(zero, remainder)) ? quotient : this.check$1__p1__O__s_math_Integral__O__O(num.plus__O__O__O(quotient, one), num, limit)) } else { const negone = num.fromInt__I__O((-1)); const startlim = (posStep ? negone : one); const startdiff = num.minus__O__O__O(startlim, start); const startq = this.check$1__p1__O__s_math_Integral__O__O(num.quot__O__O__O(startdiff, step), num, limit); const waypointA = ($m_sr_BoxesRunTime$().equals__O__O__Z(startq, zero) ? start : num.plus__O__O__O(start, num.times__O__O__O(startq, step))); const waypointB = num.plus__O__O__O(waypointA, step); let jsx$2; if (($f_s_math_Ordering__lt__O__O__Z(num, waypointB, end) !== upward)) { jsx$2 = ((isInclusive && $m_sr_BoxesRunTime$().equals__O__O__Z(waypointB, end)) ? num.plus__O__O__O(startq, num.fromInt__I__O(2)) : num.plus__O__O__O(startq, one)) } else { const enddiff = num.minus__O__O__O(end, waypointB); const endq = this.check$1__p1__O__s_math_Integral__O__O(num.quot__O__O__O(enddiff, step), num, limit); const last = ($m_sr_BoxesRunTime$().equals__O__O__Z(endq, zero) ? waypointB : num.plus__O__O__O(waypointB, num.times__O__O__O(endq, step))); jsx$2 = num.plus__O__O__O(startq, num.plus__O__O__O(endq, (((!isInclusive) && $m_sr_BoxesRunTime$().equals__O__O__Z(last, end)) ? one : num.fromInt__I__O(2)))) }; jsx$1 = this.check$1__p1__O__s_math_Integral__O__O(jsx$2, num, limit) }; return num.toInt__O__I(jsx$1) } }; } const $d_sci_NumericRange$ = new $TypeData().initClass({ sci_NumericRange$: 0 }, false, "scala.collection.immutable.NumericRange$", { sci_NumericRange$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_NumericRange$.prototype.$classData = $d_sci_NumericRange$; let $n_sci_NumericRange$ = (void 0); const $m_sci_NumericRange$ = (function() { if ((!$n_sci_NumericRange$)) { $n_sci_NumericRange$ = new $c_sci_NumericRange$().init___() }; return $n_sci_NumericRange$ }); class $c_sci_Range$ extends $c_O { constructor() { super(); this.MAX$undPRINT$1 = 0 }; init___() { this.MAX$undPRINT$1 = 512; return this }; description__p1__I__I__I__Z__T(start, end, step, isInclusive) { return ((((start + (isInclusive ? " to " : " until ")) + end) + " by ") + step) }; scala$collection$immutable$Range$$fail__I__I__I__Z__sr_Nothing$(start, end, step, isInclusive) { throw new $c_jl_IllegalArgumentException().init___T((this.description__p1__I__I__I__Z__T(start, end, step, isInclusive) + ": seqs cannot contain more than Int.MaxValue elements.")) }; } const $d_sci_Range$ = new $TypeData().initClass({ sci_Range$: 0 }, false, "scala.collection.immutable.Range$", { sci_Range$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Range$.prototype.$classData = $d_sci_Range$; let $n_sci_Range$ = (void 0); const $m_sci_Range$ = (function() { if ((!$n_sci_Range$)) { $n_sci_Range$ = new $c_sci_Range$().init___() }; return $n_sci_Range$ }); class $c_sci_Stream$StreamCanBuildFrom extends $c_scg_GenTraversableFactory$GenericCanBuildFrom { init___() { $c_scg_GenTraversableFactory$GenericCanBuildFrom.prototype.init___scg_GenTraversableFactory.call(this, $m_sci_Stream$()); return this }; } const $d_sci_Stream$StreamCanBuildFrom = new $TypeData().initClass({ sci_Stream$StreamCanBuildFrom: 0 }, false, "scala.collection.immutable.Stream$StreamCanBuildFrom", { sci_Stream$StreamCanBuildFrom: 1, scg_GenTraversableFactory$GenericCanBuildFrom: 1, O: 1, scg_CanBuildFrom: 1 }); $c_sci_Stream$StreamCanBuildFrom.prototype.$classData = $d_sci_Stream$StreamCanBuildFrom; class $c_scm_StringBuilder$ extends $c_O { init___() { return this }; } const $d_scm_StringBuilder$ = new $TypeData().initClass({ scm_StringBuilder$: 0 }, false, "scala.collection.mutable.StringBuilder$", { scm_StringBuilder$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_StringBuilder$.prototype.$classData = $d_scm_StringBuilder$; let $n_scm_StringBuilder$ = (void 0); const $m_scm_StringBuilder$ = (function() { if ((!$n_scm_StringBuilder$)) { $n_scm_StringBuilder$ = new $c_scm_StringBuilder$().init___() }; return $n_scm_StringBuilder$ }); class $c_sjsr_AnonFunction0 extends $c_sr_AbstractFunction0 { constructor() { super(); this.f$2 = null }; apply__O() { return (0, this.f$2)() }; init___sjs_js_Function0(f) { this.f$2 = f; return this }; } const $d_sjsr_AnonFunction0 = new $TypeData().initClass({ sjsr_AnonFunction0: 0 }, false, "scala.scalajs.runtime.AnonFunction0", { sjsr_AnonFunction0: 1, sr_AbstractFunction0: 1, O: 1, F0: 1 }); $c_sjsr_AnonFunction0.prototype.$classData = $d_sjsr_AnonFunction0; class $c_sjsr_AnonFunction1 extends $c_sr_AbstractFunction1 { constructor() { super(); this.f$2 = null }; apply__O__O(arg1) { return (0, this.f$2)(arg1) }; init___sjs_js_Function1(f) { this.f$2 = f; return this }; } const $d_sjsr_AnonFunction1 = new $TypeData().initClass({ sjsr_AnonFunction1: 0 }, false, "scala.scalajs.runtime.AnonFunction1", { sjsr_AnonFunction1: 1, sr_AbstractFunction1: 1, O: 1, F1: 1 }); $c_sjsr_AnonFunction1.prototype.$classData = $d_sjsr_AnonFunction1; class $c_sjsr_AnonFunction2 extends $c_sr_AbstractFunction2 { constructor() { super(); this.f$2 = null }; init___sjs_js_Function2(f) { this.f$2 = f; return this }; apply__O__O__O(arg1, arg2) { return (0, this.f$2)(arg1, arg2) }; } const $d_sjsr_AnonFunction2 = new $TypeData().initClass({ sjsr_AnonFunction2: 0 }, false, "scala.scalajs.runtime.AnonFunction2", { sjsr_AnonFunction2: 1, sr_AbstractFunction2: 1, O: 1, F2: 1 }); $c_sjsr_AnonFunction2.prototype.$classData = $d_sjsr_AnonFunction2; class $c_sjsr_AnonFunction3 extends $c_sr_AbstractFunction3 { constructor() { super(); this.f$2 = null }; init___sjs_js_Function3(f) { this.f$2 = f; return this }; apply__O__O__O__O(arg1, arg2, arg3) { return (0, this.f$2)(arg1, arg2, arg3) }; } const $d_sjsr_AnonFunction3 = new $TypeData().initClass({ sjsr_AnonFunction3: 0 }, false, "scala.scalajs.runtime.AnonFunction3", { sjsr_AnonFunction3: 1, sr_AbstractFunction3: 1, O: 1, F3: 1 }); $c_sjsr_AnonFunction3.prototype.$classData = $d_sjsr_AnonFunction3; class $c_sjsr_RuntimeLong$ extends $c_O { constructor() { super(); this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; this.Zero$1 = null }; init___() { $n_sjsr_RuntimeLong$ = this; this.Zero$1 = new $c_sjsr_RuntimeLong().init___I__I(0, 0); return this }; Zero__sjsr_RuntimeLong() { return this.Zero$1 }; toUnsignedString__p1__I__I__T(lo, hi) { if ((((-2097152) & hi) === 0)) { const this$5 = ((4.294967296E9 * hi) + (+(lo >>> 0))); return ("" + this$5) } else { return this.unsignedDivModHelper__p1__I__I__I__I__I__sjs_js_$bar(lo, hi, 1000000000, 0, 2) } }; divideImpl__I__I__I__I__I(alo, ahi, blo, bhi) { if (((blo | bhi) === 0)) { throw new $c_jl_ArithmeticException().init___T("/ by zero") }; if ((ahi === (alo >> 31))) { if ((bhi === (blo >> 31))) { if (((alo === (-2147483648)) && (blo === (-1)))) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; return (-2147483648) } else { const lo = ((alo / blo) | 0); this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = (lo >> 31); return lo } } else if (((alo === (-2147483648)) && ((blo === (-2147483648)) && (bhi === 0)))) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = (-1); return (-1) } else { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; return 0 } } else { const neg = (ahi < 0); let abs_$_lo$2; let abs_$_hi$2; if (neg) { const lo$1 = ((-alo) | 0); const hi = ((alo !== 0) ? (~ahi) : ((-ahi) | 0)); const jsx$1_$_lo$2 = lo$1; const jsx$1_$_hi$2 = hi; abs_$_lo$2 = jsx$1_$_lo$2; abs_$_hi$2 = jsx$1_$_hi$2 } else { const jsx$2_$_lo$2 = alo; const jsx$2_$_hi$2 = ahi; abs_$_lo$2 = jsx$2_$_lo$2; abs_$_hi$2 = jsx$2_$_hi$2 }; const neg$1 = (bhi < 0); let abs$1_$_lo$2; let abs$1_$_hi$2; if (neg$1) { const lo$2 = ((-blo) | 0); const hi$1 = ((blo !== 0) ? (~bhi) : ((-bhi) | 0)); const jsx$3_$_lo$2 = lo$2; const jsx$3_$_hi$2 = hi$1; abs$1_$_lo$2 = jsx$3_$_lo$2; abs$1_$_hi$2 = jsx$3_$_hi$2 } else { const jsx$4_$_lo$2 = blo; const jsx$4_$_hi$2 = bhi; abs$1_$_lo$2 = jsx$4_$_lo$2; abs$1_$_hi$2 = jsx$4_$_hi$2 }; const absRLo = this.unsigned$und$div__p1__I__I__I__I__I(abs_$_lo$2, abs_$_hi$2, abs$1_$_lo$2, abs$1_$_hi$2); if ((neg === neg$1)) { return absRLo } else { const hi$2 = this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = ((absRLo !== 0) ? (~hi$2) : ((-hi$2) | 0)); return ((-absRLo) | 0) } } }; scala$scalajs$runtime$RuntimeLong$$toDouble__I__I__D(lo, hi) { if ((hi < 0)) { const x = ((lo !== 0) ? (~hi) : ((-hi) | 0)); const x$1 = ((-lo) | 0); return (-((4.294967296E9 * (+(x >>> 0))) + (+(x$1 >>> 0)))) } else { return ((4.294967296E9 * hi) + (+(lo >>> 0))) } }; fromDouble__D__sjsr_RuntimeLong(value) { const lo = this.scala$scalajs$runtime$RuntimeLong$$fromDoubleImpl__D__I(value); return new $c_sjsr_RuntimeLong().init___I__I(lo, this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f) }; scala$scalajs$runtime$RuntimeLong$$fromDoubleImpl__D__I(value) { if ((value < (-9.223372036854776E18))) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = (-2147483648); return 0 } else if ((value >= 9.223372036854776E18)) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 2147483647; return (-1) } else { const rawLo = ((value | 0) | 0); const x = (value / 4.294967296E9); const rawHi = ((x | 0) | 0); this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = (((value < 0) && (rawLo !== 0)) ? (((-1) + rawHi) | 0) : rawHi); return rawLo } }; unsigned$und$div__p1__I__I__I__I__I(alo, ahi, blo, bhi) { if ((((-2097152) & ahi) === 0)) { if ((((-2097152) & bhi) === 0)) { const aDouble = ((4.294967296E9 * ahi) + (+(alo >>> 0))); const bDouble = ((4.294967296E9 * bhi) + (+(blo >>> 0))); const rDouble = (aDouble / bDouble); const x = (rDouble / 4.294967296E9); this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = ((x | 0) | 0); return ((rDouble | 0) | 0) } else { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; return 0 } } else if (((bhi === 0) && ((blo & (((-1) + blo) | 0)) === 0))) { const pow = ((31 - $clz32(blo)) | 0); this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = ((ahi >>> pow) | 0); return (((alo >>> pow) | 0) | ((ahi << 1) << ((31 - pow) | 0))) } else if (((blo === 0) && ((bhi & (((-1) + bhi) | 0)) === 0))) { const pow$2 = ((31 - $clz32(bhi)) | 0); this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; return ((ahi >>> pow$2) | 0) } else { return (this.unsignedDivModHelper__p1__I__I__I__I__I__sjs_js_$bar(alo, ahi, blo, bhi, 0) | 0) } }; divideUnsignedImpl__I__I__I__I__I(alo, ahi, blo, bhi) { if (((blo | bhi) === 0)) { throw new $c_jl_ArithmeticException().init___T("/ by zero") }; if ((ahi === 0)) { if ((bhi === 0)) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; const n = ((+(alo >>> 0)) / (+(blo >>> 0))); return ((n | 0) | 0) } else { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; return 0 } } else { return this.unsigned$und$div__p1__I__I__I__I__I(alo, ahi, blo, bhi) } }; scala$scalajs$runtime$RuntimeLong$$toString__I__I__T(lo, hi) { return ((hi === (lo >> 31)) ? ("" + lo) : ((hi < 0) ? ("-" + this.toUnsignedString__p1__I__I__T(((-lo) | 0), ((lo !== 0) ? (~hi) : ((-hi) | 0)))) : this.toUnsignedString__p1__I__I__T(lo, hi))) }; scala$scalajs$runtime$RuntimeLong$$compare__I__I__I__I__I(alo, ahi, blo, bhi) { return ((ahi === bhi) ? ((alo === blo) ? 0 : ((((-2147483648) ^ alo) < ((-2147483648) ^ blo)) ? (-1) : 1)) : ((ahi < bhi) ? (-1) : 1)) }; unsignedDivModHelper__p1__I__I__I__I__I__sjs_js_$bar(alo, ahi, blo, bhi, ask) { let shift = ((((bhi !== 0) ? $clz32(bhi) : ((32 + $clz32(blo)) | 0)) - ((ahi !== 0) ? $clz32(ahi) : ((32 + $clz32(alo)) | 0))) | 0); const n = shift; const lo = (((32 & n) === 0) ? (blo << n) : 0); const hi = (((32 & n) === 0) ? (((((blo >>> 1) | 0) >>> ((31 - n) | 0)) | 0) | (bhi << n)) : (blo << n)); let bShiftLo = lo; let bShiftHi = hi; let remLo = alo; let remHi = ahi; let quotLo = 0; let quotHi = 0; while (((shift >= 0) && (((-2097152) & remHi) !== 0))) { const alo$1 = remLo; const ahi$1 = remHi; const blo$1 = bShiftLo; const bhi$1 = bShiftHi; if (((ahi$1 === bhi$1) ? (((-2147483648) ^ alo$1) >= ((-2147483648) ^ blo$1)) : (((-2147483648) ^ ahi$1) >= ((-2147483648) ^ bhi$1)))) { const lo$1 = remLo; const hi$1 = remHi; const lo$2 = bShiftLo; const hi$2 = bShiftHi; const lo$3 = ((lo$1 - lo$2) | 0); const hi$3 = ((((-2147483648) ^ lo$3) > ((-2147483648) ^ lo$1)) ? (((-1) + ((hi$1 - hi$2) | 0)) | 0) : ((hi$1 - hi$2) | 0)); remLo = lo$3; remHi = hi$3; if ((shift < 32)) { quotLo = (quotLo | (1 << shift)) } else { quotHi = (quotHi | (1 << shift)) } }; shift = (((-1) + shift) | 0); const lo$4 = bShiftLo; const hi$4 = bShiftHi; const lo$5 = (((lo$4 >>> 1) | 0) | (hi$4 << 31)); const hi$5 = ((hi$4 >>> 1) | 0); bShiftLo = lo$5; bShiftHi = hi$5 }; const alo$2 = remLo; const ahi$2 = remHi; if (((ahi$2 === bhi) ? (((-2147483648) ^ alo$2) >= ((-2147483648) ^ blo)) : (((-2147483648) ^ ahi$2) >= ((-2147483648) ^ bhi)))) { const lo$6 = remLo; const hi$6 = remHi; const remDouble = ((4.294967296E9 * hi$6) + (+(lo$6 >>> 0))); const bDouble = ((4.294967296E9 * bhi) + (+(blo >>> 0))); if ((ask !== 1)) { const x = (remDouble / bDouble); const lo$7 = ((x | 0) | 0); const x$1 = (x / 4.294967296E9); const hi$7 = ((x$1 | 0) | 0); const lo$8 = quotLo; const hi$8 = quotHi; const lo$9 = ((lo$8 + lo$7) | 0); const hi$9 = ((((-2147483648) ^ lo$9) < ((-2147483648) ^ lo$8)) ? ((1 + ((hi$8 + hi$7) | 0)) | 0) : ((hi$8 + hi$7) | 0)); quotLo = lo$9; quotHi = hi$9 }; if ((ask !== 0)) { const rem_mod_bDouble = (remDouble % bDouble); remLo = ((rem_mod_bDouble | 0) | 0); const x$2 = (rem_mod_bDouble / 4.294967296E9); remHi = ((x$2 | 0) | 0) } }; if ((ask === 0)) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = quotHi; const a = quotLo; return a } else if ((ask === 1)) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = remHi; const a$1 = remLo; return a$1 } else { const lo$10 = quotLo; const hi$10 = quotHi; const quot = ((4.294967296E9 * hi$10) + (+(lo$10 >>> 0))); const this$25 = remLo; const remStr = ("" + this$25); const a$2 = ((("" + quot) + "000000000".substring((remStr.length | 0))) + remStr); return a$2 } }; remainderImpl__I__I__I__I__I(alo, ahi, blo, bhi) { if (((blo | bhi) === 0)) { throw new $c_jl_ArithmeticException().init___T("/ by zero") }; if ((ahi === (alo >> 31))) { if ((bhi === (blo >> 31))) { if ((blo !== (-1))) { const lo = ((alo % blo) | 0); this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = (lo >> 31); return lo } else { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; return 0 } } else if (((alo === (-2147483648)) && ((blo === (-2147483648)) && (bhi === 0)))) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; return 0 } else { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = ahi; return alo } } else { const neg = (ahi < 0); let abs_$_lo$2; let abs_$_hi$2; if (neg) { const lo$1 = ((-alo) | 0); const hi = ((alo !== 0) ? (~ahi) : ((-ahi) | 0)); const jsx$1_$_lo$2 = lo$1; const jsx$1_$_hi$2 = hi; abs_$_lo$2 = jsx$1_$_lo$2; abs_$_hi$2 = jsx$1_$_hi$2 } else { const jsx$2_$_lo$2 = alo; const jsx$2_$_hi$2 = ahi; abs_$_lo$2 = jsx$2_$_lo$2; abs_$_hi$2 = jsx$2_$_hi$2 }; const neg$1 = (bhi < 0); let abs$1_$_lo$2; let abs$1_$_hi$2; if (neg$1) { const lo$2 = ((-blo) | 0); const hi$1 = ((blo !== 0) ? (~bhi) : ((-bhi) | 0)); const jsx$3_$_lo$2 = lo$2; const jsx$3_$_hi$2 = hi$1; abs$1_$_lo$2 = jsx$3_$_lo$2; abs$1_$_hi$2 = jsx$3_$_hi$2 } else { const jsx$4_$_lo$2 = blo; const jsx$4_$_hi$2 = bhi; abs$1_$_lo$2 = jsx$4_$_lo$2; abs$1_$_hi$2 = jsx$4_$_hi$2 }; const absRLo = this.unsigned$und$percent__p1__I__I__I__I__I(abs_$_lo$2, abs_$_hi$2, abs$1_$_lo$2, abs$1_$_hi$2); if (neg) { const hi$2 = this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = ((absRLo !== 0) ? (~hi$2) : ((-hi$2) | 0)); return ((-absRLo) | 0) } else { return absRLo } } }; remainderUnsignedImpl__I__I__I__I__I(alo, ahi, blo, bhi) { if (((blo | bhi) === 0)) { throw new $c_jl_ArithmeticException().init___T("/ by zero") }; if ((ahi === 0)) { if ((bhi === 0)) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; const n = ((+(alo >>> 0)) % (+(blo >>> 0))); return ((n | 0) | 0) } else { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = ahi; return alo } } else { return this.unsigned$und$percent__p1__I__I__I__I__I(alo, ahi, blo, bhi) } }; unsigned$und$percent__p1__I__I__I__I__I(alo, ahi, blo, bhi) { if ((((-2097152) & ahi) === 0)) { if ((((-2097152) & bhi) === 0)) { const aDouble = ((4.294967296E9 * ahi) + (+(alo >>> 0))); const bDouble = ((4.294967296E9 * bhi) + (+(blo >>> 0))); const rDouble = (aDouble % bDouble); const x = (rDouble / 4.294967296E9); this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = ((x | 0) | 0); return ((rDouble | 0) | 0) } else { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = ahi; return alo } } else if (((bhi === 0) && ((blo & (((-1) + blo) | 0)) === 0))) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = 0; return (alo & (((-1) + blo) | 0)) } else if (((blo === 0) && ((bhi & (((-1) + bhi) | 0)) === 0))) { this.scala$scalajs$runtime$RuntimeLong$$hiReturn$f = (ahi & (((-1) + bhi) | 0)); return alo } else { return (this.unsignedDivModHelper__p1__I__I__I__I__I__sjs_js_$bar(alo, ahi, blo, bhi, 1) | 0) } }; } const $d_sjsr_RuntimeLong$ = new $TypeData().initClass({ sjsr_RuntimeLong$: 0 }, false, "scala.scalajs.runtime.RuntimeLong$", { sjsr_RuntimeLong$: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sjsr_RuntimeLong$.prototype.$classData = $d_sjsr_RuntimeLong$; let $n_sjsr_RuntimeLong$ = (void 0); const $m_sjsr_RuntimeLong$ = (function() { if ((!$n_sjsr_RuntimeLong$)) { $n_sjsr_RuntimeLong$ = new $c_sjsr_RuntimeLong$().init___() }; return $n_sjsr_RuntimeLong$ }); class $c_sr_AbstractPartialFunction extends $c_O { apply__O__O(x) { return this.applyOrElse__O__F1__O(x, $m_s_PartialFunction$().empty$undpf$1) }; runWith__F1__F1(action) { return $f_s_PartialFunction__runWith__F1__F1(this, action) }; toString__T() { return "" }; } class $c_sr_LazyRef extends $c_O { constructor() { super(); this.$$undinitialized$1 = false; this.$$undvalue$1 = null }; init___() { return this }; toString__T() { return ("LazyRef " + (this.$$undinitialized$1 ? ("of: " + this.$$undvalue$1) : "thunk")) }; initialize__O__O(value) { this.$$undvalue$1 = value; this.$$undinitialized$1 = true; return value }; } const $d_sr_LazyRef = new $TypeData().initClass({ sr_LazyRef: 0 }, false, "scala.runtime.LazyRef", { sr_LazyRef: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sr_LazyRef.prototype.$classData = $d_sr_LazyRef; const $d_sr_Nothing$ = new $TypeData().initClass({ sr_Nothing$: 0 }, false, "scala.runtime.Nothing$", { sr_Nothing$: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); class $c_Lfastparse_parsers_Intrinsics$PrecomputableParser extends $c_Lfastparse_core_Parser { constructor() { super(); this.helper$2 = null; this.uberSet$2 = null; this.precompute0$2 = false; this.predicate0$2 = null }; check__O__Z(e) { return (this.precompute0$2 ? this.uberSet$2.apply__O__Z(e) : (!(!this.predicate0$2.apply__O__O(e)))) }; init___s_util_Either__Lfastparse_utils_ElemSetHelper__Lfastparse_utils_ReprOps(generatorOrPred, helper, repr) { this.helper$2 = helper; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); let jsx$1; if ((generatorOrPred instanceof $c_s_util_Left)) { const x2 = generatorOrPred; const generator = x2.value$2; jsx$1 = $m_Lfastparse_utils_Utils$BitSet$().apply__Lfastparse_utils_Generator__Lfastparse_utils_ElemSetHelper__Lfastparse_utils_Utils$BitSet(generator, helper) } else if ((generatorOrPred instanceof $c_s_util_Right)) { jsx$1 = null } else { throw new $c_s_MatchError().init___O(generatorOrPred) }; this.uberSet$2 = jsx$1; this.precompute0$2 = generatorOrPred.isLeft__Z(); let jsx$2; if ((generatorOrPred instanceof $c_s_util_Left)) { jsx$2 = null } else if ((generatorOrPred instanceof $c_s_util_Right)) { const x3 = generatorOrPred; const pred = x3.value$2; jsx$2 = pred } else { throw new $c_s_MatchError().init___O(generatorOrPred) }; this.predicate0$2 = jsx$2; return this }; } class $c_Lio_kaitai_struct_datatype_DataType$UserType extends $c_Lio_kaitai_struct_datatype_DataType$StructType { constructor() { super(); this.name$3 = null; this.forcedParent$3 = null; this.args$3 = null; this.classSpec$3 = null }; isOpaque__Z() { const cs = this.classSpec$3.get__O(); return (cs.isTopLevel$1 || cs.meta$1.isOpaque$1) }; init___sci_List__s_Option__sc_Seq(name, forcedParent, args) { this.name$3 = name; this.forcedParent$3 = forcedParent; this.args$3 = args; this.classSpec$3 = $m_s_None$(); return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$UserType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$UserType))) }); class $c_Lio_kaitai_struct_languages_JavaCompiler$ extends $c_O { init___() { return this }; kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(attrType) { _kaitaiType2JavaTypePrim: while (true) { let rc74 = false; let x2 = null; let rc75 = false; let x4 = null; let rc76 = false; let x30 = null; const x1 = attrType; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { rc74 = true; x2 = x1; const p3 = x2.signed$3; if ((p3 === false)) { return "int" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { rc75 = true; x4 = x1; const p5 = x4.signed$3; const p6 = x4.width$3; let jsx$1; if ((p5 === false)) { const x$2 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$1 = (x$2 === p6) } else { jsx$1 = false }; if (jsx$1) { return "int" } }; if (rc75) { const p9 = x4.signed$3; const p10 = x4.width$3; let jsx$2; if ((p9 === false)) { const x$4 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$2 = (x$4 === p10) } else { jsx$2 = false }; if (jsx$2) { return "long" } }; if (rc75) { const p13 = x4.signed$3; const p14 = x4.width$3; let jsx$3; if ((p13 === false)) { const x$6 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$3 = (x$6 === p14) } else { jsx$3 = false }; if (jsx$3) { return "long" } }; if (rc74) { const p17 = x2.signed$3; if ((p17 === true)) { return "byte" } }; if (rc75) { const p19 = x4.signed$3; const p20 = x4.width$3; let jsx$4; if ((p19 === true)) { const x$8 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$4 = (x$8 === p20) } else { jsx$4 = false }; if (jsx$4) { return "short" } }; if (rc75) { const p23 = x4.signed$3; const p24 = x4.width$3; let jsx$5; if ((p23 === true)) { const x$10 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$5 = (x$10 === p24) } else { jsx$5 = false }; if (jsx$5) { return "int" } }; if (rc75) { const p27 = x4.signed$3; const p28 = x4.width$3; let jsx$6; if ((p27 === true)) { const x$12 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$6 = (x$12 === p28) } else { jsx$6 = false }; if (jsx$6) { return "long" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) { rc76 = true; x30 = x1; const p31 = x30.width$3; const x$14 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); if ((x$14 === p31)) { return "float" } }; if (rc76) { const p34 = x30.width$3; const x$16 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); if ((x$16 === p34)) { return "double" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { return "long" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { return "boolean" }; const x$18 = $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$(); if ((x$18 === x1)) { return "int" }; const x$20 = $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$(); if ((x$20 === x1)) { return "double" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { return "String" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { return "byte[]" }; const x$22 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); if ((x$22 === x1)) { return "Object" }; const x$24 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); let jsx$7; if ((x$24 === x1)) { jsx$7 = true } else { const x$26 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); jsx$7 = (x$26 === x1) }; if (jsx$7) { return "KaitaiStream" }; const x$28 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); let jsx$8; if ((x$28 === x1)) { jsx$8 = true } else { const x$30 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$8 = (x$30 === x1) }; if (jsx$8) { return "KaitaiStruct" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x71 = x1; return this.types2class__sci_List__T(x71.name$3) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x39 = x1; const name = x39.name$1; return this.types2class__sci_List__T(name) }; if (((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream) || (x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType))) { return this.kaitaiType2JavaTypeBoxed__Lio_kaitai_struct_datatype_DataType__T(attrType) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x72 = x1; attrType = x72.combinedType__Lio_kaitai_struct_datatype_DataType(); continue _kaitaiType2JavaTypePrim }; throw new $c_s_MatchError().init___O(x1) } }; types2class__sci_List__T(names) { const f = (function($this) { return (function(x$2) { const x = x$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(x) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((names === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = names.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = names.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(names, bf); let these = names; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T(".") }; kaitaiType2JavaType__Lio_kaitai_struct_datatype_DataType__Z__T(attrType, isNullable) { return (isNullable ? this.kaitaiType2JavaTypeBoxed__Lio_kaitai_struct_datatype_DataType__T(attrType) : this.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(attrType)) }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_JavaCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; kaitaiType2JavaTypeBoxed__Lio_kaitai_struct_datatype_DataType__T(attrType) { _kaitaiType2JavaTypeBoxed: while (true) { let rc72 = false; let x2 = null; let rc73 = false; let x4 = null; let rc74 = false; let x30 = null; const x1 = attrType; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { rc72 = true; x2 = x1; const p3 = x2.signed$3; if ((p3 === false)) { return "Integer" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { rc73 = true; x4 = x1; const p5 = x4.signed$3; const p6 = x4.width$3; let jsx$1; if ((p5 === false)) { const x$2 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$1 = (x$2 === p6) } else { jsx$1 = false }; if (jsx$1) { return "Integer" } }; if (rc73) { const p9 = x4.signed$3; const p10 = x4.width$3; let jsx$2; if ((p9 === false)) { const x$4 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$2 = (x$4 === p10) } else { jsx$2 = false }; if (jsx$2) { return "Long" } }; if (rc73) { const p13 = x4.signed$3; const p14 = x4.width$3; let jsx$3; if ((p13 === false)) { const x$6 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$3 = (x$6 === p14) } else { jsx$3 = false }; if (jsx$3) { return "Long" } }; if (rc72) { const p17 = x2.signed$3; if ((p17 === true)) { return "Byte" } }; if (rc73) { const p19 = x4.signed$3; const p20 = x4.width$3; let jsx$4; if ((p19 === true)) { const x$8 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$4 = (x$8 === p20) } else { jsx$4 = false }; if (jsx$4) { return "Short" } }; if (rc73) { const p23 = x4.signed$3; const p24 = x4.width$3; let jsx$5; if ((p23 === true)) { const x$10 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$5 = (x$10 === p24) } else { jsx$5 = false }; if (jsx$5) { return "Integer" } }; if (rc73) { const p27 = x4.signed$3; const p28 = x4.width$3; let jsx$6; if ((p27 === true)) { const x$12 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$6 = (x$12 === p28) } else { jsx$6 = false }; if (jsx$6) { return "Long" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) { rc74 = true; x30 = x1; const p31 = x30.width$3; const x$14 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); if ((x$14 === p31)) { return "Float" } }; if (rc74) { const p34 = x30.width$3; const x$16 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); if ((x$16 === p34)) { return "Double" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { return "Long" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { return "Boolean" }; const x$18 = $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$(); if ((x$18 === x1)) { return "Integer" }; const x$20 = $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$(); if ((x$20 === x1)) { return "Double" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { return "String" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { return "byte[]" }; const x$22 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); if ((x$22 === x1)) { return "Object" }; const x$24 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); let jsx$7; if ((x$24 === x1)) { jsx$7 = true } else { const x$26 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); jsx$7 = (x$26 === x1) }; if (jsx$7) { return "KaitaiStream" }; const x$28 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); let jsx$8; if ((x$28 === x1)) { jsx$8 = true } else { const x$30 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$8 = (x$30 === x1) }; if (jsx$8) { return "KaitaiStruct" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x69 = x1; return this.types2class__sci_List__T(x69.name$3) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x39 = x1; const name = x39.name$1; return this.types2class__sci_List__T(name) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream)) { const x41 = x1; const inType = x41.elType$2; return (("ArrayList<" + this.kaitaiType2JavaTypeBoxed__Lio_kaitai_struct_datatype_DataType__T(inType)) + ">") }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType)) { const x42 = x1; const inType$2 = x42.elType$2; return (("ArrayList<" + this.kaitaiType2JavaTypeBoxed__Lio_kaitai_struct_datatype_DataType__T(inType$2)) + ">") }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x70 = x1; attrType = x70.combinedType__Lio_kaitai_struct_datatype_DataType(); continue _kaitaiType2JavaTypeBoxed }; throw new $c_s_MatchError().init___O(x1) } }; } const $d_Lio_kaitai_struct_languages_JavaCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_JavaCompiler$: 0 }, false, "io.kaitai.struct.languages.JavaCompiler$", { Lio_kaitai_struct_languages_JavaCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1 }); $c_Lio_kaitai_struct_languages_JavaCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_JavaCompiler$; let $n_Lio_kaitai_struct_languages_JavaCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_JavaCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_JavaCompiler$)) { $n_Lio_kaitai_struct_languages_JavaCompiler$ = new $c_Lio_kaitai_struct_languages_JavaCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_JavaCompiler$ }); class $c_Lio_kaitai_struct_languages_RubyCompiler$ extends $c_O { init___() { return this }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_RubyCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err) { const x = $m_Lio_kaitai_struct_datatype_EndOfStreamError$(); if ((x === err)) { return "EOFError" } else { return ("Kaitai::Struct::" + err.name__T()) } }; inverseEnumName__T__T(enumName) { return ("I__" + enumName) }; } const $d_Lio_kaitai_struct_languages_RubyCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_RubyCompiler$: 0 }, false, "io.kaitai.struct.languages.RubyCompiler$", { Lio_kaitai_struct_languages_RubyCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1 }); $c_Lio_kaitai_struct_languages_RubyCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_RubyCompiler$; let $n_Lio_kaitai_struct_languages_RubyCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_RubyCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_RubyCompiler$)) { $n_Lio_kaitai_struct_languages_RubyCompiler$ = new $c_Lio_kaitai_struct_languages_RubyCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_RubyCompiler$ }); const $f_Lio_kaitai_struct_languages_components_GoReads__attrUserTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType$UserType__T__Lio_kaitai_struct_format_RepeatSpec__s_Option__V = (function($thiz, id, dataType, io, rep, defEndian) { let newIO; if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { const x2 = dataType; const rawId = new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id); const byteType = x2.bytes$4; const assignType = $m_s_None$(); $f_Lio_kaitai_struct_languages_components_GoReads__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V($thiz, rawId, byteType, io, rep, true, defEndian, assignType); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { /**/ } else { new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(byteType) }; if ($is_Lio_kaitai_struct_languages_components_AllocateAndStoreIO($thiz)) { newIO = $thiz.allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(rawId, rep) } else { if ((!$is_Lio_kaitai_struct_languages_components_AllocateIOLocalVar($thiz))) { throw new $c_s_MatchError().init___O($thiz) }; newIO = $thiz.allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(rawId, rep) } } else { if ((!(dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeInstream))) { throw new $c_s_MatchError().init___O(dataType) }; newIO = io }; const expr = $thiz.translator$2.userType__Lio_kaitai_struct_datatype_DataType$UserType__T__Lio_kaitai_struct_translators_ResultLocalVar(dataType, newIO); $f_Lio_kaitai_struct_languages_components_GoReads__handleAssignment__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, expr, rep, false) }); const $f_Lio_kaitai_struct_languages_components_GoReads__attrBytesTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType$BytesType__T__Lio_kaitai_struct_format_RepeatSpec__Z__V = (function($thiz, id, dataType, io, rep, isRaw) { const x1 = dataType.process__s_Option(); const x = $m_s_None$(); let rawId; if ((x === x1)) { rawId = id } else { if ((!(x1 instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(x1) }; rawId = new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id) }; const id$1 = $thiz.translator$2.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar($thiz.parseExpr__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, io, $m_s_None$())); const expr = $f_Lio_kaitai_struct_languages_components_GoReads__parseExprBytes__Lio_kaitai_struct_translators_ResultLocalVar__Lio_kaitai_struct_datatype_DataType$BytesType__Lio_kaitai_struct_translators_ResultLocalVar($thiz, id$1, dataType); $f_Lio_kaitai_struct_languages_components_GoReads__handleAssignment__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, rawId, expr, rep, isRaw); const this$1 = dataType.process__s_Option(); if ((!this$1.isEmpty__Z())) { const arg1 = this$1.get__O(); const proc = arg1; $thiz.attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, rawId, id, rep) } }); const $f_Lio_kaitai_struct_languages_components_GoReads__bytesPadTermExpr__Lio_kaitai_struct_translators_ResultLocalVar__s_Option__s_Option__Z__T = (function($thiz, id, padRight, terminator, include) { const expr0 = $thiz.translator$2.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(id); let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((("kaitai.BytesStripRight(" + expr0) + ", ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((("kaitai.BytesTerminate(" + expr1) + ", ") + term) + ", ") + include) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }); const $f_Lio_kaitai_struct_languages_components_GoReads__attrSwitchTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__T__Lio_kaitai_struct_format_RepeatSpec__s_Option__Z__Lio_kaitai_struct_datatype_DataType__V = (function($thiz, id, on, cases, io, rep, defEndian, isNullable, assignType) { const normalCaseProc = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, id$1, io$1, rep$1, defEndian$1, assignType$1) { return (function(dataType$2) { const dataType = dataType$2; const assignType$2 = new $c_s_Some().init___O(assignType$1); $f_Lio_kaitai_struct_languages_components_GoReads__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V($this, id$1, dataType, io$1, rep$1, false, defEndian$1, assignType$2) }) })($thiz, id, io, rep, defEndian, assignType)); const f = (function(this$2, id$2, io$2, rep$2, defEndian$2, assignType$3) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { const id$3 = new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id$2); const assignType$4 = new $c_s_Some().init___O(assignType$3); $f_Lio_kaitai_struct_languages_components_GoReads__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this$2, id$3, x0$1, io$2, rep$2, false, defEndian$2, assignType$4) } else { const assignType$5 = new $c_s_Some().init___O(assignType$3); $f_Lio_kaitai_struct_languages_components_GoReads__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this$2, id$2, x0$1, io$2, rep$2, false, defEndian$2, assignType$5) } }) })($thiz, id, io, rep, defEndian, assignType); const onType = $thiz.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(on); const x1 = $thiz.switchShouldUseCompareFn__Lio_kaitai_struct_datatype_DataType__T2(onType); matchEnd9: { if ((x1 !== null)) { const p2 = x1.$$und1__O(); const compareFnCallback = x1.$$und2__O(); if ((p2 instanceof $c_s_Some)) { const x3 = p2; const compareFn = x3.value$2; if ((compareFn !== null)) { $thiz.switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, new $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool().init___Z(true)); cases.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$1, compareFnCallback$1, compareFn$1, on$1, normalCaseProc$1) { return (function(x0$1$2$1) { const x0$1$1 = x0$1$2$1; if ((x0$1$1 !== null)) { const condition = x0$1$1.$$und1__O(); const result = x0$1$1.$$und2__O(); const x = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; if (((x === null) ? (condition === null) : x.equals__O__Z(condition))) { /**/ } else { compareFnCallback$1.apply__O(); $this$1.switchCaseStartCompareFn__T__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(compareFn$1, on$1, condition); normalCaseProc$1.apply__O__O(result); $this$1.out$2.dec__V() } } else { throw new $c_s_MatchError().init___O(x0$1$1) } }) })($thiz, compareFnCallback, compareFn, on, normalCaseProc))); const this$1 = cases.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); if ((!this$1.isEmpty__Z())) { const arg1 = this$1.get__O(); $thiz.switchElseStart__V(); f(arg1); $thiz.out$2.dec__V() }; $thiz.out$2.puts__T__V("}"); break matchEnd9 } } }; if ((x1 !== null)) { const p4 = x1.$$und1__O(); const x$1 = $m_s_None$(); if ((x$1 === p4)) { const someNormalCases = (cases.filter__F1__O(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$2) { return (function(x0$1$2$2) { const x0$1$3 = x0$1$2$2; if ((x0$1$3 !== null)) { const caseExpr = x0$1$3.$$und1__O(); const x$2 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; return (!((caseExpr === null) ? (x$2 === null) : caseExpr.equals__O__Z(x$2))) } else { throw new $c_s_MatchError().init___O(x0$1$3) } }) })($thiz))).size__I() > 0); if (someNormalCases) { $thiz.switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on); const first = new $c_sr_BooleanRef().init___Z(true); cases.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, first$1, normalCaseProc$2) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const condition$1 = x0$2.$$und1__O(); const result$1 = x0$2.$$und2__O(); const x$4 = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; if (((x$4 === null) ? (condition$1 === null) : x$4.equals__O__Z(condition$1))) { /**/ } else { if (first$1.elem$1) { this$2$1.switchCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition$1); first$1.elem$1 = false } else { this$2$1.switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition$1) }; normalCaseProc$2.apply__O__O(result$1); this$2$1.switchCaseEnd__V() } } else { throw new $c_s_MatchError().init___O(x0$2) } }) })($thiz, first, normalCaseProc))); const this$4 = cases.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); if ((!this$4.isEmpty__Z())) { const arg1$1 = this$4.get__O(); $thiz.switchElseStart__V(); f(arg1$1); $thiz.out$2.dec__V() }; $thiz.out$2.puts__T__V("}") } else { const this$5 = cases.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); if ((!this$5.isEmpty__Z())) { const arg1$2 = this$5.get__O(); f(arg1$2) } }; break matchEnd9 } }; throw new $c_s_MatchError().init___O(x1) } }); const $f_Lio_kaitai_struct_languages_components_GoReads__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V = (function($thiz, id, dataType, io, rep, isRaw, defEndian, assignType) { if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2 = dataType; $f_Lio_kaitai_struct_languages_components_GoReads__attrUserTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType$UserType__T__Lio_kaitai_struct_format_RepeatSpec__s_Option__V($thiz, id, x2, io, rep, defEndian) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { const x3 = dataType; $f_Lio_kaitai_struct_languages_components_GoReads__attrBytesTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType$BytesType__T__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, x3, io, rep, isRaw) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x4 = dataType; const on = x4.on$2; const cases = x4.cases$2; const isNullable = x4.isNullableSwitchRaw__Z(); const assignType$1 = x4.combinedType__Lio_kaitai_struct_datatype_DataType(); $f_Lio_kaitai_struct_languages_components_GoReads__attrSwitchTypeParse__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__T__Lio_kaitai_struct_format_RepeatSpec__s_Option__Z__Lio_kaitai_struct_datatype_DataType__V($thiz, id, on, cases, io, rep, defEndian, isNullable, assignType$1) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType)) { const x5 = dataType; const id$1 = $thiz.translator$2.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar($thiz.parseExpr__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(x5.bytes$2, io, defEndian)); const dataType$1 = x5.bytes$2; const r1 = $f_Lio_kaitai_struct_languages_components_GoReads__parseExprBytes__Lio_kaitai_struct_translators_ResultLocalVar__Lio_kaitai_struct_datatype_DataType$BytesType__Lio_kaitai_struct_translators_ResultLocalVar($thiz, id$1, dataType$1); const expr = $thiz.translator$2.bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult($thiz.translator$2.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(r1), new $c_Lio_kaitai_struct_exprlang_Ast$expr$Str().init___T(x5.encoding$2)); $f_Lio_kaitai_struct_languages_components_GoReads__handleAssignment__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, expr, rep, isRaw) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x6 = dataType; const r1$2 = $thiz.translator$2.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar($thiz.parseExpr__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(x6.basedOn$1, io, defEndian)); const enumSpec = x6.enumSpec$1.get__O(); const expr$2 = $thiz.translator$2.trEnumById__sci_List__T__Lio_kaitai_struct_translators_ResultString(enumSpec.name$1, $thiz.translator$2.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(r1$2)); $f_Lio_kaitai_struct_languages_components_GoReads__handleAssignment__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, expr$2, rep, isRaw) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const expr$3 = $thiz.parseExpr__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, io, defEndian); const r1$3 = $thiz.translator$2.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar(expr$3); const r2 = new $c_Lio_kaitai_struct_translators_ResultString().init___T(($thiz.translator$2.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(r1$3) + " != 0")); $f_Lio_kaitai_struct_languages_components_GoReads__handleAssignment__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, r2, rep, isRaw) } else { const expr$4 = $thiz.parseExpr__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, io, defEndian); const r = $thiz.translator$2.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar(expr$4); $f_Lio_kaitai_struct_languages_components_GoReads__handleAssignment__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_format_RepeatSpec__Z__V($thiz, id, r, rep, isRaw) } }); const $f_Lio_kaitai_struct_languages_components_GoReads__parseExprBytes__Lio_kaitai_struct_translators_ResultLocalVar__Lio_kaitai_struct_datatype_DataType$BytesType__Lio_kaitai_struct_translators_ResultLocalVar = (function($thiz, id, dataType) { if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const padRight = x2.padRight$2; return $thiz.translator$2.outTransform__Lio_kaitai_struct_translators_ResultLocalVar__T__Lio_kaitai_struct_translators_ResultLocalVar(id, $f_Lio_kaitai_struct_languages_components_GoReads__bytesPadTermExpr__Lio_kaitai_struct_translators_ResultLocalVar__s_Option__s_Option__Z__T($thiz, id, padRight, terminator, include)) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x4 = dataType; const terminator$2 = x4.terminator$2; const include$2 = x4.include$2; const padRight$2 = x4.padRight$2; return $thiz.translator$2.outTransform__Lio_kaitai_struct_translators_ResultLocalVar__T__Lio_kaitai_struct_translators_ResultLocalVar(id, $f_Lio_kaitai_struct_languages_components_GoReads__bytesPadTermExpr__Lio_kaitai_struct_translators_ResultLocalVar__s_Option__s_Option__Z__T($thiz, id, padRight$2, terminator$2, include$2)) } else { return id } }); const $f_Lio_kaitai_struct_languages_components_GoReads__handleAssignment__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_format_RepeatSpec__Z__V = (function($thiz, id, expr, rep, isRaw) { const x = $m_Lio_kaitai_struct_format_RepeatEos$(); if ((x === rep)) { $thiz.handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__V(id, expr) } else if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { $thiz.handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__V(id, expr) } else if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil)) { $thiz.handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Z__V(id, expr, isRaw) } else { const x$3 = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x$3 === rep)) { $thiz.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__V(id, expr) } else { throw new $c_s_MatchError().init___O(rep) } } }); class $c_Lio_kaitai_struct_translators_ExpressionValidator extends $c_Lio_kaitai_struct_translators_TypeDetector { constructor() { super(); this.provider$2 = null }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(value) }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(s, from, to) }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(b) }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(b) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(s) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(value) }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(b) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(a) }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(value) }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(value, num) }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(s, base) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(s); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(base) }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(value) }; init___Lio_kaitai_struct_translators_TypeProvider(provider) { this.provider$2 = provider; $c_Lio_kaitai_struct_translators_TypeDetector.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); return this }; bytesToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(value, expr) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(value); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) }; kaitaiStructField__Lio_kaitai_struct_exprlang_Ast$expr__T__O(value, name) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(value) }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(b) }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(s, base) }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(value) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(a) }; byteSizeOfValue__T__Lio_kaitai_struct_datatype_DataType__O(attrName, valType) { $m_Lio_kaitai_struct_translators_CommonSizeOf$().getBitsSizeOfType__T__Lio_kaitai_struct_datatype_DataType__I(attrName, valType) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(s) }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(value, num) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(value); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(num) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(b) }; validate__Lio_kaitai_struct_exprlang_Ast$expr__V(v) { matchEnd36: { if (((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum) || ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum) || ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Str) || (v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool))))) { break matchEnd36 }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById)) { const x2 = v; const enumType = x2.enumName$1; const id = x2.id$1; const inType = x2.inType$1; this.provider$2.resolveEnum__Lio_kaitai_struct_exprlang_Ast$typeId__T__Lio_kaitai_struct_format_EnumSpec(inType, enumType.name$1); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(id); break matchEnd36 }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel)) { const x3 = v; const enumType$2 = x3.enumName$1; const inType$2 = x3.inType$1; this.provider$2.resolveEnum__Lio_kaitai_struct_exprlang_Ast$typeId__T__Lio_kaitai_struct_format_EnumSpec(inType$2, enumType$2.name$1); break matchEnd36 }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Name)) { const x4 = v; const name = x4.id$1; if ((name !== null)) { if ((name.name$1 === $m_Lio_kaitai_struct_format_Identifier$().SIZEOF$1)) { $m_Lio_kaitai_struct_translators_CommonSizeOf$().getByteSizeOfClassSpec__Lio_kaitai_struct_format_ClassSpec__I(this.provider$2.nowClass$1); (void 0) } else { (void 0) }; break matchEnd36 } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp)) { const x5 = v; const op = x5.op$1; const inner = x5.operand$1; if (((op !== null) && (inner !== null))) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(inner); break matchEnd36 } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare)) { const x6 = v; const left = x6.left$1; const op$2 = x6.ops$1; const right = x6.right$1; if ((left !== null)) { if (((op$2 !== null) && (right !== null))) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(left); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(right); break matchEnd36 } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BinOp)) { const x7 = v; const left$2 = x7.left$1; const op$3 = x7.op$1; const right$2 = x7.right$1; if ((left$2 !== null)) { if (((op$3 !== null) && (right$2 !== null))) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(left$2); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(right$2); break matchEnd36 } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp)) { const x8 = v; const op$4 = x8.op$1; const values = x8.values$1; if (((op$4 !== null) && (values !== null))) { values.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2$2) { const v$2 = v$2$2; $this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(v$2) }) })(this))); break matchEnd36 } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IfExp)) { const x9 = v; const condition = x9.condition$1; const ifTrue = x9.ifTrue$1; const ifFalse = x9.ifFalse$1; this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(condition); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(ifTrue); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(ifFalse); break matchEnd36 }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Subscript)) { const x10 = v; const container = x10.value$1; const idx = x10.idx$1; if ((container !== null)) { if ((idx !== null)) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(container); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(idx); break matchEnd36 } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute)) { const x31 = v; $f_Lio_kaitai_struct_translators_CommonMethods__translateAttribute__Lio_kaitai_struct_exprlang_Ast$expr$Attribute__O(this, x31); break matchEnd36 }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Call)) { const x32 = v; $f_Lio_kaitai_struct_translators_CommonMethods__translateCall__Lio_kaitai_struct_exprlang_Ast$expr$Call__O(this, x32); break matchEnd36 }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$List)) { const x11 = v; const values$2 = x11.elts$1; if ((values$2 !== null)) { values$2.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2) { return (function(v$3$2) { const v$3 = v$3$2; this$2.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(v$3) }) })(this))); break matchEnd36 } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$CastToType)) { const x34 = v; this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(x34.value$1); this.detectCastType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(x34.typeName$1); break matchEnd36 }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType)) { const x12 = v; const typeName = x12.typeName$1; $m_Lio_kaitai_struct_translators_CommonSizeOf$().getBitsSizeOfType__T__Lio_kaitai_struct_datatype_DataType__I(typeName.nameAsStr__T(), this.detectCastType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName)); break matchEnd36 }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType)) { const x13 = v; const typeName$2 = x13.typeName$1; $m_Lio_kaitai_struct_translators_CommonSizeOf$().getBitsSizeOfType__T__Lio_kaitai_struct_datatype_DataType__I(typeName$2.nameAsStr__T(), this.detectCastType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName$2)); break matchEnd36 }; throw new $c_s_MatchError().init___O(v) } }; kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(value) }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(s, from, to) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(s); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(from); this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(to) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(a) }; bytesToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, expr) { this.bytesToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(value, expr) }; userTypeField__Lio_kaitai_struct_datatype_DataType$UserType__Lio_kaitai_struct_exprlang_Ast$expr__T__O(ut, value, name) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(value) }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { this.validate__Lio_kaitai_struct_exprlang_Ast$expr__V(a) }; } const $d_Lio_kaitai_struct_translators_ExpressionValidator = new $TypeData().initClass({ Lio_kaitai_struct_translators_ExpressionValidator: 0 }, false, "io.kaitai.struct.translators.ExpressionValidator", { Lio_kaitai_struct_translators_ExpressionValidator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_ExpressionValidator.prototype.$classData = $d_Lio_kaitai_struct_translators_ExpressionValidator; class $c_Ljava_io_IOException extends $c_jl_Exception { } const $isArrayOf_Ljava_io_IOException = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_io_IOException))) }); class $c_Ljava_io_OutputStream extends $c_O { close__V() { /**/ }; } class $c_Ljava_math_BigDecimal extends $c_jl_Number { constructor() { super(); this.$$undtoStringImage$2 = null; this.$$undhashCode$2 = 0; this.$$undintVal$2 = null; this.java$math$BigDecimal$$$undbitLength$2 = 0; this.java$math$BigDecimal$$$undsmallValue$2 = $m_sjsr_RuntimeLong$().Zero__sjsr_RuntimeLong(); this.java$math$BigDecimal$$$undscale$2 = 0; this.$$undprecision$2 = 0 }; longValue__J() { return (((this.java$math$BigDecimal$$$undscale$2 <= (-64)) || (this.java$math$BigDecimal$$$undscale$2 > this.approxPrecision__p2__I())) ? $m_sjsr_RuntimeLong$().Zero__sjsr_RuntimeLong() : this.toBigInteger__Ljava_math_BigInteger().longValue__J()) }; init___() { this.$$undtoStringImage$2 = null; this.$$undhashCode$2 = 0; this.java$math$BigDecimal$$$undbitLength$2 = 0; this.java$math$BigDecimal$$$undsmallValue$2 = $m_sjsr_RuntimeLong$().Zero__sjsr_RuntimeLong(); this.java$math$BigDecimal$$$undscale$2 = 0; this.$$undprecision$2 = 0; return this }; valueExact__p2__I__J(bitLengthOfType) { const value = this.java$math$BigDecimal$$$undscale$2; const hi = (value >> 31); const lo = ((-value) | 0); const hi$1 = ((value !== 0) ? (~hi) : ((-hi) | 0)); const value$1 = this.approxPrecision__p2__I(); const hi$2 = (value$1 >> 31); const lo$1 = ((lo + value$1) | 0); const hi$3 = ((((-2147483648) ^ lo$1) < ((-2147483648) ^ lo)) ? ((1 + ((hi$1 + hi$2) | 0)) | 0) : ((hi$1 + hi$2) | 0)); if (((hi$3 === 0) ? (((-2147483648) ^ lo$1) > (-2147483629)) : (hi$3 > 0))) { throw new $c_jl_ArithmeticException().init___T("Rounding necessary") }; const bigInteger = this.toBigIntegerExact__Ljava_math_BigInteger(); if (($m_Ljava_math_BitLevel$().bitLength__Ljava_math_BigInteger__I(bigInteger) < bitLengthOfType)) { return bigInteger.longValue__J() } else { throw new $c_jl_ArithmeticException().init___T("Rounding necessary") } }; equals__O__Z(x) { if ((x instanceof $c_Ljava_math_BigDecimal)) { const x2 = x; if ((x2.java$math$BigDecimal$$$undscale$2 === this.java$math$BigDecimal$$$undscale$2)) { if ((this.java$math$BigDecimal$$$undbitLength$2 < 64)) { const t = x2.java$math$BigDecimal$$$undsmallValue$2; const lo = t.lo$2; const hi = t.hi$2; const b = this.java$math$BigDecimal$$$undsmallValue$2; return ((lo === b.lo$2) && (hi === b.hi$2)) } else { return $m_sr_BoxesRunTime$().equalsNumNum__jl_Number__jl_Number__Z(this.$$undintVal$2, x2.$$undintVal$2) } } else { return false } } else { return false } }; intValueExact__I() { const t = this.valueExact__p2__I__J(32); const lo = t.lo$2; return lo }; isZero__p2__Z() { if ((this.java$math$BigDecimal$$$undbitLength$2 === 0)) { const t = this.java$math$BigDecimal$$$undsmallValue$2; const lo = t.lo$2; const hi = t.hi$2; return (!((lo === (-1)) && (hi === (-1)))) } else { return false } }; stripTrailingZeros__Ljava_math_BigDecimal() { if (this.isZero__p2__Z()) { return this } else { const lastPow = (((-1) + $m_Ljava_math_Multiplication$().BigTenPows$1.u.length) | 0); let i = 1; let strippedBI = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); const value = this.java$math$BigDecimal$$$undscale$2; const hi = (value >> 31); let scale_$_lo$2 = value; let scale_$_hi$2 = hi; let x1_$_$$und1$f; let x1_$_$$und2$f; _loop: while (true) { if ((!strippedBI.testBit__I__Z(0))) { const qr = strippedBI.divideAndRemainderImpl__Ljava_math_BigInteger__Ljava_math_BigInteger$QuotAndRem($m_Ljava_math_Multiplication$().BigTenPows$1.u[i]); const this$1 = qr.rem$1; if ((this$1.sign$2 === 0)) { const temp$i = ((i < lastPow) ? ((1 + i) | 0) : i); const temp$strippedBI = qr.quot$1; const this$2_$_lo$2 = scale_$_lo$2; const this$2_$_hi$2 = scale_$_hi$2; const value$1 = i; const hi$1 = (value$1 >> 31); const alo = this$2_$_lo$2; const ahi = this$2_$_hi$2; const lo = ((alo - value$1) | 0); const hi$2 = ((((-2147483648) ^ lo) > ((-2147483648) ^ alo)) ? (((-1) + ((ahi - hi$1) | 0)) | 0) : ((ahi - hi$1) | 0)); i = temp$i; strippedBI = temp$strippedBI; const jsx$1_$_lo$2 = lo; const jsx$1_$_hi$2 = hi$2; scale_$_lo$2 = jsx$1_$_lo$2; scale_$_hi$2 = jsx$1_$_hi$2; continue _loop }; if ((i !== 1)) { i = 1; continue _loop }; const _1 = strippedBI; const _2_$_lo$2 = scale_$_lo$2; const _2_$_hi$2 = scale_$_hi$2; const jsx$2_$_$$und1$f = _1; const jsx$2_$_$$und2$f = new $c_sjsr_RuntimeLong().init___I__I(_2_$_lo$2, _2_$_hi$2); x1_$_$$und1$f = jsx$2_$_$$und1$f; x1_$_$$und2$f = jsx$2_$_$$und2$f; break } else { const _1$1 = strippedBI; const _2$1_$_lo$2 = scale_$_lo$2; const _2$1_$_hi$2 = scale_$_hi$2; const jsx$3_$_$$und1$f = _1$1; const jsx$3_$_$$und2$f = new $c_sjsr_RuntimeLong().init___I__I(_2$1_$_lo$2, _2$1_$_hi$2); x1_$_$$und1$f = jsx$3_$_$$und1$f; x1_$_$$und2$f = jsx$3_$_$$und2$f; break } }; const strippedBI$1 = x1_$_$$und1$f; const t = $uJ(x1_$_$$und2$f); const lo$1 = t.lo$2; const hi$3 = t.hi$2; const t$1 = $uJ(new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$3)); const lo$2 = t$1.lo$2; const hi$4 = t$1.hi$2; return new $c_Ljava_math_BigDecimal().init___Ljava_math_BigInteger__I(strippedBI$1, $m_Ljava_math_BigDecimal$().java$math$BigDecimal$$safeLongToInt__J__I(new $c_sjsr_RuntimeLong().init___I__I(lo$2, hi$4))) } }; inplaceRound__p2__Ljava_math_MathContext__V(mc) { const mcPrecision = mc.precision$1; const discardedPrecision = ((this.precision__I() - mcPrecision) | 0); const mcPrecGood = ((this.approxPrecision__p2__I() < mcPrecision) || (mcPrecision === 0)); if ((!(mcPrecGood || (discardedPrecision <= 0)))) { if ((this.java$math$BigDecimal$$$undbitLength$2 < 64)) { this.smallRound__p2__Ljava_math_MathContext__I__V(mc, discardedPrecision) } else { const jsx$1 = $m_Ljava_math_Multiplication$(); const hi = (discardedPrecision >> 31); const sizeOfFraction = jsx$1.powerOf10__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(discardedPrecision, hi)); const integerAndFraction = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger().divideAndRemainder__Ljava_math_BigInteger__ALjava_math_BigInteger(sizeOfFraction); const value = this.java$math$BigDecimal$$$undscale$2; const hi$1 = (value >> 31); const hi$2 = (discardedPrecision >> 31); const lo = ((value - discardedPrecision) | 0); const hi$3 = ((((-2147483648) ^ lo) > ((-2147483648) ^ value)) ? (((-1) + ((hi$1 - hi$2) | 0)) | 0) : ((hi$1 - hi$2) | 0)); const this$2 = integerAndFraction.u[1]; let newScale_$_lo$2; let newScale_$_hi$2; if ((this$2.sign$2 !== 0)) { const absBi = integerAndFraction.u[1].abs__Ljava_math_BigInteger(); const compRem = absBi.shiftLeftOneBit__Ljava_math_BigInteger().compareTo__Ljava_math_BigInteger__I(sizeOfFraction); const parityBit = (integerAndFraction.u[0].testBit__I__Z(0) ? 1 : 0); const this$3 = integerAndFraction.u[1]; const frac = $imul(this$3.sign$2, ((5 + compRem) | 0)); const carry = $m_Ljava_math_BigDecimal$().java$math$BigDecimal$$roundingBehavior__I__I__Ljava_math_RoundingMode__I(parityBit, frac, mc.roundingMode$1); if ((carry !== 0)) { const jsx$2 = $m_Ljava_math_BigInteger$(); const hi$4 = (carry >> 31); const bi = jsx$2.valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(carry, hi$4)); const this$4 = integerAndFraction.u[0]; integerAndFraction.u[0] = $m_Ljava_math_Elementary$().add__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$4, bi) }; const tempBD = new $c_Ljava_math_BigDecimal().init___Ljava_math_BigInteger(integerAndFraction.u[0]); if ((tempBD.precision__I() > mcPrecision)) { integerAndFraction.u[0] = integerAndFraction.u[0].divide__Ljava_math_BigInteger__Ljava_math_BigInteger($m_Ljava_math_BigInteger$().TEN$1); const lo$1 = (((-1) + lo) | 0); const hi$5 = ((lo$1 !== (-1)) ? hi$3 : (((-1) + hi$3) | 0)); const jsx$3_$_lo$2 = lo$1; const jsx$3_$_hi$2 = hi$5; newScale_$_lo$2 = jsx$3_$_lo$2; newScale_$_hi$2 = jsx$3_$_hi$2 } else { const jsx$4_$_lo$2 = lo; const jsx$4_$_hi$2 = hi$3; newScale_$_lo$2 = jsx$4_$_lo$2; newScale_$_hi$2 = jsx$4_$_hi$2 } } else { const jsx$5_$_lo$2 = lo; const jsx$5_$_hi$2 = hi$3; newScale_$_lo$2 = jsx$5_$_lo$2; newScale_$_hi$2 = jsx$5_$_hi$2 }; this.java$math$BigDecimal$$$undscale$2 = $m_Ljava_math_BigDecimal$().java$math$BigDecimal$$safeLongToInt__J__I(new $c_sjsr_RuntimeLong().init___I__I(newScale_$_lo$2, newScale_$_hi$2)); this.$$undprecision$2 = mcPrecision; this.setUnscaledValue__p2__Ljava_math_BigInteger__V(integerAndFraction.u[0]) } } }; init___Ljava_math_BigInteger__I(unscaledVal, scale) { $c_Ljava_math_BigDecimal.prototype.init___.call(this); if ((unscaledVal === null)) { throw new $c_jl_NullPointerException().init___T("unscaledVal == null") }; this.java$math$BigDecimal$$$undscale$2 = scale; this.setUnscaledValue__p2__Ljava_math_BigInteger__V(unscaledVal); return this }; toString__T() { if ((this.$$undtoStringImage$2 !== null)) { return this.$$undtoStringImage$2 } else if ((this.java$math$BigDecimal$$$undbitLength$2 < 32)) { this.$$undtoStringImage$2 = $m_Ljava_math_Conversion$().toDecimalScaledString__J__I__T(this.java$math$BigDecimal$$$undsmallValue$2, this.java$math$BigDecimal$$$undscale$2); return this.$$undtoStringImage$2 } else { const this$1 = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); const intString = $m_Ljava_math_Conversion$().toDecimalScaledString__Ljava_math_BigInteger__T(this$1); if ((this.java$math$BigDecimal$$$undscale$2 === 0)) { return intString } else { const this$2 = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); let begin; if ((this$2.sign$2 < 0)) { begin = 2 } else { begin = 1 }; const end = (intString.length | 0); const value = this.java$math$BigDecimal$$$undscale$2; const hi = (value >> 31); const lo = ((-value) | 0); const hi$1 = ((value !== 0) ? (~hi) : ((-hi) | 0)); const hi$2 = (end >> 31); const lo$1 = ((lo + end) | 0); const hi$3 = ((((-2147483648) ^ lo$1) < ((-2147483648) ^ lo)) ? ((1 + ((hi$1 + hi$2) | 0)) | 0) : ((hi$1 + hi$2) | 0)); const hi$4 = (begin >> 31); const lo$2 = ((lo$1 - begin) | 0); const hi$5 = ((((-2147483648) ^ lo$2) > ((-2147483648) ^ lo$1)) ? (((-1) + ((hi$3 - hi$4) | 0)) | 0) : ((hi$3 - hi$4) | 0)); let result; if (((this.java$math$BigDecimal$$$undscale$2 > 0) && ((hi$5 === (-1)) ? (((-2147483648) ^ lo$2) >= 2147483642) : (hi$5 > (-1))))) { if ((hi$5 >= 0)) { $m_Ljava_math_BigDecimal$(); const pos = ((end - this.java$math$BigDecimal$$$undscale$2) | 0); $m_Ljava_math_BigDecimal$(); result = ((intString.substring(0, pos) + ".") + intString.substring(pos)) } else { $m_Ljava_math_BigDecimal$(); $m_Ljava_math_BigDecimal$(); const pos$1 = (((-1) + begin) | 0); $m_Ljava_math_BigDecimal$(); const s = ((intString.substring(0, pos$1) + "0.") + intString.substring(pos$1)); const pos$2 = ((1 + begin) | 0); const s2 = $m_Ljava_math_BigDecimal$().java$math$BigDecimal$$CharZeros$1; const s2Len = (((-1) - lo$2) | 0); $m_Ljava_math_BigDecimal$(); const s2$1 = s2.substring(0, s2Len); result = ((("" + s.substring(0, pos$2)) + s2$1) + s.substring(pos$2)) } } else { const r0 = ((((end - begin) | 0) >= 1) ? ($m_Ljava_math_BigDecimal$(), $m_Ljava_math_BigDecimal$(), ((intString.substring(0, begin) + ".") + intString.substring(begin))) : intString); const r1 = (r0 + "E"); const r2 = (((hi$5 === 0) ? (lo$2 !== 0) : (hi$5 > 0)) ? (r1 + "+") : r1); result = (r2 + $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toString__I__I__T(lo$2, hi$5)) }; this.$$undtoStringImage$2 = result; return this.$$undtoStringImage$2 } } }; signum__I() { if ((this.java$math$BigDecimal$$$undbitLength$2 < 64)) { const t = this.java$math$BigDecimal$$$undsmallValue$2; const hi = t.hi$2; if ((hi < 0)) { return (-1) } else { const t$1 = this.java$math$BigDecimal$$$undsmallValue$2; const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; if (((hi$1 === 0) ? (lo$1 !== 0) : (hi$1 > 0))) { return 1 } else { return 0 } } } else { const this$1 = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); return this$1.sign$2 } }; init___I__I(smallValue, scale) { $c_Ljava_math_BigDecimal.prototype.init___.call(this); const hi = (smallValue >> 31); this.java$math$BigDecimal$$$undsmallValue$2 = new $c_sjsr_RuntimeLong().init___I__I(smallValue, hi); this.java$math$BigDecimal$$$undscale$2 = scale; this.java$math$BigDecimal$$$undbitLength$2 = $m_Ljava_math_BigDecimal$().java$math$BigDecimal$$bitLength__I__I(smallValue); return this }; toBigInteger__Ljava_math_BigInteger() { if (((this.java$math$BigDecimal$$$undscale$2 === 0) || this.isZero__p2__Z())) { return this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger() } else if ((this.java$math$BigDecimal$$$undscale$2 < 0)) { const jsx$2 = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); const jsx$1 = $m_Ljava_math_Multiplication$(); const value = this.java$math$BigDecimal$$$undscale$2; const hi = (value >> 31); const lo = ((-value) | 0); const hi$1 = ((value !== 0) ? (~hi) : ((-hi) | 0)); return jsx$2.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(jsx$1.powerOf10__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(lo, hi$1))) } else { const jsx$4 = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); const jsx$3 = $m_Ljava_math_Multiplication$(); const value$1 = this.java$math$BigDecimal$$$undscale$2; const hi$2 = (value$1 >> 31); return jsx$4.divide__Ljava_math_BigInteger__Ljava_math_BigInteger(jsx$3.powerOf10__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(value$1, hi$2))) } }; init___T__Ljava_math_MathContext(sVal, mc) { $c_Ljava_math_BigDecimal.prototype.init___AC__I__I.call(this, $m_sjsr_RuntimeString$().toCharArray__T__AC(sVal), 0, (sVal.length | 0)); this.inplaceRound__p2__Ljava_math_MathContext__V(mc); return this }; scaleByPowerOfTen__I__Ljava_math_BigDecimal(n) { const value = this.java$math$BigDecimal$$$undscale$2; const hi = (value >> 31); const hi$1 = (n >> 31); const lo = ((value - n) | 0); const hi$2 = ((((-2147483648) ^ lo) > ((-2147483648) ^ value)) ? (((-1) + ((hi - hi$1) | 0)) | 0) : ((hi - hi$1) | 0)); if ((this.java$math$BigDecimal$$$undbitLength$2 < 64)) { const t = this.java$math$BigDecimal$$$undsmallValue$2; const lo$1 = t.lo$2; const hi$3 = t.hi$2; if (((lo$1 === 0) && (hi$3 === 0))) { return $m_Ljava_math_BigDecimal$().java$math$BigDecimal$$zeroScaledBy__J__Ljava_math_BigDecimal(new $c_sjsr_RuntimeLong().init___I__I(lo, hi$2)) } else { return $m_Ljava_math_BigDecimal$().valueOf__J__I__Ljava_math_BigDecimal(this.java$math$BigDecimal$$$undsmallValue$2, $m_Ljava_math_BigDecimal$().java$math$BigDecimal$$safeLongToInt__J__I(new $c_sjsr_RuntimeLong().init___I__I(lo, hi$2))) } } else { return new $c_Ljava_math_BigDecimal().init___Ljava_math_BigInteger__I(this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(), $m_Ljava_math_BigDecimal$().java$math$BigDecimal$$safeLongToInt__J__I(new $c_sjsr_RuntimeLong().init___I__I(lo, hi$2))) } }; precision__I() { if ((this.$$undprecision$2 === 0)) { let jsx$1; if ((this.java$math$BigDecimal$$$undbitLength$2 === 0)) { jsx$1 = 1 } else if ((this.java$math$BigDecimal$$$undbitLength$2 < 64)) { jsx$1 = this.decimalDigitsInLong__p2__J__I(this.java$math$BigDecimal$$$undsmallValue$2) } else { const decimalDigits = ((1 + $doubleToInt((0.3010299956639812 * (((-1) + this.java$math$BigDecimal$$$undbitLength$2) | 0)))) | 0); const jsx$3 = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); const jsx$2 = $m_Ljava_math_Multiplication$(); const hi = (decimalDigits >> 31); const this$1 = jsx$3.divide__Ljava_math_BigInteger__Ljava_math_BigInteger(jsx$2.powerOf10__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(decimalDigits, hi))); if ((this$1.sign$2 !== 0)) { jsx$1 = ((1 + decimalDigits) | 0) } else { jsx$1 = decimalDigits } }; this.$$undprecision$2 = jsx$1 }; return this.$$undprecision$2 }; toBigIntegerExact__Ljava_math_BigInteger() { if (((this.java$math$BigDecimal$$$undscale$2 === 0) || this.isZero__p2__Z())) { return this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger() } else if ((this.java$math$BigDecimal$$$undscale$2 < 0)) { const jsx$2 = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); const jsx$1 = $m_Ljava_math_Multiplication$(); const value = this.java$math$BigDecimal$$$undscale$2; const hi = (value >> 31); const lo = ((-value) | 0); const hi$1 = ((value !== 0) ? (~hi) : ((-hi) | 0)); return jsx$2.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(jsx$1.powerOf10__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(lo, hi$1))) } else { if (((this.java$math$BigDecimal$$$undscale$2 > this.approxPrecision__p2__I()) || (this.java$math$BigDecimal$$$undscale$2 > this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger().getLowestSetBit__I()))) { throw new $c_jl_ArithmeticException().init___T("Rounding necessary") }; const jsx$4 = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); const jsx$3 = $m_Ljava_math_Multiplication$(); const value$1 = this.java$math$BigDecimal$$$undscale$2; const hi$2 = (value$1 >> 31); const integerAndFraction = jsx$4.divideAndRemainder__Ljava_math_BigInteger__ALjava_math_BigInteger(jsx$3.powerOf10__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(value$1, hi$2))); const this$3 = integerAndFraction.u[1]; if ((this$3.sign$2 !== 0)) { throw new $c_jl_ArithmeticException().init___T("Rounding necessary") }; return integerAndFraction.u[0] } }; shortValueExact__S() { const t = this.valueExact__p2__I__J(16); const lo = t.lo$2; return ((lo << 16) >> 16) }; setUnscaledValue__p2__Ljava_math_BigInteger__V(unscaledVal) { this.$$undintVal$2 = unscaledVal; this.java$math$BigDecimal$$$undbitLength$2 = $m_Ljava_math_BitLevel$().bitLength__Ljava_math_BigInteger__I(unscaledVal); if ((this.java$math$BigDecimal$$$undbitLength$2 < 64)) { this.java$math$BigDecimal$$$undsmallValue$2 = unscaledVal.longValue__J() } }; byteValueExact__B() { const t = this.valueExact__p2__I__J(8); const lo = t.lo$2; return ((lo << 24) >> 24) }; smallRound__p2__Ljava_math_MathContext__I__V(mc, discardedPrecision) { const t = $m_Ljava_math_BigDecimal$().LongTenPows$1.u[discardedPrecision]; const lo = t.lo$2; const hi = t.hi$2; const value = this.java$math$BigDecimal$$$undscale$2; const hi$1 = (value >> 31); const hi$2 = (discardedPrecision >> 31); const lo$1 = ((value - discardedPrecision) | 0); const hi$3 = ((((-2147483648) ^ lo$1) > ((-2147483648) ^ value)) ? (((-1) + ((hi$1 - hi$2) | 0)) | 0) : ((hi$1 - hi$2) | 0)); const t$1 = this.java$math$BigDecimal$$$undsmallValue$2; const lo$2 = t$1.lo$2; const hi$4 = t$1.hi$2; const this$2 = $m_sjsr_RuntimeLong$(); const lo$3 = this$2.divideImpl__I__I__I__I__I(lo$2, hi$4, lo, hi); const hi$5 = this$2.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const this$3 = $m_sjsr_RuntimeLong$(); const lo$4 = this$3.remainderImpl__I__I__I__I__I(lo$2, hi$4, lo, hi); const hi$6 = this$3.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; let x1_$_$$und1$f; let x1_$_$$und2$f; let x1_$_$$und1$mcJ$sp$f; let x1_$_$$und2$mcJ$sp$f; if ((!((lo$4 === 0) && (hi$6 === 0)))) { const jsx$3 = $m_Ljava_math_BigDecimal$(); let this$7_$_lo$2; let this$7_$_hi$2; if ((hi$6 < 0)) { const lo$5 = ((-lo$4) | 0); const hi$7 = ((lo$4 !== 0) ? (~hi$6) : ((-hi$6) | 0)); const jsx$1_$_lo$2 = lo$5; const jsx$1_$_hi$2 = hi$7; this$7_$_lo$2 = jsx$1_$_lo$2; this$7_$_hi$2 = jsx$1_$_hi$2 } else { const jsx$2_$_lo$2 = lo$4; const jsx$2_$_hi$2 = hi$6; this$7_$_lo$2 = jsx$2_$_lo$2; this$7_$_hi$2 = jsx$2_$_hi$2 }; const lo$6 = (this$7_$_lo$2 << 1); const hi$8 = (((this$7_$_lo$2 >>> 31) | 0) | (this$7_$_hi$2 << 1)); const compRem = jsx$3.java$math$BigDecimal$$longCompareTo__J__J__I(new $c_sjsr_RuntimeLong().init___I__I(lo$6, hi$8), new $c_sjsr_RuntimeLong().init___I__I(lo, hi)); const frac = $imul(((hi$6 < 0) ? (-1) : (((hi$6 === 0) && (lo$4 === 0)) ? 0 : 1)), ((5 + compRem) | 0)); const value$1 = $m_Ljava_math_BigDecimal$().java$math$BigDecimal$$roundingBehavior__I__I__Ljava_math_RoundingMode__I((1 & lo$3), frac, mc.roundingMode$1); const hi$9 = (value$1 >> 31); const lo$7 = ((lo$3 + value$1) | 0); const hi$10 = ((((-2147483648) ^ lo$7) < ((-2147483648) ^ lo$3)) ? ((1 + ((hi$5 + hi$9) | 0)) | 0) : ((hi$5 + hi$9) | 0)); let this$13_$_lo$2; let this$13_$_hi$2; if ((hi$10 < 0)) { const lo$8 = ((-lo$7) | 0); const hi$11 = ((lo$7 !== 0) ? (~hi$10) : ((-hi$10) | 0)); const jsx$4_$_lo$2 = lo$8; const jsx$4_$_hi$2 = hi$11; this$13_$_lo$2 = jsx$4_$_lo$2; this$13_$_hi$2 = jsx$4_$_hi$2 } else { const jsx$5_$_lo$2 = lo$7; const jsx$5_$_hi$2 = hi$10; this$13_$_lo$2 = jsx$5_$_lo$2; this$13_$_hi$2 = jsx$5_$_hi$2 }; const a = $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toDouble__I__I__D(this$13_$_lo$2, this$13_$_hi$2); if (((+$g.Math.log10(a)) >= mc.precision$1)) { const lo$9 = (((-1) + lo$1) | 0); const hi$12 = ((lo$9 !== (-1)) ? hi$3 : (((-1) + hi$3) | 0)); const this$17 = $m_sjsr_RuntimeLong$(); const lo$10 = this$17.divideImpl__I__I__I__I__I(lo$7, hi$10, 10, 0); const hi$13 = this$17.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const jsx$6_$_$$und1$f = null; const jsx$6_$_$$und2$f = null; const jsx$6_$_$$und1$mcJ$sp$f = new $c_sjsr_RuntimeLong().init___I__I(lo$9, hi$12); const jsx$6_$_$$und2$mcJ$sp$f = new $c_sjsr_RuntimeLong().init___I__I(lo$10, hi$13); x1_$_$$und1$f = jsx$6_$_$$und1$f; x1_$_$$und2$f = jsx$6_$_$$und2$f; x1_$_$$und1$mcJ$sp$f = jsx$6_$_$$und1$mcJ$sp$f; x1_$_$$und2$mcJ$sp$f = jsx$6_$_$$und2$mcJ$sp$f } else { const jsx$7_$_$$und1$f = null; const jsx$7_$_$$und2$f = null; const jsx$7_$_$$und1$mcJ$sp$f = new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$3); const jsx$7_$_$$und2$mcJ$sp$f = new $c_sjsr_RuntimeLong().init___I__I(lo$7, hi$10); x1_$_$$und1$f = jsx$7_$_$$und1$f; x1_$_$$und2$f = jsx$7_$_$$und2$f; x1_$_$$und1$mcJ$sp$f = jsx$7_$_$$und1$mcJ$sp$f; x1_$_$$und2$mcJ$sp$f = jsx$7_$_$$und2$mcJ$sp$f } } else { const jsx$8_$_$$und1$f = null; const jsx$8_$_$$und2$f = null; const jsx$8_$_$$und1$mcJ$sp$f = new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$3); const jsx$8_$_$$und2$mcJ$sp$f = new $c_sjsr_RuntimeLong().init___I__I(lo$3, hi$5); x1_$_$$und1$f = jsx$8_$_$$und1$f; x1_$_$$und2$f = jsx$8_$_$$und2$f; x1_$_$$und1$mcJ$sp$f = jsx$8_$_$$und1$mcJ$sp$f; x1_$_$$und2$mcJ$sp$f = jsx$8_$_$$und2$mcJ$sp$f }; const t$2 = x1_$_$$und1$mcJ$sp$f; const lo$11 = t$2.lo$2; const hi$14 = t$2.hi$2; const t$3 = x1_$_$$und2$mcJ$sp$f; const lo$12 = t$3.lo$2; const hi$15 = t$3.hi$2; this.java$math$BigDecimal$$$undscale$2 = $m_Ljava_math_BigDecimal$().java$math$BigDecimal$$safeLongToInt__J__I(new $c_sjsr_RuntimeLong().init___I__I(lo$11, hi$14)); this.$$undprecision$2 = mc.precision$1; this.java$math$BigDecimal$$$undsmallValue$2 = new $c_sjsr_RuntimeLong().init___I__I(lo$12, hi$15); this.java$math$BigDecimal$$$undbitLength$2 = $m_Ljava_math_BigDecimal$().bitLength__J__I(new $c_sjsr_RuntimeLong().init___I__I(lo$12, hi$15)); this.$$undintVal$2 = null }; approxPrecision__p2__I() { return ((this.$$undprecision$2 > 0) ? this.$$undprecision$2 : ((1 + $doubleToInt((0.3010299956639812 * (((-1) + this.java$math$BigDecimal$$$undbitLength$2) | 0)))) | 0)) }; doubleValue__D() { const sign = this.signum__I(); const value = this.java$math$BigDecimal$$$undbitLength$2; const hi = (value >> 31); const this$1 = $m_sjsr_RuntimeLong$(); const value$1 = (this.java$math$BigDecimal$$$undscale$2 / 0.3010299956639812); const lo = this$1.scala$scalajs$runtime$RuntimeLong$$fromDoubleImpl__D__I(value$1); const hi$1 = this$1.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const lo$1 = ((value - lo) | 0); const hi$2 = ((((-2147483648) ^ lo$1) > ((-2147483648) ^ value)) ? (((-1) + ((hi - hi$1) | 0)) | 0) : ((hi - hi$1) | 0)); if ((((hi$2 === (-1)) ? (((-2147483648) ^ lo$1) < 2147482574) : (hi$2 < (-1))) || (sign === 0))) { return (0.0 * sign) } else if (((hi$2 === 0) ? (((-2147483648) ^ lo$1) > (-2147482623)) : (hi$2 > 0))) { return (Infinity * sign) } else { const mantissa0 = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger().abs__Ljava_math_BigInteger(); let exponent = 1076; let mantissa; if ((this.java$math$BigDecimal$$$undscale$2 <= 0)) { const jsx$1 = $m_Ljava_math_Multiplication$(); const value$2 = ((-this.java$math$BigDecimal$$$undscale$2) | 0); const hi$3 = (value$2 >> 31); mantissa = mantissa0.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(jsx$1.powerOf10__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(value$2, hi$3))) } else { const jsx$2 = $m_Ljava_math_Multiplication$(); const value$3 = this.java$math$BigDecimal$$$undscale$2; const hi$4 = (value$3 >> 31); const powerOfTen = jsx$2.powerOf10__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(value$3, hi$4)); const k = ((100 - lo$1) | 0); let m; if ((k > 0)) { exponent = ((exponent - k) | 0); m = mantissa0.shiftLeft__I__Ljava_math_BigInteger(k) } else { m = mantissa0 }; const qr = m.divideAndRemainderImpl__Ljava_math_BigInteger__Ljava_math_BigInteger$QuotAndRem(powerOfTen); const compRem = qr.rem$1.shiftLeftOneBit__Ljava_math_BigInteger().compareTo__Ljava_math_BigInteger__I(powerOfTen); exponent = (((-2) + exponent) | 0); const this$3 = qr.quot$1.shiftLeft__I__Ljava_math_BigInteger(2); const jsx$3 = $m_Ljava_math_BigInteger$(); const value$4 = ((1 + (($imul(compRem, ((3 + compRem) | 0)) / 2) | 0)) | 0); const hi$5 = (value$4 >> 31); const bi = jsx$3.valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(value$4, hi$5)); mantissa = $m_Ljava_math_Elementary$().add__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$3, bi) }; const lowestSetBit = mantissa.getLowestSetBit__I(); const discardedSize = (((-54) + $m_Ljava_math_BitLevel$().bitLength__Ljava_math_BigInteger__I(mantissa)) | 0); let bits_$_lo$2 = 0; let bits_$_hi$2 = 0; let tempBits_$_lo$2 = 0; let tempBits_$_hi$2 = 0; if ((discardedSize > 0)) { const t = mantissa.shiftRight__I__Ljava_math_BigInteger(discardedSize).longValue__J(); const lo$2 = t.lo$2; const hi$6 = t.hi$2; const jsx$4_$_lo$2 = lo$2; const jsx$4_$_hi$2 = hi$6; bits_$_lo$2 = jsx$4_$_lo$2; bits_$_hi$2 = jsx$4_$_hi$2; tempBits_$_lo$2 = bits_$_lo$2; tempBits_$_hi$2 = bits_$_hi$2; const b_$_lo$2 = bits_$_lo$2; const b_$_hi$2 = bits_$_hi$2; const lo$3 = (1 & b_$_lo$2); let jsx$5; if (((lo$3 === 1) && (lowestSetBit < discardedSize))) { jsx$5 = true } else { const b$1_$_lo$2 = bits_$_lo$2; const b$1_$_hi$2 = bits_$_hi$2; const lo$4 = (3 & b$1_$_lo$2); jsx$5 = (lo$4 === 3) }; if (jsx$5) { const b$2_$_lo$2 = bits_$_lo$2; const b$2_$_hi$2 = bits_$_hi$2; const bhi = b$2_$_hi$2; const lo$5 = ((2 + b$2_$_lo$2) | 0); const hi$7 = ((((-2147483648) ^ lo$5) < (-2147483646)) ? ((1 + bhi) | 0) : bhi); const jsx$6_$_lo$2 = lo$5; const jsx$6_$_hi$2 = hi$7; bits_$_lo$2 = jsx$6_$_lo$2; bits_$_hi$2 = jsx$6_$_hi$2 } } else { const t$1 = mantissa.longValue__J(); const lo$6 = t$1.lo$2; const hi$8 = t$1.hi$2; const n = ((-discardedSize) | 0); const lo$7 = (((32 & n) === 0) ? (lo$6 << n) : 0); const hi$9 = (((32 & n) === 0) ? (((((lo$6 >>> 1) | 0) >>> ((31 - n) | 0)) | 0) | (hi$8 << n)) : (lo$6 << n)); const jsx$7_$_lo$2 = lo$7; const jsx$7_$_hi$2 = hi$9; bits_$_lo$2 = jsx$7_$_lo$2; bits_$_hi$2 = jsx$7_$_hi$2; tempBits_$_lo$2 = bits_$_lo$2; tempBits_$_hi$2 = bits_$_hi$2; const b$3_$_lo$2 = bits_$_lo$2; const b$3_$_hi$2 = bits_$_hi$2; const lo$8 = (3 & b$3_$_lo$2); if ((lo$8 === 3)) { const b$4_$_lo$2 = bits_$_lo$2; const b$4_$_hi$2 = bits_$_hi$2; const bhi$1 = b$4_$_hi$2; const lo$9 = ((2 + b$4_$_lo$2) | 0); const hi$10 = ((((-2147483648) ^ lo$9) < (-2147483646)) ? ((1 + bhi$1) | 0) : bhi$1); const jsx$8_$_lo$2 = lo$9; const jsx$8_$_hi$2 = hi$10; bits_$_lo$2 = jsx$8_$_lo$2; bits_$_hi$2 = jsx$8_$_hi$2 } }; const b$5_$_lo$2 = bits_$_lo$2; const b$5_$_hi$2 = bits_$_hi$2; const hi$11 = (4194304 & b$5_$_hi$2); if ((hi$11 === 0)) { const this$6_$_lo$2 = bits_$_lo$2; const this$6_$_hi$2 = bits_$_hi$2; const lo$10 = (((this$6_$_lo$2 >>> 1) | 0) | (this$6_$_hi$2 << 31)); const hi$12 = (this$6_$_hi$2 >> 1); const jsx$9_$_lo$2 = lo$10; const jsx$9_$_hi$2 = hi$12; bits_$_lo$2 = jsx$9_$_lo$2; bits_$_hi$2 = jsx$9_$_hi$2; exponent = ((exponent + discardedSize) | 0) } else { const this$7_$_lo$2 = bits_$_lo$2; const this$7_$_hi$2 = bits_$_hi$2; const lo$11 = (((this$7_$_lo$2 >>> 2) | 0) | (this$7_$_hi$2 << 30)); const hi$13 = (this$7_$_hi$2 >> 2); const jsx$10_$_lo$2 = lo$11; const jsx$10_$_hi$2 = hi$13; bits_$_lo$2 = jsx$10_$_lo$2; bits_$_hi$2 = jsx$10_$_hi$2; exponent = ((exponent + ((1 + discardedSize) | 0)) | 0) }; if ((exponent > 2046)) { return (Infinity * sign) } else if ((exponent < (-53))) { return (0.0 * sign) } else { if ((exponent <= 0)) { const this$8_$_lo$2 = tempBits_$_lo$2; const this$8_$_hi$2 = tempBits_$_hi$2; const lo$12 = (((this$8_$_lo$2 >>> 1) | 0) | (this$8_$_hi$2 << 31)); const hi$14 = (this$8_$_hi$2 >> 1); const jsx$11_$_lo$2 = lo$12; const jsx$11_$_hi$2 = hi$14; bits_$_lo$2 = jsx$11_$_lo$2; bits_$_hi$2 = jsx$11_$_hi$2; const this$9_$_lo$2 = bits_$_lo$2; const this$9_$_hi$2 = bits_$_hi$2; const n$1 = ((63 + exponent) | 0); const lo$13 = (((32 & n$1) === 0) ? ((((-1) >>> n$1) | 0) | ((-2) << ((31 - n$1) | 0))) : (((-1) >>> n$1) | 0)); const hi$15 = (((32 & n$1) === 0) ? (((-1) >>> n$1) | 0) : 0); const lo$14 = (this$9_$_lo$2 & lo$13); const hi$16 = (this$9_$_hi$2 & hi$15); const jsx$12_$_lo$2 = lo$14; const jsx$12_$_hi$2 = hi$16; tempBits_$_lo$2 = jsx$12_$_lo$2; tempBits_$_hi$2 = jsx$12_$_hi$2; const this$10_$_lo$2 = bits_$_lo$2; const this$10_$_hi$2 = bits_$_hi$2; const n$2 = ((-exponent) | 0); const lo$15 = (((32 & n$2) === 0) ? (((this$10_$_lo$2 >>> n$2) | 0) | ((this$10_$_hi$2 << 1) << ((31 - n$2) | 0))) : (this$10_$_hi$2 >> n$2)); const hi$17 = (((32 & n$2) === 0) ? (this$10_$_hi$2 >> n$2) : (this$10_$_hi$2 >> 31)); const jsx$13_$_lo$2 = lo$15; const jsx$13_$_hi$2 = hi$17; bits_$_lo$2 = jsx$13_$_lo$2; bits_$_hi$2 = jsx$13_$_hi$2; const b$6_$_lo$2 = bits_$_lo$2; const b$6_$_hi$2 = bits_$_hi$2; const lo$16 = (3 & b$6_$_lo$2); let jsx$14; if ((lo$16 === 3)) { jsx$14 = true } else { const b$7_$_lo$2 = bits_$_lo$2; const b$7_$_hi$2 = bits_$_hi$2; const lo$17 = (1 & b$7_$_lo$2); let jsx$15; if ((lo$17 === 1)) { const this$11_$_lo$2 = tempBits_$_lo$2; const this$11_$_hi$2 = tempBits_$_hi$2; jsx$15 = (!((this$11_$_lo$2 === 0) && (this$11_$_hi$2 === 0))) } else { jsx$15 = false }; if (jsx$15) { jsx$14 = (lowestSetBit < discardedSize) } else { jsx$14 = false } }; if (jsx$14) { const b$8_$_lo$2 = bits_$_lo$2; const b$8_$_hi$2 = bits_$_hi$2; const bhi$2 = b$8_$_hi$2; const lo$18 = ((1 + b$8_$_lo$2) | 0); const hi$18 = ((lo$18 === 0) ? ((1 + bhi$2) | 0) : bhi$2); const jsx$16_$_lo$2 = lo$18; const jsx$16_$_hi$2 = hi$18; bits_$_lo$2 = jsx$16_$_lo$2; bits_$_hi$2 = jsx$16_$_hi$2 }; exponent = 0; const this$13_$_lo$2 = bits_$_lo$2; const this$13_$_hi$2 = bits_$_hi$2; const lo$19 = (((this$13_$_lo$2 >>> 1) | 0) | (this$13_$_hi$2 << 31)); const hi$19 = (this$13_$_hi$2 >> 1); const jsx$17_$_lo$2 = lo$19; const jsx$17_$_hi$2 = hi$19; bits_$_lo$2 = jsx$17_$_lo$2; bits_$_hi$2 = jsx$17_$_hi$2 }; const hi$20 = (sign >> 31); const hi$21 = ((-2147483648) & hi$20); const value$5 = exponent; const hi$23 = (value$5 << 20); const hi$24 = (hi$21 | hi$23); const b$9_$_lo$2 = bits_$_lo$2; const b$9_$_hi$2 = bits_$_hi$2; const lo$20 = b$9_$_lo$2; const hi$25 = (1048575 & b$9_$_hi$2); const hi$26 = (hi$24 | hi$25); return $m_sjsr_Bits$().longBitsToDouble__J__D(new $c_sjsr_RuntimeLong().init___I__I(lo$20, hi$26)) } } }; init___J__I(smallValue, scale) { $c_Ljava_math_BigDecimal.prototype.init___.call(this); this.java$math$BigDecimal$$$undsmallValue$2 = smallValue; this.java$math$BigDecimal$$$undscale$2 = scale; this.java$math$BigDecimal$$$undbitLength$2 = $m_Ljava_math_BigDecimal$().bitLength__J__I(smallValue); return this }; hashCode__I() { if ((this.$$undhashCode$2 !== 0)) { return this.$$undhashCode$2 } else if ((this.java$math$BigDecimal$$$undbitLength$2 < 64)) { const t = this.java$math$BigDecimal$$$undsmallValue$2; const lo = t.lo$2; this.$$undhashCode$2 = lo; const jsx$1 = this.$$undhashCode$2; const t$1 = this.java$math$BigDecimal$$$undsmallValue$2; const hi$1 = t$1.hi$2; this.$$undhashCode$2 = (($imul(33, jsx$1) + hi$1) | 0); this.$$undhashCode$2 = (($imul(17, this.$$undhashCode$2) + this.java$math$BigDecimal$$$undscale$2) | 0); return this.$$undhashCode$2 } else { this.$$undhashCode$2 = (($imul(17, this.$$undintVal$2.hashCode__I()) + this.java$math$BigDecimal$$$undscale$2) | 0); return this.$$undhashCode$2 } }; init___T(sVal) { $c_Ljava_math_BigDecimal.prototype.init___AC__I__I.call(this, $m_sjsr_RuntimeString$().toCharArray__T__AC(sVal), 0, (sVal.length | 0)); return this }; intValue__I() { return (((this.java$math$BigDecimal$$$undscale$2 <= (-32)) || (this.java$math$BigDecimal$$$undscale$2 > this.approxPrecision__p2__I())) ? 0 : this.toBigInteger__Ljava_math_BigInteger().intValue__I()) }; init___Ljava_math_BigInteger(bi) { $c_Ljava_math_BigDecimal.prototype.init___Ljava_math_BigInteger__I.call(this, bi, 0); return this }; floatValue__F() { const value = this.java$math$BigDecimal$$$undbitLength$2; const hi = (value >> 31); const this$1 = $m_sjsr_RuntimeLong$(); const value$1 = (this.java$math$BigDecimal$$$undscale$2 / 0.3010299956639812); const lo = this$1.scala$scalajs$runtime$RuntimeLong$$fromDoubleImpl__D__I(value$1); const hi$1 = this$1.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const lo$1 = ((value - lo) | 0); const hi$2 = ((((-2147483648) ^ lo$1) > ((-2147483648) ^ value)) ? (((-1) + ((hi - hi$1) | 0)) | 0) : ((hi - hi$1) | 0)); const floatResult0 = $fround(this.signum__I()); const floatResult = ((((hi$2 === (-1)) ? (((-2147483648) ^ lo$1) < 2147483499) : (hi$2 < (-1))) || (floatResult0 === 0.0)) ? $fround((0.0 * floatResult0)) : (((hi$2 === 0) ? (((-2147483648) ^ lo$1) > (-2147483519)) : (hi$2 > 0)) ? $fround((Infinity * floatResult0)) : $fround(this.doubleValue__D()))); return floatResult }; init___AC__I__I($in, offset, len) { $c_Ljava_math_BigDecimal.prototype.init___.call(this); const last = (((-1) + ((offset + len) | 0)) | 0); if (($in === null)) { throw new $c_jl_NullPointerException().init___T("in == null") }; if (((((last >= $in.u.length) || (offset < 0)) || (len <= 0)) || (last < 0))) { throw new $c_jl_NumberFormatException().init___T(((((("Bad offset/length: offset=" + offset) + " len=") + len) + " in.length=") + $in.u.length)) }; let index = offset; if (((offset <= last) && ($in.u[offset] === 43))) { index = ((1 + index) | 0); let jsx$1; if ((index < last)) { $m_Ljava_math_BigDecimal$(); const c = $in.u[index]; const array = [new $c_jl_Character().init___C(43), new $c_jl_Character().init___C(45)]; const elem = new $c_jl_Character().init___C(c); let i = 0; while (true) { let jsx$2; if ((i < (array.length | 0))) { const index$1 = i; const arg1 = array[index$1]; jsx$2 = ($m_sr_BoxesRunTime$().equals__O__O__Z(arg1, elem) === false) } else { jsx$2 = false }; if (jsx$2) { i = ((1 + i) | 0) } else { break } }; jsx$1 = (i !== (array.length | 0)) } else { jsx$1 = false }; if (jsx$1) { throw new $c_jl_NumberFormatException().init___T(("For input string: " + $in.toString__T())) } } else { const isMinus = ((index <= last) && ($in.u[index] === 45)); let nextIsSign; if ((((1 + index) | 0) < last)) { $m_Ljava_math_BigDecimal$(); const c$1 = $in.u[((1 + index) | 0)]; const array$1 = [new $c_jl_Character().init___C(43), new $c_jl_Character().init___C(45)]; const elem$1 = new $c_jl_Character().init___C(c$1); let i$1 = 0; while (true) { let jsx$3; if ((i$1 < (array$1.length | 0))) { const index$2 = i$1; const arg1$1 = array$1[index$2]; jsx$3 = ($m_sr_BoxesRunTime$().equals__O__O__Z(arg1$1, elem$1) === false) } else { jsx$3 = false }; if (jsx$3) { i$1 = ((1 + i$1) | 0) } else { break } }; nextIsSign = (i$1 !== (array$1.length | 0)) } else { nextIsSign = false }; if ((isMinus && nextIsSign)) { throw new $c_jl_NumberFormatException().init___T(("For input string: " + $in.toString__T())) } }; const begin = index; let counter = 0; let wasNonZero = false; while (true) { let jsx$4; if ((index <= last)) { $m_Ljava_math_BigDecimal$(); const c$2 = $in.u[index]; const array$2 = [new $c_jl_Character().init___C(46), new $c_jl_Character().init___C(101), new $c_jl_Character().init___C(69)]; const elem$2 = new $c_jl_Character().init___C(c$2); let i$2 = 0; while (true) { let jsx$5; if ((i$2 < (array$2.length | 0))) { const index$3 = i$2; const arg1$2 = array$2[index$3]; jsx$5 = ($m_sr_BoxesRunTime$().equals__O__O__Z(arg1$2, elem$2) === false) } else { jsx$5 = false }; if (jsx$5) { i$2 = ((1 + i$2) | 0) } else { break } }; jsx$4 = (!(i$2 !== (array$2.length | 0))) } else { jsx$4 = false }; if (jsx$4) { if ((!wasNonZero)) { if (($in.u[index] === 48)) { counter = ((1 + counter) | 0) } else { wasNonZero = true } }; index = ((1 + index) | 0) } else { break } }; const this$30 = $m_sjsr_RuntimeString$(); const count = ((index - begin) | 0); const u = this$30.newString__AC__I__I__T($in, begin, count); const b = ((index - begin) | 0); let x1_$_$$und1$f; let x1_$_$$und2$f; if (((index <= last) && ($in.u[index] === 46))) { index = ((1 + index) | 0); const begin$2 = index; while (true) { let jsx$6; if ((index <= last)) { $m_Ljava_math_BigDecimal$(); const c$3 = $in.u[index]; const array$3 = [new $c_jl_Character().init___C(101), new $c_jl_Character().init___C(69)]; const elem$3 = new $c_jl_Character().init___C(c$3); let i$3 = 0; while (true) { let jsx$7; if ((i$3 < (array$3.length | 0))) { const index$4 = i$3; const arg1$3 = array$3[index$4]; jsx$7 = ($m_sr_BoxesRunTime$().equals__O__O__Z(arg1$3, elem$3) === false) } else { jsx$7 = false }; if (jsx$7) { i$3 = ((1 + i$3) | 0) } else { break } }; jsx$6 = (!(i$3 !== (array$3.length | 0))) } else { jsx$6 = false }; if (jsx$6) { if ((!wasNonZero)) { if (($in.u[index] === 48)) { counter = ((1 + counter) | 0) } else { wasNonZero = true } }; index = ((1 + index) | 0) } else { break } }; this.java$math$BigDecimal$$$undscale$2 = ((index - begin$2) | 0); const this$40 = $m_sjsr_RuntimeString$(); const count$1 = this.java$math$BigDecimal$$$undscale$2; const _1 = (("" + u) + this$40.newString__AC__I__I__T($in, begin$2, count$1)); const _2 = ((b + this.java$math$BigDecimal$$$undscale$2) | 0); const jsx$8_$_$$und1$f = _1; const jsx$8_$_$$und2$f = _2; x1_$_$$und1$f = jsx$8_$_$$und1$f; x1_$_$$und2$f = jsx$8_$_$$und2$f } else { this.java$math$BigDecimal$$$undscale$2 = 0; const jsx$9_$_$$und1$f = u; const jsx$9_$_$$und2$f = b; x1_$_$$und1$f = jsx$9_$_$$und1$f; x1_$_$$und2$f = jsx$9_$_$$und2$f }; const unscaled = x1_$_$$und1$f; const bufLength = (x1_$_$$und2$f | 0); let jsx$10; if ((index <= last)) { $m_Ljava_math_BigDecimal$(); const c$4 = $in.u[index]; const array$4 = [new $c_jl_Character().init___C(101), new $c_jl_Character().init___C(69)]; const elem$4 = new $c_jl_Character().init___C(c$4); let i$4 = 0; while (true) { let jsx$11; if ((i$4 < (array$4.length | 0))) { const index$5 = i$4; const arg1$4 = array$4[index$5]; jsx$11 = ($m_sr_BoxesRunTime$().equals__O__O__Z(arg1$4, elem$4) === false) } else { jsx$11 = false }; if (jsx$11) { i$4 = ((1 + i$4) | 0) } else { break } }; jsx$10 = (i$4 !== (array$4.length | 0)) } else { jsx$10 = false }; if (jsx$10) { index = ((1 + index) | 0); const indexIsPlus = ((index <= last) && ($in.u[index] === 43)); const nextIsNotMinus = ((((1 + index) | 0) <= last) && ($in.u[((1 + index) | 0)] !== 45)); const begin$3 = ((indexIsPlus && nextIsNotMinus) ? ((1 + index) | 0) : index); const this$50 = $m_sjsr_RuntimeString$(); const count$2 = ((((1 + last) | 0) - begin$3) | 0); const scaleString = this$50.newString__AC__I__I__T($in, begin$3, count$2); const value = this.java$math$BigDecimal$$$undscale$2; const hi = (value >> 31); const this$51 = $m_jl_Integer$(); const value$1 = this$51.parseInt__T__I__I(scaleString, 10); const hi$1 = (value$1 >> 31); const lo = ((value - value$1) | 0); const hi$2 = ((((-2147483648) ^ lo) > ((-2147483648) ^ value)) ? (((-1) + ((hi - hi$1) | 0)) | 0) : ((hi - hi$1) | 0)); this.java$math$BigDecimal$$$undscale$2 = lo; const value$2 = this.java$math$BigDecimal$$$undscale$2; const hi$3 = (value$2 >> 31); if ((!((lo === value$2) && (hi$2 === hi$3)))) { throw new $c_jl_NumberFormatException().init___T("Scale out of range") } }; if ((bufLength < 19)) { const this$53 = $m_jl_Long$(); this.java$math$BigDecimal$$$undsmallValue$2 = this$53.parseLong__T__I__J(unscaled, 10); this.java$math$BigDecimal$$$undbitLength$2 = $m_Ljava_math_BigDecimal$().bitLength__J__I(this.java$math$BigDecimal$$$undsmallValue$2) } else { this.setUnscaledValue__p2__Ljava_math_BigInteger__V(new $c_Ljava_math_BigInteger().init___T(unscaled)) }; return this }; decimalDigitsInLong__p2__J__I(value) { if (((value.lo$2 === 0) && (value.hi$2 === (-2147483648)))) { return 19 } else { const jsx$3 = $m_ju_Arrays$(); const jsx$2 = $m_Ljava_math_BigDecimal$().LongTenPows$1; const ahi = value.hi$2; let jsx$1; if ((ahi < 0)) { const lo = value.lo$2; const hi = value.hi$2; const lo$1 = ((-lo) | 0); const hi$1 = ((lo !== 0) ? (~hi) : ((-hi) | 0)); const x_$_lo$2 = lo$1; const x_$_hi$2 = hi$1; jsx$1 = new $c_sjsr_RuntimeLong().init___I__I(x_$_lo$2, x_$_hi$2) } else { jsx$1 = value }; const index = jsx$3.binarySearch__AJ__J__I(jsx$2, jsx$1); return ((index < 0) ? (((-1) - index) | 0) : ((1 + index) | 0)) } }; java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger() { if ((this.$$undintVal$2 === null)) { this.$$undintVal$2 = $m_Ljava_math_BigInteger$().valueOf__J__Ljava_math_BigInteger(this.java$math$BigDecimal$$$undsmallValue$2) }; return this.$$undintVal$2 }; compareTo__Ljava_math_BigDecimal__I(bi) { const thisSign = this.signum__I(); const valueSign = bi.signum__I(); if ((thisSign === valueSign)) { if ((((this.java$math$BigDecimal$$$undscale$2 === bi.java$math$BigDecimal$$$undscale$2) && (this.java$math$BigDecimal$$$undbitLength$2 < 64)) && (bi.java$math$BigDecimal$$$undbitLength$2 < 64))) { const t = this.java$math$BigDecimal$$$undsmallValue$2; const lo = t.lo$2; const hi = t.hi$2; const b = bi.java$math$BigDecimal$$$undsmallValue$2; const bhi = b.hi$2; if (((hi === bhi) ? (((-2147483648) ^ lo) < ((-2147483648) ^ b.lo$2)) : (hi < bhi))) { return (-1) } else { const t$1 = this.java$math$BigDecimal$$$undsmallValue$2; const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; const b$1 = bi.java$math$BigDecimal$$$undsmallValue$2; const bhi$1 = b$1.hi$2; if (((hi$1 === bhi$1) ? (((-2147483648) ^ lo$1) > ((-2147483648) ^ b$1.lo$2)) : (hi$1 > bhi$1))) { return 1 } else { return 0 } } } else { const value = this.java$math$BigDecimal$$$undscale$2; const hi$2 = (value >> 31); const value$1 = bi.java$math$BigDecimal$$$undscale$2; const hi$3 = (value$1 >> 31); const lo$2 = ((value - value$1) | 0); const hi$4 = ((((-2147483648) ^ lo$2) > ((-2147483648) ^ value)) ? (((-1) + ((hi$2 - hi$3) | 0)) | 0) : ((hi$2 - hi$3) | 0)); const diffPrecision = ((this.approxPrecision__p2__I() - bi.approxPrecision__p2__I()) | 0); const hi$5 = (diffPrecision >> 31); const lo$3 = ((1 + lo$2) | 0); const hi$6 = ((lo$3 === 0) ? ((1 + hi$4) | 0) : hi$4); if (((hi$5 === hi$6) ? (((-2147483648) ^ diffPrecision) > ((-2147483648) ^ lo$3)) : (hi$5 > hi$6))) { return thisSign } else { const hi$7 = (diffPrecision >> 31); const lo$4 = (((-1) + lo$2) | 0); const hi$8 = ((lo$4 !== (-1)) ? hi$4 : (((-1) + hi$4) | 0)); if (((hi$7 === hi$8) ? (((-2147483648) ^ diffPrecision) < ((-2147483648) ^ lo$4)) : (hi$7 < hi$8))) { return ((-thisSign) | 0) } else { const t$2 = this.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); const v = bi.java$math$BigDecimal$$getUnscaledValue__Ljava_math_BigInteger(); let x1_$_$$und1$f; let x1_$_$$und2$f; if ((hi$4 < 0)) { const jsx$1 = $m_Ljava_math_Multiplication$(); const lo$5 = ((-lo$2) | 0); const hi$9 = ((lo$2 !== 0) ? (~hi$4) : ((-hi$4) | 0)); const _1 = t$2.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(jsx$1.powerOf10__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(lo$5, hi$9))); const jsx$2_$_$$und1$f = _1; const jsx$2_$_$$und2$f = v; x1_$_$$und1$f = jsx$2_$_$$und1$f; x1_$_$$und2$f = jsx$2_$_$$und2$f } else if (((hi$4 === 0) ? (lo$2 !== 0) : (hi$4 > 0))) { const _2 = v.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger($m_Ljava_math_Multiplication$().powerOf10__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(lo$2, hi$4))); const jsx$3_$_$$und1$f = t$2; const jsx$3_$_$$und2$f = _2; x1_$_$$und1$f = jsx$3_$_$$und1$f; x1_$_$$und2$f = jsx$3_$_$$und2$f } else { const jsx$4_$_$$und1$f = t$2; const jsx$4_$_$$und2$f = v; x1_$_$$und1$f = jsx$4_$_$$und1$f; x1_$_$$und2$f = jsx$4_$_$$und2$f }; const thisUnscaled = x1_$_$$und1$f; const valUnscaled = x1_$_$$und2$f; return thisUnscaled.compareTo__Ljava_math_BigInteger__I(valUnscaled) } } } } else { return ((thisSign < valueSign) ? (-1) : 1) } }; } const $isArrayOf_Ljava_math_BigDecimal = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_math_BigDecimal))) }); const $d_Ljava_math_BigDecimal = new $TypeData().initClass({ Ljava_math_BigDecimal: 0 }, false, "java.math.BigDecimal", { Ljava_math_BigDecimal: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }); $c_Ljava_math_BigDecimal.prototype.$classData = $d_Ljava_math_BigDecimal; class $c_Ljava_math_BigInteger extends $c_jl_Number { constructor() { super(); this.digits$2 = null; this.numberLength$2 = 0; this.sign$2 = 0; this.java$math$BigInteger$$firstNonzeroDigit$2 = 0; this.$$undhashCode$2 = 0 }; pow__I__Ljava_math_BigInteger(exp) { if ((exp < 0)) { throw new $c_jl_ArithmeticException().init___T("Negative exponent") } else if ((exp === 0)) { return $m_Ljava_math_BigInteger$().ONE$1 } else if ((((exp === 1) || this.equals__O__Z($m_Ljava_math_BigInteger$().ONE$1)) || this.equals__O__Z($m_Ljava_math_BigInteger$().ZERO$1))) { return this } else if ((!this.testBit__I__Z(0))) { let x = 1; while ((!this.testBit__I__Z(x))) { x = ((1 + x) | 0) }; return $m_Ljava_math_BigInteger$().getPowerOfTwo__I__Ljava_math_BigInteger($imul(x, exp)).multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(this.shiftRight__I__Ljava_math_BigInteger(x).pow__I__Ljava_math_BigInteger(exp)) } else { return $m_Ljava_math_Multiplication$().pow__Ljava_math_BigInteger__I__Ljava_math_BigInteger(this, exp) } }; longValue__J() { let value$3_$_lo$2; let value$3_$_hi$2; if ((this.numberLength$2 > 1)) { const value = this.digits$2.u[1]; const value$1 = this.digits$2.u[0]; const jsx$1_$_lo$2 = value$1; const jsx$1_$_hi$2 = value; value$3_$_lo$2 = jsx$1_$_lo$2; value$3_$_hi$2 = jsx$1_$_hi$2 } else { const value$2 = this.digits$2.u[0]; const jsx$2_$_lo$2 = value$2; const jsx$2_$_hi$2 = 0; value$3_$_lo$2 = jsx$2_$_lo$2; value$3_$_hi$2 = jsx$2_$_hi$2 }; const value$4 = this.sign$2; const hi$3 = (value$4 >> 31); const blo = value$3_$_lo$2; const a0 = (65535 & value$4); const a1 = ((value$4 >>> 16) | 0); const b0 = (65535 & blo); const b1 = ((blo >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$4 = (((((((($imul(value$4, value$3_$_hi$2) + $imul(hi$3, blo)) | 0) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); return new $c_sjsr_RuntimeLong().init___I__I(lo, hi$4) }; init___() { this.java$math$BigInteger$$firstNonzeroDigit$2 = (-2); this.$$undhashCode$2 = 0; return this }; divide__Ljava_math_BigInteger__Ljava_math_BigInteger(divisor) { if ((divisor.sign$2 === 0)) { throw new $c_jl_ArithmeticException().init___T("BigInteger divide by zero") }; const divisorSign = divisor.sign$2; if (divisor.isOne__Z()) { return ((divisor.sign$2 > 0) ? this : this.negate__Ljava_math_BigInteger()) } else { const thisSign = this.sign$2; const thisLen = this.numberLength$2; const divisorLen = divisor.numberLength$2; if ((((thisLen + divisorLen) | 0) === 2)) { const value = this.digits$2.u[0]; const value$1 = divisor.digits$2.u[0]; const this$1 = $m_sjsr_RuntimeLong$(); const lo = this$1.divideImpl__I__I__I__I__I(value, 0, value$1, 0); const hi$2 = this$1.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; let bi_$_lo$2 = lo; let bi_$_hi$2 = hi$2; if ((thisSign !== divisorSign)) { const this$2_$_lo$2 = bi_$_lo$2; const this$2_$_hi$2 = bi_$_hi$2; const lo$1 = this$2_$_lo$2; const hi$3 = this$2_$_hi$2; const lo$2 = ((-lo$1) | 0); const hi$4 = ((lo$1 !== 0) ? (~hi$3) : ((-hi$3) | 0)); const jsx$1_$_lo$2 = lo$2; const jsx$1_$_hi$2 = hi$4; bi_$_lo$2 = jsx$1_$_lo$2; bi_$_hi$2 = jsx$1_$_hi$2 }; return $m_Ljava_math_BigInteger$().valueOf__J__Ljava_math_BigInteger(new $c_sjsr_RuntimeLong().init___I__I(bi_$_lo$2, bi_$_hi$2)) } else { const cmp = ((thisLen !== divisorLen) ? ((thisLen > divisorLen) ? 1 : (-1)) : $m_Ljava_math_Elementary$().compareArrays__AI__AI__I__I(this.digits$2, divisor.digits$2, thisLen)); if ((cmp === 0)) { return ((thisSign === divisorSign) ? $m_Ljava_math_BigInteger$().ONE$1 : $m_Ljava_math_BigInteger$().MINUS$undONE$1) } else if ((cmp === (-1))) { return $m_Ljava_math_BigInteger$().ZERO$1 } else { const resLength = ((1 + ((thisLen - divisorLen) | 0)) | 0); const resDigits = $newArrayObject($d_I.getArrayOf(), [resLength]); const resSign = ((thisSign === divisorSign) ? 1 : (-1)); if ((divisorLen === 1)) { $m_Ljava_math_Division$().divideArrayByInt__AI__AI__I__I__I(resDigits, this.digits$2, thisLen, divisor.digits$2.u[0]) } else { $m_Ljava_math_Division$().divide__AI__I__AI__I__AI__I__AI(resDigits, resLength, this.digits$2, thisLen, divisor.digits$2, divisorLen) }; const result = new $c_Ljava_math_BigInteger().init___I__I__AI(resSign, resLength, resDigits); result.cutOffLeadingZeroes__V(); return result } } } }; remainder__Ljava_math_BigInteger__Ljava_math_BigInteger(divisor) { if ((divisor.sign$2 === 0)) { throw new $c_jl_ArithmeticException().init___T("BigInteger divide by zero") }; const thisLen = this.numberLength$2; const divisorLen = divisor.numberLength$2; const cmp = ((thisLen !== divisorLen) ? ((thisLen > divisorLen) ? 1 : (-1)) : $m_Ljava_math_Elementary$().compareArrays__AI__AI__I__I(this.digits$2, divisor.digits$2, thisLen)); if ((cmp === (-1))) { return this } else { let resDigits = $newArrayObject($d_I.getArrayOf(), [divisorLen]); if ((divisorLen === 1)) { resDigits.u[0] = $m_Ljava_math_Division$().remainderArrayByInt__AI__I__I__I(this.digits$2, thisLen, divisor.digits$2.u[0]) } else { const qLen = ((1 + ((thisLen - divisorLen) | 0)) | 0); resDigits = $m_Ljava_math_Division$().divide__AI__I__AI__I__AI__I__AI(null, qLen, this.digits$2, thisLen, divisor.digits$2, divisorLen) }; const result = new $c_Ljava_math_BigInteger().init___I__I__AI(this.sign$2, divisorLen, resDigits); result.cutOffLeadingZeroes__V(); return result } }; equals__O__Z(x) { if ((x instanceof $c_Ljava_math_BigInteger)) { const x2 = x; return (((this.sign$2 === x2.sign$2) && (this.numberLength$2 === x2.numberLength$2)) && this.equalsArrays__AI__Z(x2.digits$2)) } else { return false } }; toString__T() { return $m_Ljava_math_Conversion$().toDecimalScaledString__Ljava_math_BigInteger__T(this) }; init___I__I(sign, value) { $c_Ljava_math_BigInteger.prototype.init___.call(this); this.sign$2 = sign; this.numberLength$2 = 1; this.digits$2 = $makeNativeArrayWrapper($d_I.getArrayOf(), [value]); return this }; getFirstNonzeroDigit__I() { if ((this.java$math$BigInteger$$firstNonzeroDigit$2 === (-2))) { let jsx$1; if ((this.sign$2 === 0)) { jsx$1 = (-1) } else { let i = 0; while ((this.digits$2.u[i] === 0)) { i = ((1 + i) | 0) }; jsx$1 = i }; this.java$math$BigInteger$$firstNonzeroDigit$2 = jsx$1 }; return this.java$math$BigInteger$$firstNonzeroDigit$2 }; equalsArrays__AI__Z(b) { let i = 0; while ((i !== this.numberLength$2)) { if ((this.digits$2.u[i] !== b.u[i])) { return false }; i = ((1 + i) | 0) }; return true }; abs__Ljava_math_BigInteger() { return ((this.sign$2 < 0) ? new $c_Ljava_math_BigInteger().init___I__I__AI(1, this.numberLength$2, this.digits$2) : this) }; setFromString__p2__T__I__V(s, radix) { if ((((s === "") || (s === "+")) || (s === "-"))) { throw new $c_jl_NumberFormatException().init___T("Zero length BigInteger") }; const stringLength0 = (s.length | 0); let x1_$_$$und1$1; let x1_$_$$und2$1; let x1_$_$$und3$1; if (((65535 & (s.charCodeAt(0) | 0)) === 45)) { const _3 = (((-1) + stringLength0) | 0); const jsx$1_$_$$und1$1 = (-1); const jsx$1_$_$$und2$1 = 1; const jsx$1_$_$$und3$1 = _3; x1_$_$$und1$1 = jsx$1_$_$$und1$1; x1_$_$$und2$1 = jsx$1_$_$$und2$1; x1_$_$$und3$1 = jsx$1_$_$$und3$1 } else if (((65535 & (s.charCodeAt(0) | 0)) === 43)) { const _3$1 = (((-1) + stringLength0) | 0); const jsx$2_$_$$und1$1 = 1; const jsx$2_$_$$und2$1 = 1; const jsx$2_$_$$und3$1 = _3$1; x1_$_$$und1$1 = jsx$2_$_$$und1$1; x1_$_$$und2$1 = jsx$2_$_$$und2$1; x1_$_$$und3$1 = jsx$2_$_$$und3$1 } else { const jsx$3_$_$$und1$1 = 1; const jsx$3_$_$$und2$1 = 0; const jsx$3_$_$$und3$1 = stringLength0; x1_$_$$und1$1 = jsx$3_$_$$und1$1; x1_$_$$und2$1 = jsx$3_$_$$und2$1; x1_$_$$und3$1 = jsx$3_$_$$und3$1 }; const _sign = (x1_$_$$und1$1 | 0); const startChar = (x1_$_$$und2$1 | 0); const stringLength = (x1_$_$$und3$1 | 0); let i = startChar; while ((i < stringLength0)) { const arg1 = i; const c = (65535 & (s.charCodeAt(arg1) | 0)); if (((c === 43) || (c === 45))) { throw new $c_jl_NumberFormatException().init___T("Illegal embedded sign character") }; i = ((1 + i) | 0) }; const charsPerInt = $m_Ljava_math_Conversion$().DigitFitInInt$1.u[radix]; let bigRadixDigitsLength = ((stringLength / charsPerInt) | 0); const topChars = ((stringLength % charsPerInt) | 0); if ((topChars !== 0)) { bigRadixDigitsLength = ((1 + bigRadixDigitsLength) | 0) }; const _digits = $newArrayObject($d_I.getArrayOf(), [bigRadixDigitsLength]); const bigRadix = $m_Ljava_math_Conversion$().BigRadices$1.u[(((-2) + radix) | 0)]; let digitIndex = 0; let substrEnd = ((startChar + ((topChars === 0) ? charsPerInt : topChars)) | 0); let newDigit = 0; let substrStart = startChar; while ((substrStart < stringLength0)) { const jsx$4 = $m_jl_Integer$(); const beginIndex = substrStart; const endIndex = substrEnd; const bigRadixDigit = jsx$4.parseInt__T__I__I(s.substring(beginIndex, endIndex), radix); const this$9 = $m_Ljava_math_Multiplication$(); const aSize = digitIndex; newDigit = this$9.multiplyByInt__p1__AI__AI__I__I__I(_digits, _digits, aSize, bigRadix); newDigit = ((newDigit + $m_Ljava_math_Elementary$().inplaceAdd__AI__I__I__I(_digits, digitIndex, bigRadixDigit)) | 0); _digits.u[digitIndex] = newDigit; digitIndex = ((1 + digitIndex) | 0); substrStart = substrEnd; substrEnd = ((substrStart + charsPerInt) | 0) }; this.sign$2 = _sign; this.numberLength$2 = digitIndex; this.digits$2 = _digits; this.cutOffLeadingZeroes__V() }; divideAndRemainderImpl__Ljava_math_BigInteger__Ljava_math_BigInteger$QuotAndRem(divisor) { const divisorSign = divisor.sign$2; if ((divisorSign === 0)) { throw new $c_jl_ArithmeticException().init___T("BigInteger divide by zero") }; const divisorLen = divisor.numberLength$2; const divisorDigits = divisor.digits$2; if ((divisorLen === 1)) { return $m_Ljava_math_Division$().divideAndRemainderByInteger__Ljava_math_BigInteger__I__I__Ljava_math_BigInteger$QuotAndRem(this, divisorDigits.u[0], divisorSign) } else { const thisDigits = this.digits$2; const thisLen = this.numberLength$2; const cmp = ((thisLen !== divisorLen) ? ((thisLen > divisorLen) ? 1 : (-1)) : $m_Ljava_math_Elementary$().compareArrays__AI__AI__I__I(thisDigits, divisorDigits, thisLen)); if ((cmp < 0)) { return new $c_Ljava_math_BigInteger$QuotAndRem().init___Ljava_math_BigInteger__Ljava_math_BigInteger($m_Ljava_math_BigInteger$().ZERO$1, this) } else { const thisSign = this.sign$2; const quotientLength = ((1 + ((thisLen - divisorLen) | 0)) | 0); const quotientSign = ((thisSign === divisorSign) ? 1 : (-1)); const quotientDigits = $newArrayObject($d_I.getArrayOf(), [quotientLength]); const remainderDigits = $m_Ljava_math_Division$().divide__AI__I__AI__I__AI__I__AI(quotientDigits, quotientLength, thisDigits, thisLen, divisorDigits, divisorLen); const result0 = new $c_Ljava_math_BigInteger().init___I__I__AI(quotientSign, quotientLength, quotientDigits); const result1 = new $c_Ljava_math_BigInteger().init___I__I__AI(thisSign, divisorLen, remainderDigits); result0.cutOffLeadingZeroes__V(); result1.cutOffLeadingZeroes__V(); return new $c_Ljava_math_BigInteger$QuotAndRem().init___Ljava_math_BigInteger__Ljava_math_BigInteger(result0, result1) } } }; cutOffLeadingZeroes__V() { _loop: while (true) { if ((this.numberLength$2 > 0)) { this.numberLength$2 = (((-1) + this.numberLength$2) | 0); if ((this.digits$2.u[this.numberLength$2] === 0)) { continue _loop } }; break }; if ((this.digits$2.u[this.numberLength$2] === 0)) { this.sign$2 = 0 }; this.numberLength$2 = ((1 + this.numberLength$2) | 0) }; testBit__I__Z(n) { const intCount = (n >> 5); if ((n === 0)) { return ((1 & this.digits$2.u[0]) !== 0) } else if ((n < 0)) { throw new $c_jl_ArithmeticException().init___T("Negative bit address") } else if ((intCount >= this.numberLength$2)) { return (this.sign$2 < 0) } else if ((!((this.sign$2 < 0) && (intCount < this.getFirstNonzeroDigit__I())))) { let digit = this.digits$2.u[intCount]; if ((this.sign$2 < 0)) { digit = ((this.getFirstNonzeroDigit__I() === intCount) ? ((-digit) | 0) : (~digit)) }; const i = (1 << (31 & n)); return ((digit & i) !== 0) } else { return false } }; getLowestSetBit__I() { if ((this.sign$2 === 0)) { return (-1) } else { const i = this.getFirstNonzeroDigit__I(); const i$1 = this.digits$2.u[i]; return (((i << 5) + ((i$1 === 0) ? 32 : ((31 - $clz32((i$1 & ((-i$1) | 0)))) | 0))) | 0) } }; negate__Ljava_math_BigInteger() { return ((this.sign$2 === 0) ? this : new $c_Ljava_math_BigInteger().init___I__I__AI(((-this.sign$2) | 0), this.numberLength$2, this.digits$2)) }; init___I__I__AI(sign, numberLength, digits) { $c_Ljava_math_BigInteger.prototype.init___.call(this); this.sign$2 = sign; this.numberLength$2 = numberLength; this.digits$2 = digits; return this }; shiftLeftOneBit__Ljava_math_BigInteger() { return ((this.sign$2 === 0) ? this : $m_Ljava_math_BitLevel$().shiftLeftOneBit__Ljava_math_BigInteger__Ljava_math_BigInteger(this)) }; init___T__I(s, radix) { $c_Ljava_math_BigInteger.prototype.init___.call(this); $m_Ljava_math_BigInteger$(); if ((s === null)) { throw new $c_jl_NullPointerException().init___() }; if (((radix < 2) || (radix > 36))) { throw new $c_jl_NumberFormatException().init___T("Radix out of range") }; if ((s === null)) { throw new $c_jl_NullPointerException().init___() }; if ((s === "")) { throw new $c_jl_NumberFormatException().init___T("Zero length BigInteger") }; this.setFromString__p2__T__I__V(s, radix); return this }; hashCode__I() { if ((this.$$undhashCode$2 !== 0)) { return this.$$undhashCode$2 } else { const end = this.numberLength$2; let i = 0; while ((i < end)) { const arg1 = i; this.$$undhashCode$2 = (($imul(33, this.$$undhashCode$2) + this.digits$2.u[arg1]) | 0); i = ((1 + i) | 0) }; this.$$undhashCode$2 = $imul(this.$$undhashCode$2, this.sign$2); return this.$$undhashCode$2 } }; init___T(s) { $c_Ljava_math_BigInteger.prototype.init___T__I.call(this, s, 10); return this }; divideAndRemainder__Ljava_math_BigInteger__ALjava_math_BigInteger(divisor) { return this.divideAndRemainderImpl__Ljava_math_BigInteger__Ljava_math_BigInteger$QuotAndRem(divisor).toArray__ALjava_math_BigInteger() }; shiftLeft__I__Ljava_math_BigInteger(n) { return (((n === 0) || (this.sign$2 === 0)) ? this : ((n > 0) ? $m_Ljava_math_BitLevel$().shiftLeft__Ljava_math_BigInteger__I__Ljava_math_BigInteger(this, n) : $m_Ljava_math_BitLevel$().shiftRight__Ljava_math_BigInteger__I__Ljava_math_BigInteger(this, ((-n) | 0)))) }; isOne__Z() { return ((this.numberLength$2 === 1) && (this.digits$2.u[0] === 1)) }; intValue__I() { return $imul(this.sign$2, this.digits$2.u[0]) }; multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(bi) { if (((bi.sign$2 === 0) || (this.sign$2 === 0))) { return $m_Ljava_math_BigInteger$().ZERO$1 } else { const this$1 = $m_Ljava_math_Multiplication$(); return this$1.karatsuba__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this, bi) } }; init___I__J(sign, lVal) { $c_Ljava_math_BigInteger.prototype.init___.call(this); this.sign$2 = sign; const lo = lVal.hi$2; if ((lo === 0)) { this.numberLength$2 = 1; this.digits$2 = $makeNativeArrayWrapper($d_I.getArrayOf(), [lVal.lo$2]) } else { this.numberLength$2 = 2; this.digits$2 = $makeNativeArrayWrapper($d_I.getArrayOf(), [lVal.lo$2, lo]) }; return this }; shiftRight__I__Ljava_math_BigInteger(n) { return (((n === 0) || (this.sign$2 === 0)) ? this : ((n > 0) ? $m_Ljava_math_BitLevel$().shiftRight__Ljava_math_BigInteger__I__Ljava_math_BigInteger(this, n) : $m_Ljava_math_BitLevel$().shiftLeft__Ljava_math_BigInteger__I__Ljava_math_BigInteger(this, ((-n) | 0)))) }; init___I__AI(signum, digits) { $c_Ljava_math_BigInteger.prototype.init___.call(this); if ((digits.u.length === 0)) { this.sign$2 = 0; this.numberLength$2 = 1; this.digits$2 = $makeNativeArrayWrapper($d_I.getArrayOf(), [0]) } else { this.sign$2 = signum; this.numberLength$2 = digits.u.length; this.digits$2 = digits; this.cutOffLeadingZeroes__V() }; return this }; compareTo__Ljava_math_BigInteger__I(bi) { return ((this.sign$2 > bi.sign$2) ? 1 : ((this.sign$2 < bi.sign$2) ? (-1) : ((this.numberLength$2 > bi.numberLength$2) ? this.sign$2 : ((this.numberLength$2 < bi.numberLength$2) ? ((-bi.sign$2) | 0) : $imul(this.sign$2, $m_Ljava_math_Elementary$().compareArrays__AI__AI__I__I(this.digits$2, bi.digits$2, this.numberLength$2)))))) }; } const $isArrayOf_Ljava_math_BigInteger = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_math_BigInteger))) }); const $d_Ljava_math_BigInteger = new $TypeData().initClass({ Ljava_math_BigInteger: 0 }, false, "java.math.BigInteger", { Ljava_math_BigInteger: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }); $c_Ljava_math_BigInteger.prototype.$classData = $d_Ljava_math_BigInteger; class $c_Ljava_math_RoundingMode extends $c_jl_Enum { init___T__I(name, ordinal) { $c_jl_Enum.prototype.init___T__I.call(this, name, ordinal); return this }; } const $d_Ljava_math_RoundingMode = new $TypeData().initClass({ Ljava_math_RoundingMode: 0 }, false, "java.math.RoundingMode", { Ljava_math_RoundingMode: 1, jl_Enum: 1, O: 1, jl_Comparable: 1, Ljava_io_Serializable: 1 }); $c_Ljava_math_RoundingMode.prototype.$classData = $d_Ljava_math_RoundingMode; class $c_Ljava_nio_HeapByteBuffer extends $c_Ljava_nio_ByteBuffer { constructor() { super(); this.$$undreadOnly$3 = false }; put__AB__I__I__Ljava_nio_ByteBuffer(src, offset, length) { if (this.$$undreadOnly$3) { throw new $c_Ljava_nio_ReadOnlyBufferException().init___() }; if ((((offset < 0) || (length < 0)) || (offset > ((src.u.length - length) | 0)))) { throw new $c_jl_IndexOutOfBoundsException().init___() }; const p = this.java$nio$Buffer$$$undposition$1; const newPos = ((p + length) | 0); if ((newPos > this.$$undlimit$1)) { throw new $c_Ljava_nio_BufferOverflowException().init___() }; this.java$nio$Buffer$$$undposition$1 = newPos; $systemArraycopy(src, offset, this.$$undarray$2, ((this.$$undarrayOffset$2 + p) | 0), length); return this }; get__AB__I__I__Ljava_nio_ByteBuffer(dst, offset, length) { if ((((offset < 0) || (length < 0)) || (offset > ((dst.u.length - length) | 0)))) { throw new $c_jl_IndexOutOfBoundsException().init___() }; const p = this.java$nio$Buffer$$$undposition$1; const newPos = ((p + length) | 0); if ((newPos > this.$$undlimit$1)) { throw new $c_Ljava_nio_BufferUnderflowException().init___() }; this.java$nio$Buffer$$$undposition$1 = newPos; $systemArraycopy(this.$$undarray$2, ((this.$$undarrayOffset$2 + p) | 0), dst, offset, length); return this }; init___I__AB__I__I__I__Z(_capacity, _array0, _arrayOffset0, _initialPosition, _initialLimit, _readOnly) { this.$$undreadOnly$3 = _readOnly; $c_Ljava_nio_ByteBuffer.prototype.init___I__AB__I.call(this, _capacity, _array0, _arrayOffset0); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call(this, _initialPosition); $c_Ljava_nio_Buffer.prototype.limit__I__Ljava_nio_Buffer.call(this, _initialLimit); return this }; put__B__Ljava_nio_ByteBuffer(b) { if (this.$$undreadOnly$3) { throw new $c_Ljava_nio_ReadOnlyBufferException().init___() }; const p = this.java$nio$Buffer$$$undposition$1; if ((p === this.$$undlimit$1)) { throw new $c_Ljava_nio_BufferOverflowException().init___() }; this.java$nio$Buffer$$$undposition$1 = ((1 + p) | 0); const elem = (b | 0); this.$$undarray$2.u[((this.$$undarrayOffset$2 + p) | 0)] = (elem | 0); return this }; } const $d_Ljava_nio_HeapByteBuffer = new $TypeData().initClass({ Ljava_nio_HeapByteBuffer: 0 }, false, "java.nio.HeapByteBuffer", { Ljava_nio_HeapByteBuffer: 1, Ljava_nio_ByteBuffer: 1, Ljava_nio_Buffer: 1, O: 1, jl_Comparable: 1 }); $c_Ljava_nio_HeapByteBuffer.prototype.$classData = $d_Ljava_nio_HeapByteBuffer; class $c_Ljava_nio_charset_CoderMalfunctionError extends $c_jl_Error { init___jl_Exception(cause) { $c_jl_Error.prototype.init___jl_Throwable.call(this, cause); return this }; } const $d_Ljava_nio_charset_CoderMalfunctionError = new $TypeData().initClass({ Ljava_nio_charset_CoderMalfunctionError: 0 }, false, "java.nio.charset.CoderMalfunctionError", { Ljava_nio_charset_CoderMalfunctionError: 1, jl_Error: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Ljava_nio_charset_CoderMalfunctionError.prototype.$classData = $d_Ljava_nio_charset_CoderMalfunctionError; class $c_Ljava_nio_charset_ISO$und8859$und1$ extends $c_Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon { init___() { $c_Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon.prototype.init___T__AT__I.call(this, "ISO-8859-1", $makeNativeArrayWrapper($d_T.getArrayOf(), ["csISOLatin1", "IBM-819", "iso-ir-100", "8859_1", "ISO_8859-1", "l1", "ISO8859-1", "ISO_8859_1", "cp819", "ISO8859_1", "latin1", "ISO_8859-1:1987", "819", "IBM819"]), 255); return this }; } const $d_Ljava_nio_charset_ISO$und8859$und1$ = new $TypeData().initClass({ Ljava_nio_charset_ISO$und8859$und1$: 0 }, false, "java.nio.charset.ISO_8859_1$", { Ljava_nio_charset_ISO$und8859$und1$: 1, Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon: 1, Ljava_nio_charset_Charset: 1, O: 1, jl_Comparable: 1 }); $c_Ljava_nio_charset_ISO$und8859$und1$.prototype.$classData = $d_Ljava_nio_charset_ISO$und8859$und1$; let $n_Ljava_nio_charset_ISO$und8859$und1$ = (void 0); const $m_Ljava_nio_charset_ISO$und8859$und1$ = (function() { if ((!$n_Ljava_nio_charset_ISO$und8859$und1$)) { $n_Ljava_nio_charset_ISO$und8859$und1$ = new $c_Ljava_nio_charset_ISO$und8859$und1$().init___() }; return $n_Ljava_nio_charset_ISO$und8859$und1$ }); class $c_Ljava_nio_charset_US$undASCII$ extends $c_Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon { init___() { $c_Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon.prototype.init___T__AT__I.call(this, "US-ASCII", $makeNativeArrayWrapper($d_T.getArrayOf(), ["cp367", "ascii7", "ISO646-US", "646", "csASCII", "us", "iso_646.irv:1983", "ISO_646.irv:1991", "IBM367", "ASCII", "default", "ANSI_X3.4-1986", "ANSI_X3.4-1968", "iso-ir-6"]), 127); return this }; } const $d_Ljava_nio_charset_US$undASCII$ = new $TypeData().initClass({ Ljava_nio_charset_US$undASCII$: 0 }, false, "java.nio.charset.US_ASCII$", { Ljava_nio_charset_US$undASCII$: 1, Ljava_nio_charset_ISO$und8859$und1$undAnd$undUS$undASCII$undCommon: 1, Ljava_nio_charset_Charset: 1, O: 1, jl_Comparable: 1 }); $c_Ljava_nio_charset_US$undASCII$.prototype.$classData = $d_Ljava_nio_charset_US$undASCII$; let $n_Ljava_nio_charset_US$undASCII$ = (void 0); const $m_Ljava_nio_charset_US$undASCII$ = (function() { if ((!$n_Ljava_nio_charset_US$undASCII$)) { $n_Ljava_nio_charset_US$undASCII$ = new $c_Ljava_nio_charset_US$undASCII$().init___() }; return $n_Ljava_nio_charset_US$undASCII$ }); class $c_Ljava_nio_charset_UTF$und16$ extends $c_Ljava_nio_charset_UTF$und16$undCommon { init___() { $c_Ljava_nio_charset_UTF$und16$undCommon.prototype.init___T__AT__I.call(this, "UTF-16", $makeNativeArrayWrapper($d_T.getArrayOf(), ["utf16", "UTF_16", "UnicodeBig", "unicode"]), 0); return this }; } const $d_Ljava_nio_charset_UTF$und16$ = new $TypeData().initClass({ Ljava_nio_charset_UTF$und16$: 0 }, false, "java.nio.charset.UTF_16$", { Ljava_nio_charset_UTF$und16$: 1, Ljava_nio_charset_UTF$und16$undCommon: 1, Ljava_nio_charset_Charset: 1, O: 1, jl_Comparable: 1 }); $c_Ljava_nio_charset_UTF$und16$.prototype.$classData = $d_Ljava_nio_charset_UTF$und16$; let $n_Ljava_nio_charset_UTF$und16$ = (void 0); const $m_Ljava_nio_charset_UTF$und16$ = (function() { if ((!$n_Ljava_nio_charset_UTF$und16$)) { $n_Ljava_nio_charset_UTF$und16$ = new $c_Ljava_nio_charset_UTF$und16$().init___() }; return $n_Ljava_nio_charset_UTF$und16$ }); class $c_Ljava_nio_charset_UTF$und16BE$ extends $c_Ljava_nio_charset_UTF$und16$undCommon { init___() { $c_Ljava_nio_charset_UTF$und16$undCommon.prototype.init___T__AT__I.call(this, "UTF-16BE", $makeNativeArrayWrapper($d_T.getArrayOf(), ["X-UTF-16BE", "UTF_16BE", "ISO-10646-UCS-2", "UnicodeBigUnmarked"]), 1); return this }; } const $d_Ljava_nio_charset_UTF$und16BE$ = new $TypeData().initClass({ Ljava_nio_charset_UTF$und16BE$: 0 }, false, "java.nio.charset.UTF_16BE$", { Ljava_nio_charset_UTF$und16BE$: 1, Ljava_nio_charset_UTF$und16$undCommon: 1, Ljava_nio_charset_Charset: 1, O: 1, jl_Comparable: 1 }); $c_Ljava_nio_charset_UTF$und16BE$.prototype.$classData = $d_Ljava_nio_charset_UTF$und16BE$; let $n_Ljava_nio_charset_UTF$und16BE$ = (void 0); const $m_Ljava_nio_charset_UTF$und16BE$ = (function() { if ((!$n_Ljava_nio_charset_UTF$und16BE$)) { $n_Ljava_nio_charset_UTF$und16BE$ = new $c_Ljava_nio_charset_UTF$und16BE$().init___() }; return $n_Ljava_nio_charset_UTF$und16BE$ }); class $c_Ljava_nio_charset_UTF$und16LE$ extends $c_Ljava_nio_charset_UTF$und16$undCommon { init___() { $c_Ljava_nio_charset_UTF$und16$undCommon.prototype.init___T__AT__I.call(this, "UTF-16LE", $makeNativeArrayWrapper($d_T.getArrayOf(), ["UnicodeLittleUnmarked", "UTF_16LE", "X-UTF-16LE"]), 2); return this }; } const $d_Ljava_nio_charset_UTF$und16LE$ = new $TypeData().initClass({ Ljava_nio_charset_UTF$und16LE$: 0 }, false, "java.nio.charset.UTF_16LE$", { Ljava_nio_charset_UTF$und16LE$: 1, Ljava_nio_charset_UTF$und16$undCommon: 1, Ljava_nio_charset_Charset: 1, O: 1, jl_Comparable: 1 }); $c_Ljava_nio_charset_UTF$und16LE$.prototype.$classData = $d_Ljava_nio_charset_UTF$und16LE$; let $n_Ljava_nio_charset_UTF$und16LE$ = (void 0); const $m_Ljava_nio_charset_UTF$und16LE$ = (function() { if ((!$n_Ljava_nio_charset_UTF$und16LE$)) { $n_Ljava_nio_charset_UTF$und16LE$ = new $c_Ljava_nio_charset_UTF$und16LE$().init___() }; return $n_Ljava_nio_charset_UTF$und16LE$ }); const $is_T = (function(obj) { return ((typeof obj) === "string") }); const $isArrayOf_T = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.T))) }); const $d_T = new $TypeData().initClass({ T: 0 }, false, "java.lang.String", { T: 1, O: 1, Ljava_io_Serializable: 1, jl_CharSequence: 1, jl_Comparable: 1 }, (void 0), (void 0), $is_T); class $c_jl_AssertionError extends $c_jl_Error { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; init___O(detailMessage) { const message = ("" + detailMessage); let cause; if ((detailMessage instanceof $c_jl_Throwable)) { const x2 = detailMessage; cause = x2 } else { cause = null }; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, message, cause, true, true); return this }; } const $d_jl_AssertionError = new $TypeData().initClass({ jl_AssertionError: 0 }, false, "java.lang.AssertionError", { jl_AssertionError: 1, jl_Error: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_AssertionError.prototype.$classData = $d_jl_AssertionError; const $isArrayOf_jl_Byte = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Byte))) }); const $d_jl_Byte = new $TypeData().initClass({ jl_Byte: 0 }, false, "java.lang.Byte", { jl_Byte: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }, (void 0), (void 0), (function(x) { return $isByte(x) })); class $c_jl_CloneNotSupportedException extends $c_jl_Exception { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $d_jl_CloneNotSupportedException = new $TypeData().initClass({ jl_CloneNotSupportedException: 0 }, false, "java.lang.CloneNotSupportedException", { jl_CloneNotSupportedException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_CloneNotSupportedException.prototype.$classData = $d_jl_CloneNotSupportedException; const $isArrayOf_jl_Double = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Double))) }); const $d_jl_Double = new $TypeData().initClass({ jl_Double: 0 }, false, "java.lang.Double", { jl_Double: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }, (void 0), (void 0), (function(x) { return ((typeof x) === "number") })); const $isArrayOf_jl_Float = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Float))) }); const $d_jl_Float = new $TypeData().initClass({ jl_Float: 0 }, false, "java.lang.Float", { jl_Float: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }, (void 0), (void 0), (function(x) { return $isFloat(x) })); const $isArrayOf_jl_Integer = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Integer))) }); const $d_jl_Integer = new $TypeData().initClass({ jl_Integer: 0 }, false, "java.lang.Integer", { jl_Integer: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }, (void 0), (void 0), (function(x) { return $isInt(x) })); class $c_jl_InterruptedException { } const $isArrayOf_jl_InterruptedException = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_InterruptedException))) }); class $c_jl_LinkageError { } const $isArrayOf_jl_LinkageError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_LinkageError))) }); const $isArrayOf_jl_Long = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Long))) }); const $d_jl_Long = new $TypeData().initClass({ jl_Long: 0 }, false, "java.lang.Long", { jl_Long: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }, (void 0), (void 0), (function(x) { return (x instanceof $c_sjsr_RuntimeLong) })); class $c_jl_RuntimeException extends $c_jl_Exception { init___T(s) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $d_jl_RuntimeException = new $TypeData().initClass({ jl_RuntimeException: 0 }, false, "java.lang.RuntimeException", { jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_RuntimeException.prototype.$classData = $d_jl_RuntimeException; const $isArrayOf_jl_Short = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_Short))) }); const $d_jl_Short = new $TypeData().initClass({ jl_Short: 0 }, false, "java.lang.Short", { jl_Short: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }, (void 0), (void 0), (function(x) { return $isShort(x) })); class $c_jl_StringBuffer extends $c_O { constructor() { super(); this.builder$1 = null }; init___() { $c_jl_StringBuffer.prototype.init___jl_StringBuilder.call(this, new $c_jl_StringBuilder().init___()); return this }; append__jl_CharSequence__jl_StringBuffer(s) { const this$1 = this.builder$1; this$1.java$lang$StringBuilder$$content$f = (("" + this$1.java$lang$StringBuilder$$content$f) + s); return this }; subSequence__I__I__jl_CharSequence(start, end) { const this$1 = this.builder$1; return this$1.substring__I__I__T(start, end) }; toString__T() { return this.builder$1.java$lang$StringBuilder$$content$f }; append__jl_CharSequence__jl_Appendable(csq) { return this.append__jl_CharSequence__jl_StringBuffer(csq) }; append__T__jl_StringBuffer(str) { const this$1 = this.builder$1; this$1.java$lang$StringBuilder$$content$f = (("" + this$1.java$lang$StringBuilder$$content$f) + str); return this }; length__I() { return this.builder$1.length__I() }; init___jl_StringBuilder(builder) { this.builder$1 = builder; return this }; append__C__jl_StringBuffer(c) { this.builder$1.append__C__jl_StringBuilder(c); return this }; charAt__I__C(index) { return this.builder$1.charAt__I__C(index) }; } const $d_jl_StringBuffer = new $TypeData().initClass({ jl_StringBuffer: 0 }, false, "java.lang.StringBuffer", { jl_StringBuffer: 1, O: 1, jl_CharSequence: 1, jl_Appendable: 1, Ljava_io_Serializable: 1 }); $c_jl_StringBuffer.prototype.$classData = $d_jl_StringBuffer; class $c_jl_StringBuilder extends $c_O { constructor() { super(); this.java$lang$StringBuilder$$content$f = null }; setLength__I__V(newLength) { if ((newLength < 0)) { throw new $c_jl_StringIndexOutOfBoundsException().init___I(newLength) }; let newContent = this.java$lang$StringBuilder$$content$f; const thiz = newContent; const additional = ((newLength - (thiz.length | 0)) | 0); if ((additional < 0)) { const thiz$1 = newContent; newContent = thiz$1.substring(0, newLength) } else { let i = 0; while ((i !== additional)) { newContent = (newContent + "\u0000"); i = ((1 + i) | 0) } }; this.java$lang$StringBuilder$$content$f = newContent }; init___() { this.java$lang$StringBuilder$$content$f = ""; return this }; subSequence__I__I__jl_CharSequence(start, end) { return this.substring__I__I__T(start, end) }; toString__T() { return this.java$lang$StringBuilder$$content$f }; append__jl_CharSequence__jl_Appendable(csq) { this.java$lang$StringBuilder$$content$f = (("" + this.java$lang$StringBuilder$$content$f) + csq); return this }; init___I(initialCapacity) { $c_jl_StringBuilder.prototype.init___.call(this); if ((initialCapacity < 0)) { throw new $c_jl_NegativeArraySizeException().init___() }; return this }; append__jl_CharSequence__I__I__jl_StringBuilder(s, start, end) { const s$1 = $charSequenceSubSequence(((s === null) ? "null" : s), start, end); this.java$lang$StringBuilder$$content$f = (("" + this.java$lang$StringBuilder$$content$f) + s$1); return this }; length__I() { const thiz = this.java$lang$StringBuilder$$content$f; return (thiz.length | 0) }; append__C__jl_StringBuilder(c) { const str = $g.String.fromCharCode(c); this.java$lang$StringBuilder$$content$f = (("" + this.java$lang$StringBuilder$$content$f) + str); return this }; substring__I__I__T(start, end) { const thiz = this.java$lang$StringBuilder$$content$f; return thiz.substring(start, end) }; init___T(str) { $c_jl_StringBuilder.prototype.init___.call(this); if ((str === null)) { throw new $c_jl_NullPointerException().init___() }; this.java$lang$StringBuilder$$content$f = str; return this }; charAt__I__C(index) { const thiz = this.java$lang$StringBuilder$$content$f; return (65535 & (thiz.charCodeAt(index) | 0)) }; } const $d_jl_StringBuilder = new $TypeData().initClass({ jl_StringBuilder: 0 }, false, "java.lang.StringBuilder", { jl_StringBuilder: 1, O: 1, jl_CharSequence: 1, jl_Appendable: 1, Ljava_io_Serializable: 1 }); $c_jl_StringBuilder.prototype.$classData = $d_jl_StringBuilder; class $c_jl_ThreadDeath { } const $isArrayOf_jl_ThreadDeath = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_ThreadDeath))) }); class $c_jl_VirtualMachineError { } const $isArrayOf_jl_VirtualMachineError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_VirtualMachineError))) }); class $c_ju_Formatter extends $c_O { constructor() { super(); this.dest$1 = null; this.stringOutput$1 = null; this.java$util$Formatter$$closed$f = false; this.java$util$Formatter$$lastIOException$f = null }; init___() { $c_ju_Formatter.prototype.init___jl_Appendable.call(this, null); return this }; sendToDest__p1__T__T__V(s1, s2) { if ((this.dest$1 === null)) { this.stringOutput$1 = ((("" + this.stringOutput$1) + s1) + s2) } else { this.sendToDestSlowPath__p1__sjs_js_Array__V([s1, s2]) } }; flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags$2, invalidFlags$1, conversion$2) { throw new $c_ju_FormatFlagsConversionMismatchException().init___T__C(this.flagsToString__p1__I__T((flags$2 & invalidFlags$1)), conversion$2) }; computerizedScientificNotation__p1__D__I__Z__T(x, precision, forceDecimalSep) { const s1 = x.toExponential(precision); const s2 = (((x === 0.0) && ((1 / x) < 0)) ? ("-" + s1) : s1); const len = (s2.length | 0); const index = (((-3) + len) | 0); let s3; if (((65535 & (s2.charCodeAt(index) | 0)) !== 101)) { s3 = s2 } else { const endIndex = (((-1) + len) | 0); const jsx$1 = s2.substring(0, endIndex); const beginIndex = (((-1) + len) | 0); s3 = ((jsx$1 + "0") + s2.substring(beginIndex)) }; if (((!forceDecimalSep) || ((s3.indexOf(".") | 0) >= 0))) { return s3 } else { const pos = (s3.indexOf("e") | 0); return ((s3.substring(0, pos) + ".") + s3.substring(pos)) } }; strRepeat__p1__T__I__T(s, times) { let result = ""; let i = 0; while ((i !== times)) { result = (("" + result) + s); i = ((1 + i) | 0) }; return result }; padAndSendToDestNoZeroPad__p1__I__I__T__V(flags, width, str) { const len = (str.length | 0); if ((len >= width)) { this.sendToDest__p1__T__V(str) } else if (((1 & flags) !== 0)) { this.sendToDest__p1__T__T__V(str, this.strRepeat__p1__T__I__T(" ", ((width - len) | 0))) } else { this.sendToDest__p1__T__T__V(this.strRepeat__p1__T__I__T(" ", ((width - len) | 0)), str) } }; applyUpperCase__p1__I__T__T(flags, str) { return (((256 & flags) !== 0) ? str.toUpperCase() : str) }; insertGroupingSeps__p1__T__T(s) { const len = (s.length | 0); let index = 0; while (true) { let jsx$1; if ((index !== len)) { const index$1 = index; const c = (65535 & (s.charCodeAt(index$1) | 0)); jsx$1 = ((c >= 48) && (c <= 57)) } else { jsx$1 = false }; if (jsx$1) { index = ((1 + index) | 0) } else { break } }; index = (((-3) + index) | 0); if ((index <= 0)) { return s } else { const beginIndex = index; let result = s.substring(beginIndex); while ((index > 3)) { const next = (((-3) + index) | 0); const endIndex = index; result = ((s.substring(next, endIndex) + ",") + result); index = next }; const endIndex$1 = index; return ((s.substring(0, endIndex$1) + ",") + result) } }; toString__T() { if (this.java$util$Formatter$$closed$f) { throw new $c_ju_FormatterClosedException().init___() }; return ((this.dest$1 === null) ? this.stringOutput$1 : this.dest$1.toString__T()) }; flagsToString__p1__I__T(flags) { return ((((((((((1 & flags) !== 0) ? "-" : "") + (((2 & flags) !== 0) ? "#" : "")) + (((4 & flags) !== 0) ? "+" : "")) + (((8 & flags) !== 0) ? " " : "")) + (((16 & flags) !== 0) ? "0" : "")) + (((32 & flags) !== 0) ? "," : "")) + (((64 & flags) !== 0) ? "(" : "")) + (((128 & flags) !== 0) ? "<" : "")) }; init___jl_Appendable(dest) { this.dest$1 = dest; this.stringOutput$1 = ""; this.java$util$Formatter$$closed$f = false; this.java$util$Formatter$$lastIOException$f = null; return this }; parsePositiveIntSilent__p1__sjs_js_UndefOr__I__I(capture, $default) { if ((capture === (void 0))) { return $default } else { const s = capture; const x = (+$g.parseInt(s, 10)); return ((x <= 2147483647) ? $doubleToInt(x) : (-1)) } }; generalScientificNotation__p1__D__I__Z__T(x, precision, forceDecimalSep) { const m = (+$g.Math.abs(x)); const p = ((precision === 0) ? 1 : precision); if (((m >= 1.0E-4) && (m < (+$g.Math.pow(10.0, p))))) { const a = (+$g.Math.log10(m)); const sig0 = $doubleToInt((+$g.Math.ceil(a))); const sig = (((+$g.Math.pow(10.0, sig0)) <= m) ? ((1 + sig0) | 0) : sig0); const a$1 = ((p - sig) | 0); return this.decimalNotation__p1__D__I__Z__T(x, ((a$1 > 0) ? a$1 : 0), forceDecimalSep) } else { return this.computerizedScientificNotation__p1__D__I__Z__T(x, (((-1) + p) | 0), forceDecimalSep) } }; formatArg__p1__O__C__I__I__I__V(arg, conversion, flags, width, precision) { switch (conversion) { case 98: case 66: { if (((126 & flags) !== 0)) { this.flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags, 126, conversion) }; const str = (((arg === false) || (arg === null)) ? "false" : "true"); this.formatNonNumericString__p1__I__I__I__T__V(flags, width, precision, str); break } case 104: case 72: { if (((126 & flags) !== 0)) { this.flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags, 126, conversion) }; let str$2; if ((arg === null)) { str$2 = "null" } else { const i = $objectHashCode(arg); const x = (+(i >>> 0)); str$2 = x.toString(16) }; this.formatNonNumericString__p1__I__I__I__T__V(flags, width, precision, str$2); break } case 115: case 83: { if ($is_ju_Formattable(arg)) { const x2 = arg; if (((124 & flags) !== 0)) { this.flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags, 124, conversion) }; const formattableFlags = (((((1 & flags) !== 0) ? 1 : 0) | (((2 & flags) !== 0) ? 4 : 0)) | (((256 & flags) !== 0) ? 2 : 0)); x2.formatTo__ju_Formatter__I__I__I__V(this, formattableFlags, width, precision) } else { if (((126 & flags) !== 0)) { this.flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags, 126, conversion) }; const str$3 = ("" + arg); this.formatNonNumericString__p1__I__I__I__T__V(flags, width, precision, str$3) }; break } case 99: case 67: { if (((126 & flags) !== 0)) { this.flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags, 126, conversion) }; if ((precision >= 0)) { throw new $c_ju_IllegalFormatPrecisionException().init___I(precision) }; if ((arg instanceof $c_jl_Character)) { let x2$2; if ((arg === null)) { x2$2 = 0 } else { const this$10 = arg; x2$2 = this$10.value$1 }; this.formatNonNumericString__p1__I__I__I__T__V(flags, width, (-1), $g.String.fromCharCode(x2$2)) } else if ($isInt(arg)) { const x3 = (arg | 0); if ((!((x3 >= 0) && (x3 <= 1114111)))) { throw new $c_ju_IllegalFormatCodePointException().init___I(x3) }; let str$4; if ((x3 < 65536)) { str$4 = $g.String.fromCharCode(x3) } else { const jsx$1 = $g.String; const value = (55296 | (((-64) + (x3 >> 10)) | 0)); const value$1 = (56320 | (1023 & x3)); str$4 = jsx$1.fromCharCode(value, value$1) }; this.formatNonNumericString__p1__I__I__I__T__V(flags, width, (-1), str$4) } else { this.formatNullOrThrowIllegalFormatConversion$1__p1__O__I__I__I__C__V(arg, flags, width, precision, conversion) }; break } case 100: { if (((2 & flags) !== 0)) { this.flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags, 2, conversion) }; if ((((17 & flags) === 17) || ((12 & flags) === 12))) { this.illegalFlags$1__p1__I__sr_Nothing$(flags) }; if ((precision >= 0)) { throw new $c_ju_IllegalFormatPrecisionException().init___I(precision) }; if ($isInt(arg)) { const x2$3 = (arg | 0); this.java$util$Formatter$$formatNumericString__I__I__T__V(flags, width, ("" + x2$3)) } else if ((arg instanceof $c_sjsr_RuntimeLong)) { const t = $uJ(arg); const lo = t.lo$2; const hi = t.hi$2; this.java$util$Formatter$$formatNumericString__I__I__T__V(flags, width, $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toString__I__I__T(lo, hi)) } else { this.formatNullOrThrowIllegalFormatConversion$1__p1__O__I__I__I__C__V(arg, flags, width, precision, conversion) }; break } case 111: { if (((108 & flags) !== 0)) { this.flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags, 108, conversion) }; if (((17 & flags) === 17)) { this.illegalFlags$1__p1__I__sr_Nothing$(flags) }; if ((precision >= 0)) { throw new $c_ju_IllegalFormatPrecisionException().init___I(precision) }; const prefix = (((2 & flags) !== 0) ? "0" : ""); if ($isInt(arg)) { const x2$4 = (arg | 0); const x$1 = (+(x2$4 >>> 0)); const jsx$2 = x$1.toString(8); this.padAndSendToDest__p1__I__I__T__T__V(flags, width, prefix, jsx$2) } else if ((arg instanceof $c_sjsr_RuntimeLong)) { const t$1 = $uJ(arg); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; const this$31 = $m_jl_Long$(); this.padAndSendToDest__p1__I__I__T__T__V(flags, width, prefix, this$31.java$lang$Long$$toOctalString__I__I__T(lo$1, hi$1)) } else { this.formatNullOrThrowIllegalFormatConversion$1__p1__O__I__I__I__C__V(arg, flags, width, precision, conversion) }; break } case 120: case 88: { if (((108 & flags) !== 0)) { this.flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags, 108, conversion) }; if (((17 & flags) === 17)) { this.illegalFlags$1__p1__I__sr_Nothing$(flags) }; if ((precision >= 0)) { throw new $c_ju_IllegalFormatPrecisionException().init___I(precision) }; const prefix$2 = (((2 & flags) === 0) ? "" : (((256 & flags) !== 0) ? "0X" : "0x")); if ($isInt(arg)) { const x2$5 = (arg | 0); const x$2 = (+(x2$5 >>> 0)); const jsx$3 = x$2.toString(16); this.padAndSendToDest__p1__I__I__T__T__V(flags, width, prefix$2, this.applyUpperCase__p1__I__T__T(flags, jsx$3)) } else if ((arg instanceof $c_sjsr_RuntimeLong)) { const t$2 = $uJ(arg); const lo$2 = t$2.lo$2; const hi$2 = t$2.hi$2; const this$38 = $m_jl_Long$(); this.padAndSendToDest__p1__I__I__T__T__V(flags, width, prefix$2, this.applyUpperCase__p1__I__T__T(flags, this$38.java$lang$Long$$toHexString__I__I__T(lo$2, hi$2))) } else { this.formatNullOrThrowIllegalFormatConversion$1__p1__O__I__I__I__C__V(arg, flags, width, precision, conversion) }; break } case 101: case 69: { if (((32 & flags) !== 0)) { this.flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags, 32, conversion) }; if ((((17 & flags) === 17) || ((12 & flags) === 12))) { this.illegalFlags$1__p1__I__sr_Nothing$(flags) }; if (((typeof arg) === "number")) { const x2$1 = (+arg); if (((x2$1 !== x2$1) || ((x2$1 === Infinity) || (x2$1 === (-Infinity))))) { this.java$util$Formatter$$formatNaNOrInfinite__I__I__D__V(flags, width, x2$1) } else { const forceDecimalSep = ((2 & flags) !== 0); const arg2 = ((precision >= 0) ? precision : 6); this.java$util$Formatter$$formatNumericString__I__I__T__V(flags, width, this.computerizedScientificNotation__p1__D__I__Z__T(x2$1, arg2, forceDecimalSep)) } } else { this.formatNullOrThrowIllegalFormatConversion$1__p1__O__I__I__I__C__V(arg, flags, width, precision, conversion) }; break } case 103: case 71: { if (((2 & flags) !== 0)) { this.flagsConversionMismatch$1__p1__I__I__C__sr_Nothing$(flags, 2, conversion) }; if ((((17 & flags) === 17) || ((12 & flags) === 12))) { this.illegalFlags$1__p1__I__sr_Nothing$(flags) }; if (((typeof arg) === "number")) { const x2$6 = (+arg); if (((x2$6 !== x2$6) || ((x2$6 === Infinity) || (x2$6 === (-Infinity))))) { this.java$util$Formatter$$formatNaNOrInfinite__I__I__D__V(flags, width, x2$6) } else { const forceDecimalSep$1 = ((2 & flags) !== 0); const arg2$1 = ((precision >= 0) ? precision : 6); this.java$util$Formatter$$formatNumericString__I__I__T__V(flags, width, this.generalScientificNotation__p1__D__I__Z__T(x2$6, arg2$1, forceDecimalSep$1)) } } else { this.formatNullOrThrowIllegalFormatConversion$1__p1__O__I__I__I__C__V(arg, flags, width, precision, conversion) }; break } case 102: { if ((((17 & flags) === 17) || ((12 & flags) === 12))) { this.illegalFlags$1__p1__I__sr_Nothing$(flags) }; if (((typeof arg) === "number")) { const x2$7 = (+arg); if (((x2$7 !== x2$7) || ((x2$7 === Infinity) || (x2$7 === (-Infinity))))) { this.java$util$Formatter$$formatNaNOrInfinite__I__I__D__V(flags, width, x2$7) } else { const forceDecimalSep$2 = ((2 & flags) !== 0); const arg2$2 = ((precision >= 0) ? precision : 6); this.java$util$Formatter$$formatNumericString__I__I__T__V(flags, width, this.decimalNotation__p1__D__I__Z__T(x2$7, arg2$2, forceDecimalSep$2)) } } else { this.formatNullOrThrowIllegalFormatConversion$1__p1__O__I__I__I__C__V(arg, flags, width, precision, conversion) }; break } case 37: { if (((254 & flags) !== 0)) { this.illegalFlags$2__p1__I__sr_Nothing$(flags) }; if ((precision >= 0)) { throw new $c_ju_IllegalFormatPrecisionException().init___I(precision) }; if ((((1 & flags) !== 0) && (width < 0))) { throw new $c_ju_MissingFormatWidthException().init___T("%-%") }; this.padAndSendToDestNoZeroPad__p1__I__I__T__V(flags, width, "%"); break } case 110: { if (((255 & flags) !== 0)) { this.illegalFlags$2__p1__I__sr_Nothing$(flags) }; if ((precision >= 0)) { throw new $c_ju_IllegalFormatPrecisionException().init___I(precision) }; if ((width >= 0)) { throw new $c_ju_IllegalFormatWidthException().init___I(width) }; this.sendToDest__p1__T__V("\n"); break } default: { throw new $c_ju_UnknownFormatConversionException().init___T($g.String.fromCharCode(conversion)) } } }; sendToDest__p1__T__T__T__V(s1, s2, s3) { if ((this.dest$1 === null)) { this.stringOutput$1 = ((this.stringOutput$1 + (("" + s1) + s2)) + s3) } else { this.sendToDestSlowPath__p1__sjs_js_Array__V([s1, s2, s3]) } }; padAndSendToDest__p1__I__I__T__T__V(flags, width, prefix, str) { const len = (((prefix.length | 0) + (str.length | 0)) | 0); if ((len >= width)) { this.sendToDest__p1__T__T__V(prefix, str) } else if (((16 & flags) !== 0)) { this.sendToDest__p1__T__T__T__V(prefix, this.strRepeat__p1__T__I__T("0", ((width - len) | 0)), str) } else if (((1 & flags) !== 0)) { this.sendToDest__p1__T__T__T__V(prefix, str, this.strRepeat__p1__T__I__T(" ", ((width - len) | 0))) } else { this.sendToDest__p1__T__T__T__V(this.strRepeat__p1__T__I__T(" ", ((width - len) | 0)), prefix, str) } }; java$util$Formatter$$formatNaNOrInfinite__I__I__D__V(flags, width, x) { const str = ((x !== x) ? "NaN" : ((x > 0.0) ? (((4 & flags) !== 0) ? "+Infinity" : (((8 & flags) !== 0) ? " Infinity" : "Infinity")) : (((64 & flags) !== 0) ? "(Infinity)" : "-Infinity"))); this.padAndSendToDestNoZeroPad__p1__I__I__T__V(flags, width, this.applyUpperCase__p1__I__T__T(flags, str)) }; sendToDestSlowPath__p1__sjs_js_Array__V(ss) { try { let i = 0; const len = (ss.length | 0); while ((i < len)) { const index = i; const arg1 = ss[index]; const x$1 = arg1; this.dest$1.append__jl_CharSequence__jl_Appendable(x$1); i = ((1 + i) | 0) } } catch (e) { if ((e instanceof $c_Ljava_io_IOException)) { const th = e; this.java$util$Formatter$$lastIOException$f = th } else { throw e } } }; formatNullOrThrowIllegalFormatConversion$1__p1__O__I__I__I__C__V(arg$1, flags$1, width$1, precision$1, conversion$1) { if ((arg$1 === null)) { this.formatNonNumericString__p1__I__I__I__T__V(flags$1, width$1, precision$1, "null") } else { throw new $c_ju_IllegalFormatConversionException().init___C__jl_Class(conversion$1, $objectGetClass(arg$1)) } }; format__T__AO__ju_Formatter(format, args) { if (this.java$util$Formatter$$closed$f) { throw new $c_ju_FormatterClosedException().init___() }; let lastImplicitArgIndex = 0; let lastArgIndex = 0; const fmtLength = (format.length | 0); let fmtIndex = 0; while ((fmtIndex !== fmtLength)) { const fromIndex = fmtIndex; const nextPercentIndex = (format.indexOf("%", fromIndex) | 0); if ((nextPercentIndex < 0)) { const beginIndex = fmtIndex; this.sendToDest__p1__T__V(format.substring(beginIndex)); return this }; const beginIndex$1 = fmtIndex; this.sendToDest__p1__T__V(format.substring(beginIndex$1, nextPercentIndex)); const formatSpecifierIndex = ((1 + nextPercentIndex) | 0); const re = $m_ju_Formatter$().java$util$Formatter$$FormatSpecifier$1; re.lastIndex = formatSpecifierIndex; const execResult = re.exec(format); if (((execResult === null) || ((execResult.index | 0) !== formatSpecifierIndex))) { let conversion; if ((formatSpecifierIndex === fmtLength)) { conversion = "%" } else { const endIndex = ((1 + formatSpecifierIndex) | 0); conversion = format.substring(formatSpecifierIndex, endIndex) }; throw new $c_ju_UnknownFormatConversionException().init___T(conversion) }; fmtIndex = (re.lastIndex | 0); const index = (((-1) + fmtIndex) | 0); const conversion$2 = (65535 & (format.charCodeAt(index) | 0)); const flags = this.parseFlags__p1__T__C__I(execResult[2], conversion$2); const width = this.parsePositiveIntSilent__p1__sjs_js_UndefOr__I__I(execResult[3], (-1)); const precision = this.parsePositiveIntSilent__p1__sjs_js_UndefOr__I__I(execResult[4], (-1)); let arg; if (((conversion$2 === 37) || (conversion$2 === 110))) { arg = null } else { if ((((1 & flags) !== 0) && (width < 0))) { throw new $c_ju_MissingFormatWidthException().init___T(("%" + execResult[0])) }; let argIndex; if (((128 & flags) !== 0)) { argIndex = lastArgIndex } else { const i = this.parsePositiveIntSilent__p1__sjs_js_UndefOr__I__I(execResult[1], 0); if ((i === 0)) { lastImplicitArgIndex = ((1 + lastImplicitArgIndex) | 0); argIndex = lastImplicitArgIndex } else { argIndex = ((i < 0) ? lastArgIndex : i) } }; if (((argIndex <= 0) || (argIndex > args.u.length))) { const conversionStr = $g.String.fromCharCode(conversion$2); if ((("bBhHsHcCdoxXeEgGfn%".indexOf(conversionStr) | 0) < 0)) { throw new $c_ju_UnknownFormatConversionException().init___T(conversionStr) } else { throw new $c_ju_MissingFormatArgumentException().init___T(("%" + execResult[0])) } }; lastArgIndex = argIndex; arg = args.u[(((-1) + argIndex) | 0)] }; this.formatArg__p1__O__C__I__I__I__V(arg, conversion$2, flags, width, precision) }; return this }; decimalNotation__p1__D__I__Z__T(x, precision, forceDecimalSep) { const s1 = x.toFixed(precision); const s2 = (((x === 0.0) && ((1 / x) < 0)) ? ("-" + s1) : s1); return ((forceDecimalSep && ((s2.indexOf(".") | 0) < 0)) ? (s2 + ".") : s2) }; formatNonNumericString__p1__I__I__I__T__V(flags, width, precision, str) { const truncatedStr = ((precision < 0) ? str : str.substring(0, precision)); this.padAndSendToDestNoZeroPad__p1__I__I__T__V(flags, width, this.applyUpperCase__p1__I__T__T(flags, truncatedStr)) }; illegalFlags$1__p1__I__sr_Nothing$(flags$2) { throw new $c_ju_IllegalFormatFlagsException().init___T(this.flagsToString__p1__I__T(flags$2)) }; illegalFlags$2__p1__I__sr_Nothing$(flags$3) { throw new $c_ju_IllegalFormatFlagsException().init___T(this.flagsToString__p1__I__T(flags$3)) }; sendToDest__p1__T__V(s) { if ((this.dest$1 === null)) { this.stringOutput$1 = (("" + this.stringOutput$1) + s) } else { this.sendToDestSlowPath__p1__sjs_js_Array__V([s]) } }; java$util$Formatter$$formatNumericString__I__I__T__V(flags, width, str) { if ((((str.length | 0) >= width) && ((108 & flags) === 0))) { this.sendToDest__p1__T__V(this.applyUpperCase__p1__I__T__T(flags, str)) } else if (((124 & flags) === 0)) { this.formatNonNumericString__p1__I__I__I__T__V(flags, width, (-1), str) } else { let x1_$_$$und1$f; let x1_$_$$und2$f; if (((65535 & (str.charCodeAt(0) | 0)) !== 45)) { if (((4 & flags) !== 0)) { const jsx$1_$_$$und1$f = "+"; const jsx$1_$_$$und2$f = str; x1_$_$$und1$f = jsx$1_$_$$und1$f; x1_$_$$und2$f = jsx$1_$_$$und2$f } else if (((8 & flags) !== 0)) { const jsx$2_$_$$und1$f = " "; const jsx$2_$_$$und2$f = str; x1_$_$$und1$f = jsx$2_$_$$und1$f; x1_$_$$und2$f = jsx$2_$_$$und2$f } else { const jsx$3_$_$$und1$f = ""; const jsx$3_$_$$und2$f = str; x1_$_$$und1$f = jsx$3_$_$$und1$f; x1_$_$$und2$f = jsx$3_$_$$und2$f } } else if (((64 & flags) !== 0)) { const _2 = (str.substring(1) + ")"); const jsx$4_$_$$und1$f = "("; const jsx$4_$_$$und2$f = _2; x1_$_$$und1$f = jsx$4_$_$$und1$f; x1_$_$$und2$f = jsx$4_$_$$und2$f } else { const _2$1 = str.substring(1); const jsx$5_$_$$und1$f = "-"; const jsx$5_$_$$und2$f = _2$1; x1_$_$$und1$f = jsx$5_$_$$und1$f; x1_$_$$und2$f = jsx$5_$_$$und2$f }; const prefix = x1_$_$$und1$f; const rest0 = x1_$_$$und2$f; const rest = (((32 & flags) !== 0) ? this.insertGroupingSeps__p1__T__T(rest0) : rest0); this.padAndSendToDest__p1__I__I__T__T__V(flags, width, prefix, this.applyUpperCase__p1__I__T__T(flags, rest)) } }; parseFlags__p1__T__C__I(flags, conversion) { let bits = ((conversion <= 90) ? 256 : 0); const len = (flags.length | 0); let i = 0; while ((i !== len)) { const index = i; const f = (65535 & (flags.charCodeAt(index) | 0)); let bit; switch (f) { case 45: { bit = 1; break } case 35: { bit = 2; break } case 43: { bit = 4; break } case 32: { bit = 8; break } case 48: { bit = 16; break } case 44: { bit = 32; break } case 40: { bit = 64; break } case 60: { bit = 128; break } default: { throw new $c_s_MatchError().init___O(new $c_jl_Character().init___C(f)) } }; if (((bits & bit) !== 0)) { throw new $c_ju_DuplicateFormatFlagsException().init___T($g.String.fromCharCode(f)) }; bits = (bits | bit); i = ((1 + i) | 0) }; return bits }; close__V() { if (((!this.java$util$Formatter$$closed$f) && (this.dest$1 !== null))) { const x1 = this.dest$1; if ($is_Ljava_io_Closeable(x1)) { try { x1.close__V() } catch (e) { if ((e instanceof $c_Ljava_io_IOException)) { const th = e; this.java$util$Formatter$$lastIOException$f = th } else { throw e } } } }; this.java$util$Formatter$$closed$f = true }; } const $d_ju_Formatter = new $TypeData().initClass({ ju_Formatter: 0 }, false, "java.util.Formatter", { ju_Formatter: 1, O: 1, Ljava_io_Closeable: 1, jl_AutoCloseable: 1, Ljava_io_Flushable: 1 }); $c_ju_Formatter.prototype.$classData = $d_ju_Formatter; class $c_ju_concurrent_ExecutionException extends $c_jl_Exception { init___T__jl_Throwable(message, cause) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, message, cause, true, true); return this }; } const $d_ju_concurrent_ExecutionException = new $TypeData().initClass({ ju_concurrent_ExecutionException: 0 }, false, "java.util.concurrent.ExecutionException", { ju_concurrent_ExecutionException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_concurrent_ExecutionException.prototype.$classData = $d_ju_concurrent_ExecutionException; class $c_s_Array$ extends $c_s_FallbackArrayBuilding { init___() { return this }; slowcopy__p2__O__I__O__I__I__V(src, srcPos, dest, destPos, length) { let i = srcPos; let j = destPos; const srcUntil = ((srcPos + length) | 0); while ((i < srcUntil)) { $m_sr_ScalaRunTime$().array$undupdate__O__I__O__V(dest, j, $m_sr_ScalaRunTime$().array$undapply__O__I__O(src, i)); i = ((1 + i) | 0); j = ((1 + j) | 0) } }; copy__O__I__O__I__I__V(src, srcPos, dest, destPos, length) { const srcClass = $objectGetClass(src); if ((srcClass.isArray__Z() && $objectGetClass(dest).isAssignableFrom__jl_Class__Z(srcClass))) { $systemArraycopy(src, srcPos, dest, destPos, length) } else { this.slowcopy__p2__O__I__O__I__I__V(src, srcPos, dest, destPos, length) } }; } const $d_s_Array$ = new $TypeData().initClass({ s_Array$: 0 }, false, "scala.Array$", { s_Array$: 1, s_FallbackArrayBuilding: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_Array$.prototype.$classData = $d_s_Array$; let $n_s_Array$ = (void 0); const $m_s_Array$ = (function() { if ((!$n_s_Array$)) { $n_s_Array$ = new $c_s_Array$().init___() }; return $n_s_Array$ }); class $c_s_NotImplementedError extends $c_jl_Error { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, "an implementation is missing", null, true, true); return this }; } const $d_s_NotImplementedError = new $TypeData().initClass({ s_NotImplementedError: 0 }, false, "scala.NotImplementedError", { s_NotImplementedError: 1, jl_Error: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_s_NotImplementedError.prototype.$classData = $d_s_NotImplementedError; class $c_s_Predef$$eq$colon$eq extends $c_O { toString__T() { return "" }; } class $c_s_Predef$$less$colon$less extends $c_O { toString__T() { return "" }; } class $c_s_concurrent_Future$InternalCallbackExecutor$ extends $c_O { constructor() { super(); this.scala$concurrent$BatchingExecutor$$$undtasksLocal$1 = null }; init___() { $n_s_concurrent_Future$InternalCallbackExecutor$ = this; this.scala$concurrent$BatchingExecutor$$$undtasksLocal$1 = new $c_jl_ThreadLocal().init___(); return this }; reportFailure__jl_Throwable__V(t) { throw new $c_jl_IllegalStateException().init___T__jl_Throwable("problem in scala.concurrent internal callback", t) }; execute__jl_Runnable__V(runnable) { $f_s_concurrent_BatchingExecutor__execute__jl_Runnable__V(this, runnable) }; } const $d_s_concurrent_Future$InternalCallbackExecutor$ = new $TypeData().initClass({ s_concurrent_Future$InternalCallbackExecutor$: 0 }, false, "scala.concurrent.Future$InternalCallbackExecutor$", { s_concurrent_Future$InternalCallbackExecutor$: 1, O: 1, s_concurrent_ExecutionContext: 1, s_concurrent_BatchingExecutor: 1, ju_concurrent_Executor: 1 }); $c_s_concurrent_Future$InternalCallbackExecutor$.prototype.$classData = $d_s_concurrent_Future$InternalCallbackExecutor$; let $n_s_concurrent_Future$InternalCallbackExecutor$ = (void 0); const $m_s_concurrent_Future$InternalCallbackExecutor$ = (function() { if ((!$n_s_concurrent_Future$InternalCallbackExecutor$)) { $n_s_concurrent_Future$InternalCallbackExecutor$ = new $c_s_concurrent_Future$InternalCallbackExecutor$().init___() }; return $n_s_concurrent_Future$InternalCallbackExecutor$ }); const $f_s_concurrent_impl_Promise$KeptPromise$Kept__onComplete__F1__s_concurrent_ExecutionContext__V = (function($thiz, func, executor) { new $c_s_concurrent_impl_CallbackRunnable().init___s_concurrent_ExecutionContext__F1(executor, func).executeWithValue__s_util_Try__V($thiz.result__s_util_Try()) }); class $c_s_math_Equiv$ extends $c_O { init___() { return this }; } const $d_s_math_Equiv$ = new $TypeData().initClass({ s_math_Equiv$: 0 }, false, "scala.math.Equiv$", { s_math_Equiv$: 1, O: 1, s_math_LowPriorityEquiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Equiv$.prototype.$classData = $d_s_math_Equiv$; let $n_s_math_Equiv$ = (void 0); const $m_s_math_Equiv$ = (function() { if ((!$n_s_math_Equiv$)) { $n_s_math_Equiv$ = new $c_s_math_Equiv$().init___() }; return $n_s_math_Equiv$ }); class $c_s_math_Ordering$ extends $c_O { init___() { return this }; } const $d_s_math_Ordering$ = new $TypeData().initClass({ s_math_Ordering$: 0 }, false, "scala.math.Ordering$", { s_math_Ordering$: 1, O: 1, s_math_LowPriorityOrderingImplicits: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Ordering$.prototype.$classData = $d_s_math_Ordering$; let $n_s_math_Ordering$ = (void 0); const $m_s_math_Ordering$ = (function() { if ((!$n_s_math_Ordering$)) { $n_s_math_Ordering$ = new $c_s_math_Ordering$().init___() }; return $n_s_math_Ordering$ }); class $c_s_reflect_NoManifest$ extends $c_O { init___() { return this }; toString__T() { return "" }; } const $d_s_reflect_NoManifest$ = new $TypeData().initClass({ s_reflect_NoManifest$: 0 }, false, "scala.reflect.NoManifest$", { s_reflect_NoManifest$: 1, O: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_reflect_NoManifest$.prototype.$classData = $d_s_reflect_NoManifest$; let $n_s_reflect_NoManifest$ = (void 0); const $m_s_reflect_NoManifest$ = (function() { if ((!$n_s_reflect_NoManifest$)) { $n_s_reflect_NoManifest$ = new $c_s_reflect_NoManifest$().init___() }; return $n_s_reflect_NoManifest$ }); class $c_sc_AbstractIterator extends $c_O { seq__sc_TraversableOnce() { return this }; copyToArray__O__I__V(xs, start) { $f_sc_TraversableOnce__copyToArray__O__I__V(this, xs, start) }; toIterator__sc_Iterator() { return this }; isEmpty__Z() { return $f_sc_Iterator__isEmpty__Z(this) }; toList__sci_List() { const this$1 = $m_sci_List$(); const cbf = this$1.ReusableCBFInstance$2; return $f_sc_TraversableOnce__to__scg_CanBuildFrom__O(this, cbf) }; mkString__T__T(sep) { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, "", sep, "") }; mkString__T__T__T__T(start, sep, end) { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, start, sep, end) }; toString__T() { return "" }; foreach__F1__V(f) { $f_sc_Iterator__foreach__F1__V(this, f) }; foldLeft__O__F2__O(z, op) { return $f_sc_TraversableOnce__foldLeft__O__F2__O(this, z, op) }; toVector__sci_Vector() { $m_sci_Vector$(); const cbf = $m_sc_IndexedSeq$().ReusableCBF$6; return $f_sc_TraversableOnce__to__scg_CanBuildFrom__O(this, cbf) }; size__I() { return $f_sc_TraversableOnce__size__I(this) }; toBuffer__scm_Buffer() { const this$1 = $m_scm_ArrayBuffer$(); const cbf = this$1.ReusableCBFInstance$2; return $f_sc_TraversableOnce__to__scg_CanBuildFrom__O(this, cbf) }; mkString__T() { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, "", "", "") }; toStream__sci_Stream() { return $f_sc_Iterator__toStream__sci_Stream(this) }; addString__scm_StringBuilder__T__T__T__scm_StringBuilder(b, start, sep, end) { return $f_sc_TraversableOnce__addString__scm_StringBuilder__T__T__T__scm_StringBuilder(this, b, start, sep, end) }; $$div$colon__O__F2__O(z, op) { return $f_sc_TraversableOnce__foldLeft__O__F2__O(this, z, op) }; copyToArray__O__I__I__V(xs, start, len) { $f_sc_Iterator__copyToArray__O__I__I__V(this, xs, start, len) }; isTraversableAgain__Z() { return false }; toMap__s_Predef$$less$colon$less__sci_Map(ev) { $m_sci_Map$(); const b = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); while (this.hasNext__Z()) { const arg1 = this.next__O(); b.$$plus$eq__T2__scm_MapBuilder(arg1) }; return b.elems$1 }; drop__I__sc_Iterator(n) { return $f_sc_Iterator__drop__I__sc_Iterator(this, n) }; reduceLeft__F2__O(op) { return $f_sc_TraversableOnce__reduceLeft__F2__O(this, op) }; } class $c_sc_convert_Wrappers$ extends $c_O { constructor() { super(); this.IteratorWrapper$module$1 = null; this.JIteratorWrapper$module$1 = null; this.JEnumerationWrapper$module$1 = null; this.IterableWrapper$module$1 = null; this.JIterableWrapper$module$1 = null; this.JCollectionWrapper$module$1 = null; this.SeqWrapper$module$1 = null; this.MutableSeqWrapper$module$1 = null; this.MutableBufferWrapper$module$1 = null; this.JListWrapper$module$1 = null; this.MutableSetWrapper$module$1 = null; this.JSetWrapper$module$1 = null; this.MutableMapWrapper$module$1 = null; this.JMapWrapper$module$1 = null; this.JConcurrentMapWrapper$module$1 = null; this.DictionaryWrapper$module$1 = null; this.JDictionaryWrapper$module$1 = null; this.JPropertiesWrapper$module$1 = null }; init___() { return this }; } const $d_sc_convert_Wrappers$ = new $TypeData().initClass({ sc_convert_Wrappers$: 0 }, false, "scala.collection.convert.Wrappers$", { sc_convert_Wrappers$: 1, O: 1, sc_convert_Wrappers: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sc_convert_Wrappers$.prototype.$classData = $d_sc_convert_Wrappers$; let $n_sc_convert_Wrappers$ = (void 0); const $m_sc_convert_Wrappers$ = (function() { if ((!$n_sc_convert_Wrappers$)) { $n_sc_convert_Wrappers$ = new $c_sc_convert_Wrappers$().init___() }; return $n_sc_convert_Wrappers$ }); class $c_scg_SetFactory extends $c_scg_GenSetFactory { } class $c_sci_Map$ extends $c_scg_ImmutableMapFactory { constructor() { super(); this.ReusableCBF$4 = null }; init___() { $n_sci_Map$ = this; this.ReusableCBF$4 = new $c_scg_GenMapFactory$MapCanBuildFrom().init___scg_GenMapFactory(this); return this }; scala$collection$immutable$Map$$isHashMapCBF__scg_CanBuildFrom__Z(cbf) { if ((cbf instanceof $c_sc_package$WrappedCanBuildFrom)) { const x2 = cbf; const unwrapped = x2.wrapped__scg_CanBuildFrom(); const this$1 = $m_sci_HashMap$(); return (unwrapped === this$1.ReusableCBF$4) } else { const this$2 = $m_sci_HashMap$(); return (cbf === this$2.ReusableCBF$4) } }; empty__sc_GenMap() { return $m_sci_Map$EmptyMap$() }; scala$collection$immutable$Map$$isMapCBF__scg_CanBuildFrom__Z(cbf) { if ((cbf instanceof $c_sc_package$WrappedCanBuildFrom)) { const x2 = cbf; const unwrapped = x2.wrapped__scg_CanBuildFrom(); return (unwrapped === $m_sci_Map$().ReusableCBF$4) } else { return (cbf === $m_sci_Map$().ReusableCBF$4) } }; } const $d_sci_Map$ = new $TypeData().initClass({ sci_Map$: 0 }, false, "scala.collection.immutable.Map$", { sci_Map$: 1, scg_ImmutableMapFactory: 1, scg_MapFactory: 1, scg_GenMapFactory: 1, O: 1 }); $c_sci_Map$.prototype.$classData = $d_sci_Map$; let $n_sci_Map$ = (void 0); const $m_sci_Map$ = (function() { if ((!$n_sci_Map$)) { $n_sci_Map$ = new $c_sci_Map$().init___() }; return $n_sci_Map$ }); class $c_scm_DefaultEntry extends $c_O { constructor() { super(); this.key$1 = null; this.value$1 = null; this.next$1 = null }; chainString__T() { const jsx$3 = this.key$1; const jsx$2 = this.value$1; let jsx$1; if ((this.next$1 !== null)) { const this$1 = this.next$1; jsx$1 = (" -> " + this$1.chainString__T()) } else { jsx$1 = "" }; return ((((("(kv: " + jsx$3) + ", ") + jsx$2) + ")") + jsx$1) }; init___O__O(key, value) { this.key$1 = key; this.value$1 = value; return this }; toString__T() { return this.chainString__T() }; } const $isArrayOf_scm_DefaultEntry = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_DefaultEntry))) }); const $d_scm_DefaultEntry = new $TypeData().initClass({ scm_DefaultEntry: 0 }, false, "scala.collection.mutable.DefaultEntry", { scm_DefaultEntry: 1, O: 1, scm_HashEntry: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_DefaultEntry.prototype.$classData = $d_scm_DefaultEntry; class $c_scm_GrowingBuilder extends $c_O { constructor() { super(); this.empty$1 = null; this.elems$1 = null }; $$plus$eq__O__scm_GrowingBuilder(x) { this.elems$1.$$plus$eq__O__scg_Growable(x); return this }; init___scg_Growable(empty) { this.empty$1 = empty; this.elems$1 = empty; return this }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__O__scm_GrowingBuilder(elem) }; result__O() { return this.elems$1 }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__O__scm_GrowingBuilder(elem) }; sizeHint__I__V(size) { /**/ }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) }; } const $d_scm_GrowingBuilder = new $TypeData().initClass({ scm_GrowingBuilder: 0 }, false, "scala.collection.mutable.GrowingBuilder", { scm_GrowingBuilder: 1, O: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1 }); $c_scm_GrowingBuilder.prototype.$classData = $d_scm_GrowingBuilder; class $c_scm_Map$ extends $c_scg_MutableMapFactory { constructor() { super(); this.ReusableCBF$4 = null }; init___() { $n_scm_Map$ = this; this.ReusableCBF$4 = new $c_scg_GenMapFactory$MapCanBuildFrom().init___scg_GenMapFactory(this); return this }; empty__sc_Map() { return new $c_scm_HashMap().init___() }; empty__sc_GenMap() { return new $c_scm_HashMap().init___() }; } const $d_scm_Map$ = new $TypeData().initClass({ scm_Map$: 0 }, false, "scala.collection.mutable.Map$", { scm_Map$: 1, scg_MutableMapFactory: 1, scg_MapFactory: 1, scg_GenMapFactory: 1, O: 1 }); $c_scm_Map$.prototype.$classData = $d_scm_Map$; let $n_scm_Map$ = (void 0); const $m_scm_Map$ = (function() { if ((!$n_scm_Map$)) { $n_scm_Map$ = new $c_scm_Map$().init___() }; return $n_scm_Map$ }); class $c_sjs_concurrent_QueueExecutionContext$PromisesExecutionContext extends $c_O { constructor() { super(); this.resolvedUnitPromise$1 = null }; init___() { this.resolvedUnitPromise$1 = $g.Promise.resolve((void 0)); return this }; scala$scalajs$concurrent$QueueExecutionContext$PromisesExecutionContext$$$anonfun$execute$2__sr_BoxedUnit__jl_Runnable__sjs_js_$bar(x$1, runnable$2) { try { runnable$2.run__V() } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { e$2.printStackTrace__Ljava_io_PrintStream__V($m_jl_System$().err$1) } else { throw e } } }; reportFailure__jl_Throwable__V(t) { t.printStackTrace__Ljava_io_PrintStream__V($m_jl_System$().err$1) }; execute__jl_Runnable__V(runnable) { this.resolvedUnitPromise$1.then((function(arg$outer, runnable$2) { return (function(arg1$2) { const arg1 = arg1$2; return arg$outer.scala$scalajs$concurrent$QueueExecutionContext$PromisesExecutionContext$$$anonfun$execute$2__sr_BoxedUnit__jl_Runnable__sjs_js_$bar(arg1, runnable$2) }) })(this, runnable)) }; } const $d_sjs_concurrent_QueueExecutionContext$PromisesExecutionContext = new $TypeData().initClass({ sjs_concurrent_QueueExecutionContext$PromisesExecutionContext: 0 }, false, "scala.scalajs.concurrent.QueueExecutionContext$PromisesExecutionContext", { sjs_concurrent_QueueExecutionContext$PromisesExecutionContext: 1, O: 1, s_concurrent_ExecutionContextExecutor: 1, s_concurrent_ExecutionContext: 1, ju_concurrent_Executor: 1 }); $c_sjs_concurrent_QueueExecutionContext$PromisesExecutionContext.prototype.$classData = $d_sjs_concurrent_QueueExecutionContext$PromisesExecutionContext; class $c_sjs_concurrent_QueueExecutionContext$TimeoutsExecutionContext extends $c_O { init___() { return this }; reportFailure__jl_Throwable__V(t) { t.printStackTrace__Ljava_io_PrintStream__V($m_jl_System$().err$1) }; execute__jl_Runnable__V(runnable) { $g.setTimeout((function($this, runnable$1) { return (function() { try { runnable$1.run__V() } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { e$2.printStackTrace__Ljava_io_PrintStream__V($m_jl_System$().err$1) } else { throw e } } }) })(this, runnable), 0) }; } const $d_sjs_concurrent_QueueExecutionContext$TimeoutsExecutionContext = new $TypeData().initClass({ sjs_concurrent_QueueExecutionContext$TimeoutsExecutionContext: 0 }, false, "scala.scalajs.concurrent.QueueExecutionContext$TimeoutsExecutionContext", { sjs_concurrent_QueueExecutionContext$TimeoutsExecutionContext: 1, O: 1, s_concurrent_ExecutionContextExecutor: 1, s_concurrent_ExecutionContext: 1, ju_concurrent_Executor: 1 }); $c_sjs_concurrent_QueueExecutionContext$TimeoutsExecutionContext.prototype.$classData = $d_sjs_concurrent_QueueExecutionContext$TimeoutsExecutionContext; class $c_sjs_concurrent_RunNowExecutionContext$ extends $c_O { init___() { return this }; reportFailure__jl_Throwable__V(t) { t.printStackTrace__Ljava_io_PrintStream__V($m_jl_System$().err$1) }; execute__jl_Runnable__V(runnable) { try { runnable.run__V() } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { e$2.printStackTrace__Ljava_io_PrintStream__V($m_jl_System$().err$1) } else { throw e } } }; } const $d_sjs_concurrent_RunNowExecutionContext$ = new $TypeData().initClass({ sjs_concurrent_RunNowExecutionContext$: 0 }, false, "scala.scalajs.concurrent.RunNowExecutionContext$", { sjs_concurrent_RunNowExecutionContext$: 1, O: 1, s_concurrent_ExecutionContextExecutor: 1, s_concurrent_ExecutionContext: 1, ju_concurrent_Executor: 1 }); $c_sjs_concurrent_RunNowExecutionContext$.prototype.$classData = $d_sjs_concurrent_RunNowExecutionContext$; let $n_sjs_concurrent_RunNowExecutionContext$ = (void 0); const $m_sjs_concurrent_RunNowExecutionContext$ = (function() { if ((!$n_sjs_concurrent_RunNowExecutionContext$)) { $n_sjs_concurrent_RunNowExecutionContext$ = new $c_sjs_concurrent_RunNowExecutionContext$().init___() }; return $n_sjs_concurrent_RunNowExecutionContext$ }); class $c_sjs_js_WrappedDictionary$DictionaryIterator extends $c_O { constructor() { super(); this.dict$1 = null; this.keys$1 = null; this.index$1 = 0 }; next__O() { return this.next__T2() }; seq__sc_TraversableOnce() { return this }; copyToArray__O__I__V(xs, start) { $f_sc_TraversableOnce__copyToArray__O__I__V(this, xs, start) }; toIterator__sc_Iterator() { return this }; isEmpty__Z() { return $f_sc_Iterator__isEmpty__Z(this) }; toList__sci_List() { const this$1 = $m_sci_List$(); const cbf = this$1.ReusableCBFInstance$2; return $f_sc_TraversableOnce__to__scg_CanBuildFrom__O(this, cbf) }; init___sjs_js_Dictionary(dict) { this.dict$1 = dict; this.keys$1 = $g.Object.keys(dict); this.index$1 = 0; return this }; mkString__T__T(sep) { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, "", sep, "") }; mkString__T__T__T__T(start, sep, end) { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, start, sep, end) }; toString__T() { return "" }; foreach__F1__V(f) { $f_sc_Iterator__foreach__F1__V(this, f) }; foldLeft__O__F2__O(z, op) { return $f_sc_TraversableOnce__foldLeft__O__F2__O(this, z, op) }; toVector__sci_Vector() { $m_sci_Vector$(); const cbf = $m_sc_IndexedSeq$().ReusableCBF$6; return $f_sc_TraversableOnce__to__scg_CanBuildFrom__O(this, cbf) }; size__I() { return $f_sc_TraversableOnce__size__I(this) }; toBuffer__scm_Buffer() { const this$1 = $m_scm_ArrayBuffer$(); const cbf = this$1.ReusableCBFInstance$2; return $f_sc_TraversableOnce__to__scg_CanBuildFrom__O(this, cbf) }; next__T2() { const key = this.keys$1[this.index$1]; this.index$1 = ((1 + this.index$1) | 0); const dict = this.dict$1; let jsx$1; if ((!(!$m_sjs_js_WrappedDictionary$Cache$().safeHasOwnProperty$1.call(dict, key)))) { jsx$1 = dict[key] } else { throw new $c_ju_NoSuchElementException().init___T(("key not found: " + key)) }; return new $c_T2().init___O__O(key, jsx$1) }; hasNext__Z() { return (this.index$1 < (this.keys$1.length | 0)) }; mkString__T() { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, "", "", "") }; toStream__sci_Stream() { return $f_sc_Iterator__toStream__sci_Stream(this) }; addString__scm_StringBuilder__T__T__T__scm_StringBuilder(b, start, sep, end) { return $f_sc_TraversableOnce__addString__scm_StringBuilder__T__T__T__scm_StringBuilder(this, b, start, sep, end) }; $$div$colon__O__F2__O(z, op) { return $f_sc_TraversableOnce__foldLeft__O__F2__O(this, z, op) }; copyToArray__O__I__I__V(xs, start, len) { $f_sc_Iterator__copyToArray__O__I__I__V(this, xs, start, len) }; isTraversableAgain__Z() { return false }; toMap__s_Predef$$less$colon$less__sci_Map(ev) { $m_sci_Map$(); const b = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); while (this.hasNext__Z()) { const arg1 = this.next__T2(); b.$$plus$eq__T2__scm_MapBuilder(arg1) }; return b.elems$1 }; drop__I__sc_Iterator(n) { return $f_sc_Iterator__drop__I__sc_Iterator(this, n) }; reduceLeft__F2__O(op) { return $f_sc_TraversableOnce__reduceLeft__F2__O(this, op) }; } const $d_sjs_js_WrappedDictionary$DictionaryIterator = new $TypeData().initClass({ sjs_js_WrappedDictionary$DictionaryIterator: 0 }, false, "scala.scalajs.js.WrappedDictionary$DictionaryIterator", { sjs_js_WrappedDictionary$DictionaryIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sjs_js_WrappedDictionary$DictionaryIterator.prototype.$classData = $d_sjs_js_WrappedDictionary$DictionaryIterator; class $c_sjsr_RuntimeLong extends $c_jl_Number { constructor() { super(); this.lo$2 = 0; this.hi$2 = 0 }; longValue__J() { return $uJ(this) }; $$bar__sjsr_RuntimeLong__sjsr_RuntimeLong(b) { return new $c_sjsr_RuntimeLong().init___I__I((this.lo$2 | b.lo$2), (this.hi$2 | b.hi$2)) }; $$greater$eq__sjsr_RuntimeLong__Z(b) { const ahi = this.hi$2; const bhi = b.hi$2; return ((ahi === bhi) ? (((-2147483648) ^ this.lo$2) >= ((-2147483648) ^ b.lo$2)) : (ahi > bhi)) }; byteValue__B() { return ((this.lo$2 << 24) >> 24) }; equals__O__Z(that) { if ((that instanceof $c_sjsr_RuntimeLong)) { const x2 = that; return ((this.lo$2 === x2.lo$2) && (this.hi$2 === x2.hi$2)) } else { return false } }; $$less__sjsr_RuntimeLong__Z(b) { const ahi = this.hi$2; const bhi = b.hi$2; return ((ahi === bhi) ? (((-2147483648) ^ this.lo$2) < ((-2147483648) ^ b.lo$2)) : (ahi < bhi)) }; $$times__sjsr_RuntimeLong__sjsr_RuntimeLong(b) { const alo = this.lo$2; const blo = b.lo$2; const a0 = (65535 & alo); const a1 = ((alo >>> 16) | 0); const b0 = (65535 & blo); const b1 = ((blo >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi = (((((((($imul(alo, b.hi$2) + $imul(this.hi$2, blo)) | 0) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); return new $c_sjsr_RuntimeLong().init___I__I(lo, hi) }; init___I__I__I(l, m, h) { $c_sjsr_RuntimeLong.prototype.init___I__I.call(this, (l | (m << 22)), ((m >> 10) | (h << 12))); return this }; $$percent__sjsr_RuntimeLong__sjsr_RuntimeLong(b) { const this$1 = $m_sjsr_RuntimeLong$(); const lo = this$1.remainderImpl__I__I__I__I__I(this.lo$2, this.hi$2, b.lo$2, b.hi$2); return new $c_sjsr_RuntimeLong().init___I__I(lo, this$1.scala$scalajs$runtime$RuntimeLong$$hiReturn$f) }; toString__T() { return $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toString__I__I__T(this.lo$2, this.hi$2) }; init___I__I(lo, hi) { this.lo$2 = lo; this.hi$2 = hi; return this }; compareTo__O__I(x$1) { const that = x$1; return $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$compare__I__I__I__I__I(this.lo$2, this.hi$2, that.lo$2, that.hi$2) }; $$less$eq__sjsr_RuntimeLong__Z(b) { const ahi = this.hi$2; const bhi = b.hi$2; return ((ahi === bhi) ? (((-2147483648) ^ this.lo$2) <= ((-2147483648) ^ b.lo$2)) : (ahi < bhi)) }; $$amp__sjsr_RuntimeLong__sjsr_RuntimeLong(b) { return new $c_sjsr_RuntimeLong().init___I__I((this.lo$2 & b.lo$2), (this.hi$2 & b.hi$2)) }; $$greater$greater$greater__I__sjsr_RuntimeLong(n) { return new $c_sjsr_RuntimeLong().init___I__I((((32 & n) === 0) ? (((this.lo$2 >>> n) | 0) | ((this.hi$2 << 1) << ((31 - n) | 0))) : ((this.hi$2 >>> n) | 0)), (((32 & n) === 0) ? ((this.hi$2 >>> n) | 0) : 0)) }; $$greater__sjsr_RuntimeLong__Z(b) { const ahi = this.hi$2; const bhi = b.hi$2; return ((ahi === bhi) ? (((-2147483648) ^ this.lo$2) > ((-2147483648) ^ b.lo$2)) : (ahi > bhi)) }; $$less$less__I__sjsr_RuntimeLong(n) { return new $c_sjsr_RuntimeLong().init___I__I((((32 & n) === 0) ? (this.lo$2 << n) : 0), (((32 & n) === 0) ? (((((this.lo$2 >>> 1) | 0) >>> ((31 - n) | 0)) | 0) | (this.hi$2 << n)) : (this.lo$2 << n))) }; init___I(value) { $c_sjsr_RuntimeLong.prototype.init___I__I.call(this, value, (value >> 31)); return this }; toInt__I() { return this.lo$2 }; notEquals__sjsr_RuntimeLong__Z(b) { return (!((this.lo$2 === b.lo$2) && (this.hi$2 === b.hi$2))) }; unary$und$minus__sjsr_RuntimeLong() { const lo = this.lo$2; const hi = this.hi$2; return new $c_sjsr_RuntimeLong().init___I__I(((-lo) | 0), ((lo !== 0) ? (~hi) : ((-hi) | 0))) }; $$plus__sjsr_RuntimeLong__sjsr_RuntimeLong(b) { const alo = this.lo$2; const ahi = this.hi$2; const bhi = b.hi$2; const lo = ((alo + b.lo$2) | 0); return new $c_sjsr_RuntimeLong().init___I__I(lo, ((((-2147483648) ^ lo) < ((-2147483648) ^ alo)) ? ((1 + ((ahi + bhi) | 0)) | 0) : ((ahi + bhi) | 0))) }; shortValue__S() { return ((this.lo$2 << 16) >> 16) }; $$greater$greater__I__sjsr_RuntimeLong(n) { return new $c_sjsr_RuntimeLong().init___I__I((((32 & n) === 0) ? (((this.lo$2 >>> n) | 0) | ((this.hi$2 << 1) << ((31 - n) | 0))) : (this.hi$2 >> n)), (((32 & n) === 0) ? (this.hi$2 >> n) : (this.hi$2 >> 31))) }; toDouble__D() { return $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toDouble__I__I__D(this.lo$2, this.hi$2) }; $$div__sjsr_RuntimeLong__sjsr_RuntimeLong(b) { const this$1 = $m_sjsr_RuntimeLong$(); const lo = this$1.divideImpl__I__I__I__I__I(this.lo$2, this.hi$2, b.lo$2, b.hi$2); return new $c_sjsr_RuntimeLong().init___I__I(lo, this$1.scala$scalajs$runtime$RuntimeLong$$hiReturn$f) }; doubleValue__D() { return $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toDouble__I__I__D(this.lo$2, this.hi$2) }; hashCode__I() { return (this.lo$2 ^ this.hi$2) }; intValue__I() { return this.lo$2 }; unary$und$tilde__sjsr_RuntimeLong() { return new $c_sjsr_RuntimeLong().init___I__I((~this.lo$2), (~this.hi$2)) }; compareTo__jl_Long__I(that) { return $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$compare__I__I__I__I__I(this.lo$2, this.hi$2, that.lo$2, that.hi$2) }; floatValue__F() { return $fround($m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toDouble__I__I__D(this.lo$2, this.hi$2)) }; $$minus__sjsr_RuntimeLong__sjsr_RuntimeLong(b) { const alo = this.lo$2; const ahi = this.hi$2; const bhi = b.hi$2; const lo = ((alo - b.lo$2) | 0); return new $c_sjsr_RuntimeLong().init___I__I(lo, ((((-2147483648) ^ lo) > ((-2147483648) ^ alo)) ? (((-1) + ((ahi - bhi) | 0)) | 0) : ((ahi - bhi) | 0))) }; $$up__sjsr_RuntimeLong__sjsr_RuntimeLong(b) { return new $c_sjsr_RuntimeLong().init___I__I((this.lo$2 ^ b.lo$2), (this.hi$2 ^ b.hi$2)) }; equals__sjsr_RuntimeLong__Z(b) { return ((this.lo$2 === b.lo$2) && (this.hi$2 === b.hi$2)) }; } const $isArrayOf_sjsr_RuntimeLong = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sjsr_RuntimeLong))) }); const $d_sjsr_RuntimeLong = new $TypeData().initClass({ sjsr_RuntimeLong: 0 }, false, "scala.scalajs.runtime.RuntimeLong", { sjsr_RuntimeLong: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, jl_Comparable: 1 }); $c_sjsr_RuntimeLong.prototype.$classData = $d_sjsr_RuntimeLong; class $c_Lfastparse_core_Frame extends $c_O { constructor() { super(); this.index$1 = 0; this.parser$1 = null }; productPrefix__T() { return "Frame" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_core_Frame)) { const Frame$1 = x$1; if ((this.index$1 === Frame$1.index$1)) { const x = this.parser$1; const x$2 = Frame$1.parser$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.index$1; break } case 1: { return this.parser$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___I__Lfastparse_core_Parser(index, parser) { this.index$1 = index; this.parser$1 = parser; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, this.index$1); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.parser$1)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 2) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_core_Frame = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Frame))) }); const $d_Lfastparse_core_Frame = new $TypeData().initClass({ Lfastparse_core_Frame: 0 }, false, "fastparse.core.Frame", { Lfastparse_core_Frame: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_Frame.prototype.$classData = $d_Lfastparse_core_Frame; class $c_Lfastparse_core_Implicits$Sequencer$ extends $c_O { init___() { return this }; SingleSequencer__Lfastparse_core_Implicits$Sequencer() { const f = new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(x$1$2, t$2) { return t$2 }) })(this)); return new $c_Lfastparse_core_Implicits$Sequencer$$anon$1().init___F2(f) }; } const $d_Lfastparse_core_Implicits$Sequencer$ = new $TypeData().initClass({ Lfastparse_core_Implicits$Sequencer$: 0 }, false, "fastparse.core.Implicits$Sequencer$", { Lfastparse_core_Implicits$Sequencer$: 1, O: 1, Lfastparse_core_Implicits$LowPriSequencer: 1, Lfastparse_core_Implicits$LowerPriSequencer: 1, Lfastparse_core_SequencerGen: 1, Lfastparse_core_LowestPriSequencer: 1 }); $c_Lfastparse_core_Implicits$Sequencer$.prototype.$classData = $d_Lfastparse_core_Implicits$Sequencer$; let $n_Lfastparse_core_Implicits$Sequencer$ = (void 0); const $m_Lfastparse_core_Implicits$Sequencer$ = (function() { if ((!$n_Lfastparse_core_Implicits$Sequencer$)) { $n_Lfastparse_core_Implicits$Sequencer$ = new $c_Lfastparse_core_Implicits$Sequencer$().init___() }; return $n_Lfastparse_core_Implicits$Sequencer$ }); class $c_Lfastparse_core_ParseCtx extends $c_O { constructor() { super(); this.input$1 = null; this.logDepth$1 = 0; this.traceIndex$1 = 0; this.originalParser$1 = null; this.originalIndex$1 = 0; this.instrument$1 = null; this.isFork$1 = false; this.isCapturing$1 = false; this.isNoCut$1 = false; this.failure$1 = null; this.success$1 = null }; productPrefix__T() { return "ParseCtx" }; productArity__I() { return 9 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_core_ParseCtx)) { const ParseCtx$1 = x$1; const x = this.input$1; const x$2 = ParseCtx$1.input$1; let jsx$2; if (((((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) && (this.logDepth$1 === ParseCtx$1.logDepth$1)) && (this.traceIndex$1 === ParseCtx$1.traceIndex$1))) { const x$3 = this.originalParser$1; const x$4 = ParseCtx$1.originalParser$1; jsx$2 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$2 = false }; let jsx$1; if ((jsx$2 && (this.originalIndex$1 === ParseCtx$1.originalIndex$1))) { const x$5 = this.instrument$1; const x$6 = ParseCtx$1.instrument$1; jsx$1 = (x$5 === x$6) } else { jsx$1 = false }; if (((jsx$1 && (this.isFork$1 === ParseCtx$1.isFork$1)) && (this.isCapturing$1 === ParseCtx$1.isCapturing$1))) { return (this.isNoCut$1 === ParseCtx$1.isNoCut$1) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.input$1; break } case 1: { return this.logDepth$1; break } case 2: { return this.traceIndex$1; break } case 3: { return this.originalParser$1; break } case 4: { return this.originalIndex$1; break } case 5: { return this.instrument$1; break } case 6: { return this.isFork$1; break } case 7: { return this.isCapturing$1; break } case 8: { return this.isNoCut$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; checkForDrop__Z__Z(outerCut) { return ((!this.isCapturing$1) && ((outerCut && (!this.isNoCut$1)) || (!this.isFork$1))) }; init___Lfastparse_utils_ParserInput__I__I__Lfastparse_core_Parser__I__F3__Z__Z__Z(input, logDepth, traceIndex, originalParser, originalIndex, instrument, isFork, isCapturing, isNoCut) { this.input$1 = input; this.logDepth$1 = logDepth; this.traceIndex$1 = traceIndex; this.originalParser$1 = originalParser; this.originalIndex$1 = originalIndex; this.instrument$1 = instrument; this.isFork$1 = isFork; this.isCapturing$1 = isCapturing; this.isNoCut$1 = isNoCut; const requirement = (this.logDepth$1 >= (-1)); if ((!requirement)) { throw new $c_jl_IllegalArgumentException().init___T("requirement failed: logDepth can only be -1 (for no logs) or >= 0") }; const requirement$1 = (traceIndex >= (-1)); if ((!requirement$1)) { throw new $c_jl_IllegalArgumentException().init___T("requirement failed: traceIndex can only be -1 (for no tracing) or an index 0") }; this.failure$1 = new $c_Lfastparse_core_Mutable$Failure().init___Lfastparse_utils_ParserInput__scm_Buffer__I__Lfastparse_core_Parser__Lfastparse_core_Parser__I__I__sci_Set__Z(input, $m_scm_Buffer$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$()), 0, null, originalParser, originalIndex, traceIndex, $m_sci_Set$EmptySet$(), false); this.success$1 = new $c_Lfastparse_core_Mutable$Success().init___O__I__sci_Set__Z(null, 0, $m_sci_Set$EmptySet$(), false); return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.input$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, this.logDepth$1); acc = $m_sr_Statics$().mix__I__I__I(acc, this.traceIndex$1); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.originalParser$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, this.originalIndex$1); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.instrument$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.isFork$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.isCapturing$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.isNoCut$1 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 9) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_core_ParseCtx = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_ParseCtx))) }); const $d_Lfastparse_core_ParseCtx = new $TypeData().initClass({ Lfastparse_core_ParseCtx: 0 }, false, "fastparse.core.ParseCtx", { Lfastparse_core_ParseCtx: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_ParseCtx.prototype.$classData = $d_Lfastparse_core_ParseCtx; class $c_Lfastparse_core_Parsed$TracedFailure extends $c_O { constructor() { super(); this.expected0$1 = null; this.stack$1 = null; this.trace$1 = null; this.input$1 = null; this.index$1 = 0; this.fullStack$1 = null; this.traceParsers$1 = null; this.bitmap$0$1 = 0 }; productPrefix__T() { return "TracedFailure" }; productArity__I() { return 4 }; expected0__p1__Lfastparse_core_Precedence() { return (((1 & this.bitmap$0$1) === 0) ? this.expected0$lzycompute__p1__Lfastparse_core_Precedence() : this.expected0$1) }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_core_Parsed$TracedFailure)) { const TracedFailure$1 = x$1; const x = this.input$1; const x$2 = TracedFailure$1.input$1; let jsx$1; if ((((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) && (this.index$1 === TracedFailure$1.index$1))) { const x$3 = this.fullStack$1; const x$4 = TracedFailure$1.fullStack$1; jsx$1 = ((x$3 === null) ? (x$4 === null) : $f_sc_GenSeqLike__equals__O__Z(x$3, x$4)) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.traceParsers$1; const x$6 = TracedFailure$1.traceParsers$1; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.input$1; break } case 1: { return this.index$1; break } case 2: { return this.fullStack$1; break } case 3: { return this.traceParsers$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lfastparse_utils_ParserInput__I__sci_Vector__sci_Set(input, index, fullStack, traceParsers) { this.input$1 = input; this.index$1 = index; this.fullStack$1 = fullStack; this.traceParsers$1 = traceParsers; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.input$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, this.index$1); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.fullStack$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.traceParsers$1)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 4) }; expected0$lzycompute__p1__Lfastparse_core_Precedence() { if (((1 & this.bitmap$0$1) === 0)) { this.expected0$1 = new $c_Lfastparse_core_Parsed$TracedFailure$$anon$1().init___Lfastparse_core_Parsed$TracedFailure(this); this.bitmap$0$1 = (1 | this.bitmap$0$1) }; return this.expected0$1 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_core_Parsed$TracedFailure = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Parsed$TracedFailure))) }); const $d_Lfastparse_core_Parsed$TracedFailure = new $TypeData().initClass({ Lfastparse_core_Parsed$TracedFailure: 0 }, false, "fastparse.core.Parsed$TracedFailure", { Lfastparse_core_Parsed$TracedFailure: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_Parsed$TracedFailure.prototype.$classData = $d_Lfastparse_core_Parsed$TracedFailure; class $c_Lfastparse_parsers_Combinators$Sequence$Chain extends $c_O { constructor() { super(); this.p$1 = null; this.cut$1 = false; this.ev$1 = null }; productPrefix__T() { return "Chain" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Combinators$Sequence$Chain)) { const Chain$1 = x$1; const x = this.p$1; const x$2 = Chain$1.p$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { return (this.cut$1 === Chain$1.cut$1) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.p$1; break } case 1: { return this.cut$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lfastparse_core_Parser__Z__Lfastparse_core_Implicits$Sequencer(p, cut, ev) { this.p$1 = p; this.cut$1 = cut; this.ev$1 = ev; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.p$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.cut$1 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 2) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_parsers_Combinators$Sequence$Chain = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Combinators$Sequence$Chain))) }); const $d_Lfastparse_parsers_Combinators$Sequence$Chain = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Sequence$Chain: 0 }, false, "fastparse.parsers.Combinators$Sequence$Chain", { Lfastparse_parsers_Combinators$Sequence$Chain: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Sequence$Chain.prototype.$classData = $d_Lfastparse_parsers_Combinators$Sequence$Chain; class $c_Lfastparse_parsers_Intrinsics$ElemSet extends $c_Lfastparse_parsers_Intrinsics$PrecomputableParser { parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const input = cfg.input$1; if ((!input.isReachable__I__Z(index))) { const f = cfg.failure$1; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f, index, null, false) } else { const value = input.data$2; const input$1 = value; const c = (65535 & (input$1.charCodeAt(index) | 0)); if (this.check__O__Z(new $c_jl_Character().init___C(c))) { const s = cfg.success$1; const index$1 = ((1 + index) | 0); const traceParsers = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, (void 0), index$1, traceParsers, false) } else { const f$1 = cfg.failure$1; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f$1, index, null, false) } } }; } class $c_Lio_kaitai_struct_CppRuntimeConfig extends $c_O { constructor() { super(); this.namespace$1 = null; this.usePragmaOnce$1 = false; this.stdStringFrontBack$1 = false; this.useListInitializers$1 = false; this.pointers$1 = null }; productPrefix__T() { return "CppRuntimeConfig" }; productArity__I() { return 5 }; init___sci_List__Z__Z__Z__Lio_kaitai_struct_CppRuntimeConfig$Pointers(namespace, usePragmaOnce, stdStringFrontBack, useListInitializers, pointers) { this.namespace$1 = namespace; this.usePragmaOnce$1 = usePragmaOnce; this.stdStringFrontBack$1 = stdStringFrontBack; this.useListInitializers$1 = useListInitializers; this.pointers$1 = pointers; return this }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_CppRuntimeConfig)) { const CppRuntimeConfig$1 = x$1; const x = this.namespace$1; const x$2 = CppRuntimeConfig$1.namespace$1; if ((((((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) && (this.usePragmaOnce$1 === CppRuntimeConfig$1.usePragmaOnce$1)) && (this.stdStringFrontBack$1 === CppRuntimeConfig$1.stdStringFrontBack$1)) && (this.useListInitializers$1 === CppRuntimeConfig$1.useListInitializers$1))) { const x$3 = this.pointers$1; const x$4 = CppRuntimeConfig$1.pointers$1; return (x$3 === x$4) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.namespace$1; break } case 1: { return this.usePragmaOnce$1; break } case 2: { return this.stdStringFrontBack$1; break } case 3: { return this.useListInitializers$1; break } case 4: { return this.pointers$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.namespace$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.usePragmaOnce$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.stdStringFrontBack$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.useListInitializers$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.pointers$1)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 5) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_CppRuntimeConfig = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_CppRuntimeConfig))) }); const $d_Lio_kaitai_struct_CppRuntimeConfig = new $TypeData().initClass({ Lio_kaitai_struct_CppRuntimeConfig: 0 }, false, "io.kaitai.struct.CppRuntimeConfig", { Lio_kaitai_struct_CppRuntimeConfig: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_CppRuntimeConfig.prototype.$classData = $d_Lio_kaitai_struct_CppRuntimeConfig; class $c_Lio_kaitai_struct_JavaRuntimeConfig extends $c_O { constructor() { super(); this.javaPackage$1 = null; this.fromFileClass$1 = null; this.endOfStreamErrorClass$1 = null }; productPrefix__T() { return "JavaRuntimeConfig" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_JavaRuntimeConfig)) { const JavaRuntimeConfig$1 = x$1; return (((this.javaPackage$1 === JavaRuntimeConfig$1.javaPackage$1) && (this.fromFileClass$1 === JavaRuntimeConfig$1.fromFileClass$1)) && (this.endOfStreamErrorClass$1 === JavaRuntimeConfig$1.endOfStreamErrorClass$1)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.javaPackage$1; break } case 1: { return this.fromFileClass$1; break } case 2: { return this.endOfStreamErrorClass$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___T__T__T(javaPackage, fromFileClass, endOfStreamErrorClass) { this.javaPackage$1 = javaPackage; this.fromFileClass$1 = fromFileClass; this.endOfStreamErrorClass$1 = endOfStreamErrorClass; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_JavaRuntimeConfig = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_JavaRuntimeConfig))) }); const $d_Lio_kaitai_struct_JavaRuntimeConfig = new $TypeData().initClass({ Lio_kaitai_struct_JavaRuntimeConfig: 0 }, false, "io.kaitai.struct.JavaRuntimeConfig", { Lio_kaitai_struct_JavaRuntimeConfig: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_JavaRuntimeConfig.prototype.$classData = $d_Lio_kaitai_struct_JavaRuntimeConfig; class $c_Lio_kaitai_struct_RuntimeConfig extends $c_O { constructor() { super(); this.autoRead$1 = false; this.readStoresPos$1 = false; this.opaqueTypes$1 = false; this.cppConfig$1 = null; this.goPackage$1 = null; this.java$1 = null; this.dotNetNamespace$1 = null; this.phpNamespace$1 = null; this.pythonPackage$1 = null; this.nimModule$1 = null; this.nimOpaque$1 = null }; productPrefix__T() { return "RuntimeConfig" }; productArity__I() { return 11 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_RuntimeConfig)) { const RuntimeConfig$1 = x$1; let jsx$2; if ((((this.autoRead$1 === RuntimeConfig$1.autoRead$1) && (this.readStoresPos$1 === RuntimeConfig$1.readStoresPos$1)) && (this.opaqueTypes$1 === RuntimeConfig$1.opaqueTypes$1))) { const x = this.cppConfig$1; const x$2 = RuntimeConfig$1.cppConfig$1; jsx$2 = ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { jsx$2 = false }; let jsx$1; if ((jsx$2 && (this.goPackage$1 === RuntimeConfig$1.goPackage$1))) { const x$3 = this.java$1; const x$4 = RuntimeConfig$1.java$1; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (((((jsx$1 && (this.dotNetNamespace$1 === RuntimeConfig$1.dotNetNamespace$1)) && (this.phpNamespace$1 === RuntimeConfig$1.phpNamespace$1)) && (this.pythonPackage$1 === RuntimeConfig$1.pythonPackage$1)) && (this.nimModule$1 === RuntimeConfig$1.nimModule$1))) { return (this.nimOpaque$1 === RuntimeConfig$1.nimOpaque$1) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.autoRead$1; break } case 1: { return this.readStoresPos$1; break } case 2: { return this.opaqueTypes$1; break } case 3: { return this.cppConfig$1; break } case 4: { return this.goPackage$1; break } case 5: { return this.java$1; break } case 6: { return this.dotNetNamespace$1; break } case 7: { return this.phpNamespace$1; break } case 8: { return this.pythonPackage$1; break } case 9: { return this.nimModule$1; break } case 10: { return this.nimOpaque$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Z__Z__Z__Lio_kaitai_struct_CppRuntimeConfig__T__Lio_kaitai_struct_JavaRuntimeConfig__T__T__T__T__T(autoRead, readStoresPos, opaqueTypes, cppConfig, goPackage, java, dotNetNamespace, phpNamespace, pythonPackage, nimModule, nimOpaque) { this.autoRead$1 = autoRead; this.readStoresPos$1 = readStoresPos; this.opaqueTypes$1 = opaqueTypes; this.cppConfig$1 = cppConfig; this.goPackage$1 = goPackage; this.java$1 = java; this.dotNetNamespace$1 = dotNetNamespace; this.phpNamespace$1 = phpNamespace; this.pythonPackage$1 = pythonPackage; this.nimModule$1 = nimModule; this.nimOpaque$1 = nimOpaque; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.autoRead$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.readStoresPos$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.opaqueTypes$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.cppConfig$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.goPackage$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.java$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.dotNetNamespace$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.phpNamespace$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.pythonPackage$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.nimModule$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.nimOpaque$1)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 11) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_RuntimeConfig = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_RuntimeConfig))) }); const $d_Lio_kaitai_struct_RuntimeConfig = new $TypeData().initClass({ Lio_kaitai_struct_RuntimeConfig: 0 }, false, "io.kaitai.struct.RuntimeConfig", { Lio_kaitai_struct_RuntimeConfig: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_RuntimeConfig.prototype.$classData = $d_Lio_kaitai_struct_RuntimeConfig; class $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$ extends $c_sr_AbstractFunction1 { init___() { return this }; apply__O__O(v1) { const n = v1; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum().init___s_math_BigDecimal(n) }; toString__T() { return "FloatNum" }; } const $d_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$FloatNum$", { Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$: 1, sr_AbstractFunction1: 1, O: 1, F1: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$; let $n_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$)) { $n_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$ = new $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum$ }); class $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$ extends $c_sr_AbstractFunction1 { init___() { return this }; apply__O__O(v1) { const n = v1; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(n) }; toString__T() { return "IntNum" }; } const $d_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$IntNum$: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$IntNum$", { Lio_kaitai_struct_exprlang_Ast$expr$IntNum$: 1, sr_AbstractFunction1: 1, O: 1, F1: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$; let $n_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$)) { $n_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$ = new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$expr$IntNum$ }); class $c_Lio_kaitai_struct_exprlang_Ast$expr$Str$ extends $c_sr_AbstractFunction1 { init___() { return this }; apply__O__O(v1) { const s = v1; return new $c_Lio_kaitai_struct_exprlang_Ast$expr$Str().init___T(s) }; toString__T() { return "Str" }; } const $d_Lio_kaitai_struct_exprlang_Ast$expr$Str$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$Str$: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$Str$", { Lio_kaitai_struct_exprlang_Ast$expr$Str$: 1, sr_AbstractFunction1: 1, O: 1, F1: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$Str$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$Str$; let $n_Lio_kaitai_struct_exprlang_Ast$expr$Str$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$expr$Str$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$expr$Str$)) { $n_Lio_kaitai_struct_exprlang_Ast$expr$Str$ = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Str$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$expr$Str$ }); class $c_Lio_kaitai_struct_exprlang_Ast$identifier extends $c_O { constructor() { super(); this.name$1 = null }; productPrefix__T() { return "identifier" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$identifier)) { const identifier$1 = x$1; return (this.name$1 === identifier$1.name$1) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___T(name) { this.name$1 = name; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$identifier = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$identifier))) }); const $d_Lio_kaitai_struct_exprlang_Ast$identifier = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$identifier: 0 }, false, "io.kaitai.struct.exprlang.Ast$identifier", { Lio_kaitai_struct_exprlang_Ast$identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$identifier.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$identifier; class $c_Lio_kaitai_struct_exprlang_Ast$identifier$ extends $c_sr_AbstractFunction1 { init___() { return this }; apply__O__O(v1) { const name = v1; return new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T(name) }; toString__T() { return "identifier" }; } const $d_Lio_kaitai_struct_exprlang_Ast$identifier$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$identifier$: 0 }, false, "io.kaitai.struct.exprlang.Ast$identifier$", { Lio_kaitai_struct_exprlang_Ast$identifier$: 1, sr_AbstractFunction1: 1, O: 1, F1: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$identifier$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$identifier$; let $n_Lio_kaitai_struct_exprlang_Ast$identifier$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$identifier$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$identifier$)) { $n_Lio_kaitai_struct_exprlang_Ast$identifier$ = new $c_Lio_kaitai_struct_exprlang_Ast$identifier$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$identifier$ }); class $c_Lio_kaitai_struct_exprlang_Ast$typeId extends $c_O { constructor() { super(); this.absolute$1 = false; this.names$1 = null; this.isArray$1 = false }; productPrefix__T() { return "typeId" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$typeId)) { const typeId$1 = x$1; let jsx$1; if ((this.absolute$1 === typeId$1.absolute$1)) { const x = this.names$1; const x$2 = typeId$1.names$1; jsx$1 = ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { jsx$1 = false }; if (jsx$1) { return (this.isArray$1 === typeId$1.isArray$1) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.absolute$1; break } case 1: { return this.names$1; break } case 2: { return this.isArray$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; nameAsStr__T() { return (((this.absolute$1 ? "::" : "") + this.names$1.mkString__T__T("::")) + (this.isArray$1 ? "[]" : "")) }; init___Z__sc_Seq__Z(absolute, names, isArray) { this.absolute$1 = absolute; this.names$1 = names; this.isArray$1 = isArray; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.absolute$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.names$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.isArray$1 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 3) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$typeId = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$typeId))) }); const $d_Lio_kaitai_struct_exprlang_Ast$typeId = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$typeId: 0 }, false, "io.kaitai.struct.exprlang.Ast$typeId", { Lio_kaitai_struct_exprlang_Ast$typeId: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$typeId.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$typeId; class $c_Lio_kaitai_struct_exprlang_Expressions$ParseException extends $c_jl_RuntimeException { constructor() { super(); this.src$4 = null; this.failure$4 = null }; init___T__Lfastparse_core_Parsed$Failure(src, failure) { this.src$4 = src; this.failure$4 = failure; const s = failure.msg__T(); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Expressions$ParseException = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Expressions$ParseException))) }); const $d_Lio_kaitai_struct_exprlang_Expressions$ParseException = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Expressions$ParseException: 0 }, false, "io.kaitai.struct.exprlang.Expressions$ParseException", { Lio_kaitai_struct_exprlang_Expressions$ParseException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Expressions$ParseException.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Expressions$ParseException; class $c_Lio_kaitai_struct_format_ConditionalSpec extends $c_O { constructor() { super(); this.ifExpr$1 = null; this.repeat$1 = null }; productPrefix__T() { return "ConditionalSpec" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ConditionalSpec)) { const ConditionalSpec$1 = x$1; const x = this.ifExpr$1; const x$2 = ConditionalSpec$1.ifExpr$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.repeat$1; const x$4 = ConditionalSpec$1.repeat$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.ifExpr$1; break } case 1: { return this.repeat$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___s_Option__Lio_kaitai_struct_format_RepeatSpec(ifExpr, repeat) { this.ifExpr$1 = ifExpr; this.repeat$1 = repeat; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_ConditionalSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ConditionalSpec))) }); const $d_Lio_kaitai_struct_format_ConditionalSpec = new $TypeData().initClass({ Lio_kaitai_struct_format_ConditionalSpec: 0 }, false, "io.kaitai.struct.format.ConditionalSpec", { Lio_kaitai_struct_format_ConditionalSpec: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ConditionalSpec.prototype.$classData = $d_Lio_kaitai_struct_format_ConditionalSpec; class $c_Lio_kaitai_struct_format_DocSpec extends $c_O { constructor() { super(); this.summary$1 = null; this.ref$1 = null }; productPrefix__T() { return "DocSpec" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_DocSpec)) { const DocSpec$1 = x$1; const x = this.summary$1; const x$2 = DocSpec$1.summary$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.ref$1; const x$4 = DocSpec$1.ref$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; isEmpty__Z() { return (this.summary$1.isEmpty__Z() && this.ref$1.isEmpty__Z()) }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.summary$1; break } case 1: { return this.ref$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___s_Option__sci_List(summary, ref) { this.summary$1 = summary; this.ref$1 = ref; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_DocSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_DocSpec))) }); const $d_Lio_kaitai_struct_format_DocSpec = new $TypeData().initClass({ Lio_kaitai_struct_format_DocSpec: 0 }, false, "io.kaitai.struct.format.DocSpec", { Lio_kaitai_struct_format_DocSpec: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_DocSpec.prototype.$classData = $d_Lio_kaitai_struct_format_DocSpec; class $c_Lio_kaitai_struct_format_EnumSpec extends $c_O { constructor() { super(); this.sortedSeq$1 = null; this.map$1 = null; this.name$1 = null; this.bitmap$0$1 = false }; productPrefix__T() { return "EnumSpec" }; sortedSeq__sc_Seq() { return ((!this.bitmap$0$1) ? this.sortedSeq$lzycompute__p1__sc_Seq() : this.sortedSeq$1) }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_EnumSpec)) { const EnumSpec$1 = x$1; const x = this.map$1; const x$2 = EnumSpec$1.map$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.map$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___sci_Map(map) { this.map$1 = map; this.name$1 = $m_sci_Nil$(); return this }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; sortedSeq$lzycompute__p1__sc_Seq() { if ((!this.bitmap$0$1)) { const this$1 = this.map$1; const this$2 = $f_sc_MapLike__toSeq__sc_Seq(this$1); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$1$2) { const x$1 = x$1$2; return x$1.$$und1$mcJ$sp__J() }) })(this)); const ord = $m_s_math_Ordering$Long$(); this.sortedSeq$1 = $f_sc_SeqLike__sortBy__F1__s_math_Ordering__O(this$2, f, ord); this.bitmap$0$1 = true }; return this.sortedSeq$1 }; } const $isArrayOf_Lio_kaitai_struct_format_EnumSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_EnumSpec))) }); const $d_Lio_kaitai_struct_format_EnumSpec = new $TypeData().initClass({ Lio_kaitai_struct_format_EnumSpec: 0 }, false, "io.kaitai.struct.format.EnumSpec", { Lio_kaitai_struct_format_EnumSpec: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_EnumSpec.prototype.$classData = $d_Lio_kaitai_struct_format_EnumSpec; class $c_Lio_kaitai_struct_format_EnumValueSpec extends $c_O { constructor() { super(); this.name$1 = null; this.doc$1 = null }; productPrefix__T() { return "EnumValueSpec" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_EnumValueSpec)) { const EnumValueSpec$1 = x$1; if ((this.name$1 === EnumValueSpec$1.name$1)) { const x = this.doc$1; const x$2 = EnumValueSpec$1.doc$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$1; break } case 1: { return this.doc$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___T__Lio_kaitai_struct_format_DocSpec(name, doc) { this.name$1 = name; this.doc$1 = doc; return this }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_EnumValueSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_EnumValueSpec))) }); const $d_Lio_kaitai_struct_format_EnumValueSpec = new $TypeData().initClass({ Lio_kaitai_struct_format_EnumValueSpec: 0 }, false, "io.kaitai.struct.format.EnumValueSpec", { Lio_kaitai_struct_format_EnumValueSpec: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_EnumValueSpec.prototype.$classData = $d_Lio_kaitai_struct_format_EnumValueSpec; class $c_Lio_kaitai_struct_format_YamlAttrArgs extends $c_O { constructor() { super(); this.size$1 = null; this.sizeEos$1 = false; this.encoding$1 = null; this.terminator$1 = null; this.include$1 = false; this.consume$1 = false; this.eosError$1 = false; this.padRight$1 = null; this.contents$1 = null; this.enumRef$1 = null; this.parent$1 = null; this.process$1 = null }; productPrefix__T() { return "YamlAttrArgs" }; init___s_Option__Z__s_Option__s_Option__Z__Z__Z__s_Option__s_Option__s_Option__s_Option__s_Option(size, sizeEos, encoding, terminator, include, consume, eosError, padRight, contents, enumRef, parent, process) { this.size$1 = size; this.sizeEos$1 = sizeEos; this.encoding$1 = encoding; this.terminator$1 = terminator; this.include$1 = include; this.consume$1 = consume; this.eosError$1 = eosError; this.padRight$1 = padRight; this.contents$1 = contents; this.enumRef$1 = enumRef; this.parent$1 = parent; this.process$1 = process; return this }; productArity__I() { return 12 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_YamlAttrArgs)) { const YamlAttrArgs$1 = x$1; const x = this.size$1; const x$2 = YamlAttrArgs$1.size$1; let jsx$6; if ((((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) && (this.sizeEos$1 === YamlAttrArgs$1.sizeEos$1))) { const x$3 = this.encoding$1; const x$4 = YamlAttrArgs$1.encoding$1; jsx$6 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$6 = false }; let jsx$5; if (jsx$6) { const x$5 = this.terminator$1; const x$6 = YamlAttrArgs$1.terminator$1; jsx$5 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$5 = false }; let jsx$4; if ((((jsx$5 && (this.include$1 === YamlAttrArgs$1.include$1)) && (this.consume$1 === YamlAttrArgs$1.consume$1)) && (this.eosError$1 === YamlAttrArgs$1.eosError$1))) { const x$7 = this.padRight$1; const x$8 = YamlAttrArgs$1.padRight$1; jsx$4 = ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { jsx$4 = false }; let jsx$3; if (jsx$4) { const x$9 = this.contents$1; const x$10 = YamlAttrArgs$1.contents$1; jsx$3 = ((x$9 === null) ? (x$10 === null) : x$9.equals__O__Z(x$10)) } else { jsx$3 = false }; let jsx$2; if (jsx$3) { const x$11 = this.enumRef$1; const x$12 = YamlAttrArgs$1.enumRef$1; jsx$2 = ((x$11 === null) ? (x$12 === null) : x$11.equals__O__Z(x$12)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$13 = this.parent$1; const x$14 = YamlAttrArgs$1.parent$1; jsx$1 = ((x$13 === null) ? (x$14 === null) : x$13.equals__O__Z(x$14)) } else { jsx$1 = false }; if (jsx$1) { const x$15 = this.process$1; const x$16 = YamlAttrArgs$1.process$1; return ((x$15 === null) ? (x$16 === null) : x$15.equals__O__Z(x$16)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.size$1; break } case 1: { return this.sizeEos$1; break } case 2: { return this.encoding$1; break } case 3: { return this.terminator$1; break } case 4: { return this.include$1; break } case 5: { return this.consume$1; break } case 6: { return this.eosError$1; break } case 7: { return this.padRight$1; break } case 8: { return this.contents$1; break } case 9: { return this.enumRef$1; break } case 10: { return this.parent$1; break } case 11: { return this.process$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; getByteArrayType__sci_List__Lio_kaitai_struct_datatype_DataType$BytesType(path) { const x1 = new $c_T2().init___O__O(this.size$1, this.sizeEos$1); const p2 = x1.$$und1$f; const p3 = (!(!x1.$$und2$f)); if ((p2 instanceof $c_s_Some)) { const x4 = p2; const bs = x4.value$2; if ((bs !== null)) { if ((p3 === false)) { return new $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType().init___Lio_kaitai_struct_exprlang_Ast$expr__s_Option__Z__s_Option__s_Option(bs, this.terminator$1, this.include$1, this.padRight$1, this.process$1) } } }; const p5 = x1.$$und1$f; const p6 = (!(!x1.$$und2$f)); const x = $m_s_None$(); if (((x === p5) && (p6 === true))) { return new $c_Lio_kaitai_struct_datatype_DataType$BytesEosType().init___s_Option__Z__s_Option__s_Option(this.terminator$1, this.include$1, this.padRight$1, this.process$1) }; const p7 = x1.$$und1$f; const p8 = (!(!x1.$$und2$f)); const x$3 = $m_s_None$(); if (((x$3 === p7) && (p8 === false))) { const x1$2 = this.terminator$1; if ((x1$2 instanceof $c_s_Some)) { const x2 = x1$2; const term = (x2.value$2 | 0); return new $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType().init___I__Z__Z__Z__s_Option(term, this.include$1, this.consume$1, this.eosError$1, this.process$1) } else { const x$5 = $m_s_None$(); if ((x$5 === x1$2)) { const this$2 = new $c_Lio_kaitai_struct_problems_KSYParseError().init___T__sci_List__s_Option("'size', 'size-eos' or 'terminator' must be specified", path, $m_s_None$()); throw new $c_Lio_kaitai_struct_problems_CompilationProblemException().init___Lio_kaitai_struct_problems_CompilationProblem(this$2) } else { throw new $c_s_MatchError().init___O(x1$2) } } }; const p9 = x1.$$und1$f; const p10 = (!(!x1.$$und2$f)); if (((p9 instanceof $c_s_Some) && (p10 === true))) { const this$4 = new $c_Lio_kaitai_struct_problems_KSYParseError().init___T__sci_List__s_Option("only one of 'size' or 'size-eos' must be specified", path, $m_s_None$()); throw new $c_Lio_kaitai_struct_problems_CompilationProblemException().init___Lio_kaitai_struct_problems_CompilationProblem(this$4) }; throw new $c_s_MatchError().init___O(x1) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.size$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.sizeEos$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.encoding$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.terminator$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.include$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.consume$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.eosError$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.padRight$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.contents$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.enumRef$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.parent$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.process$1)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 12) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_YamlAttrArgs = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_YamlAttrArgs))) }); const $d_Lio_kaitai_struct_format_YamlAttrArgs = new $TypeData().initClass({ Lio_kaitai_struct_format_YamlAttrArgs: 0 }, false, "io.kaitai.struct.format.YamlAttrArgs", { Lio_kaitai_struct_format_YamlAttrArgs: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_YamlAttrArgs.prototype.$classData = $d_Lio_kaitai_struct_format_YamlAttrArgs; class $c_Lio_kaitai_struct_languages_CSharpCompiler$ extends $c_O { init___() { return this }; kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attrType) { _kaitaiType2NativeType: while (true) { let rc71 = false; let x2 = null; let rc72 = false; let x4 = null; let rc73 = false; let x30 = null; const x1 = attrType; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { rc71 = true; x2 = x1; const p3 = x2.signed$3; if ((p3 === false)) { return "byte" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { rc72 = true; x4 = x1; const p5 = x4.signed$3; const p6 = x4.width$3; let jsx$1; if ((p5 === false)) { const x$2 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$1 = (x$2 === p6) } else { jsx$1 = false }; if (jsx$1) { return "ushort" } }; if (rc72) { const p9 = x4.signed$3; const p10 = x4.width$3; let jsx$2; if ((p9 === false)) { const x$4 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$2 = (x$4 === p10) } else { jsx$2 = false }; if (jsx$2) { return "uint" } }; if (rc72) { const p13 = x4.signed$3; const p14 = x4.width$3; let jsx$3; if ((p13 === false)) { const x$6 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$3 = (x$6 === p14) } else { jsx$3 = false }; if (jsx$3) { return "ulong" } }; if (rc71) { const p17 = x2.signed$3; if ((p17 === true)) { return "sbyte" } }; if (rc72) { const p19 = x4.signed$3; const p20 = x4.width$3; let jsx$4; if ((p19 === true)) { const x$8 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$4 = (x$8 === p20) } else { jsx$4 = false }; if (jsx$4) { return "short" } }; if (rc72) { const p23 = x4.signed$3; const p24 = x4.width$3; let jsx$5; if ((p23 === true)) { const x$10 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$5 = (x$10 === p24) } else { jsx$5 = false }; if (jsx$5) { return "int" } }; if (rc72) { const p27 = x4.signed$3; const p28 = x4.width$3; let jsx$6; if ((p27 === true)) { const x$12 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$6 = (x$12 === p28) } else { jsx$6 = false }; if (jsx$6) { return "long" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) { rc73 = true; x30 = x1; const p31 = x30.width$3; const x$14 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); if ((x$14 === p31)) { return "float" } }; if (rc73) { const p34 = x30.width$3; const x$16 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); if ((x$16 === p34)) { return "double" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { return "ulong" }; const x$18 = $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$(); if ((x$18 === x1)) { return "int" }; const x$20 = $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$(); if ((x$20 === x1)) { return "double" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { return "bool" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { return "string" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { return "byte[]" }; const x$22 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); if ((x$22 === x1)) { return "object" }; const x$24 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); let jsx$7; if ((x$24 === x1)) { jsx$7 = true } else { const x$26 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$7 = (x$26 === x1) }; if (jsx$7) { return "KaitaiStruct" }; const x$28 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); let jsx$8; if ((x$28 === x1)) { jsx$8 = true } else { const x$30 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); jsx$8 = (x$30 === x1) }; if (jsx$8) { return "KaitaiStream" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x67 = x1; return this.types2class__sc_Iterable__T(x67.name$3) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x39 = x1; const name = x39.name$1; return this.types2class__sc_Iterable__T(name) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x68 = x1; return (("List<" + this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(x68.elType$2)) + ">") }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x69 = x1; attrType = x69.combinedType__Lio_kaitai_struct_datatype_DataType(); continue _kaitaiType2NativeType }; throw new $c_s_MatchError().init___O(x1) } }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_CSharpCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; kaitaiType2NativeTypeNullable__Lio_kaitai_struct_datatype_DataType__Z__T(t, isNullable) { const r = this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(t); return (isNullable ? (((t instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType) || (t instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) ? (r + "?") : r) : r) }; ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err) { const x = $m_Lio_kaitai_struct_datatype_EndOfStreamError$(); if ((x === err)) { return "EndOfStreamException" } else { return err.name__T() } }; types2class__sc_Iterable__T(names) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(name$2) { const name = name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }) })(this)); const this$2 = $m_sc_Iterable$(); return names.map__F1__scg_CanBuildFrom__O(jsx$1, this$2.ReusableCBFInstance$2).mkString__T__T(".") }; } const $d_Lio_kaitai_struct_languages_CSharpCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_CSharpCompiler$: 0 }, false, "io.kaitai.struct.languages.CSharpCompiler$", { Lio_kaitai_struct_languages_CSharpCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1 }); $c_Lio_kaitai_struct_languages_CSharpCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_CSharpCompiler$; let $n_Lio_kaitai_struct_languages_CSharpCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_CSharpCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_CSharpCompiler$)) { $n_Lio_kaitai_struct_languages_CSharpCompiler$ = new $c_Lio_kaitai_struct_languages_CSharpCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_CSharpCompiler$ }); class $c_Lio_kaitai_struct_languages_GoCompiler$ extends $c_O { init___() { return this }; enumToStr__sci_List__T__T(typeName, enumName) { return ((this.types2class__sci_List__T(typeName) + "__") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(enumName)) }; types2class__sci_List__T(names) { const f = (function($this) { return (function(x$2) { const x = x$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(x) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((names === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = names.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = names.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(names, bf); let these = names; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T("_") }; kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attrType) { _kaitaiType2NativeType: while (true) { let rc70 = false; let x2 = null; let rc71 = false; let x4 = null; let rc72 = false; let x30 = null; const x1 = attrType; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { rc70 = true; x2 = x1; const p3 = x2.signed$3; if ((p3 === false)) { return "uint8" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { rc71 = true; x4 = x1; const p5 = x4.signed$3; const p6 = x4.width$3; let jsx$1; if ((p5 === false)) { const x$2 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$1 = (x$2 === p6) } else { jsx$1 = false }; if (jsx$1) { return "uint16" } }; if (rc71) { const p9 = x4.signed$3; const p10 = x4.width$3; let jsx$2; if ((p9 === false)) { const x$4 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$2 = (x$4 === p10) } else { jsx$2 = false }; if (jsx$2) { return "uint32" } }; if (rc71) { const p13 = x4.signed$3; const p14 = x4.width$3; let jsx$3; if ((p13 === false)) { const x$6 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$3 = (x$6 === p14) } else { jsx$3 = false }; if (jsx$3) { return "uint64" } }; if (rc70) { const p17 = x2.signed$3; if ((p17 === true)) { return "int8" } }; if (rc71) { const p19 = x4.signed$3; const p20 = x4.width$3; let jsx$4; if ((p19 === true)) { const x$8 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$4 = (x$8 === p20) } else { jsx$4 = false }; if (jsx$4) { return "int16" } }; if (rc71) { const p23 = x4.signed$3; const p24 = x4.width$3; let jsx$5; if ((p23 === true)) { const x$10 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$5 = (x$10 === p24) } else { jsx$5 = false }; if (jsx$5) { return "int32" } }; if (rc71) { const p27 = x4.signed$3; const p28 = x4.width$3; let jsx$6; if ((p27 === true)) { const x$12 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$6 = (x$12 === p28) } else { jsx$6 = false }; if (jsx$6) { return "int64" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) { rc72 = true; x30 = x1; const p31 = x30.width$3; const x$14 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); if ((x$14 === p31)) { return "float32" } }; if (rc72) { const p34 = x30.width$3; const x$16 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); if ((x$16 === p34)) { return "float64" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { return "uint64" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { return "bool" }; const x$18 = $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$(); if ((x$18 === x1)) { return "int" }; const x$20 = $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$(); if ((x$20 === x1)) { return "float64" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { return "string" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { return "[]byte" }; const x$22 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); if ((x$22 === x1)) { return "interface{}" }; const x$24 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); let jsx$7; if ((x$24 === x1)) { jsx$7 = true } else { const x$26 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); jsx$7 = (x$26 === x1) }; if (jsx$7) { return "*kaitai.Stream" }; const x$28 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); let jsx$8; if ((x$28 === x1)) { jsx$8 = true } else { const x$30 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$8 = (x$30 === x1) }; if (jsx$8) { return "interface{}" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x65 = x1; const x1$2 = x65.classSpec$3; let jsx$9; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const cs = x2$2.value$2; jsx$9 = cs.name$1 } else { const x$32 = $m_s_None$(); if ((!(x$32 === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; jsx$9 = x65.name$3 }; return ("*" + this.types2class__sci_List__T(jsx$9)) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x66 = x1; return this.types2class__sci_List__T(x66.enumSpec$1.get__O().name$1) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x67 = x1; return ("[]" + this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(x67.elType$2)) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x68 = x1; attrType = x68.combinedType__Lio_kaitai_struct_datatype_DataType(); continue _kaitaiType2NativeType }; throw new $c_s_MatchError().init___O(x1) } }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_GoCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err) { return ("kaitai." + err.name__T()) }; } const $d_Lio_kaitai_struct_languages_GoCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_GoCompiler$: 0 }, false, "io.kaitai.struct.languages.GoCompiler$", { Lio_kaitai_struct_languages_GoCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1 }); $c_Lio_kaitai_struct_languages_GoCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_GoCompiler$; let $n_Lio_kaitai_struct_languages_GoCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_GoCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_GoCompiler$)) { $n_Lio_kaitai_struct_languages_GoCompiler$ = new $c_Lio_kaitai_struct_languages_GoCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_GoCompiler$ }); class $c_Lio_kaitai_struct_languages_JavaScriptCompiler$ extends $c_O { init___() { return this }; types2class__sci_List__T(types) { const f = (function($this) { return (function(name$2) { const name = name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((types === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = types.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = types.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(types, bf); let these = types; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T(".") }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_JavaScriptCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err) { const x = $m_Lio_kaitai_struct_datatype_EndOfStreamError$(); if ((x === err)) { return "KaitaiStream.EOFError" } else { return ("KaitaiStream." + err.name__T()) } }; } const $d_Lio_kaitai_struct_languages_JavaScriptCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_JavaScriptCompiler$: 0 }, false, "io.kaitai.struct.languages.JavaScriptCompiler$", { Lio_kaitai_struct_languages_JavaScriptCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1 }); $c_Lio_kaitai_struct_languages_JavaScriptCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_JavaScriptCompiler$; let $n_Lio_kaitai_struct_languages_JavaScriptCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_JavaScriptCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_JavaScriptCompiler$)) { $n_Lio_kaitai_struct_languages_JavaScriptCompiler$ = new $c_Lio_kaitai_struct_languages_JavaScriptCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_JavaScriptCompiler$ }); class $c_Lio_kaitai_struct_languages_LuaCompiler$ extends $c_O { init___() { return this }; types2class__sci_List__T(name) { const f = (function($this) { return (function(x$2) { const x = x$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(x) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((name === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = name.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = name.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(name, bf); let these = name; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T(".") }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_LuaCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; } const $d_Lio_kaitai_struct_languages_LuaCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_LuaCompiler$: 0 }, false, "io.kaitai.struct.languages.LuaCompiler$", { Lio_kaitai_struct_languages_LuaCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1 }); $c_Lio_kaitai_struct_languages_LuaCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_LuaCompiler$; let $n_Lio_kaitai_struct_languages_LuaCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_LuaCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_LuaCompiler$)) { $n_Lio_kaitai_struct_languages_LuaCompiler$ = new $c_Lio_kaitai_struct_languages_LuaCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_LuaCompiler$ }); class $c_Lio_kaitai_struct_languages_NimCompiler$ extends $c_O { init___() { return this }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_NimCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; ksToNim__Lio_kaitai_struct_datatype_DataType__T(attrType) { _ksToNim: while (true) { let rc70 = false; let x2 = null; let rc71 = false; let x4 = null; let rc72 = false; let x30 = null; const x1 = attrType; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { rc70 = true; x2 = x1; const p3 = x2.signed$3; if ((p3 === false)) { return "uint8" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { rc71 = true; x4 = x1; const p5 = x4.signed$3; const p6 = x4.width$3; let jsx$1; if ((p5 === false)) { const x$2 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$1 = (x$2 === p6) } else { jsx$1 = false }; if (jsx$1) { return "uint16" } }; if (rc71) { const p9 = x4.signed$3; const p10 = x4.width$3; let jsx$2; if ((p9 === false)) { const x$4 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$2 = (x$4 === p10) } else { jsx$2 = false }; if (jsx$2) { return "uint32" } }; if (rc71) { const p13 = x4.signed$3; const p14 = x4.width$3; let jsx$3; if ((p13 === false)) { const x$6 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$3 = (x$6 === p14) } else { jsx$3 = false }; if (jsx$3) { return "uint64" } }; if (rc70) { const p17 = x2.signed$3; if ((p17 === true)) { return "int8" } }; if (rc71) { const p19 = x4.signed$3; const p20 = x4.width$3; let jsx$4; if ((p19 === true)) { const x$8 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$4 = (x$8 === p20) } else { jsx$4 = false }; if (jsx$4) { return "int16" } }; if (rc71) { const p23 = x4.signed$3; const p24 = x4.width$3; let jsx$5; if ((p23 === true)) { const x$10 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$5 = (x$10 === p24) } else { jsx$5 = false }; if (jsx$5) { return "int32" } }; if (rc71) { const p27 = x4.signed$3; const p28 = x4.width$3; let jsx$6; if ((p27 === true)) { const x$12 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$6 = (x$12 === p28) } else { jsx$6 = false }; if (jsx$6) { return "int64" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) { rc72 = true; x30 = x1; const p31 = x30.width$3; const x$14 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); if ((x$14 === p31)) { return "float32" } }; if (rc72) { const p34 = x30.width$3; const x$16 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); if ((x$16 === p34)) { return "float64" } }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { return "uint64" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { return "bool" }; const x$18 = $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$(); if ((x$18 === x1)) { return "int" }; const x$20 = $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$(); if ((x$20 === x1)) { return "float64" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { return "string" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { return "seq[byte]" }; const x$22 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); let jsx$7; if ((x$22 === x1)) { jsx$7 = true } else { const x$24 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$7 = (x$24 === x1) }; if (jsx$7) { return "KaitaiStruct" }; const x$26 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); let jsx$8; if ((x$26 === x1)) { jsx$8 = true } else { const x$28 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); jsx$8 = (x$28 === x1) }; if (jsx$8) { return "KaitaiStream" }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x64 = x1; const x1$2 = x64.classSpec$3; let jsx$9; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const cs = x2$2.value$2; jsx$9 = cs.name$1 } else { const x$30 = $m_s_None$(); if ((!(x$30 === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; jsx$9 = x64.name$3 }; return this.namespaced__sci_List__T(jsx$9) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x65 = x1; return this.namespaced__sci_List__T(x65.enumSpec$1.get__O().name$1) }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x66 = x1; return (("seq[" + this.ksToNim__Lio_kaitai_struct_datatype_DataType__T(x66.elType$2)) + "]") }; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x67 = x1; attrType = x67.combinedType__Lio_kaitai_struct_datatype_DataType(); continue _ksToNim }; const x$32 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); if ((x$32 === x1)) { return "KaitaiStruct" }; throw new $c_s_MatchError().init___O(x1) } }; namespaced__sci_List__T(names) { const f = (function($this) { return (function(n$2) { const n = n$2; return $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(n, true) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((names === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = names.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = names.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(names, bf); let these = names; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T("_") }; camelCase__T__Z__T(s, upper) { _camelCase: while (true) { if (upper) { const thiz = s; const xs = $m_sjsr_RuntimeString$().split__T__T__I__AT(thiz, "_", 0); let elems$2 = null; elems$2 = []; const x1 = xs.u.length; switch (x1) { case (-1): { break } }; let i = 0; const len = xs.u.length; while ((i < len)) { const index = i; const arg1 = xs.u[index]; const s$2 = arg1; const elem = $m_Lio_kaitai_struct_Utils$().capitalize__T__T(s$2); const unboxedElem = ((elem === null) ? null : elem); elems$2.push(unboxedElem); i = ((1 + i) | 0) }; const xs$1 = $makeNativeArrayWrapper($d_T.getArrayOf(), elems$2); const this$11 = new $c_scm_ArrayOps$ofRef().init___AO(xs$1); return $f_sc_TraversableOnce__mkString__T__T__T__T(this$11, "", "", "") } else { const thiz$1 = s; if ((((thiz$1.length | 0) >= 0) && (thiz$1.substring(0, ("_".length | 0)) === "_"))) { const thiz$2 = s; const temp$s = thiz$2.substring(1); s = temp$s; upper = false; continue _camelCase } else { const thiz$3 = s; const xs$2 = $m_sjsr_RuntimeString$().split__T__T__I__AT(thiz$3, "_", 0); let i$1 = (((-1) + xs$2.u.length) | 0); let result = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$23 = result; const index$1 = i$1; const x = xs$2.u[index$1]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$23); i$1 = (((-1) + i$1) | 0) }; const x1$1 = result; if ((!(x1$1 instanceof $c_sci_$colon$colon))) { throw new $c_s_MatchError().init___O(x1$1) }; const x2 = x1$1; const firstWord = x2.head$5; const restWords = x2.tl$5; const f = (function(this$2$1) { return (function(s$3$2) { const s$3 = s$3$2; return $m_Lio_kaitai_struct_Utils$().capitalize__T__T(s$3) }) })(this); const this$24 = $m_sci_List$(); const bf = this$24.ReusableCBFInstance$2; let this$27; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((restWords === $m_sci_Nil$())) { this$27 = $m_sci_Nil$() } else { const arg1$1 = restWords.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); let t = h; let rest = restWords.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$2 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$2), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$25 = rest; rest = this$25.tail__sci_List() }; this$27 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(restWords, bf); let these = restWords; while ((!these.isEmpty__Z())) { const arg1$3 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$3)); const this$26 = these; these = this$26.tail__sci_List() }; this$27 = b.result__O() }; const this$28 = new $c_sci_$colon$colon().init___O__sci_List(firstWord, this$27); return $f_sc_TraversableOnce__mkString__T__T__T__T(this$28, "", "", "") } } } }; } const $d_Lio_kaitai_struct_languages_NimCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_NimCompiler$: 0 }, false, "io.kaitai.struct.languages.NimCompiler$", { Lio_kaitai_struct_languages_NimCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1 }); $c_Lio_kaitai_struct_languages_NimCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_NimCompiler$; let $n_Lio_kaitai_struct_languages_NimCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_NimCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_NimCompiler$)) { $n_Lio_kaitai_struct_languages_NimCompiler$ = new $c_Lio_kaitai_struct_languages_NimCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_NimCompiler$ }); class $c_Lio_kaitai_struct_languages_PHPCompiler$ extends $c_O { init___() { return this }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_PHPCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; types2classRel__sci_List__T(names) { const f = (function($this) { return (function(name$2) { const name = name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((names === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = names.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = names.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(names, bf); let these = names; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T("\\") }; ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err) { return ("\\Kaitai\\Struct\\Error\\" + err.name__T()) }; } const $d_Lio_kaitai_struct_languages_PHPCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_PHPCompiler$: 0 }, false, "io.kaitai.struct.languages.PHPCompiler$", { Lio_kaitai_struct_languages_PHPCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1 }); $c_Lio_kaitai_struct_languages_PHPCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_PHPCompiler$; let $n_Lio_kaitai_struct_languages_PHPCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_PHPCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_PHPCompiler$)) { $n_Lio_kaitai_struct_languages_PHPCompiler$ = new $c_Lio_kaitai_struct_languages_PHPCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_PHPCompiler$ }); class $c_Lio_kaitai_struct_languages_PerlCompiler$ extends $c_O { init___() { return this }; types2class__sci_List__T(t) { const f = (function($this) { return (function(name$2) { const name = name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((t === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = t.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t$1 = h; let rest = t.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t$1.tl$5 = nx; t$1 = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(t, bf); let these = t; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T("::") }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_PerlCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; kstreamName__T() { return "IO::KaitaiStruct::Stream" }; kstructName__T() { return "IO::KaitaiStruct::Struct" }; } const $d_Lio_kaitai_struct_languages_PerlCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_PerlCompiler$: 0 }, false, "io.kaitai.struct.languages.PerlCompiler$", { Lio_kaitai_struct_languages_PerlCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1 }); $c_Lio_kaitai_struct_languages_PerlCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_PerlCompiler$; let $n_Lio_kaitai_struct_languages_PerlCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_PerlCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_PerlCompiler$)) { $n_Lio_kaitai_struct_languages_PerlCompiler$ = new $c_Lio_kaitai_struct_languages_PerlCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_PerlCompiler$ }); class $c_Lio_kaitai_struct_languages_PythonCompiler$ extends $c_O { init___() { return this }; types2class__sci_List__T(name) { const f = (function($this) { return (function(x$2) { const x = x$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(x) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((name === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = name.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = name.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(name, bf); let these = name; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T(".") }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_PythonCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err) { const x = $m_Lio_kaitai_struct_datatype_EndOfStreamError$(); if ((x === err)) { return "EOFError" } else { return ("kaitaistruct." + err.name__T()) } }; } const $d_Lio_kaitai_struct_languages_PythonCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_PythonCompiler$: 0 }, false, "io.kaitai.struct.languages.PythonCompiler$", { Lio_kaitai_struct_languages_PythonCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1 }); $c_Lio_kaitai_struct_languages_PythonCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_PythonCompiler$; let $n_Lio_kaitai_struct_languages_PythonCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_PythonCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_PythonCompiler$)) { $n_Lio_kaitai_struct_languages_PythonCompiler$ = new $c_Lio_kaitai_struct_languages_PythonCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_PythonCompiler$ }); class $c_Lio_kaitai_struct_languages_RustCompiler$ extends $c_O { init___() { return this }; getCompiler__Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_languages_components_LanguageCompiler(tp, config) { return new $c_Lio_kaitai_struct_languages_RustCompiler().init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(tp, config) }; types2classRel__sci_List__T(names) { const f = (function($this) { return (function(name$2) { const name = name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((names === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = names.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = names.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(names, bf); let these = names; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T("__") }; } const $d_Lio_kaitai_struct_languages_RustCompiler$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_RustCompiler$: 0 }, false, "io.kaitai.struct.languages.RustCompiler$", { Lio_kaitai_struct_languages_RustCompiler$: 1, O: 1, Lio_kaitai_struct_languages_components_LanguageCompilerStatic: 1, Lio_kaitai_struct_languages_components_StreamStructNames: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1 }); $c_Lio_kaitai_struct_languages_RustCompiler$.prototype.$classData = $d_Lio_kaitai_struct_languages_RustCompiler$; let $n_Lio_kaitai_struct_languages_RustCompiler$ = (void 0); const $m_Lio_kaitai_struct_languages_RustCompiler$ = (function() { if ((!$n_Lio_kaitai_struct_languages_RustCompiler$)) { $n_Lio_kaitai_struct_languages_RustCompiler$ = new $c_Lio_kaitai_struct_languages_RustCompiler$().init___() }; return $n_Lio_kaitai_struct_languages_RustCompiler$ }); class $c_Lio_kaitai_struct_languages_components_LanguageCompiler extends $c_O { constructor() { super(); this.typeProvider$1 = null; this.config$1 = null }; instanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) }; attrParseIfHeader__Lio_kaitai_struct_format_Identifier__s_Option__V(id, ifExpr) { if ((ifExpr instanceof $c_s_Some)) { const x2 = ifExpr; const e = x2.value$2; this.condIfSetNull__Lio_kaitai_struct_format_Identifier__V(id); this.condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(e); this.condIfSetNonNull__Lio_kaitai_struct_format_Identifier__V(id) } else { const x = $m_s_None$(); if ((!(x === ifExpr))) { throw new $c_s_MatchError().init___O(ifExpr) } } }; debugClassSequence__sci_List__V(seq) { /**/ }; classToString__Lio_kaitai_struct_exprlang_Ast$expr__V(toStringExpr) { /**/ }; condIfSetNonNull__Lio_kaitai_struct_format_Identifier__V(instName) { /**/ }; switchElseEnd__V() { this.switchCaseEnd__V() }; attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, attrType, checkExpr, err, errArgs) { /**/ }; attrDestructor__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__V(attr, id) { /**/ }; blockScopeHeader__V() { /**/ }; blockScopeFooter__V() { /**/ }; switchCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) }; switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { this.switchCasesRender__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) }; attrParseIfFooter__s_Option__V(ifExpr) { if ((ifExpr instanceof $c_s_Some)) { const x2 = ifExpr; const e = x2.value$2; this.condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(e) } else { const x = $m_s_None$(); if ((!(x === ifExpr))) { throw new $c_s_MatchError().init___O(ifExpr) } } }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { /**/ }; switchBytesOnlyAsRaw__Z() { return false }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { this.typeProvider$1 = typeProvider; this.config$1 = config; return this }; attrInit__Lio_kaitai_struct_format_AttrLikeSpec__V(attr) { /**/ }; classForwardDeclaration__sci_List__V(name) { /**/ }; classDestructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__V(name, parentType, topClassName) { /**/ }; innerEnums__Z() { return true }; opaqueClassDeclaration__Lio_kaitai_struct_format_ClassSpec__V(classSpec) { /**/ }; innerClasses__Z() { return true }; importFile__T__V(file) { /**/ }; instanceDeclHeader__sci_List__V(className) { /**/ }; fileFooter__T__V(topClassName) { /**/ }; instanceSetCalculated__Lio_kaitai_struct_format_InstanceIdentifier__V(instName) { /**/ }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { /**/ }; condIfSetNull__Lio_kaitai_struct_format_Identifier__V(instName) { /**/ }; innerDocstrings__Z() { return false }; switchCasesRender__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchOps__switchCasesRender__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) }; classDestructorFooter__V() { /**/ }; instanceClear__Lio_kaitai_struct_format_InstanceIdentifier__V(instName) { /**/ }; } const $isArrayOf_Lio_kaitai_struct_languages_components_LanguageCompiler = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_languages_components_LanguageCompiler))) }); class $c_Lio_kaitai_struct_precompile_ExpressionError extends $c_jl_RuntimeException { } const $isArrayOf_Lio_kaitai_struct_precompile_ExpressionError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_precompile_ExpressionError))) }); class $c_Lio_kaitai_struct_problems_ProblemCoords extends $c_O { constructor() { super(); this.file$1 = null; this.path$1 = null; this.line$1 = null; this.col$1 = null }; productPrefix__T() { return "ProblemCoords" }; productArity__I() { return 4 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_problems_ProblemCoords)) { const ProblemCoords$1 = x$1; const x = this.file$1; const x$2 = ProblemCoords$1.file$1; let jsx$2; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.path$1; const x$4 = ProblemCoords$1.path$1; jsx$2 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$5 = this.line$1; const x$6 = ProblemCoords$1.line$1; jsx$1 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$1 = false }; if (jsx$1) { const x$7 = this.col$1; const x$8 = ProblemCoords$1.col$1; return ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.file$1; break } case 1: { return this.path$1; break } case 2: { return this.line$1; break } case 3: { return this.col$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___s_Option__s_Option__s_Option__s_Option(file, path, line, col) { this.file$1 = file; this.path$1 = path; this.line$1 = line; this.col$1 = col; return this }; message__T() { const jsx$3 = $m_Lio_kaitai_struct_problems_ProblemCoords$().formatFileName__s_Option__T(this.file$1); const x1 = this.line$1; let jsx$1; if ((x1 instanceof $c_s_Some)) { const x2 = x1; const lineNum = (x2.value$2 | 0); const x1$2 = this.col$1; let jsx$2; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const colNum = (x2$2.value$2 | 0); jsx$2 = (":" + colNum) } else { const x = $m_s_None$(); if ((!(x === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; jsx$2 = "" }; jsx$1 = ((":" + lineNum) + jsx$2) } else { const x$3 = $m_s_None$(); if ((!(x$3 === x1))) { throw new $c_s_MatchError().init___O(x1) }; jsx$1 = "" }; const this$1 = this.path$1; let this$2; if (this$1.isEmpty__Z()) { this$2 = $m_s_None$() } else { const arg1 = this$1.get__O(); const pathVal = arg1; this$2 = new $c_s_Some().init___O((": " + $f_sc_TraversableOnce__mkString__T__T__T__T(pathVal, "/", "/", ""))) }; return ((jsx$3 + jsx$1) + (this$2.isEmpty__Z() ? "" : this$2.get__O())) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_problems_ProblemCoords = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_ProblemCoords))) }); const $d_Lio_kaitai_struct_problems_ProblemCoords = new $TypeData().initClass({ Lio_kaitai_struct_problems_ProblemCoords: 0 }, false, "io.kaitai.struct.problems.ProblemCoords", { Lio_kaitai_struct_problems_ProblemCoords: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_ProblemCoords.prototype.$classData = $d_Lio_kaitai_struct_problems_ProblemCoords; class $c_Ljava_io_FilterOutputStream extends $c_Ljava_io_OutputStream { constructor() { super(); this.out$2 = null }; init___Ljava_io_OutputStream(out) { this.out$2 = out; return this }; } class $c_Ljava_nio_BufferOverflowException extends $c_jl_RuntimeException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $isArrayOf_Ljava_nio_BufferOverflowException = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_nio_BufferOverflowException))) }); const $d_Ljava_nio_BufferOverflowException = new $TypeData().initClass({ Ljava_nio_BufferOverflowException: 0 }, false, "java.nio.BufferOverflowException", { Ljava_nio_BufferOverflowException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Ljava_nio_BufferOverflowException.prototype.$classData = $d_Ljava_nio_BufferOverflowException; class $c_Ljava_nio_BufferUnderflowException extends $c_jl_RuntimeException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $isArrayOf_Ljava_nio_BufferUnderflowException = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_nio_BufferUnderflowException))) }); const $d_Ljava_nio_BufferUnderflowException = new $TypeData().initClass({ Ljava_nio_BufferUnderflowException: 0 }, false, "java.nio.BufferUnderflowException", { Ljava_nio_BufferUnderflowException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Ljava_nio_BufferUnderflowException.prototype.$classData = $d_Ljava_nio_BufferUnderflowException; class $c_Ljava_nio_charset_CharacterCodingException extends $c_Ljava_io_IOException { } class $c_jl_ArithmeticException extends $c_jl_RuntimeException { init___T(s) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $isArrayOf_jl_ArithmeticException = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_ArithmeticException))) }); const $d_jl_ArithmeticException = new $TypeData().initClass({ jl_ArithmeticException: 0 }, false, "java.lang.ArithmeticException", { jl_ArithmeticException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_ArithmeticException.prototype.$classData = $d_jl_ArithmeticException; class $c_jl_ClassCastException { } const $isArrayOf_jl_ClassCastException = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.jl_ClassCastException))) }); class $c_jl_IllegalArgumentException extends $c_jl_RuntimeException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; init___T(s) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $d_jl_IllegalArgumentException = new $TypeData().initClass({ jl_IllegalArgumentException: 0 }, false, "java.lang.IllegalArgumentException", { jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_IllegalArgumentException.prototype.$classData = $d_jl_IllegalArgumentException; class $c_jl_IllegalStateException extends $c_jl_RuntimeException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; init___T(s) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; init___T__jl_Throwable(s, e) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, e, true, true); return this }; } const $d_jl_IllegalStateException = new $TypeData().initClass({ jl_IllegalStateException: 0 }, false, "java.lang.IllegalStateException", { jl_IllegalStateException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_IllegalStateException.prototype.$classData = $d_jl_IllegalStateException; class $c_jl_IndexOutOfBoundsException extends $c_jl_RuntimeException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; init___T(s) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $d_jl_IndexOutOfBoundsException = new $TypeData().initClass({ jl_IndexOutOfBoundsException: 0 }, false, "java.lang.IndexOutOfBoundsException", { jl_IndexOutOfBoundsException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_IndexOutOfBoundsException.prototype.$classData = $d_jl_IndexOutOfBoundsException; class $c_jl_JSConsoleBasedPrintStream$DummyOutputStream extends $c_Ljava_io_OutputStream { init___() { return this }; } const $d_jl_JSConsoleBasedPrintStream$DummyOutputStream = new $TypeData().initClass({ jl_JSConsoleBasedPrintStream$DummyOutputStream: 0 }, false, "java.lang.JSConsoleBasedPrintStream$DummyOutputStream", { jl_JSConsoleBasedPrintStream$DummyOutputStream: 1, Ljava_io_OutputStream: 1, O: 1, Ljava_io_Closeable: 1, jl_AutoCloseable: 1, Ljava_io_Flushable: 1 }); $c_jl_JSConsoleBasedPrintStream$DummyOutputStream.prototype.$classData = $d_jl_JSConsoleBasedPrintStream$DummyOutputStream; class $c_jl_NegativeArraySizeException extends $c_jl_RuntimeException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $d_jl_NegativeArraySizeException = new $TypeData().initClass({ jl_NegativeArraySizeException: 0 }, false, "java.lang.NegativeArraySizeException", { jl_NegativeArraySizeException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_NegativeArraySizeException.prototype.$classData = $d_jl_NegativeArraySizeException; class $c_jl_NullPointerException extends $c_jl_RuntimeException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; init___T(s) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $d_jl_NullPointerException = new $TypeData().initClass({ jl_NullPointerException: 0 }, false, "java.lang.NullPointerException", { jl_NullPointerException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_NullPointerException.prototype.$classData = $d_jl_NullPointerException; class $c_jl_UnsupportedOperationException extends $c_jl_RuntimeException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; init___T(s) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $d_jl_UnsupportedOperationException = new $TypeData().initClass({ jl_UnsupportedOperationException: 0 }, false, "java.lang.UnsupportedOperationException", { jl_UnsupportedOperationException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_UnsupportedOperationException.prototype.$classData = $d_jl_UnsupportedOperationException; class $c_ju_AbstractSet extends $c_ju_AbstractCollection { equals__O__Z(that) { if ((that === this)) { return true } else if ($is_ju_Collection(that)) { const x2 = that; return ((x2.size__I() === this.size__I()) && this.containsAll__ju_Collection__Z(x2)) } else { return false } }; hashCode__I() { const __self = new $c_sc_convert_Wrappers$MapWrapper$$anon$2$$anon$3().init___sc_convert_Wrappers$MapWrapper$$anon$2(this); let result = 0; while (__self.ui$1.hasNext__Z()) { const arg1 = result; const arg2 = __self.next__ju_Map$Entry(); const prev = (arg1 | 0); result = ((arg2.hashCode__I() + prev) | 0) }; return (result | 0) }; } class $c_ju_NoSuchElementException extends $c_jl_RuntimeException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; init___T(s) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $d_ju_NoSuchElementException = new $TypeData().initClass({ ju_NoSuchElementException: 0 }, false, "java.util.NoSuchElementException", { ju_NoSuchElementException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_NoSuchElementException.prototype.$classData = $d_ju_NoSuchElementException; class $c_s_MatchError extends $c_jl_RuntimeException { constructor() { super(); this.objString$4 = null; this.obj$4 = null; this.bitmap$0$4 = false }; objString$lzycompute__p4__T() { if ((!this.bitmap$0$4)) { this.objString$4 = ((this.obj$4 === null) ? "null" : this.liftedTree1$1__p4__T()); this.bitmap$0$4 = true }; return this.objString$4 }; ofClass$1__p4__T() { const this$1 = this.obj$4; return ("of class " + $objectGetClass(this$1).getName__T()) }; liftedTree1$1__p4__T() { try { return ((($objectToString(this.obj$4) + " (") + this.ofClass$1__p4__T()) + ")") } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { return ("an instance " + this.ofClass$1__p4__T()) } else { throw e } } }; getMessage__T() { return this.objString__p4__T() }; objString__p4__T() { return ((!this.bitmap$0$4) ? this.objString$lzycompute__p4__T() : this.objString$4) }; init___O(obj) { this.obj$4 = obj; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $isArrayOf_s_MatchError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_MatchError))) }); const $d_s_MatchError = new $TypeData().initClass({ s_MatchError: 0 }, false, "scala.MatchError", { s_MatchError: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_s_MatchError.prototype.$classData = $d_s_MatchError; class $c_s_Option extends $c_O { toList__sci_List() { return (this.isEmpty__Z() ? $m_sci_Nil$() : new $c_sci_$colon$colon().init___O__sci_List(this.get__O(), $m_sci_Nil$())) }; isDefined__Z() { return (!this.isEmpty__Z()) }; contains__O__Z(elem) { return ((!this.isEmpty__Z()) && $m_sr_BoxesRunTime$().equals__O__O__Z(this.get__O(), elem)) }; } const $isArrayOf_s_Option = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_Option))) }); class $c_s_PartialFunction$$anon$1 extends $c_O { constructor() { super(); this.lift$1 = null }; init___() { this.lift$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$2) { return $m_s_None$() }) })(this)); return this }; apply__O__O(v1) { this.apply__O__sr_Nothing$(v1) }; runWith__F1__F1(action) { return $m_s_PartialFunction$().scala$PartialFunction$$constFalse$f }; toString__T() { return "" }; isDefinedAt__O__Z(x) { return false }; applyOrElse__O__F1__O(x, $default) { return $f_s_PartialFunction__applyOrElse__O__F1__O(this, x, $default) }; apply__O__sr_Nothing$(x) { throw new $c_s_MatchError().init___O(x) }; } const $d_s_PartialFunction$$anon$1 = new $TypeData().initClass({ s_PartialFunction$$anon$1: 0 }, false, "scala.PartialFunction$$anon$1", { s_PartialFunction$$anon$1: 1, O: 1, s_PartialFunction: 1, F1: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_PartialFunction$$anon$1.prototype.$classData = $d_s_PartialFunction$$anon$1; class $c_s_PartialFunction$Lifted extends $c_sr_AbstractFunction1 { constructor() { super(); this.pf$2 = null }; apply__O__O(v1) { return this.apply__O__s_Option(v1) }; init___s_PartialFunction(pf) { this.pf$2 = pf; return this }; apply__O__s_Option(x) { const z = this.pf$2.applyOrElse__O__F1__O(x, $m_s_PartialFunction$().scala$PartialFunction$$fallback$undpf$f); return ((!$m_s_PartialFunction$().scala$PartialFunction$$fallbackOccurred__O__Z(z)) ? new $c_s_Some().init___O(z) : $m_s_None$()) }; } const $d_s_PartialFunction$Lifted = new $TypeData().initClass({ s_PartialFunction$Lifted: 0 }, false, "scala.PartialFunction$Lifted", { s_PartialFunction$Lifted: 1, sr_AbstractFunction1: 1, O: 1, F1: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_PartialFunction$Lifted.prototype.$classData = $d_s_PartialFunction$Lifted; class $c_s_Predef$$anon$2 extends $c_s_Predef$$less$colon$less { init___() { return this }; apply__O__O(x) { return x }; } const $d_s_Predef$$anon$2 = new $TypeData().initClass({ s_Predef$$anon$2: 0 }, false, "scala.Predef$$anon$2", { s_Predef$$anon$2: 1, s_Predef$$less$colon$less: 1, O: 1, F1: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_Predef$$anon$2.prototype.$classData = $d_s_Predef$$anon$2; class $c_s_Predef$$anon$3 extends $c_s_Predef$$eq$colon$eq { init___() { return this }; apply__O__O(x) { return x }; } const $d_s_Predef$$anon$3 = new $TypeData().initClass({ s_Predef$$anon$3: 0 }, false, "scala.Predef$$anon$3", { s_Predef$$anon$3: 1, s_Predef$$eq$colon$eq: 1, O: 1, F1: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_Predef$$anon$3.prototype.$classData = $d_s_Predef$$anon$3; class $c_s_StringContext extends $c_O { constructor() { super(); this.parts$1 = null }; productPrefix__T() { return "StringContext" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_s_StringContext)) { const StringContext$1 = x$1; const x = this.parts$1; const x$2 = StringContext$1.parts$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.parts$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; checkLengths__sc_Seq__V(args) { if ((this.parts$1.length__I() !== ((1 + args.length__I()) | 0))) { throw new $c_jl_IllegalArgumentException().init___T((((("wrong number of arguments (" + args.length__I()) + ") for interpolated string with ") + this.parts$1.length__I()) + " parts")) } }; s__sc_Seq__T(args) { const f = (function($this) { return (function(str$2) { const str = str$2; const this$1 = $m_s_StringContext$(); return this$1.treatEscapes0__p1__T__Z__T(str, false) }) })(this); this.checkLengths__sc_Seq__V(args); const pi = this.parts$1.iterator__sc_Iterator(); const ai = args.iterator__sc_Iterator(); const arg1 = pi.next__O(); const bldr = new $c_jl_StringBuilder().init___T(f(arg1)); while (ai.hasNext__Z()) { const obj = ai.next__O(); bldr.java$lang$StringBuilder$$content$f = (("" + bldr.java$lang$StringBuilder$$content$f) + obj); const arg1$1 = pi.next__O(); const str$1 = f(arg1$1); bldr.java$lang$StringBuilder$$content$f = (("" + bldr.java$lang$StringBuilder$$content$f) + str$1) }; return bldr.java$lang$StringBuilder$$content$f }; init___sc_Seq(parts) { this.parts$1 = parts; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_s_StringContext = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_StringContext))) }); const $d_s_StringContext = new $TypeData().initClass({ s_StringContext: 0 }, false, "scala.StringContext", { s_StringContext: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_StringContext.prototype.$classData = $d_s_StringContext; const $f_s_math_Ordering__gteq__O__O__Z = (function($thiz, x, y) { return ($thiz.compare__O__O__I(x, y) >= 0) }); const $f_s_math_Ordering__gt__O__O__Z = (function($thiz, x, y) { return ($thiz.compare__O__O__I(x, y) > 0) }); const $f_s_math_Ordering__lt__O__O__Z = (function($thiz, x, y) { return ($thiz.compare__O__O__I(x, y) < 0) }); const $f_s_math_Ordering__lteq__O__O__Z = (function($thiz, x, y) { return ($thiz.compare__O__O__I(x, y) <= 0) }); const $f_s_reflect_ClassTag__newArray__I__O = (function($thiz, len) { const x1 = $thiz.runtimeClass__jl_Class(); return ((x1 === $d_B.getClassOf()) ? $newArrayObject($d_B.getArrayOf(), [len]) : ((x1 === $d_S.getClassOf()) ? $newArrayObject($d_S.getArrayOf(), [len]) : ((x1 === $d_C.getClassOf()) ? $newArrayObject($d_C.getArrayOf(), [len]) : ((x1 === $d_I.getClassOf()) ? $newArrayObject($d_I.getArrayOf(), [len]) : ((x1 === $d_J.getClassOf()) ? $newArrayObject($d_J.getArrayOf(), [len]) : ((x1 === $d_F.getClassOf()) ? $newArrayObject($d_F.getArrayOf(), [len]) : ((x1 === $d_D.getClassOf()) ? $newArrayObject($d_D.getArrayOf(), [len]) : ((x1 === $d_Z.getClassOf()) ? $newArrayObject($d_Z.getArrayOf(), [len]) : ((x1 === $d_V.getClassOf()) ? $newArrayObject($d_sr_BoxedUnit.getArrayOf(), [len]) : $m_jl_reflect_Array$().newInstance__jl_Class__I__O($thiz.runtimeClass__jl_Class(), len)))))))))) }); const $f_s_reflect_ClassTag__equals__O__Z = (function($thiz, x) { if ($is_s_reflect_ClassTag(x)) { const x$2 = $thiz.runtimeClass__jl_Class(); const x$3 = x.runtimeClass__jl_Class(); return (x$2 === x$3) } else { return false } }); const $f_s_reflect_ClassTag__prettyprint$1__ps_reflect_ClassTag__jl_Class__T = (function($thiz, clazz) { if (clazz.isArray__Z()) { const clazz$1 = clazz.getComponentType__jl_Class(); return (("Array[" + $f_s_reflect_ClassTag__prettyprint$1__ps_reflect_ClassTag__jl_Class__T($thiz, clazz$1)) + "]") } else { return clazz.getName__T() } }); const $is_s_reflect_ClassTag = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.s_reflect_ClassTag))) }); const $isArrayOf_s_reflect_ClassTag = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_reflect_ClassTag))) }); class $c_s_util_Either extends $c_O { } class $c_s_util_Try extends $c_O { } const $isArrayOf_s_util_Try = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_util_Try))) }); class $c_s_util_control_BreakControl extends $c_jl_Throwable { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; fillInStackTrace__jl_Throwable() { return $f_s_util_control_NoStackTrace__fillInStackTrace__jl_Throwable(this) }; } const $d_s_util_control_BreakControl = new $TypeData().initClass({ s_util_control_BreakControl: 0 }, false, "scala.util.control.BreakControl", { s_util_control_BreakControl: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1, s_util_control_ControlThrowable: 1, s_util_control_NoStackTrace: 1 }); $c_s_util_control_BreakControl.prototype.$classData = $d_s_util_control_BreakControl; const $f_sc_GenMapLike__equals__O__Z = (function($thiz, that) { if ($is_sc_GenMap(that)) { const x2 = that; return (($thiz === x2) || (($thiz.size__I() === x2.size__I()) && $f_sc_GenMapLike__liftedTree1$1__psc_GenMapLike__sc_GenMap__Z($thiz, x2))) } else { return false } }); const $f_sc_GenMapLike__liftedTree1$1__psc_GenMapLike__sc_GenMap__Z = (function($thiz, x2$1) { try { const this$1 = $thiz.iterator__sc_Iterator(); let res = true; while ((res && this$1.hasNext__Z())) { const arg1 = this$1.next__O(); const x0$1 = arg1; if ((x0$1 === null)) { throw new $c_s_MatchError().init___O(x0$1) }; const k = x0$1.$$und1__O(); const v = x0$1.$$und2__O(); const x1$2 = x2$1.get__O__s_Option(k); matchEnd6: { if ((x1$2 instanceof $c_s_Some)) { const x2 = x1$2; const p3 = x2.value$2; if ($m_sr_BoxesRunTime$().equals__O__O__Z(v, p3)) { res = true; break matchEnd6 } }; res = false } }; return res } catch (e) { if ((e instanceof $c_jl_ClassCastException)) { return false } else { throw e } } }); const $f_sc_GenSeqLike__equals__O__Z = (function($thiz, that) { if ($is_sc_GenSeq(that)) { const x2 = that; return ((x2 === $thiz) || $thiz.sameElements__sc_GenIterable__Z(x2)) } else { return false } }); const $f_sc_GenSeqLike__isDefinedAt__I__Z = (function($thiz, idx) { return ((idx >= 0) && (idx < $thiz.length__I())) }); const $is_sc_GenTraversable = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_GenTraversable))) }); const $isArrayOf_sc_GenTraversable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_GenTraversable))) }); class $c_sc_Iterable$ extends $c_scg_GenTraversableFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { $m_sci_Iterable$(); return new $c_scm_ListBuffer().init___() }; } const $d_sc_Iterable$ = new $TypeData().initClass({ sc_Iterable$: 0 }, false, "scala.collection.Iterable$", { sc_Iterable$: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_sc_Iterable$.prototype.$classData = $d_sc_Iterable$; let $n_sc_Iterable$ = (void 0); const $m_sc_Iterable$ = (function() { if ((!$n_sc_Iterable$)) { $n_sc_Iterable$ = new $c_sc_Iterable$().init___() }; return $n_sc_Iterable$ }); class $c_sc_Iterator$$anon$10 extends $c_sc_AbstractIterator { constructor() { super(); this.$$outer$2 = null; this.f$3$2 = null }; next__O() { return this.f$3$2.apply__O__O(this.$$outer$2.next__O()) }; init___sc_Iterator__F1($$outer, f$3) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; this.f$3$2 = f$3; return this }; hasNext__Z() { return this.$$outer$2.hasNext__Z() }; } const $d_sc_Iterator$$anon$10 = new $TypeData().initClass({ sc_Iterator$$anon$10: 0 }, false, "scala.collection.Iterator$$anon$10", { sc_Iterator$$anon$10: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sc_Iterator$$anon$10.prototype.$classData = $d_sc_Iterator$$anon$10; class $c_sc_Iterator$$anon$12 extends $c_sc_AbstractIterator { constructor() { super(); this.hd$2 = null; this.hdDefined$2 = false; this.$$outer$2 = null; this.p$1$2 = null }; next__O() { if (this.hasNext__Z()) { this.hdDefined$2 = false; return this.hd$2 } else { return $m_sc_Iterator$().empty$1.next__O() } }; init___sc_Iterator__F1($$outer, p$1) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; this.p$1$2 = p$1; this.hdDefined$2 = false; return this }; hasNext__Z() { if (this.hdDefined$2) { return true } else { do { if ((!this.$$outer$2.hasNext__Z())) { return false }; this.hd$2 = this.$$outer$2.next__O() } while ((!(!(!this.p$1$2.apply__O__O(this.hd$2))))); this.hdDefined$2 = true; return true } }; } const $d_sc_Iterator$$anon$12 = new $TypeData().initClass({ sc_Iterator$$anon$12: 0 }, false, "scala.collection.Iterator$$anon$12", { sc_Iterator$$anon$12: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sc_Iterator$$anon$12.prototype.$classData = $d_sc_Iterator$$anon$12; class $c_sc_Iterator$$anon$2 extends $c_sc_AbstractIterator { next__O() { this.next__sr_Nothing$() }; init___() { return this }; next__sr_Nothing$() { throw new $c_ju_NoSuchElementException().init___T("next on empty iterator") }; hasNext__Z() { return false }; } const $d_sc_Iterator$$anon$2 = new $TypeData().initClass({ sc_Iterator$$anon$2: 0 }, false, "scala.collection.Iterator$$anon$2", { sc_Iterator$$anon$2: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sc_Iterator$$anon$2.prototype.$classData = $d_sc_Iterator$$anon$2; class $c_sc_JavaConversions$ extends $c_O { init___() { return this }; } const $d_sc_JavaConversions$ = new $TypeData().initClass({ sc_JavaConversions$: 0 }, false, "scala.collection.JavaConversions$", { sc_JavaConversions$: 1, O: 1, sc_convert_WrapAsScala: 1, sc_convert_LowPriorityWrapAsScala: 1, sc_convert_WrapAsJava: 1, sc_convert_LowPriorityWrapAsJava: 1 }); $c_sc_JavaConversions$.prototype.$classData = $d_sc_JavaConversions$; let $n_sc_JavaConversions$ = (void 0); const $m_sc_JavaConversions$ = (function() { if ((!$n_sc_JavaConversions$)) { $n_sc_JavaConversions$ = new $c_sc_JavaConversions$().init___() }; return $n_sc_JavaConversions$ }); class $c_sc_LinearSeqLike$$anon$1 extends $c_sc_AbstractIterator { constructor() { super(); this.these$2 = null }; next__O() { if (this.hasNext__Z()) { const result = this.these$2.head__O(); this.these$2 = this.these$2.tail__O(); return result } else { return $m_sc_Iterator$().empty$1.next__O() } }; init___sc_LinearSeqLike($$outer) { this.these$2 = $$outer; return this }; toList__sci_List() { const xs = this.these$2.toList__sci_List(); this.these$2 = this.these$2.take__I__O(0); return xs }; hasNext__Z() { return (!this.these$2.isEmpty__Z()) }; } const $d_sc_LinearSeqLike$$anon$1 = new $TypeData().initClass({ sc_LinearSeqLike$$anon$1: 0 }, false, "scala.collection.LinearSeqLike$$anon$1", { sc_LinearSeqLike$$anon$1: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sc_LinearSeqLike$$anon$1.prototype.$classData = $d_sc_LinearSeqLike$$anon$1; class $c_sc_MapLike$$anon$1 extends $c_sc_AbstractIterator { constructor() { super(); this.iter$2 = null }; next__O() { return this.iter$2.next__O().$$und1__O() }; hasNext__Z() { return this.iter$2.hasNext__Z() }; init___sc_MapLike($$outer) { this.iter$2 = $$outer.iterator__sc_Iterator(); return this }; } const $d_sc_MapLike$$anon$1 = new $TypeData().initClass({ sc_MapLike$$anon$1: 0 }, false, "scala.collection.MapLike$$anon$1", { sc_MapLike$$anon$1: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sc_MapLike$$anon$1.prototype.$classData = $d_sc_MapLike$$anon$1; class $c_sc_MapLike$$anon$2 extends $c_sc_AbstractIterator { constructor() { super(); this.iter$2 = null }; next__O() { return this.iter$2.next__O().$$und2__O() }; hasNext__Z() { return this.iter$2.hasNext__Z() }; init___sc_MapLike($$outer) { this.iter$2 = $$outer.iterator__sc_Iterator(); return this }; } const $d_sc_MapLike$$anon$2 = new $TypeData().initClass({ sc_MapLike$$anon$2: 0 }, false, "scala.collection.MapLike$$anon$2", { sc_MapLike$$anon$2: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sc_MapLike$$anon$2.prototype.$classData = $d_sc_MapLike$$anon$2; class $c_sc_Traversable$ extends $c_scg_GenTraversableFactory { constructor() { super(); this.breaks$3 = null }; init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); $n_sc_Traversable$ = this; this.breaks$3 = new $c_s_util_control_Breaks().init___(); return this }; newBuilder__scm_Builder() { $m_sci_Traversable$(); return new $c_scm_ListBuffer().init___() }; } const $d_sc_Traversable$ = new $TypeData().initClass({ sc_Traversable$: 0 }, false, "scala.collection.Traversable$", { sc_Traversable$: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_sc_Traversable$.prototype.$classData = $d_sc_Traversable$; let $n_sc_Traversable$ = (void 0); const $m_sc_Traversable$ = (function() { if ((!$n_sc_Traversable$)) { $n_sc_Traversable$ = new $c_sc_Traversable$().init___() }; return $n_sc_Traversable$ }); class $c_sc_TraversableOnce$FlattenOps$$anon$2 extends $c_sc_AbstractIterator { constructor() { super(); this.its$2 = null; this.it$2 = null }; next__O() { return (this.hasNext__Z() ? this.it$2.next__O() : $m_sc_Iterator$().empty$1.next__O()) }; hasNext__Z() { _hasNext: while (true) { if (this.it$2.hasNext__Z()) { return true } else if (this.its$2.hasNext__Z()) { this.it$2 = this.its$2.next__O().toIterator__sc_Iterator(); continue _hasNext } else { return false } } }; init___sc_TraversableOnce$FlattenOps($$outer) { this.its$2 = $$outer.scala$collection$TraversableOnce$FlattenOps$$travs$f.toIterator__sc_Iterator(); this.it$2 = $m_sc_Iterator$().empty$1; return this }; } const $d_sc_TraversableOnce$FlattenOps$$anon$2 = new $TypeData().initClass({ sc_TraversableOnce$FlattenOps$$anon$2: 0 }, false, "scala.collection.TraversableOnce$FlattenOps$$anon$2", { sc_TraversableOnce$FlattenOps$$anon$2: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sc_TraversableOnce$FlattenOps$$anon$2.prototype.$classData = $d_sc_TraversableOnce$FlattenOps$$anon$2; class $c_sc_convert_Wrappers$MapWrapper extends $c_ju_AbstractMap { constructor() { super(); this.scala$collection$convert$Wrappers$MapWrapper$$underlying$f = null; this.$$outer$2 = null }; containsKey__O__Z(key) { try { return this.scala$collection$convert$Wrappers$MapWrapper$$underlying$f.contains__O__Z(key) } catch (e) { if ((e instanceof $c_jl_ClassCastException)) { return false } else { throw e } } }; get__O__O(key) { try { const x1 = this.scala$collection$convert$Wrappers$MapWrapper$$underlying$f.get__O__s_Option(key); const x = $m_s_None$(); if ((x === x1)) { return null } else if ((x1 instanceof $c_s_Some)) { const x2 = x1; const v = x2.value$2; return v } else { throw new $c_s_MatchError().init___O(x1) } } catch (e) { if ((e instanceof $c_jl_ClassCastException)) { return null } else { throw e } } }; init___sc_convert_Wrappers__sc_Map($$outer, underlying) { this.scala$collection$convert$Wrappers$MapWrapper$$underlying$f = underlying; if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; return this }; size__I() { return this.scala$collection$convert$Wrappers$MapWrapper$$underlying$f.size__I() }; } const $d_sc_convert_Wrappers$MapWrapper = new $TypeData().initClass({ sc_convert_Wrappers$MapWrapper: 0 }, false, "scala.collection.convert.Wrappers$MapWrapper", { sc_convert_Wrappers$MapWrapper: 1, ju_AbstractMap: 1, O: 1, ju_Map: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sc_convert_Wrappers$MapWrapper.prototype.$classData = $d_sc_convert_Wrappers$MapWrapper; class $c_scg_ImmutableSetFactory extends $c_scg_SetFactory { empty__sc_GenTraversable() { return this.emptyInstance__sci_Set() }; newBuilder__scm_Builder() { return new $c_scm_SetBuilder().init___sc_Set(this.emptyInstance__sci_Set()) }; } class $c_scg_MutableSetFactory extends $c_scg_SetFactory { newBuilder__scm_Builder() { return new $c_scm_GrowingBuilder().init___scg_Growable(this.empty__sc_GenTraversable()) }; } class $c_sci_Iterable$ extends $c_scg_GenTraversableFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { return new $c_scm_ListBuffer().init___() }; } const $d_sci_Iterable$ = new $TypeData().initClass({ sci_Iterable$: 0 }, false, "scala.collection.immutable.Iterable$", { sci_Iterable$: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_sci_Iterable$.prototype.$classData = $d_sci_Iterable$; let $n_sci_Iterable$ = (void 0); const $m_sci_Iterable$ = (function() { if ((!$n_sci_Iterable$)) { $n_sci_Iterable$ = new $c_sci_Iterable$().init___() }; return $n_sci_Iterable$ }); class $c_sci_StreamIterator extends $c_sc_AbstractIterator { constructor() { super(); this.these$2 = null }; next__O() { if ($f_sc_Iterator__isEmpty__Z(this)) { return $m_sc_Iterator$().empty$1.next__O() } else { const cur = this.these$2.v__sci_Stream(); const result = cur.head__O(); this.these$2 = new $c_sci_StreamIterator$LazyCell().init___sci_StreamIterator__F0(this, new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, cur$1) { return (function() { return cur$1.tail__O() }) })(this, cur))); return result } }; toList__sci_List() { const this$1 = this.toStream__sci_Stream(); const this$2 = $m_sci_List$(); const cbf = this$2.ReusableCBFInstance$2; return $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this$1, cbf) }; init___sci_Stream(self) { this.these$2 = new $c_sci_StreamIterator$LazyCell().init___sci_StreamIterator__F0(this, new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, self$1) { return (function() { return self$1 }) })(this, self))); return this }; hasNext__Z() { const this$1 = this.these$2.v__sci_Stream(); return $f_sc_TraversableOnce__nonEmpty__Z(this$1) }; toStream__sci_Stream() { const result = this.these$2.v__sci_Stream(); this.these$2 = new $c_sci_StreamIterator$LazyCell().init___sci_StreamIterator__F0(this, new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this) { return (function() { $m_sci_Stream$(); return $m_sci_Stream$Empty$() }) })(this))); return result }; } const $d_sci_StreamIterator = new $TypeData().initClass({ sci_StreamIterator: 0 }, false, "scala.collection.immutable.StreamIterator", { sci_StreamIterator: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sci_StreamIterator.prototype.$classData = $d_sci_StreamIterator; class $c_sci_StringLike$$anon$1 extends $c_sc_AbstractIterator { constructor() { super(); this.str$2 = null; this.len$2 = 0; this.index$2 = 0; this.$$outer$2 = null }; next__O() { return this.next__T() }; next__T() { if ((this.index$2 >= this.len$2)) { throw new $c_ju_NoSuchElementException().init___T("next on empty iterator") }; const start = this.index$2; while (true) { let jsx$1; if ((this.index$2 < this.len$2)) { const this$1 = this.$$outer$2; const c = this.$$outer$2.apply__I__C(this.index$2); jsx$1 = (!$f_sci_StringLike__scala$collection$immutable$StringLike$$isLineBreak__C__Z(this$1, c)) } else { jsx$1 = false }; if (jsx$1) { this.index$2 = ((1 + this.index$2) | 0) } else { break } }; this.index$2 = ((1 + this.index$2) | 0); const thiz = this.str$2; const x = this.index$2; const that = this.len$2; const endIndex = ((x < that) ? x : that); return thiz.substring(start, endIndex) }; hasNext__Z() { return (this.index$2 < this.len$2) }; init___sci_StringLike($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; this.str$2 = $$outer.toString__T(); const thiz = this.str$2; this.len$2 = (thiz.length | 0); this.index$2 = 0; return this }; } const $d_sci_StringLike$$anon$1 = new $TypeData().initClass({ sci_StringLike$$anon$1: 0 }, false, "scala.collection.immutable.StringLike$$anon$1", { sci_StringLike$$anon$1: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sci_StringLike$$anon$1.prototype.$classData = $d_sci_StringLike$$anon$1; class $c_sci_Traversable$ extends $c_scg_GenTraversableFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { return new $c_scm_ListBuffer().init___() }; } const $d_sci_Traversable$ = new $TypeData().initClass({ sci_Traversable$: 0 }, false, "scala.collection.immutable.Traversable$", { sci_Traversable$: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_sci_Traversable$.prototype.$classData = $d_sci_Traversable$; let $n_sci_Traversable$ = (void 0); const $m_sci_Traversable$ = (function() { if ((!$n_sci_Traversable$)) { $n_sci_Traversable$ = new $c_sci_Traversable$().init___() }; return $n_sci_Traversable$ }); class $c_sci_TrieIterator extends $c_sc_AbstractIterator { constructor() { super(); this.elems$2 = null; this.scala$collection$immutable$TrieIterator$$depth$f = 0; this.scala$collection$immutable$TrieIterator$$arrayStack$f = null; this.scala$collection$immutable$TrieIterator$$posStack$f = null; this.scala$collection$immutable$TrieIterator$$arrayD$f = null; this.scala$collection$immutable$TrieIterator$$posD$f = 0; this.scala$collection$immutable$TrieIterator$$subIter$f = null }; isContainer__p2__O__Z(x) { return ((x instanceof $c_sci_HashMap$HashMap1) || (x instanceof $c_sci_HashSet$HashSet1)) }; next__O() { if ((this.scala$collection$immutable$TrieIterator$$subIter$f !== null)) { const el = this.scala$collection$immutable$TrieIterator$$subIter$f.next__O(); if ((!this.scala$collection$immutable$TrieIterator$$subIter$f.hasNext__Z())) { this.scala$collection$immutable$TrieIterator$$subIter$f = null }; return el } else { return this.next0__p2__Asci_Iterable__I__O(this.scala$collection$immutable$TrieIterator$$arrayD$f, this.scala$collection$immutable$TrieIterator$$posD$f) } }; initPosStack__AI() { return $newArrayObject($d_I.getArrayOf(), [6]) }; hasNext__Z() { return ((this.scala$collection$immutable$TrieIterator$$subIter$f !== null) || (this.scala$collection$immutable$TrieIterator$$depth$f >= 0)) }; next0__p2__Asci_Iterable__I__O(elems, i) { _next0: while (true) { if ((i === (((-1) + elems.u.length) | 0))) { this.scala$collection$immutable$TrieIterator$$depth$f = (((-1) + this.scala$collection$immutable$TrieIterator$$depth$f) | 0); if ((this.scala$collection$immutable$TrieIterator$$depth$f >= 0)) { this.scala$collection$immutable$TrieIterator$$arrayD$f = this.scala$collection$immutable$TrieIterator$$arrayStack$f.u[this.scala$collection$immutable$TrieIterator$$depth$f]; this.scala$collection$immutable$TrieIterator$$posD$f = this.scala$collection$immutable$TrieIterator$$posStack$f.u[this.scala$collection$immutable$TrieIterator$$depth$f]; this.scala$collection$immutable$TrieIterator$$arrayStack$f.u[this.scala$collection$immutable$TrieIterator$$depth$f] = null } else { this.scala$collection$immutable$TrieIterator$$arrayD$f = null; this.scala$collection$immutable$TrieIterator$$posD$f = 0 } } else { this.scala$collection$immutable$TrieIterator$$posD$f = ((1 + this.scala$collection$immutable$TrieIterator$$posD$f) | 0) }; const m = elems.u[i]; if (this.isContainer__p2__O__Z(m)) { return this.getElem__O__O(m) } else if (this.isTrie__p2__O__Z(m)) { if ((this.scala$collection$immutable$TrieIterator$$depth$f >= 0)) { this.scala$collection$immutable$TrieIterator$$arrayStack$f.u[this.scala$collection$immutable$TrieIterator$$depth$f] = this.scala$collection$immutable$TrieIterator$$arrayD$f; this.scala$collection$immutable$TrieIterator$$posStack$f.u[this.scala$collection$immutable$TrieIterator$$depth$f] = this.scala$collection$immutable$TrieIterator$$posD$f }; this.scala$collection$immutable$TrieIterator$$depth$f = ((1 + this.scala$collection$immutable$TrieIterator$$depth$f) | 0); this.scala$collection$immutable$TrieIterator$$arrayD$f = this.getElems__p2__sci_Iterable__Asci_Iterable(m); this.scala$collection$immutable$TrieIterator$$posD$f = 0; const temp$elems = this.getElems__p2__sci_Iterable__Asci_Iterable(m); elems = temp$elems; i = 0; continue _next0 } else { this.scala$collection$immutable$TrieIterator$$subIter$f = m.iterator__sc_Iterator(); return this.next__O() } } }; getElems__p2__sci_Iterable__Asci_Iterable(x) { if ((x instanceof $c_sci_HashMap$HashTrieMap)) { const x2 = x; return x2.elems$6 } else { if ((!(x instanceof $c_sci_HashSet$HashTrieSet))) { throw new $c_s_MatchError().init___O(x) }; const x3 = x; return x3.elems$5 } }; init___Asci_Iterable(elems) { this.elems$2 = elems; this.scala$collection$immutable$TrieIterator$$depth$f = 0; this.scala$collection$immutable$TrieIterator$$arrayStack$f = this.initArrayStack__AAsci_Iterable(); this.scala$collection$immutable$TrieIterator$$posStack$f = this.initPosStack__AI(); this.scala$collection$immutable$TrieIterator$$arrayD$f = this.elems$2; this.scala$collection$immutable$TrieIterator$$posD$f = 0; this.scala$collection$immutable$TrieIterator$$subIter$f = null; return this }; isTrie__p2__O__Z(x) { return ((x instanceof $c_sci_HashMap$HashTrieMap) || (x instanceof $c_sci_HashSet$HashTrieSet)) }; initArrayStack__AAsci_Iterable() { return $newArrayObject($d_sci_Iterable.getArrayOf().getArrayOf(), [6]) }; } class $c_sci_Vector$$anon$1 extends $c_sc_AbstractIterator { constructor() { super(); this.i$2 = 0; this.$$outer$2 = null }; next__O() { if ((this.i$2 > 0)) { this.i$2 = (((-1) + this.i$2) | 0); return this.$$outer$2.apply__I__O(this.i$2) } else { return $m_sc_Iterator$().empty$1.next__O() } }; hasNext__Z() { return (this.i$2 > 0) }; init___sci_Vector($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; this.i$2 = $$outer.length__I(); return this }; } const $d_sci_Vector$$anon$1 = new $TypeData().initClass({ sci_Vector$$anon$1: 0 }, false, "scala.collection.immutable.Vector$$anon$1", { sci_Vector$$anon$1: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sci_Vector$$anon$1.prototype.$classData = $d_sci_Vector$$anon$1; class $c_scm_Builder$$anon$1 extends $c_O { constructor() { super(); this.self$1 = null; this.f$1$1 = null }; init___scm_Builder__F1($$outer, f$1) { this.f$1$1 = f$1; this.self$1 = $$outer; return this }; equals__O__Z(that) { return $f_s_Proxy__equals__O__Z(this, that) }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__O__scm_Builder$$anon$1(elem) }; toString__T() { return $f_s_Proxy__toString__T(this) }; $$plus$plus$eq__sc_TraversableOnce__scm_Builder$$anon$1(xs) { this.self$1.$$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs); return this }; result__O() { return this.f$1$1.apply__O__O(this.self$1.result__O()) }; self__O() { return this.self$1 }; sizeHintBounded__I__sc_TraversableLike__V(size, boundColl) { this.self$1.sizeHintBounded__I__sc_TraversableLike__V(size, boundColl) }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__O__scm_Builder$$anon$1(elem) }; $$plus$eq__O__scm_Builder$$anon$1(x) { this.self$1.$$plus$eq__O__scm_Builder(x); return this }; hashCode__I() { return this.self$1.hashCode__I() }; sizeHint__I__V(size) { this.self$1.sizeHint__I__V(size) }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return this.$$plus$plus$eq__sc_TraversableOnce__scm_Builder$$anon$1(xs) }; } const $d_scm_Builder$$anon$1 = new $TypeData().initClass({ scm_Builder$$anon$1: 0 }, false, "scala.collection.mutable.Builder$$anon$1", { scm_Builder$$anon$1: 1, O: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1, s_Proxy: 1 }); $c_scm_Builder$$anon$1.prototype.$classData = $d_scm_Builder$$anon$1; class $c_scm_FlatHashTable$$anon$1 extends $c_sc_AbstractIterator { constructor() { super(); this.i$2 = 0; this.$$outer$2 = null }; next__O() { if (this.hasNext__Z()) { this.i$2 = ((1 + this.i$2) | 0); const this$1 = this.$$outer$2; const entry = this.$$outer$2.table$5.u[(((-1) + this.i$2) | 0)]; return $f_scm_FlatHashTable$HashUtils__entryToElem__O__O(this$1, entry) } else { return $m_sc_Iterator$().empty$1.next__O() } }; init___scm_FlatHashTable($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; this.i$2 = 0; return this }; hasNext__Z() { while (((this.i$2 < this.$$outer$2.table$5.u.length) && (this.$$outer$2.table$5.u[this.i$2] === null))) { this.i$2 = ((1 + this.i$2) | 0) }; return (this.i$2 < this.$$outer$2.table$5.u.length) }; } const $d_scm_FlatHashTable$$anon$1 = new $TypeData().initClass({ scm_FlatHashTable$$anon$1: 0 }, false, "scala.collection.mutable.FlatHashTable$$anon$1", { scm_FlatHashTable$$anon$1: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_scm_FlatHashTable$$anon$1.prototype.$classData = $d_scm_FlatHashTable$$anon$1; class $c_scm_HashMap$$anon$3 extends $c_sc_AbstractIterator { constructor() { super(); this.iter$2 = null }; next__O() { return this.iter$2.next__O().key$1 }; hasNext__Z() { return this.iter$2.hasNext__Z() }; init___scm_HashMap($$outer) { this.iter$2 = new $c_scm_HashTable$$anon$1().init___scm_HashTable($$outer); return this }; } const $d_scm_HashMap$$anon$3 = new $TypeData().initClass({ scm_HashMap$$anon$3: 0 }, false, "scala.collection.mutable.HashMap$$anon$3", { scm_HashMap$$anon$3: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_scm_HashMap$$anon$3.prototype.$classData = $d_scm_HashMap$$anon$3; class $c_scm_HashMap$$anon$4 extends $c_sc_AbstractIterator { constructor() { super(); this.iter$2 = null }; next__O() { return this.iter$2.next__O().value$1 }; hasNext__Z() { return this.iter$2.hasNext__Z() }; init___scm_HashMap($$outer) { this.iter$2 = new $c_scm_HashTable$$anon$1().init___scm_HashTable($$outer); return this }; } const $d_scm_HashMap$$anon$4 = new $TypeData().initClass({ scm_HashMap$$anon$4: 0 }, false, "scala.collection.mutable.HashMap$$anon$4", { scm_HashMap$$anon$4: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_scm_HashMap$$anon$4.prototype.$classData = $d_scm_HashMap$$anon$4; class $c_scm_HashTable$$anon$1 extends $c_sc_AbstractIterator { constructor() { super(); this.iterTable$2 = null; this.idx$2 = 0; this.es$2 = null }; next__O() { return this.next__scm_HashEntry() }; init___scm_HashTable($$outer) { this.iterTable$2 = $$outer.table$5; this.idx$2 = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I($$outer); this.es$2 = this.iterTable$2.u[this.idx$2]; return this }; next__scm_HashEntry() { const res = this.es$2; const this$1 = this.es$2; this.es$2 = this$1.next$1; while (((this.es$2 === null) && (this.idx$2 > 0))) { this.idx$2 = (((-1) + this.idx$2) | 0); this.es$2 = this.iterTable$2.u[this.idx$2] }; return res }; hasNext__Z() { return (this.es$2 !== null) }; } const $d_scm_HashTable$$anon$1 = new $TypeData().initClass({ scm_HashTable$$anon$1: 0 }, false, "scala.collection.mutable.HashTable$$anon$1", { scm_HashTable$$anon$1: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_scm_HashTable$$anon$1.prototype.$classData = $d_scm_HashTable$$anon$1; class $c_scm_Iterable$ extends $c_scg_GenTraversableFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { return new $c_scm_ArrayBuffer().init___() }; } const $d_scm_Iterable$ = new $TypeData().initClass({ scm_Iterable$: 0 }, false, "scala.collection.mutable.Iterable$", { scm_Iterable$: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_scm_Iterable$.prototype.$classData = $d_scm_Iterable$; let $n_scm_Iterable$ = (void 0); const $m_scm_Iterable$ = (function() { if ((!$n_scm_Iterable$)) { $n_scm_Iterable$ = new $c_scm_Iterable$().init___() }; return $n_scm_Iterable$ }); class $c_scm_LazyBuilder extends $c_O { constructor() { super(); this.parts$1 = null }; init___() { this.parts$1 = new $c_scm_ListBuffer().init___(); return this }; $$plus$plus$eq__sc_TraversableOnce__scm_LazyBuilder(xs) { this.parts$1.$$plus$eq__O__scm_ListBuffer(xs); return this }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__O__scm_LazyBuilder(elem) }; $$plus$eq__O__scm_LazyBuilder(x) { const jsx$1 = this.parts$1; $m_sci_List$(); const array = [x]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$4); i = (((-1) + i) | 0) }; jsx$1.$$plus$eq__O__scm_ListBuffer(result); return this }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__O__scm_LazyBuilder(elem) }; sizeHint__I__V(size) { /**/ }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return this.$$plus$plus$eq__sc_TraversableOnce__scm_LazyBuilder(xs) }; } class $c_scm_ListBuffer$$anon$1 extends $c_sc_AbstractIterator { constructor() { super(); this.cursor$2 = null }; next__O() { if ((!this.hasNext__Z())) { throw new $c_ju_NoSuchElementException().init___T("next on empty Iterator") } else { const ans = this.cursor$2.head__O(); const this$1 = this.cursor$2; this.cursor$2 = this$1.tail__sci_List(); return ans } }; init___scm_ListBuffer($$outer) { this.cursor$2 = ($$outer.isEmpty__Z() ? $m_sci_Nil$() : $$outer.scala$collection$mutable$ListBuffer$$start$6); return this }; hasNext__Z() { return (this.cursor$2 !== $m_sci_Nil$()) }; } const $d_scm_ListBuffer$$anon$1 = new $TypeData().initClass({ scm_ListBuffer$$anon$1: 0 }, false, "scala.collection.mutable.ListBuffer$$anon$1", { scm_ListBuffer$$anon$1: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_scm_ListBuffer$$anon$1.prototype.$classData = $d_scm_ListBuffer$$anon$1; class $c_scm_MapBuilder extends $c_O { constructor() { super(); this.empty$1 = null; this.elems$1 = null }; $$plus$eq__T2__scm_MapBuilder(x) { this.elems$1 = this.elems$1.$$plus__T2__sc_GenMap(x); return this }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__T2__scm_MapBuilder(elem) }; result__O() { return this.elems$1 }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; init___sc_GenMap(empty) { this.empty$1 = empty; this.elems$1 = empty; return this }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__T2__scm_MapBuilder(elem) }; sizeHint__I__V(size) { /**/ }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) }; } const $d_scm_MapBuilder = new $TypeData().initClass({ scm_MapBuilder: 0 }, false, "scala.collection.mutable.MapBuilder", { scm_MapBuilder: 1, O: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1 }); $c_scm_MapBuilder.prototype.$classData = $d_scm_MapBuilder; class $c_scm_SetBuilder extends $c_O { constructor() { super(); this.empty$1 = null; this.elems$1 = null }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__O__scm_SetBuilder(elem) }; result__O() { return this.elems$1 }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; $$plus$eq__O__scm_SetBuilder(x) { this.elems$1 = this.elems$1.$$plus__O__sc_Set(x); return this }; init___sc_Set(empty) { this.empty$1 = empty; this.elems$1 = empty; return this }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__O__scm_SetBuilder(elem) }; sizeHint__I__V(size) { /**/ }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) }; } const $d_scm_SetBuilder = new $TypeData().initClass({ scm_SetBuilder: 0 }, false, "scala.collection.mutable.SetBuilder", { scm_SetBuilder: 1, O: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1 }); $c_scm_SetBuilder.prototype.$classData = $d_scm_SetBuilder; class $c_scm_WrappedArrayBuilder extends $c_O { constructor() { super(); this.tag$1 = null; this.manifest$1 = null; this.elems$1 = null; this.capacity$1 = 0; this.size$1 = 0 }; init___s_reflect_ClassTag(tag) { this.tag$1 = tag; this.manifest$1 = tag; this.capacity$1 = 0; this.size$1 = 0; return this }; ensureSize__p1__I__V(size) { if ((this.capacity$1 < size)) { let newsize = ((this.capacity$1 === 0) ? 16 : (this.capacity$1 << 1)); while ((newsize < size)) { newsize = (newsize << 1) }; this.resize__p1__I__V(newsize) } }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__O__scm_WrappedArrayBuilder(elem) }; $$plus$eq__O__scm_WrappedArrayBuilder(elem) { this.ensureSize__p1__I__V(((1 + this.size$1) | 0)); this.elems$1.update__I__O__V(this.size$1, elem); this.size$1 = ((1 + this.size$1) | 0); return this }; mkArray__p1__I__scm_WrappedArray(size) { const runtimeClass = this.tag$1.runtimeClass__jl_Class(); let newelems; if (runtimeClass.isPrimitive__Z()) { if ((runtimeClass === $d_I.getClassOf())) { newelems = new $c_scm_WrappedArray$ofInt().init___AI($newArrayObject($d_I.getArrayOf(), [size])) } else if ((runtimeClass === $d_D.getClassOf())) { newelems = new $c_scm_WrappedArray$ofDouble().init___AD($newArrayObject($d_D.getArrayOf(), [size])) } else if ((runtimeClass === $d_J.getClassOf())) { newelems = new $c_scm_WrappedArray$ofLong().init___AJ($newArrayObject($d_J.getArrayOf(), [size])) } else if ((runtimeClass === $d_F.getClassOf())) { newelems = new $c_scm_WrappedArray$ofFloat().init___AF($newArrayObject($d_F.getArrayOf(), [size])) } else if ((runtimeClass === $d_C.getClassOf())) { newelems = new $c_scm_WrappedArray$ofChar().init___AC($newArrayObject($d_C.getArrayOf(), [size])) } else if ((runtimeClass === $d_B.getClassOf())) { newelems = new $c_scm_WrappedArray$ofByte().init___AB($newArrayObject($d_B.getArrayOf(), [size])) } else if ((runtimeClass === $d_S.getClassOf())) { newelems = new $c_scm_WrappedArray$ofShort().init___AS($newArrayObject($d_S.getArrayOf(), [size])) } else if ((runtimeClass === $d_Z.getClassOf())) { newelems = new $c_scm_WrappedArray$ofBoolean().init___AZ($newArrayObject($d_Z.getArrayOf(), [size])) } else { if ((runtimeClass !== $d_V.getClassOf())) { throw new $c_s_MatchError().init___O(runtimeClass) }; newelems = new $c_scm_WrappedArray$ofUnit().init___Asr_BoxedUnit($newArrayObject($d_sr_BoxedUnit.getArrayOf(), [size])) } } else { newelems = new $c_scm_WrappedArray$ofRef().init___AO(this.tag$1.newArray__I__O(size)) }; if ((this.size$1 > 0)) { $m_s_Array$().copy__O__I__O__I__I__V(this.elems$1.array__O(), 0, newelems.array__O(), 0, this.size$1) }; return newelems }; result__O() { return this.result__scm_WrappedArray() }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; resize__p1__I__V(size) { this.elems$1 = this.mkArray__p1__I__scm_WrappedArray(size); this.capacity$1 = size }; result__scm_WrappedArray() { if (((this.capacity$1 !== 0) && (this.capacity$1 === this.size$1))) { this.capacity$1 = 0; return this.elems$1 } else { return this.mkArray__p1__I__scm_WrappedArray(this.size$1) } }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__O__scm_WrappedArrayBuilder(elem) }; sizeHint__I__V(size) { if ((this.capacity$1 < size)) { this.resize__p1__I__V(size) } }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) }; } const $d_scm_WrappedArrayBuilder = new $TypeData().initClass({ scm_WrappedArrayBuilder: 0 }, false, "scala.collection.mutable.WrappedArrayBuilder", { scm_WrappedArrayBuilder: 1, O: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1 }); $c_scm_WrappedArrayBuilder.prototype.$classData = $d_scm_WrappedArrayBuilder; class $c_sr_NonLocalReturnControl extends $c_jl_Throwable { constructor() { super(); this.key$2 = null; this.value$f = null }; fillInStackTrace__jl_Throwable() { return this }; value__O() { return this.value$f }; value$mcV$sp__V() { this.value__O() }; init___O__O(key, value) { this.key$2 = key; this.value$f = value; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; value$mcI$sp__I() { return (this.value__O() | 0) }; value$mcZ$sp__Z() { return (!(!this.value__O())) }; } const $isArrayOf_sr_NonLocalReturnControl = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sr_NonLocalReturnControl))) }); const $d_sr_NonLocalReturnControl = new $TypeData().initClass({ sr_NonLocalReturnControl: 0 }, false, "scala.runtime.NonLocalReturnControl", { sr_NonLocalReturnControl: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1, s_util_control_ControlThrowable: 1, s_util_control_NoStackTrace: 1 }); $c_sr_NonLocalReturnControl.prototype.$classData = $d_sr_NonLocalReturnControl; class $c_sr_ScalaRunTime$$anon$1 extends $c_sc_AbstractIterator { constructor() { super(); this.c$2 = 0; this.cmax$2 = 0; this.x$2$2 = null }; next__O() { const result = this.x$2$2.productElement__I__O(this.c$2); this.c$2 = ((1 + this.c$2) | 0); return result }; init___s_Product(x$2) { this.x$2$2 = x$2; this.c$2 = 0; this.cmax$2 = x$2.productArity__I(); return this }; hasNext__Z() { return (this.c$2 < this.cmax$2) }; } const $d_sr_ScalaRunTime$$anon$1 = new $TypeData().initClass({ sr_ScalaRunTime$$anon$1: 0 }, false, "scala.runtime.ScalaRunTime$$anon$1", { sr_ScalaRunTime$$anon$1: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sr_ScalaRunTime$$anon$1.prototype.$classData = $d_sr_ScalaRunTime$$anon$1; class $c_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner extends $c_O { constructor() { super(); this.$$outer$1 = null }; productPrefix__T() { return "GenericOptioner" }; some__O__O(value) { return new $c_s_Some().init___O(value) }; productArity__I() { return 0 }; equals__O__Z(x$1) { return (((x$1 instanceof $c_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner) && (x$1.$$outer$1 === this.$$outer$1)) && true) }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lfastparse_core_Implicits$LowPriOptioner($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; none__O() { return $m_s_None$() }; } const $isArrayOf_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner))) }); const $d_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner = new $TypeData().initClass({ Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner: 0 }, false, "fastparse.core.Implicits$LowPriOptioner$GenericOptioner", { Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner: 1, O: 1, Lfastparse_core_Implicits$Optioner: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner.prototype.$classData = $d_Lfastparse_core_Implicits$LowPriOptioner$GenericOptioner; class $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater extends $c_O { constructor() { super(); this.$$outer$1 = null }; productPrefix__T() { return "GenericRepeater" }; productArity__I() { return 0 }; initial__O() { $m_scm_Buffer$(); const this$2 = new $c_sjs_js_WrappedArray().init___(); return this$2 }; equals__O__Z(x$1) { return (((x$1 instanceof $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater) && (x$1.$$outer$1 === this.$$outer$1)) && true) }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; result__O__O(acc) { const acc$1 = acc; return acc$1 }; accumulate__O__O__V(t, acc) { const acc$1 = acc; acc$1.$$plus$eq__O__scm_Buffer(t) }; init___Lfastparse_core_Implicits$LowPriRepeater($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater))) }); const $d_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater = new $TypeData().initClass({ Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater: 0 }, false, "fastparse.core.Implicits$LowPriRepeater$GenericRepeater", { Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater: 1, O: 1, Lfastparse_core_Implicits$Repeater: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater.prototype.$classData = $d_Lfastparse_core_Implicits$LowPriRepeater$GenericRepeater; class $c_Lfastparse_core_Mutable$Failure extends $c_O { constructor() { super(); this.input$1 = null; this.fullStack$1 = null; this.index$1 = 0; this.lastParser$1 = null; this.originalParser$1 = null; this.originalIndex$1 = 0; this.traceIndex$1 = 0; this.traceParsers$1 = null; this.cut$1 = false }; productPrefix__T() { return "Failure" }; productArity__I() { return 9 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_core_Mutable$Failure)) { const Failure$2 = x$1; const x = this.input$1; const x$2 = Failure$2.input$1; let jsx$4; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.fullStack$1; const x$4 = Failure$2.fullStack$1; jsx$4 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$4 = false }; let jsx$3; if ((jsx$4 && (this.index$1 === Failure$2.index$1))) { const x$5 = this.lastParser$1; const x$6 = Failure$2.lastParser$1; jsx$3 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$3 = false }; let jsx$2; if (jsx$3) { const x$7 = this.originalParser$1; const x$8 = Failure$2.originalParser$1; jsx$2 = ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { jsx$2 = false }; let jsx$1; if (((jsx$2 && (this.originalIndex$1 === Failure$2.originalIndex$1)) && (this.traceIndex$1 === Failure$2.traceIndex$1))) { const x$9 = this.traceParsers$1; const x$10 = Failure$2.traceParsers$1; jsx$1 = ((x$9 === null) ? (x$10 === null) : x$9.equals__O__Z(x$10)) } else { jsx$1 = false }; if (jsx$1) { return (this.cut$1 === Failure$2.cut$1) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.input$1; break } case 1: { return this.fullStack$1; break } case 2: { return this.index$1; break } case 3: { return this.lastParser$1; break } case 4: { return this.originalParser$1; break } case 5: { return this.originalIndex$1; break } case 6: { return this.traceIndex$1; break } case 7: { return this.traceParsers$1; break } case 8: { return this.cut$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lfastparse_utils_ParserInput__scm_Buffer__I__Lfastparse_core_Parser__Lfastparse_core_Parser__I__I__sci_Set__Z(input, fullStack, index, lastParser, originalParser, originalIndex, traceIndex, traceParsers, cut) { this.input$1 = input; this.fullStack$1 = fullStack; this.index$1 = index; this.lastParser$1 = lastParser; this.originalParser$1 = originalParser; this.originalIndex$1 = originalIndex; this.traceIndex$1 = traceIndex; this.traceParsers$1 = traceParsers; this.cut$1 = cut; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.input$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.fullStack$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, this.index$1); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.lastParser$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.originalParser$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, this.originalIndex$1); acc = $m_sr_Statics$().mix__I__I__I(acc, this.traceIndex$1); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.traceParsers$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.cut$1 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 9) }; toResult__Lfastparse_core_Parsed$Failure() { const extra = new $c_Lfastparse_core_Parsed$Failure$Extra$Impl().init___Lfastparse_utils_ParserInput__Lfastparse_core_Parser__I__Lfastparse_core_Parser__I(this.input$1, this.originalParser$1, this.originalIndex$1, this.lastParser$1, this.index$1); return new $c_Lfastparse_core_Parsed$Failure().init___Lfastparse_core_Parser__I__Lfastparse_core_Parsed$Failure$Extra(this.lastParser$1, this.index$1, extra) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; toResult__Lfastparse_core_Parsed() { return this.toResult__Lfastparse_core_Parsed$Failure() }; } const $isArrayOf_Lfastparse_core_Mutable$Failure = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Mutable$Failure))) }); const $d_Lfastparse_core_Mutable$Failure = new $TypeData().initClass({ Lfastparse_core_Mutable$Failure: 0 }, false, "fastparse.core.Mutable$Failure", { Lfastparse_core_Mutable$Failure: 1, O: 1, Lfastparse_core_Mutable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_Mutable$Failure.prototype.$classData = $d_Lfastparse_core_Mutable$Failure; class $c_Lfastparse_core_Mutable$Success extends $c_O { constructor() { super(); this.value$1 = null; this.index$1 = 0; this.traceParsers$1 = null; this.cut$1 = false }; productPrefix__T() { return "Success" }; productArity__I() { return 4 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_core_Mutable$Success)) { const Success$2 = x$1; let jsx$1; if (($m_sr_BoxesRunTime$().equals__O__O__Z(this.value$1, Success$2.value$1) && (this.index$1 === Success$2.index$1))) { const x = this.traceParsers$1; const x$2 = Success$2.traceParsers$1; jsx$1 = ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { jsx$1 = false }; if (jsx$1) { return (this.cut$1 === Success$2.cut$1) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$1; break } case 1: { return this.index$1; break } case 2: { return this.traceParsers$1; break } case 3: { return this.cut$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["Success(", ", ", ")"])).s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([this.value$1, this.index$1])) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.value$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, this.index$1); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.traceParsers$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.cut$1 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 4) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___O__I__sci_Set__Z(value, index, traceParsers, cut) { this.value$1 = value; this.index$1 = index; this.traceParsers$1 = traceParsers; this.cut$1 = cut; return this }; toResult__Lfastparse_core_Parsed() { return new $c_Lfastparse_core_Parsed$Success().init___O__I(this.value$1, this.index$1) }; } const $isArrayOf_Lfastparse_core_Mutable$Success = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Mutable$Success))) }); const $d_Lfastparse_core_Mutable$Success = new $TypeData().initClass({ Lfastparse_core_Mutable$Success: 0 }, false, "fastparse.core.Mutable$Success", { Lfastparse_core_Mutable$Success: 1, O: 1, Lfastparse_core_Mutable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_Mutable$Success.prototype.$classData = $d_Lfastparse_core_Mutable$Success; class $c_Lfastparse_core_Parsed$Failure extends $c_O { constructor() { super(); this.lastParser$1 = null; this.index$1 = 0; this.extra$1 = null }; productPrefix__T() { return "Failure" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_core_Parsed$Failure)) { const Failure$1 = x$1; const x = this.lastParser$1; const x$2 = Failure$1.lastParser$1; if ((((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) && (this.index$1 === Failure$1.index$1))) { const x$3 = this.extra$1; const x$4 = Failure$1.extra$1; return (x$3 === x$4) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.lastParser$1; break } case 1: { return this.index$1; break } case 2: { return this.extra$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["Failure(", ")"])).s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([this.msg__T()])) }; init___Lfastparse_core_Parser__I__Lfastparse_core_Parsed$Failure$Extra(lastParser, index, extra) { this.lastParser$1 = lastParser; this.index$1 = index; this.extra$1 = extra; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.lastParser$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, this.index$1); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.extra$1)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 3) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; msg__T() { return $m_Lfastparse_core_Parsed$Failure$().formatStackTrace__sc_Seq__Lfastparse_utils_ParserInput__I__T__T($m_sci_Nil$(), this.extra$1.input$1, this.index$1, $m_Lfastparse_core_Parsed$Failure$().formatParser__Lfastparse_core_Precedence__Lfastparse_utils_ParserInput__I__T(this.lastParser$1, this.extra$1.input$1, this.index$1)) }; } const $isArrayOf_Lfastparse_core_Parsed$Failure = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Parsed$Failure))) }); const $d_Lfastparse_core_Parsed$Failure = new $TypeData().initClass({ Lfastparse_core_Parsed$Failure: 0 }, false, "fastparse.core.Parsed$Failure", { Lfastparse_core_Parsed$Failure: 1, O: 1, Lfastparse_core_Parsed: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_Parsed$Failure.prototype.$classData = $d_Lfastparse_core_Parsed$Failure; class $c_Lfastparse_core_Parsed$Success extends $c_O { constructor() { super(); this.value$1 = null; this.index$1 = 0 }; productPrefix__T() { return "Success" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_core_Parsed$Success)) { const Success$1 = x$1; return ($m_sr_BoxesRunTime$().equals__O__O__Z(this.value$1, Success$1.value$1) && (this.index$1 === Success$1.index$1)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$1; break } case 1: { return this.index$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___O__I(value, index) { this.value$1 = value; this.index$1 = index; return this }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.value$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, this.index$1); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 2) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_core_Parsed$Success = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_Parsed$Success))) }); const $d_Lfastparse_core_Parsed$Success = new $TypeData().initClass({ Lfastparse_core_Parsed$Success: 0 }, false, "fastparse.core.Parsed$Success", { Lfastparse_core_Parsed$Success: 1, O: 1, Lfastparse_core_Parsed: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_core_Parsed$Success.prototype.$classData = $d_Lfastparse_core_Parsed$Success; class $c_Lio_kaitai_struct_CompileLog$FileSuccess extends $c_O { constructor() { super(); this.fileName$1 = null; this.contents$1 = null }; init___T__T(fileName, contents) { this.fileName$1 = fileName; this.contents$1 = contents; return this }; productPrefix__T() { return "FileSuccess" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_CompileLog$FileSuccess)) { const FileSuccess$1 = x$1; return ((this.fileName$1 === FileSuccess$1.fileName$1) && (this.contents$1 === FileSuccess$1.contents$1)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.fileName$1; break } case 1: { return this.contents$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return (("FileSuccess(fileName=" + this.fileName$1) + ")") }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_CompileLog$FileSuccess = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_CompileLog$FileSuccess))) }); const $d_Lio_kaitai_struct_CompileLog$FileSuccess = new $TypeData().initClass({ Lio_kaitai_struct_CompileLog$FileSuccess: 0 }, false, "io.kaitai.struct.CompileLog$FileSuccess", { Lio_kaitai_struct_CompileLog$FileSuccess: 1, O: 1, Lio_kaitai_struct_Jsonable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_CompileLog$FileSuccess.prototype.$classData = $d_Lio_kaitai_struct_CompileLog$FileSuccess; class $c_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$ extends $c_O { init___() { return this }; productPrefix__T() { return "RawPointers" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "RawPointers" }; hashCode__I() { return 1283958270 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$ = new $TypeData().initClass({ Lio_kaitai_struct_CppRuntimeConfig$RawPointers$: 0 }, false, "io.kaitai.struct.CppRuntimeConfig$RawPointers$", { Lio_kaitai_struct_CppRuntimeConfig$RawPointers$: 1, O: 1, Lio_kaitai_struct_CppRuntimeConfig$Pointers: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$.prototype.$classData = $d_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$; let $n_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$ = (void 0); const $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$ = (function() { if ((!$n_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$)) { $n_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$ = new $c_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$().init___() }; return $n_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$ }); class $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$ extends $c_O { init___() { return this }; productPrefix__T() { return "SharedPointers" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "SharedPointers" }; hashCode__I() { return (-1012780677) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$ = new $TypeData().initClass({ Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$: 0 }, false, "io.kaitai.struct.CppRuntimeConfig$SharedPointers$", { Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$: 1, O: 1, Lio_kaitai_struct_CppRuntimeConfig$Pointers: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype.$classData = $d_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$; let $n_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$ = (void 0); const $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$ = (function() { if ((!$n_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$)) { $n_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$ = new $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$().init___() }; return $n_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$ }); class $c_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$ extends $c_O { init___() { return this }; productPrefix__T() { return "UniqueAndRawPointers" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "UniqueAndRawPointers" }; hashCode__I() { return 830962200 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$ = new $TypeData().initClass({ Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$: 0 }, false, "io.kaitai.struct.CppRuntimeConfig$UniqueAndRawPointers$", { Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$: 1, O: 1, Lio_kaitai_struct_CppRuntimeConfig$Pointers: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$.prototype.$classData = $d_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$; let $n_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$ = (void 0); const $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$ = (function() { if ((!$n_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$)) { $n_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$ = new $c_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$().init___() }; return $n_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$ }); class $c_Lio_kaitai_struct_NullLogger$ extends $c_O { init___() { return this }; productPrefix__T() { return "NullLogger" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "NullLogger" }; hashCode__I() { return (-574356969) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_NullLogger$ = new $TypeData().initClass({ Lio_kaitai_struct_NullLogger$: 0 }, false, "io.kaitai.struct.NullLogger$", { Lio_kaitai_struct_NullLogger$: 1, O: 1, Lio_kaitai_struct_Logger: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_NullLogger$.prototype.$classData = $d_Lio_kaitai_struct_NullLogger$; let $n_Lio_kaitai_struct_NullLogger$ = (void 0); const $m_Lio_kaitai_struct_NullLogger$ = (function() { if ((!$n_Lio_kaitai_struct_NullLogger$)) { $n_Lio_kaitai_struct_NullLogger$ = new $c_Lio_kaitai_struct_NullLogger$().init___() }; return $n_Lio_kaitai_struct_NullLogger$ }); class $c_Lio_kaitai_struct_datatype_BigBitEndian$ extends $c_Lio_kaitai_struct_datatype_BitEndianness { init___() { return this }; productPrefix__T() { return "BigBitEndian" }; toSuffix__T() { return "be" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "BigBitEndian" }; hashCode__I() { return (-1602953720) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_BigBitEndian$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_BigBitEndian$: 0 }, false, "io.kaitai.struct.datatype.BigBitEndian$", { Lio_kaitai_struct_datatype_BigBitEndian$: 1, Lio_kaitai_struct_datatype_BitEndianness: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_BigBitEndian$.prototype.$classData = $d_Lio_kaitai_struct_datatype_BigBitEndian$; let $n_Lio_kaitai_struct_datatype_BigBitEndian$ = (void 0); const $m_Lio_kaitai_struct_datatype_BigBitEndian$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_BigBitEndian$)) { $n_Lio_kaitai_struct_datatype_BigBitEndian$ = new $c_Lio_kaitai_struct_datatype_BigBitEndian$().init___() }; return $n_Lio_kaitai_struct_datatype_BigBitEndian$ }); class $c_Lio_kaitai_struct_datatype_CalcEndian extends $c_O { constructor() { super(); this.on$1 = null; this.cases$1 = null }; productPrefix__T() { return "CalcEndian" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { const CalcEndian$1 = x$1; const x = this.on$1; const x$2 = CalcEndian$1.on$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.cases$1; const x$4 = CalcEndian$1.cases$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.on$1; break } case 1: { return this.cases$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr__sci_Map(on, cases) { this.on$1 = on; this.cases$1 = cases; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_CalcEndian = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_CalcEndian))) }); const $d_Lio_kaitai_struct_datatype_CalcEndian = new $TypeData().initClass({ Lio_kaitai_struct_datatype_CalcEndian: 0 }, false, "io.kaitai.struct.datatype.CalcEndian", { Lio_kaitai_struct_datatype_CalcEndian: 1, O: 1, Lio_kaitai_struct_datatype_Endianness: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_CalcEndian.prototype.$classData = $d_Lio_kaitai_struct_datatype_CalcEndian; class $c_Lio_kaitai_struct_datatype_DataType$AnyType$ extends $c_O { init___() { return this }; productPrefix__T() { return "AnyType" }; productArity__I() { return 0 }; asNonOwning__Lio_kaitai_struct_datatype_DataType() { return this }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "AnyType" }; hashCode__I() { return 821772070 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$AnyType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$AnyType$: 0 }, false, "io.kaitai.struct.datatype.DataType$AnyType$", { Lio_kaitai_struct_datatype_DataType$AnyType$: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$AnyType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$AnyType$; let $n_Lio_kaitai_struct_datatype_DataType$AnyType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$AnyType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$AnyType$)) { $n_Lio_kaitai_struct_datatype_DataType$AnyType$ = new $c_Lio_kaitai_struct_datatype_DataType$AnyType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$AnyType$ }); class $c_Lio_kaitai_struct_datatype_DataType$EnumType extends $c_O { constructor() { super(); this.name$1 = null; this.basedOn$1 = null; this.enumSpec$1 = null }; productPrefix__T() { return "EnumType" }; productArity__I() { return 2 }; asNonOwning__Lio_kaitai_struct_datatype_DataType() { return this }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const EnumType$1 = x$1; const x = this.name$1; const x$2 = EnumType$1.name$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.basedOn$1; const x$4 = EnumType$1.basedOn$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$1; break } case 1: { return this.basedOn$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___sci_List__Lio_kaitai_struct_datatype_DataType$IntType(name, basedOn) { this.name$1 = name; this.basedOn$1 = basedOn; this.enumSpec$1 = $m_s_None$(); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$EnumType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$EnumType))) }); const $d_Lio_kaitai_struct_datatype_DataType$EnumType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$EnumType: 0 }, false, "io.kaitai.struct.datatype.DataType$EnumType", { Lio_kaitai_struct_datatype_DataType$EnumType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$EnumType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$EnumType; class $c_Lio_kaitai_struct_datatype_DataType$Width2$ extends $c_Lio_kaitai_struct_datatype_DataType$IntWidth { init___() { $c_Lio_kaitai_struct_datatype_DataType$IntWidth.prototype.init___I.call(this, 2); return this }; productPrefix__T() { return "Width2" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Width2" }; hashCode__I() { return (-1704167604) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$Width2$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$Width2$: 0 }, false, "io.kaitai.struct.datatype.DataType$Width2$", { Lio_kaitai_struct_datatype_DataType$Width2$: 1, Lio_kaitai_struct_datatype_DataType$IntWidth: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$Width2$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$Width2$; let $n_Lio_kaitai_struct_datatype_DataType$Width2$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$Width2$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$Width2$)) { $n_Lio_kaitai_struct_datatype_DataType$Width2$ = new $c_Lio_kaitai_struct_datatype_DataType$Width2$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$Width2$ }); class $c_Lio_kaitai_struct_datatype_DataType$Width4$ extends $c_Lio_kaitai_struct_datatype_DataType$IntWidth { init___() { $c_Lio_kaitai_struct_datatype_DataType$IntWidth.prototype.init___I.call(this, 4); return this }; productPrefix__T() { return "Width4" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Width4" }; hashCode__I() { return (-1704167602) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$Width4$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$Width4$: 0 }, false, "io.kaitai.struct.datatype.DataType$Width4$", { Lio_kaitai_struct_datatype_DataType$Width4$: 1, Lio_kaitai_struct_datatype_DataType$IntWidth: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$Width4$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$Width4$; let $n_Lio_kaitai_struct_datatype_DataType$Width4$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$Width4$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$Width4$)) { $n_Lio_kaitai_struct_datatype_DataType$Width4$ = new $c_Lio_kaitai_struct_datatype_DataType$Width4$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$Width4$ }); class $c_Lio_kaitai_struct_datatype_DataType$Width8$ extends $c_Lio_kaitai_struct_datatype_DataType$IntWidth { init___() { $c_Lio_kaitai_struct_datatype_DataType$IntWidth.prototype.init___I.call(this, 8); return this }; productPrefix__T() { return "Width8" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Width8" }; hashCode__I() { return (-1704167598) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$Width8$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$Width8$: 0 }, false, "io.kaitai.struct.datatype.DataType$Width8$", { Lio_kaitai_struct_datatype_DataType$Width8$: 1, Lio_kaitai_struct_datatype_DataType$IntWidth: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$Width8$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$Width8$; let $n_Lio_kaitai_struct_datatype_DataType$Width8$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$Width8$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$Width8$)) { $n_Lio_kaitai_struct_datatype_DataType$Width8$ = new $c_Lio_kaitai_struct_datatype_DataType$Width8$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$Width8$ }); class $c_Lio_kaitai_struct_datatype_EndOfStreamError$ extends $c_O { init___() { return this }; productPrefix__T() { return "EndOfStreamError" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "EndOfStreamError" }; name__T() { return "EndOfStreamError" }; hashCode__I() { return 292423446 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_EndOfStreamError$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_EndOfStreamError$: 0 }, false, "io.kaitai.struct.datatype.EndOfStreamError$", { Lio_kaitai_struct_datatype_EndOfStreamError$: 1, O: 1, Lio_kaitai_struct_datatype_KSError: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_EndOfStreamError$.prototype.$classData = $d_Lio_kaitai_struct_datatype_EndOfStreamError$; let $n_Lio_kaitai_struct_datatype_EndOfStreamError$ = (void 0); const $m_Lio_kaitai_struct_datatype_EndOfStreamError$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_EndOfStreamError$)) { $n_Lio_kaitai_struct_datatype_EndOfStreamError$ = new $c_Lio_kaitai_struct_datatype_EndOfStreamError$().init___() }; return $n_Lio_kaitai_struct_datatype_EndOfStreamError$ }); class $c_Lio_kaitai_struct_datatype_InheritedEndian$ extends $c_O { init___() { return this }; productPrefix__T() { return "InheritedEndian" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "InheritedEndian" }; hashCode__I() { return 1810464501 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_InheritedEndian$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_InheritedEndian$: 0 }, false, "io.kaitai.struct.datatype.InheritedEndian$", { Lio_kaitai_struct_datatype_InheritedEndian$: 1, O: 1, Lio_kaitai_struct_datatype_Endianness: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_InheritedEndian$.prototype.$classData = $d_Lio_kaitai_struct_datatype_InheritedEndian$; let $n_Lio_kaitai_struct_datatype_InheritedEndian$ = (void 0); const $m_Lio_kaitai_struct_datatype_InheritedEndian$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_InheritedEndian$)) { $n_Lio_kaitai_struct_datatype_InheritedEndian$ = new $c_Lio_kaitai_struct_datatype_InheritedEndian$().init___() }; return $n_Lio_kaitai_struct_datatype_InheritedEndian$ }); class $c_Lio_kaitai_struct_datatype_LittleBitEndian$ extends $c_Lio_kaitai_struct_datatype_BitEndianness { init___() { return this }; productPrefix__T() { return "LittleBitEndian" }; toSuffix__T() { return "le" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "LittleBitEndian" }; hashCode__I() { return 1539084434 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_LittleBitEndian$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_LittleBitEndian$: 0 }, false, "io.kaitai.struct.datatype.LittleBitEndian$", { Lio_kaitai_struct_datatype_LittleBitEndian$: 1, Lio_kaitai_struct_datatype_BitEndianness: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_LittleBitEndian$.prototype.$classData = $d_Lio_kaitai_struct_datatype_LittleBitEndian$; let $n_Lio_kaitai_struct_datatype_LittleBitEndian$ = (void 0); const $m_Lio_kaitai_struct_datatype_LittleBitEndian$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_LittleBitEndian$)) { $n_Lio_kaitai_struct_datatype_LittleBitEndian$ = new $c_Lio_kaitai_struct_datatype_LittleBitEndian$().init___() }; return $n_Lio_kaitai_struct_datatype_LittleBitEndian$ }); class $c_Lio_kaitai_struct_datatype_NotRaw$ extends $c_O { constructor() { super(); this.level$1 = 0; this.hasIO$1 = false; this.hasRaw$1 = false }; init___() { $n_Lio_kaitai_struct_datatype_NotRaw$ = this; $f_Lio_kaitai_struct_datatype_NeedRaw__$$init$__V(this); this.level$1 = 0; return this }; productPrefix__T() { return "NotRaw" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "NotRaw" }; level__I() { return this.level$1 }; hasIO__Z() { return this.hasIO$1 }; io$kaitai$struct$datatype$NeedRaw$$undsetter$und$hasRaw$und$eq__Z__V(x$1) { this.hasRaw$1 = x$1 }; hashCode__I() { return (-1955845003) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; io$kaitai$struct$datatype$NeedRaw$$undsetter$und$hasIO$und$eq__Z__V(x$1) { this.hasIO$1 = x$1 }; } const $d_Lio_kaitai_struct_datatype_NotRaw$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_NotRaw$: 0 }, false, "io.kaitai.struct.datatype.NotRaw$", { Lio_kaitai_struct_datatype_NotRaw$: 1, O: 1, Lio_kaitai_struct_datatype_NeedRaw: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_NotRaw$.prototype.$classData = $d_Lio_kaitai_struct_datatype_NotRaw$; let $n_Lio_kaitai_struct_datatype_NotRaw$ = (void 0); const $m_Lio_kaitai_struct_datatype_NotRaw$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_NotRaw$)) { $n_Lio_kaitai_struct_datatype_NotRaw$ = new $c_Lio_kaitai_struct_datatype_NotRaw$().init___() }; return $n_Lio_kaitai_struct_datatype_NotRaw$ }); class $c_Lio_kaitai_struct_datatype_RawIo$ extends $c_O { constructor() { super(); this.level$1 = 0; this.hasIO$1 = false; this.hasRaw$1 = false }; init___() { $n_Lio_kaitai_struct_datatype_RawIo$ = this; $f_Lio_kaitai_struct_datatype_NeedRaw__$$init$__V(this); this.level$1 = 1; this.hasIO$1 = true; return this }; productPrefix__T() { return "RawIo" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "RawIo" }; level__I() { return this.level$1 }; hasIO__Z() { return this.hasIO$1 }; io$kaitai$struct$datatype$NeedRaw$$undsetter$und$hasRaw$und$eq__Z__V(x$1) { this.hasRaw$1 = x$1 }; hashCode__I() { return 78735182 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; io$kaitai$struct$datatype$NeedRaw$$undsetter$und$hasIO$und$eq__Z__V(x$1) { /**/ }; } const $d_Lio_kaitai_struct_datatype_RawIo$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_RawIo$: 0 }, false, "io.kaitai.struct.datatype.RawIo$", { Lio_kaitai_struct_datatype_RawIo$: 1, O: 1, Lio_kaitai_struct_datatype_NeedRaw: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_RawIo$.prototype.$classData = $d_Lio_kaitai_struct_datatype_RawIo$; let $n_Lio_kaitai_struct_datatype_RawIo$ = (void 0); const $m_Lio_kaitai_struct_datatype_RawIo$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_RawIo$)) { $n_Lio_kaitai_struct_datatype_RawIo$ = new $c_Lio_kaitai_struct_datatype_RawIo$().init___() }; return $n_Lio_kaitai_struct_datatype_RawIo$ }); class $c_Lio_kaitai_struct_datatype_RawIoProcess$ extends $c_O { constructor() { super(); this.level$1 = 0; this.hasIO$1 = false; this.hasRaw$1 = false }; init___() { $n_Lio_kaitai_struct_datatype_RawIoProcess$ = this; $f_Lio_kaitai_struct_datatype_NeedRaw__$$init$__V(this); this.level$1 = 2; this.hasIO$1 = true; this.hasRaw$1 = true; return this }; productPrefix__T() { return "RawIoProcess" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "RawIoProcess" }; level__I() { return this.level$1 }; hasIO__Z() { return this.hasIO$1 }; io$kaitai$struct$datatype$NeedRaw$$undsetter$und$hasRaw$und$eq__Z__V(x$1) { /**/ }; hashCode__I() { return 312351553 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; io$kaitai$struct$datatype$NeedRaw$$undsetter$und$hasIO$und$eq__Z__V(x$1) { /**/ }; } const $d_Lio_kaitai_struct_datatype_RawIoProcess$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_RawIoProcess$: 0 }, false, "io.kaitai.struct.datatype.RawIoProcess$", { Lio_kaitai_struct_datatype_RawIoProcess$: 1, O: 1, Lio_kaitai_struct_datatype_NeedRaw: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_RawIoProcess$.prototype.$classData = $d_Lio_kaitai_struct_datatype_RawIoProcess$; let $n_Lio_kaitai_struct_datatype_RawIoProcess$ = (void 0); const $m_Lio_kaitai_struct_datatype_RawIoProcess$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_RawIoProcess$)) { $n_Lio_kaitai_struct_datatype_RawIoProcess$ = new $c_Lio_kaitai_struct_datatype_RawIoProcess$().init___() }; return $n_Lio_kaitai_struct_datatype_RawIoProcess$ }); class $c_Lio_kaitai_struct_datatype_RawProcess$ extends $c_O { constructor() { super(); this.level$1 = 0; this.hasRaw$1 = false; this.hasIO$1 = false }; init___() { $n_Lio_kaitai_struct_datatype_RawProcess$ = this; $f_Lio_kaitai_struct_datatype_NeedRaw__$$init$__V(this); this.level$1 = 1; this.hasRaw$1 = true; return this }; productPrefix__T() { return "RawProcess" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "RawProcess" }; level__I() { return this.level$1 }; hasIO__Z() { return this.hasIO$1 }; io$kaitai$struct$datatype$NeedRaw$$undsetter$und$hasRaw$und$eq__Z__V(x$1) { /**/ }; hashCode__I() { return 132504903 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; io$kaitai$struct$datatype$NeedRaw$$undsetter$und$hasIO$und$eq__Z__V(x$1) { this.hasIO$1 = x$1 }; } const $d_Lio_kaitai_struct_datatype_RawProcess$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_RawProcess$: 0 }, false, "io.kaitai.struct.datatype.RawProcess$", { Lio_kaitai_struct_datatype_RawProcess$: 1, O: 1, Lio_kaitai_struct_datatype_NeedRaw: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_RawProcess$.prototype.$classData = $d_Lio_kaitai_struct_datatype_RawProcess$; let $n_Lio_kaitai_struct_datatype_RawProcess$ = (void 0); const $m_Lio_kaitai_struct_datatype_RawProcess$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_RawProcess$)) { $n_Lio_kaitai_struct_datatype_RawProcess$ = new $c_Lio_kaitai_struct_datatype_RawProcess$().init___() }; return $n_Lio_kaitai_struct_datatype_RawProcess$ }); class $c_Lio_kaitai_struct_datatype_UndecidedEndiannessError$ extends $c_O { init___() { return this }; productPrefix__T() { return "UndecidedEndiannessError" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "UndecidedEndiannessError" }; name__T() { return "UndecidedEndiannessError" }; hashCode__I() { return (-243674861) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_UndecidedEndiannessError$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_UndecidedEndiannessError$: 0 }, false, "io.kaitai.struct.datatype.UndecidedEndiannessError$", { Lio_kaitai_struct_datatype_UndecidedEndiannessError$: 1, O: 1, Lio_kaitai_struct_datatype_KSError: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_UndecidedEndiannessError$.prototype.$classData = $d_Lio_kaitai_struct_datatype_UndecidedEndiannessError$; let $n_Lio_kaitai_struct_datatype_UndecidedEndiannessError$ = (void 0); const $m_Lio_kaitai_struct_datatype_UndecidedEndiannessError$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_UndecidedEndiannessError$)) { $n_Lio_kaitai_struct_datatype_UndecidedEndiannessError$ = new $c_Lio_kaitai_struct_datatype_UndecidedEndiannessError$().init___() }; return $n_Lio_kaitai_struct_datatype_UndecidedEndiannessError$ }); class $c_Lio_kaitai_struct_exprlang_Ast$boolop$And$ extends $c_O { init___() { return this }; productPrefix__T() { return "And" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "And" }; hashCode__I() { return 65975 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$boolop$And$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$boolop$And$: 0 }, false, "io.kaitai.struct.exprlang.Ast$boolop$And$", { Lio_kaitai_struct_exprlang_Ast$boolop$And$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$boolop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$boolop$And$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$boolop$And$; let $n_Lio_kaitai_struct_exprlang_Ast$boolop$And$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$boolop$And$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$boolop$And$)) { $n_Lio_kaitai_struct_exprlang_Ast$boolop$And$ = new $c_Lio_kaitai_struct_exprlang_Ast$boolop$And$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$boolop$And$ }); class $c_Lio_kaitai_struct_exprlang_Ast$boolop$Or$ extends $c_O { init___() { return this }; productPrefix__T() { return "Or" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Or" }; hashCode__I() { return 2563 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$boolop$Or$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$boolop$Or$: 0 }, false, "io.kaitai.struct.exprlang.Ast$boolop$Or$", { Lio_kaitai_struct_exprlang_Ast$boolop$Or$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$boolop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$boolop$Or$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$boolop$Or$; let $n_Lio_kaitai_struct_exprlang_Ast$boolop$Or$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$boolop$Or$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$boolop$Or$)) { $n_Lio_kaitai_struct_exprlang_Ast$boolop$Or$ = new $c_Lio_kaitai_struct_exprlang_Ast$boolop$Or$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$boolop$Or$ }); class $c_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$ extends $c_O { init___() { return this }; productPrefix__T() { return "Eq" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Eq" }; hashCode__I() { return 2252 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$: 0 }, false, "io.kaitai.struct.exprlang.Ast$cmpop$Eq$", { Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$cmpop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$; let $n_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$)) { $n_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$ = new $c_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$ }); class $c_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$ extends $c_O { init___() { return this }; productPrefix__T() { return "Gt" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Gt" }; hashCode__I() { return 2317 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$: 0 }, false, "io.kaitai.struct.exprlang.Ast$cmpop$Gt$", { Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$cmpop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$; let $n_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$)) { $n_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$ = new $c_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$ }); class $c_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$ extends $c_O { init___() { return this }; productPrefix__T() { return "GtE" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "GtE" }; hashCode__I() { return 71896 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$: 0 }, false, "io.kaitai.struct.exprlang.Ast$cmpop$GtE$", { Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$cmpop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$; let $n_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$)) { $n_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$ = new $c_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$ }); class $c_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$ extends $c_O { init___() { return this }; productPrefix__T() { return "Lt" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Lt" }; hashCode__I() { return 2472 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$: 0 }, false, "io.kaitai.struct.exprlang.Ast$cmpop$Lt$", { Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$cmpop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$; let $n_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$)) { $n_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$ = new $c_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$ }); class $c_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$ extends $c_O { init___() { return this }; productPrefix__T() { return "LtE" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "LtE" }; hashCode__I() { return 76701 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$: 0 }, false, "io.kaitai.struct.exprlang.Ast$cmpop$LtE$", { Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$cmpop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$; let $n_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$)) { $n_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$ = new $c_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$ }); class $c_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$ extends $c_O { init___() { return this }; productPrefix__T() { return "NotEq" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "NotEq" }; hashCode__I() { return 75455167 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$: 0 }, false, "io.kaitai.struct.exprlang.Ast$cmpop$NotEq$", { Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$cmpop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$; let $n_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$)) { $n_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$ = new $c_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$ }); class $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute extends $c_O { constructor() { super(); this.value$1 = null; this.attr$1 = null }; productPrefix__T() { return "Attribute" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute)) { const Attribute$1 = x$1; const x = this.value$1; const x$2 = Attribute$1.value$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.attr$1; const x$4 = Attribute$1.attr$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$1; break } case 1: { return this.attr$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$identifier(value, attr) { this.value$1 = value; this.attr$1 = attr; return this }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$Attribute = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$Attribute))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$Attribute = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$Attribute: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$Attribute", { Lio_kaitai_struct_exprlang_Ast$expr$Attribute: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$Attribute; class $c_Lio_kaitai_struct_exprlang_Ast$expr$BinOp extends $c_O { constructor() { super(); this.left$1 = null; this.op$1 = null; this.right$1 = null }; productPrefix__T() { return "BinOp" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BinOp)) { const BinOp$1 = x$1; const x = this.left$1; const x$2 = BinOp$1.left$1; let jsx$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.op$1; const x$4 = BinOp$1.op$1; jsx$1 = (x$3 === x$4) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.right$1; const x$6 = BinOp$1.right$1; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.left$1; break } case 1: { return this.op$1; break } case 2: { return this.right$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr(left, op, right) { this.left$1 = left; this.op$1 = op; this.right$1 = right; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$BinOp = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$BinOp))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$BinOp = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$BinOp: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$BinOp", { Lio_kaitai_struct_exprlang_Ast$expr$BinOp: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$BinOp.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$BinOp; class $c_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType extends $c_O { constructor() { super(); this.typeName$1 = null }; productPrefix__T() { return "BitSizeOfType" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType)) { const BitSizeOfType$1 = x$1; const x = this.typeName$1; const x$2 = BitSizeOfType$1.typeName$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.typeName$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___Lio_kaitai_struct_exprlang_Ast$typeId(typeName) { this.typeName$1 = typeName; return this }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$BitSizeOfType", { Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType; class $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool extends $c_O { constructor() { super(); this.n$1 = false }; productPrefix__T() { return "Bool" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool)) { const Bool$1 = x$1; return (this.n$1 === Bool$1.n$1) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.n$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.n$1 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 1) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___Z(n) { this.n$1 = n; return this }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$Bool = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$Bool))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$Bool = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$Bool: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$Bool", { Lio_kaitai_struct_exprlang_Ast$expr$Bool: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$Bool; class $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp extends $c_O { constructor() { super(); this.op$1 = null; this.values$1 = null }; productPrefix__T() { return "BoolOp" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp)) { const BoolOp$1 = x$1; const x = this.op$1; const x$2 = BoolOp$1.op$1; if ((x === x$2)) { const x$3 = this.values$1; const x$4 = BoolOp$1.values$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.op$1; break } case 1: { return this.values$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$boolop__sc_Seq(op, values) { this.op$1 = op; this.values$1 = values; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$BoolOp))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$BoolOp: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$BoolOp", { Lio_kaitai_struct_exprlang_Ast$expr$BoolOp: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp; class $c_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType extends $c_O { constructor() { super(); this.typeName$1 = null }; productPrefix__T() { return "ByteSizeOfType" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType)) { const ByteSizeOfType$1 = x$1; const x = this.typeName$1; const x$2 = ByteSizeOfType$1.typeName$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.typeName$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___Lio_kaitai_struct_exprlang_Ast$typeId(typeName) { this.typeName$1 = typeName; return this }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$ByteSizeOfType", { Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType; class $c_Lio_kaitai_struct_exprlang_Ast$expr$Call extends $c_O { constructor() { super(); this.func$1 = null; this.args$1 = null }; productPrefix__T() { return "Call" }; init___Lio_kaitai_struct_exprlang_Ast$expr__sc_Seq(func, args) { this.func$1 = func; this.args$1 = args; return this }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Call)) { const Call$1 = x$1; const x = this.func$1; const x$2 = Call$1.func$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.args$1; const x$4 = Call$1.args$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.func$1; break } case 1: { return this.args$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$Call = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$Call))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$Call = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$Call: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$Call", { Lio_kaitai_struct_exprlang_Ast$expr$Call: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$Call.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$Call; class $c_Lio_kaitai_struct_exprlang_Ast$expr$CastToType extends $c_O { constructor() { super(); this.value$1 = null; this.typeName$1 = null }; productPrefix__T() { return "CastToType" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$CastToType)) { const CastToType$1 = x$1; const x = this.value$1; const x$2 = CastToType$1.value$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.typeName$1; const x$4 = CastToType$1.typeName$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$1; break } case 1: { return this.typeName$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$typeId(value, typeName) { this.value$1 = value; this.typeName$1 = typeName; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$CastToType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$CastToType))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$CastToType = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$CastToType: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$CastToType", { Lio_kaitai_struct_exprlang_Ast$expr$CastToType: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$CastToType.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$CastToType; class $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare extends $c_O { constructor() { super(); this.left$1 = null; this.ops$1 = null; this.right$1 = null }; productPrefix__T() { return "Compare" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare)) { const Compare$1 = x$1; const x = this.left$1; const x$2 = Compare$1.left$1; let jsx$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.ops$1; const x$4 = Compare$1.ops$1; jsx$1 = (x$3 === x$4) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.right$1; const x$6 = Compare$1.right$1; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.left$1; break } case 1: { return this.ops$1; break } case 2: { return this.right$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr(left, ops, right) { this.left$1 = left; this.ops$1 = ops; this.right$1 = right; return this }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$Compare = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$Compare))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$Compare = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$Compare: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$Compare", { Lio_kaitai_struct_exprlang_Ast$expr$Compare: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$Compare; class $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById extends $c_O { constructor() { super(); this.enumName$1 = null; this.id$1 = null; this.inType$1 = null }; productPrefix__T() { return "EnumById" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById)) { const EnumById$1 = x$1; const x = this.enumName$1; const x$2 = EnumById$1.enumName$1; let jsx$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.id$1; const x$4 = EnumById$1.id$1; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.inType$1; const x$6 = EnumById$1.inType$1; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; init___Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$typeId(enumName, id, inType) { this.enumName$1 = enumName; this.id$1 = id; this.inType$1 = inType; return this }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.enumName$1; break } case 1: { return this.id$1; break } case 2: { return this.inType$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$EnumById = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$EnumById))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$EnumById = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$EnumById: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$EnumById", { Lio_kaitai_struct_exprlang_Ast$expr$EnumById: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$EnumById; class $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel extends $c_O { constructor() { super(); this.enumName$1 = null; this.label$1 = null; this.inType$1 = null }; productPrefix__T() { return "EnumByLabel" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel)) { const EnumByLabel$1 = x$1; const x = this.enumName$1; const x$2 = EnumByLabel$1.enumName$1; let jsx$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.label$1; const x$4 = EnumByLabel$1.label$1; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.inType$1; const x$6 = EnumByLabel$1.inType$1; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.enumName$1; break } case 1: { return this.label$1; break } case 2: { return this.inType$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_exprlang_Ast$typeId(enumName, label, inType) { this.enumName$1 = enumName; this.label$1 = label; this.inType$1 = inType; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$EnumByLabel", { Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel; class $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum extends $c_O { constructor() { super(); this.n$1 = null }; productPrefix__T() { return "FloatNum" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum)) { const FloatNum$1 = x$1; const x = this.n$1; const x$2 = FloatNum$1.n$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.n$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___s_math_BigDecimal(n) { this.n$1 = n; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$FloatNum))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$FloatNum: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$FloatNum", { Lio_kaitai_struct_exprlang_Ast$expr$FloatNum: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum; class $c_Lio_kaitai_struct_exprlang_Ast$expr$IfExp extends $c_O { constructor() { super(); this.condition$1 = null; this.ifTrue$1 = null; this.ifFalse$1 = null }; productPrefix__T() { return "IfExp" }; productArity__I() { return 3 }; init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr(condition, ifTrue, ifFalse) { this.condition$1 = condition; this.ifTrue$1 = ifTrue; this.ifFalse$1 = ifFalse; return this }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IfExp)) { const IfExp$1 = x$1; const x = this.condition$1; const x$2 = IfExp$1.condition$1; let jsx$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.ifTrue$1; const x$4 = IfExp$1.ifTrue$1; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.ifFalse$1; const x$6 = IfExp$1.ifFalse$1; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.condition$1; break } case 1: { return this.ifTrue$1; break } case 2: { return this.ifFalse$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$IfExp = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$IfExp))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$IfExp = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$IfExp: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$IfExp", { Lio_kaitai_struct_exprlang_Ast$expr$IfExp: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$IfExp.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$IfExp; class $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum extends $c_O { constructor() { super(); this.n$1 = null }; productPrefix__T() { return "IntNum" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum)) { const IntNum$1 = x$1; const x = this.n$1; const x$2 = IntNum$1.n$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.n$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___s_math_BigInt(n) { this.n$1 = n; return this }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$IntNum = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$IntNum))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$IntNum = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$IntNum: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$IntNum", { Lio_kaitai_struct_exprlang_Ast$expr$IntNum: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$IntNum; class $c_Lio_kaitai_struct_exprlang_Ast$expr$List extends $c_O { constructor() { super(); this.elts$1 = null }; productPrefix__T() { return "List" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$List)) { const List$1 = x$1; const x = this.elts$1; const x$2 = List$1.elts$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.elts$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___sc_Seq(elts) { this.elts$1 = elts; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$List = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$List))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$List = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$List: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$List", { Lio_kaitai_struct_exprlang_Ast$expr$List: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$List.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$List; class $c_Lio_kaitai_struct_exprlang_Ast$expr$Name extends $c_O { constructor() { super(); this.id$1 = null }; productPrefix__T() { return "Name" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Name)) { const Name$1 = x$1; const x = this.id$1; const x$2 = Name$1.id$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; init___Lio_kaitai_struct_exprlang_Ast$identifier(id) { this.id$1 = id; return this }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.id$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$Name = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$Name))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$Name = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$Name: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$Name", { Lio_kaitai_struct_exprlang_Ast$expr$Name: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$Name.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$Name; class $c_Lio_kaitai_struct_exprlang_Ast$expr$Str extends $c_O { constructor() { super(); this.s$1 = null }; productPrefix__T() { return "Str" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Str)) { const Str$1 = x$1; return (this.s$1 === Str$1.s$1) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.s$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___T(s) { this.s$1 = s; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$Str = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$Str))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$Str = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$Str: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$Str", { Lio_kaitai_struct_exprlang_Ast$expr$Str: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$Str.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$Str; class $c_Lio_kaitai_struct_exprlang_Ast$expr$Subscript extends $c_O { constructor() { super(); this.value$1 = null; this.idx$1 = null }; productPrefix__T() { return "Subscript" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Subscript)) { const Subscript$1 = x$1; const x = this.value$1; const x$2 = Subscript$1.value$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.idx$1; const x$4 = Subscript$1.idx$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$1; break } case 1: { return this.idx$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr(value, idx) { this.value$1 = value; this.idx$1 = idx; return this }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$Subscript = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$Subscript))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$Subscript = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$Subscript: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$Subscript", { Lio_kaitai_struct_exprlang_Ast$expr$Subscript: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$Subscript.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$Subscript; class $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp extends $c_O { constructor() { super(); this.op$1 = null; this.operand$1 = null }; productPrefix__T() { return "UnaryOp" }; productArity__I() { return 2 }; init___Lio_kaitai_struct_exprlang_Ast$unaryop__Lio_kaitai_struct_exprlang_Ast$expr(op, operand) { this.op$1 = op; this.operand$1 = operand; return this }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp)) { const UnaryOp$1 = x$1; const x = this.op$1; const x$2 = UnaryOp$1.op$1; if ((x === x$2)) { const x$3 = this.operand$1; const x$4 = UnaryOp$1.operand$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.op$1; break } case 1: { return this.operand$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp))) }); const $d_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp: 0 }, false, "io.kaitai.struct.exprlang.Ast$expr$UnaryOp", { Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$expr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp; class $c_Lio_kaitai_struct_exprlang_Ast$operator$Add$ extends $c_O { init___() { return this }; productPrefix__T() { return "Add" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Add" }; hashCode__I() { return 65665 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$operator$Add$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$operator$Add$: 0 }, false, "io.kaitai.struct.exprlang.Ast$operator$Add$", { Lio_kaitai_struct_exprlang_Ast$operator$Add$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$operator: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$operator$Add$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$operator$Add$; let $n_Lio_kaitai_struct_exprlang_Ast$operator$Add$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$operator$Add$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$operator$Add$)) { $n_Lio_kaitai_struct_exprlang_Ast$operator$Add$ = new $c_Lio_kaitai_struct_exprlang_Ast$operator$Add$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$operator$Add$ }); class $c_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$ extends $c_O { init___() { return this }; productPrefix__T() { return "BitAnd" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "BitAnd" }; hashCode__I() { return 1990015402 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$: 0 }, false, "io.kaitai.struct.exprlang.Ast$operator$BitAnd$", { Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$operator: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$; let $n_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$)) { $n_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$ = new $c_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$ }); class $c_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$ extends $c_O { init___() { return this }; productPrefix__T() { return "BitOr" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "BitOr" }; hashCode__I() { return 64194480 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$operator$BitOr$: 0 }, false, "io.kaitai.struct.exprlang.Ast$operator$BitOr$", { Lio_kaitai_struct_exprlang_Ast$operator$BitOr$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$operator: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$; let $n_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$)) { $n_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$ = new $c_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$ }); class $c_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$ extends $c_O { init___() { return this }; productPrefix__T() { return "BitXor" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "BitXor" }; hashCode__I() { return 1990037550 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$operator$BitXor$: 0 }, false, "io.kaitai.struct.exprlang.Ast$operator$BitXor$", { Lio_kaitai_struct_exprlang_Ast$operator$BitXor$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$operator: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$; let $n_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$)) { $n_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$ = new $c_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$ }); class $c_Lio_kaitai_struct_exprlang_Ast$operator$Div$ extends $c_O { init___() { return this }; productPrefix__T() { return "Div" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Div" }; hashCode__I() { return 68721 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$operator$Div$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$operator$Div$: 0 }, false, "io.kaitai.struct.exprlang.Ast$operator$Div$", { Lio_kaitai_struct_exprlang_Ast$operator$Div$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$operator: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$operator$Div$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$operator$Div$; let $n_Lio_kaitai_struct_exprlang_Ast$operator$Div$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$operator$Div$)) { $n_Lio_kaitai_struct_exprlang_Ast$operator$Div$ = new $c_Lio_kaitai_struct_exprlang_Ast$operator$Div$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$operator$Div$ }); class $c_Lio_kaitai_struct_exprlang_Ast$operator$LShift$ extends $c_O { init___() { return this }; productPrefix__T() { return "LShift" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "LShift" }; hashCode__I() { return (-2039297130) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$operator$LShift$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$operator$LShift$: 0 }, false, "io.kaitai.struct.exprlang.Ast$operator$LShift$", { Lio_kaitai_struct_exprlang_Ast$operator$LShift$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$operator: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$operator$LShift$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$operator$LShift$; let $n_Lio_kaitai_struct_exprlang_Ast$operator$LShift$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$operator$LShift$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$operator$LShift$)) { $n_Lio_kaitai_struct_exprlang_Ast$operator$LShift$ = new $c_Lio_kaitai_struct_exprlang_Ast$operator$LShift$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$operator$LShift$ }); class $c_Lio_kaitai_struct_exprlang_Ast$operator$Mod$ extends $c_O { init___() { return this }; productPrefix__T() { return "Mod" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Mod" }; hashCode__I() { return 77538 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$operator$Mod$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$operator$Mod$: 0 }, false, "io.kaitai.struct.exprlang.Ast$operator$Mod$", { Lio_kaitai_struct_exprlang_Ast$operator$Mod$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$operator: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$operator$Mod$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$operator$Mod$; let $n_Lio_kaitai_struct_exprlang_Ast$operator$Mod$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$operator$Mod$)) { $n_Lio_kaitai_struct_exprlang_Ast$operator$Mod$ = new $c_Lio_kaitai_struct_exprlang_Ast$operator$Mod$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$operator$Mod$ }); class $c_Lio_kaitai_struct_exprlang_Ast$operator$Mult$ extends $c_O { init___() { return this }; productPrefix__T() { return "Mult" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Mult" }; hashCode__I() { return 2409808 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$operator$Mult$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$operator$Mult$: 0 }, false, "io.kaitai.struct.exprlang.Ast$operator$Mult$", { Lio_kaitai_struct_exprlang_Ast$operator$Mult$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$operator: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$operator$Mult$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$operator$Mult$; let $n_Lio_kaitai_struct_exprlang_Ast$operator$Mult$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$operator$Mult$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$operator$Mult$)) { $n_Lio_kaitai_struct_exprlang_Ast$operator$Mult$ = new $c_Lio_kaitai_struct_exprlang_Ast$operator$Mult$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$operator$Mult$ }); class $c_Lio_kaitai_struct_exprlang_Ast$operator$RShift$ extends $c_O { init___() { return this }; productPrefix__T() { return "RShift" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "RShift" }; hashCode__I() { return (-1867522224) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$operator$RShift$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$operator$RShift$: 0 }, false, "io.kaitai.struct.exprlang.Ast$operator$RShift$", { Lio_kaitai_struct_exprlang_Ast$operator$RShift$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$operator: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$operator$RShift$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$operator$RShift$; let $n_Lio_kaitai_struct_exprlang_Ast$operator$RShift$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$operator$RShift$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$operator$RShift$)) { $n_Lio_kaitai_struct_exprlang_Ast$operator$RShift$ = new $c_Lio_kaitai_struct_exprlang_Ast$operator$RShift$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$operator$RShift$ }); class $c_Lio_kaitai_struct_exprlang_Ast$operator$Sub$ extends $c_O { init___() { return this }; productPrefix__T() { return "Sub" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Sub" }; hashCode__I() { return 83488 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$operator$Sub$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$operator$Sub$: 0 }, false, "io.kaitai.struct.exprlang.Ast$operator$Sub$", { Lio_kaitai_struct_exprlang_Ast$operator$Sub$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$operator: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$operator$Sub$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$operator$Sub$; let $n_Lio_kaitai_struct_exprlang_Ast$operator$Sub$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$operator$Sub$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$operator$Sub$)) { $n_Lio_kaitai_struct_exprlang_Ast$operator$Sub$ = new $c_Lio_kaitai_struct_exprlang_Ast$operator$Sub$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$operator$Sub$ }); class $c_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$ extends $c_O { init___() { return this }; productPrefix__T() { return "Invert" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Invert" }; hashCode__I() { return (-2099835914) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$: 0 }, false, "io.kaitai.struct.exprlang.Ast$unaryop$Invert$", { Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$unaryop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$; let $n_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$)) { $n_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$ = new $c_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$ }); class $c_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$ extends $c_O { init___() { return this }; productPrefix__T() { return "Minus" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Minus" }; hashCode__I() { return 74348624 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$: 0 }, false, "io.kaitai.struct.exprlang.Ast$unaryop$Minus$", { Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$unaryop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$; let $n_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$)) { $n_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$ = new $c_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$ }); class $c_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$ extends $c_O { init___() { return this }; productPrefix__T() { return "Not" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Not" }; hashCode__I() { return 78515 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$ = new $TypeData().initClass({ Lio_kaitai_struct_exprlang_Ast$unaryop$Not$: 0 }, false, "io.kaitai.struct.exprlang.Ast$unaryop$Not$", { Lio_kaitai_struct_exprlang_Ast$unaryop$Not$: 1, O: 1, Lio_kaitai_struct_exprlang_Ast$unaryop: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$.prototype.$classData = $d_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$; let $n_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$ = (void 0); const $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$ = (function() { if ((!$n_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$)) { $n_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$ = new $c_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$().init___() }; return $n_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$ }); class $c_Lio_kaitai_struct_format_DynamicSized$ extends $c_O { init___() { return this }; productPrefix__T() { return "DynamicSized" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "DynamicSized" }; hashCode__I() { return 734426020 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_format_DynamicSized$ = new $TypeData().initClass({ Lio_kaitai_struct_format_DynamicSized$: 0 }, false, "io.kaitai.struct.format.DynamicSized$", { Lio_kaitai_struct_format_DynamicSized$: 1, O: 1, Lio_kaitai_struct_format_Sized: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_DynamicSized$.prototype.$classData = $d_Lio_kaitai_struct_format_DynamicSized$; let $n_Lio_kaitai_struct_format_DynamicSized$ = (void 0); const $m_Lio_kaitai_struct_format_DynamicSized$ = (function() { if ((!$n_Lio_kaitai_struct_format_DynamicSized$)) { $n_Lio_kaitai_struct_format_DynamicSized$ = new $c_Lio_kaitai_struct_format_DynamicSized$().init___() }; return $n_Lio_kaitai_struct_format_DynamicSized$ }); class $c_Lio_kaitai_struct_format_FixedSized extends $c_O { constructor() { super(); this.n$1 = 0 }; productPrefix__T() { return "FixedSized" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_FixedSized)) { const FixedSized$1 = x$1; return (this.n$1 === FixedSized$1.n$1) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.n$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___I(n) { this.n$1 = n; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, this.n$1); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 1) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_FixedSized = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_FixedSized))) }); const $d_Lio_kaitai_struct_format_FixedSized = new $TypeData().initClass({ Lio_kaitai_struct_format_FixedSized: 0 }, false, "io.kaitai.struct.format.FixedSized", { Lio_kaitai_struct_format_FixedSized: 1, O: 1, Lio_kaitai_struct_format_Sized: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_FixedSized.prototype.$classData = $d_Lio_kaitai_struct_format_FixedSized; class $c_Lio_kaitai_struct_format_GenericStructClassSpec$ extends $c_O { init___() { return this }; productPrefix__T() { return "GenericStructClassSpec" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "GenericStructClassSpec" }; toDataType__Lio_kaitai_struct_datatype_DataType() { return $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$() }; hashCode__I() { return (-1090503097) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_format_GenericStructClassSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_GenericStructClassSpec$: 0 }, false, "io.kaitai.struct.format.GenericStructClassSpec$", { Lio_kaitai_struct_format_GenericStructClassSpec$: 1, O: 1, Lio_kaitai_struct_format_ClassSpecLike: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_GenericStructClassSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_GenericStructClassSpec$; let $n_Lio_kaitai_struct_format_GenericStructClassSpec$ = (void 0); const $m_Lio_kaitai_struct_format_GenericStructClassSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_GenericStructClassSpec$)) { $n_Lio_kaitai_struct_format_GenericStructClassSpec$ = new $c_Lio_kaitai_struct_format_GenericStructClassSpec$().init___() }; return $n_Lio_kaitai_struct_format_GenericStructClassSpec$ }); class $c_Lio_kaitai_struct_format_InstanceIdentifier extends $c_Lio_kaitai_struct_format_Identifier { constructor() { super(); this.name$2 = null }; productPrefix__T() { return "InstanceIdentifier" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const InstanceIdentifier$1 = x$1; return (this.name$2 === InstanceIdentifier$1.name$2) } else { return false } }; humanReadable__T() { return this.name$2 }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___T(name) { this.name$2 = name; $m_Lio_kaitai_struct_format_Identifier$().checkIdentifier__T__V(name); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_InstanceIdentifier = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_InstanceIdentifier))) }); const $d_Lio_kaitai_struct_format_InstanceIdentifier = new $TypeData().initClass({ Lio_kaitai_struct_format_InstanceIdentifier: 0 }, false, "io.kaitai.struct.format.InstanceIdentifier", { Lio_kaitai_struct_format_InstanceIdentifier: 1, Lio_kaitai_struct_format_Identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_InstanceIdentifier.prototype.$classData = $d_Lio_kaitai_struct_format_InstanceIdentifier; class $c_Lio_kaitai_struct_format_IoStorageIdentifier extends $c_Lio_kaitai_struct_format_Identifier { constructor() { super(); this.innerId$2 = null }; productPrefix__T() { return "IoStorageIdentifier" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_IoStorageIdentifier)) { const IoStorageIdentifier$1 = x$1; const x = this.innerId$2; const x$2 = IoStorageIdentifier$1.innerId$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; humanReadable__T() { return (("io(" + this.innerId$2.humanReadable__T()) + ")") }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.innerId$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___Lio_kaitai_struct_format_Identifier(innerId) { this.innerId$2 = innerId; return this }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_IoStorageIdentifier = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_IoStorageIdentifier))) }); const $d_Lio_kaitai_struct_format_IoStorageIdentifier = new $TypeData().initClass({ Lio_kaitai_struct_format_IoStorageIdentifier: 0 }, false, "io.kaitai.struct.format.IoStorageIdentifier", { Lio_kaitai_struct_format_IoStorageIdentifier: 1, Lio_kaitai_struct_format_Identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_IoStorageIdentifier.prototype.$classData = $d_Lio_kaitai_struct_format_IoStorageIdentifier; class $c_Lio_kaitai_struct_format_MetaSpec extends $c_O { constructor() { super(); this.path$1 = null; this.isOpaque$1 = false; this.id$1 = null; this.endian$1 = null; this.bitEndian$1 = null; this.encoding$1 = null; this.forceDebug$1 = false; this.opaqueTypes$1 = null; this.imports$1 = null }; productPrefix__T() { return "MetaSpec" }; productArity__I() { return 9 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_MetaSpec)) { const MetaSpec$1 = x$1; const x = this.path$1; const x$2 = MetaSpec$1.path$1; let jsx$5; if ((((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) && (this.isOpaque$1 === MetaSpec$1.isOpaque$1))) { const x$3 = this.id$1; const x$4 = MetaSpec$1.id$1; jsx$5 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$5 = false }; let jsx$4; if (jsx$5) { const x$5 = this.endian$1; const x$6 = MetaSpec$1.endian$1; jsx$4 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$4 = false }; let jsx$3; if (jsx$4) { const x$7 = this.bitEndian$1; const x$8 = MetaSpec$1.bitEndian$1; jsx$3 = ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { jsx$3 = false }; let jsx$2; if (jsx$3) { const x$9 = this.encoding$1; const x$10 = MetaSpec$1.encoding$1; jsx$2 = ((x$9 === null) ? (x$10 === null) : x$9.equals__O__Z(x$10)) } else { jsx$2 = false }; let jsx$1; if ((jsx$2 && (this.forceDebug$1 === MetaSpec$1.forceDebug$1))) { const x$11 = this.opaqueTypes$1; const x$12 = MetaSpec$1.opaqueTypes$1; jsx$1 = ((x$11 === null) ? (x$12 === null) : x$11.equals__O__Z(x$12)) } else { jsx$1 = false }; if (jsx$1) { const x$13 = this.imports$1; const x$14 = MetaSpec$1.imports$1; return ((x$13 === null) ? (x$14 === null) : x$13.equals__O__Z(x$14)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.path$1; break } case 1: { return this.isOpaque$1; break } case 2: { return this.id$1; break } case 3: { return this.endian$1; break } case 4: { return this.bitEndian$1; break } case 5: { return this.encoding$1; break } case 6: { return this.forceDebug$1; break } case 7: { return this.opaqueTypes$1; break } case 8: { return this.imports$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___sci_List__Z__s_Option__s_Option__s_Option__s_Option__Z__s_Option__sci_List(path, isOpaque, id, endian, bitEndian, encoding, forceDebug, opaqueTypes, imports) { this.path$1 = path; this.isOpaque$1 = isOpaque; this.id$1 = id; this.endian$1 = endian; this.bitEndian$1 = bitEndian; this.encoding$1 = encoding; this.forceDebug$1 = forceDebug; this.opaqueTypes$1 = opaqueTypes; this.imports$1 = imports; return this }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; fillInEndian__s_Option__Lio_kaitai_struct_format_MetaSpec(defEndian) { const x1 = new $c_T2().init___O__O(defEndian, this.endian$1); const p2 = x1.$$und1$f; const x = $m_s_None$(); if ((x === p2)) { return this }; const p5 = x1.$$und2$f; if ((p5 instanceof $c_s_Some)) { return this }; const p8 = x1.$$und1$f; const p9 = x1.$$und2$f; if ((p8 instanceof $c_s_Some)) { const x10 = p8; let jsx$1; if ((x10.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { const x$3 = $m_s_None$(); jsx$1 = (x$3 === p9) } else { jsx$1 = false }; if (jsx$1) { const x$1 = new $c_s_Some().init___O($m_Lio_kaitai_struct_datatype_InheritedEndian$()); const x$2$2 = this.path$1; const x$3$2 = this.isOpaque$1; const x$4$2 = this.id$1; const x$5 = this.bitEndian$1; const x$6 = this.encoding$1; const x$7 = this.forceDebug$1; const x$8 = this.opaqueTypes$1; const x$9 = this.imports$1; return new $c_Lio_kaitai_struct_format_MetaSpec().init___sci_List__Z__s_Option__s_Option__s_Option__s_Option__Z__s_Option__sci_List(x$2$2, x$3$2, x$4$2, x$1, x$5, x$6, x$7, x$8, x$9) } }; const p12 = x1.$$und1$f; const p13 = x1.$$und2$f; let jsx$2; if ((p12 instanceof $c_s_Some)) { const x$10 = $m_s_None$(); jsx$2 = (x$10 === p13) } else { jsx$2 = false }; if (jsx$2) { const x$11$2 = this.path$1; const x$12 = this.isOpaque$1; const x$13 = this.id$1; const x$14 = this.bitEndian$1; const x$15 = this.encoding$1; const x$16 = this.forceDebug$1; const x$17 = this.opaqueTypes$1; const x$18 = this.imports$1; return new $c_Lio_kaitai_struct_format_MetaSpec().init___sci_List__Z__s_Option__s_Option__s_Option__s_Option__Z__s_Option__sci_List(x$11$2, x$12, x$13, defEndian, x$14, x$15, x$16, x$17, x$18) }; throw new $c_s_MatchError().init___O(x1) }; fillInDefaults__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_MetaSpec(defSpec) { return this.fillInEncoding__p1__s_Option__Lio_kaitai_struct_format_MetaSpec(defSpec.encoding$1).fillInEndian__s_Option__Lio_kaitai_struct_format_MetaSpec(defSpec.endian$1).fillInBitEndian__s_Option__Lio_kaitai_struct_format_MetaSpec(defSpec.bitEndian$1) }; fillInBitEndian__s_Option__Lio_kaitai_struct_format_MetaSpec(defBitEndian) { const x1 = new $c_T2().init___O__O(defBitEndian, this.bitEndian$1); const p2 = x1.$$und1$f; const x = $m_s_None$(); if ((x === p2)) { return this }; const p5 = x1.$$und2$f; if ((p5 instanceof $c_s_Some)) { return this }; const p8 = x1.$$und1$f; const p9 = x1.$$und2$f; let jsx$1; if ((p8 instanceof $c_s_Some)) { const x$3 = $m_s_None$(); jsx$1 = (x$3 === p9) } else { jsx$1 = false }; if (jsx$1) { const x$2$2 = this.path$1; const x$3$2 = this.isOpaque$1; const x$4$2 = this.id$1; const x$5 = this.endian$1; const x$6 = this.encoding$1; const x$7 = this.forceDebug$1; const x$8 = this.opaqueTypes$1; const x$9 = this.imports$1; return new $c_Lio_kaitai_struct_format_MetaSpec().init___sci_List__Z__s_Option__s_Option__s_Option__s_Option__Z__s_Option__sci_List(x$2$2, x$3$2, x$4$2, x$5, defBitEndian, x$6, x$7, x$8, x$9) }; throw new $c_s_MatchError().init___O(x1) }; fillInEncoding__p1__s_Option__Lio_kaitai_struct_format_MetaSpec(defEncoding) { const x1 = new $c_T2().init___O__O(defEncoding, this.encoding$1); const p2 = x1.$$und1$f; const x = $m_s_None$(); if ((x === p2)) { return this }; const p5 = x1.$$und2$f; if ((p5 instanceof $c_s_Some)) { return this }; const p8 = x1.$$und1$f; const p9 = x1.$$und2$f; let jsx$1; if ((p8 instanceof $c_s_Some)) { const x$3 = $m_s_None$(); jsx$1 = (x$3 === p9) } else { jsx$1 = false }; if (jsx$1) { const x$2$2 = this.path$1; const x$3$2 = this.isOpaque$1; const x$4$2 = this.id$1; const x$5 = this.endian$1; const x$6 = this.bitEndian$1; const x$7 = this.forceDebug$1; const x$8 = this.opaqueTypes$1; const x$9 = this.imports$1; return new $c_Lio_kaitai_struct_format_MetaSpec().init___sci_List__Z__s_Option__s_Option__s_Option__s_Option__Z__s_Option__sci_List(x$2$2, x$3$2, x$4$2, x$5, x$6, defEncoding, x$7, x$8, x$9) }; throw new $c_s_MatchError().init___O(x1) }; path__sci_List() { return this.path$1 }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.path$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.isOpaque$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.id$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.endian$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.bitEndian$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.encoding$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.forceDebug$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.opaqueTypes$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.imports$1)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 9) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_MetaSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_MetaSpec))) }); const $d_Lio_kaitai_struct_format_MetaSpec = new $TypeData().initClass({ Lio_kaitai_struct_format_MetaSpec: 0 }, false, "io.kaitai.struct.format.MetaSpec", { Lio_kaitai_struct_format_MetaSpec: 1, O: 1, Lio_kaitai_struct_format_YAMLPath: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_MetaSpec.prototype.$classData = $d_Lio_kaitai_struct_format_MetaSpec; class $c_Lio_kaitai_struct_format_NamedIdentifier extends $c_Lio_kaitai_struct_format_Identifier { constructor() { super(); this.name$2 = null }; productPrefix__T() { return "NamedIdentifier" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const NamedIdentifier$1 = x$1; return (this.name$2 === NamedIdentifier$1.name$2) } else { return false } }; humanReadable__T() { return this.name$2 }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___T(name) { this.name$2 = name; $m_Lio_kaitai_struct_format_Identifier$().checkIdentifier__T__V(name); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_NamedIdentifier = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_NamedIdentifier))) }); const $d_Lio_kaitai_struct_format_NamedIdentifier = new $TypeData().initClass({ Lio_kaitai_struct_format_NamedIdentifier: 0 }, false, "io.kaitai.struct.format.NamedIdentifier", { Lio_kaitai_struct_format_NamedIdentifier: 1, Lio_kaitai_struct_format_Identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_NamedIdentifier.prototype.$classData = $d_Lio_kaitai_struct_format_NamedIdentifier; class $c_Lio_kaitai_struct_format_NoRepeat$ extends $c_O { init___() { return this }; productPrefix__T() { return "NoRepeat" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "NoRepeat" }; hashCode__I() { return 673216220 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_format_NoRepeat$ = new $TypeData().initClass({ Lio_kaitai_struct_format_NoRepeat$: 0 }, false, "io.kaitai.struct.format.NoRepeat$", { Lio_kaitai_struct_format_NoRepeat$: 1, O: 1, Lio_kaitai_struct_format_RepeatSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_NoRepeat$.prototype.$classData = $d_Lio_kaitai_struct_format_NoRepeat$; let $n_Lio_kaitai_struct_format_NoRepeat$ = (void 0); const $m_Lio_kaitai_struct_format_NoRepeat$ = (function() { if ((!$n_Lio_kaitai_struct_format_NoRepeat$)) { $n_Lio_kaitai_struct_format_NoRepeat$ = new $c_Lio_kaitai_struct_format_NoRepeat$().init___() }; return $n_Lio_kaitai_struct_format_NoRepeat$ }); class $c_Lio_kaitai_struct_format_NotCalculatedSized$ extends $c_O { init___() { return this }; productPrefix__T() { return "NotCalculatedSized" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "NotCalculatedSized" }; hashCode__I() { return (-1336437198) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_format_NotCalculatedSized$ = new $TypeData().initClass({ Lio_kaitai_struct_format_NotCalculatedSized$: 0 }, false, "io.kaitai.struct.format.NotCalculatedSized$", { Lio_kaitai_struct_format_NotCalculatedSized$: 1, O: 1, Lio_kaitai_struct_format_Sized: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_NotCalculatedSized$.prototype.$classData = $d_Lio_kaitai_struct_format_NotCalculatedSized$; let $n_Lio_kaitai_struct_format_NotCalculatedSized$ = (void 0); const $m_Lio_kaitai_struct_format_NotCalculatedSized$ = (function() { if ((!$n_Lio_kaitai_struct_format_NotCalculatedSized$)) { $n_Lio_kaitai_struct_format_NotCalculatedSized$ = new $c_Lio_kaitai_struct_format_NotCalculatedSized$().init___() }; return $n_Lio_kaitai_struct_format_NotCalculatedSized$ }); class $c_Lio_kaitai_struct_format_NumberedIdentifier extends $c_Lio_kaitai_struct_format_Identifier { constructor() { super(); this.idx$2 = 0 }; productPrefix__T() { return "NumberedIdentifier" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const NumberedIdentifier$1 = x$1; return (this.idx$2 === NumberedIdentifier$1.idx$2) } else { return false } }; humanReadable__T() { return (($m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1 + "_") + this.idx$2) }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.idx$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___I(idx) { this.idx$2 = idx; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, this.idx$2); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 1) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_NumberedIdentifier = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_NumberedIdentifier))) }); const $d_Lio_kaitai_struct_format_NumberedIdentifier = new $TypeData().initClass({ Lio_kaitai_struct_format_NumberedIdentifier: 0 }, false, "io.kaitai.struct.format.NumberedIdentifier", { Lio_kaitai_struct_format_NumberedIdentifier: 1, Lio_kaitai_struct_format_Identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_NumberedIdentifier.prototype.$classData = $d_Lio_kaitai_struct_format_NumberedIdentifier; class $c_Lio_kaitai_struct_format_ProcessCustom extends $c_O { constructor() { super(); this.name$1 = null; this.args$1 = null }; productPrefix__T() { return "ProcessCustom" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ProcessCustom)) { const ProcessCustom$1 = x$1; const x = this.name$1; const x$2 = ProcessCustom$1.name$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.args$1; const x$4 = ProcessCustom$1.args$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$1; break } case 1: { return this.args$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___sci_List__sc_Seq(name, args) { this.name$1 = name; this.args$1 = args; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_ProcessCustom = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ProcessCustom))) }); const $d_Lio_kaitai_struct_format_ProcessCustom = new $TypeData().initClass({ Lio_kaitai_struct_format_ProcessCustom: 0 }, false, "io.kaitai.struct.format.ProcessCustom", { Lio_kaitai_struct_format_ProcessCustom: 1, O: 1, Lio_kaitai_struct_format_ProcessExpr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ProcessCustom.prototype.$classData = $d_Lio_kaitai_struct_format_ProcessCustom; class $c_Lio_kaitai_struct_format_ProcessRotate extends $c_O { constructor() { super(); this.left$1 = false; this.key$1 = null }; productPrefix__T() { return "ProcessRotate" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const ProcessRotate$1 = x$1; if ((this.left$1 === ProcessRotate$1.left$1)) { const x = this.key$1; const x$2 = ProcessRotate$1.key$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.left$1; break } case 1: { return this.key$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Z__Lio_kaitai_struct_exprlang_Ast$expr(left, key) { this.left$1 = left; this.key$1 = key; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.left$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.key$1)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 2) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_ProcessRotate = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ProcessRotate))) }); const $d_Lio_kaitai_struct_format_ProcessRotate = new $TypeData().initClass({ Lio_kaitai_struct_format_ProcessRotate: 0 }, false, "io.kaitai.struct.format.ProcessRotate", { Lio_kaitai_struct_format_ProcessRotate: 1, O: 1, Lio_kaitai_struct_format_ProcessExpr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ProcessRotate.prototype.$classData = $d_Lio_kaitai_struct_format_ProcessRotate; class $c_Lio_kaitai_struct_format_ProcessXor extends $c_O { constructor() { super(); this.key$1 = null }; productPrefix__T() { return "ProcessXor" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const ProcessXor$1 = x$1; const x = this.key$1; const x$2 = ProcessXor$1.key$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.key$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr(key) { this.key$1 = key; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_ProcessXor = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ProcessXor))) }); const $d_Lio_kaitai_struct_format_ProcessXor = new $TypeData().initClass({ Lio_kaitai_struct_format_ProcessXor: 0 }, false, "io.kaitai.struct.format.ProcessXor", { Lio_kaitai_struct_format_ProcessXor: 1, O: 1, Lio_kaitai_struct_format_ProcessExpr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ProcessXor.prototype.$classData = $d_Lio_kaitai_struct_format_ProcessXor; class $c_Lio_kaitai_struct_format_ProcessZlib$ extends $c_O { init___() { return this }; productPrefix__T() { return "ProcessZlib" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "ProcessZlib" }; hashCode__I() { return 1870561978 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_format_ProcessZlib$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ProcessZlib$: 0 }, false, "io.kaitai.struct.format.ProcessZlib$", { Lio_kaitai_struct_format_ProcessZlib$: 1, O: 1, Lio_kaitai_struct_format_ProcessExpr: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ProcessZlib$.prototype.$classData = $d_Lio_kaitai_struct_format_ProcessZlib$; let $n_Lio_kaitai_struct_format_ProcessZlib$ = (void 0); const $m_Lio_kaitai_struct_format_ProcessZlib$ = (function() { if ((!$n_Lio_kaitai_struct_format_ProcessZlib$)) { $n_Lio_kaitai_struct_format_ProcessZlib$ = new $c_Lio_kaitai_struct_format_ProcessZlib$().init___() }; return $n_Lio_kaitai_struct_format_ProcessZlib$ }); class $c_Lio_kaitai_struct_format_RawIdentifier extends $c_Lio_kaitai_struct_format_Identifier { constructor() { super(); this.innerId$2 = null }; productPrefix__T() { return "RawIdentifier" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const RawIdentifier$1 = x$1; const x = this.innerId$2; const x$2 = RawIdentifier$1.innerId$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; humanReadable__T() { return (("raw(" + this.innerId$2.humanReadable__T()) + ")") }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.innerId$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___Lio_kaitai_struct_format_Identifier(innerId) { this.innerId$2 = innerId; return this }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_RawIdentifier = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_RawIdentifier))) }); const $d_Lio_kaitai_struct_format_RawIdentifier = new $TypeData().initClass({ Lio_kaitai_struct_format_RawIdentifier: 0 }, false, "io.kaitai.struct.format.RawIdentifier", { Lio_kaitai_struct_format_RawIdentifier: 1, Lio_kaitai_struct_format_Identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_RawIdentifier.prototype.$classData = $d_Lio_kaitai_struct_format_RawIdentifier; class $c_Lio_kaitai_struct_format_RepeatEos$ extends $c_O { init___() { return this }; productPrefix__T() { return "RepeatEos" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "RepeatEos" }; hashCode__I() { return 1348622670 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_format_RepeatEos$ = new $TypeData().initClass({ Lio_kaitai_struct_format_RepeatEos$: 0 }, false, "io.kaitai.struct.format.RepeatEos$", { Lio_kaitai_struct_format_RepeatEos$: 1, O: 1, Lio_kaitai_struct_format_RepeatSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_RepeatEos$.prototype.$classData = $d_Lio_kaitai_struct_format_RepeatEos$; let $n_Lio_kaitai_struct_format_RepeatEos$ = (void 0); const $m_Lio_kaitai_struct_format_RepeatEos$ = (function() { if ((!$n_Lio_kaitai_struct_format_RepeatEos$)) { $n_Lio_kaitai_struct_format_RepeatEos$ = new $c_Lio_kaitai_struct_format_RepeatEos$().init___() }; return $n_Lio_kaitai_struct_format_RepeatEos$ }); class $c_Lio_kaitai_struct_format_RepeatExpr extends $c_O { constructor() { super(); this.expr$1 = null }; productPrefix__T() { return "RepeatExpr" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { const RepeatExpr$1 = x$1; const x = this.expr$1; const x$2 = RepeatExpr$1.expr$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.expr$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr(expr) { this.expr$1 = expr; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_RepeatExpr = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_RepeatExpr))) }); const $d_Lio_kaitai_struct_format_RepeatExpr = new $TypeData().initClass({ Lio_kaitai_struct_format_RepeatExpr: 0 }, false, "io.kaitai.struct.format.RepeatExpr", { Lio_kaitai_struct_format_RepeatExpr: 1, O: 1, Lio_kaitai_struct_format_RepeatSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_RepeatExpr.prototype.$classData = $d_Lio_kaitai_struct_format_RepeatExpr; class $c_Lio_kaitai_struct_format_RepeatUntil extends $c_O { constructor() { super(); this.expr$1 = null }; productPrefix__T() { return "RepeatUntil" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_RepeatUntil)) { const RepeatUntil$1 = x$1; const x = this.expr$1; const x$2 = RepeatUntil$1.expr$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.expr$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr(expr) { this.expr$1 = expr; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_RepeatUntil = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_RepeatUntil))) }); const $d_Lio_kaitai_struct_format_RepeatUntil = new $TypeData().initClass({ Lio_kaitai_struct_format_RepeatUntil: 0 }, false, "io.kaitai.struct.format.RepeatUntil", { Lio_kaitai_struct_format_RepeatUntil: 1, O: 1, Lio_kaitai_struct_format_RepeatSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_RepeatUntil.prototype.$classData = $d_Lio_kaitai_struct_format_RepeatUntil; class $c_Lio_kaitai_struct_format_SpecialIdentifier extends $c_Lio_kaitai_struct_format_Identifier { constructor() { super(); this.name$2 = null }; productPrefix__T() { return "SpecialIdentifier" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const SpecialIdentifier$1 = x$1; return (this.name$2 === SpecialIdentifier$1.name$2) } else { return false } }; humanReadable__T() { return this.name$2 }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___T(name) { this.name$2 = name; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_SpecialIdentifier = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_SpecialIdentifier))) }); const $d_Lio_kaitai_struct_format_SpecialIdentifier = new $TypeData().initClass({ Lio_kaitai_struct_format_SpecialIdentifier: 0 }, false, "io.kaitai.struct.format.SpecialIdentifier", { Lio_kaitai_struct_format_SpecialIdentifier: 1, Lio_kaitai_struct_format_Identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_SpecialIdentifier.prototype.$classData = $d_Lio_kaitai_struct_format_SpecialIdentifier; class $c_Lio_kaitai_struct_format_StartedCalculationSized$ extends $c_O { init___() { return this }; productPrefix__T() { return "StartedCalculationSized" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "StartedCalculationSized" }; hashCode__I() { return 713515451 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_format_StartedCalculationSized$ = new $TypeData().initClass({ Lio_kaitai_struct_format_StartedCalculationSized$: 0 }, false, "io.kaitai.struct.format.StartedCalculationSized$", { Lio_kaitai_struct_format_StartedCalculationSized$: 1, O: 1, Lio_kaitai_struct_format_Sized: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_StartedCalculationSized$.prototype.$classData = $d_Lio_kaitai_struct_format_StartedCalculationSized$; let $n_Lio_kaitai_struct_format_StartedCalculationSized$ = (void 0); const $m_Lio_kaitai_struct_format_StartedCalculationSized$ = (function() { if ((!$n_Lio_kaitai_struct_format_StartedCalculationSized$)) { $n_Lio_kaitai_struct_format_StartedCalculationSized$ = new $c_Lio_kaitai_struct_format_StartedCalculationSized$().init___() }; return $n_Lio_kaitai_struct_format_StartedCalculationSized$ }); class $c_Lio_kaitai_struct_format_TextRef extends $c_O { constructor() { super(); this.text$1 = null }; productPrefix__T() { return "TextRef" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_TextRef)) { const TextRef$1 = x$1; return (this.text$1 === TextRef$1.text$1) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.text$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___T(text) { this.text$1 = text; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_TextRef = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_TextRef))) }); const $d_Lio_kaitai_struct_format_TextRef = new $TypeData().initClass({ Lio_kaitai_struct_format_TextRef: 0 }, false, "io.kaitai.struct.format.TextRef", { Lio_kaitai_struct_format_TextRef: 1, O: 1, Lio_kaitai_struct_format_RefSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_TextRef.prototype.$classData = $d_Lio_kaitai_struct_format_TextRef; class $c_Lio_kaitai_struct_format_UnknownClassSpec$ extends $c_O { init___() { return this }; productPrefix__T() { return "UnknownClassSpec" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "UnknownClassSpec" }; toDataType__Lio_kaitai_struct_datatype_DataType() { return $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$() }; hashCode__I() { return 1618510921 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_format_UnknownClassSpec$ = new $TypeData().initClass({ Lio_kaitai_struct_format_UnknownClassSpec$: 0 }, false, "io.kaitai.struct.format.UnknownClassSpec$", { Lio_kaitai_struct_format_UnknownClassSpec$: 1, O: 1, Lio_kaitai_struct_format_ClassSpecLike: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_UnknownClassSpec$.prototype.$classData = $d_Lio_kaitai_struct_format_UnknownClassSpec$; let $n_Lio_kaitai_struct_format_UnknownClassSpec$ = (void 0); const $m_Lio_kaitai_struct_format_UnknownClassSpec$ = (function() { if ((!$n_Lio_kaitai_struct_format_UnknownClassSpec$)) { $n_Lio_kaitai_struct_format_UnknownClassSpec$ = new $c_Lio_kaitai_struct_format_UnknownClassSpec$().init___() }; return $n_Lio_kaitai_struct_format_UnknownClassSpec$ }); class $c_Lio_kaitai_struct_format_UrlRef extends $c_O { constructor() { super(); this.url$1 = null; this.text$1 = null }; init___T__T(url, text) { this.url$1 = url; this.text$1 = text; return this }; productPrefix__T() { return "UrlRef" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_UrlRef)) { const UrlRef$1 = x$1; return ((this.url$1 === UrlRef$1.url$1) && (this.text$1 === UrlRef$1.text$1)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.url$1; break } case 1: { return this.text$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; toAhref__T() { return (((("") + this.text$1) + "") }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_UrlRef = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_UrlRef))) }); const $d_Lio_kaitai_struct_format_UrlRef = new $TypeData().initClass({ Lio_kaitai_struct_format_UrlRef: 0 }, false, "io.kaitai.struct.format.UrlRef", { Lio_kaitai_struct_format_UrlRef: 1, O: 1, Lio_kaitai_struct_format_RefSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_UrlRef.prototype.$classData = $d_Lio_kaitai_struct_format_UrlRef; class $c_Lio_kaitai_struct_format_ValidationAnyOf extends $c_O { constructor() { super(); this.values$1 = null }; productPrefix__T() { return "ValidationAnyOf" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ValidationAnyOf)) { const ValidationAnyOf$1 = x$1; const x = this.values$1; const x$2 = ValidationAnyOf$1.values$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.values$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___sci_List(values) { this.values$1 = values; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_ValidationAnyOf = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ValidationAnyOf))) }); const $d_Lio_kaitai_struct_format_ValidationAnyOf = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationAnyOf: 0 }, false, "io.kaitai.struct.format.ValidationAnyOf", { Lio_kaitai_struct_format_ValidationAnyOf: 1, O: 1, Lio_kaitai_struct_format_ValidationSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValidationAnyOf.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationAnyOf; class $c_Lio_kaitai_struct_format_ValidationEq extends $c_O { constructor() { super(); this.value$1 = null }; productPrefix__T() { return "ValidationEq" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ValidationEq)) { const ValidationEq$1 = x$1; const x = this.value$1; const x$2 = ValidationEq$1.value$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr(value) { this.value$1 = value; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_ValidationEq = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ValidationEq))) }); const $d_Lio_kaitai_struct_format_ValidationEq = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationEq: 0 }, false, "io.kaitai.struct.format.ValidationEq", { Lio_kaitai_struct_format_ValidationEq: 1, O: 1, Lio_kaitai_struct_format_ValidationSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValidationEq.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationEq; class $c_Lio_kaitai_struct_format_ValidationExpr extends $c_O { constructor() { super(); this.checkExpr$1 = null }; productPrefix__T() { return "ValidationExpr" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ValidationExpr)) { const ValidationExpr$1 = x$1; const x = this.checkExpr$1; const x$2 = ValidationExpr$1.checkExpr$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.checkExpr$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr(checkExpr) { this.checkExpr$1 = checkExpr; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_ValidationExpr = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ValidationExpr))) }); const $d_Lio_kaitai_struct_format_ValidationExpr = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationExpr: 0 }, false, "io.kaitai.struct.format.ValidationExpr", { Lio_kaitai_struct_format_ValidationExpr: 1, O: 1, Lio_kaitai_struct_format_ValidationSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValidationExpr.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationExpr; class $c_Lio_kaitai_struct_format_ValidationMax extends $c_O { constructor() { super(); this.max$1 = null }; productPrefix__T() { return "ValidationMax" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ValidationMax)) { const ValidationMax$1 = x$1; const x = this.max$1; const x$2 = ValidationMax$1.max$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.max$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr(max) { this.max$1 = max; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_ValidationMax = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ValidationMax))) }); const $d_Lio_kaitai_struct_format_ValidationMax = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationMax: 0 }, false, "io.kaitai.struct.format.ValidationMax", { Lio_kaitai_struct_format_ValidationMax: 1, O: 1, Lio_kaitai_struct_format_ValidationSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValidationMax.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationMax; class $c_Lio_kaitai_struct_format_ValidationMin extends $c_O { constructor() { super(); this.min$1 = null }; productPrefix__T() { return "ValidationMin" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ValidationMin)) { const ValidationMin$1 = x$1; const x = this.min$1; const x$2 = ValidationMin$1.min$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.min$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr(min) { this.min$1 = min; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_ValidationMin = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ValidationMin))) }); const $d_Lio_kaitai_struct_format_ValidationMin = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationMin: 0 }, false, "io.kaitai.struct.format.ValidationMin", { Lio_kaitai_struct_format_ValidationMin: 1, O: 1, Lio_kaitai_struct_format_ValidationSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValidationMin.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationMin; class $c_Lio_kaitai_struct_format_ValidationRange extends $c_O { constructor() { super(); this.min$1 = null; this.max$1 = null }; productPrefix__T() { return "ValidationRange" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ValidationRange)) { const ValidationRange$1 = x$1; const x = this.min$1; const x$2 = ValidationRange$1.min$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.max$1; const x$4 = ValidationRange$1.max$1; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.min$1; break } case 1: { return this.max$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr(min, max) { this.min$1 = min; this.max$1 = max; return this }; } const $isArrayOf_Lio_kaitai_struct_format_ValidationRange = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ValidationRange))) }); const $d_Lio_kaitai_struct_format_ValidationRange = new $TypeData().initClass({ Lio_kaitai_struct_format_ValidationRange: 0 }, false, "io.kaitai.struct.format.ValidationRange", { Lio_kaitai_struct_format_ValidationRange: 1, O: 1, Lio_kaitai_struct_format_ValidationSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValidationRange.prototype.$classData = $d_Lio_kaitai_struct_format_ValidationRange; class $c_Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$ extends $c_O { productPrefix__T() { return "PrivateAccess" }; init___Lio_kaitai_struct_languages_CppCompiler($$outer) { return this }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "PrivateAccess" }; hashCode__I() { return 890079399 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$: 0 }, false, "io.kaitai.struct.languages.CppCompiler$PrivateAccess$", { Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$: 1, O: 1, Lio_kaitai_struct_languages_CppCompiler$AccessMode: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$.prototype.$classData = $d_Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$; class $c_Lio_kaitai_struct_languages_CppCompiler$PublicAccess$ extends $c_O { productPrefix__T() { return "PublicAccess" }; init___Lio_kaitai_struct_languages_CppCompiler($$outer) { return this }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "PublicAccess" }; hashCode__I() { return 167146829 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_languages_CppCompiler$PublicAccess$ = new $TypeData().initClass({ Lio_kaitai_struct_languages_CppCompiler$PublicAccess$: 0 }, false, "io.kaitai.struct.languages.CppCompiler$PublicAccess$", { Lio_kaitai_struct_languages_CppCompiler$PublicAccess$: 1, O: 1, Lio_kaitai_struct_languages_CppCompiler$AccessMode: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_languages_CppCompiler$PublicAccess$.prototype.$classData = $d_Lio_kaitai_struct_languages_CppCompiler$PublicAccess$; class $c_Lio_kaitai_struct_languages_components_ExtraAttrs$$anonfun$1 extends $c_sr_AbstractPartialFunction { init___() { return this }; applyOrElse__Lio_kaitai_struct_format_InstanceSpec__F1__O(x1, $default) { return ($is_Lio_kaitai_struct_format_AttrLikeSpec(x1) ? x1 : $default.apply__O__O(x1)) }; isDefinedAt__Lio_kaitai_struct_format_InstanceSpec__Z(x1) { return $is_Lio_kaitai_struct_format_AttrLikeSpec(x1) }; isDefinedAt__O__Z(x) { return this.isDefinedAt__Lio_kaitai_struct_format_InstanceSpec__Z(x) }; applyOrElse__O__F1__O(x, $default) { return this.applyOrElse__Lio_kaitai_struct_format_InstanceSpec__F1__O(x, $default) }; } const $d_Lio_kaitai_struct_languages_components_ExtraAttrs$$anonfun$1 = new $TypeData().initClass({ Lio_kaitai_struct_languages_components_ExtraAttrs$$anonfun$1: 0 }, false, "io.kaitai.struct.languages.components.ExtraAttrs$$anonfun$1", { Lio_kaitai_struct_languages_components_ExtraAttrs$$anonfun$1: 1, sr_AbstractPartialFunction: 1, O: 1, F1: 1, s_PartialFunction: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_languages_components_ExtraAttrs$$anonfun$1.prototype.$classData = $d_Lio_kaitai_struct_languages_components_ExtraAttrs$$anonfun$1; class $c_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath extends $c_O { constructor() { super(); this.path$1 = null }; productPrefix__T() { return "AbsoluteImportPath" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath)) { const AbsoluteImportPath$1 = x$1; const x = this.path$1; const x$2 = AbsoluteImportPath$1.path$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.path$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___sci_List(path) { this.path$1 = path; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; baseDir__Lio_kaitai_struct_precompile_LoadImports$ImportPath() { const this$1 = this.path$1; return new $c_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath().init___sci_List($f_sc_TraversableLike__init__O(this$1)) }; } const $isArrayOf_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath))) }); const $d_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath = new $TypeData().initClass({ Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath: 0 }, false, "io.kaitai.struct.precompile.LoadImports$AbsoluteImportPath", { Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath: 1, O: 1, Lio_kaitai_struct_precompile_LoadImports$ImportPath: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath.prototype.$classData = $d_Lio_kaitai_struct_precompile_LoadImports$AbsoluteImportPath; class $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath extends $c_O { constructor() { super(); this.path$1 = null }; productPrefix__T() { return "RelativeImportPath" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath)) { const RelativeImportPath$1 = x$1; const x = this.path$1; const x$2 = RelativeImportPath$1.path$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.path$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___sci_List(path) { this.path$1 = path; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; baseDir__Lio_kaitai_struct_precompile_LoadImports$ImportPath() { const this$1 = this.path$1; return new $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath().init___sci_List($f_sc_TraversableLike__init__O(this$1)) }; } const $isArrayOf_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath))) }); const $d_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath = new $TypeData().initClass({ Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath: 0 }, false, "io.kaitai.struct.precompile.LoadImports$RelativeImportPath", { Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath: 1, O: 1, Lio_kaitai_struct_precompile_LoadImports$ImportPath: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath.prototype.$classData = $d_Lio_kaitai_struct_precompile_LoadImports$RelativeImportPath; class $c_Lio_kaitai_struct_precompile_NotFoundError extends $c_Lio_kaitai_struct_precompile_ExpressionError { } class $c_Lio_kaitai_struct_precompile_TypeMismatchError extends $c_Lio_kaitai_struct_precompile_ExpressionError { init___T(msg) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, msg, null, true, true); return this }; } const $d_Lio_kaitai_struct_precompile_TypeMismatchError = new $TypeData().initClass({ Lio_kaitai_struct_precompile_TypeMismatchError: 0 }, false, "io.kaitai.struct.precompile.TypeMismatchError", { Lio_kaitai_struct_precompile_TypeMismatchError: 1, Lio_kaitai_struct_precompile_ExpressionError: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_precompile_TypeMismatchError.prototype.$classData = $d_Lio_kaitai_struct_precompile_TypeMismatchError; class $c_Lio_kaitai_struct_precompile_TypeUndecidedError extends $c_Lio_kaitai_struct_precompile_ExpressionError { init___T(msg) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, msg, null, true, true); return this }; } const $isArrayOf_Lio_kaitai_struct_precompile_TypeUndecidedError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_precompile_TypeUndecidedError))) }); const $d_Lio_kaitai_struct_precompile_TypeUndecidedError = new $TypeData().initClass({ Lio_kaitai_struct_precompile_TypeUndecidedError: 0 }, false, "io.kaitai.struct.precompile.TypeUndecidedError", { Lio_kaitai_struct_precompile_TypeUndecidedError: 1, Lio_kaitai_struct_precompile_ExpressionError: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_precompile_TypeUndecidedError.prototype.$classData = $d_Lio_kaitai_struct_precompile_TypeUndecidedError; class $c_Lio_kaitai_struct_problems_ProblemSeverity$Error$ extends $c_O { init___() { return this }; productPrefix__T() { return "Error" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Error" }; message__T() { return "error" }; hashCode__I() { return 67232232 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_problems_ProblemSeverity$Error$ = new $TypeData().initClass({ Lio_kaitai_struct_problems_ProblemSeverity$Error$: 0 }, false, "io.kaitai.struct.problems.ProblemSeverity$Error$", { Lio_kaitai_struct_problems_ProblemSeverity$Error$: 1, O: 1, Lio_kaitai_struct_problems_ProblemSeverity: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_ProblemSeverity$Error$.prototype.$classData = $d_Lio_kaitai_struct_problems_ProblemSeverity$Error$; let $n_Lio_kaitai_struct_problems_ProblemSeverity$Error$ = (void 0); const $m_Lio_kaitai_struct_problems_ProblemSeverity$Error$ = (function() { if ((!$n_Lio_kaitai_struct_problems_ProblemSeverity$Error$)) { $n_Lio_kaitai_struct_problems_ProblemSeverity$Error$ = new $c_Lio_kaitai_struct_problems_ProblemSeverity$Error$().init___() }; return $n_Lio_kaitai_struct_problems_ProblemSeverity$Error$ }); class $c_Lio_kaitai_struct_problems_ProblemSeverity$Warning$ extends $c_O { init___() { return this }; productPrefix__T() { return "Warning" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "Warning" }; message__T() { return "warning" }; hashCode__I() { return (-1505867908) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_problems_ProblemSeverity$Warning$ = new $TypeData().initClass({ Lio_kaitai_struct_problems_ProblemSeverity$Warning$: 0 }, false, "io.kaitai.struct.problems.ProblemSeverity$Warning$", { Lio_kaitai_struct_problems_ProblemSeverity$Warning$: 1, O: 1, Lio_kaitai_struct_problems_ProblemSeverity: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_ProblemSeverity$Warning$.prototype.$classData = $d_Lio_kaitai_struct_problems_ProblemSeverity$Warning$; let $n_Lio_kaitai_struct_problems_ProblemSeverity$Warning$ = (void 0); const $m_Lio_kaitai_struct_problems_ProblemSeverity$Warning$ = (function() { if ((!$n_Lio_kaitai_struct_problems_ProblemSeverity$Warning$)) { $n_Lio_kaitai_struct_problems_ProblemSeverity$Warning$ = new $c_Lio_kaitai_struct_problems_ProblemSeverity$Warning$().init___() }; return $n_Lio_kaitai_struct_problems_ProblemSeverity$Warning$ }); class $c_Lio_kaitai_struct_translators_ResultLocalVar extends $c_O { constructor() { super(); this.n$1 = 0 }; productPrefix__T() { return "ResultLocalVar" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_translators_ResultLocalVar)) { const ResultLocalVar$1 = x$1; return (this.n$1 === ResultLocalVar$1.n$1) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.n$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___I(n) { this.n$1 = n; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, this.n$1); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 1) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_translators_ResultLocalVar = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_translators_ResultLocalVar))) }); const $d_Lio_kaitai_struct_translators_ResultLocalVar = new $TypeData().initClass({ Lio_kaitai_struct_translators_ResultLocalVar: 0 }, false, "io.kaitai.struct.translators.ResultLocalVar", { Lio_kaitai_struct_translators_ResultLocalVar: 1, O: 1, Lio_kaitai_struct_translators_TranslatorResult: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_translators_ResultLocalVar.prototype.$classData = $d_Lio_kaitai_struct_translators_ResultLocalVar; class $c_Lio_kaitai_struct_translators_ResultString extends $c_O { constructor() { super(); this.s$1 = null }; productPrefix__T() { return "ResultString" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_translators_ResultString)) { const ResultString$1 = x$1; return (this.s$1 === ResultString$1.s$1) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.s$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___T(s) { this.s$1 = s; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_translators_ResultString = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_translators_ResultString))) }); const $d_Lio_kaitai_struct_translators_ResultString = new $TypeData().initClass({ Lio_kaitai_struct_translators_ResultString: 0 }, false, "io.kaitai.struct.translators.ResultString", { Lio_kaitai_struct_translators_ResultString: 1, O: 1, Lio_kaitai_struct_translators_TranslatorResult: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_translators_ResultString.prototype.$classData = $d_Lio_kaitai_struct_translators_ResultString; class $c_Ljava_nio_CharBuffer extends $c_Ljava_nio_Buffer { constructor() { super(); this.$$undarray$2 = null; this.$$undarrayOffset$2 = 0 }; put__T__I__I__Ljava_nio_CharBuffer(src, start, end) { return this.put__Ljava_nio_CharBuffer__Ljava_nio_CharBuffer($m_Ljava_nio_CharBuffer$().wrap__jl_CharSequence__I__I__Ljava_nio_CharBuffer(src, start, end)) }; put__Ljava_nio_CharBuffer__Ljava_nio_CharBuffer(src) { if ((src === this)) { throw new $c_jl_IllegalArgumentException().init___() }; throw new $c_Ljava_nio_ReadOnlyBufferException().init___() }; equals__O__Z(that) { if ((that instanceof $c_Ljava_nio_CharBuffer)) { const x2 = that; return (this.compareTo__Ljava_nio_CharBuffer__I(x2) === 0) } else { return false } }; append__jl_CharSequence__jl_Appendable(x$1) { return this.put__T__Ljava_nio_CharBuffer($objectToString(x$1)) }; put__T__Ljava_nio_CharBuffer(src) { return this.put__T__I__I__Ljava_nio_CharBuffer(src, 0, (src.length | 0)) }; length__I() { return ((this.$$undlimit$1 - this.java$nio$Buffer$$$undposition$1) | 0) }; compareTo__Ljava_nio_CharBuffer__I(that) { if ((this === that)) { return 0 } else { const thisStart = this.java$nio$Buffer$$$undposition$1; const thisRemaining = ((this.$$undlimit$1 - thisStart) | 0); const thatStart = that.java$nio$Buffer$$$undposition$1; const thatRemaining = ((that.$$undlimit$1 - thatStart) | 0); const shortestLength = ((thisRemaining < thatRemaining) ? thisRemaining : thatRemaining); let i = 0; while ((i !== shortestLength)) { const index = ((thisStart + i) | 0); const c = $charSequenceCharAt(this.java$nio$StringCharBuffer$$$undcsq$f, ((this.java$nio$StringCharBuffer$$$undcsqOffset$f + index) | 0)); const index$1 = ((thatStart + i) | 0); const c$1 = $charSequenceCharAt(that.java$nio$StringCharBuffer$$$undcsq$f, ((that.java$nio$StringCharBuffer$$$undcsqOffset$f + index$1) | 0)); const cmp = ((c - c$1) | 0); if ((cmp !== 0)) { return cmp }; i = ((1 + i) | 0) }; return ((thisRemaining === thatRemaining) ? 0 : ((thisRemaining < thatRemaining) ? (-1) : 1)) } }; init___I__AC__I(_capacity, _array, _arrayOffset) { this.$$undarray$2 = _array; this.$$undarrayOffset$2 = _arrayOffset; $c_Ljava_nio_Buffer.prototype.init___I.call(this, _capacity); return this }; hashCode__I() { const start = this.java$nio$Buffer$$$undposition$1; const end = this.$$undlimit$1; let h = (-182887236); let i = start; while ((i !== end)) { const jsx$3 = $m_s_util_hashing_MurmurHash3$(); const jsx$2 = h; const jsx$1 = $m_sr_Statics$(); const index = i; const c = $charSequenceCharAt(this.java$nio$StringCharBuffer$$$undcsq$f, ((this.java$nio$StringCharBuffer$$$undcsqOffset$f + index) | 0)); h = jsx$3.mix__I__I__I(jsx$2, jsx$1.anyHash__O__I(new $c_jl_Character().init___C(c))); i = ((1 + i) | 0) }; return $m_s_util_hashing_MurmurHash3$().finalizeHash__I__I__I(h, ((end - start) | 0)) }; charAt__I__C(index) { return this.get__I__C(((this.java$nio$Buffer$$$undposition$1 + index) | 0)) }; } const $isArrayOf_Ljava_nio_CharBuffer = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_nio_CharBuffer))) }); class $c_Ljava_nio_ReadOnlyBufferException extends $c_jl_UnsupportedOperationException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $d_Ljava_nio_ReadOnlyBufferException = new $TypeData().initClass({ Ljava_nio_ReadOnlyBufferException: 0 }, false, "java.nio.ReadOnlyBufferException", { Ljava_nio_ReadOnlyBufferException: 1, jl_UnsupportedOperationException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Ljava_nio_ReadOnlyBufferException.prototype.$classData = $d_Ljava_nio_ReadOnlyBufferException; class $c_Ljava_nio_charset_MalformedInputException extends $c_Ljava_nio_charset_CharacterCodingException { constructor() { super(); this.inputLength$5 = 0 }; getMessage__T() { return ("Input length = " + this.inputLength$5) }; init___I(inputLength) { this.inputLength$5 = inputLength; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $d_Ljava_nio_charset_MalformedInputException = new $TypeData().initClass({ Ljava_nio_charset_MalformedInputException: 0 }, false, "java.nio.charset.MalformedInputException", { Ljava_nio_charset_MalformedInputException: 1, Ljava_nio_charset_CharacterCodingException: 1, Ljava_io_IOException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Ljava_nio_charset_MalformedInputException.prototype.$classData = $d_Ljava_nio_charset_MalformedInputException; class $c_Ljava_nio_charset_UnmappableCharacterException extends $c_Ljava_nio_charset_CharacterCodingException { constructor() { super(); this.inputLength$5 = 0 }; getMessage__T() { return ("Input length = " + this.inputLength$5) }; init___I(inputLength) { this.inputLength$5 = inputLength; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $d_Ljava_nio_charset_UnmappableCharacterException = new $TypeData().initClass({ Ljava_nio_charset_UnmappableCharacterException: 0 }, false, "java.nio.charset.UnmappableCharacterException", { Ljava_nio_charset_UnmappableCharacterException: 1, Ljava_nio_charset_CharacterCodingException: 1, Ljava_io_IOException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Ljava_nio_charset_UnmappableCharacterException.prototype.$classData = $d_Ljava_nio_charset_UnmappableCharacterException; class $c_Ljava_nio_charset_UnsupportedCharsetException extends $c_jl_IllegalArgumentException { constructor() { super(); this.charsetName$5 = null }; init___T(charsetName) { this.charsetName$5 = charsetName; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, charsetName, null, true, true); return this }; } const $d_Ljava_nio_charset_UnsupportedCharsetException = new $TypeData().initClass({ Ljava_nio_charset_UnsupportedCharsetException: 0 }, false, "java.nio.charset.UnsupportedCharsetException", { Ljava_nio_charset_UnsupportedCharsetException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Ljava_nio_charset_UnsupportedCharsetException.prototype.$classData = $d_Ljava_nio_charset_UnsupportedCharsetException; class $c_Lsourcecode_Name extends $c_Lsourcecode_SourceValue { constructor() { super(); this.value$2 = null }; productPrefix__T() { return "Name" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lsourcecode_Name)) { const Name$1 = x$1; return (this.value$2 === Name$1.value$2) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___T(value) { this.value$2 = value; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lsourcecode_Name = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lsourcecode_Name))) }); const $d_Lsourcecode_Name = new $TypeData().initClass({ Lsourcecode_Name: 0 }, false, "sourcecode.Name", { Lsourcecode_Name: 1, Lsourcecode_SourceValue: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lsourcecode_Name.prototype.$classData = $d_Lsourcecode_Name; class $c_T2 extends $c_O { constructor() { super(); this.$$und1$f = null; this.$$und2$f = null }; productPrefix__T() { return "Tuple2" }; $$und1$mcI$sp__I() { return (this.$$und1__O() | 0) }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_T2)) { const Tuple2$1 = x$1; return ($m_sr_BoxesRunTime$().equals__O__O__Z(this.$$und1__O(), Tuple2$1.$$und1__O()) && $m_sr_BoxesRunTime$().equals__O__O__Z(this.$$und2__O(), Tuple2$1.$$und2__O())) } else { return false } }; productElement__I__O(n) { return $f_s_Product2__productElement__I__O(this, n) }; init___O__O(_1, _2) { this.$$und1$f = _1; this.$$und2$f = _2; return this }; toString__T() { return (((("(" + this.$$und1__O()) + ",") + this.$$und2__O()) + ")") }; $$und2__O() { return this.$$und2$f }; $$und2$mcI$sp__I() { return (this.$$und2__O() | 0) }; $$und1$mcJ$sp__J() { return $uJ(this.$$und1__O()) }; swap__T2() { return new $c_T2().init___O__O(this.$$und2__O(), this.$$und1__O()) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; $$und1__O() { return this.$$und1$f }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_T2 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.T2))) }); const $d_T2 = new $TypeData().initClass({ T2: 0 }, false, "scala.Tuple2", { T2: 1, O: 1, s_Product2: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_T2.prototype.$classData = $d_T2; class $c_T3 extends $c_O { constructor() { super(); this.$$und1$1 = null; this.$$und2$1 = null; this.$$und3$1 = null }; productPrefix__T() { return "Tuple3" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_T3)) { const Tuple3$1 = x$1; return (($m_sr_BoxesRunTime$().equals__O__O__Z(this.$$und1$1, Tuple3$1.$$und1$1) && $m_sr_BoxesRunTime$().equals__O__O__Z(this.$$und2$1, Tuple3$1.$$und2$1)) && $m_sr_BoxesRunTime$().equals__O__O__Z(this.$$und3$1, Tuple3$1.$$und3$1)) } else { return false } }; productElement__I__O(n) { return $f_s_Product3__productElement__I__O(this, n) }; toString__T() { return (((((("(" + this.$$und1$1) + ",") + this.$$und2$1) + ",") + this.$$und3$1) + ")") }; init___O__O__O(_1, _2, _3) { this.$$und1$1 = _1; this.$$und2$1 = _2; this.$$und3$1 = _3; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_T3 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.T3))) }); const $d_T3 = new $TypeData().initClass({ T3: 0 }, false, "scala.Tuple3", { T3: 1, O: 1, s_Product3: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_T3.prototype.$classData = $d_T3; class $c_jl_NumberFormatException extends $c_jl_IllegalArgumentException { init___T(s) { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $d_jl_NumberFormatException = new $TypeData().initClass({ jl_NumberFormatException: 0 }, false, "java.lang.NumberFormatException", { jl_NumberFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_NumberFormatException.prototype.$classData = $d_jl_NumberFormatException; class $c_jl_StringIndexOutOfBoundsException extends $c_jl_IndexOutOfBoundsException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; init___I(index) { const s = ("String index out of range: " + index); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $d_jl_StringIndexOutOfBoundsException = new $TypeData().initClass({ jl_StringIndexOutOfBoundsException: 0 }, false, "java.lang.StringIndexOutOfBoundsException", { jl_StringIndexOutOfBoundsException: 1, jl_IndexOutOfBoundsException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_jl_StringIndexOutOfBoundsException.prototype.$classData = $d_jl_StringIndexOutOfBoundsException; class $c_ju_FormatterClosedException extends $c_jl_IllegalStateException { init___() { $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $d_ju_FormatterClosedException = new $TypeData().initClass({ ju_FormatterClosedException: 0 }, false, "java.util.FormatterClosedException", { ju_FormatterClosedException: 1, jl_IllegalStateException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_FormatterClosedException.prototype.$classData = $d_ju_FormatterClosedException; class $c_ju_IllegalFormatException extends $c_jl_IllegalArgumentException { } class $c_s_None$ extends $c_s_Option { init___() { return this }; productPrefix__T() { return "None" }; productArity__I() { return 0 }; isEmpty__Z() { return true }; get__O() { this.get__sr_Nothing$() }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "None" }; get__sr_Nothing$() { throw new $c_ju_NoSuchElementException().init___T("None.get") }; hashCode__I() { return 2433880 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_s_None$ = new $TypeData().initClass({ s_None$: 0 }, false, "scala.None$", { s_None$: 1, s_Option: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_None$.prototype.$classData = $d_s_None$; let $n_s_None$ = (void 0); const $m_s_None$ = (function() { if ((!$n_s_None$)) { $n_s_None$ = new $c_s_None$().init___() }; return $n_s_None$ }); class $c_s_PartialFunction$$anonfun$1 extends $c_sr_AbstractPartialFunction { init___() { return this }; isDefinedAt__O__Z(x1) { return true }; applyOrElse__O__F1__O(x1, $default) { return $m_s_PartialFunction$().scala$PartialFunction$$fallback$undpf$f }; } const $d_s_PartialFunction$$anonfun$1 = new $TypeData().initClass({ s_PartialFunction$$anonfun$1: 0 }, false, "scala.PartialFunction$$anonfun$1", { s_PartialFunction$$anonfun$1: 1, sr_AbstractPartialFunction: 1, O: 1, F1: 1, s_PartialFunction: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_PartialFunction$$anonfun$1.prototype.$classData = $d_s_PartialFunction$$anonfun$1; class $c_s_Some extends $c_s_Option { constructor() { super(); this.value$2 = null }; productPrefix__T() { return "Some" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_s_Some)) { const Some$1 = x$1; return $m_sr_BoxesRunTime$().equals__O__O__Z(this.value$2, Some$1.value$2) } else { return false } }; isEmpty__Z() { return false }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; get__O() { return this.value$2 }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___O(value) { this.value$2 = value; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_s_Some = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_Some))) }); const $d_s_Some = new $TypeData().initClass({ s_Some: 0 }, false, "scala.Some", { s_Some: 1, s_Option: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_Some.prototype.$classData = $d_s_Some; class $c_s_StringContext$InvalidEscapeException extends $c_jl_IllegalArgumentException { constructor() { super(); this.index$5 = 0 }; init___T__I(str, index) { this.index$5 = index; $m_s_Predef$().require__Z__V(((index >= 0) && (index < (str.length | 0)))); let jsx$1; if ((index === (((-1) + (str.length | 0)) | 0))) { jsx$1 = "at terminal" } else { const index$1 = ((1 + index) | 0); const c = (65535 & (str.charCodeAt(index$1) | 0)); jsx$1 = (("'\\" + new $c_jl_Character().init___C(c)) + "' not one of [\\b, \\t, \\n, \\f, \\r, \\\\, \\\", \\'] at") }; const s = (((((("invalid escape " + jsx$1) + " index ") + index) + " in \"") + str) + "\". Use \\\\ for literal \\."); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; } const $d_s_StringContext$InvalidEscapeException = new $TypeData().initClass({ s_StringContext$InvalidEscapeException: 0 }, false, "scala.StringContext$InvalidEscapeException", { s_StringContext$InvalidEscapeException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_s_StringContext$InvalidEscapeException.prototype.$classData = $d_s_StringContext$InvalidEscapeException; class $c_s_concurrent_impl_Promise$KeptPromise$Failed extends $c_O { constructor() { super(); this.result$1 = null }; init___s_util_Failure(result) { this.result$1 = result; return this }; tryComplete__s_util_Try__Z(value) { return false }; toString__T() { return $f_s_concurrent_impl_Promise__toString__T(this) }; flatMap__F1__s_concurrent_ExecutionContext__s_concurrent_Future(f, executor) { return this }; onComplete__F1__s_concurrent_ExecutionContext__V(func, executor) { $f_s_concurrent_impl_Promise$KeptPromise$Kept__onComplete__F1__s_concurrent_ExecutionContext__V(this, func, executor) }; zipWith__s_concurrent_Future__F2__s_concurrent_ExecutionContext__s_concurrent_Future(that, f, executor) { return this }; value__s_Option() { return new $c_s_Some().init___O(this.result$1) }; map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(f, executor) { return this }; result__s_util_Try() { return this.result$1 }; } const $d_s_concurrent_impl_Promise$KeptPromise$Failed = new $TypeData().initClass({ s_concurrent_impl_Promise$KeptPromise$Failed: 0 }, false, "scala.concurrent.impl.Promise$KeptPromise$Failed", { s_concurrent_impl_Promise$KeptPromise$Failed: 1, O: 1, s_concurrent_impl_Promise$KeptPromise$Kept: 1, s_concurrent_impl_Promise: 1, s_concurrent_Promise: 1, s_concurrent_Future: 1, s_concurrent_Awaitable: 1 }); $c_s_concurrent_impl_Promise$KeptPromise$Failed.prototype.$classData = $d_s_concurrent_impl_Promise$KeptPromise$Failed; class $c_s_concurrent_impl_Promise$KeptPromise$Successful extends $c_O { constructor() { super(); this.result$1 = null }; tryComplete__s_util_Try__Z(value) { return false }; toString__T() { return $f_s_concurrent_impl_Promise__toString__T(this) }; flatMap__F1__s_concurrent_ExecutionContext__s_concurrent_Future(f, executor) { return $f_s_concurrent_Future__flatMap__F1__s_concurrent_ExecutionContext__s_concurrent_Future(this, f, executor) }; init___s_util_Success(result) { this.result$1 = result; return this }; onComplete__F1__s_concurrent_ExecutionContext__V(func, executor) { $f_s_concurrent_impl_Promise$KeptPromise$Kept__onComplete__F1__s_concurrent_ExecutionContext__V(this, func, executor) }; zipWith__s_concurrent_Future__F2__s_concurrent_ExecutionContext__s_concurrent_Future(that, f, executor) { return $f_s_concurrent_Future__zipWith__s_concurrent_Future__F2__s_concurrent_ExecutionContext__s_concurrent_Future(this, that, f, executor) }; map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(f, executor) { return $f_s_concurrent_Future__map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(this, f, executor) }; value__s_Option() { return new $c_s_Some().init___O(this.result$1) }; result__s_util_Try() { return this.result$1 }; } const $d_s_concurrent_impl_Promise$KeptPromise$Successful = new $TypeData().initClass({ s_concurrent_impl_Promise$KeptPromise$Successful: 0 }, false, "scala.concurrent.impl.Promise$KeptPromise$Successful", { s_concurrent_impl_Promise$KeptPromise$Successful: 1, O: 1, s_concurrent_impl_Promise$KeptPromise$Kept: 1, s_concurrent_impl_Promise: 1, s_concurrent_Promise: 1, s_concurrent_Future: 1, s_concurrent_Awaitable: 1 }); $c_s_concurrent_impl_Promise$KeptPromise$Successful.prototype.$classData = $d_s_concurrent_impl_Promise$KeptPromise$Successful; const $f_s_math_Numeric__signum__O__I = (function($thiz, x) { const y = $thiz.fromInt__I__O(0); if ($f_s_math_Ordering__lt__O__O__Z($thiz, x, y)) { return (-1) } else { const y$1 = $thiz.fromInt__I__O(0); if ($f_s_math_Ordering__gt__O__O__Z($thiz, x, y$1)) { return 1 } else { return 0 } } }); class $c_s_util_Failure extends $c_s_util_Try { constructor() { super(); this.exception$2 = null }; productPrefix__T() { return "Failure" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_s_util_Failure)) { const Failure$1 = x$1; const x = this.exception$2; const x$2 = Failure$1.exception$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; map__F1__s_util_Try(f) { return this }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.exception$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___jl_Throwable(exception) { this.exception$2 = exception; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_s_util_Failure = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_util_Failure))) }); const $d_s_util_Failure = new $TypeData().initClass({ s_util_Failure: 0 }, false, "scala.util.Failure", { s_util_Failure: 1, s_util_Try: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_util_Failure.prototype.$classData = $d_s_util_Failure; class $c_s_util_Left extends $c_s_util_Either { constructor() { super(); this.value$2 = null }; productPrefix__T() { return "Left" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_s_util_Left)) { const Left$1 = x$1; return $m_sr_BoxesRunTime$().equals__O__O__Z(this.value$2, Left$1.value$2) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___O(value) { this.value$2 = value; return this }; isLeft__Z() { return true }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_s_util_Left = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_util_Left))) }); const $d_s_util_Left = new $TypeData().initClass({ s_util_Left: 0 }, false, "scala.util.Left", { s_util_Left: 1, s_util_Either: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_util_Left.prototype.$classData = $d_s_util_Left; class $c_s_util_Right extends $c_s_util_Either { constructor() { super(); this.value$2 = null }; productPrefix__T() { return "Right" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_s_util_Right)) { const Right$1 = x$1; return $m_sr_BoxesRunTime$().equals__O__O__Z(this.value$2, Right$1.value$2) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___O(value) { this.value$2 = value; return this }; isLeft__Z() { return false }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_s_util_Right = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_util_Right))) }); const $d_s_util_Right = new $TypeData().initClass({ s_util_Right: 0 }, false, "scala.util.Right", { s_util_Right: 1, s_util_Either: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_util_Right.prototype.$classData = $d_s_util_Right; class $c_s_util_Success extends $c_s_util_Try { constructor() { super(); this.value$2 = null }; productPrefix__T() { return "Success" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_s_util_Success)) { const Success$1 = x$1; return $m_sr_BoxesRunTime$().equals__O__O__Z(this.value$2, Success$1.value$2) } else { return false } }; map__F1__s_util_Try(f) { try { return new $c_s_util_Success().init___O(f.apply__O__O(this.value$2)) } catch (e) { const e$2 = $m_sjsr_package$().wrapJavaScriptException__O__jl_Throwable(e); if ((e$2 !== null)) { const o11 = $m_s_util_control_NonFatal$().unapply__jl_Throwable__s_Option(e$2); if ((!o11.isEmpty__Z())) { const e$3 = o11.get__O(); return new $c_s_util_Failure().init___jl_Throwable(e$3) }; throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(e$2) } else { throw e } } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.value$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___O(value) { this.value$2 = value; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_s_util_Success = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_util_Success))) }); const $d_s_util_Success = new $TypeData().initClass({ s_util_Success: 0 }, false, "scala.util.Success", { s_util_Success: 1, s_util_Try: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_util_Success.prototype.$classData = $d_s_util_Success; const $f_sc_GenSetLike__equals__O__Z = (function($thiz, that) { if ($is_sc_GenSet(that)) { const x2 = that; return (($thiz === x2) || (($thiz.size__I() === x2.size__I()) && $f_sc_GenSetLike__liftedTree1$1__psc_GenSetLike__sc_GenSet__Z($thiz, x2))) } else { return false } }); const $f_sc_GenSetLike__liftedTree1$1__psc_GenSetLike__sc_GenSet__Z = (function($thiz, x2$1) { try { return $thiz.subsetOf__sc_GenSet__Z(x2$1) } catch (e) { if ((e instanceof $c_jl_ClassCastException)) { return false } else { throw e } } }); const $is_sc_GenSetLike = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_GenSetLike))) }); const $isArrayOf_sc_GenSetLike = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_GenSetLike))) }); const $f_sc_TraversableLike__to__scg_CanBuildFrom__O = (function($thiz, cbf) { const b = cbf.apply__scm_Builder(); $f_scm_Builder__sizeHint__sc_TraversableLike__V(b, $thiz); b.$$plus$plus$eq__sc_TraversableOnce__scg_Growable($thiz.thisCollection__sc_Traversable()); return b.result__O() }); const $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O = (function($thiz, f, bf) { const b = bf.apply__O__scm_Builder($thiz.repr__O()); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, b$1, f$1) { return (function(x$2) { return b$1.$$plus$plus$eq__sc_TraversableOnce__scg_Growable(f$1.apply__O__O(x$2).seq__sc_TraversableOnce()) }) })($thiz, b, f))); return b.result__O() }); const $f_sc_TraversableLike__isPartLikelySynthetic$1__psc_TraversableLike__T__I__Z = (function($thiz, fqn$1, partStart$1) { const firstChar = (65535 & (fqn$1.charCodeAt(partStart$1) | 0)); return (((firstChar > 90) && (firstChar < 127)) || (firstChar < 65)) }); const $f_sc_TraversableLike__init__O = (function($thiz) { if ($thiz.isEmpty__Z()) { throw new $c_jl_UnsupportedOperationException().init___T("empty.init") }; const elem = $thiz.head__O(); const lst = new $c_sr_ObjectRef().init___O(elem); const follow = new $c_sr_BooleanRef().init___Z(false); const b = $thiz.newBuilder__scm_Builder(); $f_scm_Builder__sizeHint__sc_TraversableLike__I__V(b, $thiz, (-1)); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, follow$1, b$1, lst$1) { return (function(x$2) { if (follow$1.elem$1) { b$1.$$plus$eq__O__scm_Builder(lst$1.elem$1) } else { follow$1.elem$1 = true }; lst$1.elem$1 = x$2 }) })($thiz, follow, b, lst))); return b.result__O() }); const $f_sc_TraversableLike__toString__T = (function($thiz) { return $thiz.mkString__T__T__T__T(($thiz.stringPrefix__T() + "("), ", ", ")") }); const $f_sc_TraversableLike__headOption__s_Option = (function($thiz) { return ($thiz.isEmpty__Z() ? $m_s_None$() : new $c_s_Some().init___O($thiz.head__O())) }); const $f_sc_TraversableLike__filterImpl__F1__Z__O = (function($thiz, p, isFlipped) { if (($thiz instanceof $c_sci_List)) { const x2 = $thiz; return $f_sc_TraversableLike__filterImplList__psc_TraversableLike__sci_List__F1__Z__sci_List($thiz, x2, p, isFlipped) } else { const b = $thiz.newBuilder__scm_Builder(); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, p$1, isFlipped$1, b$1) { return (function(x$2) { return (((!(!p$1.apply__O__O(x$2))) !== isFlipped$1) ? b$1.$$plus$eq__O__scm_Builder(x$2) : (void 0)) }) })($thiz, p, isFlipped, b))); return b.result__O() } }); const $f_sc_TraversableLike__defaultPlusPlus$1__psc_TraversableLike__scg_CanBuildFrom__sc_GenTraversableOnce__O = (function($thiz, bf$1, that$1) { const b = bf$1.apply__O__scm_Builder($thiz.repr__O()); if ($is_sc_IndexedSeqLike(that$1)) { const delta = that$1.seq__sc_TraversableOnce().size__I(); $f_scm_Builder__sizeHint__sc_TraversableLike__I__V(b, $thiz, delta) }; b.$$plus$plus$eq__sc_TraversableOnce__scg_Growable($thiz.thisCollection__sc_Traversable()); b.$$plus$plus$eq__sc_TraversableOnce__scg_Growable(that$1.seq__sc_TraversableOnce()); return b.result__O() }); const $f_sc_TraversableLike__allIn$1__psc_TraversableLike__sci_List__sci_List__F1__Z__sci_List = (function($thiz, start, remaining, p$2, isFlipped$2) { _allIn: while (true) { if (remaining.isEmpty__Z()) { return start } else { const x$2 = remaining.head__O(); if (((!(!p$2.apply__O__O(x$2))) !== isFlipped$2)) { const this$1 = remaining; remaining = this$1.tail__sci_List(); continue _allIn } else { const firstMiss = remaining; return $f_sc_TraversableLike__partialFill$1__psc_TraversableLike__sci_List__sci_List__F1__Z__sci_List($thiz, start, firstMiss, p$2, isFlipped$2) } } } }); const $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O = (function($thiz, that, bf) { if ((bf === $m_sci_Set$().ReusableCBF$5)) { if ($is_sci_Set($thiz)) { const x2 = $thiz; if ($is_sc_GenSet(that)) { return x2.union__sc_GenSet__sc_Set(that) } }; return $f_sc_TraversableLike__defaultPlusPlus$1__psc_TraversableLike__scg_CanBuildFrom__sc_GenTraversableOnce__O($thiz, bf, that) } else if ((bf === $m_sci_HashSet$().ReusableCBF$5)) { if (($thiz instanceof $c_sci_HashSet)) { const x2$2 = $thiz; if ($is_sc_GenSet(that)) { return x2$2.union__sc_GenSet__sci_HashSet(that) } }; return $f_sc_TraversableLike__defaultPlusPlus$1__psc_TraversableLike__scg_CanBuildFrom__sc_GenTraversableOnce__O($thiz, bf, that) } else { return $f_sc_TraversableLike__defaultPlusPlus$1__psc_TraversableLike__scg_CanBuildFrom__sc_GenTraversableOnce__O($thiz, bf, that) } }); const $f_sc_TraversableLike__noneIn$1__psc_TraversableLike__sci_List__F1__Z__sci_List = (function($thiz, l, p$2, isFlipped$2) { _noneIn: while (true) { if (l.isEmpty__Z()) { return $m_sci_Nil$() } else { const h = l.head__O(); const this$1 = l; const t = this$1.tail__sci_List(); if (((!(!p$2.apply__O__O(h))) !== isFlipped$2)) { const start = l; let remaining = t; return $f_sc_TraversableLike__allIn$1__psc_TraversableLike__sci_List__sci_List__F1__Z__sci_List($thiz, start, remaining, p$2, isFlipped$2) } else { l = t; continue _noneIn } } } }); const $f_sc_TraversableLike__last__O = (function($thiz) { const elem = $thiz.head__O(); const lst = new $c_sr_ObjectRef().init___O(elem); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, lst$1) { return (function(x$2) { lst$1.elem$1 = x$2 }) })($thiz, lst))); return lst.elem$1 }); const $f_sc_TraversableLike__filterImplList__psc_TraversableLike__sci_List__F1__Z__sci_List = (function($thiz, self, p, isFlipped) { let l = self; const result = $f_sc_TraversableLike__noneIn$1__psc_TraversableLike__sci_List__F1__Z__sci_List($thiz, l, p, isFlipped); return result }); const $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O = (function($thiz, f, bf) { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder($thiz, bf); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, b$1, f$1) { return (function(x$2) { return b$1.$$plus$eq__O__scm_Builder(f$1.apply__O__O(x$2)) }) })($thiz, b, f))); return b.result__O() }); const $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder = (function($thiz, bf$3) { const b = bf$3.apply__O__scm_Builder($thiz.repr__O()); $f_scm_Builder__sizeHint__sc_TraversableLike__V(b, $thiz); return b }); const $f_sc_TraversableLike__partialFill$1__psc_TraversableLike__sci_List__sci_List__F1__Z__sci_List = (function($thiz, origStart, firstMiss, p$2, isFlipped$2) { const newHead = new $c_sci_$colon$colon().init___O__sci_List(origStart.head__O(), $m_sci_Nil$()); let toProcess = origStart.tail__sci_List(); let currentLast = newHead; while ((toProcess !== firstMiss)) { const newElem = new $c_sci_$colon$colon().init___O__sci_List(toProcess.head__O(), $m_sci_Nil$()); currentLast.tl$5 = newElem; currentLast = newElem; const this$1 = toProcess; toProcess = this$1.tail__sci_List() }; let next = firstMiss.tail__sci_List(); let nextToCopy = next; while ((!next.isEmpty__Z())) { const head = next.head__O(); if (((!(!p$2.apply__O__O(head))) !== isFlipped$2)) { const this$2 = next; next = this$2.tail__sci_List() } else { while ((nextToCopy !== next)) { const newElem$2 = new $c_sci_$colon$colon().init___O__sci_List(nextToCopy.head__O(), $m_sci_Nil$()); currentLast.tl$5 = newElem$2; currentLast = newElem$2; const this$3 = nextToCopy; nextToCopy = this$3.tail__sci_List() }; const this$4 = next; nextToCopy = this$4.tail__sci_List(); const this$5 = next; next = this$5.tail__sci_List() } }; if ((!nextToCopy.isEmpty__Z())) { currentLast.tl$5 = nextToCopy }; return newHead }); const $f_sc_TraversableLike__collect__s_PartialFunction__scg_CanBuildFrom__O = (function($thiz, pf, bf) { const b = bf.apply__O__scm_Builder($thiz.repr__O()); $thiz.foreach__F1__V(pf.runWith__F1__F1(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, b$1) { return (function(x$1$2) { return b$1.$$plus$eq__O__scm_Builder(x$1$2) }) })($thiz, b)))); return b.result__O() }); const $f_sc_TraversableLike__stringPrefix__T = (function($thiz) { const this$1 = $thiz.repr__O(); const fqn = $objectGetClass(this$1).getName__T(); let pos = (((-1) + (fqn.length | 0)) | 0); while (true) { let jsx$1; if ((pos !== (-1))) { const index = pos; jsx$1 = ((65535 & (fqn.charCodeAt(index) | 0)) === 36) } else { jsx$1 = false }; if (jsx$1) { pos = (((-1) + pos) | 0) } else { break } }; let jsx$2; if ((pos === (-1))) { jsx$2 = true } else { const index$1 = pos; jsx$2 = ((65535 & (fqn.charCodeAt(index$1) | 0)) === 46) }; if (jsx$2) { return "" }; let result = ""; while (true) { const partEnd = ((1 + pos) | 0); while (true) { let jsx$4; if ((pos !== (-1))) { const index$2 = pos; jsx$4 = ((65535 & (fqn.charCodeAt(index$2) | 0)) <= 57) } else { jsx$4 = false }; let jsx$3; if (jsx$4) { const index$3 = pos; jsx$3 = ((65535 & (fqn.charCodeAt(index$3) | 0)) >= 48) } else { jsx$3 = false }; if (jsx$3) { pos = (((-1) + pos) | 0) } else { break } }; const lastNonDigit = pos; while (true) { let jsx$6; if ((pos !== (-1))) { const index$4 = pos; jsx$6 = ((65535 & (fqn.charCodeAt(index$4) | 0)) !== 36) } else { jsx$6 = false }; let jsx$5; if (jsx$6) { const index$5 = pos; jsx$5 = ((65535 & (fqn.charCodeAt(index$5) | 0)) !== 46) } else { jsx$5 = false }; if (jsx$5) { pos = (((-1) + pos) | 0) } else { break } }; const partStart = ((1 + pos) | 0); if (((pos === lastNonDigit) && (partEnd !== (fqn.length | 0)))) { return result }; while (true) { let jsx$7; if ((pos !== (-1))) { const index$6 = pos; jsx$7 = ((65535 & (fqn.charCodeAt(index$6) | 0)) === 36) } else { jsx$7 = false }; if (jsx$7) { pos = (((-1) + pos) | 0) } else { break } }; let atEnd; if ((pos === (-1))) { atEnd = true } else { const index$7 = pos; atEnd = ((65535 & (fqn.charCodeAt(index$7) | 0)) === 46) }; if ((atEnd || (!$f_sc_TraversableLike__isPartLikelySynthetic$1__psc_TraversableLike__T__I__Z($thiz, fqn, partStart)))) { const part = fqn.substring(partStart, partEnd); const thiz = result; if ((thiz === null)) { throw new $c_jl_NullPointerException().init___() }; if ((thiz === "")) { result = part } else { result = ((("" + part) + new $c_jl_Character().init___C(46)) + result) }; if (atEnd) { return result } } } }); const $is_sc_TraversableLike = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_TraversableLike))) }); const $isArrayOf_sc_TraversableLike = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_TraversableLike))) }); class $c_sc_convert_Wrappers$MapWrapper$$anon$2 extends $c_ju_AbstractSet { constructor() { super(); this.$$outer$3 = null }; init___sc_convert_Wrappers$MapWrapper($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$3 = $$outer }; return this }; size__I() { return this.$$outer$3.size__I() }; } const $d_sc_convert_Wrappers$MapWrapper$$anon$2 = new $TypeData().initClass({ sc_convert_Wrappers$MapWrapper$$anon$2: 0 }, false, "scala.collection.convert.Wrappers$MapWrapper$$anon$2", { sc_convert_Wrappers$MapWrapper$$anon$2: 1, ju_AbstractSet: 1, ju_AbstractCollection: 1, O: 1, ju_Collection: 1, jl_Iterable: 1, ju_Set: 1 }); $c_sc_convert_Wrappers$MapWrapper$$anon$2.prototype.$classData = $d_sc_convert_Wrappers$MapWrapper$$anon$2; class $c_scg_SeqFactory extends $c_scg_GenSeqFactory { } class $c_sci_HashMap$HashMapBuilder extends $c_scm_MapBuilder { init___() { $c_scm_MapBuilder.prototype.init___sc_GenMap.call(this, ($m_sci_HashMap$(), $m_sci_HashMap$EmptyHashMap$())); return this }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return this.$$plus$plus$eq__sc_TraversableOnce__sci_HashMap$HashMapBuilder(xs) }; $$plus$plus$eq__sc_TraversableOnce__sci_HashMap$HashMapBuilder(xs) { const jsx$1 = this.elems$1; const this$1 = $m_sci_HashMap$(); this.elems$1 = jsx$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(xs, this$1.ReusableCBF$4); return this }; } const $d_sci_HashMap$HashMapBuilder = new $TypeData().initClass({ sci_HashMap$HashMapBuilder: 0 }, false, "scala.collection.immutable.HashMap$HashMapBuilder", { sci_HashMap$HashMapBuilder: 1, scm_MapBuilder: 1, O: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1 }); $c_sci_HashMap$HashMapBuilder.prototype.$classData = $d_sci_HashMap$HashMapBuilder; class $c_sci_HashMap$HashTrieMap$$anon$5 extends $c_sci_TrieIterator { getElem__O__O(x) { return x.ensurePair__T2() }; init___sci_HashMap$HashTrieMap($$outer) { $c_sci_TrieIterator.prototype.init___Asci_Iterable.call(this, $$outer.elems$6); return this }; } const $d_sci_HashMap$HashTrieMap$$anon$5 = new $TypeData().initClass({ sci_HashMap$HashTrieMap$$anon$5: 0 }, false, "scala.collection.immutable.HashMap$HashTrieMap$$anon$5", { sci_HashMap$HashTrieMap$$anon$5: 1, sci_TrieIterator: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sci_HashMap$HashTrieMap$$anon$5.prototype.$classData = $d_sci_HashMap$HashTrieMap$$anon$5; class $c_sci_HashSet$$anon$1 extends $c_scm_SetBuilder { init___() { $c_scm_SetBuilder.prototype.init___sc_Set.call(this, ($m_sci_HashSet$(), $m_sci_HashSet$EmptyHashSet$())); return this }; $$plus$plus$eq__sc_TraversableOnce__sci_HashSet$$anon$1(xs) { this.elems$1 = this.elems$1.$$plus$plus__sc_GenTraversableOnce__sc_Set(xs); return this }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return this.$$plus$plus$eq__sc_TraversableOnce__sci_HashSet$$anon$1(xs) }; } const $d_sci_HashSet$$anon$1 = new $TypeData().initClass({ sci_HashSet$$anon$1: 0 }, false, "scala.collection.immutable.HashSet$$anon$1", { sci_HashSet$$anon$1: 1, scm_SetBuilder: 1, O: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1 }); $c_sci_HashSet$$anon$1.prototype.$classData = $d_sci_HashSet$$anon$1; class $c_sci_HashSet$HashTrieSet$$anon$2 extends $c_sci_TrieIterator { init___sci_HashSet$HashTrieSet($$outer) { $c_sci_TrieIterator.prototype.init___Asci_Iterable.call(this, $$outer.elems$5); return this }; getElem__O__O(cc) { return cc.key$6 }; } const $d_sci_HashSet$HashTrieSet$$anon$2 = new $TypeData().initClass({ sci_HashSet$HashTrieSet$$anon$2: 0 }, false, "scala.collection.immutable.HashSet$HashTrieSet$$anon$2", { sci_HashSet$HashTrieSet$$anon$2: 1, sci_TrieIterator: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1 }); $c_sci_HashSet$HashTrieSet$$anon$2.prototype.$classData = $d_sci_HashSet$HashTrieSet$$anon$2; class $c_sci_ListMap$ extends $c_scg_ImmutableMapFactory { constructor() { super(); this.ReusableCBF$4 = null }; init___() { $n_sci_ListMap$ = this; this.ReusableCBF$4 = new $c_scg_GenMapFactory$MapCanBuildFrom().init___scg_GenMapFactory(this); return this }; empty__sc_GenMap() { return $m_sci_ListMap$EmptyListMap$() }; } const $d_sci_ListMap$ = new $TypeData().initClass({ sci_ListMap$: 0 }, false, "scala.collection.immutable.ListMap$", { sci_ListMap$: 1, scg_ImmutableMapFactory: 1, scg_MapFactory: 1, scg_GenMapFactory: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_ListMap$.prototype.$classData = $d_sci_ListMap$; let $n_sci_ListMap$ = (void 0); const $m_sci_ListMap$ = (function() { if ((!$n_sci_ListMap$)) { $n_sci_ListMap$ = new $c_sci_ListMap$().init___() }; return $n_sci_ListMap$ }); class $c_sci_Set$ extends $c_scg_ImmutableSetFactory { constructor() { super(); this.ReusableCBF$5 = null }; init___() { $n_sci_Set$ = this; this.ReusableCBF$5 = new $c_scg_GenSetFactory$$anon$1().init___scg_GenSetFactory(this); return this }; emptyInstance__sci_Set() { return $m_sci_Set$EmptySet$() }; newBuilder__scm_Builder() { return new $c_sci_Set$$anon$1().init___() }; } const $d_sci_Set$ = new $TypeData().initClass({ sci_Set$: 0 }, false, "scala.collection.immutable.Set$", { sci_Set$: 1, scg_ImmutableSetFactory: 1, scg_SetFactory: 1, scg_GenSetFactory: 1, scg_GenericCompanion: 1, O: 1, scg_GenericSeqCompanion: 1 }); $c_sci_Set$.prototype.$classData = $d_sci_Set$; let $n_sci_Set$ = (void 0); const $m_sci_Set$ = (function() { if ((!$n_sci_Set$)) { $n_sci_Set$ = new $c_sci_Set$().init___() }; return $n_sci_Set$ }); class $c_sci_Set$$anon$1 extends $c_scm_SetBuilder { init___() { $c_scm_SetBuilder.prototype.init___sc_Set.call(this, ($m_sci_Set$(), $m_sci_Set$EmptySet$())); return this }; $$plus$plus$eq__sc_TraversableOnce__sci_Set$$anon$1(xs) { this.elems$1 = this.elems$1.$$plus$plus__sc_GenTraversableOnce__sc_Set(xs); return this }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return this.$$plus$plus$eq__sc_TraversableOnce__sci_Set$$anon$1(xs) }; } const $d_sci_Set$$anon$1 = new $TypeData().initClass({ sci_Set$$anon$1: 0 }, false, "scala.collection.immutable.Set$$anon$1", { sci_Set$$anon$1: 1, scm_SetBuilder: 1, O: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1 }); $c_sci_Set$$anon$1.prototype.$classData = $d_sci_Set$$anon$1; class $c_sci_Stream$StreamBuilder extends $c_scm_LazyBuilder { init___() { $c_scm_LazyBuilder.prototype.init___.call(this); return this }; result__O() { return this.result__sci_Stream() }; result__sci_Stream() { const this$1 = this.parts$1; return this$1.toList__sci_List().toStream__sci_Stream().flatMap__F1__scg_CanBuildFrom__O(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$5$2) { const x$5 = x$5$2; return x$5.toStream__sci_Stream() }) })(this)), $m_sci_Stream$().ReusableCBF$5) }; } const $isArrayOf_sci_Stream$StreamBuilder = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Stream$StreamBuilder))) }); const $d_sci_Stream$StreamBuilder = new $TypeData().initClass({ sci_Stream$StreamBuilder: 0 }, false, "scala.collection.immutable.Stream$StreamBuilder", { sci_Stream$StreamBuilder: 1, scm_LazyBuilder: 1, O: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1 }); $c_sci_Stream$StreamBuilder.prototype.$classData = $d_sci_Stream$StreamBuilder; class $c_sci_VectorBuilder extends $c_O { constructor() { super(); this.blockIndex$1 = 0; this.lo$1 = 0; this.depth$1 = 0; this.display0$1 = null; this.display1$1 = null; this.display2$1 = null; this.display3$1 = null; this.display4$1 = null; this.display5$1 = null }; display3__AO() { return this.display3$1 }; init___() { this.display0$1 = $newArrayObject($d_O.getArrayOf(), [32]); this.depth$1 = 1; this.blockIndex$1 = 0; this.lo$1 = 0; return this }; depth__I() { return this.depth$1 }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__O__sci_VectorBuilder(elem) }; display5$und$eq__AO__V(x$1) { this.display5$1 = x$1 }; display0__AO() { return this.display0$1 }; display2$und$eq__AO__V(x$1) { this.display2$1 = x$1 }; display4__AO() { return this.display4$1 }; $$plus$eq__O__sci_VectorBuilder(elem) { if ((this.lo$1 >= this.display0$1.u.length)) { const newBlockIndex = ((32 + this.blockIndex$1) | 0); const xor = (this.blockIndex$1 ^ newBlockIndex); $f_sci_VectorPointer__gotoNextBlockStartWritable__I__I__V(this, newBlockIndex, xor); this.blockIndex$1 = newBlockIndex; this.lo$1 = 0 }; this.display0$1.u[this.lo$1] = elem; this.lo$1 = ((1 + this.lo$1) | 0); return this }; result__O() { return this.result__sci_Vector() }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; display1$und$eq__AO__V(x$1) { this.display1$1 = x$1 }; display4$und$eq__AO__V(x$1) { this.display4$1 = x$1 }; display1__AO() { return this.display1$1 }; display5__AO() { return this.display5$1 }; result__sci_Vector() { const size = ((this.blockIndex$1 + this.lo$1) | 0); if ((size === 0)) { const this$1 = $m_sci_Vector$(); return this$1.NIL$6 }; const s = new $c_sci_Vector().init___I__I__I(0, size, 0); const depth = this.depth$1; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s, this, depth); if ((this.depth$1 > 1)) { const xor = (((-1) + size) | 0); $f_sci_VectorPointer__gotoPos__I__I__V(s, 0, xor) }; return s }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__O__sci_VectorBuilder(elem) }; sizeHint__I__V(size) { /**/ }; depth$und$eq__I__V(x$1) { this.depth$1 = x$1 }; display2__AO() { return this.display2$1 }; display0$und$eq__AO__V(x$1) { this.display0$1 = x$1 }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) }; display3$und$eq__AO__V(x$1) { this.display3$1 = x$1 }; } const $isArrayOf_sci_VectorBuilder = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_VectorBuilder))) }); const $d_sci_VectorBuilder = new $TypeData().initClass({ sci_VectorBuilder: 0 }, false, "scala.collection.immutable.VectorBuilder", { sci_VectorBuilder: 1, O: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1, sci_VectorPointer: 1 }); $c_sci_VectorBuilder.prototype.$classData = $d_sci_VectorBuilder; class $c_sci_VectorIterator extends $c_sc_AbstractIterator { constructor() { super(); this.endIndex$2 = 0; this.blockIndex$2 = 0; this.lo$2 = 0; this.endLo$2 = 0; this.$$undhasNext$2 = false; this.depth$2 = 0; this.display0$2 = null; this.display1$2 = null; this.display2$2 = null; this.display3$2 = null; this.display4$2 = null; this.display5$2 = null }; next__O() { if ((!this.$$undhasNext$2)) { throw new $c_ju_NoSuchElementException().init___T("reached iterator end") }; const res = this.display0$2.u[this.lo$2]; this.lo$2 = ((1 + this.lo$2) | 0); if ((this.lo$2 === this.endLo$2)) { if ((((this.blockIndex$2 + this.lo$2) | 0) < this.endIndex$2)) { const newBlockIndex = ((32 + this.blockIndex$2) | 0); const xor = (this.blockIndex$2 ^ newBlockIndex); $f_sci_VectorPointer__gotoNextBlockStart__I__I__V(this, newBlockIndex, xor); this.blockIndex$2 = newBlockIndex; const x = ((this.endIndex$2 - this.blockIndex$2) | 0); this.endLo$2 = ((x < 32) ? x : 32); this.lo$2 = 0 } else { this.$$undhasNext$2 = false } }; return res }; display3__AO() { return this.display3$2 }; depth__I() { return this.depth$2 }; display5$und$eq__AO__V(x$1) { this.display5$2 = x$1 }; init___I__I(_startIndex, endIndex) { this.endIndex$2 = endIndex; this.blockIndex$2 = ((-32) & _startIndex); this.lo$2 = (31 & _startIndex); const x = ((endIndex - this.blockIndex$2) | 0); this.endLo$2 = ((x < 32) ? x : 32); this.$$undhasNext$2 = (((this.blockIndex$2 + this.lo$2) | 0) < endIndex); return this }; display0__AO() { return this.display0$2 }; display2$und$eq__AO__V(x$1) { this.display2$2 = x$1 }; display4__AO() { return this.display4$2 }; display1$und$eq__AO__V(x$1) { this.display1$2 = x$1 }; hasNext__Z() { return this.$$undhasNext$2 }; display4$und$eq__AO__V(x$1) { this.display4$2 = x$1 }; display1__AO() { return this.display1$2 }; display5__AO() { return this.display5$2 }; depth$und$eq__I__V(x$1) { this.depth$2 = x$1 }; display2__AO() { return this.display2$2 }; display0$und$eq__AO__V(x$1) { this.display0$2 = x$1 }; display3$und$eq__AO__V(x$1) { this.display3$2 = x$1 }; } const $d_sci_VectorIterator = new $TypeData().initClass({ sci_VectorIterator: 0 }, false, "scala.collection.immutable.VectorIterator", { sci_VectorIterator: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sci_VectorPointer: 1 }); $c_sci_VectorIterator.prototype.$classData = $d_sci_VectorIterator; class $c_scm_HashMap$ extends $c_scg_MutableMapFactory { constructor() { super(); this.ReusableCBF$4 = null }; init___() { $n_scm_HashMap$ = this; this.ReusableCBF$4 = new $c_scg_GenMapFactory$MapCanBuildFrom().init___scg_GenMapFactory(this); return this }; empty__sc_Map() { return new $c_scm_HashMap().init___() }; empty__sc_GenMap() { return new $c_scm_HashMap().init___() }; } const $d_scm_HashMap$ = new $TypeData().initClass({ scm_HashMap$: 0 }, false, "scala.collection.mutable.HashMap$", { scm_HashMap$: 1, scg_MutableMapFactory: 1, scg_MapFactory: 1, scg_GenMapFactory: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_HashMap$.prototype.$classData = $d_scm_HashMap$; let $n_scm_HashMap$ = (void 0); const $m_scm_HashMap$ = (function() { if ((!$n_scm_HashMap$)) { $n_scm_HashMap$ = new $c_scm_HashMap$().init___() }; return $n_scm_HashMap$ }); class $c_scm_Set$ extends $c_scg_MutableSetFactory { constructor() { super(); this.ReusableCBF$5 = null }; init___() { $n_scm_Set$ = this; this.ReusableCBF$5 = new $c_scg_GenSetFactory$$anon$1().init___scg_GenSetFactory(this); return this }; empty__sc_GenTraversable() { $m_scm_HashSet$(); return new $c_scm_HashSet().init___() }; } const $d_scm_Set$ = new $TypeData().initClass({ scm_Set$: 0 }, false, "scala.collection.mutable.Set$", { scm_Set$: 1, scg_MutableSetFactory: 1, scg_SetFactory: 1, scg_GenSetFactory: 1, scg_GenericCompanion: 1, O: 1, scg_GenericSeqCompanion: 1 }); $c_scm_Set$.prototype.$classData = $d_scm_Set$; let $n_scm_Set$ = (void 0); const $m_scm_Set$ = (function() { if ((!$n_scm_Set$)) { $n_scm_Set$ = new $c_scm_Set$().init___() }; return $n_scm_Set$ }); class $c_sr_NonLocalReturnControl$mcI$sp extends $c_sr_NonLocalReturnControl { constructor() { super(); this.value$mcI$sp$f = 0 }; value__O() { return this.value$mcI$sp$f }; init___O__I(key, value$mcI$sp) { this.value$mcI$sp$f = value$mcI$sp; $c_sr_NonLocalReturnControl.prototype.init___O__O.call(this, key, null); return this }; value$mcI$sp__I() { return this.value$mcI$sp$f }; } const $d_sr_NonLocalReturnControl$mcI$sp = new $TypeData().initClass({ sr_NonLocalReturnControl$mcI$sp: 0 }, false, "scala.runtime.NonLocalReturnControl$mcI$sp", { sr_NonLocalReturnControl$mcI$sp: 1, sr_NonLocalReturnControl: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1, s_util_control_ControlThrowable: 1, s_util_control_NoStackTrace: 1 }); $c_sr_NonLocalReturnControl$mcI$sp.prototype.$classData = $d_sr_NonLocalReturnControl$mcI$sp; class $c_sr_NonLocalReturnControl$mcV$sp extends $c_sr_NonLocalReturnControl { constructor() { super(); this.value$mcV$sp$f = null }; value__O() { return (void 0) }; value$mcV$sp__V() { /**/ }; init___O__sr_BoxedUnit(key, value$mcV$sp) { this.value$mcV$sp$f = value$mcV$sp; $c_sr_NonLocalReturnControl.prototype.init___O__O.call(this, key, (void 0)); return this }; } const $d_sr_NonLocalReturnControl$mcV$sp = new $TypeData().initClass({ sr_NonLocalReturnControl$mcV$sp: 0 }, false, "scala.runtime.NonLocalReturnControl$mcV$sp", { sr_NonLocalReturnControl$mcV$sp: 1, sr_NonLocalReturnControl: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1, s_util_control_ControlThrowable: 1, s_util_control_NoStackTrace: 1 }); $c_sr_NonLocalReturnControl$mcV$sp.prototype.$classData = $d_sr_NonLocalReturnControl$mcV$sp; class $c_sr_NonLocalReturnControl$mcZ$sp extends $c_sr_NonLocalReturnControl { constructor() { super(); this.value$mcZ$sp$f = false }; value__O() { return this.value$mcZ$sp$f }; init___O__Z(key, value$mcZ$sp) { this.value$mcZ$sp$f = value$mcZ$sp; $c_sr_NonLocalReturnControl.prototype.init___O__O.call(this, key, null); return this }; value$mcZ$sp__Z() { return this.value$mcZ$sp$f }; } const $d_sr_NonLocalReturnControl$mcZ$sp = new $TypeData().initClass({ sr_NonLocalReturnControl$mcZ$sp: 0 }, false, "scala.runtime.NonLocalReturnControl$mcZ$sp", { sr_NonLocalReturnControl$mcZ$sp: 1, sr_NonLocalReturnControl: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1, s_util_control_ControlThrowable: 1, s_util_control_NoStackTrace: 1 }); $c_sr_NonLocalReturnControl$mcZ$sp.prototype.$classData = $d_sr_NonLocalReturnControl$mcZ$sp; class $c_Lfastparse_core_ParseError extends $c_jl_Exception { constructor() { super(); this.failure$3 = null }; productPrefix__T() { return "ParseError" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_core_ParseError)) { const ParseError$1 = x$1; const x = this.failure$3; const x$2 = ParseError$1.failure$3; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.failure$3; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___Lfastparse_core_Parsed$Failure(failure) { this.failure$3 = failure; const jsx$2 = failure.extra$1.input$1.repr$2; const jsx$1 = failure.extra$1.input$1; const this$1 = failure.extra$1.traced__Lfastparse_core_Parsed$TracedFailure(); const s = jsx$2.errorMessage__Lfastparse_utils_ParserInput__T__I__T(jsx$1, this$1.expected0__p1__Lfastparse_core_Precedence().toString__T(), failure.index$1); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_core_ParseError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_core_ParseError))) }); const $d_Lfastparse_core_ParseError = new $TypeData().initClass({ Lfastparse_core_ParseError: 0 }, false, "fastparse.core.ParseError", { Lfastparse_core_ParseError: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1 }); $c_Lfastparse_core_ParseError.prototype.$classData = $d_Lfastparse_core_ParseError; class $c_Lfastparse_utils_IndexedParserInput extends $c_Lfastparse_utils_ParserInput { constructor() { super(); this.data$2 = null; this.repr$2 = null }; productPrefix__T() { return "IndexedParserInput" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_utils_IndexedParserInput)) { const IndexedParserInput$1 = x$1; return $m_sr_BoxesRunTime$().equals__O__O__Z(this.data$2, IndexedParserInput$1.data$2) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.data$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; isReachable__I__Z(index) { const value = this.data$2; const input = value; return (index < (input.length | 0)) }; init___O__Lfastparse_utils_ReprOps(data, repr) { this.data$2 = data; this.repr$2 = repr; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_utils_IndexedParserInput = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_utils_IndexedParserInput))) }); const $d_Lfastparse_utils_IndexedParserInput = new $TypeData().initClass({ Lfastparse_utils_IndexedParserInput: 0 }, false, "fastparse.utils.IndexedParserInput", { Lfastparse_utils_IndexedParserInput: 1, Lfastparse_utils_ParserInput: 1, O: 1, Lfastparse_utils_Utils$IsReachable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_utils_IndexedParserInput.prototype.$classData = $d_Lfastparse_utils_IndexedParserInput; class $c_Lio_kaitai_struct_datatype_BigEndian$ extends $c_Lio_kaitai_struct_datatype_FixedEndian { init___() { return this }; productPrefix__T() { return "BigEndian" }; toSuffix__T() { return "be" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "BigEndian" }; hashCode__I() { return (-1717738341) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_BigEndian$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_BigEndian$: 0 }, false, "io.kaitai.struct.datatype.BigEndian$", { Lio_kaitai_struct_datatype_BigEndian$: 1, Lio_kaitai_struct_datatype_FixedEndian: 1, O: 1, Lio_kaitai_struct_datatype_Endianness: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_BigEndian$.prototype.$classData = $d_Lio_kaitai_struct_datatype_BigEndian$; let $n_Lio_kaitai_struct_datatype_BigEndian$ = (void 0); const $m_Lio_kaitai_struct_datatype_BigEndian$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_BigEndian$)) { $n_Lio_kaitai_struct_datatype_BigEndian$ = new $c_Lio_kaitai_struct_datatype_BigEndian$().init___() }; return $n_Lio_kaitai_struct_datatype_BigEndian$ }); class $c_Lio_kaitai_struct_datatype_DataType$BitsType1 extends $c_Lio_kaitai_struct_datatype_DataType$BooleanType { constructor() { super(); this.bitEndian$2 = null }; productPrefix__T() { return "BitsType1" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const BitsType1$1 = x$1; const x = this.bitEndian$2; const x$2 = BitsType1$1.bitEndian$2; return (x === x$2) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.bitEndian$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_datatype_BitEndianness(bitEndian) { this.bitEndian$2 = bitEndian; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$BitsType1 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$BitsType1))) }); const $d_Lio_kaitai_struct_datatype_DataType$BitsType1 = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$BitsType1: 0 }, false, "io.kaitai.struct.datatype.DataType$BitsType1", { Lio_kaitai_struct_datatype_DataType$BitsType1: 1, Lio_kaitai_struct_datatype_DataType$BooleanType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$BitsType1.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$BitsType1; class $c_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$ extends $c_Lio_kaitai_struct_datatype_DataType$BooleanType { init___() { return this }; productPrefix__T() { return "CalcBooleanType" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "CalcBooleanType" }; hashCode__I() { return (-1468356147) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$CalcBooleanType$: 0 }, false, "io.kaitai.struct.datatype.DataType$CalcBooleanType$", { Lio_kaitai_struct_datatype_DataType$CalcBooleanType$: 1, Lio_kaitai_struct_datatype_DataType$BooleanType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$; let $n_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$)) { $n_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$ = new $c_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$CalcBooleanType$ }); class $c_Lio_kaitai_struct_datatype_DataType$CalcStrType$ extends $c_Lio_kaitai_struct_datatype_DataType$StrType { init___() { return this }; productPrefix__T() { return "CalcStrType" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "CalcStrType" }; hashCode__I() { return 866626774 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$CalcStrType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$CalcStrType$: 0 }, false, "io.kaitai.struct.datatype.DataType$CalcStrType$", { Lio_kaitai_struct_datatype_DataType$CalcStrType$: 1, Lio_kaitai_struct_datatype_DataType$StrType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$CalcStrType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$CalcStrType$; let $n_Lio_kaitai_struct_datatype_DataType$CalcStrType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$CalcStrType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$CalcStrType$)) { $n_Lio_kaitai_struct_datatype_DataType$CalcStrType$ = new $c_Lio_kaitai_struct_datatype_DataType$CalcStrType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$CalcStrType$ }); class $c_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$ extends $c_Lio_kaitai_struct_datatype_DataType$ComplexDataType { init___() { return this }; productPrefix__T() { return "KaitaiStreamType" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "KaitaiStreamType" }; isOwning__Z() { return false }; hashCode__I() { return 82727107 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$: 0 }, false, "io.kaitai.struct.datatype.DataType$KaitaiStreamType$", { Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$; let $n_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$)) { $n_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$ = new $c_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$ }); class $c_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$ extends $c_Lio_kaitai_struct_datatype_DataType$ComplexDataType { init___() { return this }; productPrefix__T() { return "OwnedKaitaiStreamType" }; productArity__I() { return 0 }; asNonOwning__Lio_kaitai_struct_datatype_DataType() { return $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$() }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "OwnedKaitaiStreamType" }; isOwning__Z() { return true }; hashCode__I() { return 58435912 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$: 0 }, false, "io.kaitai.struct.datatype.DataType$OwnedKaitaiStreamType$", { Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$; let $n_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$)) { $n_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$ = new $c_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$ }); class $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType extends $c_Lio_kaitai_struct_datatype_DataType$StrType { constructor() { super(); this.bytes$2 = null; this.encoding$2 = null }; productPrefix__T() { return "StrFromBytesType" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType)) { const StrFromBytesType$1 = x$1; const x = this.bytes$2; const x$2 = StrFromBytesType$1.bytes$2; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { return (this.encoding$2 === StrFromBytesType$1.encoding$2) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.bytes$2; break } case 1: { return this.encoding$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_datatype_DataType$BytesType__T(bytes, encoding) { this.bytes$2 = bytes; this.encoding$2 = encoding; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$StrFromBytesType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$StrFromBytesType))) }); const $d_Lio_kaitai_struct_datatype_DataType$StrFromBytesType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$StrFromBytesType: 0 }, false, "io.kaitai.struct.datatype.DataType$StrFromBytesType", { Lio_kaitai_struct_datatype_DataType$StrFromBytesType: 1, Lio_kaitai_struct_datatype_DataType$StrType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$StrFromBytesType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$StrFromBytesType; class $c_Lio_kaitai_struct_datatype_DataType$SwitchType extends $c_Lio_kaitai_struct_datatype_DataType$ComplexDataType { constructor() { super(); this.on$2 = null; this.cases$2 = null; this.isOwning$2 = false }; init___Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__Z(on, cases, isOwning) { this.on$2 = on; this.cases$2 = cases; this.isOwning$2 = isOwning; return this }; productPrefix__T() { return "SwitchType" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const SwitchType$1 = x$1; const x = this.on$2; const x$2 = SwitchType$1.on$2; let jsx$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.cases$2; const x$4 = SwitchType$1.cases$2; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (jsx$1) { return (this.isOwning$2 === SwitchType$1.isOwning$2) } else { return false } } else { return false } }; asNonOwning__Lio_kaitai_struct_datatype_DataType() { return new $c_Lio_kaitai_struct_datatype_DataType$SwitchType().init___Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__Z(this.on$2, this.cases$2, false) }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.on$2; break } case 1: { return this.cases$2; break } case 2: { return this.isOwning$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; isNullable__Z() { return (!this.cases$2.contains__O__Z($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1)) }; isOwning__Z() { return this.isOwning$2 }; isNullableSwitchRaw__Z() { const elseCase = this.cases$2.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); let rc8 = false; let x2 = null; if ((elseCase instanceof $c_s_Some)) { rc8 = true; x2 = elseCase; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { return true } }; if (rc8) { return false }; const x = $m_s_None$(); if ((x === elseCase)) { return true }; throw new $c_s_MatchError().init___O(elseCase) }; combinedType__Lio_kaitai_struct_datatype_DataType() { return $m_Lio_kaitai_struct_translators_TypeDetector$().combineTypes__sc_Iterable__Lio_kaitai_struct_datatype_DataType(this.cases$2.values__sc_Iterable()) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.on$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.cases$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.isOwning$2 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 3) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; hasSize__Z() { return this.cases$2.values__sc_Iterable().exists__F1__Z(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(t$2) { const t = t$2; return ((t instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes) || (t instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) }) })(this))) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$SwitchType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$SwitchType))) }); const $d_Lio_kaitai_struct_datatype_DataType$SwitchType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$SwitchType: 0 }, false, "io.kaitai.struct.datatype.DataType$SwitchType", { Lio_kaitai_struct_datatype_DataType$SwitchType: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$SwitchType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$SwitchType; class $c_Lio_kaitai_struct_datatype_LittleEndian$ extends $c_Lio_kaitai_struct_datatype_FixedEndian { init___() { return this }; productPrefix__T() { return "LittleEndian" }; toSuffix__T() { return "le" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "LittleEndian" }; hashCode__I() { return 1755565649 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_LittleEndian$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_LittleEndian$: 0 }, false, "io.kaitai.struct.datatype.LittleEndian$", { Lio_kaitai_struct_datatype_LittleEndian$: 1, Lio_kaitai_struct_datatype_FixedEndian: 1, O: 1, Lio_kaitai_struct_datatype_Endianness: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_LittleEndian$.prototype.$classData = $d_Lio_kaitai_struct_datatype_LittleEndian$; let $n_Lio_kaitai_struct_datatype_LittleEndian$ = (void 0); const $m_Lio_kaitai_struct_datatype_LittleEndian$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_LittleEndian$)) { $n_Lio_kaitai_struct_datatype_LittleEndian$ = new $c_Lio_kaitai_struct_datatype_LittleEndian$().init___() }; return $n_Lio_kaitai_struct_datatype_LittleEndian$ }); class $c_Lio_kaitai_struct_datatype_ValidationExprError extends $c_Lio_kaitai_struct_datatype_ValidationError { productPrefix__T() { return "ValidationExprError" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_ValidationExprError)) { const ValidationExprError$1 = x$1; const x = this.dt$1; const x$2 = ValidationExprError$1.dt$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.dt$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; name__T() { return "ValidationExprError" }; init___Lio_kaitai_struct_datatype_DataType(_dt) { $c_Lio_kaitai_struct_datatype_ValidationError.prototype.init___Lio_kaitai_struct_datatype_DataType.call(this, _dt); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_ValidationExprError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_ValidationExprError))) }); const $d_Lio_kaitai_struct_datatype_ValidationExprError = new $TypeData().initClass({ Lio_kaitai_struct_datatype_ValidationExprError: 0 }, false, "io.kaitai.struct.datatype.ValidationExprError", { Lio_kaitai_struct_datatype_ValidationExprError: 1, Lio_kaitai_struct_datatype_ValidationError: 1, O: 1, Lio_kaitai_struct_datatype_KSError: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_ValidationExprError.prototype.$classData = $d_Lio_kaitai_struct_datatype_ValidationExprError; class $c_Lio_kaitai_struct_datatype_ValidationGreaterThanError extends $c_Lio_kaitai_struct_datatype_ValidationError { productPrefix__T() { return "ValidationGreaterThanError" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_ValidationGreaterThanError)) { const ValidationGreaterThanError$1 = x$1; const x = this.dt$1; const x$2 = ValidationGreaterThanError$1.dt$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.dt$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; name__T() { return "ValidationGreaterThanError" }; init___Lio_kaitai_struct_datatype_DataType(_dt) { $c_Lio_kaitai_struct_datatype_ValidationError.prototype.init___Lio_kaitai_struct_datatype_DataType.call(this, _dt); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_ValidationGreaterThanError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_ValidationGreaterThanError))) }); const $d_Lio_kaitai_struct_datatype_ValidationGreaterThanError = new $TypeData().initClass({ Lio_kaitai_struct_datatype_ValidationGreaterThanError: 0 }, false, "io.kaitai.struct.datatype.ValidationGreaterThanError", { Lio_kaitai_struct_datatype_ValidationGreaterThanError: 1, Lio_kaitai_struct_datatype_ValidationError: 1, O: 1, Lio_kaitai_struct_datatype_KSError: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_ValidationGreaterThanError.prototype.$classData = $d_Lio_kaitai_struct_datatype_ValidationGreaterThanError; class $c_Lio_kaitai_struct_datatype_ValidationLessThanError extends $c_Lio_kaitai_struct_datatype_ValidationError { productPrefix__T() { return "ValidationLessThanError" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_ValidationLessThanError)) { const ValidationLessThanError$1 = x$1; const x = this.dt$1; const x$2 = ValidationLessThanError$1.dt$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.dt$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; name__T() { return "ValidationLessThanError" }; init___Lio_kaitai_struct_datatype_DataType(_dt) { $c_Lio_kaitai_struct_datatype_ValidationError.prototype.init___Lio_kaitai_struct_datatype_DataType.call(this, _dt); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_ValidationLessThanError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_ValidationLessThanError))) }); const $d_Lio_kaitai_struct_datatype_ValidationLessThanError = new $TypeData().initClass({ Lio_kaitai_struct_datatype_ValidationLessThanError: 0 }, false, "io.kaitai.struct.datatype.ValidationLessThanError", { Lio_kaitai_struct_datatype_ValidationLessThanError: 1, Lio_kaitai_struct_datatype_ValidationError: 1, O: 1, Lio_kaitai_struct_datatype_KSError: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_ValidationLessThanError.prototype.$classData = $d_Lio_kaitai_struct_datatype_ValidationLessThanError; class $c_Lio_kaitai_struct_datatype_ValidationNotAnyOfError extends $c_Lio_kaitai_struct_datatype_ValidationError { productPrefix__T() { return "ValidationNotAnyOfError" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_ValidationNotAnyOfError)) { const ValidationNotAnyOfError$1 = x$1; const x = this.dt$1; const x$2 = ValidationNotAnyOfError$1.dt$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.dt$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; name__T() { return "ValidationNotAnyOfError" }; init___Lio_kaitai_struct_datatype_DataType(_dt) { $c_Lio_kaitai_struct_datatype_ValidationError.prototype.init___Lio_kaitai_struct_datatype_DataType.call(this, _dt); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_ValidationNotAnyOfError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_ValidationNotAnyOfError))) }); const $d_Lio_kaitai_struct_datatype_ValidationNotAnyOfError = new $TypeData().initClass({ Lio_kaitai_struct_datatype_ValidationNotAnyOfError: 0 }, false, "io.kaitai.struct.datatype.ValidationNotAnyOfError", { Lio_kaitai_struct_datatype_ValidationNotAnyOfError: 1, Lio_kaitai_struct_datatype_ValidationError: 1, O: 1, Lio_kaitai_struct_datatype_KSError: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_ValidationNotAnyOfError.prototype.$classData = $d_Lio_kaitai_struct_datatype_ValidationNotAnyOfError; class $c_Lio_kaitai_struct_datatype_ValidationNotEqualError extends $c_Lio_kaitai_struct_datatype_ValidationError { productPrefix__T() { return "ValidationNotEqualError" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_ValidationNotEqualError)) { const ValidationNotEqualError$1 = x$1; const x = this.dt$1; const x$2 = ValidationNotEqualError$1.dt$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.dt$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; name__T() { return "ValidationNotEqualError" }; init___Lio_kaitai_struct_datatype_DataType(_dt) { $c_Lio_kaitai_struct_datatype_ValidationError.prototype.init___Lio_kaitai_struct_datatype_DataType.call(this, _dt); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_ValidationNotEqualError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_ValidationNotEqualError))) }); const $d_Lio_kaitai_struct_datatype_ValidationNotEqualError = new $TypeData().initClass({ Lio_kaitai_struct_datatype_ValidationNotEqualError: 0 }, false, "io.kaitai.struct.datatype.ValidationNotEqualError", { Lio_kaitai_struct_datatype_ValidationNotEqualError: 1, Lio_kaitai_struct_datatype_ValidationError: 1, O: 1, Lio_kaitai_struct_datatype_KSError: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_ValidationNotEqualError.prototype.$classData = $d_Lio_kaitai_struct_datatype_ValidationNotEqualError; class $c_Lio_kaitai_struct_format_ClassSpec extends $c_O { constructor() { super(); this.fileName$1 = null; this.path$1 = null; this.isTopLevel$1 = false; this.meta$1 = null; this.doc$1 = null; this.toStringExpr$1 = null; this.params$1 = null; this.seq$1 = null; this.types$1 = null; this.instances$1 = null; this.enums$1 = null; this.parentClass$1 = null; this.name$1 = null; this.upClass$1 = null; this.seqSize$1 = null }; init___s_Option__sci_List__Z__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_DocSpec__s_Option__sci_List__sci_List__sci_Map__sci_Map__sci_Map(fileName, path, isTopLevel, meta, doc, toStringExpr, params, seq, types, instances, enums) { this.fileName$1 = fileName; this.path$1 = path; this.isTopLevel$1 = isTopLevel; this.meta$1 = meta; this.doc$1 = doc; this.toStringExpr$1 = toStringExpr; this.params$1 = params; this.seq$1 = seq; this.types$1 = types; this.instances$1 = instances; this.enums$1 = enums; this.parentClass$1 = $m_Lio_kaitai_struct_format_UnknownClassSpec$(); this.name$1 = $m_sci_Nil$(); this.upClass$1 = $m_s_None$(); this.seqSize$1 = $m_Lio_kaitai_struct_format_NotCalculatedSized$(); return this }; productPrefix__T() { return "ClassSpec" }; productArity__I() { return 11 }; equals__O__Z(obj) { if ((obj instanceof $c_Lio_kaitai_struct_format_ClassSpec)) { const x2 = obj; const x = this.path$1; const x$2 = x2.path$1; let jsx$7; if ((((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) && (this.isTopLevel$1 === x2.isTopLevel$1))) { const x$3 = this.meta$1; const x$4 = x2.meta$1; jsx$7 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$7 = false }; let jsx$6; if (jsx$7) { const x$5 = this.doc$1; const x$6 = x2.doc$1; jsx$6 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$6 = false }; let jsx$5; if (jsx$6) { const x$7 = this.params$1; const x$8 = x2.params$1; jsx$5 = ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { jsx$5 = false }; let jsx$4; if (jsx$5) { const x$9 = this.seq$1; const x$10 = x2.seq$1; jsx$4 = ((x$9 === null) ? (x$10 === null) : x$9.equals__O__Z(x$10)) } else { jsx$4 = false }; let jsx$3; if (jsx$4) { const x$11 = this.types$1; const x$12 = x2.types$1; jsx$3 = ((x$11 === null) ? (x$12 === null) : x$11.equals__O__Z(x$12)) } else { jsx$3 = false }; let jsx$2; if (jsx$3) { const x$13 = this.instances$1; const x$14 = x2.instances$1; jsx$2 = ((x$13 === null) ? (x$14 === null) : x$13.equals__O__Z(x$14)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$15 = this.enums$1; const x$16 = x2.enums$1; jsx$1 = ((x$15 === null) ? (x$16 === null) : x$15.equals__O__Z(x$16)) } else { jsx$1 = false }; if (jsx$1) { const x$17 = this.name$1; const x$18 = x2.name$1; return ((x$17 === null) ? (x$18 === null) : x$17.equals__O__Z(x$18)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.fileName$1; break } case 1: { return this.path$1; break } case 2: { return this.isTopLevel$1; break } case 3: { return this.meta$1; break } case 4: { return this.doc$1; break } case 5: { return this.toStringExpr$1; break } case 6: { return this.params$1; break } case 7: { return this.seq$1; break } case 8: { return this.types$1; break } case 9: { return this.instances$1; break } case 10: { return this.enums$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; mapRec__F1__sc_Iterable(proc) { const r1 = proc.apply__O__O(this); const this$2 = this.types$1; const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, proc$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const typeSpec = x0$1.$$und2__O(); return typeSpec.mapRec__F1__sc_Iterable(proc$1) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, proc)); const this$1 = $m_sci_Iterable$(); const bf = this$1.ReusableCBFInstance$2; const r2 = $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this$2, f, bf); const this$3 = $m_sc_Iterable$(); return r1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(r2, this$3.ReusableCBFInstance$2) }; toDataType__Lio_kaitai_struct_datatype_DataType() { const cut = new $c_Lio_kaitai_struct_datatype_DataType$CalcUserType().init___sci_List__s_Option__sc_Seq(this.name$1, $m_s_None$(), $m_sc_Seq$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$())); cut.classSpec$3 = new $c_s_Some().init___O(this); return cut }; fileNameAsStr__T() { const this$1 = this.fileName$1; if (this$1.isEmpty__Z()) { const this$2 = this.name$1; return $f_sc_TraversableOnce__mkString__T__T__T__T(this$2, "", "::", "") } else { return this$1.get__O() } }; path__sci_List() { return this.path$1 }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.fileName$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.path$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.isTopLevel$1 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.meta$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.doc$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.toStringExpr$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.params$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.seq$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.types$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.instances$1)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.enums$1)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 11) }; forEachRec__F1__V(proc) { proc.apply__O__O(this); this.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, proc$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const typeSpec = x0$1.$$und2__O(); typeSpec.forEachRec__F1__V(proc$1) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, proc))) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_ClassSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ClassSpec))) }); const $d_Lio_kaitai_struct_format_ClassSpec = new $TypeData().initClass({ Lio_kaitai_struct_format_ClassSpec: 0 }, false, "io.kaitai.struct.format.ClassSpec", { Lio_kaitai_struct_format_ClassSpec: 1, O: 1, Lio_kaitai_struct_format_ClassSpecLike: 1, Lio_kaitai_struct_format_YAMLPath: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ClassSpec.prototype.$classData = $d_Lio_kaitai_struct_format_ClassSpec; class $c_Lio_kaitai_struct_format_EndianIdentifier$ extends $c_Lio_kaitai_struct_format_SpecialIdentifier { init___() { $c_Lio_kaitai_struct_format_SpecialIdentifier.prototype.init___T.call(this, $m_Lio_kaitai_struct_format_Identifier$().IS$undLE$1); return this }; } const $d_Lio_kaitai_struct_format_EndianIdentifier$ = new $TypeData().initClass({ Lio_kaitai_struct_format_EndianIdentifier$: 0 }, false, "io.kaitai.struct.format.EndianIdentifier$", { Lio_kaitai_struct_format_EndianIdentifier$: 1, Lio_kaitai_struct_format_SpecialIdentifier: 1, Lio_kaitai_struct_format_Identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_EndianIdentifier$.prototype.$classData = $d_Lio_kaitai_struct_format_EndianIdentifier$; let $n_Lio_kaitai_struct_format_EndianIdentifier$ = (void 0); const $m_Lio_kaitai_struct_format_EndianIdentifier$ = (function() { if ((!$n_Lio_kaitai_struct_format_EndianIdentifier$)) { $n_Lio_kaitai_struct_format_EndianIdentifier$ = new $c_Lio_kaitai_struct_format_EndianIdentifier$().init___() }; return $n_Lio_kaitai_struct_format_EndianIdentifier$ }); class $c_Lio_kaitai_struct_format_IoIdentifier$ extends $c_Lio_kaitai_struct_format_SpecialIdentifier { init___() { $c_Lio_kaitai_struct_format_SpecialIdentifier.prototype.init___T.call(this, $m_Lio_kaitai_struct_format_Identifier$().IO$1); return this }; } const $d_Lio_kaitai_struct_format_IoIdentifier$ = new $TypeData().initClass({ Lio_kaitai_struct_format_IoIdentifier$: 0 }, false, "io.kaitai.struct.format.IoIdentifier$", { Lio_kaitai_struct_format_IoIdentifier$: 1, Lio_kaitai_struct_format_SpecialIdentifier: 1, Lio_kaitai_struct_format_Identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_IoIdentifier$.prototype.$classData = $d_Lio_kaitai_struct_format_IoIdentifier$; let $n_Lio_kaitai_struct_format_IoIdentifier$ = (void 0); const $m_Lio_kaitai_struct_format_IoIdentifier$ = (function() { if ((!$n_Lio_kaitai_struct_format_IoIdentifier$)) { $n_Lio_kaitai_struct_format_IoIdentifier$ = new $c_Lio_kaitai_struct_format_IoIdentifier$().init___() }; return $n_Lio_kaitai_struct_format_IoIdentifier$ }); class $c_Lio_kaitai_struct_format_KSVersion extends $c_O { constructor() { super(); this.nums$1 = null }; productPrefix__T() { return "KSVersion" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_KSVersion)) { const KSVersion$1 = x$1; const x = this.nums$1; const x$2 = KSVersion$1.nums$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.nums$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { const this$1 = this.nums$1; return $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", ".", "") }; compare__O__I(that) { return this.compare__Lio_kaitai_struct_format_KSVersion__I(that) }; toInt__I() { const this$1 = this.nums$1; if (($f_sc_LinearSeqOptimized__length__I(this$1) > 3)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T((("C-style version int can have max 3 components, but " + this) + " is given"))) }; const jsx$2 = this.nums$1; $m_sci_List$(); const this$2 = this.nums$1; const n = ((3 - $f_sc_LinearSeqOptimized__length__I(this$2)) | 0); const b = new $c_scm_ListBuffer().init___(); let i = 0; while ((i < n)) { b.$$plus$eq__O__scm_ListBuffer(0); i = ((1 + i) | 0) }; const jsx$1 = b.toList__sci_List(); const this$4 = $m_sci_List$(); const nums2 = jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$4.ReusableCBFInstance$2); let acc = 0; let these = nums2; while ((!these.isEmpty__Z())) { const arg1 = acc; const arg2 = these.head__O(); const sum = (arg1 | 0); const comp = (arg2 | 0); if (((comp < 0) || (comp > 999))) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T((("C-style version int only allows components [0..999], but " + comp) + " was used"))) } else { acc = (($imul(1000, sum) + comp) | 0) }; these = these.tail__O() }; return (acc | 0) }; compare__Lio_kaitai_struct_format_KSVersion__I(that) { const nonLocalReturnKey1 = new $c_O().init___(); try { const this$2 = this.nums$1; const that$1 = that.nums$1; const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; const this$3 = $f_sc_IterableLike__zip__sc_GenIterable__scg_CanBuildFrom__O(this$2, that$1, bf); let these = this$3; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const x0$1 = arg1; if ((x0$1 !== null)) { const thisNum = x0$1.$$und1$mcI$sp__I(); const otherNum = x0$1.$$und2$mcI$sp__I(); if ((thisNum < otherNum)) { throw new $c_sr_NonLocalReturnControl$mcI$sp().init___O__I(nonLocalReturnKey1, (-1)) } else if ((thisNum > otherNum)) { throw new $c_sr_NonLocalReturnControl$mcI$sp().init___O__I(nonLocalReturnKey1, 1) } } else { throw new $c_s_MatchError().init___O(x0$1) }; const this$4 = these; these = this$4.tail__sci_List() }; const this$5 = this.nums$1; const x = $f_sc_LinearSeqOptimized__length__I(this$5); const this$7 = that.nums$1; const x$1 = $f_sc_LinearSeqOptimized__length__I(this$7); return ((x === x$1) ? 0 : ((x < x$1) ? (-1) : 1)) } catch (e) { if ((e instanceof $c_sr_NonLocalReturnControl)) { const ex = e; if ((ex.key$2 === nonLocalReturnKey1)) { return ex.value$mcI$sp__I() } else { throw ex } } else { throw e } } }; init___sci_List(nums) { this.nums$1 = nums; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; toPerlVersion__T() { const this$1 = this.nums$1; if (($f_sc_LinearSeqOptimized__length__I(this$1) > 3)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T((("C-style version int can have max 3 components, but " + this) + " is given"))) }; const this$2 = this.nums$1; let these = this$2; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const comp = (arg1 | 0); if (((comp < 0) || (comp > 999))) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T((("C-style version int only allows components [0..999], but " + comp) + " was used"))) }; const this$3 = these; these = this$3.tail__sci_List() }; const jsx$2 = this.nums$1; $m_sci_List$(); const this$4 = this.nums$1; const n = ((3 - $f_sc_LinearSeqOptimized__length__I(this$4)) | 0); const b = new $c_scm_ListBuffer().init___(); let i = 0; while ((i < n)) { b.$$plus$eq__O__scm_ListBuffer(0); i = ((1 + i) | 0) }; const jsx$1 = b.toList__sci_List(); const this$6 = $m_sci_List$(); const x1 = jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$6.ReusableCBFInstance$2); let x$1_$_$$und1$1; let x$1_$_$$und2$1; let x$1_$_$$und3$1; matchEnd9: { if ((x1 instanceof $c_sci_$colon$colon)) { const x2 = x1; const v1 = (x2.head$5 | 0); const p3 = x2.tl$5; if ((p3 instanceof $c_sci_$colon$colon)) { const x4 = p3; const v2 = (x4.head$5 | 0); const p5 = x4.tl$5; if ((p5 instanceof $c_sci_$colon$colon)) { const x6 = p5; const v3 = (x6.head$5 | 0); const jsx$3_$_$$und1$1 = v1; const jsx$3_$_$$und2$1 = v2; const jsx$3_$_$$und3$1 = v3; x$1_$_$$und1$1 = jsx$3_$_$$und1$1; x$1_$_$$und2$1 = jsx$3_$_$$und2$1; x$1_$_$$und3$1 = jsx$3_$_$$und3$1; break matchEnd9 } } }; throw new $c_s_MatchError().init___O(x1) }; const v1$2 = (x$1_$_$$und1$1 | 0); const v2$2 = (x$1_$_$$und2$1 | 0); const v3$2 = (x$1_$_$$und3$1 | 0); const this$10 = new $c_sci_StringOps().init___T("%d.%03d_%03d"); const array = [v1$2, v2$2, v3$2]; const jsx$5 = $m_sjsr_RuntimeString$(); const $$this = this$10.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1$1 = (array.length | 0); switch (x1$1) { case (-1): { break } }; let i$1 = 0; const len = (array.length | 0); while ((i$1 < len)) { const index = i$1; const arg1$1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$10, arg1$1); array$1.push(elem); i$1 = ((1 + i$1) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$2 = 0; let j = 0; const x = (array$1.length | 0); const x$2 = ((x < len$2) ? x : len$2); const that = result.u.length; const end = ((x$2 < that) ? x$2 : that); while ((i$2 < end)) { const jsx$4 = j; const index$1 = i$2; result.u[jsx$4] = array$1[index$1]; i$2 = ((1 + i$2) | 0); j = ((1 + j) | 0) }; return jsx$5.format__T__AO__T($$this, result) }; } const $isArrayOf_Lio_kaitai_struct_format_KSVersion = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_KSVersion))) }); const $d_Lio_kaitai_struct_format_KSVersion = new $TypeData().initClass({ Lio_kaitai_struct_format_KSVersion: 0 }, false, "io.kaitai.struct.format.KSVersion", { Lio_kaitai_struct_format_KSVersion: 1, O: 1, s_math_Ordered: 1, jl_Comparable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_KSVersion.prototype.$classData = $d_Lio_kaitai_struct_format_KSVersion; class $c_Lio_kaitai_struct_format_ParamDefSpec extends $c_O { constructor() { super(); this.path$1 = null; this.id$1 = null; this.dataType$1 = null; this.doc$1 = null }; productPrefix__T() { return "ParamDefSpec" }; productArity__I() { return 4 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ParamDefSpec)) { const ParamDefSpec$1 = x$1; const x = this.path$1; const x$2 = ParamDefSpec$1.path$1; let jsx$2; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.id$1; const x$4 = ParamDefSpec$1.id$1; jsx$2 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$5 = this.dataType$1; const x$6 = ParamDefSpec$1.dataType$1; jsx$1 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$1 = false }; if (jsx$1) { const x$7 = this.doc$1; const x$8 = ParamDefSpec$1.doc$1; return ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.path$1; break } case 1: { return this.id$1; break } case 2: { return this.dataType$1; break } case 3: { return this.doc$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; dataType__Lio_kaitai_struct_datatype_DataType() { return this.dataType$1 }; id__Lio_kaitai_struct_format_Identifier() { return this.id$1 }; isNullable__Z() { return false }; init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_DocSpec(path, id, dataType, doc) { this.path$1 = path; this.id$1 = id; this.dataType$1 = dataType; this.doc$1 = doc; return this }; isNullableSwitchRaw__Z() { return false }; path__sci_List() { return this.path$1 }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; doc__Lio_kaitai_struct_format_DocSpec() { return this.doc$1 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; dataTypeComposite__Lio_kaitai_struct_datatype_DataType() { return this.dataType$1 }; } const $isArrayOf_Lio_kaitai_struct_format_ParamDefSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ParamDefSpec))) }); const $d_Lio_kaitai_struct_format_ParamDefSpec = new $TypeData().initClass({ Lio_kaitai_struct_format_ParamDefSpec: 0 }, false, "io.kaitai.struct.format.ParamDefSpec", { Lio_kaitai_struct_format_ParamDefSpec: 1, O: 1, Lio_kaitai_struct_format_MemberSpec: 1, Lio_kaitai_struct_format_YAMLPath: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ParamDefSpec.prototype.$classData = $d_Lio_kaitai_struct_format_ParamDefSpec; class $c_Lio_kaitai_struct_format_ParentIdentifier$ extends $c_Lio_kaitai_struct_format_SpecialIdentifier { init___() { $c_Lio_kaitai_struct_format_SpecialIdentifier.prototype.init___T.call(this, $m_Lio_kaitai_struct_format_Identifier$().PARENT$1); return this }; } const $d_Lio_kaitai_struct_format_ParentIdentifier$ = new $TypeData().initClass({ Lio_kaitai_struct_format_ParentIdentifier$: 0 }, false, "io.kaitai.struct.format.ParentIdentifier$", { Lio_kaitai_struct_format_ParentIdentifier$: 1, Lio_kaitai_struct_format_SpecialIdentifier: 1, Lio_kaitai_struct_format_Identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ParentIdentifier$.prototype.$classData = $d_Lio_kaitai_struct_format_ParentIdentifier$; let $n_Lio_kaitai_struct_format_ParentIdentifier$ = (void 0); const $m_Lio_kaitai_struct_format_ParentIdentifier$ = (function() { if ((!$n_Lio_kaitai_struct_format_ParentIdentifier$)) { $n_Lio_kaitai_struct_format_ParentIdentifier$ = new $c_Lio_kaitai_struct_format_ParentIdentifier$().init___() }; return $n_Lio_kaitai_struct_format_ParentIdentifier$ }); class $c_Lio_kaitai_struct_format_RootIdentifier$ extends $c_Lio_kaitai_struct_format_SpecialIdentifier { init___() { $c_Lio_kaitai_struct_format_SpecialIdentifier.prototype.init___T.call(this, $m_Lio_kaitai_struct_format_Identifier$().ROOT$1); return this }; } const $d_Lio_kaitai_struct_format_RootIdentifier$ = new $TypeData().initClass({ Lio_kaitai_struct_format_RootIdentifier$: 0 }, false, "io.kaitai.struct.format.RootIdentifier$", { Lio_kaitai_struct_format_RootIdentifier$: 1, Lio_kaitai_struct_format_SpecialIdentifier: 1, Lio_kaitai_struct_format_Identifier: 1, O: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_RootIdentifier$.prototype.$classData = $d_Lio_kaitai_struct_format_RootIdentifier$; let $n_Lio_kaitai_struct_format_RootIdentifier$ = (void 0); const $m_Lio_kaitai_struct_format_RootIdentifier$ = (function() { if ((!$n_Lio_kaitai_struct_format_RootIdentifier$)) { $n_Lio_kaitai_struct_format_RootIdentifier$ = new $c_Lio_kaitai_struct_format_RootIdentifier$().init___() }; return $n_Lio_kaitai_struct_format_RootIdentifier$ }); class $c_Lio_kaitai_struct_precompile_EnumNotFoundError extends $c_Lio_kaitai_struct_precompile_NotFoundError { constructor() { super(); this.name$6 = null; this.curClass$6 = null }; init___T__Lio_kaitai_struct_format_ClassSpec(name, curClass) { this.name$6 = name; this.curClass$6 = curClass; const this$1 = curClass.name$1; const msg = ((("unable to find enum '" + name) + "', searching from ") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", "")); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, msg, null, true, true); return this }; } const $d_Lio_kaitai_struct_precompile_EnumNotFoundError = new $TypeData().initClass({ Lio_kaitai_struct_precompile_EnumNotFoundError: 0 }, false, "io.kaitai.struct.precompile.EnumNotFoundError", { Lio_kaitai_struct_precompile_EnumNotFoundError: 1, Lio_kaitai_struct_precompile_NotFoundError: 1, Lio_kaitai_struct_precompile_ExpressionError: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_precompile_EnumNotFoundError.prototype.$classData = $d_Lio_kaitai_struct_precompile_EnumNotFoundError; class $c_Lio_kaitai_struct_precompile_FieldNotFoundError extends $c_Lio_kaitai_struct_precompile_NotFoundError { constructor() { super(); this.name$6 = null; this.curClass$6 = null }; init___T__Lio_kaitai_struct_format_ClassSpec(name, curClass) { this.name$6 = name; this.curClass$6 = curClass; const this$1 = curClass.name$1; const msg = (((("unable to access '" + name) + "' in ") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", "")) + " context"); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, msg, null, true, true); return this }; } const $isArrayOf_Lio_kaitai_struct_precompile_FieldNotFoundError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_precompile_FieldNotFoundError))) }); const $d_Lio_kaitai_struct_precompile_FieldNotFoundError = new $TypeData().initClass({ Lio_kaitai_struct_precompile_FieldNotFoundError: 0 }, false, "io.kaitai.struct.precompile.FieldNotFoundError", { Lio_kaitai_struct_precompile_FieldNotFoundError: 1, Lio_kaitai_struct_precompile_NotFoundError: 1, Lio_kaitai_struct_precompile_ExpressionError: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_precompile_FieldNotFoundError.prototype.$classData = $d_Lio_kaitai_struct_precompile_FieldNotFoundError; class $c_Lio_kaitai_struct_precompile_MethodNotFoundError extends $c_Lio_kaitai_struct_precompile_NotFoundError { constructor() { super(); this.name$6 = null; this.dataType$6 = null }; init___T__Lio_kaitai_struct_datatype_DataType(name, dataType) { this.name$6 = name; this.dataType$6 = dataType; const msg = (((("don't know how to call method '" + name) + "' of object type '") + dataType) + "'"); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, msg, null, true, true); return this }; } const $d_Lio_kaitai_struct_precompile_MethodNotFoundError = new $TypeData().initClass({ Lio_kaitai_struct_precompile_MethodNotFoundError: 0 }, false, "io.kaitai.struct.precompile.MethodNotFoundError", { Lio_kaitai_struct_precompile_MethodNotFoundError: 1, Lio_kaitai_struct_precompile_NotFoundError: 1, Lio_kaitai_struct_precompile_ExpressionError: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_precompile_MethodNotFoundError.prototype.$classData = $d_Lio_kaitai_struct_precompile_MethodNotFoundError; class $c_Lio_kaitai_struct_precompile_TypeNotFoundError extends $c_Lio_kaitai_struct_precompile_NotFoundError { constructor() { super(); this.name$6 = null; this.curClass$6 = null }; init___T__Lio_kaitai_struct_format_ClassSpec(name, curClass) { this.name$6 = name; this.curClass$6 = curClass; const this$1 = curClass.name$1; const msg = ((("unable to find type '" + name) + "', searching from ") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", "")); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, msg, null, true, true); return this }; } const $d_Lio_kaitai_struct_precompile_TypeNotFoundError = new $TypeData().initClass({ Lio_kaitai_struct_precompile_TypeNotFoundError: 0 }, false, "io.kaitai.struct.precompile.TypeNotFoundError", { Lio_kaitai_struct_precompile_TypeNotFoundError: 1, Lio_kaitai_struct_precompile_NotFoundError: 1, Lio_kaitai_struct_precompile_ExpressionError: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_precompile_TypeNotFoundError.prototype.$classData = $d_Lio_kaitai_struct_precompile_TypeNotFoundError; class $c_Lio_kaitai_struct_problems_ErrorInInput extends $c_Lio_kaitai_struct_problems_CompilationProblem { constructor() { super(); this.err$2 = null; this.path$2 = null; this.fileName$2 = null; this.coords$2 = null }; productPrefix__T() { return "ErrorInInput" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_problems_ErrorInInput)) { const ErrorInInput$1 = x$1; const x = this.err$2; const x$2 = ErrorInInput$1.err$2; let jsx$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.path$2; const x$4 = ErrorInInput$1.path$2; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.fileName$2; const x$6 = ErrorInInput$1.fileName$2; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; severity__Lio_kaitai_struct_problems_ProblemSeverity() { return $m_Lio_kaitai_struct_problems_ProblemSeverity$Error$() }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.err$2; break } case 1: { return this.path$2; break } case 2: { return this.fileName$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; coords__Lio_kaitai_struct_problems_ProblemCoords() { return this.coords$2 }; localizedInFile__T__Lio_kaitai_struct_problems_CompilationProblem(fileName) { const x$1 = new $c_s_Some().init___O(fileName); const x$2 = this.err$2; const x$3 = this.path$2; return new $c_Lio_kaitai_struct_problems_ErrorInInput().init___jl_Throwable__sci_List__s_Option(x$2, x$3, x$1) }; text__T() { const this$1 = $m_s_Option$().apply__O__s_Option(this.err$2.getMessage__T()); return (this$1.isEmpty__Z() ? this.err$2.toString__T() : this$1.get__O()) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___jl_Throwable__sci_List__s_Option(err, path, fileName) { this.err$2 = err; this.path$2 = path; this.fileName$2 = fileName; this.coords$2 = new $c_Lio_kaitai_struct_problems_ProblemCoords().init___s_Option__s_Option__s_Option__s_Option(fileName, new $c_s_Some().init___O(path), $m_s_None$(), $m_s_None$()); return this }; } const $isArrayOf_Lio_kaitai_struct_problems_ErrorInInput = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_ErrorInInput))) }); const $d_Lio_kaitai_struct_problems_ErrorInInput = new $TypeData().initClass({ Lio_kaitai_struct_problems_ErrorInInput: 0 }, false, "io.kaitai.struct.problems.ErrorInInput", { Lio_kaitai_struct_problems_ErrorInInput: 1, Lio_kaitai_struct_problems_CompilationProblem: 1, O: 1, Lio_kaitai_struct_Jsonable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_ErrorInInput.prototype.$classData = $d_Lio_kaitai_struct_problems_ErrorInInput; class $c_Lio_kaitai_struct_problems_ExpressionTypeError extends $c_Lio_kaitai_struct_problems_CompilationProblem { constructor() { super(); this.expected$2 = null; this.got$2 = null; this.path$2 = null; this.fileName$2 = null; this.coords$2 = null }; productPrefix__T() { return "ExpressionTypeError" }; productArity__I() { return 4 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_problems_ExpressionTypeError)) { const ExpressionTypeError$1 = x$1; let jsx$2; if ((this.expected$2 === ExpressionTypeError$1.expected$2)) { const x = this.got$2; const x$2 = ExpressionTypeError$1.got$2; jsx$2 = ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$3 = this.path$2; const x$4 = ExpressionTypeError$1.path$2; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.fileName$2; const x$6 = ExpressionTypeError$1.fileName$2; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; severity__Lio_kaitai_struct_problems_ProblemSeverity() { return $m_Lio_kaitai_struct_problems_ProblemSeverity$Error$() }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.expected$2; break } case 1: { return this.got$2; break } case 2: { return this.path$2; break } case 3: { return this.fileName$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option(expected, got, path, fileName) { this.expected$2 = expected; this.got$2 = got; this.path$2 = path; this.fileName$2 = fileName; this.coords$2 = new $c_Lio_kaitai_struct_problems_ProblemCoords().init___s_Option__s_Option__s_Option__s_Option(fileName, new $c_s_Some().init___O(path), $m_s_None$(), $m_s_None$()); return this }; coords__Lio_kaitai_struct_problems_ProblemCoords() { return this.coords$2 }; localizedInFile__T__Lio_kaitai_struct_problems_CompilationProblem(fileName) { const x$1 = new $c_s_Some().init___O(fileName); const x$2 = this.expected$2; const x$3 = this.got$2; const x$4 = this.path$2; return new $c_Lio_kaitai_struct_problems_ExpressionTypeError().init___T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option(x$2, x$3, x$4, x$1) }; text__T() { return ((("invalid type: expected " + this.expected$2) + ", got ") + this.got$2) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_problems_ExpressionTypeError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_ExpressionTypeError))) }); const $d_Lio_kaitai_struct_problems_ExpressionTypeError = new $TypeData().initClass({ Lio_kaitai_struct_problems_ExpressionTypeError: 0 }, false, "io.kaitai.struct.problems.ExpressionTypeError", { Lio_kaitai_struct_problems_ExpressionTypeError: 1, Lio_kaitai_struct_problems_CompilationProblem: 1, O: 1, Lio_kaitai_struct_Jsonable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_ExpressionTypeError.prototype.$classData = $d_Lio_kaitai_struct_problems_ExpressionTypeError; class $c_Lio_kaitai_struct_problems_KSYParseError extends $c_Lio_kaitai_struct_problems_CompilationProblem { constructor() { super(); this.text$2 = null; this.path$2 = null; this.fileName$2 = null; this.coords$2 = null }; productPrefix__T() { return "KSYParseError" }; productArity__I() { return 3 }; init___T__sci_List__s_Option(text, path, fileName) { this.text$2 = text; this.path$2 = path; this.fileName$2 = fileName; this.coords$2 = new $c_Lio_kaitai_struct_problems_ProblemCoords().init___s_Option__s_Option__s_Option__s_Option(fileName, new $c_s_Some().init___O(path), $m_s_None$(), $m_s_None$()); return this }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_problems_KSYParseError)) { const KSYParseError$1 = x$1; let jsx$1; if ((this.text$2 === KSYParseError$1.text$2)) { const x = this.path$2; const x$2 = KSYParseError$1.path$2; jsx$1 = ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { jsx$1 = false }; if (jsx$1) { const x$3 = this.fileName$2; const x$4 = KSYParseError$1.fileName$2; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; severity__Lio_kaitai_struct_problems_ProblemSeverity() { return $m_Lio_kaitai_struct_problems_ProblemSeverity$Error$() }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.text$2; break } case 1: { return this.path$2; break } case 2: { return this.fileName$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; coords__Lio_kaitai_struct_problems_ProblemCoords() { return this.coords$2 }; localizedInFile__T__Lio_kaitai_struct_problems_CompilationProblem(fileName) { const x$1 = new $c_s_Some().init___O(fileName); const x$2 = this.text$2; const x$3 = this.path$2; return new $c_Lio_kaitai_struct_problems_KSYParseError().init___T__sci_List__s_Option(x$2, x$3, x$1) }; text__T() { return this.text$2 }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_problems_KSYParseError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_KSYParseError))) }); const $d_Lio_kaitai_struct_problems_KSYParseError = new $TypeData().initClass({ Lio_kaitai_struct_problems_KSYParseError: 0 }, false, "io.kaitai.struct.problems.KSYParseError", { Lio_kaitai_struct_problems_KSYParseError: 1, Lio_kaitai_struct_problems_CompilationProblem: 1, O: 1, Lio_kaitai_struct_Jsonable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_KSYParseError.prototype.$classData = $d_Lio_kaitai_struct_problems_KSYParseError; class $c_Lio_kaitai_struct_problems_ParamMismatchError extends $c_Lio_kaitai_struct_problems_CompilationProblem { constructor() { super(); this.idx$2 = 0; this.argType$2 = null; this.paramName$2 = null; this.paramType$2 = null; this.path$2 = null; this.fileName$2 = null; this.coords$2 = null }; productPrefix__T() { return "ParamMismatchError" }; productArity__I() { return 6 }; severity__Lio_kaitai_struct_problems_ProblemSeverity() { return $m_Lio_kaitai_struct_problems_ProblemSeverity$Error$() }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_problems_ParamMismatchError)) { const ParamMismatchError$1 = x$1; let jsx$3; if ((this.idx$2 === ParamMismatchError$1.idx$2)) { const x = this.argType$2; const x$2 = ParamMismatchError$1.argType$2; jsx$3 = ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { jsx$3 = false }; let jsx$2; if ((jsx$3 && (this.paramName$2 === ParamMismatchError$1.paramName$2))) { const x$3 = this.paramType$2; const x$4 = ParamMismatchError$1.paramType$2; jsx$2 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$5 = this.path$2; const x$6 = ParamMismatchError$1.path$2; jsx$1 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$1 = false }; if (jsx$1) { const x$7 = this.fileName$2; const x$8 = ParamMismatchError$1.fileName$2; return ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.idx$2; break } case 1: { return this.argType$2; break } case 2: { return this.paramName$2; break } case 3: { return this.paramType$2; break } case 4: { return this.path$2; break } case 5: { return this.fileName$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; coords__Lio_kaitai_struct_problems_ProblemCoords() { return this.coords$2 }; localizedInFile__T__Lio_kaitai_struct_problems_CompilationProblem(fileName) { const x$1 = new $c_s_Some().init___O(fileName); const x$2 = this.idx$2; const x$3 = this.argType$2; const x$4 = this.paramName$2; const x$5 = this.paramType$2; const x$6 = this.path$2; return new $c_Lio_kaitai_struct_problems_ParamMismatchError().init___I__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option(x$2, x$3, x$4, x$5, x$6, x$1) }; init___I__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_datatype_DataType__sci_List__s_Option(idx, argType, paramName, paramType, path, fileName) { this.idx$2 = idx; this.argType$2 = argType; this.paramName$2 = paramName; this.paramType$2 = paramType; this.path$2 = path; this.fileName$2 = fileName; this.coords$2 = new $c_Lio_kaitai_struct_problems_ProblemCoords().init___s_Option__s_Option__s_Option__s_Option(fileName, new $c_s_Some().init___O(path), $m_s_None$(), $m_s_None$()); return this }; text__T() { return ((((((("can't pass argument #" + this.idx$2) + " of type ") + this.argType$2) + " into parameter `") + this.paramName$2) + "` of type ") + this.paramType$2) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, this.idx$2); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.argType$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.paramName$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.paramType$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.path$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.fileName$2)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 6) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_problems_ParamMismatchError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_ParamMismatchError))) }); const $d_Lio_kaitai_struct_problems_ParamMismatchError = new $TypeData().initClass({ Lio_kaitai_struct_problems_ParamMismatchError: 0 }, false, "io.kaitai.struct.problems.ParamMismatchError", { Lio_kaitai_struct_problems_ParamMismatchError: 1, Lio_kaitai_struct_problems_CompilationProblem: 1, O: 1, Lio_kaitai_struct_Jsonable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_ParamMismatchError.prototype.$classData = $d_Lio_kaitai_struct_problems_ParamMismatchError; class $c_Ljava_io_PrintStream extends $c_Ljava_io_FilterOutputStream { constructor() { super(); this.encoder$3 = null; this.autoFlush$3 = false; this.charset$3 = null; this.closing$3 = false; this.java$io$PrintStream$$closed$3 = false; this.errorFlag$3 = false; this.bitmap$0$3 = false }; append__jl_CharSequence__jl_Appendable(x$1) { return this.append__jl_CharSequence__Ljava_io_PrintStream(x$1) }; init___Ljava_io_OutputStream__Z__Ljava_nio_charset_Charset(_out, autoFlush, charset) { this.autoFlush$3 = autoFlush; this.charset$3 = charset; $c_Ljava_io_FilterOutputStream.prototype.init___Ljava_io_OutputStream.call(this, _out); this.closing$3 = false; this.java$io$PrintStream$$closed$3 = false; this.errorFlag$3 = false; return this }; append__jl_CharSequence__Ljava_io_PrintStream(csq) { this.print__T__V(((csq === null) ? "null" : $objectToString(csq))); return this }; println__T__V(s) { this.print__T__V(s); this.java$lang$JSConsoleBasedPrintStream$$printString__T__V("\n") }; } const $isArrayOf_Ljava_io_PrintStream = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Ljava_io_PrintStream))) }); class $c_Ljava_nio_StringCharBuffer extends $c_Ljava_nio_CharBuffer { constructor() { super(); this.java$nio$StringCharBuffer$$$undcsq$f = null; this.java$nio$StringCharBuffer$$$undcsqOffset$f = 0 }; subSequence__I__I__jl_CharSequence(start, end) { return this.subSequence__I__I__Ljava_nio_CharBuffer(start, end) }; get__C() { const p = this.java$nio$Buffer$$$undposition$1; if ((p === this.$$undlimit$1)) { throw new $c_Ljava_nio_BufferUnderflowException().init___() }; this.java$nio$Buffer$$$undposition$1 = ((1 + p) | 0); const c = $charSequenceCharAt(this.java$nio$StringCharBuffer$$$undcsq$f, ((this.java$nio$StringCharBuffer$$$undcsqOffset$f + p) | 0)); return c }; toString__T() { const offset = this.java$nio$StringCharBuffer$$$undcsqOffset$f; return $objectToString($charSequenceSubSequence(this.java$nio$StringCharBuffer$$$undcsq$f, ((this.java$nio$Buffer$$$undposition$1 + offset) | 0), ((this.$$undlimit$1 + offset) | 0))) }; init___I__jl_CharSequence__I__I__I(_capacity, _csq, _csqOffset, _initialPosition, _initialLimit) { this.java$nio$StringCharBuffer$$$undcsq$f = _csq; this.java$nio$StringCharBuffer$$$undcsqOffset$f = _csqOffset; $c_Ljava_nio_CharBuffer.prototype.init___I__AC__I.call(this, _capacity, null, (-1)); $c_Ljava_nio_Buffer.prototype.position__I__Ljava_nio_Buffer.call(this, _initialPosition); $c_Ljava_nio_Buffer.prototype.limit__I__Ljava_nio_Buffer.call(this, _initialLimit); return this }; subSequence__I__I__Ljava_nio_CharBuffer(start, end) { if ((((start < 0) || (end < start)) || (end > ((this.$$undlimit$1 - this.java$nio$Buffer$$$undposition$1) | 0)))) { throw new $c_jl_IndexOutOfBoundsException().init___() }; return new $c_Ljava_nio_StringCharBuffer().init___I__jl_CharSequence__I__I__I(this.$$undcapacity$1, this.java$nio$StringCharBuffer$$$undcsq$f, this.java$nio$StringCharBuffer$$$undcsqOffset$f, ((this.java$nio$Buffer$$$undposition$1 + start) | 0), ((this.java$nio$Buffer$$$undposition$1 + end) | 0)) }; get__I__C(index) { if (((index < 0) || (index >= this.$$undlimit$1))) { throw new $c_jl_IndexOutOfBoundsException().init___() }; const c = $charSequenceCharAt(this.java$nio$StringCharBuffer$$$undcsq$f, ((this.java$nio$StringCharBuffer$$$undcsqOffset$f + index) | 0)); return c }; } const $d_Ljava_nio_StringCharBuffer = new $TypeData().initClass({ Ljava_nio_StringCharBuffer: 0 }, false, "java.nio.StringCharBuffer", { Ljava_nio_StringCharBuffer: 1, Ljava_nio_CharBuffer: 1, Ljava_nio_Buffer: 1, O: 1, jl_Comparable: 1, jl_CharSequence: 1, jl_Appendable: 1, jl_Readable: 1 }); $c_Ljava_nio_StringCharBuffer.prototype.$classData = $d_Ljava_nio_StringCharBuffer; class $c_ju_Arrays$$anon$3 extends $c_O { constructor() { super(); this.cmp$1$1 = null }; init___ju_Comparator(cmp$1) { this.cmp$1$1 = cmp$1; return this }; compare__O__O__I(x, y) { return this.cmp$1$1.compare__O__O__I(x, y) }; } const $d_ju_Arrays$$anon$3 = new $TypeData().initClass({ ju_Arrays$$anon$3: 0 }, false, "java.util.Arrays$$anon$3", { ju_Arrays$$anon$3: 1, O: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_ju_Arrays$$anon$3.prototype.$classData = $d_ju_Arrays$$anon$3; class $c_ju_DuplicateFormatFlagsException extends $c_ju_IllegalFormatException { constructor() { super(); this.f$6 = null }; getMessage__T() { return (("Flags = '" + this.f$6) + "'") }; init___T(f) { this.f$6 = f; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); if ((f === null)) { throw new $c_jl_NullPointerException().init___() }; return this }; } const $d_ju_DuplicateFormatFlagsException = new $TypeData().initClass({ ju_DuplicateFormatFlagsException: 0 }, false, "java.util.DuplicateFormatFlagsException", { ju_DuplicateFormatFlagsException: 1, ju_IllegalFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_DuplicateFormatFlagsException.prototype.$classData = $d_ju_DuplicateFormatFlagsException; class $c_ju_FormatFlagsConversionMismatchException extends $c_ju_IllegalFormatException { constructor() { super(); this.f$6 = null; this.c$6 = 0 }; getMessage__T() { const c = this.c$6; return ((("Conversion = " + new $c_jl_Character().init___C(c)) + ", Flags = ") + this.f$6) }; init___T__C(f, c) { this.f$6 = f; this.c$6 = c; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); if ((f === null)) { throw new $c_jl_NullPointerException().init___() }; return this }; } const $d_ju_FormatFlagsConversionMismatchException = new $TypeData().initClass({ ju_FormatFlagsConversionMismatchException: 0 }, false, "java.util.FormatFlagsConversionMismatchException", { ju_FormatFlagsConversionMismatchException: 1, ju_IllegalFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_FormatFlagsConversionMismatchException.prototype.$classData = $d_ju_FormatFlagsConversionMismatchException; class $c_ju_IllegalFormatCodePointException extends $c_ju_IllegalFormatException { constructor() { super(); this.c$6 = 0 }; getMessage__T() { const i = this.c$6; const x = (+(i >>> 0)); const jsx$1 = x.toString(16); return ("Code point = 0x" + jsx$1) }; init___I(c) { this.c$6 = c; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $d_ju_IllegalFormatCodePointException = new $TypeData().initClass({ ju_IllegalFormatCodePointException: 0 }, false, "java.util.IllegalFormatCodePointException", { ju_IllegalFormatCodePointException: 1, ju_IllegalFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_IllegalFormatCodePointException.prototype.$classData = $d_ju_IllegalFormatCodePointException; class $c_ju_IllegalFormatConversionException extends $c_ju_IllegalFormatException { constructor() { super(); this.c$6 = 0; this.arg$6 = null }; getMessage__T() { const c = this.c$6; return (($g.String.fromCharCode(c) + " != ") + this.arg$6.getName__T()) }; init___C__jl_Class(c, arg) { this.c$6 = c; this.arg$6 = arg; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); if ((arg === null)) { throw new $c_jl_NullPointerException().init___() }; return this }; } const $d_ju_IllegalFormatConversionException = new $TypeData().initClass({ ju_IllegalFormatConversionException: 0 }, false, "java.util.IllegalFormatConversionException", { ju_IllegalFormatConversionException: 1, ju_IllegalFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_IllegalFormatConversionException.prototype.$classData = $d_ju_IllegalFormatConversionException; class $c_ju_IllegalFormatFlagsException extends $c_ju_IllegalFormatException { constructor() { super(); this.f$6 = null }; getMessage__T() { return (("Flags = '" + this.f$6) + "'") }; init___T(f) { this.f$6 = f; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); if ((f === null)) { throw new $c_jl_NullPointerException().init___() }; return this }; } const $d_ju_IllegalFormatFlagsException = new $TypeData().initClass({ ju_IllegalFormatFlagsException: 0 }, false, "java.util.IllegalFormatFlagsException", { ju_IllegalFormatFlagsException: 1, ju_IllegalFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_IllegalFormatFlagsException.prototype.$classData = $d_ju_IllegalFormatFlagsException; class $c_ju_IllegalFormatPrecisionException extends $c_ju_IllegalFormatException { constructor() { super(); this.p$6 = 0 }; getMessage__T() { const i = this.p$6; return ("" + i) }; init___I(p) { this.p$6 = p; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $d_ju_IllegalFormatPrecisionException = new $TypeData().initClass({ ju_IllegalFormatPrecisionException: 0 }, false, "java.util.IllegalFormatPrecisionException", { ju_IllegalFormatPrecisionException: 1, ju_IllegalFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_IllegalFormatPrecisionException.prototype.$classData = $d_ju_IllegalFormatPrecisionException; class $c_ju_IllegalFormatWidthException extends $c_ju_IllegalFormatException { constructor() { super(); this.w$6 = 0 }; getMessage__T() { const i = this.w$6; return ("" + i) }; init___I(w) { this.w$6 = w; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; } const $d_ju_IllegalFormatWidthException = new $TypeData().initClass({ ju_IllegalFormatWidthException: 0 }, false, "java.util.IllegalFormatWidthException", { ju_IllegalFormatWidthException: 1, ju_IllegalFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_IllegalFormatWidthException.prototype.$classData = $d_ju_IllegalFormatWidthException; class $c_ju_MissingFormatArgumentException extends $c_ju_IllegalFormatException { constructor() { super(); this.s$6 = null }; getMessage__T() { return (("Format specifier '" + this.s$6) + "'") }; init___T(s) { this.s$6 = s; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); if ((s === null)) { throw new $c_jl_NullPointerException().init___() }; return this }; } const $d_ju_MissingFormatArgumentException = new $TypeData().initClass({ ju_MissingFormatArgumentException: 0 }, false, "java.util.MissingFormatArgumentException", { ju_MissingFormatArgumentException: 1, ju_IllegalFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_MissingFormatArgumentException.prototype.$classData = $d_ju_MissingFormatArgumentException; class $c_ju_MissingFormatWidthException extends $c_ju_IllegalFormatException { constructor() { super(); this.s$6 = null }; getMessage__T() { return this.s$6 }; init___T(s) { this.s$6 = s; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); if ((s === null)) { throw new $c_jl_NullPointerException().init___() }; return this }; } const $d_ju_MissingFormatWidthException = new $TypeData().initClass({ ju_MissingFormatWidthException: 0 }, false, "java.util.MissingFormatWidthException", { ju_MissingFormatWidthException: 1, ju_IllegalFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_MissingFormatWidthException.prototype.$classData = $d_ju_MissingFormatWidthException; class $c_ju_UnknownFormatConversionException extends $c_ju_IllegalFormatException { constructor() { super(); this.s$6 = null }; getMessage__T() { return (("Conversion = '" + this.s$6) + "'") }; init___T(s) { this.s$6 = s; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); if ((s === null)) { throw new $c_jl_NullPointerException().init___() }; return this }; } const $d_ju_UnknownFormatConversionException = new $TypeData().initClass({ ju_UnknownFormatConversionException: 0 }, false, "java.util.UnknownFormatConversionException", { ju_UnknownFormatConversionException: 1, ju_IllegalFormatException: 1, jl_IllegalArgumentException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1 }); $c_ju_UnknownFormatConversionException.prototype.$classData = $d_ju_UnknownFormatConversionException; class $c_s_math_Ordering$$anon$2 extends $c_O { constructor() { super(); this.$$outer$1 = null; this.f$1$1 = null }; compare__O__O__I(x, y) { return this.$$outer$1.compare__O__O__I(this.f$1$1.apply__O__O(x), this.f$1$1.apply__O__O(y)) }; init___s_math_Ordering__F1($$outer, f$1) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$1 = $$outer }; this.f$1$1 = f$1; return this }; } const $d_s_math_Ordering$$anon$2 = new $TypeData().initClass({ s_math_Ordering$$anon$2: 0 }, false, "scala.math.Ordering$$anon$2", { s_math_Ordering$$anon$2: 1, O: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Ordering$$anon$2.prototype.$classData = $d_s_math_Ordering$$anon$2; class $c_s_reflect_ClassTag$GenericClassTag extends $c_O { constructor() { super(); this.runtimeClass$1 = null }; newArray__I__O(len) { return $f_s_reflect_ClassTag__newArray__I__O(this, len) }; equals__O__Z(x) { return $f_s_reflect_ClassTag__equals__O__Z(this, x) }; toString__T() { const clazz = this.runtimeClass$1; return $f_s_reflect_ClassTag__prettyprint$1__ps_reflect_ClassTag__jl_Class__T(this, clazz) }; runtimeClass__jl_Class() { return this.runtimeClass$1 }; init___jl_Class(runtimeClass) { this.runtimeClass$1 = runtimeClass; return this }; hashCode__I() { return $m_sr_Statics$().anyHash__O__I(this.runtimeClass$1) }; } const $d_s_reflect_ClassTag$GenericClassTag = new $TypeData().initClass({ s_reflect_ClassTag$GenericClassTag: 0 }, false, "scala.reflect.ClassTag$GenericClassTag", { s_reflect_ClassTag$GenericClassTag: 1, O: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ClassTag$GenericClassTag.prototype.$classData = $d_s_reflect_ClassTag$GenericClassTag; class $c_sc_Seq$ extends $c_scg_SeqFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { $m_sci_Seq$(); return new $c_scm_ListBuffer().init___() }; } const $d_sc_Seq$ = new $TypeData().initClass({ sc_Seq$: 0 }, false, "scala.collection.Seq$", { sc_Seq$: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_sc_Seq$.prototype.$classData = $d_sc_Seq$; let $n_sc_Seq$ = (void 0); const $m_sc_Seq$ = (function() { if ((!$n_sc_Seq$)) { $n_sc_Seq$ = new $c_sc_Seq$().init___() }; return $n_sc_Seq$ }); class $c_scg_IndexedSeqFactory extends $c_scg_SeqFactory { } class $c_sci_HashMap$ extends $c_scg_ImmutableMapFactory { constructor() { super(); this.scala$collection$immutable$HashMap$$defaultMerger$4 = null; this.ReusableCBF$4 = null }; init___() { $n_sci_HashMap$ = this; this.scala$collection$immutable$HashMap$$defaultMerger$4 = new $c_sci_HashMap$$anon$1().init___(); this.ReusableCBF$4 = new $c_scg_GenMapFactory$MapCanBuildFrom().init___scg_GenMapFactory(this); return this }; scala$collection$immutable$HashMap$$makeHashTrieMap__I__sci_HashMap__I__sci_HashMap__I__I__sci_HashMap$HashTrieMap(hash0, elem0, hash1, elem1, level, size) { const index0 = (31 & ((hash0 >>> level) | 0)); const index1 = (31 & ((hash1 >>> level) | 0)); if ((index0 !== index1)) { const bitmap = ((1 << index0) | (1 << index1)); const elems = $newArrayObject($d_sci_HashMap.getArrayOf(), [2]); if ((index0 < index1)) { elems.u[0] = elem0; elems.u[1] = elem1 } else { elems.u[0] = elem1; elems.u[1] = elem0 }; return new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I(bitmap, elems, size) } else { const elems$2 = $newArrayObject($d_sci_HashMap.getArrayOf(), [1]); const bitmap$2 = (1 << index0); elems$2.u[0] = this.scala$collection$immutable$HashMap$$makeHashTrieMap__I__sci_HashMap__I__sci_HashMap__I__I__sci_HashMap$HashTrieMap(hash0, elem0, hash1, elem1, ((5 + level) | 0), size); return new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I(bitmap$2, elems$2, size) } }; scala$collection$immutable$HashMap$$keepBits__I__I__I(bitmap, keep) { let result = 0; let current = bitmap; let kept = keep; while ((kept !== 0)) { const lsb = (current ^ (current & (((-1) + current) | 0))); if (((1 & kept) !== 0)) { result = (result | lsb) }; current = (current & (~lsb)); kept = ((kept >>> 1) | 0) }; return result }; empty__sc_GenMap() { return $m_sci_HashMap$EmptyHashMap$() }; scala$collection$immutable$HashMap$$liftMerger__F2__sci_HashMap$Merger(mergef) { return ((mergef === null) ? this.scala$collection$immutable$HashMap$$defaultMerger$4 : new $c_sci_HashMap$$anon$3().init___F2(mergef)) }; newBuilder__scm_Builder() { return new $c_sci_HashMap$HashMapBuilder().init___() }; } const $d_sci_HashMap$ = new $TypeData().initClass({ sci_HashMap$: 0 }, false, "scala.collection.immutable.HashMap$", { sci_HashMap$: 1, scg_ImmutableMapFactory: 1, scg_MapFactory: 1, scg_GenMapFactory: 1, O: 1, scg_BitOperations$Int: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_HashMap$.prototype.$classData = $d_sci_HashMap$; let $n_sci_HashMap$ = (void 0); const $m_sci_HashMap$ = (function() { if ((!$n_sci_HashMap$)) { $n_sci_HashMap$ = new $c_sci_HashMap$().init___() }; return $n_sci_HashMap$ }); class $c_sci_Seq$ extends $c_scg_SeqFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { return new $c_scm_ListBuffer().init___() }; } const $d_sci_Seq$ = new $TypeData().initClass({ sci_Seq$: 0 }, false, "scala.collection.immutable.Seq$", { sci_Seq$: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_sci_Seq$.prototype.$classData = $d_sci_Seq$; let $n_sci_Seq$ = (void 0); const $m_sci_Seq$ = (function() { if ((!$n_sci_Seq$)) { $n_sci_Seq$ = new $c_sci_Seq$().init___() }; return $n_sci_Seq$ }); class $c_scm_ArrayBuilder extends $c_O { sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; } class $c_scm_Buffer$ extends $c_scg_SeqFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { return new $c_sjs_js_WrappedArray().init___() }; } const $d_scm_Buffer$ = new $TypeData().initClass({ scm_Buffer$: 0 }, false, "scala.collection.mutable.Buffer$", { scm_Buffer$: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_scm_Buffer$.prototype.$classData = $d_scm_Buffer$; let $n_scm_Buffer$ = (void 0); const $m_scm_Buffer$ = (function() { if ((!$n_scm_Buffer$)) { $n_scm_Buffer$ = new $c_scm_Buffer$().init___() }; return $n_scm_Buffer$ }); class $c_scm_IndexedSeq$ extends $c_scg_SeqFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { return new $c_scm_ArrayBuffer().init___() }; } const $d_scm_IndexedSeq$ = new $TypeData().initClass({ scm_IndexedSeq$: 0 }, false, "scala.collection.mutable.IndexedSeq$", { scm_IndexedSeq$: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_scm_IndexedSeq$.prototype.$classData = $d_scm_IndexedSeq$; let $n_scm_IndexedSeq$ = (void 0); const $m_scm_IndexedSeq$ = (function() { if ((!$n_scm_IndexedSeq$)) { $n_scm_IndexedSeq$ = new $c_scm_IndexedSeq$().init___() }; return $n_scm_IndexedSeq$ }); class $c_sjs_js_WrappedArray$ extends $c_scg_SeqFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { return new $c_sjs_js_WrappedArray().init___() }; } const $d_sjs_js_WrappedArray$ = new $TypeData().initClass({ sjs_js_WrappedArray$: 0 }, false, "scala.scalajs.js.WrappedArray$", { sjs_js_WrappedArray$: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_sjs_js_WrappedArray$.prototype.$classData = $d_sjs_js_WrappedArray$; let $n_sjs_js_WrappedArray$ = (void 0); const $m_sjs_js_WrappedArray$ = (function() { if ((!$n_sjs_js_WrappedArray$)) { $n_sjs_js_WrappedArray$ = new $c_sjs_js_WrappedArray$().init___() }; return $n_sjs_js_WrappedArray$ }); class $c_Lfastparse_WhitespaceApi$CustomSequence extends $c_Lfastparse_core_Parser { constructor() { super(); this.WL$2 = null; this.p0$2 = null; this.p$2 = null; this.cut$2 = false; this.ev$2 = null }; productPrefix__T() { return "CustomSequence" }; productArity__I() { return 4 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_WhitespaceApi$CustomSequence)) { const CustomSequence$1 = x$1; const x = this.WL$2; const x$2 = CustomSequence$1.WL$2; let jsx$2; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.p0$2; const x$4 = CustomSequence$1.p0$2; jsx$2 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$5 = this.p$2; const x$6 = CustomSequence$1.p$2; jsx$1 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$1 = false }; if (jsx$1) { return (this.cut$2 === CustomSequence$1.cut$2) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.WL$2; break } case 1: { return this.p0$2; break } case 2: { return this.p$2; break } case 3: { return this.cut$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { let jsx$1; if ((!this.cut$2)) { const x = this.p0$2; const x$2 = $m_Lfastparse_all$().Pass$1; jsx$1 = ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { jsx$1 = false }; if (jsx$1) { return this.p$2.toString__T() } else { const op = (this.cut$2 ? "~/" : "~"); const s = this.p0$2; const jsx$2 = $m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s, $m_Lfastparse_core_Precedence$().OtherOp$1); const s$1 = this.p$2; return ((((jsx$2 + " ") + op) + " ") + $m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s$1, $m_Lfastparse_core_Precedence$().OtherOp$1)) } }; init___Lfastparse_core_Parser__Lfastparse_core_Parser__Lfastparse_core_Parser__Z__Lfastparse_core_Implicits$Sequencer(WL, p0, p, cut, ev) { this.WL$2 = WL; this.p0$2 = p0; this.p$2 = p; this.cut$2 = cut; this.ev$2 = ev; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, $m_Lfastparse_all$().implicitReprOps$1); return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.WL$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.p0$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.p$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.cut$2 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 4) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const x1 = this.p0$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index); if ((x1 instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3 = x1; const logDepth = cfg.logDepth$1; const traceParsers = x3.traceParsers$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3, index, logDepth, traceParsers, false) } else if ((x1 instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = x1; const value0 = x2.value$1; const index0 = x2.index$1; const traceParsers0 = x2.traceParsers$1; const cut0 = x2.cut$1; if ((index0 > index)) { cfg.checkForDrop__Z__Z((!(!(cut0 | this.cut$2)))) }; const oldCapturing = cfg.isCapturing$1; cfg.isCapturing$1 = true; const resWL = this.WL$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index0); cfg.isCapturing$1 = oldCapturing; if ((resWL instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3$2 = resWL; const logDepth$1 = cfg.logDepth$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3$2, index, logDepth$1, null, false) } else if ((resWL instanceof $c_Lfastparse_core_Mutable$Success)) { const x2$2 = resWL; const index1 = x2$2.index$1; const cut1 = x2$2.cut$1; const x1$3 = this.p$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index1); if ((x1$3 instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3$3 = x1$3; const logDepth$2 = cfg.logDepth$1; const traceIndex = cfg.traceIndex$1; const rhs = x3$3.traceParsers$1; const traceParsers$1 = $f_Lfastparse_core_ParserResults__mergeTrace__I__sci_Set__sci_Set__sci_Set(this, traceIndex, traceParsers0, rhs); const cut = (!(!(this.cut$2 | cut0))); return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3$3, index1, logDepth$2, traceParsers$1, cut) } else if ((x1$3 instanceof $c_Lfastparse_core_Mutable$Success)) { const x2$3 = x1$3; const value2 = x2$3.value$1; const index2 = x2$3.index$1; const traceParsers2 = x2$3.traceParsers$1; const cut2 = x2$3.cut$1; let x1$4_$_$$und1$f; let x1$4_$_$$und2$f; let x1$4_$_$$und1$mcI$sp$f; let x1$4_$_$$und2$mcZ$sp$f; if (((index2 > index1) || (!cfg.input$1.isReachable__I__Z(index1)))) { cfg.checkForDrop__Z__Z((!(!((!(!((!(!(this.cut$2 | cut0))) | cut1))) | cut2)))); const _2$mcZ$sp = (!(!((!(!((!(!(this.cut$2 | cut0))) | cut1))) | cut2))); const jsx$1_$_$$und1$f = null; const jsx$1_$_$$und2$f = null; const jsx$1_$_$$und1$mcI$sp$f = index2; const jsx$1_$_$$und2$mcZ$sp$f = _2$mcZ$sp; x1$4_$_$$und1$f = jsx$1_$_$$und1$f; x1$4_$_$$und2$f = jsx$1_$_$$und2$f; x1$4_$_$$und1$mcI$sp$f = jsx$1_$_$$und1$mcI$sp$f; x1$4_$_$$und2$mcZ$sp$f = jsx$1_$_$$und2$mcZ$sp$f } else { const _2$mcZ$sp$1 = (!(!((!(!(this.cut$2 | cut0))) | cut2))); const jsx$2_$_$$und1$f = null; const jsx$2_$_$$und2$f = null; const jsx$2_$_$$und1$mcI$sp$f = index0; const jsx$2_$_$$und2$mcZ$sp$f = _2$mcZ$sp$1; x1$4_$_$$und1$f = jsx$2_$_$$und1$f; x1$4_$_$$und2$f = jsx$2_$_$$und2$f; x1$4_$_$$und1$mcI$sp$f = jsx$2_$_$$und1$mcI$sp$f; x1$4_$_$$und2$mcZ$sp$f = jsx$2_$_$$und2$mcZ$sp$f }; const newIndex = x1$4_$_$$und1$mcI$sp$f; const newCut = x1$4_$_$$und2$mcZ$sp$f; const s = cfg.success$1; const value = this.ev$2.apply__O__O__O(value0, value2); const traceIndex$1 = cfg.traceIndex$1; const traceParsers$2 = $f_Lfastparse_core_ParserResults__mergeTrace__I__sci_Set__sci_Set__sci_Set(this, traceIndex$1, traceParsers0, traceParsers2); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, value, newIndex, traceParsers$2, newCut) } else { throw new $c_s_MatchError().init___O(x1$3) } } else { throw new $c_s_MatchError().init___O(resWL) } } else { throw new $c_s_MatchError().init___O(x1) } }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; opPred__I() { return $m_Lfastparse_core_Precedence$().OtherOp$1 }; } const $isArrayOf_Lfastparse_WhitespaceApi$CustomSequence = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_WhitespaceApi$CustomSequence))) }); const $d_Lfastparse_WhitespaceApi$CustomSequence = new $TypeData().initClass({ Lfastparse_WhitespaceApi$CustomSequence: 0 }, false, "fastparse.WhitespaceApi$CustomSequence", { Lfastparse_WhitespaceApi$CustomSequence: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_WhitespaceApi$CustomSequence.prototype.$classData = $d_Lfastparse_WhitespaceApi$CustomSequence; class $c_Lfastparse_parsers_Combinators$Capturing extends $c_Lfastparse_core_Parser { constructor() { super(); this.p$2 = null }; productPrefix__T() { return "Capturing" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Combinators$Capturing)) { const Capturing$1 = x$1; const x = this.p$2; const x$2 = Capturing$1.p$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.p$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return this.p$2.toString__T() }; init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p, repr) { this.p$2 = p; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const oldCapturing = cfg.isCapturing$1; cfg.isCapturing$1 = true; const res = this.p$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index); cfg.isCapturing$1 = oldCapturing; if ((res instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = res; const index0 = x2.index$1; const traceParsers0 = x2.traceParsers$1; const cut0 = x2.cut$1; const s = cfg.success$1; const this$1 = cfg.input$1; const this$2 = this$1.repr$2; const value = this$1.data$2; const value$1 = this$2.slice__T__I__I__T(value, index, index0); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, value$1, index0, traceParsers0, cut0) } else if ((res instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3 = res; return x3 } else { throw new $c_s_MatchError().init___O(res) } }; } const $isArrayOf_Lfastparse_parsers_Combinators$Capturing = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Combinators$Capturing))) }); const $d_Lfastparse_parsers_Combinators$Capturing = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Capturing: 0 }, false, "fastparse.parsers.Combinators$Capturing", { Lfastparse_parsers_Combinators$Capturing: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Capturing.prototype.$classData = $d_Lfastparse_parsers_Combinators$Capturing; class $c_Lfastparse_parsers_Combinators$Either extends $c_Lfastparse_core_Parser { constructor() { super(); this.ps$2 = null; this.ps0$2 = null; this.n$2 = 0 }; productPrefix__T() { return "Either" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Combinators$Either)) { const Either$1 = x$1; const x = this.ps$2; const x$2 = Either$1.ps$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.ps$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { const jsx$2 = this.ps$2; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(s$2) { const s = s$2; return $m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s, $this.opPred__I()) }) })(this)); const this$1 = $m_sc_Seq$(); return jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(" | ") }; rec$4__p2__I__sci_Set__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(parserIndex, traceParsers, cfg$4, index$4) { _rec: while (true) { if ((parserIndex >= this.n$2)) { const f = cfg$4.failure$1; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f, index$4, null, false) } else { let res = null; if ((parserIndex === (((-1) + this.n$2) | 0))) { res = this.ps0$2.u[parserIndex].parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg$4, index$4) } else { const oldFork = cfg$4.isFork$1; cfg$4.isFork$1 = true; res = this.ps0$2.u[parserIndex].parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg$4, index$4); cfg$4.isFork$1 = oldFork }; let rc6 = false; let x3 = null; const x1 = res; if ((x1 instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = x1; const traceIndex = cfg$4.traceIndex$1; const lhs = x2.traceParsers$1; const rhs = traceParsers; x2.traceParsers$1 = $f_Lfastparse_core_ParserResults__mergeTrace__I__sci_Set__sci_Set__sci_Set(this, traceIndex, lhs, rhs); return x2 }; if ((x1 instanceof $c_Lfastparse_core_Mutable$Failure)) { rc6 = true; x3 = x1; if (x3.cut$1) { const f$1 = x3; const logDepth = cfg$4.logDepth$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f$1, index$4, logDepth, null, false) } }; if (rc6) { const temp$parserIndex = ((1 + parserIndex) | 0); const traceIndex$1 = cfg$4.traceIndex$1; const lhs$1 = x3.traceParsers$1; const rhs$1 = traceParsers; const temp$traceParsers = $f_Lfastparse_core_ParserResults__mergeTrace__I__sci_Set__sci_Set__sci_Set(this, traceIndex$1, lhs$1, rhs$1); parserIndex = temp$parserIndex; traceParsers = temp$traceParsers; continue _rec }; throw new $c_s_MatchError().init___O(x1) } } }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { return this.rec$4__p2__I__sci_Set__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(0, $m_sci_Set$EmptySet$(), cfg, index) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___sc_Seq__Lfastparse_utils_ReprOps(ps, repr) { this.ps$2 = ps; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); this.ps0$2 = ps.toArray__s_reflect_ClassTag__O(new $c_s_reflect_ClassTag$GenericClassTag().init___jl_Class($d_Lfastparse_core_Parser.getClassOf())); this.n$2 = this.ps0$2.u.length; return this }; opPred__I() { return ((this.ps$2.length__I() === 1) ? this.ps$2.apply__I__O(0).opPred__I() : $m_Lfastparse_core_Precedence$().$$bar$1) }; } const $isArrayOf_Lfastparse_parsers_Combinators$Either = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Combinators$Either))) }); const $d_Lfastparse_parsers_Combinators$Either = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Either: 0 }, false, "fastparse.parsers.Combinators$Either", { Lfastparse_parsers_Combinators$Either: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Either.prototype.$classData = $d_Lfastparse_parsers_Combinators$Either; class $c_Lfastparse_parsers_Combinators$NoCut extends $c_Lfastparse_core_Parser { constructor() { super(); this.p$2 = null }; productPrefix__T() { return "NoCut" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Combinators$NoCut)) { const NoCut$1 = x$1; const x = this.p$2; const x$2 = NoCut$1.p$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.p$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return this.p$2.toString__T() }; init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p, repr) { this.p$2 = p; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const oldNoCut = cfg.isNoCut$1; cfg.isNoCut$1 = true; const res = this.p$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index); cfg.isNoCut$1 = oldNoCut; if ((res instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = res; x2.cut$1 = false; return x2 } else if ((res instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3 = res; x3.cut$1 = false; return x3 } else { throw new $c_s_MatchError().init___O(res) } }; } const $isArrayOf_Lfastparse_parsers_Combinators$NoCut = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Combinators$NoCut))) }); const $d_Lfastparse_parsers_Combinators$NoCut = new $TypeData().initClass({ Lfastparse_parsers_Combinators$NoCut: 0 }, false, "fastparse.parsers.Combinators$NoCut", { Lfastparse_parsers_Combinators$NoCut: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$NoCut.prototype.$classData = $d_Lfastparse_parsers_Combinators$NoCut; class $c_Lfastparse_parsers_Combinators$Not extends $c_Lfastparse_core_Parser { constructor() { super(); this.p$2 = null }; parseRec__Lfastparse_core_ParseCtx__I__s_Product(cfg, index) { const oldNoCut = cfg.isNoCut$1; cfg.isNoCut$1 = true; const res0 = this.p$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index); cfg.isNoCut$1 = oldNoCut; let res; if ((res0 instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = res0; const f = cfg.failure$1; const index$1 = x2.index$1; res = $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f, index$1, null, false) } else { if ((!(res0 instanceof $c_Lfastparse_core_Mutable$Failure))) { throw new $c_s_MatchError().init___O(res0) }; const s = cfg.success$1; const traceParsers = $m_sci_Set$EmptySet$(); res = $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, (void 0), index, traceParsers, false) }; return res }; productPrefix__T() { return "Not" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Combinators$Not)) { const Not$1 = x$1; const x = this.p$2; const x$2 = Not$1.p$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.p$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["!(", ")"])).s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([this.p$2])) }; init___Lfastparse_core_Parser__Lfastparse_utils_ReprOps(p, repr) { this.p$2 = p; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { return this.parseRec__Lfastparse_core_ParseCtx__I__s_Product(cfg, index) }; opPred__I() { return $m_Lfastparse_core_Precedence$().PrefixOp$1 }; } const $isArrayOf_Lfastparse_parsers_Combinators$Not = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Combinators$Not))) }); const $d_Lfastparse_parsers_Combinators$Not = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Not: 0 }, false, "fastparse.parsers.Combinators$Not", { Lfastparse_parsers_Combinators$Not: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Not.prototype.$classData = $d_Lfastparse_parsers_Combinators$Not; class $c_Lfastparse_parsers_Combinators$Optional extends $c_Lfastparse_core_Parser { constructor() { super(); this.p$2 = null; this.ev$2 = null }; productPrefix__T() { return "Optional" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Combinators$Optional)) { const Optional$1 = x$1; const x = this.p$2; const x$2 = Optional$1.p$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.p$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { const jsx$1 = new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["", ".?"])); const s = this.p$2; return jsx$1.s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([$m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s, $m_Lfastparse_core_Precedence$().Max$1)])) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const oldFork = cfg.isFork$1; cfg.isFork$1 = true; const res = this.p$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index); cfg.isFork$1 = oldFork; if ((res instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = res; const s = cfg.success$1; const value = this.ev$2.some__O__O(x2.value$1); const index$1 = x2.index$1; const traceParsers = x2.traceParsers$1; const cut = x2.cut$1; return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, value, index$1, traceParsers, cut) }; if ((res instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3 = res; if (x3.cut$1) { const logDepth = cfg.logDepth$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3, index, logDepth, null, false) } }; const s$1 = cfg.success$1; const value$1 = this.ev$2.none__O(); const traceParsers$1 = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s$1, value$1, index, traceParsers$1, false) }; init___Lfastparse_core_Parser__Lfastparse_core_Implicits$Optioner__Lfastparse_utils_ReprOps(p, ev, repr) { this.p$2 = p; this.ev$2 = ev; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; } const $isArrayOf_Lfastparse_parsers_Combinators$Optional = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Combinators$Optional))) }); const $d_Lfastparse_parsers_Combinators$Optional = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Optional: 0 }, false, "fastparse.parsers.Combinators$Optional", { Lfastparse_parsers_Combinators$Optional: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Optional.prototype.$classData = $d_Lfastparse_parsers_Combinators$Optional; class $c_Lfastparse_parsers_Combinators$Repeat extends $c_Lfastparse_core_Parser { constructor() { super(); this.p$2 = null; this.min$2 = 0; this.max$2 = 0; this.delimiter$2 = null; this.ev$2 = null }; productPrefix__T() { return "Repeat" }; productArity__I() { return 4 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Combinators$Repeat)) { const Repeat$1 = x$1; const x = this.p$2; const x$2 = Repeat$1.p$2; if (((((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) && (this.min$2 === Repeat$1.min$2)) && (this.max$2 === Repeat$1.max$2))) { const x$3 = this.delimiter$2; const x$4 = Repeat$1.delimiter$2; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.p$2; break } case 1: { return this.min$2; break } case 2: { return this.max$2; break } case 3: { return this.delimiter$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { const jsx$2 = $m_sc_Seq$(); const jsx$1 = ((this.min$2 === 0) ? $m_s_None$() : new $c_s_Some().init___O(this.min$2)); const x = this.delimiter$2; const x$2 = new $c_Lfastparse_parsers_Terminals$Pass().init___Lfastparse_utils_ReprOps(this.reprOps$1); const things = jsx$2.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array([jsx$1, (((x !== null) && x.equals__O__Z(x$2)) ? $m_s_None$() : new $c_s_Some().init___O(("sep = " + this.delimiter$2))), ((this.max$2 === 2147483647) ? $m_s_None$() : new $c_s_Some().init___O(("max = " + this.max$2)))])).flatten__F1__sc_GenTraversable(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(xo$2) { const xo = xo$2; return xo.toList__sci_List() }) })(this))).mkString__T__T(", "); if ((things === null)) { throw new $c_jl_NullPointerException().init___() }; if ((things === "")) { const s = this.p$2; return ($m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s, $m_Lfastparse_core_Precedence$().Max$1) + ".rep") } else { const jsx$3 = new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["", ".rep(", ")"])); const s$1 = this.p$2; return jsx$3.s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([$m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s$1, $m_Lfastparse_core_Precedence$().Max$1), things])) } }; rec$3__p2__I__Lfastparse_core_Parser__Lfastparse_core_Mutable$Failure__O__Z__I__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(index, del, lastFailure, acc, cut, count, cfg$3, index$3) { _rec: while (true) { const oldFork = cfg$3.isFork$1; cfg$3.isFork$1 = true; const resDel = del.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg$3, index); cfg$3.isFork$1 = oldFork; if ((resDel instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3 = resDel; const cut1 = x3.cut$1; if (cut1) { const x$16 = index; const x$17 = cfg$3.logDepth$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3, x$16, x$17, null, true) } else { return this.passInRange$1__p2__Z__Lfastparse_core_Mutable$Failure__I__O__I__Lfastparse_core_ParseCtx__I__s_Product(cut, x3, index, this.ev$2.result__O__O(acc), count, cfg$3, index$3) } } else if ((resDel instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = resDel; const index0 = x2.index$1; const cut0 = x2.cut$1; cfg$3.isFork$1 = true; const res = this.p$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg$3, index0); cfg$3.isFork$1 = oldFork; if ((res instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3$2 = res; const cut2 = x3$2.cut$1; if ((!(!(cut2 | cut0)))) { const x$27 = cfg$3.logDepth$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3$2, index0, x$27, null, true) } else { return this.passInRange$1__p2__Z__Lfastparse_core_Mutable$Failure__I__O__I__Lfastparse_core_ParseCtx__I__s_Product((!(!(cut | cut0))), x3$2, index, this.ev$2.result__O__O(acc), count, cfg$3, index$3) } } else if ((res instanceof $c_Lfastparse_core_Mutable$Success)) { const x2$2 = res; const value1 = x2$2.value$1; const index1 = x2$2.index$1; const cut1$2 = x2$2.cut$1; this.ev$2.accumulate__O__O__V(value1, acc); const counted = ((1 + count) | 0); if ((counted < this.max$2)) { const temp$del = this.delimiter$2; const temp$cut = (!(!(cut0 | cut1$2))); index = index1; del = temp$del; cut = temp$cut; count = counted; continue _rec } else { return this.passInRange$1__p2__Z__Lfastparse_core_Mutable$Failure__I__O__I__Lfastparse_core_ParseCtx__I__s_Product((!(!(cut0 | cut1$2))), lastFailure, index1, this.ev$2.result__O__O(acc), counted, cfg$3, index$3) } } else { throw new $c_s_MatchError().init___O(res) } } else { throw new $c_s_MatchError().init___O(resDel) } } }; init___Lfastparse_core_Parser__I__I__Lfastparse_core_Parser__Lfastparse_core_Implicits$Repeater__Lfastparse_utils_ReprOps(p, min, max, delimiter, ev, repr) { this.p$2 = p; this.min$2 = min; this.max$2 = max; this.delimiter$2 = delimiter; this.ev$2 = ev; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; passInRange$1__p2__Z__Lfastparse_core_Mutable$Failure__I__O__I__Lfastparse_core_ParseCtx__I__s_Product(cut, lastFailure, finalIndex, acc, count, cfg$3, index$3) { if ((this.min$2 <= count)) { const parsers = ((lastFailure === null) ? $m_sci_Set$EmptySet$() : lastFailure.traceParsers$1); const s = cfg$3.success$1; return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, acc, finalIndex, parsers, cut) } else { const x$22 = cfg$3.logDepth$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, lastFailure, index$3, x$22, null, cut) } }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.p$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, this.min$2); acc = $m_sr_Statics$().mix__I__I__I(acc, this.max$2); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.delimiter$2)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 4) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { if ((this.max$2 === 0)) { const s = cfg.success$1; const value = this.ev$2.result__O__O(this.ev$2.initial__O()); const traceParsers = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, value, index, traceParsers, false) } else { return this.rec$3__p2__I__Lfastparse_core_Parser__Lfastparse_core_Mutable$Failure__O__Z__I__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(index, new $c_Lfastparse_parsers_Terminals$Pass().init___Lfastparse_utils_ReprOps(this.reprOps$1), null, this.ev$2.initial__O(), false, 0, cfg, index) } }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_parsers_Combinators$Repeat = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Combinators$Repeat))) }); const $d_Lfastparse_parsers_Combinators$Repeat = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Repeat: 0 }, false, "fastparse.parsers.Combinators$Repeat", { Lfastparse_parsers_Combinators$Repeat: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Repeat.prototype.$classData = $d_Lfastparse_parsers_Combinators$Repeat; class $c_Lfastparse_parsers_Combinators$Rule extends $c_Lfastparse_core_Parser { constructor() { super(); this.pCached$2 = null; this.name$2 = null; this.p$2 = null; this.bitmap$0$2 = false }; productPrefix__T() { return "Rule" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Combinators$Rule)) { const Rule$1 = x$1; if ((this.name$2 === Rule$1.name$2)) { const x = this.p$2; const x$2 = Rule$1.p$2; return (x === x$2) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$2; break } case 1: { return this.p$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return this.name$2 }; res$lzycompute$1__p2__Lfastparse_core_ParseCtx__I__sr_LazyRef__s_Product(cfg$1, index$1, res$lzy$1) { if ((res$lzy$1 === null)) { throw new $c_jl_NullPointerException().init___() }; if (res$lzy$1.$$undinitialized$1) { return res$lzy$1.$$undvalue$1 } else { const x1 = this.pCached__p2__Lfastparse_core_Parser().parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg$1, index$1); let jsx$1; if ((x1 instanceof $c_Lfastparse_core_Mutable$Failure)) { const x2 = x1; const logDepth = cfg$1.logDepth$1; jsx$1 = $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x2, index$1, logDepth, null, false) } else { if ((!(x1 instanceof $c_Lfastparse_core_Mutable$Success))) { throw new $c_s_MatchError().init___O(x1) }; const x3 = x1; jsx$1 = x3 }; return res$lzy$1.initialize__O__O(jsx$1) } }; init___T__F0__Lfastparse_utils_ReprOps(name, p, repr) { this.name$2 = name; this.p$2 = p; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; res$1__p2__Lfastparse_core_ParseCtx__I__sr_LazyRef__s_Product(cfg$1, index$1, res$lzy$1) { return (res$lzy$1.$$undinitialized$1 ? res$lzy$1.$$undvalue$1 : this.res$lzycompute$1__p2__Lfastparse_core_ParseCtx__I__sr_LazyRef__s_Product(cfg$1, index$1, res$lzy$1)) }; pCached__p2__Lfastparse_core_Parser() { return ((!this.bitmap$0$2) ? this.pCached$lzycompute__p2__Lfastparse_core_Parser() : this.pCached$2) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; pCached$lzycompute__p2__Lfastparse_core_Parser() { if ((!this.bitmap$0$2)) { this.pCached$2 = this.p$2.apply__O(); this.bitmap$0$2 = true }; return this.pCached$2 }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { if ((cfg.instrument$1 === null)) { const x1 = this.pCached__p2__Lfastparse_core_Parser().parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index); if ((x1 instanceof $c_Lfastparse_core_Mutable$Failure)) { const x2 = x1; const logDepth = cfg.logDepth$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x2, index, logDepth, null, false) } else if ((x1 instanceof $c_Lfastparse_core_Mutable$Success)) { const x3 = x1; return x3 } else { throw new $c_s_MatchError().init___O(x1) } } else { const res$lzy = new $c_sr_LazyRef().init___(); cfg.instrument$1.apply__O__O__O__O(this, index, new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, cfg$1, index$1, res$lzy$1) { return (function() { return $this.res$1__p2__Lfastparse_core_ParseCtx__I__sr_LazyRef__s_Product(cfg$1, index$1, res$lzy$1).toResult__Lfastparse_core_Parsed() }) })(this, cfg, index, res$lzy))); return this.res$1__p2__Lfastparse_core_ParseCtx__I__sr_LazyRef__s_Product(cfg, index, res$lzy) } }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_parsers_Combinators$Rule = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Combinators$Rule))) }); const $d_Lfastparse_parsers_Combinators$Rule = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Rule: 0 }, false, "fastparse.parsers.Combinators$Rule", { Lfastparse_parsers_Combinators$Rule: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Rule.prototype.$classData = $d_Lfastparse_parsers_Combinators$Rule; class $c_Lfastparse_parsers_Combinators$Sequence extends $c_Lfastparse_core_Parser { constructor() { super(); this.p1$2 = null; this.p2$2 = null; this.cut$2 = false; this.ev$2 = null }; productPrefix__T() { return "Sequence" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Combinators$Sequence)) { const Sequence$1 = x$1; const x = this.p1$2; const x$2 = Sequence$1.p1$2; let jsx$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.p2$2; const x$4 = Sequence$1.p2$2; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (jsx$1) { return (this.cut$2 === Sequence$1.cut$2) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.p1$2; break } case 1: { return this.p2$2; break } case 2: { return this.cut$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { const op = (this.cut$2 ? "~/" : "~"); const s = this.p1$2; const jsx$1 = $m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s, $m_Lfastparse_core_Precedence$().OtherOp$1); const s$1 = this.p2$2; return ((((jsx$1 + " ") + op) + " ") + $m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s$1, $m_Lfastparse_core_Precedence$().OtherOp$1)) }; init___Lfastparse_core_Parser__Lfastparse_core_Parser__Z__Lfastparse_core_Implicits$Sequencer__Lfastparse_utils_ReprOps(p1, p2, cut, ev, repr) { this.p1$2 = p1; this.p2$2 = p2; this.cut$2 = cut; this.ev$2 = ev; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.p1$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.p2$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.cut$2 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 3) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const x1 = this.p1$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index); if ((x1 instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3 = x1; const logDepth = cfg.logDepth$1; const traceIndex = cfg.traceIndex$1; const lhs = $m_s_Predef$().Set$2.apply__sc_Seq__sc_GenTraversable(new $c_sjs_js_WrappedArray().init___sjs_js_Array([this.p1$2])); const rhs = $m_sci_Set$EmptySet$(); const traceParsers = $f_Lfastparse_core_ParserResults__mergeTrace__I__sci_Set__sci_Set__sci_Set(this, traceIndex, lhs, rhs); const cut = x3.cut$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3, index, logDepth, traceParsers, cut) } else if ((x1 instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = x1; const value0 = x2.value$1; const index0 = x2.index$1; const traceParsers0 = x2.traceParsers$1; const cut0 = x2.cut$1; if ((index0 > index)) { cfg.checkForDrop__Z__Z((!(!(this.cut$2 | cut0)))) }; const x1$2 = this.p2$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index0); if ((x1$2 instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3$2 = x1$2; const logDepth$1 = cfg.logDepth$1; const traceIndex$1 = cfg.traceIndex$1; const rhs$1 = x3$2.traceParsers$1; const traceParsers$1 = $f_Lfastparse_core_ParserResults__mergeTrace__I__sci_Set__sci_Set__sci_Set(this, traceIndex$1, traceParsers0, rhs$1); const cut$1 = (!(!((!(!(this.cut$2 | x3$2.cut$1))) | cut0))); return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3$2, index, logDepth$1, traceParsers$1, cut$1) } else if ((x1$2 instanceof $c_Lfastparse_core_Mutable$Success)) { const x2$2 = x1$2; const value1 = x2$2.value$1; const index1 = x2$2.index$1; const traceParsers1 = x2$2.traceParsers$1; const cut1 = x2$2.cut$1; if ((index1 > index0)) { cfg.checkForDrop__Z__Z((!(!((!(!(this.cut$2 | cut0))) | this.cut$2)))) }; const s = cfg.success$1; const value = this.ev$2.apply__O__O__O(value0, value1); const traceIndex$2 = cfg.traceIndex$1; const traceParsers$2 = $f_Lfastparse_core_ParserResults__mergeTrace__I__sci_Set__sci_Set__sci_Set(this, traceIndex$2, traceParsers1, traceParsers0); const cut$2 = (!(!((!(!(cut1 | cut0))) | this.cut$2))); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, value, index1, traceParsers$2, cut$2) } else { throw new $c_s_MatchError().init___O(x1$2) } } else { throw new $c_s_MatchError().init___O(x1) } }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; opPred__I() { return $m_Lfastparse_core_Precedence$().OtherOp$1 }; } const $isArrayOf_Lfastparse_parsers_Combinators$Sequence = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Combinators$Sequence))) }); const $d_Lfastparse_parsers_Combinators$Sequence = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Sequence: 0 }, false, "fastparse.parsers.Combinators$Sequence", { Lfastparse_parsers_Combinators$Sequence: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Sequence.prototype.$classData = $d_Lfastparse_parsers_Combinators$Sequence; class $c_Lfastparse_parsers_Combinators$Sequence$Flat extends $c_Lfastparse_core_Parser { constructor() { super(); this.p0$2 = null; this.ps$2 = null }; rec$1__p2__O__I__Z__I__sci_Set__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(r1, rIndex, rCut, vIndex, traceParsers, cfg$2, index$2) { _rec: while (true) { const jsx$1 = vIndex; const this$1 = this.ps$2; let currParserCut; if ((jsx$1 < this$1.size0$6)) { const this$2 = this.ps$2; const idx = vIndex; currParserCut = $f_scm_ResizableArray__apply__I__O(this$2, idx).cut$1 } else { currParserCut = false }; if ((rIndex > index$2)) { cfg$2.checkForDrop__Z__Z((!(!(rCut | currParserCut)))) }; const jsx$2 = vIndex; const this$3 = this.ps$2; if ((jsx$2 >= this$3.size0$6)) { const s = cfg$2.success$1; const value = r1; const index = rIndex; const traceParsers$1 = traceParsers; const cut = rCut; return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, value, index, traceParsers$1, cut) } else { const this$4 = this.ps$2; const idx$1 = vIndex; const c = $f_scm_ResizableArray__apply__I__O(this$4, idx$1); const x1 = c.p$1.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg$2, rIndex); if ((x1 instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3 = x1; const index$1 = rIndex; const logDepth = cfg$2.logDepth$1; const traceIndex = cfg$2.traceIndex$1; const lhs = x3.traceParsers$1; const rhs = traceParsers; const traceParsers$2 = $f_Lfastparse_core_ParserResults__mergeTrace__I__sci_Set__sci_Set__sci_Set(this, traceIndex, lhs, rhs); const cut$1 = (!(!((!(!(c.cut$1 | x3.cut$1))) | rCut))); return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3, index$1, logDepth, traceParsers$2, cut$1) } else if ((x1 instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = x1; const value0 = x2.value$1; const index0 = x2.index$1; const traceParsers0 = x2.traceParsers$1; const cut0 = x2.cut$1; const temp$r1 = c.ev$1.apply__O__O__O(r1, value0); const temp$rCut = (!(!((!(!(c.cut$1 | cut0))) | rCut))); const temp$vIndex = ((1 + vIndex) | 0); const that = traceParsers; const temp$traceParsers = traceParsers0.union__sc_GenSet__O(that); r1 = temp$r1; rIndex = index0; rCut = temp$rCut; vIndex = temp$vIndex; traceParsers = temp$traceParsers; continue _rec } else { throw new $c_s_MatchError().init___O(x1) } } } }; productPrefix__T() { return "Flat" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Combinators$Sequence$Flat)) { const Flat$1 = x$1; const x = this.p0$2; const x$2 = Flat$1.p0$2; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.ps$2; const x$4 = Flat$1.ps$2; return ((x$3 === null) ? (x$4 === null) : $f_sc_GenSeqLike__equals__O__Z(x$3, x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.p0$2; break } case 1: { return this.ps$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___Lfastparse_core_Parser__scm_ArrayBuffer__Lfastparse_utils_ReprOps(p0, ps, repr) { this.p0$2 = p0; this.ps$2 = ps; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; toString__T() { const this$2 = this.ps$2; const this$1 = $m_scm_ArrayBuffer$(); const bf = this$1.ReusableCBFInstance$2; const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$2, bf); let i = 0; const top = this$2.size0$6; while ((i < top)) { const arg1 = this$2.array$6.u[i]; const c = arg1; const jsx$1 = (c.cut$1 ? "/" : ""); const s = c.p$1; b.$$plus$eq__O__scm_Builder((((" ~" + jsx$1) + " ") + $m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s, $m_Lfastparse_core_Precedence$().OtherOp$1))); i = ((1 + i) | 0) }; const rhs = b.result__O(); const jsx$2 = new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["", "", ""])); const s$1 = this.p0$2; return jsx$2.s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([$m_Lfastparse_core_Precedence$().opWrap__Lfastparse_core_Precedence__I__T(s$1, $m_Lfastparse_core_Precedence$().OtherOp$1), $f_sc_TraversableOnce__mkString__T__T__T__T(rhs, "", "", "")])) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const x1 = this.p0$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index); if ((x1 instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3 = x1; const x$3 = cfg.logDepth$1; const x$4 = x3.cut$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3, index, x$3, null, x$4) } else if ((x1 instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = x1; const value0 = x2.value$1; const index0 = x2.index$1; const traceParsers0 = x2.traceParsers$1; const cut0 = x2.cut$1; return this.rec$1__p2__O__I__Z__I__sci_Set__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(value0, index0, cut0, 0, traceParsers0, cfg, index) } else { throw new $c_s_MatchError().init___O(x1) } }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; opPred__I() { return $m_Lfastparse_core_Precedence$().OtherOp$1 }; } const $isArrayOf_Lfastparse_parsers_Combinators$Sequence$Flat = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Combinators$Sequence$Flat))) }); const $d_Lfastparse_parsers_Combinators$Sequence$Flat = new $TypeData().initClass({ Lfastparse_parsers_Combinators$Sequence$Flat: 0 }, false, "fastparse.parsers.Combinators$Sequence$Flat", { Lfastparse_parsers_Combinators$Sequence$Flat: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Combinators$Sequence$Flat.prototype.$classData = $d_Lfastparse_parsers_Combinators$Sequence$Flat; class $c_Lfastparse_parsers_Terminals$AnyElem extends $c_Lfastparse_core_Parser { constructor() { super(); this.name$2 = null; this.toString$2 = null }; init___T__Lfastparse_utils_ReprOps(name, repr) { this.name$2 = name; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); this.toString$2 = name; return this }; productPrefix__T() { return "AnyElem" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Terminals$AnyElem)) { const AnyElem$1 = x$1; return (this.name$2 === AnyElem$1.name$2) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return this.toString$2 }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const input = cfg.input$1; if ((!input.isReachable__I__Z(index))) { const f = cfg.failure$1; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f, index, null, false) } else { const s = cfg.success$1; const index$1 = ((1 + index) | 0); const traceParsers = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, (void 0), index$1, traceParsers, false) } }; } const $isArrayOf_Lfastparse_parsers_Terminals$AnyElem = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Terminals$AnyElem))) }); const $d_Lfastparse_parsers_Terminals$AnyElem = new $TypeData().initClass({ Lfastparse_parsers_Terminals$AnyElem: 0 }, false, "fastparse.parsers.Terminals$AnyElem", { Lfastparse_parsers_Terminals$AnyElem: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Terminals$AnyElem.prototype.$classData = $d_Lfastparse_parsers_Terminals$AnyElem; class $c_Lfastparse_parsers_Terminals$ElemLiteral extends $c_Lfastparse_core_Parser { constructor() { super(); this.c$2 = null }; productPrefix__T() { return "ElemLiteral" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Terminals$ElemLiteral)) { const ElemLiteral$1 = x$1; return $m_sr_BoxesRunTime$().equals__O__O__Z(this.c$2, ElemLiteral$1.c$2) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.c$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { const this$4 = this.reprOps$1; const this$1 = this.reprOps$1; const input = this.c$2; let jsx$1; if ((input === null)) { jsx$1 = 0 } else { const this$3 = input; jsx$1 = this$3.value$1 }; const input$1 = this$1.fromSingle__C__T(jsx$1); return this$4.literalize__T__T(input$1) }; init___O__Lfastparse_utils_ReprOps(c, repr) { this.c$2 = c; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const input = cfg.input$1; if ((!input.isReachable__I__Z(index))) { const f = cfg.failure$1; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f, index, null, false) } else { const jsx$1 = $m_sr_BoxesRunTime$(); const value = input.data$2; const input$1 = value; const c = (65535 & (input$1.charCodeAt(index) | 0)); if (jsx$1.equals__O__O__Z(new $c_jl_Character().init___C(c), this.c$2)) { const s = cfg.success$1; $objectToString(this.c$2); const value$1 = (void 0); const index$1 = ((1 + index) | 0); const traceParsers = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, value$1, index$1, traceParsers, false) } else { const f$1 = cfg.failure$1; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f$1, index, null, false) } } }; } const $isArrayOf_Lfastparse_parsers_Terminals$ElemLiteral = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Terminals$ElemLiteral))) }); const $d_Lfastparse_parsers_Terminals$ElemLiteral = new $TypeData().initClass({ Lfastparse_parsers_Terminals$ElemLiteral: 0 }, false, "fastparse.parsers.Terminals$ElemLiteral", { Lfastparse_parsers_Terminals$ElemLiteral: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Terminals$ElemLiteral.prototype.$classData = $d_Lfastparse_parsers_Terminals$ElemLiteral; class $c_Lfastparse_parsers_Terminals$End extends $c_Lfastparse_core_Parser { constructor() { super(); this.toString$2 = null }; productPrefix__T() { return "End" }; productArity__I() { return 0 }; equals__O__Z(x$1) { return ((x$1 instanceof $c_Lfastparse_parsers_Terminals$End) && true) }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return this.toString$2 }; init___Lfastparse_utils_ReprOps(repr) { $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); this.toString$2 = "End"; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { if ((!cfg.input$1.isReachable__I__Z(index))) { const s = cfg.success$1; const traceParsers = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, (void 0), index, traceParsers, false) } else { const f = cfg.failure$1; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f, index, null, false) } }; } const $isArrayOf_Lfastparse_parsers_Terminals$End = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Terminals$End))) }); const $d_Lfastparse_parsers_Terminals$End = new $TypeData().initClass({ Lfastparse_parsers_Terminals$End: 0 }, false, "fastparse.parsers.Terminals$End", { Lfastparse_parsers_Terminals$End: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Terminals$End.prototype.$classData = $d_Lfastparse_parsers_Terminals$End; class $c_Lfastparse_parsers_Terminals$Fail extends $c_Lfastparse_core_Parser { constructor() { super(); this.toString$2 = null }; productPrefix__T() { return "Fail" }; productArity__I() { return 0 }; equals__O__Z(x$1) { return ((x$1 instanceof $c_Lfastparse_parsers_Terminals$Fail) && true) }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return this.toString$2 }; init___Lfastparse_utils_ReprOps(repr) { $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); this.toString$2 = "Fail"; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const f = cfg.failure$1; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f, index, null, false) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_parsers_Terminals$Fail = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Terminals$Fail))) }); const $d_Lfastparse_parsers_Terminals$Fail = new $TypeData().initClass({ Lfastparse_parsers_Terminals$Fail: 0 }, false, "fastparse.parsers.Terminals$Fail", { Lfastparse_parsers_Terminals$Fail: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Terminals$Fail.prototype.$classData = $d_Lfastparse_parsers_Terminals$Fail; class $c_Lfastparse_parsers_Terminals$Index extends $c_Lfastparse_core_Parser { productPrefix__T() { return "Index" }; productArity__I() { return 0 }; equals__O__Z(x$1) { return ((x$1 instanceof $c_Lfastparse_parsers_Terminals$Index) && true) }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable$Success(cfg, index) { const s = cfg.success$1; const traceParsers = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, index, index, traceParsers, false) }; init___Lfastparse_utils_ReprOps(repr) { $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { return this.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable$Success(cfg, index) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_parsers_Terminals$Index = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Terminals$Index))) }); const $d_Lfastparse_parsers_Terminals$Index = new $TypeData().initClass({ Lfastparse_parsers_Terminals$Index: 0 }, false, "fastparse.parsers.Terminals$Index", { Lfastparse_parsers_Terminals$Index: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Terminals$Index.prototype.$classData = $d_Lfastparse_parsers_Terminals$Index; class $c_Lfastparse_parsers_Terminals$Literal extends $c_Lfastparse_core_Parser { constructor() { super(); this.s$2 = null }; productPrefix__T() { return "Literal" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Terminals$Literal)) { const Literal$1 = x$1; return $m_sr_BoxesRunTime$().equals__O__O__Z(this.s$2, Literal$1.s$2) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.s$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { const this$1 = this.reprOps$1; const input = this.s$2; return this$1.literalize__T__T(input) }; init___O__Lfastparse_utils_ReprOps(s, repr) { this.s$2 = s; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const this$1 = $m_Lfastparse_parsers_Terminals$(); const src = cfg.input$1; const prefix = this.s$2; const repr = this.reprOps$1; if (this$1.rec$1__p1__I__Lfastparse_utils_ParserInput__O__I__Lfastparse_utils_ReprOps__Z(0, src, prefix, index, repr)) { const s = cfg.success$1; const value = this.s$2; const input = value; const index$1 = ((index + (input.length | 0)) | 0); const traceParsers = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, (void 0), index$1, traceParsers, false) } else { const f = cfg.failure$1; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f, index, null, false) } }; } const $isArrayOf_Lfastparse_parsers_Terminals$Literal = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Terminals$Literal))) }); const $d_Lfastparse_parsers_Terminals$Literal = new $TypeData().initClass({ Lfastparse_parsers_Terminals$Literal: 0 }, false, "fastparse.parsers.Terminals$Literal", { Lfastparse_parsers_Terminals$Literal: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Terminals$Literal.prototype.$classData = $d_Lfastparse_parsers_Terminals$Literal; class $c_Lfastparse_parsers_Terminals$Pass extends $c_Lfastparse_core_Parser { constructor() { super(); this.toString$2 = null }; productPrefix__T() { return "Pass" }; productArity__I() { return 0 }; equals__O__Z(x$1) { return ((x$1 instanceof $c_Lfastparse_parsers_Terminals$Pass) && true) }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return this.toString$2 }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable$Success(cfg, index) { const s = cfg.success$1; const traceParsers = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, (void 0), index, traceParsers, false) }; init___Lfastparse_utils_ReprOps(repr) { $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); this.toString$2 = "Pass"; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { return this.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable$Success(cfg, index) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_parsers_Terminals$Pass = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Terminals$Pass))) }); const $d_Lfastparse_parsers_Terminals$Pass = new $TypeData().initClass({ Lfastparse_parsers_Terminals$Pass: 0 }, false, "fastparse.parsers.Terminals$Pass", { Lfastparse_parsers_Terminals$Pass: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Terminals$Pass.prototype.$classData = $d_Lfastparse_parsers_Terminals$Pass; class $c_Lfastparse_parsers_Terminals$Start extends $c_Lfastparse_core_Parser { constructor() { super(); this.toString$2 = null }; productPrefix__T() { return "Start" }; productArity__I() { return 0 }; equals__O__Z(x$1) { return ((x$1 instanceof $c_Lfastparse_parsers_Terminals$Start) && true) }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return this.toString$2 }; init___Lfastparse_utils_ReprOps(repr) { $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); this.toString$2 = "Start"; return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { if ((index === 0)) { const s = cfg.success$1; const traceParsers = $m_sci_Set$EmptySet$(); return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, s, (void 0), index, traceParsers, false) } else { const f = cfg.failure$1; return $f_Lfastparse_core_ParserResults__fail__Lfastparse_core_Mutable$Failure__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, f, index, null, false) } }; } const $isArrayOf_Lfastparse_parsers_Terminals$Start = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Terminals$Start))) }); const $d_Lfastparse_parsers_Terminals$Start = new $TypeData().initClass({ Lfastparse_parsers_Terminals$Start: 0 }, false, "fastparse.parsers.Terminals$Start", { Lfastparse_parsers_Terminals$Start: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Terminals$Start.prototype.$classData = $d_Lfastparse_parsers_Terminals$Start; class $c_Lfastparse_parsers_Transformers$Mapper extends $c_Lfastparse_core_Parser { constructor() { super(); this.p$2 = null; this.f$2 = null }; productPrefix__T() { return "Mapper" }; init___Lfastparse_core_Parser__F1__Lfastparse_utils_ReprOps(p, f, repr) { this.p$2 = p; this.f$2 = f; $c_Lfastparse_core_Parser.prototype.init___Lfastparse_utils_ReprOps.call(this, repr); return this }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Transformers$Mapper)) { const Mapper$1 = x$1; const x = this.p$2; const x$2 = Mapper$1.p$2; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.f$2; const x$4 = Mapper$1.f$2; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.p$2; break } case 1: { return this.f$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return this.p$2.toString__T() }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { const x1 = this.p$2.parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index); if ((x1 instanceof $c_Lfastparse_core_Mutable$Success)) { const x2 = x1; const value = this.f$2.apply__O__O(x2.value$1); const index$1 = x2.index$1; const traceParsers = x2.traceParsers$1; const cut = x2.cut$1; return $f_Lfastparse_core_ParserResults__success__Lfastparse_core_Mutable$Success__O__I__sci_Set__Z__Lfastparse_core_Mutable$Success(this, x2, value, index$1, traceParsers, cut) } else if ((x1 instanceof $c_Lfastparse_core_Mutable$Failure)) { const x3 = x1; const logDepth = cfg.logDepth$1; return $f_Lfastparse_core_ParserResults__failMore__Lfastparse_core_Mutable$Failure__I__I__sci_Set__Z__Lfastparse_core_Mutable$Failure(this, x3, index, logDepth, null, false) } else { throw new $c_s_MatchError().init___O(x1) } }; } const $isArrayOf_Lfastparse_parsers_Transformers$Mapper = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Transformers$Mapper))) }); const $d_Lfastparse_parsers_Transformers$Mapper = new $TypeData().initClass({ Lfastparse_parsers_Transformers$Mapper: 0 }, false, "fastparse.parsers.Transformers$Mapper", { Lfastparse_parsers_Transformers$Mapper: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Transformers$Mapper.prototype.$classData = $d_Lfastparse_parsers_Transformers$Mapper; class $c_Lio_kaitai_struct_CompileLog$SpecSuccess extends $c_O { constructor() { super(); this.topLevelName$1 = null; this.files$1 = null }; productPrefix__T() { return "SpecSuccess" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_CompileLog$SpecSuccess)) { const SpecSuccess$1 = x$1; if ((this.topLevelName$1 === SpecSuccess$1.topLevelName$1)) { const x = this.files$1; const x$2 = SpecSuccess$1.files$1; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.topLevelName$1; break } case 1: { return this.files$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; init___T__sci_List(topLevelName, files) { this.topLevelName$1 = topLevelName; this.files$1 = files; return this }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_CompileLog$SpecSuccess = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_CompileLog$SpecSuccess))) }); const $d_Lio_kaitai_struct_CompileLog$SpecSuccess = new $TypeData().initClass({ Lio_kaitai_struct_CompileLog$SpecSuccess: 0 }, false, "io.kaitai.struct.CompileLog$SpecSuccess", { Lio_kaitai_struct_CompileLog$SpecSuccess: 1, O: 1, Lio_kaitai_struct_CompileLog$SpecEntry: 1, Lio_kaitai_struct_Jsonable: 1, Lio_kaitai_struct_CompileLog$CanHasErrors: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_CompileLog$SpecSuccess.prototype.$classData = $d_Lio_kaitai_struct_CompileLog$SpecSuccess; class $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream extends $c_Lio_kaitai_struct_datatype_DataType$ArrayType { productPrefix__T() { return "ArrayTypeInStream" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream)) { const ArrayTypeInStream$1 = x$1; const x = this.elType$2; const x$2 = ArrayTypeInStream$1.elType$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; asNonOwning__Lio_kaitai_struct_datatype_DataType() { return new $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType().init___Lio_kaitai_struct_datatype_DataType(this.elType$2) }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.elType$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; isOwning__Z() { return true }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; init___Lio_kaitai_struct_datatype_DataType(_elType) { $c_Lio_kaitai_struct_datatype_DataType$ArrayType.prototype.init___Lio_kaitai_struct_datatype_DataType.call(this, _elType); return this }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream))) }); const $d_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream: 0 }, false, "io.kaitai.struct.datatype.DataType$ArrayTypeInStream", { Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream: 1, Lio_kaitai_struct_datatype_DataType$ArrayType: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream; class $c_Lio_kaitai_struct_datatype_DataType$BitsType extends $c_Lio_kaitai_struct_datatype_DataType$IntType { constructor() { super(); this.width$3 = 0; this.bitEndian$3 = null }; productPrefix__T() { return "BitsType" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const BitsType$1 = x$1; if ((this.width$3 === BitsType$1.width$3)) { const x = this.bitEndian$3; const x$2 = BitsType$1.bitEndian$3; return (x === x$2) } else { return false } } else { return false } }; init___I__Lio_kaitai_struct_datatype_BitEndianness(width, bitEndian) { this.width$3 = width; this.bitEndian$3 = bitEndian; return this }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.width$3; break } case 1: { return this.bitEndian$3; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, this.width$3); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.bitEndian$3)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 2) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$BitsType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$BitsType))) }); const $d_Lio_kaitai_struct_datatype_DataType$BitsType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$BitsType: 0 }, false, "io.kaitai.struct.datatype.DataType$BitsType", { Lio_kaitai_struct_datatype_DataType$BitsType: 1, Lio_kaitai_struct_datatype_DataType$IntType: 1, Lio_kaitai_struct_datatype_DataType$NumericType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$BitsType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$BitsType; class $c_Lio_kaitai_struct_datatype_DataType$BytesEosType extends $c_Lio_kaitai_struct_datatype_DataType$BytesType { constructor() { super(); this.terminator$2 = null; this.include$2 = false; this.padRight$2 = null; this.process$2 = null }; productPrefix__T() { return "BytesEosType" }; productArity__I() { return 4 }; init___s_Option__Z__s_Option__s_Option(terminator, include, padRight, process) { this.terminator$2 = terminator; this.include$2 = include; this.padRight$2 = padRight; this.process$2 = process; return this }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { const BytesEosType$1 = x$1; const x = this.terminator$2; const x$2 = BytesEosType$1.terminator$2; let jsx$1; if ((((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) && (this.include$2 === BytesEosType$1.include$2))) { const x$3 = this.padRight$2; const x$4 = BytesEosType$1.padRight$2; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.process$2; const x$6 = BytesEosType$1.process$2; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.terminator$2; break } case 1: { return this.include$2; break } case 2: { return this.padRight$2; break } case 3: { return this.process$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; process__s_Option() { return this.process$2 }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.terminator$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.include$2 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.padRight$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.process$2)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 4) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$BytesEosType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$BytesEosType))) }); const $d_Lio_kaitai_struct_datatype_DataType$BytesEosType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$BytesEosType: 0 }, false, "io.kaitai.struct.datatype.DataType$BytesEosType", { Lio_kaitai_struct_datatype_DataType$BytesEosType: 1, Lio_kaitai_struct_datatype_DataType$BytesType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, Lio_kaitai_struct_datatype_DataType$Processing: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$BytesEosType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$BytesEosType; class $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType extends $c_Lio_kaitai_struct_datatype_DataType$BytesType { constructor() { super(); this.size$2 = null; this.terminator$2 = null; this.include$2 = false; this.padRight$2 = null; this.process$2 = null }; productPrefix__T() { return "BytesLimitType" }; productArity__I() { return 5 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const BytesLimitType$1 = x$1; const x = this.size$2; const x$2 = BytesLimitType$1.size$2; let jsx$2; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.terminator$2; const x$4 = BytesLimitType$1.terminator$2; jsx$2 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$2 = false }; let jsx$1; if ((jsx$2 && (this.include$2 === BytesLimitType$1.include$2))) { const x$5 = this.padRight$2; const x$6 = BytesLimitType$1.padRight$2; jsx$1 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$1 = false }; if (jsx$1) { const x$7 = this.process$2; const x$8 = BytesLimitType$1.process$2; return ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.size$2; break } case 1: { return this.terminator$2; break } case 2: { return this.include$2; break } case 3: { return this.padRight$2; break } case 4: { return this.process$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___Lio_kaitai_struct_exprlang_Ast$expr__s_Option__Z__s_Option__s_Option(size, terminator, include, padRight, process) { this.size$2 = size; this.terminator$2 = terminator; this.include$2 = include; this.padRight$2 = padRight; this.process$2 = process; return this }; process__s_Option() { return this.process$2 }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.size$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.terminator$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.include$2 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.padRight$2)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.process$2)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 5) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$BytesLimitType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$BytesLimitType))) }); const $d_Lio_kaitai_struct_datatype_DataType$BytesLimitType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$BytesLimitType: 0 }, false, "io.kaitai.struct.datatype.DataType$BytesLimitType", { Lio_kaitai_struct_datatype_DataType$BytesLimitType: 1, Lio_kaitai_struct_datatype_DataType$BytesType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, Lio_kaitai_struct_datatype_DataType$Processing: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$BytesLimitType; class $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType extends $c_Lio_kaitai_struct_datatype_DataType$BytesType { constructor() { super(); this.terminator$2 = 0; this.include$2 = false; this.consume$2 = false; this.eosError$2 = false; this.process$2 = null }; productPrefix__T() { return "BytesTerminatedType" }; productArity__I() { return 5 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const BytesTerminatedType$1 = x$1; if (((((this.terminator$2 === BytesTerminatedType$1.terminator$2) && (this.include$2 === BytesTerminatedType$1.include$2)) && (this.consume$2 === BytesTerminatedType$1.consume$2)) && (this.eosError$2 === BytesTerminatedType$1.eosError$2))) { const x = this.process$2; const x$2 = BytesTerminatedType$1.process$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.terminator$2; break } case 1: { return this.include$2; break } case 2: { return this.consume$2; break } case 3: { return this.eosError$2; break } case 4: { return this.process$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; process__s_Option() { return this.process$2 }; init___I__Z__Z__Z__s_Option(terminator, include, consume, eosError, process) { this.terminator$2 = terminator; this.include$2 = include; this.consume$2 = consume; this.eosError$2 = eosError; this.process$2 = process; return this }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, this.terminator$2); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.include$2 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.consume$2 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.eosError$2 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.process$2)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 5) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$BytesTerminatedType))) }); const $d_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$BytesTerminatedType: 0 }, false, "io.kaitai.struct.datatype.DataType$BytesTerminatedType", { Lio_kaitai_struct_datatype_DataType$BytesTerminatedType: 1, Lio_kaitai_struct_datatype_DataType$BytesType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, Lio_kaitai_struct_datatype_DataType$Processing: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType; class $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType extends $c_Lio_kaitai_struct_datatype_DataType$ArrayType { productPrefix__T() { return "CalcArrayType" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType)) { const CalcArrayType$1 = x$1; const x = this.elType$2; const x$2 = CalcArrayType$1.elType$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.elType$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; isOwning__Z() { return false }; init___Lio_kaitai_struct_datatype_DataType(_elType) { $c_Lio_kaitai_struct_datatype_DataType$ArrayType.prototype.init___Lio_kaitai_struct_datatype_DataType.call(this, _elType); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$CalcArrayType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$CalcArrayType))) }); const $d_Lio_kaitai_struct_datatype_DataType$CalcArrayType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$CalcArrayType: 0 }, false, "io.kaitai.struct.datatype.DataType$CalcArrayType", { Lio_kaitai_struct_datatype_DataType$CalcArrayType: 1, Lio_kaitai_struct_datatype_DataType$ArrayType: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$CalcArrayType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$CalcArrayType; class $c_Lio_kaitai_struct_datatype_DataType$CalcBytesType$ extends $c_Lio_kaitai_struct_datatype_DataType$BytesType { init___() { return this }; productPrefix__T() { return "CalcBytesType" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "CalcBytesType" }; process__s_Option() { return $m_s_None$() }; hashCode__I() { return (-1648870576) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$CalcBytesType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$CalcBytesType$: 0 }, false, "io.kaitai.struct.datatype.DataType$CalcBytesType$", { Lio_kaitai_struct_datatype_DataType$CalcBytesType$: 1, Lio_kaitai_struct_datatype_DataType$BytesType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, Lio_kaitai_struct_datatype_DataType$Processing: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$CalcBytesType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$CalcBytesType$; let $n_Lio_kaitai_struct_datatype_DataType$CalcBytesType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$CalcBytesType$)) { $n_Lio_kaitai_struct_datatype_DataType$CalcBytesType$ = new $c_Lio_kaitai_struct_datatype_DataType$CalcBytesType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$CalcBytesType$ }); class $c_Lio_kaitai_struct_datatype_DataType$CalcFloatType$ extends $c_Lio_kaitai_struct_datatype_DataType$FloatType { init___() { return this }; productPrefix__T() { return "CalcFloatType" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "CalcFloatType" }; hashCode__I() { return (-1726595903) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$CalcFloatType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$CalcFloatType$: 0 }, false, "io.kaitai.struct.datatype.DataType$CalcFloatType$", { Lio_kaitai_struct_datatype_DataType$CalcFloatType$: 1, Lio_kaitai_struct_datatype_DataType$FloatType: 1, Lio_kaitai_struct_datatype_DataType$NumericType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$CalcFloatType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$CalcFloatType$; let $n_Lio_kaitai_struct_datatype_DataType$CalcFloatType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$CalcFloatType$)) { $n_Lio_kaitai_struct_datatype_DataType$CalcFloatType$ = new $c_Lio_kaitai_struct_datatype_DataType$CalcFloatType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$CalcFloatType$ }); class $c_Lio_kaitai_struct_datatype_DataType$CalcIntType$ extends $c_Lio_kaitai_struct_datatype_DataType$IntType { init___() { return this }; productPrefix__T() { return "CalcIntType" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "CalcIntType" }; hashCode__I() { return 411596692 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$CalcIntType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$CalcIntType$: 0 }, false, "io.kaitai.struct.datatype.DataType$CalcIntType$", { Lio_kaitai_struct_datatype_DataType$CalcIntType$: 1, Lio_kaitai_struct_datatype_DataType$IntType: 1, Lio_kaitai_struct_datatype_DataType$NumericType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$CalcIntType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$CalcIntType$; let $n_Lio_kaitai_struct_datatype_DataType$CalcIntType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$CalcIntType$)) { $n_Lio_kaitai_struct_datatype_DataType$CalcIntType$ = new $c_Lio_kaitai_struct_datatype_DataType$CalcIntType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$CalcIntType$ }); class $c_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$ extends $c_Lio_kaitai_struct_datatype_DataType$StructType { init___() { return this }; productPrefix__T() { return "CalcKaitaiStructType" }; productArity__I() { return 0 }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "CalcKaitaiStructType" }; isOwning__Z() { return false }; hashCode__I() { return 54837005 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$: 0 }, false, "io.kaitai.struct.datatype.DataType$CalcKaitaiStructType$", { Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$: 1, Lio_kaitai_struct_datatype_DataType$StructType: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$; let $n_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$)) { $n_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$ = new $c_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$ }); class $c_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$ extends $c_Lio_kaitai_struct_datatype_DataType$StructType { init___() { return this }; productPrefix__T() { return "KaitaiStructType" }; productArity__I() { return 0 }; asNonOwning__Lio_kaitai_struct_datatype_DataType() { return $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$() }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; toString__T() { return "KaitaiStructType" }; isOwning__Z() { return true }; hashCode__I() { return 1461607064 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$ = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$KaitaiStructType$: 0 }, false, "io.kaitai.struct.datatype.DataType$KaitaiStructType$", { Lio_kaitai_struct_datatype_DataType$KaitaiStructType$: 1, Lio_kaitai_struct_datatype_DataType$StructType: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$; let $n_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$ = (void 0); const $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$ = (function() { if ((!$n_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$)) { $n_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$ = new $c_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$().init___() }; return $n_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$ }); class $c_Lio_kaitai_struct_format_AttrSpec extends $c_O { constructor() { super(); this.path$1 = null; this.id$1 = null; this.dataType$1 = null; this.cond$1 = null; this.valid$1 = null; this.doc$1 = null }; productPrefix__T() { return "AttrSpec" }; productArity__I() { return 6 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_AttrSpec)) { const AttrSpec$1 = x$1; const x = this.path$1; const x$2 = AttrSpec$1.path$1; let jsx$4; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.id$1; const x$4 = AttrSpec$1.id$1; jsx$4 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$4 = false }; let jsx$3; if (jsx$4) { const x$5 = this.dataType$1; const x$6 = AttrSpec$1.dataType$1; jsx$3 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$3 = false }; let jsx$2; if (jsx$3) { const x$7 = this.cond$1; const x$8 = AttrSpec$1.cond$1; jsx$2 = ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$9 = this.valid$1; const x$10 = AttrSpec$1.valid$1; jsx$1 = ((x$9 === null) ? (x$10 === null) : x$9.equals__O__Z(x$10)) } else { jsx$1 = false }; if (jsx$1) { const x$11 = this.doc$1; const x$12 = AttrSpec$1.doc$1; return ((x$11 === null) ? (x$12 === null) : x$11.equals__O__Z(x$12)) } else { return false } } else { return false } }; init___sci_List__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__Lio_kaitai_struct_format_DocSpec(path, id, dataType, cond, valid, doc) { this.path$1 = path; this.id$1 = id; this.dataType$1 = dataType; this.cond$1 = cond; this.valid$1 = valid; this.doc$1 = doc; return this }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.path$1; break } case 1: { return this.id$1; break } case 2: { return this.dataType$1; break } case 3: { return this.cond$1; break } case 4: { return this.valid$1; break } case 5: { return this.doc$1; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; dataType__Lio_kaitai_struct_datatype_DataType() { return this.dataType$1 }; id__Lio_kaitai_struct_format_Identifier() { return this.id$1 }; isNullable__Z() { return $f_Lio_kaitai_struct_format_AttrLikeSpec__isNullable__Z(this) }; isNullableSwitchRaw__Z() { return $f_Lio_kaitai_struct_format_AttrLikeSpec__isNullableSwitchRaw__Z(this) }; isLazy__Z() { return false }; path__sci_List() { return this.path$1 }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; doc__Lio_kaitai_struct_format_DocSpec() { return this.doc$1 }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; valid__s_Option() { return this.valid$1 }; dataTypeComposite__Lio_kaitai_struct_datatype_DataType() { return $f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(this) }; cond__Lio_kaitai_struct_format_ConditionalSpec() { return this.cond$1 }; } const $isArrayOf_Lio_kaitai_struct_format_AttrSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_AttrSpec))) }); const $d_Lio_kaitai_struct_format_AttrSpec = new $TypeData().initClass({ Lio_kaitai_struct_format_AttrSpec: 0 }, false, "io.kaitai.struct.format.AttrSpec", { Lio_kaitai_struct_format_AttrSpec: 1, O: 1, Lio_kaitai_struct_format_AttrLikeSpec: 1, Lio_kaitai_struct_format_MemberSpec: 1, Lio_kaitai_struct_format_YAMLPath: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_AttrSpec.prototype.$classData = $d_Lio_kaitai_struct_format_AttrSpec; class $c_Lio_kaitai_struct_format_InvalidIdentifier extends $c_jl_RuntimeException { constructor() { super(); this.id$4 = null }; productPrefix__T() { return "InvalidIdentifier" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_InvalidIdentifier)) { const InvalidIdentifier$1 = x$1; return (this.id$4 === InvalidIdentifier$1.id$4) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.id$4; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___T(id) { this.id$4 = id; const this$1 = $m_Lio_kaitai_struct_format_Identifier$().ReIdentifier$1; const s = (((("invalid ID: '" + id) + "', expected /") + this$1.pattern$1.$$undpattern$1) + "/"); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_format_InvalidIdentifier = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_InvalidIdentifier))) }); const $d_Lio_kaitai_struct_format_InvalidIdentifier = new $TypeData().initClass({ Lio_kaitai_struct_format_InvalidIdentifier: 0 }, false, "io.kaitai.struct.format.InvalidIdentifier", { Lio_kaitai_struct_format_InvalidIdentifier: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1 }); $c_Lio_kaitai_struct_format_InvalidIdentifier.prototype.$classData = $d_Lio_kaitai_struct_format_InvalidIdentifier; class $c_Lio_kaitai_struct_format_ValueInstanceSpec extends $c_Lio_kaitai_struct_format_InstanceSpec { constructor() { super(); this.id$2 = null; this.path$2 = null; this.value$2 = null; this.ifExpr$2 = null; this.dataTypeOpt$2 = null }; productPrefix__T() { return "ValueInstanceSpec" }; productArity__I() { return 6 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) { const ValueInstanceSpec$1 = x$1; const x = this.id$2; const x$2 = ValueInstanceSpec$1.id$2; let jsx$4; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.path$2; const x$4 = ValueInstanceSpec$1.path$2; jsx$4 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$4 = false }; let jsx$3; if (jsx$4) { const x$5 = this.doc$1; const x$6 = ValueInstanceSpec$1.doc$1; jsx$3 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$3 = false }; let jsx$2; if (jsx$3) { const x$7 = this.value$2; const x$8 = ValueInstanceSpec$1.value$2; jsx$2 = ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$9 = this.ifExpr$2; const x$10 = ValueInstanceSpec$1.ifExpr$2; jsx$1 = ((x$9 === null) ? (x$10 === null) : x$9.equals__O__Z(x$10)) } else { jsx$1 = false }; if (jsx$1) { const x$11 = this.dataTypeOpt$2; const x$12 = ValueInstanceSpec$1.dataTypeOpt$2; return ((x$11 === null) ? (x$12 === null) : x$11.equals__O__Z(x$12)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.id$2; break } case 1: { return this.path$2; break } case 2: { return this.doc$1; break } case 3: { return this.value$2; break } case 4: { return this.ifExpr$2; break } case 5: { return this.dataTypeOpt$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; dataType__Lio_kaitai_struct_datatype_DataType() { const x1 = this.dataTypeOpt$2; if ((x1 instanceof $c_s_Some)) { const x2 = x1; const t = x2.value$2; return t } else { const x = $m_s_None$(); if ((x === x1)) { throw new $c_Lio_kaitai_struct_precompile_TypeUndecidedError().init___T(this.id$2.name$2) } else { throw new $c_s_MatchError().init___O(x1) } } }; id__Lio_kaitai_struct_format_Identifier() { return this.id$2 }; init___Lio_kaitai_struct_format_InstanceIdentifier__sci_List__Lio_kaitai_struct_format_DocSpec__Lio_kaitai_struct_exprlang_Ast$expr__s_Option__s_Option(id, path, _doc, value, ifExpr, dataTypeOpt) { this.id$2 = id; this.path$2 = path; this.value$2 = value; this.ifExpr$2 = ifExpr; this.dataTypeOpt$2 = dataTypeOpt; $c_Lio_kaitai_struct_format_InstanceSpec.prototype.init___Lio_kaitai_struct_format_DocSpec.call(this, _doc); return this }; isNullable__Z() { return this.ifExpr$2.isDefined__Z() }; isNullableSwitchRaw__Z() { return this.ifExpr$2.isDefined__Z() }; path__sci_List() { return this.path$2 }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; dataTypeComposite__Lio_kaitai_struct_datatype_DataType() { return this.dataType__Lio_kaitai_struct_datatype_DataType() }; } const $isArrayOf_Lio_kaitai_struct_format_ValueInstanceSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ValueInstanceSpec))) }); const $d_Lio_kaitai_struct_format_ValueInstanceSpec = new $TypeData().initClass({ Lio_kaitai_struct_format_ValueInstanceSpec: 0 }, false, "io.kaitai.struct.format.ValueInstanceSpec", { Lio_kaitai_struct_format_ValueInstanceSpec: 1, Lio_kaitai_struct_format_InstanceSpec: 1, O: 1, Lio_kaitai_struct_format_MemberSpec: 1, Lio_kaitai_struct_format_YAMLPath: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ValueInstanceSpec.prototype.$classData = $d_Lio_kaitai_struct_format_ValueInstanceSpec; class $c_Lio_kaitai_struct_precompile_InternalCompilerError extends $c_jl_RuntimeException { constructor() { super(); this.msg$4 = null }; productPrefix__T() { return "InternalCompilerError" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_precompile_InternalCompilerError)) { const InternalCompilerError$1 = x$1; return (this.msg$4 === InternalCompilerError$1.msg$4) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.msg$4; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___T(msg) { this.msg$4 = msg; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, msg, null, true, true); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_precompile_InternalCompilerError = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_precompile_InternalCompilerError))) }); const $d_Lio_kaitai_struct_precompile_InternalCompilerError = new $TypeData().initClass({ Lio_kaitai_struct_precompile_InternalCompilerError: 0 }, false, "io.kaitai.struct.precompile.InternalCompilerError", { Lio_kaitai_struct_precompile_InternalCompilerError: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1 }); $c_Lio_kaitai_struct_precompile_InternalCompilerError.prototype.$classData = $d_Lio_kaitai_struct_precompile_InternalCompilerError; class $c_Lio_kaitai_struct_problems_CompilationProblemException extends $c_jl_RuntimeException { constructor() { super(); this.problem$4 = null }; productPrefix__T() { return "CompilationProblemException" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_problems_CompilationProblemException)) { const CompilationProblemException$1 = x$1; const x = this.problem$4; const x$2 = CompilationProblemException$1.problem$4; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.problem$4; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; localizedInType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_problems_CompilationProblemException(typeSpec) { return new $c_Lio_kaitai_struct_problems_CompilationProblemException().init___Lio_kaitai_struct_problems_CompilationProblem(this.problem$4.localizedInType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_problems_CompilationProblem(typeSpec)) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; init___Lio_kaitai_struct_problems_CompilationProblem(problem) { this.problem$4 = problem; const s = problem.message__T(); $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, s, null, true, true); return this }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_problems_CompilationProblemException = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_CompilationProblemException))) }); const $d_Lio_kaitai_struct_problems_CompilationProblemException = new $TypeData().initClass({ Lio_kaitai_struct_problems_CompilationProblemException: 0 }, false, "io.kaitai.struct.problems.CompilationProblemException", { Lio_kaitai_struct_problems_CompilationProblemException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1 }); $c_Lio_kaitai_struct_problems_CompilationProblemException.prototype.$classData = $d_Lio_kaitai_struct_problems_CompilationProblemException; class $c_Lio_kaitai_struct_problems_StyleWarningRepeatExprNum extends $c_Lio_kaitai_struct_problems_StyleWarning { constructor() { super(); this.goodName$3 = null; this.badName$3 = null; this.becauseOfName$3 = null }; productPrefix__T() { return "StyleWarningRepeatExprNum" }; productArity__I() { return 4 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_problems_StyleWarningRepeatExprNum)) { const StyleWarningRepeatExprNum$1 = x$1; if ((((this.goodName$3 === StyleWarningRepeatExprNum$1.goodName$3) && (this.badName$3 === StyleWarningRepeatExprNum$1.badName$3)) && (this.becauseOfName$3 === StyleWarningRepeatExprNum$1.becauseOfName$3))) { const x = this.coords$2; const x$2 = StyleWarningRepeatExprNum$1.coords$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.goodName$3; break } case 1: { return this.badName$3; break } case 2: { return this.becauseOfName$3; break } case 3: { return this.coords$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; coords__Lio_kaitai_struct_problems_ProblemCoords() { return this.coords$2 }; localizedInFile__T__Lio_kaitai_struct_problems_CompilationProblem(fileName) { const file = new $c_s_Some().init___O(fileName); const this$1 = this.coords$2; const path = this$1.path$1; const this$2 = this.coords$2; const line = this$2.line$1; const this$3 = this.coords$2; const col = this$3.col$1; const x$1 = new $c_Lio_kaitai_struct_problems_ProblemCoords().init___s_Option__s_Option__s_Option__s_Option(file, path, line, col); const x$2 = this.goodName$3; const x$3 = this.badName$3; const x$4 = this.becauseOfName$3; return new $c_Lio_kaitai_struct_problems_StyleWarningRepeatExprNum().init___T__T__T__Lio_kaitai_struct_problems_ProblemCoords(x$2, x$3, x$4, x$1) }; init___T__T__T__Lio_kaitai_struct_problems_ProblemCoords(goodName, badName, becauseOfName, coords) { this.goodName$3 = goodName; this.badName$3 = badName; this.becauseOfName$3 = becauseOfName; $c_Lio_kaitai_struct_problems_StyleWarning.prototype.init___Lio_kaitai_struct_problems_ProblemCoords.call(this, coords); return this }; warningText__T() { return (((((("use `" + this.goodName$3) + "` instead of `") + this.badName$3) + "`, given that it's only used as repeat count of `") + this.becauseOfName$3) + "`") }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; styleGuideAnchor__T() { return "attr-id" }; } const $isArrayOf_Lio_kaitai_struct_problems_StyleWarningRepeatExprNum = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_StyleWarningRepeatExprNum))) }); const $d_Lio_kaitai_struct_problems_StyleWarningRepeatExprNum = new $TypeData().initClass({ Lio_kaitai_struct_problems_StyleWarningRepeatExprNum: 0 }, false, "io.kaitai.struct.problems.StyleWarningRepeatExprNum", { Lio_kaitai_struct_problems_StyleWarningRepeatExprNum: 1, Lio_kaitai_struct_problems_StyleWarning: 1, Lio_kaitai_struct_problems_CompilationProblem: 1, O: 1, Lio_kaitai_struct_Jsonable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_StyleWarningRepeatExprNum.prototype.$classData = $d_Lio_kaitai_struct_problems_StyleWarningRepeatExprNum; class $c_Lio_kaitai_struct_problems_StyleWarningSizeLen extends $c_Lio_kaitai_struct_problems_StyleWarning { constructor() { super(); this.goodName$3 = null; this.badName$3 = null; this.becauseOfName$3 = null }; productPrefix__T() { return "StyleWarningSizeLen" }; productArity__I() { return 4 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_problems_StyleWarningSizeLen)) { const StyleWarningSizeLen$1 = x$1; if ((((this.goodName$3 === StyleWarningSizeLen$1.goodName$3) && (this.badName$3 === StyleWarningSizeLen$1.badName$3)) && (this.becauseOfName$3 === StyleWarningSizeLen$1.becauseOfName$3))) { const x = this.coords$2; const x$2 = StyleWarningSizeLen$1.coords$2; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.goodName$3; break } case 1: { return this.badName$3; break } case 2: { return this.becauseOfName$3; break } case 3: { return this.coords$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; coords__Lio_kaitai_struct_problems_ProblemCoords() { return this.coords$2 }; localizedInFile__T__Lio_kaitai_struct_problems_CompilationProblem(fileName) { const file = new $c_s_Some().init___O(fileName); const this$1 = this.coords$2; const path = this$1.path$1; const this$2 = this.coords$2; const line = this$2.line$1; const this$3 = this.coords$2; const col = this$3.col$1; const x$1 = new $c_Lio_kaitai_struct_problems_ProblemCoords().init___s_Option__s_Option__s_Option__s_Option(file, path, line, col); const x$2 = this.goodName$3; const x$3 = this.badName$3; const x$4 = this.becauseOfName$3; return new $c_Lio_kaitai_struct_problems_StyleWarningSizeLen().init___T__T__T__Lio_kaitai_struct_problems_ProblemCoords(x$2, x$3, x$4, x$1) }; init___T__T__T__Lio_kaitai_struct_problems_ProblemCoords(goodName, badName, becauseOfName, coords) { this.goodName$3 = goodName; this.badName$3 = badName; this.becauseOfName$3 = becauseOfName; $c_Lio_kaitai_struct_problems_StyleWarning.prototype.init___Lio_kaitai_struct_problems_ProblemCoords.call(this, coords); return this }; warningText__T() { return (((((("use `" + this.goodName$3) + "` instead of `") + this.badName$3) + "`, given that it's only used as a byte size of `") + this.becauseOfName$3) + "`") }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; styleGuideAnchor__T() { return "attr-id" }; } const $isArrayOf_Lio_kaitai_struct_problems_StyleWarningSizeLen = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_StyleWarningSizeLen))) }); const $d_Lio_kaitai_struct_problems_StyleWarningSizeLen = new $TypeData().initClass({ Lio_kaitai_struct_problems_StyleWarningSizeLen: 0 }, false, "io.kaitai.struct.problems.StyleWarningSizeLen", { Lio_kaitai_struct_problems_StyleWarningSizeLen: 1, Lio_kaitai_struct_problems_StyleWarning: 1, Lio_kaitai_struct_problems_CompilationProblem: 1, O: 1, Lio_kaitai_struct_Jsonable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_problems_StyleWarningSizeLen.prototype.$classData = $d_Lio_kaitai_struct_problems_StyleWarningSizeLen; class $c_Lio_kaitai_struct_translators_BaseTranslator extends $c_Lio_kaitai_struct_translators_TypeDetector { constructor() { super(); this.provider$2 = null; this.asciiCharQuoteMap$2 = null }; doNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { return $f_Lio_kaitai_struct_translators_CommonOps__doNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; io$kaitai$struct$translators$CommonLiterals$$undsetter$und$asciiCharQuoteMap$und$eq__sci_Map__V(x$1) { this.asciiCharQuoteMap$2 = x$1 }; doIntLiteral__s_math_BigInt__T(n) { const this$1 = n.bigInteger$3; return $m_Ljava_math_Conversion$().toDecimalScaledString__Ljava_math_BigInteger__T(this$1) }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; byteSizeOfValue__T__Lio_kaitai_struct_datatype_DataType__T(attrName, valType) { const this$1 = $m_s_math_BigInt$(); const i = $m_Lio_kaitai_struct_translators_CommonSizeOf$().bitToByteSize__I__I($m_Lio_kaitai_struct_translators_CommonSizeOf$().getBitsSizeOfType__T__Lio_kaitai_struct_datatype_DataType__I(attrName, valType)); return this.doIntLiteral__s_math_BigInt__T(this$1.apply__I__s_math_BigInt(i)) }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__T(elts) }; kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return this.anyField__Lio_kaitai_struct_exprlang_Ast$expr__T__T(value, "pos") }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__O(value, typeName) { return this.doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; bytesToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, expr) { return this.bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value), expr) }; strLiteralUnicode__C__T(code) { return $f_Lio_kaitai_struct_translators_CommonLiterals__strLiteralUnicode__C__T(this, code) }; doBoolLiteral__Z__T(n) { return ("" + n) }; asciiCharQuoteMap__sci_Map() { return this.asciiCharQuoteMap$2 }; binOp__Lio_kaitai_struct_exprlang_Ast$operator__T(op) { return $f_Lio_kaitai_struct_translators_CommonOps__binOp__Lio_kaitai_struct_exprlang_Ast$operator__T(this, op) }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(container, idx) { return this.arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("[" + value.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "]") }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { const this$1 = $m_s_math_BigInt$(); const jsx$1 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(this$1.apply__I__s_math_BigInt(1)); const this$2 = $m_s_math_BigInt$(); return this.doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, jsx$1, new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(this$2.apply__I__s_math_BigInt(0))) }; doByteSizeOfType__Lio_kaitai_struct_exprlang_Ast$typeId__T(typeName) { const this$1 = $m_s_math_BigInt$(); const i = $m_Lio_kaitai_struct_translators_CommonSizeOf$().bitToByteSize__I__I($m_Lio_kaitai_struct_translators_CommonSizeOf$().getBitsSizeOfType__T__Lio_kaitai_struct_datatype_DataType__I(typeName.nameAsStr__T(), this.detectCastType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName))); return this.doIntLiteral__s_math_BigInt__T(this$1.apply__I__s_math_BigInt(i)) }; init___Lio_kaitai_struct_translators_TypeProvider(provider) { this.provider$2 = provider; $c_Lio_kaitai_struct_translators_TypeDetector.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); $f_Lio_kaitai_struct_translators_CommonLiterals__$$init$__V(this); return this }; doByteArrayNonLiteral__sc_Seq__T(elts) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; doLocalName__T__T(s) { return this.doName__T__T(s) }; unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T(op) { return $f_Lio_kaitai_struct_translators_CommonOps__unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T(this, op) }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) { return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; booleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__T(op) { return $f_Lio_kaitai_struct_translators_CommonOps__booleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__T(this, op) }; kaitaiStructField__Lio_kaitai_struct_exprlang_Ast$expr__T__O(value, name) { return this.anyField__Lio_kaitai_struct_exprlang_Ast$expr__T__T(value, name) }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return this.anyField__Lio_kaitai_struct_exprlang_Ast$expr__T__T(value, "size") }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; doBitSizeOfType__Lio_kaitai_struct_exprlang_Ast$typeId__T(typeName) { const this$1 = $m_s_math_BigInt$(); const i = $m_Lio_kaitai_struct_translators_CommonSizeOf$().getBitsSizeOfType__T__Lio_kaitai_struct_datatype_DataType__I(typeName.nameAsStr__T(), this.detectCastType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName)); return this.doIntLiteral__s_math_BigInt__T(this$1.apply__I__s_math_BigInt(i)) }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return this.anyField__Lio_kaitai_struct_exprlang_Ast$expr__T__T(value, "is_eof") }; byteSizeOfClassSpec__Lio_kaitai_struct_format_ClassSpec__T(cs) { const this$1 = $m_s_math_BigInt$(); const i = $m_Lio_kaitai_struct_translators_CommonSizeOf$().getByteSizeOfClassSpec__Lio_kaitai_struct_format_ClassSpec__I(cs); return this.doIntLiteral__s_math_BigInt__T(this$1.apply__I__s_math_BigInt(i)) }; cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(op) { return $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op) }; anyField__Lio_kaitai_struct_exprlang_Ast$expr__T__T(value, attrName) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ".") + this.doName__T__T(attrName)) }; byteSizeOfValue__T__Lio_kaitai_struct_datatype_DataType__O(attrName, valType) { return this.byteSizeOfValue__T__Lio_kaitai_struct_datatype_DataType__T(attrName, valType) }; doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { return $f_Lio_kaitai_struct_translators_CommonOps__doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) }; doBytesCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { return $f_Lio_kaitai_struct_translators_CommonOps__doBytesCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { return $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) }; strLiteralGenericCC__C__T(code) { return $f_Lio_kaitai_struct_translators_CommonLiterals__strLiteralGenericCC__C__T(this, code) }; doByteArrayLiteral__sc_Seq__T(arr) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$1$2) { const x$1 = (x$1$2 | 0); return (255 & x$1) }) })(this)); const this$1 = $m_sc_Seq$(); return (("[" + arr.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "]") }; kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__O(t, value) { return this.doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) }; bytesToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, expr) { return this.bytesToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, expr) }; userTypeField__Lio_kaitai_struct_datatype_DataType$UserType__Lio_kaitai_struct_exprlang_Ast$expr__T__O(ut, value, name) { return this.anyField__Lio_kaitai_struct_exprlang_Ast$expr__T__T(value, name) }; translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum)) { const x2 = v; const n = x2.n$1; return this.doIntLiteral__s_math_BigInt__T(n) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum)) { const x3 = v; const n$2 = x3.n$1; return n$2.bigDecimal$3.toString__T() }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Str)) { const x4 = v; const s = x4.s$1; return this.doStringLiteral__T__T(s) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool)) { const x5 = v; const n$3 = x5.n$1; return this.doBoolLiteral__Z__T(n$3) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById)) { const x6 = v; const enumType = x6.enumName$1; const id = x6.id$1; const inType = x6.inType$1; const enumSpec = this.provider$2.resolveEnum__Lio_kaitai_struct_exprlang_Ast$typeId__T__Lio_kaitai_struct_format_EnumSpec(inType, enumType.name$1); return this.doEnumById__sci_List__T__T(enumSpec.name$1, this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(id)) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel)) { const x7 = v; const enumType$2 = x7.enumName$1; const label = x7.label$1; const inType$2 = x7.inType$1; const enumSpec$2 = this.provider$2.resolveEnum__Lio_kaitai_struct_exprlang_Ast$typeId__T__Lio_kaitai_struct_format_EnumSpec(inType$2, enumType$2.name$1); return this.doEnumByLabel__sci_List__T__T(enumSpec$2.name$1, label.name$1) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Name)) { const x8 = v; const name = x8.id$1; if ((name !== null)) { return ((name.name$1 === $m_Lio_kaitai_struct_format_Identifier$().SIZEOF$1) ? this.byteSizeOfClassSpec__Lio_kaitai_struct_format_ClassSpec__T(this.provider$2.nowClass$1) : this.doLocalName__T__T(name.name$1)) } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp)) { const x9 = v; const op = x9.op$1; const inner = x9.operand$1; if ((op !== null)) { if ((inner !== null)) { return (("" + this.unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T(op)) + (((inner instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum) || (inner instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum)) ? this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(inner) : (("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(inner)) + ")"))) } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare)) { const x10 = v; const left = x10.left$1; const op$2 = x10.ops$1; const right = x10.right$1; if ((left !== null)) { if ((op$2 !== null)) { if ((right !== null)) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType))) { return this.doNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op$2, right) }; if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType))) { const x = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(); let jsx$1; if ((x === op$2)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$(); jsx$1 = (x$3 === op$2) }; if (jsx$1) { return this.doNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op$2, right) } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((("can't compare booleans using " + op$2) + " operator")) } }; if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType))) { return this.doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op$2, right) }; if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { return this.doBytesCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op$2, right) }; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x18$2 = _1; if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x19$2 = _2; const et1Spec = x18$2.enumSpec$1.get__O(); const et2Spec = x19$2.enumSpec$1.get__O(); if ((!((et1Spec === null) ? (et2Spec === null) : et1Spec.equals__O__Z(et2Spec)))) { const this$1 = et1Spec.name$1; const jsx$2 = $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", ""); const this$2 = et2Spec.name$1; throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((("can't compare enums type " + jsx$2) + " and ") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$2, "", "::", ""))) } else { return $f_Lio_kaitai_struct_translators_CommonOps__doEnumCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op$2, right) } } }; throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((("can't compare " + _1) + " and ") + _2)) } } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BinOp)) { const x11 = v; const left$2 = x11.left$1; const op$3 = x11.op$1; const right$2 = x11.right$1; if ((left$2 !== null)) { if ((op$3 !== null)) { if ((right$2 !== null)) { const _1$1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left$2); const _2$1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right$2); if (((_1$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType) && (_2$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType))) { return this.numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left$2, op$3, right$2) } else { let jsx$3; if ((_1$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { if ((_2$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { const x$7 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Add$(); jsx$3 = (x$7 === op$3) } else { jsx$3 = false } } else { jsx$3 = false }; if (jsx$3) { return this.strConcat__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(left$2, right$2) } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((((("can't do " + _1$1) + " ") + op$3) + " ") + _2$1)) } } } } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp)) { const x12 = v; const op$4 = x12.op$1; const values = x12.values$1; if ((op$4 !== null)) { if ((values !== null)) { return $f_Lio_kaitai_struct_translators_CommonOps__doBooleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__sc_Seq__T(this, op$4, values) } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IfExp)) { const x13 = v; const condition = x13.condition$1; const ifTrue = x13.ifTrue$1; const ifFalse = x13.ifFalse$1; return this.doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Subscript)) { const x14 = v; const container = x14.value$1; const idx = x14.idx$1; if ((container !== null)) { if ((idx !== null)) { const x1$6 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(idx); if ((x1$6 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x1$7 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(container); if ((x1$7 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { return this.arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) } else if ((x1$7 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { return this.bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(container, idx) } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((("can't index " + x1$7) + " as array")) } } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T((((("can't use " + idx) + " as array index (need int, got ") + x1$6) + ")")) } } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute)) { const x31 = v; return $f_Lio_kaitai_struct_translators_CommonMethods__translateAttribute__Lio_kaitai_struct_exprlang_Ast$expr$Attribute__O(this, x31) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Call)) { const x32 = v; return $f_Lio_kaitai_struct_translators_CommonMethods__translateCall__Lio_kaitai_struct_exprlang_Ast$expr$Call__O(this, x32) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$List)) { const x15 = v; const values$2 = x15.elts$1; if ((values$2 !== null)) { return $f_Lio_kaitai_struct_translators_CommonArraysAndCast__doGuessArrayLiteral__sc_Seq__O(this, values$2) } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$CastToType)) { const x34 = v; return $f_Lio_kaitai_struct_translators_CommonArraysAndCast__doCastOrArray__Lio_kaitai_struct_exprlang_Ast$expr$CastToType__O(this, x34) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType)) { const x16 = v; const typeName = x16.typeName$1; return this.doByteSizeOfType__Lio_kaitai_struct_exprlang_Ast$typeId__T(typeName) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType)) { const x17 = v; const typeName$2 = x17.typeName$1; return this.doBitSizeOfType__Lio_kaitai_struct_exprlang_Ast$typeId__T(typeName$2) }; throw new $c_s_MatchError().init___O(v) }; strConcat__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(left, right) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " + ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) }; doStringLiteral__T__T(s) { return $f_Lio_kaitai_struct_translators_CommonLiterals__doStringLiteral__T__T(this, s) }; } class $c_Lio_kaitai_struct_translators_GoTranslator extends $c_Lio_kaitai_struct_translators_TypeDetector { constructor() { super(); this.out$2 = null; this.provider$2 = null; this.importList$2 = null; this.returnRes$2 = null; this.IMPORT$undCHARMAP$2 = null; this.ENCODINGS$2 = null; this.localVarNum$2 = 0; this.asciiCharQuoteMap$2 = null }; trStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left, op, right) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T($f_Lio_kaitai_struct_translators_CommonOps__doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right)) }; userTypeField__Lio_kaitai_struct_datatype_DataType$UserType__Lio_kaitai_struct_exprlang_Ast$expr__T__Lio_kaitai_struct_translators_TranslatorResult(ut, value, name) { const valueStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value); let x1$2_$_$$und1$f; let x1$2_$_$$und2$f; if ((($m_Lio_kaitai_struct_format_Identifier$().ROOT$1 === name) || (($m_Lio_kaitai_struct_format_Identifier$().PARENT$1 === name) || ($m_Lio_kaitai_struct_format_Identifier$().IO$1 === name)))) { const _1 = this.specialName__T__T(name); const jsx$1_$_$$und1$f = _1; const jsx$1_$_$$und2$f = false; x1$2_$_$$und1$f = jsx$1_$_$$und1$f; x1$2_$_$$und2$f = jsx$1_$_$$und2$f } else { const _1$1 = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name); const _2 = this.provider$2.isLazy__Lio_kaitai_struct_format_ClassSpec__T__Z(ut.classSpec$3.get__O(), name); const jsx$2_$_$$und1$f = _1$1; const jsx$2_$_$$und2$f = _2; x1$2_$_$$und1$f = jsx$2_$_$$und1$f; x1$2_$_$$und2$f = jsx$2_$_$$und2$f }; const call = x1$2_$_$$und1$f; const twoOuts = (!(!x1$2_$_$$und2$f)); return (twoOuts ? this.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar((((valueStr + ".") + call) + "()")) : new $c_Lio_kaitai_struct_translators_ResultString().init___T(((valueStr + ".") + call))) }; trStringLiteral__T__Lio_kaitai_struct_translators_TranslatorResult(s) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T($f_Lio_kaitai_struct_translators_CommonLiterals__doStringLiteral__T__T(this, s)) }; io$kaitai$struct$translators$CommonLiterals$$undsetter$und$asciiCharQuoteMap$und$eq__sci_Map__V(x$1) { this.asciiCharQuoteMap$2 = x$1 }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(value) }; trIntLiteral__s_math_BigInt__Lio_kaitai_struct_translators_TranslatorResult(n) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T(this.doIntLiteral__s_math_BigInt__T(n)) }; doIntLiteral__s_math_BigInt__T(n) { const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(0, (-2147483648))); if ($f_s_math_Ordered__$$less__O__Z(n, that)) { return ("" + n) } else { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(2147483647, (-1))); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$1)) { return (("int64(" + n) + ")") } else { const this$3 = $m_s_math_BigInt$(); const that$2 = this$3.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(2147483647, 0)); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$2)) { return ("" + n) } else { const this$4 = $m_s_math_BigInt$(); const that$3 = this$4.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I((-1), 0)); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$3)) { return (("uint32(" + n) + ")") } else { const this$5 = $m_s_math_BigInt$(); const that$4 = this$5.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I((-1), 2147483647)); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$4)) { return (("int64(" + n) + ")") } else { const that$5 = $m_Lio_kaitai_struct_Utils$().MAX$undUINT64$1; if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$5)) { return (("uint64(" + n) + ")") } else { return ("" + n) } } } } } } }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(value) { const v = this.allocateLocalVar__I(); this.out$2.puts__T__V((this.localVarName__I__T(v) + " := 0")); this.out$2.puts__T__V((("if " + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V((this.localVarName__I__T(v) + " = 1")); this.out$2.dec__V(); this.out$2.puts__T__V("}"); return new $c_Lio_kaitai_struct_translators_ResultLocalVar().init___I(v) }; allocateLocalVar__I() { this.localVarNum$2 = ((1 + this.localVarNum$2) | 0); return this.localVarNum$2 }; resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(r) { if ((r instanceof $c_Lio_kaitai_struct_translators_ResultString)) { const x2 = r; const s = x2.s$1; return s } else if ((r instanceof $c_Lio_kaitai_struct_translators_ResultLocalVar)) { const x3 = r; const n = x3.n$1; return this.localVarName__I__T(n) } else { throw new $c_s_MatchError().init___O(r) } }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(s, from, to) }; trIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(condition, ifTrue, ifFalse) { const v1 = this.allocateLocalVar__I(); const typ = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(ifTrue); this.out$2.puts__T__V((((("var " + this.localVarName__I__T(v1)) + " ") + $m_Lio_kaitai_struct_languages_GoCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(typ)) + ";")); this.out$2.puts__T__V((("if (" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + ") {")); this.out$2.inc__V(); this.out$2.puts__T__V(((this.localVarName__I__T(v1) + " = ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue))); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); this.out$2.puts__T__V(((this.localVarName__I__T(v1) + " = ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse))); this.out$2.dec__V(); this.out$2.puts__T__V("}"); return new $c_Lio_kaitai_struct_translators_ResultLocalVar().init___I(v1) }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(b) }; init___Lio_kaitai_struct_StringLanguageOutputWriter__Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(out, provider, importList) { this.out$2 = out; this.provider$2 = provider; this.importList$2 = importList; $c_Lio_kaitai_struct_translators_TypeDetector.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); $f_Lio_kaitai_struct_translators_CommonLiterals__$$init$__V(this); this.returnRes$2 = $m_s_None$(); this.IMPORT$undCHARMAP$2 = "golang.org/x/text/encoding/charmap"; const y = new $c_T2().init___O__O("charmap.CodePage437", this.IMPORT$undCHARMAP$2); const jsx$6 = new $c_T2().init___O__O("cp437", y); const y$1 = new $c_T2().init___O__O("charmap.ISO8859_1", this.IMPORT$undCHARMAP$2); const jsx$5 = new $c_T2().init___O__O("iso8859-1", y$1); const y$2 = new $c_T2().init___O__O("charmap.ISO8859_2", this.IMPORT$undCHARMAP$2); const jsx$4 = new $c_T2().init___O__O("iso8859-2", y$2); const y$3 = new $c_T2().init___O__O("charmap.ISO8859_3", this.IMPORT$undCHARMAP$2); const jsx$3 = new $c_T2().init___O__O("iso8859-3", y$3); const y$4 = new $c_T2().init___O__O("charmap.ISO8859_4", this.IMPORT$undCHARMAP$2); const jsx$2 = new $c_T2().init___O__O("iso8859-4", y$4); const y$5 = new $c_T2().init___O__O("japanese.ShiftJIS", "golang.org/x/text/encoding/japanese"); const jsx$1 = new $c_T2().init___O__O("sjis", y$5); const y$6 = new $c_T2().init___O__O("traditionalchinese.Big5", "golang.org/x/text/encoding/traditionalchinese"); const array = [jsx$6, jsx$5, jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O("big5", y$6)]; const this$18 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$18.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.ENCODINGS$2 = this$18.elems$1; this.localVarNum$2 = 0; return this }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultString(b) }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__Lio_kaitai_struct_translators_TranslatorResult(elts) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(s) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultString(a) { const v = this.allocateLocalVar__I(); this.out$2.puts__T__V(((this.localVarName__I__T(v) + " := ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a))); return new $c_Lio_kaitai_struct_translators_ResultString().init___T((((this.localVarName__I__T(v) + "[len(") + this.localVarName__I__T(v)) + ") - 1]")) }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(value, base) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "strconv"); return new $c_Lio_kaitai_struct_translators_ResultString().init___T((((("strconv.FormatInt(int64(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + "), ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ")")) }; kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(value) { return this.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ".Pos()")) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultString(value) }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__O(value, typeName) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(b) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(a) { const min = this.allocateLocalVar__I(); const value = this.allocateLocalVar__I(); this.out$2.puts__T__V((((this.localVarName__I__T(min) + " := ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + "[0]")); this.out$2.puts__T__V((((("for _, " + this.localVarName__I__T(value)) + " := range ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V((((("if " + this.localVarName__I__T(min)) + " > ") + this.localVarName__I__T(value)) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V(((this.localVarName__I__T(min) + " = ") + this.localVarName__I__T(value))); this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.dec__V(); this.out$2.puts__T__V("}"); return new $c_Lio_kaitai_struct_translators_ResultLocalVar().init___I(min) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(a) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(bytesExpr, encoding) { if ((!(encoding instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Str))) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T("Variable encodings are not supported in Go yet")) }; const x2 = encoding; const s = x2.s$1; const x1$2 = s.toLowerCase(); if (((x1$2 === "ascii") || ((x1$2 === "utf-8") || (x1$2 === "utf8")))) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T((("string(" + bytesExpr) + ")")) } else { const x1$3 = this.ENCODINGS$2.get__O__s_Option(x1$2); if ((x1$3 instanceof $c_s_Some)) { const x2$2 = x1$3; const p3 = x2$2.value$2; if ((p3 !== null)) { const decoderSrc = p3.$$und1__O(); const importName = p3.$$und2__O(); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, importName); return this.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar((((("kaitai.BytesToStr(" + bytesExpr) + ", ") + decoderSrc) + ".NewDecoder())")) } }; const x = $m_s_None$(); if ((x === x1$3)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T((("encoding '" + x1$2) + "' in not supported in Go"))) }; throw new $c_s_MatchError().init___O(x1$3) } }; doByteSizeOfType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_translators_TranslatorResult(typeName) { const this$1 = $m_s_math_BigInt$(); const i = $m_Lio_kaitai_struct_translators_CommonSizeOf$().bitToByteSize__I__I($m_Lio_kaitai_struct_translators_CommonSizeOf$().getBitsSizeOfType__T__Lio_kaitai_struct_datatype_DataType__I(typeName.nameAsStr__T(), this.detectCastType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName))); return this.trIntLiteral__s_math_BigInt__Lio_kaitai_struct_translators_TranslatorResult(this$1.apply__I__s_math_BigInt(i)) }; trBooleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__sc_Seq__Lio_kaitai_struct_translators_ResultString(op, values) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T($f_Lio_kaitai_struct_translators_CommonOps__doBooleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__sc_Seq__T(this, op, values)) }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(s, base) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "strconv"); return this.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar((((("strconv.ParseInt(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ", 0)")) }; trStrConcat__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left, right) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T(((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " + ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right))) }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(value) }; strLiteralUnicode__C__T(code) { return $f_Lio_kaitai_struct_translators_CommonLiterals__strLiteralUnicode__C__T(this, code) }; doByteArrayLiteral__sc_Seq__Lio_kaitai_struct_translators_TranslatorResult(arr) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$1$2) { const x$1 = (x$1$2 | 0); return (255 & x$1) }) })(this)); const this$1 = $m_sc_Seq$(); return new $c_Lio_kaitai_struct_translators_ResultString().init___T((("[]uint8{" + arr.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "}")) }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(value, num) }; trEnumByLabel__sci_List__T__Lio_kaitai_struct_translators_ResultString(enumTypeAbs, label) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T($m_Lio_kaitai_struct_languages_GoCompiler$().enumToStr__sci_List__T__T(enumTypeAbs, label)) }; asciiCharQuoteMap__sci_Map() { return this.asciiCharQuoteMap$2 }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(s) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T((("kaitai.StringReverse(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")")) }; binOp__Lio_kaitai_struct_exprlang_Ast$operator__T(op) { return $f_Lio_kaitai_struct_translators_CommonOps__binOp__Lio_kaitai_struct_exprlang_Ast$operator__T(this, op) }; trLocalName__T__Lio_kaitai_struct_translators_TranslatorResult(s) { if ((($m_Lio_kaitai_struct_format_Identifier$().ROOT$1 === s) || (($m_Lio_kaitai_struct_format_Identifier$().PARENT$1 === s) || ($m_Lio_kaitai_struct_format_Identifier$().IO$1 === s)))) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T(("this." + this.specialName__T__T(s))) } else if ((($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s) || ($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 === s))) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T(this.specialName__T__T(s)) } else if (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s)) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T("i") } else { const this$1 = this.provider$2; if (this$1.isLazy__Lio_kaitai_struct_format_ClassSpec__T__Z(this$1.nowClass$1, s)) { return this.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar((("this." + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(s)) + "()")) } else { return new $c_Lio_kaitai_struct_translators_ResultString().init___T(("this." + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(s))) } } }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(value) }; outTransform__Lio_kaitai_struct_translators_ResultLocalVar__T__Lio_kaitai_struct_translators_ResultLocalVar(id, expr) { this.out$2.puts__T__V(((this.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(id) + " = ") + expr)); return id }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(value) { return this.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ".EOF()")) }; bytesToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(value, expr) { return this.bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value), expr) }; byteSizeOfClassSpec__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_translators_TranslatorResult(cs) { const this$1 = $m_s_math_BigInt$(); const i = $m_Lio_kaitai_struct_translators_CommonSizeOf$().getByteSizeOfClassSpec__Lio_kaitai_struct_format_ClassSpec__I(cs); return this.trIntLiteral__s_math_BigInt__Lio_kaitai_struct_translators_TranslatorResult(this$1.apply__I__s_math_BigInt(i)) }; unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T(op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$(); if ((x === op)) { return "^" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$(); if ((x$3 === op)) { return "-" } else { const x$5 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$(); if ((x$5 === op)) { return "!" } else { throw new $c_s_MatchError().init___O(op) } } } }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__Lio_kaitai_struct_translators_TranslatorResult(arr) }; booleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__T(op) { return $f_Lio_kaitai_struct_translators_CommonOps__booleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__T(this, op) }; kaitaiStructField__Lio_kaitai_struct_exprlang_Ast$expr__T__O(value, name) { return this.kaitaiStructField__Lio_kaitai_struct_exprlang_Ast$expr__T__Lio_kaitai_struct_translators_TranslatorResult(value, name) }; specialName__T__T(id) { if ((($m_Lio_kaitai_struct_format_Identifier$().ROOT$1 === id) || (($m_Lio_kaitai_struct_format_Identifier$().PARENT$1 === id) || ($m_Lio_kaitai_struct_format_Identifier$().IO$1 === id)))) { return id } else if (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === id)) { return "_it" } else if (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 === id)) { return "_buf" } else { throw new $c_s_MatchError().init___O(id) } }; doBitSizeOfType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_translators_TranslatorResult(typeName) { const this$1 = $m_s_math_BigInt$(); const i = $m_Lio_kaitai_struct_translators_CommonSizeOf$().getBitsSizeOfType__T__Lio_kaitai_struct_datatype_DataType__I(typeName.nameAsStr__T(), this.detectCastType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_datatype_DataType(typeName)); return this.trIntLiteral__s_math_BigInt__Lio_kaitai_struct_translators_TranslatorResult(this$1.apply__I__s_math_BigInt(i)) }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(b) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__Lio_kaitai_struct_translators_ResultString(t, value) { const jsx$2 = $m_Lio_kaitai_struct_languages_GoCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(t); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return new $c_Lio_kaitai_struct_translators_ResultString().init___T((((("[]" + jsx$2) + "{") + value.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "}")) }; localVarName__I__T(n) { return ("tmp" + n) }; trBoolLiteral__Z__Lio_kaitai_struct_translators_TranslatorResult(n) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T(("" + n)) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(a) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T((("len(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")")) }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(a) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "[0]")) }; trNumericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left, op, right) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$(); jsx$1 = (x === op) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { const v1 = this.allocateLocalVar__I(); this.out$2.puts__T__V(((((this.localVarName__I__T(v1) + " := ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + " % ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right))); this.out$2.puts__T__V((("if " + this.localVarName__I__T(v1)) + " < 0 {")); this.out$2.inc__V(); this.out$2.puts__T__V(((this.localVarName__I__T(v1) + " += ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right))); this.out$2.dec__V(); this.out$2.puts__T__V("}"); return new $c_Lio_kaitai_struct_translators_ResultLocalVar().init___I(v1) } else { return new $c_Lio_kaitai_struct_translators_ResultString().init___T($f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right)) } }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(s, from, to) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T((((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ":") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + "]")) }; kaitaiStructField__Lio_kaitai_struct_exprlang_Ast$expr__T__Lio_kaitai_struct_translators_TranslatorResult(value, name) { const valueStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value); if ((!(($m_Lio_kaitai_struct_format_Identifier$().ROOT$1 === name) || (($m_Lio_kaitai_struct_format_Identifier$().PARENT$1 === name) || ($m_Lio_kaitai_struct_format_Identifier$().IO$1 === name))))) { throw new $c_s_MatchError().init___O(name) }; const _1 = this.specialName__T__T(name); return new $c_Lio_kaitai_struct_translators_ResultString().init___T(((valueStr + ".") + _1)) }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(s, base) }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(value) { return this.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ".Size()")) }; cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(op) { return $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op) }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.translateExpr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(value) }; outAddErrCheck__V() { this.out$2.puts__T__V("if err != nil {"); this.out$2.inc__V(); const x1 = this.returnRes$2; const x = $m_s_None$(); let noValueAndErr; if ((x === x1)) { noValueAndErr = "err" } else { if ((!(x1 instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(x1) }; const x2 = x1; const r = x2.value$2; noValueAndErr = (r + ", err") }; this.out$2.puts__T__V(("return " + noValueAndErr)); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(a) }; trNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left, op, right) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T($f_Lio_kaitai_struct_translators_CommonOps__doNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right)) }; byteSizeOfValue__T__Lio_kaitai_struct_datatype_DataType__O(attrName, valType) { return this.byteSizeOfValue__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_translators_TranslatorResult(attrName, valType) }; trFloatLiteral__s_math_BigDecimal__Lio_kaitai_struct_translators_TranslatorResult(n) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T(n.bigDecimal$3.toString__T()) }; byteSizeOfValue__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_translators_TranslatorResult(attrName, valType) { const this$1 = $m_s_math_BigInt$(); const i = $m_Lio_kaitai_struct_translators_CommonSizeOf$().bitToByteSize__I__I($m_Lio_kaitai_struct_translators_CommonSizeOf$().getBitsSizeOfType__T__Lio_kaitai_struct_datatype_DataType__I(attrName, valType)); return this.trIntLiteral__s_math_BigInt__Lio_kaitai_struct_translators_TranslatorResult(this$1.apply__I__s_math_BigInt(i)) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(s) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(b) }; strLiteralGenericCC__C__T(code) { return $f_Lio_kaitai_struct_translators_CommonLiterals__strLiteralGenericCC__C__T(this, code) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultString(value) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T((("int(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + ")")) }; userType__Lio_kaitai_struct_datatype_DataType$UserType__T__Lio_kaitai_struct_translators_ResultLocalVar(t, io) { const v = this.allocateLocalVar__I(); let rc8 = false; let x2 = null; const x1 = t.forcedParent$3; let parent; matchEnd9: { if ((x1 instanceof $c_s_Some)) { rc8 = true; x2 = x1; const p3 = x2.value$2; const x = $m_Lio_kaitai_struct_datatype_DataType$().USER$undTYPE$undNO$undPARENT$1; if (((x === null) ? (p3 === null) : x.equals__O__Z(p3))) { parent = "nil"; break matchEnd9 } }; if (rc8) { const fp = x2.value$2; parent = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp); break matchEnd9 }; const x$3 = $m_s_None$(); if ((x$3 === x1)) { parent = "this"; break matchEnd9 }; throw new $c_s_MatchError().init___O(x1) }; const root = (t.isOpaque__Z() ? "nil" : "this._root"); const jsx$2 = t.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); const addParams = jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", "); this.out$2.puts__T__V((((((this.localVarName__I__T(v) + " := New") + $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(t.classSpec$3.get__O().name$1)) + "(") + addParams) + ")")); this.out$2.puts__T__V((((((((("err = " + this.localVarName__I__T(v)) + ".Read(") + io) + ", ") + parent) + ", ") + root) + ")")); this.outAddErrCheck__V(); return new $c_Lio_kaitai_struct_translators_ResultLocalVar().init___I(v) }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultString(container, idx) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]")) }; kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(value) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__O(t, value) { return this.doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__Lio_kaitai_struct_translators_ResultString(t, value) }; trEnumById__sci_List__T__Lio_kaitai_struct_translators_ResultString(enumTypeAbs, id) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T(((($m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(enumTypeAbs) + "(") + id) + ")")) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultString(a) }; trBytesCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left, op, right) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "bytes"); const x = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(); if ((x === op)) { return new $c_Lio_kaitai_struct_translators_ResultString().init___T((((("bytes.Equal(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")")) } else { return new $c_Lio_kaitai_struct_translators_ResultString().init___T((((((("(bytes.Compare(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ") ") + $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op)) + " 0)")) } }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(a) }; outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar(expr) { const v1 = this.allocateLocalVar__I(); this.out$2.puts__T__V(((this.localVarName__I__T(v1) + ", err := ") + expr)); this.outAddErrCheck__V(); return new $c_Lio_kaitai_struct_translators_ResultLocalVar().init___I(v1) }; doByteArrayNonLiteral__sc_Seq__Lio_kaitai_struct_translators_TranslatorResult(elts) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return new $c_Lio_kaitai_struct_translators_ResultString().init___T((("[]uint8{" + elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "}")) }; bytesToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, expr) { return this.bytesToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(value, expr) }; userTypeField__Lio_kaitai_struct_datatype_DataType$UserType__Lio_kaitai_struct_exprlang_Ast$expr__T__O(ut, value, name) { return this.userTypeField__Lio_kaitai_struct_datatype_DataType$UserType__Lio_kaitai_struct_exprlang_Ast$expr__T__Lio_kaitai_struct_translators_TranslatorResult(ut, value, name) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(s) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "unicode/utf8"); return new $c_Lio_kaitai_struct_translators_ResultString().init___T((("utf8.RuneCountInString(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")")) }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(a) }; translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return this.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(this.translateExpr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(v)) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(a) { const max = this.allocateLocalVar__I(); const value = this.allocateLocalVar__I(); this.out$2.puts__T__V((((this.localVarName__I__T(max) + " := ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + "[0]")); this.out$2.puts__T__V((((("for _, " + this.localVarName__I__T(value)) + " := range ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V((((("if " + this.localVarName__I__T(max)) + " < ") + this.localVarName__I__T(value)) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V(((this.localVarName__I__T(max) + " = ") + this.localVarName__I__T(value))); this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.dec__V(); this.out$2.puts__T__V("}"); return new $c_Lio_kaitai_struct_translators_ResultLocalVar().init___I(max) }; translateExpr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(v) { if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum)) { const x2 = v; const n = x2.n$1; return this.trIntLiteral__s_math_BigInt__Lio_kaitai_struct_translators_TranslatorResult(n) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum)) { const x3 = v; const n$2 = x3.n$1; return this.trFloatLiteral__s_math_BigDecimal__Lio_kaitai_struct_translators_TranslatorResult(n$2) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Str)) { const x4 = v; const s = x4.s$1; return this.trStringLiteral__T__Lio_kaitai_struct_translators_TranslatorResult(s) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool)) { const x5 = v; const n$3 = x5.n$1; return this.trBoolLiteral__Z__Lio_kaitai_struct_translators_TranslatorResult(n$3) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById)) { const x6 = v; const enumType = x6.enumName$1; const id = x6.id$1; const inType = x6.inType$1; const enumSpec = this.provider$2.resolveEnum__Lio_kaitai_struct_exprlang_Ast$typeId__T__Lio_kaitai_struct_format_EnumSpec(inType, enumType.name$1); return this.trEnumById__sci_List__T__Lio_kaitai_struct_translators_ResultString(enumSpec.name$1, this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(id)) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel)) { const x7 = v; const enumType$2 = x7.enumName$1; const label = x7.label$1; const inType$2 = x7.inType$1; const enumSpec$2 = this.provider$2.resolveEnum__Lio_kaitai_struct_exprlang_Ast$typeId__T__Lio_kaitai_struct_format_EnumSpec(inType$2, enumType$2.name$1); return this.trEnumByLabel__sci_List__T__Lio_kaitai_struct_translators_ResultString(enumSpec$2.name$1, label.name$1) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Name)) { const x8 = v; const name = x8.id$1; if ((name !== null)) { return ((name.name$1 === $m_Lio_kaitai_struct_format_Identifier$().SIZEOF$1) ? this.byteSizeOfClassSpec__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_translators_TranslatorResult(this.provider$2.nowClass$1) : this.trLocalName__T__Lio_kaitai_struct_translators_TranslatorResult(name.name$1)) } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp)) { const x9 = v; const op = x9.op$1; const operand = x9.operand$1; return new $c_Lio_kaitai_struct_translators_ResultString().init___T((("" + this.unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T(op)) + (((operand instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum) || (operand instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$FloatNum)) ? this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(operand) : (("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(operand)) + ")")))) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare)) { const x10 = v; const left = x10.left$1; const op$2 = x10.ops$1; const right = x10.right$1; const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType))) { return this.trNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left, op$2, right) } else if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType))) { return this.trStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left, op$2, right) } else if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { return this.trBytesCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left, op$2, right) } else if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType))) { return this.trNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left, op$2, right) } else if (((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType) && (_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType))) { return this.trNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left, op$2, right) } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((((("can't do " + _1) + " ") + op$2) + " ") + _2)) } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BinOp)) { const x11 = v; const left$2 = x11.left$1; const op$3 = x11.op$1; const right$2 = x11.right$1; if ((left$2 !== null)) { if ((op$3 !== null)) { if ((right$2 !== null)) { const _1$1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left$2); const _2$1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right$2); if (((_1$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType) && (_2$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType))) { return this.trNumericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left$2, op$3, right$2) } else { let jsx$1; if ((_1$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { if ((_2$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Add$(); jsx$1 = (x === op$3) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { return this.trStrConcat__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_TranslatorResult(left$2, right$2) } else { throw new $c_Lio_kaitai_struct_precompile_TypeMismatchError().init___T(((((("can't do " + _1$1) + " ") + op$3) + " ") + _2$1)) } } } } } }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BoolOp)) { const x12 = v; const op$4 = x12.op$1; const values = x12.values$1; return this.trBooleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__sc_Seq__Lio_kaitai_struct_translators_ResultString(op$4, values) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$IfExp)) { const x13 = v; const condition = x13.condition$1; const ifTrue = x13.ifTrue$1; const ifFalse = x13.ifFalse$1; return this.trIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultLocalVar(condition, ifTrue, ifFalse) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Subscript)) { const x14 = v; const container = x14.value$1; const idx = x14.idx$1; return this.arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_translators_ResultString(container, idx) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Attribute)) { const x22 = v; return $f_Lio_kaitai_struct_translators_CommonMethods__translateAttribute__Lio_kaitai_struct_exprlang_Ast$expr$Attribute__O(this, x22) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Call)) { const x23 = v; return $f_Lio_kaitai_struct_translators_CommonMethods__translateCall__Lio_kaitai_struct_exprlang_Ast$expr$Call__O(this, x23) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$List)) { const x15 = v; const elts = x15.elts$1; return $f_Lio_kaitai_struct_translators_CommonArraysAndCast__doGuessArrayLiteral__sc_Seq__O(this, elts) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$CastToType)) { const x24 = v; return $f_Lio_kaitai_struct_translators_CommonArraysAndCast__doCastOrArray__Lio_kaitai_struct_exprlang_Ast$expr$CastToType__O(this, x24) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$ByteSizeOfType)) { const x16 = v; const typeName = x16.typeName$1; return this.doByteSizeOfType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_translators_TranslatorResult(typeName) }; if ((v instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$BitSizeOfType)) { const x17 = v; const typeName$2 = x17.typeName$1; return this.doBitSizeOfType__Lio_kaitai_struct_exprlang_Ast$typeId__Lio_kaitai_struct_translators_TranslatorResult(typeName$2) }; throw new $c_s_MatchError().init___O(v) }; } const $d_Lio_kaitai_struct_translators_GoTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_GoTranslator: 0 }, false, "io.kaitai.struct.translators.GoTranslator", { Lio_kaitai_struct_translators_GoTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_GoTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_GoTranslator; class $c_jl_JSConsoleBasedPrintStream extends $c_Ljava_io_PrintStream { constructor() { super(); this.isErr$4 = false; this.flushed$4 = false; this.buffer$4 = null }; print__T__V(s) { this.java$lang$JSConsoleBasedPrintStream$$printString__T__V(((s === null) ? "null" : s)) }; java$lang$JSConsoleBasedPrintStream$$printString__T__V(s) { let rest = s; while ((rest !== "")) { const thiz = rest; const nlPos = (thiz.indexOf("\n") | 0); if ((nlPos < 0)) { this.buffer$4 = (("" + this.buffer$4) + rest); this.flushed$4 = false; rest = "" } else { const jsx$1 = this.buffer$4; const thiz$1 = rest; this.doWriteLine__p4__T__V((("" + jsx$1) + thiz$1.substring(0, nlPos))); this.buffer$4 = ""; this.flushed$4 = true; const thiz$2 = rest; const beginIndex = ((1 + nlPos) | 0); rest = thiz$2.substring(beginIndex) } } }; doWriteLine__p4__T__V(line) { const x = $g.console; if ((!(!(!(!x))))) { let jsx$1; if (this.isErr$4) { const x$1 = $g.console.error; jsx$1 = (!(!(!(!x$1)))) } else { jsx$1 = false }; if (jsx$1) { $g.console.error(line) } else { $g.console.log(line) } } }; init___Z(isErr) { this.isErr$4 = isErr; const out = new $c_jl_JSConsoleBasedPrintStream$DummyOutputStream().init___(); $c_Ljava_io_PrintStream.prototype.init___Ljava_io_OutputStream__Z__Ljava_nio_charset_Charset.call(this, out, false, null); this.flushed$4 = true; this.buffer$4 = ""; return this }; close__V() { /**/ }; } const $d_jl_JSConsoleBasedPrintStream = new $TypeData().initClass({ jl_JSConsoleBasedPrintStream: 0 }, false, "java.lang.JSConsoleBasedPrintStream", { jl_JSConsoleBasedPrintStream: 1, Ljava_io_PrintStream: 1, Ljava_io_FilterOutputStream: 1, Ljava_io_OutputStream: 1, O: 1, Ljava_io_Closeable: 1, jl_AutoCloseable: 1, Ljava_io_Flushable: 1, jl_Appendable: 1 }); $c_jl_JSConsoleBasedPrintStream.prototype.$classData = $d_jl_JSConsoleBasedPrintStream; class $c_s_concurrent_impl_Promise$DefaultPromise extends $c_ju_concurrent_atomic_AtomicReference { compressedRoot__p2__s_concurrent_impl_Promise$DefaultPromise__s_concurrent_impl_Promise$DefaultPromise(linked) { _compressedRoot: while (true) { const target = linked.root__p2__s_concurrent_impl_Promise$DefaultPromise(); if ((linked === target)) { return target } else if (this.compareAndSet__O__O__Z(linked, target)) { return target } else { const x1 = this.value$1; if ((x1 instanceof $c_s_concurrent_impl_Promise$DefaultPromise)) { const x2 = x1; linked = x2; continue _compressedRoot } else { return this } } } }; init___() { $c_ju_concurrent_atomic_AtomicReference.prototype.init___O.call(this, $m_sci_Nil$()); return this }; dispatchOrAddCallback__p2__s_concurrent_impl_CallbackRunnable__V(runnable) { let _$this = this; _dispatchOrAddCallback: while (true) { const x1 = _$this.value$1; if ((x1 instanceof $c_s_util_Try)) { const x2 = x1; runnable.executeWithValue__s_util_Try__V(x2) } else { if ((x1 instanceof $c_s_concurrent_impl_Promise$DefaultPromise)) { const x3 = x1; _$this = _$this.compressedRoot__p2__s_concurrent_impl_Promise$DefaultPromise__s_concurrent_impl_Promise$DefaultPromise(x3); continue _dispatchOrAddCallback }; if ((!(x1 instanceof $c_sci_List))) { throw new $c_s_MatchError().init___O(x1) }; const x4 = x1; if ((!_$this.compareAndSet__O__O__Z(x4, new $c_sci_$colon$colon().init___O__sci_List(runnable, x4)))) { continue _dispatchOrAddCallback } }; break } }; tryComplete__s_util_Try__Z(value) { const resolved = $m_s_concurrent_impl_Promise$().scala$concurrent$impl$Promise$$resolveTry__s_util_Try__s_util_Try(value); const x1 = this.tryCompleteAndGetListeners__p2__s_util_Try__sci_List(resolved); if ((x1 !== null)) { if (x1.isEmpty__Z()) { return true } else { let these = x1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const r = arg1; r.executeWithValue__s_util_Try__V(resolved); const this$1 = these; these = this$1.tail__sci_List() }; return true } } else { return false } }; toString__T() { return $f_s_concurrent_impl_Promise__toString__T(this) }; link__p2__s_concurrent_impl_Promise$DefaultPromise__V(target) { let _$this = this; _link: while (true) { if ((_$this !== target)) { const x1 = _$this.value$1; matchEnd6: { if ((x1 instanceof $c_s_util_Try)) { const x2 = x1; if ((!target.tryComplete__s_util_Try__Z(x2))) { throw new $c_jl_IllegalStateException().init___T("Cannot link completed promises together") }; break matchEnd6 }; if ((x1 instanceof $c_s_concurrent_impl_Promise$DefaultPromise)) { const x3 = x1; _$this = _$this.compressedRoot__p2__s_concurrent_impl_Promise$DefaultPromise__s_concurrent_impl_Promise$DefaultPromise(x3); continue _link }; if ((x1 instanceof $c_sci_List)) { const x4 = x1; if (_$this.compareAndSet__O__O__Z(x4, target)) { if ($f_sc_TraversableOnce__nonEmpty__Z(x4)) { let these = x4; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const x$2 = arg1; target.dispatchOrAddCallback__p2__s_concurrent_impl_CallbackRunnable__V(x$2); const this$1 = these; these = this$1.tail__sci_List() }; break matchEnd6 } else { break matchEnd6 } } }; continue _link } }; break } }; root__p2__s_concurrent_impl_Promise$DefaultPromise() { let _$this = this; _root: while (true) { const x1 = _$this.value$1; if ((x1 instanceof $c_s_concurrent_impl_Promise$DefaultPromise)) { const x2 = x1; _$this = x2; continue _root } else { return _$this } } }; compressedRoot__p2__s_concurrent_impl_Promise$DefaultPromise() { const x1 = this.value$1; if ((x1 instanceof $c_s_concurrent_impl_Promise$DefaultPromise)) { const x2 = x1; return this.compressedRoot__p2__s_concurrent_impl_Promise$DefaultPromise__s_concurrent_impl_Promise$DefaultPromise(x2) } else { return this } }; flatMap__F1__s_concurrent_ExecutionContext__s_concurrent_Future(f, executor) { return $f_s_concurrent_Future__flatMap__F1__s_concurrent_ExecutionContext__s_concurrent_Future(this, f, executor) }; tryCompleteAndGetListeners__p2__s_util_Try__sci_List(v) { let _$this = this; _tryCompleteAndGetListeners: while (true) { const x1 = _$this.value$1; if ((x1 instanceof $c_sci_List)) { const x2 = x1; if (_$this.compareAndSet__O__O__Z(x2, v)) { return x2 } else { continue _tryCompleteAndGetListeners } } else if ((x1 instanceof $c_s_concurrent_impl_Promise$DefaultPromise)) { const x3 = x1; _$this = _$this.compressedRoot__p2__s_concurrent_impl_Promise$DefaultPromise__s_concurrent_impl_Promise$DefaultPromise(x3); continue _tryCompleteAndGetListeners } else { return null } } }; onComplete__F1__s_concurrent_ExecutionContext__V(func, executor) { this.dispatchOrAddCallback__p2__s_concurrent_impl_CallbackRunnable__V(new $c_s_concurrent_impl_CallbackRunnable().init___s_concurrent_ExecutionContext__F1(executor, func)) }; zipWith__s_concurrent_Future__F2__s_concurrent_ExecutionContext__s_concurrent_Future(that, f, executor) { return $f_s_concurrent_Future__zipWith__s_concurrent_Future__F2__s_concurrent_ExecutionContext__s_concurrent_Future(this, that, f, executor) }; map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(f, executor) { return $f_s_concurrent_Future__map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(this, f, executor) }; value__s_Option() { return this.value0__p2__s_Option() }; value0__p2__s_Option() { let _$this = this; _value0: while (true) { const x1 = _$this.value$1; if ((x1 instanceof $c_s_util_Try)) { const x2 = x1; return new $c_s_Some().init___O(x2) } else if ((x1 instanceof $c_s_concurrent_impl_Promise$DefaultPromise)) { const x3 = x1; _$this = _$this.compressedRoot__p2__s_concurrent_impl_Promise$DefaultPromise__s_concurrent_impl_Promise$DefaultPromise(x3); continue _value0 } else { return $m_s_None$() } } }; } const $isArrayOf_s_concurrent_impl_Promise$DefaultPromise = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_concurrent_impl_Promise$DefaultPromise))) }); const $d_s_concurrent_impl_Promise$DefaultPromise = new $TypeData().initClass({ s_concurrent_impl_Promise$DefaultPromise: 0 }, false, "scala.concurrent.impl.Promise$DefaultPromise", { s_concurrent_impl_Promise$DefaultPromise: 1, ju_concurrent_atomic_AtomicReference: 1, O: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_concurrent_impl_Promise: 1, s_concurrent_Promise: 1, s_concurrent_Future: 1, s_concurrent_Awaitable: 1 }); $c_s_concurrent_impl_Promise$DefaultPromise.prototype.$classData = $d_s_concurrent_impl_Promise$DefaultPromise; const $f_s_math_Numeric$ByteIsIntegral__fromInt__I__B = (function($thiz, x) { return ((x << 24) >> 24) }); const $f_s_math_Numeric$ByteIsIntegral__times__B__B__B = (function($thiz, x, y) { return (($imul(x, y) << 24) >> 24) }); const $f_s_math_Numeric$ByteIsIntegral__minus__B__B__B = (function($thiz, x, y) { return ((((x - y) | 0) << 24) >> 24) }); const $f_s_math_Numeric$ByteIsIntegral__plus__B__B__B = (function($thiz, x, y) { return ((((x + y) | 0) << 24) >> 24) }); const $f_s_math_Numeric$ByteIsIntegral__quot__B__B__B = (function($thiz, x, y) { return ((((x / y) | 0) << 24) >> 24) }); const $f_s_math_Numeric$CharIsIntegral__minus__C__C__C = (function($thiz, x, y) { return (65535 & ((x - y) | 0)) }); const $f_s_math_Numeric$CharIsIntegral__times__C__C__C = (function($thiz, x, y) { return (65535 & $imul(x, y)) }); const $f_s_math_Numeric$CharIsIntegral__plus__C__C__C = (function($thiz, x, y) { return (65535 & ((x + y) | 0)) }); const $f_s_math_Numeric$CharIsIntegral__quot__C__C__C = (function($thiz, x, y) { return (65535 & ((x / y) | 0)) }); const $f_s_math_Numeric$CharIsIntegral__fromInt__I__C = (function($thiz, x) { return (65535 & x) }); const $f_s_math_Numeric$IntIsIntegral__times__I__I__I = (function($thiz, x, y) { return $imul(x, y) }); const $f_s_math_Numeric$IntIsIntegral__minus__I__I__I = (function($thiz, x, y) { return ((x - y) | 0) }); const $f_s_math_Numeric$IntIsIntegral__plus__I__I__I = (function($thiz, x, y) { return ((x + y) | 0) }); const $f_s_math_Numeric$IntIsIntegral__quot__I__I__I = (function($thiz, x, y) { return ((x / y) | 0) }); const $f_s_math_Numeric$LongIsIntegral__minus__J__J__J = (function($thiz, x, y) { const alo = x.lo$2; const ahi = x.hi$2; const bhi = y.hi$2; const lo = ((alo - y.lo$2) | 0); const hi = ((((-2147483648) ^ lo) > ((-2147483648) ^ alo)) ? (((-1) + ((ahi - bhi) | 0)) | 0) : ((ahi - bhi) | 0)); return new $c_sjsr_RuntimeLong().init___I__I(lo, hi) }); const $f_s_math_Numeric$LongIsIntegral__times__J__J__J = (function($thiz, x, y) { const alo = x.lo$2; const blo = y.lo$2; const a0 = (65535 & alo); const a1 = ((alo >>> 16) | 0); const b0 = (65535 & blo); const b1 = ((blo >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi = (((((((($imul(alo, y.hi$2) + $imul(x.hi$2, blo)) | 0) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); return new $c_sjsr_RuntimeLong().init___I__I(lo, hi) }); const $f_s_math_Numeric$LongIsIntegral__plus__J__J__J = (function($thiz, x, y) { const alo = x.lo$2; const ahi = x.hi$2; const bhi = y.hi$2; const lo = ((alo + y.lo$2) | 0); const hi = ((((-2147483648) ^ lo) < ((-2147483648) ^ alo)) ? ((1 + ((ahi + bhi) | 0)) | 0) : ((ahi + bhi) | 0)); return new $c_sjsr_RuntimeLong().init___I__I(lo, hi) }); const $f_s_math_Numeric$LongIsIntegral__quot__J__J__J = (function($thiz, x, y) { const this$1 = $m_sjsr_RuntimeLong$(); const lo = this$1.divideImpl__I__I__I__I__I(x.lo$2, x.hi$2, y.lo$2, y.hi$2); const hi = this$1.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; return new $c_sjsr_RuntimeLong().init___I__I(lo, hi) }); const $f_s_math_Numeric$LongIsIntegral__toInt__J__I = (function($thiz, x) { return x.lo$2 }); const $f_s_math_Numeric$LongIsIntegral__fromInt__I__J = (function($thiz, x) { const hi = (x >> 31); return new $c_sjsr_RuntimeLong().init___I__I(x, hi) }); const $f_s_math_Numeric$ShortIsIntegral__fromInt__I__S = (function($thiz, x) { return ((x << 16) >> 16) }); const $f_s_math_Numeric$ShortIsIntegral__times__S__S__S = (function($thiz, x, y) { return (($imul(x, y) << 16) >> 16) }); const $f_s_math_Numeric$ShortIsIntegral__minus__S__S__S = (function($thiz, x, y) { return ((((x - y) | 0) << 16) >> 16) }); const $f_s_math_Numeric$ShortIsIntegral__plus__S__S__S = (function($thiz, x, y) { return ((((x + y) | 0) << 16) >> 16) }); const $f_s_math_Numeric$ShortIsIntegral__quot__S__S__S = (function($thiz, x, y) { return ((((x / y) | 0) << 16) >> 16) }); class $c_s_math_Ordering$Byte$ extends $c_O { init___() { return this }; compare__O__O__I(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return ((x$1 - y$1) | 0) }; } const $d_s_math_Ordering$Byte$ = new $TypeData().initClass({ s_math_Ordering$Byte$: 0 }, false, "scala.math.Ordering$Byte$", { s_math_Ordering$Byte$: 1, O: 1, s_math_Ordering$ByteOrdering: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Ordering$Byte$.prototype.$classData = $d_s_math_Ordering$Byte$; let $n_s_math_Ordering$Byte$ = (void 0); const $m_s_math_Ordering$Byte$ = (function() { if ((!$n_s_math_Ordering$Byte$)) { $n_s_math_Ordering$Byte$ = new $c_s_math_Ordering$Byte$().init___() }; return $n_s_math_Ordering$Byte$ }); class $c_s_math_Ordering$Char$ extends $c_O { init___() { return this }; compare__O__O__I(x, y) { let x$1; if ((x === null)) { x$1 = 0 } else { const this$2 = x; x$1 = this$2.value$1 }; let y$1; if ((y === null)) { y$1 = 0 } else { const this$4 = y; y$1 = this$4.value$1 }; return ((x$1 - y$1) | 0) }; } const $d_s_math_Ordering$Char$ = new $TypeData().initClass({ s_math_Ordering$Char$: 0 }, false, "scala.math.Ordering$Char$", { s_math_Ordering$Char$: 1, O: 1, s_math_Ordering$CharOrdering: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Ordering$Char$.prototype.$classData = $d_s_math_Ordering$Char$; let $n_s_math_Ordering$Char$ = (void 0); const $m_s_math_Ordering$Char$ = (function() { if ((!$n_s_math_Ordering$Char$)) { $n_s_math_Ordering$Char$ = new $c_s_math_Ordering$Char$().init___() }; return $n_s_math_Ordering$Char$ }); class $c_s_math_Ordering$Int$ extends $c_O { init___() { return this }; compare__O__O__I(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return ((x$1 === y$1) ? 0 : ((x$1 < y$1) ? (-1) : 1)) }; } const $d_s_math_Ordering$Int$ = new $TypeData().initClass({ s_math_Ordering$Int$: 0 }, false, "scala.math.Ordering$Int$", { s_math_Ordering$Int$: 1, O: 1, s_math_Ordering$IntOrdering: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Ordering$Int$.prototype.$classData = $d_s_math_Ordering$Int$; let $n_s_math_Ordering$Int$ = (void 0); const $m_s_math_Ordering$Int$ = (function() { if ((!$n_s_math_Ordering$Int$)) { $n_s_math_Ordering$Int$ = new $c_s_math_Ordering$Int$().init___() }; return $n_s_math_Ordering$Int$ }); class $c_s_math_Ordering$Long$ extends $c_O { init___() { return this }; compare__O__O__I(x, y) { const t = $uJ(x); const lo = t.lo$2; const hi = t.hi$2; const t$1 = $uJ(y); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; return $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$compare__I__I__I__I__I(lo, hi, lo$1, hi$1) }; } const $d_s_math_Ordering$Long$ = new $TypeData().initClass({ s_math_Ordering$Long$: 0 }, false, "scala.math.Ordering$Long$", { s_math_Ordering$Long$: 1, O: 1, s_math_Ordering$LongOrdering: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Ordering$Long$.prototype.$classData = $d_s_math_Ordering$Long$; let $n_s_math_Ordering$Long$ = (void 0); const $m_s_math_Ordering$Long$ = (function() { if ((!$n_s_math_Ordering$Long$)) { $n_s_math_Ordering$Long$ = new $c_s_math_Ordering$Long$().init___() }; return $n_s_math_Ordering$Long$ }); class $c_s_math_Ordering$Short$ extends $c_O { init___() { return this }; compare__O__O__I(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return ((x$1 - y$1) | 0) }; } const $d_s_math_Ordering$Short$ = new $TypeData().initClass({ s_math_Ordering$Short$: 0 }, false, "scala.math.Ordering$Short$", { s_math_Ordering$Short$: 1, O: 1, s_math_Ordering$ShortOrdering: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Ordering$Short$.prototype.$classData = $d_s_math_Ordering$Short$; let $n_s_math_Ordering$Short$ = (void 0); const $m_s_math_Ordering$Short$ = (function() { if ((!$n_s_math_Ordering$Short$)) { $n_s_math_Ordering$Short$ = new $c_s_math_Ordering$Short$().init___() }; return $n_s_math_Ordering$Short$ }); class $c_s_math_Ordering$String$ extends $c_O { init___() { return this }; compare__O__O__I(x, y) { const x$1 = x; const y$1 = y; return ((x$1 === y$1) ? 0 : ((!(!(x$1 < y$1))) ? (-1) : 1)) }; } const $d_s_math_Ordering$String$ = new $TypeData().initClass({ s_math_Ordering$String$: 0 }, false, "scala.math.Ordering$String$", { s_math_Ordering$String$: 1, O: 1, s_math_Ordering$StringOrdering: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_s_math_Ordering$String$.prototype.$classData = $d_s_math_Ordering$String$; let $n_s_math_Ordering$String$ = (void 0); const $m_s_math_Ordering$String$ = (function() { if ((!$n_s_math_Ordering$String$)) { $n_s_math_Ordering$String$ = new $c_s_math_Ordering$String$().init___() }; return $n_s_math_Ordering$String$ }); class $c_s_reflect_AnyValManifest extends $c_O { constructor() { super(); this.toString$1 = null }; equals__O__Z(that) { return (this === that) }; toString__T() { return this.toString$1 }; hashCode__I() { return $systemIdentityHashCode(this) }; } class $c_s_reflect_ManifestFactory$ClassTypeManifest extends $c_O { constructor() { super(); this.prefix$1 = null; this.runtimeClass1$1 = null; this.typeArguments$1 = null }; } class $c_sc_IndexedSeq$ extends $c_scg_IndexedSeqFactory { constructor() { super(); this.ReusableCBF$6 = null }; init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); $n_sc_IndexedSeq$ = this; this.ReusableCBF$6 = new $c_sc_IndexedSeq$$anon$1().init___(); return this }; newBuilder__scm_Builder() { $m_sci_IndexedSeq$(); $m_sci_Vector$(); return new $c_sci_VectorBuilder().init___() }; } const $d_sc_IndexedSeq$ = new $TypeData().initClass({ sc_IndexedSeq$: 0 }, false, "scala.collection.IndexedSeq$", { sc_IndexedSeq$: 1, scg_IndexedSeqFactory: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_sc_IndexedSeq$.prototype.$classData = $d_sc_IndexedSeq$; let $n_sc_IndexedSeq$ = (void 0); const $m_sc_IndexedSeq$ = (function() { if ((!$n_sc_IndexedSeq$)) { $n_sc_IndexedSeq$ = new $c_sc_IndexedSeq$().init___() }; return $n_sc_IndexedSeq$ }); class $c_sc_IndexedSeqLike$Elements extends $c_sc_AbstractIterator { constructor() { super(); this.end$2 = 0; this.index$2 = 0; this.$$outer$2 = null }; next__O() { if ((this.index$2 >= this.end$2)) { $m_sc_Iterator$().empty$1.next__O() }; const x = this.$$outer$2.apply__I__O(this.index$2); this.index$2 = ((1 + this.index$2) | 0); return x }; init___sc_IndexedSeqLike__I__I($$outer, start, end) { this.end$2 = end; if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$2 = $$outer }; this.index$2 = start; return this }; hasNext__Z() { return (this.index$2 < this.end$2) }; drop__I__sc_Iterator(n) { return ((n <= 0) ? new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this.$$outer$2, this.index$2, this.end$2) : ((((this.index$2 + n) | 0) >= this.end$2) ? new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this.$$outer$2, this.end$2, this.end$2) : new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this.$$outer$2, ((this.index$2 + n) | 0), this.end$2))) }; } const $d_sc_IndexedSeqLike$Elements = new $TypeData().initClass({ sc_IndexedSeqLike$Elements: 0 }, false, "scala.collection.IndexedSeqLike$Elements", { sc_IndexedSeqLike$Elements: 1, sc_AbstractIterator: 1, O: 1, sc_Iterator: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_BufferedIterator: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sc_IndexedSeqLike$Elements.prototype.$classData = $d_sc_IndexedSeqLike$Elements; class $c_sci_HashSet$ extends $c_scg_ImmutableSetFactory { constructor() { super(); this.ReusableCBF$5 = null }; init___() { $n_sci_HashSet$ = this; this.ReusableCBF$5 = new $c_scg_GenSetFactory$$anon$1().init___scg_GenSetFactory(this); return this }; scala$collection$immutable$HashSet$$makeHashTrieSet__I__sci_HashSet__I__sci_HashSet__I__I__sci_HashSet$HashTrieSet(hash0, elem0, hash1, elem1, level, newSize) { const index0 = (31 & ((hash0 >>> level) | 0)); const index1 = (31 & ((hash1 >>> level) | 0)); if ((index0 !== index1)) { const bitmap = ((1 << index0) | (1 << index1)); const elems = $newArrayObject($d_sci_HashSet.getArrayOf(), [2]); if ((index0 < index1)) { elems.u[0] = elem0; elems.u[1] = elem1 } else { elems.u[0] = elem1; elems.u[1] = elem0 }; return new $c_sci_HashSet$HashTrieSet().init___I__Asci_HashSet__I(bitmap, elems, newSize) } else { const bitmap$2 = (1 << index0); const child = this.scala$collection$immutable$HashSet$$makeHashTrieSet__I__sci_HashSet__I__sci_HashSet__I__I__sci_HashSet$HashTrieSet(hash0, elem0, hash1, elem1, ((5 + level) | 0), newSize); const elems$2 = $newArrayObject($d_sci_HashSet.getArrayOf(), [1]); elems$2.u[0] = child; return new $c_sci_HashSet$HashTrieSet().init___I__Asci_HashSet__I(bitmap$2, elems$2, newSize) } }; emptyInstance__sci_Set() { return $m_sci_HashSet$EmptyHashSet$() }; newBuilder__scm_Builder() { return new $c_sci_HashSet$$anon$1().init___() }; } const $d_sci_HashSet$ = new $TypeData().initClass({ sci_HashSet$: 0 }, false, "scala.collection.immutable.HashSet$", { sci_HashSet$: 1, scg_ImmutableSetFactory: 1, scg_SetFactory: 1, scg_GenSetFactory: 1, scg_GenericCompanion: 1, O: 1, scg_GenericSeqCompanion: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_HashSet$.prototype.$classData = $d_sci_HashSet$; let $n_sci_HashSet$ = (void 0); const $m_sci_HashSet$ = (function() { if ((!$n_sci_HashSet$)) { $n_sci_HashSet$ = new $c_sci_HashSet$().init___() }; return $n_sci_HashSet$ }); class $c_sci_IndexedSeq$ extends $c_scg_IndexedSeqFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { $m_sci_Vector$(); return new $c_sci_VectorBuilder().init___() }; } const $d_sci_IndexedSeq$ = new $TypeData().initClass({ sci_IndexedSeq$: 0 }, false, "scala.collection.immutable.IndexedSeq$", { sci_IndexedSeq$: 1, scg_IndexedSeqFactory: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1 }); $c_sci_IndexedSeq$.prototype.$classData = $d_sci_IndexedSeq$; let $n_sci_IndexedSeq$ = (void 0); const $m_sci_IndexedSeq$ = (function() { if ((!$n_sci_IndexedSeq$)) { $n_sci_IndexedSeq$ = new $c_sci_IndexedSeq$().init___() }; return $n_sci_IndexedSeq$ }); class $c_sci_ListSet$ extends $c_scg_ImmutableSetFactory { constructor() { super(); this.ReusableCBF$5 = null }; init___() { $n_sci_ListSet$ = this; this.ReusableCBF$5 = new $c_scg_GenSetFactory$$anon$1().init___scg_GenSetFactory(this); return this }; emptyInstance__sci_Set() { return $m_sci_ListSet$EmptyListSet$() }; } const $d_sci_ListSet$ = new $TypeData().initClass({ sci_ListSet$: 0 }, false, "scala.collection.immutable.ListSet$", { sci_ListSet$: 1, scg_ImmutableSetFactory: 1, scg_SetFactory: 1, scg_GenSetFactory: 1, scg_GenericCompanion: 1, O: 1, scg_GenericSeqCompanion: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_ListSet$.prototype.$classData = $d_sci_ListSet$; let $n_sci_ListSet$ = (void 0); const $m_sci_ListSet$ = (function() { if ((!$n_sci_ListSet$)) { $n_sci_ListSet$ = new $c_sci_ListSet$().init___() }; return $n_sci_ListSet$ }); class $c_scm_ArrayBuilder$ofRef extends $c_scm_ArrayBuilder { constructor() { super(); this.evidence$2$2 = null; this.elems$2 = null; this.capacity$2 = 0; this.size$2 = 0 }; init___s_reflect_ClassTag(evidence$2) { this.evidence$2$2 = evidence$2; this.capacity$2 = 0; this.size$2 = 0; return this }; $$plus$plus$eq__sc_TraversableOnce__scm_ArrayBuilder$ofRef(xs) { if ((xs instanceof $c_scm_WrappedArray$ofRef)) { const x2 = xs; this.ensureSize__p2__I__V(((this.size$2 + x2.length__I()) | 0)); $m_s_Array$().copy__O__I__O__I__I__V(x2.array$6, 0, this.elems$2, this.size$2, x2.length__I()); this.size$2 = ((this.size$2 + x2.length__I()) | 0); return this } else { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) } }; equals__O__Z(other) { if ((other instanceof $c_scm_ArrayBuilder$ofRef)) { const x2 = other; return ((this.size$2 === x2.size$2) && (this.elems$2 === x2.elems$2)) } else { return false } }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__O__scm_ArrayBuilder$ofRef(elem) }; toString__T() { return "ArrayBuilder.ofRef" }; result__O() { return this.result__AO() }; resize__p2__I__V(size) { this.elems$2 = this.mkArray__p2__I__AO(size); this.capacity$2 = size }; $$plus$eq__O__scm_ArrayBuilder$ofRef(elem) { this.ensureSize__p2__I__V(((1 + this.size$2) | 0)); this.elems$2.u[this.size$2] = elem; this.size$2 = ((1 + this.size$2) | 0); return this }; result__AO() { if (((this.capacity$2 !== 0) && (this.capacity$2 === this.size$2))) { this.capacity$2 = 0; return this.elems$2 } else { return this.mkArray__p2__I__AO(this.size$2) } }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__O__scm_ArrayBuilder$ofRef(elem) }; sizeHint__I__V(size) { if ((this.capacity$2 < size)) { this.resize__p2__I__V(size) } }; ensureSize__p2__I__V(size) { if (((this.capacity$2 < size) || (this.capacity$2 === 0))) { let newsize = ((this.capacity$2 === 0) ? 16 : (this.capacity$2 << 1)); while ((newsize < size)) { newsize = (newsize << 1) }; this.resize__p2__I__V(newsize) } }; mkArray__p2__I__AO(size) { const newelems = this.evidence$2$2.newArray__I__O(size); if ((this.size$2 > 0)) { $m_s_Array$().copy__O__I__O__I__I__V(this.elems$2, 0, newelems, 0, this.size$2) }; return newelems }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return this.$$plus$plus$eq__sc_TraversableOnce__scm_ArrayBuilder$ofRef(xs) }; } const $isArrayOf_scm_ArrayBuilder$ofRef = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_ArrayBuilder$ofRef))) }); const $d_scm_ArrayBuilder$ofRef = new $TypeData().initClass({ scm_ArrayBuilder$ofRef: 0 }, false, "scala.collection.mutable.ArrayBuilder$ofRef", { scm_ArrayBuilder$ofRef: 1, scm_ArrayBuilder: 1, O: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_ArrayBuilder$ofRef.prototype.$classData = $d_scm_ArrayBuilder$ofRef; class $c_scm_HashSet$ extends $c_scg_MutableSetFactory { constructor() { super(); this.ReusableCBF$5 = null }; init___() { $n_scm_HashSet$ = this; this.ReusableCBF$5 = new $c_scg_GenSetFactory$$anon$1().init___scg_GenSetFactory(this); return this }; empty__sc_GenTraversable() { return new $c_scm_HashSet().init___() }; } const $d_scm_HashSet$ = new $TypeData().initClass({ scm_HashSet$: 0 }, false, "scala.collection.mutable.HashSet$", { scm_HashSet$: 1, scg_MutableSetFactory: 1, scg_SetFactory: 1, scg_GenSetFactory: 1, scg_GenericCompanion: 1, O: 1, scg_GenericSeqCompanion: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_HashSet$.prototype.$classData = $d_scm_HashSet$; let $n_scm_HashSet$ = (void 0); const $m_scm_HashSet$ = (function() { if ((!$n_scm_HashSet$)) { $n_scm_HashSet$ = new $c_scm_HashSet$().init___() }; return $n_scm_HashSet$ }); class $c_sjs_js_JavaScriptException extends $c_jl_RuntimeException { constructor() { super(); this.exception$4 = null }; productPrefix__T() { return "JavaScriptException" }; productArity__I() { return 1 }; fillInStackTrace__jl_Throwable() { const e = this.exception$4; this.stackdata = e; return this }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_sjs_js_JavaScriptException)) { const JavaScriptException$1 = x$1; return $m_sr_BoxesRunTime$().equals__O__O__Z(this.exception$4, JavaScriptException$1.exception$4) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.exception$4; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; getMessage__T() { return $objectToString(this.exception$4) }; init___O(exception) { this.exception$4 = exception; $c_jl_Throwable.prototype.init___T__jl_Throwable__Z__Z.call(this, null, null, true, true); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_sjs_js_JavaScriptException = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sjs_js_JavaScriptException))) }); const $d_sjs_js_JavaScriptException = new $TypeData().initClass({ sjs_js_JavaScriptException: 0 }, false, "scala.scalajs.js.JavaScriptException", { sjs_js_JavaScriptException: 1, jl_RuntimeException: 1, jl_Exception: 1, jl_Throwable: 1, O: 1, Ljava_io_Serializable: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1 }); $c_sjs_js_JavaScriptException.prototype.$classData = $d_sjs_js_JavaScriptException; class $c_Lio_kaitai_struct_datatype_DataType$CalcUserType extends $c_Lio_kaitai_struct_datatype_DataType$UserType { constructor() { super(); this.$$undargs$4 = null }; productPrefix__T() { return "CalcUserType" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcUserType)) { const CalcUserType$1 = x$1; const x = this.name$3; const x$2 = CalcUserType$1.name$3; let jsx$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.forcedParent$3; const x$4 = CalcUserType$1.forcedParent$3; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.$$undargs$4; const x$6 = CalcUserType$1.$$undargs$4; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$3; break } case 1: { return this.forcedParent$3; break } case 2: { return this.$$undargs$4; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; isOwning__Z() { return false }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___sci_List__s_Option__sc_Seq(_name, _forcedParent, _args) { this.$$undargs$4 = _args; $c_Lio_kaitai_struct_datatype_DataType$UserType.prototype.init___sci_List__s_Option__sc_Seq.call(this, _name, _forcedParent, _args); return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$CalcUserType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$CalcUserType))) }); const $d_Lio_kaitai_struct_datatype_DataType$CalcUserType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$CalcUserType: 0 }, false, "io.kaitai.struct.datatype.DataType$CalcUserType", { Lio_kaitai_struct_datatype_DataType$CalcUserType: 1, Lio_kaitai_struct_datatype_DataType$UserType: 1, Lio_kaitai_struct_datatype_DataType$StructType: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$CalcUserType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$CalcUserType; class $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType extends $c_Lio_kaitai_struct_datatype_DataType$FloatType { constructor() { super(); this.width$3 = null; this.endian$3 = null }; init___Lio_kaitai_struct_datatype_DataType$IntWidth__s_Option(width, endian) { this.width$3 = width; this.endian$3 = endian; return this }; productPrefix__T() { return "FloatMultiType" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) { const FloatMultiType$1 = x$1; const x = this.width$3; const x$2 = FloatMultiType$1.width$3; if ((x === x$2)) { const x$3 = this.endian$3; const x$4 = FloatMultiType$1.endian$3; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.width$3; break } case 1: { return this.endian$3; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; apiCall__s_Option__T(defEndian) { const this$1 = this.endian$3; const finalEnd = (this$1.isEmpty__Z() ? defEndian : this$1); const jsx$1 = this.width$3.width$1; let this$2; if (finalEnd.isEmpty__Z()) { this$2 = $m_s_None$() } else { const arg1 = finalEnd.get__O(); const x$2 = arg1; this$2 = new $c_s_Some().init___O(x$2.toSuffix__T()) }; return (("f" + jsx$1) + (this$2.isEmpty__Z() ? "" : this$2.get__O())) }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$FloatMultiType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$FloatMultiType))) }); const $d_Lio_kaitai_struct_datatype_DataType$FloatMultiType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$FloatMultiType: 0 }, false, "io.kaitai.struct.datatype.DataType$FloatMultiType", { Lio_kaitai_struct_datatype_DataType$FloatMultiType: 1, Lio_kaitai_struct_datatype_DataType$FloatType: 1, Lio_kaitai_struct_datatype_DataType$NumericType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, Lio_kaitai_struct_datatype_DataType$ReadableType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$FloatMultiType; class $c_Lio_kaitai_struct_datatype_DataType$Int1Type extends $c_Lio_kaitai_struct_datatype_DataType$IntType { constructor() { super(); this.signed$3 = false }; productPrefix__T() { return "Int1Type" }; productArity__I() { return 1 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { const Int1Type$1 = x$1; return (this.signed$3 === Int1Type$1.signed$3) } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.signed$3; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.signed$3 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 1) }; apiCall__s_Option__T(defEndian) { return (this.signed$3 ? "s1" : "u1") }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___Z(signed) { this.signed$3 = signed; return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$Int1Type = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$Int1Type))) }); const $d_Lio_kaitai_struct_datatype_DataType$Int1Type = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$Int1Type: 0 }, false, "io.kaitai.struct.datatype.DataType$Int1Type", { Lio_kaitai_struct_datatype_DataType$Int1Type: 1, Lio_kaitai_struct_datatype_DataType$IntType: 1, Lio_kaitai_struct_datatype_DataType$NumericType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, Lio_kaitai_struct_datatype_DataType$ReadableType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$Int1Type.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$Int1Type; class $c_Lio_kaitai_struct_datatype_DataType$IntMultiType extends $c_Lio_kaitai_struct_datatype_DataType$IntType { constructor() { super(); this.signed$3 = false; this.width$3 = null; this.endian$3 = null }; init___Z__Lio_kaitai_struct_datatype_DataType$IntWidth__s_Option(signed, width, endian) { this.signed$3 = signed; this.width$3 = width; this.endian$3 = endian; return this }; productPrefix__T() { return "IntMultiType" }; productArity__I() { return 3 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { const IntMultiType$1 = x$1; let jsx$1; if ((this.signed$3 === IntMultiType$1.signed$3)) { const x = this.width$3; const x$2 = IntMultiType$1.width$3; jsx$1 = (x === x$2) } else { jsx$1 = false }; if (jsx$1) { const x$3 = this.endian$3; const x$4 = IntMultiType$1.endian$3; return ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.signed$3; break } case 1: { return this.width$3; break } case 2: { return this.endian$3; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; apiCall__s_Option__T(defEndian) { const ch1 = (this.signed$3 ? 115 : 117); const this$1 = this.endian$3; const finalEnd = (this$1.isEmpty__Z() ? defEndian : this$1); const jsx$2 = new $c_jl_Character().init___C(ch1); const jsx$1 = this.width$3.width$1; let this$4; if (finalEnd.isEmpty__Z()) { this$4 = $m_s_None$() } else { const arg1 = finalEnd.get__O(); const x$1 = arg1; this$4 = new $c_s_Some().init___O(x$1.toSuffix__T()) }; return ((("" + jsx$2) + jsx$1) + (this$4.isEmpty__Z() ? "" : this$4.get__O())) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.signed$3 ? 1231 : 1237)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.width$3)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.endian$3)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 3) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$IntMultiType = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$IntMultiType))) }); const $d_Lio_kaitai_struct_datatype_DataType$IntMultiType = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$IntMultiType: 0 }, false, "io.kaitai.struct.datatype.DataType$IntMultiType", { Lio_kaitai_struct_datatype_DataType$IntMultiType: 1, Lio_kaitai_struct_datatype_DataType$IntType: 1, Lio_kaitai_struct_datatype_DataType$NumericType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, Lio_kaitai_struct_datatype_DataType$ReadableType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$IntMultiType.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$IntMultiType; class $c_Lio_kaitai_struct_datatype_DataType$UserTypeInstream extends $c_Lio_kaitai_struct_datatype_DataType$UserType { constructor() { super(); this.$$undargs$4 = null }; productPrefix__T() { return "UserTypeInstream" }; productArity__I() { return 3 }; asNonOwning__Lio_kaitai_struct_datatype_DataType() { return this.asNonOwning__Lio_kaitai_struct_datatype_DataType$UserType() }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeInstream)) { const UserTypeInstream$1 = x$1; const x = this.name$3; const x$2 = UserTypeInstream$1.name$3; let jsx$1; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.forcedParent$3; const x$4 = UserTypeInstream$1.forcedParent$3; jsx$1 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$1 = false }; if (jsx$1) { const x$5 = this.$$undargs$4; const x$6 = UserTypeInstream$1.$$undargs$4; return ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { return false } } else { return false } }; asNonOwning__Lio_kaitai_struct_datatype_DataType$UserType() { const r = new $c_Lio_kaitai_struct_datatype_DataType$CalcUserType().init___sci_List__s_Option__sc_Seq(this.name$3, this.forcedParent$3, this.args$3); r.classSpec$3 = this.classSpec$3; return r }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$3; break } case 1: { return this.forcedParent$3; break } case 2: { return this.$$undargs$4; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; isOwning__Z() { return true }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; init___sci_List__s_Option__sc_Seq(_name, _forcedParent, _args) { this.$$undargs$4 = _args; $c_Lio_kaitai_struct_datatype_DataType$UserType.prototype.init___sci_List__s_Option__sc_Seq.call(this, _name, _forcedParent, _args); return this }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$UserTypeInstream = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$UserTypeInstream))) }); const $d_Lio_kaitai_struct_datatype_DataType$UserTypeInstream = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$UserTypeInstream: 0 }, false, "io.kaitai.struct.datatype.DataType$UserTypeInstream", { Lio_kaitai_struct_datatype_DataType$UserTypeInstream: 1, Lio_kaitai_struct_datatype_DataType$UserType: 1, Lio_kaitai_struct_datatype_DataType$StructType: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$UserTypeInstream.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$UserTypeInstream; class $c_Lio_kaitai_struct_format_ParseInstanceSpec extends $c_Lio_kaitai_struct_format_InstanceSpec { constructor() { super(); this.id$2 = null; this.path$2 = null; this.dataType$2 = null; this.cond$2 = null; this.pos$2 = null; this.io$2 = null; this.valid$2 = null }; productPrefix__T() { return "ParseInstanceSpec" }; productArity__I() { return 8 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) { const ParseInstanceSpec$1 = x$1; const x = this.id$2; const x$2 = ParseInstanceSpec$1.id$2; let jsx$6; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.path$2; const x$4 = ParseInstanceSpec$1.path$2; jsx$6 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$6 = false }; let jsx$5; if (jsx$6) { const x$5 = this.doc$1; const x$6 = ParseInstanceSpec$1.doc$1; jsx$5 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$5 = false }; let jsx$4; if (jsx$5) { const x$7 = this.dataType$2; const x$8 = ParseInstanceSpec$1.dataType$2; jsx$4 = ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { jsx$4 = false }; let jsx$3; if (jsx$4) { const x$9 = this.cond$2; const x$10 = ParseInstanceSpec$1.cond$2; jsx$3 = ((x$9 === null) ? (x$10 === null) : x$9.equals__O__Z(x$10)) } else { jsx$3 = false }; let jsx$2; if (jsx$3) { const x$11 = this.pos$2; const x$12 = ParseInstanceSpec$1.pos$2; jsx$2 = ((x$11 === null) ? (x$12 === null) : x$11.equals__O__Z(x$12)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$13 = this.io$2; const x$14 = ParseInstanceSpec$1.io$2; jsx$1 = ((x$13 === null) ? (x$14 === null) : x$13.equals__O__Z(x$14)) } else { jsx$1 = false }; if (jsx$1) { const x$15 = this.valid$2; const x$16 = ParseInstanceSpec$1.valid$2; return ((x$15 === null) ? (x$16 === null) : x$15.equals__O__Z(x$16)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.id$2; break } case 1: { return this.path$2; break } case 2: { return this.doc$1; break } case 3: { return this.dataType$2; break } case 4: { return this.cond$2; break } case 5: { return this.pos$2; break } case 6: { return this.io$2; break } case 7: { return this.valid$2; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; dataType__Lio_kaitai_struct_datatype_DataType() { return this.dataType$2 }; id__Lio_kaitai_struct_format_Identifier() { return this.id$2 }; isNullable__Z() { return $f_Lio_kaitai_struct_format_AttrLikeSpec__isNullable__Z(this) }; isNullableSwitchRaw__Z() { return $f_Lio_kaitai_struct_format_AttrLikeSpec__isNullableSwitchRaw__Z(this) }; isLazy__Z() { return true }; path__sci_List() { return this.path$2 }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; init___Lio_kaitai_struct_format_InstanceIdentifier__sci_List__Lio_kaitai_struct_format_DocSpec__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_format_ConditionalSpec__s_Option__s_Option__s_Option(id, path, _doc, dataType, cond, pos, io, valid) { this.id$2 = id; this.path$2 = path; this.dataType$2 = dataType; this.cond$2 = cond; this.pos$2 = pos; this.io$2 = io; this.valid$2 = valid; $c_Lio_kaitai_struct_format_InstanceSpec.prototype.init___Lio_kaitai_struct_format_DocSpec.call(this, _doc); return this }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; valid__s_Option() { return this.valid$2 }; dataTypeComposite__Lio_kaitai_struct_datatype_DataType() { return $f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(this) }; cond__Lio_kaitai_struct_format_ConditionalSpec() { return this.cond$2 }; } const $isArrayOf_Lio_kaitai_struct_format_ParseInstanceSpec = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ParseInstanceSpec))) }); const $d_Lio_kaitai_struct_format_ParseInstanceSpec = new $TypeData().initClass({ Lio_kaitai_struct_format_ParseInstanceSpec: 0 }, false, "io.kaitai.struct.format.ParseInstanceSpec", { Lio_kaitai_struct_format_ParseInstanceSpec: 1, Lio_kaitai_struct_format_InstanceSpec: 1, O: 1, Lio_kaitai_struct_format_MemberSpec: 1, Lio_kaitai_struct_format_YAMLPath: 1, Lio_kaitai_struct_format_AttrLikeSpec: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_ParseInstanceSpec.prototype.$classData = $d_Lio_kaitai_struct_format_ParseInstanceSpec; class $c_Lio_kaitai_struct_translators_CSharpTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { constructor() { super(); this.importList$3 = null; this.asciiCharQuoteMap$3 = null }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "System"); return (((("Convert.ToInt64(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ")") }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".Count") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (("KaitaiStream.StringReverse(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; enumClass__sci_List__T(enumTypeAbs) { const enumTypeRel = $m_Lio_kaitai_struct_Utils$().relClass__sci_List__sci_List__sci_List(enumTypeAbs, this.provider$2.nowClass$1.name$1); return $m_Lio_kaitai_struct_languages_CSharpCompiler$().types2class__sc_Iterable__T(enumTypeRel) }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__T(elts) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__O(value, typeName) { return this.doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const v = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a); return (((v + "[") + v) + ".Count - 1]") }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "System.Linq"); return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".Min()") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "[0]") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + " ? ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + " : ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + ")") }; asciiCharQuoteMap__sci_Map() { return this.asciiCharQuoteMap$3 }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) { const nativeType = $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(t); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); const commaStr = value.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", "); const this$2 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "System.Collections.Generic"); return (((("new List<" + nativeType) + "> { ") + commaStr) + " }") }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".Substring(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + " - ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ")") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { const v = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b); return (((v + "[") + v) + ".Length - 1]") }; doByteArrayNonLiteral__sc_Seq__T(elts) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("new byte[] { " + elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + " }") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("(long) (" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".Length") }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) { return (((("((" + $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(typeName)) + ") (") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + "))") }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + ".Length") }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "System.Linq"); return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".Max()") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(i, base) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "System"); return (((("Convert.ToString((long) (" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i)) + "), ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ")") }; doName__T__T(s) { return ((((s.length | 0) >= 0) && (s.substring(0, ("_".length | 0)) === "_")) ? (($m_Lio_kaitai_struct_format_Identifier$().SWITCH$undON$1 === s) ? "on" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "i" : ("M" + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(s)))) : ("" + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(s))) }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { return (((("System.Text.Encoding.GetEncoding(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ").GetString(") + bytesExpr) + ")") }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const x$2 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(); if (((op !== null) && (op === x$2))) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " == ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) } else { const x$4 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$(); if (((op !== null) && (op === x$4))) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " != ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) } else { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ".CompareTo(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ") ") + $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op)) + " 0)") } } }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; doByteArrayLiteral__sc_Seq__T(arr) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$1$2) { const x$1 = (x$1$2 | 0); return (255 & x$1) }) })(this)); const this$1 = $m_sc_Seq$(); return (("new byte[] { " + arr.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + " }") }; strLiteralGenericCC__C__T(code) { return $f_Lio_kaitai_struct_translators_CommonLiterals__strLiteralUnicode__C__T(this, code) }; numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$(); jsx$1 = (x === op) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { return (((("KaitaiStream.Mod(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { return $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) } }; doBytesCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { return (((((("(KaitaiStream.ByteArrayCompare(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ") ") + $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op)) + " 0)") }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__O(t, value) { return this.doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumTypeAbs, label) { return ((this.enumClass__sci_List__T(enumTypeAbs) + ".") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(label)) }; init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(provider, importList) { this.importList$3 = importList; $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); const self = new $c_jl_Character().init___C(9); const jsx$9 = new $c_T2().init___O__O(self, "\\t"); const self$1 = new $c_jl_Character().init___C(10); const jsx$8 = new $c_T2().init___O__O(self$1, "\\n"); const self$2 = new $c_jl_Character().init___C(13); const jsx$7 = new $c_T2().init___O__O(self$2, "\\r"); const self$3 = new $c_jl_Character().init___C(34); const jsx$6 = new $c_T2().init___O__O(self$3, "\\\""); const self$4 = new $c_jl_Character().init___C(92); const jsx$5 = new $c_T2().init___O__O(self$4, "\\\\"); const self$5 = new $c_jl_Character().init___C(0); const jsx$4 = new $c_T2().init___O__O(self$5, "\\0"); const self$6 = new $c_jl_Character().init___C(7); const jsx$3 = new $c_T2().init___O__O(self$6, "\\a"); const self$7 = new $c_jl_Character().init___C(12); const jsx$2 = new $c_T2().init___O__O(self$7, "\\f"); const self$8 = new $c_jl_Character().init___C(11); const jsx$1 = new $c_T2().init___O__O(self$8, "\\v"); const self$9 = new $c_jl_Character().init___C(8); const array = [jsx$9, jsx$8, jsx$7, jsx$6, jsx$5, jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O(self$9, "\\b")]; const this$44 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$44.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.asciiCharQuoteMap$3 = this$44.elems$1; return this }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumTypeAbs, id) { return (((("((" + this.enumClass__sci_List__T(enumTypeAbs)) + ") ") + id) + ")") }; } const $d_Lio_kaitai_struct_translators_CSharpTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_CSharpTranslator: 0 }, false, "io.kaitai.struct.translators.CSharpTranslator", { Lio_kaitai_struct_translators_CSharpTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_CSharpTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_CSharpTranslator; class $c_Lio_kaitai_struct_translators_CppTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { constructor() { super(); this.importListSrc$3 = null; this.importListHdr$3 = null; this.config$3 = null; this.CHARSET$undUTF8$3 = null; this.asciiCharQuoteMap$3 = null }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); return ((("std::stoi(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ((baseStr === "10") ? "" : (", 0, " + baseStr))) + ")") }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; doIntLiteral__s_math_BigInt__T(n) { const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(0, (-2147483648))); let suffix; if ($f_s_math_Ordered__$$less__O__Z(n, that)) { suffix = "" } else { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(2147483647, (-1))); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$1)) { suffix = "LL" } else { const this$3 = $m_s_math_BigInt$(); const that$2 = this$3.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(2147483647, 0)); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$2)) { suffix = "" } else { const this$4 = $m_s_math_BigInt$(); const that$3 = this$4.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I((-1), 0)); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$3)) { suffix = "UL" } else { const this$5 = $m_s_math_BigInt$(); const that$4 = this$5.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I((-1), 2147483647)); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$4)) { suffix = "LL" } else { const that$5 = $m_Lio_kaitai_struct_Utils$().MAX$undUINT64$1; if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$5)) { suffix = "ULL" } else { suffix = "" } } } } } }; return (n + suffix) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "->size()") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (("kaitai::kstream::reverse(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { const x1 = this.config$3.cppConfig$1.stdStringFrontBack$1; if ((x1 === true)) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + ".front()") } else if ((x1 === false)) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + "[0]") } else { throw new $c_s_MatchError().init___O(x1) } }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__O(value, typeName) { return this.doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "->back()") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { this.importListSrc$3.addSystem__T__V("algorithm"); const v = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a); return (((("*std::min_element(" + v) + "->begin(), ") + v) + "->end())") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "->front()") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { return (((((("((" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + ") ? (") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + ") : (") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + "))") }; asciiCharQuoteMap__sci_Map() { return this.asciiCharQuoteMap$3 }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(container, idx) { return this.bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, values) { if (this.config$3.cppConfig$1.useListInitializers$1) { this.importListHdr$3.addSystem__T__V("vector"); const cppElType = $m_Lio_kaitai_struct_languages_CppCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_CppRuntimeConfig__Lio_kaitai_struct_datatype_DataType__Z__T(this.config$3.cppConfig$1, t, false); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(value$2) { const value = value$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }) })(this)); const this$1 = $m_sc_Seq$(); const rawInit = (((("new std::vector<" + cppElType) + ">{") + values.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "}"); const x1 = this.config$3.cppConfig$1.pointers$1; const x = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x === x1)) { return rawInit } else { const x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((x$3 === x1)) { return (((("std::unique_ptr>(") + rawInit) + ")") } else { throw new $c_s_MatchError().init___O(x1) } } } else { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T("C++ literal arrays are not implemented yet")) } }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("((" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ") ? 1 : 0)") }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "->at(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + ")") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".substr(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ", (") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + ") - (") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + "))") }; cppStaticCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) { return (((("static_cast<" + $m_Lio_kaitai_struct_languages_CppCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_CppRuntimeConfig__Lio_kaitai_struct_datatype_DataType__Z__T(this.config$3.cppConfig$1, typeName, false)) + ">(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + ")") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { const x1 = this.config$3.cppConfig$1.stdStringFrontBack$1; if ((x1 === true)) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + ".back()") } else if ((x1 === false)) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ".length() - 1]") } else { throw new $c_s_MatchError().init___O(x1) } }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (("kaitai::kstream::byte_array_max(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ")") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("static_cast(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".length()") }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) { const x1 = this.config$3.cppConfig$1.pointers$1; const x = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); let jsx$1; if ((x === x1)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); jsx$1 = (x$3 === x1) }; if (jsx$1) { return this.cppStaticCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) } else { const x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); if ((x$5 === x1)) { if ((typeName instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2 = typeName; return (((("std::static_pointer_cast<" + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(x2.classSpec$3.get__O().name$1)) + ">(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + ")") } else { return this.cppStaticCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) } } else { throw new $c_s_MatchError().init___O(x1) } } }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + ".length()") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { this.importListSrc$3.addSystem__T__V("algorithm"); const v = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a); return (((("*std::max_element(" + v) + "->begin(), ") + v) + "->end())") }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(i, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); if ((baseStr === "10")) { return (("kaitai::kstream::to_string(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i)) + ")") } else { throw new $c_jl_UnsupportedOperationException().init___T(baseStr) } }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]") }; doName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s) ? "_" : (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 === s) ? "_buf" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "i" : (s + "()")))) }; init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_languages_components_CppImportList__Lio_kaitai_struct_languages_components_CppImportList__Lio_kaitai_struct_RuntimeConfig(provider, importListSrc, importListHdr, config) { this.importListSrc$3 = importListSrc; this.importListHdr$3 = importListHdr; this.config$3 = config; $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); this.CHARSET$undUTF8$3 = $m_Ljava_nio_charset_Charset$().forName__T__Ljava_nio_charset_Charset("UTF-8"); const self = new $c_jl_Character().init___C(9); const jsx$8 = new $c_T2().init___O__O(self, "\\t"); const self$1 = new $c_jl_Character().init___C(10); const jsx$7 = new $c_T2().init___O__O(self$1, "\\n"); const self$2 = new $c_jl_Character().init___C(13); const jsx$6 = new $c_T2().init___O__O(self$2, "\\r"); const self$3 = new $c_jl_Character().init___C(34); const jsx$5 = new $c_T2().init___O__O(self$3, "\\\""); const self$4 = new $c_jl_Character().init___C(92); const jsx$4 = new $c_T2().init___O__O(self$4, "\\\\"); const self$5 = new $c_jl_Character().init___C(7); const jsx$3 = new $c_T2().init___O__O(self$5, "\\a"); const self$6 = new $c_jl_Character().init___C(12); const jsx$2 = new $c_T2().init___O__O(self$6, "\\f"); const self$7 = new $c_jl_Character().init___C(11); const jsx$1 = new $c_T2().init___O__O(self$7, "\\v"); const self$8 = new $c_jl_Character().init___C(8); const array = [jsx$8, jsx$7, jsx$6, jsx$5, jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O(self$8, "\\b")]; const this$40 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$40.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.asciiCharQuoteMap$3 = this$40.elems$1; return this }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { return (((("kaitai::kstream::bytes_to_str(" + bytesExpr) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ")") }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; anyField__Lio_kaitai_struct_exprlang_Ast$expr__T__T(value, attrName) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + "->") + this.doName__T__T(attrName)) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const x$2 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(); if (((op !== null) && (op === x$2))) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " == (") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { const x$4 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$(); if (((op !== null) && (op === x$4))) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " != ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) } else { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ".compare(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ") ") + $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op)) + " 0)") } } }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; doByteArrayLiteral__sc_Seq__T(arr) { return (((("std::string(\"" + $m_Lio_kaitai_struct_Utils$().hexEscapeByteArray__sc_Seq__T(arr)) + "\", ") + arr.length__I()) + ")") }; numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$(); jsx$1 = (x === op) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { return (((("kaitai::kstream::mod(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { return $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) } }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__O(t, value) { return this.doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (("kaitai::kstream::byte_array_min(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ")") }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumType, label) { const jsx$1 = $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T($f_sc_LinearSeqOptimized__dropRight__I__sc_LinearSeqOptimized(enumType, 1)); $m_Lio_kaitai_struct_Utils$(); const s = (($f_sc_LinearSeqOptimized__last__O(enumType) + "_") + label); return ((jsx$1 + "::") + s.toUpperCase()) }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumType, id) { return (((("static_cast<" + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(enumType)) + ">(") + id) + ")") }; doStringLiteral__T__T(s) { const lenSuffix = (((s.indexOf("\u0000") | 0) !== (-1)) ? (", " + $m_sjsr_RuntimeString$().getBytes__T__Ljava_nio_charset_Charset__AB(s, this.CHARSET$undUTF8$3).u.length) : ""); return ((("std::string(" + $f_Lio_kaitai_struct_translators_CommonLiterals__doStringLiteral__T__T(this, s)) + lenSuffix) + ")") }; } const $d_Lio_kaitai_struct_translators_CppTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_CppTranslator: 0 }, false, "io.kaitai.struct.translators.CppTranslator", { Lio_kaitai_struct_translators_CppTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_CppTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_CppTranslator; class $c_Lio_kaitai_struct_translators_JavaScriptTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { return (((("Number.parseInt(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ")") }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".length") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (("Array.from(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ").reverse().join('')") }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__T(elts) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const v = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a); return (((v + "[") + v) + ".length - 1]") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("KaitaiStream.arrayMin(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "[0]") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + " ? ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + " : ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + ")") }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]") }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + " | 0)") }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".substring(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + ")") }; init___Lio_kaitai_struct_translators_TypeProvider(provider) { $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); return this }; doByteArrayNonLiteral__sc_Seq__T(elts) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("new Uint8Array([" + elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "])") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("Math.trunc(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".length") }; doLocalName__T__T(s) { return ((s === "_") ? s : (($m_Lio_kaitai_struct_format_Identifier$().SWITCH$undON$1 === s) ? "on" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "i" : ("this." + this.doName__T__T(s))))) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("KaitaiStream.arrayMax(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(i, base) { return (((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i)) + ").toString(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ")") }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ".isEof()") }; doName__T__T(s) { return (((s === "_root") || ((s === "_parent") || (s === "_io"))) ? s : $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(s)) }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { return (((("KaitaiStream.bytesToStr(" + bytesExpr) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ")") }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; strLiteralGenericCC__C__T(code) { const this$4 = new $c_sci_StringOps().init___T("\\x%02x"); const array = [code]; const jsx$2 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x = (array$1.length | 0); const x$1 = ((x < len$2) ? x : len$2); const that = result.u.length; const end = ((x$1 < that) ? x$1 : that); while ((i$1 < end)) { const jsx$1 = j; const index$1 = i$1; result.u[jsx$1] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; return jsx$2.format__T__AO__T($$this, result) }; numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$(); jsx$1 = (x === op) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { return (((("Math.floor(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + " / ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { let jsx$2; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$(); jsx$2 = (x$3 === op) } else { jsx$2 = false } } else { jsx$2 = false }; if (jsx$2) { return (((("KaitaiStream.mod(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { let jsx$3; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x$5 = $m_Lio_kaitai_struct_exprlang_Ast$operator$RShift$(); jsx$3 = (x$5 === op) } else { jsx$3 = false } } else { jsx$3 = false }; if (jsx$3) { return (((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + " >>> ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { return $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) } } } }; doBytesCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { return (((((("(KaitaiStream.byteArrayCompare(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ") ") + $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op)) + " 0)") }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumType, label) { return (($m_Lio_kaitai_struct_languages_JavaScriptCompiler$().types2class__sci_List__T(enumType) + ".") + ($m_Lio_kaitai_struct_Utils$(), label.toUpperCase())) }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumTypeAbs, label) { return label }; } const $d_Lio_kaitai_struct_translators_JavaScriptTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_JavaScriptTranslator: 0 }, false, "io.kaitai.struct.translators.JavaScriptTranslator", { Lio_kaitai_struct_translators_JavaScriptTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_JavaScriptTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_JavaScriptTranslator; class $c_Lio_kaitai_struct_translators_JavaTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { constructor() { super(); this.importList$3 = null }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { return (((("Long.parseLong(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ")") }; doIntLiteral__s_math_BigInt__T(n) { const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I((-1), 2147483647)); let literal; if ($f_s_math_Ordered__$$greater__O__Z(n, that)) { const this$2 = n.bigInteger$3; literal = ("0x" + $m_Ljava_math_Conversion$().bigInteger2String__Ljava_math_BigInteger__I__T(this$2, 16)) } else { const this$3 = n.bigInteger$3; literal = $m_Ljava_math_Conversion$().toDecimalScaledString__Ljava_math_BigInteger__T(this$3) }; const this$4 = $m_s_math_BigInt$(); const that$1 = this$4.apply__I__s_math_BigInt(2147483647); let suffix; if ($f_s_math_Ordered__$$greater__O__Z(n, that$1)) { suffix = "L" } else { suffix = "" }; return (literal + suffix) }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(v, et) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) + ".id()") }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".size()") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (("new StringBuilder(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ").reverse().toString()") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; enumClass__sci_List__T(enumTypeAbs) { const enumTypeRel = $m_Lio_kaitai_struct_Utils$().relClass__sci_List__sci_List__sci_List(enumTypeAbs, this.provider$2.nowClass$1.name$1); const f = (function($this) { return (function(x$2) { const x = x$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(x) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((enumTypeRel === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = enumTypeRel.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = enumTypeRel.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(enumTypeRel, bf); let these = enumTypeRel; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T(".") }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__T(elts) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + "[0]") }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__O(value, typeName) { return this.doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const v = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a); return (((v + ".get(") + v) + ".size() - 1)") }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "java.util.Collections"); return (("Collections.min(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".get(0)") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + " ? ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + " : ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + ")") }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(container, idx) { return this.bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) { const javaType = $m_Lio_kaitai_struct_languages_JavaCompiler$().kaitaiType2JavaTypeBoxed__Lio_kaitai_struct_datatype_DataType__T(t); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); const commaStr = value.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", "); const this$2 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "java.util.ArrayList"); const this$3 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$3.list$1, "java.util.Arrays"); return (((("new ArrayList<" + javaType) + ">(Arrays.asList(") + commaStr) + "))") }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + ".get((int) ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + ")") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".substring(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + ")") }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (("KaitaiStream.byteArrayMax(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ")") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + "[(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ").length - 1]") }; doByteArrayNonLiteral__sc_Seq__T(elts) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("new byte[] { " + elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + " }") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("(int) (" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + " + 0)") }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".length()") }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) { const this$1 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); return (((("((" + this$1.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(typeName)) + ") (") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + "))") }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + ".length") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "java.util.Collections"); return (("Collections.max(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(i, base) { return (((("Long.toString(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ")") }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]") }; doName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().ROOT$1 === s) ? s : (($m_Lio_kaitai_struct_format_Identifier$().PARENT$1 === s) ? "_parent()" : (($m_Lio_kaitai_struct_format_Identifier$().IO$1 === s) ? "_io()" : (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s) ? "_it" : (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 === s) ? "_buf" : (($m_Lio_kaitai_struct_format_Identifier$().SWITCH$undON$1 === s) ? "on" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "i" : ($m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(s) + "()")))))))) }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "java.nio.charset.Charset"); return (((("new String(" + bytesExpr) + ", Charset.forName(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + "))") }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(value, et) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const x$2 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(); if (((op !== null) && (op === x$2))) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + ".equals(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { const x$4 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$(); if (((op !== null) && (op === x$4))) { return (((("!(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ").equals(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ".compareTo(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ") ") + $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op)) + " 0)") } } }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; doByteArrayLiteral__sc_Seq__T(arr) { return (("new byte[] { " + arr.mkString__T__T(", ")) + " }") }; numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$(); jsx$1 = (x === op) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { return (((("KaitaiStream.mod(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { return $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) } }; doBytesCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const x = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(); if ((x === op)) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "java.util.Arrays"); return (((("Arrays.equals(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$(); if ((x$3 === op)) { const this$2 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "java.util.Arrays"); return (((("!Arrays.equals(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { return (((((("(KaitaiStream.byteArrayCompare(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ") ") + $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op)) + " 0)") } } }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__O(t, value) { return this.doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (("KaitaiStream.byteArrayMin(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ")") }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumTypeAbs, label) { return ((this.enumClass__sci_List__T(enumTypeAbs) + ".") + ($m_Lio_kaitai_struct_Utils$(), label.toUpperCase())) }; init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(provider, importList) { this.importList$3 = importList; $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); return this }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumTypeAbs, id) { return (((this.enumClass__sci_List__T(enumTypeAbs) + ".byId(") + id) + ")") }; } const $d_Lio_kaitai_struct_translators_JavaTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_JavaTranslator: 0 }, false, "io.kaitai.struct.translators.JavaTranslator", { Lio_kaitai_struct_translators_JavaTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_JavaTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_JavaTranslator; class $c_Lio_kaitai_struct_translators_LuaTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { constructor() { super(); this.importList$3 = null; this.asciiCharQuoteMap$3 = null }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); const add = ((baseStr === "10") ? "" : (", " + baseStr)); return ((("tonumber(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + add) + ")") }; doNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const f = (function($this) { return (function(n$2) { const n = (!(!n$2)); return (n ? "1" : "0") }) })(this); if ((left instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool)) { const x4 = left; const l = x4.n$1; if ((right instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool)) { const x5 = right; const r = x5.n$1; return ((((f(l) + " ") + this.cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(op)) + " ") + f(r)) } }; if ((left instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool)) { const x7 = left; const l$2 = x7.n$1; return ((((f(l$2) + " ") + this.cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(op)) + " ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) }; if ((right instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$Bool)) { const x9 = right; const r$3 = x9.n$1; return ((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " ") + this.cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(op)) + " ") + f(r$3)) }; return $f_Lio_kaitai_struct_translators_CommonOps__doNumericCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(v, et) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) + ".value") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return ("#" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (("string.reverse(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")") }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ":pos()") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("string.byte(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ", 1)") }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const table = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a); return (((table + "[#") + table) + "]") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; strLiteralUnicode__C__T(code) { const this$4 = new $c_sci_StringOps().init___T("\\u{%04x}"); const array = [code]; const jsx$2 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x = (array$1.length | 0); const x$1 = ((x < len$2) ? x : len$2); const that = result.u.length; const end = ((x$1 < that) ? x$1 : that); while ((i$1 < end)) { const jsx$1 = j; const index$1 = i$1; result.u[jsx$1] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; return jsx$2.format__T__AO__T($$this, result) }; doBoolLiteral__Z__T(n) { return (n ? "true" : "false") }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "local utils = require(\"utils\")"); return (("utils.array_min(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "[1]") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "local utils = require(\"utils\")"); return (((((("utils.box_unwrap((" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + ") and utils.box_wrap(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + ") or (") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + "))") }; asciiCharQuoteMap__sci_Map() { return this.asciiCharQuoteMap$3 }; binOp__Lio_kaitai_struct_exprlang_Ast$operator__T(op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$(); if ((x === op)) { return "~" } else { return $f_Lio_kaitai_struct_translators_CommonOps__binOp__Lio_kaitai_struct_exprlang_Ast$operator__T(this, op) } }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(container, idx) { return this.bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("{" + value.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "}") }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + " and 1 or 0)") }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + " + 1]") }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((("string.sub(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + " + 1, ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + ")") }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "local utils = require(\"utils\")"); return (("utils.byte_array_max(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const table = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a); return (((("string.byte(" + table) + ", #") + table) + ")") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + " > 0) and math.floor(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ") or math.ceil(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; doLocalName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s) ? "_" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "i" : ("self." + s))) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (("string.len(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")") }; unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T(op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$(); if ((x === op)) { return "not" } else { return $f_Lio_kaitai_struct_translators_CommonOps__unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T(this, op) } }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "local utils = require(\"utils\")"); return (("utils.array_max(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; booleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__T(op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$boolop$Or$(); if ((x === op)) { return "or" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$boolop$And$(); if ((x$3 === op)) { return "and" } else { throw new $c_s_MatchError().init___O(op) } } }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ":size()") }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(i, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); if ((baseStr === "10")) { return (("tostring(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i)) + ")") } else { throw new $c_jl_UnsupportedOperationException().init___T(baseStr) } }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((("string.byte(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + " + 1)") }; doName__T__T(s) { return s }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ":is_eof()") }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "local str_decode = require(\"string_decode\")"); return (((("str_decode.decode(" + bytesExpr) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ")") }; cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$(); if ((x === op)) { return "~=" } else { return $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op) } }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(value, et) }; decEscapeByteArray__p3__sc_Seq__T(arr) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$2) { const x = (x$2 | 0); const this$4 = new $c_sci_StringOps().init___T("\\%03d"); const array = [(255 & x)]; const jsx$3 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x$1 = (array$1.length | 0); const x$3 = ((x$1 < len$2) ? x$1 : len$2); const that = result.u.length; const end = ((x$3 < that) ? x$3 : that); while ((i$1 < end)) { const jsx$2 = j; const index$1 = i$1; result.u[jsx$2] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; return jsx$3.format__T__AO__T($$this, result) }) })(this)); const this$18 = $m_sc_Seq$(); return arr.map__F1__scg_CanBuildFrom__O(jsx$1, this$18.ReusableCBFInstance$2).mkString__T() }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$(); jsx$1 = (x === op) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { return (((("math.floor(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + " / ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { return $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) } }; doByteArrayLiteral__sc_Seq__T(arr) { return (("\"" + this.decEscapeByteArray__p3__sc_Seq__T(arr)) + "\"") }; kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__O(t, value) { return this.doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "local utils = require(\"utils\")"); return (("utils.byte_array_min(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumTypeAbs, label) { return (($m_Lio_kaitai_struct_languages_LuaCompiler$().types2class__sci_List__T(enumTypeAbs) + ".") + label) }; init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(provider, importList) { this.importList$3 = importList; $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); const self = new $c_jl_Character().init___C(9); const jsx$9 = new $c_T2().init___O__O(self, "\\t"); const self$1 = new $c_jl_Character().init___C(10); const jsx$8 = new $c_T2().init___O__O(self$1, "\\n"); const self$2 = new $c_jl_Character().init___C(13); const jsx$7 = new $c_T2().init___O__O(self$2, "\\r"); const self$3 = new $c_jl_Character().init___C(34); const jsx$6 = new $c_T2().init___O__O(self$3, "\\\""); const self$4 = new $c_jl_Character().init___C(92); const jsx$5 = new $c_T2().init___O__O(self$4, "\\\\"); const self$5 = new $c_jl_Character().init___C(7); const jsx$4 = new $c_T2().init___O__O(self$5, "\\a"); const self$6 = new $c_jl_Character().init___C(8); const jsx$3 = new $c_T2().init___O__O(self$6, "\\b"); const self$7 = new $c_jl_Character().init___C(11); const jsx$2 = new $c_T2().init___O__O(self$7, "\\v"); const self$8 = new $c_jl_Character().init___C(12); const jsx$1 = new $c_T2().init___O__O(self$8, "\\f"); const self$9 = new $c_jl_Character().init___C(27); const array = [jsx$9, jsx$8, jsx$7, jsx$6, jsx$5, jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O(self$9, "\\027")]; const this$44 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$44.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.asciiCharQuoteMap$3 = this$44.elems$1; return this }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumTypeAbs, id) { return ((($m_Lio_kaitai_struct_languages_LuaCompiler$().types2class__sci_List__T(enumTypeAbs) + "(") + id) + ")") }; strConcat__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(left, right) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " .. ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) }; } const $d_Lio_kaitai_struct_translators_LuaTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_LuaTranslator: 0 }, false, "io.kaitai.struct.translators.LuaTranslator", { Lio_kaitai_struct_translators_LuaTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_LuaTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_LuaTranslator; class $c_Lio_kaitai_struct_translators_NimTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { constructor() { super(); this.importList$3 = null }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".parseInt(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ")") }; doIntLiteral__s_math_BigInt__T(n) { const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(2147483647, (-1))); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that)) { return (n + "'i64") } else { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(2147483647, 0)); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$1)) { return ("" + n) } else { const this$3 = $m_s_math_BigInt$(); const that$2 = this$3.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I((-1), 2147483647)); if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$2)) { return (n + "'i64") } else { const that$3 = $m_Lio_kaitai_struct_Utils$().MAX$undUINT64$1; if ($f_s_math_Ordered__$$less$eq__O__Z(n, that$3)) { return (n + "'u64") } else { return ("" + n) } } } } }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(v, et) { return (("ord(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("len(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "unicode"); return (("reversed(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")") }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__T(elts) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__O(value, typeName) { return this.doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "[^1]") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("min(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "[0]") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { return (((((("(if " + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + ": ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + " else: ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + ")") }; binOp__Lio_kaitai_struct_exprlang_Ast$operator__T(op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Add$(); if ((x === op)) { return "+" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Sub$(); if ((x$3 === op)) { return "-" } else { const x$5 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mult$(); if ((x$5 === op)) { return "*" } else { const x$7 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$(); if ((x$7 === op)) { return "div" } else { const x$9 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$(); if ((x$9 === op)) { return "%%%" } else { const x$11 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$(); if ((x$11 === op)) { return "and" } else { const x$13 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$(); if ((x$13 === op)) { return "or" } else { const x$15 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$(); if ((x$15 === op)) { return "xor" } else { const x$17 = $m_Lio_kaitai_struct_exprlang_Ast$operator$LShift$(); if ((x$17 === op)) { return "shl" } else { const x$19 = $m_Lio_kaitai_struct_exprlang_Ast$operator$RShift$(); if ((x$19 === op)) { return "shr" } else { throw new $c_s_MatchError().init___O(op) } } } } } } } } } } }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, t$1) { return (function(v$2) { const v = v$2; return ((($m_Lio_kaitai_struct_languages_NimCompiler$().ksToNim__Lio_kaitai_struct_datatype_DataType__T(t$1) + "(") + $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }) })(this, t)); const this$1 = $m_sc_Seq$(); const contents = value.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", "); return (("@[" + contents) + "]") }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".substr(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + " - 1)") }; doByteArrayNonLiteral__sc_Seq__T(elts) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("@[" + elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "]") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("int(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (("len(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")") }; doLocalName__T__T(s) { if (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s)) { return this.doName__T__T(s) } else if (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s)) { return this.doName__T__T(s) } else if (($m_Lio_kaitai_struct_format_Identifier$().ROOT$1 === s)) { const jsx$1 = $m_Lio_kaitai_struct_languages_NimCompiler$(); const this$1 = this.provider$2; const attrName = $m_Lio_kaitai_struct_format_Identifier$().ROOT$1; return (((jsx$1.ksToNim__Lio_kaitai_struct_datatype_DataType__T(this$1.determineType__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_datatype_DataType(this$1.nowClass$1, attrName)) + "(this.") + this.doName__T__T(s)) + ")") } else { return ("this." + this.doName__T__T(s)) } }; unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T(op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Invert$(); if ((x === op)) { return "not" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Minus$(); if ((x$3 === op)) { return "-" } else { const x$5 = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$(); if ((x$5 === op)) { return "not" } else { throw new $c_s_MatchError().init___O(op) } } } }; doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName) { if ((typeName instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x2 = typeName; const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "sequtils"); return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ".mapIt(it.") + $m_Lio_kaitai_struct_languages_NimCompiler$().ksToNim__Lio_kaitai_struct_datatype_DataType__T(x2.elType$2)) + ")") } else { return (((("(" + $m_Lio_kaitai_struct_languages_NimCompiler$().ksToNim__Lio_kaitai_struct_datatype_DataType__T(typeName)) + "(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + "))") } }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("max(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; booleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__T(op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$boolop$And$(); if ((x === op)) { return "and" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$boolop$Or$(); if ((x$3 === op)) { return "or" } else { throw new $c_s_MatchError().init___O(op) } } }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(v, base) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "strutils"); return (("intToStr(int(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + "))") }; doName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().ROOT$1 === s) ? "root" : (($m_Lio_kaitai_struct_format_Identifier$().PARENT$1 === s) ? "parent" : (($m_Lio_kaitai_struct_format_Identifier$().IO$1 === s) ? "io" : (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s) ? "it" : (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 === s) ? "buf" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "i" : (($m_Lio_kaitai_struct_format_Identifier$().SWITCH$undON$1 === s) ? "on" : (($m_Lio_kaitai_struct_format_Identifier$().IS$undLE$1 === s) ? "isLe" : (($m_Lio_kaitai_struct_format_Identifier$().SIZEOF$1 === s) ? "size" : ("" + $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(s, false))))))))))) }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { return (((("encode(" + bytesExpr) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ")") }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(value, et) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; doByteArrayLiteral__sc_Seq__T(arr) { return ((arr.size__I() === 0) ? "@[]" : (("@[" + arr.mkString__T__T("'u8, ")) + "'u8]")) }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__O(t, value) { return this.doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumTypeAbs, label) { return ((enumTypeAbs.head__O() + ".") + label) }; init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(provider, importList) { this.importList$3 = importList; $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); return this }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumTypeAbs, id) { return ((($m_Lio_kaitai_struct_languages_NimCompiler$().namespaced__sci_List__T(enumTypeAbs) + "(") + id) + ")") }; strConcat__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(left, right) { return (((("($" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + " & $") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") }; } const $d_Lio_kaitai_struct_translators_NimTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_NimTranslator: 0 }, false, "io.kaitai.struct.translators.NimTranslator", { Lio_kaitai_struct_translators_NimTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_NimTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_NimTranslator; class $c_Lio_kaitai_struct_translators_PHPTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { constructor() { super(); this.asciiCharQuoteMap$3 = null; this.namespaceRef$3 = null }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { return (((("intval(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ")") }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("count(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (("strrev(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_RuntimeConfig(provider, config) { $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); const self = new $c_jl_Character().init___C(9); const jsx$8 = new $c_T2().init___O__O(self, "\\t"); const self$1 = new $c_jl_Character().init___C(10); const jsx$7 = new $c_T2().init___O__O(self$1, "\\n"); const self$2 = new $c_jl_Character().init___C(13); const jsx$6 = new $c_T2().init___O__O(self$2, "\\r"); const self$3 = new $c_jl_Character().init___C(34); const jsx$5 = new $c_T2().init___O__O(self$3, "\\\""); const self$4 = new $c_jl_Character().init___C(92); const jsx$4 = new $c_T2().init___O__O(self$4, "\\\\"); const self$5 = new $c_jl_Character().init___C(36); const jsx$3 = new $c_T2().init___O__O(self$5, "\\$"); const self$6 = new $c_jl_Character().init___C(12); const jsx$2 = new $c_T2().init___O__O(self$6, "\\f"); const self$7 = new $c_jl_Character().init___C(11); const jsx$1 = new $c_T2().init___O__O(self$7, "\\v"); const self$8 = new $c_jl_Character().init___C(27); const array = [jsx$8, jsx$7, jsx$6, jsx$5, jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O(self$8, "\\e")]; const this$40 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$40.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.asciiCharQuoteMap$3 = this$40.elems$1; const thiz = config.phpNamespace$1; if ((thiz === null)) { throw new $c_jl_NullPointerException().init___() }; this.namespaceRef$3 = ((thiz === "") ? "" : ("\\" + config.phpNamespace$1)); return this }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__T(elts) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (("ord(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + "[0])") }; types2classAbs__sci_List__T(names) { $m_sci_List$(); const o9 = new $c_s_Some().init___O(names); let jsx$1; if ((o9.value$2 !== null)) { const this$2 = o9.value$2; jsx$1 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$2, 1) === 0) } else { jsx$1 = false }; if (jsx$1) { const this$3 = o9.value$2; const p3 = $f_sc_LinearSeqOptimized__apply__I__O(this$3, 0); if ((p3 === "kaitai_struct")) { return "\\Kaitai\\Struct\\Struct" } }; return ((this.namespaceRef$3 + "\\") + $m_Lio_kaitai_struct_languages_PHPCompiler$().types2classRel__sci_List__T(names)) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const v = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a); return (((v + "[count(") + v) + ") - 1]") }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; strLiteralUnicode__C__T(code) { const this$4 = new $c_sci_StringOps().init___T("\\u{%x}"); const array = [code]; const jsx$2 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x = (array$1.length | 0); const x$1 = ((x < len$2) ? x : len$2); const that = result.u.length; const end = ((x$1 < that) ? x$1 : that); while ((i$1 < end)) { const jsx$1 = j; const index$1 = i$1; result.u[jsx$1] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; return jsx$2.format__T__AO__T($$this, result) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("min(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "[0]") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + " ? ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + " : ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + ")") }; asciiCharQuoteMap__sci_Map() { return this.asciiCharQuoteMap$3 }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(container, idx) { return this.bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("intval(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((("\\Kaitai\\Struct\\Stream::substring(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + ")") }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (("\\Kaitai\\Struct\\Stream::byteArrayMax(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ")") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (((("ord(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + "[") + this.bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + " - 1])") }; doByteArrayNonLiteral__sc_Seq__T(elts) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("pack('C*', " + elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + ")") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("intval(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; doLocalName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s) ? "$_" : (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 === s) ? "$_buf" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "$i" : ("$this->" + this.doName__T__T(s))))) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (("strlen(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")") }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (("strlen(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ")") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("max(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(i, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); return ((baseStr === "10") ? (("strval(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i)) + ")") : (((("base_convert(strval(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i)) + "), 10, ") + baseStr) + ")")) }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((("ord(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container)) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "])") }; doName__T__T(s) { return ($m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(s) + "()") }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { return (((("\\Kaitai\\Struct\\Stream::bytesToStr(" + bytesExpr) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ")") }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; anyField__Lio_kaitai_struct_exprlang_Ast$expr__T__T(value, attrName) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + "->") + this.doName__T__T(attrName)) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; doByteArrayLiteral__sc_Seq__T(arr) { return (("\"" + $m_Lio_kaitai_struct_Utils$().hexEscapeByteArray__sc_Seq__T(arr)) + "\"") }; numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$(); jsx$1 = (x === op) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { return (((("intval(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + " / ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { let jsx$2; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$(); jsx$2 = (x$3 === op) } else { jsx$2 = false } } else { jsx$2 = false }; if (jsx$2) { return (((("\\Kaitai\\Struct\\Stream::mod(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { return $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) } } }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (("\\Kaitai\\Struct\\Stream::byteArrayMin(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ")") }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumTypeAbs, label) { const enumClass = this.types2classAbs__sci_List__T(enumTypeAbs); return ((enumClass + "::") + ($m_Lio_kaitai_struct_Utils$(), label.toUpperCase())) }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumTypeAbs, id) { return id }; strConcat__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(left, right) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " . ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) }; } const $d_Lio_kaitai_struct_translators_PHPTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_PHPTranslator: 0 }, false, "io.kaitai.struct.translators.PHPTranslator", { Lio_kaitai_struct_translators_PHPTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_PHPTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_PHPTranslator; class $c_Lio_kaitai_struct_translators_PerlTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { constructor() { super(); this.importList$3 = null; this.asciiCharQuoteMap$3 = null }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); if ((baseStr === "8")) { return (("oct(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")") } else if ((baseStr === "10")) { return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) } else if ((baseStr === "16")) { return (("hex(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")") } else { throw new $c_jl_UnsupportedOperationException().init___T(baseStr) } }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("scalar(@{" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + "})") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (("scalar(reverse(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + "))") }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__T(elts) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("@{" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + "}[-1]") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; strLiteralUnicode__C__T(code) { const this$4 = new $c_sci_StringOps().init___T("\\N{U+%04x}"); const array = [code]; const jsx$2 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x = (array$1.length | 0); const x$1 = ((x < len$2) ? x : len$2); const that = result.u.length; const end = ((x$1 < that) ? x$1 : that); while ((i$1 < end)) { const jsx$1 = j; const index$1 = i$1; result.u[jsx$1] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; return jsx$2.format__T__AO__T($$this, result) }; doBoolLiteral__Z__T(n) { return (n ? "1" : "0") }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const x1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(a).elType$2; const funcName = ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) ? "minstr" : "min"); const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "List::Util"); return (((("List::Util::" + funcName) + "(@{") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + "})") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("@{" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + "}[0]") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + " ? ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + " : ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + ")") }; asciiCharQuoteMap__sci_Map() { return this.asciiCharQuoteMap$3 }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("(" + value.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + ")") }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((("@{" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container)) + "}[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ":") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + "]") }; doByteArrayNonLiteral__sc_Seq__T(elts) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("pack('C*', (" + elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "))") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("int(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (("length(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + ")") }; doLocalName__T__T(s) { return (((s === "_") || (s === "_on")) ? ("$" + s) : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? this.doName__T__T(s) : ("$self->" + this.doName__T__T(s)))) }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const x1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(a).elType$2; const funcName = ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) ? "maxstr" : "max"); const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "List::Util"); return (((("List::Util::" + funcName) + "(@{") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + "})") }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + "->size()") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(i, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); let format; if ((baseStr === "8")) { format = "%o" } else if ((baseStr === "10")) { format = "%d" } else { if ((baseStr !== "16")) { throw new $c_jl_UnsupportedOperationException().init___T(baseStr) }; format = "0x%X" }; return (((("sprintf('" + format) + "', ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i)) + ")") }; doName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s) ? "$_" : (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 === s) ? "$_buf" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "$i" : (s + "()")))) }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "Encode"); return (((("Encode::decode(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ", ") + bytesExpr) + ")") }; anyField__Lio_kaitai_struct_exprlang_Ast$expr__T__T(value, attrName) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + "->") + this.doName__T__T(attrName)) }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const x = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(); let opStr; if ((x === op)) { opStr = "eq" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$(); if ((x$3 === op)) { opStr = "ne" } else { const x$5 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Lt$(); if ((x$5 === op)) { opStr = "lt" } else { const x$7 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$LtE$(); if ((x$7 === op)) { opStr = "le" } else { const x$9 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Gt$(); if ((x$9 === op)) { opStr = "gt" } else { const x$11 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$GtE$(); if ((!(x$11 === op))) { throw new $c_s_MatchError().init___O(op) }; opStr = "ge" } } } } }; return ((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " ") + opStr) + " ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; doBytesCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { return this.doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) }; numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$(); jsx$1 = (x === op) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { return (((("int(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + " / ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") } else { return $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) } }; doByteArrayLiteral__sc_Seq__T(arr) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$1$2) { const x$1 = (x$1$2 | 0); return (255 & x$1) }) })(this)); const this$1 = $m_sc_Seq$(); return (("pack('C*', (" + arr.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "))") }; doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__O(t, value) { return this.doArrayLiteral__Lio_kaitai_struct_datatype_DataType__sc_Seq__T(t, value) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumType, label) { const enumClass = $m_Lio_kaitai_struct_languages_PerlCompiler$().types2class__sci_List__T($f_sc_TraversableLike__init__O(enumType)); if ((enumClass === null)) { throw new $c_jl_NullPointerException().init___() }; let enumClassWithScope; if ((enumClass === "")) { enumClassWithScope = "" } else { enumClassWithScope = (enumClass + "::") }; $m_Lio_kaitai_struct_Utils$(); const s = $f_sc_LinearSeqOptimized__last__O(enumType); const enumName = s.toUpperCase(); return (((("$" + enumClassWithScope) + enumName) + "_") + ($m_Lio_kaitai_struct_Utils$(), label.toUpperCase())) }; init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(provider, importList) { this.importList$3 = importList; $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); const self = new $c_jl_Character().init___C(9); const jsx$11 = new $c_T2().init___O__O(self, "\\t"); const self$1 = new $c_jl_Character().init___C(10); const jsx$10 = new $c_T2().init___O__O(self$1, "\\n"); const self$2 = new $c_jl_Character().init___C(13); const jsx$9 = new $c_T2().init___O__O(self$2, "\\r"); const self$3 = new $c_jl_Character().init___C(34); const jsx$8 = new $c_T2().init___O__O(self$3, "\\\""); const self$4 = new $c_jl_Character().init___C(92); const jsx$7 = new $c_T2().init___O__O(self$4, "\\\\"); const self$5 = new $c_jl_Character().init___C(36); const jsx$6 = new $c_T2().init___O__O(self$5, "\\$"); const self$6 = new $c_jl_Character().init___C(64); const jsx$5 = new $c_T2().init___O__O(self$6, "\\@"); const self$7 = new $c_jl_Character().init___C(37); const jsx$4 = new $c_T2().init___O__O(self$7, "\\%"); const self$8 = new $c_jl_Character().init___C(7); const jsx$3 = new $c_T2().init___O__O(self$8, "\\a"); const self$9 = new $c_jl_Character().init___C(12); const jsx$2 = new $c_T2().init___O__O(self$9, "\\f"); const self$10 = new $c_jl_Character().init___C(27); const jsx$1 = new $c_T2().init___O__O(self$10, "\\e"); const self$11 = new $c_jl_Character().init___C(8); const array = [jsx$11, jsx$10, jsx$9, jsx$8, jsx$7, jsx$6, jsx$5, jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O(self$11, "\\b")]; const this$52 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$52.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.asciiCharQuoteMap$3 = this$52.elems$1; return this }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumTypeAbs, id) { return id }; strConcat__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(left, right) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " . ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) }; } const $d_Lio_kaitai_struct_translators_PerlTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_PerlTranslator: 0 }, false, "io.kaitai.struct.translators.PerlTranslator", { Lio_kaitai_struct_translators_PerlTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_PerlTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_PerlTranslator; class $c_Lio_kaitai_struct_translators_PythonTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { constructor() { super(); this.importList$3 = null; this.asciiCharQuoteMap$3 = null }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); const add = ((baseStr === "10") ? "" : (", " + baseStr)); return ((("int(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + add) + ")") }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(v, et) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) + ".value") }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("len(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + ")[::-1]") }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__T(elts) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ".pos()") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const this$1 = $m_s_math_BigInt$(); return this.bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(a, new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(this$1.apply__I__s_math_BigInt(0))) }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "[-1]") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; doBoolLiteral__Z__T(n) { return (n ? "True" : "False") }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("min(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + "[0]") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + " if ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + " else ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + ")") }; asciiCharQuoteMap__sci_Map() { return this.asciiCharQuoteMap$3 }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(container, idx) { return this.bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("int(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]") }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s)) + ")[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ":") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + "]") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { const this$1 = $m_s_math_BigInt$(); return this.bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(a, new $c_Lio_kaitai_struct_exprlang_Ast$expr$IntNum().init___s_math_BigInt(this$1.apply__I__s_math_BigInt((-1)))) }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (("KaitaiStream.byte_array_max(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ")") }; doByteArrayNonLiteral__sc_Seq__T(elts) { const this$1 = this.importList$3; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "import struct"); const jsx$2 = elts.length__I(); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$2 = $m_sc_Seq$(); return (((("struct.pack('" + jsx$2) + "b', ") + elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$2.ReusableCBFInstance$2).mkString__T__T(", ")) + ")") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("int(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ")") }; doLocalName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s) ? "_" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "i" : ("self." + this.doName__T__T(s)))) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (("len(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + ")") }; unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T(op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$unaryop$Not$(); if ((x === op)) { return "not " } else { return $f_Lio_kaitai_struct_translators_CommonOps__unaryOp__Lio_kaitai_struct_exprlang_Ast$unaryop__T(this, op) } }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (("len(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + ")") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (("max(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a)) + ")") }; booleanOp__Lio_kaitai_struct_exprlang_Ast$boolop__T(op) { const x = $m_Lio_kaitai_struct_exprlang_Ast$boolop$Or$(); if ((x === op)) { return "or" } else { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$boolop$And$(); if ((x$3 === op)) { return "and" } else { throw new $c_s_MatchError().init___O(op) } } }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ".size()") }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(i, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); let func; if ((baseStr === "2")) { func = "bin" } else if ((baseStr === "8")) { func = "oct" } else if ((baseStr === "10")) { func = "str" } else { if ((baseStr !== "16")) { throw new $c_jl_UnsupportedOperationException().init___T(baseStr) }; func = "hex" }; return (((func + "(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i)) + ")") }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((("KaitaiStream.byte_array_index(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + ")") }; doName__T__T(s) { return s }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ".is_eof()") }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { return (((("(" + bytesExpr) + ").decode(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ")") }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(value, et) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$(); jsx$1 = (x === op) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " // ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) } else { return $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) } }; doByteArrayLiteral__sc_Seq__T(arr) { return (("b\"" + $m_Lio_kaitai_struct_Utils$().hexEscapeByteArray__sc_Seq__T(arr)) + "\"") }; kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (("KaitaiStream.byte_array_min(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b)) + ")") }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumTypeAbs, label) { return (($m_Lio_kaitai_struct_languages_PythonCompiler$().types2class__sci_List__T(enumTypeAbs) + ".") + label) }; init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(provider, importList) { this.importList$3 = importList; $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); const self = new $c_jl_Character().init___C(9); const jsx$8 = new $c_T2().init___O__O(self, "\\t"); const self$1 = new $c_jl_Character().init___C(10); const jsx$7 = new $c_T2().init___O__O(self$1, "\\n"); const self$2 = new $c_jl_Character().init___C(13); const jsx$6 = new $c_T2().init___O__O(self$2, "\\r"); const self$3 = new $c_jl_Character().init___C(34); const jsx$5 = new $c_T2().init___O__O(self$3, "\\\""); const self$4 = new $c_jl_Character().init___C(92); const jsx$4 = new $c_T2().init___O__O(self$4, "\\\\"); const self$5 = new $c_jl_Character().init___C(7); const jsx$3 = new $c_T2().init___O__O(self$5, "\\a"); const self$6 = new $c_jl_Character().init___C(12); const jsx$2 = new $c_T2().init___O__O(self$6, "\\f"); const self$7 = new $c_jl_Character().init___C(11); const jsx$1 = new $c_T2().init___O__O(self$7, "\\v"); const self$8 = new $c_jl_Character().init___C(8); const array = [jsx$8, jsx$7, jsx$6, jsx$5, jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O(self$8, "\\b")]; const this$40 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$40.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.asciiCharQuoteMap$3 = this$40.elems$1; return this }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumTypeAbs, id) { return (((("KaitaiStream.resolve_enum(" + $m_Lio_kaitai_struct_languages_PythonCompiler$().types2class__sci_List__T(enumTypeAbs)) + ", ") + id) + ")") }; doStringLiteral__T__T(s) { return ("u" + $f_Lio_kaitai_struct_translators_CommonLiterals__doStringLiteral__T__T(this, s)) }; } const $d_Lio_kaitai_struct_translators_PythonTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_PythonTranslator: 0 }, false, "io.kaitai.struct.translators.PythonTranslator", { Lio_kaitai_struct_translators_PythonTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_PythonTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_PythonTranslator; class $c_Lio_kaitai_struct_translators_RubyTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { constructor() { super(); this.asciiCharQuoteMap$3 = null }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".to_i") + ((baseStr === "10") ? "" : (("(" + baseStr) + ")"))) }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(v, et) { return (((this.enumInverseMap__Lio_kaitai_struct_datatype_DataType$EnumType__T(et) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + "]") }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".length") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".reverse") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__T(elts) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + "[0].ord") }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".last") }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".min") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".first") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + " ? ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + " : ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + ")") }; asciiCharQuoteMap__sci_Map() { return this.asciiCharQuoteMap$3 }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(container, idx) { return this.bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]") }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; init___Lio_kaitai_struct_translators_TypeProvider(provider) { $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); const self = new $c_jl_Character().init___C(9); const jsx$10 = new $c_T2().init___O__O(self, "\\t"); const self$1 = new $c_jl_Character().init___C(10); const jsx$9 = new $c_T2().init___O__O(self$1, "\\n"); const self$2 = new $c_jl_Character().init___C(13); const jsx$8 = new $c_T2().init___O__O(self$2, "\\r"); const self$3 = new $c_jl_Character().init___C(34); const jsx$7 = new $c_T2().init___O__O(self$3, "\\\""); const self$4 = new $c_jl_Character().init___C(92); const jsx$6 = new $c_T2().init___O__O(self$4, "\\\\"); const self$5 = new $c_jl_Character().init___C(35); const jsx$5 = new $c_T2().init___O__O(self$5, "\\#"); const self$6 = new $c_jl_Character().init___C(7); const jsx$4 = new $c_T2().init___O__O(self$6, "\\a"); const self$7 = new $c_jl_Character().init___C(12); const jsx$3 = new $c_T2().init___O__O(self$7, "\\f"); const self$8 = new $c_jl_Character().init___C(11); const jsx$2 = new $c_T2().init___O__O(self$8, "\\v"); const self$9 = new $c_jl_Character().init___C(27); const jsx$1 = new $c_T2().init___O__O(self$9, "\\e"); const self$10 = new $c_jl_Character().init___C(8); const array = [jsx$10, jsx$9, jsx$8, jsx$7, jsx$6, jsx$5, jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O(self$10, "\\b")]; const this$48 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$48.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.asciiCharQuoteMap$3 = this$48.elems$1; return this }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + "..(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + " - 1)]") }; bytesMax__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + ".bytes.max") }; bytesLast__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + "[-1].ord") }; doByteArrayNonLiteral__sc_Seq__T(elts) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("[" + elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + "].pack('C*')") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v)) + ").to_i") }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".size") }; enumDirectMap__sci_List__T(enumTypeAndName) { const enumTypeAbs = $f_sc_LinearSeqOptimized__dropRight__I__sc_LinearSeqOptimized(enumTypeAndName, 1); $m_Lio_kaitai_struct_Utils$(); const s = $f_sc_LinearSeqOptimized__last__O(enumTypeAndName); const enumTypeName = s.toUpperCase(); const enumTypeRel = $m_Lio_kaitai_struct_Utils$().relClass__sci_List__sci_List__sci_List(enumTypeAbs, this.provider$2.nowClass$1.name$1); if ($f_sc_TraversableOnce__nonEmpty__Z(enumTypeRel)) { const f = (function($this) { return (function(x$2) { const x = x$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(x) }) })(this); const this$4 = $m_sci_List$(); const bf = this$4.ReusableCBFInstance$2; let jsx$2; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((enumTypeRel === $m_sci_Nil$())) { jsx$2 = $m_sci_Nil$() } else { const arg1 = enumTypeRel.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = enumTypeRel.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$5 = rest; rest = this$5.tail__sci_List() }; jsx$2 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(enumTypeRel, bf); let these = enumTypeRel; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$6 = these; these = this$6.tail__sci_List() }; jsx$2 = b.result__O() }; $m_sci_List$(); const array = [enumTypeName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$10 = result; const index = i; const x$1 = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$10); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$11 = $m_sci_List$(); return jsx$2.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$11.ReusableCBFInstance$2).mkString__T__T("::") } else { return enumTypeName } }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + ".size") }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".max") }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(i, base) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i) + (".to_s(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base))) + ")") }; bytesSubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "].ord") }; doName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "i" : s) }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) + ".eof?") }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { return (((("(" + bytesExpr) + ").force_encoding(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ")") }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(value, et) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; doByteArrayLiteral__sc_Seq__T(arr) { return ($c_Lio_kaitai_struct_translators_BaseTranslator.prototype.doByteArrayLiteral__sc_Seq__T.call(this, arr) + ".pack('C*')") }; bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; enumInverseMap__Lio_kaitai_struct_datatype_DataType$EnumType__T(et) { const enumTypeAndName = et.enumSpec$1.get__O().name$1; const enumDirectMap = this.enumDirectMap__sci_List__T(enumTypeAndName); $m_Lio_kaitai_struct_Utils$(); const s = $f_sc_LinearSeqOptimized__last__O(enumTypeAndName); const enumNameDirect = s.toUpperCase(); const enumNameInverse = $m_Lio_kaitai_struct_languages_RubyCompiler$().inverseEnumName__T__T(enumNameDirect); return enumDirectMap.split(enumNameDirect).join(enumNameInverse) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; bytesMin__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + ".bytes.min") }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumTypeAbs, label) { return (((":" + $f_sc_LinearSeqOptimized__last__O(enumTypeAbs)) + "_") + label) }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumType, id) { return (((("Kaitai::Struct::Stream::resolve_enum(" + this.enumDirectMap__sci_List__T(enumType)) + ", ") + id) + ")") }; } const $d_Lio_kaitai_struct_translators_RubyTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_RubyTranslator: 0 }, false, "io.kaitai.struct.translators.RubyTranslator", { Lio_kaitai_struct_translators_RubyTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_RubyTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_RubyTranslator; class $c_Lio_kaitai_struct_translators_RustTranslator extends $c_Lio_kaitai_struct_translators_BaseTranslator { constructor() { super(); this.asciiCharQuoteMap$3 = null }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) { const x1 = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); return ((x1 === "10") ? (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".parse().unwrap()") : (("panic!(\"Converting from string to int in base {} is unimplemented\", " + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base)) + ")")) }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".len()") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, from, to) { return this.strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".graphemes(true).rev().flat_map(|g| g.chars()).collect()") }; init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_RuntimeConfig(provider, config) { $c_Lio_kaitai_struct_translators_BaseTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider.call(this, provider); const self = new $c_jl_Character().init___C(9); const jsx$4 = new $c_T2().init___O__O(self, "\\t"); const self$1 = new $c_jl_Character().init___C(10); const jsx$3 = new $c_T2().init___O__O(self$1, "\\n"); const self$2 = new $c_jl_Character().init___C(13); const jsx$2 = new $c_T2().init___O__O(self$2, "\\r"); const self$3 = new $c_jl_Character().init___C(34); const jsx$1 = new $c_T2().init___O__O(self$3, "\\\""); const self$4 = new $c_jl_Character().init___C(92); const array = [jsx$4, jsx$3, jsx$2, jsx$1, new $c_T2().init___O__O(self$4, "\\\\")]; const this$24 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$24.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; this.asciiCharQuoteMap$3 = this$24.elems$1; return this }; doByteArrayNonLiteral__sc_Seq__O(elts) { return this.doByteArrayNonLiteral__sc_Seq__T(elts) }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; types2classAbs__sci_List__T(names) { $m_sci_List$(); const o9 = new $c_s_Some().init___O(names); let jsx$1; if ((o9.value$2 !== null)) { const this$2 = o9.value$2; jsx$1 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$2, 1) === 0) } else { jsx$1 = false }; if (jsx$1) { const this$3 = o9.value$2; const p3 = $f_sc_LinearSeqOptimized__apply__I__O(this$3, 0); if ((p3 === "kaitai_struct")) { return "&Option>" } }; return $m_Lio_kaitai_struct_languages_RustCompiler$().types2classRel__sci_List__T(names) }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".last()") }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__O(b) { return this.bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; strLiteralUnicode__C__T(code) { const this$4 = new $c_sci_StringOps().init___T("\\u{%x}"); const array = [code]; const jsx$2 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x = (array$1.length | 0); const x$1 = ((x < len$2) ? x : len$2); const that = result.u.length; const end = ((x$1 < that) ? x$1 : that); while ((i$1 < end)) { const jsx$1 = j; const index$1 = i$1; result.u[jsx$1] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; return jsx$2.format__T__AO__T($$this, result) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".iter().min()") }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".first()") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(value, num) { return this.intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(value, num) }; doIfExp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition, ifTrue, ifFalse) { return (((((("if " + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + " { ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifTrue)) + " } else { ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(ifFalse)) + "}") }; asciiCharQuoteMap__sci_Map() { return this.asciiCharQuoteMap$3 }; boolToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) + " as i32") }; arraySubscript__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(container, idx) { return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(container) + "[") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(idx)) + "]") }; strSubstring__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, from, to) { return (((((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".substring(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(from)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(to)) + ")") }; doByteArrayNonLiteral__sc_Seq__T(elts) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(v$2) { const v = v$2; return $this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this)); const this$1 = $m_sc_Seq$(); return (("pack('C*', " + elts.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + ")") }; floatToInt__Lio_kaitai_struct_exprlang_Ast$expr__T(v) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) + " as i32") }; strLength__Lio_kaitai_struct_exprlang_Ast$expr__T(s) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(s) + ".len()") }; doLocalName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s) ? "tmpa" : (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 === s) ? "tmpb" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "i" : ("self." + s)))) }; bytesLength__Lio_kaitai_struct_exprlang_Ast$expr__T(b) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(b) + ".len()") }; doByteArrayLiteral__sc_Seq__O(arr) { return this.doByteArrayLiteral__sc_Seq__T(arr) }; arrayMax__Lio_kaitai_struct_exprlang_Ast$expr__T(a) { return (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) + ".iter().max()") }; intToStr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(i, base) { const baseStr = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(base); return ((baseStr === "10") ? (this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i) + ".to_string()") : (((("base_convert(strval(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(i)) + "), 10, ") + baseStr) + ")")) }; doName__T__T(s) { return s }; strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__O(s, base) { return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base) }; bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T(bytesExpr, encoding) { const x1 = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding); return ((x1 === "\"ASCII\"") ? (("String::from_utf8_lossy(" + bytesExpr) + ")") : (("panic!(\"Unimplemented encoding for bytesToStr: {}\", " + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ")")) }; enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O(value, et) { return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; arraySize__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; strReverse__Lio_kaitai_struct_exprlang_Ast$expr__O(s) { return this.strReverse__Lio_kaitai_struct_exprlang_Ast$expr__T(s) }; doByteArrayLiteral__sc_Seq__T(arr) { const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x$2) { const x = (x$2 | 0); const this$4 = new $c_sci_StringOps().init___T("%0#2x"); const array = [(255 & x)]; const jsx$3 = $m_sjsr_RuntimeString$(); const $$this = this$4.repr$1; $m_sc_Seq$(); $m_sjs_js_WrappedArray$(); const array$1 = []; const x1 = (array.length | 0); switch (x1) { case (-1): { break } }; let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; const elem = $f_sci_StringLike__unwrapArg__psci_StringLike__O__O(this$4, arg1); array$1.push(elem); i = ((1 + i) | 0) }; $m_s_reflect_ManifestFactory$ObjectManifest$(); const len$1 = (array$1.length | 0); const result = $newArrayObject($d_O.getArrayOf(), [len$1]); const len$2 = result.u.length; let i$1 = 0; let j = 0; const x$1 = (array$1.length | 0); const x$3 = ((x$1 < len$2) ? x$1 : len$2); const that = result.u.length; const end = ((x$3 < that) ? x$3 : that); while ((i$1 < end)) { const jsx$2 = j; const index$1 = i$1; result.u[jsx$2] = array$1[index$1]; i$1 = ((1 + i$1) | 0); j = ((1 + j) | 0) }; return jsx$3.format__T__AO__T($$this, result) }) })(this)); const this$18 = $m_sc_Seq$(); return (("vec!([" + arr.map__F1__scg_CanBuildFrom__O(jsx$1, this$18.ReusableCBFInstance$2).mkString__T__T(", ")) + "])") }; numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(left, op, right) { const _1 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(left); const _2 = this.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(right); let jsx$1; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x = $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$(); jsx$1 = (x === op) } else { jsx$1 = false } } else { jsx$1 = false }; if (jsx$1) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " / ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) } else { let jsx$2; if ((_1 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { if ((_2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { const x$3 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$(); jsx$2 = (x$3 === op) } else { jsx$2 = false } } else { jsx$2 = false }; if (jsx$2) { return ((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + " % ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) } else { return $f_Lio_kaitai_struct_translators_CommonOps__numericBinOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$operator__Lio_kaitai_struct_exprlang_Ast$expr__T(this, left, op, right) } } }; arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayLast__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayMin__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumByLabel__sci_List__T__T(enumTypeAbs, label) { const enumClass = this.types2classAbs__sci_List__T(enumTypeAbs); return ((enumClass + "::") + ($m_Lio_kaitai_struct_Utils$(), label.toUpperCase())) }; arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__O(a) { return this.arrayFirst__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }; doEnumById__sci_List__T__T(enumTypeAbs, id) { return id }; strConcat__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(left, right) { return (((("format!(\"{}{}\", " + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ", ") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")") }; } const $d_Lio_kaitai_struct_translators_RustTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_RustTranslator: 0 }, false, "io.kaitai.struct.translators.RustTranslator", { Lio_kaitai_struct_translators_RustTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_RustTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_RustTranslator; class $c_s_math_BigDecimal extends $c_s_math_ScalaNumber { constructor() { super(); this.bigDecimal$3 = null; this.mc$3 = null; this.computedHashCode$3 = 0 }; isValidInt__Z() { try { this.bigDecimal$3.intValueExact__I(); return true } catch (e) { if ((e instanceof $c_jl_ArithmeticException)) { return false } else { throw e } } }; toBigInt__s_math_BigInt() { return new $c_s_math_BigInt().init___Ljava_math_BigInteger(this.bigDecimal$3.toBigInteger__Ljava_math_BigInteger()) }; longValue__J() { return this.bigDecimal$3.longValue__J() }; init___Ljava_math_BigDecimal__Ljava_math_MathContext(bigDecimal, mc) { this.bigDecimal$3 = bigDecimal; this.mc$3 = mc; if ((bigDecimal === null)) { throw new $c_jl_IllegalArgumentException().init___T("null value for BigDecimal") }; if ((mc === null)) { throw new $c_jl_IllegalArgumentException().init___T("null MathContext for BigDecimal") }; this.computedHashCode$3 = 1565550863; return this }; isValidShort__Z() { try { this.bigDecimal$3.shortValueExact__S(); return true } catch (e) { if ((e instanceof $c_jl_ArithmeticException)) { return false } else { throw e } } }; byteValue__B() { return ((this.bigDecimal$3.intValue__I() << 24) >> 24) }; equals__O__Z(that) { if ((that instanceof $c_s_math_BigDecimal)) { const x2 = that; return this.equals__s_math_BigDecimal__Z(x2) } else if ((that instanceof $c_s_math_BigInt)) { const x3 = that; const this$1 = x3.bigInteger$3; const jsx$2 = $m_Ljava_math_BitLevel$().bitLength__Ljava_math_BigInteger__I(this$1); const jsx$1 = this.bigDecimal$3.precision__I(); const this$2 = this.bigDecimal$3; if ((jsx$2 > (3.3219280948873626 * (((-2) + ((jsx$1 - this$2.java$math$BigDecimal$$$undscale$2) | 0)) | 0)))) { const this$3 = this.toBigIntExact__s_Option(); if ((!this$3.isEmpty__Z())) { const arg1 = this$3.get__O(); const x$1 = arg1; return x3.equals__s_math_BigInt__Z(x$1) } else { return false } } else { return false } } else if (((typeof that) === "number")) { const x4 = (+that); if ((!((x4 === Infinity) || (x4 === (-Infinity))))) { const d = this.bigDecimal$3.doubleValue__D(); if (((!((d === Infinity) || (d === (-Infinity)))) && (d === x4))) { const this$10 = $m_s_math_BigDecimal$(); return this.equals__s_math_BigDecimal__Z(this$10.decimal__D__Ljava_math_MathContext__s_math_BigDecimal(d, this$10.defaultMathContext$1)) } else { return false } } else { return false } } else if ($isFloat(that)) { const x5 = (+that); if ((!((x5 === Infinity) || (x5 === (-Infinity))))) { const f = this.bigDecimal$3.floatValue__F(); if (((!((f === Infinity) || (f === (-Infinity)))) && (f === x5))) { const this$17 = $m_s_math_BigDecimal$(); return this.equals__s_math_BigDecimal__Z(this$17.decimal__D__Ljava_math_MathContext__s_math_BigDecimal(f, this$17.defaultMathContext$1)) } else { return false } } else { return false } } else { return (this.isValidLong__Z() && $f_s_math_ScalaNumericAnyConversions__unifiedPrimitiveEquals__O__Z(this, that)) } }; isWhole__Z() { const this$1 = this.bigDecimal$3; if ((this$1.java$math$BigDecimal$$$undscale$2 <= 0)) { return true } else { const this$2 = this.bigDecimal$3.stripTrailingZeros__Ljava_math_BigDecimal(); return (this$2.java$math$BigDecimal$$$undscale$2 <= 0) } }; computeHashCode__p3__V() { let jsx$2; if (this.isWhole__Z()) { const jsx$3 = this.bigDecimal$3.precision__I(); const this$1 = this.bigDecimal$3; jsx$2 = (((jsx$3 - this$1.java$math$BigDecimal$$$undscale$2) | 0) < 4934) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { jsx$1 = this.toBigInt__s_math_BigInt().hashCode__I() } else if (this.isDecimalDouble__Z()) { jsx$1 = $m_sr_Statics$().doubleHash__D__I(this.bigDecimal$3.doubleValue__D()) } else { const temp = this.bigDecimal$3.stripTrailingZeros__Ljava_math_BigDecimal(); jsx$1 = $m_s_util_hashing_MurmurHash3$().mixLast__I__I__I(temp.scaleByPowerOfTen__I__Ljava_math_BigDecimal(temp.java$math$BigDecimal$$$undscale$2).toBigInteger__Ljava_math_BigInteger().hashCode__I(), temp.java$math$BigDecimal$$$undscale$2) }; this.computedHashCode$3 = jsx$1 }; isValidChar__Z() { return ((this.isValidInt__Z() && (this.bigDecimal$3.intValueExact__I() >= 0)) && (this.bigDecimal$3.intValueExact__I() <= 65535)) }; toString__T() { return this.bigDecimal$3.toString__T() }; isValidByte__Z() { try { this.bigDecimal$3.byteValueExact__B(); return true } catch (e) { if ((e instanceof $c_jl_ArithmeticException)) { return false } else { throw e } } }; compare__O__I(that) { const that$1 = that; return this.bigDecimal$3.compareTo__Ljava_math_BigDecimal__I(that$1.bigDecimal$3) }; underlying__O() { return this.bigDecimal$3 }; isDecimalDouble__Z() { const d = this.bigDecimal$3.doubleValue__D(); if ((!((d === Infinity) || (d === (-Infinity))))) { const this$4 = $m_s_math_BigDecimal$(); return this.equals__s_math_BigDecimal__Z(this$4.decimal__D__Ljava_math_MathContext__s_math_BigDecimal(d, this$4.defaultMathContext$1)) } else { return false } }; toBigIntExact__s_Option() { if (this.isWhole__Z()) { try { return new $c_s_Some().init___O(new $c_s_math_BigInt().init___Ljava_math_BigInteger(this.bigDecimal$3.toBigIntegerExact__Ljava_math_BigInteger())) } catch (e) { if ((e instanceof $c_jl_ArithmeticException)) { return $m_s_None$() } else { throw e } } } else { return $m_s_None$() } }; shortValue__S() { return ((this.bigDecimal$3.intValue__I() << 16) >> 16) }; doubleValue__D() { return this.bigDecimal$3.doubleValue__D() }; hashCode__I() { if ((this.computedHashCode$3 === 1565550863)) { this.computeHashCode__p3__V() }; return this.computedHashCode$3 }; intValue__I() { return this.bigDecimal$3.intValue__I() }; isValidLong__Z() { try { const this$1 = this.bigDecimal$3; this$1.valueExact__p2__I__J(64); return true } catch (e) { if ((e instanceof $c_jl_ArithmeticException)) { return false } else { throw e } } }; floatValue__F() { return this.bigDecimal$3.floatValue__F() }; equals__s_math_BigDecimal__Z(that) { return (this.bigDecimal$3.compareTo__Ljava_math_BigDecimal__I(that.bigDecimal$3) === 0) }; } const $isArrayOf_s_math_BigDecimal = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_math_BigDecimal))) }); const $d_s_math_BigDecimal = new $TypeData().initClass({ s_math_BigDecimal: 0 }, false, "scala.math.BigDecimal", { s_math_BigDecimal: 1, s_math_ScalaNumber: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, s_math_ScalaNumericConversions: 1, s_math_ScalaNumericAnyConversions: 1, s_Serializable: 1, s_math_Ordered: 1, jl_Comparable: 1 }); $c_s_math_BigDecimal.prototype.$classData = $d_s_math_BigDecimal; class $c_s_math_BigInt extends $c_s_math_ScalaNumber { constructor() { super(); this.bigInteger$3 = null }; isValidInt__Z() { const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__I__s_math_BigInt((-2147483648)); if ($f_s_math_Ordered__$$greater$eq__O__Z(this, that)) { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__I__s_math_BigInt(2147483647); return $f_s_math_Ordered__$$less$eq__O__Z(this, that$1) } else { return false } }; $$bar__s_math_BigInt__s_math_BigInt(that) { const this$1 = this.bigInteger$3; const bi = that.bigInteger$3; return new $c_s_math_BigInt().init___Ljava_math_BigInteger($m_Ljava_math_Logical$().or__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$1, bi)) }; longValue__J() { return this.bigInteger$3.longValue__J() }; isValidShort__Z() { const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__I__s_math_BigInt((-32768)); if ($f_s_math_Ordered__$$greater$eq__O__Z(this, that)) { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__I__s_math_BigInt(32767); return $f_s_math_Ordered__$$less$eq__O__Z(this, that$1) } else { return false } }; unary$und$minus__s_math_BigInt() { return new $c_s_math_BigInt().init___Ljava_math_BigInteger(this.bigInteger$3.negate__Ljava_math_BigInteger()) }; byteValue__B() { return ((this.bigInteger$3.intValue__I() << 24) >> 24) }; equals__O__Z(that) { if ((that instanceof $c_s_math_BigInt)) { const x2 = that; return this.equals__s_math_BigInt__Z(x2) } else if ((that instanceof $c_s_math_BigDecimal)) { const x3 = that; return x3.equals__O__Z(this) } else if (((typeof that) === "number")) { const x4 = (+that); if (this.isValidDouble__Z()) { const this$1 = this.bigInteger$3; return ($m_jl_Double$().parseDouble__T__D($m_Ljava_math_Conversion$().toDecimalScaledString__Ljava_math_BigInteger__T(this$1)) === x4) } else { return false } } else if ($isFloat(that)) { const x5 = (+that); if (this.isValidFloat__Z()) { const this$2 = this.bigInteger$3; const s = $m_Ljava_math_Conversion$().toDecimalScaledString__Ljava_math_BigInteger__T(this$2); return ($fround($m_jl_Double$().parseDouble__T__D(s)) === x5) } else { return false } } else { return (this.isValidLong__Z() && $f_s_math_ScalaNumericAnyConversions__unifiedPrimitiveEquals__O__Z(this, that)) } }; equals__s_math_BigInt__Z(that) { return (this.bigInteger$3.compareTo__Ljava_math_BigInteger__I(that.bigInteger$3) === 0) }; isWhole__Z() { return true }; bitLengthOverflow__p3__Z() { const shifted = this.bigInteger$3.shiftRight__I__Ljava_math_BigInteger(2147483647); return ((shifted.sign$2 !== 0) && (!shifted.equals__O__Z($m_s_math_BigInt$().scala$math$BigInt$$minusOne$1))) }; isValidDouble__Z() { const this$1 = this.bigInteger$3; const bitLen = $m_Ljava_math_BitLevel$().bitLength__Ljava_math_BigInteger__I(this$1); let jsx$1; if ((bitLen <= 53)) { jsx$1 = true } else { const lowest = this.bigInteger$3.getLowestSetBit__I(); jsx$1 = (((bitLen <= 1024) && (lowest >= (((-53) + bitLen) | 0))) && (lowest < 1024)) }; if (jsx$1) { return (!this.bitLengthOverflow__p3__Z()) } else { return false } }; $$less$less__I__s_math_BigInt(n) { return new $c_s_math_BigInt().init___Ljava_math_BigInteger(this.bigInteger$3.shiftLeft__I__Ljava_math_BigInteger(n)) }; isValidChar__Z() { const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__I__s_math_BigInt(0); if ($f_s_math_Ordered__$$greater$eq__O__Z(this, that)) { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__I__s_math_BigInt(65535); return $f_s_math_Ordered__$$less$eq__O__Z(this, that$1) } else { return false } }; toString__T() { const this$1 = this.bigInteger$3; return $m_Ljava_math_Conversion$().toDecimalScaledString__Ljava_math_BigInteger__T(this$1) }; isValidByte__Z() { const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__I__s_math_BigInt((-128)); if ($f_s_math_Ordered__$$greater$eq__O__Z(this, that)) { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__I__s_math_BigInt(127); return $f_s_math_Ordered__$$less$eq__O__Z(this, that$1) } else { return false } }; compare__O__I(that) { const that$1 = that; return this.bigInteger$3.compareTo__Ljava_math_BigInteger__I(that$1.bigInteger$3) }; underlying__O() { return this.bigInteger$3 }; isValidFloat__Z() { const this$1 = this.bigInteger$3; const bitLen = $m_Ljava_math_BitLevel$().bitLength__Ljava_math_BigInteger__I(this$1); let jsx$1; if ((bitLen <= 24)) { jsx$1 = true } else { const lowest = this.bigInteger$3.getLowestSetBit__I(); jsx$1 = (((bitLen <= 128) && (lowest >= (((-24) + bitLen) | 0))) && (lowest < 128)) }; if (jsx$1) { return (!this.bitLengthOverflow__p3__Z()) } else { return false } }; $$times__s_math_BigInt__s_math_BigInt(that) { return new $c_s_math_BigInt().init___Ljava_math_BigInteger(this.bigInteger$3.multiply__Ljava_math_BigInteger__Ljava_math_BigInteger(that.bigInteger$3)) }; $$percent__s_math_BigInt__s_math_BigInt(that) { return new $c_s_math_BigInt().init___Ljava_math_BigInteger(this.bigInteger$3.remainder__Ljava_math_BigInteger__Ljava_math_BigInteger(that.bigInteger$3)) }; $$plus__s_math_BigInt__s_math_BigInt(that) { const this$1 = this.bigInteger$3; const bi = that.bigInteger$3; return new $c_s_math_BigInt().init___Ljava_math_BigInteger($m_Ljava_math_Elementary$().add__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$1, bi)) }; $$minus__s_math_BigInt__s_math_BigInt(that) { const this$1 = this.bigInteger$3; const bi = that.bigInteger$3; return new $c_s_math_BigInt().init___Ljava_math_BigInteger($m_Ljava_math_Elementary$().subtract__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$1, bi)) }; shortValue__S() { return ((this.bigInteger$3.intValue__I() << 16) >> 16) }; unary$und$tilde__s_math_BigInt() { const this$1 = this.bigInteger$3; return new $c_s_math_BigInt().init___Ljava_math_BigInteger($m_Ljava_math_Logical$().not__Ljava_math_BigInteger__Ljava_math_BigInteger(this$1)) }; doubleValue__D() { const this$1 = this.bigInteger$3; return $m_jl_Double$().parseDouble__T__D($m_Ljava_math_Conversion$().toDecimalScaledString__Ljava_math_BigInteger__T(this$1)) }; $$amp__s_math_BigInt__s_math_BigInt(that) { const this$1 = this.bigInteger$3; const bi = that.bigInteger$3; return new $c_s_math_BigInt().init___Ljava_math_BigInteger($m_Ljava_math_Logical$().and__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$1, bi)) }; hashCode__I() { return (this.isValidLong__Z() ? $f_s_math_ScalaNumericAnyConversions__unifiedPrimitiveHashcode__I(this) : $m_sr_Statics$().anyHash__O__I(this.bigInteger$3)) }; $$up__s_math_BigInt__s_math_BigInt(that) { const this$1 = this.bigInteger$3; const bi = that.bigInteger$3; return new $c_s_math_BigInt().init___Ljava_math_BigInteger($m_Ljava_math_Logical$().xor__Ljava_math_BigInteger__Ljava_math_BigInteger__Ljava_math_BigInteger(this$1, bi)) }; intValue__I() { return this.bigInteger$3.intValue__I() }; $$div__s_math_BigInt__s_math_BigInt(that) { return new $c_s_math_BigInt().init___Ljava_math_BigInteger(this.bigInteger$3.divide__Ljava_math_BigInteger__Ljava_math_BigInteger(that.bigInteger$3)) }; init___Ljava_math_BigInteger(bigInteger) { this.bigInteger$3 = bigInteger; return this }; isValidLong__Z() { const this$1 = $m_s_math_BigInt$(); const that = this$1.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(0, (-2147483648))); if ($f_s_math_Ordered__$$greater$eq__O__Z(this, that)) { const this$2 = $m_s_math_BigInt$(); const that$1 = this$2.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I((-1), 2147483647)); return $f_s_math_Ordered__$$less$eq__O__Z(this, that$1) } else { return false } }; $$greater$greater__I__s_math_BigInt(n) { return new $c_s_math_BigInt().init___Ljava_math_BigInteger(this.bigInteger$3.shiftRight__I__Ljava_math_BigInteger(n)) }; floatValue__F() { const this$1 = this.bigInteger$3; const s = $m_Ljava_math_Conversion$().toDecimalScaledString__Ljava_math_BigInteger__T(this$1); return $fround($m_jl_Double$().parseDouble__T__D(s)) }; } const $isArrayOf_s_math_BigInt = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.s_math_BigInt))) }); const $d_s_math_BigInt = new $TypeData().initClass({ s_math_BigInt: 0 }, false, "scala.math.BigInt", { s_math_BigInt: 1, s_math_ScalaNumber: 1, jl_Number: 1, O: 1, Ljava_io_Serializable: 1, s_math_ScalaNumericConversions: 1, s_math_ScalaNumericAnyConversions: 1, s_Serializable: 1, s_math_Ordered: 1, jl_Comparable: 1 }); $c_s_math_BigInt.prototype.$classData = $d_s_math_BigInt; class $c_s_reflect_ManifestFactory$BooleanManifest$ extends $c_s_reflect_AnyValManifest { init___() { this.toString$1 = "Boolean"; return this }; newArray__I__O(len) { return $newArrayObject($d_Z.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_Z.getClassOf() }; } const $d_s_reflect_ManifestFactory$BooleanManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$BooleanManifest$: 0 }, false, "scala.reflect.ManifestFactory$BooleanManifest$", { s_reflect_ManifestFactory$BooleanManifest$: 1, s_reflect_AnyValManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$BooleanManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$BooleanManifest$; let $n_s_reflect_ManifestFactory$BooleanManifest$ = (void 0); const $m_s_reflect_ManifestFactory$BooleanManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$BooleanManifest$)) { $n_s_reflect_ManifestFactory$BooleanManifest$ = new $c_s_reflect_ManifestFactory$BooleanManifest$().init___() }; return $n_s_reflect_ManifestFactory$BooleanManifest$ }); class $c_s_reflect_ManifestFactory$ByteManifest$ extends $c_s_reflect_AnyValManifest { init___() { this.toString$1 = "Byte"; return this }; newArray__I__O(len) { return $newArrayObject($d_B.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_B.getClassOf() }; } const $d_s_reflect_ManifestFactory$ByteManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$ByteManifest$: 0 }, false, "scala.reflect.ManifestFactory$ByteManifest$", { s_reflect_ManifestFactory$ByteManifest$: 1, s_reflect_AnyValManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$ByteManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$ByteManifest$; let $n_s_reflect_ManifestFactory$ByteManifest$ = (void 0); const $m_s_reflect_ManifestFactory$ByteManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$ByteManifest$)) { $n_s_reflect_ManifestFactory$ByteManifest$ = new $c_s_reflect_ManifestFactory$ByteManifest$().init___() }; return $n_s_reflect_ManifestFactory$ByteManifest$ }); class $c_s_reflect_ManifestFactory$CharManifest$ extends $c_s_reflect_AnyValManifest { init___() { this.toString$1 = "Char"; return this }; newArray__I__O(len) { return $newArrayObject($d_C.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_C.getClassOf() }; } const $d_s_reflect_ManifestFactory$CharManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$CharManifest$: 0 }, false, "scala.reflect.ManifestFactory$CharManifest$", { s_reflect_ManifestFactory$CharManifest$: 1, s_reflect_AnyValManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$CharManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$CharManifest$; let $n_s_reflect_ManifestFactory$CharManifest$ = (void 0); const $m_s_reflect_ManifestFactory$CharManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$CharManifest$)) { $n_s_reflect_ManifestFactory$CharManifest$ = new $c_s_reflect_ManifestFactory$CharManifest$().init___() }; return $n_s_reflect_ManifestFactory$CharManifest$ }); class $c_s_reflect_ManifestFactory$DoubleManifest$ extends $c_s_reflect_AnyValManifest { init___() { this.toString$1 = "Double"; return this }; newArray__I__O(len) { return $newArrayObject($d_D.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_D.getClassOf() }; } const $d_s_reflect_ManifestFactory$DoubleManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$DoubleManifest$: 0 }, false, "scala.reflect.ManifestFactory$DoubleManifest$", { s_reflect_ManifestFactory$DoubleManifest$: 1, s_reflect_AnyValManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$DoubleManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$DoubleManifest$; let $n_s_reflect_ManifestFactory$DoubleManifest$ = (void 0); const $m_s_reflect_ManifestFactory$DoubleManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$DoubleManifest$)) { $n_s_reflect_ManifestFactory$DoubleManifest$ = new $c_s_reflect_ManifestFactory$DoubleManifest$().init___() }; return $n_s_reflect_ManifestFactory$DoubleManifest$ }); class $c_s_reflect_ManifestFactory$FloatManifest$ extends $c_s_reflect_AnyValManifest { init___() { this.toString$1 = "Float"; return this }; newArray__I__O(len) { return $newArrayObject($d_F.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_F.getClassOf() }; } const $d_s_reflect_ManifestFactory$FloatManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$FloatManifest$: 0 }, false, "scala.reflect.ManifestFactory$FloatManifest$", { s_reflect_ManifestFactory$FloatManifest$: 1, s_reflect_AnyValManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$FloatManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$FloatManifest$; let $n_s_reflect_ManifestFactory$FloatManifest$ = (void 0); const $m_s_reflect_ManifestFactory$FloatManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$FloatManifest$)) { $n_s_reflect_ManifestFactory$FloatManifest$ = new $c_s_reflect_ManifestFactory$FloatManifest$().init___() }; return $n_s_reflect_ManifestFactory$FloatManifest$ }); class $c_s_reflect_ManifestFactory$IntManifest$ extends $c_s_reflect_AnyValManifest { init___() { this.toString$1 = "Int"; return this }; newArray__I__O(len) { return $newArrayObject($d_I.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_I.getClassOf() }; } const $d_s_reflect_ManifestFactory$IntManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$IntManifest$: 0 }, false, "scala.reflect.ManifestFactory$IntManifest$", { s_reflect_ManifestFactory$IntManifest$: 1, s_reflect_AnyValManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$IntManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$IntManifest$; let $n_s_reflect_ManifestFactory$IntManifest$ = (void 0); const $m_s_reflect_ManifestFactory$IntManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$IntManifest$)) { $n_s_reflect_ManifestFactory$IntManifest$ = new $c_s_reflect_ManifestFactory$IntManifest$().init___() }; return $n_s_reflect_ManifestFactory$IntManifest$ }); class $c_s_reflect_ManifestFactory$LongManifest$ extends $c_s_reflect_AnyValManifest { init___() { this.toString$1 = "Long"; return this }; newArray__I__O(len) { return $newArrayObject($d_J.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_J.getClassOf() }; } const $d_s_reflect_ManifestFactory$LongManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$LongManifest$: 0 }, false, "scala.reflect.ManifestFactory$LongManifest$", { s_reflect_ManifestFactory$LongManifest$: 1, s_reflect_AnyValManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$LongManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$LongManifest$; let $n_s_reflect_ManifestFactory$LongManifest$ = (void 0); const $m_s_reflect_ManifestFactory$LongManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$LongManifest$)) { $n_s_reflect_ManifestFactory$LongManifest$ = new $c_s_reflect_ManifestFactory$LongManifest$().init___() }; return $n_s_reflect_ManifestFactory$LongManifest$ }); class $c_s_reflect_ManifestFactory$PhantomManifest extends $c_s_reflect_ManifestFactory$ClassTypeManifest { constructor() { super(); this.toString$2 = null }; equals__O__Z(that) { return (this === that) }; toString__T() { return this.toString$2 }; hashCode__I() { return $systemIdentityHashCode(this) }; } class $c_s_reflect_ManifestFactory$ShortManifest$ extends $c_s_reflect_AnyValManifest { init___() { this.toString$1 = "Short"; return this }; newArray__I__O(len) { return $newArrayObject($d_S.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_S.getClassOf() }; } const $d_s_reflect_ManifestFactory$ShortManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$ShortManifest$: 0 }, false, "scala.reflect.ManifestFactory$ShortManifest$", { s_reflect_ManifestFactory$ShortManifest$: 1, s_reflect_AnyValManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$ShortManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$ShortManifest$; let $n_s_reflect_ManifestFactory$ShortManifest$ = (void 0); const $m_s_reflect_ManifestFactory$ShortManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$ShortManifest$)) { $n_s_reflect_ManifestFactory$ShortManifest$ = new $c_s_reflect_ManifestFactory$ShortManifest$().init___() }; return $n_s_reflect_ManifestFactory$ShortManifest$ }); class $c_s_reflect_ManifestFactory$UnitManifest$ extends $c_s_reflect_AnyValManifest { init___() { this.toString$1 = "Unit"; return this }; newArray__I__O(len) { return $newArrayObject($d_sr_BoxedUnit.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_V.getClassOf() }; } const $d_s_reflect_ManifestFactory$UnitManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$UnitManifest$: 0 }, false, "scala.reflect.ManifestFactory$UnitManifest$", { s_reflect_ManifestFactory$UnitManifest$: 1, s_reflect_AnyValManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$UnitManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$UnitManifest$; let $n_s_reflect_ManifestFactory$UnitManifest$ = (void 0); const $m_s_reflect_ManifestFactory$UnitManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$UnitManifest$)) { $n_s_reflect_ManifestFactory$UnitManifest$ = new $c_s_reflect_ManifestFactory$UnitManifest$().init___() }; return $n_s_reflect_ManifestFactory$UnitManifest$ }); const $f_sc_IterableLike__sameElements__sc_GenIterable__Z = (function($thiz, that) { if (($thiz === that)) { return true } else { if ((that instanceof $c_sci_Vector)) { const x2 = that; if (($thiz instanceof $c_sci_Vector)) { const thisVector = $thiz; if ((thisVector === x2)) { return true } else { let equal = (thisVector.length__I() === x2.length__I()); if (equal) { const length = x2.length__I(); let index = 0; while (((index < length) && equal)) { equal = $m_sr_BoxesRunTime$().equals__O__O__Z(thisVector.apply__I__O(index), x2.apply__I__O(index)); index = ((1 + index) | 0) } }; return equal } } }; if ($is_sc_GenSet(that)) { const x3 = that; if ($is_sc_GenSetLike($thiz)) { const thisSet = $thiz; return ((thisSet.size__I() === x3.size__I()) && thisSet.subsetOf__sc_GenSet__Z(x3)) } }; const these = $thiz.iterator__sc_Iterator(); const those = that.iterator__sc_Iterator(); while ((these.hasNext__Z() && those.hasNext__Z())) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(these.next__O(), those.next__O()))) { return false } }; return ((!these.hasNext__Z()) && (!those.hasNext__Z())) } }); const $f_sc_IterableLike__isEmpty__Z = (function($thiz) { return (!$thiz.iterator__sc_Iterator().hasNext__Z()) }); const $f_sc_IterableLike__zipWithIndex__scg_CanBuildFrom__O = (function($thiz, bf) { const b = bf.apply__O__scm_Builder($thiz.repr__O()); const these = $thiz.iterator__sc_Iterator(); let i = 0; while (these.hasNext__Z()) { b.$$plus$eq__O__scm_Builder(new $c_T2().init___O__O(these.next__O(), i)); i = ((1 + i) | 0) }; return b.result__O() }); const $f_sc_IterableLike__take__I__O = (function($thiz, n) { const b = $thiz.newBuilder__scm_Builder(); if ((n <= 0)) { return b.result__O() } else { b.sizeHintBounded__I__sc_TraversableLike__V(n, $thiz); let i = 0; const it = $thiz.iterator__sc_Iterator(); while (((i < n) && it.hasNext__Z())) { b.$$plus$eq__O__scm_Builder(it.next__O()); i = ((1 + i) | 0) }; return b.result__O() } }); const $f_sc_IterableLike__copyToArray__O__I__I__V = (function($thiz, xs, start, len) { let i = start; const x = ((start + len) | 0); const that = $m_sr_ScalaRunTime$().array$undlength__O__I(xs); const end = ((x < that) ? x : that); const it = $thiz.iterator__sc_Iterator(); while (((i < end) && it.hasNext__Z())) { $m_sr_ScalaRunTime$().array$undupdate__O__I__O__V(xs, i, it.next__O()); i = ((1 + i) | 0) } }); const $f_sc_IterableLike__takeRight__I__O = (function($thiz, n) { const b = $thiz.newBuilder__scm_Builder(); b.sizeHintBounded__I__sc_TraversableLike__V(n, $thiz); const lead = $thiz.iterator__sc_Iterator().drop__I__sc_Iterator(n); const it = $thiz.iterator__sc_Iterator(); while (lead.hasNext__Z()) { lead.next__O(); it.next__O() }; while (it.hasNext__Z()) { b.$$plus$eq__O__scm_Builder(it.next__O()) }; return b.result__O() }); const $f_sc_IterableLike__dropRight__I__O = (function($thiz, n) { const b = $thiz.newBuilder__scm_Builder(); if ((n >= 0)) { const delta = ((-n) | 0); $f_scm_Builder__sizeHint__sc_TraversableLike__I__V(b, $thiz, delta) }; const lead = $thiz.iterator__sc_Iterator().drop__I__sc_Iterator(n); const it = $thiz.iterator__sc_Iterator(); while (lead.hasNext__Z()) { b.$$plus$eq__O__scm_Builder(it.next__O()); lead.next__O() }; return b.result__O() }); const $f_sc_IterableLike__zip__sc_GenIterable__scg_CanBuildFrom__O = (function($thiz, that, bf) { const b = bf.apply__O__scm_Builder($thiz.repr__O()); const these = $thiz.iterator__sc_Iterator(); const those = that.iterator__sc_Iterator(); while ((these.hasNext__Z() && those.hasNext__Z())) { b.$$plus$eq__O__scm_Builder(new $c_T2().init___O__O(these.next__O(), those.next__O())) }; return b.result__O() }); const $is_sc_IterableLike = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_IterableLike))) }); const $isArrayOf_sc_IterableLike = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_IterableLike))) }); class $c_sci_List$ extends $c_scg_SeqFactory { constructor() { super(); this.partialNotApplied$5 = null }; init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); $n_sci_List$ = this; this.partialNotApplied$5 = new $c_sci_List$$anon$1().init___(); return this }; empty__sc_GenTraversable() { return $m_sci_Nil$() }; newBuilder__scm_Builder() { return new $c_scm_ListBuffer().init___() }; } const $d_sci_List$ = new $TypeData().initClass({ sci_List$: 0 }, false, "scala.collection.immutable.List$", { sci_List$: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_List$.prototype.$classData = $d_sci_List$; let $n_sci_List$ = (void 0); const $m_sci_List$ = (function() { if ((!$n_sci_List$)) { $n_sci_List$ = new $c_sci_List$().init___() }; return $n_sci_List$ }); class $c_sci_Stream$ extends $c_scg_SeqFactory { constructor() { super(); this.ReusableCBF$5 = null }; init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); $n_sci_Stream$ = this; this.ReusableCBF$5 = new $c_sci_Stream$StreamCanBuildFrom().init___(); return this }; filteredTail__sci_Stream__F1__Z__sci_Stream$Cons(stream, p, isFlipped) { const hd = stream.head__O(); const tl = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, stream$1, p$1, isFlipped$1) { return (function() { return stream$1.tail__O().filterImpl__F1__Z__sci_Stream(p$1, isFlipped$1) }) })(this, stream, p, isFlipped)); return new $c_sci_Stream$Cons().init___O__F0(hd, tl) }; empty__sc_GenTraversable() { return $m_sci_Stream$Empty$() }; collectedTail__O__sci_Stream__s_PartialFunction__scg_CanBuildFrom__sci_Stream$Cons(head, stream, pf, bf) { const tl = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, stream$1, pf$1, bf$1) { return (function() { return stream$1.tail__O().collect__s_PartialFunction__scg_CanBuildFrom__O(pf$1, bf$1) }) })(this, stream, pf, bf)); return new $c_sci_Stream$Cons().init___O__F0(head, tl) }; newBuilder__scm_Builder() { return new $c_sci_Stream$StreamBuilder().init___() }; } const $d_sci_Stream$ = new $TypeData().initClass({ sci_Stream$: 0 }, false, "scala.collection.immutable.Stream$", { sci_Stream$: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Stream$.prototype.$classData = $d_sci_Stream$; let $n_sci_Stream$ = (void 0); const $m_sci_Stream$ = (function() { if ((!$n_sci_Stream$)) { $n_sci_Stream$ = new $c_sci_Stream$().init___() }; return $n_sci_Stream$ }); class $c_scm_ArrayBuffer$ extends $c_scg_SeqFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { return new $c_scm_ArrayBuffer().init___() }; } const $d_scm_ArrayBuffer$ = new $TypeData().initClass({ scm_ArrayBuffer$: 0 }, false, "scala.collection.mutable.ArrayBuffer$", { scm_ArrayBuffer$: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_ArrayBuffer$.prototype.$classData = $d_scm_ArrayBuffer$; let $n_scm_ArrayBuffer$ = (void 0); const $m_scm_ArrayBuffer$ = (function() { if ((!$n_scm_ArrayBuffer$)) { $n_scm_ArrayBuffer$ = new $c_scm_ArrayBuffer$().init___() }; return $n_scm_ArrayBuffer$ }); class $c_scm_ArraySeq$ extends $c_scg_SeqFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { const this$1 = new $c_scm_ArrayBuffer().init___(); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(buf$2) { const buf = buf$2; const result = new $c_scm_ArraySeq().init___I(buf.size0$6); const xs = result.array$5; $f_sc_TraversableOnce__copyToArray__O__I__V(buf, xs, 0); return result }) })(this)); return new $c_scm_Builder$$anon$1().init___scm_Builder__F1(this$1, f) }; } const $d_scm_ArraySeq$ = new $TypeData().initClass({ scm_ArraySeq$: 0 }, false, "scala.collection.mutable.ArraySeq$", { scm_ArraySeq$: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_ArraySeq$.prototype.$classData = $d_scm_ArraySeq$; let $n_scm_ArraySeq$ = (void 0); const $m_scm_ArraySeq$ = (function() { if ((!$n_scm_ArraySeq$)) { $n_scm_ArraySeq$ = new $c_scm_ArraySeq$().init___() }; return $n_scm_ArraySeq$ }); class $c_scm_ListBuffer$ extends $c_scg_SeqFactory { init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); return this }; newBuilder__scm_Builder() { return new $c_scm_GrowingBuilder().init___scg_Growable(new $c_scm_ListBuffer().init___()) }; } const $d_scm_ListBuffer$ = new $TypeData().initClass({ scm_ListBuffer$: 0 }, false, "scala.collection.mutable.ListBuffer$", { scm_ListBuffer$: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_ListBuffer$.prototype.$classData = $d_scm_ListBuffer$; let $n_scm_ListBuffer$ = (void 0); const $m_scm_ListBuffer$ = (function() { if ((!$n_scm_ListBuffer$)) { $n_scm_ListBuffer$ = new $c_scm_ListBuffer$().init___() }; return $n_scm_ListBuffer$ }); const $f_sr_IntegralProxy__to__O__sci_NumericRange$Inclusive = (function($thiz, end) { $m_sci_NumericRange$(); const c = $thiz.self$1; const start = new $c_jl_Character().init___C(c); const this$4 = $m_s_math_Numeric$CharIsIntegral$(); const c$1 = $f_s_math_Numeric$CharIsIntegral__fromInt__I__C(this$4, 1); const step = new $c_jl_Character().init___C(c$1); const num = $m_s_math_Numeric$CharIsIntegral$(); return new $c_sci_NumericRange$Inclusive().init___O__O__O__s_math_Integral(start, end, step, num) }); class $c_Lfastparse_parsers_Intrinsics$ElemIn extends $c_Lfastparse_parsers_Intrinsics$ElemSet { constructor() { super(); this.name$4 = null; this.strings$4 = null }; productPrefix__T() { return "ElemIn" }; productArity__I() { return 2 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Intrinsics$ElemIn)) { const ElemIn$1 = x$1; if ((this.name$4 === ElemIn$1.name$4)) { const x = this.strings$4; const x$2 = ElemIn$1.strings$4; return ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$4; break } case 1: { return this.strings$4; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_Lfastparse_parsers_Intrinsics$().prettyPrintStrings__T__sc_Seq__Lfastparse_utils_ReprOps__T(this.name$4, this.strings$4, this.reprOps$1) }; init___T__sc_Seq__Lfastparse_utils_ReprOps__Lfastparse_utils_ElemSetHelper(name, strings, repr, ehelper) { this.name$4 = name; this.strings$4 = strings; $m_s_package$(); const value = $m_Lfastparse_parsers_Intrinsics$().flattenStringsGen__sc_Seq__Lfastparse_utils_Generator$Iter(strings); const generatorOrPred = new $c_s_util_Left().init___O(value); $c_Lfastparse_parsers_Intrinsics$PrecomputableParser.prototype.init___s_util_Either__Lfastparse_utils_ElemSetHelper__Lfastparse_utils_ReprOps.call(this, generatorOrPred, ehelper, repr); return this }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_parsers_Intrinsics$ElemIn = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Intrinsics$ElemIn))) }); const $d_Lfastparse_parsers_Intrinsics$ElemIn = new $TypeData().initClass({ Lfastparse_parsers_Intrinsics$ElemIn: 0 }, false, "fastparse.parsers.Intrinsics$ElemIn", { Lfastparse_parsers_Intrinsics$ElemIn: 1, Lfastparse_parsers_Intrinsics$ElemSet: 1, Lfastparse_parsers_Intrinsics$PrecomputableParser: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Intrinsics$ElemIn.prototype.$classData = $d_Lfastparse_parsers_Intrinsics$ElemIn; class $c_Lfastparse_parsers_Intrinsics$ElemsWhile extends $c_Lfastparse_parsers_Intrinsics$PrecomputableParser { constructor() { super(); this.name$3 = null; this.predicate$3 = null; this.min$3 = 0; this.precompute$3 = false }; productPrefix__T() { return "ElemsWhile" }; productArity__I() { return 4 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lfastparse_parsers_Intrinsics$ElemsWhile)) { const ElemsWhile$1 = x$1; let jsx$1; if ((this.name$3 === ElemsWhile$1.name$3)) { const x = this.predicate$3; const x$2 = ElemsWhile$1.predicate$3; jsx$1 = ((x === null) ? (x$2 === null) : x.equals__O__Z(x$2)) } else { jsx$1 = false }; if ((jsx$1 && (this.min$3 === ElemsWhile$1.min$3))) { return (this.precompute$3 === ElemsWhile$1.precompute$3) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$3; break } case 1: { return this.predicate$3; break } case 2: { return this.min$3; break } case 3: { return this.precompute$3; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; init___T__F1__I__Z__Lfastparse_utils_ElemSetHelper__Lfastparse_utils_ReprOps(name, predicate, min, precompute, helper, repr) { this.name$3 = name; this.predicate$3 = predicate; this.min$3 = min; this.precompute$3 = precompute; $c_Lfastparse_parsers_Intrinsics$PrecomputableParser.prototype.init___s_util_Either__Lfastparse_utils_ElemSetHelper__Lfastparse_utils_ReprOps.call(this, $m_Lfastparse_parsers_Intrinsics$().makeGenOrPred__F1__Z__Lfastparse_utils_ElemSetHelper__s_util_Either(predicate, precompute, helper), helper, repr); return this }; toString__T() { return new $c_s_StringContext().init___sc_Seq(new $c_sjs_js_WrappedArray().init___sjs_js_Array(["", "(", ")"])).s__sc_Seq__T(new $c_sjs_js_WrappedArray().init___sjs_js_Array([this.name$3, this.predicate$3])) }; hashCode__I() { let acc = (-889275714); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.name$3)); acc = $m_sr_Statics$().mix__I__I__I(acc, $m_sr_Statics$().anyHash__O__I(this.predicate$3)); acc = $m_sr_Statics$().mix__I__I__I(acc, this.min$3); acc = $m_sr_Statics$().mix__I__I__I(acc, (this.precompute$3 ? 1231 : 1237)); return $m_sr_Statics$().finalizeHash__I__I__I(acc, 4) }; parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(cfg, index) { return $f_Lfastparse_parsers_Intrinsics$WhileParser__parseRec__Lfastparse_core_ParseCtx__I__Lfastparse_core_Mutable(this, cfg, index) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lfastparse_parsers_Intrinsics$ElemsWhile = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lfastparse_parsers_Intrinsics$ElemsWhile))) }); const $d_Lfastparse_parsers_Intrinsics$ElemsWhile = new $TypeData().initClass({ Lfastparse_parsers_Intrinsics$ElemsWhile: 0 }, false, "fastparse.parsers.Intrinsics$ElemsWhile", { Lfastparse_parsers_Intrinsics$ElemsWhile: 1, Lfastparse_parsers_Intrinsics$PrecomputableParser: 1, Lfastparse_core_Parser: 1, O: 1, Lfastparse_core_ParserResults: 1, Lfastparse_core_Precedence: 1, Lfastparse_parsers_Intrinsics$WhileParser: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lfastparse_parsers_Intrinsics$ElemsWhile.prototype.$classData = $d_Lfastparse_parsers_Intrinsics$ElemsWhile; class $c_Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes extends $c_Lio_kaitai_struct_datatype_DataType$UserType { constructor() { super(); this.$$undargs$4 = null; this.bytes$4 = null; this.process$4 = null }; productPrefix__T() { return "CalcUserTypeFromBytes" }; productArity__I() { return 5 }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes)) { const CalcUserTypeFromBytes$1 = x$1; const x = this.name$3; const x$2 = CalcUserTypeFromBytes$1.name$3; let jsx$3; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.forcedParent$3; const x$4 = CalcUserTypeFromBytes$1.forcedParent$3; jsx$3 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$3 = false }; let jsx$2; if (jsx$3) { const x$5 = this.$$undargs$4; const x$6 = CalcUserTypeFromBytes$1.$$undargs$4; jsx$2 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$7 = this.bytes$4; const x$8 = CalcUserTypeFromBytes$1.bytes$4; jsx$1 = ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { jsx$1 = false }; if (jsx$1) { const x$9 = this.process$4; const x$10 = CalcUserTypeFromBytes$1.process$4; return ((x$9 === null) ? (x$10 === null) : x$9.equals__O__Z(x$10)) } else { return false } } else { return false } }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$3; break } case 1: { return this.forcedParent$3; break } case 2: { return this.$$undargs$4; break } case 3: { return this.bytes$4; break } case 4: { return this.process$4; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___sci_List__s_Option__sc_Seq__Lio_kaitai_struct_datatype_DataType$BytesType__s_Option(_name, _forcedParent, _args, bytes, process) { this.$$undargs$4 = _args; this.bytes$4 = bytes; this.process$4 = process; $c_Lio_kaitai_struct_datatype_DataType$UserType.prototype.init___sci_List__s_Option__sc_Seq.call(this, _name, _forcedParent, _args); return this }; isOwning__Z() { return false }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes))) }); const $d_Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes: 0 }, false, "io.kaitai.struct.datatype.DataType$CalcUserTypeFromBytes", { Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes: 1, Lio_kaitai_struct_datatype_DataType$UserType: 1, Lio_kaitai_struct_datatype_DataType$StructType: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, Lio_kaitai_struct_datatype_DataType$Processing: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes; class $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes extends $c_Lio_kaitai_struct_datatype_DataType$UserType { constructor() { super(); this.$$undargs$4 = null; this.bytes$4 = null; this.process$4 = null }; productPrefix__T() { return "UserTypeFromBytes" }; productArity__I() { return 5 }; asNonOwning__Lio_kaitai_struct_datatype_DataType() { return this.asNonOwning__Lio_kaitai_struct_datatype_DataType$UserType() }; equals__O__Z(x$1) { if ((this === x$1)) { return true } else if ((x$1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes)) { const UserTypeFromBytes$1 = x$1; const x = this.name$3; const x$2 = UserTypeFromBytes$1.name$3; let jsx$3; if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) { const x$3 = this.forcedParent$3; const x$4 = UserTypeFromBytes$1.forcedParent$3; jsx$3 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4)) } else { jsx$3 = false }; let jsx$2; if (jsx$3) { const x$5 = this.$$undargs$4; const x$6 = UserTypeFromBytes$1.$$undargs$4; jsx$2 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { const x$7 = this.bytes$4; const x$8 = UserTypeFromBytes$1.bytes$4; jsx$1 = ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8)) } else { jsx$1 = false }; if (jsx$1) { const x$9 = this.process$4; const x$10 = UserTypeFromBytes$1.process$4; return ((x$9 === null) ? (x$10 === null) : x$9.equals__O__Z(x$10)) } else { return false } } else { return false } }; asNonOwning__Lio_kaitai_struct_datatype_DataType$UserType() { const r = new $c_Lio_kaitai_struct_datatype_DataType$CalcUserTypeFromBytes().init___sci_List__s_Option__sc_Seq__Lio_kaitai_struct_datatype_DataType$BytesType__s_Option(this.name$3, this.forcedParent$3, this.args$3, this.bytes$4, this.process$4); r.classSpec$3 = this.classSpec$3; return r }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.name$3; break } case 1: { return this.forcedParent$3; break } case 2: { return this.$$undargs$4; break } case 3: { return this.bytes$4; break } case 4: { return this.process$4; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; toString__T() { return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this) }; init___sci_List__s_Option__sc_Seq__Lio_kaitai_struct_datatype_DataType$BytesType__s_Option(_name, _forcedParent, _args, bytes, process) { this.$$undargs$4 = _args; this.bytes$4 = bytes; this.process$4 = process; $c_Lio_kaitai_struct_datatype_DataType$UserType.prototype.init___sci_List__s_Option__sc_Seq.call(this, _name, _forcedParent, _args); return this }; isOwning__Z() { return true }; hashCode__I() { const this$2 = $m_s_util_hashing_MurmurHash3$(); return this$2.productHash__s_Product__I__I(this, (-889275714)) }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes))) }); const $d_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes = new $TypeData().initClass({ Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes: 0 }, false, "io.kaitai.struct.datatype.DataType$UserTypeFromBytes", { Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes: 1, Lio_kaitai_struct_datatype_DataType$UserType: 1, Lio_kaitai_struct_datatype_DataType$StructType: 1, Lio_kaitai_struct_datatype_DataType$ComplexDataType: 1, O: 1, Lio_kaitai_struct_datatype_DataType: 1, Lio_kaitai_struct_datatype_DataType$Processing: 1, s_Product: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes.prototype.$classData = $d_Lio_kaitai_struct_datatype_DataType$UserTypeFromBytes; class $c_Lio_kaitai_struct_translators_ConstructTranslator extends $c_Lio_kaitai_struct_translators_PythonTranslator { kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (("stream_tell(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + ")") }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; doLocalName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1 === s) ? "obj_" : (($m_Lio_kaitai_struct_format_Identifier$().INDEX$1 === s) ? "i" : (($m_Lio_kaitai_struct_format_Identifier$().ROOT$1 === s) ? "this._root" : (($m_Lio_kaitai_struct_format_Identifier$().IO$1 === s) ? "_io" : ("this." + this.doName__T__T(s)))))) }; kaitaiStreamSize__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (("stream_size(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + ")") }; kaitaiStreamEof__Lio_kaitai_struct_exprlang_Ast$expr__T(value) { return (("stream_iseof(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value)) + ")") }; doName__T__T(s) { return (($m_Lio_kaitai_struct_format_Identifier$().PARENT$1 === s) ? "_" : s) }; kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__O(value) { return this.kaitaiStreamPos__Lio_kaitai_struct_exprlang_Ast$expr__T(value) }; init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(provider, importList) { $c_Lio_kaitai_struct_translators_PythonTranslator.prototype.init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList.call(this, provider, importList); return this }; } const $d_Lio_kaitai_struct_translators_ConstructTranslator = new $TypeData().initClass({ Lio_kaitai_struct_translators_ConstructTranslator: 0 }, false, "io.kaitai.struct.translators.ConstructTranslator", { Lio_kaitai_struct_translators_ConstructTranslator: 1, Lio_kaitai_struct_translators_PythonTranslator: 1, Lio_kaitai_struct_translators_BaseTranslator: 1, Lio_kaitai_struct_translators_TypeDetector: 1, O: 1, Lio_kaitai_struct_translators_AbstractTranslator: 1, Lio_kaitai_struct_translators_CommonLiterals: 1, Lio_kaitai_struct_translators_CommonOps: 1, Lio_kaitai_struct_translators_CommonArraysAndCast: 1, Lio_kaitai_struct_translators_CommonMethods: 1, Lio_kaitai_struct_translators_ByteArraysAsTrueArrays: 1 }); $c_Lio_kaitai_struct_translators_ConstructTranslator.prototype.$classData = $d_Lio_kaitai_struct_translators_ConstructTranslator; class $c_s_reflect_ManifestFactory$AnyManifest$ extends $c_s_reflect_ManifestFactory$PhantomManifest { init___() { this.toString$2 = "Any"; const prefix = $m_s_None$(); const typeArguments = $m_sci_Nil$(); this.prefix$1 = prefix; this.runtimeClass1$1 = $d_O.getClassOf(); this.typeArguments$1 = typeArguments; return this }; newArray__I__O(len) { return $newArrayObject($d_O.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_O.getClassOf() }; } const $d_s_reflect_ManifestFactory$AnyManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$AnyManifest$: 0 }, false, "scala.reflect.ManifestFactory$AnyManifest$", { s_reflect_ManifestFactory$AnyManifest$: 1, s_reflect_ManifestFactory$PhantomManifest: 1, s_reflect_ManifestFactory$ClassTypeManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$AnyManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$AnyManifest$; let $n_s_reflect_ManifestFactory$AnyManifest$ = (void 0); const $m_s_reflect_ManifestFactory$AnyManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$AnyManifest$)) { $n_s_reflect_ManifestFactory$AnyManifest$ = new $c_s_reflect_ManifestFactory$AnyManifest$().init___() }; return $n_s_reflect_ManifestFactory$AnyManifest$ }); class $c_s_reflect_ManifestFactory$AnyValManifest$ extends $c_s_reflect_ManifestFactory$PhantomManifest { init___() { this.toString$2 = "AnyVal"; const prefix = $m_s_None$(); const typeArguments = $m_sci_Nil$(); this.prefix$1 = prefix; this.runtimeClass1$1 = $d_O.getClassOf(); this.typeArguments$1 = typeArguments; return this }; newArray__I__O(len) { return $newArrayObject($d_O.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_O.getClassOf() }; } const $d_s_reflect_ManifestFactory$AnyValManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$AnyValManifest$: 0 }, false, "scala.reflect.ManifestFactory$AnyValManifest$", { s_reflect_ManifestFactory$AnyValManifest$: 1, s_reflect_ManifestFactory$PhantomManifest: 1, s_reflect_ManifestFactory$ClassTypeManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$AnyValManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$AnyValManifest$; let $n_s_reflect_ManifestFactory$AnyValManifest$ = (void 0); const $m_s_reflect_ManifestFactory$AnyValManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$AnyValManifest$)) { $n_s_reflect_ManifestFactory$AnyValManifest$ = new $c_s_reflect_ManifestFactory$AnyValManifest$().init___() }; return $n_s_reflect_ManifestFactory$AnyValManifest$ }); class $c_s_reflect_ManifestFactory$NothingManifest$ extends $c_s_reflect_ManifestFactory$PhantomManifest { init___() { this.toString$2 = "Nothing"; const prefix = $m_s_None$(); const typeArguments = $m_sci_Nil$(); this.prefix$1 = prefix; this.runtimeClass1$1 = $d_sr_Nothing$.getClassOf(); this.typeArguments$1 = typeArguments; return this }; newArray__I__O(len) { return $newArrayObject($d_O.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_sr_Nothing$.getClassOf() }; } const $d_s_reflect_ManifestFactory$NothingManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$NothingManifest$: 0 }, false, "scala.reflect.ManifestFactory$NothingManifest$", { s_reflect_ManifestFactory$NothingManifest$: 1, s_reflect_ManifestFactory$PhantomManifest: 1, s_reflect_ManifestFactory$ClassTypeManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$NothingManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$NothingManifest$; let $n_s_reflect_ManifestFactory$NothingManifest$ = (void 0); const $m_s_reflect_ManifestFactory$NothingManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$NothingManifest$)) { $n_s_reflect_ManifestFactory$NothingManifest$ = new $c_s_reflect_ManifestFactory$NothingManifest$().init___() }; return $n_s_reflect_ManifestFactory$NothingManifest$ }); class $c_s_reflect_ManifestFactory$NullManifest$ extends $c_s_reflect_ManifestFactory$PhantomManifest { init___() { this.toString$2 = "Null"; const prefix = $m_s_None$(); const typeArguments = $m_sci_Nil$(); this.prefix$1 = prefix; this.runtimeClass1$1 = $d_sr_Null$.getClassOf(); this.typeArguments$1 = typeArguments; return this }; newArray__I__O(len) { return $newArrayObject($d_O.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_sr_Null$.getClassOf() }; } const $d_s_reflect_ManifestFactory$NullManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$NullManifest$: 0 }, false, "scala.reflect.ManifestFactory$NullManifest$", { s_reflect_ManifestFactory$NullManifest$: 1, s_reflect_ManifestFactory$PhantomManifest: 1, s_reflect_ManifestFactory$ClassTypeManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$NullManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$NullManifest$; let $n_s_reflect_ManifestFactory$NullManifest$ = (void 0); const $m_s_reflect_ManifestFactory$NullManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$NullManifest$)) { $n_s_reflect_ManifestFactory$NullManifest$ = new $c_s_reflect_ManifestFactory$NullManifest$().init___() }; return $n_s_reflect_ManifestFactory$NullManifest$ }); class $c_s_reflect_ManifestFactory$ObjectManifest$ extends $c_s_reflect_ManifestFactory$PhantomManifest { init___() { this.toString$2 = "Object"; const prefix = $m_s_None$(); const typeArguments = $m_sci_Nil$(); this.prefix$1 = prefix; this.runtimeClass1$1 = $d_O.getClassOf(); this.typeArguments$1 = typeArguments; return this }; newArray__I__O(len) { return $newArrayObject($d_O.getArrayOf(), [len]) }; runtimeClass__jl_Class() { return $d_O.getClassOf() }; } const $d_s_reflect_ManifestFactory$ObjectManifest$ = new $TypeData().initClass({ s_reflect_ManifestFactory$ObjectManifest$: 0 }, false, "scala.reflect.ManifestFactory$ObjectManifest$", { s_reflect_ManifestFactory$ObjectManifest$: 1, s_reflect_ManifestFactory$PhantomManifest: 1, s_reflect_ManifestFactory$ClassTypeManifest: 1, O: 1, s_reflect_Manifest: 1, s_reflect_ClassTag: 1, s_reflect_ClassManifestDeprecatedApis: 1, s_reflect_OptManifest: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_Equals: 1 }); $c_s_reflect_ManifestFactory$ObjectManifest$.prototype.$classData = $d_s_reflect_ManifestFactory$ObjectManifest$; let $n_s_reflect_ManifestFactory$ObjectManifest$ = (void 0); const $m_s_reflect_ManifestFactory$ObjectManifest$ = (function() { if ((!$n_s_reflect_ManifestFactory$ObjectManifest$)) { $n_s_reflect_ManifestFactory$ObjectManifest$ = new $c_s_reflect_ManifestFactory$ObjectManifest$().init___() }; return $n_s_reflect_ManifestFactory$ObjectManifest$ }); const $is_sc_GenMap = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_GenMap))) }); const $isArrayOf_sc_GenMap = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_GenMap))) }); const $is_sc_GenSeq = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_GenSeq))) }); const $isArrayOf_sc_GenSeq = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_GenSeq))) }); class $c_sci_Vector$ extends $c_scg_IndexedSeqFactory { constructor() { super(); this.NIL$6 = null }; init___() { $c_scg_GenTraversableFactory.prototype.init___.call(this); $n_sci_Vector$ = this; this.NIL$6 = new $c_sci_Vector().init___I__I__I(0, 0, 0); return this }; empty__sc_GenTraversable() { return this.NIL$6 }; newBuilder__scm_Builder() { return new $c_sci_VectorBuilder().init___() }; } const $d_sci_Vector$ = new $TypeData().initClass({ sci_Vector$: 0 }, false, "scala.collection.immutable.Vector$", { sci_Vector$: 1, scg_IndexedSeqFactory: 1, scg_SeqFactory: 1, scg_GenSeqFactory: 1, scg_GenTraversableFactory: 1, scg_GenericCompanion: 1, O: 1, scg_TraversableFactory: 1, scg_GenericSeqCompanion: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Vector$.prototype.$classData = $d_sci_Vector$; let $n_sci_Vector$ = (void 0); const $m_sci_Vector$ = (function() { if ((!$n_sci_Vector$)) { $n_sci_Vector$ = new $c_sci_Vector$().init___() }; return $n_sci_Vector$ }); class $c_s_math_Numeric$ByteIsIntegral$ extends $c_O { init___() { return this }; minus__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$ByteIsIntegral__minus__B__B__B(this, x$1, y$1) }; plus__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$ByteIsIntegral__plus__B__B__B(this, x$1, y$1) }; times__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$ByteIsIntegral__times__B__B__B(this, x$1, y$1) }; quot__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$ByteIsIntegral__quot__B__B__B(this, x$1, y$1) }; compare__O__O__I(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return ((x$1 - y$1) | 0) }; toInt__O__I(x) { const x$1 = (x | 0); return x$1 }; fromInt__I__O(x) { return $f_s_math_Numeric$ByteIsIntegral__fromInt__I__B(this, x) }; } const $d_s_math_Numeric$ByteIsIntegral$ = new $TypeData().initClass({ s_math_Numeric$ByteIsIntegral$: 0 }, false, "scala.math.Numeric$ByteIsIntegral$", { s_math_Numeric$ByteIsIntegral$: 1, O: 1, s_math_Numeric$ByteIsIntegral: 1, s_math_Integral: 1, s_math_Numeric: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_math_Ordering$ByteOrdering: 1 }); $c_s_math_Numeric$ByteIsIntegral$.prototype.$classData = $d_s_math_Numeric$ByteIsIntegral$; let $n_s_math_Numeric$ByteIsIntegral$ = (void 0); const $m_s_math_Numeric$ByteIsIntegral$ = (function() { if ((!$n_s_math_Numeric$ByteIsIntegral$)) { $n_s_math_Numeric$ByteIsIntegral$ = new $c_s_math_Numeric$ByteIsIntegral$().init___() }; return $n_s_math_Numeric$ByteIsIntegral$ }); class $c_s_math_Numeric$CharIsIntegral$ extends $c_O { init___() { return this }; minus__O__O__O(x, y) { let x$1; if ((x === null)) { x$1 = 0 } else { const this$2 = x; x$1 = this$2.value$1 }; let y$1; if ((y === null)) { y$1 = 0 } else { const this$4 = y; y$1 = this$4.value$1 }; const c = $f_s_math_Numeric$CharIsIntegral__minus__C__C__C(this, x$1, y$1); return new $c_jl_Character().init___C(c) }; plus__O__O__O(x, y) { let x$1; if ((x === null)) { x$1 = 0 } else { const this$2 = x; x$1 = this$2.value$1 }; let y$1; if ((y === null)) { y$1 = 0 } else { const this$4 = y; y$1 = this$4.value$1 }; const c = $f_s_math_Numeric$CharIsIntegral__plus__C__C__C(this, x$1, y$1); return new $c_jl_Character().init___C(c) }; times__O__O__O(x, y) { let x$1; if ((x === null)) { x$1 = 0 } else { const this$2 = x; x$1 = this$2.value$1 }; let y$1; if ((y === null)) { y$1 = 0 } else { const this$4 = y; y$1 = this$4.value$1 }; const c = $f_s_math_Numeric$CharIsIntegral__times__C__C__C(this, x$1, y$1); return new $c_jl_Character().init___C(c) }; quot__O__O__O(x, y) { let x$1; if ((x === null)) { x$1 = 0 } else { const this$2 = x; x$1 = this$2.value$1 }; let y$1; if ((y === null)) { y$1 = 0 } else { const this$4 = y; y$1 = this$4.value$1 }; const c = $f_s_math_Numeric$CharIsIntegral__quot__C__C__C(this, x$1, y$1); return new $c_jl_Character().init___C(c) }; compare__O__O__I(x, y) { let x$1; if ((x === null)) { x$1 = 0 } else { const this$2 = x; x$1 = this$2.value$1 }; let y$1; if ((y === null)) { y$1 = 0 } else { const this$4 = y; y$1 = this$4.value$1 }; return ((x$1 - y$1) | 0) }; toInt__O__I(x) { let x$1; if ((x === null)) { x$1 = 0 } else { const this$2 = x; x$1 = this$2.value$1 }; return x$1 }; fromInt__I__O(x) { const c = $f_s_math_Numeric$CharIsIntegral__fromInt__I__C(this, x); return new $c_jl_Character().init___C(c) }; } const $d_s_math_Numeric$CharIsIntegral$ = new $TypeData().initClass({ s_math_Numeric$CharIsIntegral$: 0 }, false, "scala.math.Numeric$CharIsIntegral$", { s_math_Numeric$CharIsIntegral$: 1, O: 1, s_math_Numeric$CharIsIntegral: 1, s_math_Integral: 1, s_math_Numeric: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_math_Ordering$CharOrdering: 1 }); $c_s_math_Numeric$CharIsIntegral$.prototype.$classData = $d_s_math_Numeric$CharIsIntegral$; let $n_s_math_Numeric$CharIsIntegral$ = (void 0); const $m_s_math_Numeric$CharIsIntegral$ = (function() { if ((!$n_s_math_Numeric$CharIsIntegral$)) { $n_s_math_Numeric$CharIsIntegral$ = new $c_s_math_Numeric$CharIsIntegral$().init___() }; return $n_s_math_Numeric$CharIsIntegral$ }); class $c_s_math_Numeric$IntIsIntegral$ extends $c_O { init___() { return this }; minus__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$IntIsIntegral__minus__I__I__I(this, x$1, y$1) }; plus__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$IntIsIntegral__plus__I__I__I(this, x$1, y$1) }; times__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$IntIsIntegral__times__I__I__I(this, x$1, y$1) }; quot__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$IntIsIntegral__quot__I__I__I(this, x$1, y$1) }; compare__O__O__I(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return ((x$1 === y$1) ? 0 : ((x$1 < y$1) ? (-1) : 1)) }; toInt__O__I(x) { const x$1 = (x | 0); return x$1 }; fromInt__I__O(x) { return x }; } const $d_s_math_Numeric$IntIsIntegral$ = new $TypeData().initClass({ s_math_Numeric$IntIsIntegral$: 0 }, false, "scala.math.Numeric$IntIsIntegral$", { s_math_Numeric$IntIsIntegral$: 1, O: 1, s_math_Numeric$IntIsIntegral: 1, s_math_Integral: 1, s_math_Numeric: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_math_Ordering$IntOrdering: 1 }); $c_s_math_Numeric$IntIsIntegral$.prototype.$classData = $d_s_math_Numeric$IntIsIntegral$; let $n_s_math_Numeric$IntIsIntegral$ = (void 0); const $m_s_math_Numeric$IntIsIntegral$ = (function() { if ((!$n_s_math_Numeric$IntIsIntegral$)) { $n_s_math_Numeric$IntIsIntegral$ = new $c_s_math_Numeric$IntIsIntegral$().init___() }; return $n_s_math_Numeric$IntIsIntegral$ }); class $c_s_math_Numeric$LongIsIntegral$ extends $c_O { init___() { return this }; minus__O__O__O(x, y) { const t = $uJ(x); const lo = t.lo$2; const hi = t.hi$2; const t$1 = $uJ(y); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; return $f_s_math_Numeric$LongIsIntegral__minus__J__J__J(this, new $c_sjsr_RuntimeLong().init___I__I(lo, hi), new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$1)) }; plus__O__O__O(x, y) { const t = $uJ(x); const lo = t.lo$2; const hi = t.hi$2; const t$1 = $uJ(y); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; return $f_s_math_Numeric$LongIsIntegral__plus__J__J__J(this, new $c_sjsr_RuntimeLong().init___I__I(lo, hi), new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$1)) }; times__O__O__O(x, y) { const t = $uJ(x); const lo = t.lo$2; const hi = t.hi$2; const t$1 = $uJ(y); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; return $f_s_math_Numeric$LongIsIntegral__times__J__J__J(this, new $c_sjsr_RuntimeLong().init___I__I(lo, hi), new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$1)) }; quot__O__O__O(x, y) { const t = $uJ(x); const lo = t.lo$2; const hi = t.hi$2; const t$1 = $uJ(y); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; return $f_s_math_Numeric$LongIsIntegral__quot__J__J__J(this, new $c_sjsr_RuntimeLong().init___I__I(lo, hi), new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$1)) }; compare__O__O__I(x, y) { const t = $uJ(x); const lo = t.lo$2; const hi = t.hi$2; const t$1 = $uJ(y); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; return $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$compare__I__I__I__I__I(lo, hi, lo$1, hi$1) }; toInt__O__I(x) { const t = $uJ(x); const lo = t.lo$2; const hi = t.hi$2; return $f_s_math_Numeric$LongIsIntegral__toInt__J__I(this, new $c_sjsr_RuntimeLong().init___I__I(lo, hi)) }; fromInt__I__O(x) { return $f_s_math_Numeric$LongIsIntegral__fromInt__I__J(this, x) }; } const $d_s_math_Numeric$LongIsIntegral$ = new $TypeData().initClass({ s_math_Numeric$LongIsIntegral$: 0 }, false, "scala.math.Numeric$LongIsIntegral$", { s_math_Numeric$LongIsIntegral$: 1, O: 1, s_math_Numeric$LongIsIntegral: 1, s_math_Integral: 1, s_math_Numeric: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_math_Ordering$LongOrdering: 1 }); $c_s_math_Numeric$LongIsIntegral$.prototype.$classData = $d_s_math_Numeric$LongIsIntegral$; let $n_s_math_Numeric$LongIsIntegral$ = (void 0); const $m_s_math_Numeric$LongIsIntegral$ = (function() { if ((!$n_s_math_Numeric$LongIsIntegral$)) { $n_s_math_Numeric$LongIsIntegral$ = new $c_s_math_Numeric$LongIsIntegral$().init___() }; return $n_s_math_Numeric$LongIsIntegral$ }); class $c_s_math_Numeric$ShortIsIntegral$ extends $c_O { init___() { return this }; minus__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$ShortIsIntegral__minus__S__S__S(this, x$1, y$1) }; plus__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$ShortIsIntegral__plus__S__S__S(this, x$1, y$1) }; times__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$ShortIsIntegral__times__S__S__S(this, x$1, y$1) }; quot__O__O__O(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return $f_s_math_Numeric$ShortIsIntegral__quot__S__S__S(this, x$1, y$1) }; compare__O__O__I(x, y) { const x$1 = (x | 0); const y$1 = (y | 0); return ((x$1 - y$1) | 0) }; toInt__O__I(x) { const x$1 = (x | 0); return x$1 }; fromInt__I__O(x) { return $f_s_math_Numeric$ShortIsIntegral__fromInt__I__S(this, x) }; } const $d_s_math_Numeric$ShortIsIntegral$ = new $TypeData().initClass({ s_math_Numeric$ShortIsIntegral$: 0 }, false, "scala.math.Numeric$ShortIsIntegral$", { s_math_Numeric$ShortIsIntegral$: 1, O: 1, s_math_Numeric$ShortIsIntegral: 1, s_math_Integral: 1, s_math_Numeric: 1, s_math_Ordering: 1, ju_Comparator: 1, s_math_PartialOrdering: 1, s_math_Equiv: 1, s_Serializable: 1, Ljava_io_Serializable: 1, s_math_Ordering$ShortOrdering: 1 }); $c_s_math_Numeric$ShortIsIntegral$.prototype.$classData = $d_s_math_Numeric$ShortIsIntegral$; let $n_s_math_Numeric$ShortIsIntegral$ = (void 0); const $m_s_math_Numeric$ShortIsIntegral$ = (function() { if ((!$n_s_math_Numeric$ShortIsIntegral$)) { $n_s_math_Numeric$ShortIsIntegral$ = new $c_s_math_Numeric$ShortIsIntegral$().init___() }; return $n_s_math_Numeric$ShortIsIntegral$ }); class $c_sc_AbstractTraversable extends $c_O { copyToArray__O__I__V(xs, start) { $f_sc_TraversableOnce__copyToArray__O__I__V(this, xs, start) }; flatten__F1__sc_GenTraversable(asTraversable) { return $f_scg_GenericTraversableTemplate__flatten__F1__sc_GenTraversable(this, asTraversable) }; toList__sci_List() { const this$1 = $m_sci_List$(); const cbf = this$1.ReusableCBFInstance$2; return $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this, cbf) }; flatMap__F1__scg_CanBuildFrom__O(f, bf) { return $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this, f, bf) }; mkString__T__T(sep) { return this.mkString__T__T__T__T("", sep, "") }; mkString__T__T__T__T(start, sep, end) { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, start, sep, end) }; withFilter__F1__scg_FilterMonadic(p) { return new $c_sc_TraversableLike$WithFilter().init___sc_TraversableLike__F1(this, p) }; toString__T() { return $f_sc_TraversableLike__toString__T(this) }; foldLeft__O__F2__O(z, op) { return $f_sc_TraversableOnce__foldLeft__O__F2__O(this, z, op) }; toVector__sci_Vector() { $m_sci_Vector$(); const cbf = $m_sc_IndexedSeq$().ReusableCBF$6; return $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this, cbf) }; toIndexedSeq__sci_IndexedSeq() { const this$1 = $m_s_Predef$(); const cbf = new $c_s_LowPriorityImplicits$$anon$4().init___s_LowPriorityImplicits(this$1); return $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this, cbf) }; filter__F1__O(p) { return this.filterImpl__F1__Z__O(p, false) }; toBuffer__scm_Buffer() { const this$1 = $m_scm_ArrayBuffer$(); const cbf = this$1.ReusableCBFInstance$2; return $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this, cbf) }; filterImpl__F1__Z__O(p, isFlipped) { return $f_sc_TraversableLike__filterImpl__F1__Z__O(this, p, isFlipped) }; size__I() { return $f_sc_TraversableOnce__size__I(this) }; mkString__T() { return this.mkString__T__T("") }; $$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(that, bf) { return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf) }; sizeHintIfCheap__I() { return (-1) }; addString__scm_StringBuilder__T__T__T__scm_StringBuilder(b, start, sep, end) { return $f_sc_TraversableOnce__addString__scm_StringBuilder__T__T__T__scm_StringBuilder(this, b, start, sep, end) }; repr__O() { return this }; $$div$colon__O__F2__O(z, op) { return this.foldLeft__O__F2__O(z, op) }; isTraversableAgain__Z() { return true }; toMap__s_Predef$$less$colon$less__sci_Map(ev) { $m_sci_Map$(); const b = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); this.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, b$1, ev$1) { return (function(x$2) { return b$1.$$plus$eq__O__scm_Builder(x$2) }) })(this, b, ev))); return b.elems$1 }; map__F1__scg_CanBuildFrom__O(f, bf) { return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this, f, bf) }; toArray__s_reflect_ClassTag__O(evidence$1) { return $f_sc_TraversableOnce__toArray__s_reflect_ClassTag__O(this, evidence$1) }; collect__s_PartialFunction__scg_CanBuildFrom__O(pf, bf) { return $f_sc_TraversableLike__collect__s_PartialFunction__scg_CanBuildFrom__O(this, pf, bf) }; reduceLeft__F2__O(op) { return $f_sc_TraversableOnce__reduceLeft__F2__O(this, op) }; newBuilder__scm_Builder() { return this.companion__scg_GenericCompanion().newBuilder__scm_Builder() }; stringPrefix__T() { return $f_sc_TraversableLike__stringPrefix__T(this) }; } const $f_sc_SeqLike__lengthCompare__I__I = (function($thiz, len) { if ((len < 0)) { return 1 } else { let i = 0; const it = $thiz.iterator__sc_Iterator(); while (it.hasNext__Z()) { if ((i === len)) { return (it.hasNext__Z() ? 1 : 0) }; it.next__O(); i = ((1 + i) | 0) }; return ((i - len) | 0) } }); const $f_sc_SeqLike__indices__sci_Range = (function($thiz) { const end = $thiz.length__I(); return new $c_sci_Range().init___I__I__I(0, end, 1) }); const $f_sc_SeqLike__isEmpty__Z = (function($thiz) { return ($thiz.lengthCompare__I__I(0) === 0) }); const $f_sc_SeqLike__$$colon$plus__O__scg_CanBuildFrom__O = (function($thiz, elem, bf) { const b = bf.apply__O__scm_Builder($thiz.repr__O()); b.$$plus$plus$eq__sc_TraversableOnce__scg_Growable($thiz.thisCollection__sc_Seq()); b.$$plus$eq__O__scm_Builder(elem); return b.result__O() }); const $f_sc_SeqLike__sorted__s_math_Ordering__O = (function($thiz, ord) { const len = $thiz.length__I(); const b = $thiz.newBuilder__scm_Builder(); if ((len === 1)) { b.$$plus$plus$eq__sc_TraversableOnce__scg_Growable($thiz) } else if ((len > 1)) { b.sizeHint__I__V(len); const arr = $newArrayObject($d_O.getArrayOf(), [len]); const i = new $c_sr_IntRef().init___I(0); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, arr$1, i$1) { return (function(x$2) { arr$1.u[i$1.elem$1] = x$2; i$1.elem$1 = ((1 + i$1.elem$1) | 0) }) })($thiz, arr, i))); $m_ju_Arrays$().sort__AO__ju_Comparator__V(arr, ord); i.elem$1 = 0; while ((i.elem$1 < arr.u.length)) { b.$$plus$eq__O__scm_Builder(arr.u[i.elem$1]); i.elem$1 = ((1 + i.elem$1) | 0) } }; return b.result__O() }); const $f_sc_SeqLike__reverse__O = (function($thiz) { const elem = $m_sci_Nil$(); const xs = new $c_sr_ObjectRef().init___O(elem); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, xs$1) { return (function(x$2) { const this$2 = xs$1.elem$1; xs$1.elem$1 = new $c_sci_$colon$colon().init___O__sci_List(x$2, this$2) }) })($thiz, xs))); const b = $thiz.newBuilder__scm_Builder(); $f_scm_Builder__sizeHint__sc_TraversableLike__V(b, $thiz); const this$3 = xs.elem$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); b.$$plus$eq__O__scm_Builder(arg1); const this$4 = these; these = this$4.tail__sci_List() }; return b.result__O() }); const $f_sc_SeqLike__distinct__O = (function($thiz) { const isImmutable = $is_sci_Seq($thiz); if ((isImmutable && ($thiz.lengthCompare__I__I(1) <= 0))) { return $thiz.repr__O() } else { const b = $thiz.newBuilder__scm_Builder(); const seen = new $c_scm_HashSet().init___(); const it = $thiz.iterator__sc_Iterator(); let different = false; while (it.hasNext__Z()) { const next = it.next__O(); if ($f_scm_FlatHashTable__addElem__O__Z(seen, next)) { b.$$plus$eq__O__scm_Builder(next) } else { different = true } }; return ((different || (!isImmutable)) ? b.result__O() : $thiz.repr__O()) } }); const $f_sc_SeqLike__$$plus$colon__O__scg_CanBuildFrom__O = (function($thiz, elem, bf) { const b = bf.apply__O__scm_Builder($thiz.repr__O()); b.$$plus$eq__O__scm_Builder(elem); b.$$plus$plus$eq__sc_TraversableOnce__scg_Growable($thiz.thisCollection__sc_Seq()); return b.result__O() }); const $f_sc_SeqLike__contains__O__Z = (function($thiz, elem) { return $thiz.exists__F1__Z(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, elem$1) { return (function(x$12$2) { return $m_sr_BoxesRunTime$().equals__O__O__Z(x$12$2, elem$1) }) })($thiz, elem))) }); const $f_sc_SeqLike__sortBy__F1__s_math_Ordering__O = (function($thiz, f, ord) { const ord$1 = new $c_s_math_Ordering$$anon$2().init___s_math_Ordering__F1(ord, f); return $f_sc_SeqLike__sorted__s_math_Ordering__O($thiz, ord$1) }); const $f_sc_SeqLike__startsWith__sc_GenSeq__I__Z = (function($thiz, that, offset) { const i = $thiz.iterator__sc_Iterator().drop__I__sc_Iterator(offset); const j = that.iterator__sc_Iterator(); while ((j.hasNext__Z() && i.hasNext__Z())) { if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(i.next__O(), j.next__O()))) { return false } }; return (!j.hasNext__Z()) }); const $is_sc_SeqLike = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_SeqLike))) }); const $isArrayOf_sc_SeqLike = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_SeqLike))) }); class $c_sr_RichChar extends $c_O { constructor() { super(); this.self$1 = 0 }; isValidInt__Z() { return $f_s_math_ScalaNumericAnyConversions__isValidInt__Z(this) }; longValue__J() { return $m_sr_RichChar$().longValue$extension__C__J(this.self$1) }; isValidShort__Z() { return $f_s_math_ScalaNumericAnyConversions__isValidShort__Z(this) }; byteValue__B() { return $m_sr_RichChar$().byteValue$extension__C__B(this.self$1) }; equals__O__Z(x$1) { return $m_sr_RichChar$().equals$extension__C__O__Z(this.self$1, x$1) }; isWhole__Z() { return true }; isValidChar__Z() { return true }; toString__T() { return $f_s_Proxy__toString__T(this) }; isValidByte__Z() { return $f_s_math_ScalaNumericAnyConversions__isValidByte__Z(this) }; compare__O__I(y) { const c = this.self$1; let y$1; if ((y === null)) { y$1 = 0 } else { const this$7 = y; y$1 = this$7.value$1 }; return ((c - y$1) | 0) }; self__O() { const c = this.self$1; return new $c_jl_Character().init___C(c) }; init___C(self) { this.self$1 = self; return this }; shortValue__S() { return $m_sr_RichChar$().shortValue$extension__C__S(this.self$1) }; doubleValue__D() { const $$this = this.self$1; return $$this }; hashCode__I() { return $m_sr_RichChar$().hashCode$extension__C__I(this.self$1) }; intValue__I() { const $$this = this.self$1; return $$this }; floatValue__F() { return $m_sr_RichChar$().floatValue$extension__C__F(this.self$1) }; } const $isArrayOf_sr_RichChar = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sr_RichChar))) }); const $d_sr_RichChar = new $TypeData().initClass({ sr_RichChar: 0 }, false, "scala.runtime.RichChar", { sr_RichChar: 1, O: 1, sr_IntegralProxy: 1, sr_ScalaWholeNumberProxy: 1, sr_ScalaNumberProxy: 1, s_math_ScalaNumericAnyConversions: 1, s_Proxy$Typed: 1, s_Proxy: 1, sr_OrderedProxy: 1, s_math_Ordered: 1, jl_Comparable: 1, sr_RangedProxy: 1 }); $c_sr_RichChar.prototype.$classData = $d_sr_RichChar; const $is_sc_GenSet = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_GenSet))) }); const $isArrayOf_sc_GenSet = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_GenSet))) }); const $f_sc_IndexedSeqLike__toBuffer__scm_Buffer = (function($thiz) { const result = new $c_scm_ArrayBuffer().init___I($thiz.size__I()); const xs = $thiz.seq__sc_TraversableOnce(); result.$$plus$plus$eq__sc_TraversableOnce__scm_ArrayBuffer(xs); return result }); const $is_sc_IndexedSeqLike = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_IndexedSeqLike))) }); const $isArrayOf_sc_IndexedSeqLike = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_IndexedSeqLike))) }); const $is_sc_LinearSeqLike = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_LinearSeqLike))) }); const $isArrayOf_sc_LinearSeqLike = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_LinearSeqLike))) }); class $c_Lio_kaitai_struct_languages_CppCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.PrivateAccess$module$2 = null; this.PublicAccess$module$2 = null; this.importListSrc$2 = null; this.importListHdr$2 = null; this.translator$2 = null; this.outSrcHeader$2 = null; this.outHdrHeader$2 = null; this.outSrc$2 = null; this.outHdr$2 = null; this.accessMode$2 = null; this.ReStdUniquePtr$2 = null }; instanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$()); this.outHdr$2.puts__T__V((("bool " + this.calculatedFlagForName__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")); this.outHdr$2.puts__T__V((((this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(attrType, false) + " ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")); this.declareNullFlag__Lio_kaitai_struct_format_Identifier__Z__V(attrName, isNullable) }; switchEnd__V() { this.outSrc$2.puts__T__V("}") }; stdMoveWrap__T__T(expr) { const x1 = this.config$1.cppConfig$1.pointers$1; const x = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((x === x1)) { return (("std::move(" + expr) + ")") } else { return expr } }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.importListHdr$2.addSystem__T__V("vector"); if ((needRaw.level__I() >= 1)) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T($m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$())) + ";")); if (needRaw.hasIO__Z()) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_IoStorageIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T($m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$())) + ";")) } }; if ((needRaw.level__I() >= 2)) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T($m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$())) + ";")) }; this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T(dataType)) + ";")); this.outSrc$2.puts__T__V("{"); this.outSrc$2.inc__V(); this.outSrc$2.puts__T__V("int i = 0;"); this.outSrc$2.puts__T__V((((this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(dataType.asNonOwning__Lio_kaitai_struct_datatype_DataType(), false) + " ") + this.translator$2.doName__T__T("_")) + ";")); this.outSrc$2.puts__T__V("do {"); this.outSrc$2.inc__V() }; needsDestruction__Lio_kaitai_struct_datatype_DataType__Z(t) { if ((t instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { return true } else if ((t instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream)) { return true } else { const x = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); if ((x === t)) { return true } else { const x$3 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); return (x$3 === t) } } }; newVector__Lio_kaitai_struct_datatype_DataType__T(elType) { const cppElType = this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(elType, false); const x1 = this.config$1.cppConfig$1.pointers$1; const x = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x === x1)) { return (("new std::vector<" + cppElType) + ">()") } else { const x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((x$3 === x1)) { return (((("std::unique_ptr>(new std::vector<") + cppElType) + ">())") } else { throw new $c_s_MatchError().init___O(x1) } } }; paramName__Lio_kaitai_struct_format_Identifier__T(id) { return ("p_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; PrivateAccess$lzycompute$1__p2__V() { if ((this.PrivateAccess$module$2 === null)) { this.PrivateAccess$module$2 = new $c_Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$().init___Lio_kaitai_struct_languages_CppCompiler(this) } }; condIfSetNonNull__Lio_kaitai_struct_format_Identifier__V(instName) { this.outSrc$2.puts__T__V((this.nullFlagForName__Lio_kaitai_struct_format_Identifier__T(instName) + " = false;")) }; switchIfElseStart__V() { this.outSrc$2.puts__T__V("else {"); this.outSrc$2.inc__V() }; importDataType__Lio_kaitai_struct_datatype_DataType__V(dt) { if ((dt instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x2 = dt; const classSpec = x2.classSpec$3.get__O(); if (classSpec.isTopLevel$1) { this.importListSrc$2.addLocal__T__V(this.outFileNameHeader__T__T(classSpec.name$1.head__O())) } } }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.outSrc$2.puts__T__V("if (m__is_le == 1) {"); this.outSrc$2.inc__V(); leProc.apply__O(); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("} else {"); this.outSrc$2.inc__V(); beProc.apply__O(); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(id, on, onType, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(this, id, on, onType, cases, normalCaseProc, elseCaseProc) }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$()); this.outHdr$2.puts__T__V((((this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(dataType.asNonOwning__Lio_kaitai_struct_datatype_DataType(), false) + " ") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(instName)) + "();")); const this$1 = this.outSrc$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.outSrc$2.puts__T__V((((((this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(dataType.asNonOwning__Lio_kaitai_struct_datatype_DataType(), true) + " ") + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(className)) + "::") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(instName)) + "() {")); this.outSrc$2.inc__V() }; destructMember__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__Lio_kaitai_struct_datatype_NeedRaw__V(id, innerType, isArray, needRaw) { const x = this.config$1.cppConfig$1.pointers$1; const x$2 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if (((x !== null) && (x === x$2))) { if (isArray) { if ((needRaw.level__I() >= 1)) { this.destructWithSafeguardSimple$1__p2__T__V(this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))); if (needRaw.hasIO__Z()) { const ioVar = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_IoStorageIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))); this.destructWithSafeguardHeader$1__p2__T__V(ioVar); this.destructVector__T__T__V("kaitai::kstream*", ioVar); this.destructWithSafeguardFooter$1__p2__T__V(ioVar) } }; if ((needRaw.level__I() >= 2)) { this.destructWithSafeguardSimple$1__p2__T__V(this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)))) }; const arrVar = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id); this.destructWithSafeguardHeader$1__p2__T__V(arrVar); if (this.needsDestruction__Lio_kaitai_struct_datatype_DataType__Z(innerType)) { const x$3 = $m_Lio_kaitai_struct_datatype_DataType$AnyType$(); let realType; if ((x$3 === innerType)) { realType = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$() } else { realType = innerType }; this.destructVector__T__T__V(this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(realType, false), arrVar) }; this.destructWithSafeguardFooter$1__p2__T__V(arrVar) } else { if (needRaw.hasIO__Z()) { this.destructWithSafeguardSimple$1__p2__T__V(this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_IoStorageIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)))) }; if (this.needsDestruction__Lio_kaitai_struct_datatype_DataType__Z(innerType)) { this.destructWithSafeguardSimple$1__p2__T__V(this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id)) } } } }; destructVector__T__T__V(elType, arrVar) { this.outSrc$2.puts__T__V((((((("for (std::vector<" + elType) + ">::iterator it = ") + arrVar) + "->begin(); it != ") + arrVar) + "->end(); ++it) {")); this.outSrc$2.inc__V(); this.outSrc$2.puts__T__V("delete *it;"); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { this.importListHdr$2.addSystem__T__V("vector"); if ((needRaw.level__I() >= 1)) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T($m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$())) + ";")); if (needRaw.hasIO__Z()) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_IoStorageIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T($m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$())) + ";")) } }; if ((needRaw.level__I() >= 2)) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T($m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$())) + ";")) }; this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T(dataType)) + ";")); this.outSrc$2.puts__T__V("{"); this.outSrc$2.inc__V(); this.outSrc$2.puts__T__V("int i = 0;"); this.outSrc$2.puts__T__V((("while (!" + io) + "->is_eof()) {")); this.outSrc$2.inc__V() }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { return ("m_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; switchIfStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__V(id, on, onType) { this.outSrc$2.puts__T__V("{"); this.outSrc$2.inc__V(); this.outSrc$2.puts__T__V((((this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(onType, false) + " on = ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ";")) }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.outSrc$2.puts__T__V((((io + "->seek(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + ");")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.outSrc$2.puts__T__V((("return " + this.nonOwningPointer__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T(instName, attrType)) + ";")) }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr) + ";")) }; attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, attrType, checkExpr, err, errArgs) { const f = (function($this) { return (function(v$2) { const v = v$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((errArgs === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = errArgs.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = errArgs.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(errArgs, bf); let these = errArgs; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const errArgsStr = jsx$1.mkString__T__T(", "); const this$4 = this.importListSrc$2; this$4.addLocal__T__V("kaitai/exceptions.h"); this.outSrc$2.puts__T__V((("if (!(" + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(checkExpr)) + ")) {")); this.outSrc$2.inc__V(); this.outSrc$2.puts__T__V((((("throw " + this.ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err)) + "(") + errArgsStr) + ");")); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; attrDestructor__Lio_kaitai_struct_format_AttrLikeSpec__Lio_kaitai_struct_format_Identifier__V(attr, id) { const checkLazy = (attr.isLazy__Z() ? new $c_s_Some().init___O(this.calculatedFlagForName__Lio_kaitai_struct_format_Identifier__T(id)) : $m_s_None$()); const checkNull = ($f_Lio_kaitai_struct_format_AttrLikeSpec__isNullableSwitchRaw__Z(attr) ? new $c_s_Some().init___O(("!" + this.nullFlagForName__Lio_kaitai_struct_format_Identifier__T(id))) : $m_s_None$()); $m_sci_List$(); const array = [checkLazy, checkNull]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const this$5 = result; $m_sci_List$(); const b = new $c_scm_ListBuffer().init___(); let these = this$5; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const xo = arg1; const this$8 = xo.toList__sci_List(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(this$8); const this$9 = these; these = this$9.tail__sci_List() }; const checks = b.toList__sci_List(); if ($f_sc_TraversableOnce__nonEmpty__Z(checks)) { this.outSrc$2.puts__T__V((("if (" + $f_sc_TraversableOnce__mkString__T__T__T__T(checks, "", " && ", "")) + ") {")); this.outSrc$2.inc__V() }; const dataType = attr.dataType__Lio_kaitai_struct_datatype_DataType(); const needRaw = $f_Lio_kaitai_struct_languages_components_CommonReads__needRaw__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw(this, dataType); const x1 = attr.dataType__Lio_kaitai_struct_datatype_DataType(); let innerType; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x2 = x1; innerType = x2.combinedType__Lio_kaitai_struct_datatype_DataType() } else { innerType = x1 }; this.destructMember__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__Lio_kaitai_struct_datatype_NeedRaw__V(id, innerType, $f_Lio_kaitai_struct_format_AttrLikeSpec__isArray__Z(attr), needRaw); if ($f_sc_TraversableOnce__nonEmpty__Z(checks)) { this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") } }; condRepeatEosFooter__V() { this.outSrc$2.puts__T__V("i++;"); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}"); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; blockScopeHeader__V() { this.outSrc$2.puts__T__V("{"); this.outSrc$2.inc__V() }; blockScopeFooter__V() { this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; pushPos__T__V(io) { this.outSrc$2.puts__T__V((("std::streampos _pos = " + io) + "->pos();")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { let x1_$_$$und1$f; let x1_$_$$und2$f; if (isHybrid) { const jsx$1_$_$$und1$f = ", int p_is_le = -1"; const jsx$1_$_$$und2$f = ", int p_is_le"; x1_$_$$und1$f = jsx$1_$_$$und1$f; x1_$_$$und2$f = jsx$1_$_$$und2$f } else { const jsx$2_$_$$und1$f = ""; const jsx$2_$_$$und2$f = ""; x1_$_$$und1$f = jsx$2_$_$$und1$f; x1_$_$$und2$f = jsx$2_$_$$und2$f }; const endianSuffixHdr = x1_$_$$und1$f; const endianSuffixSrc = x1_$_$$und2$f; const jsx$4 = $m_Lio_kaitai_struct_Utils$(); const f = (function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; $this.importDataType__Lio_kaitai_struct_datatype_DataType__V(x0$1.dataType$1); return (($this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(x0$1.dataType$1, false) + " ") + $this.paramName__Lio_kaitai_struct_format_Identifier__T(x0$1.id$1)) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$3; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((params === $m_sci_Nil$())) { jsx$3 = $m_sci_Nil$() } else { const arg1 = params.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = params.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$3 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(params, bf); let these = params; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$3 = b.result__O() }; const paramsArg = jsx$4.join__sc_TraversableOnce__T__T__T__T(jsx$3, "", ", ", ", "); const jsx$5 = $m_Lio_kaitai_struct_languages_CppCompiler$(); $m_sci_List$(); const array = [$f_sc_LinearSeqOptimized__last__O(name)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$7 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$7); i = (((-1) + i) | 0) }; const classNameBrief = jsx$5.types2class__sci_List__T(result); const pIo = this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()); const pParent = this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_ParentIdentifier$()); const pRoot = this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$()); const tIo = this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T($m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(), false); const tParent = this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(parentType, false); const tRoot = this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(new $c_Lio_kaitai_struct_datatype_DataType$CalcUserType().init___sci_List__s_Option__sc_Seq(rootClassName, $m_s_None$(), $m_sc_Seq$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$())), false); this.importDataType__Lio_kaitai_struct_datatype_DataType__V(parentType); const this$9 = this.outHdr$2; this$9.sb$2.append__T__scm_StringBuilder("\n"); this.outHdr$2.puts__T__V(((((((((classNameBrief + "(") + paramsArg) + ((tIo + " ") + pIo)) + ", ") + ((((tParent + " ") + pParent) + " = ") + this.nullPtr__T())) + ", ") + (((((tRoot + " ") + pRoot) + " = ") + this.nullPtr__T()) + endianSuffixHdr)) + ");")); const this$10 = this.outSrc$2; this$10.sb$2.append__T__scm_StringBuilder("\n"); this.outSrc$2.puts__T__V((((((((((($m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(name) + "::") + classNameBrief) + "(") + paramsArg) + ((tIo + " ") + pIo)) + ", ") + ((tParent + " ") + pParent)) + ", ") + (((((tRoot + " ") + pRoot) + endianSuffixSrc) + ") : kaitai::kstruct(") + pIo)) + ") {")); this.outSrc$2.inc__V(); const x$1 = this.config$1.cppConfig$1.pointers$1; const x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); if (((x$1 !== null) && (x$1 === x$3))) { this.outSrc$2.puts__T__V((((("const auto weakPtrTrick = std::shared_ptr<" + classNameBrief) + ">(this, [](") + classNameBrief) + "*){});")) }; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_ParentIdentifier$(), pParent); const jsx$8 = $m_Lio_kaitai_struct_format_RootIdentifier$(); let jsx$6; if (((name === null) ? (rootClassName === null) : name.equals__O__Z(rootClassName))) { const x1$2 = this.config$1.cppConfig$1.pointers$1; const x$6 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); let jsx$7; if ((x$6 === x1$2)) { jsx$7 = true } else { const x$8 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); jsx$7 = (x$8 === x1$2) }; if (jsx$7) { jsx$6 = "this" } else { const x$10 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); if ((!(x$10 === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; jsx$6 = "shared_from_this()" } } else { jsx$6 = pRoot }; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(jsx$8, jsx$6); const x1$3 = this.typeProvider$1.nowClass$1.meta$1.endian$1; let jsx$9; matchEnd12: { if ((x1$3 instanceof $c_s_Some)) { const x2 = x1$3; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { jsx$9 = true; break matchEnd12 } }; if ((x1$3 instanceof $c_s_Some)) { const x4 = x1$3; const p5 = x4.value$2; const x$12 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$12 === p5)) { jsx$9 = true; break matchEnd12 } }; jsx$9 = false }; if (jsx$9) { this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$()); this.outHdr$2.puts__T__V("int m__is_le;"); this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_EndianIdentifier$(), (isHybrid ? "p_is_le" : "-1")); this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$()) }; let these$1 = params; while ((!these$1.isEmpty__Z())) { const arg1$3 = these$1.head__O(); const p = arg1$3; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(p.id$1, this.paramName__Lio_kaitai_struct_format_Identifier__T(p.id$1)); const this$11 = these$1; these$1 = this$11.tail__sci_List() } }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.outSrc$2.puts__T__V((("kaitai::kstream *io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx)) + ";")); return "io" }; switchCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.outSrc$2.puts__T__V((("case " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ": {")); this.outSrc$2.inc__V() }; switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; return (((io + "->read_") + x6.apiCall__s_Option__T(defEndian)) + "()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; return (((io + "->read_bytes(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (io + "->read_bytes_full()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; return (((((((((io + "->read_bytes_term(") + terminator) + ", ") + include) + ", ") + consume) + ", ") + eosError) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; return (((io + "->read_bits_int_") + bitEndian.toSuffix__T()) + "(1)") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; return (((((io + "->read_bits_int_") + bitEndian$2.toSuffix__T()) + "(") + width) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x10 = dataType; const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const jsx$2 = x10.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); const addParams = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2), "", ", ", ", "); let addArgs; if (x10.isOpaque__Z()) { addArgs = "" } else { let rc8 = false; let x2$2 = null; const x1$2 = x10.forcedParent$3; let parent; matchEnd9: { if ((x1$2 instanceof $c_s_Some)) { rc8 = true; x2$2 = x1$2; const p3 = x2$2.value$2; const x = $m_Lio_kaitai_struct_datatype_DataType$().USER$undTYPE$undNO$undPARENT$1; if (((x === null) ? (p3 === null) : x.equals__O__Z(p3))) { parent = this.nullPtr__T(); break matchEnd9 } }; if (rc8) { const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp); break matchEnd9 }; const x$3 = $m_s_None$(); if ((x$3 === x1$2)) { const x1$3 = this.config$1.cppConfig$1.pointers$1; const x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); let jsx$4; if ((x$5 === x1$3)) { jsx$4 = true } else { const x$7 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); jsx$4 = (x$7 === x1$3) }; if (jsx$4) { parent = "this"; break matchEnd9 } else { const x$9 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); if ((!(x$9 === x1$3))) { throw new $c_s_MatchError().init___O(x1$3) }; parent = "shared_from_this()"; break matchEnd9 } }; throw new $c_s_MatchError().init___O(x1$2) }; const x1$4 = x10.classSpec$3.get__O().meta$1.endian$1; let addEndian; matchEnd6$2: { if ((x1$4 instanceof $c_s_Some)) { const x2$3 = x1$4; const p3$2 = x2$3.value$2; const x$11 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$11 === p3$2)) { addEndian = ", m__is_le"; break matchEnd6$2 } }; addEndian = "" }; addArgs = ((((", " + parent) + ", ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$())) + addEndian) }; const x1$5 = this.config$1.cppConfig$1.pointers$1; const x$13 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x$13 === x1$5)) { return (((((("new " + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(x10.name$3)) + "(") + addParams) + io) + addArgs) + ")") } else { const x$15 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); if ((x$15 === x1$5)) { return (((((("std::make_shared<" + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(x10.name$3)) + ">(") + addParams) + io) + addArgs) + ")") } else { const x$17 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((x$17 === x1$5)) { return (((((((("std::unique_ptr<" + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(x10.name$3)) + ">(new ") + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(x10.name$3)) + "(") + addParams) + io) + addArgs) + "))") } else { throw new $c_s_MatchError().init___O(x1$5) } } } } else { throw new $c_s_MatchError().init___O(dataType) } }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; condRepeatExprFooter__V() { this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; switchBytesOnlyAsRaw__Z() { return true }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); this.importListSrc$2 = new $c_Lio_kaitai_struct_languages_components_CppImportList().init___(); this.importListHdr$2 = new $c_Lio_kaitai_struct_languages_components_CppImportList().init___(); this.translator$2 = new $c_Lio_kaitai_struct_translators_CppTranslator().init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_languages_components_CppImportList__Lio_kaitai_struct_languages_components_CppImportList__Lio_kaitai_struct_RuntimeConfig(this.typeProvider$1, this.importListSrc$2, this.importListHdr$2, this.config$1); this.outSrcHeader$2 = new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T(" "); this.outHdrHeader$2 = new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T(" "); this.outSrc$2 = new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T(" "); this.outHdr$2 = new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T(" "); this.accessMode$2 = this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$(); const this$2 = new $c_sci_StringOps().init___T("^std::unique_ptr<(.*?)>\\((.*?)\\)$"); const groupNames = $m_sci_Nil$(); const $$this = this$2.repr$1; this.ReStdUniquePtr$2 = new $c_s_util_matching_Regex().init___T__sc_Seq($$this, groupNames); return this }; outFileNameSource__T__T(className) { return (className + ".cpp") }; nullPtr__T() { const x1 = this.config$1.cppConfig$1.pointers$1; const x = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x === x1)) { return "0" } else { const x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); let jsx$1; if ((x$3 === x1)) { jsx$1 = true } else { const x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); jsx$1 = (x$5 === x1) }; if (jsx$1) { return "nullptr" } else { throw new $c_s_MatchError().init___O(x1) } } }; attrParse2$default$7__s_Option() { return $m_s_None$() }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { this.outSrc$2.puts__T__V((((((this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(dataType, false) + " ") + id) + " = ") + expr) + ";")) }; attrInit__Lio_kaitai_struct_format_AttrLikeSpec__V(attr) { const x1 = $f_Lio_kaitai_struct_format_AttrLikeSpec__dataTypeComposite__Lio_kaitai_struct_datatype_DataType(attr); let jsx$1; if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { jsx$1 = true } else if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream)) { jsx$1 = true } else { const x = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); jsx$1 = (x === x1) }; if (jsx$1) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attr.id__Lio_kaitai_struct_format_Identifier()) + " = ") + this.nullPtr__T()) + ";")) } }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x2 = id; const inner = x2.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(inner)) } else if ((id instanceof $c_Lio_kaitai_struct_format_IoStorageIdentifier)) { const x3 = id; const inner$2 = x3.innerId$2; return ("_io_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(inner$2)) } else if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x5 = id; $m_Lio_kaitai_struct_Utils$(); const s = x5.name$2; return s } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x6 = id; $m_Lio_kaitai_struct_Utils$(); const s$1 = x6.name$2; return s$1 } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x7 = id; $m_Lio_kaitai_struct_Utils$(); const s$2 = x7.name$2; return s$2 } else { throw new $c_s_MatchError().init___O(id) } }; classDestructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__V(name, parentType, topClassName) { this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$()); this.outHdr$2.puts__T__V("void _clean_up();"); this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$()); const jsx$2 = this.outHdr$2; const jsx$1 = $m_Lio_kaitai_struct_languages_CppCompiler$(); $m_sci_List$(); const array = [$f_sc_LinearSeqOptimized__last__O(name)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; jsx$2.puts__T__V((("~" + jsx$1.types2class__sci_List__T(result)) + "();")); const this$5 = this.outSrc$2; this$5.sb$2.append__T__scm_StringBuilder("\n"); const jsx$5 = this.outSrc$2; const jsx$4 = $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(name); const jsx$3 = $m_Lio_kaitai_struct_languages_CppCompiler$(); $m_sci_List$(); const array$1 = [$f_sc_LinearSeqOptimized__last__O(name)]; let i$1 = (((-1) + (array$1.length | 0)) | 0); let result$1 = $m_sci_Nil$(); while ((i$1 >= 0)) { const this$9 = result$1; const index$1 = i$1; const x$1 = array$1[index$1]; result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$1, this$9); i$1 = (((-1) + i$1) | 0) }; jsx$5.puts__T__V((((jsx$4 + "::~") + jsx$3.types2class__sci_List__T(result$1)) + "() {")); this.outSrc$2.inc__V(); this.outSrc$2.puts__T__V("_clean_up();"); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}"); const this$10 = this.outSrc$2; this$10.sb$2.append__T__scm_StringBuilder("\n"); this.outSrc$2.puts__T__V((("void " + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(name)) + "::_clean_up() {")); this.outSrc$2.inc__V() }; classForwardDeclaration__sci_List__V(name) { this.outHdr$2.puts__T__V((("class " + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(name)) + ";")) }; destructWithSafeguardHeader$1__p2__T__V(ptr) { this.outSrc$2.puts__T__V((("if (" + ptr) + ") {")); this.outSrc$2.inc__V() }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return ("_t_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$() { if ((this.PrivateAccess$module$2 === null)) { this.PrivateAccess$lzycompute$1__p2__V() }; return this.PrivateAccess$module$2 }; alignToByte__T__V(io) { this.outSrc$2.puts__T__V((io + "->align_to_byte();")) }; defineName__T__T(className) { return (($m_Lio_kaitai_struct_Utils$(), className.toUpperCase()) + "_H_") }; switchCaseEnd__V() { this.outSrc$2.puts__T__V("break;"); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { let x1_$_$$und1$f; let x1_$_$$und2$f; if (isRaw) { const _2 = this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1); const jsx$1_$_$$und1$f = "std::string "; const jsx$1_$_$$und2$f = _2; x1_$_$$und1$f = jsx$1_$_$$und1$f; x1_$_$$und2$f = jsx$1_$_$$und2$f } else { const _2$1 = this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1); const jsx$2_$_$$und1$f = ""; const jsx$2_$_$$und2$f = _2$1; x1_$_$$und1$f = jsx$2_$_$$und1$f; x1_$_$$und2$f = jsx$2_$_$$und2$f }; const typeDecl = x1_$_$$und1$f; const tempVar = x1_$_$$und2$f; const x = this.config$1.cppConfig$1.pointers$1; const x$2 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); let x1$3_$_$$und1$f; let x1$3_$_$$und2$f; if (((x !== null) && (x === x$2))) { matchEnd4: { const o7 = this.ReStdUniquePtr$2.unapplySeq__jl_CharSequence__s_Option(expr); let jsx$3; if ((!o7.isEmpty__Z())) { if ((o7.get__O() !== null)) { const this$1 = o7.get__O(); jsx$3 = ($f_sc_LinearSeqOptimized__lengthCompare__I__I(this$1, 2) === 0) } else { jsx$3 = false } } else { jsx$3 = false }; if (jsx$3) { const this$2 = o7.get__O(); const cppClass = $f_sc_LinearSeqOptimized__apply__I__O(this$2, 0); const this$3 = o7.get__O(); const innerExpr = $f_sc_LinearSeqOptimized__apply__I__O(this$3, 1); const _1 = (((("std::move(std::unique_ptr<" + cppClass) + ">(") + tempVar) + "))"); const jsx$4_$_$$und1$f = _1; const jsx$4_$_$$und2$f = innerExpr; x1$3_$_$$und1$f = jsx$4_$_$$und1$f; x1$3_$_$$und2$f = jsx$4_$_$$und2$f; break matchEnd4 }; const jsx$5_$_$$und1$f = tempVar; const jsx$5_$_$$und2$f = expr; x1$3_$_$$und1$f = jsx$5_$_$$und1$f; x1$3_$_$$und2$f = jsx$5_$_$$und2$f } } else { const jsx$6_$_$$und1$f = tempVar; const jsx$6_$_$$und2$f = expr; x1$3_$_$$und1$f = jsx$6_$_$$und1$f; x1$3_$_$$und2$f = jsx$6_$_$$und2$f }; const wrappedTempVar = x1$3_$_$$und1$f; const rawPtrExpr = x1$3_$_$$und2$f; this.outSrc$2.puts__T__V(((((("" + typeDecl) + tempVar) + " = ") + rawPtrExpr) + ";")); this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "->push_back(") + wrappedTempVar) + ");")) }; type2class__T__T(className) { return $m_Lio_kaitai_struct_languages_CppCompiler$().type2class__T__T(className) }; opaqueClassDeclaration__Lio_kaitai_struct_format_ClassSpec__V(classSpec) { this.classForwardDeclaration__sci_List__V(classSpec.name$1); this.importListHdr$2.addLocal__T__V(this.outFileNameHeader__T__T(classSpec.name$1.head__O())) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$()); this.outHdr$2.puts__T__V((((this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(attrType, false) + " ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")); this.declareNullFlag__Lio_kaitai_struct_format_Identifier__Z__V(attrName, isNullable) }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $f_Lio_kaitai_struct_languages_components_AllocateAndStoreIO__extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(this, id, rep) }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.outSrc$2.puts__T__V((("if (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + ") {")); this.outSrc$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "->push_back(") + this.stdMoveWrap__T__T(expr)) + ");")) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "->push_back(") + this.stdMoveWrap__T__T(expr)) + ");")) }; classHeader__sci_List__V(name) { const jsx$1 = $m_Lio_kaitai_struct_languages_CppCompiler$(); $m_sci_List$(); const array = [$f_sc_LinearSeqOptimized__last__O(name)]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const className = jsx$1.types2class__sci_List__T(result); const x1 = this.config$1.cppConfig$1.pointers$1; const x$1 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); let jsx$2; if ((x$1 === x1)) { jsx$2 = true } else { const x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); jsx$2 = (x$3 === x1) }; let extraInherits; if (jsx$2) { extraInherits = "" } else { const x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); if ((!(x$5 === x1))) { throw new $c_s_MatchError().init___O(x1) }; extraInherits = ((", std::enable_shared_from_this<" + className) + ">") }; const this$5 = this.outHdr$2; this$5.sb$2.append__T__scm_StringBuilder("\n"); this.outHdr$2.puts__T__V((((("class " + className) + " : public kaitai::kstruct") + extraInherits) + " {")); this.outHdr$2.inc__V(); this.accessMode$2 = this.PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$(); this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$()) }; readHeader__s_Option__Z__V(endian, isEmpty) { let suffix; if ((endian instanceof $c_s_Some)) { const x2 = endian; const e = x2.value$2; suffix = ("_" + e.toSuffix__T()) } else { const x = $m_s_None$(); if ((!(x === endian))) { throw new $c_s_MatchError().init___O(endian) }; suffix = "" }; this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V((this.config$1.autoRead$1 ? this.PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$() : this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$())); this.outHdr$2.puts__T__V((("void _read" + suffix) + "();")); const this$1 = this.outSrc$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.outSrc$2.puts__T__V((((("void " + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(this.typeProvider$1.nowClass$1.name$1)) + "::_read") + suffix) + "() {")); this.outSrc$2.inc__V() }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { const this$1 = topClass.name$1; const className = $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", ""); const self = this.outFileNameSource__T__T(className); const this$3 = this.outSrcHeader$2; const this$4 = this$3.sb$2; const jsx$4 = this$4.underlying$5.java$lang$StringBuilder$$content$f; const jsx$3 = this.importListSrc$2.result__T(); const this$5 = this.outSrc$2; const this$6 = this$5.sb$2; const y = ((("" + jsx$4) + jsx$3) + this$6.underlying$5.java$lang$StringBuilder$$content$f); const jsx$5 = new $c_T2().init___O__O(self, y); const self$1 = this.outFileNameHeader__T__T(className); const this$9 = this.outHdrHeader$2; const this$10 = this$9.sb$2; const jsx$2 = this$10.underlying$5.java$lang$StringBuilder$$content$f; const jsx$1 = this.importListHdr$2.result__T(); const this$11 = this.outHdr$2; const this$12 = this$11.sb$2; const y$1 = ((("" + jsx$2) + jsx$1) + this$12.underlying$5.java$lang$StringBuilder$$content$f); const array = [jsx$5, new $c_T2().init___O__O(self$1, y$1)]; const this$17 = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const len = (array.length | 0); while ((i < len)) { const index = i; const arg1 = array[index]; this$17.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; return this$17.elems$1 }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.outSrc$2.puts__T__V((("case " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ": {")); this.outSrc$2.inc__V() }; value2Const__T__T__T(enumName, label) { $m_Lio_kaitai_struct_Utils$(); const s = ((enumName + "_") + label); return s.toUpperCase() }; PublicAccess$lzycompute$1__p2__V() { if ((this.PublicAccess$module$2 === null)) { this.PublicAccess$module$2 = new $c_Lio_kaitai_struct_languages_CppCompiler$PublicAccess$().init___Lio_kaitai_struct_languages_CppCompiler(this) } }; destructWithSafeguardFooter$1__p2__T__V(ptr) { this.outSrc$2.puts__T__V((((((("delete " + ptr) + "; ") + ptr) + " = ") + this.nullPtr__T()) + ";")); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; classConstructorFooter__V() { this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.outSrc$2.puts__T__V((io + "->seek(_pos);")) }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return (((memberName + "->at(") + memberName) + "->size() - 1)") } }; outFileNameHeader__T__T(className) { return (className + ".h") }; destructWithSafeguardSimple$1__p2__T__V(ptr) { this.destructWithSafeguardHeader$1__p2__T__V(ptr); this.destructWithSafeguardFooter$1__p2__T__V(ptr) }; runReadCalc__V() { const this$1 = this.outSrc$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.outSrc$2.puts__T__V("if (m__is_le == -1) {"); this.outSrc$2.inc__V(); const this$2 = this.importListSrc$2; this$2.addLocal__T__V("kaitai/exceptions.h"); const jsx$2 = this.outSrc$2; const jsx$1 = this.ksErrorName__Lio_kaitai_struct_datatype_KSError__T($m_Lio_kaitai_struct_datatype_UndecidedEndiannessError$()); const this$3 = this.typeProvider$1.nowClass$1.path$1; jsx$2.puts__T__V((((("throw " + jsx$1) + "(\"") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$3, "/", "/", "")) + "\");")); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("} else if (m__is_le == 1) {"); this.outSrc$2.inc__V(); this.outSrc$2.puts__T__V("_read_le();"); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("} else {"); this.outSrc$2.inc__V(); this.outSrc$2.puts__T__V("_read_be();"); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; outFileName__T__T(topClassName) { return topClassName }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { this.outSrc$2.puts__T__V((("switch (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ") {")) }; readFooter__V() { this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { this.importListHdr$2.addSystem__T__V("vector"); const lenVar = ("l_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)); this.outSrc$2.puts__T__V((((("int " + lenVar) + " = ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ";")); if ((needRaw.level__I() >= 1)) { const rawId = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)); this.outSrc$2.puts__T__V((((rawId + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T($m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$())) + ";")); this.outSrc$2.puts__T__V((((rawId + "->reserve(") + lenVar) + ");")); if (needRaw.hasIO__Z()) { const ioId = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_IoStorageIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))); this.outSrc$2.puts__T__V((((ioId + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T($m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$())) + ";")); this.outSrc$2.puts__T__V((((ioId + "->reserve(") + lenVar) + ");")) } }; if ((needRaw.level__I() >= 2)) { const rawId$2 = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))); this.outSrc$2.puts__T__V((((rawId$2 + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T($m_Lio_kaitai_struct_datatype_DataType$CalcBytesType$())) + ";")); this.outSrc$2.puts__T__V((((rawId$2 + "->reserve(") + lenVar) + ");")) }; this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + this.newVector__Lio_kaitai_struct_datatype_DataType__T(dataType)) + ";")); this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "->reserve(") + lenVar) + ");")); this.outSrc$2.puts__T__V((("for (int i = 0; i < " + lenVar) + "; i++) {")); this.outSrc$2.inc__V() }; ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err) { const x = $m_Lio_kaitai_struct_datatype_EndOfStreamError$(); if ((x === err)) { return "std::ifstream::failure" } else { const x$3 = $m_Lio_kaitai_struct_datatype_UndecidedEndiannessError$(); if ((x$3 === err)) { return "kaitai::undecided_endianness_error" } else if ((err instanceof $c_Lio_kaitai_struct_datatype_ValidationError)) { const x4 = err; const cppType = this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(x4.dt$1, true); let cppErrName; if ((x4 instanceof $c_Lio_kaitai_struct_datatype_ValidationNotEqualError)) { cppErrName = "validation_not_equal_error" } else if ((x4 instanceof $c_Lio_kaitai_struct_datatype_ValidationLessThanError)) { cppErrName = "validation_less_than_error" } else if ((x4 instanceof $c_Lio_kaitai_struct_datatype_ValidationGreaterThanError)) { cppErrName = "validation_greater_than_error" } else if ((x4 instanceof $c_Lio_kaitai_struct_datatype_ValidationNotAnyOfError)) { cppErrName = "validation_not_any_of_error" } else { if ((!(x4 instanceof $c_Lio_kaitai_struct_datatype_ValidationExprError))) { throw new $c_s_MatchError().init___O(x4) }; cppErrName = "validation_expr_error" }; return (((("kaitai::" + cppErrName) + "<") + cppType) + ">") } else { throw new $c_s_MatchError().init___O(err) } } }; fileFooter__T__V(topClassName) { const this$1 = this.config$1.cppConfig$1.namespace$1; let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}"); this.outHdr$2.dec__V(); this.outHdr$2.puts__T__V("}"); const this$2 = these; these = this$2.tail__sci_List() }; if ((!this.config$1.cppConfig$1.usePragmaOnce$1)) { const this$3 = this.outHdr$2; this$3.sb$2.append__T__scm_StringBuilder("\n"); this.outHdr$2.puts__T__V(("#endif // " + this.defineName__T__T(topClassName))) } }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$()); const this$1 = this.outHdr$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.outHdr$2.puts__T__V("/**"); const this$2 = doc.summary$1; if ((!this$2.isEmpty__Z())) { const arg1 = this$2.get__O(); const docStr = arg1; this.outHdr$2.putsLines__T__T__T__V(" * ", docStr, "") }; const this$3 = doc.ref$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const x0$1 = arg1$1; if ((x0$1 instanceof $c_Lio_kaitai_struct_format_TextRef)) { const x2 = x0$1; const text = x2.text$1; this.outHdr$2.putsLines__T__T__T__V(" * ", ("\\sa " + text), "") } else if ((x0$1 instanceof $c_Lio_kaitai_struct_format_UrlRef)) { const x3 = x0$1; const url = x3.url$1; const text$2 = x3.text$1; this.outHdr$2.putsLines__T__T__T__V(" * ", ((("\\sa " + url) + " ") + text$2), "") } else { throw new $c_s_MatchError().init___O(x0$1) }; const this$4 = these; these = this$4.tail__sci_List() }; this.outHdr$2.puts__T__V(" */") }; classFooter__sci_List__V(name) { this.outHdr$2.dec__V(); this.outHdr$2.puts__T__V("};") }; PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$() { if ((this.PublicAccess$module$2 === null)) { this.PublicAccess$lzycompute$1__p2__V() }; return this.PublicAccess$module$2 }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { const expr = ((!((assignType === null) ? (dataType === null) : assignType.equals__O__Z(dataType))) ? (((("static_cast<" + this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(dataType, false)) + ">(") + id) + ")") : id); this.outSrc$2.puts__T__V((expr + "->_read();")) }; instanceFooter__V() { this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; instanceSetCalculated__Lio_kaitai_struct_format_InstanceIdentifier__V(instName) { this.outSrc$2.puts__T__V((this.calculatedFlagForName__Lio_kaitai_struct_format_Identifier__T(instName) + " = true;")) }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; runRead__sci_List__V(name) { const x = this.config$1.cppConfig$1.pointers$1; const x$2 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); const wrapToTryCatch = ((x !== null) && (x === x$2)); if (wrapToTryCatch) { const this$1 = this.outSrc$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.outSrc$2.puts__T__V("try {"); this.outSrc$2.inc__V() }; this.outSrc$2.puts__T__V("_read();"); if (wrapToTryCatch) { this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("} catch(...) {"); this.outSrc$2.inc__V(); this.outSrc$2.puts__T__V("_clean_up();"); this.outSrc$2.puts__T__V("throw;"); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") } }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(newMode) { const x = this.accessMode$2; if ((!(x === newMode))) { this.outHdr$2.dec__V(); const this$1 = this.outHdr$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const jsx$2 = this.outHdr$2; const x$3 = this.PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$(); let jsx$1; if ((x$3 === newMode)) { jsx$1 = "private:" } else { const x$5 = this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$(); if ((!(x$5 === newMode))) { throw new $c_s_MatchError().init___O(newMode) }; jsx$1 = "public:" }; jsx$2.puts__T__V(jsx$1); this.outHdr$2.inc__V(); this.accessMode$2 = newMode } }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((("kaitai::kstream::bytes_strip_right(" + expr0) + ", ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((("kaitai::kstream::bytes_terminate(" + expr1) + ", ") + term) + ", ") + include) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; switchIfEnd__V() { this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; switchIfCaseEnd__V() { this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(attrType, absolute) { return $m_Lio_kaitai_struct_languages_CppCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_CppRuntimeConfig__Lio_kaitai_struct_datatype_DataType__Z__T(this.config$1.cppConfig$1, attrType, absolute) }; condIfSetNull__Lio_kaitai_struct_format_Identifier__V(instName) { this.outSrc$2.puts__T__V((this.nullFlagForName__Lio_kaitai_struct_format_Identifier__T(instName) + " = true;")) }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; switchElseStart__V() { this.outSrc$2.puts__T__V("default: {"); this.outSrc$2.inc__V() }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { const jsx$1 = $m_Lio_kaitai_struct_languages_CppCompiler$(); $m_sci_List$(); const array = [enumName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const enumClass = jsx$1.types2class__sci_List__T(result); const this$5 = this.outHdr$2; this$5.sb$2.append__T__scm_StringBuilder("\n"); this.outHdr$2.puts__T__V((("enum " + enumClass) + " {")); this.outHdr$2.inc__V(); if ((enumColl.size__I() > 1)) { enumColl.dropRight__I__O(1).foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, enumName$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); $this.outHdr$2.puts__T__V(((($this.value2Const__T__T__T(enumName$1, label.name$1) + " = ") + new $c_sjsr_RuntimeLong().init___I__I(lo, hi)) + ",")) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, enumName))) }; const x1 = enumColl.last__O(); if ((x1 !== null)) { const t$1 = x1.$$und1$mcJ$sp__J(); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; const label$1 = x1.$$und2__O(); this.outHdr$2.puts__T__V(((this.value2Const__T__T__T(enumName, label$1.name$1) + " = ") + new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$1))) } else { throw new $c_s_MatchError().init___O(x1) }; this.outHdr$2.dec__V(); this.outHdr$2.puts__T__V("};") }; switchIfCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.outSrc$2.puts__T__V((("if (on == " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ") {")); this.outSrc$2.inc__V() }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.outSrc$2.puts__T__V((("if (" + this.calculatedFlagForName__Lio_kaitai_struct_format_Identifier__T(instName)) + ")")); this.outSrc$2.inc__V(); this.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.outSrc$2.dec__V() }; switchRequiresIfs__Lio_kaitai_struct_datatype_DataType__Z(onType) { return (!((onType instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType) || (onType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType))) }; indent__T() { return " " }; switchIfCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.outSrc$2.puts__T__V((("else if (on == " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ") {")); this.outSrc$2.inc__V() }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; const x1$2 = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(xorValue); let procName; if ((x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { procName = "process_xor_one" } else { if ((!(x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { throw new $c_s_MatchError().init___O(x1$2) }; procName = "process_xor_many" }; expr$2 = (((((("kaitai::kstream::" + procName) + "(") + srcExpr) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { expr$2 = (("kaitai::kstream::process_zlib(" + srcExpr) + ")") } else if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((("kaitai::kstream::process_rotate_left(" + srcExpr) + ", ") + expr) + ")") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; const x4 = proc; const name = x4.name$1; const args = x4.args$1; const f = (function($this) { return (function(x$3$2) { const x$3 = x$3$2; return $m_Lio_kaitai_struct_languages_CppCompiler$().type2class__T__T(x$3) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((name === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = name.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = name.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(name, bf); let these = name; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const procClass = jsx$1.mkString__T__T("::"); const procName$2 = ("_process_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(varSrc)); this.importListSrc$2.addLocal__T__V(this.outFileNameHeader__T__T($f_sc_LinearSeqOptimized__last__O(name))); const jsx$2 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(e$2) { const e = e$2; return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this$2$1, e) }) })(this)); const this$4 = $m_sc_Seq$(); const argList = args.map__F1__scg_CanBuildFrom__O(jsx$2, this$4.ReusableCBFInstance$2).mkString__T__T(", "); const this$6 = new $c_sci_StringOps().init___T(argList); let argListInParens; if ($f_sc_TraversableOnce__nonEmpty__Z(this$6)) { argListInParens = (("(" + argList) + ")") } else { argListInParens = "" }; this.outSrc$2.puts__T__V(((((procClass + " ") + procName$2) + argListInParens) + ";")); expr$2 = (((procName$2 + ".decode(") + srcExpr) + ")") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; calculatedFlagForName__Lio_kaitai_struct_format_Identifier__T(ksName) { return ("f_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(ksName)) }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; classDestructorFooter__V() { this.classConstructorFooter__V() }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.outSrc$2.puts__T__V("i++;"); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V((("} while (!(" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr)) + "));")); this.outSrc$2.dec__V(); this.outSrc$2.puts__T__V("}") }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(this, instName, dataType, value) }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep) { this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id); const ioId = new $c_Lio_kaitai_struct_format_IoStorageIdentifier().init___Lio_kaitai_struct_format_Identifier(id); const args = ((rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil) ? this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1) : this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep)); const newStreamRaw = (("new kaitai::kstream(" + args) + ")"); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); let ioName; if ((x === rep)) { const x$3 = this.config$1.cppConfig$1.pointers$1; const x$4 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); let newStream; if ((!((x$3 !== null) && (x$3 === x$4)))) { newStream = (((this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T($m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(), false) + "(") + newStreamRaw) + ")") } else { newStream = newStreamRaw }; this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(ioId) + " = ") + newStream) + ";")); const x1$3 = this.config$1.cppConfig$1.pointers$1; const x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x$5 === x1$3)) { ioName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(ioId) } else { const x$7 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((!(x$7 === x1$3))) { throw new $c_s_MatchError().init___O(x1$3) }; ioName = (this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(ioId) + ".get()") } } else { const localIO = ("io_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)); this.outSrc$2.puts__T__V((((("kaitai::kstream* " + localIO) + " = ") + newStreamRaw) + ";")); const x$9 = this.config$1.cppConfig$1.pointers$1; const x$10 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if (((x$9 !== null) && (x$9 === x$10))) { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(ioId) + "->emplace_back(") + localIO) + ");")) } else { this.outSrc$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(ioId) + "->push_back(") + localIO) + ");")) }; ioName = localIO }; return ioName }; declareNullFlag__Lio_kaitai_struct_format_Identifier__Z__V(attrName, isNullable) { if (isNullable) { this.outHdr$2.puts__T__V((("bool " + this.nullFlagForName__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")); this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$()); this.outHdr$2.puts__T__V((((((("bool _is_null_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + "() { ") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + "(); return ") + this.nullFlagForName__Lio_kaitai_struct_format_Identifier__T(attrName)) + "; };")); this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$()) } }; nonOwningPointer__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T(attrName, attrType) { const x1 = this.config$1.cppConfig$1.pointers$1; const x = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((x === x1)) { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName) } else { const x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); if ((x$3 === x1)) { if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x2 = attrType; return this.nonOwningPointer__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T(attrName, $m_Lio_kaitai_struct_languages_CppCompiler$().combineSwitchType__Lio_kaitai_struct_datatype_DataType$SwitchType__Lio_kaitai_struct_datatype_DataType(x2)) } else if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$ComplexDataType)) { const x3 = attrType; return (x3.isOwning__Z() ? (this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName) + ".get()") : this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName)) } else { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName) } } else { throw new $c_s_MatchError().init___O(x1) } } }; fileHeader__T__V(topClassName) { this.outSrcHeader$2.puts__T__V("// This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); const this$1 = this.outSrcHeader$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.importListSrc$2.addLocal__T__V(this.outFileNameHeader__T__T(topClassName)); if (this.config$1.cppConfig$1.usePragmaOnce$1) { this.outHdrHeader$2.puts__T__V("#pragma once") } else { this.outHdrHeader$2.puts__T__V(("#ifndef " + this.defineName__T__T(topClassName))); this.outHdrHeader$2.puts__T__V(("#define " + this.defineName__T__T(topClassName))) }; const this$2 = this.outHdrHeader$2; this$2.sb$2.append__T__scm_StringBuilder("\n"); this.outHdrHeader$2.puts__T__V("// This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); const this$3 = this.outHdrHeader$2; this$3.sb$2.append__T__scm_StringBuilder("\n"); const this$4 = this.importListHdr$2; this$4.addLocal__T__V("kaitai/kaitaistruct.h"); this.importListHdr$2.addSystem__T__V("stdint.h"); const x1 = this.config$1.cppConfig$1.pointers$1; const x = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$(); let jsx$1; if ((x === x1)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$(); jsx$1 = (x$3 === x1) }; if (jsx$1) { this.importListHdr$2.addSystem__T__V("memory") } else { const x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$(); if ((!(x$5 === x1))) { throw new $c_s_MatchError().init___O(x1) } }; const minVer = $m_Lio_kaitai_struct_format_KSVersion$().minimalRuntime$1.toInt__I(); const this$5 = this.outHdr$2; this$5.sb$2.append__T__scm_StringBuilder("\n"); this.outHdr$2.puts__T__V((("#if KAITAI_STRUCT_VERSION < " + minVer) + "L")); this.outHdr$2.puts__T__V((("#error \"Incompatible Kaitai Struct C++/STL API: version " + $m_Lio_kaitai_struct_format_KSVersion$().minimalRuntime$1) + " or later is required\"")); this.outHdr$2.puts__T__V("#endif"); const this$6 = this.config$1.cppConfig$1.namespace$1; let these = this$6; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); const namespace = arg1; this.outSrc$2.puts__T__V((("namespace " + namespace) + " {")); this.outSrc$2.inc__V(); this.outHdr$2.puts__T__V((("namespace " + namespace) + " {")); this.outHdr$2.inc__V(); const this$7 = these; these = this$7.tail__sci_List() } }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$()); this.outHdr$2.puts__T__V((((((this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__Z__T(attrType.asNonOwning__Lio_kaitai_struct_datatype_DataType(), false) + " ") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + "() const { return ") + this.nonOwningPointer__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T(attrName, attrType)) + "; }")) }; nullFlagForName__Lio_kaitai_struct_format_Identifier__T(ksName) { return ("n_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(ksName)) }; instanceClear__Lio_kaitai_struct_format_InstanceIdentifier__V(instName) { this.outSrc$2.puts__T__V((this.calculatedFlagForName__Lio_kaitai_struct_format_Identifier__T(instName) + " = false;")) }; } const $d_Lio_kaitai_struct_languages_CppCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_CppCompiler: 0 }, false, "io.kaitai.struct.languages.CppCompiler", { Lio_kaitai_struct_languages_CppCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_AllocateAndStoreIO: 1, Lio_kaitai_struct_languages_components_FixedContentsUsingArrayByteLiteral: 1, Lio_kaitai_struct_languages_components_UniversalDoc: 1, Lio_kaitai_struct_languages_components_SwitchIfOps: 1, Lio_kaitai_struct_languages_components_EveryReadIsExpression: 1, Lio_kaitai_struct_languages_components_CommonReads: 1 }); $c_Lio_kaitai_struct_languages_CppCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_CppCompiler; const $f_sc_IndexedSeqOptimized__head__O = (function($thiz) { return ($f_sc_IndexedSeqOptimized__isEmpty__Z($thiz) ? new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I($thiz, 0, $thiz.length__I()).next__O() : $thiz.apply__I__O(0)) }); const $f_sc_IndexedSeqOptimized__lengthCompare__I__I = (function($thiz, len) { return (($thiz.length__I() - len) | 0) }); const $f_sc_IndexedSeqOptimized__sameElements__sc_GenIterable__Z = (function($thiz, that) { if ($is_sc_IndexedSeq(that)) { const x2 = that; const len = $thiz.length__I(); if ((len === x2.length__I())) { let i = 0; while (((i < len) && $m_sr_BoxesRunTime$().equals__O__O__Z($thiz.apply__I__O(i), x2.apply__I__O(i)))) { i = ((1 + i) | 0) }; return (i === len) } else { return false } } else { return $f_sc_IterableLike__sameElements__sc_GenIterable__Z($thiz, that) } }); const $f_sc_IndexedSeqOptimized__exists__F1__Z = (function($thiz, p) { return ($f_sc_IndexedSeqOptimized__prefixLengthImpl__psc_IndexedSeqOptimized__F1__Z__I($thiz, p, false) !== $thiz.length__I()) }); const $f_sc_IndexedSeqOptimized__toList__sci_List = (function($thiz) { let i = (((-1) + $thiz.length__I()) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$1 = result; const x = $thiz.apply__I__O(i); result = new $c_sci_$colon$colon().init___O__sci_List(x, this$1); i = (((-1) + i) | 0) }; return result }); const $f_sc_IndexedSeqOptimized__isEmpty__Z = (function($thiz) { return ($thiz.length__I() === 0) }); const $f_sc_IndexedSeqOptimized__prefixLengthImpl__psc_IndexedSeqOptimized__F1__Z__I = (function($thiz, p, expectTrue) { let i = 0; while (((i < $thiz.length__I()) && ((!(!p.apply__O__O($thiz.apply__I__O(i)))) === expectTrue))) { i = ((1 + i) | 0) }; return i }); const $f_sc_IndexedSeqOptimized__foreach__F1__V = (function($thiz, f) { let i = 0; const len = $thiz.length__I(); while ((i < len)) { f.apply__O__O($thiz.apply__I__O(i)); i = ((1 + i) | 0) } }); const $f_sc_IndexedSeqOptimized__slice__I__I__O = (function($thiz, from, until) { const lo = ((from > 0) ? from : 0); const x = ((until > 0) ? until : 0); const y = $thiz.length__I(); const hi = ((x < y) ? x : y); const x$1 = ((hi - lo) | 0); const elems = ((x$1 > 0) ? x$1 : 0); const b = $thiz.newBuilder__scm_Builder(); b.sizeHint__I__V(elems); let i = lo; while ((i < hi)) { b.$$plus$eq__O__scm_Builder($thiz.apply__I__O(i)); i = ((1 + i) | 0) }; return b.result__O() }); const $f_sc_IndexedSeqOptimized__reverse__O = (function($thiz) { const b = $thiz.newBuilder__scm_Builder(); b.sizeHint__I__V($thiz.length__I()); let i = $thiz.length__I(); while ((i > 0)) { i = (((-1) + i) | 0); b.$$plus$eq__O__scm_Builder($thiz.apply__I__O(i)) }; return b.result__O() }); const $f_sc_IndexedSeqOptimized__last__O = (function($thiz) { return (($thiz.length__I() > 0) ? $thiz.apply__I__O((((-1) + $thiz.length__I()) | 0)) : $f_sc_TraversableLike__last__O($thiz)) }); const $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O = (function($thiz, start, end, z, op) { _foldl: while (true) { if ((start === end)) { return z } else { const temp$start = ((1 + start) | 0); const temp$z = op.apply__O__O__O(z, $thiz.apply__I__O(start)); start = temp$start; z = temp$z; continue _foldl } } }); const $f_sc_IndexedSeqOptimized__copyToArray__O__I__I__V = (function($thiz, xs, start, len) { let i = 0; let j = start; const x = $thiz.length__I(); const x$1 = ((x < len) ? x : len); const that = (($m_sr_ScalaRunTime$().array$undlength__O__I(xs) - start) | 0); const end = ((x$1 < that) ? x$1 : that); while ((i < end)) { $m_sr_ScalaRunTime$().array$undupdate__O__I__O__V(xs, j, $thiz.apply__I__O(i)); i = ((1 + i) | 0); j = ((1 + j) | 0) } }); const $f_sc_IndexedSeqOptimized__takeRight__I__O = (function($thiz, n) { return $thiz.slice__I__I__O((($thiz.length__I() - ((n > 0) ? n : 0)) | 0), $thiz.length__I()) }); const $f_sc_IndexedSeqOptimized__dropRight__I__O = (function($thiz, n) { return $thiz.slice__I__I__O(0, (($thiz.length__I() - ((n > 0) ? n : 0)) | 0)) }); const $f_sc_IndexedSeqOptimized__reduceLeft__F2__O = (function($thiz, op) { if (($thiz.length__I() > 0)) { let start = 1; const end = $thiz.length__I(); let z = $thiz.apply__I__O(0); return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O($thiz, start, end, z, op) } else { return $f_sc_TraversableOnce__reduceLeft__F2__O($thiz, op) } }); const $f_sc_LinearSeqOptimized__apply__I__O = (function($thiz, n) { const rest = $thiz.drop__I__sc_LinearSeqOptimized(n); if (((n < 0) || rest.isEmpty__Z())) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + n)) }; return rest.head__O() }); const $f_sc_LinearSeqOptimized__dropRight__I__sc_LinearSeqOptimized = (function($thiz, n) { const b = $thiz.companion__scg_GenericCompanion().newBuilder__scm_Builder(); let these = $thiz; let lead = $thiz.drop__I__sc_LinearSeqOptimized(n); while ((!lead.isEmpty__Z())) { b.$$plus$eq__O__scm_Builder(these.head__O()); these = these.tail__O(); lead = lead.tail__O() }; return b.result__O() }); const $f_sc_LinearSeqOptimized__lengthCompare__I__I = (function($thiz, len) { if ((len < 0)) { return 1 } else { let i = 0; let xs = $thiz; return $f_sc_LinearSeqOptimized__loop$1__psc_LinearSeqOptimized__I__sc_LinearSeqOptimized__I__I($thiz, i, xs, len) } }); const $f_sc_LinearSeqOptimized__exists__F1__Z = (function($thiz, p) { let these = $thiz; while ((!these.isEmpty__Z())) { if ((!(!p.apply__O__O(these.head__O())))) { return true }; these = these.tail__O() }; return false }); const $f_sc_LinearSeqOptimized__sameElements__sc_GenIterable__Z = (function($thiz, that) { if ($is_sc_LinearSeq(that)) { const x2 = that; if (($thiz === x2)) { return true } else { let these = $thiz; let those = x2; while ((((!these.isEmpty__Z()) && (!those.isEmpty__Z())) && $m_sr_BoxesRunTime$().equals__O__O__Z(these.head__O(), those.head__O()))) { these = these.tail__O(); those = those.tail__O() }; return (these.isEmpty__Z() && those.isEmpty__Z()) } } else { return $f_sc_IterableLike__sameElements__sc_GenIterable__Z($thiz, that) } }); const $f_sc_LinearSeqOptimized__foldLeft__O__F2__O = (function($thiz, z, op) { let acc = z; let these = $thiz; while ((!these.isEmpty__Z())) { acc = op.apply__O__O__O(acc, these.head__O()); these = these.tail__O() }; return acc }); const $f_sc_LinearSeqOptimized__length__I = (function($thiz) { let these = $thiz; let len = 0; while ((!these.isEmpty__Z())) { len = ((1 + len) | 0); these = these.tail__O() }; return len }); const $f_sc_LinearSeqOptimized__last__O = (function($thiz) { if ($thiz.isEmpty__Z()) { throw new $c_ju_NoSuchElementException().init___() }; let these = $thiz; let nx = these.tail__O(); while ((!nx.isEmpty__Z())) { these = nx; nx = nx.tail__O() }; return these.head__O() }); const $f_sc_LinearSeqOptimized__contains__O__Z = (function($thiz, elem) { let these = $thiz; while ((!these.isEmpty__Z())) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(these.head__O(), elem)) { return true }; these = these.tail__O() }; return false }); const $f_sc_LinearSeqOptimized__isDefinedAt__I__Z = (function($thiz, x) { return ((x >= 0) && ($f_sc_LinearSeqOptimized__lengthCompare__I__I($thiz, x) > 0)) }); const $f_sc_LinearSeqOptimized__reduceLeft__F2__O = (function($thiz, op) { if ($thiz.isEmpty__Z()) { throw new $c_jl_UnsupportedOperationException().init___T("empty.reduceLeft") } else { return $thiz.tail__O().foldLeft__O__F2__O($thiz.head__O(), op) } }); const $f_sc_LinearSeqOptimized__loop$1__psc_LinearSeqOptimized__I__sc_LinearSeqOptimized__I__I = (function($thiz, i, xs, len$1) { _loop: while (true) { if ((i === len$1)) { return (xs.isEmpty__Z() ? 0 : 1) } else if (xs.isEmpty__Z()) { return (-1) } else { const temp$i = ((1 + i) | 0); const temp$xs = xs.tail__O(); i = temp$i; xs = temp$xs; continue _loop } } }); const $is_sc_LinearSeqOptimized = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_LinearSeqOptimized))) }); const $isArrayOf_sc_LinearSeqOptimized = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_LinearSeqOptimized))) }); const $f_sc_SetLike__isEmpty__Z = (function($thiz) { return ($thiz.size__I() === 0) }); const $f_sc_SetLike__toBuffer__scm_Buffer = (function($thiz) { const result = new $c_scm_ArrayBuffer().init___I($thiz.size__I()); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, result$1) { return (function(x$2$2) { return result$1.$$plus$eq__O__scm_ArrayBuffer(x$2$2) }) })($thiz, result))); return result }); const $f_sc_SetLike__toSeq__sc_Seq = (function($thiz) { if ($thiz.isEmpty__Z()) { const this$1 = $m_s_package$().Vector$1; return this$1.NIL$6 } else { $m_s_package$(); const vb = new $c_sci_VectorBuilder().init___(); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, vb$1) { return (function(x$1$2) { return vb$1.$$plus$eq__O__scm_Builder(x$1$2) }) })($thiz, vb))); return vb.result__sci_Vector() } }); const $f_sc_SetLike__$$plus$plus__sc_GenTraversableOnce__sc_Set = (function($thiz, elems) { if (($thiz === ($m_sci_Set$(), $m_sci_Set$EmptySet$()))) { if ((elems instanceof $c_sci_HashSet)) { const x2 = elems; if ((x2.size__I() > 4)) { return x2 } }; if ((elems instanceof $c_sci_Set$Set1)) { const x3 = elems; return x3 }; if ((elems instanceof $c_sci_Set$Set2)) { const x4 = elems; return x4 }; if ((elems instanceof $c_sci_Set$Set3)) { const x5 = elems; return x5 }; if ((elems instanceof $c_sci_Set$Set4)) { const x6 = elems; return x6 }; if (elems.isEmpty__Z()) { return $thiz } else { const x$3 = $thiz; return elems.seq__sc_TraversableOnce().$$div$colon__O__F2__O(x$3, new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(x$4$2, x$5$2) { const x$4 = x$4$2; return x$4.$$plus__O__sc_Set(x$5$2) }) })($thiz))) } } else if (($thiz instanceof $c_sci_HashSet)) { const x2$2 = $thiz; if ($is_sc_GenSet(elems)) { const x2$3 = elems; return x2$2.union__sc_GenSet__sci_HashSet(x2$3) } else { const x$6 = $thiz; return elems.seq__sc_TraversableOnce().$$div$colon__O__F2__O(x$6, new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function(this$2) { return (function(x$7$2, x$8$2) { const x$7 = x$7$2; return x$7.$$plus__O__sc_Set(x$8$2) }) })($thiz))) } } else { const x$9 = $thiz; return elems.seq__sc_TraversableOnce().$$div$colon__O__F2__O(x$9, new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function(this$3) { return (function(x$10$2, x$11$2) { const x$10 = x$10$2; return x$10.$$plus__O__sc_Set(x$11$2) }) })($thiz))) } }); const $is_sc_SetLike = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_SetLike))) }); const $isArrayOf_sc_SetLike = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_SetLike))) }); const $is_sc_Iterable = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_Iterable))) }); const $isArrayOf_sc_Iterable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_Iterable))) }); const $f_sc_MapLike__apply__O__O = (function($thiz, key) { const x1 = $thiz.get__O__s_Option(key); const x = $m_s_None$(); if ((x === x1)) { return $f_sc_MapLike__$default__O__O($thiz, key) } else if ((x1 instanceof $c_s_Some)) { const x2 = x1; const value = x2.value$2; return value } else { throw new $c_s_MatchError().init___O(x1) } }); const $f_sc_MapLike__isEmpty__Z = (function($thiz) { return ($thiz.size__I() === 0) }); const $f_sc_MapLike__getOrElse__O__F0__O = (function($thiz, key, $default) { const x1 = $thiz.get__O__s_Option(key); if ((x1 instanceof $c_s_Some)) { const x2 = x1; const v = x2.value$2; return v } else { const x = $m_s_None$(); if ((x === x1)) { return $default.apply__O() } else { throw new $c_s_MatchError().init___O(x1) } } }); const $f_sc_MapLike__toBuffer__scm_Buffer = (function($thiz) { const result = new $c_scm_ArrayBuffer().init___I($thiz.size__I()); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, result$1) { return (function(x$7$2) { const x$7 = x$7$2; return result$1.$$plus$eq__O__scm_ArrayBuffer(x$7) }) })($thiz, result))); return result }); const $f_sc_MapLike__$default__O__O = (function($thiz, key) { throw new $c_ju_NoSuchElementException().init___T(("key not found: " + key)) }); const $f_sc_MapLike__contains__O__Z = (function($thiz, key) { return $thiz.get__O__s_Option(key).isDefined__Z() }); const $f_sc_MapLike__addString__scm_StringBuilder__T__T__T__scm_StringBuilder = (function($thiz, b, start, sep, end) { const this$2 = $thiz.iterator__sc_Iterator(); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const k = x0$1.$$und1__O(); const v = x0$1.$$und2__O(); return (("" + $m_s_Predef$any2stringadd$().$$plus$extension__O__T__T(k, " -> ")) + v) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })($thiz)); const this$3 = new $c_sc_Iterator$$anon$10().init___sc_Iterator__F1(this$2, f); return $f_sc_TraversableOnce__addString__scm_StringBuilder__T__T__T__scm_StringBuilder(this$3, b, start, sep, end) }); const $f_sc_MapLike__toSeq__sc_Seq = (function($thiz) { if ($thiz.isEmpty__Z()) { const this$1 = $m_s_package$().Vector$1; return this$1.NIL$6 } else { $m_s_package$(); const vb = new $c_sci_VectorBuilder().init___(); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, vb$1) { return (function(x$6$2) { const x$6 = x$6$2; return vb$1.$$plus$eq__O__scm_Builder(x$6) }) })($thiz, vb))); return vb.result__sci_Vector() } }); const $f_sc_MapLike__filterNot__F1__sc_Map = (function($thiz, p) { const elem = $thiz; const res = new $c_sr_ObjectRef().init___O(elem); $thiz.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, p$1, res$1) { return (function(kv$2) { const kv = kv$2; if ((!(!p$1.apply__O__O(kv)))) { res$1.elem$1 = res$1.elem$1.$$minus__O__sc_Map(kv.$$und1__O()) } }) })($thiz, p, res))); return res.elem$1 }); const $f_sc_MapLike__applyOrElse__O__F1__O = (function($thiz, x, $default) { return $thiz.getOrElse__O__F0__O(x, new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, $default$1, x$1) { return (function() { return $default$1.apply__O__O(x$1) }) })($thiz, $default, x))) }); class $c_Lio_kaitai_struct_languages_GoCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.translator$2 = null; this.outHeader$2 = null; this.out$2 = null; this.importList$2 = null }; switchEnd__V() { this.out$2.puts__T__V("}") }; instanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.out$2.puts__T__V((this.calculatedFlagForName__Lio_kaitai_struct_format_Identifier__T(attrName) + " bool")); this.out$2.puts__T__V(((this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName) + " ") + $m_Lio_kaitai_struct_languages_GoCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attrType))) }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = make([][]byte, 0);")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = make([][]byte, 0);")) }; this.out$2.puts__T__V("for i := 1;; i++ {"); this.out$2.inc__V() }; switchCaseStartCompareFn__T__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__V(compareFn, switchOn, condition) { this.out$2.puts__T__V((((((("case " + compareFn) + "(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, switchOn)) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + "):")); this.out$2.inc__V() }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V((("switch " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())) + " {")); this.out$2.puts__T__V("case 0:"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("case 1:"); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("default:"); this.out$2.inc__V(); this.out$2.puts__T__V((("err = " + $m_Lio_kaitai_struct_languages_GoCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T($m_Lio_kaitai_struct_datatype_UndecidedEndiannessError$())) + "{}")); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.out$2.puts__T__V((((((("func (this *" + $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(className)) + ") ") + this.publicMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + "() (v ") + $m_Lio_kaitai_struct_languages_GoCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(dataType)) + ", err error) {")); this.out$2.inc__V(); this.translator$2.returnRes$2 = new $c_s_Some().init___O(((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$NumericType) ? "0" : ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType) ? "false" : ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) ? "\"\"" : "nil")))) }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = make([][]byte, 0);")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = make([][]byte, 0);")) }; this.out$2.puts__T__V("for i := 1;; i++ {"); this.out$2.inc__V(); const eofVar = this.translator$2.allocateLocalVar__I(); this.out$2.puts__T__V((this.translator$2.localVarName__I__T(eofVar) + ", err := this._io.EOF()")); this.translator$2.outAddErrCheck__V(); this.out$2.puts__T__V((("if " + this.translator$2.localVarName__I__T(eofVar)) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V("break"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { return ("this." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "io"); this.out$2.puts__T__V((((("_, err = " + io) + ".Seek(int64(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + "), io.SeekStart)")); this.translator$2.outAddErrCheck__V() }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ", nil")) }; attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, attrType, checkExpr, err, errArgs) { const f = (function($this) { return (function(v$2) { const v = v$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((errArgs === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = errArgs.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = errArgs.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(errArgs, bf); let these = errArgs; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const errArgsStr = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V((("if !(" + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(checkExpr)) + ") {")); this.out$2.inc__V(); const errInst = (((("kaitai.New" + err.name__T()) + "(") + errArgsStr) + ")"); const x1 = this.translator$2.returnRes$2; const x = $m_s_None$(); let noValueAndErr; if ((x === x1)) { noValueAndErr = errInst } else { if ((!(x1 instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(x1) }; const x2 = x1; const r = x2.value$2; noValueAndErr = ((r + ", ") + errInst) }; this.out$2.puts__T__V(("return " + noValueAndErr)); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condRepeatEosFooter__V() { this.universalFooter__V() }; pushPos__T__V(io) { this.out$2.puts__T__V((("_pos, err := " + io) + ".Pos()")); this.translator$2.outAddErrCheck__V() }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { const f = (function($this) { return (function(p$2) { const p = p$2; const id = p.id$1; return (($m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(id.humanReadable__T()) + " ") + $m_Lio_kaitai_struct_languages_GoCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(p.dataType$1)) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((params === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = params.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = params.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(params, bf); let these = params; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const paramsArg = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V((((((("func New" + $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(name)) + "(") + paramsArg) + ") *") + $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(name)) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V((("return &" + $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(name)) + "{")); this.out$2.inc__V(); let these$1 = params; while ((!these$1.isEmpty__Z())) { const arg1$3 = these$1.head__O(); const p$3 = arg1$3; const jsx$3 = this.out$2; const jsx$2 = this.idToStr__Lio_kaitai_struct_format_Identifier__T(p$3.id$1); const id$1 = p$3.id$1; jsx$3.puts__T__V((((jsx$2 + ": ") + $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(id$1.humanReadable__T())) + ",")); const this$4 = these$1; these$1 = this$4.tail__sci_List() }; this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.universalFooter__V() }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V(("thisIo := " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx))); return "thisIo" }; switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_GoSwitchOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = this.importList$2; const imp = this$1.list$1.toList__sci_List(); const x1 = $f_sc_LinearSeqOptimized__length__I(imp); switch (x1) { case 0: { return ""; break } case 1: { return (("import \"" + imp.head__O()) + "\"\n"); break } default: { const f = (function($this) { return (function(x$2) { const x = x$2; return (("\t\"" + x) + "\"") }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((imp === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = imp.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = imp.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(imp, bf); let these = imp; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$1 = b.result__O() }; return (("import (\n" + jsx$1.mkString__T__T__T__T("", "\n", "\n")) + ")\n") } } }; condRepeatExprFooter__V() { this.universalFooter__V() }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_GoTranslator().init___Lio_kaitai_struct_StringLanguageOutputWriter__Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(this.out$2, this.typeProvider$1, this.importList$2); return this }; attrParse2$default$7__s_Option() { return $m_s_None$() }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$2) } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$3 = x5.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$3) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x6 = id; const innerId = x6.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId)) } else if ((id instanceof $c_Lio_kaitai_struct_format_IoStorageIdentifier)) { const x7 = id; const innerId$2 = x7.innerId$2; return ("_io_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId$2)) } else { throw new $c_s_MatchError().init___O(id) } }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__V(id, r) { const name = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id); const expr = this.translator$2.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(r); this.out$2.puts__T__V(((name + "[i] = ") + expr)) }; alignToByte__T__V(io) { this.out$2.puts__T__V((io + ".AlignToByte()")) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; switchCaseEnd__V() { this.out$2.dec__V() }; handleCompositeTypeCast__p2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_translators_TranslatorResult(id, r) { if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2 = id; const name = x2.name$2; const this$1 = this.typeProvider$1; return this.castToType__p2__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_translators_TranslatorResult(r, this.combinedType__p2__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType(this$1.determineType__Lio_kaitai_struct_format_ClassSpec__T__Lio_kaitai_struct_datatype_DataType(this$1.nowClass$1, name))) } else { return r } }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.out$2.puts__T__V(((this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName) + " ") + $m_Lio_kaitai_struct_languages_GoCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attrType))); this.translator$2.returnRes$2 = $m_s_None$() }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V((("if (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + ") {")); this.out$2.inc__V() }; readHeader__s_Option__Z__V(endian, isEmpty) { const x = $m_s_None$(); if ((x === endian)) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const jsx$3 = this.out$2; const jsx$2 = $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(this.typeProvider$1.nowClass$1.name$1); const jsx$1 = $m_Lio_kaitai_struct_languages_GoCompiler$(); const this$2 = this.typeProvider$1.nowClass$1; jsx$3.puts__T__V((((((("func (this *" + jsx$2) + ") Read(io *kaitai.Stream, ") + ("parent " + jsx$1.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(this$2.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType()))) + ", ") + ("root *" + $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(this.typeProvider$1.topClass$1.name$1))) + ") (err error) {")); this.out$2.inc__V(); this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) + " = io")); this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_ParentIdentifier$()) + " = parent")); this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$()) + " = root")); let rc9 = false; let x2 = null; const x1$2 = this.typeProvider$1.nowClass$1.meta$1.endian$1; matchEnd10: { if ((x1$2 instanceof $c_s_Some)) { rc9 = true; x2 = x1$2; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$()) + " = -1")); break matchEnd10 } }; if (rc9) { const p5 = x2.value$2; const x$3 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$3 === p5)) { this.out$2.puts__T__V((((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$()) + " = ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_ParentIdentifier$())) + ".") + "") + this.idToStr__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$()))); break matchEnd10 } } }; const this$3 = this.out$2; this$3.sb$2.append__T__scm_StringBuilder("\n") } else if ((endian instanceof $c_s_Some)) { const x2$2 = endian; const e = x2$2.value$2; const this$4 = this.out$2; this$4.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((((("func (this *" + $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(this.typeProvider$1.nowClass$1.name$1)) + ") ") + ("_read_" + e.toSuffix__T())) + "() (err error) {")); this.out$2.inc__V() } else { throw new $c_s_MatchError().init___O(endian) } }; classHeader__sci_List__V(name) { this.out$2.puts__T__V((("type " + $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(name)) + " struct {")); this.out$2.inc__V() }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; innerClasses__Z() { return false }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("case " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ":")); this.out$2.inc__V() }; classConstructorFooter__V() { /**/ }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignType) { $f_Lio_kaitai_struct_languages_components_GoReads__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignType) }; popPos__T__V(io) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "io"); this.out$2.puts__T__V((("_, err = " + io) + ".Seek(_pos, io.SeekStart)")); this.translator$2.outAddErrCheck__V() }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr) ? (memberName + "[i]") : (((memberName + "[len(") + memberName) + ") - 1]")) } }; runReadCalc__V() { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("switch " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())) + " {")); this.out$2.puts__T__V("case 0:"); this.out$2.inc__V(); this.out$2.puts__T__V("err = this._read_be()"); this.out$2.dec__V(); this.out$2.puts__T__V("case 1:"); this.out$2.inc__V(); this.out$2.puts__T__V("err = this._read_le()"); this.out$2.dec__V(); this.out$2.puts__T__V("default:"); this.out$2.inc__V(); this.out$2.puts__T__V((("err = " + $m_Lio_kaitai_struct_languages_GoCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T($m_Lio_kaitai_struct_datatype_UndecidedEndiannessError$())) + "{}")); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; outFileName__T__T(topClassName) { return (((this.config$1.goPackage$1 + "/") + topClassName) + ".go") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__V(id, r) { const expr = this.translator$2.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(this.handleCompositeTypeCast__p2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_translators_TranslatorResult(id, r)); this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr)) }; readFooter__V() { this.out$2.puts__T__V("return err"); this.universalFooter__V() }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = make([][]byte, ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = make([][]byte, ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")")) }; this.out$2.puts__T__V((((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = make(") + $m_Lio_kaitai_struct_languages_GoCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(dataType))) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")")); this.out$2.puts__T__V((("for i := range " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id)) + " {")); this.out$2.inc__V() }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { this.out$2.puts__T__V((("switch (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ") {")) }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("/**"); const this$2 = doc.summary$1; if ((!this$2.isEmpty__Z())) { const arg1 = this$2.get__O(); const summary = arg1; this.out$2.putsLines__T__T__T__V(" * ", summary, "") }; const this$3 = doc.ref$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const x0$1 = arg1$1; if ((x0$1 instanceof $c_Lio_kaitai_struct_format_TextRef)) { const x2 = x0$1; const text = x2.text$1; this.out$2.putsLines__T__T__T__V(" * ", (("@see \"" + text) + "\""), "") } else if ((x0$1 instanceof $c_Lio_kaitai_struct_format_UrlRef)) { const x3 = x0$1; this.out$2.putsLines__T__T__T__V(" * ", ("@see " + x3.toAhref__T()), "") } else { throw new $c_s_MatchError().init___O(x0$1) }; const this$4 = these; these = this$4.tail__sci_List() }; this.out$2.puts__T__V(" */") }; classFooter__sci_List__V(name) { const x1 = this.typeProvider$1.nowClass$1.meta$1.endian$1; let jsx$1; matchEnd12: { if ((x1 instanceof $c_s_Some)) { const x2 = x1; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { jsx$1 = true; break matchEnd12 } }; if ((x1 instanceof $c_s_Some)) { const x4 = x1; const p5 = x4.value$2; const x = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x === p5)) { jsx$1 = true; break matchEnd12 } }; jsx$1 = false }; if (jsx$1) { this.out$2.puts__T__V((this.idToStr__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$()) + " int")) }; this.universalFooter__V() }; instanceFooter__V() { this.universalFooter__V() }; instanceSetCalculated__Lio_kaitai_struct_format_InstanceIdentifier__V(instName) { this.out$2.puts__T__V((("this." + this.calculatedFlagForName__Lio_kaitai_struct_format_Identifier__T(instName)) + " = true")) }; combinedType__p2__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType(dataType) { if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x2 = dataType; return x2.combinedType__Lio_kaitai_struct_datatype_DataType() } else { return dataType } }; runRead__sci_List__V(name) { this.out$2.puts__T__V("this.Read()") }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; castToType__p2__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_translators_TranslatorResult(r, dataType) { return (((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType) || (dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) ? new $c_Lio_kaitai_struct_translators_ResultString().init___T(((($m_Lio_kaitai_struct_languages_GoCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(dataType) + "(") + this.translator$2.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(r)) + ")")) : r) }; publicMemberName__Lio_kaitai_struct_format_Identifier__T(id) { const x = $m_Lio_kaitai_struct_format_IoIdentifier$(); if (x.equals__O__Z(id)) { return "_IO" } else { const x$3 = $m_Lio_kaitai_struct_format_RootIdentifier$(); if (x$3.equals__O__Z(id)) { return "_Root" } else { const x$5 = $m_Lio_kaitai_struct_format_ParentIdentifier$(); if (x$5.equals__O__Z(id)) { return "_Parent" } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2 = id; const name = x2.name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x3 = id; const idx = x3.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x4 = id; const name$2 = x4.name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$2) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x5 = id; const innerId = x5.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } } } }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.universalFooter__V() }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Z__V(id, r, isRaw) { const expr = this.translator$2.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(r); const tempVar = this.translator$2.specialName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1); this.out$2.puts__T__V(((tempVar + " := ") + expr)); this.out$2.puts__T__V((((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = append(") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id)) + ", ") + tempVar) + ")")) }; switchElseStart__V() { this.out$2.puts__T__V("default:"); this.out$2.inc__V() }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { $m_sci_List$(); const array = [enumName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const jsx$1 = result; const this$5 = $m_sci_List$(); const fullEnumName = curClass.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$5.ReusableCBFInstance$2); const fullEnumNameStr = $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(fullEnumName); const this$6 = this.out$2; this$6.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("type " + fullEnumNameStr) + " int")); this.out$2.puts__T__V("const ("); this.out$2.inc__V(); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, fullEnumName$1, fullEnumNameStr$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); $this.out$2.puts__T__V((((($m_Lio_kaitai_struct_languages_GoCompiler$().enumToStr__sci_List__T__T(fullEnumName$1, label.name$1) + " ") + fullEnumNameStr$1) + " = ") + new $c_sjsr_RuntimeLong().init___I__I(lo, hi))) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, fullEnumName, fullEnumNameStr))); this.out$2.dec__V(); this.out$2.puts__T__V(")") }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.out$2.puts__T__V((("if (this." + this.calculatedFlagForName__Lio_kaitai_struct_format_Identifier__T(instName)) + ") {")); this.out$2.inc__V(); this.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.universalFooter__V() }; indent__T() { return "\t" }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; const x1$2 = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(xorValue); if ((x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { expr$2 = (((("kaitai.ProcessXOR(" + srcExpr) + ", []byte{") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + "})") } else { if ((!(x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { throw new $c_s_MatchError().init___O(x1$2) }; expr$2 = (((("kaitai.ProcessXOR(" + srcExpr) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { expr$2 = this.translator$2.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(this.translator$2.outVarCheckRes__T__Lio_kaitai_struct_translators_ResultLocalVar((("kaitai.ProcessZlib(" + srcExpr) + ")"))) } else if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((("kaitai.ProcessRotateLeft(" + srcExpr) + ", int(") + expr) + "))") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; expr$2 = ("" + srcExpr) } }; const expr$1 = new $c_Lio_kaitai_struct_translators_ResultString().init___T(expr$2); $f_Lio_kaitai_struct_languages_components_GoReads__handleAssignment__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$1, rep, false) }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_translators_TranslatorResult__V(id, r) { const name = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id); const expr = this.translator$2.resToStr__Lio_kaitai_struct_translators_TranslatorResult__T(r); this.out$2.puts__T__V((((((name + " = append(") + name) + ", ") + expr) + ")")) }; calculatedFlagForName__Lio_kaitai_struct_format_Identifier__T(id) { return ("_f_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.puts__T__V((("if " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr)) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V("break"); this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; universalFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; parseExpr__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, io, defEndian) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; return (((io + ".Read") + $m_Lio_kaitai_struct_Utils$().capitalize__T__T(x6.apiCall__s_Option__T(defEndian))) + "()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; return (((io + ".ReadBytes(int(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + "))") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (io + ".ReadBytesFull()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; return (((((((((io + ".ReadBytesTerm(") + terminator) + ", ") + include) + ", ") + consume) + ", ") + eosError) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; return (((io + ".ReadBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(bitEndian.toSuffix__T())) + "(1)") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; return (((((io + ".ReadBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(bitEndian$2.toSuffix__T())) + "(") + width) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x10 = dataType; let addArgs; if (x10.isOpaque__Z()) { addArgs = "" } else { let rc8 = false; let x2$2 = null; const x1$2 = x10.forcedParent$3; let parent; matchEnd9: { if ((x1$2 instanceof $c_s_Some)) { rc8 = true; x2$2 = x1$2; const p3 = x2$2.value$2; const x = $m_Lio_kaitai_struct_datatype_DataType$().USER$undTYPE$undNO$undPARENT$1; if (((x === null) ? (p3 === null) : x.equals__O__Z(p3))) { parent = "null"; break matchEnd9 } }; if (rc8) { const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp); break matchEnd9 }; const x$3 = $m_s_None$(); if ((x$3 === x1$2)) { parent = "this"; break matchEnd9 }; throw new $c_s_MatchError().init___O(x1$2) }; addArgs = ((", " + parent) + ", _root") }; return (((($m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T(x10.name$3) + "(") + io) + addArgs) + ")") } else { throw new $c_s_MatchError().init___O(dataType) } }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { const r = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(value); const converted = ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType) ? r : ((($m_Lio_kaitai_struct_languages_GoCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(dataType) + "(") + r) + ")")); this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName) + " = ") + converted)) }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const ioName = this.idToStr__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_IoStorageIdentifier().init___Lio_kaitai_struct_format_Identifier(varName)); const args = ((rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil) ? this.translator$2.specialName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1) : this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep)); const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "bytes"); this.out$2.puts__T__V((((ioName + " := kaitai.NewStream(bytes.NewReader(") + args) + "))")); return ioName }; fileHeader__T__V(topClassName) { this.outHeader$2.puts__T__V("// This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); const x = this.config$1.goPackage$1; const this$2 = new $c_sci_StringOps().init___T(x); if ($f_sc_TraversableOnce__nonEmpty__Z(this$2)) { const this$3 = this.outHeader$2; this$3.sb$2.append__T__scm_StringBuilder("\n"); this.outHeader$2.puts__T__V(("package " + this.config$1.goPackage$1)) }; const this$4 = this.outHeader$2; this$4.sb$2.append__T__scm_StringBuilder("\n"); const this$5 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$5.list$1, "github.com/kaitai-io/kaitai_struct_go_runtime/kaitai"); const this$6 = this.out$2; this$6.sb$2.append__T__scm_StringBuilder("\n") }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; switchShouldUseCompareFn__Lio_kaitai_struct_datatype_DataType__T2(onType) { return ((onType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType) ? new $c_T2().init___O__O(new $c_s_Some().init___O("bytes.Equal"), new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this) { return (function() { const this$1 = $this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "bytes") }) })(this))) : new $c_T2().init___O__O($m_s_None$(), new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$2) { return (function() { return (void 0) }) })(this)))) }; } const $d_Lio_kaitai_struct_languages_GoCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_GoCompiler: 0 }, false, "io.kaitai.struct.languages.GoCompiler", { Lio_kaitai_struct_languages_GoCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_SingleOutputFile: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_UniversalFooter: 1, Lio_kaitai_struct_languages_components_UniversalDoc: 1, Lio_kaitai_struct_languages_components_AllocateIOLocalVar: 1, Lio_kaitai_struct_languages_components_GoReads: 1, Lio_kaitai_struct_languages_components_CommonReads: 1, Lio_kaitai_struct_languages_components_GoSwitchOps: 1 }); $c_Lio_kaitai_struct_languages_GoCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_GoCompiler; class $c_Lio_kaitai_struct_languages_JavaScriptCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.translator$2 = null; this.NAME$undSWITCH$undON$2 = null; this.outHeader$2 = null; this.out$2 = null; this.importList$2 = null }; switchEnd__V() { this.out$2.puts__T__V("}") }; debugClassSequence__sci_List__V(seq) { /**/ }; classToString__Lio_kaitai_struct_exprlang_Ast$expr__V(toStringExpr) { const this$1 = this.translator$2.provider$2.nowClass$1.name$1; const name = $f_sc_LinearSeqOptimized__last__O(this$1); const className = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name); const this$2 = this.out$2; this$2.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((className + ".prototype.toString = function() {")); this.out$2.inc__V(); this.out$2.puts__T__V((("return " + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(toStringExpr)) + ";")); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = []")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = [];")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = []")); if (this.config$1.readStoresPos$1) { this.out$2.puts__T__V((("this._debug." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) + ".arr = [];")) }; this.out$2.puts__T__V("var i = 0;"); this.out$2.puts__T__V("do {"); this.out$2.inc__V() }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; switchIfElseStart__V() { this.out$2.puts__T__V("else {"); this.out$2.inc__V() }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V("if (this._is_le) {"); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(id, on, onType, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(this, id, on, onType, cases, normalCaseProc, elseCaseProc) }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { const jsx$1 = this.out$2; const name = $f_sc_LinearSeqOptimized__last__O(className); jsx$1.puts__T__V((((("Object.defineProperty(" + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + ".prototype, '") + this.publicMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + "', {")); this.out$2.inc__V(); this.out$2.puts__T__V("get: function() {"); this.out$2.inc__V() }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = [];")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = [];")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = [];")); if (this.config$1.readStoresPos$1) { this.out$2.puts__T__V((("this._debug." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) + ".arr = [];")) }; this.out$2.puts__T__V("var i = 0;"); this.out$2.puts__T__V((("while (!" + io) + ".isEof()) {")); this.out$2.inc__V() }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { return ("this." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; switchIfStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__V(id, on, onType) { this.out$2.puts__T__V("{"); this.out$2.inc__V(); const jsx$1 = this.out$2; const e = this.NAME$undSWITCH$undON$2; jsx$1.puts__T__V((((("var " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + " = ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ";")) }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.out$2.puts__T__V((((io + ".seek(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + ");")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ";")) }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr) + ";")) }; attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, attrType, checkExpr, err, errArgs) { const f = (function($this) { return (function(v$2) { const v = v$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((errArgs === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = errArgs.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = errArgs.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(errArgs, bf); let these = errArgs; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const errArgsStr = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V((("if (!(" + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(checkExpr)) + ")) {")); this.out$2.inc__V(); this.out$2.puts__T__V((((("throw new " + $m_Lio_kaitai_struct_languages_JavaScriptCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err)) + "(") + errArgsStr) + ");")); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condRepeatEosFooter__V() { this.out$2.puts__T__V("i++;"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; pushPos__T__V(io) { this.out$2.puts__T__V((("var _pos = " + io) + ".pos;")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentClassName, rootClassName, isHybrid, params) { const endianSuffix = (isHybrid ? ", _is_le" : ""); const jsx$2 = $m_Lio_kaitai_struct_Utils$(); const f = (function($this) { return (function(p$2) { const p = p$2; const id = p.id$1; return $this.idToStr__Lio_kaitai_struct_format_Identifier__T(id) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((params === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = params.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = params.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(params, bf); let these = params; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const paramsList = jsx$2.join__sc_TraversableOnce__T__T__T__T(jsx$1, ", ", ", ", ""); const jsx$3 = this.out$2; const name$1 = $f_sc_LinearSeqOptimized__last__O(name); jsx$3.puts__T__V(((((("function " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$1)) + "(_io, _parent, _root") + endianSuffix) + paramsList) + ") {")); this.out$2.inc__V(); this.out$2.puts__T__V("this._io = _io;"); this.out$2.puts__T__V("this._parent = _parent;"); this.out$2.puts__T__V("this._root = _root || this;"); if (isHybrid) { this.out$2.puts__T__V("this._is_le = _is_le;") }; let these$1 = params; while ((!these$1.isEmpty__Z())) { const arg1$3 = these$1.head__O(); const p$3 = arg1$3; const jsx$4 = p$3.id$1; const id$1 = p$3.id$1; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(jsx$4, this.idToStr__Lio_kaitai_struct_format_Identifier__T(id$1)); const this$4 = these$1; these$1 = this$4.tail__sci_List() }; if (this.config$1.readStoresPos$1) { this.out$2.puts__T__V("this._debug = {};") }; const this$5 = this.out$2; this$5.sb$2.append__T__scm_StringBuilder("\n") }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V((("var io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx)) + ";")); return "io" }; switchCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) }; switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; return (((io + ".read") + $m_Lio_kaitai_struct_Utils$().capitalize__T__T(x6.apiCall__s_Option__T(defEndian))) + "()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; return (((io + ".readBytes(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (io + ".readBytesFull()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; return (((((((((io + ".readBytesTerm(") + terminator) + ", ") + include) + ", ") + consume) + ", ") + eosError) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; return (((io + ".readBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(bitEndian.toSuffix__T())) + "(1) != 0") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; return (((((io + ".readBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(bitEndian$2.toSuffix__T())) + "(") + width) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x10 = dataType; let rc8 = false; let x2$2 = null; const x1$2 = x10.forcedParent$3; let parent; matchEnd9: { if ((x1$2 instanceof $c_s_Some)) { rc8 = true; x2$2 = x1$2; const p3 = x2$2.value$2; const x = $m_Lio_kaitai_struct_datatype_DataType$().USER$undTYPE$undNO$undPARENT$1; if (((x === null) ? (p3 === null) : x.equals__O__Z(p3))) { parent = "null"; break matchEnd9 } }; if (rc8) { const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp); break matchEnd9 }; const x$3 = $m_s_None$(); if ((x$3 === x1$2)) { parent = "this"; break matchEnd9 }; throw new $c_s_MatchError().init___O(x1$2) }; const root = (x10.isOpaque__Z() ? "null" : "this._root"); const x1$3 = x10.classSpec$3.get__O().meta$1.endian$1; let addEndian; matchEnd6: { if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const p3$2 = x2$3.value$2; const x$5 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$5 === p3$2)) { addEndian = ", this._is_le"; break matchEnd6 } }; addEndian = "" }; const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const jsx$2 = x10.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); const addParams = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2), ", ", ", ", ""); return (((((((((("new " + $m_Lio_kaitai_struct_languages_JavaScriptCompiler$().types2class__sci_List__T(x10.name$3)) + "(") + io) + ", ") + parent) + ", ") + root) + addEndian) + addParams) + ")") } else { throw new $c_s_MatchError().init___O(dataType) } }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrId, attrType, io, rep) { if ((!this.attrDebugNeeded__p2__Lio_kaitai_struct_format_Identifier__Z(attrId))) { return (void 0) }; const debugName = this.attrDebugName__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__Z__T(attrId, rep, false); const x = $m_s_None$(); let ioProps; if ((x === io)) { ioProps = "" } else { if ((!(io instanceof $c_s_Some))) { throw new $c_s_MatchError().init___O(io) }; const x2 = io; const x$3 = x2.value$2; ioProps = (((("start: " + x$3) + ".pos, ioOffset: ") + x$3) + ".byteOffset") }; let enumNameProps; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x2$2 = attrType; enumNameProps = (("enumName: \"" + $m_Lio_kaitai_struct_languages_JavaScriptCompiler$().types2class__sci_List__T(x2$2.enumSpec$1.get__O().name$1)) + "\"") } else { enumNameProps = "" }; this.out$2.puts__T__V((((((debugName + " = { ") + ioProps) + (((ioProps !== "") && (enumNameProps !== "")) ? ", " : "")) + enumNameProps) + " };")) }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = this.importList$2; const impList = this$1.list$1.toList__sci_List(); const f = (function($this) { return (function(x$2) { const x = x$2; return (("'" + x) + "'") }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let quotedImpList; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((impList === $m_sci_Nil$())) { quotedImpList = $m_sci_Nil$() } else { const arg1 = impList.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = impList.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; quotedImpList = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(impList, bf); let these = impList; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; quotedImpList = b.result__O() }; const defineArgs = $f_sc_TraversableOnce__mkString__T__T__T__T(quotedImpList, "", ", ", ""); const f$1 = (function(this$2$1) { return (function(x$3$2) { const x$3 = x$3$2; return (("require(" + x$3) + ")") }) })(this); const this$5 = $m_sci_List$(); const bf$1 = this$5.ReusableCBFInstance$2; let jsx$1; if ((bf$1 === $m_sci_List$().ReusableCBFInstance$2)) { if ((quotedImpList === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1$3 = quotedImpList.head__O(); const h$1 = new $c_sci_$colon$colon().init___O__sci_List(f$1(arg1$3), $m_sci_Nil$()); let t$1 = h$1; let rest$1 = quotedImpList.tail__sci_List(); while ((rest$1 !== $m_sci_Nil$())) { const arg1$4 = rest$1.head__O(); const nx$1 = new $c_sci_$colon$colon().init___O__sci_List(f$1(arg1$4), $m_sci_Nil$()); t$1.tl$5 = nx$1; t$1 = nx$1; const this$6 = rest$1; rest$1 = this$6.tail__sci_List() }; jsx$1 = h$1 } } else { const b$1 = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(quotedImpList, bf$1); let these$1 = quotedImpList; while ((!these$1.isEmpty__Z())) { const arg1$5 = these$1.head__O(); b$1.$$plus$eq__O__scm_Builder(f$1(arg1$5)); const this$7 = these$1; these$1 = this$7.tail__sci_List() }; jsx$1 = b$1.result__O() }; const moduleArgs = jsx$1.mkString__T__T(", "); const f$2 = (function(this$3$1) { return (function(x$4$2) { const x$4 = x$4$2; const this$9 = new $c_sci_StringOps().init___T(x$4); const xs = $f_sci_StringLike__split__C__AT(this$9, 47); const this$11 = new $c_scm_ArrayOps$ofRef().init___AO(xs); return $f_sc_IndexedSeqOptimized__last__O(this$11) }) })(this); const this$12 = $m_sci_List$(); const bf$2 = this$12.ReusableCBFInstance$2; let argClasses; if ((bf$2 === $m_sci_List$().ReusableCBFInstance$2)) { if ((impList === $m_sci_Nil$())) { argClasses = $m_sci_Nil$() } else { const arg1$6 = impList.head__O(); const h$2 = new $c_sci_$colon$colon().init___O__sci_List(f$2(arg1$6), $m_sci_Nil$()); let t$2 = h$2; let rest$2 = impList.tail__sci_List(); while ((rest$2 !== $m_sci_Nil$())) { const arg1$7 = rest$2.head__O(); const nx$2 = new $c_sci_$colon$colon().init___O__sci_List(f$2(arg1$7), $m_sci_Nil$()); t$2.tl$5 = nx$2; t$2 = nx$2; const this$13 = rest$2; rest$2 = this$13.tail__sci_List() }; argClasses = h$2 } } else { const b$2 = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(impList, bf$2); let these$2 = impList; while ((!these$2.isEmpty__Z())) { const arg1$8 = these$2.head__O(); b$2.$$plus$eq__O__scm_Builder(f$2(arg1$8)); const this$14 = these$2; these$2 = this$14.tail__sci_List() }; argClasses = b$2.result__O() }; const f$3 = (function(this$4$1) { return (function(x$5$2) { const x$5 = x$5$2; return ("root." + x$5) }) })(this); const this$15 = $m_sci_List$(); const bf$3 = this$15.ReusableCBFInstance$2; let jsx$2; if ((bf$3 === $m_sci_List$().ReusableCBFInstance$2)) { if ((argClasses === $m_sci_Nil$())) { jsx$2 = $m_sci_Nil$() } else { const arg1$9 = argClasses.head__O(); const h$3 = new $c_sci_$colon$colon().init___O__sci_List(f$3(arg1$9), $m_sci_Nil$()); let t$3 = h$3; let rest$3 = argClasses.tail__sci_List(); while ((rest$3 !== $m_sci_Nil$())) { const arg1$10 = rest$3.head__O(); const nx$3 = new $c_sci_$colon$colon().init___O__sci_List(f$3(arg1$10), $m_sci_Nil$()); t$3.tl$5 = nx$3; t$3 = nx$3; const this$16 = rest$3; rest$3 = this$16.tail__sci_List() }; jsx$2 = h$3 } } else { const b$3 = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(argClasses, bf$3); let these$3 = argClasses; while ((!these$3.isEmpty__Z())) { const arg1$11 = these$3.head__O(); b$3.$$plus$eq__O__scm_Builder(f$3(arg1$11)); const this$17 = these$3; these$3 = this$17.tail__sci_List() }; jsx$2 = b$3.result__O() }; const rootArgs = jsx$2.mkString__T__T(", "); const this$19 = new $c_sci_StringOps().init___T(" "); const jsx$4 = $f_sci_StringLike__$$times__I__T(this$19, 2); const this$21 = new $c_sci_StringOps().init___T(" "); const jsx$3 = $f_sci_StringLike__$$times__I__T(this$21, 2); const this$23 = new $c_sci_StringOps().init___T(" "); return ((((((((((("(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n" + jsx$4) + ("define([" + defineArgs)) + "], factory);\n } else if (typeof module === 'object' && module.exports) {\n") + jsx$3) + ("module.exports = factory(" + moduleArgs)) + ");\n } else {\n") + $f_sci_StringLike__$$times__I__T(this$23, 2)) + ((("root." + $m_Lio_kaitai_struct_languages_JavaScriptCompiler$().types2class__sci_List__T(topClass.name$1)) + " = factory(") + rootArgs)) + ");\n }\n") + ("}(typeof self !== 'undefined' ? self : this, function (" + $f_sc_TraversableOnce__mkString__T__T__T__T(argClasses, "", ", ", ""))) + ") {") }; condRepeatExprFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_JavaScriptTranslator().init___Lio_kaitai_struct_translators_TypeProvider(this.typeProvider$1); this.NAME$undSWITCH$undON$2 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T($m_Lio_kaitai_struct_format_Identifier$().SWITCH$undON$1)); return this }; attrParse2$default$7__s_Option() { return $m_s_None$() }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { this.out$2.puts__T__V((((("var " + id) + " = ") + expr) + ";")) }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$2) } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$3 = x5.name$2; return ("_m_" + $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$3)) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x6 = id; const innerId = x6.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return ("_t_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; alignToByte__T__V(io) { this.out$2.puts__T__V((io + ".alignToByte();")) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; switchCaseEnd__V() { this.out$2.puts__T__V("break;"); this.out$2.dec__V() }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { const tmpName = this.translator$2.doName__T__T((isRaw ? $m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 : $m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1)); this.out$2.puts__T__V((((("var " + tmpName) + " = ") + expr) + ";")); this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".push(") + tmpName) + ");")) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; opaqueClassDeclaration__Lio_kaitai_struct_format_ClassSpec__V(classSpec) { const name = classSpec.name$1.head__O(); const className = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name); const this$1 = this.importList$2; const s = ("./" + className); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, s) }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V((("if (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + ") {")); this.out$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".push(") + expr) + ");")) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "[i] = ") + expr) + ";")) }; readHeader__s_Option__Z__V(endian, isEmpty) { let suffix; if ((endian instanceof $c_s_Some)) { const x2 = endian; const e = x2.value$2; $m_Lio_kaitai_struct_Utils$(); const s = e.toSuffix__T(); suffix = s.toUpperCase() } else { const x = $m_s_None$(); if ((!(x === endian))) { throw new $c_s_MatchError().init___O(endian) }; suffix = "" }; const jsx$1 = this.out$2; const this$4 = this.typeProvider$1.nowClass$1.name$1; const name = $f_sc_LinearSeqOptimized__last__O(this$4); jsx$1.puts__T__V(((($m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) + ".prototype._read") + suffix) + " = function() {")); this.out$2.inc__V() }; classHeader__sci_List__V(name) { const name$1 = $f_sc_LinearSeqOptimized__last__O(name); const shortClassName = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$1); const addNameExpr = (($f_sc_LinearSeqOptimized__length__I(name) > 1) ? (" = " + $m_Lio_kaitai_struct_languages_JavaScriptCompiler$().types2class__sci_List__T(name.takeRight__I__sci_List(2))) : ""); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V(((("var " + shortClassName) + addNameExpr) + " = (function() {")); this.out$2.inc__V() }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; switchCmpExpr__p2__Lio_kaitai_struct_exprlang_Ast$expr__T(condition) { const e = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr(this.NAME$undSWITCH$undON$2, $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(), condition); return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e) }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("case " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ":")); this.out$2.inc__V() }; attrDebugNeeded__p2__Lio_kaitai_struct_format_Identifier__Z(attrId) { if (((attrId instanceof $c_Lio_kaitai_struct_format_NamedIdentifier) || ((attrId instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier) || (attrId instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)))) { return true } else if (((attrId instanceof $c_Lio_kaitai_struct_format_RawIdentifier) || (attrId instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier))) { return false } else { throw new $c_s_MatchError().init___O(attrId) } }; classConstructorFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.out$2.puts__T__V((io + ".seek(_pos);")) }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr) ? (memberName + "[i]") : (((memberName + "[") + memberName) + ".length - 1]")) } }; runReadCalc__V() { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("if (this._is_le === true) {"); this.out$2.inc__V(); this.out$2.puts__T__V("this._readLE();"); this.out$2.dec__V(); this.out$2.puts__T__V("} else if (this._is_le === false) {"); this.out$2.inc__V(); this.out$2.puts__T__V("this._readBE();"); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); this.out$2.puts__T__V("throw new KaitaiStream.UndecidedEndiannessError();"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; outFileName__T__T(topClassName) { return ($m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(topClassName) + ".js") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; readFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = new Array(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ");")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = new Array(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ");")) }; this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = new Array(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ");")); if (this.config$1.readStoresPos$1) { this.out$2.puts__T__V((((("this._debug." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) + ".arr = new Array(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ");")) }; this.out$2.puts__T__V((("for (var i = 0; i < " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + "; i++) {")); this.out$2.inc__V() }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { this.out$2.puts__T__V((("switch (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ") {")) }; fileFooter__T__V(name) { this.out$2.puts__T__V((("return " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + ";")); this.out$2.puts__T__V("}));") }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("/**"); const this$2 = doc.summary$1; if ((!this$2.isEmpty__Z())) { const arg1 = this$2.get__O(); const summary = arg1; this.out$2.putsLines__T__T__T__V(" * ", summary, "") }; const this$3 = doc.ref$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const x0$1 = arg1$1; if ((x0$1 instanceof $c_Lio_kaitai_struct_format_TextRef)) { const x2 = x0$1; const text = x2.text$1; this.out$2.putsLines__T__T__T__V(" * ", ("@see " + text), "") } else if ((x0$1 instanceof $c_Lio_kaitai_struct_format_UrlRef)) { const x3 = x0$1; const url = x3.url$1; const text$2 = x3.text$1; this.out$2.putsLines__T__T__T__V(" * ", (((("@see {@link " + url) + "|") + text$2) + "}"), "") } else { throw new $c_s_MatchError().init___O(x0$1) }; const this$4 = these; these = this$4.tail__sci_List() }; this.out$2.puts__T__V(" */") }; classFooter__sci_List__V(name) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const jsx$1 = this.out$2; const name$1 = $f_sc_LinearSeqOptimized__last__O(name); jsx$1.puts__T__V((("return " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$1)) + ";")); this.out$2.dec__V(); this.out$2.puts__T__V("})();") }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { this.out$2.puts__T__V((id + "._read();")) }; instanceFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.dec__V(); this.out$2.puts__T__V("});") }; runRead__sci_List__V(name) { this.out$2.puts__T__V("this._read();") }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrId, attrType, io, rep) { if ((!this.attrDebugNeeded__p2__Lio_kaitai_struct_format_Identifier__Z(attrId))) { return (void 0) }; const debugName = this.attrDebugName__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__Z__T(attrId, rep, true); this.out$2.puts__T__V((((debugName + ".end = ") + io) + ".pos;")) }; publicMemberName__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2 = id; const name = x2.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x3 = id; const name$2 = x3.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$2) } else { throw new $c_s_MatchError().init___O(id) } }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((("KaitaiStream.bytesStripRight(" + expr0) + ", ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((("KaitaiStream.bytesTerminate(" + expr1) + ", ") + term) + ", ") + include) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; switchIfEnd__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; switchIfCaseEnd__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; switchElseStart__V() { this.out$2.puts__T__V("default:"); this.out$2.inc__V() }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { const jsx$1 = this.out$2; const name = $f_sc_LinearSeqOptimized__last__O(curClass); jsx$1.puts__T__V(((($m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) + ".") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(enumName)) + " = Object.freeze({")); this.out$2.inc__V(); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, enumName$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); const jsx$2 = $this.out$2; const label$1 = label.name$1; $m_Lio_kaitai_struct_Utils$(); jsx$2.puts__T__V((((label$1.toUpperCase() + ": ") + new $c_sjsr_RuntimeLong().init___I__I(lo, hi)) + ",")) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, enumName))); const this$4 = this.out$2; this$4.sb$2.append__T__scm_StringBuilder("\n"); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, enumName$2) { return (function(x0$2$2) { const x0$2 = x0$2$2; if ((x0$2 !== null)) { const t$1 = x0$2.$$und1$mcJ$sp__J(); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; const label$2 = x0$2.$$und2__O(); const idStr = ((hi$1 < 0) ? (("\"" + $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toString__I__I__T(lo$1, hi$1)) + "\"") : $m_sjsr_RuntimeLong$().scala$scalajs$runtime$RuntimeLong$$toString__I__I__T(lo$1, hi$1)); const jsx$3 = this$2$1.out$2; const label$3 = label$2.name$1; $m_Lio_kaitai_struct_Utils$(); jsx$3.puts__T__V((((idStr + ": \"") + label$3.toUpperCase()) + "\",")) } else { throw new $c_s_MatchError().init___O(x0$2) } }) })(this, enumName))); this.out$2.dec__V(); this.out$2.puts__T__V("});"); const this$8 = this.out$2; this$8.sb$2.append__T__scm_StringBuilder("\n") }; switchIfCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("if (" + this.switchCmpExpr__p2__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + ") {")); this.out$2.inc__V() }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.out$2.puts__T__V((("if (" + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + " !== undefined)")); this.out$2.inc__V(); this.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.out$2.dec__V() }; switchRequiresIfs__Lio_kaitai_struct_datatype_DataType__Z(onType) { return (!((onType instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType) || ((onType instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType) || ((onType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType) || (onType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType))))) }; indent__T() { return " " }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; const x1$2 = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(xorValue); let procName; if ((x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { procName = "processXorOne" } else { if ((!(x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { throw new $c_s_MatchError().init___O(x1$2) }; procName = "processXorMany" }; expr$2 = (((((("KaitaiStream." + procName) + "(") + srcExpr) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { expr$2 = (("KaitaiStream.processZlib(" + srcExpr) + ")") } else if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((("KaitaiStream.processRotateLeft(" + srcExpr) + ", ") + expr) + ", 1)") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; const x4 = proc; const name = x4.name$1; const args = x4.args$1; const nameInit = $f_sc_TraversableLike__init__O(name); const pkgName = (nameInit.isEmpty__Z() ? "" : ($f_sc_TraversableOnce__mkString__T__T__T__T(nameInit, "", "-", "") + "/")); const name$1 = $f_sc_LinearSeqOptimized__last__O(name); const procClass = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$1); const this$1 = this.importList$2; const s = (pkgName + procClass); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, s); const jsx$2 = this.out$2; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(e$2) { const e = e$2; return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T($this, e) }) })(this)); const this$2 = $m_sc_Seq$(); jsx$2.puts__T__V((((("var _process = new " + procClass) + "(") + args.map__F1__scg_CanBuildFrom__O(jsx$1, this$2.ReusableCBFInstance$2).mkString__T__T(", ")) + ");")); expr$2 = (("_process.decode(" + srcExpr) + ")") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; switchIfCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("else if (" + this.switchCmpExpr__p2__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + ") {")); this.out$2.inc__V() }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.puts__T__V("i++;"); this.out$2.dec__V(); this.out$2.puts__T__V((("} while (!(" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr)) + "));")) }; attrDebugName__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__Z__T(attrId, rep, end) { const x = $m_Lio_kaitai_struct_format_NoRepeat$(); let arrIndexExpr; if ((x === rep)) { arrIndexExpr = "" } else if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { arrIndexExpr = ".arr[i]" } else { const x$3 = $m_Lio_kaitai_struct_format_RepeatEos$(); if ((!((x$3 === rep) || (rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil)))) { throw new $c_s_MatchError().init___O(rep) }; arrIndexExpr = ((((".arr[" + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrId)) + ".length") + (end ? " - 1" : "")) + "]") }; return (("this._debug." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrId)) + arrIndexExpr) }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(this, instName, dataType, value) }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const langName = this.idToStr__Lio_kaitai_struct_format_Identifier__T(varName); this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const ioName = ("_io_" + langName); const args = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep); this.out$2.puts__T__V((((("var " + ioName) + " = new KaitaiStream(") + args) + ");")); return ioName }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; fileHeader__T__V(topClassName) { this.outHeader$2.puts__T__V("// This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); const this$1 = this.outHeader$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "kaitai-struct/KaitaiStream") }; } const $d_Lio_kaitai_struct_languages_JavaScriptCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_JavaScriptCompiler: 0 }, false, "io.kaitai.struct.languages.JavaScriptCompiler", { Lio_kaitai_struct_languages_JavaScriptCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_SingleOutputFile: 1, Lio_kaitai_struct_languages_components_UniversalDoc: 1, Lio_kaitai_struct_languages_components_AllocateIOLocalVar: 1, Lio_kaitai_struct_languages_components_EveryReadIsExpression: 1, Lio_kaitai_struct_languages_components_CommonReads: 1, Lio_kaitai_struct_languages_components_SwitchIfOps: 1, Lio_kaitai_struct_languages_components_FixedContentsUsingArrayByteLiteral: 1 }); $c_Lio_kaitai_struct_languages_JavaScriptCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_JavaScriptCompiler; class $c_Lio_kaitai_struct_languages_PHPCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.translator$2 = null; this.outHeader$2 = null; this.out$2 = null; this.importList$2 = null }; classHeader__sci_List__s_Option__V(name, parentClass) { const nsPart = $f_sc_LinearSeqOptimized__dropRight__I__sc_LinearSeqOptimized(name, 1); const x = this.config$1.phpNamespace$1; const this$2 = new $c_sci_StringOps().init___T(x); let ns; if ($f_sc_TraversableOnce__nonEmpty__Z(this$2)) { ns = ($f_sc_TraversableOnce__nonEmpty__Z(nsPart) ? ((this.config$1.phpNamespace$1 + "\\") + $m_Lio_kaitai_struct_languages_PHPCompiler$().types2classRel__sci_List__T(nsPart)) : this.config$1.phpNamespace$1) } else { ns = ($f_sc_TraversableOnce__nonEmpty__Z(nsPart) ? $m_Lio_kaitai_struct_languages_PHPCompiler$().types2classRel__sci_List__T(nsPart) : "") }; const this$4 = new $c_sci_StringOps().init___T(ns); let space; if ($f_sc_TraversableOnce__nonEmpty__Z(this$4)) { space = " " } else { space = "" }; const this$5 = this.out$2; this$5.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V(((("namespace " + ns) + space) + "{")); this.out$2.inc__V(); let ext; if ((parentClass instanceof $c_s_Some)) { const x2 = parentClass; const x$1 = x2.value$2; ext = (" extends " + x$1) } else { const x$2 = $m_s_None$(); if ((!(x$2 === parentClass))) { throw new $c_s_MatchError().init___O(parentClass) }; ext = "" }; const jsx$1 = this.out$2; const name$1 = $f_sc_LinearSeqOptimized__last__O(name); jsx$1.puts__T__V(((("class " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$1)) + ext) + " {")); this.out$2.inc__V() }; switchEnd__V() { this.universalFooter__V() }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = [];")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = [];")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = [];")); this.out$2.puts__T__V("$i = 0;"); this.out$2.puts__T__V("do {"); this.out$2.inc__V() }; paramName__Lio_kaitai_struct_format_Identifier__T(id) { return ("$" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attrType) { if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { return "int" } else if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatType)) { return "float" } else if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { return "bool" } else if (((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType) || (attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { return "string" } else if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x7 = attrType; const jsx$2 = this.translator$2; const x1$2 = x7.classSpec$3; let jsx$1; if ((x1$2 instanceof $c_s_Some)) { const x2 = x1$2; const cs = x2.value$2; jsx$1 = cs.name$1 } else { const x = $m_s_None$(); if ((!(x === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; jsx$1 = x7.name$3 }; return jsx$2.types2classAbs__sci_List__T(jsx$1) } else if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { return "int" } else if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { return "array" } else { const x$3 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); let jsx$3; if ((x$3 === attrType)) { jsx$3 = true } else { const x$5 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$3 = (x$5 === attrType) }; if (jsx$3) { return "\\Kaitai\\Struct\\Struct" } else { const x$7 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); let jsx$4; if ((x$7 === attrType)) { jsx$4 = true } else { const x$9 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); jsx$4 = (x$9 === attrType) }; if (jsx$4) { return "\\Kaitai\\Struct\\Stream" } else { throw new $c_s_MatchError().init___O(attrType) } } } }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V("if ($this->_m__is_le) {"); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.out$2.puts__T__V((("public function " + this.idToStr__Lio_kaitai_struct_format_Identifier__T(instName)) + "() {")); this.out$2.inc__V() }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = [];")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = [];")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = [];")); this.out$2.puts__T__V("$i = 0;"); this.out$2.puts__T__V((("while (!" + io) + "->isEof()) {")); this.out$2.inc__V() }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { const x = $m_Lio_kaitai_struct_format_IoIdentifier$(); if (x.equals__O__Z(id)) { return "$this->_io" } else { const x$3 = $m_Lio_kaitai_struct_format_RootIdentifier$(); if (x$3.equals__O__Z(id)) { return "$this->_root" } else { const x$5 = $m_Lio_kaitai_struct_format_ParentIdentifier$(); if (x$5.equals__O__Z(id)) { return "$this->_parent" } else { return ("$this->_m_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) } } } }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.out$2.puts__T__V((((io + "->seek(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + ");")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ";")) }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr) + ";")) }; attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, attrType, checkExpr, err, errArgs) { const f = (function($this) { return (function(v$2) { const v = v$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((errArgs === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = errArgs.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = errArgs.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(errArgs, bf); let these = errArgs; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const errArgsStr = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V((("if (!(" + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(checkExpr)) + ")) {")); this.out$2.inc__V(); this.out$2.puts__T__V((((("throw new " + $m_Lio_kaitai_struct_languages_PHPCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err)) + "(") + errArgsStr) + ");")); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condRepeatEosFooter__V() { this.out$2.puts__T__V("$i++;"); this.universalFooter__V() }; pushPos__T__V(io) { this.out$2.puts__T__V((("$_pos = " + io) + "->pos();")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { const x1 = this.typeProvider$1.nowClass$1.meta$1.endian$1; let jsx$1; matchEnd12: { if ((x1 instanceof $c_s_Some)) { const x2 = x1; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { jsx$1 = true; break matchEnd12 } }; if ((x1 instanceof $c_s_Some)) { const x4 = x1; const p5 = x4.value$2; const x = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x === p5)) { jsx$1 = true; break matchEnd12 } }; jsx$1 = false }; if (jsx$1) { this.out$2.puts__T__V("protected $_m__is_le;"); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; const endianAdd = (isHybrid ? ", $is_le = null" : ""); const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const f = (function($this) { return (function(p$2) { const p = p$2; return (($this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(p.dataType$1) + " ") + $this.paramName__Lio_kaitai_struct_format_Identifier__T(p.id$1)) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$2; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((params === $m_sci_Nil$())) { jsx$2 = $m_sci_Nil$() } else { const arg1 = params.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = params.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$2 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(params, bf); let these = params; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$2 = b.result__O() }; const paramsArg = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2, "", ", ", ", "); const pIo = this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()); const pParent = this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_ParentIdentifier$()); const pRoot = this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$()); const tParent = this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(parentType); const tRoot = this.translator$2.types2classAbs__sci_List__T(rootClassName); this.out$2.puts__T__V(((((((((("public function __construct(" + paramsArg) + ("\\Kaitai\\Struct\\Stream " + pIo)) + ", ") + ((tParent + " ") + pParent)) + " = null, ") + ((tRoot + " ") + pRoot)) + " = null") + endianAdd) + ") {")); this.out$2.inc__V(); this.out$2.puts__T__V((((((("parent::__construct(" + pIo) + ", ") + pParent) + ", ") + pRoot) + ");")); if (isHybrid) { this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_EndianIdentifier$(), "$is_le") }; let these$1 = params; while ((!these$1.isEmpty__Z())) { const arg1$3 = these$1.head__O(); const p$3 = arg1$3; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(p$3.id$1, this.paramName__Lio_kaitai_struct_format_Identifier__T(p$3.id$1)); const this$5 = these$1; these$1 = this$5.tail__sci_List() } }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V((("$io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx)) + ";")); return "$io" }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; return (((io + "->read") + $m_Lio_kaitai_struct_Utils$().capitalize__T__T(x6.apiCall__s_Option__T(defEndian))) + "()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; return (((io + "->readBytes(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (io + "->readBytesFull()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; return (((((((((io + "->readBytesTerm(") + terminator) + ", ") + include) + ", ") + consume) + ", ") + eosError) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; return (((io + "->readBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(bitEndian.toSuffix__T())) + "(1) != 0") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; return (((((io + "->readBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(bitEndian$2.toSuffix__T())) + "(") + width) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x10 = dataType; const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const jsx$2 = x10.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); const addParams = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2), "", ", ", ", "); let addArgs; if (x10.isOpaque__Z()) { addArgs = "" } else { let rc8 = false; let x2$2 = null; const x1$2 = x10.forcedParent$3; let parent; matchEnd9: { if ((x1$2 instanceof $c_s_Some)) { rc8 = true; x2$2 = x1$2; const p3 = x2$2.value$2; const x = $m_Lio_kaitai_struct_datatype_DataType$().USER$undTYPE$undNO$undPARENT$1; if (((x === null) ? (p3 === null) : x.equals__O__Z(p3))) { parent = "null"; break matchEnd9 } }; if (rc8) { const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp); break matchEnd9 }; const x$3 = $m_s_None$(); if ((x$3 === x1$2)) { parent = "$this"; break matchEnd9 }; throw new $c_s_MatchError().init___O(x1$2) }; const x1$3 = x10.classSpec$3.get__O().meta$1.endian$1; let addEndian; matchEnd6: { if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const p3$2 = x2$3.value$2; const x$5 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$5 === p3$2)) { addEndian = (", " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())); break matchEnd6 } }; addEndian = "" }; addArgs = ((((", " + parent) + ", ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$())) + addEndian) }; return (((((("new " + this.translator$2.types2classAbs__sci_List__T(x10.classSpec$3.get__O().name$1)) + "(") + addParams) + io) + addArgs) + ")") } else { throw new $c_s_MatchError().init___O(dataType) } }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; condRepeatExprFooter__V() { this.universalFooter__V() }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { return "" }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_PHPTranslator().init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_RuntimeConfig(this.typeProvider$1, this.config$1); return this }; attrParse2$default$7__s_Option() { return $m_s_None$() }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { this.out$2.puts__T__V((((id + " = ") + expr) + ";")) }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$2) } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$3 = x5.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$3) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x6 = id; const innerId = x6.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } }; alignToByte__T__V(io) { this.out$2.puts__T__V((io + "->alignToByte();")) }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return ("$_t_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; innerEnums__Z() { return false }; switchCaseEnd__V() { this.out$2.puts__T__V("break;"); this.out$2.dec__V() }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { const tmpName = this.translator$2.doLocalName__T__T((isRaw ? $m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 : $m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1)); this.out$2.puts__T__V((((tmpName + " = ") + expr) + ";")); this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "[] = ") + tmpName) + ";")) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { const x = $m_Lio_kaitai_struct_format_ParentIdentifier$(); let jsx$1; if (x.equals__O__Z(attrName)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_format_RootIdentifier$(); if (x$3.equals__O__Z(attrName)) { jsx$1 = true } else { const x$5 = $m_Lio_kaitai_struct_format_IoIdentifier$(); jsx$1 = x$5.equals__O__Z(attrName) } }; if ((!jsx$1)) { this.out$2.puts__T__V((("protected $_m_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")) } }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V((("if (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + ") {")); this.out$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "[] = ") + expr) + ";")) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "[] = ") + expr) + ";")) }; readHeader__s_Option__Z__V(endian, isEmpty) { let suffix; if ((endian instanceof $c_s_Some)) { const x2 = endian; const e = x2.value$2; $m_Lio_kaitai_struct_Utils$(); const s = e.toSuffix__T(); suffix = s.toUpperCase() } else { const x = $m_s_None$(); if ((!(x === endian))) { throw new $c_s_MatchError().init___O(endian) }; suffix = "" }; const access = (this.config$1.autoRead$1 ? "private" : "public"); const this$4 = this.out$2; this$4.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((((access + " function _read") + suffix) + "() {")); this.out$2.inc__V() }; classHeader__sci_List__V(name) { this.classHeader__sci_List__s_Option__V(name, new $c_s_Some().init___O("\\Kaitai\\Struct\\Struct")) }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; innerClasses__Z() { return false }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("case " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ":")); this.out$2.inc__V() }; classConstructorFooter__V() { this.universalFooter__V() }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.out$2.puts__T__V((io + "->seek($_pos);")) }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return (("end(" + memberName) + ")") } }; runReadCalc__V() { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("if (is_null($this->_m__is_le)) {"); this.out$2.inc__V(); this.out$2.puts__T__V((("throw new " + $m_Lio_kaitai_struct_languages_PHPCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T($m_Lio_kaitai_struct_datatype_UndecidedEndiannessError$())) + ";")); this.out$2.dec__V(); this.out$2.puts__T__V("} else if ($this->_m__is_le) {"); this.out$2.inc__V(); this.out$2.puts__T__V("$this->_readLE();"); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); this.out$2.puts__T__V("$this->_readBE();"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; outFileName__T__T(topClassName) { return ($m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(topClassName) + ".php") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; readFooter__V() { this.universalFooter__V() }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = [];")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = [];")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = [];")); this.out$2.puts__T__V((("$n = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ";")); this.out$2.puts__T__V("for ($i = 0; $i < $n; $i++) {"); this.out$2.inc__V() }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(on); this.out$2.puts__T__V((("switch (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ") {")); this.out$2.inc__V() }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { if (doc.summary$1.isDefined__Z()) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("/**"); const this$2 = doc.summary$1; if ((!this$2.isEmpty__Z())) { const arg1 = this$2.get__O(); const summary = arg1; this.out$2.putsLines__T__T__T__V(" * ", summary, "") }; this.out$2.puts__T__V(" */") } }; classFooter__sci_List__V(name) { this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { this.out$2.puts__T__V((id + "->_read();")) }; instanceFooter__V() { this.universalFooter__V() }; runRead__sci_List__V(name) { this.out$2.puts__T__V("$this->_read();") }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((("\\Kaitai\\Struct\\Stream::bytesStripRight(" + expr0) + ", ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((("\\Kaitai\\Struct\\Stream::bytesTerminate(" + expr1) + ", ") + term) + ", ") + include) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.universalFooter__V() }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; switchElseStart__V() { this.out$2.puts__T__V("default:"); this.out$2.inc__V() }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { $m_sci_List$(); const array = [enumName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const name = result.$$colon$colon$colon__sci_List__sci_List(curClass); this.classHeader__sci_List__s_Option__V(name, $m_s_None$()); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); $this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(label.doc$1); const jsx$1 = $this.out$2; const label$1 = label.name$1; $m_Lio_kaitai_struct_Utils$(); jsx$1.puts__T__V((((("const " + label$1.toUpperCase()) + " = ") + new $c_sjsr_RuntimeLong().init___I__I(lo, hi)) + ";")) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.classFooter__sci_List__V(name) }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.out$2.puts__T__V((("if (" + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + " !== null)")); this.out$2.inc__V(); this.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.out$2.dec__V() }; indent__T() { return " " }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; const x1$2 = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(xorValue); let procName; if ((x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { procName = "processXorOne" } else { if ((!(x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { throw new $c_s_MatchError().init___O(x1$2) }; procName = "processXorMany" }; expr$2 = (((((("\\Kaitai\\Struct\\Stream::" + procName) + "(") + srcExpr) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { expr$2 = (("\\Kaitai\\Struct\\Stream::processZlib(" + srcExpr) + ")") } else if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((("\\Kaitai\\Struct\\Stream::processRotateLeft(" + srcExpr) + ", ") + expr) + ", 1)") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; const x4 = proc; const name = x4.name$1; const args = x4.args$1; const isAbsolute = ($f_sc_LinearSeqOptimized__length__I(name) > 1); const f = (function($this) { return (function(x$3$2) { const x$3 = x$3$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(x$3) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((name === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = name.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = name.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(name, bf); let these = name; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const procClass = jsx$1.mkString__T__T__T__T((isAbsolute ? "\\" : ""), "\\", ""); const jsx$3 = this.out$2; const jsx$2 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(e$2) { const e = e$2; return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this$2$1, e) }) })(this)); const this$4 = $m_sc_Seq$(); jsx$3.puts__T__V((((("$_process = new " + procClass) + "(") + args.map__F1__scg_CanBuildFrom__O(jsx$2, this$4.ReusableCBFInstance$2).mkString__T__T(", ")) + ");")); expr$2 = (("$_process->decode(" + srcExpr) + ")") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.puts__T__V("$i++;"); this.out$2.dec__V(); this.out$2.puts__T__V((("} while (!(" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr)) + "));")) }; universalFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(this, instName, dataType, value) }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep) { this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id); const ioName = ("$_io_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)); const args = ((rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil) ? this.translator$2.doLocalName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1) : this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep)); this.out$2.puts__T__V((((ioName + " = new \\Kaitai\\Struct\\Stream(") + args) + ");")); return ioName }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { const x = $m_Lio_kaitai_struct_format_ParentIdentifier$(); let jsx$1; if (x.equals__O__Z(attrName)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_format_RootIdentifier$(); jsx$1 = x$3.equals__O__Z(attrName) }; if ((!jsx$1)) { this.out$2.puts__T__V((((("public function " + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + "() { return ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName)) + "; }")) } }; fileHeader__T__V(topClassName) { this.out$2.puts__T__V("*/ }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = ();")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = ();")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ();")); this.out$2.puts__T__V("do {"); this.out$2.inc__V() }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; switchIfElseStart__V() { this.out$2.puts__T__V("else {"); this.out$2.inc__V() }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V((("if (" + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())) + ") {")); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(id, on, onType, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(this, id, on, onType, cases, normalCaseProc, elseCaseProc) }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("sub " + instName.name$2) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V("my ($self) = @_;") }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = ();")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = ();")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ();")); this.out$2.puts__T__V((("while (!" + io) + "->is_eof()) {")); this.out$2.inc__V() }; switchIfStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__V(id, on, onType) { this.typeProvider$1.$$undcurrentSwitchType$1 = new $c_s_Some().init___O(this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(on)); this.out$2.puts__T__V((("my $_on = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ";")) }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { return (("$self->{" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) + "}") }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.out$2.puts__T__V((((io + "->seek(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + ");")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ";")) }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr) + ";")) }; condRepeatEosFooter__V() { this.universalFooter__V() }; pushPos__T__V(io) { this.out$2.puts__T__V((("my $_pos = " + io) + "->pos();")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { const endianSuffix = (isHybrid ? ", $_is_le" : ""); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("sub new {"); this.out$2.inc__V(); this.out$2.puts__T__V((("my ($class, $_io, $_parent, $_root" + endianSuffix) + ") = @_;")); this.out$2.puts__T__V((("my $self = " + $m_Lio_kaitai_struct_languages_PerlCompiler$().kstructName__T()) + "->new($_io);")); const this$2 = this.out$2; this$2.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("bless $self, $class;"); this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_ParentIdentifier$(), "$_parent"); this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_RootIdentifier$(), "$_root || $self;"); if (isHybrid) { this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_EndianIdentifier$(), "$_is_le") }; const this$3 = this.out$2; this$3.sb$2.append__T__scm_StringBuilder("\n") }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V((("my $io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx)) + ";")); return "$io" }; switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; return (((io + "->read_") + x6.apiCall__s_Option__T(defEndian)) + "()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; return (((io + "->read_bytes(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (io + "->read_bytes_full()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; return (((((((((io + "->read_bytes_term(") + terminator) + ", ") + this.translator$2.doBoolLiteral__Z__T(include)) + ", ") + this.translator$2.doBoolLiteral__Z__T(consume)) + ", ") + this.translator$2.doBoolLiteral__Z__T(eosError)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; return (((io + "->read_bits_int_") + bitEndian.toSuffix__T()) + "(1)") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; return (((((io + "->read_bits_int_") + bitEndian$2.toSuffix__T()) + "(") + width) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x10 = dataType; let addArgs; if (x10.isOpaque__Z()) { addArgs = "" } else { const x1$2 = x10.forcedParent$3; let parent; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp) } else { const x = $m_s_None$(); if ((!(x === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; parent = "$self" }; const x1$3 = x10.classSpec$3.get__O().meta$1.endian$1; let addEndian; matchEnd6: { if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const p3 = x2$3.value$2; const x$3 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$3 === p3)) { addEndian = (", " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())); break matchEnd6 } }; addEndian = "" }; addArgs = ((((", " + parent) + ", ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$())) + addEndian) }; return (((($m_Lio_kaitai_struct_languages_PerlCompiler$().types2class__sci_List__T(x10.classSpec$3.get__O().name$1) + "->new(") + io) + addArgs) + ")") } else { throw new $c_s_MatchError().init___O(dataType) } }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = this.importList$2; const this$3 = this$1.list$1.toList__sci_List(); const f = (function($this) { return (function(x$2) { const x = x$2; return (("use " + x) + ";") }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = this$3.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$3.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$4 = rest; rest = this$4.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$3, bf); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$5 = these; these = this$5.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T__T__T("", "\n", "\n") }; condRepeatExprFooter__V() { this.universalFooter__V() }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_PerlTranslator().init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(this.typeProvider$1, this.importList$2); return this }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; attrParse2$default$7__s_Option() { return $m_s_None$() }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x3 = id; const idx = x3.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x6 = id; return x6.name$2 } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x4 = id; const inner = x4.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(inner)) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$2 = x5.name$2; return name$2 } else { throw new $c_s_MatchError().init___O(id) } }; alignToByte__T__V(io) { this.out$2.puts__T__V((io + "->align_to_byte();")) }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return ("$_t_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; switchCaseEnd__V() { /**/ }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { let x1_$_$$und1$f; let x1_$_$$und2$f; if (isRaw) { const _2 = this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1); const jsx$1_$_$$und1$f = "my "; const jsx$1_$_$$und2$f = _2; x1_$_$$und1$f = jsx$1_$_$$und1$f; x1_$_$$und2$f = jsx$1_$_$$und2$f } else { const _2$1 = this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1); const jsx$2_$_$$und1$f = ""; const jsx$2_$_$$und2$f = _2$1; x1_$_$$und1$f = jsx$2_$_$$und1$f; x1_$_$$und2$f = jsx$2_$_$$und2$f }; const decl = x1_$_$$und1$f; const tmpName = x1_$_$$und2$f; this.out$2.puts__T__V(((((("" + decl) + tmpName) + " = ") + expr) + ";")); this.out$2.puts__T__V((((("push @{" + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id)) + "}, ") + tmpName) + ";")) }; opaqueClassDeclaration__Lio_kaitai_struct_format_ClassSpec__V(classSpec) { const jsx$1 = this.out$2; const name = classSpec.name$1.head__O(); jsx$1.puts__T__V((("use " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + ";")) }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V((("if (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + ") {")); this.out$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((("push @{" + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id)) + "}, ") + expr) + ";")) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "[$i] = ") + expr) + ";")) }; classHeader__sci_List__V(name) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("########################################################################"); this.out$2.puts__T__V((("package " + $m_Lio_kaitai_struct_languages_PerlCompiler$().types2class__sci_List__T(name)) + ";")); const this$2 = this.out$2; this$2.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("our @ISA = '" + $m_Lio_kaitai_struct_languages_PerlCompiler$().kstructName__T()) + "';")); const this$3 = this.out$2; this$3.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("sub from_file {"); this.out$2.inc__V(); this.out$2.puts__T__V("my ($class, $filename) = @_;"); this.out$2.puts__T__V("my $fd;"); const this$4 = this.out$2; this$4.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("open($fd, '<', $filename) or return undef;"); this.out$2.puts__T__V("binmode($fd);"); this.out$2.puts__T__V((("return new($class, " + $m_Lio_kaitai_struct_languages_PerlCompiler$().kstreamName__T()) + "->new($fd));")); this.universalFooter__V() }; readHeader__s_Option__Z__V(endian, isEmpty) { let suffix; if ((endian instanceof $c_s_Some)) { const x2 = endian; const e = x2.value$2; suffix = ("_" + e.toSuffix__T()) } else { const x = $m_s_None$(); if ((!(x === endian))) { throw new $c_s_MatchError().init___O(endian) }; suffix = "" }; const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("sub _read" + suffix) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V("my ($self) = @_;"); const this$2 = this.out$2; this$2.sb$2.append__T__scm_StringBuilder("\n") }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; innerClasses__Z() { return false }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { /**/ }; classConstructorFooter__V() { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("return $self;"); this.universalFooter__V() }; onComparisonExpr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr$Compare(condition) { return new $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr(new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T("_on")), $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(), condition) }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.out$2.puts__T__V((io + "->seek($_pos);")) }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr) ? (memberName + "[$i]") : (memberName + "[-1]")) } }; runReadCalc__V() { const isLe = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$()); this.out$2.puts__T__V((("if (!(defined " + isLe) + ")) {")); this.out$2.inc__V(); this.out$2.puts__T__V("die \"Unable to decide on endianness\";"); this.out$2.dec__V(); this.out$2.puts__T__V((("} elsif (" + isLe) + ") {")); this.out$2.inc__V(); this.out$2.puts__T__V("$self->_read_le();"); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); this.out$2.puts__T__V("$self->_read_be();"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; outFileName__T__T(topClassName) { return ($m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(topClassName) + ".pm") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; readFooter__V() { this.universalFooter__V() }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = ();")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = ();")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ();")); const nVar = ("$n_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)); this.out$2.puts__T__V((((("my " + nVar) + " = ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ";")); this.out$2.puts__T__V((("for (my $i = 0; $i < " + nVar) + "; $i++) {")); this.out$2.inc__V() }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { /**/ }; fileFooter__T__V(topClassName) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("1;") }; classFooter__sci_List__V(name) { /**/ }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; instanceFooter__V() { this.universalFooter__V() }; runRead__sci_List__V(name) { this.out$2.puts__T__V("$self->_read();") }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = ((((($m_Lio_kaitai_struct_languages_PerlCompiler$().kstreamName__T() + "::bytes_strip_right(") + expr0) + ", ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = ((((((($m_Lio_kaitai_struct_languages_PerlCompiler$().kstreamName__T() + "::bytes_terminate(") + expr1) + ", ") + term) + ", ") + this.translator$2.doBoolLiteral__Z__T(include)) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; switchIfEnd__V() { /**/ }; switchIfCaseEnd__V() { this.universalFooter__V() }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.universalFooter__V() }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; switchElseStart__V() { /**/ }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, enumName$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); $this.out$2.puts__T__V((((("our " + $this.enumValue__T__T__T(enumName$1, label.name$1)) + " = ") + new $c_sjsr_RuntimeLong().init___I__I(lo, hi)) + ";")) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, enumName))) }; switchIfCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { const jsx$1 = this.out$2; const e = this.onComparisonExpr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr$Compare(condition); jsx$1.puts__T__V((("if (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ") {")); this.out$2.inc__V() }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.out$2.puts__T__V((((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + " if (") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ");")) }; switchRequiresIfs__Lio_kaitai_struct_datatype_DataType__Z(onType) { return true }; indent__T() { return " " }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; const x1$2 = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(xorValue); let procName; if ((x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { procName = "process_xor_one" } else { if ((!(x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { throw new $c_s_MatchError().init___O(x1$2) }; procName = "process_xor_many" }; expr$2 = ((((((($m_Lio_kaitai_struct_languages_PerlCompiler$().kstreamName__T() + "::") + procName) + "(") + srcExpr) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "Compress::Zlib"); expr$2 = (("Compress::Zlib::uncompress(" + srcExpr) + ")") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate))) { throw new $c_s_MatchError().init___O(proc) }; const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = ((((($m_Lio_kaitai_struct_languages_PerlCompiler$().kstreamName__T() + "::process_rotate_left(") + srcExpr) + ", ") + expr) + ", 1)") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; switchIfCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { const jsx$1 = this.out$2; const e = this.onComparisonExpr__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr$Compare(condition); jsx$1.puts__T__V((("elsif (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ") {")); this.out$2.inc__V() }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.dec__V(); this.out$2.puts__T__V((("} until (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr)) + ");")) }; universalFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(this, instName, dataType, value) }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep) { this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id); const args = ((rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil) ? this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1) : this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep)); const ioName = ("$io_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)); this.out$2.puts__T__V((((((("my " + ioName) + " = ") + $m_Lio_kaitai_struct_languages_PerlCompiler$().kstreamName__T()) + "->new(") + args) + ");")); return ioName }; fileHeader__T__V(topClassName) { this.outHeader$2.puts__T__V("# This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); const this$1 = this.outHeader$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "strict"); const this$3 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$3.list$1, "warnings"); const this$4 = this.importList$2; const s = ("IO::KaitaiStruct " + $m_Lio_kaitai_struct_format_KSVersion$().minimalRuntime$1.toPerlVersion__T()); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$4.list$1, s) }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { const x = $m_Lio_kaitai_struct_format_RootIdentifier$(); let jsx$1; if (x.equals__O__Z(attrName)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_format_ParentIdentifier$(); jsx$1 = x$3.equals__O__Z(attrName) }; if ((!jsx$1)) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("sub " + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V("my ($self) = @_;"); this.out$2.puts__T__V((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")); this.universalFooter__V() } }; enumValue__T__T__T(enumName, enumLabel) { const jsx$1 = this.translator$2; $m_sci_List$(); const array = [enumName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; return jsx$1.doEnumByLabel__sci_List__T__T(result, enumLabel) }; } const $d_Lio_kaitai_struct_languages_PerlCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_PerlCompiler: 0 }, false, "io.kaitai.struct.languages.PerlCompiler", { Lio_kaitai_struct_languages_PerlCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_SingleOutputFile: 1, Lio_kaitai_struct_languages_components_UniversalFooter: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_AllocateIOLocalVar: 1, Lio_kaitai_struct_languages_components_FixedContentsUsingArrayByteLiteral: 1, Lio_kaitai_struct_languages_components_SwitchIfOps: 1, Lio_kaitai_struct_languages_components_EveryReadIsExpression: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_CommonReads: 1 }); $c_Lio_kaitai_struct_languages_PerlCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_PerlCompiler; class $c_Lio_kaitai_struct_languages_RustCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.translator$2 = null; this.switchIfs$2 = false; this.NAME$undSWITCH$undON$2 = null; this.outHeader$2 = null; this.out$2 = null; this.importList$2 = null }; classHeader__sci_List__s_Option__V(name, parentClass) { this.out$2.puts__T__V("#[derive(Default)]"); this.out$2.puts__T__V((("pub struct " + $m_Lio_kaitai_struct_languages_RustCompiler$().types2classRel__sci_List__T(name)) + " {")) }; switchEnd__V() { this.universalFooter__V() }; instanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.out$2.puts__T__V(((((" pub " + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + ": Option<") + this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attrType)) + ">,")) }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = vec!();")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = vec!();")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = vec!();")); this.out$2.puts__T__V("while {"); this.out$2.inc__V() }; paramName__Lio_kaitai_struct_format_Identifier__T(id) { return ("" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attrType) { let rc69 = false; let x2 = null; let rc70 = false; let x4 = null; let rc71 = false; let x30 = null; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$Int1Type)) { rc69 = true; x2 = attrType; const p3 = x2.signed$3; if ((p3 === false)) { return "u8" } }; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$IntMultiType)) { rc70 = true; x4 = attrType; const p5 = x4.signed$3; const p6 = x4.width$3; let jsx$1; if ((p5 === false)) { const x = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$1 = (x === p6) } else { jsx$1 = false }; if (jsx$1) { return "u16" } }; if (rc70) { const p9 = x4.signed$3; const p10 = x4.width$3; let jsx$2; if ((p9 === false)) { const x$3 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$2 = (x$3 === p10) } else { jsx$2 = false }; if (jsx$2) { return "u32" } }; if (rc70) { const p13 = x4.signed$3; const p14 = x4.width$3; let jsx$3; if ((p13 === false)) { const x$5 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$3 = (x$5 === p14) } else { jsx$3 = false }; if (jsx$3) { return "u64" } }; if (rc69) { const p17 = x2.signed$3; if ((p17 === true)) { return "i8" } }; if (rc70) { const p19 = x4.signed$3; const p20 = x4.width$3; let jsx$4; if ((p19 === true)) { const x$7 = $m_Lio_kaitai_struct_datatype_DataType$Width2$(); jsx$4 = (x$7 === p20) } else { jsx$4 = false }; if (jsx$4) { return "i16" } }; if (rc70) { const p23 = x4.signed$3; const p24 = x4.width$3; let jsx$5; if ((p23 === true)) { const x$9 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); jsx$5 = (x$9 === p24) } else { jsx$5 = false }; if (jsx$5) { return "i32" } }; if (rc70) { const p27 = x4.signed$3; const p28 = x4.width$3; let jsx$6; if ((p27 === true)) { const x$11 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); jsx$6 = (x$11 === p28) } else { jsx$6 = false }; if (jsx$6) { return "i64" } }; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$FloatMultiType)) { rc71 = true; x30 = attrType; const p31 = x30.width$3; const x$13 = $m_Lio_kaitai_struct_datatype_DataType$Width4$(); if ((x$13 === p31)) { return "f32" } }; if (rc71) { const p34 = x30.width$3; const x$15 = $m_Lio_kaitai_struct_datatype_DataType$Width8$(); if ((x$15 === p34)) { return "f64" } }; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { return "u64" }; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$BooleanType)) { return "bool" }; const x$17 = $m_Lio_kaitai_struct_datatype_DataType$CalcIntType$(); if ((x$17 === attrType)) { return "i32" }; const x$19 = $m_Lio_kaitai_struct_datatype_DataType$CalcFloatType$(); if ((x$19 === attrType)) { return "f64" }; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { return "String" }; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { return "Vec" }; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x60 = attrType; const x1$2 = x60.classSpec$3; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const cs = x2$2.value$2; const names = cs.name$1; return (("Box<" + $m_Lio_kaitai_struct_languages_RustCompiler$().types2classRel__sci_List__T(names)) + ">") } else { const x$21 = $m_s_None$(); if ((x$21 === x1$2)) { const names$1 = x60.name$3; return (("Box<" + $m_Lio_kaitai_struct_languages_RustCompiler$().types2classRel__sci_List__T(names$1)) + ">") } else { throw new $c_s_MatchError().init___O(x1$2) } } }; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) { const x61 = attrType; const x1$3 = x61.enumSpec$1; if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const cs$2 = x2$3.value$2; const names$2 = cs$2.name$1; return (("Box<" + $m_Lio_kaitai_struct_languages_RustCompiler$().types2classRel__sci_List__T(names$2)) + ">") } else { const x$23 = $m_s_None$(); if ((x$23 === x1$3)) { const names$3 = x61.name$1; return (("Box<" + $m_Lio_kaitai_struct_languages_RustCompiler$().types2classRel__sci_List__T(names$3)) + ">") } else { throw new $c_s_MatchError().init___O(x1$3) } } }; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { const x62 = attrType; return (("Vec<" + this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(x62.elType$2)) + ">") }; const x$25 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$(); let jsx$7; if ((x$25 === attrType)) { jsx$7 = true } else { const x$27 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$(); jsx$7 = (x$27 === attrType) }; if (jsx$7) { return "Option>" }; const x$29 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$(); let jsx$8; if ((x$29 === attrType)) { jsx$8 = true } else { const x$31 = $m_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType$(); jsx$8 = (x$31 === attrType) }; if (jsx$8) { return "Option>" }; if ((attrType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) { const x67 = attrType; return this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(x67.combinedType__Lio_kaitai_struct_datatype_DataType()) }; throw new $c_s_MatchError().init___O(attrType) }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V("if ($this->_m__is_le) {"); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.out$2.puts__T__V((((("fn " + this.idToStr__Lio_kaitai_struct_format_Identifier__T(instName)) + "(&mut self) -> ") + this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(dataType)) + " {")); this.out$2.inc__V() }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = [];")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = [];")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = [];")); this.out$2.puts__T__V((("while !" + io) + ".isEof() {")); this.out$2.inc__V() }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { const x = $m_Lio_kaitai_struct_format_IoIdentifier$(); if (x.equals__O__Z(id)) { return "self.stream" } else { const x$3 = $m_Lio_kaitai_struct_format_RootIdentifier$(); if (x$3.equals__O__Z(id)) { return "_root" } else { const x$5 = $m_Lio_kaitai_struct_format_ParentIdentifier$(); if (x$5.equals__O__Z(id)) { return "_parent" } else { return ("self." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) } } } }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.out$2.puts__T__V((((io + ".seek(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + ");")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ";")) }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr) + ";")) }; switchElseEnd__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condRepeatEosFooter__V() { this.universalFooter__V() }; pushPos__T__V(io) { this.out$2.puts__T__V((("let _pos = " + io) + ".pos();")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { this.out$2.puts__T__V("}"); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("impl KaitaiStruct for " + $m_Lio_kaitai_struct_languages_RustCompiler$().types2classRel__sci_List__T(name)) + " {")); this.out$2.inc__V(); this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()); this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_ParentIdentifier$()); this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$()); this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(parentType); this.out$2.puts__T__V("fn new(stream: &mut S,"); this.out$2.puts__T__V(" _parent: &Option>,"); this.out$2.puts__T__V(" _root: &Option>)"); this.out$2.puts__T__V(" -> Result"); this.out$2.inc__V(); this.out$2.puts__T__V("where Self: Sized {"); this.out$2.puts__T__V("let mut s: Self = Default::default();"); const this$2 = this.out$2; this$2.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("s.stream = stream;"); this.out$2.puts__T__V("s.read(stream, _parent, _root)?;"); const this$3 = this.out$2; this$3.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("Ok(s)"); this.out$2.dec__V(); this.out$2.puts__T__V("}"); const this$4 = this.out$2; this$4.sb$2.append__T__scm_StringBuilder("\n") }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V((("let mut io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx)) + ";")); return "io" }; switchCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { if (this.switchIfs$2) { this.out$2.puts__T__V((("if " + this.switchCmpExpr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + " {")); this.out$2.inc__V() } else { this.switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) } }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; return (((io + ".read_") + x6.apiCall__s_Option__T(defEndian)) + "()?") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; return (((io + ".read_bytes(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ")?") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (io + ".read_bytes_full()?") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; return (((((((((io + ".read_bytes_term(") + terminator) + ", ") + include) + ", ") + consume) + ", ") + eosError) + ")?") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { return (io + ".read_bits_int(1)? != 0") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; return (((io + ".read_bits_int(") + width) + ")?") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x10 = dataType; const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const jsx$2 = x10.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2), "", ", ", ", "); if (x10.isOpaque__Z()) { /**/ } else { let rc8 = false; let x2$2 = null; const x1$2 = x10.forcedParent$3; let parent; matchEnd9: { if ((x1$2 instanceof $c_s_Some)) { rc8 = true; x2$2 = x1$2; const p3 = x2$2.value$2; const x = $m_Lio_kaitai_struct_datatype_DataType$().USER$undTYPE$undNO$undPARENT$1; if (((x === null) ? (p3 === null) : x.equals__O__Z(p3))) { parent = "null"; break matchEnd9 } }; if (rc8) { const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp); break matchEnd9 }; const x$3 = $m_s_None$(); if ((x$3 === x1$2)) { parent = "self"; break matchEnd9 }; throw new $c_s_MatchError().init___O(x1$2) }; const x1$3 = x10.classSpec$3.get__O().meta$1.endian$1; let addEndian; matchEnd6: { if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const p3$2 = x2$3.value$2; const x$5 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$5 === p3$2)) { addEndian = (", " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())); break matchEnd6 } }; addEndian = "" }; this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$()) }; return (("Box::new(" + this.translator$2.types2classAbs__sci_List__T(x10.classSpec$3.get__O().name$1)) + "::new(self.stream, self, _root)?)") } else { throw new $c_s_MatchError().init___O(dataType) } }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = this.importList$2; const this$3 = this$1.list$1.toList__sci_List(); const f = (function($this) { return (function(x$2) { const x = x$2; return (("use " + x) + ";") }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = this$3.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$3.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$4 = rest; rest = this$4.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$3, bf); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$5 = these; these = this$5.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T__T__T("", "\n", "\n") }; condRepeatExprFooter__V() { this.universalFooter__V() }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_RustTranslator().init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_RuntimeConfig(this.typeProvider$1, this.config$1); this.switchIfs$2 = false; this.NAME$undSWITCH$undON$2 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T($m_Lio_kaitai_struct_format_Identifier$().SWITCH$undON$1)); return this }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; attrParse2$default$7__s_Option() { return $m_s_None$() }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$2) } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$3 = x5.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$3) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x6 = id; const innerId = x6.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } }; alignToByte__T__V(io) { this.out$2.puts__T__V((io + ".alignToByte();")) }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return ("$_t_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; innerEnums__Z() { return false }; switchCaseEnd__V() { if (this.switchIfs$2) { this.out$2.dec__V(); this.out$2.puts__T__V("}") } else { this.out$2.dec__V(); this.out$2.puts__T__V("},") } }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { const tempVar = (isRaw ? this.translator$2.doLocalName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1) : this.translator$2.doLocalName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1)); this.out$2.puts__T__V((((("let " + tempVar) + " = ") + expr) + ";")); this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".append(") + expr) + ");")) }; opaqueClassDeclaration__Lio_kaitai_struct_format_ClassSpec__V(classSpec) { const this$1 = classSpec.name$1; const name = $f_sc_LinearSeqOptimized__last__O(this$1); const name$1 = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name); const names = classSpec.name$1; const pkg = $f_sc_TraversableOnce__mkString__T__T__T__T(names, "", "::", ""); const this$2 = this.importList$2; const s = ((pkg + "::") + name$1); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, s) }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { const x = $m_Lio_kaitai_struct_format_ParentIdentifier$(); let jsx$1; if (x.equals__O__Z(attrName)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_format_RootIdentifier$(); if (x$3.equals__O__Z(attrName)) { jsx$1 = true } else { const x$5 = $m_Lio_kaitai_struct_format_IoIdentifier$(); jsx$1 = x$5.equals__O__Z(attrName) } }; if ((!jsx$1)) { const x$7 = $m_Lio_kaitai_struct_format_IoIdentifier$(); if (x$7.equals__O__Z(attrName)) { this.out$2.puts__T__V(((" stream: " + this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attrType)) + ",")) } else { this.out$2.puts__T__V(((((" pub " + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + ": ") + this.kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(attrType)) + ",")) } } }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V((("if " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + " {")); this.out$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".push(") + expr) + ");")) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".push(") + expr) + ");")) }; classHeader__sci_List__V(name) { this.classHeader__sci_List__s_Option__V(name, new $c_s_Some().init___O("&Option>")) }; readHeader__s_Option__Z__V(endian, isEmpty) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("fn read(&mut self,"); this.out$2.puts__T__V(" stream: &mut S,"); this.out$2.puts__T__V(" _parent: &Option>,"); this.out$2.puts__T__V(" _root: &Option>)"); this.out$2.puts__T__V(" -> Result<()>"); this.out$2.inc__V(); this.out$2.puts__T__V("where Self: Sized {") }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; innerClasses__Z() { return false }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { if (this.switchIfs$2) { this.out$2.puts__T__V((("else if " + this.switchCmpExpr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + " {")); this.out$2.inc__V() } else { this.out$2.puts__T__V(($f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition) + " => {")); this.out$2.inc__V() } }; classConstructorFooter__V() { this.universalFooter__V() }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.out$2.puts__T__V((io + ".seek(_pos);")) }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return (memberName + ".last()") } }; instanceDeclHeader__sci_List__V(className) { this.out$2.dec__V(); this.out$2.puts__T__V("}"); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("impl " + $m_Lio_kaitai_struct_languages_RustCompiler$().types2classRel__sci_List__T(className)) + " {")); this.out$2.inc__V() }; runReadCalc__V() { /**/ }; outFileName__T__T(topClassName) { return (topClassName + ".rs") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; readFooter__V() { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("Ok(())"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = vec!();")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = vec!();")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = vec!();")); this.out$2.puts__T__V((("for i in 0.." + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + " {")); this.out$2.inc__V() }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { const onType = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(on); this.switchIfs$2 = ((onType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream) || (onType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)); if ((!this.switchIfs$2)) { this.out$2.puts__T__V((("match " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + " {")); this.out$2.inc__V() } }; switchCmpExpr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition) { const e = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr(this.NAME$undSWITCH$undON$2, $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(), condition); return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e) }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { if (doc.summary$1.isDefined__Z()) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("/*"); const this$2 = doc.summary$1; if ((!this$2.isEmpty__Z())) { const arg1 = this$2.get__O(); const summary = arg1; this.out$2.putsLines__T__T__T__V(" * ", summary, "") }; this.out$2.puts__T__V(" */") } }; classFooter__sci_List__V(name) { this.universalFooter__V() }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; instanceFooter__V() { this.universalFooter__V() }; runRead__sci_List__V(name) { /**/ }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((("&mut S::bytesStripRight(" + expr0) + ", ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((("&mut S::bytesTerminate(" + expr1) + ", ") + term) + ", ") + include) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.universalFooter__V() }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; switchElseStart__V() { if (this.switchIfs$2) { this.out$2.puts__T__V("else {"); this.out$2.inc__V() } else { this.out$2.puts__T__V("_ => {"); this.out$2.inc__V() } }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { $m_sci_List$(); const array = [enumName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; const names = result.$$colon$colon$colon__sci_List__sci_List(curClass); const enumClass = $m_Lio_kaitai_struct_languages_RustCompiler$().types2classRel__sci_List__T(names); this.out$2.puts__T__V((("enum " + enumClass) + " {")); this.out$2.inc__V(); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const label = x0$1.$$und2__O(); $this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(label.doc$1); const jsx$1 = $this.out$2; const label$1 = label.name$1; $m_Lio_kaitai_struct_Utils$(); jsx$1.puts__T__V((label$1.toUpperCase() + ",")) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.out$2.puts__T__V((("if let Some(x) = " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + " {")); this.out$2.inc__V(); this.out$2.puts__T__V("return x;"); this.out$2.dec__V(); this.out$2.puts__T__V("}"); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; indent__T() { return " " }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; const x1$2 = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(xorValue); let procName; if ((x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { procName = "processXorOne" } else { if ((!(x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { throw new $c_s_MatchError().init___O(x1$2) }; procName = "processXorMany" }; expr$2 = (((((("&mut S::" + procName) + "(") + srcExpr) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { expr$2 = (("&mut S::processZlib(" + srcExpr) + ");") } else if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((("&mut S::processRotateLeft(" + srcExpr) + ", ") + expr) + ", 1)") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; const x4 = proc; const name = x4.name$1; const args = x4.args$1; let procClass; if (($f_sc_LinearSeqOptimized__length__I(name) === 1)) { const onlyName = name.head__O(); const className = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(onlyName); const this$1 = this.importList$2; const s = ((onlyName + "::") + className); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, s); procClass = className } else { const names = $f_sc_TraversableLike__init__O(name); const pkgName = $f_sc_TraversableOnce__mkString__T__T__T__T(names, "", "::", ""); const name$1 = $f_sc_LinearSeqOptimized__last__O(name); const className$2 = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$1); const this$2 = this.importList$2; const s$1 = ((pkgName + "::") + className$2); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, s$1); procClass = ((pkgName + "::") + className$2) }; const jsx$2 = this.out$2; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(e$2) { const e = e$2; return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T($this, e) }) })(this)); const this$3 = $m_sc_Seq$(); jsx$2.puts__T__V((((("let _process = " + procClass) + "::new(") + args.map__F1__scg_CanBuildFrom__O(jsx$1, this$3.ReusableCBFInstance$2).mkString__T__T(", ")) + ");")); expr$2 = (("_process.decode(" + srcExpr) + ")") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.puts__T__V((("!(" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr)) + ")")); this.out$2.dec__V(); this.out$2.puts__T__V("} { }") }; universalFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(this, instName, dataType, value) }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep) { this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id); const args = ((rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil) ? this.translator$2.doLocalName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1) : this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep)); this.out$2.puts__T__V((("let mut io = Cursor::new(" + args) + ");")); return "io" }; fileHeader__T__V(topClassName) { this.outHeader$2.puts__T__V("// This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); const this$1 = this.outHeader$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "std::option::Option"); const this$3 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$3.list$1, "std::boxed::Box"); const this$4 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$4.list$1, "std::io::Result"); const this$5 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$5.list$1, "std::io::Cursor"); const this$6 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$6.list$1, "std::vec::Vec"); const this$7 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$7.list$1, "std::default::Default"); const this$8 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$8.list$1, "kaitai_struct::KaitaiStream"); const this$9 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$9.list$1, "kaitai_struct::KaitaiStruct"); const this$10 = this.out$2; this$10.sb$2.append__T__scm_StringBuilder("\n") }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; } const $d_Lio_kaitai_struct_languages_RustCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_RustCompiler: 0 }, false, "io.kaitai.struct.languages.RustCompiler", { Lio_kaitai_struct_languages_RustCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_SingleOutputFile: 1, Lio_kaitai_struct_languages_components_AllocateIOLocalVar: 1, Lio_kaitai_struct_languages_components_UniversalFooter: 1, Lio_kaitai_struct_languages_components_UniversalDoc: 1, Lio_kaitai_struct_languages_components_FixedContentsUsingArrayByteLiteral: 1, Lio_kaitai_struct_languages_components_EveryReadIsExpression: 1, Lio_kaitai_struct_languages_components_CommonReads: 1 }); $c_Lio_kaitai_struct_languages_RustCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_RustCompiler; const $f_sci_MapLike__$$plus$plus__sc_GenTraversableOnce__sci_Map = (function($thiz, xs) { const x$1 = $thiz; return xs.seq__sc_TraversableOnce().$$div$colon__O__F2__O(x$1, new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(x$2$2, x$3$2) { const x$2 = x$2$2; const x$3 = x$3$2; return x$2.$$plus__T2__sci_Map(x$3) }) })($thiz))) }); class $c_Lio_kaitai_struct_languages_CSharpCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.translator$2 = null; this.NAME$undSWITCH$undON$2 = null; this.outHeader$2 = null; this.out$2 = null; this.importList$2 = null }; switchEnd__V() { this.out$2.puts__T__V("}") }; instanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.out$2.puts__T__V((("private bool " + this.flagForInstName__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")); this.out$2.puts__T__V((((("private " + $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeTypeNullable__Lio_kaitai_struct_datatype_DataType__Z__T(attrType, isNullable)) + " ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")) }; instanceHeader__T__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.out$2.puts__T__V(((("public " + $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeTypeNullable__Lio_kaitai_struct_datatype_DataType__Z__T(dataType, isNullable)) + " ") + this.publicMemberName__Lio_kaitai_struct_format_Identifier__T(instName))); this.out$2.puts__T__V("{"); this.out$2.inc__V(); this.out$2.puts__T__V("get"); this.out$2.puts__T__V("{"); this.out$2.inc__V() }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "System.Collections.Generic"); if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = new List();")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = new List();")) }; this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = new ") + $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(dataType))) + "();")); this.out$2.puts__T__V("{"); this.out$2.inc__V(); this.out$2.puts__T__V("var i = 0;"); this.out$2.puts__T__V(((($m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(dataType) + " ") + this.translator$2.doName__T__T("_")) + ";")); this.out$2.puts__T__V("do {"); this.out$2.inc__V() }; paramName__Lio_kaitai_struct_format_Identifier__T(id) { return ("p_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; switchIfElseStart__V() { this.out$2.puts__T__V("else"); this.out$2.puts__T__V("{"); this.out$2.inc__V() }; classHeader__T__V(name) { this.out$2.puts__T__V((("public partial class " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + " : KaitaiStruct")); this.out$2.puts__T__V("{"); this.out$2.inc__V(); if (this.typeProvider$1.nowClass$1.params$1.isEmpty__Z()) { this.out$2.puts__T__V((("public static " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + " FromFile(string fileName)")); this.out$2.puts__T__V("{"); this.out$2.inc__V(); this.out$2.puts__T__V((("return new " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + "(new KaitaiStream(fileName));")); this.out$2.dec__V(); this.out$2.puts__T__V("}"); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") } }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V((("if (" + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())) + " == true) {")); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(id, on, onType, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(this, id, on, onType, cases, normalCaseProc, elseCaseProc) }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.instanceHeader__T__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V($f_sc_LinearSeqOptimized__last__O(className), instName, dataType, isNullable) }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "System.Collections.Generic"); if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = new List();")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = new List();")) }; this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = new ") + $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(dataType))) + "();")); this.out$2.puts__T__V("{"); this.out$2.inc__V(); this.out$2.puts__T__V("var i = 0;"); this.out$2.puts__T__V((("while (!" + io) + ".IsEof) {")); this.out$2.inc__V() }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return ("m" + $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name)) } else { return ("_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) } }; switchIfStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__V(id, on, onType) { this.out$2.puts__T__V("{"); this.out$2.inc__V(); const jsx$2 = this.out$2; const jsx$1 = $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(onType); const e = this.NAME$undSWITCH$undON$2; jsx$2.puts__T__V((((((jsx$1 + " ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + " = ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ";")) }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.out$2.puts__T__V((((io + ".Seek(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + ");")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ";")) }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr) + ";")) }; attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, attrType, checkExpr, err, errArgs) { const f = (function($this) { return (function(v$2) { const v = v$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((errArgs === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = errArgs.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = errArgs.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(errArgs, bf); let these = errArgs; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const errArgsStr = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V((("if (!(" + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(checkExpr)) + "))")); this.out$2.puts__T__V("{"); this.out$2.inc__V(); this.out$2.puts__T__V((((("throw new " + $m_Lio_kaitai_struct_languages_CSharpCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err)) + "(") + errArgsStr) + ");")); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condRepeatEosFooter__V() { this.out$2.puts__T__V("i++;"); this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; blockScopeHeader__V() { this.out$2.puts__T__V("{"); this.out$2.inc__V() }; blockScopeFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; pushPos__T__V(io) { this.out$2.puts__T__V((("long _pos = " + io) + ".Pos;")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { this.classConstructorHeader__T__Lio_kaitai_struct_datatype_DataType__T__Z__sci_List__V($f_sc_LinearSeqOptimized__last__O(name), parentType, $f_sc_LinearSeqOptimized__last__O(rootClassName), isHybrid, params) }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V((("KaitaiStream io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx)) + ";")); return "io" }; switchCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) }; switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; return (((io + ".Read") + $m_Lio_kaitai_struct_Utils$().capitalize__T__T(x6.apiCall__s_Option__T(defEndian))) + "()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; return (((io + ".ReadBytes(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (io + ".ReadBytesFull()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; return (((((((((io + ".ReadBytesTerm(") + terminator) + ", ") + include) + ", ") + consume) + ", ") + eosError) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; return (((io + ".ReadBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(bitEndian.toSuffix__T())) + "(1) != 0") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; return (((((io + ".ReadBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(bitEndian$2.toSuffix__T())) + "(") + width) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x10 = dataType; const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const jsx$2 = x10.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); const addParams = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2), "", ", ", ", "); let addArgs; if (x10.isOpaque__Z()) { addArgs = "" } else { let rc8 = false; let x2$2 = null; const x1$2 = x10.forcedParent$3; let parent; matchEnd9: { if ((x1$2 instanceof $c_s_Some)) { rc8 = true; x2$2 = x1$2; const p3 = x2$2.value$2; const x = $m_Lio_kaitai_struct_datatype_DataType$().USER$undTYPE$undNO$undPARENT$1; if (((x === null) ? (p3 === null) : x.equals__O__Z(p3))) { parent = "null"; break matchEnd9 } }; if (rc8) { const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp); break matchEnd9 }; const x$3 = $m_s_None$(); if ((x$3 === x1$2)) { parent = "this"; break matchEnd9 }; throw new $c_s_MatchError().init___O(x1$2) }; const x1$3 = x10.classSpec$3.get__O().meta$1.endian$1; let addEndian; matchEnd6: { if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const p3$2 = x2$3.value$2; const x$5 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$5 === p3$2)) { addEndian = (", " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())); break matchEnd6 } }; addEndian = "" }; addArgs = ((((", " + parent) + ", ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$())) + addEndian) }; return (((((("new " + $m_Lio_kaitai_struct_languages_CSharpCompiler$().types2class__sc_Iterable__T(x10.name$3)) + "(") + addParams) + io) + addArgs) + ")") } else { throw new $c_s_MatchError().init___O(dataType) } }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = this.importList$2; const this$3 = this$1.list$1.toList__sci_List(); const f = (function($this) { return (function(x$2) { const x = x$2; return (("using " + x) + ";") }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = this$3.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$3.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$4 = rest; rest = this$4.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$3, bf); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$5 = these; these = this$5.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T__T__T("", "\n", "\n") }; condRepeatExprFooter__V() { this.fileFooter__T__V(null) }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_CSharpTranslator().init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(this.typeProvider$1, this.importList$2); this.NAME$undSWITCH$undON$2 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T($m_Lio_kaitai_struct_format_Identifier$().SWITCH$undON$1)); return this }; attrParse2$default$7__s_Option() { return $m_s_None$() }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { this.out$2.puts__T__V(((((($m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(dataType) + " ") + id) + " = ") + expr) + ";")) }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$2) } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$3 = x5.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$3) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x6 = id; const innerId = x6.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return ("_t_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; alignToByte__T__V(io) { this.out$2.puts__T__V((io + ".AlignToByte();")) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; switchCaseEnd__V() { this.out$2.puts__T__V("break;"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { let x1_$_$$und1$f; let x1_$_$$und2$f; if (isRaw) { const _2 = this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1); const jsx$1_$_$$und1$f = "byte[] "; const jsx$1_$_$$und2$f = _2; x1_$_$$und1$f = jsx$1_$_$$und1$f; x1_$_$$und2$f = jsx$1_$_$$und2$f } else { const _2$1 = this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1); const jsx$2_$_$$und1$f = ""; const jsx$2_$_$$und2$f = _2$1; x1_$_$$und1$f = jsx$2_$_$$und1$f; x1_$_$$und2$f = jsx$2_$_$$und2$f }; const typeDecl = x1_$_$$und1$f; const tempVar = x1_$_$$und2$f; this.out$2.puts__T__V(((((("" + typeDecl) + tempVar) + " = ") + expr) + ";")); this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".Add(") + tempVar) + ");")) }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.out$2.puts__T__V((((("private " + $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeTypeNullable__Lio_kaitai_struct_datatype_DataType__Z__T(attrType, isNullable)) + " ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")) }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V((("if (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + ") {")); this.out$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".Add(") + expr) + ");")) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".Add(") + expr) + ");")) }; readHeader__s_Option__Z__V(endian, isEmpty) { const readAccessAndType = ((!this.config$1.autoRead$1) ? "public" : "private"); let suffix; if ((endian instanceof $c_s_Some)) { const x2 = endian; const e = x2.value$2; $m_Lio_kaitai_struct_Utils$(); const s = e.toSuffix__T(); suffix = s.toUpperCase() } else { const x = $m_s_None$(); if ((!(x === endian))) { throw new $c_s_MatchError().init___O(endian) }; suffix = "" }; this.out$2.puts__T__V((((readAccessAndType + " void _read") + suffix) + "()")); this.out$2.puts__T__V("{"); this.out$2.inc__V() }; classHeader__sci_List__V(name) { this.classHeader__T__V($f_sc_LinearSeqOptimized__last__O(name)) }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("case " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ": {")); this.out$2.inc__V() }; classConstructorFooter__V() { this.fileFooter__T__V(null) }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.out$2.puts__T__V((io + ".Seek(_pos);")) }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return (((memberName + "[") + memberName) + ".Count - 1]") } }; runReadCalc__V() { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("if (" + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())) + " == null) {")); this.out$2.inc__V(); const jsx$1 = this.out$2; const err = $m_Lio_kaitai_struct_datatype_UndecidedEndiannessError$(); jsx$1.puts__T__V((("throw new " + $m_Lio_kaitai_struct_languages_CSharpCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err)) + "();")); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "System"); this.out$2.dec__V(); this.out$2.puts__T__V((("} else if (" + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())) + " == true) {")); this.out$2.inc__V(); this.out$2.puts__T__V("_readLE();"); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); this.out$2.puts__T__V("_readBE();"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; outFileName__T__T(topClassName) { return ($m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(topClassName) + ".cs") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; readFooter__V() { this.fileFooter__T__V("") }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "System.Collections.Generic"); if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = new List((int) (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + "));")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = new List((int) (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + "));")) }; this.out$2.puts__T__V((((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = new ") + $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(dataType))) + "((int) (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + "));")); this.out$2.puts__T__V((("for (var i = 0; i < " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + "; i++)")); this.out$2.puts__T__V("{"); this.out$2.inc__V() }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { this.out$2.puts__T__V((("switch (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ") {")) }; fileFooter__T__V(topClassName) { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; switchCmpExpr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition) { const e = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr(this.NAME$undSWITCH$undON$2, $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(), condition); return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e) }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const this$2 = doc.summary$1; if ((!this$2.isEmpty__Z())) { const arg1 = this$2.get__O(); const summary = arg1; this.out$2.puts__T__V("/// "); this.out$2.putsLines__T__T__T__V("/// ", $m_Lio_kaitai_struct_XMLUtils$().escape__T__T(summary), ""); this.out$2.puts__T__V("/// ") }; const this$3 = doc.ref$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const docRef = arg1$1; this.out$2.puts__T__V("/// "); let refStr; if ((docRef instanceof $c_Lio_kaitai_struct_format_TextRef)) { const x2 = docRef; const text = x2.text$1; refStr = $m_Lio_kaitai_struct_XMLUtils$().escape__T__T(text) } else { if ((!(docRef instanceof $c_Lio_kaitai_struct_format_UrlRef))) { throw new $c_s_MatchError().init___O(docRef) }; const x3 = docRef; refStr = x3.toAhref__T() }; this.out$2.putsLines__T__T__T__V("/// ", ("Reference: " + refStr), ""); this.out$2.puts__T__V("/// "); const this$4 = these; these = this$4.tail__sci_List() } }; classFooter__sci_List__V(name) { const name$1 = $f_sc_LinearSeqOptimized__last__O(name); this.fileFooter__T__V(name$1) }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { const expr = ((!((assignType === null) ? (dataType === null) : assignType.equals__O__Z(dataType))) ? (((("((" + $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(dataType)) + ") (") + id) + "))") : id); this.out$2.puts__T__V((expr + "._read();")) }; instanceFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; instanceSetCalculated__Lio_kaitai_struct_format_InstanceIdentifier__V(instName) { this.out$2.puts__T__V((this.flagForInstName__Lio_kaitai_struct_format_Identifier__T(instName) + " = true;")) }; runRead__sci_List__V(name) { this.out$2.puts__T__V("_read();") }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; publicMemberName__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return ("M" + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$2) } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; const x = $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1; const this$2 = new $c_sci_StringOps().init___T(x); return (($f_sci_StringLike__capitalize__T(this$2) + "_") + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$3 = x5.name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$3) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x6 = id; const innerId = x6.innerId$2; return ("M_Raw" + this.publicMemberName__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((("KaitaiStream.BytesStripRight(" + expr0) + ", ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((("KaitaiStream.BytesTerminate(" + expr1) + ", ") + term) + ", ") + include) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; switchIfEnd__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; switchIfCaseEnd__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.fileFooter__T__V(null) }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; switchElseStart__V() { this.out$2.puts__T__V("default: {"); this.out$2.inc__V() }; enumDeclaration__T__T__sc_Seq__V(curClass, enumName, enumColl) { const enumClass = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(enumName); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V(("public enum " + enumClass)); this.out$2.puts__T__V("{"); this.out$2.inc__V(); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); $this.out$2.puts__T__V(((($m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(label) + " = ") + new $c_sjsr_RuntimeLong().init___I__I(lo, hi)) + ",")) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { $f_Lio_kaitai_struct_languages_components_NoNeedForFullClassPath__enumDeclaration__sci_List__T__sc_Seq__V(this, curClass, enumName, enumColl) }; switchIfCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("if (" + this.switchCmpExpr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + ")")); this.out$2.puts__T__V("{"); this.out$2.inc__V() }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.out$2.puts__T__V((("if (" + this.flagForInstName__Lio_kaitai_struct_format_Identifier__T(instName)) + ")")); this.out$2.inc__V(); this.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.out$2.dec__V() }; switchRequiresIfs__Lio_kaitai_struct_datatype_DataType__Z(onType) { return (!((onType instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType) || ((onType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType) || (onType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)))) }; indent__T() { return " " }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; expr$2 = (((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) + ".ProcessXor(") + srcExpr) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { expr$2 = (((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) + ".ProcessZlib(") + srcExpr) + ")") } else if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) + ".ProcessRotateLeft(") + srcExpr) + ", ") + expr) + ", 1)") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; const x4 = proc; const name = x4.name$1; const args = x4.args$1; const procClass = $m_Lio_kaitai_struct_languages_CSharpCompiler$().types2class__sc_Iterable__T(name); const procName = ("_process_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(varSrc)); const jsx$2 = this.out$2; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(e$2) { const e = e$2; return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T($this, e) }) })(this)); const this$1 = $m_sc_Seq$(); jsx$2.puts__T__V((((((((procClass + " ") + procName) + " = new ") + procClass) + "(") + args.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2).mkString__T__T(", ")) + ");")); expr$2 = (((procName + ".Decode(") + srcExpr) + ")") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; switchIfCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("else if (" + this.switchCmpExpr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + ")")); this.out$2.puts__T__V("{"); this.out$2.inc__V() }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; classConstructorHeader__T__Lio_kaitai_struct_datatype_DataType__T__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { const x1 = this.typeProvider$1.nowClass$1.meta$1.endian$1; let jsx$1; matchEnd12: { if ((x1 instanceof $c_s_Some)) { const x2 = x1; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { jsx$1 = true; break matchEnd12 } }; if ((x1 instanceof $c_s_Some)) { const x4 = x1; const p5 = x4.value$2; const x = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x === p5)) { jsx$1 = true; break matchEnd12 } }; jsx$1 = false }; if (jsx$1) { this.out$2.puts__T__V((("private bool? " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())) + ";")) }; const addEndian = (isHybrid ? ", bool? isLe = null" : ""); const pIo = this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()); const pParent = this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_ParentIdentifier$()); const pRoot = this.paramName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$()); const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const f = (function($this) { return (function(p$2) { const p = p$2; return (($m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(p.dataType$1) + " ") + $this.paramName__Lio_kaitai_struct_format_Identifier__T(p.id$1)) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$2; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((params === $m_sci_Nil$())) { jsx$2 = $m_sci_Nil$() } else { const arg1 = params.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = params.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$2 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(params, bf); let these = params; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$2 = b.result__O() }; const paramsArg = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2, "", ", ", ", "); this.out$2.puts__T__V(((((((((("public " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + "(") + paramsArg) + ("KaitaiStream " + pIo)) + ", ") + (($m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(parentType) + " ") + pParent)) + " = null, ") + (((((($m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(rootClassName) + " ") + pRoot) + " = null") + addEndian) + ") : base(") + pIo)) + ")")); this.out$2.puts__T__V("{"); this.out$2.inc__V(); this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_ParentIdentifier$(), pParent); this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_RootIdentifier$(), ((name === rootClassName) ? (pRoot + " ?? this") : pRoot)); if (isHybrid) { this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_EndianIdentifier$(), "isLe") }; let these$1 = params; while ((!these$1.isEmpty__Z())) { const arg1$3 = these$1.head__O(); const p$3 = arg1$3; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(p$3.id$1, this.paramName__Lio_kaitai_struct_format_Identifier__T(p$3.id$1)); const this$4 = these$1; these$1 = this$4.tail__sci_List() } }; flagForInstName__Lio_kaitai_struct_format_Identifier__T(ksName) { return ("f_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(ksName)) }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.puts__T__V("i++;"); this.out$2.dec__V(); this.out$2.puts__T__V((("} while (!(" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr)) + "));")); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(instName, (((("(" + $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_datatype_DataType__T(dataType)) + ") (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, value)) + ")")) }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const privateVarName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const ioName = ("io_" + privateVarName); const args = ((rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil) ? this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1) : this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep)); this.out$2.puts__T__V((((("var " + ioName) + " = new KaitaiStream(") + args) + ");")); return ioName }; fileHeader__T__V(topClassName) { this.outHeader$2.puts__T__V("// This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); const this$1 = this.outHeader$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); let ns = "Kaitai"; const thiz = this.config$1.dotNetNamespace$1; if ((thiz === null)) { throw new $c_jl_NullPointerException().init___() }; if ((!(thiz === ""))) { ns = this.config$1.dotNetNamespace$1 }; if ((ns !== "Kaitai")) { const this$3 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$3.list$1, "Kaitai") }; const this$4 = this.out$2; this$4.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V(("namespace " + ns)); this.out$2.puts__T__V("{"); this.out$2.inc__V() }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.out$2.puts__T__V((((((("public " + $m_Lio_kaitai_struct_languages_CSharpCompiler$().kaitaiType2NativeTypeNullable__Lio_kaitai_struct_datatype_DataType__Z__T(attrType, isNullable)) + " ") + this.publicMemberName__Lio_kaitai_struct_format_Identifier__T(attrName)) + " { get { return ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrName)) + "; } }")) }; instanceClear__Lio_kaitai_struct_format_InstanceIdentifier__V(instName) { this.out$2.puts__T__V((this.flagForInstName__Lio_kaitai_struct_format_Identifier__T(instName) + " = false;")) }; } const $d_Lio_kaitai_struct_languages_CSharpCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_CSharpCompiler: 0 }, false, "io.kaitai.struct.languages.CSharpCompiler", { Lio_kaitai_struct_languages_CSharpCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_SingleOutputFile: 1, Lio_kaitai_struct_languages_components_AllocateIOLocalVar: 1, Lio_kaitai_struct_languages_components_EveryReadIsExpression: 1, Lio_kaitai_struct_languages_components_CommonReads: 1, Lio_kaitai_struct_languages_components_UniversalDoc: 1, Lio_kaitai_struct_languages_components_FixedContentsUsingArrayByteLiteral: 1, Lio_kaitai_struct_languages_components_SwitchIfOps: 1, Lio_kaitai_struct_languages_components_NoNeedForFullClassPath: 1 }); $c_Lio_kaitai_struct_languages_CSharpCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_CSharpCompiler; class $c_Lio_kaitai_struct_languages_LuaCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.translator$2 = null; this.outHeader$2 = null; this.out$2 = null; this.importList$2 = null }; switchEnd__V() { /**/ }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, datatype, needRaw, repeatExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = {}")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = {}")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = {}")); this.out$2.puts__T__V("local i = 0"); this.out$2.puts__T__V("while true do"); this.out$2.inc__V() }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; switchIfElseStart__V() { this.out$2.puts__T__V("else"); this.out$2.inc__V() }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V("if self._is_le then"); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("else"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("end") }; switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(id, on, onType, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(this, id, on, onType, cases, normalCaseProc, elseCaseProc) }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.out$2.puts__T__V(((($m_Lio_kaitai_struct_languages_LuaCompiler$().types2class__sci_List__T(className) + ".property.") + this.publicMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + " = {}")); this.out$2.puts__T__V((((("function " + $m_Lio_kaitai_struct_languages_LuaCompiler$().types2class__sci_List__T(className)) + ".property.") + this.publicMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ":get()")); this.out$2.inc__V() }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = {}")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = {}")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = {}")); this.out$2.puts__T__V("local i = 0"); this.out$2.puts__T__V((("while not " + io) + ":is_eof() do")); this.out$2.inc__V() }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { return ("self." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; switchIfStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__V(id, on, onType) { this.out$2.puts__T__V(("local _on = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on))) }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.out$2.puts__T__V((((io + ":seek(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + ")")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V(("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName))) }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr)) }; attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, attrType, checkExpr, err, errArgs) { const f = (function($this) { return (function(v$2) { const v = v$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let errArgsCode; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((errArgs === $m_sci_Nil$())) { errArgsCode = $m_sci_Nil$() } else { const arg1 = errArgs.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = errArgs.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; errArgsCode = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(errArgs, bf); let these = errArgs; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; errArgsCode = b.result__O() }; this.out$2.puts__T__V((("if not(" + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(checkExpr)) + ") then")); this.out$2.inc__V(); let msg; if ((err instanceof $c_Lio_kaitai_struct_datatype_ValidationNotEqualError)) { const this$4 = new $c_s_PartialFunction$Lifted().init___s_PartialFunction(errArgsCode); const this$5 = this$4.apply__O__s_Option(0); const _1 = (this$5.isEmpty__Z() ? "[expected]" : this$5.get__O()); const this$6 = new $c_s_PartialFunction$Lifted().init___s_PartialFunction(errArgsCode); const this$7 = this$6.apply__O__s_Option(1); const _2 = (this$7.isEmpty__Z() ? "[actual]" : this$7.get__O()); const expected = _1; const actual = _2; msg = ((("\"not equal, expected \" .. " + expected) + " .. \", but got \" .. ") + actual) } else { msg = (("\"" + err.name__T()) + "\"") }; this.out$2.puts__T__V((("error(" + msg) + ")")); this.out$2.dec__V(); this.out$2.puts__T__V("end") }; condRepeatEosFooter__V() { this.out$2.puts__T__V("i = i + 1"); this.out$2.dec__V(); this.out$2.puts__T__V("end") }; pushPos__T__V(io) { this.out$2.puts__T__V((("local _pos = " + io) + ":pos()")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { const endianAdd = (isHybrid ? ", is_le" : ""); const jsx$2 = $m_Lio_kaitai_struct_Utils$(); const f = (function($this) { return (function(p$2) { const p = p$2; const id = p.id$1; return $this.idToStr__Lio_kaitai_struct_format_Identifier__T(id) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((params === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = params.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = params.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(params, bf); let these = params; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const paramsList = jsx$2.join__sc_TraversableOnce__T__T__T__T(jsx$1, "", ", ", ", "); this.out$2.puts__T__V(((((("function " + $m_Lio_kaitai_struct_languages_LuaCompiler$().types2class__sci_List__T(name)) + ":_init(") + paramsList) + ("io, parent, root" + endianAdd)) + ")")); this.out$2.inc__V(); this.out$2.puts__T__V("KaitaiStruct._init(self, io)"); this.out$2.puts__T__V("self._parent = parent"); this.out$2.puts__T__V("self._root = root or self"); if (isHybrid) { this.out$2.puts__T__V("self._is_le = is_le") }; let these$1 = params; while ((!these$1.isEmpty__Z())) { const arg1$3 = these$1.head__O(); const p$3 = arg1$3; const jsx$3 = p$3.id$1; const id$1 = p$3.id$1; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(jsx$3, this.idToStr__Lio_kaitai_struct_format_Identifier__T(id$1)); const this$4 = these$1; these$1 = this$4.tail__sci_List() } }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V(("local _io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx))); return "_io" }; switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; return (((io + ":read_") + x6.apiCall__s_Option__T(defEndian)) + "()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; return (((io + ":read_bytes(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (io + ":read_bytes_full()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; return (((((((((io + ":read_bytes_term(") + terminator) + ", ") + include) + ", ") + consume) + ", ") + eosError) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; return (((io + ":read_bits_int_") + bitEndian.toSuffix__T()) + "(1)") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; return (((((io + ":read_bits_int_") + bitEndian$2.toSuffix__T()) + "(") + width) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x10 = dataType; const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const jsx$2 = x10.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); const addParams = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2), "", ", ", ", "); let addArgs; if (x10.isOpaque__Z()) { addArgs = "" } else { const x1$2 = x10.forcedParent$3; let parent; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp) } else { const x = $m_s_None$(); if ((!(x === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; parent = "self" }; const x1$3 = x10.classSpec$3.get__O().meta$1.endian$1; let addEndian; matchEnd6: { if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const p3 = x2$3.value$2; const x$3 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$3 === p3)) { addEndian = ", self._is_le"; break matchEnd6 } }; addEndian = "" }; addArgs = (((", " + parent) + ", self._root") + addEndian) }; return ((((($m_Lio_kaitai_struct_languages_LuaCompiler$().types2class__sci_List__T(x10.classSpec$3.get__O().name$1) + "(") + addParams) + io) + addArgs) + ")") } else { throw new $c_s_MatchError().init___O(dataType) } }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = this.importList$2; const this$2 = this$1.list$1.toList__sci_List(); return $f_sc_TraversableOnce__mkString__T__T__T__T(this$2, "", "\n", "\n") }; condRepeatExprFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("end") }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_LuaTranslator().init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(this.typeProvider$1, this.importList$2); return this }; attrParse2$default$7__s_Option() { return $m_s_None$() }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { $m_s_Predef$().$$qmark$qmark$qmark__sr_Nothing$() }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return name$2 } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$3 = x5.name$2; return ("_m_" + name$3) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x6 = id; const innerId = x6.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } }; alignToByte__T__V(io) { this.out$2.puts__T__V((io + ":align_to_byte()")) }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return ("_t_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; innerEnums__Z() { return true }; switchCaseEnd__V() { /**/ }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { const s = (isRaw ? $m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 : $m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1); this.out$2.puts__T__V(((s + " = ") + expr)); this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "[i + 1] = ") + s)) }; opaqueClassDeclaration__Lio_kaitai_struct_format_ClassSpec__V(classSpec) { this.out$2.puts__T__V((("require(\"" + classSpec.name$1.head__O()) + "\")")) }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V((("if " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + " then")); this.out$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "[i + 1] = ") + expr)) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "[i + 1] = ") + expr)) }; classHeader__sci_List__V(name) { this.out$2.puts__T__V(($m_Lio_kaitai_struct_languages_LuaCompiler$().types2class__sci_List__T(name) + " = class.class(KaitaiStruct)")); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; readHeader__s_Option__Z__V(endian, isEmpty) { let suffix; if ((endian instanceof $c_s_Some)) { const x2 = endian; const e = x2.value$2; suffix = ("_" + e.toSuffix__T()) } else { const x = $m_s_None$(); if ((!(x === endian))) { throw new $c_s_MatchError().init___O(endian) }; suffix = "" }; this.out$2.puts__T__V((((("function " + $m_Lio_kaitai_struct_languages_LuaCompiler$().types2class__sci_List__T(this.typeProvider$1.nowClass$1.name$1)) + ":_read") + suffix) + "()")); this.out$2.inc__V() }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; innerClasses__Z() { return false }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { /**/ }; classConstructorFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("end"); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.out$2.puts__T__V((io + ":seek(_pos)")) }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr) ? (memberName + "[i + 1]") : (((memberName + "[#") + memberName) + "]")) } }; runReadCalc__V() { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("if self._is_le then"); this.out$2.inc__V(); this.out$2.puts__T__V("self:_read_le()"); this.out$2.dec__V(); this.out$2.puts__T__V("elseif not self._is_le then"); this.out$2.inc__V(); this.out$2.puts__T__V("self:_read_be()"); this.out$2.dec__V(); this.out$2.puts__T__V("else"); this.out$2.inc__V(); this.out$2.puts__T__V("error(\"unable to decide endianness\")"); this.out$2.dec__V(); this.out$2.puts__T__V("end") }; outFileName__T__T(topClassName) { return (topClassName + ".lua") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; readFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("end"); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = {}")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = {}")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = {}")); this.out$2.puts__T__V((("for i = 0, " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + " - 1 do")); this.out$2.inc__V() }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { /**/ }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { const x1 = doc.summary$1; let docStr; if ((x1 instanceof $c_s_Some)) { const x2 = x1; const summary = x2.value$2; const this$2 = new $c_sci_StringOps().init___T(summary); const c = $f_sc_IndexedSeqOptimized__last__O(this$2); let lastChar; if ((c === null)) { lastChar = 0 } else { const this$4 = c; lastChar = this$4.value$1 }; docStr = (((lastChar === 46) || (lastChar === 10)) ? summary : (summary + ".")) } else { const x = $m_s_None$(); if ((!(x === x1))) { throw new $c_s_MatchError().init___O(x1) }; docStr = "" }; if ((docStr === null)) { throw new $c_jl_NullPointerException().init___() }; let jsx$1; if ((docStr === "")) { jsx$1 = true } else { const this$7 = new $c_sci_StringOps().init___T(docStr); const c$1 = $f_sc_IndexedSeqOptimized__last__O(this$7); let jsx$2; if ((c$1 === null)) { jsx$2 = 0 } else { const this$9 = c$1; jsx$2 = this$9.value$1 }; jsx$1 = (jsx$2 === 10) }; let extraNewLine; if (jsx$1) { extraNewLine = "" } else { extraNewLine = "\n" }; const this$11 = doc.ref$1; const f = (function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 instanceof $c_Lio_kaitai_struct_format_TextRef)) { const x2$1 = x0$1; const text = x2$1.text$1; return ("See also: " + text) } else if ((x0$1 instanceof $c_Lio_kaitai_struct_format_UrlRef)) { const x3 = x0$1; const url = x3.url$1; const text$2 = x3.text$1; return (((("See also: " + text$2) + " (") + url) + ")") } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this); const this$10 = $m_sci_List$(); const bf = this$10.ReusableCBFInstance$2; let jsx$3; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$11 === $m_sci_Nil$())) { jsx$3 = $m_sci_Nil$() } else { const arg1 = this$11.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$11.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$12 = rest; rest = this$12.tail__sci_List() }; jsx$3 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$11, bf); let these = this$11; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$13 = these; these = this$13.tail__sci_List() }; jsx$3 = b.result__O() }; const refStr = jsx$3.mkString__T__T("\n"); this.out$2.putsLines__T__T__T__V("-- ", ((("\n" + docStr) + extraNewLine) + refStr), "") }; classFooter__sci_List__V(name) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { this.out$2.puts__T__V((id + ":_read()")) }; instanceFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("end"); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; runRead__sci_List__V(name) { this.out$2.puts__T__V("self:_read()") }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; publicMemberName__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return name$2 } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x4 = id; const name$3 = x4.name$2; return name$3 } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x5 = id; const innerId = x5.innerId$2; return ("_raw_" + this.publicMemberName__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((("KaitaiStream.bytes_strip_right(" + expr0) + ", ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((("KaitaiStream.bytes_terminate(" + expr1) + ", ") + term) + ", ") + include) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; switchIfEnd__V() { this.out$2.puts__T__V("end") }; switchIfCaseEnd__V() { this.out$2.dec__V() }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.dec__V(); this.out$2.puts__T__V("end") }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; switchElseStart__V() { /**/ }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "local enum = require(\"enum\")"); this.out$2.puts__T__V(((($m_Lio_kaitai_struct_languages_LuaCompiler$().types2class__sci_List__T(curClass) + ".") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(enumName)) + " = enum.Enum {")); this.out$2.inc__V(); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); $this.out$2.puts__T__V((((label.name$1 + " = ") + new $c_sjsr_RuntimeLong().init___I__I(lo, hi)) + ",")) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.out$2.dec__V(); this.out$2.puts__T__V("}"); const this$2 = this.out$2; this$2.sb$2.append__T__scm_StringBuilder("\n") }; switchIfCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("if _on == " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + " then")); this.out$2.inc__V() }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.out$2.puts__T__V((("if self." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(instName)) + " ~= nil then")); this.out$2.inc__V(); this.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.out$2.dec__V(); this.out$2.puts__T__V("end"); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; switchRequiresIfs__Lio_kaitai_struct_datatype_DataType__Z(onType) { return true }; indent__T() { return " " }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; const x1$2 = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(xorValue); let procName; if ((x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { procName = "process_xor_one" } else { if ((!(x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { throw new $c_s_MatchError().init___O(x1$2) }; procName = "process_xor_many" }; expr$2 = (((((("KaitaiStream." + procName) + "(") + srcExpr) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(new $c_jl_RuntimeException().init___T("Lua zlib not supported")) }; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((("KaitaiStream.process_rotate_left(" + srcExpr) + ", ") + expr) + ", 1)") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; const x4 = proc; const name = x4.name$1; const args = x4.args$1; const procName$2 = ("_process_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(varSrc)); const this$1 = this.importList$2; const s = ((("require(\"" + "") + $f_sc_LinearSeqOptimized__last__O(name)) + "\")"); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, s); const jsx$3 = this.out$2; const jsx$2 = $m_Lio_kaitai_struct_languages_LuaCompiler$().types2class__sci_List__T(name); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(e$2) { const e = e$2; return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T($this, e) }) })(this)); const this$2 = $m_sc_Seq$(); jsx$3.puts__T__V((((((("local " + procName$2) + " = ") + jsx$2) + "(") + args.map__F1__scg_CanBuildFrom__O(jsx$1, this$2.ReusableCBFInstance$2).mkString__T__T(", ")) + ")")); expr$2 = (((procName$2 + ":decode(") + srcExpr) + ")") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; switchIfCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("elseif _on == " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + " then")); this.out$2.inc__V() }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.puts__T__V((("if " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr)) + " then")); this.out$2.inc__V(); this.out$2.puts__T__V("break"); this.out$2.dec__V(); this.out$2.puts__T__V("end"); this.out$2.puts__T__V("i = i + 1"); this.out$2.dec__V(); this.out$2.puts__T__V("end"); this.out$2.dec__V() }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(this, instName, dataType, value) }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const args = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep); const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "local stringstream = require(\"string_stream\")"); this.out$2.puts__T__V((("local _io = KaitaiStream(stringstream(" + args) + "))")); return "_io" }; fileHeader__T__V(topClassName) { this.outHeader$2.puts__T__V("-- This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); this.outHeader$2.puts__T__V("--"); this.outHeader$2.puts__T__V("-- This file is compatible with Lua 5.3"); const this$1 = this.outHeader$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "local class = require(\"class\")"); const this$3 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$3.list$1, "require(\"kaitaistruct\")"); const this$4 = this.out$2; this$4.sb$2.append__T__scm_StringBuilder("\n") }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; } const $d_Lio_kaitai_struct_languages_LuaCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_LuaCompiler: 0 }, false, "io.kaitai.struct.languages.LuaCompiler", { Lio_kaitai_struct_languages_LuaCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_AllocateIOLocalVar: 1, Lio_kaitai_struct_languages_components_EveryReadIsExpression: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_CommonReads: 1, Lio_kaitai_struct_languages_components_FixedContentsUsingArrayByteLiteral: 1, Lio_kaitai_struct_languages_components_SingleOutputFile: 1, Lio_kaitai_struct_languages_components_UniversalDoc: 1, Lio_kaitai_struct_languages_components_UniversalFooter: 1, Lio_kaitai_struct_languages_components_SwitchIfOps: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1 }); $c_Lio_kaitai_struct_languages_LuaCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_LuaCompiler; class $c_Lio_kaitai_struct_languages_NimCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.translator$2 = null; this.outHeader$2 = null; this.out$2 = null; this.importList$2 = null }; instanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) }; switchEnd__V() { /**/ }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { this.out$2.puts__T__V("block:"); this.out$2.inc__V(); this.out$2.puts__T__V("var i: int"); this.out$2.puts__T__V("while true:"); this.out$2.inc__V() }; switchIfElseStart__V() { this.out$2.puts__T__V("else:"); this.out$2.inc__V() }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; instanceForwardDeclaration__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(className, instName, dataType) { const jsx$1 = this.out$2; const x = this.idToStr__Lio_kaitai_struct_format_Identifier__T(instName); const this$2 = new $c_sci_StringOps().init___T(x); jsx$1.puts__T__V(((((("proc " + $f_sc_IndexedSeqOptimized__dropRight__I__O(this$2, 4)) + "*(this: ") + this.namespaced__sci_List__T(className)) + "): ") + $m_Lio_kaitai_struct_languages_NimCompiler$().ksToNim__Lio_kaitai_struct_datatype_DataType__T(dataType))) }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V("if this.isLe:"); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("else:"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V() }; switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(id, on, onType, cases, normalCaseProc, elseCaseProc) { this.switchIfStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__V(id, on, onType); const first = new $c_sr_BooleanRef().init___Z(true); cases.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, first$1, normalCaseProc$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const condition = x0$1.$$und1__O(); const result = x0$1.$$und2__O(); const x = $m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1; if (((x === null) ? (condition === null) : x.equals__O__Z(condition))) { /**/ } else { if (first$1.elem$1) { $this.switchIfCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition); first$1.elem$1 = false } else { $this.switchIfCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) }; normalCaseProc$1.apply__O__O(result); $this.out$2.dec__V() } } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, first, normalCaseProc))); const this$2 = cases.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); if ((!this$2.isEmpty__Z())) { const arg1 = this$2.get__O(); if ((cases.size__I() === 1)) { elseCaseProc.apply__O__O(arg1) } else { this.switchIfElseStart__V(); elseCaseProc.apply__O__O(arg1); this.out$2.dec__V() } }; this.out$2.dec__V() }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { const jsx$1 = this.out$2; const x = this.idToStr__Lio_kaitai_struct_format_Identifier__T(instName); const this$2 = new $c_sci_StringOps().init___T(x); jsx$1.puts__T__V((((((("proc " + $f_sc_IndexedSeqOptimized__dropRight__I__O(this$2, 4)) + "(this: ") + this.namespaced__sci_List__T(className)) + "): ") + $m_Lio_kaitai_struct_languages_NimCompiler$().ksToNim__Lio_kaitai_struct_datatype_DataType__T(dataType)) + " = ")); this.out$2.inc__V() }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { this.out$2.puts__T__V("block:"); this.out$2.inc__V(); this.out$2.puts__T__V("var i: int"); this.out$2.puts__T__V((("while not " + io) + ".isEof:")); this.out$2.inc__V() }; switchIfStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__V(id, on, onType) { this.out$2.puts__T__V("block:"); this.out$2.inc__V(); this.out$2.puts__T__V(("let on = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on))) }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { const name = this.idToStr__Lio_kaitai_struct_format_Identifier__T(id); return ("this." + name) }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.out$2.puts__T__V((((io + ".seek(int(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + "))")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V(("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName))) }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { const exprName = (this.idToStr__Lio_kaitai_struct_format_Identifier__T(id) + "Expr"); this.out$2.puts__T__V(((("let " + exprName) + " = ") + expr)); this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + exprName)) }; condRepeatEosFooter__V() { this.out$2.puts__T__V("inc i"); this.out$2.dec__V(); this.out$2.dec__V() }; fromFile__sci_List__V(name) { const n = this.namespaced__sci_List__T(name); this.out$2.puts__T__V((((("proc fromFile*(_: typedesc[" + n) + "], filename: string): ") + n) + " =")); this.out$2.inc__V(); this.out$2.puts__T__V((n + ".read(newKaitaiFileStream(filename), nil, nil)")); this.out$2.dec__V(); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; pushPos__T__V(io) { this.out$2.puts__T__V((("let pos = " + io) + ".pos()")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { /**/ }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V(("let io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx))); return "io" }; switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { let expr; if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; expr = (((io + ".read") + $m_Lio_kaitai_struct_Utils$().capitalize__T__T(x6.apiCall__s_Option__T(defEndian))) + "()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; expr = (((io + ".readBytes(int(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + "))") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { expr = (io + ".readBytesFull()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; expr = (((((((((io + ".readBytesTerm(") + terminator) + ", ") + include) + ", ") + consume) + ", ") + eosError) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; expr = (((io + ".readBitsInt") + $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(bitEndian.toSuffix__T(), true)) + "(1) != 0") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; expr = (((((io + ".readBitsInt") + $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(bitEndian$2.toSuffix__T(), true)) + "(") + width) + ")") } else { if ((!(dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType))) { throw new $c_s_MatchError().init___O(dataType) }; const x10 = dataType; let rc8 = false; let x2$2 = null; const x1$2 = x10.forcedParent$3; let parent; matchEnd9: { if ((x1$2 instanceof $c_s_Some)) { rc8 = true; x2$2 = x1$2; const p3 = x2$2.value$2; const x = $m_Lio_kaitai_struct_datatype_DataType$().USER$undTYPE$undNO$undPARENT$1; if (((x === null) ? (p3 === null) : x.equals__O__Z(p3))) { parent = "nil"; break matchEnd9 } }; if (rc8) { const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp); break matchEnd9 }; const x$3 = $m_s_None$(); if ((x$3 === x1$2)) { parent = "this"; break matchEnd9 }; throw new $c_s_MatchError().init___O(x1$2) }; const addArgs = (", this.root, " + parent); const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const jsx$2 = x10.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); const addParams = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2), ", ", ", ", ""); const x1$3 = x10.classSpec$3; let jsx$4; if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const cs = x2$3.value$2; jsx$4 = cs.name$1 } else { const x$5 = $m_s_None$(); if ((!(x$5 === x1$3))) { throw new $c_s_MatchError().init___O(x1$3) }; jsx$4 = x10.name$3 }; const concreteName = this.namespaced__sci_List__T(jsx$4); expr = (((((concreteName + ".read(") + io) + addArgs) + addParams) + ")") }; return ((!((assignType === null) ? (dataType === null) : assignType.equals__O__Z(dataType))) ? ((($m_Lio_kaitai_struct_languages_NimCompiler$().ksToNim__Lio_kaitai_struct_datatype_DataType__T(assignType) + "(") + expr) + ")") : expr) }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = this.importList$2; const this$3 = this$1.list$1.toList__sci_List(); const f = (function($this) { return (function(x$2) { const x = x$2; return ("import " + x) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = this$3.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$3.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$4 = rest; rest = this$4.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$3, bf); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$5 = these; these = this$5.tail__sci_List() }; jsx$1 = b.result__O() }; return (jsx$1.mkString__T__T("\n") + "\n\n") }; condRepeatExprFooter__V() { this.out$2.dec__V() }; typeSectionHeader__V() { this.out$2.puts__T__V("type"); this.out$2.inc__V() }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_NimTranslator().init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(this.typeProvider$1, this.importList$2); return this }; attrParse2$default$7__s_Option() { return $m_s_None$() }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { /**/ }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { const x = $m_Lio_kaitai_struct_format_IoIdentifier$(); if (x.equals__O__Z(id)) { return "io" } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2 = id; const name = x2.name$2; return $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(name, false) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x3 = id; const name$2 = x3.name$2; return ($m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(name$2, false) + "Inst") } else if ((id instanceof $c_Lio_kaitai_struct_format_IoStorageIdentifier)) { const x4 = id; const innerId = x4.innerId$2; return ("io" + $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId), true)) } else if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x5 = id; const name$3 = x5.name$2; return $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(name$3, false) } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x6 = id; const idx = x6.idx$2; return (("" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x7 = id; const innerId$2 = x7.innerId$2; return ("raw" + $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId$2), true)) } else { throw new $c_s_MatchError().init___O(id) } }; classForwardDeclaration__sci_List__V(name) { const t = this.namespaced__sci_List__T(this.typeProvider$1.nowClass$1.name$1); const jsx$1 = $m_Lio_kaitai_struct_languages_NimCompiler$(); const this$1 = this.typeProvider$1.nowClass$1; const p = jsx$1.ksToNim__Lio_kaitai_struct_datatype_DataType__T(this$1.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType()); const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const this$3 = this.typeProvider$1.nowClass$1.params$1; const f = (function($this) { return (function(p$2$2) { const p$2 = p$2$2; const id = p$2.id$1; return ($this.idToStr__Lio_kaitai_struct_format_Identifier__T(id) + ": any") }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$2; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$2 = $m_sci_Nil$() } else { const arg1 = this$3.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t$1 = h; let rest = this$3.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t$1.tl$5 = nx; t$1 = nx; const this$4 = rest; rest = this$4.tail__sci_List() }; jsx$2 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$3, bf); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$5 = these; these = this$5.tail__sci_List() }; jsx$2 = b.result__O() }; const paramsArg = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2, ", ", ", ", ""); this.out$2.puts__T__V((((((("proc read*(_: typedesc[" + t) + "], io: KaitaiStream, root: KaitaiStruct, parent: ") + p) + paramsArg) + "): ") + t)) }; alignToByte__T__V(io) { this.out$2.puts__T__V((("alignToByte(" + io) + ")")) }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return this.idToStr__Lio_kaitai_struct_format_Identifier__T(id) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; typeSectionFooter__V() { this.out$2.dec__V(); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; innerEnums__Z() { return false }; switchCaseEnd__V() { this.out$2.dec__V() }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { this.handleAssignmentIterative__Lio_kaitai_struct_format_Identifier__T__V(id, expr) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.out$2.puts__T__V(((("`" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + "`*: ") + $m_Lio_kaitai_struct_languages_NimCompiler$().ksToNim__Lio_kaitai_struct_datatype_DataType__T(attrType))) }; opaqueClassDeclaration__Lio_kaitai_struct_format_ClassSpec__V(classSpec) { this.out$2.puts__T__V((("import \"" + classSpec.name$1.head__O()) + "\"")) }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V((("if " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + ":")); this.out$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.handleAssignmentIterative__Lio_kaitai_struct_format_Identifier__T__V(id, expr) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.handleAssignmentIterative__Lio_kaitai_struct_format_Identifier__T__V(id, expr) }; namespaced__sci_List__T(names) { const f = (function($this) { return (function(n$2) { const n = n$2; return $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(n, true) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((names === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = names.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = names.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(names, bf); let these = names; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T("_") }; classHeader__sci_List__V(name) { this.out$2.puts__T__V((this.namespaced__sci_List__T(name) + "* = ref object of KaitaiStruct")); this.out$2.inc__V() }; readHeader__s_Option__Z__V(endian, isEmpty) { const t = this.namespaced__sci_List__T(this.typeProvider$1.nowClass$1.name$1); const jsx$1 = $m_Lio_kaitai_struct_languages_NimCompiler$(); const this$1 = this.typeProvider$1.nowClass$1; const p = jsx$1.ksToNim__Lio_kaitai_struct_datatype_DataType__T(this$1.parentClass$1.toDataType__Lio_kaitai_struct_datatype_DataType()); const r = this.namespaced__sci_List__T(this.typeProvider$1.topClass$1.name$1); const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const this$3 = this.typeProvider$1.nowClass$1.params$1; const f = (function($this) { return (function(p$2$2) { const p$2 = p$2$2; const id = p$2.id$1; return ($this.idToStr__Lio_kaitai_struct_format_Identifier__T(id) + ": any") }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$2; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$2 = $m_sci_Nil$() } else { const arg1 = this$3.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t$1 = h; let rest = this$3.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t$1.tl$5 = nx; t$1 = nx; const this$4 = rest; rest = this$4.tail__sci_List() }; jsx$2 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$3, bf); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$5 = these; these = this$5.tail__sci_List() }; jsx$2 = b.result__O() }; const paramsArg = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2, ", ", ", ", ""); const x = $m_s_None$(); if ((x === endian)) { this.out$2.puts__T__V(((((((("proc read*(_: typedesc[" + t) + "], io: KaitaiStream, root: KaitaiStruct, parent: ") + p) + paramsArg) + "): ") + t) + " =")); this.out$2.inc__V(); this.out$2.puts__T__V("template this: untyped = result"); this.out$2.puts__T__V((("this = new(" + t) + ")")); this.out$2.puts__T__V((((("let root = if root == nil: cast[" + r) + "](this) else: cast[") + r) + "](root)")); this.out$2.puts__T__V("this.io = io"); this.out$2.puts__T__V("this.root = root"); this.out$2.puts__T__V("this.parent = parent"); const this$6 = this.typeProvider$1.nowClass$1.params$1; let these$1 = this$6; while ((!these$1.isEmpty__Z())) { const arg1$3 = these$1.head__O(); const p$3 = arg1$3; const jsx$5 = p$3.id$1; const jsx$4 = $m_Lio_kaitai_struct_languages_NimCompiler$().ksToNim__Lio_kaitai_struct_datatype_DataType__T(p$3.dataType$1); const id$1 = p$3.id$1; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(jsx$5, (((jsx$4 + "(") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id$1)) + ")")); const this$7 = these$1; these$1 = this$7.tail__sci_List() }; let rc9 = false; let x2 = null; const x1$2 = this.typeProvider$1.nowClass$1.meta$1.endian$1; matchEnd10: { if ((x1$2 instanceof $c_s_Some)) { rc9 = true; x2 = x1$2; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { this.out$2.puts__T__V((("this." + this.idToStr__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())) + " = false")); break matchEnd10 } }; if (rc9) { const p5 = x2.value$2; const x$3 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$3 === p5)) { this.out$2.puts__T__V((((((("this." + this.idToStr__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$())) + " = ") + ("this." + this.idToStr__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_ParentIdentifier$()))) + ".") + "") + this.idToStr__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$()))); break matchEnd10 } } }; const this$8 = this.out$2; this$8.sb$2.append__T__scm_StringBuilder("\n") } else if ((endian instanceof $c_s_Some)) { const x2$2 = endian; const e = x2$2.value$2; const this$9 = this.out$2; this$9.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((((("proc read" + $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(e.toSuffix__T(), true)) + "(this: ") + t) + ") =")); this.out$2.inc__V() } else { throw new $c_s_MatchError().init___O(endian) } }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; importFile__T__V(file) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, file) }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { /**/ }; classConstructorFooter__V() { this.out$2.dec__V() }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.out$2.puts__T__V((io + ".seek(pos)")) }; runReadCalc__V() { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("if this.isLe:"); this.out$2.inc__V(); this.out$2.puts__T__V("readLe(this)"); this.out$2.dec__V(); this.out$2.puts__T__V("else:"); this.out$2.inc__V(); this.out$2.puts__T__V("readBe(this)"); this.out$2.dec__V() }; outFileName__T__T(topClassName) { return (topClassName + ".nim") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { this.out$2.puts__T__V((("for i in 0 ..< int(" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + "):")); this.out$2.inc__V() }; readFooter__V() { this.out$2.dec__V(); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { /**/ }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("##["); const this$2 = doc.summary$1; if ((!this$2.isEmpty__Z())) { const arg1 = this$2.get__O(); const summary = arg1; this.out$2.puts__T__V(summary) }; const this$3 = doc.ref$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const x0$1 = arg1$1; if ((x0$1 instanceof $c_Lio_kaitai_struct_format_TextRef)) { const x2 = x0$1; const text = x2.text$1; this.out$2.puts__T__V((("@see \"" + text) + "\"")) } else if ((x0$1 instanceof $c_Lio_kaitai_struct_format_UrlRef)) { const x3 = x0$1; this.out$2.puts__T__V(("@see " + x3.toAhref__T())) } else { throw new $c_s_MatchError().init___O(x0$1) }; const this$4 = these; these = this$4.tail__sci_List() }; this.out$2.puts__T__V("]##") }; classFooter__sci_List__V(name) { const x1 = this.typeProvider$1.nowClass$1.meta$1.endian$1; let jsx$1; matchEnd12: { if ((x1 instanceof $c_s_Some)) { const x2 = x1; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { jsx$1 = true; break matchEnd12 } }; if ((x1 instanceof $c_s_Some)) { const x4 = x1; const p5 = x4.value$2; const x = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x === p5)) { jsx$1 = true; break matchEnd12 } }; jsx$1 = false }; if (jsx$1) { this.out$2.puts__T__V((this.idToStr__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_EndianIdentifier$()) + ": bool")) }; this.out$2.dec__V() }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { /**/ }; instanceFooter__V() { this.out$2.dec__V(); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; runRead__sci_List__V(name) { this.out$2.puts__T__V("read()") }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrName, attrType, io, repeat) { /**/ }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((expr0 + ".bytesStripRight(") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((expr1 + ".bytesTerminate(") + term) + ", ") + include) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; switchIfEnd__V() { this.out$2.dec__V() }; switchIfCaseEnd__V() { this.out$2.dec__V() }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.dec__V() }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; switchElseStart__V() { /**/ }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { const enumClass = this.namespaced__sci_List__T(curClass); this.out$2.puts__T__V((((enumClass + "_") + $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T(enumName, true)) + "* = enum")); this.out$2.inc__V(); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); const order = ((("" + new $c_sjsr_RuntimeLong().init___I__I(lo, hi)) === "-9223372036854775808") ? "low(int64)" : ("" + new $c_sjsr_RuntimeLong().init___I__I(lo, hi))); $this.out$2.puts__T__V(((label.name$1 + " = ") + order)) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.out$2.dec__V() }; switchIfCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("if on == " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ":")); this.out$2.inc__V() }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) { this.out$2.puts__T__V((("if " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ".len != 0:")) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)) { this.out$2.puts__T__V((("if " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ".len != 0:")) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType)) { this.out$2.puts__T__V((("if " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ".len != 0:")) } else { this.out$2.puts__T__V((("if " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + " != nil:")) }; this.out$2.inc__V(); this.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.out$2.dec__V() }; switchRequiresIfs__Lio_kaitai_struct_datatype_DataType__Z(onType) { return true }; indent__T() { return " " }; switchIfCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("elif on == " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ":")); this.out$2.inc__V() }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const x = $m_Lio_kaitai_struct_format_RepeatEos$(); let srcExpr; if (((x === rep) || ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr) || (rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil)))) { srcExpr = (this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varSrc) + "[i]") } else { const x$3 = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((!(x$3 === rep))) { throw new $c_s_MatchError().init___O(rep) }; srcExpr = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varSrc) }; let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; expr$2 = (((srcExpr + ".processXor(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } else { const x$5 = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x$5 === proc)) { expr$2 = (srcExpr + ".processZlib()") } else if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((srcExpr + ".processRotateLeft(int(") + expr) + "))") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; const x4 = proc; const name = x4.name$1; const args = x4.args$1; const namespace = name.head__O(); const procPath = $f_sc_TraversableOnce__mkString__T__T__T__T(name, "", ".", ""); const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, namespace); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(e$2) { const e = e$2; return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T($this, e) }) })(this)); const this$2 = $m_sc_Seq$(); expr$2 = (((((procPath + "(") + srcExpr) + ", ") + args.map__F1__scg_CanBuildFrom__O(jsx$1, this$2.ReusableCBFInstance$2).mkString__T__T(", ")) + ")") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.puts__T__V((("if " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ":")); this.out$2.inc__V(); this.out$2.puts__T__V("break"); this.out$2.dec__V(); this.out$2.puts__T__V("inc i"); this.out$2.dec__V(); this.out$2.dec__V() }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { const cast = ((($m_Lio_kaitai_struct_languages_NimCompiler$().ksToNim__Lio_kaitai_struct_datatype_DataType__T(dataType) + "(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, value)) + ")"); this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(instName, cast) }; handleAssignmentIterative__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { const exprName = ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier) ? this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1) : this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1)); this.out$2.puts__T__V(((("let " + exprName) + " = ") + expr)); this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".add(") + exprName) + ")")) }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep) { const ioName = (this.idToStr__Lio_kaitai_struct_format_Identifier__T(id) + "Io"); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); let arg; if ((x === rep)) { arg = (this.idToStr__Lio_kaitai_struct_format_Identifier__T(id) + "Expr") } else { arg = this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1) }; this.out$2.puts__T__V((((("let " + ioName) + " = newKaitaiStream(") + arg) + ")")); return ioName }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; fileHeader__T__V(topClassName) { const this$1 = this.importList$2; const s = this.config$1.nimModule$1; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, s); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "options") }; } const $isArrayOf_Lio_kaitai_struct_languages_NimCompiler = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_languages_NimCompiler))) }); const $d_Lio_kaitai_struct_languages_NimCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_NimCompiler: 0 }, false, "io.kaitai.struct.languages.NimCompiler", { Lio_kaitai_struct_languages_NimCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_SingleOutputFile: 1, Lio_kaitai_struct_languages_components_EveryReadIsExpression: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_CommonReads: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_FixedContentsUsingArrayByteLiteral: 1, Lio_kaitai_struct_languages_components_UniversalFooter: 1, Lio_kaitai_struct_languages_components_AllocateIOLocalVar: 1, Lio_kaitai_struct_languages_components_SwitchIfOps: 1, Lio_kaitai_struct_languages_components_UniversalDoc: 1 }); $c_Lio_kaitai_struct_languages_NimCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_NimCompiler; class $c_Lio_kaitai_struct_languages_RubyCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.translator$2 = null; this.outHeader$2 = null; this.out$2 = null; this.importList$2 = null }; switchEnd__V() { this.out$2.puts__T__V("end") }; debugClassSequence__sci_List__V(seq) { const f = (function($this) { return (function(attr$2) { const attr = attr$2; return (("\"" + $this.idToStr__Lio_kaitai_struct_format_Identifier__T(attr.id$1)) + "\"") }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((seq === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = seq.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = seq.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(seq, bf); let these = seq; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const seqStr = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V((("SEQ_FIELDS = [" + seqStr) + "]")) }; classToString__Lio_kaitai_struct_exprlang_Ast$expr__V(toStringExpr) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("def inspect"); this.out$2.inc__V(); this.out$2.puts__T__V(this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(toStringExpr)); this.out$2.dec__V(); this.out$2.puts__T__V("end") }; instanceHeader__T__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.out$2.puts__T__V(("def " + instName.name$2)); this.out$2.inc__V() }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = []")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = []")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = []")); this.out$2.puts__T__V("i = 0"); this.out$2.puts__T__V("begin"); this.out$2.inc__V() }; types2class__sci_List__T(names) { const f = (function($this) { return (function(name$2) { const name = name$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((names === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = names.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = names.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(names, bf); let these = names; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; return jsx$1.mkString__T__T("::") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; classHeader__T__V(name) { this.out$2.puts__T__V((("class " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + " < Kaitai::Struct::Struct")); this.out$2.inc__V(); if (this.config$1.readStoresPos$1) { this.out$2.puts__T__V("attr_reader :_debug") } }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V("if @_is_le"); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("else"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("end") }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.instanceHeader__T__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V($f_sc_LinearSeqOptimized__last__O(className), instName, dataType, isNullable) }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = []")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = []")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = []")); this.out$2.puts__T__V("i = 0"); this.out$2.puts__T__V((("while not " + io) + ".eof?")); this.out$2.inc__V() }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { return ("@" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.out$2.puts__T__V((((io + ".seek(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + ")")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V(this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr)) }; attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, attrType, checkExpr, err, errArgs) { const f = (function($this) { return (function(v$2) { const v = v$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((errArgs === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = errArgs.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = errArgs.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(errArgs, bf); let these = errArgs; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const errArgsStr = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V(((((("raise " + $m_Lio_kaitai_struct_languages_RubyCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err)) + ".new(") + errArgsStr) + ") if not ") + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(checkExpr))) }; condRepeatEosFooter__V() { this.out$2.puts__T__V("i += 1"); this.universalFooter__V() }; pushPos__T__V(io) { this.out$2.puts__T__V((("_pos = " + io) + ".pos")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { this.classConstructorHeader__T__Lio_kaitai_struct_datatype_DataType__T__Z__sci_List__V($f_sc_LinearSeqOptimized__last__O(name), parentType, $f_sc_LinearSeqOptimized__last__O(rootClassName), isHybrid, params) }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V(("io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx))); return "io" }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; return ((io + ".read_") + x6.apiCall__s_Option__T(defEndian)) } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; return (((io + ".read_bytes(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (io + ".read_bytes_full") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; return (((((((((io + ".read_bytes_term(") + terminator) + ", ") + include) + ", ") + consume) + ", ") + eosError) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; return (((io + ".read_bits_int_") + bitEndian.toSuffix__T()) + "(1) != 0") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; return (((((io + ".read_bits_int_") + bitEndian$2.toSuffix__T()) + "(") + width) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x10 = dataType; const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const jsx$2 = x10.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); const addParams = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2), ", ", ", ", ""); let addArgs; if (x10.isOpaque__Z()) { addArgs = "" } else { const x1$2 = x10.forcedParent$3; let parent; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp) } else { const x = $m_s_None$(); if ((!(x === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; parent = "self" }; const x1$3 = x10.classSpec$3.get__O().meta$1.endian$1; let addEndian; matchEnd6: { if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const p3 = x2$3.value$2; const x$3 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$3 === p3)) { addEndian = ", @_is_le"; break matchEnd6 } }; addEndian = "" }; addArgs = (((", " + parent) + ", @_root") + addEndian) }; return (((((this.types2class__sci_List__T(x10.name$3) + ".new(") + io) + addArgs) + addParams) + ")") } else { throw new $c_s_MatchError().init___O(dataType) } }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrId, attrType, ios, rep) { const nonLocalReturnKey1 = new $c_O().init___(); try { if ((!ios.isEmpty__Z())) { const arg1 = ios.get__O(); const io = arg1; if (((attrId instanceof $c_Lio_kaitai_struct_format_RawIdentifier) || (attrId instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier))) { throw new $c_sr_NonLocalReturnControl$mcV$sp().init___O__sr_BoxedUnit(nonLocalReturnKey1, (void 0)) }; const name = this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrId); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { this.out$2.puts__T__V((((("(@_debug['" + name) + "'] ||= {})[:start] = ") + io) + ".pos")) } else if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { this.out$2.puts__T__V((((("(@_debug['" + name) + "'][:arr] ||= [])[i] = {:start => ") + io) + ".pos}")) } else { const x$3 = $m_Lio_kaitai_struct_format_RepeatEos$(); if (((x$3 === rep) || (rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil))) { this.out$2.puts__T__V((((((("(@_debug['" + name) + "'][:arr] ||= [])[") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrId)) + ".size] = {:start => ") + io) + ".pos}")) } else { throw new $c_s_MatchError().init___O(rep) } } } } catch (e) { if ((e instanceof $c_sr_NonLocalReturnControl)) { const ex = e; if ((ex.key$2 === nonLocalReturnKey1)) { ex.value$mcV$sp__V() } else { throw ex } } else { throw e } } }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = this.importList$2; const this$3 = this$1.list$1.toList__sci_List(); const f = (function($this) { return (function(x$2) { const x = x$2; return (("require '" + x) + "'") }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = this$3.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$3.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$4 = rest; rest = this$4.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$3, bf); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$5 = these; these = this$5.tail__sci_List() }; jsx$1 = b.result__O() }; return (jsx$1.mkString__T__T("\n") + "\n") }; condRepeatExprFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_RubyTranslator().init___Lio_kaitai_struct_translators_TypeProvider(this.typeProvider$1); return this }; attrParse2$default$7__s_Option() { return $m_s_None$() }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { this.out$2.puts__T__V(((id + " = ") + expr)) }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x2 = id; const name = x2.name$2; $m_Lio_kaitai_struct_Utils$(); return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x3 = id; const idx = x3.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x6 = id; return x6.name$2 } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x4 = id; const inner = x4.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(inner)) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$2 = x5.name$2; $m_Lio_kaitai_struct_Utils$(); return name$2 } else { throw new $c_s_MatchError().init___O(id) } }; alignToByte__T__V(io) { this.out$2.puts__T__V((io + ".align_to_byte")) }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return ("_t_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; switchCaseEnd__V() { this.out$2.dec__V() }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { const tmpName = this.translator$2.doName__T__T((isRaw ? $m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 : $m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1)); this.out$2.puts__T__V(((tmpName + " = ") + expr)); this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " << ") + tmpName)) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V(("if " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr))); this.out$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " << ") + expr)) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "[i] = ") + expr)) }; readHeader__s_Option__Z__V(endian, isEmpty) { let suffix; if ((endian instanceof $c_s_Some)) { const x2 = endian; const e = x2.value$2; suffix = ("_" + e.toSuffix__T()) } else { const x = $m_s_None$(); if ((!(x === endian))) { throw new $c_s_MatchError().init___O(endian) }; suffix = "" }; const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V(("def _read" + suffix)); this.out$2.inc__V() }; classHeader__sci_List__V(name) { this.classHeader__T__V($f_sc_LinearSeqOptimized__last__O(name)) }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V(("when " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition))); this.out$2.inc__V() }; classConstructorFooter__V() { this.universalFooter__V() }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.out$2.puts__T__V((io + ".seek(_pos)")) }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr) ? (memberName + "[i]") : (memberName + ".last")) } }; runReadCalc__V() { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("if @_is_le == true"); this.out$2.inc__V(); this.out$2.puts__T__V("_read_le"); this.out$2.dec__V(); this.out$2.puts__T__V("elsif @_is_le == false"); this.out$2.inc__V(); this.out$2.puts__T__V("_read_be"); this.out$2.dec__V(); this.out$2.puts__T__V("else"); this.out$2.inc__V(); const jsx$2 = this.out$2; const err = $m_Lio_kaitai_struct_datatype_UndecidedEndiannessError$(); const jsx$1 = $m_Lio_kaitai_struct_languages_RubyCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err); const this$2 = this.typeProvider$1.nowClass$1.path$1; jsx$2.puts__T__V((((("raise " + jsx$1) + ".new(\"") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$2, "/", "/", "")) + "\")")); this.out$2.dec__V(); this.out$2.puts__T__V("end") }; outFileName__T__T(topClassName) { return (topClassName + ".rb") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; readFooter__V() { this.out$2.puts__T__V("self"); this.universalFooter__V() }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = Array.new(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = Array.new(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")")) }; this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = Array.new(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")")); this.out$2.puts__T__V((("(" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ").times { |i|")); this.out$2.inc__V() }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { this.out$2.puts__T__V(("case " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on))) }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("##"); const this$2 = doc.summary$1; if ((!this$2.isEmpty__Z())) { const arg1 = this$2.get__O(); const summary = arg1; this.out$2.putsLines__T__T__T__V("# ", summary, "") }; const this$3 = doc.ref$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const x0$1 = arg1$1; if ((x0$1 instanceof $c_Lio_kaitai_struct_format_TextRef)) { const x2 = x0$1; const text = x2.text$1; this.out$2.putsLines__T__T__T__V("# ", ("@see '' " + text), " ") } else if ((x0$1 instanceof $c_Lio_kaitai_struct_format_UrlRef)) { const x3 = x0$1; const url = x3.url$1; const text$2 = x3.text$1; this.out$2.putsLines__T__T__T__V("# ", ((("@see " + url) + " ") + text$2), " ") } else { throw new $c_s_MatchError().init___O(x0$1) }; const this$4 = these; these = this$4.tail__sci_List() } }; classFooter__sci_List__V(name) { $f_sc_LinearSeqOptimized__last__O(name); this.universalFooter__V() }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { this.out$2.puts__T__V((id + "._read")) }; instanceFooter__V() { this.universalFooter__V() }; runRead__sci_List__V(name) { this.out$2.puts__T__V("_read") }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrId, attrType, io, rep) { if (((attrId instanceof $c_Lio_kaitai_struct_format_RawIdentifier) || (attrId instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier))) { return (void 0) }; const name = this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrId); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { this.out$2.puts__T__V((((("(@_debug['" + name) + "'] ||= {})[:end] = ") + io) + ".pos")) } else if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { this.out$2.puts__T__V((((("@_debug['" + name) + "'][:arr][i][:end] = ") + io) + ".pos")) } else { const x$3 = $m_Lio_kaitai_struct_format_RepeatEos$(); if (((x$3 === rep) || (rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil))) { this.out$2.puts__T__V((((((("@_debug['" + name) + "'][:arr][") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrId)) + ".size - 1][:end] = ") + io) + ".pos")) } else { throw new $c_s_MatchError().init___O(rep) } } }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((("Kaitai::Struct::Stream::bytes_strip_right(" + expr0) + ", ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((("Kaitai::Struct::Stream::bytes_terminate(" + expr1) + ", ") + term) + ", ") + include) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.universalFooter__V() }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; switchElseStart__V() { this.out$2.puts__T__V("else"); this.out$2.inc__V() }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { $f_Lio_kaitai_struct_languages_components_NoNeedForFullClassPath__enumDeclaration__sci_List__T__sc_Seq__V(this, curClass, enumName, enumColl) }; enumDeclaration__T__T__sc_Seq__V(curClass, enumName, enumColl) { $m_Lio_kaitai_struct_Utils$(); const enumConst = enumName.toUpperCase(); const this$4 = this.out$2; this$4.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((enumConst + " = {")); this.out$2.inc__V(); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, enumName$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); $this.out$2.puts__T__V((((new $c_sjsr_RuntimeLong().init___I__I(lo, hi) + " => ") + $this.enumValue__T__T__T(enumName$1, label)) + ",")) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, enumName))); this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.puts__T__V(((($m_Lio_kaitai_struct_languages_RubyCompiler$().inverseEnumName__T__T(enumConst) + " = ") + enumConst) + ".invert")) }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.out$2.puts__T__V((((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + " unless ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ".nil?")) }; indent__T() { return " " }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; const x1$2 = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(xorValue); let procName; if ((x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { procName = "process_xor_one" } else { if ((!(x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { throw new $c_s_MatchError().init___O(x1$2) }; procName = "process_xor_many" }; expr$2 = (((((("Kaitai::Struct::Stream::" + procName) + "(") + srcExpr) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "zlib"); expr$2 = (("Zlib::Inflate.inflate(" + srcExpr) + ")") } else if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((("Kaitai::Struct::Stream::process_rotate_left(" + srcExpr) + ", ") + expr) + ", 1)") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; const x4 = proc; const name = x4.name$1; const args = x4.args$1; const f = (function($this) { return (function(x$3$2) { const x$3 = x$3$2; return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(x$3) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((name === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = name.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = name.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(name, bf); let these = name; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$1 = b.result__O() }; const procClass = jsx$1.mkString__T__T("::"); const jsx$3 = this.out$2; const jsx$2 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1) { return (function(e$2) { const e = e$2; return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this$2$1, e) }) })(this)); const this$5 = $m_sc_Seq$(); jsx$3.puts__T__V((((("_process = " + procClass) + ".new(") + args.map__F1__scg_CanBuildFrom__O(jsx$2, this$5.ReusableCBFInstance$2).mkString__T__T(", ")) + ")")); expr$2 = (("_process.decode(" + srcExpr) + ")") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; classConstructorHeader__T__Lio_kaitai_struct_datatype_DataType__T__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { const endianSuffix = (isHybrid ? ", _is_le = nil" : ""); const jsx$2 = $m_Lio_kaitai_struct_Utils$(); const f = (function($this) { return (function(p$2) { const p = p$2; const id = p.id$1; return $this.idToStr__Lio_kaitai_struct_format_Identifier__T(id) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((params === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = params.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = params.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(params, bf); let these = params; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const paramsList = jsx$2.join__sc_TraversableOnce__T__T__T__T(jsx$1, ", ", ", ", ""); this.out$2.puts__T__V(((("def initialize(_io, _parent = nil, _root = self" + endianSuffix) + paramsList) + ")")); this.out$2.inc__V(); this.out$2.puts__T__V("super(_io, _parent, _root)"); if (isHybrid) { this.out$2.puts__T__V("@_is_le = _is_le") }; let these$1 = params; while ((!these$1.isEmpty__Z())) { const arg1$3 = these$1.head__O(); const p$3 = arg1$3; const jsx$3 = p$3.id$1; const id$1 = p$3.id$1; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(jsx$3, this.idToStr__Lio_kaitai_struct_format_Identifier__T(id$1)); const this$4 = these$1; these$1 = this$4.tail__sci_List() }; if (this.config$1.readStoresPos$1) { this.out$2.puts__T__V("@_debug = {}") } }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.puts__T__V("i += 1"); this.out$2.dec__V(); this.out$2.puts__T__V(("end until " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr))) }; universalFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("end") }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(this, instName, dataType, value) }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep) { this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id); const ioName = ("_io_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)); const args = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(id, rep); this.out$2.puts__T__V((((ioName + " = Kaitai::Struct::Stream.new(") + args) + ")")); return ioName }; fileHeader__T__V(topClassName) { this.outHeader$2.puts__T__V("# This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); const this$1 = this.outHeader$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "kaitai/struct/struct"); const this$3 = this.out$2; this$3.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("unless Gem::Version.new(Kaitai::Struct::VERSION) >= Gem::Version.new('" + $m_Lio_kaitai_struct_format_KSVersion$().minimalRuntime$1) + "')")); this.out$2.inc__V(); this.out$2.puts__T__V((("raise \"Incompatible Kaitai Struct Ruby API: " + $m_Lio_kaitai_struct_format_KSVersion$().minimalRuntime$1) + " or later is required, but you have #{Kaitai::Struct::VERSION}\"")); this.out$2.dec__V(); this.out$2.puts__T__V("end"); const this$4 = this.out$2; this$4.sb$2.append__T__scm_StringBuilder("\n") }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { const x = $m_Lio_kaitai_struct_format_RootIdentifier$(); let jsx$1; if (x.equals__O__Z(attrName)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_format_ParentIdentifier$(); jsx$1 = x$3.equals__O__Z(attrName) }; if ((!jsx$1)) { this.out$2.puts__T__V(("attr_reader :" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName))) } }; enumValue__T__T__T(enumName, enumLabel) { const jsx$1 = this.translator$2; $m_sci_List$(); const array = [enumName]; let i = (((-1) + (array.length | 0)) | 0); let result = $m_sci_Nil$(); while ((i >= 0)) { const this$4 = result; const index = i; const x = array[index]; result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4); i = (((-1) + i) | 0) }; return jsx$1.doEnumByLabel__sci_List__T__T(result, enumLabel) }; } const $d_Lio_kaitai_struct_languages_RubyCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_RubyCompiler: 0 }, false, "io.kaitai.struct.languages.RubyCompiler", { Lio_kaitai_struct_languages_RubyCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_SingleOutputFile: 1, Lio_kaitai_struct_languages_components_UniversalFooter: 1, Lio_kaitai_struct_languages_components_UniversalDoc: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_AllocateIOLocalVar: 1, Lio_kaitai_struct_languages_components_EveryReadIsExpression: 1, Lio_kaitai_struct_languages_components_CommonReads: 1, Lio_kaitai_struct_languages_components_FixedContentsUsingArrayByteLiteral: 1, Lio_kaitai_struct_languages_components_NoNeedForFullClassPath: 1 }); $c_Lio_kaitai_struct_languages_RubyCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_RubyCompiler; const $f_sci_StringLike__scala$collection$immutable$StringLike$$isLineBreak__C__Z = (function($thiz, c) { return ((c === 10) || (c === 12)) }); const $f_sci_StringLike__escape__psci_StringLike__C__T = (function($thiz, ch) { return (((((ch >= 97) && (ch <= 122)) || ((ch >= 65) && (ch <= 90))) || ((ch >= 48) && (ch <= 57))) ? $g.String.fromCharCode(ch) : ("\\" + new $c_jl_Character().init___C(ch))) }); const $f_sci_StringLike__unwrapArg__psci_StringLike__O__O = (function($thiz, arg) { if ((arg instanceof $c_s_math_ScalaNumber)) { const x2 = arg; return x2.underlying__O() } else { return arg } }); const $f_sci_StringLike__slice__I__I__O = (function($thiz, from, until) { const start = ((from > 0) ? from : 0); const that = $thiz.length__I(); const end = ((until < that) ? until : that); if ((start >= end)) { return $thiz.newBuilder__scm_Builder().result__O() } else { const jsx$1 = $thiz.newBuilder__scm_Builder(); const thiz = $thiz.toString__T(); const x = thiz.substring(start, end); return jsx$1.$$plus$plus$eq__sc_TraversableOnce__scg_Growable(new $c_sci_StringOps().init___T(x)).result__O() } }); const $f_sci_StringLike__split__C__AT = (function($thiz, separator) { const thiz = $thiz.toString__T(); const regex = $f_sci_StringLike__escape__psci_StringLike__C__T($thiz, separator); return $m_sjsr_RuntimeString$().split__T__T__I__AT(thiz, regex, 0) }); const $f_sci_StringLike__$$times__I__T = (function($thiz, n) { const buf = new $c_scm_StringBuilder().init___(); const isEmpty$4 = (n <= 0); const scala$collection$immutable$Range$$lastElement$4 = (((-1) + n) | 0); if ((!isEmpty$4)) { let i = 0; while (true) { const arg1 = i; buf.append__T__scm_StringBuilder($thiz.toString__T()); if ((i === scala$collection$immutable$Range$$lastElement$4)) { break }; i = ((1 + i) | 0) } }; return buf.underlying$5.java$lang$StringBuilder$$content$f }); const $f_sci_StringLike__capitalize__T = (function($thiz) { if (($thiz.toString__T() === null)) { return null } else { const thiz = $thiz.toString__T(); if (((thiz.length | 0) === 0)) { return "" } else { const thiz$1 = $thiz.toString__T(); const c = (65535 & (thiz$1.charCodeAt(0) | 0)); const this$5 = $m_jl_Character$(); if (this$5.isUpperCase__I__Z(c)) { return $thiz.toString__T() } else { const chars = $m_sjsr_RuntimeString$().toCharArray__T__AC($thiz.toString__T()); const c$1 = chars.u[0]; chars.u[0] = $m_jl_Character$().toUpperCase__C__C(c$1); const this$8 = $m_sjsr_RuntimeString$(); return this$8.newString__AC__I__I__T(chars, 0, chars.u.length) } } } }); const $f_sci_StringLike__lines__sc_Iterator = (function($thiz) { const this$2 = new $c_sci_StringLike$$anon$1().init___sci_StringLike($thiz); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(line$2) { const line = line$2; const this$1 = new $c_sci_WrappedString().init___T(line); return $f_sci_StringLike__stripLineEnd__T(this$1) }) })($thiz)); return new $c_sc_Iterator$$anon$10().init___sc_Iterator__F1(this$2, f) }); const $f_sci_StringLike__stripSuffix__T__T = (function($thiz, suffix) { if ($m_sjsr_RuntimeString$().endsWith__T__T__Z($thiz.toString__T(), suffix)) { const thiz$1 = $thiz.toString__T(); const thiz = $thiz.toString__T(); const endIndex = (((thiz.length | 0) - (suffix.length | 0)) | 0); return thiz$1.substring(0, endIndex) } else { return $thiz.toString__T() } }); const $f_sci_StringLike__stripMargin__C__T = (function($thiz, marginChar) { const buf = new $c_scm_StringBuilder().init___(); const this$1 = new $c_sci_StringLike$$anon$1().init___sci_StringLike($thiz); while (this$1.hasNext__Z()) { const arg1 = this$1.next__T(); const len = (arg1.length | 0); let index = 0; while (true) { let jsx$1; if ((index < len)) { const index$1 = index; jsx$1 = ((65535 & (arg1.charCodeAt(index$1) | 0)) <= 32) } else { jsx$1 = false }; if (jsx$1) { index = ((1 + index) | 0) } else { break } }; let jsx$3; if ((index < len)) { const index$2 = index; jsx$3 = ((65535 & (arg1.charCodeAt(index$2) | 0)) === marginChar) } else { jsx$3 = false }; let jsx$2; if (jsx$3) { const beginIndex = ((1 + index) | 0); jsx$2 = arg1.substring(beginIndex) } else { jsx$2 = arg1 }; buf.append__T__scm_StringBuilder(jsx$2) }; return buf.underlying$5.java$lang$StringBuilder$$content$f }); const $f_sci_StringLike__stripLineEnd__T = (function($thiz) { const thiz = $thiz.toString__T(); const len = (thiz.length | 0); if ((len === 0)) { return $thiz.toString__T() } else { const last = $thiz.apply__I__C((((-1) + len) | 0)); if ($f_sci_StringLike__scala$collection$immutable$StringLike$$isLineBreak__C__Z($thiz, last)) { const thiz$1 = $thiz.toString__T(); const endIndex = ((((last === 10) && (len >= 2)) && ($thiz.apply__I__C((((-2) + len) | 0)) === 13)) ? (((-2) + len) | 0) : (((-1) + len) | 0)); return thiz$1.substring(0, endIndex) } else { return $thiz.toString__T() } } }); class $c_Lio_kaitai_struct_languages_JavaCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.translator$2 = null; this.fromFileClass$2 = null; this.NAME$undSWITCH$undON$2 = null; this.outHeader$2 = null; this.out$2 = null; this.importList$2 = null }; instanceDeclaration__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.out$2.puts__T__V((((("private " + $m_Lio_kaitai_struct_languages_JavaCompiler$().kaitaiType2JavaTypeBoxed__Lio_kaitai_struct_datatype_DataType__T(attrType)) + " ") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")) }; switchEnd__V() { this.out$2.puts__T__V("}") }; debugClassSequence__sci_List__V(seq) { const f = (function($this) { return (function(attr$2) { const attr = attr$2; return (("\"" + $this.idToStr__Lio_kaitai_struct_format_Identifier__T(attr.id$1)) + "\"") }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((seq === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = seq.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = seq.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(seq, bf); let these = seq; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const seqStr = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V((("public static String[] _seqFields = new String[] { " + seqStr) + " };")) }; instanceHeader__T__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.out$2.puts__T__V((((("public " + $m_Lio_kaitai_struct_languages_JavaCompiler$().kaitaiType2JavaTypeBoxed__Lio_kaitai_struct_datatype_DataType__T(dataType)) + " ") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(instName)) + "() {")); this.out$2.inc__V() }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = new ArrayList();")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = new ArrayList();")) }; const jsx$2 = this.out$2; const jsx$1 = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id); const this$1 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); const attrType = new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(dataType); jsx$2.puts__T__V((((jsx$1 + " = new ") + this$1.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(attrType)) + "();")); this.out$2.puts__T__V("{"); this.out$2.inc__V(); const jsx$3 = this.out$2; const this$2 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); jsx$3.puts__T__V((((this$2.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(dataType) + " ") + this.translator$2.doName__T__T("_")) + ";")); this.out$2.puts__T__V("int i = 0;"); this.out$2.puts__T__V("do {"); this.out$2.inc__V(); const this$3 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$3.list$1, "java.util.ArrayList") }; switchIfElseStart__V() { this.out$2.puts__T__V("else {"); this.out$2.inc__V() }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; classHeader__T__V(name) { const staticStr = ((this.out$2.indentLevel$1 > 0) ? "static " : ""); this.out$2.puts__T__V((((("public " + staticStr) + "class ") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + " extends KaitaiStruct {")); this.out$2.inc__V(); if (this.config$1.readStoresPos$1) { this.out$2.puts__T__V("public Map _attrStart = new HashMap();"); this.out$2.puts__T__V("public Map _attrEnd = new HashMap();"); this.out$2.puts__T__V("public Map> _arrStart = new HashMap>();"); this.out$2.puts__T__V("public Map> _arrEnd = new HashMap>();"); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "java.util.ArrayList"); const this$3 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$3.list$1, "java.util.HashMap"); const this$4 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$4.list$1, "java.util.Map") }; const x1 = this.typeProvider$1.nowClass$1.meta$1.endian$1; let isInheritedEndian; matchEnd6: { if ((x1 instanceof $c_s_Some)) { const x2 = x1; const p3 = x2.value$2; const x = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x === p3)) { isInheritedEndian = true; break matchEnd6 } }; isInheritedEndian = false }; let jsx$1; if ((!isInheritedEndian)) { const thiz = this.config$1.java$1.fromFileClass$1; if ((thiz === null)) { throw new $c_jl_NullPointerException().init___() }; jsx$1 = (!(thiz === "")) } else { jsx$1 = false }; if ((jsx$1 && this.typeProvider$1.nowClass$1.params$1.isEmpty__Z())) { this.out$2.puts__T__V((("public static " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + " fromFile(String fileName) throws IOException {")); this.out$2.inc__V(); this.out$2.puts__T__V((((("return new " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + "(new ") + this.fromFileClass$2) + "(fileName));")); this.out$2.dec__V(); this.out$2.puts__T__V("}") } }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V("if (_is_le) {"); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(id, on, onType, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(this, id, on, onType, cases, normalCaseProc, elseCaseProc) }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.instanceHeader__T__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V($f_sc_LinearSeqOptimized__last__O(className), instName, dataType, isNullable) }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = new ArrayList();")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = new ArrayList();")) }; const jsx$2 = this.out$2; const jsx$1 = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id); const this$1 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); const attrType = new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(dataType); jsx$2.puts__T__V((((jsx$1 + " = new ") + this$1.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(attrType)) + "();")); this.out$2.puts__T__V("{"); this.out$2.inc__V(); this.out$2.puts__T__V("int i = 0;"); this.out$2.puts__T__V((("while (!" + io) + ".isEof()) {")); this.out$2.inc__V(); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "java.util.ArrayList") }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { return ("this." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; switchIfStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__V(id, on, onType) { this.out$2.puts__T__V("{"); this.out$2.inc__V(); const jsx$2 = this.out$2; const this$1 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); const jsx$1 = this$1.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(onType); const e = this.NAME$undSWITCH$undON$2; jsx$2.puts__T__V((((((jsx$1 + " ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + " = ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ";")) }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.out$2.puts__T__V((((io + ".seek(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + ");")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + ";")) }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr) + ";")) }; attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, attrType, checkExpr, err, errArgs) { const f = (function($this) { return (function(v$2) { const v = v$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((errArgs === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = errArgs.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = errArgs.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(errArgs, bf); let these = errArgs; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const errArgsStr = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V((("if (!(" + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(checkExpr)) + ")) {")); this.out$2.inc__V(); this.out$2.puts__T__V((((("throw new " + this.ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err)) + "(") + errArgsStr) + ");")); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condRepeatEosFooter__V() { this.out$2.puts__T__V("i++;"); this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; blockScopeHeader__V() { this.out$2.puts__T__V("{"); this.out$2.inc__V() }; getOrCreatePosList__T__T__T__V(listName, varName, io) { this.out$2.puts__T__V("{"); this.out$2.inc__V(); this.out$2.puts__T__V((((("ArrayList _posList = " + listName) + ".get(\"") + varName) + "\");")); this.out$2.puts__T__V("if (_posList == null) {"); this.out$2.inc__V(); this.out$2.puts__T__V("_posList = new ArrayList();"); this.out$2.puts__T__V((((listName + ".put(\"") + varName) + "\", _posList);")); this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.puts__T__V((("_posList.add(" + io) + ".pos());")); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; blockScopeFooter__V() { this.universalFooter__V() }; pushPos__T__V(io) { this.out$2.puts__T__V((("long _pos = " + io) + ".pos();")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { this.classConstructorHeader__T__Lio_kaitai_struct_datatype_DataType__T__Z__sci_List__V($f_sc_LinearSeqOptimized__last__O(name), parentType, $f_sc_LinearSeqOptimized__last__O(rootClassName), isHybrid, params) }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V((("KaitaiStream io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx)) + ";")); return "io" }; switchCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) }; switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { let expr; if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; expr = (((io + ".read") + $m_Lio_kaitai_struct_Utils$().capitalize__T__T(x6.apiCall__s_Option__T(defEndian))) + "()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; expr = (((io + ".readBytes(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { expr = (io + ".readBytesFull()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; expr = (((((((((io + ".readBytesTerm((byte) ") + terminator) + ", ") + include) + ", ") + consume) + ", ") + eosError) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; expr = (((io + ".readBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(bitEndian.toSuffix__T())) + "(1) != 0") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; expr = (((((io + ".readBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(bitEndian$2.toSuffix__T())) + "(") + width) + ")") } else { if ((!(dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType))) { throw new $c_s_MatchError().init___O(dataType) }; const x10 = dataType; let addArgs; if (x10.isOpaque__Z()) { addArgs = "" } else { let rc8 = false; let x2$2 = null; const x1$2 = x10.forcedParent$3; let parent; matchEnd9: { if ((x1$2 instanceof $c_s_Some)) { rc8 = true; x2$2 = x1$2; const p3 = x2$2.value$2; const x = $m_Lio_kaitai_struct_datatype_DataType$().USER$undTYPE$undNO$undPARENT$1; if (((x === null) ? (p3 === null) : x.equals__O__Z(p3))) { parent = "null"; break matchEnd9 } }; if (rc8) { const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp); break matchEnd9 }; const x$3 = $m_s_None$(); if ((x$3 === x1$2)) { parent = "this"; break matchEnd9 }; throw new $c_s_MatchError().init___O(x1$2) }; const x1$3 = x10.classSpec$3.get__O().meta$1.endian$1; let addEndian; matchEnd6: { if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const p3$2 = x2$3.value$2; const x$5 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$5 === p3$2)) { addEndian = ", _is_le"; break matchEnd6 } }; addEndian = "" }; addArgs = (((", " + parent) + ", _root") + addEndian) }; const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const jsx$2 = x10.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); const addParams = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2), ", ", ", ", ""); expr = (((((("new " + $m_Lio_kaitai_struct_languages_JavaCompiler$().types2class__sci_List__T(x10.name$3)) + "(") + io) + addArgs) + addParams) + ")") }; if ((!((assignType === null) ? (dataType === null) : assignType.equals__O__Z(dataType)))) { const this$2 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); return (((("(" + this$2.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(assignType)) + ") (") + expr) + ")") } else { return expr } }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrId, attrType, ios, rep) { const nonLocalReturnKey1 = new $c_O().init___(); try { if ((!ios.isEmpty__Z())) { const arg1 = ios.get__O(); const io = arg1; if (((attrId instanceof $c_Lio_kaitai_struct_format_RawIdentifier) || (attrId instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier))) { throw new $c_sr_NonLocalReturnControl$mcV$sp().init___O__sr_BoxedUnit(nonLocalReturnKey1, (void 0)) }; const name = this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrId); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { this.out$2.puts__T__V((((("_attrStart.put(\"" + name) + "\", ") + io) + ".pos());")) } else { let jsx$1; if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_format_RepeatEos$(); if ((x$3 === rep)) { jsx$1 = true } else { jsx$1 = (rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil) } }; if (jsx$1) { this.getOrCreatePosList__T__T__T__V("_arrStart", name, io) } else { throw new $c_s_MatchError().init___O(rep) } } } } catch (e) { if ((e instanceof $c_sr_NonLocalReturnControl)) { const ex = e; if ((ex.key$2 === nonLocalReturnKey1)) { ex.value$mcV$sp__V() } else { throw ex } } else { throw e } } }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = this.importList$2; const this$3 = this$1.list$1.toList__sci_List(); const f = (function($this) { return (function(x$2) { const x = x$2; return (("import " + x) + ";") }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$3 === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = this$3.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$3.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$4 = rest; rest = this$4.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$3, bf); let these = this$3; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$5 = these; these = this$5.tail__sci_List() }; jsx$1 = b.result__O() }; return (("\n" + jsx$1.mkString__T__T("\n")) + "\n") }; condRepeatExprFooter__V() { this.universalFooter__V() }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_JavaTranslator().init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(this.typeProvider$1, this.importList$2); const pos = $m_sjsr_RuntimeString$().lastIndexOf__T__I__I(this.config$1.java$1.fromFileClass$1, 46); let jsx$1; if ((pos < 0)) { jsx$1 = this.config$1.java$1.fromFileClass$1 } else { const this$1 = this.importList$2; const s = this.config$1.java$1.fromFileClass$1; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, s); const thiz = this.config$1.java$1.fromFileClass$1; const beginIndex = ((1 + pos) | 0); jsx$1 = thiz.substring(beginIndex) }; this.fromFileClass$2 = jsx$1; this.NAME$undSWITCH$undON$2 = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Name().init___Lio_kaitai_struct_exprlang_Ast$identifier(new $c_Lio_kaitai_struct_exprlang_Ast$identifier().init___T($m_Lio_kaitai_struct_format_Identifier$().SWITCH$undON$1)); return this }; attrParse2$default$7__s_Option() { return $m_s_None$() }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { const jsx$1 = this.out$2; const this$1 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); jsx$1.puts__T__V((((((this$1.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(dataType) + " ") + id) + " = ") + expr) + ";")) }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$2) } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$3 = x5.name$2; return $m_Lio_kaitai_struct_Utils$().lowerCamelCase__T__T(name$3) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x6 = id; const innerId = x6.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return ("_t_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; alignToByte__T__V(io) { this.out$2.puts__T__V((io + ".alignToByte();")) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; switchCaseEnd__V() { this.out$2.puts__T__V("break;"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { let x1_$_$$und1$f; let x1_$_$$und2$f; if (isRaw) { const _2 = this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1); const jsx$1_$_$$und1$f = "byte[] "; const jsx$1_$_$$und2$f = _2; x1_$_$$und1$f = jsx$1_$_$$und1$f; x1_$_$$und2$f = jsx$1_$_$$und2$f } else { const _2$1 = this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1); const jsx$2_$_$$und1$f = ""; const jsx$2_$_$$und2$f = _2$1; x1_$_$$und1$f = jsx$2_$_$$und1$f; x1_$_$$und2$f = jsx$2_$_$$und2$f }; const typeDecl = x1_$_$$und1$f; const tempVar = x1_$_$$und2$f; this.out$2.puts__T__V(((((("" + typeDecl) + tempVar) + " = ") + expr) + ";")); this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".add(") + tempVar) + ");")) }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.out$2.puts__T__V((((("private " + $m_Lio_kaitai_struct_languages_JavaCompiler$().kaitaiType2JavaType__Lio_kaitai_struct_datatype_DataType__Z__T(attrType, isNullable)) + " ") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + ";")) }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V((("if (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + ") {")); this.out$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".add(") + expr) + ");")) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".add(") + expr) + ");")) }; classHeader__sci_List__V(name) { this.classHeader__T__V($f_sc_LinearSeqOptimized__last__O(name)) }; readHeader__s_Option__Z__V(endian, isEmpty) { const readAccessAndType = ((!this.config$1.autoRead$1) ? "public" : "private"); let suffix; if ((endian instanceof $c_s_Some)) { const x2 = endian; const e = x2.value$2; $m_Lio_kaitai_struct_Utils$(); const s = e.toSuffix__T(); suffix = s.toUpperCase() } else { const x = $m_s_None$(); if ((!(x === endian))) { throw new $c_s_MatchError().init___O(endian) }; suffix = "" }; this.out$2.puts__T__V((((readAccessAndType + " void _read") + suffix) + "() {")); this.out$2.inc__V() }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { let condStr; if ((condition instanceof $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumByLabel)) { const x2 = condition; const s = x2.label$1.name$1; $m_Lio_kaitai_struct_Utils$(); condStr = s.toUpperCase() } else { condStr = $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition) }; this.out$2.puts__T__V((("case " + condStr) + ": {")); this.out$2.inc__V() }; classConstructorFooter__V() { this.universalFooter__V() }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.out$2.puts__T__V((io + ".seek(_pos);")) }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.idToStr__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return (((memberName + ".get(") + memberName) + ".size() - 1)") } }; runReadCalc__V() { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("if (_is_le == null) {"); this.out$2.inc__V(); this.out$2.puts__T__V("throw new KaitaiStream.UndecidedEndiannessError();"); this.out$2.dec__V(); this.out$2.puts__T__V("} else if (_is_le) {"); this.out$2.inc__V(); this.out$2.puts__T__V("_readLE();"); this.out$2.dec__V(); this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); this.out$2.puts__T__V("_readBE();"); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; outFileName__T__T(topClassName) { const thiz = this.config$1.java$1.javaPackage$1; const target = $g.String.fromCharCode(46); const replacement = $g.String.fromCharCode(47); return (((thiz.split(target).join(replacement) + "/") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(topClassName)) + ".java") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; readFooter__V() { this.universalFooter__V() }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = new ArrayList(((Number) (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")).intValue());")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = new ArrayList(((Number) (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")).intValue());")) }; const jsx$2 = this.out$2; const jsx$1 = this.idToStr__Lio_kaitai_struct_format_Identifier__T(id); const this$1 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); const attrType = new $c_Lio_kaitai_struct_datatype_DataType$ArrayTypeInStream().init___Lio_kaitai_struct_datatype_DataType(dataType); jsx$2.puts__T__V((((((jsx$1 + " = new ") + this$1.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(attrType)) + "(((Number) (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")).intValue());")); this.out$2.puts__T__V((("for (int i = 0; i < " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + "; i++) {")); this.out$2.inc__V(); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "java.util.ArrayList") }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { this.out$2.puts__T__V((("switch (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ") {")) }; ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err) { const x = $m_Lio_kaitai_struct_datatype_EndOfStreamError$(); if ((x === err)) { return this.config$1.java$1.endOfStreamErrorClass$1 } else { return ("KaitaiStream." + err.name__T()) } }; switchCmpExpr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition) { const e = new $c_Lio_kaitai_struct_exprlang_Ast$expr$Compare().init___Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr(this.NAME$undSWITCH$undON$2, $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$(), condition); return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e) }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("/**"); const this$2 = doc.summary$1; if ((!this$2.isEmpty__Z())) { const arg1 = this$2.get__O(); const summary = arg1; this.out$2.putsLines__T__T__T__V(" * ", summary, "") }; const this$3 = doc.ref$1; let these = this$3; while ((!these.isEmpty__Z())) { const arg1$1 = these.head__O(); const x0$1 = arg1$1; if ((x0$1 instanceof $c_Lio_kaitai_struct_format_TextRef)) { const x2 = x0$1; const text = x2.text$1; this.out$2.putsLines__T__T__T__V(" * ", (("@see \"" + text) + "\""), "") } else if ((x0$1 instanceof $c_Lio_kaitai_struct_format_UrlRef)) { const x3 = x0$1; this.out$2.putsLines__T__T__T__V(" * ", ("@see " + x3.toAhref__T()), "") } else { throw new $c_s_MatchError().init___O(x0$1) }; const this$4 = these; these = this$4.tail__sci_List() }; this.out$2.puts__T__V(" */") }; classFooter__sci_List__V(name) { $f_sc_LinearSeqOptimized__last__O(name); this.universalFooter__V() }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { let expr; if ((!((assignType === null) ? (dataType === null) : assignType.equals__O__Z(dataType)))) { const this$1 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); expr = (((("((" + this$1.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(dataType)) + ") (") + id) + "))") } else { expr = id }; this.out$2.puts__T__V((expr + "._read();")) }; instanceFooter__V() { this.universalFooter__V() }; runRead__sci_List__V(name) { this.out$2.puts__T__V("_read();") }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrId, attrType, io, rep) { if (((attrId instanceof $c_Lio_kaitai_struct_format_RawIdentifier) || (attrId instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier))) { return (void 0) }; const name = this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrId); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { this.out$2.puts__T__V((((("_attrEnd.put(\"" + name) + "\", ") + io) + ".pos());")) } else { let jsx$1; if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_format_RepeatEos$(); if ((x$3 === rep)) { jsx$1 = true } else { jsx$1 = (rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil) } }; if (jsx$1) { this.getOrCreatePosList__T__T__T__V("_arrEnd", name, io) } else { throw new $c_s_MatchError().init___O(rep) } } }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((("KaitaiStream.bytesStripRight(" + expr0) + ", (byte) ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((("KaitaiStream.bytesTerminate(" + expr1) + ", (byte) ") + term) + ", ") + include) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; switchIfEnd__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; switchIfCaseEnd__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.universalFooter__V() }; normalIO__T() { return this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_IoIdentifier$()) }; switchElseStart__V() { this.out$2.puts__T__V("default: {"); this.out$2.inc__V() }; enumDeclaration__T__T__sc_Seq__V(curClass, enumName, enumColl) { const enumClass = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(enumName); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("public enum " + enumClass) + " {")); this.out$2.inc__V(); if ((enumColl.size__I() > 1)) { enumColl.dropRight__I__O(1).foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); const jsx$3 = $this.out$2; $m_Lio_kaitai_struct_Utils$(); const jsx$2 = label.toUpperCase(); const jsx$1 = $this.translator$2; const this$5 = $m_s_math_BigInt$(); jsx$3.puts__T__V((((jsx$2 + "(") + jsx$1.doIntLiteral__s_math_BigInt__T(this$5.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(lo, hi)))) + "),")) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this))) }; const x1 = enumColl.last__O(); if ((x1 !== null)) { const t$1 = x1.$$und1$mcJ$sp__J(); const lo$1 = t$1.lo$2; const hi$1 = t$1.hi$2; const label$1 = x1.$$und2__O(); const jsx$6 = this.out$2; $m_Lio_kaitai_struct_Utils$(); const jsx$5 = label$1.toUpperCase(); const jsx$4 = this.translator$2; const this$9 = $m_s_math_BigInt$(); jsx$6.puts__T__V((((jsx$5 + "(") + jsx$4.doIntLiteral__s_math_BigInt__T(this$9.apply__J__s_math_BigInt(new $c_sjsr_RuntimeLong().init___I__I(lo$1, hi$1)))) + ");")) } else { throw new $c_s_MatchError().init___O(x1) }; const this$10 = this.out$2; this$10.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("private final long id;"); this.out$2.puts__T__V((enumClass + "(long id) { this.id = id; }")); this.out$2.puts__T__V("public long id() { return id; }"); this.out$2.puts__T__V((((((("private static final Map byId = new HashMap(") + enumColl.size__I()) + ");")); this.out$2.puts__T__V("static {"); this.out$2.inc__V(); this.out$2.puts__T__V((((("for (" + enumClass) + " e : ") + enumClass) + ".values())")); this.out$2.inc__V(); this.out$2.puts__T__V("byId.put(e.id(), e);"); this.out$2.dec__V(); this.out$2.dec__V(); this.out$2.puts__T__V("}"); this.out$2.puts__T__V((("public static " + enumClass) + " byId(long id) { return byId.get(id); }")); this.out$2.dec__V(); this.out$2.puts__T__V("}"); const this$11 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$11.list$1, "java.util.Map"); const this$12 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$12.list$1, "java.util.HashMap") }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { $f_Lio_kaitai_struct_languages_components_NoNeedForFullClassPath__enumDeclaration__sci_List__T__sc_Seq__V(this, curClass, enumName, enumColl) }; switchIfCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("if (" + this.switchCmpExpr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + ") {")); this.out$2.inc__V() }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.out$2.puts__T__V((("if (" + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + " != null)")); this.out$2.inc__V(); this.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.out$2.dec__V() }; switchRequiresIfs__Lio_kaitai_struct_datatype_DataType__Z(onType) { return (!((onType instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType) || ((onType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType) || (onType instanceof $c_Lio_kaitai_struct_datatype_DataType$StrType)))) }; indent__T() { return " " }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; const x1$2 = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(xorValue); const xorValueStr = ((x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType) ? this.translator$2.doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(xorValue, new $c_Lio_kaitai_struct_datatype_DataType$Int1Type().init___Z(true)) : $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)); expr$2 = (((("KaitaiStream.processXor(" + srcExpr) + ", ") + xorValueStr) + ")") } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { expr$2 = (("KaitaiStream.processZlib(" + srcExpr) + ")") } else if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((("KaitaiStream.processRotateLeft(" + srcExpr) + ", ") + expr) + ", 1)") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; const x4 = proc; const name = x4.name$1; const args = x4.args$1; const namespace = $f_sc_TraversableLike__init__O(name).mkString__T__T("."); const this$2 = new $c_sci_StringOps().init___T(namespace); let jsx$1; if ($f_sc_TraversableOnce__nonEmpty__Z(this$2)) { jsx$1 = "." } else { jsx$1 = "" }; const name$1 = $f_sc_LinearSeqOptimized__last__O(name); const procClass = ((namespace + jsx$1) + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$1)); const procName = ("_process_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(varSrc)); const jsx$3 = this.out$2; const jsx$2 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(e$2) { const e = e$2; return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T($this, e) }) })(this)); const this$3 = $m_sc_Seq$(); jsx$3.puts__T__V((((((((procClass + " ") + procName) + " = new ") + procClass) + "(") + args.map__F1__scg_CanBuildFrom__O(jsx$2, this$3.ReusableCBFInstance$2).mkString__T__T(", ")) + ");")); expr$2 = (((procName + ".decode(") + srcExpr) + ")") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; switchIfCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("else if (" + this.switchCmpExpr__Lio_kaitai_struct_exprlang_Ast$expr__T(condition)) + ") {")); this.out$2.inc__V() }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; classConstructorHeader__T__Lio_kaitai_struct_datatype_DataType__T__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { const x1 = this.typeProvider$1.nowClass$1.meta$1.endian$1; let jsx$1; matchEnd12: { if ((x1 instanceof $c_s_Some)) { const x2 = x1; if ((x2.value$2 instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) { jsx$1 = true; break matchEnd12 } }; if ((x1 instanceof $c_s_Some)) { const x4 = x1; const p5 = x4.value$2; const x = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x === p5)) { jsx$1 = true; break matchEnd12 } }; jsx$1 = false }; if (jsx$1) { this.out$2.puts__T__V("private Boolean _is_le;") }; const jsx$4 = $m_Lio_kaitai_struct_Utils$(); const f = (function($this) { return (function(p$2) { const p = p$2; const this$1 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); const attrType = p.dataType$1; const jsx$2 = this$1.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(attrType); const id = p.id$1; return ((jsx$2 + " ") + $this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }) })(this); const this$2 = $m_sci_List$(); const bf = this$2.ReusableCBFInstance$2; let jsx$3; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((params === $m_sci_Nil$())) { jsx$3 = $m_sci_Nil$() } else { const arg1 = params.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = params.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$3 = rest; rest = this$3.tail__sci_List() }; jsx$3 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(params, bf); let these = params; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$4 = these; these = this$4.tail__sci_List() }; jsx$3 = b.result__O() }; const paramsArg = jsx$4.join__sc_TraversableOnce__T__T__T__T(jsx$3, ", ", ", ", ""); if (isHybrid) { const this$5 = this.out$2; this$5.sb$2.append__T__scm_StringBuilder("\n"); const jsx$6 = this.out$2; const jsx$5 = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name); const this$6 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); jsx$6.puts__T__V((((((((("public " + jsx$5) + "(KaitaiStream _io, ") + this$6.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(parentType)) + " _parent, ") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(rootClassName)) + " _root, boolean _is_le") + paramsArg) + ") {")); this.out$2.inc__V(); this.out$2.puts__T__V("super(_io);"); this.out$2.puts__T__V("this._parent = _parent;"); this.out$2.puts__T__V("this._root = _root;"); this.out$2.puts__T__V("this._is_le = _is_le;") } else { const jsx$8 = $m_Lio_kaitai_struct_Utils$(); const f$1 = (function(this$2$1) { return (function(p$3$2) { const p$3 = p$3$2; const id$1 = p$3.id$1; return this$2$1.idToStr__Lio_kaitai_struct_format_Identifier__T(id$1) }) })(this); const this$7 = $m_sci_List$(); const bf$1 = this$7.ReusableCBFInstance$2; let jsx$7; if ((bf$1 === $m_sci_List$().ReusableCBFInstance$2)) { if ((params === $m_sci_Nil$())) { jsx$7 = $m_sci_Nil$() } else { const arg1$3 = params.head__O(); const h$1 = new $c_sci_$colon$colon().init___O__sci_List(f$1(arg1$3), $m_sci_Nil$()); let t$1 = h$1; let rest$1 = params.tail__sci_List(); while ((rest$1 !== $m_sci_Nil$())) { const arg1$4 = rest$1.head__O(); const nx$1 = new $c_sci_$colon$colon().init___O__sci_List(f$1(arg1$4), $m_sci_Nil$()); t$1.tl$5 = nx$1; t$1 = nx$1; const this$8 = rest$1; rest$1 = this$8.tail__sci_List() }; jsx$7 = h$1 } } else { const b$1 = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(params, bf$1); let these$1 = params; while ((!these$1.isEmpty__Z())) { const arg1$5 = these$1.head__O(); b$1.$$plus$eq__O__scm_Builder(f$1(arg1$5)); const this$9 = these$1; these$1 = this$9.tail__sci_List() }; jsx$7 = b$1.result__O() }; const paramsRelay = jsx$8.join__sc_TraversableOnce__T__T__T__T(jsx$7, ", ", ", ", ""); const this$10 = this.out$2; this$10.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((((("public " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + "(KaitaiStream _io") + paramsArg) + ") {")); this.out$2.inc__V(); this.out$2.puts__T__V((("this(_io, null, null" + paramsRelay) + ");")); this.out$2.dec__V(); this.out$2.puts__T__V("}"); const this$11 = this.out$2; this$11.sb$2.append__T__scm_StringBuilder("\n"); const jsx$10 = this.out$2; const jsx$9 = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name); const this$12 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); jsx$10.puts__T__V((((((("public " + jsx$9) + "(KaitaiStream _io, ") + this$12.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(parentType)) + " _parent") + paramsArg) + ") {")); this.out$2.inc__V(); this.out$2.puts__T__V((("this(_io, _parent, null" + paramsRelay) + ");")); this.out$2.dec__V(); this.out$2.puts__T__V("}"); const this$13 = this.out$2; this$13.sb$2.append__T__scm_StringBuilder("\n"); const jsx$12 = this.out$2; const jsx$11 = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name); const this$14 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); jsx$12.puts__T__V((((((((("public " + jsx$11) + "(KaitaiStream _io, ") + this$14.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(parentType)) + " _parent, ") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(rootClassName)) + " _root") + paramsArg) + ") {")); this.out$2.inc__V(); this.out$2.puts__T__V("super(_io);"); this.out$2.puts__T__V("this._parent = _parent;"); if ((name === rootClassName)) { this.out$2.puts__T__V("this._root = _root == null ? this : _root;") } else { this.out$2.puts__T__V("this._root = _root;") } }; let these$2 = params; while ((!these$2.isEmpty__Z())) { const arg1$6 = these$2.head__O(); const p$4 = arg1$6; const jsx$13 = p$4.id$1; const id$2 = p$4.id$1; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(jsx$13, this.idToStr__Lio_kaitai_struct_format_Identifier__T(id$2)); const this$15 = these$2; these$2 = this$15.tail__sci_List() } }; switchCasesRender__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { const onType = this.typeProvider$1.$$undcurrentSwitchType$1.get__O(); const isNullable = (onType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType); if (isNullable) { const e = this.NAME$undSWITCH$undON$2; const nameSwitchStr = $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e); this.out$2.puts__T__V("{"); this.out$2.inc__V(); const jsx$1 = this.out$2; const this$1 = $m_Lio_kaitai_struct_languages_JavaCompiler$(); jsx$1.puts__T__V((((((this$1.kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(onType) + " ") + nameSwitchStr) + " = ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on)) + ";")); this.out$2.puts__T__V((("if (" + nameSwitchStr) + " != null) {")); this.out$2.inc__V(); $f_Lio_kaitai_struct_languages_components_SwitchOps__switchCasesRender__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc); this.out$2.dec__V(); const x1$2 = cases.get__O__s_Option($m_Lio_kaitai_struct_datatype_DataType$SwitchType$().ELSE$undCONST$1); if ((x1$2 instanceof $c_s_Some)) { const x2 = x1$2; const result = x2.value$2; this.out$2.puts__T__V("} else {"); this.out$2.inc__V(); elseCaseProc.apply__O__O(result); this.out$2.dec__V(); this.out$2.puts__T__V("}") } else { const x = $m_s_None$(); if ((x === x1$2)) { this.out$2.puts__T__V("}") } else { throw new $c_s_MatchError().init___O(x1$2) } }; this.out$2.dec__V(); this.out$2.puts__T__V("}") } else { $f_Lio_kaitai_struct_languages_components_SwitchOps__switchCasesRender__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) } }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.puts__T__V("i++;"); this.out$2.dec__V(); this.out$2.puts__T__V((("} while (!(" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr)) + "));")); this.out$2.dec__V(); this.out$2.puts__T__V("}") }; universalFooter__V() { this.out$2.dec__V(); this.out$2.puts__T__V("}") }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { const primType = $m_Lio_kaitai_struct_languages_JavaCompiler$().kaitaiType2JavaTypePrim__Lio_kaitai_struct_datatype_DataType__T(dataType); const boxedType = $m_Lio_kaitai_struct_languages_JavaCompiler$().kaitaiType2JavaTypeBoxed__Lio_kaitai_struct_datatype_DataType__T(dataType); if ((primType !== boxedType)) { this.out$2.puts__T__V((((((primType + " _tmp = (") + primType) + ") (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, value)) + ");")); this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName) + " = _tmp;")) } else { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName) + " = ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, value)) + ";")) } }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const javaName = this.idToStr__Lio_kaitai_struct_format_Identifier__T(varName); const ioName = ("_io_" + javaName); const args = ((rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil) ? this.translator$2.doName__T__T($m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1) : this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep)); const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "io.kaitai.struct.ByteBufferKaitaiStream"); this.out$2.puts__T__V((((("KaitaiStream " + ioName) + " = new ByteBufferKaitaiStream(") + args) + ");")); return ioName }; fileHeader__T__V(topClassName) { this.outHeader$2.puts__T__V("// This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); const thiz = this.config$1.java$1.javaPackage$1; if ((thiz === null)) { throw new $c_jl_NullPointerException().init___() }; if ((!(thiz === ""))) { const this$2 = this.outHeader$2; this$2.sb$2.append__T__scm_StringBuilder("\n"); this.outHeader$2.puts__T__V((("package " + this.config$1.java$1.javaPackage$1) + ";")) }; const this$3 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$3.list$1, "io.kaitai.struct.KaitaiStruct"); const this$4 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$4.list$1, "io.kaitai.struct.KaitaiStream"); const this$5 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$5.list$1, "java.io.IOException"); const this$6 = this.out$2; this$6.sb$2.append__T__scm_StringBuilder("\n") }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { this.out$2.puts__T__V((((((("public " + $m_Lio_kaitai_struct_languages_JavaCompiler$().kaitaiType2JavaType__Lio_kaitai_struct_datatype_DataType__Z__T(attrType, isNullable)) + " ") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + "() { return ") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrName)) + "; }")) }; } const $d_Lio_kaitai_struct_languages_JavaCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_JavaCompiler: 0 }, false, "io.kaitai.struct.languages.JavaCompiler", { Lio_kaitai_struct_languages_JavaCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_SingleOutputFile: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_EveryReadIsExpression: 1, Lio_kaitai_struct_languages_components_CommonReads: 1, Lio_kaitai_struct_languages_components_UniversalFooter: 1, Lio_kaitai_struct_languages_components_UniversalDoc: 1, Lio_kaitai_struct_languages_components_AllocateIOLocalVar: 1, Lio_kaitai_struct_languages_components_FixedContentsUsingArrayByteLiteral: 1, Lio_kaitai_struct_languages_components_SwitchIfOps: 1, Lio_kaitai_struct_languages_components_NoNeedForFullClassPath: 1 }); $c_Lio_kaitai_struct_languages_JavaCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_JavaCompiler; class $c_Lio_kaitai_struct_languages_PythonCompiler extends $c_Lio_kaitai_struct_languages_components_LanguageCompiler { constructor() { super(); this.translator$2 = null; this.outHeader$2 = null; this.out$2 = null; this.importList$2 = null }; switchEnd__V() { /**/ }; debugClassSequence__sci_List__V(seq) { const f = (function($this) { return (function(attr$2) { const attr = attr$2; return (("\"" + $this.idToStr__Lio_kaitai_struct_format_Identifier__T(attr.id$1)) + "\"") }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((seq === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = seq.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = seq.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(seq, bf); let these = seq; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const seqStr = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V((("SEQ_FIELDS = [" + seqStr) + "]")) }; classToString__Lio_kaitai_struct_exprlang_Ast$expr__V(toStringExpr) { const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V("def __repr__(self):"); this.out$2.inc__V(); this.out$2.puts__T__V(("return " + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(toStringExpr))); this.out$2.dec__V() }; instanceHeader__T__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.out$2.puts__T__V("@property"); this.out$2.puts__T__V((("def " + this.publicMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + "(self):")); this.out$2.inc__V() }; condRepeatUntilHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = []")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = []")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = []")); this.out$2.puts__T__V("i = 0"); this.out$2.puts__T__V("while True:"); this.out$2.inc__V() }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$outHeader$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.outHeader$2 = x$1 }; switchIfElseStart__V() { this.out$2.puts__T__V("else:"); this.out$2.inc__V() }; classHeader__T__V(name) { this.out$2.puts__T__V((("class " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name)) + "(KaitaiStruct):")); this.out$2.inc__V() }; attrParseHybrid__F0__F0__V(leProc, beProc) { this.out$2.puts__T__V("if self._is_le:"); this.out$2.inc__V(); leProc.apply__O(); this.out$2.dec__V(); this.out$2.puts__T__V("else:"); this.out$2.inc__V(); beProc.apply__O(); this.out$2.dec__V() }; switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(id, on, onType, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCasesUsingIf__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__sci_Map__F1__F1__V(this, id, on, onType, cases, normalCaseProc, elseCaseProc) }; instanceHeader__sci_List__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V(className, instName, dataType, isNullable) { this.instanceHeader__T__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__Z__V($f_sc_LinearSeqOptimized__last__O(className), instName, dataType, isNullable) }; condRepeatEosHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__V(id, io, dataType, needRaw) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = []")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = []")) }; this.out$2.puts__T__V((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = []")); this.out$2.puts__T__V("i = 0"); this.out$2.puts__T__V((("while not " + io) + ".is_eof():")); this.out$2.inc__V() }; privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) { return ("self." + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; switchIfStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__V(id, on, onType) { this.out$2.puts__T__V(("_on = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, on))) }; seek__T__Lio_kaitai_struct_exprlang_Ast$expr__V(io, pos) { this.out$2.puts__T__V((((io + ".seek(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, pos)) + ")")) }; instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, attrType) { this.out$2.puts__T__V((((("return " + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(instName)) + " if hasattr(self, '") + this.idToStr__Lio_kaitai_struct_format_Identifier__T(instName)) + "') else None")) }; bool2Py__Z__T(b) { return (b ? "True" : "False") }; handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = ") + expr)) }; attrValidateExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_KSError__sci_List__V(attrId, attrType, checkExpr, err, errArgs) { const f = (function($this) { return (function(v$2) { const v = v$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(v) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((errArgs === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = errArgs.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = errArgs.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(errArgs, bf); let these = errArgs; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const errArgsStr = jsx$1.mkString__T__T(", "); this.out$2.puts__T__V((("if not " + this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(checkExpr)) + ":")); this.out$2.inc__V(); this.out$2.puts__T__V((((("raise " + $m_Lio_kaitai_struct_languages_PythonCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err)) + "(") + errArgsStr) + ")")); this.out$2.dec__V() }; condRepeatEosFooter__V() { this.out$2.puts__T__V("i += 1"); this.universalFooter__V() }; pushPos__T__V(io) { this.out$2.puts__T__V((("_pos = " + io) + ".pos()")) }; classConstructorHeader__sci_List__Lio_kaitai_struct_datatype_DataType__sci_List__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { this.classConstructorHeader__T__Lio_kaitai_struct_datatype_DataType__T__Z__sci_List__V($f_sc_LinearSeqOptimized__last__O(name), parentType, $f_sc_LinearSeqOptimized__last__O(rootClassName), isHybrid, params) }; useIO__Lio_kaitai_struct_exprlang_Ast$expr__T(ioEx) { this.out$2.puts__T__V(("io = " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, ioEx))); return "io" }; switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(id, on, cases, normalCaseProc, elseCaseProc) { $f_Lio_kaitai_struct_languages_components_SwitchIfOps__switchCases__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__sci_Map__F1__F1__V(this, id, on, cases, normalCaseProc, elseCaseProc) }; classDoc__sci_List__Lio_kaitai_struct_format_DocSpec__V(name, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; parseExpr__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__T__s_Option__T(dataType, assignType, io, defEndian) { if ($is_Lio_kaitai_struct_datatype_DataType$ReadableType(dataType)) { const x6 = dataType; return (((io + ".read_") + x6.apiCall__s_Option__T(defEndian)) + "()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesLimitType)) { const x7 = dataType; const e = x7.size$2; return (((io + ".read_bytes(") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, e)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesEosType)) { return (io + ".read_bytes_full()") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesTerminatedType)) { const x2 = dataType; const terminator = x2.terminator$2; const include = x2.include$2; const consume = x2.consume$2; const eosError = x2.eosError$2; return (((((((((io + ".read_bytes_term(") + terminator) + ", ") + this.bool2Py__Z__T(include)) + ", ") + this.bool2Py__Z__T(consume)) + ", ") + this.bool2Py__Z__T(eosError)) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType1)) { const x4 = dataType; const bitEndian = x4.bitEndian$2; return (((io + ".read_bits_int_") + bitEndian.toSuffix__T()) + "(1) != 0") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$BitsType)) { const x5 = dataType; const width = x5.width$3; const bitEndian$2 = x5.bitEndian$3; return (((((io + ".read_bits_int_") + bitEndian$2.toSuffix__T()) + "(") + width) + ")") } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) { const x10 = dataType; const jsx$3 = $m_Lio_kaitai_struct_Utils$(); const jsx$2 = x10.args$3; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(a$2) { const a = a$2; return $this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(a) }) })(this)); const this$1 = $m_sc_Seq$(); const addParams = jsx$3.join__sc_TraversableOnce__T__T__T__T(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2), "", ", ", ", "); let addArgs; if (x10.isOpaque__Z()) { addArgs = "" } else { const x1$2 = x10.forcedParent$3; let parent; if ((x1$2 instanceof $c_s_Some)) { const x2$2 = x1$2; const fp = x2$2.value$2; parent = this.translator$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(fp) } else { const x = $m_s_None$(); if ((!(x === x1$2))) { throw new $c_s_MatchError().init___O(x1$2) }; parent = "self" }; const x1$3 = x10.classSpec$3.get__O().meta$1.endian$1; let addEndian; matchEnd6: { if ((x1$3 instanceof $c_s_Some)) { const x2$3 = x1$3; const p3 = x2$3.value$2; const x$3 = $m_Lio_kaitai_struct_datatype_InheritedEndian$(); if ((x$3 === p3)) { addEndian = ", self._is_le"; break matchEnd6 } }; addEndian = "" }; addArgs = (((", " + parent) + ", self._root") + addEndian) }; return (((((this.userType2class__Lio_kaitai_struct_datatype_DataType$UserType__T(x10) + "(") + addParams) + io) + addArgs) + ")") } else { throw new $c_s_MatchError().init___O(dataType) } }; attrDebugStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__s_Option__Lio_kaitai_struct_format_RepeatSpec__V(attrId, attrType, ios, rep) { const nonLocalReturnKey1 = new $c_O().init___(); try { if ((!ios.isEmpty__Z())) { const arg1 = ios.get__O(); const io = arg1; if (((attrId instanceof $c_Lio_kaitai_struct_format_RawIdentifier) || (attrId instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier))) { throw new $c_sr_NonLocalReturnControl$mcV$sp().init___O__sr_BoxedUnit(nonLocalReturnKey1, (void 0)) }; const name = this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrId); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { this.out$2.puts__T__V((((("self._debug['" + name) + "']['start'] = ") + io) + ".pos()")) } else { let jsx$1; if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { jsx$1 = true } else { const x$3 = $m_Lio_kaitai_struct_format_RepeatEos$(); if ((x$3 === rep)) { jsx$1 = true } else { jsx$1 = (rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil) } }; if (jsx$1) { this.out$2.puts__T__V((("if not 'arr' in self._debug['" + name) + "']:")); this.out$2.inc__V(); this.out$2.puts__T__V((("self._debug['" + name) + "']['arr'] = []")); this.out$2.dec__V(); this.out$2.puts__T__V((((("self._debug['" + name) + "']['arr'].append({'start': ") + io) + ".pos()})")) } else { throw new $c_s_MatchError().init___O(rep) } } } } catch (e) { if ((e instanceof $c_sr_NonLocalReturnControl)) { const ex = e; if ((ex.key$2 === nonLocalReturnKey1)) { ex.value$mcV$sp__V() } else { throw ex } } else { throw e } } }; outImports__Lio_kaitai_struct_format_ClassSpec__T(topClass) { const this$1 = this.importList$2; const this$2 = this$1.list$1.toList__sci_List(); return $f_sc_TraversableOnce__mkString__T__T__T__T(this$2, "", "\n", "\n") }; condRepeatExprFooter__V() { this.universalFooter__V() }; init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig(typeProvider, config) { $c_Lio_kaitai_struct_languages_components_LanguageCompiler.prototype.init___Lio_kaitai_struct_ClassTypeProvider__Lio_kaitai_struct_RuntimeConfig.call(this, typeProvider, config); $f_Lio_kaitai_struct_languages_components_SingleOutputFile__$$init$__V(this); this.translator$2 = new $c_Lio_kaitai_struct_translators_PythonTranslator().init___Lio_kaitai_struct_translators_TypeProvider__Lio_kaitai_struct_ImportList(this.typeProvider$1, this.importList$2); return this }; attrParse2$default$7__s_Option() { return $m_s_None$() }; handleAssignmentTempVar__Lio_kaitai_struct_datatype_DataType__T__T__V(dataType, id, expr) { this.out$2.puts__T__V(((id + " = ") + expr)) }; idToStr__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return name$2 } else if ((id instanceof $c_Lio_kaitai_struct_format_NumberedIdentifier)) { const x4 = id; const idx = x4.idx$2; return (("_" + $m_Lio_kaitai_struct_format_NumberedIdentifier$().TEMPLATE$1) + idx) } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x5 = id; const name$3 = x5.name$2; return ("_m_" + name$3) } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x6 = id; const innerId = x6.innerId$2; return ("_raw_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } }; userType2class__Lio_kaitai_struct_datatype_DataType$UserType__T(t) { const name = t.classSpec$3.get__O().name$1; const firstName = name.head__O(); const prefix = ((t.isOpaque__Z() && (firstName !== this.translator$2.provider$2.nowClass$1.name$1.head__O())) ? (firstName + ".") : ""); return (prefix + $m_Lio_kaitai_struct_languages_PythonCompiler$().types2class__sci_List__T(name)) }; localTemporaryName__Lio_kaitai_struct_format_Identifier__T(id) { return ("_t_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(id)) }; alignToByte__T__V(io) { this.out$2.puts__T__V((io + ".align_to_byte()")) }; out__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.out$2 }; switchCaseEnd__V() { /**/ }; handleAssignmentRepeatUntil__Lio_kaitai_struct_format_Identifier__T__Z__V(id, expr, isRaw) { const tmpName = this.translator$2.doName__T__T((isRaw ? $m_Lio_kaitai_struct_format_Identifier$().ITERATOR2$1 : $m_Lio_kaitai_struct_format_Identifier$().ITERATOR$1)); this.out$2.puts__T__V(((tmpName + " = ") + expr)); this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".append(") + tmpName) + ")")) }; opaqueClassDeclaration__Lio_kaitai_struct_format_ClassSpec__V(classSpec) { const name = classSpec.name$1.head__O(); const jsx$1 = this.out$2; const x = this.config$1.pythonPackage$1; const this$2 = new $c_sci_StringOps().init___T(x); jsx$1.puts__T__V(($f_sc_TraversableOnce__nonEmpty__Z(this$2) ? ((("from " + this.config$1.pythonPackage$1) + " import ") + name) : ("import " + name))) }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$out$und$eq__Lio_kaitai_struct_StringLanguageOutputWriter__V(x$1) { this.out$2 = x$1 }; type2class__T__T(name) { return $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name) }; attributeDeclaration__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; extraAttrForIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__sci_List(id, rep) { return $m_sci_Nil$() }; condIfHeader__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.out$2.puts__T__V((("if " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, expr)) + ":")); this.out$2.inc__V() }; handleAssignmentRepeatEos__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + ".append(") + expr) + ")")) }; handleAssignmentRepeatExpr__Lio_kaitai_struct_format_Identifier__T__V(id, expr) { this.out$2.puts__T__V(((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + "[i] = ") + expr)) }; classHeader__sci_List__V(name) { this.classHeader__T__V($f_sc_LinearSeqOptimized__last__O(name)) }; readHeader__s_Option__Z__V(endian, isEmpty) { let suffix; if ((endian instanceof $c_s_Some)) { const x2 = endian; const e = x2.value$2; suffix = ("_" + e.toSuffix__T()) } else { const x = $m_s_None$(); if ((!(x === endian))) { throw new $c_s_MatchError().init___O(endian) }; suffix = "" }; this.out$2.puts__T__V((("def _read" + suffix) + "(self):")); this.out$2.inc__V(); if (isEmpty) { this.out$2.puts__T__V("pass") } }; results__Lio_kaitai_struct_format_ClassSpec__sci_Map(topClass) { return $f_Lio_kaitai_struct_languages_components_SingleOutputFile__results__Lio_kaitai_struct_format_ClassSpec__sci_Map(this, topClass) }; switchCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { /**/ }; classConstructorFooter__V() { this.universalFooter__V() }; attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__attrParse2__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__Z__s_Option__s_Option__V(this, id, dataType, io, rep, isRaw, defEndian, assignTypeOpt) }; popPos__T__V(io) { this.out$2.puts__T__V((io + ".seek(_pos)")) }; getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { const memberName = this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { return memberName } else { return ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr) ? (memberName + "[i]") : (memberName + "[-1]")) } }; runReadCalc__V() { this.out$2.puts__T__V("if not hasattr(self, '_is_le'):"); this.out$2.inc__V(); const jsx$2 = this.out$2; const err = $m_Lio_kaitai_struct_datatype_UndecidedEndiannessError$(); const jsx$1 = $m_Lio_kaitai_struct_languages_PythonCompiler$().ksErrorName__Lio_kaitai_struct_datatype_KSError__T(err); const this$1 = this.typeProvider$1.nowClass$1.path$1; jsx$2.puts__T__V((((("raise " + jsx$1) + "(\"") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "/", "/", "")) + "\")")); this.out$2.dec__V(); this.out$2.puts__T__V("elif self._is_le == True:"); this.out$2.inc__V(); this.out$2.puts__T__V("self._read_le()"); this.out$2.dec__V(); this.out$2.puts__T__V("elif self._is_le == False:"); this.out$2.inc__V(); this.out$2.puts__T__V("self._read_be()"); this.out$2.dec__V() }; outFileName__T__T(topClassName) { return (topClassName + ".py") }; io$kaitai$struct$languages$components$SingleOutputFile$$undsetter$und$importList$und$eq__Lio_kaitai_struct_ImportList__V(x$1) { this.importList$2 = x$1 }; readFooter__V() { this.universalFooter__V() }; condRepeatExprHeader__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, repeatExpr) { if ((needRaw.level__I() >= 1)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id)) + " = [None] * (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")")) }; if ((needRaw.level__I() >= 2)) { this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(new $c_Lio_kaitai_struct_format_RawIdentifier().init___Lio_kaitai_struct_format_Identifier(id))) + " = [None] * (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")")) }; this.out$2.puts__T__V((((this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(id) + " = [None] * (") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + ")")); this.out$2.puts__T__V((("for i in range(" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, repeatExpr)) + "):")); this.out$2.inc__V() }; switchStart__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_exprlang_Ast$expr__V(id, on) { /**/ }; universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) { const x1 = doc.summary$1; let docStr; if ((x1 instanceof $c_s_Some)) { const x2 = x1; const summary = x2.value$2; const this$2 = new $c_sci_StringOps().init___T(summary); const c = $f_sc_IndexedSeqOptimized__last__O(this$2); let lastChar; if ((c === null)) { lastChar = 0 } else { const this$4 = c; lastChar = this$4.value$1 }; docStr = (((lastChar === 46) || (lastChar === 10)) ? summary : (summary + ".")) } else { const x = $m_s_None$(); if ((!(x === x1))) { throw new $c_s_MatchError().init___O(x1) }; docStr = "" }; if ((docStr === null)) { throw new $c_jl_NullPointerException().init___() }; let jsx$1; if ((docStr === "")) { jsx$1 = true } else { const this$7 = new $c_sci_StringOps().init___T(docStr); const c$1 = $f_sc_IndexedSeqOptimized__last__O(this$7); let jsx$2; if ((c$1 === null)) { jsx$2 = 0 } else { const this$9 = c$1; jsx$2 = this$9.value$1 }; jsx$1 = (jsx$2 === 10) }; let extraNewline; if (jsx$1) { extraNewline = "" } else { extraNewline = "\n" }; const this$13 = doc.ref$1; const f = (function($this, extraNewline$1) { return (function(x0$1$2) { const x0$1 = x0$1$2; if ((x0$1 instanceof $c_Lio_kaitai_struct_format_TextRef)) { const x2$1 = x0$1; const text = x2$1.text$1; const seeAlso = new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T(""); seeAlso.putsLines__T__T__T__V(" ", text, ""); const this$10 = seeAlso.sb$2; return ((extraNewline$1 + "\n.. seealso::\n") + this$10.underlying$5.java$lang$StringBuilder$$content$f) } else if ((x0$1 instanceof $c_Lio_kaitai_struct_format_UrlRef)) { const x3 = x0$1; const seeAlso$2 = new $c_Lio_kaitai_struct_StringLanguageOutputWriter().init___T(""); seeAlso$2.putsLines__T__T__T__V(" ", ((x3.text$1 + " - ") + x3.url$1), ""); const this$11 = seeAlso$2.sb$2; return ((extraNewline$1 + "\n.. seealso::\n") + this$11.underlying$5.java$lang$StringBuilder$$content$f) } else { throw new $c_s_MatchError().init___O(x0$1) } }) })(this, extraNewline); const this$12 = $m_sci_List$(); const bf = this$12.ReusableCBFInstance$2; let jsx$3; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this$13 === $m_sci_Nil$())) { jsx$3 = $m_sci_Nil$() } else { const arg1 = this$13.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = this$13.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$14 = rest; rest = this$14.tail__sci_List() }; jsx$3 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$13, bf); let these = this$13; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$15 = these; these = this$15.tail__sci_List() }; jsx$3 = b.result__O() }; const refStr = jsx$3.mkString__T__T("\n"); this.out$2.putsLines__T__T__T__V("", ((("\"\"\"" + docStr) + refStr) + "\"\"\""), "") }; classFooter__sci_List__V(name) { $f_sc_LinearSeqOptimized__last__O(name); this.universalFooter__V() }; userTypeDebugRead__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_DataType__V(id, dataType, assignType) { this.out$2.puts__T__V((id + "._read()")) }; instanceFooter__V() { this.universalFooter__V() }; attributeDoc__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_DocSpec__V(id, doc) { this.universalDoc__Lio_kaitai_struct_format_DocSpec__V(doc) }; runRead__sci_List__V(name) { this.out$2.puts__T__V("self._read()") }; attrDebugEnd__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__T__Lio_kaitai_struct_format_RepeatSpec__V(attrId, attrType, io, rep) { if (((attrId instanceof $c_Lio_kaitai_struct_format_RawIdentifier) || (attrId instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier))) { return (void 0) }; const name = this.idToStr__Lio_kaitai_struct_format_Identifier__T(attrId); const x = $m_Lio_kaitai_struct_format_NoRepeat$(); if ((x === rep)) { this.out$2.puts__T__V((((("self._debug['" + name) + "']['end'] = ") + io) + ".pos()")) } else if ((rep instanceof $c_Lio_kaitai_struct_format_RepeatExpr)) { this.out$2.puts__T__V((((("self._debug['" + name) + "']['arr'][i]['end'] = ") + io) + ".pos()")) } else { const x$3 = $m_Lio_kaitai_struct_format_RepeatEos$(); if (((x$3 === rep) || (rep instanceof $c_Lio_kaitai_struct_format_RepeatUntil))) { this.out$2.puts__T__V((((((("self._debug['" + name) + "']['arr'][len(") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(attrId)) + ") - 1]['end'] = ") + io) + ".pos()")) } else { throw new $c_s_MatchError().init___O(rep) } } }; publicMemberName__Lio_kaitai_struct_format_Identifier__T(id) { if ((id instanceof $c_Lio_kaitai_struct_format_SpecialIdentifier)) { const x2 = id; const name = x2.name$2; return name } else if ((id instanceof $c_Lio_kaitai_struct_format_NamedIdentifier)) { const x3 = id; const name$2 = x3.name$2; return name$2 } else if ((id instanceof $c_Lio_kaitai_struct_format_InstanceIdentifier)) { const x4 = id; const name$3 = x4.name$2; return name$3 } else if ((id instanceof $c_Lio_kaitai_struct_format_RawIdentifier)) { const x5 = id; const innerId = x5.innerId$2; return ("_raw_" + this.publicMemberName__Lio_kaitai_struct_format_Identifier__T(innerId)) } else { throw new $c_s_MatchError().init___O(id) } }; bytesPadTermExpr__T__s_Option__s_Option__Z__T(expr0, padRight, terminator, include) { let expr1; if ((padRight instanceof $c_s_Some)) { const x2 = padRight; const padByte = (x2.value$2 | 0); expr1 = (((("KaitaiStream.bytes_strip_right(" + expr0) + ", ") + padByte) + ")") } else { const x = $m_s_None$(); if ((!(x === padRight))) { throw new $c_s_MatchError().init___O(padRight) }; expr1 = expr0 }; let expr2; if ((terminator instanceof $c_s_Some)) { const x2$2 = terminator; const term = (x2$2.value$2 | 0); expr2 = (((((("KaitaiStream.bytes_terminate(" + expr1) + ", ") + term) + ", ") + this.bool2Py__Z__T(include)) + ")") } else { const x$3 = $m_s_None$(); if ((!(x$3 === terminator))) { throw new $c_s_MatchError().init___O(terminator) }; expr2 = expr1 }; return expr2 }; switchIfEnd__V() { /**/ }; switchIfCaseEnd__V() { this.out$2.dec__V() }; condIfFooter__Lio_kaitai_struct_exprlang_Ast$expr__V(expr) { this.universalFooter__V() }; normalIO__T() { return "self._io" }; switchElseStart__V() { /**/ }; enumDeclaration__T__T__sc_Seq__V(curClass, enumName, enumColl) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "from enum import Enum"); const this$2 = this.out$2; this$2.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("class " + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(enumName)) + "(Enum):")); this.out$2.inc__V(); enumColl.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(x0$1$2) { const x0$1 = x0$1$2; matchEnd5: { if ((x0$1 !== null)) { const t = x0$1.$$und1$mcJ$sp__J(); const lo = t.lo$2; const hi = t.hi$2; const label = x0$1.$$und2__O(); if ((label !== null)) { $this.out$2.puts__T__V(((label + " = ") + new $c_sjsr_RuntimeLong().init___I__I(lo, hi))); break matchEnd5 } }; throw new $c_s_MatchError().init___O(x0$1) } }) })(this))); this.out$2.dec__V() }; enumDeclaration__sci_List__T__sc_Seq__V(curClass, enumName, enumColl) { $f_Lio_kaitai_struct_languages_components_NoNeedForFullClassPath__enumDeclaration__sci_List__T__sc_Seq__V(this, curClass, enumName, enumColl) }; switchIfCaseFirstStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("if _on == " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ":")); this.out$2.inc__V() }; instanceCheckCacheAndReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType) { this.out$2.puts__T__V((("if hasattr(self, '" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(instName)) + "'):")); this.out$2.inc__V(); this.instanceReturn__Lio_kaitai_struct_format_InstanceIdentifier__Lio_kaitai_struct_datatype_DataType__V(instName, dataType); this.out$2.dec__V(); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; switchRequiresIfs__Lio_kaitai_struct_datatype_DataType__Z(onType) { return true }; indent__T() { return " " }; attrProcess__Lio_kaitai_struct_format_ProcessExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__V(proc, varSrc, varDest, rep) { const srcExpr = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varSrc, rep); let expr$2; if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessXor)) { const x2 = proc; const xorValue = x2.key$1; const x1$2 = this.translator$2.detectType__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType(xorValue); let procName; if ((x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$IntType)) { procName = "process_xor_one" } else { if ((!(x1$2 instanceof $c_Lio_kaitai_struct_datatype_DataType$BytesType))) { throw new $c_s_MatchError().init___O(x1$2) }; procName = "process_xor_many" }; expr$2 = (((((("KaitaiStream." + procName) + "(") + srcExpr) + ", ") + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, xorValue)) + ")") } else { const x = $m_Lio_kaitai_struct_format_ProcessZlib$(); if ((x === proc)) { const this$1 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$1.list$1, "import zlib"); expr$2 = (("zlib.decompress(" + srcExpr) + ")") } else if ((proc instanceof $c_Lio_kaitai_struct_format_ProcessRotate)) { const x3 = proc; const isLeft = x3.left$1; const rotValue = x3.key$1; const expr = (isLeft ? $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue) : (("8 - (" + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, rotValue)) + ")")); expr$2 = (((("KaitaiStream.process_rotate_left(" + srcExpr) + ", ") + expr) + ", 1)") } else { if ((!(proc instanceof $c_Lio_kaitai_struct_format_ProcessCustom))) { throw new $c_s_MatchError().init___O(proc) }; const x4 = proc; const name = x4.name$1; const args = x4.args$1; let procClass; if (($f_sc_LinearSeqOptimized__length__I(name) === 1)) { const onlyName = name.head__O(); const className = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(onlyName); const this$2 = this.importList$2; const s = ((("from " + onlyName) + " import ") + className); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, s); procClass = className } else { const pkgName = $f_sc_TraversableLike__init__O(name).mkString__T__T("."); const this$3 = this.importList$2; const s$1 = ("import " + pkgName); $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$3.list$1, s$1); const name$1 = $f_sc_LinearSeqOptimized__last__O(name); procClass = ((pkgName + ".") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name$1)) }; const jsx$2 = this.out$2; const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(e$2) { const e = e$2; return $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T($this, e) }) })(this)); const this$4 = $m_sc_Seq$(); jsx$2.puts__T__V((((("_process = " + procClass) + "(") + args.map__F1__scg_CanBuildFrom__O(jsx$1, this$4.ReusableCBFInstance$2).mkString__T__T(", ")) + ")")); expr$2 = (("_process.decode(" + srcExpr) + ")") } }; $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__handleAssignment__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_format_RepeatSpec__Z__V(this, varDest, expr$2, rep, false) }; switchIfCaseStart__Lio_kaitai_struct_exprlang_Ast$expr__V(condition) { this.out$2.puts__T__V((("elif _on == " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, condition)) + ":")); this.out$2.inc__V() }; innerDocstrings__Z() { return true }; translator__Lio_kaitai_struct_translators_BaseTranslator() { return this.translator$2 }; translator__Lio_kaitai_struct_translators_AbstractTranslator() { return this.translator$2 }; classConstructorHeader__T__Lio_kaitai_struct_datatype_DataType__T__Z__sci_List__V(name, parentType, rootClassName, isHybrid, params) { const endianAdd = (isHybrid ? ", _is_le=None" : ""); const jsx$2 = $m_Lio_kaitai_struct_Utils$(); const f = (function($this) { return (function(p$2) { const p = p$2; const id = p.id$1; return $this.idToStr__Lio_kaitai_struct_format_Identifier__T(id) }) })(this); const this$1 = $m_sci_List$(); const bf = this$1.ReusableCBFInstance$2; let jsx$1; if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((params === $m_sci_Nil$())) { jsx$1 = $m_sci_Nil$() } else { const arg1 = params.head__O(); const h = new $c_sci_$colon$colon().init___O__sci_List(f(arg1), $m_sci_Nil$()); let t = h; let rest = params.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const arg1$1 = rest.head__O(); const nx = new $c_sci_$colon$colon().init___O__sci_List(f(arg1$1), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$2 = rest; rest = this$2.tail__sci_List() }; jsx$1 = h } } else { const b = $f_sc_TraversableLike__builder$1__psc_TraversableLike__scg_CanBuildFrom__scm_Builder(params, bf); let these = params; while ((!these.isEmpty__Z())) { const arg1$2 = these.head__O(); b.$$plus$eq__O__scm_Builder(f(arg1$2)); const this$3 = these; these = this$3.tail__sci_List() }; jsx$1 = b.result__O() }; const paramsList = jsx$2.join__sc_TraversableOnce__T__T__T__T(jsx$1, ", ", ", ", ""); this.out$2.puts__T__V((((("def __init__(self" + paramsList) + ", _io, _parent=None, _root=None") + endianAdd) + "):")); this.out$2.inc__V(); this.out$2.puts__T__V("self._io = _io"); this.out$2.puts__T__V("self._parent = _parent"); this.out$2.puts__T__V("self._root = _root if _root else self"); if (isHybrid) { this.out$2.puts__T__V("self._is_le = _is_le") }; let these$1 = params; while ((!these$1.isEmpty__Z())) { const arg1$3 = these$1.head__O(); const p$3 = arg1$3; const jsx$3 = p$3.id$1; const id$1 = p$3.id$1; this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V(jsx$3, this.idToStr__Lio_kaitai_struct_format_Identifier__T(id$1)); const this$4 = these$1; these$1 = this$4.tail__sci_List() }; if (this.config$1.readStoresPos$1) { const this$5 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$5.list$1, "import collections"); this.out$2.puts__T__V("self._debug = collections.defaultdict(dict)") } }; condRepeatUntilFooter__Lio_kaitai_struct_format_Identifier__T__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_datatype_NeedRaw__Lio_kaitai_struct_exprlang_Ast$expr__V(id, io, dataType, needRaw, untilExpr) { this.typeProvider$1.$$undcurrentIteratorType$1 = new $c_s_Some().init___O(dataType); this.out$2.puts__T__V((("if " + $f_Lio_kaitai_struct_languages_components_ObjectOrientedLanguage__expression__Lio_kaitai_struct_exprlang_Ast$expr__T(this, untilExpr)) + ":")); this.out$2.inc__V(); this.out$2.puts__T__V("break"); this.out$2.dec__V(); this.out$2.puts__T__V("i += 1"); this.out$2.dec__V() }; universalFooter__V() { this.out$2.dec__V(); const this$1 = this.out$2; this$1.sb$2.append__T__scm_StringBuilder("\n") }; outHeader__Lio_kaitai_struct_StringLanguageOutputWriter() { return this.outHeader$2 }; instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(instName, dataType, value) { $f_Lio_kaitai_struct_languages_components_EveryReadIsExpression__instanceCalculate__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Lio_kaitai_struct_exprlang_Ast$expr__V(this, instName, dataType, value) }; allocateIO__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep) { this.privateMemberName__Lio_kaitai_struct_format_Identifier__T(varName); const ioName = ("_io_" + this.idToStr__Lio_kaitai_struct_format_Identifier__T(varName)); const args = this.getRawIdExpr__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_format_RepeatSpec__T(varName, rep); this.out$2.puts__T__V((((ioName + " = KaitaiStream(BytesIO(") + args) + "))")); return ioName }; fileHeader__T__V(topClassName) { this.outHeader$2.puts__T__V("# This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild"); const this$1 = this.outHeader$2; this$1.sb$2.append__T__scm_StringBuilder("\n"); const this$2 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$2.list$1, "from pkg_resources import parse_version"); const this$3 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$3.list$1, "import kaitaistruct"); const this$4 = this.importList$2; $m_Lio_kaitai_struct_Utils$().addUniqueAttr__scm_ListBuffer__O__V(this$4.list$1, "from kaitaistruct import KaitaiStruct, KaitaiStream, BytesIO"); const this$5 = this.out$2; this$5.sb$2.append__T__scm_StringBuilder("\n"); const this$6 = this.out$2; this$6.sb$2.append__T__scm_StringBuilder("\n"); this.out$2.puts__T__V((("if parse_version(kaitaistruct.__version__) < parse_version('" + $m_Lio_kaitai_struct_format_KSVersion$().minimalRuntime$1) + "'):")); this.out$2.inc__V(); this.out$2.puts__T__V((("raise Exception(\"Incompatible Kaitai Struct Python API: " + $m_Lio_kaitai_struct_format_KSVersion$().minimalRuntime$1) + " or later is required, but you have %s\" % (kaitaistruct.__version__))")); this.out$2.dec__V(); const this$7 = this.out$2; this$7.sb$2.append__T__scm_StringBuilder("\n") }; attributeReader__Lio_kaitai_struct_format_Identifier__Lio_kaitai_struct_datatype_DataType__Z__V(attrName, attrType, isNullable) { /**/ }; } const $d_Lio_kaitai_struct_languages_PythonCompiler = new $TypeData().initClass({ Lio_kaitai_struct_languages_PythonCompiler: 0 }, false, "io.kaitai.struct.languages.PythonCompiler", { Lio_kaitai_struct_languages_PythonCompiler: 1, Lio_kaitai_struct_languages_components_LanguageCompiler: 1, O: 1, Lio_kaitai_struct_languages_components_SwitchOps: 1, Lio_kaitai_struct_languages_components_ValidateOps: 1, Lio_kaitai_struct_languages_components_ExceptionNames: 1, Lio_kaitai_struct_languages_components_ExtraAttrs: 1, Lio_kaitai_struct_languages_components_ObjectOrientedLanguage: 1, Lio_kaitai_struct_languages_components_UpperCamelCaseClasses: 1, Lio_kaitai_struct_languages_components_SingleOutputFile: 1, Lio_kaitai_struct_languages_components_UniversalFooter: 1, Lio_kaitai_struct_languages_components_EveryReadIsExpression: 1, Lio_kaitai_struct_languages_components_CommonReads: 1, Lio_kaitai_struct_languages_components_AllocateIOLocalVar: 1, Lio_kaitai_struct_languages_components_FixedContentsUsingArrayByteLiteral: 1, Lio_kaitai_struct_languages_components_UniversalDoc: 1, Lio_kaitai_struct_languages_components_SwitchIfOps: 1, Lio_kaitai_struct_languages_components_NoNeedForFullClassPath: 1 }); $c_Lio_kaitai_struct_languages_PythonCompiler.prototype.$classData = $d_Lio_kaitai_struct_languages_PythonCompiler; class $c_sc_AbstractIterable extends $c_sc_AbstractTraversable { seq__sc_TraversableOnce() { return this.seq__sc_Iterable() }; head__O() { return this.iterator__sc_Iterator().next__O() }; thisCollection__sc_Iterable() { return this }; toIterator__sc_Iterator() { return this.iterator__sc_Iterator() }; sameElements__sc_GenIterable__Z(that) { return $f_sc_IterableLike__sameElements__sc_GenIterable__Z(this, that) }; exists__F1__Z(p) { const this$1 = this.iterator__sc_Iterator(); return $f_sc_Iterator__exists__F1__Z(this$1, p) }; thisCollection__sc_Traversable() { return this.thisCollection__sc_Iterable() }; seq__sc_Iterable() { return this }; isEmpty__Z() { return $f_sc_IterableLike__isEmpty__Z(this) }; companion__scg_GenericCompanion() { return $m_sc_Iterable$() }; forall__F1__Z(p) { const this$1 = this.iterator__sc_Iterator(); return $f_sc_Iterator__forall__F1__Z(this$1, p) }; foreach__F1__V(f) { const this$1 = this.iterator__sc_Iterator(); $f_sc_Iterator__foreach__F1__V(this$1, f) }; toStream__sci_Stream() { return this.iterator__sc_Iterator().toStream__sci_Stream() }; copyToArray__O__I__I__V(xs, start, len) { $f_sc_IterableLike__copyToArray__O__I__I__V(this, xs, start, len) }; takeRight__I__O(n) { return $f_sc_IterableLike__takeRight__I__O(this, n) }; dropRight__I__O(n) { return $f_sc_IterableLike__dropRight__I__O(this, n) }; } const $is_sci_Iterable = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sci_Iterable))) }); const $isArrayOf_sci_Iterable = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Iterable))) }); const $d_sci_Iterable = new $TypeData().initClass({ sci_Iterable: 0 }, true, "scala.collection.immutable.Iterable", { sci_Iterable: 1, sci_Traversable: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, s_Immutable: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1 }); class $c_sci_StringOps extends $c_O { constructor() { super(); this.repr$1 = null }; seq__sc_TraversableOnce() { const $$this = this.repr$1; return new $c_sci_WrappedString().init___T($$this) }; copyToArray__O__I__V(xs, start) { $f_sc_TraversableOnce__copyToArray__O__I__V(this, xs, start) }; head__O() { return $f_sc_IndexedSeqOptimized__head__O(this) }; apply__I__O(idx) { const $$this = this.repr$1; const c = (65535 & ($$this.charCodeAt(idx) | 0)); return new $c_jl_Character().init___C(c) }; lengthCompare__I__I(len) { return $f_sc_IndexedSeqOptimized__lengthCompare__I__I(this, len) }; toIterator__sc_Iterator() { const $$this = this.repr$1; return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, ($$this.length | 0)) }; sameElements__sc_GenIterable__Z(that) { return $f_sc_IndexedSeqOptimized__sameElements__sc_GenIterable__Z(this, that) }; exists__F1__Z(p) { return $f_sc_IndexedSeqOptimized__exists__F1__Z(this, p) }; toList__sci_List() { return $f_sc_IndexedSeqOptimized__toList__sci_List(this) }; isEmpty__Z() { return $f_sc_IndexedSeqOptimized__isEmpty__Z(this) }; thisCollection__sc_Traversable() { const $$this = this.repr$1; return new $c_sci_WrappedString().init___T($$this) }; equals__O__Z(x$1) { return $m_sci_StringOps$().equals$extension__T__O__Z(this.repr$1, x$1) }; apply__I__C(index) { const $$this = this.repr$1; return (65535 & ($$this.charCodeAt(index) | 0)) }; mkString__T__T(sep) { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, "", sep, "") }; mkString__T__T__T__T(start, sep, end) { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, start, sep, end) }; toString__T() { const $$this = this.repr$1; return $$this }; foreach__F1__V(f) { $f_sc_IndexedSeqOptimized__foreach__F1__V(this, f) }; foldLeft__O__F2__O(z, op) { let start = 0; const $$this = this.repr$1; const end = ($$this.length | 0); let z$1 = z; return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O(this, start, end, z$1, op) }; compare__O__I(that) { const other = that; const $$this = this.repr$1; return (($$this === other) ? 0 : ((!(!($$this < other))) ? (-1) : 1)) }; slice__I__I__O(from, until) { return $m_sci_StringOps$().slice$extension__T__I__I__T(this.repr$1, from, until) }; toVector__sci_Vector() { $m_sci_Vector$(); const cbf = $m_sc_IndexedSeq$().ReusableCBF$6; return $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this, cbf) }; size__I() { const $$this = this.repr$1; return ($$this.length | 0) }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; iterator__sc_Iterator() { const $$this = this.repr$1; return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, ($$this.length | 0)) }; mkString__T() { const $$this = this.repr$1; return $$this }; length__I() { const $$this = this.repr$1; return ($$this.length | 0) }; sizeHintIfCheap__I() { const $$this = this.repr$1; return ($$this.length | 0) }; toStream__sci_Stream() { const $$this = this.repr$1; const this$3 = new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, ($$this.length | 0)); return $f_sc_Iterator__toStream__sci_Stream(this$3) }; thisCollection__sc_Seq() { const $$this = this.repr$1; return new $c_sci_WrappedString().init___T($$this) }; addString__scm_StringBuilder__T__T__T__scm_StringBuilder(b, start, sep, end) { return $f_sc_TraversableOnce__addString__scm_StringBuilder__T__T__T__scm_StringBuilder(this, b, start, sep, end) }; repr__O() { return this.repr$1 }; $$div$colon__O__F2__O(z, op) { let start = 0; const $$this = this.repr$1; const end = ($$this.length | 0); let z$1 = z; return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O(this, start, end, z$1, op) }; copyToArray__O__I__I__V(xs, start, len) { $f_sc_IndexedSeqOptimized__copyToArray__O__I__I__V(this, xs, start, len) }; isTraversableAgain__Z() { return true }; hashCode__I() { const $$this = this.repr$1; return $m_sjsr_RuntimeString$().hashCode__T__I($$this) }; init___T(repr) { this.repr$1 = repr; return this }; toMap__s_Predef$$less$colon$less__sci_Map(ev) { $m_sci_Map$(); const b = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const $$this = this.repr$1; const len = ($$this.length | 0); while ((i < len)) { const arg1 = this.apply__I__O(i); b.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; return b.elems$1 }; map__F1__scg_CanBuildFrom__O(f, bf) { return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this, f, bf) }; reduceLeft__F2__O(op) { return $f_sc_IndexedSeqOptimized__reduceLeft__F2__O(this, op) }; newBuilder__scm_Builder() { return new $c_scm_StringBuilder().init___() }; stringPrefix__T() { return $f_sc_TraversableLike__stringPrefix__T(this) }; } const $isArrayOf_sci_StringOps = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_StringOps))) }); const $d_sci_StringOps = new $TypeData().initClass({ sci_StringOps: 0 }, false, "scala.collection.immutable.StringOps", { sci_StringOps: 1, O: 1, sci_StringLike: 1, sc_IndexedSeqOptimized: 1, sc_IndexedSeqLike: 1, sc_SeqLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenIterableLike: 1, sc_GenSeqLike: 1, s_math_Ordered: 1, jl_Comparable: 1 }); $c_sci_StringOps.prototype.$classData = $d_sci_StringOps; const $f_scm_ArrayOps__elementClass__pscm_ArrayOps__jl_Class = (function($thiz) { const this$1 = $thiz.repr__O(); return $objectGetClass(this$1).getComponentType__jl_Class() }); const $f_scm_ArrayOps__slice__I__I__O = (function($thiz, from, until) { const reprVal = $thiz.repr__O(); const lo = ((from > 0) ? from : 0); const x = ((until > 0) ? until : 0); const y = $m_sr_ScalaRunTime$().array$undlength__O__I(reprVal); const hi = ((x < y) ? x : y); const x$1 = ((hi - lo) | 0); const size = ((x$1 > 0) ? x$1 : 0); const result = $m_jl_reflect_Array$().newInstance__jl_Class__I__O($f_scm_ArrayOps__elementClass__pscm_ArrayOps__jl_Class($thiz), size); if ((size > 0)) { $m_s_Array$().copy__O__I__O__I__I__V(reprVal, lo, result, 0, size) }; return result }); const $f_scm_ArrayOps__copyToArray__O__I__I__V = (function($thiz, xs, start, len) { const that = $m_sr_ScalaRunTime$().array$undlength__O__I($thiz.repr__O()); const x = ((len < that) ? len : that); const that$1 = (($m_sr_ScalaRunTime$().array$undlength__O__I(xs) - start) | 0); const l = ((x < that$1) ? x : that$1); if ((l > 0)) { $m_s_Array$().copy__O__I__O__I__I__V($thiz.repr__O(), 0, xs, start, l) } }); class $c_sc_MapLike$DefaultValuesIterable extends $c_sc_AbstractIterable { constructor() { super(); this.$$outer$3 = null }; foreach__F1__V(f) { const this$1 = this.$$outer$3.valuesIterator__sc_Iterator(); $f_sc_Iterator__foreach__F1__V(this$1, f) }; size__I() { return this.$$outer$3.size__I() }; iterator__sc_Iterator() { return this.$$outer$3.valuesIterator__sc_Iterator() }; init___sc_MapLike($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$3 = $$outer }; return this }; } const $d_sc_MapLike$DefaultValuesIterable = new $TypeData().initClass({ sc_MapLike$DefaultValuesIterable: 0 }, false, "scala.collection.MapLike$DefaultValuesIterable", { sc_MapLike$DefaultValuesIterable: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sc_MapLike$DefaultValuesIterable.prototype.$classData = $d_sc_MapLike$DefaultValuesIterable; const $is_sc_Seq = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_Seq))) }); const $isArrayOf_sc_Seq = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_Seq))) }); class $c_scm_ArrayOps$ofRef extends $c_O { constructor() { super(); this.repr$1 = null }; copyToArray__O__I__V(xs, start) { $f_sc_TraversableOnce__copyToArray__O__I__V(this, xs, start) }; seq__sc_TraversableOnce() { const $$this = this.repr$1; return new $c_scm_WrappedArray$ofRef().init___AO($$this) }; head__O() { return $f_sc_IndexedSeqOptimized__head__O(this) }; apply__I__O(index) { const $$this = this.repr$1; return $$this.u[index] }; lengthCompare__I__I(len) { return $f_sc_IndexedSeqOptimized__lengthCompare__I__I(this, len) }; toIterator__sc_Iterator() { const $$this = this.repr$1; return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, $$this.u.length) }; sameElements__sc_GenIterable__Z(that) { return $f_sc_IndexedSeqOptimized__sameElements__sc_GenIterable__Z(this, that) }; exists__F1__Z(p) { return $f_sc_IndexedSeqOptimized__exists__F1__Z(this, p) }; toList__sci_List() { return $f_sc_IndexedSeqOptimized__toList__sci_List(this) }; isEmpty__Z() { return $f_sc_IndexedSeqOptimized__isEmpty__Z(this) }; thisCollection__sc_Traversable() { const $$this = this.repr$1; return new $c_scm_WrappedArray$ofRef().init___AO($$this) }; equals__O__Z(x$1) { return $m_scm_ArrayOps$ofRef$().equals$extension__AO__O__Z(this.repr$1, x$1) }; mkString__T__T__T__T(start, sep, end) { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, start, sep, end) }; mkString__T__T(sep) { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, "", sep, "") }; toString__T() { return $f_sc_TraversableLike__toString__T(this) }; foreach__F1__V(f) { $f_sc_IndexedSeqOptimized__foreach__F1__V(this, f) }; foldLeft__O__F2__O(z, op) { let start = 0; const $$this = this.repr$1; const end = $$this.u.length; let z$1 = z; return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O(this, start, end, z$1, op) }; slice__I__I__O(from, until) { return $f_scm_ArrayOps__slice__I__I__O(this, from, until) }; toVector__sci_Vector() { $m_sci_Vector$(); const cbf = $m_sc_IndexedSeq$().ReusableCBF$6; return $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this, cbf) }; size__I() { const $$this = this.repr$1; return $$this.u.length }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; init___AO(repr) { this.repr$1 = repr; return this }; iterator__sc_Iterator() { const $$this = this.repr$1; return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, $$this.u.length) }; mkString__T() { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, "", "", "") }; length__I() { const $$this = this.repr$1; return $$this.u.length }; sizeHintIfCheap__I() { const $$this = this.repr$1; return $$this.u.length }; toStream__sci_Stream() { const $$this = this.repr$1; const this$2 = new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, $$this.u.length); return $f_sc_Iterator__toStream__sci_Stream(this$2) }; thisCollection__sc_Seq() { const $$this = this.repr$1; return new $c_scm_WrappedArray$ofRef().init___AO($$this) }; addString__scm_StringBuilder__T__T__T__scm_StringBuilder(b, start, sep, end) { return $f_sc_TraversableOnce__addString__scm_StringBuilder__T__T__T__scm_StringBuilder(this, b, start, sep, end) }; repr__O() { return this.repr$1 }; $$div$colon__O__F2__O(z, op) { let start = 0; const $$this = this.repr$1; const end = $$this.u.length; let z$1 = z; return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O(this, start, end, z$1, op) }; copyToArray__O__I__I__V(xs, start, len) { $f_scm_ArrayOps__copyToArray__O__I__I__V(this, xs, start, len) }; isTraversableAgain__Z() { return true }; hashCode__I() { const $$this = this.repr$1; return $$this.hashCode__I() }; toMap__s_Predef$$less$colon$less__sci_Map(ev) { $m_sci_Map$(); const b = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let i = 0; const $$this = this.repr$1; const len = $$this.u.length; while ((i < len)) { const index = i; const $$this$1 = this.repr$1; const arg1 = $$this$1.u[index]; b.$$plus$eq__T2__scm_MapBuilder(arg1); i = ((1 + i) | 0) }; return b.elems$1 }; map__F1__scg_CanBuildFrom__O(f, bf) { return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this, f, bf) }; reduceLeft__F2__O(op) { return $f_sc_IndexedSeqOptimized__reduceLeft__F2__O(this, op) }; newBuilder__scm_Builder() { const $$this = this.repr$1; return new $c_scm_ArrayBuilder$ofRef().init___s_reflect_ClassTag($m_s_reflect_ClassTag$().apply__jl_Class__s_reflect_ClassTag($objectGetClass($$this).getComponentType__jl_Class())) }; stringPrefix__T() { return $f_sc_TraversableLike__stringPrefix__T(this) }; } const $isArrayOf_scm_ArrayOps$ofRef = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_ArrayOps$ofRef))) }); const $d_scm_ArrayOps$ofRef = new $TypeData().initClass({ scm_ArrayOps$ofRef: 0 }, false, "scala.collection.mutable.ArrayOps$ofRef", { scm_ArrayOps$ofRef: 1, O: 1, scm_ArrayOps: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, scm_IndexedSeqLike: 1, sc_IndexedSeqLike: 1, sc_SeqLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenIterableLike: 1, sc_GenSeqLike: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1 }); $c_scm_ArrayOps$ofRef.prototype.$classData = $d_scm_ArrayOps$ofRef; const $is_sc_Map = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_Map))) }); const $isArrayOf_sc_Map = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_Map))) }); const $is_sc_Set = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_Set))) }); const $isArrayOf_sc_Set = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_Set))) }); class $c_sci_HashMap$HashMapValues extends $c_sc_MapLike$DefaultValuesIterable { foreach__F1__V(f) { this.$$outer$3.foreachEntry__F2__V(new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this, f$1) { return (function(x$2$2, value$2) { return f$1.apply__O__O(value$2) }) })(this, f))) }; init___sci_HashMap($$outer) { $c_sc_MapLike$DefaultValuesIterable.prototype.init___sc_MapLike.call(this, $$outer); return this }; } const $d_sci_HashMap$HashMapValues = new $TypeData().initClass({ sci_HashMap$HashMapValues: 0 }, false, "scala.collection.immutable.HashMap$HashMapValues", { sci_HashMap$HashMapValues: 1, sc_MapLike$DefaultValuesIterable: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_HashMap$HashMapValues.prototype.$classData = $d_sci_HashMap$HashMapValues; class $c_scm_AbstractIterable extends $c_sc_AbstractIterable { } class $c_scm_HashMap$$anon$2 extends $c_sc_MapLike$DefaultValuesIterable { constructor() { super(); this.$$outer$4 = null }; foreach__F1__V(f) { const this$1 = this.$$outer$4; const iterTable = this$1.table$5; let idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(this$1); let es = iterTable.u[idx]; while ((es !== null)) { const this$2 = es; const next = this$2.next$1; const arg1 = es; const e = arg1; f.apply__O__O(e.value$1); es = next; while (((es === null) && (idx > 0))) { idx = (((-1) + idx) | 0); es = iterTable.u[idx] } } }; init___scm_HashMap($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$4 = $$outer }; $c_sc_MapLike$DefaultValuesIterable.prototype.init___sc_MapLike.call(this, $$outer); return this }; } const $d_scm_HashMap$$anon$2 = new $TypeData().initClass({ scm_HashMap$$anon$2: 0 }, false, "scala.collection.mutable.HashMap$$anon$2", { scm_HashMap$$anon$2: 1, sc_MapLike$DefaultValuesIterable: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_HashMap$$anon$2.prototype.$classData = $d_scm_HashMap$$anon$2; class $c_sjs_js_ArrayOps { } const $isArrayOf_sjs_js_ArrayOps = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sjs_js_ArrayOps))) }); const $is_sc_IndexedSeq = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_IndexedSeq))) }); const $isArrayOf_sc_IndexedSeq = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_IndexedSeq))) }); const $is_sc_LinearSeq = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_LinearSeq))) }); const $isArrayOf_sc_LinearSeq = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_LinearSeq))) }); class $c_sc_AbstractSeq extends $c_sc_AbstractIterable { lengthCompare__I__I(len) { return $f_sc_SeqLike__lengthCompare__I__I(this, len) }; indices__sci_Range() { return $f_sc_SeqLike__indices__sci_Range(this) }; runWith__F1__F1(action) { return $f_s_PartialFunction__runWith__F1__F1(this, action) }; isEmpty__Z() { return $f_sc_SeqLike__isEmpty__Z(this) }; equals__O__Z(that) { return $f_sc_GenSeqLike__equals__O__Z(this, that) }; toString__T() { return $f_sc_TraversableLike__toString__T(this) }; $$colon$plus__O__scg_CanBuildFrom__O(elem, bf) { return $f_sc_SeqLike__$$colon$plus__O__scg_CanBuildFrom__O(this, elem, bf) }; size__I() { return this.length__I() }; thisCollection__sc_Seq() { return this }; applyOrElse__O__F1__O(x, $default) { return $f_s_PartialFunction__applyOrElse__O__F1__O(this, x, $default) }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this.seq__sc_Seq()) }; } const $is_sci_Seq = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sci_Seq))) }); const $isArrayOf_sci_Seq = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Seq))) }); class $c_sc_AbstractMap extends $c_sc_AbstractIterable { apply__O__O(key) { return $f_sc_MapLike__apply__O__O(this, key) }; runWith__F1__F1(action) { return $f_s_PartialFunction__runWith__F1__F1(this, action) }; isEmpty__Z() { return $f_sc_MapLike__isEmpty__Z(this) }; equals__O__Z(that) { return $f_sc_GenMapLike__equals__O__Z(this, that) }; getOrElse__O__F0__O(key, $default) { return $f_sc_MapLike__getOrElse__O__F0__O(this, key, $default) }; toString__T() { return $f_sc_TraversableLike__toString__T(this) }; keysIterator__sc_Iterator() { return new $c_sc_MapLike$$anon$1().init___sc_MapLike(this) }; toBuffer__scm_Buffer() { return $f_sc_MapLike__toBuffer__scm_Buffer(this) }; values__sc_Iterable() { return new $c_sc_MapLike$DefaultValuesIterable().init___sc_MapLike(this) }; valuesIterator__sc_Iterator() { return new $c_sc_MapLike$$anon$2().init___sc_MapLike(this) }; addString__scm_StringBuilder__T__T__T__scm_StringBuilder(b, start, sep, end) { return $f_sc_MapLike__addString__scm_StringBuilder__T__T__T__scm_StringBuilder(this, b, start, sep, end) }; contains__O__Z(key) { return $f_sc_MapLike__contains__O__Z(this, key) }; filterNot__F1__sc_Map(p) { return $f_sc_MapLike__filterNot__F1__sc_Map(this, p) }; isDefinedAt__O__Z(key) { return this.contains__O__Z(key) }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const xs = this.seq__sc_Map(); return this$1.unorderedHash__sc_TraversableOnce__I__I(xs, this$1.mapSeed$2) }; applyOrElse__O__F1__O(x, $default) { return $f_sc_MapLike__applyOrElse__O__F1__O(this, x, $default) }; stringPrefix__T() { return "Map" }; newBuilder__scm_Builder() { return new $c_scm_MapBuilder().init___sc_GenMap(this.empty__sc_Map()) }; } class $c_sc_AbstractSet extends $c_sc_AbstractIterable { isEmpty__Z() { return $f_sc_SetLike__isEmpty__Z(this) }; equals__O__Z(that) { return $f_sc_GenSetLike__equals__O__Z(this, that) }; toString__T() { return $f_sc_TraversableLike__toString__T(this) }; subsetOf__sc_GenSet__Z(that) { return this.forall__F1__Z(that) }; toBuffer__scm_Buffer() { return $f_sc_SetLike__toBuffer__scm_Buffer(this) }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const xs = this.seq__sc_Set(); return this$1.unorderedHash__sc_TraversableOnce__I__I(xs, this$1.setSeed$2) }; map__F1__scg_CanBuildFrom__O(f, bf) { return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this, f, bf) }; $$plus$plus__sc_GenTraversableOnce__sc_Set(elems) { return $f_sc_SetLike__$$plus$plus__sc_GenTraversableOnce__sc_Set(this, elems) }; newBuilder__scm_Builder() { return new $c_scm_SetBuilder().init___sc_Set(this.empty__sc_Set()) }; stringPrefix__T() { return "Set" }; union__sc_GenSet__sc_Set(that) { return this.$$plus$plus__sc_GenTraversableOnce__sc_Set(that) }; } const $is_sci_Set = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sci_Set))) }); const $isArrayOf_sci_Set = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Set))) }); const $is_sci_Map = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sci_Map))) }); const $isArrayOf_sci_Map = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Map))) }); class $c_sc_MapLike$FilteredKeys extends $c_sc_AbstractMap { constructor() { super(); this.p$4 = null; this.$$outer$4 = null }; foreach__F1__V(f) { this.$$outer$4.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, f$1) { return (function(kv$2) { const kv = kv$2; return ((!(!$this.p$4.apply__O__O(kv.$$und1__O()))) ? f$1.apply__O__O(kv) : (void 0)) }) })(this, f))) }; init___sc_MapLike__F1($$outer, p) { this.p$4 = p; if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$4 = $$outer }; return this }; iterator__sc_Iterator() { const this$1 = this.$$outer$4.iterator__sc_Iterator(); const p = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(kv$2) { const kv = kv$2; return (!(!$this.p$4.apply__O__O(kv.$$und1__O()))) }) })(this)); return new $c_sc_Iterator$$anon$12().init___sc_Iterator__F1(this$1, p) }; get__O__s_Option(key) { return ((!(!(!this.p$4.apply__O__O(key)))) ? $m_s_None$() : this.$$outer$4.get__O__s_Option(key)) }; contains__O__Z(key) { return ((!(!this.p$4.apply__O__O(key))) && this.$$outer$4.contains__O__Z(key)) }; } class $c_sc_MapLike$MappedValues extends $c_sc_AbstractMap { constructor() { super(); this.f$4 = null; this.$$outer$4 = null }; foreach__F1__V(g) { const this$1 = this.$$outer$4; const p = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(check$ifrefutable$1$2) { const check$ifrefutable$1 = check$ifrefutable$1$2; return (check$ifrefutable$1 !== null) }) })(this)); new $c_sc_TraversableLike$WithFilter().init___sc_TraversableLike__F1(this$1, p).foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2, g$1) { return (function(x$1$2) { const x$1 = x$1$2; if ((x$1 !== null)) { const k = x$1.$$und1__O(); const v = x$1.$$und2__O(); return g$1.apply__O__O(new $c_T2().init___O__O(k, this$2.f$4.apply__O__O(v))) } else { throw new $c_s_MatchError().init___O(x$1) } }) })(this, g))) }; init___sc_MapLike__F1($$outer, f) { this.f$4 = f; if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$4 = $$outer }; return this }; size__I() { return this.$$outer$4.size__I() }; iterator__sc_Iterator() { const this$1 = this.$$outer$4.iterator__sc_Iterator(); const p = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(check$ifrefutable$2$2) { const check$ifrefutable$2 = check$ifrefutable$2$2; return (check$ifrefutable$2 !== null) }) })(this)); const this$3 = new $c_sc_Iterator$$anon$12().init___sc_Iterator__F1(this$1, p); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2) { return (function(x$2$2) { const x$2 = x$2$2; if ((x$2 !== null)) { const k = x$2.$$und1__O(); const v = x$2.$$und2__O(); return new $c_T2().init___O__O(k, this$2.f$4.apply__O__O(v)) } else { throw new $c_s_MatchError().init___O(x$2) } }) })(this)); return new $c_sc_Iterator$$anon$10().init___sc_Iterator__F1(this$3, f) }; get__O__s_Option(key) { const this$1 = this.$$outer$4.get__O__s_Option(key); const f = this.f$4; return (this$1.isEmpty__Z() ? $m_s_None$() : new $c_s_Some().init___O(f.apply__O__O(this$1.get__O()))) }; contains__O__Z(key) { return this.$$outer$4.contains__O__Z(key) }; } const $f_sci_DefaultMap__$$plus__T2__sci_Map = (function($thiz, kv) { $m_sci_Map$(); const b = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(b, $thiz); const elem = new $c_T2().init___O__O(kv.$$und1__O(), kv.$$und2__O()); b.$$plus$eq__T2__scm_MapBuilder(elem); return b.elems$1 }); const $f_sci_DefaultMap__$$minus__O__sci_Map = (function($thiz, key) { const b = new $c_scm_MapBuilder().init___sc_GenMap(($m_sci_Map$(), $m_sci_Map$EmptyMap$())); const p = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, key$1) { return (function(kv$2) { const kv = kv$2; return (!$m_sr_BoxesRunTime$().equals__O__O__Z(kv.$$und1__O(), key$1)) }) })($thiz, key)); new $c_sc_TraversableLike$WithFilter().init___sc_TraversableLike__F1($thiz, p).foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2, b$1) { return (function(kv$3$2) { const kv$3 = kv$3$2; return b$1.$$plus$eq__O__scm_Builder(kv$3) }) })($thiz, b))); return b.elems$1 }); const $is_sci_IndexedSeq = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sci_IndexedSeq))) }); const $isArrayOf_sci_IndexedSeq = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_IndexedSeq))) }); class $c_sc_MapLike$DefaultKeySet extends $c_sc_AbstractSet { constructor() { super(); this.$$outer$4 = null }; foreach__F1__V(f) { const this$1 = this.$$outer$4.keysIterator__sc_Iterator(); $f_sc_Iterator__foreach__F1__V(this$1, f) }; size__I() { return this.$$outer$4.size__I() }; iterator__sc_Iterator() { return this.$$outer$4.keysIterator__sc_Iterator() }; init___sc_MapLike($$outer) { if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$4 = $$outer }; return this }; contains__O__Z(key) { return this.$$outer$4.contains__O__Z(key) }; } class $c_sci_AbstractMap extends $c_sc_AbstractMap { seq__sc_TraversableOnce() { return this }; thisCollection__sc_Traversable() { return this }; seq__sc_Iterable() { return this }; companion__scg_GenericCompanion() { return $m_sci_Iterable$() }; empty__sc_Map() { return this.empty__sci_Map() }; empty__sci_Map() { $m_sci_Map$(); return $m_sci_Map$EmptyMap$() }; $$plus$plus__sc_GenTraversableOnce__sci_Map(xs) { return $f_sci_MapLike__$$plus$plus__sc_GenTraversableOnce__sci_Map(this, xs) }; seq__sc_Map() { return this }; toMap__s_Predef$$less$colon$less__sci_Map(ev) { return this }; keySet__sci_Set() { return new $c_sci_MapLike$ImmutableDefaultKeySet().init___sci_MapLike(this) }; } class $c_sci_ListSet extends $c_sc_AbstractSet { seq__sc_TraversableOnce() { return this }; next__sci_ListSet() { throw new $c_ju_NoSuchElementException().init___T("next of empty set") }; apply__O__O(v1) { return this.contains__O__Z(v1) }; isEmpty__Z() { return true }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; $$plus__O__sci_ListSet(elem) { return new $c_sci_ListSet$Node().init___sci_ListSet__O(this, elem) }; companion__scg_GenericCompanion() { return $m_sci_ListSet$() }; skip$1__p4__sci_ListSet__I__sci_ListSet(ls, count) { _skip: while (true) { if ((count === 0)) { return ls } else { const temp$ls = ls.next__sci_ListSet(); const temp$count = (((-1) + count) | 0); ls = temp$ls; count = temp$count; continue _skip } } }; size__I() { return 0 }; iterator__sc_Iterator() { const this$1 = this.reverseList$1__p4__sci_List(); return new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$1) }; empty__sc_Set() { $m_sci_ListSet$(); return $m_sci_ListSet$EmptyListSet$() }; reverseList$1__p4__sci_List() { let curr = this; let res = $m_sci_Nil$(); while ((!curr.isEmpty__Z())) { const x$4 = curr.elem__O(); const this$1 = res; res = new $c_sci_$colon$colon().init___O__sci_List(x$4, this$1); curr = curr.next__sci_ListSet() }; return res }; seq__sc_Set() { return this }; elem__O() { throw new $c_ju_NoSuchElementException().init___T("elem of empty set") }; contains__O__Z(elem) { return false }; containsLimited$1__p4__sci_ListSet__O__sci_ListSet__Z(n, e, end) { _containsLimited: while (true) { if ((n !== end)) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(e, n.elem__O())) { return true } else { n = n.next__sci_ListSet(); continue _containsLimited } } else { return false } } }; $$plus$plus__sc_GenTraversableOnce__sci_ListSet(xs) { if ((xs instanceof $c_sci_ListSet)) { const x2 = xs; if ((x2 === this)) { return this } else { const lsSize = x2.size__I(); if ((lsSize === 0)) { return this } else { const thisSize = this.size__I(); const remaining = ((thisSize < lsSize) ? thisSize : lsSize); let thisTail = this.skip$1__p4__sci_ListSet__I__sci_ListSet(this, ((thisSize - remaining) | 0)); let lsTail = this.skip$1__p4__sci_ListSet__I__sci_ListSet(x2, ((lsSize - remaining) | 0)); while (((thisTail !== lsTail) && (!lsTail.isEmpty__Z()))) { thisTail = thisTail.next__sci_ListSet(); lsTail = lsTail.next__sci_ListSet() }; let toAdd = x2; let result = this; while ((toAdd !== lsTail)) { const elem = toAdd.elem__O(); if ((!this.containsLimited$1__p4__sci_ListSet__O__sci_ListSet__Z(result, elem, lsTail))) { const r = result; result = new $c_sci_ListSet$Node().init___sci_ListSet__O(r, elem) }; toAdd = toAdd.next__sci_ListSet() }; return result } } } else { return (xs.isEmpty__Z() ? this : xs.$$div$colon__O__F2__O(this, new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(x$2$2, x$3$2) { const x$2 = x$2$2; return x$2.$$plus__O__sci_ListSet(x$3$2) }) })(this)))) } }; union__sc_GenSet__O(that) { return this.$$plus$plus__sc_GenTraversableOnce__sci_ListSet(that) }; $$plus__O__sc_Set(elem) { return this.$$plus__O__sci_ListSet(elem) }; $$plus$plus__sc_GenTraversableOnce__sc_Set(elems) { return this.$$plus$plus__sc_GenTraversableOnce__sci_ListSet(elems) }; stringPrefix__T() { return "ListSet" }; } const $isArrayOf_sci_ListSet = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_ListSet))) }); class $c_sci_Set$EmptySet$ extends $c_sc_AbstractSet { seq__sc_TraversableOnce() { return this }; init___() { return this }; apply__O__O(v1) { return false }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; companion__scg_GenericCompanion() { return $m_sci_Set$() }; foreach__F1__V(f) { /**/ }; size__I() { return 0 }; iterator__sc_Iterator() { return $m_sc_Iterator$().empty$1 }; empty__sc_Set() { $m_sci_Set$(); return $m_sci_Set$EmptySet$() }; $$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(that, bf) { if ((bf === $m_sci_Set$().ReusableCBF$5)) { if ((that instanceof $c_sci_HashSet)) { const x2 = that; if ((x2.size__I() > 4)) { return x2 } }; const x = $m_sci_Set$EmptySet$(); if ($f_sc_GenSetLike__equals__O__Z(x, that)) { return $m_sci_Set$EmptySet$() }; if ((that instanceof $c_sci_Set$Set1)) { const x4 = that; return x4 }; if ((that instanceof $c_sci_Set$Set2)) { const x5 = that; return x5 }; if ((that instanceof $c_sci_Set$Set3)) { const x6 = that; return x6 }; if ((that instanceof $c_sci_Set$Set4)) { const x7 = that; return x7 }; return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf) } else if ((bf === $m_sci_HashSet$().ReusableCBF$5)) { if ((that instanceof $c_sci_HashSet)) { const x2$2 = that; return x2$2 } else { return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf) } } else { return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf) } }; seq__sc_Set() { return this }; contains__O__Z(elem) { return false }; union__sc_GenSet__O(that) { return $f_sc_SetLike__$$plus$plus__sc_GenTraversableOnce__sc_Set(this, that) }; $$plus__O__sc_Set(elem) { return new $c_sci_Set$Set1().init___O(elem) }; } const $d_sci_Set$EmptySet$ = new $TypeData().initClass({ sci_Set$EmptySet$: 0 }, false, "scala.collection.immutable.Set$EmptySet$", { sci_Set$EmptySet$: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Set$EmptySet$.prototype.$classData = $d_sci_Set$EmptySet$; let $n_sci_Set$EmptySet$ = (void 0); const $m_sci_Set$EmptySet$ = (function() { if ((!$n_sci_Set$EmptySet$)) { $n_sci_Set$EmptySet$ = new $c_sci_Set$EmptySet$().init___() }; return $n_sci_Set$EmptySet$ }); class $c_sci_Set$Set1 extends $c_sc_AbstractSet { constructor() { super(); this.elem1$4 = null }; seq__sc_TraversableOnce() { return this }; head__O() { return this.elem1$4 }; apply__O__O(v1) { return this.contains__O__Z(v1) }; exists__F1__Z(p) { return (!(!p.apply__O__O(this.elem1$4))) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; forall__F1__Z(p) { return (!(!p.apply__O__O(this.elem1$4))) }; companion__scg_GenericCompanion() { return $m_sci_Set$() }; foreach__F1__V(f) { f.apply__O__O(this.elem1$4) }; size__I() { return 1 }; init___O(elem1) { this.elem1$4 = elem1; return this }; iterator__sc_Iterator() { $m_sc_Iterator$(); const array = [this.elem1$4]; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(elems, 0, (elems.array$6.length | 0)) }; empty__sc_Set() { $m_sci_Set$(); return $m_sci_Set$EmptySet$() }; $$plus__O__sci_Set(elem) { return (this.contains__O__Z(elem) ? this : new $c_sci_Set$Set2().init___O__O(this.elem1$4, elem)) }; seq__sc_Set() { return this }; contains__O__Z(elem) { return $m_sr_BoxesRunTime$().equals__O__O__Z(elem, this.elem1$4) }; union__sc_GenSet__O(that) { return $f_sc_SetLike__$$plus$plus__sc_GenTraversableOnce__sc_Set(this, that) }; $$plus__O__sc_Set(elem) { return this.$$plus__O__sci_Set(elem) }; } const $isArrayOf_sci_Set$Set1 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Set$Set1))) }); const $d_sci_Set$Set1 = new $TypeData().initClass({ sci_Set$Set1: 0 }, false, "scala.collection.immutable.Set$Set1", { sci_Set$Set1: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Set$Set1.prototype.$classData = $d_sci_Set$Set1; class $c_sci_Set$Set2 extends $c_sc_AbstractSet { constructor() { super(); this.elem1$4 = null; this.elem2$4 = null }; seq__sc_TraversableOnce() { return this }; head__O() { return this.elem1$4 }; apply__O__O(v1) { return this.contains__O__Z(v1) }; exists__F1__Z(p) { return ((!(!p.apply__O__O(this.elem1$4))) || (!(!p.apply__O__O(this.elem2$4)))) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; init___O__O(elem1, elem2) { this.elem1$4 = elem1; this.elem2$4 = elem2; return this }; forall__F1__Z(p) { return ((!(!p.apply__O__O(this.elem1$4))) && (!(!p.apply__O__O(this.elem2$4)))) }; companion__scg_GenericCompanion() { return $m_sci_Set$() }; foreach__F1__V(f) { f.apply__O__O(this.elem1$4); f.apply__O__O(this.elem2$4) }; size__I() { return 2 }; iterator__sc_Iterator() { $m_sc_Iterator$(); const array = [this.elem1$4, this.elem2$4]; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(elems, 0, (elems.array$6.length | 0)) }; empty__sc_Set() { $m_sci_Set$(); return $m_sci_Set$EmptySet$() }; $$plus__O__sci_Set(elem) { return (this.contains__O__Z(elem) ? this : new $c_sci_Set$Set3().init___O__O__O(this.elem1$4, this.elem2$4, elem)) }; seq__sc_Set() { return this }; contains__O__Z(elem) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(elem, this.elem1$4) || $m_sr_BoxesRunTime$().equals__O__O__Z(elem, this.elem2$4)) }; union__sc_GenSet__O(that) { return $f_sc_SetLike__$$plus$plus__sc_GenTraversableOnce__sc_Set(this, that) }; $$plus__O__sc_Set(elem) { return this.$$plus__O__sci_Set(elem) }; } const $isArrayOf_sci_Set$Set2 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Set$Set2))) }); const $d_sci_Set$Set2 = new $TypeData().initClass({ sci_Set$Set2: 0 }, false, "scala.collection.immutable.Set$Set2", { sci_Set$Set2: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Set$Set2.prototype.$classData = $d_sci_Set$Set2; class $c_sci_Set$Set3 extends $c_sc_AbstractSet { constructor() { super(); this.elem1$4 = null; this.elem2$4 = null; this.elem3$4 = null }; seq__sc_TraversableOnce() { return this }; head__O() { return this.elem1$4 }; apply__O__O(v1) { return this.contains__O__Z(v1) }; exists__F1__Z(p) { return (((!(!p.apply__O__O(this.elem1$4))) || (!(!p.apply__O__O(this.elem2$4)))) || (!(!p.apply__O__O(this.elem3$4)))) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; forall__F1__Z(p) { return (((!(!p.apply__O__O(this.elem1$4))) && (!(!p.apply__O__O(this.elem2$4)))) && (!(!p.apply__O__O(this.elem3$4)))) }; companion__scg_GenericCompanion() { return $m_sci_Set$() }; foreach__F1__V(f) { f.apply__O__O(this.elem1$4); f.apply__O__O(this.elem2$4); f.apply__O__O(this.elem3$4) }; size__I() { return 3 }; init___O__O__O(elem1, elem2, elem3) { this.elem1$4 = elem1; this.elem2$4 = elem2; this.elem3$4 = elem3; return this }; iterator__sc_Iterator() { $m_sc_Iterator$(); const array = [this.elem1$4, this.elem2$4, this.elem3$4]; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(elems, 0, (elems.array$6.length | 0)) }; empty__sc_Set() { $m_sci_Set$(); return $m_sci_Set$EmptySet$() }; $$plus__O__sci_Set(elem) { return (this.contains__O__Z(elem) ? this : new $c_sci_Set$Set4().init___O__O__O__O(this.elem1$4, this.elem2$4, this.elem3$4, elem)) }; seq__sc_Set() { return this }; contains__O__Z(elem) { return (($m_sr_BoxesRunTime$().equals__O__O__Z(elem, this.elem1$4) || $m_sr_BoxesRunTime$().equals__O__O__Z(elem, this.elem2$4)) || $m_sr_BoxesRunTime$().equals__O__O__Z(elem, this.elem3$4)) }; union__sc_GenSet__O(that) { return $f_sc_SetLike__$$plus$plus__sc_GenTraversableOnce__sc_Set(this, that) }; $$plus__O__sc_Set(elem) { return this.$$plus__O__sci_Set(elem) }; } const $isArrayOf_sci_Set$Set3 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Set$Set3))) }); const $d_sci_Set$Set3 = new $TypeData().initClass({ sci_Set$Set3: 0 }, false, "scala.collection.immutable.Set$Set3", { sci_Set$Set3: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Set$Set3.prototype.$classData = $d_sci_Set$Set3; class $c_sci_Set$Set4 extends $c_sc_AbstractSet { constructor() { super(); this.elem1$4 = null; this.elem2$4 = null; this.elem3$4 = null; this.elem4$4 = null }; seq__sc_TraversableOnce() { return this }; head__O() { return this.elem1$4 }; apply__O__O(v1) { return this.contains__O__Z(v1) }; exists__F1__Z(p) { return ((((!(!p.apply__O__O(this.elem1$4))) || (!(!p.apply__O__O(this.elem2$4)))) || (!(!p.apply__O__O(this.elem3$4)))) || (!(!p.apply__O__O(this.elem4$4)))) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; forall__F1__Z(p) { return ((((!(!p.apply__O__O(this.elem1$4))) && (!(!p.apply__O__O(this.elem2$4)))) && (!(!p.apply__O__O(this.elem3$4)))) && (!(!p.apply__O__O(this.elem4$4)))) }; companion__scg_GenericCompanion() { return $m_sci_Set$() }; foreach__F1__V(f) { f.apply__O__O(this.elem1$4); f.apply__O__O(this.elem2$4); f.apply__O__O(this.elem3$4); f.apply__O__O(this.elem4$4) }; size__I() { return 4 }; iterator__sc_Iterator() { $m_sc_Iterator$(); const array = [this.elem1$4, this.elem2$4, this.elem3$4, this.elem4$4]; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(elems, 0, (elems.array$6.length | 0)) }; empty__sc_Set() { $m_sci_Set$(); return $m_sci_Set$EmptySet$() }; $$plus__O__sci_Set(elem) { return (this.contains__O__Z(elem) ? this : new $c_sci_HashSet().init___().$$plus__O__sci_HashSet(this.elem1$4).$$plus__O__sci_HashSet(this.elem2$4).$$plus__O__sci_HashSet(this.elem3$4).$$plus__O__sci_HashSet(this.elem4$4).$$plus__O__sci_HashSet(elem)) }; seq__sc_Set() { return this }; contains__O__Z(elem) { return ((($m_sr_BoxesRunTime$().equals__O__O__Z(elem, this.elem1$4) || $m_sr_BoxesRunTime$().equals__O__O__Z(elem, this.elem2$4)) || $m_sr_BoxesRunTime$().equals__O__O__Z(elem, this.elem3$4)) || $m_sr_BoxesRunTime$().equals__O__O__Z(elem, this.elem4$4)) }; init___O__O__O__O(elem1, elem2, elem3, elem4) { this.elem1$4 = elem1; this.elem2$4 = elem2; this.elem3$4 = elem3; this.elem4$4 = elem4; return this }; union__sc_GenSet__O(that) { return $f_sc_SetLike__$$plus$plus__sc_GenTraversableOnce__sc_Set(this, that) }; $$plus__O__sc_Set(elem) { return this.$$plus__O__sci_Set(elem) }; } const $isArrayOf_sci_Set$Set4 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Set$Set4))) }); const $d_sci_Set$Set4 = new $TypeData().initClass({ sci_Set$Set4: 0 }, false, "scala.collection.immutable.Set$Set4", { sci_Set$Set4: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Set$Set4.prototype.$classData = $d_sci_Set$Set4; class $c_sci_HashSet extends $c_sc_AbstractSet { updated0__O__I__I__sci_HashSet(key, hash, level) { return new $c_sci_HashSet$HashSet1().init___O__I(key, hash) }; seq__sc_TraversableOnce() { return this }; computeHash__O__I(key) { return this.improve__I__I($m_sr_Statics$().anyHash__O__I(key)) }; init___() { return this }; apply__O__O(v1) { return this.contains__O__Z(v1) }; $$plus__O__sci_HashSet(e) { return this.updated0__O__I__I__sci_HashSet(e, this.computeHash__O__I(e), 0) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; companion__scg_GenericCompanion() { return $m_sci_HashSet$() }; foreach__F1__V(f) { /**/ }; acc$lzycompute$1__p4__sr_LazyRef__sci_HashSet$acc$1$(acc$module$1) { if ((acc$module$1 === null)) { throw new $c_jl_NullPointerException().init___() }; return (acc$module$1.$$undinitialized$1 ? acc$module$1.$$undvalue$1 : acc$module$1.initialize__O__O(new $c_sci_HashSet$acc$1$().init___sci_HashSet(this))) }; subsetOf__sc_GenSet__Z(that) { if ((that instanceof $c_sci_HashSet)) { const x2 = that; return this.subsetOf0__sci_HashSet__I__Z(x2, 0) } else { const this$1 = this.iterator__sc_Iterator(); return $f_sc_Iterator__forall__F1__Z(this$1, that) } }; union0__sci_HashSet__I__sci_HashSet(that, level) { return that }; size__I() { return 0 }; iterator__sc_Iterator() { return $m_sc_Iterator$().empty$1 }; empty__sc_Set() { $m_sci_HashSet$(); return $m_sci_HashSet$EmptyHashSet$() }; improve__I__I(hcode) { let h = ((hcode + (~(hcode << 9))) | 0); h = (h ^ ((h >>> 14) | 0)); h = ((h + (h << 4)) | 0); return (h ^ ((h >>> 10) | 0)) }; seq__sc_Set() { return this }; contains__O__Z(e) { return this.get0__O__I__I__Z(e, this.computeHash__O__I(e), 0) }; union__sc_GenSet__sci_HashSet(that) { if ((that instanceof $c_sci_HashSet)) { const x2 = that; if ((this === x2)) { return this } else { $m_sci_HashSet$(); const s = this.union0__sci_HashSet__I__sci_HashSet(x2, 0); return ((s === null) ? $m_sci_HashSet$EmptyHashSet$() : s) } } else if (that.isEmpty__Z()) { return this } else { const acc$module = new $c_sr_LazyRef().init___(); if ($is_sci_Set(that)) { that.foreach__F1__V(this.acc$2__p4__sr_LazyRef__sci_HashSet$acc$1$(acc$module)) } else { const this$2 = that.iterator__sc_Iterator(); const f = this.acc$2__p4__sr_LazyRef__sci_HashSet$acc$1$(acc$module); $f_sc_Iterator__foreach__F1__V(this$2, f) }; return this.acc$2__p4__sr_LazyRef__sci_HashSet$acc$1$(acc$module).res$1 } }; union__sc_GenSet__O(that) { return this.union__sc_GenSet__sci_HashSet(that) }; get0__O__I__I__Z(key, hash, level) { return false }; $$plus__O__sc_Set(elem) { return this.$$plus__O__sci_HashSet(elem) }; acc$2__p4__sr_LazyRef__sci_HashSet$acc$1$(acc$module$1) { return (acc$module$1.$$undinitialized$1 ? acc$module$1.$$undvalue$1 : this.acc$lzycompute$1__p4__sr_LazyRef__sci_HashSet$acc$1$(acc$module$1)) }; subsetOf0__sci_HashSet__I__Z(that, level) { return true }; union__sc_GenSet__sc_Set(that) { return this.union__sc_GenSet__sci_HashSet(that) }; } const $isArrayOf_sci_HashSet = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_HashSet))) }); const $d_sci_HashSet = new $TypeData().initClass({ sci_HashSet: 0 }, false, "scala.collection.immutable.HashSet", { sci_HashSet: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_HashSet.prototype.$classData = $d_sci_HashSet; class $c_sci_ListSet$EmptyListSet$ extends $c_sci_ListSet { init___() { return this }; } const $d_sci_ListSet$EmptyListSet$ = new $TypeData().initClass({ sci_ListSet$EmptyListSet$: 0 }, false, "scala.collection.immutable.ListSet$EmptyListSet$", { sci_ListSet$EmptyListSet$: 1, sci_ListSet: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_ListSet$EmptyListSet$.prototype.$classData = $d_sci_ListSet$EmptyListSet$; let $n_sci_ListSet$EmptyListSet$ = (void 0); const $m_sci_ListSet$EmptyListSet$ = (function() { if ((!$n_sci_ListSet$EmptyListSet$)) { $n_sci_ListSet$EmptyListSet$ = new $c_sci_ListSet$EmptyListSet$().init___() }; return $n_sci_ListSet$EmptyListSet$ }); class $c_sci_ListSet$Node extends $c_sci_ListSet { constructor() { super(); this.elem$5 = null; this.$$outer$5 = null }; next__sci_ListSet() { return this.$$outer$5 }; isEmpty__Z() { return false }; $$plus__O__sci_ListSet(e) { return (this.containsInternal__p5__sci_ListSet__O__Z(this, e) ? this : new $c_sci_ListSet$Node().init___sci_ListSet__O(this, e)) }; sizeInternal__p5__sci_ListSet__I__I(n, acc) { _sizeInternal: while (true) { if (n.isEmpty__Z()) { return acc } else { const temp$n = n.next__sci_ListSet(); const temp$acc = ((1 + acc) | 0); n = temp$n; acc = temp$acc; continue _sizeInternal } } }; size__I() { return this.sizeInternal__p5__sci_ListSet__I__I(this, 0) }; init___sci_ListSet__O($$outer, elem) { this.elem$5 = elem; if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$5 = $$outer }; return this }; contains__O__Z(e) { return this.containsInternal__p5__sci_ListSet__O__Z(this, e) }; elem__O() { return this.elem$5 }; containsInternal__p5__sci_ListSet__O__Z(n, e) { _containsInternal: while (true) { if ((!n.isEmpty__Z())) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(n.elem__O(), e)) { return true } else { n = n.next__sci_ListSet(); continue _containsInternal } } else { return false } } }; $$plus__O__sc_Set(elem) { return this.$$plus__O__sci_ListSet(elem) }; } const $d_sci_ListSet$Node = new $TypeData().initClass({ sci_ListSet$Node: 0 }, false, "scala.collection.immutable.ListSet$Node", { sci_ListSet$Node: 1, sci_ListSet: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_ListSet$Node.prototype.$classData = $d_sci_ListSet$Node; class $c_sci_MapLike$ImmutableDefaultKeySet extends $c_sc_MapLike$DefaultKeySet { seq__sc_TraversableOnce() { return this }; apply__O__O(v1) { return this.$$outer$4.contains__O__Z(v1) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; companion__scg_GenericCompanion() { return $m_sci_Set$() }; init___sci_MapLike($$outer) { $c_sc_MapLike$DefaultKeySet.prototype.init___sc_MapLike.call(this, $$outer); return this }; empty__sc_Set() { $m_sci_Set$(); return $m_sci_Set$EmptySet$() }; $$plus__O__sci_Set(elem) { return (this.$$outer$4.contains__O__Z(elem) ? this : $m_sci_Set$().apply__sc_Seq__sc_GenTraversable($m_sci_Nil$()).$$plus$plus__sc_GenTraversableOnce__sc_Set(this).$$plus__O__sc_Set(elem)) }; seq__sc_Set() { return this }; union__sc_GenSet__O(that) { return $f_sc_SetLike__$$plus$plus__sc_GenTraversableOnce__sc_Set(this, that) }; $$plus__O__sc_Set(elem) { return this.$$plus__O__sci_Set(elem) }; } const $d_sci_MapLike$ImmutableDefaultKeySet = new $TypeData().initClass({ sci_MapLike$ImmutableDefaultKeySet: 0 }, false, "scala.collection.immutable.MapLike$ImmutableDefaultKeySet", { sci_MapLike$ImmutableDefaultKeySet: 1, sc_MapLike$DefaultKeySet: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1 }); $c_sci_MapLike$ImmutableDefaultKeySet.prototype.$classData = $d_sci_MapLike$ImmutableDefaultKeySet; class $c_scm_AbstractSeq extends $c_sc_AbstractSeq { seq__sc_TraversableOnce() { return this.seq__scm_Seq() }; seq__sc_Iterable() { return this.seq__scm_Seq() }; seq__scm_Seq() { return this }; } const $is_scm_Map = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.scm_Map))) }); const $isArrayOf_scm_Map = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_Map))) }); class $c_sci_HashMap$HashMapKeys extends $c_sci_MapLike$ImmutableDefaultKeySet { constructor() { super(); this.hashCode$6 = 0; this.bitmap$0$6 = false }; foreach__F1__V(f) { this.$$outer$4.foreachEntry__F2__V(new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this, f$1) { return (function(key$2, x$1$2) { return f$1.apply__O__O(key$2) }) })(this, f))) }; hashCode$lzycompute__p6__I() { if ((!this.bitmap$0$6)) { const this$1 = $m_s_util_hashing_MurmurHash3$(); this.hashCode$6 = this$1.unorderedHash__sc_TraversableOnce__I__I(this, this$1.setSeed$2); this.bitmap$0$6 = true }; return this.hashCode$6 }; hashCode__I() { return ((!this.bitmap$0$6) ? this.hashCode$lzycompute__p6__I() : this.hashCode$6) }; init___sci_HashMap($$outer) { $c_sci_MapLike$ImmutableDefaultKeySet.prototype.init___sci_MapLike.call(this, $$outer); return this }; } const $d_sci_HashMap$HashMapKeys = new $TypeData().initClass({ sci_HashMap$HashMapKeys: 0 }, false, "scala.collection.immutable.HashMap$HashMapKeys", { sci_HashMap$HashMapKeys: 1, sci_MapLike$ImmutableDefaultKeySet: 1, sc_MapLike$DefaultKeySet: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1 }); $c_sci_HashMap$HashMapKeys.prototype.$classData = $d_sci_HashMap$HashMapKeys; class $c_sci_HashSet$EmptyHashSet$ extends $c_sci_HashSet { init___() { return this }; head__O() { throw new $c_ju_NoSuchElementException().init___T("Empty Set") }; } const $d_sci_HashSet$EmptyHashSet$ = new $TypeData().initClass({ sci_HashSet$EmptyHashSet$: 0 }, false, "scala.collection.immutable.HashSet$EmptyHashSet$", { sci_HashSet$EmptyHashSet$: 1, sci_HashSet: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_HashSet$EmptyHashSet$.prototype.$classData = $d_sci_HashSet$EmptyHashSet$; let $n_sci_HashSet$EmptyHashSet$ = (void 0); const $m_sci_HashSet$EmptyHashSet$ = (function() { if ((!$n_sci_HashSet$EmptyHashSet$)) { $n_sci_HashSet$EmptyHashSet$ = new $c_sci_HashSet$EmptyHashSet$().init___() }; return $n_sci_HashSet$EmptyHashSet$ }); class $c_sci_HashSet$HashTrieSet extends $c_sci_HashSet { constructor() { super(); this.bitmap$5 = 0; this.elems$5 = null; this.size$5 = 0 }; updated0__O__I__I__sci_HashSet(key, hash, level) { const index = (31 & ((hash >>> level) | 0)); const mask = (1 << index); const offset = $m_jl_Integer$().bitCount__I__I((this.bitmap$5 & (((-1) + mask) | 0))); if (((this.bitmap$5 & mask) !== 0)) { const sub = this.elems$5.u[offset]; const subNew = sub.updated0__O__I__I__sci_HashSet(key, hash, ((5 + level) | 0)); if ((sub === subNew)) { return this } else { const elemsNew = $newArrayObject($d_sci_HashSet.getArrayOf(), [this.elems$5.u.length]); $systemArraycopy(this.elems$5, 0, elemsNew, 0, this.elems$5.u.length); elemsNew.u[offset] = subNew; return new $c_sci_HashSet$HashTrieSet().init___I__Asci_HashSet__I(this.bitmap$5, elemsNew, ((1 + this.size$5) | 0)) } } else { const elemsNew$2 = $newArrayObject($d_sci_HashSet.getArrayOf(), [((1 + this.elems$5.u.length) | 0)]); $systemArraycopy(this.elems$5, 0, elemsNew$2, 0, offset); elemsNew$2.u[offset] = new $c_sci_HashSet$HashSet1().init___O__I(key, hash); $systemArraycopy(this.elems$5, offset, elemsNew$2, ((1 + offset) | 0), ((this.elems$5.u.length - offset) | 0)); const bitmapNew = (this.bitmap$5 | mask); return new $c_sci_HashSet$HashTrieSet().init___I__Asci_HashSet__I(bitmapNew, elemsNew$2, ((1 + this.size$5) | 0)) } }; addMaybeSubset$1__p5__sci_HashSet$HashTrieSet__sci_HashSet$HashTrieSet__I__sci_HashSet$HashTrieSet(larger, smaller, level$4) { let resultElems = null; let ai = 0; let bi = 0; let abm = larger.bitmap$5; let bbm = smaller.bitmap$5; const a = larger.elems$5; const b = smaller.elems$5; let additionalSize = 0; let bsb = (bbm ^ (bbm & (((-1) + bbm) | 0))); while ((bsb !== 0)) { const skippedBitsInA = (abm & (((-1) + bsb) | 0)); ai = ((ai + $m_jl_Integer$().bitCount__I__I(skippedBitsInA)) | 0); abm = (abm ^ skippedBitsInA); const aai = a.u[ai]; const bbi = b.u[bi]; const result = ((aai === bbi) ? aai : aai.union0__sci_HashSet__I__sci_HashSet(bbi, ((5 + level$4) | 0))); if ((result !== aai)) { if ((resultElems === null)) { resultElems = a.clone__O() }; additionalSize = ((additionalSize + ((result.size__I() - aai.size__I()) | 0)) | 0); resultElems.u[ai] = result }; abm = (abm ^ bsb); bbm = (bbm ^ bsb); bsb = (bbm ^ (bbm & (((-1) + bbm) | 0))); ai = ((1 + ai) | 0); bi = ((1 + bi) | 0) }; return ((resultElems === null) ? larger : new $c_sci_HashSet$HashTrieSet().init___I__Asci_HashSet__I(larger.bitmap$5, resultElems, ((larger.size$5 + additionalSize) | 0))) }; equals__O__Z(other) { if ((other instanceof $c_sci_HashSet$HashTrieSet)) { const x2 = other; return ((this === x2) || (((this.bitmap$5 === x2.bitmap$5) && (this.size$5 === x2.size$5)) && $m_ju_Arrays$().equals__AO__AO__Z(this.elems$5, x2.elems$5))) } else { return ((!(other instanceof $c_sci_HashSet)) && $f_sc_GenSetLike__equals__O__Z(this, other)) } }; foreach__F1__V(f) { let i = 0; while ((i < this.elems$5.u.length)) { this.elems$5.u[i].foreach__F1__V(f); i = ((1 + i) | 0) } }; union0__sci_HashSet__I__sci_HashSet(that, level) { if ((that === this)) { return this } else if ((that instanceof $c_sci_HashSet$LeafHashSet)) { const x2 = that; const index = (31 & ((x2.hash$5 >>> level) | 0)); const mask = (1 << index); const offset = $m_jl_Integer$().bitCount__I__I((this.bitmap$5 & (((-1) + mask) | 0))); if (((this.bitmap$5 & mask) !== 0)) { const sub = this.elems$5.u[offset]; if ((sub === x2)) { return this } else { const sub1 = sub.union0__sci_HashSet__I__sci_HashSet(x2, ((5 + level) | 0)); if ((sub === sub1)) { return this } else { const elems1 = this.elems$5.clone__O(); elems1.u[offset] = sub1; return new $c_sci_HashSet$HashTrieSet().init___I__Asci_HashSet__I(this.bitmap$5, elems1, ((this.size$5 + ((sub1.size__I() - sub.size__I()) | 0)) | 0)) } } } else { const elems1$2 = $newArrayObject($d_sci_HashSet.getArrayOf(), [((1 + this.elems$5.u.length) | 0)]); $systemArraycopy(this.elems$5, 0, elems1$2, 0, offset); elems1$2.u[offset] = x2; $systemArraycopy(this.elems$5, offset, elems1$2, ((1 + offset) | 0), ((this.elems$5.u.length - offset) | 0)); const bitmap1 = (this.bitmap$5 | mask); return new $c_sci_HashSet$HashTrieSet().init___I__Asci_HashSet__I(bitmap1, elems1$2, ((this.size$5 + x2.size__I()) | 0)) } } else if ((that instanceof $c_sci_HashSet$HashTrieSet)) { const x3 = that; const abm = this.bitmap$5; const bbm = x3.bitmap$5; const allBits = (abm | bbm); return (((allBits === abm) && ((allBits !== bbm) || (this.size$5 >= x3.size$5))) ? this.addMaybeSubset$1__p5__sci_HashSet$HashTrieSet__sci_HashSet$HashTrieSet__I__sci_HashSet$HashTrieSet(this, x3, level) : ((allBits === bbm) ? this.addMaybeSubset$1__p5__sci_HashSet$HashTrieSet__sci_HashSet$HashTrieSet__I__sci_HashSet$HashTrieSet(x3, this, level) : (((abm & bbm) === 0) ? this.addDistinct$1__p5__sci_HashSet$HashTrieSet__sci_HashSet$HashTrieSet(x3) : this.addCommon$1__p5__sci_HashSet$HashTrieSet__I__sci_HashSet$HashTrieSet(x3, level)))) } else { return this } }; size__I() { return this.size$5 }; iterator__sc_Iterator() { return new $c_sci_HashSet$HashTrieSet$$anon$2().init___sci_HashSet$HashTrieSet(this) }; addDistinct$1__p5__sci_HashSet$HashTrieSet__sci_HashSet$HashTrieSet(that) { let ai = 0; let bi = 0; let offset = 0; const abm = this.bitmap$5; const bbm = that.bitmap$5; const a = this.elems$5; const b = that.elems$5; let allBits = (abm | bbm); const resultElems = $newArrayObject($d_sci_HashSet.getArrayOf(), [$m_jl_Integer$().bitCount__I__I(allBits)]); let lsb = (allBits ^ (allBits & (((-1) + allBits) | 0))); while ((lsb !== 0)) { if (((lsb & abm) !== 0)) { resultElems.u[offset] = a.u[ai]; ai = ((1 + ai) | 0) } else { resultElems.u[offset] = b.u[bi]; bi = ((1 + bi) | 0) }; offset = ((1 + offset) | 0); allBits = (allBits ^ lsb); lsb = (allBits ^ (allBits & (((-1) + allBits) | 0))) }; return new $c_sci_HashSet$HashTrieSet().init___I__Asci_HashSet__I((abm | bbm), resultElems, ((this.size$5 + that.size$5) | 0)) }; init___I__Asci_HashSet__I(bitmap, elems, size) { this.bitmap$5 = bitmap; this.elems$5 = elems; this.size$5 = size; return this }; get0__O__I__I__Z(key, hash, level) { const index = (31 & ((hash >>> level) | 0)); const mask = (1 << index); if ((this.bitmap$5 === (-1))) { return this.elems$5.u[(31 & index)].get0__O__I__I__Z(key, hash, ((5 + level) | 0)) } else if (((this.bitmap$5 & mask) !== 0)) { const offset = $m_jl_Integer$().bitCount__I__I((this.bitmap$5 & (((-1) + mask) | 0))); return this.elems$5.u[offset].get0__O__I__I__Z(key, hash, ((5 + level) | 0)) } else { return false } }; subsetOf0__sci_HashSet__I__Z(that, level) { if ((that === this)) { return true } else { if ((that instanceof $c_sci_HashSet$HashTrieSet)) { const x2 = that; if ((((this.bitmap$5 & (~x2.bitmap$5)) === 0) && (this.size$5 <= x2.size$5))) { let abm = this.bitmap$5; const a = this.elems$5; let ai = 0; const b = x2.elems$5; let bbm = x2.bitmap$5; let bi = 0; if (((abm & bbm) === abm)) { while ((abm !== 0)) { const alsb = (abm ^ (abm & (((-1) + abm) | 0))); const blsb = (bbm ^ (bbm & (((-1) + bbm) | 0))); if ((alsb === blsb)) { if ((!a.u[ai].subsetOf0__sci_HashSet__I__Z(b.u[bi], ((5 + level) | 0)))) { return false }; abm = (abm & (~alsb)); ai = ((1 + ai) | 0) }; bbm = (bbm & (~blsb)); bi = ((1 + bi) | 0) }; return true } else { return false } } }; return false } }; addCommon$1__p5__sci_HashSet$HashTrieSet__I__sci_HashSet$HashTrieSet(that, level$4) { let ai = 0; let bi = 0; const abm = this.bitmap$5; const bbm = that.bitmap$5; const a = this.elems$5; const b = that.elems$5; let allBits = (abm | bbm); const resultElems = $newArrayObject($d_sci_HashSet.getArrayOf(), [$m_jl_Integer$().bitCount__I__I(allBits)]); let offset = 0; let rs = 0; let lsb = (allBits ^ (allBits & (((-1) + allBits) | 0))); let result = null; while ((lsb !== 0)) { if (((lsb & abm) !== 0)) { if (((lsb & bbm) !== 0)) { const aai = a.u[ai]; const bbi = b.u[bi]; result = ((aai === bbi) ? aai : aai.union0__sci_HashSet__I__sci_HashSet(bbi, ((5 + level$4) | 0))); ai = ((1 + ai) | 0); bi = ((1 + bi) | 0) } else { result = a.u[ai]; ai = ((1 + ai) | 0) } } else { result = b.u[bi]; bi = ((1 + bi) | 0) }; allBits = (allBits ^ lsb); lsb = (allBits ^ (allBits & (((-1) + allBits) | 0))); resultElems.u[offset] = result; rs = ((rs + result.size__I()) | 0); offset = ((1 + offset) | 0) }; return new $c_sci_HashSet$HashTrieSet().init___I__Asci_HashSet__I((abm | bbm), resultElems, rs) }; } const $isArrayOf_sci_HashSet$HashTrieSet = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_HashSet$HashTrieSet))) }); const $d_sci_HashSet$HashTrieSet = new $TypeData().initClass({ sci_HashSet$HashTrieSet: 0 }, false, "scala.collection.immutable.HashSet$HashTrieSet", { sci_HashSet$HashTrieSet: 1, sci_HashSet: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_HashSet$HashTrieSet.prototype.$classData = $d_sci_HashSet$HashTrieSet; class $c_sci_HashSet$LeafHashSet extends $c_sci_HashSet { constructor() { super(); this.hash$5 = 0 }; init___I(hash) { this.hash$5 = hash; return this }; } const $isArrayOf_sci_HashSet$LeafHashSet = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_HashSet$LeafHashSet))) }); class $c_sci_MapLike$$anon$1 extends $c_sc_MapLike$FilteredKeys { seq__sc_TraversableOnce() { return this }; init___sci_MapLike__F1($$outer, p$1) { $c_sc_MapLike$FilteredKeys.prototype.init___sc_MapLike__F1.call(this, $$outer, p$1); return this }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; $$plus__T2__sci_Map(kv) { return $f_sci_DefaultMap__$$plus__T2__sci_Map(this, kv) }; companion__scg_GenericCompanion() { return $m_sci_Iterable$() }; $$minus__O__sc_Map(key) { return $f_sci_DefaultMap__$$minus__O__sci_Map(this, key) }; empty__sc_Map() { $m_sci_Map$(); return $m_sci_Map$EmptyMap$() }; $$plus$plus__sc_GenTraversableOnce__sci_Map(xs) { return $f_sci_MapLike__$$plus$plus__sc_GenTraversableOnce__sci_Map(this, xs) }; seq__sc_Map() { return this }; toMap__s_Predef$$less$colon$less__sci_Map(ev) { return this }; $$plus__T2__sc_GenMap(kv) { return $f_sci_DefaultMap__$$plus__T2__sci_Map(this, kv) }; keySet__sci_Set() { return new $c_sci_MapLike$ImmutableDefaultKeySet().init___sci_MapLike(this) }; } const $d_sci_MapLike$$anon$1 = new $TypeData().initClass({ sci_MapLike$$anon$1: 0 }, false, "scala.collection.immutable.MapLike$$anon$1", { sci_MapLike$$anon$1: 1, sc_MapLike$FilteredKeys: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sc_DefaultMap: 1, sci_DefaultMap: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1 }); $c_sci_MapLike$$anon$1.prototype.$classData = $d_sci_MapLike$$anon$1; class $c_sci_MapLike$$anon$2 extends $c_sc_MapLike$MappedValues { seq__sc_TraversableOnce() { return this }; init___sci_MapLike__F1($$outer, f$1) { $c_sc_MapLike$MappedValues.prototype.init___sc_MapLike__F1.call(this, $$outer, f$1); return this }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; $$plus__T2__sci_Map(kv) { return $f_sci_DefaultMap__$$plus__T2__sci_Map(this, kv) }; companion__scg_GenericCompanion() { return $m_sci_Iterable$() }; $$minus__O__sc_Map(key) { return $f_sci_DefaultMap__$$minus__O__sci_Map(this, key) }; empty__sc_Map() { $m_sci_Map$(); return $m_sci_Map$EmptyMap$() }; $$plus$plus__sc_GenTraversableOnce__sci_Map(xs) { return $f_sci_MapLike__$$plus$plus__sc_GenTraversableOnce__sci_Map(this, xs) }; seq__sc_Map() { return this }; toMap__s_Predef$$less$colon$less__sci_Map(ev) { return this }; $$plus__T2__sc_GenMap(kv) { return $f_sci_DefaultMap__$$plus__T2__sci_Map(this, kv) }; keySet__sci_Set() { return new $c_sci_MapLike$ImmutableDefaultKeySet().init___sci_MapLike(this) }; } const $d_sci_MapLike$$anon$2 = new $TypeData().initClass({ sci_MapLike$$anon$2: 0 }, false, "scala.collection.immutable.MapLike$$anon$2", { sci_MapLike$$anon$2: 1, sc_MapLike$MappedValues: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sc_DefaultMap: 1, sci_DefaultMap: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1 }); $c_sci_MapLike$$anon$2.prototype.$classData = $d_sci_MapLike$$anon$2; class $c_sci_NumericRange extends $c_sc_AbstractSeq { constructor() { super(); this.numRangeElements$4 = 0; this.last$4 = null; this.hashCode$4 = 0; this.start$4 = null; this.end$4 = null; this.step$4 = null; this.isInclusive$4 = false; this.num$4 = null; this.bitmap$0$4 = 0 }; seq__sc_TraversableOnce() { return this }; thisCollection__sc_Iterable() { return this }; locationAfterN__p4__I__O(n) { const this$1 = this.num$4; const lhs = this.start$4; const jsx$1 = new $c_s_math_Integral$IntegralOps().init___s_math_Integral__O(this$1, lhs); const this$2 = this.num$4; const lhs$1 = this.step$4; return jsx$1.$$plus__O__O(new $c_s_math_Integral$IntegralOps().init___s_math_Integral__O(this$2, lhs$1).$$times__O__O(this.num$4.fromInt__I__O(n))) }; apply__I__O(idx) { if (((idx < 0) || (idx >= this.numRangeElements__p4__I()))) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + idx)) } else { return this.locationAfterN__p4__I__O(idx) } }; apply__O__O(v1) { return this.apply__I__O((v1 | 0)) }; seq__sc_Iterable() { return this }; isEmpty__Z() { return (this.numRangeElements__p4__I() === 0) }; thisCollection__sc_Traversable() { return this }; equals__O__Z(other) { if ((other instanceof $c_sci_NumericRange)) { const x2 = other; return ((this.numRangeElements__p4__I() === x2.numRangeElements__p4__I()) && ((this.numRangeElements__p4__I() === 0) || ($m_sr_BoxesRunTime$().equals__O__O__Z(this.start$4, x2.start$4) && $m_sr_BoxesRunTime$().equals__O__O__Z(this.last__O(), x2.last__O())))) } else { return $f_sc_GenSeqLike__equals__O__Z(this, other) } }; numRangeElements$lzycompute__p4__I() { if (((((1 & this.bitmap$0$4) << 24) >> 24) === 0)) { this.numRangeElements$4 = $m_sci_NumericRange$().count__O__O__O__Z__s_math_Integral__I(this.start$4, this.end$4, this.step$4, this.isInclusive$4, this.num$4); this.bitmap$0$4 = (((1 | this.bitmap$0$4) << 24) >> 24) }; return this.numRangeElements$4 }; toString__T() { const empty = (this.isEmpty__Z() ? "empty " : ""); const preposition = (this.isInclusive$4 ? "to" : "until"); const stepped = ($m_sr_BoxesRunTime$().equals__O__O__Z(this.step$4, 1) ? "" : (" by " + this.step$4)); return (((((((empty + "NumericRange ") + this.start$4) + " ") + preposition) + " ") + this.end$4) + stepped) }; companion__scg_GenericCompanion() { return $m_sci_IndexedSeq$() }; foreach__F1__V(f) { let count = 0; let current = this.start$4; while ((count < this.numRangeElements__p4__I())) { f.apply__O__O(current); const this$1 = this.num$4; const lhs = current; current = new $c_s_math_Integral$IntegralOps().init___s_math_Integral__O(this$1, lhs).$$plus__O__O(this.step$4); count = ((1 + count) | 0) } }; toIndexedSeq__sci_IndexedSeq() { return this }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; numRangeElements__p4__I() { return (((((1 & this.bitmap$0$4) << 24) >> 24) === 0) ? this.numRangeElements$lzycompute__p4__I() : this.numRangeElements$4) }; iterator__sc_Iterator() { return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, this.numRangeElements__p4__I()) }; seq__sc_Seq() { return this }; length__I() { return this.numRangeElements__p4__I() }; sizeHintIfCheap__I() { return this.numRangeElements__p4__I() }; last__O() { return (((((2 & this.bitmap$0$4) << 24) >> 24) === 0) ? this.last$lzycompute__p4__O() : this.last$4) }; init___O__O__O__Z__s_math_Integral(start, end, step, isInclusive, num) { this.start$4 = start; this.end$4 = end; this.step$4 = step; this.isInclusive$4 = isInclusive; this.num$4 = num; return this }; thisCollection__sc_Seq() { return this }; isDefinedAt__O__Z(x) { const idx = (x | 0); return $f_sc_GenSeqLike__isDefinedAt__I__Z(this, idx) }; hashCode$lzycompute__p4__I() { if (((((4 & this.bitmap$0$4) << 24) >> 24) === 0)) { this.hashCode$4 = $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this); this.bitmap$0$4 = (((4 | this.bitmap$0$4) << 24) >> 24) }; return this.hashCode$4 }; hashCode__I() { return (((((4 & this.bitmap$0$4) << 24) >> 24) === 0) ? this.hashCode$lzycompute__p4__I() : this.hashCode$4) }; last$lzycompute__p4__O() { if (((((2 & this.bitmap$0$4) << 24) >> 24) === 0)) { let jsx$1; if ((this.numRangeElements__p4__I() === 0)) { const this$1 = $m_sci_Nil$(); jsx$1 = $f_sc_LinearSeqOptimized__last__O(this$1) } else { jsx$1 = this.locationAfterN__p4__I__O((((-1) + this.numRangeElements__p4__I()) | 0)) }; this.last$4 = jsx$1; this.bitmap$0$4 = (((2 | this.bitmap$0$4) << 24) >> 24) }; return this.last$4 }; } const $isArrayOf_sci_NumericRange = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_NumericRange))) }); const $is_scm_Set = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.scm_Set))) }); const $isArrayOf_scm_Set = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_Set))) }); class $c_sci_HashSet$HashSet1 extends $c_sci_HashSet$LeafHashSet { constructor() { super(); this.key$6 = null }; updated0__O__I__I__sci_HashSet(key, hash, level) { if ((hash === this.hash$5)) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key$6)) { return this } else { $m_sci_ListSet$(); const this$2 = $m_sci_ListSet$EmptyListSet$(); const elem = this.key$6; return new $c_sci_HashSet$HashSetCollision1().init___I__sci_ListSet__I(hash, new $c_sci_ListSet$Node().init___sci_ListSet__O(this$2, elem).$$plus__O__sci_ListSet(key), 2) } } else { return $m_sci_HashSet$().scala$collection$immutable$HashSet$$makeHashTrieSet__I__sci_HashSet__I__sci_HashSet__I__I__sci_HashSet$HashTrieSet(this.hash$5, this, hash, new $c_sci_HashSet$HashSet1().init___O__I(key, hash), level, 2) } }; equals__O__Z(other) { if ((other instanceof $c_sci_HashSet$HashSet1)) { const x2 = other; return ((this === x2) || ((this.hash$5 === x2.hash$5) && $m_sr_BoxesRunTime$().equals__O__O__Z(this.key$6, x2.key$6))) } else { return ((!(other instanceof $c_sci_HashSet)) && $f_sc_GenSetLike__equals__O__Z(this, other)) } }; foreach__F1__V(f) { f.apply__O__O(this.key$6) }; init___O__I(key, hash) { this.key$6 = key; $c_sci_HashSet$LeafHashSet.prototype.init___I.call(this, hash); return this }; union0__sci_HashSet__I__sci_HashSet(that, level) { if ((that instanceof $c_sci_HashSet$HashSet1)) { const x2 = that; if ((this.hash$5 === x2.hash$5)) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(this.key$6, x2.key$6)) { return this } else { const jsx$1 = this.hash$5; $m_sci_ListSet$(); const this$2 = $m_sci_ListSet$EmptyListSet$(); const elem = this.key$6; return new $c_sci_HashSet$HashSetCollision1().init___I__sci_ListSet__I(jsx$1, new $c_sci_ListSet$Node().init___sci_ListSet__O(this$2, elem).$$plus__O__sci_ListSet(x2.key$6), 2) } } else { return $m_sci_HashSet$().scala$collection$immutable$HashSet$$makeHashTrieSet__I__sci_HashSet__I__sci_HashSet__I__I__sci_HashSet$HashTrieSet(this.hash$5, this, x2.hash$5, x2, level, 2) } } else { return that.union0__sci_HashSet__I__sci_HashSet(this, level) } }; size__I() { return 1 }; iterator__sc_Iterator() { $m_sc_Iterator$(); const array = [this.key$6]; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(elems, 0, (elems.array$6.length | 0)) }; get0__O__I__I__Z(key, hash, level) { return ((hash === this.hash$5) && $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key$6)) }; subsetOf0__sci_HashSet__I__Z(that, level) { return ((this === that) || that.get0__O__I__I__Z(this.key$6, this.hash$5, level)) }; } const $isArrayOf_sci_HashSet$HashSet1 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_HashSet$HashSet1))) }); const $d_sci_HashSet$HashSet1 = new $TypeData().initClass({ sci_HashSet$HashSet1: 0 }, false, "scala.collection.immutable.HashSet$HashSet1", { sci_HashSet$HashSet1: 1, sci_HashSet$LeafHashSet: 1, sci_HashSet: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_HashSet$HashSet1.prototype.$classData = $d_sci_HashSet$HashSet1; class $c_sci_HashSet$HashSetCollision1 extends $c_sci_HashSet$LeafHashSet { constructor() { super(); this.ks$6 = null; this.size$6 = 0 }; updated0__O__I__I__sci_HashSet(key, hash, level) { if ((hash === this.hash$5)) { const ks1 = this.ks$6.$$plus__O__sci_ListSet(key); return ((ks1 === this.ks$6) ? this : new $c_sci_HashSet$HashSetCollision1().init___I__sci_ListSet__I(hash, ks1, ((1 + this.size$6) | 0))) } else { return $m_sci_HashSet$().scala$collection$immutable$HashSet$$makeHashTrieSet__I__sci_HashSet__I__sci_HashSet__I__I__sci_HashSet$HashTrieSet(this.hash$5, this, hash, new $c_sci_HashSet$HashSet1().init___O__I(key, hash), level, ((1 + this.size$6) | 0)) } }; equals__O__Z(other) { if ((other instanceof $c_sci_HashSet$HashSetCollision1)) { const x2 = other; if ((this === x2)) { return true } else if ((this.hash$5 === x2.hash$5)) { const x = this.ks$6; const x$2 = x2.ks$6; return ((x === null) ? (x$2 === null) : $f_sc_GenSetLike__equals__O__Z(x, x$2)) } else { return false } } else { return ((!(other instanceof $c_sci_HashSet)) && $f_sc_GenSetLike__equals__O__Z(this, other)) } }; foreach__F1__V(f) { const this$1 = this.ks$6; const this$2 = this$1.reverseList$1__p4__sci_List(); const this$3 = new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$2); $f_sc_Iterator__foreach__F1__V(this$3, f) }; union0__sci_HashSet__I__sci_HashSet(that, level) { if ((that instanceof $c_sci_HashSet$HashSet1)) { const x2 = that; if ((x2.hash$5 !== this.hash$5)) { return $m_sci_HashSet$().scala$collection$immutable$HashSet$$makeHashTrieSet__I__sci_HashSet__I__sci_HashSet__I__I__sci_HashSet$HashTrieSet(this.hash$5, this, x2.hash$5, x2, level, ((1 + this.size$6) | 0)) } else { const ks1 = this.ks$6.$$plus__O__sci_ListSet(x2.key$6); return ((ks1 === this.ks$6) ? this : new $c_sci_HashSet$HashSetCollision1().init___I__sci_ListSet__I(this.hash$5, ks1, ((1 + this.size$6) | 0))) } } else if ((that instanceof $c_sci_HashSet$HashSetCollision1)) { const x3 = that; if ((x3.hash$5 !== this.hash$5)) { return $m_sci_HashSet$().scala$collection$immutable$HashSet$$makeHashTrieSet__I__sci_HashSet__I__sci_HashSet__I__I__sci_HashSet$HashTrieSet(this.hash$5, this, x3.hash$5, x3, level, ((this.size$6 + x3.size$6) | 0)) } else if ((this === x3)) { return this } else { const ks1$2 = this.ks$6.$$plus$plus__sc_GenTraversableOnce__sci_ListSet(x3.ks$6); if ((ks1$2 === this.ks$6)) { return this } else { const newSize = ks1$2.size__I(); return ((newSize === x3.size$6) ? x3 : new $c_sci_HashSet$HashSetCollision1().init___I__sci_ListSet__I(this.hash$5, ks1$2, newSize)) } } } else { return that.union0__sci_HashSet__I__sci_HashSet(this, level) } }; init___I__sci_ListSet__I(hash, ks, size) { this.ks$6 = ks; this.size$6 = size; $c_sci_HashSet$LeafHashSet.prototype.init___I.call(this, hash); return this }; size__I() { return this.size$6 }; iterator__sc_Iterator() { const this$1 = this.ks$6; const this$2 = this$1.reverseList$1__p4__sci_List(); return new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$2) }; get0__O__I__I__Z(key, hash, level) { return ((hash === this.hash$5) && this.ks$6.contains__O__Z(key)) }; subsetOf0__sci_HashSet__I__Z(that, level) { if ((this === that)) { return true } else { const this$1 = this.ks$6; const this$2 = this$1.reverseList$1__p4__sci_List(); const this$3 = new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$2); let res = true; while ((res && this$3.hasNext__Z())) { const arg1 = this$3.next__O(); res = that.get0__O__I__I__Z(arg1, this.hash$5, level) }; return res } }; } const $isArrayOf_sci_HashSet$HashSetCollision1 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_HashSet$HashSetCollision1))) }); const $d_sci_HashSet$HashSetCollision1 = new $TypeData().initClass({ sci_HashSet$HashSetCollision1: 0 }, false, "scala.collection.immutable.HashSet$HashSetCollision1", { sci_HashSet$HashSetCollision1: 1, sci_HashSet$LeafHashSet: 1, sci_HashSet: 1, sc_AbstractSet: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, sci_Set: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_HashSet$HashSetCollision1.prototype.$classData = $d_sci_HashSet$HashSetCollision1; class $c_sci_ListMap extends $c_sci_AbstractMap { value__O() { throw new $c_ju_NoSuchElementException().init___T("value of empty map") }; isEmpty__Z() { return true }; thisCollection__sc_Traversable() { return this }; $$plus__T2__sci_Map(kv) { return this.$$plus__T2__sci_ListMap(kv) }; $$minus__O__sc_Map(key) { return this.$$minus__O__sci_ListMap(key) }; empty__sc_Map() { $m_sci_ListMap$(); return $m_sci_ListMap$EmptyListMap$() }; empty__sci_Map() { $m_sci_ListMap$(); return $m_sci_ListMap$EmptyListMap$() }; foreachEntry__F2__V(f) { let current = this; while ((!current.isEmpty__Z())) { f.apply__O__O__O(current.key__O(), current.value__O()); current = current.next__sci_ListMap() } }; size__I() { return 0 }; $$plus$plus__sc_GenTraversableOnce__sci_Map(xs) { return this.$$plus$plus__sc_GenTraversableOnce__sci_ListMap(xs) }; seq__sc_Map() { return this }; key__O() { throw new $c_ju_NoSuchElementException().init___T("key of empty map") }; iterator__sc_Iterator() { const this$1 = this.reverseList$1__p5__sci_List(); return new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$1) }; $$plus__T2__sci_ListMap(kv) { return new $c_sci_ListMap$Node().init___sci_ListMap__O__O(this, kv.$$und1__O(), kv.$$und2__O()) }; $$plus$plus__sc_GenTraversableOnce__sci_ListMap(xs) { return (xs.isEmpty__Z() ? this : xs.$$div$colon__O__F2__O(this, new $c_sjsr_AnonFunction2().init___sjs_js_Function2((function($this) { return (function(x$2$2, x$3$2) { const x$2 = x$2$2; const x$3 = x$3$2; return x$2.$$plus__T2__sci_ListMap(x$3) }) })(this)))) }; updated__O__O__sci_ListMap(key, value) { return new $c_sci_ListMap$Node().init___sci_ListMap__O__O(this, key, value) }; $$minus__O__sci_ListMap(key) { return this }; get__O__s_Option(key) { return $m_s_None$() }; reverseList$1__p5__sci_List() { let curr = this; let res = $m_sci_Nil$(); while ((!curr.isEmpty__Z())) { const x$4 = new $c_T2().init___O__O(curr.key__O(), curr.value__O()); const this$1 = res; res = new $c_sci_$colon$colon().init___O__sci_List(x$4, this$1); curr = curr.next__sci_ListMap() }; return res }; hashCode__I() { if (this.isEmpty__Z()) { return $m_s_util_hashing_MurmurHash3$().emptyMapHash$2 } else { const hasher = new $c_sci_Map$HashCodeAccumulator().init___(); this.foreachEntry__F2__V(hasher); return hasher.finalizeHash__I() } }; next__sci_ListMap() { throw new $c_ju_NoSuchElementException().init___T("next of empty map") }; $$plus__T2__sc_GenMap(kv) { return this.$$plus__T2__sci_ListMap(kv) }; stringPrefix__T() { return "ListMap" }; } const $isArrayOf_sci_ListMap = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_ListMap))) }); class $c_sci_Map$EmptyMap$ extends $c_sci_AbstractMap { init___() { return this }; apply__O__O(key) { this.apply__O__sr_Nothing$(key) }; getOrElse__O__F0__O(key, $default) { return $default.apply__O() }; $$plus__T2__sci_Map(kv) { const key = kv.$$und1__O(); const value = kv.$$und2__O(); return new $c_sci_Map$Map1().init___O__O(key, value) }; $$minus__O__sc_Map(key) { return this }; size__I() { return 0 }; $$plus$plus__sc_GenTraversableOnce__sci_Map(xs) { return this.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(xs, $m_sci_Map$().ReusableCBF$4) }; iterator__sc_Iterator() { return $m_sc_Iterator$().empty$1 }; $$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(that, bf) { if ($m_sci_Map$().scala$collection$immutable$Map$$isMapCBF__scg_CanBuildFrom__Z(bf)) { if ((that instanceof $c_sci_HashMap)) { const x2 = that; if ((x2.size__I() > 4)) { return x2 } }; const x = $m_sci_Map$EmptyMap$(); if ($f_sc_GenMapLike__equals__O__Z(x, that)) { return this }; if ((that instanceof $c_sci_Map$Map1)) { const x4 = that; return x4 }; if ((that instanceof $c_sci_Map$Map2)) { const x5 = that; return x5 }; if ((that instanceof $c_sci_Map$Map3)) { const x6 = that; return x6 }; if ((that instanceof $c_sci_Map$Map4)) { const x7 = that; return x7 }; return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf) } else if ($m_sci_Map$().scala$collection$immutable$Map$$isHashMapCBF__scg_CanBuildFrom__Z(bf)) { if ((that instanceof $c_sci_HashMap)) { const x2$2 = that; return x2$2 } else { return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf) } } else { return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf) } }; get__O__s_Option(key) { return $m_s_None$() }; contains__O__Z(key) { return false }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().emptyMapHash$2 }; apply__O__sr_Nothing$(key) { throw new $c_ju_NoSuchElementException().init___T(("key not found: " + key)) }; $$plus__T2__sc_GenMap(kv) { const key = kv.$$und1__O(); const value = kv.$$und2__O(); return new $c_sci_Map$Map1().init___O__O(key, value) }; } const $d_sci_Map$EmptyMap$ = new $TypeData().initClass({ sci_Map$EmptyMap$: 0 }, false, "scala.collection.immutable.Map$EmptyMap$", { sci_Map$EmptyMap$: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sci_HasForeachEntry: 1 }); $c_sci_Map$EmptyMap$.prototype.$classData = $d_sci_Map$EmptyMap$; let $n_sci_Map$EmptyMap$ = (void 0); const $m_sci_Map$EmptyMap$ = (function() { if ((!$n_sci_Map$EmptyMap$)) { $n_sci_Map$EmptyMap$ = new $c_sci_Map$EmptyMap$().init___() }; return $n_sci_Map$EmptyMap$ }); class $c_sci_Map$Map1 extends $c_sci_AbstractMap { constructor() { super(); this.key1$5 = null; this.value1$5 = null }; apply__O__O(key) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5)) { return this.value1$5 } else { throw new $c_ju_NoSuchElementException().init___T(("key not found: " + key)) } }; getOrElse__O__F0__O(key, $default) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? this.value1$5 : $default.apply__O()) }; init___O__O(key1, value1) { this.key1$5 = key1; this.value1$5 = value1; return this }; $$plus__T2__sci_Map(kv) { return this.updated__O__O__sci_Map(kv.$$und1__O(), kv.$$und2__O()) }; foreach__F1__V(f) { f.apply__O__O(new $c_T2().init___O__O(this.key1$5, this.value1$5)) }; $$minus__O__sc_Map(key) { return this.$$minus__O__sci_Map(key) }; size__I() { return 1 }; iterator__sc_Iterator() { $m_sc_Iterator$(); const array = [new $c_T2().init___O__O(this.key1$5, this.value1$5)]; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(elems, 0, (elems.array$6.length | 0)) }; updated__O__O__sci_Map(key, value) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_sci_Map$Map1().init___O__O(this.key1$5, value) : new $c_sci_Map$Map2().init___O__O__O__O(this.key1$5, this.value1$5, key, value)) }; get__O__s_Option(key) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_s_Some().init___O(this.value1$5) : $m_s_None$()) }; contains__O__Z(key) { return $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) }; $$minus__O__sci_Map(key) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? ($m_sci_Map$(), $m_sci_Map$EmptyMap$()) : this) }; hashCode__I() { let a = 0; let b = 0; let c = 1; const this$1 = $m_s_util_hashing_MurmurHash3$(); const x = this.key1$5; const y = this.value1$5; let h = this$1.product2Hash__O__O__I__I(x, y, (-889275714)); a = ((a + h) | 0); b = (b ^ h); if ((h !== 0)) { c = $imul(c, h) }; h = $m_s_util_hashing_MurmurHash3$().mapSeed$2; h = $m_s_util_hashing_MurmurHash3$().mix__I__I__I(h, a); h = $m_s_util_hashing_MurmurHash3$().mix__I__I__I(h, b); h = $m_s_util_hashing_MurmurHash3$().mixLast__I__I__I(h, c); return $m_s_util_hashing_MurmurHash3$().finalizeHash__I__I__I(h, 1) }; $$plus__T2__sc_GenMap(kv) { return this.updated__O__O__sci_Map(kv.$$und1__O(), kv.$$und2__O()) }; } const $isArrayOf_sci_Map$Map1 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Map$Map1))) }); const $d_sci_Map$Map1 = new $TypeData().initClass({ sci_Map$Map1: 0 }, false, "scala.collection.immutable.Map$Map1", { sci_Map$Map1: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sci_HasForeachEntry: 1 }); $c_sci_Map$Map1.prototype.$classData = $d_sci_Map$Map1; class $c_sci_Map$Map2 extends $c_sci_AbstractMap { constructor() { super(); this.key1$5 = null; this.value1$5 = null; this.key2$5 = null; this.value2$5 = null }; apply__O__O(key) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5)) { return this.value1$5 } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5)) { return this.value2$5 } else { throw new $c_ju_NoSuchElementException().init___T(("key not found: " + key)) } }; getOrElse__O__F0__O(key, $default) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? this.value1$5 : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? this.value2$5 : $default.apply__O())) }; $$plus__T2__sci_Map(kv) { return this.updated__O__O__sci_Map(kv.$$und1__O(), kv.$$und2__O()) }; foreach__F1__V(f) { f.apply__O__O(new $c_T2().init___O__O(this.key1$5, this.value1$5)); f.apply__O__O(new $c_T2().init___O__O(this.key2$5, this.value2$5)) }; $$minus__O__sc_Map(key) { return this.$$minus__O__sci_Map(key) }; size__I() { return 2 }; iterator__sc_Iterator() { $m_sc_Iterator$(); const array = [new $c_T2().init___O__O(this.key1$5, this.value1$5), new $c_T2().init___O__O(this.key2$5, this.value2$5)]; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(elems, 0, (elems.array$6.length | 0)) }; updated__O__O__sci_Map(key, value) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_sci_Map$Map2().init___O__O__O__O(this.key1$5, value, this.key2$5, this.value2$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? new $c_sci_Map$Map2().init___O__O__O__O(this.key1$5, this.value1$5, this.key2$5, value) : new $c_sci_Map$Map3().init___O__O__O__O__O__O(this.key1$5, this.value1$5, this.key2$5, this.value2$5, key, value))) }; get__O__s_Option(key) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_s_Some().init___O(this.value1$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? new $c_s_Some().init___O(this.value2$5) : $m_s_None$())) }; contains__O__Z(key) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) || $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5)) }; init___O__O__O__O(key1, value1, key2, value2) { this.key1$5 = key1; this.value1$5 = value1; this.key2$5 = key2; this.value2$5 = value2; return this }; $$minus__O__sci_Map(key) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_sci_Map$Map1().init___O__O(this.key2$5, this.value2$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? new $c_sci_Map$Map1().init___O__O(this.key1$5, this.value1$5) : this)) }; hashCode__I() { let a = 0; let b = 0; let c = 1; const this$1 = $m_s_util_hashing_MurmurHash3$(); const x = this.key1$5; const y = this.value1$5; let h = this$1.product2Hash__O__O__I__I(x, y, (-889275714)); a = ((a + h) | 0); b = (b ^ h); if ((h !== 0)) { c = $imul(c, h) }; const this$2 = $m_s_util_hashing_MurmurHash3$(); const x$1 = this.key2$5; const y$1 = this.value2$5; h = this$2.product2Hash__O__O__I__I(x$1, y$1, (-889275714)); a = ((a + h) | 0); b = (b ^ h); if ((h !== 0)) { c = $imul(c, h) }; h = $m_s_util_hashing_MurmurHash3$().mapSeed$2; h = $m_s_util_hashing_MurmurHash3$().mix__I__I__I(h, a); h = $m_s_util_hashing_MurmurHash3$().mix__I__I__I(h, b); h = $m_s_util_hashing_MurmurHash3$().mixLast__I__I__I(h, c); return $m_s_util_hashing_MurmurHash3$().finalizeHash__I__I__I(h, 2) }; $$plus__T2__sc_GenMap(kv) { return this.updated__O__O__sci_Map(kv.$$und1__O(), kv.$$und2__O()) }; } const $isArrayOf_sci_Map$Map2 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Map$Map2))) }); const $d_sci_Map$Map2 = new $TypeData().initClass({ sci_Map$Map2: 0 }, false, "scala.collection.immutable.Map$Map2", { sci_Map$Map2: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sci_HasForeachEntry: 1 }); $c_sci_Map$Map2.prototype.$classData = $d_sci_Map$Map2; class $c_sci_Map$Map3 extends $c_sci_AbstractMap { constructor() { super(); this.key1$5 = null; this.value1$5 = null; this.key2$5 = null; this.value2$5 = null; this.key3$5 = null; this.value3$5 = null }; apply__O__O(key) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5)) { return this.value1$5 } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5)) { return this.value2$5 } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5)) { return this.value3$5 } else { throw new $c_ju_NoSuchElementException().init___T(("key not found: " + key)) } }; getOrElse__O__F0__O(key, $default) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? this.value1$5 : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? this.value2$5 : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5) ? this.value3$5 : $default.apply__O()))) }; $$plus__T2__sci_Map(kv) { return this.updated__O__O__sci_Map(kv.$$und1__O(), kv.$$und2__O()) }; foreach__F1__V(f) { f.apply__O__O(new $c_T2().init___O__O(this.key1$5, this.value1$5)); f.apply__O__O(new $c_T2().init___O__O(this.key2$5, this.value2$5)); f.apply__O__O(new $c_T2().init___O__O(this.key3$5, this.value3$5)) }; $$minus__O__sc_Map(key) { return this.$$minus__O__sci_Map(key) }; init___O__O__O__O__O__O(key1, value1, key2, value2, key3, value3) { this.key1$5 = key1; this.value1$5 = value1; this.key2$5 = key2; this.value2$5 = value2; this.key3$5 = key3; this.value3$5 = value3; return this }; size__I() { return 3 }; iterator__sc_Iterator() { $m_sc_Iterator$(); const array = [new $c_T2().init___O__O(this.key1$5, this.value1$5), new $c_T2().init___O__O(this.key2$5, this.value2$5), new $c_T2().init___O__O(this.key3$5, this.value3$5)]; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(elems, 0, (elems.array$6.length | 0)) }; updated__O__O__sci_Map(key, value) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_sci_Map$Map3().init___O__O__O__O__O__O(this.key1$5, value, this.key2$5, this.value2$5, this.key3$5, this.value3$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? new $c_sci_Map$Map3().init___O__O__O__O__O__O(this.key1$5, this.value1$5, this.key2$5, value, this.key3$5, this.value3$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5) ? new $c_sci_Map$Map3().init___O__O__O__O__O__O(this.key1$5, this.value1$5, this.key2$5, this.value2$5, this.key3$5, value) : new $c_sci_Map$Map4().init___O__O__O__O__O__O__O__O(this.key1$5, this.value1$5, this.key2$5, this.value2$5, this.key3$5, this.value3$5, key, value)))) }; get__O__s_Option(key) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_s_Some().init___O(this.value1$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? new $c_s_Some().init___O(this.value2$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5) ? new $c_s_Some().init___O(this.value3$5) : $m_s_None$()))) }; contains__O__Z(key) { return (($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) || $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5)) || $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5)) }; $$minus__O__sci_Map(key) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_sci_Map$Map2().init___O__O__O__O(this.key2$5, this.value2$5, this.key3$5, this.value3$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? new $c_sci_Map$Map2().init___O__O__O__O(this.key1$5, this.value1$5, this.key3$5, this.value3$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5) ? new $c_sci_Map$Map2().init___O__O__O__O(this.key1$5, this.value1$5, this.key2$5, this.value2$5) : this))) }; hashCode__I() { let a = 0; let b = 0; let c = 1; const this$1 = $m_s_util_hashing_MurmurHash3$(); const x = this.key1$5; const y = this.value1$5; let h = this$1.product2Hash__O__O__I__I(x, y, (-889275714)); a = ((a + h) | 0); b = (b ^ h); if ((h !== 0)) { c = $imul(c, h) }; const this$2 = $m_s_util_hashing_MurmurHash3$(); const x$1 = this.key2$5; const y$1 = this.value2$5; h = this$2.product2Hash__O__O__I__I(x$1, y$1, (-889275714)); a = ((a + h) | 0); b = (b ^ h); if ((h !== 0)) { c = $imul(c, h) }; const this$3 = $m_s_util_hashing_MurmurHash3$(); const x$2 = this.key3$5; const y$2 = this.value3$5; h = this$3.product2Hash__O__O__I__I(x$2, y$2, (-889275714)); a = ((a + h) | 0); b = (b ^ h); if ((h !== 0)) { c = $imul(c, h) }; h = $m_s_util_hashing_MurmurHash3$().mapSeed$2; h = $m_s_util_hashing_MurmurHash3$().mix__I__I__I(h, a); h = $m_s_util_hashing_MurmurHash3$().mix__I__I__I(h, b); h = $m_s_util_hashing_MurmurHash3$().mixLast__I__I__I(h, c); return $m_s_util_hashing_MurmurHash3$().finalizeHash__I__I__I(h, 3) }; $$plus__T2__sc_GenMap(kv) { return this.updated__O__O__sci_Map(kv.$$und1__O(), kv.$$und2__O()) }; } const $isArrayOf_sci_Map$Map3 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Map$Map3))) }); const $d_sci_Map$Map3 = new $TypeData().initClass({ sci_Map$Map3: 0 }, false, "scala.collection.immutable.Map$Map3", { sci_Map$Map3: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sci_HasForeachEntry: 1 }); $c_sci_Map$Map3.prototype.$classData = $d_sci_Map$Map3; class $c_sci_Map$Map4 extends $c_sci_AbstractMap { constructor() { super(); this.key1$5 = null; this.value1$5 = null; this.key2$5 = null; this.value2$5 = null; this.key3$5 = null; this.value3$5 = null; this.key4$5 = null; this.value4$5 = null }; apply__O__O(key) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5)) { return this.value1$5 } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5)) { return this.value2$5 } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5)) { return this.value3$5 } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key4$5)) { return this.value4$5 } else { throw new $c_ju_NoSuchElementException().init___T(("key not found: " + key)) } }; getOrElse__O__F0__O(key, $default) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? this.value1$5 : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? this.value2$5 : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5) ? this.value3$5 : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key4$5) ? this.value4$5 : $default.apply__O())))) }; $$plus__T2__sci_Map(kv) { return this.updated__O__O__sci_Map(kv.$$und1__O(), kv.$$und2__O()) }; foreach__F1__V(f) { f.apply__O__O(new $c_T2().init___O__O(this.key1$5, this.value1$5)); f.apply__O__O(new $c_T2().init___O__O(this.key2$5, this.value2$5)); f.apply__O__O(new $c_T2().init___O__O(this.key3$5, this.value3$5)); f.apply__O__O(new $c_T2().init___O__O(this.key4$5, this.value4$5)) }; $$minus__O__sc_Map(key) { return this.$$minus__O__sci_Map(key) }; size__I() { return 4 }; iterator__sc_Iterator() { $m_sc_Iterator$(); const array = [new $c_T2().init___O__O(this.key1$5, this.value1$5), new $c_T2().init___O__O(this.key2$5, this.value2$5), new $c_T2().init___O__O(this.key3$5, this.value3$5), new $c_T2().init___O__O(this.key4$5, this.value4$5)]; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(elems, 0, (elems.array$6.length | 0)) }; init___O__O__O__O__O__O__O__O(key1, value1, key2, value2, key3, value3, key4, value4) { this.key1$5 = key1; this.value1$5 = value1; this.key2$5 = key2; this.value2$5 = value2; this.key3$5 = key3; this.value3$5 = value3; this.key4$5 = key4; this.value4$5 = value4; return this }; updated__O__O__sci_Map(key, value) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_sci_Map$Map4().init___O__O__O__O__O__O__O__O(this.key1$5, value, this.key2$5, this.value2$5, this.key3$5, this.value3$5, this.key4$5, this.value4$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? new $c_sci_Map$Map4().init___O__O__O__O__O__O__O__O(this.key1$5, this.value1$5, this.key2$5, value, this.key3$5, this.value3$5, this.key4$5, this.value4$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5) ? new $c_sci_Map$Map4().init___O__O__O__O__O__O__O__O(this.key1$5, this.value1$5, this.key2$5, this.value2$5, this.key3$5, value, this.key4$5, this.value4$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key4$5) ? new $c_sci_Map$Map4().init___O__O__O__O__O__O__O__O(this.key1$5, this.value1$5, this.key2$5, this.value2$5, this.key3$5, this.value3$5, this.key4$5, value) : new $c_sci_HashMap().init___().updated__O__O__sci_HashMap(this.key1$5, this.value1$5).updated__O__O__sci_HashMap(this.key2$5, this.value2$5).updated__O__O__sci_HashMap(this.key3$5, this.value3$5).updated__O__O__sci_HashMap(this.key4$5, this.value4$5).updated__O__O__sci_HashMap(key, value))))) }; get__O__s_Option(key) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_s_Some().init___O(this.value1$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? new $c_s_Some().init___O(this.value2$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5) ? new $c_s_Some().init___O(this.value3$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key4$5) ? new $c_s_Some().init___O(this.value4$5) : $m_s_None$())))) }; contains__O__Z(key) { return ((($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) || $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5)) || $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5)) || $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key4$5)) }; $$minus__O__sci_Map(key) { return ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key1$5) ? new $c_sci_Map$Map3().init___O__O__O__O__O__O(this.key2$5, this.value2$5, this.key3$5, this.value3$5, this.key4$5, this.value4$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key2$5) ? new $c_sci_Map$Map3().init___O__O__O__O__O__O(this.key1$5, this.value1$5, this.key3$5, this.value3$5, this.key4$5, this.value4$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key3$5) ? new $c_sci_Map$Map3().init___O__O__O__O__O__O(this.key1$5, this.value1$5, this.key2$5, this.value2$5, this.key4$5, this.value4$5) : ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key4$5) ? new $c_sci_Map$Map3().init___O__O__O__O__O__O(this.key1$5, this.value1$5, this.key2$5, this.value2$5, this.key3$5, this.value3$5) : this)))) }; hashCode__I() { let a = 0; let b = 0; let c = 1; const this$1 = $m_s_util_hashing_MurmurHash3$(); const x = this.key1$5; const y = this.value1$5; let h = this$1.product2Hash__O__O__I__I(x, y, (-889275714)); a = ((a + h) | 0); b = (b ^ h); if ((h !== 0)) { c = $imul(c, h) }; const this$2 = $m_s_util_hashing_MurmurHash3$(); const x$1 = this.key2$5; const y$1 = this.value2$5; h = this$2.product2Hash__O__O__I__I(x$1, y$1, (-889275714)); a = ((a + h) | 0); b = (b ^ h); if ((h !== 0)) { c = $imul(c, h) }; const this$3 = $m_s_util_hashing_MurmurHash3$(); const x$2 = this.key3$5; const y$2 = this.value3$5; h = this$3.product2Hash__O__O__I__I(x$2, y$2, (-889275714)); a = ((a + h) | 0); b = (b ^ h); if ((h !== 0)) { c = $imul(c, h) }; const this$4 = $m_s_util_hashing_MurmurHash3$(); const x$3 = this.key4$5; const y$3 = this.value4$5; h = this$4.product2Hash__O__O__I__I(x$3, y$3, (-889275714)); a = ((a + h) | 0); b = (b ^ h); if ((h !== 0)) { c = $imul(c, h) }; h = $m_s_util_hashing_MurmurHash3$().mapSeed$2; h = $m_s_util_hashing_MurmurHash3$().mix__I__I__I(h, a); h = $m_s_util_hashing_MurmurHash3$().mix__I__I__I(h, b); h = $m_s_util_hashing_MurmurHash3$().mixLast__I__I__I(h, c); return $m_s_util_hashing_MurmurHash3$().finalizeHash__I__I__I(h, 4) }; $$plus__T2__sc_GenMap(kv) { return this.updated__O__O__sci_Map(kv.$$und1__O(), kv.$$und2__O()) }; } const $isArrayOf_sci_Map$Map4 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Map$Map4))) }); const $d_sci_Map$Map4 = new $TypeData().initClass({ sci_Map$Map4: 0 }, false, "scala.collection.immutable.Map$Map4", { sci_Map$Map4: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sci_HasForeachEntry: 1 }); $c_sci_Map$Map4.prototype.$classData = $d_sci_Map$Map4; class $c_sci_NumericRange$Inclusive extends $c_sci_NumericRange { constructor() { super(); this.num$5 = null }; init___O__O__O__s_math_Integral(start, end, step, num) { this.num$5 = num; $c_sci_NumericRange.prototype.init___O__O__O__Z__s_math_Integral.call(this, start, end, step, true, num); return this }; } const $d_sci_NumericRange$Inclusive = new $TypeData().initClass({ sci_NumericRange$Inclusive: 0 }, false, "scala.collection.immutable.NumericRange$Inclusive", { sci_NumericRange$Inclusive: 1, sci_NumericRange: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, sci_IndexedSeq: 1, sci_Seq: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_NumericRange$Inclusive.prototype.$classData = $d_sci_NumericRange$Inclusive; class $c_sci_Range extends $c_sc_AbstractSeq { constructor() { super(); this.start$4 = 0; this.end$4 = 0; this.step$4 = 0; this.isEmpty$4 = false; this.scala$collection$immutable$Range$$numRangeElements$4 = 0; this.scala$collection$immutable$Range$$lastElement$4 = 0 }; dropRight__I__sci_Range(n) { if ((n <= 0)) { return this } else if ((this.scala$collection$immutable$Range$$numRangeElements$4 >= 0)) { return this.take__I__sci_Range(((this.scala$collection$immutable$Range$$numRangeElements$4 - n) | 0)) } else { const y = ((this.last__I() - $imul(this.step$4, n)) | 0); if ((((this.step$4 > 0) && (y < this.start$4)) || ((this.step$4 < 0) && (y > this.start$4)))) { const value = this.start$4; return new $c_sci_Range().init___I__I__I(value, value, this.step$4) } else { return new $c_sci_Range$Inclusive().init___I__I__I(this.start$4, y, this.step$4) } } }; seq__sc_TraversableOnce() { return this }; isInclusive__Z() { return false }; head__O() { return this.head__I() }; apply__I__O(idx) { return this.apply$mcII$sp__I__I(idx) }; thisCollection__sc_Iterable() { return this }; apply__O__O(v1) { const idx = (v1 | 0); return this.apply$mcII$sp__I__I(idx) }; isEmpty__Z() { return this.isEmpty$4 }; seq__sc_Iterable() { return this }; longLength__p4__J() { const t = this.gap__p4__J(); const lo = t.lo$2; const hi$1 = t.hi$2; const value = this.step$4; const hi = (value >> 31); const this$1 = $m_sjsr_RuntimeLong$(); const lo$1 = this$1.divideImpl__I__I__I__I__I(lo, hi$1, value, hi); const hi$2 = this$1.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; const value$1 = (this.hasStub__p4__Z() ? 1 : 0); const hi$3 = (value$1 >> 31); const lo$2 = ((lo$1 + value$1) | 0); const hi$4 = ((((-2147483648) ^ lo$2) < ((-2147483648) ^ lo$1)) ? ((1 + ((hi$2 + hi$3) | 0)) | 0) : ((hi$2 + hi$3) | 0)); return new $c_sjsr_RuntimeLong().init___I__I(lo$2, hi$4) }; thisCollection__sc_Traversable() { return this }; locationAfterN__p4__I__I(n) { return ((this.start$4 + $imul(this.step$4, n)) | 0) }; equals__O__Z(other) { if ((other instanceof $c_sci_Range)) { const x2 = other; if (this.isEmpty$4) { return x2.isEmpty$4 } else if (($f_sc_TraversableOnce__nonEmpty__Z(x2) && (this.start$4 === x2.start$4))) { const l0 = this.last__I(); return ((l0 === x2.last__I()) && ((this.start$4 === l0) || (this.step$4 === x2.step$4))) } else { return false } } else { return $f_sc_GenSeqLike__equals__O__Z(this, other) } }; apply$mcII$sp__I__I(idx) { this.scala$collection$immutable$Range$$validateMaxLength__V(); if (((idx < 0) || (idx >= this.scala$collection$immutable$Range$$numRangeElements$4))) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + idx)) } else { return ((this.start$4 + $imul(this.step$4, idx)) | 0) } }; init___I__I__I(start, end, step) { this.start$4 = start; this.end$4 = end; this.step$4 = step; this.isEmpty$4 = ((((start > end) && (step > 0)) || ((start < end) && (step < 0))) || ((start === end) && (!this.isInclusive__Z()))); let jsx$1; if ((step === 0)) { throw new $c_jl_IllegalArgumentException().init___T("step cannot be 0.") } else if (this.isEmpty$4) { jsx$1 = 0 } else { const t = this.longLength__p4__J(); const lo = t.lo$2; const hi = t.hi$2; jsx$1 = (((hi === 0) ? (((-2147483648) ^ lo) > (-1)) : (hi > 0)) ? (-1) : lo) }; this.scala$collection$immutable$Range$$numRangeElements$4 = jsx$1; let jsx$2; switch (step) { case 1: { jsx$2 = (this.isInclusive__Z() ? end : (((-1) + end) | 0)); break } case (-1): { jsx$2 = (this.isInclusive__Z() ? end : ((1 + end) | 0)); break } default: { const t$1 = this.gap__p4__J(); const lo$1 = t$1.lo$2; const hi$2 = t$1.hi$2; const hi$1 = (step >> 31); const this$1 = $m_sjsr_RuntimeLong$(); const lo$2 = this$1.remainderImpl__I__I__I__I__I(lo$1, hi$2, step, hi$1); jsx$2 = ((lo$2 !== 0) ? ((end - lo$2) | 0) : (this.isInclusive__Z() ? end : ((end - step) | 0))) } }; this.scala$collection$immutable$Range$$lastElement$4 = jsx$2; return this }; companion__scg_GenericCompanion() { return $m_sci_IndexedSeq$() }; toString__T() { const preposition = (this.isInclusive__Z() ? "to" : "until"); const stepped = ((this.step$4 === 1) ? "" : (" by " + this.step$4)); const prefix = (this.isEmpty$4 ? "empty " : ((!this.isExact__p4__Z()) ? "inexact " : "")); return (((((((prefix + "Range ") + this.start$4) + " ") + preposition) + " ") + this.end$4) + stepped) }; foreach__F1__V(f) { if ((!this.isEmpty$4)) { let i = this.start$4; while (true) { f.apply__O__O(i); if ((i === this.scala$collection$immutable$Range$$lastElement$4)) { return (void 0) }; i = ((i + this.step$4) | 0) } } }; hasStub__p4__Z() { return (this.isInclusive__Z() || (!this.isExact__p4__Z())) }; copy__I__I__I__sci_Range(start, end, step) { return new $c_sci_Range().init___I__I__I(start, end, step) }; toIndexedSeq__sci_IndexedSeq() { return this }; size__I() { return this.length__I() }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; iterator__sc_Iterator() { return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, this.length__I()) }; takeRight__I__sci_Range(n) { if ((n <= 0)) { const value = this.start$4; return new $c_sci_Range().init___I__I__I(value, value, this.step$4) } else if ((this.scala$collection$immutable$Range$$numRangeElements$4 >= 0)) { return this.drop__I__sci_Range(((this.scala$collection$immutable$Range$$numRangeElements$4 - n) | 0)) } else { const y = this.last__I(); const hi = (y >> 31); const value$1 = this.step$4; const hi$1 = (value$1 >> 31); const value$2 = (((-1) + n) | 0); const hi$2 = (value$2 >> 31); const a0 = (65535 & value$1); const a1 = ((value$1 >>> 16) | 0); const b0 = (65535 & value$2); const b1 = ((value$2 >>> 16) | 0); const a0b0 = $imul(a0, b0); const a1b0 = $imul(a1, b0); const a0b1 = $imul(a0, b1); const lo = ((a0b0 + (((a1b0 + a0b1) | 0) << 16)) | 0); const c1part = ((((a0b0 >>> 16) | 0) + a0b1) | 0); const hi$3 = (((((((($imul(value$1, hi$2) + $imul(hi$1, value$2)) | 0) + $imul(a1, b1)) | 0) + ((c1part >>> 16) | 0)) | 0) + (((((65535 & c1part) + a1b0) | 0) >>> 16) | 0)) | 0); const lo$1 = ((y - lo) | 0); const hi$4 = ((((-2147483648) ^ lo$1) > ((-2147483648) ^ y)) ? (((-1) + ((hi - hi$3) | 0)) | 0) : ((hi - hi$3) | 0)); let jsx$2; if ((this.step$4 > 0)) { const value$3 = this.start$4; const hi$5 = (value$3 >> 31); jsx$2 = ((hi$4 === hi$5) ? (((-2147483648) ^ lo$1) < ((-2147483648) ^ value$3)) : (hi$4 < hi$5)) } else { jsx$2 = false }; let jsx$1; if (jsx$2) { jsx$1 = true } else if ((this.step$4 < 0)) { const value$4 = this.start$4; const hi$6 = (value$4 >> 31); jsx$1 = ((hi$4 === hi$6) ? (((-2147483648) ^ lo$1) > ((-2147483648) ^ value$4)) : (hi$4 > hi$6)) } else { jsx$1 = false }; if (jsx$1) { return this } else { return new $c_sci_Range$Inclusive().init___I__I__I(lo$1, y, this.step$4) } } }; scala$collection$immutable$Range$$validateMaxLength__V() { if ((this.scala$collection$immutable$Range$$numRangeElements$4 < 0)) { $m_sci_Range$().scala$collection$immutable$Range$$fail__I__I__I__Z__sr_Nothing$(this.start$4, this.end$4, this.step$4, this.isInclusive__Z()) } }; length__I() { return ((this.scala$collection$immutable$Range$$numRangeElements$4 < 0) ? $m_sci_Range$().scala$collection$immutable$Range$$fail__I__I__I__Z__sr_Nothing$(this.start$4, this.end$4, this.step$4, this.isInclusive__Z()) : this.scala$collection$immutable$Range$$numRangeElements$4) }; seq__sc_Seq() { return this }; sizeHintIfCheap__I() { return this.length__I() }; drop__I__sci_Range(n) { if (((n <= 0) || this.isEmpty$4)) { return this } else if (((n >= this.scala$collection$immutable$Range$$numRangeElements$4) && (this.scala$collection$immutable$Range$$numRangeElements$4 >= 0))) { const value = this.end$4; return new $c_sci_Range().init___I__I__I(value, value, this.step$4) } else { return this.copy__I__I__I__sci_Range(this.locationAfterN__p4__I__I(n), this.end$4, this.step$4) } }; isExact__p4__Z() { const t = this.gap__p4__J(); const lo = t.lo$2; const hi$1 = t.hi$2; const value = this.step$4; const hi = (value >> 31); const this$1 = $m_sjsr_RuntimeLong$(); const lo$1 = this$1.remainderImpl__I__I__I__I__I(lo, hi$1, value, hi); const hi$2 = this$1.scala$scalajs$runtime$RuntimeLong$$hiReturn$f; return ((lo$1 === 0) && (hi$2 === 0)) }; last__O() { return this.last__I() }; thisCollection__sc_Seq() { return this }; take__I__sci_Range(n) { if (((n <= 0) || this.isEmpty$4)) { const value = this.start$4; return new $c_sci_Range().init___I__I__I(value, value, this.step$4) } else { return (((n >= this.scala$collection$immutable$Range$$numRangeElements$4) && (this.scala$collection$immutable$Range$$numRangeElements$4 >= 0)) ? this : new $c_sci_Range$Inclusive().init___I__I__I(this.start$4, this.locationAfterN__p4__I__I((((-1) + n) | 0)), this.step$4)) } }; last__I() { if (this.isEmpty$4) { const this$1 = $m_sci_Nil$(); return ($f_sc_LinearSeqOptimized__last__O(this$1) | 0) } else { return this.scala$collection$immutable$Range$$lastElement$4 } }; isDefinedAt__O__Z(x) { const idx = (x | 0); return $f_sc_GenSeqLike__isDefinedAt__I__Z(this, idx) }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this) }; takeRight__I__O(n) { return this.takeRight__I__sci_Range(n) }; dropRight__I__O(n) { return this.dropRight__I__sci_Range(n) }; head__I() { return (this.isEmpty$4 ? $m_sci_Nil$().head__sr_Nothing$() : this.start$4) }; gap__p4__J() { const value = this.end$4; const hi = (value >> 31); const value$1 = this.start$4; const hi$1 = (value$1 >> 31); const lo = ((value - value$1) | 0); const hi$2 = ((((-2147483648) ^ lo) > ((-2147483648) ^ value)) ? (((-1) + ((hi - hi$1) | 0)) | 0) : ((hi - hi$1) | 0)); return new $c_sjsr_RuntimeLong().init___I__I(lo, hi$2) }; } const $isArrayOf_sci_Range = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Range))) }); const $d_sci_Range = new $TypeData().initClass({ sci_Range: 0 }, false, "scala.collection.immutable.Range", { sci_Range: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, sci_IndexedSeq: 1, sci_Seq: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Range.prototype.$classData = $d_sci_Range; class $c_sci_Stream extends $c_sc_AbstractSeq { seq__sc_TraversableOnce() { return this }; apply__I__O(n) { return $f_sc_LinearSeqOptimized__apply__I__O(this, n) }; thisCollection__sc_Iterable() { return this }; lengthCompare__I__I(len) { return $f_sc_LinearSeqOptimized__lengthCompare__I__I(this, len) }; apply__O__O(v1) { const n = (v1 | 0); return $f_sc_LinearSeqOptimized__apply__I__O(this, n) }; sameElements__sc_GenIterable__Z(that) { return $f_sc_LinearSeqOptimized__sameElements__sc_GenIterable__Z(this, that) }; flatten__F1__sc_GenTraversable(asTraversable) { return this.flatten__F1__sci_Stream(asTraversable) }; exists__F1__Z(p) { return $f_sc_LinearSeqOptimized__exists__F1__Z(this, p) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; flatMap__F1__scg_CanBuildFrom__O(f, bf) { if ((bf.apply__O__scm_Builder(this) instanceof $c_sci_Stream$StreamBuilder)) { let x$1; if (this.isEmpty__Z()) { x$1 = $m_sci_Stream$Empty$() } else { const nonEmptyPrefix = new $c_sr_ObjectRef().init___O(this); let prefix = f.apply__O__O(nonEmptyPrefix.elem$1.head__O()).toStream__sci_Stream(); while (((!nonEmptyPrefix.elem$1.isEmpty__Z()) && prefix.isEmpty__Z())) { nonEmptyPrefix.elem$1 = nonEmptyPrefix.elem$1.tail__O(); if ((!nonEmptyPrefix.elem$1.isEmpty__Z())) { prefix = f.apply__O__O(nonEmptyPrefix.elem$1.head__O()).toStream__sci_Stream() } }; x$1 = (nonEmptyPrefix.elem$1.isEmpty__Z() ? ($m_sci_Stream$(), $m_sci_Stream$Empty$()) : prefix.append__F0__sci_Stream(new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, nonEmptyPrefix$1, f$1) { return (function() { const x = nonEmptyPrefix$1.elem$1.tail__O().flatMap__F1__scg_CanBuildFrom__O(f$1, $m_sci_Stream$().ReusableCBF$5); return x }) })(this, nonEmptyPrefix, f)))) }; return x$1 } else { return $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this, f, bf) } }; equals__O__Z(that) { return ((this === that) || $f_sc_GenSeqLike__equals__O__Z(this, that)) }; filterImpl__F1__Z__sci_Stream(p, isFlipped) { let rest = this; while (((!rest.isEmpty__Z()) && ((!(!p.apply__O__O(rest.head__O()))) === isFlipped))) { rest = rest.tail__O() }; const this$1 = rest; if ($f_sc_TraversableOnce__nonEmpty__Z(this$1)) { return $m_sci_Stream$().filteredTail__sci_Stream__F1__Z__sci_Stream$Cons(rest, p, isFlipped) } else { return $m_sci_Stream$Empty$() } }; drop__I__sc_LinearSeqOptimized(n) { return this.drop__I__sci_Stream(n) }; mkString__T__T(sep) { return this.mkString__T__T__T__T("", sep, "") }; mkString__T__T__T__T(start, sep, end) { this.force__sci_Stream(); return $f_sc_TraversableOnce__mkString__T__T__T__T(this, start, sep, end) }; withFilter__F1__scg_FilterMonadic(p) { return new $c_sci_Stream$StreamWithFilter().init___F0__F1(new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this) { return (function() { return $this }) })(this)), p) }; companion__scg_GenericCompanion() { return $m_sci_Stream$() }; toString__T() { return $f_sc_TraversableOnce__mkString__T__T__T__T(this, "Stream(", ", ", ")") }; foreach__F1__V(f) { let _$this = this; _foreach: while (true) { if ((!_$this.isEmpty__Z())) { f.apply__O__O(_$this.head__O()); _$this = _$this.tail__O(); continue _foreach }; break } }; foldLeft__O__F2__O(z, op) { let _$this = this; _foldLeft: while (true) { if (_$this.isEmpty__Z()) { return z } else { const temp$_$this = _$this.tail__O(); const temp$z = op.apply__O__O__O(z, _$this.head__O()); _$this = temp$_$this; z = temp$z; continue _foldLeft } } }; advance$1__p4__sci_List__sci_List__sci_Stream__sci_Stream(stub0, stub1, rest) { _advance: while (true) { if (rest.isEmpty__Z()) { $m_sci_Stream$(); return $m_sci_Stream$Empty$() } else if (stub0.isEmpty__Z()) { const temp$stub0 = stub1.reverse__sci_List(); const temp$stub1 = $m_sci_Nil$(); stub0 = temp$stub0; stub1 = temp$stub1; continue _advance } else { const hd = stub0.head__O(); const tl = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, stub0$1, rest$1, stub1$1) { return (function() { const jsx$1 = stub0$1.tail__sci_List(); const x$3 = rest$1.head__O(); return $this.advance$1__p4__sci_List__sci_List__sci_Stream__sci_Stream(jsx$1, new $c_sci_$colon$colon().init___O__sci_List(x$3, stub1$1), rest$1.tail__O()) }) })(this, stub0, rest, stub1)); return new $c_sci_Stream$Cons().init___O__F0(hd, tl) } } }; dropRight__I__sci_Stream(n) { if ((n <= 0)) { return this } else { const this$1 = this.take__I__sci_Stream(n); const this$2 = $m_sci_List$(); const cbf = this$2.ReusableCBFInstance$2; return this.advance$1__p4__sci_List__sci_List__sci_Stream__sci_Stream($f_sc_TraversableLike__to__scg_CanBuildFrom__O(this$1, cbf), $m_sci_Nil$(), this.drop__I__sci_Stream(n)) } }; filterImpl__F1__Z__O(p, isFlipped) { return this.filterImpl__F1__Z__sci_Stream(p, isFlipped) }; iterator__sc_Iterator() { return new $c_sci_StreamIterator().init___sci_Stream(this) }; $$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(that, bf) { if ((bf.apply__O__scm_Builder(this) instanceof $c_sci_Stream$StreamBuilder)) { let x$1; if (this.isEmpty__Z()) { x$1 = that.toStream__sci_Stream() } else { const hd = this.head__O(); const tl = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, that$1) { return (function() { const x = $this.tail__O().$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(that$1, $m_sci_Stream$().ReusableCBF$5); return x }) })(this, that)); x$1 = new $c_sci_Stream$Cons().init___O__F0(hd, tl) }; return x$1 } else { return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf) } }; length__I() { let len = 0; let left = this; while ((!left.isEmpty__Z())) { len = ((1 + len) | 0); left = left.tail__O() }; return len }; mkString__T() { return this.mkString__T__T__T__T("", "", "") }; seq__sc_Seq() { return this }; take__I__O(n) { return this.take__I__sci_Stream(n) }; toStream__sci_Stream() { return this }; last__O() { return $f_sc_LinearSeqOptimized__last__O(this) }; flatten__F1__sci_Stream(asTraversable) { const st = new $c_sr_ObjectRef().init___O(this); while (true) { const this$2 = st.elem$1; if ($f_sc_TraversableOnce__nonEmpty__Z(this$2)) { const h = asTraversable.apply__O__O(st.elem$1.head__O()); if (h.isEmpty__Z()) { st.elem$1 = st.elem$1.tail__O() } else { const x$4 = h.toStream__sci_Stream(); $m_sci_Stream$(); const stream = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, st$1, asTraversable$1) { return (function() { return st$1.elem$1.tail__O().flatten__F1__sci_Stream(asTraversable$1) }) })(this, st, asTraversable)); return new $c_sci_Stream$ConsWrapper().init___F0(stream).$$hash$colon$colon$colon__sci_Stream__sci_Stream(x$4) } } else { break } }; $m_sci_Stream$(); return $m_sci_Stream$Empty$() }; drop__I__sci_Stream(n) { let _$this = this; _drop: while (true) { if (((n <= 0) || _$this.isEmpty__Z())) { return _$this } else { const temp$_$this = _$this.tail__O(); const temp$n = (((-1) + n) | 0); _$this = temp$_$this; n = temp$n; continue _drop } } }; thisCollection__sc_Seq() { return this }; addString__scm_StringBuilder__T__T__T__scm_StringBuilder(b, start, sep, end) { b.append__T__scm_StringBuilder(start); if ((!this.isEmpty__Z())) { b.append__O__scm_StringBuilder(this.head__O()); let cursor = this; let n = 1; if (cursor.tailDefined__Z()) { let scout = this.tail__O(); if (scout.isEmpty__Z()) { b.append__T__scm_StringBuilder(end); return b }; if ((cursor !== scout)) { cursor = scout; if (scout.tailDefined__Z()) { scout = scout.tail__O(); while (((cursor !== scout) && scout.tailDefined__Z())) { b.append__T__scm_StringBuilder(sep).append__O__scm_StringBuilder(cursor.head__O()); n = ((1 + n) | 0); cursor = cursor.tail__O(); scout = scout.tail__O(); if (scout.tailDefined__Z()) { scout = scout.tail__O() } } } }; if ((!scout.tailDefined__Z())) { while ((cursor !== scout)) { b.append__T__scm_StringBuilder(sep).append__O__scm_StringBuilder(cursor.head__O()); n = ((1 + n) | 0); cursor = cursor.tail__O() }; const this$1 = cursor; if ($f_sc_TraversableOnce__nonEmpty__Z(this$1)) { b.append__T__scm_StringBuilder(sep).append__O__scm_StringBuilder(cursor.head__O()) } } else { let runner = this; let k = 0; while ((runner !== scout)) { runner = runner.tail__O(); scout = scout.tail__O(); k = ((1 + k) | 0) }; if (((cursor === scout) && (k > 0))) { b.append__T__scm_StringBuilder(sep).append__O__scm_StringBuilder(cursor.head__O()); n = ((1 + n) | 0); cursor = cursor.tail__O() }; while ((cursor !== scout)) { b.append__T__scm_StringBuilder(sep).append__O__scm_StringBuilder(cursor.head__O()); n = ((1 + n) | 0); cursor = cursor.tail__O() }; n = ((n - k) | 0) } }; if ((!cursor.isEmpty__Z())) { if ((!cursor.tailDefined__Z())) { b.append__T__scm_StringBuilder(sep).append__T__scm_StringBuilder("?") } else { b.append__T__scm_StringBuilder(sep).append__T__scm_StringBuilder("...") } } }; b.append__T__scm_StringBuilder(end); return b }; force__sci_Stream() { let these = this; let those = this; if ((!these.isEmpty__Z())) { these = these.tail__O() }; while ((those !== these)) { if (these.isEmpty__Z()) { return this }; these = these.tail__O(); if (these.isEmpty__Z()) { return this }; these = these.tail__O(); if ((these === those)) { return this }; those = those.tail__O() }; return this }; isDefinedAt__O__Z(x) { const x$1 = (x | 0); return $f_sc_LinearSeqOptimized__isDefinedAt__I__Z(this, x$1) }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this) }; map__F1__scg_CanBuildFrom__O(f, bf) { if ((bf.apply__O__scm_Builder(this) instanceof $c_sci_Stream$StreamBuilder)) { let x$1; if (this.isEmpty__Z()) { x$1 = $m_sci_Stream$Empty$() } else { const hd = f.apply__O__O(this.head__O()); const tl = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, f$1) { return (function() { const x = $this.tail__O().map__F1__scg_CanBuildFrom__O(f$1, $m_sci_Stream$().ReusableCBF$5); return x }) })(this, f)); x$1 = new $c_sci_Stream$Cons().init___O__F0(hd, tl) }; return x$1 } else { return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this, f, bf) } }; takeRight__I__O(n) { return this.takeRight__I__sci_Stream(n) }; dropRight__I__O(n) { return this.dropRight__I__sci_Stream(n) }; take__I__sci_Stream(n) { if (((n <= 0) || this.isEmpty__Z())) { $m_sci_Stream$(); return $m_sci_Stream$Empty$() } else if ((n === 1)) { const hd = this.head__O(); const tl = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this) { return (function() { $m_sci_Stream$(); return $m_sci_Stream$Empty$() }) })(this)); return new $c_sci_Stream$Cons().init___O__F0(hd, tl) } else { const hd$1 = this.head__O(); const tl$1 = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function(this$2$1, n$1) { return (function() { return this$2$1.tail__O().take__I__sci_Stream((((-1) + n$1) | 0)) }) })(this, n)); return new $c_sci_Stream$Cons().init___O__F0(hd$1, tl$1) } }; takeRight__I__sci_Stream(n) { let these = this; let lead = this.drop__I__sci_Stream(n); while ((!lead.isEmpty__Z())) { these = these.tail__O(); lead = lead.tail__O() }; return these }; collect__s_PartialFunction__scg_CanBuildFrom__O(pf, bf) { if ((!(bf.apply__O__scm_Builder(this) instanceof $c_sci_Stream$StreamBuilder))) { return $f_sc_TraversableLike__collect__s_PartialFunction__scg_CanBuildFrom__O(this, pf, bf) } else { let rest = this; const newHead = new $c_sr_ObjectRef().init___O(null); const runWith = pf.runWith__F1__F1(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, newHead$1) { return (function(b$2) { newHead$1.elem$1 = b$2 }) })(this, newHead))); while (true) { const this$2 = rest; if (($f_sc_TraversableOnce__nonEmpty__Z(this$2) && (!(!(!runWith.apply__O__O(rest.head__O())))))) { rest = rest.tail__O() } else { break } }; return (rest.isEmpty__Z() ? $m_sci_Stream$Empty$() : $m_sci_Stream$().collectedTail__O__sci_Stream__s_PartialFunction__scg_CanBuildFrom__sci_Stream$Cons(newHead.elem$1, rest, pf, bf)) } }; reduceLeft__F2__O(f) { if (this.isEmpty__Z()) { throw new $c_jl_UnsupportedOperationException().init___T("empty.reduceLeft") } else { let reducedRes = this.head__O(); let left = this.tail__O(); while ((!left.isEmpty__Z())) { reducedRes = f.apply__O__O__O(reducedRes, left.head__O()); left = left.tail__O() }; return reducedRes } }; append__F0__sci_Stream(rest) { if (this.isEmpty__Z()) { return rest.apply__O().toStream__sci_Stream() } else { const hd = this.head__O(); const tl = new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this, rest$1) { return (function() { return $this.tail__O().append__F0__sci_Stream(rest$1) }) })(this, rest)); return new $c_sci_Stream$Cons().init___O__F0(hd, tl) } }; stringPrefix__T() { return "Stream" }; } const $isArrayOf_sci_Stream = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Stream))) }); const $is_scm_Buffer = (function(obj) { return (!(!((obj && obj.$classData) && obj.$classData.ancestors.scm_Buffer))) }); const $isArrayOf_scm_Buffer = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_Buffer))) }); const $f_scm_ResizableArray__apply__I__O = (function($thiz, idx) { if ((idx >= $thiz.size0$6)) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + idx)) }; return $thiz.array$6.u[idx] }); const $f_scm_ResizableArray__foreach__F1__V = (function($thiz, f) { let i = 0; const top = $thiz.size0$6; while ((i < top)) { f.apply__O__O($thiz.array$6.u[i]); i = ((1 + i) | 0) } }); const $f_scm_ResizableArray__ensureSize__I__V = (function($thiz, n) { const value = $thiz.array$6.u.length; const hi = (value >> 31); const hi$1 = (n >> 31); if (((hi$1 === hi) ? (((-2147483648) ^ n) > ((-2147483648) ^ value)) : (hi$1 > hi))) { const lo = (value << 1); const hi$2 = (((value >>> 31) | 0) | (hi << 1)); let newSize_$_lo$2 = lo; let newSize_$_hi$2 = hi$2; while (true) { const hi$3 = (n >> 31); const b_$_lo$2 = newSize_$_lo$2; const b_$_hi$2 = newSize_$_hi$2; const bhi = b_$_hi$2; if (((hi$3 === bhi) ? (((-2147483648) ^ n) > ((-2147483648) ^ b_$_lo$2)) : (hi$3 > bhi))) { const this$1_$_lo$2 = newSize_$_lo$2; const this$1_$_hi$2 = newSize_$_hi$2; const lo$1 = (this$1_$_lo$2 << 1); const hi$4 = (((this$1_$_lo$2 >>> 31) | 0) | (this$1_$_hi$2 << 1)); const jsx$1_$_lo$2 = lo$1; const jsx$1_$_hi$2 = hi$4; newSize_$_lo$2 = jsx$1_$_lo$2; newSize_$_hi$2 = jsx$1_$_hi$2 } else { break } }; const this$2_$_lo$2 = newSize_$_lo$2; const this$2_$_hi$2 = newSize_$_hi$2; const ahi = this$2_$_hi$2; if (((ahi === 0) ? (((-2147483648) ^ this$2_$_lo$2) > (-1)) : (ahi > 0))) { const jsx$2_$_lo$2 = 2147483647; const jsx$2_$_hi$2 = 0; newSize_$_lo$2 = jsx$2_$_lo$2; newSize_$_hi$2 = jsx$2_$_hi$2 }; const this$3_$_lo$2 = newSize_$_lo$2; const this$3_$_hi$2 = newSize_$_hi$2; const newArray = $newArrayObject($d_O.getArrayOf(), [this$3_$_lo$2]); $systemArraycopy($thiz.array$6, 0, newArray, 0, $thiz.size0$6); $thiz.array$6 = newArray } }); const $f_scm_ResizableArray__$$init$__V = (function($thiz) { const x = $thiz.initialSize$6; $thiz.array$6 = $newArrayObject($d_O.getArrayOf(), [((x > 1) ? x : 1)]); $thiz.size0$6 = 0 }); const $f_scm_ResizableArray__reduceToSize__I__V = (function($thiz, sz) { $m_s_Predef$().require__Z__V((sz <= $thiz.size0$6)); while (($thiz.size0$6 > sz)) { $thiz.size0$6 = (((-1) + $thiz.size0$6) | 0); $thiz.array$6.u[$thiz.size0$6] = null } }); const $f_scm_ResizableArray__copyToArray__O__I__I__V = (function($thiz, xs, start, len) { const that = (($m_sr_ScalaRunTime$().array$undlength__O__I(xs) - start) | 0); const x = ((len < that) ? len : that); const that$1 = $thiz.size0$6; const len1 = ((x < that$1) ? x : that$1); if ((len1 > 0)) { $m_s_Array$().copy__O__I__O__I__I__V($thiz.array$6, 0, xs, start, len1) } }); class $c_sci_HashMap extends $c_sci_AbstractMap { seq__sc_TraversableOnce() { return this }; computeHash__O__I(key) { return this.improve__I__I($m_sr_Statics$().anyHash__O__I(key)) }; init___() { return this }; filter__F1__sci_HashMap(p) { $m_sci_HashMap$(); const size = this.size__I(); const x = ((6 + size) | 0); const buffer = $newArrayObject($d_sci_HashMap.getArrayOf(), [((x < 224) ? x : 224)]); $m_sci_HashMap$(); const m = this.filter0__F1__Z__I__Asci_HashMap__I__sci_HashMap(p, false, 0, buffer, 0); return ((m === null) ? $m_sci_HashMap$EmptyHashMap$() : m) }; merged__sci_HashMap__F2__sci_HashMap(that, mergef) { return this.merge0__sci_HashMap__I__sci_HashMap$Merger__sci_HashMap(that, 0, $m_sci_HashMap$().scala$collection$immutable$HashMap$$liftMerger__F2__sci_HashMap$Merger(mergef)) }; thisCollection__sc_Traversable() { return this }; updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(key, hash, level, value, kv, merger) { return new $c_sci_HashMap$HashMap1().init___O__I__O__T2(key, hash, value, kv) }; get0__O__I__I__s_Option(key, hash, level) { return $m_s_None$() }; $$plus__T2__sci_Map(kv) { return this.$$plus__T2__sci_HashMap(kv) }; foreach__F1__V(f) { /**/ }; $$plus__T2__sci_HashMap(kv) { return this.updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(kv.$$und1__O(), this.computeHash__O__I(kv.$$und1__O()), 0, kv.$$und2__O(), kv, null) }; filterNot__F1__sci_HashMap(p) { $m_sci_HashMap$(); const size = this.size__I(); const x = ((6 + size) | 0); const buffer = $newArrayObject($d_sci_HashMap.getArrayOf(), [((x < 224) ? x : 224)]); $m_sci_HashMap$(); const m = this.filter0__F1__Z__I__Asci_HashMap__I__sci_HashMap(p, true, 0, buffer, 0); return ((m === null) ? $m_sci_HashMap$EmptyHashMap$() : m) }; merge0__sci_HashMap__I__sci_HashMap$Merger__sci_HashMap(that, level, merger) { return that }; updated__O__O__sci_HashMap(key, value) { return this.updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(key, this.computeHash__O__I(key), 0, value, null, null) }; $$minus__O__sc_Map(key) { return this.$$minus__O__sci_HashMap(key) }; empty__sc_Map() { $m_sci_HashMap$(); return $m_sci_HashMap$EmptyHashMap$() }; removed0__O__I__I__sci_HashMap(key, hash, level) { return this }; filter0__F1__Z__I__Asci_HashMap__I__sci_HashMap(p, negate, level, buffer, offset0) { return null }; $$minus__O__sci_HashMap(key) { return this.removed0__O__I__I__sci_HashMap(key, this.computeHash__O__I(key), 0) }; filter__F1__O(p) { return this.filter__F1__sci_HashMap(p) }; empty__sci_Map() { $m_sci_HashMap$(); return $m_sci_HashMap$EmptyHashMap$() }; foreachEntry__F2__V(f) { /**/ }; size__I() { return 0 }; $$plus$plus__sc_GenTraversableOnce__sci_Map(xs) { const this$1 = $m_sci_HashMap$(); return this.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(xs, this$1.ReusableCBF$4) }; seq__sc_Map() { return this }; values__sc_Iterable() { return new $c_sci_HashMap$HashMapValues().init___sci_HashMap(this) }; iterator__sc_Iterator() { return $m_sc_Iterator$().empty$1 }; $$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(that, bf) { if (this.isCompatibleCBF__p5__scg_CanBuildFrom__Z(bf)) { if ((this === that)) { return that } else if (that.isEmpty__Z()) { return this } else if ((that instanceof $c_sci_HashMap)) { const x2 = that; return x2.merged__sci_HashMap__F2__sci_HashMap(this, null) } else { const result = new $c_sr_ObjectRef().init___O(this); that.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, result$1) { return (function(x0$1$2) { if ((x0$1$2 instanceof $c_T2)) { const x2$1 = x0$1$2; result$1.elem$1 = result$1.elem$1.$$plus__T2__sci_HashMap(x2$1) } else { throw new $c_s_MatchError().init___O(x0$1$2) } }) })(this, result))); return result.elem$1 } } else { return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf) } }; improve__I__I(hcode) { let h = ((hcode + (~(hcode << 9))) | 0); h = (h ^ ((h >>> 14) | 0)); h = ((h + (h << 4)) | 0); return (h ^ ((h >>> 10) | 0)) }; get__O__s_Option(key) { return this.get0__O__I__I__s_Option(key, this.computeHash__O__I(key), 0) }; contains0__O__I__I__Z(key, hash, level) { return false }; contains__O__Z(key) { return this.contains0__O__I__I__Z(key, this.computeHash__O__I(key), 0) }; filterNot__F1__sc_Map(p) { return this.filterNot__F1__sci_HashMap(p) }; hashCode__I() { if ($f_sc_MapLike__isEmpty__Z(this)) { return $m_s_util_hashing_MurmurHash3$().emptyMapHash$2 } else { const hasher = new $c_sci_Map$HashCodeAccumulator().init___(); this.foreachEntry__F2__V(hasher); return hasher.finalizeHash__I() } }; isCompatibleCBF__p5__scg_CanBuildFrom__Z(cbf) { _isCompatibleCBF: while (true) { const x1 = cbf; if ((x1 instanceof $c_sc_package$WrappedCanBuildFrom)) { const x2 = x1; cbf = x2.wrapped__scg_CanBuildFrom(); continue _isCompatibleCBF } else { const jsx$1 = cbf; const this$1 = $m_sci_HashMap$(); if ((jsx$1 === this$1.ReusableCBF$4)) { return true } else { return (cbf === $m_sci_Map$().ReusableCBF$4) } } } }; $$plus__T2__sc_GenMap(kv) { return this.$$plus__T2__sci_HashMap(kv) }; keySet__sci_Set() { return new $c_sci_HashMap$HashMapKeys().init___sci_HashMap(this) }; } const $isArrayOf_sci_HashMap = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_HashMap))) }); const $d_sci_HashMap = new $TypeData().initClass({ sci_HashMap: 0 }, false, "scala.collection.immutable.HashMap", { sci_HashMap: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sc_CustomParallelizable: 1, sci_HasForeachEntry: 1 }); $c_sci_HashMap.prototype.$classData = $d_sci_HashMap; class $c_sci_List extends $c_sc_AbstractSeq { seq__sc_TraversableOnce() { return this }; takeRight__I__sci_List(n) { return this.loop$2__p4__sci_List__sci_List__sci_List(this.drop__I__sci_List(n), this) }; apply__I__O(n) { return $f_sc_LinearSeqOptimized__apply__I__O(this, n) }; thisCollection__sc_Iterable() { return this }; lengthCompare__I__I(len) { return $f_sc_LinearSeqOptimized__lengthCompare__I__I(this, len) }; sameElements__sc_GenIterable__Z(that) { return $f_sc_LinearSeqOptimized__sameElements__sc_GenIterable__Z(this, that) }; apply__O__O(v1) { const n = (v1 | 0); return $f_sc_LinearSeqOptimized__apply__I__O(this, n) }; exists__F1__Z(p) { return $f_sc_LinearSeqOptimized__exists__F1__Z(this, p) }; toList__sci_List() { return this }; seq__sc_Iterable() { return this }; loop$2__p4__sci_List__sci_List__sci_List(lead, lag) { _loop: while (true) { const x1 = lead; const x$2 = $m_sci_Nil$(); if (x$2.equals__O__Z(x1)) { return lag } else if ((x1 instanceof $c_sci_$colon$colon)) { const x2 = x1; const tail = x2.tl$5; const this$1 = lag; const temp$lag = this$1.tail__sci_List(); lead = tail; lag = temp$lag; continue _loop } else { throw new $c_s_MatchError().init___O(x1) } } }; thisCollection__sc_Traversable() { return this }; flatMap__F1__scg_CanBuildFrom__O(f, bf) { if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this === $m_sci_Nil$())) { return $m_sci_Nil$() } else { let rest = this; const found = new $c_sr_BooleanRef().init___Z(false); const h = new $c_sr_ObjectRef().init___O(null); const t = new $c_sr_ObjectRef().init___O(null); while ((rest !== $m_sci_Nil$())) { f.apply__O__O(rest.head__O()).seq__sc_TraversableOnce().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, found$1, h$1, t$1) { return (function(b$2) { if ((!found$1.elem$1)) { h$1.elem$1 = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$()); t$1.elem$1 = h$1.elem$1; found$1.elem$1 = true } else { const nx = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$()); t$1.elem$1.tl$5 = nx; t$1.elem$1 = nx } }) })(this, found, h, t))); const this$4 = rest; rest = this$4.tail__sci_List() }; return ((!found.elem$1) ? $m_sci_Nil$() : h.elem$1) } } else { return $f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this, f, bf) } }; drop__I__sc_LinearSeqOptimized(n) { return this.drop__I__sci_List(n) }; take__I__sci_List(n) { if ((this.isEmpty__Z() || (n <= 0))) { return $m_sci_Nil$() } else { const h = new $c_sci_$colon$colon().init___O__sci_List(this.head__O(), $m_sci_Nil$()); let t = h; let rest = this.tail__sci_List(); let i = 1; while (true) { if (rest.isEmpty__Z()) { return this }; if ((i < n)) { i = ((1 + i) | 0); const nx = new $c_sci_$colon$colon().init___O__sci_List(rest.head__O(), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$1 = rest; rest = this$1.tail__sci_List() } else { break } }; return h } }; companion__scg_GenericCompanion() { return $m_sci_List$() }; foreach__F1__V(f) { let these = this; while ((!these.isEmpty__Z())) { f.apply__O__O(these.head__O()); const this$1 = these; these = this$1.tail__sci_List() } }; foldLeft__O__F2__O(z, op) { return $f_sc_LinearSeqOptimized__foldLeft__O__F2__O(this, z, op) }; $$colon$colon$colon__sci_List__sci_List(prefix) { return (this.isEmpty__Z() ? prefix : (prefix.isEmpty__Z() ? this : new $c_scm_ListBuffer().init___().$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(prefix).prependToList__sci_List__sci_List(this))) }; slice__I__I__sci_List(from, until) { const lo = ((from > 0) ? from : 0); return (((until <= lo) || this.isEmpty__Z()) ? $m_sci_Nil$() : this.drop__I__sci_List(lo).take__I__sci_List(((until - lo) | 0))) }; drop__I__sci_List(n) { let these = this; let count = n; while (((!these.isEmpty__Z()) && (count > 0))) { const this$1 = these; these = this$1.tail__sci_List(); count = (((-1) + count) | 0) }; return these }; iterator__sc_Iterator() { return new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this) }; $$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(that, bf) { return ((bf === $m_sci_List$().ReusableCBFInstance$2) ? that.seq__sc_TraversableOnce().toList__sci_List().$$colon$colon$colon__sci_List__sci_List(this) : $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf)) }; length__I() { return $f_sc_LinearSeqOptimized__length__I(this) }; seq__sc_Seq() { return this }; take__I__O(n) { return this.take__I__sci_List(n) }; toStream__sci_Stream() { return (this.isEmpty__Z() ? $m_sci_Stream$Empty$() : new $c_sci_Stream$Cons().init___O__F0(this.head__O(), new $c_sjsr_AnonFunction0().init___sjs_js_Function0((function($this) { return (function() { return $this.tail__sci_List().toStream__sci_Stream() }) })(this)))) }; last__O() { return $f_sc_LinearSeqOptimized__last__O(this) }; thisCollection__sc_Seq() { return this }; isDefinedAt__O__Z(x) { const x$1 = (x | 0); return $f_sc_LinearSeqOptimized__isDefinedAt__I__Z(this, x$1) }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this) }; map__F1__scg_CanBuildFrom__O(f, bf) { if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this === $m_sci_Nil$())) { return $m_sci_Nil$() } else { const h = new $c_sci_$colon$colon().init___O__sci_List(f.apply__O__O(this.head__O()), $m_sci_Nil$()); let t = h; let rest = this.tail__sci_List(); while ((rest !== $m_sci_Nil$())) { const nx = new $c_sci_$colon$colon().init___O__sci_List(f.apply__O__O(rest.head__O()), $m_sci_Nil$()); t.tl$5 = nx; t = nx; const this$1 = rest; rest = this$1.tail__sci_List() }; return h } } else { return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this, f, bf) } }; dropRight__I__O(n) { return $f_sc_LinearSeqOptimized__dropRight__I__sc_LinearSeqOptimized(this, n) }; takeRight__I__O(n) { return this.takeRight__I__sci_List(n) }; collect__s_PartialFunction__scg_CanBuildFrom__O(pf, bf) { if ((bf === $m_sci_List$().ReusableCBFInstance$2)) { if ((this === $m_sci_Nil$())) { return $m_sci_Nil$() } else { let rest = this; let h = null; do { const x = pf.applyOrElse__O__F1__O(rest.head__O(), $m_sci_List$().partialNotApplied$5); if ((x !== $m_sci_List$().partialNotApplied$5)) { h = new $c_sci_$colon$colon().init___O__sci_List(x, $m_sci_Nil$()) }; const this$1 = rest; rest = this$1.tail__sci_List(); if ((rest === $m_sci_Nil$())) { return ((h === null) ? $m_sci_Nil$() : h) } } while ((h === null)); let t = h; do { const x$2 = pf.applyOrElse__O__F1__O(rest.head__O(), $m_sci_List$().partialNotApplied$5); if ((x$2 !== $m_sci_List$().partialNotApplied$5)) { const nx = new $c_sci_$colon$colon().init___O__sci_List(x$2, $m_sci_Nil$()); t.tl$5 = nx; t = nx }; const this$2 = rest; rest = this$2.tail__sci_List() } while ((rest !== $m_sci_Nil$())); return h } } else { return $f_sc_TraversableLike__collect__s_PartialFunction__scg_CanBuildFrom__O(this, pf, bf) } }; reduceLeft__F2__O(op) { return $f_sc_LinearSeqOptimized__reduceLeft__F2__O(this, op) }; reverse__sci_List() { let result = $m_sci_Nil$(); let these = this; while ((!these.isEmpty__Z())) { const x$4 = these.head__O(); const this$1 = result; result = new $c_sci_$colon$colon().init___O__sci_List(x$4, this$1); const this$2 = these; these = this$2.tail__sci_List() }; return result }; stringPrefix__T() { return "List" }; } const $isArrayOf_sci_List = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_List))) }); class $c_sci_ListMap$EmptyListMap$ extends $c_sci_ListMap { init___() { return this }; } const $d_sci_ListMap$EmptyListMap$ = new $TypeData().initClass({ sci_ListMap$EmptyListMap$: 0 }, false, "scala.collection.immutable.ListMap$EmptyListMap$", { sci_ListMap$EmptyListMap$: 1, sci_ListMap: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sci_HasForeachEntry: 1 }); $c_sci_ListMap$EmptyListMap$.prototype.$classData = $d_sci_ListMap$EmptyListMap$; let $n_sci_ListMap$EmptyListMap$ = (void 0); const $m_sci_ListMap$EmptyListMap$ = (function() { if ((!$n_sci_ListMap$EmptyListMap$)) { $n_sci_ListMap$EmptyListMap$ = new $c_sci_ListMap$EmptyListMap$().init___() }; return $n_sci_ListMap$EmptyListMap$ }); class $c_sci_ListMap$Node extends $c_sci_ListMap { constructor() { super(); this.key$6 = null; this.value$6 = null; this.$$outer$6 = null }; removeInternal__p6__O__sci_ListMap__sci_List__sci_ListMap(k, cur, acc) { _removeInternal: while (true) { if (cur.isEmpty__Z()) { const this$1 = acc; return $f_sc_LinearSeqOptimized__last__O(this$1) } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(k, cur.key__O())) { const x$5 = cur.next__sci_ListMap(); const this$2 = acc; let acc$1 = x$5; let these = this$2; while ((!these.isEmpty__Z())) { const arg1 = acc$1; const arg2 = these.head__O(); const x0$1 = arg1; const x1$1 = arg2; acc$1 = new $c_sci_ListMap$Node().init___sci_ListMap__O__O(x0$1, x1$1.key__O(), x1$1.value__O()); these = these.tail__O() }; return acc$1 } else { const temp$cur = cur.next__sci_ListMap(); const x$6 = cur; const this$3 = acc; const temp$acc = new $c_sci_$colon$colon().init___O__sci_List(x$6, this$3); cur = temp$cur; acc = temp$acc; continue _removeInternal } } }; apply__O__O(k) { return this.applyInternal__p6__sci_ListMap__O__O(this, k) }; value__O() { return this.value$6 }; isEmpty__Z() { return false }; applyInternal__p6__sci_ListMap__O__O(cur, k) { _applyInternal: while (true) { if (cur.isEmpty__Z()) { throw new $c_ju_NoSuchElementException().init___T(("key not found: " + k)) } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(k, cur.key__O())) { return cur.value__O() } else { cur = cur.next__sci_ListMap(); continue _applyInternal } } }; getInternal__p6__sci_ListMap__O__s_Option(cur, k) { _getInternal: while (true) { if (cur.isEmpty__Z()) { return $m_s_None$() } else if ($m_sr_BoxesRunTime$().equals__O__O__Z(k, cur.key__O())) { return new $c_s_Some().init___O(cur.value__O()) } else { cur = cur.next__sci_ListMap(); continue _getInternal } } }; sizeInternal__p6__sci_ListMap__I__I(cur, acc) { _sizeInternal: while (true) { if (cur.isEmpty__Z()) { return acc } else { const temp$cur = cur.next__sci_ListMap(); const temp$acc = ((1 + acc) | 0); cur = temp$cur; acc = temp$acc; continue _sizeInternal } } }; $$plus__T2__sci_Map(kv) { return this.$$plus__T2__sci_ListMap(kv) }; $$minus__O__sc_Map(key) { return this.removeInternal__p6__O__sci_ListMap__sci_List__sci_ListMap(key, this, $m_sci_Nil$()) }; size__I() { return this.sizeInternal__p6__sci_ListMap__I__I(this, 0) }; key__O() { return this.key$6 }; $$plus__T2__sci_ListMap(kv) { const k = kv.$$und1__O(); const m = this.removeInternal__p6__O__sci_ListMap__sci_List__sci_ListMap(k, this, $m_sci_Nil$()); return new $c_sci_ListMap$Node().init___sci_ListMap__O__O(m, kv.$$und1__O(), kv.$$und2__O()) }; updated__O__O__sci_ListMap(k, v) { const m = this.removeInternal__p6__O__sci_ListMap__sci_List__sci_ListMap(k, this, $m_sci_Nil$()); return new $c_sci_ListMap$Node().init___sci_ListMap__O__O(m, k, v) }; $$minus__O__sci_ListMap(k) { return this.removeInternal__p6__O__sci_ListMap__sci_List__sci_ListMap(k, this, $m_sci_Nil$()) }; get__O__s_Option(k) { return this.getInternal__p6__sci_ListMap__O__s_Option(this, k) }; init___sci_ListMap__O__O($$outer, key, value) { this.key$6 = key; this.value$6 = value; if (($$outer === null)) { throw $m_sjsr_package$().unwrapJavaScriptException__jl_Throwable__O(null) } else { this.$$outer$6 = $$outer }; return this }; contains__O__Z(k) { return this.containsInternal__p6__sci_ListMap__O__Z(this, k) }; containsInternal__p6__sci_ListMap__O__Z(cur, k) { _containsInternal: while (true) { if ((!cur.isEmpty__Z())) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(k, cur.key__O())) { return true } else { cur = cur.next__sci_ListMap(); continue _containsInternal } } else { return false } } }; next__sci_ListMap() { return this.$$outer$6 }; $$plus__T2__sc_GenMap(kv) { return this.$$plus__T2__sci_ListMap(kv) }; } const $d_sci_ListMap$Node = new $TypeData().initClass({ sci_ListMap$Node: 0 }, false, "scala.collection.immutable.ListMap$Node", { sci_ListMap$Node: 1, sci_ListMap: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sci_HasForeachEntry: 1 }); $c_sci_ListMap$Node.prototype.$classData = $d_sci_ListMap$Node; class $c_sci_Range$Inclusive extends $c_sci_Range { isInclusive__Z() { return true }; init___I__I__I(start, end, step) { $c_sci_Range.prototype.init___I__I__I.call(this, start, end, step); return this }; copy__I__I__I__sci_Range(start, end, step) { return new $c_sci_Range$Inclusive().init___I__I__I(start, end, step) }; } const $d_sci_Range$Inclusive = new $TypeData().initClass({ sci_Range$Inclusive: 0 }, false, "scala.collection.immutable.Range$Inclusive", { sci_Range$Inclusive: 1, sci_Range: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, sci_IndexedSeq: 1, sci_Seq: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Range$Inclusive.prototype.$classData = $d_sci_Range$Inclusive; class $c_sci_Stream$Cons extends $c_sci_Stream { constructor() { super(); this.hd$5 = null; this.tlVal$5 = null; this.tlGen$5 = null }; head__O() { return this.hd$5 }; tail__sci_Stream() { if ((!this.tailDefined__Z())) { if ((!this.tailDefined__Z())) { this.tlVal$5 = this.tlGen$5.apply__O(); this.tlGen$5 = null } }; return this.tlVal$5 }; sameElements__sc_GenIterable__Z(that) { if ((that instanceof $c_sci_Stream$Cons)) { const x2 = that; return this.consEq$1__p5__sci_Stream$Cons__sci_Stream$Cons__Z(this, x2) } else { return $f_sc_LinearSeqOptimized__sameElements__sc_GenIterable__Z(this, that) } }; tailDefined__Z() { return (this.tlGen$5 === null) }; isEmpty__Z() { return false }; consEq$1__p5__sci_Stream$Cons__sci_Stream$Cons__Z(a, b) { _consEq: while (true) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(a.hd$5, b.hd$5)) { const x1 = a.tail__sci_Stream(); if ((x1 instanceof $c_sci_Stream$Cons)) { const x2 = x1; const x1$2 = b.tail__sci_Stream(); if ((x1$2 instanceof $c_sci_Stream$Cons)) { const x2$2 = x1$2; if ((x2 === x2$2)) { return true } else { a = x2; b = x2$2; continue _consEq } } else { return false } } else { return b.tail__sci_Stream().isEmpty__Z() } } else { return false } } }; tail__O() { return this.tail__sci_Stream() }; init___O__F0(hd, tl) { this.hd$5 = hd; this.tlGen$5 = tl; return this }; } const $isArrayOf_sci_Stream$Cons = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Stream$Cons))) }); const $d_sci_Stream$Cons = new $TypeData().initClass({ sci_Stream$Cons: 0 }, false, "scala.collection.immutable.Stream$Cons", { sci_Stream$Cons: 1, sci_Stream: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, sci_LinearSeq: 1, sci_Seq: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_LinearSeq: 1, sc_LinearSeqLike: 1, sc_LinearSeqOptimized: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Stream$Cons.prototype.$classData = $d_sci_Stream$Cons; class $c_sci_Stream$Empty$ extends $c_sci_Stream { init___() { return this }; head__O() { this.head__sr_Nothing$() }; tailDefined__Z() { return false }; isEmpty__Z() { return true }; tail__sr_Nothing$() { throw new $c_jl_UnsupportedOperationException().init___T("tail of empty stream") }; head__sr_Nothing$() { throw new $c_ju_NoSuchElementException().init___T("head of empty stream") }; tail__O() { this.tail__sr_Nothing$() }; } const $d_sci_Stream$Empty$ = new $TypeData().initClass({ sci_Stream$Empty$: 0 }, false, "scala.collection.immutable.Stream$Empty$", { sci_Stream$Empty$: 1, sci_Stream: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, sci_LinearSeq: 1, sci_Seq: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_LinearSeq: 1, sc_LinearSeqLike: 1, sc_LinearSeqOptimized: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Stream$Empty$.prototype.$classData = $d_sci_Stream$Empty$; let $n_sci_Stream$Empty$ = (void 0); const $m_sci_Stream$Empty$ = (function() { if ((!$n_sci_Stream$Empty$)) { $n_sci_Stream$Empty$ = new $c_sci_Stream$Empty$().init___() }; return $n_sci_Stream$Empty$ }); class $c_sci_Vector extends $c_sc_AbstractSeq { constructor() { super(); this.startIndex$4 = 0; this.endIndex$4 = 0; this.focus$4 = 0; this.dirty$4 = false; this.depth$4 = 0; this.display0$4 = null; this.display1$4 = null; this.display2$4 = null; this.display3$4 = null; this.display4$4 = null; this.display5$4 = null }; checkRangeConvert__p4__I__I(index) { const idx = ((index + this.startIndex$4) | 0); if (((index >= 0) && (idx < this.endIndex$4))) { return idx } else { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + index)) } }; seq__sc_TraversableOnce() { return this }; display3__AO() { return this.display3$4 }; gotoPosWritable__p4__I__I__I__V(oldIndex, newIndex, xor) { if (this.dirty$4) { $f_sci_VectorPointer__gotoPosWritable1__I__I__I__V(this, oldIndex, newIndex, xor) } else { $f_sci_VectorPointer__gotoPosWritable0__I__I__V(this, newIndex, xor); this.dirty$4 = true } }; head__O() { if ($f_sc_SeqLike__isEmpty__Z(this)) { throw new $c_jl_UnsupportedOperationException().init___T("empty.head") }; return this.apply__I__O(0) }; takeRight__I__sci_Vector(n) { if ((n <= 0)) { const this$1 = $m_sci_Vector$(); return this$1.NIL$6 } else { return ((((this.endIndex$4 - n) | 0) > this.startIndex$4) ? this.dropFront0__p4__I__sci_Vector(((this.endIndex$4 - n) | 0)) : this) } }; apply__I__O(index) { const idx = this.checkRangeConvert__p4__I__I(index); const xor = (idx ^ this.focus$4); return $f_sci_VectorPointer__getElem__I__I__O(this, idx, xor) }; thisCollection__sc_Iterable() { return this }; lengthCompare__I__I(len) { return ((this.length__I() - len) | 0) }; depth__I() { return this.depth$4 }; apply__O__O(v1) { return this.apply__I__O((v1 | 0)) }; initIterator__sci_VectorIterator__V(s) { const depth = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s, this, depth); if (this.dirty$4) { const index = this.focus$4; $f_sci_VectorPointer__stabilize__I__V(s, index) }; if ((s.depth$2 > 1)) { const index$1 = this.startIndex$4; const xor = (this.startIndex$4 ^ this.focus$4); $f_sci_VectorPointer__gotoPos__I__I__V(s, index$1, xor) } }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; init___I__I__I(startIndex, endIndex, focus) { this.startIndex$4 = startIndex; this.endIndex$4 = endIndex; this.focus$4 = focus; this.dirty$4 = false; return this }; display5$und$eq__AO__V(x$1) { this.display5$4 = x$1 }; $$colon$plus__O__scg_CanBuildFrom__O(elem, bf) { return ((((bf === ($m_sci_IndexedSeq$(), $m_sc_IndexedSeq$().ReusableCBF$6)) || (bf === $m_sci_Seq$().ReusableCBFInstance$2)) || (bf === $m_sc_Seq$().ReusableCBFInstance$2)) ? this.appendBack__O__sci_Vector(elem) : $f_sc_SeqLike__$$colon$plus__O__scg_CanBuildFrom__O(this, elem, bf)) }; companion__scg_GenericCompanion() { return $m_sci_Vector$() }; cleanLeftEdge__p4__I__V(cutIndex) { if ((cutIndex < 32)) { this.zeroLeft__p4__AO__I__V(this.display0$4, cutIndex) } else if ((cutIndex < 1024)) { this.zeroLeft__p4__AO__I__V(this.display0$4, (31 & cutIndex)); this.display1$4 = this.copyRight__p4__AO__I__AO(this.display1$4, ((cutIndex >>> 5) | 0)) } else if ((cutIndex < 32768)) { this.zeroLeft__p4__AO__I__V(this.display0$4, (31 & cutIndex)); this.display1$4 = this.copyRight__p4__AO__I__AO(this.display1$4, (31 & ((cutIndex >>> 5) | 0))); this.display2$4 = this.copyRight__p4__AO__I__AO(this.display2$4, ((cutIndex >>> 10) | 0)) } else if ((cutIndex < 1048576)) { this.zeroLeft__p4__AO__I__V(this.display0$4, (31 & cutIndex)); this.display1$4 = this.copyRight__p4__AO__I__AO(this.display1$4, (31 & ((cutIndex >>> 5) | 0))); this.display2$4 = this.copyRight__p4__AO__I__AO(this.display2$4, (31 & ((cutIndex >>> 10) | 0))); this.display3$4 = this.copyRight__p4__AO__I__AO(this.display3$4, ((cutIndex >>> 15) | 0)) } else if ((cutIndex < 33554432)) { this.zeroLeft__p4__AO__I__V(this.display0$4, (31 & cutIndex)); this.display1$4 = this.copyRight__p4__AO__I__AO(this.display1$4, (31 & ((cutIndex >>> 5) | 0))); this.display2$4 = this.copyRight__p4__AO__I__AO(this.display2$4, (31 & ((cutIndex >>> 10) | 0))); this.display3$4 = this.copyRight__p4__AO__I__AO(this.display3$4, (31 & ((cutIndex >>> 15) | 0))); this.display4$4 = this.copyRight__p4__AO__I__AO(this.display4$4, ((cutIndex >>> 20) | 0)) } else if ((cutIndex < 1073741824)) { this.zeroLeft__p4__AO__I__V(this.display0$4, (31 & cutIndex)); this.display1$4 = this.copyRight__p4__AO__I__AO(this.display1$4, (31 & ((cutIndex >>> 5) | 0))); this.display2$4 = this.copyRight__p4__AO__I__AO(this.display2$4, (31 & ((cutIndex >>> 10) | 0))); this.display3$4 = this.copyRight__p4__AO__I__AO(this.display3$4, (31 & ((cutIndex >>> 15) | 0))); this.display4$4 = this.copyRight__p4__AO__I__AO(this.display4$4, (31 & ((cutIndex >>> 20) | 0))); this.display5$4 = this.copyRight__p4__AO__I__AO(this.display5$4, ((cutIndex >>> 25) | 0)) } else { throw new $c_jl_IllegalArgumentException().init___() } }; display0__AO() { return this.display0$4 }; display4__AO() { return this.display4$4 }; display2$und$eq__AO__V(x$1) { this.display2$4 = x$1 }; shiftTopLevel__p4__I__I__V(oldLeft, newLeft) { const x1 = (((-1) + this.depth$4) | 0); switch (x1) { case 0: { const array = this.display0$4; this.display0$4 = $f_sci_VectorPointer__copyRange__AO__I__I__AO(this, array, oldLeft, newLeft); break } case 1: { const array$1 = this.display1$4; this.display1$4 = $f_sci_VectorPointer__copyRange__AO__I__I__AO(this, array$1, oldLeft, newLeft); break } case 2: { const array$2 = this.display2$4; this.display2$4 = $f_sci_VectorPointer__copyRange__AO__I__I__AO(this, array$2, oldLeft, newLeft); break } case 3: { const array$3 = this.display3$4; this.display3$4 = $f_sci_VectorPointer__copyRange__AO__I__I__AO(this, array$3, oldLeft, newLeft); break } case 4: { const array$4 = this.display4$4; this.display4$4 = $f_sci_VectorPointer__copyRange__AO__I__I__AO(this, array$4, oldLeft, newLeft); break } case 5: { const array$5 = this.display5$4; this.display5$4 = $f_sci_VectorPointer__copyRange__AO__I__I__AO(this, array$5, oldLeft, newLeft); break } default: { throw new $c_s_MatchError().init___O(x1) } } }; toVector__sci_Vector() { return this }; appendBack__O__sci_Vector(value) { if ((this.endIndex$4 !== this.startIndex$4)) { const blockIndex = ((-32) & this.endIndex$4); const lo = (31 & this.endIndex$4); if ((this.endIndex$4 !== blockIndex)) { const s = new $c_sci_Vector().init___I__I__I(this.startIndex$4, ((1 + this.endIndex$4) | 0), blockIndex); const depth = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s, this, depth); s.dirty$4 = this.dirty$4; s.gotoPosWritable__p4__I__I__I__V(this.focus$4, blockIndex, (this.focus$4 ^ blockIndex)); s.display0$4.u[lo] = value; return s } else { const shift = (this.startIndex$4 & (~(((-1) + (1 << $imul(5, (((-1) + this.depth$4) | 0)))) | 0))); const shiftBlocks = ((this.startIndex$4 >>> $imul(5, (((-1) + this.depth$4) | 0))) | 0); if ((shift !== 0)) { if ((this.depth$4 > 1)) { const newBlockIndex = ((blockIndex - shift) | 0); const newFocus = ((this.focus$4 - shift) | 0); const s$2 = new $c_sci_Vector().init___I__I__I(((this.startIndex$4 - shift) | 0), ((((1 + this.endIndex$4) | 0) - shift) | 0), newBlockIndex); const depth$1 = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s$2, this, depth$1); s$2.dirty$4 = this.dirty$4; s$2.shiftTopLevel__p4__I__I__V(shiftBlocks, 0); s$2.gotoFreshPosWritable__p4__I__I__I__V(newFocus, newBlockIndex, (newFocus ^ newBlockIndex)); s$2.display0$4.u[lo] = value; return s$2 } else { const newBlockIndex$2 = (((-32) + blockIndex) | 0); const newFocus$2 = this.focus$4; const s$3 = new $c_sci_Vector().init___I__I__I(((this.startIndex$4 - shift) | 0), ((((1 + this.endIndex$4) | 0) - shift) | 0), newBlockIndex$2); const depth$2 = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s$3, this, depth$2); s$3.dirty$4 = this.dirty$4; s$3.shiftTopLevel__p4__I__I__V(shiftBlocks, 0); s$3.gotoPosWritable__p4__I__I__I__V(newFocus$2, newBlockIndex$2, (newFocus$2 ^ newBlockIndex$2)); s$3.display0$4.u[((32 - shift) | 0)] = value; return s$3 } } else { const newFocus$3 = this.focus$4; const s$4 = new $c_sci_Vector().init___I__I__I(this.startIndex$4, ((1 + this.endIndex$4) | 0), blockIndex); const depth$3 = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s$4, this, depth$3); s$4.dirty$4 = this.dirty$4; s$4.gotoFreshPosWritable__p4__I__I__I__V(newFocus$3, blockIndex, (newFocus$3 ^ blockIndex)); s$4.display0$4.u[lo] = value; return s$4 } } } else { const elems = $newArrayObject($d_O.getArrayOf(), [32]); elems.u[0] = value; const s$5 = new $c_sci_Vector().init___I__I__I(0, 1, 0); s$5.depth$4 = 1; s$5.display0$4 = elems; return s$5 } }; toIndexedSeq__sci_IndexedSeq() { return this }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; cleanRightEdge__p4__I__V(cutIndex) { if ((cutIndex <= 32)) { this.zeroRight__p4__AO__I__V(this.display0$4, cutIndex) } else if ((cutIndex <= 1024)) { this.zeroRight__p4__AO__I__V(this.display0$4, ((1 + (31 & (((-1) + cutIndex) | 0))) | 0)); this.display1$4 = this.copyLeft__p4__AO__I__AO(this.display1$4, ((cutIndex >>> 5) | 0)) } else if ((cutIndex <= 32768)) { this.zeroRight__p4__AO__I__V(this.display0$4, ((1 + (31 & (((-1) + cutIndex) | 0))) | 0)); this.display1$4 = this.copyLeft__p4__AO__I__AO(this.display1$4, ((1 + (31 & (((((-1) + cutIndex) | 0) >>> 5) | 0))) | 0)); this.display2$4 = this.copyLeft__p4__AO__I__AO(this.display2$4, ((cutIndex >>> 10) | 0)) } else if ((cutIndex <= 1048576)) { this.zeroRight__p4__AO__I__V(this.display0$4, ((1 + (31 & (((-1) + cutIndex) | 0))) | 0)); this.display1$4 = this.copyLeft__p4__AO__I__AO(this.display1$4, ((1 + (31 & (((((-1) + cutIndex) | 0) >>> 5) | 0))) | 0)); this.display2$4 = this.copyLeft__p4__AO__I__AO(this.display2$4, ((1 + (31 & (((((-1) + cutIndex) | 0) >>> 10) | 0))) | 0)); this.display3$4 = this.copyLeft__p4__AO__I__AO(this.display3$4, ((cutIndex >>> 15) | 0)) } else if ((cutIndex <= 33554432)) { this.zeroRight__p4__AO__I__V(this.display0$4, ((1 + (31 & (((-1) + cutIndex) | 0))) | 0)); this.display1$4 = this.copyLeft__p4__AO__I__AO(this.display1$4, ((1 + (31 & (((((-1) + cutIndex) | 0) >>> 5) | 0))) | 0)); this.display2$4 = this.copyLeft__p4__AO__I__AO(this.display2$4, ((1 + (31 & (((((-1) + cutIndex) | 0) >>> 10) | 0))) | 0)); this.display3$4 = this.copyLeft__p4__AO__I__AO(this.display3$4, ((1 + (31 & (((((-1) + cutIndex) | 0) >>> 15) | 0))) | 0)); this.display4$4 = this.copyLeft__p4__AO__I__AO(this.display4$4, ((cutIndex >>> 20) | 0)) } else if ((cutIndex <= 1073741824)) { this.zeroRight__p4__AO__I__V(this.display0$4, ((1 + (31 & (((-1) + cutIndex) | 0))) | 0)); this.display1$4 = this.copyLeft__p4__AO__I__AO(this.display1$4, ((1 + (31 & (((((-1) + cutIndex) | 0) >>> 5) | 0))) | 0)); this.display2$4 = this.copyLeft__p4__AO__I__AO(this.display2$4, ((1 + (31 & (((((-1) + cutIndex) | 0) >>> 10) | 0))) | 0)); this.display3$4 = this.copyLeft__p4__AO__I__AO(this.display3$4, ((1 + (31 & (((((-1) + cutIndex) | 0) >>> 15) | 0))) | 0)); this.display4$4 = this.copyLeft__p4__AO__I__AO(this.display4$4, ((1 + (31 & (((((-1) + cutIndex) | 0) >>> 20) | 0))) | 0)); this.display5$4 = this.copyLeft__p4__AO__I__AO(this.display5$4, ((cutIndex >>> 25) | 0)) } else { throw new $c_jl_IllegalArgumentException().init___() } }; preClean__p4__I__V(depth) { this.depth$4 = depth; const x1 = (((-1) + depth) | 0); switch (x1) { case 0: { this.display1$4 = null; this.display2$4 = null; this.display3$4 = null; this.display4$4 = null; this.display5$4 = null; break } case 1: { this.display2$4 = null; this.display3$4 = null; this.display4$4 = null; this.display5$4 = null; break } case 2: { this.display3$4 = null; this.display4$4 = null; this.display5$4 = null; break } case 3: { this.display4$4 = null; this.display5$4 = null; break } case 4: { this.display5$4 = null; break } case 5: { break } default: { throw new $c_s_MatchError().init___O(x1) } } }; $$plus$colon__O__scg_CanBuildFrom__O(elem, bf) { return ((((bf === ($m_sci_IndexedSeq$(), $m_sc_IndexedSeq$().ReusableCBF$6)) || (bf === $m_sci_Seq$().ReusableCBFInstance$2)) || (bf === $m_sc_Seq$().ReusableCBFInstance$2)) ? this.appendFront__O__sci_Vector(elem) : $f_sc_SeqLike__$$plus$colon__O__scg_CanBuildFrom__O(this, elem, bf)) }; iterator__sc_Iterator() { return this.iterator__sci_VectorIterator() }; display1$und$eq__AO__V(x$1) { this.display1$4 = x$1 }; zeroRight__p4__AO__I__V(array, index) { let i = index; while ((i < array.u.length)) { array.u[i] = null; i = ((1 + i) | 0) } }; length__I() { return ((this.endIndex$4 - this.startIndex$4) | 0) }; $$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(that, bf) { if ((((bf === ($m_sci_IndexedSeq$(), $m_sc_IndexedSeq$().ReusableCBF$6)) || (bf === $m_sci_Seq$().ReusableCBFInstance$2)) || (bf === $m_sc_Seq$().ReusableCBFInstance$2))) { if (that.isEmpty__Z()) { return this } else { const again = ((!that.isTraversableAgain__Z()) ? that.toVector__sci_Vector() : that.seq__sc_TraversableOnce()); const x1 = again.size__I(); switch (x1) { default: { if (((x1 <= 2) || (x1 < ((this.length__I() >>> 5) | 0)))) { const v = new $c_sr_ObjectRef().init___O(this); again.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, v$1) { return (function(x$2) { v$1.elem$1 = v$1.elem$1.$$colon$plus__O__scg_CanBuildFrom__O(x$2, ($m_sci_Vector$(), $m_sc_IndexedSeq$().ReusableCBF$6)) }) })(this, v))); return v.elem$1 } else if (((this.length__I() < ((x1 >>> 5) | 0)) && (again instanceof $c_sci_Vector))) { let v$2 = again; const ri = new $c_sci_Vector$$anon$1().init___sci_Vector(this); while (ri.hasNext__Z()) { const x$1 = ri.next__O(); v$2 = v$2.$$plus$colon__O__scg_CanBuildFrom__O(x$1, ($m_sci_Vector$(), $m_sc_IndexedSeq$().ReusableCBF$6)) }; return v$2 } else { return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, again, bf) } } } } } else { return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that.seq__sc_TraversableOnce(), bf) } }; display4$und$eq__AO__V(x$1) { this.display4$4 = x$1 }; seq__sc_Seq() { return this }; dropRight__I__sci_Vector(n) { if ((n <= 0)) { return this } else if ((((this.endIndex$4 - n) | 0) > this.startIndex$4)) { return this.dropBack0__p4__I__sci_Vector(((this.endIndex$4 - n) | 0)) } else { const this$1 = $m_sci_Vector$(); return this$1.NIL$6 } }; gotoFreshPosWritable__p4__I__I__I__V(oldIndex, newIndex, xor) { if (this.dirty$4) { $f_sci_VectorPointer__gotoFreshPosWritable1__I__I__I__V(this, oldIndex, newIndex, xor) } else { $f_sci_VectorPointer__gotoFreshPosWritable0__I__I__I__V(this, oldIndex, newIndex, xor); this.dirty$4 = true } }; sizeHintIfCheap__I() { return this.length__I() }; display1__AO() { return this.display1$4 }; last__O() { if ($f_sc_SeqLike__isEmpty__Z(this)) { throw new $c_jl_UnsupportedOperationException().init___T("empty.last") }; return this.apply__I__O((((-1) + this.length__I()) | 0)) }; display5__AO() { return this.display5$4 }; thisCollection__sc_Seq() { return this }; iterator__sci_VectorIterator() { const s = new $c_sci_VectorIterator().init___I__I(this.startIndex$4, this.endIndex$4); this.initIterator__sci_VectorIterator__V(s); return s }; requiredDepth__p4__I__I(xor) { if ((xor < 32)) { return 1 } else if ((xor < 1024)) { return 2 } else if ((xor < 32768)) { return 3 } else if ((xor < 1048576)) { return 4 } else if ((xor < 33554432)) { return 5 } else if ((xor < 1073741824)) { return 6 } else { throw new $c_jl_IllegalArgumentException().init___() } }; isDefinedAt__O__Z(x) { const idx = (x | 0); return $f_sc_GenSeqLike__isDefinedAt__I__Z(this, idx) }; dropBack0__p4__I__sci_Vector(cutIndex) { const blockIndex = ((-32) & (((-1) + cutIndex) | 0)); const xor = (this.startIndex$4 ^ (((-1) + cutIndex) | 0)); const d = this.requiredDepth__p4__I__I(xor); const shift = (this.startIndex$4 & (~(((-1) + (1 << $imul(5, d))) | 0))); const s = new $c_sci_Vector().init___I__I__I(((this.startIndex$4 - shift) | 0), ((cutIndex - shift) | 0), ((blockIndex - shift) | 0)); const depth = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s, this, depth); s.dirty$4 = this.dirty$4; s.gotoPosWritable__p4__I__I__I__V(this.focus$4, blockIndex, (this.focus$4 ^ blockIndex)); s.preClean__p4__I__V(d); s.cleanRightEdge__p4__I__V(((cutIndex - shift) | 0)); return s }; zeroLeft__p4__AO__I__V(array, index) { let i = 0; while ((i < index)) { array.u[i] = null; i = ((1 + i) | 0) } }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this) }; depth$und$eq__I__V(x$1) { this.depth$4 = x$1 }; dropRight__I__O(n) { return this.dropRight__I__sci_Vector(n) }; takeRight__I__O(n) { return this.takeRight__I__sci_Vector(n) }; display2__AO() { return this.display2$4 }; dropFront0__p4__I__sci_Vector(cutIndex) { const blockIndex = ((-32) & cutIndex); const xor = (cutIndex ^ (((-1) + this.endIndex$4) | 0)); const d = this.requiredDepth__p4__I__I(xor); const shift = (cutIndex & (~(((-1) + (1 << $imul(5, d))) | 0))); const s = new $c_sci_Vector().init___I__I__I(((cutIndex - shift) | 0), ((this.endIndex$4 - shift) | 0), ((blockIndex - shift) | 0)); const depth = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s, this, depth); s.dirty$4 = this.dirty$4; s.gotoPosWritable__p4__I__I__I__V(this.focus$4, blockIndex, (this.focus$4 ^ blockIndex)); s.preClean__p4__I__V(d); s.cleanLeftEdge__p4__I__V(((cutIndex - shift) | 0)); return s }; display0$und$eq__AO__V(x$1) { this.display0$4 = x$1 }; appendFront__O__sci_Vector(value) { if ((this.endIndex$4 !== this.startIndex$4)) { const blockIndex = ((-32) & (((-1) + this.startIndex$4) | 0)); const lo = (31 & (((-1) + this.startIndex$4) | 0)); if ((this.startIndex$4 !== ((32 + blockIndex) | 0))) { const s = new $c_sci_Vector().init___I__I__I((((-1) + this.startIndex$4) | 0), this.endIndex$4, blockIndex); const depth = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s, this, depth); s.dirty$4 = this.dirty$4; s.gotoPosWritable__p4__I__I__I__V(this.focus$4, blockIndex, (this.focus$4 ^ blockIndex)); s.display0$4.u[lo] = value; return s } else { const freeSpace = (((1 << $imul(5, this.depth$4)) - this.endIndex$4) | 0); const shift = (freeSpace & (~(((-1) + (1 << $imul(5, (((-1) + this.depth$4) | 0)))) | 0))); const shiftBlocks = ((freeSpace >>> $imul(5, (((-1) + this.depth$4) | 0))) | 0); if ((shift !== 0)) { if ((this.depth$4 > 1)) { const newBlockIndex = ((blockIndex + shift) | 0); const newFocus = ((this.focus$4 + shift) | 0); const s$2 = new $c_sci_Vector().init___I__I__I((((((-1) + this.startIndex$4) | 0) + shift) | 0), ((this.endIndex$4 + shift) | 0), newBlockIndex); const depth$1 = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s$2, this, depth$1); s$2.dirty$4 = this.dirty$4; s$2.shiftTopLevel__p4__I__I__V(0, shiftBlocks); s$2.gotoFreshPosWritable__p4__I__I__I__V(newFocus, newBlockIndex, (newFocus ^ newBlockIndex)); s$2.display0$4.u[lo] = value; return s$2 } else { const newBlockIndex$2 = ((32 + blockIndex) | 0); const newFocus$2 = this.focus$4; const s$3 = new $c_sci_Vector().init___I__I__I((((((-1) + this.startIndex$4) | 0) + shift) | 0), ((this.endIndex$4 + shift) | 0), newBlockIndex$2); const depth$2 = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s$3, this, depth$2); s$3.dirty$4 = this.dirty$4; s$3.shiftTopLevel__p4__I__I__V(0, shiftBlocks); s$3.gotoPosWritable__p4__I__I__I__V(newFocus$2, newBlockIndex$2, (newFocus$2 ^ newBlockIndex$2)); s$3.display0$4.u[(((-1) + shift) | 0)] = value; return s$3 } } else if ((blockIndex < 0)) { const move = (((1 << $imul(5, ((1 + this.depth$4) | 0))) - (1 << $imul(5, this.depth$4))) | 0); const newBlockIndex$3 = ((blockIndex + move) | 0); const newFocus$3 = ((this.focus$4 + move) | 0); const s$4 = new $c_sci_Vector().init___I__I__I((((((-1) + this.startIndex$4) | 0) + move) | 0), ((this.endIndex$4 + move) | 0), newBlockIndex$3); const depth$3 = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s$4, this, depth$3); s$4.dirty$4 = this.dirty$4; s$4.gotoFreshPosWritable__p4__I__I__I__V(newFocus$3, newBlockIndex$3, (newFocus$3 ^ newBlockIndex$3)); s$4.display0$4.u[lo] = value; return s$4 } else { const newFocus$4 = this.focus$4; const s$5 = new $c_sci_Vector().init___I__I__I((((-1) + this.startIndex$4) | 0), this.endIndex$4, blockIndex); const depth$4 = this.depth$4; $f_sci_VectorPointer__initFrom__sci_VectorPointer__I__V(s$5, this, depth$4); s$5.dirty$4 = this.dirty$4; s$5.gotoFreshPosWritable__p4__I__I__I__V(newFocus$4, blockIndex, (newFocus$4 ^ blockIndex)); s$5.display0$4.u[lo] = value; return s$5 } } } else { const elems = $newArrayObject($d_O.getArrayOf(), [32]); elems.u[31] = value; const s$6 = new $c_sci_Vector().init___I__I__I(31, 32, 0); s$6.depth$4 = 1; s$6.display0$4 = elems; return s$6 } }; copyLeft__p4__AO__I__AO(array, right) { const copy = $newArrayObject($d_O.getArrayOf(), [array.u.length]); $systemArraycopy(array, 0, copy, 0, right); return copy }; copyRight__p4__AO__I__AO(array, left) { const copy = $newArrayObject($d_O.getArrayOf(), [array.u.length]); $systemArraycopy(array, left, copy, left, ((copy.u.length - left) | 0)); return copy }; display3$und$eq__AO__V(x$1) { this.display3$4 = x$1 }; } const $isArrayOf_sci_Vector = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_Vector))) }); const $d_sci_Vector = new $TypeData().initClass({ sci_Vector: 0 }, false, "scala.collection.immutable.Vector", { sci_Vector: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, sci_IndexedSeq: 1, sci_Seq: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, sci_VectorPointer: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sc_CustomParallelizable: 1 }); $c_sci_Vector.prototype.$classData = $d_sci_Vector; class $c_sci_WrappedString extends $c_sc_AbstractSeq { constructor() { super(); this.self$4 = null }; seq__sc_TraversableOnce() { return this }; head__O() { return $f_sc_IndexedSeqOptimized__head__O(this) }; apply__I__O(idx) { const thiz = this.self$4; const c = (65535 & (thiz.charCodeAt(idx) | 0)); return new $c_jl_Character().init___C(c) }; thisCollection__sc_Iterable() { return this }; lengthCompare__I__I(len) { return $f_sc_IndexedSeqOptimized__lengthCompare__I__I(this, len) }; sameElements__sc_GenIterable__Z(that) { return $f_sc_IndexedSeqOptimized__sameElements__sc_GenIterable__Z(this, that) }; apply__O__O(v1) { const n = (v1 | 0); const thiz = this.self$4; const c = (65535 & (thiz.charCodeAt(n) | 0)); return new $c_jl_Character().init___C(c) }; exists__F1__Z(p) { return $f_sc_IndexedSeqOptimized__exists__F1__Z(this, p) }; isEmpty__Z() { return $f_sc_IndexedSeqOptimized__isEmpty__Z(this) }; toList__sci_List() { return $f_sc_IndexedSeqOptimized__toList__sci_List(this) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; apply__I__C(n) { const thiz = this.self$4; return (65535 & (thiz.charCodeAt(n) | 0)) }; companion__scg_GenericCompanion() { return $m_sci_IndexedSeq$() }; toString__T() { return this.self$4 }; foreach__F1__V(f) { $f_sc_IndexedSeqOptimized__foreach__F1__V(this, f) }; foldLeft__O__F2__O(z, op) { let start = 0; const thiz = this.self$4; const end = (thiz.length | 0); let z$1 = z; return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O(this, start, end, z$1, op) }; compare__O__I(that) { const other = that; const thiz = this.self$4; return ((thiz === other) ? 0 : ((!(!(thiz < other))) ? (-1) : 1)) }; slice__I__I__O(from, until) { return this.slice__I__I__sci_WrappedString(from, until) }; toIndexedSeq__sci_IndexedSeq() { return this }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; iterator__sc_Iterator() { const thiz = this.self$4; return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, (thiz.length | 0)) }; mkString__T() { return this.self$4 }; length__I() { const thiz = this.self$4; return (thiz.length | 0) }; seq__sc_Seq() { return this }; sizeHintIfCheap__I() { const thiz = this.self$4; return (thiz.length | 0) }; last__O() { return $f_sc_IndexedSeqOptimized__last__O(this) }; thisCollection__sc_Seq() { return this }; isDefinedAt__O__Z(x) { const idx = (x | 0); return $f_sc_GenSeqLike__isDefinedAt__I__Z(this, idx) }; copyToArray__O__I__I__V(xs, start, len) { $f_sc_IndexedSeqOptimized__copyToArray__O__I__I__V(this, xs, start, len) }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this) }; init___T(self) { this.self$4 = self; return this }; dropRight__I__O(n) { return $f_sc_IndexedSeqOptimized__dropRight__I__O(this, n) }; takeRight__I__O(n) { return $f_sc_IndexedSeqOptimized__takeRight__I__O(this, n) }; toArray__s_reflect_ClassTag__O(evidence$1) { return $m_sjsr_RuntimeString$().toCharArray__T__AC(this.self$4) }; slice__I__I__sci_WrappedString(from, until) { const start = ((from < 0) ? 0 : from); let jsx$1; if ((until <= start)) { jsx$1 = true } else { const thiz = this.self$4; jsx$1 = (start >= (thiz.length | 0)) }; if (jsx$1) { return new $c_sci_WrappedString().init___T("") }; const thiz$1 = this.self$4; let end; if ((until > (thiz$1.length | 0))) { const thiz$2 = this.self$4; end = (thiz$2.length | 0) } else { end = until }; const thiz$3 = $m_s_Predef$().unwrapString__sci_WrappedString__T(this); return new $c_sci_WrappedString().init___T(thiz$3.substring(start, end)) }; reduceLeft__F2__O(op) { return $f_sc_IndexedSeqOptimized__reduceLeft__F2__O(this, op) }; newBuilder__scm_Builder() { return $m_sci_WrappedString$().newBuilder__scm_Builder() }; } const $isArrayOf_sci_WrappedString = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_WrappedString))) }); const $d_sci_WrappedString = new $TypeData().initClass({ sci_WrappedString: 0 }, false, "scala.collection.immutable.WrappedString", { sci_WrappedString: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, sci_IndexedSeq: 1, sci_Seq: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, sci_StringLike: 1, sc_IndexedSeqOptimized: 1, s_math_Ordered: 1, jl_Comparable: 1 }); $c_sci_WrappedString.prototype.$classData = $d_sci_WrappedString; class $c_sci_$colon$colon extends $c_sci_List { constructor() { super(); this.head$5 = null; this.tl$5 = null }; productPrefix__T() { return "::" }; head__O() { return this.head$5 }; productArity__I() { return 2 }; isEmpty__Z() { return false }; tail__sci_List() { return this.tl$5 }; productElement__I__O(x$1) { switch (x$1) { case 0: { return this.head$5; break } case 1: { return this.tl$5; break } default: { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) } } }; tail__O() { return this.tl$5 }; init___O__sci_List(head, tl) { this.head$5 = head; this.tl$5 = tl; return this }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $isArrayOf_sci_$colon$colon = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_$colon$colon))) }); const $d_sci_$colon$colon = new $TypeData().initClass({ sci_$colon$colon: 0 }, false, "scala.collection.immutable.$colon$colon", { sci_$colon$colon: 1, sci_List: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, sci_LinearSeq: 1, sci_Seq: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_LinearSeq: 1, sc_LinearSeqLike: 1, s_Product: 1, sc_LinearSeqOptimized: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_$colon$colon.prototype.$classData = $d_sci_$colon$colon; class $c_sci_HashMap$EmptyHashMap$ extends $c_sci_HashMap { init___() { return this }; head__O() { return this.head__T2() }; head__T2() { throw new $c_ju_NoSuchElementException().init___T("Empty Map") }; } const $d_sci_HashMap$EmptyHashMap$ = new $TypeData().initClass({ sci_HashMap$EmptyHashMap$: 0 }, false, "scala.collection.immutable.HashMap$EmptyHashMap$", { sci_HashMap$EmptyHashMap$: 1, sci_HashMap: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sc_CustomParallelizable: 1, sci_HasForeachEntry: 1 }); $c_sci_HashMap$EmptyHashMap$.prototype.$classData = $d_sci_HashMap$EmptyHashMap$; let $n_sci_HashMap$EmptyHashMap$ = (void 0); const $m_sci_HashMap$EmptyHashMap$ = (function() { if ((!$n_sci_HashMap$EmptyHashMap$)) { $n_sci_HashMap$EmptyHashMap$ = new $c_sci_HashMap$EmptyHashMap$().init___() }; return $n_sci_HashMap$EmptyHashMap$ }); class $c_sci_HashMap$HashMap1 extends $c_sci_HashMap { constructor() { super(); this.key$6 = null; this.hash$6 = 0; this.value$6 = null; this.kv$6 = null }; ensurePair__T2() { if ((this.kv$6 !== null)) { return this.kv$6 } else { this.kv$6 = new $c_T2().init___O__O(this.key$6, this.value$6); return this.kv$6 } }; init___O__I__O__T2(key, hash, value, kv) { this.key$6 = key; this.hash$6 = hash; this.value$6 = value; this.kv$6 = kv; return this }; equals__O__Z(that) { if ((that instanceof $c_sci_HashMap$HashMap1)) { const x2 = that; return ((this === x2) || (((x2.hash$6 === this.hash$6) && $m_sr_BoxesRunTime$().equals__O__O__Z(x2.key$6, this.key$6)) && $m_sr_BoxesRunTime$().equals__O__O__Z(x2.value$6, this.value$6))) } else { return ((!(that instanceof $c_sci_HashMap)) && $f_sc_GenMapLike__equals__O__Z(this, that)) } }; updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(key, hash, level, value, kv, merger) { if ((hash === this.hash$6)) { if ($m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key$6)) { if ((merger === null)) { return ((this.value$6 === value) ? this : new $c_sci_HashMap$HashMap1().init___O__I__O__T2(key, hash, value, kv)) } else if ((((key === this.key$6) && (value === this.value$6)) && merger.retainIdentical__Z())) { return this } else { const current = this.ensurePair__T2(); const nkv = merger.apply__T2__T2__T2(current, ((kv !== null) ? kv : new $c_T2().init___O__O(key, value))); return (((current === nkv) || ((this.key$6 === nkv.$$und1__O()) && (this.value$6 === nkv.$$und2__O()))) ? this : new $c_sci_HashMap$HashMap1().init___O__I__O__T2(nkv.$$und1__O(), hash, nkv.$$und2__O(), nkv)) } } else { $m_sci_ListMap$(); const this$2 = $m_sci_ListMap$EmptyListMap$(); const key$1 = this.key$6; const value$1 = this.value$6; return new $c_sci_HashMap$HashMapCollision1().init___I__sci_ListMap(hash, new $c_sci_ListMap$Node().init___sci_ListMap__O__O(this$2, key$1, value$1).updated__O__O__sci_ListMap(key, value)) } } else { const that = new $c_sci_HashMap$HashMap1().init___O__I__O__T2(key, hash, value, kv); return $m_sci_HashMap$().scala$collection$immutable$HashMap$$makeHashTrieMap__I__sci_HashMap__I__sci_HashMap__I__I__sci_HashMap$HashTrieMap(this.hash$6, this, hash, that, level, 2) } }; get0__O__I__I__s_Option(key, hash, level) { return (((hash === this.hash$6) && $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key$6)) ? new $c_s_Some().init___O(this.value$6) : $m_s_None$()) }; foreach__F1__V(f) { f.apply__O__O(this.ensurePair__T2()) }; merge0__sci_HashMap__I__sci_HashMap$Merger__sci_HashMap(that, level, merger) { if ((that instanceof $c_sci_HashMap$HashMap1)) { const x2 = that; return (((this === x2) && merger.retainIdentical__Z()) ? this : (((this.hash$6 === x2.hash$6) && $m_sr_BoxesRunTime$().equals__O__O__Z(this.key$6, x2.key$6)) ? ((merger === $m_sci_HashMap$().scala$collection$immutable$HashMap$$defaultMerger$4) ? this : ((merger === $m_sci_HashMap$().scala$collection$immutable$HashMap$$defaultMerger$4.invert__sci_HashMap$Merger()) ? x2 : this.updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(x2.key$6, x2.hash$6, level, x2.value$6, x2.kv$6, merger))) : this.updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(x2.key$6, x2.hash$6, level, x2.value$6, x2.kv$6, merger))) } else { return that.updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(this.key$6, this.hash$6, level, this.value$6, this.kv$6, merger.invert__sci_HashMap$Merger()) } }; removed0__O__I__I__sci_HashMap(key, hash, level) { return (((hash === this.hash$6) && $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key$6)) ? ($m_sci_HashMap$(), $m_sci_HashMap$EmptyHashMap$()) : this) }; filter0__F1__Z__I__Asci_HashMap__I__sci_HashMap(p, negate, level, buffer, offset0) { return ((negate !== (!(!p.apply__O__O(this.ensurePair__T2())))) ? this : null) }; foreachEntry__F2__V(f) { f.apply__O__O__O(this.key$6, this.value$6) }; size__I() { return 1 }; iterator__sc_Iterator() { $m_sc_Iterator$(); const array = [this.ensurePair__T2()]; const elems = new $c_sjs_js_WrappedArray().init___sjs_js_Array(array); return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(elems, 0, (elems.array$6.length | 0)) }; contains0__O__I__I__Z(key, hash, level) { return ((hash === this.hash$6) && $m_sr_BoxesRunTime$().equals__O__O__Z(key, this.key$6)) }; } const $isArrayOf_sci_HashMap$HashMap1 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_HashMap$HashMap1))) }); const $d_sci_HashMap$HashMap1 = new $TypeData().initClass({ sci_HashMap$HashMap1: 0 }, false, "scala.collection.immutable.HashMap$HashMap1", { sci_HashMap$HashMap1: 1, sci_HashMap: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sc_CustomParallelizable: 1, sci_HasForeachEntry: 1 }); $c_sci_HashMap$HashMap1.prototype.$classData = $d_sci_HashMap$HashMap1; class $c_sci_HashMap$HashMapCollision1 extends $c_sci_HashMap { constructor() { super(); this.hash$6 = 0; this.kvs$6 = null }; updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(key, hash, level, value, kv, merger) { if ((hash === this.hash$6)) { return (((merger === null) || (!this.kvs$6.contains__O__Z(key))) ? new $c_sci_HashMap$HashMapCollision1().init___I__sci_ListMap(hash, this.kvs$6.updated__O__O__sci_ListMap(key, value)) : new $c_sci_HashMap$HashMapCollision1().init___I__sci_ListMap(hash, this.kvs$6.$$plus__T2__sci_ListMap(merger.apply__T2__T2__T2(new $c_T2().init___O__O(key, this.kvs$6.apply__O__O(key)), kv)))) } else { const that = new $c_sci_HashMap$HashMap1().init___O__I__O__T2(key, hash, value, kv); return $m_sci_HashMap$().scala$collection$immutable$HashMap$$makeHashTrieMap__I__sci_HashMap__I__sci_HashMap__I__I__sci_HashMap$HashTrieMap(this.hash$6, this, hash, that, level, ((1 + this.kvs$6.size__I()) | 0)) } }; equals__O__Z(that) { if ((that instanceof $c_sci_HashMap$HashMapCollision1)) { const x2 = that; if ((this === x2)) { return true } else if ((x2.hash$6 === this.hash$6)) { const x = x2.kvs$6; const x$2 = this.kvs$6; return ((x === null) ? (x$2 === null) : $f_sc_GenMapLike__equals__O__Z(x, x$2)) } else { return false } } else { return ((!(that instanceof $c_sci_HashMap)) && $f_sc_GenMapLike__equals__O__Z(this, that)) } }; get0__O__I__I__s_Option(key, hash, level) { return ((hash === this.hash$6) ? this.kvs$6.get__O__s_Option(key) : $m_s_None$()) }; foreach__F1__V(f) { const this$1 = this.kvs$6; const this$2 = this$1.reverseList$1__p5__sci_List(); const this$3 = new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$2); $f_sc_Iterator__foreach__F1__V(this$3, f) }; merge0__sci_HashMap__I__sci_HashMap$Merger__sci_HashMap(that, level, merger) { if ((that instanceof $c_sci_HashMap$HashTrieMap)) { const x2 = that; return x2.merge0__sci_HashMap__I__sci_HashMap$Merger__sci_HashMap(this, level, merger.invert__sci_HashMap$Merger()) } else if ((that instanceof $c_sci_HashMap$HashMap1)) { const x3 = that; return ((x3.hash$6 !== this.hash$6) ? $m_sci_HashMap$().scala$collection$immutable$HashMap$$makeHashTrieMap__I__sci_HashMap__I__sci_HashMap__I__I__sci_HashMap$HashTrieMap(this.hash$6, this, x3.hash$6, x3, level, ((1 + this.kvs$6.size__I()) | 0)) : this.updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(x3.key$6, x3.hash$6, level, x3.value$6, x3.kv$6, merger)) } else if ((that instanceof $c_sci_HashMap$HashMapCollision1)) { const x4 = that; if ((x4.hash$6 !== this.hash$6)) { return $m_sci_HashMap$().scala$collection$immutable$HashMap$$makeHashTrieMap__I__sci_HashMap__I__sci_HashMap__I__I__sci_HashMap$HashTrieMap(this.hash$6, this, x4.hash$6, x4, level, ((x4.kvs$6.size__I() + this.kvs$6.size__I()) | 0)) } else if ((merger.retainIdentical__Z() && (x4 === this))) { return this } else if (((merger === $m_sci_HashMap$().scala$collection$immutable$HashMap$$defaultMerger$4) || (merger === $m_sci_HashMap$().scala$collection$immutable$HashMap$$defaultMerger$4.invert__sci_HashMap$Merger()))) { const newkvs = ((merger === $m_sci_HashMap$().scala$collection$immutable$HashMap$$defaultMerger$4) ? x4.kvs$6.$$plus$plus__sc_GenTraversableOnce__sci_ListMap(this.kvs$6) : this.kvs$6.$$plus$plus__sc_GenTraversableOnce__sci_ListMap(x4.kvs$6)); return ((newkvs === this.kvs$6) ? this : ((newkvs === x4.kvs$6) ? x4 : new $c_sci_HashMap$HashMapCollision1().init___I__sci_ListMap(this.hash$6, newkvs))) } else { let elem$1 = null; elem$1 = null; if ((this.kvs$6.size__I() >= x4.kvs$6.size__I())) { elem$1 = this; const this$2 = x4.kvs$6; const this$3 = this$2.reverseList$1__p5__sci_List(); const this$4 = new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$3); while (this$4.hasNext__Z()) { const arg1 = this$4.next__O(); const p = arg1; elem$1 = elem$1.updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(p.$$und1__O(), this.hash$6, level, p.$$und2__O(), p, merger) } } else { elem$1 = x4; const this$5 = this.kvs$6; const this$6 = this$5.reverseList$1__p5__sci_List(); const this$7 = new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$6); while (this$7.hasNext__Z()) { const arg1$1 = this$7.next__O(); const p$3 = arg1$1; elem$1 = elem$1.updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(p$3.$$und1__O(), this.hash$6, level, p$3.$$und2__O(), p$3, merger.invert__sci_HashMap$Merger()) } }; return elem$1 } } else if ((that === $m_sci_HashMap$EmptyHashMap$())) { return this } else { throw new $c_s_MatchError().init___O(that) } }; removed0__O__I__I__sci_HashMap(key, hash, level) { if ((hash === this.hash$6)) { const kvs1 = this.kvs$6.$$minus__O__sci_ListMap(key); const x1 = kvs1.size__I(); switch (x1) { case 0: { $m_sci_HashMap$(); return $m_sci_HashMap$EmptyHashMap$(); break } case 1: { const this$2 = kvs1.reverseList$1__p5__sci_List(); const kv = new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$2).next__O(); return new $c_sci_HashMap$HashMap1().init___O__I__O__T2(kv.$$und1__O(), hash, kv.$$und2__O(), kv); break } default: { return ((x1 === this.kvs$6.size__I()) ? this : new $c_sci_HashMap$HashMapCollision1().init___I__sci_ListMap(hash, kvs1)) } } } else { return this } }; filter0__F1__Z__I__Asci_HashMap__I__sci_HashMap(p, negate, level, buffer, offset0) { let kvs1; if (negate) { const this$1 = this.kvs$6; kvs1 = $f_sc_MapLike__filterNot__F1__sc_Map(this$1, p) } else { const this$2 = this.kvs$6; kvs1 = $f_sc_TraversableLike__filterImpl__F1__Z__O(this$2, p, false) }; const x1 = kvs1.size__I(); switch (x1) { case 0: { return null; break } case 1: { const this$3 = kvs1.reverseList$1__p5__sci_List(); const x1$2 = new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$3).next__O(); if ((x1$2 === null)) { throw new $c_s_MatchError().init___O(x1$2) }; const k = x1$2.$$und1__O(); const v = x1$2.$$und2__O(); return new $c_sci_HashMap$HashMap1().init___O__I__O__T2(k, this.hash$6, v, x1$2); break } default: { return ((x1 === this.kvs$6.size__I()) ? this : new $c_sci_HashMap$HashMapCollision1().init___I__sci_ListMap(this.hash$6, kvs1)) } } }; size__I() { return this.kvs$6.size__I() }; foreachEntry__F2__V(f) { this.kvs$6.foreachEntry__F2__V(f) }; iterator__sc_Iterator() { const this$1 = this.kvs$6; const this$2 = this$1.reverseList$1__p5__sci_List(); return new $c_sc_LinearSeqLike$$anon$1().init___sc_LinearSeqLike(this$2) }; init___I__sci_ListMap(hash, kvs) { this.hash$6 = hash; this.kvs$6 = kvs; return this }; contains0__O__I__I__Z(key, hash, level) { return ((hash === this.hash$6) && this.kvs$6.contains__O__Z(key)) }; } const $isArrayOf_sci_HashMap$HashMapCollision1 = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_HashMap$HashMapCollision1))) }); const $d_sci_HashMap$HashMapCollision1 = new $TypeData().initClass({ sci_HashMap$HashMapCollision1: 0 }, false, "scala.collection.immutable.HashMap$HashMapCollision1", { sci_HashMap$HashMapCollision1: 1, sci_HashMap: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sc_CustomParallelizable: 1, sci_HasForeachEntry: 1 }); $c_sci_HashMap$HashMapCollision1.prototype.$classData = $d_sci_HashMap$HashMapCollision1; class $c_sci_HashMap$HashTrieMap extends $c_sci_HashMap { constructor() { super(); this.bitmap$6 = 0; this.elems$6 = null; this.size$6 = 0 }; mergeDistinct$1__p6__sci_HashMap$HashTrieMap__sci_HashMap(x3$1) { let ai = 0; let bi = 0; let offset = 0; const abm = this.bitmap$6; const bbm = x3$1.bitmap$6; const a = this.elems$6; const b = x3$1.elems$6; let allBits = (abm | bbm); const resultElems = $newArrayObject($d_sci_HashMap.getArrayOf(), [$m_jl_Integer$().bitCount__I__I(allBits)]); let lsb = (allBits ^ (allBits & (((-1) + allBits) | 0))); while ((lsb !== 0)) { if (((lsb & abm) !== 0)) { resultElems.u[offset] = a.u[ai]; ai = ((1 + ai) | 0) } else { resultElems.u[offset] = b.u[bi]; bi = ((1 + bi) | 0) }; offset = ((1 + offset) | 0); allBits = (allBits ^ lsb); lsb = (allBits ^ (allBits & (((-1) + allBits) | 0))) }; return new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I((abm | bbm), resultElems, ((this.size$6 + x3$1.size$6) | 0)) }; updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(key, hash, level, value, kv, merger) { const index = (31 & ((hash >>> level) | 0)); const mask = (1 << index); const offset = $m_jl_Integer$().bitCount__I__I((this.bitmap$6 & (((-1) + mask) | 0))); if (((this.bitmap$6 & mask) !== 0)) { const sub = this.elems$6.u[offset]; const subNew = sub.updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(key, hash, ((5 + level) | 0), value, kv, merger); if ((subNew === sub)) { return this } else { const elemsNew = this.elems$6.clone__O(); elemsNew.u[offset] = subNew; return new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I(this.bitmap$6, elemsNew, ((this.size$6 + ((subNew.size__I() - sub.size__I()) | 0)) | 0)) } } else { const elemsNew$2 = $newArrayObject($d_sci_HashMap.getArrayOf(), [((1 + this.elems$6.u.length) | 0)]); $systemArraycopy(this.elems$6, 0, elemsNew$2, 0, offset); elemsNew$2.u[offset] = new $c_sci_HashMap$HashMap1().init___O__I__O__T2(key, hash, value, kv); $systemArraycopy(this.elems$6, offset, elemsNew$2, ((1 + offset) | 0), ((this.elems$6.u.length - offset) | 0)); return new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I((this.bitmap$6 | mask), elemsNew$2, ((1 + this.size$6) | 0)) } }; equals__O__Z(that) { if ((that instanceof $c_sci_HashMap$HashTrieMap)) { const x2 = that; return ((this === x2) || (((this.bitmap$6 === x2.bitmap$6) && (this.size$6 === x2.size$6)) && $m_ju_Arrays$().equals__AO__AO__Z(this.elems$6, x2.elems$6))) } else { return ((!(that instanceof $c_sci_HashMap)) && $f_sc_GenMapLike__equals__O__Z(this, that)) } }; mergeCommon$1__p6__sci_HashMap$HashTrieMap__sci_HashMap$Merger__I__sci_HashMap$HashTrieMap(x3$1, merger$2, level$2) { let ai = 0; let bi = 0; const abm = this.bitmap$6; const bbm = x3$1.bitmap$6; const a = this.elems$6; const b = x3$1.elems$6; let allBits = (abm | bbm); const resultElems = $newArrayObject($d_sci_HashMap.getArrayOf(), [$m_jl_Integer$().bitCount__I__I(allBits)]); let offset = 0; let rs = 0; let lsb = (allBits ^ (allBits & (((-1) + allBits) | 0))); let result = null; while ((lsb !== 0)) { if (((lsb & abm) !== 0)) { if (((lsb & bbm) !== 0)) { const aai = a.u[ai]; const bbi = b.u[bi]; result = (((aai === bbi) && merger$2.retainIdentical__Z()) ? aai : aai.merge0__sci_HashMap__I__sci_HashMap$Merger__sci_HashMap(bbi, ((5 + level$2) | 0), merger$2)); ai = ((1 + ai) | 0); bi = ((1 + bi) | 0) } else { result = a.u[ai]; ai = ((1 + ai) | 0) } } else { result = b.u[bi]; bi = ((1 + bi) | 0) }; allBits = (allBits ^ lsb); lsb = (allBits ^ (allBits & (((-1) + allBits) | 0))); resultElems.u[offset] = result; rs = ((rs + result.size__I()) | 0); offset = ((1 + offset) | 0) }; return new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I((abm | bbm), resultElems, rs) }; get0__O__I__I__s_Option(key, hash, level) { const index = (31 & ((hash >>> level) | 0)); if ((this.bitmap$6 === (-1))) { return this.elems$6.u[index].get0__O__I__I__s_Option(key, hash, ((5 + level) | 0)) } else { const mask = (1 << index); if (((this.bitmap$6 & mask) !== 0)) { const offset = $m_jl_Integer$().bitCount__I__I((this.bitmap$6 & (((-1) + mask) | 0))); return this.elems$6.u[offset].get0__O__I__I__s_Option(key, hash, ((5 + level) | 0)) } else { return $m_s_None$() } } }; foreach__F1__V(f) { let i = 0; while ((i < this.elems$6.u.length)) { this.elems$6.u[i].foreach__F1__V(f); i = ((1 + i) | 0) } }; merge0__sci_HashMap__I__sci_HashMap$Merger__sci_HashMap(that, level, merger) { if ((that instanceof $c_sci_HashMap$HashMap1)) { const x2 = that; return this.updated0__O__I__I__O__T2__sci_HashMap$Merger__sci_HashMap(x2.key$6, x2.hash$6, level, x2.value$6, x2.kv$6, merger) } else if ((that instanceof $c_sci_HashMap$HashTrieMap)) { const x3 = that; const abm = this.bitmap$6; const bbm = x3.bitmap$6; const allBits = (abm | bbm); return (((this === x3) && merger.retainIdentical__Z()) ? this : (((allBits === abm) && ((allBits !== bbm) || (this.size$6 >= x3.size$6))) ? this.mergeMaybeSubset$1__p6__sci_HashMap$HashTrieMap__sci_HashMap$HashTrieMap__sci_HashMap$Merger__I__sci_HashMap$HashTrieMap(this, x3, merger, level) : ((allBits === bbm) ? this.mergeMaybeSubset$1__p6__sci_HashMap$HashTrieMap__sci_HashMap$HashTrieMap__sci_HashMap$Merger__I__sci_HashMap$HashTrieMap(x3, this, merger.invert__sci_HashMap$Merger(), level) : (((abm & bbm) === 0) ? this.mergeDistinct$1__p6__sci_HashMap$HashTrieMap__sci_HashMap(x3) : this.mergeCommon$1__p6__sci_HashMap$HashTrieMap__sci_HashMap$Merger__I__sci_HashMap$HashTrieMap(x3, merger, level))))) } else if ((that instanceof $c_sci_HashMap$HashMapCollision1)) { const x4 = that; const index = (31 & ((x4.hash$6 >>> level) | 0)); const mask = (1 << index); const offset = $m_jl_Integer$().bitCount__I__I((this.bitmap$6 & (((-1) + mask) | 0))); if (((this.bitmap$6 & mask) !== 0)) { const sub = this.elems$6.u[offset]; const subNew = sub.merge0__sci_HashMap__I__sci_HashMap$Merger__sci_HashMap(x4, ((5 + level) | 0), merger); if ((subNew === sub)) { return this } else { const elemsNew = this.elems$6.clone__O(); elemsNew.u[offset] = subNew; return new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I(this.bitmap$6, elemsNew, ((this.size$6 + ((subNew.size__I() - sub.size__I()) | 0)) | 0)) } } else { const elemsNew$2 = $newArrayObject($d_sci_HashMap.getArrayOf(), [((1 + this.elems$6.u.length) | 0)]); $systemArraycopy(this.elems$6, 0, elemsNew$2, 0, offset); elemsNew$2.u[offset] = x4; $systemArraycopy(this.elems$6, offset, elemsNew$2, ((1 + offset) | 0), ((this.elems$6.u.length - offset) | 0)); return new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I((this.bitmap$6 | mask), elemsNew$2, ((this.size$6 + x4.kvs$6.size__I()) | 0)) } } else { return ((that === $m_sci_HashMap$EmptyHashMap$()) ? this : $m_s_sys_package$().error__T__sr_Nothing$("section supposed to be unreachable.")) } }; removed0__O__I__I__sci_HashMap(key, hash, level) { const index = (31 & ((hash >>> level) | 0)); const mask = (1 << index); const offset = $m_jl_Integer$().bitCount__I__I((this.bitmap$6 & (((-1) + mask) | 0))); if (((this.bitmap$6 & mask) !== 0)) { const sub = this.elems$6.u[offset]; const subNew = sub.removed0__O__I__I__sci_HashMap(key, hash, ((5 + level) | 0)); if ((subNew === sub)) { return this } else if ($f_sc_MapLike__isEmpty__Z(subNew)) { const bitmapNew = (this.bitmap$6 ^ mask); if ((bitmapNew !== 0)) { const elemsNew = $newArrayObject($d_sci_HashMap.getArrayOf(), [(((-1) + this.elems$6.u.length) | 0)]); $systemArraycopy(this.elems$6, 0, elemsNew, 0, offset); $systemArraycopy(this.elems$6, ((1 + offset) | 0), elemsNew, offset, (((-1) + ((this.elems$6.u.length - offset) | 0)) | 0)); const sizeNew = ((this.size$6 - sub.size__I()) | 0); return (((elemsNew.u.length === 1) && (!(elemsNew.u[0] instanceof $c_sci_HashMap$HashTrieMap))) ? elemsNew.u[0] : new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I(bitmapNew, elemsNew, sizeNew)) } else { $m_sci_HashMap$(); return $m_sci_HashMap$EmptyHashMap$() } } else if (((this.elems$6.u.length === 1) && (!(subNew instanceof $c_sci_HashMap$HashTrieMap)))) { return subNew } else { const elemsNew$2 = $newArrayObject($d_sci_HashMap.getArrayOf(), [this.elems$6.u.length]); $systemArraycopy(this.elems$6, 0, elemsNew$2, 0, this.elems$6.u.length); elemsNew$2.u[offset] = subNew; const sizeNew$2 = ((this.size$6 + ((subNew.size__I() - sub.size__I()) | 0)) | 0); return new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I(this.bitmap$6, elemsNew$2, sizeNew$2) } } else { return this } }; filter0__F1__Z__I__Asci_HashMap__I__sci_HashMap(p, negate, level, buffer, offset0) { let offset = offset0; let rs = 0; let kept = 0; let i = 0; while ((i < this.elems$6.u.length)) { const result = this.elems$6.u[i].filter0__F1__Z__I__Asci_HashMap__I__sci_HashMap(p, negate, ((5 + level) | 0), buffer, offset); if ((result !== null)) { buffer.u[offset] = result; offset = ((1 + offset) | 0); rs = ((rs + result.size__I()) | 0); kept = (kept | (1 << i)) }; i = ((1 + i) | 0) }; if ((offset === offset0)) { return null } else if ((rs === this.size$6)) { return this } else if (((offset === ((1 + offset0) | 0)) && (!(buffer.u[offset0] instanceof $c_sci_HashMap$HashTrieMap)))) { return buffer.u[offset0] } else { const length = ((offset - offset0) | 0); const elems1 = $newArrayObject($d_sci_HashMap.getArrayOf(), [length]); $systemArraycopy(buffer, offset0, elems1, 0, length); const bitmap1 = ((length === this.elems$6.u.length) ? this.bitmap$6 : $m_sci_HashMap$().scala$collection$immutable$HashMap$$keepBits__I__I__I(this.bitmap$6, kept)); return new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I(bitmap1, elems1, rs) } }; size__I() { return this.size$6 }; foreachEntry__F2__V(f) { let i = 0; while ((i < this.elems$6.u.length)) { this.elems$6.u[i].foreachEntry__F2__V(f); i = ((1 + i) | 0) } }; iterator__sc_Iterator() { return new $c_sci_HashMap$HashTrieMap$$anon$5().init___sci_HashMap$HashTrieMap(this) }; mergeMaybeSubset$1__p6__sci_HashMap$HashTrieMap__sci_HashMap$HashTrieMap__sci_HashMap$Merger__I__sci_HashMap$HashTrieMap(larger, smaller, merger, level$2) { let resultElems = null; let ai = 0; let bi = 0; let abm = larger.bitmap$6; let bbm = smaller.bitmap$6; const a = larger.elems$6; const b = smaller.elems$6; let additionalSize = 0; let bsb = (bbm ^ (bbm & (((-1) + bbm) | 0))); while ((bsb !== 0)) { const skippedBitsInA = (abm & (((-1) + bsb) | 0)); ai = ((ai + $m_jl_Integer$().bitCount__I__I(skippedBitsInA)) | 0); abm = (abm ^ skippedBitsInA); const aai = a.u[ai]; const bbi = b.u[bi]; const result = (((aai === bbi) && merger.retainIdentical__Z()) ? aai : aai.merge0__sci_HashMap__I__sci_HashMap$Merger__sci_HashMap(bbi, ((5 + level$2) | 0), merger)); if ((result !== aai)) { if ((resultElems === null)) { resultElems = a.clone__O() }; additionalSize = ((additionalSize + ((result.size__I() - aai.size__I()) | 0)) | 0); resultElems.u[ai] = result }; abm = (abm ^ bsb); bbm = (bbm ^ bsb); bsb = (bbm ^ (bbm & (((-1) + bbm) | 0))); ai = ((1 + ai) | 0); bi = ((1 + bi) | 0) }; return ((resultElems === null) ? larger : new $c_sci_HashMap$HashTrieMap().init___I__Asci_HashMap__I(larger.bitmap$6, resultElems, ((larger.size$6 + additionalSize) | 0))) }; init___I__Asci_HashMap__I(bitmap, elems, size) { this.bitmap$6 = bitmap; this.elems$6 = elems; this.size$6 = size; return this }; contains0__O__I__I__Z(key, hash, level) { const index = (31 & ((hash >>> level) | 0)); if ((this.bitmap$6 === (-1))) { return this.elems$6.u[index].contains0__O__I__I__Z(key, hash, ((5 + level) | 0)) } else { const mask = (1 << index); if (((this.bitmap$6 & mask) !== 0)) { const offset = $m_jl_Integer$().bitCount__I__I((this.bitmap$6 & (((-1) + mask) | 0))); return this.elems$6.u[offset].contains0__O__I__I__Z(key, hash, ((5 + level) | 0)) } else { return false } } }; } const $isArrayOf_sci_HashMap$HashTrieMap = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sci_HashMap$HashTrieMap))) }); const $d_sci_HashMap$HashTrieMap = new $TypeData().initClass({ sci_HashMap$HashTrieMap: 0 }, false, "scala.collection.immutable.HashMap$HashTrieMap", { sci_HashMap$HashTrieMap: 1, sci_HashMap: 1, sci_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, sci_Map: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sci_MapLike: 1, s_Serializable: 1, Ljava_io_Serializable: 1, sc_CustomParallelizable: 1, sci_HasForeachEntry: 1 }); $c_sci_HashMap$HashTrieMap.prototype.$classData = $d_sci_HashMap$HashTrieMap; class $c_sci_Nil$ extends $c_sci_List { init___() { return this }; head__O() { this.head__sr_Nothing$() }; productPrefix__T() { return "Nil" }; productArity__I() { return 0 }; tail__sci_List() { throw new $c_jl_UnsupportedOperationException().init___T("tail of empty list") }; isEmpty__Z() { return true }; equals__O__Z(that) { if ($is_sc_GenSeq(that)) { const x2 = that; return x2.isEmpty__Z() } else { return false } }; productElement__I__O(x$1) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1)) }; head__sr_Nothing$() { throw new $c_ju_NoSuchElementException().init___T("head of empty list") }; tail__O() { return this.tail__sci_List() }; productIterator__sc_Iterator() { return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this) }; } const $d_sci_Nil$ = new $TypeData().initClass({ sci_Nil$: 0 }, false, "scala.collection.immutable.Nil$", { sci_Nil$: 1, sci_List: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, sci_LinearSeq: 1, sci_Seq: 1, sci_Iterable: 1, sci_Traversable: 1, s_Immutable: 1, sc_LinearSeq: 1, sc_LinearSeqLike: 1, s_Product: 1, sc_LinearSeqOptimized: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_sci_Nil$.prototype.$classData = $d_sci_Nil$; let $n_sci_Nil$ = (void 0); const $m_sci_Nil$ = (function() { if ((!$n_sci_Nil$)) { $n_sci_Nil$ = new $c_sci_Nil$().init___() }; return $n_sci_Nil$ }); class $c_scm_AbstractMap extends $c_sc_AbstractMap { seq__sc_Iterable() { return this }; companion__scg_GenericCompanion() { return $m_scm_Iterable$() }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; sizeHint__I__V(size) { /**/ }; newBuilder__scm_Builder() { return this.empty__sc_Map() }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) }; } class $c_scm_AbstractSet extends $c_scm_AbstractIterable { isEmpty__Z() { return $f_sc_SetLike__isEmpty__Z(this) }; seq__sc_Iterable() { return this }; equals__O__Z(that) { return $f_sc_GenSetLike__equals__O__Z(this, that) }; toString__T() { return $f_sc_TraversableLike__toString__T(this) }; subsetOf__sc_GenSet__Z(that) { const this$1 = new $c_scm_FlatHashTable$$anon$1().init___scm_FlatHashTable(this); return $f_sc_Iterator__forall__F1__Z(this$1, that) }; toBuffer__scm_Buffer() { return $f_sc_SetLike__toBuffer__scm_Buffer(this) }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; sizeHint__I__V(size) { /**/ }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); return this$1.unorderedHash__sc_TraversableOnce__I__I(this, this$1.setSeed$2) }; map__F1__scg_CanBuildFrom__O(f, bf) { return $f_sc_TraversableLike__map__F1__scg_CanBuildFrom__O(this, f, bf) }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) }; newBuilder__scm_Builder() { return this.companion__scg_GenericCompanion().empty__sc_GenTraversable() }; stringPrefix__T() { return "Set" }; } class $c_scm_AbstractBuffer extends $c_scm_AbstractSeq { $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) }; } class $c_scm_WrappedArray extends $c_scm_AbstractSeq { seq__sc_TraversableOnce() { return this }; head__O() { return $f_sc_IndexedSeqOptimized__head__O(this) }; thisCollection__sc_Iterable() { return this }; lengthCompare__I__I(len) { return $f_sc_IndexedSeqOptimized__lengthCompare__I__I(this, len) }; sameElements__sc_GenIterable__Z(that) { return $f_sc_IndexedSeqOptimized__sameElements__sc_GenIterable__Z(this, that) }; exists__F1__Z(p) { return $f_sc_IndexedSeqOptimized__exists__F1__Z(this, p) }; seq__sc_Iterable() { return this }; isEmpty__Z() { return $f_sc_IndexedSeqOptimized__isEmpty__Z(this) }; toList__sci_List() { return $f_sc_IndexedSeqOptimized__toList__sci_List(this) }; thisCollection__sc_Traversable() { return this }; companion__scg_GenericCompanion() { return $m_scm_IndexedSeq$() }; foreach__F1__V(f) { $f_sc_IndexedSeqOptimized__foreach__F1__V(this, f) }; foldLeft__O__F2__O(z, op) { let start = 0; const end = this.length__I(); let z$1 = z; return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O(this, start, end, z$1, op) }; slice__I__I__O(from, until) { return $f_sc_IndexedSeqOptimized__slice__I__I__O(this, from, until) }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; seq__scm_Seq() { return this }; iterator__sc_Iterator() { return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, this.length__I()) }; seq__sc_Seq() { return this }; sizeHintIfCheap__I() { return this.length__I() }; last__O() { return $f_sc_IndexedSeqOptimized__last__O(this) }; thisCollection__sc_Seq() { return this }; isDefinedAt__O__Z(x) { const idx = (x | 0); return $f_sc_GenSeqLike__isDefinedAt__I__Z(this, idx) }; copyToArray__O__I__I__V(xs, start, len) { $f_sc_IndexedSeqOptimized__copyToArray__O__I__I__V(this, xs, start, len) }; toArray__s_reflect_ClassTag__O(evidence$1) { const thatElementClass = evidence$1.runtimeClass__jl_Class(); return ((this.elementClass__p5__jl_Class() === thatElementClass) ? this.array__O() : $f_sc_TraversableOnce__toArray__s_reflect_ClassTag__O(this, evidence$1)) }; takeRight__I__O(n) { return $f_sc_IndexedSeqOptimized__takeRight__I__O(this, n) }; dropRight__I__O(n) { return $f_sc_IndexedSeqOptimized__dropRight__I__O(this, n) }; elementClass__p5__jl_Class() { const this$1 = this.array__O(); return $objectGetClass(this$1).getComponentType__jl_Class() }; reduceLeft__F2__O(op) { return $f_sc_IndexedSeqOptimized__reduceLeft__F2__O(this, op) }; newBuilder__scm_Builder() { return new $c_scm_WrappedArrayBuilder().init___s_reflect_ClassTag(this.elemTag__s_reflect_ClassTag()) }; stringPrefix__T() { return "WrappedArray" }; } class $c_sc_convert_Wrappers$JMapWrapper { } const $isArrayOf_sc_convert_Wrappers$JMapWrapper = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sc_convert_Wrappers$JMapWrapper))) }); class $c_scm_ArraySeq extends $c_scm_AbstractSeq { constructor() { super(); this.length$5 = 0; this.array$5 = null }; seq__sc_TraversableOnce() { return this }; head__O() { return $f_sc_IndexedSeqOptimized__head__O(this) }; apply__I__O(idx) { if ((idx >= this.length$5)) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + idx)) }; return this.array$5.u[idx] }; thisCollection__sc_Iterable() { return this }; lengthCompare__I__I(len) { return $f_sc_IndexedSeqOptimized__lengthCompare__I__I(this, len) }; sameElements__sc_GenIterable__Z(that) { return $f_sc_IndexedSeqOptimized__sameElements__sc_GenIterable__Z(this, that) }; apply__O__O(v1) { return this.apply__I__O((v1 | 0)) }; exists__F1__Z(p) { return $f_sc_IndexedSeqOptimized__exists__F1__Z(this, p) }; toList__sci_List() { return $f_sc_IndexedSeqOptimized__toList__sci_List(this) }; isEmpty__Z() { return $f_sc_IndexedSeqOptimized__isEmpty__Z(this) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; companion__scg_GenericCompanion() { return $m_scm_ArraySeq$() }; foreach__F1__V(f) { let i = 0; while ((i < this.length$5)) { f.apply__O__O(this.array$5.u[i]); i = ((1 + i) | 0) } }; foldLeft__O__F2__O(z, op) { let start = 0; const end = this.length$5; let z$1 = z; return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O(this, start, end, z$1, op) }; slice__I__I__O(from, until) { return $f_sc_IndexedSeqOptimized__slice__I__I__O(this, from, until) }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; iterator__sc_Iterator() { return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, this.length$5) }; seq__scm_Seq() { return this }; init___I(length) { this.length$5 = length; this.array$5 = $newArrayObject($d_O.getArrayOf(), [length]); return this }; length__I() { return this.length$5 }; seq__sc_Seq() { return this }; sizeHintIfCheap__I() { return this.length$5 }; last__O() { return $f_sc_IndexedSeqOptimized__last__O(this) }; thisCollection__sc_Seq() { return this }; isDefinedAt__O__Z(x) { const idx = (x | 0); return $f_sc_GenSeqLike__isDefinedAt__I__Z(this, idx) }; copyToArray__O__I__I__V(xs, start, len) { const that = (($m_sr_ScalaRunTime$().array$undlength__O__I(xs) - start) | 0); const x = ((len < that) ? len : that); const that$1 = this.length$5; const len1 = ((x < that$1) ? x : that$1); if ((len1 > 0)) { $m_s_Array$().copy__O__I__O__I__I__V(this.array$5, 0, xs, start, len1) } }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this) }; takeRight__I__O(n) { return $f_sc_IndexedSeqOptimized__takeRight__I__O(this, n) }; dropRight__I__O(n) { return $f_sc_IndexedSeqOptimized__dropRight__I__O(this, n) }; reduceLeft__F2__O(op) { return $f_sc_IndexedSeqOptimized__reduceLeft__F2__O(this, op) }; } const $d_scm_ArraySeq = new $TypeData().initClass({ scm_ArraySeq: 0 }, false, "scala.collection.mutable.ArraySeq", { scm_ArraySeq: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_ArraySeq.prototype.$classData = $d_scm_ArraySeq; class $c_scm_HashMap extends $c_scm_AbstractMap { constructor() { super(); this.$$undloadFactor$5 = 0; this.table$5 = null; this.tableSize$5 = 0; this.threshold$5 = 0; this.sizemap$5 = null; this.seedvalue$5 = 0 }; seq__sc_TraversableOnce() { return this }; put__O__O__s_Option(key, value) { const e = $f_scm_HashTable__findOrAddEntry__O__O__scm_HashEntry(this, key, value); if ((e === null)) { return $m_s_None$() } else { const v = e.value$1; e.value$1 = value; return new $c_s_Some().init___O(v) } }; init___() { $c_scm_HashMap.prototype.init___scm_HashTable$Contents.call(this, null); return this }; $$minus$eq__O__scm_MapLike(key) { return this.$$minus$eq__O__scm_HashMap(key) }; apply__O__O(key) { const result = $f_scm_HashTable__findEntry__O__scm_HashEntry(this, key); return ((result === null) ? $f_sc_MapLike__$default__O__O(this, key) : result.value$1) }; thisCollection__sc_Traversable() { return this }; $$plus$eq__T2__scm_HashMap(kv) { const key = kv.$$und1__O(); const value = kv.$$und2__O(); const e = $f_scm_HashTable__findOrAddEntry__O__O__scm_HashEntry(this, key, value); if ((e !== null)) { e.value$1 = kv.$$und2__O() }; return this }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__T2__scm_HashMap(elem) }; foreach__F1__V(f) { const iterTable = this.table$5; let idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(this); let es = iterTable.u[idx]; while ((es !== null)) { const this$1 = es; const next = this$1.next$1; const arg1 = es; const e = arg1; f.apply__O__O(new $c_T2().init___O__O(e.key$1, e.value$1)); es = next; while (((es === null) && (idx > 0))) { idx = (((-1) + idx) | 0); es = iterTable.u[idx] } } }; keysIterator__sc_Iterator() { return new $c_scm_HashMap$$anon$3().init___scm_HashMap(this) }; $$minus__O__sc_Map(key) { $m_scm_HashMap$(); const this$2 = new $c_scm_HashMap().init___(); return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this$2, this).$$minus$eq__O__scm_MapLike(key) }; empty__sc_Map() { $m_scm_HashMap$(); return new $c_scm_HashMap().init___() }; size__I() { return this.tableSize$5 }; seq__sc_Map() { return this }; result__O() { return this }; values__sc_Iterable() { return new $c_scm_HashMap$$anon$2().init___scm_HashMap(this) }; iterator__sc_Iterator() { const this$1 = new $c_scm_HashTable$$anon$1().init___scm_HashTable(this); const f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) { return (function(e$2) { const e = e$2; return new $c_T2().init___O__O(e.key$1, e.value$1) }) })(this)); return new $c_sc_Iterator$$anon$10().init___sc_Iterator__F1(this$1, f) }; valuesIterator__sc_Iterator() { return new $c_scm_HashMap$$anon$4().init___scm_HashMap(this) }; init___scm_HashTable$Contents(contents) { $f_scm_HashTable__$$init$__V(this); $f_scm_HashTable__initWithContents__scm_HashTable$Contents__V(this, contents); return this }; get__O__s_Option(key) { const e = $f_scm_HashTable__findEntry__O__scm_HashEntry(this, key); return ((e === null) ? $m_s_None$() : new $c_s_Some().init___O(e.value$1)) }; $$plus$eq__T2__scm_MapLike(kv) { return this.$$plus$eq__T2__scm_HashMap(kv) }; $$minus$eq__O__scm_HashMap(key) { $f_scm_HashTable__removeEntry__O__scm_HashEntry(this, key); return this }; contains__O__Z(key) { return ($f_scm_HashTable__findEntry__O__scm_HashEntry(this, key) !== null) }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__T2__scm_HashMap(elem) }; $$plus__T2__sc_GenMap(kv) { $m_scm_HashMap$(); const this$2 = new $c_scm_HashMap().init___(); return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this$2, this).$$plus$eq__T2__scm_MapLike(kv) }; } const $d_scm_HashMap = new $TypeData().initClass({ scm_HashMap: 0 }, false, "scala.collection.mutable.HashMap", { scm_HashMap: 1, scm_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, scm_Map: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_MapLike: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1, scg_Shrinkable: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_HashTable: 1, scm_HashTable$HashUtils: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_HashMap.prototype.$classData = $d_scm_HashMap; class $c_Lio_kaitai_struct_format_ClassSpecs extends $c_scm_HashMap { constructor() { super(); this.firstSpec$6 = null }; mapRec__F1__sc_Iterable(proc) { $m_scm_Iterable$(); $m_scm_Iterable$(); const b = new $c_scm_ArrayBuffer().init___(); const iterTable = this.table$5; let idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(this); let es = iterTable.u[idx]; while ((es !== null)) { const this$3 = es; const next = this$3.next$1; const arg1 = es; const e = arg1; const _1 = e.key$1; const _2 = e.value$1; const typeSpec = _2; const jsx$2 = typeSpec.mapRec__F1__sc_Iterable(proc); const jsx$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, typeSpec$1) { return (function(problem$2) { const problem = problem$2; return problem.localizedInType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_problems_CompilationProblem(typeSpec$1) }) })(this, typeSpec)); const this$4 = $m_sc_Iterable$(); const xs = jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$4.ReusableCBFInstance$2).seq__sc_TraversableOnce(); b.$$plus$plus$eq__sc_TraversableOnce__scm_ArrayBuffer(xs); es = next; while (((es === null) && (idx > 0))) { idx = (((-1) + idx) | 0); es = iterTable.u[idx] } }; return b }; init___Lio_kaitai_struct_format_ClassSpec(firstSpec) { this.firstSpec$6 = firstSpec; $c_scm_HashMap.prototype.init___scm_HashTable$Contents.call(this, null); const key = firstSpec.name$1.head__O(); this.put__O__O__s_Option(key, firstSpec); return this }; forEachRec__F1__V(proc) { const iterTable = this.table$5; let idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(this); let es = iterTable.u[idx]; while ((es !== null)) { const this$1 = es; const next = this$1.next$1; const arg1 = es; const e = arg1; const _1 = e.key$1; const _2 = e.value$1; const typeSpec = _2; try { typeSpec.forEachRec__F1__V(proc) } catch (e$1) { if ((e$1 instanceof $c_Lio_kaitai_struct_problems_CompilationProblemException)) { const cpe = e$1; throw cpe.localizedInType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_problems_CompilationProblemException(typeSpec) } else { throw e$1 } }; es = next; while (((es === null) && (idx > 0))) { idx = (((-1) + idx) | 0); es = iterTable.u[idx] } } }; } const $isArrayOf_Lio_kaitai_struct_format_ClassSpecs = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_format_ClassSpecs))) }); class $c_scm_HashSet extends $c_scm_AbstractSet { constructor() { super(); this.$$undloadFactor$5 = 0; this.table$5 = null; this.tableSize$5 = 0; this.threshold$5 = 0; this.sizemap$5 = null; this.seedvalue$5 = 0 }; seq__sc_TraversableOnce() { return this }; init___() { $c_scm_HashSet.prototype.init___scm_FlatHashTable$Contents.call(this, null); return this }; apply__O__O(v1) { return $f_scm_FlatHashTable__containsElem__O__Z(this, v1) }; thisCollection__sc_Traversable() { return this }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__O__scm_HashSet(elem) }; companion__scg_GenericCompanion() { return $m_scm_HashSet$() }; foreach__F1__V(f) { let i = 0; const len = this.table$5.u.length; while ((i < len)) { const curEntry = this.table$5.u[i]; if ((curEntry !== null)) { f.apply__O__O($f_scm_FlatHashTable$HashUtils__entryToElem__O__O(this, curEntry)) }; i = ((1 + i) | 0) } }; size__I() { return this.tableSize$5 }; result__O() { return this }; iterator__sc_Iterator() { return new $c_scm_FlatHashTable$$anon$1().init___scm_FlatHashTable(this) }; init___scm_FlatHashTable$Contents(contents) { $f_scm_FlatHashTable__$$init$__V(this); $f_scm_FlatHashTable__initWithContents__scm_FlatHashTable$Contents__V(this, contents); return this }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__O__scm_HashSet(elem) }; $$plus__O__sc_Set(elem) { const this$1 = new $c_scm_HashSet().init___(); const this$2 = $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this$1, this); return this$2.$$plus$eq__O__scm_HashSet(elem) }; $$plus$plus__sc_GenTraversableOnce__sc_Set(elems) { const this$1 = new $c_scm_HashSet().init___(); const this$2 = $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this$1, this); const xs = elems.seq__sc_TraversableOnce(); return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this$2, xs) }; $$plus$eq__O__scm_HashSet(elem) { $f_scm_FlatHashTable__addElem__O__Z(this, elem); return this }; } const $isArrayOf_scm_HashSet = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_HashSet))) }); const $d_scm_HashSet = new $TypeData().initClass({ scm_HashSet: 0 }, false, "scala.collection.mutable.HashSet", { scm_HashSet: 1, scm_AbstractSet: 1, scm_AbstractIterable: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_Set: 1, sc_Set: 1, F1: 1, sc_GenSet: 1, sc_GenSetLike: 1, scg_GenericSetTemplate: 1, sc_SetLike: 1, scg_Subtractable: 1, scm_SetLike: 1, sc_script_Scriptable: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1, scg_Shrinkable: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_FlatHashTable: 1, scm_FlatHashTable$HashUtils: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_HashSet.prototype.$classData = $d_scm_HashSet; class $c_scm_WrappedArray$ofBoolean extends $c_scm_WrappedArray { constructor() { super(); this.array$6 = null }; apply__I__O(index) { return this.apply$mcZI$sp__I__Z(index) }; apply__O__O(v1) { const index = (v1 | 0); return this.apply$mcZI$sp__I__Z(index) }; update__I__O__V(index, elem) { this.update__I__Z__V(index, (!(!elem))) }; equals__O__Z(that) { if ((that instanceof $c_scm_WrappedArray$ofBoolean)) { const x2 = that; return $m_ju_Arrays$().equals__AZ__AZ__Z(this.array$6, x2.array$6) } else { return $f_sc_GenSeqLike__equals__O__Z(this, that) } }; apply$mcZI$sp__I__Z(index) { return this.array$6.u[index] }; length__I() { return this.array$6.u.length }; update__I__Z__V(index, elem) { this.array$6.u[index] = elem }; elemTag__s_reflect_ClassTag() { return $m_s_reflect_ManifestFactory$BooleanManifest$() }; array__O() { return this.array$6 }; init___AZ(array) { this.array$6 = array; return this }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const a = this.array$6; return this$1.arrayHash$mZc$sp__AZ__I__I(a, this$1.seqSeed$2) }; } const $isArrayOf_scm_WrappedArray$ofBoolean = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_WrappedArray$ofBoolean))) }); const $d_scm_WrappedArray$ofBoolean = new $TypeData().initClass({ scm_WrappedArray$ofBoolean: 0 }, false, "scala.collection.mutable.WrappedArray$ofBoolean", { scm_WrappedArray$ofBoolean: 1, scm_WrappedArray: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_WrappedArray$ofBoolean.prototype.$classData = $d_scm_WrappedArray$ofBoolean; class $c_scm_WrappedArray$ofByte extends $c_scm_WrappedArray { constructor() { super(); this.array$6 = null }; apply__I__O(index) { return this.apply__I__B(index) }; apply__O__O(v1) { return this.apply__I__B((v1 | 0)) }; update__I__O__V(index, elem) { this.update__I__B__V(index, (elem | 0)) }; equals__O__Z(that) { if ((that instanceof $c_scm_WrappedArray$ofByte)) { const x2 = that; return $m_ju_Arrays$().equals__AB__AB__Z(this.array$6, x2.array$6) } else { return $f_sc_GenSeqLike__equals__O__Z(this, that) } }; apply__I__B(index) { return this.array$6.u[index] }; length__I() { return this.array$6.u.length }; elemTag__s_reflect_ClassTag() { return $m_s_reflect_ManifestFactory$ByteManifest$() }; array__O() { return this.array$6 }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const data = this.array$6; return this$1.arrayHash$mBc$sp__AB__I__I(data, this$1.seqSeed$2) }; init___AB(array) { this.array$6 = array; return this }; update__I__B__V(index, elem) { this.array$6.u[index] = elem }; } const $isArrayOf_scm_WrappedArray$ofByte = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_WrappedArray$ofByte))) }); const $d_scm_WrappedArray$ofByte = new $TypeData().initClass({ scm_WrappedArray$ofByte: 0 }, false, "scala.collection.mutable.WrappedArray$ofByte", { scm_WrappedArray$ofByte: 1, scm_WrappedArray: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_WrappedArray$ofByte.prototype.$classData = $d_scm_WrappedArray$ofByte; class $c_scm_WrappedArray$ofChar extends $c_scm_WrappedArray { constructor() { super(); this.array$6 = null }; apply__I__O(index) { const c = this.apply__I__C(index); return new $c_jl_Character().init___C(c) }; apply__O__O(v1) { const c = this.apply__I__C((v1 | 0)); return new $c_jl_Character().init___C(c) }; update__I__O__V(index, elem) { let jsx$1; if ((elem === null)) { jsx$1 = 0 } else { const this$2 = elem; jsx$1 = this$2.value$1 }; this.update__I__C__V(index, jsx$1) }; equals__O__Z(that) { if ((that instanceof $c_scm_WrappedArray$ofChar)) { const x2 = that; return $m_ju_Arrays$().equals__AC__AC__Z(this.array$6, x2.array$6) } else { return $f_sc_GenSeqLike__equals__O__Z(this, that) } }; apply__I__C(index) { return this.array$6.u[index] }; update__I__C__V(index, elem) { this.array$6.u[index] = elem }; length__I() { return this.array$6.u.length }; init___AC(array) { this.array$6 = array; return this }; elemTag__s_reflect_ClassTag() { return $m_s_reflect_ManifestFactory$CharManifest$() }; array__O() { return this.array$6 }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const a = this.array$6; return this$1.arrayHash$mCc$sp__AC__I__I(a, this$1.seqSeed$2) }; } const $isArrayOf_scm_WrappedArray$ofChar = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_WrappedArray$ofChar))) }); const $d_scm_WrappedArray$ofChar = new $TypeData().initClass({ scm_WrappedArray$ofChar: 0 }, false, "scala.collection.mutable.WrappedArray$ofChar", { scm_WrappedArray$ofChar: 1, scm_WrappedArray: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_WrappedArray$ofChar.prototype.$classData = $d_scm_WrappedArray$ofChar; class $c_scm_WrappedArray$ofDouble extends $c_scm_WrappedArray { constructor() { super(); this.array$6 = null }; apply__I__O(index) { return this.apply$mcDI$sp__I__D(index) }; apply__O__O(v1) { const index = (v1 | 0); return this.apply$mcDI$sp__I__D(index) }; update__I__O__V(index, elem) { this.update__I__D__V(index, (+elem)) }; equals__O__Z(that) { if ((that instanceof $c_scm_WrappedArray$ofDouble)) { const x2 = that; return $m_ju_Arrays$().equals__AD__AD__Z(this.array$6, x2.array$6) } else { return $f_sc_GenSeqLike__equals__O__Z(this, that) } }; init___AD(array) { this.array$6 = array; return this }; length__I() { return this.array$6.u.length }; elemTag__s_reflect_ClassTag() { return $m_s_reflect_ManifestFactory$DoubleManifest$() }; update__I__D__V(index, elem) { this.array$6.u[index] = elem }; array__O() { return this.array$6 }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const a = this.array$6; return this$1.arrayHash$mDc$sp__AD__I__I(a, this$1.seqSeed$2) }; apply$mcDI$sp__I__D(index) { return this.array$6.u[index] }; } const $isArrayOf_scm_WrappedArray$ofDouble = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_WrappedArray$ofDouble))) }); const $d_scm_WrappedArray$ofDouble = new $TypeData().initClass({ scm_WrappedArray$ofDouble: 0 }, false, "scala.collection.mutable.WrappedArray$ofDouble", { scm_WrappedArray$ofDouble: 1, scm_WrappedArray: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_WrappedArray$ofDouble.prototype.$classData = $d_scm_WrappedArray$ofDouble; class $c_scm_WrappedArray$ofFloat extends $c_scm_WrappedArray { constructor() { super(); this.array$6 = null }; apply__I__O(index) { return this.apply$mcFI$sp__I__F(index) }; apply__O__O(v1) { const index = (v1 | 0); return this.apply$mcFI$sp__I__F(index) }; update__I__O__V(index, elem) { this.update__I__F__V(index, (+elem)) }; equals__O__Z(that) { if ((that instanceof $c_scm_WrappedArray$ofFloat)) { const x2 = that; return $m_ju_Arrays$().equals__AF__AF__Z(this.array$6, x2.array$6) } else { return $f_sc_GenSeqLike__equals__O__Z(this, that) } }; init___AF(array) { this.array$6 = array; return this }; length__I() { return this.array$6.u.length }; apply$mcFI$sp__I__F(index) { return this.array$6.u[index] }; update__I__F__V(index, elem) { this.array$6.u[index] = elem }; elemTag__s_reflect_ClassTag() { return $m_s_reflect_ManifestFactory$FloatManifest$() }; array__O() { return this.array$6 }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const a = this.array$6; return this$1.arrayHash$mFc$sp__AF__I__I(a, this$1.seqSeed$2) }; } const $isArrayOf_scm_WrappedArray$ofFloat = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_WrappedArray$ofFloat))) }); const $d_scm_WrappedArray$ofFloat = new $TypeData().initClass({ scm_WrappedArray$ofFloat: 0 }, false, "scala.collection.mutable.WrappedArray$ofFloat", { scm_WrappedArray$ofFloat: 1, scm_WrappedArray: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_WrappedArray$ofFloat.prototype.$classData = $d_scm_WrappedArray$ofFloat; class $c_scm_WrappedArray$ofInt extends $c_scm_WrappedArray { constructor() { super(); this.array$6 = null }; apply__I__O(index) { return this.apply$mcII$sp__I__I(index) }; apply__O__O(v1) { const index = (v1 | 0); return this.apply$mcII$sp__I__I(index) }; update__I__O__V(index, elem) { this.update__I__I__V(index, (elem | 0)) }; equals__O__Z(that) { if ((that instanceof $c_scm_WrappedArray$ofInt)) { const x2 = that; return $m_ju_Arrays$().equals__AI__AI__Z(this.array$6, x2.array$6) } else { return $f_sc_GenSeqLike__equals__O__Z(this, that) } }; update__I__I__V(index, elem) { this.array$6.u[index] = elem }; apply$mcII$sp__I__I(index) { return this.array$6.u[index] }; init___AI(array) { this.array$6 = array; return this }; length__I() { return this.array$6.u.length }; elemTag__s_reflect_ClassTag() { return $m_s_reflect_ManifestFactory$IntManifest$() }; array__O() { return this.array$6 }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const a = this.array$6; return this$1.arrayHash$mIc$sp__AI__I__I(a, this$1.seqSeed$2) }; } const $isArrayOf_scm_WrappedArray$ofInt = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_WrappedArray$ofInt))) }); const $d_scm_WrappedArray$ofInt = new $TypeData().initClass({ scm_WrappedArray$ofInt: 0 }, false, "scala.collection.mutable.WrappedArray$ofInt", { scm_WrappedArray$ofInt: 1, scm_WrappedArray: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_WrappedArray$ofInt.prototype.$classData = $d_scm_WrappedArray$ofInt; class $c_scm_WrappedArray$ofLong extends $c_scm_WrappedArray { constructor() { super(); this.array$6 = null }; apply__I__O(index) { return this.apply$mcJI$sp__I__J(index) }; apply__O__O(v1) { const index = (v1 | 0); return this.apply$mcJI$sp__I__J(index) }; init___AJ(array) { this.array$6 = array; return this }; update__I__O__V(index, elem) { this.update__I__J__V(index, $uJ(elem)) }; equals__O__Z(that) { if ((that instanceof $c_scm_WrappedArray$ofLong)) { const x2 = that; return $m_ju_Arrays$().equals__AJ__AJ__Z(this.array$6, x2.array$6) } else { return $f_sc_GenSeqLike__equals__O__Z(this, that) } }; length__I() { return this.array$6.u.length }; elemTag__s_reflect_ClassTag() { return $m_s_reflect_ManifestFactory$LongManifest$() }; update__I__J__V(index, elem) { this.array$6.u[index] = elem }; array__O() { return this.array$6 }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const a = this.array$6; return this$1.arrayHash$mJc$sp__AJ__I__I(a, this$1.seqSeed$2) }; apply$mcJI$sp__I__J(index) { return this.array$6.u[index] }; } const $isArrayOf_scm_WrappedArray$ofLong = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_WrappedArray$ofLong))) }); const $d_scm_WrappedArray$ofLong = new $TypeData().initClass({ scm_WrappedArray$ofLong: 0 }, false, "scala.collection.mutable.WrappedArray$ofLong", { scm_WrappedArray$ofLong: 1, scm_WrappedArray: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_WrappedArray$ofLong.prototype.$classData = $d_scm_WrappedArray$ofLong; class $c_scm_WrappedArray$ofRef extends $c_scm_WrappedArray { constructor() { super(); this.elemTag$6 = null; this.array$6 = null; this.bitmap$0$6 = false }; apply__I__O(index) { return this.array$6.u[index] }; apply__O__O(v1) { return this.apply__I__O((v1 | 0)) }; update__I__O__V(index, elem) { this.array$6.u[index] = elem }; elemTag$lzycompute__p6__s_reflect_ClassTag() { if ((!this.bitmap$0$6)) { const jsx$1 = $m_s_reflect_ClassTag$(); const this$1 = this.array$6; this.elemTag$6 = jsx$1.apply__jl_Class__s_reflect_ClassTag($objectGetClass(this$1).getComponentType__jl_Class()); this.bitmap$0$6 = true }; return this.elemTag$6 }; init___AO(array) { this.array$6 = array; return this }; length__I() { return this.array$6.u.length }; elemTag__s_reflect_ClassTag() { return ((!this.bitmap$0$6) ? this.elemTag$lzycompute__p6__s_reflect_ClassTag() : this.elemTag$6) }; array__O() { return this.array$6 }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const a = this.array$6; return this$1.arrayHash__O__I__I(a, this$1.seqSeed$2) }; } const $isArrayOf_scm_WrappedArray$ofRef = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_WrappedArray$ofRef))) }); const $d_scm_WrappedArray$ofRef = new $TypeData().initClass({ scm_WrappedArray$ofRef: 0 }, false, "scala.collection.mutable.WrappedArray$ofRef", { scm_WrappedArray$ofRef: 1, scm_WrappedArray: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_WrappedArray$ofRef.prototype.$classData = $d_scm_WrappedArray$ofRef; class $c_scm_WrappedArray$ofShort extends $c_scm_WrappedArray { constructor() { super(); this.array$6 = null }; apply__I__O(index) { return this.apply__I__S(index) }; apply__O__O(v1) { return this.apply__I__S((v1 | 0)) }; update__I__S__V(index, elem) { this.array$6.u[index] = elem }; init___AS(array) { this.array$6 = array; return this }; update__I__O__V(index, elem) { this.update__I__S__V(index, (elem | 0)) }; equals__O__Z(that) { if ((that instanceof $c_scm_WrappedArray$ofShort)) { const x2 = that; return $m_ju_Arrays$().equals__AS__AS__Z(this.array$6, x2.array$6) } else { return $f_sc_GenSeqLike__equals__O__Z(this, that) } }; length__I() { return this.array$6.u.length }; elemTag__s_reflect_ClassTag() { return $m_s_reflect_ManifestFactory$ShortManifest$() }; array__O() { return this.array$6 }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const a = this.array$6; return this$1.arrayHash$mSc$sp__AS__I__I(a, this$1.seqSeed$2) }; apply__I__S(index) { return this.array$6.u[index] }; } const $isArrayOf_scm_WrappedArray$ofShort = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_WrappedArray$ofShort))) }); const $d_scm_WrappedArray$ofShort = new $TypeData().initClass({ scm_WrappedArray$ofShort: 0 }, false, "scala.collection.mutable.WrappedArray$ofShort", { scm_WrappedArray$ofShort: 1, scm_WrappedArray: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_WrappedArray$ofShort.prototype.$classData = $d_scm_WrappedArray$ofShort; class $c_scm_WrappedArray$ofUnit extends $c_scm_WrappedArray { constructor() { super(); this.array$6 = null }; apply__I__O(index) { this.apply$mcVI$sp__I__V(index) }; apply$mcVI$sp__I__V(index) { this.array$6.u[index] }; apply__O__O(v1) { const index = (v1 | 0); this.apply$mcVI$sp__I__V(index) }; update__I__O__V(index, elem) { this.update__I__sr_BoxedUnit__V(index, elem) }; equals__O__Z(that) { if ((that instanceof $c_scm_WrappedArray$ofUnit)) { const x2 = that; return (this.array$6.u.length === x2.array$6.u.length) } else { return $f_sc_GenSeqLike__equals__O__Z(this, that) } }; length__I() { return this.array$6.u.length }; elemTag__s_reflect_ClassTag() { return $m_s_reflect_ManifestFactory$UnitManifest$() }; init___Asr_BoxedUnit(array) { this.array$6 = array; return this }; array__O() { return this.array$6 }; hashCode__I() { const this$1 = $m_s_util_hashing_MurmurHash3$(); const a = this.array$6; return this$1.arrayHash$mVc$sp__Asr_BoxedUnit__I__I(a, this$1.seqSeed$2) }; update__I__sr_BoxedUnit__V(index, elem) { this.array$6.u[index] = elem }; } const $isArrayOf_scm_WrappedArray$ofUnit = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_WrappedArray$ofUnit))) }); const $d_scm_WrappedArray$ofUnit = new $TypeData().initClass({ scm_WrappedArray$ofUnit: 0 }, false, "scala.collection.mutable.WrappedArray$ofUnit", { scm_WrappedArray$ofUnit: 1, scm_WrappedArray: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_WrappedArray$ofUnit.prototype.$classData = $d_scm_WrappedArray$ofUnit; class $c_Lio_kaitai_struct_format_JavaScriptClassSpecs extends $c_Lio_kaitai_struct_format_ClassSpecs { constructor() { super(); this.importer$7 = null; this.MODE$undREL$7 = null; this.MODE$undABS$7 = null }; init___Lio_kaitai_struct_JavaScriptImporter__Lio_kaitai_struct_format_ClassSpec(importer, firstSpec) { this.importer$7 = importer; $c_Lio_kaitai_struct_format_ClassSpecs.prototype.init___Lio_kaitai_struct_format_ClassSpec.call(this, firstSpec); this.MODE$undREL$7 = "rel"; this.MODE$undABS$7 = "abs"; return this }; doImport__T__T__s_concurrent_Future(name, mode) { const jsx$1 = $m_sjs_js_Thenable$ThenableOps$(); const p = this.importer$7.importYaml(name, mode); return jsx$1.toFuture$extension__sjs_js_Thenable__s_concurrent_Future(p).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, name$1) { return (function(yaml$2) { const yamlScala = $m_Lio_kaitai_struct_format_JavaScriptKSYParser$().yamlJavascriptToScala__O__O(yaml$2); const this$2 = $m_Lio_kaitai_struct_format_ClassSpec$(); const fileName = new $c_s_Some().init___O(name$1); return new $c_s_Some().init___O(this$2.fromYaml__O__s_Option__sci_List__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_format_ClassSpec(yamlScala, fileName, $m_sci_Nil$(), $m_Lio_kaitai_struct_format_MetaSpec$().OPAQUE$1)) }) })(this, name)), $m_sjs_concurrent_JSExecutionContext$().queue$1) }; } const $d_Lio_kaitai_struct_format_JavaScriptClassSpecs = new $TypeData().initClass({ Lio_kaitai_struct_format_JavaScriptClassSpecs: 0 }, false, "io.kaitai.struct.format.JavaScriptClassSpecs", { Lio_kaitai_struct_format_JavaScriptClassSpecs: 1, Lio_kaitai_struct_format_ClassSpecs: 1, scm_HashMap: 1, scm_AbstractMap: 1, sc_AbstractMap: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Map: 1, sc_GenMap: 1, sc_GenMapLike: 1, sc_MapLike: 1, s_PartialFunction: 1, F1: 1, scg_Subtractable: 1, scm_Map: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_MapLike: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1, scg_Shrinkable: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_HashTable: 1, scm_HashTable$HashUtils: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_Lio_kaitai_struct_format_JavaScriptClassSpecs.prototype.$classData = $d_Lio_kaitai_struct_format_JavaScriptClassSpecs; class $c_scm_ListBuffer extends $c_scm_AbstractBuffer { constructor() { super(); this.scala$collection$mutable$ListBuffer$$start$6 = null; this.last0$6 = null; this.exported$6 = false; this.len$6 = 0 }; copy__p6__V() { if (this.isEmpty__Z()) { return (void 0) }; let cursor = this.scala$collection$mutable$ListBuffer$$start$6; const this$1 = this.last0$6; const limit = this$1.tl$5; this.clear__V(); while ((cursor !== limit)) { this.$$plus$eq__O__scm_ListBuffer(cursor.head__O()); const this$2 = cursor; cursor = this$2.tail__sci_List() } }; copyToArray__O__I__V(xs, start) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; $f_sc_TraversableOnce__copyToArray__O__I__V(this$1, xs, start) }; head__O() { return this.scala$collection$mutable$ListBuffer$$start$6.head__O() }; init___() { this.scala$collection$mutable$ListBuffer$$start$6 = $m_sci_Nil$(); this.exported$6 = false; this.len$6 = 0; return this }; apply__I__O(n) { if (((n < 0) || (n >= this.len$6))) { throw new $c_jl_IndexOutOfBoundsException().init___T(("" + n)) } else { const this$2 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_LinearSeqOptimized__apply__I__O(this$2, n) } }; thisCollection__sc_Iterable() { return this }; lengthCompare__I__I(len) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_LinearSeqOptimized__lengthCompare__I__I(this$1, len) }; sameElements__sc_GenIterable__Z(that) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_LinearSeqOptimized__sameElements__sc_GenIterable__Z(this$1, that) }; apply__O__O(v1) { return this.apply__I__O((v1 | 0)) }; indices__sci_Range() { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_SeqLike__indices__sci_Range(this$1) }; exists__F1__Z(p) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_LinearSeqOptimized__exists__F1__Z(this$1, p) }; toList__sci_List() { this.exported$6 = (!this.isEmpty__Z()); return this.scala$collection$mutable$ListBuffer$$start$6 }; isEmpty__Z() { return (this.len$6 === 0) }; thisCollection__sc_Traversable() { return this }; equals__O__Z(that) { if ((that instanceof $c_scm_ListBuffer)) { const x2 = that; return this.scala$collection$mutable$ListBuffer$$start$6.equals__O__Z(x2.scala$collection$mutable$ListBuffer$$start$6) } else { return $f_sc_GenSeqLike__equals__O__Z(this, that) } }; mkString__T__T(sep) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", sep, "") }; mkString__T__T__T__T(start, sep, end) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, start, sep, end) }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__O__scm_ListBuffer(elem) }; companion__scg_GenericCompanion() { return $m_scm_ListBuffer$() }; foreach__F1__V(f) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; let these = this$1; while ((!these.isEmpty__Z())) { f.apply__O__O(these.head__O()); const this$2 = these; these = this$2.tail__sci_List() } }; foldLeft__O__F2__O(z, op) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_LinearSeqOptimized__foldLeft__O__F2__O(this$1, z, op) }; $$plus$eq__O__scm_Buffer(elem) { return this.$$plus$eq__O__scm_ListBuffer(elem) }; toIndexedSeq__sci_IndexedSeq() { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; const this$2 = $m_s_Predef$(); const cbf = new $c_s_LowPriorityImplicits$$anon$4().init___s_LowPriorityImplicits(this$2); return $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this$1, cbf) }; size__I() { return this.len$6 }; toBuffer__scm_Buffer() { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; const this$2 = $m_scm_ArrayBuffer$(); const cbf = this$2.ReusableCBFInstance$2; return $f_sc_TraversableLike__to__scg_CanBuildFrom__O(this$1, cbf) }; result__O() { return this.toList__sci_List() }; iterator__sc_Iterator() { return new $c_scm_ListBuffer$$anon$1().init___scm_ListBuffer(this) }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; mkString__T() { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "", "") }; length__I() { return this.len$6 }; seq__sc_Seq() { return this }; toStream__sci_Stream() { return this.toList__sci_List().toStream__sci_Stream() }; last__O() { if ((this.last0$6 === null)) { throw new $c_ju_NoSuchElementException().init___T("last of empty ListBuffer") } else { return this.last0$6.head$5 } }; prependToList__sci_List__sci_List(xs) { if (this.isEmpty__Z()) { return xs } else { this.ensureUnaliased__p6__V(); this.last0$6.tl$5 = xs; return this.toList__sci_List() } }; addString__scm_StringBuilder__T__T__T__scm_StringBuilder(b, start, sep, end) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_TraversableOnce__addString__scm_StringBuilder__T__T__T__scm_StringBuilder(this$1, b, start, sep, end) }; $$plus$eq__O__scm_ListBuffer(x) { this.ensureUnaliased__p6__V(); const last1 = new $c_sci_$colon$colon().init___O__sci_List(x, $m_sci_Nil$()); if ((this.len$6 === 0)) { this.scala$collection$mutable$ListBuffer$$start$6 = last1 } else { this.last0$6.tl$5 = last1 }; this.last0$6 = last1; this.len$6 = ((1 + this.len$6) | 0); return this }; isDefinedAt__O__Z(x) { const x$1 = (x | 0); const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_LinearSeqOptimized__isDefinedAt__I__Z(this$1, x$1) }; $$div$colon__O__F2__O(z, op) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_LinearSeqOptimized__foldLeft__O__F2__O(this$1, z, op) }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__O__scm_ListBuffer(elem) }; sizeHint__I__V(size) { /**/ }; copyToArray__O__I__I__V(xs, start, len) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; $f_sc_IterableLike__copyToArray__O__I__I__V(this$1, xs, start, len) }; toMap__s_Predef$$less$colon$less__sci_Map(ev) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; $m_sci_Map$(); const b = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$()); let these = this$1; while ((!these.isEmpty__Z())) { const arg1 = these.head__O(); b.$$plus$eq__T2__scm_MapBuilder(arg1); const this$3 = these; these = this$3.tail__sci_List() }; return b.elems$1 }; clear__V() { this.scala$collection$mutable$ListBuffer$$start$6 = $m_sci_Nil$(); this.last0$6 = null; this.exported$6 = false; this.len$6 = 0 }; toArray__s_reflect_ClassTag__O(evidence$1) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_TraversableOnce__toArray__s_reflect_ClassTag__O(this$1, evidence$1) }; ensureUnaliased__p6__V() { if (this.exported$6) { this.copy__p6__V() } }; $$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs) { _$plus$plus$eq: while (true) { const x1 = xs; if ((x1 !== null)) { if ((x1 === this)) { const n = this.len$6; xs = $f_sc_IterableLike__take__I__O(this, n); continue _$plus$plus$eq } }; return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) } }; reduceLeft__F2__O(op) { const this$1 = this.scala$collection$mutable$ListBuffer$$start$6; return $f_sc_LinearSeqOptimized__reduceLeft__F2__O(this$1, op) }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return this.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs) }; stringPrefix__T() { return "ListBuffer" }; } const $isArrayOf_scm_ListBuffer = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_ListBuffer))) }); const $d_scm_ListBuffer = new $TypeData().initClass({ scm_ListBuffer: 0 }, false, "scala.collection.mutable.ListBuffer", { scm_ListBuffer: 1, scm_AbstractBuffer: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_Buffer: 1, scm_BufferLike: 1, scg_Growable: 1, scg_Clearable: 1, scg_Shrinkable: 1, sc_script_Scriptable: 1, scg_Subtractable: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_SeqForwarder: 1, scg_IterableForwarder: 1, scg_TraversableForwarder: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_ListBuffer.prototype.$classData = $d_scm_ListBuffer; class $c_scm_StringBuilder extends $c_scm_AbstractSeq { constructor() { super(); this.underlying$5 = null }; seq__sc_TraversableOnce() { return this }; $$plus$eq__C__scm_StringBuilder(x) { this.append__C__scm_StringBuilder(x); return this }; head__O() { return $f_sc_IndexedSeqOptimized__head__O(this) }; init___() { $c_scm_StringBuilder.prototype.init___I__T.call(this, 16, ""); return this }; apply__I__O(idx) { const c = this.underlying$5.charAt__I__C(idx); return new $c_jl_Character().init___C(c) }; thisCollection__sc_Iterable() { return this }; lengthCompare__I__I(len) { return $f_sc_IndexedSeqOptimized__lengthCompare__I__I(this, len) }; sameElements__sc_GenIterable__Z(that) { return $f_sc_IndexedSeqOptimized__sameElements__sc_GenIterable__Z(this, that) }; apply__O__O(v1) { const index = (v1 | 0); const c = this.underlying$5.charAt__I__C(index); return new $c_jl_Character().init___C(c) }; exists__F1__Z(p) { return $f_sc_IndexedSeqOptimized__exists__F1__Z(this, p) }; toList__sci_List() { return $f_sc_IndexedSeqOptimized__toList__sci_List(this) }; isEmpty__Z() { return $f_sc_IndexedSeqOptimized__isEmpty__Z(this) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; subSequence__I__I__jl_CharSequence(start, end) { return this.underlying$5.substring__I__I__T(start, end) }; apply__I__C(index) { return this.underlying$5.charAt__I__C(index) }; $$plus$eq__O__scg_Growable(elem) { let jsx$1; if ((elem === null)) { jsx$1 = 0 } else { const this$2 = elem; jsx$1 = this$2.value$1 }; return this.$$plus$eq__C__scm_StringBuilder(jsx$1) }; companion__scg_GenericCompanion() { return $m_scm_IndexedSeq$() }; toString__T() { return this.underlying$5.java$lang$StringBuilder$$content$f }; foreach__F1__V(f) { $f_sc_IndexedSeqOptimized__foreach__F1__V(this, f) }; foldLeft__O__F2__O(z, op) { let start = 0; const end = this.underlying$5.length__I(); let z$1 = z; return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O(this, start, end, z$1, op) }; compare__O__I(that) { const other = that; const thiz = this.underlying$5.java$lang$StringBuilder$$content$f; return ((thiz === other) ? 0 : ((!(!(thiz < other))) ? (-1) : 1)) }; slice__I__I__O(from, until) { return $f_sci_StringLike__slice__I__I__O(this, from, until) }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; result__O() { return this.underlying$5.java$lang$StringBuilder$$content$f }; append__T__scm_StringBuilder(s) { const this$1 = this.underlying$5; this$1.java$lang$StringBuilder$$content$f = (("" + this$1.java$lang$StringBuilder$$content$f) + s); return this }; iterator__sc_Iterator() { return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, this.underlying$5.length__I()) }; seq__scm_Seq() { return this }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; init___I__T(initCapacity, initValue) { const this$2 = new $c_jl_StringBuilder().init___I((((initValue.length | 0) + initCapacity) | 0)); this$2.java$lang$StringBuilder$$content$f = (("" + this$2.java$lang$StringBuilder$$content$f) + initValue); $c_scm_StringBuilder.prototype.init___jl_StringBuilder.call(this, this$2); return this }; mkString__T() { return this.underlying$5.java$lang$StringBuilder$$content$f }; length__I() { return this.underlying$5.length__I() }; seq__sc_Seq() { return this }; sizeHintIfCheap__I() { return this.underlying$5.length__I() }; last__O() { return $f_sc_IndexedSeqOptimized__last__O(this) }; thisCollection__sc_Seq() { return this }; init___jl_StringBuilder(underlying) { this.underlying$5 = underlying; return this }; append__O__scm_StringBuilder(x) { const this$2 = this.underlying$5; const str = ("" + x); this$2.java$lang$StringBuilder$$content$f = (this$2.java$lang$StringBuilder$$content$f + str); return this }; isDefinedAt__O__Z(x) { const idx = (x | 0); return $f_sc_GenSeqLike__isDefinedAt__I__Z(this, idx) }; $$plus$eq__O__scm_Builder(elem) { let jsx$1; if ((elem === null)) { jsx$1 = 0 } else { const this$2 = elem; jsx$1 = this$2.value$1 }; return this.$$plus$eq__C__scm_StringBuilder(jsx$1) }; sizeHint__I__V(size) { /**/ }; copyToArray__O__I__I__V(xs, start, len) { $f_sc_IndexedSeqOptimized__copyToArray__O__I__I__V(this, xs, start, len) }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this) }; takeRight__I__O(n) { return $f_sc_IndexedSeqOptimized__takeRight__I__O(this, n) }; dropRight__I__O(n) { return $f_sc_IndexedSeqOptimized__dropRight__I__O(this, n) }; toArray__s_reflect_ClassTag__O(evidence$1) { return $m_sjsr_RuntimeString$().toCharArray__T__AC(this.underlying$5.java$lang$StringBuilder$$content$f) }; append__C__scm_StringBuilder(x) { this.underlying$5.append__C__jl_StringBuilder(x); return this }; charAt__I__C(index) { return this.underlying$5.charAt__I__C(index) }; reduceLeft__F2__O(op) { return $f_sc_IndexedSeqOptimized__reduceLeft__F2__O(this, op) }; newBuilder__scm_Builder() { return new $c_scm_GrowingBuilder().init___scg_Growable(new $c_scm_StringBuilder().init___()) }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) }; } const $d_scm_StringBuilder = new $TypeData().initClass({ scm_StringBuilder: 0 }, false, "scala.collection.mutable.StringBuilder", { scm_StringBuilder: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, jl_CharSequence: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, sci_StringLike: 1, sc_IndexedSeqOptimized: 1, s_math_Ordered: 1, jl_Comparable: 1, scm_ReusableBuilder: 1, scm_Builder: 1, scg_Growable: 1, scg_Clearable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_StringBuilder.prototype.$classData = $d_scm_StringBuilder; class $c_sjs_js_WrappedArray extends $c_scm_AbstractBuffer { constructor() { super(); this.array$6 = null }; seq__sc_TraversableOnce() { return this }; init___() { $c_sjs_js_WrappedArray.prototype.init___sjs_js_Array.call(this, []); return this }; head__O() { return $f_sc_IndexedSeqOptimized__head__O(this) }; apply__I__O(index) { return this.array$6[index] }; thisCollection__sc_Iterable() { return this }; lengthCompare__I__I(len) { return $f_sc_IndexedSeqOptimized__lengthCompare__I__I(this, len) }; apply__O__O(v1) { const index = (v1 | 0); return this.array$6[index] }; sameElements__sc_GenIterable__Z(that) { return $f_sc_IndexedSeqOptimized__sameElements__sc_GenIterable__Z(this, that) }; exists__F1__Z(p) { return $f_sc_IndexedSeqOptimized__exists__F1__Z(this, p) }; toList__sci_List() { return $f_sc_IndexedSeqOptimized__toList__sci_List(this) }; isEmpty__Z() { return $f_sc_IndexedSeqOptimized__isEmpty__Z(this) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; $$plus$eq__O__scg_Growable(elem) { this.array$6.push(elem); return this }; companion__scg_GenericCompanion() { return $m_sjs_js_WrappedArray$() }; foreach__F1__V(f) { $f_sc_IndexedSeqOptimized__foreach__F1__V(this, f) }; foldLeft__O__F2__O(z, op) { let start = 0; const end = (this.array$6.length | 0); let z$1 = z; return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O(this, start, end, z$1, op) }; $$plus$eq__O__scm_Buffer(elem) { this.array$6.push(elem); return this }; slice__I__I__O(from, until) { return $f_sc_IndexedSeqOptimized__slice__I__I__O(this, from, until) }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; result__O() { return this }; iterator__sc_Iterator() { return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, (this.array$6.length | 0)) }; seq__scm_Seq() { return this }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; length__I() { return (this.array$6.length | 0) }; seq__sc_Seq() { return this }; sizeHintIfCheap__I() { return (this.array$6.length | 0) }; last__O() { return $f_sc_IndexedSeqOptimized__last__O(this) }; thisCollection__sc_Seq() { return this }; isDefinedAt__O__Z(x) { const idx = (x | 0); return $f_sc_GenSeqLike__isDefinedAt__I__Z(this, idx) }; $$plus$eq__O__scm_Builder(elem) { this.array$6.push(elem); return this }; copyToArray__O__I__I__V(xs, start, len) { $f_sc_IndexedSeqOptimized__copyToArray__O__I__I__V(this, xs, start, len) }; sizeHint__I__V(size) { /**/ }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this) }; clear__V() { this.array$6.length = 0 }; dropRight__I__O(n) { return $f_sc_IndexedSeqOptimized__dropRight__I__O(this, n) }; takeRight__I__O(n) { return $f_sc_IndexedSeqOptimized__takeRight__I__O(this, n) }; init___sjs_js_Array(array) { this.array$6 = array; return this }; reduceLeft__F2__O(op) { return $f_sc_IndexedSeqOptimized__reduceLeft__F2__O(this, op) }; stringPrefix__T() { return "WrappedArray" }; } const $isArrayOf_sjs_js_WrappedArray = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.sjs_js_WrappedArray))) }); const $d_sjs_js_WrappedArray = new $TypeData().initClass({ sjs_js_WrappedArray: 0 }, false, "scala.scalajs.js.WrappedArray", { sjs_js_WrappedArray: 1, scm_AbstractBuffer: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_Buffer: 1, scm_BufferLike: 1, scg_Growable: 1, scg_Clearable: 1, scg_Shrinkable: 1, sc_script_Scriptable: 1, scg_Subtractable: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_IndexedSeqLike: 1, scm_IndexedSeqLike: 1, scm_ArrayLike: 1, scm_IndexedSeqOptimized: 1, sc_IndexedSeqOptimized: 1, scm_Builder: 1 }); $c_sjs_js_WrappedArray.prototype.$classData = $d_sjs_js_WrappedArray; class $c_scm_ArrayBuffer extends $c_scm_AbstractBuffer { constructor() { super(); this.initialSize$6 = 0; this.array$6 = null; this.size0$6 = 0 }; seq__sc_TraversableOnce() { return this }; $$plus$eq__O__scm_ArrayBuffer(elem) { const n = ((1 + this.size0$6) | 0); $f_scm_ResizableArray__ensureSize__I__V(this, n); this.array$6.u[this.size0$6] = elem; this.size0$6 = ((1 + this.size0$6) | 0); return this }; head__O() { return $f_sc_IndexedSeqOptimized__head__O(this) }; init___() { $c_scm_ArrayBuffer.prototype.init___I.call(this, 16); return this }; apply__I__O(idx) { return $f_scm_ResizableArray__apply__I__O(this, idx) }; thisCollection__sc_Iterable() { return this }; lengthCompare__I__I(len) { return $f_sc_IndexedSeqOptimized__lengthCompare__I__I(this, len) }; sameElements__sc_GenIterable__Z(that) { return $f_sc_IndexedSeqOptimized__sameElements__sc_GenIterable__Z(this, that) }; apply__O__O(v1) { const idx = (v1 | 0); return $f_scm_ResizableArray__apply__I__O(this, idx) }; exists__F1__Z(p) { return $f_sc_IndexedSeqOptimized__exists__F1__Z(this, p) }; toList__sci_List() { return $f_sc_IndexedSeqOptimized__toList__sci_List(this) }; isEmpty__Z() { return $f_sc_IndexedSeqOptimized__isEmpty__Z(this) }; seq__sc_Iterable() { return this }; thisCollection__sc_Traversable() { return this }; $$plus$eq__O__scg_Growable(elem) { return this.$$plus$eq__O__scm_ArrayBuffer(elem) }; companion__scg_GenericCompanion() { return $m_scm_ArrayBuffer$() }; foreach__F1__V(f) { $f_scm_ResizableArray__foreach__F1__V(this, f) }; foldLeft__O__F2__O(z, op) { let start = 0; const end = this.size0$6; let z$1 = z; return $f_sc_IndexedSeqOptimized__foldl__psc_IndexedSeqOptimized__I__I__O__F2__O(this, start, end, z$1, op) }; $$plus$eq__O__scm_Buffer(elem) { return this.$$plus$eq__O__scm_ArrayBuffer(elem) }; slice__I__I__O(from, until) { return $f_sc_IndexedSeqOptimized__slice__I__I__O(this, from, until) }; toBuffer__scm_Buffer() { return $f_sc_IndexedSeqLike__toBuffer__scm_Buffer(this) }; result__O() { return this }; iterator__sc_Iterator() { return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, this.size0$6) }; seq__scm_Seq() { return this }; sizeHintBounded__I__sc_TraversableLike__V(size, boundingColl) { $f_scm_Builder__sizeHintBounded__I__sc_TraversableLike__V(this, size, boundingColl) }; init___I(initialSize) { this.initialSize$6 = initialSize; $f_scm_ResizableArray__$$init$__V(this); return this }; length__I() { return this.size0$6 }; seq__sc_Seq() { return this }; sizeHintIfCheap__I() { return this.size0$6 }; last__O() { return $f_sc_IndexedSeqOptimized__last__O(this) }; thisCollection__sc_Seq() { return this }; $$plus$plus$eq__sc_TraversableOnce__scm_ArrayBuffer(xs) { if ($is_sc_IndexedSeqLike(xs)) { const x2 = xs; const n = x2.length__I(); const n$1 = ((this.size0$6 + n) | 0); $f_scm_ResizableArray__ensureSize__I__V(this, n$1); x2.copyToArray__O__I__I__V(this.array$6, this.size0$6, n); this.size0$6 = ((this.size0$6 + n) | 0); return this } else { return $f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs) } }; isDefinedAt__O__Z(x) { const idx = (x | 0); return $f_sc_GenSeqLike__isDefinedAt__I__Z(this, idx) }; $$plus$eq__O__scm_Builder(elem) { return this.$$plus$eq__O__scm_ArrayBuffer(elem) }; sizeHint__I__V(len) { if (((len > this.size0$6) && (len >= 1))) { const newarray = $newArrayObject($d_O.getArrayOf(), [len]); $systemArraycopy(this.array$6, 0, newarray, 0, this.size0$6); this.array$6 = newarray } }; copyToArray__O__I__I__V(xs, start, len) { $f_scm_ResizableArray__copyToArray__O__I__I__V(this, xs, start, len) }; hashCode__I() { return $m_s_util_hashing_MurmurHash3$().seqHash__sc_Seq__I(this) }; clear__V() { $f_scm_ResizableArray__reduceToSize__I__V(this, 0) }; takeRight__I__O(n) { return $f_sc_IndexedSeqOptimized__takeRight__I__O(this, n) }; dropRight__I__O(n) { return $f_sc_IndexedSeqOptimized__dropRight__I__O(this, n) }; reduceLeft__F2__O(op) { return $f_sc_IndexedSeqOptimized__reduceLeft__F2__O(this, op) }; $$plus$plus$eq__sc_TraversableOnce__scg_Growable(xs) { return this.$$plus$plus$eq__sc_TraversableOnce__scm_ArrayBuffer(xs) }; stringPrefix__T() { return "ArrayBuffer" }; } const $isArrayOf_scm_ArrayBuffer = (function(obj, depth) { return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_ArrayBuffer))) }); const $d_scm_ArrayBuffer = new $TypeData().initClass({ scm_ArrayBuffer: 0 }, false, "scala.collection.mutable.ArrayBuffer", { scm_ArrayBuffer: 1, scm_AbstractBuffer: 1, scm_AbstractSeq: 1, sc_AbstractSeq: 1, sc_AbstractIterable: 1, sc_AbstractTraversable: 1, O: 1, sc_Traversable: 1, sc_TraversableLike: 1, scg_HasNewBuilder: 1, scg_FilterMonadic: 1, sc_TraversableOnce: 1, sc_GenTraversableOnce: 1, sc_GenTraversableLike: 1, sc_Parallelizable: 1, sc_GenTraversable: 1, scg_GenericTraversableTemplate: 1, sc_Iterable: 1, sc_GenIterable: 1, sc_GenIterableLike: 1, sc_IterableLike: 1, s_Equals: 1, sc_Seq: 1, s_PartialFunction: 1, F1: 1, sc_GenSeq: 1, sc_GenSeqLike: 1, sc_SeqLike: 1, scm_Seq: 1, scm_Iterable: 1, scm_Traversable: 1, s_Mutable: 1, scm_SeqLike: 1, scm_Cloneable: 1, s_Cloneable: 1, jl_Cloneable: 1, scm_Buffer: 1, scm_BufferLike: 1, scg_Growable: 1, scg_Clearable: 1, scg_Shrinkable: 1, sc_script_Scriptable: 1, scg_Subtractable: 1, scm_IndexedSeqOptimized: 1, scm_IndexedSeqLike: 1, sc_IndexedSeqLike: 1, sc_IndexedSeqOptimized: 1, scm_Builder: 1, scm_ResizableArray: 1, scm_IndexedSeq: 1, sc_IndexedSeq: 1, sc_CustomParallelizable: 1, s_Serializable: 1, Ljava_io_Serializable: 1 }); $c_scm_ArrayBuffer.prototype.$classData = $d_scm_ArrayBuffer; let $e_KaitiaiStructCompiler; export { $e_KaitiaiStructCompiler as KaitiaiStructCompiler }; $e_KaitiaiStructCompiler = $m_Lio_kaitai_struct_MainJs$(); //# sourceMappingURL=kaitai-struct-compiler-js-opt.js.map
OffsetSizeIDTypeNote