cubing 0.24.0-pre3 → 0.24.1
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/dist/esm/{2x2x2.sgs.json-MBIRIUNC.js → 2x2x2.sgs.json-2QRQG2UF.js} +3 -3
- package/dist/esm/{2x2x2.sgs.json-MBIRIUNC.js.map → 2x2x2.sgs.json-2QRQG2UF.js.map} +0 -0
- package/dist/esm/{3d-dynamic-inside-THECRAH6.js → 3d-dynamic-inside-EQIKTTYZ.js} +4 -4
- package/dist/esm/{3d-dynamic-inside-THECRAH6.js.map → 3d-dynamic-inside-EQIKTTYZ.js.map} +0 -0
- package/dist/esm/bluetooth/index.js +3 -3
- package/dist/esm/{chunk-JAGBESDG.js → chunk-37CDJ45V.js} +3 -3
- package/dist/esm/chunk-37CDJ45V.js.map +7 -0
- package/dist/esm/{chunk-FK43AAW3.js → chunk-42DBDQQX.js} +2 -2
- package/dist/esm/{chunk-FK43AAW3.js.map → chunk-42DBDQQX.js.map} +0 -0
- package/dist/esm/{chunk-DLOXZJ66.js → chunk-B27E6KTE.js} +71 -63
- package/dist/esm/chunk-B27E6KTE.js.map +7 -0
- package/dist/esm/{chunk-WODHUD4F.js → chunk-B6IDD5MD.js} +2 -2
- package/dist/esm/{chunk-WODHUD4F.js.map → chunk-B6IDD5MD.js.map} +0 -0
- package/dist/esm/{chunk-42SLLJYT.js → chunk-BBEJTW6Z.js} +2 -2
- package/dist/esm/{chunk-42SLLJYT.js.map → chunk-BBEJTW6Z.js.map} +0 -0
- package/dist/esm/{chunk-HF5CTTHX.js → chunk-GBIDMAJS.js} +2 -2
- package/dist/esm/{chunk-HF5CTTHX.js.map → chunk-GBIDMAJS.js.map} +0 -0
- package/dist/esm/{chunk-ZRNC52YW.js → chunk-LR6VCMD2.js} +2 -2
- package/dist/esm/{chunk-ZRNC52YW.js.map → chunk-LR6VCMD2.js.map} +0 -0
- package/dist/esm/{chunk-5LJOQJWE.js → chunk-SLUMTYHP.js} +118 -92
- package/dist/esm/chunk-SLUMTYHP.js.map +7 -0
- package/dist/esm/{chunk-XDVGMF6J.js → chunk-YVHK2LDM.js} +3 -3
- package/dist/esm/{chunk-XDVGMF6J.js.map → chunk-YVHK2LDM.js.map} +0 -0
- package/dist/esm/{entry-EUJSLKH7.js → entry-UARUM747.js} +14 -14
- package/dist/esm/{entry-EUJSLKH7.js.map → entry-UARUM747.js.map} +0 -0
- package/dist/esm/{fto.sgs.json-57IZYBDK.js → fto.sgs.json-DKPRQRDL.js} +3 -3
- package/dist/esm/{fto.sgs.json-57IZYBDK.js.map → fto.sgs.json-DKPRQRDL.js.map} +0 -0
- package/dist/esm/kpuzzle/index.js +3 -1
- package/dist/esm/{megaminx.sgs.json-EMTPD7NM.js → megaminx.sgs.json-3UELYHNZ.js} +3 -3
- package/dist/esm/{megaminx.sgs.json-EMTPD7NM.js.map → megaminx.sgs.json-3UELYHNZ.js.map} +0 -0
- package/dist/esm/{module-entry-SOBSVDFF.js → module-entry-7NBG44KF.js} +2 -2
- package/dist/esm/{module-entry-SOBSVDFF.js.map → module-entry-7NBG44KF.js.map} +0 -0
- package/dist/esm/protocol/index.js +2 -2
- package/dist/esm/puzzles/index.js +2 -2
- package/dist/esm/{pyraminx.sgs.json-3AQMZVNC.js → pyraminx.sgs.json-KGPI57MS.js} +4 -4
- package/dist/esm/{pyraminx.sgs.json-3AQMZVNC.js.map → pyraminx.sgs.json-KGPI57MS.js.map} +0 -0
- package/dist/esm/scramble/index.js +4 -4
- package/dist/esm/{scramble_444-FRS754UI.js → scramble_444-M3Q3OZN3.js} +6 -5
- package/dist/esm/scramble_444-M3Q3OZN3.js.map +7 -0
- package/dist/esm/search/index.js +4 -4
- package/dist/esm/{skewb.sgs.json-LEHGU6WW.js → skewb.sgs.json-QVGBEYZV.js} +3 -3
- package/dist/esm/{skewb.sgs.json-LEHGU6WW.js.map → skewb.sgs.json-QVGBEYZV.js.map} +0 -0
- package/dist/esm/twisty/index.js +189 -16
- package/dist/esm/twisty/index.js.map +3 -3
- package/dist/esm/{worker-inside-generated-string-FB53K5T3.js → worker-inside-generated-string-6QDQTUCQ.js} +23 -23
- package/dist/esm/worker-inside-generated-string-6QDQTUCQ.js.map +7 -0
- package/dist/types/kpuzzle/KTransformation.d.ts +2 -0
- package/dist/types/kpuzzle/index.d.ts +2 -2
- package/dist/types/puzzles/async/async-pg3d.d.ts +23 -6
- package/dist/types/puzzles/async/lazy-cached.d.ts +1 -0
- package/dist/types/puzzles/implementations/fto/index.d.ts +11 -2
- package/dist/types/puzzles/implementations/megaminx/index.d.ts +11 -2
- package/dist/types/puzzles/implementations/pyraminx/index.d.ts +7 -2
- package/dist/types/search/worker-inside-generated-string.d.ts +1 -1
- package/dist/types/twisty/index.d.ts +1 -0
- package/dist/types/twisty/model/props/puzzle/state/PuzzleAlgProp.d.ts +1 -0
- package/dist/types/twisty/model/props/viewer/ViewerLinkProp.d.ts +1 -0
- package/dist/types/twisty/views/twizzle/TwizzleLink.css.d.ts +2 -0
- package/dist/types/twisty/views/twizzle/TwizzleLink.d.ts +9 -0
- package/dist/types/twisty/views/twizzle/url-params.d.ts +18 -0
- package/package.json +2 -1
- package/dist/esm/chunk-5LJOQJWE.js.map +0 -7
- package/dist/esm/chunk-DLOXZJ66.js.map +0 -7
- package/dist/esm/chunk-JAGBESDG.js.map +0 -7
- package/dist/esm/scramble_444-FRS754UI.js.map +0 -7
- package/dist/esm/worker-inside-generated-string-FB53K5T3.js.map +0 -7
- package/dist/types/puzzles/async/lazy-cached-kpuzzle.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
export const workerSource: "var Cg=Object.create;var Go=Object.defineProperty;var Pg=Object.getOwnPropertyDescriptor;var Mg=Object.getOwnPropertyNames;var Gg=Object.getPrototypeOf,Tg=Object.prototype.hasOwnProperty;var Ra=t=>Go(t,\"__esModule\",{value:!0});var U=(t,e)=>()=>(t&&(e=t(t=0)),e);var Ue=(t,e)=>{Ra(t);for(var r in e)Go(t,r,{get:e[r],enumerable:!0})},Ig=(t,e,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let n of Mg(e))!Tg.call(t,n)&&n!==\"default\"&&Go(t,n,{get:()=>e[n],enumerable:!(r=Pg(e,n))||r.enumerable});return t},Da=t=>Ig(Ra(Go(t!=null?Cg(Gg(t)):{},\"default\",t&&t.__esModule&&\"default\"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var mi=(t,e,r)=>{if(!e.has(t))throw TypeError(\"Cannot \"+r)};var R=(t,e,r)=>(mi(t,e,\"read from private field\"),r?r.call(t):e.get(t)),ie=(t,e,r)=>{if(e.has(t))throw TypeError(\"Cannot add the same private member more than once\");e instanceof WeakSet?e.add(t):e.set(t,r)},$=(t,e,r,n)=>(mi(t,e,\"write to private field\"),n?n.call(t,r):e.set(t,r),r),ci=(t,e,r,n)=>({set _(o){$(t,e,o,r)},get _(){return R(t,e,n)}}),da=(t,e,r)=>(mi(t,e,\"access private method\"),r);var Sa={};Ue(Sa,{default:()=>Zg});function Yg(t){let e=new WeakMap;return{postMessage:t.postMessage.bind(t),addEventListener:(r,n)=>{let o=l=>{\"handleEvent\"in n?n.handleEvent({data:l}):n({data:l})};t.on(\"message\",o),e.set(n,o)},removeEventListener:(r,n)=>{let o=e.get(n);!o||(t.off(\"message\",o),e.delete(n))},start:t.start&&t.start.bind(t)}}var Zg,xa=U(()=>{Zg=Yg});var wa={};Ue(wa,{port:()=>Xg});async function Xg(){let{parentPort:t}=await import(\"worker_threads\").catch();return(await Promise.resolve().then(()=>(xa(),Sa))).default(t)}var va=U(()=>{});var $g,Io,Ce,Mt=U(()=>{$g=!1,Io=class{is(e){return this instanceof e}as(e){return this instanceof e?this:null}},Ce=class extends Io{constructor(){super();$g&&Object.defineProperty(this,\"_debugStr\",{get:()=>this.toString()})}get log(){return console.log.bind(console,this,this.toString())}}});function ka(t,e=!0){if(!e)return t;switch(t){case 1:return-1;case-1:return 1}}function di(t,e){return e===-1?Array.from(t).reverse():t}function za(t){return Array.from(t).reverse()}var Q,ct=U(()=>{(function(r){r[r.Forwards=1]=\"Forwards\",r[r.Backwards=-1]=\"Backwards\"})(Q||(Q={}))});var Nn,Wr,Ca,Fi=U(()=>{Nn=2147483647,Wr=\"2^31 - 1\",Ca=-2147483648});var Dr,ut,Ai=U(()=>{Gt();ut=class{constructor(){ie(this,Dr,[])}push(e){R(this,Dr).push(e)}experimentalPushAlg(e){for(let r of e.units())this.push(r)}experimentalNumUnits(){return R(this,Dr).length}toAlg(){return new k(R(this,Dr))}reset(){$(this,Dr,[])}};Dr=new WeakMap});var dr,Fr,No,Pe,On=U(()=>{Gt();Mt();ct();No=class extends Ce{constructor(e,r){super();ie(this,dr,void 0);ie(this,Fr,void 0);$(this,dr,Zt(e)),$(this,Fr,Zt(r))}get A(){return R(this,dr)}get B(){return R(this,Fr)}isIdentical(e){let r=e.as(No);return!!(r?.A.isIdentical(this.A)&&r?.B.isIdentical(this.B))}invert(){return new No(R(this,Fr),R(this,dr))}*experimentalExpand(e=Q.Forwards,r){r??(r=1/0),r===0?yield e===Q.Forwards?this:this.invert():e===Q.Forwards?(yield*this.A.experimentalExpand(Q.Forwards,r-1),yield*this.B.experimentalExpand(Q.Forwards,r-1),yield*this.A.experimentalExpand(Q.Backwards,r-1),yield*this.B.experimentalExpand(Q.Backwards,r-1)):(yield*this.B.experimentalExpand(Q.Forwards,r-1),yield*this.A.experimentalExpand(Q.Forwards,r-1),yield*this.B.experimentalExpand(Q.Backwards,r-1),yield*this.A.experimentalExpand(Q.Backwards,r-1))}toString(){return`[${R(this,dr).toString()}, ${R(this,Fr).toString()}]`}},Pe=No;dr=new WeakMap,Fr=new WeakMap});var Qr,jr,Oo,Me,_n=U(()=>{Gt();Mt();ct();Oo=class extends Ce{constructor(e,r){super();ie(this,Qr,void 0);ie(this,jr,void 0);$(this,Qr,Zt(e)),$(this,jr,Zt(r))}get A(){return R(this,Qr)}get B(){return R(this,jr)}isIdentical(e){let r=e.as(Oo);return!!(r?.A.isIdentical(this.A)&&r?.B.isIdentical(this.B))}invert(){return new Oo(R(this,Qr),R(this,jr).invert())}*experimentalExpand(e,r){r??(r=1/0),r===0?yield e===Q.Forwards?this:this.invert():(yield*this.A.experimentalExpand(Q.Forwards,r-1),yield*this.B.experimentalExpand(e,r-1),yield*this.A.experimentalExpand(Q.Backwards,r-1))}toString(){return`[${this.A}: ${this.B}]`}},Me=Oo;Qr=new WeakMap,jr=new WeakMap});var Xt,hi,pt,Kn=U(()=>{Mt();ct();hi=class extends Ce{constructor(e){super();ie(this,Xt,void 0);if(e.includes(`\n`)||e.includes(\"\\r\"))throw new Error(\"LineComment cannot contain newline\");$(this,Xt,e)}get text(){return R(this,Xt)}isIdentical(e){let r=e;return e.is(hi)&&R(this,Xt)===R(r,Xt)}invert(){return this}*experimentalExpand(e=Q.Forwards,r=1/0){yield this}toString(){return`//${R(this,Xt)}`}},pt=hi;Xt=new WeakMap});var Qe,Wn=U(()=>{Mt();ct();Qe=class extends Ce{toString(){return`\n`}isIdentical(e){return e.is(Qe)}invert(){return this}*experimentalExpand(e=Q.Forwards,r=1/0){yield this}}});var je,Qn=U(()=>{Mt();ct();je=class extends Ce{toString(){return\".\"}isIdentical(e){return e.is(je)}invert(){return this}*experimentalExpand(e=Q.Forwards,r=1/0){yield this}}});function _o(t,e){return t?parseInt(t):e}function yi(t){return new Ko().parseAlg(t)}function Ma(t){return new Ko().parseMove(t)}function Ga(t){return new Ko().parseQuantumMove(t)}function qe(t,e,r){let n=t;return n.startCharIndex=e,n.endCharIndex=r,n}function Ta(t,e){return\"startCharIndex\"in t&&(e.startCharIndex=t.startCharIndex),\"endCharIndex\"in t&&(e.endCharIndex=t.endCharIndex),e}var Pa,e1,t1,r1,n1,o1,Je,O,Ko,Ui=U(()=>{Gt();Ai();On();_n();Wo();Kn();Tt();Wn();Qn();Pa=/^(\\d+)?('?)/,e1=/^[_\\dA-Za-z]/,t1=/^((([1-9]\\d*)-)?([1-9]\\d*))?([_A-Za-z]+)?/,r1=/^[^\\n]*/,n1=/^(-?\\d+), ?/,o1=/^(-?\\d+)\\)/;Ko=class{constructor(){ie(this,Je,\"\");ie(this,O,0)}parseAlg(e){$(this,Je,e),$(this,O,0);let r=this.parseAlgWithStopping([]);return this.mustBeAtEndOfInput(),r}parseMove(e){$(this,Je,e),$(this,O,0);let r=this.parseMoveImpl();return this.mustBeAtEndOfInput(),r}parseQuantumMove(e){$(this,Je,e),$(this,O,0);let r=this.parseQuantumMoveImpl();return this.mustBeAtEndOfInput(),r}mustBeAtEndOfInput(){if(R(this,O)!==R(this,Je).length)throw new Error(\"parsing unexpectedly ended early\")}parseAlgWithStopping(e){let r=R(this,O),n=R(this,O),o=new ut,l=!1,i=s=>{if(l)throw new Error(`Unexpected character at index ${s}. Are you missing a space?`)};e:for(;R(this,O)<R(this,Je).length;){let s=R(this,O);if(e.includes(R(this,Je)[R(this,O)]))return qe(o.toAlg(),r,n);if(this.tryConsumeNext(\" \")){l=!1,o.experimentalNumUnits()===0&&(r=R(this,O));continue e}else if(e1.test(R(this,Je)[R(this,O)])){i(s);let u=this.parseMoveImpl();o.push(u),l=!0,n=R(this,O);continue e}else if(this.tryConsumeNext(\"(\")){i(s);let u=this.tryRegex(n1);if(u){let a=u[1],f=R(this,O),g=this.parseRegex(o1),L=qe(new c(new G(\"U_SQ_\"),parseInt(a)),s+1,s+1+a.length),B=qe(new c(new G(\"D_SQ_\"),parseInt(g[1])),f,R(this,O)-1),p=qe(new k([L,B]),s+1,R(this,O)-1);o.push(qe(new it(p),s,R(this,O))),l=!0,n=R(this,O);continue e}else{let a=this.parseAlgWithStopping([\")\"]);this.mustConsumeNext(\")\");let f=this.parseAmount();o.push(qe(new it(a,f),s,R(this,O))),l=!0,n=R(this,O);continue e}}else if(this.tryConsumeNext(\"[\")){i(s);let u=this.parseAlgWithStopping([\",\",\":\"]),a=this.popNext(),f=this.parseAlgWithStopping([\"]\"]);switch(this.mustConsumeNext(\"]\"),a){case\":\":o.push(qe(new Me(u,f),s,R(this,O))),l=!0,n=R(this,O);continue e;case\",\":o.push(qe(new Pe(u,f),s,R(this,O))),l=!0,n=R(this,O);continue e;default:throw\"unexpected parsing error\"}}else if(this.tryConsumeNext(`\n`)){o.push(qe(new Qe,s,R(this,O))),l=!1,n=R(this,O);continue e}else if(this.tryConsumeNext(\"/\"))if(this.tryConsumeNext(\"/\")){i(s);let[u]=this.parseRegex(r1);o.push(qe(new pt(u),s,R(this,O))),l=!1,n=R(this,O);continue e}else{o.push(qe(new c(\"_SLASH_\"),s,R(this,O))),l=!0,n=R(this,O);continue e}else if(this.tryConsumeNext(\".\")){i(s),o.push(qe(new je,s,R(this,O))),l=!0,n=R(this,O);continue e}else throw new Error(`Unexpected character: ${this.popNext()}`)}if(R(this,O)!==R(this,Je).length)throw new Error(\"did not finish parsing?\");if(e.length>0)throw new Error(\"expected stopping\");return qe(o.toAlg(),r,n)}parseQuantumMoveImpl(){let[,,,e,r,n]=this.parseRegex(t1);return new G(n,_o(r,void 0),_o(e,void 0))}parseMoveImpl(){let e=R(this,O);if(this.tryConsumeNext(\"/\"))return qe(new c(\"_SLASH_\"),e,R(this,O));let r=this.parseQuantumMoveImpl(),[n,o]=this.parseAmountAndTrackEmptyAbsAmount(),l=this.parseMoveSuffix();if(l){if(n<0)throw new Error(\"uh-oh\");if((l===\"++\"||l===\"--\")&&n!==1)throw new Error(\"Pochmann ++ or -- moves cannot have an amount other than 1.\");if((l===\"++\"||l===\"--\")&&!o)throw new Error(\"Pochmann ++ or -- moves cannot have an amount written as a number.\");if((l===\"+\"||l===\"-\")&&o)throw new Error(\"Clock dial moves must have an amount written as a natural number followed by + or -.\");l.startsWith(\"+\")&&(r=r.modified({family:`${r.family}_${l===\"+\"?\"PLUS\":\"PLUSPLUS\"}_`})),l.startsWith(\"-\")&&(r=r.modified({family:`${r.family}_${l===\"-\"?\"PLUS\":\"PLUSPLUS\"}_`}),n*=-1)}return qe(new c(r,n),e,R(this,O))}parseMoveSuffix(){return this.tryConsumeNext(\"+\")?this.tryConsumeNext(\"+\")?\"++\":\"+\":this.tryConsumeNext(\"-\")?this.tryConsumeNext(\"-\")?\"--\":\"-\":null}parseAmountAndTrackEmptyAbsAmount(){let e=R(this,O),[,r,n]=this.parseRegex(Pa);if(r?.startsWith(\"0\")&&r!==\"0\")throw new Error(`Error at char index ${e}: An amount can only start with 0 if it's exactly the digit 0.`);return[_o(r,1)*(n===\"'\"?-1:1),!r]}parseAmount(){let e=R(this,O),[,r,n]=this.parseRegex(Pa);if(r?.startsWith(\"0\")&&r!==\"0\")throw new Error(`Error at char index ${e}: An amount number can only start with 0 if it's exactly the digit 0.`);return _o(r,1)*(n===\"'\"?-1:1)}parseRegex(e){let r=e.exec(this.remaining());if(r===null)throw new Error(\"internal parsing error\");return $(this,O,R(this,O)+r[0].length),r}tryRegex(e){let r=e.exec(this.remaining());return r===null?null:($(this,O,R(this,O)+r[0].length),r)}remaining(){return R(this,Je).slice(R(this,O))}popNext(){let e=R(this,Je)[R(this,O)];return ci(this,O)._++,e}tryConsumeNext(e){return R(this,Je)[R(this,O)]===e?(ci(this,O)._++,!0):!1}mustConsumeNext(e){let r=this.popNext();if(r!==e)throw new Error(`expected \\`${e}\\` while parsing, encountered ${r}`);return r}};Je=new WeakMap,O=new WeakMap});function Qo(t){Ia.has(t)||(console.warn(t),Ia.add(t))}var Ia,bi=U(()=>{Ia=new Set});var qr,Si=U(()=>{ct();Fi();qr=class{constructor(e,r=1){if(this.quantum=e,this.amount=r,!Number.isInteger(this.amount)||this.amount<Ca||this.amount>Nn)throw new Error(`Unit amount absolute value must be a non-negative integer from ${Wr} to ${Wr}.`)}suffix(){let e=\"\",r=Math.abs(this.amount);return r!==1&&(e+=r),this.amount<0&&(e+=\"'\"),e}isIdentical(e){return this.quantum.isIdentical(e.quantum)&&this.amount===e.amount}*experimentalExpand(e,r){let n=Math.abs(this.amount),o=ka(e,this.amount<0);for(let l=0;l<n;l++)yield*this.quantum.experimentalExpand(o,r)}}});var It,Ge,Te,jo,G,we,Vr,c,Tt=U(()=>{Mt();ct();Fi();Ui();bi();Si();jo=class extends Io{constructor(e,r,n){super();ie(this,It,void 0);ie(this,Ge,void 0);ie(this,Te,void 0);if($(this,It,e),$(this,Ge,r??null),$(this,Te,n??null),Object.freeze(this),R(this,Ge)!==null&&(!Number.isInteger(R(this,Ge))||R(this,Ge)<1||R(this,Ge)>Nn))throw new Error(`QuantumMove inner layer must be a positive integer below ${Wr}.`);if(R(this,Te)!==null&&(!Number.isInteger(R(this,Te))||R(this,Te)<1||R(this,Te)>Nn))throw new Error(`QuantumMove outer layer must be a positive integer below ${Wr}.`);if(R(this,Te)!==null&&R(this,Ge)!==null&&R(this,Ge)<=R(this,Te))throw new Error(\"QuantumMove outer layer must be smaller than inner layer.\");if(R(this,Te)!==null&&R(this,Ge)===null)throw new Error(\"QuantumMove with an outer layer must have an inner layer\")}static fromString(e){return Ga(e)}modified(e){return new jo(e.family??R(this,It),e.innerLayer??R(this,Ge),e.outerLayer??R(this,Te))}isIdentical(e){let r=e;return e.is(jo)&&R(this,It)===R(r,It)&&R(this,Ge)===R(r,Ge)&&R(this,Te)===R(r,Te)}get family(){return R(this,It)}get outerLayer(){return R(this,Te)}get innerLayer(){return R(this,Ge)}experimentalExpand(){throw new Error(\"experimentalExpand() cannot be called on a `QuantumMove` directly.\")}toString(){let e=R(this,It);return R(this,Ge)!==null&&(e=String(R(this,Ge))+e,R(this,Te)!==null&&(e=String(R(this,Te))+\"-\"+e)),e}},G=jo;It=new WeakMap,Ge=new WeakMap,Te=new WeakMap;Vr=class extends Ce{constructor(...e){super();ie(this,we,void 0);if(typeof e[0]==\"string\")if(e[1]??null){$(this,we,new qr(G.fromString(e[0]),e[1]));return}else return Vr.fromString(e[0]);$(this,we,new qr(e[0],e[1]))}isIdentical(e){let r=e.as(Vr);return!!r&&R(this,we).isIdentical(R(r,we))}invert(){return Ta(this,new Vr(R(this,we).quantum,-this.amount))}*experimentalExpand(e=Q.Forwards){e===Q.Forwards?yield this:yield this.modified({amount:-this.amount})}get quantum(){return R(this,we).quantum}modified(e){return new Vr(R(this,we).quantum.modified(e),e.amount??this.amount)}static fromString(e){return Ma(e)}get amount(){return R(this,we).amount}get type(){return Qo(\"deprecated: type\"),\"blockMove\"}get family(){return R(this,we).quantum.family??void 0}get outerLayer(){return R(this,we).quantum.outerLayer??void 0}get innerLayer(){return R(this,we).quantum.innerLayer??void 0}toString(){if(this.family===\"_SLASH_\")return\"/\";if(this.family.endsWith(\"_PLUS_\"))return R(this,we).quantum.toString().slice(0,-6)+Math.abs(this.amount)+(this.amount<0?\"-\":\"+\");if(this.family.endsWith(\"_PLUSPLUS_\")){let e=Math.abs(this.amount);return R(this,we).quantum.toString().slice(0,-10)+(e===1?\"\":e)+(this.amount<0?\"--\":\"++\")}return R(this,we).quantum.toString()+R(this,we).suffix()}},c=Vr;we=new WeakMap});var Na,Oa,$e,qo,it,Wo=U(()=>{Gt();Mt();ct();Tt();Si();Na=class{constructor(){this.quantumU_SQ_=null;this.quantumD_SQ_=null}format(e){let r=this.tuple(e);return r?`(${r.map(n=>n.amount).join(\", \")})`:null}tuple(e){this.quantumU_SQ_||(this.quantumU_SQ_=new G(\"U_SQ_\")),this.quantumD_SQ_||(this.quantumD_SQ_=new G(\"D_SQ_\"));let r=e.alg;if(r.experimentalNumUnits()===2){let[n,o]=r.units();if(n.as(c)?.quantum.isIdentical(this.quantumU_SQ_)&&o.as(c)?.quantum.isIdentical(this.quantumD_SQ_)){if(e.amount!==1)throw new Error(\"Square-1 tuples cannot have an amount other than 1.\");return[n,o]}}return null}},Oa=new Na,qo=class extends Ce{constructor(e,r){super();ie(this,$e,void 0);let n=Zt(e);$(this,$e,new qr(n,r))}isIdentical(e){let r=e;return e.is(qo)&&R(this,$e).isIdentical(R(r,$e))}get alg(){return R(this,$e).quantum}get amount(){return R(this,$e).amount}get experimentalRepetitionSuffix(){return R(this,$e).suffix()}invert(){return new qo(R(this,$e).quantum,-R(this,$e).amount)}*experimentalExpand(e=Q.Forwards,r){r??(r=1/0),r===0?yield e===Q.Forwards?this:this.invert():yield*R(this,$e).experimentalExpand(e,r-1)}static fromString(){throw new Error(\"unimplemented\")}toString(){return Oa.format(this)??`(${R(this,$e).quantum.toString()})${R(this,$e).suffix()}`}experimentalAsSquare1Tuple(){return Oa.tuple(this)}},it=qo;$e=new WeakMap});var Vo=U(()=>{Wo();Kn();On();_n();Tt();Wn();Qn()});function Rt(t,e){return t instanceof e}function _a(t){return Rt(t,it)||Rt(t,pt)||Rt(t,Pe)||Rt(t,Me)||Rt(t,c)||Rt(t,Qe)||Rt(t,je)}var xi=U(()=>{Vo()});function Ka(t,e,r){if(e.is(it))return t.traverseGrouping(e,r);if(e.is(c))return t.traverseMove(e,r);if(e.is(Pe))return t.traverseCommutator(e,r);if(e.is(Me))return t.traverseConjugate(e,r);if(e.is(je))return t.traversePause(e,r);if(e.is(Qe))return t.traverseNewline(e,r);if(e.is(pt))return t.traverseLineComment(e,r);throw new Error(\"unknown unit\")}function Wa(t){if(t.is(it)||t.is(c)||t.is(Pe)||t.is(Me)||t.is(je)||t.is(Qe)||t.is(pt))return t;throw\"internal error: expected unit\"}var Hr,Yr,Ho,l1,vi,wi,Qa,ja,Ei=U(()=>{Wo();On();Tt();Wn();Qn();_n();Kn();Hr=class{traverseUnit(e,r){return Ka(this,e,r)}traverseIntoUnit(e,r){return Wa(this.traverseUnit(e,r))}},Yr=class extends Hr{traverseUnit(e){return Ka(this,e,void 0)}traverseIntoUnit(e){return Wa(this.traverseUnit(e))}},vi=class extends Hr{*traverseAlg(e,r){if(r.depth===0){yield*e.units();return}let n=[],o=null,l=r?.collapseMoves??!0;function i(a,f){var B;let g=da(B=vi,Ho,l1).call(B,a,f,r);if(g===0)return!1;let L=new c(a.quantum,g);return n.push(L),o=L,!0}function s(a){l&&o?.is(c)&&a.is(c)&&o.quantum.isIdentical(a.quantum)?(n.pop(),i(o,a.amount)||(o=n.slice(-1)[0])):a.is(c)?i(a,0):(n.push(a),o=a)}let u={depth:r.depth?r.depth-1:null};for(let a of e.units())for(let f of this.traverseUnit(a,u))s(f);for(let a of n)yield a}*traverseGrouping(e,r){if(r.depth===0){yield e;return}let n={depth:r.depth?r.depth-1:null};yield new it(this.traverseAlg(e.alg,n))}*traverseMove(e,r){yield e}*traverseCommutator(e,r){if(r.depth===0){yield e;return}let n={depth:r.depth?r.depth-1:null};yield new Pe(this.traverseAlg(e.A,n),this.traverseAlg(e.B,n))}*traverseConjugate(e,r){if(r.depth===0){yield e;return}let n={depth:r.depth?r.depth-1:null};yield new Me(this.traverseAlg(e.A,n),this.traverseAlg(e.B,n))}*traversePause(e,r){yield e}*traverseNewline(e,r){yield e}*traverseLineComment(e,r){yield e}},wi=vi;Ho=new WeakSet,l1=function(e,r,n){let o=e.amount+r;if(n?.quantumMoveOrder){let l=n.quantumMoveOrder(e.quantum),i=Math.floor(l/2)+1-l;o=(o%l+l-i)%l+i}return o},ie(wi,Ho);Qa=new wi,ja=Qa.traverseAlg.bind(Qa)});function qa(t){if(!t)return[];if(Rt(t,k))return t.units();if(typeof t==\"string\")return yi(t).units();let e=t;if(typeof e[Symbol.iterator]==\"function\")return e;throw\"Invalid unit\"}function Zt(t){return Rt(t,k)?t:new k(t)}function i1(t,e){return t.is(Qe)||e.is(Qe)?\"\":t.is(pt)&&!e.is(Qe)?`\n`:\" \"}var et,Ar,k,Gt=U(()=>{Mt();xi();ct();Ui();Ei();Kn();Tt();Wn();bi();Ar=class extends Ce{constructor(e){super();ie(this,et,void 0);$(this,et,Array.from(qa(e)));for(let r of R(this,et))if(!_a(r))throw new Error(\"An alg can only contain units.\")}isIdentical(e){let r=e;if(!e.is(Ar))return!1;let n=Array.from(R(this,et)),o=Array.from(R(r,et));if(n.length!==o.length)return!1;for(let l=0;l<n.length;l++)if(!n[l].isIdentical(o[l]))return!1;return!0}invert(){return new Ar(za(Array.from(R(this,et)).map(e=>e.invert())))}*experimentalExpand(e=Q.Forwards,r){r??(r=1/0);for(let n of di(R(this,et),e))yield*n.experimentalExpand(e,r)}expand(e){return new Ar(this.experimentalExpand(Q.Forwards,e?.depth??1/0))}*experimentalLeafMoves(){for(let e of this.experimentalExpand())e.is(c)&&(yield e)}concat(e){return new Ar(Array.from(R(this,et)).concat(Array.from(qa(e))))}experimentalIsEmpty(){for(let e of R(this,et))return!1;return!0}static fromString(e){return yi(e)}*units(){for(let e of R(this,et))yield e}experimentalNumUnits(){return Array.from(R(this,et)).length}get type(){return Qo(\"deprecated: type\"),\"sequence\"}toString(){let e=\"\",r=null;for(let n of R(this,et))r&&(e+=i1(r,n)),e+=n.toString(),r=n;return e}simplify(e){return new Ar(ja(this,e??{}))}},k=Ar;et=new WeakMap});var s1,Va=U(()=>{Gt();Vo();On();_n();Tt();Qn();s1={Sune:new k([new c(\"R\",1),new c(\"U\",1),new c(\"R\",-1),new c(\"U\",1),new c(\"R\",1),new c(\"U\",-2),new c(\"R\",-1)]),AntiSune:new k([new c(\"R\",1),new c(\"U\",2),new c(\"R\",-1),new c(\"U\",-1),new c(\"R\",1),new c(\"U\",-1),new c(\"R\",-1)]),SuneCommutator:new k([new Pe(new k([new c(\"R\",1),new c(\"U\",1),new c(\"R\",-2)]),new k([new Me(new k([new c(\"R\",1)]),new k([new c(\"U\",1)]))]))]),Niklas:new k([new c(\"R\",1),new c(\"U\",-1),new c(\"L\",-1),new c(\"U\",1),new c(\"R\",-1),new c(\"U\",-1),new c(\"L\",1),new c(\"U\",1)]),EPerm:new k([new c(\"x\",-1),new Pe(new k([new Me(new k([new c(\"R\",1)]),new k([new c(\"U\",-1)]))]),new k([new c(\"D\",1)])),new Pe(new k([new Me(new k([new c(\"R\",1)]),new k([new c(\"U\",1)]))]),new k([new c(\"D\",1)])),new c(\"x\",1)]),FURURFCompact:new k([new Me(new k([new c(\"F\",1)]),new k([new Pe(new k([new c(\"U\",1)]),new k([new c(\"R\",1)]))]))]),APermCompact:new k([new Me(new k([new c(\"R\",2)]),new k([new Pe(new k([new c(\"F\",2)]),new k([new c(\"R\",-1),new c(\"B\",-1),new c(\"R\",1)]))]))]),FURURFMoves:new k([new c(\"F\",1),new c(\"U\",1),new c(\"R\",1),new c(\"U\",-1),new c(\"R\",-1),new c(\"F\",-1)]),TPerm:new k([new c(\"R\",1),new c(\"U\",1),new c(\"R\",-1),new c(\"U\",-1),new c(\"R\",-1),new c(\"F\",1),new c(\"R\",2),new c(\"U\",-1),new c(\"R\",-1),new c(\"U\",-1),new c(\"R\",1),new c(\"U\",1),new c(\"R\",-1),new c(\"F\",-1)]),HeadlightSwaps:new k([new Me(new k([new c(\"F\",1)]),new k([new it(new k([new Pe(new k([new c(\"R\",1)]),new k([new c(\"U\",1)]))]),3)]))]),TriplePause:new k([new je,new je,new je])}});var hR,Ha=U(()=>{Tt();hR={73:new c(\"R\"),75:new c(\"R'\"),87:new c(\"B\"),79:new c(\"B'\"),83:new c(\"D\"),76:new c(\"D'\"),68:new c(\"L\"),69:new c(\"L'\"),74:new c(\"U\"),70:new c(\"U'\"),72:new c(\"F\"),71:new c(\"F'\"),78:new c(\"x'\"),67:new c(\"l\"),82:new c(\"l'\"),85:new c(\"r\"),77:new c(\"r'\"),88:new c(\"d\"),188:new c(\"d'\"),84:new c(\"x\"),89:new c(\"x\"),66:new c(\"x'\"),186:new c(\"y\"),59:new c(\"y\"),65:new c(\"y'\"),80:new c(\"z\"),81:new c(\"z'\"),90:new c(\"M'\"),190:new c(\"M'\")}});var Ya=U(()=>{});var Za=U(()=>{Gt()});var Ae=U(()=>{Gt();Ai();Ei();Va();Ha();Vo();Tt();Ya();Za();xi();ct()});function jn(t,e,r){let n={};for(let o in t.orbits){let l=t.orbits[o],i=e[o],s=r[o];if(qn(l.numOrientations,s))n[o]=i;else if(qn(l.numOrientations,i))n[o]=s;else{let u=new Array(l.numPieces);if(l.numOrientations===1){for(let a=0;a<l.numPieces;a++)u[a]=i.permutation[s.permutation[a]];n[o]={permutation:u,orientation:i.orientation}}else{let a=new Array(l.numPieces);for(let f=0;f<l.numPieces;f++)a[f]=(i.orientation[s.permutation[f]]+s.orientation[f])%l.numOrientations,u[f]=i.permutation[s.permutation[f]];n[o]={permutation:u,orientation:a}}}}return n}function ki(t,e,r){let n={};for(let o in t.orbits){let l=t.orbits[o],i=e[o],s=r[o];if(qn(l.numOrientations,s))n[o]=i;else{let u=new Array(l.numPieces);if(l.numOrientations===1){for(let a=0;a<l.numPieces;a++)u[a]=i.pieces[s.permutation[a]];n[o]={pieces:u,orientation:i.orientation}}else{let a=new Array(l.numPieces);for(let f=0;f<l.numPieces;f++)a[f]=(i.orientation[s.permutation[f]]+s.orientation[f])%l.numOrientations,u[f]=i.pieces[s.permutation[f]];n[o]={pieces:u,orientation:a}}}}return n}var Yo=U(()=>{Vn()});var Be,Zo=U(()=>{Yo();Xo();Be=class{constructor(e,r){this.kpuzzle=e;this.stateData=r}static fromTransformation(e){let r=ki(e.kpuzzle.definition,e.kpuzzle.definition.startStateData,e.transformationData);return new Be(e.kpuzzle,r)}apply(e){return this.applyTransformation(this.kpuzzle.toTransformation(e))}applyTransformation(e){if(e.isIdentityTransformation())return new Be(this.kpuzzle,this.stateData);let r=ki(this.kpuzzle.definition,this.stateData,e.transformationData);return new Be(this.kpuzzle,r)}applyMove(e){return this.applyTransformation(this.kpuzzle.moveToTransformation(e))}applyAlg(e){return this.applyTransformation(this.kpuzzle.algToTransformation(e))}experimentalToTransformation(){if(!this.kpuzzle.canConvertStateToUniqueTransformation())return null;let e={};for(let[r,n]of Object.entries(this.stateData)){let o={permutation:n.pieces,orientation:n.orientation};e[r]=o}return new wt(this.kpuzzle,e)}}});var Jo,hr,wt,Xo=U(()=>{Vn();Yo();Zo();hr=class{constructor(e,r){this.kpuzzle=e;this.transformationData=r;ie(this,Jo,void 0)}invert(){return new hr(this.kpuzzle,zi(this.kpuzzle,this.transformationData))}isIdentityTransformation(){return R(this,Jo)??$(this,Jo,this.isIdentical(this.kpuzzle.identityTransformation()))}isIdentical(e){return Xa(this.kpuzzle,this.transformationData,e.transformationData)}apply(e){return this.applyTransformation(this.kpuzzle.toTransformation(e))}applyTransformation(e){if(this.kpuzzle!==e.kpuzzle)throw new Error(`Tried to apply a transformation for a KPuzzle (${e.kpuzzle.name()}) to a different KPuzzle (${this.kpuzzle.name()}).`);return this.isIdentityTransformation()?new hr(this.kpuzzle,e.transformationData):e.isIdentityTransformation()?new hr(this.kpuzzle,this.transformationData):new hr(this.kpuzzle,jn(this.kpuzzle.definition,this.transformationData,e.transformationData))}applyMove(e){return this.applyTransformation(this.kpuzzle.moveToTransformation(e))}applyAlg(e){return this.applyTransformation(this.kpuzzle.algToTransformation(e))}toKState(){return Be.fromTransformation(this)}repetitionOrder(){return Ja(this.kpuzzle.definition,this)}selfMultiply(e){return new hr(this.kpuzzle,Jt(this.kpuzzle,this.transformationData,e))}},wt=hr;Jo=new WeakMap});function qn(t,e){let{permutation:r}=e,n=r.length;for(let o=0;o<n;o++)if(r[o]!==o)return!1;if(t>1){let{orientation:o}=e;for(let l=0;l<n;l++)if(o[l]!==0)return!1}return!0}function a1(t,e,r,n={}){for(let o=0;o<t.numPieces;o++)if(!n?.ignoreOrientation&&e.orientation[o]!==r.orientation[o]||!n?.ignorePermutation&&e.permutation[o]!==r.permutation[o])return!1;return!0}function Xa(t,e,r){for(let[n,o]of Object.entries(t.definition.orbits))if(!a1(o,e[n],r[n]))return!1;return!0}function zi(t,e){let r={};for(let n in t.definition.orbits){let o=t.definition.orbits[n],l=e[n];if(qn(o.numOrientations,l))r[n]=l;else if(o.numOrientations===1){let i=new Array(o.numPieces);for(let s=0;s<o.numPieces;s++)i[l.permutation[s]]=s;r[n]={permutation:i,orientation:l.orientation}}else{let i=new Array(o.numPieces),s=new Array(o.numPieces);for(let u=0;u<o.numPieces;u++){let a=l.permutation[u];i[a]=u,s[a]=(o.numOrientations-l.orientation[u]+o.numOrientations)%o.numOrientations}r[n]={permutation:i,orientation:s}}}return r}function Jt(t,e,r){if(r===1)return e;if(r<0)return Jt(t,zi(t,e),-r);if(r===0){let{transformationData:l}=t.identityTransformation();return l}let n=e;r!==2&&(n=Jt(t,e,Math.floor(r/2)));let o=jn(t.definition,n,n);return r%2==0?o:jn(t.definition,e,o)}function Ci(t,e){return e?Ci(e,t%e):t}function Ja(t,e){let r=1;for(let n in t.orbits){let o=t.orbits[n],l=e.transformationData[n],i=new Array(o.numPieces);for(let s=0;s<o.numPieces;s++)if(!i[s]){let u=s,a=0,f=0;for(;i[u]=!0,a=a+l.orientation[u],f=f+1,u=l.permutation[u],u!==s;);a!==0&&(f=f*o.numOrientations/Ci(o.numOrientations,a)),r=r*f/Ci(r,f)}}return r}var $a,e0,t0,Vn=U(()=>{Ae();Yo();Xo();$a=class extends Hr{traverseAlg(e,r){let n=r.identityTransformation();for(let o of e.units())n=n.applyTransformation(this.traverseUnit(o,r));return n}traverseGrouping(e,r){let n=this.traverseAlg(e.alg,r);return new wt(r,Jt(r,n.transformationData,e.amount))}traverseMove(e,r){return r.moveToTransformation(e)}traverseCommutator(e,r){let n=this.traverseAlg(e.A,r),o=this.traverseAlg(e.B,r);return n.applyTransformation(o).applyTransformation(n.invert()).applyTransformation(o.invert())}traverseConjugate(e,r){let n=this.traverseAlg(e.A,r),o=this.traverseAlg(e.B,r);return n.applyTransformation(o).applyTransformation(n.invert())}traversePause(e,r){return r.identityTransformation()}traverseNewline(e,r){return r.identityTransformation()}traverseLineComment(e,r){return r.identityTransformation()}},e0=new $a,t0=e0.traverseAlg.bind(e0)});function u1(t){let e=n0.get(t);if(e)return e;let r=new Array(t),n=new Array(t);for(let l=0;l<t;l++)r[l]=l,n[l]=0;let o={permutation:r,orientation:n};return r0&&(Object.freeze(r),Object.freeze(n),Object.freeze(o)),n0.set(t,o),o}function o0(t){let e={};for(let[r,n]of Object.entries(t.orbits))e[r]=u1(n.numPieces);return r0&&Object.freeze(e),e}function l0(t,e){let r=e.quantum.toString(),n=t.definition.moves[r];if(n)return Jt(t,n,e.amount);let o=t.definition.moves[e.toString()];if(o)return o;let l=t.definition.moves[e.invert().toString()];if(l)return Jt(t,l,-1);throw new Error(`Invalid move for KPuzzle (${t.name()}): ${e}`)}var r0,n0,i0=U(()=>{Vn();r0=!1,n0=new Map});var $o,Zr,el,Ie,Pi=U(()=>{Ae();Vn();i0();Zo();Xo();Ie=class{constructor(e,r){this.definition=e;ie(this,$o,null);ie(this,Zr,new Map);ie(this,el,void 0);this.experimentalPGNotation=r?.experimentalPGNotation}name(){return this.definition.name}identityTransformation(){return new wt(this,R(this,$o)??$(this,$o,o0(this.definition)))}moveToTransformation(e){typeof e==\"string\"&&(e=new c(e));let r=e.toString(),n=R(this,Zr).get(r);if(n)return new wt(this,n);if(this.experimentalPGNotation){let l=this.experimentalPGNotation.lookupMove(e);if(!l)throw new Error(`could not map to internal move: ${e}`);return R(this,Zr).set(r,l),new wt(this,l)}let o=l0(this,e);return R(this,Zr).set(r,o),new wt(this,o)}algToTransformation(e){return typeof e==\"string\"&&(e=new k(e)),t0(e,this)}toTransformation(e){return typeof e==\"string\"?this.algToTransformation(e):e?.is?.(k)?this.algToTransformation(e):e?.is?.(c)?this.moveToTransformation(e):e}startState(){return new Be(this,this.definition.startStateData)}canConvertStateToUniqueTransformation(){return R(this,el)??$(this,el,(()=>{for(let[e,r]of Object.entries(this.definition.orbits)){let n=new Array(r.numPieces).fill(!1);for(let o of this.definition.startStateData[e].pieces)n[o]=!0;for(let o of n)if(!o)return!1}return!0})())}get state(){throw new Error(\"KPuzzle is now a different (stateless) class.\")}reset(){throw new Error(\"KPuzzle is now a different (stateless) class.\")}applyMove(e){throw new Error(\"KPuzzle is now a different class. Try `.moveToTransformation()` to get the transformation for a move.\")}applyAlg(e){throw new Error(\"KPuzzle is now a different class. Try `.algToTransformation()` to get the transformation for an alg.\")}};$o=new WeakMap,Zr=new WeakMap,el=new WeakMap});var s0=U(()=>{});var pe,a0=U(()=>{pe={name:\"3x3x3\",orbits:{EDGES:{numPieces:12,numOrientations:2},CORNERS:{numPieces:8,numOrientations:3},CENTERS:{numPieces:6,numOrientations:4}},startStateData:{EDGES:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{pieces:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{pieces:[0,1,2,3,4,5],orientation:[0,0,0,0,0,0]}},moves:{U:{EDGES:{permutation:[1,2,3,0,4,5,6,7,8,9,10,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[1,2,3,0,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[1,0,0,0,0,0]}},y:{EDGES:{permutation:[1,2,3,0,5,6,7,4,10,8,11,9],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[1,2,3,0,7,4,5,6],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,2,3,4,1,5],orientation:[1,0,0,0,0,3]}},x:{EDGES:{permutation:[4,8,0,9,6,10,2,11,5,7,1,3],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[4,0,3,5,7,6,2,1],orientation:[2,1,2,1,1,2,1,2]},CENTERS:{permutation:[2,1,5,3,0,4],orientation:[0,3,0,1,2,2]}},L:{EDGES:{permutation:[0,1,2,11,4,5,6,9,8,3,10,7],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[0,1,6,2,4,3,5,7],orientation:[0,0,2,1,0,2,1,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,1,0,0,0,0]}},F:{EDGES:{permutation:[9,1,2,3,8,5,6,7,0,4,10,11],orientation:[1,0,0,0,1,0,0,0,1,1,0,0]},CORNERS:{permutation:[3,1,2,5,0,4,6,7],orientation:[1,0,0,2,2,1,0,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,1,0,0,0]}},R:{EDGES:{permutation:[0,8,2,3,4,10,6,7,5,9,1,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[4,0,2,3,7,5,6,1],orientation:[2,1,0,0,1,0,0,2]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,0,1,0,0]}},B:{EDGES:{permutation:[0,1,10,3,4,5,11,7,8,9,6,2],orientation:[0,0,1,0,0,0,1,0,0,0,1,1]},CORNERS:{permutation:[0,7,1,3,4,5,2,6],orientation:[0,2,1,0,0,0,2,1]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,0,0,1,0]}},D:{EDGES:{permutation:[0,1,2,3,7,4,5,6,8,9,10,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[0,1,2,3,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,0,0,0,1]}},z:{EDGES:{permutation:[9,3,11,7,8,1,10,5,0,4,2,6],orientation:[1,1,1,1,1,1,1,1,1,1,1,1]},CORNERS:{permutation:[3,2,6,5,0,4,7,1],orientation:[1,2,1,2,2,1,2,1]},CENTERS:{permutation:[1,5,2,0,4,3],orientation:[1,1,1,1,3,1]}},M:{EDGES:{permutation:[2,1,6,3,0,5,4,7,8,9,10,11],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[4,1,0,3,5,2],orientation:[2,0,0,0,2,0]}},E:{EDGES:{permutation:[0,1,2,3,4,5,6,7,9,11,8,10],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,4,1,2,3,5],orientation:[0,0,0,0,0,0]}},S:{EDGES:{permutation:[0,3,2,7,4,1,6,5,8,9,10,11],orientation:[0,1,0,1,0,1,0,1,0,0,0,0]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[1,5,2,0,4,3],orientation:[1,1,0,1,0,1]}},u:{EDGES:{permutation:[1,2,3,0,4,5,6,7,10,8,11,9],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[1,2,3,0,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,2,3,4,1,5],orientation:[1,0,0,0,0,0]}},l:{EDGES:{permutation:[2,1,6,11,0,5,4,9,8,3,10,7],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[0,1,6,2,4,3,5,7],orientation:[0,0,2,1,0,2,1,0]},CENTERS:{permutation:[4,1,0,3,5,2],orientation:[2,1,0,0,2,0]}},f:{EDGES:{permutation:[9,3,2,7,8,1,6,5,0,4,10,11],orientation:[1,1,0,1,1,1,0,1,1,1,0,0]},CORNERS:{permutation:[3,1,2,5,0,4,6,7],orientation:[1,0,0,2,2,1,0,0]},CENTERS:{permutation:[1,5,2,0,4,3],orientation:[1,1,1,1,0,1]}},r:{EDGES:{permutation:[4,8,0,3,6,10,2,7,5,9,1,11],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[4,0,2,3,7,5,6,1],orientation:[2,1,0,0,1,0,0,2]},CENTERS:{permutation:[2,1,5,3,0,4],orientation:[0,0,0,1,2,2]}},b:{EDGES:{permutation:[0,5,10,1,4,7,11,3,8,9,6,2],orientation:[0,1,1,1,0,1,1,1,0,0,1,1]},CORNERS:{permutation:[0,7,1,3,4,5,2,6],orientation:[0,2,1,0,0,0,2,1]},CENTERS:{permutation:[3,0,2,5,4,1],orientation:[3,3,0,3,1,3]}},d:{EDGES:{permutation:[0,1,2,3,7,4,5,6,9,11,8,10],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[0,1,2,3,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,4,1,2,3,5],orientation:[0,0,0,0,0,1]}}}};pe.moves.Uw=pe.moves.u;pe.moves.Lw=pe.moves.l;pe.moves.Fw=pe.moves.f;pe.moves.Rw=pe.moves.r;pe.moves.Bw=pe.moves.b;pe.moves.Dw=pe.moves.d;pe.moves.Rv=pe.moves.x;pe.moves.Uv=pe.moves.y;pe.moves.Fv=pe.moves.z;pe.moves.Lv={EDGES:{permutation:[2,10,6,11,0,8,4,9,1,3,5,7],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[1,7,6,2,0,3,5,4],orientation:[2,1,2,1,1,2,1,2]},CENTERS:{permutation:[4,1,0,3,5,2],orientation:[2,1,0,3,2,0]}};pe.moves.Dv={EDGES:{permutation:[3,0,1,2,7,4,5,6,9,11,8,10],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[3,0,1,2,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,4,1,2,3,5],orientation:[3,0,0,0,0,1]}};pe.moves.Bv={EDGES:{permutation:[8,5,10,1,9,7,11,3,4,0,6,2],orientation:[1,1,1,1,1,1,1,1,1,1,1,1]},CORNERS:{permutation:[4,7,1,0,5,3,2,6],orientation:[1,2,1,2,2,1,2,1]},CENTERS:{permutation:[3,0,2,5,4,1],orientation:[3,3,3,3,1,3]}}});var Mi,Ve=U(()=>{Pi();s0();Zo();Pi();a0();Mi=new Ie(pe)});var u0=U(()=>{Ve()});function d1(t){switch(t){case S.Regular:return f1;case S.Dim:return p1;case S.Ignored:return g1;case S.OrientationStickers:return L1;case S.Invisible:return B1;case S.IgnoreNonPrimary:return m1;case S.PermuteNonPrimary:return c1;case S.Ignoriented:return R1;case S.OrientationWithoutPermutation:return D1}}var S,Xr,vt,Ne,Jr,tl,yr,f1,g1,L1,B1,m1,c1,p1,R1,D1,Hn,Yn,Zn=U(()=>{(function(a){a.Regular=\"Regular\",a.Dim=\"Dim\",a.Ignored=\"Ignored\",a.OrientationStickers=\"OrientationStickers\",a.Invisible=\"Invisible\",a.Ignoriented=\"Ignoriented\",a.IgnoreNonPrimary=\"IgnoreNonPrimary\",a.PermuteNonPrimary=\"PermuteNonPrimary\",a.OrientationWithoutPermutation=\"OrientationWithoutPermutation\"})(S||(S={}));Xr=class{constructor(e,r){this.stickerings=new Map;for(let[n,o]of Object.entries(e.definition.orbits))this.stickerings.set(n,new Array(o.numPieces).fill(r))}},vt=\"regular\",Ne=\"ignored\",Jr=\"oriented\",tl=\"invisible\",yr=\"dim\",f1={facelets:[vt,vt,vt,vt,vt]},g1={facelets:[Ne,Ne,Ne,Ne,Ne]},L1={facelets:[Jr,Jr,Jr,Jr,Jr]},B1={facelets:[tl,tl,tl,tl]},m1={facelets:[vt,Ne,Ne,Ne,Ne]},c1={facelets:[yr,vt,vt,vt,vt]},p1={facelets:[yr,yr,yr,yr,yr]},R1={facelets:[yr,Ne,Ne,Ne,Ne]},D1={facelets:[Jr,Ne,Ne,Ne,Ne]};Hn=class extends Xr{constructor(e){super(e,S.Regular)}set(e,r){for(let[n,o]of this.stickerings.entries())for(let l=0;l<o.length;l++)e.stickerings.get(n)[l]&&(o[l]=r);return this}toAppearance(){let e={orbits:{}};for(let[r,n]of this.stickerings.entries()){let o=[],l={pieces:o};e.orbits[r]=l;for(let i of n)o.push(d1(i))}return e}},Yn=class{constructor(e){this.kpuzzle=e}and(e){let r=new Xr(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits)){e:for(let l=0;l<o.numPieces;l++){r.stickerings.get(n)[l]=!0;for(let i of e)if(!i.stickerings.get(n)[l]){r.stickerings.get(n)[l]=!1;continue e}}}return r}or(e){let r=new Xr(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits)){e:for(let l=0;l<o.numPieces;l++){r.stickerings.get(n)[l]=!1;for(let i of e)if(i.stickerings.get(n)[l]){r.stickerings.get(n)[l]=!0;continue e}}}return r}not(e){let r=new Xr(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits))for(let l=0;l<o.numPieces;l++)r.stickerings.get(n)[l]=!e.stickerings.get(n)[l];return r}all(){return this.and(this.moves([]))}move(e){let r=this.kpuzzle.moveToTransformation(e),n=new Xr(this.kpuzzle,!1);for(let[o,l]of Object.entries(this.kpuzzle.definition.orbits))for(let i=0;i<l.numPieces;i++)(r.transformationData[o].permutation[i]!==i||r.transformationData[o].orientation[i]!==0)&&(n.stickerings.get(o)[i]=!0);return n}moves(e){return e.map(r=>this.move(r))}}});function F1(t){(async()=>{f0=t;let e=Array.from(document.body.querySelectorAll(\"twisty-player\"));console.log(`Setting the custom stickering for ${e.length} players!`);let r=[];for(let n of e)r.push((async()=>{let o=await n.experimentalModel.stickeringProp.get();n.experimentalStickering=o===\"experimental-global-custom-1\"?\"experimental-global-custom-2\":\"experimental-global-custom-1\"})());await Promise.all(r),console.log(\"Success!\")})()}function g0(t,e){f0(t,e)}var f0,L0=U(()=>{Zn();f0=()=>{};globalThis.location&&new URL(location.href).searchParams.get(\"global-custom-stickerer\")===\"true\"&&(window.setGlobalCustomStickerer=F1,window.PieceStickering=S,console.log(\"Global custom stickerer enabled! (using: global-custom-stickerer=true)\"),console.log(\"Look here for inspiration:\",\"https://github.com/cubing/cubing.js/blob/81b5cab3e27d8defb39dd1e0a10bc9e8ba894d26/src/cubing/puzzles/stickerings/cube-stickerings.ts#L67\"))});async function Dt(t,e){let r=await t.kpuzzle(),n=new Hn(r),o=new Yn(r),l=()=>o.move(\"U\"),i=()=>o.or(o.moves([\"U\",\"D\"])),s=()=>o.not(i()),u=()=>o.or(o.moves([\"L\",\"R\"])),a=()=>o.not(u()),f=()=>o.or(o.moves([\"F\",\"B\"])),g=()=>o.not(f()),L=()=>o.not(l()),B=()=>o.and([l(),a(),g()]),p=()=>o.and([o.and(o.moves([\"F\",\"R\"])),o.not(i())]),m=()=>o.and(o.moves([\"D\",\"R\",\"F\"])),F=()=>o.or([m(),p()]),A=()=>o.or([o.and([a(),s()]),o.and([a(),g()]),o.and([s(),g()])]),b=()=>o.or([o.and([a(),i(),f()]),o.and([s(),u(),f()]),o.and([g(),i(),u()])]),h=()=>o.not(o.or([A(),b()])),C=()=>o.or([a(),o.and([l(),b()])]);function E(){n.set(L(),S.Dim)}function j(){n.set(l(),S.PermuteNonPrimary),n.set(B(),S.Dim)}function te(){n.set(l(),S.IgnoreNonPrimary),n.set(B(),S.Regular)}function I(){n.set(l(),S.Ignoriented),n.set(B(),S.Dim)}switch(e){case\"full\":break;case\"PLL\":E(),j();break;case\"CLS\":E(),n.set(o.and(o.moves([\"D\",\"R\",\"F\"])),S.Regular),n.set(l(),S.Ignoriented),n.set(o.and([l(),h()]),S.IgnoreNonPrimary);break;case\"OLL\":E(),te();break;case\"COLL\":E(),j(),n.set(o.and([l(),h()]),S.Regular);break;case\"OCLL\":E(),I(),n.set(o.and([l(),h()]),S.IgnoreNonPrimary);break;case\"CLL\":E(),n.set(o.not(o.and([h(),l()])),S.Dim);break;case\"ELL\":E(),n.set(l(),S.Dim),n.set(o.and([l(),b()]),S.Regular);break;case\"ELS\":E(),te(),n.set(o.and([l(),h()]),S.Ignored),n.set(p(),S.Regular),n.set(m(),S.Ignored);break;case\"LL\":E();break;case\"F2L\":n.set(l(),S.Ignored);break;case\"ZBLL\":E(),n.set(l(),S.PermuteNonPrimary),n.set(B(),S.Dim),n.set(o.and([l(),h()]),S.Regular);break;case\"ZBLS\":E(),n.set(F(),S.Regular),te(),n.set(o.and([l(),h()]),S.Ignored);break;case\"WVLS\":case\"VLS\":E(),n.set(F(),S.Regular),te();break;case\"LS\":E(),n.set(F(),S.Regular),n.set(l(),S.Ignored),n.set(B(),S.Dim);break;case\"EO\":n.set(h(),S.Ignored),n.set(b(),S.OrientationWithoutPermutation);break;case\"EOline\":n.set(h(),S.Ignored),n.set(b(),S.OrientationWithoutPermutation),n.set(o.and(o.moves([\"D\",\"M\"])),S.Regular);break;case\"EOcross\":n.set(b(),S.OrientationWithoutPermutation),n.set(o.move(\"D\"),S.Regular),n.set(h(),S.Ignored);break;case\"CMLL\":n.set(L(),S.Dim),n.set(C(),S.Ignored),n.set(o.and([l(),h()]),S.Regular);break;case\"L6E\":n.set(o.not(C()),S.Dim);break;case\"L6EO\":n.set(o.not(C()),S.Dim),n.set(C(),S.OrientationWithoutPermutation),n.set(o.and([A(),i()]),S.OrientationStickers);break;case\"Daisy\":n.set(o.all(),S.Ignored),n.set(A(),S.Dim),n.set(o.and([o.move(\"D\"),A()]),S.Regular),n.set(o.and([o.move(\"U\"),b()]),S.IgnoreNonPrimary);break;case\"Cross\":n.set(o.all(),S.Ignored),n.set(A(),S.Dim),n.set(o.and([o.move(\"D\"),A()]),S.Regular),n.set(o.and([o.move(\"D\"),b()]),S.Regular);break;case\"2x2x2\":n.set(o.or(o.moves([\"U\",\"F\",\"R\"])),S.Ignored),n.set(o.and([o.or(o.moves([\"U\",\"F\",\"R\"])),A()]),S.Dim);break;case\"2x2x3\":n.set(o.all(),S.Dim),n.set(o.or(o.moves([\"U\",\"F\",\"R\"])),S.Ignored),n.set(o.and([o.or(o.moves([\"U\",\"F\",\"R\"])),A()]),S.Dim),n.set(o.and([o.move(\"F\"),o.not(o.or(o.moves([\"U\",\"R\"])))]),S.Regular);break;case\"Void Cube\":n.set(A(),S.Invisible);break;case\"picture\":case\"invisible\":n.set(o.all(),S.Invisible);break;case\"centers-only\":n.set(o.not(A()),S.Ignored);break;case\"experimental-global-custom-1\":case\"experimental-global-custom-2\":g0(n,o);break;default:console.warn(`Unsupported stickering for ${t.id}: ${e}. Setting all pieces to dim.`),n.set(o.and(o.moves([])),S.Dim)}return n.toAppearance()}async function $r(){return[\"full\",\"PLL\",\"CLS\",\"OLL\",\"COLL\",\"OCLL\",\"ELL\",\"ELS\",\"LL\",\"F2L\",\"ZBLL\",\"ZBLS\",\"WVLS\",\"VLS\",\"LS\",\"EO\",\"EOline\",\"EOcross\",\"CMLL\",\"L6E\",\"L6EO\",\"Daisy\",\"Cross\",\"2x2x2\",\"2x2x3\",\"Void Cube\",\"picture\",\"invisible\",\"centers-only\",\"experimental-global-custom-1\",\"experimental-global-custom-2\"]}var en=U(()=>{Zn();L0()});function $t(t){let e=null;return()=>e??(e=t())}var Xn=U(()=>{});var Jn,B0=U(()=>{Jn=class{constructor(e,r){this.facenames=e;this.prefixFree=!0;this.gripnames=[];r&&(this.gripnames=r);for(let n=0;this.prefixFree&&n<e.length;n++)for(let o=0;this.prefixFree&&o<e.length;o++)n!==o&&e[n].startsWith(e[o])&&(this.prefixFree=!1)}setGripNames(e){this.gripnames=e}splitByFaceNames(e){let r=[],n=0;for(;n<e.length;){n>0&&n<e.length&&e[n]===\"_\"&&n++;let o=-1;for(let l=0;l<this.facenames.length;l++)e.substr(n).startsWith(this.facenames[l])&&(o<0||this.facenames[l].length>this.facenames[o].length)&&(o=l);if(o>=0)r.push(o),n+=this.facenames[o].length;else throw new Error(\"Could not split \"+e+\" into face names.\")}return r}joinByFaceIndices(e){let r=\"\",n=[];for(let o=0;o<e.length;o++)n.push(r),n.push(this.facenames[e[o]]),this.prefixFree||(r=\"_\");return n.join(\"\")}spinmatch(e,r){if(e===r)return!0;try{let n=this.splitByFaceNames(e),o=this.splitByFaceNames(r);if(n.length!==o.length&&n.length<3)return!1;for(let l=0;l<n.length;l++){for(let s=0;s<l;s++)if(n[l]===n[s])return!1;let i=!1;for(let s=0;s<o.length;s++)if(n[l]===o[s]){i=!0;break}if(!i)return!1}return!0}catch(n){return!1}}unswizzle(e){(e.endsWith(\"v\")||e.endsWith(\"w\"))&&e[0]<=\"Z\"&&(e=e.slice(0,e.length-1));let r=e.toUpperCase();for(let n=0;n<this.gripnames.length;n++){let o=this.gripnames[n];if(this.spinmatch(r,o))return o}return e}}});var tn,m0=U(()=>{tn=class{notationToInternal(e){return e}notationToExternal(e){return e}}});var rl,c0=U(()=>{Ae();rl=class{constructor(e,r){this.child=e;this.sw=r}notationToInternal(e){return e.family===\"T\"&&e.innerLayer===void 0&&e.outerLayer===void 0?new c(new G(\"FLRv\",e.innerLayer,e.outerLayer),e.amount):this.child.notationToInternal(e)}notationToExternal(e){let r=e.family;return r.length>0&&r[r.length-1]===\"v\"&&(r=r.substring(0,r.length-1)),this.sw.spinmatch(r,\"FLUR\")?new c(new G(\"T\",e.innerLayer,e.outerLayer),e.amount):this.child.notationToExternal(e)}}});var $n,p0=U(()=>{Ae();$n=class{constructor(e,r){this.internalNames=e;this.externalNames=r}convertString(e,r,n){let o=\"\";(e.endsWith(\"v\")||e.endsWith(\"v\"))&&e<=\"_\"&&(o=e.slice(e.length-1),e=e.slice(0,e.length-1));let l=e.toUpperCase(),i=!1;return e!==l&&(i=!0,e=l),e=n.joinByFaceIndices(r.splitByFaceNames(e)),i&&(e=e.toLowerCase()),e+o}convert(e,r,n){let o=e.family,l=this.convertString(o,r,n);return o===l?e:new c(new G(l,e.innerLayer,e.outerLayer),e.amount)}notationToInternal(e){return this.convert(e,this.externalNames,this.internalNames)}notationToExternal(e){return this.convert(e,this.internalNames,this.externalNames)}}});var nl,R0=U(()=>{Ae();nl=class{constructor(e){this.child=e}notationToInternal(e){if(e.innerLayer===void 0&&e.outerLayer===void 0){if(Math.abs(e.amount)===1){if(e.family===\"R++\")return new c(new G(\"L\",3,2),-2*e.amount);if(e.family===\"R--\")return new c(new G(\"L\",3,2),2*e.amount);if(e.family===\"D++\")return new c(new G(\"U\",3,2),-2*e.amount);if(e.family===\"D--\")return new c(new G(\"U\",3,2),2*e.amount);if(e.family===\"R_PLUSPLUS_\")return new c(new G(\"L\",3,2),-2*e.amount);if(e.family===\"D_PLUSPLUS_\")return new c(new G(\"U\",3,2),-2*e.amount)}if(e.family===\"y\")return new c(\"Uv\",e.amount)}return this.child.notationToInternal(e)}notationToExternal(e){return e.family===\"Uv\"?new c(new G(\"y\",e.innerLayer,e.outerLayer),e.amount):e.family===\"Dv\"?new c(\"y\",-e.amount):this.child.notationToExternal(e)}}});var ol,D0=U(()=>{Ae();ol=class{constructor(e){this.slices=e}notationToInternal(e){let r=e.family;return!e.innerLayer&&!e.outerLayer&&(r===\"x\"?e=new c(\"Rv\",e.amount):r===\"y\"?e=new c(\"Uv\",e.amount):r===\"z\"&&(e=new c(\"Fv\",e.amount)),(this.slices&1)==1&&(r===\"E\"?e=new c(new G(\"D\",(this.slices+1)/2),e.amount):r===\"M\"?e=new c(new G(\"L\",(this.slices+1)/2),e.amount):r===\"S\"&&(e=new c(new G(\"F\",(this.slices+1)/2),e.amount))),this.slices>2&&(r===\"e\"?e=new c(new G(\"D\",this.slices-1,2),e.amount):r===\"m\"?e=new c(new G(\"L\",this.slices-1,2),e.amount):r===\"s\"&&(e=new c(new G(\"F\",this.slices-1,2),e.amount)))),e}notationToExternal(e){let r=e.family;if(!e.innerLayer&&!e.outerLayer){if(r===\"Rv\")return new c(\"x\",e.amount);if(r===\"Uv\")return new c(\"y\",e.amount);if(r===\"Fv\")return new c(\"z\",e.amount);if(r===\"Lv\")return new c(\"x\",-e.amount);if(r===\"Dv\")return new c(\"y\",-e.amount);if(r===\"Bv\")return new c(\"z\",-e.amount)}return e}}});var A1,h1,d0,F0,A0,eo,ll,h0=U(()=>{Ae();A1={U:\"frl\",L:\"fld\",R:\"fdr\",B:\"dlr\",u:\"FRL\",l:\"FLD\",r:\"FDR\",b:\"DLR\",Uv:\"FRLv\",Lv:\"FLDv\",Rv:\"FDRv\",Bv:\"DLRv\",D:\"D\",F:\"F\",BL:\"L\",BR:\"R\"},h1={U:\"FRL\",L:\"FLD\",R:\"FDR\",B:\"DLR\",u:\"frl\",l:\"fld\",r:\"fdr\",b:\"dlr\",Uv:\"FRLv\",Lv:\"FLDv\",Rv:\"FDRv\",Bv:\"DLRv\",D:\"D\",F:\"F\",BL:\"L\",BR:\"R\",d:\"d\",f:\"f\",bl:\"l\",br:\"r\"},d0={U:\"FRL\",L:\"FLD\",R:\"FDR\",B:\"DLR\"},F0=new G(\"y\"),A0=new G(\"Dv\"),eo=class{constructor(e){this.child=e;this.wcaHack=!1;this.map=A1}notationToInternal(e){if(this.wcaHack&&e.innerLayer===2&&e.outerLayer===null){let n=d0[e.family];if(n)return new c(new G(n,e.innerLayer,e.outerLayer),e.amount)}let r=this.map[e.family];return r?new c(new G(r,e.innerLayer,e.outerLayer),e.amount):F0.isIdentical(e.quantum)?new c(A0,-e.amount):null}notationToExternal(e){if(this.wcaHack&&e.innerLayer===2&&e.outerLayer===null){for(let[r,n]of Object.entries(d0))if(this.child.spinmatch(e.family,n))return new c(new G(r,e.innerLayer,e.outerLayer),e.amount)}for(let[r,n]of Object.entries(this.map))if(this.child.spinmatch(e.family,n))return new c(new G(r,e.innerLayer,e.outerLayer),e.amount);return A0.isIdentical(e.quantum)?new c(F0,-e.amount):null}},ll=class extends eo{constructor(e){super(e);this.map=h1}}});var y0,U0,b0,S0,x0,w0,v0,il,E0=U(()=>{Ae();y0={U:\"UBL\",UL:\"ULF\",F:\"UFR\",UR:\"URB\",B:\"DBL\",D:\"DFR\",L:\"DLF\",R:\"DRB\",Uv:\"UBLv\",ULv:\"ULFv\",Fv:\"UFRv\",URv:\"URBv\",Bv:\"DBLv\",Dv:\"DFRv\",Lv:\"DLFv\",Rv:\"DRBv\"},U0=new G(\"x\"),b0=new G(\"Rv\"),S0=new G(\"y\"),x0=new G(\"Uv\"),w0=new G(\"z\"),v0=new G(\"Fv\"),il=class{constructor(e){this.child=e}notationToInternal(e){if(e.innerLayer||e.outerLayer)return null;let r=y0[e.family];return r?new c(new G(r,e.outerLayer,e.innerLayer),e.amount):U0.isIdentical(e.quantum)?new c(b0,e.amount):S0.isIdentical(e.quantum)?new c(x0,e.amount):w0.isIdentical(e.quantum)?new c(v0,e.amount):null}notationToExternal(e){for(let[r,n]of Object.entries(y0))if(this.child.spinmatch(e.family,n))return new c(new G(r,e.innerLayer,e.outerLayer),e.amount);return b0.isIdentical(e.quantum)?new c(U0,e.amount):x0.isIdentical(e.quantum)?new c(S0,e.amount):v0.isIdentical(e.quantum)?new c(w0,e.amount):null}}});var Gi=U(()=>{m0();c0();p0();R0();D0();h0();E0()});function k0(t){let e=0,r={};for(;e<t.length&&t[e][0]===\"-\";){let o=t[e++];if(o===\"--rotations\")r.addRotations=!0;else if(o===\"--allmoves\")r.allMoves=!0;else if(o===\"--outerblockmoves\")r.outerBlockMoves=!0;else if(o===\"--vertexmoves\")r.vertexMoves=!0;else if(o===\"--nocorners\")r.includeCornerOrbits=!1;else if(o===\"--noedges\")r.includeEdgeOrbits=!1;else if(o===\"--noorientation\")r.fixedOrientation=!0;else if(o===\"--nocenters\")r.includeCenterOrbits=!1;else if(o===\"--omit\")r.excludeOrbits=t[e].split(\",\"),e++;else if(o===\"--moves\")r.moveList=t[e].split(\",\"),e++;else if(o===\"--optimize\")r.optimizeOrbits=!0;else if(o===\"--scramble\")r.scrambleAmount=100;else if(o===\"--fixcorner\")r.fixedPieceType=\"v\";else if(o===\"--fixedge\")r.fixedPieceType=\"e\";else if(o===\"--fixcenter\")r.fixedPieceType=\"f\";else if(o===\"--orientcenters\")r.orientCenters=!0;else if(o===\"--puzzleorientation\")r.puzzleOrientation=JSON.parse(t[e]),e++;else throw new Error(\"Bad option: \"+o)}return{puzzleDescription:to(t.slice(e).join(\" \")),options:r}}var Ti,Ii=U(()=>{sl();Ti=class{constructor(e={}){this.verbosity=0;this.allMoves=!1;this.vertexMoves=!1;this.addRotations=!1;this.moveList=null;this.fixedOrientation=!1;this.fixedPieceType=null;this.orientCenters=!1;this.includeCornerOrbits=!0;this.includeCenterOrbits=!0;this.includeEdgeOrbits=!0;this.excludeOrbits=[];this.optimizeOrbits=!1;this.grayCorners=!1;this.grayCenters=!1;this.grayEdges=!1;this.puzzleOrientation=null;this.puzzleOrientations=null;this.scrambleAmount=0;Object.assign(this,e)}}});function er(t){if(!Ni[t]){let e=Array(t);for(let r=0;r<t;r++)e[r]=0;Ni[t]=e}return Ni[t]}function Et(t){if(!Oi[t]){let e=Array(t);for(let r=0;r<t;r++)e[r]=r;Oi[t]=e}return Oi[t]}function z0(t){return new ft(Et(t))}function C0(t){let e=1;for(;t>1;)e*=t,t--;return e}function y1(t,e){if(t>e){let r=t;t=e,e=r}for(;t>0;){let r=e%t;e=t,t=r}return e}function _i(t,e){return t/y1(t,e)*e}var Ni,Oi,ft,al=U(()=>{Ni=[],Oi=[];ft=class{constructor(e){this.n=e.length,this.p=e}toString(){return\"Perm[\"+this.p.join(\" \")+\"]\"}mul(e){let r=Array(this.n);for(let n=0;n<this.n;n++)r[n]=e.p[this.p[n]];return new ft(r)}rmul(e){let r=Array(this.n);for(let n=0;n<this.n;n++)r[n]=this.p[e.p[n]];return new ft(r)}inv(){let e=Array(this.n);for(let r=0;r<this.n;r++)e[this.p[r]]=r;return new ft(e)}compareTo(e){for(let r=0;r<this.n;r++)if(this.p[r]!==e.p[r])return this.p[r]-e.p[r];return 0}toGap(){let e=new Array,r=new Array(this.n);for(let n=0;n<this.p.length;n++){if(r[n]||this.p[n]===n)continue;let o=new Array;for(let l=n;!r[l];l=this.p[l])o.push(1+l),r[l]=!0;e.push(\"(\"+o.join(\",\")+\")\")}return e.join(\"\")}order(){let e=1,r=new Array(this.n);for(let n=0;n<this.p.length;n++){if(r[n]||this.p[n]===n)continue;let o=0;for(let l=n;!r[l];l=this.p[l])o++,r[l]=!0;e=_i(e,o)}return e}}});function Ki(t,e){let r=c.fromString(e),n=t.notationToExternal(r);return n===null||r===n?e:n.toString()}function P0(t,e){let r=t.moveops.length;if(r>30)throw new Error(\"Canon info too big for bitmask\");let n=[],o=[];for(let i=0;i<r;i++){let s=t.moveops[i];n.push(s.order());let u=0;for(let a=0;a<r;a++){if(a===i)continue;let f=t.moveops[a];s.mul(f).equal(f.mul(s))&&(u|=1<<a)}o.push(u)}let l={};l[0]=1;for(let i=0;i<100;i++){let s=0,u={},a=0;for(let f in l){let g=+f,L=l[g];s+=L,a++;for(let B=0;B<n.length;B++)if((g>>B&1)==0&&(g&o[B]&(1<<B)-1)==0){let p=g&o[B]|1<<B;u[p]===void 0&&(u[p]=0),u[p]+=(n[B]-1)*L}}e(`${i}: canonseq ${s} states ${a}`),l=u}}var ro,U1,rn,dt,Nt,Wi,tr,nn,Qi,M0=U(()=>{Ae();Gi();al();ro=class{constructor(e,r){this.size=e;this.mod=r}reassemblySize(){return C0(this.size)*Math.pow(this.mod,this.size)}},U1=0;rn=class{constructor(e,r,n,o,l){this.orbitnames=e;this.orbitdefs=r;this.solved=n;this.movenames=o;this.moveops=l}transformToKTransformationData(e){let r={};for(let n=0;n<this.orbitnames.length;n++)r[this.orbitnames[n]]=e.orbits[n].toKPuzzle();return r}static transformToKTransformationData(e,r){let n={};for(let o=0;o<e.length;o++)n[e[o]]=r.orbits[o].toKPuzzle();return n}toKsolve(e,r=new tn){let n=[];n.push(\"Name \"+e),n.push(\"\");for(let o=0;o<this.orbitnames.length;o++)n.push(`Set ${this.orbitnames[o]} ${this.orbitdefs[o].size} ${this.orbitdefs[o].mod}`);n.push(\"\"),n.push(\"Solved\");for(let o=0;o<this.orbitnames.length;o++)this.solved.orbits[o].appendDefinition(n,this.orbitnames[o],!1,!1);n.push(\"End\");for(let o=0;o<this.movenames.length;o++){n.push(\"\");let l=Ki(r,this.movenames[o]),i=!1;l[l.length-1]===\"'\"&&(i=!0,l=l.substring(0,l.length-1)),n.push(\"Move \"+l);for(let s=0;s<this.orbitnames.length;s++)i?this.moveops[o].orbits[s].inv().appendDefinition(n,this.orbitnames[s],!0):this.moveops[o].orbits[s].appendDefinition(n,this.orbitnames[s],!0);n.push(\"End\")}return n}toKPuzzleDefinition(e){let r={},n={};for(let l=0;l<this.orbitnames.length;l++){r[this.orbitnames[l]]={numPieces:this.orbitdefs[l].size,numOrientations:this.orbitdefs[l].mod};let i=this.solved.orbits[l].toKPuzzle();n[this.orbitnames[l]]={pieces:i.permutation,orientation:i.orientation}}let o={};if(e)for(let l=0;l<this.movenames.length;l++)o[this.movenames[l]]=this.transformToKTransformationData(this.moveops[l]);return{name:`PG3D #${++U1}`,orbits:r,startStateData:n,moves:o}}optimize(){let e=[],r=[],n=[],o=[];for(let l=0;l<this.moveops.length;l++)o.push([]);for(let l=0;l<this.orbitdefs.length;l++){let i=this.orbitdefs[l].mod,s=this.orbitdefs[l].size,u=new Qi(s),a=new Array(this.orbitdefs[l].size);for(let B=0;B<s;B++)a[B]=!1;for(let B=0;B<this.moveops.length;B++)for(let p=0;p<s;p++)(this.moveops[B].orbits[l].perm[p]!==p||this.moveops[B].orbits[l].ori[p]!==0)&&(a[p]=!0,u.union(p,this.moveops[B].orbits[l].perm[p]));let f=!0;if(i>1){f=!1;let B=new Qi(this.orbitdefs[l].size*i);for(let p=0;p<this.moveops.length;p++)for(let m=0;m<s;m++)if(this.moveops[p].orbits[l].perm[m]!==m||this.moveops[p].orbits[l].ori[m]!==0)for(let F=0;F<i;F++)B.union(m*i+F,this.moveops[p].orbits[l].perm[m]*i+(F+this.moveops[p].orbits[l].ori[m])%i);for(let p=0;!f&&p<s;p++)for(let m=1;m<i;m++)B.find(p*i)===B.find(p*i+m)&&(f=!0);for(let p=0;!f&&p<s;p++)for(let m=0;m<p;m++)this.solved.orbits[l].perm[p]===this.solved.orbits[l].perm[m]&&(f=!0)}let g=-1,L=!1;for(let B=0;B<this.orbitdefs[l].size;B++)if(a[B]){let p=u.find(B);g<0?g=p:g!==p&&(L=!0)}for(let B=0;B<this.orbitdefs[l].size;B++){if(!a[B]||u.find(B)!==B)continue;let m=[],F=[],A=0;for(let b=0;b<this.orbitdefs[l].size;b++)u.find(b)===B&&(m[A]=b,F[b]=A,A++);if(L?e.push(`${this.orbitnames[l]}_p${B}`):e.push(this.orbitnames[l]),f){r.push(new ro(A,this.orbitdefs[l].mod)),n.push(this.solved.orbits[l].remapVS(m,A));for(let b=0;b<this.moveops.length;b++)o[b].push(this.moveops[b].orbits[l].remap(m,F,A))}else{r.push(new ro(A,1)),n.push(this.solved.orbits[l].remapVS(m,A).killOri());for(let b=0;b<this.moveops.length;b++)o[b].push(this.moveops[b].orbits[l].remap(m,F,A).killOri())}}}return new rn(e,r,new nn(n),this.movenames,o.map(l=>new tr(l)))}scramble(e){let r=[];for(let o=0;o<this.moveops.length;o++)r[o]=this.moveops[o];for(let o=0;o<r.length;o++){let l=Math.floor(Math.random()*r.length),i=r[o];r[o]=r[l],r[l]=i}e<r.length&&(e=r.length);for(let o=0;o<e;o++){let l=Math.floor(Math.random()*r.length),i=Math.floor(Math.random()*r.length),s=Math.floor(Math.random()*this.moveops.length);r[l]=r[l].mul(r[i]).mul(this.moveops[s]),Math.random()<.1&&(r[l]=r[l].mul(this.moveops[s]))}let n=r[0];for(let o=1;o<r.length;o++)n=n.mul(r[o]);this.solved=this.solved.mul(n)}reassemblySize(){let e=1;for(let r=0;r<this.orbitdefs.length;r++)e*=this.orbitdefs[r].reassemblySize();return e}},dt=class{constructor(e,r,n){this.perm=e;this.ori=r;this.orimod=n}static e(e,r){return new dt(Et(e),er(e),r)}mul(e){let r=this.perm.length,n=new Array(r);if(this.orimod===1){for(let o=0;o<r;o++)n[o]=this.perm[e.perm[o]];return new dt(n,this.ori,this.orimod)}else{let o=new Array(r);for(let l=0;l<r;l++)n[l]=this.perm[e.perm[l]],o[l]=(this.ori[e.perm[l]]+e.ori[l])%this.orimod;return new dt(n,o,this.orimod)}}inv(){let e=this.perm.length,r=new Array(e),n=new Array(e);for(let o=0;o<e;o++)r[this.perm[o]]=o,n[this.perm[o]]=(this.orimod-this.ori[o])%this.orimod;return new dt(r,n,this.orimod)}equal(e){let r=this.perm.length;for(let n=0;n<r;n++)if(this.perm[n]!==e.perm[n]||this.ori[n]!==e.ori[n])return!1;return!0}killOri(){let e=this.perm.length;for(let r=0;r<e;r++)this.ori[r]=0;return this.orimod=1,this}toPerm(){let e=this.orimod;if(e===1)return new ft(this.perm);let r=this.perm.length,n=new Array(r*e);for(let o=0;o<r;o++)for(let l=0;l<e;l++)n[o*e+l]=e*this.perm[o]+(this.ori[o]+l)%e;return new ft(n)}identicalPieces(){let e=[],r=this.perm.length,n=[];for(let o=0;o<r;o++){let l=this.perm[o];if(e[l]===void 0){let i=[o];e[l]=!0;for(let s=o+1;s<r;s++)this.perm[s]===l&&i.push(s);n.push(i)}}return n}order(){return this.toPerm().order()}isIdentity(){let e=this.perm.length;if(this.perm===Et(e)&&this.ori===er(e))return!0;for(let r=0;r<e;r++)if(this.perm[r]!==r||this.ori[r]!==0)return!1;return!0}zeroOris(){let e=this.perm.length;if(this.ori===er(e))return!0;for(let r=0;r<e;r++)if(this.ori[r]!==0)return!1;return!0}remap(e,r,n){let o=new Array(n),l=new Array(n);for(let i=0;i<n;i++)o[i]=r[this.perm[e[i]]],l[i]=this.ori[e[i]];return new dt(o,l,this.orimod)}remapVS(e,r){let n=new Array(r),o=new Array(r),l=0,i=[];for(let s=0;s<r;s++){let u=this.perm[e[s]];i[u]===void 0&&(i[u]=l++),n[s]=i[u],o[s]=this.ori[e[s]]}return new dt(n,o,this.orimod)}appendDefinition(e,r,n,o=!0){if(!(o&&this.isIdentity())&&(e.push(r),e.push(this.perm.map(l=>l+1).join(\" \")),!this.zeroOris()))if(n){let l=new Array(this.ori.length);for(let i=0;i<l.length;i++)l[this.perm[i]]=this.ori[i];e.push(l.join(\" \"))}else e.push(this.ori.join(\" \"))}toKPuzzle(){let e=this.perm.length;return this.isIdentity()?(dt.kcache[e]||(dt.kcache[e]={permutation:Et(e),orientation:er(e)}),dt.kcache[e]):{permutation:this.perm,orientation:this.ori}}},Nt=dt;Nt.kcache=[];Wi=class{constructor(e){this.orbits=e}internalMul(e){let r=[];for(let n=0;n<this.orbits.length;n++)r.push(this.orbits[n].mul(e.orbits[n]));return r}internalInv(){let e=[];for(let r of this.orbits)e.push(r.inv());return e}equal(e){for(let r=0;r<this.orbits.length;r++)if(!this.orbits[r].equal(e.orbits[r]))return!1;return!0}killOri(){for(let e of this.orbits)e.killOri();return this}toPerm(){let e=new Array,r=0;for(let o of this.orbits){let l=o.toPerm();e.push(l),r+=l.n}let n=new Array(r);r=0;for(let o of e){for(let l=0;l<o.n;l++)n[r+l]=r+o.p[l];r+=o.n}return new ft(n)}identicalPieces(){let e=[],r=0;for(let n of this.orbits){let o=n.orimod,l=n.identicalPieces();for(let i=0;i<l.length;i++)e.push(l[i].map(s=>s*o+r));r+=o*n.perm.length}return e}order(){let e=1;for(let r of this.orbits)e=_i(e,r.order());return e}},tr=class extends Wi{constructor(e){super(e)}mul(e){return new tr(this.internalMul(e))}mulScalar(e){if(e===0)return this.e();let r=this;for(e<0&&(r=r.inv(),e=-e);(e&1)==0;)r=r.mul(r),e>>=1;if(e===1)return r;let n=r,o=this.e();for(;e>0;)e&1&&(o=o.mul(n)),e>1&&(n=n.mul(n)),e>>=1;return o}inv(){return new tr(this.internalInv())}e(){return new tr(this.orbits.map(e=>Nt.e(e.perm.length,e.orimod)))}},nn=class extends Wi{constructor(e){super(e)}mul(e){return new nn(this.internalMul(e))}},Qi=class{constructor(e){this.n=e;this.heads=new Array(e);for(let r=0;r<e;r++)this.heads[r]=r}find(e){let r=this.heads[e];return this.heads[r]===r||(r=this.find(this.heads[r]),this.heads[e]=r),r}union(e,r){let n=this.find(e),o=this.find(r);n<o?this.heads[o]=n:n>o&&(this.heads[n]=o)}}});var ul,G0=U(()=>{ul={\"2x2x2\":\"c f 0\",\"3x3x3\":\"c f 0.333333333333333\",\"4x4x4\":\"c f 0.5 f 0\",\"5x5x5\":\"c f 0.6 f 0.2\",\"6x6x6\":\"c f 0.666666666666667 f 0.333333333333333 f 0\",\"7x7x7\":\"c f 0.714285714285714 f 0.428571428571429 f 0.142857142857143\",\"8x8x8\":\"c f 0.75 f 0.5 f 0.25 f 0\",\"9x9x9\":\"c f 0.777777777777778 f 0.555555555555556 f 0.333333333333333 f 0.111111111111111\",\"10x10x10\":\"c f 0.8 f 0.6 f 0.4 f 0.2 f 0\",\"11x11x11\":\"c f 0.818181818181818 f 0.636363636363636 f 0.454545454545455 f 0.272727272727273 f 0.0909090909090909\",\"12x12x12\":\"c f 0.833333333333333 f 0.666666666666667 f 0.5 f 0.333333333333333 f 0.166666666666667 f 0\",\"13x13x13\":\"c f 0.846153846153846 f 0.692307692307692 f 0.538461538461538 f 0.384615384615385 f 0.230769230769231 f 0.0769230769230769\",\"20x20x20\":\"c f 0 f .1 f .2 f .3 f .4 f .5 f .6 f .7 f .8 f .9\",\"30x30x30\":\"c f 0 f .066667 f .133333 f .2 f .266667 f .333333 f .4 f .466667 f .533333 f .6 f .666667 f .733333 f .8 f .866667 f .933333\",\"40x40x40\":\"c f 0 f .05 f .1 f .15 f .2 f .25 f .3 f .35 f .4 f .45 f .5 f .55 f .6 f .65 f .7 f .75 f .8 f .85 f .9 f .95\",skewb:\"c v 0\",\"master skewb\":\"c v 0.275\",\"professor skewb\":\"c v 0 v 0.38\",\"compy cube\":\"c v 0.915641442663986\",helicopter:\"c e 0.707106781186547\",\"curvy copter\":\"c e 0.83\",dino:\"c v 0.577350269189626\",\"little chop\":\"c e 0\",pyramorphix:\"t e 0\",mastermorphix:\"t e 0.346184634065199\",pyraminx:\"t v 0.333333333333333 v 1.66666666666667\",tetraminx:\"t v 0.333333333333333\",\"master pyraminx\":\"t v 0 v 1 v 2\",\"master tetraminx\":\"t v 0 v 1\",\"professor pyraminx\":\"t v -0.2 v 0.6 v 1.4 v 2.2\",\"professor tetraminx\":\"t v -0.2 v 0.6 v 1.4\",\"Jing pyraminx\":\"t f 0\",\"master pyramorphix\":\"t e 0.866025403784437\",megaminx:\"d f 0.7\",gigaminx:\"d f 0.64 f 0.82\",teraminx:\"d f 0.64 f 0.76 f 0.88\",petaminx:\"d f 0.64 f 0.73 f 0.82 f 0.91\",examinx:\"d f 0.64 f 0.712 f 0.784 f 0.856 f 0.928\",zetaminx:\"d f 0.64 f 0.7 f 0.76 f 0.82 f 0.88 f 0.94\",yottaminx:\"d f 0.64 f 0.6914 f 0.7429 f 0.7943 f 0.8457 f 0.8971 f 0.9486\",pentultimate:\"d f 0\",\"master pentultimate\":\"d f 0.1\",\"elite pentultimate\":\"d f 0 f 0.145905\",starminx:\"d v 0.937962370425399\",\"starminx 2\":\"d f 0.23606797749979\",\"pyraminx crystal\":\"d f 0.447213595499989\",chopasaurus:\"d v 0\",\"big chop\":\"d e 0\",\"skewb diamond\":\"o f 0\",FTO:\"o f 0.333333333333333\",\"master FTO\":\"o f 0.5 f 0\",\"Christopher's jewel\":\"o v 0.577350269189626\",octastar:\"o e 0\",\"Trajber's octahedron\":\"o v 0.433012701892219\",\"radio chop\":\"i f 0\",icosamate:\"i v 0\",\"icosahedron 2\":\"i v 0.18759247376021\",\"icosahedron 3\":\"i v 0.18759247376021 e 0\",\"icosahedron static faces\":\"i v 0.84\",\"icosahedron moving faces\":\"i v 0.73\",\"Eitan's star\":\"i f 0.61803398874989\",\"2x2x2 + dino\":\"c f 0 v 0.577350269189626\",\"2x2x2 + little chop\":\"c f 0 e 0\",\"dino + little chop\":\"c v 0.577350269189626 e 0\",\"2x2x2 + dino + little chop\":\"c f 0 v 0.577350269189626 e 0\",\"megaminx + chopasaurus\":\"d f 0.61803398875 v 0\",\"starminx combo\":\"d f 0.23606797749979 v 0.937962370425399\"}});function fl(t){let e=new _(0,0,0,0);for(let r=0;r<t.length;r++)e=e.sum(t[r]);return e.smul(1/t.length)}function T0(t,e,r,n){let o=n[t].intersect3(n[e],n[r]);if(!o)return o;for(let l=0;l<n.length;l++)if(l!==t&&l!==e&&l!==r){let i=n[l].b*o.b+n[l].c*o.c+n[l].d*o.d;if(n[l].a>0&&i>n[l].a||n[l].a<0&&i<n[l].a)return!1}return o}var Ur,_,gl=U(()=>{Ur=1e-9;_=class{constructor(e,r,n,o){this.a=e;this.b=r;this.c=n;this.d=o}mul(e){return new _(this.a*e.a-this.b*e.b-this.c*e.c-this.d*e.d,this.a*e.b+this.b*e.a+this.c*e.d-this.d*e.c,this.a*e.c-this.b*e.d+this.c*e.a+this.d*e.b,this.a*e.d+this.b*e.c-this.c*e.b+this.d*e.a)}toString(){return`Q[${this.a},${this.b},${this.c},${this.d}]`}dist(e){return Math.hypot(this.a-e.a,this.b-e.b,this.c-e.c,this.d-e.d)}len(){return Math.hypot(this.a,this.b,this.c,this.d)}cross(e){return new _(0,this.c*e.d-this.d*e.c,this.d*e.b-this.b*e.d,this.b*e.c-this.c*e.b)}dot(e){return this.b*e.b+this.c*e.c+this.d*e.d}normalize(){let e=Math.sqrt(this.dot(this));return new _(this.a/e,this.b/e,this.c/e,this.d/e)}makenormal(){return new _(0,this.b,this.c,this.d).normalize()}normalizeplane(){let e=Math.hypot(this.b,this.c,this.d);return new _(this.a/e,this.b/e,this.c/e,this.d/e)}smul(e){return new _(this.a*e,this.b*e,this.c*e,this.d*e)}sum(e){return new _(this.a+e.a,this.b+e.b,this.c+e.c,this.d+e.d)}sub(e){return new _(this.a-e.a,this.b-e.b,this.c-e.c,this.d-e.d)}angle(){return 2*Math.acos(this.a)}invrot(){return new _(this.a,-this.b,-this.c,-this.d)}det3x3(e,r,n,o,l,i,s,u,a){return e*(l*a-i*u)+r*(i*s-o*a)+n*(o*u-l*s)}rotateplane(e){let r=e.mul(new _(0,this.b,this.c,this.d)).mul(e.invrot());return r.a=this.a,r}orthogonal(){let e=Math.abs(this.b),r=Math.abs(this.c),n=Math.abs(this.d);return e<r&&e<n?this.cross(new _(0,1,0,0)).normalize():r<e&&r<n?this.cross(new _(0,0,1,0)).normalize():this.cross(new _(0,0,0,1)).normalize()}pointrotation(e){let r=this.normalize();if(e=e.normalize(),r.sub(e).len()<Ur)return new _(1,0,0,0);let n=r.sum(e);n.len()<Ur?n=n.orthogonal():n=n.normalize();let o=r.cross(n);return o.a=r.dot(n),o}unproject(e){return this.sum(e.smul(-this.dot(e)/(this.len()*e.len())))}rotatepoint(e){return e.mul(this).mul(e.invrot())}rotateface(e){return e.map(r=>r.rotatepoint(this))}intersect3(e,r){let n=this.det3x3(this.b,this.c,this.d,e.b,e.c,e.d,r.b,r.c,r.d);return Math.abs(n)<Ur?!1:new _(0,this.det3x3(this.a,this.c,this.d,e.a,e.c,e.d,r.a,r.c,r.d)/n,this.det3x3(this.b,this.a,this.d,e.b,e.a,e.d,r.b,r.a,r.d)/n,this.det3x3(this.b,this.c,this.a,e.b,e.c,e.a,r.b,r.c,r.a)/n)}side(e){return e>Ur?1:e<-Ur?-1:0}cutface(e){let r=this.a,n=0,o=null;for(let l=0;l<e.length;l++)n|=1<<this.side(e[l].dot(this)-r)+1;if((n&5)==5){o=[];let l=e.map(i=>this.side(i.dot(this)-r));for(let i=-1;i<=1;i+=2){let s=[];for(let u=0;u<e.length;u++){(l[u]===i||l[u]===0)&&s.push(e[u]);let a=(u+1)%e.length;if(l[u]+l[a]===0&&l[u]!==0){let f=e[u].dot(this)-r,g=e[a].dot(this)-r,L=f/(f-g),B=e[u].smul(1-L).sum(e[a].smul(L));s.push(B)}}o.push(s)}}return o}cutfaces(e){let r=[];for(let n=0;n<e.length;n++){let o=e[n],l=this.cutface(o);l?(r.push(l[0]),r.push(l[1])):r.push(o)}return r}faceside(e){let r=this.a;for(let n=0;n<e.length;n++){let o=this.side(e[n].dot(this)-r);if(o!==0)return o}throw new Error(\"Could not determine side of plane in faceside\")}sameplane(e){let r=this.normalize(),n=e.normalize();return r.dist(n)<Ur||r.dist(n.smul(-1))<Ur}makecut(e){return new _(e,this.b,this.c,this.d)}}});function I0(){let t=Math.sqrt(.5);return[new _(t,t,0,0),new _(t,0,t,0)]}function N0(){return[new _(.5,.5,.5,.5),new _(.5,.5,.5,-.5)]}function O0(){let t=2*Math.PI/10,e=.5+.3*Math.sqrt(5),r=.5+.1*Math.sqrt(5),n=Math.sqrt(e*e+r*r);return e/=n,r/=n,[new _(Math.cos(t),e*Math.sin(t),r*Math.sin(t),0),new _(.5,.5,.5,.5)]}function _0(){let t=1/6+Math.sqrt(5)/6,e=2/3+Math.sqrt(5)/3,r=Math.sqrt(t*t+e*e);t/=r,e/=r;let n=2*Math.PI/6;return[new _(Math.cos(n),t*Math.sin(n),e*Math.sin(n),0),new _(Math.cos(n),-t*Math.sin(n),e*Math.sin(n),0)]}function K0(){let t=Math.sqrt(.5);return[new _(.5,.5,.5,.5),new _(t,0,0,t)]}function W0(t){let e=[new _(1,0,0,0)];for(let r=0;r<e.length;r++)for(let n=0;n<t.length;n++){let o=t[n].mul(e[r]),l=o.smul(-1),i=!1;for(let s=0;s<e.length;s++)if(o.dist(e[s])<Ll||l.dist(e[s])<Ll){i=!0;break}i||e.push(o)}return e}function ji(t,e){let r=[],n=[];for(let o=0;o<e.length;o++){let l=t.rotateplane(e[o]),i=!1;for(let s=0;s<r.length;s++)if(l.dist(r[s])<Ll){i=!0;break}i||(r.push(l),n.push(e[o]))}return n}function qi(t){let e=[];for(let r=1;r<t.length;r++)for(let n=r+1;n<t.length;n++){let o=T0(0,r,n,t);if(o){let l=!1;for(let i=0;i<e.length;i++)if(o.dist(e[i])<Ll){l=!0;break}l||e.push(o)}}for(;;){let r=!1;for(let n=0;n<e.length;n++){let o=(n+1)%e.length;if(t[0].dot(e[n].cross(e[o]))<0){let l=e[n];e[n]=e[o],e[o]=l,r=!0}}if(!r)break}return e}var Ll,Q0=U(()=>{gl();Ll=1e-9});function Bl(t,e){let r=t[0].p.length,n=z0(r),o=[],l=[],i=[],s=[],u=[];function a(B){for(let p=B.p.length-1;p>=0;p--){let m=B.p[p];if(m!==p){if(!o[p][m])return!1;B=B.mul(l[p][m])}}return!0}function f(B,p,m){s[B].push(p),u[B].push(m);for(let F=0;F<o[B].length;F++)o[B][F]&&g(B,o[B][F].mul(p),m+i[B][F])}function g(B,p,m){let F=p.p[B];if(!o[B][F]){o[B][F]=p,l[B][F]=p.inv(),i[B][F]=m;for(let b=0;b<s[B].length;b++)g(B,p.mul(s[B][b]),m+u[B][b]);return}let A=p.mul(l[B][F]);a(A)||f(B-1,A,m+i[B][F])}function L(){o=[],l=[],s=[],i=[],u=[];for(let m=0;m<r;m++)o.push([]),l.push([]),i.push([]),s.push([]),u.push([]),o[m][m]=n,l[m][m]=n,i[m][m]=0;let B=0,p=1;for(let m=0;m<t.length;m++){f(r-1,t[m],1),p=1;let F=0,A=0,b=[],h=new j0;for(let C=0;C<r;C++){let E=0,j=0;for(let I=0;I<r;I++)o[C][I]&&(E++,j+=i[C][I],C!==I&&B++);F+=s[C].length,p*=E,E>1&&h.multiply(E);let te=j/E;b.push(te),A+=te}e(`${m}: sz ${p} T ${F} sol ${A} none ${B} mults ${h.toString()}`)}return p}return L()}var j0,Vi=U(()=>{al();j0=class{constructor(){this.mult=[]}multiply(e){for(let r=2;r*r<=e;r++)for(;e%r==0;)this.mult[r]!==void 0?this.mult[r]++:this.mult[r]=1,e/=r;e>1&&(this.mult[e]!==void 0?this.mult[e]++:this.mult[e]=1)}toString(){let e=\"\";for(let r=0;r<this.mult.length;r++)this.mult[r]!==void 0&&(e!==\"\"&&(e+=\"*\"),e+=r,this.mult[r]>1&&(e+=`^${this.mult[r]}`));return e}}});function Hi(t){return t}function Yi(t){}function b1(t,e){let r=[];for(let n of t)for(let o of e)r.push(o.rotate(n));return r}function w1(){return{4:[[\"F\",\"D\",\"L\",\"R\"]],6:[[\"F\",\"D\",\"L\",\"U\",\"R\"],[\"R\",\"F\",\"\",\"B\",\"\"]],8:[[\"F\",\"D\",\"L\",\"R\"],[\"D\",\"F\",\"BR\",\"\"],[\"BR\",\"D\",\"\",\"BB\"],[\"BB\",\"BR\",\"U\",\"BL\"]],12:[[\"U\",\"F\",\"\",\"\",\"\",\"\"],[\"F\",\"U\",\"R\",\"C\",\"A\",\"L\"],[\"R\",\"F\",\"\",\"\",\"E\",\"\"],[\"E\",\"R\",\"\",\"BF\",\"\",\"\"],[\"BF\",\"E\",\"BR\",\"BL\",\"I\",\"D\"]],20:[[\"R\",\"C\",\"F\",\"E\"],[\"F\",\"R\",\"L\",\"U\"],[\"L\",\"F\",\"A\",\"\"],[\"E\",\"R\",\"G\",\"I\"],[\"I\",\"E\",\"S\",\"H\"],[\"S\",\"I\",\"J\",\"B\"],[\"B\",\"S\",\"K\",\"D\"],[\"K\",\"B\",\"M\",\"O\"],[\"O\",\"K\",\"P\",\"N\"],[\"P\",\"O\",\"Q\",\"\"]]}}function v1(){return{4:{F:\"#00ff00\",D:\"#ffff00\",L:\"#ff0000\",R:\"#0000ff\"},6:{U:\"#ffffff\",F:\"#00ff00\",R:\"#ff0000\",D:\"#ffff00\",B:\"#0000ff\",L:\"#ff8000\"},8:{U:\"#ffffff\",F:\"#ff0000\",R:\"#00bb00\",D:\"#ffff00\",BB:\"#1122ff\",L:\"#9524c5\",BL:\"#ff8800\",BR:\"#aaaaaa\"},12:{U:\"#ffffff\",F:\"#006633\",R:\"#ff0000\",C:\"#ffffd0\",A:\"#3399ff\",L:\"#660099\",E:\"#ff66cc\",BF:\"#99ff00\",BR:\"#0000ff\",BL:\"#ffff00\",I:\"#ff6633\",D:\"#999999\"},20:{R:\"#db69f0\",C:\"#178fde\",F:\"#23238b\",E:\"#9cc726\",L:\"#2c212d\",U:\"#177fa7\",A:\"#e0de7f\",G:\"#2b57c0\",I:\"#41126b\",S:\"#4b8c28\",H:\"#7c098d\",J:\"#7fe7b4\",B:\"#85fb74\",K:\"#3f4bc3\",D:\"#0ff555\",M:\"#f1c2c8\",O:\"#58d340\",P:\"#c514f2\",N:\"#14494e\",Q:\"#8b1be1\"}}}function E1(){return{4:[\"F\",\"D\",\"L\",\"R\"],6:[\"U\",\"D\",\"F\",\"B\",\"L\",\"R\"],8:[\"F\",\"BB\",\"D\",\"U\",\"BR\",\"L\",\"R\",\"BL\"],12:[\"L\",\"E\",\"F\",\"BF\",\"R\",\"I\",\"U\",\"D\",\"BR\",\"A\",\"BL\",\"C\"],20:[\"L\",\"S\",\"E\",\"O\",\"F\",\"B\",\"I\",\"P\",\"R\",\"K\",\"U\",\"D\",\"J\",\"A\",\"Q\",\"H\",\"G\",\"N\",\"M\",\"C\"]}}function k1(){return{4:[[\"FLR\",[0,1,0]],[\"F\",[0,0,1]]],6:[[\"U\",[0,1,0]],[\"F\",[0,0,1]]],8:[[\"U\",[0,1,0]],[\"F\",[0,0,1]]],12:[[\"U\",[0,1,0]],[\"F\",[0,0,1]]],20:[[\"GUQMJ\",[0,1,0]],[\"F\",[0,0,1]]]}}function ml(t,e){for(let r=0;r<t.length;r++)if(t[r][0].dist(e)<be)return r;throw new Error(\"Element not found\")}function q0(){return ul}function V0(t){return ul[t]}function to(t){let e=t.split(/ /).filter(Boolean);if(e.length%2==0)return null;let r=e[0];if(r!==\"o\"&&r!==\"c\"&&r!==\"i\"&&r!==\"d\"&&r!==\"t\")return null;let n=[];for(let o=1;o<e.length;o+=2){if(e[o]!==\"f\"&&e[o]!==\"v\"&&e[o]!==\"e\")return null;n.push({cutType:e[o],distance:parseFloat(e[o+1])})}return{shape:r,cuts:n}}function Zi(t,e={}){let r=to(t);if(r===null)throw new Error(\"Could not parse the puzzle description\");let n=new pl(r,Object.assign({},{allMoves:!0},e));return n.allstickers(),n.genperms(),n}function ln(t,e){return Zi(ul[t],e)}function z1(t,e,r){let n=!1;r-e[1]<e[0]&&(t=[t[2],t[3],t[0],t[1]],e=[r-e[1],r-e[0]],n=!0);let o=t[0],l=\"\";if(e[0]===0&&e[1]===r)o=o+\"v\";else if(e[0]===e[1])e[1]>0&&(l=String(e[1]+1));else if(e[0]===0)o=o.toLowerCase(),e[1]>1&&(l=String(e[1]+1));else throw`We only support slice and outer block moves right now. ${e}`;return[l+o,n]}function C1(t,e){let r=[],n=0;for(;n<t.length;){n>0&&n<t.length&&t[n]===\"_\"&&n++;let o=\"\";for(let l of e)t.substr(n).startsWith(l[1])&&l[1].length>o.length&&(o=l[1]);if(o!==\"\")r.push(o),n+=o.length;else throw new Error(\"Could not split \"+t+\" into face names.\")}return r}function cl(t,e){return[t.b/e,-t.c/e,t.d/e]}function Xi(t,e){let r=[],n=t.length;for(let o=0;o<n;o++){let l=cl(t.get(n-o-1),e);r[3*o]=l[0],r[3*o+1]=l[1],r[3*o+2]=l[2]}return r}var on,no,be,S1,x1,pl,br,sl=U(()=>{Ae();B0();Gi();Ii();al();M0();G0();Q0();gl();Vi();on=class{constructor(e){this.coords=new Array(e.length*3);for(let r=0;r<e.length;r++)this.coords[3*r]=e[r].b,this.coords[3*r+1]=e[r].c,this.coords[3*r+2]=e[r].d;this.length=e.length}get(e){return new _(0,this.coords[3*e],this.coords[3*e+1],this.coords[3*e+2])}centermass(){let e=0,r=0,n=0;for(let o=0;o<this.length;o++)e+=this.coords[3*o],r+=this.coords[3*o+1],n+=this.coords[3*o+2];return new _(0,e/this.length,r/this.length,n/this.length)}rotate(e){let r=[];for(let n=0;n<this.length;n++)r.push(this.get(n).rotatepoint(e));return new on(r)}rotateforward(){let e=[];for(let r=1;r<this.length;r++)e.push(this.get(r));return e.push(this.get(0)),new on(e)}},no=class{constructor(e,r,n){this.face=e;this.left=r;this.right=n}split(e){let r=e.cutface(this.face);return r!==null&&(this.left===void 0?(this.left=new no(r[0]),this.right=new no(r[1])):(this.left=this.left?.split(e),this.right=this.right?.split(e))),this}collect(e,r){return this.left===void 0?e.push(new on(this.face)):r?(this.left?.collect(e,!1),this.right?.collect(e,!0)):(this.right?.collect(e,!1),this.left?.collect(e,!0)),e}};be=1e-9,S1=\"PuzzleGeometry 0.1 Copyright 2018 Tomas Rokicki.\",x1=!1;pl=class{constructor(e,r){this.puzzleDescription=e;this.cmovesbyslice=[];this.duplicatedFaces=[];this.duplicatedCubies=[];this.fixedCubie=-1;this.net=[];this.colors=[];this.faceorder=[];this.faceprecedence=[];this.notationMapper=new tn;this.addNotationMapper=\"\";this.setReidOrder=!1;let n=Hi(\"genperms\");this.options=new Ti(r),this.options.verbosity>0&&console.log(this.header(\"# \")),this.create(e),Yi(n)}create(e){let{shape:r,cuts:n}=e;this.moveplanes=[],this.moveplanes2=[],this.faces=[],this.cubies=[];let o=null;switch(r){case\"c\":o=I0();break;case\"o\":o=K0();break;case\"i\":o=_0();break;case\"t\":o=N0();break;case\"d\":o=O0();break;default:throw new Error(\"Bad shape argument: \"+r)}this.rotations=W0(o),this.options.verbosity&&console.log(\"# Rotations: \"+this.rotations.length);let l=o[0];this.baseplanerot=ji(l,this.rotations);let i=this.baseplanerot.map(d=>l.rotateplane(d));this.baseplanes=i,this.baseFaceCount=i.length;let s=w1()[i.length];this.net=s,this.colors=v1()[i.length],this.faceorder=E1()[i.length],this.options.verbosity>0&&console.log(\"# Base planes: \"+i.length);let u=qi(i),a=new _(0,0,0,0);this.options.verbosity>0&&console.log(\"# Face vertices: \"+u.length);let f=i[0].makenormal(),g=u[0].sum(u[1]).makenormal(),L=u[0].makenormal(),B=new _(1,f.b,f.c,f.d);this.options.verbosity>0&&console.log(\"# Boundary is \"+B);let m=ji(B,this.rotations).map(d=>B.rotateplane(d)),F=qi(m);this.edgedistance=F[0].sum(F[1]).smul(.5).dist(a),this.vertexdistance=F[0].dist(a);let A=[],b=[],h=!1,C=!1,E=!1;for(let d of n){let v=null,N=0;switch(d.cutType){case\"f\":v=f,N=1,h=!0;break;case\"v\":v=L,N=this.vertexdistance,E=!0;break;case\"e\":v=g,N=this.edgedistance,C=!0;break;default:throw new Error(\"Bad cut argument: \"+d.cutType)}A.push(v.makecut(d.distance)),b.push(d.distance<N)}this.options.addRotations&&(h||A.push(f.makecut(10)),E||A.push(L.makecut(10)),C||A.push(g.makecut(10))),this.basefaces=[];for(let d of this.baseplanerot){let v=d.rotateface(F);this.basefaces.push(new on(v))}let j=[],te=[],I=[],re=[],y=F.length;function z(d,v,N){for(let K of d)if(K[0].dist(v)<be){K.push(N);return}d.push([v,N])}for(let d=0;d<this.baseplanerot.length;d++){let v=this.baseplanerot[d].rotateface(F);for(let N=0;N<v.length;N++){let K=(N+1)%v.length,ne=v[N].sum(v[K]).smul(.5);z(re,ne,d)}}let M=[];for(let d=0;d<this.baseplanerot.length;d++){let v=this.baseplanerot[d].rotateface(F),N=[];for(let K=0;K<v.length;K++){let ne=(K+1)%v.length,Ke=v[K].sum(v[ne]).smul(.5),lt=re[ml(re,Ke)];if(d===lt[1])N.push(lt[2]);else if(d===lt[2])N.push(lt[1]);else throw new Error(\"Could not find edge\")}M.push(N)}let x={},w=[];w.push(s[0][0]),x[s[0][0]]=0,w[M[0][0]]=s[0][1],x[s[0][1]]=M[0][0];for(let d of s){let v=d[0],N=x[v];if(N===void 0)throw new Error(\"Bad edge description; first edge not connected\");let K=-1;for(let ne=0;ne<M[N].length;ne++){let Ke=w[M[N][ne]];if(Ke!==void 0&&Ke===d[1]){K=ne;break}}if(K<0)throw new Error(\"First element of a net not known\");for(let ne=2;ne<d.length;ne++){if(d[ne]===\"\")continue;let Ke=M[N][(ne+K-1)%y],lt=w[Ke];if(lt!==void 0&<!==d[ne])throw new Error(\"Face mismatch in net\");w[Ke]=d[ne],x[d[ne]]=Ke}}for(let d=0;d<w.length;d++){let v=!1;for(let N=0;N<this.faceorder.length;N++)if(w[d]===this.faceorder[N]){this.faceprecedence[d]=N,v=!0;break}if(!v)throw new Error(\"Could not find face \"+w[d]+\" in face order list \"+this.faceorder)}for(let d=0;d<this.baseplanerot.length;d++){let v=this.baseplanerot[d].rotateface(F),N=B.rotateplane(this.baseplanerot[d]),K=w[d];j.push([v,K]),te.push([N,K])}for(let d=0;d<this.baseplanerot.length;d++){let v=this.baseplanerot[d].rotateface(F),N=w[d];for(let K=0;K<v.length;K++){let ne=(K+1)%v.length,Ke=v[K].sum(v[ne]).smul(.5),lt=(K+2)%v.length,Eg=v[ne].sum(v[lt]).smul(.5),kg=ml(re,Ke),zg=ml(re,Eg);z(I,v[ne],[N,zg,kg])}}this.swizzler=new Jn(j.map(d=>d[1]));let P=this.swizzler.prefixFree?\"\":\"_\";for(let d=0;d<re.length;d++){if(re[d].length!==3)throw new Error(\"Bad length in edge names \"+re[d]);let v=w[re[d][1]],N=w[re[d][2]];this.faceprecedence[re[d][1]]<this.faceprecedence[re[d][2]]?v=v+P+N:v=N+P+v,re[d]=[re[d][0],v]}for(let d=0;d<I.length;d++){if(I[d].length<4)throw new Error(\"Bad length in vertex names\");let v=1;for(let K=2;K<I[d].length;K++)this.faceprecedence[x[I[d][K][0]]]<this.faceprecedence[x[I[d][v][0]]]&&(v=K);let N=\"\";for(let K=1;K<I[d].length;K++){K===1?N=I[d][v][0]:N=N+P+I[d][v][0];for(let ne=1;ne<I[d].length;ne++)if(I[d][v][1]===I[d][ne][2]){v=ne;break}}I[d]=[I[d][0],N]}this.options.verbosity>1&&(console.log(\"# Face precedence list: \"+this.faceorder.join(\" \")),console.log(\"# Face names: \"+j.map(d=>d[1]).join(\" \")),console.log(\"# Edge names: \"+re.map(d=>d[1]).join(\" \")),console.log(\"# Vertex names: \"+I.map(d=>d[1]).join(\" \")));let W=[];for(let d of te)W.push([d[0].makenormal(),d[1],\"f\"]);for(let d of re)W.push([d[0].makenormal(),d[1],\"e\"]);for(let d of I)W.push([d[0].makenormal(),d[1],\"v\"]);this.facenames=j,this.faceplanes=te,this.edgenames=re,this.vertexnames=I,this.geonormals=W;let H=W.map(d=>d[1]);this.swizzler.setGripNames(H),this.options.verbosity>0&&console.log(\"# Distances: face \"+1+\" edge \"+this.edgedistance+\" vertex \"+this.vertexdistance);for(let d=0;d<A.length;d++)for(let v of this.rotations){let N=A[d].rotateplane(v),K=!1;for(let ne of this.moveplanes)if(N.sameplane(ne)){K=!0;break}K||(this.moveplanes.push(N),b[d]&&this.moveplanes2.push(N))}let ge=new no(F),me=this.moveplanes2.slice(),Fe=31;for(let d=0;d<me.length;d++){let v=d+Math.floor((me.length-d)*(Fe/65536));ge=ge.split(me[v]),me[v]=me[d],Fe=(Fe*1657+101)%65536}let ye=ge.collect([],!0);this.faces=ye,this.options.verbosity>0&&console.log(\"# Faces is now \"+ye.length),this.stickersperface=ye.length;let xt=[],ze=fl(F);for(let d of this.rotations){let v=d.rotateface(F);ze.dist(fl(v))<be&&xt.push(d)}let Xe=new Array(ye.length),xe=[];for(let d=0;d<ye.length;d++){let v=ye[d].centermass();xe.push([ze.dist(v),v,d])}xe.sort((d,v)=>d[0]-v[0]);for(let d=0;d<ye.length;d++){let v=xe[d][2];if(!Xe[v]){Xe[v]=!0;for(let N of xt){let K=ye[v].rotate(N),ne=K.centermass();for(let Ke=d+1;Ke<ye.length&&!(xe[Ke][0]-xe[d][0]>be);Ke++){let lt=xe[Ke][2];if(!Xe[lt]&&ne.dist(xe[Ke][1])<be){Xe[lt]=!0,ye[lt]=K;break}}}}}this.shortedge=1e99;for(let d of ye)for(let v=0;v<d.length;v++){let N=(v+1)%d.length,K=d.get(v).dist(d.get(N));K<this.shortedge&&(this.shortedge=K)}this.options.verbosity>0&&console.log(\"# Short edge is \"+this.shortedge),r===\"c\"&&h&&!C&&!E&&(this.addNotationMapper=\"NxNxNCubeMapper\",this.setReidOrder=!0),r===\"c\"&&E&&!h&&!C&&(this.addNotationMapper=\"SkewbMapper\"),r===\"t\"&&(E||h)&&!C&&(this.addNotationMapper=\"PyraminxOrTetraminxMapper\"),r===\"o\"&&h&&(this.notationMapper=new $n(this.swizzler,new Jn([\"F\",\"D\",\"L\",\"BL\",\"R\",\"U\",\"BR\",\"B\"])),!C&&!E&&(this.addNotationMapper=\"FTOMapper\")),r===\"d\"&&h&&(this.addNotationMapper=\"MegaminxMapper\",this.notationMapper=new $n(this.swizzler,new Jn([\"U\",\"F\",\"L\",\"BL\",\"BR\",\"R\",\"FR\",\"FL\",\"DL\",\"B\",\"DR\",\"D\"])))}keyface(e){return this.keyface2(e.centermass())}keyface2(e){let r=\"\",n=String.fromCharCode;for(let o of this.moveplanesets)if(o.length>0){let l=e.dot(o[0]),i=0,s=1;for(;s*2<=o.length;)s*=2;for(;s>0;s>>=1)i+s<=o.length&&l>o[i+s-1].a&&(i+=s);if(i<47)r=r+n(33+i);else if(i<47+47*47)r=r+n(33+47+Math.floor(i/47)-1)+n(33+i%47);else if(i<47+47*47+47*47*47)r=r+n(33+47+Math.floor((i-47)/(47*47)-1))+n(33+47+Math.floor((i-47)/47)%47)+n(33+i%47);else throw Error(\"Too many slices for cubie encoding\")}return r}keyface3(e){let r=e.centermass(),n=[];for(let o of this.moveplanesets)if(o.length>0){let l=r.dot(o[0]),i=0,s=1;for(;s*2<=o.length;)s*=2;for(;s>0;s>>=1)i+s<=o.length&&l>o[i+s-1].a&&(i+=s);n.push(i)}return n}findface(e){let r=this.keyface2(e),n=this.facelisthash.get(r);if(n.length===1)return n[0];for(let o=0;o+1<n.length;o++){let l=this.facelisthash.get(r)[o];if(Math.abs(e.dist(this.facecentermass[l]))<be)return l}return n[n.length-1]}project2d(e,r,n){let o=this.facenames[e][0],l=(r+1)%o.length,i=this.baseplanes[e],s=o[l].sub(o[r]),u=s.len();s=s.normalize();let a=s.cross(i).normalize(),f=n[1].sub(n[0]),g=f.len()/u;f=f.normalize();let L=f.b,B=f.c,p=s.smul(L).sub(a.smul(B)).smul(g),m=a.smul(L).sum(s.smul(B)).smul(g),F=new _(0,n[0].b-p.dot(o[r]),n[0].c-m.dot(o[r]),0);return[p,m,F]}allstickers(){let e=Hi(\"allstickers\");this.faces=b1(this.baseplanerot,this.faces),this.options.verbosity>0&&console.log(\"# Total stickers is now \"+this.faces.length),this.facecentermass=new Array(this.faces.length);for(let y=0;y<this.faces.length;y++)this.facecentermass[y]=this.faces[y].centermass();let r=[],n=[];for(let y of this.moveplanes){let z=y.makenormal(),M=!1;for(let x of n)z.sameplane(x.makenormal())&&(M=!0);M||(n.push(z),r.push([]))}for(let y of this.moveplanes2){let z=y.makenormal();for(let M=0;M<n.length;M++)if(z.sameplane(n[M])){r[M].push(y);break}}for(let y=0;y<r.length;y++){let z=r[y].map(x=>x.normalizeplane()),M=n[y];for(let x=0;x<z.length;x++)z[x].makenormal().dist(M)>be&&(z[x]=z[x].smul(-1));z.sort((x,w)=>x.a-w.a),r[y]=z}this.moveplanesets=r,this.moveplanenormals=n;let o=r.map(y=>y.length);this.options.verbosity>0&&console.log(\"# Move plane sets: \"+o);let l=[];for(let y=0;y<r.length;y++)l.push([]);for(let y of this.rotations){if(Math.abs(Math.abs(y.a)-1)<be)continue;let z=y.makenormal();for(let M=0;M<r.length;M++)if(z.sameplane(n[M])){l[M].push(y);break}}this.moverotations=l;for(let y=0;y<l.length;y++){let z=l[y],M=z[0].makenormal();for(let x=0;x<z.length;x++)M.dist(z[x].makenormal())>be&&(z[x]=z[x].smul(-1));z.sort((x,w)=>x.angle()-w.angle()),l[y][0].dot(n[y])<0&&z.reverse()}let i=l.map(y=>1+y.length);this.movesetorders=i;let s=[],u=\"?\";for(let y=0;y<r.length;y++){let z=n[y],M=null,x=null;for(let w of this.geonormals){let P=z.dot(w[0]);Math.abs(P-1)<be?(x=[w[1],w[2]],u=w[2]):Math.abs(P+1)<be&&(M=[w[1],w[2]],u=w[2])}if(x===null||M===null)throw new Error(\"Saw positive or negative sides as null\");s.push([x[0],x[1],M[0],M[1],1+r[y].length]),this.addNotationMapper===\"NxNxNCubeMapper\"&&u===\"f\"&&(this.notationMapper=new ol(1+r[y].length),this.addNotationMapper=\"\"),this.addNotationMapper===\"SkewbMapper\"&&r[0].length===1&&(this.notationMapper=new il(this.swizzler),this.addNotationMapper=\"\"),this.addNotationMapper===\"PyraminxOrTetraminxMapper\"&&(r[0].length===2&&r[0][0].a===.333333333333333&&r[0][1].a===1.66666666666667?(this.notationMapper=new eo(this.swizzler),this.addNotationMapper=\"\"):(this.notationMapper=new ll(this.swizzler),this.addNotationMapper=\"\")),this.addNotationMapper===\"MegaminxMapper\"&&u===\"f\"&&(1+r[y].length===3&&(this.notationMapper=new nl(this.notationMapper)),this.addNotationMapper=\"\"),this.addNotationMapper===\"FTOMapper\"&&u===\"f\"&&(1+r[y].length===3&&(this.notationMapper=new rl(this.notationMapper,this.swizzler)),this.addNotationMapper=\"\")}this.movesetgeos=s;let a=new Map,f=this.faces;for(let y=0;y<f.length;y++){let z=f[y],M=this.keyface(z);if(!a.get(M))a.set(M,[y]);else{let x=a.get(M);if(x.push(y),x.length===this.baseFaceCount){this.options.verbosity>0&&console.log(\"# Splitting core.\");for(let w=0;w<x.length;w++){let P=M+\" \"+w;a.set(P,[x[w]])}}}}this.facelisthash=a,this.options.verbosity>0&&console.log(\"# Cubies: \"+a.size);let g=[],L=[],B=[];for(let y of a.values())if(y.length!==this.baseFaceCount){if(y.length>1){let z=y.map(P=>f[P].centermass()),M=fl(z);for(let P=0;y.length>2;P++){let W=!1;for(let H=0;H<y.length;H++){let ge=(H+1)%y.length;if(M.dot(z[H].cross(z[ge]))<0){let me=z[H];z[H]=z[ge],z[ge]=me;let Fe=y[H];y[H]=y[ge],y[ge]=Fe,W=!0}}if(!W)break;if(P>1e3)throw new Error(\"Bad epsilon math; too close to border\")}let x=0,w=y[x];for(let P=1;P<y.length;P++){let W=y[P];this.faceprecedence[this.getfaceindex(W)]<this.faceprecedence[this.getfaceindex(w)]&&(x=P,w=W)}if(x!==0){let P=y.slice();for(let W=0;W<y.length;W++)y[W]=P[(x+W)%y.length]}}for(let z=0;z<y.length;z++){let M=y[z];L[M]=g.length,B[M]=z}g.push(y)}this.cubies=g,this.facetocubie=L,this.facetoord=B;let p=[\"?\",\"CENTERS\",\"EDGES\",\"CORNERS\",\"C4RNER\",\"C5RNER\"],m=[],F=[0,0,0,0,0,0],A=[],b=[],h=0,C=[],E=[],j=[],te=[],I=y=>g[y].map(z=>this.getfaceindex(z)).join(\" \"),re=[];for(let y=0;y<g.length;y++){if(b[y])continue;let z=g[y];if(z.length===0)continue;let M={},x=0;j.push(0),re.push([]);let w=z.length,P=F[w]++,W=p[w];(W===void 0||w===this.baseFaceCount)&&(W=\"CORE\"),W=W+(P===0?\"\":P+1),m[h]=W,A[h]=w;let H=[y],ge=0;for(b[y]=!0;ge<H.length;){let me=H[ge++],Fe=I(me);if((z.length>1||M[Fe]===void 0)&&(M[Fe]=x++),te[me]=M[Fe],C[me]=h,re[h].push(me),E[me]=j[h]++,H.length<this.rotations.length){let ye=this.facecentermass[g[me][0]];for(let xt of l){let ze=this.facetocubie[this.findface(ye.rotatepoint(xt[0]))];b[ze]||(H.push(ze),b[ze]=!0)}}}h++}if(this.setReidOrder&&4<=this.stickersperface&&this.stickersperface<=9){let y=[[\"UF\",\"UR\",\"UB\",\"UL\",\"DF\",\"DR\",\"DB\",\"DL\",\"FR\",\"FL\",\"BR\",\"BL\"],[\"UFR\",\"URB\",\"UBL\",\"ULF\",\"DRF\",\"DFL\",\"DLB\",\"DBR\"],[\"U\",\"L\",\"F\",\"R\",\"B\",\"D\"]],z={};for(let M of y)for(let x=0;x<M.length;x++){let w=0;for(let P=0;P<M[x].length;P++)w|=1<<M[x].charCodeAt(P)-65;z[w]=x}for(let M of re)for(let x of M){let w=0;for(let P of g[x])w|=1<<this.facenames[this.getfaceindex(P)][1].charCodeAt(0)-65;E[x]=z[w]}}if(this.cubiesetnums=C,this.cubieordnums=E,this.cubiesetnames=m,this.cubieords=j,this.orbitoris=A,this.cubievaluemap=te,this.cubiesetcubies=re,this.options.fixedPieceType!==null){for(let y=0;y<g.length;y++)if(this.options.fixedPieceType===\"v\"&&g[y].length>2||this.options.fixedPieceType===\"e\"&&g[y].length===2||this.options.fixedPieceType===\"f\"&&g[y].length===1){this.fixedCubie=y;break}if(this.fixedCubie<0)throw new Error(\"Could not find a cubie of type \"+this.options.fixedPieceType+\" to fix.\")}this.options.verbosity>0&&console.log(\"# Cubie orbit sizes \"+j),Yi(e)}unswizzle(e){let r=this.notationMapper.notationToInternal(e);return r===null?\"\":this.swizzler.unswizzle(r.family)}stringToBlockMove(e){let r=RegExp(\"^(([0-9]+)-)?([0-9]+)?([^0-9]+)([0-9]+'?)?$\"),n=e.match(r);if(n===null)throw new Error(\"Bad move passed \"+e);let o=n[4],l,i;if(n[2]!==void 0){if(n[3]===void 0)throw new Error(\"Missing second number in range\");l=parseInt(n[2],10)}n[3]!==void 0&&(i=parseInt(n[3],10));let s=\"1\",u=1;return n[5]!==void 0&&(s=n[5],s[0]===\"'\"&&(s=\"-\"+s.substring(1)),u=parseInt(s,10)),new c(new G(o,i,l),u)}parseMove(e){let r=this.notationMapper.notationToInternal(e);if(r===null)throw new Error(\"Bad move \"+e.family);e=r;let n=e.family,o=!1;if(n.endsWith(\"v\")&&n[0]<=\"Z\"){if(e.innerLayer!==void 0||e.outerLayer!==void 0)throw new Error(\"Cannot use a prefix with full cube rotations\");n=n.slice(0,-1),o=!0}n.endsWith(\"w\")&&n[0]<=\"Z\"&&(n=n.slice(0,-1).toLowerCase());let l,i=-1,s=this.swizzler.unswizzle(n),u=!1;for(let g=0;g<this.movesetgeos.length;g++){let L=this.movesetgeos[g];s===L[0]&&(u=!0,l=L,i=g),s===L[2]&&(u=!1,l=L,i=g)}let a=1,f=1;if(n.toUpperCase()!==n&&(f=2),l===void 0)throw new Error(\"Bad grip in move \"+e.family);if(e.outerLayer!==void 0&&(a=e.outerLayer),e.innerLayer!==void 0&&(e.outerLayer===void 0?(f=e.innerLayer,n<=\"Z\"?a=f:a=1):f=e.innerLayer),a--,f--,o&&(a=0,f=this.moveplanesets[i].length),a<0||a>this.moveplanesets[i].length||f<0||f>this.moveplanesets[i].length)throw new Error(\"Bad slice spec \"+a+\" \"+f+\" vs \"+this.moveplanesets[i].length);if(!x1&&a===0&&f===this.moveplanesets[i].length&&!o)throw new Error(\"! full puzzle rotations must be specified with v suffix.\");return[void 0,i,a,f,u,e.amount]}parsemove(e){let r=this.parseMove(this.stringToBlockMove(e));return r[0]=e,r}genperms(){let e=Hi(\"genperms\");if(this.cmovesbyslice.length>0)return;let r=[];if(this.options.orientCenters){for(let n=0;n<this.cubies.length;n++)if(this.cubies[n].length===1){let o=this.cubies[n][0],l=this.getfaceindex(o);if(this.basefaces[l].centermass().dist(this.facecentermass[o])<be){let i=this.basefaces[l].length;for(let s=1;s<i;s++)this.cubies[n].push(this.cubies[n][s-1]);this.duplicatedFaces[o]=i,this.duplicatedCubies[n]=i,this.orbitoris[this.cubiesetnums[n]]=i}}}for(let n=0;n<this.moveplanesets.length;n++){let o=this.moveplanesets[n],l=[],i=[o.length+1,0],s=1;for(;s*2<=o.length;)s*=2;for(let f=0;f<this.faces.length;f++){let g=0;if(o.length>0){let L=this.facecentermass[f].dot(o[0]);for(let B=s;B>0;B>>=1)g+B<=o.length&&L>o[g+B-1].a&&(g+=B);g=o.length-g}for(l.push(g);i.length<=g;)i.push(0);i[g]++}let u=new Array(i.length);for(let f=0;f<i.length;f++)u[f]=[];let a=[];for(let f=0;f<this.faces.length;f++){if(l[f]<0)continue;let g=[this.facetocubie[f],this.facetoord[f]],L=this.facecentermass[f],B=L,p=f,m=l[p];for(;;){l[p]=-1;let F=L.rotatepoint(this.moverotations[n][0]);if(F.dist(B)<be)break;p=this.findface(F),g.push(this.facetocubie[p],this.facetoord[p]),L=F}if(g.length>2&&this.options.orientCenters&&(this.cubies[g[0]].length===1||this.duplicatedCubies[g[0]]>1)&&this.facecentermass[f].dist(this.basefaces[this.getfaceindex(f)].centermass())<be){let F=this.faces[this.cubies[g[0]][0]];for(let A=0;A<g.length;A+=2){let b=this.faces[this.cubies[g[A]][0]],h=-1;for(let C=0;C<F.length;C++)if(b.get(C).dist(F.get(0))<be){h=C;break}if(h<0)throw new Error(\"Couldn't find rotation of center faces; ignoring for now.\");g[A+1]=h,F=F.rotate(this.moverotations[n][0])}}if(g.length===2&&this.options.orientCenters)for(let F=1;F<this.movesetorders[n];F++)m===0?g.push(g[0],F):g.push(g[0],(this.movesetorders[n]-F)%this.movesetorders[n]);if(g.length>2&&!a[g[0]]){if(g.length!==2*this.movesetorders[n])throw new Error(\"Bad length in perm gen\");for(let F of g)u[m].push(F)}for(let F=0;F<g.length;F+=2)a[g[F]]=!0}for(let f=0;f<u.length;f++)u[f]=u[f].slice();r.push(u)}if(this.cmovesbyslice=r,this.options.moveList){let n=[];for(let o of this.options.moveList)n.push(this.parsemove(o));this.parsedmovelist=n}this.facelisthash.clear(),this.facecentermass=[],Yi(e)}getboundarygeometry(){return{baseplanes:this.baseplanes,facenames:this.facenames,faceplanes:this.faceplanes,vertexnames:this.vertexnames,edgenames:this.edgenames,geonormals:this.geonormals}}getmovesets(e){let r=this.moveplanesets[e].length,n=[];if(this.parsedmovelist!==void 0)for(let o of this.parsedmovelist)o[1]===e&&(o[4]?n.push([o[2],o[3]]):n.push([r-o[3],r-o[2]]),n.push(o[5]));else if(this.options.vertexMoves&&!this.options.allMoves){let o=this.movesetgeos[e];if(o[1]!==o[3])for(let l=0;l<r;l++)o[1]!==\"v\"?(this.options.outerBlockMoves?n.push([l+1,r]):n.push([l+1]),n.push(1)):(this.options.outerBlockMoves?n.push([0,l]):n.push([l,l]),n.push(1))}else for(let o=0;o<=r;o++)!this.options.allMoves&&o+o===r||(this.options.outerBlockMoves?o+o>r?n.push([o,r]):n.push([0,o]):n.push([o,o]),n.push(1));if(this.fixedCubie>=0){let o=this.keyface3(this.faces[this.cubies[this.fixedCubie][0]])[e],l=[];for(let i=0;i<n.length;i+=2){let s=n[i];if(o>=s[0]&&o<=s[1])if(s[0]===0)s=[s[1]+1,r];else if(r===s[1])s=[0,s[0]-1];else throw Error(\"fixed cubie option would disconnect move\");let u=!1;for(let a=0;a<l.length;a+=2)if(l[a][0]===s[0]&&l[a][1]===s[1]&&l[a+1]===n[i+1]){u=!0;break}u||(l.push(s),l.push(n[i+1]))}n=l}return n}graybyori(e){let r=this.cubies[e].length;return this.duplicatedCubies[e]&&(r=1),r===1&&(this.options.grayCenters||!this.options.includeCenterOrbits)||r===2&&(this.options.grayEdges||!this.options.includeEdgeOrbits)||r>2&&(this.options.grayCorners||!this.options.includeCornerOrbits)}skipbyori(e){let r=this.cubies[e].length;return this.duplicatedCubies[e]&&(r=1),r===1&&!this.options.includeCenterOrbits||r===2&&!this.options.includeEdgeOrbits||r>2&&!this.options.includeCornerOrbits}skipcubie(e){return this.skipbyori(e)}header(e){return e+S1+`\n`+e+`\n`}writegap(){let e=this.getOrbitsDef(!1),r=[],n=[];for(let l=0;l<e.moveops.length;l++){let i=\"M_\"+Ki(this.notationMapper,e.movenames[l]),s=!1;i[i.length-1]===\"'\"&&(i=i.substring(0,i.length-1),s=!0),n.push(i),s?r.push(i+\":=\"+e.moveops[l].toPerm().inv().toGap()+\";\"):r.push(i+\":=\"+e.moveops[l].toPerm().toGap()+\";\")}r.push(\"Gen:=[\"),r.push(n.join(\",\")),r.push(\"];\");let o=e.solved.identicalPieces();return r.push(\"ip:=[\"+o.map(l=>\"[\"+l.map(i=>i+1).join(\",\")+\"]\").join(\",\")+\"];\"),r.push(\"# Size(Group(Gen));\"),r.push(\"# Size(Stabilizer(Group(Gen), ip, OnTuplesSets));\"),r.push(\"\"),this.header(\"# \")+r.join(`\n`)}writeksolve(e=\"PuzzleGeometryPuzzle\"){let r=this.getOrbitsDef(!1);return this.header(\"# \")+r.toKsolve(e,this.notationMapper).join(`\n`)}getKPuzzleDefinition(e=!0,r=!0){let o=this.getOrbitsDef(e,r).toKPuzzleDefinition(r);if(o.exprimentalPuzzleDescription=this.puzzleDescription,!o)throw new Error(\"Missing definition!\");return o}getMoveFromBits(e,r,n,o,l,i){let s=[],u=[],a=[];for(let L of this.cubieords)u.push(Et(L)),a.push(er(L));for(let L=e[0];L<=e[1];L++){let B=o[L];for(let p=0;p<B.length;p+=2*i){let m=B.slice(p,p+2*i),F=this.cubiesetnums[m[0]];for(let h=0;h<m.length;h+=2)m[h]=this.cubieordnums[m[h]];let A=2,b=3;n&&(A=m.length-2,b=m.length-1),u[F]===Et(this.cubieords[F])&&(u[F]=u[F].slice(),this.orbitoris[F]>1&&!this.options.fixedOrientation&&(a[F]=a[F].slice()));for(let h=0;h<m.length;h+=2)u[F][m[(h+A)%m.length]]=m[h],this.orbitoris[F]>1&&!this.options.fixedOrientation&&(a[F][m[h]]=(m[(h+b)%m.length]-m[(h+1)%m.length]+2*this.orbitoris[F])%this.orbitoris[F])}}let f=new Nt(Et(24),er(24),1);for(let L=0;L<this.cubiesetnames.length;L++)if(!(l&&!l[L]))if(this.orbitoris[L]===1||this.options.fixedOrientation)u[L]===Et(f.perm.length)?(u[L]!==f.perm&&(f=new Nt(u[L],a[L],1)),s.push(f)):s.push(new Nt(u[L],a[L],1));else{let B=new Array(a[L].length);for(let p=0;p<u[L].length;p++)B[p]=a[L][u[L][p]];s.push(new Nt(u[L],B,this.orbitoris[L]))}let g=new tr(s);return r!==1&&(g=g.mulScalar(r)),g}omitSet(e){for(let r of this.options.excludeOrbits)if(r===e)return!0;return!1}diffmvsets(e,r,n,o){for(let l=0;l<e.length;l+=2){let i=!1;for(let s=0;!i&&s<r.length;s+=2)o?e[l][0]+r[s][1]===n&&e[l][1]+r[s][0]===n&&e[l+1]===r[s+1]&&(i=!0):e[l][0]===r[s][0]&&e[l][1]===r[s][1]&&e[l+1]===r[s+1]&&(i=!0);if(!i)return!0}return!1}getOrbitsDef(e,r=!0){let n=[];if(e)for(let L=0;L<this.cubiesetnames.length;L++)n.push(1);let o=[],l=[],i=[],s=[];for(let L=0;L<this.moveplanesets.length;L++){let B=this.getmovesets(L);i.push(B),this.options.addRotations?s.push(1):s.push(0)}if(this.options.moveList&&this.options.addRotations){for(let L=0;L<this.moverotations.length;L++)s[L]=0;for(let L=0;L<this.moveplanesets.length;L++)for(let B=0;B<this.moverotations.length;B++){let p=this.moveplanenormals[L];for(let m=1;m*2<=this.movesetorders[B];m++){if(p=p.rotatepoint(this.moverotations[B][0]),s[B]&m)continue;let F=-1,A=!1;for(let h=0;h<this.moveplanenormals.length;h++)if(p.dist(this.moveplanenormals[h])<be){F=h;break}else if(p.dist(this.moveplanenormals[h].smul(-1))<be){F=h,A=!0;break}if(F<0)throw new Error(\"Could not find rotation\");let b=i[F];(b.length!==i[L].length||this.moveplanesets[L].length!==this.moveplanesets[F].length||this.diffmvsets(b,i[L],this.moveplanesets[F].length,A))&&(s[B]|=m)}}for(let L=0;L<this.moverotations.length;L++)if(s[L]===0)s[L]=1;else if(s[L]===1)this.movesetorders[L]>3?s[L]=2:s[L]=0;else if(s[L]===3)s[L]=0;else throw new Error(\"Impossible addrot val\")}for(let L=0;L<this.moveplanesets.length;L++)s[L]!==0&&(i[L].push([0,this.moveplanesets[L].length]),i[L].push(s[L]));for(let L=0;L<this.moveplanesets.length;L++){let B=i[L],p=this.movesetorders[L];for(let A=0;A<B.length;A+=2)for(let b=0;b<A;b+=2)if(B[A]===B[b]&&B[A+1]===B[b+1])throw new Error(\"Redundant moves in moveset.\");let m=[];for(let A=0;A<B.length;A+=2)for(let b=B[A][0];b<=B[A][1];b++)m[b]=1;let F=this.cmovesbyslice[L];for(let A=0;A<F.length;A++){if(m[A]!==1)continue;let b=F[A];for(let h=0;h<b.length;h+=2*p){if(this.skipcubie(b[h]))continue;let C=this.cubiesetnums[b[h]];n[C]=1}}}for(let L=0;L<this.cubiesetnames.length;L++)if(!!n[L]){if(this.omitSet(this.cubiesetnames[L])){n[L]=0;continue}o.push(this.cubiesetnames[L]),l.push(new ro(this.cubieords[L],this.options.fixedOrientation?1:this.orbitoris[L]))}let u=[];for(let L=0;L<this.cubiesetnames.length;L++){if(!n[L]||this.omitSet(this.cubiesetnames[L]))continue;let B=[],p=[];for(let m=0;m<this.cubieords[L];m++){if(e)B.push(m);else{let F=this.cubiesetcubies[L][m];B.push(this.cubievaluemap[F])}p.push(0)}u.push(new Nt(B,p,this.options.fixedOrientation?1:this.orbitoris[L]))}let a=[],f=[];if(r)for(let L=0;L<this.moveplanesets.length;L++){let p=this.moveplanesets[L].length,m=i[L],F=this.movesetgeos[L];for(let A=0;A<m.length;A+=2){let b=m[A],h=z1(F,b,p),C=h[0],E=h[1];m[A+1]===1?a.push(C):a.push(C+m[A+1]);let j=this.getMoveFromBits(b,m[A+1],E,this.cmovesbyslice[L],n,this.movesetorders[L]);f.push(j)}}let g=new rn(o,l,new nn(u),a,f);return this.options.optimizeOrbits&&(g=g.optimize()),this.options.scrambleAmount!==0&&g.scramble(this.options.scrambleAmount),g}getMovesAsPerms(){return this.getOrbitsDef(!1).moveops.map(e=>e.toPerm())}showcanon(e){P0(this.getOrbitsDef(!1),e)}getsolved(){let e=[];for(let r=0;r<this.baseFaceCount;r++)for(let n=0;n<this.stickersperface;n++)e.push(r);return new ft(e)}getOrientationRotation(e){let[r,[n,o,l]]=e[0],i=new _(0,n,-o,l),[s,[u,a,f]]=e[1],g=new _(0,u,-a,f),L=null,B=null,p=this.swizzler.unswizzle(r),m=this.swizzler.unswizzle(s);for(let h of this.geonormals)p===h[1]&&(L=h[0]),m===h[1]&&(B=h[0]);if(!L)throw new Error(\"Could not find feature \"+r);if(!B)throw new Error(\"Could not find feature \"+s);let F=L.pointrotation(i);return B.rotatepoint(F).unproject(i).pointrotation(g.unproject(i)).mul(F)}getInitial3DRotation(){let e=this.baseFaceCount,r=null;if(this.options.puzzleOrientation?r=this.options.puzzleOrientation:this.options.puzzleOrientations&&(r=this.options.puzzleOrientations[e]),r||(r=k1()[e]),!r)throw new Error(\"No default orientation?\");return this.getOrientationRotation(r)}generate2dmapping(e=800,r=500,n=10,o=!1,l=.92){e-=2*n,r-=2*n;function i(x,w){let P=x[1][0]-x[0][0],W=x[1][1]-x[0][1],H=2*Math.PI/w,ge=Math.cos(H),me=Math.sin(H);for(let Fe=2;Fe<w;Fe++){let ye=P*ge+W*me;W=W*ge-P*me,P=ye,x.push([x[Fe-1][0]+P,x[Fe-1][1]+W])}}this.genperms();let a=this.getboundarygeometry().facenames[0][0].length,f=this.net;if(f===null)throw new Error(\"No net?\");let g={},L=0,B=0,p=1,m=0;g[f[0][0]]=[[1,0],[0,0]],i(g[f[0][0]],a);for(let x of f){let w=x[0];if(!g[w])throw new Error(\"Bad edge description; first edge not connected.\");for(let P=1;P<x.length;P++){let W=x[P];W===\"\"||g[W]||(g[W]=[g[w][P%a],g[w][(P+a-1)%a]],i(g[W],a))}}for(let x in g){let w=g[x];for(let P of w)L=Math.min(L,P[0]),p=Math.max(p,P[0]),B=Math.min(B,P[1]),m=Math.max(m,P[1])}let F=Math.min(e/(p-L),r/(m-B)),A=.5*(e-F*(p+L)),b=.5*(r-F*(m+B)),h={},C=this.getboundarygeometry(),E={},j=[[F+A,b],[A,b]];E[f[0][0]]=j,i(E[f[0][0]],a),h[this.facenames[0][1]]=this.project2d(0,0,[new _(0,j[0][0],j[0][1],0),new _(0,j[1][0],j[1][1],0)]);let te=[];te[0]=0;for(let x of f){let w=x[0];if(!E[w])throw new Error(\"Bad edge description; first edge not connected.\");let P=-1;for(let H=0;H<C.facenames.length;H++)if(w===C.facenames[H][1]){P=H;break}if(P<0)throw new Error(\"Could not find first face name \"+w);let W=C.facenames[P][0];for(let H=1;H<x.length;H++){let ge=x[H];if(ge===\"\"||E[ge])continue;E[ge]=[E[w][H%a],E[w][(H+a-1)%a]],i(E[ge],a);let me=te[P],Fe=W[(me+H)%a].sum(W[(me+H+a-1)%a]).smul(.5),ye=ml(C.edgenames,Fe),xt=C.edgenames[ye][1],ze=C1(xt,this.facenames),Xe=ze[w===ze[0]?1:0],xe=-1;for(let v=0;v<C.facenames.length;v++)if(Xe===C.facenames[v][1]){xe=v;break}if(xe<0)throw new Error(\"Could not find second face name\");let d=C.facenames[xe][0];for(let v=0;v<d.length;v++)if(d[v].sum(d[(v+1)%a]).smul(.5).dist(Fe)<=be){let K=E[w][(H+a-1)%a],ne=E[w][H%a];te[xe]=v,h[Xe]=this.project2d(xe,v,[new _(0,ne[0],ne[1],0),new _(0,K[0],K[1],0)]);break}}}let I=0,re=0,y=this.getInitial3DRotation();for(let x of this.faces){o&&(x=x.rotate(y));for(let w=0;w<x.length;w++)I=Math.max(I,Math.abs(x.get(w).b)),re=Math.max(re,Math.abs(x.get(w).c))}let z=Math.min(r/re/2,(e-n)/I/4);return(x,w)=>{if(o){w=w.rotatepoint(y);let P=.5*n+.25*e,W=this.baseplanes[x].rotateplane(y).d<0?1:-1;return[n+e*.5+W*(P-w.b*z),n+r*.5+w.c*z]}else{let P=h[this.facenames[x][1]];return[n+l*w.dot(P[0])+P[2].b,n+r-l*w.dot(P[1])-P[2].c]}}}generatesvg(e=800,r=500,n=10,o=!1){let l=this.generate2dmapping(e,r,n,o);function i(L,B,p){return'<polygon id=\"'+L+'\" class=\"sticker\" style=\"fill: '+p+'\" points=\"'+B.map(m=>m[0]+\" \"+m[1]).join(\" \")+`\"/>\n`}let s=this.getsolved(),u=[],a=[];for(let L=0;L<this.baseFaceCount;L++)u[L]=this.colors[this.facenames[L][1]];for(let L=0;L<this.faces.length;L++){let B=this.faces[L],p=Math.floor(L/this.stickersperface),m=[];for(let F=0;F<B.length;F++)m.push(l(p,B.get(F)));a.push(m)}let f=[];for(let L=0;L<this.baseFaceCount;L++){f.push(\"<g>\"),f.push(\"<title>\"+this.facenames[L][1]+`</title>\n`);for(let B=0;B<this.stickersperface;B++){let p=L*this.stickersperface+B,m=this.facetocubie[p],F=this.facetoord[p],A=this.cubiesetnums[m],b=this.cubieordnums[m],h=this.graybyori(m)?\"#808080\":u[s.p[p]],C=this.cubiesetnames[A]+\"-l\"+b+\"-o\"+F;if(f.push(i(C,a[p],h)),this.duplicatedFaces[p])for(let E=1;E<this.duplicatedFaces[p];E++)C=this.cubiesetnames[A]+\"-l\"+b+\"-o\"+E,f.push(i(C,a[p],h))}f.push(\"</g>\")}return`<svg id=\"svg\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 800 500\">\n<style type=\"text/css\"><![CDATA[.sticker { stroke: #000000; stroke-width: 1px; }]]></style>\n`+f.join(\"\")+\"</svg>\"}get3d(e){let r=[],n=this.getInitial3DRotation(),o=[],l=.52*this.basefaces[0].get(0).len();for(let a=0;a<this.basefaces.length;a++){let f=this.basefaces[a].rotate(n),g=this.facenames[a][1];o.push({coords:Xi(f,l),name:g})}for(let a=0;a<this.faces.length;a++){let f=Math.floor(a/this.stickersperface),g=this.facetocubie[a],L=this.facetoord[a],B=this.cubiesetnums[g],p=this.cubieordnums[g],m=this.graybyori(g)?\"#808080\":this.colors[this.facenames[f][1]];e?.stickerColors&&(m=e.stickerColors[a]);let F=this.faces[a].rotate(n);r.push({coords:Xi(F,l),color:m,orbit:this.cubiesetnames[B],ord:p,ori:L,face:f});let A=F;if(this.duplicatedFaces[a]){let b=A.length/this.duplicatedFaces[a];for(let h=1;h<this.duplicatedFaces[a];h++){for(let C=0;C<b;C++)A=A.rotateforward();r.push({coords:Xi(A,l),color:m,orbit:this.cubiesetnames[B],ord:p,ori:h,face:f,isDup:!0})}}}let i=[];for(let a=0;a<this.movesetgeos.length;a++){let f=this.movesetgeos[a],g=this.movesetorders[a];for(let L of this.geonormals)f[0]===L[1]&&f[1]===L[2]&&(i.push({coordinates:cl(L[0].rotatepoint(n),1),quantumMove:new c(f[0]),order:g}),i.push({coordinates:cl(L[0].rotatepoint(n).smul(-1),1),quantumMove:new c(f[2]),order:g}))}let s=this.generate2dmapping(2880,2160,0,!1,1),u=function(){let a=n.invrot();return function(f,g){let L=new _(0,g[0]*l,-g[1]*l,g[2]*l);L=L.rotatepoint(a);let B=s(f,L);return B[0]/=2880,B[1]=1-B[1]/2160,B}}().bind(this);return{stickers:r,faces:o,axis:i,unswizzle:this.unswizzle.bind(this),notationMapper:this.notationMapper,textureMapper:{getuv:u}}}getGeoNormal(e){let r=this.getInitial3DRotation(),n=this.swizzler.unswizzle(e);for(let o of this.geonormals)if(n===o[1]){let l=cl(o[0].rotatepoint(r),1);return Math.abs(l[0])<be&&Math.abs(l[2])<be&&(l[0]=0,l[2]=1e-6),l}}getfaceindex(e){let r=this.stickersperface;return Math.floor(e/r)}textForTwizzleExplorer(){return`Faces ${this.baseplanerot.length}\nStickers per face ${this.stickersperface}\nShort edge ${this.shortedge}\nCubies ${this.cubies.length}\nEdge distance ${this.edgedistance}\nVertex distance ${this.vertexdistance}`}writeSchreierSims(e){let n=this.getOrbitsDef(!1).reassemblySize();e(`Reassembly size is ${n}`);let o=Bl(this.getMovesAsPerms(),e),l=n/o;e(`Ratio is ${l}`)}},br=class{constructor(e,r){this.pg=e;this.orbitNames=r.orbitnames}lookupMove(e){let r=this.pg.parseMove(e);if(this.pg.parsedmovelist){let i=!1;for(let s of this.pg.parsedmovelist)s[1]===r[1]&&s[2]===r[2]&&s[3]===r[3]&&s[4]===r[4]&&(i=!0);if(!i)return null}let n=[r[2],r[3]];if(!r[4]){let i=this.pg.moveplanesets[r[1]].length;n=[i-r[3],i-r[2]]}let o=this.pg.getMoveFromBits(n,r[5],!r[4],this.pg.cmovesbyslice[r[1]],void 0,this.pg.movesetorders[r[1]]);return rn.transformToKTransformationData(this.orbitNames,o)}}});var Ji={};Ue(Ji,{ExperimentalPGNotation:()=>br,PuzzleGeometry:()=>pl,Quat:()=>_,getPG3DNamedPuzzles:()=>q0,getPuzzleDescriptionString:()=>V0,getPuzzleGeometryByDesc:()=>Zi,getPuzzleGeometryByName:()=>ln,parseOptions:()=>k0,parsePuzzleDescription:()=>to,schreierSims:()=>Bl});var oo=U(()=>{sl();Ii();gl();Vi();sl()});async function gt(t){return(await Promise.resolve().then(()=>(oo(),Ji))).getPuzzleGeometryByName(t,{allMoves:!0,orientCenters:!0,addRotations:!0})}async function P1(t){let e=await gt(t),r=e.getKPuzzleDefinition(!0);r.name=t;let n=await Promise.resolve().then(()=>(oo(),Ji)),o=new n.ExperimentalPGNotation(e,e.getOrbitsDef(!0));return new Ie(r,{experimentalPGNotation:o})}function lo(t){return $t(()=>P1(t))}function Sr(t,e,r){let n={id:t,fullName:e,kpuzzle:lo(t),svg:async()=>(await gt(t)).generatesvg(),pg:async()=>gt(t)};return r?.inventedBy&&(n.inventedBy=r.inventedBy),r?.inventionYear&&(n.inventionYear=r.inventionYear),n}function sn(t,e,r){let n=Sr(t,e,r);return n.appearance=Dt.bind(Dt,n),n.stickerings=$r,n}var xr=U(()=>{Ve();en();Xn()});var H0={};Ue(H0,{cube2x2x2KPuzzleDefinition:()=>kt});var kt,Y0=U(()=>{kt={name:\"2x2x2\",orbits:{CORNERS:{numPieces:8,numOrientations:3}},startStateData:{CORNERS:{pieces:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]}},moves:{U:{CORNERS:{permutation:[1,2,3,0,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]}},y:{CORNERS:{permutation:[1,2,3,0,7,4,5,6],orientation:[0,0,0,0,0,0,0,0]}},x:{CORNERS:{permutation:[4,0,3,5,7,6,2,1],orientation:[2,1,2,1,1,2,1,2]}},L:{CORNERS:{permutation:[0,1,6,2,4,3,5,7],orientation:[0,0,2,1,0,2,1,0]}},F:{CORNERS:{permutation:[3,1,2,5,0,4,6,7],orientation:[1,0,0,2,2,1,0,0]}},R:{CORNERS:{permutation:[4,0,2,3,7,5,6,1],orientation:[2,1,0,0,1,0,0,2]}},B:{CORNERS:{permutation:[0,7,1,3,4,5,2,6],orientation:[0,2,1,0,0,0,2,1]}},D:{CORNERS:{permutation:[0,1,2,3,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]}},z:{CORNERS:{permutation:[3,2,6,5,0,4,7,1],orientation:[1,2,1,2,2,1,2,1]}}}};kt.moves.Rv=kt.moves.x;kt.moves.Uv=kt.moves.y;kt.moves.Fv=kt.moves.z;kt.moves.Lv={CORNERS:{permutation:[1,7,6,2,0,3,5,4],orientation:[2,1,2,1,1,2,1,2]}};kt.moves.Dv={CORNERS:{permutation:[3,0,1,2,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]}};kt.moves.Bv={CORNERS:{permutation:[4,7,1,0,5,3,2,6],orientation:[1,2,1,2,2,1,2,1]}}});var Z0={};Ue(Z0,{default:()=>M1});var M1,X0=U(()=>{M1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.0//EN\"\n \"http://www.w3.org/TR/2001/REC-SVG-20050904/DTD/svg11.dtd\">\n<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 520 394\" preserveAspectRatio=\"xMidYMid meet\">\n <title>2x2x2</title>\n <defs>\n <g id=\"sticker\">\n <rect x=\"0\" y=\"0\" width=\"1\" height=\"1\" stroke=\"black\" stroke-width=\"0.04px\" />\n </g>\n </defs>\n <g id=\"puzzle\" transform=\"translate(5, 5) scale(60)\">\n <use id=\"CORNERS-l0-o0\" xlink:href=\"#sticker\" transform=\"translate(3.2, 1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l0-o1\" xlink:href=\"#sticker\" transform=\"translate(4.4, 2.2)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l0-o2\" xlink:href=\"#sticker\" transform=\"translate(3.2, 2.2)\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS-l1-o0\" xlink:href=\"#sticker\" transform=\"translate(3.2, 0)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l1-o1\" xlink:href=\"#sticker\" transform=\"translate(6.6, 2.2)\" style=\"fill: #26f\"/>\n <use id=\"CORNERS-l1-o2\" xlink:href=\"#sticker\" transform=\"translate(5.4, 2.2)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l2-o0\" xlink:href=\"#sticker\" transform=\"translate(2.2, 0)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l2-o1\" xlink:href=\"#sticker\" transform=\"translate(0, 2.2)\" style=\"fill: orange\"/>\n <use id=\"CORNERS-l2-o2\" xlink:href=\"#sticker\" transform=\"translate(7.6, 2.2)\" style=\"fill: #26f\"/>\n\n <use id=\"CORNERS-l3-o0\" xlink:href=\"#sticker\" transform=\"translate(2.2, 1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l3-o1\" xlink:href=\"#sticker\" transform=\"translate(2.2, 2.2)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l3-o2\" xlink:href=\"#sticker\" transform=\"translate(1, 2.2)\" style=\"fill: orange\"/>\n\n <use id=\"CORNERS-l4-o0\" xlink:href=\"#sticker\" transform=\"translate(3.2, 4.4)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l4-o1\" xlink:href=\"#sticker\" transform=\"translate(3.2, 3.2)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l4-o2\" xlink:href=\"#sticker\" transform=\"translate(4.4, 3.2)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l5-o0\" xlink:href=\"#sticker\" transform=\"translate(2.2, 4.4)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l5-o1\" xlink:href=\"#sticker\" transform=\"translate(1, 3.2)\" style=\"fill: orange\"/>\n <use id=\"CORNERS-l5-o2\" xlink:href=\"#sticker\" transform=\"translate(2.2, 3.2)\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS-l6-o0\" xlink:href=\"#sticker\" transform=\"translate(2.2, 5.4)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l6-o1\" xlink:href=\"#sticker\" transform=\"translate(7.6, 3.2)\" style=\"fill: #26f\"/>\n <use id=\"CORNERS-l6-o2\" xlink:href=\"#sticker\" transform=\"translate(0, 3.2)\" style=\"fill: orange\"/>\n\n <use id=\"CORNERS-l7-o0\" xlink:href=\"#sticker\" transform=\"translate(3.2, 5.4)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l7-o1\" xlink:href=\"#sticker\" transform=\"translate(5.4, 3.2)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l7-o2\" xlink:href=\"#sticker\" transform=\"translate(6.6, 3.2)\" style=\"fill: #26f\"/>\n </g>\n\n</svg>`});var io,J0=U(()=>{Ve();xr();Xn();en();io={id:\"2x2x2\",fullName:\"2\\xD72\\xD72 Cube\",kpuzzle:$t(async()=>new Ie((await Promise.resolve().then(()=>(Y0(),H0))).cube2x2x2KPuzzleDefinition)),svg:async()=>(await Promise.resolve().then(()=>(X0(),Z0))).default,pg:async()=>gt(\"2x2x2\"),appearance:t=>Dt(io,t),stickerings:$r}});var $0={};Ue($0,{default:()=>G1});var G1,e2=U(()=>{G1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.0//EN\"\n \"http://www.w3.org/TR/2001/REC-SVG-20050904/DTD/svg11.dtd\">\n<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 518 392\" preserveAspectRatio=\"xMidYMid meet\">\n <title>3x3x3</title>\n <defs>\n <g id=\"sticker\">\n <rect x=\"0\" y=\"0\" width=\"1\" height=\"1\" stroke=\"black\" stroke-width=\"0.04px\" />\n </g>\n </defs>\n\n<!-- 0 1 2 3 4 5 6 7 8 9 10 11 -->\n<!-- | | | | | | | | | | | |<- -->\n<!-- 0 - . . . -->\n<!-- 1 - . . . -->\n<!-- 2 - . . . -->\n<!-- 3 - . . . . . . . . . . . . -->\n<!-- 4 - . . . . . . . . . . . . -->\n<!-- 5 - . . . . . . . . . . . . -->\n<!-- 6 - . . . -->\n<!-- 7 - . . . -->\n<!-- 8 - . . . -->\n\n <g id=\"puzzle\" transform=\"translate(5,5) scale(40)\">\n <!-- CORNERS -->\n <use id=\"CORNERS-l0-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,2.1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l0-o1\" xlink:href=\"#sticker\" transform=\"translate(6.5,3.3)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l0-o2\" xlink:href=\"#sticker\" transform=\"translate(5.3,3.3)\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS-l1-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,0.1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l1-o1\" xlink:href=\"#sticker\" transform=\"translate(9.7,3.3)\" style=\"fill: #26f\"/>\n <use id=\"CORNERS-l1-o2\" xlink:href=\"#sticker\" transform=\"translate(8.5,3.3)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l2-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,0.1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l2-o1\" xlink:href=\"#sticker\" transform=\"translate(0.1,3.3)\" style=\"fill: orange\"/>\n <use id=\"CORNERS-l2-o2\" xlink:href=\"#sticker\" transform=\"translate(11.7,3.3)\" style=\"fill: #26f\"/>\n\n <use id=\"CORNERS-l3-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,2.1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l3-o1\" xlink:href=\"#sticker\" transform=\"translate(3.3,3.3)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l3-o2\" xlink:href=\"#sticker\" transform=\"translate(2.1,3.3)\" style=\"fill: orange\"/>\n\n <use id=\"CORNERS-l4-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,6.5)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l4-o1\" xlink:href=\"#sticker\" transform=\"translate(5.3,5.3)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l4-o2\" xlink:href=\"#sticker\" transform=\"translate(6.5,5.3)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l5-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,6.5)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l5-o1\" xlink:href=\"#sticker\" transform=\"translate(2.1,5.3)\" style=\"fill: orange\"/>\n <use id=\"CORNERS-l5-o2\" xlink:href=\"#sticker\" transform=\"translate(3.3,5.3)\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS-l6-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,8.5)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l6-o1\" xlink:href=\"#sticker\" transform=\"translate(11.7,5.3)\" style=\"fill: #26f\"/>\n <use id=\"CORNERS-l6-o2\" xlink:href=\"#sticker\" transform=\"translate(0.1,5.3)\" style=\"fill: orange\"/>\n\n <use id=\"CORNERS-l7-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,8.5)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l7-o1\" xlink:href=\"#sticker\" transform=\"translate(8.5,5.3)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l7-o2\" xlink:href=\"#sticker\" transform=\"translate(9.7,5.3)\" style=\"fill: #26f\"/>\n\n <!-- EDGES -->\n <use id=\"EDGES-l0-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,2.1)\" style=\"fill: white\"/>\n <use id=\"EDGES-l0-o1\" xlink:href=\"#sticker\" transform=\"translate(4.3,3.3)\" style=\"fill: limegreen\"/>\n\n <use id=\"EDGES-l1-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,1.1)\" style=\"fill: white\"/>\n <use id=\"EDGES-l1-o1\" xlink:href=\"#sticker\" transform=\"translate(7.5,3.3)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l2-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,0.1)\" style=\"fill: white\"/>\n <use id=\"EDGES-l2-o1\" xlink:href=\"#sticker\" transform=\"translate(10.7,3.3)\" style=\"fill: #26f\"/>\n\n <use id=\"EDGES-l3-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,1.1)\" style=\"fill: white\"/>\n <use id=\"EDGES-l3-o1\" xlink:href=\"#sticker\" transform=\"translate(1.1,3.3)\" style=\"fill: orange\"/>\n\n <use id=\"EDGES-l4-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,6.5)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l4-o1\" xlink:href=\"#sticker\" transform=\"translate(4.3,5.3)\" style=\"fill: limegreen\"/>\n\n <use id=\"EDGES-l5-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,7.5)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l5-o1\" xlink:href=\"#sticker\" transform=\"translate(7.5,5.3)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l6-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,8.5)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l6-o1\" xlink:href=\"#sticker\" transform=\"translate(10.7,5.3)\" style=\"fill: #26f\"/>\n\n <use id=\"EDGES-l7-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,7.5)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l7-o1\" xlink:href=\"#sticker\" transform=\"translate(1.1,5.3)\" style=\"fill: orange\"/>\n\n <use id=\"EDGES-l8-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,4.3)\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l8-o1\" xlink:href=\"#sticker\" transform=\"translate(6.5,4.3)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l9-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,4.3)\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l9-o1\" xlink:href=\"#sticker\" transform=\"translate(2.1,4.3)\" style=\"fill: orange\"/>\n\n <use id=\"EDGES-l10-o0\" xlink:href=\"#sticker\" transform=\"translate(9.7,4.3)\" style=\"fill: #26f\"/>\n <use id=\"EDGES-l10-o1\" xlink:href=\"#sticker\" transform=\"translate(8.5,4.3)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l11-o0\" xlink:href=\"#sticker\" transform=\"translate(11.7,4.3)\" style=\"fill: #26f\"/>\n <use id=\"EDGES-l11-o1\" xlink:href=\"#sticker\" transform=\"translate(0.1,4.3)\" style=\"fill: orange\"/>\n\n <!-- CENTERS -->\n <!-- TODO: Allow the same sticker to be reused for multiple orientations -->\n <use id=\"CENTERS-l0-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,1.1)\" style=\"fill: white\"/>\n <use id=\"CENTERS-l0-o1\" xlink:href=\"#sticker\" transform=\"translate(4.3,1.1)\" style=\"fill: white\"/>\n <use id=\"CENTERS-l0-o2\" xlink:href=\"#sticker\" transform=\"translate(4.3,1.1)\" style=\"fill: white\"/>\n <use id=\"CENTERS-l0-o3\" xlink:href=\"#sticker\" transform=\"translate(4.3,1.1)\" style=\"fill: white\"/>\n\n <use id=\"CENTERS-l1-o0\" xlink:href=\"#sticker\" transform=\"translate(1.1,4.3)\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o1\" xlink:href=\"#sticker\" transform=\"translate(1.1,4.3)\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o2\" xlink:href=\"#sticker\" transform=\"translate(1.1,4.3)\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o3\" xlink:href=\"#sticker\" transform=\"translate(1.1,4.3)\" style=\"fill: orange\"/>\n\n <use id=\"CENTERS-l2-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,4.3)\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o1\" xlink:href=\"#sticker\" transform=\"translate(4.3,4.3)\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o2\" xlink:href=\"#sticker\" transform=\"translate(4.3,4.3)\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o3\" xlink:href=\"#sticker\" transform=\"translate(4.3,4.3)\" style=\"fill: limegreen\"/>\n\n <use id=\"CENTERS-l3-o0\" xlink:href=\"#sticker\" transform=\"translate(7.5,4.3)\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o1\" xlink:href=\"#sticker\" transform=\"translate(7.5,4.3)\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o2\" xlink:href=\"#sticker\" transform=\"translate(7.5,4.3)\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o3\" xlink:href=\"#sticker\" transform=\"translate(7.5,4.3)\" style=\"fill: red\"/>\n\n <use id=\"CENTERS-l4-o0\" xlink:href=\"#sticker\" transform=\"translate(10.7,4.3)\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o1\" xlink:href=\"#sticker\" transform=\"translate(10.7,4.3)\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o2\" xlink:href=\"#sticker\" transform=\"translate(10.7,4.3)\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o3\" xlink:href=\"#sticker\" transform=\"translate(10.7,4.3)\" style=\"fill: #26f\"/>\n\n <use id=\"CENTERS-l5-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,7.5)\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o1\" xlink:href=\"#sticker\" transform=\"translate(4.3,7.5)\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o2\" xlink:href=\"#sticker\" transform=\"translate(4.3,7.5)\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o3\" xlink:href=\"#sticker\" transform=\"translate(4.3,7.5)\" style=\"fill: yellow\"/>\n </g>\n\n</svg>`});var t2={};Ue(t2,{default:()=>T1});var T1,r2=U(()=>{T1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"288px\" height=\"288px\" viewBox=\"-16 -16 288 288\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>3x3x3 LL</title>\n <defs>\n <g id=\"sticker\">\n <rect x=\"-10\" y=\"-10\" width=\"1\" height=\"1\" stroke=\"black\" stroke-width=\"0.04px\" />\n </g>\n </defs>\n <g id=\"3x3x3-LL\" stroke=\"none\" stroke-width=\"4\" style=\"none\" stroke-linejoin=\"round\">\n <rect id=\"CENTERS-l0-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"96\" width=\"64\" height=\"64\"></rect>\n <rect id=\"CENTERS-l0-o1\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"96\" width=\"64\" height=\"64\"></rect>\n <rect id=\"CENTERS-l0-o2\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"96\" width=\"64\" height=\"64\"></rect>\n <rect id=\"CENTERS-l0-o3\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"96\" width=\"64\" height=\"64\"></rect>\n\n <rect id=\"CORNERS-l0-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"160\" y=\"160\" width=\"64\" height=\"64\"></rect>\n <polygon id=\"CORNERS-l0-o1\" stroke=\"#000000\" style=\"fill: red\" points=\"224 160 252 160 252 252 224 224\"></polygon>\n <polygon id=\"CORNERS-l0-o2\" stroke=\"#000000\" style=\"fill: limegreen\" transform=\"translate(206, 238) scale(1, -1) rotate(-90) translate(-206, -238) \" points=\"192 192 220 192 220 284 192 256\"></polygon>\n <rect id=\"CORNERS-l1-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"160\" y=\"32\" width=\"64\" height=\"64\"></rect>\n <polygon id=\"CORNERS-l1-o1\" stroke=\"#000000\" style=\"fill: #26f\" transform=\"translate(206, 18) rotate(-90) translate(-206, -18) \" points=\"192 -28 220 -28 220 64 192 36\"></polygon>\n <polygon id=\"CORNERS-l1-o2\" stroke=\"#000000\" style=\"fill: red\" transform=\"translate(238, 50) scale(1, -1) translate(-238, -50) \" points=\"224 4 252 4 252 96 224 68\"></polygon>\n <rect id=\"CORNERS-l2-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"32\" y=\"32\" width=\"64\" height=\"64\"></rect>\n <polygon id=\"CORNERS-l2-o1\" stroke=\"#000000\" style=\"fill: orange\" transform=\"translate(18, 50) scale(-1, -1) translate(-18, -50) \" points=\"4 4 32 4 32 96 4 68\"></polygon>\n <polygon id=\"CORNERS-l2-o2\" stroke=\"#000000\" style=\"fill: #26f\" transform=\"translate(50, 18) scale(1, -1) rotate(90) translate(-50, -18) \" points=\"36 -28 64 -28 64 64 36 36\"></polygon>\n <rect id=\"CORNERS-l3-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"32\" y=\"160\" width=\"64\" height=\"64\"></rect>\n <polygon id=\"CORNERS-l3-o1\" stroke=\"#000000\" style=\"fill: limegreen\" transform=\"translate(50, 238) rotate(90) translate(-50, -238) \" points=\"36 192 64 192 64 284 36 256\"></polygon>\n <polygon id=\"CORNERS-l3-o2\" stroke=\"#000000\" style=\"fill: orange\" transform=\"translate(18, 206) scale(-1, 1) translate(-18, -206) \" points=\"4 160 32 160 32 252 4 224\"></polygon>\n\n <rect id=\"EDGES-l0-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"160\" width=\"64\" height=\"64\"></rect>\n <rect id=\"EDGES-l0-o1\" stroke=\"#000000\" style=\"fill: limegreen\" transform=\"translate(128, 238) scale(1, -1) rotate(90) translate(-128, -238) \" x=\"114\" y=\"206\" width=\"28\" height=\"64\"></rect>\n <rect id=\"EDGES-l1-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"160\" y=\"96\" width=\"64\" height=\"64\"></rect>\n <rect id=\"EDGES-l1-o1\" stroke=\"#000000\" style=\"fill: red\" x=\"224\" y=\"96\" width=\"28\" height=\"64\"></rect>\n <rect id=\"EDGES-l2-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"32\" width=\"64\" height=\"64\"></rect>\n <rect id=\"EDGES-l2-o1\" stroke=\"#000000\" style=\"fill: #26f\" transform=\"translate(128, 18) scale(1, -1) rotate(90) translate(-128, -18) \" x=\"114\" y=\"-14\" width=\"28\" height=\"64\"></rect>\n <rect id=\"EDGES-l3-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"32\" y=\"96\" width=\"64\" height=\"64\"></rect>\n <rect id=\"EDGES-l3-o1\" stroke=\"#000000\" style=\"fill: orange\" x=\"4\" y=\"96\" width=\"28\" height=\"64\"></rect>\n\n </g>\n <g style=\"opacity: 0\">\n <!-- CORNERS -->\n <use id=\"CORNERS-l4-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l4-o1\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l4-o2\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l5-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l5-o1\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n <use id=\"CORNERS-l5-o2\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS-l6-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l6-o1\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"CORNERS-l6-o2\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n\n <use id=\"CORNERS-l7-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l7-o1\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n <use id=\"CORNERS-l7-o2\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n\n <!-- EDGES -->\n <use id=\"EDGES-l4-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l4-o1\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n\n <use id=\"EDGES-l5-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l5-o1\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l6-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l6-o1\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n\n <use id=\"EDGES-l7-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l7-o1\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n\n <use id=\"EDGES-l8-o0\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l8-o1\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l9-o0\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l9-o1\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n\n <use id=\"EDGES-l10-o0\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"EDGES-l10-o1\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l11-o0\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"EDGES-l11-o1\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n\n <!-- CENTERS -->\n <!-- TODO: Allow the same sticker to be reused for multiple orientations -->\n <use id=\"CENTERS-l1-o0\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o1\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o2\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o3\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n\n <use id=\"CENTERS-l2-o0\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o1\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o2\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o3\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n\n <use id=\"CENTERS-l3-o0\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o1\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o2\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o3\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n\n <use id=\"CENTERS-l4-o0\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o1\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o2\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o3\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n\n <use id=\"CENTERS-l5-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o1\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o2\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o3\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n </g>\n</svg>`});var $i,n2=U(()=>{Ve();xr();en();$i={id:\"3x3x3\",fullName:\"3\\xD73\\xD73 Cube\",inventedBy:[\"Ern\\u0151 Rubik\"],inventionYear:1974,kpuzzle:async()=>Mi,svg:async()=>(await Promise.resolve().then(()=>(e2(),$0))).default,llSVG:async()=>(await Promise.resolve().then(()=>(r2(),t2))).default,pg:async()=>gt(\"3x3x3\"),appearance:t=>Dt($i,t),stickerings:$r}});var o2={};Ue(o2,{clockKPuzzleDefinition:()=>I1});var I1,l2=U(()=>{I1={name:\"Clock\",orbits:{DIALS:{numPieces:18,numOrientations:12},FACES:{numPieces:18,numOrientations:1},FRAME:{numPieces:1,numOrientations:2}},startStateData:{DIALS:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{pieces:[0],orientation:[0]}},moves:{UR_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,1,1,0,1,1,0,0,0,-1,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DR_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,1,1,0,1,1,0,0,0,0,0,0,-1,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DL_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},UL_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,0,1,1,0,0,0,0,0,0,-1,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},U_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,1,1,1,1,0,0,0,-1,0,-1,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},R_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,1,1,0,1,1,0,1,1,-1,0,0,0,0,0,-1,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},D_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,-1,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},L_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,0,1,1,0,1,1,0,0,0,-1,0,0,0,0,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},ALL_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,1,1,1,1,1,1,1,-1,0,-1,0,0,0,-1,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},y2:{DIALS:{permutation:[9,10,11,12,13,14,15,16,17,0,1,2,3,4,5,6,7,8],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[9,10,11,12,13,14,15,16,17,0,1,2,3,4,5,6,7,8],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[1]}},UL:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},UR:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DL:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DR:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}}}}});var i2={};Ue(i2,{default:()=>N1});var N1,s2=U(()=>{N1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 480 240\" preserveAspectRatio=\"xMidYMid meet\">\n <title>clock</title>\n <defs>\n <g id=\"hand\" transform=\"translate(-20, -20)\">\n <path d=\"M19.9995197,2.22079449 L23.8791657,19.0203611 C23.9580836,19.3338406 24,19.6620253 24,20 C24,22.209139 22.209139,24 20,24 C17.790861,24 16,22.209139 16,20 C16,19.6620253 16.0419164,19.3338406 16.1208343,19.0203611 L19.9995197,2.22079449 Z\"></path>\n </g>\n <g id=\"cardinal_hours\" style=\"fill: #FFFFFF\">\n <circle cx=\"0\" cy=\"24\" r=\"2\"></circle>\n <circle cx=\"-24\" cy=\"0\" r=\"2\"></circle>\n <circle cx=\"24\" cy=\"0\" r=\"2\"></circle>\n <circle cx=\"0\" cy=\"-24\" r=\"2\"></circle>\n </g>\n <g id=\"face_hours\">\n <g>\n <use xlink:href=\"#cardinal_hours\"/>\n </g>\n <g transform=\"rotate(30)\">\n <use xlink:href=\"#cardinal_hours\"/>\n </g>\n <g transform=\"rotate(60)\">\n <use xlink:href=\"#cardinal_hours\"/>\n </g>\n </g>\n <g id=\"pegs\" stroke=\"#000000\" style=\"fill: #FFD000\">\n <circle id=\"PEG4\" cx=\"90\" cy=\"90\" r=\"10\"></circle>\n <circle id=\"PEG3\" cx=\"30\" cy=\"90\" r=\"10\"></circle>\n <circle id=\"PEG2\" cx=\"90\" cy=\"30\" r=\"10\"></circle>\n <circle id=\"PEG1\" cx=\"30\" cy=\"30\" r=\"10\"></circle>\n </g>\n <g id=\"frame\" transform=\"translate(-24, -24)\">\n <path stroke=\"#000000\" d=\"M120,20 C137.495665,20 153.941932,24.4930026 168.247913,32.3881183 C171.855881,30.8514056 175.828512,30 180,30 C196.568542,30 210,43.4314575 210,60 C210,64.1714878 209.148594,68.1441192 207.610077,71.7536009 C215.506997,86.0580678 220,102.504335 220,120 C220,137.495665 215.506997,153.941932 207.611882,168.247913 C209.148594,171.855881 210,175.828512 210,180 C210,196.568542 196.568542,210 180,210 C175.828512,210 171.855881,209.148594 168.246399,207.610077 C153.941932,215.506997 137.495665,220 120,220 C102.504335,220 86.0580678,215.506997 71.7520869,207.611882 C68.1441192,209.148594 64.1714878,210 60,210 C43.4314575,210 30,196.568542 30,180 C30,175.828512 30.8514056,171.855881 32.3899234,168.246399 C24.4930026,153.941932 20,137.495665 20,120 C20,102.504335 24.4930026,86.0580678 32.3881183,71.7520869 C30.8514056,68.1441192 30,64.1714878 30,60 C30,43.4314575 43.4314575,30 60,30 C64.1714878,30 68.1441192,30.8514056 71.7536009,32.3899234 C86.0580678,24.4930026 102.504335,20 120,20 Z\"></path>\n </g>\n </defs>\n <g>\n <g transform=\"translate(24, 24)\">\n <use xlink:href=\"#frame\" id=\"FRAME-l0-o0\" style=\"fill: #0C5093\"/>\n <use xlink:href=\"#pegs\" transform=\"translate(36, 36)\"/>\n <g transform=\"translate(36, 36)\">\n <circle id=\"FACES-l0-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l0-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l0-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 36)\">\n <circle id=\"FACES-l1-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l1-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l1-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 36)\">\n <circle id=\"FACES-l2-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l2-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l2-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(36, 96)\">\n <circle id=\"FACES-l3-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l3-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l3-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 96)\">\n <circle id=\"FACES-l4-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l4-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l4-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 96)\">\n <circle id=\"FACES-l5-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l5-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l5-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(36, 156)\">\n <circle id=\"FACES-l6-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l6-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l6-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 156)\">\n <circle id=\"FACES-l7-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l7-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l7-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 156)\">\n <circle id=\"FACES-l8-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l8-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l8-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n </g>\n <g transform=\"translate(264, 24)\">\n <use xlink:href=\"#frame\" id=\"FRAME-l0-o1\" style=\"fill: #90B8DF\"/>\n <use xlink:href=\"#pegs\" transform=\"translate(36, 36)\"/>\n <g transform=\"translate(36, 36)\">\n <circle id=\"FACES-l9-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l9-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l9-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 36)\">\n <circle id=\"FACES-l10-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l10-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l10-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 36)\">\n <circle id=\"FACES-l11-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l11-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l11-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(36, 96)\">\n <circle id=\"FACES-l12-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l12-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l12-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 96)\">\n <circle id=\"FACES-l13-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l13-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l13-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 96)\">\n <circle id=\"FACES-l14-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l14-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l14-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(36, 156)\">\n <circle id=\"FACES-l15-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l15-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l15-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 156)\">\n <circle id=\"FACES-l16-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l16-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l16-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 156)\">\n <circle id=\"FACES-l17-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l17-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l17-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n </g>\n </g>\n</svg>`});var a2,u2=U(()=>{Ve();Xn();a2={id:\"clock\",fullName:\"Clock\",inventedBy:[\"Christopher C. Wiggs\",\"Christopher J. Taylor\"],inventionYear:1988,kpuzzle:$t(async()=>new Ie((await Promise.resolve().then(()=>(l2(),o2))).clockKPuzzleDefinition)),svg:async()=>(await Promise.resolve().then(()=>(s2(),i2))).default}});async function f2(t,e){let r=await t.kpuzzle(),n=new Hn(r),o=new Yn(r),l=()=>o.and([o.move(\"U\"),o.not(o.or(o.moves([\"F\",\"BL\",\"BR\"])))]),i=()=>o.and([o.move(\"U\"),o.not(o.move(\"F\"))]),s=()=>o.or([i(),o.and([o.move(\"F\"),o.not(o.or(o.moves([\"U\",\"BL\",\"BR\"])))])]),u=()=>o.not(o.or([o.and([o.move(\"U\"),o.move(\"F\")]),o.and([o.move(\"F\"),o.move(\"BL\")]),o.and([o.move(\"F\"),o.move(\"BR\")]),o.and([o.move(\"BL\"),o.move(\"BR\")])])),a=()=>o.not(o.or([o.and([o.move(\"F\"),o.move(\"BL\")]),o.and([o.move(\"F\"),o.move(\"BR\")]),o.and([o.move(\"BL\"),o.move(\"BR\")])]));switch(e){case\"full\":break;case\"experimental-fto-fc\":n.set(o.not(l()),S.Ignored);break;case\"experimental-fto-f2t\":n.set(o.not(i()),S.Ignored),n.set(l(),S.Dim);break;case\"experimental-fto-sc\":n.set(o.not(s()),S.Ignored),n.set(i(),S.Dim);break;case\"experimental-fto-l2c\":n.set(o.not(u()),S.Ignored),n.set(s(),S.Dim);break;case\"experimental-fto-lbt\":n.set(o.not(a()),S.Ignored),n.set(u(),S.Dim);break;case\"experimental-fto-l3t\":n.set(a(),S.Dim);break;default:console.warn(`Unsupported stickering for ${t.id}: ${e}. Setting all pieces to dim.`),n.set(o.and(o.moves([])),S.Dim)}return n.toAppearance()}async function g2(){return[\"full\",\"experimental-fto-fc\",\"experimental-fto-f2t\",\"experimental-fto-sc\",\"experimental-fto-l2c\",\"experimental-fto-lbt\",\"experimental-fto-l3t\"]}var L2=U(()=>{Zn()});var es,B2=U(()=>{xr();L2();es={id:\"fto\",fullName:\"Face-Turning Octahedron\",inventedBy:[\"Karl Rohrbach\",\"David Pitcher\"],inventionYear:1983,kpuzzle:lo(\"FTO\"),svg:async()=>(await gt(\"FTO\")).generatesvg(),pg:async()=>gt(\"FTO\"),appearance:t=>f2(es,t),stickerings:g2}});async function m2(t,e){switch(e){case\"full\":case\"F2L\":case\"LL\":return Dt(t,e);default:console.warn(`Unsupported stickering for ${t.id}: ${e}. Setting all pieces to dim.`)}return Dt(t,\"full\")}async function c2(){return[\"full\",\"F2L\",\"LL\"]}var p2=U(()=>{en()});var so,R2=U(()=>{xr();p2();so=Sr(\"megaminx\",\"Megaminx\",{inventionYear:1981});so.appearance=t=>m2(so,t);so.stickerings=c2});var D2={};Ue(D2,{default:()=>O1});var O1,d2=U(()=>{O1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.0//EN\"\n \"http://www.w3.org/TR/2001/REC-SVG-20050904/DTD/svg11.dtd\">\n<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"-20 -20 546 480\" preserveAspectRatio=\"xMidYMid meet\">\n <defs>\n </defs>\n <title>pyraminx</title>\n <defs>\n <g id=\"stickerA\" transform=\"scale(1, 0.577350269)\">\n <path\n d=\"m 0,1.732050808 1,-1.732050808 1,1.732050808 z\"\n stroke=\"black\" stroke-width=\"0.04px\" stroke-linecap=\"butt\" stroke-linejoin=\"round\"\n />\n </g>\n <g id=\"stickerV\" transform=\"scale(1, 0.577350269)\">\n <path\n d=\"m 0,0 1,1.732050808 1,-1.732050808 z\"\n stroke=\"black\" stroke-width=\"0.04px\" stroke-linecap=\"butt\" stroke-linejoin=\"round\"\n />\n </g>\n </defs>\n\n<!-- 0 1 2 3 4 5 6 7 8 9 10 -->\n<!-- | | | | | | | | | | | -->\n<!-- 0 - L L L L L F R R R R R -->\n<!-- 1 - L L L F F F R R R -->\n<!-- 2 - L F F F F F R -->\n<!-- 3 - D D D D D -->\n<!-- 4 - D D D -->\n<!-- 5 - D -->\n\n <g id=\"puzzle\" transform=\"translate(5, 5) scale(40, 69.28203232)\">\n <!-- CORNERS -->\n <use id=\"CORNERS-l0-o0\" xlink:href=\"#stickerV\" transform=\"translate(5.2, 1.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l0-o1\" xlink:href=\"#stickerA\" transform=\"translate(3, 0)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l0-o2\" xlink:href=\"#stickerA\" transform=\"translate(7.4, 0)\" style=\"fill: blue\"/>\n\n <use id=\"CORNERS-l3-o0\" xlink:href=\"#stickerV\" transform=\"translate(4.2, 2.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l3-o1\" xlink:href=\"#stickerA\" transform=\"translate(4.2, 3.2)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l3-o2\" xlink:href=\"#stickerA\" transform=\"translate(2, 1)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l2-o0\" xlink:href=\"#stickerV\" transform=\"translate(6.2, 2.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l2-o1\" xlink:href=\"#stickerA\" transform=\"translate(8.4, 1)\" style=\"fill: blue\"/>\n <use id=\"CORNERS-l2-o2\" xlink:href=\"#stickerA\" transform=\"translate(6.2, 3.2)\" style=\"fill: yellow\"/>\n\n <use id=\"CORNERS-l1-o1\" xlink:href=\"#stickerA\" transform=\"translate(9.4, 0)\" style=\"fill: blue\"/>\n <use id=\"CORNERS-l1-o2\" xlink:href=\"#stickerA\" transform=\"translate(1, 0)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l1-o0\" xlink:href=\"#stickerA\" transform=\"translate(5.2, 4.2)\" style=\"fill: yellow\"/>\n\n <!-- \"TIPS\" -->\n <!-- CORNERS2 -->\n <use id=\"CORNERS2-l0-o0\" xlink:href=\"#stickerA\" transform=\"translate(5.2, 0.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS2-l0-o1\" xlink:href=\"#stickerV\" transform=\"translate(4, 0)\" style=\"fill: red\"/>\n <use id=\"CORNERS2-l0-o2\" xlink:href=\"#stickerV\" transform=\"translate(6.4, 0)\" style=\"fill: blue\"/>\n\n <use id=\"CORNERS2-l3-o0\" xlink:href=\"#stickerA\" transform=\"translate(3.2, 2.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS2-l3-o1\" xlink:href=\"#stickerV\" transform=\"translate(3.2, 3.2)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS2-l3-o2\" xlink:href=\"#stickerV\" transform=\"translate(2, 2)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS2-l2-o1\" xlink:href=\"#stickerV\" transform=\"translate(8.4, 2)\" style=\"fill: blue\"/>\n <use id=\"CORNERS2-l2-o2\" xlink:href=\"#stickerV\" transform=\"translate(7.2, 3.2)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS2-l2-o0\" xlink:href=\"#stickerA\" transform=\"translate(7.2, 2.066666667)\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS2-l1-o1\" xlink:href=\"#stickerV\" transform=\"translate(10.4,0)\" style=\"fill: blue\"/>\n <use id=\"CORNERS2-l1-o2\" xlink:href=\"#stickerV\" transform=\"translate(0, 0)\" style=\"fill: red\"/>\n <use id=\"CORNERS2-l1-o0\" xlink:href=\"#stickerV\" transform=\"translate(5.2, 5.2)\" style=\"fill: yellow\"/>\n\n <!-- EDGES -->\n <use id=\"EDGES-l0-o0\" xlink:href=\"#stickerA\" transform=\"translate(4.2, 1.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l0-o1\" xlink:href=\"#stickerV\" transform=\"translate(3, 1)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l5-o0\" xlink:href=\"#stickerA\" transform=\"translate(6.2, 1.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l5-o1\" xlink:href=\"#stickerV\" transform=\"translate(7.4, 1)\" style=\"fill: blue\"/>\n\n <use id=\"EDGES-l1-o1\" xlink:href=\"#stickerV\" transform=\"translate(8.4, 0)\" style=\"fill: blue\"/>\n <use id=\"EDGES-l1-o0\" xlink:href=\"#stickerV\" transform=\"translate(2, 0)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l2-o1\" xlink:href=\"#stickerV\" transform=\"translate(5.2, 3.2)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l2-o0\" xlink:href=\"#stickerA\" transform=\"translate(5.2, 2.066666667)\" style=\"fill: limegreen\"/>\n\n <use id=\"EDGES-l3-o0\" xlink:href=\"#stickerV\" transform=\"translate(6.2, 4.2)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l3-o1\" xlink:href=\"#stickerV\" transform=\"translate(9.4, 1)\" style=\"fill: blue\"/>\n\n <use id=\"EDGES-l4-o0\" xlink:href=\"#stickerV\" transform=\"translate(4.2, 4.2)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l4-o1\" xlink:href=\"#stickerV\" transform=\"translate(1, 1)\" style=\"fill: red\"/>\n </g>\n\n</svg>`});var F2,A2=U(()=>{xr();F2={id:\"pyraminx\",fullName:\"Pyraminx\",inventedBy:[\"Uwe Meffert\"],inventionYear:1970,kpuzzle:lo(\"pyraminx\"),svg:async()=>(await Promise.resolve().then(()=>(d2(),D2))).default,pg:async()=>gt(\"pyraminx\")}});var h2={};Ue(h2,{sq1HyperOrbitKPuzzleDefinition:()=>_1});var _1,y2=U(()=>{_1={name:\"Square-1\",orbits:{WEDGES:{numPieces:24,numOrientations:9},EQUATOR:{numPieces:2,numOrientations:6}},startStateData:{WEDGES:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{pieces:[0,1],orientation:[0,0]}},moves:{U_SQ_:{WEDGES:{permutation:[11,0,1,2,3,4,5,6,7,8,9,10,12,13,14,15,16,17,18,19,20,21,22,23],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{permutation:[0,1],orientation:[0,0]}},D_SQ_:{WEDGES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,23,12,13,14,15,16,17,18,19,20,21,22],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{permutation:[0,1],orientation:[0,0]}},_SLASH_:{WEDGES:{permutation:[0,1,2,3,4,5,12,13,14,15,16,17,6,7,8,9,10,11,18,19,20,21,22,23],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{permutation:[0,1],orientation:[0,3]}}}}});var U2={};Ue(U2,{default:()=>K1});var K1,b2=U(()=>{K1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"360px\" height=\"552px\" viewBox=\"0 0 360 552\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <!-- Generator: Sketch 59.1 (86144) - https://sketch.com -->\n <title>sq1-fancy</title>\n <desc>Created with Sketch.</desc>\n <!-- stroke=\"none\" -->\n <g id=\"sq1-fancy\" stroke=\"#888\" stroke-width=\"0.25\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"EQUATOR\" transform=\"translate(24.000000, 264.000000)\">\n <rect id=\"EQUATOR-l1-o3\" style=\"fill: red\" x=\"168\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l1-o4\" style=\"fill: red\" x=\"192\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l1-o5\" style=\"fill: limegreen\" x=\"216\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l1-o2\" style=\"fill: limegreen\" x=\"240\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l1-o1\" style=\"fill: limegreen\" x=\"264\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l1-o0\" style=\"fill: orange\" x=\"288\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o3\" style=\"fill: orange\" x=\"0\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o4\" style=\"fill: orange\" x=\"24\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o5\" style=\"fill: limegreen\" x=\"48\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o2\" style=\"fill: limegreen\" x=\"72\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o1\" style=\"fill: limegreen\" x=\"96\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o0\" style=\"fill: red\" x=\"120\" y=\"0\" width=\"24\" height=\"24\"></rect>\n </g>\n <g id=\"BOTTOM\" transform=\"translate(41.000000, 257.000000)\" stroke-linejoin=\"round\">\n <g id=\"WEDGES-23\" transform=\"translate(130.000000, 88.588457) rotate(120.000000) translate(-130.000000, -88.588457) translate(82.000000, 22.588457)\">\n <polygon id=\"WEDGES-l23-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l23-o7\" style=\"fill: red\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l23-o6\" style=\"fill: red\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l23-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l23-o4\" style=\"fill: red\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l23-o3\" style=\"fill: white\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l23-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l23-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l23-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-22\" transform=\"translate(97.157677, 115.157677) rotate(90.000000) translate(-97.157677, -115.157677) translate(49.157677, 49.157677)\">\n <polygon id=\"WEDGES-l22-o8\" style=\"fill: blue\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l22-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l22-o6\" style=\"fill: blue\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l22-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l22-o4\" style=\"fill: white\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l22-o3\" style=\"fill: blue\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l22-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l22-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l22-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-21\" transform=\"translate(82.000000, 154.588457) rotate(60.000000) translate(-82.000000, -154.588457) translate(34.000000, 88.588457)\">\n <polygon id=\"WEDGES-l21-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l21-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l21-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l21-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l21-o4\" style=\"fill: blue\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l21-o3\" style=\"fill: blue\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l21-o2\" style=\"fill: blue\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l21-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l21-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-20\" transform=\"translate(88.588457, 196.315353) rotate(30.000000) translate(-88.588457, -196.315353) translate(40.588457, 130.315353)\">\n <polygon id=\"WEDGES-l20-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l20-o7\" style=\"fill: blue\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l20-o6\" style=\"fill: blue\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l20-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l20-o4\" style=\"fill: blue\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l20-o3\" style=\"fill: white\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l20-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l20-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l20-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-19\" transform=\"translate(67.157677, 163.157677)\">\n <polygon id=\"WEDGES-l19-o8\" style=\"fill: orange\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l19-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l19-o6\" style=\"fill: orange\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l19-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l19-o4\" style=\"fill: white\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l19-o3\" style=\"fill: orange\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l19-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l19-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l19-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-18\" transform=\"translate(154.588457, 244.315353) scale(-1, -1) rotate(150.000000) translate(-154.588457, -244.315353) translate(106.588457, 178.315353)\">\n <polygon id=\"WEDGES-l18-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l18-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l18-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l18-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l18-o4\" style=\"fill: orange\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l18-o3\" style=\"fill: orange\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l18-o2\" style=\"fill: orange\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l18-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l18-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-17\" transform=\"translate(196.315353, 237.726896) scale(-1, -1) rotate(120.000000) translate(-196.315353, -237.726896) translate(148.315353, 171.726896)\">\n <polygon id=\"WEDGES-l17-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l17-o7\" style=\"fill: orange\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l17-o6\" style=\"fill: orange\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l17-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l17-o4\" style=\"fill: orange\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l17-o3\" style=\"fill: white\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l17-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l17-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l17-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-16\" transform=\"translate(229.157677, 211.157677) scale(-1, -1) rotate(90.000000) translate(-229.157677, -211.157677) translate(181.157677, 145.157677)\">\n <polygon id=\"WEDGES-l16-o8\" style=\"fill: limegreen\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l16-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l16-o6\" style=\"fill: limegreen\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l16-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l16-o4\" style=\"fill: white\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l16-o3\" style=\"fill: limegreen\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l16-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l16-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l16-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-15\" transform=\"translate(244.315353, 171.726896) scale(-1, -1) rotate(60.000000) translate(-244.315353, -171.726896) translate(196.315353, 105.726896)\">\n <polygon id=\"WEDGES-l15-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l15-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l15-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l15-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l15-o4\" style=\"fill: limegreen\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l15-o3\" style=\"fill: limegreen\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l15-o2\" style=\"fill: limegreen\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l15-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l15-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-14\" transform=\"translate(237.726896, 130.000000) scale(-1, -1) rotate(30.000000) translate(-237.726896, -130.000000) translate(189.726896, 64.000000)\">\n <polygon id=\"WEDGES-l14-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l14-o7\" style=\"fill: limegreen\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l14-o6\" style=\"fill: limegreen\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l14-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l14-o4\" style=\"fill: limegreen\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l14-o3\" style=\"fill: white\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l14-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l14-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l14-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-13\" transform=\"translate(211.157677, 97.157677) scale(-1, -1) translate(-211.157677, -97.157677) translate(163.157677, 31.157677)\">\n <polygon id=\"WEDGES-l13-o8\" style=\"fill: red\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l13-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l13-o6\" style=\"fill: red\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l13-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l13-o4\" style=\"fill: white\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l13-o3\" style=\"fill: red\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l13-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l13-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l13-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-12\" transform=\"translate(171.726896, 82.000000) rotate(150.000000) translate(-171.726896, -82.000000) translate(123.726896, 16.000000)\">\n <polygon id=\"WEDGES-l12-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l12-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l12-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l12-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l12-o4\" style=\"fill: red\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l12-o3\" style=\"fill: red\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l12-o2\" style=\"fill: red\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l12-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l12-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n </g>\n <g id=\"TOP\" transform=\"translate(41.000000, -31.000000)\" stroke-linejoin=\"round\">\n <g id=\"WEDGES-11\" transform=\"translate(154.588457, 244.315353) scale(-1, -1) rotate(150.000000) translate(-154.588457, -244.315353) translate(106.588457, 178.315353)\">\n <polygon id=\"WEDGES-l11-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l11-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l11-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l11-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l11-o4\" style=\"fill: red\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l11-o3\" style=\"fill: red\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l11-o2\" style=\"fill: red\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l11-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l11-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-10\" transform=\"translate(196.315353, 237.726896) scale(-1, -1) rotate(120.000000) translate(-196.315353, -237.726896) translate(148.315353, 171.726896)\">\n <polygon id=\"WEDGES-l10-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l10-o7\" style=\"fill: red\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l10-o6\" style=\"fill: red\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l10-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l10-o4\" style=\"fill: red\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l10-o3\" style=\"fill: yellow\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l10-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l10-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l10-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-9\" transform=\"translate(229.157677, 211.157677) scale(-1, -1) rotate(90.000000) translate(-229.157677, -211.157677) translate(181.157677, 145.157677)\">\n <polygon id=\"WEDGES-l9-o8\" style=\"fill: limegreen\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l9-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l9-o6\" style=\"fill: limegreen\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l9-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l9-o4\" style=\"fill: yellow\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l9-o3\" style=\"fill: limegreen\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l9-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l9-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l9-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-8\" transform=\"translate(244.315353, 171.726896) scale(-1, -1) rotate(60.000000) translate(-244.315353, -171.726896) translate(196.315353, 105.726896)\">\n <polygon id=\"WEDGES-l8-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l8-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l8-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l8-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l8-o4\" style=\"fill: limegreen\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l8-o3\" style=\"fill: limegreen\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l8-o2\" style=\"fill: limegreen\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l8-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l8-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-7\" transform=\"translate(237.726896, 130.000000) scale(-1, -1) rotate(30.000000) translate(-237.726896, -130.000000) translate(189.726896, 64.000000)\">\n <polygon id=\"WEDGES-l7-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l7-o7\" style=\"fill: limegreen\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l7-o6\" style=\"fill: limegreen\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l7-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l7-o4\" style=\"fill: limegreen\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l7-o3\" style=\"fill: yellow\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l7-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l7-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l7-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-6\" transform=\"translate(211.157677, 97.157677) scale(-1, -1) translate(-211.157677, -97.157677) translate(163.157677, 31.157677)\">\n <polygon id=\"WEDGES-l6-o8\" style=\"fill: orange\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l6-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l6-o6\" style=\"fill: orange\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l6-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l6-o4\" style=\"fill: yellow\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l6-o3\" style=\"fill: orange\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l6-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l6-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l6-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-5\" transform=\"translate(171.726896, 82.000000) rotate(150.000000) translate(-171.726896, -82.000000) translate(123.726896, 16.000000)\">\n <polygon id=\"WEDGES-l5-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l5-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l5-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l5-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l5-o4\" style=\"fill: orange\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l5-o3\" style=\"fill: orange\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l5-o2\" style=\"fill: orange\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l5-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l5-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-4\" transform=\"translate(130.000000, 88.588457) rotate(120.000000) translate(-130.000000, -88.588457) translate(82.000000, 22.588457)\">\n <polygon id=\"WEDGES-l4-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l4-o7\" style=\"fill: orange\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l4-o6\" style=\"fill: orange\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l4-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l4-o4\" style=\"fill: orange\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l4-o3\" style=\"fill: yellow\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l4-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l4-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l4-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-3\" transform=\"translate(97.157677, 115.157677) rotate(90.000000) translate(-97.157677, -115.157677) translate(49.157677, 49.157677)\">\n <polygon id=\"WEDGES-l3-o8\" style=\"fill: blue\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l3-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l3-o6\" style=\"fill: blue\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l3-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l3-o4\" style=\"fill: yellow\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l3-o3\" style=\"fill: blue\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l3-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l3-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l3-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-2\" transform=\"translate(82.000000, 154.588457) rotate(60.000000) translate(-82.000000, -154.588457) translate(34.000000, 88.588457)\">\n <polygon id=\"WEDGES-l2-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l2-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l2-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l2-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l2-o4\" style=\"fill: blue\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l2-o3\" style=\"fill: blue\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l2-o2\" style=\"fill: blue\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l2-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l2-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-1\" transform=\"translate(88.588457, 196.315353) rotate(30.000000) translate(-88.588457, -196.315353) translate(40.588457, 130.315353)\">\n <polygon id=\"WEDGES-l1-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l1-o7\" style=\"fill: blue\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l1-o6\" style=\"fill: blue\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l1-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l1-o4\" style=\"fill: blue\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l1-o3\" style=\"fill: yellow\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l1-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l1-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l1-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-0\" transform=\"translate(67.157677, 163.157677)\">\n <polygon id=\"WEDGES-l0-o8\" style=\"fill: red\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l0-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l0-o6\" style=\"fill: red\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l0-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l0-o4\" style=\"fill: yellow\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l0-o3\" style=\"fill: red\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l0-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l0-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l0-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n </g>\n <g id=\"DIAGONALS\" transform=\"translate(168.861561, 1.019238)\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\n <line x1=\"0\" y1=\"287.842323\" x2=\"70.2768775\" y2=\"550.119201\" id=\"BOTTOM\"></line>\n <line x1=\"0.15767665\" y1=\"262.276878\" x2=\"70.4345542\" y2=\"2.27488928e-16\" id=\"TOP\"></line>\n </g>\n </g>\n</svg>`});var S2,x2=U(()=>{Ve();Xn();S2={id:\"square1\",fullName:\"Square-1\",inventedBy:[\"Karel Hr\\u0161el\",\"Vojtech Kopsk\\xFD\"],inventionYear:1990,kpuzzle:$t(async()=>new Ie((await Promise.resolve().then(()=>(y2(),h2))).sq1HyperOrbitKPuzzleDefinition)),svg:async()=>(await Promise.resolve().then(()=>(b2(),U2))).default}});var he,Ot=U(()=>{u0();Ve();en();xr();J0();n2();u2();B2();R2();A2();x2();Zn();he={\"3x3x3\":$i,\"2x2x2\":io,\"4x4x4\":sn(\"4x4x4\",\"4\\xD74\\xD74 Cube\"),\"5x5x5\":sn(\"5x5x5\",\"5\\xD75\\xD75 Cube\"),\"6x6x6\":sn(\"6x6x6\",\"6\\xD76\\xD76 Cube\"),\"7x7x7\":sn(\"7x7x7\",\"7\\xD77\\xD77 Cube\"),\"40x40x40\":sn(\"40x40x40\",\"40\\xD740\\xD740 Cube\"),clock:a2,megaminx:so,pyraminx:F2,skewb:Sr(\"skewb\",\"Skewb\",{inventedBy:[\"Tony Durham\"]}),square1:S2,fto:es,gigaminx:Sr(\"gigaminx\",\"Gigaminx\",{inventedBy:[\"Tyler Fox\"],inventionYear:2006}),master_tetraminx:Sr(\"master tetraminx\",\"Master Tetraminx\",{inventedBy:[\"Katsuhiko Okamoto\"],inventionYear:2002})}});function v2(t){w2=t}function tt(){if(!w2)throw new Error(\"Must be called from inside a worker, to avoid impact on page performance. Try importing from the top level of `cubing/solve`?\")}var w2,_t=U(()=>{w2=!1});async function E2(){return globalThis?.crypto?.getRandomValues?crypto.getRandomValues.bind(crypto):(await(W1??(W1=import(\"crypto\")))).webcrypto.getRandomValues}var W1,k2=U(()=>{W1=null});function q1(t){let e=new Uint32Array(2);t(e);let r=e[0],n=e[1];return Math.floor(r*Q1)+Math.floor(n/j1)}function V1(t){if(typeof t!=\"number\"||t<0||Math.floor(t)!==t)throw new Error(\"randomInt.below() not called with a positive integer value.\");if(t>z2)throw new Error(`Called randomInt.below() with max == ${t}, which is larger than JavaScript can handle with integer precision.`)}async function st(){let t=await E2(),e=r=>{V1(r);let n=q1(t),o=Math.floor(z2/r)*r;return n<o?n%r:e(r)};return e}var z2,Q1,j1,Rl=U(()=>{k2();z2=9007199254740992,Q1=2097152,j1=2048});async function Kt(){let t=await st();return e=>e[t(e.length)]}var C2=U(()=>{Rl()});async function P2(t){for(let e=1;e<t.length;e++){let r=(await H1)(e);[t[e],t[r]]=[t[r],t[e]]}}var H1,rr=U(()=>{C2();Rl();Rl();H1=st()});function zt(t,e){let r=[],n=[];for(let f of e.split(`\n`)){let g=f.split(\" \");if(!f.startsWith(\"SetOrder \")){if(f.startsWith(\"Alg \")){let L=k.fromString(f.substring(4));n.push({alg:L,transformation:t.algToTransformation(L)})}else if(f.startsWith(\"SubgroupSizes \"))for(let L=1;L<g.length;L++)r.push(parseInt(g[L]))}}let o={ordering:new Array(r.length)},l=[],i=0;l.push(0);let s=k.fromString(\"\"),u=t.identityTransformation();for(let f=0;f<r.length;f++)i+=r[f],l.push(i),n.splice(i-1,0,{alg:s,transformation:u});if(n.length!==i)throw Error(`Bad sgs; expected ${i-r.length} algs but saw ${n.length-r.length}`);let a={};for(let f in t.definition.orbits){let g=t.definition.orbits[f];a[f]=new Array(g.numPieces).fill(!1)}for(let f=r.length-1;f>=0;f--){let g=[];for(let B=l[f];B<l[f+1];B++){let p=n[B].transformation;for(let m in t.definition.orbits){let F=t.definition.orbits[m];for(let A=0;A<F.numPieces;A++)(p.transformationData[m].permutation[A]!==A||p.transformationData[m].orientation[A]!==0)&&(a[m][A]||(g.push({orbitName:m,permutationIdx:A}),a[m][A]=!0))}}let L={};for(let B=l[f];B<l[f+1];B++){let p=n[B].transformation.invert(),m=\"\";for(let F=0;F<g.length;F++){let A=g[F];m=`${m} ${p.transformationData[A.orbitName].permutation[A.permutationIdx]} ${p.transformationData[A.orbitName].orientation[A.permutationIdx]}`}L[m]=n[B],n[B].alg=n[B].alg.invert(),n[B].transformation=n[B].transformation.invert()}o.ordering[f]={pieceOrdering:g,lookup:L}}return o}var un=U(()=>{Ae()});var _2={};Ue(_2,{cachedData222:()=>oL,data222:()=>O2});async function oL(){return nL??(nL=O2())}async function O2(){return zt(await io.kpuzzle(),`SubgroupSizes 24 21 18 15 12 9 6\n\nAlg F\nAlg F2\nAlg F'\nAlg D\nAlg D2\nAlg D'\nAlg L\nAlg L2\nAlg L'\nAlg F U\nAlg F U2\nAlg F U'\nAlg F L\nAlg F L2\nAlg F L'\nAlg F2 U\nAlg F2 U'\nAlg F2 R\nAlg F2 R'\nAlg F' D\nAlg F' D'\nAlg F' R\nAlg F' R'\nAlg B\nAlg B2\nAlg B'\nAlg B R\nAlg B R2\nAlg B R'\nAlg B2 U\nAlg B2 U2\nAlg B2 U'\nAlg B2 R\nAlg B2 R2\nAlg B2 R'\nAlg B' U\nAlg B' U'\nAlg F D' F'\nAlg F2 L F2\nAlg B R' B2\nAlg B R' U2\nAlg B2 U R'\nAlg B2 R B'\nAlg R\nAlg R2\nAlg R'\nAlg R2 U\nAlg R2 U2\nAlg R2 U'\nAlg R' U\nAlg R' U2\nAlg R' U'\nAlg F R F'\nAlg F R2 F'\nAlg L2 D' L2\nAlg L' B L\nAlg R2 U' R\nAlg R' U R2\nAlg R' U R'\nAlg F R F' U2\nAlg F' U F\nAlg F' U2 F\nAlg F' U' F\nAlg L F L'\nAlg L F2 L'\nAlg L F' L'\nAlg F' D R D'\nAlg F' U2 F U'\nAlg F D2 B D2 F'\nAlg F2 D' L2 D F2\nAlg F2 L F L' F\nAlg L' F2 L' F2 L\nAlg F L' U' L2 F L'\nAlg F2 L F L' U2 F\nAlg U\nAlg U2\nAlg U'\nAlg F2 D2 B D2 F2\nAlg F2 D2 B' D2 F2\nAlg L2 D2 R D2 L2\nAlg L2 D2 R' D2 L2\nAlg F2 D2 B D2 F2 U\nAlg F2 D2 B D2 F2 U'\nAlg U F2 D2 B D2 F2\nAlg U F2 D2 B' D2 F2\nAlg F D B D' R' F' U\nAlg F' D L F U B' L'\nAlg F' L' F U L U L'\nAlg D' L F D R' U' F'\nAlg L F L' U' F' U' F\nAlg L D' F' L' U' R F\nAlg F D F U F' L' F' R'\nAlg F2 D' F L F2 D F' R'\nAlg F D' F L' D F R2 U2 F' U'\nAlg F D' L D' L F D2 L2 B' R'\nAlg F L' D F R2 D2 L D F' U2\nAlg F L' D F2 D' L F L2 F2 U\nAlg F D F' D L2 F R' F' D' B2 U'`)}var nL,K2=U(()=>{Ot();un();nL=null});async function fn(t,e){let r=new ut;r.experimentalPushAlg(t);for(let n of e){let o=(await Kt())(n);o!==null&&r.push(c.fromString(o))}return r.toAlg()}var Dl=U(()=>{Ae();rr()});function V2(t,e){return t.slice(e)+t.slice(0,e)}function LL(t){let e=[[],[]];for(let r=0;r<6;r++)if(t.stateData.CENTERS.pieces[r]!==r)throw new Error(\"non-oriented puzzles are not supported\");for(let r=0;r<12;r++)e[0].push(V2(aL[t.stateData.EDGES.pieces[r]],t.stateData.EDGES.orientation[r]));for(let r=0;r<8;r++)e[1].push(V2(uL[t.stateData.CORNERS.pieces[r]],t.stateData.CORNERS.orientation[r]));return e.push(fL),e}function H2(t){let e=LL(t);return gL.map(([r,n,o])=>e[r][n][o]).join(\"\")}var aL,uL,fL,gL,Y2=U(()=>{aL=\"UF UR UB UL DF DR DB DL FR FL BR BL\".split(\" \"),uL=\"UFR URB UBL ULF DRF DFL DLB DBR\".split(\" \"),fL=\"U L F R B D\".split(\" \"),gL=[[1,2,0],[0,2,0],[1,1,0],[0,3,0],[2,0,0],[0,1,0],[1,3,0],[0,0,0],[1,0,0],[1,0,2],[0,1,1],[1,1,1],[0,8,1],[2,3,0],[0,10,1],[1,4,1],[0,5,1],[1,7,2],[1,3,2],[0,0,1],[1,0,1],[0,9,0],[2,2,0],[0,8,0],[1,5,1],[0,4,1],[1,4,2],[1,5,0],[0,4,0],[1,4,0],[0,7,0],[2,5,0],[0,5,0],[1,6,0],[0,6,0],[1,7,0],[1,2,2],[0,3,1],[1,3,1],[0,11,1],[2,1,0],[0,9,1],[1,6,1],[0,7,1],[1,5,2],[1,1,2],[0,2,1],[1,2,1],[0,10,0],[2,4,0],[0,11,0],[1,7,1],[0,6,1],[1,6,2]]});function Z2(t,e){let r=new Be(t.kpuzzle,{EDGES:t.stateData.EDGES,CORNERS:t.stateData.CORNERS,CENTERS:{pieces:t.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}}).experimentalToTransformation(),n=new Be(e.kpuzzle,{EDGES:e.stateData.EDGES,CORNERS:e.stateData.CORNERS,CENTERS:{pieces:e.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}}).experimentalToTransformation();return r.isIdentical(n)}function X2(t,e){if(Z2(t.startState(),e))return!1;for(let r of\"ULFRBD\")for(let n=1;n<4;n++){let o=t.moveToTransformation(new c(r,n)).toKState();if(Z2(o,e))return!1}return!0}var J2=U(()=>{Ae();Ve()});var $2,eu=U(()=>{$2=[[\"R U'\",\"R2 B\",\"D2 B2\",\"D' L B'\",\"R' U'\",\"B\",\"D B2\",\"R' B\",\"L' U\",\"L2 B'\",\"B2\",\"D L B'\",\"L U\",\"B'\",\"U'\",\"R B\",\"D' B2\",\"L B'\",\"U2\",\"U L' B'\",\"\",\"U' L' B'\",\"U\",\"L' B'\"],[\"F2 L2\",\"F' L'\",\"R' F L2\",\"D' L2\",\"F L2\",\"F2 L'\",\"R' F' L'\",\"R2 F L2\",\"R2 F2 L'\",\"L2\",\"F L'\",\"D' L\",\"D2 L2\",\"R2 F' L'\",\"D L\",\"\",\"L2 F L'\",\"L F' L2\",\"L F L'\",\"F' L2\",\"L'\",\"D L2\",\"D F L'\",\"L\"],[\"R B U2 B'\",\"R2 B U' B'\",\"F2 B U B'\",\"F B2 L' B2\",\"B2 L B2\",\"B U' B'\",\"R2 B U2 B'\",\"R' B U' B'\",\"B2 L' B2\",\"F B U B'\",\"B2 U' B2\",\"B' L B\",\"L F' B D' B'\",\"B' U' B2 D B'\",\"B U2 B'\",\"R B U' B'\",\"B2 L2 B2\",\"D' B' L B\",\"B U B'\",\"F' B2 L' B2\",\"\",\"B2 L' B' U' B'\"],[\"U F2 L2 U'\",\"F' U L' U'\",\"F2 U L' U'\",\"U F L2 U'\",\"U2 B2 U2\",\"R' U' B U\",\"D2 U L U'\",\"D U2 B' U2\",\"U L2 U'\",\"F U L' U'\",\"D U L U'\",\"U2 B' U2\",\"\",\"U2 B' U' L' U'\",\"U2 L' U2\",\"U' B U\",\"U L U'\",\"D' U2 B' U2\",\"U L' U'\",\"U2 B U2\"],[\"R' D' F2\",\"F'\",\"F2\",\"D R F'\",\"R D' F2\",\"R2 F'\",\"D' F2\",\"R F'\",\"F2 R' D' F2\",\"F\",\"D2 F2\",\"D' R F'\",\"R2 D' F2\",\"R' F'\",\"D F2\",\"D2 R F'\",\"\",\"F R' D' F2\"],[\"R' D2 F' D F\",\"R F2 R2 F2\",\"R2 F' D2 F\",\"F' R2 D2 F\",\"L D' L'\",\"D F' D2 F\",\"F2 R2 F2\",\"R F' D2 F\",\"F' R2 D' F\",\"F' R' D2 F\",\"F2 R' F2\",\"L D L'\",\"F' R D' F\",\"F2 R F2\",\"F' D2 F\",\"\",\"L D2 R D' L'\",\"F' D2 F' R F2\",\"D2 R2 F2 R2 F2\",\"D F' D' F\",\"F' D F\"],[\"U F2 U'\",\"R U F' U'\",\"D R U F2 U'\",\"U F U'\",\"R2 U F2 U'\",\"R' U F' U'\",\"R U F2 U'\",\"R2 U F' U'\",\"\",\"U L D L' F U'\",\"F2 D' R D F2\",\"D2 U F U'\",\"R' U F2 U'\",\"U F' U'\",\"F2 D2 R D2 F2\",\"D U F U'\"],[\"R2\",\"R' B' D B\",\"D R'\",\"F' R2 F\",\"\",\"R B' D B\",\"R'\",\"B' D B\",\"D' R'\",\"D2 F' R2 F\",\"R\",\"R2 B' D B\",\"D2 R'\",\"B' D' B\"],[\"R2 D' R2\",\"F' R' F R\",\"R D' R2 D R'\",\"D2 R2 D2 R2\",\"R' D' F' R F\",\"U F D F' U'\",\"\",\"R2 D2 B R' B' R'\",\"R' F D' F2 R F\",\"R2 D R2\",\"F2 U F U' F\",\"R' D F' R F\",\"D R2 D2 R2\",\"U F D' F' U'\",\"D R' D2 F' R F\",\"R2 D2 R2\",\"U F D2 F' U'\",\"R' D2 F' R F\"],[\"B R B'\",\"F D F' B R2 B'\",\"D B R2 B'\",\"D2 B R' B'\",\"B R2 B'\",\"D B R' B'\",\"D' B R2 B'\",\"B R' B'\",\"\",\"B R2 B' D B R' B'\",\"D2 B R2 B'\",\"D' B R' B'\"],[\"\",\"R' D R F D2 F'\",\"R' D R\",\"D F D' F'\",\"R F' R' F\",\"F D' F'\",\"R' D' R\",\"F D2 F'\",\"R' D2 R\",\"F D F'\"],[\"\",\"F2 D2 R F' R' D2 F' D2 F'\",\"F2 D2 F' D' F D' F' D2 F'\",\"F2 D F2 D F2 D2 F2\",\"D2 F L D2 L' D2 F'\",\"D F D2 L D2 L' F'\",\"R' D B' D2 B D' R\",\"R' D2 B' D2 B R\",\"F D2 F' D F D F'\",\"F D' L D2 L' D F'\",\"B D' F D B' D' F'\",\"F D2 L D2 L' F'\",\"F D' L D L' D F'\",\"F L D2 L' D2 F'\",\"R' B' D2 B D2 R\"],[\"D'\",\"F L D L' D' F'\",\"D2\",\"L B D B' D' L'\",\"D\",\"B' L' D' L D B\",\"\",\"D F L D L' D' F'\"],[\"F' D2 F D F' D F\",\"F' D' R' D R F\",\"F' R' D' R D F\",\"B D R D' R' B'\",\"\",\"D B' D' L' D L B\"],[\"D F D F' D F D2 F'\",\"F' U2 B' R' B U2 F' L F' L' F'\",\"\",\"D2 L D L2 F L F2 D F\"],[\"L B' L' F L B L' F'\",\"F2 U F' D2 F U' F' D2 F'\",\"D' F' D B D' F D B'\",\"F L2 F R2 F' L2 F R2 F2\",\"D B D' F' D B' D' F\",\"R F L F' R' F L' F'\",\"\",\"D2 B L' U2 L B' D2 B L' U2 L B'\",\"D2 F R' U2 R F' D2 F R' U2 R F'\",\"R F L' F' R' F L F'\",\"D F D' B' D F' D' B\",\"L2 F2 L' B2 L F2 L' B2 L'\"],[\"L B R' B' L' B R B'\",\"R' B R F' R' B' R F\",\"L D2 L U L' D2 L U' L2\",\"\",\"D2 B' D2 F D' L2 F L2 F' D2 B D' F'\",\"D2 F' R' F R2 B' D2 B D2 R' F D2 F'\",\"L B L' F L B' L' F'\",\"F' D2 F' U' F D2 F' U F2\",\"D' B' D F D' B D F'\"],[\"\",\"D2 F' L U2 L' F D2 F' L U2 L' F\",\"D2 B' R U2 R' B D2 B' R U2 R' B\"]]});var zu={};Ue(zu,{initialize:()=>rB,solveState:()=>nB});function tu(){}function mL(t){function e(){}return e.prototype=t||{},new e}function cL(t){return t instanceof Array?t[0]:null}function uo(t,e,r){var n=dl,o=pL,l=cL,i=n[t],s=l(i);i&&!s?q=i:(q=n[t]=e?o(e):{},q.castableTypeMap$=r,q.constructor=q,!e&&(q.typeMarker$=tu));for(var u=3;u<arguments.length;++u)arguments[u].prototype=q;s&&(q.___clazz$=s)}function pL(t){var e=dl;return mL(e[t])}function RL(){}function Fl(t){return t<<24>>24}function ls(){this.typeName=null,this.simpleName=null,this.packageName=null,this.compoundName=null,this.canonicalName=null,this.typeId=null,this.arrayLiterals=null}function is(t,e){var r;return r=new ls,r.packageName=t,r.compoundName=e,r}function or(t,e,r){var n;return n=is(t,e),FL(r,n),n}function DL(t,e){var r;return r=is(t,e),r.modifiers=2,r}function Al(t,e){var r;return r=is(\"\",t),r.typeId=e,r.modifiers=1,r}function ru(t,e){var r=t.arrayLiterals=t.arrayLiterals||[];return r[e]||(r[e]=t.createClassLiteralForArray(e))}function dL(t){if(t.isPrimitive())return null;var e=t.typeId,r=dl[e];return r}function FL(t,e){if(!!t){e.typeId=t;var r=dL(e);if(!r){dl[t]=[e];return}r.___clazz$=e}}function X(t,e){return ru(t,e)}function Y(t,e,r,n,o,l){var i;return i=ou(o,n),J(X(t,l),e,r,o,i),i}function Ye(t,e,r,n,o,l){return nu(t,e,r,n,o,0,l)}function nu(t,e,r,n,o,l,i){var s,u,a,f,g;if(f=o[l],a=l==i-1,s=a?n:0,g=ou(s,f),J(X(t,i-l),e[l],r[l],s,g),!a)for(++l,u=0;u<f;++u)g[u]=nu(t,e,r,n,o,l,i);return g}function J(t,e,r,n,o){return o.___clazz$=t,o.castableTypeMap$=e,o.typeMarker$=tu,o.__elementTypeId$=r,o.__elementTypeCategory$=n,o}function ou(t,e){var r=new Array(e),n;switch(t){case 6:n={l:0,m:0,h:0};break;case 7:n=0;break;case 8:n=!1;break;default:return r}for(var o=0;o<e;++o)r[o]=n;return r}function lu(t){var e,r,n;return e=t&He,r=t>>22&He,n=t<0?nr:0,AL(e,r,n)}function AL(t,e,r){return{l:t,m:e,h:r}}function hL(t,e){var r,n,o;return r=t.l+e.l,n=t.m+e.m+(r>>22),o=t.h+e.h+(n>>22),{l:r&He,m:n&He,h:o&nr}}function Ct(t,e){return{l:t.l&e.l,m:t.m&e.m,h:t.h&e.h}}function ss(t){var e,r;return t>-129&&t<128?(e=t+128,yl==null&&(yl=Y(eB,se,293,256,0,1)),r=yl[e],!r&&(r=yl[e]=lu(t)),r):lu(t)}function iu(t,e){var r,n;return r=t.h>>19,n=e.h>>19,r==0?n!=0||t.h>e.h||t.h==e.h&&t.m>e.m||t.h==e.h&&t.m==e.m&&t.l>=e.l:!(n==0||t.h<e.h||t.h==e.h&&t.m<e.m||t.h==e.h&&t.m==e.m&&t.l<e.l)}function as(t,e){return t.l!=e.l||t.m!=e.m||t.h!=e.h}function us(t,e){return{l:t.l|e.l,m:t.m|e.m,h:t.h|e.h}}function hl(t,e){var r,n,o;return e&=63,e<22?(r=t.l<<e,n=t.m<<e|t.l>>22-e,o=t.h<<e|t.m>>22-e):e<44?(r=0,n=t.l<<e-22,o=t.m<<e-22|t.l>>44-e):(r=0,n=0,o=t.l<<e-44),{l:r&He,m:n&He,h:o&nr}}function wr(t,e){var r,n,o,l,i;return e&=63,r=t.h,n=(r&BL)!=0,n&&(r|=-1048576),e<22?(i=r>>e,l=t.m>>e|r<<22-e,o=t.l>>e|t.m<<22-e):e<44?(i=n?nr:0,l=r>>e-22,o=t.m>>e-22|r<<44-e):(i=n?nr:0,l=n?He:0,o=r>>e-44),{l:o&He,m:l&He,h:i&nr}}function su(t,e){var r,n,o;return r=t.l-e.l,n=t.m-e.m+(r>>22),o=t.h-e.h+(n>>22),{l:r&He,m:n&He,h:o&nr}}function vr(t){return t.l|t.m<<22}function yL(t){this.string=t}function lr(t,e){return t>e?t:e}function fs(t,e){return t<e?t:e}function UL(t,e){return t.indexOf(e)}function bL(t){return SL(t,0,t.length)}function SL(t,e,r){for(var n=\"\",o=e;o<r;){var l=Math.min(o+1e4,r);n+=String.fromCharCode.apply(null,t.slice(o,l)),o=l}return n}function xL(t){return String.fromCharCode(t&Oe)}function au(t){return t.string+=\" \",t}function uu(t,e){return t.string+=e,t}function vL(){yL.call(this,\"\")}function Ul(t,e){var r;if(t===e)return!0;if(t.length!=e.length)return!1;for(r=0;r<t.length;++r)if(t[r]!=e[r])return!1;return!0}function Er(){fu||(fu=!0,sr=Ye(De,[se,Re],[11,0],7,[495,18],2),Rn=Ye(De,[se,Re],[11,0],7,[324,18],2),mn=Ye(De,[se,Re],[11,0],7,[336,18],2),ir=Ye(De,[se,Re],[11,0],7,[495,8],2),xl=Y(Ee,ve,0,20048,7,1),Sl=Y(Ee,ve,0,20791,7,1),pn=Y(Ee,ve,0,82945,7,1),gn=Ye(De,[se,Re],[11,0],7,[2768,10],2),Bn=Ye(De,[se,Re],[11,0],7,[2768,10],2),cn=Ye(De,[se,Re],[11,0],7,[24,10],2),Lo=Ye(De,[se,Re],[11,0],7,[24,16],2),kr=Ye(De,[se,Re],[11,0],7,[140,16],2),bl=Y(Ee,ve,0,8305,7,1),Ln=Y(Ee,ve,0,48441,7,1))}function EL(t,e,r){return t.slice_0=sr[e.slice_0][r],t.flip=mn[e.flip][(Z(),Cr)[r<<3|e.fsym]],t.fsym=t.flip&7^e.fsym,t.flip>>=3,t.twist=Rn[e.twist][Cr[r<<3|e.tsym]],t.tsym=t.twist&7^e.tsym,t.twist>>=3,t.prun=lr(lr(rt(xl,t.twist*495+ir[t.slice_0][t.tsym]),rt(Sl,t.flip*495+ir[t.slice_0][t.fsym])),rt(pn,t.twist<<11|fr[t.flip<<3|t.fsym^t.tsym])),t.prun}function kL(t,e,r){return r=(Z(),co)[3][r],t.flipc=mn[e.flipc>>3][Cr[r<<3|e.flipc&7]]^e.flipc&7,t.twistc=Rn[e.twistc>>3][Cr[r<<3|e.twistc&7]]^e.twistc&7,rt(pn,t.twistc>>3<<11|fr[t.flipc^t.twistc&7])}function gu(t,e,r){var n;return t.twist=(Z(),po)[kl(e)],t.flip=zr[El(e)],t.tsym=t.twist&7,t.twist=t.twist>>3,t.prun=rt(pn,t.twist<<11|fr[t.flip^t.tsym]),t.prun>r||(t.fsym=t.flip&7,t.flip=t.flip>>3,t.slice_0=494-Fn(e.ea,8,!0),t.prun=lr(t.prun,lr(rt(xl,t.twist*495+ir[t.slice_0][t.tsym]),rt(Sl,t.flip*495+ir[t.slice_0][t.fsym]))),t.prun>r)?!1:(n=new ue,Bo(e,1,n),mo(e,1,n),t.twistc=po[kl(n)],t.flipc=zr[El(n)],t.prun=lr(t.prun,rt(pn,t.twistc>>3<<11|fr[t.flipc^t.twistc&7])),t.prun<=r)}function fo(){Er()}function rt(t,e){return Er(),t[e>>3]>>(e<<2)&15}function Lu(t){Er(),!(wl==2||wl==1&&!t)&&(wl==0&&(QL(),zL(),PL(),GL(),CL(),Z(),ps(2048,Rs,zr,du=Y(De,Re,0,336,7,1),0),ps(2187,As,po,Fs=Y(De,Re,0,324,7,1),1),ML(),TL(),IL()),go(bl,cn,Lo,gn,(Z(),ds),584244,t),go(Ln,gs,kr,Bn,ds,514084,t),go(xl,sr,ir,Rn,Fs,431619,t),go(Sl,sr,ir,mn,du,431619,t),go(pn,null,null,Rn,Fs,103939,t),wl=t?2:1)}function zL(){var t,e,r,n;for(t=new ue,e=new ue,r=0;r<2768;r++)for(_L(t,(Z(),Dn)[r]),n=0;n<10;n++)ar(t,fe[(We(),ht)[n]],e),gn[r][n]=Pl(Qt[ot(e.ca,8,!1)])&Oe}function CL(){var t,e,r,n,o;for(t=new ue,e=new ue,gs=Ye(De,[se,Re],[11,0],7,[140,10],2),r=0;r<140;r++){for(wu(t.ca,r%70,0,!1),o=0;o<10;o++)ar(t,(Z(),fe)[(We(),ht)[o]],e),gs[r][o]=Fn(e.ca,0,!1)+70*(165>>o&1^~~(r/70))&Oe;for(n=0;n<16;n++)Bo(t,(Z(),nt)[0][n],e),kr[r][n]=Fn(e.ca,0,!1)+70*~~(r/70)&Oe}}function PL(){var t,e,r,n;for(t=new ue,e=new ue,r=0;r<2768;r++)for(pu(t,(Z(),Dn)[r]),n=0;n<10;n++)Lt(t,fe[(We(),ht)[n]],e),Bn[r][n]=Qt[ot(e.ea,8,!0)]}function ML(){var t,e,r,n;for(t=new ue,e=new ue,r=0;r<336;r++)for(ms(t,(Z(),Rs)[r]),n=0;n<18;n++)Lt(t,fe[n],e),mn[r][n]=zr[El(e)]}function GL(){var t,e,r,n,o;for(t=new ue,e=new ue,r=0;r<24;r++){for(Pr(t.ea,r,12,!0),o=0;o<10;o++)Lt(t,(Z(),fe)[(We(),ht)[o]],e),cn[r][o]=ot(e.ea,12,!0)%24&Oe;for(n=0;n<16;n++)mo(t,(Z(),nt)[0][n],e),Lo[r][n]=ot(e.ea,12,!0)%24&Oe}}function go(t,e,r,n,o,l,i){var s,u,a,f,g,L,B,p,m,F,A,b,h,C,E,j,te,I,re,y,z,M,x,w,P,W,H,ge,me,Fe,ye,xt,ze,Xe,xe,d;if(h=l&15,A=(l>>4&1)==1?os:0,a=(l>>5&1)==1,s=l>>8&15,f=l>>12&15,g=l>>16&15,F=i?f:g,b=(1<<h)-1,u=e==null,p=u?2048:e.length,m=p*n.length,B=a?10:18,L=B==10?66:599186,E=(t[m>>3]>>(m<<2)&15)-1,E==-1){for(I=0;I<~~(m/8)+1;I++)t[I]=ao;t[0]^=1,E=0}for(;E<F;){for(P=(E+1)*ao^-1,re=0;re<t.length;re++)xe=t[re]^P,xe&=xe>>1,t[re]+=xe&xe>>2&ao;for(M=E>s,Fe=M?E+2:E,me=Fe*ao,C=M?E:E+2,++E,d=E^E+1,Xe=0,I=0;I<m;++I,Xe>>=4){if((I&7)==0&&(Xe=t[I>>3],((Xe^me)-ao&~(Xe^me)&-2004318072)==0)){I+=7;continue}if((Xe&15)==Fe)for(H=I%p,ye=~~(I/p),j=0,te=0,u&&(j=(Z(),zr)[H],te=j&7,j>>=3),w=0;w<B;w++){if(ze=n[ye][w],u?ge=(Z(),fr)[mn[j][Cr[w<<3|te]]^te^ze&b]:ge=r[e[H][w]][ze&b],ze>>=h,y=ze*p+ge,W=t[y>>3]>>(y<<2)&15,W!=C){W<E-1&&(w+=L>>w&3);continue}if(M){t[I>>3]^=d<<(I<<2);break}for(t[y>>3]^=d<<(y<<2),x=1,xt=o[ze];(xt>>=1)!=0;x++)(xt&1)==1&&(z=ze*p,u?z+=(Z(),fr)[zr[ge]^x]:z+=r[ge][x^A>>(x<<1)&3],(t[z>>3]>>(z<<2)&15)==C&&(t[z>>3]^=d<<(z<<2)))}}}}function TL(){var t,e,r,n;for(t=new ue,e=new ue,r=0;r<324;r++)for(cs(t,(Z(),As)[r]),n=0;n<18;n++)ar(t,fe[n],e),Rn[r][n]=po[kl(e)]}function IL(){var t,e,r,n,o,l,i,s;for(t=new ue,e=new ue,n=0;n<495;n++){for(wu(t.ea,494-n,8,!0),l=0;l<18;l+=3)Lt(t,(Z(),fe)[l],e),sr[n][l]=494-Fn(e.ea,8,!0)&Oe;for(o=0;o<16;o+=2)mo(t,(Z(),nt)[0][o],e),ir[n][o>>1]=494-Fn(e.ea,8,!0)&Oe}for(r=0;r<495;r++)for(o=0;o<18;o+=3)for(s=sr[r][o],i=1;i<3;i++)s=sr[s][o],sr[r][o+i]=s&Oe}function Z(){Bu||(Bu=!0,Wt=Y(Ro,se,7,16,0,1),fe=Y(Ro,se,7,18,0,1),Gl=Y(tB,se,0,18,6,1),Fu=Y(Ee,ve,0,48,7,1),jt=Ye(Ee,[se,ve],[17,0],7,[16,16],2),nt=Ye(Ee,[se,ve],[17,0],7,[16,16],2),co=Ye(Ee,[se,ve],[17,0],7,[16,18],2),Cr=Y(Ee,ve,0,144,7,1),gr=Ye(Ee,[se,ve],[17,0],7,[16,18],2),Rs=Y(De,Re,0,336,7,1),As=Y(De,Re,0,324,7,1),Dn=Y(De,Re,0,2768,7,1),dn=Y(ee,le,0,2768,7,1),Ds=Y(De,Re,0,2768,7,1),Ml=Y(ee,le,0,24,7,1),zr=Y(De,Re,0,2048,7,1),po=Y(De,Re,0,2187,7,1),Qt=Y(De,Re,0,40320,7,1),fr=Y(De,Re,0,2688,7,1),hs=new At(2531,1373,67026819,1367),ys=new At(2089,1906,322752913,2040),Tl=J(X(ee,2),se,10,0,[J(X(ee,1),le,0,7,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),J(X(ee,1),le,0,7,[6,7,8,0,1,2,3,4,5,15,16,17,9,10,11,12,13,14]),J(X(ee,1),le,0,7,[3,4,5,6,7,8,0,1,2,12,13,14,15,16,17,9,10,11]),J(X(ee,1),le,0,7,[2,1,0,5,4,3,8,7,6,11,10,9,14,13,12,17,16,15]),J(X(ee,1),le,0,7,[8,7,6,2,1,0,5,4,3,17,16,15,11,10,9,14,13,12]),J(X(ee,1),le,0,7,[5,4,3,8,7,6,2,1,0,14,13,12,17,16,15,11,10,9])]),WL(),jL())}function Ls(t){t.ca=J(X(ee,1),le,0,7,[0,1,2,3,4,5,6,7]),t.ea=J(X(ee,1),le,0,7,[0,2,4,6,8,10,12,14,16,18,20,22])}function mu(t){!t.temps&&(t.temps=new ue),ar(ys,t,t.temps),ar(t.temps,hs,t),Lt(ys,t,t.temps),Lt(t.temps,hs,t)}function Bs(t,e){var r,n;for(n=0;n<8;n++)t.ca[n]=e.ca[n];for(r=0;r<12;r++)t.ea[r]=e.ea[r]}function NL(t){return Pl(Qt[ot(t.ca,8,!1)])}function OL(t){return Qt[ot(t.ea,8,!0)]}function El(t){var e,r;for(r=0,e=0;e<11;e++)r=r<<1|t.ea[e]&1;return r}function kl(t){var e,r;for(r=0,e=0;e<7;e++)r+=(r<<1)+(t.ca[e]>>3);return r}function zl(t){var e,r;for(!t.temps&&(t.temps=new ue),r=0;r<12;r++)t.temps.ea[t.ea[r]>>1]=(r<<1|t.ea[r]&1)<<24>>24;for(e=0;e<8;e++)t.temps.ca[t.ca[e]&7]=(e|32>>(t.ca[e]>>3)&24)<<24>>24;Bs(t,t.temps)}function cu(t){var e,r,n,o,l,i,s;for(e=new Ru(t),o=new ue,r=Pl(Qt[ot(e.ca,8,!1)])>>4,i={l:0,m:0,h:0},s=0;s<6;s++){if(n=Pl(Qt[ot(e.ca,8,!1)])>>4,r==n)for(l=0;l<16;l++)Bo(e,nt[0][l],o),Ul(o.ca,t.ca)&&(mo(e,nt[0][l],o),Ul(o.ea,t.ea)&&(i=us(i,hl({l:1,m:0,h:0},(s<<4|l)<48?s<<4|l:48))));mu(e),s%3==2&&zl(e)}return i}function _L(t,e){Pr(t.ca,e,8,!1)}function pu(t,e){Pr(t.ea,e,8,!0)}function ms(t,e){var r,n,o;for(n=0,r=10;r>=0;--r,e>>=1)n^=o=e&1,t.ea[r]=(t.ea[r]&-2|o)<<24>>24;t.ea[11]=(t.ea[11]&-2|n)<<24>>24}function cs(t,e){var r,n,o;for(n=15,r=6;r>=0;--r,e=~~(e/3))n-=o=e%3,t.ca[r]=(t.ca[r]&7|o<<3)<<24>>24;t.ca[7]=(t.ca[7]&7|n%3<<3)<<24>>24}function KL(t){var e,r,n,o,l;for(l=0,o=0,n=0;n<12;n++)o|=1<<(t.ea[n]>>1),l^=t.ea[n]&1;if(o!=4095)return-2;if(l!=0)return-3;for(r=0,l=0,e=0;e<8;e++)r|=1<<(t.ca[e]&7),l+=t.ca[e]>>3;return r!=255?-4:l%3!=0?-5:(bs(ot(t.ea,12,!0),12)^bs(ot(t.ca,8,!1),8))!=0?-6:0}function Bo(t,e,r){Z();var n,o,l,i,s,u;for(u=Wt[nt[0][e]],s=Wt[e],n=0;n<8;n++)l=u.ca[t.ca[s.ca[n]&7]&7]>>3,i=t.ca[s.ca[n]&7]>>3,o=l<3?i:(3-i)%3,r.ca[n]=(u.ca[t.ca[s.ca[n]&7]&7]&7|o<<3)<<24>>24}function ar(t,e,r){Z();var n,o,l;for(n=0;n<8;n++)o=t.ca[e.ca[n]&7]>>3,l=e.ca[n]>>3,r.ca[n]=(t.ca[e.ca[n]&7]&7|(o+l)%3<<3)<<24>>24}function Cl(t,e,r){var n,o,l,i;for(n=0;n<8;n++)l=t.ca[e.ca[n]&7]>>3,i=e.ca[n]>>3,o=l+(l<3?i:6-i),o=o%3+(l<3==i<3?0:3),r.ca[n]=(t.ca[e.ca[n]&7]&7|o<<3)<<24>>24}function ue(){Z(),Ls(this)}function At(t,e,r,n){Ls(this),Pr(this.ca,t,8,!1),cs(this,e),Pr(this.ea,r,12,!0),ms(this,n)}function Ru(t){Ls(this),Bs(this,t)}function Pl(t){return Z(),t^os>>((t&15)<<1)&3}function mo(t,e,r){Z();var n,o,l;for(l=Wt[nt[0][e]],o=Wt[e],n=0;n<12;n++)r.ea[n]=(l.ea[t.ea[o.ea[n]>>1]>>1]^t.ea[o.ea[n]>>1]&1^o.ea[n]&1)<<24>>24}function Lt(t,e,r){Z();var n;for(n=0;n<12;n++)r.ea[n]=(t.ea[e.ea[n]>>1]^e.ea[n]&1)<<24>>24}function ur(t,e,r){Z();var n;return n=Ds[t],r&&(n=n^os>>((n&15)<<1)&3),n&65520|jt[n&15][e]}function Du(){return Z(),0}function WL(){var t,e;for(fe[0]=new At(15120,0,119750400,0),fe[3]=new At(21021,1494,323403417,0),fe[6]=new At(8064,1236,29441808,550),fe[9]=new At(9,0,5880,0),fe[12]=new At(1230,412,2949660,0),fe[15]=new At(224,137,328552,137),t=0;t<18;t+=3)for(e=0;e<2;e++)fe[t+e+1]=new ue,Lt(fe[t+e],fe[t],fe[t+e+1]),ar(fe[t+e],fe[t],fe[t+e+1])}function QL(){Z();var t,e,r;for(ps(40320,Dn,Qt,ds=Y(De,Re,0,2768,7,1),2),t=new ue,r=0;r<2768;r++)pu(t,Dn[r]),dn[r]=Fn(t.ea,0,!0)+bs(Dn[r],8)*70<<24>>24,zl(t),Ds[r]=Qt[ot(t.ea,8,!0)];for(e=0;e<24;e++)Pr(t.ea,e,12,!0),zl(t),Ml[e]=ot(t.ea,12,!0)%24<<24>>24}function jL(){var t,e,r,n,o,l,i,s,u,a,f,g,L,B,p,m;for(t=new ue,e=new ue,r=new At(28783,0,259268407,0),m=new At(15138,0,119765538,7),g=new At(5167,0,83473207,0),o=0;o<8;o++)g.ca[o]=Fl(g.ca[o]|24);for(l=0;l<16;l++)Wt[l]=new Ru(t),Cl(t,m,e),Lt(t,m,e),p=e,e=t,t=p,l%4==3&&(Cl(p,g,e),Lt(p,g,e),p=e,e=t,t=p),l%8==7&&(Cl(p,r,e),Lt(p,r,e),p=e,e=t,t=p);for(i=0;i<16;i++)for(u=0;u<16;u++)for(Cl(Wt[i],Wt[u],t),f=0;f<16;f++)if(Ul(Wt[f].ca,t.ca)){jt[i][u]=f,nt[f][u]=i;break}for(a=0;a<18;a++)for(B=0;B<16;B++){for(Bo(fe[a],nt[0][B],t),L=0;L<18;L++)if(Ul(fe[L].ca,t.ca)){co[B][a]=L,gr[B][(We(),An)[a]]=An[L];break}B%2==0&&(Cr[a<<3|B>>1]=co[B][a])}for(n=0;n<18;n++)for(Gl[n]=cu(fe[n]),s=n,B=0;B<48;B++)co[B%16][s]<n&&(Fu[B]|=1<<n),B%16==15&&(s=Tl[2][s])}function ps(t,e,r,n,o){Z();var l,i,s,u,a,f,g,L,B;for(l=new ue,s=new ue,i=0,a=0,B=o>=2?1:2,f=o!=1,u=0;u<t;u++)if(r[u]==0){switch(o){case 0:ms(l,u);break;case 1:cs(l,u);break;case 2:Pr(l.ea,u,8,!0)}for(g=0;g<16;g+=B){switch(f?mo(l,g,s):Bo(l,g,s),o){case 0:a=El(s);break;case 1:a=kl(s);break;case 2:a=ot(s.ea,8,!0)}o==0&&(fr[i<<3|g>>1]=a&Oe),a==u&&(n[i]=(n[i]|1<<~~(g/B))&Oe),L=~~((i<<4|g)/B),r[a]=L&Oe}e[i++]=u&Oe}return i}function qL(t,e,r,n,o,l,i,s){var u,a,f,g,L;if(g=lr(rt((Er(),Ln),(i>>4)*140+kr[(Z(),dn)[s>>4]&255][nt[i&15][s&15]]),lr(rt(Ln,n*140+kr[dn[e]&255][nt[o][r]]),rt(bl,e*24+Lo[l][r]))),g>t.maxDep2)return g-t.maxDep2;for(u=t.maxDep2;u>=g&&(L=yu(t,n,o,e,r,l,u,t.depth1,10),!(L<0));u--){for(u-=L,t.solLen=0,t.solution=new ku,$L(t.solution,t.verbose,t.urfIdx,t.depth1),f=0;f<t.depth1+u;f++)vu(t.solution,t.move[f]);for(a=t.preMoveLen-1;a>=0;a--)vu(t.solution,t.preMoves[a]);t.solLen=t.solution.length_0}return u!=t.maxDep2?(t.maxDep2=fs(bu,t.solLen-t.length1-1),iu(t.probe,t.probeMin)?0:1):1}function VL(t){var e,r,n,o,l,i,s,u,a,f,g,L,B,p,m;if(t.isRec=!1,iu(t.probe,t.solution?t.probeMin:t.probeMax))return 0;for(t.probe=hL(t.probe,{l:1,m:0,h:0}),n=t.valid1;n<t.depth1;n++)ar(t.phase1Cubie[n],(Z(),fe)[t.move[n]],t.phase1Cubie[n+1]),Lt(t.phase1Cubie[n],fe[t.move[n]],t.phase1Cubie[n+1]);for(t.valid1=t.depth1,s=NL(t.phase1Cubie[t.depth1]),u=s&15,s>>=4,a=OL(t.phase1Cubie[t.depth1]),f=a&15,a>>=4,g=ot(t.phase1Cubie[t.depth1].ea,12,!0)%24,r=ur(a,f,!1),e=ur(s,u,!0),o=t.depth1==0?-1:t.move[t.depth1-1],l=t.preMoveLen==0?-1:t.preMoves[t.preMoveLen-1],m=0,p=(t.preMoveLen==0?1:2)*(t.depth1==0?1:2),L=0,B=(1<<p)-1;L<p;L++){if((B>>L&1)!=0){if(B&=~(1<<L),m=qL(t,s,u,a,f,g,r,e),m==0||m>2)break;m==2&&(B&=4<<L)}if(B==0)break;(L&1)==0&&t.depth1>0?(i=(We(),An)[~~(o/3)*3+1],t.move[t.depth1-1]=ht[i]*2-t.move[t.depth1-1],g=(Er(),cn)[g][i],s=gn[s][(Z(),gr)[u][i]],u=jt[s&15][u],s>>=4,a=Bn[a][gr[f][i]],f=jt[a&15][f],a>>=4,e=ur(s,u,!0),r=ur(a,f,!1)):t.preMoveLen>0&&(i=(We(),An)[~~(l/3)*3+1],t.preMoves[t.preMoveLen-1]=ht[i]*2-t.preMoves[t.preMoveLen-1],g=(Z(),Ml)[(Er(),cn)[Ml[g]][i]],s=gn[e>>4][gr[e&15][i]],e=s&-16|jt[s&15][e&15],s=ur(e>>4,e&15,!0),u=s&15,s>>=4,a=Bn[r>>4][gr[r&15][i]],r=a&-16|jt[a&15][r&15],a=ur(r>>4,r&15,!1),f=a&15,a>>=4)}return t.depth1>0&&(t.move[t.depth1-1]=o),t.preMoveLen>0&&(t.preMoves[t.preMoveLen-1]=l),m==0?0:2}function HL(t){var e;for(t.conjMask=0,t.selfSym=cu(t.cc),t.conjMask|=as(Ct(wr(t.selfSym,16),{l:Oe,m:0,h:0}),{l:0,m:0,h:0})?18:0,t.conjMask|=as(Ct(wr(t.selfSym,32),{l:Oe,m:0,h:0}),{l:0,m:0,h:0})?36:0,t.conjMask|=as(Ct(wr(t.selfSym,48),{l:Oe,m:0,h:0}),{l:0,m:0,h:0})?56:0,t.selfSym=Ct(t.selfSym,{l:He,m:He,h:15}),t.maxPreMoves=t.conjMask>7?0:20,e=0;e<6;e++)Bs(t.urfCubieCube[e],t.cc),gu(t.urfCoordCube[e],t.urfCubieCube[e],20),mu(t.cc),e%3==2&&zl(t.cc)}function Au(t,e,r,n,o){var l,i,s,u,a,f;if(e.prun==0&&n<5)return t.allowShorter||n==0?(t.depth1-=n,a=VL(t),t.depth1+=n,a):1;for(f=Du(ss(r)),l=0;l<18;l+=3)if(!(l==o||l==o-9)){for(s=0;s<3;s++)if(i=l+s,!(t.isRec&&i!=t.move[t.depth1-n]||f!=0&&(f&1<<i)!=0)){if(u=EL(t.nodeUD[n],e,i),u>n)break;if(u==n)continue;if(u=kL(t.nodeUD[n],e,i),u>n)break;if(u==n)continue;if(t.move[t.depth1-n]=i,t.valid1=fs(t.valid1,t.depth1-n),a=Au(t,t.nodeUD[n],r&vr((Z(),Gl)[i]),n-1,l),a==0)return 0;if(a>=2)break}}return 1}function hu(t,e,r,n,o){var l,i,s;if(t.preMoveLen=t.maxPreMoves-e,(t.isRec?t.depth1==t.length1-t.preMoveLen:t.preMoveLen==0||(225207>>r&1)==0)&&(t.depth1=t.length1-t.preMoveLen,t.phase1Cubie[0]=n,t.allowShorter=t.depth1==Us&&t.preMoveLen!=0,gu(t.nodeUD[t.depth1+1],n,t.depth1)&&Au(t,t.nodeUD[t.depth1+1],o,t.depth1,-1)==0))return 0;if(e==0||t.preMoveLen+Us>=t.length1)return 1;for(s=Du(ss(o)),(e==1||t.preMoveLen+1+Us>=t.length1)&&(s|=225207),r=~~(r/3)*3,l=0;l<18;l++){if(l==r||l==r-9||l==r+9){l+=2;continue}if(!(t.isRec&&l!=t.preMoves[t.maxPreMoves-e]||(s&1<<l)!=0)&&(ar((Z(),fe)[l],n,t.preMoveCubes[e]),Lt(fe[l],n,t.preMoveCubes[e]),t.preMoves[t.maxPreMoves-e]=l,i=hu(t,e-1,l,t.preMoveCubes[e],o&vr(Gl[l])),i==0))return 0}return 1}function yu(t,e,r,n,o,l,i,s,u){var a,f,g,L,B,p,m,F,A,b,h;if(e==0&&n==0&&l==0)return i;for(A=(We(),Do)[u],m=0;m<10;m++){if((A>>m&1)!=0){m+=66>>m&3;continue}if(F=(Er(),cn)[l][m],f=gn[n][(Z(),gr)[o][m]],g=jt[f&15][o],f>>=4,B=Bn[e][gr[r][m]],p=jt[B&15][r],B>>=4,L=ur(B,p,!1),a=ur(f,g,!0),b=rt(Ln,(L>>4)*140+kr[dn[a>>4]&255][nt[L&15][a&15]]),b>i+1)return i-b+1;if(b>=i){m+=66>>m&3&i-b;continue}if(b=lr(rt(bl,f*24+Lo[F][g]),rt(Ln,B*140+kr[dn[f]&255][nt[p][g]])),b>=i){m+=66>>m&3&i-b;continue}if(h=yu(t,B,p,f,g,F,i-1,s+1,m),h>=0)return t.move[s]=ht[m],h;if(h<-2)break;h<-1&&(m+=66>>m&3)}return-1}function YL(t){for(t.length1=t.isRec?t.length1:0;t.length1<t.solLen;t.length1++)for(t.maxDep2=fs(bu,t.solLen-t.length1-1),t.urfIdx=t.isRec?t.urfIdx:0;t.urfIdx<6;t.urfIdx++)if((t.conjMask&1<<t.urfIdx)==0&&hu(t,t.maxPreMoves,-30,t.urfCubieCube[t.urfIdx],vr(Ct(t.selfSym,{l:Oe,m:0,h:0})))==0)return t.solution?Eu(t.solution):\"Error 8\";return t.solution?Eu(t.solution):\"Error 7\"}function ZL(t,e){var r;return r=XL(t,e),r!=0?\"Error \"+(r<0?-r:r):(t.solLen=22,t.probe={l:0,m:0,h:0},t.probeMax={l:3531008,m:23,h:0},t.probeMin={l:0,m:0,h:0},t.verbose=0,t.solution=null,t.isRec=!1,Lu(!1),HL(t),YL(t))}function XL(t,e){var r,n,o,l;for(n=0,o=Y(ee,le,0,54,7,1),r=bL(J(X(De,1),Re,0,7,[e.charCodeAt(4),e.charCodeAt(13),e.charCodeAt(22),e.charCodeAt(31),e.charCodeAt(40),e.charCodeAt(49)])),l=0;l<54;l++){if(o[l]=UL(r,xL(e.charCodeAt(l)))<<24>>24,o[l]==-1)return-1;n+=1<<(o[l]<<2)}return n!=10066329?-1:(JL(o,t.cc),KL(t.cc))}function Uu(){var t,e,r;for(this.move=Y(Ee,ve,0,31,7,1),this.nodeUD=Y(vl,se,31,21,0,1),this.nodeRL=Y(vl,se,31,21,0,1),this.nodeFB=Y(vl,se,31,21,0,1),this.cc=new ue,this.urfCubieCube=Y(Ro,se,7,6,0,1),this.urfCoordCube=Y(vl,se,31,6,0,1),this.phase1Cubie=Y(Ro,se,7,21,0,1),this.preMoveCubes=Y(Ro,se,7,21,0,1),this.preMoves=Y(Ee,ve,0,20,7,1),e=0;e<21;e++)this.nodeUD[e]=new fo,this.nodeRL[e]=new fo,this.nodeFB[e]=new fo,this.phase1Cubie[e]=new ue;for(r=0;r<6;r++)this.urfCubieCube[r]=new ue,this.urfCoordCube[r]=new fo;for(t=0;t<20;t++)this.preMoveCubes[t+1]=new ue}function We(){if(!Su){Su=!0;var t,e,r,n,o,l;for(Mr=J(X(ee,2),se,10,0,[J(X(ee,1),le,0,7,[8,9,20]),J(X(ee,1),le,0,7,[6,18,38]),J(X(ee,1),le,0,7,[0,36,47]),J(X(ee,1),le,0,7,[2,45,11]),J(X(ee,1),le,0,7,[29,26,15]),J(X(ee,1),le,0,7,[27,44,24]),J(X(ee,1),le,0,7,[33,53,42]),J(X(ee,1),le,0,7,[35,17,51])]),Vt=J(X(ee,2),se,10,0,[J(X(ee,1),le,0,7,[5,10]),J(X(ee,1),le,0,7,[7,19]),J(X(ee,1),le,0,7,[3,37]),J(X(ee,1),le,0,7,[1,46]),J(X(ee,1),le,0,7,[32,16]),J(X(ee,1),le,0,7,[28,25]),J(X(ee,1),le,0,7,[30,43]),J(X(ee,1),le,0,7,[34,52]),J(X(ee,1),le,0,7,[23,12]),J(X(ee,1),le,0,7,[21,41]),J(X(ee,1),le,0,7,[50,39]),J(X(ee,1),le,0,7,[48,14])]),qt=Ye(Ee,[se,ve],[17,0],7,[13,13],2),Ss=J(X(wL,1),se,2,4,[\"U \",\"U2\",\"U'\",\"R \",\"R2\",\"R'\",\"F \",\"F2\",\"F'\",\"D \",\"D2\",\"D'\",\"L \",\"L2\",\"L'\",\"B \",\"B2\",\"B'\"]),ht=J(X(Ee,1),ve,0,7,[0,1,2,4,7,9,10,11,13,16,3,5,6,8,12,14,15,17]),An=Y(Ee,ve,0,18,7,1),Do=Y(Ee,ve,0,11,7,1),e=0;e<18;e++)An[ht[e]]=e;for(r=0;r<10;r++)for(n=~~(ht[r]/3),Do[r]=0,o=0;o<10;o++)l=~~(ht[o]/3),Do[r]|=(n==l||n%3==l%3&&n>=l?1:0)<<o;for(Do[10]=0,t=0;t<13;t++)for(qt[t][0]=qt[t][t]=1,o=1;o<t;o++)qt[t][o]=qt[t-1][o-1]+qt[t-1][o]}}function Fn(t,e,r){We();var n,o,l,i,s;for(n=t.length-1,l=0,s=4,o=n;o>=0;o--)i=xu(t[o],r),(i&12)==e&&(l+=qt[o][s--]);return l}function bs(t,e){We();var r,n;for(n=0,r=e-2;r>=0;r--)n^=t%(e-r),t=~~(t/(e-r));return n&1}function ot(t,e,r){We();var n,o,l,i;for(o=0,i={l:1323536,m:2777561,h:1043915},n=0;n<e-1;n++)l=xu(t[n],r)<<2,o=(e-n)*o+vr(Ct(wr(i,l),{l:15,m:0,h:0})),i=su(i,hl({l:1118480,m:279620,h:69905},l));return o}function xu(t,e){return e?t>>1:t&7}function wu(t,e,r,n){We();var o,l,i,s;for(o=t.length-1,s=4,l=o,i=o;i>=0;i--)e>=qt[i][s]?(e-=qt[i][s--],t[i]=Il(t[i],s|r,n)):((l&12)==r&&(l-=4),t[i]=Il(t[i],l--,n))}function Pr(t,e,r,n){We();var o,l,i,s,u,a;for(a={l:1323536,m:2777561,h:1043915},o={l:0,m:0,h:0},s=2;s<=r;s++)o=us(hl(o,4),ss(e%s)),e=~~(e/s);for(l=0;l<r-1;l++)u=(vr(o)&15)<<2,o=wr(o,4),t[l]=Il(t[l],vr(Ct(wr(a,u),{l:15,m:0,h:0})),n),i=su(hl({l:1,m:0,h:0},u),{l:1,m:0,h:0}),a=us(Ct(a,i),Ct(wr(a,4),{l:~i.l&He,m:~i.m&He,h:~i.h&nr}));t[r-1]=Il(t[r-1],vr(Ct(a,{l:15,m:0,h:0})),n)}function Il(t,e,r){return(r?e<<1|t&1:e|t&-8)<<24>>24}function JL(t,e){We();var r,n,o,l,i,s,u,a;for(l=0;l<8;l++)e.ca[l]=0;for(i=0;i<12;i++)e.ea[i]=0;for(s=0;s<8;s++){for(a=0;a<3&&!(t[Mr[s][a]]==0||t[Mr[s][a]]==3);a++);for(r=t[Mr[s][(a+1)%3]],n=t[Mr[s][(a+2)%3]],u=0;u<8;u++)if(r==~~(Mr[u][1]/9)&&n==~~(Mr[u][2]/9)){e.ca[s]=Fl(a%3<<3|u);break}}for(o=0;o<12;o++)for(u=0;u<12;u++){if(t[Vt[o][0]]==~~(Vt[u][0]/9)&&t[Vt[o][1]]==~~(Vt[u][1]/9)){e.ea[o]=Fl(u<<1);break}if(t[Vt[o][0]]==~~(Vt[u][1]/9)&&t[Vt[o][1]]==~~(Vt[u][0]/9)){e.ea[o]=Fl(u<<1|1);break}}}function vu(t,e){var r,n,o;if(t.length_0==0){t.moves[t.length_0++]=e;return}if(r=~~(e/3),n=~~(t.moves[t.length_0-1]/3),r==n){o=(e%3+t.moves[t.length_0-1]%3+1)%4,o==3?--t.length_0:t.moves[t.length_0-1]=r*3+o;return}if(t.length_0>1&&r%3==n%3&&r==~~(t.moves[t.length_0-2]/3)){o=(e%3+t.moves[t.length_0-2]%3+1)%4,o==3?(t.moves[t.length_0-2]=t.moves[t.length_0-1],--t.length_0):t.moves[t.length_0-2]=r*3+o;return}t.moves[t.length_0++]=e}function $L(t,e,r,n){t.verbose=e,t.urfIdx=r,t.depth1=n}function Eu(t){var e,r,n;if(r=new vL,n=(t.verbose&2)!=0?(t.urfIdx+3)%6:t.urfIdx,n<3)for(e=0;e<t.length_0;e++)(t.verbose&1)!=0&&e==t.depth1&&(r.string+=\". \"),au(uu(r,(We(),Ss)[(Z(),Tl)[n][t.moves[e]]]));else for(e=t.length_0-1;e>=0;e--)au(uu(r,(We(),Ss)[(Z(),Tl)[n][t.moves[e]]])),(t.verbose&1)!=0&&e==t.depth1&&(r.string+=\". \");return r.string}function ku(){this.moves=Y(Ee,ve,0,31,7,1)}var se,He,nr,BL,Oe,Re,ve,os,ao,le,q,dl,yl,wL,fu,kr,gs,gn,Ln,Bn,mn,bl,Lo,cn,pn,Rn,ir,Sl,sr,xl,wl,vl,Bu,Wt,Qt,Dn,zr,Rs,fr,Ml,dn,Ds,Cr,co,gr,jt,nt,du,ds,Fs,po,As,Fu,fe,Gl,hs,ys,Tl,Ro,bu,Us,Su,qt,Do,Mr,Vt,Ss,An,ht,Ee,eB,ee,tB,De,rB,nB,Cu=U(()=>{se={3:1},He=4194303,nr=1048575,BL=524288,Oe=65535,Re={11:1,3:1},ve={17:1,3:1},os=14540032,ao=286331153,le={10:1,3:1},dl={};uo(1,null,{},RL);uo(79,1,{},ls);q.createClassLiteralForArray=function(e){var r;return r=new ls,r.modifiers=4,e>1?r.componentType=ru(this,e-1):r.componentType=this,r};q.isPrimitive=function(){return(this.modifiers&1)!=0};wL=or(\"java.lang\",\"String\",2);fu=!1;uo(31,1,{31:1},fo);q.flip=0;q.flipc=0;q.fsym=0;q.prun=0;q.slice_0=0;q.tsym=0;q.twist=0;q.twistc=0;wl=0,vl=or(\"org.cubing.min2phase.client\",\"CoordCube\",31),Bu=!1;Ro=or(\"org.cubing.min2phase.client\",\"CubieCube\",7);uo(72,1,{},Uu);q.allowShorter=!1;q.conjMask=0;q.depth1=0;q.isRec=!1;q.length1=0;q.maxDep2=0;q.maxPreMoves=0;q.preMoveLen=0;q.probe={l:0,m:0,h:0};q.probeMax={l:0,m:0,h:0};q.probeMin={l:0,m:0,h:0};q.selfSym={l:0,m:0,h:0};q.solLen=0;q.urfIdx=0;q.valid1=0;q.verbose=0;bu=12,Us=7,Su=!1;uo(150,1,{},ku);q.depth1=0;q.length_0=0;q.urfIdx=0;q.verbose=0;Ee=Al(\"int\",\"I\");or(\"com.google.gwt.lang\",\"CollapsedPropertyHolder\",252);or(\"com.google.gwt.lang\",\"JavaClassHierarchySetupUtil\",254);eB=or(\"com.google.gwt.lang\",\"LongLibBase/LongEmul\",null);or(\"com.google.gwt.lang\",\"ModuleUtils\",257);ee=Al(\"byte\",\"B\"),tB=Al(\"long\",\"J\"),De=Al(\"char\",\"C\");or(\"com.google.gwt.user.client.rpc\",\"XsrfToken\",null),DL(\"java.util\",\"Map/Entry\");rB=function(){Lu(!1)},nB=function(t){return ZL(new Uu,t)}});async function Pu(){let t=await he[\"3x3x3\"].kpuzzle(),e=t.startState();for(let r of $2)e=e.applyAlg(k.fromString((await Kt())(r)));return X2(t,e)?e:Pu()}function Mu(){return oB??(oB=Promise.resolve().then(()=>(Cu(),zu)))}async function xs(t){return tt(),k.fromString((await Mu()).solveState(H2(t)))}async function hn(){return xs(await Pu())}async function Gu(){(await Mu()).initialize()}async function Tu(){return fn(await hn(),lB)}async function Nu(){let t=new ut,e=await hn();return t.experimentalPushAlg(Iu),t.experimentalPushAlg(e),t.experimentalPushAlg(Iu),t.toAlg()}var oB,lB,Iu,ws=U(()=>{Ae();Ot();rr();_t();Dl();Y2();J2();eu();oB=null;lB=[[null,\"Rw\",\"Rw2\",\"Rw'\",\"Fw\",\"Fw'\"],[null,\"Dw\",\"Dw2\",\"Dw'\"]];Iu=new k(\"R' U' F\")});function ae(t,...e){let r=e.length,n=t[e[r-1]];for(let o=r;o>0;o--)t[e[o]]=t[e[o-1]];return t[e[0]]=n,ae}function Ou(t,e,r,n){r=(r||8)-1;let o=1985229328,l=0;n??(n=0),n<0&&(e<<=1);for(let i=0;i<r;++i){let s=vs[r-i],u=~~(e/s);l^=u,e%=s,u<<=2,t[i]=o>>u&7;let a=(1<<u)-1;o=(o&a)+(o>>4&~a)}return n<0&&(l&1)!=0?(t[r]=t[r-1],t[r-1]=o&7):t[r]=o&7,t}var Le,vs,_u=U(()=>{Le=[],vs=[1];for(let t=0;t<32;++t){Le[t]=[];for(let e=0;e<32;++e)Le[t][e]=0}for(let t=0;t<32;++t){Le[t][0]=Le[t][t]=1,vs[t+1]=vs[t]*(t+1);for(let e=1;e<t;++e)Le[t][e]=Le[t-1][e-1]+Le[t-1][e]}});var Yf={};Ue(Yf,{initialize:()=>Fm,random444Scramble:()=>Am});function T(t,e){let r=new Array(t);if(e!==void 0)for(let n=0;n<t;n++)r[n]=new Array(e);return r}function LB(t){return new Fo[t]}function at(t,e,r,...n){let o=Fo[t];o&&!o.___clazz$?V=o.prototype:(!o&&(o=Fo[t]=function(){}),V=o.prototype=e<0?{}:LB(e),V.castableTypeMap$=r);for(let l of n)l.prototype=V;o.___clazz$&&(V.___clazz$=o.___clazz$,o.___clazz$=null)}function Lr(t){let e={};for(let r=0,n=t.length;r<n;++r)e[t[r]]=1;return e}function ju(){}function BB(t,e){let r=qu(0,e);return Vu(t.___clazz$,t.castableTypeMap$,t.queryId$,r),r}function qu(t,e){let r=new Array(e);if(t===3)for(let n=0;n<e;++n){let o={m:0,l:0,h:0};o.l=o.m=o.h=0,r[n]=o}else if(t>0){let n=[null,0,!1][t];for(let o=0;o<e;++o)r[o]=n}return r}function zs(t,e,r,n,o){let l=qu(o,n);return Vu(t,e,r,l),l}function Vu(t,e,r,n){return Yu(),cB(n,Cs,Ps),n.___clazz$=t,n.castableTypeMap$=e,n.queryId$=r,n}function Nl(t,e,r){return t[e]=r}function Yu(){Hu||(Hu=!0,Cs=[],Ps=[],mB(new ju,Cs,Ps))}function mB(t,e,r){let n=0,o;for(let l in t)(o=t[l])&&(e[n]=l,r[n]=o,++n)}function cB(t,e,r){Yu();for(let n=0,o=e.length;n<o;++n)t[e[n]]=r[n]}function pB(t,e){return t.castableTypeMap$&&!!t.castableTypeMap$[e]}function RB(t,e){return t!==null&&pB(t,e)}function DB(){if(Zu)return!1;Zu=!0,Ql=T(15582,36),jl=T(15582),Ut=T(15582),bn=T(48,48),bt=T(48,36),Un=T(48),Ts=T(48)}function Ms(t){t.ct=T(24)}function Xu(t,e){let r,n;if(RB(e,Wu)){for(r=e,n=0;n<24;++n)if(t.ct[n]!==r.ct[n])return!1;return!0}return!1}function Ol(t){let e,r,n;for(r=0,n=8,e=23;e>=0;--e)t.ct[e]===1&&(r+=Le[e][n--]);return r}function _l(t){let e,r;if(yn!==null)return yn[Ol(t)];for(r=0;r<48;++r){if(e=UB(Ol(t)),e!==-1)return e*64+r;oe(t,0),r%2==1&&oe(t,1),r%8==7&&oe(t,2),r%16==15&&oe(t,3)}}function yt(t,e){let r=e%3;switch(e=~~(e/3),e){case 0:D(t.ct,0,1,2,3,r);break;case 1:D(t.ct,16,17,18,19,r);break;case 2:D(t.ct,8,9,10,11,r);break;case 3:D(t.ct,4,5,6,7,r);break;case 4:D(t.ct,20,21,22,23,r);break;case 5:D(t.ct,12,13,14,15,r);break;case 6:D(t.ct,0,1,2,3,r),D(t.ct,8,20,12,16,r),D(t.ct,9,21,13,17,r);break;case 7:D(t.ct,16,17,18,19,r),D(t.ct,1,15,5,9,r),D(t.ct,2,12,6,10,r);break;case 8:D(t.ct,8,9,10,11,r),D(t.ct,2,19,4,21,r),D(t.ct,3,16,5,22,r);break;case 9:D(t.ct,4,5,6,7,r),D(t.ct,10,18,14,22,r),D(t.ct,11,19,15,23,r);break;case 10:D(t.ct,20,21,22,23,r),D(t.ct,0,8,4,14,r),D(t.ct,3,11,7,13,r);break;case 11:D(t.ct,12,13,14,15,r),D(t.ct,1,20,7,18,r),D(t.ct,0,23,6,17,r)}}function oe(t,e){switch(e){case 0:yt(t,19),yt(t,28);break;case 1:yt(t,21),yt(t,32);break;case 2:D(t.ct,0,3,1,2,1),D(t.ct,8,11,9,10,1),D(t.ct,4,7,5,6,1),D(t.ct,12,15,13,14,1),D(t.ct,16,19,21,22,1),D(t.ct,17,18,20,23,1);break;case 3:yt(t,18),yt(t,29),yt(t,24),yt(t,35)}}function Ju(t,e){let r;for(r=0;r<e;++r)oe(t,0),r%2==1&&oe(t,1),r%8==7&&oe(t,2),r%16==15&&oe(t,3)}function Gs(t,e){let r,n;for(n=8,r=23;r>=0;--r)t.ct[r]=0,e>=Le[r][n]&&(e-=Le[r][n--],t.ct[r]=1)}function Kl(t,e){let r;for(r=0;r<24;++r)t.ct[r]=e.ct[r]}function Ao(){let t;for(Ms(this),t=0;t<8;++t)this.ct[t]=1;for(t=8;t<24;++t)this.ct[t]=0}function Wl(t,e){let r;for(Ms(this),r=0;r<24;++r)this.ct[r]=~~(t.ct[r]/2)===e?1:0}function ho(t){let e;for(Ms(this),e=0;e<24;++e)this.ct[e]=t[e]}function dB(){let t,e,r=new Ao,n=new Ao;for(t=0;t<15582;++t)for(Gs(n,jl[t]),e=0;e<36;++e)Kl(r,n),yt(r,e),Ql[t][e]=_l(r)}function FB(){let t,e,r,n,o,l,i,s;for(ui(Ut),Ut[0]=0,e=0,r=1;r!==15582;)for(l=e>4,s=l?-1:e,t=l?e:-1,++e,n=0;n<15582;++n)if(Ut[n]===s){for(i=0;i<27;++i)if(o=~~Ql[n][i]>>>6,Ut[o]===t)if(++r,l){Ut[n]=e;break}else Ut[o]=e}}function AB(t){let e,r,n,o=new ho(t.ct);for(n=0;n<48;++n){for(e=!0,r=0;r<24;++r)if(o.ct[r]!==~~(r/4)){e=!1;break}if(e)return n;oe(o,0),n%2==1&&oe(o,1),n%8==7&&oe(o,2),n%16==15&&oe(o,3)}return-1}function hB(){let t,e,r,n=new Ao;for(t=0;t<24;++t)n.ct[t]=t;let o=new ho(n.ct),l=new ho(n.ct),i=new ho(n.ct);for(t=0;t<48;++t){for(e=0;e<48;++e){for(r=0;r<48;++r)Xu(n,o)&&(bn[t][e]=r,r===0&&(Un[t]=e)),oe(o,0),r%2==1&&oe(o,1),r%8==7&&oe(o,2),r%16==15&&oe(o,3);oe(n,0),e%2==1&&oe(n,1),e%8==7&&oe(n,2),e%16==15&&oe(n,3)}oe(n,0),t%2==1&&oe(n,1),t%8==7&&oe(n,2),t%16==15&&oe(n,3)}for(t=0;t<48;++t)for(Kl(n,l),Ju(n,Un[t]),e=0;e<36;++e)for(Kl(o,n),yt(o,e),Ju(o,t),r=0;r<36;++r)if(Kl(i,l),yt(i,r),Xu(i,o)){bt[t][e]=r;break}for(Gs(n,0),t=0;t<48;++t)Ts[Un[t]]=Ol(n),oe(n,0),t%2==1&&oe(n,1),t%8==7&&oe(n,2),t%16==15&&oe(n,3)}function yB(){let t,e,r,n,o=new Ao,l=T(22984);for(e=0;e<22984;e++)l[e]=0;for(t=0,e=0;e<735471;++e)if((l[~~e>>>5]&1<<(e&31))==0){for(Gs(o,e),n=0;n<48;++n)r=Ol(o),l[~~r>>>5]|=1<<(r&31),yn!==null&&(yn[r]=t<<6|Un[n]),oe(o,0),n%2==1&&oe(o,1),n%8==7&&oe(o,2),n%16==15&&oe(o,3);jl[t++]=e}}function UB(t){let e=gm(jl,t);return e>=0?e:-1}function bB(){$u||($u=!0,Yl=T(70,28),Hl=T(6435,28),lf=T(70,16),nf=T(6435,16),Ze=T(450450),of=[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,0,0,0,0,0,1,0,1,0,0,0])}function ql(t){let e,r,n;for(r=0,n=8,e=14;e>=0;--e)t.ct[e]!==t.ct[15]&&(r+=Le[e][n--]);return r}function Vl(t){let e,r,n;for(r=0,n=4,e=6;e>=0;--e)t.rl[e]!==t.rl[7]&&(r+=Le[e][n--]);return r*2+t.parity}function Sn(t,e){t.parity^=of[e];let r=e%3;switch(e=~~(e/3),e){case 0:D(t.ct,0,1,2,3,r);break;case 1:D(t.rl,0,1,2,3,r);break;case 2:D(t.ct,8,9,10,11,r);break;case 3:D(t.ct,4,5,6,7,r);break;case 4:D(t.rl,4,5,6,7,r);break;case 5:D(t.ct,12,13,14,15,r);break;case 6:D(t.ct,0,1,2,3,r),D(t.rl,0,5,4,1,r),D(t.ct,8,9,12,13,r);break;case 7:D(t.rl,0,1,2,3,r),D(t.ct,1,15,5,9,r),D(t.ct,2,12,6,10,r);break;case 8:D(t.ct,8,9,10,11,r),D(t.rl,0,3,6,5,r),D(t.ct,3,2,5,4,r);break;case 9:D(t.ct,4,5,6,7,r),D(t.rl,3,2,7,6,r),D(t.ct,11,10,15,14,r);break;case 10:D(t.rl,4,5,6,7,r),D(t.ct,0,8,4,14,r),D(t.ct,3,11,7,13,r);break;case 11:D(t.ct,12,13,14,15,r),D(t.rl,1,4,7,2,r),D(t.ct,1,0,7,6,r)}}function xn(t,e){switch(e){case 0:Sn(t,19),Sn(t,28);break;case 1:Sn(t,21),Sn(t,32);break;case 2:D(t.ct,0,3,1,2,1),D(t.ct,8,11,9,10,1),D(t.ct,4,7,5,6,1),D(t.ct,12,15,13,14,1),D(t.rl,0,3,5,6,1),D(t.rl,1,2,4,7,1)}}function ef(t,e,r){let n;for(n=0;n<16;++n)t.ct[n]=~~(e.ct[n]/2);for(n=0;n<8;++n)t.rl[n]=e.ct[n+16];t.parity=r}function tf(t,e){let r,n;for(n=8,t.ct[15]=0,r=14;r>=0;--r)e>=Le[r][n]?(e-=Le[r][n--],t.ct[r]=1):t.ct[r]=0}function rf(t,e){let r,n;for(t.parity=e&1,e>>>=1,n=4,t.rl[7]=0,r=6;r>=0;--r)e>=Le[r][n]?(e-=Le[r][n--],t.rl[r]=1):t.rl[r]=0}function Is(){this.rl=T(8),this.ct=T(16)}function SB(){let t,e,r,n,o,l,i,s,u,a,f=new Is;for(o=0;o<70;++o)for(s=0;s<28;++s)rf(f,o),Sn(f,Tr[s]),Yl[o][s]=Vl(f);for(o=0;o<70;++o)for(rf(f,o),i=0;i<16;++i)lf[o][i]=Vl(f),xn(f,0),i%2==1&&xn(f,1),i%8==7&&xn(f,2);for(o=0;o<6435;++o)for(tf(f,o),i=0;i<16;++i)nf[o][i]=ql(f)&65535,xn(f,0),i%2==1&&xn(f,1),i%8==7&&xn(f,2);for(o=0;o<6435;++o)for(s=0;s<28;++s)tf(f,o),Sn(f,Tr[s]),Hl[o][s]=ql(f)&65535;for(ui(Ze),Ze[0]=Ze[18]=Ze[28]=Ze[46]=Ze[54]=Ze[56]=0,r=0,n=6;n!==450450;){let g=r>6,L=g?-1:r,B=g?r:-1;for(++r,o=0;o<450450;++o)if(Ze[o]===L){for(t=~~(o/70),u=o%70,s=0;s<23;++s)if(e=Hl[t][s],a=Yl[u][s],l=e*70+a,Ze[l]===B)if(++n,g){Ze[o]=r;break}else Ze[l]=r}}}function xB(){sf||(sf=!0,yo=T(29400,20),uf=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1],Br=T(29400),_s=[0,9,14,23,27,28,41,42,46,55,60,69],Ks=T(70))}function Ns(t){let e,r,n,o;for(r=0,o=4,e=6;e>=0;--e)t.ud[e]!==t.ud[7]&&(r+=Le[e][o--]);for(r*=35,o=4,e=6;e>=0;--e)t.fb[e]!==t.fb[7]&&(r+=Le[e][o--]);r*=12;let l=t.fb[7]^t.ud[7];for(n=0,o=4,e=7;e>=0;--e)t.rl[e]!==l&&(n+=Le[e][o--]);return t.parity+2*(r+Ks[n])}function wB(t,e){switch(t.parity^=uf[e],e){case 0:case 1:case 2:D(t.ud,0,1,2,3,e%3);break;case 3:D(t.rl,0,1,2,3,1);break;case 4:case 5:case 6:D(t.fb,0,1,2,3,(e-1)%3);break;case 7:case 8:case 9:D(t.ud,4,5,6,7,(e-1)%3);break;case 10:D(t.rl,4,5,6,7,1);break;case 11:case 12:case 13:D(t.fb,4,5,6,7,(e+1)%3);break;case 14:D(t.ud,0,1,2,3,1),D(t.rl,0,5,4,1,1),D(t.fb,0,5,4,1,1);break;case 15:D(t.rl,0,1,2,3,1),D(t.fb,1,4,7,2,1),D(t.ud,1,6,5,2,1);break;case 16:D(t.fb,0,1,2,3,1),D(t.ud,3,2,5,4,1),D(t.rl,0,3,6,5,1);break;case 17:D(t.ud,4,5,6,7,1),D(t.rl,3,2,7,6,1),D(t.fb,3,2,7,6,1);break;case 18:D(t.rl,4,5,6,7,1),D(t.fb,0,3,6,5,1),D(t.ud,0,3,4,7,1);break;case 19:D(t.fb,4,5,6,7,1),D(t.ud,0,7,6,1,1),D(t.rl,1,4,7,2,1)}}function af(t,e,r){let n,o=(e.ct[0]>e.ct[8]?1:0)^(e.ct[8]>e.ct[16]?1:0)^(e.ct[0]>e.ct[16]?1:0)?1:0;for(n=0;n<8;++n)t.ud[n]=e.ct[n]&1^1,t.fb[n]=e.ct[n+8]&1^1,t.rl[n]=e.ct[n+16]&1^1^o;t.parity=o^r}function vB(t,e){let r,n,o,l;for(t.parity=e&1,e>>>=1,o=_s[e%12],e=~~(e/12),l=4,r=7;r>=0;--r)t.rl[r]=0,o>=Le[r][l]&&(o-=Le[r][l--],t.rl[r]=1);for(n=e%35,e=~~(e/35),l=4,t.fb[7]=0,r=6;r>=0;--r)n>=Le[r][l]?(n-=Le[r][l--],t.fb[r]=1):t.fb[r]=0;for(l=4,t.ud[7]=0,r=6;r>=0;--r)e>=Le[r][l]?(e-=Le[r][l--],t.ud[r]=1):t.ud[r]=0}function Os(){this.ud=T(8),this.rl=T(8),this.fb=T(8)}function EB(){let t,e,r,n;for(r=0;r<12;++r)Ks[_s[r]]=r;let o=new Os;for(r=0;r<29400;++r)for(n=0;n<20;++n)vB(o,r),wB(o,n),yo[r][n]=Ns(o)&65535;for(ui(Br),Br[0]=0,t=0,e=1;e!==29400;){for(r=0;r<29400;++r)if(Br[r]===t)for(n=0;n<17;++n)Br[yo[r][n]]===-1&&(Br[yo[r][n]]=t+1,++e);++t}}function kB(t,e){let r;for(r=0;r<24;++r)t.ct[r]=e.ct[r]}function zB(t,e){let r=e%3;switch(e=~~(e/3),e){case 0:D(t.ct,0,1,2,3,r);break;case 1:D(t.ct,16,17,18,19,r);break;case 2:D(t.ct,8,9,10,11,r);break;case 3:D(t.ct,4,5,6,7,r);break;case 4:D(t.ct,20,21,22,23,r);break;case 5:D(t.ct,12,13,14,15,r);break;case 6:D(t.ct,0,1,2,3,r),D(t.ct,8,20,12,16,r),D(t.ct,9,21,13,17,r);break;case 7:D(t.ct,16,17,18,19,r),D(t.ct,1,15,5,9,r),D(t.ct,2,12,6,10,r);break;case 8:D(t.ct,8,9,10,11,r),D(t.ct,2,19,4,21,r),D(t.ct,3,16,5,22,r);break;case 9:D(t.ct,4,5,6,7,r),D(t.ct,10,18,14,22,r),D(t.ct,11,19,15,23,r);break;case 10:D(t.ct,20,21,22,23,r),D(t.ct,0,8,4,14,r),D(t.ct,3,11,7,13,r);break;case 11:D(t.ct,12,13,14,15,r),D(t.ct,1,20,7,18,r),D(t.ct,0,23,6,17,r)}}function Ws(){let t;for(this.ct=T(24),t=0;t<24;++t)this.ct[t]=~~(t/4)}function ff(t){let e,r,n;for(Ws.call(this),e=0;e<23;++e)n=e+t(24-e),this.ct[n]!==this.ct[e]&&(r=this.ct[e],this.ct[e]=this.ct[n],this.ct[n]=r)}function CB(){gf||(gf=!0,Bt=T(18),GB())}function Lf(t){t.cp=[0,1,2,3,4,5,6,7],t.co=[0,0,0,0,0,0,0,0]}function Bf(t,e){let r;for(r=0;r<8;++r)t.cp[r]=e.cp[r],t.co[r]=e.co[r]}function PB(t,e){!t.temps&&(t.temps=new Zl),mf(t,Bt[e],t.temps),Bf(t,t.temps)}function MB(t,e){let r,n;for(n=0,r=6;r>=0;--r)n+=t.co[r]=e%3,e=~~(e/3);t.co[7]=(15-n)%3}function mf(t,e,r){let n,o,l,i;for(n=0;n<8;++n)r.cp[n]=t.cp[e.cp[n]],l=t.co[e.cp[n]],i=e.co[n],o=l,o=o+(l<3?i:6-i),o=o%3,(l>=3?1:0)^(i>=3?1:0)&&(o=o+3),r.co[n]=o}function Zl(){Lf(this)}function mr(t,e){Lf(this),Ou(this.cp,t),MB(this,e)}function cf(t){mr.call(this,t(40320),t(2187))}function GB(){let t,e;for(Bt[0]=new mr(15120,0),Bt[3]=new mr(21021,1494),Bt[6]=new mr(8064,1236),Bt[9]=new mr(9,0),Bt[12]=new mr(1230,412),Bt[15]=new mr(224,137),t=0;t<18;t+=3)for(e=0;e<2;++e)Bt[t+e+1]=new Zl,mf(Bt[t+e],Bt[t],Bt[t+e+1])}function TB(){pf||(pf=!0,St=T(1937880),ei=T(1538),ti=T(1538),zn=T(11880),hf=[0,1,6,3,4,5,2,7],Vs=T(160,12),Hs=T(160,12),qs=[1,1,1,3,12,60,360,2520,20160,181440,1814400,19958400,239500800],js=[0,2,4,6,1,3,7,5,8,9,10,11])}function wn(t,e,r,n,o){let l=t.edgeo[o];t.edgeo[o]=t.edge[n],t.edge[n]=t.edgeo[r],t.edgeo[r]=t.edge[e],t.edge[e]=l}function vn(t,e){let r,n,o,l,i;for(t.isStd||Ff(t),n=0,i=1985229328,l=47768,r=0;r<e;++r)o=t.edge[r]<<2,n*=12-r,o>=32?(n+=l>>o-32&15,l-=4368<<o-32):(n+=i>>o&15,l-=4369,i-=286331152<<o);return n}function Rf(t){let e,r=vn(t,4);e=zn[r];let n=e&7;e>>=3,Jl(t,n);let o=vn(t,10)%20160;return e*20160+o}function Xl(t,e){switch(t.isStd=!1,e){case 0:ae(t.edge,0,4,1,5),ae(t.edgeo,0,4,1,5);break;case 1:ce(t.edge,0,4,1,5),ce(t.edgeo,0,4,1,5);break;case 2:ae(t.edge,0,5,1,4),ae(t.edgeo,0,5,1,4);break;case 3:ce(t.edge,5,10,6,11),ce(t.edgeo,5,10,6,11);break;case 4:ae(t.edge,0,11,3,8),ae(t.edgeo,0,11,3,8);break;case 5:ce(t.edge,0,11,3,8),ce(t.edgeo,0,11,3,8);break;case 6:ae(t.edge,0,8,3,11),ae(t.edgeo,0,8,3,11);break;case 7:ae(t.edge,2,7,3,6),ae(t.edgeo,2,7,3,6);break;case 8:ce(t.edge,2,7,3,6),ce(t.edgeo,2,7,3,6);break;case 9:ae(t.edge,2,6,3,7),ae(t.edgeo,2,6,3,7);break;case 10:ce(t.edge,4,8,7,9),ce(t.edgeo,4,8,7,9);break;case 11:ae(t.edge,1,9,2,10),ae(t.edgeo,1,9,2,10);break;case 12:ce(t.edge,1,9,2,10),ce(t.edgeo,1,9,2,10);break;case 13:ae(t.edge,1,10,2,9),ae(t.edgeo,1,10,2,9);break;case 14:ce(t.edge,0,4,1,5),ce(t.edgeo,0,4,1,5),ae(t.edge,9,11),ae(t.edgeo,8,10);break;case 15:ce(t.edge,5,10,6,11),ce(t.edgeo,5,10,6,11),ae(t.edge,1,3),ae(t.edgeo,0,2);break;case 16:ce(t.edge,0,11,3,8),ce(t.edgeo,0,11,3,8),ae(t.edge,5,7),ae(t.edgeo,4,6);break;case 17:ce(t.edge,2,7,3,6),ce(t.edgeo,2,7,3,6),ae(t.edge,8,10),ae(t.edgeo,9,11);break;case 18:ce(t.edge,4,8,7,9),ce(t.edgeo,4,8,7,9),ae(t.edge,0,2),ae(t.edgeo,1,3);break;case 19:ce(t.edge,1,9,2,10),ce(t.edgeo,1,9,2,10),ae(t.edge,4,6),ae(t.edgeo,5,7)}}function En(t,e){switch(t.isStd=!1,e){case 0:Xl(t,14),Xl(t,17);break;case 1:wn(t,11,5,10,6),wn(t,5,10,6,11),wn(t,1,2,3,0),wn(t,4,9,7,8),wn(t,8,4,9,7),wn(t,0,1,2,3);break;case 2:mt(t,4,5),mt(t,5,4),mt(t,11,8),mt(t,8,11),mt(t,7,6),mt(t,6,7),mt(t,9,10),mt(t,10,9),mt(t,1,1),mt(t,0,0),mt(t,3,3),mt(t,2,2)}}function Jl(t,e){for(;e>=2;)e-=2,En(t,1),En(t,2);e!==0&&En(t,0)}function Uo(t,e){let r,n,o,l,i,s;for(i=1985229328,s=47768,o=0,r=0;r<11;++r)if(n=qs[11-r],l=~~(e/n),e=e%n,o^=l,l<<=2,l>=32){l=l-32,t.edge[r]=s>>l&15;let u=(1<<l)-1;s=(s&u)+(s>>4&~u)}else{t.edge[r]=i>>l&15;let u=(1<<l)-1;i=(i&u)+(i>>>4&~u)+(s<<28),s=s>>4}for((o&1)==0?t.edge[11]=i:(t.edge[11]=t.edge[10],t.edge[10]=i),r=0;r<12;++r)t.edgeo[r]=r;t.isStd=!0}function Df(t,e){let r;for(r=0;r<12;++r)t.edge[r]=e.edge[r],t.edgeo[r]=e.edgeo[r];t.isStd=e.isStd}function df(t,e){let r,n,o,l;for(t.temp===null&&(t.temp=T(12)),r=0;r<12;++r)t.temp[r]=r,t.edge[r]=e.ep[js[r]+12]%12;for(n=1,r=0;r<12;++r)for(;t.edge[r]!==r;)l=t.edge[r],t.edge[r]=t.edge[l],t.edge[l]=l,o=t.temp[r],t.temp[r]=t.temp[l],t.temp[l]=o,n^=1;for(r=0;r<12;++r)t.edge[r]=t.temp[e.ep[js[r]]%12];return n}function Ff(t){let e;for(t.temp===null&&(t.temp=T(12)),e=0;e<12;++e)t.temp[t.edgeo[e]]=e;for(e=0;e<12;++e)t.edge[e]=t.temp[t.edge[e]],t.edgeo[e]=e;t.isStd=!0}function ce(t,e,r,n,o){let l;l=t[e],t[e]=t[n],t[n]=l,l=t[r],t[r]=t[o],t[o]=l}function mt(t,e,r){let n=t.edge[e];t.edge[e]=t.edgeo[r],t.edgeo[r]=n}function Ht(){this.edge=T(12),this.edgeo=T(12)}function IB(){let t,e,r,n,o,l,i,s,u,a,f,g,L,B,p,m,F,A,b,h,C,E,j=new Ht,te=new Ht,I=new Ht;for(ui(St),s=0,$l=1,Qs(St,0,0);$l!==31006080&&(p=s>9,i=s%3,l=(s+1)%3,a=p?3:i,t=p?i:3,!(s>=9));){for(g=0;g<31006080;g+=16)if(E=St[~~g>>4],!(!p&&E===-1)){for(f=g,u=g+16;f<u;++f,E>>=2)if((E&3)===a){for(b=~~(f/20160),e=ei[b],n=f%20160,Uo(j,e*20160+n),F=0;F<17;++F)if(r=kn(j.edge,F<<3,4),h=zn[r],C=h&7,h>>=3,o=kn(j.edge,F<<3|C,10)%20160,L=h*20160+o,bo(St,L)===t){if(Qs(St,p?f:L,l),++$l,p)break;if(A=ti[h],A!==1)for(Df(te,j),Xl(te,F),Jl(te,C),m=1;(A=~~A>>1&65535)!=0;++m)(A&1)==1&&(Df(I,te),Jl(I,m),B=h*20160+vn(I,10)%20160,bo(St,B)===t&&(Qs(St,B,l),++$l))}}}++s}}function bo(t,e){return t[e>>4]>>((e&15)<<1)&3}function kn(t,e,r){let n,o,l,i,s,u=Hs[e],a=Vs[e];for(o=0,s=1985229328,i=47768,n=0;n<r;++n)l=u[t[a[n]]]<<2,o*=12-n,l>=32?(o+=i>>l-32&15,i-=4368<<l-32):(o+=s>>l&15,i-=4369,s-=286331152<<l);return o}function Af(t){let e,r,n,o,l,i,s,u,a,f,g,L=new Ht;if(i=0,l=bo(St,t),l===3)return 10;for(;t!==0;)for(l===0?l=2:--l,a=~~(t/20160),e=ei[a],n=t%20160,Uo(L,e*20160+n),u=0;u<17;++u)if(r=kn(L.edge,u<<3,4),f=zn[r],g=f&7,f>>=3,o=kn(L.edge,u<<3|g,10)%20160,s=f*20160+o,bo(St,s)===l){++i,t=s;break}return i}function NB(t,e){let r=bo(St,t);return r===3?10:(1227133513<<r>>e&3)+e-1}function OB(){let t,e,r,n=new Ht;for(e=0;e<20;++e)for(r=0;r<8;++r){for(Uo(n,0),Xl(n,e),Jl(n,r),t=0;t<12;++t)Vs[e<<3|r][t]=n.edge[t];for(Ff(n),t=0;t<12;++t)Hs[e<<3|r][t]=n.temp[t]}}function _B(){let t,e,r,n,o=new Ht,l=T(1485);for(e=0;e<1485;e++)l[e]=0;for(t=0,e=0;e<11880;++e)if((l[~~e>>>3]&1<<(e&7))==0){for(Uo(o,e*qs[8]),n=0;n<8;++n)r=vn(o,4),r===e&&(ti[t]=(ti[t]|1<<n)&65535),l[~~r>>3]=l[~~r>>3]|1<<(r&7),zn[r]=t<<3|hf[n],En(o,0),n%2==1&&(En(o,1),En(o,2));ei[t++]=e}}function Qs(t,e,r){t[e>>4]^=(3^r)<<((e&15)<<1)}function KB(){yf||(yf=!0)}function WB(t){let e,r,n;for(e=0,n=!1,r=0;r<12;++r)e|=1<<t.ep[r],n=n!==t.ep[r]>=12;return e&=~~e>>12,e===0&&!n}function QB(t,e){let r;for(r=0;r<24;++r)t.ep[r]=e.ep[r]}function jB(t,e){let r=e%3;switch(e=~~(e/3),e){case 0:D(t.ep,0,1,2,3,r),D(t.ep,12,13,14,15,r);break;case 1:D(t.ep,11,15,10,19,r),D(t.ep,23,3,22,7,r);break;case 2:D(t.ep,0,11,6,8,r),D(t.ep,12,23,18,20,r);break;case 3:D(t.ep,4,5,6,7,r),D(t.ep,16,17,18,19,r);break;case 4:D(t.ep,1,20,5,21,r),D(t.ep,13,8,17,9,r);break;case 5:D(t.ep,2,9,4,10,r),D(t.ep,14,21,16,22,r);break;case 6:D(t.ep,0,1,2,3,r),D(t.ep,12,13,14,15,r),D(t.ep,9,22,11,20,r);break;case 7:D(t.ep,11,15,10,19,r),D(t.ep,23,3,22,7,r),D(t.ep,2,16,6,12,r);break;case 8:D(t.ep,0,11,6,8,r),D(t.ep,12,23,18,20,r),D(t.ep,3,19,5,13,r);break;case 9:D(t.ep,4,5,6,7,r),D(t.ep,16,17,18,19,r),D(t.ep,8,23,10,21,r);break;case 10:D(t.ep,1,20,5,21,r),D(t.ep,13,8,17,9,r),D(t.ep,14,0,18,4,r);break;case 11:D(t.ep,2,9,4,10,r),D(t.ep,14,21,16,22,r),D(t.ep,7,15,1,17,r)}}function Ys(){let t;for(this.ep=T(24),t=0;t<24;++t)this.ep[t]=t}function Uf(t){let e,r,n;for(Ys.call(this),e=0;e<23;++e)n=e+t(24-e),n!==e&&(r=this.ep[e],this.ep[e]=this.ep[n],this.ep[n]=r)}function qB(){bf||(bf=!0,Zs=[35,1,34,2,4,6,22,5,19])}function Sf(t){t.moveBuffer=T(60)}function VB(t,e){return t.value-e.value}function Cn(t,e){let r;for(QB(t.edge,e.edge),kB(t.center,e.center),Bf(t.corner,e.corner),t.value=e.value,t.add1=e.add1,t.length1=e.length1,t.length2=e.length2,t.length3=e.length3,t.sym=e.sym,r=0;r<60;++r)t.moveBuffer[r]=e.moveBuffer[r];t.moveLength=e.moveLength,t.edgeAvail=e.edgeAvail,t.centerAvail=e.centerAvail,t.cornerAvail=e.cornerAvail}function cr(t){for(;t.centerAvail<t.moveLength;)zB(t.center,t.moveBuffer[t.centerAvail++]);return t.center}function xf(t){for(;t.cornerAvail<t.moveLength;)PB(t.corner,t.moveBuffer[t.cornerAvail++]%18);return t.corner}function So(t){for(;t.edgeAvail<t.moveLength;)jB(t.edge,t.moveBuffer[t.edgeAvail++]);return t.edge}function HB(t){let e,r,n,o,l,i,s=new Array(t.moveLength-(t.add1?2:0));for(r=0,e=0;e<t.length1;++e)s[r++]=t.moveBuffer[e];for(i=t.sym,e=t.length1+(t.add1?2:0);e<t.moveLength;++e)bt[i][t.moveBuffer[e]]>=27?(s[r++]=bt[i][t.moveBuffer[e]]-9,o=Zs[bt[i][t.moveBuffer[e]]-27],i=bn[i][o]):s[r++]=bt[i][t.moveBuffer[e]];let u=bn[Un[i]][AB(cr(t))];for(l=\"\",i=u,e=r-1;e>=0;--e)n=s[e],n=~~(n/3)*3+(2-n%3),bt[i][n]>=27?(l=l+Xs[bt[i][n]-9]+\" \",o=Zs[bt[i][n]-27],i=bn[i][o]):l=l+Xs[bt[i][n]]+\" \";return l}function Gr(t,e){t.moveBuffer[t.moveLength++]=e}function ri(){Sf(this),this.edge=new Ys,this.center=new Ws,this.corner=new Zl}function ni(t){ri.call(this),Cn(this,t)}function wf(t){Sf(this),this.edge=new Uf(t),this.center=new ff(t),this.corner=new cf(t)}function YB(t,e){return e.value-t.value}function oi(t,e){return YB(t,e)}function vf(){}function ZB(){if(Ef)return;Ef=!0;let t,e;for(Xs=[\"U \",\"U2 \",\"U' \",\"R \",\"R2 \",\"R' \",\"F \",\"F2 \",\"F' \",\"D \",\"D2 \",\"D' \",\"L \",\"L2 \",\"L' \",\"B \",\"B2 \",\"B' \",\"Uw \",\"Uw2\",\"Uw'\",\"Rw \",\"Rw2\",\"Rw'\",\"Fw \",\"Fw2\",\"Fw'\",\"Dw \",\"Dw2\",\"Dw'\",\"Lw \",\"Lw2\",\"Lw'\",\"Bw \",\"Bw2\",\"Bw'\"],Tr=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,19,21,22,23,25,28,30,31,32,34,36],xo=[0,1,2,4,6,7,8,9,10,11,13,15,16,17,19,22,25,28,31,34,36],kf=T(37),zf=T(37),Pn=T(37,36),li=T(29,28),ii=T(21,20),Js=T(36),wo=T(28),Mn=T(20),t=0;t<29;++t)kf[Tr[t]]=t;for(t=0;t<21;++t)zf[xo[t]]=t;for(t=0;t<36;++t){for(e=0;e<36;++e)Pn[t][e]=~~(t/3)==~~(e/3)||~~(t/3)%3==~~(e/3)%3&&t>e;Pn[36][t]=!1}for(t=0;t<29;++t)for(e=0;e<28;++e)li[t][e]=Pn[Tr[t]][Tr[e]];for(t=0;t<21;++t)for(e=0;e<20;++e)ii[t][e]=Pn[xo[t]][xo[e]];for(t=0;t<36;++t)for(Js[t]=36,e=t;e<36;++e)if(!Pn[t][e]){Js[t]=e-1;break}for(t=0;t<28;++t)for(wo[t]=28,e=t;e<28;++e)if(!li[t][e]){wo[t]=e-1;break}for(t=0;t<20;++t)for(Mn[t]=20,e=t;e<20;++e)if(!ii[t][e]){Mn[t]=e-1;break}}function XB(t){let e,r,n,o,l,i,s,u,a,f,g,L;t.solution=\"\";let B=_l(new Wl(cr(t.c),0)),p=_l(new Wl(cr(t.c),1)),m=_l(new Wl(cr(t.c),2)),F=Ut[~~B>>6],A=Ut[~~p>>6],b=Ut[~~m>>6];for(t.p1SolsCnt=0,t.arr2idx=0,im(t.p1sols.heap),t.length1=(F<A?F:A)<b?F<A?F:A:b;t.length1<100&&!(b<=t.length1&&si(t,~~m>>>6,m&63,t.length1,-1,0)||F<=t.length1&&si(t,~~B>>>6,B&63,t.length1,-1,0)||A<=t.length1&&si(t,~~p>>>6,p&63,t.length1,-1,0));++t.length1);let h=Rm(t.p1sols,zs(dm,Lr([uB,Es,ks]),Qu,0,0));h.sort(function(j,te){return j.value-te.value}),e=9;do{e:for(u=h[0].value;u<100;++u)for(i=0;i<h.length&&!(h[i].value>u);++i)if(!(u-h[i].length1>e)&&(Cn(t.c1,h[i]),ef(t.ct2,cr(t.c1),ai(So(t.c1).ep)),g=ql(t.ct2),L=Vl(t.ct2),t.length1=h[i].length1,t.length2=u-h[i].length1,Cf(t,g,L,t.length2,28,0)))break e;++e}while(u===100);t.arr2.sort(function(j,te){return j.value-te.value}),s=0,r=13;do{e:for(a=t.arr2[0].value;a<100;++a)for(i=0;i<Math.min(t.arr2idx,100)&&!(t.arr2[i].value>a);++i)if(!(a-t.arr2[i].length1-t.arr2[i].length2>r)&&(l=df(t.e12,So(t.arr2[i])),af(t.ct3,cr(t.arr2[i]),l^ai(xf(t.arr2[i]).cp)),n=Ns(t.ct3),o=vn(t.e12,10),f=Af(Rf(t.e12)),f<=a-t.arr2[i].length1-t.arr2[i].length2&&Pf(t,o,n,f,a-t.arr2[i].length1-t.arr2[i].length2,20,0))){s=i;break e}++r}while(a===100);let C=new ni(t.arr2[s]);t.length1=C.length1,t.length2=C.length2;let E=a-t.length1-t.length2;for(i=0;i<E;++i)Gr(C,xo[t.move3[i]]);t.solution=HB(C)}function JB(t,e){let r,n;for(Cn(t.c1,t.c),r=0;r<t.length1;++r)Gr(t.c1,t.move1[r]);switch(Ts[e]){case 0:Gr(t.c1,24),Gr(t.c1,35),t.move1[t.length1]=24,t.move1[t.length1+1]=35,t.add1=!0,e=19;break;case 12869:Gr(t.c1,18),Gr(t.c1,29),t.move1[t.length1]=18,t.move1[t.length1+1]=29,t.add1=!0,e=34;break;case 735470:t.add1=!1,e=0}ef(t.ct2,cr(t.c1),ai(So(t.c1).ep));let o=ql(t.ct2),l=Vl(t.ct2),i=Ze[o*70+l];return t.c1.value=i+t.length1,t.c1.length1=t.length1,t.c1.add1=t.add1,t.c1.sym=e,++t.p1SolsCnt,t.p1sols.heap.size<500?n=new ni(t.c1):(n=cm(t.p1sols),n.value>t.c1.value&&Cn(n,t.c1)),nm(t.p1sols,n),t.p1SolsCnt===1e4}function $B(t){let e;for(Cn(t.c2,t.c1),e=0;e<t.length2;++e)Gr(t.c2,t.move2[e]);if(!WB(So(t.c2)))return!1;let r=df(t.e12,So(t.c2));af(t.ct3,cr(t.c2),r^ai(xf(t.c2).cp));let n=Ns(t.ct3);vn(t.e12,10);let o=Af(Rf(t.e12));return t.arr2[t.arr2idx]?Cn(t.arr2[t.arr2idx],t.c2):t.arr2[t.arr2idx]=new ni(t.c2),t.arr2[t.arr2idx].value=t.length1+t.length2+Math.max(o,Br[n]),t.arr2[t.arr2idx].length2=t.length2,++t.arr2idx,t.arr2idx===t.arr2.length}function em(t,e){return Gf(),t.c=new wf(e),XB(t),t.solution}function si(t,e,r,n,o,l){let i,s,u,a,f,g;if(e===0)return n===0&&JB(t,r);for(i=0;i<27;i+=3)if(!(i===o||i===o-9||i===o-18))for(a=0;a<3;++a){if(u=i+a,s=Ql[e][bt[r][u]],f=Ut[~~s>>>6],f>=n){if(f>n)break;continue}if(g=bn[r][s&63],s>>>=6,t.move1[l]=u,si(t,s,g,n-1,i,l+1))return!0}return!1}function Cf(t,e,r,n,o,l){let i,s,u,a;if(e===0&&Ze[r]===0)return n===0&&$B(t);for(s=0;s<23;++s){if(li[o][s]){s=wo[s];continue}if(i=Hl[e][s],a=Yl[r][s],u=Ze[i*70+a],u>=n){u>n&&(s=wo[s]);continue}if(t.move2[l]=Tr[s],Cf(t,i,a,n-1,s,l+1))return!0}return!1}function Pf(t,e,r,n,o,l,i){let s,u,a,f,g,L,B,p,m;if(o===0)return e===0&&r===0;for(Uo(t.tempe[i],e),g=0;g<17;++g){if(ii[l][g]){g=Mn[g];continue}if(a=yo[r][g],L=Br[a],L>=o){L>o&&g<14&&(g=Mn[g]);continue}if(f=kn(t.tempe[i].edge,g<<3,10),s=~~(f/20160),p=zn[s],m=p&7,p>>=3,u=kn(t.tempe[i].edge,g<<3|m,10)%20160,B=NB(p*20160+u,n),B>=o){B>o&&g<14&&(g=Mn[g]);continue}if(Pf(t,f,a,B,o-1,g,i+1))return t.move3[i]=g,!0}return!1}function Mf(){let t;for(this.p1sols=new Qf(new vf),this.move1=T(15),this.move2=T(20),this.move3=T(20),this.c1=new ri,this.c2=new ri,this.ct2=new Is,this.ct3=new Os,this.e12=new Ht,this.tempe=T(20),this.arr2=T(100),t=0;t<20;++t)this.tempe[t]=new Ht}function Gf(){Tf||(hB(),yn=T(735471),yB(),dB(),yn=null,FB(),SB(),EB(),OB(),_B(),IB(),Tf=!0)}function tm(){If||(If=!0)}function ai(t){let e,r,n,o;for(o=0,e=0,n=t.length;e<n;++e)for(r=e;r<n;++r)t[e]>t[r]&&(o^=1);return o}function D(t,e,r,n,o,l){let i;switch(l){case 0:i=t[o],t[o]=t[n],t[n]=t[r],t[r]=t[e],t[e]=i;return;case 1:i=t[e],t[e]=t[n],t[n]=i,i=t[r],t[r]=t[o],t[o]=i;return;case 2:i=t[e],t[e]=t[r],t[r]=t[n],t[n]=t[o],t[o]=i;return}}function Nf(){}function Of(t,e,r,n){let o=new Nf;return o.typeName=t+e,Kf(r!==0?-r:0)&&Wf(r!==0?-r:0,o),o.modifiers=4,o.superclass=$s,o.componentType=n,o}function _f(t,e,r,n){let o=new Nf;return o.typeName=t+e,Kf(r)&&Wf(r,o),o.superclass=n,o}function rm(t){let e=Fo[t.seedId];return t=null,e}function Kf(t){return typeof t==\"number\"&&t>0}function Wf(t,e){let r;if(e.seedId=t,t===2)r=String.prototype;else if(t>0){let n=rm(e);if(n)r=n.prototype;else{n=Fo[t]=function(){},n.___clazz$=e;return}}else return;r.___clazz$=e}function nm(t,e){if(mm(t,e))return!0}function om(t){t.array=zs(jf,Lr([Es,ks]),Ku,0,0)}function lm(t,e){return Nl(t.array,t.size++,e),!0}function im(t){t.array=zs(jf,Lr([Es,ks]),Ku,0,0),t.size=0}function pr(t,e){return t.array[e]}function sm(t,e){let r=t.array[e];return fm(t.array,e,1),--t.size,r}function Gn(t,e,r){let n=t.array[e];return Nl(t.array,e,r),n}function am(t,e){let r;for(e.length<t.size&&(e=BB(e,t.size)),r=0;r<t.size;++r)Nl(e,r,t.array[r]);return e.length>t.size&&Nl(e,t.size,null),e}function um(){om(this),this.array.length=500}function fm(t,e,r){t.splice(e,r)}function gm(t,e){let r,n,o,l;for(n=0,r=t.length-1;n<=r;)if(o=n+(~~(r-n)>>1),l=t[o],l<e)n=o+1;else if(l>e)r=o-1;else return o;return-n-1}function ui(t){Lm(t,t.length)}function Lm(t,e){let r;for(r=0;r<e;++r)t[r]=-1}function Bm(t,e){let r,n,o,l,i=t.heap.size,s=pr(t.heap,e);for(;e*2+1<i&&(r=(n=2*e+1,o=n+1,l=n,o<i&&oi(pr(t.heap,o),pr(t.heap,n))<0&&(l=o),l),!(oi(s,pr(t.heap,r))<0));)Gn(t.heap,e,pr(t.heap,r)),e=r;Gn(t.heap,e,s)}function mm(t,e){let r,n;for(n=t.heap.size,lm(t.heap,e);n>0;){if(r=n,n=~~((n-1)/2),oi(pr(t.heap,n),e)<=0)return Gn(t.heap,r,e),!0;Gn(t.heap,r,pr(t.heap,n))}return Gn(t.heap,n,e),!0}function cm(t){if(t.heap.size===0)return null;let e=pr(t.heap,0);return pm(t),e}function pm(t){let e=sm(t.heap,t.heap.size-1);0<t.heap.size&&(Gn(t.heap,0,e),Bm(t,0))}function Rm(t,e){return am(t.heap,e)}function Qf(t){this.heap=new um,this.cmp=t}function Hf(){Vf||(Vf=!0,ZB(),tm(),DB(),bB(),xB(),TB(),CB(),KB(),qB(),qf=new Mf)}function Fm(){Hf(),Gf()}async function Am(){tt(),Hf();let t=k.fromString(em(qf,await st()));return(await hn()).concat(t)}var V,Fo,iB,Ku,Es,Wu,sB,aB,Qu,uB,fB,gB,ks,Hu,Cs,Ps,Zu,Ut,Ql,Ts,yn,jl,Un,bt,bn,$u,Hl,Ze,nf,of,Yl,lf,sf,yo,uf,Br,_s,Ks,gf,Bt,pf,js,$l,St,qs,Vs,Hs,zn,ei,hf,ti,yf,bf,Zs,Ef,Pn,li,ii,Tr,Xs,xo,Js,wo,Mn,kf,zf,Tf,If,$s,jf,Dm,dm,qf,Vf,Zf=U(()=>{Ae();ws();_u();rr();_t();Fo={},iB={},Ku=0,Es=30,Wu=21,sB=22,aB=23,Qu=24,uB=25,fB=34,gB=26,ks=40;at(1,-1,iB);V.value=null;at(73,1,{},ju);V.queryId$=0;Hu=!1;Zu=!1;at(153,1,Lr([Wu]),Ao,Wl,ho);yn=null,$u=!1;at(154,1,{},Is);V.parity=0;sf=!1;at(155,1,{},Os);V.parity=0;at(156,1,{},Ws,ff);gf=!1;at(157,1,Lr([sB]),Zl,mr,cf);V.temps=null;pf=!1;at(158,1,Lr([aB]),Ht);V.isStd=!0;V.temp=null;$l=0,yf=!1;at(159,1,{},Ys,Uf);bf=!1;at(160,1,Lr([Qu,fB]),ri,ni,wf);V.compareTo$=function(e){return VB(this,e)};V.add1=!1;V.center=null;V.centerAvail=0;V.corner=null;V.cornerAvail=0;V.edge=null;V.edgeAvail=0;V.length1=0;V.length2=0;V.length3=0;V.moveLength=0;V.sym=0;V.value=0;at(161,1,{},vf);V.compare=function(e,r){return oi(e,r)};Ef=!1;at(163,1,Lr([gB]),Mf);V.add1=!1;V.arr2idx=0;V.c=null;V.length1=0;V.length2=0;V.p1SolsCnt=0;V.solution=\"\";Tf=!1,If=!1;V.val$outerIter=null;V.size=0;at(239,1,{},Qf);V.cmp=null;V.heap=null;$s=_f(\"java.lang.\",\"Object\",1,null),jf=Of(\"[Ljava.lang.\",\"Object;\",356,$s),Dm=_f(\"cs.threephase.\",\"FullCube\",160,$s),dm=Of(\"[Lcs.threephase.\",\"FullCube;\",381,Dm),Vf=!1});var ta={};Ue(ta,{sgsDataFTO:()=>vm});async function vm(){return wm??(wm=Em())}async function Em(){return zt(await he.fto.kpuzzle(),`SubgroupSizes 24 12 11 12 12 11 10 9 11 8 10 9 7 8 10 10 6 9 8 5 7 6 5 4 4 8 7 3 6 6 360\n\nAlg T\nAlg B\nAlg B T\nAlg B'\nAlg B' T\nAlg U\nAlg U T\nAlg U'\nAlg U' T\nAlg B BL\nAlg B BL T\nAlg B BL'\nAlg B BL' T\nAlg B' BR\nAlg B' BR T\nAlg B' BR'\nAlg B' BR' T\nAlg U R'\nAlg U R' T\nAlg U' L\nAlg U' L T\nAlg B BL' D\nAlg B BL' D T\n\nAlg R\nAlg R'\nAlg R D\nAlg R D'\nAlg R BR\nAlg R BR'\nAlg R' F\nAlg R' L\nAlg R' L'\nAlg B L B'\nAlg U L' U'\n\nAlg B U B'\nAlg B U' B'\nAlg B R B'\nAlg B R' B'\nAlg B' U' B\nAlg B' U B L\nAlg B' U B L'\nAlg B' U' B BL'\nAlg B U' B' BR\nAlg B' R' B F\n\nAlg BR\nAlg BR'\nAlg BR BL\nAlg BR BL'\nAlg BR' F\nAlg BR' F'\nAlg BR' D\nAlg B BR B'\nAlg U F U'\nAlg BR BL L\nAlg BR' D BR'\n\nAlg B' BL B\nAlg B' BL' B\nAlg BR D' BR'\nAlg B' BL B D'\nAlg B' BL B BL\nAlg B' BL B BL'\nAlg B' BL L B\nAlg B' BL' B F'\nAlg B' BL' B L'\nAlg B' BL' B BL'\nAlg B' BL' L BL' B\n\nAlg R' BR R\nAlg R' BR' R\nAlg BR BL' D BR\nAlg R' BR D R\nAlg R' BR D' R\nAlg R' BR R BL\nAlg B' D' BL D B\nAlg BR B D' B' BR'\nAlg BR BL' D BR L'\nAlg BR BL' D BL BR\n\nAlg U BR U'\nAlg U BR' U'\nAlg U' R U\nAlg U' R' U\nAlg U BR B' U'\nAlg U BR' U' D\nAlg U BR' U' D'\nAlg U' R F' U\nAlg U' R' U L'\n\nAlg U B U'\nAlg U B' U'\nAlg U B U' L\nAlg U B U' L'\nAlg U B' U' BL'\nAlg U B U' L F\nAlg U B U' L F'\nAlg U B' U' BL' D'\n\nAlg B BL' L BL B'\nAlg B BL' L' BL B'\nAlg U B' D B U'\nAlg U B' D' B U'\nAlg U R D R' U'\nAlg U R D' R' U'\nAlg R' F L F' R\nAlg R' F L' F' R\nAlg B L' B F' D B\nAlg U B' D' B U' D\n\nAlg F\nAlg F'\nAlg F D\nAlg F D'\nAlg F' L\nAlg F' L'\nAlg F D' BL\n\nAlg F BL F'\nAlg F BL' F'\nAlg BR' BL BR\nAlg BR' BL' BR\nAlg F BR F' BR'\nAlg F BL F' BL'\nAlg F BL' F' L\nAlg F BL' L' F'\nAlg F BR' BL BR F'\n\nAlg F' BL F\nAlg F' BL' F\nAlg U BL U'\nAlg U BL' U'\nAlg F U' F' U\nAlg F' BL F D'\nAlg F' BL F BL'\nAlg F' BL D F\n\nAlg L\nAlg L'\nAlg L BL\nAlg L BL'\nAlg F' D F\nAlg L BL D\n\nAlg L' BL L\nAlg L' BL' L\nAlg L' BL D L\nAlg L' BL D' L\nAlg L' BL L BL'\nAlg L' BL D' L BL\nAlg L' BL D' L BL'\n\nAlg L D L'\nAlg L D' L'\nAlg R' D R\nAlg R' D' R\nAlg L D L' D'\nAlg L R L' R'\nAlg L' B' L B\nAlg R' D R BL\nAlg L BL' L' BL L'\n\nAlg U L' D L U'\nAlg U B D B' U'\nAlg U L' D' L U'\nAlg U B D' B' U'\nAlg R' D' BL' D R\nAlg U B D' B' U' D\nAlg U B' L B L' U'\nAlg U B D B' U' BL'\nAlg U B D' B' L' D' L U'\n\nAlg F L F'\nAlg F L' F'\nAlg F L F' D\nAlg F L F' D'\nAlg F L' F' BL'\n\nAlg L BL' D BL L'\nAlg L BL' D' BL L'\nAlg F D L D' L' F'\nAlg F L D L' D' F'\nAlg F L' B' L B F'\nAlg F' D' R' D R F\nAlg F D L D' L' F' BL'\nAlg F' R' B' R' B R' F\n\nAlg B D B'\nAlg B D' B'\nAlg L' D L\nAlg L' D' L\nAlg B D B' D'\nAlg B' L B L'\nAlg B D B' D' BL\n\nAlg D\nAlg D'\nAlg D BL\nAlg D BL'\n\nAlg D BL' D BL D'\nAlg D BL' D' BL D'\nAlg B D R D' R' B'\nAlg B R D R' D' B'\nAlg D BL' D BL D' BL\nAlg D BL' D BL D' BL'\n\nAlg D BL D BL' D'\nAlg D BL D' BL' D'\nAlg B' BL' B BR D' BR'\nAlg D BL D BL' D' BL\nAlg D BL D BL' D' BL'\n\nAlg D' BL D\nAlg D' BL' D\nAlg D' BL D BL\nAlg D' BL D BL'\n\nAlg B D' B' BL B D B'\nAlg B D' B' BL' B D B'\nAlg D' BL' D BL D' BL D\n\nAlg B R' B' BL B R B'\nAlg B R' B' BL' B R B'\nAlg L R L' BL' L R' L'\n\nAlg F BL' B' BL F' BL' B\nAlg F' R' F BL F' R F\nAlg F' R' F BL' F' R F\nAlg BR R BR' BL' BR R' BR'\nAlg F L' BL U BL' U' L F'\nAlg F' U' F D F' U F D'\nAlg F BL F' D F BL' F' BL D'\n\nAlg F D F U' F' U D' F'\nAlg F D F' BL F BL' D' F'\nAlg F U D BL' U' BL D' F'\nAlg F U' D F U F' D' F'\nAlg F' BR L F BR' F' L' F\nAlg U R BL' F BL F' R' U'\n\nAlg BL\nAlg BL'\n\nAlg F U BL U' BL' F'\nAlg F BL U BL' U' F'\nAlg U BL BR BL' BR' U'\nAlg BR F BL F' BL' BR'\nAlg F U' F' U BL' U BL U'\n\nAlg F U' F' D F U F' D'\nAlg B' U' F U B U' F' U\nAlg D F U' F' D' F U F'\nAlg BR' U BR D' BR' U' BR D\nAlg D' BR BL' F BL' F' BL BR' BL D\n\nAlg D BL D F' U' B L' BL' L R' BR' R L' BL L B' U F D\nAlg B D BR F' R' BR' R B' F D' BL D B BR' D' B'\nAlg L B' BR' L F BR L' B BR' L U F U' BR' F L BL BR'\nAlg L BL' D' BR' B R' U' R BR B' D BL' L'\nAlg B BR B' D' B D B F' R' B' R BR' B' BR F BR' BL\nAlg L' BL D L' D' L' D L' U' R' F' R U D'\nAlg U' L BL L U' D R' BL B' BL F' BL' B R BL' U D' L U\nAlg L BL BR' L U' D R' F' R BL' U BL D' BR L\nAlg D L' R F' R' L BL' BR BL' B' BL B BR' F BL' F' D'\nAlg B BL B BR' L R' U' R BR L' B\nAlg L B' R' BR B F BL D' BL' D BL' B' F' BR' R U B L'\nAlg D' L' BL F' D' BL' D B F' R' BR R B' F' BL' L D\nAlg B D' R D' R' BL BR' B BR' B' BL' D' BR B R' B' R B' BL' D'\nAlg U' L R' F U L' BL' L B BL' B' BL L U' L' F' R L' U\nAlg F' D BL' BR' BL' BR B' U' F L F' U B D F L U BL' U' L'\nAlg L' U BR' U D R' BL F R BL' U D' BR' L' BL' BR' L'\nAlg U' L' U' D R' BL B' BL F BL' B R BL' U D' L' BL' L' U\nAlg D F BL L' BL' B L' B' L' B L' B' L' BL L BL' F' D'\nAlg F' BR' B BL' BR BL B' F L' F' L B BR' B' BR L' F L BL'\nAlg F' L F' L U' D R' F R U D' L' BL' F L' F\nAlg F U' F' BR F' R' BR' U F' L' BL F' D' BL'\nAlg B BR' U R BR' R' BR U' B' BR\nAlg F' BR' B BR' R BR' BL' BR R' BR BL B' BR F\nAlg L' U BL B' U' BL U BL' B BR BL' BR' U' L\nAlg BR BL' BR' BL L' BL BR BL' BR' L\nAlg U BR' U' BR L' BL BR BL' BR' L\nAlg U' L F BL' F' BL F' BR F BR' L' U\nAlg F L F' BL D F' D' F BL' L'\nAlg U BR' U BR L BL BR BL' BR' L' U\nAlg F BR R BL' F' BL' F R' BL BR' BL F'\nAlg D BL D B U BR' D BR' L' U' BR' U BR L D' BR U' B' D\nAlg U BL' U' BL U BL D L' D BR D' L D BR U BR U D\nAlg B' U F U' B' U F' BR' U' B L B' U BR U' B L' B BL\nAlg B U' B BL U' BL L U' D R' F' R U' D' L' BL' U B\nAlg B L R F D' BR' D F' R' BL' U' L U L' U BL L' B'\nAlg D BL D F' BR' F BL' D R' BR' R F D' BL F' BR D\nAlg L' D F' R' U BR L BL B' BL B BL' BR' L' U' R D' L\nAlg F BL' U D L' U' BR R F' R' BR' U L D BL U' D BL F'\nAlg BR' BL' U' L' BL D F' L' F' L F L U L' D' BR L BL\nAlg B' L' BL U D R' F' R U D' L' BL L U BL' L B\nAlg B BL' L U B' L BL' L B' U' B' L' D L' U' B L' B' D'\nAlg B' R' L U L' R BR BL' B BR' B' BL B' BL' B'\nAlg F L R BL B' U' B R' BL' L' BL F' BL BR' BL L BL' BR L'\nAlg B' U' BL L U D R' F R U D' L' BL' U BL' B' U B'\nAlg U BR BL' BR' D' B D' F' D B' D' F BL' U' BL' F' BL' F D'\nAlg D' BL' D L BL L' D' BL D F' D F D' BL' D' BL D\nAlg B' BL' B' BL L' B' BL' F' D F L F' D' F BL' L BL' B L B\nAlg F BL' U D' BL' D' L' U' BR R F R' BR' U L U' D' BL F'\nAlg U' D' B D F' D' BR' D' BR D BR B' BL' D F BL U BL'\nAlg B BL BR D' BR L' R F R' BR' L D BL' BR' BL' B'\nAlg L' F L' U BR' U' BR L F' BR' L U BR U'\nAlg F' BL' D' BR' BL B' U' BL U B BL' BR D F\nAlg F' D' BR' U R' U BL U' R U' BL' BR D F\nAlg F U' BR F' U' BL' B U F BR' R F' U BL L\nAlg B' BL' U' BL U B BL' B BL BR BL' BR' B' BL\nAlg D' F' U BL U' L F U' F' U L' BL' F D\nAlg F' BL' D' BR' BL BR' F' BR U' B' BR' U R' BR' F'\nAlg B' U' B BL' B U' B BL' L U' L BL' L B\nAlg F' D' F U' F U F' BL F' BL' D F\nAlg F' D BR F' R F R' BR' F D'\nAlg D BL D B BR' D L' BL' L' BL' BR' BL L BL L D' BR B' D\nAlg B L BL L' BL' L' D F' R' BR R D' F L' BL' L' B'\nAlg B BL' F' BL BR D' BR' F D' B' D L F' BL' F L D L D' BL\nAlg B D' BR' D' BR' F D' BL' D' BL D BL F' D BR D' B'\nAlg B D' B U B' D B F' BR' F L' F BR F' L U' B BL\nAlg L BL' B' U BL L' BL L U L' BL' L BL' U' B BL' L'\nAlg U D F' D BR BL' BR' BL B D' F D B' D BR BL BR' U'\nAlg F' D BR L' U' R F' R' U BR' L D BR' BL BR D F\nAlg BR' L BL L' BL' BR BL' F BL' L R BL B' U B R' BL' L' F'\nAlg D BL BR D B F' R' U' BR' U R B' F D' BR' D'\nAlg D' B BR' D L' BL' L' BL' BR BL L BL L D' BR B' D' BL' D'\nAlg B U' R B' BL' B R' U' B BL' B' U' BL B' U' L U L'\nAlg B D' B' D' BR' BL BR D' B' L B BR' U B U' BL' BR BL L' BL'\nAlg B D BR' D' F BL' D' BL' D BL D F' BR D BR D B'\nAlg D' B D F' D' BR' D' BR D BR BL BR' BL' BR B' BL' D F\nAlg L BL B' U BL L' BL L U' L' BL' L BL' U' B BL L'\nAlg B' U B' D' B U' B' D BL' U BL' U' BL' B' U BL' U'\nAlg D' BR' B' L' U L' B' U B L U' L B BR D BL\nAlg L' D L' F U' F' L D' L' F U BR F' L F BR' F' L BL'\nAlg D BR D B F' R' U' BR U R B' F D' BR' BL' D'\nAlg BR BL D F BR' BL BR BL' BR F' BR' D' BL' BR'\nAlg BR' U' L' BL F' BL' F L BL' U BL BR\nAlg D' BR' B' U BR U' BL U' BL' U BR' B BR D\nAlg F U BR' U R U' BR B U' F' BL U' L' U BL' B'\nAlg B U' L F BR F' L F' BR' F L U B'\nAlg BR BL F BL' L F' BR' BL' F BL L' BL' F' BL\nAlg U' BR' L BL' BR L U' BR' U L' BL L' U' BR U'\nAlg L' F L' U BR' U' BR L F' L BL' BR BL BR'\nAlg F' D' BR' BL U R' U BL' U' R U' BR D F\nAlg F' BR' B F' U F BR U' BR' B' F BL BR BL'\nAlg L B' U' R' BR B F BL D' BL D BL' B' F' BR' R B L'\nAlg B F BL B L F BR' R' BL U' R BL' BR' F' L' F' BR' B\nAlg U BR F' D F BR' U' L' BL L' BL' L U L B' BL L' B U'\nAlg F' L B F BL B R U' R' B' BL' B' F' L BL L F\nAlg D BL D B BR' D BR' D' BR D BR BL BR' BL' D' B' D\nAlg D' BR' BL B BR B' BL' D BL D' B' BL B BR' BL' BR D\nAlg D F' U BR U' L U' BR' U L' D B D' F D B' D BL\nAlg L B BL' B L F R U' R' F' L' B' BL B' L' BL'\nAlg B D' B U B' D F' BR F L' F BR' F' L B U' B BL\nAlg B' BL L B' L' B' L B' BR' R' U' R BR L'\nAlg D' F' U' B L' BL' L R' BR R L' BL L B' U F D' BL' D'\nAlg B' F' BL' B' F U D' R BR R' BL U' BL' D B'\nAlg F' BL' D BL F BL' D' B' U' B D F' D' B' F U B\nAlg F' L' BL' L' B F BL B R U R' B' BL' B' F' L' F\nAlg L' BL U' D F D' BL' D BL F' BL' D' BL D F' U D' BL L\nAlg B' BR L R' U R BR F L' B' BL' B L F' BR L' B\nAlg B' L B' BR' B L' B' D F' U F D' F U' F' BR B' BL'\nAlg B' BR D' BL' BR' BL B L' R' L' R BR L D L BL BR' B BL\nAlg L' D F' L F L' F D' L' BL' L' D BL' BR' BL' BR BL' D'\nAlg B' F BR F BR L R' BL U R BL' BR L' B' BL' B' F\nAlg F L' F' BR' B BR' F' BR B' BR' F' L F' BR'\nAlg BR' B' BR BL' D' BR D BR' BL B\nAlg L' F L' U BR' U' L U' BR U F' L\nAlg F U' BR' R U' BR BL BR' U' BL' U' R' F' BR U\nAlg B' BR' R' U' BL D' BL U BL' D R BL' BR B\nAlg D BR' U' L BL' F' BL F L' BL U BL' BR D'\nAlg F' BL' D' F BR' BL BR BL' BR F' BR' D BL F\nAlg F' BR' BL' BR D' F' BR F BR' D BL F\nAlg F' BR R' BR BL' BR' R BR' BL F\nAlg B BR F' BR' B' F BL F BL' F'\nAlg B D' B U B' D BL' F R' F BL F' R B F' U' B BL\nAlg L BL' B' U L U L BL L B' BL B' U' BL' U' B' L' BL\nAlg L' BL' U' D F D' BL' D BL F BL' D' BL D F' U D' BL' L\nAlg F' L F' BL' D' BR' B R' U' R BR B' D BL' F L' F\nAlg U D' BR' D BR' U' L U BR L' D' BR D L U' L' BL\nAlg B' BR' B' BL B L F' BR' R' U' R BR F BR L' B\nAlg U' F' D BR' F' BR D L D L' U D' B D' B' F D' BL F\nAlg B F BL B F' L F BR' R' BL U' R BL' BR' F' BR' L' B\nAlg F' D' BL B BR' BL BR BL' BR' D' BR' D BR D F D' B' D\nAlg B' BR' B' BL B L F BR' R' U' R BR F' BR L' B\nAlg L' F BR L' R' BR BL' BR' R BR' BL B' L F' L' B L' BL'\nAlg B' U' BL' U D' BL' D F L' R U R' F' L U' BL U B\nAlg D' B D BL BR BL' BR' D' BR' D BR D' BR B' D' BL' D'\nAlg B' BR' L F' BR' R' U R BR F L' B' BL' B BR B\nAlg L U L' D' BR' D L U' L' U D' BR D BR BL BR' BL' U' BL'\nAlg F' L F' BL D' B BR' R' U R B' BR D BL F L' F\nAlg B' L B' BR' B L' F' R F' BL F R' F BL' B' BR B' BL'\nAlg F' L BL' BR' R' BL U R BR B L' B L B L' F BL' B\nAlg L' F D' BR U' BR' D BR' U BR L' B' L F' L' B L' BL'\nAlg B' BR' L F BR' R' U R BR F' L' B' BL' B BR B\nAlg L F' D' F BR' BL BR BL' BR F' BR' D F L'\nAlg F' BL' D F BL' F' BL D' BR' BL BR F\nAlg B' BR' R' BL D' BL U' BL' D BL' U R BR B\nAlg B' L BL' BR BL L' B' F BL F' BL' B BR' B\nAlg F U' BR' R BR F' U BL L U BL' B U'\nAlg B' BR B' BL F BL' B F' L BL' BR' BL L' B\nAlg U' L BL' U' R U' BL' U R' U BL' L' U\nAlg F U' BR' R' F' BR' F BL BR R BL' F' BR U\nAlg B U' L' F' BR F L' F BR' F' L' U B'\nAlg F' BR' B' F BR' BL' BR F BL B F' BL BR BL'\nAlg B BL' U' L U BL' B' BL' B' L' BL U B' U' BL L BL L\nAlg B R' U' B U R B' BR F D' B' D BL F' BL' BR' BL\nAlg U BL U' B BL U BL U' BL D' B U B' D B U' B\nAlg B BL B BL' B BR B' BL BR' R' L U' L' R B\nAlg U' L BL' B BL B' L' F U B' R U R' U F' U B BL\nAlg F' BL' D' BR' L' B' L B BL BR BL' B' L' B L D BL F BL\nAlg L B' L' F U B' R BR B BR' R' BR BL' BR' BL B U' F' BL\nAlg D' F BL B BR' B BR B' BL' D BL D' B' F' D\nAlg B' L' BL F U F' L' U B U' L F U' F' BL' L BL' B BL B\nAlg D BL D B U F' R' BR' R F U' B' D\nAlg B BR B' D' BL BR D BR D B' BL' B D BR' BL' D' BL' D'\nAlg B' R BR B' BR' R' B U' F' L B L' BL' F BL U BL'\nAlg U BR BL' BR' D' B D' F' D B' BL' BR BL BR' D' F U' D'\nAlg U' D' BR' U' BR' D' L' D BR' D' L D' BL' U' BL' U BL U'\nAlg L' F' BR F' R F' R' L F' BR' D L BL' L' BL D' F BL'\nAlg B D BL' D B U R BR R' U' B' D' BL D' B' BL\nAlg B' U L' U B BL L' F' BL F D' B' U B D B' L B L'\nAlg L BL' B' U L F R U' R' F' U L F' L B L' F\nAlg L' D R' U BR L BL B' BL' B BL' BR' L' U' R F D' L\nAlg D' B U F' R' BR R F U' B' D' BL' D'\nAlg B D BL' B' U' BL L' D L D' BL' U B BL B' D'\nAlg B U' BL' U' F U' B U B' F' U BL U' B U' B\nAlg U BR' U L BL' L U' BR U BR' L' BL BR L' U\nAlg F' D' BR' BL B' U' BL' U B BL' BR D BL F\nAlg B' L' B' F BL' F' BL F' BR F BR' B L B\nAlg F' BL' D' BR F' BR' F D BR' BL BR F\nAlg F D' F' U' F' D' BR D F' D' BR' D' F' U\nAlg BR' BL' U' BL L U' F U F' L' U BR\nAlg F BR R U' BR B U BR' F BR BL' BR D BL F\nAlg F' BR' F U' BL L' U BL' B' F' BL' BR D' BL F\nAlg B' U L' B' U L' D F L F' D' L U' B L U' L B L'\nAlg B BL B L F BR' R' U' R BR F' L' B\nAlg B D' B BR' R' U' B' U R BR U' D' F L' F' U L' D' L\nAlg L U' L' U B BL' U B BL B' U R B' BL B R' U B'\nAlg D F' D BL U' R U' BL' U R' U B D' F D B' D BL\nAlg B BL U B BR' L R' F' U' F R BR L' B' U' B'\nAlg B' U' B F' D F D' B' U B D BL F' BL' D' BL F\nAlg B D BR B F' U' R' BR' R U B' F BR' D' BL B'\nAlg L B' F R BL' U' R' BL B F' L U BR' U' BL L U BR U'\nAlg F' L F' BL L U' D R' F' R U D' L' F L' F\nAlg L U L' F' BL' F L B BL' U BL' U' BL B' BL L U' L\nAlg B' L F BR' R' U R BR F' L' B' BL' B'\nAlg U BR' U' L' U' BR' F' BR F BR D R' F R U D' L' BL' L'\nAlg B L BL L F' D R' BR' R F D' L BL L BL' L' B'\nAlg F' BL' D F' D' B D' B' U' D L D BR' L' F BR D' F U\nAlg B U B BR' L R' F' U F R BR L' B' U' BL' B'\nAlg U B' L BL' B L' U' L' BL L BL' L U BR F' D' F BR' U'\nAlg B BL' D BR B F' U' R' BR R U B' F BR' D' B'\nAlg B BR B F BR' U BL' L R BR' R' L' F' U BR U BL B BL'\nAlg B' BR' L R' U R BR L' B' BL' B'\nAlg B' U BR' R L F' BR' F L' R' BR U' B' BR B'\nAlg F' BL' F' BR R U' BR B F BR BL' D F U BL'\nAlg F' BR' B' U BR' F BR' F' BR U' BR B BR F\nAlg BR' BL' U' BL L' F' BL F BL' L U BR\nAlg U' L BL U' R U' BL U R' U BL L' U\nAlg F BR' F' U' L F BR U F' U' L' BL U BL'\nAlg L' F U' BR' U L' U BR U' L F' L\nAlg F' BR' B' U' BR' U F BR B U' BL U BR BL'\nAlg F' BR' U BR D' BR U' BR' D F\nAlg F BL' BR R BL' F' BL F R' BL BR' F'\nAlg L BL' B BL' U BL U' BL B' L' F' BL F L U' L U L\nAlg B F BL B F' L F' BR' R' BL U' R BL' BR' F BR' L' B\nAlg F BL B' F' BR B' BR' B L F BL B' BR B BL' BR' F' L' B\nAlg B F D' BL U R BL' BR' R' U' D B F' BL B\nAlg L B' U B' BR B BR U' BR' B L' F BL' B F' BR' B' BL'\nAlg U' L R' F L U L' BL' B BL B' L' BL L U' F' R L' U\nAlg BR BL F BL' F' L' F' BR' L B BR B' L' F L B BR' B' BL\nAlg B' BR' L F L' B' BL B L F' BR' R' U' R BR' L' B\nAlg D L U' BR U L U' R BL' F' R' F BL F' BR' U L D BL D\nAlg B F BL B F BR' L R' BL U' R BL' BR' L' F BR' B\nAlg L B' L' U L' B' U L' D F L' F' D' L U' B L U' B\nAlg B' BR L F' BR R' BL U R BL' BR F L' B' F BL' B' F'\nAlg B' BL L B L' B' BL' L' U BL' U R' L' R U' BL U' L B\nAlg B U' D' F D B BL' B' U D' R BR R' U' F' U D B'\nAlg D F L F' L' F R L' BL B L B' BL' L R' F' L D'\nAlg L BL D' B BR' R' U R B' BR D BL L'\nAlg D F D' B' U' B U' D F' D' F U B' U B F' BL'\nAlg D' BR' BL BR B' BL' B D BL' D' BL B BR' B' BL' BR D\nAlg U BR' U' L U R' L R BR L' B' L' B L U' L' BL'\nAlg BR' L R' U R BR B L' B L B L' BL' B\nAlg B BR' B U BR' R L F' BR F L' R' BR U' B\nAlg F' L B' BR' B L BL' L' B' BR B L BL L F\nAlg D F U' F' U D' BR U' D' F U F' D BR'\nAlg B' BL' BR D' BR' D BL BR' B BR\nAlg B BL U' BR' L U BR' F' BL D BL BR F BR\nAlg L' U BR BL BR' B' BL U' BL' U B BL' U' L\nAlg U B' BL U' L' BL' U' F BR' R' BR U F'\nAlg D BR' BL U' BL' L F' BL' F BL L' U BR D'\nAlg BR L' BL BR' BL' L BL' BR BL BR'\nAlg F BL F' BL' B F' BR F BR' B'\nAlg D BR L' U' R F' R' U BR L BL B' BL B BL' BR D'\nAlg D' BL' D BL D F' D' F D' BL' D L BL' L' D' BL D\nAlg B F D' F' U' BL' B U B' BL F D B U' B' U B' F' BL\nAlg B U F' D' R BR' R' U' D B BL B' U F U' B'\nAlg B BL B L B BR' F BR B' BR' R' U' R F' BR L' B\nAlg B BL B L F' U' F' U F BR' R' U' R BR' F BR' L' B\nAlg B' U' B F' D F D' B' U B U' D BL' F' BL D' F U BL\nAlg L F' BR B' F' R BL' U' R' BL B F' BR L BL BR L\nAlg D F' D' BL F' D' F R BL B' L U L' B R' F' BL' D F\nAlg B BL BR BL D' BR L' R F' R' BR' L D BR' BL' B'\nAlg B' L B' BR' B L' BL' U BL U' B' BR B' U BL' U'\nAlg D' B BR' F BL' F' D BR D' BL F' BR B' F D' BL' D'\nAlg B D F' L' R F D BR' D' F' R BR' L D B' BL' D' F D'\nAlg D L BL' F' R U R' B F' L BL' L' B' F' BL L' D'\nAlg B' BR' L F R' U R BR B BR' F' BR B' L' B' BL' B'\nAlg D L F BL F L BL' L D' BL' D' F' D' F' L BL D' BL'\nAlg D F BL F' BR B' BL' B BL BR' BL L' R F R' L D'\nAlg L BL' B' L B L B' L F R U R' B F'\nAlg F' D' BL F R B' L U' L' B R' BL' F' D F BL' D F D'\nAlg B' L' BL U' D' L' BL' L U' D R' F R U' BL' L B\nAlg L' F L' BL U' BL' U L F' L U' BL U BL'\nAlg D' F' BL L U' F U F' L' U BL' U' F D\nAlg B' U F D F' U F D' F U B U' F U\nAlg U B' BR' U R' U' R BR U' B\nAlg F' BL' D F BL F' BR F' BR' F BL' D' BL F\nAlg F' BR' BL' BR D BL' F BL F' D' BL F\nAlg U' F R F' BL' F R' F BL F U\nAlg F' BR F BR' L BL' BR' BL BR L'\nAlg F U' B F U' BR U BR' U F' U' B' U F'\nAlg D F' BR R F' R' F BR' D' F\nAlg B D' B U B' D B U' B BR BL BR' D BL BR BL BR' BL D'\nAlg B' U' L' D' F D' L' F' L D F' D L U B BL'\nAlg D L' F R L' BL B L' B' BL' L R' F' L F L' F' D'\nAlg D L' D' BL D F' D F D' BL' L BL D'\nAlg D' B R U' B' F' BL' L BL L' BL B F U R' BR' B' D\nAlg D L BL' F L BL L' B' F R U' R' B F BL L' D'\nAlg D F' BL F BL U BL F' D B D' F D B' D BR BL BR' U'\nAlg B F' BL B F' BR' F' L F R' U' R BL' BR BL F' L' B\nAlg L F BR B' D BL D' R U' R' D BL' D' B BR' F' L BL L\nAlg B F BL B F' BR' L R' U' R BL' BR BL L' B\nAlg D' B U BR' D BR' L' U' BR U BR L D' BR U' B' D' BL' D'\nAlg F' D' BR' BL' BR D' BR L' U' R F R' U BR' L D' F\nAlg D F U D' BL U' B D' F BR F' D' F' D BR' D B' BL\nAlg B U' D' F D BL' D' BR D' BR' D BL B' BL' B F' U D B'\nAlg L' BL' L' F BR B' D BL D' R U R' D BL' D' B BR' F' L'\nAlg B U F' U' B BL' B' U D' R BR R' D F U' B'\nAlg B L BL' U' L U' L' U R BL F D' BR D F' R' L' B'\nAlg B' L B' BR' B L' F' BL F BL' B' BR B' F U' F' U BL'\nAlg D' B BR R U' B' F' BL' L BL' L' BL B F U R' B' D\nAlg B BL' U' B BL' B D B D' B D B D' BL B' U BL B'\nAlg U BR' U' BR L' F BR' L' U BR U' L F' L\nAlg L' U BR BL BR' B U BR' U' BR B' BL' U' L\nAlg BR BL D BR' BL' L BL' BR BL L' BL D' BL' BR'\nAlg F' BL' D' BR' D BL BR' B U BR U' B' BR F\nAlg F U' F' D F' U' B' U F' U' B U' F' D'\nAlg B' U BR' R' U R U' BR B U'\nAlg L U BL U' BL' L' BL L' F' BL' F BL L BL'\nAlg U B' BL' BR' U F' BR' D' F BR' U BL' L' BL'\nAlg F BL' L' F' BL D' F' BR U' R' F' U F' BR'\nAlg U B U' BL L U' L' U BL' B'\nAlg U BL U' B BR' B U BL' U' BL L B' BR B L' B\nAlg B BL B L F' U' F U F BR' R' U' R BR' F' BR' L' B\nAlg B BR D L' D' F' D F D' F' D' F D' BR' L D' B D B\nAlg F' L B' L' F L' U' F R U R' F' L' U' B BL L'\nAlg B' L' F U F L' F R U' R' U L F R U R' U B F' BL\nAlg B U F' D' F' U R BR' R' U' F D B BL B' F U' B'\nAlg F BL U BL' U' F' BL L U' L D BR L' U L U' BR' U D' L\nAlg B U' D' B' F BL B BL' D' BR D BR' D BL D' F' U D B'\nAlg B BL' D' B' D B BL D BR' BL BR' R D R' BR BL' BR D' B'\nAlg B F U' F' D' F' U' R BL' BR' R' BL U' F D B BL B\nAlg D BR' BL B' BL' B BL' BR' L' U' R F R' U BR' L D'\nAlg B' F' U' F' BL' D' B BR' R' U R B' BR D F U B F\nAlg B' D' B' D BR L' D F' D F D F' D' F D L D' BR' B'\nAlg D' B F D BL' D' BL B BR' B' BR B' BL' F' D\nAlg B D B' F BL L' BL' F' L BL L' BL' BR L R L' R' BR' L' D'\nAlg B U B F' BL' B' D' F' U R BR R' U' F D F U' B'\nAlg BR BL' L' F' BR U F' U' BR L' B' BR' L F' BR L' B L'\nAlg D BL' L' BL D F' D' F D' BL' D L D'\nAlg F' BL' B F U' B U B' D' F' BL' B U' B' BL U F D B'\nAlg B' F' L BL' BR' R' BL U R BR L' B' F BL' B'\nAlg BR BL' BR' BL L' F L' BL' BR BL BR' L F' L\nAlg B BL BR' F U' L F U BR' F BL D BR' BL\nAlg B' BL' B' U BR' U' BR BL' BR BL BR' B BL B\nAlg BR' U' L F U' F' U L' BL' U BL BR\nAlg B U BR R' BR U' B' BR U' B' U BR' R' BR\nAlg B BR BL L BL BR' BL' L U' BL' U BL L BL' B'\nAlg F' BR' B BL' BR' R BR' BL BR R' BR B' BR F\nAlg F' BR' B U BR' U' B' BR BL' D' BR D BL F\nAlg D' F' BR U' R' F' U F' BR' F BL' L' F' BL\nAlg B BL U' L U L' BL' U B' U'\nAlg L' F' R B F' BR L' D' F' D BR' L B' F R' F BL L\nAlg D F BL L' BL' B L B' L B L B' L BL L BL' F' D'\nAlg B BL B BR' L R' U' R BR L' B U BR' U' BR BL' BR BL BR'\nAlg B' F R U' R' F' L' B L' B' L' B BL L'\nAlg B' L' F D R' F' L' U L F R' U D' L' B BL L F' L\nAlg D' L' BL F R' BR' R B' F D' BL D B F BL' L D\nAlg B' BR' R' U' BL' U' L R' F R F' L' R U' BL BR B BL\nAlg BR L BL BR L U' D R' BL F' R BL' U' D' BR U' L\nAlg BR L B' L F R F U F' U' R' L' B L F' BR' L BL\nAlg B F U D' R BL' BR' R' BL U' D B F' BL B\nAlg L' BL L' D B D' BL' B' D' L R' D R BL' U' L U BL'\nAlg L' D BL' U' R' BL F R U D' BR L' BL' BR' L'\nAlg U BR' U' L' BL' U BR U' L' B' F R BL' U R' BL B F' L'\nAlg BR L' BL' L' B' F R BL' U R' BL B F BR F BR L'\nAlg B' F' L F BR BL B' BR' B BL' F' L' B' BR B BR' B F BL'\nAlg B D BR B' D' BL' D B F' R' BR R F BR' D' B'\nAlg D BL' L' BL' L BL L' BL F' BL' L' F L BL F BL' L D'\nAlg U' D R' F R U L D' L D L D' BL' L\nAlg U D' BR D' L' D R F BR F' BR' R' BR' D' L U' D' BL'\nAlg B' F' BR' L R' BL U R BL' BR L' B' F BL' B'\nAlg L' F BL' F' BL F' BR F BR' L\nAlg L BL F' D F D' BL' F L' F'\nAlg F' D' BR U BR' D BR' U' BR F\nAlg BR' L BL' BR BL BR L' F' BR' F\nAlg B BR F BR' B' BR F' R' BR' BL' BR R BR' BL\nAlg BR' B U BR' R BR R' U' BR B'\nAlg F' BL' BR R' BR BL BR' R BR' F\nAlg BR L' BL BR' BL' BR' L U BR U'\nAlg U BR' U' BR BL' BR BL BR'\n`)}var wm,ra=U(()=>{Ot();un();wm=null});var ig={};Ue(ig,{cachedMegaminxKPuzzleWithoutMO:()=>vo,cachedSGSDataMegaminx:()=>Tm,sgsDataMegaminx:()=>lg});async function Pm(){let t=ln(\"megaminx\",{allMoves:!0,addRotations:!0}),e=new Ie(t.getKPuzzleDefinition(!0),{experimentalPGNotation:new br(t,t.getOrbitsDef(!0))});return e.definition.name=\"megaminx\",e}async function vo(){return Mm??(Mm=Pm())}async function Tm(){return Gm??(Gm=lg())}async function lg(){return zt(await vo(),`SubgroupSizes 12 5 60 58 60 56 54 57 52 50 54 48 46 51 44 42 48 40 45 38 36 42 34 32 39 30 36 28 26 33 24 30 22 20 27 18 24 16 14 21 12 18 10 15 8 6 2 12 9 3\n\nAlg Rv\nAlg Rv2\nAlg Rv2'\nAlg Rv'\nAlg Lv'\nAlg Lv2\nAlg Lv2'\nAlg Fv\nAlg Fv'\nAlg BRv2\nAlg Lv2 Rv'\n\nAlg Uv\nAlg Uv2\nAlg Uv2'\nAlg Uv'\n\nAlg D\nAlg D2\nAlg D2'\nAlg D'\nAlg B\nAlg B2\nAlg B2'\nAlg B'\nAlg D DL\nAlg D DL2\nAlg D DL2'\nAlg D DL'\nAlg D2 FL\nAlg D2 FL2\nAlg D2 FL2'\nAlg D2 FL'\nAlg D2' FR\nAlg D2' FR2\nAlg D2' FR2'\nAlg D2' FR'\nAlg D' DR\nAlg D' DR2\nAlg D' DR2'\nAlg D' DR'\nAlg B DR\nAlg B DR2'\nAlg B DR'\nAlg B2 BR2\nAlg B2 BR2'\nAlg B2 BR'\nAlg B2' BL\nAlg B2' BL2\nAlg B2' BL2'\nAlg B' DL\nAlg B' DL2\nAlg B' DL'\nAlg D DL B\nAlg D DL B2'\nAlg D DL B'\nAlg D DL2' L\nAlg D DL2' L2\nAlg D DL2' L2'\nAlg D DL' FL\nAlg D DL' FL2\nAlg D DL' FL'\nAlg D2 FL2' F\nAlg D2 FL2' F2\nAlg D2 FL2' F2'\nAlg D2 FL' FR\nAlg D2 FL' FR2\nAlg D2 FL' FR'\nAlg D2' FR2' R\nAlg D2' FR2' R2\nAlg D2' FR2' R2'\nAlg B DR2' R2'\nAlg B DR' BR2\nAlg B2 BR' BL\nAlg B2' BL2' L\nAlg D DL2' L2' F\nAlg DL\nAlg DL2\nAlg DL2'\nAlg DL'\nAlg DL BL\nAlg DL BL2\nAlg DL BL2'\nAlg DL BL'\nAlg DL2 L\nAlg DL2 L2\nAlg DL2 L2'\nAlg DL2 L'\nAlg DL2' FL\nAlg DL2' FL2\nAlg DL2' FL2'\nAlg DL2' FL'\nAlg D B D'\nAlg D B2 D'\nAlg D B2' D'\nAlg D B' D'\nAlg D2 B D2'\nAlg D2 DL' D2'\nAlg D2' DL' D2\nAlg D' B D\nAlg D' DL' D\nAlg B2 DR2 B2'\nAlg B2 DR2' B2'\nAlg B2 DR' B2'\nAlg B2' BR B2\nAlg B2' BR2 B2\nAlg B2' BR2' B2\nAlg B' BL B\nAlg B' BL2 B\nAlg B' BL' B\nAlg DL BL2' U\nAlg DL BL2' U2\nAlg DL BL2' U2'\nAlg DL BL' L\nAlg DL BL' L2\nAlg DL BL' L'\nAlg DL2 L2' F\nAlg DL2 L2' F2\nAlg DL2 L2' F2'\nAlg DL2 L' FL\nAlg DL2 L' FL2\nAlg DL2 L' FL'\nAlg DL2' FL2' FR\nAlg DL2' FL2' FR2\nAlg DL2' FL2' FR2'\nAlg D B D' DR2\nAlg D B D' DR'\nAlg D2 B D2' FR2'\nAlg D' B D DL\nAlg B2 DR' B2' BR\nAlg B2 DR' B2' BR'\nAlg B2' BR2' B2 U\nAlg DL BL2' U2' F\nAlg D FL D'\nAlg D FL2 D'\nAlg D FL2' D'\nAlg D FL' D'\nAlg D2 FR D2'\nAlg D2 FR2 D2'\nAlg D2 FR2' D2'\nAlg D2' DR D2\nAlg D2' DR2 D2\nAlg D2' DR2' D2\nAlg DL2 BL DL2'\nAlg DL2 BL2 DL2'\nAlg DL2 BL2' DL2'\nAlg DL2 BL' DL2'\nAlg DL2' L2 DL2\nAlg DL2' L2' DL2\nAlg DL' FL2 DL\nAlg DL' FL' DL\nAlg D FL D' FL2'\nAlg D FL L D'\nAlg D FL L2 D'\nAlg D FL L2' D'\nAlg D FL2 F D'\nAlg D FL2 F2 D'\nAlg D FL2 F2' D'\nAlg D FL2 L D'\nAlg D FL2 L2 D'\nAlg D FL2' D' FR\nAlg D FL2' D' FR2\nAlg D FL2' D' FR2'\nAlg D FL2' F D'\nAlg D FL2' F2' D'\nAlg D FL2' FR2' D'\nAlg D FL2' FR' D'\nAlg D FL' D' FL\nAlg D FL' FR D'\nAlg D2 FR D2' FR2'\nAlg D2 FR2 R D2'\nAlg D2 FR2 R2 D2'\nAlg D2 FR2 R2' D2'\nAlg D2 FR2' D2' DR\nAlg D2 FR2' D2' DR2\nAlg D2 FR2' D2' DR2'\nAlg D2 FR2' D2' DR'\nAlg D2 FR2' R2' D2'\nAlg D2 FR' DR2' D2'\nAlg D2' DR D2 DR2'\nAlg D2' DR2 BR D2\nAlg D2' DR2 BR2' D2\nAlg D2' DR2' BR2' D2\nAlg D2' DR2' BR' D2\nAlg DL2 BL2 DL2' BL'\nAlg DL2 BL2 DL2' BR'\nAlg DL2 BL' DL2' L'\nAlg DL2' L2 DL2 BL2\nAlg D FL L2 BL2 D'\nAlg D FL L' FL2' D'\nAlg D FL2 L FL' D'\nAlg D FL2' D' FR2 DR2'\nAlg B DL B'\nAlg B DL2 B'\nAlg B DL2' B'\nAlg B DL' B'\nAlg B2 D B2'\nAlg B2 D2 B2'\nAlg B2 D2' B2'\nAlg B2 D' B2'\nAlg B2 DL B2'\nAlg B2' D' B2\nAlg B2' DL B2\nAlg B' D' B\nAlg B DL B' BL\nAlg B DL B' BL2\nAlg B DL B' BL2'\nAlg B DL B' BL'\nAlg B DL2 B' BL2\nAlg B DL2 B' BL2'\nAlg B DL2 B' BL'\nAlg B DL2' L2 B'\nAlg B DL2' L2' B'\nAlg B DL2' L' B'\nAlg B DL' FL B'\nAlg B DL' FL2 B'\nAlg B DL' FL2' B'\nAlg B DL' FL' B'\nAlg B2 D FL B2'\nAlg B2 D FL2' B2'\nAlg B2 D FL' B2'\nAlg B2 D2 FR2 B2'\nAlg B2 D2 FR2' B2'\nAlg B2 D2 FR' B2'\nAlg B2 D2' B2' DR\nAlg B2 D2' B2' DR2\nAlg B2 D2' B2' DR2'\nAlg B2 DL B2' BR\nAlg B2 DL B2' BR2\nAlg B2 DL B2' BR2'\nAlg B2' D' B2 BR2\nAlg B2' D' B2 BR2'\nAlg B' D' B DR\nAlg B' D' B DR2'\nAlg D FL' D FR D2'\nAlg D DL FL DL' D'\nAlg D2' FR DR FR' D2\nAlg B DL B D B2'\nAlg B DL B D2' B2'\nAlg B DL B' BL2 U2\nAlg B DL B' BL2 U2'\nAlg B DL B' BL2 U'\nAlg B DL2 B' BL2' U2\nAlg B DL2 B' BL2' U2'\nAlg B DL2 B' BL' L2\nAlg B DL2' L2' B' F2\nAlg B2 D FL2' B2' F2'\nAlg DR\nAlg DR2\nAlg DR2'\nAlg DR'\nAlg DR2 FR\nAlg DR2 FR2\nAlg DR2 FR2'\nAlg DR2 FR'\nAlg DR2' R\nAlg DR2' R2\nAlg DR2' R2'\nAlg DR2' R'\nAlg DR' BR\nAlg DR' BR2\nAlg DR' BR2'\nAlg DR' BR'\nAlg D DR D'\nAlg D2 DR D2'\nAlg B BR B'\nAlg B BR2' B'\nAlg B BR' B'\nAlg B2 BL2 B2'\nAlg B2 BL2' B2'\nAlg B2 BL' B2'\nAlg DR2 FR2 FL2\nAlg DR2 FR2 FL2'\nAlg DR2 FR2 FL'\nAlg DR2 FR2' F\nAlg DR2 FR2' F2\nAlg DR2 FR2' F2'\nAlg DR2 FR' R\nAlg DR2 FR' R2\nAlg DR2 FR' R'\nAlg DR2' R FR\nAlg DR2' R FR2'\nAlg DR2' R FR'\nAlg DR2' R2' U\nAlg DR2' R2' U2\nAlg DR2' R2' U2'\nAlg DR2' R' BR2'\nAlg DR' BR2' BL'\nAlg D DR2 FR D'\nAlg B BR B' DR\nAlg B BR B' DR2\nAlg B BR2' B' U2'\nAlg B BR' B' BL2\nAlg B BR' B' BL2'\nAlg B BR' B' BL'\nAlg B2 BL2' L' B2'\nAlg DR2 FR2 FL' F\nAlg DR2 FR2' F FL2'\nAlg DR2 FR2' F FL'\nAlg B BR2' U2' L2' B'\nAlg D2' FL D2\nAlg D2' FL2 D2\nAlg D2' FL2' D2\nAlg D2' FL' D2\nAlg D' FR2 D\nAlg D' FR2' D\nAlg D' FR' D\nAlg DR FR DR'\nAlg DR FR2' DR'\nAlg DR FR' DR'\nAlg DR2 R2 DR2'\nAlg DR2 R2' DR2'\nAlg DR2' BR DR2\nAlg DR2' BR2 DR2\nAlg DR2' BR2' DR2\nAlg D DR2 D' DR2'\nAlg D DR2' D' DR2\nAlg D2' FL D2 FR'\nAlg D2' FL2 D2 FL2'\nAlg D2' FL2 D2 FL'\nAlg D2' FL2 L D2\nAlg D2' FL2 L2 D2\nAlg D2' FL2 L2' D2\nAlg D2' FL2 L' D2\nAlg D2' FL2' F D2\nAlg D2' FL2' F2 D2\nAlg D2' FL2' F2' D2\nAlg D2' FL2' L D2\nAlg D2' FL2' L2 D2\nAlg D2' FL2' L2' D2\nAlg D2' FL2' L' D2\nAlg D2' FL' F D2\nAlg D2' FL' F2' D2\nAlg D' FR FL' D\nAlg D' FR2 D FR'\nAlg D' FR2 D FL2\nAlg D' FR2 D FL2'\nAlg D' FR2 FL D\nAlg D' FR2' R2' D\nAlg D' FR' R2' D\nAlg DR2 R2 DR2' U2'\nAlg DR2 R2' DR2' BR\nAlg DR2 R2' DR2' BR2\nAlg DR2 R2' DR2' BR2'\nAlg DR2 R2' DR2' BR'\nAlg DR2 R' BR2' DR2'\nAlg DR2' BR DR2 BR2'\nAlg DR2' BR2 BL DR2\nAlg DR2' BR2 BL2' DR2\nAlg DR2' BR2' BL' DR2\nAlg D B2' BL2' B2 D'\nAlg D2 B2 DL2 B2' D2'\nAlg D2' FL2 L' FL2 D2\nAlg D2' FL2' L D2 FL'\nAlg D2' FL2' L FL2' D2\nAlg D2' FL2' L2' BL2 D2\nAlg B2' DR B2\nAlg B2' DR2 B2\nAlg B2' DR2' B2\nAlg B2' DR' B2\nAlg B' DR' B\nAlg B2' DR FR B2\nAlg B2' DR FR2 B2\nAlg B2' DR FR2' B2\nAlg B2' DR FR' B2\nAlg B2' DR2 R B2\nAlg B2' DR2 R2 B2\nAlg B2' DR2 R2' B2\nAlg B2' DR2 R' B2\nAlg B2' DR2' B2 BR\nAlg B2' DR2' B2 BR2\nAlg B2' DR2' B2 BR2'\nAlg B2' DR2' B2 BR'\nAlg B2' DR' B2 BL2\nAlg B2' DR' B2 BL2'\nAlg B2' DR' B2 BL'\nAlg B' DR2' BR' B\nAlg B' DR' B BR\nAlg B' DR' B BR2'\nAlg B' DR' B BR'\nAlg D2' FR2' FL FR2 D2\nAlg D2' FR2' FL2 FR2 D2\nAlg D2' FR2' FL2' FR2 D2\nAlg D' DR2' FR DR2 D\nAlg D' DR2' FR2 DR2 D\nAlg D' DR' FR' DR D\nAlg D' FR D' FL' D2\nAlg B2 D2 DL2 D2' B2'\nAlg B2 D2 DL2' D2' B2'\nAlg B2 D2 DL' D2' B2'\nAlg B2 D' FR' D B2'\nAlg B2 DL D2' DL' B2'\nAlg B2 DL D' DL' B2'\nAlg B2' DR FR2' B2 F2\nAlg B2' DR FR2' B2 F2'\nAlg B2' DR FR' R B2\nAlg B2' DR FR' R2 B2\nAlg B2' DR2 R2' B2 U\nAlg B2' DR2 R2' B2 U2\nAlg B2' DR2 R2' B2 U2'\nAlg B2' DR' B2 BL2 U'\nAlg B' DR2' BR' B BL2'\nAlg DR D FR D' DR'\nAlg DL2' B D B' DL2\nAlg D2' FR2' FL2' FR2 F D2\nAlg D' DR2' FR DR2 D FL2'\nAlg B2 D B D' DR B2\nAlg FR\nAlg FR2\nAlg FR2'\nAlg FR'\nAlg FR2 FL\nAlg FR2 FL2\nAlg FR2 FL2'\nAlg FR2 FL'\nAlg FR2' F\nAlg FR2' F2\nAlg FR2' F2'\nAlg FR2' F'\nAlg FR' R\nAlg FR' R2\nAlg FR' R2'\nAlg FR' R'\nAlg D FR D'\nAlg DR R DR'\nAlg DR R2' DR'\nAlg DR R' DR'\nAlg DR2 BR2 DR2'\nAlg DR2 BR2' DR2'\nAlg DR2 BR' DR2'\nAlg FR2 FL2' L\nAlg FR2 FL2' L2\nAlg FR2 FL2' L2'\nAlg FR2 FL' F\nAlg FR2 FL' F2\nAlg FR2 FL' F'\nAlg FR2' F FL\nAlg FR2' F FL2'\nAlg FR2' F FL'\nAlg FR2' F2' U\nAlg FR2' F2' U2\nAlg FR2' F2' U2'\nAlg FR2' F' R2'\nAlg FR' R2' BR'\nAlg DR R DR' FR\nAlg DR R DR' FR2\nAlg DR R2' DR' U2'\nAlg DR R' DR' BR2\nAlg DR R' DR' BR2'\nAlg DR R' DR' BR'\nAlg DR2 BR2' BL2' DR2'\nAlg DR2 BR2' BL' DR2'\nAlg FR2 FL' F L2\nAlg FR2 FL' F L2'\nAlg B' DR2 BR' DR2' B\nAlg DR R2' U2' BL2 DR'\nAlg D' FL D\nAlg D' FL2 D\nAlg D' FL2' D\nAlg D' FL' D\nAlg FR FL FR'\nAlg FR FL2 FR'\nAlg FR FL2' FR'\nAlg FR FL' FR'\nAlg FR2 F2 FR2'\nAlg FR2 F2' FR2'\nAlg FR2' R FR2\nAlg FR2' R2 FR2\nAlg FR2' R2' FR2\nAlg D FR2 D' FR2'\nAlg D FR2' D' FR2\nAlg D' FL D FL'\nAlg D' FL2 D FL'\nAlg D' FL2 L D\nAlg D' FL2 L2 D\nAlg D' FL2 L2' D\nAlg D' FL2 L' D\nAlg D' FL2' F2' D\nAlg D' FL2' L2 D\nAlg D' FL2' L2' D\nAlg D' FL2' L' D\nAlg D' FL' F2' D\nAlg FR FL2' F' FR'\nAlg FR FL2' FR' L\nAlg FR FL2' FR' L2\nAlg FR FL2' FR' L2'\nAlg FR2 F2 FR2' U2\nAlg FR2 F2 FR2' U2'\nAlg FR2 F2' FR2' U2'\nAlg FR2 F2' FR2' R\nAlg FR2 F2' FR2' R2\nAlg FR2 F2' FR2' R2'\nAlg FR2 F2' FR2' R'\nAlg FR2 F' R2' FR2'\nAlg FR2' R FR2 R2'\nAlg FR2' R2 BR FR2\nAlg FR2' R2 BR2 FR2\nAlg FR2' R2 BR2' FR2\nAlg FR2' R2' BR2' FR2\nAlg FR2' R2' BR' FR2\nAlg D DR2' BR2' DR2 D'\nAlg D FR2' D' FR2 FL2\nAlg D2' B DL B' D2\nAlg D2' B2' D' B2 D2'\nAlg D' FL2 L BL D\nAlg D' FL2 L' FL2 D\nAlg D' FL2' F2' R' D\nAlg D' FL2' L FL2' D\nAlg D' FL2' L2' BL2 D\nAlg DR2' FR DR2\nAlg DR2' FR2 DR2\nAlg DR2' FR2' DR2\nAlg DR2' FR' DR2\nAlg DR' FR' DR\nAlg DR2' FR FL DR2\nAlg DR2' FR FL2 DR2\nAlg DR2' FR FL2' DR2\nAlg DR2' FR FL' DR2\nAlg DR2' FR2 DR2 F\nAlg DR2' FR2 DR2 F2\nAlg DR2' FR2 DR2 F2'\nAlg DR2' FR2 DR2 F'\nAlg DR2' FR2' DR2 R\nAlg DR2' FR2' DR2 R2\nAlg DR2' FR2' DR2 R2'\nAlg DR2' FR2' DR2 R'\nAlg DR2' FR' DR2 BR2\nAlg DR2' FR' DR2 BR2'\nAlg DR2' FR' DR2 BR'\nAlg DR' FR2' R' DR\nAlg DR' FR' DR R\nAlg DR' FR' DR R2'\nAlg DR' FR' DR R'\nAlg D' FR2' FL FR2 D\nAlg D' FR2' FL2 FR2 D\nAlg D' FR' FL' FR D\nAlg B2' DR2 FR' DR2' B2\nAlg B' DR2 FR' DR2' B\nAlg DR2 D' FL' D DR2'\nAlg DR2' FR FL2' DR2 L\nAlg DR2' FR FL2' DR2 L2\nAlg DR2' FR FL2' DR2 L2'\nAlg DR2' FR FL' DR2 F\nAlg DR2' FR FL' DR2 F2\nAlg DR2' FR2 F FL2 DR2\nAlg DR2' FR2 DR2 F2' U\nAlg DR2' FR2 DR2 F2' U2\nAlg DR2' FR2 DR2 F2' U2'\nAlg DR2' FR' DR2 BR2 U'\nAlg DR2' FR' DR2 BR2' BL2'\nAlg DR' FR2' R' DR BR2'\nAlg D' FR2' FL2 FR2 L D\nAlg D' FR2' FL2 FR2 L2 D\nAlg B2' DR2' FR2' R' DR2 B2\nAlg DR2 D DR D' FR DR2\nAlg DR2' FR' DR2 BR2 U' BL2\nAlg FL\nAlg FL2\nAlg FL2'\nAlg FL'\nAlg FL L\nAlg FL L2\nAlg FL L2'\nAlg FL L'\nAlg FL2 F\nAlg FL2 F2\nAlg FL2 F2'\nAlg FL2 F'\nAlg FR2' FL2' FR2\nAlg FR' FL2' FR\nAlg FL L2 BL\nAlg FL L2 BL2\nAlg FL L2 BL2'\nAlg FL L2 BL'\nAlg FL L2' U\nAlg FL L2' U2\nAlg FL L2' U2'\nAlg FL L' F\nAlg FL L' F2\nAlg FL L' F'\nAlg FL2 F L\nAlg FL2 F L2\nAlg FL2 F L2'\nAlg FL2 F L'\nAlg FL2 F2' R\nAlg FL2 F2' R2\nAlg FL2 F2' R2'\nAlg FR' FL2 F' FR\nAlg FL L2 BL2' BR\nAlg FL L2 BL2' BR2\nAlg FL L2 BL' U\nAlg FL L2' U BL2\nAlg FL L2' U BL2'\nAlg FL L2' U BL'\nAlg FL L2' U2' R\nAlg FL L2' U2' R2\nAlg FL L' F' FL\nAlg FL L' F' FL2\nAlg FL L' F' FL2'\nAlg B DL2' BL DL2 B'\nAlg FL L2 BL' U BR2'\nAlg FL2 L FL2'\nAlg FL2 L2 FL2'\nAlg FL2 L2' FL2'\nAlg FL2 L' FL2'\nAlg FL2' F2 FL2\nAlg FL2' F2' FL2\nAlg FL2' F' FL2\nAlg FR2' FL' FR2 FL\nAlg FL2 L2 FL2' L2'\nAlg FL2 L2 FL2' L'\nAlg FL2 L2 FL2' BL\nAlg FL2 L2 FL2' BL2\nAlg FL2 L2 FL2' BL2'\nAlg FL2 L2 FL2' BL'\nAlg FL2 L2' FL2' U\nAlg FL2 L2' FL2' U2\nAlg FL2 L2' FL2' U2'\nAlg FL2 L2' FL2' BL\nAlg FL2 L2' FL2' BL2\nAlg FL2 L2' FL2' BL2'\nAlg FL2 L2' FL2' BL'\nAlg FL2 L' FL2' U\nAlg FL2 L' FL2' U2'\nAlg FL2 L' FL2' F\nAlg FL2 L' FL2' F2\nAlg FL2 L' FL2' F2'\nAlg FL2 L' FL2' F'\nAlg FL2' F L FL2\nAlg FL2' F L' FL2\nAlg FL2' F2 L FL2\nAlg FL2' F2 L2 FL2\nAlg FL2' F2 L2' FL2\nAlg FL2' F2 FL2 F'\nAlg FL2' F2 FL2 L2\nAlg FL2' F2' R FL2\nAlg FL2' F2' R2 FL2\nAlg FL2' F2' R2' FL2\nAlg FL2' F' R2' FL2\nAlg FL2' F' R' FL2\nAlg FL' FR2' FL FR2\nAlg D DR2' FR2' DR2 D'\nAlg D FR2' R' FR2 D'\nAlg D' DL2 BL2 DL2' D\nAlg B2 D2' B D2 B2\nAlg DR2 D2 DR D2' DR2\nAlg FR2 D FR D' FR2\nAlg FL2 L2 BL' L2 FL2'\nAlg FL2 L2 FL2' BL2 BR\nAlg FL2 L2' BL L2' FL2'\nAlg FL2 L2' FL2' BL L'\nAlg DL FL DL'\nAlg DL FL2 DL'\nAlg DL FL2' DL'\nAlg DL FL' DL'\nAlg DL2 FL DL2'\nAlg DL FL DL' L\nAlg DL FL DL' L2\nAlg DL FL DL' L2'\nAlg DL FL DL' L'\nAlg DL FL2 L DL'\nAlg DL FL2 L2 DL'\nAlg DL FL2 L2' DL'\nAlg DL FL2 L' DL'\nAlg DL FL2 DL' L\nAlg DL FL2' DL' F2\nAlg DL FL2' DL' F2'\nAlg DL FL2' DL' F'\nAlg DL2 FL DL2' BL\nAlg DL2 FL DL2' BL2\nAlg DL2 FL DL2' BL2'\nAlg B DL2' FL DL2 B'\nAlg B2 DL2' FL DL2 B2'\nAlg FL2 F2 L' F2' FL2'\nAlg FL2 F2' L' F2 FL2'\nAlg FL2 F' L' F FL2'\nAlg FL2' FR2' FL FR2 FL2\nAlg FL2' FR' F' FR FL2\nAlg DL FL DL' L BL2'\nAlg DL FL DL' L BL'\nAlg DL FL DL' L2 U2\nAlg DL FL DL' L2 U2'\nAlg DL FL2 L2' DL' U2\nAlg DL FL2 L2' DL' U2'\nAlg DL FL2 L' DL' F'\nAlg DL FL2' DL' F2' R2\nAlg DL FL2' DL' F2' R2'\nAlg DL2 FL DL2' BL2 BR2\nAlg B DL2 FL DL2' BL B'\nAlg FL2 F2' L' F2 R2 FL2'\nAlg FL2 F2' L' F2 R2' FL2'\nAlg FL2' FR' F FR L FL2\nAlg DL FL DL' L BL2' BR2\nAlg DL FL2 L DL FL' DL2'\nAlg FR F FR'\nAlg FR F2 FR'\nAlg FR F2' FR'\nAlg FR F' FR'\nAlg FR2 R FR2'\nAlg FR2 R2 FR2'\nAlg FR2 R2' FR2'\nAlg FR2 R' FR2'\nAlg FL2' L FL2\nAlg FL2' L2 FL2\nAlg FL2' L2' FL2\nAlg FL' F FL\nAlg FL' F2 FL\nAlg FL' F' FL\nAlg FR F FR' F'\nAlg FR F2 FR' L\nAlg FR F2' FR' U\nAlg FR F2' FR' U2\nAlg FR F2' FR' U2'\nAlg FR F' FR' R\nAlg FR F' FR' R2\nAlg FR F' FR' R2'\nAlg FR F' FR' R'\nAlg FR2 R FR2' F2\nAlg FR2 R FR2' R'\nAlg FR2 R2' BR FR2'\nAlg FR2 R2' BR2 FR2'\nAlg FR2 R2' BR2' FR2'\nAlg FR2 R2' BR' FR2'\nAlg FL2' L2 FL2 BL\nAlg FL2' L2 FL2 BL2\nAlg FL2' L2' FL2 U\nAlg FL' F L2 FL\nAlg FL' F L2' FL\nAlg FL' F FL L\nAlg DR' FR2 R' FR2' DR\nAlg FR F2' U2' BR FR'\nAlg FR F2' U2' BR2 FR'\nAlg FR F' FR R' FR2'\nAlg FL2' L2' FL2 U BL2\nAlg FL2' L2' FL2 U BL2'\nAlg FR F L F' FR'\nAlg FR F L2 F' FR'\nAlg FR F L2' F' FR'\nAlg FR F L' F' FR'\nAlg FR F2 U F2' FR'\nAlg FR F2 U2 F2' FR'\nAlg FR F2 U2' F2' FR'\nAlg FR F2' R F2 FR'\nAlg FR F2' R2 F2 FR'\nAlg FR F2' R2' F2 FR'\nAlg FR FL' L FL FR'\nAlg FR FL' L2 FL FR'\nAlg FR FL' L' FL FR'\nAlg FR2 F2' L F2 FR2'\nAlg FR2 F2' L2 F2 FR2'\nAlg FR2 F' U2 F FR2'\nAlg FR2 F' U2' F FR2'\nAlg FR2 R U R' FR2'\nAlg FR2 R U' R' FR2'\nAlg FR2 R2 BR2 R2' FR2'\nAlg FR2 R2 BR2' R2' FR2'\nAlg FR2' DR BR DR' FR2\nAlg FR2' R2' U R2 FR2\nAlg FR2' R2' U2 R2 FR2\nAlg FR2' R' BR2 R FR2\nAlg FR2' R' BR2' R FR2\nAlg FR2' R' BR' R FR2\nAlg FL2 L BL L' FL2'\nAlg FL2 L2 U2' L2' FL2'\nAlg FL2 DL' BL2 DL FL2'\nAlg FL2' F2 R2' F2' FL2\nAlg FL2' L2' BL2 L2 FL2\nAlg FL' F2 L F2' FL\nAlg FL' F2 L2 F2' FL\nAlg FL' F' R' F FL\nAlg FL' FR R' FR' FL\nAlg FR F L2' F' FR' BL\nAlg FR F L2' F' FR' BL2\nAlg FR F L' F' FR' F'\nAlg FR F2 U2 BR2 F2' FR'\nAlg FR F2 U2 BR2' F2' FR'\nAlg FR F2' R F2 R2' FR'\nAlg FR F2' R2' F2 FR' R'\nAlg FR FL' L FL FR' F'\nAlg FR2 F' U2 F FR2' L2'\nAlg FR F L2 BL' L2 F' FR'\nAlg FR F L2' F U' F2' FR'\nAlg R\nAlg R2\nAlg R2'\nAlg R'\nAlg R2 F\nAlg R2 F2\nAlg R2 F2'\nAlg R2 F'\nAlg R2' U\nAlg R2' U2\nAlg R2' U2'\nAlg R2' U'\nAlg R' BR\nAlg R' BR2\nAlg R' BR2'\nAlg R' BR'\nAlg DR BR DR'\nAlg DR BR2' DR'\nAlg DR BR' DR'\nAlg FR R FR'\nAlg R2 F2' L\nAlg R2 F2' L2\nAlg R2 F2' L2'\nAlg R2 F' U\nAlg R2 F' U2\nAlg R2 F' U'\nAlg R2' U F\nAlg R2' U F2'\nAlg R2' U F'\nAlg R2' U2' BL\nAlg R2' U2' BL2\nAlg R2' U2' BL2'\nAlg R2' U' BR2'\nAlg DR BR DR' R\nAlg DR BR DR' R2\nAlg DR BR2' BL2' DR'\nAlg DR BR2' BL' DR'\nAlg R2 F' U L2\nAlg R2 F' U L2'\nAlg FR' F FR\nAlg FR' F2 FR\nAlg FR' F2' FR\nAlg FR' F' FR\nAlg R F R'\nAlg R F2 R'\nAlg R F2' R'\nAlg R F' R'\nAlg R2 U2 R2'\nAlg R2 U2' R2'\nAlg R2' BR R2\nAlg R2' BR2 R2\nAlg R2' BR2' R2\nAlg FR R2 FR' R2'\nAlg FR R2' FR' R2\nAlg FR' F FR F'\nAlg FR' F2 FR F'\nAlg FR' F2 FR L\nAlg FR' F2 FR L2\nAlg FR' F2 FR L2'\nAlg FR' F2 FR L'\nAlg FR' F2' FR U2'\nAlg FR' F2' FR L2\nAlg FR' F2' FR L2'\nAlg FR' F2' FR L'\nAlg FR' F' FR U2'\nAlg R F2' U' R'\nAlg R F2' R' L\nAlg R F2' R' L2\nAlg R F2' R' L2'\nAlg R2 U2 R2' BL2\nAlg R2 U2 R2' BL2'\nAlg R2 U2' BR R2'\nAlg R2 U2' BR2 R2'\nAlg R2 U2' R2' BL2'\nAlg R2 U2' R2' BR2'\nAlg R2 U2' R2' BR'\nAlg R2 U' BR2' R2'\nAlg R2' BR R2 BR2'\nAlg DR BR2 BL2' BR2' DR'\nAlg FR R2' FR' R2 F2\nAlg FR' F2 L' F2 FR\nAlg FR' F2' U2' BR' FR\nAlg FR' F2' L F2' FR\nAlg DR' R DR\nAlg DR' R2 DR\nAlg DR' R2' DR\nAlg DR' R' DR\nAlg DR' R DR F\nAlg DR' R DR F2\nAlg DR' R DR F2'\nAlg DR' R DR F'\nAlg DR' R2 DR U\nAlg DR' R2 DR U2\nAlg DR' R2 DR U2'\nAlg DR' R2 DR U'\nAlg DR' R2' DR BR\nAlg DR' R2' DR BR2\nAlg DR' R2' DR BR2'\nAlg DR' R2' DR BR'\nAlg DR' R' DR BR\nAlg DR' R' DR BR2'\nAlg DR' R' DR BR'\nAlg B2' DR2' R' DR2 B2\nAlg DR2' FR' F FR DR2\nAlg DR2' FR' F2 FR DR2\nAlg DR2' FR' F' FR DR2\nAlg DR' R DR F2' L\nAlg DR' R DR F2' L2\nAlg DR' R DR F2' L2'\nAlg DR' R DR F' U\nAlg DR' R DR F' U2\nAlg DR' R DR F' U'\nAlg DR' R2 U2' BL DR\nAlg DR' R2 U2' BL2 DR\nAlg DR' R2 U2' BL2' DR\nAlg DR' R2 DR U F2\nAlg DR' R' DR BR2' BL2'\nAlg DR2' FR' F2 FR DR2 L\nAlg DR2' FR' F2 FR DR2 L2\nAlg DR' FR' F' FR R' DR\nAlg BR\nAlg BR2\nAlg BR2'\nAlg BR'\nAlg BR2' U\nAlg BR2' U2\nAlg BR2' U2'\nAlg BR2' U'\nAlg BR' BL\nAlg BR' BL2\nAlg BR' BL2'\nAlg BR' BL'\nAlg B BL B'\nAlg B BL2' B'\nAlg B BL' B'\nAlg BR2' U2 F\nAlg BR2' U2 F2\nAlg BR2' U2 F2'\nAlg BR2' U2 F'\nAlg BR2' U2' L\nAlg BR2' U2' L2\nAlg BR2' U2' L2'\nAlg BR2' U' BL2'\nAlg BR' BL U\nAlg BR' BL U2\nAlg BR' BL U2'\nAlg BR' BL U'\nAlg B BL B' BR\nAlg B BL B' BR2\nAlg B BL B' BR2'\nAlg B BL2' L2' B'\nAlg B BL2' L' B'\nAlg BR2' U2' L F2\nAlg BR2' U2' L F2'\nAlg BR2' U2' L F'\nAlg BR2 U BR2'\nAlg BR2 U2 BR2'\nAlg BR2 U2' BR2'\nAlg BR2 U' BR2'\nAlg BR2' BL BR2\nAlg BR2' BL2 BR2\nAlg BR2' BL2' BR2\nAlg BR R BR' R'\nAlg BR2 U BR2' U2'\nAlg BR2 U BR2' U'\nAlg BR2 U BR2' F\nAlg BR2 U BR2' F2\nAlg BR2 U BR2' F2'\nAlg BR2 U BR2' F'\nAlg BR2 U2 BR2' F\nAlg BR2 U2 BR2' F2\nAlg BR2 U2 BR2' F2'\nAlg BR2 U2 BR2' F'\nAlg BR2 U2 BR2' L\nAlg BR2 U2 BR2' L2\nAlg BR2 U2 BR2' L2'\nAlg BR2 U2' BL BR2'\nAlg BR2 U2' BL2 BR2'\nAlg BR2 U2' BL' BR2'\nAlg BR2 U2' BR2' L\nAlg BR2 U2' BR2' L2'\nAlg BR2 U2' BR2' BL2'\nAlg BR2 U2' BR2' BL'\nAlg BR2 U' BL BR2'\nAlg BR2 U' BL2' BR2'\nAlg BR2 U' BL' BR2'\nAlg BR2' BL BR2 U2\nAlg BR2' BL BR2 U2'\nAlg BR2' BL BR2 BL2'\nAlg BR2' BL BR2 BL'\nAlg B BL2 L2' BL2' B'\nAlg DR' R2 F R2' DR\nAlg BR2 U F' U2' BR2'\nAlg BR2 U BR2' U2' BL'\nAlg BR2 U2 F U' BR2'\nAlg BR2 U2 BR2' L F2'\nAlg B' BR B\nAlg B' BR2 B\nAlg B' BR2' B\nAlg B' BR' B\nAlg B' BR2 B U\nAlg B' BR2 B U2\nAlg B' BR2 B U2'\nAlg B' BR2 B U'\nAlg B' BR2' B BL\nAlg B' BR2' B BL2\nAlg B' BR2' B BL2'\nAlg B' BR2' B BL'\nAlg B' BR' B BL\nAlg B' BR' B BL2'\nAlg B' BR' B BL'\nAlg B' BR2 U2' L B\nAlg B' BR2 U2' L2 B\nAlg B' BR2 U2' L2' B\nAlg B' BR2 B U2 F\nAlg B' BR2 B U2 F2\nAlg B' BR2 B U2 F2'\nAlg B' BR2 B U2 F'\nAlg B' BR2' B BL U\nAlg B' BR2' B BL U2\nAlg B' BR2' B BL U2'\nAlg B' BR2' B BL U'\nAlg B' BR' B BL2' L2'\nAlg B' BR' B BL2' L'\nAlg BR2 R U R' BR2'\nAlg B' BR2 U2' L B F2'\nAlg B' BR2 U2' L B F'\nAlg B' BR' B BR2 BL BR2'\nAlg B' BR2 U R BR' R' B\nAlg BR U BR'\nAlg BR U2 BR'\nAlg BR U2' BR'\nAlg BR U' BR'\nAlg BR2 BL BR2'\nAlg BR2 BL2 BR2'\nAlg BR2 BL2' BR2'\nAlg BR2 BL' BR2'\nAlg R2' F R2\nAlg R2' F2 R2\nAlg R2' F2' R2\nAlg R' U R\nAlg R' U2 R\nAlg R' U' R\nAlg BR U BR' U'\nAlg BR U2 BR' F\nAlg BR U2' BR' L\nAlg BR U2' BR' L2\nAlg BR U2' BR' L2'\nAlg BR U' BL BR'\nAlg BR U' BL2 BR'\nAlg BR U' BL2' BR'\nAlg BR U' BR' BL'\nAlg BR2 BL BR2' U2\nAlg BR2 BL BR2' BL'\nAlg R2' F2' R2 L\nAlg R2' F2' R2 L2\nAlg R' U F2 R\nAlg R' U F2' R\nAlg R' U R F\nAlg BR U' BR BL' BR2'\nAlg BR U F U' BR'\nAlg BR U F2 U' BR'\nAlg BR U F2' U' BR'\nAlg BR U F' U' BR'\nAlg BR U2 L U2' BR'\nAlg BR U2 L2 U2' BR'\nAlg BR U2 L2' U2' BR'\nAlg BR U2' BL U2 BR'\nAlg BR U2' BL2 U2 BR'\nAlg BR U2' BL2' U2 BR'\nAlg BR R' F R BR'\nAlg BR R' F2 R BR'\nAlg BR R' F' R BR'\nAlg BR2 U2' F U2 BR2'\nAlg BR2 U2' F2 U2 BR2'\nAlg BR2 U' L2 U BR2'\nAlg BR2 U' L2' U BR2'\nAlg BR2 BL L BL' BR2'\nAlg BR2 BL L' BL' BR2'\nAlg BR2' BL2' L BL2 BR2\nAlg BR2' BL2' L2 BL2 BR2\nAlg R2 F2 L F2' R2'\nAlg R2 F2 L2 F2' R2'\nAlg R2 F2 L2' F2' R2'\nAlg R2' U2 BL2' U2' R2\nAlg R' U2 F U2' R\nAlg R' U2 F2 U2' R\nAlg R' U' BL' U R\nAlg R' BR BL' BR' R\nAlg BR U F' U' BR' U'\nAlg BR U2 L' BL2 U2' BR'\nAlg BR U2' BL U2 BL2' BR'\nAlg BR U2' BL2' U2 BR' BL'\nAlg BR R' F R BR' U'\nAlg BR2 U' L2 U BR2' F2'\nAlg BR2 U' L2 U BR2' F'\nAlg BR U F2' U L' U2' BR'\nAlg BR U F2' L' F U' BR'\nAlg F\nAlg F2\nAlg F2'\nAlg F'\nAlg F L\nAlg F L2\nAlg F L2'\nAlg F L'\nAlg F2 U\nAlg F2 U2\nAlg F2 U2'\nAlg F2 U'\nAlg F L2' BL\nAlg F L2' BL2\nAlg F L2' BL2'\nAlg F L' U\nAlg F L' U2\nAlg F L' U2'\nAlg F L' U'\nAlg F2 U L\nAlg F2 U L2\nAlg F2 U L2'\nAlg F2 U L'\nAlg F L' U BL2\nAlg F L' U BL2'\nAlg F L' U BL'\nAlg F L' U' F\nAlg F L' U' F2\nAlg F L' U' F2'\nAlg F2 L F2'\nAlg F2 L2 F2'\nAlg F2 L2' F2'\nAlg F2 L' F2'\nAlg F2' U2 F2\nAlg F2' U2' F2\nAlg F2' U' F2\nAlg F2 L2 F2' L2'\nAlg F2 L2 F2' L'\nAlg F2 L2' BL F2'\nAlg F2 L2' BL2 F2'\nAlg F2 L2' BL2' F2'\nAlg F2 L' F2' U\nAlg F2 L' F2' U2\nAlg F2 L' F2' U2'\nAlg F2 L' F2' U'\nAlg F2 L' BL F2'\nAlg F2 L' BL2 F2'\nAlg F2 L' BL2' F2'\nAlg F2' U L F2\nAlg F2' U L2 F2\nAlg F2' U L' F2\nAlg F2' U2 F2 U2'\nAlg F2' U2 F2 U'\nAlg F2' U2 F2 L2\nAlg F2' U2 F2 L2'\nAlg F2' U2 F2 L'\nAlg F2' U2 L F2\nAlg F' R' F R\nAlg F L2 BL L2' F'\nAlg F L2 BL2 L2' F'\nAlg F2 L2 F2' L2' U2'\nAlg F2 L2' BL' L F2'\nAlg F2 L' F U2' F2\nAlg F2 L' F' U' F'\nAlg FL F FL'\nAlg FL F2 FL'\nAlg FL F2' FL'\nAlg FL F' FL'\nAlg FL F FL' L\nAlg FL F FL' L2\nAlg FL F FL' L2'\nAlg FL F FL' L'\nAlg FL F2 FL' L\nAlg FL F2 FL' L2\nAlg FL F2 FL' L2'\nAlg FL F2 FL' L'\nAlg FL F2' FL' U2\nAlg FL F2' FL' U2'\nAlg FL F2' FL' U'\nAlg F2 U2 L' U2' F2'\nAlg F2 U2' L' U2 F2'\nAlg F2 U' L' U F2'\nAlg FL F FL' L2 BL\nAlg FL F FL' L2 BL2\nAlg FL F FL' L2 BL2'\nAlg FL F2 FL' L2' BL\nAlg FL F2 FL' L2' BL2\nAlg FL F2 FL' L2' BL2'\nAlg FL F2 FL' L' U'\nAlg FL F FL' F2' L' F2\nAlg F2 U F U L U2' F2'\nAlg F2' L F2\nAlg F2' L2 F2\nAlg F2' L2' F2\nAlg F2' L' F2\nAlg F' U F\nAlg F' U2 F\nAlg F' U2' F\nAlg F' U' F\nAlg R U R'\nAlg R U2' R'\nAlg R U' R'\nAlg F R' F' R\nAlg F2' L F2 L'\nAlg F2' L2' BL F2\nAlg F2' L2' BL2 F2\nAlg F2' L2' BL2' F2\nAlg F' U F U'\nAlg F' U F L\nAlg F' U F L2\nAlg F' U F L2'\nAlg F' U F L'\nAlg R U2' R' BL2\nAlg R U2' R' BL2'\nAlg R U2' R' BL'\nAlg F2' L' F U' F\nAlg F2 L2 BL L2' F2'\nAlg F2 L2 BL2 L2' F2'\nAlg F2 L2 BL2' L2' F2'\nAlg F2 L2 BL' L2' F2'\nAlg F2' U BL U' F2\nAlg F2' U BL' U' F2\nAlg F2' L' BL L F2\nAlg F2' L' BL2 L F2\nAlg F2' L' BL2' L F2\nAlg F2' L' BL' L F2\nAlg F' U2 L U2' F\nAlg F' U2 L2 U2' F\nAlg F' U2 L2' U2' F\nAlg F' U2' BL2 U2 F\nAlg R U L U' R'\nAlg R U L' U' R'\nAlg R F' L F R'\nAlg R2 U2' L2 U2 R2'\nAlg R2 U' BL2 U R2'\nAlg R2 U' BL2' U R2'\nAlg R2 U' BL' U R2'\nAlg R2 BR BL' BR' R2'\nAlg F2 L2 BL2' L2' F2' U2\nAlg F2' U BL U' F2 L\nAlg F2' U BL' U' F2 L2\nAlg F2' U BL' U' F2 L2'\nAlg F2' L' BL L F2 U2\nAlg F2' L' BL L F2 U2'\nAlg F2' L' BL' L F2 U\nAlg F2' L' BL' L F2 U2\nAlg F' U2 L' U BL2' U2 F\nAlg F' U2' BL L' BL2' U2 F\nAlg U\nAlg U2\nAlg U2'\nAlg U'\nAlg U L\nAlg U L2\nAlg U L2'\nAlg U L'\nAlg U2 BL\nAlg U2 BL2\nAlg U2 BL2'\nAlg U2 BL'\nAlg U L' BL\nAlg U L' BL2\nAlg U L' BL2'\nAlg U L' BL'\nAlg U2 BL L\nAlg U2 BL L2\nAlg U2 BL L2'\nAlg U2 BL L'\nAlg U F' L F\nAlg U L' BL' U\nAlg U L' BL' U2\nAlg U2 L U2'\nAlg U2 L2 U2'\nAlg U2 L2' U2'\nAlg U2 L' U2'\nAlg U2' BL2 U2\nAlg U2' BL2' U2\nAlg U2' BL' U2\nAlg U2 L2 U2' L2'\nAlg U2 L2 U2' L'\nAlg U2 L' U2' BL\nAlg U2 L' U2' BL2\nAlg U2 L' U2' BL2'\nAlg U2 L' U2' BL'\nAlg U2' BL L U2\nAlg U2' BL L2 U2\nAlg U2' BL L2' U2\nAlg U2' BL L' U2\nAlg U2' BL2 U2 L2\nAlg U2' BL2 U2 L2'\nAlg U2' BL2 U2 L'\nAlg U2' BL2 U2 BL2'\nAlg U2' BL2 U2 BL'\nAlg U2' BL2 L U2\nAlg U' BR' U BR\nAlg U2 L' U BL2' U2\nAlg U2 L2' U2' L2 BL2\nAlg U2 L2' U2' L2 BL2'\nAlg U2 L' U' BL' U'\nAlg U2' BL2 U' L U2'\nAlg F U F'\nAlg F U2 F'\nAlg F U2' F'\nAlg F U' F'\nAlg F U F' L\nAlg F U F' L2\nAlg F U F' L2'\nAlg F U F' L'\nAlg F U2 F' L\nAlg F U2 F' L2\nAlg F U2 F' L2'\nAlg F U2 F' L'\nAlg F U2' BL2 F'\nAlg F U2' BL2' F'\nAlg F U2' BL' F'\nAlg U2 BL2 L' BL2' U2'\nAlg U2 BL' L' BL U2'\nAlg U2 BL2' L' BL2 U2'\nAlg F U2 F' L' BL'\nAlg F U F' U2' L' U2\nAlg U2 L U2 L2' U' BL' U2\nAlg U2' L U2\nAlg U2' L2 U2\nAlg U2' L2' U2\nAlg U2' L' U2\nAlg U' BL U\nAlg U' BL2 U\nAlg U' BL2' U\nAlg U' BL' U\nAlg BR BL BR'\nAlg BR BL2' BR'\nAlg BR BL' BR'\nAlg U BR' U' BR\nAlg U2' L U2 L'\nAlg U' BL U L\nAlg U' BL U L2\nAlg U' BL U L2'\nAlg U' BL U L'\nAlg U' BL U BL'\nAlg U2' L' U BL' U\nAlg U' BL2 L BL2' U\nAlg U' BL2 L2 BL2' U\nAlg U' BL2 L2' BL2' U\nAlg U' BL2 L' BL2' U\nAlg BR U' L U BR'\nAlg BR U' L2 U BR'\nAlg BR U' L2' U BR'\nAlg BR U' L' U BR'\nAlg BR BL L BL' BR'\nAlg BR BL L' BL' BR'\nAlg BR2 BL2' L BL2 BR2'\nAlg BR2 BL2' L2 BL2 BR2'\nAlg U2' L BL2' L' BL2 U2\nAlg U2' L2 F' L2' F U2\nAlg U2' L' DL L DL' U2\nAlg U2' BL2' L BL2 L' U2\nAlg U2' BL2' L2 BL2 L2' U2\nAlg U' BL2 L BL2' U BL\nAlg U' BL2 L2 BL2' U L\nAlg U' BL2 L2 BL2' U BL2'\nAlg U' BL2 L2 BL2' U BL'\nAlg U' BL2 L2 BL2' L2' U\nAlg BR BL L' BL' BR' BL2'\nAlg BR BL L' BL' BR' BL'\nAlg U' BL U BL U' L2' BL2' U\nAlg U' BL2 U' L2 U L' BL2' U\nAlg L\nAlg L2\nAlg L2'\nAlg L'\nAlg L' BL\nAlg L' BL2\nAlg L' BL2'\nAlg L' BL'\nAlg U BL U'\nAlg U BL2 U'\nAlg U BL2' U'\nAlg U BL' U'\nAlg U BL U' L\nAlg U BL U' L2\nAlg U BL U' L2'\nAlg U BL U' L'\nAlg U BL U' BL'\nAlg L2' BL L2\nAlg L2' BL2 L2\nAlg L2' BL2' L2\nAlg L2' BL' L2\nAlg L2 DL L2' DL'\nAlg L2' BL L2 BL2'\nAlg L2' BL L2 BL'\nAlg F' L2 BL L2' F\nAlg F' L2 BL2 L2' F\nAlg F' L2 BL2' L2' F\nAlg F' L2 BL' L2' F\nAlg L2 DL L' DL' L'\nAlg L2' U BL2' U' L2\nAlg L2' BL L2' BL2' L'\nAlg L2' BL L' BL2' L2'\nAlg L2' DL L' DL' L2\nAlg L' U' L' U L2\nAlg U L' DL L DL' U'\nAlg F' L2 BL L2' BL2' F\nAlg L2 DL' BL DL2 L2' DL'\nAlg L2' U BL2' U' BL L2\nAlg L2' BL' U BL' U' L2\nAlg L2' BL' L2 U' L' U\nAlg U' L U\nAlg U' L2 U\nAlg U' L2' U\nAlg U' L' U\nAlg U' L2' U BL\nAlg U' L2' U BL2\nAlg U' L2' U BL2'\nAlg U' L2' U BL'\nAlg U' L' U BL\nAlg U' L' U BL2\nAlg U' L' U BL2'\nAlg U' L' U BL'\nAlg U' L' U L BL L'\nAlg U' L' U L2 BL L2'\nAlg U' L' U BL U' L2 U\nAlg L2 BL L2'\nAlg L2 BL2 L2'\nAlg L2 BL2' L2'\nAlg L2 BL' L2'\nAlg L2 BL L2' BL'\nAlg L DL L' DL'\nAlg DL L DL' L'\nAlg L U' L2 U L2\nAlg L DL' BL DL L'\nAlg L DL' BL2 DL L'\nAlg L DL' BL' DL L'\nAlg DL L DL' L' BL'\nAlg L2 BL L' DL L' DL'\nAlg FL' L BL L' FL\nAlg FL' L BL2 L' FL\nAlg FL' L BL2' L' FL\nAlg FL' L BL' L' FL\nAlg FL' DL' BL DL FL\nAlg FL' DL' BL2 DL FL\nAlg FL' DL' BL2' DL FL\nAlg FL' DL' BL' DL FL\nAlg L2 BL2' U BL2 U' L2'\nAlg FL' L BL L' FL BL2'\nAlg FL' L BL' L' FL BL\nAlg U' F U BL U' F' U\nAlg U' F U BL2 U' F' U\nAlg U' F U BL2' U' F' U\nAlg F' FL2' DL' BL' DL FL2 F\nAlg L2' BL2 L2' BL' L2 BL' L2\nAlg DL L DL2' BL' DL2 L' DL'\nAlg DL2 FL2' DL2 BL' DL2' FL2 DL2'\nAlg FL' L U BL2' U' BL L' FL\nAlg FL' L2 U' L' U BL2 L' FL\nAlg L BL L'\nAlg L BL2 L'\nAlg L BL2' L'\nAlg L BL' L'\nAlg DL' BL DL\nAlg DL' BL2 DL\nAlg DL' BL2' DL\nAlg DL' BL' DL\nAlg L BL L' BL'\nAlg L' DL L DL'\nAlg L BL2 L' DL' BL' DL\nAlg L U BL2' U' BL2 L'\nAlg L BL2' U BL2 U' L'\nAlg DL' B' BL2 B BL2' DL\nAlg DL' BL2 B' BL2' B DL\nAlg U BL2' DL2' BL2 U' BL2' DL2\nAlg B' BL2 L2 BL2' B BL2 L2'\nAlg L U BL2' U' BL2 L' BL2'\nAlg L U BL2' U' BL2 L' BL'\nAlg L BL B BL' L' BL B'\nAlg L BL2' U BL2 U' L' BL2\nAlg L BL' U BL2 U' BL L'\nAlg L BL' U BL2' U' BL L'\nAlg L BL' U BL' U' BL L'\nAlg L2 BL2 L2' BL' L2 BL' L2'\nAlg DL' BL B' BL2' B BL' DL\nAlg L BL2' L U2 BR' U' BR U' L2'\nAlg L BL2' L BL L' BL L BL2' L2'\nAlg BL\nAlg BL2\nAlg BL2'\nAlg BL'\nAlg U BR BL2 BR' BL2' U'\nAlg B BL DL BL' DL' B'\nAlg L' BL2' DL' BL2 DL L\nAlg BR B BL B' BL' BR'\nAlg U BR BL2 BR' BL2' U' BL2\nAlg U BL BR BL' BR' U'\nAlg U BR BL BR' BL' U'\nAlg U' L' BL2' L BL2 U\nAlg B' BR' BL2' BR BL2 B\nAlg L BL2 U BL2' U' L'\nAlg BR B BL2 B' BL2' BR'\nAlg U BL2 U' BL' U BL' U'\nAlg B BL DL BL DL' BL2' B'\nAlg B BL2 DL BL' DL' BL' B'\nAlg B' BL' B BL2' B' BL2' B\nAlg U BL U' BL2 U BL2 U' BL2\nAlg U BR2 B' BR2' U' BR B BR'\nAlg BL2 BR B DL' B DL B2' BR'\nAlg B BL2' B2' BR B BR' B BL2 B'\nAlg U' BL' L' BL L U BL\nAlg B' BL2 B BL B' BL2 B\nAlg B' BL2' B BL' B' BL2' B\nAlg B' BL' BR' BL' BR BL2 B\nAlg B' BL2' BR' BL BR BL B\nAlg U' BL' L' BL' L BL2 U BL'\nAlg L' BL' L' DL L DL' BL L BL\nAlg L U BL U' BL' L'\nAlg L BL U BL' U' L'\nAlg BR' U' BL' U BL BR\nAlg L U2 BR' U' BR U' L'\nAlg U BL U2' L U L2' BL L BL2'\nAlg U' L2 F' L' F2 U' F' U2 L'\nAlg U BR' U' L U BR U' L'\nAlg U BR B BR' U' BR B' BR'\nAlg U' L U BR' U' L' U BR\nAlg B DL' B' BR B DL B' BR'\nAlg L' DL' B DL L DL' B' DL\nAlg BR B BR' U BR B' BR' U'\nAlg BR B DL' B' BR' B DL B'\nAlg U BR2' U2 L2 U2' BR2 U2 L2' U2\nAlg U2' L2 U2' BR2' U2 L2' U2' BR2 U'\nAlg U BL' B' BL U' L U2 BL' B BL U2' L'\nAlg U BR' U' L F' L2' U BR U' L2 F L'\nAlg U BR U' L U BR' U' L'\nAlg U' BL2 B BL2' U BL2 B' BL2'\nAlg L U BR U' L' U BR' U'\nAlg L BL2' B' BL2 L' BL2' B BL2\nAlg U BR' U2 L2 U2' BR U2 L2' U2\nAlg L' BL2 L2' F' L2 BL2' L2' F L2'\nAlg U BL2' U R U' BL2 U' L U2 R' U2' L'\nAlg U BR U' L2 F L' U BR' U' L F' L2'\nAlg U L' BL2 L' FL' L BL2' L U' L2' FL L2\nAlg U BR2' U R' U2' L U2 R U' BR2 U' L'`)}var Mm,Gm,na=U(()=>{Ve();oo();un();Mm=null;Gm=null});var fg={};Ue(fg,{sgsDataPyraminx:()=>ug,sgsDataPyraminxFixedOrientation:()=>oa});async function ug(){return Om??(Om=_m())}async function oa(){return{ordering:(await ug()).ordering.slice(2)}}async function _m(){return zt(await he.pyraminx.kpuzzle(),`SubgroupSizes 12 9 12 3 10 3 8 6 2 3 3 3 3\n\nAlg B\nAlg B'\nAlg y\nAlg B y\nAlg B' y\nAlg y'\nAlg B y'\nAlg B' y'\nAlg BR'\nAlg B BR'\nAlg B' BR'\n\nAlg L\nAlg L'\nAlg L F\nAlg L' F\nAlg F\nAlg L F'\nAlg L' F'\nAlg F'\n\nAlg L B' U L' B\nAlg L U L'\nAlg L U' L'\nAlg L U L' U'\nAlg B' U B\nAlg B' U' B\nAlg B' U' B U\nAlg L U' L' R\nAlg L U' L' R'\nAlg L' R' L\nAlg L' R' L R\n\nAlg R\nAlg R'\n\nAlg R' U R\nAlg R' U' R\nAlg R' U R U'\nAlg B U B'\nAlg B U' B'\nAlg R B' R' B\nAlg L R L' R U' R\nAlg R L R' L'\nAlg L' R' U R L\n\nAlg U\nAlg U'\n\nAlg R U R' U'\nAlg U R U' R'\nAlg L' U' L U\nAlg U' L' U L\nAlg U L R' L' R U'\nAlg U' R' L R L' U\nAlg L' U' L U' R U' R'\n\nAlg R U' R' U\nAlg L' U L U'\nAlg U' R U R'\nAlg U L' U' L\nAlg L R' L' R L' U L U'\n\nAlg L' U L U' L R' L' R\n\nAlg b\nAlg b'\n\nAlg l\nAlg l'\n\nAlg r\nAlg r'\n\nAlg u\nAlg u'`)}var Om,la=U(()=>{Ot();un();Om=null});var mg={};Ue(mg,{sgsDataSkewb:()=>Bg,sgsDataSkewbFixedCorner:()=>sa,skewbKPuzzleWithoutMOCached:()=>fi});async function jm(){let t=ln(\"skewb\",{allMoves:!0,addRotations:!0});return new Ie(t.getKPuzzleDefinition(!0),{experimentalPGNotation:new br(t,t.getOrbitsDef(!0))})}async function fi(){return qm??(qm=jm())}async function Bg(){return Vm??(Vm=Hm())}async function sa(){return{ordering:(await Bg()).ordering.slice(1)}}async function Hm(){return zt(await fi(),`SubgroupSizes 24 6 5 12 9 3 4 9 3 3\n\nAlg y\nAlg y2\nAlg y'\nAlg F\nAlg F'\nAlg y U\nAlg y U'\nAlg y L\nAlg y L'\nAlg y F\nAlg y F'\nAlg y2 U\nAlg y2 U'\nAlg y2 B\nAlg y2 B'\nAlg y' U\nAlg y' F'\nAlg y U L'\nAlg y U B\nAlg y2 U B\nAlg y2 U B'\nAlg y2 U' B\nAlg y2 U' B'\n\nAlg U\nAlg U'\nAlg U L\nAlg U L'\nAlg U' R'\n\nAlg R\nAlg R'\nAlg R B\nAlg R' L'\n\nAlg U B' U\nAlg U' L U\nAlg U' L' U\nAlg U' B U'\nAlg R L R'\nAlg R B' R\nAlg U B L U'\nAlg U B' U B'\nAlg U B' L' U\nAlg U' L B U'\nAlg R' B L' R'\n\nAlg L\nAlg L'\nAlg L B\nAlg L B'\nAlg L B L\nAlg L B L'\nAlg L B' L\nAlg L B' L'\n\nAlg B\nAlg B'\n\nAlg L' B L\nAlg L' B' L\nAlg R' L' B L R\n\nAlg B L' B L B'\nAlg B L' B' L B'\nAlg U L U B U' L' U'\nAlg R L R' B' R L' R'\nAlg U B' R L R' B' U B\nAlg U' B U L U' B' U L'\nAlg L U' B U L' U' B' U\nAlg R B' U R B L U' B\n\nAlg U L U' B' U L' U' B\nAlg U' B L U L B' U' L'\n\nAlg U R' U' L B R' B' R\nAlg R' U' R U B' U' B L`)}var qm,Vm,aa=U(()=>{Ve();oo();un();qm=null;Vm=null});var bg={};Ue(bg,{getRandomSquare1ScrambleString:()=>Ac});function $m(t,e){t.ul=e.ul,t.ur=e.ur,t.dl=e.dl,t.dr=e.dr,t.ml=e.ml}function Rg(t,e){var r;e<<=2,e>24?(e=48-e,r=t.ul,t.ul=(~~t.ul>>e|t.ur<<24-e)&16777215,t.ur=(~~t.ur>>e|r<<24-e)&16777215):e>0?(r=t.ul,t.ul=(t.ul<<e|~~t.ur>>24-e)&16777215,t.ur=(t.ur<<e|~~r>>24-e)&16777215):e==0?(r=t.ur,t.ur=t.dl,t.dl=r,t.ml=1-t.ml):e>=-24?(e=-e,r=t.dl,t.dl=(t.dl<<e|~~t.dr>>24-e)&16777215,t.dr=(t.dr<<e|~~r>>24-e)&16777215):e<-24&&(e=48+e,r=t.dl,t.dl=(~~t.dl>>e|t.dr<<24-e)&16777215,t.dr=(~~t.dr>>e|r<<24-e)&16777215)}function ec(t){var e,r,n,o,l;for(n=0,t.arr[0]=Pt(t,0),o=1;o<24;++o)Pt(t,o)!=t.arr[n]&&(t.arr[++n]=Pt(t,o));for(l=0,e=0;e<16;++e)for(r=e+1;r<16;++r)t.arr[e]>t.arr[r]&&(l^=1);return l}function tc(t){var e,r,n,o;return o=t.ur&1118481,o|=~~o>>3,o|=~~o>>6,o=o&15|~~o>>12&48,n=t.ul&1118481,n|=~~n>>3,n|=~~n>>6,n=n&15|~~n>>12&48,r=t.dr&1118481,r|=~~r>>3,r|=~~r>>6,r=r&15|~~r>>12&48,e=t.dl&1118481,e|=~~e>>3,e|=~~e>>6,e=e&15|~~e>>12&48,Eo(ec(t)<<24|n<<18|o<<12|e<<6|r)}function rc(t,e){var r,n;for(r=0;r<8;++r)t.prm[r]=~~(~~Pt(t,r*3+1)>>1<<24)>>24;for(e.cornperm=Po(t.prm),e.topEdgeFirst=Pt(t,0)==Pt(t,1),r=e.topEdgeFirst?2:0,n=0;n<4;r+=3,++n)t.prm[n]=~~(~~Pt(t,r)>>1<<24)>>24;for(e.botEdgeFirst=Pt(t,12)==Pt(t,13),r=e.botEdgeFirst?14:12;n<8;r+=3,++n)t.prm[n]=~~(~~Pt(t,r)>>1<<24)>>24;e.edgeperm=Po(t.prm),e.ml=t.ml}function Pt(t,e){var r;return e<6?r=~~t.ul>>(5-e<<2):e<12?r=~~t.ur>>(11-e<<2):e<18?r=~~t.dl>>(17-e<<2):r=~~t.dr>>(23-e<<2),~~((r&15)<<24)>>24}function fa(t,e,r){e<6?(t.ul&=~(15<<(5-e<<2)),t.ul|=r<<(5-e<<2)):e<12?(t.ur&=~(15<<(11-e<<2)),t.ur|=r<<(11-e<<2)):e<18?(t.dl&=~(15<<(17-e<<2)),t.dl|=r<<(17-e<<2)):(t.dr&=~(15<<(23-e<<2)),t.dr|=r<<(23-e<<2))}function ga(){this.arr=[],this.prm=[]}async function nc(){let t=await st();var e,r,n,o,l,i,s,u,a;for(e=new ga,n=Tn[t(3678)],l=19088743<<1|286331153,o=19088743<<1,s=i=8,r=0;r<24;r++)(n>>r&1)==0?(u=t(i)<<2,fa(e,23-r,o>>u&15),a=(1<<u)-1,o=(o&a)+(o>>4&~a),--i):(u=t(s)<<2,fa(e,23-r,l>>u&15),fa(e,22-r,l>>u&15),a=(1<<u)-1,l=(l&a)+(l>>4&~a),--s,++r);return e.ml=t(2),e}function oc(){}function lc(t){var e,r,n,o,l,i;for($m(t.Search_d,t.Search_c),n=0;n<t.Search_length1;++n)Rg(t.Search_d,t.Search_move[n]);for(rc(t.Search_d,t.Search_sq),r=t.Search_sq.edgeperm,e=t.Search_sq.cornperm,l=t.Search_sq.ml,i=Math.max(de[t.Search_sq.edgeperm<<1|l],de[t.Search_sq.cornperm<<1|l]),n=i;n<t.Search_maxlen2;++n)if(Li(t,r,e,t.Search_sq.topEdgeFirst,t.Search_sq.botEdgeFirst,l,n,t.Search_length1,0)){for(o=0;o<n;++o)Rg(t.Search_d,t.Search_move[t.Search_length1+o]);return t.Search_sol_string=ic(t,n+t.Search_length1),!0}return!1}function ic(t,e){for(var r=\"\",n=0,o=0,l=e-1;l>=0;l--){var i=t.Search_move[l];i>0?(i=12-i,n=i>6?i-12:i):i<0?(i=12+i,o=i>6?i-12:i):(n==0&&o==0?r+=\" / \":r+=\"(\"+n+\", \"+o+\") / \",n=o=0)}return(n!==0||o!==0)&&(r+=\"(\"+n+\", \"+o+\")\"),r}function gi(t,e,r,n,o,l){var i,s,u;if(r==0&&n<4)return n==0&&lc(t);if(l!=0&&(u=Bi[e],s=ke[u],s<n&&(t.Search_move[o]=0,gi(t,u,s,n-1,o+1,0))))return!0;if(u=e,l<=0){for(i=0;i+=zo[u],u=~~i>>4,i&=15,!(i>=12||(s=ke[u],s>n));)if(s<n&&(t.Search_move[o]=i,gi(t,u,s,n-1,o+1,1)))return!0}if(u=e,l<=1){for(i=0;i+=ko[u],u=~~i>>4,i&=15,!(i>=6||(s=ke[u],s>n));)if(s<n&&(t.Search_move[o]=-i,gi(t,u,s,n-1,o+1,2)))return!0}return!1}function Li(t,e,r,n,o,l,i,s,u){var a,f,g,L,B,p,m;if(i==0&&!n&&o||u!=0&&n==o&&(g=Mo[e],f=Mo[r],de[g<<1|1-l]<i&&de[f<<1|1-l]<i&&(t.Search_move[s]=0,Li(t,g,f,n,o,1-l,i-1,s+1,0))))return!0;if(u<=0)for(m=!n,g=m?Or[e]:e,f=m?r:Or[r],L=m?1:2,B=de[g<<1|l],p=de[f<<1|l];L<12&&B<=i&&B<=i;){if(B<i&&p<i&&(t.Search_move[s]=L,Li(t,g,f,m,o,l,i-1,s+1,1)))return!0;m=!m,m?(g=Or[g],B=de[g<<1|l],L+=1):(f=Or[f],p=de[f<<1|l],L+=2)}if(u<=1)for(a=!o,g=a?Ir[e]:e,f=a?r:Ir[r],L=a?1:2,B=de[g<<1|l],p=de[f<<1|l];L<(i>3?6:12)&&B<=i&&B<=i;){if(B<i&&p<i&&(t.Search_move[s]=-L,Li(t,g,f,n,a,l,i-1,s+1,2)))return!0;a=!a,a?(g=Ir[g],B=de[g<<1|l],L+=1):(f=Ir[f],p=de[f<<1|l],L+=2)}return!1}function sc(t,e){var r;for(t.Search_c=e,r=tc(e),t.Search_length1=ke[r];t.Search_length1<100&&(t.Search_maxlen2=Math.min(31-t.Search_length1,17),!gi(t,r,ke[r],t.Search_length1,0,-1));++t.Search_length1);return t.Search_sol_string}function Dg(){this.Search_move=[],this.Search_d=new ga,this.Search_sq=new hg}function ac(){}function uc(){dg||(dg=!0,Co=[0,3,6,12,15,24,27,30,48,51,54,60,63],Tn=[],ke=[],zo=[],ko=[],Bi=[],Lc())}function fc(t){var e,r;e=0,r=0;do(t.bottom&2048)==0?(e+=1,t.bottom=t.bottom<<1):(e+=2,t.bottom=t.bottom<<2^12291),r=1-r;while((_r(t.bottom&63)&1)!=0);return(_r(t.bottom)&2)==0&&(t.Shape_parity^=r),e}function La(t){var e;return e=Ug(Tn,t.top<<12|t.bottom)<<1|t.Shape_parity,e}function Ba(t,e){t.Shape_parity=e&1,t.top=Tn[~~e>>1],t.bottom=t.top&4095,t.top>>=12}function gc(t){var e,r;e=0,r=0;do(t.top&2048)==0?(e+=1,t.top=t.top<<1):(e+=2,t.top=t.top<<2^12291),r=1-r;while((_r(t.top&63)&1)!=0);return(_r(t.top)&2)==0&&(t.Shape_parity^=r),e}function Fg(){}function Eo(t){var e;return e=Ug(Tn,t&16777215)<<1|~~t>>24,e}function Lc(){var t,e,r,n,o,l,i,s,u,a,f,g,L,B,p,m;for(t=0,i=0;i<28561;++i)l=Co[i%13],r=Co[~~(i/13)%13],g=Co[~~(~~(i/13)/13)%13],f=Co[~~(~~(~~(i/13)/13)/13)],L=f<<18|g<<12|r<<6|l,_r(L)==16&&(Tn[t++]=L);for(a=new Fg,i=0;i<7356;++i)Ba(a,i),zo[i]=gc(a),zo[i]|=La(a)<<4,Ba(a,i),ko[i]=fc(a),ko[i]|=La(a)<<4,Ba(a,i),m=a.top&63,B=_r(m),p=_r(a.bottom&4032),a.Shape_parity^=1&~~(B&p)>>1,a.top=a.top&4032|~~a.bottom>>6&63,a.bottom=a.bottom&63|m<<6,Bi[i]=La(a);for(i=0;i<7536;++i)ke[i]=-1;for(ke[Eo(14378715)]=0,ke[Eo(31157686)]=0,ke[Eo(23967451)]=0,ke[Eo(7191990)]=0,n=4,o=0,e=-1;n!=o;)for(o=n,++e,i=0;i<7536;++i)if(ke[i]==e){u=0,s=i;do s=zo[s],u+=s&15,s>>=4,ke[s]==-1&&(++n,ke[s]=e+1);while(u!=12);u=0,s=i;do s=ko[s],u+=s&15,s>>=4,ke[s]==-1&&(++n,ke[s]=e+1);while(u!=12);s=Bi[i],ke[s]==-1&&(++n,ke[s]=e+1)}}function Bc(){}function mc(){if(!Ag){Ag=!0,de=[],Mo=[],Or=[],Ir=[],yg=[1,1,2,6,24,120,720,5040],Nr=[];for(var t=0;t<12;++t)Nr[t]=[];cc()}}function hg(){}function Po(t){var e,r,n,o;for(r=0,o=1985229328,e=0;e<7;++e)n=t[e]<<2,r=(8-e)*r+(~~o>>n&7),o-=286331152<<n;return r&65535}function cc(){var t,e,r,n,o,l,i,s,u,a,f,g,L;for(o=0;o<12;++o)for(Nr[o][0]=1,Nr[o][o]=1,u=1;u<o;++u)Nr[o][u]=Nr[o-1][u-1]+Nr[o-1][u];for(g=[],o=0;o<40320;++o)ma(g,o),L=g[2],g[2]=g[4],g[4]=L,L=g[3],g[3]=g[5],g[5]=L,Mo[o]=Po(g),ma(g,o),L=g[0],g[0]=g[1],g[1]=g[2],g[2]=g[3],g[3]=L,Or[o]=Po(g),ma(g,o),L=g[4],g[4]=g[5],g[5]=g[6],g[6]=g[7],g[7]=L,Ir[o]=Po(g);for(o=0;o<80640;++o)de[o]=-1;for(de[0]=0,e=0,r=1;r<80640;){s=e>=11,n=s?-1:e,t=s?e:-1,++e;e:for(o=0;o<80640;++o)if(de[o]==n){if(l=~~o>>1,f=o&1,i=Mo[l]<<1|1-f,de[i]==t&&(++r,de[s?o:i]=~~(e<<24)>>24,s))continue e;for(i=l,a=0;a<4;++a)if(i=Or[i],de[i<<1|f]==t&&(++r,de[s?o:i<<1|f]=~~(e<<24)>>24,s))continue e;for(a=0;a<4;++a)if(i=Ir[i],de[i<<1|f]==t&&(++r,de[s?o:i<<1|f]=~~(e<<24)>>24,s))continue e}}}function ma(t,e){var r,n,o,l,i;for(i=1985229328,r=0;r<7;++r)o=yg[7-r],l=~~(e/o),e-=l*o,l<<=2,t[r]=~~((~~i>>l&7)<<24)>>24,n=(1<<l)-1,i=(i&n)+(~~i>>4&~n);t[7]=~~(i<<24)>>24}function pc(){}function _r(t){return t-=~~t>>1&1431655765,t=(~~t>>2&858993459)+(t&858993459),t=(~~t>>4)+t&252645135,t+=~~t>>8,t+=~~t>>16,t&63}function Ug(t,e){var r,n,o,l;for(n=0,r=t.length-1;n<=r;)if(o=n+(~~(r-n)>>1),l=t[o],l<e)n=o+1;else if(l>e)r=o-1;else return o;return-n-1}async function Ac(){return(await Fc()).scramble_string}var Se,dg,ko,Tn,ke,zo,Bi,Co,Ag,Ir,Nr,de,Or,Mo,yg,ca,Rc,Dc,dc,Fc,Sg=U(()=>{rr();Se=ga.prototype=oc.prototype;Se.dl=10062778;Se.dr=14536702;Se.ml=0;Se.ul=70195;Se.ur=4544119;Se=Dg.prototype=ac.prototype;Se.Search_c=null;Se.Search_length1=0;Se.Search_maxlen2=0;Se.Search_sol_string=null;dg=!1;Se=Fg.prototype=Bc.prototype;Se.bottom=0;Se.Shape_parity=0;Se.top=0;Ag=!1;Se=hg.prototype=pc.prototype;Se.botEdgeFirst=!1;Se.cornperm=0;Se.edgeperm=0;Se.ml=0;Se.topEdgeFirst=!1;ca=!1,Rc=function(t,e,r){ca||(uc(),mc()),r&&r(\"Done initializing Square-1.\"),ca=!0,t!=null&&t()},Dc=async function(){return ca||Rc(),nc()},dc=function(t){var e=new Dg;return sc(e,t)},Fc=async function(){var t=await Dc(),e=dc(t);return{state:t,scramble_string:e}}});var Fa=Symbol(\"Comlink.proxy\"),Ng=Symbol(\"Comlink.endpoint\"),Og=Symbol(\"Comlink.releaseProxy\"),pi=Symbol(\"Comlink.thrown\"),Aa=t=>typeof t==\"object\"&&t!==null||typeof t==\"function\",_g={canHandle:t=>Aa(t)&&t[Fa],serialize(t){let{port1:e,port2:r}=new MessageChannel;return In(t,e),[r,[r]]},deserialize(t){return t.start(),Qg(t)}},Kg={canHandle:t=>Aa(t)&&pi in t,serialize({value:t}){let e;return t instanceof Error?e={isError:!0,value:{message:t.message,name:t.name,stack:t.stack}}:e={isError:!1,value:t},[e,[]]},deserialize(t){throw t.isError?Object.assign(new Error(t.value.message),t.value):t.value}},ha=new Map([[\"proxy\",_g],[\"throw\",Kg]]);function In(t,e=self){e.addEventListener(\"message\",function r(n){if(!n||!n.data)return;let{id:o,type:l,path:i}=Object.assign({path:[]},n.data),s=(n.data.argumentList||[]).map(Rr),u;try{let a=i.slice(0,-1).reduce((g,L)=>g[L],t),f=i.reduce((g,L)=>g[L],t);switch(l){case\"GET\":u=f;break;case\"SET\":a[i.slice(-1)[0]]=Rr(n.data.value),u=!0;break;case\"APPLY\":u=f.apply(a,s);break;case\"CONSTRUCT\":{let g=new f(...s);u=Vg(g)}break;case\"ENDPOINT\":{let{port1:g,port2:L}=new MessageChannel;In(t,L),u=qg(g,[g])}break;case\"RELEASE\":u=void 0;break;default:return}}catch(a){u={value:a,[pi]:0}}Promise.resolve(u).catch(a=>({value:a,[pi]:0})).then(a=>{let[f,g]=Di(a);e.postMessage(Object.assign(Object.assign({},f),{id:o}),g),l===\"RELEASE\"&&(e.removeEventListener(\"message\",r),ya(e))})}),e.start&&e.start()}function Wg(t){return t.constructor.name===\"MessagePort\"}function ya(t){Wg(t)&&t.close()}function Qg(t,e){return Ri(t,[],e)}function To(t){if(t)throw new Error(\"Proxy has been released and is not useable\")}function Ri(t,e=[],r=function(){}){let n=!1,o=new Proxy(r,{get(l,i){if(To(n),i===Og)return()=>Kr(t,{type:\"RELEASE\",path:e.map(s=>s.toString())}).then(()=>{ya(t),n=!0});if(i===\"then\"){if(e.length===0)return{then:()=>o};let s=Kr(t,{type:\"GET\",path:e.map(u=>u.toString())}).then(Rr);return s.then.bind(s)}return Ri(t,[...e,i])},set(l,i,s){To(n);let[u,a]=Di(s);return Kr(t,{type:\"SET\",path:[...e,i].map(f=>f.toString()),value:u},a).then(Rr)},apply(l,i,s){To(n);let u=e[e.length-1];if(u===Ng)return Kr(t,{type:\"ENDPOINT\"}).then(Rr);if(u===\"bind\")return Ri(t,e.slice(0,-1));let[a,f]=Ua(s);return Kr(t,{type:\"APPLY\",path:e.map(g=>g.toString()),argumentList:a},f).then(Rr)},construct(l,i){To(n);let[s,u]=Ua(i);return Kr(t,{type:\"CONSTRUCT\",path:e.map(a=>a.toString()),argumentList:s},u).then(Rr)}});return o}function jg(t){return Array.prototype.concat.apply([],t)}function Ua(t){let e=t.map(Di);return[e.map(r=>r[0]),jg(e.map(r=>r[1]))]}var ba=new WeakMap;function qg(t,e){return ba.set(t,e),t}function Vg(t){return Object.assign(t,{[Fa]:!0})}function Di(t){for(let[e,r]of ha)if(r.canHandle(t)){let[n,o]=r.serialize(t);return[{type:\"HANDLER\",name:e,value:n},o]}return[{type:\"RAW\",value:t},ba.get(t)||[]]}function Rr(t){switch(t.type){case\"HANDLER\":return ha.get(t.name).deserialize(t.value);case\"RAW\":return t.value}}function Kr(t,e,r){return new Promise(n=>{let o=Hg();t.addEventListener(\"message\",function l(i){!i.data||!i.data.id||i.data.id!==o||(t.removeEventListener(\"message\",l),n(i.data))}),t.start&&t.start(),t.postMessage(Object.assign({id:o},e),r)})}function Hg(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join(\"-\")}var Jg=typeof globalThis.Worker==\"undefined\"&&typeof globalThis.WorkerNavigator==\"undefined\";function Ea(t){Jg?(async()=>{let{port:e}=await Promise.resolve().then(()=>(va(),wa));In(t,await e())})():In(t)}Ve();Ot();_t();Ve();Ot();rr();_t();Ae();Ae();var ts=class extends Yr{constructor(e){super();this.metric=e}traverseAlg(e){let r=0;for(let n of e.units())r+=this.traverseUnit(n);return r}traverseGrouping(e){let r=e.alg;return this.traverseAlg(r)*Math.abs(e.amount)}traverseMove(e){return this.metric(e)}traverseCommutator(e){return 2*(this.traverseAlg(e.A)+this.traverseAlg(e.B))}traverseConjugate(e){return 2*this.traverseAlg(e.A)+this.traverseAlg(e.B)}traversePause(e){return 0}traverseNewline(e){return 0}traverseLineComment(e){return 0}};function M2(t){return\"A\"<=t&&t<=\"Z\"}function Y1(t){let e=t.family;return M2(e[0])&&e[e.length-1]===\"v\"||e===\"x\"||e===\"y\"||e===\"z\"||e===\"T\"?0:1}function Z1(t){let e=t.family;return M2(e[0])&&e[e.length-1]===\"v\"||e===\"x\"||e===\"y\"||e===\"z\"||e===\"T\"?0:Math.abs(t.amount)}var G2=new ts(Y1),rs=G2.traverseAlg.bind(G2),T2=new ts(Z1),X1=T2.traverseAlg.bind(T2);Ae();var I2=class extends Yr{traverseAlg(e){let r=0;for(let n of e.units())r+=this.traverseUnit(n);return r}traverseGrouping(e){return this.traverseAlg(e.alg)*Math.abs(e.amount)}traverseMove(e){return 1}traverseCommutator(e){return 2*(this.traverseAlg(e.A)+this.traverseAlg(e.B))}traverseConjugate(e){return 2*this.traverseAlg(e.A)+this.traverseAlg(e.B)}traversePause(e){return 1}traverseNewline(e){return 0}traverseLineComment(e){return 0}},N2=new I2,J1=N2.traverseAlg.bind(N2);rr();var $1=2,eL=!0,tL=!1;function rL(t,e){let r=[];return e.forEach(function(n){let o=new c(n);if(o.amount!==1)throw new Error(\"SGS cannot handle def moves with an amount other than 1 yet.\");let l=t.identityTransformation();for(let i=1;l=l.applyMove(o),!l.isIdentityTransformation();i++)r.push({move:o.modified({amount:i}),transformation:l})}),r}var Ft=class{constructor(e,r,n){this.kpuzzle=e;this.sgs=r;this.searchMoves=rL(this.kpuzzle,n??Object.keys(this.kpuzzle.definition.moves))}async solve(e,r=$1,n){let o=e.experimentalToTransformation();if(!o)throw new Error(\"distinguishable pieces are not supported in tremble solver yt\");let l=null,i=1e6,s=(u,a,f)=>{if(a===0){let g=this.sgsPhaseSolve(u,i);if(!g)return;let L=f.concat(g).simplify({collapseMoves:!0,quantumMoveOrder:n}),B=rs(L);(l===null||B<i)&&(tL&&(console.log(`New best (${B} moves): ${L.toString()}`),console.log(`Tremble moves are: ${f.toString()}`)),l=L,i=B);return}for(let g of this.searchMoves)s(u.applyTransformation(g.transformation),a-1,f.concat([g.move]))};for(let u=0;u<=r;u++)s(o,u,new k);if(l===null)throw new Error(\"SGS search failed.\");return l}sgsPhaseSolve(e,r){let n=new ut,o=e;for(let l of this.sgs.ordering){let i=l.pieceOrdering,s=\"\",u=o.invert();for(let f=0;f<i.length;f++){let g=i[f],L=g.orbitName,B=g.permutationIdx;s+=` ${u.transformationData[L].permutation[B]} ${u.transformationData[L].orientation[B]}`}let a=l.lookup[s];if(!a)throw new Error(\"Missing algorithm in sgs or esgs?\");if(n.experimentalPushAlg(a.alg),n.experimentalNumUnits()>=r)return null;if(o=o.applyTransformation(a.transformation),eL)for(let f=0;f<i.length;f++){let g=i[f],L=g.orbitName,B=g.permutationIdx;if(o.transformationData[L].permutation[B]!==B||o.transformationData[L].orientation[B]!==0)throw new Error(\"bad SGS :-(\")}}return n.toAlg()}};async function an(t,e){let r=await Kt(),n=t.identityTransformation();for(let o of e.ordering){let l=r(Object.values(o.lookup));n=n.applyTransformation(l.transformation)}return n.toKState()}var lL=3,W2=null;async function Q2(){return W2||(W2=(async()=>{let t=await(await Promise.resolve().then(()=>(K2(),_2))).cachedData222();return new Ft(await he[\"2x2x2\"].kpuzzle(),t,\"URFLBD\".split(\"\"))})())}async function j2(){await Q2()}async function ns(t){return tt(),await(await Q2()).solve(t,lL,()=>4)}async function iL(t,e,r,n){let o=await st();await P2(r.stateData[e].pieces);let l=t.definition.orbits[e],i=r.stateData[e].orientation,s=0;for(let u=0;u<l.numPieces;u++){let a=o(l.numOrientations);i[u]=a,s+=a}n&&\"orientationSum\"in n&&(i[0]=((i[0]+n.orientationSum-s)%l.numOrientations+l.numOrientations)%l.numOrientations)}async function sL(){let t=await he[\"2x2x2\"].kpuzzle(),e=new Be(t,JSON.parse(JSON.stringify(t.startState().stateData)));return await iL(t,\"CORNERS\",e,{orientationSum:0}),e}async function q2(){return await ns(await sL())}ws();Dl();var hm=[[null,\"x\",\"x2\",\"x'\",\"z\",\"z'\"],[null,\"y\",\"y2\",\"y'\"]],ym=null;function Xf(){return ym??(ym=Promise.resolve().then(()=>(Zf(),Yf)))}async function Jf(){return(await Xf()).initialize()}async function ea(){return(await Xf()).random444Scramble()}async function $f(){return fn(await ea(),hm)}Dl();Ae();rr();function Um(t){switch(t){case 5:return 60;case 6:return 80;default:return 100}}var bm=[[\"U\",\"D\"],[\"L\",\"R\"],[\"F\",\"B\"]],eg=new Map;function Sm(t){let e=eg.get(t);if(e)return e;let r=[];for(let n of bm){let o=[];r.push(o);for(let l of n){o.push(new G(l)),t>3&&o.push(new G(`${l}w`));for(let i=3;i<=t/2;i++)o.push(new G(`${l}w`,i))}}return eg.set(t,r),r}async function Yt(t){let e=await st(),r=await Kt(),n=r,o=Sm(t),l=Um(t),i=new ut,s=0,u=new Set;for(;i.experimentalNumUnits()<l;){let a=e(3);a!==s&&u.clear(),s=a;let f=r(o[s]),g=f.toString();u.has(g)||(u.add(g),i.push(new c(f,n([1,2,-1]))))}return i.toAlg()}var xm=[[null,\"3Rw\",\"3Rw2\",\"3Rw'\",\"3Fw\",\"3Fw'\"],[null,\"3Dw\",\"3Dw2\",\"3Dw'\"]];async function tg(){return fn(await Yt(5),xm)}Ot();_t();var km=3,rg=null;async function zm(){return rg||(rg=(async()=>{let e=await(await Promise.resolve().then(()=>(ra(),ta))).sgsDataFTO();return new Ft(await he.fto.kpuzzle(),e,[\"U\",\"R\",\"F\",\"L\",\"D\",\"B\",\"BR\",\"BL\"])})())}async function Cm(t){return tt(),await(await zm()).solve(t,km,()=>3)}var ng=!1;async function og(){ng||(console.warn(\"FTO scrambles are not yet optimized. They may be much too long (\\u224890 moves).\"),ng=!0);let t=await Promise.resolve().then(()=>(ra(),ta));return Cm(await an(await he.fto.kpuzzle(),await t.sgsDataFTO()))}Ve();_t();na();var Im=2,sg=null;async function Nm(){return sg||(sg=(async()=>{let e=await(await Promise.resolve().then(()=>(na(),ig))).cachedSGSDataMegaminx();return new Ft(await vo(),e,[\"U\",\"R\",\"F\",\"L\",\"BR\",\"BL\",\"FR\",\"FL\",\"DR\",\"DL\",\"B\",\"D\"])})())}async function ag(t){tt();let e=await Nm(),r=JSON.parse(JSON.stringify(t.stateData));r.CENTERS.orientation=new Array(12).fill(0);let n=new Be(await vo(),r);return await e.solve(n,Im,()=>5)}Ot();_t();la();var Km=3,gg=null;async function Wm(){return gg||(gg=(async()=>{let e=await(await Promise.resolve().then(()=>(la(),fg))).sgsDataPyraminx();return new Ft(await he.pyraminx.kpuzzle(),e,\"RLUB\".split(\"\"))})())}async function ia(t){return tt(),await(await Wm()).solve(t,Km,()=>3)}async function Qm(){return an(await he.pyraminx.kpuzzle(),await oa())}async function Lg(){return ia(await Qm())}Ve();_t();aa();var Ym=3,cg=null;async function Zm(){return cg||(cg=(async()=>{let t=await Promise.resolve().then(()=>(aa(),mg)),e=await t.sgsDataSkewb();return new Ft(await t.skewbKPuzzleWithoutMOCached(),e,\"RLUB\".split(\"\"))})())}function Xm(t){return new Be(t.kpuzzle,{CORNERS:t.stateData.CORNERS,CENTERS:{pieces:t.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}})}async function ua(t){return tt(),await(await Zm()).solve(Xm(t),Ym,n=>n.family===\"y\"?4:3)}async function Jm(){return an(await fi(),await sa())}async function pg(){return ua(await Jm())}Ae();var hc=null;function yc(){return hc??(hc=Promise.resolve().then(()=>(Sg(),bg)))}async function xg(){return k.fromString(await(await yc()).getRandomSquare1ScrambleString())}v2(!0);var wg=!0;function Uc(t){wg=t}function vg(){return(typeof performance==\"undefined\"?Date:performance).now()}async function _e(t,e){if(!wg)return e();let r=vg(),n=e();n?.then&&await n;let o=vg();return console.warn(`${t}: ${Math.round(o-r)}ms`),n}var pa={initialize:async t=>{switch(t){case\"222\":return _e(\"preInitialize222\",j2);case\"333\":case\"333oh\":case\"333ft\":return _e(\"initialize333\",Gu);case\"444\":return _e(\"initialize444\",Jf);default:throw new Error(`unsupported event: ${t}`)}},randomScrambleForEvent:async t=>{switch(t){case\"222\":return _e(\"random222Scramble\",q2);case\"333\":case\"333oh\":case\"333ft\":return _e(\"random333Scramble\",hn);case\"333fm\":return _e(\"random333FewestMovesScramble\",Nu);case\"333bf\":case\"333mb\":return _e(\"random333OrientedScramble\",Tu);case\"444\":return _e(\"random444Scramble\",ea);case\"444bf\":return _e(\"random444OrientedScramble\",$f);case\"555\":return _e(\"bigCubeScramble(5)\",Yt.bind(Yt,5));case\"555bf\":return _e(\"oriented555RandomMoves\",tg);case\"666\":return _e(\"bigCubeScramble(6)\",Yt.bind(Yt,6));case\"777\":return _e(\"bigCubeScramble(7)\",Yt.bind(Yt,7));case\"skewb\":return _e(\"randomSkewbFixedCornerScramble\",pg);case\"pyram\":return _e(\"randomPyraminxScrambleFixedOrientation\",Lg);case\"sq1\":return _e(\"getRandomSquare1Scramble\",xg);case\"fto\":return _e(\"randomFTOScramble\",og);default:throw new Error(`unsupported event: ${t}`)}},randomScrambleStringForEvent:async t=>(await pa.randomScrambleForEvent(t)).toString(),solve333ToString:async t=>{let e=new Be(await he[\"3x3x3\"].kpuzzle(),t);return(await xs(e)).toString()},solve222ToString:async t=>{let e=new Be(await he[\"2x2x2\"].kpuzzle(),t);return(await ns(e)).toString()},solveSkewbToString:async t=>{let e=new Be(await he.skewb.kpuzzle(),t);return(await ua(e)).toString()},solvePyraminxToString:async t=>{let e=new Be(await he.pyraminx.kpuzzle(),t);return(await ia(e)).toString()},solveMegaminxToString:async t=>{let e=new Be(await he.megaminx.kpuzzle(),t);return(await ag(e)).toString()},setDebugMeasurePerf:async t=>{Uc(t)}};Ea(pa);\n";
|
|
1
|
+
export const workerSource: "var Gg=Object.create;var Go=Object.defineProperty;var Tg=Object.getOwnPropertyDescriptor;var Ig=Object.getOwnPropertyNames;var Ng=Object.getPrototypeOf,Og=Object.prototype.hasOwnProperty;var Ra=t=>Go(t,\"__esModule\",{value:!0});var U=(t,e)=>()=>(t&&(e=t(t=0)),e);var Ue=(t,e)=>{Ra(t);for(var r in e)Go(t,r,{get:e[r],enumerable:!0})},_g=(t,e,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let n of Ig(e))!Og.call(t,n)&&n!==\"default\"&&Go(t,n,{get:()=>e[n],enumerable:!(r=Tg(e,n))||r.enumerable});return t},da=t=>_g(Ra(Go(t!=null?Gg(Ng(t)):{},\"default\",t&&t.__esModule&&\"default\"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var Bi=(t,e,r)=>{if(!e.has(t))throw TypeError(\"Cannot \"+r)};var R=(t,e,r)=>(Bi(t,e,\"read from private field\"),r?r.call(t):e.get(t)),te=(t,e,r)=>{if(e.has(t))throw TypeError(\"Cannot add the same private member more than once\");e instanceof WeakSet?e.add(t):e.set(t,r)},Q=(t,e,r,n)=>(Bi(t,e,\"write to private field\"),n?n.call(t,r):e.set(t,r),r),ci=(t,e,r,n)=>({set _(o){Q(t,e,o,r)},get _(){return R(t,e,n)}}),Da=(t,e,r)=>(Bi(t,e,\"access private method\"),r);var Sa={};Ue(Sa,{default:()=>$g});function Jg(t){let e=new WeakMap;return{postMessage:t.postMessage.bind(t),addEventListener:(r,n)=>{let o=l=>{\"handleEvent\"in n?n.handleEvent({data:l}):n({data:l})};t.on(\"message\",o),e.set(n,o)},removeEventListener:(r,n)=>{let o=e.get(n);!o||(t.off(\"message\",o),e.delete(n))},start:t.start&&t.start.bind(t)}}var $g,xa=U(()=>{$g=Jg});var wa={};Ue(wa,{port:()=>e1});async function e1(){let{parentPort:t}=await import(\"worker_threads\").catch();return(await Promise.resolve().then(()=>(xa(),Sa))).default(t)}var va=U(()=>{});var r1,Io,Ce,Gt=U(()=>{r1=!1,Io=class{is(e){return this instanceof e}as(e){return this instanceof e?this:null}},Ce=class extends Io{constructor(){super();r1&&Object.defineProperty(this,\"_debugStr\",{get:()=>this.toString()})}get log(){return console.log.bind(console,this,this.toString())}}});function ka(t,e=!0){if(!e)return t;switch(t){case 1:return-1;case-1:return 1}}function Di(t,e){return e===-1?Array.from(t).reverse():t}function za(t){return Array.from(t).reverse()}var j,pt=U(()=>{(function(r){r[r.Forwards=1]=\"Forwards\",r[r.Backwards=-1]=\"Backwards\"})(j||(j={}))});var On,jr,Ca,Fi=U(()=>{On=2147483647,jr=\"2^31 - 1\",Ca=-2147483648});var Dr,ft,Ai=U(()=>{Tt();ft=class{constructor(){te(this,Dr,[])}push(e){R(this,Dr).push(e)}experimentalPushAlg(e){for(let r of e.units())this.push(r)}experimentalNumUnits(){return R(this,Dr).length}toAlg(){return new k(R(this,Dr))}reset(){Q(this,Dr,[])}};Dr=new WeakMap});var Fr,Ar,No,Pe,_n=U(()=>{Tt();Gt();pt();No=class extends Ce{constructor(e,r){super();te(this,Fr,void 0);te(this,Ar,void 0);Q(this,Fr,Xt(e)),Q(this,Ar,Xt(r))}get A(){return R(this,Fr)}get B(){return R(this,Ar)}isIdentical(e){let r=e.as(No);return!!(r?.A.isIdentical(this.A)&&r?.B.isIdentical(this.B))}invert(){return new No(R(this,Ar),R(this,Fr))}*experimentalExpand(e=j.Forwards,r){r??(r=1/0),r===0?yield e===j.Forwards?this:this.invert():e===j.Forwards?(yield*this.A.experimentalExpand(j.Forwards,r-1),yield*this.B.experimentalExpand(j.Forwards,r-1),yield*this.A.experimentalExpand(j.Backwards,r-1),yield*this.B.experimentalExpand(j.Backwards,r-1)):(yield*this.B.experimentalExpand(j.Forwards,r-1),yield*this.A.experimentalExpand(j.Forwards,r-1),yield*this.B.experimentalExpand(j.Backwards,r-1),yield*this.A.experimentalExpand(j.Backwards,r-1))}toString(){return`[${R(this,Fr).toString()}, ${R(this,Ar).toString()}]`}},Pe=No;Fr=new WeakMap,Ar=new WeakMap});var qr,Vr,Oo,Me,Wn=U(()=>{Tt();Gt();pt();Oo=class extends Ce{constructor(e,r){super();te(this,qr,void 0);te(this,Vr,void 0);Q(this,qr,Xt(e)),Q(this,Vr,Xt(r))}get A(){return R(this,qr)}get B(){return R(this,Vr)}isIdentical(e){let r=e.as(Oo);return!!(r?.A.isIdentical(this.A)&&r?.B.isIdentical(this.B))}invert(){return new Oo(R(this,qr),R(this,Vr).invert())}*experimentalExpand(e,r){r??(r=1/0),r===0?yield e===j.Forwards?this:this.invert():(yield*this.A.experimentalExpand(j.Forwards,r-1),yield*this.B.experimentalExpand(e,r-1),yield*this.A.experimentalExpand(j.Backwards,r-1))}toString(){return`[${this.A}: ${this.B}]`}},Me=Oo;qr=new WeakMap,Vr=new WeakMap});var Jt,hi,Rt,Kn=U(()=>{Gt();pt();hi=class extends Ce{constructor(e){super();te(this,Jt,void 0);if(e.includes(`\n`)||e.includes(\"\\r\"))throw new Error(\"LineComment cannot contain newline\");Q(this,Jt,e)}get text(){return R(this,Jt)}isIdentical(e){let r=e;return e.is(hi)&&R(this,Jt)===R(r,Jt)}invert(){return this}*experimentalExpand(e=j.Forwards,r=1/0){yield this}toString(){return`//${R(this,Jt)}`}},Rt=hi;Jt=new WeakMap});var je,Qn=U(()=>{Gt();pt();je=class extends Ce{toString(){return`\n`}isIdentical(e){return e.is(je)}invert(){return this}*experimentalExpand(e=j.Forwards,r=1/0){yield this}}});var qe,jn=U(()=>{Gt();pt();qe=class extends Ce{toString(){return\".\"}isIdentical(e){return e.is(qe)}invert(){return this}*experimentalExpand(e=j.Forwards,r=1/0){yield this}}});function _o(t,e){return t?parseInt(t):e}function yi(t){return new Wo().parseAlg(t)}function Ma(t){return new Wo().parseMove(t)}function Ga(t){return new Wo().parseQuantumMove(t)}function Ve(t,e,r){let n=t;return n.startCharIndex=e,n.endCharIndex=r,n}function Ta(t,e){return\"startCharIndex\"in t&&(e.startCharIndex=t.startCharIndex),\"endCharIndex\"in t&&(e.endCharIndex=t.endCharIndex),e}var Pa,n1,o1,l1,i1,s1,$e,O,Wo,Ui=U(()=>{Tt();Ai();_n();Wn();Ko();Kn();It();Qn();jn();Pa=/^(\\d+)?('?)/,n1=/^[_\\dA-Za-z]/,o1=/^((([1-9]\\d*)-)?([1-9]\\d*))?([_A-Za-z]+)?/,l1=/^[^\\n]*/,i1=/^(-?\\d+), ?/,s1=/^(-?\\d+)\\)/;Wo=class{constructor(){te(this,$e,\"\");te(this,O,0)}parseAlg(e){Q(this,$e,e),Q(this,O,0);let r=this.parseAlgWithStopping([]);return this.mustBeAtEndOfInput(),r}parseMove(e){Q(this,$e,e),Q(this,O,0);let r=this.parseMoveImpl();return this.mustBeAtEndOfInput(),r}parseQuantumMove(e){Q(this,$e,e),Q(this,O,0);let r=this.parseQuantumMoveImpl();return this.mustBeAtEndOfInput(),r}mustBeAtEndOfInput(){if(R(this,O)!==R(this,$e).length)throw new Error(\"parsing unexpectedly ended early\")}parseAlgWithStopping(e){let r=R(this,O),n=R(this,O),o=new ft,l=!1,i=s=>{if(l)throw new Error(`Unexpected character at index ${s}. Are you missing a space?`)};e:for(;R(this,O)<R(this,$e).length;){let s=R(this,O);if(e.includes(R(this,$e)[R(this,O)]))return Ve(o.toAlg(),r,n);if(this.tryConsumeNext(\" \")){l=!1,o.experimentalNumUnits()===0&&(r=R(this,O));continue e}else if(n1.test(R(this,$e)[R(this,O)])){i(s);let u=this.parseMoveImpl();o.push(u),l=!0,n=R(this,O);continue e}else if(this.tryConsumeNext(\"(\")){i(s);let u=this.tryRegex(i1);if(u){let a=u[1],f=R(this,O),g=this.parseRegex(s1),L=Ve(new c(new G(\"U_SQ_\"),parseInt(a)),s+1,s+1+a.length),m=Ve(new c(new G(\"D_SQ_\"),parseInt(g[1])),f,R(this,O)-1),p=Ve(new k([L,m]),s+1,R(this,O)-1);o.push(Ve(new st(p),s,R(this,O))),l=!0,n=R(this,O);continue e}else{let a=this.parseAlgWithStopping([\")\"]);this.mustConsumeNext(\")\");let f=this.parseAmount();o.push(Ve(new st(a,f),s,R(this,O))),l=!0,n=R(this,O);continue e}}else if(this.tryConsumeNext(\"[\")){i(s);let u=this.parseAlgWithStopping([\",\",\":\"]),a=this.popNext(),f=this.parseAlgWithStopping([\"]\"]);switch(this.mustConsumeNext(\"]\"),a){case\":\":o.push(Ve(new Me(u,f),s,R(this,O))),l=!0,n=R(this,O);continue e;case\",\":o.push(Ve(new Pe(u,f),s,R(this,O))),l=!0,n=R(this,O);continue e;default:throw\"unexpected parsing error\"}}else if(this.tryConsumeNext(`\n`)){o.push(Ve(new je,s,R(this,O))),l=!1,n=R(this,O);continue e}else if(this.tryConsumeNext(\"/\"))if(this.tryConsumeNext(\"/\")){i(s);let[u]=this.parseRegex(l1);o.push(Ve(new Rt(u),s,R(this,O))),l=!1,n=R(this,O);continue e}else{o.push(Ve(new c(\"_SLASH_\"),s,R(this,O))),l=!0,n=R(this,O);continue e}else if(this.tryConsumeNext(\".\")){i(s),o.push(Ve(new qe,s,R(this,O))),l=!0,n=R(this,O);continue e}else throw new Error(`Unexpected character: ${this.popNext()}`)}if(R(this,O)!==R(this,$e).length)throw new Error(\"did not finish parsing?\");if(e.length>0)throw new Error(\"expected stopping\");return Ve(o.toAlg(),r,n)}parseQuantumMoveImpl(){let[,,,e,r,n]=this.parseRegex(o1);return new G(n,_o(r,void 0),_o(e,void 0))}parseMoveImpl(){let e=R(this,O);if(this.tryConsumeNext(\"/\"))return Ve(new c(\"_SLASH_\"),e,R(this,O));let r=this.parseQuantumMoveImpl(),[n,o]=this.parseAmountAndTrackEmptyAbsAmount(),l=this.parseMoveSuffix();if(l){if(n<0)throw new Error(\"uh-oh\");if((l===\"++\"||l===\"--\")&&n!==1)throw new Error(\"Pochmann ++ or -- moves cannot have an amount other than 1.\");if((l===\"++\"||l===\"--\")&&!o)throw new Error(\"Pochmann ++ or -- moves cannot have an amount written as a number.\");if((l===\"+\"||l===\"-\")&&o)throw new Error(\"Clock dial moves must have an amount written as a natural number followed by + or -.\");l.startsWith(\"+\")&&(r=r.modified({family:`${r.family}_${l===\"+\"?\"PLUS\":\"PLUSPLUS\"}_`})),l.startsWith(\"-\")&&(r=r.modified({family:`${r.family}_${l===\"-\"?\"PLUS\":\"PLUSPLUS\"}_`}),n*=-1)}return Ve(new c(r,n),e,R(this,O))}parseMoveSuffix(){return this.tryConsumeNext(\"+\")?this.tryConsumeNext(\"+\")?\"++\":\"+\":this.tryConsumeNext(\"-\")?this.tryConsumeNext(\"-\")?\"--\":\"-\":null}parseAmountAndTrackEmptyAbsAmount(){let e=R(this,O),[,r,n]=this.parseRegex(Pa);if(r?.startsWith(\"0\")&&r!==\"0\")throw new Error(`Error at char index ${e}: An amount can only start with 0 if it's exactly the digit 0.`);return[_o(r,1)*(n===\"'\"?-1:1),!r]}parseAmount(){let e=R(this,O),[,r,n]=this.parseRegex(Pa);if(r?.startsWith(\"0\")&&r!==\"0\")throw new Error(`Error at char index ${e}: An amount number can only start with 0 if it's exactly the digit 0.`);return _o(r,1)*(n===\"'\"?-1:1)}parseRegex(e){let r=e.exec(this.remaining());if(r===null)throw new Error(\"internal parsing error\");return Q(this,O,R(this,O)+r[0].length),r}tryRegex(e){let r=e.exec(this.remaining());return r===null?null:(Q(this,O,R(this,O)+r[0].length),r)}remaining(){return R(this,$e).slice(R(this,O))}popNext(){let e=R(this,$e)[R(this,O)];return ci(this,O)._++,e}tryConsumeNext(e){return R(this,$e)[R(this,O)]===e?(ci(this,O)._++,!0):!1}mustConsumeNext(e){let r=this.popNext();if(r!==e)throw new Error(`expected \\`${e}\\` while parsing, encountered ${r}`);return r}};$e=new WeakMap,O=new WeakMap});function Qo(t){Ia.has(t)||(console.warn(t),Ia.add(t))}var Ia,bi=U(()=>{Ia=new Set});var Hr,Si=U(()=>{pt();Fi();Hr=class{constructor(e,r=1){if(this.quantum=e,this.amount=r,!Number.isInteger(this.amount)||this.amount<Ca||this.amount>On)throw new Error(`Unit amount absolute value must be a non-negative integer from ${jr} to ${jr}.`)}suffix(){let e=\"\",r=Math.abs(this.amount);return r!==1&&(e+=r),this.amount<0&&(e+=\"'\"),e}isIdentical(e){return this.quantum.isIdentical(e.quantum)&&this.amount===e.amount}*experimentalExpand(e,r){let n=Math.abs(this.amount),o=ka(e,this.amount<0);for(let l=0;l<n;l++)yield*this.quantum.experimentalExpand(o,r)}}});var Nt,Ge,Te,jo,G,we,Yr,c,It=U(()=>{Gt();pt();Fi();Ui();bi();Si();jo=class extends Io{constructor(e,r,n){super();te(this,Nt,void 0);te(this,Ge,void 0);te(this,Te,void 0);if(Q(this,Nt,e),Q(this,Ge,r??null),Q(this,Te,n??null),Object.freeze(this),R(this,Ge)!==null&&(!Number.isInteger(R(this,Ge))||R(this,Ge)<1||R(this,Ge)>On))throw new Error(`QuantumMove inner layer must be a positive integer below ${jr}.`);if(R(this,Te)!==null&&(!Number.isInteger(R(this,Te))||R(this,Te)<1||R(this,Te)>On))throw new Error(`QuantumMove outer layer must be a positive integer below ${jr}.`);if(R(this,Te)!==null&&R(this,Ge)!==null&&R(this,Ge)<=R(this,Te))throw new Error(\"QuantumMove outer layer must be smaller than inner layer.\");if(R(this,Te)!==null&&R(this,Ge)===null)throw new Error(\"QuantumMove with an outer layer must have an inner layer\")}static fromString(e){return Ga(e)}modified(e){return new jo(e.family??R(this,Nt),e.innerLayer??R(this,Ge),e.outerLayer??R(this,Te))}isIdentical(e){let r=e;return e.is(jo)&&R(this,Nt)===R(r,Nt)&&R(this,Ge)===R(r,Ge)&&R(this,Te)===R(r,Te)}get family(){return R(this,Nt)}get outerLayer(){return R(this,Te)}get innerLayer(){return R(this,Ge)}experimentalExpand(){throw new Error(\"experimentalExpand() cannot be called on a `QuantumMove` directly.\")}toString(){let e=R(this,Nt);return R(this,Ge)!==null&&(e=String(R(this,Ge))+e,R(this,Te)!==null&&(e=String(R(this,Te))+\"-\"+e)),e}},G=jo;Nt=new WeakMap,Ge=new WeakMap,Te=new WeakMap;Yr=class extends Ce{constructor(...e){super();te(this,we,void 0);if(typeof e[0]==\"string\")if(e[1]??null){Q(this,we,new Hr(G.fromString(e[0]),e[1]));return}else return Yr.fromString(e[0]);Q(this,we,new Hr(e[0],e[1]))}isIdentical(e){let r=e.as(Yr);return!!r&&R(this,we).isIdentical(R(r,we))}invert(){return Ta(this,new Yr(R(this,we).quantum,-this.amount))}*experimentalExpand(e=j.Forwards){e===j.Forwards?yield this:yield this.modified({amount:-this.amount})}get quantum(){return R(this,we).quantum}modified(e){return new Yr(R(this,we).quantum.modified(e),e.amount??this.amount)}static fromString(e){return Ma(e)}get amount(){return R(this,we).amount}get type(){return Qo(\"deprecated: type\"),\"blockMove\"}get family(){return R(this,we).quantum.family??void 0}get outerLayer(){return R(this,we).quantum.outerLayer??void 0}get innerLayer(){return R(this,we).quantum.innerLayer??void 0}toString(){if(this.family===\"_SLASH_\")return\"/\";if(this.family.endsWith(\"_PLUS_\"))return R(this,we).quantum.toString().slice(0,-6)+Math.abs(this.amount)+(this.amount<0?\"-\":\"+\");if(this.family.endsWith(\"_PLUSPLUS_\")){let e=Math.abs(this.amount);return R(this,we).quantum.toString().slice(0,-10)+(e===1?\"\":e)+(this.amount<0?\"--\":\"++\")}return R(this,we).quantum.toString()+R(this,we).suffix()}},c=Yr;we=new WeakMap});var Na,Oa,et,qo,st,Ko=U(()=>{Tt();Gt();pt();It();Si();Na=class{constructor(){this.quantumU_SQ_=null;this.quantumD_SQ_=null}format(e){let r=this.tuple(e);return r?`(${r.map(n=>n.amount).join(\", \")})`:null}tuple(e){this.quantumU_SQ_||(this.quantumU_SQ_=new G(\"U_SQ_\")),this.quantumD_SQ_||(this.quantumD_SQ_=new G(\"D_SQ_\"));let r=e.alg;if(r.experimentalNumUnits()===2){let[n,o]=r.units();if(n.as(c)?.quantum.isIdentical(this.quantumU_SQ_)&&o.as(c)?.quantum.isIdentical(this.quantumD_SQ_)){if(e.amount!==1)throw new Error(\"Square-1 tuples cannot have an amount other than 1.\");return[n,o]}}return null}},Oa=new Na,qo=class extends Ce{constructor(e,r){super();te(this,et,void 0);let n=Xt(e);Q(this,et,new Hr(n,r))}isIdentical(e){let r=e;return e.is(qo)&&R(this,et).isIdentical(R(r,et))}get alg(){return R(this,et).quantum}get amount(){return R(this,et).amount}get experimentalRepetitionSuffix(){return R(this,et).suffix()}invert(){return new qo(R(this,et).quantum,-R(this,et).amount)}*experimentalExpand(e=j.Forwards,r){r??(r=1/0),r===0?yield e===j.Forwards?this:this.invert():yield*R(this,et).experimentalExpand(e,r-1)}static fromString(){throw new Error(\"unimplemented\")}toString(){return Oa.format(this)??`(${R(this,et).quantum.toString()})${R(this,et).suffix()}`}experimentalAsSquare1Tuple(){return Oa.tuple(this)}},st=qo;et=new WeakMap});var Vo=U(()=>{Ko();Kn();_n();Wn();It();Qn();jn()});function dt(t,e){return t instanceof e}function _a(t){return dt(t,st)||dt(t,Rt)||dt(t,Pe)||dt(t,Me)||dt(t,c)||dt(t,je)||dt(t,qe)}var xi=U(()=>{Vo()});function Wa(t,e,r){if(e.is(st))return t.traverseGrouping(e,r);if(e.is(c))return t.traverseMove(e,r);if(e.is(Pe))return t.traverseCommutator(e,r);if(e.is(Me))return t.traverseConjugate(e,r);if(e.is(qe))return t.traversePause(e,r);if(e.is(je))return t.traverseNewline(e,r);if(e.is(Rt))return t.traverseLineComment(e,r);throw new Error(\"unknown unit\")}function Ka(t){if(t.is(st)||t.is(c)||t.is(Pe)||t.is(Me)||t.is(qe)||t.is(je)||t.is(Rt))return t;throw\"internal error: expected unit\"}var Zr,Xr,Ho,a1,vi,wi,Qa,ja,Ei=U(()=>{Ko();_n();It();Qn();jn();Wn();Kn();Zr=class{traverseUnit(e,r){return Wa(this,e,r)}traverseIntoUnit(e,r){return Ka(this.traverseUnit(e,r))}},Xr=class extends Zr{traverseUnit(e){return Wa(this,e,void 0)}traverseIntoUnit(e){return Ka(this.traverseUnit(e))}},vi=class extends Zr{*traverseAlg(e,r){if(r.depth===0){yield*e.units();return}let n=[],o=null,l=r?.collapseMoves??!0;function i(a,f){var m;let g=Da(m=vi,Ho,a1).call(m,a,f,r);if(g===0)return!1;let L=new c(a.quantum,g);return n.push(L),o=L,!0}function s(a){l&&o?.is(c)&&a.is(c)&&o.quantum.isIdentical(a.quantum)?(n.pop(),i(o,a.amount)||(o=n.slice(-1)[0])):a.is(c)?i(a,0):(n.push(a),o=a)}let u={depth:r.depth?r.depth-1:null};for(let a of e.units())for(let f of this.traverseUnit(a,u))s(f);for(let a of n)yield a}*traverseGrouping(e,r){if(r.depth===0){yield e;return}let n={depth:r.depth?r.depth-1:null};yield new st(this.traverseAlg(e.alg,n))}*traverseMove(e,r){yield e}*traverseCommutator(e,r){if(r.depth===0){yield e;return}let n={depth:r.depth?r.depth-1:null};yield new Pe(this.traverseAlg(e.A,n),this.traverseAlg(e.B,n))}*traverseConjugate(e,r){if(r.depth===0){yield e;return}let n={depth:r.depth?r.depth-1:null};yield new Me(this.traverseAlg(e.A,n),this.traverseAlg(e.B,n))}*traversePause(e,r){yield e}*traverseNewline(e,r){yield e}*traverseLineComment(e,r){yield e}},wi=vi;Ho=new WeakSet,a1=function(e,r,n){let o=e.amount+r;if(n?.quantumMoveOrder){let l=n.quantumMoveOrder(e.quantum),i=Math.floor(l/2)+1-l;o=(o%l+l-i)%l+i}return o},te(wi,Ho);Qa=new wi,ja=Qa.traverseAlg.bind(Qa)});function qa(t){if(!t)return[];if(dt(t,k))return t.units();if(typeof t==\"string\")return yi(t).units();let e=t;if(typeof e[Symbol.iterator]==\"function\")return e;throw\"Invalid unit\"}function Xt(t){return dt(t,k)?t:new k(t)}function u1(t,e){return t.is(je)||e.is(je)?\"\":t.is(Rt)&&!e.is(je)?`\n`:\" \"}var tt,hr,k,Tt=U(()=>{Gt();xi();pt();Ui();Ei();Kn();It();Qn();bi();hr=class extends Ce{constructor(e){super();te(this,tt,void 0);Q(this,tt,Array.from(qa(e)));for(let r of R(this,tt))if(!_a(r))throw new Error(\"An alg can only contain units.\")}isIdentical(e){let r=e;if(!e.is(hr))return!1;let n=Array.from(R(this,tt)),o=Array.from(R(r,tt));if(n.length!==o.length)return!1;for(let l=0;l<n.length;l++)if(!n[l].isIdentical(o[l]))return!1;return!0}invert(){return new hr(za(Array.from(R(this,tt)).map(e=>e.invert())))}*experimentalExpand(e=j.Forwards,r){r??(r=1/0);for(let n of Di(R(this,tt),e))yield*n.experimentalExpand(e,r)}expand(e){return new hr(this.experimentalExpand(j.Forwards,e?.depth??1/0))}*experimentalLeafMoves(){for(let e of this.experimentalExpand())e.is(c)&&(yield e)}concat(e){return new hr(Array.from(R(this,tt)).concat(Array.from(qa(e))))}experimentalIsEmpty(){for(let e of R(this,tt))return!1;return!0}static fromString(e){return yi(e)}*units(){for(let e of R(this,tt))yield e}experimentalNumUnits(){return Array.from(R(this,tt)).length}get type(){return Qo(\"deprecated: type\"),\"sequence\"}toString(){let e=\"\",r=null;for(let n of R(this,tt))r&&(e+=u1(r,n)),e+=n.toString(),r=n;return e}simplify(e){return new hr(ja(this,e??{}))}},k=hr;tt=new WeakMap});var f1,Va=U(()=>{Tt();Vo();_n();Wn();It();jn();f1={Sune:new k([new c(\"R\",1),new c(\"U\",1),new c(\"R\",-1),new c(\"U\",1),new c(\"R\",1),new c(\"U\",-2),new c(\"R\",-1)]),AntiSune:new k([new c(\"R\",1),new c(\"U\",2),new c(\"R\",-1),new c(\"U\",-1),new c(\"R\",1),new c(\"U\",-1),new c(\"R\",-1)]),SuneCommutator:new k([new Pe(new k([new c(\"R\",1),new c(\"U\",1),new c(\"R\",-2)]),new k([new Me(new k([new c(\"R\",1)]),new k([new c(\"U\",1)]))]))]),Niklas:new k([new c(\"R\",1),new c(\"U\",-1),new c(\"L\",-1),new c(\"U\",1),new c(\"R\",-1),new c(\"U\",-1),new c(\"L\",1),new c(\"U\",1)]),EPerm:new k([new c(\"x\",-1),new Pe(new k([new Me(new k([new c(\"R\",1)]),new k([new c(\"U\",-1)]))]),new k([new c(\"D\",1)])),new Pe(new k([new Me(new k([new c(\"R\",1)]),new k([new c(\"U\",1)]))]),new k([new c(\"D\",1)])),new c(\"x\",1)]),FURURFCompact:new k([new Me(new k([new c(\"F\",1)]),new k([new Pe(new k([new c(\"U\",1)]),new k([new c(\"R\",1)]))]))]),APermCompact:new k([new Me(new k([new c(\"R\",2)]),new k([new Pe(new k([new c(\"F\",2)]),new k([new c(\"R\",-1),new c(\"B\",-1),new c(\"R\",1)]))]))]),FURURFMoves:new k([new c(\"F\",1),new c(\"U\",1),new c(\"R\",1),new c(\"U\",-1),new c(\"R\",-1),new c(\"F\",-1)]),TPerm:new k([new c(\"R\",1),new c(\"U\",1),new c(\"R\",-1),new c(\"U\",-1),new c(\"R\",-1),new c(\"F\",1),new c(\"R\",2),new c(\"U\",-1),new c(\"R\",-1),new c(\"U\",-1),new c(\"R\",1),new c(\"U\",1),new c(\"R\",-1),new c(\"F\",-1)]),HeadlightSwaps:new k([new Me(new k([new c(\"F\",1)]),new k([new st(new k([new Pe(new k([new c(\"R\",1)]),new k([new c(\"U\",1)]))]),3)]))]),TriplePause:new k([new qe,new qe,new qe])}});var bR,Ha=U(()=>{It();bR={73:new c(\"R\"),75:new c(\"R'\"),87:new c(\"B\"),79:new c(\"B'\"),83:new c(\"D\"),76:new c(\"D'\"),68:new c(\"L\"),69:new c(\"L'\"),74:new c(\"U\"),70:new c(\"U'\"),72:new c(\"F\"),71:new c(\"F'\"),78:new c(\"x'\"),67:new c(\"l\"),82:new c(\"l'\"),85:new c(\"r\"),77:new c(\"r'\"),88:new c(\"d\"),188:new c(\"d'\"),84:new c(\"x\"),89:new c(\"x\"),66:new c(\"x'\"),186:new c(\"y\"),59:new c(\"y\"),65:new c(\"y'\"),80:new c(\"z\"),81:new c(\"z'\"),90:new c(\"M'\"),190:new c(\"M'\")}});var Ya=U(()=>{});var Za=U(()=>{Tt()});var Ae=U(()=>{Tt();Ai();Ei();Va();Ha();Vo();It();Ya();Za();xi();pt()});function qn(t,e,r){let n={};for(let o in t.orbits){let l=t.orbits[o],i=e[o],s=r[o];if(Vn(l.numOrientations,s))n[o]=i;else if(Vn(l.numOrientations,i))n[o]=s;else{let u=new Array(l.numPieces);if(l.numOrientations===1){for(let a=0;a<l.numPieces;a++)u[a]=i.permutation[s.permutation[a]];n[o]={permutation:u,orientation:i.orientation}}else{let a=new Array(l.numPieces);for(let f=0;f<l.numPieces;f++)a[f]=(i.orientation[s.permutation[f]]+s.orientation[f])%l.numOrientations,u[f]=i.permutation[s.permutation[f]];n[o]={permutation:u,orientation:a}}}}return n}function ki(t,e,r){let n={};for(let o in t.orbits){let l=t.orbits[o],i=e[o],s=r[o];if(Vn(l.numOrientations,s))n[o]=i;else{let u=new Array(l.numPieces);if(l.numOrientations===1){for(let a=0;a<l.numPieces;a++)u[a]=i.pieces[s.permutation[a]];n[o]={pieces:u,orientation:i.orientation}}else{let a=new Array(l.numPieces);for(let f=0;f<l.numPieces;f++)a[f]=(i.orientation[s.permutation[f]]+s.orientation[f])%l.numOrientations,u[f]=i.pieces[s.permutation[f]];n[o]={pieces:u,orientation:a}}}}return n}var Yo=U(()=>{Hn()});function g1(t){let e=Ja.get(t);if(e)return e;let r=new Array(t),n=new Array(t);for(let l=0;l<t;l++)r[l]=l,n[l]=0;let o={permutation:r,orientation:n};return Xa&&(Object.freeze(r),Object.freeze(n),Object.freeze(o)),Ja.set(t,o),o}function $a(t){let e={};for(let[r,n]of Object.entries(t.orbits))e[r]=g1(n.numPieces);return Xa&&Object.freeze(e),e}function e0(t,e){let r=e.quantum.toString(),n=t.definition.moves[r];if(n)return $t(t,n,e.amount);let o=t.definition.moves[e.toString()];if(o)return o;let l=t.definition.moves[e.invert().toString()];if(l)return $t(t,l,-1);throw new Error(`Invalid move for KPuzzle (${t.name()}): ${e}`)}var Xa,Ja,zi=U(()=>{Hn();Xa=!1,Ja=new Map});var me,Zo=U(()=>{Yo();Yn();me=class{constructor(e,r){this.kpuzzle=e;this.stateData=r}static fromTransformation(e){let r=ki(e.kpuzzle.definition,e.kpuzzle.definition.startStateData,e.transformationData);return new me(e.kpuzzle,r)}apply(e){return this.applyTransformation(this.kpuzzle.toTransformation(e))}applyTransformation(e){if(e.isIdentityTransformation())return new me(this.kpuzzle,this.stateData);let r=ki(this.kpuzzle.definition,this.stateData,e.transformationData);return new me(this.kpuzzle,r)}applyMove(e){return this.applyTransformation(this.kpuzzle.moveToTransformation(e))}applyAlg(e){return this.applyTransformation(this.kpuzzle.algToTransformation(e))}experimentalToTransformation(){if(!this.kpuzzle.canConvertStateToUniqueTransformation())return null;let e={};for(let[r,n]of Object.entries(this.stateData)){let o={permutation:n.pieces,orientation:n.orientation};e[r]=o}return new Dt(this.kpuzzle,e)}}});var yr,er,Dt,Yn=U(()=>{Hn();Yo();zi();Zo();er=class{constructor(e,r){this.kpuzzle=e;this.transformationData=r;te(this,yr,void 0)}invert(){return new er(this.kpuzzle,Ci(this.kpuzzle,this.transformationData))}isIdentityTransformation(){return R(this,yr)??Q(this,yr,this.isIdentical(this.kpuzzle.identityTransformation()))}static experimentalConstructIdentity(e){let r=new er(e,$a(e.definition));return Q(r,yr,!0),r}isIdentical(e){return t0(this.kpuzzle,this.transformationData,e.transformationData)}apply(e){return this.applyTransformation(this.kpuzzle.toTransformation(e))}applyTransformation(e){if(this.kpuzzle!==e.kpuzzle)throw new Error(`Tried to apply a transformation for a KPuzzle (${e.kpuzzle.name()}) to a different KPuzzle (${this.kpuzzle.name()}).`);return R(this,yr)?new er(this.kpuzzle,e.transformationData):R(e,yr)?new er(this.kpuzzle,this.transformationData):new er(this.kpuzzle,qn(this.kpuzzle.definition,this.transformationData,e.transformationData))}applyMove(e){return this.applyTransformation(this.kpuzzle.moveToTransformation(e))}applyAlg(e){return this.applyTransformation(this.kpuzzle.algToTransformation(e))}toKState(){return me.fromTransformation(this)}repetitionOrder(){return r0(this.kpuzzle.definition,this)}selfMultiply(e){return new er(this.kpuzzle,$t(this.kpuzzle,this.transformationData,e))}},Dt=er;yr=new WeakMap});function Vn(t,e){let{permutation:r}=e,n=r.length;for(let o=0;o<n;o++)if(r[o]!==o)return!1;if(t>1){let{orientation:o}=e;for(let l=0;l<n;l++)if(o[l]!==0)return!1}return!0}function L1(t,e,r,n={}){for(let o=0;o<t.numPieces;o++)if(!n?.ignoreOrientation&&e.orientation[o]!==r.orientation[o]||!n?.ignorePermutation&&e.permutation[o]!==r.permutation[o])return!1;return!0}function t0(t,e,r){for(let[n,o]of Object.entries(t.definition.orbits))if(!L1(o,e[n],r[n]))return!1;return!0}function Ci(t,e){let r={};for(let n in t.definition.orbits){let o=t.definition.orbits[n],l=e[n];if(Vn(o.numOrientations,l))r[n]=l;else if(o.numOrientations===1){let i=new Array(o.numPieces);for(let s=0;s<o.numPieces;s++)i[l.permutation[s]]=s;r[n]={permutation:i,orientation:l.orientation}}else{let i=new Array(o.numPieces),s=new Array(o.numPieces);for(let u=0;u<o.numPieces;u++){let a=l.permutation[u];i[a]=u,s[a]=(o.numOrientations-l.orientation[u]+o.numOrientations)%o.numOrientations}r[n]={permutation:i,orientation:s}}}return r}function $t(t,e,r){if(r===1)return e;if(r<0)return $t(t,Ci(t,e),-r);if(r===0){let{transformationData:l}=t.identityTransformation();return l}let n=e;r!==2&&(n=$t(t,e,Math.floor(r/2)));let o=qn(t.definition,n,n);return r%2==0?o:qn(t.definition,e,o)}function Pi(t,e){return e?Pi(e,t%e):t}function r0(t,e){let r=1;for(let n in t.orbits){let o=t.orbits[n],l=e.transformationData[n],i=new Array(o.numPieces);for(let s=0;s<o.numPieces;s++)if(!i[s]){let u=s,a=0,f=0;for(;i[u]=!0,a=a+l.orientation[u],f=f+1,u=l.permutation[u],u!==s;);a!==0&&(f=f*o.numOrientations/Pi(o.numOrientations,a)),r=r*f/Pi(r,f)}}return r}var n0,o0,l0,Hn=U(()=>{Ae();Yo();Yn();n0=class extends Zr{traverseAlg(e,r){let n=null;for(let o of e.units())n?n=n.applyTransformation(this.traverseUnit(o,r)):n=this.traverseUnit(o,r);return n??r.identityTransformation()}traverseGrouping(e,r){let n=this.traverseAlg(e.alg,r);return new Dt(r,$t(r,n.transformationData,e.amount))}traverseMove(e,r){return r.moveToTransformation(e)}traverseCommutator(e,r){let n=this.traverseAlg(e.A,r),o=this.traverseAlg(e.B,r);return n.applyTransformation(o).applyTransformation(n.invert()).applyTransformation(o.invert())}traverseConjugate(e,r){let n=this.traverseAlg(e.A,r),o=this.traverseAlg(e.B,r);return n.applyTransformation(o).applyTransformation(n.invert())}traversePause(e,r){return r.identityTransformation()}traverseNewline(e,r){return r.identityTransformation()}traverseLineComment(e,r){return r.identityTransformation()}},o0=new n0,l0=o0.traverseAlg.bind(o0)});var Jr,Xo,Ie,Mi=U(()=>{Ae();Hn();zi();Zo();Yn();Ie=class{constructor(e,r){this.definition=e;te(this,Jr,new Map);te(this,Xo,void 0);this.experimentalPGNotation=r?.experimentalPGNotation}name(){return this.definition.name}identityTransformation(){return Dt.experimentalConstructIdentity(this)}moveToTransformation(e){typeof e==\"string\"&&(e=new c(e));let r=e.toString(),n=R(this,Jr).get(r);if(n)return new Dt(this,n);if(this.experimentalPGNotation){let l=this.experimentalPGNotation.lookupMove(e);if(!l)throw new Error(`could not map to internal move: ${e}`);return R(this,Jr).set(r,l),new Dt(this,l)}let o=e0(this,e);return R(this,Jr).set(r,o),new Dt(this,o)}algToTransformation(e){return typeof e==\"string\"&&(e=new k(e)),l0(e,this)}toTransformation(e){return typeof e==\"string\"?this.algToTransformation(e):e?.is?.(k)?this.algToTransformation(e):e?.is?.(c)?this.moveToTransformation(e):e}startState(){return new me(this,this.definition.startStateData)}canConvertStateToUniqueTransformation(){return R(this,Xo)??Q(this,Xo,(()=>{for(let[e,r]of Object.entries(this.definition.orbits)){let n=new Array(r.numPieces).fill(!1);for(let o of this.definition.startStateData[e].pieces)n[o]=!0;for(let o of n)if(!o)return!1}return!0})())}get state(){throw new Error(\"KPuzzle is now a different (stateless) class.\")}reset(){throw new Error(\"KPuzzle is now a different (stateless) class.\")}applyMove(e){throw new Error(\"KPuzzle is now a different class. Try `.moveToTransformation()` to get the transformation for a move.\")}applyAlg(e){throw new Error(\"KPuzzle is now a different class. Try `.algToTransformation()` to get the transformation for an alg.\")}};Jr=new WeakMap,Xo=new WeakMap});var pe,i0=U(()=>{pe={name:\"3x3x3\",orbits:{EDGES:{numPieces:12,numOrientations:2},CORNERS:{numPieces:8,numOrientations:3},CENTERS:{numPieces:6,numOrientations:4}},startStateData:{EDGES:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{pieces:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{pieces:[0,1,2,3,4,5],orientation:[0,0,0,0,0,0]}},moves:{U:{EDGES:{permutation:[1,2,3,0,4,5,6,7,8,9,10,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[1,2,3,0,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[1,0,0,0,0,0]}},y:{EDGES:{permutation:[1,2,3,0,5,6,7,4,10,8,11,9],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[1,2,3,0,7,4,5,6],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,2,3,4,1,5],orientation:[1,0,0,0,0,3]}},x:{EDGES:{permutation:[4,8,0,9,6,10,2,11,5,7,1,3],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[4,0,3,5,7,6,2,1],orientation:[2,1,2,1,1,2,1,2]},CENTERS:{permutation:[2,1,5,3,0,4],orientation:[0,3,0,1,2,2]}},L:{EDGES:{permutation:[0,1,2,11,4,5,6,9,8,3,10,7],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[0,1,6,2,4,3,5,7],orientation:[0,0,2,1,0,2,1,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,1,0,0,0,0]}},F:{EDGES:{permutation:[9,1,2,3,8,5,6,7,0,4,10,11],orientation:[1,0,0,0,1,0,0,0,1,1,0,0]},CORNERS:{permutation:[3,1,2,5,0,4,6,7],orientation:[1,0,0,2,2,1,0,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,1,0,0,0]}},R:{EDGES:{permutation:[0,8,2,3,4,10,6,7,5,9,1,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[4,0,2,3,7,5,6,1],orientation:[2,1,0,0,1,0,0,2]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,0,1,0,0]}},B:{EDGES:{permutation:[0,1,10,3,4,5,11,7,8,9,6,2],orientation:[0,0,1,0,0,0,1,0,0,0,1,1]},CORNERS:{permutation:[0,7,1,3,4,5,2,6],orientation:[0,2,1,0,0,0,2,1]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,0,0,1,0]}},D:{EDGES:{permutation:[0,1,2,3,7,4,5,6,8,9,10,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[0,1,2,3,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,0,0,0,1]}},z:{EDGES:{permutation:[9,3,11,7,8,1,10,5,0,4,2,6],orientation:[1,1,1,1,1,1,1,1,1,1,1,1]},CORNERS:{permutation:[3,2,6,5,0,4,7,1],orientation:[1,2,1,2,2,1,2,1]},CENTERS:{permutation:[1,5,2,0,4,3],orientation:[1,1,1,1,3,1]}},M:{EDGES:{permutation:[2,1,6,3,0,5,4,7,8,9,10,11],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[4,1,0,3,5,2],orientation:[2,0,0,0,2,0]}},E:{EDGES:{permutation:[0,1,2,3,4,5,6,7,9,11,8,10],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,4,1,2,3,5],orientation:[0,0,0,0,0,0]}},S:{EDGES:{permutation:[0,3,2,7,4,1,6,5,8,9,10,11],orientation:[0,1,0,1,0,1,0,1,0,0,0,0]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[1,5,2,0,4,3],orientation:[1,1,0,1,0,1]}},u:{EDGES:{permutation:[1,2,3,0,4,5,6,7,10,8,11,9],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[1,2,3,0,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,2,3,4,1,5],orientation:[1,0,0,0,0,0]}},l:{EDGES:{permutation:[2,1,6,11,0,5,4,9,8,3,10,7],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[0,1,6,2,4,3,5,7],orientation:[0,0,2,1,0,2,1,0]},CENTERS:{permutation:[4,1,0,3,5,2],orientation:[2,1,0,0,2,0]}},f:{EDGES:{permutation:[9,3,2,7,8,1,6,5,0,4,10,11],orientation:[1,1,0,1,1,1,0,1,1,1,0,0]},CORNERS:{permutation:[3,1,2,5,0,4,6,7],orientation:[1,0,0,2,2,1,0,0]},CENTERS:{permutation:[1,5,2,0,4,3],orientation:[1,1,1,1,0,1]}},r:{EDGES:{permutation:[4,8,0,3,6,10,2,7,5,9,1,11],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[4,0,2,3,7,5,6,1],orientation:[2,1,0,0,1,0,0,2]},CENTERS:{permutation:[2,1,5,3,0,4],orientation:[0,0,0,1,2,2]}},b:{EDGES:{permutation:[0,5,10,1,4,7,11,3,8,9,6,2],orientation:[0,1,1,1,0,1,1,1,0,0,1,1]},CORNERS:{permutation:[0,7,1,3,4,5,2,6],orientation:[0,2,1,0,0,0,2,1]},CENTERS:{permutation:[3,0,2,5,4,1],orientation:[3,3,0,3,1,3]}},d:{EDGES:{permutation:[0,1,2,3,7,4,5,6,9,11,8,10],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[0,1,2,3,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,4,1,2,3,5],orientation:[0,0,0,0,0,1]}}}};pe.moves.Uw=pe.moves.u;pe.moves.Lw=pe.moves.l;pe.moves.Fw=pe.moves.f;pe.moves.Rw=pe.moves.r;pe.moves.Bw=pe.moves.b;pe.moves.Dw=pe.moves.d;pe.moves.Rv=pe.moves.x;pe.moves.Uv=pe.moves.y;pe.moves.Fv=pe.moves.z;pe.moves.Lv={EDGES:{permutation:[2,10,6,11,0,8,4,9,1,3,5,7],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[1,7,6,2,0,3,5,4],orientation:[2,1,2,1,1,2,1,2]},CENTERS:{permutation:[4,1,0,3,5,2],orientation:[2,1,0,3,2,0]}};pe.moves.Dv={EDGES:{permutation:[3,0,1,2,7,4,5,6,9,11,8,10],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[3,0,1,2,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,4,1,2,3,5],orientation:[3,0,0,0,0,1]}};pe.moves.Bv={EDGES:{permutation:[8,5,10,1,9,7,11,3,4,0,6,2],orientation:[1,1,1,1,1,1,1,1,1,1,1,1]},CORNERS:{permutation:[4,7,1,0,5,3,2,6],orientation:[1,2,1,2,2,1,2,1]},CENTERS:{permutation:[3,0,2,5,4,1],orientation:[3,3,3,3,1,3]}}});var Gi,He=U(()=>{Mi();Zo();Yn();i0();Mi();Gi=new Ie(pe)});var s0=U(()=>{He()});function h1(t){switch(t){case S.Regular:return m1;case S.Dim:return D1;case S.Ignored:return B1;case S.OrientationStickers:return c1;case S.Invisible:return p1;case S.IgnoreNonPrimary:return R1;case S.PermuteNonPrimary:return d1;case S.Ignoriented:return F1;case S.OrientationWithoutPermutation:return A1}}var S,$r,vt,Ne,en,Jo,Ur,m1,B1,c1,p1,R1,d1,D1,F1,A1,Zn,Xn,Jn=U(()=>{(function(a){a.Regular=\"Regular\",a.Dim=\"Dim\",a.Ignored=\"Ignored\",a.OrientationStickers=\"OrientationStickers\",a.Invisible=\"Invisible\",a.Ignoriented=\"Ignoriented\",a.IgnoreNonPrimary=\"IgnoreNonPrimary\",a.PermuteNonPrimary=\"PermuteNonPrimary\",a.OrientationWithoutPermutation=\"OrientationWithoutPermutation\"})(S||(S={}));$r=class{constructor(e,r){this.stickerings=new Map;for(let[n,o]of Object.entries(e.definition.orbits))this.stickerings.set(n,new Array(o.numPieces).fill(r))}},vt=\"regular\",Ne=\"ignored\",en=\"oriented\",Jo=\"invisible\",Ur=\"dim\",m1={facelets:[vt,vt,vt,vt,vt]},B1={facelets:[Ne,Ne,Ne,Ne,Ne]},c1={facelets:[en,en,en,en,en]},p1={facelets:[Jo,Jo,Jo,Jo]},R1={facelets:[vt,Ne,Ne,Ne,Ne]},d1={facelets:[Ur,vt,vt,vt,vt]},D1={facelets:[Ur,Ur,Ur,Ur,Ur]},F1={facelets:[Ur,Ne,Ne,Ne,Ne]},A1={facelets:[en,Ne,Ne,Ne,Ne]};Zn=class extends $r{constructor(e){super(e,S.Regular)}set(e,r){for(let[n,o]of this.stickerings.entries())for(let l=0;l<o.length;l++)e.stickerings.get(n)[l]&&(o[l]=r);return this}toAppearance(){let e={orbits:{}};for(let[r,n]of this.stickerings.entries()){let o=[],l={pieces:o};e.orbits[r]=l;for(let i of n)o.push(h1(i))}return e}},Xn=class{constructor(e){this.kpuzzle=e}and(e){let r=new $r(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits)){e:for(let l=0;l<o.numPieces;l++){r.stickerings.get(n)[l]=!0;for(let i of e)if(!i.stickerings.get(n)[l]){r.stickerings.get(n)[l]=!1;continue e}}}return r}or(e){let r=new $r(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits)){e:for(let l=0;l<o.numPieces;l++){r.stickerings.get(n)[l]=!1;for(let i of e)if(i.stickerings.get(n)[l]){r.stickerings.get(n)[l]=!0;continue e}}}return r}not(e){let r=new $r(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits))for(let l=0;l<o.numPieces;l++)r.stickerings.get(n)[l]=!e.stickerings.get(n)[l];return r}all(){return this.and(this.moves([]))}move(e){let r=this.kpuzzle.moveToTransformation(e),n=new $r(this.kpuzzle,!1);for(let[o,l]of Object.entries(this.kpuzzle.definition.orbits))for(let i=0;i<l.numPieces;i++)(r.transformationData[o].permutation[i]!==i||r.transformationData[o].orientation[i]!==0)&&(n.stickerings.get(o)[i]=!0);return n}moves(e){return e.map(r=>this.move(r))}}});function y1(t){(async()=>{a0=t;let e=Array.from(document.body.querySelectorAll(\"twisty-player\"));console.log(`Setting the custom stickering for ${e.length} players!`);let r=[];for(let n of e)r.push((async()=>{let o=await n.experimentalModel.stickeringProp.get();n.experimentalStickering=o===\"experimental-global-custom-1\"?\"experimental-global-custom-2\":\"experimental-global-custom-1\"})());await Promise.all(r),console.log(\"Success!\")})()}function u0(t,e){a0(t,e)}var a0,f0=U(()=>{Jn();a0=()=>{};globalThis.location&&new URL(location.href).searchParams.get(\"global-custom-stickerer\")===\"true\"&&(window.setGlobalCustomStickerer=y1,window.PieceStickering=S,console.log(\"Global custom stickerer enabled! (using: global-custom-stickerer=true)\"),console.log(\"Look here for inspiration:\",\"https://github.com/cubing/cubing.js/blob/81b5cab3e27d8defb39dd1e0a10bc9e8ba894d26/src/cubing/puzzles/stickerings/cube-stickerings.ts#L67\"))});async function Et(t,e){let r=await t.kpuzzle(),n=new Zn(r),o=new Xn(r),l=()=>o.move(\"U\"),i=()=>o.or(o.moves([\"U\",\"D\"])),s=()=>o.not(i()),u=()=>o.or(o.moves([\"L\",\"R\"])),a=()=>o.not(u()),f=()=>o.or(o.moves([\"F\",\"B\"])),g=()=>o.not(f()),L=()=>o.not(l()),m=()=>o.and([l(),a(),g()]),p=()=>o.and([o.and(o.moves([\"F\",\"R\"])),o.not(i())]),B=()=>o.and(o.moves([\"D\",\"R\",\"F\"])),F=()=>o.or([B(),p()]),A=()=>o.or([o.and([a(),s()]),o.and([a(),g()]),o.and([s(),g()])]),b=()=>o.or([o.and([a(),i(),f()]),o.and([s(),u(),f()]),o.and([g(),i(),u()])]),h=()=>o.not(o.or([A(),b()])),C=()=>o.or([a(),o.and([l(),b()])]);function E(){n.set(L(),S.Dim)}function q(){n.set(l(),S.PermuteNonPrimary),n.set(m(),S.Dim)}function re(){n.set(l(),S.IgnoreNonPrimary),n.set(m(),S.Regular)}function I(){n.set(l(),S.Ignoriented),n.set(m(),S.Dim)}switch(e){case\"full\":break;case\"PLL\":E(),q();break;case\"CLS\":E(),n.set(o.and(o.moves([\"D\",\"R\",\"F\"])),S.Regular),n.set(l(),S.Ignoriented),n.set(o.and([l(),h()]),S.IgnoreNonPrimary);break;case\"OLL\":E(),re();break;case\"COLL\":E(),q(),n.set(o.and([l(),h()]),S.Regular);break;case\"OCLL\":E(),I(),n.set(o.and([l(),h()]),S.IgnoreNonPrimary);break;case\"CLL\":E(),n.set(o.not(o.and([h(),l()])),S.Dim);break;case\"ELL\":E(),n.set(l(),S.Dim),n.set(o.and([l(),b()]),S.Regular);break;case\"ELS\":E(),re(),n.set(o.and([l(),h()]),S.Ignored),n.set(p(),S.Regular),n.set(B(),S.Ignored);break;case\"LL\":E();break;case\"F2L\":n.set(l(),S.Ignored);break;case\"ZBLL\":E(),n.set(l(),S.PermuteNonPrimary),n.set(m(),S.Dim),n.set(o.and([l(),h()]),S.Regular);break;case\"ZBLS\":E(),n.set(F(),S.Regular),re(),n.set(o.and([l(),h()]),S.Ignored);break;case\"WVLS\":case\"VLS\":E(),n.set(F(),S.Regular),re();break;case\"LS\":E(),n.set(F(),S.Regular),n.set(l(),S.Ignored),n.set(m(),S.Dim);break;case\"EO\":n.set(h(),S.Ignored),n.set(b(),S.OrientationWithoutPermutation);break;case\"EOline\":n.set(h(),S.Ignored),n.set(b(),S.OrientationWithoutPermutation),n.set(o.and(o.moves([\"D\",\"M\"])),S.Regular);break;case\"EOcross\":n.set(b(),S.OrientationWithoutPermutation),n.set(o.move(\"D\"),S.Regular),n.set(h(),S.Ignored);break;case\"CMLL\":n.set(L(),S.Dim),n.set(C(),S.Ignored),n.set(o.and([l(),h()]),S.Regular);break;case\"L6E\":n.set(o.not(C()),S.Dim);break;case\"L6EO\":n.set(o.not(C()),S.Dim),n.set(C(),S.OrientationWithoutPermutation),n.set(o.and([A(),i()]),S.OrientationStickers);break;case\"Daisy\":n.set(o.all(),S.Ignored),n.set(A(),S.Dim),n.set(o.and([o.move(\"D\"),A()]),S.Regular),n.set(o.and([o.move(\"U\"),b()]),S.IgnoreNonPrimary);break;case\"Cross\":n.set(o.all(),S.Ignored),n.set(A(),S.Dim),n.set(o.and([o.move(\"D\"),A()]),S.Regular),n.set(o.and([o.move(\"D\"),b()]),S.Regular);break;case\"2x2x2\":n.set(o.or(o.moves([\"U\",\"F\",\"R\"])),S.Ignored),n.set(o.and([o.or(o.moves([\"U\",\"F\",\"R\"])),A()]),S.Dim);break;case\"2x2x3\":n.set(o.all(),S.Dim),n.set(o.or(o.moves([\"U\",\"F\",\"R\"])),S.Ignored),n.set(o.and([o.or(o.moves([\"U\",\"F\",\"R\"])),A()]),S.Dim),n.set(o.and([o.move(\"F\"),o.not(o.or(o.moves([\"U\",\"R\"])))]),S.Regular);break;case\"Void Cube\":n.set(A(),S.Invisible);break;case\"picture\":case\"invisible\":n.set(o.all(),S.Invisible);break;case\"centers-only\":n.set(o.not(A()),S.Ignored);break;case\"experimental-global-custom-1\":case\"experimental-global-custom-2\":u0(n,o);break;default:console.warn(`Unsupported stickering for ${t.id}: ${e}. Setting all pieces to dim.`),n.set(o.and(o.moves([])),S.Dim)}return n.toAppearance()}async function tn(){return[\"full\",\"PLL\",\"CLS\",\"OLL\",\"COLL\",\"OCLL\",\"ELL\",\"ELS\",\"LL\",\"F2L\",\"ZBLL\",\"ZBLS\",\"WVLS\",\"VLS\",\"LS\",\"EO\",\"EOline\",\"EOcross\",\"CMLL\",\"L6E\",\"L6EO\",\"Daisy\",\"Cross\",\"2x2x2\",\"2x2x3\",\"Void Cube\",\"picture\",\"invisible\",\"centers-only\",\"experimental-global-custom-1\",\"experimental-global-custom-2\"]}var rn=U(()=>{Jn();f0()});function Oe(t){let e=null;return()=>e??(e=t())}var br=U(()=>{});var $n,g0=U(()=>{$n=class{constructor(e,r){this.facenames=e;this.prefixFree=!0;this.gripnames=[];r&&(this.gripnames=r);for(let n=0;this.prefixFree&&n<e.length;n++)for(let o=0;this.prefixFree&&o<e.length;o++)n!==o&&e[n].startsWith(e[o])&&(this.prefixFree=!1)}setGripNames(e){this.gripnames=e}splitByFaceNames(e){let r=[],n=0;for(;n<e.length;){n>0&&n<e.length&&e[n]===\"_\"&&n++;let o=-1;for(let l=0;l<this.facenames.length;l++)e.substr(n).startsWith(this.facenames[l])&&(o<0||this.facenames[l].length>this.facenames[o].length)&&(o=l);if(o>=0)r.push(o),n+=this.facenames[o].length;else throw new Error(\"Could not split \"+e+\" into face names.\")}return r}joinByFaceIndices(e){let r=\"\",n=[];for(let o=0;o<e.length;o++)n.push(r),n.push(this.facenames[e[o]]),this.prefixFree||(r=\"_\");return n.join(\"\")}spinmatch(e,r){if(e===r)return!0;try{let n=this.splitByFaceNames(e),o=this.splitByFaceNames(r);if(n.length!==o.length&&n.length<3)return!1;for(let l=0;l<n.length;l++){for(let s=0;s<l;s++)if(n[l]===n[s])return!1;let i=!1;for(let s=0;s<o.length;s++)if(n[l]===o[s]){i=!0;break}if(!i)return!1}return!0}catch(n){return!1}}unswizzle(e){(e.endsWith(\"v\")||e.endsWith(\"w\"))&&e[0]<=\"Z\"&&(e=e.slice(0,e.length-1));let r=e.toUpperCase();for(let n=0;n<this.gripnames.length;n++){let o=this.gripnames[n];if(this.spinmatch(r,o))return o}return e}}});var nn,L0=U(()=>{nn=class{notationToInternal(e){return e}notationToExternal(e){return e}}});var $o,m0=U(()=>{Ae();$o=class{constructor(e,r){this.child=e;this.sw=r}notationToInternal(e){return e.family===\"T\"&&e.innerLayer===void 0&&e.outerLayer===void 0?new c(new G(\"FLRv\",e.innerLayer,e.outerLayer),e.amount):this.child.notationToInternal(e)}notationToExternal(e){let r=e.family;return r.length>0&&r[r.length-1]===\"v\"&&(r=r.substring(0,r.length-1)),this.sw.spinmatch(r,\"FLUR\")?new c(new G(\"T\",e.innerLayer,e.outerLayer),e.amount):this.child.notationToExternal(e)}}});var eo,B0=U(()=>{Ae();eo=class{constructor(e,r){this.internalNames=e;this.externalNames=r}convertString(e,r,n){let o=\"\";(e.endsWith(\"v\")||e.endsWith(\"v\"))&&e<=\"_\"&&(o=e.slice(e.length-1),e=e.slice(0,e.length-1));let l=e.toUpperCase(),i=!1;return e!==l&&(i=!0,e=l),e=n.joinByFaceIndices(r.splitByFaceNames(e)),i&&(e=e.toLowerCase()),e+o}convert(e,r,n){let o=e.family,l=this.convertString(o,r,n);return o===l?e:new c(new G(l,e.innerLayer,e.outerLayer),e.amount)}notationToInternal(e){return this.convert(e,this.externalNames,this.internalNames)}notationToExternal(e){return this.convert(e,this.internalNames,this.externalNames)}}});var el,c0=U(()=>{Ae();el=class{constructor(e){this.child=e}notationToInternal(e){if(e.innerLayer===void 0&&e.outerLayer===void 0){if(Math.abs(e.amount)===1){if(e.family===\"R++\")return new c(new G(\"L\",3,2),-2*e.amount);if(e.family===\"R--\")return new c(new G(\"L\",3,2),2*e.amount);if(e.family===\"D++\")return new c(new G(\"U\",3,2),-2*e.amount);if(e.family===\"D--\")return new c(new G(\"U\",3,2),2*e.amount);if(e.family===\"R_PLUSPLUS_\")return new c(new G(\"L\",3,2),-2*e.amount);if(e.family===\"D_PLUSPLUS_\")return new c(new G(\"U\",3,2),-2*e.amount)}if(e.family===\"y\")return new c(\"Uv\",e.amount)}return this.child.notationToInternal(e)}notationToExternal(e){return e.family===\"Uv\"?new c(new G(\"y\",e.innerLayer,e.outerLayer),e.amount):e.family===\"Dv\"?new c(\"y\",-e.amount):this.child.notationToExternal(e)}}});var tl,p0=U(()=>{Ae();tl=class{constructor(e){this.slices=e}notationToInternal(e){let r=e.family;return!e.innerLayer&&!e.outerLayer&&(r===\"x\"?e=new c(\"Rv\",e.amount):r===\"y\"?e=new c(\"Uv\",e.amount):r===\"z\"&&(e=new c(\"Fv\",e.amount)),(this.slices&1)==1&&(r===\"E\"?e=new c(new G(\"D\",(this.slices+1)/2),e.amount):r===\"M\"?e=new c(new G(\"L\",(this.slices+1)/2),e.amount):r===\"S\"&&(e=new c(new G(\"F\",(this.slices+1)/2),e.amount))),this.slices>2&&(r===\"e\"?e=new c(new G(\"D\",this.slices-1,2),e.amount):r===\"m\"?e=new c(new G(\"L\",this.slices-1,2),e.amount):r===\"s\"&&(e=new c(new G(\"F\",this.slices-1,2),e.amount)))),e}notationToExternal(e){let r=e.family;if(!e.innerLayer&&!e.outerLayer){if(r===\"Rv\")return new c(\"x\",e.amount);if(r===\"Uv\")return new c(\"y\",e.amount);if(r===\"Fv\")return new c(\"z\",e.amount);if(r===\"Lv\")return new c(\"x\",-e.amount);if(r===\"Dv\")return new c(\"y\",-e.amount);if(r===\"Bv\")return new c(\"z\",-e.amount)}return e}}});var U1,b1,R0,d0,D0,to,rl,F0=U(()=>{Ae();U1={U:\"frl\",L:\"fld\",R:\"fdr\",B:\"dlr\",u:\"FRL\",l:\"FLD\",r:\"FDR\",b:\"DLR\",Uv:\"FRLv\",Lv:\"FLDv\",Rv:\"FDRv\",Bv:\"DLRv\",D:\"D\",F:\"F\",BL:\"L\",BR:\"R\"},b1={U:\"FRL\",L:\"FLD\",R:\"FDR\",B:\"DLR\",u:\"frl\",l:\"fld\",r:\"fdr\",b:\"dlr\",Uv:\"FRLv\",Lv:\"FLDv\",Rv:\"FDRv\",Bv:\"DLRv\",D:\"D\",F:\"F\",BL:\"L\",BR:\"R\",d:\"d\",f:\"f\",bl:\"l\",br:\"r\"},R0={U:\"FRL\",L:\"FLD\",R:\"FDR\",B:\"DLR\"},d0=new G(\"y\"),D0=new G(\"Dv\"),to=class{constructor(e){this.child=e;this.wcaHack=!1;this.map=U1}notationToInternal(e){if(this.wcaHack&&e.innerLayer===2&&e.outerLayer===null){let n=R0[e.family];if(n)return new c(new G(n,e.innerLayer,e.outerLayer),e.amount)}let r=this.map[e.family];return r?new c(new G(r,e.innerLayer,e.outerLayer),e.amount):d0.isIdentical(e.quantum)?new c(D0,-e.amount):null}notationToExternal(e){if(this.wcaHack&&e.innerLayer===2&&e.outerLayer===null){for(let[r,n]of Object.entries(R0))if(this.child.spinmatch(e.family,n))return new c(new G(r,e.innerLayer,e.outerLayer),e.amount)}for(let[r,n]of Object.entries(this.map))if(this.child.spinmatch(e.family,n))return new c(new G(r,e.innerLayer,e.outerLayer),e.amount);return D0.isIdentical(e.quantum)?new c(d0,-e.amount):null}},rl=class extends to{constructor(e){super(e);this.map=b1}}});var A0,h0,y0,U0,b0,S0,x0,nl,w0=U(()=>{Ae();A0={U:\"UBL\",UL:\"ULF\",F:\"UFR\",UR:\"URB\",B:\"DBL\",D:\"DFR\",L:\"DLF\",R:\"DRB\",Uv:\"UBLv\",ULv:\"ULFv\",Fv:\"UFRv\",URv:\"URBv\",Bv:\"DBLv\",Dv:\"DFRv\",Lv:\"DLFv\",Rv:\"DRBv\"},h0=new G(\"x\"),y0=new G(\"Rv\"),U0=new G(\"y\"),b0=new G(\"Uv\"),S0=new G(\"z\"),x0=new G(\"Fv\"),nl=class{constructor(e){this.child=e}notationToInternal(e){if(e.innerLayer||e.outerLayer)return null;let r=A0[e.family];return r?new c(new G(r,e.outerLayer,e.innerLayer),e.amount):h0.isIdentical(e.quantum)?new c(y0,e.amount):U0.isIdentical(e.quantum)?new c(b0,e.amount):S0.isIdentical(e.quantum)?new c(x0,e.amount):null}notationToExternal(e){for(let[r,n]of Object.entries(A0))if(this.child.spinmatch(e.family,n))return new c(new G(r,e.innerLayer,e.outerLayer),e.amount);return y0.isIdentical(e.quantum)?new c(h0,e.amount):b0.isIdentical(e.quantum)?new c(U0,e.amount):x0.isIdentical(e.quantum)?new c(S0,e.amount):null}}});var Ti=U(()=>{L0();m0();B0();c0();p0();F0();w0()});function v0(t){let e=0,r={};for(;e<t.length&&t[e][0]===\"-\";){let o=t[e++];if(o===\"--rotations\")r.addRotations=!0;else if(o===\"--allmoves\")r.allMoves=!0;else if(o===\"--outerblockmoves\")r.outerBlockMoves=!0;else if(o===\"--vertexmoves\")r.vertexMoves=!0;else if(o===\"--nocorners\")r.includeCornerOrbits=!1;else if(o===\"--noedges\")r.includeEdgeOrbits=!1;else if(o===\"--noorientation\")r.fixedOrientation=!0;else if(o===\"--nocenters\")r.includeCenterOrbits=!1;else if(o===\"--omit\")r.excludeOrbits=t[e].split(\",\"),e++;else if(o===\"--moves\")r.moveList=t[e].split(\",\"),e++;else if(o===\"--optimize\")r.optimizeOrbits=!0;else if(o===\"--scramble\")r.scrambleAmount=100;else if(o===\"--fixcorner\")r.fixedPieceType=\"v\";else if(o===\"--fixedge\")r.fixedPieceType=\"e\";else if(o===\"--fixcenter\")r.fixedPieceType=\"f\";else if(o===\"--orientcenters\")r.orientCenters=!0;else if(o===\"--puzzleorientation\")r.puzzleOrientation=JSON.parse(t[e]),e++;else throw new Error(\"Bad option: \"+o)}return{puzzleDescription:ro(t.slice(e).join(\" \")),options:r}}var Ii,Ni=U(()=>{ol();Ii=class{constructor(e={}){this.verbosity=0;this.allMoves=!1;this.vertexMoves=!1;this.addRotations=!1;this.moveList=null;this.fixedOrientation=!1;this.fixedPieceType=null;this.orientCenters=!1;this.includeCornerOrbits=!0;this.includeCenterOrbits=!0;this.includeEdgeOrbits=!0;this.excludeOrbits=[];this.optimizeOrbits=!1;this.grayCorners=!1;this.grayCenters=!1;this.grayEdges=!1;this.puzzleOrientation=null;this.puzzleOrientations=null;this.scrambleAmount=0;Object.assign(this,e)}}});function tr(t){if(!Oi[t]){let e=Array(t);for(let r=0;r<t;r++)e[r]=0;Oi[t]=e}return Oi[t]}function kt(t){if(!_i[t]){let e=Array(t);for(let r=0;r<t;r++)e[r]=r;_i[t]=e}return _i[t]}function E0(t){return new gt(kt(t))}function k0(t){let e=1;for(;t>1;)e*=t,t--;return e}function S1(t,e){if(t>e){let r=t;t=e,e=r}for(;t>0;){let r=e%t;e=t,t=r}return e}function Wi(t,e){return t/S1(t,e)*e}var Oi,_i,gt,ll=U(()=>{Oi=[],_i=[];gt=class{constructor(e){this.n=e.length,this.p=e}toString(){return\"Perm[\"+this.p.join(\" \")+\"]\"}mul(e){let r=Array(this.n);for(let n=0;n<this.n;n++)r[n]=e.p[this.p[n]];return new gt(r)}rmul(e){let r=Array(this.n);for(let n=0;n<this.n;n++)r[n]=this.p[e.p[n]];return new gt(r)}inv(){let e=Array(this.n);for(let r=0;r<this.n;r++)e[this.p[r]]=r;return new gt(e)}compareTo(e){for(let r=0;r<this.n;r++)if(this.p[r]!==e.p[r])return this.p[r]-e.p[r];return 0}toGap(){let e=new Array,r=new Array(this.n);for(let n=0;n<this.p.length;n++){if(r[n]||this.p[n]===n)continue;let o=new Array;for(let l=n;!r[l];l=this.p[l])o.push(1+l),r[l]=!0;e.push(\"(\"+o.join(\",\")+\")\")}return e.join(\"\")}order(){let e=1,r=new Array(this.n);for(let n=0;n<this.p.length;n++){if(r[n]||this.p[n]===n)continue;let o=0;for(let l=n;!r[l];l=this.p[l])o++,r[l]=!0;e=Wi(e,o)}return e}}});function Ki(t,e){let r=c.fromString(e),n=t.notationToExternal(r);return n===null||r===n?e:n.toString()}function z0(t,e){let r=t.moveops.length;if(r>30)throw new Error(\"Canon info too big for bitmask\");let n=[],o=[];for(let i=0;i<r;i++){let s=t.moveops[i];n.push(s.order());let u=0;for(let a=0;a<r;a++){if(a===i)continue;let f=t.moveops[a];s.mul(f).equal(f.mul(s))&&(u|=1<<a)}o.push(u)}let l={};l[0]=1;for(let i=0;i<100;i++){let s=0,u={},a=0;for(let f in l){let g=+f,L=l[g];s+=L,a++;for(let m=0;m<n.length;m++)if((g>>m&1)==0&&(g&o[m]&(1<<m)-1)==0){let p=g&o[m]|1<<m;u[p]===void 0&&(u[p]=0),u[p]+=(n[m]-1)*L}}e(`${i}: canonseq ${s} states ${a}`),l=u}}var no,x1,on,Ft,Ot,Qi,rr,ln,ji,C0=U(()=>{Ae();Ti();ll();no=class{constructor(e,r){this.size=e;this.mod=r}reassemblySize(){return k0(this.size)*Math.pow(this.mod,this.size)}},x1=0;on=class{constructor(e,r,n,o,l){this.orbitnames=e;this.orbitdefs=r;this.solved=n;this.movenames=o;this.moveops=l}transformToKTransformationData(e){let r={};for(let n=0;n<this.orbitnames.length;n++)r[this.orbitnames[n]]=e.orbits[n].toKPuzzle();return r}static transformToKTransformationData(e,r){let n={};for(let o=0;o<e.length;o++)n[e[o]]=r.orbits[o].toKPuzzle();return n}toKsolve(e,r=new nn){let n=[];n.push(\"Name \"+e),n.push(\"\");for(let o=0;o<this.orbitnames.length;o++)n.push(`Set ${this.orbitnames[o]} ${this.orbitdefs[o].size} ${this.orbitdefs[o].mod}`);n.push(\"\"),n.push(\"Solved\");for(let o=0;o<this.orbitnames.length;o++)this.solved.orbits[o].appendDefinition(n,this.orbitnames[o],!1,!1);n.push(\"End\");for(let o=0;o<this.movenames.length;o++){n.push(\"\");let l=Ki(r,this.movenames[o]),i=!1;l[l.length-1]===\"'\"&&(i=!0,l=l.substring(0,l.length-1)),n.push(\"Move \"+l);for(let s=0;s<this.orbitnames.length;s++)i?this.moveops[o].orbits[s].inv().appendDefinition(n,this.orbitnames[s],!0):this.moveops[o].orbits[s].appendDefinition(n,this.orbitnames[s],!0);n.push(\"End\")}return n}toKPuzzleDefinition(e){let r={},n={};for(let l=0;l<this.orbitnames.length;l++){r[this.orbitnames[l]]={numPieces:this.orbitdefs[l].size,numOrientations:this.orbitdefs[l].mod};let i=this.solved.orbits[l].toKPuzzle();n[this.orbitnames[l]]={pieces:i.permutation,orientation:i.orientation}}let o={};if(e)for(let l=0;l<this.movenames.length;l++)o[this.movenames[l]]=this.transformToKTransformationData(this.moveops[l]);return{name:`PG3D #${++x1}`,orbits:r,startStateData:n,moves:o}}optimize(){let e=[],r=[],n=[],o=[];for(let l=0;l<this.moveops.length;l++)o.push([]);for(let l=0;l<this.orbitdefs.length;l++){let i=this.orbitdefs[l].mod,s=this.orbitdefs[l].size,u=new ji(s),a=new Array(this.orbitdefs[l].size);for(let m=0;m<s;m++)a[m]=!1;for(let m=0;m<this.moveops.length;m++)for(let p=0;p<s;p++)(this.moveops[m].orbits[l].perm[p]!==p||this.moveops[m].orbits[l].ori[p]!==0)&&(a[p]=!0,u.union(p,this.moveops[m].orbits[l].perm[p]));let f=!0;if(i>1){f=!1;let m=new ji(this.orbitdefs[l].size*i);for(let p=0;p<this.moveops.length;p++)for(let B=0;B<s;B++)if(this.moveops[p].orbits[l].perm[B]!==B||this.moveops[p].orbits[l].ori[B]!==0)for(let F=0;F<i;F++)m.union(B*i+F,this.moveops[p].orbits[l].perm[B]*i+(F+this.moveops[p].orbits[l].ori[B])%i);for(let p=0;!f&&p<s;p++)for(let B=1;B<i;B++)m.find(p*i)===m.find(p*i+B)&&(f=!0);for(let p=0;!f&&p<s;p++)for(let B=0;B<p;B++)this.solved.orbits[l].perm[p]===this.solved.orbits[l].perm[B]&&(f=!0)}let g=-1,L=!1;for(let m=0;m<this.orbitdefs[l].size;m++)if(a[m]){let p=u.find(m);g<0?g=p:g!==p&&(L=!0)}for(let m=0;m<this.orbitdefs[l].size;m++){if(!a[m]||u.find(m)!==m)continue;let B=[],F=[],A=0;for(let b=0;b<this.orbitdefs[l].size;b++)u.find(b)===m&&(B[A]=b,F[b]=A,A++);if(L?e.push(`${this.orbitnames[l]}_p${m}`):e.push(this.orbitnames[l]),f){r.push(new no(A,this.orbitdefs[l].mod)),n.push(this.solved.orbits[l].remapVS(B,A));for(let b=0;b<this.moveops.length;b++)o[b].push(this.moveops[b].orbits[l].remap(B,F,A))}else{r.push(new no(A,1)),n.push(this.solved.orbits[l].remapVS(B,A).killOri());for(let b=0;b<this.moveops.length;b++)o[b].push(this.moveops[b].orbits[l].remap(B,F,A).killOri())}}}return new on(e,r,new ln(n),this.movenames,o.map(l=>new rr(l)))}scramble(e){let r=[];for(let o=0;o<this.moveops.length;o++)r[o]=this.moveops[o];for(let o=0;o<r.length;o++){let l=Math.floor(Math.random()*r.length),i=r[o];r[o]=r[l],r[l]=i}e<r.length&&(e=r.length);for(let o=0;o<e;o++){let l=Math.floor(Math.random()*r.length),i=Math.floor(Math.random()*r.length),s=Math.floor(Math.random()*this.moveops.length);r[l]=r[l].mul(r[i]).mul(this.moveops[s]),Math.random()<.1&&(r[l]=r[l].mul(this.moveops[s]))}let n=r[0];for(let o=1;o<r.length;o++)n=n.mul(r[o]);this.solved=this.solved.mul(n)}reassemblySize(){let e=1;for(let r=0;r<this.orbitdefs.length;r++)e*=this.orbitdefs[r].reassemblySize();return e}},Ft=class{constructor(e,r,n){this.perm=e;this.ori=r;this.orimod=n}static e(e,r){return new Ft(kt(e),tr(e),r)}mul(e){let r=this.perm.length,n=new Array(r);if(this.orimod===1){for(let o=0;o<r;o++)n[o]=this.perm[e.perm[o]];return new Ft(n,this.ori,this.orimod)}else{let o=new Array(r);for(let l=0;l<r;l++)n[l]=this.perm[e.perm[l]],o[l]=(this.ori[e.perm[l]]+e.ori[l])%this.orimod;return new Ft(n,o,this.orimod)}}inv(){let e=this.perm.length,r=new Array(e),n=new Array(e);for(let o=0;o<e;o++)r[this.perm[o]]=o,n[this.perm[o]]=(this.orimod-this.ori[o])%this.orimod;return new Ft(r,n,this.orimod)}equal(e){let r=this.perm.length;for(let n=0;n<r;n++)if(this.perm[n]!==e.perm[n]||this.ori[n]!==e.ori[n])return!1;return!0}killOri(){let e=this.perm.length;for(let r=0;r<e;r++)this.ori[r]=0;return this.orimod=1,this}toPerm(){let e=this.orimod;if(e===1)return new gt(this.perm);let r=this.perm.length,n=new Array(r*e);for(let o=0;o<r;o++)for(let l=0;l<e;l++)n[o*e+l]=e*this.perm[o]+(this.ori[o]+l)%e;return new gt(n)}identicalPieces(){let e=[],r=this.perm.length,n=[];for(let o=0;o<r;o++){let l=this.perm[o];if(e[l]===void 0){let i=[o];e[l]=!0;for(let s=o+1;s<r;s++)this.perm[s]===l&&i.push(s);n.push(i)}}return n}order(){return this.toPerm().order()}isIdentity(){let e=this.perm.length;if(this.perm===kt(e)&&this.ori===tr(e))return!0;for(let r=0;r<e;r++)if(this.perm[r]!==r||this.ori[r]!==0)return!1;return!0}zeroOris(){let e=this.perm.length;if(this.ori===tr(e))return!0;for(let r=0;r<e;r++)if(this.ori[r]!==0)return!1;return!0}remap(e,r,n){let o=new Array(n),l=new Array(n);for(let i=0;i<n;i++)o[i]=r[this.perm[e[i]]],l[i]=this.ori[e[i]];return new Ft(o,l,this.orimod)}remapVS(e,r){let n=new Array(r),o=new Array(r),l=0,i=[];for(let s=0;s<r;s++){let u=this.perm[e[s]];i[u]===void 0&&(i[u]=l++),n[s]=i[u],o[s]=this.ori[e[s]]}return new Ft(n,o,this.orimod)}appendDefinition(e,r,n,o=!0){if(!(o&&this.isIdentity())&&(e.push(r),e.push(this.perm.map(l=>l+1).join(\" \")),!this.zeroOris()))if(n){let l=new Array(this.ori.length);for(let i=0;i<l.length;i++)l[this.perm[i]]=this.ori[i];e.push(l.join(\" \"))}else e.push(this.ori.join(\" \"))}toKPuzzle(){let e=this.perm.length;return this.isIdentity()?(Ft.kcache[e]||(Ft.kcache[e]={permutation:kt(e),orientation:tr(e)}),Ft.kcache[e]):{permutation:this.perm,orientation:this.ori}}},Ot=Ft;Ot.kcache=[];Qi=class{constructor(e){this.orbits=e}internalMul(e){let r=[];for(let n=0;n<this.orbits.length;n++)r.push(this.orbits[n].mul(e.orbits[n]));return r}internalInv(){let e=[];for(let r of this.orbits)e.push(r.inv());return e}equal(e){for(let r=0;r<this.orbits.length;r++)if(!this.orbits[r].equal(e.orbits[r]))return!1;return!0}killOri(){for(let e of this.orbits)e.killOri();return this}toPerm(){let e=new Array,r=0;for(let o of this.orbits){let l=o.toPerm();e.push(l),r+=l.n}let n=new Array(r);r=0;for(let o of e){for(let l=0;l<o.n;l++)n[r+l]=r+o.p[l];r+=o.n}return new gt(n)}identicalPieces(){let e=[],r=0;for(let n of this.orbits){let o=n.orimod,l=n.identicalPieces();for(let i=0;i<l.length;i++)e.push(l[i].map(s=>s*o+r));r+=o*n.perm.length}return e}order(){let e=1;for(let r of this.orbits)e=Wi(e,r.order());return e}},rr=class extends Qi{constructor(e){super(e)}mul(e){return new rr(this.internalMul(e))}mulScalar(e){if(e===0)return this.e();let r=this;for(e<0&&(r=r.inv(),e=-e);(e&1)==0;)r=r.mul(r),e>>=1;if(e===1)return r;let n=r,o=this.e();for(;e>0;)e&1&&(o=o.mul(n)),e>1&&(n=n.mul(n)),e>>=1;return o}inv(){return new rr(this.internalInv())}e(){return new rr(this.orbits.map(e=>Ot.e(e.perm.length,e.orimod)))}},ln=class extends Qi{constructor(e){super(e)}mul(e){return new ln(this.internalMul(e))}},ji=class{constructor(e){this.n=e;this.heads=new Array(e);for(let r=0;r<e;r++)this.heads[r]=r}find(e){let r=this.heads[e];return this.heads[r]===r||(r=this.find(this.heads[r]),this.heads[e]=r),r}union(e,r){let n=this.find(e),o=this.find(r);n<o?this.heads[o]=n:n>o&&(this.heads[n]=o)}}});var il,P0=U(()=>{il={\"2x2x2\":\"c f 0\",\"3x3x3\":\"c f 0.333333333333333\",\"4x4x4\":\"c f 0.5 f 0\",\"5x5x5\":\"c f 0.6 f 0.2\",\"6x6x6\":\"c f 0.666666666666667 f 0.333333333333333 f 0\",\"7x7x7\":\"c f 0.714285714285714 f 0.428571428571429 f 0.142857142857143\",\"8x8x8\":\"c f 0.75 f 0.5 f 0.25 f 0\",\"9x9x9\":\"c f 0.777777777777778 f 0.555555555555556 f 0.333333333333333 f 0.111111111111111\",\"10x10x10\":\"c f 0.8 f 0.6 f 0.4 f 0.2 f 0\",\"11x11x11\":\"c f 0.818181818181818 f 0.636363636363636 f 0.454545454545455 f 0.272727272727273 f 0.0909090909090909\",\"12x12x12\":\"c f 0.833333333333333 f 0.666666666666667 f 0.5 f 0.333333333333333 f 0.166666666666667 f 0\",\"13x13x13\":\"c f 0.846153846153846 f 0.692307692307692 f 0.538461538461538 f 0.384615384615385 f 0.230769230769231 f 0.0769230769230769\",\"20x20x20\":\"c f 0 f .1 f .2 f .3 f .4 f .5 f .6 f .7 f .8 f .9\",\"30x30x30\":\"c f 0 f .066667 f .133333 f .2 f .266667 f .333333 f .4 f .466667 f .533333 f .6 f .666667 f .733333 f .8 f .866667 f .933333\",\"40x40x40\":\"c f 0 f .05 f .1 f .15 f .2 f .25 f .3 f .35 f .4 f .45 f .5 f .55 f .6 f .65 f .7 f .75 f .8 f .85 f .9 f .95\",skewb:\"c v 0\",\"master skewb\":\"c v 0.275\",\"professor skewb\":\"c v 0 v 0.38\",\"compy cube\":\"c v 0.915641442663986\",helicopter:\"c e 0.707106781186547\",\"curvy copter\":\"c e 0.83\",dino:\"c v 0.577350269189626\",\"little chop\":\"c e 0\",pyramorphix:\"t e 0\",mastermorphix:\"t e 0.346184634065199\",pyraminx:\"t v 0.333333333333333 v 1.66666666666667\",tetraminx:\"t v 0.333333333333333\",\"master pyraminx\":\"t v 0 v 1 v 2\",\"master tetraminx\":\"t v 0 v 1\",\"professor pyraminx\":\"t v -0.2 v 0.6 v 1.4 v 2.2\",\"professor tetraminx\":\"t v -0.2 v 0.6 v 1.4\",\"Jing pyraminx\":\"t f 0\",\"master pyramorphix\":\"t e 0.866025403784437\",megaminx:\"d f 0.7\",gigaminx:\"d f 0.64 f 0.82\",teraminx:\"d f 0.64 f 0.76 f 0.88\",petaminx:\"d f 0.64 f 0.73 f 0.82 f 0.91\",examinx:\"d f 0.64 f 0.712 f 0.784 f 0.856 f 0.928\",zetaminx:\"d f 0.64 f 0.7 f 0.76 f 0.82 f 0.88 f 0.94\",yottaminx:\"d f 0.64 f 0.6914 f 0.7429 f 0.7943 f 0.8457 f 0.8971 f 0.9486\",pentultimate:\"d f 0\",\"master pentultimate\":\"d f 0.1\",\"elite pentultimate\":\"d f 0 f 0.145905\",starminx:\"d v 0.937962370425399\",\"starminx 2\":\"d f 0.23606797749979\",\"pyraminx crystal\":\"d f 0.447213595499989\",chopasaurus:\"d v 0\",\"big chop\":\"d e 0\",\"skewb diamond\":\"o f 0\",FTO:\"o f 0.333333333333333\",\"master FTO\":\"o f 0.5 f 0\",\"Christopher's jewel\":\"o v 0.577350269189626\",octastar:\"o e 0\",\"Trajber's octahedron\":\"o v 0.433012701892219\",\"radio chop\":\"i f 0\",icosamate:\"i v 0\",\"icosahedron 2\":\"i v 0.18759247376021\",\"icosahedron 3\":\"i v 0.18759247376021 e 0\",\"icosahedron static faces\":\"i v 0.84\",\"icosahedron moving faces\":\"i v 0.73\",\"Eitan's star\":\"i f 0.61803398874989\",\"2x2x2 + dino\":\"c f 0 v 0.577350269189626\",\"2x2x2 + little chop\":\"c f 0 e 0\",\"dino + little chop\":\"c v 0.577350269189626 e 0\",\"2x2x2 + dino + little chop\":\"c f 0 v 0.577350269189626 e 0\",\"megaminx + chopasaurus\":\"d f 0.61803398875 v 0\",\"starminx combo\":\"d f 0.23606797749979 v 0.937962370425399\"}});function sl(t){let e=new _(0,0,0,0);for(let r=0;r<t.length;r++)e=e.sum(t[r]);return e.smul(1/t.length)}function M0(t,e,r,n){let o=n[t].intersect3(n[e],n[r]);if(!o)return o;for(let l=0;l<n.length;l++)if(l!==t&&l!==e&&l!==r){let i=n[l].b*o.b+n[l].c*o.c+n[l].d*o.d;if(n[l].a>0&&i>n[l].a||n[l].a<0&&i<n[l].a)return!1}return o}var Sr,_,al=U(()=>{Sr=1e-9;_=class{constructor(e,r,n,o){this.a=e;this.b=r;this.c=n;this.d=o}mul(e){return new _(this.a*e.a-this.b*e.b-this.c*e.c-this.d*e.d,this.a*e.b+this.b*e.a+this.c*e.d-this.d*e.c,this.a*e.c-this.b*e.d+this.c*e.a+this.d*e.b,this.a*e.d+this.b*e.c-this.c*e.b+this.d*e.a)}toString(){return`Q[${this.a},${this.b},${this.c},${this.d}]`}dist(e){return Math.hypot(this.a-e.a,this.b-e.b,this.c-e.c,this.d-e.d)}len(){return Math.hypot(this.a,this.b,this.c,this.d)}cross(e){return new _(0,this.c*e.d-this.d*e.c,this.d*e.b-this.b*e.d,this.b*e.c-this.c*e.b)}dot(e){return this.b*e.b+this.c*e.c+this.d*e.d}normalize(){let e=Math.sqrt(this.dot(this));return new _(this.a/e,this.b/e,this.c/e,this.d/e)}makenormal(){return new _(0,this.b,this.c,this.d).normalize()}normalizeplane(){let e=Math.hypot(this.b,this.c,this.d);return new _(this.a/e,this.b/e,this.c/e,this.d/e)}smul(e){return new _(this.a*e,this.b*e,this.c*e,this.d*e)}sum(e){return new _(this.a+e.a,this.b+e.b,this.c+e.c,this.d+e.d)}sub(e){return new _(this.a-e.a,this.b-e.b,this.c-e.c,this.d-e.d)}angle(){return 2*Math.acos(this.a)}invrot(){return new _(this.a,-this.b,-this.c,-this.d)}det3x3(e,r,n,o,l,i,s,u,a){return e*(l*a-i*u)+r*(i*s-o*a)+n*(o*u-l*s)}rotateplane(e){let r=e.mul(new _(0,this.b,this.c,this.d)).mul(e.invrot());return r.a=this.a,r}orthogonal(){let e=Math.abs(this.b),r=Math.abs(this.c),n=Math.abs(this.d);return e<r&&e<n?this.cross(new _(0,1,0,0)).normalize():r<e&&r<n?this.cross(new _(0,0,1,0)).normalize():this.cross(new _(0,0,0,1)).normalize()}pointrotation(e){let r=this.normalize();if(e=e.normalize(),r.sub(e).len()<Sr)return new _(1,0,0,0);let n=r.sum(e);n.len()<Sr?n=n.orthogonal():n=n.normalize();let o=r.cross(n);return o.a=r.dot(n),o}unproject(e){return this.sum(e.smul(-this.dot(e)/(this.len()*e.len())))}rotatepoint(e){return e.mul(this).mul(e.invrot())}rotateface(e){return e.map(r=>r.rotatepoint(this))}intersect3(e,r){let n=this.det3x3(this.b,this.c,this.d,e.b,e.c,e.d,r.b,r.c,r.d);return Math.abs(n)<Sr?!1:new _(0,this.det3x3(this.a,this.c,this.d,e.a,e.c,e.d,r.a,r.c,r.d)/n,this.det3x3(this.b,this.a,this.d,e.b,e.a,e.d,r.b,r.a,r.d)/n,this.det3x3(this.b,this.c,this.a,e.b,e.c,e.a,r.b,r.c,r.a)/n)}side(e){return e>Sr?1:e<-Sr?-1:0}cutface(e){let r=this.a,n=0,o=null;for(let l=0;l<e.length;l++)n|=1<<this.side(e[l].dot(this)-r)+1;if((n&5)==5){o=[];let l=e.map(i=>this.side(i.dot(this)-r));for(let i=-1;i<=1;i+=2){let s=[];for(let u=0;u<e.length;u++){(l[u]===i||l[u]===0)&&s.push(e[u]);let a=(u+1)%e.length;if(l[u]+l[a]===0&&l[u]!==0){let f=e[u].dot(this)-r,g=e[a].dot(this)-r,L=f/(f-g),m=e[u].smul(1-L).sum(e[a].smul(L));s.push(m)}}o.push(s)}}return o}cutfaces(e){let r=[];for(let n=0;n<e.length;n++){let o=e[n],l=this.cutface(o);l?(r.push(l[0]),r.push(l[1])):r.push(o)}return r}faceside(e){let r=this.a;for(let n=0;n<e.length;n++){let o=this.side(e[n].dot(this)-r);if(o!==0)return o}throw new Error(\"Could not determine side of plane in faceside\")}sameplane(e){let r=this.normalize(),n=e.normalize();return r.dist(n)<Sr||r.dist(n.smul(-1))<Sr}makecut(e){return new _(e,this.b,this.c,this.d)}}});function G0(){let t=Math.sqrt(.5);return[new _(t,t,0,0),new _(t,0,t,0)]}function T0(){return[new _(.5,.5,.5,.5),new _(.5,.5,.5,-.5)]}function I0(){let t=2*Math.PI/10,e=.5+.3*Math.sqrt(5),r=.5+.1*Math.sqrt(5),n=Math.sqrt(e*e+r*r);return e/=n,r/=n,[new _(Math.cos(t),e*Math.sin(t),r*Math.sin(t),0),new _(.5,.5,.5,.5)]}function N0(){let t=1/6+Math.sqrt(5)/6,e=2/3+Math.sqrt(5)/3,r=Math.sqrt(t*t+e*e);t/=r,e/=r;let n=2*Math.PI/6;return[new _(Math.cos(n),t*Math.sin(n),e*Math.sin(n),0),new _(Math.cos(n),-t*Math.sin(n),e*Math.sin(n),0)]}function O0(){let t=Math.sqrt(.5);return[new _(.5,.5,.5,.5),new _(t,0,0,t)]}function _0(t){let e=[new _(1,0,0,0)];for(let r=0;r<e.length;r++)for(let n=0;n<t.length;n++){let o=t[n].mul(e[r]),l=o.smul(-1),i=!1;for(let s=0;s<e.length;s++)if(o.dist(e[s])<ul||l.dist(e[s])<ul){i=!0;break}i||e.push(o)}return e}function qi(t,e){let r=[],n=[];for(let o=0;o<e.length;o++){let l=t.rotateplane(e[o]),i=!1;for(let s=0;s<r.length;s++)if(l.dist(r[s])<ul){i=!0;break}i||(r.push(l),n.push(e[o]))}return n}function Vi(t){let e=[];for(let r=1;r<t.length;r++)for(let n=r+1;n<t.length;n++){let o=M0(0,r,n,t);if(o){let l=!1;for(let i=0;i<e.length;i++)if(o.dist(e[i])<ul){l=!0;break}l||e.push(o)}}for(;;){let r=!1;for(let n=0;n<e.length;n++){let o=(n+1)%e.length;if(t[0].dot(e[n].cross(e[o]))<0){let l=e[n];e[n]=e[o],e[o]=l,r=!0}}if(!r)break}return e}var ul,W0=U(()=>{al();ul=1e-9});function fl(t,e){let r=t[0].p.length,n=E0(r),o=[],l=[],i=[],s=[],u=[];function a(m){for(let p=m.p.length-1;p>=0;p--){let B=m.p[p];if(B!==p){if(!o[p][B])return!1;m=m.mul(l[p][B])}}return!0}function f(m,p,B){s[m].push(p),u[m].push(B);for(let F=0;F<o[m].length;F++)o[m][F]&&g(m,o[m][F].mul(p),B+i[m][F])}function g(m,p,B){let F=p.p[m];if(!o[m][F]){o[m][F]=p,l[m][F]=p.inv(),i[m][F]=B;for(let b=0;b<s[m].length;b++)g(m,p.mul(s[m][b]),B+u[m][b]);return}let A=p.mul(l[m][F]);a(A)||f(m-1,A,B+i[m][F])}function L(){o=[],l=[],s=[],i=[],u=[];for(let B=0;B<r;B++)o.push([]),l.push([]),i.push([]),s.push([]),u.push([]),o[B][B]=n,l[B][B]=n,i[B][B]=0;let m=0,p=1;for(let B=0;B<t.length;B++){f(r-1,t[B],1),p=1;let F=0,A=0,b=[],h=new K0;for(let C=0;C<r;C++){let E=0,q=0;for(let I=0;I<r;I++)o[C][I]&&(E++,q+=i[C][I],C!==I&&m++);F+=s[C].length,p*=E,E>1&&h.multiply(E);let re=q/E;b.push(re),A+=re}e(`${B}: sz ${p} T ${F} sol ${A} none ${m} mults ${h.toString()}`)}return p}return L()}var K0,Hi=U(()=>{ll();K0=class{constructor(){this.mult=[]}multiply(e){for(let r=2;r*r<=e;r++)for(;e%r==0;)this.mult[r]!==void 0?this.mult[r]++:this.mult[r]=1,e/=r;e>1&&(this.mult[e]!==void 0?this.mult[e]++:this.mult[e]=1)}toString(){let e=\"\";for(let r=0;r<this.mult.length;r++)this.mult[r]!==void 0&&(e!==\"\"&&(e+=\"*\"),e+=r,this.mult[r]>1&&(e+=`^${this.mult[r]}`));return e}}});function Yi(t){return t}function Zi(t){}function w1(t,e){let r=[];for(let n of t)for(let o of e)r.push(o.rotate(n));return r}function k1(){return{4:[[\"F\",\"D\",\"L\",\"R\"]],6:[[\"F\",\"D\",\"L\",\"U\",\"R\"],[\"R\",\"F\",\"\",\"B\",\"\"]],8:[[\"F\",\"D\",\"L\",\"R\"],[\"D\",\"F\",\"BR\",\"\"],[\"BR\",\"D\",\"\",\"BB\"],[\"BB\",\"BR\",\"U\",\"BL\"]],12:[[\"U\",\"F\",\"\",\"\",\"\",\"\"],[\"F\",\"U\",\"R\",\"C\",\"A\",\"L\"],[\"R\",\"F\",\"\",\"\",\"E\",\"\"],[\"E\",\"R\",\"\",\"BF\",\"\",\"\"],[\"BF\",\"E\",\"BR\",\"BL\",\"I\",\"D\"]],20:[[\"R\",\"C\",\"F\",\"E\"],[\"F\",\"R\",\"L\",\"U\"],[\"L\",\"F\",\"A\",\"\"],[\"E\",\"R\",\"G\",\"I\"],[\"I\",\"E\",\"S\",\"H\"],[\"S\",\"I\",\"J\",\"B\"],[\"B\",\"S\",\"K\",\"D\"],[\"K\",\"B\",\"M\",\"O\"],[\"O\",\"K\",\"P\",\"N\"],[\"P\",\"O\",\"Q\",\"\"]]}}function z1(){return{4:{F:\"#00ff00\",D:\"#ffff00\",L:\"#ff0000\",R:\"#0000ff\"},6:{U:\"#ffffff\",F:\"#00ff00\",R:\"#ff0000\",D:\"#ffff00\",B:\"#0000ff\",L:\"#ff8000\"},8:{U:\"#ffffff\",F:\"#ff0000\",R:\"#00bb00\",D:\"#ffff00\",BB:\"#1122ff\",L:\"#9524c5\",BL:\"#ff8800\",BR:\"#aaaaaa\"},12:{U:\"#ffffff\",F:\"#006633\",R:\"#ff0000\",C:\"#ffffd0\",A:\"#3399ff\",L:\"#660099\",E:\"#ff66cc\",BF:\"#99ff00\",BR:\"#0000ff\",BL:\"#ffff00\",I:\"#ff6633\",D:\"#999999\"},20:{R:\"#db69f0\",C:\"#178fde\",F:\"#23238b\",E:\"#9cc726\",L:\"#2c212d\",U:\"#177fa7\",A:\"#e0de7f\",G:\"#2b57c0\",I:\"#41126b\",S:\"#4b8c28\",H:\"#7c098d\",J:\"#7fe7b4\",B:\"#85fb74\",K:\"#3f4bc3\",D:\"#0ff555\",M:\"#f1c2c8\",O:\"#58d340\",P:\"#c514f2\",N:\"#14494e\",Q:\"#8b1be1\"}}}function C1(){return{4:[\"F\",\"D\",\"L\",\"R\"],6:[\"U\",\"D\",\"F\",\"B\",\"L\",\"R\"],8:[\"F\",\"BB\",\"D\",\"U\",\"BR\",\"L\",\"R\",\"BL\"],12:[\"L\",\"E\",\"F\",\"BF\",\"R\",\"I\",\"U\",\"D\",\"BR\",\"A\",\"BL\",\"C\"],20:[\"L\",\"S\",\"E\",\"O\",\"F\",\"B\",\"I\",\"P\",\"R\",\"K\",\"U\",\"D\",\"J\",\"A\",\"Q\",\"H\",\"G\",\"N\",\"M\",\"C\"]}}function P1(){return{4:[[\"FLR\",[0,1,0]],[\"F\",[0,0,1]]],6:[[\"U\",[0,1,0]],[\"F\",[0,0,1]]],8:[[\"U\",[0,1,0]],[\"F\",[0,0,1]]],12:[[\"U\",[0,1,0]],[\"F\",[0,0,1]]],20:[[\"GUQMJ\",[0,1,0]],[\"F\",[0,0,1]]]}}function gl(t,e){for(let r=0;r<t.length;r++)if(t[r][0].dist(e)<be)return r;throw new Error(\"Element not found\")}function Q0(){return il}function j0(t){return il[t]}function ro(t){let e=t.split(/ /).filter(Boolean);if(e.length%2==0)return null;let r=e[0];if(r!==\"o\"&&r!==\"c\"&&r!==\"i\"&&r!==\"d\"&&r!==\"t\")return null;let n=[];for(let o=1;o<e.length;o+=2){if(e[o]!==\"f\"&&e[o]!==\"v\"&&e[o]!==\"e\")return null;n.push({cutType:e[o],distance:parseFloat(e[o+1])})}return{shape:r,cuts:n}}function Xi(t,e={}){let r=ro(t);if(r===null)throw new Error(\"Could not parse the puzzle description\");let n=new ml(r,Object.assign({},{allMoves:!0},e));return n.allstickers(),n.genperms(),n}function an(t,e){return Xi(il[t],e)}function M1(t,e,r){let n=!1;r-e[1]<e[0]&&(t=[t[2],t[3],t[0],t[1]],e=[r-e[1],r-e[0]],n=!0);let o=t[0],l=\"\";if(e[0]===0&&e[1]===r)o=o+\"v\";else if(e[0]===e[1])e[1]>0&&(l=String(e[1]+1));else if(e[0]===0)o=o.toLowerCase(),e[1]>1&&(l=String(e[1]+1));else throw`We only support slice and outer block moves right now. ${e}`;return[l+o,n]}function G1(t,e){let r=[],n=0;for(;n<t.length;){n>0&&n<t.length&&t[n]===\"_\"&&n++;let o=\"\";for(let l of e)t.substr(n).startsWith(l[1])&&l[1].length>o.length&&(o=l[1]);if(o!==\"\")r.push(o),n+=o.length;else throw new Error(\"Could not split \"+t+\" into face names.\")}return r}function Ll(t,e){return[t.b/e,-t.c/e,t.d/e]}function Ji(t,e){let r=[],n=t.length;for(let o=0;o<n;o++){let l=Ll(t.get(n-o-1),e);r[3*o]=l[0],r[3*o+1]=l[1],r[3*o+2]=l[2]}return r}var sn,oo,be,v1,E1,ml,xr,ol=U(()=>{Ae();g0();Ti();Ni();ll();C0();P0();W0();al();Hi();sn=class{constructor(e){this.coords=new Array(e.length*3);for(let r=0;r<e.length;r++)this.coords[3*r]=e[r].b,this.coords[3*r+1]=e[r].c,this.coords[3*r+2]=e[r].d;this.length=e.length}get(e){return new _(0,this.coords[3*e],this.coords[3*e+1],this.coords[3*e+2])}centermass(){let e=0,r=0,n=0;for(let o=0;o<this.length;o++)e+=this.coords[3*o],r+=this.coords[3*o+1],n+=this.coords[3*o+2];return new _(0,e/this.length,r/this.length,n/this.length)}rotate(e){let r=[];for(let n=0;n<this.length;n++)r.push(this.get(n).rotatepoint(e));return new sn(r)}rotateforward(){let e=[];for(let r=1;r<this.length;r++)e.push(this.get(r));return e.push(this.get(0)),new sn(e)}},oo=class{constructor(e,r,n){this.face=e;this.left=r;this.right=n}split(e){let r=e.cutface(this.face);return r!==null&&(this.left===void 0?(this.left=new oo(r[0]),this.right=new oo(r[1])):(this.left=this.left?.split(e),this.right=this.right?.split(e))),this}collect(e,r){return this.left===void 0?e.push(new sn(this.face)):r?(this.left?.collect(e,!1),this.right?.collect(e,!0)):(this.right?.collect(e,!1),this.left?.collect(e,!0)),e}};be=1e-9,v1=\"PuzzleGeometry 0.1 Copyright 2018 Tomas Rokicki.\",E1=!1;ml=class{constructor(e,r){this.puzzleDescription=e;this.cmovesbyslice=[];this.duplicatedFaces=[];this.duplicatedCubies=[];this.fixedCubie=-1;this.net=[];this.colors=[];this.faceorder=[];this.faceprecedence=[];this.notationMapper=new nn;this.addNotationMapper=\"\";this.setReidOrder=!1;let n=Yi(\"genperms\");this.options=new Ii(r),this.options.verbosity>0&&console.log(this.header(\"# \")),this.create(e),Zi(n)}create(e){let{shape:r,cuts:n}=e;this.moveplanes=[],this.moveplanes2=[],this.faces=[],this.cubies=[];let o=null;switch(r){case\"c\":o=G0();break;case\"o\":o=O0();break;case\"i\":o=N0();break;case\"t\":o=T0();break;case\"d\":o=I0();break;default:throw new Error(\"Bad shape argument: \"+r)}this.rotations=_0(o),this.options.verbosity&&console.log(\"# Rotations: \"+this.rotations.length);let l=o[0];this.baseplanerot=qi(l,this.rotations);let i=this.baseplanerot.map(D=>l.rotateplane(D));this.baseplanes=i,this.baseFaceCount=i.length;let s=k1()[i.length];this.net=s,this.colors=z1()[i.length],this.faceorder=C1()[i.length],this.options.verbosity>0&&console.log(\"# Base planes: \"+i.length);let u=Vi(i),a=new _(0,0,0,0);this.options.verbosity>0&&console.log(\"# Face vertices: \"+u.length);let f=i[0].makenormal(),g=u[0].sum(u[1]).makenormal(),L=u[0].makenormal(),m=new _(1,f.b,f.c,f.d);this.options.verbosity>0&&console.log(\"# Boundary is \"+m);let B=qi(m,this.rotations).map(D=>m.rotateplane(D)),F=Vi(B);this.edgedistance=F[0].sum(F[1]).smul(.5).dist(a),this.vertexdistance=F[0].dist(a);let A=[],b=[],h=!1,C=!1,E=!1;for(let D of n){let v=null,N=0;switch(D.cutType){case\"f\":v=f,N=1,h=!0;break;case\"v\":v=L,N=this.vertexdistance,E=!0;break;case\"e\":v=g,N=this.edgedistance,C=!0;break;default:throw new Error(\"Bad cut argument: \"+D.cutType)}A.push(v.makecut(D.distance)),b.push(D.distance<N)}this.options.addRotations&&(h||A.push(f.makecut(10)),E||A.push(L.makecut(10)),C||A.push(g.makecut(10))),this.basefaces=[];for(let D of this.baseplanerot){let v=D.rotateface(F);this.basefaces.push(new sn(v))}let q=[],re=[],I=[],ne=[],y=F.length;function z(D,v,N){for(let W of D)if(W[0].dist(v)<be){W.push(N);return}D.push([v,N])}for(let D=0;D<this.baseplanerot.length;D++){let v=this.baseplanerot[D].rotateface(F);for(let N=0;N<v.length;N++){let W=(N+1)%v.length,oe=v[N].sum(v[W]).smul(.5);z(ne,oe,D)}}let M=[];for(let D=0;D<this.baseplanerot.length;D++){let v=this.baseplanerot[D].rotateface(F),N=[];for(let W=0;W<v.length;W++){let oe=(W+1)%v.length,Ke=v[W].sum(v[oe]).smul(.5),it=ne[gl(ne,Ke)];if(D===it[1])N.push(it[2]);else if(D===it[2])N.push(it[1]);else throw new Error(\"Could not find edge\")}M.push(N)}let x={},w=[];w.push(s[0][0]),x[s[0][0]]=0,w[M[0][0]]=s[0][1],x[s[0][1]]=M[0][0];for(let D of s){let v=D[0],N=x[v];if(N===void 0)throw new Error(\"Bad edge description; first edge not connected\");let W=-1;for(let oe=0;oe<M[N].length;oe++){let Ke=w[M[N][oe]];if(Ke!==void 0&&Ke===D[1]){W=oe;break}}if(W<0)throw new Error(\"First element of a net not known\");for(let oe=2;oe<D.length;oe++){if(D[oe]===\"\")continue;let Ke=M[N][(oe+W-1)%y],it=w[Ke];if(it!==void 0&&it!==D[oe])throw new Error(\"Face mismatch in net\");w[Ke]=D[oe],x[D[oe]]=Ke}}for(let D=0;D<w.length;D++){let v=!1;for(let N=0;N<this.faceorder.length;N++)if(w[D]===this.faceorder[N]){this.faceprecedence[D]=N,v=!0;break}if(!v)throw new Error(\"Could not find face \"+w[D]+\" in face order list \"+this.faceorder)}for(let D=0;D<this.baseplanerot.length;D++){let v=this.baseplanerot[D].rotateface(F),N=m.rotateplane(this.baseplanerot[D]),W=w[D];q.push([v,W]),re.push([N,W])}for(let D=0;D<this.baseplanerot.length;D++){let v=this.baseplanerot[D].rotateface(F),N=w[D];for(let W=0;W<v.length;W++){let oe=(W+1)%v.length,Ke=v[W].sum(v[oe]).smul(.5),it=(W+2)%v.length,Cg=v[oe].sum(v[it]).smul(.5),Pg=gl(ne,Ke),Mg=gl(ne,Cg);z(I,v[oe],[N,Mg,Pg])}}this.swizzler=new $n(q.map(D=>D[1]));let P=this.swizzler.prefixFree?\"\":\"_\";for(let D=0;D<ne.length;D++){if(ne[D].length!==3)throw new Error(\"Bad length in edge names \"+ne[D]);let v=w[ne[D][1]],N=w[ne[D][2]];this.faceprecedence[ne[D][1]]<this.faceprecedence[ne[D][2]]?v=v+P+N:v=N+P+v,ne[D]=[ne[D][0],v]}for(let D=0;D<I.length;D++){if(I[D].length<4)throw new Error(\"Bad length in vertex names\");let v=1;for(let W=2;W<I[D].length;W++)this.faceprecedence[x[I[D][W][0]]]<this.faceprecedence[x[I[D][v][0]]]&&(v=W);let N=\"\";for(let W=1;W<I[D].length;W++){W===1?N=I[D][v][0]:N=N+P+I[D][v][0];for(let oe=1;oe<I[D].length;oe++)if(I[D][v][1]===I[D][oe][2]){v=oe;break}}I[D]=[I[D][0],N]}this.options.verbosity>1&&(console.log(\"# Face precedence list: \"+this.faceorder.join(\" \")),console.log(\"# Face names: \"+q.map(D=>D[1]).join(\" \")),console.log(\"# Edge names: \"+ne.map(D=>D[1]).join(\" \")),console.log(\"# Vertex names: \"+I.map(D=>D[1]).join(\" \")));let K=[];for(let D of re)K.push([D[0].makenormal(),D[1],\"f\"]);for(let D of ne)K.push([D[0].makenormal(),D[1],\"e\"]);for(let D of I)K.push([D[0].makenormal(),D[1],\"v\"]);this.facenames=q,this.faceplanes=re,this.edgenames=ne,this.vertexnames=I,this.geonormals=K;let Y=K.map(D=>D[1]);this.swizzler.setGripNames(Y),this.options.verbosity>0&&console.log(\"# Distances: face \"+1+\" edge \"+this.edgedistance+\" vertex \"+this.vertexdistance);for(let D=0;D<A.length;D++)for(let v of this.rotations){let N=A[D].rotateplane(v),W=!1;for(let oe of this.moveplanes)if(N.sameplane(oe)){W=!0;break}W||(this.moveplanes.push(N),b[D]&&this.moveplanes2.push(N))}let ge=new oo(F),Be=this.moveplanes2.slice(),Fe=31;for(let D=0;D<Be.length;D++){let v=D+Math.floor((Be.length-D)*(Fe/65536));ge=ge.split(Be[v]),Be[v]=Be[D],Fe=(Fe*1657+101)%65536}let ye=ge.collect([],!0);this.faces=ye,this.options.verbosity>0&&console.log(\"# Faces is now \"+ye.length),this.stickersperface=ye.length;let wt=[],ze=sl(F);for(let D of this.rotations){let v=D.rotateface(F);ze.dist(sl(v))<be&&wt.push(D)}let Je=new Array(ye.length),xe=[];for(let D=0;D<ye.length;D++){let v=ye[D].centermass();xe.push([ze.dist(v),v,D])}xe.sort((D,v)=>D[0]-v[0]);for(let D=0;D<ye.length;D++){let v=xe[D][2];if(!Je[v]){Je[v]=!0;for(let N of wt){let W=ye[v].rotate(N),oe=W.centermass();for(let Ke=D+1;Ke<ye.length&&!(xe[Ke][0]-xe[D][0]>be);Ke++){let it=xe[Ke][2];if(!Je[it]&&oe.dist(xe[Ke][1])<be){Je[it]=!0,ye[it]=W;break}}}}}this.shortedge=1e99;for(let D of ye)for(let v=0;v<D.length;v++){let N=(v+1)%D.length,W=D.get(v).dist(D.get(N));W<this.shortedge&&(this.shortedge=W)}this.options.verbosity>0&&console.log(\"# Short edge is \"+this.shortedge),r===\"c\"&&h&&!C&&!E&&(this.addNotationMapper=\"NxNxNCubeMapper\",this.setReidOrder=!0),r===\"c\"&&E&&!h&&!C&&(this.addNotationMapper=\"SkewbMapper\"),r===\"t\"&&(E||h)&&!C&&(this.addNotationMapper=\"PyraminxOrTetraminxMapper\"),r===\"o\"&&h&&(this.notationMapper=new eo(this.swizzler,new $n([\"F\",\"D\",\"L\",\"BL\",\"R\",\"U\",\"BR\",\"B\"])),!C&&!E&&(this.addNotationMapper=\"FTOMapper\")),r===\"d\"&&h&&(this.addNotationMapper=\"MegaminxMapper\",this.notationMapper=new eo(this.swizzler,new $n([\"U\",\"F\",\"L\",\"BL\",\"BR\",\"R\",\"FR\",\"FL\",\"DL\",\"B\",\"DR\",\"D\"])))}keyface(e){return this.keyface2(e.centermass())}keyface2(e){let r=\"\",n=String.fromCharCode;for(let o of this.moveplanesets)if(o.length>0){let l=e.dot(o[0]),i=0,s=1;for(;s*2<=o.length;)s*=2;for(;s>0;s>>=1)i+s<=o.length&&l>o[i+s-1].a&&(i+=s);if(i<47)r=r+n(33+i);else if(i<47+47*47)r=r+n(33+47+Math.floor(i/47)-1)+n(33+i%47);else if(i<47+47*47+47*47*47)r=r+n(33+47+Math.floor((i-47)/(47*47)-1))+n(33+47+Math.floor((i-47)/47)%47)+n(33+i%47);else throw Error(\"Too many slices for cubie encoding\")}return r}keyface3(e){let r=e.centermass(),n=[];for(let o of this.moveplanesets)if(o.length>0){let l=r.dot(o[0]),i=0,s=1;for(;s*2<=o.length;)s*=2;for(;s>0;s>>=1)i+s<=o.length&&l>o[i+s-1].a&&(i+=s);n.push(i)}return n}findface(e){let r=this.keyface2(e),n=this.facelisthash.get(r);if(n.length===1)return n[0];for(let o=0;o+1<n.length;o++){let l=this.facelisthash.get(r)[o];if(Math.abs(e.dist(this.facecentermass[l]))<be)return l}return n[n.length-1]}project2d(e,r,n){let o=this.facenames[e][0],l=(r+1)%o.length,i=this.baseplanes[e],s=o[l].sub(o[r]),u=s.len();s=s.normalize();let a=s.cross(i).normalize(),f=n[1].sub(n[0]),g=f.len()/u;f=f.normalize();let L=f.b,m=f.c,p=s.smul(L).sub(a.smul(m)).smul(g),B=a.smul(L).sum(s.smul(m)).smul(g),F=new _(0,n[0].b-p.dot(o[r]),n[0].c-B.dot(o[r]),0);return[p,B,F]}allstickers(){let e=Yi(\"allstickers\");this.faces=w1(this.baseplanerot,this.faces),this.options.verbosity>0&&console.log(\"# Total stickers is now \"+this.faces.length),this.facecentermass=new Array(this.faces.length);for(let y=0;y<this.faces.length;y++)this.facecentermass[y]=this.faces[y].centermass();let r=[],n=[];for(let y of this.moveplanes){let z=y.makenormal(),M=!1;for(let x of n)z.sameplane(x.makenormal())&&(M=!0);M||(n.push(z),r.push([]))}for(let y of this.moveplanes2){let z=y.makenormal();for(let M=0;M<n.length;M++)if(z.sameplane(n[M])){r[M].push(y);break}}for(let y=0;y<r.length;y++){let z=r[y].map(x=>x.normalizeplane()),M=n[y];for(let x=0;x<z.length;x++)z[x].makenormal().dist(M)>be&&(z[x]=z[x].smul(-1));z.sort((x,w)=>x.a-w.a),r[y]=z}this.moveplanesets=r,this.moveplanenormals=n;let o=r.map(y=>y.length);this.options.verbosity>0&&console.log(\"# Move plane sets: \"+o);let l=[];for(let y=0;y<r.length;y++)l.push([]);for(let y of this.rotations){if(Math.abs(Math.abs(y.a)-1)<be)continue;let z=y.makenormal();for(let M=0;M<r.length;M++)if(z.sameplane(n[M])){l[M].push(y);break}}this.moverotations=l;for(let y=0;y<l.length;y++){let z=l[y],M=z[0].makenormal();for(let x=0;x<z.length;x++)M.dist(z[x].makenormal())>be&&(z[x]=z[x].smul(-1));z.sort((x,w)=>x.angle()-w.angle()),l[y][0].dot(n[y])<0&&z.reverse()}let i=l.map(y=>1+y.length);this.movesetorders=i;let s=[],u=\"?\";for(let y=0;y<r.length;y++){let z=n[y],M=null,x=null;for(let w of this.geonormals){let P=z.dot(w[0]);Math.abs(P-1)<be?(x=[w[1],w[2]],u=w[2]):Math.abs(P+1)<be&&(M=[w[1],w[2]],u=w[2])}if(x===null||M===null)throw new Error(\"Saw positive or negative sides as null\");s.push([x[0],x[1],M[0],M[1],1+r[y].length]),this.addNotationMapper===\"NxNxNCubeMapper\"&&u===\"f\"&&(this.notationMapper=new tl(1+r[y].length),this.addNotationMapper=\"\"),this.addNotationMapper===\"SkewbMapper\"&&r[0].length===1&&(this.notationMapper=new nl(this.swizzler),this.addNotationMapper=\"\"),this.addNotationMapper===\"PyraminxOrTetraminxMapper\"&&(r[0].length===2&&r[0][0].a===.333333333333333&&r[0][1].a===1.66666666666667?(this.notationMapper=new to(this.swizzler),this.addNotationMapper=\"\"):(this.notationMapper=new rl(this.swizzler),this.addNotationMapper=\"\")),this.addNotationMapper===\"MegaminxMapper\"&&u===\"f\"&&(1+r[y].length===3&&(this.notationMapper=new el(this.notationMapper)),this.addNotationMapper=\"\"),this.addNotationMapper===\"FTOMapper\"&&u===\"f\"&&(1+r[y].length===3&&(this.notationMapper=new $o(this.notationMapper,this.swizzler)),this.addNotationMapper=\"\")}this.movesetgeos=s;let a=new Map,f=this.faces;for(let y=0;y<f.length;y++){let z=f[y],M=this.keyface(z);if(!a.get(M))a.set(M,[y]);else{let x=a.get(M);if(x.push(y),x.length===this.baseFaceCount){this.options.verbosity>0&&console.log(\"# Splitting core.\");for(let w=0;w<x.length;w++){let P=M+\" \"+w;a.set(P,[x[w]])}}}}this.facelisthash=a,this.options.verbosity>0&&console.log(\"# Cubies: \"+a.size);let g=[],L=[],m=[];for(let y of a.values())if(y.length!==this.baseFaceCount){if(y.length>1){let z=y.map(P=>f[P].centermass()),M=sl(z);for(let P=0;y.length>2;P++){let K=!1;for(let Y=0;Y<y.length;Y++){let ge=(Y+1)%y.length;if(M.dot(z[Y].cross(z[ge]))<0){let Be=z[Y];z[Y]=z[ge],z[ge]=Be;let Fe=y[Y];y[Y]=y[ge],y[ge]=Fe,K=!0}}if(!K)break;if(P>1e3)throw new Error(\"Bad epsilon math; too close to border\")}let x=0,w=y[x];for(let P=1;P<y.length;P++){let K=y[P];this.faceprecedence[this.getfaceindex(K)]<this.faceprecedence[this.getfaceindex(w)]&&(x=P,w=K)}if(x!==0){let P=y.slice();for(let K=0;K<y.length;K++)y[K]=P[(x+K)%y.length]}}for(let z=0;z<y.length;z++){let M=y[z];L[M]=g.length,m[M]=z}g.push(y)}this.cubies=g,this.facetocubie=L,this.facetoord=m;let p=[\"?\",\"CENTERS\",\"EDGES\",\"CORNERS\",\"C4RNER\",\"C5RNER\"],B=[],F=[0,0,0,0,0,0],A=[],b=[],h=0,C=[],E=[],q=[],re=[],I=y=>g[y].map(z=>this.getfaceindex(z)).join(\" \"),ne=[];for(let y=0;y<g.length;y++){if(b[y])continue;let z=g[y];if(z.length===0)continue;let M={},x=0;q.push(0),ne.push([]);let w=z.length,P=F[w]++,K=p[w];(K===void 0||w===this.baseFaceCount)&&(K=\"CORE\"),K=K+(P===0?\"\":P+1),B[h]=K,A[h]=w;let Y=[y],ge=0;for(b[y]=!0;ge<Y.length;){let Be=Y[ge++],Fe=I(Be);if((z.length>1||M[Fe]===void 0)&&(M[Fe]=x++),re[Be]=M[Fe],C[Be]=h,ne[h].push(Be),E[Be]=q[h]++,Y.length<this.rotations.length){let ye=this.facecentermass[g[Be][0]];for(let wt of l){let ze=this.facetocubie[this.findface(ye.rotatepoint(wt[0]))];b[ze]||(Y.push(ze),b[ze]=!0)}}}h++}if(this.setReidOrder&&4<=this.stickersperface&&this.stickersperface<=9){let y=[[\"UF\",\"UR\",\"UB\",\"UL\",\"DF\",\"DR\",\"DB\",\"DL\",\"FR\",\"FL\",\"BR\",\"BL\"],[\"UFR\",\"URB\",\"UBL\",\"ULF\",\"DRF\",\"DFL\",\"DLB\",\"DBR\"],[\"U\",\"L\",\"F\",\"R\",\"B\",\"D\"]],z={};for(let M of y)for(let x=0;x<M.length;x++){let w=0;for(let P=0;P<M[x].length;P++)w|=1<<M[x].charCodeAt(P)-65;z[w]=x}for(let M of ne)for(let x of M){let w=0;for(let P of g[x])w|=1<<this.facenames[this.getfaceindex(P)][1].charCodeAt(0)-65;E[x]=z[w]}}if(this.cubiesetnums=C,this.cubieordnums=E,this.cubiesetnames=B,this.cubieords=q,this.orbitoris=A,this.cubievaluemap=re,this.cubiesetcubies=ne,this.options.fixedPieceType!==null){for(let y=0;y<g.length;y++)if(this.options.fixedPieceType===\"v\"&&g[y].length>2||this.options.fixedPieceType===\"e\"&&g[y].length===2||this.options.fixedPieceType===\"f\"&&g[y].length===1){this.fixedCubie=y;break}if(this.fixedCubie<0)throw new Error(\"Could not find a cubie of type \"+this.options.fixedPieceType+\" to fix.\")}this.options.verbosity>0&&console.log(\"# Cubie orbit sizes \"+q),Zi(e)}unswizzle(e){let r=this.notationMapper.notationToInternal(e);return r===null?\"\":this.swizzler.unswizzle(r.family)}stringToBlockMove(e){let r=RegExp(\"^(([0-9]+)-)?([0-9]+)?([^0-9]+)([0-9]+'?)?$\"),n=e.match(r);if(n===null)throw new Error(\"Bad move passed \"+e);let o=n[4],l,i;if(n[2]!==void 0){if(n[3]===void 0)throw new Error(\"Missing second number in range\");l=parseInt(n[2],10)}n[3]!==void 0&&(i=parseInt(n[3],10));let s=\"1\",u=1;return n[5]!==void 0&&(s=n[5],s[0]===\"'\"&&(s=\"-\"+s.substring(1)),u=parseInt(s,10)),new c(new G(o,i,l),u)}parseMove(e){let r=this.notationMapper.notationToInternal(e);if(r===null)throw new Error(\"Bad move \"+e.family);e=r;let n=e.family,o=!1;if(n.endsWith(\"v\")&&n[0]<=\"Z\"){if(e.innerLayer!==void 0||e.outerLayer!==void 0)throw new Error(\"Cannot use a prefix with full cube rotations\");n=n.slice(0,-1),o=!0}n.endsWith(\"w\")&&n[0]<=\"Z\"&&(n=n.slice(0,-1).toLowerCase());let l,i=-1,s=this.swizzler.unswizzle(n),u=!1;for(let g=0;g<this.movesetgeos.length;g++){let L=this.movesetgeos[g];s===L[0]&&(u=!0,l=L,i=g),s===L[2]&&(u=!1,l=L,i=g)}let a=1,f=1;if(n.toUpperCase()!==n&&(f=2),l===void 0)throw new Error(\"Bad grip in move \"+e.family);if(e.outerLayer!==void 0&&(a=e.outerLayer),e.innerLayer!==void 0&&(e.outerLayer===void 0?(f=e.innerLayer,n<=\"Z\"?a=f:a=1):f=e.innerLayer),a--,f--,o&&(a=0,f=this.moveplanesets[i].length),a<0||a>this.moveplanesets[i].length||f<0||f>this.moveplanesets[i].length)throw new Error(\"Bad slice spec \"+a+\" \"+f+\" vs \"+this.moveplanesets[i].length);if(!E1&&a===0&&f===this.moveplanesets[i].length&&!o)throw new Error(\"! full puzzle rotations must be specified with v suffix.\");return[void 0,i,a,f,u,e.amount]}parsemove(e){let r=this.parseMove(this.stringToBlockMove(e));return r[0]=e,r}genperms(){let e=Yi(\"genperms\");if(this.cmovesbyslice.length>0)return;let r=[];if(this.options.orientCenters){for(let n=0;n<this.cubies.length;n++)if(this.cubies[n].length===1){let o=this.cubies[n][0],l=this.getfaceindex(o);if(this.basefaces[l].centermass().dist(this.facecentermass[o])<be){let i=this.basefaces[l].length;for(let s=1;s<i;s++)this.cubies[n].push(this.cubies[n][s-1]);this.duplicatedFaces[o]=i,this.duplicatedCubies[n]=i,this.orbitoris[this.cubiesetnums[n]]=i}}}for(let n=0;n<this.moveplanesets.length;n++){let o=this.moveplanesets[n],l=[],i=[o.length+1,0],s=1;for(;s*2<=o.length;)s*=2;for(let f=0;f<this.faces.length;f++){let g=0;if(o.length>0){let L=this.facecentermass[f].dot(o[0]);for(let m=s;m>0;m>>=1)g+m<=o.length&&L>o[g+m-1].a&&(g+=m);g=o.length-g}for(l.push(g);i.length<=g;)i.push(0);i[g]++}let u=new Array(i.length);for(let f=0;f<i.length;f++)u[f]=[];let a=[];for(let f=0;f<this.faces.length;f++){if(l[f]<0)continue;let g=[this.facetocubie[f],this.facetoord[f]],L=this.facecentermass[f],m=L,p=f,B=l[p];for(;;){l[p]=-1;let F=L.rotatepoint(this.moverotations[n][0]);if(F.dist(m)<be)break;p=this.findface(F),g.push(this.facetocubie[p],this.facetoord[p]),L=F}if(g.length>2&&this.options.orientCenters&&(this.cubies[g[0]].length===1||this.duplicatedCubies[g[0]]>1)&&this.facecentermass[f].dist(this.basefaces[this.getfaceindex(f)].centermass())<be){let F=this.faces[this.cubies[g[0]][0]];for(let A=0;A<g.length;A+=2){let b=this.faces[this.cubies[g[A]][0]],h=-1;for(let C=0;C<F.length;C++)if(b.get(C).dist(F.get(0))<be){h=C;break}if(h<0)throw new Error(\"Couldn't find rotation of center faces; ignoring for now.\");g[A+1]=h,F=F.rotate(this.moverotations[n][0])}}if(g.length===2&&this.options.orientCenters)for(let F=1;F<this.movesetorders[n];F++)B===0?g.push(g[0],F):g.push(g[0],(this.movesetorders[n]-F)%this.movesetorders[n]);if(g.length>2&&!a[g[0]]){if(g.length!==2*this.movesetorders[n])throw new Error(\"Bad length in perm gen\");for(let F of g)u[B].push(F)}for(let F=0;F<g.length;F+=2)a[g[F]]=!0}for(let f=0;f<u.length;f++)u[f]=u[f].slice();r.push(u)}if(this.cmovesbyslice=r,this.options.moveList){let n=[];for(let o of this.options.moveList)n.push(this.parsemove(o));this.parsedmovelist=n}this.facelisthash.clear(),this.facecentermass=[],Zi(e)}getboundarygeometry(){return{baseplanes:this.baseplanes,facenames:this.facenames,faceplanes:this.faceplanes,vertexnames:this.vertexnames,edgenames:this.edgenames,geonormals:this.geonormals}}getmovesets(e){let r=this.moveplanesets[e].length,n=[];if(this.parsedmovelist!==void 0)for(let o of this.parsedmovelist)o[1]===e&&(o[4]?n.push([o[2],o[3]]):n.push([r-o[3],r-o[2]]),n.push(o[5]));else if(this.options.vertexMoves&&!this.options.allMoves){let o=this.movesetgeos[e];if(o[1]!==o[3])for(let l=0;l<r;l++)o[1]!==\"v\"?(this.options.outerBlockMoves?n.push([l+1,r]):n.push([l+1]),n.push(1)):(this.options.outerBlockMoves?n.push([0,l]):n.push([l,l]),n.push(1))}else for(let o=0;o<=r;o++)!this.options.allMoves&&o+o===r||(this.options.outerBlockMoves?o+o>r?n.push([o,r]):n.push([0,o]):n.push([o,o]),n.push(1));if(this.fixedCubie>=0){let o=this.keyface3(this.faces[this.cubies[this.fixedCubie][0]])[e],l=[];for(let i=0;i<n.length;i+=2){let s=n[i];if(o>=s[0]&&o<=s[1])if(s[0]===0)s=[s[1]+1,r];else if(r===s[1])s=[0,s[0]-1];else throw Error(\"fixed cubie option would disconnect move\");let u=!1;for(let a=0;a<l.length;a+=2)if(l[a][0]===s[0]&&l[a][1]===s[1]&&l[a+1]===n[i+1]){u=!0;break}u||(l.push(s),l.push(n[i+1]))}n=l}return n}graybyori(e){let r=this.cubies[e].length;return this.duplicatedCubies[e]&&(r=1),r===1&&(this.options.grayCenters||!this.options.includeCenterOrbits)||r===2&&(this.options.grayEdges||!this.options.includeEdgeOrbits)||r>2&&(this.options.grayCorners||!this.options.includeCornerOrbits)}skipbyori(e){let r=this.cubies[e].length;return this.duplicatedCubies[e]&&(r=1),r===1&&!this.options.includeCenterOrbits||r===2&&!this.options.includeEdgeOrbits||r>2&&!this.options.includeCornerOrbits}skipcubie(e){return this.skipbyori(e)}header(e){return e+v1+`\n`+e+`\n`}writegap(){let e=this.getOrbitsDef(!1),r=[],n=[];for(let l=0;l<e.moveops.length;l++){let i=\"M_\"+Ki(this.notationMapper,e.movenames[l]),s=!1;i[i.length-1]===\"'\"&&(i=i.substring(0,i.length-1),s=!0),n.push(i),s?r.push(i+\":=\"+e.moveops[l].toPerm().inv().toGap()+\";\"):r.push(i+\":=\"+e.moveops[l].toPerm().toGap()+\";\")}r.push(\"Gen:=[\"),r.push(n.join(\",\")),r.push(\"];\");let o=e.solved.identicalPieces();return r.push(\"ip:=[\"+o.map(l=>\"[\"+l.map(i=>i+1).join(\",\")+\"]\").join(\",\")+\"];\"),r.push(\"# Size(Group(Gen));\"),r.push(\"# Size(Stabilizer(Group(Gen), ip, OnTuplesSets));\"),r.push(\"\"),this.header(\"# \")+r.join(`\n`)}writeksolve(e=\"PuzzleGeometryPuzzle\"){let r=this.getOrbitsDef(!1);return this.header(\"# \")+r.toKsolve(e,this.notationMapper).join(`\n`)}getKPuzzleDefinition(e=!0,r=!0){let o=this.getOrbitsDef(e,r).toKPuzzleDefinition(r);if(o.exprimentalPuzzleDescription=this.puzzleDescription,!o)throw new Error(\"Missing definition!\");return o}getMoveFromBits(e,r,n,o,l,i){let s=[],u=[],a=[];for(let L of this.cubieords)u.push(kt(L)),a.push(tr(L));for(let L=e[0];L<=e[1];L++){let m=o[L];for(let p=0;p<m.length;p+=2*i){let B=m.slice(p,p+2*i),F=this.cubiesetnums[B[0]];for(let h=0;h<B.length;h+=2)B[h]=this.cubieordnums[B[h]];let A=2,b=3;n&&(A=B.length-2,b=B.length-1),u[F]===kt(this.cubieords[F])&&(u[F]=u[F].slice(),this.orbitoris[F]>1&&!this.options.fixedOrientation&&(a[F]=a[F].slice()));for(let h=0;h<B.length;h+=2)u[F][B[(h+A)%B.length]]=B[h],this.orbitoris[F]>1&&!this.options.fixedOrientation&&(a[F][B[h]]=(B[(h+b)%B.length]-B[(h+1)%B.length]+2*this.orbitoris[F])%this.orbitoris[F])}}let f=new Ot(kt(24),tr(24),1);for(let L=0;L<this.cubiesetnames.length;L++)if(!(l&&!l[L]))if(this.orbitoris[L]===1||this.options.fixedOrientation)u[L]===kt(f.perm.length)?(u[L]!==f.perm&&(f=new Ot(u[L],a[L],1)),s.push(f)):s.push(new Ot(u[L],a[L],1));else{let m=new Array(a[L].length);for(let p=0;p<u[L].length;p++)m[p]=a[L][u[L][p]];s.push(new Ot(u[L],m,this.orbitoris[L]))}let g=new rr(s);return r!==1&&(g=g.mulScalar(r)),g}omitSet(e){for(let r of this.options.excludeOrbits)if(r===e)return!0;return!1}diffmvsets(e,r,n,o){for(let l=0;l<e.length;l+=2){let i=!1;for(let s=0;!i&&s<r.length;s+=2)o?e[l][0]+r[s][1]===n&&e[l][1]+r[s][0]===n&&e[l+1]===r[s+1]&&(i=!0):e[l][0]===r[s][0]&&e[l][1]===r[s][1]&&e[l+1]===r[s+1]&&(i=!0);if(!i)return!0}return!1}getOrbitsDef(e,r=!0){let n=[];if(e)for(let L=0;L<this.cubiesetnames.length;L++)n.push(1);let o=[],l=[],i=[],s=[];for(let L=0;L<this.moveplanesets.length;L++){let m=this.getmovesets(L);i.push(m),this.options.addRotations?s.push(1):s.push(0)}if(this.options.moveList&&this.options.addRotations){for(let L=0;L<this.moverotations.length;L++)s[L]=0;for(let L=0;L<this.moveplanesets.length;L++)for(let m=0;m<this.moverotations.length;m++){let p=this.moveplanenormals[L];for(let B=1;B*2<=this.movesetorders[m];B++){if(p=p.rotatepoint(this.moverotations[m][0]),s[m]&B)continue;let F=-1,A=!1;for(let h=0;h<this.moveplanenormals.length;h++)if(p.dist(this.moveplanenormals[h])<be){F=h;break}else if(p.dist(this.moveplanenormals[h].smul(-1))<be){F=h,A=!0;break}if(F<0)throw new Error(\"Could not find rotation\");let b=i[F];(b.length!==i[L].length||this.moveplanesets[L].length!==this.moveplanesets[F].length||this.diffmvsets(b,i[L],this.moveplanesets[F].length,A))&&(s[m]|=B)}}for(let L=0;L<this.moverotations.length;L++)if(s[L]===0)s[L]=1;else if(s[L]===1)this.movesetorders[L]>3?s[L]=2:s[L]=0;else if(s[L]===3)s[L]=0;else throw new Error(\"Impossible addrot val\")}for(let L=0;L<this.moveplanesets.length;L++)s[L]!==0&&(i[L].push([0,this.moveplanesets[L].length]),i[L].push(s[L]));for(let L=0;L<this.moveplanesets.length;L++){let m=i[L],p=this.movesetorders[L];for(let A=0;A<m.length;A+=2)for(let b=0;b<A;b+=2)if(m[A]===m[b]&&m[A+1]===m[b+1])throw new Error(\"Redundant moves in moveset.\");let B=[];for(let A=0;A<m.length;A+=2)for(let b=m[A][0];b<=m[A][1];b++)B[b]=1;let F=this.cmovesbyslice[L];for(let A=0;A<F.length;A++){if(B[A]!==1)continue;let b=F[A];for(let h=0;h<b.length;h+=2*p){if(this.skipcubie(b[h]))continue;let C=this.cubiesetnums[b[h]];n[C]=1}}}for(let L=0;L<this.cubiesetnames.length;L++)if(!!n[L]){if(this.omitSet(this.cubiesetnames[L])){n[L]=0;continue}o.push(this.cubiesetnames[L]),l.push(new no(this.cubieords[L],this.options.fixedOrientation?1:this.orbitoris[L]))}let u=[];for(let L=0;L<this.cubiesetnames.length;L++){if(!n[L]||this.omitSet(this.cubiesetnames[L]))continue;let m=[],p=[];for(let B=0;B<this.cubieords[L];B++){if(e)m.push(B);else{let F=this.cubiesetcubies[L][B];m.push(this.cubievaluemap[F])}p.push(0)}u.push(new Ot(m,p,this.options.fixedOrientation?1:this.orbitoris[L]))}let a=[],f=[];if(r)for(let L=0;L<this.moveplanesets.length;L++){let p=this.moveplanesets[L].length,B=i[L],F=this.movesetgeos[L];for(let A=0;A<B.length;A+=2){let b=B[A],h=M1(F,b,p),C=h[0],E=h[1];B[A+1]===1?a.push(C):a.push(C+B[A+1]);let q=this.getMoveFromBits(b,B[A+1],E,this.cmovesbyslice[L],n,this.movesetorders[L]);f.push(q)}}let g=new on(o,l,new ln(u),a,f);return this.options.optimizeOrbits&&(g=g.optimize()),this.options.scrambleAmount!==0&&g.scramble(this.options.scrambleAmount),g}getMovesAsPerms(){return this.getOrbitsDef(!1).moveops.map(e=>e.toPerm())}showcanon(e){z0(this.getOrbitsDef(!1),e)}getsolved(){let e=[];for(let r=0;r<this.baseFaceCount;r++)for(let n=0;n<this.stickersperface;n++)e.push(r);return new gt(e)}getOrientationRotation(e){let[r,[n,o,l]]=e[0],i=new _(0,n,-o,l),[s,[u,a,f]]=e[1],g=new _(0,u,-a,f),L=null,m=null,p=this.swizzler.unswizzle(r),B=this.swizzler.unswizzle(s);for(let h of this.geonormals)p===h[1]&&(L=h[0]),B===h[1]&&(m=h[0]);if(!L)throw new Error(\"Could not find feature \"+r);if(!m)throw new Error(\"Could not find feature \"+s);let F=L.pointrotation(i);return m.rotatepoint(F).unproject(i).pointrotation(g.unproject(i)).mul(F)}getInitial3DRotation(){let e=this.baseFaceCount,r=null;if(this.options.puzzleOrientation?r=this.options.puzzleOrientation:this.options.puzzleOrientations&&(r=this.options.puzzleOrientations[e]),r||(r=P1()[e]),!r)throw new Error(\"No default orientation?\");return this.getOrientationRotation(r)}generate2dmapping(e=800,r=500,n=10,o=!1,l=.92){e-=2*n,r-=2*n;function i(x,w){let P=x[1][0]-x[0][0],K=x[1][1]-x[0][1],Y=2*Math.PI/w,ge=Math.cos(Y),Be=Math.sin(Y);for(let Fe=2;Fe<w;Fe++){let ye=P*ge+K*Be;K=K*ge-P*Be,P=ye,x.push([x[Fe-1][0]+P,x[Fe-1][1]+K])}}this.genperms();let a=this.getboundarygeometry().facenames[0][0].length,f=this.net;if(f===null)throw new Error(\"No net?\");let g={},L=0,m=0,p=1,B=0;g[f[0][0]]=[[1,0],[0,0]],i(g[f[0][0]],a);for(let x of f){let w=x[0];if(!g[w])throw new Error(\"Bad edge description; first edge not connected.\");for(let P=1;P<x.length;P++){let K=x[P];K===\"\"||g[K]||(g[K]=[g[w][P%a],g[w][(P+a-1)%a]],i(g[K],a))}}for(let x in g){let w=g[x];for(let P of w)L=Math.min(L,P[0]),p=Math.max(p,P[0]),m=Math.min(m,P[1]),B=Math.max(B,P[1])}let F=Math.min(e/(p-L),r/(B-m)),A=.5*(e-F*(p+L)),b=.5*(r-F*(B+m)),h={},C=this.getboundarygeometry(),E={},q=[[F+A,b],[A,b]];E[f[0][0]]=q,i(E[f[0][0]],a),h[this.facenames[0][1]]=this.project2d(0,0,[new _(0,q[0][0],q[0][1],0),new _(0,q[1][0],q[1][1],0)]);let re=[];re[0]=0;for(let x of f){let w=x[0];if(!E[w])throw new Error(\"Bad edge description; first edge not connected.\");let P=-1;for(let Y=0;Y<C.facenames.length;Y++)if(w===C.facenames[Y][1]){P=Y;break}if(P<0)throw new Error(\"Could not find first face name \"+w);let K=C.facenames[P][0];for(let Y=1;Y<x.length;Y++){let ge=x[Y];if(ge===\"\"||E[ge])continue;E[ge]=[E[w][Y%a],E[w][(Y+a-1)%a]],i(E[ge],a);let Be=re[P],Fe=K[(Be+Y)%a].sum(K[(Be+Y+a-1)%a]).smul(.5),ye=gl(C.edgenames,Fe),wt=C.edgenames[ye][1],ze=G1(wt,this.facenames),Je=ze[w===ze[0]?1:0],xe=-1;for(let v=0;v<C.facenames.length;v++)if(Je===C.facenames[v][1]){xe=v;break}if(xe<0)throw new Error(\"Could not find second face name\");let D=C.facenames[xe][0];for(let v=0;v<D.length;v++)if(D[v].sum(D[(v+1)%a]).smul(.5).dist(Fe)<=be){let W=E[w][(Y+a-1)%a],oe=E[w][Y%a];re[xe]=v,h[Je]=this.project2d(xe,v,[new _(0,oe[0],oe[1],0),new _(0,W[0],W[1],0)]);break}}}let I=0,ne=0,y=this.getInitial3DRotation();for(let x of this.faces){o&&(x=x.rotate(y));for(let w=0;w<x.length;w++)I=Math.max(I,Math.abs(x.get(w).b)),ne=Math.max(ne,Math.abs(x.get(w).c))}let z=Math.min(r/ne/2,(e-n)/I/4);return(x,w)=>{if(o){w=w.rotatepoint(y);let P=.5*n+.25*e,K=this.baseplanes[x].rotateplane(y).d<0?1:-1;return[n+e*.5+K*(P-w.b*z),n+r*.5+w.c*z]}else{let P=h[this.facenames[x][1]];return[n+l*w.dot(P[0])+P[2].b,n+r-l*w.dot(P[1])-P[2].c]}}}generatesvg(e=800,r=500,n=10,o=!1){let l=this.generate2dmapping(e,r,n,o);function i(L,m,p){return'<polygon id=\"'+L+'\" class=\"sticker\" style=\"fill: '+p+'\" points=\"'+m.map(B=>B[0]+\" \"+B[1]).join(\" \")+`\"/>\n`}let s=this.getsolved(),u=[],a=[];for(let L=0;L<this.baseFaceCount;L++)u[L]=this.colors[this.facenames[L][1]];for(let L=0;L<this.faces.length;L++){let m=this.faces[L],p=Math.floor(L/this.stickersperface),B=[];for(let F=0;F<m.length;F++)B.push(l(p,m.get(F)));a.push(B)}let f=[];for(let L=0;L<this.baseFaceCount;L++){f.push(\"<g>\"),f.push(\"<title>\"+this.facenames[L][1]+`</title>\n`);for(let m=0;m<this.stickersperface;m++){let p=L*this.stickersperface+m,B=this.facetocubie[p],F=this.facetoord[p],A=this.cubiesetnums[B],b=this.cubieordnums[B],h=this.graybyori(B)?\"#808080\":u[s.p[p]],C=this.cubiesetnames[A]+\"-l\"+b+\"-o\"+F;if(f.push(i(C,a[p],h)),this.duplicatedFaces[p])for(let E=1;E<this.duplicatedFaces[p];E++)C=this.cubiesetnames[A]+\"-l\"+b+\"-o\"+E,f.push(i(C,a[p],h))}f.push(\"</g>\")}return`<svg id=\"svg\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 800 500\">\n<style type=\"text/css\"><![CDATA[.sticker { stroke: #000000; stroke-width: 1px; }]]></style>\n`+f.join(\"\")+\"</svg>\"}get3d(e){let r=[],n=this.getInitial3DRotation(),o=[],l=.52*this.basefaces[0].get(0).len();for(let a=0;a<this.basefaces.length;a++){let f=this.basefaces[a].rotate(n),g=this.facenames[a][1];o.push({coords:Ji(f,l),name:g})}for(let a=0;a<this.faces.length;a++){let f=Math.floor(a/this.stickersperface),g=this.facetocubie[a],L=this.facetoord[a],m=this.cubiesetnums[g],p=this.cubieordnums[g],B=this.graybyori(g)?\"#808080\":this.colors[this.facenames[f][1]];e?.stickerColors&&(B=e.stickerColors[a]);let F=this.faces[a].rotate(n);r.push({coords:Ji(F,l),color:B,orbit:this.cubiesetnames[m],ord:p,ori:L,face:f});let A=F;if(this.duplicatedFaces[a]){let b=A.length/this.duplicatedFaces[a];for(let h=1;h<this.duplicatedFaces[a];h++){for(let C=0;C<b;C++)A=A.rotateforward();r.push({coords:Ji(A,l),color:B,orbit:this.cubiesetnames[m],ord:p,ori:h,face:f,isDup:!0})}}}let i=[];for(let a=0;a<this.movesetgeos.length;a++){let f=this.movesetgeos[a],g=this.movesetorders[a];for(let L of this.geonormals)f[0]===L[1]&&f[1]===L[2]&&(i.push({coordinates:Ll(L[0].rotatepoint(n),1),quantumMove:new c(f[0]),order:g}),i.push({coordinates:Ll(L[0].rotatepoint(n).smul(-1),1),quantumMove:new c(f[2]),order:g}))}let s=this.generate2dmapping(2880,2160,0,!1,1),u=function(){let a=n.invrot();return function(f,g){let L=new _(0,g[0]*l,-g[1]*l,g[2]*l);L=L.rotatepoint(a);let m=s(f,L);return m[0]/=2880,m[1]=1-m[1]/2160,m}}().bind(this);return{stickers:r,faces:o,axis:i,unswizzle:this.unswizzle.bind(this),notationMapper:this.notationMapper,textureMapper:{getuv:u}}}getGeoNormal(e){let r=this.getInitial3DRotation(),n=this.swizzler.unswizzle(e);for(let o of this.geonormals)if(n===o[1]){let l=Ll(o[0].rotatepoint(r),1);return Math.abs(l[0])<be&&Math.abs(l[2])<be&&(l[0]=0,l[2]=1e-6),l}}getfaceindex(e){let r=this.stickersperface;return Math.floor(e/r)}textForTwizzleExplorer(){return`Faces ${this.baseplanerot.length}\nStickers per face ${this.stickersperface}\nShort edge ${this.shortedge}\nCubies ${this.cubies.length}\nEdge distance ${this.edgedistance}\nVertex distance ${this.vertexdistance}`}writeSchreierSims(e){let n=this.getOrbitsDef(!1).reassemblySize();e(`Reassembly size is ${n}`);let o=fl(this.getMovesAsPerms(),e),l=n/o;e(`Ratio is ${l}`)}},xr=class{constructor(e,r){this.pg=e;this.orbitNames=r.orbitnames}lookupMove(e){let r=this.pg.parseMove(e);if(this.pg.parsedmovelist){let i=!1;for(let s of this.pg.parsedmovelist)s[1]===r[1]&&s[2]===r[2]&&s[3]===r[3]&&s[4]===r[4]&&(i=!0);if(!i)return null}let n=[r[2],r[3]];if(!r[4]){let i=this.pg.moveplanesets[r[1]].length;n=[i-r[3],i-r[2]]}let o=this.pg.getMoveFromBits(n,r[5],!r[4],this.pg.cmovesbyslice[r[1]],void 0,this.pg.movesetorders[r[1]]);return on.transformToKTransformationData(this.orbitNames,o)}}});var $i={};Ue($i,{ExperimentalPGNotation:()=>xr,PuzzleGeometry:()=>ml,Quat:()=>_,getPG3DNamedPuzzles:()=>Q0,getPuzzleDescriptionString:()=>j0,getPuzzleGeometryByDesc:()=>Xi,getPuzzleGeometryByName:()=>an,parseOptions:()=>v0,parsePuzzleDescription:()=>ro,schreierSims:()=>fl});var lo=U(()=>{ol();Ni();al();Hi();ol()});async function io(t){return(await Promise.resolve().then(()=>(lo(),$i))).getPuzzleGeometryByName(t,{allMoves:!0,orientCenters:!0,addRotations:!0})}async function T1(t,e){let r=await t,n=r.getKPuzzleDefinition(!0);n.name=e;let o=await Promise.resolve().then(()=>(lo(),$i)),l=new o.ExperimentalPGNotation(r,r.getOrbitsDef(!0));return new Ie(n,{experimentalPGNotation:l})}var Bl,cl,pl,Lt,wr,vr=U(()=>{He();rn();br();Lt=class{constructor(e){te(this,Bl,void 0);te(this,cl,void 0);te(this,pl,void 0);this.id=e.id,this.fullName=e.fullName,this.inventedBy=e.inventedBy,this.inventionYear=e.inventionYear}pg(){let e=this.id===\"fto\"?\"FTO\":this.id;return R(this,Bl)??Q(this,Bl,io(e))}kpuzzle(){return R(this,cl)??Q(this,cl,T1(this.pg(),this.id))}svg(){return R(this,pl)??Q(this,pl,(async()=>(await this.pg()).generatesvg())())}};Bl=new WeakMap,cl=new WeakMap,pl=new WeakMap;wr=class extends Lt{constructor(){super(...arguments);this.stickerings=tn}appearance(e){return Et(this,e)}}});var q0={};Ue(q0,{cube2x2x2KPuzzleDefinition:()=>zt});var zt,V0=U(()=>{zt={name:\"2x2x2\",orbits:{CORNERS:{numPieces:8,numOrientations:3}},startStateData:{CORNERS:{pieces:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]}},moves:{U:{CORNERS:{permutation:[1,2,3,0,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]}},y:{CORNERS:{permutation:[1,2,3,0,7,4,5,6],orientation:[0,0,0,0,0,0,0,0]}},x:{CORNERS:{permutation:[4,0,3,5,7,6,2,1],orientation:[2,1,2,1,1,2,1,2]}},L:{CORNERS:{permutation:[0,1,6,2,4,3,5,7],orientation:[0,0,2,1,0,2,1,0]}},F:{CORNERS:{permutation:[3,1,2,5,0,4,6,7],orientation:[1,0,0,2,2,1,0,0]}},R:{CORNERS:{permutation:[4,0,2,3,7,5,6,1],orientation:[2,1,0,0,1,0,0,2]}},B:{CORNERS:{permutation:[0,7,1,3,4,5,2,6],orientation:[0,2,1,0,0,0,2,1]}},D:{CORNERS:{permutation:[0,1,2,3,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]}},z:{CORNERS:{permutation:[3,2,6,5,0,4,7,1],orientation:[1,2,1,2,2,1,2,1]}}}};zt.moves.Rv=zt.moves.x;zt.moves.Uv=zt.moves.y;zt.moves.Fv=zt.moves.z;zt.moves.Lv={CORNERS:{permutation:[1,7,6,2,0,3,5,4],orientation:[2,1,2,1,1,2,1,2]}};zt.moves.Dv={CORNERS:{permutation:[3,0,1,2,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]}};zt.moves.Bv={CORNERS:{permutation:[4,7,1,0,5,3,2,6],orientation:[1,2,1,2,2,1,2,1]}}});var H0={};Ue(H0,{default:()=>I1});var I1,Y0=U(()=>{I1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.0//EN\"\n \"http://www.w3.org/TR/2001/REC-SVG-20050904/DTD/svg11.dtd\">\n<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 520 394\" preserveAspectRatio=\"xMidYMid meet\">\n <title>2x2x2</title>\n <defs>\n <g id=\"sticker\">\n <rect x=\"0\" y=\"0\" width=\"1\" height=\"1\" stroke=\"black\" stroke-width=\"0.04px\" />\n </g>\n </defs>\n <g id=\"puzzle\" transform=\"translate(5, 5) scale(60)\">\n <use id=\"CORNERS-l0-o0\" xlink:href=\"#sticker\" transform=\"translate(3.2, 1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l0-o1\" xlink:href=\"#sticker\" transform=\"translate(4.4, 2.2)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l0-o2\" xlink:href=\"#sticker\" transform=\"translate(3.2, 2.2)\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS-l1-o0\" xlink:href=\"#sticker\" transform=\"translate(3.2, 0)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l1-o1\" xlink:href=\"#sticker\" transform=\"translate(6.6, 2.2)\" style=\"fill: #26f\"/>\n <use id=\"CORNERS-l1-o2\" xlink:href=\"#sticker\" transform=\"translate(5.4, 2.2)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l2-o0\" xlink:href=\"#sticker\" transform=\"translate(2.2, 0)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l2-o1\" xlink:href=\"#sticker\" transform=\"translate(0, 2.2)\" style=\"fill: orange\"/>\n <use id=\"CORNERS-l2-o2\" xlink:href=\"#sticker\" transform=\"translate(7.6, 2.2)\" style=\"fill: #26f\"/>\n\n <use id=\"CORNERS-l3-o0\" xlink:href=\"#sticker\" transform=\"translate(2.2, 1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l3-o1\" xlink:href=\"#sticker\" transform=\"translate(2.2, 2.2)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l3-o2\" xlink:href=\"#sticker\" transform=\"translate(1, 2.2)\" style=\"fill: orange\"/>\n\n <use id=\"CORNERS-l4-o0\" xlink:href=\"#sticker\" transform=\"translate(3.2, 4.4)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l4-o1\" xlink:href=\"#sticker\" transform=\"translate(3.2, 3.2)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l4-o2\" xlink:href=\"#sticker\" transform=\"translate(4.4, 3.2)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l5-o0\" xlink:href=\"#sticker\" transform=\"translate(2.2, 4.4)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l5-o1\" xlink:href=\"#sticker\" transform=\"translate(1, 3.2)\" style=\"fill: orange\"/>\n <use id=\"CORNERS-l5-o2\" xlink:href=\"#sticker\" transform=\"translate(2.2, 3.2)\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS-l6-o0\" xlink:href=\"#sticker\" transform=\"translate(2.2, 5.4)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l6-o1\" xlink:href=\"#sticker\" transform=\"translate(7.6, 3.2)\" style=\"fill: #26f\"/>\n <use id=\"CORNERS-l6-o2\" xlink:href=\"#sticker\" transform=\"translate(0, 3.2)\" style=\"fill: orange\"/>\n\n <use id=\"CORNERS-l7-o0\" xlink:href=\"#sticker\" transform=\"translate(3.2, 5.4)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l7-o1\" xlink:href=\"#sticker\" transform=\"translate(5.4, 3.2)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l7-o2\" xlink:href=\"#sticker\" transform=\"translate(6.6, 3.2)\" style=\"fill: #26f\"/>\n </g>\n\n</svg>`});var so,Z0=U(()=>{He();vr();br();rn();so={id:\"2x2x2\",fullName:\"2\\xD72\\xD72 Cube\",kpuzzle:Oe(async()=>new Ie((await Promise.resolve().then(()=>(V0(),q0))).cube2x2x2KPuzzleDefinition)),svg:async()=>(await Promise.resolve().then(()=>(Y0(),H0))).default,pg:Oe(async()=>io(\"2x2x2\")),appearance:t=>Et(so,t),stickerings:tn}});var X0={};Ue(X0,{default:()=>N1});var N1,J0=U(()=>{N1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.0//EN\"\n \"http://www.w3.org/TR/2001/REC-SVG-20050904/DTD/svg11.dtd\">\n<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 518 392\" preserveAspectRatio=\"xMidYMid meet\">\n <title>3x3x3</title>\n <defs>\n <g id=\"sticker\">\n <rect x=\"0\" y=\"0\" width=\"1\" height=\"1\" stroke=\"black\" stroke-width=\"0.04px\" />\n </g>\n </defs>\n\n<!-- 0 1 2 3 4 5 6 7 8 9 10 11 -->\n<!-- | | | | | | | | | | | |<- -->\n<!-- 0 - . . . -->\n<!-- 1 - . . . -->\n<!-- 2 - . . . -->\n<!-- 3 - . . . . . . . . . . . . -->\n<!-- 4 - . . . . . . . . . . . . -->\n<!-- 5 - . . . . . . . . . . . . -->\n<!-- 6 - . . . -->\n<!-- 7 - . . . -->\n<!-- 8 - . . . -->\n\n <g id=\"puzzle\" transform=\"translate(5,5) scale(40)\">\n <!-- CORNERS -->\n <use id=\"CORNERS-l0-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,2.1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l0-o1\" xlink:href=\"#sticker\" transform=\"translate(6.5,3.3)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l0-o2\" xlink:href=\"#sticker\" transform=\"translate(5.3,3.3)\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS-l1-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,0.1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l1-o1\" xlink:href=\"#sticker\" transform=\"translate(9.7,3.3)\" style=\"fill: #26f\"/>\n <use id=\"CORNERS-l1-o2\" xlink:href=\"#sticker\" transform=\"translate(8.5,3.3)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l2-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,0.1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l2-o1\" xlink:href=\"#sticker\" transform=\"translate(0.1,3.3)\" style=\"fill: orange\"/>\n <use id=\"CORNERS-l2-o2\" xlink:href=\"#sticker\" transform=\"translate(11.7,3.3)\" style=\"fill: #26f\"/>\n\n <use id=\"CORNERS-l3-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,2.1)\" style=\"fill: white\"/>\n <use id=\"CORNERS-l3-o1\" xlink:href=\"#sticker\" transform=\"translate(3.3,3.3)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l3-o2\" xlink:href=\"#sticker\" transform=\"translate(2.1,3.3)\" style=\"fill: orange\"/>\n\n <use id=\"CORNERS-l4-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,6.5)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l4-o1\" xlink:href=\"#sticker\" transform=\"translate(5.3,5.3)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l4-o2\" xlink:href=\"#sticker\" transform=\"translate(6.5,5.3)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l5-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,6.5)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l5-o1\" xlink:href=\"#sticker\" transform=\"translate(2.1,5.3)\" style=\"fill: orange\"/>\n <use id=\"CORNERS-l5-o2\" xlink:href=\"#sticker\" transform=\"translate(3.3,5.3)\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS-l6-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,8.5)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l6-o1\" xlink:href=\"#sticker\" transform=\"translate(11.7,5.3)\" style=\"fill: #26f\"/>\n <use id=\"CORNERS-l6-o2\" xlink:href=\"#sticker\" transform=\"translate(0.1,5.3)\" style=\"fill: orange\"/>\n\n <use id=\"CORNERS-l7-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,8.5)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l7-o1\" xlink:href=\"#sticker\" transform=\"translate(8.5,5.3)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l7-o2\" xlink:href=\"#sticker\" transform=\"translate(9.7,5.3)\" style=\"fill: #26f\"/>\n\n <!-- EDGES -->\n <use id=\"EDGES-l0-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,2.1)\" style=\"fill: white\"/>\n <use id=\"EDGES-l0-o1\" xlink:href=\"#sticker\" transform=\"translate(4.3,3.3)\" style=\"fill: limegreen\"/>\n\n <use id=\"EDGES-l1-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,1.1)\" style=\"fill: white\"/>\n <use id=\"EDGES-l1-o1\" xlink:href=\"#sticker\" transform=\"translate(7.5,3.3)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l2-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,0.1)\" style=\"fill: white\"/>\n <use id=\"EDGES-l2-o1\" xlink:href=\"#sticker\" transform=\"translate(10.7,3.3)\" style=\"fill: #26f\"/>\n\n <use id=\"EDGES-l3-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,1.1)\" style=\"fill: white\"/>\n <use id=\"EDGES-l3-o1\" xlink:href=\"#sticker\" transform=\"translate(1.1,3.3)\" style=\"fill: orange\"/>\n\n <use id=\"EDGES-l4-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,6.5)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l4-o1\" xlink:href=\"#sticker\" transform=\"translate(4.3,5.3)\" style=\"fill: limegreen\"/>\n\n <use id=\"EDGES-l5-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,7.5)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l5-o1\" xlink:href=\"#sticker\" transform=\"translate(7.5,5.3)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l6-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,8.5)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l6-o1\" xlink:href=\"#sticker\" transform=\"translate(10.7,5.3)\" style=\"fill: #26f\"/>\n\n <use id=\"EDGES-l7-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,7.5)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l7-o1\" xlink:href=\"#sticker\" transform=\"translate(1.1,5.3)\" style=\"fill: orange\"/>\n\n <use id=\"EDGES-l8-o0\" xlink:href=\"#sticker\" transform=\"translate(5.3,4.3)\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l8-o1\" xlink:href=\"#sticker\" transform=\"translate(6.5,4.3)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l9-o0\" xlink:href=\"#sticker\" transform=\"translate(3.3,4.3)\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l9-o1\" xlink:href=\"#sticker\" transform=\"translate(2.1,4.3)\" style=\"fill: orange\"/>\n\n <use id=\"EDGES-l10-o0\" xlink:href=\"#sticker\" transform=\"translate(9.7,4.3)\" style=\"fill: #26f\"/>\n <use id=\"EDGES-l10-o1\" xlink:href=\"#sticker\" transform=\"translate(8.5,4.3)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l11-o0\" xlink:href=\"#sticker\" transform=\"translate(11.7,4.3)\" style=\"fill: #26f\"/>\n <use id=\"EDGES-l11-o1\" xlink:href=\"#sticker\" transform=\"translate(0.1,4.3)\" style=\"fill: orange\"/>\n\n <!-- CENTERS -->\n <!-- TODO: Allow the same sticker to be reused for multiple orientations -->\n <use id=\"CENTERS-l0-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,1.1)\" style=\"fill: white\"/>\n <use id=\"CENTERS-l0-o1\" xlink:href=\"#sticker\" transform=\"translate(4.3,1.1)\" style=\"fill: white\"/>\n <use id=\"CENTERS-l0-o2\" xlink:href=\"#sticker\" transform=\"translate(4.3,1.1)\" style=\"fill: white\"/>\n <use id=\"CENTERS-l0-o3\" xlink:href=\"#sticker\" transform=\"translate(4.3,1.1)\" style=\"fill: white\"/>\n\n <use id=\"CENTERS-l1-o0\" xlink:href=\"#sticker\" transform=\"translate(1.1,4.3)\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o1\" xlink:href=\"#sticker\" transform=\"translate(1.1,4.3)\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o2\" xlink:href=\"#sticker\" transform=\"translate(1.1,4.3)\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o3\" xlink:href=\"#sticker\" transform=\"translate(1.1,4.3)\" style=\"fill: orange\"/>\n\n <use id=\"CENTERS-l2-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,4.3)\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o1\" xlink:href=\"#sticker\" transform=\"translate(4.3,4.3)\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o2\" xlink:href=\"#sticker\" transform=\"translate(4.3,4.3)\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o3\" xlink:href=\"#sticker\" transform=\"translate(4.3,4.3)\" style=\"fill: limegreen\"/>\n\n <use id=\"CENTERS-l3-o0\" xlink:href=\"#sticker\" transform=\"translate(7.5,4.3)\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o1\" xlink:href=\"#sticker\" transform=\"translate(7.5,4.3)\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o2\" xlink:href=\"#sticker\" transform=\"translate(7.5,4.3)\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o3\" xlink:href=\"#sticker\" transform=\"translate(7.5,4.3)\" style=\"fill: red\"/>\n\n <use id=\"CENTERS-l4-o0\" xlink:href=\"#sticker\" transform=\"translate(10.7,4.3)\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o1\" xlink:href=\"#sticker\" transform=\"translate(10.7,4.3)\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o2\" xlink:href=\"#sticker\" transform=\"translate(10.7,4.3)\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o3\" xlink:href=\"#sticker\" transform=\"translate(10.7,4.3)\" style=\"fill: #26f\"/>\n\n <use id=\"CENTERS-l5-o0\" xlink:href=\"#sticker\" transform=\"translate(4.3,7.5)\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o1\" xlink:href=\"#sticker\" transform=\"translate(4.3,7.5)\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o2\" xlink:href=\"#sticker\" transform=\"translate(4.3,7.5)\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o3\" xlink:href=\"#sticker\" transform=\"translate(4.3,7.5)\" style=\"fill: yellow\"/>\n </g>\n\n</svg>`});var $0={};Ue($0,{default:()=>O1});var O1,e2=U(()=>{O1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"288px\" height=\"288px\" viewBox=\"-16 -16 288 288\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>3x3x3 LL</title>\n <defs>\n <g id=\"sticker\">\n <rect x=\"-10\" y=\"-10\" width=\"1\" height=\"1\" stroke=\"black\" stroke-width=\"0.04px\" />\n </g>\n </defs>\n <g id=\"3x3x3-LL\" stroke=\"none\" stroke-width=\"4\" style=\"none\" stroke-linejoin=\"round\">\n <rect id=\"CENTERS-l0-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"96\" width=\"64\" height=\"64\"></rect>\n <rect id=\"CENTERS-l0-o1\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"96\" width=\"64\" height=\"64\"></rect>\n <rect id=\"CENTERS-l0-o2\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"96\" width=\"64\" height=\"64\"></rect>\n <rect id=\"CENTERS-l0-o3\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"96\" width=\"64\" height=\"64\"></rect>\n\n <rect id=\"CORNERS-l0-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"160\" y=\"160\" width=\"64\" height=\"64\"></rect>\n <polygon id=\"CORNERS-l0-o1\" stroke=\"#000000\" style=\"fill: red\" points=\"224 160 252 160 252 252 224 224\"></polygon>\n <polygon id=\"CORNERS-l0-o2\" stroke=\"#000000\" style=\"fill: limegreen\" transform=\"translate(206, 238) scale(1, -1) rotate(-90) translate(-206, -238) \" points=\"192 192 220 192 220 284 192 256\"></polygon>\n <rect id=\"CORNERS-l1-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"160\" y=\"32\" width=\"64\" height=\"64\"></rect>\n <polygon id=\"CORNERS-l1-o1\" stroke=\"#000000\" style=\"fill: #26f\" transform=\"translate(206, 18) rotate(-90) translate(-206, -18) \" points=\"192 -28 220 -28 220 64 192 36\"></polygon>\n <polygon id=\"CORNERS-l1-o2\" stroke=\"#000000\" style=\"fill: red\" transform=\"translate(238, 50) scale(1, -1) translate(-238, -50) \" points=\"224 4 252 4 252 96 224 68\"></polygon>\n <rect id=\"CORNERS-l2-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"32\" y=\"32\" width=\"64\" height=\"64\"></rect>\n <polygon id=\"CORNERS-l2-o1\" stroke=\"#000000\" style=\"fill: orange\" transform=\"translate(18, 50) scale(-1, -1) translate(-18, -50) \" points=\"4 4 32 4 32 96 4 68\"></polygon>\n <polygon id=\"CORNERS-l2-o2\" stroke=\"#000000\" style=\"fill: #26f\" transform=\"translate(50, 18) scale(1, -1) rotate(90) translate(-50, -18) \" points=\"36 -28 64 -28 64 64 36 36\"></polygon>\n <rect id=\"CORNERS-l3-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"32\" y=\"160\" width=\"64\" height=\"64\"></rect>\n <polygon id=\"CORNERS-l3-o1\" stroke=\"#000000\" style=\"fill: limegreen\" transform=\"translate(50, 238) rotate(90) translate(-50, -238) \" points=\"36 192 64 192 64 284 36 256\"></polygon>\n <polygon id=\"CORNERS-l3-o2\" stroke=\"#000000\" style=\"fill: orange\" transform=\"translate(18, 206) scale(-1, 1) translate(-18, -206) \" points=\"4 160 32 160 32 252 4 224\"></polygon>\n\n <rect id=\"EDGES-l0-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"160\" width=\"64\" height=\"64\"></rect>\n <rect id=\"EDGES-l0-o1\" stroke=\"#000000\" style=\"fill: limegreen\" transform=\"translate(128, 238) scale(1, -1) rotate(90) translate(-128, -238) \" x=\"114\" y=\"206\" width=\"28\" height=\"64\"></rect>\n <rect id=\"EDGES-l1-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"160\" y=\"96\" width=\"64\" height=\"64\"></rect>\n <rect id=\"EDGES-l1-o1\" stroke=\"#000000\" style=\"fill: red\" x=\"224\" y=\"96\" width=\"28\" height=\"64\"></rect>\n <rect id=\"EDGES-l2-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"96\" y=\"32\" width=\"64\" height=\"64\"></rect>\n <rect id=\"EDGES-l2-o1\" stroke=\"#000000\" style=\"fill: #26f\" transform=\"translate(128, 18) scale(1, -1) rotate(90) translate(-128, -18) \" x=\"114\" y=\"-14\" width=\"28\" height=\"64\"></rect>\n <rect id=\"EDGES-l3-o0\" stroke=\"#000000\" style=\"fill: white\" x=\"32\" y=\"96\" width=\"64\" height=\"64\"></rect>\n <rect id=\"EDGES-l3-o1\" stroke=\"#000000\" style=\"fill: orange\" x=\"4\" y=\"96\" width=\"28\" height=\"64\"></rect>\n\n </g>\n <g style=\"opacity: 0\">\n <!-- CORNERS -->\n <use id=\"CORNERS-l4-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l4-o1\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l4-o2\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l5-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l5-o1\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n <use id=\"CORNERS-l5-o2\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS-l6-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l6-o1\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"CORNERS-l6-o2\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n\n <use id=\"CORNERS-l7-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l7-o1\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n <use id=\"CORNERS-l7-o2\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n\n <!-- EDGES -->\n <use id=\"EDGES-l4-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l4-o1\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n\n <use id=\"EDGES-l5-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l5-o1\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l6-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l6-o1\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n\n <use id=\"EDGES-l7-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l7-o1\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n\n <use id=\"EDGES-l8-o0\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l8-o1\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l9-o0\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l9-o1\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n\n <use id=\"EDGES-l10-o0\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"EDGES-l10-o1\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l11-o0\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"EDGES-l11-o1\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n\n <!-- CENTERS -->\n <!-- TODO: Allow the same sticker to be reused for multiple orientations -->\n <use id=\"CENTERS-l1-o0\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o1\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o2\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n <use id=\"CENTERS-l1-o3\" xlink:href=\"#sticker\" style=\"fill: orange\"/>\n\n <use id=\"CENTERS-l2-o0\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o1\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o2\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n <use id=\"CENTERS-l2-o3\" xlink:href=\"#sticker\" style=\"fill: limegreen\"/>\n\n <use id=\"CENTERS-l3-o0\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o1\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o2\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n <use id=\"CENTERS-l3-o3\" xlink:href=\"#sticker\" style=\"fill: red\"/>\n\n <use id=\"CENTERS-l4-o0\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o1\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o2\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n <use id=\"CENTERS-l4-o3\" xlink:href=\"#sticker\" style=\"fill: #26f\"/>\n\n <use id=\"CENTERS-l5-o0\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o1\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o2\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n <use id=\"CENTERS-l5-o3\" xlink:href=\"#sticker\" style=\"fill: yellow\"/>\n </g>\n</svg>`});var es,t2=U(()=>{He();vr();br();rn();es={id:\"3x3x3\",fullName:\"3\\xD73\\xD73 Cube\",inventedBy:[\"Ern\\u0151 Rubik\"],inventionYear:1974,kpuzzle:Oe(async()=>Gi),svg:Oe(async()=>(await Promise.resolve().then(()=>(J0(),X0))).default),llSVG:Oe(async()=>(await Promise.resolve().then(()=>(e2(),$0))).default),pg:Oe(async()=>io(\"3x3x3\")),appearance:t=>Et(es,t),stickerings:tn}});var r2={};Ue(r2,{clockKPuzzleDefinition:()=>_1});var _1,n2=U(()=>{_1={name:\"Clock\",orbits:{DIALS:{numPieces:18,numOrientations:12},FACES:{numPieces:18,numOrientations:1},FRAME:{numPieces:1,numOrientations:2}},startStateData:{DIALS:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{pieces:[0],orientation:[0]}},moves:{UR_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,1,1,0,1,1,0,0,0,-1,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DR_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,1,1,0,1,1,0,0,0,0,0,0,-1,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DL_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},UL_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,0,1,1,0,0,0,0,0,0,-1,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},U_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,1,1,1,1,0,0,0,-1,0,-1,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},R_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,1,1,0,1,1,0,1,1,-1,0,0,0,0,0,-1,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},D_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,-1,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},L_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,0,1,1,0,1,1,0,0,0,-1,0,0,0,0,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},ALL_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,1,1,1,1,1,1,1,-1,0,-1,0,0,0,-1,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},y2:{DIALS:{permutation:[9,10,11,12,13,14,15,16,17,0,1,2,3,4,5,6,7,8],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[9,10,11,12,13,14,15,16,17,0,1,2,3,4,5,6,7,8],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[1]}},UL:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},UR:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DL:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DR:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}}}}});var o2={};Ue(o2,{default:()=>W1});var W1,l2=U(()=>{W1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 480 240\" preserveAspectRatio=\"xMidYMid meet\">\n <title>clock</title>\n <defs>\n <g id=\"hand\" transform=\"translate(-20, -20)\">\n <path d=\"M19.9995197,2.22079449 L23.8791657,19.0203611 C23.9580836,19.3338406 24,19.6620253 24,20 C24,22.209139 22.209139,24 20,24 C17.790861,24 16,22.209139 16,20 C16,19.6620253 16.0419164,19.3338406 16.1208343,19.0203611 L19.9995197,2.22079449 Z\"></path>\n </g>\n <g id=\"cardinal_hours\" style=\"fill: #FFFFFF\">\n <circle cx=\"0\" cy=\"24\" r=\"2\"></circle>\n <circle cx=\"-24\" cy=\"0\" r=\"2\"></circle>\n <circle cx=\"24\" cy=\"0\" r=\"2\"></circle>\n <circle cx=\"0\" cy=\"-24\" r=\"2\"></circle>\n </g>\n <g id=\"face_hours\">\n <g>\n <use xlink:href=\"#cardinal_hours\"/>\n </g>\n <g transform=\"rotate(30)\">\n <use xlink:href=\"#cardinal_hours\"/>\n </g>\n <g transform=\"rotate(60)\">\n <use xlink:href=\"#cardinal_hours\"/>\n </g>\n </g>\n <g id=\"pegs\" stroke=\"#000000\" style=\"fill: #FFD000\">\n <circle id=\"PEG4\" cx=\"90\" cy=\"90\" r=\"10\"></circle>\n <circle id=\"PEG3\" cx=\"30\" cy=\"90\" r=\"10\"></circle>\n <circle id=\"PEG2\" cx=\"90\" cy=\"30\" r=\"10\"></circle>\n <circle id=\"PEG1\" cx=\"30\" cy=\"30\" r=\"10\"></circle>\n </g>\n <g id=\"frame\" transform=\"translate(-24, -24)\">\n <path stroke=\"#000000\" d=\"M120,20 C137.495665,20 153.941932,24.4930026 168.247913,32.3881183 C171.855881,30.8514056 175.828512,30 180,30 C196.568542,30 210,43.4314575 210,60 C210,64.1714878 209.148594,68.1441192 207.610077,71.7536009 C215.506997,86.0580678 220,102.504335 220,120 C220,137.495665 215.506997,153.941932 207.611882,168.247913 C209.148594,171.855881 210,175.828512 210,180 C210,196.568542 196.568542,210 180,210 C175.828512,210 171.855881,209.148594 168.246399,207.610077 C153.941932,215.506997 137.495665,220 120,220 C102.504335,220 86.0580678,215.506997 71.7520869,207.611882 C68.1441192,209.148594 64.1714878,210 60,210 C43.4314575,210 30,196.568542 30,180 C30,175.828512 30.8514056,171.855881 32.3899234,168.246399 C24.4930026,153.941932 20,137.495665 20,120 C20,102.504335 24.4930026,86.0580678 32.3881183,71.7520869 C30.8514056,68.1441192 30,64.1714878 30,60 C30,43.4314575 43.4314575,30 60,30 C64.1714878,30 68.1441192,30.8514056 71.7536009,32.3899234 C86.0580678,24.4930026 102.504335,20 120,20 Z\"></path>\n </g>\n </defs>\n <g>\n <g transform=\"translate(24, 24)\">\n <use xlink:href=\"#frame\" id=\"FRAME-l0-o0\" style=\"fill: #0C5093\"/>\n <use xlink:href=\"#pegs\" transform=\"translate(36, 36)\"/>\n <g transform=\"translate(36, 36)\">\n <circle id=\"FACES-l0-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l0-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l0-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l0-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 36)\">\n <circle id=\"FACES-l1-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l1-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l1-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l1-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 36)\">\n <circle id=\"FACES-l2-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l2-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l2-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l2-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(36, 96)\">\n <circle id=\"FACES-l3-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l3-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l3-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l3-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 96)\">\n <circle id=\"FACES-l4-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l4-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l4-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l4-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 96)\">\n <circle id=\"FACES-l5-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l5-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l5-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l5-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(36, 156)\">\n <circle id=\"FACES-l6-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l6-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l6-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l6-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 156)\">\n <circle id=\"FACES-l7-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l7-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l7-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l7-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 156)\">\n <circle id=\"FACES-l8-o0\" stroke=\"#000000\" style=\"fill: #90B8DF\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l8-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l8-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l8-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n </g>\n <g transform=\"translate(264, 24)\">\n <use xlink:href=\"#frame\" id=\"FRAME-l0-o1\" style=\"fill: #90B8DF\"/>\n <use xlink:href=\"#pegs\" transform=\"translate(36, 36)\"/>\n <g transform=\"translate(36, 36)\">\n <circle id=\"FACES-l9-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l9-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l9-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l9-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 36)\">\n <circle id=\"FACES-l10-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l10-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l10-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l10-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 36)\">\n <circle id=\"FACES-l11-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l11-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l11-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l11-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(36, 96)\">\n <circle id=\"FACES-l12-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l12-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l12-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l12-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 96)\">\n <circle id=\"FACES-l13-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l13-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l13-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l13-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 96)\">\n <circle id=\"FACES-l14-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l14-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l14-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l14-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(36, 156)\">\n <circle id=\"FACES-l15-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l15-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l15-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l15-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(96, 156)\">\n <circle id=\"FACES-l16-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l16-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l16-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l16-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n <g transform=\"translate(156, 156)\">\n <circle id=\"FACES-l17-o0\" stroke=\"#000000\" style=\"fill: #0C5093\" r=\"20\"></circle>\n <use xlink:href=\"#face_hours\"/>\n <g>\n <use id=\"DIALS-l17-o0\" xlink:href=\"#hand\" transform=\"rotate(0)\" style=\"fill: #FFD000\"/>\n <use id=\"DIALS-l17-o1\" xlink:href=\"#hand\" transform=\"rotate(30)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o2\" xlink:href=\"#hand\" transform=\"rotate(60)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o3\" xlink:href=\"#hand\" transform=\"rotate(90)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o4\" xlink:href=\"#hand\" transform=\"rotate(120)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o5\" xlink:href=\"#hand\" transform=\"rotate(150)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o6\" xlink:href=\"#hand\" transform=\"rotate(180)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o7\" xlink:href=\"#hand\" transform=\"rotate(210)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o8\" xlink:href=\"#hand\" transform=\"rotate(240)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o9\" xlink:href=\"#hand\" transform=\"rotate(270)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o10\" xlink:href=\"#hand\" transform=\"rotate(300)\" style=\"fill: #0000\"/>\n <use id=\"DIALS-l17-o11\" xlink:href=\"#hand\" transform=\"rotate(330)\" style=\"fill: #0000\"/>\n </g>\n </g>\n </g>\n </g>\n</svg>`});var i2,s2=U(()=>{He();br();i2={id:\"clock\",fullName:\"Clock\",inventedBy:[\"Christopher C. Wiggs\",\"Christopher J. Taylor\"],inventionYear:1988,kpuzzle:Oe(async()=>new Ie((await Promise.resolve().then(()=>(n2(),r2))).clockKPuzzleDefinition)),svg:Oe(async()=>(await Promise.resolve().then(()=>(l2(),o2))).default)}});async function a2(t,e){let r=await t.kpuzzle(),n=new Zn(r),o=new Xn(r),l=()=>o.and([o.move(\"U\"),o.not(o.or(o.moves([\"F\",\"BL\",\"BR\"])))]),i=()=>o.and([o.move(\"U\"),o.not(o.move(\"F\"))]),s=()=>o.or([i(),o.and([o.move(\"F\"),o.not(o.or(o.moves([\"U\",\"BL\",\"BR\"])))])]),u=()=>o.not(o.or([o.and([o.move(\"U\"),o.move(\"F\")]),o.and([o.move(\"F\"),o.move(\"BL\")]),o.and([o.move(\"F\"),o.move(\"BR\")]),o.and([o.move(\"BL\"),o.move(\"BR\")])])),a=()=>o.not(o.or([o.and([o.move(\"F\"),o.move(\"BL\")]),o.and([o.move(\"F\"),o.move(\"BR\")]),o.and([o.move(\"BL\"),o.move(\"BR\")])]));switch(e){case\"full\":break;case\"experimental-fto-fc\":n.set(o.not(l()),S.Ignored);break;case\"experimental-fto-f2t\":n.set(o.not(i()),S.Ignored),n.set(l(),S.Dim);break;case\"experimental-fto-sc\":n.set(o.not(s()),S.Ignored),n.set(i(),S.Dim);break;case\"experimental-fto-l2c\":n.set(o.not(u()),S.Ignored),n.set(s(),S.Dim);break;case\"experimental-fto-lbt\":n.set(o.not(a()),S.Ignored),n.set(u(),S.Dim);break;case\"experimental-fto-l3t\":n.set(a(),S.Dim);break;default:console.warn(`Unsupported stickering for ${t.id}: ${e}. Setting all pieces to dim.`),n.set(o.and(o.moves([])),S.Dim)}return n.toAppearance()}async function u2(){return[\"full\",\"experimental-fto-fc\",\"experimental-fto-f2t\",\"experimental-fto-sc\",\"experimental-fto-l2c\",\"experimental-fto-lbt\",\"experimental-fto-l3t\"]}var f2=U(()=>{Jn()});var g2,L2,m2=U(()=>{vr();f2();g2=class extends Lt{constructor(){super({id:\"fto\",fullName:\"Face-Turning Octahedron\",inventedBy:[\"Karl Rohrbach\",\"David Pitcher\"],inventionYear:1983});this.stickerings=u2}appearance(e){return a2(this,e)}},L2=new g2});async function B2(t,e){switch(e){case\"full\":case\"F2L\":case\"LL\":return Et(t,e);default:console.warn(`Unsupported stickering for ${t.id}: ${e}. Setting all pieces to dim.`)}return Et(t,\"full\")}async function c2(){return[\"full\",\"F2L\",\"LL\"]}var p2=U(()=>{rn()});var R2,d2,D2=U(()=>{vr();p2();R2=class extends Lt{constructor(){super({id:\"megaminx\",fullName:\"Megaminx\",inventionYear:1981});this.stickerings=c2}appearance(e){return B2(this,e)}},d2=new R2});var F2={};Ue(F2,{default:()=>K1});var K1,A2=U(()=>{K1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.0//EN\"\n \"http://www.w3.org/TR/2001/REC-SVG-20050904/DTD/svg11.dtd\">\n<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"-20 -20 546 480\" preserveAspectRatio=\"xMidYMid meet\">\n <defs>\n </defs>\n <title>pyraminx</title>\n <defs>\n <g id=\"stickerA\" transform=\"scale(1, 0.577350269)\">\n <path\n d=\"m 0,1.732050808 1,-1.732050808 1,1.732050808 z\"\n stroke=\"black\" stroke-width=\"0.04px\" stroke-linecap=\"butt\" stroke-linejoin=\"round\"\n />\n </g>\n <g id=\"stickerV\" transform=\"scale(1, 0.577350269)\">\n <path\n d=\"m 0,0 1,1.732050808 1,-1.732050808 z\"\n stroke=\"black\" stroke-width=\"0.04px\" stroke-linecap=\"butt\" stroke-linejoin=\"round\"\n />\n </g>\n </defs>\n\n<!-- 0 1 2 3 4 5 6 7 8 9 10 -->\n<!-- | | | | | | | | | | | -->\n<!-- 0 - L L L L L F R R R R R -->\n<!-- 1 - L L L F F F R R R -->\n<!-- 2 - L F F F F F R -->\n<!-- 3 - D D D D D -->\n<!-- 4 - D D D -->\n<!-- 5 - D -->\n\n <g id=\"puzzle\" transform=\"translate(5, 5) scale(40, 69.28203232)\">\n <!-- CORNERS -->\n <use id=\"CORNERS-l0-o0\" xlink:href=\"#stickerV\" transform=\"translate(5.2, 1.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l0-o1\" xlink:href=\"#stickerA\" transform=\"translate(3, 0)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l0-o2\" xlink:href=\"#stickerA\" transform=\"translate(7.4, 0)\" style=\"fill: blue\"/>\n\n <use id=\"CORNERS-l3-o0\" xlink:href=\"#stickerV\" transform=\"translate(4.2, 2.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l3-o1\" xlink:href=\"#stickerA\" transform=\"translate(4.2, 3.2)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS-l3-o2\" xlink:href=\"#stickerA\" transform=\"translate(2, 1)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS-l2-o0\" xlink:href=\"#stickerV\" transform=\"translate(6.2, 2.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS-l2-o1\" xlink:href=\"#stickerA\" transform=\"translate(8.4, 1)\" style=\"fill: blue\"/>\n <use id=\"CORNERS-l2-o2\" xlink:href=\"#stickerA\" transform=\"translate(6.2, 3.2)\" style=\"fill: yellow\"/>\n\n <use id=\"CORNERS-l1-o1\" xlink:href=\"#stickerA\" transform=\"translate(9.4, 0)\" style=\"fill: blue\"/>\n <use id=\"CORNERS-l1-o2\" xlink:href=\"#stickerA\" transform=\"translate(1, 0)\" style=\"fill: red\"/>\n <use id=\"CORNERS-l1-o0\" xlink:href=\"#stickerA\" transform=\"translate(5.2, 4.2)\" style=\"fill: yellow\"/>\n\n <!-- \"TIPS\" -->\n <!-- CORNERS2 -->\n <use id=\"CORNERS2-l0-o0\" xlink:href=\"#stickerA\" transform=\"translate(5.2, 0.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS2-l0-o1\" xlink:href=\"#stickerV\" transform=\"translate(4, 0)\" style=\"fill: red\"/>\n <use id=\"CORNERS2-l0-o2\" xlink:href=\"#stickerV\" transform=\"translate(6.4, 0)\" style=\"fill: blue\"/>\n\n <use id=\"CORNERS2-l3-o0\" xlink:href=\"#stickerA\" transform=\"translate(3.2, 2.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"CORNERS2-l3-o1\" xlink:href=\"#stickerV\" transform=\"translate(3.2, 3.2)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS2-l3-o2\" xlink:href=\"#stickerV\" transform=\"translate(2, 2)\" style=\"fill: red\"/>\n\n <use id=\"CORNERS2-l2-o1\" xlink:href=\"#stickerV\" transform=\"translate(8.4, 2)\" style=\"fill: blue\"/>\n <use id=\"CORNERS2-l2-o2\" xlink:href=\"#stickerV\" transform=\"translate(7.2, 3.2)\" style=\"fill: yellow\"/>\n <use id=\"CORNERS2-l2-o0\" xlink:href=\"#stickerA\" transform=\"translate(7.2, 2.066666667)\" style=\"fill: limegreen\"/>\n\n <use id=\"CORNERS2-l1-o1\" xlink:href=\"#stickerV\" transform=\"translate(10.4,0)\" style=\"fill: blue\"/>\n <use id=\"CORNERS2-l1-o2\" xlink:href=\"#stickerV\" transform=\"translate(0, 0)\" style=\"fill: red\"/>\n <use id=\"CORNERS2-l1-o0\" xlink:href=\"#stickerV\" transform=\"translate(5.2, 5.2)\" style=\"fill: yellow\"/>\n\n <!-- EDGES -->\n <use id=\"EDGES-l0-o0\" xlink:href=\"#stickerA\" transform=\"translate(4.2, 1.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l0-o1\" xlink:href=\"#stickerV\" transform=\"translate(3, 1)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l5-o0\" xlink:href=\"#stickerA\" transform=\"translate(6.2, 1.066666667)\" style=\"fill: limegreen\"/>\n <use id=\"EDGES-l5-o1\" xlink:href=\"#stickerV\" transform=\"translate(7.4, 1)\" style=\"fill: blue\"/>\n\n <use id=\"EDGES-l1-o1\" xlink:href=\"#stickerV\" transform=\"translate(8.4, 0)\" style=\"fill: blue\"/>\n <use id=\"EDGES-l1-o0\" xlink:href=\"#stickerV\" transform=\"translate(2, 0)\" style=\"fill: red\"/>\n\n <use id=\"EDGES-l2-o1\" xlink:href=\"#stickerV\" transform=\"translate(5.2, 3.2)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l2-o0\" xlink:href=\"#stickerA\" transform=\"translate(5.2, 2.066666667)\" style=\"fill: limegreen\"/>\n\n <use id=\"EDGES-l3-o0\" xlink:href=\"#stickerV\" transform=\"translate(6.2, 4.2)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l3-o1\" xlink:href=\"#stickerV\" transform=\"translate(9.4, 1)\" style=\"fill: blue\"/>\n\n <use id=\"EDGES-l4-o0\" xlink:href=\"#stickerV\" transform=\"translate(4.2, 4.2)\" style=\"fill: yellow\"/>\n <use id=\"EDGES-l4-o1\" xlink:href=\"#stickerV\" transform=\"translate(1, 1)\" style=\"fill: red\"/>\n </g>\n\n</svg>`});var h2,y2,U2=U(()=>{vr();br();h2=class extends Lt{constructor(){super({id:\"pyraminx\",fullName:\"Pyraminx\",inventedBy:[\"Uwe Meffert\"]});this.svg=Oe(async()=>(await Promise.resolve().then(()=>(A2(),F2))).default)}},y2=new h2});var b2={};Ue(b2,{sq1HyperOrbitKPuzzleDefinition:()=>Q1});var Q1,S2=U(()=>{Q1={name:\"Square-1\",orbits:{WEDGES:{numPieces:24,numOrientations:9},EQUATOR:{numPieces:2,numOrientations:6}},startStateData:{WEDGES:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{pieces:[0,1],orientation:[0,0]}},moves:{U_SQ_:{WEDGES:{permutation:[11,0,1,2,3,4,5,6,7,8,9,10,12,13,14,15,16,17,18,19,20,21,22,23],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{permutation:[0,1],orientation:[0,0]}},D_SQ_:{WEDGES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,23,12,13,14,15,16,17,18,19,20,21,22],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{permutation:[0,1],orientation:[0,0]}},_SLASH_:{WEDGES:{permutation:[0,1,2,3,4,5,12,13,14,15,16,17,6,7,8,9,10,11,18,19,20,21,22,23],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{permutation:[0,1],orientation:[0,3]}}}}});var x2={};Ue(x2,{default:()=>j1});var j1,w2=U(()=>{j1=`<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"360px\" height=\"552px\" viewBox=\"0 0 360 552\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <!-- Generator: Sketch 59.1 (86144) - https://sketch.com -->\n <title>sq1-fancy</title>\n <desc>Created with Sketch.</desc>\n <!-- stroke=\"none\" -->\n <g id=\"sq1-fancy\" stroke=\"#888\" stroke-width=\"0.25\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"EQUATOR\" transform=\"translate(24.000000, 264.000000)\">\n <rect id=\"EQUATOR-l1-o3\" style=\"fill: red\" x=\"168\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l1-o4\" style=\"fill: red\" x=\"192\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l1-o5\" style=\"fill: limegreen\" x=\"216\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l1-o2\" style=\"fill: limegreen\" x=\"240\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l1-o1\" style=\"fill: limegreen\" x=\"264\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l1-o0\" style=\"fill: orange\" x=\"288\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o3\" style=\"fill: orange\" x=\"0\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o4\" style=\"fill: orange\" x=\"24\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o5\" style=\"fill: limegreen\" x=\"48\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o2\" style=\"fill: limegreen\" x=\"72\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o1\" style=\"fill: limegreen\" x=\"96\" y=\"0\" width=\"24\" height=\"24\"></rect>\n <rect id=\"EQUATOR-l0-o0\" style=\"fill: red\" x=\"120\" y=\"0\" width=\"24\" height=\"24\"></rect>\n </g>\n <g id=\"BOTTOM\" transform=\"translate(41.000000, 257.000000)\" stroke-linejoin=\"round\">\n <g id=\"WEDGES-23\" transform=\"translate(130.000000, 88.588457) rotate(120.000000) translate(-130.000000, -88.588457) translate(82.000000, 22.588457)\">\n <polygon id=\"WEDGES-l23-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l23-o7\" style=\"fill: red\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l23-o6\" style=\"fill: red\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l23-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l23-o4\" style=\"fill: red\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l23-o3\" style=\"fill: white\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l23-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l23-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l23-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-22\" transform=\"translate(97.157677, 115.157677) rotate(90.000000) translate(-97.157677, -115.157677) translate(49.157677, 49.157677)\">\n <polygon id=\"WEDGES-l22-o8\" style=\"fill: blue\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l22-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l22-o6\" style=\"fill: blue\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l22-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l22-o4\" style=\"fill: white\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l22-o3\" style=\"fill: blue\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l22-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l22-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l22-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-21\" transform=\"translate(82.000000, 154.588457) rotate(60.000000) translate(-82.000000, -154.588457) translate(34.000000, 88.588457)\">\n <polygon id=\"WEDGES-l21-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l21-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l21-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l21-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l21-o4\" style=\"fill: blue\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l21-o3\" style=\"fill: blue\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l21-o2\" style=\"fill: blue\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l21-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l21-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-20\" transform=\"translate(88.588457, 196.315353) rotate(30.000000) translate(-88.588457, -196.315353) translate(40.588457, 130.315353)\">\n <polygon id=\"WEDGES-l20-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l20-o7\" style=\"fill: blue\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l20-o6\" style=\"fill: blue\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l20-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l20-o4\" style=\"fill: blue\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l20-o3\" style=\"fill: white\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l20-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l20-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l20-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-19\" transform=\"translate(67.157677, 163.157677)\">\n <polygon id=\"WEDGES-l19-o8\" style=\"fill: orange\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l19-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l19-o6\" style=\"fill: orange\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l19-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l19-o4\" style=\"fill: white\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l19-o3\" style=\"fill: orange\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l19-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l19-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l19-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-18\" transform=\"translate(154.588457, 244.315353) scale(-1, -1) rotate(150.000000) translate(-154.588457, -244.315353) translate(106.588457, 178.315353)\">\n <polygon id=\"WEDGES-l18-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l18-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l18-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l18-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l18-o4\" style=\"fill: orange\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l18-o3\" style=\"fill: orange\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l18-o2\" style=\"fill: orange\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l18-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l18-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-17\" transform=\"translate(196.315353, 237.726896) scale(-1, -1) rotate(120.000000) translate(-196.315353, -237.726896) translate(148.315353, 171.726896)\">\n <polygon id=\"WEDGES-l17-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l17-o7\" style=\"fill: orange\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l17-o6\" style=\"fill: orange\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l17-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l17-o4\" style=\"fill: orange\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l17-o3\" style=\"fill: white\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l17-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l17-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l17-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-16\" transform=\"translate(229.157677, 211.157677) scale(-1, -1) rotate(90.000000) translate(-229.157677, -211.157677) translate(181.157677, 145.157677)\">\n <polygon id=\"WEDGES-l16-o8\" style=\"fill: limegreen\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l16-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l16-o6\" style=\"fill: limegreen\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l16-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l16-o4\" style=\"fill: white\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l16-o3\" style=\"fill: limegreen\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l16-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l16-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l16-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-15\" transform=\"translate(244.315353, 171.726896) scale(-1, -1) rotate(60.000000) translate(-244.315353, -171.726896) translate(196.315353, 105.726896)\">\n <polygon id=\"WEDGES-l15-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l15-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l15-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l15-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l15-o4\" style=\"fill: limegreen\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l15-o3\" style=\"fill: limegreen\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l15-o2\" style=\"fill: limegreen\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l15-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l15-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-14\" transform=\"translate(237.726896, 130.000000) scale(-1, -1) rotate(30.000000) translate(-237.726896, -130.000000) translate(189.726896, 64.000000)\">\n <polygon id=\"WEDGES-l14-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l14-o7\" style=\"fill: limegreen\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l14-o6\" style=\"fill: limegreen\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l14-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l14-o4\" style=\"fill: limegreen\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l14-o3\" style=\"fill: white\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l14-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l14-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l14-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-13\" transform=\"translate(211.157677, 97.157677) scale(-1, -1) translate(-211.157677, -97.157677) translate(163.157677, 31.157677)\">\n <polygon id=\"WEDGES-l13-o8\" style=\"fill: red\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l13-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l13-o6\" style=\"fill: red\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l13-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l13-o4\" style=\"fill: white\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l13-o3\" style=\"fill: red\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l13-o2\" style=\"fill: white\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l13-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l13-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-12\" transform=\"translate(171.726896, 82.000000) rotate(150.000000) translate(-171.726896, -82.000000) translate(123.726896, 16.000000)\">\n <polygon id=\"WEDGES-l12-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l12-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l12-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l12-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l12-o4\" style=\"fill: red\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l12-o3\" style=\"fill: red\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l12-o2\" style=\"fill: red\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l12-o1\" style=\"fill: white\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l12-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n </g>\n <g id=\"TOP\" transform=\"translate(41.000000, -31.000000)\" stroke-linejoin=\"round\">\n <g id=\"WEDGES-11\" transform=\"translate(154.588457, 244.315353) scale(-1, -1) rotate(150.000000) translate(-154.588457, -244.315353) translate(106.588457, 178.315353)\">\n <polygon id=\"WEDGES-l11-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l11-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l11-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l11-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l11-o4\" style=\"fill: red\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l11-o3\" style=\"fill: red\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l11-o2\" style=\"fill: red\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l11-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l11-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-10\" transform=\"translate(196.315353, 237.726896) scale(-1, -1) rotate(120.000000) translate(-196.315353, -237.726896) translate(148.315353, 171.726896)\">\n <polygon id=\"WEDGES-l10-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l10-o7\" style=\"fill: red\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l10-o6\" style=\"fill: red\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l10-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l10-o4\" style=\"fill: red\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l10-o3\" style=\"fill: yellow\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l10-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l10-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l10-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-9\" transform=\"translate(229.157677, 211.157677) scale(-1, -1) rotate(90.000000) translate(-229.157677, -211.157677) translate(181.157677, 145.157677)\">\n <polygon id=\"WEDGES-l9-o8\" style=\"fill: limegreen\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l9-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l9-o6\" style=\"fill: limegreen\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l9-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l9-o4\" style=\"fill: yellow\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l9-o3\" style=\"fill: limegreen\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l9-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l9-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l9-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-8\" transform=\"translate(244.315353, 171.726896) scale(-1, -1) rotate(60.000000) translate(-244.315353, -171.726896) translate(196.315353, 105.726896)\">\n <polygon id=\"WEDGES-l8-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l8-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l8-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l8-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l8-o4\" style=\"fill: limegreen\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l8-o3\" style=\"fill: limegreen\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l8-o2\" style=\"fill: limegreen\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l8-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l8-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-7\" transform=\"translate(237.726896, 130.000000) scale(-1, -1) rotate(30.000000) translate(-237.726896, -130.000000) translate(189.726896, 64.000000)\">\n <polygon id=\"WEDGES-l7-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l7-o7\" style=\"fill: limegreen\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l7-o6\" style=\"fill: limegreen\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l7-o5\" style=\"fill: limegreen\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l7-o4\" style=\"fill: limegreen\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l7-o3\" style=\"fill: yellow\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l7-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l7-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l7-o0\" style=\"fill: limegreen\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-6\" transform=\"translate(211.157677, 97.157677) scale(-1, -1) translate(-211.157677, -97.157677) translate(163.157677, 31.157677)\">\n <polygon id=\"WEDGES-l6-o8\" style=\"fill: orange\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l6-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l6-o6\" style=\"fill: orange\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l6-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l6-o4\" style=\"fill: yellow\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l6-o3\" style=\"fill: orange\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l6-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l6-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l6-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-5\" transform=\"translate(171.726896, 82.000000) rotate(150.000000) translate(-171.726896, -82.000000) translate(123.726896, 16.000000)\">\n <polygon id=\"WEDGES-l5-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l5-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l5-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l5-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l5-o4\" style=\"fill: orange\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l5-o3\" style=\"fill: orange\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l5-o2\" style=\"fill: orange\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l5-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l5-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-4\" transform=\"translate(130.000000, 88.588457) rotate(120.000000) translate(-130.000000, -88.588457) translate(82.000000, 22.588457)\">\n <polygon id=\"WEDGES-l4-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l4-o7\" style=\"fill: orange\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l4-o6\" style=\"fill: orange\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l4-o5\" style=\"fill: orange\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l4-o4\" style=\"fill: orange\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l4-o3\" style=\"fill: yellow\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l4-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l4-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l4-o0\" style=\"fill: orange\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-3\" transform=\"translate(97.157677, 115.157677) rotate(90.000000) translate(-97.157677, -115.157677) translate(49.157677, 49.157677)\">\n <polygon id=\"WEDGES-l3-o8\" style=\"fill: blue\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l3-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l3-o6\" style=\"fill: blue\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l3-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l3-o4\" style=\"fill: yellow\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l3-o3\" style=\"fill: blue\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l3-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l3-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l3-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-2\" transform=\"translate(82.000000, 154.588457) rotate(60.000000) translate(-82.000000, -154.588457) translate(34.000000, 88.588457)\">\n <polygon id=\"WEDGES-l2-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l2-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l2-o6\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l2-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l2-o4\" style=\"fill: blue\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l2-o3\" style=\"fill: blue\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l2-o2\" style=\"fill: blue\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l2-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l2-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-1\" transform=\"translate(88.588457, 196.315353) rotate(30.000000) translate(-88.588457, -196.315353) translate(40.588457, 130.315353)\">\n <polygon id=\"WEDGES-l1-o8\" style=\"fill: #D8D8D8\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l1-o7\" style=\"fill: blue\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l1-o6\" style=\"fill: blue\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l1-o5\" style=\"fill: blue\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l1-o4\" style=\"fill: blue\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l1-o3\" style=\"fill: yellow\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l1-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l1-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l1-o0\" style=\"fill: blue\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n <g id=\"WEDGES-0\" transform=\"translate(67.157677, 163.157677)\">\n <polygon id=\"WEDGES-l0-o8\" style=\"fill: red\" points=\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\"></polygon>\n <polygon id=\"WEDGES-l0-o7\" style=\"fill: #D8D8D8\" points=\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\"></polygon>\n <polygon id=\"WEDGES-l0-o6\" style=\"fill: red\" points=\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\"></polygon>\n <polygon id=\"WEDGES-l0-o5\" style=\"fill: red\" points=\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\"></polygon>\n <polygon id=\"WEDGES-l0-o4\" style=\"fill: yellow\" points=\"60.8615 35.1385 68.287 47.9995 48 48\"></polygon>\n <polygon id=\"WEDGES-l0-o3\" style=\"fill: red\" points=\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\"></polygon>\n <polygon id=\"WEDGES-l0-o2\" style=\"fill: yellow\" points=\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l0-o1\" style=\"fill: yellow\" points=\"96 0 83.1384388 48 60.8615612 35.1384388\"></polygon>\n <polygon id=\"WEDGES-l0-o0\" style=\"fill: red\" points=\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\"></polygon>\n </g>\n </g>\n <g id=\"DIAGONALS\" transform=\"translate(168.861561, 1.019238)\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\n <line x1=\"0\" y1=\"287.842323\" x2=\"70.2768775\" y2=\"550.119201\" id=\"BOTTOM\"></line>\n <line x1=\"0.15767665\" y1=\"262.276878\" x2=\"70.4345542\" y2=\"2.27488928e-16\" id=\"TOP\"></line>\n </g>\n </g>\n</svg>`});var v2,E2=U(()=>{He();br();v2={id:\"square1\",fullName:\"Square-1\",inventedBy:[\"Karel Hr\\u0161el\",\"Vojtech Kopsk\\xFD\"],inventionYear:1990,kpuzzle:Oe(async()=>new Ie((await Promise.resolve().then(()=>(S2(),b2))).sq1HyperOrbitKPuzzleDefinition)),svg:Oe(async()=>(await Promise.resolve().then(()=>(w2(),x2))).default)}});var he,_t=U(()=>{s0();He();rn();vr();Z0();t2();s2();m2();D2();U2();E2();Jn();he={\"3x3x3\":es,\"2x2x2\":so,\"4x4x4\":new wr({id:\"4x4x4\",fullName:\"4\\xD74\\xD74 Cube\"}),\"5x5x5\":new wr({id:\"5x5x5\",fullName:\"5\\xD75\\xD75 Cube\"}),\"6x6x6\":new wr({id:\"6x6x6\",fullName:\"6\\xD76\\xD76 Cube\"}),\"7x7x7\":new wr({id:\"7x7x7\",fullName:\"7\\xD77\\xD77 Cube\"}),\"40x40x40\":new wr({id:\"40x40x40\",fullName:\"40\\xD740\\xD740 Cube\"}),clock:i2,megaminx:d2,pyraminx:y2,skewb:new Lt({id:\"skewb\",fullName:\"Skewb\",inventedBy:[\"Tony Durham\"]}),square1:v2,fto:L2,gigaminx:new Lt({id:\"gigaminx\",fullName:\"Gigaminx\",inventedBy:[\"Tyler Fox\"],inventionYear:2006}),master_tetraminx:new Lt({id:\"master tetraminx\",fullName:\"Master Tetraminx\",inventedBy:[\"Katsuhiko Okamoto\"],inventionYear:2002})}});function z2(t){k2=t}function rt(){if(!k2)throw new Error(\"Must be called from inside a worker, to avoid impact on page performance. Try importing from the top level of `cubing/solve`?\")}var k2,Wt=U(()=>{k2=!1});async function C2(){return globalThis?.crypto?.getRandomValues?crypto.getRandomValues.bind(crypto):(await(q1??(q1=import(\"crypto\")))).webcrypto.getRandomValues}var q1,P2=U(()=>{q1=null});function Y1(t){let e=new Uint32Array(2);t(e);let r=e[0],n=e[1];return Math.floor(r*V1)+Math.floor(n/H1)}function Z1(t){if(typeof t!=\"number\"||t<0||Math.floor(t)!==t)throw new Error(\"randomInt.below() not called with a positive integer value.\");if(t>M2)throw new Error(`Called randomInt.below() with max == ${t}, which is larger than JavaScript can handle with integer precision.`)}async function at(){let t=await C2(),e=r=>{Z1(r);let n=Y1(t),o=Math.floor(M2/r)*r;return n<o?n%r:e(r)};return e}var M2,V1,H1,Rl=U(()=>{P2();M2=9007199254740992,V1=2097152,H1=2048});async function Kt(){let t=await at();return e=>e[t(e.length)]}var G2=U(()=>{Rl()});async function T2(t){for(let e=1;e<t.length;e++){let r=(await X1)(e);[t[e],t[r]]=[t[r],t[e]]}}var X1,nr=U(()=>{G2();Rl();Rl();X1=at()});function Ct(t,e){let r=[],n=[];for(let f of e.split(`\n`)){let g=f.split(\" \");if(!f.startsWith(\"SetOrder \")){if(f.startsWith(\"Alg \")){let L=k.fromString(f.substring(4));n.push({alg:L,transformation:t.algToTransformation(L)})}else if(f.startsWith(\"SubgroupSizes \"))for(let L=1;L<g.length;L++)r.push(parseInt(g[L]))}}let o={ordering:new Array(r.length)},l=[],i=0;l.push(0);let s=k.fromString(\"\"),u=t.identityTransformation();for(let f=0;f<r.length;f++)i+=r[f],l.push(i),n.splice(i-1,0,{alg:s,transformation:u});if(n.length!==i)throw Error(`Bad sgs; expected ${i-r.length} algs but saw ${n.length-r.length}`);let a={};for(let f in t.definition.orbits){let g=t.definition.orbits[f];a[f]=new Array(g.numPieces).fill(!1)}for(let f=r.length-1;f>=0;f--){let g=[];for(let m=l[f];m<l[f+1];m++){let p=n[m].transformation;for(let B in t.definition.orbits){let F=t.definition.orbits[B];for(let A=0;A<F.numPieces;A++)(p.transformationData[B].permutation[A]!==A||p.transformationData[B].orientation[A]!==0)&&(a[B][A]||(g.push({orbitName:B,permutationIdx:A}),a[B][A]=!0))}}let L={};for(let m=l[f];m<l[f+1];m++){let p=n[m].transformation.invert(),B=\"\";for(let F=0;F<g.length;F++){let A=g[F];B=`${B} ${p.transformationData[A.orbitName].permutation[A.permutationIdx]} ${p.transformationData[A.orbitName].orientation[A.permutationIdx]}`}L[B]=n[m],n[m].alg=n[m].alg.invert(),n[m].transformation=n[m].transformation.invert()}o.ordering[f]={pieceOrdering:g,lookup:L}}return o}var fn=U(()=>{Ae()});var Q2={};Ue(Q2,{cachedData222:()=>sL,data222:()=>K2});async function sL(){return iL??(iL=K2())}async function K2(){return Ct(await so.kpuzzle(),`SubgroupSizes 24 21 18 15 12 9 6\n\nAlg F\nAlg F2\nAlg F'\nAlg D\nAlg D2\nAlg D'\nAlg L\nAlg L2\nAlg L'\nAlg F U\nAlg F U2\nAlg F U'\nAlg F L\nAlg F L2\nAlg F L'\nAlg F2 U\nAlg F2 U'\nAlg F2 R\nAlg F2 R'\nAlg F' D\nAlg F' D'\nAlg F' R\nAlg F' R'\nAlg B\nAlg B2\nAlg B'\nAlg B R\nAlg B R2\nAlg B R'\nAlg B2 U\nAlg B2 U2\nAlg B2 U'\nAlg B2 R\nAlg B2 R2\nAlg B2 R'\nAlg B' U\nAlg B' U'\nAlg F D' F'\nAlg F2 L F2\nAlg B R' B2\nAlg B R' U2\nAlg B2 U R'\nAlg B2 R B'\nAlg R\nAlg R2\nAlg R'\nAlg R2 U\nAlg R2 U2\nAlg R2 U'\nAlg R' U\nAlg R' U2\nAlg R' U'\nAlg F R F'\nAlg F R2 F'\nAlg L2 D' L2\nAlg L' B L\nAlg R2 U' R\nAlg R' U R2\nAlg R' U R'\nAlg F R F' U2\nAlg F' U F\nAlg F' U2 F\nAlg F' U' F\nAlg L F L'\nAlg L F2 L'\nAlg L F' L'\nAlg F' D R D'\nAlg F' U2 F U'\nAlg F D2 B D2 F'\nAlg F2 D' L2 D F2\nAlg F2 L F L' F\nAlg L' F2 L' F2 L\nAlg F L' U' L2 F L'\nAlg F2 L F L' U2 F\nAlg U\nAlg U2\nAlg U'\nAlg F2 D2 B D2 F2\nAlg F2 D2 B' D2 F2\nAlg L2 D2 R D2 L2\nAlg L2 D2 R' D2 L2\nAlg F2 D2 B D2 F2 U\nAlg F2 D2 B D2 F2 U'\nAlg U F2 D2 B D2 F2\nAlg U F2 D2 B' D2 F2\nAlg F D B D' R' F' U\nAlg F' D L F U B' L'\nAlg F' L' F U L U L'\nAlg D' L F D R' U' F'\nAlg L F L' U' F' U' F\nAlg L D' F' L' U' R F\nAlg F D F U F' L' F' R'\nAlg F2 D' F L F2 D F' R'\nAlg F D' F L' D F R2 U2 F' U'\nAlg F D' L D' L F D2 L2 B' R'\nAlg F L' D F R2 D2 L D F' U2\nAlg F L' D F2 D' L F L2 F2 U\nAlg F D F' D L2 F R' F' D' B2 U'`)}var iL,j2=U(()=>{_t();fn();iL=null});async function gn(t,e){let r=new ft;r.experimentalPushAlg(t);for(let n of e){let o=(await Kt())(n);o!==null&&r.push(c.fromString(o))}return r.toAlg()}var dl=U(()=>{Ae();nr()});function Z2(t,e){return t.slice(e)+t.slice(0,e)}function cL(t){let e=[[],[]];for(let r=0;r<6;r++)if(t.stateData.CENTERS.pieces[r]!==r)throw new Error(\"non-oriented puzzles are not supported\");for(let r=0;r<12;r++)e[0].push(Z2(gL[t.stateData.EDGES.pieces[r]],t.stateData.EDGES.orientation[r]));for(let r=0;r<8;r++)e[1].push(Z2(LL[t.stateData.CORNERS.pieces[r]],t.stateData.CORNERS.orientation[r]));return e.push(mL),e}function X2(t){let e=cL(t);return BL.map(([r,n,o])=>e[r][n][o]).join(\"\")}var gL,LL,mL,BL,J2=U(()=>{gL=\"UF UR UB UL DF DR DB DL FR FL BR BL\".split(\" \"),LL=\"UFR URB UBL ULF DRF DFL DLB DBR\".split(\" \"),mL=\"U L F R B D\".split(\" \"),BL=[[1,2,0],[0,2,0],[1,1,0],[0,3,0],[2,0,0],[0,1,0],[1,3,0],[0,0,0],[1,0,0],[1,0,2],[0,1,1],[1,1,1],[0,8,1],[2,3,0],[0,10,1],[1,4,1],[0,5,1],[1,7,2],[1,3,2],[0,0,1],[1,0,1],[0,9,0],[2,2,0],[0,8,0],[1,5,1],[0,4,1],[1,4,2],[1,5,0],[0,4,0],[1,4,0],[0,7,0],[2,5,0],[0,5,0],[1,6,0],[0,6,0],[1,7,0],[1,2,2],[0,3,1],[1,3,1],[0,11,1],[2,1,0],[0,9,1],[1,6,1],[0,7,1],[1,5,2],[1,1,2],[0,2,1],[1,2,1],[0,10,0],[2,4,0],[0,11,0],[1,7,1],[0,6,1],[1,6,2]]});function $2(t,e){let r=new me(t.kpuzzle,{EDGES:t.stateData.EDGES,CORNERS:t.stateData.CORNERS,CENTERS:{pieces:t.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}}).experimentalToTransformation(),n=new me(e.kpuzzle,{EDGES:e.stateData.EDGES,CORNERS:e.stateData.CORNERS,CENTERS:{pieces:e.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}}).experimentalToTransformation();return r.isIdentical(n)}function eu(t,e){if($2(t.startState(),e))return!1;for(let r of\"ULFRBD\")for(let n=1;n<4;n++){let o=t.moveToTransformation(new c(r,n)).toKState();if($2(o,e))return!1}return!0}var tu=U(()=>{Ae();He()});var ru,nu=U(()=>{ru=[[\"R U'\",\"R2 B\",\"D2 B2\",\"D' L B'\",\"R' U'\",\"B\",\"D B2\",\"R' B\",\"L' U\",\"L2 B'\",\"B2\",\"D L B'\",\"L U\",\"B'\",\"U'\",\"R B\",\"D' B2\",\"L B'\",\"U2\",\"U L' B'\",\"\",\"U' L' B'\",\"U\",\"L' B'\"],[\"F2 L2\",\"F' L'\",\"R' F L2\",\"D' L2\",\"F L2\",\"F2 L'\",\"R' F' L'\",\"R2 F L2\",\"R2 F2 L'\",\"L2\",\"F L'\",\"D' L\",\"D2 L2\",\"R2 F' L'\",\"D L\",\"\",\"L2 F L'\",\"L F' L2\",\"L F L'\",\"F' L2\",\"L'\",\"D L2\",\"D F L'\",\"L\"],[\"R B U2 B'\",\"R2 B U' B'\",\"F2 B U B'\",\"F B2 L' B2\",\"B2 L B2\",\"B U' B'\",\"R2 B U2 B'\",\"R' B U' B'\",\"B2 L' B2\",\"F B U B'\",\"B2 U' B2\",\"B' L B\",\"L F' B D' B'\",\"B' U' B2 D B'\",\"B U2 B'\",\"R B U' B'\",\"B2 L2 B2\",\"D' B' L B\",\"B U B'\",\"F' B2 L' B2\",\"\",\"B2 L' B' U' B'\"],[\"U F2 L2 U'\",\"F' U L' U'\",\"F2 U L' U'\",\"U F L2 U'\",\"U2 B2 U2\",\"R' U' B U\",\"D2 U L U'\",\"D U2 B' U2\",\"U L2 U'\",\"F U L' U'\",\"D U L U'\",\"U2 B' U2\",\"\",\"U2 B' U' L' U'\",\"U2 L' U2\",\"U' B U\",\"U L U'\",\"D' U2 B' U2\",\"U L' U'\",\"U2 B U2\"],[\"R' D' F2\",\"F'\",\"F2\",\"D R F'\",\"R D' F2\",\"R2 F'\",\"D' F2\",\"R F'\",\"F2 R' D' F2\",\"F\",\"D2 F2\",\"D' R F'\",\"R2 D' F2\",\"R' F'\",\"D F2\",\"D2 R F'\",\"\",\"F R' D' F2\"],[\"R' D2 F' D F\",\"R F2 R2 F2\",\"R2 F' D2 F\",\"F' R2 D2 F\",\"L D' L'\",\"D F' D2 F\",\"F2 R2 F2\",\"R F' D2 F\",\"F' R2 D' F\",\"F' R' D2 F\",\"F2 R' F2\",\"L D L'\",\"F' R D' F\",\"F2 R F2\",\"F' D2 F\",\"\",\"L D2 R D' L'\",\"F' D2 F' R F2\",\"D2 R2 F2 R2 F2\",\"D F' D' F\",\"F' D F\"],[\"U F2 U'\",\"R U F' U'\",\"D R U F2 U'\",\"U F U'\",\"R2 U F2 U'\",\"R' U F' U'\",\"R U F2 U'\",\"R2 U F' U'\",\"\",\"U L D L' F U'\",\"F2 D' R D F2\",\"D2 U F U'\",\"R' U F2 U'\",\"U F' U'\",\"F2 D2 R D2 F2\",\"D U F U'\"],[\"R2\",\"R' B' D B\",\"D R'\",\"F' R2 F\",\"\",\"R B' D B\",\"R'\",\"B' D B\",\"D' R'\",\"D2 F' R2 F\",\"R\",\"R2 B' D B\",\"D2 R'\",\"B' D' B\"],[\"R2 D' R2\",\"F' R' F R\",\"R D' R2 D R'\",\"D2 R2 D2 R2\",\"R' D' F' R F\",\"U F D F' U'\",\"\",\"R2 D2 B R' B' R'\",\"R' F D' F2 R F\",\"R2 D R2\",\"F2 U F U' F\",\"R' D F' R F\",\"D R2 D2 R2\",\"U F D' F' U'\",\"D R' D2 F' R F\",\"R2 D2 R2\",\"U F D2 F' U'\",\"R' D2 F' R F\"],[\"B R B'\",\"F D F' B R2 B'\",\"D B R2 B'\",\"D2 B R' B'\",\"B R2 B'\",\"D B R' B'\",\"D' B R2 B'\",\"B R' B'\",\"\",\"B R2 B' D B R' B'\",\"D2 B R2 B'\",\"D' B R' B'\"],[\"\",\"R' D R F D2 F'\",\"R' D R\",\"D F D' F'\",\"R F' R' F\",\"F D' F'\",\"R' D' R\",\"F D2 F'\",\"R' D2 R\",\"F D F'\"],[\"\",\"F2 D2 R F' R' D2 F' D2 F'\",\"F2 D2 F' D' F D' F' D2 F'\",\"F2 D F2 D F2 D2 F2\",\"D2 F L D2 L' D2 F'\",\"D F D2 L D2 L' F'\",\"R' D B' D2 B D' R\",\"R' D2 B' D2 B R\",\"F D2 F' D F D F'\",\"F D' L D2 L' D F'\",\"B D' F D B' D' F'\",\"F D2 L D2 L' F'\",\"F D' L D L' D F'\",\"F L D2 L' D2 F'\",\"R' B' D2 B D2 R\"],[\"D'\",\"F L D L' D' F'\",\"D2\",\"L B D B' D' L'\",\"D\",\"B' L' D' L D B\",\"\",\"D F L D L' D' F'\"],[\"F' D2 F D F' D F\",\"F' D' R' D R F\",\"F' R' D' R D F\",\"B D R D' R' B'\",\"\",\"D B' D' L' D L B\"],[\"D F D F' D F D2 F'\",\"F' U2 B' R' B U2 F' L F' L' F'\",\"\",\"D2 L D L2 F L F2 D F\"],[\"L B' L' F L B L' F'\",\"F2 U F' D2 F U' F' D2 F'\",\"D' F' D B D' F D B'\",\"F L2 F R2 F' L2 F R2 F2\",\"D B D' F' D B' D' F\",\"R F L F' R' F L' F'\",\"\",\"D2 B L' U2 L B' D2 B L' U2 L B'\",\"D2 F R' U2 R F' D2 F R' U2 R F'\",\"R F L' F' R' F L F'\",\"D F D' B' D F' D' B\",\"L2 F2 L' B2 L F2 L' B2 L'\"],[\"L B R' B' L' B R B'\",\"R' B R F' R' B' R F\",\"L D2 L U L' D2 L U' L2\",\"\",\"D2 B' D2 F D' L2 F L2 F' D2 B D' F'\",\"D2 F' R' F R2 B' D2 B D2 R' F D2 F'\",\"L B L' F L B' L' F'\",\"F' D2 F' U' F D2 F' U F2\",\"D' B' D F D' B D F'\"],[\"\",\"D2 F' L U2 L' F D2 F' L U2 L' F\",\"D2 B' R U2 R' B D2 B' R U2 R' B\"]]});var Mu={};Ue(Mu,{initialize:()=>lm,solveState:()=>im});function ou(){}function RL(t){function e(){}return e.prototype=t||{},new e}function dL(t){return t instanceof Array?t[0]:null}function uo(t,e,r){var n=Dl,o=DL,l=dL,i=n[t],s=l(i);i&&!s?V=i:(V=n[t]=e?o(e):{},V.castableTypeMap$=r,V.constructor=V,!e&&(V.typeMarker$=ou));for(var u=3;u<arguments.length;++u)arguments[u].prototype=V;s&&(V.___clazz$=s)}function DL(t){var e=Dl;return RL(e[t])}function FL(){}function Fl(t){return t<<24>>24}function ls(){this.typeName=null,this.simpleName=null,this.packageName=null,this.compoundName=null,this.canonicalName=null,this.typeId=null,this.arrayLiterals=null}function is(t,e){var r;return r=new ls,r.packageName=t,r.compoundName=e,r}function lr(t,e,r){var n;return n=is(t,e),yL(r,n),n}function AL(t,e){var r;return r=is(t,e),r.modifiers=2,r}function Al(t,e){var r;return r=is(\"\",t),r.typeId=e,r.modifiers=1,r}function lu(t,e){var r=t.arrayLiterals=t.arrayLiterals||[];return r[e]||(r[e]=t.createClassLiteralForArray(e))}function hL(t){if(t.isPrimitive())return null;var e=t.typeId,r=Dl[e];return r}function yL(t,e){if(!!t){e.typeId=t;var r=hL(e);if(!r){Dl[t]=[e];return}r.___clazz$=e}}function J(t,e){return lu(t,e)}function Z(t,e,r,n,o,l){var i;return i=su(o,n),$(J(t,l),e,r,o,i),i}function Ze(t,e,r,n,o,l){return iu(t,e,r,n,o,0,l)}function iu(t,e,r,n,o,l,i){var s,u,a,f,g;if(f=o[l],a=l==i-1,s=a?n:0,g=su(s,f),$(J(t,i-l),e[l],r[l],s,g),!a)for(++l,u=0;u<f;++u)g[u]=iu(t,e,r,n,o,l,i);return g}function $(t,e,r,n,o){return o.___clazz$=t,o.castableTypeMap$=e,o.typeMarker$=ou,o.__elementTypeId$=r,o.__elementTypeCategory$=n,o}function su(t,e){var r=new Array(e),n;switch(t){case 6:n={l:0,m:0,h:0};break;case 7:n=0;break;case 8:n=!1;break;default:return r}for(var o=0;o<e;++o)r[o]=n;return r}function au(t){var e,r,n;return e=t&Ye,r=t>>22&Ye,n=t<0?or:0,UL(e,r,n)}function UL(t,e,r){return{l:t,m:e,h:r}}function bL(t,e){var r,n,o;return r=t.l+e.l,n=t.m+e.m+(r>>22),o=t.h+e.h+(n>>22),{l:r&Ye,m:n&Ye,h:o&or}}function Pt(t,e){return{l:t.l&e.l,m:t.m&e.m,h:t.h&e.h}}function ss(t){var e,r;return t>-129&&t<128?(e=t+128,yl==null&&(yl=Z(nm,se,293,256,0,1)),r=yl[e],!r&&(r=yl[e]=au(t)),r):au(t)}function uu(t,e){var r,n;return r=t.h>>19,n=e.h>>19,r==0?n!=0||t.h>e.h||t.h==e.h&&t.m>e.m||t.h==e.h&&t.m==e.m&&t.l>=e.l:!(n==0||t.h<e.h||t.h==e.h&&t.m<e.m||t.h==e.h&&t.m==e.m&&t.l<e.l)}function as(t,e){return t.l!=e.l||t.m!=e.m||t.h!=e.h}function us(t,e){return{l:t.l|e.l,m:t.m|e.m,h:t.h|e.h}}function hl(t,e){var r,n,o;return e&=63,e<22?(r=t.l<<e,n=t.m<<e|t.l>>22-e,o=t.h<<e|t.m>>22-e):e<44?(r=0,n=t.l<<e-22,o=t.m<<e-22|t.l>>44-e):(r=0,n=0,o=t.l<<e-44),{l:r&Ye,m:n&Ye,h:o&or}}function Er(t,e){var r,n,o,l,i;return e&=63,r=t.h,n=(r&pL)!=0,n&&(r|=-1048576),e<22?(i=r>>e,l=t.m>>e|r<<22-e,o=t.l>>e|t.m<<22-e):e<44?(i=n?or:0,l=r>>e-22,o=t.m>>e-22|r<<44-e):(i=n?or:0,l=n?Ye:0,o=r>>e-44),{l:o&Ye,m:l&Ye,h:i&or}}function fu(t,e){var r,n,o;return r=t.l-e.l,n=t.m-e.m+(r>>22),o=t.h-e.h+(n>>22),{l:r&Ye,m:n&Ye,h:o&or}}function kr(t){return t.l|t.m<<22}function SL(t){this.string=t}function ir(t,e){return t>e?t:e}function fs(t,e){return t<e?t:e}function xL(t,e){return t.indexOf(e)}function wL(t){return vL(t,0,t.length)}function vL(t,e,r){for(var n=\"\",o=e;o<r;){var l=Math.min(o+1e4,r);n+=String.fromCharCode.apply(null,t.slice(o,l)),o=l}return n}function EL(t){return String.fromCharCode(t&_e)}function gu(t){return t.string+=\" \",t}function Lu(t,e){return t.string+=e,t}function zL(){SL.call(this,\"\")}function Ul(t,e){var r;if(t===e)return!0;if(t.length!=e.length)return!1;for(r=0;r<t.length;++r)if(t[r]!=e[r])return!1;return!0}function zr(){mu||(mu=!0,ar=Ze(de,[se,Re],[11,0],7,[495,18],2),dn=Ze(de,[se,Re],[11,0],7,[324,18],2),cn=Ze(de,[se,Re],[11,0],7,[336,18],2),sr=Ze(de,[se,Re],[11,0],7,[495,8],2),xl=Z(Ee,ve,0,20048,7,1),Sl=Z(Ee,ve,0,20791,7,1),Rn=Z(Ee,ve,0,82945,7,1),Ln=Ze(de,[se,Re],[11,0],7,[2768,10],2),Bn=Ze(de,[se,Re],[11,0],7,[2768,10],2),pn=Ze(de,[se,Re],[11,0],7,[24,10],2),Lo=Ze(de,[se,Re],[11,0],7,[24,16],2),Cr=Ze(de,[se,Re],[11,0],7,[140,16],2),bl=Z(Ee,ve,0,8305,7,1),mn=Z(Ee,ve,0,48441,7,1))}function CL(t,e,r){return t.slice_0=ar[e.slice_0][r],t.flip=cn[e.flip][(X(),Mr)[r<<3|e.fsym]],t.fsym=t.flip&7^e.fsym,t.flip>>=3,t.twist=dn[e.twist][Mr[r<<3|e.tsym]],t.tsym=t.twist&7^e.tsym,t.twist>>=3,t.prun=ir(ir(nt(xl,t.twist*495+sr[t.slice_0][t.tsym]),nt(Sl,t.flip*495+sr[t.slice_0][t.fsym])),nt(Rn,t.twist<<11|gr[t.flip<<3|t.fsym^t.tsym])),t.prun}function PL(t,e,r){return r=(X(),co)[3][r],t.flipc=cn[e.flipc>>3][Mr[r<<3|e.flipc&7]]^e.flipc&7,t.twistc=dn[e.twistc>>3][Mr[r<<3|e.twistc&7]]^e.twistc&7,nt(Rn,t.twistc>>3<<11|gr[t.flipc^t.twistc&7])}function Bu(t,e,r){var n;return t.twist=(X(),po)[kl(e)],t.flip=Pr[El(e)],t.tsym=t.twist&7,t.twist=t.twist>>3,t.prun=nt(Rn,t.twist<<11|gr[t.flip^t.tsym]),t.prun>r||(t.fsym=t.flip&7,t.flip=t.flip>>3,t.slice_0=494-An(e.ea,8,!0),t.prun=ir(t.prun,ir(nt(xl,t.twist*495+sr[t.slice_0][t.tsym]),nt(Sl,t.flip*495+sr[t.slice_0][t.fsym]))),t.prun>r)?!1:(n=new ue,mo(e,1,n),Bo(e,1,n),t.twistc=po[kl(n)],t.flipc=Pr[El(n)],t.prun=ir(t.prun,nt(Rn,t.twistc>>3<<11|gr[t.flipc^t.twistc&7])),t.prun<=r)}function fo(){zr()}function nt(t,e){return zr(),t[e>>3]>>(e<<2)&15}function cu(t){zr(),!(wl==2||wl==1&&!t)&&(wl==0&&(VL(),ML(),TL(),NL(),GL(),X(),ps(2048,Rs,Pr,hu=Z(de,Re,0,336,7,1),0),ps(2187,As,po,Fs=Z(de,Re,0,324,7,1),1),IL(),OL(),_L()),go(bl,pn,Lo,Ln,(X(),Ds),584244,t),go(mn,gs,Cr,Bn,Ds,514084,t),go(xl,ar,sr,dn,Fs,431619,t),go(Sl,ar,sr,cn,hu,431619,t),go(Rn,null,null,dn,Fs,103939,t),wl=t?2:1)}function ML(){var t,e,r,n;for(t=new ue,e=new ue,r=0;r<2768;r++)for(QL(t,(X(),Dn)[r]),n=0;n<10;n++)ur(t,fe[(Qe(),yt)[n]],e),Ln[r][n]=Pl(jt[lt(e.ca,8,!1)])&_e}function GL(){var t,e,r,n,o;for(t=new ue,e=new ue,gs=Ze(de,[se,Re],[11,0],7,[140,10],2),r=0;r<140;r++){for(ku(t.ca,r%70,0,!1),o=0;o<10;o++)ur(t,(X(),fe)[(Qe(),yt)[o]],e),gs[r][o]=An(e.ca,0,!1)+70*(165>>o&1^~~(r/70))&_e;for(n=0;n<16;n++)mo(t,(X(),ot)[0][n],e),Cr[r][n]=An(e.ca,0,!1)+70*~~(r/70)&_e}}function TL(){var t,e,r,n;for(t=new ue,e=new ue,r=0;r<2768;r++)for(Du(t,(X(),Dn)[r]),n=0;n<10;n++)mt(t,fe[(Qe(),yt)[n]],e),Bn[r][n]=jt[lt(e.ea,8,!0)]}function IL(){var t,e,r,n;for(t=new ue,e=new ue,r=0;r<336;r++)for(Bs(t,(X(),Rs)[r]),n=0;n<18;n++)mt(t,fe[n],e),cn[r][n]=Pr[El(e)]}function NL(){var t,e,r,n,o;for(t=new ue,e=new ue,r=0;r<24;r++){for(Gr(t.ea,r,12,!0),o=0;o<10;o++)mt(t,(X(),fe)[(Qe(),yt)[o]],e),pn[r][o]=lt(e.ea,12,!0)%24&_e;for(n=0;n<16;n++)Bo(t,(X(),ot)[0][n],e),Lo[r][n]=lt(e.ea,12,!0)%24&_e}}function go(t,e,r,n,o,l,i){var s,u,a,f,g,L,m,p,B,F,A,b,h,C,E,q,re,I,ne,y,z,M,x,w,P,K,Y,ge,Be,Fe,ye,wt,ze,Je,xe,D;if(h=l&15,A=(l>>4&1)==1?os:0,a=(l>>5&1)==1,s=l>>8&15,f=l>>12&15,g=l>>16&15,F=i?f:g,b=(1<<h)-1,u=e==null,p=u?2048:e.length,B=p*n.length,m=a?10:18,L=m==10?66:599186,E=(t[B>>3]>>(B<<2)&15)-1,E==-1){for(I=0;I<~~(B/8)+1;I++)t[I]=ao;t[0]^=1,E=0}for(;E<F;){for(P=(E+1)*ao^-1,ne=0;ne<t.length;ne++)xe=t[ne]^P,xe&=xe>>1,t[ne]+=xe&xe>>2&ao;for(M=E>s,Fe=M?E+2:E,Be=Fe*ao,C=M?E:E+2,++E,D=E^E+1,Je=0,I=0;I<B;++I,Je>>=4){if((I&7)==0&&(Je=t[I>>3],((Je^Be)-ao&~(Je^Be)&-2004318072)==0)){I+=7;continue}if((Je&15)==Fe)for(Y=I%p,ye=~~(I/p),q=0,re=0,u&&(q=(X(),Pr)[Y],re=q&7,q>>=3),w=0;w<m;w++){if(ze=n[ye][w],u?ge=(X(),gr)[cn[q][Mr[w<<3|re]]^re^ze&b]:ge=r[e[Y][w]][ze&b],ze>>=h,y=ze*p+ge,K=t[y>>3]>>(y<<2)&15,K!=C){K<E-1&&(w+=L>>w&3);continue}if(M){t[I>>3]^=D<<(I<<2);break}for(t[y>>3]^=D<<(y<<2),x=1,wt=o[ze];(wt>>=1)!=0;x++)(wt&1)==1&&(z=ze*p,u?z+=(X(),gr)[Pr[ge]^x]:z+=r[ge][x^A>>(x<<1)&3],(t[z>>3]>>(z<<2)&15)==C&&(t[z>>3]^=D<<(z<<2)))}}}}function OL(){var t,e,r,n;for(t=new ue,e=new ue,r=0;r<324;r++)for(cs(t,(X(),As)[r]),n=0;n<18;n++)ur(t,fe[n],e),dn[r][n]=po[kl(e)]}function _L(){var t,e,r,n,o,l,i,s;for(t=new ue,e=new ue,n=0;n<495;n++){for(ku(t.ea,494-n,8,!0),l=0;l<18;l+=3)mt(t,(X(),fe)[l],e),ar[n][l]=494-An(e.ea,8,!0)&_e;for(o=0;o<16;o+=2)Bo(t,(X(),ot)[0][o],e),sr[n][o>>1]=494-An(e.ea,8,!0)&_e}for(r=0;r<495;r++)for(o=0;o<18;o+=3)for(s=ar[r][o],i=1;i<3;i++)s=ar[s][o],ar[r][o+i]=s&_e}function X(){pu||(pu=!0,Qt=Z(Ro,se,7,16,0,1),fe=Z(Ro,se,7,18,0,1),Gl=Z(om,se,0,18,6,1),yu=Z(Ee,ve,0,48,7,1),qt=Ze(Ee,[se,ve],[17,0],7,[16,16],2),ot=Ze(Ee,[se,ve],[17,0],7,[16,16],2),co=Ze(Ee,[se,ve],[17,0],7,[16,18],2),Mr=Z(Ee,ve,0,144,7,1),Lr=Ze(Ee,[se,ve],[17,0],7,[16,18],2),Rs=Z(de,Re,0,336,7,1),As=Z(de,Re,0,324,7,1),Dn=Z(de,Re,0,2768,7,1),Fn=Z(ee,ie,0,2768,7,1),ds=Z(de,Re,0,2768,7,1),Ml=Z(ee,ie,0,24,7,1),Pr=Z(de,Re,0,2048,7,1),po=Z(de,Re,0,2187,7,1),jt=Z(de,Re,0,40320,7,1),gr=Z(de,Re,0,2688,7,1),hs=new ht(2531,1373,67026819,1367),ys=new ht(2089,1906,322752913,2040),Tl=$(J(ee,2),se,10,0,[$(J(ee,1),ie,0,7,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),$(J(ee,1),ie,0,7,[6,7,8,0,1,2,3,4,5,15,16,17,9,10,11,12,13,14]),$(J(ee,1),ie,0,7,[3,4,5,6,7,8,0,1,2,12,13,14,15,16,17,9,10,11]),$(J(ee,1),ie,0,7,[2,1,0,5,4,3,8,7,6,11,10,9,14,13,12,17,16,15]),$(J(ee,1),ie,0,7,[8,7,6,2,1,0,5,4,3,17,16,15,11,10,9,14,13,12]),$(J(ee,1),ie,0,7,[5,4,3,8,7,6,2,1,0,14,13,12,17,16,15,11,10,9])]),qL(),HL())}function Ls(t){t.ca=$(J(ee,1),ie,0,7,[0,1,2,3,4,5,6,7]),t.ea=$(J(ee,1),ie,0,7,[0,2,4,6,8,10,12,14,16,18,20,22])}function Ru(t){!t.temps&&(t.temps=new ue),ur(ys,t,t.temps),ur(t.temps,hs,t),mt(ys,t,t.temps),mt(t.temps,hs,t)}function ms(t,e){var r,n;for(n=0;n<8;n++)t.ca[n]=e.ca[n];for(r=0;r<12;r++)t.ea[r]=e.ea[r]}function WL(t){return Pl(jt[lt(t.ca,8,!1)])}function KL(t){return jt[lt(t.ea,8,!0)]}function El(t){var e,r;for(r=0,e=0;e<11;e++)r=r<<1|t.ea[e]&1;return r}function kl(t){var e,r;for(r=0,e=0;e<7;e++)r+=(r<<1)+(t.ca[e]>>3);return r}function zl(t){var e,r;for(!t.temps&&(t.temps=new ue),r=0;r<12;r++)t.temps.ea[t.ea[r]>>1]=(r<<1|t.ea[r]&1)<<24>>24;for(e=0;e<8;e++)t.temps.ca[t.ca[e]&7]=(e|32>>(t.ca[e]>>3)&24)<<24>>24;ms(t,t.temps)}function du(t){var e,r,n,o,l,i,s;for(e=new Fu(t),o=new ue,r=Pl(jt[lt(e.ca,8,!1)])>>4,i={l:0,m:0,h:0},s=0;s<6;s++){if(n=Pl(jt[lt(e.ca,8,!1)])>>4,r==n)for(l=0;l<16;l++)mo(e,ot[0][l],o),Ul(o.ca,t.ca)&&(Bo(e,ot[0][l],o),Ul(o.ea,t.ea)&&(i=us(i,hl({l:1,m:0,h:0},(s<<4|l)<48?s<<4|l:48))));Ru(e),s%3==2&&zl(e)}return i}function QL(t,e){Gr(t.ca,e,8,!1)}function Du(t,e){Gr(t.ea,e,8,!0)}function Bs(t,e){var r,n,o;for(n=0,r=10;r>=0;--r,e>>=1)n^=o=e&1,t.ea[r]=(t.ea[r]&-2|o)<<24>>24;t.ea[11]=(t.ea[11]&-2|n)<<24>>24}function cs(t,e){var r,n,o;for(n=15,r=6;r>=0;--r,e=~~(e/3))n-=o=e%3,t.ca[r]=(t.ca[r]&7|o<<3)<<24>>24;t.ca[7]=(t.ca[7]&7|n%3<<3)<<24>>24}function jL(t){var e,r,n,o,l;for(l=0,o=0,n=0;n<12;n++)o|=1<<(t.ea[n]>>1),l^=t.ea[n]&1;if(o!=4095)return-2;if(l!=0)return-3;for(r=0,l=0,e=0;e<8;e++)r|=1<<(t.ca[e]&7),l+=t.ca[e]>>3;return r!=255?-4:l%3!=0?-5:(bs(lt(t.ea,12,!0),12)^bs(lt(t.ca,8,!1),8))!=0?-6:0}function mo(t,e,r){X();var n,o,l,i,s,u;for(u=Qt[ot[0][e]],s=Qt[e],n=0;n<8;n++)l=u.ca[t.ca[s.ca[n]&7]&7]>>3,i=t.ca[s.ca[n]&7]>>3,o=l<3?i:(3-i)%3,r.ca[n]=(u.ca[t.ca[s.ca[n]&7]&7]&7|o<<3)<<24>>24}function ur(t,e,r){X();var n,o,l;for(n=0;n<8;n++)o=t.ca[e.ca[n]&7]>>3,l=e.ca[n]>>3,r.ca[n]=(t.ca[e.ca[n]&7]&7|(o+l)%3<<3)<<24>>24}function Cl(t,e,r){var n,o,l,i;for(n=0;n<8;n++)l=t.ca[e.ca[n]&7]>>3,i=e.ca[n]>>3,o=l+(l<3?i:6-i),o=o%3+(l<3==i<3?0:3),r.ca[n]=(t.ca[e.ca[n]&7]&7|o<<3)<<24>>24}function ue(){X(),Ls(this)}function ht(t,e,r,n){Ls(this),Gr(this.ca,t,8,!1),cs(this,e),Gr(this.ea,r,12,!0),Bs(this,n)}function Fu(t){Ls(this),ms(this,t)}function Pl(t){return X(),t^os>>((t&15)<<1)&3}function Bo(t,e,r){X();var n,o,l;for(l=Qt[ot[0][e]],o=Qt[e],n=0;n<12;n++)r.ea[n]=(l.ea[t.ea[o.ea[n]>>1]>>1]^t.ea[o.ea[n]>>1]&1^o.ea[n]&1)<<24>>24}function mt(t,e,r){X();var n;for(n=0;n<12;n++)r.ea[n]=(t.ea[e.ea[n]>>1]^e.ea[n]&1)<<24>>24}function fr(t,e,r){X();var n;return n=ds[t],r&&(n=n^os>>((n&15)<<1)&3),n&65520|qt[n&15][e]}function Au(){return X(),0}function qL(){var t,e;for(fe[0]=new ht(15120,0,119750400,0),fe[3]=new ht(21021,1494,323403417,0),fe[6]=new ht(8064,1236,29441808,550),fe[9]=new ht(9,0,5880,0),fe[12]=new ht(1230,412,2949660,0),fe[15]=new ht(224,137,328552,137),t=0;t<18;t+=3)for(e=0;e<2;e++)fe[t+e+1]=new ue,mt(fe[t+e],fe[t],fe[t+e+1]),ur(fe[t+e],fe[t],fe[t+e+1])}function VL(){X();var t,e,r;for(ps(40320,Dn,jt,Ds=Z(de,Re,0,2768,7,1),2),t=new ue,r=0;r<2768;r++)Du(t,Dn[r]),Fn[r]=An(t.ea,0,!0)+bs(Dn[r],8)*70<<24>>24,zl(t),ds[r]=jt[lt(t.ea,8,!0)];for(e=0;e<24;e++)Gr(t.ea,e,12,!0),zl(t),Ml[e]=lt(t.ea,12,!0)%24<<24>>24}function HL(){var t,e,r,n,o,l,i,s,u,a,f,g,L,m,p,B;for(t=new ue,e=new ue,r=new ht(28783,0,259268407,0),B=new ht(15138,0,119765538,7),g=new ht(5167,0,83473207,0),o=0;o<8;o++)g.ca[o]=Fl(g.ca[o]|24);for(l=0;l<16;l++)Qt[l]=new Fu(t),Cl(t,B,e),mt(t,B,e),p=e,e=t,t=p,l%4==3&&(Cl(p,g,e),mt(p,g,e),p=e,e=t,t=p),l%8==7&&(Cl(p,r,e),mt(p,r,e),p=e,e=t,t=p);for(i=0;i<16;i++)for(u=0;u<16;u++)for(Cl(Qt[i],Qt[u],t),f=0;f<16;f++)if(Ul(Qt[f].ca,t.ca)){qt[i][u]=f,ot[f][u]=i;break}for(a=0;a<18;a++)for(m=0;m<16;m++){for(mo(fe[a],ot[0][m],t),L=0;L<18;L++)if(Ul(fe[L].ca,t.ca)){co[m][a]=L,Lr[m][(Qe(),hn)[a]]=hn[L];break}m%2==0&&(Mr[a<<3|m>>1]=co[m][a])}for(n=0;n<18;n++)for(Gl[n]=du(fe[n]),s=n,m=0;m<48;m++)co[m%16][s]<n&&(yu[m]|=1<<n),m%16==15&&(s=Tl[2][s])}function ps(t,e,r,n,o){X();var l,i,s,u,a,f,g,L,m;for(l=new ue,s=new ue,i=0,a=0,m=o>=2?1:2,f=o!=1,u=0;u<t;u++)if(r[u]==0){switch(o){case 0:Bs(l,u);break;case 1:cs(l,u);break;case 2:Gr(l.ea,u,8,!0)}for(g=0;g<16;g+=m){switch(f?Bo(l,g,s):mo(l,g,s),o){case 0:a=El(s);break;case 1:a=kl(s);break;case 2:a=lt(s.ea,8,!0)}o==0&&(gr[i<<3|g>>1]=a&_e),a==u&&(n[i]=(n[i]|1<<~~(g/m))&_e),L=~~((i<<4|g)/m),r[a]=L&_e}e[i++]=u&_e}return i}function YL(t,e,r,n,o,l,i,s){var u,a,f,g,L;if(g=ir(nt((zr(),mn),(i>>4)*140+Cr[(X(),Fn)[s>>4]&255][ot[i&15][s&15]]),ir(nt(mn,n*140+Cr[Fn[e]&255][ot[o][r]]),nt(bl,e*24+Lo[l][r]))),g>t.maxDep2)return g-t.maxDep2;for(u=t.maxDep2;u>=g&&(L=Su(t,n,o,e,r,l,u,t.depth1,10),!(L<0));u--){for(u-=L,t.solLen=0,t.solution=new Pu,rm(t.solution,t.verbose,t.urfIdx,t.depth1),f=0;f<t.depth1+u;f++)zu(t.solution,t.move[f]);for(a=t.preMoveLen-1;a>=0;a--)zu(t.solution,t.preMoves[a]);t.solLen=t.solution.length_0}return u!=t.maxDep2?(t.maxDep2=fs(wu,t.solLen-t.length1-1),uu(t.probe,t.probeMin)?0:1):1}function ZL(t){var e,r,n,o,l,i,s,u,a,f,g,L,m,p,B;if(t.isRec=!1,uu(t.probe,t.solution?t.probeMin:t.probeMax))return 0;for(t.probe=bL(t.probe,{l:1,m:0,h:0}),n=t.valid1;n<t.depth1;n++)ur(t.phase1Cubie[n],(X(),fe)[t.move[n]],t.phase1Cubie[n+1]),mt(t.phase1Cubie[n],fe[t.move[n]],t.phase1Cubie[n+1]);for(t.valid1=t.depth1,s=WL(t.phase1Cubie[t.depth1]),u=s&15,s>>=4,a=KL(t.phase1Cubie[t.depth1]),f=a&15,a>>=4,g=lt(t.phase1Cubie[t.depth1].ea,12,!0)%24,r=fr(a,f,!1),e=fr(s,u,!0),o=t.depth1==0?-1:t.move[t.depth1-1],l=t.preMoveLen==0?-1:t.preMoves[t.preMoveLen-1],B=0,p=(t.preMoveLen==0?1:2)*(t.depth1==0?1:2),L=0,m=(1<<p)-1;L<p;L++){if((m>>L&1)!=0){if(m&=~(1<<L),B=YL(t,s,u,a,f,g,r,e),B==0||B>2)break;B==2&&(m&=4<<L)}if(m==0)break;(L&1)==0&&t.depth1>0?(i=(Qe(),hn)[~~(o/3)*3+1],t.move[t.depth1-1]=yt[i]*2-t.move[t.depth1-1],g=(zr(),pn)[g][i],s=Ln[s][(X(),Lr)[u][i]],u=qt[s&15][u],s>>=4,a=Bn[a][Lr[f][i]],f=qt[a&15][f],a>>=4,e=fr(s,u,!0),r=fr(a,f,!1)):t.preMoveLen>0&&(i=(Qe(),hn)[~~(l/3)*3+1],t.preMoves[t.preMoveLen-1]=yt[i]*2-t.preMoves[t.preMoveLen-1],g=(X(),Ml)[(zr(),pn)[Ml[g]][i]],s=Ln[e>>4][Lr[e&15][i]],e=s&-16|qt[s&15][e&15],s=fr(e>>4,e&15,!0),u=s&15,s>>=4,a=Bn[r>>4][Lr[r&15][i]],r=a&-16|qt[a&15][r&15],a=fr(r>>4,r&15,!1),f=a&15,a>>=4)}return t.depth1>0&&(t.move[t.depth1-1]=o),t.preMoveLen>0&&(t.preMoves[t.preMoveLen-1]=l),B==0?0:2}function XL(t){var e;for(t.conjMask=0,t.selfSym=du(t.cc),t.conjMask|=as(Pt(Er(t.selfSym,16),{l:_e,m:0,h:0}),{l:0,m:0,h:0})?18:0,t.conjMask|=as(Pt(Er(t.selfSym,32),{l:_e,m:0,h:0}),{l:0,m:0,h:0})?36:0,t.conjMask|=as(Pt(Er(t.selfSym,48),{l:_e,m:0,h:0}),{l:0,m:0,h:0})?56:0,t.selfSym=Pt(t.selfSym,{l:Ye,m:Ye,h:15}),t.maxPreMoves=t.conjMask>7?0:20,e=0;e<6;e++)ms(t.urfCubieCube[e],t.cc),Bu(t.urfCoordCube[e],t.urfCubieCube[e],20),Ru(t.cc),e%3==2&&zl(t.cc)}function Uu(t,e,r,n,o){var l,i,s,u,a,f;if(e.prun==0&&n<5)return t.allowShorter||n==0?(t.depth1-=n,a=ZL(t),t.depth1+=n,a):1;for(f=Au(ss(r)),l=0;l<18;l+=3)if(!(l==o||l==o-9)){for(s=0;s<3;s++)if(i=l+s,!(t.isRec&&i!=t.move[t.depth1-n]||f!=0&&(f&1<<i)!=0)){if(u=CL(t.nodeUD[n],e,i),u>n)break;if(u==n)continue;if(u=PL(t.nodeUD[n],e,i),u>n)break;if(u==n)continue;if(t.move[t.depth1-n]=i,t.valid1=fs(t.valid1,t.depth1-n),a=Uu(t,t.nodeUD[n],r&kr((X(),Gl)[i]),n-1,l),a==0)return 0;if(a>=2)break}}return 1}function bu(t,e,r,n,o){var l,i,s;if(t.preMoveLen=t.maxPreMoves-e,(t.isRec?t.depth1==t.length1-t.preMoveLen:t.preMoveLen==0||(225207>>r&1)==0)&&(t.depth1=t.length1-t.preMoveLen,t.phase1Cubie[0]=n,t.allowShorter=t.depth1==Us&&t.preMoveLen!=0,Bu(t.nodeUD[t.depth1+1],n,t.depth1)&&Uu(t,t.nodeUD[t.depth1+1],o,t.depth1,-1)==0))return 0;if(e==0||t.preMoveLen+Us>=t.length1)return 1;for(s=Au(ss(o)),(e==1||t.preMoveLen+1+Us>=t.length1)&&(s|=225207),r=~~(r/3)*3,l=0;l<18;l++){if(l==r||l==r-9||l==r+9){l+=2;continue}if(!(t.isRec&&l!=t.preMoves[t.maxPreMoves-e]||(s&1<<l)!=0)&&(ur((X(),fe)[l],n,t.preMoveCubes[e]),mt(fe[l],n,t.preMoveCubes[e]),t.preMoves[t.maxPreMoves-e]=l,i=bu(t,e-1,l,t.preMoveCubes[e],o&kr(Gl[l])),i==0))return 0}return 1}function Su(t,e,r,n,o,l,i,s,u){var a,f,g,L,m,p,B,F,A,b,h;if(e==0&&n==0&&l==0)return i;for(A=(Qe(),Do)[u],B=0;B<10;B++){if((A>>B&1)!=0){B+=66>>B&3;continue}if(F=(zr(),pn)[l][B],f=Ln[n][(X(),Lr)[o][B]],g=qt[f&15][o],f>>=4,m=Bn[e][Lr[r][B]],p=qt[m&15][r],m>>=4,L=fr(m,p,!1),a=fr(f,g,!0),b=nt(mn,(L>>4)*140+Cr[Fn[a>>4]&255][ot[L&15][a&15]]),b>i+1)return i-b+1;if(b>=i){B+=66>>B&3&i-b;continue}if(b=ir(nt(bl,f*24+Lo[F][g]),nt(mn,m*140+Cr[Fn[f]&255][ot[p][g]])),b>=i){B+=66>>B&3&i-b;continue}if(h=Su(t,m,p,f,g,F,i-1,s+1,B),h>=0)return t.move[s]=yt[B],h;if(h<-2)break;h<-1&&(B+=66>>B&3)}return-1}function JL(t){for(t.length1=t.isRec?t.length1:0;t.length1<t.solLen;t.length1++)for(t.maxDep2=fs(wu,t.solLen-t.length1-1),t.urfIdx=t.isRec?t.urfIdx:0;t.urfIdx<6;t.urfIdx++)if((t.conjMask&1<<t.urfIdx)==0&&bu(t,t.maxPreMoves,-30,t.urfCubieCube[t.urfIdx],kr(Pt(t.selfSym,{l:_e,m:0,h:0})))==0)return t.solution?Cu(t.solution):\"Error 8\";return t.solution?Cu(t.solution):\"Error 7\"}function $L(t,e){var r;return r=em(t,e),r!=0?\"Error \"+(r<0?-r:r):(t.solLen=22,t.probe={l:0,m:0,h:0},t.probeMax={l:3531008,m:23,h:0},t.probeMin={l:0,m:0,h:0},t.verbose=0,t.solution=null,t.isRec=!1,cu(!1),XL(t),JL(t))}function em(t,e){var r,n,o,l;for(n=0,o=Z(ee,ie,0,54,7,1),r=wL($(J(de,1),Re,0,7,[e.charCodeAt(4),e.charCodeAt(13),e.charCodeAt(22),e.charCodeAt(31),e.charCodeAt(40),e.charCodeAt(49)])),l=0;l<54;l++){if(o[l]=xL(r,EL(e.charCodeAt(l)))<<24>>24,o[l]==-1)return-1;n+=1<<(o[l]<<2)}return n!=10066329?-1:(tm(o,t.cc),jL(t.cc))}function xu(){var t,e,r;for(this.move=Z(Ee,ve,0,31,7,1),this.nodeUD=Z(vl,se,31,21,0,1),this.nodeRL=Z(vl,se,31,21,0,1),this.nodeFB=Z(vl,se,31,21,0,1),this.cc=new ue,this.urfCubieCube=Z(Ro,se,7,6,0,1),this.urfCoordCube=Z(vl,se,31,6,0,1),this.phase1Cubie=Z(Ro,se,7,21,0,1),this.preMoveCubes=Z(Ro,se,7,21,0,1),this.preMoves=Z(Ee,ve,0,20,7,1),e=0;e<21;e++)this.nodeUD[e]=new fo,this.nodeRL[e]=new fo,this.nodeFB[e]=new fo,this.phase1Cubie[e]=new ue;for(r=0;r<6;r++)this.urfCubieCube[r]=new ue,this.urfCoordCube[r]=new fo;for(t=0;t<20;t++)this.preMoveCubes[t+1]=new ue}function Qe(){if(!vu){vu=!0;var t,e,r,n,o,l;for(Tr=$(J(ee,2),se,10,0,[$(J(ee,1),ie,0,7,[8,9,20]),$(J(ee,1),ie,0,7,[6,18,38]),$(J(ee,1),ie,0,7,[0,36,47]),$(J(ee,1),ie,0,7,[2,45,11]),$(J(ee,1),ie,0,7,[29,26,15]),$(J(ee,1),ie,0,7,[27,44,24]),$(J(ee,1),ie,0,7,[33,53,42]),$(J(ee,1),ie,0,7,[35,17,51])]),Ht=$(J(ee,2),se,10,0,[$(J(ee,1),ie,0,7,[5,10]),$(J(ee,1),ie,0,7,[7,19]),$(J(ee,1),ie,0,7,[3,37]),$(J(ee,1),ie,0,7,[1,46]),$(J(ee,1),ie,0,7,[32,16]),$(J(ee,1),ie,0,7,[28,25]),$(J(ee,1),ie,0,7,[30,43]),$(J(ee,1),ie,0,7,[34,52]),$(J(ee,1),ie,0,7,[23,12]),$(J(ee,1),ie,0,7,[21,41]),$(J(ee,1),ie,0,7,[50,39]),$(J(ee,1),ie,0,7,[48,14])]),Vt=Ze(Ee,[se,ve],[17,0],7,[13,13],2),Ss=$(J(kL,1),se,2,4,[\"U \",\"U2\",\"U'\",\"R \",\"R2\",\"R'\",\"F \",\"F2\",\"F'\",\"D \",\"D2\",\"D'\",\"L \",\"L2\",\"L'\",\"B \",\"B2\",\"B'\"]),yt=$(J(Ee,1),ve,0,7,[0,1,2,4,7,9,10,11,13,16,3,5,6,8,12,14,15,17]),hn=Z(Ee,ve,0,18,7,1),Do=Z(Ee,ve,0,11,7,1),e=0;e<18;e++)hn[yt[e]]=e;for(r=0;r<10;r++)for(n=~~(yt[r]/3),Do[r]=0,o=0;o<10;o++)l=~~(yt[o]/3),Do[r]|=(n==l||n%3==l%3&&n>=l?1:0)<<o;for(Do[10]=0,t=0;t<13;t++)for(Vt[t][0]=Vt[t][t]=1,o=1;o<t;o++)Vt[t][o]=Vt[t-1][o-1]+Vt[t-1][o]}}function An(t,e,r){Qe();var n,o,l,i,s;for(n=t.length-1,l=0,s=4,o=n;o>=0;o--)i=Eu(t[o],r),(i&12)==e&&(l+=Vt[o][s--]);return l}function bs(t,e){Qe();var r,n;for(n=0,r=e-2;r>=0;r--)n^=t%(e-r),t=~~(t/(e-r));return n&1}function lt(t,e,r){Qe();var n,o,l,i;for(o=0,i={l:1323536,m:2777561,h:1043915},n=0;n<e-1;n++)l=Eu(t[n],r)<<2,o=(e-n)*o+kr(Pt(Er(i,l),{l:15,m:0,h:0})),i=fu(i,hl({l:1118480,m:279620,h:69905},l));return o}function Eu(t,e){return e?t>>1:t&7}function ku(t,e,r,n){Qe();var o,l,i,s;for(o=t.length-1,s=4,l=o,i=o;i>=0;i--)e>=Vt[i][s]?(e-=Vt[i][s--],t[i]=Il(t[i],s|r,n)):((l&12)==r&&(l-=4),t[i]=Il(t[i],l--,n))}function Gr(t,e,r,n){Qe();var o,l,i,s,u,a;for(a={l:1323536,m:2777561,h:1043915},o={l:0,m:0,h:0},s=2;s<=r;s++)o=us(hl(o,4),ss(e%s)),e=~~(e/s);for(l=0;l<r-1;l++)u=(kr(o)&15)<<2,o=Er(o,4),t[l]=Il(t[l],kr(Pt(Er(a,u),{l:15,m:0,h:0})),n),i=fu(hl({l:1,m:0,h:0},u),{l:1,m:0,h:0}),a=us(Pt(a,i),Pt(Er(a,4),{l:~i.l&Ye,m:~i.m&Ye,h:~i.h&or}));t[r-1]=Il(t[r-1],kr(Pt(a,{l:15,m:0,h:0})),n)}function Il(t,e,r){return(r?e<<1|t&1:e|t&-8)<<24>>24}function tm(t,e){Qe();var r,n,o,l,i,s,u,a;for(l=0;l<8;l++)e.ca[l]=0;for(i=0;i<12;i++)e.ea[i]=0;for(s=0;s<8;s++){for(a=0;a<3&&!(t[Tr[s][a]]==0||t[Tr[s][a]]==3);a++);for(r=t[Tr[s][(a+1)%3]],n=t[Tr[s][(a+2)%3]],u=0;u<8;u++)if(r==~~(Tr[u][1]/9)&&n==~~(Tr[u][2]/9)){e.ca[s]=Fl(a%3<<3|u);break}}for(o=0;o<12;o++)for(u=0;u<12;u++){if(t[Ht[o][0]]==~~(Ht[u][0]/9)&&t[Ht[o][1]]==~~(Ht[u][1]/9)){e.ea[o]=Fl(u<<1);break}if(t[Ht[o][0]]==~~(Ht[u][1]/9)&&t[Ht[o][1]]==~~(Ht[u][0]/9)){e.ea[o]=Fl(u<<1|1);break}}}function zu(t,e){var r,n,o;if(t.length_0==0){t.moves[t.length_0++]=e;return}if(r=~~(e/3),n=~~(t.moves[t.length_0-1]/3),r==n){o=(e%3+t.moves[t.length_0-1]%3+1)%4,o==3?--t.length_0:t.moves[t.length_0-1]=r*3+o;return}if(t.length_0>1&&r%3==n%3&&r==~~(t.moves[t.length_0-2]/3)){o=(e%3+t.moves[t.length_0-2]%3+1)%4,o==3?(t.moves[t.length_0-2]=t.moves[t.length_0-1],--t.length_0):t.moves[t.length_0-2]=r*3+o;return}t.moves[t.length_0++]=e}function rm(t,e,r,n){t.verbose=e,t.urfIdx=r,t.depth1=n}function Cu(t){var e,r,n;if(r=new zL,n=(t.verbose&2)!=0?(t.urfIdx+3)%6:t.urfIdx,n<3)for(e=0;e<t.length_0;e++)(t.verbose&1)!=0&&e==t.depth1&&(r.string+=\". \"),gu(Lu(r,(Qe(),Ss)[(X(),Tl)[n][t.moves[e]]]));else for(e=t.length_0-1;e>=0;e--)gu(Lu(r,(Qe(),Ss)[(X(),Tl)[n][t.moves[e]]])),(t.verbose&1)!=0&&e==t.depth1&&(r.string+=\". \");return r.string}function Pu(){this.moves=Z(Ee,ve,0,31,7,1)}var se,Ye,or,pL,_e,Re,ve,os,ao,ie,V,Dl,yl,kL,mu,Cr,gs,Ln,mn,Bn,cn,bl,Lo,pn,Rn,dn,sr,Sl,ar,xl,wl,vl,pu,Qt,jt,Dn,Pr,Rs,gr,Ml,Fn,ds,Mr,co,Lr,qt,ot,hu,Ds,Fs,po,As,yu,fe,Gl,hs,ys,Tl,Ro,wu,Us,vu,Vt,Do,Tr,Ht,Ss,hn,yt,Ee,nm,ee,om,de,lm,im,Gu=U(()=>{se={3:1},Ye=4194303,or=1048575,pL=524288,_e=65535,Re={11:1,3:1},ve={17:1,3:1},os=14540032,ao=286331153,ie={10:1,3:1},Dl={};uo(1,null,{},FL);uo(79,1,{},ls);V.createClassLiteralForArray=function(e){var r;return r=new ls,r.modifiers=4,e>1?r.componentType=lu(this,e-1):r.componentType=this,r};V.isPrimitive=function(){return(this.modifiers&1)!=0};kL=lr(\"java.lang\",\"String\",2);mu=!1;uo(31,1,{31:1},fo);V.flip=0;V.flipc=0;V.fsym=0;V.prun=0;V.slice_0=0;V.tsym=0;V.twist=0;V.twistc=0;wl=0,vl=lr(\"org.cubing.min2phase.client\",\"CoordCube\",31),pu=!1;Ro=lr(\"org.cubing.min2phase.client\",\"CubieCube\",7);uo(72,1,{},xu);V.allowShorter=!1;V.conjMask=0;V.depth1=0;V.isRec=!1;V.length1=0;V.maxDep2=0;V.maxPreMoves=0;V.preMoveLen=0;V.probe={l:0,m:0,h:0};V.probeMax={l:0,m:0,h:0};V.probeMin={l:0,m:0,h:0};V.selfSym={l:0,m:0,h:0};V.solLen=0;V.urfIdx=0;V.valid1=0;V.verbose=0;wu=12,Us=7,vu=!1;uo(150,1,{},Pu);V.depth1=0;V.length_0=0;V.urfIdx=0;V.verbose=0;Ee=Al(\"int\",\"I\");lr(\"com.google.gwt.lang\",\"CollapsedPropertyHolder\",252);lr(\"com.google.gwt.lang\",\"JavaClassHierarchySetupUtil\",254);nm=lr(\"com.google.gwt.lang\",\"LongLibBase/LongEmul\",null);lr(\"com.google.gwt.lang\",\"ModuleUtils\",257);ee=Al(\"byte\",\"B\"),om=Al(\"long\",\"J\"),de=Al(\"char\",\"C\");lr(\"com.google.gwt.user.client.rpc\",\"XsrfToken\",null),AL(\"java.util\",\"Map/Entry\");lm=function(){cu(!1)},im=function(t){return $L(new xu,t)}});async function Tu(){let t=await he[\"3x3x3\"].kpuzzle(),e=t.startState();for(let r of ru)e=e.applyAlg(k.fromString((await Kt())(r)));return eu(t,e)?e:Tu()}function Iu(){return sm??(sm=Promise.resolve().then(()=>(Gu(),Mu)))}async function xs(t){return rt(),k.fromString((await Iu()).solveState(X2(t)))}async function yn(){return xs(await Tu())}async function Nu(){(await Iu()).initialize()}async function Ou(){return gn(await yn(),am)}async function Wu(){let t=new ft,e=await yn();return t.experimentalPushAlg(_u),t.experimentalPushAlg(e),t.experimentalPushAlg(_u),t.toAlg()}var sm,am,_u,ws=U(()=>{Ae();_t();nr();Wt();dl();J2();tu();nu();sm=null;am=[[null,\"Rw\",\"Rw2\",\"Rw'\",\"Fw\",\"Fw'\"],[null,\"Dw\",\"Dw2\",\"Dw'\"]];_u=new k(\"R' U' F\")});function ae(t,...e){let r=e.length,n=t[e[r-1]];for(let o=r;o>0;o--)t[e[o]]=t[e[o-1]];return t[e[0]]=n,ae}function Ku(t,e,r,n){r=(r||8)-1;let o=1985229328,l=0;n??(n=0),n<0&&(e<<=1);for(let i=0;i<r;++i){let s=vs[r-i],u=~~(e/s);l^=u,e%=s,u<<=2,t[i]=o>>u&7;let a=(1<<u)-1;o=(o&a)+(o>>4&~a)}return n<0&&(l&1)!=0?(t[r]=t[r-1],t[r-1]=o&7):t[r]=o&7,t}var Le,vs,Qu=U(()=>{Le=[],vs=[1];for(let t=0;t<32;++t){Le[t]=[];for(let e=0;e<32;++e)Le[t][e]=0}for(let t=0;t<32;++t){Le[t][0]=Le[t][t]=1,vs[t+1]=vs[t]*(t+1);for(let e=1;e<t;++e)Le[t][e]=Le[t-1][e-1]+Le[t-1][e]}});var Jf={};Ue(Jf,{initialize:()=>yB,random444Scramble:()=>UB});function T(t,e){let r=new Array(t);if(e!==void 0)for(let n=0;n<t;n++)r[n]=new Array(e);return r}function cm(t){return new Fo[t]}function ut(t,e,r,...n){let o=Fo[t];o&&!o.___clazz$?H=o.prototype:(!o&&(o=Fo[t]=function(){}),H=o.prototype=e<0?{}:cm(e),H.castableTypeMap$=r);for(let l of n)l.prototype=H;o.___clazz$&&(H.___clazz$=o.___clazz$,o.___clazz$=null)}function mr(t){let e={};for(let r=0,n=t.length;r<n;++r)e[t[r]]=1;return e}function Hu(){}function pm(t,e){let r=Yu(0,e);return Zu(t.___clazz$,t.castableTypeMap$,t.queryId$,r),r}function Yu(t,e){let r=new Array(e);if(t===3)for(let n=0;n<e;++n){let o={m:0,l:0,h:0};o.l=o.m=o.h=0,r[n]=o}else if(t>0){let n=[null,0,!1][t];for(let o=0;o<e;++o)r[o]=n}return r}function zs(t,e,r,n,o){let l=Yu(o,n);return Zu(t,e,r,l),l}function Zu(t,e,r,n){return Ju(),dm(n,Cs,Ps),n.___clazz$=t,n.castableTypeMap$=e,n.queryId$=r,n}function Nl(t,e,r){return t[e]=r}function Ju(){Xu||(Xu=!0,Cs=[],Ps=[],Rm(new Hu,Cs,Ps))}function Rm(t,e,r){let n=0,o;for(let l in t)(o=t[l])&&(e[n]=l,r[n]=o,++n)}function dm(t,e,r){Ju();for(let n=0,o=e.length;n<o;++n)t[e[n]]=r[n]}function Dm(t,e){return t.castableTypeMap$&&!!t.castableTypeMap$[e]}function Fm(t,e){return t!==null&&Dm(t,e)}function Am(){if($u)return!1;$u=!0,Ql=T(15582,36),jl=T(15582),bt=T(15582),Sn=T(48,48),St=T(48,36),bn=T(48),Ts=T(48)}function Ms(t){t.ct=T(24)}function ef(t,e){let r,n;if(Fm(e,qu)){for(r=e,n=0;n<24;++n)if(t.ct[n]!==r.ct[n])return!1;return!0}return!1}function Ol(t){let e,r,n;for(r=0,n=8,e=23;e>=0;--e)t.ct[e]===1&&(r+=Le[e][n--]);return r}function _l(t){let e,r;if(Un!==null)return Un[Ol(t)];for(r=0;r<48;++r){if(e=xm(Ol(t)),e!==-1)return e*64+r;le(t,0),r%2==1&&le(t,1),r%8==7&&le(t,2),r%16==15&&le(t,3)}}function Ut(t,e){let r=e%3;switch(e=~~(e/3),e){case 0:d(t.ct,0,1,2,3,r);break;case 1:d(t.ct,16,17,18,19,r);break;case 2:d(t.ct,8,9,10,11,r);break;case 3:d(t.ct,4,5,6,7,r);break;case 4:d(t.ct,20,21,22,23,r);break;case 5:d(t.ct,12,13,14,15,r);break;case 6:d(t.ct,0,1,2,3,r),d(t.ct,8,20,12,16,r),d(t.ct,9,21,13,17,r);break;case 7:d(t.ct,16,17,18,19,r),d(t.ct,1,15,5,9,r),d(t.ct,2,12,6,10,r);break;case 8:d(t.ct,8,9,10,11,r),d(t.ct,2,19,4,21,r),d(t.ct,3,16,5,22,r);break;case 9:d(t.ct,4,5,6,7,r),d(t.ct,10,18,14,22,r),d(t.ct,11,19,15,23,r);break;case 10:d(t.ct,20,21,22,23,r),d(t.ct,0,8,4,14,r),d(t.ct,3,11,7,13,r);break;case 11:d(t.ct,12,13,14,15,r),d(t.ct,1,20,7,18,r),d(t.ct,0,23,6,17,r)}}function le(t,e){switch(e){case 0:Ut(t,19),Ut(t,28);break;case 1:Ut(t,21),Ut(t,32);break;case 2:d(t.ct,0,3,1,2,1),d(t.ct,8,11,9,10,1),d(t.ct,4,7,5,6,1),d(t.ct,12,15,13,14,1),d(t.ct,16,19,21,22,1),d(t.ct,17,18,20,23,1);break;case 3:Ut(t,18),Ut(t,29),Ut(t,24),Ut(t,35)}}function tf(t,e){let r;for(r=0;r<e;++r)le(t,0),r%2==1&&le(t,1),r%8==7&&le(t,2),r%16==15&&le(t,3)}function Gs(t,e){let r,n;for(n=8,r=23;r>=0;--r)t.ct[r]=0,e>=Le[r][n]&&(e-=Le[r][n--],t.ct[r]=1)}function Wl(t,e){let r;for(r=0;r<24;++r)t.ct[r]=e.ct[r]}function Ao(){let t;for(Ms(this),t=0;t<8;++t)this.ct[t]=1;for(t=8;t<24;++t)this.ct[t]=0}function Kl(t,e){let r;for(Ms(this),r=0;r<24;++r)this.ct[r]=~~(t.ct[r]/2)===e?1:0}function ho(t){let e;for(Ms(this),e=0;e<24;++e)this.ct[e]=t[e]}function hm(){let t,e,r=new Ao,n=new Ao;for(t=0;t<15582;++t)for(Gs(n,jl[t]),e=0;e<36;++e)Wl(r,n),Ut(r,e),Ql[t][e]=_l(r)}function ym(){let t,e,r,n,o,l,i,s;for(ui(bt),bt[0]=0,e=0,r=1;r!==15582;)for(l=e>4,s=l?-1:e,t=l?e:-1,++e,n=0;n<15582;++n)if(bt[n]===s){for(i=0;i<27;++i)if(o=~~Ql[n][i]>>>6,bt[o]===t)if(++r,l){bt[n]=e;break}else bt[o]=e}}function Um(t){let e,r,n,o=new ho(t.ct);for(n=0;n<48;++n){for(e=!0,r=0;r<24;++r)if(o.ct[r]!==~~(r/4)){e=!1;break}if(e)return n;le(o,0),n%2==1&&le(o,1),n%8==7&&le(o,2),n%16==15&&le(o,3)}return-1}function bm(){let t,e,r,n=new Ao;for(t=0;t<24;++t)n.ct[t]=t;let o=new ho(n.ct),l=new ho(n.ct),i=new ho(n.ct);for(t=0;t<48;++t){for(e=0;e<48;++e){for(r=0;r<48;++r)ef(n,o)&&(Sn[t][e]=r,r===0&&(bn[t]=e)),le(o,0),r%2==1&&le(o,1),r%8==7&&le(o,2),r%16==15&&le(o,3);le(n,0),e%2==1&&le(n,1),e%8==7&&le(n,2),e%16==15&&le(n,3)}le(n,0),t%2==1&&le(n,1),t%8==7&&le(n,2),t%16==15&&le(n,3)}for(t=0;t<48;++t)for(Wl(n,l),tf(n,bn[t]),e=0;e<36;++e)for(Wl(o,n),Ut(o,e),tf(o,t),r=0;r<36;++r)if(Wl(i,l),Ut(i,r),ef(i,o)){St[t][e]=r;break}for(Gs(n,0),t=0;t<48;++t)Ts[bn[t]]=Ol(n),le(n,0),t%2==1&&le(n,1),t%8==7&&le(n,2),t%16==15&&le(n,3)}function Sm(){let t,e,r,n,o=new Ao,l=T(22984);for(e=0;e<22984;e++)l[e]=0;for(t=0,e=0;e<735471;++e)if((l[~~e>>>5]&1<<(e&31))==0){for(Gs(o,e),n=0;n<48;++n)r=Ol(o),l[~~r>>>5]|=1<<(r&31),Un!==null&&(Un[r]=t<<6|bn[n]),le(o,0),n%2==1&&le(o,1),n%8==7&&le(o,2),n%16==15&&le(o,3);jl[t++]=e}}function xm(t){let e=BB(jl,t);return e>=0?e:-1}function wm(){rf||(rf=!0,Yl=T(70,28),Hl=T(6435,28),uf=T(70,16),sf=T(6435,16),Xe=T(450450),af=[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,0,0,0,0,0,1,0,1,0,0,0])}function ql(t){let e,r,n;for(r=0,n=8,e=14;e>=0;--e)t.ct[e]!==t.ct[15]&&(r+=Le[e][n--]);return r}function Vl(t){let e,r,n;for(r=0,n=4,e=6;e>=0;--e)t.rl[e]!==t.rl[7]&&(r+=Le[e][n--]);return r*2+t.parity}function xn(t,e){t.parity^=af[e];let r=e%3;switch(e=~~(e/3),e){case 0:d(t.ct,0,1,2,3,r);break;case 1:d(t.rl,0,1,2,3,r);break;case 2:d(t.ct,8,9,10,11,r);break;case 3:d(t.ct,4,5,6,7,r);break;case 4:d(t.rl,4,5,6,7,r);break;case 5:d(t.ct,12,13,14,15,r);break;case 6:d(t.ct,0,1,2,3,r),d(t.rl,0,5,4,1,r),d(t.ct,8,9,12,13,r);break;case 7:d(t.rl,0,1,2,3,r),d(t.ct,1,15,5,9,r),d(t.ct,2,12,6,10,r);break;case 8:d(t.ct,8,9,10,11,r),d(t.rl,0,3,6,5,r),d(t.ct,3,2,5,4,r);break;case 9:d(t.ct,4,5,6,7,r),d(t.rl,3,2,7,6,r),d(t.ct,11,10,15,14,r);break;case 10:d(t.rl,4,5,6,7,r),d(t.ct,0,8,4,14,r),d(t.ct,3,11,7,13,r);break;case 11:d(t.ct,12,13,14,15,r),d(t.rl,1,4,7,2,r),d(t.ct,1,0,7,6,r)}}function wn(t,e){switch(e){case 0:xn(t,19),xn(t,28);break;case 1:xn(t,21),xn(t,32);break;case 2:d(t.ct,0,3,1,2,1),d(t.ct,8,11,9,10,1),d(t.ct,4,7,5,6,1),d(t.ct,12,15,13,14,1),d(t.rl,0,3,5,6,1),d(t.rl,1,2,4,7,1)}}function nf(t,e,r){let n;for(n=0;n<16;++n)t.ct[n]=~~(e.ct[n]/2);for(n=0;n<8;++n)t.rl[n]=e.ct[n+16];t.parity=r}function of(t,e){let r,n;for(n=8,t.ct[15]=0,r=14;r>=0;--r)e>=Le[r][n]?(e-=Le[r][n--],t.ct[r]=1):t.ct[r]=0}function lf(t,e){let r,n;for(t.parity=e&1,e>>>=1,n=4,t.rl[7]=0,r=6;r>=0;--r)e>=Le[r][n]?(e-=Le[r][n--],t.rl[r]=1):t.rl[r]=0}function Is(){this.rl=T(8),this.ct=T(16)}function vm(){let t,e,r,n,o,l,i,s,u,a,f=new Is;for(o=0;o<70;++o)for(s=0;s<28;++s)lf(f,o),xn(f,Nr[s]),Yl[o][s]=Vl(f);for(o=0;o<70;++o)for(lf(f,o),i=0;i<16;++i)uf[o][i]=Vl(f),wn(f,0),i%2==1&&wn(f,1),i%8==7&&wn(f,2);for(o=0;o<6435;++o)for(of(f,o),i=0;i<16;++i)sf[o][i]=ql(f)&65535,wn(f,0),i%2==1&&wn(f,1),i%8==7&&wn(f,2);for(o=0;o<6435;++o)for(s=0;s<28;++s)of(f,o),xn(f,Nr[s]),Hl[o][s]=ql(f)&65535;for(ui(Xe),Xe[0]=Xe[18]=Xe[28]=Xe[46]=Xe[54]=Xe[56]=0,r=0,n=6;n!==450450;){let g=r>6,L=g?-1:r,m=g?r:-1;for(++r,o=0;o<450450;++o)if(Xe[o]===L){for(t=~~(o/70),u=o%70,s=0;s<23;++s)if(e=Hl[t][s],a=Yl[u][s],l=e*70+a,Xe[l]===m)if(++n,g){Xe[o]=r;break}else Xe[l]=r}}}function Em(){ff||(ff=!0,yo=T(29400,20),Lf=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1],Br=T(29400),_s=[0,9,14,23,27,28,41,42,46,55,60,69],Ws=T(70))}function Ns(t){let e,r,n,o;for(r=0,o=4,e=6;e>=0;--e)t.ud[e]!==t.ud[7]&&(r+=Le[e][o--]);for(r*=35,o=4,e=6;e>=0;--e)t.fb[e]!==t.fb[7]&&(r+=Le[e][o--]);r*=12;let l=t.fb[7]^t.ud[7];for(n=0,o=4,e=7;e>=0;--e)t.rl[e]!==l&&(n+=Le[e][o--]);return t.parity+2*(r+Ws[n])}function km(t,e){switch(t.parity^=Lf[e],e){case 0:case 1:case 2:d(t.ud,0,1,2,3,e%3);break;case 3:d(t.rl,0,1,2,3,1);break;case 4:case 5:case 6:d(t.fb,0,1,2,3,(e-1)%3);break;case 7:case 8:case 9:d(t.ud,4,5,6,7,(e-1)%3);break;case 10:d(t.rl,4,5,6,7,1);break;case 11:case 12:case 13:d(t.fb,4,5,6,7,(e+1)%3);break;case 14:d(t.ud,0,1,2,3,1),d(t.rl,0,5,4,1,1),d(t.fb,0,5,4,1,1);break;case 15:d(t.rl,0,1,2,3,1),d(t.fb,1,4,7,2,1),d(t.ud,1,6,5,2,1);break;case 16:d(t.fb,0,1,2,3,1),d(t.ud,3,2,5,4,1),d(t.rl,0,3,6,5,1);break;case 17:d(t.ud,4,5,6,7,1),d(t.rl,3,2,7,6,1),d(t.fb,3,2,7,6,1);break;case 18:d(t.rl,4,5,6,7,1),d(t.fb,0,3,6,5,1),d(t.ud,0,3,4,7,1);break;case 19:d(t.fb,4,5,6,7,1),d(t.ud,0,7,6,1,1),d(t.rl,1,4,7,2,1)}}function gf(t,e,r){let n,o=(e.ct[0]>e.ct[8]?1:0)^(e.ct[8]>e.ct[16]?1:0)^(e.ct[0]>e.ct[16]?1:0)?1:0;for(n=0;n<8;++n)t.ud[n]=e.ct[n]&1^1,t.fb[n]=e.ct[n+8]&1^1,t.rl[n]=e.ct[n+16]&1^1^o;t.parity=o^r}function zm(t,e){let r,n,o,l;for(t.parity=e&1,e>>>=1,o=_s[e%12],e=~~(e/12),l=4,r=7;r>=0;--r)t.rl[r]=0,o>=Le[r][l]&&(o-=Le[r][l--],t.rl[r]=1);for(n=e%35,e=~~(e/35),l=4,t.fb[7]=0,r=6;r>=0;--r)n>=Le[r][l]?(n-=Le[r][l--],t.fb[r]=1):t.fb[r]=0;for(l=4,t.ud[7]=0,r=6;r>=0;--r)e>=Le[r][l]?(e-=Le[r][l--],t.ud[r]=1):t.ud[r]=0}function Os(){this.ud=T(8),this.rl=T(8),this.fb=T(8)}function Cm(){let t,e,r,n;for(r=0;r<12;++r)Ws[_s[r]]=r;let o=new Os;for(r=0;r<29400;++r)for(n=0;n<20;++n)zm(o,r),km(o,n),yo[r][n]=Ns(o)&65535;for(ui(Br),Br[0]=0,t=0,e=1;e!==29400;){for(r=0;r<29400;++r)if(Br[r]===t)for(n=0;n<17;++n)Br[yo[r][n]]===-1&&(Br[yo[r][n]]=t+1,++e);++t}}function Pm(t,e){let r;for(r=0;r<24;++r)t.ct[r]=e.ct[r]}function Mm(t,e){let r=e%3;switch(e=~~(e/3),e){case 0:d(t.ct,0,1,2,3,r);break;case 1:d(t.ct,16,17,18,19,r);break;case 2:d(t.ct,8,9,10,11,r);break;case 3:d(t.ct,4,5,6,7,r);break;case 4:d(t.ct,20,21,22,23,r);break;case 5:d(t.ct,12,13,14,15,r);break;case 6:d(t.ct,0,1,2,3,r),d(t.ct,8,20,12,16,r),d(t.ct,9,21,13,17,r);break;case 7:d(t.ct,16,17,18,19,r),d(t.ct,1,15,5,9,r),d(t.ct,2,12,6,10,r);break;case 8:d(t.ct,8,9,10,11,r),d(t.ct,2,19,4,21,r),d(t.ct,3,16,5,22,r);break;case 9:d(t.ct,4,5,6,7,r),d(t.ct,10,18,14,22,r),d(t.ct,11,19,15,23,r);break;case 10:d(t.ct,20,21,22,23,r),d(t.ct,0,8,4,14,r),d(t.ct,3,11,7,13,r);break;case 11:d(t.ct,12,13,14,15,r),d(t.ct,1,20,7,18,r),d(t.ct,0,23,6,17,r)}}function Ks(){let t;for(this.ct=T(24),t=0;t<24;++t)this.ct[t]=~~(t/4)}function mf(t){let e,r,n;for(Ks.call(this),e=0;e<23;++e)n=e+t(24-e),this.ct[n]!==this.ct[e]&&(r=this.ct[e],this.ct[e]=this.ct[n],this.ct[n]=r)}function Gm(){Bf||(Bf=!0,Bt=T(18),Nm())}function cf(t){t.cp=[0,1,2,3,4,5,6,7],t.co=[0,0,0,0,0,0,0,0]}function pf(t,e){let r;for(r=0;r<8;++r)t.cp[r]=e.cp[r],t.co[r]=e.co[r]}function Tm(t,e){!t.temps&&(t.temps=new Zl),Rf(t,Bt[e],t.temps),pf(t,t.temps)}function Im(t,e){let r,n;for(n=0,r=6;r>=0;--r)n+=t.co[r]=e%3,e=~~(e/3);t.co[7]=(15-n)%3}function Rf(t,e,r){let n,o,l,i;for(n=0;n<8;++n)r.cp[n]=t.cp[e.cp[n]],l=t.co[e.cp[n]],i=e.co[n],o=l,o=o+(l<3?i:6-i),o=o%3,(l>=3?1:0)^(i>=3?1:0)&&(o=o+3),r.co[n]=o}function Zl(){cf(this)}function cr(t,e){cf(this),Ku(this.cp,t),Im(this,e)}function df(t){cr.call(this,t(40320),t(2187))}function Nm(){let t,e;for(Bt[0]=new cr(15120,0),Bt[3]=new cr(21021,1494),Bt[6]=new cr(8064,1236),Bt[9]=new cr(9,0),Bt[12]=new cr(1230,412),Bt[15]=new cr(224,137),t=0;t<18;t+=3)for(e=0;e<2;++e)Bt[t+e+1]=new Zl,Rf(Bt[t+e],Bt[t],Bt[t+e+1])}function Om(){Df||(Df=!0,xt=T(1937880),ei=T(1538),ti=T(1538),Cn=T(11880),bf=[0,1,6,3,4,5,2,7],Vs=T(160,12),Hs=T(160,12),qs=[1,1,1,3,12,60,360,2520,20160,181440,1814400,19958400,239500800],js=[0,2,4,6,1,3,7,5,8,9,10,11])}function vn(t,e,r,n,o){let l=t.edgeo[o];t.edgeo[o]=t.edge[n],t.edge[n]=t.edgeo[r],t.edgeo[r]=t.edge[e],t.edge[e]=l}function En(t,e){let r,n,o,l,i;for(t.isStd||yf(t),n=0,i=1985229328,l=47768,r=0;r<e;++r)o=t.edge[r]<<2,n*=12-r,o>=32?(n+=l>>o-32&15,l-=4368<<o-32):(n+=i>>o&15,l-=4369,i-=286331152<<o);return n}function Ff(t){let e,r=En(t,4);e=Cn[r];let n=e&7;e>>=3,Jl(t,n);let o=En(t,10)%20160;return e*20160+o}function Xl(t,e){switch(t.isStd=!1,e){case 0:ae(t.edge,0,4,1,5),ae(t.edgeo,0,4,1,5);break;case 1:ce(t.edge,0,4,1,5),ce(t.edgeo,0,4,1,5);break;case 2:ae(t.edge,0,5,1,4),ae(t.edgeo,0,5,1,4);break;case 3:ce(t.edge,5,10,6,11),ce(t.edgeo,5,10,6,11);break;case 4:ae(t.edge,0,11,3,8),ae(t.edgeo,0,11,3,8);break;case 5:ce(t.edge,0,11,3,8),ce(t.edgeo,0,11,3,8);break;case 6:ae(t.edge,0,8,3,11),ae(t.edgeo,0,8,3,11);break;case 7:ae(t.edge,2,7,3,6),ae(t.edgeo,2,7,3,6);break;case 8:ce(t.edge,2,7,3,6),ce(t.edgeo,2,7,3,6);break;case 9:ae(t.edge,2,6,3,7),ae(t.edgeo,2,6,3,7);break;case 10:ce(t.edge,4,8,7,9),ce(t.edgeo,4,8,7,9);break;case 11:ae(t.edge,1,9,2,10),ae(t.edgeo,1,9,2,10);break;case 12:ce(t.edge,1,9,2,10),ce(t.edgeo,1,9,2,10);break;case 13:ae(t.edge,1,10,2,9),ae(t.edgeo,1,10,2,9);break;case 14:ce(t.edge,0,4,1,5),ce(t.edgeo,0,4,1,5),ae(t.edge,9,11),ae(t.edgeo,8,10);break;case 15:ce(t.edge,5,10,6,11),ce(t.edgeo,5,10,6,11),ae(t.edge,1,3),ae(t.edgeo,0,2);break;case 16:ce(t.edge,0,11,3,8),ce(t.edgeo,0,11,3,8),ae(t.edge,5,7),ae(t.edgeo,4,6);break;case 17:ce(t.edge,2,7,3,6),ce(t.edgeo,2,7,3,6),ae(t.edge,8,10),ae(t.edgeo,9,11);break;case 18:ce(t.edge,4,8,7,9),ce(t.edgeo,4,8,7,9),ae(t.edge,0,2),ae(t.edgeo,1,3);break;case 19:ce(t.edge,1,9,2,10),ce(t.edgeo,1,9,2,10),ae(t.edge,4,6),ae(t.edgeo,5,7)}}function kn(t,e){switch(t.isStd=!1,e){case 0:Xl(t,14),Xl(t,17);break;case 1:vn(t,11,5,10,6),vn(t,5,10,6,11),vn(t,1,2,3,0),vn(t,4,9,7,8),vn(t,8,4,9,7),vn(t,0,1,2,3);break;case 2:ct(t,4,5),ct(t,5,4),ct(t,11,8),ct(t,8,11),ct(t,7,6),ct(t,6,7),ct(t,9,10),ct(t,10,9),ct(t,1,1),ct(t,0,0),ct(t,3,3),ct(t,2,2)}}function Jl(t,e){for(;e>=2;)e-=2,kn(t,1),kn(t,2);e!==0&&kn(t,0)}function Uo(t,e){let r,n,o,l,i,s;for(i=1985229328,s=47768,o=0,r=0;r<11;++r)if(n=qs[11-r],l=~~(e/n),e=e%n,o^=l,l<<=2,l>=32){l=l-32,t.edge[r]=s>>l&15;let u=(1<<l)-1;s=(s&u)+(s>>4&~u)}else{t.edge[r]=i>>l&15;let u=(1<<l)-1;i=(i&u)+(i>>>4&~u)+(s<<28),s=s>>4}for((o&1)==0?t.edge[11]=i:(t.edge[11]=t.edge[10],t.edge[10]=i),r=0;r<12;++r)t.edgeo[r]=r;t.isStd=!0}function Af(t,e){let r;for(r=0;r<12;++r)t.edge[r]=e.edge[r],t.edgeo[r]=e.edgeo[r];t.isStd=e.isStd}function hf(t,e){let r,n,o,l;for(t.temp===null&&(t.temp=T(12)),r=0;r<12;++r)t.temp[r]=r,t.edge[r]=e.ep[js[r]+12]%12;for(n=1,r=0;r<12;++r)for(;t.edge[r]!==r;)l=t.edge[r],t.edge[r]=t.edge[l],t.edge[l]=l,o=t.temp[r],t.temp[r]=t.temp[l],t.temp[l]=o,n^=1;for(r=0;r<12;++r)t.edge[r]=t.temp[e.ep[js[r]]%12];return n}function yf(t){let e;for(t.temp===null&&(t.temp=T(12)),e=0;e<12;++e)t.temp[t.edgeo[e]]=e;for(e=0;e<12;++e)t.edge[e]=t.temp[t.edge[e]],t.edgeo[e]=e;t.isStd=!0}function ce(t,e,r,n,o){let l;l=t[e],t[e]=t[n],t[n]=l,l=t[r],t[r]=t[o],t[o]=l}function ct(t,e,r){let n=t.edge[e];t.edge[e]=t.edgeo[r],t.edgeo[r]=n}function Yt(){this.edge=T(12),this.edgeo=T(12)}function _m(){let t,e,r,n,o,l,i,s,u,a,f,g,L,m,p,B,F,A,b,h,C,E,q=new Yt,re=new Yt,I=new Yt;for(ui(xt),s=0,$l=1,Qs(xt,0,0);$l!==31006080&&(p=s>9,i=s%3,l=(s+1)%3,a=p?3:i,t=p?i:3,!(s>=9));){for(g=0;g<31006080;g+=16)if(E=xt[~~g>>4],!(!p&&E===-1)){for(f=g,u=g+16;f<u;++f,E>>=2)if((E&3)===a){for(b=~~(f/20160),e=ei[b],n=f%20160,Uo(q,e*20160+n),F=0;F<17;++F)if(r=zn(q.edge,F<<3,4),h=Cn[r],C=h&7,h>>=3,o=zn(q.edge,F<<3|C,10)%20160,L=h*20160+o,bo(xt,L)===t){if(Qs(xt,p?f:L,l),++$l,p)break;if(A=ti[h],A!==1)for(Af(re,q),Xl(re,F),Jl(re,C),B=1;(A=~~A>>1&65535)!=0;++B)(A&1)==1&&(Af(I,re),Jl(I,B),m=h*20160+En(I,10)%20160,bo(xt,m)===t&&(Qs(xt,m,l),++$l))}}}++s}}function bo(t,e){return t[e>>4]>>((e&15)<<1)&3}function zn(t,e,r){let n,o,l,i,s,u=Hs[e],a=Vs[e];for(o=0,s=1985229328,i=47768,n=0;n<r;++n)l=u[t[a[n]]]<<2,o*=12-n,l>=32?(o+=i>>l-32&15,i-=4368<<l-32):(o+=s>>l&15,i-=4369,s-=286331152<<l);return o}function Uf(t){let e,r,n,o,l,i,s,u,a,f,g,L=new Yt;if(i=0,l=bo(xt,t),l===3)return 10;for(;t!==0;)for(l===0?l=2:--l,a=~~(t/20160),e=ei[a],n=t%20160,Uo(L,e*20160+n),u=0;u<17;++u)if(r=zn(L.edge,u<<3,4),f=Cn[r],g=f&7,f>>=3,o=zn(L.edge,u<<3|g,10)%20160,s=f*20160+o,bo(xt,s)===l){++i,t=s;break}return i}function Wm(t,e){let r=bo(xt,t);return r===3?10:(1227133513<<r>>e&3)+e-1}function Km(){let t,e,r,n=new Yt;for(e=0;e<20;++e)for(r=0;r<8;++r){for(Uo(n,0),Xl(n,e),Jl(n,r),t=0;t<12;++t)Vs[e<<3|r][t]=n.edge[t];for(yf(n),t=0;t<12;++t)Hs[e<<3|r][t]=n.temp[t]}}function Qm(){let t,e,r,n,o=new Yt,l=T(1485);for(e=0;e<1485;e++)l[e]=0;for(t=0,e=0;e<11880;++e)if((l[~~e>>>3]&1<<(e&7))==0){for(Uo(o,e*qs[8]),n=0;n<8;++n)r=En(o,4),r===e&&(ti[t]=(ti[t]|1<<n)&65535),l[~~r>>3]=l[~~r>>3]|1<<(r&7),Cn[r]=t<<3|bf[n],kn(o,0),n%2==1&&(kn(o,1),kn(o,2));ei[t++]=e}}function Qs(t,e,r){t[e>>4]^=(3^r)<<((e&15)<<1)}function jm(){Sf||(Sf=!0)}function qm(t){let e,r,n;for(e=0,n=!1,r=0;r<12;++r)e|=1<<t.ep[r],n=n!==t.ep[r]>=12;return e&=~~e>>12,e===0&&!n}function Vm(t,e){let r;for(r=0;r<24;++r)t.ep[r]=e.ep[r]}function Hm(t,e){let r=e%3;switch(e=~~(e/3),e){case 0:d(t.ep,0,1,2,3,r),d(t.ep,12,13,14,15,r);break;case 1:d(t.ep,11,15,10,19,r),d(t.ep,23,3,22,7,r);break;case 2:d(t.ep,0,11,6,8,r),d(t.ep,12,23,18,20,r);break;case 3:d(t.ep,4,5,6,7,r),d(t.ep,16,17,18,19,r);break;case 4:d(t.ep,1,20,5,21,r),d(t.ep,13,8,17,9,r);break;case 5:d(t.ep,2,9,4,10,r),d(t.ep,14,21,16,22,r);break;case 6:d(t.ep,0,1,2,3,r),d(t.ep,12,13,14,15,r),d(t.ep,9,22,11,20,r);break;case 7:d(t.ep,11,15,10,19,r),d(t.ep,23,3,22,7,r),d(t.ep,2,16,6,12,r);break;case 8:d(t.ep,0,11,6,8,r),d(t.ep,12,23,18,20,r),d(t.ep,3,19,5,13,r);break;case 9:d(t.ep,4,5,6,7,r),d(t.ep,16,17,18,19,r),d(t.ep,8,23,10,21,r);break;case 10:d(t.ep,1,20,5,21,r),d(t.ep,13,8,17,9,r),d(t.ep,14,0,18,4,r);break;case 11:d(t.ep,2,9,4,10,r),d(t.ep,14,21,16,22,r),d(t.ep,7,15,1,17,r)}}function Ys(){let t;for(this.ep=T(24),t=0;t<24;++t)this.ep[t]=t}function xf(t){let e,r,n;for(Ys.call(this),e=0;e<23;++e)n=e+t(24-e),n!==e&&(r=this.ep[e],this.ep[e]=this.ep[n],this.ep[n]=r)}function Ym(){wf||(wf=!0,Zs=[35,1,34,2,4,6,22,5,19])}function vf(t){t.moveBuffer=T(60)}function Zm(t,e){return t.value-e.value}function Pn(t,e){let r;for(Vm(t.edge,e.edge),Pm(t.center,e.center),pf(t.corner,e.corner),t.value=e.value,t.add1=e.add1,t.length1=e.length1,t.length2=e.length2,t.length3=e.length3,t.sym=e.sym,r=0;r<60;++r)t.moveBuffer[r]=e.moveBuffer[r];t.moveLength=e.moveLength,t.edgeAvail=e.edgeAvail,t.centerAvail=e.centerAvail,t.cornerAvail=e.cornerAvail}function pr(t){for(;t.centerAvail<t.moveLength;)Mm(t.center,t.moveBuffer[t.centerAvail++]);return t.center}function Ef(t){for(;t.cornerAvail<t.moveLength;)Tm(t.corner,t.moveBuffer[t.cornerAvail++]%18);return t.corner}function So(t){for(;t.edgeAvail<t.moveLength;)Hm(t.edge,t.moveBuffer[t.edgeAvail++]);return t.edge}function Xm(t){let e,r,n,o,l,i,s=new Array(t.moveLength-(t.add1?2:0));for(r=0,e=0;e<t.length1;++e)s[r++]=t.moveBuffer[e];for(i=t.sym,e=t.length1+(t.add1?2:0);e<t.moveLength;++e)St[i][t.moveBuffer[e]]>=27?(s[r++]=St[i][t.moveBuffer[e]]-9,o=Zs[St[i][t.moveBuffer[e]]-27],i=Sn[i][o]):s[r++]=St[i][t.moveBuffer[e]];let u=Sn[bn[i]][Um(pr(t))];for(l=\"\",i=u,e=r-1;e>=0;--e)n=s[e],n=~~(n/3)*3+(2-n%3),St[i][n]>=27?(l=l+Xs[St[i][n]-9]+\" \",o=Zs[St[i][n]-27],i=Sn[i][o]):l=l+Xs[St[i][n]]+\" \";return l}function Ir(t,e){t.moveBuffer[t.moveLength++]=e}function ri(){vf(this),this.edge=new Ys,this.center=new Ks,this.corner=new Zl}function ni(t){ri.call(this),Pn(this,t)}function kf(t){vf(this),this.edge=new xf(t),this.center=new mf(t),this.corner=new df(t)}function Jm(t,e){return e.value-t.value}function oi(t,e){return Jm(t,e)}function zf(){}function $m(){if(Cf)return;Cf=!0;let t,e;for(Xs=[\"U \",\"U2 \",\"U' \",\"R \",\"R2 \",\"R' \",\"F \",\"F2 \",\"F' \",\"D \",\"D2 \",\"D' \",\"L \",\"L2 \",\"L' \",\"B \",\"B2 \",\"B' \",\"Uw \",\"Uw2\",\"Uw'\",\"Rw \",\"Rw2\",\"Rw'\",\"Fw \",\"Fw2\",\"Fw'\",\"Dw \",\"Dw2\",\"Dw'\",\"Lw \",\"Lw2\",\"Lw'\",\"Bw \",\"Bw2\",\"Bw'\"],Nr=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,19,21,22,23,25,28,30,31,32,34,36],xo=[0,1,2,4,6,7,8,9,10,11,13,15,16,17,19,22,25,28,31,34,36],Pf=T(37),Mf=T(37),Mn=T(37,36),li=T(29,28),ii=T(21,20),Js=T(36),wo=T(28),Gn=T(20),t=0;t<29;++t)Pf[Nr[t]]=t;for(t=0;t<21;++t)Mf[xo[t]]=t;for(t=0;t<36;++t){for(e=0;e<36;++e)Mn[t][e]=~~(t/3)==~~(e/3)||~~(t/3)%3==~~(e/3)%3&&t>e;Mn[36][t]=!1}for(t=0;t<29;++t)for(e=0;e<28;++e)li[t][e]=Mn[Nr[t]][Nr[e]];for(t=0;t<21;++t)for(e=0;e<20;++e)ii[t][e]=Mn[xo[t]][xo[e]];for(t=0;t<36;++t)for(Js[t]=36,e=t;e<36;++e)if(!Mn[t][e]){Js[t]=e-1;break}for(t=0;t<28;++t)for(wo[t]=28,e=t;e<28;++e)if(!li[t][e]){wo[t]=e-1;break}for(t=0;t<20;++t)for(Gn[t]=20,e=t;e<20;++e)if(!ii[t][e]){Gn[t]=e-1;break}}function eB(t){let e,r,n,o,l,i,s,u,a,f,g,L;t.solution=\"\";let m=_l(new Kl(pr(t.c),0)),p=_l(new Kl(pr(t.c),1)),B=_l(new Kl(pr(t.c),2)),F=bt[~~m>>6],A=bt[~~p>>6],b=bt[~~B>>6];for(t.p1SolsCnt=0,t.arr2idx=0,uB(t.p1sols.heap),t.length1=(F<A?F:A)<b?F<A?F:A:b;t.length1<100&&!(b<=t.length1&&si(t,~~B>>>6,B&63,t.length1,-1,0)||F<=t.length1&&si(t,~~m>>>6,m&63,t.length1,-1,0)||A<=t.length1&&si(t,~~p>>>6,p&63,t.length1,-1,0));++t.length1);let h=FB(t.p1sols,zs(hB,mr([Lm,Es,ks]),Vu,0,0));h.sort(function(q,re){return q.value-re.value}),e=9;do{e:for(u=h[0].value;u<100;++u)for(i=0;i<h.length&&!(h[i].value>u);++i)if(!(u-h[i].length1>e)&&(Pn(t.c1,h[i]),nf(t.ct2,pr(t.c1),ai(So(t.c1).ep)),g=ql(t.ct2),L=Vl(t.ct2),t.length1=h[i].length1,t.length2=u-h[i].length1,Gf(t,g,L,t.length2,28,0)))break e;++e}while(u===100);t.arr2.sort(function(q,re){return q.value-re.value}),s=0,r=13;do{e:for(a=t.arr2[0].value;a<100;++a)for(i=0;i<Math.min(t.arr2idx,100)&&!(t.arr2[i].value>a);++i)if(!(a-t.arr2[i].length1-t.arr2[i].length2>r)&&(l=hf(t.e12,So(t.arr2[i])),gf(t.ct3,pr(t.arr2[i]),l^ai(Ef(t.arr2[i]).cp)),n=Ns(t.ct3),o=En(t.e12,10),f=Uf(Ff(t.e12)),f<=a-t.arr2[i].length1-t.arr2[i].length2&&Tf(t,o,n,f,a-t.arr2[i].length1-t.arr2[i].length2,20,0))){s=i;break e}++r}while(a===100);let C=new ni(t.arr2[s]);t.length1=C.length1,t.length2=C.length2;let E=a-t.length1-t.length2;for(i=0;i<E;++i)Ir(C,xo[t.move3[i]]);t.solution=Xm(C)}function tB(t,e){let r,n;for(Pn(t.c1,t.c),r=0;r<t.length1;++r)Ir(t.c1,t.move1[r]);switch(Ts[e]){case 0:Ir(t.c1,24),Ir(t.c1,35),t.move1[t.length1]=24,t.move1[t.length1+1]=35,t.add1=!0,e=19;break;case 12869:Ir(t.c1,18),Ir(t.c1,29),t.move1[t.length1]=18,t.move1[t.length1+1]=29,t.add1=!0,e=34;break;case 735470:t.add1=!1,e=0}nf(t.ct2,pr(t.c1),ai(So(t.c1).ep));let o=ql(t.ct2),l=Vl(t.ct2),i=Xe[o*70+l];return t.c1.value=i+t.length1,t.c1.length1=t.length1,t.c1.add1=t.add1,t.c1.sym=e,++t.p1SolsCnt,t.p1sols.heap.size<500?n=new ni(t.c1):(n=dB(t.p1sols),n.value>t.c1.value&&Pn(n,t.c1)),iB(t.p1sols,n),t.p1SolsCnt===1e4}function rB(t){let e;for(Pn(t.c2,t.c1),e=0;e<t.length2;++e)Ir(t.c2,t.move2[e]);if(!qm(So(t.c2)))return!1;let r=hf(t.e12,So(t.c2));gf(t.ct3,pr(t.c2),r^ai(Ef(t.c2).cp));let n=Ns(t.ct3);En(t.e12,10);let o=Uf(Ff(t.e12));return t.arr2[t.arr2idx]?Pn(t.arr2[t.arr2idx],t.c2):t.arr2[t.arr2idx]=new ni(t.c2),t.arr2[t.arr2idx].value=t.length1+t.length2+Math.max(o,Br[n]),t.arr2[t.arr2idx].length2=t.length2,++t.arr2idx,t.arr2idx===t.arr2.length}function nB(t,e){return Nf(),t.c=new kf(e),eB(t),t.solution}function si(t,e,r,n,o,l){let i,s,u,a,f,g;if(e===0)return n===0&&tB(t,r);for(i=0;i<27;i+=3)if(!(i===o||i===o-9||i===o-18))for(a=0;a<3;++a){if(u=i+a,s=Ql[e][St[r][u]],f=bt[~~s>>>6],f>=n){if(f>n)break;continue}if(g=Sn[r][s&63],s>>>=6,t.move1[l]=u,si(t,s,g,n-1,i,l+1))return!0}return!1}function Gf(t,e,r,n,o,l){let i,s,u,a;if(e===0&&Xe[r]===0)return n===0&&rB(t);for(s=0;s<23;++s){if(li[o][s]){s=wo[s];continue}if(i=Hl[e][s],a=Yl[r][s],u=Xe[i*70+a],u>=n){u>n&&(s=wo[s]);continue}if(t.move2[l]=Nr[s],Gf(t,i,a,n-1,s,l+1))return!0}return!1}function Tf(t,e,r,n,o,l,i){let s,u,a,f,g,L,m,p,B;if(o===0)return e===0&&r===0;for(Uo(t.tempe[i],e),g=0;g<17;++g){if(ii[l][g]){g=Gn[g];continue}if(a=yo[r][g],L=Br[a],L>=o){L>o&&g<14&&(g=Gn[g]);continue}if(f=zn(t.tempe[i].edge,g<<3,10),s=~~(f/20160),p=Cn[s],B=p&7,p>>=3,u=zn(t.tempe[i].edge,g<<3|B,10)%20160,m=Wm(p*20160+u,n),m>=o){m>o&&g<14&&(g=Gn[g]);continue}if(Tf(t,f,a,m,o-1,g,i+1))return t.move3[i]=g,!0}return!1}function If(){let t;for(this.p1sols=new Vf(new zf),this.move1=T(15),this.move2=T(20),this.move3=T(20),this.c1=new ri,this.c2=new ri,this.ct2=new Is,this.ct3=new Os,this.e12=new Yt,this.tempe=T(20),this.arr2=T(100),t=0;t<20;++t)this.tempe[t]=new Yt}function Nf(){Of||(bm(),Un=T(735471),Sm(),hm(),Un=null,ym(),vm(),Cm(),Km(),Qm(),_m(),Of=!0)}function oB(){_f||(_f=!0)}function ai(t){let e,r,n,o;for(o=0,e=0,n=t.length;e<n;++e)for(r=e;r<n;++r)t[e]>t[r]&&(o^=1);return o}function d(t,e,r,n,o,l){let i;switch(l){case 0:i=t[o],t[o]=t[n],t[n]=t[r],t[r]=t[e],t[e]=i;return;case 1:i=t[e],t[e]=t[n],t[n]=i,i=t[r],t[r]=t[o],t[o]=i;return;case 2:i=t[e],t[e]=t[r],t[r]=t[n],t[n]=t[o],t[o]=i;return}}function Wf(){}function Kf(t,e,r,n){let o=new Wf;return o.typeName=t+e,jf(r!==0?-r:0)&&qf(r!==0?-r:0,o),o.modifiers=4,o.superclass=$s,o.componentType=n,o}function Qf(t,e,r,n){let o=new Wf;return o.typeName=t+e,jf(r)&&qf(r,o),o.superclass=n,o}function lB(t){let e=Fo[t.seedId];return t=null,e}function jf(t){return typeof t==\"number\"&&t>0}function qf(t,e){let r;if(e.seedId=t,t===2)r=String.prototype;else if(t>0){let n=lB(e);if(n)r=n.prototype;else{n=Fo[t]=function(){},n.___clazz$=e;return}}else return;r.___clazz$=e}function iB(t,e){if(RB(t,e))return!0}function sB(t){t.array=zs(Hf,mr([Es,ks]),ju,0,0)}function aB(t,e){return Nl(t.array,t.size++,e),!0}function uB(t){t.array=zs(Hf,mr([Es,ks]),ju,0,0),t.size=0}function Rr(t,e){return t.array[e]}function fB(t,e){let r=t.array[e];return mB(t.array,e,1),--t.size,r}function Tn(t,e,r){let n=t.array[e];return Nl(t.array,e,r),n}function gB(t,e){let r;for(e.length<t.size&&(e=pm(e,t.size)),r=0;r<t.size;++r)Nl(e,r,t.array[r]);return e.length>t.size&&Nl(e,t.size,null),e}function LB(){sB(this),this.array.length=500}function mB(t,e,r){t.splice(e,r)}function BB(t,e){let r,n,o,l;for(n=0,r=t.length-1;n<=r;)if(o=n+(~~(r-n)>>1),l=t[o],l<e)n=o+1;else if(l>e)r=o-1;else return o;return-n-1}function ui(t){cB(t,t.length)}function cB(t,e){let r;for(r=0;r<e;++r)t[r]=-1}function pB(t,e){let r,n,o,l,i=t.heap.size,s=Rr(t.heap,e);for(;e*2+1<i&&(r=(n=2*e+1,o=n+1,l=n,o<i&&oi(Rr(t.heap,o),Rr(t.heap,n))<0&&(l=o),l),!(oi(s,Rr(t.heap,r))<0));)Tn(t.heap,e,Rr(t.heap,r)),e=r;Tn(t.heap,e,s)}function RB(t,e){let r,n;for(n=t.heap.size,aB(t.heap,e);n>0;){if(r=n,n=~~((n-1)/2),oi(Rr(t.heap,n),e)<=0)return Tn(t.heap,r,e),!0;Tn(t.heap,r,Rr(t.heap,n))}return Tn(t.heap,n,e),!0}function dB(t){if(t.heap.size===0)return null;let e=Rr(t.heap,0);return DB(t),e}function DB(t){let e=fB(t.heap,t.heap.size-1);0<t.heap.size&&(Tn(t.heap,0,e),pB(t,0))}function FB(t,e){return gB(t.heap,e)}function Vf(t){this.heap=new LB,this.cmp=t}function Xf(){Zf||(Zf=!0,$m(),oB(),Am(),wm(),Em(),Om(),Gm(),jm(),Ym(),Yf=new If)}function yB(){Xf(),Nf()}async function UB(){rt(),Xf();let t=k.fromString(nB(Yf,await at()));return(await yn()).concat(t)}var H,Fo,um,ju,Es,qu,fm,gm,Vu,Lm,mm,Bm,ks,Xu,Cs,Ps,$u,bt,Ql,Ts,Un,jl,bn,St,Sn,rf,Hl,Xe,sf,af,Yl,uf,ff,yo,Lf,Br,_s,Ws,Bf,Bt,Df,js,$l,xt,qs,Vs,Hs,Cn,ei,bf,ti,Sf,wf,Zs,Cf,Mn,li,ii,Nr,Xs,xo,Js,wo,Gn,Pf,Mf,Of,_f,$s,Hf,AB,hB,Yf,Zf,$f=U(()=>{Ae();ws();Qu();nr();Wt();Fo={},um={},ju=0,Es=30,qu=21,fm=22,gm=23,Vu=24,Lm=25,mm=34,Bm=26,ks=40;ut(1,-1,um);H.value=null;ut(73,1,{},Hu);H.queryId$=0;Xu=!1;$u=!1;ut(153,1,mr([qu]),Ao,Kl,ho);Un=null,rf=!1;ut(154,1,{},Is);H.parity=0;ff=!1;ut(155,1,{},Os);H.parity=0;ut(156,1,{},Ks,mf);Bf=!1;ut(157,1,mr([fm]),Zl,cr,df);H.temps=null;Df=!1;ut(158,1,mr([gm]),Yt);H.isStd=!0;H.temp=null;$l=0,Sf=!1;ut(159,1,{},Ys,xf);wf=!1;ut(160,1,mr([Vu,mm]),ri,ni,kf);H.compareTo$=function(e){return Zm(this,e)};H.add1=!1;H.center=null;H.centerAvail=0;H.corner=null;H.cornerAvail=0;H.edge=null;H.edgeAvail=0;H.length1=0;H.length2=0;H.length3=0;H.moveLength=0;H.sym=0;H.value=0;ut(161,1,{},zf);H.compare=function(e,r){return oi(e,r)};Cf=!1;ut(163,1,mr([Bm]),If);H.add1=!1;H.arr2idx=0;H.c=null;H.length1=0;H.length2=0;H.p1SolsCnt=0;H.solution=\"\";Of=!1,_f=!1;H.val$outerIter=null;H.size=0;ut(239,1,{},Vf);H.cmp=null;H.heap=null;$s=Qf(\"java.lang.\",\"Object\",1,null),Hf=Kf(\"[Ljava.lang.\",\"Object;\",356,$s),AB=Qf(\"cs.threephase.\",\"FullCube\",160,$s),hB=Kf(\"[Lcs.threephase.\",\"FullCube;\",381,AB),Zf=!1});var ta={};Ue(ta,{sgsDataFTO:()=>zB});async function zB(){return kB??(kB=CB())}async function CB(){return Ct(await he.fto.kpuzzle(),`SubgroupSizes 24 12 11 12 12 11 10 9 11 8 10 9 7 8 10 10 6 9 8 5 7 6 5 4 4 8 7 3 6 6 360\n\nAlg T\nAlg B\nAlg B T\nAlg B'\nAlg B' T\nAlg U\nAlg U T\nAlg U'\nAlg U' T\nAlg B BL\nAlg B BL T\nAlg B BL'\nAlg B BL' T\nAlg B' BR\nAlg B' BR T\nAlg B' BR'\nAlg B' BR' T\nAlg U R'\nAlg U R' T\nAlg U' L\nAlg U' L T\nAlg B BL' D\nAlg B BL' D T\n\nAlg R\nAlg R'\nAlg R D\nAlg R D'\nAlg R BR\nAlg R BR'\nAlg R' F\nAlg R' L\nAlg R' L'\nAlg B L B'\nAlg U L' U'\n\nAlg B U B'\nAlg B U' B'\nAlg B R B'\nAlg B R' B'\nAlg B' U' B\nAlg B' U B L\nAlg B' U B L'\nAlg B' U' B BL'\nAlg B U' B' BR\nAlg B' R' B F\n\nAlg BR\nAlg BR'\nAlg BR BL\nAlg BR BL'\nAlg BR' F\nAlg BR' F'\nAlg BR' D\nAlg B BR B'\nAlg U F U'\nAlg BR BL L\nAlg BR' D BR'\n\nAlg B' BL B\nAlg B' BL' B\nAlg BR D' BR'\nAlg B' BL B D'\nAlg B' BL B BL\nAlg B' BL B BL'\nAlg B' BL L B\nAlg B' BL' B F'\nAlg B' BL' B L'\nAlg B' BL' B BL'\nAlg B' BL' L BL' B\n\nAlg R' BR R\nAlg R' BR' R\nAlg BR BL' D BR\nAlg R' BR D R\nAlg R' BR D' R\nAlg R' BR R BL\nAlg B' D' BL D B\nAlg BR B D' B' BR'\nAlg BR BL' D BR L'\nAlg BR BL' D BL BR\n\nAlg U BR U'\nAlg U BR' U'\nAlg U' R U\nAlg U' R' U\nAlg U BR B' U'\nAlg U BR' U' D\nAlg U BR' U' D'\nAlg U' R F' U\nAlg U' R' U L'\n\nAlg U B U'\nAlg U B' U'\nAlg U B U' L\nAlg U B U' L'\nAlg U B' U' BL'\nAlg U B U' L F\nAlg U B U' L F'\nAlg U B' U' BL' D'\n\nAlg B BL' L BL B'\nAlg B BL' L' BL B'\nAlg U B' D B U'\nAlg U B' D' B U'\nAlg U R D R' U'\nAlg U R D' R' U'\nAlg R' F L F' R\nAlg R' F L' F' R\nAlg B L' B F' D B\nAlg U B' D' B U' D\n\nAlg F\nAlg F'\nAlg F D\nAlg F D'\nAlg F' L\nAlg F' L'\nAlg F D' BL\n\nAlg F BL F'\nAlg F BL' F'\nAlg BR' BL BR\nAlg BR' BL' BR\nAlg F BR F' BR'\nAlg F BL F' BL'\nAlg F BL' F' L\nAlg F BL' L' F'\nAlg F BR' BL BR F'\n\nAlg F' BL F\nAlg F' BL' F\nAlg U BL U'\nAlg U BL' U'\nAlg F U' F' U\nAlg F' BL F D'\nAlg F' BL F BL'\nAlg F' BL D F\n\nAlg L\nAlg L'\nAlg L BL\nAlg L BL'\nAlg F' D F\nAlg L BL D\n\nAlg L' BL L\nAlg L' BL' L\nAlg L' BL D L\nAlg L' BL D' L\nAlg L' BL L BL'\nAlg L' BL D' L BL\nAlg L' BL D' L BL'\n\nAlg L D L'\nAlg L D' L'\nAlg R' D R\nAlg R' D' R\nAlg L D L' D'\nAlg L R L' R'\nAlg L' B' L B\nAlg R' D R BL\nAlg L BL' L' BL L'\n\nAlg U L' D L U'\nAlg U B D B' U'\nAlg U L' D' L U'\nAlg U B D' B' U'\nAlg R' D' BL' D R\nAlg U B D' B' U' D\nAlg U B' L B L' U'\nAlg U B D B' U' BL'\nAlg U B D' B' L' D' L U'\n\nAlg F L F'\nAlg F L' F'\nAlg F L F' D\nAlg F L F' D'\nAlg F L' F' BL'\n\nAlg L BL' D BL L'\nAlg L BL' D' BL L'\nAlg F D L D' L' F'\nAlg F L D L' D' F'\nAlg F L' B' L B F'\nAlg F' D' R' D R F\nAlg F D L D' L' F' BL'\nAlg F' R' B' R' B R' F\n\nAlg B D B'\nAlg B D' B'\nAlg L' D L\nAlg L' D' L\nAlg B D B' D'\nAlg B' L B L'\nAlg B D B' D' BL\n\nAlg D\nAlg D'\nAlg D BL\nAlg D BL'\n\nAlg D BL' D BL D'\nAlg D BL' D' BL D'\nAlg B D R D' R' B'\nAlg B R D R' D' B'\nAlg D BL' D BL D' BL\nAlg D BL' D BL D' BL'\n\nAlg D BL D BL' D'\nAlg D BL D' BL' D'\nAlg B' BL' B BR D' BR'\nAlg D BL D BL' D' BL\nAlg D BL D BL' D' BL'\n\nAlg D' BL D\nAlg D' BL' D\nAlg D' BL D BL\nAlg D' BL D BL'\n\nAlg B D' B' BL B D B'\nAlg B D' B' BL' B D B'\nAlg D' BL' D BL D' BL D\n\nAlg B R' B' BL B R B'\nAlg B R' B' BL' B R B'\nAlg L R L' BL' L R' L'\n\nAlg F BL' B' BL F' BL' B\nAlg F' R' F BL F' R F\nAlg F' R' F BL' F' R F\nAlg BR R BR' BL' BR R' BR'\nAlg F L' BL U BL' U' L F'\nAlg F' U' F D F' U F D'\nAlg F BL F' D F BL' F' BL D'\n\nAlg F D F U' F' U D' F'\nAlg F D F' BL F BL' D' F'\nAlg F U D BL' U' BL D' F'\nAlg F U' D F U F' D' F'\nAlg F' BR L F BR' F' L' F\nAlg U R BL' F BL F' R' U'\n\nAlg BL\nAlg BL'\n\nAlg F U BL U' BL' F'\nAlg F BL U BL' U' F'\nAlg U BL BR BL' BR' U'\nAlg BR F BL F' BL' BR'\nAlg F U' F' U BL' U BL U'\n\nAlg F U' F' D F U F' D'\nAlg B' U' F U B U' F' U\nAlg D F U' F' D' F U F'\nAlg BR' U BR D' BR' U' BR D\nAlg D' BR BL' F BL' F' BL BR' BL D\n\nAlg D BL D F' U' B L' BL' L R' BR' R L' BL L B' U F D\nAlg B D BR F' R' BR' R B' F D' BL D B BR' D' B'\nAlg L B' BR' L F BR L' B BR' L U F U' BR' F L BL BR'\nAlg L BL' D' BR' B R' U' R BR B' D BL' L'\nAlg B BR B' D' B D B F' R' B' R BR' B' BR F BR' BL\nAlg L' BL D L' D' L' D L' U' R' F' R U D'\nAlg U' L BL L U' D R' BL B' BL F' BL' B R BL' U D' L U\nAlg L BL BR' L U' D R' F' R BL' U BL D' BR L\nAlg D L' R F' R' L BL' BR BL' B' BL B BR' F BL' F' D'\nAlg B BL B BR' L R' U' R BR L' B\nAlg L B' R' BR B F BL D' BL' D BL' B' F' BR' R U B L'\nAlg D' L' BL F' D' BL' D B F' R' BR R B' F' BL' L D\nAlg B D' R D' R' BL BR' B BR' B' BL' D' BR B R' B' R B' BL' D'\nAlg U' L R' F U L' BL' L B BL' B' BL L U' L' F' R L' U\nAlg F' D BL' BR' BL' BR B' U' F L F' U B D F L U BL' U' L'\nAlg L' U BR' U D R' BL F R BL' U D' BR' L' BL' BR' L'\nAlg U' L' U' D R' BL B' BL F BL' B R BL' U D' L' BL' L' U\nAlg D F BL L' BL' B L' B' L' B L' B' L' BL L BL' F' D'\nAlg F' BR' B BL' BR BL B' F L' F' L B BR' B' BR L' F L BL'\nAlg F' L F' L U' D R' F R U D' L' BL' F L' F\nAlg F U' F' BR F' R' BR' U F' L' BL F' D' BL'\nAlg B BR' U R BR' R' BR U' B' BR\nAlg F' BR' B BR' R BR' BL' BR R' BR BL B' BR F\nAlg L' U BL B' U' BL U BL' B BR BL' BR' U' L\nAlg BR BL' BR' BL L' BL BR BL' BR' L\nAlg U BR' U' BR L' BL BR BL' BR' L\nAlg U' L F BL' F' BL F' BR F BR' L' U\nAlg F L F' BL D F' D' F BL' L'\nAlg U BR' U BR L BL BR BL' BR' L' U\nAlg F BR R BL' F' BL' F R' BL BR' BL F'\nAlg D BL D B U BR' D BR' L' U' BR' U BR L D' BR U' B' D\nAlg U BL' U' BL U BL D L' D BR D' L D BR U BR U D\nAlg B' U F U' B' U F' BR' U' B L B' U BR U' B L' B BL\nAlg B U' B BL U' BL L U' D R' F' R U' D' L' BL' U B\nAlg B L R F D' BR' D F' R' BL' U' L U L' U BL L' B'\nAlg D BL D F' BR' F BL' D R' BR' R F D' BL F' BR D\nAlg L' D F' R' U BR L BL B' BL B BL' BR' L' U' R D' L\nAlg F BL' U D L' U' BR R F' R' BR' U L D BL U' D BL F'\nAlg BR' BL' U' L' BL D F' L' F' L F L U L' D' BR L BL\nAlg B' L' BL U D R' F' R U D' L' BL L U BL' L B\nAlg B BL' L U B' L BL' L B' U' B' L' D L' U' B L' B' D'\nAlg B' R' L U L' R BR BL' B BR' B' BL B' BL' B'\nAlg F L R BL B' U' B R' BL' L' BL F' BL BR' BL L BL' BR L'\nAlg B' U' BL L U D R' F R U D' L' BL' U BL' B' U B'\nAlg U BR BL' BR' D' B D' F' D B' D' F BL' U' BL' F' BL' F D'\nAlg D' BL' D L BL L' D' BL D F' D F D' BL' D' BL D\nAlg B' BL' B' BL L' B' BL' F' D F L F' D' F BL' L BL' B L B\nAlg F BL' U D' BL' D' L' U' BR R F R' BR' U L U' D' BL F'\nAlg U' D' B D F' D' BR' D' BR D BR B' BL' D F BL U BL'\nAlg B BL BR D' BR L' R F R' BR' L D BL' BR' BL' B'\nAlg L' F L' U BR' U' BR L F' BR' L U BR U'\nAlg F' BL' D' BR' BL B' U' BL U B BL' BR D F\nAlg F' D' BR' U R' U BL U' R U' BL' BR D F\nAlg F U' BR F' U' BL' B U F BR' R F' U BL L\nAlg B' BL' U' BL U B BL' B BL BR BL' BR' B' BL\nAlg D' F' U BL U' L F U' F' U L' BL' F D\nAlg F' BL' D' BR' BL BR' F' BR U' B' BR' U R' BR' F'\nAlg B' U' B BL' B U' B BL' L U' L BL' L B\nAlg F' D' F U' F U F' BL F' BL' D F\nAlg F' D BR F' R F R' BR' F D'\nAlg D BL D B BR' D L' BL' L' BL' BR' BL L BL L D' BR B' D\nAlg B L BL L' BL' L' D F' R' BR R D' F L' BL' L' B'\nAlg B BL' F' BL BR D' BR' F D' B' D L F' BL' F L D L D' BL\nAlg B D' BR' D' BR' F D' BL' D' BL D BL F' D BR D' B'\nAlg B D' B U B' D B F' BR' F L' F BR F' L U' B BL\nAlg L BL' B' U BL L' BL L U L' BL' L BL' U' B BL' L'\nAlg U D F' D BR BL' BR' BL B D' F D B' D BR BL BR' U'\nAlg F' D BR L' U' R F' R' U BR' L D BR' BL BR D F\nAlg BR' L BL L' BL' BR BL' F BL' L R BL B' U B R' BL' L' F'\nAlg D BL BR D B F' R' U' BR' U R B' F D' BR' D'\nAlg D' B BR' D L' BL' L' BL' BR BL L BL L D' BR B' D' BL' D'\nAlg B U' R B' BL' B R' U' B BL' B' U' BL B' U' L U L'\nAlg B D' B' D' BR' BL BR D' B' L B BR' U B U' BL' BR BL L' BL'\nAlg B D BR' D' F BL' D' BL' D BL D F' BR D BR D B'\nAlg D' B D F' D' BR' D' BR D BR BL BR' BL' BR B' BL' D F\nAlg L BL B' U BL L' BL L U' L' BL' L BL' U' B BL L'\nAlg B' U B' D' B U' B' D BL' U BL' U' BL' B' U BL' U'\nAlg D' BR' B' L' U L' B' U B L U' L B BR D BL\nAlg L' D L' F U' F' L D' L' F U BR F' L F BR' F' L BL'\nAlg D BR D B F' R' U' BR U R B' F D' BR' BL' D'\nAlg BR BL D F BR' BL BR BL' BR F' BR' D' BL' BR'\nAlg BR' U' L' BL F' BL' F L BL' U BL BR\nAlg D' BR' B' U BR U' BL U' BL' U BR' B BR D\nAlg F U BR' U R U' BR B U' F' BL U' L' U BL' B'\nAlg B U' L F BR F' L F' BR' F L U B'\nAlg BR BL F BL' L F' BR' BL' F BL L' BL' F' BL\nAlg U' BR' L BL' BR L U' BR' U L' BL L' U' BR U'\nAlg L' F L' U BR' U' BR L F' L BL' BR BL BR'\nAlg F' D' BR' BL U R' U BL' U' R U' BR D F\nAlg F' BR' B F' U F BR U' BR' B' F BL BR BL'\nAlg L B' U' R' BR B F BL D' BL D BL' B' F' BR' R B L'\nAlg B F BL B L F BR' R' BL U' R BL' BR' F' L' F' BR' B\nAlg U BR F' D F BR' U' L' BL L' BL' L U L B' BL L' B U'\nAlg F' L B F BL B R U' R' B' BL' B' F' L BL L F\nAlg D BL D B BR' D BR' D' BR D BR BL BR' BL' D' B' D\nAlg D' BR' BL B BR B' BL' D BL D' B' BL B BR' BL' BR D\nAlg D F' U BR U' L U' BR' U L' D B D' F D B' D BL\nAlg L B BL' B L F R U' R' F' L' B' BL B' L' BL'\nAlg B D' B U B' D F' BR F L' F BR' F' L B U' B BL\nAlg B' BL L B' L' B' L B' BR' R' U' R BR L'\nAlg D' F' U' B L' BL' L R' BR R L' BL L B' U F D' BL' D'\nAlg B' F' BL' B' F U D' R BR R' BL U' BL' D B'\nAlg F' BL' D BL F BL' D' B' U' B D F' D' B' F U B\nAlg F' L' BL' L' B F BL B R U R' B' BL' B' F' L' F\nAlg L' BL U' D F D' BL' D BL F' BL' D' BL D F' U D' BL L\nAlg B' BR L R' U R BR F L' B' BL' B L F' BR L' B\nAlg B' L B' BR' B L' B' D F' U F D' F U' F' BR B' BL'\nAlg B' BR D' BL' BR' BL B L' R' L' R BR L D L BL BR' B BL\nAlg L' D F' L F L' F D' L' BL' L' D BL' BR' BL' BR BL' D'\nAlg B' F BR F BR L R' BL U R BL' BR L' B' BL' B' F\nAlg F L' F' BR' B BR' F' BR B' BR' F' L F' BR'\nAlg BR' B' BR BL' D' BR D BR' BL B\nAlg L' F L' U BR' U' L U' BR U F' L\nAlg F U' BR' R U' BR BL BR' U' BL' U' R' F' BR U\nAlg B' BR' R' U' BL D' BL U BL' D R BL' BR B\nAlg D BR' U' L BL' F' BL F L' BL U BL' BR D'\nAlg F' BL' D' F BR' BL BR BL' BR F' BR' D BL F\nAlg F' BR' BL' BR D' F' BR F BR' D BL F\nAlg F' BR R' BR BL' BR' R BR' BL F\nAlg B BR F' BR' B' F BL F BL' F'\nAlg B D' B U B' D BL' F R' F BL F' R B F' U' B BL\nAlg L BL' B' U L U L BL L B' BL B' U' BL' U' B' L' BL\nAlg L' BL' U' D F D' BL' D BL F BL' D' BL D F' U D' BL' L\nAlg F' L F' BL' D' BR' B R' U' R BR B' D BL' F L' F\nAlg U D' BR' D BR' U' L U BR L' D' BR D L U' L' BL\nAlg B' BR' B' BL B L F' BR' R' U' R BR F BR L' B\nAlg U' F' D BR' F' BR D L D L' U D' B D' B' F D' BL F\nAlg B F BL B F' L F BR' R' BL U' R BL' BR' F' BR' L' B\nAlg F' D' BL B BR' BL BR BL' BR' D' BR' D BR D F D' B' D\nAlg B' BR' B' BL B L F BR' R' U' R BR F' BR L' B\nAlg L' F BR L' R' BR BL' BR' R BR' BL B' L F' L' B L' BL'\nAlg B' U' BL' U D' BL' D F L' R U R' F' L U' BL U B\nAlg D' B D BL BR BL' BR' D' BR' D BR D' BR B' D' BL' D'\nAlg B' BR' L F' BR' R' U R BR F L' B' BL' B BR B\nAlg L U L' D' BR' D L U' L' U D' BR D BR BL BR' BL' U' BL'\nAlg F' L F' BL D' B BR' R' U R B' BR D BL F L' F\nAlg B' L B' BR' B L' F' R F' BL F R' F BL' B' BR B' BL'\nAlg F' L BL' BR' R' BL U R BR B L' B L B L' F BL' B\nAlg L' F D' BR U' BR' D BR' U BR L' B' L F' L' B L' BL'\nAlg B' BR' L F BR' R' U R BR F' L' B' BL' B BR B\nAlg L F' D' F BR' BL BR BL' BR F' BR' D F L'\nAlg F' BL' D F BL' F' BL D' BR' BL BR F\nAlg B' BR' R' BL D' BL U' BL' D BL' U R BR B\nAlg B' L BL' BR BL L' B' F BL F' BL' B BR' B\nAlg F U' BR' R BR F' U BL L U BL' B U'\nAlg B' BR B' BL F BL' B F' L BL' BR' BL L' B\nAlg U' L BL' U' R U' BL' U R' U BL' L' U\nAlg F U' BR' R' F' BR' F BL BR R BL' F' BR U\nAlg B U' L' F' BR F L' F BR' F' L' U B'\nAlg F' BR' B' F BR' BL' BR F BL B F' BL BR BL'\nAlg B BL' U' L U BL' B' BL' B' L' BL U B' U' BL L BL L\nAlg B R' U' B U R B' BR F D' B' D BL F' BL' BR' BL\nAlg U BL U' B BL U BL U' BL D' B U B' D B U' B\nAlg B BL B BL' B BR B' BL BR' R' L U' L' R B\nAlg U' L BL' B BL B' L' F U B' R U R' U F' U B BL\nAlg F' BL' D' BR' L' B' L B BL BR BL' B' L' B L D BL F BL\nAlg L B' L' F U B' R BR B BR' R' BR BL' BR' BL B U' F' BL\nAlg D' F BL B BR' B BR B' BL' D BL D' B' F' D\nAlg B' L' BL F U F' L' U B U' L F U' F' BL' L BL' B BL B\nAlg D BL D B U F' R' BR' R F U' B' D\nAlg B BR B' D' BL BR D BR D B' BL' B D BR' BL' D' BL' D'\nAlg B' R BR B' BR' R' B U' F' L B L' BL' F BL U BL'\nAlg U BR BL' BR' D' B D' F' D B' BL' BR BL BR' D' F U' D'\nAlg U' D' BR' U' BR' D' L' D BR' D' L D' BL' U' BL' U BL U'\nAlg L' F' BR F' R F' R' L F' BR' D L BL' L' BL D' F BL'\nAlg B D BL' D B U R BR R' U' B' D' BL D' B' BL\nAlg B' U L' U B BL L' F' BL F D' B' U B D B' L B L'\nAlg L BL' B' U L F R U' R' F' U L F' L B L' F\nAlg L' D R' U BR L BL B' BL' B BL' BR' L' U' R F D' L\nAlg D' B U F' R' BR R F U' B' D' BL' D'\nAlg B D BL' B' U' BL L' D L D' BL' U B BL B' D'\nAlg B U' BL' U' F U' B U B' F' U BL U' B U' B\nAlg U BR' U L BL' L U' BR U BR' L' BL BR L' U\nAlg F' D' BR' BL B' U' BL' U B BL' BR D BL F\nAlg B' L' B' F BL' F' BL F' BR F BR' B L B\nAlg F' BL' D' BR F' BR' F D BR' BL BR F\nAlg F D' F' U' F' D' BR D F' D' BR' D' F' U\nAlg BR' BL' U' BL L U' F U F' L' U BR\nAlg F BR R U' BR B U BR' F BR BL' BR D BL F\nAlg F' BR' F U' BL L' U BL' B' F' BL' BR D' BL F\nAlg B' U L' B' U L' D F L F' D' L U' B L U' L B L'\nAlg B BL B L F BR' R' U' R BR F' L' B\nAlg B D' B BR' R' U' B' U R BR U' D' F L' F' U L' D' L\nAlg L U' L' U B BL' U B BL B' U R B' BL B R' U B'\nAlg D F' D BL U' R U' BL' U R' U B D' F D B' D BL\nAlg B BL U B BR' L R' F' U' F R BR L' B' U' B'\nAlg B' U' B F' D F D' B' U B D BL F' BL' D' BL F\nAlg B D BR B F' U' R' BR' R U B' F BR' D' BL B'\nAlg L B' F R BL' U' R' BL B F' L U BR' U' BL L U BR U'\nAlg F' L F' BL L U' D R' F' R U D' L' F L' F\nAlg L U L' F' BL' F L B BL' U BL' U' BL B' BL L U' L\nAlg B' L F BR' R' U R BR F' L' B' BL' B'\nAlg U BR' U' L' U' BR' F' BR F BR D R' F R U D' L' BL' L'\nAlg B L BL L F' D R' BR' R F D' L BL L BL' L' B'\nAlg F' BL' D F' D' B D' B' U' D L D BR' L' F BR D' F U\nAlg B U B BR' L R' F' U F R BR L' B' U' BL' B'\nAlg U B' L BL' B L' U' L' BL L BL' L U BR F' D' F BR' U'\nAlg B BL' D BR B F' U' R' BR R U B' F BR' D' B'\nAlg B BR B F BR' U BL' L R BR' R' L' F' U BR U BL B BL'\nAlg B' BR' L R' U R BR L' B' BL' B'\nAlg B' U BR' R L F' BR' F L' R' BR U' B' BR B'\nAlg F' BL' F' BR R U' BR B F BR BL' D F U BL'\nAlg F' BR' B' U BR' F BR' F' BR U' BR B BR F\nAlg BR' BL' U' BL L' F' BL F BL' L U BR\nAlg U' L BL U' R U' BL U R' U BL L' U\nAlg F BR' F' U' L F BR U F' U' L' BL U BL'\nAlg L' F U' BR' U L' U BR U' L F' L\nAlg F' BR' B' U' BR' U F BR B U' BL U BR BL'\nAlg F' BR' U BR D' BR U' BR' D F\nAlg F BL' BR R BL' F' BL F R' BL BR' F'\nAlg L BL' B BL' U BL U' BL B' L' F' BL F L U' L U L\nAlg B F BL B F' L F' BR' R' BL U' R BL' BR' F BR' L' B\nAlg F BL B' F' BR B' BR' B L F BL B' BR B BL' BR' F' L' B\nAlg B F D' BL U R BL' BR' R' U' D B F' BL B\nAlg L B' U B' BR B BR U' BR' B L' F BL' B F' BR' B' BL'\nAlg U' L R' F L U L' BL' B BL B' L' BL L U' F' R L' U\nAlg BR BL F BL' F' L' F' BR' L B BR B' L' F L B BR' B' BL\nAlg B' BR' L F L' B' BL B L F' BR' R' U' R BR' L' B\nAlg D L U' BR U L U' R BL' F' R' F BL F' BR' U L D BL D\nAlg B F BL B F BR' L R' BL U' R BL' BR' L' F BR' B\nAlg L B' L' U L' B' U L' D F L' F' D' L U' B L U' B\nAlg B' BR L F' BR R' BL U R BL' BR F L' B' F BL' B' F'\nAlg B' BL L B L' B' BL' L' U BL' U R' L' R U' BL U' L B\nAlg B U' D' F D B BL' B' U D' R BR R' U' F' U D B'\nAlg D F L F' L' F R L' BL B L B' BL' L R' F' L D'\nAlg L BL D' B BR' R' U R B' BR D BL L'\nAlg D F D' B' U' B U' D F' D' F U B' U B F' BL'\nAlg D' BR' BL BR B' BL' B D BL' D' BL B BR' B' BL' BR D\nAlg U BR' U' L U R' L R BR L' B' L' B L U' L' BL'\nAlg BR' L R' U R BR B L' B L B L' BL' B\nAlg B BR' B U BR' R L F' BR F L' R' BR U' B\nAlg F' L B' BR' B L BL' L' B' BR B L BL L F\nAlg D F U' F' U D' BR U' D' F U F' D BR'\nAlg B' BL' BR D' BR' D BL BR' B BR\nAlg B BL U' BR' L U BR' F' BL D BL BR F BR\nAlg L' U BR BL BR' B' BL U' BL' U B BL' U' L\nAlg U B' BL U' L' BL' U' F BR' R' BR U F'\nAlg D BR' BL U' BL' L F' BL' F BL L' U BR D'\nAlg BR L' BL BR' BL' L BL' BR BL BR'\nAlg F BL F' BL' B F' BR F BR' B'\nAlg D BR L' U' R F' R' U BR L BL B' BL B BL' BR D'\nAlg D' BL' D BL D F' D' F D' BL' D L BL' L' D' BL D\nAlg B F D' F' U' BL' B U B' BL F D B U' B' U B' F' BL\nAlg B U F' D' R BR' R' U' D B BL B' U F U' B'\nAlg B BL B L B BR' F BR B' BR' R' U' R F' BR L' B\nAlg B BL B L F' U' F' U F BR' R' U' R BR' F BR' L' B\nAlg B' U' B F' D F D' B' U B U' D BL' F' BL D' F U BL\nAlg L F' BR B' F' R BL' U' R' BL B F' BR L BL BR L\nAlg D F' D' BL F' D' F R BL B' L U L' B R' F' BL' D F\nAlg B BL BR BL D' BR L' R F' R' BR' L D BR' BL' B'\nAlg B' L B' BR' B L' BL' U BL U' B' BR B' U BL' U'\nAlg D' B BR' F BL' F' D BR D' BL F' BR B' F D' BL' D'\nAlg B D F' L' R F D BR' D' F' R BR' L D B' BL' D' F D'\nAlg D L BL' F' R U R' B F' L BL' L' B' F' BL L' D'\nAlg B' BR' L F R' U R BR B BR' F' BR B' L' B' BL' B'\nAlg D L F BL F L BL' L D' BL' D' F' D' F' L BL D' BL'\nAlg D F BL F' BR B' BL' B BL BR' BL L' R F R' L D'\nAlg L BL' B' L B L B' L F R U R' B F'\nAlg F' D' BL F R B' L U' L' B R' BL' F' D F BL' D F D'\nAlg B' L' BL U' D' L' BL' L U' D R' F R U' BL' L B\nAlg L' F L' BL U' BL' U L F' L U' BL U BL'\nAlg D' F' BL L U' F U F' L' U BL' U' F D\nAlg B' U F D F' U F D' F U B U' F U\nAlg U B' BR' U R' U' R BR U' B\nAlg F' BL' D F BL F' BR F' BR' F BL' D' BL F\nAlg F' BR' BL' BR D BL' F BL F' D' BL F\nAlg U' F R F' BL' F R' F BL F U\nAlg F' BR F BR' L BL' BR' BL BR L'\nAlg F U' B F U' BR U BR' U F' U' B' U F'\nAlg D F' BR R F' R' F BR' D' F\nAlg B D' B U B' D B U' B BR BL BR' D BL BR BL BR' BL D'\nAlg B' U' L' D' F D' L' F' L D F' D L U B BL'\nAlg D L' F R L' BL B L' B' BL' L R' F' L F L' F' D'\nAlg D L' D' BL D F' D F D' BL' L BL D'\nAlg D' B R U' B' F' BL' L BL L' BL B F U R' BR' B' D\nAlg D L BL' F L BL L' B' F R U' R' B F BL L' D'\nAlg D F' BL F BL U BL F' D B D' F D B' D BR BL BR' U'\nAlg B F' BL B F' BR' F' L F R' U' R BL' BR BL F' L' B\nAlg L F BR B' D BL D' R U' R' D BL' D' B BR' F' L BL L\nAlg B F BL B F' BR' L R' U' R BL' BR BL L' B\nAlg D' B U BR' D BR' L' U' BR U BR L D' BR U' B' D' BL' D'\nAlg F' D' BR' BL' BR D' BR L' U' R F R' U BR' L D' F\nAlg D F U D' BL U' B D' F BR F' D' F' D BR' D B' BL\nAlg B U' D' F D BL' D' BR D' BR' D BL B' BL' B F' U D B'\nAlg L' BL' L' F BR B' D BL D' R U R' D BL' D' B BR' F' L'\nAlg B U F' U' B BL' B' U D' R BR R' D F U' B'\nAlg B L BL' U' L U' L' U R BL F D' BR D F' R' L' B'\nAlg B' L B' BR' B L' F' BL F BL' B' BR B' F U' F' U BL'\nAlg D' B BR R U' B' F' BL' L BL' L' BL B F U R' B' D\nAlg B BL' U' B BL' B D B D' B D B D' BL B' U BL B'\nAlg U BR' U' BR L' F BR' L' U BR U' L F' L\nAlg L' U BR BL BR' B U BR' U' BR B' BL' U' L\nAlg BR BL D BR' BL' L BL' BR BL L' BL D' BL' BR'\nAlg F' BL' D' BR' D BL BR' B U BR U' B' BR F\nAlg F U' F' D F' U' B' U F' U' B U' F' D'\nAlg B' U BR' R' U R U' BR B U'\nAlg L U BL U' BL' L' BL L' F' BL' F BL L BL'\nAlg U B' BL' BR' U F' BR' D' F BR' U BL' L' BL'\nAlg F BL' L' F' BL D' F' BR U' R' F' U F' BR'\nAlg U B U' BL L U' L' U BL' B'\nAlg U BL U' B BR' B U BL' U' BL L B' BR B L' B\nAlg B BL B L F' U' F U F BR' R' U' R BR' F' BR' L' B\nAlg B BR D L' D' F' D F D' F' D' F D' BR' L D' B D B\nAlg F' L B' L' F L' U' F R U R' F' L' U' B BL L'\nAlg B' L' F U F L' F R U' R' U L F R U R' U B F' BL\nAlg B U F' D' F' U R BR' R' U' F D B BL B' F U' B'\nAlg F BL U BL' U' F' BL L U' L D BR L' U L U' BR' U D' L\nAlg B U' D' B' F BL B BL' D' BR D BR' D BL D' F' U D B'\nAlg B BL' D' B' D B BL D BR' BL BR' R D R' BR BL' BR D' B'\nAlg B F U' F' D' F' U' R BL' BR' R' BL U' F D B BL B\nAlg D BR' BL B' BL' B BL' BR' L' U' R F R' U BR' L D'\nAlg B' F' U' F' BL' D' B BR' R' U R B' BR D F U B F\nAlg B' D' B' D BR L' D F' D F D F' D' F D L D' BR' B'\nAlg D' B F D BL' D' BL B BR' B' BR B' BL' F' D\nAlg B D B' F BL L' BL' F' L BL L' BL' BR L R L' R' BR' L' D'\nAlg B U B F' BL' B' D' F' U R BR R' U' F D F U' B'\nAlg BR BL' L' F' BR U F' U' BR L' B' BR' L F' BR L' B L'\nAlg D BL' L' BL D F' D' F D' BL' D L D'\nAlg F' BL' B F U' B U B' D' F' BL' B U' B' BL U F D B'\nAlg B' F' L BL' BR' R' BL U R BR L' B' F BL' B'\nAlg BR BL' BR' BL L' F L' BL' BR BL BR' L F' L\nAlg B BL BR' F U' L F U BR' F BL D BR' BL\nAlg B' BL' B' U BR' U' BR BL' BR BL BR' B BL B\nAlg BR' U' L F U' F' U L' BL' U BL BR\nAlg B U BR R' BR U' B' BR U' B' U BR' R' BR\nAlg B BR BL L BL BR' BL' L U' BL' U BL L BL' B'\nAlg F' BR' B BL' BR' R BR' BL BR R' BR B' BR F\nAlg F' BR' B U BR' U' B' BR BL' D' BR D BL F\nAlg D' F' BR U' R' F' U F' BR' F BL' L' F' BL\nAlg B BL U' L U L' BL' U B' U'\nAlg L' F' R B F' BR L' D' F' D BR' L B' F R' F BL L\nAlg D F BL L' BL' B L B' L B L B' L BL L BL' F' D'\nAlg B BL B BR' L R' U' R BR L' B U BR' U' BR BL' BR BL BR'\nAlg B' F R U' R' F' L' B L' B' L' B BL L'\nAlg B' L' F D R' F' L' U L F R' U D' L' B BL L F' L\nAlg D' L' BL F R' BR' R B' F D' BL D B F BL' L D\nAlg B' BR' R' U' BL' U' L R' F R F' L' R U' BL BR B BL\nAlg BR L BL BR L U' D R' BL F' R BL' U' D' BR U' L\nAlg BR L B' L F R F U F' U' R' L' B L F' BR' L BL\nAlg B F U D' R BL' BR' R' BL U' D B F' BL B\nAlg L' BL L' D B D' BL' B' D' L R' D R BL' U' L U BL'\nAlg L' D BL' U' R' BL F R U D' BR L' BL' BR' L'\nAlg U BR' U' L' BL' U BR U' L' B' F R BL' U R' BL B F' L'\nAlg BR L' BL' L' B' F R BL' U R' BL B F BR F BR L'\nAlg B' F' L F BR BL B' BR' B BL' F' L' B' BR B BR' B F BL'\nAlg B D BR B' D' BL' D B F' R' BR R F BR' D' B'\nAlg D BL' L' BL' L BL L' BL F' BL' L' F L BL F BL' L D'\nAlg U' D R' F R U L D' L D L D' BL' L\nAlg U D' BR D' L' D R F BR F' BR' R' BR' D' L U' D' BL'\nAlg B' F' BR' L R' BL U R BL' BR L' B' F BL' B'\nAlg L' F BL' F' BL F' BR F BR' L\nAlg L BL F' D F D' BL' F L' F'\nAlg F' D' BR U BR' D BR' U' BR F\nAlg BR' L BL' BR BL BR L' F' BR' F\nAlg B BR F BR' B' BR F' R' BR' BL' BR R BR' BL\nAlg BR' B U BR' R BR R' U' BR B'\nAlg F' BL' BR R' BR BL BR' R BR' F\nAlg BR L' BL BR' BL' BR' L U BR U'\nAlg U BR' U' BR BL' BR BL BR'\n`)}var kB,ra=U(()=>{_t();fn();kB=null});var ug={};Ue(ug,{cachedMegaminxKPuzzleWithoutMO:()=>vo,cachedSGSDataMegaminx:()=>OB,sgsDataMegaminx:()=>ag});async function TB(){let t=an(\"megaminx\",{allMoves:!0,addRotations:!0}),e=new Ie(t.getKPuzzleDefinition(!0),{experimentalPGNotation:new xr(t,t.getOrbitsDef(!0))});return e.definition.name=\"megaminx\",e}async function vo(){return IB??(IB=TB())}async function OB(){return NB??(NB=ag())}async function ag(){return Ct(await vo(),`SubgroupSizes 12 5 60 58 60 56 54 57 52 50 54 48 46 51 44 42 48 40 45 38 36 42 34 32 39 30 36 28 26 33 24 30 22 20 27 18 24 16 14 21 12 18 10 15 8 6 2 12 9 3\n\nAlg Rv\nAlg Rv2\nAlg Rv2'\nAlg Rv'\nAlg Lv'\nAlg Lv2\nAlg Lv2'\nAlg Fv\nAlg Fv'\nAlg BRv2\nAlg Lv2 Rv'\n\nAlg Uv\nAlg Uv2\nAlg Uv2'\nAlg Uv'\n\nAlg D\nAlg D2\nAlg D2'\nAlg D'\nAlg B\nAlg B2\nAlg B2'\nAlg B'\nAlg D DL\nAlg D DL2\nAlg D DL2'\nAlg D DL'\nAlg D2 FL\nAlg D2 FL2\nAlg D2 FL2'\nAlg D2 FL'\nAlg D2' FR\nAlg D2' FR2\nAlg D2' FR2'\nAlg D2' FR'\nAlg D' DR\nAlg D' DR2\nAlg D' DR2'\nAlg D' DR'\nAlg B DR\nAlg B DR2'\nAlg B DR'\nAlg B2 BR2\nAlg B2 BR2'\nAlg B2 BR'\nAlg B2' BL\nAlg B2' BL2\nAlg B2' BL2'\nAlg B' DL\nAlg B' DL2\nAlg B' DL'\nAlg D DL B\nAlg D DL B2'\nAlg D DL B'\nAlg D DL2' L\nAlg D DL2' L2\nAlg D DL2' L2'\nAlg D DL' FL\nAlg D DL' FL2\nAlg D DL' FL'\nAlg D2 FL2' F\nAlg D2 FL2' F2\nAlg D2 FL2' F2'\nAlg D2 FL' FR\nAlg D2 FL' FR2\nAlg D2 FL' FR'\nAlg D2' FR2' R\nAlg D2' FR2' R2\nAlg D2' FR2' R2'\nAlg B DR2' R2'\nAlg B DR' BR2\nAlg B2 BR' BL\nAlg B2' BL2' L\nAlg D DL2' L2' F\nAlg DL\nAlg DL2\nAlg DL2'\nAlg DL'\nAlg DL BL\nAlg DL BL2\nAlg DL BL2'\nAlg DL BL'\nAlg DL2 L\nAlg DL2 L2\nAlg DL2 L2'\nAlg DL2 L'\nAlg DL2' FL\nAlg DL2' FL2\nAlg DL2' FL2'\nAlg DL2' FL'\nAlg D B D'\nAlg D B2 D'\nAlg D B2' D'\nAlg D B' D'\nAlg D2 B D2'\nAlg D2 DL' D2'\nAlg D2' DL' D2\nAlg D' B D\nAlg D' DL' D\nAlg B2 DR2 B2'\nAlg B2 DR2' B2'\nAlg B2 DR' B2'\nAlg B2' BR B2\nAlg B2' BR2 B2\nAlg B2' BR2' B2\nAlg B' BL B\nAlg B' BL2 B\nAlg B' BL' B\nAlg DL BL2' U\nAlg DL BL2' U2\nAlg DL BL2' U2'\nAlg DL BL' L\nAlg DL BL' L2\nAlg DL BL' L'\nAlg DL2 L2' F\nAlg DL2 L2' F2\nAlg DL2 L2' F2'\nAlg DL2 L' FL\nAlg DL2 L' FL2\nAlg DL2 L' FL'\nAlg DL2' FL2' FR\nAlg DL2' FL2' FR2\nAlg DL2' FL2' FR2'\nAlg D B D' DR2\nAlg D B D' DR'\nAlg D2 B D2' FR2'\nAlg D' B D DL\nAlg B2 DR' B2' BR\nAlg B2 DR' B2' BR'\nAlg B2' BR2' B2 U\nAlg DL BL2' U2' F\nAlg D FL D'\nAlg D FL2 D'\nAlg D FL2' D'\nAlg D FL' D'\nAlg D2 FR D2'\nAlg D2 FR2 D2'\nAlg D2 FR2' D2'\nAlg D2' DR D2\nAlg D2' DR2 D2\nAlg D2' DR2' D2\nAlg DL2 BL DL2'\nAlg DL2 BL2 DL2'\nAlg DL2 BL2' DL2'\nAlg DL2 BL' DL2'\nAlg DL2' L2 DL2\nAlg DL2' L2' DL2\nAlg DL' FL2 DL\nAlg DL' FL' DL\nAlg D FL D' FL2'\nAlg D FL L D'\nAlg D FL L2 D'\nAlg D FL L2' D'\nAlg D FL2 F D'\nAlg D FL2 F2 D'\nAlg D FL2 F2' D'\nAlg D FL2 L D'\nAlg D FL2 L2 D'\nAlg D FL2' D' FR\nAlg D FL2' D' FR2\nAlg D FL2' D' FR2'\nAlg D FL2' F D'\nAlg D FL2' F2' D'\nAlg D FL2' FR2' D'\nAlg D FL2' FR' D'\nAlg D FL' D' FL\nAlg D FL' FR D'\nAlg D2 FR D2' FR2'\nAlg D2 FR2 R D2'\nAlg D2 FR2 R2 D2'\nAlg D2 FR2 R2' D2'\nAlg D2 FR2' D2' DR\nAlg D2 FR2' D2' DR2\nAlg D2 FR2' D2' DR2'\nAlg D2 FR2' D2' DR'\nAlg D2 FR2' R2' D2'\nAlg D2 FR' DR2' D2'\nAlg D2' DR D2 DR2'\nAlg D2' DR2 BR D2\nAlg D2' DR2 BR2' D2\nAlg D2' DR2' BR2' D2\nAlg D2' DR2' BR' D2\nAlg DL2 BL2 DL2' BL'\nAlg DL2 BL2 DL2' BR'\nAlg DL2 BL' DL2' L'\nAlg DL2' L2 DL2 BL2\nAlg D FL L2 BL2 D'\nAlg D FL L' FL2' D'\nAlg D FL2 L FL' D'\nAlg D FL2' D' FR2 DR2'\nAlg B DL B'\nAlg B DL2 B'\nAlg B DL2' B'\nAlg B DL' B'\nAlg B2 D B2'\nAlg B2 D2 B2'\nAlg B2 D2' B2'\nAlg B2 D' B2'\nAlg B2 DL B2'\nAlg B2' D' B2\nAlg B2' DL B2\nAlg B' D' B\nAlg B DL B' BL\nAlg B DL B' BL2\nAlg B DL B' BL2'\nAlg B DL B' BL'\nAlg B DL2 B' BL2\nAlg B DL2 B' BL2'\nAlg B DL2 B' BL'\nAlg B DL2' L2 B'\nAlg B DL2' L2' B'\nAlg B DL2' L' B'\nAlg B DL' FL B'\nAlg B DL' FL2 B'\nAlg B DL' FL2' B'\nAlg B DL' FL' B'\nAlg B2 D FL B2'\nAlg B2 D FL2' B2'\nAlg B2 D FL' B2'\nAlg B2 D2 FR2 B2'\nAlg B2 D2 FR2' B2'\nAlg B2 D2 FR' B2'\nAlg B2 D2' B2' DR\nAlg B2 D2' B2' DR2\nAlg B2 D2' B2' DR2'\nAlg B2 DL B2' BR\nAlg B2 DL B2' BR2\nAlg B2 DL B2' BR2'\nAlg B2' D' B2 BR2\nAlg B2' D' B2 BR2'\nAlg B' D' B DR\nAlg B' D' B DR2'\nAlg D FL' D FR D2'\nAlg D DL FL DL' D'\nAlg D2' FR DR FR' D2\nAlg B DL B D B2'\nAlg B DL B D2' B2'\nAlg B DL B' BL2 U2\nAlg B DL B' BL2 U2'\nAlg B DL B' BL2 U'\nAlg B DL2 B' BL2' U2\nAlg B DL2 B' BL2' U2'\nAlg B DL2 B' BL' L2\nAlg B DL2' L2' B' F2\nAlg B2 D FL2' B2' F2'\nAlg DR\nAlg DR2\nAlg DR2'\nAlg DR'\nAlg DR2 FR\nAlg DR2 FR2\nAlg DR2 FR2'\nAlg DR2 FR'\nAlg DR2' R\nAlg DR2' R2\nAlg DR2' R2'\nAlg DR2' R'\nAlg DR' BR\nAlg DR' BR2\nAlg DR' BR2'\nAlg DR' BR'\nAlg D DR D'\nAlg D2 DR D2'\nAlg B BR B'\nAlg B BR2' B'\nAlg B BR' B'\nAlg B2 BL2 B2'\nAlg B2 BL2' B2'\nAlg B2 BL' B2'\nAlg DR2 FR2 FL2\nAlg DR2 FR2 FL2'\nAlg DR2 FR2 FL'\nAlg DR2 FR2' F\nAlg DR2 FR2' F2\nAlg DR2 FR2' F2'\nAlg DR2 FR' R\nAlg DR2 FR' R2\nAlg DR2 FR' R'\nAlg DR2' R FR\nAlg DR2' R FR2'\nAlg DR2' R FR'\nAlg DR2' R2' U\nAlg DR2' R2' U2\nAlg DR2' R2' U2'\nAlg DR2' R' BR2'\nAlg DR' BR2' BL'\nAlg D DR2 FR D'\nAlg B BR B' DR\nAlg B BR B' DR2\nAlg B BR2' B' U2'\nAlg B BR' B' BL2\nAlg B BR' B' BL2'\nAlg B BR' B' BL'\nAlg B2 BL2' L' B2'\nAlg DR2 FR2 FL' F\nAlg DR2 FR2' F FL2'\nAlg DR2 FR2' F FL'\nAlg B BR2' U2' L2' B'\nAlg D2' FL D2\nAlg D2' FL2 D2\nAlg D2' FL2' D2\nAlg D2' FL' D2\nAlg D' FR2 D\nAlg D' FR2' D\nAlg D' FR' D\nAlg DR FR DR'\nAlg DR FR2' DR'\nAlg DR FR' DR'\nAlg DR2 R2 DR2'\nAlg DR2 R2' DR2'\nAlg DR2' BR DR2\nAlg DR2' BR2 DR2\nAlg DR2' BR2' DR2\nAlg D DR2 D' DR2'\nAlg D DR2' D' DR2\nAlg D2' FL D2 FR'\nAlg D2' FL2 D2 FL2'\nAlg D2' FL2 D2 FL'\nAlg D2' FL2 L D2\nAlg D2' FL2 L2 D2\nAlg D2' FL2 L2' D2\nAlg D2' FL2 L' D2\nAlg D2' FL2' F D2\nAlg D2' FL2' F2 D2\nAlg D2' FL2' F2' D2\nAlg D2' FL2' L D2\nAlg D2' FL2' L2 D2\nAlg D2' FL2' L2' D2\nAlg D2' FL2' L' D2\nAlg D2' FL' F D2\nAlg D2' FL' F2' D2\nAlg D' FR FL' D\nAlg D' FR2 D FR'\nAlg D' FR2 D FL2\nAlg D' FR2 D FL2'\nAlg D' FR2 FL D\nAlg D' FR2' R2' D\nAlg D' FR' R2' D\nAlg DR2 R2 DR2' U2'\nAlg DR2 R2' DR2' BR\nAlg DR2 R2' DR2' BR2\nAlg DR2 R2' DR2' BR2'\nAlg DR2 R2' DR2' BR'\nAlg DR2 R' BR2' DR2'\nAlg DR2' BR DR2 BR2'\nAlg DR2' BR2 BL DR2\nAlg DR2' BR2 BL2' DR2\nAlg DR2' BR2' BL' DR2\nAlg D B2' BL2' B2 D'\nAlg D2 B2 DL2 B2' D2'\nAlg D2' FL2 L' FL2 D2\nAlg D2' FL2' L D2 FL'\nAlg D2' FL2' L FL2' D2\nAlg D2' FL2' L2' BL2 D2\nAlg B2' DR B2\nAlg B2' DR2 B2\nAlg B2' DR2' B2\nAlg B2' DR' B2\nAlg B' DR' B\nAlg B2' DR FR B2\nAlg B2' DR FR2 B2\nAlg B2' DR FR2' B2\nAlg B2' DR FR' B2\nAlg B2' DR2 R B2\nAlg B2' DR2 R2 B2\nAlg B2' DR2 R2' B2\nAlg B2' DR2 R' B2\nAlg B2' DR2' B2 BR\nAlg B2' DR2' B2 BR2\nAlg B2' DR2' B2 BR2'\nAlg B2' DR2' B2 BR'\nAlg B2' DR' B2 BL2\nAlg B2' DR' B2 BL2'\nAlg B2' DR' B2 BL'\nAlg B' DR2' BR' B\nAlg B' DR' B BR\nAlg B' DR' B BR2'\nAlg B' DR' B BR'\nAlg D2' FR2' FL FR2 D2\nAlg D2' FR2' FL2 FR2 D2\nAlg D2' FR2' FL2' FR2 D2\nAlg D' DR2' FR DR2 D\nAlg D' DR2' FR2 DR2 D\nAlg D' DR' FR' DR D\nAlg D' FR D' FL' D2\nAlg B2 D2 DL2 D2' B2'\nAlg B2 D2 DL2' D2' B2'\nAlg B2 D2 DL' D2' B2'\nAlg B2 D' FR' D B2'\nAlg B2 DL D2' DL' B2'\nAlg B2 DL D' DL' B2'\nAlg B2' DR FR2' B2 F2\nAlg B2' DR FR2' B2 F2'\nAlg B2' DR FR' R B2\nAlg B2' DR FR' R2 B2\nAlg B2' DR2 R2' B2 U\nAlg B2' DR2 R2' B2 U2\nAlg B2' DR2 R2' B2 U2'\nAlg B2' DR' B2 BL2 U'\nAlg B' DR2' BR' B BL2'\nAlg DR D FR D' DR'\nAlg DL2' B D B' DL2\nAlg D2' FR2' FL2' FR2 F D2\nAlg D' DR2' FR DR2 D FL2'\nAlg B2 D B D' DR B2\nAlg FR\nAlg FR2\nAlg FR2'\nAlg FR'\nAlg FR2 FL\nAlg FR2 FL2\nAlg FR2 FL2'\nAlg FR2 FL'\nAlg FR2' F\nAlg FR2' F2\nAlg FR2' F2'\nAlg FR2' F'\nAlg FR' R\nAlg FR' R2\nAlg FR' R2'\nAlg FR' R'\nAlg D FR D'\nAlg DR R DR'\nAlg DR R2' DR'\nAlg DR R' DR'\nAlg DR2 BR2 DR2'\nAlg DR2 BR2' DR2'\nAlg DR2 BR' DR2'\nAlg FR2 FL2' L\nAlg FR2 FL2' L2\nAlg FR2 FL2' L2'\nAlg FR2 FL' F\nAlg FR2 FL' F2\nAlg FR2 FL' F'\nAlg FR2' F FL\nAlg FR2' F FL2'\nAlg FR2' F FL'\nAlg FR2' F2' U\nAlg FR2' F2' U2\nAlg FR2' F2' U2'\nAlg FR2' F' R2'\nAlg FR' R2' BR'\nAlg DR R DR' FR\nAlg DR R DR' FR2\nAlg DR R2' DR' U2'\nAlg DR R' DR' BR2\nAlg DR R' DR' BR2'\nAlg DR R' DR' BR'\nAlg DR2 BR2' BL2' DR2'\nAlg DR2 BR2' BL' DR2'\nAlg FR2 FL' F L2\nAlg FR2 FL' F L2'\nAlg B' DR2 BR' DR2' B\nAlg DR R2' U2' BL2 DR'\nAlg D' FL D\nAlg D' FL2 D\nAlg D' FL2' D\nAlg D' FL' D\nAlg FR FL FR'\nAlg FR FL2 FR'\nAlg FR FL2' FR'\nAlg FR FL' FR'\nAlg FR2 F2 FR2'\nAlg FR2 F2' FR2'\nAlg FR2' R FR2\nAlg FR2' R2 FR2\nAlg FR2' R2' FR2\nAlg D FR2 D' FR2'\nAlg D FR2' D' FR2\nAlg D' FL D FL'\nAlg D' FL2 D FL'\nAlg D' FL2 L D\nAlg D' FL2 L2 D\nAlg D' FL2 L2' D\nAlg D' FL2 L' D\nAlg D' FL2' F2' D\nAlg D' FL2' L2 D\nAlg D' FL2' L2' D\nAlg D' FL2' L' D\nAlg D' FL' F2' D\nAlg FR FL2' F' FR'\nAlg FR FL2' FR' L\nAlg FR FL2' FR' L2\nAlg FR FL2' FR' L2'\nAlg FR2 F2 FR2' U2\nAlg FR2 F2 FR2' U2'\nAlg FR2 F2' FR2' U2'\nAlg FR2 F2' FR2' R\nAlg FR2 F2' FR2' R2\nAlg FR2 F2' FR2' R2'\nAlg FR2 F2' FR2' R'\nAlg FR2 F' R2' FR2'\nAlg FR2' R FR2 R2'\nAlg FR2' R2 BR FR2\nAlg FR2' R2 BR2 FR2\nAlg FR2' R2 BR2' FR2\nAlg FR2' R2' BR2' FR2\nAlg FR2' R2' BR' FR2\nAlg D DR2' BR2' DR2 D'\nAlg D FR2' D' FR2 FL2\nAlg D2' B DL B' D2\nAlg D2' B2' D' B2 D2'\nAlg D' FL2 L BL D\nAlg D' FL2 L' FL2 D\nAlg D' FL2' F2' R' D\nAlg D' FL2' L FL2' D\nAlg D' FL2' L2' BL2 D\nAlg DR2' FR DR2\nAlg DR2' FR2 DR2\nAlg DR2' FR2' DR2\nAlg DR2' FR' DR2\nAlg DR' FR' DR\nAlg DR2' FR FL DR2\nAlg DR2' FR FL2 DR2\nAlg DR2' FR FL2' DR2\nAlg DR2' FR FL' DR2\nAlg DR2' FR2 DR2 F\nAlg DR2' FR2 DR2 F2\nAlg DR2' FR2 DR2 F2'\nAlg DR2' FR2 DR2 F'\nAlg DR2' FR2' DR2 R\nAlg DR2' FR2' DR2 R2\nAlg DR2' FR2' DR2 R2'\nAlg DR2' FR2' DR2 R'\nAlg DR2' FR' DR2 BR2\nAlg DR2' FR' DR2 BR2'\nAlg DR2' FR' DR2 BR'\nAlg DR' FR2' R' DR\nAlg DR' FR' DR R\nAlg DR' FR' DR R2'\nAlg DR' FR' DR R'\nAlg D' FR2' FL FR2 D\nAlg D' FR2' FL2 FR2 D\nAlg D' FR' FL' FR D\nAlg B2' DR2 FR' DR2' B2\nAlg B' DR2 FR' DR2' B\nAlg DR2 D' FL' D DR2'\nAlg DR2' FR FL2' DR2 L\nAlg DR2' FR FL2' DR2 L2\nAlg DR2' FR FL2' DR2 L2'\nAlg DR2' FR FL' DR2 F\nAlg DR2' FR FL' DR2 F2\nAlg DR2' FR2 F FL2 DR2\nAlg DR2' FR2 DR2 F2' U\nAlg DR2' FR2 DR2 F2' U2\nAlg DR2' FR2 DR2 F2' U2'\nAlg DR2' FR' DR2 BR2 U'\nAlg DR2' FR' DR2 BR2' BL2'\nAlg DR' FR2' R' DR BR2'\nAlg D' FR2' FL2 FR2 L D\nAlg D' FR2' FL2 FR2 L2 D\nAlg B2' DR2' FR2' R' DR2 B2\nAlg DR2 D DR D' FR DR2\nAlg DR2' FR' DR2 BR2 U' BL2\nAlg FL\nAlg FL2\nAlg FL2'\nAlg FL'\nAlg FL L\nAlg FL L2\nAlg FL L2'\nAlg FL L'\nAlg FL2 F\nAlg FL2 F2\nAlg FL2 F2'\nAlg FL2 F'\nAlg FR2' FL2' FR2\nAlg FR' FL2' FR\nAlg FL L2 BL\nAlg FL L2 BL2\nAlg FL L2 BL2'\nAlg FL L2 BL'\nAlg FL L2' U\nAlg FL L2' U2\nAlg FL L2' U2'\nAlg FL L' F\nAlg FL L' F2\nAlg FL L' F'\nAlg FL2 F L\nAlg FL2 F L2\nAlg FL2 F L2'\nAlg FL2 F L'\nAlg FL2 F2' R\nAlg FL2 F2' R2\nAlg FL2 F2' R2'\nAlg FR' FL2 F' FR\nAlg FL L2 BL2' BR\nAlg FL L2 BL2' BR2\nAlg FL L2 BL' U\nAlg FL L2' U BL2\nAlg FL L2' U BL2'\nAlg FL L2' U BL'\nAlg FL L2' U2' R\nAlg FL L2' U2' R2\nAlg FL L' F' FL\nAlg FL L' F' FL2\nAlg FL L' F' FL2'\nAlg B DL2' BL DL2 B'\nAlg FL L2 BL' U BR2'\nAlg FL2 L FL2'\nAlg FL2 L2 FL2'\nAlg FL2 L2' FL2'\nAlg FL2 L' FL2'\nAlg FL2' F2 FL2\nAlg FL2' F2' FL2\nAlg FL2' F' FL2\nAlg FR2' FL' FR2 FL\nAlg FL2 L2 FL2' L2'\nAlg FL2 L2 FL2' L'\nAlg FL2 L2 FL2' BL\nAlg FL2 L2 FL2' BL2\nAlg FL2 L2 FL2' BL2'\nAlg FL2 L2 FL2' BL'\nAlg FL2 L2' FL2' U\nAlg FL2 L2' FL2' U2\nAlg FL2 L2' FL2' U2'\nAlg FL2 L2' FL2' BL\nAlg FL2 L2' FL2' BL2\nAlg FL2 L2' FL2' BL2'\nAlg FL2 L2' FL2' BL'\nAlg FL2 L' FL2' U\nAlg FL2 L' FL2' U2'\nAlg FL2 L' FL2' F\nAlg FL2 L' FL2' F2\nAlg FL2 L' FL2' F2'\nAlg FL2 L' FL2' F'\nAlg FL2' F L FL2\nAlg FL2' F L' FL2\nAlg FL2' F2 L FL2\nAlg FL2' F2 L2 FL2\nAlg FL2' F2 L2' FL2\nAlg FL2' F2 FL2 F'\nAlg FL2' F2 FL2 L2\nAlg FL2' F2' R FL2\nAlg FL2' F2' R2 FL2\nAlg FL2' F2' R2' FL2\nAlg FL2' F' R2' FL2\nAlg FL2' F' R' FL2\nAlg FL' FR2' FL FR2\nAlg D DR2' FR2' DR2 D'\nAlg D FR2' R' FR2 D'\nAlg D' DL2 BL2 DL2' D\nAlg B2 D2' B D2 B2\nAlg DR2 D2 DR D2' DR2\nAlg FR2 D FR D' FR2\nAlg FL2 L2 BL' L2 FL2'\nAlg FL2 L2 FL2' BL2 BR\nAlg FL2 L2' BL L2' FL2'\nAlg FL2 L2' FL2' BL L'\nAlg DL FL DL'\nAlg DL FL2 DL'\nAlg DL FL2' DL'\nAlg DL FL' DL'\nAlg DL2 FL DL2'\nAlg DL FL DL' L\nAlg DL FL DL' L2\nAlg DL FL DL' L2'\nAlg DL FL DL' L'\nAlg DL FL2 L DL'\nAlg DL FL2 L2 DL'\nAlg DL FL2 L2' DL'\nAlg DL FL2 L' DL'\nAlg DL FL2 DL' L\nAlg DL FL2' DL' F2\nAlg DL FL2' DL' F2'\nAlg DL FL2' DL' F'\nAlg DL2 FL DL2' BL\nAlg DL2 FL DL2' BL2\nAlg DL2 FL DL2' BL2'\nAlg B DL2' FL DL2 B'\nAlg B2 DL2' FL DL2 B2'\nAlg FL2 F2 L' F2' FL2'\nAlg FL2 F2' L' F2 FL2'\nAlg FL2 F' L' F FL2'\nAlg FL2' FR2' FL FR2 FL2\nAlg FL2' FR' F' FR FL2\nAlg DL FL DL' L BL2'\nAlg DL FL DL' L BL'\nAlg DL FL DL' L2 U2\nAlg DL FL DL' L2 U2'\nAlg DL FL2 L2' DL' U2\nAlg DL FL2 L2' DL' U2'\nAlg DL FL2 L' DL' F'\nAlg DL FL2' DL' F2' R2\nAlg DL FL2' DL' F2' R2'\nAlg DL2 FL DL2' BL2 BR2\nAlg B DL2 FL DL2' BL B'\nAlg FL2 F2' L' F2 R2 FL2'\nAlg FL2 F2' L' F2 R2' FL2'\nAlg FL2' FR' F FR L FL2\nAlg DL FL DL' L BL2' BR2\nAlg DL FL2 L DL FL' DL2'\nAlg FR F FR'\nAlg FR F2 FR'\nAlg FR F2' FR'\nAlg FR F' FR'\nAlg FR2 R FR2'\nAlg FR2 R2 FR2'\nAlg FR2 R2' FR2'\nAlg FR2 R' FR2'\nAlg FL2' L FL2\nAlg FL2' L2 FL2\nAlg FL2' L2' FL2\nAlg FL' F FL\nAlg FL' F2 FL\nAlg FL' F' FL\nAlg FR F FR' F'\nAlg FR F2 FR' L\nAlg FR F2' FR' U\nAlg FR F2' FR' U2\nAlg FR F2' FR' U2'\nAlg FR F' FR' R\nAlg FR F' FR' R2\nAlg FR F' FR' R2'\nAlg FR F' FR' R'\nAlg FR2 R FR2' F2\nAlg FR2 R FR2' R'\nAlg FR2 R2' BR FR2'\nAlg FR2 R2' BR2 FR2'\nAlg FR2 R2' BR2' FR2'\nAlg FR2 R2' BR' FR2'\nAlg FL2' L2 FL2 BL\nAlg FL2' L2 FL2 BL2\nAlg FL2' L2' FL2 U\nAlg FL' F L2 FL\nAlg FL' F L2' FL\nAlg FL' F FL L\nAlg DR' FR2 R' FR2' DR\nAlg FR F2' U2' BR FR'\nAlg FR F2' U2' BR2 FR'\nAlg FR F' FR R' FR2'\nAlg FL2' L2' FL2 U BL2\nAlg FL2' L2' FL2 U BL2'\nAlg FR F L F' FR'\nAlg FR F L2 F' FR'\nAlg FR F L2' F' FR'\nAlg FR F L' F' FR'\nAlg FR F2 U F2' FR'\nAlg FR F2 U2 F2' FR'\nAlg FR F2 U2' F2' FR'\nAlg FR F2' R F2 FR'\nAlg FR F2' R2 F2 FR'\nAlg FR F2' R2' F2 FR'\nAlg FR FL' L FL FR'\nAlg FR FL' L2 FL FR'\nAlg FR FL' L' FL FR'\nAlg FR2 F2' L F2 FR2'\nAlg FR2 F2' L2 F2 FR2'\nAlg FR2 F' U2 F FR2'\nAlg FR2 F' U2' F FR2'\nAlg FR2 R U R' FR2'\nAlg FR2 R U' R' FR2'\nAlg FR2 R2 BR2 R2' FR2'\nAlg FR2 R2 BR2' R2' FR2'\nAlg FR2' DR BR DR' FR2\nAlg FR2' R2' U R2 FR2\nAlg FR2' R2' U2 R2 FR2\nAlg FR2' R' BR2 R FR2\nAlg FR2' R' BR2' R FR2\nAlg FR2' R' BR' R FR2\nAlg FL2 L BL L' FL2'\nAlg FL2 L2 U2' L2' FL2'\nAlg FL2 DL' BL2 DL FL2'\nAlg FL2' F2 R2' F2' FL2\nAlg FL2' L2' BL2 L2 FL2\nAlg FL' F2 L F2' FL\nAlg FL' F2 L2 F2' FL\nAlg FL' F' R' F FL\nAlg FL' FR R' FR' FL\nAlg FR F L2' F' FR' BL\nAlg FR F L2' F' FR' BL2\nAlg FR F L' F' FR' F'\nAlg FR F2 U2 BR2 F2' FR'\nAlg FR F2 U2 BR2' F2' FR'\nAlg FR F2' R F2 R2' FR'\nAlg FR F2' R2' F2 FR' R'\nAlg FR FL' L FL FR' F'\nAlg FR2 F' U2 F FR2' L2'\nAlg FR F L2 BL' L2 F' FR'\nAlg FR F L2' F U' F2' FR'\nAlg R\nAlg R2\nAlg R2'\nAlg R'\nAlg R2 F\nAlg R2 F2\nAlg R2 F2'\nAlg R2 F'\nAlg R2' U\nAlg R2' U2\nAlg R2' U2'\nAlg R2' U'\nAlg R' BR\nAlg R' BR2\nAlg R' BR2'\nAlg R' BR'\nAlg DR BR DR'\nAlg DR BR2' DR'\nAlg DR BR' DR'\nAlg FR R FR'\nAlg R2 F2' L\nAlg R2 F2' L2\nAlg R2 F2' L2'\nAlg R2 F' U\nAlg R2 F' U2\nAlg R2 F' U'\nAlg R2' U F\nAlg R2' U F2'\nAlg R2' U F'\nAlg R2' U2' BL\nAlg R2' U2' BL2\nAlg R2' U2' BL2'\nAlg R2' U' BR2'\nAlg DR BR DR' R\nAlg DR BR DR' R2\nAlg DR BR2' BL2' DR'\nAlg DR BR2' BL' DR'\nAlg R2 F' U L2\nAlg R2 F' U L2'\nAlg FR' F FR\nAlg FR' F2 FR\nAlg FR' F2' FR\nAlg FR' F' FR\nAlg R F R'\nAlg R F2 R'\nAlg R F2' R'\nAlg R F' R'\nAlg R2 U2 R2'\nAlg R2 U2' R2'\nAlg R2' BR R2\nAlg R2' BR2 R2\nAlg R2' BR2' R2\nAlg FR R2 FR' R2'\nAlg FR R2' FR' R2\nAlg FR' F FR F'\nAlg FR' F2 FR F'\nAlg FR' F2 FR L\nAlg FR' F2 FR L2\nAlg FR' F2 FR L2'\nAlg FR' F2 FR L'\nAlg FR' F2' FR U2'\nAlg FR' F2' FR L2\nAlg FR' F2' FR L2'\nAlg FR' F2' FR L'\nAlg FR' F' FR U2'\nAlg R F2' U' R'\nAlg R F2' R' L\nAlg R F2' R' L2\nAlg R F2' R' L2'\nAlg R2 U2 R2' BL2\nAlg R2 U2 R2' BL2'\nAlg R2 U2' BR R2'\nAlg R2 U2' BR2 R2'\nAlg R2 U2' R2' BL2'\nAlg R2 U2' R2' BR2'\nAlg R2 U2' R2' BR'\nAlg R2 U' BR2' R2'\nAlg R2' BR R2 BR2'\nAlg DR BR2 BL2' BR2' DR'\nAlg FR R2' FR' R2 F2\nAlg FR' F2 L' F2 FR\nAlg FR' F2' U2' BR' FR\nAlg FR' F2' L F2' FR\nAlg DR' R DR\nAlg DR' R2 DR\nAlg DR' R2' DR\nAlg DR' R' DR\nAlg DR' R DR F\nAlg DR' R DR F2\nAlg DR' R DR F2'\nAlg DR' R DR F'\nAlg DR' R2 DR U\nAlg DR' R2 DR U2\nAlg DR' R2 DR U2'\nAlg DR' R2 DR U'\nAlg DR' R2' DR BR\nAlg DR' R2' DR BR2\nAlg DR' R2' DR BR2'\nAlg DR' R2' DR BR'\nAlg DR' R' DR BR\nAlg DR' R' DR BR2'\nAlg DR' R' DR BR'\nAlg B2' DR2' R' DR2 B2\nAlg DR2' FR' F FR DR2\nAlg DR2' FR' F2 FR DR2\nAlg DR2' FR' F' FR DR2\nAlg DR' R DR F2' L\nAlg DR' R DR F2' L2\nAlg DR' R DR F2' L2'\nAlg DR' R DR F' U\nAlg DR' R DR F' U2\nAlg DR' R DR F' U'\nAlg DR' R2 U2' BL DR\nAlg DR' R2 U2' BL2 DR\nAlg DR' R2 U2' BL2' DR\nAlg DR' R2 DR U F2\nAlg DR' R' DR BR2' BL2'\nAlg DR2' FR' F2 FR DR2 L\nAlg DR2' FR' F2 FR DR2 L2\nAlg DR' FR' F' FR R' DR\nAlg BR\nAlg BR2\nAlg BR2'\nAlg BR'\nAlg BR2' U\nAlg BR2' U2\nAlg BR2' U2'\nAlg BR2' U'\nAlg BR' BL\nAlg BR' BL2\nAlg BR' BL2'\nAlg BR' BL'\nAlg B BL B'\nAlg B BL2' B'\nAlg B BL' B'\nAlg BR2' U2 F\nAlg BR2' U2 F2\nAlg BR2' U2 F2'\nAlg BR2' U2 F'\nAlg BR2' U2' L\nAlg BR2' U2' L2\nAlg BR2' U2' L2'\nAlg BR2' U' BL2'\nAlg BR' BL U\nAlg BR' BL U2\nAlg BR' BL U2'\nAlg BR' BL U'\nAlg B BL B' BR\nAlg B BL B' BR2\nAlg B BL B' BR2'\nAlg B BL2' L2' B'\nAlg B BL2' L' B'\nAlg BR2' U2' L F2\nAlg BR2' U2' L F2'\nAlg BR2' U2' L F'\nAlg BR2 U BR2'\nAlg BR2 U2 BR2'\nAlg BR2 U2' BR2'\nAlg BR2 U' BR2'\nAlg BR2' BL BR2\nAlg BR2' BL2 BR2\nAlg BR2' BL2' BR2\nAlg BR R BR' R'\nAlg BR2 U BR2' U2'\nAlg BR2 U BR2' U'\nAlg BR2 U BR2' F\nAlg BR2 U BR2' F2\nAlg BR2 U BR2' F2'\nAlg BR2 U BR2' F'\nAlg BR2 U2 BR2' F\nAlg BR2 U2 BR2' F2\nAlg BR2 U2 BR2' F2'\nAlg BR2 U2 BR2' F'\nAlg BR2 U2 BR2' L\nAlg BR2 U2 BR2' L2\nAlg BR2 U2 BR2' L2'\nAlg BR2 U2' BL BR2'\nAlg BR2 U2' BL2 BR2'\nAlg BR2 U2' BL' BR2'\nAlg BR2 U2' BR2' L\nAlg BR2 U2' BR2' L2'\nAlg BR2 U2' BR2' BL2'\nAlg BR2 U2' BR2' BL'\nAlg BR2 U' BL BR2'\nAlg BR2 U' BL2' BR2'\nAlg BR2 U' BL' BR2'\nAlg BR2' BL BR2 U2\nAlg BR2' BL BR2 U2'\nAlg BR2' BL BR2 BL2'\nAlg BR2' BL BR2 BL'\nAlg B BL2 L2' BL2' B'\nAlg DR' R2 F R2' DR\nAlg BR2 U F' U2' BR2'\nAlg BR2 U BR2' U2' BL'\nAlg BR2 U2 F U' BR2'\nAlg BR2 U2 BR2' L F2'\nAlg B' BR B\nAlg B' BR2 B\nAlg B' BR2' B\nAlg B' BR' B\nAlg B' BR2 B U\nAlg B' BR2 B U2\nAlg B' BR2 B U2'\nAlg B' BR2 B U'\nAlg B' BR2' B BL\nAlg B' BR2' B BL2\nAlg B' BR2' B BL2'\nAlg B' BR2' B BL'\nAlg B' BR' B BL\nAlg B' BR' B BL2'\nAlg B' BR' B BL'\nAlg B' BR2 U2' L B\nAlg B' BR2 U2' L2 B\nAlg B' BR2 U2' L2' B\nAlg B' BR2 B U2 F\nAlg B' BR2 B U2 F2\nAlg B' BR2 B U2 F2'\nAlg B' BR2 B U2 F'\nAlg B' BR2' B BL U\nAlg B' BR2' B BL U2\nAlg B' BR2' B BL U2'\nAlg B' BR2' B BL U'\nAlg B' BR' B BL2' L2'\nAlg B' BR' B BL2' L'\nAlg BR2 R U R' BR2'\nAlg B' BR2 U2' L B F2'\nAlg B' BR2 U2' L B F'\nAlg B' BR' B BR2 BL BR2'\nAlg B' BR2 U R BR' R' B\nAlg BR U BR'\nAlg BR U2 BR'\nAlg BR U2' BR'\nAlg BR U' BR'\nAlg BR2 BL BR2'\nAlg BR2 BL2 BR2'\nAlg BR2 BL2' BR2'\nAlg BR2 BL' BR2'\nAlg R2' F R2\nAlg R2' F2 R2\nAlg R2' F2' R2\nAlg R' U R\nAlg R' U2 R\nAlg R' U' R\nAlg BR U BR' U'\nAlg BR U2 BR' F\nAlg BR U2' BR' L\nAlg BR U2' BR' L2\nAlg BR U2' BR' L2'\nAlg BR U' BL BR'\nAlg BR U' BL2 BR'\nAlg BR U' BL2' BR'\nAlg BR U' BR' BL'\nAlg BR2 BL BR2' U2\nAlg BR2 BL BR2' BL'\nAlg R2' F2' R2 L\nAlg R2' F2' R2 L2\nAlg R' U F2 R\nAlg R' U F2' R\nAlg R' U R F\nAlg BR U' BR BL' BR2'\nAlg BR U F U' BR'\nAlg BR U F2 U' BR'\nAlg BR U F2' U' BR'\nAlg BR U F' U' BR'\nAlg BR U2 L U2' BR'\nAlg BR U2 L2 U2' BR'\nAlg BR U2 L2' U2' BR'\nAlg BR U2' BL U2 BR'\nAlg BR U2' BL2 U2 BR'\nAlg BR U2' BL2' U2 BR'\nAlg BR R' F R BR'\nAlg BR R' F2 R BR'\nAlg BR R' F' R BR'\nAlg BR2 U2' F U2 BR2'\nAlg BR2 U2' F2 U2 BR2'\nAlg BR2 U' L2 U BR2'\nAlg BR2 U' L2' U BR2'\nAlg BR2 BL L BL' BR2'\nAlg BR2 BL L' BL' BR2'\nAlg BR2' BL2' L BL2 BR2\nAlg BR2' BL2' L2 BL2 BR2\nAlg R2 F2 L F2' R2'\nAlg R2 F2 L2 F2' R2'\nAlg R2 F2 L2' F2' R2'\nAlg R2' U2 BL2' U2' R2\nAlg R' U2 F U2' R\nAlg R' U2 F2 U2' R\nAlg R' U' BL' U R\nAlg R' BR BL' BR' R\nAlg BR U F' U' BR' U'\nAlg BR U2 L' BL2 U2' BR'\nAlg BR U2' BL U2 BL2' BR'\nAlg BR U2' BL2' U2 BR' BL'\nAlg BR R' F R BR' U'\nAlg BR2 U' L2 U BR2' F2'\nAlg BR2 U' L2 U BR2' F'\nAlg BR U F2' U L' U2' BR'\nAlg BR U F2' L' F U' BR'\nAlg F\nAlg F2\nAlg F2'\nAlg F'\nAlg F L\nAlg F L2\nAlg F L2'\nAlg F L'\nAlg F2 U\nAlg F2 U2\nAlg F2 U2'\nAlg F2 U'\nAlg F L2' BL\nAlg F L2' BL2\nAlg F L2' BL2'\nAlg F L' U\nAlg F L' U2\nAlg F L' U2'\nAlg F L' U'\nAlg F2 U L\nAlg F2 U L2\nAlg F2 U L2'\nAlg F2 U L'\nAlg F L' U BL2\nAlg F L' U BL2'\nAlg F L' U BL'\nAlg F L' U' F\nAlg F L' U' F2\nAlg F L' U' F2'\nAlg F2 L F2'\nAlg F2 L2 F2'\nAlg F2 L2' F2'\nAlg F2 L' F2'\nAlg F2' U2 F2\nAlg F2' U2' F2\nAlg F2' U' F2\nAlg F2 L2 F2' L2'\nAlg F2 L2 F2' L'\nAlg F2 L2' BL F2'\nAlg F2 L2' BL2 F2'\nAlg F2 L2' BL2' F2'\nAlg F2 L' F2' U\nAlg F2 L' F2' U2\nAlg F2 L' F2' U2'\nAlg F2 L' F2' U'\nAlg F2 L' BL F2'\nAlg F2 L' BL2 F2'\nAlg F2 L' BL2' F2'\nAlg F2' U L F2\nAlg F2' U L2 F2\nAlg F2' U L' F2\nAlg F2' U2 F2 U2'\nAlg F2' U2 F2 U'\nAlg F2' U2 F2 L2\nAlg F2' U2 F2 L2'\nAlg F2' U2 F2 L'\nAlg F2' U2 L F2\nAlg F' R' F R\nAlg F L2 BL L2' F'\nAlg F L2 BL2 L2' F'\nAlg F2 L2 F2' L2' U2'\nAlg F2 L2' BL' L F2'\nAlg F2 L' F U2' F2\nAlg F2 L' F' U' F'\nAlg FL F FL'\nAlg FL F2 FL'\nAlg FL F2' FL'\nAlg FL F' FL'\nAlg FL F FL' L\nAlg FL F FL' L2\nAlg FL F FL' L2'\nAlg FL F FL' L'\nAlg FL F2 FL' L\nAlg FL F2 FL' L2\nAlg FL F2 FL' L2'\nAlg FL F2 FL' L'\nAlg FL F2' FL' U2\nAlg FL F2' FL' U2'\nAlg FL F2' FL' U'\nAlg F2 U2 L' U2' F2'\nAlg F2 U2' L' U2 F2'\nAlg F2 U' L' U F2'\nAlg FL F FL' L2 BL\nAlg FL F FL' L2 BL2\nAlg FL F FL' L2 BL2'\nAlg FL F2 FL' L2' BL\nAlg FL F2 FL' L2' BL2\nAlg FL F2 FL' L2' BL2'\nAlg FL F2 FL' L' U'\nAlg FL F FL' F2' L' F2\nAlg F2 U F U L U2' F2'\nAlg F2' L F2\nAlg F2' L2 F2\nAlg F2' L2' F2\nAlg F2' L' F2\nAlg F' U F\nAlg F' U2 F\nAlg F' U2' F\nAlg F' U' F\nAlg R U R'\nAlg R U2' R'\nAlg R U' R'\nAlg F R' F' R\nAlg F2' L F2 L'\nAlg F2' L2' BL F2\nAlg F2' L2' BL2 F2\nAlg F2' L2' BL2' F2\nAlg F' U F U'\nAlg F' U F L\nAlg F' U F L2\nAlg F' U F L2'\nAlg F' U F L'\nAlg R U2' R' BL2\nAlg R U2' R' BL2'\nAlg R U2' R' BL'\nAlg F2' L' F U' F\nAlg F2 L2 BL L2' F2'\nAlg F2 L2 BL2 L2' F2'\nAlg F2 L2 BL2' L2' F2'\nAlg F2 L2 BL' L2' F2'\nAlg F2' U BL U' F2\nAlg F2' U BL' U' F2\nAlg F2' L' BL L F2\nAlg F2' L' BL2 L F2\nAlg F2' L' BL2' L F2\nAlg F2' L' BL' L F2\nAlg F' U2 L U2' F\nAlg F' U2 L2 U2' F\nAlg F' U2 L2' U2' F\nAlg F' U2' BL2 U2 F\nAlg R U L U' R'\nAlg R U L' U' R'\nAlg R F' L F R'\nAlg R2 U2' L2 U2 R2'\nAlg R2 U' BL2 U R2'\nAlg R2 U' BL2' U R2'\nAlg R2 U' BL' U R2'\nAlg R2 BR BL' BR' R2'\nAlg F2 L2 BL2' L2' F2' U2\nAlg F2' U BL U' F2 L\nAlg F2' U BL' U' F2 L2\nAlg F2' U BL' U' F2 L2'\nAlg F2' L' BL L F2 U2\nAlg F2' L' BL L F2 U2'\nAlg F2' L' BL' L F2 U\nAlg F2' L' BL' L F2 U2\nAlg F' U2 L' U BL2' U2 F\nAlg F' U2' BL L' BL2' U2 F\nAlg U\nAlg U2\nAlg U2'\nAlg U'\nAlg U L\nAlg U L2\nAlg U L2'\nAlg U L'\nAlg U2 BL\nAlg U2 BL2\nAlg U2 BL2'\nAlg U2 BL'\nAlg U L' BL\nAlg U L' BL2\nAlg U L' BL2'\nAlg U L' BL'\nAlg U2 BL L\nAlg U2 BL L2\nAlg U2 BL L2'\nAlg U2 BL L'\nAlg U F' L F\nAlg U L' BL' U\nAlg U L' BL' U2\nAlg U2 L U2'\nAlg U2 L2 U2'\nAlg U2 L2' U2'\nAlg U2 L' U2'\nAlg U2' BL2 U2\nAlg U2' BL2' U2\nAlg U2' BL' U2\nAlg U2 L2 U2' L2'\nAlg U2 L2 U2' L'\nAlg U2 L' U2' BL\nAlg U2 L' U2' BL2\nAlg U2 L' U2' BL2'\nAlg U2 L' U2' BL'\nAlg U2' BL L U2\nAlg U2' BL L2 U2\nAlg U2' BL L2' U2\nAlg U2' BL L' U2\nAlg U2' BL2 U2 L2\nAlg U2' BL2 U2 L2'\nAlg U2' BL2 U2 L'\nAlg U2' BL2 U2 BL2'\nAlg U2' BL2 U2 BL'\nAlg U2' BL2 L U2\nAlg U' BR' U BR\nAlg U2 L' U BL2' U2\nAlg U2 L2' U2' L2 BL2\nAlg U2 L2' U2' L2 BL2'\nAlg U2 L' U' BL' U'\nAlg U2' BL2 U' L U2'\nAlg F U F'\nAlg F U2 F'\nAlg F U2' F'\nAlg F U' F'\nAlg F U F' L\nAlg F U F' L2\nAlg F U F' L2'\nAlg F U F' L'\nAlg F U2 F' L\nAlg F U2 F' L2\nAlg F U2 F' L2'\nAlg F U2 F' L'\nAlg F U2' BL2 F'\nAlg F U2' BL2' F'\nAlg F U2' BL' F'\nAlg U2 BL2 L' BL2' U2'\nAlg U2 BL' L' BL U2'\nAlg U2 BL2' L' BL2 U2'\nAlg F U2 F' L' BL'\nAlg F U F' U2' L' U2\nAlg U2 L U2 L2' U' BL' U2\nAlg U2' L U2\nAlg U2' L2 U2\nAlg U2' L2' U2\nAlg U2' L' U2\nAlg U' BL U\nAlg U' BL2 U\nAlg U' BL2' U\nAlg U' BL' U\nAlg BR BL BR'\nAlg BR BL2' BR'\nAlg BR BL' BR'\nAlg U BR' U' BR\nAlg U2' L U2 L'\nAlg U' BL U L\nAlg U' BL U L2\nAlg U' BL U L2'\nAlg U' BL U L'\nAlg U' BL U BL'\nAlg U2' L' U BL' U\nAlg U' BL2 L BL2' U\nAlg U' BL2 L2 BL2' U\nAlg U' BL2 L2' BL2' U\nAlg U' BL2 L' BL2' U\nAlg BR U' L U BR'\nAlg BR U' L2 U BR'\nAlg BR U' L2' U BR'\nAlg BR U' L' U BR'\nAlg BR BL L BL' BR'\nAlg BR BL L' BL' BR'\nAlg BR2 BL2' L BL2 BR2'\nAlg BR2 BL2' L2 BL2 BR2'\nAlg U2' L BL2' L' BL2 U2\nAlg U2' L2 F' L2' F U2\nAlg U2' L' DL L DL' U2\nAlg U2' BL2' L BL2 L' U2\nAlg U2' BL2' L2 BL2 L2' U2\nAlg U' BL2 L BL2' U BL\nAlg U' BL2 L2 BL2' U L\nAlg U' BL2 L2 BL2' U BL2'\nAlg U' BL2 L2 BL2' U BL'\nAlg U' BL2 L2 BL2' L2' U\nAlg BR BL L' BL' BR' BL2'\nAlg BR BL L' BL' BR' BL'\nAlg U' BL U BL U' L2' BL2' U\nAlg U' BL2 U' L2 U L' BL2' U\nAlg L\nAlg L2\nAlg L2'\nAlg L'\nAlg L' BL\nAlg L' BL2\nAlg L' BL2'\nAlg L' BL'\nAlg U BL U'\nAlg U BL2 U'\nAlg U BL2' U'\nAlg U BL' U'\nAlg U BL U' L\nAlg U BL U' L2\nAlg U BL U' L2'\nAlg U BL U' L'\nAlg U BL U' BL'\nAlg L2' BL L2\nAlg L2' BL2 L2\nAlg L2' BL2' L2\nAlg L2' BL' L2\nAlg L2 DL L2' DL'\nAlg L2' BL L2 BL2'\nAlg L2' BL L2 BL'\nAlg F' L2 BL L2' F\nAlg F' L2 BL2 L2' F\nAlg F' L2 BL2' L2' F\nAlg F' L2 BL' L2' F\nAlg L2 DL L' DL' L'\nAlg L2' U BL2' U' L2\nAlg L2' BL L2' BL2' L'\nAlg L2' BL L' BL2' L2'\nAlg L2' DL L' DL' L2\nAlg L' U' L' U L2\nAlg U L' DL L DL' U'\nAlg F' L2 BL L2' BL2' F\nAlg L2 DL' BL DL2 L2' DL'\nAlg L2' U BL2' U' BL L2\nAlg L2' BL' U BL' U' L2\nAlg L2' BL' L2 U' L' U\nAlg U' L U\nAlg U' L2 U\nAlg U' L2' U\nAlg U' L' U\nAlg U' L2' U BL\nAlg U' L2' U BL2\nAlg U' L2' U BL2'\nAlg U' L2' U BL'\nAlg U' L' U BL\nAlg U' L' U BL2\nAlg U' L' U BL2'\nAlg U' L' U BL'\nAlg U' L' U L BL L'\nAlg U' L' U L2 BL L2'\nAlg U' L' U BL U' L2 U\nAlg L2 BL L2'\nAlg L2 BL2 L2'\nAlg L2 BL2' L2'\nAlg L2 BL' L2'\nAlg L2 BL L2' BL'\nAlg L DL L' DL'\nAlg DL L DL' L'\nAlg L U' L2 U L2\nAlg L DL' BL DL L'\nAlg L DL' BL2 DL L'\nAlg L DL' BL' DL L'\nAlg DL L DL' L' BL'\nAlg L2 BL L' DL L' DL'\nAlg FL' L BL L' FL\nAlg FL' L BL2 L' FL\nAlg FL' L BL2' L' FL\nAlg FL' L BL' L' FL\nAlg FL' DL' BL DL FL\nAlg FL' DL' BL2 DL FL\nAlg FL' DL' BL2' DL FL\nAlg FL' DL' BL' DL FL\nAlg L2 BL2' U BL2 U' L2'\nAlg FL' L BL L' FL BL2'\nAlg FL' L BL' L' FL BL\nAlg U' F U BL U' F' U\nAlg U' F U BL2 U' F' U\nAlg U' F U BL2' U' F' U\nAlg F' FL2' DL' BL' DL FL2 F\nAlg L2' BL2 L2' BL' L2 BL' L2\nAlg DL L DL2' BL' DL2 L' DL'\nAlg DL2 FL2' DL2 BL' DL2' FL2 DL2'\nAlg FL' L U BL2' U' BL L' FL\nAlg FL' L2 U' L' U BL2 L' FL\nAlg L BL L'\nAlg L BL2 L'\nAlg L BL2' L'\nAlg L BL' L'\nAlg DL' BL DL\nAlg DL' BL2 DL\nAlg DL' BL2' DL\nAlg DL' BL' DL\nAlg L BL L' BL'\nAlg L' DL L DL'\nAlg L BL2 L' DL' BL' DL\nAlg L U BL2' U' BL2 L'\nAlg L BL2' U BL2 U' L'\nAlg DL' B' BL2 B BL2' DL\nAlg DL' BL2 B' BL2' B DL\nAlg U BL2' DL2' BL2 U' BL2' DL2\nAlg B' BL2 L2 BL2' B BL2 L2'\nAlg L U BL2' U' BL2 L' BL2'\nAlg L U BL2' U' BL2 L' BL'\nAlg L BL B BL' L' BL B'\nAlg L BL2' U BL2 U' L' BL2\nAlg L BL' U BL2 U' BL L'\nAlg L BL' U BL2' U' BL L'\nAlg L BL' U BL' U' BL L'\nAlg L2 BL2 L2' BL' L2 BL' L2'\nAlg DL' BL B' BL2' B BL' DL\nAlg L BL2' L U2 BR' U' BR U' L2'\nAlg L BL2' L BL L' BL L BL2' L2'\nAlg BL\nAlg BL2\nAlg BL2'\nAlg BL'\nAlg U BR BL2 BR' BL2' U'\nAlg B BL DL BL' DL' B'\nAlg L' BL2' DL' BL2 DL L\nAlg BR B BL B' BL' BR'\nAlg U BR BL2 BR' BL2' U' BL2\nAlg U BL BR BL' BR' U'\nAlg U BR BL BR' BL' U'\nAlg U' L' BL2' L BL2 U\nAlg B' BR' BL2' BR BL2 B\nAlg L BL2 U BL2' U' L'\nAlg BR B BL2 B' BL2' BR'\nAlg U BL2 U' BL' U BL' U'\nAlg B BL DL BL DL' BL2' B'\nAlg B BL2 DL BL' DL' BL' B'\nAlg B' BL' B BL2' B' BL2' B\nAlg U BL U' BL2 U BL2 U' BL2\nAlg U BR2 B' BR2' U' BR B BR'\nAlg BL2 BR B DL' B DL B2' BR'\nAlg B BL2' B2' BR B BR' B BL2 B'\nAlg U' BL' L' BL L U BL\nAlg B' BL2 B BL B' BL2 B\nAlg B' BL2' B BL' B' BL2' B\nAlg B' BL' BR' BL' BR BL2 B\nAlg B' BL2' BR' BL BR BL B\nAlg U' BL' L' BL' L BL2 U BL'\nAlg L' BL' L' DL L DL' BL L BL\nAlg L U BL U' BL' L'\nAlg L BL U BL' U' L'\nAlg BR' U' BL' U BL BR\nAlg L U2 BR' U' BR U' L'\nAlg U BL U2' L U L2' BL L BL2'\nAlg U' L2 F' L' F2 U' F' U2 L'\nAlg U BR' U' L U BR U' L'\nAlg U BR B BR' U' BR B' BR'\nAlg U' L U BR' U' L' U BR\nAlg B DL' B' BR B DL B' BR'\nAlg L' DL' B DL L DL' B' DL\nAlg BR B BR' U BR B' BR' U'\nAlg BR B DL' B' BR' B DL B'\nAlg U BR2' U2 L2 U2' BR2 U2 L2' U2\nAlg U2' L2 U2' BR2' U2 L2' U2' BR2 U'\nAlg U BL' B' BL U' L U2 BL' B BL U2' L'\nAlg U BR' U' L F' L2' U BR U' L2 F L'\nAlg U BR U' L U BR' U' L'\nAlg U' BL2 B BL2' U BL2 B' BL2'\nAlg L U BR U' L' U BR' U'\nAlg L BL2' B' BL2 L' BL2' B BL2\nAlg U BR' U2 L2 U2' BR U2 L2' U2\nAlg L' BL2 L2' F' L2 BL2' L2' F L2'\nAlg U BL2' U R U' BL2 U' L U2 R' U2' L'\nAlg U BR U' L2 F L' U BR' U' L F' L2'\nAlg U L' BL2 L' FL' L BL2' L U' L2' FL L2\nAlg U BR2' U R' U2' L U2 R U' BR2 U' L'`)}var IB,NB,na=U(()=>{He();lo();fn();IB=null;NB=null});var mg={};Ue(mg,{sgsDataPyraminx:()=>Lg,sgsDataPyraminxFixedOrientation:()=>oa});async function Lg(){return KB??(KB=QB())}async function oa(){return{ordering:(await Lg()).ordering.slice(2)}}async function QB(){return Ct(await he.pyraminx.kpuzzle(),`SubgroupSizes 12 9 12 3 10 3 8 6 2 3 3 3 3\n\nAlg B\nAlg B'\nAlg y\nAlg B y\nAlg B' y\nAlg y'\nAlg B y'\nAlg B' y'\nAlg BR'\nAlg B BR'\nAlg B' BR'\n\nAlg L\nAlg L'\nAlg L F\nAlg L' F\nAlg F\nAlg L F'\nAlg L' F'\nAlg F'\n\nAlg L B' U L' B\nAlg L U L'\nAlg L U' L'\nAlg L U L' U'\nAlg B' U B\nAlg B' U' B\nAlg B' U' B U\nAlg L U' L' R\nAlg L U' L' R'\nAlg L' R' L\nAlg L' R' L R\n\nAlg R\nAlg R'\n\nAlg R' U R\nAlg R' U' R\nAlg R' U R U'\nAlg B U B'\nAlg B U' B'\nAlg R B' R' B\nAlg L R L' R U' R\nAlg R L R' L'\nAlg L' R' U R L\n\nAlg U\nAlg U'\n\nAlg R U R' U'\nAlg U R U' R'\nAlg L' U' L U\nAlg U' L' U L\nAlg U L R' L' R U'\nAlg U' R' L R L' U\nAlg L' U' L U' R U' R'\n\nAlg R U' R' U\nAlg L' U L U'\nAlg U' R U R'\nAlg U L' U' L\nAlg L R' L' R L' U L U'\n\nAlg L' U L U' L R' L' R\n\nAlg b\nAlg b'\n\nAlg l\nAlg l'\n\nAlg r\nAlg r'\n\nAlg u\nAlg u'`)}var KB,la=U(()=>{_t();fn();KB=null});var Rg={};Ue(Rg,{sgsDataSkewb:()=>pg,sgsDataSkewbFixedCorner:()=>sa,skewbKPuzzleWithoutMOCached:()=>fi});async function HB(){let t=an(\"skewb\",{allMoves:!0,addRotations:!0});return new Ie(t.getKPuzzleDefinition(!0),{experimentalPGNotation:new xr(t,t.getOrbitsDef(!0))})}async function fi(){return YB??(YB=HB())}async function pg(){return ZB??(ZB=XB())}async function sa(){return{ordering:(await pg()).ordering.slice(1)}}async function XB(){return Ct(await fi(),`SubgroupSizes 24 6 5 12 9 3 4 9 3 3\n\nAlg y\nAlg y2\nAlg y'\nAlg F\nAlg F'\nAlg y U\nAlg y U'\nAlg y L\nAlg y L'\nAlg y F\nAlg y F'\nAlg y2 U\nAlg y2 U'\nAlg y2 B\nAlg y2 B'\nAlg y' U\nAlg y' F'\nAlg y U L'\nAlg y U B\nAlg y2 U B\nAlg y2 U B'\nAlg y2 U' B\nAlg y2 U' B'\n\nAlg U\nAlg U'\nAlg U L\nAlg U L'\nAlg U' R'\n\nAlg R\nAlg R'\nAlg R B\nAlg R' L'\n\nAlg U B' U\nAlg U' L U\nAlg U' L' U\nAlg U' B U'\nAlg R L R'\nAlg R B' R\nAlg U B L U'\nAlg U B' U B'\nAlg U B' L' U\nAlg U' L B U'\nAlg R' B L' R'\n\nAlg L\nAlg L'\nAlg L B\nAlg L B'\nAlg L B L\nAlg L B L'\nAlg L B' L\nAlg L B' L'\n\nAlg B\nAlg B'\n\nAlg L' B L\nAlg L' B' L\nAlg R' L' B L R\n\nAlg B L' B L B'\nAlg B L' B' L B'\nAlg U L U B U' L' U'\nAlg R L R' B' R L' R'\nAlg U B' R L R' B' U B\nAlg U' B U L U' B' U L'\nAlg L U' B U L' U' B' U\nAlg R B' U R B L U' B\n\nAlg U L U' B' U L' U' B\nAlg U' B L U L B' U' L'\n\nAlg U R' U' L B R' B' R\nAlg R' U' R U B' U' B L`)}var YB,ZB,aa=U(()=>{He();lo();fn();YB=null;ZB=null});var wg={};Ue(wg,{getRandomSquare1ScrambleString:()=>Uc});function rc(t,e){t.ul=e.ul,t.ur=e.ur,t.dl=e.dl,t.dr=e.dr,t.ml=e.ml}function Fg(t,e){var r;e<<=2,e>24?(e=48-e,r=t.ul,t.ul=(~~t.ul>>e|t.ur<<24-e)&16777215,t.ur=(~~t.ur>>e|r<<24-e)&16777215):e>0?(r=t.ul,t.ul=(t.ul<<e|~~t.ur>>24-e)&16777215,t.ur=(t.ur<<e|~~r>>24-e)&16777215):e==0?(r=t.ur,t.ur=t.dl,t.dl=r,t.ml=1-t.ml):e>=-24?(e=-e,r=t.dl,t.dl=(t.dl<<e|~~t.dr>>24-e)&16777215,t.dr=(t.dr<<e|~~r>>24-e)&16777215):e<-24&&(e=48+e,r=t.dl,t.dl=(~~t.dl>>e|t.dr<<24-e)&16777215,t.dr=(~~t.dr>>e|r<<24-e)&16777215)}function nc(t){var e,r,n,o,l;for(n=0,t.arr[0]=Mt(t,0),o=1;o<24;++o)Mt(t,o)!=t.arr[n]&&(t.arr[++n]=Mt(t,o));for(l=0,e=0;e<16;++e)for(r=e+1;r<16;++r)t.arr[e]>t.arr[r]&&(l^=1);return l}function oc(t){var e,r,n,o;return o=t.ur&1118481,o|=~~o>>3,o|=~~o>>6,o=o&15|~~o>>12&48,n=t.ul&1118481,n|=~~n>>3,n|=~~n>>6,n=n&15|~~n>>12&48,r=t.dr&1118481,r|=~~r>>3,r|=~~r>>6,r=r&15|~~r>>12&48,e=t.dl&1118481,e|=~~e>>3,e|=~~e>>6,e=e&15|~~e>>12&48,Eo(nc(t)<<24|n<<18|o<<12|e<<6|r)}function lc(t,e){var r,n;for(r=0;r<8;++r)t.prm[r]=~~(~~Mt(t,r*3+1)>>1<<24)>>24;for(e.cornperm=Po(t.prm),e.topEdgeFirst=Mt(t,0)==Mt(t,1),r=e.topEdgeFirst?2:0,n=0;n<4;r+=3,++n)t.prm[n]=~~(~~Mt(t,r)>>1<<24)>>24;for(e.botEdgeFirst=Mt(t,12)==Mt(t,13),r=e.botEdgeFirst?14:12;n<8;r+=3,++n)t.prm[n]=~~(~~Mt(t,r)>>1<<24)>>24;e.edgeperm=Po(t.prm),e.ml=t.ml}function Mt(t,e){var r;return e<6?r=~~t.ul>>(5-e<<2):e<12?r=~~t.ur>>(11-e<<2):e<18?r=~~t.dl>>(17-e<<2):r=~~t.dr>>(23-e<<2),~~((r&15)<<24)>>24}function fa(t,e,r){e<6?(t.ul&=~(15<<(5-e<<2)),t.ul|=r<<(5-e<<2)):e<12?(t.ur&=~(15<<(11-e<<2)),t.ur|=r<<(11-e<<2)):e<18?(t.dl&=~(15<<(17-e<<2)),t.dl|=r<<(17-e<<2)):(t.dr&=~(15<<(23-e<<2)),t.dr|=r<<(23-e<<2))}function ga(){this.arr=[],this.prm=[]}async function ic(){let t=await at();var e,r,n,o,l,i,s,u,a;for(e=new ga,n=In[t(3678)],l=19088743<<1|286331153,o=19088743<<1,s=i=8,r=0;r<24;r++)(n>>r&1)==0?(u=t(i)<<2,fa(e,23-r,o>>u&15),a=(1<<u)-1,o=(o&a)+(o>>4&~a),--i):(u=t(s)<<2,fa(e,23-r,l>>u&15),fa(e,22-r,l>>u&15),a=(1<<u)-1,l=(l&a)+(l>>4&~a),--s,++r);return e.ml=t(2),e}function sc(){}function ac(t){var e,r,n,o,l,i;for(rc(t.Search_d,t.Search_c),n=0;n<t.Search_length1;++n)Fg(t.Search_d,t.Search_move[n]);for(lc(t.Search_d,t.Search_sq),r=t.Search_sq.edgeperm,e=t.Search_sq.cornperm,l=t.Search_sq.ml,i=Math.max(De[t.Search_sq.edgeperm<<1|l],De[t.Search_sq.cornperm<<1|l]),n=i;n<t.Search_maxlen2;++n)if(Li(t,r,e,t.Search_sq.topEdgeFirst,t.Search_sq.botEdgeFirst,l,n,t.Search_length1,0)){for(o=0;o<n;++o)Fg(t.Search_d,t.Search_move[t.Search_length1+o]);return t.Search_sol_string=uc(t,n+t.Search_length1),!0}return!1}function uc(t,e){for(var r=\"\",n=0,o=0,l=e-1;l>=0;l--){var i=t.Search_move[l];i>0?(i=12-i,n=i>6?i-12:i):i<0?(i=12+i,o=i>6?i-12:i):(n==0&&o==0?r+=\" / \":r+=\"(\"+n+\", \"+o+\") / \",n=o=0)}return(n!==0||o!==0)&&(r+=\"(\"+n+\", \"+o+\")\"),r}function gi(t,e,r,n,o,l){var i,s,u;if(r==0&&n<4)return n==0&&ac(t);if(l!=0&&(u=mi[e],s=ke[u],s<n&&(t.Search_move[o]=0,gi(t,u,s,n-1,o+1,0))))return!0;if(u=e,l<=0){for(i=0;i+=zo[u],u=~~i>>4,i&=15,!(i>=12||(s=ke[u],s>n));)if(s<n&&(t.Search_move[o]=i,gi(t,u,s,n-1,o+1,1)))return!0}if(u=e,l<=1){for(i=0;i+=ko[u],u=~~i>>4,i&=15,!(i>=6||(s=ke[u],s>n));)if(s<n&&(t.Search_move[o]=-i,gi(t,u,s,n-1,o+1,2)))return!0}return!1}function Li(t,e,r,n,o,l,i,s,u){var a,f,g,L,m,p,B;if(i==0&&!n&&o||u!=0&&n==o&&(g=Mo[e],f=Mo[r],De[g<<1|1-l]<i&&De[f<<1|1-l]<i&&(t.Search_move[s]=0,Li(t,g,f,n,o,1-l,i-1,s+1,0))))return!0;if(u<=0)for(B=!n,g=B?Wr[e]:e,f=B?r:Wr[r],L=B?1:2,m=De[g<<1|l],p=De[f<<1|l];L<12&&m<=i&&m<=i;){if(m<i&&p<i&&(t.Search_move[s]=L,Li(t,g,f,B,o,l,i-1,s+1,1)))return!0;B=!B,B?(g=Wr[g],m=De[g<<1|l],L+=1):(f=Wr[f],p=De[f<<1|l],L+=2)}if(u<=1)for(a=!o,g=a?Or[e]:e,f=a?r:Or[r],L=a?1:2,m=De[g<<1|l],p=De[f<<1|l];L<(i>3?6:12)&&m<=i&&m<=i;){if(m<i&&p<i&&(t.Search_move[s]=-L,Li(t,g,f,n,a,l,i-1,s+1,2)))return!0;a=!a,a?(g=Or[g],m=De[g<<1|l],L+=1):(f=Or[f],p=De[f<<1|l],L+=2)}return!1}function fc(t,e){var r;for(t.Search_c=e,r=oc(e),t.Search_length1=ke[r];t.Search_length1<100&&(t.Search_maxlen2=Math.min(31-t.Search_length1,17),!gi(t,r,ke[r],t.Search_length1,0,-1));++t.Search_length1);return t.Search_sol_string}function Ag(){this.Search_move=[],this.Search_d=new ga,this.Search_sq=new bg}function gc(){}function Lc(){hg||(hg=!0,Co=[0,3,6,12,15,24,27,30,48,51,54,60,63],In=[],ke=[],zo=[],ko=[],mi=[],cc())}function mc(t){var e,r;e=0,r=0;do(t.bottom&2048)==0?(e+=1,t.bottom=t.bottom<<1):(e+=2,t.bottom=t.bottom<<2^12291),r=1-r;while((Kr(t.bottom&63)&1)!=0);return(Kr(t.bottom)&2)==0&&(t.Shape_parity^=r),e}function La(t){var e;return e=xg(In,t.top<<12|t.bottom)<<1|t.Shape_parity,e}function ma(t,e){t.Shape_parity=e&1,t.top=In[~~e>>1],t.bottom=t.top&4095,t.top>>=12}function Bc(t){var e,r;e=0,r=0;do(t.top&2048)==0?(e+=1,t.top=t.top<<1):(e+=2,t.top=t.top<<2^12291),r=1-r;while((Kr(t.top&63)&1)!=0);return(Kr(t.top)&2)==0&&(t.Shape_parity^=r),e}function yg(){}function Eo(t){var e;return e=xg(In,t&16777215)<<1|~~t>>24,e}function cc(){var t,e,r,n,o,l,i,s,u,a,f,g,L,m,p,B;for(t=0,i=0;i<28561;++i)l=Co[i%13],r=Co[~~(i/13)%13],g=Co[~~(~~(i/13)/13)%13],f=Co[~~(~~(~~(i/13)/13)/13)],L=f<<18|g<<12|r<<6|l,Kr(L)==16&&(In[t++]=L);for(a=new yg,i=0;i<7356;++i)ma(a,i),zo[i]=Bc(a),zo[i]|=La(a)<<4,ma(a,i),ko[i]=mc(a),ko[i]|=La(a)<<4,ma(a,i),B=a.top&63,m=Kr(B),p=Kr(a.bottom&4032),a.Shape_parity^=1&~~(m&p)>>1,a.top=a.top&4032|~~a.bottom>>6&63,a.bottom=a.bottom&63|B<<6,mi[i]=La(a);for(i=0;i<7536;++i)ke[i]=-1;for(ke[Eo(14378715)]=0,ke[Eo(31157686)]=0,ke[Eo(23967451)]=0,ke[Eo(7191990)]=0,n=4,o=0,e=-1;n!=o;)for(o=n,++e,i=0;i<7536;++i)if(ke[i]==e){u=0,s=i;do s=zo[s],u+=s&15,s>>=4,ke[s]==-1&&(++n,ke[s]=e+1);while(u!=12);u=0,s=i;do s=ko[s],u+=s&15,s>>=4,ke[s]==-1&&(++n,ke[s]=e+1);while(u!=12);s=mi[i],ke[s]==-1&&(++n,ke[s]=e+1)}}function pc(){}function Rc(){if(!Ug){Ug=!0,De=[],Mo=[],Wr=[],Or=[],Sg=[1,1,2,6,24,120,720,5040],_r=[];for(var t=0;t<12;++t)_r[t]=[];dc()}}function bg(){}function Po(t){var e,r,n,o;for(r=0,o=1985229328,e=0;e<7;++e)n=t[e]<<2,r=(8-e)*r+(~~o>>n&7),o-=286331152<<n;return r&65535}function dc(){var t,e,r,n,o,l,i,s,u,a,f,g,L;for(o=0;o<12;++o)for(_r[o][0]=1,_r[o][o]=1,u=1;u<o;++u)_r[o][u]=_r[o-1][u-1]+_r[o-1][u];for(g=[],o=0;o<40320;++o)Ba(g,o),L=g[2],g[2]=g[4],g[4]=L,L=g[3],g[3]=g[5],g[5]=L,Mo[o]=Po(g),Ba(g,o),L=g[0],g[0]=g[1],g[1]=g[2],g[2]=g[3],g[3]=L,Wr[o]=Po(g),Ba(g,o),L=g[4],g[4]=g[5],g[5]=g[6],g[6]=g[7],g[7]=L,Or[o]=Po(g);for(o=0;o<80640;++o)De[o]=-1;for(De[0]=0,e=0,r=1;r<80640;){s=e>=11,n=s?-1:e,t=s?e:-1,++e;e:for(o=0;o<80640;++o)if(De[o]==n){if(l=~~o>>1,f=o&1,i=Mo[l]<<1|1-f,De[i]==t&&(++r,De[s?o:i]=~~(e<<24)>>24,s))continue e;for(i=l,a=0;a<4;++a)if(i=Wr[i],De[i<<1|f]==t&&(++r,De[s?o:i<<1|f]=~~(e<<24)>>24,s))continue e;for(a=0;a<4;++a)if(i=Or[i],De[i<<1|f]==t&&(++r,De[s?o:i<<1|f]=~~(e<<24)>>24,s))continue e}}}function Ba(t,e){var r,n,o,l,i;for(i=1985229328,r=0;r<7;++r)o=Sg[7-r],l=~~(e/o),e-=l*o,l<<=2,t[r]=~~((~~i>>l&7)<<24)>>24,n=(1<<l)-1,i=(i&n)+(~~i>>4&~n);t[7]=~~(i<<24)>>24}function Dc(){}function Kr(t){return t-=~~t>>1&1431655765,t=(~~t>>2&858993459)+(t&858993459),t=(~~t>>4)+t&252645135,t+=~~t>>8,t+=~~t>>16,t&63}function xg(t,e){var r,n,o,l;for(n=0,r=t.length-1;n<=r;)if(o=n+(~~(r-n)>>1),l=t[o],l<e)n=o+1;else if(l>e)r=o-1;else return o;return-n-1}async function Uc(){return(await yc()).scramble_string}var Se,hg,ko,In,ke,zo,mi,Co,Ug,Or,_r,De,Wr,Mo,Sg,ca,Fc,Ac,hc,yc,vg=U(()=>{nr();Se=ga.prototype=sc.prototype;Se.dl=10062778;Se.dr=14536702;Se.ml=0;Se.ul=70195;Se.ur=4544119;Se=Ag.prototype=gc.prototype;Se.Search_c=null;Se.Search_length1=0;Se.Search_maxlen2=0;Se.Search_sol_string=null;hg=!1;Se=yg.prototype=pc.prototype;Se.bottom=0;Se.Shape_parity=0;Se.top=0;Ug=!1;Se=bg.prototype=Dc.prototype;Se.botEdgeFirst=!1;Se.cornperm=0;Se.edgeperm=0;Se.ml=0;Se.topEdgeFirst=!1;ca=!1,Fc=function(t,e,r){ca||(Lc(),Rc()),r&&r(\"Done initializing Square-1.\"),ca=!0,t!=null&&t()},Ac=async function(){return ca||Fc(),ic()},hc=function(t){var e=new Ag;return fc(e,t)},yc=async function(){var t=await Ac(),e=hc(t);return{state:t,scramble_string:e}}});var Fa=Symbol(\"Comlink.proxy\"),Wg=Symbol(\"Comlink.endpoint\"),Kg=Symbol(\"Comlink.releaseProxy\"),pi=Symbol(\"Comlink.thrown\"),Aa=t=>typeof t==\"object\"&&t!==null||typeof t==\"function\",Qg={canHandle:t=>Aa(t)&&t[Fa],serialize(t){let{port1:e,port2:r}=new MessageChannel;return Nn(t,e),[r,[r]]},deserialize(t){return t.start(),Vg(t)}},jg={canHandle:t=>Aa(t)&&pi in t,serialize({value:t}){let e;return t instanceof Error?e={isError:!0,value:{message:t.message,name:t.name,stack:t.stack}}:e={isError:!1,value:t},[e,[]]},deserialize(t){throw t.isError?Object.assign(new Error(t.value.message),t.value):t.value}},ha=new Map([[\"proxy\",Qg],[\"throw\",jg]]);function Nn(t,e=self){e.addEventListener(\"message\",function r(n){if(!n||!n.data)return;let{id:o,type:l,path:i}=Object.assign({path:[]},n.data),s=(n.data.argumentList||[]).map(dr),u;try{let a=i.slice(0,-1).reduce((g,L)=>g[L],t),f=i.reduce((g,L)=>g[L],t);switch(l){case\"GET\":u=f;break;case\"SET\":a[i.slice(-1)[0]]=dr(n.data.value),u=!0;break;case\"APPLY\":u=f.apply(a,s);break;case\"CONSTRUCT\":{let g=new f(...s);u=Zg(g)}break;case\"ENDPOINT\":{let{port1:g,port2:L}=new MessageChannel;Nn(t,L),u=Yg(g,[g])}break;case\"RELEASE\":u=void 0;break;default:return}}catch(a){u={value:a,[pi]:0}}Promise.resolve(u).catch(a=>({value:a,[pi]:0})).then(a=>{let[f,g]=di(a);e.postMessage(Object.assign(Object.assign({},f),{id:o}),g),l===\"RELEASE\"&&(e.removeEventListener(\"message\",r),ya(e))})}),e.start&&e.start()}function qg(t){return t.constructor.name===\"MessagePort\"}function ya(t){qg(t)&&t.close()}function Vg(t,e){return Ri(t,[],e)}function To(t){if(t)throw new Error(\"Proxy has been released and is not useable\")}function Ri(t,e=[],r=function(){}){let n=!1,o=new Proxy(r,{get(l,i){if(To(n),i===Kg)return()=>Qr(t,{type:\"RELEASE\",path:e.map(s=>s.toString())}).then(()=>{ya(t),n=!0});if(i===\"then\"){if(e.length===0)return{then:()=>o};let s=Qr(t,{type:\"GET\",path:e.map(u=>u.toString())}).then(dr);return s.then.bind(s)}return Ri(t,[...e,i])},set(l,i,s){To(n);let[u,a]=di(s);return Qr(t,{type:\"SET\",path:[...e,i].map(f=>f.toString()),value:u},a).then(dr)},apply(l,i,s){To(n);let u=e[e.length-1];if(u===Wg)return Qr(t,{type:\"ENDPOINT\"}).then(dr);if(u===\"bind\")return Ri(t,e.slice(0,-1));let[a,f]=Ua(s);return Qr(t,{type:\"APPLY\",path:e.map(g=>g.toString()),argumentList:a},f).then(dr)},construct(l,i){To(n);let[s,u]=Ua(i);return Qr(t,{type:\"CONSTRUCT\",path:e.map(a=>a.toString()),argumentList:s},u).then(dr)}});return o}function Hg(t){return Array.prototype.concat.apply([],t)}function Ua(t){let e=t.map(di);return[e.map(r=>r[0]),Hg(e.map(r=>r[1]))]}var ba=new WeakMap;function Yg(t,e){return ba.set(t,e),t}function Zg(t){return Object.assign(t,{[Fa]:!0})}function di(t){for(let[e,r]of ha)if(r.canHandle(t)){let[n,o]=r.serialize(t);return[{type:\"HANDLER\",name:e,value:n},o]}return[{type:\"RAW\",value:t},ba.get(t)||[]]}function dr(t){switch(t.type){case\"HANDLER\":return ha.get(t.name).deserialize(t.value);case\"RAW\":return t.value}}function Qr(t,e,r){return new Promise(n=>{let o=Xg();t.addEventListener(\"message\",function l(i){!i.data||!i.data.id||i.data.id!==o||(t.removeEventListener(\"message\",l),n(i.data))}),t.start&&t.start(),t.postMessage(Object.assign({id:o},e),r)})}function Xg(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join(\"-\")}var t1=typeof globalThis.Worker==\"undefined\"&&typeof globalThis.WorkerNavigator==\"undefined\";function Ea(t){t1?(async()=>{let{port:e}=await Promise.resolve().then(()=>(va(),wa));Nn(t,await e())})():Nn(t)}He();_t();Wt();He();_t();nr();Wt();Ae();Ae();var ts=class extends Xr{constructor(e){super();this.metric=e}traverseAlg(e){let r=0;for(let n of e.units())r+=this.traverseUnit(n);return r}traverseGrouping(e){let r=e.alg;return this.traverseAlg(r)*Math.abs(e.amount)}traverseMove(e){return this.metric(e)}traverseCommutator(e){return 2*(this.traverseAlg(e.A)+this.traverseAlg(e.B))}traverseConjugate(e){return 2*this.traverseAlg(e.A)+this.traverseAlg(e.B)}traversePause(e){return 0}traverseNewline(e){return 0}traverseLineComment(e){return 0}};function I2(t){return\"A\"<=t&&t<=\"Z\"}function J1(t){let e=t.family;return I2(e[0])&&e[e.length-1]===\"v\"||e===\"x\"||e===\"y\"||e===\"z\"||e===\"T\"?0:1}function $1(t){let e=t.family;return I2(e[0])&&e[e.length-1]===\"v\"||e===\"x\"||e===\"y\"||e===\"z\"||e===\"T\"?0:Math.abs(t.amount)}var N2=new ts(J1),rs=N2.traverseAlg.bind(N2),O2=new ts($1),eL=O2.traverseAlg.bind(O2);Ae();var _2=class extends Xr{traverseAlg(e){let r=0;for(let n of e.units())r+=this.traverseUnit(n);return r}traverseGrouping(e){return this.traverseAlg(e.alg)*Math.abs(e.amount)}traverseMove(e){return 1}traverseCommutator(e){return 2*(this.traverseAlg(e.A)+this.traverseAlg(e.B))}traverseConjugate(e){return 2*this.traverseAlg(e.A)+this.traverseAlg(e.B)}traversePause(e){return 1}traverseNewline(e){return 0}traverseLineComment(e){return 0}},W2=new _2,tL=W2.traverseAlg.bind(W2);nr();var rL=2,nL=!0,oL=!1;function lL(t,e){let r=[];return e.forEach(function(n){let o=new c(n);if(o.amount!==1)throw new Error(\"SGS cannot handle def moves with an amount other than 1 yet.\");let l=t.identityTransformation();for(let i=1;l=l.applyMove(o),!l.isIdentityTransformation();i++)r.push({move:o.modified({amount:i}),transformation:l})}),r}var At=class{constructor(e,r,n){this.kpuzzle=e;this.sgs=r;this.searchMoves=lL(this.kpuzzle,n??Object.keys(this.kpuzzle.definition.moves))}async solve(e,r=rL,n){let o=e.experimentalToTransformation();if(!o)throw new Error(\"distinguishable pieces are not supported in tremble solver yt\");let l=null,i=1e6,s=(u,a,f)=>{if(a===0){let g=this.sgsPhaseSolve(u,i);if(!g)return;let L=f.concat(g).simplify({collapseMoves:!0,quantumMoveOrder:n}),m=rs(L);(l===null||m<i)&&(oL&&(console.log(`New best (${m} moves): ${L.toString()}`),console.log(`Tremble moves are: ${f.toString()}`)),l=L,i=m);return}for(let g of this.searchMoves)s(u.applyTransformation(g.transformation),a-1,f.concat([g.move]))};for(let u=0;u<=r;u++)s(o,u,new k);if(l===null)throw new Error(\"SGS search failed.\");return l}sgsPhaseSolve(e,r){let n=new ft,o=e;for(let l of this.sgs.ordering){let i=l.pieceOrdering,s=\"\",u=o.invert();for(let f=0;f<i.length;f++){let g=i[f],L=g.orbitName,m=g.permutationIdx;s+=` ${u.transformationData[L].permutation[m]} ${u.transformationData[L].orientation[m]}`}let a=l.lookup[s];if(!a)throw new Error(\"Missing algorithm in sgs or esgs?\");if(n.experimentalPushAlg(a.alg),n.experimentalNumUnits()>=r)return null;if(o=o.applyTransformation(a.transformation),nL)for(let f=0;f<i.length;f++){let g=i[f],L=g.orbitName,m=g.permutationIdx;if(o.transformationData[L].permutation[m]!==m||o.transformationData[L].orientation[m]!==0)throw new Error(\"bad SGS :-(\")}}return n.toAlg()}};async function un(t,e){let r=await Kt(),n=t.identityTransformation();for(let o of e.ordering){let l=r(Object.values(o.lookup));n=n.applyTransformation(l.transformation)}return n.toKState()}var aL=3,q2=null;async function V2(){return q2||(q2=(async()=>{let t=await(await Promise.resolve().then(()=>(j2(),Q2))).cachedData222();return new At(await he[\"2x2x2\"].kpuzzle(),t,\"URFLBD\".split(\"\"))})())}async function H2(){await V2()}async function ns(t){return rt(),await(await V2()).solve(t,aL,()=>4)}async function uL(t,e,r,n){let o=await at();await T2(r.stateData[e].pieces);let l=t.definition.orbits[e],i=r.stateData[e].orientation,s=0;for(let u=0;u<l.numPieces;u++){let a=o(l.numOrientations);i[u]=a,s+=a}n&&\"orientationSum\"in n&&(i[0]=((i[0]+n.orientationSum-s)%l.numOrientations+l.numOrientations)%l.numOrientations)}async function fL(){let t=await he[\"2x2x2\"].kpuzzle(),e=new me(t,JSON.parse(JSON.stringify(t.startState().stateData)));return await uL(t,\"CORNERS\",e,{orientationSum:0}),e}async function Y2(){return await ns(await fL())}ws();dl();var bB=[[null,\"x\",\"x2\",\"x'\",\"z\",\"z'\"],[null,\"y\",\"y2\",\"y'\"]],SB=null;function eg(){return SB??(SB=Promise.resolve().then(()=>($f(),Jf)))}async function tg(){return(await eg()).initialize()}async function ea(){return(await eg()).random444Scramble()}async function rg(){return gn(await ea(),bB)}dl();Ae();nr();function xB(t){switch(t){case 5:return 60;case 6:return 80;default:return 100}}var wB=[[\"U\",\"D\"],[\"L\",\"R\"],[\"F\",\"B\"]],ng=new Map;function vB(t){let e=ng.get(t);if(e)return e;let r=[];for(let n of wB){let o=[];r.push(o);for(let l of n){o.push(new G(l)),t>3&&o.push(new G(`${l}w`));for(let i=3;i<=t/2;i++)o.push(new G(`${l}w`,i))}}return ng.set(t,r),r}async function Zt(t){let e=await at(),r=await Kt(),n=r,o=vB(t),l=xB(t),i=new ft,s=0,u=new Set;for(;i.experimentalNumUnits()<l;){let a=e(3);a!==s&&u.clear(),s=a;let f=r(o[s]),g=f.toString();u.has(g)||(u.add(g),i.push(new c(f,n([1,2,-1]))))}return i.toAlg()}var EB=[[null,\"3Rw\",\"3Rw2\",\"3Rw'\",\"3Fw\",\"3Fw'\"],[null,\"3Dw\",\"3Dw2\",\"3Dw'\"]];async function og(){return gn(await Zt(5),EB)}_t();Wt();var PB=3,lg=null;async function MB(){return lg||(lg=(async()=>{let e=await(await Promise.resolve().then(()=>(ra(),ta))).sgsDataFTO();return new At(await he.fto.kpuzzle(),e,[\"U\",\"R\",\"F\",\"L\",\"D\",\"B\",\"BR\",\"BL\"])})())}async function GB(t){return rt(),await(await MB()).solve(t,PB,()=>3)}var ig=!1;async function sg(){ig||(console.warn(\"FTO scrambles are not yet optimized. They may be much too long (\\u224890 moves).\"),ig=!0);let t=await Promise.resolve().then(()=>(ra(),ta));return GB(await un(await he.fto.kpuzzle(),await t.sgsDataFTO()))}He();Wt();na();var _B=2,fg=null;async function WB(){return fg||(fg=(async()=>{let e=await(await Promise.resolve().then(()=>(na(),ug))).cachedSGSDataMegaminx();return new At(await vo(),e,[\"U\",\"R\",\"F\",\"L\",\"BR\",\"BL\",\"FR\",\"FL\",\"DR\",\"DL\",\"B\",\"D\"])})())}async function gg(t){rt();let e=await WB(),r=JSON.parse(JSON.stringify(t.stateData));r.CENTERS.orientation=new Array(12).fill(0);let n=new me(await vo(),r);return await e.solve(n,_B,()=>5)}_t();Wt();la();var jB=3,Bg=null;async function qB(){return Bg||(Bg=(async()=>{let e=await(await Promise.resolve().then(()=>(la(),mg))).sgsDataPyraminx();return new At(await he.pyraminx.kpuzzle(),e,\"RLUB\".split(\"\"))})())}async function ia(t){return rt(),await(await qB()).solve(t,jB,()=>3)}async function VB(){return un(await he.pyraminx.kpuzzle(),await oa())}async function cg(){return ia(await VB())}He();Wt();aa();var JB=3,dg=null;async function $B(){return dg||(dg=(async()=>{let t=await Promise.resolve().then(()=>(aa(),Rg)),e=await t.sgsDataSkewb();return new At(await t.skewbKPuzzleWithoutMOCached(),e,\"RLUB\".split(\"\"))})())}function ec(t){return new me(t.kpuzzle,{CORNERS:t.stateData.CORNERS,CENTERS:{pieces:t.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}})}async function ua(t){return rt(),await(await $B()).solve(ec(t),JB,n=>n.family===\"y\"?4:3)}async function tc(){return un(await fi(),await sa())}async function Dg(){return ua(await tc())}Ae();var bc=null;function Sc(){return bc??(bc=Promise.resolve().then(()=>(vg(),wg)))}async function Eg(){return k.fromString(await(await Sc()).getRandomSquare1ScrambleString())}z2(!0);var kg=!0;function xc(t){kg=t}function zg(){return(typeof performance==\"undefined\"?Date:performance).now()}async function We(t,e){if(!kg)return e();let r=zg(),n=e();n?.then&&await n;let o=zg();return console.warn(`${t}: ${Math.round(o-r)}ms`),n}var pa={initialize:async t=>{switch(t){case\"222\":return We(\"preInitialize222\",H2);case\"333\":case\"333oh\":case\"333ft\":return We(\"initialize333\",Nu);case\"444\":return We(\"initialize444\",tg);default:throw new Error(`unsupported event: ${t}`)}},randomScrambleForEvent:async t=>{switch(t){case\"222\":return We(\"random222Scramble\",Y2);case\"333\":case\"333oh\":case\"333ft\":return We(\"random333Scramble\",yn);case\"333fm\":return We(\"random333FewestMovesScramble\",Wu);case\"333bf\":case\"333mb\":return We(\"random333OrientedScramble\",Ou);case\"444\":return We(\"random444Scramble\",ea);case\"444bf\":return We(\"random444OrientedScramble\",rg);case\"555\":return We(\"bigCubeScramble(5)\",Zt.bind(Zt,5));case\"555bf\":return We(\"oriented555RandomMoves\",og);case\"666\":return We(\"bigCubeScramble(6)\",Zt.bind(Zt,6));case\"777\":return We(\"bigCubeScramble(7)\",Zt.bind(Zt,7));case\"skewb\":return We(\"randomSkewbFixedCornerScramble\",Dg);case\"pyram\":return We(\"randomPyraminxScrambleFixedOrientation\",cg);case\"sq1\":return We(\"getRandomSquare1Scramble\",Eg);case\"fto\":return We(\"randomFTOScramble\",sg);default:throw new Error(`unsupported event: ${t}`)}},randomScrambleStringForEvent:async t=>(await pa.randomScrambleForEvent(t)).toString(),solve333ToString:async t=>{let e=new me(await he[\"3x3x3\"].kpuzzle(),t);return(await xs(e)).toString()},solve222ToString:async t=>{let e=new me(await he[\"2x2x2\"].kpuzzle(),t);return(await ns(e)).toString()},solveSkewbToString:async t=>{let e=new me(await he.skewb.kpuzzle(),t);return(await ua(e)).toString()},solvePyraminxToString:async t=>{let e=new me(await he.pyraminx.kpuzzle(),t);return(await ia(e)).toString()},solveMegaminxToString:async t=>{let e=new me(await he.megaminx.kpuzzle(),t);return(await gg(e)).toString()},setDebugMeasurePerf:async t=>{xc(t)}};Ea(pa);\n";
|