cubing 0.25.1 → 0.25.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/esm/{2x2x2.sgs.json-QKP2WRPT.js → 2x2x2.sgs.json-NUOQFJWU.js} +2 -2
- package/dist/esm/{2x2x2.sgs.json-QKP2WRPT.js.map → 2x2x2.sgs.json-NUOQFJWU.js.map} +0 -0
- package/dist/esm/{3d-dynamic-inside-GKERM3IG.js → 3d-dynamic-AKACURPM.js} +13 -13
- package/dist/esm/3d-dynamic-AKACURPM.js.map +7 -0
- package/dist/esm/{gwt-B7CBESZR.js → 3x3x3-min2phase-FPRJ5PCJ.js} +2 -2
- package/dist/esm/{gwt-B7CBESZR.js.map → 3x3x3-min2phase-FPRJ5PCJ.js.map} +1 -1
- package/dist/esm/{scramble_444-FXLLIDCW.js → 444-solver-GNQ5BHCL.js} +4 -4
- package/dist/esm/{scramble_444-FXLLIDCW.js.map → 444-solver-GNQ5BHCL.js.map} +1 -1
- package/dist/esm/bluetooth/index.js +1 -1
- package/dist/esm/chunk-5O24MNND.js +25 -0
- package/dist/esm/chunk-5O24MNND.js.map +7 -0
- package/dist/esm/{chunk-HCNUMBT5.js → chunk-ASJ2DADD.js} +3 -3
- package/dist/esm/{chunk-HCNUMBT5.js.map → chunk-ASJ2DADD.js.map} +2 -2
- package/dist/esm/{chunk-QUTXXRPT.js → chunk-CYKV7QC5.js} +2 -2
- package/dist/esm/{chunk-QUTXXRPT.js.map → chunk-CYKV7QC5.js.map} +0 -0
- package/dist/esm/{chunk-Z5INA5XR.js → chunk-FZJDXPAH.js} +52 -21
- package/dist/esm/chunk-FZJDXPAH.js.map +7 -0
- package/dist/esm/{chunk-GXV3K7MX.js → chunk-L3PZ4XAT.js} +2 -2
- package/dist/esm/{chunk-GXV3K7MX.js.map → chunk-L3PZ4XAT.js.map} +2 -2
- package/dist/esm/{chunk-37NJ765B.js → chunk-SNWS6JXI.js} +1 -1
- package/dist/esm/{chunk-37NJ765B.js.map → chunk-SNWS6JXI.js.map} +0 -0
- package/dist/esm/{entry-RSZSKW5X.js → entry-2KUJYJBJ.js} +12 -12
- package/dist/esm/{entry-RSZSKW5X.js.map → entry-2KUJYJBJ.js.map} +2 -2
- package/dist/esm/{ftosolver-smaller-phase3-table-UTQRO776.js → fto-solver-HI6NIV74.js} +2 -2
- package/dist/esm/{ftosolver-smaller-phase3-table-UTQRO776.js.map → fto-solver-HI6NIV74.js.map} +1 -1
- package/dist/esm/{fto.sgs.json-T5WY2HR7.js → fto.dynamic-A3AASYQ6.js} +8 -3
- package/dist/esm/fto.dynamic-A3AASYQ6.js.map +7 -0
- package/dist/esm/{masterpyra-QOJCNGZM.js → master_tetraminx-solver-KBQJGW4A.js} +2 -5
- package/dist/esm/{masterpyra-QOJCNGZM.js.map → master_tetraminx-solver-KBQJGW4A.js.map} +3 -3
- package/dist/esm/puzzles/index.js +1 -1
- package/dist/esm/{pyraminx.sgs.json-5HPDQAOM.js → pyraminx.sgs.json-X37XL7MA.js} +3 -3
- package/dist/esm/{pyraminx.sgs.json-5HPDQAOM.js.map → pyraminx.sgs.json-X37XL7MA.js.map} +0 -0
- package/dist/esm/scramble/index.js +3 -3
- package/dist/esm/search/index.js +3 -3
- package/dist/esm/{module-entry-UDFTQHXX.js → search-worker-entry-ZJAXYGSH.js} +7 -7
- package/dist/esm/search-worker-entry-ZJAXYGSH.js.map +7 -0
- package/dist/esm/{scramble_sq1-OZR6K4WV.js → sq1-solver-P3IWWET7.js} +2 -2
- package/dist/esm/{scramble_sq1-OZR6K4WV.js.map → sq1-solver-P3IWWET7.js.map} +1 -1
- package/dist/esm/twisty/index.js +54 -12
- package/dist/esm/twisty/index.js.map +3 -3
- package/dist/esm/{worker-inside-generated-string-WGUQ4QSO.js → worker-inside-generated-string-OBSDMXAS.js} +641 -22
- package/dist/esm/worker-inside-generated-string-OBSDMXAS.js.map +7 -0
- package/dist/types/search/inside/{module-entry-path-getter.d.ts → search-worker-entry-path-getter.d.ts} +0 -0
- package/dist/types/search/inside/{module-entry.d.ts → search-worker-entry.d.ts} +0 -0
- package/dist/types/search/inside/solve/puzzles/{fto.sgs.json.d.ts → fto.dynamic.d.ts} +1 -0
- package/dist/types/search/worker-inside-generated-string.d.ts +1 -1
- package/dist/types/twisty/heavy-code-imports/3d.d.ts +1 -1
- package/dist/types/twisty/heavy-code-imports/dynamic-entries/{3d-dynamic-inside.d.ts → 3d-dynamic.d.ts} +0 -0
- package/dist/types/twisty/model/TwistyPlayerModel.d.ts +4 -0
- package/dist/types/twisty/model/props/TwistyPropDebugger.d.ts +1 -2
- package/dist/types/twisty/model/props/general/ArbitraryStringProp.d.ts +4 -0
- package/dist/types/twisty/views/TwistyPlayer.d.ts +6 -0
- package/dist/types/twisty/views/TwistyPlayerSettable.d.ts +6 -0
- package/dist/types/twisty/views/twizzle/TwizzleLink.d.ts +1 -1
- package/dist/types/vendor/comlink-everywhere/inside/index.d.ts +2 -1
- package/dist/types/vendor/comlink-everywhere/node-adapter.d.ts +6 -0
- package/dist/types/vendor/comlink-everywhere/outside/index.d.ts +4 -2
- package/dist/types/vendor/cstimer/src/js/scramble/{scramble_444.d.ts → 444-solver.d.ts} +0 -0
- package/dist/types/vendor/min2phase/{gwt.d.ts → 3x3x3-min2phase.d.ts} +0 -0
- package/dist/types/vendor/sq12phase/{scramble_sq1.d.ts → sq1-solver.d.ts} +0 -0
- package/dist/types/vendor/xyzzy/{ftosolver.d.ts → fto-solver-original.d.ts} +0 -0
- package/dist/types/vendor/xyzzy/{ftosolver-smaller-phase3-table.d.ts → fto-solver.d.ts} +0 -0
- package/dist/types/vendor/xyzzy/{masterpyra.d.ts → master_tetraminx-solver.d.ts} +0 -0
- package/package.json +2 -2
- package/dist/esm/3d-dynamic-inside-GKERM3IG.js.map +0 -7
- package/dist/esm/chunk-L7W7Q42Q.js +0 -18
- package/dist/esm/chunk-L7W7Q42Q.js.map +0 -7
- package/dist/esm/chunk-Z5INA5XR.js.map +0 -7
- package/dist/esm/esm-test-worker.js +0 -15
- package/dist/esm/esm-test-worker.js.map +0 -7
- package/dist/esm/fto.sgs.json-T5WY2HR7.js.map +0 -7
- package/dist/esm/module-entry-UDFTQHXX.js.map +0 -7
- package/dist/esm/node-KTVORTZB.js +0 -41
- package/dist/esm/node-KTVORTZB.js.map +0 -7
- package/dist/esm/node-LMAS5PGZ.js +0 -14
- package/dist/esm/node-LMAS5PGZ.js.map +0 -7
- package/dist/esm/worker-inside-generated-string-WGUQ4QSO.js.map +0 -7
- package/dist/types/esm-test-worker.d.ts +0 -1
- package/dist/types/vendor/comlink-everywhere/inside/node.d.ts +0 -1
- package/dist/types/vendor/comlink-everywhere/outside/node.d.ts +0 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/cubing/vendor/min2phase/
|
|
3
|
+
"sources": ["../../src/cubing/vendor/min2phase/3x3x3-min2phase.js"],
|
|
4
4
|
"sourcesContent": ["var $intern_3 = { 3: 1 },\n $intern_9 = 4194303,\n $intern_10 = 1048575,\n $intern_11 = 524288,\n $intern_20 = 65535,\n $intern_26 = { 11: 1, 3: 1 },\n $intern_27 = { 17: 1, 3: 1 },\n $intern_28 = 14540032,\n $intern_29 = 286331153,\n $intern_30 = { 10: 1, 3: 1 };\nvar _;\nvar prototypesByTypeId_0 = {};\nfunction typeMarkerFn() {}\n\nfunction portableObjCreate(obj) {\n function F() {}\n\n F.prototype = obj || {};\n return new F();\n}\n\nfunction maybeGetClassLiteralFromPlaceHolder_0(entry) {\n return entry instanceof Array ? entry[0] : null;\n}\n\nfunction defineClass(typeId, superTypeId, castableTypeMap) {\n var prototypesByTypeId = prototypesByTypeId_0;\n var createSubclassPrototype = createSubclassPrototype_0;\n var maybeGetClassLiteralFromPlaceHolder =\n maybeGetClassLiteralFromPlaceHolder_0;\n var prototype_0 = prototypesByTypeId[typeId];\n var clazz = maybeGetClassLiteralFromPlaceHolder(prototype_0);\n if (prototype_0 && !clazz) {\n _ = prototype_0;\n } else {\n _ = prototypesByTypeId[typeId] = !superTypeId\n ? {}\n : createSubclassPrototype(superTypeId);\n _.castableTypeMap$ = castableTypeMap;\n _.constructor = _;\n !superTypeId && (_.typeMarker$ = typeMarkerFn);\n }\n for (var i = 3; i < arguments.length; ++i) {\n arguments[i].prototype = _;\n }\n clazz && (_.___clazz$ = clazz);\n}\n\nfunction createSubclassPrototype_0(superTypeId) {\n var prototypesByTypeId = prototypesByTypeId_0;\n return portableObjCreate(prototypesByTypeId[superTypeId]);\n}\n\nfunction Object_0() {}\n\ndefineClass(1, null, {}, Object_0);\n\nfunction narrow_byte(x_0) {\n return (x_0 << 24) >> 24;\n}\n\nfunction Class() {\n this.typeName = null;\n this.simpleName = null;\n this.packageName = null;\n this.compoundName = null;\n this.canonicalName = null;\n this.typeId = null;\n this.arrayLiterals = null;\n}\n\nfunction createClassObject(packageName, compoundClassName) {\n var clazz;\n clazz = new Class();\n clazz.packageName = packageName;\n clazz.compoundName = compoundClassName;\n return clazz;\n}\n\nfunction createForClass(packageName, compoundClassName, typeId) {\n var clazz;\n clazz = createClassObject(packageName, compoundClassName);\n maybeSetClassLiteral(typeId, clazz);\n return clazz;\n}\n\nfunction createForInterface(packageName, compoundClassName) {\n var clazz;\n clazz = createClassObject(packageName, compoundClassName);\n clazz.modifiers = 2;\n return clazz;\n}\n\nfunction createForPrimitive(className, primitiveTypeId) {\n var clazz;\n clazz = createClassObject(\"\", className);\n clazz.typeId = primitiveTypeId;\n clazz.modifiers = 1;\n return clazz;\n}\n\nfunction getClassLiteralForArray_0(leafClass, dimensions) {\n var arrayLiterals = (leafClass.arrayLiterals = leafClass.arrayLiterals || []);\n return (\n arrayLiterals[dimensions] ||\n (arrayLiterals[dimensions] =\n leafClass.createClassLiteralForArray(dimensions))\n );\n}\n\nfunction getPrototypeForClass(clazz) {\n if (clazz.isPrimitive()) {\n return null;\n }\n var typeId = clazz.typeId;\n var prototype_0 = prototypesByTypeId_0[typeId];\n return prototype_0;\n}\n\nfunction maybeSetClassLiteral(typeId, clazz) {\n if (!typeId) {\n return;\n }\n clazz.typeId = typeId;\n var prototype_0 = getPrototypeForClass(clazz);\n if (!prototype_0) {\n prototypesByTypeId_0[typeId] = [clazz];\n return;\n }\n prototype_0.___clazz$ = clazz;\n}\n\ndefineClass(79, 1, {}, Class);\n_.createClassLiteralForArray = function createClassLiteralForArray(dimensions) {\n var clazz;\n clazz = new Class();\n clazz.modifiers = 4;\n dimensions > 1\n ? (clazz.componentType = getClassLiteralForArray_0(this, dimensions - 1))\n : (clazz.componentType = this);\n return clazz;\n};\n_.isPrimitive = function isPrimitive() {\n return (this.modifiers & 1) != 0;\n};\n\nfunction getClassLiteralForArray(clazz, dimensions) {\n return getClassLiteralForArray_0(clazz, dimensions);\n}\n\nfunction initDim(\n leafClassLiteral,\n castableTypeMap,\n elementTypeId,\n length_0,\n elementTypeCategory,\n dimensions,\n) {\n var result;\n result = initializeArrayElementsWithDefaults(elementTypeCategory, length_0);\n initValues(\n getClassLiteralForArray(leafClassLiteral, dimensions),\n castableTypeMap,\n elementTypeId,\n elementTypeCategory,\n result,\n );\n return result;\n}\n\nfunction initDims(\n leafClassLiteral,\n castableTypeMapExprs,\n elementTypeIds,\n leafElementTypeCategory,\n dimExprs,\n count,\n) {\n return initDims_0(\n leafClassLiteral,\n castableTypeMapExprs,\n elementTypeIds,\n leafElementTypeCategory,\n dimExprs,\n 0,\n count,\n );\n}\n\nfunction initDims_0(\n leafClassLiteral,\n castableTypeMapExprs,\n elementTypeIds,\n leafElementTypeCategory,\n dimExprs,\n index_0,\n count,\n) {\n var elementTypeCategory, i, isLastDim, length_0, result;\n length_0 = dimExprs[index_0];\n isLastDim = index_0 == count - 1;\n elementTypeCategory = isLastDim ? leafElementTypeCategory : 0;\n result = initializeArrayElementsWithDefaults(elementTypeCategory, length_0);\n initValues(\n getClassLiteralForArray(leafClassLiteral, count - index_0),\n castableTypeMapExprs[index_0],\n elementTypeIds[index_0],\n elementTypeCategory,\n result,\n );\n if (!isLastDim) {\n ++index_0;\n for (i = 0; i < length_0; ++i) {\n result[i] = initDims_0(\n leafClassLiteral,\n castableTypeMapExprs,\n elementTypeIds,\n leafElementTypeCategory,\n dimExprs,\n index_0,\n count,\n );\n }\n }\n return result;\n}\n\nfunction initValues(\n arrayClass,\n castableTypeMap,\n elementTypeId,\n elementTypeCategory,\n array,\n) {\n array.___clazz$ = arrayClass;\n array.castableTypeMap$ = castableTypeMap;\n array.typeMarker$ = typeMarkerFn;\n array.__elementTypeId$ = elementTypeId;\n array.__elementTypeCategory$ = elementTypeCategory;\n return array;\n}\n\nfunction initializeArrayElementsWithDefaults(elementTypeCategory, length_0) {\n var array = new Array(length_0);\n var initValue;\n switch (elementTypeCategory) {\n case 6:\n initValue = { l: 0, m: 0, h: 0 };\n break;\n case 7:\n initValue = 0;\n break;\n case 8:\n initValue = false;\n break;\n default:\n return array;\n }\n for (var i = 0; i < length_0; ++i) {\n array[i] = initValue;\n }\n return array;\n}\n\nfunction create(value_0) {\n var a0, a1, a2;\n a0 = value_0 & $intern_9;\n a1 = (value_0 >> 22) & $intern_9;\n a2 = value_0 < 0 ? $intern_10 : 0;\n return create0(a0, a1, a2);\n}\n\nfunction create0(l, m, h) {\n return { l: l, m: m, h: h };\n}\n\nfunction add_1(a, b) {\n var sum0, sum1, sum2;\n sum0 = a.l + b.l;\n sum1 = a.m + b.m + (sum0 >> 22);\n sum2 = a.h + b.h + (sum1 >> 22);\n return { l: sum0 & $intern_9, m: sum1 & $intern_9, h: sum2 & $intern_10 };\n}\n\nfunction and(a, b) {\n return { l: a.l & b.l, m: a.m & b.m, h: a.h & b.h };\n}\n\nfunction fromInt(value_0) {\n var rebase, result;\n if (value_0 > -129 && value_0 < 128) {\n rebase = value_0 + 128;\n boxedValues == null &&\n (boxedValues = initDim(\n Lcom_google_gwt_lang_LongLibBase$LongEmul_2_classLit,\n $intern_3,\n 293,\n 256,\n 0,\n 1,\n ));\n result = boxedValues[rebase];\n !result && (result = boxedValues[rebase] = create(value_0));\n return result;\n }\n return create(value_0);\n}\n\nfunction gte(a, b) {\n var signa, signb;\n signa = a.h >> 19;\n signb = b.h >> 19;\n return signa == 0\n ? signb != 0 ||\n a.h > b.h ||\n (a.h == b.h && a.m > b.m) ||\n (a.h == b.h && a.m == b.m && a.l >= b.l)\n : !(\n signb == 0 ||\n a.h < b.h ||\n (a.h == b.h && a.m < b.m) ||\n (a.h == b.h && a.m == b.m && a.l < b.l)\n );\n}\n\nfunction neq(a, b) {\n return a.l != b.l || a.m != b.m || a.h != b.h;\n}\n\nfunction or(a, b) {\n return { l: a.l | b.l, m: a.m | b.m, h: a.h | b.h };\n}\n\nfunction shl(a, n) {\n var res0, res1, res2;\n n &= 63;\n if (n < 22) {\n res0 = a.l << n;\n res1 = (a.m << n) | (a.l >> (22 - n));\n res2 = (a.h << n) | (a.m >> (22 - n));\n } else if (n < 44) {\n res0 = 0;\n res1 = a.l << (n - 22);\n res2 = (a.m << (n - 22)) | (a.l >> (44 - n));\n } else {\n res0 = 0;\n res1 = 0;\n res2 = a.l << (n - 44);\n }\n return { l: res0 & $intern_9, m: res1 & $intern_9, h: res2 & $intern_10 };\n}\n\nfunction shr(a, n) {\n var a2, negative, res0, res1, res2;\n n &= 63;\n a2 = a.h;\n negative = (a2 & $intern_11) != 0;\n negative && (a2 |= -1048576);\n if (n < 22) {\n res2 = a2 >> n;\n res1 = (a.m >> n) | (a2 << (22 - n));\n res0 = (a.l >> n) | (a.m << (22 - n));\n } else if (n < 44) {\n res2 = negative ? $intern_10 : 0;\n res1 = a2 >> (n - 22);\n res0 = (a.m >> (n - 22)) | (a2 << (44 - n));\n } else {\n res2 = negative ? $intern_10 : 0;\n res1 = negative ? $intern_9 : 0;\n res0 = a2 >> (n - 44);\n }\n return { l: res0 & $intern_9, m: res1 & $intern_9, h: res2 & $intern_10 };\n}\n\nfunction sub_0(a, b) {\n var sum0, sum1, sum2;\n sum0 = a.l - b.l;\n sum1 = a.m - b.m + (sum0 >> 22);\n sum2 = a.h - b.h + (sum1 >> 22);\n return { l: sum0 & $intern_9, m: sum1 & $intern_9, h: sum2 & $intern_10 };\n}\n\nfunction toInt(a) {\n return a.l | (a.m << 22);\n}\n\nvar boxedValues;\n\nfunction AbstractStringBuilder(string) {\n this.string = string;\n}\n\nfunction max_0(x_0, y_0) {\n return x_0 > y_0 ? x_0 : y_0;\n}\n\nfunction min_0(x_0, y_0) {\n return x_0 < y_0 ? x_0 : y_0;\n}\n\nfunction $indexOf_0(this$static, str) {\n return this$static.indexOf(str);\n}\n\nfunction _String(value_0) {\n return __valueOf(value_0, 0, value_0.length);\n}\n\nfunction __valueOf(x_0, start_0, end) {\n var s = \"\";\n for (var batchStart = start_0; batchStart < end; ) {\n var batchEnd = Math.min(batchStart + 10000, end);\n s += String.fromCharCode.apply(null, x_0.slice(batchStart, batchEnd));\n batchStart = batchEnd;\n }\n return s;\n}\n\nfunction fromCodePoint(codePoint) {\n return String.fromCharCode(codePoint & $intern_20);\n}\n\nvar Ljava_lang_String_2_classLit = createForClass(\"java.lang\", \"String\", 2);\n\nfunction $append(this$static) {\n this$static.string += \" \";\n return this$static;\n}\n\nfunction $append_1(this$static, x_0) {\n this$static.string += x_0;\n return this$static;\n}\n\nfunction StringBuffer() {\n AbstractStringBuilder.call(this, \"\");\n}\n\nfunction equals_7(array1, array2) {\n var i;\n if (array1 === array2) {\n return true;\n }\n if (array1.length != array2.length) {\n return false;\n }\n for (i = 0; i < array1.length; ++i) {\n if (array1[i] != array2[i]) {\n return false;\n }\n }\n return true;\n}\n\nlet $clinit_CoordCube_ran = false;\nfunction $clinit_CoordCube() {\n if ($clinit_CoordCube_ran) {\n return;\n }\n $clinit_CoordCube_ran = true;\n UDSliceMove = initDims(\n C_classLit,\n [$intern_3, $intern_26],\n [11, 0],\n 7,\n [495, 18],\n 2,\n );\n TwistMove = initDims(\n C_classLit,\n [$intern_3, $intern_26],\n [11, 0],\n 7,\n [324, 18],\n 2,\n );\n FlipMove = initDims(\n C_classLit,\n [$intern_3, $intern_26],\n [11, 0],\n 7,\n [336, 18],\n 2,\n );\n UDSliceConj = initDims(\n C_classLit,\n [$intern_3, $intern_26],\n [11, 0],\n 7,\n [495, 8],\n 2,\n );\n UDSliceTwistPrun = initDim(I_classLit, $intern_27, 0, 20048, 7, 1);\n UDSliceFlipPrun = initDim(I_classLit, $intern_27, 0, 20791, 7, 1);\n TwistFlipPrun = initDim(I_classLit, $intern_27, 0, 82945, 7, 1);\n CPermMove = initDims(\n C_classLit,\n [$intern_3, $intern_26],\n [11, 0],\n 7,\n [2768, 10],\n 2,\n );\n EPermMove = initDims(\n C_classLit,\n [$intern_3, $intern_26],\n [11, 0],\n 7,\n [2768, 10],\n 2,\n );\n MPermMove = initDims(\n C_classLit,\n [$intern_3, $intern_26],\n [11, 0],\n 7,\n [24, 10],\n 2,\n );\n MPermConj = initDims(\n C_classLit,\n [$intern_3, $intern_26],\n [11, 0],\n 7,\n [24, 16],\n 2,\n );\n CCombPConj = initDims(\n C_classLit,\n [$intern_3, $intern_26],\n [11, 0],\n 7,\n [140, 16],\n 2,\n );\n MCPermPrun = initDim(I_classLit, $intern_27, 0, 8305, 7, 1);\n EPermCCombPPrun = initDim(I_classLit, $intern_27, 0, 48441, 7, 1);\n}\n\nfunction $doMovePrun(this$static, cc, m) {\n this$static.slice_0 = UDSliceMove[cc.slice_0][m];\n this$static.flip =\n FlipMove[cc.flip][($clinit_CubieCube(), Sym8Move)[(m << 3) | cc.fsym]];\n this$static.fsym = (this$static.flip & 7) ^ cc.fsym;\n this$static.flip >>= 3;\n this$static.twist = TwistMove[cc.twist][Sym8Move[(m << 3) | cc.tsym]];\n this$static.tsym = (this$static.twist & 7) ^ cc.tsym;\n this$static.twist >>= 3;\n this$static.prun = max_0(\n max_0(\n getPruning(\n UDSliceTwistPrun,\n this$static.twist * 495 +\n UDSliceConj[this$static.slice_0][this$static.tsym],\n ),\n getPruning(\n UDSliceFlipPrun,\n this$static.flip * 495 +\n UDSliceConj[this$static.slice_0][this$static.fsym],\n ),\n ),\n getPruning(\n TwistFlipPrun,\n (this$static.twist << 11) |\n FlipS2RF[\n (this$static.flip << 3) | (this$static.fsym ^ this$static.tsym)\n ],\n ),\n );\n return this$static.prun;\n}\n\nfunction $doMovePrunConj(this$static, cc, m) {\n m = ($clinit_CubieCube(), SymMove_0)[3][m];\n this$static.flipc =\n FlipMove[cc.flipc >> 3][Sym8Move[(m << 3) | (cc.flipc & 7)]] ^\n (cc.flipc & 7);\n this$static.twistc =\n TwistMove[cc.twistc >> 3][Sym8Move[(m << 3) | (cc.twistc & 7)]] ^\n (cc.twistc & 7);\n return getPruning(\n TwistFlipPrun,\n ((this$static.twistc >> 3) << 11) |\n FlipS2RF[this$static.flipc ^ (this$static.twistc & 7)],\n );\n}\n\nfunction $setWithPrun(this$static, cc, depth) {\n var pc;\n this$static.twist = ($clinit_CubieCube(), TwistR2S)[$getTwist(cc)];\n this$static.flip = FlipR2S[$getFlip(cc)];\n this$static.tsym = this$static.twist & 7;\n this$static.twist = this$static.twist >> 3;\n this$static.prun = getPruning(\n TwistFlipPrun,\n (this$static.twist << 11) | FlipS2RF[this$static.flip ^ this$static.tsym],\n );\n if (this$static.prun > depth) {\n return false;\n }\n this$static.fsym = this$static.flip & 7;\n this$static.flip = this$static.flip >> 3;\n this$static.slice_0 = 494 - getComb(cc.ea, 8, true);\n this$static.prun = max_0(\n this$static.prun,\n max_0(\n getPruning(\n UDSliceTwistPrun,\n this$static.twist * 495 +\n UDSliceConj[this$static.slice_0][this$static.tsym],\n ),\n getPruning(\n UDSliceFlipPrun,\n this$static.flip * 495 +\n UDSliceConj[this$static.slice_0][this$static.fsym],\n ),\n ),\n );\n if (this$static.prun > depth) {\n return false;\n }\n pc = new CubieCube();\n CornConjugate(cc, 1, pc);\n EdgeConjugate(cc, 1, pc);\n this$static.twistc = TwistR2S[$getTwist(pc)];\n this$static.flipc = FlipR2S[$getFlip(pc)];\n this$static.prun = max_0(\n this$static.prun,\n getPruning(\n TwistFlipPrun,\n ((this$static.twistc >> 3) << 11) |\n FlipS2RF[this$static.flipc ^ (this$static.twistc & 7)],\n ),\n );\n return this$static.prun <= depth;\n}\n\nfunction CoordCube() {\n $clinit_CoordCube();\n}\n\nfunction getPruning(table, index_0) {\n $clinit_CoordCube();\n return (table[index_0 >> 3] >> (index_0 << 2)) & 15;\n}\n\nfunction init_0(fullInit) {\n $clinit_CoordCube();\n if (initLevel == 2 || (initLevel == 1 && !fullInit)) {\n return;\n }\n if (initLevel == 0) {\n initPermSym2Raw();\n initCPermMove();\n initEPermMove();\n initMPermMoveConj();\n initCombPMoveConj();\n $clinit_CubieCube();\n initSym2Raw(\n 2048,\n FlipS2R,\n FlipR2S,\n (SymStateFlip = initDim(C_classLit, $intern_26, 0, 336, 7, 1)),\n 0,\n );\n initSym2Raw(\n 2187,\n TwistS2R,\n TwistR2S,\n (SymStateTwist = initDim(C_classLit, $intern_26, 0, 324, 7, 1)),\n 1,\n );\n initFlipMove();\n initTwistMove();\n initUDSliceMoveConj();\n }\n initRawSymPrun(\n MCPermPrun,\n MPermMove,\n MPermConj,\n CPermMove,\n ($clinit_CubieCube(), SymStatePerm),\n 584244,\n fullInit,\n );\n initRawSymPrun(\n EPermCCombPPrun,\n CCombPMove,\n CCombPConj,\n EPermMove,\n SymStatePerm,\n 514084,\n fullInit,\n );\n initRawSymPrun(\n UDSliceTwistPrun,\n UDSliceMove,\n UDSliceConj,\n TwistMove,\n SymStateTwist,\n 431619,\n fullInit,\n );\n initRawSymPrun(\n UDSliceFlipPrun,\n UDSliceMove,\n UDSliceConj,\n FlipMove,\n SymStateFlip,\n 431619,\n fullInit,\n );\n initRawSymPrun(\n TwistFlipPrun,\n null,\n null,\n TwistMove,\n SymStateTwist,\n 103939,\n fullInit,\n );\n initLevel = fullInit ? 2 : 1;\n}\n\nfunction initCPermMove() {\n var c, d, i, j;\n c = new CubieCube();\n d = new CubieCube();\n for (i = 0; i < 2768; i++) {\n $setCPerm(c, ($clinit_CubieCube(), EPermS2R)[i]);\n for (j = 0; j < 10; j++) {\n CornMult(c, moveCube[($clinit_Util(), ud2std)[j]], d);\n CPermMove[i][j] =\n ESym2CSym(EPermR2S[getNPerm(d.ca, 8, false)]) & $intern_20;\n }\n }\n}\n\nfunction initCombPMoveConj() {\n var c, d, i, j, j0;\n c = new CubieCube();\n d = new CubieCube();\n CCombPMove = initDims(\n C_classLit,\n [$intern_3, $intern_26],\n [11, 0],\n 7,\n [140, 10],\n 2,\n );\n for (i = 0; i < 140; i++) {\n setComb(c.ca, i % 70, 0, false);\n for (j0 = 0; j0 < 10; j0++) {\n CornMult(\n c,\n ($clinit_CubieCube(), moveCube)[($clinit_Util(), ud2std)[j0]],\n d,\n );\n CCombPMove[i][j0] =\n (getComb(d.ca, 0, false) + 70 * (((165 >> j0) & 1) ^ ~~(i / 70))) &\n $intern_20;\n }\n for (j = 0; j < 16; j++) {\n CornConjugate(c, ($clinit_CubieCube(), SymMultInv)[0][j], d);\n CCombPConj[i][j] =\n (getComb(d.ca, 0, false) + 70 * ~~(i / 70)) & $intern_20;\n }\n }\n}\n\nfunction initEPermMove() {\n var c, d, i, j;\n c = new CubieCube();\n d = new CubieCube();\n for (i = 0; i < 2768; i++) {\n $setEPerm(c, ($clinit_CubieCube(), EPermS2R)[i]);\n for (j = 0; j < 10; j++) {\n EdgeMult(c, moveCube[($clinit_Util(), ud2std)[j]], d);\n EPermMove[i][j] = EPermR2S[getNPerm(d.ea, 8, true)];\n }\n }\n}\n\nfunction initFlipMove() {\n var c, d, i, j;\n c = new CubieCube();\n d = new CubieCube();\n for (i = 0; i < 336; i++) {\n $setFlip(c, ($clinit_CubieCube(), FlipS2R)[i]);\n for (j = 0; j < 18; j++) {\n EdgeMult(c, moveCube[j], d);\n FlipMove[i][j] = FlipR2S[$getFlip(d)];\n }\n }\n}\n\nfunction initMPermMoveConj() {\n var c, d, i, j, j0;\n c = new CubieCube();\n d = new CubieCube();\n for (i = 0; i < 24; i++) {\n setNPerm(c.ea, i, 12, true);\n for (j0 = 0; j0 < 10; j0++) {\n EdgeMult(\n c,\n ($clinit_CubieCube(), moveCube)[($clinit_Util(), ud2std)[j0]],\n d,\n );\n MPermMove[i][j0] = getNPerm(d.ea, 12, true) % 24 & $intern_20;\n }\n for (j = 0; j < 16; j++) {\n EdgeConjugate(c, ($clinit_CubieCube(), SymMultInv)[0][j], d);\n MPermConj[i][j] = getNPerm(d.ea, 12, true) % 24 & $intern_20;\n }\n }\n}\n\nfunction initRawSymPrun(\n PrunTable,\n RawMove,\n RawConj,\n SymMove,\n SymState,\n PrunFlag,\n fullInit,\n) {\n var INV_DEPTH,\n ISTFP,\n IS_PHASE2,\n MAX_DEPTH,\n MIN_DEPTH,\n NEXT_AXIS_MAGIC,\n N_MOVES,\n N_RAW,\n N_SIZE,\n SEARCH_DEPTH,\n SYM_E2C_MAGIC,\n SYM_MASK,\n SYM_SHIFT,\n check,\n depth,\n flip,\n fsym,\n i,\n i0,\n idx,\n idxx,\n inv,\n j,\n m,\n mask,\n prun,\n raw,\n rawx,\n selArrMask,\n select,\n sym,\n symState,\n symx,\n val,\n val0,\n xorVal;\n SYM_SHIFT = PrunFlag & 15;\n SYM_E2C_MAGIC = ((PrunFlag >> 4) & 1) == 1 ? $intern_28 : 0;\n IS_PHASE2 = ((PrunFlag >> 5) & 1) == 1;\n INV_DEPTH = (PrunFlag >> 8) & 15;\n MAX_DEPTH = (PrunFlag >> 12) & 15;\n MIN_DEPTH = (PrunFlag >> 16) & 15;\n SEARCH_DEPTH = fullInit ? MAX_DEPTH : MIN_DEPTH;\n SYM_MASK = (1 << SYM_SHIFT) - 1;\n ISTFP = RawMove == null;\n N_RAW = ISTFP ? 2048 : RawMove.length;\n N_SIZE = N_RAW * SymMove.length;\n N_MOVES = IS_PHASE2 ? 10 : 18;\n NEXT_AXIS_MAGIC = N_MOVES == 10 ? 66 : 599186;\n depth = ((PrunTable[N_SIZE >> 3] >> (N_SIZE << 2)) & 15) - 1;\n\n if (depth == -1) {\n for (i = 0; i < ~~(N_SIZE / 8) + 1; i++) {\n PrunTable[i] = $intern_29;\n }\n PrunTable[0] ^= 1;\n depth = 0;\n }\n while (depth < SEARCH_DEPTH) {\n mask = ((depth + 1) * $intern_29) ^ -1;\n for (i0 = 0; i0 < PrunTable.length; i0++) {\n val0 = PrunTable[i0] ^ mask;\n val0 &= val0 >> 1;\n PrunTable[i0] += val0 & (val0 >> 2) & $intern_29;\n }\n inv = depth > INV_DEPTH;\n select = inv ? depth + 2 : depth;\n selArrMask = select * $intern_29;\n check = inv ? depth : depth + 2;\n ++depth;\n xorVal = depth ^ (depth + 1);\n val = 0;\n for (i = 0; i < N_SIZE; ++i, val >>= 4) {\n if ((i & 7) == 0) {\n val = PrunTable[i >> 3];\n if (\n (((val ^ selArrMask) - $intern_29) &\n ~(val ^ selArrMask) &\n -2004318072) ==\n 0\n ) {\n i += 7;\n continue;\n }\n }\n if ((val & 15) != select) {\n continue;\n }\n raw = i % N_RAW;\n sym = ~~(i / N_RAW);\n flip = 0;\n fsym = 0;\n if (ISTFP) {\n flip = ($clinit_CubieCube(), FlipR2S)[raw];\n fsym = flip & 7;\n flip >>= 3;\n }\n for (m = 0; m < N_MOVES; m++) {\n symx = SymMove[sym][m];\n ISTFP\n ? (rawx = ($clinit_CubieCube(), FlipS2RF)[\n FlipMove[flip][Sym8Move[(m << 3) | fsym]] ^\n fsym ^\n (symx & SYM_MASK)\n ])\n : (rawx = RawConj[RawMove[raw][m]][symx & SYM_MASK]);\n symx >>= SYM_SHIFT;\n idx = symx * N_RAW + rawx;\n prun = (PrunTable[idx >> 3] >> (idx << 2)) & 15;\n if (prun != check) {\n prun < depth - 1 && (m += (NEXT_AXIS_MAGIC >> m) & 3);\n continue;\n }\n if (inv) {\n PrunTable[i >> 3] ^= xorVal << (i << 2);\n break;\n }\n PrunTable[idx >> 3] ^= xorVal << (idx << 2);\n for (j = 1, symState = SymState[symx]; (symState >>= 1) != 0; j++) {\n if ((symState & 1) != 1) {\n continue;\n }\n idxx = symx * N_RAW;\n ISTFP\n ? (idxx += ($clinit_CubieCube(), FlipS2RF)[FlipR2S[rawx] ^ j])\n : (idxx += RawConj[rawx][j ^ ((SYM_E2C_MAGIC >> (j << 1)) & 3)]);\n if (((PrunTable[idxx >> 3] >> (idxx << 2)) & 15) == check) {\n PrunTable[idxx >> 3] ^= xorVal << (idxx << 2);\n }\n }\n }\n }\n }\n}\n\nfunction initTwistMove() {\n var c, d, i, j;\n c = new CubieCube();\n d = new CubieCube();\n for (i = 0; i < 324; i++) {\n $setTwist(c, ($clinit_CubieCube(), TwistS2R)[i]);\n for (j = 0; j < 18; j++) {\n CornMult(c, moveCube[j], d);\n TwistMove[i][j] = TwistR2S[$getTwist(d)];\n }\n }\n}\n\nfunction initUDSliceMoveConj() {\n var c, d, i, i0, j, j0, k, udslice;\n c = new CubieCube();\n d = new CubieCube();\n for (i0 = 0; i0 < 495; i0++) {\n setComb(c.ea, 494 - i0, 8, true);\n for (j0 = 0; j0 < 18; j0 += 3) {\n EdgeMult(c, ($clinit_CubieCube(), moveCube)[j0], d);\n UDSliceMove[i0][j0] = (494 - getComb(d.ea, 8, true)) & $intern_20;\n }\n for (j = 0; j < 16; j += 2) {\n EdgeConjugate(c, ($clinit_CubieCube(), SymMultInv)[0][j], d);\n UDSliceConj[i0][j >> 1] = (494 - getComb(d.ea, 8, true)) & $intern_20;\n }\n }\n for (i = 0; i < 495; i++) {\n for (j = 0; j < 18; j += 3) {\n udslice = UDSliceMove[i][j];\n for (k = 1; k < 3; k++) {\n udslice = UDSliceMove[udslice][j];\n UDSliceMove[i][j + k] = udslice & $intern_20;\n }\n }\n }\n}\n\ndefineClass(31, 1, { 31: 1 }, CoordCube);\n_.flip = 0;\n_.flipc = 0;\n_.fsym = 0;\n_.prun = 0;\n_.slice_0 = 0;\n_.tsym = 0;\n_.twist = 0;\n_.twistc = 0;\nvar CCombPConj,\n CCombPMove,\n CPermMove,\n EPermCCombPPrun,\n EPermMove,\n FlipMove,\n MCPermPrun,\n MPermConj,\n MPermMove,\n TwistFlipPrun,\n TwistMove,\n UDSliceConj,\n UDSliceFlipPrun,\n UDSliceMove,\n UDSliceTwistPrun,\n initLevel = 0;\nvar Lorg_cubing_min2phase_client_CoordCube_2_classLit = createForClass(\n \"org.cubing.min2phase.client\",\n \"CoordCube\",\n 31,\n);\nlet $clinit_CubieCube_ran = false;\nfunction $clinit_CubieCube() {\n if ($clinit_CubieCube_ran) {\n return;\n }\n $clinit_CubieCube_ran = true;\n CubeSym = initDim(\n Lorg_cubing_min2phase_client_CubieCube_2_classLit,\n $intern_3,\n 7,\n 16,\n 0,\n 1,\n );\n moveCube = initDim(\n Lorg_cubing_min2phase_client_CubieCube_2_classLit,\n $intern_3,\n 7,\n 18,\n 0,\n 1,\n );\n moveCubeSym = initDim(J_classLit, $intern_3, 0, 18, 6, 1);\n firstMoveSym = initDim(I_classLit, $intern_27, 0, 48, 7, 1);\n SymMult = initDims(\n I_classLit,\n [$intern_3, $intern_27],\n [17, 0],\n 7,\n [16, 16],\n 2,\n );\n SymMultInv = initDims(\n I_classLit,\n [$intern_3, $intern_27],\n [17, 0],\n 7,\n [16, 16],\n 2,\n );\n SymMove_0 = initDims(\n I_classLit,\n [$intern_3, $intern_27],\n [17, 0],\n 7,\n [16, 18],\n 2,\n );\n Sym8Move = initDim(I_classLit, $intern_27, 0, 144, 7, 1);\n SymMoveUD = initDims(\n I_classLit,\n [$intern_3, $intern_27],\n [17, 0],\n 7,\n [16, 18],\n 2,\n );\n FlipS2R = initDim(C_classLit, $intern_26, 0, 336, 7, 1);\n TwistS2R = initDim(C_classLit, $intern_26, 0, 324, 7, 1);\n EPermS2R = initDim(C_classLit, $intern_26, 0, 2768, 7, 1);\n Perm2CombP = initDim(B_classLit, $intern_30, 0, 2768, 7, 1);\n PermInvEdgeSym = initDim(C_classLit, $intern_26, 0, 2768, 7, 1);\n MPermInv = initDim(B_classLit, $intern_30, 0, 24, 7, 1);\n FlipR2S = initDim(C_classLit, $intern_26, 0, 2048, 7, 1);\n TwistR2S = initDim(C_classLit, $intern_26, 0, 2187, 7, 1);\n EPermR2S = initDim(C_classLit, $intern_26, 0, 40320, 7, 1);\n FlipS2RF = initDim(C_classLit, $intern_26, 0, 2688, 7, 1);\n urf1 = new CubieCube_0(2531, 1373, 67026819, 1367);\n urf2 = new CubieCube_0(2089, 1906, 322752913, 2040);\n urfMove = initValues(\n getClassLiteralForArray(B_classLit, 2),\n $intern_3,\n 10,\n 0,\n [\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [6, 7, 8, 0, 1, 2, 3, 4, 5, 15, 16, 17, 9, 10, 11, 12, 13, 14],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [3, 4, 5, 6, 7, 8, 0, 1, 2, 12, 13, 14, 15, 16, 17, 9, 10, 11],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [2, 1, 0, 5, 4, 3, 8, 7, 6, 11, 10, 9, 14, 13, 12, 17, 16, 15],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [8, 7, 6, 2, 1, 0, 5, 4, 3, 17, 16, 15, 11, 10, 9, 14, 13, 12],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [5, 4, 3, 8, 7, 6, 2, 1, 0, 14, 13, 12, 17, 16, 15, 11, 10, 9],\n ),\n ],\n );\n initMove();\n initSym();\n}\n\nfunction $$init(this$static) {\n this$static.ca = initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [0, 1, 2, 3, 4, 5, 6, 7],\n );\n this$static.ea = initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22],\n );\n}\n\nfunction $URFConjugate(this$static) {\n !this$static.temps && (this$static.temps = new CubieCube());\n CornMult(urf2, this$static, this$static.temps);\n CornMult(this$static.temps, urf1, this$static);\n EdgeMult(urf2, this$static, this$static.temps);\n EdgeMult(this$static.temps, urf1, this$static);\n}\n\nfunction $copy(this$static, c) {\n var i, i0;\n for (i0 = 0; i0 < 8; i0++) {\n this$static.ca[i0] = c.ca[i0];\n }\n for (i = 0; i < 12; i++) {\n this$static.ea[i] = c.ea[i];\n }\n}\n\nfunction $getCPermSym(this$static) {\n return ESym2CSym(EPermR2S[getNPerm(this$static.ca, 8, false)]);\n}\n\nfunction $getEPermSym(this$static) {\n return EPermR2S[getNPerm(this$static.ea, 8, true)];\n}\n\nfunction $getFlip(this$static) {\n var i, idx;\n idx = 0;\n for (i = 0; i < 11; i++) {\n idx = (idx << 1) | (this$static.ea[i] & 1);\n }\n return idx;\n}\n\nfunction $getTwist(this$static) {\n var i, idx;\n idx = 0;\n for (i = 0; i < 7; i++) {\n idx += (idx << 1) + (this$static.ca[i] >> 3);\n }\n return idx;\n}\n\nfunction $invCubieCube(this$static) {\n var corn, edge;\n !this$static.temps && (this$static.temps = new CubieCube());\n for (edge = 0; edge < 12; edge++) {\n this$static.temps.ea[this$static.ea[edge] >> 1] =\n (((edge << 1) | (this$static.ea[edge] & 1)) << 24) >> 24;\n }\n for (corn = 0; corn < 8; corn++) {\n this$static.temps.ca[this$static.ca[corn] & 7] =\n ((corn | ((32 >> (this$static.ca[corn] >> 3)) & 24)) << 24) >> 24;\n }\n $copy(this$static, this$static.temps);\n}\n\nfunction $selfSymmetry(this$static) {\n var c, cperm, cpermx, d, i, sym, urfInv;\n c = new CubieCube_1(this$static);\n d = new CubieCube();\n cperm = ESym2CSym(EPermR2S[getNPerm(c.ca, 8, false)]) >> 4;\n sym = { l: 0, m: 0, h: 0 };\n for (urfInv = 0; urfInv < 6; urfInv++) {\n cpermx = ESym2CSym(EPermR2S[getNPerm(c.ca, 8, false)]) >> 4;\n if (cperm == cpermx) {\n for (i = 0; i < 16; i++) {\n CornConjugate(c, SymMultInv[0][i], d);\n if (equals_7(d.ca, this$static.ca)) {\n EdgeConjugate(c, SymMultInv[0][i], d);\n equals_7(d.ea, this$static.ea) &&\n (sym = or(\n sym,\n shl(\n { l: 1, m: 0, h: 0 },\n ((urfInv << 4) | i) < 48 ? (urfInv << 4) | i : 48,\n ),\n ));\n }\n }\n }\n $URFConjugate(c);\n urfInv % 3 == 2 && $invCubieCube(c);\n }\n return sym;\n}\n\nfunction $setCPerm(this$static, idx) {\n setNPerm(this$static.ca, idx, 8, false);\n}\n\nfunction $setEPerm(this$static, idx) {\n setNPerm(this$static.ea, idx, 8, true);\n}\n\nfunction $setFlip(this$static, idx) {\n var i, parity, val;\n parity = 0;\n for (i = 10; i >= 0; --i, idx >>= 1) {\n parity ^= val = idx & 1;\n this$static.ea[i] = (((this$static.ea[i] & -2) | val) << 24) >> 24;\n }\n this$static.ea[11] = (((this$static.ea[11] & -2) | parity) << 24) >> 24;\n}\n\nfunction $setTwist(this$static, idx) {\n var i, twst, val;\n twst = 15;\n for (i = 6; i >= 0; --i, idx = ~~(idx / 3)) {\n twst -= val = idx % 3;\n this$static.ca[i] = (((this$static.ca[i] & 7) | (val << 3)) << 24) >> 24;\n }\n this$static.ca[7] = (((this$static.ca[7] & 7) | (twst % 3 << 3)) << 24) >> 24;\n}\n\nfunction $verify(this$static) {\n var c, cornMask, e, edgeMask, sum;\n sum = 0;\n edgeMask = 0;\n for (e = 0; e < 12; e++) {\n edgeMask |= 1 << (this$static.ea[e] >> 1);\n sum ^= this$static.ea[e] & 1;\n }\n if (edgeMask != 4095) {\n return -2;\n }\n if (sum != 0) {\n return -3;\n }\n cornMask = 0;\n sum = 0;\n for (c = 0; c < 8; c++) {\n cornMask |= 1 << (this$static.ca[c] & 7);\n sum += this$static.ca[c] >> 3;\n }\n if (cornMask != 255) {\n return -4;\n }\n if (sum % 3 != 0) {\n return -5;\n }\n if (\n (getNParity(getNPerm(this$static.ea, 12, true), 12) ^\n getNParity(getNPerm(this$static.ca, 8, false), 8)) !=\n 0\n ) {\n return -6;\n }\n return 0;\n}\n\nfunction CornConjugate(a, idx, b) {\n $clinit_CubieCube();\n var corn, ori, oriA, oriB, s, sinv;\n sinv = CubeSym[SymMultInv[0][idx]];\n s = CubeSym[idx];\n for (corn = 0; corn < 8; corn++) {\n oriA = sinv.ca[a.ca[s.ca[corn] & 7] & 7] >> 3;\n oriB = a.ca[s.ca[corn] & 7] >> 3;\n ori = oriA < 3 ? oriB : (3 - oriB) % 3;\n b.ca[corn] =\n (((sinv.ca[a.ca[s.ca[corn] & 7] & 7] & 7) | (ori << 3)) << 24) >> 24;\n }\n}\n\nfunction CornMult(a, b, prod) {\n $clinit_CubieCube();\n var corn, oriA, oriB;\n for (corn = 0; corn < 8; corn++) {\n oriA = a.ca[b.ca[corn] & 7] >> 3;\n oriB = b.ca[corn] >> 3;\n prod.ca[corn] =\n (((a.ca[b.ca[corn] & 7] & 7) | ((oriA + oriB) % 3 << 3)) << 24) >> 24;\n }\n}\n\nfunction CornMultFull(a, b, prod) {\n var corn, ori, oriA, oriB;\n for (corn = 0; corn < 8; corn++) {\n oriA = a.ca[b.ca[corn] & 7] >> 3;\n oriB = b.ca[corn] >> 3;\n ori = oriA + (oriA < 3 ? oriB : 6 - oriB);\n ori = (ori % 3) + (oriA < 3 == oriB < 3 ? 0 : 3);\n prod.ca[corn] = (((a.ca[b.ca[corn] & 7] & 7) | (ori << 3)) << 24) >> 24;\n }\n}\n\nfunction CubieCube() {\n $clinit_CubieCube();\n $$init(this);\n}\n\nfunction CubieCube_0(cperm, twist, eperm, flip) {\n $$init(this);\n setNPerm(this.ca, cperm, 8, false);\n $setTwist(this, twist);\n setNPerm(this.ea, eperm, 12, true);\n $setFlip(this, flip);\n}\n\nfunction CubieCube_1(c) {\n $$init(this);\n $copy(this, c);\n}\n\nfunction ESym2CSym(idx) {\n $clinit_CubieCube();\n return idx ^ (($intern_28 >> ((idx & 15) << 1)) & 3);\n}\n\nfunction EdgeConjugate(a, idx, b) {\n $clinit_CubieCube();\n var ed, s, sinv;\n sinv = CubeSym[SymMultInv[0][idx]];\n s = CubeSym[idx];\n for (ed = 0; ed < 12; ed++) {\n b.ea[ed] =\n ((sinv.ea[a.ea[s.ea[ed] >> 1] >> 1] ^\n (a.ea[s.ea[ed] >> 1] & 1) ^\n (s.ea[ed] & 1)) <<\n 24) >>\n 24;\n }\n}\n\nfunction EdgeMult(a, b, prod) {\n $clinit_CubieCube();\n var ed;\n for (ed = 0; ed < 12; ed++) {\n prod.ea[ed] = ((a.ea[b.ea[ed] >> 1] ^ (b.ea[ed] & 1)) << 24) >> 24;\n }\n}\n\nfunction getPermSymInv(idx, sym, isCorner) {\n $clinit_CubieCube();\n var idxi;\n idxi = PermInvEdgeSym[idx];\n isCorner && (idxi = idxi ^ (($intern_28 >> ((idxi & 15) << 1)) & 3));\n return (idxi & 65520) | SymMult[idxi & 15][sym];\n}\n\nfunction getSkipMoves() {\n $clinit_CubieCube();\n // var i, ret;\n // ret = 0;\n // for (i = 1; neq((ssym = shr(ssym, 1)), { l: 0, m: 0, h: 0 }); i++) {\n // eq(and(ssym, { l: 1, m: 0, h: 0 }), { l: 1, m: 0, h: 0 }) &&\n // (ret |= firstMoveSym[i]);\n // }\n return 0;\n}\n\nfunction initMove() {\n var a, p;\n moveCube[0] = new CubieCube_0(15120, 0, 119750400, 0);\n moveCube[3] = new CubieCube_0(21021, 1494, 323403417, 0);\n moveCube[6] = new CubieCube_0(8064, 1236, 29441808, 550);\n moveCube[9] = new CubieCube_0(9, 0, 5880, 0);\n moveCube[12] = new CubieCube_0(1230, 412, 2949660, 0);\n moveCube[15] = new CubieCube_0(224, 137, 328552, 137);\n for (a = 0; a < 18; a += 3) {\n for (p = 0; p < 2; p++) {\n moveCube[a + p + 1] = new CubieCube();\n EdgeMult(moveCube[a + p], moveCube[a], moveCube[a + p + 1]);\n CornMult(moveCube[a + p], moveCube[a], moveCube[a + p + 1]);\n }\n }\n}\n\nfunction initPermSym2Raw() {\n $clinit_CubieCube();\n var cc, i, i0;\n initSym2Raw(\n 40320,\n EPermS2R,\n EPermR2S,\n (SymStatePerm = initDim(C_classLit, $intern_26, 0, 2768, 7, 1)),\n 2,\n );\n cc = new CubieCube();\n for (i0 = 0; i0 < 2768; i0++) {\n $setEPerm(cc, EPermS2R[i0]);\n Perm2CombP[i0] =\n ((getComb(cc.ea, 0, true) + getNParity(EPermS2R[i0], 8) * 70) << 24) >>\n 24;\n $invCubieCube(cc);\n PermInvEdgeSym[i0] = EPermR2S[getNPerm(cc.ea, 8, true)];\n }\n for (i = 0; i < 24; i++) {\n setNPerm(cc.ea, i, 12, true);\n $invCubieCube(cc);\n MPermInv[i] = (getNPerm(cc.ea, 12, true) % 24 << 24) >> 24;\n }\n}\n\nfunction initSym() {\n var c, d, f2, i, i0, i1, i2, j, j0, j1, k, lr2, m, s, t, u4;\n c = new CubieCube();\n d = new CubieCube();\n f2 = new CubieCube_0(28783, 0, 259268407, 0);\n u4 = new CubieCube_0(15138, 0, 119765538, 7);\n lr2 = new CubieCube_0(5167, 0, 83473207, 0);\n for (i0 = 0; i0 < 8; i0++) {\n lr2.ca[i0] = narrow_byte(lr2.ca[i0] | 24);\n }\n for (i1 = 0; i1 < 16; i1++) {\n CubeSym[i1] = new CubieCube_1(c);\n CornMultFull(c, u4, d);\n EdgeMult(c, u4, d);\n t = d;\n d = c;\n c = t;\n if (i1 % 4 == 3) {\n CornMultFull(t, lr2, d);\n EdgeMult(t, lr2, d);\n t = d;\n d = c;\n c = t;\n }\n if (i1 % 8 == 7) {\n CornMultFull(t, f2, d);\n EdgeMult(t, f2, d);\n t = d;\n d = c;\n c = t;\n }\n }\n for (i2 = 0; i2 < 16; i2++) {\n for (j0 = 0; j0 < 16; j0++) {\n CornMultFull(CubeSym[i2], CubeSym[j0], c);\n for (k = 0; k < 16; k++) {\n if (equals_7(CubeSym[k].ca, c.ca)) {\n SymMult[i2][j0] = k;\n SymMultInv[k][j0] = i2;\n break;\n }\n }\n }\n }\n for (j1 = 0; j1 < 18; j1++) {\n for (s = 0; s < 16; s++) {\n CornConjugate(moveCube[j1], SymMultInv[0][s], c);\n for (m = 0; m < 18; m++) {\n if (equals_7(moveCube[m].ca, c.ca)) {\n SymMove_0[s][j1] = m;\n SymMoveUD[s][($clinit_Util(), std2ud)[j1]] = std2ud[m];\n break;\n }\n }\n s % 2 == 0 && (Sym8Move[(j1 << 3) | (s >> 1)] = SymMove_0[s][j1]);\n }\n }\n for (i = 0; i < 18; i++) {\n moveCubeSym[i] = $selfSymmetry(moveCube[i]);\n j = i;\n for (s = 0; s < 48; s++) {\n SymMove_0[s % 16][j] < i && (firstMoveSym[s] |= 1 << i);\n s % 16 == 15 && (j = urfMove[2][j]);\n }\n }\n}\n\nfunction initSym2Raw(N_RAW, Sym2Raw, Raw2Sym, SymState, coord) {\n $clinit_CubieCube();\n var c, count, d, i, idx, isEdge, s, symIdx, sym_inc;\n c = new CubieCube();\n d = new CubieCube();\n count = 0;\n idx = 0;\n sym_inc = coord >= 2 ? 1 : 2;\n isEdge = coord != 1;\n for (i = 0; i < N_RAW; i++) {\n if (Raw2Sym[i] != 0) {\n continue;\n }\n switch (coord) {\n case 0:\n $setFlip(c, i);\n break;\n case 1:\n $setTwist(c, i);\n break;\n case 2:\n setNPerm(c.ea, i, 8, true);\n }\n for (s = 0; s < 16; s += sym_inc) {\n isEdge ? EdgeConjugate(c, s, d) : CornConjugate(c, s, d);\n switch (coord) {\n case 0:\n idx = $getFlip(d);\n break;\n case 1:\n idx = $getTwist(d);\n break;\n case 2:\n idx = getNPerm(d.ea, 8, true);\n }\n coord == 0 && (FlipS2RF[(count << 3) | (s >> 1)] = idx & $intern_20);\n idx == i &&\n (SymState[count] =\n (SymState[count] | (1 << ~~(s / sym_inc))) & $intern_20);\n symIdx = ~~(((count << 4) | s) / sym_inc);\n Raw2Sym[idx] = symIdx & $intern_20;\n }\n Sym2Raw[count++] = i & $intern_20;\n }\n return count;\n}\n\nvar CubeSym,\n EPermR2S,\n EPermS2R,\n FlipR2S,\n FlipS2R,\n FlipS2RF,\n MPermInv,\n Perm2CombP,\n PermInvEdgeSym,\n Sym8Move,\n SymMove_0,\n SymMoveUD,\n SymMult,\n SymMultInv,\n SymStateFlip,\n SymStatePerm,\n SymStateTwist,\n TwistR2S,\n TwistS2R,\n firstMoveSym,\n moveCube,\n moveCubeSym,\n urf1,\n urf2,\n urfMove;\nvar Lorg_cubing_min2phase_client_CubieCube_2_classLit = createForClass(\n \"org.cubing.min2phase.client\",\n \"CubieCube\",\n 7,\n);\n\nfunction $initPhase2(\n this$static,\n p2corn,\n p2csym,\n p2edge,\n p2esym,\n p2mid,\n edgei,\n corni,\n) {\n var depth2, i, i0, prun, ret;\n prun = max_0(\n getPruning(\n ($clinit_CoordCube(), EPermCCombPPrun),\n (edgei >> 4) * 140 +\n CCombPConj[($clinit_CubieCube(), Perm2CombP)[corni >> 4] & 255][\n SymMultInv[edgei & 15][corni & 15]\n ],\n ),\n max_0(\n getPruning(\n EPermCCombPPrun,\n p2edge * 140 +\n CCombPConj[Perm2CombP[p2corn] & 255][SymMultInv[p2esym][p2csym]],\n ),\n getPruning(MCPermPrun, p2corn * 24 + MPermConj[p2mid][p2csym]),\n ),\n );\n if (prun > this$static.maxDep2) {\n return prun - this$static.maxDep2;\n }\n for (depth2 = this$static.maxDep2; depth2 >= prun; depth2--) {\n ret = $phase2(\n this$static,\n p2edge,\n p2esym,\n p2corn,\n p2csym,\n p2mid,\n depth2,\n this$static.depth1,\n 10,\n );\n if (ret < 0) {\n break;\n }\n depth2 -= ret;\n this$static.solLen = 0;\n this$static.solution = new Util$Solution();\n $setArgs(\n this$static.solution,\n this$static.verbose,\n this$static.urfIdx,\n this$static.depth1,\n );\n for (i0 = 0; i0 < this$static.depth1 + depth2; i0++) {\n $appendSolMove(this$static.solution, this$static.move[i0]);\n }\n for (i = this$static.preMoveLen - 1; i >= 0; i--) {\n $appendSolMove(this$static.solution, this$static.preMoves[i]);\n }\n this$static.solLen = this$static.solution.length_0;\n }\n if (depth2 != this$static.maxDep2) {\n this$static.maxDep2 = min_0(\n MAX_DEPTH2,\n this$static.solLen - this$static.length1 - 1,\n );\n return gte(this$static.probe, this$static.probeMin) ? 0 : 1;\n }\n return 1;\n}\n\nfunction $initPhase2Pre(this$static) {\n var corni,\n edgei,\n i,\n lastMove,\n lastPre,\n m,\n p2corn,\n p2csym,\n p2edge,\n p2esym,\n p2mid,\n p2switch,\n p2switchMask,\n p2switchMax,\n ret;\n this$static.isRec = false;\n if (\n gte(\n this$static.probe,\n !this$static.solution ? this$static.probeMax : this$static.probeMin,\n )\n ) {\n return 0;\n }\n this$static.probe = add_1(this$static.probe, { l: 1, m: 0, h: 0 });\n for (i = this$static.valid1; i < this$static.depth1; i++) {\n CornMult(\n this$static.phase1Cubie[i],\n ($clinit_CubieCube(), moveCube)[this$static.move[i]],\n this$static.phase1Cubie[i + 1],\n );\n EdgeMult(\n this$static.phase1Cubie[i],\n moveCube[this$static.move[i]],\n this$static.phase1Cubie[i + 1],\n );\n }\n this$static.valid1 = this$static.depth1;\n p2corn = $getCPermSym(this$static.phase1Cubie[this$static.depth1]);\n p2csym = p2corn & 15;\n p2corn >>= 4;\n p2edge = $getEPermSym(this$static.phase1Cubie[this$static.depth1]);\n p2esym = p2edge & 15;\n p2edge >>= 4;\n p2mid =\n getNPerm(this$static.phase1Cubie[this$static.depth1].ea, 12, true) % 24;\n edgei = getPermSymInv(p2edge, p2esym, false);\n corni = getPermSymInv(p2corn, p2csym, true);\n lastMove =\n this$static.depth1 == 0 ? -1 : this$static.move[this$static.depth1 - 1];\n lastPre =\n this$static.preMoveLen == 0\n ? -1\n : this$static.preMoves[this$static.preMoveLen - 1];\n ret = 0;\n p2switchMax =\n (this$static.preMoveLen == 0 ? 1 : 2) * (this$static.depth1 == 0 ? 1 : 2);\n for (\n p2switch = 0, p2switchMask = (1 << p2switchMax) - 1;\n p2switch < p2switchMax;\n p2switch++\n ) {\n if (((p2switchMask >> p2switch) & 1) != 0) {\n p2switchMask &= ~(1 << p2switch);\n ret = $initPhase2(\n this$static,\n p2corn,\n p2csym,\n p2edge,\n p2esym,\n p2mid,\n edgei,\n corni,\n );\n if (ret == 0 || ret > 2) {\n break;\n } else ret == 2 && (p2switchMask &= 4 << p2switch);\n }\n if (p2switchMask == 0) {\n break;\n }\n if ((p2switch & 1) == 0 && this$static.depth1 > 0) {\n m = ($clinit_Util(), std2ud)[~~(lastMove / 3) * 3 + 1];\n this$static.move[this$static.depth1 - 1] =\n ud2std[m] * 2 - this$static.move[this$static.depth1 - 1];\n p2mid = ($clinit_CoordCube(), MPermMove)[p2mid][m];\n p2corn = CPermMove[p2corn][($clinit_CubieCube(), SymMoveUD)[p2csym][m]];\n p2csym = SymMult[p2corn & 15][p2csym];\n p2corn >>= 4;\n p2edge = EPermMove[p2edge][SymMoveUD[p2esym][m]];\n p2esym = SymMult[p2edge & 15][p2esym];\n p2edge >>= 4;\n corni = getPermSymInv(p2corn, p2csym, true);\n edgei = getPermSymInv(p2edge, p2esym, false);\n } else if (this$static.preMoveLen > 0) {\n m = ($clinit_Util(), std2ud)[~~(lastPre / 3) * 3 + 1];\n this$static.preMoves[this$static.preMoveLen - 1] =\n ud2std[m] * 2 - this$static.preMoves[this$static.preMoveLen - 1];\n p2mid = ($clinit_CubieCube(), MPermInv)[\n ($clinit_CoordCube(), MPermMove)[MPermInv[p2mid]][m]\n ];\n p2corn = CPermMove[corni >> 4][SymMoveUD[corni & 15][m]];\n corni = (p2corn & -16) | SymMult[p2corn & 15][corni & 15];\n p2corn = getPermSymInv(corni >> 4, corni & 15, true);\n p2csym = p2corn & 15;\n p2corn >>= 4;\n p2edge = EPermMove[edgei >> 4][SymMoveUD[edgei & 15][m]];\n edgei = (p2edge & -16) | SymMult[p2edge & 15][edgei & 15];\n p2edge = getPermSymInv(edgei >> 4, edgei & 15, false);\n p2esym = p2edge & 15;\n p2edge >>= 4;\n }\n }\n this$static.depth1 > 0 &&\n (this$static.move[this$static.depth1 - 1] = lastMove);\n this$static.preMoveLen > 0 &&\n (this$static.preMoves[this$static.preMoveLen - 1] = lastPre);\n return ret == 0 ? 0 : 2;\n}\n\nfunction $initSearch(this$static) {\n var i;\n this$static.conjMask = 0;\n this$static.selfSym = $selfSymmetry(this$static.cc);\n this$static.conjMask |= neq(\n and(shr(this$static.selfSym, 16), { l: $intern_20, m: 0, h: 0 }),\n { l: 0, m: 0, h: 0 },\n )\n ? 18\n : 0;\n this$static.conjMask |= neq(\n and(shr(this$static.selfSym, 32), { l: $intern_20, m: 0, h: 0 }),\n { l: 0, m: 0, h: 0 },\n )\n ? 36\n : 0;\n this$static.conjMask |= neq(\n and(shr(this$static.selfSym, 48), { l: $intern_20, m: 0, h: 0 }),\n { l: 0, m: 0, h: 0 },\n )\n ? 56\n : 0;\n this$static.selfSym = and(this$static.selfSym, {\n l: $intern_9,\n m: $intern_9,\n h: 15,\n });\n this$static.maxPreMoves = this$static.conjMask > 7 ? 0 : 20;\n for (i = 0; i < 6; i++) {\n $copy(this$static.urfCubieCube[i], this$static.cc);\n $setWithPrun(this$static.urfCoordCube[i], this$static.urfCubieCube[i], 20);\n $URFConjugate(this$static.cc);\n i % 3 == 2 && $invCubieCube(this$static.cc);\n }\n}\n\nfunction $phase1(this$static, node, ssym, maxl, lm) {\n var axis_0, m, power, prun, ret, skipMoves;\n if (node.prun == 0 && maxl < 5) {\n if (this$static.allowShorter || maxl == 0) {\n this$static.depth1 -= maxl;\n ret = $initPhase2Pre(this$static);\n this$static.depth1 += maxl;\n return ret;\n } else {\n return 1;\n }\n }\n skipMoves = getSkipMoves(fromInt(ssym));\n for (axis_0 = 0; axis_0 < 18; axis_0 += 3) {\n if (axis_0 == lm || axis_0 == lm - 9) {\n continue;\n }\n for (power = 0; power < 3; power++) {\n m = axis_0 + power;\n if (\n (this$static.isRec &&\n m != this$static.move[this$static.depth1 - maxl]) ||\n (skipMoves != 0 && (skipMoves & (1 << m)) != 0)\n ) {\n continue;\n }\n prun = $doMovePrun(this$static.nodeUD[maxl], node, m);\n if (prun > maxl) {\n break;\n } else if (prun == maxl) {\n continue;\n }\n prun = $doMovePrunConj(this$static.nodeUD[maxl], node, m);\n if (prun > maxl) {\n break;\n } else if (prun == maxl) {\n continue;\n }\n this$static.move[this$static.depth1 - maxl] = m;\n this$static.valid1 = min_0(this$static.valid1, this$static.depth1 - maxl);\n ret = $phase1(\n this$static,\n this$static.nodeUD[maxl],\n ssym & toInt(($clinit_CubieCube(), moveCubeSym)[m]),\n maxl - 1,\n axis_0,\n );\n if (ret == 0) {\n return 0;\n } else if (ret >= 2) {\n break;\n }\n }\n }\n return 1;\n}\n\nfunction $phase1PreMoves(this$static, maxl, lm, cc, ssym) {\n var m, ret, skipMoves;\n this$static.preMoveLen = this$static.maxPreMoves - maxl;\n if (\n this$static.isRec\n ? this$static.depth1 == this$static.length1 - this$static.preMoveLen\n : this$static.preMoveLen == 0 || ((225207 >> lm) & 1) == 0\n ) {\n this$static.depth1 = this$static.length1 - this$static.preMoveLen;\n this$static.phase1Cubie[0] = cc;\n this$static.allowShorter =\n this$static.depth1 == MIN_P1LENGTH_PRE && this$static.preMoveLen != 0;\n if (\n $setWithPrun(\n this$static.nodeUD[this$static.depth1 + 1],\n cc,\n this$static.depth1,\n ) &&\n $phase1(\n this$static,\n this$static.nodeUD[this$static.depth1 + 1],\n ssym,\n this$static.depth1,\n -1,\n ) == 0\n ) {\n return 0;\n }\n }\n if (\n maxl == 0 ||\n this$static.preMoveLen + MIN_P1LENGTH_PRE >= this$static.length1\n ) {\n return 1;\n }\n skipMoves = getSkipMoves(fromInt(ssym));\n (maxl == 1 ||\n this$static.preMoveLen + 1 + MIN_P1LENGTH_PRE >= this$static.length1) &&\n (skipMoves |= 225207);\n lm = ~~(lm / 3) * 3;\n for (m = 0; m < 18; m++) {\n if (m == lm || m == lm - 9 || m == lm + 9) {\n m += 2;\n continue;\n }\n if (\n (this$static.isRec &&\n m != this$static.preMoves[this$static.maxPreMoves - maxl]) ||\n (skipMoves & (1 << m)) != 0\n ) {\n continue;\n }\n CornMult(\n ($clinit_CubieCube(), moveCube)[m],\n cc,\n this$static.preMoveCubes[maxl],\n );\n EdgeMult(moveCube[m], cc, this$static.preMoveCubes[maxl]);\n this$static.preMoves[this$static.maxPreMoves - maxl] = m;\n ret = $phase1PreMoves(\n this$static,\n maxl - 1,\n m,\n this$static.preMoveCubes[maxl],\n ssym & toInt(moveCubeSym[m]),\n );\n if (ret == 0) {\n return 0;\n }\n }\n return 1;\n}\n\nfunction $phase2(this$static, edge, esym, corn, csym, mid, maxl, depth, lm) {\n var corni, cornx, csymx, edgei, edgex, esymx, m, midx, moveMask, prun, ret;\n if (edge == 0 && corn == 0 && mid == 0) {\n return maxl;\n }\n moveMask = ($clinit_Util(), ckmv2bit)[lm];\n for (m = 0; m < 10; m++) {\n if (((moveMask >> m) & 1) != 0) {\n m += (66 >> m) & 3;\n continue;\n }\n midx = ($clinit_CoordCube(), MPermMove)[mid][m];\n cornx = CPermMove[corn][($clinit_CubieCube(), SymMoveUD)[csym][m]];\n csymx = SymMult[cornx & 15][csym];\n cornx >>= 4;\n edgex = EPermMove[edge][SymMoveUD[esym][m]];\n esymx = SymMult[edgex & 15][esym];\n edgex >>= 4;\n edgei = getPermSymInv(edgex, esymx, false);\n corni = getPermSymInv(cornx, csymx, true);\n prun = getPruning(\n EPermCCombPPrun,\n (edgei >> 4) * 140 +\n CCombPConj[Perm2CombP[corni >> 4] & 255][\n SymMultInv[edgei & 15][corni & 15]\n ],\n );\n if (prun > maxl + 1) {\n return maxl - prun + 1;\n } else if (prun >= maxl) {\n m += (66 >> m) & 3 & (maxl - prun);\n continue;\n }\n prun = max_0(\n getPruning(MCPermPrun, cornx * 24 + MPermConj[midx][csymx]),\n getPruning(\n EPermCCombPPrun,\n edgex * 140 +\n CCombPConj[Perm2CombP[cornx] & 255][SymMultInv[esymx][csymx]],\n ),\n );\n if (prun >= maxl) {\n m += (66 >> m) & 3 & (maxl - prun);\n continue;\n }\n ret = $phase2(\n this$static,\n edgex,\n esymx,\n cornx,\n csymx,\n midx,\n maxl - 1,\n depth + 1,\n m,\n );\n if (ret >= 0) {\n this$static.move[depth] = ud2std[m];\n return ret;\n }\n if (ret < -2) {\n break;\n }\n ret < -1 && (m += (66 >> m) & 3);\n }\n return -1;\n}\n\nfunction $search(this$static) {\n for (\n this$static.length1 = this$static.isRec ? this$static.length1 : 0;\n this$static.length1 < this$static.solLen;\n this$static.length1++\n ) {\n this$static.maxDep2 = min_0(\n MAX_DEPTH2,\n this$static.solLen - this$static.length1 - 1,\n );\n for (\n this$static.urfIdx = this$static.isRec ? this$static.urfIdx : 0;\n this$static.urfIdx < 6;\n this$static.urfIdx++\n ) {\n if ((this$static.conjMask & (1 << this$static.urfIdx)) != 0) {\n continue;\n }\n if (\n $phase1PreMoves(\n this$static,\n this$static.maxPreMoves,\n -30,\n this$static.urfCubieCube[this$static.urfIdx],\n toInt(and(this$static.selfSym, { l: $intern_20, m: 0, h: 0 })),\n ) == 0\n ) {\n return !this$static.solution\n ? \"Error 8\"\n : $toString_2(this$static.solution);\n }\n }\n }\n return !this$static.solution ? \"Error 7\" : $toString_2(this$static.solution);\n}\n\nfunction $solution(this$static, facelets) {\n var check;\n check = $verify_0(this$static, facelets);\n if (check != 0) {\n return \"Error \" + (check < 0 ? -check : check);\n }\n this$static.solLen = 22;\n this$static.probe = { l: 0, m: 0, h: 0 };\n this$static.probeMax = { l: 3531008, m: 23, h: 0 };\n this$static.probeMin = { l: 0, m: 0, h: 0 };\n this$static.verbose = 0;\n this$static.solution = null;\n this$static.isRec = false;\n init_0(false);\n $initSearch(this$static);\n return $search(this$static);\n}\n\nfunction $verify_0(this$static, facelets) {\n var center, count, f, i;\n count = 0;\n f = initDim(B_classLit, $intern_30, 0, 54, 7, 1);\n // try {\n center = _String(\n initValues(getClassLiteralForArray(C_classLit, 1), $intern_26, 0, 7, [\n facelets.charCodeAt(4),\n facelets.charCodeAt(13),\n facelets.charCodeAt(22),\n facelets.charCodeAt(31),\n facelets.charCodeAt(40),\n facelets.charCodeAt(49),\n ]),\n );\n for (i = 0; i < 54; i++) {\n f[i] =\n ($indexOf_0(center, fromCodePoint(facelets.charCodeAt(i))) << 24) >> 24;\n if (f[i] == -1) {\n return -1;\n }\n count += 1 << (f[i] << 2);\n }\n // } catch ($e0) {\n // $e0 = wrap($e0);\n // if (instanceOf($e0, 9)) {\n // return -1;\n // } else throw unwrap($e0);\n // }\n if (count != 10066329) {\n return -1;\n }\n toCubieCube(f, this$static.cc);\n return $verify(this$static.cc);\n}\n\nfunction Search() {\n var i, i0, i1;\n this.move = initDim(I_classLit, $intern_27, 0, 31, 7, 1);\n this.nodeUD = initDim(\n Lorg_cubing_min2phase_client_CoordCube_2_classLit,\n $intern_3,\n 31,\n 21,\n 0,\n 1,\n );\n this.nodeRL = initDim(\n Lorg_cubing_min2phase_client_CoordCube_2_classLit,\n $intern_3,\n 31,\n 21,\n 0,\n 1,\n );\n this.nodeFB = initDim(\n Lorg_cubing_min2phase_client_CoordCube_2_classLit,\n $intern_3,\n 31,\n 21,\n 0,\n 1,\n );\n this.cc = new CubieCube();\n this.urfCubieCube = initDim(\n Lorg_cubing_min2phase_client_CubieCube_2_classLit,\n $intern_3,\n 7,\n 6,\n 0,\n 1,\n );\n this.urfCoordCube = initDim(\n Lorg_cubing_min2phase_client_CoordCube_2_classLit,\n $intern_3,\n 31,\n 6,\n 0,\n 1,\n );\n this.phase1Cubie = initDim(\n Lorg_cubing_min2phase_client_CubieCube_2_classLit,\n $intern_3,\n 7,\n 21,\n 0,\n 1,\n );\n this.preMoveCubes = initDim(\n Lorg_cubing_min2phase_client_CubieCube_2_classLit,\n $intern_3,\n 7,\n 21,\n 0,\n 1,\n );\n this.preMoves = initDim(I_classLit, $intern_27, 0, 20, 7, 1);\n for (i0 = 0; i0 < 21; i0++) {\n this.nodeUD[i0] = new CoordCube();\n this.nodeRL[i0] = new CoordCube();\n this.nodeFB[i0] = new CoordCube();\n this.phase1Cubie[i0] = new CubieCube();\n }\n for (i1 = 0; i1 < 6; i1++) {\n this.urfCubieCube[i1] = new CubieCube();\n this.urfCoordCube[i1] = new CoordCube();\n }\n for (i = 0; i < 20; i++) {\n this.preMoveCubes[i + 1] = new CubieCube();\n }\n}\n\ndefineClass(72, 1, {}, Search);\n_.allowShorter = false;\n_.conjMask = 0;\n_.depth1 = 0;\n_.isRec = false;\n_.length1 = 0;\n_.maxDep2 = 0;\n_.maxPreMoves = 0;\n_.preMoveLen = 0;\n_.probe = { l: 0, m: 0, h: 0 };\n_.probeMax = { l: 0, m: 0, h: 0 };\n_.probeMin = { l: 0, m: 0, h: 0 };\n_.selfSym = { l: 0, m: 0, h: 0 };\n_.solLen = 0;\n_.urfIdx = 0;\n_.valid1 = 0;\n_.verbose = 0;\nvar MAX_DEPTH2 = 12,\n MIN_P1LENGTH_PRE = 7;\nlet $clinit_Util_ran = false;\nfunction $clinit_Util() {\n if ($clinit_Util_ran) {\n return;\n }\n $clinit_Util_ran = true;\n var i, i0, i1, ix, j, jx;\n cornerFacelet = initValues(\n getClassLiteralForArray(B_classLit, 2),\n $intern_3,\n 10,\n 0,\n [\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [8, 9, 20],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [6, 18, 38],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [0, 36, 47],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [2, 45, 11],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [29, 26, 15],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [27, 44, 24],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [33, 53, 42],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [35, 17, 51],\n ),\n ],\n );\n edgeFacelet = initValues(\n getClassLiteralForArray(B_classLit, 2),\n $intern_3,\n 10,\n 0,\n [\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [5, 10],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [7, 19],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [3, 37],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [1, 46],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [32, 16],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [28, 25],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [30, 43],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [34, 52],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [23, 12],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [21, 41],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [50, 39],\n ),\n initValues(\n getClassLiteralForArray(B_classLit, 1),\n $intern_30,\n 0,\n 7,\n [48, 14],\n ),\n ],\n );\n Cnk = initDims(I_classLit, [$intern_3, $intern_27], [17, 0], 7, [13, 13], 2);\n move2str = initValues(\n getClassLiteralForArray(Ljava_lang_String_2_classLit, 1),\n $intern_3,\n 2,\n 4,\n [\n \"U \",\n \"U2\",\n \"U'\",\n \"R \",\n \"R2\",\n \"R'\",\n \"F \",\n \"F2\",\n \"F'\",\n \"D \",\n \"D2\",\n \"D'\",\n \"L \",\n \"L2\",\n \"L'\",\n \"B \",\n \"B2\",\n \"B'\",\n ],\n );\n ud2std = initValues(\n getClassLiteralForArray(I_classLit, 1),\n $intern_27,\n 0,\n 7,\n [0, 1, 2, 4, 7, 9, 10, 11, 13, 16, 3, 5, 6, 8, 12, 14, 15, 17],\n );\n std2ud = initDim(I_classLit, $intern_27, 0, 18, 7, 1);\n ckmv2bit = initDim(I_classLit, $intern_27, 0, 11, 7, 1);\n for (i0 = 0; i0 < 18; i0++) {\n std2ud[ud2std[i0]] = i0;\n }\n for (i1 = 0; i1 < 10; i1++) {\n ix = ~~(ud2std[i1] / 3);\n ckmv2bit[i1] = 0;\n for (j = 0; j < 10; j++) {\n jx = ~~(ud2std[j] / 3);\n ckmv2bit[i1] |= (ix == jx || (ix % 3 == jx % 3 && ix >= jx) ? 1 : 0) << j;\n }\n }\n ckmv2bit[10] = 0;\n for (i = 0; i < 13; i++) {\n Cnk[i][0] = Cnk[i][i] = 1;\n for (j = 1; j < i; j++) {\n Cnk[i][j] = Cnk[i - 1][j - 1] + Cnk[i - 1][j];\n }\n }\n}\n\nfunction getComb(arr, mask, isEdge) {\n $clinit_Util();\n var end, i, idxC, perm, r;\n end = arr.length - 1;\n idxC = 0;\n r = 4;\n for (i = end; i >= 0; i--) {\n perm = getVal(arr[i], isEdge);\n (perm & 12) == mask && (idxC += Cnk[i][r--]);\n }\n return idxC;\n}\n\nfunction getNParity(idx, n) {\n $clinit_Util();\n var i, p;\n p = 0;\n for (i = n - 2; i >= 0; i--) {\n p ^= idx % (n - i);\n idx = ~~(idx / (n - i));\n }\n return p & 1;\n}\n\nfunction getNPerm(arr, n, isEdge) {\n $clinit_Util();\n var i, idx, v, val;\n idx = 0;\n val = { l: 1323536, m: 2777561, h: 1043915 };\n for (i = 0; i < n - 1; i++) {\n v = getVal(arr[i], isEdge) << 2;\n idx = (n - i) * idx + toInt(and(shr(val, v), { l: 15, m: 0, h: 0 }));\n val = sub_0(val, shl({ l: 1118480, m: 279620, h: 69905 }, v));\n }\n return idx;\n}\n\nfunction getVal(val0, isEdge) {\n return isEdge ? val0 >> 1 : val0 & 7;\n}\n\nfunction setComb(arr, idxC, mask, isEdge) {\n $clinit_Util();\n var end, fill, i, r;\n end = arr.length - 1;\n r = 4;\n fill = end;\n for (i = end; i >= 0; i--) {\n if (idxC >= Cnk[i][r]) {\n idxC -= Cnk[i][r--];\n arr[i] = setVal(arr[i], r | mask, isEdge);\n } else {\n (fill & 12) == mask && (fill -= 4);\n arr[i] = setVal(arr[i], fill--, isEdge);\n }\n }\n}\n\nfunction setNPerm(arr, idx, n, isEdge) {\n $clinit_Util();\n var extract, i, m, p, v, val;\n val = { l: 1323536, m: 2777561, h: 1043915 };\n extract = { l: 0, m: 0, h: 0 };\n for (p = 2; p <= n; p++) {\n extract = or(shl(extract, 4), fromInt(idx % p));\n idx = ~~(idx / p);\n }\n for (i = 0; i < n - 1; i++) {\n v = (toInt(extract) & 15) << 2;\n extract = shr(extract, 4);\n arr[i] = setVal(\n arr[i],\n toInt(and(shr(val, v), { l: 15, m: 0, h: 0 })),\n isEdge,\n );\n m = sub_0(shl({ l: 1, m: 0, h: 0 }, v), { l: 1, m: 0, h: 0 });\n val = or(\n and(val, m),\n and(shr(val, 4), {\n l: ~m.l & $intern_9,\n m: ~m.m & $intern_9,\n h: ~m.h & $intern_10,\n }),\n );\n }\n arr[n - 1] = setVal(\n arr[n - 1],\n toInt(and(val, { l: 15, m: 0, h: 0 })),\n isEdge,\n );\n}\n\nfunction setVal(val0, val, isEdge) {\n return ((isEdge ? (val << 1) | (val0 & 1) : val | (val0 & -8)) << 24) >> 24;\n}\n\nfunction toCubieCube(f, ccRet) {\n $clinit_Util();\n var col1, col2, i, i0, i1, i2, j, ori;\n for (i0 = 0; i0 < 8; i0++) {\n ccRet.ca[i0] = 0;\n }\n for (i1 = 0; i1 < 12; i1++) {\n ccRet.ea[i1] = 0;\n }\n for (i2 = 0; i2 < 8; i2++) {\n for (ori = 0; ori < 3; ori++) {\n if (f[cornerFacelet[i2][ori]] == 0 || f[cornerFacelet[i2][ori]] == 3)\n break;\n }\n col1 = f[cornerFacelet[i2][(ori + 1) % 3]];\n col2 = f[cornerFacelet[i2][(ori + 2) % 3]];\n for (j = 0; j < 8; j++) {\n if (\n col1 == ~~(cornerFacelet[j][1] / 9) &&\n col2 == ~~(cornerFacelet[j][2] / 9)\n ) {\n ccRet.ca[i2] = narrow_byte((ori % 3 << 3) | j);\n break;\n }\n }\n }\n for (i = 0; i < 12; i++) {\n for (j = 0; j < 12; j++) {\n if (\n f[edgeFacelet[i][0]] == ~~(edgeFacelet[j][0] / 9) &&\n f[edgeFacelet[i][1]] == ~~(edgeFacelet[j][1] / 9)\n ) {\n ccRet.ea[i] = narrow_byte(j << 1);\n break;\n }\n if (\n f[edgeFacelet[i][0]] == ~~(edgeFacelet[j][1] / 9) &&\n f[edgeFacelet[i][1]] == ~~(edgeFacelet[j][0] / 9)\n ) {\n ccRet.ea[i] = narrow_byte((j << 1) | 1);\n break;\n }\n }\n }\n}\n\nvar Cnk, ckmv2bit, cornerFacelet, edgeFacelet, move2str, std2ud, ud2std;\nfunction $appendSolMove(this$static, curMove) {\n var axisCur, axisLast, pow_0;\n if (this$static.length_0 == 0) {\n this$static.moves[this$static.length_0++] = curMove;\n return;\n }\n axisCur = ~~(curMove / 3);\n axisLast = ~~(this$static.moves[this$static.length_0 - 1] / 3);\n if (axisCur == axisLast) {\n pow_0 =\n ((curMove % 3) + (this$static.moves[this$static.length_0 - 1] % 3) + 1) %\n 4;\n pow_0 == 3\n ? --this$static.length_0\n : (this$static.moves[this$static.length_0 - 1] = axisCur * 3 + pow_0);\n return;\n }\n if (\n this$static.length_0 > 1 &&\n axisCur % 3 == axisLast % 3 &&\n axisCur == ~~(this$static.moves[this$static.length_0 - 2] / 3)\n ) {\n pow_0 =\n ((curMove % 3) + (this$static.moves[this$static.length_0 - 2] % 3) + 1) %\n 4;\n if (pow_0 == 3) {\n this$static.moves[this$static.length_0 - 2] =\n this$static.moves[this$static.length_0 - 1];\n --this$static.length_0;\n } else {\n this$static.moves[this$static.length_0 - 2] = axisCur * 3 + pow_0;\n }\n return;\n }\n this$static.moves[this$static.length_0++] = curMove;\n}\n\nfunction $setArgs(this$static, verbose, urfIdx, depth1) {\n this$static.verbose = verbose;\n this$static.urfIdx = urfIdx;\n this$static.depth1 = depth1;\n}\n\nfunction $toString_2(this$static) {\n var s, sb, urf;\n sb = new StringBuffer();\n urf =\n (this$static.verbose & 2) != 0\n ? (this$static.urfIdx + 3) % 6\n : this$static.urfIdx;\n if (urf < 3) {\n for (s = 0; s < this$static.length_0; s++) {\n (this$static.verbose & 1) != 0 &&\n s == this$static.depth1 &&\n ((sb.string += \". \"), sb);\n $append(\n $append_1(\n sb,\n ($clinit_Util(), move2str)[\n ($clinit_CubieCube(), urfMove)[urf][this$static.moves[s]]\n ],\n ),\n );\n }\n } else {\n for (s = this$static.length_0 - 1; s >= 0; s--) {\n $append(\n $append_1(\n sb,\n ($clinit_Util(), move2str)[\n ($clinit_CubieCube(), urfMove)[urf][this$static.moves[s]]\n ],\n ),\n );\n (this$static.verbose & 1) != 0 &&\n s == this$static.depth1 &&\n ((sb.string += \". \"), sb);\n }\n }\n return sb.string;\n}\n\nfunction Util$Solution() {\n this.moves = initDim(I_classLit, $intern_27, 0, 31, 7, 1);\n}\n\ndefineClass(150, 1, {}, Util$Solution);\n_.depth1 = 0;\n_.length_0 = 0;\n_.urfIdx = 0;\n_.verbose = 0;\nvar I_classLit = createForPrimitive(\"int\", \"I\");\ncreateForClass(\"com.google.gwt.lang\", \"CollapsedPropertyHolder\", 252);\n\ncreateForClass(\"com.google.gwt.lang\", \"JavaClassHierarchySetupUtil\", 254);\nconst Lcom_google_gwt_lang_LongLibBase$LongEmul_2_classLit = createForClass(\n \"com.google.gwt.lang\",\n \"LongLibBase/LongEmul\",\n null,\n);\ncreateForClass(\"com.google.gwt.lang\", \"ModuleUtils\", 257);\nvar B_classLit = createForPrimitive(\"byte\", \"B\"),\n J_classLit = createForPrimitive(\"long\", \"J\"),\n C_classLit = createForPrimitive(\"char\", \"C\");\ncreateForClass(\"com.google.gwt.user.client.rpc\", \"XsrfToken\", null),\n createForInterface(\"java.util\", \"Map/Entry\");\n\nexport const initialize = function () {\n init_0(false);\n};\nexport const solveState = function (s) {\n return $solution(new Search(), s);\n};\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": []
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
mustBeInsideWorker,
|
|
3
3
|
random333Scramble
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-ASJ2DADD.js";
|
|
5
5
|
import {
|
|
6
6
|
randomUIntBelowFactory
|
|
7
7
|
} from "./chunk-RENZB7QN.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-SNWS6JXI.js";
|
|
9
9
|
import "./chunk-Y32HHZUY.js";
|
|
10
10
|
import {
|
|
11
11
|
Alg
|
|
@@ -63,7 +63,7 @@ function set8Perm(arr, idx, n, even) {
|
|
|
63
63
|
return arr;
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
-
// src/cubing/vendor/cstimer/src/js/scramble/
|
|
66
|
+
// src/cubing/vendor/cstimer/src/js/scramble/444-solver.ts
|
|
67
67
|
function createArray(length1, length2) {
|
|
68
68
|
const result = new Array(length1);
|
|
69
69
|
if (length2 !== void 0) {
|
|
@@ -2570,4 +2570,4 @@ export {
|
|
|
2570
2570
|
initialize,
|
|
2571
2571
|
random444Scramble
|
|
2572
2572
|
};
|
|
2573
|
-
//# sourceMappingURL=
|
|
2573
|
+
//# sourceMappingURL=444-solver-GNQ5BHCL.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/cubing/vendor/cstimer/src/js/lib/mathlib.ts", "../../src/cubing/vendor/cstimer/src/js/scramble/
|
|
3
|
+
"sources": ["../../src/cubing/vendor/cstimer/src/js/lib/mathlib.ts", "../../src/cubing/vendor/cstimer/src/js/scramble/444-solver.ts"],
|
|
4
4
|
"sourcesContent": ["const Cnk: number[][] = [],\n fact = [1];\nfor (let i = 0; i < 32; ++i) {\n Cnk[i] = [];\n for (let j = 0; j < 32; ++j) {\n Cnk[i][j] = 0;\n }\n}\nfor (let i = 0; i < 32; ++i) {\n Cnk[i][0] = Cnk[i][i] = 1;\n fact[i + 1] = fact[i] * (i + 1);\n for (let j = 1; j < i; ++j) {\n Cnk[i][j] = Cnk[i - 1][j - 1] + Cnk[i - 1][j];\n }\n}\n\nfunction circle(arr: number[], ...moreArgs: number[]) {\n const length = moreArgs.length,\n temp = arr[moreArgs[length - 1]];\n for (let i = length; i > 0; i--) {\n arr[moreArgs[i]] = arr[moreArgs[i - 1]];\n }\n arr[moreArgs[0]] = temp;\n return circle;\n}\n\nfunction set8Perm(arr: number[], idx: number, n?: number, even?: number) {\n n = (n || 8) - 1;\n let val = 0x76543210;\n let prt = 0;\n even ??= 0;\n if (even < 0) {\n idx <<= 1;\n }\n for (let i = 0; i < n; ++i) {\n const p = fact[n - i];\n let v = ~~(idx / p);\n prt ^= v;\n idx %= p;\n v <<= 2;\n arr[i] = (val >> v) & 7;\n const m = (1 << v) - 1;\n val = (val & m) + ((val >> 4) & ~m);\n }\n if (even < 0 && (prt & 1) !== 0) {\n arr[n] = arr[n - 1];\n arr[n - 1] = val & 7;\n } else {\n arr[n] = val & 7;\n }\n return arr;\n}\n\nexport { Cnk, set8Perm, circle };\n", "// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\n\n/*eslint no-implicit-globals: \"error\"*/\n/* eslint-disable @typescript-eslint/no-unsafe-return */\nimport { Alg } from \"../../../../../alg\";\nimport { random333Scramble as getRandomScramble333 } from \"../../../../../search/inside/solve/puzzles/3x3x3\";\nimport { circle, Cnk, set8Perm } from \"../lib/mathlib\";\nimport { randomUIntBelowFactory } from \"../../../../random-uint-below\";\nimport { mustBeInsideWorker } from \"../../../../../search/inside/inside-worker\";\n\nfunction createArray(length1: number, length2?: number) {\n const result = new Array<number[]>(length1);\n if (length2 !== undefined) {\n for (let i = 0; i < length1; i++) {\n result[i] = new Array(length2);\n }\n }\n return result;\n}\n\nlet _: any;\nconst seedTable: Record<number, any> = {},\n CM$ = {};\nconst Q$Object = 0,\n Q$Serializable = 30,\n Q$Center1 = 21,\n Q$CornerCube = 22,\n Q$Edge3 = 23,\n Q$FullCube_0 = 24,\n Q$FullCube_$1 = 25,\n Q$Comparable = 34,\n Q$Search_0 = 26,\n Q$Object_$1 = 40;\n\nfunction newSeed(id: number) {\n return new seedTable[id]();\n}\n\nfunction defineSeed(\n id: number,\n superSeed: number,\n castableTypeMap: any, // TODO\n ...moreArgs: any[]\n) {\n let seed = seedTable[id];\n if (seed && !seed.___clazz$) {\n _ = seed.prototype;\n } else {\n !seed && (seed = seedTable[id] = function () {});\n _ = seed.prototype = superSeed < 0 ? {} : newSeed(superSeed);\n _.castableTypeMap$ = castableTypeMap;\n }\n for (const arg of moreArgs) {\n arg.prototype = _;\n }\n if (seed.___clazz$) {\n _.___clazz$ = seed.___clazz$;\n seed.___clazz$ = null;\n }\n}\n\nfunction makeCastMap(a: number[]) {\n const result: Record<number, number> = {};\n for (let i_0 = 0, c = a.length; i_0 < c; ++i_0) {\n result[a[i_0]] = 1;\n }\n return result;\n}\n\ndefineSeed(1, -1, CM$);\n\n_.value = null;\n\nfunction Array_0() {}\n\nfunction createFrom(a: any, length_0: number) {\n const result = createFromSeed(0, length_0);\n initValues(a.___clazz$, a.castableTypeMap$, a.queryId$, result);\n return result;\n}\n\nfunction createFromSeed(seedType: number, length_0: number) {\n const array = new Array(length_0);\n if (seedType === 3) {\n for (let i_0 = 0; i_0 < length_0; ++i_0) {\n const value = {\n m: 0,\n l: 0,\n h: 0,\n };\n value.l = value.m = value.h = 0;\n array[i_0] = value;\n }\n } else if (seedType > 0) {\n const value = [null, 0, false][seedType];\n for (let i_0 = 0; i_0 < length_0; ++i_0) {\n array[i_0] = value;\n }\n }\n return array;\n}\n\nfunction initDim(arrayClass, castableTypeMap, queryId, length_0, seedType) {\n const result = createFromSeed(seedType, length_0);\n initValues(arrayClass, castableTypeMap, queryId, result);\n return result;\n}\n\nfunction initValues(arrayClass, castableTypeMap, queryId, array) {\n $clinit_Array$ExpandoWrapper();\n wrapArray(array, expandoNames_0, expandoValues_0);\n array.___clazz$ = arrayClass;\n array.castableTypeMap$ = castableTypeMap;\n array.queryId$ = queryId;\n return array;\n}\n\nfunction setCheck(array, index, value) {\n return (array[index] = value);\n}\n\ndefineSeed(73, 1, {}, Array_0);\n_.queryId$ = 0;\n\nlet ran$clinit_Array$ExpandoWrapper = false;\nfunction $clinit_Array$ExpandoWrapper() {\n if (ran$clinit_Array$ExpandoWrapper) {\n return;\n }\n ran$clinit_Array$ExpandoWrapper = true;\n expandoNames_0 = [];\n expandoValues_0 = [];\n initExpandos(new Array_0(), expandoNames_0, expandoValues_0);\n}\n\nfunction initExpandos(protoType, expandoNames, expandoValues) {\n let i_0 = 0,\n value;\n for (const name_0 in protoType) {\n if ((value = protoType[name_0])) {\n expandoNames[i_0] = name_0;\n expandoValues[i_0] = value;\n ++i_0;\n }\n }\n}\n\nfunction wrapArray(array, expandoNames, expandoValues) {\n $clinit_Array$ExpandoWrapper();\n for (let i_0 = 0, c = expandoNames.length; i_0 < c; ++i_0) {\n array[expandoNames[i_0]] = expandoValues[i_0];\n }\n}\n\nlet expandoNames_0, expandoValues_0;\n\nfunction canCast(src, dstId) {\n return src.castableTypeMap$ && !!src.castableTypeMap$[dstId];\n}\n\nfunction instanceOf(src, dstId) {\n return src !== null && canCast(src, dstId);\n}\n\nlet ran$clinit_Center1 = false;\nfunction $clinit_Center1() {\n if (ran$clinit_Center1) {\n return false;\n }\n ran$clinit_Center1 = true;\n ctsmv = createArray(15582, 36);\n sym2raw = createArray(15582);\n csprun = createArray(15582);\n symmult = createArray(48, 48);\n symmove = createArray(48, 36);\n syminv = createArray(48);\n finish_0 = createArray(48);\n}\n\nfunction $$init_1(this$static) {\n this$static.ct = createArray(24);\n}\n\nfunction $equals(this$static, obj) {\n let c, i_0;\n if (instanceOf(obj, Q$Center1)) {\n c = obj;\n for (i_0 = 0; i_0 < 24; ++i_0) {\n if (this$static.ct[i_0] !== c.ct[i_0]) {\n return false;\n }\n }\n return true;\n }\n return false;\n}\n\nfunction $get_1(this$static) {\n let i_0, idx, r;\n idx = 0;\n r = 8;\n for (i_0 = 23; i_0 >= 0; --i_0) {\n this$static.ct[i_0] === 1 && (idx += Cnk[i_0][r--]);\n }\n return idx;\n}\n\nfunction $getsym(this$static) {\n let cord, j;\n if (raw2sym !== null) {\n return raw2sym[$get_1(this$static)];\n }\n for (j = 0; j < 48; ++j) {\n cord = raw2sym_0($get_1(this$static));\n if (cord !== -1) {\n return cord * 64 + j;\n }\n $rot(this$static, 0);\n j % 2 === 1 && $rot(this$static, 1);\n j % 8 === 7 && $rot(this$static, 2);\n j % 16 === 15 && $rot(this$static, 3);\n }\n}\n\nfunction $move(this$static, m_0) {\n const key = m_0 % 3;\n m_0 = ~~(m_0 / 3);\n switch (m_0) {\n case 0:\n swap(this$static.ct, 0, 1, 2, 3, key);\n break;\n case 1:\n swap(this$static.ct, 16, 17, 18, 19, key);\n break;\n case 2:\n swap(this$static.ct, 8, 9, 10, 11, key);\n break;\n case 3:\n swap(this$static.ct, 4, 5, 6, 7, key);\n break;\n case 4:\n swap(this$static.ct, 20, 21, 22, 23, key);\n break;\n case 5:\n swap(this$static.ct, 12, 13, 14, 15, key);\n break;\n case 6:\n swap(this$static.ct, 0, 1, 2, 3, key);\n swap(this$static.ct, 8, 20, 12, 16, key);\n swap(this$static.ct, 9, 21, 13, 17, key);\n break;\n case 7:\n swap(this$static.ct, 16, 17, 18, 19, key);\n swap(this$static.ct, 1, 15, 5, 9, key);\n swap(this$static.ct, 2, 12, 6, 10, key);\n break;\n case 8:\n swap(this$static.ct, 8, 9, 10, 11, key);\n swap(this$static.ct, 2, 19, 4, 21, key);\n swap(this$static.ct, 3, 16, 5, 22, key);\n break;\n case 9:\n swap(this$static.ct, 4, 5, 6, 7, key);\n swap(this$static.ct, 10, 18, 14, 22, key);\n swap(this$static.ct, 11, 19, 15, 23, key);\n break;\n case 10:\n swap(this$static.ct, 20, 21, 22, 23, key);\n swap(this$static.ct, 0, 8, 4, 14, key);\n swap(this$static.ct, 3, 11, 7, 13, key);\n break;\n case 11:\n swap(this$static.ct, 12, 13, 14, 15, key);\n swap(this$static.ct, 1, 20, 7, 18, key);\n swap(this$static.ct, 0, 23, 6, 17, key);\n }\n}\n\nfunction $rot(this$static, r) {\n switch (r) {\n case 0:\n $move(this$static, 19);\n $move(this$static, 28);\n break;\n case 1:\n $move(this$static, 21);\n $move(this$static, 32);\n break;\n case 2:\n swap(this$static.ct, 0, 3, 1, 2, 1);\n swap(this$static.ct, 8, 11, 9, 10, 1);\n swap(this$static.ct, 4, 7, 5, 6, 1);\n swap(this$static.ct, 12, 15, 13, 14, 1);\n swap(this$static.ct, 16, 19, 21, 22, 1);\n swap(this$static.ct, 17, 18, 20, 23, 1);\n break;\n case 3:\n $move(this$static, 18);\n $move(this$static, 29);\n $move(this$static, 24);\n $move(this$static, 35);\n }\n}\n\nfunction $rotate(this$static, r) {\n let j;\n for (j = 0; j < r; ++j) {\n $rot(this$static, 0);\n j % 2 === 1 && $rot(this$static, 1);\n j % 8 === 7 && $rot(this$static, 2);\n j % 16 === 15 && $rot(this$static, 3);\n }\n}\n\nfunction $set_0(this$static, idx) {\n let i_0, r;\n r = 8;\n for (i_0 = 23; i_0 >= 0; --i_0) {\n this$static.ct[i_0] = 0;\n if (idx >= Cnk[i_0][r]) {\n idx -= Cnk[i_0][r--];\n this$static.ct[i_0] = 1;\n }\n }\n}\n\nfunction $set_1(this$static, c) {\n let i_0;\n for (i_0 = 0; i_0 < 24; ++i_0) {\n this$static.ct[i_0] = c.ct[i_0];\n }\n}\n\nfunction Center1_0() {\n let i_0;\n $$init_1(this);\n for (i_0 = 0; i_0 < 8; ++i_0) {\n this.ct[i_0] = 1;\n }\n for (i_0 = 8; i_0 < 24; ++i_0) {\n this.ct[i_0] = 0;\n }\n}\n\nfunction Center1_1(c, urf) {\n let i_0;\n $$init_1(this);\n for (i_0 = 0; i_0 < 24; ++i_0) {\n this.ct[i_0] = ~~(c.ct[i_0] / 2) === urf ? 1 : 0;\n }\n}\n\nfunction Center1_2(ct) {\n let i_0;\n $$init_1(this);\n for (i_0 = 0; i_0 < 24; ++i_0) {\n this.ct[i_0] = ct[i_0];\n }\n}\n\nfunction createMoveTable() {\n let i_0, m_0;\n const c = new Center1_0();\n const d = new Center1_0();\n for (i_0 = 0; i_0 < 15582; ++i_0) {\n $set_0(d, sym2raw[i_0]);\n for (m_0 = 0; m_0 < 36; ++m_0) {\n $set_1(c, d);\n $move(c, m_0);\n ctsmv[i_0][m_0] = $getsym(c);\n }\n }\n}\n\nfunction createPrun() {\n let check, depth, done, i_0, idx, inv, m_0, select;\n fill_0(csprun);\n csprun[0] = 0;\n depth = 0;\n done = 1;\n while (done !== 15582) {\n inv = depth > 4;\n select = inv ? -1 : depth;\n check = inv ? depth : -1;\n ++depth;\n for (i_0 = 0; i_0 < 15582; ++i_0) {\n if (csprun[i_0] !== select) {\n continue;\n }\n for (m_0 = 0; m_0 < 27; ++m_0) {\n idx = ~~ctsmv[i_0][m_0] >>> 6;\n if (csprun[idx] !== check) {\n continue;\n }\n ++done;\n if (inv) {\n csprun[i_0] = depth;\n break;\n } else {\n csprun[idx] = depth;\n }\n }\n }\n }\n}\n\nfunction getSolvedSym(cube) {\n let check, i_0, j;\n const c = new Center1_2(cube.ct);\n for (j = 0; j < 48; ++j) {\n check = true;\n for (i_0 = 0; i_0 < 24; ++i_0) {\n if (c.ct[i_0] !== ~~(i_0 / 4)) {\n check = false;\n break;\n }\n }\n if (check) {\n return j;\n }\n $rot(c, 0);\n j % 2 === 1 && $rot(c, 1);\n j % 8 === 7 && $rot(c, 2);\n j % 16 === 15 && $rot(c, 3);\n }\n return -1;\n}\n\nfunction initSym_0() {\n let i_0, j, k_0;\n const c = new Center1_0();\n for (i_0 = 0; i_0 < 24; ++i_0) {\n c.ct[i_0] = i_0;\n }\n const d = new Center1_2(c.ct);\n const e = new Center1_2(c.ct);\n const f = new Center1_2(c.ct);\n for (i_0 = 0; i_0 < 48; ++i_0) {\n for (j = 0; j < 48; ++j) {\n for (k_0 = 0; k_0 < 48; ++k_0) {\n if ($equals(c, d)) {\n symmult[i_0][j] = k_0;\n k_0 === 0 && (syminv[i_0] = j);\n }\n $rot(d, 0);\n k_0 % 2 === 1 && $rot(d, 1);\n k_0 % 8 === 7 && $rot(d, 2);\n k_0 % 16 === 15 && $rot(d, 3);\n }\n $rot(c, 0);\n j % 2 === 1 && $rot(c, 1);\n j % 8 === 7 && $rot(c, 2);\n j % 16 === 15 && $rot(c, 3);\n }\n $rot(c, 0);\n i_0 % 2 === 1 && $rot(c, 1);\n i_0 % 8 === 7 && $rot(c, 2);\n i_0 % 16 === 15 && $rot(c, 3);\n }\n for (i_0 = 0; i_0 < 48; ++i_0) {\n $set_1(c, e);\n $rotate(c, syminv[i_0]);\n for (j = 0; j < 36; ++j) {\n $set_1(d, c);\n $move(d, j);\n $rotate(d, i_0);\n for (k_0 = 0; k_0 < 36; ++k_0) {\n $set_1(f, e);\n $move(f, k_0);\n if ($equals(f, d)) {\n symmove[i_0][j] = k_0;\n break;\n }\n }\n }\n }\n $set_0(c, 0);\n for (i_0 = 0; i_0 < 48; ++i_0) {\n finish_0[syminv[i_0]] = $get_1(c);\n $rot(c, 0);\n i_0 % 2 === 1 && $rot(c, 1);\n i_0 % 8 === 7 && $rot(c, 2);\n i_0 % 16 === 15 && $rot(c, 3);\n }\n}\n\nfunction initSym2Raw() {\n let count, i_0, idx, j;\n const c = new Center1_0();\n const occ = createArray(22984);\n for (i_0 = 0; i_0 < 22984; i_0++) {\n occ[i_0] = 0;\n }\n count = 0;\n for (i_0 = 0; i_0 < 735471; ++i_0) {\n if ((occ[~~i_0 >>> 5] & (1 << (i_0 & 31))) === 0) {\n $set_0(c, i_0);\n for (j = 0; j < 48; ++j) {\n idx = $get_1(c);\n occ[~~idx >>> 5] |= 1 << (idx & 31);\n raw2sym !== null && (raw2sym[idx] = (count << 6) | syminv[j]);\n $rot(c, 0);\n j % 2 === 1 && $rot(c, 1);\n j % 8 === 7 && $rot(c, 2);\n j % 16 === 15 && $rot(c, 3);\n }\n sym2raw[count++] = i_0;\n }\n }\n}\n\nfunction raw2sym_0(n) {\n const m_0 = binarySearch_0(sym2raw, n);\n return m_0 >= 0 ? m_0 : -1;\n}\n\ndefineSeed(153, 1, makeCastMap([Q$Center1]), Center1_0, Center1_1, Center1_2);\n\nlet csprun,\n ctsmv,\n finish_0,\n raw2sym = null,\n sym2raw,\n syminv,\n symmove,\n symmult;\n\nlet ran$clinit_Center2 = false;\nfunction $clinit_Center2() {\n if (ran$clinit_Center2) {\n return;\n }\n ran$clinit_Center2 = true;\n rlmv = createArray(70, 28);\n ctmv = createArray(6435, 28);\n rlrot = createArray(70, 16);\n ctrot = createArray(6435, 16);\n ctprun = createArray(450450);\n pmv = [\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0,\n 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0,\n ];\n}\n\nfunction $getct(this$static) {\n let i_0, idx, r;\n idx = 0;\n r = 8;\n for (i_0 = 14; i_0 >= 0; --i_0) {\n this$static.ct[i_0] !== this$static.ct[15] && (idx += Cnk[i_0][r--]);\n }\n return idx;\n}\n\nfunction $getrl(this$static) {\n let i_0, idx, r;\n idx = 0;\n r = 4;\n for (i_0 = 6; i_0 >= 0; --i_0) {\n this$static.rl[i_0] !== this$static.rl[7] && (idx += Cnk[i_0][r--]);\n }\n return idx * 2 + this$static.parity;\n}\n\nfunction $move_0(this$static, m_0) {\n this$static.parity ^= pmv[m_0];\n const key = m_0 % 3;\n m_0 = ~~(m_0 / 3);\n switch (m_0) {\n case 0:\n swap(this$static.ct, 0, 1, 2, 3, key);\n break;\n case 1:\n swap(this$static.rl, 0, 1, 2, 3, key);\n break;\n case 2:\n swap(this$static.ct, 8, 9, 10, 11, key);\n break;\n case 3:\n swap(this$static.ct, 4, 5, 6, 7, key);\n break;\n case 4:\n swap(this$static.rl, 4, 5, 6, 7, key);\n break;\n case 5:\n swap(this$static.ct, 12, 13, 14, 15, key);\n break;\n case 6:\n swap(this$static.ct, 0, 1, 2, 3, key);\n swap(this$static.rl, 0, 5, 4, 1, key);\n swap(this$static.ct, 8, 9, 12, 13, key);\n break;\n case 7:\n swap(this$static.rl, 0, 1, 2, 3, key);\n swap(this$static.ct, 1, 15, 5, 9, key);\n swap(this$static.ct, 2, 12, 6, 10, key);\n break;\n case 8:\n swap(this$static.ct, 8, 9, 10, 11, key);\n swap(this$static.rl, 0, 3, 6, 5, key);\n swap(this$static.ct, 3, 2, 5, 4, key);\n break;\n case 9:\n swap(this$static.ct, 4, 5, 6, 7, key);\n swap(this$static.rl, 3, 2, 7, 6, key);\n swap(this$static.ct, 11, 10, 15, 14, key);\n break;\n case 10:\n swap(this$static.rl, 4, 5, 6, 7, key);\n swap(this$static.ct, 0, 8, 4, 14, key);\n swap(this$static.ct, 3, 11, 7, 13, key);\n break;\n case 11:\n swap(this$static.ct, 12, 13, 14, 15, key);\n swap(this$static.rl, 1, 4, 7, 2, key);\n swap(this$static.ct, 1, 0, 7, 6, key);\n }\n}\n\nfunction $rot_0(this$static, r) {\n switch (r) {\n case 0:\n $move_0(this$static, 19);\n $move_0(this$static, 28);\n break;\n case 1:\n $move_0(this$static, 21);\n $move_0(this$static, 32);\n break;\n case 2:\n swap(this$static.ct, 0, 3, 1, 2, 1);\n swap(this$static.ct, 8, 11, 9, 10, 1);\n swap(this$static.ct, 4, 7, 5, 6, 1);\n swap(this$static.ct, 12, 15, 13, 14, 1);\n swap(this$static.rl, 0, 3, 5, 6, 1);\n swap(this$static.rl, 1, 2, 4, 7, 1);\n }\n}\n\nfunction $set_2(this$static, c, edgeParity) {\n let i_0;\n for (i_0 = 0; i_0 < 16; ++i_0) {\n this$static.ct[i_0] = ~~(c.ct[i_0] / 2);\n }\n for (i_0 = 0; i_0 < 8; ++i_0) {\n this$static.rl[i_0] = c.ct[i_0 + 16];\n }\n this$static.parity = edgeParity;\n}\n\nfunction $setct(this$static, idx) {\n let i_0, r;\n r = 8;\n this$static.ct[15] = 0;\n for (i_0 = 14; i_0 >= 0; --i_0) {\n if (idx >= Cnk[i_0][r]) {\n idx -= Cnk[i_0][r--];\n this$static.ct[i_0] = 1;\n } else {\n this$static.ct[i_0] = 0;\n }\n }\n}\n\nfunction $setrl(this$static, idx) {\n let i_0, r;\n this$static.parity = idx & 1;\n idx >>>= 1;\n r = 4;\n this$static.rl[7] = 0;\n for (i_0 = 6; i_0 >= 0; --i_0) {\n if (idx >= Cnk[i_0][r]) {\n idx -= Cnk[i_0][r--];\n this$static.rl[i_0] = 1;\n } else {\n this$static.rl[i_0] = 0;\n }\n }\n}\n\nfunction Center2_0() {\n this.rl = createArray(8);\n this.ct = createArray(16);\n}\n\nfunction init_3() {\n let ct, ctx, depth, done, i_0, idx, j, m_0, rl, rlx;\n const c = new Center2_0();\n for (i_0 = 0; i_0 < 70; ++i_0) {\n for (m_0 = 0; m_0 < 28; ++m_0) {\n $setrl(c, i_0);\n $move_0(c, move2std[m_0]);\n rlmv[i_0][m_0] = $getrl(c);\n }\n }\n for (i_0 = 0; i_0 < 70; ++i_0) {\n $setrl(c, i_0);\n for (j = 0; j < 16; ++j) {\n rlrot[i_0][j] = $getrl(c);\n $rot_0(c, 0);\n j % 2 === 1 && $rot_0(c, 1);\n j % 8 === 7 && $rot_0(c, 2);\n }\n }\n for (i_0 = 0; i_0 < 6435; ++i_0) {\n $setct(c, i_0);\n for (j = 0; j < 16; ++j) {\n ctrot[i_0][j] = $getct(c) & 65535;\n $rot_0(c, 0);\n j % 2 === 1 && $rot_0(c, 1);\n j % 8 === 7 && $rot_0(c, 2);\n }\n }\n for (i_0 = 0; i_0 < 6435; ++i_0) {\n for (m_0 = 0; m_0 < 28; ++m_0) {\n $setct(c, i_0);\n $move_0(c, move2std[m_0]);\n ctmv[i_0][m_0] = $getct(c) & 65535;\n }\n }\n fill_0(ctprun);\n ctprun[0] =\n ctprun[18] =\n ctprun[28] =\n ctprun[46] =\n ctprun[54] =\n ctprun[56] =\n 0;\n depth = 0;\n done = 6;\n\n while (done !== 450450) {\n const inv = depth > 6;\n const select = inv ? -1 : depth;\n const check = inv ? depth : -1;\n ++depth;\n for (i_0 = 0; i_0 < 450450; ++i_0) {\n if (ctprun[i_0] !== select) {\n continue;\n }\n ct = ~~(i_0 / 70);\n rl = i_0 % 70;\n for (m_0 = 0; m_0 < 23; ++m_0) {\n ctx = ctmv[ct][m_0];\n rlx = rlmv[rl][m_0];\n idx = ctx * 70 + rlx;\n if (ctprun[idx] !== check) {\n continue;\n }\n ++done;\n if (inv) {\n ctprun[i_0] = depth;\n break;\n } else {\n ctprun[idx] = depth;\n }\n }\n }\n }\n}\n\ndefineSeed(154, 1, {}, Center2_0);\n_.parity = 0;\nlet ctmv, ctprun, ctrot, pmv, rlmv, rlrot;\n\nlet ran$clinit_Center3 = false;\nfunction $clinit_Center3() {\n if (ran$clinit_Center3) {\n return;\n }\n ran$clinit_Center3 = true;\n ctmove = createArray(29400, 20);\n pmove = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1];\n prun_0 = createArray(29400);\n rl2std = [0, 9, 14, 23, 27, 28, 41, 42, 46, 55, 60, 69];\n std2rl = createArray(70);\n}\n\nfunction $getct_0(this$static) {\n let i_0, idx, idxrl, r;\n idx = 0;\n r = 4;\n for (i_0 = 6; i_0 >= 0; --i_0) {\n this$static.ud[i_0] !== this$static.ud[7] && (idx += Cnk[i_0][r--]);\n }\n idx *= 35;\n r = 4;\n for (i_0 = 6; i_0 >= 0; --i_0) {\n this$static.fb[i_0] !== this$static.fb[7] && (idx += Cnk[i_0][r--]);\n }\n idx *= 12;\n const check = this$static.fb[7] ^ this$static.ud[7];\n idxrl = 0;\n r = 4;\n for (i_0 = 7; i_0 >= 0; --i_0) {\n this$static.rl[i_0] !== check && (idxrl += Cnk[i_0][r--]);\n }\n return this$static.parity + 2 * (idx + std2rl[idxrl]);\n}\n\nfunction $move_1(this$static, i_0) {\n this$static.parity ^= pmove[i_0];\n switch (i_0) {\n case 0:\n case 1:\n case 2:\n swap(this$static.ud, 0, 1, 2, 3, i_0 % 3);\n break;\n case 3:\n swap(this$static.rl, 0, 1, 2, 3, 1);\n break;\n case 4:\n case 5:\n case 6:\n swap(this$static.fb, 0, 1, 2, 3, (i_0 - 1) % 3);\n break;\n case 7:\n case 8:\n case 9:\n swap(this$static.ud, 4, 5, 6, 7, (i_0 - 1) % 3);\n break;\n case 10:\n swap(this$static.rl, 4, 5, 6, 7, 1);\n break;\n case 11:\n case 12:\n case 13:\n swap(this$static.fb, 4, 5, 6, 7, (i_0 + 1) % 3);\n break;\n case 14:\n swap(this$static.ud, 0, 1, 2, 3, 1);\n swap(this$static.rl, 0, 5, 4, 1, 1);\n swap(this$static.fb, 0, 5, 4, 1, 1);\n break;\n case 15:\n swap(this$static.rl, 0, 1, 2, 3, 1);\n swap(this$static.fb, 1, 4, 7, 2, 1);\n swap(this$static.ud, 1, 6, 5, 2, 1);\n break;\n case 16:\n swap(this$static.fb, 0, 1, 2, 3, 1);\n swap(this$static.ud, 3, 2, 5, 4, 1);\n swap(this$static.rl, 0, 3, 6, 5, 1);\n break;\n case 17:\n swap(this$static.ud, 4, 5, 6, 7, 1);\n swap(this$static.rl, 3, 2, 7, 6, 1);\n swap(this$static.fb, 3, 2, 7, 6, 1);\n break;\n case 18:\n swap(this$static.rl, 4, 5, 6, 7, 1);\n swap(this$static.fb, 0, 3, 6, 5, 1);\n swap(this$static.ud, 0, 3, 4, 7, 1);\n break;\n case 19:\n swap(this$static.fb, 4, 5, 6, 7, 1);\n swap(this$static.ud, 0, 7, 6, 1, 1);\n swap(this$static.rl, 1, 4, 7, 2, 1);\n }\n}\n\nfunction $set_3(this$static, c, eXc_parity) {\n let i_0;\n const parity =\n (c.ct[0] > c.ct[8] ? 1 : 0) ^\n (c.ct[8] > c.ct[16] ? 1 : 0) ^\n (c.ct[0] > c.ct[16] ? 1 : 0)\n ? 1\n : 0;\n for (i_0 = 0; i_0 < 8; ++i_0) {\n this$static.ud[i_0] = (c.ct[i_0] & 1) ^ 1;\n this$static.fb[i_0] = (c.ct[i_0 + 8] & 1) ^ 1;\n this$static.rl[i_0] = (c.ct[i_0 + 16] & 1) ^ 1 ^ parity;\n }\n this$static.parity = parity ^ eXc_parity;\n}\n\nfunction $setct_0(this$static, idx) {\n let i_0, idxfb, idxrl, r;\n this$static.parity = idx & 1;\n idx >>>= 1;\n idxrl = rl2std[idx % 12];\n idx = ~~(idx / 12);\n r = 4;\n for (i_0 = 7; i_0 >= 0; --i_0) {\n this$static.rl[i_0] = 0;\n if (idxrl >= Cnk[i_0][r]) {\n idxrl -= Cnk[i_0][r--];\n this$static.rl[i_0] = 1;\n }\n }\n idxfb = idx % 35;\n idx = ~~(idx / 35);\n r = 4;\n this$static.fb[7] = 0;\n for (i_0 = 6; i_0 >= 0; --i_0) {\n if (idxfb >= Cnk[i_0][r]) {\n idxfb -= Cnk[i_0][r--];\n this$static.fb[i_0] = 1;\n } else {\n this$static.fb[i_0] = 0;\n }\n }\n r = 4;\n this$static.ud[7] = 0;\n for (i_0 = 6; i_0 >= 0; --i_0) {\n if (idx >= Cnk[i_0][r]) {\n idx -= Cnk[i_0][r--];\n this$static.ud[i_0] = 1;\n } else {\n this$static.ud[i_0] = 0;\n }\n }\n}\n\nfunction Center3_0() {\n this.ud = createArray(8);\n this.rl = createArray(8);\n this.fb = createArray(8);\n}\n\nfunction init_4() {\n let depth, done, i_0, m_0;\n for (i_0 = 0; i_0 < 12; ++i_0) {\n std2rl[rl2std[i_0]] = i_0;\n }\n const c = new Center3_0();\n for (i_0 = 0; i_0 < 29400; ++i_0) {\n for (m_0 = 0; m_0 < 20; ++m_0) {\n $setct_0(c, i_0);\n $move_1(c, m_0);\n ctmove[i_0][m_0] = $getct_0(c) & 65535;\n }\n }\n fill_0(prun_0);\n prun_0[0] = 0;\n depth = 0;\n done = 1;\n while (done !== 29400) {\n for (i_0 = 0; i_0 < 29400; ++i_0) {\n if (prun_0[i_0] !== depth) {\n continue;\n }\n for (m_0 = 0; m_0 < 17; ++m_0) {\n if (prun_0[ctmove[i_0][m_0]] === -1) {\n prun_0[ctmove[i_0][m_0]] = depth + 1;\n ++done;\n }\n }\n }\n ++depth;\n }\n}\n\ndefineSeed(155, 1, {}, Center3_0);\n_.parity = 0;\nlet ctmove, pmove, prun_0, rl2std, std2rl;\n\nfunction $copy_1(this$static, c) {\n let i_0;\n for (i_0 = 0; i_0 < 24; ++i_0) {\n this$static.ct[i_0] = c.ct[i_0];\n }\n}\n\nfunction $move_2(this$static, m_0) {\n const key = m_0 % 3;\n m_0 = ~~(m_0 / 3);\n switch (m_0) {\n case 0:\n swap(this$static.ct, 0, 1, 2, 3, key);\n break;\n case 1:\n swap(this$static.ct, 16, 17, 18, 19, key);\n break;\n case 2:\n swap(this$static.ct, 8, 9, 10, 11, key);\n break;\n case 3:\n swap(this$static.ct, 4, 5, 6, 7, key);\n break;\n case 4:\n swap(this$static.ct, 20, 21, 22, 23, key);\n break;\n case 5:\n swap(this$static.ct, 12, 13, 14, 15, key);\n break;\n case 6:\n swap(this$static.ct, 0, 1, 2, 3, key);\n swap(this$static.ct, 8, 20, 12, 16, key);\n swap(this$static.ct, 9, 21, 13, 17, key);\n break;\n case 7:\n swap(this$static.ct, 16, 17, 18, 19, key);\n swap(this$static.ct, 1, 15, 5, 9, key);\n swap(this$static.ct, 2, 12, 6, 10, key);\n break;\n case 8:\n swap(this$static.ct, 8, 9, 10, 11, key);\n swap(this$static.ct, 2, 19, 4, 21, key);\n swap(this$static.ct, 3, 16, 5, 22, key);\n break;\n case 9:\n swap(this$static.ct, 4, 5, 6, 7, key);\n swap(this$static.ct, 10, 18, 14, 22, key);\n swap(this$static.ct, 11, 19, 15, 23, key);\n break;\n case 10:\n swap(this$static.ct, 20, 21, 22, 23, key);\n swap(this$static.ct, 0, 8, 4, 14, key);\n swap(this$static.ct, 3, 11, 7, 13, key);\n break;\n case 11:\n swap(this$static.ct, 12, 13, 14, 15, key);\n swap(this$static.ct, 1, 20, 7, 18, key);\n swap(this$static.ct, 0, 23, 6, 17, key);\n }\n}\n\nfunction CenterCube_0() {\n let i_0;\n this.ct = createArray(24);\n for (i_0 = 0; i_0 < 24; ++i_0) {\n this.ct[i_0] = ~~(i_0 / 4);\n }\n}\n\nfunction CenterCube_1(randomUIntBelow) {\n let i_0, m_0, t;\n CenterCube_0.call(this);\n for (i_0 = 0; i_0 < 23; ++i_0) {\n t = i_0 + randomUIntBelow(24 - i_0);\n if (this.ct[t] !== this.ct[i_0]) {\n m_0 = this.ct[i_0];\n this.ct[i_0] = this.ct[t];\n this.ct[t] = m_0;\n }\n }\n}\n\ndefineSeed(156, 1, {}, CenterCube_0, CenterCube_1);\n\nlet ran$clinit_CornerCube = false;\nfunction $clinit_CornerCube() {\n if (ran$clinit_CornerCube) {\n return;\n }\n ran$clinit_CornerCube = true;\n moveCube_0 = createArray(18);\n initMove_0();\n}\n\nfunction $$init_2(this$static) {\n this$static.cp = [0, 1, 2, 3, 4, 5, 6, 7];\n this$static.co = [0, 0, 0, 0, 0, 0, 0, 0];\n}\n\nfunction $copy_2(this$static, c) {\n let i_0;\n for (i_0 = 0; i_0 < 8; ++i_0) {\n this$static.cp[i_0] = c.cp[i_0];\n this$static.co[i_0] = c.co[i_0];\n }\n}\n\nfunction $move_3(this$static, idx) {\n !this$static.temps && (this$static.temps = new CornerCube_0());\n CornMult_0(this$static, moveCube_0[idx], this$static.temps);\n $copy_2(this$static, this$static.temps);\n}\n\nfunction $setTwist_0(this$static, idx) {\n let i_0, twst;\n twst = 0;\n for (i_0 = 6; i_0 >= 0; --i_0) {\n twst += this$static.co[i_0] = idx % 3;\n idx = ~~(idx / 3);\n }\n this$static.co[7] = (15 - twst) % 3;\n}\n\nfunction CornMult_0(a, b, prod) {\n let corn, ori, oriA, oriB;\n for (corn = 0; corn < 8; ++corn) {\n prod.cp[corn] = a.cp[b.cp[corn]];\n oriA = a.co[b.cp[corn]];\n oriB = b.co[corn];\n ori = oriA;\n ori = ori + (oriA < 3 ? oriB : 6 - oriB);\n ori = ori % 3;\n (oriA >= 3 ? 1 : 0) ^ (oriB >= 3 ? 1 : 0) && (ori = ori + 3);\n prod.co[corn] = ori;\n }\n}\n\nfunction CornerCube_0() {\n $$init_2(this);\n}\n\nfunction CornerCube_1(cperm, twist) {\n $$init_2(this);\n set8Perm(this.cp, cperm);\n $setTwist_0(this, twist);\n}\n\nfunction CornerCube_2(randomUIntBelow) {\n CornerCube_1.call(this, randomUIntBelow(40320), randomUIntBelow(2187));\n}\n\nfunction initMove_0() {\n let a, p_0;\n moveCube_0[0] = new CornerCube_1(15120, 0);\n moveCube_0[3] = new CornerCube_1(21021, 1494);\n moveCube_0[6] = new CornerCube_1(8064, 1236);\n moveCube_0[9] = new CornerCube_1(9, 0);\n moveCube_0[12] = new CornerCube_1(1230, 412);\n moveCube_0[15] = new CornerCube_1(224, 137);\n for (a = 0; a < 18; a += 3) {\n for (p_0 = 0; p_0 < 2; ++p_0) {\n moveCube_0[a + p_0 + 1] = new CornerCube_0();\n CornMult_0(moveCube_0[a + p_0], moveCube_0[a], moveCube_0[a + p_0 + 1]);\n }\n }\n}\n\ndefineSeed(\n 157,\n 1,\n makeCastMap([Q$CornerCube]),\n CornerCube_0,\n CornerCube_1,\n CornerCube_2,\n);\n_.temps = null;\nlet moveCube_0;\n\nlet ran$clinit_Edge3 = false;\nfunction $clinit_Edge3() {\n if (ran$clinit_Edge3) {\n return;\n }\n ran$clinit_Edge3 = true;\n eprun = createArray(1937880);\n sym2raw_0 = createArray(1538);\n symstate = createArray(1538);\n raw2sym_1 = createArray(11880);\n syminv_0 = [0, 1, 6, 3, 4, 5, 2, 7];\n mvrot = createArray(160, 12);\n mvroto = createArray(160, 12);\n factX = [\n 1, 1, 1, 3, 12, 60, 360, 2520, 20160, 181440, 1814400, 19958400, 239500800,\n ];\n FullEdgeMap = [0, 2, 4, 6, 1, 3, 7, 5, 8, 9, 10, 11];\n}\n\nfunction $circlex(this$static, a, b, c, d) {\n const temp = this$static.edgeo[d];\n this$static.edgeo[d] = this$static.edge[c];\n this$static.edge[c] = this$static.edgeo[b];\n this$static.edgeo[b] = this$static.edge[a];\n this$static.edge[a] = temp;\n}\n\nfunction $get_2(this$static, end) {\n let i_0, idx, v, valh, vall;\n this$static.isStd || $std(this$static);\n idx = 0;\n vall = 1985229328;\n valh = 47768;\n for (i_0 = 0; i_0 < end; ++i_0) {\n v = this$static.edge[i_0] << 2;\n idx *= 12 - i_0;\n if (v >= 32) {\n idx += (valh >> (v - 32)) & 15;\n valh -= 4368 << (v - 32);\n } else {\n idx += (vall >> v) & 15;\n valh -= 4369;\n vall -= 286331152 << v;\n }\n }\n return idx;\n}\n\nfunction $getsym_0(this$static) {\n let symcord1x;\n const cord1x = $get_2(this$static, 4);\n symcord1x = raw2sym_1[cord1x];\n const symx = symcord1x & 7;\n symcord1x >>= 3;\n $rotate_0(this$static, symx);\n const cord2x = $get_2(this$static, 10) % 20160;\n return symcord1x * 20160 + cord2x;\n}\n\nfunction $move_4(this$static, i_0) {\n this$static.isStd = false;\n switch (i_0) {\n case 0:\n circle(this$static.edge, 0, 4, 1, 5);\n circle(this$static.edgeo, 0, 4, 1, 5);\n break;\n case 1:\n $swap_0(this$static.edge, 0, 4, 1, 5);\n $swap_0(this$static.edgeo, 0, 4, 1, 5);\n break;\n case 2:\n circle(this$static.edge, 0, 5, 1, 4);\n circle(this$static.edgeo, 0, 5, 1, 4);\n break;\n case 3:\n $swap_0(this$static.edge, 5, 10, 6, 11);\n $swap_0(this$static.edgeo, 5, 10, 6, 11);\n break;\n case 4:\n circle(this$static.edge, 0, 11, 3, 8);\n circle(this$static.edgeo, 0, 11, 3, 8);\n break;\n case 5:\n $swap_0(this$static.edge, 0, 11, 3, 8);\n $swap_0(this$static.edgeo, 0, 11, 3, 8);\n break;\n case 6:\n circle(this$static.edge, 0, 8, 3, 11);\n circle(this$static.edgeo, 0, 8, 3, 11);\n break;\n case 7:\n circle(this$static.edge, 2, 7, 3, 6);\n circle(this$static.edgeo, 2, 7, 3, 6);\n break;\n case 8:\n $swap_0(this$static.edge, 2, 7, 3, 6);\n $swap_0(this$static.edgeo, 2, 7, 3, 6);\n break;\n case 9:\n circle(this$static.edge, 2, 6, 3, 7);\n circle(this$static.edgeo, 2, 6, 3, 7);\n break;\n case 10:\n $swap_0(this$static.edge, 4, 8, 7, 9);\n $swap_0(this$static.edgeo, 4, 8, 7, 9);\n break;\n case 11:\n circle(this$static.edge, 1, 9, 2, 10);\n circle(this$static.edgeo, 1, 9, 2, 10);\n break;\n case 12:\n $swap_0(this$static.edge, 1, 9, 2, 10);\n $swap_0(this$static.edgeo, 1, 9, 2, 10);\n break;\n case 13:\n circle(this$static.edge, 1, 10, 2, 9);\n circle(this$static.edgeo, 1, 10, 2, 9);\n break;\n case 14:\n $swap_0(this$static.edge, 0, 4, 1, 5);\n $swap_0(this$static.edgeo, 0, 4, 1, 5);\n circle(this$static.edge, 9, 11);\n circle(this$static.edgeo, 8, 10);\n break;\n case 15:\n $swap_0(this$static.edge, 5, 10, 6, 11);\n $swap_0(this$static.edgeo, 5, 10, 6, 11);\n circle(this$static.edge, 1, 3);\n circle(this$static.edgeo, 0, 2);\n break;\n case 16:\n $swap_0(this$static.edge, 0, 11, 3, 8);\n $swap_0(this$static.edgeo, 0, 11, 3, 8);\n circle(this$static.edge, 5, 7);\n circle(this$static.edgeo, 4, 6);\n break;\n case 17:\n $swap_0(this$static.edge, 2, 7, 3, 6);\n $swap_0(this$static.edgeo, 2, 7, 3, 6);\n circle(this$static.edge, 8, 10);\n circle(this$static.edgeo, 9, 11);\n break;\n case 18:\n $swap_0(this$static.edge, 4, 8, 7, 9);\n $swap_0(this$static.edgeo, 4, 8, 7, 9);\n circle(this$static.edge, 0, 2);\n circle(this$static.edgeo, 1, 3);\n break;\n case 19:\n $swap_0(this$static.edge, 1, 9, 2, 10);\n $swap_0(this$static.edgeo, 1, 9, 2, 10);\n circle(this$static.edge, 4, 6);\n circle(this$static.edgeo, 5, 7);\n }\n}\n\nfunction $rot_1(this$static, r) {\n this$static.isStd = false;\n switch (r) {\n case 0:\n $move_4(this$static, 14);\n $move_4(this$static, 17);\n break;\n case 1:\n $circlex(this$static, 11, 5, 10, 6);\n $circlex(this$static, 5, 10, 6, 11);\n $circlex(this$static, 1, 2, 3, 0);\n $circlex(this$static, 4, 9, 7, 8);\n $circlex(this$static, 8, 4, 9, 7);\n $circlex(this$static, 0, 1, 2, 3);\n break;\n case 2:\n $swapx(this$static, 4, 5);\n $swapx(this$static, 5, 4);\n $swapx(this$static, 11, 8);\n $swapx(this$static, 8, 11);\n $swapx(this$static, 7, 6);\n $swapx(this$static, 6, 7);\n $swapx(this$static, 9, 10);\n $swapx(this$static, 10, 9);\n $swapx(this$static, 1, 1);\n $swapx(this$static, 0, 0);\n $swapx(this$static, 3, 3);\n $swapx(this$static, 2, 2);\n }\n}\n\nfunction $rotate_0(this$static, r) {\n while (r >= 2) {\n r -= 2;\n $rot_1(this$static, 1);\n $rot_1(this$static, 2);\n }\n r !== 0 && $rot_1(this$static, 0);\n}\n\nfunction $set_4(this$static, idx) {\n let i_0, p_0, parity, v, vall, valh;\n vall = 0x76543210;\n valh = 0xba98;\n parity = 0;\n for (i_0 = 0; i_0 < 11; ++i_0) {\n p_0 = factX[11 - i_0];\n v = ~~(idx / p_0);\n idx = idx % p_0;\n parity ^= v;\n v <<= 2;\n if (v >= 32) {\n v = v - 32;\n this$static.edge[i_0] = (valh >> v) & 15;\n const m = (1 << v) - 1;\n valh = (valh & m) + ((valh >> 4) & ~m);\n } else {\n this$static.edge[i_0] = (vall >> v) & 15;\n const m = (1 << v) - 1;\n vall = (vall & m) + ((vall >>> 4) & ~m) + (valh << 28);\n valh = valh >> 4;\n }\n }\n if ((parity & 1) === 0) {\n this$static.edge[11] = vall;\n } else {\n this$static.edge[11] = this$static.edge[10];\n this$static.edge[10] = vall;\n }\n for (i_0 = 0; i_0 < 12; ++i_0) {\n this$static.edgeo[i_0] = i_0;\n }\n this$static.isStd = true;\n}\n\nfunction $set_5(this$static, e) {\n let i_0;\n for (i_0 = 0; i_0 < 12; ++i_0) {\n this$static.edge[i_0] = e.edge[i_0];\n this$static.edgeo[i_0] = e.edgeo[i_0];\n }\n this$static.isStd = e.isStd;\n}\n\nfunction $set_6(this$static, c) {\n let i_0, parity, s, t;\n this$static.temp === null && (this$static.temp = createArray(12));\n for (i_0 = 0; i_0 < 12; ++i_0) {\n this$static.temp[i_0] = i_0;\n this$static.edge[i_0] = c.ep[FullEdgeMap[i_0] + 12] % 12;\n }\n parity = 1;\n for (i_0 = 0; i_0 < 12; ++i_0) {\n while (this$static.edge[i_0] !== i_0) {\n t = this$static.edge[i_0];\n this$static.edge[i_0] = this$static.edge[t];\n this$static.edge[t] = t;\n s = this$static.temp[i_0];\n this$static.temp[i_0] = this$static.temp[t];\n this$static.temp[t] = s;\n parity ^= 1;\n }\n }\n for (i_0 = 0; i_0 < 12; ++i_0) {\n this$static.edge[i_0] = this$static.temp[c.ep[FullEdgeMap[i_0]] % 12];\n }\n return parity;\n}\n\nfunction $std(this$static) {\n let i_0;\n this$static.temp === null && (this$static.temp = createArray(12));\n for (i_0 = 0; i_0 < 12; ++i_0) {\n this$static.temp[this$static.edgeo[i_0]] = i_0;\n }\n for (i_0 = 0; i_0 < 12; ++i_0) {\n this$static.edge[i_0] = this$static.temp[this$static.edge[i_0]];\n this$static.edgeo[i_0] = i_0;\n }\n this$static.isStd = true;\n}\n\nfunction $swap_0(arr, a, b, c, d) {\n let temp;\n temp = arr[a];\n arr[a] = arr[c];\n arr[c] = temp;\n temp = arr[b];\n arr[b] = arr[d];\n arr[d] = temp;\n}\n\nfunction $swapx(this$static, x, y) {\n const temp = this$static.edge[x];\n this$static.edge[x] = this$static.edgeo[y];\n this$static.edgeo[y] = temp;\n}\n\nfunction Edge3_0() {\n this.edge = createArray(12);\n this.edgeo = createArray(12);\n}\n\nfunction createPrun_0() {\n let chk,\n cord1,\n cord1x,\n cord2,\n cord2x,\n dep1m3,\n depm3,\n depth,\n end,\n find_0,\n i_0,\n i_,\n idx,\n idxx,\n inv,\n j,\n m_0,\n symState,\n symcord1,\n symcord1x,\n symx,\n val;\n const e = new Edge3_0();\n const f = new Edge3_0();\n const g = new Edge3_0();\n fill_0(eprun);\n depth = 0;\n done_0 = 1;\n setPruning_0(eprun, 0, 0);\n // var start = +new Date;\n while (done_0 !== 31006080) {\n inv = depth > 9;\n depm3 = depth % 3;\n dep1m3 = (depth + 1) % 3;\n find_0 = inv ? 3 : depm3;\n chk = inv ? depm3 : 3;\n if (depth >= 9) {\n break;\n }\n for (i_ = 0; i_ < 31006080; i_ += 16) {\n val = eprun[~~i_ >> 4];\n if (!inv && val === -1) {\n continue;\n }\n for (i_0 = i_, end = i_ + 16; i_0 < end; ++i_0, val >>= 2) {\n if ((val & 3) !== find_0) {\n continue;\n }\n symcord1 = ~~(i_0 / 20160);\n cord1 = sym2raw_0[symcord1];\n cord2 = i_0 % 20160;\n $set_4(e, cord1 * 20160 + cord2);\n for (m_0 = 0; m_0 < 17; ++m_0) {\n cord1x = getmvrot(e.edge, m_0 << 3, 4);\n symcord1x = raw2sym_1[cord1x];\n symx = symcord1x & 7;\n symcord1x >>= 3;\n cord2x = getmvrot(e.edge, (m_0 << 3) | symx, 10) % 20160;\n idx = symcord1x * 20160 + cord2x;\n if (getPruning_0(eprun, idx) !== chk) {\n continue;\n }\n setPruning_0(eprun, inv ? i_0 : idx, dep1m3);\n ++done_0;\n if (inv) {\n break;\n }\n symState = symstate[symcord1x];\n if (symState === 1) {\n continue;\n }\n $set_5(f, e);\n $move_4(f, m_0);\n $rotate_0(f, symx);\n for (j = 1; (symState = (~~symState >> 1) & 65535) !== 0; ++j) {\n if ((symState & 1) !== 1) {\n continue;\n }\n $set_5(g, f);\n $rotate_0(g, j);\n idxx = symcord1x * 20160 + ($get_2(g, 10) % 20160);\n if (getPruning_0(eprun, idxx) === chk) {\n setPruning_0(eprun, idxx, dep1m3);\n ++done_0;\n }\n }\n }\n }\n }\n ++depth;\n // console.log(depth + '\\t' + done_0 + '\\t' + (+new Date - start));\n }\n}\n\nfunction getPruning_0(table, index) {\n return (table[index >> 4] >> ((index & 15) << 1)) & 3;\n}\n\nfunction getmvrot(ep, mrIdx, end) {\n let i_0, idx, v, valh, vall;\n const movo = mvroto[mrIdx];\n const mov = mvrot[mrIdx];\n idx = 0;\n vall = 1985229328;\n valh = 47768;\n for (i_0 = 0; i_0 < end; ++i_0) {\n v = movo[ep[mov[i_0]]] << 2;\n idx *= 12 - i_0;\n if (v >= 32) {\n idx += (valh >> (v - 32)) & 15;\n valh -= 4368 << (v - 32);\n } else {\n idx += (vall >> v) & 15;\n valh -= 4369;\n vall -= 286331152 << v;\n }\n }\n return idx;\n}\n\nfunction getprun(edge) {\n let cord1,\n cord1x,\n cord2,\n cord2x,\n depm3,\n depth,\n idx,\n m_0,\n symcord1,\n symcord1x,\n symx;\n const e = new Edge3_0();\n depth = 0;\n depm3 = getPruning_0(eprun, edge);\n if (depm3 === 3) {\n return 10;\n }\n while (edge !== 0) {\n depm3 === 0 ? (depm3 = 2) : --depm3;\n symcord1 = ~~(edge / 20160);\n cord1 = sym2raw_0[symcord1];\n cord2 = edge % 20160;\n $set_4(e, cord1 * 20160 + cord2);\n for (m_0 = 0; m_0 < 17; ++m_0) {\n cord1x = getmvrot(e.edge, m_0 << 3, 4);\n symcord1x = raw2sym_1[cord1x];\n symx = symcord1x & 7;\n symcord1x >>= 3;\n cord2x = getmvrot(e.edge, (m_0 << 3) | symx, 10) % 20160;\n idx = symcord1x * 20160 + cord2x;\n if (getPruning_0(eprun, idx) === depm3) {\n ++depth;\n edge = idx;\n break;\n }\n }\n }\n return depth;\n}\n\nfunction getprun_0(edge, prun) {\n const depm3 = getPruning_0(eprun, edge);\n if (depm3 === 3) {\n return 10;\n }\n return (((0x49249249 << depm3) >> prun) & 3) + prun - 1;\n // (depm3 - prun + 16) % 3 + prun - 1;\n}\n\nfunction initMvrot() {\n let i_0, m_0, r;\n const e = new Edge3_0();\n for (m_0 = 0; m_0 < 20; ++m_0) {\n for (r = 0; r < 8; ++r) {\n $set_4(e, 0);\n $move_4(e, m_0);\n $rotate_0(e, r);\n for (i_0 = 0; i_0 < 12; ++i_0) {\n mvrot[(m_0 << 3) | r][i_0] = e.edge[i_0];\n }\n $std(e);\n for (i_0 = 0; i_0 < 12; ++i_0) {\n mvroto[(m_0 << 3) | r][i_0] = e.temp[i_0];\n }\n }\n }\n}\n\nfunction initRaw2Sym() {\n let count, i_0, idx, j;\n const e = new Edge3_0();\n const occ = createArray(1485);\n for (i_0 = 0; i_0 < 1485; i_0++) {\n occ[i_0] = 0;\n }\n count = 0;\n for (i_0 = 0; i_0 < 11880; ++i_0) {\n if ((occ[~~i_0 >>> 3] & (1 << (i_0 & 7))) === 0) {\n $set_4(e, i_0 * factX[8]);\n for (j = 0; j < 8; ++j) {\n idx = $get_2(e, 4);\n idx === i_0 && (symstate[count] = (symstate[count] | (1 << j)) & 65535);\n occ[~~idx >> 3] = occ[~~idx >> 3] | (1 << (idx & 7));\n raw2sym_1[idx] = (count << 3) | syminv_0[j];\n $rot_1(e, 0);\n if (j % 2 === 1) {\n $rot_1(e, 1);\n $rot_1(e, 2);\n }\n }\n sym2raw_0[count++] = i_0;\n }\n }\n}\n\nfunction setPruning_0(table, index, value) {\n table[index >> 4] ^= (3 ^ value) << ((index & 15) << 1);\n}\n\ndefineSeed(158, 1, makeCastMap([Q$Edge3]), Edge3_0);\n_.isStd = true;\n_.temp = null;\nlet FullEdgeMap,\n done_0 = 0,\n eprun,\n factX,\n mvrot,\n mvroto,\n raw2sym_1,\n sym2raw_0,\n syminv_0,\n symstate;\n\nlet ran$clinit_EdgeCube = false;\nfunction $clinit_EdgeCube() {\n if (ran$clinit_EdgeCube) {\n return;\n }\n ran$clinit_EdgeCube = true;\n}\n\nfunction $checkEdge(this$static) {\n let ck, i_0, parity;\n ck = 0;\n parity = false;\n for (i_0 = 0; i_0 < 12; ++i_0) {\n ck |= 1 << this$static.ep[i_0];\n parity = parity !== this$static.ep[i_0] >= 12;\n }\n ck &= ~~ck >> 12;\n return ck === 0 && !parity;\n}\n\nfunction $copy_3(this$static, c) {\n let i_0;\n for (i_0 = 0; i_0 < 24; ++i_0) {\n this$static.ep[i_0] = c.ep[i_0];\n }\n}\n\nfunction $move_5(this$static, m_0) {\n const key = m_0 % 3;\n m_0 = ~~(m_0 / 3);\n switch (m_0) {\n case 0:\n swap(this$static.ep, 0, 1, 2, 3, key);\n swap(this$static.ep, 12, 13, 14, 15, key);\n break;\n case 1:\n swap(this$static.ep, 11, 15, 10, 19, key);\n swap(this$static.ep, 23, 3, 22, 7, key);\n break;\n case 2:\n swap(this$static.ep, 0, 11, 6, 8, key);\n swap(this$static.ep, 12, 23, 18, 20, key);\n break;\n case 3:\n swap(this$static.ep, 4, 5, 6, 7, key);\n swap(this$static.ep, 16, 17, 18, 19, key);\n break;\n case 4:\n swap(this$static.ep, 1, 20, 5, 21, key);\n swap(this$static.ep, 13, 8, 17, 9, key);\n break;\n case 5:\n swap(this$static.ep, 2, 9, 4, 10, key);\n swap(this$static.ep, 14, 21, 16, 22, key);\n break;\n case 6:\n swap(this$static.ep, 0, 1, 2, 3, key);\n swap(this$static.ep, 12, 13, 14, 15, key);\n swap(this$static.ep, 9, 22, 11, 20, key);\n break;\n case 7:\n swap(this$static.ep, 11, 15, 10, 19, key);\n swap(this$static.ep, 23, 3, 22, 7, key);\n swap(this$static.ep, 2, 16, 6, 12, key);\n break;\n case 8:\n swap(this$static.ep, 0, 11, 6, 8, key);\n swap(this$static.ep, 12, 23, 18, 20, key);\n swap(this$static.ep, 3, 19, 5, 13, key);\n break;\n case 9:\n swap(this$static.ep, 4, 5, 6, 7, key);\n swap(this$static.ep, 16, 17, 18, 19, key);\n swap(this$static.ep, 8, 23, 10, 21, key);\n break;\n case 10:\n swap(this$static.ep, 1, 20, 5, 21, key);\n swap(this$static.ep, 13, 8, 17, 9, key);\n swap(this$static.ep, 14, 0, 18, 4, key);\n break;\n case 11:\n swap(this$static.ep, 2, 9, 4, 10, key);\n swap(this$static.ep, 14, 21, 16, 22, key);\n swap(this$static.ep, 7, 15, 1, 17, key);\n }\n}\n\nfunction EdgeCube_0() {\n let i_0;\n this.ep = createArray(24);\n for (i_0 = 0; i_0 < 24; ++i_0) {\n this.ep[i_0] = i_0;\n }\n}\n\nfunction EdgeCube_1(randomUIntBelow) {\n let i_0, m_0, t;\n EdgeCube_0.call(this);\n for (i_0 = 0; i_0 < 23; ++i_0) {\n t = i_0 + randomUIntBelow(24 - i_0);\n if (t !== i_0) {\n m_0 = this.ep[i_0];\n this.ep[i_0] = this.ep[t];\n this.ep[t] = m_0;\n }\n }\n}\n\ndefineSeed(159, 1, {}, EdgeCube_0, EdgeCube_1);\n\nlet ran$clinit_FullCube_0 = false;\nfunction $clinit_FullCube_0() {\n if (ran$clinit_FullCube_0) {\n return;\n }\n ran$clinit_FullCube_0 = true;\n move2rot = [35, 1, 34, 2, 4, 6, 22, 5, 19];\n}\n\nfunction $$init_3(this$static) {\n this$static.moveBuffer = createArray(60);\n}\n\nfunction $compareTo_1(this$static, c) {\n return this$static.value - c.value;\n}\n\nfunction $copy_4(this$static, c) {\n let i_0;\n $copy_3(this$static.edge, c.edge);\n $copy_1(this$static.center, c.center);\n $copy_2(this$static.corner, c.corner);\n this$static.value = c.value;\n this$static.add1 = c.add1;\n this$static.length1 = c.length1;\n this$static.length2 = c.length2;\n this$static.length3 = c.length3;\n this$static.sym = c.sym;\n for (i_0 = 0; i_0 < 60; ++i_0) {\n this$static.moveBuffer[i_0] = c.moveBuffer[i_0];\n }\n this$static.moveLength = c.moveLength;\n this$static.edgeAvail = c.edgeAvail;\n this$static.centerAvail = c.centerAvail;\n this$static.cornerAvail = c.cornerAvail;\n}\n\nfunction $getCenter(this$static) {\n while (this$static.centerAvail < this$static.moveLength) {\n $move_2(\n this$static.center,\n this$static.moveBuffer[this$static.centerAvail++],\n );\n }\n return this$static.center;\n}\n\nfunction $getCorner(this$static) {\n while (this$static.cornerAvail < this$static.moveLength) {\n $move_3(\n this$static.corner,\n this$static.moveBuffer[this$static.cornerAvail++] % 18,\n );\n }\n return this$static.corner;\n}\n\nfunction $getEdge(this$static) {\n while (this$static.edgeAvail < this$static.moveLength) {\n $move_5(this$static.edge, this$static.moveBuffer[this$static.edgeAvail++]);\n }\n return this$static.edge;\n}\n\nfunction $getMoveString(this$static) {\n let i_0, idx, move, rot, sb, sym;\n const fixedMoves = new Array(\n this$static.moveLength - (this$static.add1 ? 2 : 0),\n );\n idx = 0;\n for (i_0 = 0; i_0 < this$static.length1; ++i_0) {\n fixedMoves[idx++] = this$static.moveBuffer[i_0];\n }\n sym = this$static.sym;\n for (\n i_0 = this$static.length1 + (this$static.add1 ? 2 : 0);\n i_0 < this$static.moveLength;\n ++i_0\n ) {\n if (symmove[sym][this$static.moveBuffer[i_0]] >= 27) {\n fixedMoves[idx++] = symmove[sym][this$static.moveBuffer[i_0]] - 9;\n rot = move2rot[symmove[sym][this$static.moveBuffer[i_0]] - 27];\n sym = symmult[sym][rot];\n } else {\n fixedMoves[idx++] = symmove[sym][this$static.moveBuffer[i_0]];\n }\n }\n const finishSym = symmult[syminv[sym]][getSolvedSym($getCenter(this$static))];\n sb = \"\";\n sym = finishSym;\n for (i_0 = idx - 1; i_0 >= 0; --i_0) {\n move = fixedMoves[i_0];\n move = ~~(move / 3) * 3 + (2 - (move % 3));\n if (symmove[sym][move] >= 27) {\n sb = sb + move2str_1[symmove[sym][move] - 9] + \" \";\n rot = move2rot[symmove[sym][move] - 27];\n sym = symmult[sym][rot];\n } else {\n sb = sb + move2str_1[symmove[sym][move]] + \" \";\n }\n }\n return sb;\n}\n\nfunction $move_6(this$static, m_0) {\n this$static.moveBuffer[this$static.moveLength++] = m_0;\n return;\n}\n\nfunction FullCube_3() {\n $$init_3(this);\n this.edge = new EdgeCube_0();\n this.center = new CenterCube_0();\n this.corner = new CornerCube_0();\n}\n\nfunction FullCube_4(c) {\n FullCube_3.call(this);\n $copy_4(this, c);\n}\n\nfunction FullCube_5(randomUIntBelow) {\n $$init_3(this);\n this.edge = new EdgeCube_1(randomUIntBelow);\n this.center = new CenterCube_1(randomUIntBelow);\n this.corner = new CornerCube_2(randomUIntBelow);\n}\n\ndefineSeed(\n 160,\n 1,\n makeCastMap([Q$FullCube_0, Q$Comparable]),\n FullCube_3,\n FullCube_4,\n FullCube_5,\n);\n_.compareTo$ = function compareTo_1(c) {\n return $compareTo_1(this, c);\n};\n_.add1 = false;\n_.center = null;\n_.centerAvail = 0;\n_.corner = null;\n_.cornerAvail = 0;\n_.edge = null;\n_.edgeAvail = 0;\n_.length1 = 0;\n_.length2 = 0;\n_.length3 = 0;\n_.moveLength = 0;\n_.sym = 0;\n_.value = 0;\nlet move2rot;\n\nfunction $compare(c1, c2) {\n return c2.value - c1.value;\n}\n\nfunction $compare_0(c1, c2) {\n return $compare(c1, c2);\n}\n\nfunction FullCube$ValueComparator_0() {}\n\ndefineSeed(161, 1, {}, FullCube$ValueComparator_0);\n_.compare = function compare(c1, c2) {\n return $compare_0(c1, c2);\n};\n\nlet ran$clinit_Moves = false;\nfunction $clinit_Moves() {\n if (ran$clinit_Moves) {\n return;\n }\n ran$clinit_Moves = true;\n let i_0, j;\n move2str_1 = [\n \"U \",\n \"U2 \",\n \"U' \",\n \"R \",\n \"R2 \",\n \"R' \",\n \"F \",\n \"F2 \",\n \"F' \",\n \"D \",\n \"D2 \",\n \"D' \",\n \"L \",\n \"L2 \",\n \"L' \",\n \"B \",\n \"B2 \",\n \"B' \",\n \"Uw \",\n \"Uw2\",\n \"Uw'\",\n \"Rw \",\n \"Rw2\",\n \"Rw'\",\n \"Fw \",\n \"Fw2\",\n \"Fw'\",\n \"Dw \",\n \"Dw2\",\n \"Dw'\",\n \"Lw \",\n \"Lw2\",\n \"Lw'\",\n \"Bw \",\n \"Bw2\",\n \"Bw'\",\n ];\n move2std = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 21, 22,\n 23, 25, 28, 30, 31, 32, 34, 36,\n ];\n move3std = [\n 0, 1, 2, 4, 6, 7, 8, 9, 10, 11, 13, 15, 16, 17, 19, 22, 25, 28, 31, 34, 36,\n ];\n std2move = createArray(37);\n std3move = createArray(37);\n ckmv = createArray(37, 36);\n ckmv2_0 = createArray(29, 28);\n ckmv3 = createArray(21, 20);\n skipAxis = createArray(36);\n skipAxis2 = createArray(28);\n skipAxis3 = createArray(20);\n for (i_0 = 0; i_0 < 29; ++i_0) {\n std2move[move2std[i_0]] = i_0;\n }\n for (i_0 = 0; i_0 < 21; ++i_0) {\n std3move[move3std[i_0]] = i_0;\n }\n for (i_0 = 0; i_0 < 36; ++i_0) {\n for (j = 0; j < 36; ++j) {\n ckmv[i_0][j] =\n ~~(i_0 / 3) === ~~(j / 3) ||\n (~~(i_0 / 3) % 3 === ~~(j / 3) % 3 && i_0 > j);\n }\n ckmv[36][i_0] = false;\n }\n for (i_0 = 0; i_0 < 29; ++i_0) {\n for (j = 0; j < 28; ++j) {\n ckmv2_0[i_0][j] = ckmv[move2std[i_0]][move2std[j]];\n }\n }\n for (i_0 = 0; i_0 < 21; ++i_0) {\n for (j = 0; j < 20; ++j) {\n ckmv3[i_0][j] = ckmv[move3std[i_0]][move3std[j]];\n }\n }\n for (i_0 = 0; i_0 < 36; ++i_0) {\n skipAxis[i_0] = 36;\n for (j = i_0; j < 36; ++j) {\n if (!ckmv[i_0][j]) {\n skipAxis[i_0] = j - 1;\n break;\n }\n }\n }\n for (i_0 = 0; i_0 < 28; ++i_0) {\n skipAxis2[i_0] = 28;\n for (j = i_0; j < 28; ++j) {\n if (!ckmv2_0[i_0][j]) {\n skipAxis2[i_0] = j - 1;\n break;\n }\n }\n }\n for (i_0 = 0; i_0 < 20; ++i_0) {\n skipAxis3[i_0] = 20;\n for (j = i_0; j < 20; ++j) {\n if (!ckmv3[i_0][j]) {\n skipAxis3[i_0] = j - 1;\n break;\n }\n }\n }\n}\n\nlet ckmv,\n ckmv2_0,\n ckmv3,\n move2std,\n move2str_1,\n move3std,\n skipAxis,\n skipAxis2,\n skipAxis3,\n std2move,\n std3move;\n\nfunction $doSearch(this$static) {\n let MAX_LENGTH2,\n MAX_LENGTH3,\n ct,\n edge,\n eparity,\n i_0,\n index,\n length12,\n length123,\n prun,\n s2ct,\n s2rl;\n this$static.solution = \"\";\n const ud = $getsym(new Center1_1($getCenter(this$static.c), 0));\n const fb = $getsym(new Center1_1($getCenter(this$static.c), 1));\n const rl = $getsym(new Center1_1($getCenter(this$static.c), 2));\n const udprun = csprun[~~ud >> 6];\n const fbprun = csprun[~~fb >> 6];\n const rlprun = csprun[~~rl >> 6];\n this$static.p1SolsCnt = 0;\n this$static.arr2idx = 0;\n $clear(this$static.p1sols.heap);\n for (\n this$static.length1 =\n (udprun < fbprun ? udprun : fbprun) < rlprun\n ? udprun < fbprun\n ? udprun\n : fbprun\n : rlprun;\n this$static.length1 < 100;\n ++this$static.length1\n ) {\n if (\n (rlprun <= this$static.length1 &&\n $search1(\n this$static,\n ~~rl >>> 6,\n rl & 63,\n this$static.length1,\n -1,\n 0,\n )) ||\n (udprun <= this$static.length1 &&\n $search1(\n this$static,\n ~~ud >>> 6,\n ud & 63,\n this$static.length1,\n -1,\n 0,\n )) ||\n (fbprun <= this$static.length1 &&\n $search1(this$static, ~~fb >>> 6, fb & 63, this$static.length1, -1, 0))\n ) {\n break;\n }\n }\n const p1SolsArr = $toArray_1(\n this$static.p1sols,\n initDim(\n _3Lcs_threephase_FullCube_2_classLit,\n makeCastMap([Q$FullCube_$1, Q$Serializable, Q$Object_$1]),\n Q$FullCube_0,\n 0,\n 0,\n ),\n );\n\n p1SolsArr.sort(function (a, b) {\n return a.value - b.value;\n });\n MAX_LENGTH2 = 9;\n do {\n OUT: for (length12 = p1SolsArr[0].value; length12 < 100; ++length12) {\n for (i_0 = 0; i_0 < p1SolsArr.length; ++i_0) {\n if (p1SolsArr[i_0].value > length12) {\n break;\n }\n if (length12 - p1SolsArr[i_0].length1 > MAX_LENGTH2) {\n continue;\n }\n $copy_4(this$static.c1, p1SolsArr[i_0]);\n $set_2(\n this$static.ct2,\n $getCenter(this$static.c1),\n parity_0($getEdge(this$static.c1).ep),\n );\n s2ct = $getct(this$static.ct2);\n s2rl = $getrl(this$static.ct2);\n this$static.length1 = p1SolsArr[i_0].length1;\n this$static.length2 = length12 - p1SolsArr[i_0].length1;\n if ($search2(this$static, s2ct, s2rl, this$static.length2, 28, 0)) {\n break OUT;\n }\n }\n }\n ++MAX_LENGTH2;\n } while (length12 === 100);\n this$static.arr2.sort(function (a, b) {\n return a.value - b.value;\n });\n index = 0;\n MAX_LENGTH3 = 13;\n do {\n OUT2: for (\n length123 = this$static.arr2[0].value;\n length123 < 100;\n ++length123\n ) {\n for (i_0 = 0; i_0 < Math.min(this$static.arr2idx, 100); ++i_0) {\n if (this$static.arr2[i_0].value > length123) {\n break;\n }\n if (\n length123 -\n this$static.arr2[i_0].length1 -\n this$static.arr2[i_0].length2 >\n MAX_LENGTH3\n ) {\n continue;\n }\n eparity = $set_6(this$static.e12, $getEdge(this$static.arr2[i_0]));\n $set_3(\n this$static.ct3,\n $getCenter(this$static.arr2[i_0]),\n eparity ^ parity_0($getCorner(this$static.arr2[i_0]).cp),\n );\n ct = $getct_0(this$static.ct3);\n edge = $get_2(this$static.e12, 10);\n prun = getprun($getsym_0(this$static.e12));\n if (\n prun <=\n length123 -\n this$static.arr2[i_0].length1 -\n this$static.arr2[i_0].length2 &&\n $search3(\n this$static,\n edge,\n ct,\n prun,\n length123 -\n this$static.arr2[i_0].length1 -\n this$static.arr2[i_0].length2,\n 20,\n 0,\n )\n ) {\n index = i_0;\n break OUT2;\n }\n }\n }\n ++MAX_LENGTH3;\n } while (length123 === 100);\n const solcube = new FullCube_4(this$static.arr2[index]);\n this$static.length1 = solcube.length1;\n this$static.length2 = solcube.length2;\n const length_0 = length123 - this$static.length1 - this$static.length2;\n for (i_0 = 0; i_0 < length_0; ++i_0) {\n $move_6(solcube, move3std[this$static.move3[i_0]]);\n }\n this$static.solution = $getMoveString(solcube);\n}\n\nfunction $init2_0(this$static, sym) {\n let i_0, next;\n $copy_4(this$static.c1, this$static.c);\n for (i_0 = 0; i_0 < this$static.length1; ++i_0) {\n $move_6(this$static.c1, this$static.move1[i_0]);\n }\n switch (finish_0[sym]) {\n case 0:\n $move_6(this$static.c1, 24);\n $move_6(this$static.c1, 35);\n this$static.move1[this$static.length1] = 24;\n this$static.move1[this$static.length1 + 1] = 35;\n this$static.add1 = true;\n sym = 19;\n break;\n case 12869:\n $move_6(this$static.c1, 18);\n $move_6(this$static.c1, 29);\n this$static.move1[this$static.length1] = 18;\n this$static.move1[this$static.length1 + 1] = 29;\n this$static.add1 = true;\n sym = 34;\n break;\n case 735470:\n this$static.add1 = false;\n sym = 0;\n }\n $set_2(\n this$static.ct2,\n $getCenter(this$static.c1),\n parity_0($getEdge(this$static.c1).ep),\n );\n const s2ct = $getct(this$static.ct2);\n const s2rl = $getrl(this$static.ct2);\n const ctp = ctprun[s2ct * 70 + s2rl];\n this$static.c1.value = ctp + this$static.length1;\n this$static.c1.length1 = this$static.length1;\n this$static.c1.add1 = this$static.add1;\n this$static.c1.sym = sym;\n ++this$static.p1SolsCnt;\n if (this$static.p1sols.heap.size < 500) {\n next = new FullCube_4(this$static.c1);\n } else {\n next = $poll(this$static.p1sols);\n next.value > this$static.c1.value && $copy_4(next, this$static.c1);\n }\n $add(this$static.p1sols, next);\n return this$static.p1SolsCnt === 10000;\n}\n\nfunction $init3(this$static) {\n let i_0;\n $copy_4(this$static.c2, this$static.c1);\n for (i_0 = 0; i_0 < this$static.length2; ++i_0) {\n $move_6(this$static.c2, this$static.move2[i_0]);\n }\n if (!$checkEdge($getEdge(this$static.c2))) {\n return false;\n }\n const eparity = $set_6(this$static.e12, $getEdge(this$static.c2));\n $set_3(\n this$static.ct3,\n $getCenter(this$static.c2),\n eparity ^ parity_0($getCorner(this$static.c2).cp),\n );\n const ct = $getct_0(this$static.ct3);\n $get_2(this$static.e12, 10);\n const prun = getprun($getsym_0(this$static.e12));\n !this$static.arr2[this$static.arr2idx]\n ? (this$static.arr2[this$static.arr2idx] = new FullCube_4(this$static.c2))\n : $copy_4(this$static.arr2[this$static.arr2idx], this$static.c2);\n this$static.arr2[this$static.arr2idx].value =\n this$static.length1 + this$static.length2 + Math.max(prun, prun_0[ct]);\n this$static.arr2[this$static.arr2idx].length2 = this$static.length2;\n ++this$static.arr2idx;\n return this$static.arr2idx === this$static.arr2.length;\n}\n\nfunction $randomState(this$static, randomUIntBelow) {\n init_5();\n this$static.c = new FullCube_5(randomUIntBelow);\n $doSearch(this$static);\n return this$static.solution;\n}\n\nfunction $search1(this$static, ct, sym, maxl, lm, depth) {\n let axis, ctx, m_0, power, prun, symx;\n if (ct === 0) {\n return maxl === 0 && $init2_0(this$static, sym);\n }\n for (axis = 0; axis < 27; axis += 3) {\n if (axis === lm || axis === lm - 9 || axis === lm - 18) {\n continue;\n }\n for (power = 0; power < 3; ++power) {\n m_0 = axis + power;\n ctx = ctsmv[ct][symmove[sym][m_0]];\n prun = csprun[~~ctx >>> 6];\n if (prun >= maxl) {\n if (prun > maxl) {\n break;\n }\n continue;\n }\n symx = symmult[sym][ctx & 63];\n ctx >>>= 6;\n this$static.move1[depth] = m_0;\n if ($search1(this$static, ctx, symx, maxl - 1, axis, depth + 1)) {\n return true;\n }\n }\n }\n return false;\n}\n\nfunction $search2(this$static, ct, rl, maxl, lm, depth) {\n let ctx, m_0, prun, rlx;\n if (ct === 0 && ctprun[rl] === 0) {\n return maxl === 0 && $init3(this$static);\n }\n for (m_0 = 0; m_0 < 23; ++m_0) {\n if (ckmv2_0[lm][m_0]) {\n m_0 = skipAxis2[m_0];\n continue;\n }\n ctx = ctmv[ct][m_0];\n rlx = rlmv[rl][m_0];\n prun = ctprun[ctx * 70 + rlx];\n if (prun >= maxl) {\n prun > maxl && (m_0 = skipAxis2[m_0]);\n continue;\n }\n this$static.move2[depth] = move2std[m_0];\n if ($search2(this$static, ctx, rlx, maxl - 1, m_0, depth + 1)) {\n return true;\n }\n }\n return false;\n}\n\nfunction $search3(this$static, edge, ct, prun, maxl, lm, depth) {\n let cord1x, cord2x, ctx, edgex, m_0, prun1, prunx, symcord1x, symx;\n if (maxl === 0) {\n return edge === 0 && ct === 0;\n }\n $set_4(this$static.tempe[depth], edge);\n for (m_0 = 0; m_0 < 17; ++m_0) {\n if (ckmv3[lm][m_0]) {\n m_0 = skipAxis3[m_0];\n continue;\n }\n ctx = ctmove[ct][m_0];\n prun1 = prun_0[ctx];\n if (prun1 >= maxl) {\n prun1 > maxl && m_0 < 14 && (m_0 = skipAxis3[m_0]);\n continue;\n }\n edgex = getmvrot(this$static.tempe[depth].edge, m_0 << 3, 10);\n cord1x = ~~(edgex / 20160);\n symcord1x = raw2sym_1[cord1x];\n symx = symcord1x & 7;\n symcord1x >>= 3;\n cord2x =\n getmvrot(this$static.tempe[depth].edge, (m_0 << 3) | symx, 10) % 20160;\n prunx = getprun_0(symcord1x * 20160 + cord2x, prun);\n if (prunx >= maxl) {\n prunx > maxl && m_0 < 14 && (m_0 = skipAxis3[m_0]);\n continue;\n }\n if ($search3(this$static, edgex, ctx, prunx, maxl - 1, m_0, depth + 1)) {\n this$static.move3[depth] = m_0;\n return true;\n }\n }\n return false;\n}\n\nfunction Search_4() {\n let i_0;\n this.p1sols = new PriorityQueue_0(new FullCube$ValueComparator_0());\n this.move1 = createArray(15);\n this.move2 = createArray(20);\n this.move3 = createArray(20);\n this.c1 = new FullCube_3();\n this.c2 = new FullCube_3();\n this.ct2 = new Center2_0();\n this.ct3 = new Center3_0();\n this.e12 = new Edge3_0();\n this.tempe = createArray(20);\n this.arr2 = createArray(100);\n for (i_0 = 0; i_0 < 20; ++i_0) {\n this.tempe[i_0] = new Edge3_0();\n }\n}\n\nfunction init_5() {\n if (inited_2) {\n return;\n }\n initSym_0();\n raw2sym = createArray(735471);\n initSym2Raw();\n createMoveTable();\n raw2sym = null;\n createPrun();\n init_3();\n init_4();\n initMvrot();\n initRaw2Sym();\n createPrun_0();\n inited_2 = true;\n}\n\ndefineSeed(163, 1, makeCastMap([Q$Search_0]), Search_4);\n_.add1 = false;\n_.arr2idx = 0;\n_.c = null;\n_.length1 = 0;\n_.length2 = 0;\n_.p1SolsCnt = 0;\n_.solution = \"\";\nlet inited_2 = false;\n\nlet ran$clinit_Util_0 = false;\nfunction $clinit_Util_0() {\n if (ran$clinit_Util_0) {\n return;\n }\n ran$clinit_Util_0 = true;\n}\n\nfunction parity_0(arr) {\n let i_0, j, len, parity;\n parity = 0;\n for (i_0 = 0, len = arr.length; i_0 < len; ++i_0) {\n for (j = i_0; j < len; ++j) {\n arr[i_0] > arr[j] && (parity ^= 1);\n }\n }\n return parity;\n}\n\nfunction swap(arr, a, b, c, d, key) {\n let temp;\n switch (key) {\n case 0:\n temp = arr[d];\n arr[d] = arr[c];\n arr[c] = arr[b];\n arr[b] = arr[a];\n arr[a] = temp;\n return;\n case 1:\n temp = arr[a];\n arr[a] = arr[c];\n arr[c] = temp;\n temp = arr[b];\n arr[b] = arr[d];\n arr[d] = temp;\n return;\n case 2:\n temp = arr[a];\n arr[a] = arr[b];\n arr[b] = arr[c];\n arr[c] = arr[d];\n arr[d] = temp;\n return;\n }\n}\n\nfunction Class_0() {}\n\nfunction createForArray(packageName, className, seedId, componentType) {\n const clazz = new Class_0();\n clazz.typeName = packageName + className;\n isInstantiable(seedId !== 0 ? -seedId : 0) &&\n setClassLiteral(seedId !== 0 ? -seedId : 0, clazz);\n clazz.modifiers = 4;\n clazz.superclass = Ljava_lang_Object_2_classLit;\n clazz.componentType = componentType;\n return clazz;\n}\n\nfunction createForClass(packageName, className, seedId, superclass) {\n const clazz = new Class_0();\n clazz.typeName = packageName + className;\n isInstantiable(seedId) && setClassLiteral(seedId, clazz);\n clazz.superclass = superclass;\n return clazz;\n}\n\nfunction getSeedFunction(clazz) {\n const func = seedTable[clazz.seedId];\n clazz = null;\n return func;\n}\n\nfunction isInstantiable(seedId) {\n return typeof seedId === \"number\" && seedId > 0;\n}\n\nfunction setClassLiteral(seedId, clazz) {\n let proto;\n clazz.seedId = seedId;\n if (seedId === 2) {\n proto = String.prototype;\n } else {\n if (seedId > 0) {\n let seed = getSeedFunction(clazz);\n if (seed) {\n proto = seed.prototype;\n } else {\n seed = seedTable[seedId] = function () {};\n seed.___clazz$ = clazz;\n return;\n }\n } else {\n return;\n }\n }\n proto.___clazz$ = clazz;\n}\n\n_.val$outerIter = null;\n\nfunction $add(this$static, o) {\n if ($offer(this$static, o)) {\n return true;\n }\n}\n\nfunction $$init_6(this$static) {\n this$static.array = initDim(\n _3Ljava_lang_Object_2_classLit,\n makeCastMap([Q$Serializable, Q$Object_$1]),\n Q$Object,\n 0,\n 0,\n );\n}\n\nfunction $add_0(this$static, o) {\n setCheck(this$static.array, this$static.size++, o);\n return true;\n}\n\nfunction $clear(this$static) {\n this$static.array = initDim(\n _3Ljava_lang_Object_2_classLit,\n makeCastMap([Q$Serializable, Q$Object_$1]),\n Q$Object,\n 0,\n 0,\n );\n this$static.size = 0;\n}\n\nfunction $get_4(this$static, index) {\n return this$static.array[index];\n}\n\nfunction $remove_0(this$static, index) {\n const previous = this$static.array[index];\n splice_0(this$static.array, index, 1);\n --this$static.size;\n return previous;\n}\n\nfunction $set_7(this$static, index, o) {\n const previous = this$static.array[index];\n setCheck(this$static.array, index, o);\n return previous;\n}\n\nfunction $toArray_0(this$static, out) {\n let i_0;\n out.length < this$static.size && (out = createFrom(out, this$static.size));\n for (i_0 = 0; i_0 < this$static.size; ++i_0) {\n setCheck(out, i_0, this$static.array[i_0]);\n }\n out.length > this$static.size && setCheck(out, this$static.size, null);\n return out;\n}\n\nfunction ArrayList_1() {\n $$init_6(this);\n this.array.length = 500;\n}\n\nfunction splice_0(array, index, deleteCount) {\n array.splice(index, deleteCount);\n}\n_.size = 0;\n\nfunction binarySearch_0(sortedArray, key) {\n let high, low, mid, midVal;\n low = 0;\n high = sortedArray.length - 1;\n while (low <= high) {\n mid = low + (~~(high - low) >> 1);\n midVal = sortedArray[mid];\n if (midVal < key) {\n low = mid + 1;\n } else if (midVal > key) {\n high = mid - 1;\n } else {\n return mid;\n }\n }\n return -low - 1;\n}\n\nfunction fill_0(a) {\n fill_1(a, a.length);\n}\n\nfunction fill_1(a, toIndex) {\n let i_0;\n for (i_0 = 0; i_0 < toIndex; ++i_0) {\n a[i_0] = -1;\n }\n}\n\nfunction $mergeHeaps(this$static, node) {\n let smallestChild, leftChild, rightChild, smallestChild_0;\n const heapSize = this$static.heap.size;\n const value = $get_4(this$static.heap, node);\n while (node * 2 + 1 < heapSize) {\n smallestChild =\n ((leftChild = 2 * node + 1),\n (rightChild = leftChild + 1),\n (smallestChild_0 = leftChild),\n rightChild < heapSize &&\n $compare_0(\n $get_4(this$static.heap, rightChild),\n $get_4(this$static.heap, leftChild),\n ) < 0 &&\n (smallestChild_0 = rightChild),\n smallestChild_0);\n if ($compare_0(value, $get_4(this$static.heap, smallestChild)) < 0) {\n break;\n }\n $set_7(this$static.heap, node, $get_4(this$static.heap, smallestChild));\n node = smallestChild;\n }\n $set_7(this$static.heap, node, value);\n}\n\nfunction $offer(this$static, e) {\n let childNode, node;\n node = this$static.heap.size;\n $add_0(this$static.heap, e);\n while (node > 0) {\n childNode = node;\n node = ~~((node - 1) / 2);\n if ($compare_0($get_4(this$static.heap, node), e) <= 0) {\n $set_7(this$static.heap, childNode, e);\n return true;\n }\n $set_7(this$static.heap, childNode, $get_4(this$static.heap, node));\n }\n $set_7(this$static.heap, node, e);\n return true;\n}\n\nfunction $poll(this$static) {\n if (this$static.heap.size === 0) {\n return null;\n }\n const value = $get_4(this$static.heap, 0);\n $removeAtIndex(this$static);\n return value;\n}\n\nfunction $removeAtIndex(this$static) {\n const lastValue = $remove_0(this$static.heap, this$static.heap.size - 1);\n if (0 < this$static.heap.size) {\n $set_7(this$static.heap, 0, lastValue);\n $mergeHeaps(this$static, 0);\n }\n}\n\nfunction $toArray_1(this$static, a) {\n return $toArray_0(this$static.heap, a);\n}\n\nfunction PriorityQueue_0(cmp) {\n this.heap = new ArrayList_1();\n this.cmp = cmp;\n}\n\ndefineSeed(239, 1, {}, PriorityQueue_0);\n_.cmp = null;\n_.heap = null;\n\nconst Ljava_lang_Object_2_classLit = createForClass(\n \"java.lang.\",\n \"Object\",\n 1,\n null,\n ),\n _3Ljava_lang_Object_2_classLit = createForArray(\n \"[Ljava.lang.\",\n \"Object;\",\n 356,\n Ljava_lang_Object_2_classLit,\n ),\n Lcs_threephase_FullCube_2_classLit = createForClass(\n \"cs.threephase.\",\n \"FullCube\",\n 160,\n Ljava_lang_Object_2_classLit,\n ),\n _3Lcs_threephase_FullCube_2_classLit = createForArray(\n \"[Lcs.threephase.\",\n \"FullCube;\",\n 381,\n Lcs_threephase_FullCube_2_classLit,\n );\n\nlet searcher;\n\nlet raninit = false;\nfunction init() {\n if (raninit) {\n return;\n }\n raninit = true;\n $clinit_Moves();\n $clinit_Util_0();\n $clinit_Center1();\n $clinit_Center2();\n $clinit_Center3();\n $clinit_Edge3();\n $clinit_CornerCube();\n $clinit_EdgeCube();\n $clinit_FullCube_0();\n searcher = new Search_4();\n}\n\nexport function initialize(): void {\n init();\n init_5();\n}\n\nexport async function random444Scramble(): Promise<Alg> {\n mustBeInsideWorker();\n init();\n const suffix = Alg.fromString(\n $randomState(searcher, await randomUIntBelowFactory()),\n );\n return (await getRandomScramble333()).concat(suffix);\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;AAAA,IAAM,MAAkB;AAAxB,IACE,OAAO,CAAC;AACV,SAAS,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AAC3B,MAAI,KAAK;AACT,WAAS,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AAC3B,QAAI,GAAG,KAAK;AAAA;AAAA;AAGhB,SAAS,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AAC3B,MAAI,GAAG,KAAK,IAAI,GAAG,KAAK;AACxB,OAAK,IAAI,KAAK,KAAK,KAAM,KAAI;AAC7B,WAAS,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG;AAC1B,QAAI,GAAG,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,IAAI,IAAI,GAAG;AAAA;AAAA;AAI/C,gBAAgB,QAAkB,UAAoB;AACpD,QAAM,SAAS,SAAS,QACtB,OAAO,IAAI,SAAS,SAAS;AAC/B,WAAS,IAAI,QAAQ,IAAI,GAAG,KAAK;AAC/B,QAAI,SAAS,MAAM,IAAI,SAAS,IAAI;AAAA;AAEtC,MAAI,SAAS,MAAM;AACnB,SAAO;AAAA;AAGT,kBAAkB,KAAe,KAAa,GAAY,MAAe;AACvE,MAAK,MAAK,KAAK;AACf,MAAI,MAAM;AACV,MAAI,MAAM;AACV,kBAAS;AACT,MAAI,OAAO,GAAG;AACZ,YAAQ;AAAA;AAEV,WAAS,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG;AAC1B,UAAM,IAAI,KAAK,IAAI;AACnB,QAAI,IAAI,CAAC,CAAE,OAAM;AACjB,WAAO;AACP,WAAO;AACP,UAAM;AACN,QAAI,KAAM,OAAO,IAAK;AACtB,UAAM,IAAK,MAAK,KAAK;AACrB,UAAO,OAAM,KAAO,QAAO,IAAK,CAAC;AAAA;AAEnC,MAAI,OAAO,KAAM,OAAM,OAAO,GAAG;AAC/B,QAAI,KAAK,IAAI,IAAI;AACjB,QAAI,IAAI,KAAK,MAAM;AAAA,SACd;AACL,QAAI,KAAK,MAAM;AAAA;AAEjB,SAAO;AAAA;;;ACvCT,qBAAqB,SAAiB,SAAkB;AACtD,QAAM,SAAS,IAAI,MAAgB;AACnC,MAAI,YAAY,QAAW;AACzB,aAAS,IAAI,GAAG,IAAI,SAAS,KAAK;AAChC,aAAO,KAAK,IAAI,MAAM;AAAA;AAAA;AAG1B,SAAO;AAAA;AAGT,IAAI;AACJ,IAAM,YAAiC;AAAvC,IACE,MAAM;AACR,IAAM,WAAW;AAAjB,IACE,iBAAiB;AADnB,IAEE,YAAY;AAFd,IAGE,eAAe;AAHjB,IAIE,UAAU;AAJZ,IAKE,eAAe;AALjB,IAME,gBAAgB;AANlB,IAOE,eAAe;AAPjB,IAQE,aAAa;AARf,IASE,cAAc;AAEhB,iBAAiB,IAAY;AAC3B,SAAO,IAAI,UAAU;AAAA;AAGvB,oBACE,IACA,WACA,oBACG,UACH;AACA,MAAI,OAAO,UAAU;AACrB,MAAI,QAAQ,CAAC,KAAK,WAAW;AAC3B,QAAI,KAAK;AAAA,SACJ;AACL,KAAC,QAAS,QAAO,UAAU,MAAM,WAAY;AAAA;AAC7C,QAAI,KAAK,YAAY,YAAY,IAAI,KAAK,QAAQ;AAClD,MAAE,mBAAmB;AAAA;AAEvB,aAAW,OAAO,UAAU;AAC1B,QAAI,YAAY;AAAA;AAElB,MAAI,KAAK,WAAW;AAClB,MAAE,YAAY,KAAK;AACnB,SAAK,YAAY;AAAA;AAAA;AAIrB,qBAAqB,GAAa;AAChC,QAAM,SAAiC;AACvC,WAAS,MAAM,GAAG,IAAI,EAAE,QAAQ,MAAM,GAAG,EAAE,KAAK;AAC9C,WAAO,EAAE,QAAQ;AAAA;AAEnB,SAAO;AAAA;AAGT,WAAW,GAAG,IAAI;AAElB,EAAE,QAAQ;AAEV,mBAAmB;AAAA;AAEnB,oBAAoB,GAAQ,UAAkB;AAC5C,QAAM,SAAS,eAAe,GAAG;AACjC,aAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU;AACxD,SAAO;AAAA;AAGT,wBAAwB,UAAkB,UAAkB;AAC1D,QAAM,QAAQ,IAAI,MAAM;AACxB,MAAI,aAAa,GAAG;AAClB,aAAS,MAAM,GAAG,MAAM,UAAU,EAAE,KAAK;AACvC,YAAM,QAAQ;AAAA,QACZ,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA;AAEL,YAAM,IAAI,MAAM,IAAI,MAAM,IAAI;AAC9B,YAAM,OAAO;AAAA;AAAA,aAEN,WAAW,GAAG;AACvB,UAAM,QAAQ,CAAC,MAAM,GAAG,OAAO;AAC/B,aAAS,MAAM,GAAG,MAAM,UAAU,EAAE,KAAK;AACvC,YAAM,OAAO;AAAA;AAAA;AAGjB,SAAO;AAAA;AAGT,iBAAiB,YAAY,iBAAiB,SAAS,UAAU,UAAU;AACzE,QAAM,SAAS,eAAe,UAAU;AACxC,aAAW,YAAY,iBAAiB,SAAS;AACjD,SAAO;AAAA;AAGT,oBAAoB,YAAY,iBAAiB,SAAS,OAAO;AAC/D;AACA,YAAU,OAAO,gBAAgB;AACjC,QAAM,YAAY;AAClB,QAAM,mBAAmB;AACzB,QAAM,WAAW;AACjB,SAAO;AAAA;AAGT,kBAAkB,OAAO,OAAO,OAAO;AACrC,SAAQ,MAAM,SAAS;AAAA;AAGzB,WAAW,IAAI,GAAG,IAAI;AACtB,EAAE,WAAW;AAEb,IAAI,kCAAkC;AACtC,wCAAwC;AACtC,MAAI,iCAAiC;AACnC;AAAA;AAEF,oCAAkC;AAClC,mBAAiB;AACjB,oBAAkB;AAClB,eAAa,IAAI,WAAW,gBAAgB;AAAA;AAG9C,sBAAsB,WAAW,cAAc,eAAe;AAC5D,MAAI,MAAM,GACR;AACF,aAAW,UAAU,WAAW;AAC9B,QAAK,QAAQ,UAAU,SAAU;AAC/B,mBAAa,OAAO;AACpB,oBAAc,OAAO;AACrB,QAAE;AAAA;AAAA;AAAA;AAKR,mBAAmB,OAAO,cAAc,eAAe;AACrD;AACA,WAAS,MAAM,GAAG,IAAI,aAAa,QAAQ,MAAM,GAAG,EAAE,KAAK;AACzD,UAAM,aAAa,QAAQ,cAAc;AAAA;AAAA;AAI7C,IAAI;AAAJ,IAAoB;AAEpB,iBAAiB,KAAK,OAAO;AAC3B,SAAO,IAAI,oBAAoB,CAAC,CAAC,IAAI,iBAAiB;AAAA;AAGxD,oBAAoB,KAAK,OAAO;AAC9B,SAAO,QAAQ,QAAQ,QAAQ,KAAK;AAAA;AAGtC,IAAI,qBAAqB;AACzB,2BAA2B;AACzB,MAAI,oBAAoB;AACtB,WAAO;AAAA;AAET,uBAAqB;AACrB,UAAQ,YAAY,OAAO;AAC3B,YAAU,YAAY;AACtB,WAAS,YAAY;AACrB,YAAU,YAAY,IAAI;AAC1B,YAAU,YAAY,IAAI;AAC1B,WAAS,YAAY;AACrB,aAAW,YAAY;AAAA;AAGzB,kBAAkB,aAAa;AAC7B,cAAY,KAAK,YAAY;AAAA;AAG/B,iBAAiB,aAAa,KAAK;AACjC,MAAI,GAAG;AACP,MAAI,WAAW,KAAK,YAAY;AAC9B,QAAI;AACJ,SAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,UAAI,YAAY,GAAG,SAAS,EAAE,GAAG,MAAM;AACrC,eAAO;AAAA;AAAA;AAGX,WAAO;AAAA;AAET,SAAO;AAAA;AAGT,gBAAgB,aAAa;AAC3B,MAAI,KAAK,KAAK;AACd,QAAM;AACN,MAAI;AACJ,OAAK,MAAM,IAAI,OAAO,GAAG,EAAE,KAAK;AAC9B,gBAAY,GAAG,SAAS,KAAM,QAAO,IAAI,KAAK;AAAA;AAEhD,SAAO;AAAA;AAGT,iBAAiB,aAAa;AAC5B,MAAI,MAAM;AACV,MAAI,YAAY,MAAM;AACpB,WAAO,QAAQ,OAAO;AAAA;AAExB,OAAK,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AACvB,WAAO,UAAU,OAAO;AACxB,QAAI,SAAS,IAAI;AACf,aAAO,OAAO,KAAK;AAAA;AAErB,SAAK,aAAa;AAClB,QAAI,MAAM,KAAK,KAAK,aAAa;AACjC,QAAI,MAAM,KAAK,KAAK,aAAa;AACjC,QAAI,OAAO,MAAM,KAAK,aAAa;AAAA;AAAA;AAIvC,eAAe,aAAa,KAAK;AAC/B,QAAM,MAAM,MAAM;AAClB,QAAM,CAAC,CAAE,OAAM;AACf,UAAQ;AAAA,SACD;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,IAAI,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,IAAI,IAAI,IAAI;AACpC,WAAK,YAAY,IAAI,GAAG,IAAI,IAAI,IAAI;AACpC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,GAAG;AAClC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,IAAI,IAAI;AACnC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,IAAI;AAClC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AAAA;AAAA;AAIzC,cAAc,aAAa,GAAG;AAC5B,UAAQ;AAAA,SACD;AACH,YAAM,aAAa;AACnB,YAAM,aAAa;AACnB;AAAA,SACG;AACH,YAAM,aAAa;AACnB,YAAM,aAAa;AACnB;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,YAAM,aAAa;AACnB,YAAM,aAAa;AACnB,YAAM,aAAa;AACnB,YAAM,aAAa;AAAA;AAAA;AAIzB,iBAAiB,aAAa,GAAG;AAC/B,MAAI;AACJ,OAAK,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG;AACtB,SAAK,aAAa;AAClB,QAAI,MAAM,KAAK,KAAK,aAAa;AACjC,QAAI,MAAM,KAAK,KAAK,aAAa;AACjC,QAAI,OAAO,MAAM,KAAK,aAAa;AAAA;AAAA;AAIvC,gBAAgB,aAAa,KAAK;AAChC,MAAI,KAAK;AACT,MAAI;AACJ,OAAK,MAAM,IAAI,OAAO,GAAG,EAAE,KAAK;AAC9B,gBAAY,GAAG,OAAO;AACtB,QAAI,OAAO,IAAI,KAAK,IAAI;AACtB,aAAO,IAAI,KAAK;AAChB,kBAAY,GAAG,OAAO;AAAA;AAAA;AAAA;AAK5B,gBAAgB,aAAa,GAAG;AAC9B,MAAI;AACJ,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,GAAG,OAAO,EAAE,GAAG;AAAA;AAAA;AAI/B,qBAAqB;AACnB,MAAI;AACJ,WAAS;AACT,OAAK,MAAM,GAAG,MAAM,GAAG,EAAE,KAAK;AAC5B,SAAK,GAAG,OAAO;AAAA;AAEjB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,GAAG,OAAO;AAAA;AAAA;AAInB,mBAAmB,GAAG,KAAK;AACzB,MAAI;AACJ,WAAS;AACT,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,GAAG,OAAO,CAAC,CAAE,GAAE,GAAG,OAAO,OAAO,MAAM,IAAI;AAAA;AAAA;AAInD,mBAAmB,IAAI;AACrB,MAAI;AACJ,WAAS;AACT,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,GAAG,OAAO,GAAG;AAAA;AAAA;AAItB,2BAA2B;AACzB,MAAI,KAAK;AACT,QAAM,IAAI,IAAI;AACd,QAAM,IAAI,IAAI;AACd,OAAK,MAAM,GAAG,MAAM,OAAO,EAAE,KAAK;AAChC,WAAO,GAAG,QAAQ;AAClB,SAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,aAAO,GAAG;AACV,YAAM,GAAG;AACT,YAAM,KAAK,OAAO,QAAQ;AAAA;AAAA;AAAA;AAKhC,sBAAsB;AACpB,MAAI,OAAO,OAAO,MAAM,KAAK,KAAK,KAAK,KAAK;AAC5C,SAAO;AACP,SAAO,KAAK;AACZ,UAAQ;AACR,SAAO;AACP,SAAO,SAAS,OAAO;AACrB,UAAM,QAAQ;AACd,aAAS,MAAM,KAAK;AACpB,YAAQ,MAAM,QAAQ;AACtB,MAAE;AACF,SAAK,MAAM,GAAG,MAAM,OAAO,EAAE,KAAK;AAChC,UAAI,OAAO,SAAS,QAAQ;AAC1B;AAAA;AAEF,WAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,cAAM,CAAC,CAAC,MAAM,KAAK,SAAS;AAC5B,YAAI,OAAO,SAAS,OAAO;AACzB;AAAA;AAEF,UAAE;AACF,YAAI,KAAK;AACP,iBAAO,OAAO;AACd;AAAA,eACK;AACL,iBAAO,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAOxB,sBAAsB,MAAM;AAC1B,MAAI,OAAO,KAAK;AAChB,QAAM,IAAI,IAAI,UAAU,KAAK;AAC7B,OAAK,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AACvB,YAAQ;AACR,SAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,UAAI,EAAE,GAAG,SAAS,CAAC,CAAE,OAAM,IAAI;AAC7B,gBAAQ;AACR;AAAA;AAAA;AAGJ,QAAI,OAAO;AACT,aAAO;AAAA;AAET,SAAK,GAAG;AACR,QAAI,MAAM,KAAK,KAAK,GAAG;AACvB,QAAI,MAAM,KAAK,KAAK,GAAG;AACvB,QAAI,OAAO,MAAM,KAAK,GAAG;AAAA;AAE3B,SAAO;AAAA;AAGT,qBAAqB;AACnB,MAAI,KAAK,GAAG;AACZ,QAAM,IAAI,IAAI;AACd,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,MAAE,GAAG,OAAO;AAAA;AAEd,QAAM,IAAI,IAAI,UAAU,EAAE;AAC1B,QAAM,IAAI,IAAI,UAAU,EAAE;AAC1B,QAAM,IAAI,IAAI,UAAU,EAAE;AAC1B,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AACvB,WAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,YAAI,QAAQ,GAAG,IAAI;AACjB,kBAAQ,KAAK,KAAK;AAClB,kBAAQ,KAAM,QAAO,OAAO;AAAA;AAE9B,aAAK,GAAG;AACR,cAAM,MAAM,KAAK,KAAK,GAAG;AACzB,cAAM,MAAM,KAAK,KAAK,GAAG;AACzB,cAAM,OAAO,MAAM,KAAK,GAAG;AAAA;AAE7B,WAAK,GAAG;AACR,UAAI,MAAM,KAAK,KAAK,GAAG;AACvB,UAAI,MAAM,KAAK,KAAK,GAAG;AACvB,UAAI,OAAO,MAAM,KAAK,GAAG;AAAA;AAE3B,SAAK,GAAG;AACR,UAAM,MAAM,KAAK,KAAK,GAAG;AACzB,UAAM,MAAM,KAAK,KAAK,GAAG;AACzB,UAAM,OAAO,MAAM,KAAK,GAAG;AAAA;AAE7B,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,WAAO,GAAG;AACV,YAAQ,GAAG,OAAO;AAClB,SAAK,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AACvB,aAAO,GAAG;AACV,YAAM,GAAG;AACT,cAAQ,GAAG;AACX,WAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,eAAO,GAAG;AACV,cAAM,GAAG;AACT,YAAI,QAAQ,GAAG,IAAI;AACjB,kBAAQ,KAAK,KAAK;AAClB;AAAA;AAAA;AAAA;AAAA;AAKR,SAAO,GAAG;AACV,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,aAAS,OAAO,QAAQ,OAAO;AAC/B,SAAK,GAAG;AACR,UAAM,MAAM,KAAK,KAAK,GAAG;AACzB,UAAM,MAAM,KAAK,KAAK,GAAG;AACzB,UAAM,OAAO,MAAM,KAAK,GAAG;AAAA;AAAA;AAI/B,uBAAuB;AACrB,MAAI,OAAO,KAAK,KAAK;AACrB,QAAM,IAAI,IAAI;AACd,QAAM,MAAM,YAAY;AACxB,OAAK,MAAM,GAAG,MAAM,OAAO,OAAO;AAChC,QAAI,OAAO;AAAA;AAEb,UAAQ;AACR,OAAK,MAAM,GAAG,MAAM,QAAQ,EAAE,KAAK;AACjC,QAAK,KAAI,CAAC,CAAC,QAAQ,KAAM,KAAM,OAAM,SAAU,GAAG;AAChD,aAAO,GAAG;AACV,WAAK,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AACvB,cAAM,OAAO;AACb,YAAI,CAAC,CAAC,QAAQ,MAAM,KAAM,OAAM;AAChC,oBAAY,QAAS,SAAQ,OAAQ,SAAS,IAAK,OAAO;AAC1D,aAAK,GAAG;AACR,YAAI,MAAM,KAAK,KAAK,GAAG;AACvB,YAAI,MAAM,KAAK,KAAK,GAAG;AACvB,YAAI,OAAO,MAAM,KAAK,GAAG;AAAA;AAE3B,cAAQ,WAAW;AAAA;AAAA;AAAA;AAKzB,mBAAmB,GAAG;AACpB,QAAM,MAAM,eAAe,SAAS;AACpC,SAAO,OAAO,IAAI,MAAM;AAAA;AAG1B,WAAW,KAAK,GAAG,YAAY,CAAC,aAAa,WAAW,WAAW;AAEnE,IAAI;AAAJ,IACE;AADF,IAEE;AAFF,IAGE,UAAU;AAHZ,IAIE;AAJF,IAKE;AALF,IAME;AANF,IAOE;AAEF,IAAI,qBAAqB;AACzB,2BAA2B;AACzB,MAAI,oBAAoB;AACtB;AAAA;AAEF,uBAAqB;AACrB,SAAO,YAAY,IAAI;AACvB,SAAO,YAAY,MAAM;AACzB,UAAQ,YAAY,IAAI;AACxB,UAAQ,YAAY,MAAM;AAC1B,WAAS,YAAY;AACrB,QAAM;AAAA,IACJ;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IACxE;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA;AAAA;AAIlC,gBAAgB,aAAa;AAC3B,MAAI,KAAK,KAAK;AACd,QAAM;AACN,MAAI;AACJ,OAAK,MAAM,IAAI,OAAO,GAAG,EAAE,KAAK;AAC9B,gBAAY,GAAG,SAAS,YAAY,GAAG,OAAQ,QAAO,IAAI,KAAK;AAAA;AAEjE,SAAO;AAAA;AAGT,gBAAgB,aAAa;AAC3B,MAAI,KAAK,KAAK;AACd,QAAM;AACN,MAAI;AACJ,OAAK,MAAM,GAAG,OAAO,GAAG,EAAE,KAAK;AAC7B,gBAAY,GAAG,SAAS,YAAY,GAAG,MAAO,QAAO,IAAI,KAAK;AAAA;AAEhE,SAAO,MAAM,IAAI,YAAY;AAAA;AAG/B,iBAAiB,aAAa,KAAK;AACjC,cAAY,UAAU,IAAI;AAC1B,QAAM,MAAM,MAAM;AAClB,QAAM,CAAC,CAAE,OAAM;AACf,UAAQ;AAAA,SACD;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,IAAI,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,IAAI,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,GAAG;AAClC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,IAAI,IAAI;AACnC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,IAAI;AAClC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AAAA;AAAA;AAIvC,gBAAgB,aAAa,GAAG;AAC9B,UAAQ;AAAA,SACD;AACH,cAAQ,aAAa;AACrB,cAAQ,aAAa;AACrB;AAAA,SACG;AACH,cAAQ,aAAa;AACrB,cAAQ,aAAa;AACrB;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AAAA;AAAA;AAIvC,gBAAgB,aAAa,GAAG,YAAY;AAC1C,MAAI;AACJ,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,GAAG,OAAO,CAAC,CAAE,GAAE,GAAG,OAAO;AAAA;AAEvC,OAAK,MAAM,GAAG,MAAM,GAAG,EAAE,KAAK;AAC5B,gBAAY,GAAG,OAAO,EAAE,GAAG,MAAM;AAAA;AAEnC,cAAY,SAAS;AAAA;AAGvB,gBAAgB,aAAa,KAAK;AAChC,MAAI,KAAK;AACT,MAAI;AACJ,cAAY,GAAG,MAAM;AACrB,OAAK,MAAM,IAAI,OAAO,GAAG,EAAE,KAAK;AAC9B,QAAI,OAAO,IAAI,KAAK,IAAI;AACtB,aAAO,IAAI,KAAK;AAChB,kBAAY,GAAG,OAAO;AAAA,WACjB;AACL,kBAAY,GAAG,OAAO;AAAA;AAAA;AAAA;AAK5B,gBAAgB,aAAa,KAAK;AAChC,MAAI,KAAK;AACT,cAAY,SAAS,MAAM;AAC3B,WAAS;AACT,MAAI;AACJ,cAAY,GAAG,KAAK;AACpB,OAAK,MAAM,GAAG,OAAO,GAAG,EAAE,KAAK;AAC7B,QAAI,OAAO,IAAI,KAAK,IAAI;AACtB,aAAO,IAAI,KAAK;AAChB,kBAAY,GAAG,OAAO;AAAA,WACjB;AACL,kBAAY,GAAG,OAAO;AAAA;AAAA;AAAA;AAK5B,qBAAqB;AACnB,OAAK,KAAK,YAAY;AACtB,OAAK,KAAK,YAAY;AAAA;AAGxB,kBAAkB;AAChB,MAAI,IAAI,KAAK,OAAO,MAAM,KAAK,KAAK,GAAG,KAAK,IAAI;AAChD,QAAM,IAAI,IAAI;AACd,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,aAAO,GAAG;AACV,cAAQ,GAAG,SAAS;AACpB,WAAK,KAAK,OAAO,OAAO;AAAA;AAAA;AAG5B,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,WAAO,GAAG;AACV,SAAK,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AACvB,YAAM,KAAK,KAAK,OAAO;AACvB,aAAO,GAAG;AACV,UAAI,MAAM,KAAK,OAAO,GAAG;AACzB,UAAI,MAAM,KAAK,OAAO,GAAG;AAAA;AAAA;AAG7B,OAAK,MAAM,GAAG,MAAM,MAAM,EAAE,KAAK;AAC/B,WAAO,GAAG;AACV,SAAK,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AACvB,YAAM,KAAK,KAAK,OAAO,KAAK;AAC5B,aAAO,GAAG;AACV,UAAI,MAAM,KAAK,OAAO,GAAG;AACzB,UAAI,MAAM,KAAK,OAAO,GAAG;AAAA;AAAA;AAG7B,OAAK,MAAM,GAAG,MAAM,MAAM,EAAE,KAAK;AAC/B,SAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,aAAO,GAAG;AACV,cAAQ,GAAG,SAAS;AACpB,WAAK,KAAK,OAAO,OAAO,KAAK;AAAA;AAAA;AAGjC,SAAO;AACP,SAAO,KACL,OAAO,MACP,OAAO,MACP,OAAO,MACP,OAAO,MACP,OAAO,MACL;AACJ,UAAQ;AACR,SAAO;AAEP,SAAO,SAAS,QAAQ;AACtB,UAAM,MAAM,QAAQ;AACpB,UAAM,SAAS,MAAM,KAAK;AAC1B,UAAM,QAAQ,MAAM,QAAQ;AAC5B,MAAE;AACF,SAAK,MAAM,GAAG,MAAM,QAAQ,EAAE,KAAK;AACjC,UAAI,OAAO,SAAS,QAAQ;AAC1B;AAAA;AAEF,WAAK,CAAC,CAAE,OAAM;AACd,WAAK,MAAM;AACX,WAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,cAAM,KAAK,IAAI;AACf,cAAM,KAAK,IAAI;AACf,cAAM,MAAM,KAAK;AACjB,YAAI,OAAO,SAAS,OAAO;AACzB;AAAA;AAEF,UAAE;AACF,YAAI,KAAK;AACP,iBAAO,OAAO;AACd;AAAA,eACK;AACL,iBAAO,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAOxB,WAAW,KAAK,GAAG,IAAI;AACvB,EAAE,SAAS;AACX,IAAI;AAAJ,IAAU;AAAV,IAAkB;AAAlB,IAAyB;AAAzB,IAA8B;AAA9B,IAAoC;AAEpC,IAAI,qBAAqB;AACzB,2BAA2B;AACzB,MAAI,oBAAoB;AACtB;AAAA;AAEF,uBAAqB;AACrB,WAAS,YAAY,OAAO;AAC5B,UAAQ,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;AAClE,WAAS,YAAY;AACrB,WAAS,CAAC,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI;AACpD,WAAS,YAAY;AAAA;AAGvB,kBAAkB,aAAa;AAC7B,MAAI,KAAK,KAAK,OAAO;AACrB,QAAM;AACN,MAAI;AACJ,OAAK,MAAM,GAAG,OAAO,GAAG,EAAE,KAAK;AAC7B,gBAAY,GAAG,SAAS,YAAY,GAAG,MAAO,QAAO,IAAI,KAAK;AAAA;AAEhE,SAAO;AACP,MAAI;AACJ,OAAK,MAAM,GAAG,OAAO,GAAG,EAAE,KAAK;AAC7B,gBAAY,GAAG,SAAS,YAAY,GAAG,MAAO,QAAO,IAAI,KAAK;AAAA;AAEhE,SAAO;AACP,QAAM,QAAQ,YAAY,GAAG,KAAK,YAAY,GAAG;AACjD,UAAQ;AACR,MAAI;AACJ,OAAK,MAAM,GAAG,OAAO,GAAG,EAAE,KAAK;AAC7B,gBAAY,GAAG,SAAS,SAAU,UAAS,IAAI,KAAK;AAAA;AAEtD,SAAO,YAAY,SAAS,IAAK,OAAM,OAAO;AAAA;AAGhD,iBAAiB,aAAa,KAAK;AACjC,cAAY,UAAU,MAAM;AAC5B,UAAQ;AAAA,SACD;AAAA,SACA;AAAA,SACA;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG,MAAM;AACvC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AAAA,SACA;AAAA,SACA;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAI,OAAM,KAAK;AAC7C;AAAA,SACG;AAAA,SACA;AAAA,SACA;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAI,OAAM,KAAK;AAC7C;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AAAA,SACA;AAAA,SACA;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAI,OAAM,KAAK;AAC7C;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AAAA;AAAA;AAIvC,gBAAgB,aAAa,GAAG,YAAY;AAC1C,MAAI;AACJ,QAAM,SACH,GAAE,GAAG,KAAK,EAAE,GAAG,KAAK,IAAI,KACxB,GAAE,GAAG,KAAK,EAAE,GAAG,MAAM,IAAI,KACzB,GAAE,GAAG,KAAK,EAAE,GAAG,MAAM,IAAI,KACtB,IACA;AACN,OAAK,MAAM,GAAG,MAAM,GAAG,EAAE,KAAK;AAC5B,gBAAY,GAAG,OAAQ,EAAE,GAAG,OAAO,IAAK;AACxC,gBAAY,GAAG,OAAQ,EAAE,GAAG,MAAM,KAAK,IAAK;AAC5C,gBAAY,GAAG,OAAQ,EAAE,GAAG,MAAM,MAAM,IAAK,IAAI;AAAA;AAEnD,cAAY,SAAS,SAAS;AAAA;AAGhC,kBAAkB,aAAa,KAAK;AAClC,MAAI,KAAK,OAAO,OAAO;AACvB,cAAY,SAAS,MAAM;AAC3B,WAAS;AACT,UAAQ,OAAO,MAAM;AACrB,QAAM,CAAC,CAAE,OAAM;AACf,MAAI;AACJ,OAAK,MAAM,GAAG,OAAO,GAAG,EAAE,KAAK;AAC7B,gBAAY,GAAG,OAAO;AACtB,QAAI,SAAS,IAAI,KAAK,IAAI;AACxB,eAAS,IAAI,KAAK;AAClB,kBAAY,GAAG,OAAO;AAAA;AAAA;AAG1B,UAAQ,MAAM;AACd,QAAM,CAAC,CAAE,OAAM;AACf,MAAI;AACJ,cAAY,GAAG,KAAK;AACpB,OAAK,MAAM,GAAG,OAAO,GAAG,EAAE,KAAK;AAC7B,QAAI,SAAS,IAAI,KAAK,IAAI;AACxB,eAAS,IAAI,KAAK;AAClB,kBAAY,GAAG,OAAO;AAAA,WACjB;AACL,kBAAY,GAAG,OAAO;AAAA;AAAA;AAG1B,MAAI;AACJ,cAAY,GAAG,KAAK;AACpB,OAAK,MAAM,GAAG,OAAO,GAAG,EAAE,KAAK;AAC7B,QAAI,OAAO,IAAI,KAAK,IAAI;AACtB,aAAO,IAAI,KAAK;AAChB,kBAAY,GAAG,OAAO;AAAA,WACjB;AACL,kBAAY,GAAG,OAAO;AAAA;AAAA;AAAA;AAK5B,qBAAqB;AACnB,OAAK,KAAK,YAAY;AACtB,OAAK,KAAK,YAAY;AACtB,OAAK,KAAK,YAAY;AAAA;AAGxB,kBAAkB;AAChB,MAAI,OAAO,MAAM,KAAK;AACtB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,WAAO,OAAO,QAAQ;AAAA;AAExB,QAAM,IAAI,IAAI;AACd,OAAK,MAAM,GAAG,MAAM,OAAO,EAAE,KAAK;AAChC,SAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,eAAS,GAAG;AACZ,cAAQ,GAAG;AACX,aAAO,KAAK,OAAO,SAAS,KAAK;AAAA;AAAA;AAGrC,SAAO;AACP,SAAO,KAAK;AACZ,UAAQ;AACR,SAAO;AACP,SAAO,SAAS,OAAO;AACrB,SAAK,MAAM,GAAG,MAAM,OAAO,EAAE,KAAK;AAChC,UAAI,OAAO,SAAS,OAAO;AACzB;AAAA;AAEF,WAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,YAAI,OAAO,OAAO,KAAK,UAAU,IAAI;AACnC,iBAAO,OAAO,KAAK,QAAQ,QAAQ;AACnC,YAAE;AAAA;AAAA;AAAA;AAIR,MAAE;AAAA;AAAA;AAIN,WAAW,KAAK,GAAG,IAAI;AACvB,EAAE,SAAS;AACX,IAAI;AAAJ,IAAY;AAAZ,IAAmB;AAAnB,IAA2B;AAA3B,IAAmC;AAEnC,iBAAiB,aAAa,GAAG;AAC/B,MAAI;AACJ,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,GAAG,OAAO,EAAE,GAAG;AAAA;AAAA;AAI/B,iBAAiB,aAAa,KAAK;AACjC,QAAM,MAAM,MAAM;AAClB,QAAM,CAAC,CAAE,OAAM;AACf,UAAQ;AAAA,SACD;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,IAAI,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,GAAG,IAAI,IAAI,IAAI;AACpC,WAAK,YAAY,IAAI,GAAG,IAAI,IAAI,IAAI;AACpC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,GAAG;AAClC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,IAAI,IAAI;AACnC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,IAAI;AAClC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AAAA;AAAA;AAIzC,wBAAwB;AACtB,MAAI;AACJ,OAAK,KAAK,YAAY;AACtB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,GAAG,OAAO,CAAC,CAAE,OAAM;AAAA;AAAA;AAI5B,sBAAsB,iBAAiB;AACrC,MAAI,KAAK,KAAK;AACd,eAAa,KAAK;AAClB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,QAAI,MAAM,gBAAgB,KAAK;AAC/B,QAAI,KAAK,GAAG,OAAO,KAAK,GAAG,MAAM;AAC/B,YAAM,KAAK,GAAG;AACd,WAAK,GAAG,OAAO,KAAK,GAAG;AACvB,WAAK,GAAG,KAAK;AAAA;AAAA;AAAA;AAKnB,WAAW,KAAK,GAAG,IAAI,cAAc;AAErC,IAAI,wBAAwB;AAC5B,8BAA8B;AAC5B,MAAI,uBAAuB;AACzB;AAAA;AAEF,0BAAwB;AACxB,eAAa,YAAY;AACzB;AAAA;AAGF,kBAAkB,aAAa;AAC7B,cAAY,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;AACvC,cAAY,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;AAAA;AAGzC,iBAAiB,aAAa,GAAG;AAC/B,MAAI;AACJ,OAAK,MAAM,GAAG,MAAM,GAAG,EAAE,KAAK;AAC5B,gBAAY,GAAG,OAAO,EAAE,GAAG;AAC3B,gBAAY,GAAG,OAAO,EAAE,GAAG;AAAA;AAAA;AAI/B,iBAAiB,aAAa,KAAK;AACjC,GAAC,YAAY,SAAU,aAAY,QAAQ,IAAI;AAC/C,aAAW,aAAa,WAAW,MAAM,YAAY;AACrD,UAAQ,aAAa,YAAY;AAAA;AAGnC,qBAAqB,aAAa,KAAK;AACrC,MAAI,KAAK;AACT,SAAO;AACP,OAAK,MAAM,GAAG,OAAO,GAAG,EAAE,KAAK;AAC7B,YAAQ,YAAY,GAAG,OAAO,MAAM;AACpC,UAAM,CAAC,CAAE,OAAM;AAAA;AAEjB,cAAY,GAAG,KAAM,MAAK,QAAQ;AAAA;AAGpC,oBAAoB,GAAG,GAAG,MAAM;AAC9B,MAAI,MAAM,KAAK,MAAM;AACrB,OAAK,OAAO,GAAG,OAAO,GAAG,EAAE,MAAM;AAC/B,SAAK,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG;AAC1B,WAAO,EAAE,GAAG,EAAE,GAAG;AACjB,WAAO,EAAE,GAAG;AACZ,UAAM;AACN,UAAM,MAAO,QAAO,IAAI,OAAO,IAAI;AACnC,UAAM,MAAM;AACZ,IAAC,SAAQ,IAAI,IAAI,KAAM,SAAQ,IAAI,IAAI,MAAO,OAAM,MAAM;AAC1D,SAAK,GAAG,QAAQ;AAAA;AAAA;AAIpB,wBAAwB;AACtB,WAAS;AAAA;AAGX,sBAAsB,OAAO,OAAO;AAClC,WAAS;AACT,WAAS,KAAK,IAAI;AAClB,cAAY,MAAM;AAAA;AAGpB,sBAAsB,iBAAiB;AACrC,eAAa,KAAK,MAAM,gBAAgB,QAAQ,gBAAgB;AAAA;AAGlE,sBAAsB;AACpB,MAAI,GAAG;AACP,aAAW,KAAK,IAAI,aAAa,OAAO;AACxC,aAAW,KAAK,IAAI,aAAa,OAAO;AACxC,aAAW,KAAK,IAAI,aAAa,MAAM;AACvC,aAAW,KAAK,IAAI,aAAa,GAAG;AACpC,aAAW,MAAM,IAAI,aAAa,MAAM;AACxC,aAAW,MAAM,IAAI,aAAa,KAAK;AACvC,OAAK,IAAI,GAAG,IAAI,IAAI,KAAK,GAAG;AAC1B,SAAK,MAAM,GAAG,MAAM,GAAG,EAAE,KAAK;AAC5B,iBAAW,IAAI,MAAM,KAAK,IAAI;AAC9B,iBAAW,WAAW,IAAI,MAAM,WAAW,IAAI,WAAW,IAAI,MAAM;AAAA;AAAA;AAAA;AAK1E,WACE,KACA,GACA,YAAY,CAAC,gBACb,cACA,cACA;AAEF,EAAE,QAAQ;AACV,IAAI;AAEJ,IAAI,mBAAmB;AACvB,yBAAyB;AACvB,MAAI,kBAAkB;AACpB;AAAA;AAEF,qBAAmB;AACnB,UAAQ,YAAY;AACpB,cAAY,YAAY;AACxB,aAAW,YAAY;AACvB,cAAY,YAAY;AACxB,aAAW,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;AACjC,UAAQ,YAAY,KAAK;AACzB,WAAS,YAAY,KAAK;AAC1B,UAAQ;AAAA,IACN;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAM;AAAA,IAAO;AAAA,IAAQ;AAAA,IAAS;AAAA,IAAU;AAAA;AAEnE,gBAAc,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI;AAAA;AAGnD,kBAAkB,aAAa,GAAG,GAAG,GAAG,GAAG;AACzC,QAAM,OAAO,YAAY,MAAM;AAC/B,cAAY,MAAM,KAAK,YAAY,KAAK;AACxC,cAAY,KAAK,KAAK,YAAY,MAAM;AACxC,cAAY,MAAM,KAAK,YAAY,KAAK;AACxC,cAAY,KAAK,KAAK;AAAA;AAGxB,gBAAgB,aAAa,KAAK;AAChC,MAAI,KAAK,KAAK,GAAG,MAAM;AACvB,cAAY,SAAS,KAAK;AAC1B,QAAM;AACN,SAAO;AACP,SAAO;AACP,OAAK,MAAM,GAAG,MAAM,KAAK,EAAE,KAAK;AAC9B,QAAI,YAAY,KAAK,QAAQ;AAC7B,WAAO,KAAK;AACZ,QAAI,KAAK,IAAI;AACX,aAAQ,QAAS,IAAI,KAAO;AAC5B,cAAQ,QAAS,IAAI;AAAA,WAChB;AACL,aAAQ,QAAQ,IAAK;AACrB,cAAQ;AACR,cAAQ,aAAa;AAAA;AAAA;AAGzB,SAAO;AAAA;AAGT,mBAAmB,aAAa;AAC9B,MAAI;AACJ,QAAM,SAAS,OAAO,aAAa;AACnC,cAAY,UAAU;AACtB,QAAM,OAAO,YAAY;AACzB,gBAAc;AACd,YAAU,aAAa;AACvB,QAAM,SAAS,OAAO,aAAa,MAAM;AACzC,SAAO,YAAY,QAAQ;AAAA;AAG7B,iBAAiB,aAAa,KAAK;AACjC,cAAY,QAAQ;AACpB,UAAQ;AAAA,SACD;AACH,aAAO,YAAY,MAAM,GAAG,GAAG,GAAG;AAClC,aAAO,YAAY,OAAO,GAAG,GAAG,GAAG;AACnC;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,GAAG,GAAG;AACnC,cAAQ,YAAY,OAAO,GAAG,GAAG,GAAG;AACpC;AAAA,SACG;AACH,aAAO,YAAY,MAAM,GAAG,GAAG,GAAG;AAClC,aAAO,YAAY,OAAO,GAAG,GAAG,GAAG;AACnC;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,IAAI,GAAG;AACpC,cAAQ,YAAY,OAAO,GAAG,IAAI,GAAG;AACrC;AAAA,SACG;AACH,aAAO,YAAY,MAAM,GAAG,IAAI,GAAG;AACnC,aAAO,YAAY,OAAO,GAAG,IAAI,GAAG;AACpC;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,IAAI,GAAG;AACpC,cAAQ,YAAY,OAAO,GAAG,IAAI,GAAG;AACrC;AAAA,SACG;AACH,aAAO,YAAY,MAAM,GAAG,GAAG,GAAG;AAClC,aAAO,YAAY,OAAO,GAAG,GAAG,GAAG;AACnC;AAAA,SACG;AACH,aAAO,YAAY,MAAM,GAAG,GAAG,GAAG;AAClC,aAAO,YAAY,OAAO,GAAG,GAAG,GAAG;AACnC;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,GAAG,GAAG;AACnC,cAAQ,YAAY,OAAO,GAAG,GAAG,GAAG;AACpC;AAAA,SACG;AACH,aAAO,YAAY,MAAM,GAAG,GAAG,GAAG;AAClC,aAAO,YAAY,OAAO,GAAG,GAAG,GAAG;AACnC;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,GAAG,GAAG;AACnC,cAAQ,YAAY,OAAO,GAAG,GAAG,GAAG;AACpC;AAAA,SACG;AACH,aAAO,YAAY,MAAM,GAAG,GAAG,GAAG;AAClC,aAAO,YAAY,OAAO,GAAG,GAAG,GAAG;AACnC;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,GAAG,GAAG;AACnC,cAAQ,YAAY,OAAO,GAAG,GAAG,GAAG;AACpC;AAAA,SACG;AACH,aAAO,YAAY,MAAM,GAAG,IAAI,GAAG;AACnC,aAAO,YAAY,OAAO,GAAG,IAAI,GAAG;AACpC;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,GAAG,GAAG;AACnC,cAAQ,YAAY,OAAO,GAAG,GAAG,GAAG;AACpC,aAAO,YAAY,MAAM,GAAG;AAC5B,aAAO,YAAY,OAAO,GAAG;AAC7B;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,IAAI,GAAG;AACpC,cAAQ,YAAY,OAAO,GAAG,IAAI,GAAG;AACrC,aAAO,YAAY,MAAM,GAAG;AAC5B,aAAO,YAAY,OAAO,GAAG;AAC7B;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,IAAI,GAAG;AACpC,cAAQ,YAAY,OAAO,GAAG,IAAI,GAAG;AACrC,aAAO,YAAY,MAAM,GAAG;AAC5B,aAAO,YAAY,OAAO,GAAG;AAC7B;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,GAAG,GAAG;AACnC,cAAQ,YAAY,OAAO,GAAG,GAAG,GAAG;AACpC,aAAO,YAAY,MAAM,GAAG;AAC5B,aAAO,YAAY,OAAO,GAAG;AAC7B;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,GAAG,GAAG;AACnC,cAAQ,YAAY,OAAO,GAAG,GAAG,GAAG;AACpC,aAAO,YAAY,MAAM,GAAG;AAC5B,aAAO,YAAY,OAAO,GAAG;AAC7B;AAAA,SACG;AACH,cAAQ,YAAY,MAAM,GAAG,GAAG,GAAG;AACnC,cAAQ,YAAY,OAAO,GAAG,GAAG,GAAG;AACpC,aAAO,YAAY,MAAM,GAAG;AAC5B,aAAO,YAAY,OAAO,GAAG;AAAA;AAAA;AAInC,gBAAgB,aAAa,GAAG;AAC9B,cAAY,QAAQ;AACpB,UAAQ;AAAA,SACD;AACH,cAAQ,aAAa;AACrB,cAAQ,aAAa;AACrB;AAAA,SACG;AACH,eAAS,aAAa,IAAI,GAAG,IAAI;AACjC,eAAS,aAAa,GAAG,IAAI,GAAG;AAChC,eAAS,aAAa,GAAG,GAAG,GAAG;AAC/B,eAAS,aAAa,GAAG,GAAG,GAAG;AAC/B,eAAS,aAAa,GAAG,GAAG,GAAG;AAC/B,eAAS,aAAa,GAAG,GAAG,GAAG;AAC/B;AAAA,SACG;AACH,aAAO,aAAa,GAAG;AACvB,aAAO,aAAa,GAAG;AACvB,aAAO,aAAa,IAAI;AACxB,aAAO,aAAa,GAAG;AACvB,aAAO,aAAa,GAAG;AACvB,aAAO,aAAa,GAAG;AACvB,aAAO,aAAa,GAAG;AACvB,aAAO,aAAa,IAAI;AACxB,aAAO,aAAa,GAAG;AACvB,aAAO,aAAa,GAAG;AACvB,aAAO,aAAa,GAAG;AACvB,aAAO,aAAa,GAAG;AAAA;AAAA;AAI7B,mBAAmB,aAAa,GAAG;AACjC,SAAO,KAAK,GAAG;AACb,SAAK;AACL,WAAO,aAAa;AACpB,WAAO,aAAa;AAAA;AAEtB,QAAM,KAAK,OAAO,aAAa;AAAA;AAGjC,gBAAgB,aAAa,KAAK;AAChC,MAAI,KAAK,KAAK,QAAQ,GAAG,MAAM;AAC/B,SAAO;AACP,SAAO;AACP,WAAS;AACT,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,UAAM,MAAM,KAAK;AACjB,QAAI,CAAC,CAAE,OAAM;AACb,UAAM,MAAM;AACZ,cAAU;AACV,UAAM;AACN,QAAI,KAAK,IAAI;AACX,UAAI,IAAI;AACR,kBAAY,KAAK,OAAQ,QAAQ,IAAK;AACtC,YAAM,IAAK,MAAK,KAAK;AACrB,aAAQ,QAAO,KAAO,SAAQ,IAAK,CAAC;AAAA,WAC/B;AACL,kBAAY,KAAK,OAAQ,QAAQ,IAAK;AACtC,YAAM,IAAK,MAAK,KAAK;AACrB,aAAQ,QAAO,KAAO,UAAS,IAAK,CAAC,KAAM,SAAQ;AACnD,aAAO,QAAQ;AAAA;AAAA;AAGnB,MAAK,UAAS,OAAO,GAAG;AACtB,gBAAY,KAAK,MAAM;AAAA,SAClB;AACL,gBAAY,KAAK,MAAM,YAAY,KAAK;AACxC,gBAAY,KAAK,MAAM;AAAA;AAEzB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,MAAM,OAAO;AAAA;AAE3B,cAAY,QAAQ;AAAA;AAGtB,gBAAgB,aAAa,GAAG;AAC9B,MAAI;AACJ,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,KAAK,OAAO,EAAE,KAAK;AAC/B,gBAAY,MAAM,OAAO,EAAE,MAAM;AAAA;AAEnC,cAAY,QAAQ,EAAE;AAAA;AAGxB,gBAAgB,aAAa,GAAG;AAC9B,MAAI,KAAK,QAAQ,GAAG;AACpB,cAAY,SAAS,QAAS,aAAY,OAAO,YAAY;AAC7D,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,KAAK,OAAO;AACxB,gBAAY,KAAK,OAAO,EAAE,GAAG,YAAY,OAAO,MAAM;AAAA;AAExD,WAAS;AACT,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,WAAO,YAAY,KAAK,SAAS,KAAK;AACpC,UAAI,YAAY,KAAK;AACrB,kBAAY,KAAK,OAAO,YAAY,KAAK;AACzC,kBAAY,KAAK,KAAK;AACtB,UAAI,YAAY,KAAK;AACrB,kBAAY,KAAK,OAAO,YAAY,KAAK;AACzC,kBAAY,KAAK,KAAK;AACtB,gBAAU;AAAA;AAAA;AAGd,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,KAAK,OAAO,YAAY,KAAK,EAAE,GAAG,YAAY,QAAQ;AAAA;AAEpE,SAAO;AAAA;AAGT,cAAc,aAAa;AACzB,MAAI;AACJ,cAAY,SAAS,QAAS,aAAY,OAAO,YAAY;AAC7D,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,KAAK,YAAY,MAAM,QAAQ;AAAA;AAE7C,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,KAAK,OAAO,YAAY,KAAK,YAAY,KAAK;AAC1D,gBAAY,MAAM,OAAO;AAAA;AAE3B,cAAY,QAAQ;AAAA;AAGtB,iBAAiB,KAAK,GAAG,GAAG,GAAG,GAAG;AAChC,MAAI;AACJ,SAAO,IAAI;AACX,MAAI,KAAK,IAAI;AACb,MAAI,KAAK;AACT,SAAO,IAAI;AACX,MAAI,KAAK,IAAI;AACb,MAAI,KAAK;AAAA;AAGX,gBAAgB,aAAa,GAAG,GAAG;AACjC,QAAM,OAAO,YAAY,KAAK;AAC9B,cAAY,KAAK,KAAK,YAAY,MAAM;AACxC,cAAY,MAAM,KAAK;AAAA;AAGzB,mBAAmB;AACjB,OAAK,OAAO,YAAY;AACxB,OAAK,QAAQ,YAAY;AAAA;AAG3B,wBAAwB;AACtB,MAAI,KACF,OACA,QACA,OACA,QACA,QACA,OACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,KACA,GACA,KACA,UACA,UACA,WACA,MACA;AACF,QAAM,IAAI,IAAI;AACd,QAAM,IAAI,IAAI;AACd,QAAM,IAAI,IAAI;AACd,SAAO;AACP,UAAQ;AACR,WAAS;AACT,eAAa,OAAO,GAAG;AAEvB,SAAO,WAAW,UAAU;AAC1B,UAAM,QAAQ;AACd,YAAQ,QAAQ;AAChB,aAAU,SAAQ,KAAK;AACvB,aAAS,MAAM,IAAI;AACnB,UAAM,MAAM,QAAQ;AACpB,QAAI,SAAS,GAAG;AACd;AAAA;AAEF,SAAK,KAAK,GAAG,KAAK,UAAU,MAAM,IAAI;AACpC,YAAM,MAAM,CAAC,CAAC,MAAM;AACpB,UAAI,CAAC,OAAO,QAAQ,IAAI;AACtB;AAAA;AAEF,WAAK,MAAM,IAAI,MAAM,KAAK,IAAI,MAAM,KAAK,EAAE,KAAK,QAAQ,GAAG;AACzD,YAAK,OAAM,OAAO,QAAQ;AACxB;AAAA;AAEF,mBAAW,CAAC,CAAE,OAAM;AACpB,gBAAQ,UAAU;AAClB,gBAAQ,MAAM;AACd,eAAO,GAAG,QAAQ,QAAQ;AAC1B,aAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,mBAAS,SAAS,EAAE,MAAM,OAAO,GAAG;AACpC,sBAAY,UAAU;AACtB,iBAAO,YAAY;AACnB,wBAAc;AACd,mBAAS,SAAS,EAAE,MAAO,OAAO,IAAK,MAAM,MAAM;AACnD,gBAAM,YAAY,QAAQ;AAC1B,cAAI,aAAa,OAAO,SAAS,KAAK;AACpC;AAAA;AAEF,uBAAa,OAAO,MAAM,MAAM,KAAK;AACrC,YAAE;AACF,cAAI,KAAK;AACP;AAAA;AAEF,qBAAW,SAAS;AACpB,cAAI,aAAa,GAAG;AAClB;AAAA;AAEF,iBAAO,GAAG;AACV,kBAAQ,GAAG;AACX,oBAAU,GAAG;AACb,eAAK,IAAI,GAAI,YAAY,CAAC,CAAC,YAAY,IAAK,WAAW,GAAG,EAAE,GAAG;AAC7D,gBAAK,YAAW,OAAO,GAAG;AACxB;AAAA;AAEF,mBAAO,GAAG;AACV,sBAAU,GAAG;AACb,mBAAO,YAAY,QAAS,OAAO,GAAG,MAAM;AAC5C,gBAAI,aAAa,OAAO,UAAU,KAAK;AACrC,2BAAa,OAAO,MAAM;AAC1B,gBAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAMZ,MAAE;AAAA;AAAA;AAKN,sBAAsB,OAAO,OAAO;AAClC,SAAQ,MAAM,SAAS,MAAQ,UAAQ,OAAO,KAAM;AAAA;AAGtD,kBAAkB,IAAI,OAAO,KAAK;AAChC,MAAI,KAAK,KAAK,GAAG,MAAM;AACvB,QAAM,OAAO,OAAO;AACpB,QAAM,MAAM,MAAM;AAClB,QAAM;AACN,SAAO;AACP,SAAO;AACP,OAAK,MAAM,GAAG,MAAM,KAAK,EAAE,KAAK;AAC9B,QAAI,KAAK,GAAG,IAAI,UAAU;AAC1B,WAAO,KAAK;AACZ,QAAI,KAAK,IAAI;AACX,aAAQ,QAAS,IAAI,KAAO;AAC5B,cAAQ,QAAS,IAAI;AAAA,WAChB;AACL,aAAQ,QAAQ,IAAK;AACrB,cAAQ;AACR,cAAQ,aAAa;AAAA;AAAA;AAGzB,SAAO;AAAA;AAGT,iBAAiB,MAAM;AACrB,MAAI,OACF,QACA,OACA,QACA,OACA,OACA,KACA,KACA,UACA,WACA;AACF,QAAM,IAAI,IAAI;AACd,UAAQ;AACR,UAAQ,aAAa,OAAO;AAC5B,MAAI,UAAU,GAAG;AACf,WAAO;AAAA;AAET,SAAO,SAAS,GAAG;AACjB,cAAU,IAAK,QAAQ,IAAK,EAAE;AAC9B,eAAW,CAAC,CAAE,QAAO;AACrB,YAAQ,UAAU;AAClB,YAAQ,OAAO;AACf,WAAO,GAAG,QAAQ,QAAQ;AAC1B,SAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,eAAS,SAAS,EAAE,MAAM,OAAO,GAAG;AACpC,kBAAY,UAAU;AACtB,aAAO,YAAY;AACnB,oBAAc;AACd,eAAS,SAAS,EAAE,MAAO,OAAO,IAAK,MAAM,MAAM;AACnD,YAAM,YAAY,QAAQ;AAC1B,UAAI,aAAa,OAAO,SAAS,OAAO;AACtC,UAAE;AACF,eAAO;AACP;AAAA;AAAA;AAAA;AAIN,SAAO;AAAA;AAGT,mBAAmB,MAAM,MAAM;AAC7B,QAAM,QAAQ,aAAa,OAAO;AAClC,MAAI,UAAU,GAAG;AACf,WAAO;AAAA;AAET,SAAU,eAAc,SAAU,OAAQ,KAAK,OAAO;AAAA;AAIxD,qBAAqB;AACnB,MAAI,KAAK,KAAK;AACd,QAAM,IAAI,IAAI;AACd,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG;AACtB,aAAO,GAAG;AACV,cAAQ,GAAG;AACX,gBAAU,GAAG;AACb,WAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,cAAO,OAAO,IAAK,GAAG,OAAO,EAAE,KAAK;AAAA;AAEtC,WAAK;AACL,WAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,eAAQ,OAAO,IAAK,GAAG,OAAO,EAAE,KAAK;AAAA;AAAA;AAAA;AAAA;AAM7C,uBAAuB;AACrB,MAAI,OAAO,KAAK,KAAK;AACrB,QAAM,IAAI,IAAI;AACd,QAAM,MAAM,YAAY;AACxB,OAAK,MAAM,GAAG,MAAM,MAAM,OAAO;AAC/B,QAAI,OAAO;AAAA;AAEb,UAAQ;AACR,OAAK,MAAM,GAAG,MAAM,OAAO,EAAE,KAAK;AAChC,QAAK,KAAI,CAAC,CAAC,QAAQ,KAAM,KAAM,OAAM,QAAS,GAAG;AAC/C,aAAO,GAAG,MAAM,MAAM;AACtB,WAAK,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG;AACtB,cAAM,OAAO,GAAG;AAChB,gBAAQ,OAAQ,UAAS,SAAU,UAAS,SAAU,KAAK,KAAM;AACjE,YAAI,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,OAAO,KAAM,KAAM,OAAM;AACjD,kBAAU,OAAQ,SAAS,IAAK,SAAS;AACzC,eAAO,GAAG;AACV,YAAI,IAAI,MAAM,GAAG;AACf,iBAAO,GAAG;AACV,iBAAO,GAAG;AAAA;AAAA;AAGd,gBAAU,WAAW;AAAA;AAAA;AAAA;AAK3B,sBAAsB,OAAO,OAAO,OAAO;AACzC,QAAM,SAAS,MAAO,KAAI,UAAY,UAAQ,OAAO;AAAA;AAGvD,WAAW,KAAK,GAAG,YAAY,CAAC,WAAW;AAC3C,EAAE,QAAQ;AACV,EAAE,OAAO;AACT,IAAI;AAAJ,IACE,SAAS;AADX,IAEE;AAFF,IAGE;AAHF,IAIE;AAJF,IAKE;AALF,IAME;AANF,IAOE;AAPF,IAQE;AARF,IASE;AAEF,IAAI,sBAAsB;AAC1B,4BAA4B;AAC1B,MAAI,qBAAqB;AACvB;AAAA;AAEF,wBAAsB;AAAA;AAGxB,oBAAoB,aAAa;AAC/B,MAAI,IAAI,KAAK;AACb,OAAK;AACL,WAAS;AACT,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,UAAM,KAAK,YAAY,GAAG;AAC1B,aAAS,WAAW,YAAY,GAAG,QAAQ;AAAA;AAE7C,QAAM,CAAC,CAAC,MAAM;AACd,SAAO,OAAO,KAAK,CAAC;AAAA;AAGtB,iBAAiB,aAAa,GAAG;AAC/B,MAAI;AACJ,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,GAAG,OAAO,EAAE,GAAG;AAAA;AAAA;AAI/B,iBAAiB,aAAa,KAAK;AACjC,QAAM,MAAM,MAAM;AAClB,QAAM,CAAC,CAAE,OAAM;AACf,UAAQ;AAAA,SACD;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,IAAI,GAAG,IAAI,GAAG;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,GAAG;AAClC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC,WAAK,YAAY,IAAI,IAAI,GAAG,IAAI,GAAG;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,IAAI;AAClC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,IAAI,IAAI,IAAI;AACpC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,IAAI,GAAG,IAAI,GAAG;AACnC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,GAAG;AAClC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,GAAG;AACjC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,IAAI,IAAI,IAAI;AACpC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AACnC,WAAK,YAAY,IAAI,IAAI,GAAG,IAAI,GAAG;AACnC,WAAK,YAAY,IAAI,IAAI,GAAG,IAAI,GAAG;AACnC;AAAA,SACG;AACH,WAAK,YAAY,IAAI,GAAG,GAAG,GAAG,IAAI;AAClC,WAAK,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI;AACrC,WAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI;AAAA;AAAA;AAIzC,sBAAsB;AACpB,MAAI;AACJ,OAAK,KAAK,YAAY;AACtB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,GAAG,OAAO;AAAA;AAAA;AAInB,oBAAoB,iBAAiB;AACnC,MAAI,KAAK,KAAK;AACd,aAAW,KAAK;AAChB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,QAAI,MAAM,gBAAgB,KAAK;AAC/B,QAAI,MAAM,KAAK;AACb,YAAM,KAAK,GAAG;AACd,WAAK,GAAG,OAAO,KAAK,GAAG;AACvB,WAAK,GAAG,KAAK;AAAA;AAAA;AAAA;AAKnB,WAAW,KAAK,GAAG,IAAI,YAAY;AAEnC,IAAI,wBAAwB;AAC5B,8BAA8B;AAC5B,MAAI,uBAAuB;AACzB;AAAA;AAEF,0BAAwB;AACxB,aAAW,CAAC,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG;AAAA;AAGzC,kBAAkB,aAAa;AAC7B,cAAY,aAAa,YAAY;AAAA;AAGvC,sBAAsB,aAAa,GAAG;AACpC,SAAO,YAAY,QAAQ,EAAE;AAAA;AAG/B,iBAAiB,aAAa,GAAG;AAC/B,MAAI;AACJ,UAAQ,YAAY,MAAM,EAAE;AAC5B,UAAQ,YAAY,QAAQ,EAAE;AAC9B,UAAQ,YAAY,QAAQ,EAAE;AAC9B,cAAY,QAAQ,EAAE;AACtB,cAAY,OAAO,EAAE;AACrB,cAAY,UAAU,EAAE;AACxB,cAAY,UAAU,EAAE;AACxB,cAAY,UAAU,EAAE;AACxB,cAAY,MAAM,EAAE;AACpB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,gBAAY,WAAW,OAAO,EAAE,WAAW;AAAA;AAE7C,cAAY,aAAa,EAAE;AAC3B,cAAY,YAAY,EAAE;AAC1B,cAAY,cAAc,EAAE;AAC5B,cAAY,cAAc,EAAE;AAAA;AAG9B,oBAAoB,aAAa;AAC/B,SAAO,YAAY,cAAc,YAAY,YAAY;AACvD,YACE,YAAY,QACZ,YAAY,WAAW,YAAY;AAAA;AAGvC,SAAO,YAAY;AAAA;AAGrB,oBAAoB,aAAa;AAC/B,SAAO,YAAY,cAAc,YAAY,YAAY;AACvD,YACE,YAAY,QACZ,YAAY,WAAW,YAAY,iBAAiB;AAAA;AAGxD,SAAO,YAAY;AAAA;AAGrB,kBAAkB,aAAa;AAC7B,SAAO,YAAY,YAAY,YAAY,YAAY;AACrD,YAAQ,YAAY,MAAM,YAAY,WAAW,YAAY;AAAA;AAE/D,SAAO,YAAY;AAAA;AAGrB,wBAAwB,aAAa;AACnC,MAAI,KAAK,KAAK,MAAM,KAAK,IAAI;AAC7B,QAAM,aAAa,IAAI,MACrB,YAAY,aAAc,aAAY,OAAO,IAAI;AAEnD,QAAM;AACN,OAAK,MAAM,GAAG,MAAM,YAAY,SAAS,EAAE,KAAK;AAC9C,eAAW,SAAS,YAAY,WAAW;AAAA;AAE7C,QAAM,YAAY;AAClB,OACE,MAAM,YAAY,UAAW,aAAY,OAAO,IAAI,IACpD,MAAM,YAAY,YAClB,EAAE,KACF;AACA,QAAI,QAAQ,KAAK,YAAY,WAAW,SAAS,IAAI;AACnD,iBAAW,SAAS,QAAQ,KAAK,YAAY,WAAW,QAAQ;AAChE,YAAM,SAAS,QAAQ,KAAK,YAAY,WAAW,QAAQ;AAC3D,YAAM,QAAQ,KAAK;AAAA,WACd;AACL,iBAAW,SAAS,QAAQ,KAAK,YAAY,WAAW;AAAA;AAAA;AAG5D,QAAM,YAAY,QAAQ,OAAO,MAAM,aAAa,WAAW;AAC/D,OAAK;AACL,QAAM;AACN,OAAK,MAAM,MAAM,GAAG,OAAO,GAAG,EAAE,KAAK;AACnC,WAAO,WAAW;AAClB,WAAO,CAAC,CAAE,QAAO,KAAK,IAAK,KAAK,OAAO;AACvC,QAAI,QAAQ,KAAK,SAAS,IAAI;AAC5B,WAAK,KAAK,WAAW,QAAQ,KAAK,QAAQ,KAAK;AAC/C,YAAM,SAAS,QAAQ,KAAK,QAAQ;AACpC,YAAM,QAAQ,KAAK;AAAA,WACd;AACL,WAAK,KAAK,WAAW,QAAQ,KAAK,SAAS;AAAA;AAAA;AAG/C,SAAO;AAAA;AAGT,iBAAiB,aAAa,KAAK;AACjC,cAAY,WAAW,YAAY,gBAAgB;AACnD;AAAA;AAGF,sBAAsB;AACpB,WAAS;AACT,OAAK,OAAO,IAAI;AAChB,OAAK,SAAS,IAAI;AAClB,OAAK,SAAS,IAAI;AAAA;AAGpB,oBAAoB,GAAG;AACrB,aAAW,KAAK;AAChB,UAAQ,MAAM;AAAA;AAGhB,oBAAoB,iBAAiB;AACnC,WAAS;AACT,OAAK,OAAO,IAAI,WAAW;AAC3B,OAAK,SAAS,IAAI,aAAa;AAC/B,OAAK,SAAS,IAAI,aAAa;AAAA;AAGjC,WACE,KACA,GACA,YAAY,CAAC,cAAc,gBAC3B,YACA,YACA;AAEF,EAAE,aAAa,qBAAqB,GAAG;AACrC,SAAO,aAAa,MAAM;AAAA;AAE5B,EAAE,OAAO;AACT,EAAE,SAAS;AACX,EAAE,cAAc;AAChB,EAAE,SAAS;AACX,EAAE,cAAc;AAChB,EAAE,OAAO;AACT,EAAE,YAAY;AACd,EAAE,UAAU;AACZ,EAAE,UAAU;AACZ,EAAE,UAAU;AACZ,EAAE,aAAa;AACf,EAAE,MAAM;AACR,EAAE,QAAQ;AACV,IAAI;AAEJ,kBAAkB,IAAI,IAAI;AACxB,SAAO,GAAG,QAAQ,GAAG;AAAA;AAGvB,oBAAoB,IAAI,IAAI;AAC1B,SAAO,SAAS,IAAI;AAAA;AAGtB,sCAAsC;AAAA;AAEtC,WAAW,KAAK,GAAG,IAAI;AACvB,EAAE,UAAU,iBAAiB,IAAI,IAAI;AACnC,SAAO,WAAW,IAAI;AAAA;AAGxB,IAAI,mBAAmB;AACvB,yBAAyB;AACvB,MAAI,kBAAkB;AACpB;AAAA;AAEF,qBAAmB;AACnB,MAAI,KAAK;AACT,eAAa;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAEF,aAAW;AAAA,IACT;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IACtE;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAE9B,aAAW;AAAA,IACT;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAE1E,aAAW,YAAY;AACvB,aAAW,YAAY;AACvB,SAAO,YAAY,IAAI;AACvB,YAAU,YAAY,IAAI;AAC1B,UAAQ,YAAY,IAAI;AACxB,aAAW,YAAY;AACvB,cAAY,YAAY;AACxB,cAAY,YAAY;AACxB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,aAAS,SAAS,QAAQ;AAAA;AAE5B,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,aAAS,SAAS,QAAQ;AAAA;AAE5B,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AACvB,WAAK,KAAK,KACR,CAAC,CAAE,OAAM,OAAO,CAAC,CAAE,KAAI,MACtB,CAAC,CAAE,OAAM,KAAK,MAAM,CAAC,CAAE,KAAI,KAAK,KAAK,MAAM;AAAA;AAEhD,SAAK,IAAI,OAAO;AAAA;AAElB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AACvB,cAAQ,KAAK,KAAK,KAAK,SAAS,MAAM,SAAS;AAAA;AAAA;AAGnD,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AACvB,YAAM,KAAK,KAAK,KAAK,SAAS,MAAM,SAAS;AAAA;AAAA;AAGjD,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,aAAS,OAAO;AAChB,SAAK,IAAI,KAAK,IAAI,IAAI,EAAE,GAAG;AACzB,UAAI,CAAC,KAAK,KAAK,IAAI;AACjB,iBAAS,OAAO,IAAI;AACpB;AAAA;AAAA;AAAA;AAIN,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,cAAU,OAAO;AACjB,SAAK,IAAI,KAAK,IAAI,IAAI,EAAE,GAAG;AACzB,UAAI,CAAC,QAAQ,KAAK,IAAI;AACpB,kBAAU,OAAO,IAAI;AACrB;AAAA;AAAA;AAAA;AAIN,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,cAAU,OAAO;AACjB,SAAK,IAAI,KAAK,IAAI,IAAI,EAAE,GAAG;AACzB,UAAI,CAAC,MAAM,KAAK,IAAI;AAClB,kBAAU,OAAO,IAAI;AACrB;AAAA;AAAA;AAAA;AAAA;AAMR,IAAI;AAAJ,IACE;AADF,IAEE;AAFF,IAGE;AAHF,IAIE;AAJF,IAKE;AALF,IAME;AANF,IAOE;AAPF,IAQE;AARF,IASE;AATF,IAUE;AAEF,mBAAmB,aAAa;AAC9B,MAAI,aACF,aACA,IACA,MACA,SACA,KACA,OACA,UACA,WACA,MACA,MACA;AACF,cAAY,WAAW;AACvB,QAAM,KAAK,QAAQ,IAAI,UAAU,WAAW,YAAY,IAAI;AAC5D,QAAM,KAAK,QAAQ,IAAI,UAAU,WAAW,YAAY,IAAI;AAC5D,QAAM,KAAK,QAAQ,IAAI,UAAU,WAAW,YAAY,IAAI;AAC5D,QAAM,SAAS,OAAO,CAAC,CAAC,MAAM;AAC9B,QAAM,SAAS,OAAO,CAAC,CAAC,MAAM;AAC9B,QAAM,SAAS,OAAO,CAAC,CAAC,MAAM;AAC9B,cAAY,YAAY;AACxB,cAAY,UAAU;AACtB,SAAO,YAAY,OAAO;AAC1B,OACE,YAAY,UACT,UAAS,SAAS,SAAS,UAAU,SAClC,SAAS,SACP,SACA,SACF,QACN,YAAY,UAAU,KACtB,EAAE,YAAY,SACd;AACA,QACG,UAAU,YAAY,WACrB,SACE,aACA,CAAC,CAAC,OAAO,GACT,KAAK,IACL,YAAY,SACZ,IACA,MAEH,UAAU,YAAY,WACrB,SACE,aACA,CAAC,CAAC,OAAO,GACT,KAAK,IACL,YAAY,SACZ,IACA,MAEH,UAAU,YAAY,WACrB,SAAS,aAAa,CAAC,CAAC,OAAO,GAAG,KAAK,IAAI,YAAY,SAAS,IAAI,IACtE;AACA;AAAA;AAAA;AAGJ,QAAM,YAAY,WAChB,YAAY,QACZ,QACE,sCACA,YAAY,CAAC,eAAe,gBAAgB,eAC5C,cACA,GACA;AAIJ,YAAU,KAAK,SAAU,GAAG,GAAG;AAC7B,WAAO,EAAE,QAAQ,EAAE;AAAA;AAErB,gBAAc;AACd,KAAG;AACD;AAAK,WAAK,WAAW,UAAU,GAAG,OAAO,WAAW,KAAK,EAAE,UAAU;AACnE,aAAK,MAAM,GAAG,MAAM,UAAU,QAAQ,EAAE,KAAK;AAC3C,cAAI,UAAU,KAAK,QAAQ,UAAU;AACnC;AAAA;AAEF,cAAI,WAAW,UAAU,KAAK,UAAU,aAAa;AACnD;AAAA;AAEF,kBAAQ,YAAY,IAAI,UAAU;AAClC,iBACE,YAAY,KACZ,WAAW,YAAY,KACvB,SAAS,SAAS,YAAY,IAAI;AAEpC,iBAAO,OAAO,YAAY;AAC1B,iBAAO,OAAO,YAAY;AAC1B,sBAAY,UAAU,UAAU,KAAK;AACrC,sBAAY,UAAU,WAAW,UAAU,KAAK;AAChD,cAAI,SAAS,aAAa,MAAM,MAAM,YAAY,SAAS,IAAI,IAAI;AACjE;AAAA;AAAA;AAAA;AAIN,MAAE;AAAA,WACK,aAAa;AACtB,cAAY,KAAK,KAAK,SAAU,GAAG,GAAG;AACpC,WAAO,EAAE,QAAQ,EAAE;AAAA;AAErB,UAAQ;AACR,gBAAc;AACd,KAAG;AACD;AAAM,WACJ,YAAY,YAAY,KAAK,GAAG,OAChC,YAAY,KACZ,EAAE,WACF;AACA,aAAK,MAAM,GAAG,MAAM,KAAK,IAAI,YAAY,SAAS,MAAM,EAAE,KAAK;AAC7D,cAAI,YAAY,KAAK,KAAK,QAAQ,WAAW;AAC3C;AAAA;AAEF,cACE,YACE,YAAY,KAAK,KAAK,UACtB,YAAY,KAAK,KAAK,UACxB,aACA;AACA;AAAA;AAEF,oBAAU,OAAO,YAAY,KAAK,SAAS,YAAY,KAAK;AAC5D,iBACE,YAAY,KACZ,WAAW,YAAY,KAAK,OAC5B,UAAU,SAAS,WAAW,YAAY,KAAK,MAAM;AAEvD,eAAK,SAAS,YAAY;AAC1B,iBAAO,OAAO,YAAY,KAAK;AAC/B,iBAAO,QAAQ,UAAU,YAAY;AACrC,cACE,QACE,YACE,YAAY,KAAK,KAAK,UACtB,YAAY,KAAK,KAAK,WAC1B,SACE,aACA,MACA,IACA,MACA,YACE,YAAY,KAAK,KAAK,UACtB,YAAY,KAAK,KAAK,SACxB,IACA,IAEF;AACA,oBAAQ;AACR;AAAA;AAAA;AAAA;AAIN,MAAE;AAAA,WACK,cAAc;AACvB,QAAM,UAAU,IAAI,WAAW,YAAY,KAAK;AAChD,cAAY,UAAU,QAAQ;AAC9B,cAAY,UAAU,QAAQ;AAC9B,QAAM,WAAW,YAAY,YAAY,UAAU,YAAY;AAC/D,OAAK,MAAM,GAAG,MAAM,UAAU,EAAE,KAAK;AACnC,YAAQ,SAAS,SAAS,YAAY,MAAM;AAAA;AAE9C,cAAY,WAAW,eAAe;AAAA;AAGxC,kBAAkB,aAAa,KAAK;AAClC,MAAI,KAAK;AACT,UAAQ,YAAY,IAAI,YAAY;AACpC,OAAK,MAAM,GAAG,MAAM,YAAY,SAAS,EAAE,KAAK;AAC9C,YAAQ,YAAY,IAAI,YAAY,MAAM;AAAA;AAE5C,UAAQ,SAAS;AAAA,SACV;AACH,cAAQ,YAAY,IAAI;AACxB,cAAQ,YAAY,IAAI;AACxB,kBAAY,MAAM,YAAY,WAAW;AACzC,kBAAY,MAAM,YAAY,UAAU,KAAK;AAC7C,kBAAY,OAAO;AACnB,YAAM;AACN;AAAA,SACG;AACH,cAAQ,YAAY,IAAI;AACxB,cAAQ,YAAY,IAAI;AACxB,kBAAY,MAAM,YAAY,WAAW;AACzC,kBAAY,MAAM,YAAY,UAAU,KAAK;AAC7C,kBAAY,OAAO;AACnB,YAAM;AACN;AAAA,SACG;AACH,kBAAY,OAAO;AACnB,YAAM;AAAA;AAEV,SACE,YAAY,KACZ,WAAW,YAAY,KACvB,SAAS,SAAS,YAAY,IAAI;AAEpC,QAAM,OAAO,OAAO,YAAY;AAChC,QAAM,OAAO,OAAO,YAAY;AAChC,QAAM,MAAM,OAAO,OAAO,KAAK;AAC/B,cAAY,GAAG,QAAQ,MAAM,YAAY;AACzC,cAAY,GAAG,UAAU,YAAY;AACrC,cAAY,GAAG,OAAO,YAAY;AAClC,cAAY,GAAG,MAAM;AACrB,IAAE,YAAY;AACd,MAAI,YAAY,OAAO,KAAK,OAAO,KAAK;AACtC,WAAO,IAAI,WAAW,YAAY;AAAA,SAC7B;AACL,WAAO,MAAM,YAAY;AACzB,SAAK,QAAQ,YAAY,GAAG,SAAS,QAAQ,MAAM,YAAY;AAAA;AAEjE,OAAK,YAAY,QAAQ;AACzB,SAAO,YAAY,cAAc;AAAA;AAGnC,gBAAgB,aAAa;AAC3B,MAAI;AACJ,UAAQ,YAAY,IAAI,YAAY;AACpC,OAAK,MAAM,GAAG,MAAM,YAAY,SAAS,EAAE,KAAK;AAC9C,YAAQ,YAAY,IAAI,YAAY,MAAM;AAAA;AAE5C,MAAI,CAAC,WAAW,SAAS,YAAY,MAAM;AACzC,WAAO;AAAA;AAET,QAAM,UAAU,OAAO,YAAY,KAAK,SAAS,YAAY;AAC7D,SACE,YAAY,KACZ,WAAW,YAAY,KACvB,UAAU,SAAS,WAAW,YAAY,IAAI;AAEhD,QAAM,KAAK,SAAS,YAAY;AAChC,SAAO,YAAY,KAAK;AACxB,QAAM,OAAO,QAAQ,UAAU,YAAY;AAC3C,GAAC,YAAY,KAAK,YAAY,WACzB,YAAY,KAAK,YAAY,WAAW,IAAI,WAAW,YAAY,MACpE,QAAQ,YAAY,KAAK,YAAY,UAAU,YAAY;AAC/D,cAAY,KAAK,YAAY,SAAS,QACpC,YAAY,UAAU,YAAY,UAAU,KAAK,IAAI,MAAM,OAAO;AACpE,cAAY,KAAK,YAAY,SAAS,UAAU,YAAY;AAC5D,IAAE,YAAY;AACd,SAAO,YAAY,YAAY,YAAY,KAAK;AAAA;AAGlD,sBAAsB,aAAa,iBAAiB;AAClD;AACA,cAAY,IAAI,IAAI,WAAW;AAC/B,YAAU;AACV,SAAO,YAAY;AAAA;AAGrB,kBAAkB,aAAa,IAAI,KAAK,MAAM,IAAI,OAAO;AACvD,MAAI,MAAM,KAAK,KAAK,OAAO,MAAM;AACjC,MAAI,OAAO,GAAG;AACZ,WAAO,SAAS,KAAK,SAAS,aAAa;AAAA;AAE7C,OAAK,OAAO,GAAG,OAAO,IAAI,QAAQ,GAAG;AACnC,QAAI,SAAS,MAAM,SAAS,KAAK,KAAK,SAAS,KAAK,IAAI;AACtD;AAAA;AAEF,SAAK,QAAQ,GAAG,QAAQ,GAAG,EAAE,OAAO;AAClC,YAAM,OAAO;AACb,YAAM,MAAM,IAAI,QAAQ,KAAK;AAC7B,aAAO,OAAO,CAAC,CAAC,QAAQ;AACxB,UAAI,QAAQ,MAAM;AAChB,YAAI,OAAO,MAAM;AACf;AAAA;AAEF;AAAA;AAEF,aAAO,QAAQ,KAAK,MAAM;AAC1B,eAAS;AACT,kBAAY,MAAM,SAAS;AAC3B,UAAI,SAAS,aAAa,KAAK,MAAM,OAAO,GAAG,MAAM,QAAQ,IAAI;AAC/D,eAAO;AAAA;AAAA;AAAA;AAIb,SAAO;AAAA;AAGT,kBAAkB,aAAa,IAAI,IAAI,MAAM,IAAI,OAAO;AACtD,MAAI,KAAK,KAAK,MAAM;AACpB,MAAI,OAAO,KAAK,OAAO,QAAQ,GAAG;AAChC,WAAO,SAAS,KAAK,OAAO;AAAA;AAE9B,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,QAAI,QAAQ,IAAI,MAAM;AACpB,YAAM,UAAU;AAChB;AAAA;AAEF,UAAM,KAAK,IAAI;AACf,UAAM,KAAK,IAAI;AACf,WAAO,OAAO,MAAM,KAAK;AACzB,QAAI,QAAQ,MAAM;AAChB,aAAO,QAAS,OAAM,UAAU;AAChC;AAAA;AAEF,gBAAY,MAAM,SAAS,SAAS;AACpC,QAAI,SAAS,aAAa,KAAK,KAAK,OAAO,GAAG,KAAK,QAAQ,IAAI;AAC7D,aAAO;AAAA;AAAA;AAGX,SAAO;AAAA;AAGT,kBAAkB,aAAa,MAAM,IAAI,MAAM,MAAM,IAAI,OAAO;AAC9D,MAAI,QAAQ,QAAQ,KAAK,OAAO,KAAK,OAAO,OAAO,WAAW;AAC9D,MAAI,SAAS,GAAG;AACd,WAAO,SAAS,KAAK,OAAO;AAAA;AAE9B,SAAO,YAAY,MAAM,QAAQ;AACjC,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,QAAI,MAAM,IAAI,MAAM;AAClB,YAAM,UAAU;AAChB;AAAA;AAEF,UAAM,OAAO,IAAI;AACjB,YAAQ,OAAO;AACf,QAAI,SAAS,MAAM;AACjB,cAAQ,QAAQ,MAAM,MAAO,OAAM,UAAU;AAC7C;AAAA;AAEF,YAAQ,SAAS,YAAY,MAAM,OAAO,MAAM,OAAO,GAAG;AAC1D,aAAS,CAAC,CAAE,SAAQ;AACpB,gBAAY,UAAU;AACtB,WAAO,YAAY;AACnB,kBAAc;AACd,aACE,SAAS,YAAY,MAAM,OAAO,MAAO,OAAO,IAAK,MAAM,MAAM;AACnE,YAAQ,UAAU,YAAY,QAAQ,QAAQ;AAC9C,QAAI,SAAS,MAAM;AACjB,cAAQ,QAAQ,MAAM,MAAO,OAAM,UAAU;AAC7C;AAAA;AAEF,QAAI,SAAS,aAAa,OAAO,KAAK,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI;AACtE,kBAAY,MAAM,SAAS;AAC3B,aAAO;AAAA;AAAA;AAGX,SAAO;AAAA;AAGT,oBAAoB;AAClB,MAAI;AACJ,OAAK,SAAS,IAAI,gBAAgB,IAAI;AACtC,OAAK,QAAQ,YAAY;AACzB,OAAK,QAAQ,YAAY;AACzB,OAAK,QAAQ,YAAY;AACzB,OAAK,KAAK,IAAI;AACd,OAAK,KAAK,IAAI;AACd,OAAK,MAAM,IAAI;AACf,OAAK,MAAM,IAAI;AACf,OAAK,MAAM,IAAI;AACf,OAAK,QAAQ,YAAY;AACzB,OAAK,OAAO,YAAY;AACxB,OAAK,MAAM,GAAG,MAAM,IAAI,EAAE,KAAK;AAC7B,SAAK,MAAM,OAAO,IAAI;AAAA;AAAA;AAI1B,kBAAkB;AAChB,MAAI,UAAU;AACZ;AAAA;AAEF;AACA,YAAU,YAAY;AACtB;AACA;AACA,YAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA,aAAW;AAAA;AAGb,WAAW,KAAK,GAAG,YAAY,CAAC,cAAc;AAC9C,EAAE,OAAO;AACT,EAAE,UAAU;AACZ,EAAE,IAAI;AACN,EAAE,UAAU;AACZ,EAAE,UAAU;AACZ,EAAE,YAAY;AACd,EAAE,WAAW;AACb,IAAI,WAAW;AAEf,IAAI,oBAAoB;AACxB,0BAA0B;AACxB,MAAI,mBAAmB;AACrB;AAAA;AAEF,sBAAoB;AAAA;AAGtB,kBAAkB,KAAK;AACrB,MAAI,KAAK,GAAG,KAAK;AACjB,WAAS;AACT,OAAK,MAAM,GAAG,MAAM,IAAI,QAAQ,MAAM,KAAK,EAAE,KAAK;AAChD,SAAK,IAAI,KAAK,IAAI,KAAK,EAAE,GAAG;AAC1B,UAAI,OAAO,IAAI,MAAO,WAAU;AAAA;AAAA;AAGpC,SAAO;AAAA;AAGT,cAAc,KAAK,GAAG,GAAG,GAAG,GAAG,KAAK;AAClC,MAAI;AACJ,UAAQ;AAAA,SACD;AACH,aAAO,IAAI;AACX,UAAI,KAAK,IAAI;AACb,UAAI,KAAK,IAAI;AACb,UAAI,KAAK,IAAI;AACb,UAAI,KAAK;AACT;AAAA,SACG;AACH,aAAO,IAAI;AACX,UAAI,KAAK,IAAI;AACb,UAAI,KAAK;AACT,aAAO,IAAI;AACX,UAAI,KAAK,IAAI;AACb,UAAI,KAAK;AACT;AAAA,SACG;AACH,aAAO,IAAI;AACX,UAAI,KAAK,IAAI;AACb,UAAI,KAAK,IAAI;AACb,UAAI,KAAK,IAAI;AACb,UAAI,KAAK;AACT;AAAA;AAAA;AAIN,mBAAmB;AAAA;AAEnB,wBAAwB,aAAa,WAAW,QAAQ,eAAe;AACrE,QAAM,QAAQ,IAAI;AAClB,QAAM,WAAW,cAAc;AAC/B,iBAAe,WAAW,IAAI,CAAC,SAAS,MACtC,gBAAgB,WAAW,IAAI,CAAC,SAAS,GAAG;AAC9C,QAAM,YAAY;AAClB,QAAM,aAAa;AACnB,QAAM,gBAAgB;AACtB,SAAO;AAAA;AAGT,wBAAwB,aAAa,WAAW,QAAQ,YAAY;AAClE,QAAM,QAAQ,IAAI;AAClB,QAAM,WAAW,cAAc;AAC/B,iBAAe,WAAW,gBAAgB,QAAQ;AAClD,QAAM,aAAa;AACnB,SAAO;AAAA;AAGT,yBAAyB,OAAO;AAC9B,QAAM,OAAO,UAAU,MAAM;AAC7B,UAAQ;AACR,SAAO;AAAA;AAGT,wBAAwB,QAAQ;AAC9B,SAAO,OAAO,WAAW,YAAY,SAAS;AAAA;AAGhD,yBAAyB,QAAQ,OAAO;AACtC,MAAI;AACJ,QAAM,SAAS;AACf,MAAI,WAAW,GAAG;AAChB,YAAQ,OAAO;AAAA,SACV;AACL,QAAI,SAAS,GAAG;AACd,UAAI,OAAO,gBAAgB;AAC3B,UAAI,MAAM;AACR,gBAAQ,KAAK;AAAA,aACR;AACL,eAAO,UAAU,UAAU,WAAY;AAAA;AACvC,aAAK,YAAY;AACjB;AAAA;AAAA,WAEG;AACL;AAAA;AAAA;AAGJ,QAAM,YAAY;AAAA;AAGpB,EAAE,gBAAgB;AAElB,cAAc,aAAa,GAAG;AAC5B,MAAI,OAAO,aAAa,IAAI;AAC1B,WAAO;AAAA;AAAA;AAIX,kBAAkB,aAAa;AAC7B,cAAY,QAAQ,QAClB,gCACA,YAAY,CAAC,gBAAgB,eAC7B,UACA,GACA;AAAA;AAIJ,gBAAgB,aAAa,GAAG;AAC9B,WAAS,YAAY,OAAO,YAAY,QAAQ;AAChD,SAAO;AAAA;AAGT,gBAAgB,aAAa;AAC3B,cAAY,QAAQ,QAClB,gCACA,YAAY,CAAC,gBAAgB,eAC7B,UACA,GACA;AAEF,cAAY,OAAO;AAAA;AAGrB,gBAAgB,aAAa,OAAO;AAClC,SAAO,YAAY,MAAM;AAAA;AAG3B,mBAAmB,aAAa,OAAO;AACrC,QAAM,WAAW,YAAY,MAAM;AACnC,WAAS,YAAY,OAAO,OAAO;AACnC,IAAE,YAAY;AACd,SAAO;AAAA;AAGT,gBAAgB,aAAa,OAAO,GAAG;AACrC,QAAM,WAAW,YAAY,MAAM;AACnC,WAAS,YAAY,OAAO,OAAO;AACnC,SAAO;AAAA;AAGT,oBAAoB,aAAa,KAAK;AACpC,MAAI;AACJ,MAAI,SAAS,YAAY,QAAS,OAAM,WAAW,KAAK,YAAY;AACpE,OAAK,MAAM,GAAG,MAAM,YAAY,MAAM,EAAE,KAAK;AAC3C,aAAS,KAAK,KAAK,YAAY,MAAM;AAAA;AAEvC,MAAI,SAAS,YAAY,QAAQ,SAAS,KAAK,YAAY,MAAM;AACjE,SAAO;AAAA;AAGT,uBAAuB;AACrB,WAAS;AACT,OAAK,MAAM,SAAS;AAAA;AAGtB,kBAAkB,OAAO,OAAO,aAAa;AAC3C,QAAM,OAAO,OAAO;AAAA;AAEtB,EAAE,OAAO;AAET,wBAAwB,aAAa,KAAK;AACxC,MAAI,MAAM,KAAK,KAAK;AACpB,QAAM;AACN,SAAO,YAAY,SAAS;AAC5B,SAAO,OAAO,MAAM;AAClB,UAAM,MAAO,EAAC,CAAE,QAAO,QAAQ;AAC/B,aAAS,YAAY;AACrB,QAAI,SAAS,KAAK;AAChB,YAAM,MAAM;AAAA,eACH,SAAS,KAAK;AACvB,aAAO,MAAM;AAAA,WACR;AACL,aAAO;AAAA;AAAA;AAGX,SAAO,CAAC,MAAM;AAAA;AAGhB,gBAAgB,GAAG;AACjB,SAAO,GAAG,EAAE;AAAA;AAGd,gBAAgB,GAAG,SAAS;AAC1B,MAAI;AACJ,OAAK,MAAM,GAAG,MAAM,SAAS,EAAE,KAAK;AAClC,MAAE,OAAO;AAAA;AAAA;AAIb,qBAAqB,aAAa,MAAM;AACtC,MAAI,eAAe,WAAW,YAAY;AAC1C,QAAM,WAAW,YAAY,KAAK;AAClC,QAAM,QAAQ,OAAO,YAAY,MAAM;AACvC,SAAO,OAAO,IAAI,IAAI,UAAU;AAC9B,oBACI,aAAY,IAAI,OAAO,GACxB,aAAa,YAAY,GACzB,kBAAkB,WACnB,aAAa,YACX,WACE,OAAO,YAAY,MAAM,aACzB,OAAO,YAAY,MAAM,cACvB,KACH,mBAAkB,aACrB;AACF,QAAI,WAAW,OAAO,OAAO,YAAY,MAAM,kBAAkB,GAAG;AAClE;AAAA;AAEF,WAAO,YAAY,MAAM,MAAM,OAAO,YAAY,MAAM;AACxD,WAAO;AAAA;AAET,SAAO,YAAY,MAAM,MAAM;AAAA;AAGjC,gBAAgB,aAAa,GAAG;AAC9B,MAAI,WAAW;AACf,SAAO,YAAY,KAAK;AACxB,SAAO,YAAY,MAAM;AACzB,SAAO,OAAO,GAAG;AACf,gBAAY;AACZ,WAAO,CAAC,CAAG,SAAO,KAAK;AACvB,QAAI,WAAW,OAAO,YAAY,MAAM,OAAO,MAAM,GAAG;AACtD,aAAO,YAAY,MAAM,WAAW;AACpC,aAAO;AAAA;AAET,WAAO,YAAY,MAAM,WAAW,OAAO,YAAY,MAAM;AAAA;AAE/D,SAAO,YAAY,MAAM,MAAM;AAC/B,SAAO;AAAA;AAGT,eAAe,aAAa;AAC1B,MAAI,YAAY,KAAK,SAAS,GAAG;AAC/B,WAAO;AAAA;AAET,QAAM,QAAQ,OAAO,YAAY,MAAM;AACvC,iBAAe;AACf,SAAO;AAAA;AAGT,wBAAwB,aAAa;AACnC,QAAM,YAAY,UAAU,YAAY,MAAM,YAAY,KAAK,OAAO;AACtE,MAAI,IAAI,YAAY,KAAK,MAAM;AAC7B,WAAO,YAAY,MAAM,GAAG;AAC5B,gBAAY,aAAa;AAAA;AAAA;AAI7B,oBAAoB,aAAa,GAAG;AAClC,SAAO,WAAW,YAAY,MAAM;AAAA;AAGtC,yBAAyB,KAAK;AAC5B,OAAK,OAAO,IAAI;AAChB,OAAK,MAAM;AAAA;AAGb,WAAW,KAAK,GAAG,IAAI;AACvB,EAAE,MAAM;AACR,EAAE,OAAO;AAET,IAAM,+BAA+B,eACjC,cACA,UACA,GACA;AAJJ,IAME,iCAAiC,eAC/B,gBACA,WACA,KACA;AAVJ,IAYE,qCAAqC,eACnC,kBACA,YACA,KACA;AAhBJ,IAkBE,uCAAuC,eACrC,oBACA,aACA,KACA;AAGJ,IAAI;AAEJ,IAAI,UAAU;AACd,gBAAgB;AACd,MAAI,SAAS;AACX;AAAA;AAEF,YAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAW,IAAI;AAAA;AAGV,sBAA4B;AACjC;AACA;AAAA;AAGF,mCAAwD;AACtD;AACA;AACA,QAAM,SAAS,IAAI,WACjB,aAAa,UAAU,MAAM;AAE/B,SAAQ,OAAM,qBAAwB,OAAO;AAAA;",
|
|
6
6
|
"names": []
|