cubing 0.30.0 → 0.31.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.
Files changed (89) hide show
  1. package/dist/esm/alg/index.js +3 -1
  2. package/dist/esm/bluetooth/index.js +5 -5
  3. package/dist/esm/bluetooth/index.js.map +2 -2
  4. package/dist/esm/{chunk-KOAJIBEX.js → chunk-52L7V4XF.js} +32 -27
  5. package/dist/esm/chunk-52L7V4XF.js.map +7 -0
  6. package/dist/esm/{chunk-4QZRHN6S.js → chunk-55WSHQFP.js} +6 -8
  7. package/dist/esm/{chunk-4QZRHN6S.js.map → chunk-55WSHQFP.js.map} +2 -2
  8. package/dist/esm/{chunk-5OQ34D3X.js → chunk-A3PA5E45.js} +4 -4
  9. package/dist/esm/{chunk-5OQ34D3X.js.map → chunk-A3PA5E45.js.map} +2 -2
  10. package/dist/esm/{chunk-C6KMV2PL.js → chunk-G6MFOXW4.js} +10 -11
  11. package/dist/esm/chunk-G6MFOXW4.js.map +7 -0
  12. package/dist/esm/{chunk-6FB2XWAK.js → chunk-JCIUBLD5.js} +138 -183
  13. package/dist/esm/chunk-JCIUBLD5.js.map +7 -0
  14. package/dist/esm/{chunk-RI2DAEY6.js → chunk-JW5R6EBK.js} +2 -2
  15. package/dist/esm/{chunk-RI2DAEY6.js.map → chunk-JW5R6EBK.js.map} +0 -0
  16. package/dist/esm/{chunk-GQBRF4EM.js → chunk-MHP4YJE7.js} +7 -9
  17. package/dist/esm/chunk-MHP4YJE7.js.map +7 -0
  18. package/dist/esm/{chunk-ZQT3QSWD.js → chunk-PVI43RDV.js} +16 -13
  19. package/dist/esm/chunk-PVI43RDV.js.map +7 -0
  20. package/dist/esm/{chunk-35OK6TQ4.js → chunk-VTO7WPWK.js} +28 -19
  21. package/dist/esm/chunk-VTO7WPWK.js.map +7 -0
  22. package/dist/esm/{chunk-VIUWS2PX.js → chunk-XNPPG3BV.js} +3 -3
  23. package/dist/esm/chunk-XNPPG3BV.js.map +7 -0
  24. package/dist/esm/kpuzzle/index.js +2 -2
  25. package/dist/esm/notation/index.js +2 -2
  26. package/dist/esm/protocol/index.js +4 -4
  27. package/dist/esm/puzzle-geometry/index.js +6 -18
  28. package/dist/esm/puzzle-geometry/index.js.map +2 -2
  29. package/dist/esm/puzzles/index.js +4 -4
  30. package/dist/esm/scramble/index.js +2 -2
  31. package/dist/esm/search/index.js +6 -6
  32. package/dist/esm/{search-dynamic-sgs-side-events-XNTCWRI4.js → search-dynamic-sgs-side-events-UIAYYZRR.js} +6 -6
  33. package/dist/esm/{search-dynamic-sgs-side-events-XNTCWRI4.js.map → search-dynamic-sgs-side-events-UIAYYZRR.js.map} +0 -0
  34. package/dist/esm/{search-dynamic-sgs-unofficial-5KMZ747E.js → search-dynamic-sgs-unofficial-7XRXANEX.js} +6 -6
  35. package/dist/esm/{search-dynamic-sgs-unofficial-5KMZ747E.js.map → search-dynamic-sgs-unofficial-7XRXANEX.js.map} +0 -0
  36. package/dist/esm/{search-dynamic-solve-3x3x3-TSXPWENP.js → search-dynamic-solve-3x3x3-DDVSUP2C.js} +275 -290
  37. package/dist/esm/search-dynamic-solve-3x3x3-DDVSUP2C.js.map +7 -0
  38. package/dist/esm/{search-dynamic-solve-4x4x4-FKQ2JWK2.js → search-dynamic-solve-4x4x4-K5LUSS2B.js} +6 -6
  39. package/dist/esm/{search-dynamic-solve-4x4x4-FKQ2JWK2.js.map → search-dynamic-solve-4x4x4-K5LUSS2B.js.map} +0 -0
  40. package/dist/esm/{search-dynamic-solve-fto-GPLW7S5F.js → search-dynamic-solve-fto-MA4X6JEE.js} +6 -16
  41. package/dist/esm/search-dynamic-solve-fto-MA4X6JEE.js.map +7 -0
  42. package/dist/esm/{search-dynamic-solve-kilominx-HB2QFUGF.js → search-dynamic-solve-kilominx-XDOKK3ZV.js} +2 -2
  43. package/dist/esm/search-dynamic-solve-kilominx-XDOKK3ZV.js.map +7 -0
  44. package/dist/esm/{search-dynamic-solve-master_tetraminx-LR3LJI7O.js → search-dynamic-solve-master_tetraminx-YKINTRUU.js} +4 -10
  45. package/dist/esm/search-dynamic-solve-master_tetraminx-YKINTRUU.js.map +7 -0
  46. package/dist/esm/{search-worker-inside-generated-string-5HKZNHKK.js → search-worker-inside-generated-string-LBOAERDX.js} +28 -28
  47. package/dist/esm/search-worker-inside-generated-string-LBOAERDX.js.map +7 -0
  48. package/dist/esm/{search-worker-js-entry-PDXEE46R.js → search-worker-js-entry-4MMPUMST.js} +30 -36
  49. package/dist/esm/{search-worker-js-entry-PDXEE46R.js.map → search-worker-js-entry-4MMPUMST.js.map} +2 -2
  50. package/dist/esm/{search-worker-ts-entry-UV2RY2EY.js → search-worker-ts-entry-LBKZYRBU.js} +2 -2
  51. package/dist/esm/{search-worker-ts-entry-UV2RY2EY.js.map → search-worker-ts-entry-LBKZYRBU.js.map} +0 -0
  52. package/dist/esm/stream/index.js +1 -1
  53. package/dist/esm/stream/index.js.map +2 -2
  54. package/dist/esm/twisty/index.js +381 -250
  55. package/dist/esm/twisty/index.js.map +4 -4
  56. package/dist/esm/{twisty-dynamic-3d-GPF6TW32.js → twisty-dynamic-3d-TFI45NMX.js} +125 -106
  57. package/dist/esm/twisty-dynamic-3d-TFI45NMX.js.map +7 -0
  58. package/dist/types/{Alg-1c8c3757.d.ts → Alg-d3ac9660.d.ts} +53 -4
  59. package/dist/types/{KState-7c9e40f4.d.ts → KState-0a9388d0.d.ts} +1 -1
  60. package/dist/types/{TwizzleLink-3f8a01d2.d.ts → TwizzleLink-79b17516.d.ts} +63 -41
  61. package/dist/types/alg/index.d.ts +9 -6
  62. package/dist/types/bluetooth/index.d.ts +4 -4
  63. package/dist/types/{bluetooth-puzzle-a64e9756.d.ts → bluetooth-puzzle-83ade5b5.d.ts} +2 -2
  64. package/dist/types/kpuzzle/index.d.ts +2 -2
  65. package/dist/types/notation/index.d.ts +1 -1
  66. package/dist/types/{outside-b62aa614.d.ts → outside-6a613add.d.ts} +2 -2
  67. package/dist/types/{parseAlg-d5fbee87.d.ts → parseAlg-3bb4dddb.d.ts} +1 -1
  68. package/dist/types/protocol/index.d.ts +2 -2
  69. package/dist/types/puzzle-geometry/index.d.ts +3 -3
  70. package/dist/types/puzzles/index.d.ts +5 -5
  71. package/dist/types/scramble/index.d.ts +3 -3
  72. package/dist/types/search/index.d.ts +3 -3
  73. package/dist/types/stream/index.d.ts +3 -3
  74. package/dist/types/twisty/index.d.ts +6 -6
  75. package/package.json +11 -5
  76. package/dist/esm/.DS_Store +0 -0
  77. package/dist/esm/chunk-35OK6TQ4.js.map +0 -7
  78. package/dist/esm/chunk-6FB2XWAK.js.map +0 -7
  79. package/dist/esm/chunk-C6KMV2PL.js.map +0 -7
  80. package/dist/esm/chunk-GQBRF4EM.js.map +0 -7
  81. package/dist/esm/chunk-KOAJIBEX.js.map +0 -7
  82. package/dist/esm/chunk-VIUWS2PX.js.map +0 -7
  83. package/dist/esm/chunk-ZQT3QSWD.js.map +0 -7
  84. package/dist/esm/search-dynamic-solve-3x3x3-TSXPWENP.js.map +0 -7
  85. package/dist/esm/search-dynamic-solve-fto-GPLW7S5F.js.map +0 -7
  86. package/dist/esm/search-dynamic-solve-kilominx-HB2QFUGF.js.map +0 -7
  87. package/dist/esm/search-dynamic-solve-master_tetraminx-LR3LJI7O.js.map +0 -7
  88. package/dist/esm/search-worker-inside-generated-string-5HKZNHKK.js.map +0 -7
  89. package/dist/esm/twisty-dynamic-3d-GPF6TW32.js.map +0 -7
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/cubing/search/search-worker-inside-generated-string.js"],
4
- "sourcesContent": ["export const workerSource = \"\\\"use strict\\\";var Tm=Object.defineProperty;var y=(e,t)=>()=>(e&&(t=e(e=0)),t);var Lt=(e,t)=>{for(var r in t)Tm(e,r,{get:t[r],enumerable:!0})};var Ta=(e,t,r)=>{if(!t.has(e))throw TypeError(\\\"Cannot \\\"+r)};var R=(e,t,r)=>(Ta(e,t,\\\"read from private field\\\"),r?r.call(e):t.get(e)),J=(e,t,r)=>{if(t.has(e))throw TypeError(\\\"Cannot add the same private member more than once\\\");t instanceof WeakSet?t.add(e):t.set(e,r)},V=(e,t,r,n)=>(Ta(e,t,\\\"write to private field\\\"),n?n.call(e,r):t.set(e,r),r),Ga=(e,t,r,n)=>({set _(l){V(e,t,l,r)},get _(){return R(e,t,n)}}),$t=(e,t,r)=>(Ta(e,t,\\\"access private method\\\"),r);var rL,Wl,Te,er=y(()=>{\\\"use strict\\\";rL=!1,Wl=class{is(t){return this instanceof t}as(t){return this instanceof t?this:null}},Te=class extends Wl{constructor(){super(),rL&&Object.defineProperty(this,\\\"_debugStr\\\",{get:()=>this.toString()})}get log(){return console.log.bind(console,this,this.toString())}}});function q2(e,t=!0){if(!t)return e;switch(e){case 1:return-1;case-1:return 1}}function V2(e,t){return t===-1?Array.from(e).reverse():e}function H2(e){return Array.from(e).reverse()}var Gt=y(()=>{\\\"use strict\\\"});var Kl,ja=y(()=>{\\\"use strict\\\";Kl=\\\"2^31 - 1\\\"});var Zr,Bt,qa=y(()=>{\\\"use strict\\\";Wt();Bt=class{constructor(){J(this,Zr,[])}push(t){R(this,Zr).push(t)}experimentalPushAlg(t){for(let r of t.childAlgNodes())this.push(r)}experimentalNumAlgNodes(){return R(this,Zr).length}toAlg(){return new E(R(this,Zr))}reset(){V(this,Zr,[])}};Zr=new WeakMap});var X2,Va=y(()=>{\\\"use strict\\\";X2={caratNISSNotationEnabled:!1}});var Jr,Yr,Zo,Ne,Mn=y(()=>{\\\"use strict\\\";Wt();er();Gt();Zo=class extends Te{constructor(r,n){super();J(this,Jr,void 0);J(this,Yr,void 0);V(this,Jr,hr(r)),V(this,Yr,hr(n))}get A(){return R(this,Jr)}get B(){return R(this,Yr)}isIdentical(r){let n=r.as(Zo);return!!(n?.A.isIdentical(this.A)&&n?.B.isIdentical(this.B))}invert(){return new Zo(R(this,Yr),R(this,Jr))}*experimentalExpand(r=1,n){n??(n=1/0),n===0?yield r===1?this:this.invert():r===1?(yield*this.A.experimentalExpand(1,n-1),yield*this.B.experimentalExpand(1,n-1),yield*this.A.experimentalExpand(-1,n-1),yield*this.B.experimentalExpand(-1,n-1)):(yield*this.B.experimentalExpand(1,n-1),yield*this.A.experimentalExpand(1,n-1),yield*this.B.experimentalExpand(-1,n-1),yield*this.A.experimentalExpand(-1,n-1))}toString(){return`[${R(this,Jr).toString()}, ${R(this,Yr).toString()}]`}},Ne=Zo;Jr=new WeakMap,Yr=new WeakMap});var In,On,Jo,Pe,Tn=y(()=>{\\\"use strict\\\";Wt();er();Gt();Jo=class extends Te{constructor(r,n){super();J(this,In,void 0);J(this,On,void 0);V(this,In,hr(r)),V(this,On,hr(n))}get A(){return R(this,In)}get B(){return R(this,On)}isIdentical(r){let n=r.as(Jo);return!!(n?.A.isIdentical(this.A)&&n?.B.isIdentical(this.B))}invert(){return new Jo(R(this,In),R(this,On).invert())}*experimentalExpand(r,n){n??(n=1/0),n===0?yield r===1?this:this.invert():(yield*this.A.experimentalExpand(1,n-1),yield*this.B.experimentalExpand(r,n-1),yield*this.A.experimentalExpand(-1,n-1))}toString(){return`[${this.A}: ${this.B}]`}},Pe=Jo;In=new WeakMap,On=new WeakMap});var Fr,Ha,Dt,Ql=y(()=>{\\\"use strict\\\";er();Gt();Ha=class extends Te{constructor(r){super();J(this,Fr,void 0);if(r.includes(`\\n`)||r.includes(\\\"\\\\r\\\"))throw new Error(\\\"LineComment cannot contain newline\\\");V(this,Fr,r)}get text(){return R(this,Fr)}isIdentical(r){let n=r;return r.is(Ha)&&R(this,Fr)===R(n,Fr)}invert(){return this}*experimentalExpand(r=1,n=1/0){yield this}toString(){return`//${R(this,Fr)}`}},Dt=Ha;Fr=new WeakMap});var $e,jl=y(()=>{\\\"use strict\\\";er();Gt();$e=class extends Te{toString(){return`\\n`}isIdentical(t){return t.is($e)}invert(){return this}*experimentalExpand(t=1,r=1/0){yield this}}});var Ae,Gn=y(()=>{\\\"use strict\\\";er();Gt();Ae=class extends Te{toString(){return\\\".\\\"}isIdentical(r){return r.is(Ae)}invert(){return this}*experimentalExpand(r=1,n=1/0){yield this}}});function Yo(e,t){return e?parseInt(e):t}function Xa(e){return new ql().parseAlg(e)}function J2(e){return new ql().parseMove(e)}function Y2(e){return new ql().parseQuantumMove(e)}function et(e,t,r){let n=e;return n.startCharIndex=t,n.endCharIndex=r,n}function $2(e,t){return\\\"startCharIndex\\\"in e&&(t.startCharIndex=e.startCharIndex),\\\"endCharIndex\\\"in e&&(t.endCharIndex=e.endCharIndex),t}var Z2,nL,lL,oL,iL,aL,at,G,Wn,ql,Za=y(()=>{\\\"use strict\\\";Wt();qa();Va();Mn();Tn();Vl();Ql();Kt();jl();Gn();Z2=/^(\\\\d+)?('?)/,nL=/^[_\\\\dA-Za-z]/,lL=/^((([1-9]\\\\d*)-)?([1-9]\\\\d*))?([_A-Za-z]+)?/,oL=/^[^\\\\n]*/,iL=/^(-?\\\\d+), ?/,aL=/^(-?\\\\d+)\\\\)/;ql=class{constructor(){J(this,at,\\\"\\\");J(this,G,0);J(this,Wn,[])}parseAlg(t){V(this,at,t),V(this,G,0);let r=this.parseAlgWithStopping([]);this.mustBeAtEndOfInput();let n=Array.from(r.childAlgNodes());if(R(this,Wn).length>0)for(let a of R(this,Wn).reverse())n.push(a);let l=new E(n),{startCharIndex:o,endCharIndex:i}=r;return et(l,o,i),l}parseMove(t){V(this,at,t),V(this,G,0);let r=this.parseMoveImpl();return this.mustBeAtEndOfInput(),r}parseQuantumMove(t){V(this,at,t),V(this,G,0);let r=this.parseQuantumMoveImpl();return this.mustBeAtEndOfInput(),r}mustBeAtEndOfInput(){if(R(this,G)!==R(this,at).length)throw new Error(\\\"parsing unexpectedly ended early\\\")}parseAlgWithStopping(t){let r=R(this,G),n=R(this,G),l=new Bt,o=!1,i=a=>{if(o)throw new Error(`Unexpected character at index ${a}. Are you missing a space?`)};e:for(;R(this,G)<R(this,at).length;){let a=R(this,G);if(t.includes(R(this,at)[R(this,G)]))return et(l.toAlg(),r,n);if(this.tryConsumeNext(\\\" \\\")){o=!1,l.experimentalNumAlgNodes()===0&&(r=R(this,G));continue e}else if(nL.test(R(this,at)[R(this,G)])){i(a);let s=this.parseMoveImpl();l.push(s),o=!0,n=R(this,G);continue e}else if(this.tryConsumeNext(\\\"(\\\")){i(a);let s=this.tryRegex(iL);if(s){let f=s[1],u=R(this,G),p=this.parseRegex(aL),g=et(new B(new k(\\\"U_SQ_\\\"),parseInt(f)),a+1,a+1+f.length),c=et(new B(new k(\\\"D_SQ_\\\"),parseInt(p[1])),u,R(this,G)-1),L=et(new E([g,c]),a+1,R(this,G)-1);l.push(et(new Me(L),a,R(this,G))),o=!0,n=R(this,G);continue e}else{let f=this.parseAlgWithStopping([\\\")\\\"]);this.mustConsumeNext(\\\")\\\");let u=this.parseAmount();l.push(et(new Me(f,u),a,R(this,G))),o=!0,n=R(this,G);continue e}}else if(this.tryConsumeNext(\\\"^\\\")){if(!X2.caratNISSNotationEnabled)throw new Error(\\\"Alg contained a carat but carat NISS notation is not enabled.\\\");this.mustConsumeNext(\\\"(\\\");let s=this.parseAlgWithStopping([\\\")\\\"]);this.popNext();let f=new Me(s,-1),u=new Ae;f.experimentalNISSPlaceholder=u,u.experimentalNISSGrouping=f,R(this,Wn).push(f),l.push(u)}else if(this.tryConsumeNext(\\\"[\\\")){i(a);let s=this.parseAlgWithStopping([\\\",\\\",\\\":\\\"]),f=this.popNext(),u=this.parseAlgWithStopping([\\\"]\\\"]);switch(this.mustConsumeNext(\\\"]\\\"),f){case\\\":\\\":{l.push(et(new Pe(s,u),a,R(this,G))),o=!0,n=R(this,G);continue e}case\\\",\\\":{l.push(et(new Ne(s,u),a,R(this,G))),o=!0,n=R(this,G);continue e}default:throw new Error(\\\"unexpected parsing error\\\")}}else if(this.tryConsumeNext(`\\n`)){l.push(et(new $e,a,R(this,G))),o=!1,n=R(this,G);continue e}else if(this.tryConsumeNext(\\\"/\\\"))if(this.tryConsumeNext(\\\"/\\\")){i(a);let[s]=this.parseRegex(oL);l.push(et(new Dt(s),a,R(this,G))),o=!1,n=R(this,G);continue e}else{l.push(et(new B(\\\"_SLASH_\\\"),a,R(this,G))),o=!0,n=R(this,G);continue e}else if(this.tryConsumeNext(\\\".\\\")){i(a),l.push(et(new Ae,a,R(this,G))),o=!0,n=R(this,G);continue e}else throw new Error(`Unexpected character: ${this.popNext()}`)}if(R(this,G)!==R(this,at).length)throw new Error(\\\"did not finish parsing?\\\");if(t.length>0)throw new Error(\\\"expected stopping\\\");return et(l.toAlg(),r,n)}parseQuantumMoveImpl(){let[,,,t,r,n]=this.parseRegex(lL);return new k(n,Yo(r,void 0),Yo(t,void 0))}parseMoveImpl(){let t=R(this,G);if(this.tryConsumeNext(\\\"/\\\"))return et(new B(\\\"_SLASH_\\\"),t,R(this,G));let r=this.parseQuantumMoveImpl(),[n,l]=this.parseAmountAndTrackEmptyAbsAmount(),o=this.parseMoveSuffix();if(o){if(n<0)throw new Error(\\\"uh-oh\\\");if((o===\\\"++\\\"||o===\\\"--\\\")&&n!==1)throw new Error(\\\"Pochmann ++ or -- moves cannot have an amount other than 1.\\\");if((o===\\\"++\\\"||o===\\\"--\\\")&&!l)throw new Error(\\\"Pochmann ++ or -- moves cannot have an amount written as a number.\\\");if((o===\\\"+\\\"||o===\\\"-\\\")&&l)throw new Error(\\\"Clock dial moves must have an amount written as a natural number followed by + or -.\\\");o.startsWith(\\\"+\\\")&&(r=r.modified({family:`${r.family}_${o===\\\"+\\\"?\\\"PLUS\\\":\\\"PLUSPLUS\\\"}_`})),o.startsWith(\\\"-\\\")&&(r=r.modified({family:`${r.family}_${o===\\\"-\\\"?\\\"PLUS\\\":\\\"PLUSPLUS\\\"}_`}),n*=-1)}return et(new B(r,n),t,R(this,G))}parseMoveSuffix(){return this.tryConsumeNext(\\\"+\\\")?this.tryConsumeNext(\\\"+\\\")?\\\"++\\\":\\\"+\\\":this.tryConsumeNext(\\\"-\\\")?this.tryConsumeNext(\\\"-\\\")?\\\"--\\\":\\\"-\\\":null}parseAmountAndTrackEmptyAbsAmount(){let t=R(this,G),[,r,n]=this.parseRegex(Z2);if(r?.startsWith(\\\"0\\\")&&r!==\\\"0\\\")throw new Error(`Error at char index ${t}: An amount can only start with 0 if it's exactly the digit 0.`);return[Yo(r,1)*(n===\\\"'\\\"?-1:1),!r]}parseAmount(){let t=R(this,G),[,r,n]=this.parseRegex(Z2);if(r?.startsWith(\\\"0\\\")&&r!==\\\"0\\\")throw new Error(`Error at char index ${t}: An amount number can only start with 0 if it's exactly the digit 0.`);return Yo(r,1)*(n===\\\"'\\\"?-1:1)}parseRegex(t){let r=t.exec(this.remaining());if(r===null)throw new Error(\\\"internal parsing error\\\");return V(this,G,R(this,G)+r[0].length),r}tryRegex(t){let r=t.exec(this.remaining());return r===null?null:(V(this,G,R(this,G)+r[0].length),r)}remaining(){return R(this,at).slice(R(this,G))}popNext(){let t=R(this,at)[R(this,G)];return Ga(this,G)._++,t}tryConsumeNext(t){return R(this,at)[R(this,G)]===t?(Ga(this,G)._++,!0):!1}mustConsumeNext(t){let r=this.popNext();if(r!==t)throw new Error(`expected \\\\`${t}\\\\` while parsing, encountered ${r}`);return r}};at=new WeakMap,G=new WeakMap,Wn=new WeakMap});function $o(e){ef.has(e)||(console.warn(e),ef.add(e))}var ef,Ja=y(()=>{\\\"use strict\\\";ef=new Set});var en,Ya=y(()=>{\\\"use strict\\\";Gt();ja();en=class{constructor(t,r=1){if(this.quantum=t,this.amount=r,!Number.isInteger(this.amount)||this.amount<-2147483648||this.amount>2147483647)throw new Error(`AlgNode amount absolute value must be a non-negative integer below ${Kl}.`)}suffix(){let t=\\\"\\\",r=Math.abs(this.amount);return r!==1&&(t+=r),this.amount<0&&(t+=\\\"'\\\"),t}isIdentical(t){return this.quantum.isIdentical(t.quantum)&&this.amount===t.amount}*experimentalExpand(t,r){let n=Math.abs(this.amount),l=q2(t,this.amount<0);for(let o=0;o<n;o++)yield*this.quantum.experimentalExpand(l,r)}}});var tr,Ve,He,ti,k,Ge,Kn,B,Kt=y(()=>{\\\"use strict\\\";er();Gt();ja();Za();Ja();Ya();ti=class extends Wl{constructor(r,n,l){super();J(this,tr,void 0);J(this,Ve,void 0);J(this,He,void 0);if(V(this,tr,r),V(this,Ve,n??null),V(this,He,l??null),Object.freeze(this),R(this,Ve)!==null&&(!Number.isInteger(R(this,Ve))||R(this,Ve)<1||R(this,Ve)>2147483647))throw new Error(`QuantumMove inner layer must be a positive integer below ${Kl}.`);if(R(this,He)!==null&&(!Number.isInteger(R(this,He))||R(this,He)<1||R(this,He)>2147483647))throw new Error(`QuantumMove outer layer must be a positive integer below ${Kl}.`);if(R(this,He)!==null&&R(this,Ve)!==null&&R(this,Ve)<=R(this,He))throw new Error(\\\"QuantumMove outer layer must be smaller than inner layer.\\\");if(R(this,He)!==null&&R(this,Ve)===null)throw new Error(\\\"QuantumMove with an outer layer must have an inner layer\\\")}static fromString(r){return Y2(r)}modified(r){return new ti(r.family??R(this,tr),r.innerLayer??R(this,Ve),r.outerLayer??R(this,He))}isIdentical(r){let n=r;return r.is(ti)&&R(this,tr)===R(n,tr)&&R(this,Ve)===R(n,Ve)&&R(this,He)===R(n,He)}get family(){return R(this,tr)}get outerLayer(){return R(this,He)}get innerLayer(){return R(this,Ve)}experimentalExpand(){throw new Error(\\\"experimentalExpand() cannot be called on a `QuantumMove` directly.\\\")}toString(){let r=R(this,tr);return R(this,Ve)!==null&&(r=String(R(this,Ve))+r,R(this,He)!==null&&(r=`${String(R(this,He))}-${r}`)),r}},k=ti;tr=new WeakMap,Ve=new WeakMap,He=new WeakMap;Kn=class extends Te{constructor(...r){super();J(this,Ge,void 0);if(typeof r[0]==\\\"string\\\")if(r[1]??null){V(this,Ge,new en(k.fromString(r[0]),r[1]));return}else return Kn.fromString(r[0]);V(this,Ge,new en(r[0],r[1]))}isIdentical(r){let n=r.as(Kn);return!!n&&R(this,Ge).isIdentical(R(n,Ge))}invert(){return $2(this,new Kn(R(this,Ge).quantum,-this.amount))}*experimentalExpand(r=1){r===1?yield this:yield this.modified({amount:-this.amount})}get quantum(){return R(this,Ge).quantum}modified(r){return new Kn(R(this,Ge).quantum.modified(r),r.amount??this.amount)}static fromString(r){return J2(r)}get amount(){return R(this,Ge).amount}get type(){return $o(\\\"deprecated: type\\\"),\\\"blockMove\\\"}get family(){return R(this,Ge).quantum.family??void 0}get outerLayer(){return R(this,Ge).quantum.outerLayer??void 0}get innerLayer(){return R(this,Ge).quantum.innerLayer??void 0}toString(){if(this.family===\\\"_SLASH_\\\")return\\\"/\\\";if(this.family.endsWith(\\\"_PLUS_\\\"))return R(this,Ge).quantum.toString().slice(0,-6)+Math.abs(this.amount)+(this.amount<0?\\\"-\\\":\\\"+\\\");if(this.family.endsWith(\\\"_PLUSPLUS_\\\")){let r=Math.abs(this.amount);return R(this,Ge).quantum.toString().slice(0,-10)+(r===1?\\\"\\\":r)+(this.amount<0?\\\"--\\\":\\\"++\\\")}return R(this,Ge).quantum.toString()+R(this,Ge).suffix()}},B=Kn;Ge=new WeakMap});var $a,tf,st,ri,Me,Vl=y(()=>{\\\"use strict\\\";Wt();er();Gt();Kt();Ya();$a=class{constructor(){this.quantumU_SQ_=null;this.quantumD_SQ_=null}format(t){let r=this.tuple(t);return r?`(${r.map(n=>n.amount).join(\\\", \\\")})`:null}tuple(t){this.quantumU_SQ_||(this.quantumU_SQ_=new k(\\\"U_SQ_\\\")),this.quantumD_SQ_||(this.quantumD_SQ_=new k(\\\"D_SQ_\\\"));let r=t.alg;if(r.experimentalNumChildAlgNodes()===2){let[n,l]=r.childAlgNodes();if(n.as(B)?.quantum.isIdentical(this.quantumU_SQ_)&&l.as(B)?.quantum.isIdentical(this.quantumD_SQ_)){if(t.amount!==1)throw new Error(\\\"Square-1 tuples cannot have an amount other than 1.\\\");return[n,l]}}return null}},tf=new $a,ri=class extends Te{constructor(r,n){super();J(this,st,void 0);let l=hr(r);V(this,st,new en(l,n))}isIdentical(r){let n=r;return r.is(ri)&&R(this,st).isIdentical(R(n,st))}get alg(){return R(this,st).quantum}get amount(){return R(this,st).amount}get experimentalRepetitionSuffix(){return R(this,st).suffix()}invert(){return new ri(R(this,st).quantum,-R(this,st).amount)}*experimentalExpand(r=1,n){n??(n=1/0),n===0?yield r===1?this:this.invert():yield*R(this,st).experimentalExpand(r,n-1)}static fromString(){throw new Error(\\\"unimplemented\\\")}toString(){return tf.format(this)??`(${R(this,st).quantum.toString()})${R(this,st).suffix()}`}experimentalAsSquare1Tuple(){return tf.tuple(this)}},Me=ri;st=new WeakMap});var Qn=y(()=>{\\\"use strict\\\";Vl();Ql();Mn();Tn();Kt();jl();Gn()});function Et(e,t){return e instanceof t}function rf(e){return Et(e,Me)||Et(e,Dt)||Et(e,Ne)||Et(e,Pe)||Et(e,B)||Et(e,$e)||Et(e,Ae)}var es=y(()=>{\\\"use strict\\\";Qn()});function nf(e,t,r){if(t.is(Me))return e.traverseGrouping(t,r);if(t.is(B))return e.traverseMove(t,r);if(t.is(Ne))return e.traverseCommutator(t,r);if(t.is(Pe))return e.traverseConjugate(t,r);if(t.is(Ae))return e.traversePause(t,r);if(t.is($e))return e.traverseNewline(t,r);if(t.is(Dt))return e.traverseLineComment(t,r);throw new Error(\\\"unknown AlgNode\\\")}function lf(e){if(e.is(Me)||e.is(B)||e.is(Ne)||e.is(Pe)||e.is(Ae)||e.is($e)||e.is(Dt))return e;throw new Error(\\\"internal error: expected AlgNode\\\")}var Dr,tn,ts=y(()=>{\\\"use strict\\\";Mn();Tn();Vl();Ql();Kt();jl();Gn();Dr=class{traverseAlgNode(t,r){return nf(this,t,r)}traverseIntoAlgNode(t,r){return lf(this.traverseAlgNode(t,r))}},tn=class extends Dr{traverseAlgNode(t){return nf(this,t,void 0)}traverseIntoAlgNode(t){return lf(this.traverseAlgNode(t))}}});var fL,of,jn,rs=y(()=>{\\\"use strict\\\";fL=\\\"any-direction\\\",of=\\\"canonical-centered\\\",jn=class{constructor(t={}){this.config=t}cancelQuantum(){let{cancel:t}=this.config;return t===!0?fL:t===!1?\\\"none\\\":t?.directional??\\\"none\\\"}cancelAny(){return this.config.cancel&&this.cancelQuantum()!==\\\"none\\\"}cancelPuzzleSpecificModWrap(){let{cancel:t}=this.config;return t===!0||t===!1?of:t?.puzzleSpecificModWrap??of}puzzleSpecificSimplifyOptions(){return this.config.puzzleLoader?.puzzleSpecificSimplifyOptions??this.config.puzzleSpecificSimplifyOptions}}});function uL(e,t){return e*Math.sign(t.amount)>=0}function pL(e,t,r){return((e-r)%t+t)%t+r}function ns(e,t,r){let n=new jn(r),l=Array.from(e.childAlgNodes()),o=[t];function i(){return new E([...l,...o])}function a(s){if(n.cancelPuzzleSpecificModWrap()===\\\"none\\\")return s;let f=n.puzzleSpecificSimplifyOptions()?.quantumMoveOrder;if(!f)return s;let u=f(t.quantum),p;switch(n.cancelPuzzleSpecificModWrap()){case\\\"gravity\\\":{p=-Math.floor((u-(s.amount<0?0:1))/2);break}case\\\"canonical-centered\\\":{p=-Math.floor((u-1)/2);break}case\\\"canonical-positive\\\":{p=0;break}case\\\"preserve-sign\\\":{p=s.amount<0?1-u:0;break}default:throw new Error(\\\"Unknown mod wrap\\\")}let g=pL(s.amount,u,p);return s.modified({amount:g})}if(n.cancelAny()){let s,f=n.puzzleSpecificSimplifyOptions()?.axis;if(f)s=L=>f.areQuantumMovesSameAxis(t.quantum,L.quantum);else{let L=t.quantum.toString();s=m=>m.quantum.toString()===L}let u=n.cancelQuantum()===\\\"same-direction\\\",p=new Map;p.set(t.quantum.toString(),Math.sign(t.amount));let g;for(g=l.length-1;g>=0;g--){let L=l[g].as(B);if(!L||!s(L))break;let m=L.quantum.toString();if(u){let d=p.get(m);if(d&&!uL(d,L))break;p.set(m,Math.sign(L.amount))}}let c=[...l.splice(g+1),t];if(f)o=f.simplifySameAxisMoves(c,n.cancelPuzzleSpecificModWrap()!==\\\"none\\\");else{let L=c.reduce((m,d)=>m+d.amount,0);if(p.size!==1)throw new Error(\\\"Internal error: multiple quantums when one was expected\\\");o=[new B(t.quantum,L)]}}return o=o.map(s=>a(s)).filter(s=>s.amount!==0),i()}function ls(e,t,r){let n=t.as(B);return n?ns(e,n,r):new E([...e.childAlgNodes(),t])}var os=y(()=>{\\\"use strict\\\";Wt();Kt();rs()});var ni,Xl,as,rn,Hl,Zl,ss,is,af,fs,us=y(()=>{\\\"use strict\\\";Wt();Mn();Tn();Vl();Kt();Gn();ts();os();rs();is=class extends Dr{constructor(){super(...arguments);J(this,Xl);J(this,rn);J(this,Zl);J(this,ni,void 0)}*traverseAlg(r,n){if(n.depth===0){yield*r.childAlgNodes();return}let l=[],o=$t(this,rn,Hl).call(this,n);for(let i of r.childAlgNodes())for(let a of this.traverseAlgNode(i,o))l=Array.from(ls(new E(l),a,o).childAlgNodes());for(let i of l)yield i}*traverseGrouping(r,n){if(n.depth===0){yield r;return}if(r.amount===0)return;let l=new Me(this.traverseAlg(r.alg,$t(this,rn,Hl).call(this,n)),r.amount);if(l.alg.experimentalIsEmpty())return;let o=$t(this,Xl,as).call(this).get(r);o&&(l.experimentalNISSPlaceholder=o,o.experimentalNISSGrouping=l),yield l}*traverseMove(r,n){yield r}*traverseCommutator(r,n){if(n.depth===0){yield r;return}let l=$t(this,rn,Hl).call(this,n),o=new Ne(this.traverseAlg(r.A,l),this.traverseAlg(r.B,l));o.A.experimentalIsEmpty()||o.B.experimentalIsEmpty()||o.A.isIdentical(o.B)||o.A.isIdentical(o.B.invert())||$t(this,Zl,ss).call(this,o.A,o.B,n)||(yield o)}*traverseConjugate(r,n){if(n.depth===0){yield r;return}let l=$t(this,rn,Hl).call(this,n),o=new Pe(this.traverseAlg(r.A,l),this.traverseAlg(r.B,l));if(!o.B.experimentalIsEmpty()){if(o.A.experimentalIsEmpty()||o.A.isIdentical(o.B)||o.A.isIdentical(o.B.invert())||$t(this,Zl,ss).call(this,o.A,o.B,n)){yield*r.B.childAlgNodes();return}yield o}}*traversePause(r,n){if(r.experimentalNISSGrouping){let l=new Ae;$t(this,Xl,as).call(this).set(r.experimentalNISSGrouping,l),yield l}else yield r}*traverseNewline(r,n){yield r}*traverseLineComment(r,n){yield r}};ni=new WeakMap,Xl=new WeakSet,as=function(){return R(this,ni)??V(this,ni,new Map)},rn=new WeakSet,Hl=function(r){return{...r,depth:r.depth?r.depth-1:null}},Zl=new WeakSet,ss=function(r,n,l){if(r.experimentalNumChildAlgNodes()===1&&n.experimentalNumChildAlgNodes()===1){let o=Array.from(r.childAlgNodes())[0]?.as(B),i=Array.from(n.childAlgNodes())[0]?.as(B);if(!(o&&i))return!1;if(i.quantum.isIdentical(o.quantum)||new jn(l).puzzleSpecificSimplifyOptions()?.axis?.areQuantumMovesSameAxis(o.quantum,i.quantum))return!0}return!1};af=new is,fs=af.traverseAlg.bind(af)});function sf(e){if(!e)return[];if(Et(e,E))return e.childAlgNodes();if(typeof e==\\\"string\\\")return Xa(e).childAlgNodes();let t=e;if(typeof t[Symbol.iterator]==\\\"function\\\")return t;throw new Error(\\\"Invalid AlgNode\\\")}function hr(e){return Et(e,E)?e:new E(e)}function gL(e,t){return e.is($e)||t.is($e)||t.as(Me)?.experimentalNISSPlaceholder?\\\"\\\":e.is(Dt)&&!t.is($e)?`\\n`:\\\" \\\"}var ft,nn,E,Wt=y(()=>{\\\"use strict\\\";er();es();Gt();Za();us();Qn();Ql();Kt();jl();Ja();nn=class extends Te{constructor(r){super();J(this,ft,void 0);V(this,ft,Array.from(sf(r)));for(let n of R(this,ft))if(!rf(n))throw new Error(\\\"An alg can only contain alg nodes.\\\")}isIdentical(r){let n=r;if(!r.is(nn))return!1;let l=Array.from(R(this,ft)),o=Array.from(R(n,ft));if(l.length!==o.length)return!1;for(let i=0;i<l.length;i++)if(!l[i].isIdentical(o[i]))return!1;return!0}invert(){return new nn(H2(Array.from(R(this,ft)).map(r=>r.invert())))}*experimentalExpand(r=1,n){n??(n=1/0);for(let l of V2(R(this,ft),r))yield*l.experimentalExpand(r,n)}expand(r){return new nn(this.experimentalExpand(1,r?.depth??1/0))}*experimentalLeafMoves(){for(let r of this.experimentalExpand())r.is(B)&&(yield r)}concat(r){return new nn(Array.from(R(this,ft)).concat(Array.from(sf(r))))}experimentalIsEmpty(){for(let r of R(this,ft))return!1;return!0}static fromString(r){return Xa(r)}units(){return this.childAlgNodes()}*childAlgNodes(){for(let r of R(this,ft))yield r}experimentalNumUnits(){return this.experimentalNumChildAlgNodes()}experimentalNumChildAlgNodes(){return Array.from(R(this,ft)).length}get type(){return $o(\\\"deprecated: type\\\"),\\\"sequence\\\"}toString(){let r=\\\"\\\",n=null;for(let l of R(this,ft)){n&&(r+=gL(n,l));let o=l.as(Ae)?.experimentalNISSGrouping;if(o){if(o.amount!==-1)throw new Error(\\\"Invalid NISS Grouping amount!\\\");r+=`^(${o.alg.toString()})`}else l.as(Me)?.experimentalNISSPlaceholder||(r+=l.toString());n=l}return r}experimentalSimplify(r){return new nn(fs(this,r??{}))}simplify(r){return this.experimentalSimplify(r)}},E=nn;ft=new WeakMap});var cL,ff=y(()=>{\\\"use strict\\\";Wt();Qn();Mn();Tn();Kt();Gn();cL={Sune:new E([new B(\\\"R\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",-1),new B(\\\"U\\\",1),new B(\\\"R\\\",1),new B(\\\"U\\\",-2),new B(\\\"R\\\",-1)]),AntiSune:new E([new B(\\\"R\\\",1),new B(\\\"U\\\",2),new B(\\\"R\\\",-1),new B(\\\"U\\\",-1),new B(\\\"R\\\",1),new B(\\\"U\\\",-1),new B(\\\"R\\\",-1)]),SuneCommutator:new E([new Ne(new E([new B(\\\"R\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",-2)]),new E([new Pe(new E([new B(\\\"R\\\",1)]),new E([new B(\\\"U\\\",1)]))]))]),Niklas:new E([new B(\\\"R\\\",1),new B(\\\"U\\\",-1),new B(\\\"L\\\",-1),new B(\\\"U\\\",1),new B(\\\"R\\\",-1),new B(\\\"U\\\",-1),new B(\\\"L\\\",1),new B(\\\"U\\\",1)]),EPerm:new E([new B(\\\"x\\\",-1),new Ne(new E([new Pe(new E([new B(\\\"R\\\",1)]),new E([new B(\\\"U\\\",-1)]))]),new E([new B(\\\"D\\\",1)])),new Ne(new E([new Pe(new E([new B(\\\"R\\\",1)]),new E([new B(\\\"U\\\",1)]))]),new E([new B(\\\"D\\\",1)])),new B(\\\"x\\\",1)]),FURURFCompact:new E([new Pe(new E([new B(\\\"F\\\",1)]),new E([new Ne(new E([new B(\\\"U\\\",1)]),new E([new B(\\\"R\\\",1)]))]))]),APermCompact:new E([new Pe(new E([new B(\\\"R\\\",2)]),new E([new Ne(new E([new B(\\\"F\\\",2)]),new E([new B(\\\"R\\\",-1),new B(\\\"B\\\",-1),new B(\\\"R\\\",1)]))]))]),FURURFMoves:new E([new B(\\\"F\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",1),new B(\\\"U\\\",-1),new B(\\\"R\\\",-1),new B(\\\"F\\\",-1)]),TPerm:new E([new B(\\\"R\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",-1),new B(\\\"U\\\",-1),new B(\\\"R\\\",-1),new B(\\\"F\\\",1),new B(\\\"R\\\",2),new B(\\\"U\\\",-1),new B(\\\"R\\\",-1),new B(\\\"U\\\",-1),new B(\\\"R\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",-1),new B(\\\"F\\\",-1)]),HeadlightSwaps:new E([new Pe(new E([new B(\\\"F\\\",1)]),new E([new Me(new E([new Ne(new E([new B(\\\"R\\\",1)]),new E([new B(\\\"U\\\",1)]))]),3)]))]),TriplePause:new E([new Ae,new Ae,new Ae])}});var Sy,uf=y(()=>{\\\"use strict\\\";Qn();Kt();Sy={73:new B(\\\"R\\\"),75:new B(\\\"R'\\\"),87:new B(\\\"B\\\"),79:new B(\\\"B'\\\"),83:new B(\\\"D\\\"),76:new B(\\\"D'\\\"),68:new B(\\\"L\\\"),69:new B(\\\"L'\\\"),74:new B(\\\"U\\\"),70:new B(\\\"U'\\\"),72:new B(\\\"F\\\"),71:new B(\\\"F'\\\"),78:new B(\\\"x'\\\"),67:new B(\\\"l\\\"),82:new B(\\\"l'\\\"),85:new B(\\\"r\\\"),77:new B(\\\"r'\\\"),88:new B(\\\"d\\\"),188:new B(\\\"d'\\\"),84:new B(\\\"x\\\"),89:new B(\\\"x\\\"),66:new B(\\\"x'\\\"),186:new B(\\\"y\\\"),59:new B(\\\"y\\\"),65:new B(\\\"y'\\\"),80:new B(\\\"z\\\"),81:new B(\\\"z'\\\"),90:new B(\\\"M'\\\"),190:new B(\\\"M'\\\"),192:new Ae}});var pf=y(()=>{\\\"use strict\\\"});var gf=y(()=>{\\\"use strict\\\";us();os()});var me=y(()=>{\\\"use strict\\\";Wt();qa();ts();ff();uf();Qn();pf();gf();es();Va()});function Yl(e,t,r){let n={};for(let l in e.orbits){let o=e.orbits[l],i=t[l],a=r[l];if(Jl(o.numOrientations,a))n[l]=i;else if(Jl(o.numOrientations,i))n[l]=a;else{let s=new Array(o.numPieces);if(o.numOrientations===1){for(let f=0;f<o.numPieces;f++)s[f]=i.permutation[a.permutation[f]];n[l]={permutation:s,orientation:i.orientation}}else{let f=new Array(o.numPieces);for(let u=0;u<o.numPieces;u++)f[u]=(i.orientation[a.permutation[u]]+a.orientation[u])%o.numOrientations,s[u]=i.permutation[a.permutation[u]];n[l]={permutation:s,orientation:f}}}}return n}function ps(e,t,r){let n={};for(let l in e.orbits){let o=e.orbits[l],i=t[l],a=r[l];if(Jl(o.numOrientations,a))n[l]=i;else{let s=new Array(o.numPieces);if(o.numOrientations===1){for(let f=0;f<o.numPieces;f++)s[f]=i.pieces[a.permutation[f]];n[l]={pieces:s,orientation:i.orientation}}else{let f=new Array(o.numPieces);for(let u=0;u<o.numPieces;u++)f[u]=(i.orientation[a.permutation[u]]+a.orientation[u])%o.numOrientations,s[u]=i.pieces[a.permutation[u]];n[l]={pieces:s,orientation:f}}}}return n}var li=y(()=>{\\\"use strict\\\";$l()});function mL(e){let t=cf.get(e);if(t)return t;let r=new Array(e),n=new Array(e);for(let o=0;o<e;o++)r[o]=o,n[o]=0;let l={permutation:r,orientation:n};return mf&&(Object.freeze(r),Object.freeze(n),Object.freeze(l)),cf.set(e,l),l}function Lf(e){let t={};for(let[r,n]of Object.entries(e.orbits))t[r]=mL(n.numPieces);return mf&&Object.freeze(t),t}function Bf(e,t){let r=t.quantum.toString(),n=e.definition.moves[r];if(!n){let i=e.definition.experimentalDerivedMoves?.[r];i&&(n=e.algToTransformation(i).transformationData)}if(n)return Ar(e,n,t.amount);let l=e.definition.moves[t.toString()];if(l)return l;let o=e.definition.moves[t.invert().toString()];if(o)return Ar(e,o,-1);throw new Error(`Invalid move for KPuzzle (${e.name()}): ${t}`)}var mf,cf,gs=y(()=>{\\\"use strict\\\";$l();mf=!1,cf=new Map});var pe,oi=y(()=>{\\\"use strict\\\";li();eo();pe=class{constructor(t,r){this.kpuzzle=t;this.stateData=r}toJSON(){return{experimentalPuzzleName:this.kpuzzle.name(),stateData:this.stateData}}static fromTransformation(t){let r=ps(t.kpuzzle.definition,t.kpuzzle.definition.startStateData,t.transformationData);return new pe(t.kpuzzle,r)}apply(t){return this.applyTransformation(this.kpuzzle.toTransformation(t))}applyTransformation(t){if(t.isIdentityTransformation())return new pe(this.kpuzzle,this.stateData);let r=ps(this.kpuzzle.definition,this.stateData,t.transformationData);return new pe(this.kpuzzle,r)}applyMove(t){return this.applyTransformation(this.kpuzzle.moveToTransformation(t))}applyAlg(t){return this.applyTransformation(this.kpuzzle.algToTransformation(t))}experimentalToTransformation(){if(!this.kpuzzle.canConvertStateToUniqueTransformation())return null;let t={};for(let[r,n]of Object.entries(this.stateData)){let l={permutation:n.pieces,orientation:n.orientation};t[r]=l}return new At(this.kpuzzle,t)}experimentalIsSolved(t){if(!this.kpuzzle.definition.experimentalIsStateSolved)throw new Error(\\\"`KState.experimentalIsSolved()` is not supported for this puzzle at the moment.\\\");return this.kpuzzle.definition.experimentalIsStateSolved(this,t)}}});var ln,yr,At,eo=y(()=>{\\\"use strict\\\";$l();li();gs();oi();yr=class{constructor(t,r){this.kpuzzle=t;this.transformationData=r;J(this,ln,void 0)}toJSON(){return{experimentalPuzzleName:this.kpuzzle.name(),transformationData:this.transformationData}}invert(){return new yr(this.kpuzzle,cs(this.kpuzzle,this.transformationData))}isIdentityTransformation(){return R(this,ln)??V(this,ln,this.isIdentical(this.kpuzzle.identityTransformation()))}static experimentalConstructIdentity(t){let r=new yr(t,Lf(t.definition));return V(r,ln,!0),r}isIdentical(t){return df(this.kpuzzle,this.transformationData,t.transformationData)}apply(t){return this.applyTransformation(this.kpuzzle.toTransformation(t))}applyTransformation(t){if(this.kpuzzle!==t.kpuzzle)throw new Error(`Tried to apply a transformation for a KPuzzle (${t.kpuzzle.name()}) to a different KPuzzle (${this.kpuzzle.name()}).`);return R(this,ln)?new yr(this.kpuzzle,t.transformationData):R(t,ln)?new yr(this.kpuzzle,this.transformationData):new yr(this.kpuzzle,Yl(this.kpuzzle.definition,this.transformationData,t.transformationData))}applyMove(t){return this.applyTransformation(this.kpuzzle.moveToTransformation(t))}applyAlg(t){return this.applyTransformation(this.kpuzzle.algToTransformation(t))}toKState(){return pe.fromTransformation(this)}repetitionOrder(){return Rf(this.kpuzzle.definition,this)}selfMultiply(t){return new yr(this.kpuzzle,Ar(this.kpuzzle,this.transformationData,t))}},At=yr;ln=new WeakMap});function Jl(e,t){let{permutation:r}=t,n=r.length;for(let l=0;l<n;l++)if(r[l]!==l)return!1;if(e>1){let{orientation:l}=t;for(let o=0;o<n;o++)if(l[o]!==0)return!1}return!0}function LL(e,t,r,n={}){for(let l=0;l<e.numPieces;l++)if(!n?.ignoreOrientation&&t.orientation[l]!==r.orientation[l]||!n?.ignorePermutation&&t.permutation[l]!==r.permutation[l])return!1;return!0}function df(e,t,r){for(let[n,l]of Object.entries(e.definition.orbits))if(!LL(l,t[n],r[n]))return!1;return!0}function cs(e,t){let r={};for(let n in e.definition.orbits){let l=e.definition.orbits[n],o=t[n];if(Jl(l.numOrientations,o))r[n]=o;else if(l.numOrientations===1){let i=new Array(l.numPieces);for(let a=0;a<l.numPieces;a++)i[o.permutation[a]]=a;r[n]={permutation:i,orientation:o.orientation}}else{let i=new Array(l.numPieces),a=new Array(l.numPieces);for(let s=0;s<l.numPieces;s++){let f=o.permutation[s];i[f]=s,a[f]=(l.numOrientations-o.orientation[s]+l.numOrientations)%l.numOrientations}r[n]={permutation:i,orientation:a}}}return r}function Ar(e,t,r){if(r===1)return t;if(r<0)return Ar(e,cs(e,t),-r);if(r===0){let{transformationData:o}=e.identityTransformation();return o}let n=t;r!==2&&(n=Ar(e,t,Math.floor(r/2)));let l=Yl(e.definition,n,n);return r%2===0?l:Yl(e.definition,t,l)}function Ls(e,t){return t?Ls(t,e%t):e}function Rf(e,t){let r=1;for(let n in e.orbits){let l=e.orbits[n],o=t.transformationData[n],i=new Array(l.numPieces);for(let a=0;a<l.numPieces;a++)if(!i[a]){let s=a,f=0,u=0;for(;i[s]=!0,f=f+o.orientation[s],u=u+1,s=o.permutation[s],s!==a;);f!==0&&(u=u*l.numOrientations/Ls(l.numOrientations,Math.abs(f))),r=r*u/Ls(r,u)}}return r}var ms,hf,Ff,$l=y(()=>{\\\"use strict\\\";me();li();eo();ms=class extends Dr{traverseAlg(t,r){let n=null;for(let l of t.childAlgNodes())n?n=n.applyTransformation(this.traverseAlgNode(l,r)):n=this.traverseAlgNode(l,r);return n??r.identityTransformation()}traverseGrouping(t,r){let n=this.traverseAlg(t.alg,r);return new At(r,Ar(r,n.transformationData,t.amount))}traverseMove(t,r){return r.moveToTransformation(t)}traverseCommutator(t,r){let n=this.traverseAlg(t.A,r),l=this.traverseAlg(t.B,r);return n.applyTransformation(l).applyTransformation(n.invert()).applyTransformation(l.invert())}traverseConjugate(t,r){let n=this.traverseAlg(t.A,r),l=this.traverseAlg(t.B,r);return n.applyTransformation(l).applyTransformation(n.invert())}traversePause(t,r){return r.identityTransformation()}traverseNewline(t,r){return r.identityTransformation()}traverseLineComment(t,r){return r.identityTransformation()}},hf=new ms,Ff=hf.traverseAlg.bind(hf)});var qn,ii,ye,Df=y(()=>{\\\"use strict\\\";me();$l();gs();oi();eo();ye=class{constructor(t,r){this.definition=t;J(this,qn,new Map);J(this,ii,void 0);this.experimentalPGNotation=r?.experimentalPGNotation}name(){return this.definition.name}identityTransformation(){return At.experimentalConstructIdentity(this)}moveToTransformation(t){typeof t==\\\"string\\\"&&(t=new B(t));let r=t.toString(),n=R(this,qn).get(r);if(n)return new At(this,n);if(this.experimentalPGNotation){let o=this.experimentalPGNotation.lookupMove(t);if(!o)throw new Error(`could not map to internal move: ${t}`);return R(this,qn).set(r,o),new At(this,o)}let l=Bf(this,t);return R(this,qn).set(r,l),new At(this,l)}algToTransformation(t){return typeof t==\\\"string\\\"&&(t=new E(t)),Ff(t,this)}toTransformation(t){return typeof t==\\\"string\\\"?this.algToTransformation(t):t?.is?.(E)?this.algToTransformation(t):t?.is?.(B)?this.moveToTransformation(t):t}startState(){return new pe(this,this.definition.startStateData)}canConvertStateToUniqueTransformation(){return R(this,ii)??V(this,ii,(()=>{for(let[t,r]of Object.entries(this.definition.orbits)){let n=new Array(r.numPieces).fill(!1);for(let l of this.definition.startStateData[t].pieces)n[l]=!0;for(let l of n)if(!l)return!1}return!0})())}};qn=new WeakMap,ii=new WeakMap});var Xe=y(()=>{\\\"use strict\\\";Df();oi();eo()});var Af,BL,yf=y(()=>{\\\"use strict\\\";Af={333:{puzzleID:\\\"3x3x3\\\",eventName:\\\"3x3x3 Cube\\\"},222:{puzzleID:\\\"2x2x2\\\",eventName:\\\"2x2x2 Cube\\\"},444:{puzzleID:\\\"4x4x4\\\",eventName:\\\"4x4x4 Cube\\\"},555:{puzzleID:\\\"5x5x5\\\",eventName:\\\"5x5x5 Cube\\\"},666:{puzzleID:\\\"6x6x6\\\",eventName:\\\"6x6x6 Cube\\\"},777:{puzzleID:\\\"7x7x7\\\",eventName:\\\"7x7x7 Cube\\\"},\\\"333bf\\\":{puzzleID:\\\"3x3x3\\\",eventName:\\\"3x3x3 Blindfolded\\\"},\\\"333fm\\\":{puzzleID:\\\"3x3x3\\\",eventName:\\\"3x3x3 Fewest Moves\\\"},\\\"333oh\\\":{puzzleID:\\\"3x3x3\\\",eventName:\\\"3x3x3 One-Handed\\\"},clock:{puzzleID:\\\"clock\\\",eventName:\\\"Clock\\\"},minx:{puzzleID:\\\"megaminx\\\",eventName:\\\"Megaminx\\\"},pyram:{puzzleID:\\\"pyraminx\\\",eventName:\\\"Pyraminx\\\"},skewb:{puzzleID:\\\"skewb\\\",eventName:\\\"Skewb\\\"},sq1:{puzzleID:\\\"square1\\\",eventName:\\\"Square-1\\\"},\\\"444bf\\\":{puzzleID:\\\"4x4x4\\\",eventName:\\\"4x4x4 Blindfolded\\\"},\\\"555bf\\\":{puzzleID:\\\"5x5x5\\\",eventName:\\\"5x5x5 Blindfolded\\\"},\\\"333mb\\\":{puzzleID:\\\"3x3x3\\\",eventName:\\\"3x3x3 Multi-Blind\\\"}},BL={...Af,fto:{puzzleID:\\\"fto\\\",eventName:\\\"Face-Turning Octahedron\\\"},master_tetraminx:{puzzleID:\\\"master_tetraminx\\\",eventName:\\\"Master Tetraminx\\\"},kilominx:{puzzleID:\\\"kilominx\\\",eventName:\\\"Kilominx\\\"},redi_cube:{puzzleID:\\\"redi_cube\\\",eventName:\\\"Redi Cube\\\"}}});function xL(e){switch(e){case\\\"Regular\\\":return dL;case\\\"Dim\\\":return yL;case\\\"Ignored\\\":return RL;case\\\"OrientationStickers\\\":return hL;case\\\"Invisible\\\":return FL;case\\\"IgnoreNonPrimary\\\":return DL;case\\\"PermuteNonPrimary\\\":return AL;case\\\"Ignoriented\\\":return vL;case\\\"OrientationWithoutPermutation\\\":return SL}}var rr,Qt,Ze,Vn,ai,on,dL,RL,hL,FL,DL,AL,yL,vL,SL,Hn,Xn,si=y(()=>{\\\"use strict\\\";rr=class{constructor(t,r){this.stickerings=new Map;for(let[n,l]of Object.entries(t.definition.orbits))this.stickerings.set(n,new Array(l.numPieces).fill(r))}},Qt=\\\"regular\\\",Ze=\\\"ignored\\\",Vn=\\\"oriented\\\",ai=\\\"invisible\\\",on=\\\"dim\\\",dL={facelets:[Qt,Qt,Qt,Qt,Qt]},RL={facelets:[Ze,Ze,Ze,Ze,Ze]},hL={facelets:[Vn,Vn,Vn,Vn,Vn]},FL={facelets:[ai,ai,ai,ai]},DL={facelets:[Qt,Ze,Ze,Ze,Ze]},AL={facelets:[on,Qt,Qt,Qt,Qt]},yL={facelets:[on,on,on,on,on]},vL={facelets:[on,Ze,Ze,Ze,Ze]},SL={facelets:[Vn,Ze,Ze,Ze,Ze]};Hn=class extends rr{constructor(t){super(t,\\\"Regular\\\")}set(t,r){for(let[n,l]of this.stickerings.entries())for(let o=0;o<l.length;o++)t.stickerings.get(n)[o]&&(l[o]=r);return this}toAppearance(){let t={orbits:{}};for(let[r,n]of this.stickerings.entries()){let l=[],o={pieces:l};t.orbits[r]=o;for(let i of n)l.push(xL(i))}return t}},Xn=class{constructor(t){this.kpuzzle=t}and(t){let r=new rr(this.kpuzzle,!1);for(let[n,l]of Object.entries(this.kpuzzle.definition.orbits)){e:for(let o=0;o<l.numPieces;o++){r.stickerings.get(n)[o]=!0;for(let i of t)if(!i.stickerings.get(n)[o]){r.stickerings.get(n)[o]=!1;continue e}}}return r}or(t){let r=new rr(this.kpuzzle,!1);for(let[n,l]of Object.entries(this.kpuzzle.definition.orbits)){e:for(let o=0;o<l.numPieces;o++){r.stickerings.get(n)[o]=!1;for(let i of t)if(i.stickerings.get(n)[o]){r.stickerings.get(n)[o]=!0;continue e}}}return r}not(t){let r=new rr(this.kpuzzle,!1);for(let[n,l]of Object.entries(this.kpuzzle.definition.orbits))for(let o=0;o<l.numPieces;o++)r.stickerings.get(n)[o]=!t.stickerings.get(n)[o];return r}all(){return this.and(this.moves([]))}move(t){let r=this.kpuzzle.moveToTransformation(t),n=new rr(this.kpuzzle,!1);for(let[l,o]of Object.entries(this.kpuzzle.definition.orbits))for(let i=0;i<o.numPieces;i++)(r.transformationData[l].permutation[i]!==i||r.transformationData[l].orientation[i]!==0)&&(n.stickerings.get(l)[i]=!0);return n}moves(t){return t.map(r=>this.move(r))}orbits(t){let r=new rr(this.kpuzzle,!1);for(let n of t)r.stickerings.get(n).fill(!0);return r}orbitPrefix(t){let r=new rr(this.kpuzzle,!1);for(let n in this.kpuzzle.definition.orbits)n.startsWith(t)&&r.stickerings.get(n).fill(!0);return r}}});var Bs,ds=y(()=>{\\\"use strict\\\";Bs={full:{groups:{\\\"3x3x3\\\":\\\"Stickering\\\"}},OLL:{groups:{\\\"3x3x3\\\":\\\"Last Layer\\\"}},PLL:{groups:{\\\"3x3x3\\\":\\\"Last Layer\\\"}},LL:{groups:{\\\"3x3x3\\\":\\\"Last Layer\\\"}},COLL:{groups:{\\\"3x3x3\\\":\\\"Last Layer\\\"}},OCLL:{groups:{\\\"3x3x3\\\":\\\"Last Layer\\\"}},CLL:{groups:{\\\"3x3x3\\\":\\\"Last Layer\\\"}},ELL:{groups:{\\\"3x3x3\\\":\\\"Last Layer\\\"}},ZBLL:{groups:{\\\"3x3x3\\\":\\\"Last Layer\\\"}},LS:{groups:{\\\"3x3x3\\\":\\\"Last Slot\\\"}},ELS:{groups:{\\\"3x3x3\\\":\\\"Last Slot\\\"}},CLS:{groups:{\\\"3x3x3\\\":\\\"Last Slot\\\"}},ZBLS:{groups:{\\\"3x3x3\\\":\\\"Last Slot\\\"}},VLS:{groups:{\\\"3x3x3\\\":\\\"Last Slot\\\"}},WVLS:{groups:{\\\"3x3x3\\\":\\\"Last Slot\\\"}},F2L:{groups:{\\\"3x3x3\\\":\\\"CFOP (Fridrich)\\\"}},Daisy:{groups:{\\\"3x3x3\\\":\\\"CFOP (Fridrich)\\\"}},Cross:{groups:{\\\"3x3x3\\\":\\\"CFOP (Fridrich)\\\"}},EO:{groups:{\\\"3x3x3\\\":\\\"ZZ\\\"}},EOline:{groups:{\\\"3x3x3\\\":\\\"ZZ\\\"}},EOcross:{groups:{\\\"3x3x3\\\":\\\"ZZ\\\"}},CMLL:{groups:{\\\"3x3x3\\\":\\\"Roux\\\"}},L10P:{groups:{\\\"3x3x3\\\":\\\"Roux\\\"}},L6E:{groups:{\\\"3x3x3\\\":\\\"Roux\\\"}},L6EO:{groups:{\\\"3x3x3\\\":\\\"Roux\\\"}},\\\"2x2x2\\\":{groups:{\\\"3x3x3\\\":\\\"Petrus\\\"}},\\\"2x2x3\\\":{groups:{\\\"3x3x3\\\":\\\"Petrus\\\"}},\\\"Void Cube\\\":{groups:{\\\"3x3x3\\\":\\\"Miscellaneous\\\"}},invisible:{groups:{\\\"3x3x3\\\":\\\"Miscellaneous\\\"}},picture:{groups:{\\\"3x3x3\\\":\\\"Miscellaneous\\\"}},\\\"centers-only\\\":{groups:{\\\"3x3x3\\\":\\\"Miscellaneous\\\"}},\\\"experimental-centers-U\\\":{},\\\"experimental-centers-U-D\\\":{},\\\"experimental-centers-U-L-D\\\":{},\\\"experimental-centers-U-L-B-D\\\":{},\\\"experimental-centers\\\":{},\\\"experimental-fto-fc\\\":{groups:{fto:\\\"Bencisco\\\"}},\\\"experimental-fto-f2t\\\":{groups:{fto:\\\"Bencisco\\\"}},\\\"experimental-fto-sc\\\":{groups:{fto:\\\"Bencisco\\\"}},\\\"experimental-fto-l2c\\\":{groups:{fto:\\\"Bencisco\\\"}},\\\"experimental-fto-lbt\\\":{groups:{fto:\\\"Bencisco\\\"}},\\\"experimental-fto-l3t\\\":{groups:{fto:\\\"Bencisco\\\"}}}});async function nr(e,t){let r=await e.kpuzzle(),n=new Hn(r),l=new Xn(r),o=()=>l.move(\\\"U\\\"),i=()=>l.or(l.moves([\\\"U\\\",\\\"D\\\"])),a=()=>l.or(l.moves([\\\"L\\\",\\\"R\\\"])),s=()=>l.not(a()),f=()=>l.not(o()),u=()=>l.orbitPrefix(\\\"CENTER\\\"),p=()=>l.orbitPrefix(\\\"EDGE\\\"),g=()=>l.or([l.orbitPrefix(\\\"CORNER\\\"),l.orbitPrefix(\\\"C4RNER\\\"),l.orbitPrefix(\\\"C5RNER\\\")]),c=()=>l.or([s(),l.and([o(),p()])]),L=()=>l.and([o(),u()]),m=()=>l.and([l.and(l.moves([\\\"F\\\",\\\"R\\\"])),p()]),d=()=>l.and([l.and(l.moves([\\\"F\\\",\\\"R\\\"])),g(),l.not(o())]),F=()=>l.or([d(),m()]);function A(){n.set(f(),\\\"Dim\\\")}function v(){n.set(o(),\\\"PermuteNonPrimary\\\"),n.set(L(),\\\"Dim\\\")}function x(){n.set(o(),\\\"IgnoreNonPrimary\\\"),n.set(L(),\\\"Regular\\\")}function U(){n.set(o(),\\\"Ignoriented\\\"),n.set(L(),\\\"Dim\\\")}switch(t){case\\\"full\\\":break;case\\\"PLL\\\":{A(),v();break}case\\\"CLS\\\":{A(),n.set(d(),\\\"Regular\\\"),n.set(o(),\\\"Ignoriented\\\"),n.set(l.and([o(),u()]),\\\"Dim\\\"),n.set(l.and([o(),g()]),\\\"IgnoreNonPrimary\\\");break}case\\\"OLL\\\":{A(),x();break}case\\\"COLL\\\":{A(),n.set(l.and([o(),p()]),\\\"Ignoriented\\\"),n.set(l.and([o(),u()]),\\\"Dim\\\"),n.set(l.and([o(),g()]),\\\"Regular\\\");break}case\\\"OCLL\\\":{A(),U(),n.set(l.and([o(),g()]),\\\"IgnoreNonPrimary\\\");break}case\\\"CLL\\\":{A(),n.set(l.not(l.and([g(),o()])),\\\"Dim\\\");break}case\\\"ELL\\\":{A(),n.set(o(),\\\"Dim\\\"),n.set(l.and([o(),p()]),\\\"Regular\\\");break}case\\\"ELS\\\":{A(),x(),n.set(l.and([o(),g()]),\\\"Ignored\\\"),n.set(m(),\\\"Regular\\\"),n.set(d(),\\\"Ignored\\\");break}case\\\"LL\\\":{A();break}case\\\"F2L\\\":{n.set(o(),\\\"Ignored\\\");break}case\\\"ZBLL\\\":{A(),n.set(o(),\\\"PermuteNonPrimary\\\"),n.set(L(),\\\"Dim\\\"),n.set(l.and([o(),g()]),\\\"Regular\\\");break}case\\\"ZBLS\\\":{A(),n.set(F(),\\\"Regular\\\"),x(),n.set(l.and([o(),g()]),\\\"Ignored\\\");break}case\\\"VLS\\\":{A(),n.set(F(),\\\"Regular\\\"),x();break}case\\\"WVLS\\\":{A(),n.set(F(),\\\"Regular\\\"),n.set(l.and([o(),p()]),\\\"Ignoriented\\\"),n.set(l.and([o(),u()]),\\\"Dim\\\"),n.set(l.and([o(),g()]),\\\"IgnoreNonPrimary\\\");break}case\\\"LS\\\":{A(),n.set(F(),\\\"Regular\\\"),n.set(o(),\\\"Ignored\\\"),n.set(L(),\\\"Dim\\\");break}case\\\"EO\\\":{n.set(g(),\\\"Ignored\\\"),n.set(p(),\\\"OrientationWithoutPermutation\\\");break}case\\\"EOline\\\":{n.set(g(),\\\"Ignored\\\"),n.set(p(),\\\"OrientationWithoutPermutation\\\"),n.set(l.and(l.moves([\\\"D\\\",\\\"M\\\"])),\\\"Regular\\\");break}case\\\"EOcross\\\":{n.set(p(),\\\"OrientationWithoutPermutation\\\"),n.set(l.move(\\\"D\\\"),\\\"Regular\\\"),n.set(g(),\\\"Ignored\\\");break}case\\\"CMLL\\\":{n.set(f(),\\\"Dim\\\"),n.set(c(),\\\"Ignored\\\"),n.set(l.and([o(),g()]),\\\"Regular\\\");break}case\\\"L10P\\\":{n.set(l.not(c()),\\\"Dim\\\"),n.set(l.and([g(),o()]),\\\"Regular\\\");break}case\\\"L6E\\\":{n.set(l.not(c()),\\\"Dim\\\");break}case\\\"L6EO\\\":{n.set(l.not(c()),\\\"Dim\\\"),n.set(c(),\\\"OrientationWithoutPermutation\\\"),n.set(l.and([u(),i()]),\\\"OrientationStickers\\\");break}case\\\"Daisy\\\":{n.set(l.all(),\\\"Ignored\\\"),n.set(u(),\\\"Dim\\\"),n.set(l.and([l.move(\\\"D\\\"),u()]),\\\"Regular\\\"),n.set(l.and([l.move(\\\"U\\\"),p()]),\\\"IgnoreNonPrimary\\\");break}case\\\"Cross\\\":{n.set(l.all(),\\\"Ignored\\\"),n.set(u(),\\\"Dim\\\"),n.set(l.and([l.move(\\\"D\\\"),u()]),\\\"Regular\\\"),n.set(l.and([l.move(\\\"D\\\"),p()]),\\\"Regular\\\");break}case\\\"2x2x2\\\":{n.set(l.or(l.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),\\\"Ignored\\\"),n.set(l.and([l.or(l.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),u()]),\\\"Dim\\\");break}case\\\"2x2x3\\\":{n.set(l.all(),\\\"Dim\\\"),n.set(l.or(l.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),\\\"Ignored\\\"),n.set(l.and([l.or(l.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),u()]),\\\"Dim\\\"),n.set(l.and([l.move(\\\"F\\\"),l.not(l.or(l.moves([\\\"U\\\",\\\"R\\\"])))]),\\\"Regular\\\");break}case\\\"Void Cube\\\":{n.set(u(),\\\"Invisible\\\");break}case\\\"picture\\\":case\\\"invisible\\\":{n.set(l.all(),\\\"Invisible\\\");break}case\\\"centers-only\\\":{n.set(l.not(u()),\\\"Ignored\\\");break}default:console.warn(`Unsupported stickering for ${e.id}: ${t}. Setting all pieces to dim.`),n.set(l.and(l.moves([])),\\\"Dim\\\")}return n.toAppearance()}async function Zn(){let e=[];for(let[t,r]of Object.entries(Bs))r.groups&&\\\"3x3x3\\\"in r.groups&&e.push(t);return e}var to=y(()=>{\\\"use strict\\\";si();ds()});function de(e){let t=null;return()=>t??(t=e())}var wt=y(()=>{\\\"use strict\\\"});var Jn,vf=y(()=>{\\\"use strict\\\";Jn=class{constructor(t,r){this.facenames=t;this.prefixFree=!0;this.gripnames=[];r&&(this.gripnames=r);for(let n=0;this.prefixFree&&n<t.length;n++)for(let l=0;this.prefixFree&&l<t.length;l++)n!==l&&t[n].startsWith(t[l])&&(this.prefixFree=!1)}setGripNames(t){this.gripnames=t}splitByFaceNames(t){let r=[],n=0;for(;n<t.length;){n>0&&n<t.length&&t[n]===\\\"_\\\"&&n++;let l=-1;for(let o=0;o<this.facenames.length;o++)t.substr(n).startsWith(this.facenames[o])&&(l<0||this.facenames[o].length>this.facenames[l].length)&&(l=o);if(l>=0)r.push(l),n+=this.facenames[l].length;else throw new Error(`Could not split ${t} into face names.`)}return r}joinByFaceIndices(t){let r=\\\"\\\",n=[];for(let l=0;l<t.length;l++)n.push(r),n.push(this.facenames[t[l]]),this.prefixFree||(r=\\\"_\\\");return n.join(\\\"\\\")}spinmatch(t,r){if(t===r)return!0;try{let n=this.splitByFaceNames(t),l=this.splitByFaceNames(r);if(n.length!==l.length&&n.length<3)return!1;for(let o=0;o<n.length;o++){for(let a=0;a<o;a++)if(n[o]===n[a])return!1;let i=!1;for(let a=0;a<l.length;a++)if(n[o]===l[a]){i=!0;break}if(!i)return!1}return!0}catch{return!1}}spinmatchv(t,r){return t.endsWith(\\\"v\\\")&&r.endsWith(\\\"v\\\")?this.spinmatch(t.slice(0,t.length-1),r.slice(0,r.length-1)):this.spinmatch(t,r)}unswizzle(t){(t.endsWith(\\\"v\\\")||t.endsWith(\\\"w\\\"))&&t[0]<=\\\"Z\\\"&&(t=t.slice(0,t.length-1));let r=t.toUpperCase();for(let n=0;n<this.gripnames.length;n++){let l=this.gripnames[n];if(this.spinmatch(r,l))return l}return t}}});var an,Sf=y(()=>{\\\"use strict\\\";an=class{notationToInternal(t){return t}notationToExternal(t){return t}}});var ro,xf=y(()=>{\\\"use strict\\\";me();ro=class{constructor(t,r){this.child=t;this.sw=r}notationToInternal(t){return t.family===\\\"T\\\"&&t.innerLayer===void 0&&t.outerLayer===void 0?new B(new k(\\\"FLRv\\\",t.innerLayer,t.outerLayer),t.amount):this.child.notationToInternal(t)}notationToExternal(t){let r=t.family;return r.length>0&&r[r.length-1]===\\\"v\\\"&&(r=r.substring(0,r.length-1)),this.sw.spinmatch(r,\\\"FLUR\\\")?new B(new k(\\\"T\\\",t.innerLayer,t.outerLayer),t.amount):this.child.notationToExternal(t)}}});var Yn,Uf=y(()=>{\\\"use strict\\\";me();Yn=class{constructor(t,r){this.internalNames=t;this.externalNames=r}convertString(t,r,n){let l=\\\"\\\";(t.endsWith(\\\"v\\\")||t.endsWith(\\\"v\\\"))&&t<=\\\"_\\\"&&(l=t.slice(t.length-1),t=t.slice(0,t.length-1));let o=t.toUpperCase(),i=!1;return t!==o&&(i=!0,t=o),t=n.joinByFaceIndices(r.splitByFaceNames(t)),i&&(t=t.toLowerCase()),t+l}convert(t,r,n){let l=t.family,o=this.convertString(l,r,n);return l===o?t:new B(new k(o,t.innerLayer,t.outerLayer),t.amount)}notationToInternal(t){return this.convert(t,this.externalNames,this.internalNames)}notationToExternal(t){return this.convert(t,this.internalNames,this.externalNames)}}});var no,bf=y(()=>{\\\"use strict\\\";me();no=class{constructor(t){this.child=t}notationToInternal(t){if(t.innerLayer===void 0&&t.outerLayer===void 0){if(Math.abs(t.amount)===1){if(t.family===\\\"R++\\\")return new B(new k(\\\"L\\\",3,2),-2*t.amount);if(t.family===\\\"R--\\\")return new B(new k(\\\"L\\\",3,2),2*t.amount);if(t.family===\\\"D++\\\")return new B(new k(\\\"U\\\",3,2),-2*t.amount);if(t.family===\\\"D--\\\")return new B(new k(\\\"U\\\",3,2),2*t.amount);if(t.family===\\\"R_PLUSPLUS_\\\")return new B(new k(\\\"L\\\",3,2),-2*t.amount);if(t.family===\\\"D_PLUSPLUS_\\\")return new B(new k(\\\"U\\\",3,2),-2*t.amount)}if(t.family===\\\"y\\\")return new B(\\\"Uv\\\",t.amount);if(t.family===\\\"x\\\"&&Math.abs(t.amount)===2)return new B(\\\"ERv\\\",t.amount/2)}return this.child.notationToInternal(t)}notationToExternal(t){return t.family===\\\"ERv\\\"&&Math.abs(t.amount)===1?new B(new k(\\\"x\\\",t.innerLayer,t.outerLayer),t.amount*2):t.family===\\\"ILv\\\"&&Math.abs(t.amount)===1?new B(new k(\\\"x\\\",t.innerLayer,t.outerLayer),-t.amount*2):t.family===\\\"Uv\\\"?new B(new k(\\\"y\\\",t.innerLayer,t.outerLayer),t.amount):t.family===\\\"Dv\\\"?new B(\\\"y\\\",-t.amount):this.child.notationToExternal(t)}}});var lo,Ef=y(()=>{\\\"use strict\\\";me();lo=class{constructor(t){this.slices=t}notationToInternal(t){let r=t.family;return t.innerLayer||t.outerLayer||(r===\\\"x\\\"?t=new B(\\\"Rv\\\",t.amount):r===\\\"y\\\"?t=new B(\\\"Uv\\\",t.amount):r===\\\"z\\\"&&(t=new B(\\\"Fv\\\",t.amount)),(this.slices&1)===1&&(r===\\\"E\\\"?t=new B(new k(\\\"D\\\",(this.slices+1)/2),t.amount):r===\\\"M\\\"?t=new B(new k(\\\"L\\\",(this.slices+1)/2),t.amount):r===\\\"S\\\"&&(t=new B(new k(\\\"F\\\",(this.slices+1)/2),t.amount))),this.slices>2&&(r===\\\"e\\\"?t=new B(new k(\\\"D\\\",this.slices-1,2),t.amount):r===\\\"m\\\"?t=new B(new k(\\\"L\\\",this.slices-1,2),t.amount):r===\\\"s\\\"&&(t=new B(new k(\\\"F\\\",this.slices-1,2),t.amount)))),t}notationToExternal(t){let r=t.family;if(!(t.innerLayer||t.outerLayer)){if(r===\\\"Rv\\\")return new B(\\\"x\\\",t.amount);if(r===\\\"Uv\\\")return new B(\\\"y\\\",t.amount);if(r===\\\"Fv\\\")return new B(\\\"z\\\",t.amount);if(r===\\\"Lv\\\")return new B(\\\"x\\\",-t.amount);if(r===\\\"Dv\\\")return new B(\\\"y\\\",-t.amount);if(r===\\\"Bv\\\")return new B(\\\"z\\\",-t.amount)}return t}}});var bL,EL,wf,_f,kf,$n,oo,zf=y(()=>{\\\"use strict\\\";me();bL={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\\\"},EL={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\\\"},wf={U:\\\"FRL\\\",L:\\\"FLD\\\",R:\\\"FDR\\\",B:\\\"DLR\\\"},_f=new k(\\\"y\\\"),kf=new k(\\\"Dv\\\"),$n=class{constructor(t){this.child=t;this.wcaHack=!1;this.map=bL}notationToInternal(t){if(this.wcaHack&&t.innerLayer===2&&t.outerLayer===null){let n=wf[t.family];if(n)return new B(new k(n,t.innerLayer,t.outerLayer),t.amount)}let r=this.map[t.family];return r?new B(new k(r,t.innerLayer,t.outerLayer),t.amount):_f.isIdentical(t.quantum)?new B(kf,-t.amount):null}notationToExternal(t){if(this.wcaHack&&t.innerLayer===2&&t.outerLayer===null){for(let[r,n]of Object.entries(wf))if(this.child.spinmatch(t.family,n))return new B(new k(r,t.innerLayer,t.outerLayer),t.amount)}for(let[r,n]of Object.entries(this.map))if(this.child.spinmatch(t.family,n))return new B(new k(r,t.innerLayer,t.outerLayer),t.amount);return kf.isIdentical(t.quantum)?new B(_f,-t.amount):null}},oo=class extends $n{constructor(r){super(r);this.wcaHack=!0;this.map=EL}}});var Cf,Rs,Nf,wL,hs,Pf,_L,Fs,Mf,kL,io,If=y(()=>{\\\"use strict\\\";me();Cf={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\\\"},Rs=new k(\\\"x\\\"),Nf=new k(\\\"Rv\\\"),wL=new k(\\\"Lv\\\"),hs=new k(\\\"y\\\"),Pf=new k(\\\"Uv\\\"),_L=new k(\\\"Dv\\\"),Fs=new k(\\\"z\\\"),Mf=new k(\\\"Fv\\\"),kL=new k(\\\"Bv\\\"),io=class{constructor(t){this.child=t}notationToInternal(t){if(t.innerLayer||t.outerLayer)return null;let r=Cf[t.family];return r?new B(new k(r,t.outerLayer,t.innerLayer),t.amount):Rs.isIdentical(t.quantum)?new B(Nf,t.amount):hs.isIdentical(t.quantum)?new B(Pf,t.amount):Fs.isIdentical(t.quantum)?new B(Mf,t.amount):null}notationToExternal(t){for(let[r,n]of Object.entries(Cf))if(this.child.spinmatchv(t.family,n))return new B(new k(r,t.innerLayer,t.outerLayer),t.amount);return Nf.isIdentical(t.quantum)?new B(Rs,t.amount):wL.isIdentical(t.quantum)?new B(Rs,-t.amount):Pf.isIdentical(t.quantum)?new B(hs,t.amount):_L.isIdentical(t.quantum)?new B(hs,-t.amount):Mf.isIdentical(t.quantum)?new B(Fs,t.amount):kL.isIdentical(t.quantum)?new B(Fs,-t.amount):null}}});var Ds=y(()=>{\\\"use strict\\\";Sf();xf();Uf();bf();Ef();zf();If()});function Of(e){let t=0,r={};for(;t<e.length&&e[t][0]===\\\"-\\\";){let l=e[t++];if(l===\\\"--rotations\\\")r.addRotations=!0;else if(l===\\\"--allmoves\\\")r.allMoves=!0;else if(l===\\\"--outerblockmoves\\\")r.outerBlockMoves=!0;else if(l===\\\"--vertexmoves\\\")r.vertexMoves=!0;else if(l===\\\"--nocorners\\\")r.includeCornerOrbits=!1;else if(l===\\\"--noedges\\\")r.includeEdgeOrbits=!1;else if(l===\\\"--noorientation\\\")r.fixedOrientation=!0;else if(l===\\\"--nocenters\\\")r.includeCenterOrbits=!1;else if(l===\\\"--omit\\\")r.excludeOrbits=e[t].split(\\\",\\\"),t++;else if(l===\\\"--moves\\\")r.moveList=e[t].split(\\\",\\\"),t++;else if(l===\\\"--optimize\\\")r.optimizeOrbits=!0;else if(l===\\\"--scramble\\\")r.scrambleAmount=100;else if(l===\\\"--fixcorner\\\")r.fixedPieceType=\\\"v\\\";else if(l===\\\"--fixedge\\\")r.fixedPieceType=\\\"e\\\";else if(l===\\\"--fixcenter\\\")r.fixedPieceType=\\\"f\\\";else if(l===\\\"--orientcenters\\\")r.orientCenters=!0;else if(l===\\\"--puzzleorientation\\\")r.puzzleOrientation=JSON.parse(e[t]),t++;else throw new Error(`Bad option: ${l}`)}return{puzzleDescription:ao(e.slice(t).join(\\\" \\\")),options:r}}var fi,As=y(()=>{\\\"use strict\\\";so();fi=class{constructor(t={}){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,t)}}});function vr(e){if(!ys[e]){let t=Array(e);for(let r=0;r<e;r++)t[r]=0;ys[e]=t}return ys[e]}function jt(e){if(!vs[e]){let t=Array(e);for(let r=0;r<e;r++)t[r]=r;vs[e]=t}return vs[e]}function Tf(e){return new dt(jt(e))}function Gf(e){let t=BigInt(1);for(;e>1;)t*=BigInt(e),e--;return t}function zL(e,t){if(e>t){let r=e;e=t,t=r}for(;e>0;){let r=t%e;t=e,e=r}return t}function Ss(e,t){return e/zL(e,t)*t}var ys,vs,dt,ui=y(()=>{\\\"use strict\\\";ys=[],vs=[];dt=class{constructor(t){this.n=t.length,this.p=t}toString(){return`Perm[${this.p.join(\\\" \\\")}]`}mul(t){let r=Array(this.n);for(let n=0;n<this.n;n++)r[n]=t.p[this.p[n]];return new dt(r)}rmul(t){let r=Array(this.n);for(let n=0;n<this.n;n++)r[n]=this.p[t.p[n]];return new dt(r)}inv(){let t=Array(this.n);for(let r=0;r<this.n;r++)t[this.p[r]]=r;return new dt(t)}compareTo(t){for(let r=0;r<this.n;r++)if(this.p[r]!==t.p[r])return this.p[r]-t.p[r];return 0}toGap(){let t=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 l=new Array;for(let o=n;!r[o];o=this.p[o])l.push(1+o),r[o]=!0;t.push(`(${l.join(\\\",\\\")})`)}return t.join(\\\"\\\")}order(){let t=1,r=new Array(this.n);for(let n=0;n<this.p.length;n++){if(r[n]||this.p[n]===n)continue;let l=0;for(let o=n;!r[o];o=this.p[o])l++,r[o]=!0;t=Ss(t,l)}return t}}});function pi(e,t){let r=B.fromString(t),n=e.notationToExternal(r);return n===null||r===n?t:n.toString()}function Wf(e,t){let r=e.moveops.length;if(r>30)throw new Error(\\\"Canon info too big for bitmask\\\");let n=[],l=[];for(let i=0;i<r;i++){let a=e.moveops[i];n.push(a.order());let s=0;for(let f=0;f<r;f++){if(f===i)continue;let u=e.moveops[f];a.mul(u).equal(u.mul(a))&&(s|=1<<f)}l.push(s)}let o={};o[0]=1;for(let i=0;i<100;i++){let a=0,s={},f=0;for(let u in o){let p=+u,g=o[p];a+=g,f++;for(let c=0;c<n.length;c++)if((p>>c&1)===0&&(p&l[c]&(1<<c)-1)===0){let L=p&l[c]|1<<c;s[L]===void 0&&(s[L]=0),s[L]+=(n[c]-1)*g}}t(`${i}: canonseq ${a} states ${f}`),o=s}}var el,CL,sn,_t,qt,gi,lr,fn,ci,Kf=y(()=>{\\\"use strict\\\";me();Ds();ui();el=class{constructor(t,r){this.size=t;this.mod=r}reassemblySize(){return Gf(this.size)*BigInt(this.mod)**BigInt(this.size)}},CL=0;sn=class{constructor(t,r,n,l,o,i,a){this.orbitnames=t;this.orbitdefs=r;this.solved=n;this.movenames=l;this.moveops=o;this.isRotation=i;this.forcenames=a}transformToKTransformationData(t){let r={};for(let n=0;n<this.orbitnames.length;n++)r[this.orbitnames[n]]=t.orbits[n].toKPuzzle();return r}static transformToKTransformationData(t,r){let n={};for(let l=0;l<t.length;l++)n[t[l]]=r.orbits[l].toKPuzzle();return n}describeSet(t,r,n){let l=this.orbitdefs[t].size,o=new Array(l);for(let i=0;i<l;i++)o[i]=[];for(let i=0;i<this.movenames.length;i++){if(this.isRotation[i])continue;let a=this.movenames[i];this.forcenames[i]||(a=pi(n,a),a[a.length-1]===\\\"'\\\"&&(a=a.substring(0,a.length-1)));let s=this.moveops[i].orbits[t];for(let f=0;f<l;f++)(s.perm[f]!==f||s.ori[f]!==0)&&o[f].push(a)}for(let i=0;i<l;i++)r.push(`# ${i+1} ${o[i].join(\\\" \\\")}`)}toKsolve(t,r=new an){let n=[];n.push(`Name ${t}`),n.push(\\\"\\\");for(let l=0;l<this.orbitnames.length;l++)n.push(`Set ${this.orbitnames[l]} ${this.orbitdefs[l].size} ${this.orbitdefs[l].mod}`),this.describeSet(l,n,r);n.push(\\\"\\\"),n.push(\\\"Solved\\\");for(let l=0;l<this.orbitnames.length;l++)this.solved.orbits[l].appendDefinition(n,this.orbitnames[l],!1,!1);n.push(\\\"End\\\");for(let l=0;l<this.movenames.length;l++){n.push(\\\"\\\");let o=this.movenames[l];this.forcenames[l]||(o=pi(r,this.movenames[l]));let i=!1;o[o.length-1]===\\\"'\\\"&&(i=!0,o=o.substring(0,o.length-1)),n.push(`Move ${o}`);for(let a=0;a<this.orbitnames.length;a++)i?this.moveops[l].orbits[a].inv().appendDefinition(n,this.orbitnames[a],!0):this.moveops[l].orbits[a].appendDefinition(n,this.orbitnames[a],!0);n.push(\\\"End\\\")}return n}toKPuzzleDefinition(t){let r={},n={};for(let o=0;o<this.orbitnames.length;o++){r[this.orbitnames[o]]={numPieces:this.orbitdefs[o].size,numOrientations:this.orbitdefs[o].mod};let i=this.solved.orbits[o].toKPuzzle();n[this.orbitnames[o]]={pieces:i.permutation,orientation:i.orientation}}let l={};if(t)for(let o=0;o<this.movenames.length;o++)l[this.movenames[o]]=this.transformToKTransformationData(this.moveops[o]);return{name:`PG3D #${++CL}`,orbits:r,startStateData:n,moves:l}}optimize(){let t=[],r=[],n=[],l=[];for(let o=0;o<this.moveops.length;o++)l.push([]);for(let o=0;o<this.orbitdefs.length;o++){let i=this.orbitdefs[o].mod,a=this.orbitdefs[o].size,s=new ci(a),f=new Array(this.orbitdefs[o].size);for(let c=0;c<a;c++)f[c]=!1;for(let c=0;c<this.moveops.length;c++)if(!this.isRotation[c])for(let L=0;L<a;L++)(this.moveops[c].orbits[o].perm[L]!==L||this.moveops[c].orbits[o].ori[L]!==0)&&(f[L]=!0,s.union(L,this.moveops[c].orbits[o].perm[L]));let u=!0;if(i>1){u=!1;let c=new ci(this.orbitdefs[o].size*i);for(let L=0;L<this.moveops.length;L++)for(let m=0;m<a;m++)if(this.moveops[L].orbits[o].perm[m]!==m||this.moveops[L].orbits[o].ori[m]!==0)for(let d=0;d<i;d++)c.union(m*i+d,this.moveops[L].orbits[o].perm[m]*i+(d+this.moveops[L].orbits[o].ori[m])%i);for(let L=0;!u&&L<a;L++)for(let m=1;m<i;m++)c.find(L*i)===c.find(L*i+m)&&(u=!0);for(let L=0;!u&&L<a;L++)for(let m=0;m<L;m++)this.solved.orbits[o].perm[L]===this.solved.orbits[o].perm[m]&&(u=!0)}let p=-1,g=!1;for(let c=0;c<this.orbitdefs[o].size;c++)if(f[c]){let L=s.find(c);p<0?p=L:p!==L&&(g=!0)}for(let c=0;c<this.orbitdefs[o].size;c++){if(!f[c]||s.find(c)!==c)continue;let m=[],d=[],F=0;for(let A=0;A<this.orbitdefs[o].size;A++)s.find(A)===c&&(m[F]=A,d[A]=F,F++);if(g?t.push(`${this.orbitnames[o]}_p${c}`):t.push(this.orbitnames[o]),u){r.push(new el(F,this.orbitdefs[o].mod)),n.push(this.solved.orbits[o].remapVS(m,F));for(let A=0;A<this.moveops.length;A++)l[A].push(this.moveops[A].orbits[o].remap(m,d,F))}else{r.push(new el(F,1)),n.push(this.solved.orbits[o].remapVS(m,F).killOri());for(let A=0;A<this.moveops.length;A++)l[A].push(this.moveops[A].orbits[o].remap(m,d,F).killOri())}}}return new sn(t,r,new fn(n),this.movenames,l.map(o=>new lr(o)),this.isRotation,this.forcenames)}scramble(t){this.solved=this.solved.mul(this.getScrambleTransformation(t))}getScrambleTransformation(t){t<100&&(t=100);let r=[];for(let l=0;l<this.moveops.length;l++)r[l]=this.moveops[l];for(let l=0;l<r.length;l++){let o=Math.floor(Math.random()*r.length),i=r[l];r[l]=r[o],r[o]=i}t<r.length&&(t=r.length);for(let l=0;l<t;l++){let o=Math.floor(Math.random()*r.length),i=Math.floor(Math.random()*r.length),a=Math.floor(Math.random()*this.moveops.length);r[o]=r[o].mul(r[i]).mul(this.moveops[a]),Math.random()<.1&&(r[o]=r[o].mul(this.moveops[a]))}let n=r[0];for(let l=1;l<r.length;l++)n=n.mul(r[l]);return n}reassemblySize(){let t=BigInt(1);for(let r=0;r<this.orbitdefs.length;r++)t*=this.orbitdefs[r].reassemblySize();return t}},_t=class{constructor(t,r,n){this.perm=t;this.ori=r;this.orimod=n}static e(t,r){return new _t(jt(t),vr(t),r)}mul(t){let r=this.perm.length,n=new Array(r);if(this.orimod===1){for(let l=0;l<r;l++)n[l]=this.perm[t.perm[l]];return new _t(n,this.ori,this.orimod)}else{let l=new Array(r);for(let o=0;o<r;o++)n[o]=this.perm[t.perm[o]],l[o]=(this.ori[t.perm[o]]+t.ori[o])%this.orimod;return new _t(n,l,this.orimod)}}inv(){let t=this.perm.length,r=new Array(t),n=new Array(t);for(let l=0;l<t;l++)r[this.perm[l]]=l,n[this.perm[l]]=(this.orimod-this.ori[l])%this.orimod;return new _t(r,n,this.orimod)}equal(t){let r=this.perm.length;for(let n=0;n<r;n++)if(this.perm[n]!==t.perm[n]||this.ori[n]!==t.ori[n])return!1;return!0}killOri(){let t=this.perm.length;for(let r=0;r<t;r++)this.ori[r]=0;return this.orimod=1,this}toPerm(){let t=this.orimod;if(t===1)return new dt(this.perm);let r=this.perm.length,n=new Array(r*t);for(let l=0;l<r;l++)for(let o=0;o<t;o++)n[l*t+o]=t*this.perm[l]+(this.ori[l]+o)%t;return new dt(n)}identicalPieces(){let t=[],r=this.perm.length,n=[];for(let l=0;l<r;l++){let o=this.perm[l];if(t[o]===void 0){let i=[l];t[o]=!0;for(let a=l+1;a<r;a++)this.perm[a]===o&&i.push(a);n.push(i)}}return n}order(){return this.toPerm().order()}isIdentity(){let t=this.perm.length;if(this.perm===jt(t)&&this.ori===vr(t))return!0;for(let r=0;r<t;r++)if(this.perm[r]!==r||this.ori[r]!==0)return!1;return!0}zeroOris(){let t=this.perm.length;if(this.ori===vr(t))return!0;for(let r=0;r<t;r++)if(this.ori[r]!==0)return!1;return!0}remap(t,r,n){let l=new Array(n),o=new Array(n);for(let i=0;i<n;i++)l[i]=r[this.perm[t[i]]],o[i]=this.ori[t[i]];return new _t(l,o,this.orimod)}remapVS(t,r){let n=new Array(r),l=new Array(r),o=0,i=[];for(let a=0;a<r;a++){let s=this.perm[t[a]];i[s]===void 0&&(i[s]=o++),n[a]=i[s],l[a]=this.ori[t[a]]}return new _t(n,l,this.orimod)}appendDefinition(t,r,n,l=!0){if(!(l&&this.isIdentity())&&(t.push(r),t.push(this.perm.map(o=>o+1).join(\\\" \\\")),!this.zeroOris()))if(n){let o=new Array(this.ori.length);for(let i=0;i<o.length;i++)o[this.perm[i]]=this.ori[i];t.push(o.join(\\\" \\\"))}else t.push(this.ori.join(\\\" \\\"))}toKPuzzle(){let t=this.perm.length;return this.isIdentity()?(_t.kcache[t]||(_t.kcache[t]={permutation:jt(t),orientation:vr(t)}),_t.kcache[t]):{permutation:this.perm,orientation:this.ori}}},qt=_t;qt.kcache=[];gi=class{constructor(t){this.orbits=t}internalMul(t){let r=[];for(let n=0;n<this.orbits.length;n++)r.push(this.orbits[n].mul(t.orbits[n]));return r}internalInv(){let t=[];for(let r of this.orbits)t.push(r.inv());return t}equal(t){for(let r=0;r<this.orbits.length;r++)if(!this.orbits[r].equal(t.orbits[r]))return!1;return!0}killOri(){for(let t of this.orbits)t.killOri();return this}toPerm(){let t=new Array,r=0;for(let l of this.orbits){let o=l.toPerm();t.push(o),r+=o.n}let n=new Array(r);r=0;for(let l of t){for(let o=0;o<l.n;o++)n[r+o]=r+l.p[o];r+=l.n}return new dt(n)}identicalPieces(){let t=[],r=0;for(let n of this.orbits){let l=n.orimod,o=n.identicalPieces();for(let i=0;i<o.length;i++)t.push(o[i].map(a=>a*l+r));r+=l*n.perm.length}return t}order(){let t=1;for(let r of this.orbits)t=Ss(t,r.order());return t}},lr=class extends gi{constructor(t){super(t)}mul(t){return new lr(this.internalMul(t))}mulScalar(t){if(t===0)return this.e();let r=this;for(t<0&&(r=r.inv(),t=-t);(t&1)===0;)r=r.mul(r),t>>=1;if(t===1)return r;let n=r,l=this.e();for(;t>0;)t&1&&(l=l.mul(n)),t>1&&(n=n.mul(n)),t>>=1;return l}inv(){return new lr(this.internalInv())}e(){return new lr(this.orbits.map(t=>qt.e(t.perm.length,t.orimod)))}},fn=class extends gi{constructor(t){super(t)}mul(t){return new fn(this.internalMul(t))}},ci=class{constructor(t){this.n=t;this.heads=new Array(t);for(let r=0;r<t;r++)this.heads[r]=r}find(t){let r=this.heads[t];return this.heads[r]===r||(r=this.find(this.heads[r]),this.heads[t]=r),r}union(t,r){let n=this.find(t),l=this.find(r);n<l?this.heads[l]=n:n>l&&(this.heads[n]=l)}}});var mi,Qf=y(()=>{\\\"use strict\\\";mi={\\\"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 Li(e){let t=new W(0,0,0,0);for(let r=0;r<e.length;r++)t=t.sum(e[r]);return t.smul(1/e.length)}function jf(e,t,r,n){let l=n[e].intersect3(n[t],n[r]);if(!l)return l;for(let o=0;o<n.length;o++)if(o!==e&&o!==t&&o!==r){let i=n[o].b*l.b+n[o].c*l.c+n[o].d*l.d;if(n[o].a>0&&i>n[o].a||n[o].a<0&&i<n[o].a)return!1}return l}var W,Bi=y(()=>{\\\"use strict\\\";W=class{constructor(t,r,n,l){this.a=t;this.b=r;this.c=n;this.d=l}mul(t){return new W(this.a*t.a-this.b*t.b-this.c*t.c-this.d*t.d,this.a*t.b+this.b*t.a+this.c*t.d-this.d*t.c,this.a*t.c-this.b*t.d+this.c*t.a+this.d*t.b,this.a*t.d+this.b*t.c-this.c*t.b+this.d*t.a)}toString(){return`Q[${this.a},${this.b},${this.c},${this.d}]`}dist(t){return Math.hypot(this.a-t.a,this.b-t.b,this.c-t.c,this.d-t.d)}len(){return Math.hypot(this.a,this.b,this.c,this.d)}cross(t){return new W(0,this.c*t.d-this.d*t.c,this.d*t.b-this.b*t.d,this.b*t.c-this.c*t.b)}dot(t){return this.b*t.b+this.c*t.c+this.d*t.d}normalize(){let t=Math.sqrt(this.dot(this));return new W(this.a/t,this.b/t,this.c/t,this.d/t)}makenormal(){return new W(0,this.b,this.c,this.d).normalize()}normalizeplane(){let t=Math.hypot(this.b,this.c,this.d);return new W(this.a/t,this.b/t,this.c/t,this.d/t)}smul(t){return new W(this.a*t,this.b*t,this.c*t,this.d*t)}sum(t){return new W(this.a+t.a,this.b+t.b,this.c+t.c,this.d+t.d)}sub(t){return new W(this.a-t.a,this.b-t.b,this.c-t.c,this.d-t.d)}angle(){return 2*Math.acos(this.a)}invrot(){return new W(this.a,-this.b,-this.c,-this.d)}det3x3(t,r,n,l,o,i,a,s,f){return t*(o*f-i*s)+r*(i*a-l*f)+n*(l*s-o*a)}rotateplane(t){let r=t.mul(new W(0,this.b,this.c,this.d)).mul(t.invrot());return r.a=this.a,r}orthogonal(){let t=Math.abs(this.b),r=Math.abs(this.c),n=Math.abs(this.d);return t<r&&t<n?this.cross(new W(0,1,0,0)).normalize():r<t&&r<n?this.cross(new W(0,0,1,0)).normalize():this.cross(new W(0,0,0,1)).normalize()}pointrotation(t){let r=this.normalize();if(t=t.normalize(),r.sub(t).len()<1e-9)return new W(1,0,0,0);let n=r.sum(t);n.len()<1e-9?n=n.orthogonal():n=n.normalize();let l=r.cross(n);return l.a=r.dot(n),l}unproject(t){return this.sum(t.smul(-this.dot(t)/(this.len()*t.len())))}rotatepoint(t){return t.mul(this).mul(t.invrot())}rotateface(t){return t.map(r=>r.rotatepoint(this))}intersect3(t,r){let n=this.det3x3(this.b,this.c,this.d,t.b,t.c,t.d,r.b,r.c,r.d);return Math.abs(n)<1e-9?!1:new W(0,this.det3x3(this.a,this.c,this.d,t.a,t.c,t.d,r.a,r.c,r.d)/n,this.det3x3(this.b,this.a,this.d,t.b,t.a,t.d,r.b,r.a,r.d)/n,this.det3x3(this.b,this.c,this.a,t.b,t.c,t.a,r.b,r.c,r.a)/n)}side(t){return t>1e-9?1:t<-1e-9?-1:0}cutface(t){let r=this.a,n=0,l=null;for(let o=0;o<t.length;o++)n|=1<<this.side(t[o].dot(this)-r)+1;if((n&5)===5){l=[];let o=t.map(i=>this.side(i.dot(this)-r));for(let i=-1;i<=1;i+=2){let a=[];for(let s=0;s<t.length;s++){(o[s]===i||o[s]===0)&&a.push(t[s]);let f=(s+1)%t.length;if(o[s]+o[f]===0&&o[s]!==0){let u=t[s].dot(this)-r,p=t[f].dot(this)-r,g=u/(u-p),c=t[s].smul(1-g).sum(t[f].smul(g));a.push(c)}}l.push(a)}}return l}cutfaces(t){let r=[];for(let n=0;n<t.length;n++){let l=t[n],o=this.cutface(l);o?(r.push(o[0]),r.push(o[1])):r.push(l)}return r}faceside(t){let r=this.a;for(let n=0;n<t.length;n++){let l=this.side(t[n].dot(this)-r);if(l!==0)return l}throw new Error(\\\"Could not determine side of plane in faceside\\\")}sameplane(t){let r=this.normalize(),n=t.normalize();return r.dist(n)<1e-9||r.dist(n.smul(-1))<1e-9}makecut(t){return new W(t,this.b,this.c,this.d)}}});function qf(){let e=Math.sqrt(.5);return[new W(e,e,0,0),new W(e,0,e,0)]}function Vf(){return[new W(.5,.5,.5,.5),new W(.5,.5,.5,-.5)]}function Hf(){let e=2*Math.PI/10,t=.5+.3*Math.sqrt(5),r=.5+.1*Math.sqrt(5),n=Math.sqrt(t*t+r*r);return t/=n,r/=n,[new W(Math.cos(e),t*Math.sin(e),r*Math.sin(e),0),new W(.5,.5,.5,.5)]}function Xf(){let e=.16666666666666666+Math.sqrt(5)/6,t=2/3+Math.sqrt(5)/3,r=Math.sqrt(e*e+t*t);e/=r,t/=r;let n=2*Math.PI/6;return[new W(Math.cos(n),e*Math.sin(n),t*Math.sin(n),0),new W(Math.cos(n),-e*Math.sin(n),t*Math.sin(n),0)]}function Zf(){let e=Math.sqrt(.5);return[new W(.5,.5,.5,.5),new W(e,0,0,e)]}function Jf(e){let t=[new W(1,0,0,0)];for(let r=0;r<t.length;r++)for(let n=0;n<e.length;n++){let l=e[n].mul(t[r]),o=l.smul(-1),i=!1;for(let a=0;a<t.length;a++)if(l.dist(t[a])<di||o.dist(t[a])<di){i=!0;break}i||t.push(l)}return t}function xs(e,t){let r=[],n=[];for(let l=0;l<t.length;l++){let o=e.rotateplane(t[l]),i=!1;for(let a=0;a<r.length;a++)if(o.dist(r[a])<di){i=!0;break}i||(r.push(o),n.push(t[l]))}return n}function Us(e){let t=[];for(let r=1;r<e.length;r++)for(let n=r+1;n<e.length;n++){let l=jf(0,r,n,e);if(l){let o=!1;for(let i=0;i<t.length;i++)if(l.dist(t[i])<di){o=!0;break}o||t.push(l)}}for(;;){let r=!1;for(let n=0;n<t.length;n++){let l=(n+1)%t.length;if(e[0].dot(t[n].cross(t[l]))<0){let o=t[n];t[n]=t[l],t[l]=o,r=!0}}if(!r)break}return t}var di,Yf=y(()=>{\\\"use strict\\\";Bi();di=1e-9});function Ri(e,t){let r=e[0].p.length,n=Tf(r),l=[],o=[],i=[],a=[],s=[];function f(c){for(let L=c.p.length-1;L>=0;L--){let m=c.p[L];if(m!==L){if(!l[L][m])return!1;c=c.mul(o[L][m])}}return!0}function u(c,L,m){a[c].push(L),s[c].push(m);for(let d=0;d<l[c].length;d++)l[c][d]&&p(c,l[c][d].mul(L),m+i[c][d])}function p(c,L,m){let d=L.p[c];if(!l[c][d]){l[c][d]=L,o[c][d]=L.inv(),i[c][d]=m;for(let A=0;A<a[c].length;A++)p(c,L.mul(a[c][A]),m+s[c][A]);return}let F=L.mul(o[c][d]);f(F)||u(c-1,F,m+i[c][d])}function g(){l=[],o=[],a=[],i=[],s=[];for(let m=0;m<r;m++)l.push([]),o.push([]),i.push([]),a.push([]),s.push([]),l[m][m]=n,o[m][m]=n,i[m][m]=0;let c=0,L=BigInt(1);for(let m=0;m<e.length;m++){u(r-1,e[m],1),L=BigInt(1);let d=0,F=0,A=[],v=new bs;for(let x=0;x<r;x++){let U=0,P=0;for(let C=0;C<r;C++)l[x][C]&&(U++,P+=i[x][C],x!==C&&c++);d+=a[x].length,L*=BigInt(U),U>1&&v.multiply(U);let Z=P/U;A.push(Z),F+=Z}t(`${m}: sz ${L} T ${d} sol ${F} none ${c} mults ${v.toString()}`)}return L}return g()}var bs,Es=y(()=>{\\\"use strict\\\";ui();bs=class{constructor(){this.mult=[]}multiply(t){for(let r=2;r*r<=t;r++)for(;t%r===0;)this.mult[r]!==void 0?this.mult[r]++:this.mult[r]=1,t/=r;t>1&&(this.mult[t]!==void 0?this.mult[t]++:this.mult[t]=1)}toString(){let t=\\\"\\\";for(let r=0;r<this.mult.length;r++)this.mult[r]!==void 0&&(t!==\\\"\\\"&&(t+=\\\"*\\\"),t+=r,this.mult[r]>1&&(t+=`^${this.mult[r]}`));return t}}});function NL(e,t){let r=[];for(let n of e)for(let l of t)r.push(l.rotate(n));return r}function IL(){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 OL(){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 GL(){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 hi(e,t){for(let r=0;r<e.length;r++)if(e[r][0].dist(t)<be)return r;throw new Error(\\\"Element not found\\\")}function $f(){return mi}function e1(e){return mi[e]}function ao(e){let t=e.split(/ /).filter(Boolean);if(t.length%2===0)return null;let r=t[0];if(r!==\\\"o\\\"&&r!==\\\"c\\\"&&r!==\\\"i\\\"&&r!==\\\"d\\\"&&r!==\\\"t\\\")return null;let n=[];for(let l=1;l<t.length;l+=2){if(t[l]!==\\\"f\\\"&&t[l]!==\\\"v\\\"&&t[l]!==\\\"e\\\")return null;n.push({cutType:t[l],distance:parseFloat(t[l+1])})}return{shape:r,cuts:n}}function _s(e,t={}){let r=ao(e);if(r===null)throw new Error(\\\"Could not parse the puzzle description\\\");let n=new fo(r,Object.assign({},{allMoves:!0},t));return n.allstickers(),n.genperms(),n}function n1(e,t){return _s(mi[e],t)}function WL(e,t,r){let n=!1;r-t[1]<t[0]&&(e=[e[2],e[3],e[0],e[1]],t=[r-t[1],r-t[0]],n=!0);let l=e[0],o=\\\"\\\";if(t[0]===0&&t[1]===r)l=`${l}v`;else if(t[0]===t[1])t[1]>0&&(o=String(t[1]+1));else if(t[0]===0)l=l.toLowerCase(),t[1]>1&&(o=String(t[1]+1));else throw new Error(`We only support slice and outer block moves right now. ${t}`);return[o+l,n]}function KL(e,t){let r=[],n=0;for(;n<e.length;){n>0&&n<e.length&&e[n]===\\\"_\\\"&&n++;let l=\\\"\\\";for(let o of t)e.substr(n).startsWith(o[1])&&o[1].length>l.length&&(l=o[1]);if(l!==\\\"\\\")r.push(l),n+=l.length;else throw new Error(`Could not split ${e} into face names.`)}return r}function Fi(e,t){return[e.b/t,-e.c/t,e.d/t]}function ws(e,t){let r=[],n=e.length;for(let l=0;l<n;l++){let o=Fi(e.get(n-l-1),t);r[3*l]=o[0],r[3*l+1]=o[1],r[3*l+2]=o[2]}return r}var Sr,tl,be,PL,ML,TL,t1,r1,fo,Di,so=y(()=>{\\\"use strict\\\";me();vf();Ds();As();ui();Kf();Qf();Yf();Bi();Es();Sr=class{constructor(t){this.coords=new Array(t.length*3);for(let r=0;r<t.length;r++)this.coords[3*r]=t[r].b,this.coords[3*r+1]=t[r].c,this.coords[3*r+2]=t[r].d;this.length=t.length}get(t){return new W(0,this.coords[3*t],this.coords[3*t+1],this.coords[3*t+2])}centermass(){let t=0,r=0,n=0;for(let l=0;l<this.length;l++)t+=this.coords[3*l],r+=this.coords[3*l+1],n+=this.coords[3*l+2];return new W(0,t/this.length,r/this.length,n/this.length)}rotate(t){let r=[];for(let n=0;n<this.length;n++)r.push(this.get(n).rotatepoint(t));return new Sr(r)}rotateforward(){let t=[];for(let r=1;r<this.length;r++)t.push(this.get(r));return t.push(this.get(0)),new Sr(t)}},tl=class{constructor(t,r,n){this.face=t;this.left=r;this.right=n}split(t){let r=t.cutface(this.face);return r!==null&&(this.left===void 0?(this.left=new tl(r[0]),this.right=new tl(r[1])):(this.left=this.left?.split(t),this.right=this.right?.split(t))),this}collect(t,r){return this.left===void 0?t.push(new Sr(this.face)):r?(this.left?.collect(t,!1),this.right?.collect(t,!0)):(this.right?.collect(t,!1),this.left?.collect(t,!0)),t}};be=1e-9,PL=\\\"PuzzleGeometry 0.1 Copyright 2018 Tomas Rokicki.\\\",ML=!1;TL={4:{v:[\\\"DFR\\\",\\\"DLF\\\",\\\"DRL\\\",\\\"FLR\\\"],e:[\\\"FR\\\",\\\"LF\\\",\\\"DF\\\",\\\"DL\\\",\\\"RD\\\",\\\"RL\\\"],c:[\\\"DF\\\",\\\"FD\\\",\\\"RL\\\",\\\"LR\\\"]},6:{v:[\\\"URF\\\",\\\"UBR\\\",\\\"ULB\\\",\\\"UFL\\\",\\\"DFR\\\",\\\"DRB\\\",\\\"DBL\\\",\\\"DLF\\\"],e:[\\\"UF\\\",\\\"UR\\\",\\\"UB\\\",\\\"UL\\\",\\\"DF\\\",\\\"DR\\\",\\\"DB\\\",\\\"DL\\\",\\\"FR\\\",\\\"FL\\\",\\\"BR\\\",\\\"BL\\\"],c:[\\\"UB\\\",\\\"LU\\\",\\\"FU\\\",\\\"RU\\\",\\\"BU\\\",\\\"DF\\\"]},8:{v:[\\\"UBBBRR\\\",\\\"URFL\\\",\\\"ULBLBB\\\",\\\"DBRBBBL\\\",\\\"DBLLF\\\",\\\"DFRBR\\\"],e:[\\\"UL\\\",\\\"UBB\\\",\\\"UR\\\",\\\"BRD\\\",\\\"BLD\\\",\\\"FD\\\",\\\"BRR\\\",\\\"FR\\\",\\\"FL\\\",\\\"BLL\\\",\\\"BLBB\\\",\\\"BRBB\\\"],c:[\\\"BBU\\\",\\\"LU\\\",\\\"RU\\\",\\\"BRD\\\",\\\"FD\\\",\\\"BLD\\\",\\\"DF\\\",\\\"UBB\\\"]},12:{v:[\\\"URF\\\",\\\"UFL\\\",\\\"ULBL\\\",\\\"UBLBR\\\",\\\"UBRR\\\",\\\"DEBF\\\",\\\"DBFI\\\",\\\"DIA\\\",\\\"DAC\\\",\\\"DCE\\\",\\\"LAI\\\",\\\"ALF\\\",\\\"FCA\\\",\\\"CFR\\\",\\\"REC\\\",\\\"ERBR\\\",\\\"BRBFE\\\",\\\"BFBRBL\\\",\\\"BLIBF\\\",\\\"IBLL\\\"],e:[\\\"UF\\\",\\\"UR\\\",\\\"UBR\\\",\\\"UBL\\\",\\\"UL\\\",\\\"ER\\\",\\\"EBR\\\",\\\"EBF\\\",\\\"ED\\\",\\\"EC\\\",\\\"IBF\\\",\\\"IBL\\\",\\\"IL\\\",\\\"IA\\\",\\\"ID\\\",\\\"AC\\\",\\\"CF\\\",\\\"FA\\\",\\\"BFBR\\\",\\\"BRBL\\\",\\\"BLBF\\\",\\\"CD\\\",\\\"AD\\\",\\\"AL\\\",\\\"FL\\\",\\\"FR\\\",\\\"CR\\\",\\\"BFD\\\",\\\"BRR\\\",\\\"BLL\\\"],c:[\\\"UF\\\",\\\"FU\\\",\\\"DBF\\\",\\\"BFD\\\",\\\"AD\\\",\\\"CD\\\",\\\"BRU\\\",\\\"BLU\\\",\\\"LA\\\",\\\"RA\\\",\\\"EBR\\\",\\\"IBL\\\"]},20:{v:[\\\"FLPQU\\\",\\\"FUGER\\\",\\\"FRCAL\\\",\\\"HCREI\\\",\\\"ISBDH\\\",\\\"JSIEG\\\",\\\"BSJMK\\\",\\\"MQPOK\\\",\\\"ONDBK\\\",\\\"NOPLA\\\",\\\"UQMJG\\\",\\\"DNACH\\\"],e:[\\\"FU\\\",\\\"FL\\\",\\\"FR\\\",\\\"EG\\\",\\\"ER\\\",\\\"EI\\\",\\\"SJ\\\",\\\"SI\\\",\\\"SB\\\",\\\"KM\\\",\\\"KB\\\",\\\"KO\\\",\\\"PQ\\\",\\\"PO\\\",\\\"PL\\\",\\\"UG\\\",\\\"JG\\\",\\\"MQ\\\",\\\"UQ\\\",\\\"HC\\\",\\\"HD\\\",\\\"ND\\\",\\\"NA\\\",\\\"JM\\\",\\\"CA\\\",\\\"AL\\\",\\\"CR\\\",\\\"HI\\\",\\\"DB\\\",\\\"NO\\\"],c:[\\\"FU\\\",\\\"UF\\\",\\\"GE\\\",\\\"EG\\\",\\\"JS\\\",\\\"SJ\\\",\\\"MK\\\",\\\"KM\\\",\\\"QP\\\",\\\"PQ\\\",\\\"LA\\\",\\\"AL\\\",\\\"RC\\\",\\\"CR\\\",\\\"IH\\\",\\\"HI\\\",\\\"BD\\\",\\\"DB\\\",\\\"ON\\\",\\\"NO\\\"]}};t1=[\\\"c\\\",\\\"t\\\",\\\"o\\\",\\\"d\\\",\\\"i\\\"],r1=[\\\"f\\\",\\\"v\\\",\\\"e\\\"];fo=class{constructor(t,r){this.puzzleDescription=t;this.cmovesbyslice=[];this.duplicatedFaces=[];this.duplicatedCubies=[];this.fixedCubie=-1;this.net=[];this.colors=[];this.notationMapper=new an;this.addNotationMapper=\\\"\\\";this.setReidOrder=!1;let n=\\\"genperms\\\";this.options=new fi(r),this.options.verbosity>0&&console.log(this.header(\\\"# \\\")),this.create(t)}create(t){let{shape:r,cuts:n}=t;this.moveplanes=[],this.moveplanes2=[],this.faces=[],this.cubies=[];let l=null;switch(r){case\\\"c\\\":{l=qf();break}case\\\"o\\\":{l=Zf();break}case\\\"i\\\":{l=Xf();break}case\\\"t\\\":{l=Vf();break}case\\\"d\\\":{l=Hf();break}default:throw new Error(`Bad shape argument: ${r}`)}this.rotations=Jf(l),this.options.verbosity&&console.log(`# Rotations: ${this.rotations.length}`);let o=l[0];this.baseplanerot=xs(o,this.rotations);let i=this.baseplanerot.map(D=>o.rotateplane(D));this.baseplanes=i,this.baseFaceCount=i.length;let a=IL()[i.length];this.net=a,this.colors=OL()[i.length],this.options.verbosity>0&&console.log(`# Base planes: ${i.length}`);let s=Us(i),f=new W(0,0,0,0);this.options.verbosity>0&&console.log(`# Face vertices: ${s.length}`);let u=i[0].makenormal(),p=s[0].sum(s[1]).makenormal(),g=s[0].makenormal(),c=new W(1,u.b,u.c,u.d);this.options.verbosity>0&&console.log(`# Boundary is ${c}`);let m=xs(c,this.rotations).map(D=>c.rotateplane(D)),d=Us(m);this.edgedistance=d[0].sum(d[1]).smul(.5).dist(f),this.vertexdistance=d[0].dist(f);let F=[],A=[],v=!1,x=!1,U=!1;for(let D of n){let _=null,T=0;switch(D.cutType){case\\\"f\\\":{_=u,T=1,v=!0;break}case\\\"v\\\":{_=g,T=this.vertexdistance,U=!0;break}case\\\"e\\\":{_=p,T=this.edgedistance,x=!0;break}default:throw new Error(`Bad cut argument: ${D.cutType}`)}F.push(_.makecut(D.distance)),A.push(D.distance<T)}this.options.addRotations&&(v||F.push(u.makecut(10)),U||F.push(g.makecut(10)),x||F.push(p.makecut(10))),this.basefaces=[];for(let D of this.baseplanerot){let _=D.rotateface(d);this.basefaces.push(new Sr(_))}let P=[],Z=[],C=[],Q=[],S=d.length;function z(D,_,T){for(let I of D)if(I[0].dist(_)<be){I.push(T);return}D.push([_,T])}for(let D=0;D<this.baseplanerot.length;D++){let _=this.baseplanerot[D].rotateface(d);for(let T=0;T<_.length;T++){let I=(T+1)%_.length,ee=_[T].sum(_[I]).smul(.5);z(Q,ee,D)}}let N=[];for(let D=0;D<this.baseplanerot.length;D++){let _=this.baseplanerot[D].rotateface(d),T=[];for(let I=0;I<_.length;I++){let ee=(I+1)%_.length,ae=_[I].sum(_[ee]).smul(.5),Oe=Q[hi(Q,ae)];if(D===Oe[1])T.push(Oe[2]);else if(D===Oe[2])T.push(Oe[1]);else throw new Error(\\\"Could not find edge\\\")}N.push(T)}let b={},w=[];w.push(a[0][0]),b[a[0][0]]=0,w[N[0][0]]=a[0][1],b[a[0][1]]=N[0][0];for(let D of a){let _=D[0],T=b[_];if(T===void 0)throw new Error(\\\"Bad edge description; first edge not connected\\\");let I=-1;for(let ee=0;ee<N[T].length;ee++){let ae=w[N[T][ee]];if(ae!==void 0&&ae===D[1]){I=ee;break}}if(I<0)throw new Error(\\\"First element of a net not known\\\");for(let ee=2;ee<D.length;ee++){if(D[ee]===\\\"\\\")continue;let ae=N[T][(ee+I-1)%S],Oe=w[ae];if(Oe!==void 0&&Oe!==D[ee])throw new Error(\\\"Face mismatch in net\\\");w[ae]=D[ee],b[D[ee]]=ae}}for(let D=0;D<this.baseplanerot.length;D++){let _=this.baseplanerot[D].rotateface(d),T=c.rotateplane(this.baseplanerot[D]),I=w[D];P.push([_,I]),Z.push([T,I])}for(let D=0;D<this.baseplanerot.length;D++){let _=this.baseplanerot[D].rotateface(d),T=w[D];for(let I=0;I<_.length;I++){let ee=(I+1)%_.length,ae=_[I].sum(_[ee]).smul(.5),Oe=(I+2)%_.length,Mm=_[ee].sum(_[Oe]).smul(.5),Im=hi(Q,ae),Om=hi(Q,Mm);z(C,_[ee],[T,Om,Im])}}this.swizzler=new Jn(P.map(D=>D[1]));let M=this.swizzler.prefixFree?\\\"\\\":\\\"_\\\",j=TL[this.baseFaceCount],q=[];for(let D=0;D<this.baseFaceCount;D++)q[1<<D]=D;{let D=j.v;for(let _ of D){let T=this.swizzler.splitByFaceNames(_),I=0;for(let ee of T)I|=1<<ee;q[I]=T[0]}}{let D=j.e;for(let _ of D){let T=this.swizzler.splitByFaceNames(_),I=0;for(let ee of T)I|=1<<ee;q[I]=T[0]}}{let D=j.c;for(let _ of D){let T=this.swizzler.splitByFaceNames(_),I=1<<T[0]|1<<this.baseFaceCount;q[I]=T[1]}}for(let D=0;D<Q.length;D++){if(Q[D].length!==3)throw new Error(`Bad length in edge names ${Q[D]}`);let _=Q[D][1],T=Q[D][2],I=w[_],ee=w[T],ae=1<<_|1<<T;q[ae]===_?I=I+M+ee:I=ee+M+I,Q[D]=[Q[D][0],I]}for(let D=0;D<C.length;D++){let _=0;if(C[D].length<4)throw new Error(\\\"Bad length in vertex names\\\");for(let ae=1;ae<C[D].length;ae++)_|=1<<b[C[D][ae][0]];let T=q[_],I=-1;for(let ae=1;ae<C[D].length;ae++)T===b[C[D][ae][0]]&&(I=ae);if(I<0)throw new Error(\\\"Internal error; couldn't find face name when fixing corners\\\");let ee=\\\"\\\";for(let ae=1;ae<C[D].length;ae++){ae===1?ee=C[D][I][0]:ee=ee+M+C[D][I][0];for(let Oe=1;Oe<C[D].length;Oe++)if(C[D][I][1]===C[D][Oe][2]){I=Oe;break}}C[D]=[C[D][0],ee]}this.markedface=q,this.options.verbosity>1&&(console.log(`# Face names: ${P.map(D=>D[1]).join(\\\" \\\")}`),console.log(`# Edge names: ${Q.map(D=>D[1]).join(\\\" \\\")}`),console.log(`# Vertex names: ${C.map(D=>D[1]).join(\\\" \\\")}`));let ie=[];for(let D of Z)ie.push([D[0].makenormal(),D[1],\\\"f\\\"]);for(let D of Q)ie.push([D[0].makenormal(),D[1],\\\"e\\\"]);for(let D of C)ie.push([D[0].makenormal(),D[1],\\\"v\\\"]);this.facenames=P,this.faceplanes=Z,this.edgenames=Q,this.vertexnames=C,this.geonormals=ie;let he=ie.map(D=>D[1]);this.swizzler.setGripNames(he),this.options.verbosity>0&&console.log(`# Distances: face ${1} edge ${this.edgedistance} vertex ${this.vertexdistance}`);for(let D=0;D<F.length;D++)for(let _ of this.rotations){let T=F[D].rotateplane(_),I=!1;for(let ee of this.moveplanes)if(T.sameplane(ee)){I=!0;break}I||(this.moveplanes.push(T),A[D]&&this.moveplanes2.push(T))}let Ue=new tl(d),Ye=this.moveplanes2.slice(),bt=31;for(let D=0;D<Ye.length;D++){let _=D+Math.floor((Ye.length-D)*(bt/65536));Ue=Ue.split(Ye[_]),Ye[_]=Ye[D],bt=(bt*1657+101)%65536}let Be=Ue.collect([],!0);this.faces=Be,this.options.verbosity>0&&console.log(`# Faces is now ${Be.length}`),this.stickersperface=Be.length;let Ft=[],it=Li(d);for(let D of this.rotations){let _=D.rotateface(d);it.dist(Li(_))<be&&Ft.push(D)}let mt=new Array(Be.length),Ce=[];for(let D=0;D<Be.length;D++){let _=Be[D].centermass();Ce.push([it.dist(_),_,D])}Ce.sort((D,_)=>D[0]-_[0]);for(let D=0;D<Be.length;D++){let _=Ce[D][2];if(!mt[_]){mt[_]=!0;for(let T of Ft){let I=Be[_].rotate(T),ee=I.centermass();for(let ae=D+1;ae<Be.length&&!(Ce[ae][0]-Ce[D][0]>be);ae++){let Oe=Ce[ae][2];if(!mt[Oe]&&ee.dist(Ce[ae][1])<be){mt[Oe]=!0,Be[Oe]=I;break}}}}}this.shortedge=1e99;for(let D of Be)for(let _=0;_<D.length;_++){let T=(_+1)%D.length,I=D.get(_).dist(D.get(T));I<this.shortedge&&(this.shortedge=I)}this.options.verbosity>0&&console.log(`# Short edge is ${this.shortedge}`),r===\\\"c\\\"&&v&&!x&&!U&&(this.addNotationMapper=\\\"NxNxNCubeMapper\\\",this.setReidOrder=!0),r===\\\"c\\\"&&U&&!v&&!x&&(this.addNotationMapper=\\\"SkewbMapper\\\"),r===\\\"t\\\"&&(U||v)&&!x&&(this.addNotationMapper=\\\"PyraminxOrTetraminxMapper\\\"),r===\\\"o\\\"&&v&&(this.notationMapper=new Yn(this.swizzler,new Jn([\\\"F\\\",\\\"D\\\",\\\"L\\\",\\\"BL\\\",\\\"R\\\",\\\"U\\\",\\\"BR\\\",\\\"B\\\"])),x||U||(this.addNotationMapper=\\\"FTOMapper\\\")),r===\\\"d\\\"&&v&&(this.addNotationMapper=\\\"MegaminxMapper\\\",this.notationMapper=new Yn(this.swizzler,new Jn([\\\"U\\\",\\\"F\\\",\\\"L\\\",\\\"BL\\\",\\\"BR\\\",\\\"R\\\",\\\"FR\\\",\\\"FL\\\",\\\"DL\\\",\\\"B\\\",\\\"DR\\\",\\\"D\\\"])))}keyface(t){return this.keyface2(t.centermass())}keyface2(t){let r=\\\"\\\",n=String.fromCharCode;for(let l of this.moveplanesets)if(l.length>0){let o=t.dot(l[0]),i=0,a=1;for(;a*2<=l.length;)a*=2;for(;a>0;a>>=1)i+a<=l.length&&o>l[i+a-1].a&&(i+=a);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(t){let r=t.centermass(),n=[];for(let l of this.moveplanesets)if(l.length>0){let o=r.dot(l[0]),i=0,a=1;for(;a*2<=l.length;)a*=2;for(;a>0;a>>=1)i+a<=l.length&&o>l[i+a-1].a&&(i+=a);n.push(i)}return n}findface(t){let r=this.keyface2(t),n=this.facelisthash.get(r);if(n.length===1)return n[0];for(let l=0;l+1<n.length;l++){let o=this.facelisthash.get(r)[l];if(Math.abs(t.dist(this.facecentermass[o]))<be)return o}return n[n.length-1]}project2d(t,r,n){let l=this.facenames[t][0],o=(r+1)%l.length,i=this.baseplanes[t],a=l[o].sub(l[r]),s=a.len();a=a.normalize();let f=a.cross(i).normalize(),u=n[1].sub(n[0]),p=u.len()/s;u=u.normalize();let g=u.b,c=u.c,L=a.smul(g).sub(f.smul(c)).smul(p),m=f.smul(g).sum(a.smul(c)).smul(p),d=new W(0,n[0].b-L.dot(l[r]),n[0].c-m.dot(l[r]),0);return[L,m,d]}allstickers(){let t=\\\"allstickers\\\";this.faces=NL(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 S=0;S<this.faces.length;S++)this.facecentermass[S]=this.faces[S].centermass();let r=[],n=[];for(let S of this.moveplanes){let z=S.makenormal(),N=!1;for(let b of n)z.sameplane(b.makenormal())&&(N=!0);N||(n.push(z),r.push([]))}for(let S of this.moveplanes2){let z=S.makenormal();for(let N=0;N<n.length;N++)if(z.sameplane(n[N])){r[N].push(S);break}}for(let S=0;S<r.length;S++){let z=r[S].map(b=>b.normalizeplane()),N=n[S];for(let b=0;b<z.length;b++)z[b].makenormal().dist(N)>be&&(z[b]=z[b].smul(-1));z.sort((b,w)=>b.a-w.a),r[S]=z}this.moveplanesets=r,this.moveplanenormals=n;let l=r.map(S=>S.length);this.options.verbosity>0&&console.log(`# Move plane sets: ${l}`);let o=[];for(let S=0;S<r.length;S++)o.push([]);for(let S of this.rotations){if(Math.abs(Math.abs(S.a)-1)<be)continue;let z=S.makenormal();for(let N=0;N<r.length;N++)if(z.sameplane(n[N])){o[N].push(S);break}}this.moverotations=o;for(let S=0;S<o.length;S++){let z=o[S],N=z[0].makenormal();for(let b=0;b<z.length;b++)N.dist(z[b].makenormal())>be&&(z[b]=z[b].smul(-1));z.sort((b,w)=>b.angle()-w.angle()),o[S][0].dot(n[S])<0&&z.reverse()}let i=o.map(S=>1+S.length);this.movesetorders=i;let a=[],s=\\\"?\\\";for(let S=0;S<r.length;S++){let z=n[S],N=null,b=null;for(let w of this.geonormals){let M=z.dot(w[0]);Math.abs(M-1)<be?(b=[w[1],w[2]],s=w[2]):Math.abs(M+1)<be&&(N=[w[1],w[2]],s=w[2])}if(b===null||N===null)throw new Error(\\\"Saw positive or negative sides as null\\\");a.push([b[0],b[1],N[0],N[1],1+r[S].length]),this.addNotationMapper===\\\"NxNxNCubeMapper\\\"&&s===\\\"f\\\"&&(this.notationMapper=new lo(1+r[S].length),this.addNotationMapper=\\\"\\\"),this.addNotationMapper===\\\"SkewbMapper\\\"&&r[0].length===1&&(this.notationMapper=new io(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 $n(this.swizzler),this.addNotationMapper=\\\"\\\"):(this.notationMapper=new oo(this.swizzler),this.addNotationMapper=\\\"\\\")),this.addNotationMapper===\\\"MegaminxMapper\\\"&&s===\\\"f\\\"&&(1+r[S].length===3&&(this.notationMapper=new no(this.notationMapper)),this.addNotationMapper=\\\"\\\"),this.addNotationMapper===\\\"FTOMapper\\\"&&s===\\\"f\\\"&&(1+r[S].length===3&&(this.notationMapper=new ro(this.notationMapper,this.swizzler)),this.addNotationMapper=\\\"\\\")}this.movesetgeos=a;let f=new Map,u=this.faces;for(let S=0;S<u.length;S++){let z=u[S],N=this.keyface(z);if(!f.get(N))f.set(N,[S]);else{let b=f.get(N);if(b.push(S),b.length===this.baseFaceCount){this.options.verbosity>0&&console.log(\\\"# Splitting core.\\\");for(let w=0;w<b.length;w++){let M=`${N} ${w}`;f.set(M,[b[w]])}}}}this.facelisthash=f,this.options.verbosity>0&&console.log(`# Cubies: ${f.size}`);let p=[],g=[],c=[];for(let S of f.values())if(S.length!==this.baseFaceCount){if(S.length>1){let z=S.map(j=>u[j].centermass()),N=Li(z);for(let j=0;S.length>2;j++){let q=!1;for(let ie=0;ie<S.length;ie++){let he=(ie+1)%S.length;if(N.dot(z[ie].cross(z[he]))<0){let Ue=z[ie];z[ie]=z[he],z[he]=Ue;let Ye=S[ie];S[ie]=S[he],S[he]=Ye,q=!0}}if(!q)break;if(j>1e3)throw new Error(\\\"Bad epsilon math; too close to border\\\")}let b=0;for(let j of S)b|=1<<Math.floor(j/this.stickersperface);let w=this.markedface[b],M=-1;for(let j=0;j<S.length;j++)Math.floor(S[j]/this.stickersperface)===w&&(M=j);if(M<0)throw new Error(\\\"Could not find marked face in list\\\");if(M!==0){let j=S.slice();for(let q=0;q<S.length;q++)S[q]=j[(M+q)%S.length]}}for(let z=0;z<S.length;z++){let N=S[z];g[N]=p.length,c[N]=z}p.push(S)}this.cubies=p,this.facetocubie=g,this.facetoord=c;let L=[\\\"?\\\",\\\"CENTERS\\\",\\\"EDGES\\\",\\\"CORNERS\\\",\\\"C4RNER\\\",\\\"C5RNER\\\"],m=[],d=[0,0,0,0,0,0],F=[],A=[],v=0,x=[],U=[],P=[],Z=[],C=S=>p[S].map(z=>this.getfaceindex(z)).join(\\\" \\\"),Q=[];for(let S=0;S<p.length;S++){let z=p[S];if(z.length===0||A[S])continue;let N={},b=0;P.push(0),Q.push([]);let w=z.length,M=d[w]++,j=L[w];(j===void 0||w===this.baseFaceCount)&&(j=\\\"CORE\\\"),j=j+(M===0?\\\"\\\":M+1),m[v]=j,F[v]=w;let q=[S],ie=0;for(A[S]=!0;ie<q.length;){let he=q[ie++],Ue=C(he);if((z.length>1||N[Ue]===void 0)&&(N[Ue]=b++),Z[he]=N[Ue],x[he]=v,Q[v].push(he),U[he]=P[v]++,q.length<this.rotations.length){let Ye=this.facecentermass[p[he][0]];for(let bt of o){let Be=this.facetocubie[this.findface(Ye.rotatepoint(bt[0]))];A[Be]||(q.push(Be),A[Be]=!0)}}}v++}if(this.setReidOrder&&4<=this.stickersperface&&this.stickersperface<=9){let S=[[\\\"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 N of S)for(let b=0;b<N.length;b++){let w=0;for(let M=0;M<N[b].length;M++)w|=1<<N[b].charCodeAt(M)-65;z[w]=b}for(let N of Q)for(let b of N){let w=0;for(let M of p[b])w|=1<<this.facenames[this.getfaceindex(M)][1].charCodeAt(0)-65;U[b]=z[w]}}if(this.cubiesetnums=x,this.cubieordnums=U,this.cubiesetnames=m,this.cubieords=P,this.orbitoris=F,this.cubievaluemap=Z,this.cubiesetcubies=Q,this.options.fixedPieceType!==null){for(let S=0;S<p.length;S++)if(this.options.fixedPieceType===\\\"v\\\"&&p[S].length>2||this.options.fixedPieceType===\\\"e\\\"&&p[S].length===2||this.options.fixedPieceType===\\\"f\\\"&&p[S].length===1){this.fixedCubie=S;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 ${P}`)}unswizzle(t){let r=this.notationMapper.notationToInternal(t);return r===null?null:r.modified({family:this.swizzler.unswizzle(r.family)})}stringToBlockMove(t){let r=RegExp(\\\"^(([0-9]+)-)?([0-9]+)?([^0-9]+)([0-9]+'?)?$\\\"),n=t.match(r);if(n===null)throw new Error(`Bad move passed ${t}`);let l=n[4],o,i;if(n[2]!==void 0){if(n[3]===void 0)throw new Error(\\\"Missing second number in range\\\");o=parseInt(n[2],10)}n[3]!==void 0&&(i=parseInt(n[3],10));let a=\\\"1\\\",s=1;return n[5]!==void 0&&(a=n[5],a[0]===\\\"'\\\"&&(a=`-${a.substring(1)}`),s=parseInt(a,10)),new B(new k(l,i,o),s)}parseMove(t){let r=this.notationMapper.notationToInternal(t);if(r===null)throw new Error(`Bad move ${t.family}`);t=r;let n=t.family,l=!1;if(n.endsWith(\\\"v\\\")&&n[0]<=\\\"Z\\\"){if(t.innerLayer!==void 0||t.outerLayer!==void 0)throw new Error(\\\"Cannot use a prefix with full cube rotations\\\");n=n.slice(0,-1),l=!0}n.endsWith(\\\"w\\\")&&n[0]<=\\\"Z\\\"&&(n=n.slice(0,-1).toLowerCase());let o,i=-1,a=this.swizzler.unswizzle(n),s=!1;for(let p=0;p<this.movesetgeos.length;p++){let g=this.movesetgeos[p];a===g[0]&&(s=!0,o=g,i=p),a===g[2]&&(s=!1,o=g,i=p)}let f=1,u=1;if(n.toUpperCase()!==n&&(u=2),o===void 0)throw new Error(`Bad grip in move ${t.family}`);if(t.outerLayer!==void 0&&(f=t.outerLayer),t.innerLayer!==void 0&&(t.outerLayer===void 0?(u=t.innerLayer,n<=\\\"Z\\\"?f=u:f=1):u=t.innerLayer),f--,u--,l&&(f=0,u=this.moveplanesets[i].length),f<0||f>this.moveplanesets[i].length||u<0||u>this.moveplanesets[i].length)throw new Error(`Bad slice spec ${f} ${u} vs ${this.moveplanesets[i].length}`);if(!ML&&f===0&&u===this.moveplanesets[i].length&&!l)throw new Error(\\\"! full puzzle rotations must be specified with v suffix.\\\");return[void 0,i,f,u,s,t.amount]}parsemove(t){let r=this.parseMove(this.stringToBlockMove(t));return r[0]=t,r}genperms(){let t=\\\"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 l=this.cubies[n][0],o=this.getfaceindex(l),i=this.basefaces[o].centermass();if(i.dist(this.facecentermass[l])<be){let a=1<<o|1<<this.baseFaceCount,s=this.markedface[a],f=this.baseplanes[s].makenormal(),u=-1,p=-1;for(let L=0;L<this.faces[l].length;L++){let m=this.faces[l].get(L),d=f.dot(m.sub(i));d>u&&(u=d,p=L)}let g=(p+1)%this.faces[l].length;if(Math.abs(f.dot(this.faces[l].get(g).sub(i))-u)<be&&(p=g),p!==0){let L=[];for(let m=0;m<this.faces[l].length;m++)L.push(this.faces[l].get((m+p)%this.faces[l].length));this.faces[l]=new Sr(L)}let c=this.basefaces[o].length;for(let L=1;L<c;L++)this.cubies[n].push(this.cubies[n][L-1]);this.duplicatedFaces[l]=c,this.duplicatedCubies[n]=c,this.orbitoris[this.cubiesetnums[n]]=c}}}for(let n=0;n<this.moveplanesets.length;n++){let l=this.moveplanesets[n],o=[],i=[l.length+1,0],a=1;for(;a*2<=l.length;)a*=2;for(let u=0;u<this.faces.length;u++){let p=0;if(l.length>0){let g=this.facecentermass[u].dot(l[0]);for(let c=a;c>0;c>>=1)p+c<=l.length&&g>l[p+c-1].a&&(p+=c);p=l.length-p}for(o.push(p);i.length<=p;)i.push(0);i[p]++}let s=new Array(i.length);for(let u=0;u<i.length;u++)s[u]=[];let f=[];for(let u=0;u<this.faces.length;u++){if(o[u]<0)continue;let p=[this.facetocubie[u],this.facetoord[u]],g=this.facecentermass[u],c=g,L=u,m=o[L];for(;;){o[L]=-1;let d=g.rotatepoint(this.moverotations[n][0]);if(d.dist(c)<be)break;L=this.findface(d),p.push(this.facetocubie[L],this.facetoord[L]),g=d}if(p.length>2&&this.options.orientCenters&&(this.cubies[p[0]].length===1||this.duplicatedCubies[p[0]]>1)&&this.facecentermass[u].dist(this.basefaces[this.getfaceindex(u)].centermass())<be){let d=this.faces[this.cubies[p[0]][0]];for(let F=0;F<p.length;F+=2){let A=this.faces[this.cubies[p[F]][0]],v=-1;for(let x=0;x<d.length;x++)if(A.get(x).dist(d.get(0))<be){v=x;break}if(v<0)throw new Error(\\\"Couldn't find rotation of center faces; ignoring for now.\\\");p[F+1]=v,d=d.rotate(this.moverotations[n][0])}}if(p.length===2&&this.options.orientCenters)for(let d=1;d<this.movesetorders[n];d++)m===0?p.push(p[0],d):p.push(p[0],(this.movesetorders[n]-d)%this.movesetorders[n]);if(p.length>2&&!f[p[0]]){if(p.length!==2*this.movesetorders[n])throw new Error(\\\"Bad length in perm gen\\\");for(let d of p)s[m].push(d)}for(let d=0;d<p.length;d+=2)f[p[d]]=!0}for(let u=0;u<s.length;u++)s[u]=s[u].slice();r.push(s)}if(this.cmovesbyslice=r,this.options.moveList){let n=[];for(let l of this.options.moveList)n.push(this.parsemove(l));this.parsedmovelist=n}this.facelisthash.clear(),this.facecentermass=[]}getboundarygeometry(){return{baseplanes:this.baseplanes,facenames:this.facenames,faceplanes:this.faceplanes,vertexnames:this.vertexnames,edgenames:this.edgenames,geonormals:this.geonormals}}getmovesets(t){let r=this.moveplanesets[t].length,n=[];if(this.parsedmovelist!==void 0)for(let l of this.parsedmovelist)l[1]===t&&(l[4]?n.push([l[2],l[3]]):n.push([r-l[3],r-l[2]]),n.push(l[5]));else if(this.options.vertexMoves&&!this.options.allMoves){let l=this.movesetgeos[t];if(l[1]!==l[3])for(let o=0;o<r;o++)l[1]!==\\\"v\\\"?(this.options.outerBlockMoves?n.push([o+1,r]):n.push([o+1]),n.push(1)):(this.options.outerBlockMoves?n.push([0,o]):n.push([o,o]),n.push(1))}else for(let l=0;l<=r;l++)!this.options.allMoves&&l+l===r||(this.options.outerBlockMoves?l+l>r?n.push([l,r]):n.push([0,l]):n.push([l,l]),n.push(1));if(this.fixedCubie>=0){let l=this.keyface3(this.faces[this.cubies[this.fixedCubie][0]])[t],o=[];for(let i=0;i<n.length;i+=2){let a=n[i];if(l>=a[0]&&l<=a[1])if(a[0]===0)a=[a[1]+1,r];else if(r===a[1])a=[0,a[0]-1];else throw Error(\\\"fixed cubie option would disconnect move\\\");let s=!1;for(let f=0;f<o.length;f+=2)if(o[f][0]===a[0]&&o[f][1]===a[1]&&o[f+1]===n[i+1]){s=!0;break}s||(o.push(a),o.push(n[i+1]))}n=o}return n}graybyori(t){let r=this.cubies[t].length;return this.duplicatedCubies[t]&&(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(t){let r=this.cubies[t].length;return this.duplicatedCubies[t]&&(r=1),r===1&&!this.options.includeCenterOrbits||r===2&&!this.options.includeEdgeOrbits||r>2&&!this.options.includeCornerOrbits}skipcubie(t){return this.skipbyori(t)}header(t){return t+PL+`\\n`+t+`\\n`}writegap(){let t=this.getOrbitsDef(!1),r=[],n=[];for(let o=0;o<t.moveops.length;o++){let i=`M_${pi(this.notationMapper,t.movenames[o])}`,a=!1;i[i.length-1]===\\\"'\\\"&&(i=i.substring(0,i.length-1),a=!0),n.push(i),a?r.push(`${i}:=${t.moveops[o].toPerm().inv().toGap()};`):r.push(`${i}:=${t.moveops[o].toPerm().toGap()};`)}r.push(\\\"Gen:=[\\\"),r.push(n.join(\\\",\\\")),r.push(\\\"];\\\");let l=t.solved.identicalPieces();return r.push(`ip:=[${l.map(o=>`[${o.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(t=\\\"PuzzleGeometryPuzzle\\\"){let r=this.getOrbitsDef(!1);return this.header(\\\"# \\\")+r.toKsolve(t,this.notationMapper).join(`\\n`)}getKPuzzleDefinition(t=!0,r=!0){let l=this.getOrbitsDef(t,r).toKPuzzleDefinition(r);if(l.experimentalPuzzleDescription=this.puzzleDescription,!l)throw new Error(\\\"Missing definition!\\\");return l}getMoveFromBits(t,r,n,l,o,i){let a=[],s=[],f=[];for(let g of this.cubieords)s.push(jt(g)),f.push(vr(g));for(let g=t[0];g<=t[1];g++){let c=l[g];for(let L=0;L<c.length;L+=2*i){let m=c.slice(L,L+2*i),d=this.cubiesetnums[m[0]];for(let v=0;v<m.length;v+=2)m[v]=this.cubieordnums[m[v]];let F=2,A=3;n&&(F=m.length-2,A=m.length-1),s[d]===jt(this.cubieords[d])&&(s[d]=s[d].slice(),this.orbitoris[d]>1&&!this.options.fixedOrientation&&(f[d]=f[d].slice()));for(let v=0;v<m.length;v+=2)s[d][m[(v+F)%m.length]]=m[v],this.orbitoris[d]>1&&!this.options.fixedOrientation&&(f[d][m[v]]=(m[(v+A)%m.length]-m[(v+1)%m.length]+2*this.orbitoris[d])%this.orbitoris[d])}}let u=new qt(jt(24),vr(24),1);for(let g=0;g<this.cubiesetnames.length;g++)if(!(o&&!o[g]))if(this.orbitoris[g]===1||this.options.fixedOrientation)s[g]===jt(u.perm.length)?(s[g]!==u.perm&&(u=new qt(s[g],f[g],1)),a.push(u)):a.push(new qt(s[g],f[g],1));else{let c=new Array(f[g].length);for(let L=0;L<s[g].length;L++)c[L]=f[g][s[g][L]];a.push(new qt(s[g],c,this.orbitoris[g]))}let p=new lr(a);return r!==1&&(p=p.mulScalar(r)),p}omitSet(t){for(let r of this.options.excludeOrbits)if(r===t)return!0;return!1}diffmvsets(t,r,n,l){for(let o=0;o<t.length;o+=2){let i=!1;for(let a=0;!i&&a<r.length;a+=2)l?t[o][0]+r[a][1]===n&&t[o][1]+r[a][0]===n&&t[o+1]===r[a+1]&&(i=!0):t[o][0]===r[a][0]&&t[o][1]===r[a][1]&&t[o+1]===r[a+1]&&(i=!0);if(!i)return!0}return!1}getOrbitsDef(t,r=!0){let n=[];if(t)for(let m=0;m<this.cubiesetnames.length;m++)n.push(1);let l=[],o=[],i=[],a=[];for(let m=0;m<this.moveplanesets.length;m++){let d=this.getmovesets(m);i.push(d),this.options.addRotations?a.push(1):a.push(0)}let s=[];for(let m=0;m<this.moveplanesets.length;m++){let d=this.moveplanesets[m].length,F=!1,A=i[m];for(let v=0;v<A.length;v+=2)A[v][0]===0&&A[v][1]===d&&(F=!0);s[m]=F}if(this.options.addRotations&&(this.options.moveList||this.options.fixedPieceType!==null)){for(let m=0;m<this.moverotations.length;m++)a[m]=0;for(let m=0;m<this.moveplanesets.length;m++){if(s[m]){a[m]=3;continue}for(let d=0;d<this.moverotations.length;d++){let F=this.moveplanenormals[m];for(let A=1;A*2<=this.movesetorders[d];A++){if(F=F.rotatepoint(this.moverotations[d][0]),a[d]&A)continue;let v=-1,x=!1;for(let P=0;P<this.moveplanenormals.length;P++)if(F.dist(this.moveplanenormals[P])<be){v=P;break}else if(F.dist(this.moveplanenormals[P].smul(-1))<be){v=P,x=!0;break}if(v<0)throw new Error(\\\"Could not find rotation\\\");let U=i[v];(U.length!==i[m].length||this.moveplanesets[m].length!==this.moveplanesets[v].length||this.diffmvsets(U,i[m],this.moveplanesets[v].length,x))&&(a[d]|=A)}}}for(let m=0;m<this.moverotations.length;m++)if(a[m]===0)a[m]=1;else if(a[m]===1)this.movesetorders[m]>3?a[m]=2:a[m]=0;else if(a[m]===3)a[m]=0;else throw new Error(\\\"Impossible addrot val\\\")}for(let m=0;m<this.moveplanesets.length;m++)a[m]!==0&&!s[m]&&(i[m].push([0,this.moveplanesets[m].length]),i[m].push(a[m]));for(let m=0;m<this.moveplanesets.length;m++){let d=i[m],F=this.movesetorders[m];for(let x=0;x<d.length;x+=2)for(let U=0;U<x;U+=2)if(d[x][0]===d[U][0]&&d[x][1]===d[U][1])throw new Error(\\\"Redundant moves in moveset.\\\");let A=[];for(let x=0;x<d.length;x+=2)for(let U=d[x][0];U<=d[x][1];U++)A[U]=1;let v=this.cmovesbyslice[m];for(let x=0;x<v.length;x++){if(A[x]!==1)continue;let U=v[x];for(let P=0;P<U.length;P+=2*F){if(this.skipcubie(U[P]))continue;let Z=this.cubiesetnums[U[P]];n[Z]=1}}}for(let m=0;m<this.cubiesetnames.length;m++)if(!!n[m]){if(this.omitSet(this.cubiesetnames[m])){n[m]=0;continue}l.push(this.cubiesetnames[m]),o.push(new el(this.cubieords[m],this.options.fixedOrientation?1:this.orbitoris[m]))}let f=[];for(let m=0;m<this.cubiesetnames.length;m++){if(!n[m]||this.omitSet(this.cubiesetnames[m]))continue;let d=[],F=[];for(let A=0;A<this.cubieords[m];A++){if(t)d.push(A);else{let v=this.cubiesetcubies[m][A];d.push(this.cubievaluemap[v])}F.push(0)}f.push(new qt(d,F,this.options.fixedOrientation?1:this.orbitoris[m]))}let u=[],p=[],g=[],c=[];if(r)for(let m=0;m<this.moveplanesets.length;m++){let F=this.moveplanesets[m].length,A=i[m],v=this.movesetgeos[m];for(let x=0;x<A.length;x+=2){let U=A[x],P,Z=!1;if(this.parsedmovelist!==void 0)for(let Q of this.parsedmovelist){if(Q[1]!==m)continue;let S=[];Q[4]?S=[Q[2],Q[3]]:S=[F-Q[3],F-Q[2]],S[0]===U[0]&&S[1]===U[1]&&(P=Q[0],Z=!Q[4])}if(P)u.push(P),p.push(!0);else{let Q=WL(v,U,F);Z=Q[1];let S=Q[0];A[x+1]===1?u.push(S):u.push(S+A[x+1]),p.push(!1)}c.push(U[0]===0&&U[1]===F);let C=this.getMoveFromBits(U,A[x+1],Z,this.cmovesbyslice[m],n,this.movesetorders[m]);g.push(C)}}let L=new sn(l,o,new fn(f),u,g,c,p);return this.options.optimizeOrbits&&(L=L.optimize()),this.options.scrambleAmount!==0&&L.scramble(this.options.scrambleAmount),L}getScramble(t=0){let r=this.getOrbitsDef(!1);return r.transformToKTransformationData(r.getScrambleTransformation(t))}getMovesAsPerms(){return this.getOrbitsDef(!1).moveops.map(t=>t.toPerm())}showcanon(t){Wf(this.getOrbitsDef(!1),t)}getsolved(){let t=[];for(let r=0;r<this.baseFaceCount;r++)for(let n=0;n<this.stickersperface;n++)t.push(r);return new dt(t)}getOrientationRotation(t){let[r,[n,l,o]]=t[0],i=new W(0,n,-l,o),[a,[s,f,u]]=t[1],p=new W(0,s,-f,u),g=null,c=null,L=this.swizzler.unswizzle(r),m=this.swizzler.unswizzle(a);for(let v of this.geonormals)L===v[1]&&(g=v[0]),m===v[1]&&(c=v[0]);if(!g)throw new Error(`Could not find feature ${r}`);if(!c)throw new Error(`Could not find feature ${a}`);let d=g.pointrotation(i);return c.rotatepoint(d).unproject(i).pointrotation(p.unproject(i)).mul(d)}getInitial3DRotation(){let t=this.baseFaceCount,r=null;if(this.options.puzzleOrientation?r=this.options.puzzleOrientation:this.options.puzzleOrientations&&(r=this.options.puzzleOrientations[t]),r||(r=GL()[t]),!r)throw new Error(\\\"No default orientation?\\\");return this.getOrientationRotation(r)}generate2dmapping(t=800,r=500,n=10,l=!1,o=.92){t-=2*n,r-=2*n;function i(b,w){let M=b[1][0]-b[0][0],j=b[1][1]-b[0][1],q=2*Math.PI/w,ie=Math.cos(q),he=Math.sin(q);for(let Ue=2;Ue<w;Ue++){let Ye=M*ie+j*he;j=j*ie-M*he,M=Ye,b.push([b[Ue-1][0]+M,b[Ue-1][1]+j])}}this.genperms();let f=this.getboundarygeometry().facenames[0][0].length,u=this.net;if(u===null)throw new Error(\\\"No net?\\\");let p={},g=0,c=0,L=1,m=0;p[u[0][0]]=[[1,0],[0,0]],i(p[u[0][0]],f);for(let b of u){let w=b[0];if(!p[w])throw new Error(\\\"Bad edge description; first edge not connected.\\\");for(let M=1;M<b.length;M++){let j=b[M];j===\\\"\\\"||p[j]||(p[j]=[p[w][M%f],p[w][(M+f-1)%f]],i(p[j],f))}}for(let b in p){let w=p[b];for(let M of w)g=Math.min(g,M[0]),L=Math.max(L,M[0]),c=Math.min(c,M[1]),m=Math.max(m,M[1])}let d=Math.min(t/(L-g),r/(m-c)),F=.5*(t-d*(L+g)),A=.5*(r-d*(m+c)),v={},x=this.getboundarygeometry(),U={},P=[[d+F,A],[F,A]];U[u[0][0]]=P,i(U[u[0][0]],f),v[this.facenames[0][1]]=this.project2d(0,0,[new W(0,P[0][0],P[0][1],0),new W(0,P[1][0],P[1][1],0)]);let Z=[];Z[0]=0;for(let b of u){let w=b[0];if(!U[w])throw new Error(\\\"Bad edge description; first edge not connected.\\\");let M=-1;for(let q=0;q<x.facenames.length;q++)if(w===x.facenames[q][1]){M=q;break}if(M<0)throw new Error(`Could not find first face name ${w}`);let j=x.facenames[M][0];for(let q=1;q<b.length;q++){let ie=b[q];if(ie===\\\"\\\"||U[ie])continue;U[ie]=[U[w][q%f],U[w][(q+f-1)%f]],i(U[ie],f);let he=Z[M],Ue=j[(he+q)%f].sum(j[(he+q+f-1)%f]).smul(.5),Ye=hi(x.edgenames,Ue),bt=x.edgenames[Ye][1],Be=KL(bt,this.facenames),Ft=Be[w===Be[0]?1:0],it=-1;for(let Ce=0;Ce<x.facenames.length;Ce++)if(Ft===x.facenames[Ce][1]){it=Ce;break}if(it<0)throw new Error(\\\"Could not find second face name\\\");let mt=x.facenames[it][0];for(let Ce=0;Ce<mt.length;Ce++)if(mt[Ce].sum(mt[(Ce+1)%f]).smul(.5).dist(Ue)<=be){let _=U[w][(q+f-1)%f],T=U[w][q%f];Z[it]=Ce,v[Ft]=this.project2d(it,Ce,[new W(0,T[0],T[1],0),new W(0,_[0],_[1],0)]);break}}}let C=0,Q=0,S=this.getInitial3DRotation();for(let b of this.faces){l&&(b=b.rotate(S));for(let w=0;w<b.length;w++)C=Math.max(C,Math.abs(b.get(w).b)),Q=Math.max(Q,Math.abs(b.get(w).c))}let z=Math.min(r/Q/2,(t-n)/C/4);return(b,w)=>{if(l){w=w.rotatepoint(S);let M=.5*n+.25*t,j=this.baseplanes[b].rotateplane(S).d<0?1:-1;return[n+t*.5+j*(M-w.b*z),n+r*.5+w.c*z]}else{let M=v[this.facenames[b][1]];return[n+o*w.dot(M[0])+M[2].b,n+r-o*w.dot(M[1])-M[2].c]}}}generatesvg(t=800,r=500,n=10,l=!1){let o=this.generate2dmapping(t,r,n,l);function i(g,c,L){return`<polygon id=\\\"${g}\\\" class=\\\"sticker\\\" style=\\\"fill: ${L}\\\" points=\\\"${c.map(m=>`${m[0]} ${m[1]}`).join(\\\" \\\")}\\\"/>\\n`}let a=this.getsolved(),s=[],f=[];for(let g=0;g<this.baseFaceCount;g++)s[g]=this.colors[this.facenames[g][1]];for(let g=0;g<this.faces.length;g++){let c=this.faces[g],L=Math.floor(g/this.stickersperface),m=[];for(let d=0;d<c.length;d++)m.push(o(L,c.get(d)));f.push(m)}let u=[];for(let g=0;g<this.baseFaceCount;g++){u.push(\\\"<g>\\\"),u.push(`<title>${this.facenames[g][1]}</title>\\n`);for(let c=0;c<this.stickersperface;c++){let L=g*this.stickersperface+c,m=this.facetocubie[L],d=this.facetoord[L],F=this.cubiesetnums[m],A=this.cubieordnums[m],v=this.graybyori(m)?\\\"#808080\\\":s[a.p[L]],x=`${this.cubiesetnames[F]}-l${A}-o${d}`;if(u.push(i(x,f[L],v)),this.duplicatedFaces[L])for(let U=1;U<this.duplicatedFaces[L];U++)x=`${this.cubiesetnames[F]}-l${A}-o${U}`,u.push(i(x,f[L],v))}u.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${u.join(\\\"\\\")}</svg>`}get3d(t){let r=[],n=this.getInitial3DRotation(),l=[],o=.52*this.basefaces[0].get(0).len();for(let f=0;f<this.basefaces.length;f++){let u=this.basefaces[f].rotate(n),p=this.facenames[f][1];l.push({coords:ws(u,o),name:p})}for(let f=0;f<this.faces.length;f++){let u=Math.floor(f/this.stickersperface),p=this.facetocubie[f],g=this.facetoord[f],c=this.cubiesetnums[p],L=this.cubieordnums[p],m=this.graybyori(p)?\\\"#808080\\\":this.colors[this.facenames[u][1]];t?.stickerColors&&(m=t.stickerColors[f]);let d=this.faces[f].rotate(n);r.push({coords:ws(d,o),color:m,orbit:this.cubiesetnames[c],ord:L,ori:g,face:u});let F=d;if(this.duplicatedFaces[f]){let A=F.length/this.duplicatedFaces[f];for(let v=1;v<this.duplicatedFaces[f];v++){for(let x=0;x<A;x++)F=F.rotateforward();r.push({coords:ws(F,o),color:m,orbit:this.cubiesetnames[c],ord:L,ori:v,face:u,isDup:!0})}}}let i=[];for(let f=0;f<this.movesetgeos.length;f++){let u=this.movesetgeos[f],p=this.movesetorders[f];for(let g of this.geonormals)u[0]===g[1]&&u[1]===g[2]&&(i.push({coordinates:Fi(g[0].rotatepoint(n),1),quantumMove:new B(u[0]),order:p}),i.push({coordinates:Fi(g[0].rotatepoint(n).smul(-1),1),quantumMove:new B(u[2]),order:p}))}let a=this.generate2dmapping(2880,2160,0,!1,1),s=function(){let f=n.invrot();return function(u,p){let g=new W(0,p[0]*o,-p[1]*o,p[2]*o);g=g.rotatepoint(f);let c=a(u,g);return c[0]/=2880,c[1]=1-c[1]/2160,c}}().bind(this);return{stickers:r,faces:l,axis:i,unswizzle:this.unswizzle.bind(this),notationMapper:this.notationMapper,textureMapper:{getuv:s}}}getGeoNormal(t){let r=this.getInitial3DRotation(),n=this.swizzler.unswizzle(t);for(let l of this.geonormals)if(n===l[1]){let o=Fi(l[0].rotatepoint(r),1);return Math.abs(o[0])<be&&Math.abs(o[2])<be&&(o[0]=0,o[2]=1e-6),o}}getfaceindex(t){let r=this.stickersperface;return Math.floor(t/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(t){let n=this.getOrbitsDef(!1).reassemblySize();t(`Reassembly size is ${n}`);let l=Ri(this.getMovesAsPerms(),t),o=n/l;t(`Ratio is ${o}`)}},Di=class{constructor(t,r){this.pg=t;this.orbitNames=r.orbitnames}lookupMove(t){let r=this.pg.parseMove(t);if(this.pg.parsedmovelist){let i=!1;for(let a of this.pg.parsedmovelist)a[1]===r[1]&&a[2]===r[2]&&a[3]===r[3]&&a[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 l=this.pg.getMoveFromBits(n,r[5],!r[4],this.pg.cmovesbyslice[r[1]],void 0,this.pg.movesetorders[r[1]]);return sn.transformToKTransformationData(this.orbitNames,l)}}});var rl={};Lt(rl,{EXPERIMENTAL_PUZZLE_BASE_SHAPES:()=>t1,EXPERIMENTAL_PUZZLE_CUT_TYPES:()=>r1,ExperimentalPGNotation:()=>Di,PuzzleGeometry:()=>fo,Quat:()=>W,getPG3DNamedPuzzles:()=>$f,getPuzzleDescriptionString:()=>e1,getPuzzleGeometryByDesc:()=>_s,getPuzzleGeometryByName:()=>n1,parseOptions:()=>Of,parsePuzzleDescription:()=>ao,schreierSims:()=>Ri});var nl=y(()=>{\\\"use strict\\\";so();As();Bi();Es();so();so()});async function un(e){return(await Promise.resolve().then(()=>(nl(),rl))).getPuzzleGeometryByName(e,{allMoves:!0,orientCenters:!0,addRotations:!0})}async function QL(e,t){let r=await e,n=r.getKPuzzleDefinition(!0);n.name=t;let l=await Promise.resolve().then(()=>(nl(),rl)),o=new l.ExperimentalPGNotation(r,r.getOrbitsDef(!0));return new ye(n,{experimentalPGNotation:o})}var Ai,yi,vi,Rt,or,ir=y(()=>{\\\"use strict\\\";Xe();to();wt();Rt=class{constructor(t){J(this,Ai,void 0);J(this,yi,void 0);J(this,vi,void 0);this.pgId=t.pgID,this.id=t.id,this.fullName=t.fullName,this.inventedBy=t.inventedBy,this.inventionYear=t.inventionYear}pg(){return R(this,Ai)??V(this,Ai,un(this.pgId??this.id))}kpuzzle(){return R(this,yi)??V(this,yi,QL(this.pg(),this.id))}svg(){return R(this,vi)??V(this,vi,(async()=>(await this.pg()).generatesvg())())}};Ai=new WeakMap,yi=new WeakMap,vi=new WeakMap;or=class extends Rt{constructor(){super(...arguments);this.stickerings=Zn}appearance(r){return nr(this,r)}}});var kt,l1=y(()=>{\\\"use strict\\\";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 o1,i1=y(()=>{\\\"use strict\\\";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=\\\"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 a1,s1=y(()=>{\\\"use strict\\\";a1={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 f1,u1=y(()=>{\\\"use strict\\\";f1=`<?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 p1,g1=y(()=>{\\\"use strict\\\";p1=`<?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=\\\"#stickerA\\\" transform=\\\"translate(4.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l3-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(2, 1)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS-l3-o2\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(4.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CORNERS-l2-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(6.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l2-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(6.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l2-o2\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(8.4, 1)\\\" style=\\\"fill: blue\\\"/>\\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=\\\"#stickerV\\\" transform=\\\"translate(3.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS2-l3-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(2, 2)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS2-l3-o2\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(3.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CORNERS2-l2-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(7.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS2-l2-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(7.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS2-l2-o2\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(8.4, 2)\\\" style=\\\"fill: blue\\\"/>\\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=\\\"#stickerV\\\" transform=\\\"translate(3, 1)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"EDGES-l0-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(4.2, 1.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\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-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(8.4, 0)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"EDGES-l1-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(2, 0)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l2-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(5.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l2-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(5.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"EDGES-l3-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(9.4, 1)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"EDGES-l3-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(6.2, 4.2)\\\" style=\\\"fill: yellow\\\"/>\\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 c1,m1=y(()=>{\\\"use strict\\\";c1={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 L1,B1=y(()=>{\\\"use strict\\\";L1=`<?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 xr={};Lt(xr,{clockJSON:()=>a1,clockSVG:()=>f1,cube2x2x2JSON:()=>kt,cube2x2x2SVG:()=>o1,pyraminxSVG:()=>p1,sq1HyperOrbitJSON:()=>c1,sq1HyperOrbitSVG:()=>L1});var Ur=y(()=>{\\\"use strict\\\";l1();i1();s1();u1();g1();m1();B1()});var uo,d1=y(()=>{\\\"use strict\\\";Xe();ir();wt();to();uo={id:\\\"2x2x2\\\",fullName:\\\"2\\\\xD72\\\\xD72 Cube\\\",kpuzzle:de(async()=>new ye((await Promise.resolve().then(()=>(Ur(),xr))).cube2x2x2JSON)),svg:async()=>(await Promise.resolve().then(()=>(Ur(),xr))).cube2x2x2SVG,pg:de(async()=>un(\\\"2x2x2\\\")),appearance:e=>nr(uo,e),stickerings:Zn}});var Fe,R1=y(()=>{\\\"use strict\\\";Fe={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]}}}};Fe.moves.Uw=Fe.moves.u;Fe.moves.Lw=Fe.moves.l;Fe.moves.Fw=Fe.moves.f;Fe.moves.Rw=Fe.moves.r;Fe.moves.Bw=Fe.moves.b;Fe.moves.Dw=Fe.moves.d;Fe.moves.Rv=Fe.moves.x;Fe.moves.Uv=Fe.moves.y;Fe.moves.Fv=Fe.moves.z;Fe.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]}};Fe.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]}};Fe.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]}}});function ks(e){let t=e.stateData.CENTERS.pieces[0],r=e.stateData.CENTERS.pieces[5],n=e.stateData.CENTERS.pieces[1],l=n;return t<n&&l--,r<n&&l--,[t,l]}function F1(){if(!jL){let e=[\\\"\\\",\\\"z\\\",\\\"x\\\",\\\"z'\\\",\\\"x'\\\",\\\"x2\\\"].map(r=>E.fromString(r)),t=new E(\\\"y\\\");for(let r of e){let n=Si.algToTransformation(r);for(let l=0;l<4;l++){n=n.applyAlg(t);let[o,i]=ks(n.toKState());h1[o][i]=n.invert()}}}return h1}function D1(e){let[t,r]=ks(e),n=F1()[t][r];return e.applyTransformation(n)}function zs(e,t){return t.ignorePuzzleOrientation&&(e=D1(e)),t.ignoreCenterOrientation&&(e=new pe(e.kpuzzle,{EDGES:e.stateData.EDGES,CORNERS:e.stateData.CORNERS,CENTERS:{pieces:e.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}})),!!e.experimentalToTransformation()?.isIdentityTransformation()}var h1,jL,Cs=y(()=>{\\\"use strict\\\";me();Xe();Ns();h1=new Array(6).fill(0).map(()=>new Array(6)),jL=!1});var A1=y(()=>{\\\"use strict\\\";Xe()});var Si,Ns=y(()=>{\\\"use strict\\\";Xe();R1();Cs();Cs();ds();A1();si();Si=new ye(Fe);Fe.experimentalIsStateSolved=zs});function We(e,t,r,n){let l=[];for(let o of e){let i=B.fromString(o),{family:a,amount:s}=i;if(![-1,1].includes(s))throw new Error(\\\"Invalid config move\\\");l.push({family:a,direction:s,type:t,from:r,to:n})}return l}function y1(e,t){let r=S1[e][t]?.[0];if(!r)throw new Error(`Could not find a reference move (axis: ${e}, move source type: ${t})`);return r}function VL(e,t,r,n){if(t+1===r){let g=x1[e].get(t);if(g)return new B(new k(g.family),n*g.direction)}let l=pn[e],{sliceDiameter:o}=l;if(t===0&&r===o){let g=y1(e,5);return new B(new k(g.family),n*g.direction)}let i=t+r>o;i&&([t,r]=[o-r,o-t]);let a=t+1,s=r,f=a===s;f&&(s=null),a===1&&(a=null),f&&a===1&&(s=null),!f&&s===2&&(s=null);let p=y1(e,f?i?1:0:i?3:2);return new B(new k(p.family,s,a),n*p.direction)}function HL(e,t=!0){if(e.length===0)return[];let r=po[e[0].family].axis,n=pn[r],{sliceDiameter:l}=n,o=new Map,i=null;function a(g,c){let L=(o.get(g)??0)+c;t&&(L=L%4+5%4-1),L===0?o.delete(g):o.set(g,L)}let s=0;for(let g of Array.from(e).reverse()){s++;let{moveSourceInfo:c}=po[g.family],L=g.amount*c.direction;switch(c.type){case 0:{let m=(g.innerLayer??1)-1;a(m,L),a(m+1,-L);break}case 1:{let m=l-(g.innerLayer??1);a(m,L),a(m+1,-L);break}case 2:{a((g.outerLayer??1)-1,L),a(g.innerLayer??2,-L);break}case 3:{a(l-(g.innerLayer??2),L),a(l-((g.outerLayer??1)-1),-L);break}case 4:{a(c.from,L),a(c.to,-L);break}case 5:{a(0,L),a(l,-L);break}}[0,2].includes(o.size)&&(i={suffixLength:s,sliceDeltas:new Map(o)})}if(o.size===0)return[];if(!i)return e;let[f,u]=i.sliceDeltas.keys();f>u&&([f,u]=[u,f]);let p=i.sliceDeltas.get(f);return[...e.slice(0,-i.suffixLength),...p!==0?[VL(r,f,u,p)]:[]]}var pn,po,S1,v1,x1,qL,U1,b1=y(()=>{\\\"use strict\\\";me();pn={[\\\"x axis\\\"]:{sliceDiameter:3,extendsThroughEntirePuzzle:!0,moveSourceInfos:[...We([\\\"R\\\"],0,0,3),...We([\\\"L'\\\"],1,0,3),...We([\\\"r\\\",\\\"Rw\\\"],2,0,2),...We([\\\"l'\\\",\\\"Lw'\\\"],3,0,2),...We([\\\"M'\\\"],4,1,2),...We([\\\"x\\\",\\\"Uv\\\",\\\"Dv'\\\"],5,0,3)]},[\\\"y axis\\\"]:{sliceDiameter:3,extendsThroughEntirePuzzle:!0,moveSourceInfos:[...We([\\\"U\\\"],0,0,3),...We([\\\"D'\\\"],1,0,3),...We([\\\"u\\\",\\\"Uw\\\"],2,0,2),...We([\\\"d'\\\",\\\"Dw'\\\"],3,0,2),...We([\\\"E'\\\"],4,1,2),...We([\\\"y\\\",\\\"Uv\\\",\\\"Dv'\\\"],5,0,3)]},[\\\"z axis\\\"]:{sliceDiameter:3,extendsThroughEntirePuzzle:!0,moveSourceInfos:[...We([\\\"F\\\"],0,0,3),...We([\\\"B'\\\"],1,0,3),...We([\\\"f\\\",\\\"Fw\\\"],2,0,3),...We([\\\"b'\\\",\\\"Bw'\\\"],3,0,3),...We([\\\"S\\\"],4,1,2),...We([\\\"z\\\",\\\"Fv\\\",\\\"Bv'\\\"],5,0,3)]}},po={};for(let[e,t]of Object.entries(pn))for(let r of t.moveSourceInfos)po[r.family]={axis:e,moveSourceInfo:r};S1={};for(let e of Object.keys(pn)){let t={};S1[e]=t;for(let r of pn[e].moveSourceInfos)(t[v1=r.type]??(t[v1]=[])).push(r)}x1={};for(let e of Object.keys(pn)){let t=new Map;x1[e]=t;for(let r of pn[e].moveSourceInfos)t.get(r.from)||t.set(r.from,r)}qL=(e,t)=>po[e.family].axis===po[t.family].axis;U1={quantumMoveOrder:()=>4,axis:{areQuantumMovesSameAxis:qL,simplifySameAxisMoves:HL}}});var XL,E1=y(()=>{\\\"use strict\\\";XL=`<?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 ZL,w1=y(()=>{\\\"use strict\\\";ZL=`<?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 Ps={};Lt(Ps,{cube3x3x3LLSVG:()=>ZL,cube3x3x3SVG:()=>XL});var Ms=y(()=>{\\\"use strict\\\";E1();w1()});var Is,_1=y(()=>{\\\"use strict\\\";ir();wt();Ns();to();b1();Is={id:\\\"3x3x3\\\",fullName:\\\"3\\\\xD73\\\\xD73 Cube\\\",inventedBy:[\\\"Ern\\\\u0151 Rubik\\\"],inventionYear:1974,kpuzzle:de(async()=>Si),svg:de(async()=>(await Promise.resolve().then(()=>(Ms(),Ps))).cube3x3x3SVG),llSVG:de(async()=>(await Promise.resolve().then(()=>(Ms(),Ps))).cube3x3x3LLSVG),pg:de(async()=>un(\\\"3x3x3\\\")),appearance:e=>nr(Is,e),stickerings:Zn,puzzleSpecificSimplifyOptions:U1}});var k1,z1=y(()=>{\\\"use strict\\\";Xe();wt();k1={id:\\\"clock\\\",fullName:\\\"Clock\\\",inventedBy:[\\\"Christopher C. Wiggs\\\",\\\"Christopher J. Taylor\\\"],inventionYear:1988,kpuzzle:de(async()=>new ye((await Promise.resolve().then(()=>(Ur(),xr))).clockJSON)),svg:de(async()=>(await Promise.resolve().then(()=>(Ur(),xr))).clockSVG)}});async function C1(e,t){let r=await e.kpuzzle(),n=new Hn(r),l=new Xn(r),o=()=>l.and([l.move(\\\"U\\\"),l.not(l.or(l.moves([\\\"F\\\",\\\"BL\\\",\\\"BR\\\"])))]),i=()=>l.and([l.move(\\\"U\\\"),l.not(l.move(\\\"F\\\"))]),a=()=>l.or([i(),l.and([l.move(\\\"F\\\"),l.not(l.or(l.moves([\\\"U\\\",\\\"BL\\\",\\\"BR\\\"])))])]),s=()=>l.not(l.or([l.and([l.move(\\\"U\\\"),l.move(\\\"F\\\")]),l.and([l.move(\\\"F\\\"),l.move(\\\"BL\\\")]),l.and([l.move(\\\"F\\\"),l.move(\\\"BR\\\")]),l.and([l.move(\\\"BL\\\"),l.move(\\\"BR\\\")])])),f=()=>l.not(l.or([l.and([l.move(\\\"F\\\"),l.move(\\\"BL\\\")]),l.and([l.move(\\\"F\\\"),l.move(\\\"BR\\\")]),l.and([l.move(\\\"BL\\\"),l.move(\\\"BR\\\")])]));switch(t){case\\\"full\\\":break;case\\\"experimental-fto-fc\\\":{n.set(l.not(o()),\\\"Ignored\\\");break}case\\\"experimental-fto-f2t\\\":{n.set(l.not(i()),\\\"Ignored\\\"),n.set(o(),\\\"Dim\\\");break}case\\\"experimental-fto-sc\\\":{n.set(l.not(a()),\\\"Ignored\\\"),n.set(i(),\\\"Dim\\\");break}case\\\"experimental-fto-l2c\\\":{n.set(l.not(s()),\\\"Ignored\\\"),n.set(a(),\\\"Dim\\\");break}case\\\"experimental-fto-lbt\\\":{n.set(l.not(f()),\\\"Ignored\\\"),n.set(s(),\\\"Dim\\\");break}case\\\"experimental-fto-l3t\\\":{n.set(f(),\\\"Dim\\\");break}default:console.warn(`Unsupported stickering for ${e.id}: ${t}. Setting all pieces to dim.`),n.set(l.and(l.moves([])),\\\"Dim\\\")}return n.toAppearance()}async function N1(){return[\\\"full\\\",\\\"experimental-fto-fc\\\",\\\"experimental-fto-f2t\\\",\\\"experimental-fto-sc\\\",\\\"experimental-fto-l2c\\\",\\\"experimental-fto-lbt\\\",\\\"experimental-fto-l3t\\\"]}var P1=y(()=>{\\\"use strict\\\";si()});var M1,I1=y(()=>{\\\"use strict\\\";M1=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<svg width=\\\"2368px\\\" height=\\\"1216px\\\" viewBox=\\\"0 0 2368 1216\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\">\\n <title>fto</title>\\n <g id=\\\"fto\\\" stroke=\\\"none\\\" stroke-width=\\\"1\\\" fill=\\\"none\\\" fill-rule=\\\"evenodd\\\" stroke-linejoin=\\\"round\\\">\\n <g id=\\\"BL\\\" transform=\\\"translate(2040.000000, 608.000000) scale(-1, -1) rotate(90.000000) translate(-2040.000000, -608.000000) translate(1560.000000, 368.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l4-o3\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l9-o0\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l16-o0\\\" style=\\\"fill: #FF7F00;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l3-o0\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l3-o2\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l19-o0\\\" style=\\\"fill: #FF7F00;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l7-o0\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l3-o0\\\" style=\\\"fill: #FF7F00;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l0-o1\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"D\\\" transform=\\\"translate(1280.000000, 648.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l4-o0\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l3-o1\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l8-o0\\\" style=\\\"fill: #FFFF00;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l5-o1\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l0-o0\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l17-o0\\\" style=\\\"fill: #FFFF00;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l1-o1\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l6-o0\\\" style=\\\"fill: #FFFF00;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l2-o0\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"BR\\\" transform=\\\"translate(1480.000000, 608.000000) scale(1, -1) rotate(90.000000) translate(-1480.000000, -608.000000) translate(1000.000000, 368.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l4-o1\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l2-o0\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l15-o0\\\" style=\\\"fill: #7F7F7F;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l5-o0\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l5-o2\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l2-o0\\\" style=\\\"fill: #7F7F7F;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l4-o0\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l4-o0\\\" style=\\\"fill: #7F7F7F;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l2-o3\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"B\\\" transform=\\\"translate(1760.000000, 328.000000) scale(1, -1) translate(-1760.000000, -328.000000) translate(1280.000000, 88.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l4-o2\\\" style=\\\"fill: #0000FF;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l9-o1\\\" style=\\\"fill: #0000FF;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l13-o0\\\" style=\\\"fill: #0000FF;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l2-o1\\\" style=\\\"fill: #0000FF;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l3-o3\\\" style=\\\"fill: #0000FF;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l12-o0\\\" style=\\\"fill: #0000FF;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l8-o1\\\" style=\\\"fill: #0000FF;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l10-o0\\\" style=\\\"fill: #0000FF;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l5-o1\\\" style=\\\"fill: #0000FF;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"R\\\" transform=\\\"translate(888.000000, 608.000000) scale(-1, -1) rotate(90.000000) translate(-888.000000, -608.000000) translate(408.000000, 368.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l1-o1\\\" style=\\\"fill: #32CD32;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l6-o1\\\" style=\\\"fill: #32CD32;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l7-o0\\\" style=\\\"fill: #32CD32;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l0-o1\\\" style=\\\"fill: #32CD32;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l5-o3\\\" style=\\\"fill: #32CD32;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l5-o0\\\" style=\\\"fill: #32CD32;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l4-o1\\\" style=\\\"fill: #32CD32;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l11-o0\\\" style=\\\"fill: #32CD32;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l2-o2\\\" style=\\\"fill: #32CD32;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"F\\\" transform=\\\"translate(128.000000, 648.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l1-o2\\\" style=\\\"fill: #FF0000;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l0-o0\\\" style=\\\"fill: #FF0000;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l0-o0\\\" style=\\\"fill: #FF0000;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l10-o0\\\" style=\\\"fill: #FF0000;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l2-o1\\\" style=\\\"fill: #FF0000;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l1-o0\\\" style=\\\"fill: #FF0000;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l1-o0\\\" style=\\\"fill: #FF0000;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l14-o0\\\" style=\\\"fill: #FF0000;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l0-o3\\\" style=\\\"fill: #FF0000;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"L\\\" transform=\\\"translate(328.000000, 608.000000) scale(1, -1) rotate(90.000000) translate(-328.000000, -608.000000) translate(-152.000000, 368.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l1-o3\\\" style=\\\"fill: #7F007F;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l11-o1\\\" style=\\\"fill: #7F007F;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l21-o0\\\" style=\\\"fill: #7F007F;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l10-o1\\\" style=\\\"fill: #7F007F;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l3-o1\\\" style=\\\"fill: #7F007F;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l18-o0\\\" style=\\\"fill: #7F007F;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l7-o1\\\" style=\\\"fill: #7F007F;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l9-o0\\\" style=\\\"fill: #7F007F;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l0-o2\\\" style=\\\"fill: #7F007F;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"U\\\" transform=\\\"translate(608.000000, 328.000000) scale(1, -1) translate(-608.000000, -328.000000) translate(128.000000, 88.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l1-o0\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l6-o0\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l20-o0\\\" style=\\\"fill: #FFFFFF;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l11-o0\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l5-o0\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l23-o0\\\" style=\\\"fill: #FFFFFF;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l8-o0\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l22-o0\\\" style=\\\"fill: #FFFFFF;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l3-o0\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n </g>\\n</svg>\\n`});var O1,T1=y(()=>{\\\"use strict\\\";O1=`<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<g><title>U</title>\\n<polygon id=\\\"CORNERS-l0-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffff\\\" points=\\\"247.941 89.861 283.500 115.696 269.918 157.499 212.382 138.805\\\"/>\\n<polygon id=\\\"CORNERS-l10-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffff\\\" points=\\\"154.845 157.499 141.263 115.696 176.822 89.861 212.382 138.805\\\"/>\\n<polygon id=\\\"CORNERS-l5-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffff\\\" points=\\\"176.822 89.861 212.381 64.025 247.941 89.861 212.382 138.805\\\"/>\\n<polygon id=\\\"CORNERS-l4-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffff\\\" points=\\\"212.381 199.301 168.427 199.301 154.845 157.499 212.382 138.805\\\"/>\\n<polygon id=\\\"CORNERS-l1-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffff\\\" points=\\\"269.918 157.499 256.335 199.301 212.381 199.301 212.382 138.805\\\"/>\\n</g><g><title>F</title>\\n<polygon id=\\\"CORNERS-l7-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #006633\\\" points=\\\"247.941 319.263 212.381 345.098 176.822 319.263 212.382 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l1-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #006633\\\" points=\\\"212.381 209.823 256.335 209.823 269.918 251.625 212.382 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l3-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #006633\\\" points=\\\"269.918 251.625 283.500 293.428 247.941 319.263 212.382 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l4-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #006633\\\" points=\\\"154.845 251.625 168.427 209.823 212.381 209.823 212.382 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l9-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #006633\\\" points=\\\"176.822 319.263 141.263 293.428 154.845 251.625 212.382 270.32\\\"/>\\n</g><g><title>L</title>\\n<polygon id=\\\"CORNERS-l13-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #660099\\\" points=\\\"87.302 290.176 43.349 290.176 29.766 248.374 87.303 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l4-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #660099\\\" points=\\\"122.862 180.736 158.421 206.571 144.839 248.374 87.303 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l9-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #660099\\\" points=\\\"144.839 248.374 131.256 290.176 87.302 290.176 87.303 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l10-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #660099\\\" points=\\\"51.743 180.736 87.302 154.901 122.862 180.736 87.303 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l11-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #660099\\\" points=\\\"29.766 248.374 16.184 206.571 51.743 180.736 87.303 229.68\\\"/>\\n</g><g><title>BL</title>\\n<polygon id=\\\"CORNERS-l15-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ffff00\\\" points=\\\"700.480 172.224 664.921 198.059 629.361 172.224 664.921 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l10-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ffff00\\\" points=\\\"664.921 62.784 708.874 62.784 722.457 104.586 664.921 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l11-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffff00\\\" points=\\\"722.457 104.586 736.039 146.389 700.480 172.224 664.921 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l5-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffff00\\\" points=\\\"607.384 104.586 620.967 62.784 664.921 62.784 664.921 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l19-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ffff00\\\" points=\\\"629.361 172.224 593.802 146.389 607.384 104.586 664.921 123.281\\\"/>\\n</g><g><title>BR</title>\\n<polygon id=\\\"CORNERS-l12-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #0000ff\\\" points=\\\"545.874 172.224 510.315 198.059 474.755 172.224 510.315 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l5-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #0000ff\\\" points=\\\"510.315 62.784 554.269 62.784 567.851 104.586 510.315 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l19-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #0000ff\\\" points=\\\"567.851 104.586 581.433 146.389 545.874 172.224 510.315 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l0-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #0000ff\\\" points=\\\"452.779 104.586 466.361 62.784 510.315 62.784 510.315 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l6-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #0000ff\\\" points=\\\"474.755 172.224 439.196 146.389 452.779 104.586 510.315 123.281\\\"/>\\n</g><g><title>R</title>\\n<polygon id=\\\"CORNERS-l6-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ff0000\\\" points=\\\"373.019 180.736 408.579 206.571 394.996 248.374 337.461 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l1-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ff0000\\\" points=\\\"279.924 248.374 266.341 206.571 301.901 180.736 337.461 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l0-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ff0000\\\" points=\\\"301.901 180.736 337.460 154.901 373.019 180.736 337.461 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l3-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ff0000\\\" points=\\\"337.460 290.176 293.506 290.176 279.924 248.374 337.461 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l2-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ff0000\\\" points=\\\"394.996 248.374 381.414 290.176 337.460 290.176 337.461 229.68\\\"/>\\n</g><g><title>C</title>\\n<polygon id=\\\"CORNERS-l8-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffd0\\\" points=\\\"347.220 395.413 333.638 437.215 289.684 437.215 289.685 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l3-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffd0\\\" points=\\\"254.125 327.775 289.684 301.940 325.244 327.775 289.685 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l2-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffd0\\\" points=\\\"325.244 327.775 360.803 353.610 347.220 395.413 289.685 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l7-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffd0\\\" points=\\\"232.148 395.413 218.566 353.610 254.125 327.775 289.685 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l17-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffd0\\\" points=\\\"289.684 437.215 245.730 437.215 232.148 395.413 289.685 376.719\\\"/>\\n</g><g><title>A</title>\\n<polygon id=\\\"CORNERS-l17-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #3399ff\\\" points=\\\"192.615 395.413 179.032 437.215 135.078 437.215 135.079 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l9-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #3399ff\\\" points=\\\"99.519 327.775 135.078 301.940 170.638 327.775 135.079 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l7-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #3399ff\\\" points=\\\"170.638 327.775 206.197 353.610 192.615 395.413 135.079 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l13-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #3399ff\\\" points=\\\"77.542 395.413 63.960 353.610 99.519 327.775 135.079 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l14-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #3399ff\\\" points=\\\"135.078 437.215 91.125 437.215 77.542 395.413 135.079 376.719\\\"/>\\n</g><g><title>I</title>\\n<polygon id=\\\"CORNERS-l18-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ff6633\\\" points=\\\"677.137 319.263 641.578 293.428 655.160 251.625 712.697 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l13-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ff6633\\\" points=\\\"770.233 251.625 783.815 293.428 748.256 319.263 712.697 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l14-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ff6633\\\" points=\\\"748.256 319.263 712.697 345.098 677.137 319.263 712.697 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l11-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ff6633\\\" points=\\\"712.697 209.823 756.650 209.823 770.233 251.625 712.697 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l15-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ff6633\\\" points=\\\"655.160 251.625 668.743 209.823 712.697 209.823 712.697 270.32\\\"/>\\n</g><g><title>BF</title>\\n<polygon id=\\\"CORNERS-l16-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #99ff00\\\" points=\\\"587.618 290.176 543.664 290.176 530.081 248.374 587.618 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l15-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #99ff00\\\" points=\\\"623.177 180.736 658.736 206.571 645.154 248.374 587.618 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l18-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #99ff00\\\" points=\\\"645.154 248.374 631.572 290.176 587.618 290.176 587.618 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l19-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #99ff00\\\" points=\\\"552.058 180.736 587.618 154.901 623.177 180.736 587.618 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l12-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #99ff00\\\" points=\\\"530.081 248.374 516.499 206.571 552.058 180.736 587.618 229.68\\\"/>\\n</g><g><title>E</title>\\n<polygon id=\\\"CORNERS-l8-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ff66cc\\\" points=\\\"498.098 319.263 462.539 345.098 426.980 319.263 462.539 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l12-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ff66cc\\\" points=\\\"462.539 209.823 506.493 209.823 520.075 251.625 462.539 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l16-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ff66cc\\\" points=\\\"520.075 251.625 533.658 293.428 498.098 319.263 462.539 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l6-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ff66cc\\\" points=\\\"405.003 251.625 418.585 209.823 462.539 209.823 462.539 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l2-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ff66cc\\\" points=\\\"426.980 319.263 391.420 293.428 405.003 251.625 462.539 270.32\\\"/>\\n</g><g><title>D</title>\\n<polygon id=\\\"CORNERS-l18-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #999999\\\" points=\\\"587.618 300.698 631.572 300.698 645.154 342.500 587.618 361.195\\\"/>\\n<polygon id=\\\"CORNERS-l8-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #999999\\\" points=\\\"552.058 410.138 516.499 384.303 530.081 342.500 587.618 361.195\\\"/>\\n<polygon id=\\\"CORNERS-l16-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #999999\\\" points=\\\"530.081 342.500 543.664 300.698 587.618 300.698 587.618 361.195\\\"/>\\n<polygon id=\\\"CORNERS-l17-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #999999\\\" points=\\\"623.177 410.138 587.618 435.974 552.058 410.138 587.618 361.195\\\"/>\\n<polygon id=\\\"CORNERS-l14-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #999999\\\" points=\\\"645.154 342.500 658.736 384.303 623.177 410.138 587.618 361.195\\\"/>\\n</g></svg>\\n`});var G1,W1=y(()=>{\\\"use strict\\\";G1={name:\\\"redi_cube\\\",orbits:{EDGES:{numPieces:12,numOrientations:2},CORNERS:{numPieces:8,numOrientations:3}},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]}},moves:{F:{EDGES:{permutation:[8,0,2,3,4,5,6,7,1,9,10,11],orientation:[0,1,0,0,0,0,0,0,1,0,0,0]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[1,0,0,0,0,0,0,0]}},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]}},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]}}},experimentalDerivedMoves:{z:\\\"[x: y]\\\",UR:\\\"[y: F]\\\",U:\\\"[y2: F]\\\",UL:\\\"[y': F]\\\",D:\\\"[x: F]\\\",L:\\\"[z2: F]\\\",R:\\\"[x2: F]\\\",B:\\\"[y2 x: F]\\\"}}});var K1,Q1=y(()=>{\\\"use strict\\\";K1=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<svg width=\\\"546px\\\" height=\\\"418px\\\" viewBox=\\\"-20 -20 546 418\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\">\\n<title>redi-cube</title>\\n<g istroke=\\\"none\\\" stroke-width=\\\"1\\\" fill=\\\"none\\\" fill-rule=\\\"evenodd\\\">\\n <g transform=\\\"translate(1.000000, 1.000000)\\\" fill-rule=\\\"nonzero\\\" stroke=\\\"#000000\\\" stroke-width=\\\"1.6\\\">\\n <g id=\\\"CORNERS-l0-o0\\\" transform=\\\"translate(208.000000, 80.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l0-o1\\\" transform=\\\"translate(256.000000, 128.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l0-o2\\\" transform=\\\"translate(208.000000, 128.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l1-o0\\\" transform=\\\"translate(208.000000, 0.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l1-o1\\\" transform=\\\"translate(384.000000, 128.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l1-o2\\\" transform=\\\"translate(336.000000, 128.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l2-o0\\\" transform=\\\"translate(128.000000, 0.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l2-o1\\\" transform=\\\"translate(0.000000, 128.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l2-o2\\\" transform=\\\"translate(464.000000, 128.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l3-o0\\\" transform=\\\"translate(128.000000, 80.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l3-o1\\\" transform=\\\"translate(128.000000, 128.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l3-o2\\\" transform=\\\"translate(80.000000, 128.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l4-o0\\\" transform=\\\"translate(208.000000, 256.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l4-o1\\\" transform=\\\"translate(208.000000, 208.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l4-o2\\\" transform=\\\"translate(256.000000, 208.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l5-o0\\\" transform=\\\"translate(128.000000, 256.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l5-o1\\\" transform=\\\"translate(80.000000, 208.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l5-o2\\\" transform=\\\"translate(128.000000, 208.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l6-o0\\\" transform=\\\"translate(128.000000, 336.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l6-o1\\\" transform=\\\"translate(464.000000, 208.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l6-o2\\\" transform=\\\"translate(0.000000, 208.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l7-o0\\\" transform=\\\"translate(208.000000, 336.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l7-o1\\\" transform=\\\"translate(336.000000, 208.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l7-o2\\\" transform=\\\"translate(384.000000, 208.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"EDGES-l0-o0\\\" transform=\\\"translate(168.000000, 60.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 -8.8817842e-16 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l0-o1\\\" transform=\\\"translate(168.000000, 128.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l1-o0\\\" transform=\\\"translate(188.000000, 40.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 0 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l1-o1\\\" transform=\\\"translate(296.000000, 128.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l2-o0\\\" transform=\\\"translate(168.000000, 0.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l2-o1\\\" transform=\\\"translate(424.000000, 128.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l3-o0\\\" transform=\\\"translate(128.000000, 40.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l3-o1\\\" transform=\\\"translate(40.000000, 128.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l4-o0\\\" transform=\\\"translate(168.000000, 256.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l4-o1\\\" transform=\\\"translate(168.000000, 188.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 0 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l5-o0\\\" transform=\\\"translate(188.000000, 296.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 0 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l5-o1\\\" transform=\\\"translate(296.000000, 188.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 0 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l6-o0\\\" transform=\\\"translate(168.000000, 316.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 -5.32907052e-14 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l6-o1\\\" transform=\\\"translate(424.000000, 188.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 -1.77635684e-15 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l7-o0\\\" transform=\\\"translate(128.000000, 296.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l7-o1\\\" transform=\\\"translate(40.000000, 188.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 0 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l8-o0\\\" transform=\\\"translate(188.000000, 168.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 2.66453526e-14 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l8-o1\\\" transform=\\\"translate(256.000000, 168.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l9-o0\\\" transform=\\\"translate(128.000000, 168.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l9-o1\\\" transform=\\\"translate(60.000000, 168.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 0 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l10-o0\\\" transform=\\\"translate(384.000000, 168.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l10-o1\\\" transform=\\\"translate(316.000000, 168.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 5.32907052e-14 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l11-o0\\\" transform=\\\"translate(444.000000, 168.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 -3.55271368e-15 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l11-o1\\\" transform=\\\"translate(0.000000, 168.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n </g>\\n</g>\\n</svg>\\n`});var go={};Lt(go,{ftoSVG:()=>M1,kilominxSVG:()=>O1,rediCubeJSON:()=>G1,rediCubeSVG:()=>K1});var co=y(()=>{\\\"use strict\\\";I1();T1();W1();Q1()});var Os,j1,q1=y(()=>{\\\"use strict\\\";ir();wt();P1();Os=class extends Rt{constructor(){super({pgID:\\\"FTO\\\",id:\\\"fto\\\",fullName:\\\"Face-Turning Octahedron\\\",inventedBy:[\\\"Karl Rohrbach\\\",\\\"David Pitcher\\\"],inventionYear:1983});this.stickerings=N1;this.svg=de(async()=>(await Promise.resolve().then(()=>(co(),go))).ftoSVG)}appearance(r){return C1(this,r)}},j1=new Os});async function V1(e,t){switch(t){case\\\"full\\\":case\\\"F2L\\\":case\\\"LL\\\":case\\\"OLL\\\":case\\\"PLL\\\":case\\\"ELS\\\":case\\\"CLS\\\":return nr(e,t);default:console.warn(`Unsupported stickering for ${e.id}: ${t}. Setting all pieces to dim.`)}return nr(e,\\\"full\\\")}async function H1(){return[\\\"full\\\",\\\"F2L\\\",\\\"LL\\\",\\\"OLL\\\",\\\"PLL\\\",\\\"ELS\\\",\\\"CLS\\\"]}var X1=y(()=>{\\\"use strict\\\";to()});var Ts,Z1,J1=y(()=>{\\\"use strict\\\";ir();X1();Ts=class extends Rt{constructor(){super({id:\\\"megaminx\\\",fullName:\\\"Megaminx\\\",inventionYear:1981});this.stickerings=H1}appearance(r){return V1(this,r)}},Z1=new Ts});var Gs,Y1,$1=y(()=>{\\\"use strict\\\";ir();wt();Gs=class extends Rt{constructor(){super({id:\\\"pyraminx\\\",fullName:\\\"Pyraminx\\\",inventedBy:[\\\"Uwe Meffert\\\"]});this.svg=de(async()=>(await Promise.resolve().then(()=>(Ur(),xr))).pyraminxSVG)}},Y1=new Gs});var eu,tu=y(()=>{\\\"use strict\\\";Xe();wt();eu={id:\\\"square1\\\",fullName:\\\"Square-1\\\",inventedBy:[\\\"Karel Hr\\\\u0161el\\\",\\\"Vojtech Kopsk\\\\xFD\\\"],inventionYear:1990,kpuzzle:de(async()=>new ye((await Promise.resolve().then(()=>(Ur(),xr))).sq1HyperOrbitJSON)),svg:de(async()=>(await Promise.resolve().then(()=>(Ur(),xr))).sq1HyperOrbitSVG)}});var ru,nu=y(()=>{\\\"use strict\\\";Xe();ir();wt();ru={id:\\\"kilominx\\\",fullName:\\\"Kilominx\\\",kpuzzle:de(async()=>{let e=await un(\\\"megaminx + chopasaurus\\\"),t=JSON.parse(JSON.stringify(e.getKPuzzleDefinition(!0)));delete t.orbits.CENTERS,delete t.orbits.CENTERS2,delete t.startStateData.CENTERS,delete t.startStateData.CENTERS2;for(let i of Object.values(t.moves))delete i.CENTERS,delete i.CENTERS2;t.name=\\\"kilominx\\\",delete t.experimentalPuzzleDescription;let r=await Promise.resolve().then(()=>(nl(),rl)),n=new r.ExperimentalPGNotation(e,e.getOrbitsDef(!0)),l=new ye(t,{experimentalPGNotation:{lookupMove:i=>i.toString()===\\\"x2\\\"||i.toString()===\\\"x2'\\\"?o.transformationData:n.lookupMove(i)}}),o=l.algToTransformation(\\\"Rv2 Fv Uv'\\\");return t.moves.x2=o,l}),svg:de(async()=>(await Promise.resolve().then(()=>(co(),go))).kilominxSVG)}});var lu,ou=y(()=>{\\\"use strict\\\";Xe();wt();lu={id:\\\"redi_cube\\\",fullName:\\\"Redi Cube\\\",inventedBy:[\\\"Oskar van Deventer\\\"],inventionYear:2009,kpuzzle:de(async()=>new ye((await Promise.resolve().then(()=>(co(),go))).rediCubeJSON)),svg:async()=>(await Promise.resolve().then(()=>(co(),go))).rediCubeSVG}});var JL,iu=y(()=>{\\\"use strict\\\";JL=`<svg\\n height=\\\"256\\\"\\n viewBox=\\\"0 0 256 256\\\"\\n width=\\\"256\\\"\\n xmlns=\\\"http://www.w3.org/2000/svg\\\"\\n xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\"\\n>\\n <g fill=\\\"none\\\" fill-rule=\\\"nonzero\\\" stroke=\\\"#000\\\">\\n <g stroke-linejoin=\\\"round\\\" stroke-width=\\\"3\\\" transform=\\\"translate(17 17)\\\">\\n <!-- U -->\\n <path id=\\\"CORNERS-l1-o0\\\" d=\\\"m184.6 147.8v36.8h-36.8v-36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"EDGES-l10-o0\\\" d=\\\"m147.8 184.6h-36.8v-36.8h36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"EDGES-l0-o0\\\" d=\\\"m111 147.8v36.8h-36.8v-36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"CORNERS-l0-o0\\\" d=\\\"m74.2 184.6h-36.8v-36.8h36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"EDGES-l6-o0\\\" d=\\\"m37.4 147.8v-36.8h36.8v36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"CENTERS-l10-o0\\\" d=\\\"m74.2 111h36.8v36.8h-36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"CENTERS-l21-o0\\\" d=\\\"m111 147.8v-36.8h36.8v36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"EDGES-l2-o0\\\" d=\\\"m147.8 111h36.8v36.8h-36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"EDGES-l21-o0\\\" d=\\\"m184.6 74.2v36.8h-36.8v-36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"CENTERS-l15-o0\\\" d=\\\"m147.8 111h-36.8v-36.8h36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"CENTERS-l6-o0\\\" d=\\\"m111 74.2v36.8h-36.8v-36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"EDGES-l22-o0\\\" d=\\\"m74.2 111h-36.8v-36.8h36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"CORNERS-l6-o0\\\" d=\\\"m37.4 74.2v-36.8h36.8v36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"EDGES-l15-o0\\\" d=\\\"m74.2 37.4h36.8v36.8h-36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"EDGES-l18-o0\\\" d=\\\"m111 74.2v-36.8h36.8v36.8z\\\" style=\\\"fill: white\\\" />\\n <path id=\\\"CORNERS-l3-o0\\\" d=\\\"m147.8 37.4h36.8v36.8h-36.8z\\\" style=\\\"fill: white\\\" />\\n\\n <path id=\\\"CORNERS-l0-o1\\\" d=\\\"m.6000061 221.399997 36.7999939-36.8h36.8v36.8z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"EDGES-l0-o1\\\" d=\\\"m74.2 184.599997h36.8v36.8h-36.8z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"EDGES-l10-o1\\\" d=\\\"m111 221.399997v-36.8h36.8v36.8z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"CORNERS-l1-o2\\\" d=\\\"m147.8 184.599997h36.8l36.799994 36.8h-73.599994z\\\" style=\\\"fill: limegreen\\\" />\\n\\n <path id=\\\"CORNERS-l0-o2\\\" d=\\\"m-17.7999969 166.2h36.8l36.7999938 36.8h-73.5999938z\\\" style=\\\"fill: orange\\\" transform=\\\"matrix(0 1 -1 0 203.600003 165.599997)\\\" />\\n <path id=\\\"EDGES-l6-o1\\\" d=\\\"m.60000305 147.8v-36.8h36.80000005v36.8z\\\" style=\\\"fill: orange\\\" transform=\\\"matrix(0 1 -1 0 148.400003 110.399997)\\\" />\\n <path id=\\\"EDGES-l22-o1\\\" d=\\\"m.60000305 74.2h36.80000005v36.8h-36.80000005z\\\" style=\\\"fill: orange\\\" transform=\\\"matrix(0 1 -1 0 111.600003 73.599997)\\\" />\\n <path id=\\\"CORNERS-l6-o1\\\" d=\\\"m-17.7999966 55.8 36.7999997-36.8h36.8v36.8z\\\" style=\\\"fill: orange\\\" transform=\\\"matrix(0 1 -1 0 56.400003 18.399997)\\\" />\\n\\n <path id=\\\"CORNERS-l3-o1\\\" d=\\\"m147.800006 37.3999992 36.799994-36.79999996h36.8v36.79999996z\\\" style=\\\"fill: #26f\\\" transform=\\\"matrix(-1 0 0 -1 369.2 37.999998)\\\" />\\n <path id=\\\"EDGES-l18-o1\\\" d=\\\"m111 .59999924h36.8v36.79999996h-36.8z\\\" style=\\\"fill: #26f\\\" transform=\\\"matrix(-1 0 0 -1 258.8 37.999998)\\\" />\\n <path id=\\\"EDGES-l15-o1\\\" d=\\\"m74.2 37.3999992v-36.79999996h36.8v36.79999996z\\\" style=\\\"fill: #26f\\\" transform=\\\"matrix(-1 0 0 -1 185.2 37.999998)\\\" />\\n <path id=\\\"CORNERS-l6-o2\\\" d=\\\"m.6.59999924h36.8l36.7999939 36.79999996h-73.5999939z\\\" style=\\\"fill: #26f\\\" transform=\\\"matrix(-1 0 0 -1 74.8 37.999998)\\\" />\\n\\n <path id=\\\"CORNERS-l1-o1\\\" d=\\\"m166.200018 203 36.799994-36.8h36.8v36.8z\\\" style=\\\"fill: red\\\" transform=\\\"matrix(0 -1 1 0 18.400012 387.600012)\\\" />\\n <path id=\\\"EDGES-l2-o1\\\" d=\\\"m184.600012 111h36.8v36.8h-36.8z\\\" style=\\\"fill: red\\\" transform=\\\"matrix(0 -1 1 0 73.600012 332.400012)\\\" />\\n <path id=\\\"EDGES-l21-o1\\\" d=\\\"m184.600012 111v-36.8h36.8v36.8z\\\" style=\\\"fill: red\\\" transform=\\\"matrix(0 -1 1 0 110.400012 295.600012)\\\" />\\n <path id=\\\"CORNERS-l3-o2\\\" d=\\\"m166.200012 19h36.8l36.8 36.8h-73.6z\\\" style=\\\"fill: red\\\" transform=\\\"matrix(0 -1 1 0 165.600012 240.400012)\\\" />\\n </g>\\n <g opacity=\\\"0\\\" transform=\\\"translate(17 242)\\\">\\n <path id=\\\"EDGES-l1-o0\\\" d=\\\"m12 0v1h-1v-1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"CENTERS-l0-o0\\\" d=\\\"m10 1h-1v-1h1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"CENTERS-l23-o0\\\" d=\\\"m9 0v1h-1v-1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"EDGES-l20-o0\\\" d=\\\"m7 1h-1v-1h1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"EDGES-l23-o0\\\" d=\\\"m6 2v-1h1v1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"CENTERS-l14-o0\\\" d=\\\"m8 1h1v1h-1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"CENTERS-l1-o0\\\" d=\\\"m9 2v-1h1v1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"EDGES-l7-o0\\\" d=\\\"m11 1h1v1h-1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"CORNERS-l4-o1\\\" d=\\\"m12 3v1h-1v-1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"EDGES-l14-o1\\\" d=\\\"m10 4h-1v-1h1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"EDGES-l3-o1\\\" d=\\\"m9 3v1h-1v-1z\\\" style=\\\"fill: limegreen\\\" />\\n <path id=\\\"CORNERS-l2-o2\\\" d=\\\"m7 4h-1v-1h1z\\\" style=\\\"fill: limegreen\\\" />\\n\\n <path id=\\\"CORNERS-l2-o0\\\" d=\\\"m6 6v-1h1v1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"EDGES-l3-o0\\\" d=\\\"m8 5h1v1h-1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"EDGES-l14-o0\\\" d=\\\"m9 6v-1h1v1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"CORNERS-l4-o0\\\" d=\\\"m11 5h1v1h-1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"EDGES-l5-o0\\\" d=\\\"m12 7v1h-1v-1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"CENTERS-l3-o0\\\" d=\\\"m10 8h-1v-1h1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"CENTERS-l16-o0\\\" d=\\\"m9 7v1h-1v-1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"EDGES-l9-o0\\\" d=\\\"m7 8h-1v-1h1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"EDGES-l16-o0\\\" d=\\\"m6 9v-1h1v1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"CENTERS-l8-o0\\\" d=\\\"m8 8h1v1h-1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"CENTERS-l5-o0\\\" d=\\\"m9 9v-1h1v1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"EDGES-l12-o0\\\" d=\\\"m11 8h1v1h-1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"CORNERS-l5-o0\\\" d=\\\"m12 10v1h-1v-1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"EDGES-l8-o0\\\" d=\\\"m10 11h-1v-1h1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"EDGES-l19-o0\\\" d=\\\"m9 10v1h-1v-1z\\\" style=\\\"fill: yellow\\\"/>\\n <path id=\\\"CORNERS-l7-o0\\\" d=\\\"m7 11h-1v-1h1z\\\" style=\\\"fill: yellow\\\"/>\\n\\n <path id=\\\"EDGES-l9-o1\\\" d=\\\"m5 0v1h-1v-1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"CENTERS-l20-o0\\\" d=\\\"m4 1h1v1h-1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"CENTERS-l22-o0\\\" d=\\\"m5 3v1h-1v-1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"EDGES-l20-o1\\\" d=\\\"m4 4h-1v-1h1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"EDGES-l23-o1\\\" d=\\\"m3 2v-1h1v1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"CENTERS-l17-o0\\\" d=\\\"m4 1h-1v-1h1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"CENTERS-l9-o0\\\" d=\\\"m2 0v1h-1v-1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"EDGES-l16-o1\\\" d=\\\"m1 1h1v1h-1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"CORNERS-l7-o2\\\" d=\\\"m2 3v1h-1v-1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"EDGES-l17-o1\\\" d=\\\"m1 4h-1v-1h1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"EDGES-l13-o1\\\" d=\\\"m0 2v-1h1v1z\\\" style=\\\"fill: orange\\\" />\\n <path id=\\\"CORNERS-l2-o1\\\" d=\\\"m1 1h-1v-1h1z\\\" style=\\\"fill: orange\\\" />\\n\\n <path id=\\\"EDGES-l11-o0\\\" d=\\\"m25 3v1h-1v-1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"CENTERS-l19-o0\\\" d=\\\"m23 4h-1v-1h1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"CENTERS-l13-o0\\\" d=\\\"m22 3v1h-1v-1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"EDGES-l17-o0\\\" d=\\\"m20 4h-1v-1h1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"EDGES-l13-o0\\\" d=\\\"m19 2v-1h1v1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"CENTERS-l18-o0\\\" d=\\\"m21 1h1v1h-1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"CENTERS-l11-o0\\\" d=\\\"m22 2v-1h1v1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"EDGES-l4-o0\\\" d=\\\"m24 1h1v1h-1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"CORNERS-l7-o1\\\" d=\\\"m25 0v1h-1v-1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"EDGES-l19-o1\\\" d=\\\"m23 1h-1v-1h1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"EDGES-l8-o1\\\" d=\\\"m22 0v1h-1v-1z\\\" style=\\\"fill: #26f\\\" />\\n <path id=\\\"CORNERS-l5-o2\\\" d=\\\"m20 1h-1v-1h1z\\\" style=\\\"fill: #26f\\\" />\\n\\n <path id=\\\"EDGES-l7-o1\\\" d=\\\"m14 4h-1v-1h1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"CENTERS-l7-o0\\\" d=\\\"m13 2v-1h1v1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"CENTERS-l12-o0\\\" d=\\\"m14 1h-1v-1h1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"EDGES-l5-o1\\\" d=\\\"m15 0v1h-1v-1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"EDGES-l12-o1\\\" d=\\\"m14 1h1v1h-1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"CENTERS-l4-o0\\\" d=\\\"m15 3v1h-1v-1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"CENTERS-l2-o0\\\" d=\\\"m17 4h-1v-1h1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"EDGES-l1-o1\\\" d=\\\"m16 2v-1h1v1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"CORNERS-l4-o2\\\" d=\\\"m17 1h-1v-1h1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"EDGES-l4-o1\\\" d=\\\"m18 0v1h-1v-1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"EDGES-l11-o1\\\" d=\\\"m17 1h1v1h-1z\\\" style=\\\"fill: red\\\" />\\n <path id=\\\"CORNERS-l5-o1\\\" d=\\\"m18 3v1h-1v-1z\\\" style=\\\"fill: red\\\" />\\n </g>\\n </g>\\n</svg>`});var au={};Lt(au,{cube4x4x4LLSVG:()=>JL});var su=y(()=>{\\\"use strict\\\";iu()});var Ws,fu=y(()=>{\\\"use strict\\\";ir();wt();Ws=new or({id:\\\"4x4x4\\\",fullName:\\\"4\\\\xD74\\\\xD74 Cube\\\"});Ws.llSVG=de(async()=>(await Promise.resolve().then(()=>(su(),au))).cube4x4x4LLSVG)});var Ie,ar=y(()=>{\\\"use strict\\\";yf();ir();d1();_1();z1();q1();J1();$1();tu();nu();ou();fu();Ie={\\\"3x3x3\\\":Is,\\\"2x2x2\\\":uo,\\\"4x4x4\\\":Ws,\\\"5x5x5\\\":new or({id:\\\"5x5x5\\\",fullName:\\\"5\\\\xD75\\\\xD75 Cube\\\"}),\\\"6x6x6\\\":new or({id:\\\"6x6x6\\\",fullName:\\\"6\\\\xD76\\\\xD76 Cube\\\"}),\\\"7x7x7\\\":new or({id:\\\"7x7x7\\\",fullName:\\\"7\\\\xD77\\\\xD77 Cube\\\"}),\\\"40x40x40\\\":new or({id:\\\"40x40x40\\\",fullName:\\\"40\\\\xD740\\\\xD740 Cube\\\"}),clock:k1,megaminx:Z1,pyraminx:Y1,skewb:new Rt({id:\\\"skewb\\\",fullName:\\\"Skewb\\\",inventedBy:[\\\"Tony Durham\\\"]}),square1:eu,fto:j1,gigaminx:new Rt({id:\\\"gigaminx\\\",fullName:\\\"Gigaminx\\\",inventedBy:[\\\"Tyler Fox\\\"],inventionYear:2006}),master_tetraminx:new Rt({pgID:\\\"master tetraminx\\\",id:\\\"master_tetraminx\\\",fullName:\\\"Master Tetraminx\\\",inventedBy:[\\\"Katsuhiko Okamoto\\\"],inventionYear:2002}),kilominx:ru,redi_cube:lu}});function pu(e){uu=e}function Ee(){if(!uu)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 uu,yt=y(()=>{\\\"use strict\\\";uu=!1});async function gu(){if(globalThis?.crypto?.getRandomValues)return crypto.getRandomValues.bind(crypto);{let e=(await(YL??(YL=import(eB())))).webcrypto;return e.getRandomValues.bind(e)}}var YL,$L,eB,cu=y(()=>{\\\"use strict\\\";YL=null,$L=\\\"cr-yp-to\\\",eB=()=>$L.replace(/-/g,\\\"\\\")});function nB(e){let t=new Uint32Array(2);e(t);let r=t[0],n=t[1];return Math.floor(r*tB)+Math.floor(n/rB)}function lB(e){if(typeof e!=\\\"number\\\"||e<0||Math.floor(e)!==e)throw new Error(\\\"randomInt.below() not called with a positive integer value.\\\");if(e>mu)throw new Error(`Called randomInt.below() with max === ${e}, which is larger than JavaScript can handle with integer precision.`)}async function we(){let e=await gu(),t=r=>{lB(r);let n=nB(e),l=Math.floor(mu/r)*r;return n<l?n%r:t(r)};return t}var mu,tB,rB,xi=y(()=>{\\\"use strict\\\";cu();mu=9007199254740992,tB=2097152,rB=2048});async function sr(){let e=await we();return t=>t[e(t.length)]}var Lu=y(()=>{\\\"use strict\\\";xi()});async function Bu(e){for(let t=1;t<e.length;t++){let r=(await oB)(t);[e[t],e[r]]=[e[r],e[t]]}}var oB,vt=y(()=>{\\\"use strict\\\";Lu();xi();xi();oB=we()});function Ke(e){return new gn(t=>{t(e())})}var gn,Vt=y(()=>{\\\"use strict\\\";gn=class extends Promise{constructor(t){super(r=>{r()}),this._executor=t}static from(t){return new gn(r=>{r(t())})}static resolve(t){return new gn(r=>{r(t)})}static reject(t){return new gn((r,n)=>{n(t)})}then(t,r){return this._promise=this._promise||new Promise(this._executor),this._promise.then(t,r)}catch(t){return this._promise=this._promise||new Promise(this._executor),this._promise.catch(t)}}});function Ht(e,t){let r=[],n=[];for(let u of t.split(`\\n`)){let p=u.split(\\\" \\\");if(!u.startsWith(\\\"SetOrder \\\")){if(u.startsWith(\\\"Alg \\\")){let g=E.fromString(u.substring(4));n.push({alg:g,transformation:e.algToTransformation(g)})}else if(u.startsWith(\\\"SubgroupSizes \\\"))for(let g=1;g<p.length;g++)r.push(parseInt(p[g]))}}let l={ordering:new Array(r.length)},o=[],i=0;o.push(0);let a=E.fromString(\\\"\\\"),s=e.identityTransformation();for(let u=0;u<r.length;u++)i+=r[u],o.push(i),n.splice(i-1,0,{alg:a,transformation:s});if(n.length!==i)throw Error(`Bad sgs; expected ${i-r.length} algs but saw ${n.length-r.length}`);let f={};for(let u in e.definition.orbits){let p=e.definition.orbits[u];f[u]=new Array(p.numPieces).fill(!1)}for(let u=r.length-1;u>=0;u--){let p=[];for(let c=o[u];c<o[u+1];c++){let L=n[c].transformation;for(let m in e.definition.orbits){let d=e.definition.orbits[m];for(let F=0;F<d.numPieces;F++)(L.transformationData[m].permutation[F]!==F||L.transformationData[m].orientation[F]!==0)&&(f[m][F]||(p.push({orbitName:m,permutationIdx:F}),f[m][F]=!0))}}let g={};for(let c=o[u];c<o[u+1];c++){let L=n[c].transformation.invert(),m=\\\"\\\";for(let d=0;d<p.length;d++){let F=p[d];m=`${m} ${L.transformationData[F.orbitName].permutation[F.permutationIdx]} ${L.transformationData[F.orbitName].orientation[F.permutationIdx]}`}g[m]=n[c],n[c].alg=n[c].alg.invert(),n[c].transformation=n[c].transformation.invert()}l.ordering[u]={pieceOrdering:p,lookup:g}}return l}var ll=y(()=>{\\\"use strict\\\";me()});async function Fu(){return dB??(dB=RB())}async function RB(){return Ht(await uo.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 dB,Du=y(()=>{\\\"use strict\\\";ar();ll();dB=null});async function hB(){let{getPuzzleGeometryByName:e,ExperimentalPGNotation:t}=await Promise.resolve().then(()=>(nl(),rl)),r=e(\\\"megaminx\\\",{allMoves:!0,addRotations:!0}),n=new ye(r.getKPuzzleDefinition(!0),{experimentalPGNotation:new t(r,r.getOrbitsDef(!0))});return n.definition.name=\\\"megaminx\\\",n}async function qs(){return FB??(FB=hB())}async function Au(){return DB??(DB=AB())}async function AB(){return Ht(await qs(),`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 FB,DB,yu=y(()=>{\\\"use strict\\\";Xe();ll();FB=null;DB=null});async function Vs(){return yB??(yB=vB())}async function vu(){return{ordering:(await Vs()).ordering.slice(2)}}async function vB(){return Ht(await Ie.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 yB,Su=y(()=>{\\\"use strict\\\";ar();ll();yB=null});async function SB(){let{getPuzzleGeometryByName:e,ExperimentalPGNotation:t}=await Promise.resolve().then(()=>(nl(),rl)),r=e(\\\"skewb\\\",{allMoves:!0,addRotations:!0});return new ye(r.getKPuzzleDefinition(!0),{experimentalPGNotation:new t(r,r.getOrbitsDef(!0))})}async function Hs(){return xB??(xB=SB())}async function Xs(){return UB??(UB=bB())}async function xu(){return{ordering:(await Xs()).ordering.slice(1)}}async function bB(){return Ht(await Hs(),`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 xB,UB,Uu=y(()=>{\\\"use strict\\\";Xe();ll();xB=null;UB=null});var bu={};Lt(bu,{cachedData222:()=>Fu,cachedMegaminxKPuzzleWithoutMO:()=>qs,cachedSGSDataMegaminx:()=>Au,sgsDataPyraminx:()=>Vs,sgsDataPyraminxFixedOrientation:()=>vu,sgsDataSkewb:()=>Xs,sgsDataSkewbFixedCorner:()=>xu,skewbKPuzzleWithoutMOCached:()=>Hs});var Eu=y(()=>{\\\"use strict\\\";Du();yu();Su();Uu()});async function ol(e,t){let r=new Bt;r.experimentalPushAlg(e);for(let n of t){let l=(await sr())(n);l!==null&&r.push(B.fromString(l))}return r.toAlg()}var bi=y(()=>{\\\"use strict\\\";me();vt()});function Ku(){}function zB(e){function t(){}return t.prototype=e||{},new t}function CB(e){return e instanceof Array?e[0]:null}function yo(e,t,r){var n=Ki,l=NB,o=CB,i=n[e],a=o(i);i&&!a?H=i:(H=n[e]=t?l(t):{},H.castableTypeMap$=r,H.constructor=H,!t&&(H.typeMarker$=Ku));for(var s=3;s<arguments.length;++s)arguments[s].prototype=H;a&&(H.___clazz$=a)}function NB(e){var t=Ki;return zB(t[e])}function PB(){}function zi(e){return e<<24>>24}function f0(){this.typeName=null,this.simpleName=null,this.packageName=null,this.compoundName=null,this.canonicalName=null,this.typeId=null,this.arrayLiterals=null}function u0(e,t){var r;return r=new f0,r.packageName=e,r.compoundName=t,r}function Pr(e,t,r){var n;return n=u0(e,t),OB(r,n),n}function MB(e,t){var r;return r=u0(e,t),r.modifiers=2,r}function Qi(e,t){var r;return r=u0(\\\"\\\",e),r.typeId=t,r.modifiers=1,r}function Qu(e,t){var r=e.arrayLiterals=e.arrayLiterals||[];return r[t]||(r[t]=e.createClassLiteralForArray(t))}function IB(e){if(e.isPrimitive())return null;var t=e.typeId,r=Ki[t];return r}function OB(e,t){if(!!e){t.typeId=e;var r=IB(t);if(!r){Ki[e]=[t];return}r.___clazz$=t}}function te(e,t){return Qu(e,t)}function Y(e,t,r,n,l,o){var i;return i=qu(l,n),re(te(e,o),t,r,l,i),i}function nt(e,t,r,n,l,o){return ju(e,t,r,n,l,0,o)}function ju(e,t,r,n,l,o,i){var a,s,f,u,p;if(u=l[o],f=o===i-1,a=f?n:0,p=qu(a,u),re(te(e,i-o),t[o],r[o],a,p),!f)for(++o,s=0;s<u;++s)p[s]=ju(e,t,r,n,l,o,i);return p}function re(e,t,r,n,l){return l.___clazz$=e,l.castableTypeMap$=t,l.typeMarker$=Ku,l.__elementTypeId$=r,l.__elementTypeCategory$=n,l}function qu(e,t){var r=new Array(t),n;switch(e){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 l=0;l<t;++l)r[l]=n;return r}function Cu(e){var t,r,n;return t=e&lt,r=e>>22&lt,n=e<0?_r:0,TB(t,r,n)}function TB(e,t,r){return{l:e,m:t,h:r}}function GB(e,t){var r,n,l;return r=e.l+t.l,n=e.m+t.m+(r>>22),l=e.h+t.h+(n>>22),{l:r&lt,m:n&lt,h:l&_r}}function Xt(e,t){return{l:e.l&t.l,m:e.m&t.m,h:e.h&t.h}}function p0(e){var t,r;return e>-129&&e<128?(t=e+128,Ei==null&&(Ei=Y(hd,fe,293,256,0,1)),r=Ei[t],!r&&(r=Ei[t]=Cu(e)),r):Cu(e)}function Vu(e,t){var r,n;return r=e.h>>19,n=t.h>>19,r===0?n!==0||e.h>t.h||e.h===t.h&&e.m>t.m||e.h===t.h&&e.m===t.m&&e.l>=t.l:!(n===0||e.h<t.h||e.h===t.h&&e.m<t.m||e.h===t.h&&e.m===t.m&&e.l<t.l)}function Js(e,t){return e.l!==t.l||e.m!==t.m||e.h!==t.h}function e0(e,t){return{l:e.l|t.l,m:e.m|t.m,h:e.h|t.h}}function Ci(e,t){var r,n,l;return t&=63,t<22?(r=e.l<<t,n=e.m<<t|e.l>>22-t,l=e.h<<t|e.m>>22-t):t<44?(r=0,n=e.l<<t-22,l=e.m<<t-22|e.l>>44-t):(r=0,n=0,l=e.l<<t-44),{l:r&lt,m:n&lt,h:l&_r}}function mn(e,t){var r,n,l,o,i;return t&=63,r=e.h,n=(r&kB)!==0,n&&(r|=-1048576),t<22?(i=r>>t,o=e.m>>t|r<<22-t,l=e.l>>t|e.m<<22-t):t<44?(i=n?_r:0,o=r>>t-22,l=e.m>>t-22|r<<44-t):(i=n?_r:0,o=n?lt:0,l=r>>t-44),{l:l&lt,m:o&lt,h:i&_r}}function Hu(e,t){var r,n,l;return r=e.l-t.l,n=e.m-t.m+(r>>22),l=e.h-t.h+(n>>22),{l:r&lt,m:n&lt,h:l&_r}}function Ln(e){return e.l|e.m<<22}function WB(e){this.string=e}function kr(e,t){return e>t?e:t}function g0(e,t){return e<t?e:t}function KB(e,t){return e.indexOf(t)}function QB(e){return jB(e,0,e.length)}function jB(e,t,r){for(var n=\\\"\\\",l=t;l<r;){var o=Math.min(l+1e4,r);n+=String.fromCharCode.apply(null,e.slice(l,o)),l=o}return n}function qB(e){return String.fromCharCode(e&Je)}function Nu(e){return e.string+=\\\" \\\",e}function Pu(e,t){return e.string+=t,e}function HB(){WB.call(this,\\\"\\\")}function Ni(e,t){var r;if(e===t)return!0;if(e.length!==t.length)return!1;for(r=0;r<e.length;++r)if(e[r]!==t[r])return!1;return!0}function Bn(){Mu||(Mu=!0,Er=nt(Se,[fe,ve],[11,0],7,[495,18],2),gl=nt(Se,[fe,ve],[11,0],7,[324,18],2),Bl=nt(Se,[fe,ve],[11,0],7,[336,18],2),zr=nt(Se,[fe,ve],[11,0],7,[495,8],2),Vi=Y(je,Qe,0,20048,7,1),qi=Y(je,Qe,0,20791,7,1),pl=Y(je,Qe,0,82945,7,1),al=nt(Se,[fe,ve],[11,0],7,[2768,10],2),fl=nt(Se,[fe,ve],[11,0],7,[2768,10],2),ul=nt(Se,[fe,ve],[11,0],7,[24,10],2),vo=nt(Se,[fe,ve],[11,0],7,[24,16],2),dn=nt(Se,[fe,ve],[11,0],7,[140,16],2),ji=Y(je,Qe,0,8305,7,1),sl=Y(je,Qe,0,48441,7,1))}function XB(e,t,r){return e.slice_0=Er[t.slice_0][r],e.flip=Bl[t.flip][($(),hn)[r<<3|t.fsym]],e.fsym=e.flip&7^t.fsym,e.flip>>=3,e.twist=gl[t.twist][hn[r<<3|t.tsym]],e.tsym=e.twist&7^t.tsym,e.twist>>=3,e.prun=kr(kr(pt(Vi,e.twist*495+zr[e.slice_0][e.tsym]),pt(qi,e.flip*495+zr[e.slice_0][e.fsym])),pt(pl,e.twist<<11|Nr[e.flip<<3|e.fsym^e.tsym])),e.prun}function ZB(e,t,r){return r=($(),Fo)[3][r],e.flipc=Bl[t.flipc>>3][hn[r<<3|t.flipc&7]]^t.flipc&7,e.twistc=gl[t.twistc>>3][hn[r<<3|t.twistc&7]]^t.twistc&7,pt(pl,e.twistc>>3<<11|Nr[e.flipc^e.twistc&7])}function Xu(e,t,r){var n;return e.twist=($(),Ao)[Mi(t)],e.flip=Rn[Pi(t)],e.tsym=e.twist&7,e.twist=e.twist>>3,e.prun=pt(pl,e.twist<<11|Nr[e.flip^e.tsym]),e.prun>r||(e.fsym=e.flip&7,e.flip=e.flip>>3,e.slice_0=494-ml(t.ea,8,!0),e.prun=kr(e.prun,kr(pt(Vi,e.twist*495+zr[e.slice_0][e.tsym]),pt(qi,e.flip*495+zr[e.slice_0][e.fsym]))),e.prun>r)?!1:(n=new ce,So(t,1,n),xo(t,1,n),e.twistc=Ao[Mi(n)],e.flipc=Rn[Pi(n)],e.prun=kr(e.prun,pt(pl,e.twistc>>3<<11|Nr[e.flipc^e.twistc&7])),e.prun<=r)}function Ro(){Bn()}function pt(e,t){return Bn(),e[t>>3]>>(t<<2)&15}function Zu(e){Bn(),!(wi===2||wi===1&&!e)&&(wi===0&&(fd(),JB(),$B(),td(),YB(),$(),r0(2048,d0,Rn,Ou=Y(Se,ve,0,336,7,1),0),r0(2187,h0,Ao,Ys=Y(Se,ve,0,324,7,1),1),ed(),rd(),nd()),Bo(ji,ul,vo,al,($(),n0),584244,e),Bo(sl,t0,dn,fl,n0,514084,e),Bo(Vi,Er,zr,gl,Ys,431619,e),Bo(qi,Er,zr,Bl,Ou,431619,e),Bo(pl,null,null,gl,Ys,103939,e),wi=e?2:1)}function JB(){var e,t,r,n;for(e=new ce,t=new ce,r=0;r<2768;r++)for(id(e,($(),il)[r]),n=0;n<10;n++)Cr(e,ge[(tt(),Nt)[n]],t),al[r][n]=Oi(cr[ct(t.ca,8,!1)])&Je}function YB(){var e,t,r,n,l;for(e=new ce,t=new ce,t0=nt(Se,[fe,ve],[11,0],7,[140,10],2),r=0;r<140;r++){for(fp(e.ca,r%70,0,!1),l=0;l<10;l++)Cr(e,($(),ge)[(tt(),Nt)[l]],t),t0[r][l]=ml(t.ca,0,!1)+70*(165>>l&1^~~(r/70))&Je;for(n=0;n<16;n++)So(e,($(),gt)[0][n],t),dn[r][n]=ml(t.ca,0,!1)+70*~~(r/70)&Je}}function $B(){var e,t,r,n;for(e=new ce,t=new ce,r=0;r<2768;r++)for($u(e,($(),il)[r]),n=0;n<10;n++)St(e,ge[(tt(),Nt)[n]],t),fl[r][n]=cr[ct(t.ea,8,!0)]}function ed(){var e,t,r,n;for(e=new ce,t=new ce,r=0;r<336;r++)for(L0(e,($(),d0)[r]),n=0;n<18;n++)St(e,ge[n],t),Bl[r][n]=Rn[Pi(t)]}function td(){var e,t,r,n,l;for(e=new ce,t=new ce,r=0;r<24;r++){for(Fn(e.ea,r,12,!0),l=0;l<10;l++)St(e,($(),ge)[(tt(),Nt)[l]],t),ul[r][l]=ct(t.ea,12,!0)%24&Je;for(n=0;n<16;n++)xo(e,($(),gt)[0][n],t),vo[r][n]=ct(t.ea,12,!0)%24&Je}}function Bo(e,t,r,n,l,o,i){var a,s,f,u,p,g,c,L,m,d,F,A,v,x,U,P,Z,C,Q,S,z,N,b,w,M,j,q,ie,he,Ue,Ye,bt,Be,Ft,it,mt;if(v=o&15,F=(o>>4&1)===1?s0:0,f=(o>>5&1)===1,a=o>>8&15,u=o>>12&15,p=o>>16&15,d=i?u:p,A=(1<<v)-1,s=t===null,L=s?2048:t.length,m=L*n.length,c=f?10:18,g=c===10?66:599186,U=(e[m>>3]>>(m<<2)&15)-1,U===-1){for(C=0;C<~~(m/8)+1;C++)e[C]=Lo;e[0]^=1,U=0}for(;U<d;){for(M=(U+1)*Lo^-1,Q=0;Q<e.length;Q++)it=e[Q]^M,it&=it>>1,e[Q]+=it&it>>2&Lo;for(N=U>a,Ue=N?U+2:U,he=Ue*Lo,x=N?U:U+2,++U,mt=U^U+1,Ft=0,C=0;C<m;++C,Ft>>=4){if((C&7)===0&&(Ft=e[C>>3],((Ft^he)-Lo&~(Ft^he)&-2004318072)===0)){C+=7;continue}if((Ft&15)===Ue)for(q=C%L,Ye=~~(C/L),P=0,Z=0,s&&(P=($(),Rn)[q],Z=P&7,P>>=3),w=0;w<c;w++){if(Be=n[Ye][w],s?ie=($(),Nr)[Bl[P][hn[w<<3|Z]]^Z^Be&A]:ie=r[t[q][w]][Be&A],Be>>=v,S=Be*L+ie,j=e[S>>3]>>(S<<2)&15,j!==x){j<U-1&&(w+=g>>w&3);continue}if(N){e[C>>3]^=mt<<(C<<2);break}for(e[S>>3]^=mt<<(S<<2),b=1,bt=l[Be];(bt>>=1)!==0;b++)(bt&1)===1&&(z=Be*L,s?z+=($(),Nr)[Rn[ie]^b]:z+=r[ie][b^F>>(b<<1)&3],(e[z>>3]>>(z<<2)&15)===x&&(e[z>>3]^=mt<<(z<<2)))}}}}function rd(){var e,t,r,n;for(e=new ce,t=new ce,r=0;r<324;r++)for(B0(e,($(),h0)[r]),n=0;n<18;n++)Cr(e,ge[n],t),gl[r][n]=Ao[Mi(t)]}function nd(){var e,t,r,n,l,o,i,a;for(e=new ce,t=new ce,n=0;n<495;n++){for(fp(e.ea,494-n,8,!0),o=0;o<18;o+=3)St(e,($(),ge)[o],t),Er[n][o]=494-ml(t.ea,8,!0)&Je;for(l=0;l<16;l+=2)xo(e,($(),gt)[0][l],t),zr[n][l>>1]=494-ml(t.ea,8,!0)&Je}for(r=0;r<495;r++)for(l=0;l<18;l+=3)for(a=Er[r][l],i=1;i<3;i++)a=Er[a][l],Er[r][l+i]=a&Je}function $(){Iu||(Iu=!0,pr=Y(Do,fe,7,16,0,1),ge=Y(Do,fe,7,18,0,1),Hi=Y(Fd,fe,0,18,6,1),rp=Y(je,Qe,0,48,7,1),gr=nt(je,[fe,Qe],[17,0],7,[16,16],2),gt=nt(je,[fe,Qe],[17,0],7,[16,16],2),Fo=nt(je,[fe,Qe],[17,0],7,[16,18],2),hn=Y(je,Qe,0,144,7,1),wr=nt(je,[fe,Qe],[17,0],7,[16,18],2),d0=Y(Se,ve,0,336,7,1),h0=Y(Se,ve,0,324,7,1),il=Y(Se,ve,0,2768,7,1),cl=Y(ne,se,0,2768,7,1),R0=Y(Se,ve,0,2768,7,1),Ti=Y(ne,se,0,24,7,1),Rn=Y(Se,ve,0,2048,7,1),Ao=Y(Se,ve,0,2187,7,1),cr=Y(Se,ve,0,40320,7,1),Nr=Y(Se,ve,0,2688,7,1),l0=new Ct(2531,1373,67026819,1367),o0=new Ct(2089,1906,322752913,2040),Gi=re(te(ne,2),fe,10,0,[re(te(ne,1),se,0,7,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),re(te(ne,1),se,0,7,[6,7,8,0,1,2,3,4,5,15,16,17,9,10,11,12,13,14]),re(te(ne,1),se,0,7,[3,4,5,6,7,8,0,1,2,12,13,14,15,16,17,9,10,11]),re(te(ne,1),se,0,7,[2,1,0,5,4,3,8,7,6,11,10,9,14,13,12,17,16,15]),re(te(ne,1),se,0,7,[8,7,6,2,1,0,5,4,3,17,16,15,11,10,9,14,13,12]),re(te(ne,1),se,0,7,[5,4,3,8,7,6,2,1,0,14,13,12,17,16,15,11,10,9])]),sd(),ud())}function c0(e){e.ca=re(te(ne,1),se,0,7,[0,1,2,3,4,5,6,7]),e.ea=re(te(ne,1),se,0,7,[0,2,4,6,8,10,12,14,16,18,20,22])}function Ju(e){!e.temps&&(e.temps=new ce),Cr(o0,e,e.temps),Cr(e.temps,l0,e),St(o0,e,e.temps),St(e.temps,l0,e)}function m0(e,t){var r,n;for(n=0;n<8;n++)e.ca[n]=t.ca[n];for(r=0;r<12;r++)e.ea[r]=t.ea[r]}function ld(e){return Oi(cr[ct(e.ca,8,!1)])}function od(e){return cr[ct(e.ea,8,!0)]}function Pi(e){var t,r;for(r=0,t=0;t<11;t++)r=r<<1|e.ea[t]&1;return r}function Mi(e){var t,r;for(r=0,t=0;t<7;t++)r+=(r<<1)+(e.ca[t]>>3);return r}function Ii(e){var t,r;for(!e.temps&&(e.temps=new ce),r=0;r<12;r++)e.temps.ea[e.ea[r]>>1]=(r<<1|e.ea[r]&1)<<24>>24;for(t=0;t<8;t++)e.temps.ca[e.ca[t]&7]=(t|32>>(e.ca[t]>>3)&24)<<24>>24;m0(e,e.temps)}function Yu(e){var t,r,n,l,o,i,a;for(t=new ep(e),l=new ce,r=Oi(cr[ct(t.ca,8,!1)])>>4,i={l:0,m:0,h:0},a=0;a<6;a++){if(n=Oi(cr[ct(t.ca,8,!1)])>>4,r===n)for(o=0;o<16;o++)So(t,gt[0][o],l),Ni(l.ca,e.ca)&&(xo(t,gt[0][o],l),Ni(l.ea,e.ea)&&(i=e0(i,Ci({l:1,m:0,h:0},(a<<4|o)<48?a<<4|o:48))));Ju(t),a%3===2&&Ii(t)}return i}function id(e,t){Fn(e.ca,t,8,!1)}function $u(e,t){Fn(e.ea,t,8,!0)}function L0(e,t){var r,n,l;for(n=0,r=10;r>=0;--r,t>>=1)n^=l=t&1,e.ea[r]=(e.ea[r]&-2|l)<<24>>24;e.ea[11]=(e.ea[11]&-2|n)<<24>>24}function B0(e,t){var r,n,l;for(n=15,r=6;r>=0;--r,t=~~(t/3))n-=l=t%3,e.ca[r]=(e.ca[r]&7|l<<3)<<24>>24;e.ca[7]=(e.ca[7]&7|n%3<<3)<<24>>24}function ad(e){var t,r,n,l,o;for(o=0,l=0,n=0;n<12;n++)l|=1<<(e.ea[n]>>1),o^=e.ea[n]&1;if(l!==4095)return-2;if(o!==0)return-3;for(r=0,o=0,t=0;t<8;t++)r|=1<<(e.ca[t]&7),o+=e.ca[t]>>3;return r!==255?-4:o%3!==0?-5:(i0(ct(e.ea,12,!0),12)^i0(ct(e.ca,8,!1),8))!==0?-6:0}function So(e,t,r){$();var n,l,o,i,a,s;for(s=pr[gt[0][t]],a=pr[t],n=0;n<8;n++)o=s.ca[e.ca[a.ca[n]&7]&7]>>3,i=e.ca[a.ca[n]&7]>>3,l=o<3?i:(3-i)%3,r.ca[n]=(s.ca[e.ca[a.ca[n]&7]&7]&7|l<<3)<<24>>24}function Cr(e,t,r){$();var n,l,o;for(n=0;n<8;n++)l=e.ca[t.ca[n]&7]>>3,o=t.ca[n]>>3,r.ca[n]=(e.ca[t.ca[n]&7]&7|(l+o)%3<<3)<<24>>24}function ki(e,t,r){var n,l,o,i;for(n=0;n<8;n++)o=e.ca[t.ca[n]&7]>>3,i=t.ca[n]>>3,l=o+(o<3?i:6-i),l=l%3+(o<3==i<3?0:3),r.ca[n]=(e.ca[t.ca[n]&7]&7|l<<3)<<24>>24}function ce(){$(),c0(this)}function Ct(e,t,r,n){c0(this),Fn(this.ca,e,8,!1),B0(this,t),Fn(this.ea,r,12,!0),L0(this,n)}function ep(e){c0(this),m0(this,e)}function Oi(e){return $(),e^s0>>((e&15)<<1)&3}function xo(e,t,r){$();var n,l,o;for(o=pr[gt[0][t]],l=pr[t],n=0;n<12;n++)r.ea[n]=(o.ea[e.ea[l.ea[n]>>1]>>1]^e.ea[l.ea[n]>>1]&1^l.ea[n]&1)<<24>>24}function St(e,t,r){$();var n;for(n=0;n<12;n++)r.ea[n]=(e.ea[t.ea[n]>>1]^t.ea[n]&1)<<24>>24}function br(e,t,r){$();var n;return n=R0[e],r&&(n=n^s0>>((n&15)<<1)&3),n&65520|gr[n&15][t]}function tp(){return $(),0}function sd(){var e,t;for(ge[0]=new Ct(15120,0,119750400,0),ge[3]=new Ct(21021,1494,323403417,0),ge[6]=new Ct(8064,1236,29441808,550),ge[9]=new Ct(9,0,5880,0),ge[12]=new Ct(1230,412,2949660,0),ge[15]=new Ct(224,137,328552,137),e=0;e<18;e+=3)for(t=0;t<2;t++)ge[e+t+1]=new ce,St(ge[e+t],ge[e],ge[e+t+1]),Cr(ge[e+t],ge[e],ge[e+t+1])}function fd(){$();var e,t,r;for(r0(40320,il,cr,n0=Y(Se,ve,0,2768,7,1),2),e=new ce,r=0;r<2768;r++)$u(e,il[r]),cl[r]=ml(e.ea,0,!0)+i0(il[r],8)*70<<24>>24,Ii(e),R0[r]=cr[ct(e.ea,8,!0)];for(t=0;t<24;t++)Fn(e.ea,t,12,!0),Ii(e),Ti[t]=ct(e.ea,12,!0)%24<<24>>24}function ud(){var e,t,r,n,l,o,i,a,s,f,u,p,g,c,L,m;for(e=new ce,t=new ce,r=new Ct(28783,0,259268407,0),m=new Ct(15138,0,119765538,7),p=new Ct(5167,0,83473207,0),l=0;l<8;l++)p.ca[l]=zi(p.ca[l]|24);for(o=0;o<16;o++)pr[o]=new ep(e),ki(e,m,t),St(e,m,t),L=t,t=e,e=L,o%4===3&&(ki(L,p,t),St(L,p,t),L=t,t=e,e=L),o%8===7&&(ki(L,r,t),St(L,r,t),L=t,t=e,e=L);for(i=0;i<16;i++)for(s=0;s<16;s++)for(ki(pr[i],pr[s],e),u=0;u<16;u++)if(Ni(pr[u].ca,e.ca)){gr[i][s]=u,gt[u][s]=i;break}for(f=0;f<18;f++)for(c=0;c<16;c++){for(So(ge[f],gt[0][c],e),g=0;g<18;g++)if(Ni(ge[g].ca,e.ca)){Fo[c][f]=g,wr[c][(tt(),Ll)[f]]=Ll[g];break}c%2===0&&(hn[f<<3|c>>1]=Fo[c][f])}for(n=0;n<18;n++)for(Hi[n]=Yu(ge[n]),a=n,c=0;c<48;c++)Fo[c%16][a]<n&&(rp[c]|=1<<n),c%16===15&&(a=Gi[2][a])}function r0(e,t,r,n,l){$();var o,i,a,s,f,u,p,g,c;for(o=new ce,a=new ce,i=0,f=0,c=l>=2?1:2,u=l!==1,s=0;s<e;s++)if(r[s]===0){switch(l){case 0:{L0(o,s);break}case 1:{B0(o,s);break}case 2:Fn(o.ea,s,8,!0)}for(p=0;p<16;p+=c){switch(u?xo(o,p,a):So(o,p,a),l){case 0:{f=Pi(a);break}case 1:{f=Mi(a);break}case 2:f=ct(a.ea,8,!0)}l===0&&(Nr[i<<3|p>>1]=f&Je),f===s&&(n[i]=(n[i]|1<<~~(p/c))&Je),g=~~((i<<4|p)/c),r[f]=g&Je}t[i++]=s&Je}return i}function pd(e,t,r,n,l,o,i,a){var s,f,u,p,g;if(p=kr(pt((Bn(),sl),(i>>4)*140+dn[($(),cl)[a>>4]&255][gt[i&15][a&15]]),kr(pt(sl,n*140+dn[cl[t]&255][gt[l][r]]),pt(ji,t*24+vo[o][r]))),p>e.maxDep2)return p-e.maxDep2;for(s=e.maxDep2;s>=p&&(g=op(e,n,l,t,r,o,s,e.depth1,10),!(g<0));s--){for(s-=g,e.solLen=0,e.solution=new up,Rd(e.solution,e.verbose,e.urfIdx,e.depth1),u=0;u<e.depth1+s;u++)Gu(e.solution,e.move[u]);for(f=e.preMoveLen-1;f>=0;f--)Gu(e.solution,e.preMoves[f]);e.solLen=e.solution.length_0}return s!==e.maxDep2?(e.maxDep2=g0(ap,e.solLen-e.length1-1),Vu(e.probe,e.probeMin)?0:1):1}function gd(e){var t,r,n,l,o,i,a,s,f,u,p,g,c,L,m;if(e.isRec=!1,Vu(e.probe,e.solution?e.probeMin:e.probeMax))return 0;for(e.probe=GB(e.probe,{l:1,m:0,h:0}),n=e.valid1;n<e.depth1;n++)Cr(e.phase1Cubie[n],($(),ge)[e.move[n]],e.phase1Cubie[n+1]),St(e.phase1Cubie[n],ge[e.move[n]],e.phase1Cubie[n+1]);for(e.valid1=e.depth1,a=ld(e.phase1Cubie[e.depth1]),s=a&15,a>>=4,f=od(e.phase1Cubie[e.depth1]),u=f&15,f>>=4,p=ct(e.phase1Cubie[e.depth1].ea,12,!0)%24,r=br(f,u,!1),t=br(a,s,!0),l=e.depth1===0?-1:e.move[e.depth1-1],o=e.preMoveLen===0?-1:e.preMoves[e.preMoveLen-1],m=0,L=(e.preMoveLen===0?1:2)*(e.depth1===0?1:2),g=0,c=(1<<L)-1;g<L;g++){if((c>>g&1)!==0){if(c&=~(1<<g),m=pd(e,a,s,f,u,p,r,t),m===0||m>2)break;m===2&&(c&=4<<g)}if(c===0)break;(g&1)===0&&e.depth1>0?(i=(tt(),Ll)[~~(l/3)*3+1],e.move[e.depth1-1]=Nt[i]*2-e.move[e.depth1-1],p=(Bn(),ul)[p][i],a=al[a][($(),wr)[s][i]],s=gr[a&15][s],a>>=4,f=fl[f][wr[u][i]],u=gr[f&15][u],f>>=4,t=br(a,s,!0),r=br(f,u,!1)):e.preMoveLen>0&&(i=(tt(),Ll)[~~(o/3)*3+1],e.preMoves[e.preMoveLen-1]=Nt[i]*2-e.preMoves[e.preMoveLen-1],p=($(),Ti)[(Bn(),ul)[Ti[p]][i]],a=al[t>>4][wr[t&15][i]],t=a&-16|gr[a&15][t&15],a=br(t>>4,t&15,!0),s=a&15,a>>=4,f=fl[r>>4][wr[r&15][i]],r=f&-16|gr[f&15][r&15],f=br(r>>4,r&15,!1),u=f&15,f>>=4)}return e.depth1>0&&(e.move[e.depth1-1]=l),e.preMoveLen>0&&(e.preMoves[e.preMoveLen-1]=o),m===0?0:2}function cd(e){var t;for(e.conjMask=0,e.selfSym=Yu(e.cc),e.conjMask|=Js(Xt(mn(e.selfSym,16),{l:Je,m:0,h:0}),{l:0,m:0,h:0})?18:0,e.conjMask|=Js(Xt(mn(e.selfSym,32),{l:Je,m:0,h:0}),{l:0,m:0,h:0})?36:0,e.conjMask|=Js(Xt(mn(e.selfSym,48),{l:Je,m:0,h:0}),{l:0,m:0,h:0})?56:0,e.selfSym=Xt(e.selfSym,{l:lt,m:lt,h:15}),e.maxPreMoves=e.conjMask>7?0:20,t=0;t<6;t++)m0(e.urfCubieCube[t],e.cc),Xu(e.urfCoordCube[t],e.urfCubieCube[t],20),Ju(e.cc),t%3===2&&Ii(e.cc)}function np(e,t,r,n,l){var o,i,a,s,f,u;if(t.prun===0&&n<5)return e.allowShorter||n===0?(e.depth1-=n,f=gd(e),e.depth1+=n,f):1;for(u=tp(p0(r)),o=0;o<18;o+=3)if(!(o===l||o===l-9)){for(a=0;a<3;a++)if(i=o+a,!(e.isRec&&i!==e.move[e.depth1-n]||u!==0&&(u&1<<i)!==0)){if(s=XB(e.nodeUD[n],t,i),s>n)break;if(s===n)continue;if(s=ZB(e.nodeUD[n],t,i),s>n)break;if(s===n)continue;if(e.move[e.depth1-n]=i,e.valid1=g0(e.valid1,e.depth1-n),f=np(e,e.nodeUD[n],r&Ln(($(),Hi)[i]),n-1,o),f===0)return 0;if(f>=2)break}}return 1}function lp(e,t,r,n,l){var o,i,a;if(e.preMoveLen=e.maxPreMoves-t,(e.isRec?e.depth1===e.length1-e.preMoveLen:e.preMoveLen===0||(225207>>r&1)===0)&&(e.depth1=e.length1-e.preMoveLen,e.phase1Cubie[0]=n,e.allowShorter=e.depth1===$s&&e.preMoveLen!==0,Xu(e.nodeUD[e.depth1+1],n,e.depth1)&&np(e,e.nodeUD[e.depth1+1],l,e.depth1,-1)===0))return 0;if(t===0||e.preMoveLen+$s>=e.length1)return 1;for(a=tp(p0(l)),(t===1||e.preMoveLen+1+$s>=e.length1)&&(a|=225207),r=~~(r/3)*3,o=0;o<18;o++){if(o===r||o===r-9||o===r+9){o+=2;continue}if(!(e.isRec&&o!==e.preMoves[e.maxPreMoves-t]||(a&1<<o)!==0)&&(Cr(($(),ge)[o],n,e.preMoveCubes[t]),St(ge[o],n,e.preMoveCubes[t]),e.preMoves[e.maxPreMoves-t]=o,i=lp(e,t-1,o,e.preMoveCubes[t],l&Ln(Hi[o])),i===0))return 0}return 1}function op(e,t,r,n,l,o,i,a,s){var f,u,p,g,c,L,m,d,F,A,v;if(t===0&&n===0&&o===0)return i;for(F=(tt(),ho)[s],m=0;m<10;m++){if((F>>m&1)!==0){m+=66>>m&3;continue}if(d=(Bn(),ul)[o][m],u=al[n][($(),wr)[l][m]],p=gr[u&15][l],u>>=4,c=fl[t][wr[r][m]],L=gr[c&15][r],c>>=4,g=br(c,L,!1),f=br(u,p,!0),A=pt(sl,(g>>4)*140+dn[cl[f>>4]&255][gt[g&15][f&15]]),A>i+1)return i-A+1;if(A>=i){m+=66>>m&3&i-A;continue}if(A=kr(pt(ji,u*24+vo[d][p]),pt(sl,c*140+dn[cl[u]&255][gt[L][p]])),A>=i){m+=66>>m&3&i-A;continue}if(v=op(e,c,L,u,p,d,i-1,a+1,m),v>=0)return e.move[a]=Nt[m],v;if(v<-2)break;v<-1&&(m+=66>>m&3)}return-1}function md(e){for(e.length1=e.isRec?e.length1:0;e.length1<e.solLen;e.length1++)for(e.maxDep2=g0(ap,e.solLen-e.length1-1),e.urfIdx=e.isRec?e.urfIdx:0;e.urfIdx<6;e.urfIdx++)if((e.conjMask&1<<e.urfIdx)===0&&lp(e,e.maxPreMoves,-30,e.urfCubieCube[e.urfIdx],Ln(Xt(e.selfSym,{l:Je,m:0,h:0})))===0)return e.solution?Wu(e.solution):\\\"Error 8\\\";return e.solution?Wu(e.solution):\\\"Error 7\\\"}function Ld(e,t){var r;return r=Bd(e,t),r!==0?`Error ${r<0?-r:r}`:(e.solLen=22,e.probe={l:0,m:0,h:0},e.probeMax={l:3531008,m:23,h:0},e.probeMin={l:0,m:0,h:0},e.verbose=0,e.solution=null,e.isRec=!1,Zu(!1),cd(e),md(e))}function Bd(e,t){var r,n,l,o;for(n=0,l=Y(ne,se,0,54,7,1),r=QB(re(te(Se,1),ve,0,7,[t.charCodeAt(4),t.charCodeAt(13),t.charCodeAt(22),t.charCodeAt(31),t.charCodeAt(40),t.charCodeAt(49)])),o=0;o<54;o++){if(l[o]=KB(r,qB(t.charCodeAt(o)))<<24>>24,l[o]===-1)return-1;n+=1<<(l[o]<<2)}return n!==10066329?-1:(dd(l,e.cc),ad(e.cc))}function ip(){var e,t,r;for(this.move=Y(je,Qe,0,31,7,1),this.nodeUD=Y(_i,fe,31,21,0,1),this.nodeRL=Y(_i,fe,31,21,0,1),this.nodeFB=Y(_i,fe,31,21,0,1),this.cc=new ce,this.urfCubieCube=Y(Do,fe,7,6,0,1),this.urfCoordCube=Y(_i,fe,31,6,0,1),this.phase1Cubie=Y(Do,fe,7,21,0,1),this.preMoveCubes=Y(Do,fe,7,21,0,1),this.preMoves=Y(je,Qe,0,20,7,1),t=0;t<21;t++)this.nodeUD[t]=new Ro,this.nodeRL[t]=new Ro,this.nodeFB[t]=new Ro,this.phase1Cubie[t]=new ce;for(r=0;r<6;r++)this.urfCubieCube[r]=new ce,this.urfCoordCube[r]=new Ro;for(e=0;e<20;e++)this.preMoveCubes[e+1]=new ce}function tt(){if(!Tu){Tu=!0;var e,t,r,n,l,o;for(cn=re(te(ne,2),fe,10,0,[re(te(ne,1),se,0,7,[8,9,20]),re(te(ne,1),se,0,7,[6,18,38]),re(te(ne,1),se,0,7,[0,36,47]),re(te(ne,1),se,0,7,[2,45,11]),re(te(ne,1),se,0,7,[29,26,15]),re(te(ne,1),se,0,7,[27,44,24]),re(te(ne,1),se,0,7,[33,53,42]),re(te(ne,1),se,0,7,[35,17,51])]),fr=re(te(ne,2),fe,10,0,[re(te(ne,1),se,0,7,[5,10]),re(te(ne,1),se,0,7,[7,19]),re(te(ne,1),se,0,7,[3,37]),re(te(ne,1),se,0,7,[1,46]),re(te(ne,1),se,0,7,[32,16]),re(te(ne,1),se,0,7,[28,25]),re(te(ne,1),se,0,7,[30,43]),re(te(ne,1),se,0,7,[34,52]),re(te(ne,1),se,0,7,[23,12]),re(te(ne,1),se,0,7,[21,41]),re(te(ne,1),se,0,7,[50,39]),re(te(ne,1),se,0,7,[48,14])]),ur=nt(je,[fe,Qe],[17,0],7,[13,13],2),a0=re(te(VB,1),fe,2,4,[\\\"U \\\",\\\"U2\\\",\\\"U'\\\",\\\"R \\\",\\\"R2\\\",\\\"R'\\\",\\\"F \\\",\\\"F2\\\",\\\"F'\\\",\\\"D \\\",\\\"D2\\\",\\\"D'\\\",\\\"L \\\",\\\"L2\\\",\\\"L'\\\",\\\"B \\\",\\\"B2\\\",\\\"B'\\\"]),Nt=re(te(je,1),Qe,0,7,[0,1,2,4,7,9,10,11,13,16,3,5,6,8,12,14,15,17]),Ll=Y(je,Qe,0,18,7,1),ho=Y(je,Qe,0,11,7,1),t=0;t<18;t++)Ll[Nt[t]]=t;for(r=0;r<10;r++)for(n=~~(Nt[r]/3),ho[r]=0,l=0;l<10;l++)o=~~(Nt[l]/3),ho[r]|=(n===o||n%3===o%3&&n>=o?1:0)<<l;for(ho[10]=0,e=0;e<13;e++)for(ur[e][0]=ur[e][e]=1,l=1;l<e;l++)ur[e][l]=ur[e-1][l-1]+ur[e-1][l]}}function ml(e,t,r){tt();var n,l,o,i,a;for(n=e.length-1,o=0,a=4,l=n;l>=0;l--)i=sp(e[l],r),(i&12)===t&&(o+=ur[l][a--]);return o}function i0(e,t){tt();var r,n;for(n=0,r=t-2;r>=0;r--)n^=e%(t-r),e=~~(e/(t-r));return n&1}function ct(e,t,r){tt();var n,l,o,i;for(l=0,i={l:1323536,m:2777561,h:1043915},n=0;n<t-1;n++)o=sp(e[n],r)<<2,l=(t-n)*l+Ln(Xt(mn(i,o),{l:15,m:0,h:0})),i=Hu(i,Ci({l:1118480,m:279620,h:69905},o));return l}function sp(e,t){return t?e>>1:e&7}function fp(e,t,r,n){tt();var l,o,i,a;for(l=e.length-1,a=4,o=l,i=l;i>=0;i--)t>=ur[i][a]?(t-=ur[i][a--],e[i]=Wi(e[i],a|r,n)):((o&12)===r&&(o-=4),e[i]=Wi(e[i],o--,n))}function Fn(e,t,r,n){tt();var l,o,i,a,s,f;for(f={l:1323536,m:2777561,h:1043915},l={l:0,m:0,h:0},a=2;a<=r;a++)l=e0(Ci(l,4),p0(t%a)),t=~~(t/a);for(o=0;o<r-1;o++)s=(Ln(l)&15)<<2,l=mn(l,4),e[o]=Wi(e[o],Ln(Xt(mn(f,s),{l:15,m:0,h:0})),n),i=Hu(Ci({l:1,m:0,h:0},s),{l:1,m:0,h:0}),f=e0(Xt(f,i),Xt(mn(f,4),{l:~i.l&lt,m:~i.m&lt,h:~i.h&_r}));e[r-1]=Wi(e[r-1],Ln(Xt(f,{l:15,m:0,h:0})),n)}function Wi(e,t,r){return(r?t<<1|e&1:t|e&-8)<<24>>24}function dd(e,t){tt();var r,n,l,o,i,a,s,f;for(o=0;o<8;o++)t.ca[o]=0;for(i=0;i<12;i++)t.ea[i]=0;for(a=0;a<8;a++){for(f=0;f<3&&!(e[cn[a][f]]===0||e[cn[a][f]]===3);f++);for(r=e[cn[a][(f+1)%3]],n=e[cn[a][(f+2)%3]],s=0;s<8;s++)if(r===~~(cn[s][1]/9)&&n===~~(cn[s][2]/9)){t.ca[a]=zi(f%3<<3|s);break}}for(l=0;l<12;l++)for(s=0;s<12;s++){if(e[fr[l][0]]===~~(fr[s][0]/9)&&e[fr[l][1]]===~~(fr[s][1]/9)){t.ea[l]=zi(s<<1);break}if(e[fr[l][0]]===~~(fr[s][1]/9)&&e[fr[l][1]]===~~(fr[s][0]/9)){t.ea[l]=zi(s<<1|1);break}}}function Gu(e,t){var r,n,l;if(e.length_0===0){e.moves[e.length_0++]=t;return}if(r=~~(t/3),n=~~(e.moves[e.length_0-1]/3),r===n){l=(t%3+e.moves[e.length_0-1]%3+1)%4,l===3?--e.length_0:e.moves[e.length_0-1]=r*3+l;return}if(e.length_0>1&&r%3===n%3&&r===~~(e.moves[e.length_0-2]/3)){l=(t%3+e.moves[e.length_0-2]%3+1)%4,l===3?(e.moves[e.length_0-2]=e.moves[e.length_0-1],--e.length_0):e.moves[e.length_0-2]=r*3+l;return}e.moves[e.length_0++]=t}function Rd(e,t,r,n){e.verbose=t,e.urfIdx=r,e.depth1=n}function Wu(e){var t,r,n;if(r=new HB,n=(e.verbose&2)!==0?(e.urfIdx+3)%6:e.urfIdx,n<3)for(t=0;t<e.length_0;t++)(e.verbose&1)!==0&&t===e.depth1&&(r.string+=\\\". \\\"),Nu(Pu(r,(tt(),a0)[($(),Gi)[n][e.moves[t]]]));else for(t=e.length_0-1;t>=0;t--)Nu(Pu(r,(tt(),a0)[($(),Gi)[n][e.moves[t]]])),(e.verbose&1)!==0&&t===e.depth1&&(r.string+=\\\". \\\");return r.string}function up(){this.moves=Y(je,Qe,0,31,7,1)}var fe,lt,_r,kB,Je,ve,Qe,s0,Lo,se,H,Ki,Ei,VB,Mu,dn,t0,al,sl,fl,Bl,ji,vo,ul,pl,gl,zr,qi,Er,Vi,wi,_i,Iu,pr,cr,il,Rn,d0,Nr,Ti,cl,R0,hn,Fo,wr,gr,gt,Ou,n0,Ys,Ao,h0,rp,ge,Hi,l0,o0,Gi,Do,ap,$s,Tu,ur,ho,cn,fr,a0,Ll,Nt,je,hd,ne,Fd,Se,Dd,Ad,pp=y(()=>{\\\"use strict\\\";fe={3:1},lt=4194303,_r=1048575,kB=524288,Je=65535,ve={11:1,3:1},Qe={17:1,3:1},s0=14540032,Lo=286331153,se={10:1,3:1},Ki={};yo(1,null,{},PB);yo(79,1,{},f0);H.createClassLiteralForArray=function(t){var r;return r=new f0,r.modifiers=4,t>1?r.componentType=Qu(this,t-1):r.componentType=this,r};H.isPrimitive=function(){return(this.modifiers&1)!==0};VB=Pr(\\\"java.lang\\\",\\\"String\\\",2);Mu=!1;yo(31,1,{31:1},Ro);H.flip=0;H.flipc=0;H.fsym=0;H.prun=0;H.slice_0=0;H.tsym=0;H.twist=0;H.twistc=0;wi=0,_i=Pr(\\\"org.cubing.min2phase.client\\\",\\\"CoordCube\\\",31),Iu=!1;Do=Pr(\\\"org.cubing.min2phase.client\\\",\\\"CubieCube\\\",7);yo(72,1,{},ip);H.allowShorter=!1;H.conjMask=0;H.depth1=0;H.isRec=!1;H.length1=0;H.maxDep2=0;H.maxPreMoves=0;H.preMoveLen=0;H.probe={l:0,m:0,h:0};H.probeMax={l:0,m:0,h:0};H.probeMin={l:0,m:0,h:0};H.selfSym={l:0,m:0,h:0};H.solLen=0;H.urfIdx=0;H.valid1=0;H.verbose=0;ap=12,$s=7,Tu=!1;yo(150,1,{},up);H.depth1=0;H.length_0=0;H.urfIdx=0;H.verbose=0;je=Qi(\\\"int\\\",\\\"I\\\");Pr(\\\"com.google.gwt.lang\\\",\\\"CollapsedPropertyHolder\\\",252);Pr(\\\"com.google.gwt.lang\\\",\\\"JavaClassHierarchySetupUtil\\\",254);hd=Pr(\\\"com.google.gwt.lang\\\",\\\"LongLibBase/LongEmul\\\",null);Pr(\\\"com.google.gwt.lang\\\",\\\"ModuleUtils\\\",257);ne=Qi(\\\"byte\\\",\\\"B\\\"),Fd=Qi(\\\"long\\\",\\\"J\\\"),Se=Qi(\\\"char\\\",\\\"C\\\");Pr(\\\"com.google.gwt.user.client.rpc\\\",\\\"XsrfToken\\\",null),MB(\\\"java.util\\\",\\\"Map/Entry\\\");Dd=function(){Zu(!1)},Ad=function(e){return Ld(new ip,e)}});var gp={};Lt(gp,{initialize:()=>Dd,solveState:()=>Ad});var cp=y(()=>{\\\"use strict\\\";pp()});var F0,mp=y(()=>{\\\"use strict\\\";Vt();F0=Ke(()=>Promise.resolve().then(()=>(cp(),gp)))});function Lp(e,t){return e.slice(t)+e.slice(0,t)}function Ud(e){let t=[[],[]];for(let r=0;r<6;r++)if(e.stateData.CENTERS.pieces[r]!==r)throw new Error(\\\"non-oriented puzzles are not supported\\\");for(let r=0;r<12;r++)t[0].push(Lp(yd[e.stateData.EDGES.pieces[r]],e.stateData.EDGES.orientation[r]));for(let r=0;r<8;r++)t[1].push(Lp(vd[e.stateData.CORNERS.pieces[r]],e.stateData.CORNERS.orientation[r]));return t.push(Sd),t}function Bp(e){let t=Ud(e);return xd.map(([r,n,l])=>t[r][n][l]).join(\\\"\\\")}var yd,vd,Sd,xd,dp=y(()=>{\\\"use strict\\\";yd=\\\"UF UR UB UL DF DR DB DL FR FL BR BL\\\".split(\\\" \\\"),vd=\\\"UFR URB UBL ULF DRF DFL DLB DBR\\\".split(\\\" \\\"),Sd=\\\"U L F R B D\\\".split(\\\" \\\"),xd=[[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 Rp(e,t){let r=new pe(e.kpuzzle,{EDGES:e.stateData.EDGES,CORNERS:e.stateData.CORNERS,CENTERS:{pieces:e.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}}).experimentalToTransformation(),n=new pe(t.kpuzzle,{EDGES:t.stateData.EDGES,CORNERS:t.stateData.CORNERS,CENTERS:{pieces:t.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}}).experimentalToTransformation();return r.isIdentical(n)}function hp(e,t){if(Rp(e.startState(),t))return!1;for(let r of\\\"ULFRBD\\\")for(let n=1;n<4;n++){let l=e.moveToTransformation(new B(r,n)).toKState();if(Rp(l,t))return!1}return!0}var Fp=y(()=>{\\\"use strict\\\";me();Xe()});var Dp,Ap=y(()=>{\\\"use strict\\\";Dp=[[\\\"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\\\"]]});async function vp(){let e=await Ie[\\\"3x3x3\\\"].kpuzzle(),t=e.startState();for(let r of Dp)t=t.applyAlg(E.fromString((await sr())(r)));return hp(e,t)?t:vp()}async function D0(e){return Ee(),E.fromString((await F0).solveState(Bp(e)))}async function dl(){return D0(await vp())}async function Sp(){(await F0).initialize()}async function xp(){return ol(await dl(),bd)}async function Up(){let e=new Bt,t=await dl();return e.experimentalPushAlg(yp),e.experimentalPushAlg(t),e.experimentalPushAlg(yp),e.toAlg()}var bd,yp,A0=y(()=>{\\\"use strict\\\";me();ar();vt();yt();bi();mp();dp();Fp();Ap();bd=[[null,\\\"Rw\\\",\\\"Rw2\\\",\\\"Rw'\\\",\\\"Fw\\\",\\\"Fw'\\\"],[null,\\\"Dw\\\",\\\"Dw2\\\",\\\"Dw'\\\"]];yp=new E(\\\"R' U' F\\\")});function ue(e,...t){let r=t.length,n=e[t[r-1]];for(let l=r;l>0;l--)e[t[l]]=e[t[l-1]];return e[t[0]]=n,ue}function bp(e,t,r,n){r=(r||8)-1;let l=1985229328,o=0;n??(n=0),n<0&&(t<<=1);for(let i=0;i<r;++i){let a=y0[r-i],s=~~(t/a);o^=s,t%=a,s<<=2,e[i]=l>>s&7;let f=(1<<s)-1;l=(l&f)+(l>>4&~f)}return n<0&&(o&1)!==0?(e[r]=e[r-1],e[r-1]=l&7):e[r]=l&7,e}var Re,y0,Ep=y(()=>{\\\"use strict\\\";Re=[],y0=[1];for(let e=0;e<32;++e){Re[e]=[];for(let t=0;t<32;++t)Re[e][t]=0}for(let e=0;e<32;++e){Re[e][0]=Re[e][e]=1,y0[e+1]=y0[e]*(e+1);for(let t=1;t<e;++t)Re[e][t]=Re[e-1][t-1]+Re[e-1][t]}});function O(e,t){let r=new Array(e);if(t!==void 0)for(let n=0;n<e;n++)r[n]=new Array(t);return r}function Nd(e){return new _o[e]}function ht(e,t,r,...n){let l=_o[e];l&&!l.___clazz$?X=l.prototype:(!l&&(l=_o[e]=function(){}),X=l.prototype=t<0?{}:Nd(t),X.castableTypeMap$=r);for(let o of n)o.prototype=X;l.___clazz$&&(X.___clazz$=l.___clazz$,l.___clazz$=null)}function Gr(e){let t={};for(let r=0,n=e.length;r<n;++r)t[e[r]]=1;return t}function Yp(){}function Pd(e,t){let r=$p(0,t);return eg(e.___clazz$,e.castableTypeMap$,e.queryId$,r),r}function $p(e,t){let r=new Array(t);if(e===3)for(let n=0;n<t;++n){let l={m:0,l:0,h:0};l.l=l.m=l.h=0,r[n]=l}else if(e>0){let n=[null,0,!1][e];for(let l=0;l<t;++l)r[l]=n}return r}function z0(e,t,r,n,l){let o=$p(l,n);return eg(e,t,r,o),o}function eg(e,t,r,n){return tg(),Id(n,x0,U0),n.___clazz$=e,n.castableTypeMap$=t,n.queryId$=r,n}function ra(e,t,r){return e[t]=r}function tg(){wp||(wp=!0,x0=[],U0=[],Md(new Yp,x0,U0))}function Md(e,t,r){let n=0,l;for(let o in e)(l=e[o])&&(t[n]=o,r[n]=l,++n)}function Id(e,t,r){tg();for(let n=0,l=t.length;n<l;++n)e[t[n]]=r[n]}function Od(e,t){return e.castableTypeMap$&&!!e.castableTypeMap$[t]}function Td(e,t){return e!==null&&Od(e,t)}function Gd(){if(_p)return!1;_p=!0,ma=O(15582,36),La=O(15582),Ot=O(15582),yl=O(48,48),Mt=O(48,36),Al=O(48),P0=O(48)}function C0(e){e.ct=O(24)}function kp(e,t){let r,n;if(Td(t,Zp)){for(r=t,n=0;n<24;++n)if(e.ct[n]!==r.ct[n])return!1;return!0}return!1}function na(e){let t,r,n;for(r=0,n=8,t=23;t>=0;--t)e.ct[t]===1&&(r+=Re[t][n--]);return r}function Zi(e){let t,r;if(Ul!==null)return Ul[na(e)];for(r=0;r<48;++r){if(t=Vd(na(e)),t!==-1)return t*64+r;oe(e,0),r%2===1&&oe(e,1),r%8===7&&oe(e,2),r%16===15&&oe(e,3)}}function Pt(e,t){let r=t%3;switch(t=~~(t/3),t){case 0:{h(e.ct,0,1,2,3,r);break}case 1:{h(e.ct,16,17,18,19,r);break}case 2:{h(e.ct,8,9,10,11,r);break}case 3:{h(e.ct,4,5,6,7,r);break}case 4:{h(e.ct,20,21,22,23,r);break}case 5:{h(e.ct,12,13,14,15,r);break}case 6:{h(e.ct,0,1,2,3,r),h(e.ct,8,20,12,16,r),h(e.ct,9,21,13,17,r);break}case 7:{h(e.ct,16,17,18,19,r),h(e.ct,1,15,5,9,r),h(e.ct,2,12,6,10,r);break}case 8:{h(e.ct,8,9,10,11,r),h(e.ct,2,19,4,21,r),h(e.ct,3,16,5,22,r);break}case 9:{h(e.ct,4,5,6,7,r),h(e.ct,10,18,14,22,r),h(e.ct,11,19,15,23,r);break}case 10:{h(e.ct,20,21,22,23,r),h(e.ct,0,8,4,14,r),h(e.ct,3,11,7,13,r);break}case 11:h(e.ct,12,13,14,15,r),h(e.ct,1,20,7,18,r),h(e.ct,0,23,6,17,r)}}function oe(e,t){switch(t){case 0:{Pt(e,19),Pt(e,28);break}case 1:{Pt(e,21),Pt(e,32);break}case 2:{h(e.ct,0,3,1,2,1),h(e.ct,8,11,9,10,1),h(e.ct,4,7,5,6,1),h(e.ct,12,15,13,14,1),h(e.ct,16,19,21,22,1),h(e.ct,17,18,20,23,1);break}case 3:Pt(e,18),Pt(e,29),Pt(e,24),Pt(e,35)}}function zp(e,t){let r;for(r=0;r<t;++r)oe(e,0),r%2===1&&oe(e,1),r%8===7&&oe(e,2),r%16===15&&oe(e,3)}function N0(e,t){let r,n;for(n=8,r=23;r>=0;--r)e.ct[r]=0,t>=Re[r][n]&&(t-=Re[r][n--],e.ct[r]=1)}function Ji(e,t){let r;for(r=0;r<24;++r)e.ct[r]=t.ct[r]}function ko(){let e;for(C0(this),e=0;e<8;++e)this.ct[e]=1;for(e=8;e<24;++e)this.ct[e]=0}function Yi(e,t){let r;for(C0(this),r=0;r<24;++r)this.ct[r]=~~(e.ct[r]/2)===t?1:0}function bo(e){let t;for(C0(this),t=0;t<24;++t)this.ct[t]=e[t]}function Wd(){let e,t,r=new ko,n=new ko;for(e=0;e<15582;++e)for(N0(n,La[e]),t=0;t<36;++t)Ji(r,n),Pt(r,t),ma[e][t]=Zi(r)}function Kd(){let e,t,r,n,l,o,i,a;for(ha(Ot),Ot[0]=0,t=0,r=1;r!==15582;)for(o=t>4,a=o?-1:t,e=o?t:-1,++t,n=0;n<15582;++n)if(Ot[n]===a){for(i=0;i<27;++i)if(l=~~ma[n][i]>>>6,Ot[l]===e)if(++r,o){Ot[n]=t;break}else Ot[l]=t}}function Qd(e){let t,r,n,l=new bo(e.ct);for(n=0;n<48;++n){for(t=!0,r=0;r<24;++r)if(l.ct[r]!==~~(r/4)){t=!1;break}if(t)return n;oe(l,0),n%2===1&&oe(l,1),n%8===7&&oe(l,2),n%16===15&&oe(l,3)}return-1}function jd(){let e,t,r,n=new ko;for(e=0;e<24;++e)n.ct[e]=e;let l=new bo(n.ct),o=new bo(n.ct),i=new bo(n.ct);for(e=0;e<48;++e){for(t=0;t<48;++t){for(r=0;r<48;++r)kp(n,l)&&(yl[e][t]=r,r===0&&(Al[e]=t)),oe(l,0),r%2===1&&oe(l,1),r%8===7&&oe(l,2),r%16===15&&oe(l,3);oe(n,0),t%2===1&&oe(n,1),t%8===7&&oe(n,2),t%16===15&&oe(n,3)}oe(n,0),e%2===1&&oe(n,1),e%8===7&&oe(n,2),e%16===15&&oe(n,3)}for(e=0;e<48;++e)for(Ji(n,o),zp(n,Al[e]),t=0;t<36;++t)for(Ji(l,n),Pt(l,t),zp(l,e),r=0;r<36;++r)if(Ji(i,o),Pt(i,r),kp(i,l)){Mt[e][t]=r;break}for(N0(n,0),e=0;e<48;++e)P0[Al[e]]=na(n),oe(n,0),e%2===1&&oe(n,1),e%8===7&&oe(n,2),e%16===15&&oe(n,3)}function qd(){let e,t,r,n,l=new ko,o=O(22984);for(t=0;t<22984;t++)o[t]=0;for(e=0,t=0;t<735471;++t)if((o[~~t>>>5]&1<<(t&31))===0){for(N0(l,t),n=0;n<48;++n)r=na(l),o[~~r>>>5]|=1<<(r&31),Ul!==null&&(Ul[r]=e<<6|Al[n]),oe(l,0),n%2===1&&oe(l,1),n%8===7&&oe(l,2),n%16===15&&oe(l,3);La[e++]=t}}function Vd(e){let t=CR(La,e);return t>=0?t:-1}function Hd(){Cp||(Cp=!0,aa=O(70,28),ia=O(6435,28),og=O(70,16),ng=O(6435,16),ot=O(450450),lg=[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 la(e){let t,r,n;for(r=0,n=8,t=14;t>=0;--t)e.ct[t]!==e.ct[15]&&(r+=Re[t][n--]);return r}function oa(e){let t,r,n;for(r=0,n=4,t=6;t>=0;--t)e.rl[t]!==e.rl[7]&&(r+=Re[t][n--]);return r*2+e.parity}function Dl(e,t){e.parity^=lg[t];let r=t%3;switch(t=~~(t/3),t){case 0:{h(e.ct,0,1,2,3,r);break}case 1:{h(e.rl,0,1,2,3,r);break}case 2:{h(e.ct,8,9,10,11,r);break}case 3:{h(e.ct,4,5,6,7,r);break}case 4:{h(e.rl,4,5,6,7,r);break}case 5:{h(e.ct,12,13,14,15,r);break}case 6:{h(e.ct,0,1,2,3,r),h(e.rl,0,5,4,1,r),h(e.ct,8,9,12,13,r);break}case 7:{h(e.rl,0,1,2,3,r),h(e.ct,1,15,5,9,r),h(e.ct,2,12,6,10,r);break}case 8:{h(e.ct,8,9,10,11,r),h(e.rl,0,3,6,5,r),h(e.ct,3,2,5,4,r);break}case 9:{h(e.ct,4,5,6,7,r),h(e.rl,3,2,7,6,r),h(e.ct,11,10,15,14,r);break}case 10:{h(e.rl,4,5,6,7,r),h(e.ct,0,8,4,14,r),h(e.ct,3,11,7,13,r);break}case 11:h(e.ct,12,13,14,15,r),h(e.rl,1,4,7,2,r),h(e.ct,1,0,7,6,r)}}function Rl(e,t){switch(t){case 0:{Dl(e,19),Dl(e,28);break}case 1:{Dl(e,21),Dl(e,32);break}case 2:h(e.ct,0,3,1,2,1),h(e.ct,8,11,9,10,1),h(e.ct,4,7,5,6,1),h(e.ct,12,15,13,14,1),h(e.rl,0,3,5,6,1),h(e.rl,1,2,4,7,1)}}function rg(e,t,r){let n;for(n=0;n<16;++n)e.ct[n]=~~(t.ct[n]/2);for(n=0;n<8;++n)e.rl[n]=t.ct[n+16];e.parity=r}function Np(e,t){let r,n;for(n=8,e.ct[15]=0,r=14;r>=0;--r)t>=Re[r][n]?(t-=Re[r][n--],e.ct[r]=1):e.ct[r]=0}function Pp(e,t){let r,n;for(e.parity=t&1,t>>>=1,n=4,e.rl[7]=0,r=6;r>=0;--r)t>=Re[r][n]?(t-=Re[r][n--],e.rl[r]=1):e.rl[r]=0}function M0(){this.rl=O(8),this.ct=O(16)}function Xd(){let e,t,r,n,l,o,i,a,s,f,u=new M0;for(l=0;l<70;++l)for(a=0;a<28;++a)Pp(u,l),Dl(u,An[a]),aa[l][a]=oa(u);for(l=0;l<70;++l)for(Pp(u,l),i=0;i<16;++i)og[l][i]=oa(u),Rl(u,0),i%2===1&&Rl(u,1),i%8===7&&Rl(u,2);for(l=0;l<6435;++l)for(Np(u,l),i=0;i<16;++i)ng[l][i]=la(u)&65535,Rl(u,0),i%2===1&&Rl(u,1),i%8===7&&Rl(u,2);for(l=0;l<6435;++l)for(a=0;a<28;++a)Np(u,l),Dl(u,An[a]),ia[l][a]=la(u)&65535;for(ha(ot),ot[0]=ot[18]=ot[28]=ot[46]=ot[54]=ot[56]=0,r=0,n=6;n!==450450;){let p=r>6,g=p?-1:r,c=p?r:-1;for(++r,l=0;l<450450;++l)if(ot[l]===g){for(e=~~(l/70),s=l%70,a=0;a<23;++a)if(t=ia[e][a],f=aa[s][a],o=t*70+f,ot[o]===c)if(++n,p){ot[l]=r;break}else ot[o]=r}}}function Zd(){Mp||(Mp=!0,Eo=O(29400,20),ag=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1],Ir=O(29400),T0=[0,9,14,23,27,28,41,42,46,55,60,69],G0=O(70))}function I0(e){let t,r,n,l;for(r=0,l=4,t=6;t>=0;--t)e.ud[t]!==e.ud[7]&&(r+=Re[t][l--]);for(r*=35,l=4,t=6;t>=0;--t)e.fb[t]!==e.fb[7]&&(r+=Re[t][l--]);r*=12;let o=e.fb[7]^e.ud[7];for(n=0,l=4,t=7;t>=0;--t)e.rl[t]!==o&&(n+=Re[t][l--]);return e.parity+2*(r+G0[n])}function Jd(e,t){switch(e.parity^=ag[t],t){case 0:case 1:case 2:{h(e.ud,0,1,2,3,t%3);break}case 3:{h(e.rl,0,1,2,3,1);break}case 4:case 5:case 6:{h(e.fb,0,1,2,3,(t-1)%3);break}case 7:case 8:case 9:{h(e.ud,4,5,6,7,(t-1)%3);break}case 10:{h(e.rl,4,5,6,7,1);break}case 11:case 12:case 13:{h(e.fb,4,5,6,7,(t+1)%3);break}case 14:{h(e.ud,0,1,2,3,1),h(e.rl,0,5,4,1,1),h(e.fb,0,5,4,1,1);break}case 15:{h(e.rl,0,1,2,3,1),h(e.fb,1,4,7,2,1),h(e.ud,1,6,5,2,1);break}case 16:{h(e.fb,0,1,2,3,1),h(e.ud,3,2,5,4,1),h(e.rl,0,3,6,5,1);break}case 17:{h(e.ud,4,5,6,7,1),h(e.rl,3,2,7,6,1),h(e.fb,3,2,7,6,1);break}case 18:{h(e.rl,4,5,6,7,1),h(e.fb,0,3,6,5,1),h(e.ud,0,3,4,7,1);break}case 19:h(e.fb,4,5,6,7,1),h(e.ud,0,7,6,1,1),h(e.rl,1,4,7,2,1)}}function ig(e,t,r){let n,l=(t.ct[0]>t.ct[8]?1:0)^(t.ct[8]>t.ct[16]?1:0)^(t.ct[0]>t.ct[16]?1:0)?1:0;for(n=0;n<8;++n)e.ud[n]=t.ct[n]&1^1,e.fb[n]=t.ct[n+8]&1^1,e.rl[n]=t.ct[n+16]&1^1^l;e.parity=l^r}function Yd(e,t){let r,n,l,o;for(e.parity=t&1,t>>>=1,l=T0[t%12],t=~~(t/12),o=4,r=7;r>=0;--r)e.rl[r]=0,l>=Re[r][o]&&(l-=Re[r][o--],e.rl[r]=1);for(n=t%35,t=~~(t/35),o=4,e.fb[7]=0,r=6;r>=0;--r)n>=Re[r][o]?(n-=Re[r][o--],e.fb[r]=1):e.fb[r]=0;for(o=4,e.ud[7]=0,r=6;r>=0;--r)t>=Re[r][o]?(t-=Re[r][o--],e.ud[r]=1):e.ud[r]=0}function O0(){this.ud=O(8),this.rl=O(8),this.fb=O(8)}function $d(){let e,t,r,n;for(r=0;r<12;++r)G0[T0[r]]=r;let l=new O0;for(r=0;r<29400;++r)for(n=0;n<20;++n)Yd(l,r),Jd(l,n),Eo[r][n]=I0(l)&65535;for(ha(Ir),Ir[0]=0,e=0,t=1;t!==29400;){for(r=0;r<29400;++r)if(Ir[r]===e)for(n=0;n<17;++n)Ir[Eo[r][n]]===-1&&(Ir[Eo[r][n]]=e+1,++t);++e}}function eR(e,t){let r;for(r=0;r<24;++r)e.ct[r]=t.ct[r]}function tR(e,t){let r=t%3;switch(t=~~(t/3),t){case 0:{h(e.ct,0,1,2,3,r);break}case 1:{h(e.ct,16,17,18,19,r);break}case 2:{h(e.ct,8,9,10,11,r);break}case 3:{h(e.ct,4,5,6,7,r);break}case 4:{h(e.ct,20,21,22,23,r);break}case 5:{h(e.ct,12,13,14,15,r);break}case 6:{h(e.ct,0,1,2,3,r),h(e.ct,8,20,12,16,r),h(e.ct,9,21,13,17,r);break}case 7:{h(e.ct,16,17,18,19,r),h(e.ct,1,15,5,9,r),h(e.ct,2,12,6,10,r);break}case 8:{h(e.ct,8,9,10,11,r),h(e.ct,2,19,4,21,r),h(e.ct,3,16,5,22,r);break}case 9:{h(e.ct,4,5,6,7,r),h(e.ct,10,18,14,22,r),h(e.ct,11,19,15,23,r);break}case 10:{h(e.ct,20,21,22,23,r),h(e.ct,0,8,4,14,r),h(e.ct,3,11,7,13,r);break}case 11:h(e.ct,12,13,14,15,r),h(e.ct,1,20,7,18,r),h(e.ct,0,23,6,17,r)}}function W0(){let e;for(this.ct=O(24),e=0;e<24;++e)this.ct[e]=~~(e/4)}function sg(e){let t,r,n;for(W0.call(this),t=0;t<23;++t)n=t+e(24-t),this.ct[n]!==this.ct[t]&&(r=this.ct[t],this.ct[t]=this.ct[n],this.ct[n]=r)}function rR(){Ip||(Ip=!0,Ut=O(18),oR())}function fg(e){e.cp=[0,1,2,3,4,5,6,7],e.co=[0,0,0,0,0,0,0,0]}function ug(e,t){let r;for(r=0;r<8;++r)e.cp[r]=t.cp[r],e.co[r]=t.co[r]}function nR(e,t){!e.temps&&(e.temps=new Ba),pg(e,Ut[t],e.temps),ug(e,e.temps)}function lR(e,t){let r,n;for(n=0,r=6;r>=0;--r)n+=e.co[r]=t%3,t=~~(t/3);e.co[7]=(15-n)%3}function pg(e,t,r){let n,l,o,i;for(n=0;n<8;++n)r.cp[n]=e.cp[t.cp[n]],o=e.co[t.cp[n]],i=t.co[n],l=o,l=l+(o<3?i:6-i),l=l%3,(o>=3?1:0)^(i>=3?1:0)&&(l=l+3),r.co[n]=l}function Ba(){fg(this)}function Mr(e,t){fg(this),bp(this.cp,e),lR(this,t)}function gg(e){Mr.call(this,e(40320),e(2187))}function oR(){let e,t;for(Ut[0]=new Mr(15120,0),Ut[3]=new Mr(21021,1494),Ut[6]=new Mr(8064,1236),Ut[9]=new Mr(9,0),Ut[12]=new Mr(1230,412),Ut[15]=new Mr(224,137),e=0;e<18;e+=3)for(t=0;t<2;++t)Ut[e+t+1]=new Ba,pg(Ut[e+t],Ut[e],Ut[e+t+1])}function iR(){Op||(Op=!0,It=O(1937880),da=O(1538),ua=O(1538),_l=O(11880),dg=[0,1,6,3,4,5,2,7],Q0=O(160,12),j0=O(160,12),K0=[1,1,1,3,12,60,360,2520,20160,181440,1814400,19958400,239500800],b0=[0,2,4,6,1,3,7,5,8,9,10,11])}function hl(e,t,r,n,l){let o=e.edgeo[l];e.edgeo[l]=e.edge[n],e.edge[n]=e.edgeo[r],e.edgeo[r]=e.edge[t],e.edge[t]=o}function bl(e,t){let r,n,l,o,i;for(e.isStd||Lg(e),n=0,i=1985229328,o=47768,r=0;r<t;++r)l=e.edge[r]<<2,n*=12-r,l>=32?(n+=o>>l-32&15,o-=4368<<l-32):(n+=i>>l&15,o-=4369,i-=286331152<<l);return n}function cg(e){let t,r=bl(e,4);t=_l[r];let n=t&7;t>>=3,fa(e,n);let l=bl(e,10)%20160;return t*20160+l}function sa(e,t){switch(e.isStd=!1,t){case 0:{ue(e.edge,0,4,1,5),ue(e.edgeo,0,4,1,5);break}case 1:{De(e.edge,0,4,1,5),De(e.edgeo,0,4,1,5);break}case 2:{ue(e.edge,0,5,1,4),ue(e.edgeo,0,5,1,4);break}case 3:{De(e.edge,5,10,6,11),De(e.edgeo,5,10,6,11);break}case 4:{ue(e.edge,0,11,3,8),ue(e.edgeo,0,11,3,8);break}case 5:{De(e.edge,0,11,3,8),De(e.edgeo,0,11,3,8);break}case 6:{ue(e.edge,0,8,3,11),ue(e.edgeo,0,8,3,11);break}case 7:{ue(e.edge,2,7,3,6),ue(e.edgeo,2,7,3,6);break}case 8:{De(e.edge,2,7,3,6),De(e.edgeo,2,7,3,6);break}case 9:{ue(e.edge,2,6,3,7),ue(e.edgeo,2,6,3,7);break}case 10:{De(e.edge,4,8,7,9),De(e.edgeo,4,8,7,9);break}case 11:{ue(e.edge,1,9,2,10),ue(e.edgeo,1,9,2,10);break}case 12:{De(e.edge,1,9,2,10),De(e.edgeo,1,9,2,10);break}case 13:{ue(e.edge,1,10,2,9),ue(e.edgeo,1,10,2,9);break}case 14:{De(e.edge,0,4,1,5),De(e.edgeo,0,4,1,5),ue(e.edge,9,11),ue(e.edgeo,8,10);break}case 15:{De(e.edge,5,10,6,11),De(e.edgeo,5,10,6,11),ue(e.edge,1,3),ue(e.edgeo,0,2);break}case 16:{De(e.edge,0,11,3,8),De(e.edgeo,0,11,3,8),ue(e.edge,5,7),ue(e.edgeo,4,6);break}case 17:{De(e.edge,2,7,3,6),De(e.edgeo,2,7,3,6),ue(e.edge,8,10),ue(e.edgeo,9,11);break}case 18:{De(e.edge,4,8,7,9),De(e.edgeo,4,8,7,9),ue(e.edge,0,2),ue(e.edgeo,1,3);break}case 19:De(e.edge,1,9,2,10),De(e.edgeo,1,9,2,10),ue(e.edge,4,6),ue(e.edgeo,5,7)}}function vl(e,t){switch(e.isStd=!1,t){case 0:{sa(e,14),sa(e,17);break}case 1:{hl(e,11,5,10,6),hl(e,5,10,6,11),hl(e,1,2,3,0),hl(e,4,9,7,8),hl(e,8,4,9,7),hl(e,0,1,2,3);break}case 2:xt(e,4,5),xt(e,5,4),xt(e,11,8),xt(e,8,11),xt(e,7,6),xt(e,6,7),xt(e,9,10),xt(e,10,9),xt(e,1,1),xt(e,0,0),xt(e,3,3),xt(e,2,2)}}function fa(e,t){for(;t>=2;)t-=2,vl(e,1),vl(e,2);t!==0&&vl(e,0)}function No(e,t){let r,n,l,o,i,a;for(i=1985229328,a=47768,l=0,r=0;r<11;++r)if(n=K0[11-r],o=~~(t/n),t=t%n,l^=o,o<<=2,o>=32){o=o-32,e.edge[r]=a>>o&15;let s=(1<<o)-1;a=(a&s)+(a>>4&~s)}else{e.edge[r]=i>>o&15;let s=(1<<o)-1;i=(i&s)+(i>>>4&~s)+(a<<28),a=a>>4}for((l&1)===0?e.edge[11]=i:(e.edge[11]=e.edge[10],e.edge[10]=i),r=0;r<12;++r)e.edgeo[r]=r;e.isStd=!0}function Tp(e,t){let r;for(r=0;r<12;++r)e.edge[r]=t.edge[r],e.edgeo[r]=t.edgeo[r];e.isStd=t.isStd}function mg(e,t){let r,n,l,o;for(e.temp===null&&(e.temp=O(12)),r=0;r<12;++r)e.temp[r]=r,e.edge[r]=t.ep[b0[r]+12]%12;for(n=1,r=0;r<12;++r)for(;e.edge[r]!==r;)o=e.edge[r],e.edge[r]=e.edge[o],e.edge[o]=o,l=e.temp[r],e.temp[r]=e.temp[o],e.temp[o]=l,n^=1;for(r=0;r<12;++r)e.edge[r]=e.temp[t.ep[b0[r]]%12];return n}function Lg(e){let t;for(e.temp===null&&(e.temp=O(12)),t=0;t<12;++t)e.temp[e.edgeo[t]]=t;for(t=0;t<12;++t)e.edge[t]=e.temp[e.edge[t]],e.edgeo[t]=t;e.isStd=!0}function De(e,t,r,n,l){let o;o=e[t],e[t]=e[n],e[n]=o,o=e[r],e[r]=e[l],e[l]=o}function xt(e,t,r){let n=e.edge[t];e.edge[t]=e.edgeo[r],e.edgeo[r]=n}function mr(){this.edge=O(12),this.edgeo=O(12)}function aR(){let e,t,r,n,l,o,i,a,s,f,u,p,g,c,L,m,d,F,A,v,x,U,P=new mr,Z=new mr,C=new mr;for(ha(It),a=0,Xi=1,v0(It,0,0);Xi!==31006080&&(L=a>9,i=a%3,o=(a+1)%3,f=L?3:i,e=L?i:3,!(a>=9));){for(p=0;p<31006080;p+=16)if(U=It[~~p>>4],!(!L&&U===-1)){for(u=p,s=p+16;u<s;++u,U>>=2)if((U&3)===f){for(A=~~(u/20160),t=da[A],n=u%20160,No(P,t*20160+n),d=0;d<17;++d)if(r=El(P.edge,d<<3,4),v=_l[r],x=v&7,v>>=3,l=El(P.edge,d<<3|x,10)%20160,g=v*20160+l,zo(It,g)===e){if(v0(It,L?u:g,o),++Xi,L)break;if(F=ua[v],F!==1)for(Tp(Z,P),sa(Z,d),fa(Z,x),m=1;(F=~~F>>1&65535)!==0;++m)(F&1)===1&&(Tp(C,Z),fa(C,m),c=v*20160+bl(C,10)%20160,zo(It,c)===e&&(v0(It,c,o),++Xi))}}}++a}}function zo(e,t){return e[t>>4]>>((t&15)<<1)&3}function El(e,t,r){let n,l,o,i,a,s=j0[t],f=Q0[t];for(l=0,a=1985229328,i=47768,n=0;n<r;++n)o=s[e[f[n]]]<<2,l*=12-n,o>=32?(l+=i>>o-32&15,i-=4368<<o-32):(l+=a>>o&15,i-=4369,a-=286331152<<o);return l}function Bg(e){let t,r,n,l,o,i,a,s,f,u,p,g=new mr;if(i=0,o=zo(It,e),o===3)return 10;for(;e!==0;)for(o===0?o=2:--o,f=~~(e/20160),t=da[f],n=e%20160,No(g,t*20160+n),s=0;s<17;++s)if(r=El(g.edge,s<<3,4),u=_l[r],p=u&7,u>>=3,l=El(g.edge,s<<3|p,10)%20160,a=u*20160+l,zo(It,a)===o){++i,e=a;break}return i}function sR(e,t){let r=zo(It,e);return r===3?10:(1227133513<<r>>t&3)+t-1}function fR(){let e,t,r,n=new mr;for(t=0;t<20;++t)for(r=0;r<8;++r){for(No(n,0),sa(n,t),fa(n,r),e=0;e<12;++e)Q0[t<<3|r][e]=n.edge[e];for(Lg(n),e=0;e<12;++e)j0[t<<3|r][e]=n.temp[e]}}function uR(){let e,t,r,n,l=new mr,o=O(1485);for(t=0;t<1485;t++)o[t]=0;for(e=0,t=0;t<11880;++t)if((o[~~t>>>3]&1<<(t&7))===0){for(No(l,t*K0[8]),n=0;n<8;++n)r=bl(l,4),r===t&&(ua[e]=(ua[e]|1<<n)&65535),o[~~r>>3]=o[~~r>>3]|1<<(r&7),_l[r]=e<<3|dg[n],vl(l,0),n%2===1&&(vl(l,1),vl(l,2));da[e++]=t}}function v0(e,t,r){e[t>>4]^=(3^r)<<((t&15)<<1)}function pR(){Gp||(Gp=!0)}function gR(e){let t,r,n;for(t=0,n=!1,r=0;r<12;++r)t|=1<<e.ep[r],n=n!==e.ep[r]>=12;return t&=~~t>>12,t===0&&!n}function cR(e,t){let r;for(r=0;r<24;++r)e.ep[r]=t.ep[r]}function mR(e,t){let r=t%3;switch(t=~~(t/3),t){case 0:{h(e.ep,0,1,2,3,r),h(e.ep,12,13,14,15,r);break}case 1:{h(e.ep,11,15,10,19,r),h(e.ep,23,3,22,7,r);break}case 2:{h(e.ep,0,11,6,8,r),h(e.ep,12,23,18,20,r);break}case 3:{h(e.ep,4,5,6,7,r),h(e.ep,16,17,18,19,r);break}case 4:{h(e.ep,1,20,5,21,r),h(e.ep,13,8,17,9,r);break}case 5:{h(e.ep,2,9,4,10,r),h(e.ep,14,21,16,22,r);break}case 6:{h(e.ep,0,1,2,3,r),h(e.ep,12,13,14,15,r),h(e.ep,9,22,11,20,r);break}case 7:{h(e.ep,11,15,10,19,r),h(e.ep,23,3,22,7,r),h(e.ep,2,16,6,12,r);break}case 8:{h(e.ep,0,11,6,8,r),h(e.ep,12,23,18,20,r),h(e.ep,3,19,5,13,r);break}case 9:{h(e.ep,4,5,6,7,r),h(e.ep,16,17,18,19,r),h(e.ep,8,23,10,21,r);break}case 10:{h(e.ep,1,20,5,21,r),h(e.ep,13,8,17,9,r),h(e.ep,14,0,18,4,r);break}case 11:h(e.ep,2,9,4,10,r),h(e.ep,14,21,16,22,r),h(e.ep,7,15,1,17,r)}}function q0(){let e;for(this.ep=O(24),e=0;e<24;++e)this.ep[e]=e}function Rg(e){let t,r,n;for(q0.call(this),t=0;t<23;++t)n=t+e(24-t),n!==t&&(r=this.ep[t],this.ep[t]=this.ep[n],this.ep[n]=r)}function LR(){Wp||(Wp=!0,E0=[35,1,34,2,4,6,22,5,19])}function hg(e){e.moveBuffer=O(60)}function BR(e,t){return e.value-t.value}function wl(e,t){let r;for(cR(e.edge,t.edge),eR(e.center,t.center),ug(e.corner,t.corner),e.value=t.value,e.add1=t.add1,e.length1=t.length1,e.length2=t.length2,e.length3=t.length3,e.sym=t.sym,r=0;r<60;++r)e.moveBuffer[r]=t.moveBuffer[r];e.moveLength=t.moveLength,e.edgeAvail=t.edgeAvail,e.centerAvail=t.centerAvail,e.cornerAvail=t.cornerAvail}function Or(e){for(;e.centerAvail<e.moveLength;)tR(e.center,e.moveBuffer[e.centerAvail++]);return e.center}function Fg(e){for(;e.cornerAvail<e.moveLength;)nR(e.corner,e.moveBuffer[e.cornerAvail++]%18);return e.corner}function Co(e){for(;e.edgeAvail<e.moveLength;)mR(e.edge,e.moveBuffer[e.edgeAvail++]);return e.edge}function dR(e){let t,r,n,l,o,i,a=new Array(e.moveLength-(e.add1?2:0));for(r=0,t=0;t<e.length1;++t)a[r++]=e.moveBuffer[t];for(i=e.sym,t=e.length1+(e.add1?2:0);t<e.moveLength;++t)Mt[i][e.moveBuffer[t]]>=27?(a[r++]=Mt[i][e.moveBuffer[t]]-9,l=E0[Mt[i][e.moveBuffer[t]]-27],i=yl[i][l]):a[r++]=Mt[i][e.moveBuffer[t]];let s=yl[Al[i]][Qd(Or(e))];for(o=\\\"\\\",i=s,t=r-1;t>=0;--t)n=a[t],n=~~(n/3)*3+(2-n%3),Mt[i][n]>=27?(o=`${o}${w0[Mt[i][n]-9]} `,l=E0[Mt[i][n]-27],i=yl[i][l]):o=`${o}${w0[Mt[i][n]]} `;return o}function Dn(e,t){e.moveBuffer[e.moveLength++]=t}function pa(){hg(this),this.edge=new q0,this.center=new W0,this.corner=new Ba}function Ra(e){pa.call(this),wl(this,e)}function Dg(e){hg(this),this.edge=new Rg(e),this.center=new sg(e),this.corner=new gg(e)}function RR(e,t){return t.value-e.value}function ga(e,t){return RR(e,t)}function Ag(){}function hR(){if(Kp)return;Kp=!0;let e,t;for(w0=[\\\"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'\\\"],An=[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],Uo=[0,1,2,4,6,7,8,9,10,11,13,15,16,17,19,22,25,28,31,34,36],Qp=O(37),jp=O(37),Fl=O(37,36),$i=O(29,28),ea=O(21,20),S0=O(36),wo=O(28),Sl=O(20),e=0;e<29;++e)Qp[An[e]]=e;for(e=0;e<21;++e)jp[Uo[e]]=e;for(e=0;e<36;++e){for(t=0;t<36;++t)Fl[e][t]=~~(e/3)===~~(t/3)||~~(e/3)%3===~~(t/3)%3&&e>t;Fl[36][e]=!1}for(e=0;e<29;++e)for(t=0;t<28;++t)$i[e][t]=Fl[An[e]][An[t]];for(e=0;e<21;++e)for(t=0;t<20;++t)ea[e][t]=Fl[Uo[e]][Uo[t]];for(e=0;e<36;++e)for(S0[e]=36,t=e;t<36;++t)if(!Fl[e][t]){S0[e]=t-1;break}for(e=0;e<28;++e)for(wo[e]=28,t=e;t<28;++t)if(!$i[e][t]){wo[e]=t-1;break}for(e=0;e<20;++e)for(Sl[e]=20,t=e;t<20;++t)if(!ea[e][t]){Sl[e]=t-1;break}}function FR(e){let t,r,n,l,o,i,a,s,f,u,p,g;e.solution=\\\"\\\";let c=Zi(new Yi(Or(e.c),0)),L=Zi(new Yi(Or(e.c),1)),m=Zi(new Yi(Or(e.c),2)),d=Ot[~~c>>6],F=Ot[~~L>>6],A=Ot[~~m>>6];for(e.p1SolsCnt=0,e.arr2idx=0,ER(e.p1sols.heap),e.length1=(d<F?d:F)<A?d<F?d:F:A;e.length1<100&&!(A<=e.length1&&ta(e,~~m>>>6,m&63,e.length1,-1,0)||d<=e.length1&&ta(e,~~c>>>6,c&63,e.length1,-1,0)||F<=e.length1&&ta(e,~~L>>>6,L&63,e.length1,-1,0));++e.length1);let v=TR(e.p1sols,z0(WR,Gr([kd,_0,k0]),Jp,0,0));v.sort(function(P,Z){return P.value-Z.value}),t=9;do{e:for(s=v[0].value;s<100;++s)for(i=0;i<v.length&&!(v[i].value>s);++i)if(!(s-v[i].length1>t)&&(wl(e.c1,v[i]),rg(e.ct2,Or(e.c1),ca(Co(e.c1).ep)),p=la(e.ct2),g=oa(e.ct2),e.length1=v[i].length1,e.length2=s-v[i].length1,yg(e,p,g,e.length2,28,0)))break e;++t}while(s===100);e.arr2.sort(function(P,Z){return P.value-Z.value}),a=0,r=13;do{e:for(f=e.arr2[0].value;f<100;++f)for(i=0;i<Math.min(e.arr2idx,100)&&!(e.arr2[i].value>f);++i)if(!(f-e.arr2[i].length1-e.arr2[i].length2>r)&&(o=mg(e.e12,Co(e.arr2[i])),ig(e.ct3,Or(e.arr2[i]),o^ca(Fg(e.arr2[i]).cp)),n=I0(e.ct3),l=bl(e.e12,10),u=Bg(cg(e.e12)),u<=f-e.arr2[i].length1-e.arr2[i].length2&&vg(e,l,n,u,f-e.arr2[i].length1-e.arr2[i].length2,20,0))){a=i;break e}++r}while(f===100);let x=new Ra(e.arr2[a]);e.length1=x.length1,e.length2=x.length2;let U=f-e.length1-e.length2;for(i=0;i<U;++i)Dn(x,Uo[e.move3[i]]);e.solution=dR(x)}function DR(e,t){let r,n;for(wl(e.c1,e.c),r=0;r<e.length1;++r)Dn(e.c1,e.move1[r]);switch(P0[t]){case 0:{Dn(e.c1,24),Dn(e.c1,35),e.move1[e.length1]=24,e.move1[e.length1+1]=35,e.add1=!0,t=19;break}case 12869:{Dn(e.c1,18),Dn(e.c1,29),e.move1[e.length1]=18,e.move1[e.length1+1]=29,e.add1=!0,t=34;break}case 735470:e.add1=!1,t=0}rg(e.ct2,Or(e.c1),ca(Co(e.c1).ep));let l=la(e.ct2),o=oa(e.ct2),i=ot[l*70+o];return e.c1.value=i+e.length1,e.c1.length1=e.length1,e.c1.add1=e.add1,e.c1.sym=t,++e.p1SolsCnt,e.p1sols.heap.size<500?n=new Ra(e.c1):(n=IR(e.p1sols),n.value>e.c1.value&&wl(n,e.c1)),xR(e.p1sols,n),e.p1SolsCnt===1e4}function AR(e){let t;for(wl(e.c2,e.c1),t=0;t<e.length2;++t)Dn(e.c2,e.move2[t]);if(!gR(Co(e.c2)))return!1;let r=mg(e.e12,Co(e.c2));ig(e.ct3,Or(e.c2),r^ca(Fg(e.c2).cp));let n=I0(e.ct3);bl(e.e12,10);let l=Bg(cg(e.e12));return e.arr2[e.arr2idx]?wl(e.arr2[e.arr2idx],e.c2):e.arr2[e.arr2idx]=new Ra(e.c2),e.arr2[e.arr2idx].value=e.length1+e.length2+Math.max(l,Ir[n]),e.arr2[e.arr2idx].length2=e.length2,++e.arr2idx,e.arr2idx===e.arr2.length}function yR(e,t){return xg(),e.c=new Dg(t),FR(e),e.solution}function ta(e,t,r,n,l,o){let i,a,s,f,u,p;if(t===0)return n===0&&DR(e,r);for(i=0;i<27;i+=3)if(!(i===l||i===l-9||i===l-18))for(f=0;f<3;++f){if(s=i+f,a=ma[t][Mt[r][s]],u=Ot[~~a>>>6],u>=n){if(u>n)break;continue}if(p=yl[r][a&63],a>>>=6,e.move1[o]=s,ta(e,a,p,n-1,i,o+1))return!0}return!1}function yg(e,t,r,n,l,o){let i,a,s,f;if(t===0&&ot[r]===0)return n===0&&AR(e);for(a=0;a<23;++a){if($i[l][a]){a=wo[a];continue}if(i=ia[t][a],f=aa[r][a],s=ot[i*70+f],s>=n){s>n&&(a=wo[a]);continue}if(e.move2[o]=An[a],yg(e,i,f,n-1,a,o+1))return!0}return!1}function vg(e,t,r,n,l,o,i){let a,s,f,u,p,g,c,L,m;if(l===0)return t===0&&r===0;for(No(e.tempe[i],t),p=0;p<17;++p){if(ea[o][p]){p=Sl[p];continue}if(f=Eo[r][p],g=Ir[f],g>=l){g>l&&p<14&&(p=Sl[p]);continue}if(u=El(e.tempe[i].edge,p<<3,10),a=~~(u/20160),L=_l[a],m=L&7,L>>=3,s=El(e.tempe[i].edge,p<<3|m,10)%20160,c=sR(L*20160+s,n),c>=l){c>l&&p<14&&(p=Sl[p]);continue}if(vg(e,u,f,c,l-1,p,i+1))return e.move3[i]=p,!0}return!1}function Sg(){let e;for(this.p1sols=new kg(new Ag),this.move1=O(15),this.move2=O(20),this.move3=O(20),this.c1=new pa,this.c2=new pa,this.ct2=new M0,this.ct3=new O0,this.e12=new mr,this.tempe=O(20),this.arr2=O(100),e=0;e<20;++e)this.tempe[e]=new mr}function xg(){qp||(jd(),Ul=O(735471),qd(),Wd(),Ul=null,Kd(),Xd(),$d(),fR(),uR(),aR(),qp=!0)}function vR(){Vp||(Vp=!0)}function ca(e){let t,r,n,l;for(l=0,t=0,n=e.length;t<n;++t)for(r=t;r<n;++r)e[t]>e[r]&&(l^=1);return l}function h(e,t,r,n,l,o){let i;switch(o){case 0:{i=e[l],e[l]=e[n],e[n]=e[r],e[r]=e[t],e[t]=i;return}case 1:{i=e[t],e[t]=e[n],e[n]=i,i=e[r],e[r]=e[l],e[l]=i;return}case 2:{i=e[t],e[t]=e[r],e[r]=e[n],e[n]=e[l],e[l]=i;return}}}function Ug(){}function bg(e,t,r,n){let l=new Ug;return l.typeName=e+t,wg(r!==0?-r:0)&&_g(r!==0?-r:0,l),l.modifiers=4,l.superclass=V0,l.componentType=n,l}function Eg(e,t,r,n){let l=new Ug;return l.typeName=e+t,wg(r)&&_g(r,l),l.superclass=n,l}function SR(e){let t=_o[e.seedId];return e=null,t}function wg(e){return typeof e==\\\"number\\\"&&e>0}function _g(e,t){let r;if(t.seedId=e,e===2)r=String.prototype;else if(e>0){let n=SR(t);if(n)r=n.prototype;else{n=_o[e]=function(){},n.___clazz$=t;return}}else return;r.___clazz$=t}function xR(e,t){if(MR(e,t))return!0}function UR(e){e.array=z0(zg,Gr([_0,k0]),Xp,0,0)}function bR(e,t){return ra(e.array,e.size++,t),!0}function ER(e){e.array=z0(zg,Gr([_0,k0]),Xp,0,0),e.size=0}function Tr(e,t){return e.array[t]}function wR(e,t){let r=e.array[t];return zR(e.array,t,1),--e.size,r}function xl(e,t,r){let n=e.array[t];return ra(e.array,t,r),n}function _R(e,t){let r;for(t.length<e.size&&(t=Pd(t,e.size)),r=0;r<e.size;++r)ra(t,r,e.array[r]);return t.length>e.size&&ra(t,e.size,null),t}function kR(){UR(this),this.array.length=500}function zR(e,t,r){e.splice(t,r)}function CR(e,t){let r,n,l,o;for(n=0,r=e.length-1;n<=r;)if(l=n+(~~(r-n)>>1),o=e[l],o<t)n=l+1;else if(o>t)r=l-1;else return l;return-n-1}function ha(e){NR(e,e.length)}function NR(e,t){let r;for(r=0;r<t;++r)e[r]=-1}function PR(e,t){let r,n,l,o,i=e.heap.size,a=Tr(e.heap,t);for(;t*2+1<i&&(r=(n=2*t+1,l=n+1,o=n,l<i&&ga(Tr(e.heap,l),Tr(e.heap,n))<0&&(o=l),o),!(ga(a,Tr(e.heap,r))<0));)xl(e.heap,t,Tr(e.heap,r)),t=r;xl(e.heap,t,a)}function MR(e,t){let r,n;for(n=e.heap.size,bR(e.heap,t);n>0;){if(r=n,n=~~((n-1)/2),ga(Tr(e.heap,n),t)<=0)return xl(e.heap,r,t),!0;xl(e.heap,r,Tr(e.heap,n))}return xl(e.heap,n,t),!0}function IR(e){if(e.heap.size===0)return null;let t=Tr(e.heap,0);return OR(e),t}function OR(e){let t=wR(e.heap,e.heap.size-1);0<e.heap.size&&(xl(e.heap,0,t),PR(e,0))}function TR(e,t){return _R(e.heap,t)}function kg(e){this.heap=new kR,this.cmp=e}function Ng(){Hp||(Hp=!0,hR(),vR(),Gd(),Hd(),Zd(),iR(),rR(),pR(),LR(),Cg=new Sg)}function KR(){Ng(),xg()}async function QR(){Ee(),Ng();let e=E.fromString(yR(Cg,await we()));return(await dl()).concat(e)}var X,_o,Ed,Xp,_0,Zp,wd,_d,Jp,kd,zd,Cd,k0,wp,x0,U0,_p,Ot,ma,P0,Ul,La,Al,Mt,yl,Cp,ia,ot,ng,lg,aa,og,Mp,Eo,ag,Ir,T0,G0,Ip,Ut,Op,b0,Xi,It,K0,Q0,j0,_l,da,dg,ua,Gp,Wp,E0,Kp,Fl,$i,ea,An,w0,Uo,S0,wo,Sl,Qp,jp,qp,Vp,V0,zg,GR,WR,Cg,Hp,Pg=y(()=>{\\\"use strict\\\";me();A0();Ep();vt();yt();_o={},Ed={},Xp=0,_0=30,Zp=21,wd=22,_d=23,Jp=24,kd=25,zd=34,Cd=26,k0=40;ht(1,-1,Ed);X.value=null;ht(73,1,{},Yp);X.queryId$=0;wp=!1;_p=!1;ht(153,1,Gr([Zp]),ko,Yi,bo);Ul=null,Cp=!1;ht(154,1,{},M0);X.parity=0;Mp=!1;ht(155,1,{},O0);X.parity=0;ht(156,1,{},W0,sg);Ip=!1;ht(157,1,Gr([wd]),Ba,Mr,gg);X.temps=null;Op=!1;ht(158,1,Gr([_d]),mr);X.isStd=!0;X.temp=null;Xi=0,Gp=!1;ht(159,1,{},q0,Rg);Wp=!1;ht(160,1,Gr([Jp,zd]),pa,Ra,Dg);X.compareTo$=function(t){return BR(this,t)};X.add1=!1;X.center=null;X.centerAvail=0;X.corner=null;X.cornerAvail=0;X.edge=null;X.edgeAvail=0;X.length1=0;X.length2=0;X.length3=0;X.moveLength=0;X.sym=0;X.value=0;ht(161,1,{},Ag);X.compare=function(t,r){return ga(t,r)};Kp=!1;ht(163,1,Gr([Cd]),Sg);X.add1=!1;X.arr2idx=0;X.c=null;X.length1=0;X.length2=0;X.p1SolsCnt=0;X.solution=\\\"\\\";qp=!1,Vp=!1;X.val$outerIter=null;X.size=0;ht(239,1,{},kg);X.cmp=null;X.heap=null;V0=Eg(\\\"java.lang.\\\",\\\"Object\\\",1,null),zg=bg(\\\"[Ljava.lang.\\\",\\\"Object;\\\",356,V0),GR=Eg(\\\"cs.threephase.\\\",\\\"FullCube\\\",160,V0),WR=bg(\\\"[Lcs.threephase.\\\",\\\"FullCube;\\\",381,GR),Hp=!1});var Mg={};Lt(Mg,{initialize:()=>KR,random444Scramble:()=>QR});var Ig=y(()=>{\\\"use strict\\\";Pg()});function Mo(e){if(e<2)return e;let t=1;for(let r=2;r<=e;r++)t*=r;return t}function Fa(e,t){if(t<0||t>e)return 0;if(t===0||t===e)return 1;let r=1;for(let n=0;n<t;n++)r=r*(e-n)/(n+1)|0;return r}function Zg(e,t,r,n,l=e-t-r-n){return Fa(e,t+r)*Fa(t+r,t)*Fa(n+l,n)}function ZR(e){e=e.slice();let t=e.length,r=Mo(t-1),n=0;for(;t>1;){t--;let l=e[0];n+=l*r;for(let o=0;o<t;o++){let i=e[o+1];e[o]=i-(i>l)}r/=t}return n}function JR(e){let t=e.length,r=0;for(let n=0;n<t-1;n++)for(let l=n;l<t;l++)e[n]>e[l]&&(r^=1);return r}function l2(e,t){let r=[],n=Mo(t-1)/2,l=0;for(let o=0;o<t-1;o++)r[o]=e/n|0,e%=n,n/=t-1-o;r[t-1]=0;for(let o=t-2;o>=0;o--)for(let i=o+1;i<t;i++)r[i]>=r[o]?r[i]++:l^=1;return l===1&&([r[t-2],r[t-1]]=[r[t-1],r[t-2]]),r}function yn(e){return ZR(e)>>1}function t2(e,t){let r=[0];for(let n=1;n<e;n++){let l=t(n+1);r[n]=r[l],r[l]=n}return r}function Kg(e,t){let r=t2(e,t);return JR(r)===1&&([r[0],r[1]]=[r[1],r[0]]),r}function YR(e){return e|=0,31-Math.clz32(e^e-1)}function Qg(e,t){e|=0,t|=0;let r=`${e} ${t}`;if(Z0[r])return Z0[r];let n=Fa(e,t),l=new Uint32Array(n),o=new Uint32Array(1<<e).fill(-1);for(let i=0,a=(1<<t)-1;i<n;i++){l[i]=a,o[a]=i;let s=a|a-1;a=s+1|(~s&-~s)-1>>YR(a)+1}return Z0[r]=[l,o]}function $R(e){e|=0;let t=0;for(;e!==0;)e&=e-1,t++;return t}function jg(e){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,e}function eh(e,t){return jg(e)|jg(t)<<1}function Nl(e,t,r,n,l){if(e|=0,t|=0,r|=0,n|=0,l|=0,e!==t+r+n+l)throw new Error(\\\"generate_comb4_lookup_tables: invalid parameters\\\");let o=[e,t,r,n,l].join(\\\" \\\");if(J0[o])return J0[o];let[i,a]=Qg(e,r+l),[s,f]=Qg(e,n+l),u=Zg(e,t,r,n,l),p=new Uint32Array(u),g=new Uint32Array(4**e).fill(-1);for(let c=0,L=0;c<s.length;c++){let m=s[c];for(let d=0;d<i.length;d++){let F=i[d];if($R(F&m)===l){let A=eh(F,m);p[L]=A,g[A]=L,L++}}}return J0[o]=[p,g]}function rt(e,t){let r=[];for(let n=0;n<t.length;n++)r[n]=e[t[n]];return r}function Pl(e,t,r){let n=[];for(let l=0;l<r.length;l++)n[l]=e[t[r[l]]];return n}function o2(e,t){let r=[];for(let n=0;n<t;n++)r[n]=n;for(let n of e)for(let l=0;l<n.length;l++)r[n[l]]=n[(l+1)%n.length];return r}function vn(e,t){let r=e.length,n=Array(r).fill(0);for(let i=1;i<r;i++)n[i]=n[i-1]+t[i-1];let l=n[r-1]+t[r-1],o=Array(l);for(let i=0;i<r;i++)t[i]&&(o[n[i]]=n[e[i]]);return o}function i2(e){let t=e.length,r=Array(t);for(let n=0;n<t;n++)r[e[n]]=n;return r}function th(e,t){for(;e&&t;)[e,t]=[t%e,e];return Math.abs(e+t)}function rh(e,t){return e*t/th(e,t)}function nh(e){let t=1,r=e.length,n=Array(r).fill(!1),l=-1;for(;l=n.indexOf(!1,l+1),l!==-1;){let o=0,i=l;for(;!n[i];)n[i]=!0,i=e[i],o++;t=rh(t,o)}return t}function ph(e,t){for(let r=0;r<6;r++){if(e===Tt[Wr[r][0]]&&t===Tt[Wr[r][2]])return[r,0];if(e===Tt[Wr[r][2]]&&t===Tt[Wr[r][0]])return[r,1]}throw new Error(\\\"unknown corner piece\\\")}function gh(e,t){for(let r=0;r<12;r++)if(e===Tt[Kr[r][0]]&&t===Tt[Kr[r][1]]||t===Tt[Kr[r][0]]&&e===Tt[Kr[r][1]])return r;throw new Error(\\\"unknown edge piece\\\")}function a2(e,t){return ph(e[Wr[t][0]],e[Wr[t][2]])}function xa(e,t){return gh(e[Kr[t][0]],e[Kr[t][1]])}function ch(e,t,r,n){let l=Wr[t],o=Wr[r].map(i=>Tt[i]);n%2!==0&&(o=[o[2],o[3],o[0],o[1]]);for(let i=0;i<4;i++)e[l[i]]=o[i]}function mh(e,t,r){let n=Kr[t],l=Kr[r].map(o=>Tt[o]);for(let o=0;o<2;o++)e[n[o]]=l[o]}function $g(e){let t=e.map(s=>Tt[s]),n=Array(6).fill().map((s,f)=>a2(t,f)).map(([s,f])=>s+6*f),l=n.concat(n.map(s=>(s+6)%12)),o=Array(12).fill().map((s,f)=>xa(t,f)),i=Array(12).fill().map((s,f)=>Sn.indexOf(e[Sn[f]])),a=Array(12).fill().map((s,f)=>kl.indexOf(e[kl[f]]));return{cp:l,ep:o,ap:i,bp:a}}function Bh(e){let t=Array(72),r=Kg(5,e);r.push(5);let n=Array(4).fill().map(a=>e(2));n.push(n.reduce((a,s)=>a^s)),n.push(0);for(let a=0;a<6;a++)ch(t,a,r[a],n[a]);let l=Kg(12,e);for(let a=0;a<12;a++)mh(t,a,l[a]);let o=t2(12,e).map(a=>a/3|0),i=t2(12,e).map(a=>4+(a/3|0));for(let a=0;a<12;a++)t[Sn[a]]=o[a],t[kl[a]]=i[a];return t}function tc(e,t=!1){if(t){e=e.map(m=>m.slice());let c=[0,1,2,3,4,5,6,7],L=[[0,3,5,6,4,7,1,2],[7,1,0,6,3,5,4,2],[7,4,2,1,3,0,6,5],[2,4,5,3,6,0,1,7]];L=L.concat(L.map(m=>i2(m)));for(let m=0;m<e.length;m++)if(e[m][0]<4)e[m][0]=c[e[m][0]];else{let d=c[e[m][0]],F=e[m][1];e[m][0]=d,c=rt(F===1?L[d^4]:L[d],c)}}let r=t?\\\"U L F R D BR B BL\\\".split(\\\" \\\"):Lh,n=[\\\"0\\\",\\\"\\\",\\\"'\\\"];return e.map(([o,i])=>r[o]+n[i]).join(\\\" \\\")}function Qr(e,t){for(let[r,n]of t)for(let l=0;l<n;l++)e=rt(e,ec[r]);return e}function rc(e){return e.map(([t,r])=>[t,(3-r)%3]).reverse()}function ya(e,t=!1){if(e.length===0)return[];let r=[],n;for(let[l,o]of e)n&&n[0]===l?(n[1]+=o,n[1]%=3,n[1]===0&&(r.pop(),n=r.length===0?void 0:r[r.length-1])):r.length>=2&&(n[0]^l)===4&&r[r.length-2][0]===l?(r[r.length-2][1]+=o,r[r.length-2][1]%=3,r[r.length-2][1]===0&&r.splice(r.length-2,1)):(n=[l,o],r.push(n));return t&&`${e}`!=`${r}`&&console.log(`simplified ${e} to ${r}`),r}function dh(e){return tc(rc(Fh(Bh(e),!0)),!0)}function zl(e,t,r,n,l,o){let i=Zg(e,t,r,n,l),a=o.length,[s,f]=Nl(e,t,r,n,l),u=Array(a).fill().map(()=>new Uint32Array(i));for(let p=0;p<i;p++){let g=s[p],c=Array(e);for(let L=0;L<e;L++)c[L]=g>>2*L&3;for(let L=0;L<a;L++){let d=rt(c,o[L]).reduce((F,A,v)=>F|A<<2*v,0);u[L][p]=f[d]}}return u}function nc(e){let t=e[0].length,r=e.length,n=Array(r).fill().map(()=>new Uint32Array(t));for(let l=0;l<t;l++)for(let o=0;o<r;o++)n[o][e[o][l]]=l;return n}function Un(e,t){let r=e[0].length,n=t[0].length,l=e.length,o=Array(l).fill().map(()=>new Uint32Array(r*n));for(let i=0;i<n;i++)for(let a=0;a<r;a++){let s=a+r*i;for(let f=0;f<l;f++)o[f][s]=e[f][a]+r*t[f][i]}return o}function Rh(e,t){let r=e.length,n=e[0].length,l=new Uint8Array(n);l[t]=1;let o=!1;for(;!o;){o=!0;for(let a=0;a<n;a++)if(!!l[a])for(let s=0;s<r;s++)l[e[s][a]]||(l[e[s][a]]=1,o=!1)}let i=new Int32Array(n).fill(-1);for(let a=0,s=0;a<n;a++)!l[a]||(i[a]=s,s++);return[e.map(a=>vn(a,l)),i]}function hh(e,t){let r=e.length,n=e[0].length,l=new Int32Array(n).fill(-1);t.forEach(s=>{l[s]=0});let o=[t];for(let s=0;s<o.length;s++){let f=o[s];for(let u=0;u<r;u++){let p=e[u][f[0]];if(l[p]!==-1)continue;let g=f.map(L=>e[u][L]),c=o.length;o.push(g);for(let L of g){if(l[L]!==-1)throw new Error(\\\"quotienting failed\\\");l[L]=c}}}let i=o.length,a=Array(r).fill().map(()=>new Int32Array(i));for(let s=0;s<r;s++)for(let f=0;f<i;f++)a[s][f]=l[e[s][o[f][0]]];return[a,l]}function lc(e,t,r){let n=e[0].length,l=e.length,o=new Int32Array(n).fill(-1);o[t]=r,o[r]=t;let i=!1;for(;!i;){i=!0;for(let a=0;a<n;a++){if(o[a]===-1)continue;let s=o[a];for(let f=0;f<l;f++){let u=f^1,p=e[f][a],g=e[u][e[u][s]];if(o[p]===-1)i=!1,o[p]=g,o[g]=p;else if(o[p]!==g)throw new Error(\\\"mirroring failed - is the initial map correct?\\\")}}}return o}function oc(e,t){let r=e[0].length,n=e.length,l=new Int8Array(r).fill(-1);for(let a of t)l[a]=0;let o=0,i=!1;for(;!i;){i=!0;for(let a=0;a<r;a++)if(l[a]===o)for(let s=0;s<n;s++){let f=e[s][a];for(;f!==a;)l[f]===-1&&(i=!1,l[f]=o+1),f=e[s][f]}o++}return l}function Fh(e,t=!1){let r=Sh(e).next().value,n=Qr(e,r),l=(t?Gh:Th)(n),o=ya(r.concat(l),!1);return Qr(e,o).join(\\\"\\\")!==Io.join(\\\"\\\")&&(console.log(\\\"solving failed!\\\"),console.log(e),console.log(r),console.log(n),console.log(l),console.log(Qr(e,o))),o}function Ah(e){let[t,r]=Nl(12,6,0,3,3),n=Array(12).fill().map((a,s)=>xa(e,s)),l=n.indexOf(8)+12*n.indexOf(9)+12**2*n.indexOf(10)+12**3*n.indexOf(11),[o,i]=[Sn,kl].map(a=>{let s=a.map(f=>Dh[e[f]]);return r[s.reduce((f,u,p)=>f|u<<2*p,0)]});return[l,o,i]}function ic(){if(K.phase1_edge)return K.phase1_edge;let e=nc(xn.map(n=>n.ep)),t=Un(e,e),r=Un(t,t);return K.phase1_edge=r}function yh(){return Br.phase1_edge?Br.phase1_edge:Br.phase1_edge=oc(ic(),[8+12*9+12**2*10+12**3*11])}function vh(){return K.phase1_centreA?K.phase1_centreA:K.phase1_centreA=zl(12,6,0,3,3,xn.map(e=>e.ap))}function ac(){return K.phase1_centreB?K.phase1_centreB:K.phase1_centreB=zl(12,6,0,3,3,xn.map(e=>e.bp))}function qg(){if(Br.phase1_centre)return Br.phase1_centre;let[e,t]=Nl(12,6,0,3,3),r=e.filter(n=>{let l=n>>12&3,o=n>>18&3;return l===2&&o===3}).map(n=>t[n]);return Br.phase1_centre=oc(ac(),r)}function*Sh(e){let t=[ic(),vh(),ac()],r=[yh(),qg(),qg()];yield*xh(Ah(e),t,r,15)}function*xh(e,t,r,n){let l=e.length,o=0;for(let i=0;i<l;i++)o=Math.max(o,r[i][e[i]]);for(;o<=n;)yield*sc(e,t,r,o,-1),o++}function*sc(e,t,r,n,l){let o=3,i=8,a=Math.max(r[0][e[0]],r[1][e[1]],r[2][e[2]]);if(!(a>n)){if(n===0){yield[];return}if(!(a===0&&n===1))for(let s=0;s<i;s++){if(s===l||s===l-4)continue;let f=[];f[0]=t[0][s][e[0]],f[1]=t[1][s][e[1]],f[2]=t[2][s][e[2]];let u=1;for(;e.some((p,g)=>e[g]!==f[g]);){let p=sc(f,t,r,n-1,s);for(;;){let{value:g,done:c}=p.next();if(c)break;yield[[s,u]].concat(g)}f[0]=t[0][s][f[0]],f[1]=t[1][s][f[1]],f[2]=t[2][s][f[2]],u++}}}}function s2(e){let[t,r]=Nl(10,5,3,2,0),n=Array(8).fill().map((g,c)=>xa(e,c)),l=n.indexOf(5)+8*n.indexOf(6)+8**2*n.indexOf(7),o=Array(5).fill().map((g,c)=>a2(e,c)),i=i2(o.map(([g,c])=>g+5*c).concat(o.map(([g,c])=>g+5*(c^1)))),a=i.slice(0,5).map(g=>g%5),s=i.slice(0,5).map(g=>g/5|0),f=yn(a)*8+(s[0]^s[2])+2*(s[0]^s[3])+4*s[4],[u,p]=[Sn,kl].map(g=>{let c=rt(g,bh).map(L=>Uh[e[L]]);return r[c.reduce((L,m,d)=>L|m<<2*d,0)]});return pc(),mc(),[u,p,cc[f]+40*uc[l]]}function*va(e){yield*zh(s2(e),30)}function fc(){if(K.phase2_centre)return K.phase2_centre;let e=zl(10,5,3,2,0,xn.slice(0,4).map(r=>vn(r.ap,Vg))),t=zl(10,5,3,2,0,xn.slice(0,4).map(r=>vn(r.bp,Vg)));return K.phase2_centre=[e,t]}function pc(){if(K.phase2_edge)return K.phase2_edge;let e=nc(xn.slice(0,4).map(n=>n.ep.slice(0,8))),t=Un(e,Un(e,e)),r;return[r,uc]=Rh(t,501),K.phase2_edge=r}function gc(){if(K.phase2_corner)return K.phase2_corner;let t=Mo(5)/2*8,r=[!0,!0,!0,!0,!0,!1,!0,!0,!0,!0,!0,!1],n=Array(4).fill().map(()=>new Uint32Array(t)),l=xn.slice(0,4).map(o=>i2(vn(o.cp,r)));for(let o=0;o<t;o++){let i=l2(o>>3,5),a=[0,0,o&1,o>>1&1,o>>2&1];a[1]=a[2]^a[3]^a[4];let s=Array(10);for(let f=0;f<5;f++)s[f]=i[f]+5*a[f],s[f+5]=i[f]+5*(a[f]^1);for(let f=0;f<4;f++){let u=rt(l[f],s),p=u.slice(0,5).map(L=>L%5),g=u.slice(0,5).map(L=>L/5|0),c=(g[0]^g[2])+2*(g[0]^g[3])+4*g[4];n[f][o]=yn(p)*8+c}}return K.phase2_corner=n}function mc(){return K.phase2_corner_compact||([K.phase2_corner_compact,cc]=hh(gc(),_h())),K.phase2_corner_compact}function f2(){if(K.phase2_ce)return K.phase2_ce;let e=mc(),t=pc();return K.phase2_ce=Un(e,t)}function Eh(){if(Y0)return Y0;let e=s2(Io)[2];return Y0=lc(f2(),e,e)}function wh(){let[e,t]=Nl(10,5,3,2,0);return e.filter(r=>(r>>10&63)===41).map(r=>t[r])}function _h(){let e=gc(),t=e[0].length,r=Array(t).fill(!1);r[0]=!0;let n=!1;for(;!n;){n=!0;for(let l=0;l<t;l++)r[l]&&(r[e[0][l]]||(n=!1,r[e[0][l]]=!0),r[e[1][l]]||(n=!1,r[e[1][l]]=!0))}return r.map((l,o)=>o).filter(l=>r[l])}function kh(){if(Br.phase2_ace)return Br.phase2_ace;let[e,t]=fc(),r=f2(),n=2520,l=40*336,o=n*l,i=s2(Io)[2],a=9,s=new Int8Array(o).fill(a);for(let f of wh())s[f+n*i]=0;for(let f=0;f<a-1;f++)for(let u=s.indexOf(f);u!==-1;u=s.indexOf(f,u+1)){let p=u%n,g=u/n|0;for(let c=0;c<4;c++){let L=e[c][p],m=r[c][g],d=L+n*m;s[d]===a&&(s[d]=f+1),L=e[c][L],m=r[c][m],d=L+n*m,s[d]===a&&(s[d]=f+1)}}return Br.phase2_ace=s}function*zh(e,t){let[r,n]=fc(),l=f2(),o=kh(),i=Eh(),[a,s,f]=e,u=i[f],p=Math.max(o[a+2520*f],o[s+2520*u]);for(;p<=t;)yield*Lc(a,s,f,r,n,l,o,i,p,-1),p++}function*Lc(e,t,r,n,l,o,i,a,s,f){let u=Math.max(i[e+2520*r],i[t+2520*a[r]]);if(!(u>s)){if(s===0){yield[];return}else if(u===0)return;for(let p=0;p<4;p++){if(p===f)continue;let g=e,c=t,L=r;for(let m=1;m<=2;m++){g=n[p][g],c=l[p][c],L=o[p][L];let d=Lc(g,c,L,n,l,o,i,a,s-1,p);for(;;){let{value:F,done:A}=d.next();if(A)break;yield[[p,m]].concat(F)}}}}}function Ua(e){let[t,r]=Nl(7,3,2,0,2),n=Array(5).fill().map((f,u)=>xa(e,u)),l=yn(n),o=Array(4).fill().map((f,u)=>a2(e,u)),i=yn(o.map(f=>f[0]))*2+o.find(f=>f[0]===0)[1],[a,s]=[Sn,kl].map(f=>{let u=rt(f,Ch).map(p=>e[p]%4);return r[u.reduce((p,g,c)=>p|g<<2*c,0)]});return[a+210*s,i+24*l]}function Ph(){if(K.phase3_2gen_edge)return K.phase3_2gen_edge;let e=Mo(5)/2,t=Array(Cl).fill().map(()=>new Uint32Array(e)),r=Sa.map(n=>n.ep.slice(0,5));for(let n=0;n<e;n++){let l=l2(n,5);for(let o=0;o<Cl;o++)t[o][n]=yn(rt(l,r[o]))}return K.phase3_2gen_edge=t}function Mh(){if(K.phase3_2gen_corner)return K.phase3_2gen_corner;let t=Mo(4)/2*2,r=[!0,!0,!0,!0,!1,!1,!0,!0,!0,!0,!1,!1],n=Array(Cl).fill().map(()=>new Uint32Array(t)),l=Sa.map(o=>vn(o.cp,r).slice(0,4));for(let o=0;o<t;o+=2){let i=l2(o>>1,4),a=i.concat(i.map(s=>s+4));for(let s=0;s<Cl;s++){let f=rt(a,l[s]),u=f.map(g=>g%4),p=f.find(g=>g%4===0)>>2;n[s][o]=yn(u)*2+p,n[s][o+1]=yn(u)*2+(p^1)}}return K.phase3_2gen_corner=n}function ba(){return K.phase3_2gen_corneredge?K.phase3_2gen_corneredge:K.phase3_2gen_corneredge=Un(Mh(),Ph())}function u2(){if(K.phase3_2gen_centre)return K.phase3_2gen_centre;let e=zl(7,3,2,0,2,Sa.map(r=>vn(r.ap,Hg))),t=zl(7,3,2,0,2,Sa.map(r=>vn(r.bp,Hg)));return K.phase3_2gen_centreA=e,K.phase3_2gen_centreB=t,K.phase3_2gen_centre=Un(e,t)}function dc(){if($0)return $0;let e=u2(),t=K.phase3_2gen_centreA,r=ba(),n=t[0].length,l=r[0].length,o=n*l,i=25,a=dr.map(g=>g.length),s=new Int8Array(o).fill(i),f=Ua(Io);s[f[0]%n+n*f[1]]=0;let u=0,p=!1;for(;!p&&u<i-1;){p=!0;let g=Array(Cl).fill().map((F,A)=>A).filter(F=>a[F]+u<i);g.sort((F,A)=>a[F]-a[A]);let c=rt(a,g),L=rt(t,g),m=rt(r,g),d=g.length;for(let F=s.indexOf(u);F!==-1;F=s.indexOf(u,F+1)){let A=F%n,v=F/n|0;for(let x=0;x<d;x++){let U=c[x],P=L[x][A],Z=m[x][v],C=P+n*Z;s[C]>u+U&&(p=!1,s[C]=u+U)}}u++}return $0=s}function Rc(){if(e2)return e2;let e=ba().slice(0,2),t=Ua(Io);return e2=lc(e,t[1],t[1])}function r2(e,t=Ua(e)){let[r,n]=t,l=r%210,o=Math.floor(r/210),i=u2(),a=K.phase3_2gen_centreA,s=K.phase3_2gen_centreB,f=ba(),u=dc(),p=Rc(),g=0;for(;;){let c=p2(l,o,n,a,s,f,u,p,g);for(let L of c)return L.map(m=>dr[m]).flat();g++}}function Xg(e,t=Ua(e)){let[r,n]=t,l=r%210,o=Math.floor(r/210),i=u2(),a=K.phase3_2gen_centreA,s=K.phase3_2gen_centreB,f=ba(),u=dc(),p=Rc(),g=r2(e).length,c=1/0,L;for(let m=g;m<=g+0;m++){let d=p2(l,o,n,a,s,f,u,p,m);for(let F of d){let A=F.map(U=>dr[U]).flat(),v=ya(A),x=n2(v);x<c&&(c=x,L=v)}}return L}function Ih(e){return(e-1)*(e-2)/2}function n2(e){let t=tc(e,!0).replace(/'/g,\\\"\\\").split(\\\" \\\");return e.length+Oh(t).map(Ih).reduce((r,n)=>r+n,0)}function Oh(e){if(e.length<3)return[];let t=e.length,r=[];for(let o=0;o<t-2;o++)r[o]=e[o]===e[o+2];r.push(!1);let n=-1,l=[];for(;n<t-2&&(n=r.indexOf(!0,n+1),n!==-1);){let o=r.indexOf(!1,n+1);l.push(o-n),n=o}return l}function*p2(e,t,r,n,l,o,i,a,s,f=-1){let u=i[e+210*r],p=i[t+210*a[r]],g=Math.max(u,p);if(!(g>s)){if(s===0){yield[];return}if(g!==0)for(let c=0;c<Cl;c++){if(c===f&&Nh[c]<=3)continue;let L=n[c][e],m=l[c][t],d=o[c][r],F=s-dr[c].length;if(F<0)continue;let A=p2(L,m,d,n,l,o,i,a,F,c);for(;;){let{value:v,done:x}=A.next();if(x)break;yield[c].concat(v)}}}}function Th(e,t=200,r=24){let n=[],l=va(e),o=rt(e,Zt).map(s=>s^1),i=va(o),a=Array(1e3);for(let s=0;s<t;s++){{let{value:f,done:u}=l.next();if(!u){let p=Qr(e,f),g=f.concat(r2(p));if(g.length<=r)return g;g.length<a.length&&(a=g)}}{let{value:f,done:u}=i.next();if(!u){let p=Qr(o,f),g=f.concat(r2(p)).map(([c,L])=>[c^2,L]);if(g.length<=r)return g;g.length<a.length&&(a=g)}}}return a}function Gh(e,t=20,r=30){let n=[],l=va(e),o=rt(e,Zt).map(f=>f^1),i=va(o),a,s=1/0;for(let f=0;f<t;f++){{let{value:u,done:p}=l.next();if(!p){let g=Qr(e,u),c=ya(u.concat(Xg(g))),L=n2(c);if(L<=r)return c;L<s&&(a=c,s=L)}}{let{value:u,done:p}=i.next();if(!p){let g=Qr(o,u),c=ya(u.concat(Xg(g)));c=c.map(([m,d])=>[m^2,d]);let L=n2(c);if(L<=r)return c;L<s&&(a=c,s=L)}}}return a}async function Kh(){return dh(await Wh)}var $v,eS,Z0,J0,Io,Po,lh,Zt,tS,Da,Jg,oh,ih,ah,Aa,sh,Yg,fh,uh,Tt,Wr,Kr,Sn,kl,ec,Lh,xn,K,Br,Dh,Uh,bh,Vg,uc,cc,Y0,Ch,Hg,dr,Cl,Bc,Sa,Nh,$0,e2,Wh,hc=y(()=>{\\\"use strict\\\";vt();[$v,eS]=(()=>{let e=new Int8Array(2048),t=new Int8Array(256*8);for(let l=0;l<256;l++)for(let o=0,i=0;o<8;o++)(l>>>o&1)!==0&&(e[o<<8|l]=i,t[i<<8|l]=o,i++);function r(l){let o=255,i=2520,a=0;for(let s=0;s<6;s++){let f=l[s];a+=e[o|f<<8]*i,o&=~(1<<f),i/=7-s}return a}function n(l,o){let i=255,a=2520,s=0;for(let f=0;f<6;f++){let u=l/a|0;l-=u*a,s^=u&1;let p=t[i|u<<8];o[f]=p,i&=~(1<<p),a/=7-f}return o[6]=t[i|s<<8],o[7]=t[i|(s^1)<<8],o}return[r,n]})();Z0={};J0={};Io=Array(72).fill().map((e,t)=>t/9|0),Po=o2([[0,4,8],[1,6,3],[2,5,7],[9,22,35],[45,67,44],[47,68,43],[46,69,39],[50,70,38],[49,71,36]],72),lh=rt(Po,Po),Zt=Array(72).fill().map((e,t)=>(t/18|0)*18+(t+9)%18),tS=Array(72).fill().map((e,t)=>(t/36|0)*36+(t+18)%36),Da=Array(72).fill().map((e,t)=>(t+36)%72),Jg=Pl(Da,lh,Da),oh=Pl(Zt,Po,Zt),ih=Pl(Zt,Jg,Zt),ah=o2([[10,24,30],[11,23,34],[12,19,33],[42,48,64],[41,52,65],[37,51,66]],72),Aa=rt(Po,ah),sh=rt(Aa,Aa),Yg=Pl(Da,sh,Da),fh=Pl(Zt,Aa,Zt),uh=Pl(Zt,Yg,Zt),Tt=Array(72).fill().map((e,t)=>t/9|0),Wr=[[0,45,9,36],[4,67,22,49],[8,44,35,71],[13,58,31,40],[17,53,26,62],[18,63,27,54]],Kr=[[1,46],[3,39],[6,69],[10,37],[33,42],[12,48],[15,60],[24,51],[19,64],[28,55],[30,66],[21,57]],Sn=Array(12).fill().map((e,t)=>(t/3|0)*9+[2,5,7][t%3]),kl=Sn.map(e=>e+36);ec=[Po,Jg,oh,ih,Aa,Yg,fh,uh],Lh=[\\\"U\\\",\\\"L\\\",\\\"F\\\",\\\"R\\\",\\\"u\\\",\\\"l\\\",\\\"f\\\",\\\"r\\\"],xn=ec.map($g);K={},Br={},Dh=[0,0,2,3,0,0,2,3];Uh=[0,1,2,0,0,1,2,0],bh=[0,1,2,3,4,5,7,8,10,11],Vg=[!0,!0,!0,!0,!0,!0,!1,!0,!0,!1,!0,!0];Ch=[0,1,2,3,4,10,11],Hg=[!0,!0,!0,!0,!0,!1,!1,!1,!1,!1,!0,!0],dr=[[[0,1]],[[1,1]],[[2,1],[0,1],[3,1],[0,2],[3,2],[2,2]],[[3,2],[1,2],[2,2],[1,1],[2,1],[3,1]],[[6,1],[0,1],[3,1],[0,2],[3,2],[6,2]],[[7,2],[1,2],[2,2],[1,1],[2,1],[7,1]],[[2,1],[0,1],[2,2],[0,1],[2,1],[0,1],[2,2]],[[3,2],[1,1],[3,1],[1,1],[3,2],[1,1],[3,1]],[[2,1],[3,1],[2,2],[1,2],[0,2],[2,1],[3,1],[2,2]],[[3,2],[2,2],[3,1],[0,1],[1,1],[3,2],[2,2],[3,1]],[[6,1],[0,1],[6,2],[0,2],[1,2],[6,1],[0,1],[6,2]],[[7,2],[1,2],[7,1],[1,1],[0,1],[7,2],[1,2],[7,1]],[[2,1],[3,2],[2,2],[3,1],[0,1],[2,2],[1,1],[2,1]],[[3,2],[2,1],[3,1],[2,2],[1,2],[3,1],[0,2],[3,2]],[[6,1],[0,2],[6,2],[7,1],[6,1],[1,2],[7,1],[6,1]],[[7,2],[1,1],[7,1],[6,2],[7,2],[0,1],[6,2],[7,2]],[[2,2],[1,2],[2,2],[3,2],[2,2],[3,2],[0,2],[3,2]],[[6,2],[7,2],[1,2],[0,2],[1,2],[0,2],[6,2],[7,2]]];dr=dr.concat(dr.map(e=>rc(e)));Cl=dr.length,Bc=dr.map(e=>Qr(o2([],72),e)),Sa=Bc.map($g),Nh=Bc.map(nh);Wh=we()});var Fc={};Lt(Fc,{randomFTOScrambleString:()=>Kh});var Dc=y(()=>{\\\"use strict\\\";hc()});async function yc(){return Qh??(Qh=jh())}async function jh(){return Ht(await Ie.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 Qh,vc=y(()=>{\\\"use strict\\\";ar();ll();Qh=null});function To(e){if(e<2)return e;let t=1;for(let r=2;r<=e;r++)t*=r;return t}function g2(e,t){if(t<0||t>e)return 0;if(t===0||t===e)return 1;let r=1;for(let n=0;n<t;n++)r=r*(e-n)/(n+1)|0;return r}function qh(e){e=e.slice();let t=e.length,r=To(t-1),n=0;for(;t>1;){t--;let l=e[0];n+=l*r;for(let o=0;o<t;o++){let i=e[o+1];e[o]=i-(i>l)}r/=t}return n}function Vh(e,t){let r=[],n=To(t-1);for(let l=0;l<t;l++)r[l]=e/n|0,e%=n,n/=t-1-l;for(let l=t-2;l>=0;l--)for(let o=l+1;o<t;o++)r[o]+=+(r[o]>=r[l]);return r}function Sc(e){let t=e.length,r=0;for(let n=0;n<t-1;n++)for(let l=n;l<t;l++)e[n]>e[l]&&(r^=1);return r}function Hh(e,t){let r=[],n=To(t-1)/2,l=0;for(let o=0;o<t-1;o++)r[o]=e/n|0,e%=n,n/=t-1-o;r[t-1]=0;for(let o=t-2;o>=0;o--)for(let i=o+1;i<t;i++)r[i]>=r[o]?r[i]++:l^=1;return l===1&&([r[t-2],r[t-1]]=[r[t-1],r[t-2]]),r}function xc(e){return qh(e)>>1}function Uc(e){let t=e.length,r=0;for(let i=0;i<t;i++)r+=+(e[i]===1);let n=t-r;if(n===0||r===0||t===1)return 0;let l=g2(t-1,r),o=0;for(let i=0;n>0&&r>0&&t>1;i++)t--,e[i]===0?l=l*--n/t:(o+=l,l=l*r--/t);return o}function Xh(e,t,r){let n=r-t,l=g2(r-1,t),o=[],i=r-1;for(let a=0;a<i;a++)r--,e<l?(o.push(0),l=l*--n/r):(o.push(1),e-=l,l=l*t--/r);return o.push(t),o}function Ea(e,t){let r=[];for(let n=0;n<t.length;n++)r[n]=e[t[n]];return r}function jr(e,t){let r=[];for(let n=0;n<t;n++)r[n]=n;for(let n=0;n<e.length;n++)r[e[n]]=e[(n+1)%e.length];return r}function qr(e,t){let r=Array(t).fill(0);for(let n in e)r[n]=e[n];return r}function Zh(e,t){let r=Array(8).fill(0);for(let n=0;n<8;n++)r[n]=(e[1][n]+t[1][n])%3;return[Ea(e[0],t[0]),r]}function i3(e){let t=[\\\"0\\\",\\\"\\\",\\\"'\\\"];return e.map(([n,l])=>o3[n]+t[l]).join(\\\" \\\")}function a3(e){let t=Hh(Math.floor(e(To(12))/2),12),r=Array(8);for(let n=0;n<8;n++)r[n]=e(3);return[t,r]}function s3(e){return f3(a3(e))}function f3(e){let t=u3(e),r=[Ec(),wc()],n=[g3(),c3()],l=[_c(),m3()],o=[L3(),p3()],i=d3(t,r,n),a,s=new Set,f=+new Date;for(let u=0;u<25;u++){let{value:p,done:g}=i.next(),c=e;for(let[v,x]of p)for(let U=0;U<x;U++)c=Zh(c,Oo[v]);if(s.has(c.toString()))continue;s.add(c.toString());let L=xc(c[0].slice(0,8)),m=0;for(let v=0;v<4;v++)m+=c[1][v]*3**v;let d=[L,m],F=a?a.length-p.length-1:999999,A=B3(d,l,o,F);if(A!==void 0&&((a===void 0||a.length>p.length+A.length)&&(a=p.concat(A)),new Date-f>300))break}return a}function u3(e){let t=0;for(let o=0;o<4;o++)t+=e[0].indexOf(o+8)*12**o;let r=0;for(let o=0;o<4;o++)r+=e[1][o+4]*3**o;let n=e[0].map(o=>Math.max(-1,o-8)),l=Uc(n.map(o=>+(o>=0)))*2+Sc(n.filter(o=>o>=0));return[t,r+81*l]}function bc(){if(Le.phase1cm)return Le.phase1cm;let e=[];for(let t=0;t<81;t++){e[t]=Array(8);let r=[t%3,Math.floor(t/3)%3,Math.floor(t/9)%3,Math.floor(t/27)];e[t][0]=e[t][1]=e[t][2]=e[t][3]=t;for(let n=0;n<4;n++)r[n]=(r[n]+2)%3,e[t][4+n]=r[0]+r[1]*3+r[2]*9+r[3]*27,r[n]=(r[n]+1)%3}return Le.phase1cm=e}function p3(){if(Le.phase1cp)return Le.phase1cp;let e=Array(81);for(let t=0;t<81;t++){let r=[t%3,Math.floor(t/3)%3,Math.floor(t/9)%3,Math.floor(t/27)];e[t]=(r[0]!==0)+(r[1]!==0)+(r[2]!==0)+(r[3]!==0)}return Le.phase1cp=e}function Ec(){if(Le.phase1em)return Le.phase1em;let e=[];for(let r=0;r<12;r++){e[r]=[];for(let n=0;n<8;n++)e[r][n]=Oo[n][0].indexOf(r)}let t=Array(12**4);for(let r=0;r<12**4;r++){t[r]=Array(8);for(let n=0;n<8;n++){let l=0;for(let o=0;o<4;o++)l+=e[Math.floor(r/12**o)%12][n]*12**o;t[r][n]=l}}return Le.phase1em=t}function g3(){return Le.phase1ep?Le.phase1ep:Le.phase1ep=c2(Ec(),[8+12*(9+12*(10+12*11))])}function wc(){if(Le.phase1sm)return Le.phase1sm;let e=g2(12,4),t=[];for(let l=0;l<e;l++){t[l]=[];let o=Xh(l,4,12),i=[];for(let a=0,s=0;a<12;a++)o[a]===0?i[a]=-1:i[a]=s++;for(let a=0;a<8;a++){let s=Ea(i,Oo[a][0]),f=Ea(o,Oo[a][0]),u=Sc(s.filter(p=>p>=0));t[l][a]=Uc(f)*2+u}}let r=bc(),n=[];for(let l=0;l<e;l++)for(let o=0;o<81;o++){let i=n[o+81*(2*l)]=[],a=n[o+81*(2*l+1)]=[];for(let s=0;s<8;s++)i[s]=r[o][s]+81*t[l][s],a[s]=r[o][s]+81*(t[l][s]^1)}return Le.phase1sm=n}function c3(){return Le.phase1sp?Le.phase1sp:Le.phase1sp=c2(wc(),[0])}function m3(){if(Le.phase2cm)return Le.phase2cm;let e=bc(),t=Array(81);for(let r=0;r<81;r++)t[r]=e[r].slice(4,8);return Le.phase2cm=t}function _c(){if(Le.phase2em)return Le.phase2em;let e=8,t=To(e)/2,r=Array(t),n=[0,1,2,3,4,5,6,7];for(let l=0;l<t;l++){r[l]=Array(4);for(let i=0;i<4;i++){let a=Ea(n,Oo[i][0].slice(0,8));r[l][i]=xc(a)}if(l===t-1)break;let o=0;do for(let i=e-2;i>=0;i--){if(n[i]>n[i+1])continue;let a=i+1;for(let s=a;s<e;s++)n[s]>n[i]&&(a=s);[n[i],n[a]]=[n[a],n[i]],o^=1;for(let s=0;i+1+s<e-1-s;s++,o^=1)[n[i+1+s],n[e-1-s]]=[n[e-1-s],n[i+1+s]];break}while(o!==0)}return Le.phase2em=r}function L3(){return Le.phase2ep?Le.phase2ep:Le.phase2ep=c2(_c(),[0])}function c2(e,t){let r=e.length,n=e[0].length,l=Array(r).fill(-1),o=t.slice(),i=[],a=0;for(;o.length>0;){i.length=0;for(let s of o)if(l[s]===-1){l[s]=a;for(let f=0;f<n;f++){let u=e[s][f];for(;u!==s;)i.push(u),u=e[u][f]}}[o,i]=[i,o],a+=1}return l}function B3(e,t,r,n){n=n||999999;let l=e.length,o=0;for(let i=0;i<l;i++)o=Math.max(o,r[i][e[i]]);for(;o<=n;){let i=kc(e,t,r,o,-1);if(i!==void 0)return i;o++}}function kc(e,t,r,n,l){let o=e.length,i=t[0][0].length,a=0;for(let s=0;s<o;s++)a=Math.max(a,r[s][e[s]]);if(!(a>n)){if(n===0)return[];if(!(a===0&&n===1))for(let s=0;s<i;s++){if(s===l||s<l&&wa[s]===wa[l])continue;let f=e.slice();for(let p=0;p<o;p++)f[p]=t[p][e[p]][s];let u=1;for(;e.some((p,g)=>e[g]!==f[g]);){let p=kc(f,t,r,n-1,s);if(p!==void 0)return[[s,u]].concat(p);for(let g=0;g<o;g++)f[g]=t[g][f[g]][s];u++}}}}function*d3(e,t,r){let n=e.length,l=0;for(let o=0;o<n;o++)l=Math.max(l,r[o][e[o]]);for(;;)yield*zc(e,t,r,l,-1),l++}function*zc(e,t,r,n,l){let o=e.length,i=t[0][0].length,a=0;for(let s=0;s<o;s++)a=Math.max(a,r[s][e[s]]);if(!(a>n)){if(n===0){yield[];return}if(!(a===0&&n===1))for(let s=0;s<i;s++){if(s===l||s<l&&wa[s]===wa[l])continue;let f=e.slice();for(let p=0;p<o;p++)f[p]=t[p][e[p]][s];let u=1;for(;e.some((p,g)=>e[g]!==f[g]);){let p=zc(f,t,r,n-1,s);for(;;){let{value:g,done:c}=p.next();if(c)break;yield[[s,u]].concat(g)}for(let g=0;g<o;g++)f[g]=t[g][f[g]][s];u++}}}}async function Cc(){return new E(i3(s3(await R3)))}var Jh,Yh,$h,e3,t3,r3,n3,l3,gS,Oo,o3,wa,Le,R3,Nc=y(()=>{\\\"use strict\\\";me();vt();Jh=[jr([0,1,4],12),qr({0:2},8)],Yh=[jr([1,2,5],12),qr({1:2},8)],$h=[jr([2,3,6],12),qr({2:2},8)],e3=[jr([3,0,7],12),qr({3:2},8)],t3=[jr([9,8,4],12),qr({4:2},8)],r3=[jr([10,9,5],12),qr({5:2},8)],n3=[jr([11,10,6],12),qr({6:2},8)],l3=[jr([8,11,7],12),qr({7:2},8)],gS=[Vh(0,12),Array(8).fill(0)],Oo=[Jh,Yh,$h,e3,t3,r3,n3,l3],o3=[\\\"UL\\\",\\\"U\\\",\\\"UR\\\",\\\"F\\\",\\\"L\\\",\\\"B\\\",\\\"R\\\",\\\"D\\\"],wa=[0,1,0,1,1,0,1,0];Le={};R3=we()});var m2={};Lt(m2,{getRandomRediCubeScramble:()=>Cc,sgsDataFTO:()=>yc});var L2=y(()=>{\\\"use strict\\\";vc();Nc()});function Mc(e){if(e<2)return e;let t=1;for(let r=2;r<=e;r++)t*=r;return t}function ka(e,t){if(t<0||t>e)return 0;if(t===0||t===e)return 1;let r=1;for(let n=0;n<t;n++)r=r*(e-n)/(n+1)|0;return r}function h3(e){e=e.slice();let t=e.length,r=Mc(t-1),n=0;for(;t>1;){t--;let l=e[0];n+=l*r;for(let o=0;o<t;o++){let i=e[o+1];e[o]=i-(i>l)}r/=t}return n}function F3(e){let t=e.length,r=0;for(let n=0;n<t-1;n++)for(let l=n;l<t;l++)e[n]>e[l]&&(r^=1);return r}function D3(e){return h3(e)>>1}function R2(e){let t=e.length,r=0;for(let i=0;i<t;i++)r+=+(e[i]===1);let n=t-r;if(n===0||r===0||t===1)return 0;let l=ka(t-1,r),o=0;for(let i=0;n>0&&r>0&&t>1;i++)t--,e[i]===0?l=l*--n/t:(o+=l,l=l*r--/t);return o}function v3(e,t,r){let n=r-t,l=ka(r-1,t),o=[],i=r-1;for(let a=0;a<i;a++)r--,e<l?(o.push(0),l=l*--n/r):(o.push(1),e-=l,l=l*t--/r);return o.push(t),o}function Jt(e,t){let r=[];for(let n=0;n<t.length;n++)r[n]=e[t[n]];return r}function h2(e,t){let r=Jt(e[0],t[0]),n=[],l=t[0].length;for(let o=0;o<l;o++)n[o]=(e[1][t[0][o]]+t[1][o])%3;return[r,n]}function Ml(e,t){let r=[];for(let n=0;n<t;n++)r[n]=n;for(let n=0;n<e.length;n++)r[e[n]]=e[(n+1)%e.length];return r}function Vr(e,t){let r=Array(t).fill(0);for(let n in e)r[n]=e[n];return r}function w3(e){let t=[0];for(let n=1;n<20;n++){let l=e(n+1);t[n]=t[l],t[l]=n}F3(t)===1&&([t[0],t[1]]=[t[1],t[0]]);let r=Array(20).fill(0);for(let n=0;n<19;n++)r[n]=e(3),r[19]+=3-r[n];return r[19]%=3,[t,r]}function _3(e){let t=[\\\"0\\\",\\\"\\\",\\\"2\\\",\\\"2'\\\",\\\"'\\\"];return e.map(([n,l])=>b3[n]+t[l]).join(\\\" \\\")}function k3(e,t){for(let[r,n]of t)for(let l=0;l<n;l++)e=h2(e,bn[r]);return e}function z3(e){return W3(w3(e))}function N3(e){let t=e[0];if(t.slice(15,20).every(o=>o<15))return[];if(t.slice(0,5).every(o=>o<15))return[[6,1]];let r=t.map(o=>o>=15),n=0,l;for(;l===void 0;)n++,l=Gc(r,n,-1);return l.push([6,1]),l}function Gc(e,t,r){if(t===0)return e.slice(0,5).some(n=>n)?void 0:[];for(let n=0;n<6;n++)if(n!==r)for(let l=1;l<5;l++){let o=Jt(e,_a[n][l][0]),i=Gc(o,t-1,n);if(i!==void 0)return[[n,l]].concat(i)}}function P3(e){let t=e[0].slice(0,15),r=e[1],n=R2(t.map(i=>+(i>=15))),l=243*n;for(let i=0,a=0;i<15;i++)t[i]<15||(l+=r[i]*Math.pow(3,a),a++);let o=0;for(let i=0;i<5;i++)o+=t.indexOf(15+i)*Math.pow(15,i);return[l,o]}function M3(e){let t=[za(),Ca()],r=[K3(),j3()];return Wc(P3(e),t,r).concat([[6,1]])}function I3(e){let t=[5,6,7,8,14],r=e[0].slice(0,15),n=e[1],l=R2(r.map(a=>+(t.indexOf(a)!==-1))),o=243*l;for(let a=0,s=0;a<15;a++)t.indexOf(r[a])!==-1&&(o+=n[a]*Math.pow(3,s),s++);let i=0;for(let a=0;a<5;a++)i+=r.indexOf(t[a])*Math.pow(15,a);return[o,i]}function O3(e){let t=[za(),Ca()],r=[Q3(),q3()];return Wc(I3(e),t,r)}function T3(e){let t=e[0].slice(0,14),r=e[1],n=0,l=[],o=0;for(let i of[0,1,2,3,4,9,10,11,12,13])i!==13&&(n+=r[i]*Math.pow(3,o)),l[o]=t[i]<5?t[i]:t[i]-4,o++;return[n,D3(l)]}function G3(e){return J3(T3(e))}function W3(e){let t=[];for(let r of[N3,M3,O3,G3]){let n=r(e);e=k3(e,n),t=t.concat(n)}return t}function za(){if(le.phase23om)return le.phase23om;let e=ka(15,5),t=[1,3,9,27,81,243],r=Array(ka(15,5)*t[5]);le.phase23om=r;for(let n=0;n<e;n++){let l=v3(n,5,15).concat(Array(5).fill(0)),o=[];for(let i=0;i<6;i++){let a=Jt(l,bn[i][0]).slice(0,15);o[i]=R2(a)}for(let i=0;i<t[5];i++){r[i+243*n]=[];let a=[];for(let s=0,f=0;s<20;s++)l[s]===1?(a[s]=(i/t[f]|0)%3,f++):a[s]=99;for(let s=0;s<6;s++){let f=bn[s],u=[];for(let c=0;c<15;c++)u[c]=a[f[0][c]]+f[1][c];let p=u.filter(c=>c<10),g=0;for(let c=0;c<5;c++)g+=p[c]%3*t[c];r[i+243*n][s]=g+243*o[s]}}}return r}function K3(){if(le.phase2op)return le.phase2op;let e=za();return le.phase2op=Il(e,[243*3002])}function Q3(){if(le.phase3op)return le.phase3op;let e=za();return le.phase3op=Il(e,[243*246])}function Ca(){if(le.phase23pm)return le.phase23pm;let e=[1,15,225,Math.pow(15,3),Math.pow(15,4),Math.pow(15,5)],t=Array(e[5]),r=Array(15);for(let l=0;l<15;l++){r[l]=Array(6);for(let o=0;o<6;o++)r[l][o]=bn[o][0].indexOf(l)}let n=[0,0,0,0,0];for(let l=0;l<e[5];l++){t[l]=Array(6);for(let o=0;o<6;o++){let i=0;for(let a=0;a<5;a++)i+=r[n[a]][o]*e[a];t[l][o]=i}n[0]++;for(let o=0;o<4;o++)n[o]===15&&(n[o]=0,n[o+1]++)}return le.phase23pm=t}function j3(){if(le.phase2pp)return le.phase2pp;let e=Ca();return le.phase2pp=Il(e,[213090])}function q3(){if(le.phase3pp)return le.phase3pp;let e=Ca();return le.phase3pp=Il(e,[737420])}function F2(){if(le.phase4om)return le.phase4om;let e=[1,3,9,27,81,243,729,2187,6561,19683,59049],t=Array(e[9]);for(let r=0;r<e[9];r++){let n=Array(14).fill(0);for(let l=0;l<9;l++){let o=l<5?l:l+4;n[o]=(r/e[l]|0)%3,n[13]-=n[o]}n[13]=(n[13]+999)%3,t[r]=[];for(let l=0;l<3;l++){let o=bn[l],i=[0,1,2,3,4,9,10,11,12,13].map(s=>n[o[0][s]]+o[1][s]),a=0;for(let s=0;s<9;s++)a+=i[s]%3*e[s];t[r][l]=a}}return le.phase4om=t}function D2(){if(le.phase4pm)return le.phase4pm;let e=Mc(10)/2,t=10,r=[0,1,2,3,4,-1,-1,-1,-1,5,6,7,8,9],n=[0,1,2,3,4,9,10,11,12,13],l=[Jt(r,Jt(Ic[0],n)),Jt(r,Jt(Oc[0],n)),Jt(r,Jt(Tc[0],n))],o=Array(e),i=Array(10);for(let a=0;a<e;a++){y3(a,i),o[a]=[];for(let s=0;s<3;s++){let f=Jt(i,l[s]);o[a][s]=A3(f)}}return le.phase4pm=o}function V3(){if(le.phase4op)return le.phase4op;let e=F2();return le.phase4op=Il(e,[0])}function H3(){if(le.phase4pp)return le.phase4pp;let e=D2();return le.phase4pp=Il(e,[0])}function X3(e){if(le.phase4np_list&&le.phase4np_list.threshold===e)return le.phase4np_list;let t=[F2(),D2()],r=Math.pow(3,9),n=[0];l(e,[0,0],-1);function l(a,s,f){if(n.push(s[0]+r*s[1]),a===0)return;let u=[];for(let p=0;p<3;p++)if(p!==f){u[0]=s[0],u[1]=s[1];for(let g=1;g<5;g++)u[0]=t[0][u[0]][p],u[1]=t[1][u[1]][p],l(a-1,u,p)}}n.sort((a,s)=>a-s);let o=[],i=-1;for(let a of n)a!==i&&o.push(i=a);return o.threshold=e,le.phase4np_list=o}function Z3(e,t){let r=0,n=e.length-1;for(;n-r>1;){let l=r+n>>1;t>e[l]?r=l+1:n=l}return t===e[r]||t===e[n]}function Il(e,t){let r=e.length,n=e[0].length,l=Array(r).fill(-1);for(let a of t)l[a]=0;let o=0,i=!1;for(;!i;){i=!0;for(let a=0;a<r;a++)if(l[a]===o)for(let s=0;s<n;s++){let f=e[a][s];for(;f!==a;)l[f]===-1&&(i=!1,l[f]=o+1),f=e[f][s]}o++}return l}function Wc(e,t,r){let n=e.length,l=0;for(let o=0;o<n;o++)l=Math.max(l,r[o][e[o]]);for(;;){let o=Kc(e,t,r,l,-1);if(o!==void 0)return o;l++}}function Kc(e,t,r,n,l){let o=e.length,i=t[0][0].length,a=0;for(let s=0;s<o;s++)a=Math.max(a,r[s][e[s]]);if(!(a>n)){if(n===0||a===0)return[];for(let s=0;s<i;s++){if(s===l)continue;let f=e.slice();for(let p=0;p<o;p++)f[p]=t[p][e[p]][s];let u=1;for(;e.some((p,g)=>e[g]!==f[g]);){let p=Kc(f,t,r,n-1,s);if(p!==void 0)return[[s,u]].concat(p);for(let g=0;g<o;g++)f[g]=t[g][f[g]][s];u++}}}}function J3(e){let t=F2(),r=D2(),n=V3(),l=H3(),o=X3(B2),i=Math.max(n[e[0]],l[e[1]]);for(;;){let a=Qc(e,i,-1,t,r,n,l,o);if(a!==void 0)return a;i++}}function Qc(e,t,r,n,l,o,i,a){let s=Math.max(o[e[0]],i[e[1]]);if(!(s>t)&&(s<=B2&&!Z3(a,e[0]+19683*e[1])&&(s=B2+1),!(s>t))){if(t===0||s===0)return[];for(let f=0;f<3;f++){if(f===r)continue;let u=e.slice();for(let p=1;p<5;p++){u[0]=n[u[0]][f],u[1]=l[u[1]][f];let g=Qc(u,t-1,f,n,l,o,i,a);if(g!==void 0)return[[f,p]].concat(g)}}}}async function jc(){return new E(_3(z3(await Y3)))}var B2,A3,y3,Ic,Oc,Tc,S3,x3,U3,d2,xS,bn,b3,E3,_a,C3,le,Y3,qc=y(()=>{\\\"use strict\\\";me();vt();B2=7;[A3,y3]=(()=>{let e=new Int8Array(10240),t=new Int8Array(1024*10);for(let l=0;l<1024;l++)for(let o=0,i=0;o<10;o++)(l>>>o&1)!==0&&(e[o<<10|l]=i,t[i<<10|l]=o,i++);function r(l){let o=1023,i=181440,a=0;for(let s=0;s<8;s++){let f=l[s];a+=e[o|f<<10]*i,o&=~(1<<f),i/=9-s}return a}function n(l,o){let i=1023,a=181440,s=0;for(let f=0;f<8;f++){let u=l/a|0;l-=u*a,s^=u&1;let p=t[i|u<<10];o[f]=p,i&=~(1<<p),a/=9-f}return o[8]=t[i|s<<10],o[9]=t[i|(s^1)<<10],o}return[r,n]})();Ic=[Ml([0,1,2,3,4],20),Vr({},20)],Oc=[Ml([4,3,11,12,13],20),Vr({4:2,3:1,11:1,12:1,13:1},20)],Tc=[Ml([3,2,9,10,11],20),Vr({3:2,2:1,9:1,10:1,11:1},20)],S3=[Ml([2,1,7,8,9],20),Vr({2:2,1:1,7:1,8:1,9:1},20)],x3=[Ml([1,0,5,6,7],20),Vr({1:2,0:1,5:1,6:1,7:1},20)],U3=[Ml([0,4,13,14,5],20),Vr({0:2,4:1,13:1,14:1,5:1},20)],d2=[[15,16,17,18,19,10,9,8,7,6,5,14,13,12,11,0,1,2,3,4],Vr({},20)],xS=[[1,2,3,4,0,7,8,9,10,11,12,13,14,5,6,19,15,16,17,18],Vr({},20)],bn=[Ic,Oc,Tc,S3,x3,U3,d2],b3=[\\\"U\\\",\\\"R\\\",\\\"F\\\",\\\"L\\\",\\\"BL\\\",\\\"BR\\\",\\\"x2\\\"],E3=h2(d2,d2),_a=[];for(let e=0;e<bn.length;e++){_a[e]=[E3];for(let t=1;t<5;t++)_a[e][t]=h2(_a[e][t-1],bn[e])}{let e=Math.sin(Math.PI/5),t=Math.cos(Math.PI/10),r=Math.cos(Math.PI/5),n=Math.sin(Math.PI/10);C3={U:[0,0],L:[-e-t,r-n],F:[0,2*r],R:[e+t,r-n],BR:[t,-1-n],BL:[-t,-1-n],DBR:[2*e+2*t,0],DB:[3*e+3*t,-r-n],DBL:[4*e+4*t,0],DFL:[3*e+4*t,1+r],DFR:[3*e+2*t,1+r],D:[3*e+3*t,r-n]}}le={};Y3=we();jc().then(e=>e.log())});var Vc={};Lt(Vc,{getRandomKilominxScramble:()=>jc});var Hc=y(()=>{\\\"use strict\\\";qc()});function Go(e){if(e<2)return e;let t=1;for(let r=2;r<=e;r++)t*=r;return t}function wn(e){let t=Array(e);for(let r=0;r<e;r++)t[r]=r;return t}function $3(e){e=e.slice();let t=e.length,r=Go(t-1),n=0;for(;t>1;){t--;let l=e[0];n+=l*r;for(let o=0;o<t;o++){let i=e[o+1];e[o]=i-(i>l)}r/=t}return n}function Na(e,t){let r=[],n=Go(t-1)/2,l=0;for(let o=0;o<t-1;o++)r[o]=e/n|0,e%=n,n/=t-1-o;r[t-1]=0;for(let o=t-2;o>=0;o--)for(let i=o+1;i<t;i++)r[i]>=r[o]?r[i]++:l^=1;return l===1&&([r[t-2],r[t-1]]=[r[t-1],r[t-2]]),r}function Yc(e){return $3(e)>>1}function En(e,t){let r=[];for(let n=0;n<t.length;n++)r[n]=e[t[n]];return r}function y2(e){let t=[];for(let r=0;r<e.length;r++)t[e[r]]=r;return t}function Wo(e,t){let r=[];for(let n=0;n<t;n++)r[n]=n;for(let n=0;n<e.length;n++)r[e[n]]=e[(n+1)%e.length];return r}function Hr(e,t){return e.length===0?wn(t):e.map(r=>Wo(r,t)).reduce(En)}function eF(e,t){let r=Array(4);for(let i=0;i<4;i++)r[i]=(e.co[i]+t.co[i])%3;let n=En(e.mp,t.mp),l=En(e.wp,t.wp),o=En(e.cp,t.cp);return{co:r,mp:n,wp:l,cp:o}}function $c(e,t){return e>=4&&t>=4?!0:e<4&&t<4?e===t:(e^t)===4}function uF(e){let t=[\\\"0\\\",\\\"\\\",\\\"'\\\"];return e.map(([n,l])=>fF[n]+t[l]).join(\\\" \\\")}function pF(e){let t=Array(4);for(let o=0;o<4;o++)t[o]=e(3);let r=Na(e(Go(6)/2),6);for(let o=0,i=0;o<6;o++){let a=o===5?i:e(2);i^=a,r[o]+=a*6,r[o+6]=(r[o]+6)%12}let n=Na(e(Go(12)/2),12),l=Na(e(Go(4)/2),4);return{co:t,mp:r,wp:n,cp:l}}function gF(e){return mF(pF(e))}function cF(e,t=!0,r=!1){let n=uF(gF(e));if(!t)return n;let l=[\\\"u\\\",\\\"l\\\",\\\"r\\\",\\\"b\\\"],o=[\\\"0\\\",\\\"\\\",\\\"'\\\"];if(!r){for(let g=0;g<4;g++){let c=e(3);c!==0&&(n+=` ${l[g]}${o[c]}`)}return n.trim()}let i=[],a=[],s=[];for(let g=0;g<4;g++)i[g]=e(3),a[g]=e(3),s[g]=(i[g]-a[g]+3)%3;let f=g=>g.filter(c=>c!==0).length;for(;!(f(a)>=1&&f(s)>=1&&f(a)+f(s)>=4);)for(let g=0;g<4;g++)a[g]=e(3),s[g]=(i[g]-a[g]+3)%3;let u=a.map((g,c)=>g!==0?`${l[c]}${o[g]} `:\\\"\\\").join(\\\"\\\"),p=s.map((g,c)=>g!==0?` ${l[c]}${o[g]}`:\\\"\\\").join(\\\"\\\");return u+n+p}function mF(e){let t=BF(e),r=[lm(),om()],n=[AF(),yF()],l=hF(t),o,i=new Set,a=performance.now();for(let s=0;s<22;s++){let{value:f,done:u}=l.next(),p=e;for(let[d,F]of f)for(let A=0;A<F;A++)p=eF(p,Ol[d]);let g=JSON.stringify(p);if(i.has(g))continue;i.add(g);let c=FF(p),L=o?o.length-f.length-1:999999,m=vF(c,r,n,L).next().value;if(m!==void 0&&((o===void 0||o.length>f.length+m.length)&&(o=f.concat(m)),performance.now()-a>300))break}return o}function LF(e){return e[3^e.indexOf(3)]}function BF(e){let t=En(y2(e.mp),e.wp),r=(e.co.reduce((n,l)=>n+l)-LF(e.cp)+3)%3;return[0,1,2,3,4,5].map(n=>n+6*t.indexOf(n)+72*t.indexOf(n+6)+864*r)}function*hF(e){let t=0,r=nm(),n=DF();for(;;)yield*tm(...e,r,n,t,-1),t++}function*tm(e,t,r,n,l,o,i,a,s,f){let u=_n,p=Rr[e]+Rr[t]+Rr[r]+Rr[n]+Rr[l]+Rr[o],g=Math.max(a[e%864+t*864],a[r%864+t*864],a[l%864+t*864],a[e%864+n*864],a[r%864+n*864],a[l%864+n*864],a[e%864+o*864],a[r%864+o*864],a[l%864+o*864],a[e%864+r*864],a[e%864+l*864],a[r%864+l*864],a[t%864+n*864],a[t%864+o*864],a[n%864+o*864],S2[p]);if(!(g>s)){if(s===0){yield[];return}if(!(g===0&&s===1))for(let c=0;c<u;c++){if(c===f||c<f&&$c(c,f))continue;let L=e,m=t,d=r,F=n,A=l,v=o;for(let x=1;x<=2;x++){L=i[L][c],m=i[m][c],d=i[d][c],F=i[F][c],A=i[A][c],v=i[v][c];let U=tm(L,m,d,F,A,v,i,a,s-1,c);for(;;){let{value:P,done:Z}=U.next();if(Z)break;yield[[c,x]].concat(P)}}}}}function FF(e){let t=e.mp,r=Yc(t.slice(0,6).map(i=>i%6)),n=t.slice(0,5).map((i,a)=>(i>=6)*2**a).reduce((i,a)=>i+a),l=e.co.map((i,a)=>i*3**a).reduce((i,a)=>i+a),o=e.cp.indexOf(0);return[r+360*o,n+32*l]}function rm(){if(_e.phase1pm)return _e.phase1pm;let e=Array(6*12*12).fill().map(()=>Array(_n).fill(-1));for(let t=0;t<6;t++)for(let r=0;r<12;r++)for(let n=0;n<12;n++){if(r===n)continue;let l=t+6*r+72*n;for(let o=0;o<_n;o++){let i=em[o][t],a=v2[o][r],s=v2[o][n];i<6?e[l][o]=i+6*a+72*s:e[l][o]=i-6+6*s+72*a}}return _e.phase1pm=e}function nm(){if(_e.phase1pcm)return _e.phase1pcm;let e=rm(),t=Array(e.length*3).fill().map(()=>Array(_n).fill(-1));for(let r=0;r<e.length;r++)for(let n=0;n<_n;n++){let l=e[r][n];t[r][n]=l+6*12*12*A2[n],t[r+6*12*12][n]=l+6*12*12*((A2[n]+1)%3),t[r+2*6*12*12][n]=l+6*12*12*((A2[n]+2)%3)}return _e.phase1pcm=t}function DF(){if(_e.phase1p2cp)return _e.phase1p2cp;let e=rm(),t=nm(),r=new Int8Array((6*12*12)**2*3);r.fill(-1);let n=[0,1,2,3,4,5].map(o=>o+6*o+72*(o+6));for(let o=0;o<6;o++)for(let i=0;i<6;i++)o!==i&&(r[n[o]+864*n[i]]=0);let l=0;for(;;){let o=!1;for(let i=0;i<r.length;i++){if(r[i]!==l)continue;let a=i%864,s=Math.floor(i/864);for(let f=0;f<_n;f++){let u=a,p=s;for(let g=1;g<=2;g++){u=e[u][f],p=t[p][f];let c=u+864*p;r[c]===-1&&(o=!0,r[c]=l+1)}}}if(!o)break;l++}return _e.phase1p2cp=r}function lm(){if(_e.phase2pm)return _e.phase2pm;let e=Array(1440).fill().map(()=>Array(Pa));for(let t=0;t<360;t++){let r=Na(t,6);for(let n=0;n<6;n++)r[n+6]=r[n]+6;for(let n=0;n<Pa;n++){let l=En(r,Ol[n].mp),o=Yc(l.slice(0,6).map(i=>i%6));for(let i=0;i<4;i++){let a=Ol[n].cp[i];e[t+360*a][n]=o+360*i}}}return _e.phase2pm=e}function om(){if(_e.phase2om)return _e.phase2om;let e=Array(32*81).fill().map(()=>Array(Pa));for(let t=0;t<32;t++){let r=[0,1,2,3,4].map(l=>t>>l&1);r[5]=r.reduce((l,o)=>l^o);let n=[];for(let l=0;l<6;l++)n[l]=l+6*r[l],n[l+6]=l+6*(r[l]^1);for(let l=0;l<81;l++){let o=[0,1,2,3].map(i=>Math.floor(l/3**i)%3);for(let i=0;i<Pa;i++){let s=En(n,Ol[i].mp).slice(0,5).map(g=>+(g>=6)),f=0;for(let g=0;g<5;g++)f+=s[g]<<g;let u=o.map((g,c)=>(g+Ol[i].co[c])%3),p=0;for(let g=0;g<4;g++)p+=u[g]*3**g;e[t+32*l][i]=f+32*p}}}return _e.phase2om=e}function AF(){return _e.phase2pp?_e.phase2pp:_e.phase2pp=im(lm(),[0])}function yF(){return _e.phase2op?_e.phase2op:_e.phase2op=im(om(),[0])}function im(e,t){let r=e.length,n=e[0].length,l=Array(r).fill(-1),o=t.slice(),i=[],a=0;for(;o.length>0;){i.length=0;for(let s of o)if(l[s]===-1){l[s]=a;for(let f=0;f<n;f++){let u=e[s][f];for(;u!==s;)i.push(u),u=e[u][f]}}[o,i]=[i,o],a+=1}return l}function*vF(e,t,r,n){let l=e.length,o=0;for(let i=0;i<l;i++)o=Math.max(o,r[i][e[i]]);for(;o<=n;)yield*am(e,t,r,o,-1),o++}function*am(e,t,r,n,l){let o=e.length,i=t[0][0].length,a=0;for(let s=0;s<o;s++)a=Math.max(a,r[s][e[s]]);if(!(a>n)){if(n===0){yield[];return}if(!(a===0&&n===1))for(let s=0;s<i;s++){if(s===l||s<l&&$c(s,l))continue;let f=e.slice();for(let p=0;p<o;p++)f[p]=t[p][e[p]][s];let u=1;for(;e.some((p,g)=>e[g]!==f[g]);){let p=am(f,t,r,n-1,s);for(;;){let{value:g,done:c}=p.next();if(c)break;yield[[s,u]].concat(g)}for(let g=0;g<o;g++)f[g]=t[g][f[g]][s];u++}}}}async function xF(){return cF(await SF,!1)}var NS,PS,MS,tF,rF,nF,lF,oF,iF,aF,sF,Ol,fF,_n,Pa,dF,em,RF,v2,A2,Jc,S2,Rr,_e,SF,sm=y(()=>{\\\"use strict\\\";vt();[NS,PS]=(()=>{let e=new Int8Array(49152),t=new Int8Array(4096*12);for(let l=0;l<4096;l++)for(let o=0,i=0;o<12;o++)(l>>>o&1)!==0&&(e[o<<12|l]=i,t[i<<12|l]=o,i++);function r(l){let o=4095,i=19958400,a=0;for(let s=0;s<10;s++){let f=l[s];a+=e[o|f<<12]*i,o&=~(1<<f),i/=11-s}return a}function n(l,o){let i=4095,a=19958400,s=0;for(let f=0;f<10;f++){let u=l/a|0;l-=u*a,s^=u&1;let p=t[i|u<<12];o[f]=p,i&=~(1<<p),a/=11-f}return o[10]=t[i|s<<12],o[11]=t[i|(s^1)<<12],o}return[r,n]})();MS={co:[0,0,0,0],mp:wn(12),wp:wn(12),cp:[0,1,2,3]},tF={co:[2,0,0,0],mp:wn(12),wp:Wo([1,9,11],12),cp:[0,1,2,3]},rF={co:[0,2,0,0],mp:wn(12),wp:Wo([0,7,2],12),cp:[0,1,2,3]},nF={co:[0,0,2,0],mp:wn(12),wp:Wo([3,6,10],12),cp:[0,1,2,3]},lF={co:[0,0,0,2],mp:wn(12),wp:Wo([4,8,5],12),cp:[0,1,2,3]},oF={co:[2,0,0,0],mp:Hr([[1,9,11],[7,3,5]],12),wp:Hr([[1,9,11],[7,3,5]],12),cp:[0,2,3,1]},iF={co:[0,2,0,0],mp:Hr([[0,7,2],[6,1,8]],12),wp:Hr([[0,7,2],[6,1,8]],12),cp:[3,1,0,2]},aF={co:[0,0,2,0],mp:Hr([[3,6,10],[9,0,4]],12),wp:Hr([[3,6,10],[9,0,4]],12),cp:[1,3,2,0]},sF={co:[0,0,0,2],mp:Hr([[4,8,5],[10,2,11]],12),wp:Hr([[4,8,5],[10,2,11]],12),cp:[2,0,1,3]},Ol=[oF,iF,aF,sF,tF,rF,nF,lF],fF=[\\\"u\\\",\\\"l\\\",\\\"r\\\",\\\"b\\\",\\\"U\\\",\\\"L\\\",\\\"R\\\",\\\"B\\\"],_n=8,Pa=4;dF=[],em=[],RF=[],v2=[];for(let e=0;e<_n;e++){let t=Ol[e];dF[e]=t.mp,em[e]=y2(t.mp),RF[e]=t.wp,v2[e]=y2(t.wp)}A2=[0,0,0,0,2,2,2,2],Jc=[[14,-1,-1,11,11,10,9,8,8,7,7,6,4,5,5,3,4,4,2,3,4,3,-1,-1,0],[13,-1,-1,11,10,10,9,8,8,7,7,6,4,5,5,3,4,4,2,3,3,1,-1,-1,6]],S2=new Int8Array(55);for(let e=0;e<25;e++)S2[e]=Jc[0][e],S2[e+30]=Jc[1][e];Rr=new Int8Array(6*12*12*3);for(let e=0;e<6;e++)for(let t=0;t<12;t++)for(let r=0;r<12;r++){let n=e+6*t+72*r,l=2;t===e?l++:t===(e+6)%12&&l--,r===(e+6)%12?l++:r===e&&l--,Rr[n]=l,Rr[n+6*12*12]=Rr[n+2*6*12*12]=l+5}_e={};SF=we()});var fm={};Lt(fm,{randomMasterTetraminxScrambleString:()=>xF});var um=y(()=>{\\\"use strict\\\";sm()});function PF(e,t){e.ul=t.ul,e.ur=t.ur,e.dl=t.dl,e.dr=t.dr,e.ml=t.ml}function Dm(e,t){var r;t<<=2,t>24?(t=48-t,r=e.ul,e.ul=(~~e.ul>>t|e.ur<<24-t)&16777215,e.ur=(~~e.ur>>t|r<<24-t)&16777215):t>0?(r=e.ul,e.ul=(e.ul<<t|~~e.ur>>24-t)&16777215,e.ur=(e.ur<<t|~~r>>24-t)&16777215):t===0?(r=e.ur,e.ur=e.dl,e.dl=r,e.ml=1-e.ml):t>=-24?(t=-t,r=e.dl,e.dl=(e.dl<<t|~~e.dr>>24-t)&16777215,e.dr=(e.dr<<t|~~r>>24-t)&16777215):t<-24&&(t=48+t,r=e.dl,e.dl=(~~e.dl>>t|e.dr<<24-t)&16777215,e.dr=(~~e.dr>>t|r<<24-t)&16777215)}function MF(e){var t,r,n,l,o;for(n=0,e.arr[0]=Yt(e,0),l=1;l<24;++l)Yt(e,l)!==e.arr[n]&&(e.arr[++n]=Yt(e,l));for(o=0,t=0;t<16;++t)for(r=t+1;r<16;++r)e.arr[t]>e.arr[r]&&(o^=1);return o}function IF(e){var t,r,n,l;return l=e.ur&1118481,l|=~~l>>3,l|=~~l>>6,l=l&15|~~l>>12&48,n=e.ul&1118481,n|=~~n>>3,n|=~~n>>6,n=n&15|~~n>>12&48,r=e.dr&1118481,r|=~~r>>3,r|=~~r>>6,r=r&15|~~r>>12&48,t=e.dl&1118481,t|=~~t>>3,t|=~~t>>6,t=t&15|~~t>>12&48,Ko(MF(e)<<24|n<<18|l<<12|t<<6|r)}function OF(e,t){var r,n;for(r=0;r<8;++r)e.prm[r]=~~(~~Yt(e,r*3+1)>>1<<24)>>24;for(t.cornperm=Vo(e.prm),t.topEdgeFirst=Yt(e,0)===Yt(e,1),r=t.topEdgeFirst?2:0,n=0;n<4;r+=3,++n)e.prm[n]=~~(~~Yt(e,r)>>1<<24)>>24;for(t.botEdgeFirst=Yt(e,12)===Yt(e,13),r=t.botEdgeFirst?14:12;n<8;r+=3,++n)e.prm[n]=~~(~~Yt(e,r)>>1<<24)>>24;t.edgeperm=Vo(e.prm),t.ml=e.ml}function Yt(e,t){var r;return t<6?r=~~e.ul>>(5-t<<2):t<12?r=~~e.ur>>(11-t<<2):t<18?r=~~e.dl>>(17-t<<2):r=~~e.dr>>(23-t<<2),~~((r&15)<<24)>>24}function b2(e,t,r){t<6?(e.ul&=~(15<<(5-t<<2)),e.ul|=r<<(5-t<<2)):t<12?(e.ur&=~(15<<(11-t<<2)),e.ur|=r<<(11-t<<2)):t<18?(e.dl&=~(15<<(17-t<<2)),e.dl|=r<<(17-t<<2)):(e.dr&=~(15<<(23-t<<2)),e.dr|=r<<(23-t<<2))}function z2(){this.arr=[],this.prm=[]}async function TF(){let e=await we();var t,r,n,l,o,i,a,s,f;for(t=new z2,n=Tl[e(3678)],o=19088743<<1|286331153,l=19088743<<1,a=i=8,r=0;r<24;r++)(n>>r&1)===0?(s=e(i)<<2,b2(t,23-r,l>>s&15),f=(1<<s)-1,l=(l&f)+(l>>4&~f),--i):(s=e(a)<<2,b2(t,23-r,o>>s&15),b2(t,22-r,o>>s&15),f=(1<<s)-1,o=(o&f)+(o>>4&~f),--a,++r);return t.ml=e(2),t}function GF(){}function WF(e){var t,r,n,l,o,i;for(PF(e.Search_d,e.Search_c),n=0;n<e.Search_length1;++n)Dm(e.Search_d,e.Search_move[n]);for(OF(e.Search_d,e.Search_sq),r=e.Search_sq.edgeperm,t=e.Search_sq.cornperm,o=e.Search_sq.ml,i=Math.max(xe[e.Search_sq.edgeperm<<1|o],xe[e.Search_sq.cornperm<<1|o]),n=i;n<e.Search_maxlen2;++n)if(Ia(e,r,t,e.Search_sq.topEdgeFirst,e.Search_sq.botEdgeFirst,o,n,e.Search_length1,0)){for(l=0;l<n;++l)Dm(e.Search_d,e.Search_move[e.Search_length1+l]);return e.Search_sol_string=KF(e,n+e.Search_length1),!0}return!1}function KF(e,t){for(var r=\\\"\\\",n=0,l=0,o=t-1;o>=0;o--){var i=e.Search_move[o];i>0?(i=12-i,n=i>6?i-12:i):i<0?(i=12+i,l=i>6?i-12:i):(n===0&&l===0?r+=\\\" / \\\":r+=`(${n}, ${l}) / `,n=l=0)}return(n!==0||l!==0)&&(r+=`(${n}, ${l})`),r}function Ma(e,t,r,n,l,o){var i,a,s;if(r===0&&n<4)return n===0&&WF(e);if(o!==0&&(s=Oa[t],a=qe[s],a<n&&(e.Search_move[l]=0,Ma(e,s,a,n-1,l+1,0))))return!0;if(s=t,o<=0){for(i=0;i+=qo[s],s=~~i>>4,i&=15,!(i>=12||(a=qe[s],a>n));)if(a<n&&(e.Search_move[l]=i,Ma(e,s,a,n-1,l+1,1)))return!0}if(s=t,o<=1){for(i=0;i+=jo[s],s=~~i>>4,i&=15,!(i>=6||(a=qe[s],a>n));)if(a<n&&(e.Search_move[l]=-i,Ma(e,s,a,n-1,l+1,2)))return!0}return!1}function Ia(e,t,r,n,l,o,i,a,s){var f,u,p,g,c,L,m;if(i===0&&!n&&l||s!==0&&n===l&&(p=Ho[t],u=Ho[r],xe[p<<1|1-o]<i&&xe[u<<1|1-o]<i&&(e.Search_move[a]=0,Ia(e,p,u,n,l,1-o,i-1,a+1,0))))return!0;if(s<=0)for(m=!n,p=m?Cn[t]:t,u=m?r:Cn[r],g=m?1:2,c=xe[p<<1|o],L=xe[u<<1|o];g<12&&c<=i&&c<=i;){if(c<i&&L<i&&(e.Search_move[a]=g,Ia(e,p,u,m,l,o,i-1,a+1,1)))return!0;m=!m,m?(p=Cn[p],c=xe[p<<1|o],g+=1):(u=Cn[u],L=xe[u<<1|o],g+=2)}if(s<=1)for(f=!l,p=f?zn[t]:t,u=f?r:zn[r],g=f?1:2,c=xe[p<<1|o],L=xe[u<<1|o];g<(i>3?6:12)&&c<=i&&c<=i;){if(c<i&&L<i&&(e.Search_move[a]=-g,Ia(e,p,u,n,f,o,i-1,a+1,2)))return!0;f=!f,f?(p=zn[p],c=xe[p<<1|o],g+=1):(u=zn[u],L=xe[u<<1|o],g+=2)}return!1}function QF(e,t){var r;for(e.Search_c=t,r=IF(t),e.Search_length1=qe[r];e.Search_length1<100&&(e.Search_maxlen2=Math.min(31-e.Search_length1,17),!Ma(e,r,qe[r],e.Search_length1,0,-1));++e.Search_length1);return e.Search_sol_string}function vm(){this.Search_move=[],this.Search_d=new z2,this.Search_sq=new xm}function jF(){}function qF(){Am||(Am=!0,Qo=[0,3,6,12,15,24,27,30,48,51,54,60,63],Tl=[],qe=[],qo=[],jo=[],Oa=[],XF())}function VF(e){var t,r;t=0,r=0;do(e.bottom&2048)===0?(t+=1,e.bottom=e.bottom<<1):(t+=2,e.bottom=e.bottom<<2^12291),r=1-r;while((Nn(e.bottom&63)&1)!==0);return(Nn(e.bottom)&2)===0&&(e.Shape_parity^=r),t}function E2(e){var t;return t=bm(Tl,e.top<<12|e.bottom)<<1|e.Shape_parity,t}function w2(e,t){e.Shape_parity=t&1,e.top=Tl[~~t>>1],e.bottom=e.top&4095,e.top>>=12}function HF(e){var t,r;t=0,r=0;do(e.top&2048)===0?(t+=1,e.top=e.top<<1):(t+=2,e.top=e.top<<2^12291),r=1-r;while((Nn(e.top&63)&1)!==0);return(Nn(e.top)&2)===0&&(e.Shape_parity^=r),t}function Sm(){}function Ko(e){var t;return t=bm(Tl,e&16777215)<<1|~~e>>24,t}function XF(){var e,t,r,n,l,o,i,a,s,f,u,p,g,c,L,m;for(e=0,i=0;i<28561;++i)o=Qo[i%13],r=Qo[~~(i/13)%13],p=Qo[~~(~~(i/13)/13)%13],u=Qo[~~(~~(~~(i/13)/13)/13)],g=u<<18|p<<12|r<<6|o,Nn(g)===16&&(Tl[e++]=g);for(f=new Sm,i=0;i<7356;++i)w2(f,i),qo[i]=HF(f),qo[i]|=E2(f)<<4,w2(f,i),jo[i]=VF(f),jo[i]|=E2(f)<<4,w2(f,i),m=f.top&63,c=Nn(m),L=Nn(f.bottom&4032),f.Shape_parity^=1&~~(c&L)>>1,f.top=f.top&4032|~~f.bottom>>6&63,f.bottom=f.bottom&63|m<<6,Oa[i]=E2(f);for(i=0;i<7536;++i)qe[i]=-1;for(qe[Ko(14378715)]=0,qe[Ko(31157686)]=0,qe[Ko(23967451)]=0,qe[Ko(7191990)]=0,n=4,l=0,t=-1;n!==l;)for(l=n,++t,i=0;i<7536;++i)if(qe[i]===t){s=0,a=i;do a=qo[a],s+=a&15,a>>=4,qe[a]===-1&&(++n,qe[a]=t+1);while(s!==12);s=0,a=i;do a=jo[a],s+=a&15,a>>=4,qe[a]===-1&&(++n,qe[a]=t+1);while(s!==12);a=Oa[i],qe[a]===-1&&(++n,qe[a]=t+1)}}function ZF(){}function JF(){if(!ym){ym=!0,xe=[],Ho=[],Cn=[],zn=[],Um=[1,1,2,6,24,120,720,5040],kn=[];for(var e=0;e<12;++e)kn[e]=[];YF()}}function xm(){}function Vo(e){var t,r,n,l;for(r=0,l=1985229328,t=0;t<7;++t)n=e[t]<<2,r=(8-t)*r+(~~l>>n&7),l-=286331152<<n;return r&65535}function YF(){var e,t,r,n,l,o,i,a,s,f,u,p,g;for(l=0;l<12;++l)for(kn[l][0]=1,kn[l][l]=1,s=1;s<l;++s)kn[l][s]=kn[l-1][s-1]+kn[l-1][s];for(p=[],l=0;l<40320;++l)_2(p,l),g=p[2],p[2]=p[4],p[4]=g,g=p[3],p[3]=p[5],p[5]=g,Ho[l]=Vo(p),_2(p,l),g=p[0],p[0]=p[1],p[1]=p[2],p[2]=p[3],p[3]=g,Cn[l]=Vo(p),_2(p,l),g=p[4],p[4]=p[5],p[5]=p[6],p[6]=p[7],p[7]=g,zn[l]=Vo(p);for(l=0;l<80640;++l)xe[l]=-1;for(xe[0]=0,t=0,r=1;r<80640;){a=t>=11,n=a?-1:t,e=a?t:-1,++t;e:for(l=0;l<80640;++l)if(xe[l]===n){if(o=~~l>>1,u=l&1,i=Ho[o]<<1|1-u,xe[i]===e&&(++r,xe[a?l:i]=~~(t<<24)>>24,a))continue e;for(i=o,f=0;f<4;++f)if(i=Cn[i],xe[i<<1|u]===e&&(++r,xe[a?l:i<<1|u]=~~(t<<24)>>24,a))continue e;for(f=0;f<4;++f)if(i=zn[i],xe[i<<1|u]===e&&(++r,xe[a?l:i<<1|u]=~~(t<<24)>>24,a))continue e}}}function _2(e,t){var r,n,l,o,i;for(i=1985229328,r=0;r<7;++r)l=Um[7-r],o=~~(t/l),t-=o*l,o<<=2,e[r]=~~((~~i>>o&7)<<24)>>24,n=(1<<o)-1,i=(i&n)+(~~i>>4&~n);e[7]=~~(i<<24)>>24}function $F(){}function Nn(e){return e-=~~e>>1&1431655765,e=(~~e>>2&858993459)+(e&858993459),e=(~~e>>4)+e&252645135,e+=~~e>>8,e+=~~e>>16,e&63}function bm(e,t){var r,n,l,o;for(n=0,r=e.length-1;n<=r;)if(l=n+(~~(r-n)>>1),o=e[l],o<t)n=l+1;else if(o>t)r=l-1;else return l;return-n-1}async function lD(){return(await nD()).scramble_string}var ke,Am,jo,Tl,qe,qo,Oa,Qo,ym,zn,kn,xe,Cn,Ho,Um,k2,eD,tD,rD,nD,Em=y(()=>{\\\"use strict\\\";vt();ke=z2.prototype=GF.prototype;ke.dl=10062778;ke.dr=14536702;ke.ml=0;ke.ul=70195;ke.ur=4544119;ke=vm.prototype=jF.prototype;ke.Search_c=null;ke.Search_length1=0;ke.Search_maxlen2=0;ke.Search_sol_string=null;Am=!1;ke=Sm.prototype=ZF.prototype;ke.bottom=0;ke.Shape_parity=0;ke.top=0;ym=!1;ke=xm.prototype=$F.prototype;ke.botEdgeFirst=!1;ke.cornperm=0;ke.edgeperm=0;ke.ml=0;ke.topEdgeFirst=!1;k2=!1,eD=function(e,t,r){k2||(qF(),JF()),r&&r(\\\"Done initializing Square-1.\\\"),k2=!0,e?.()},tD=async function(){return k2||eD(),TF()},rD=function(e){var t=new vm;return QF(t,e)},nD=async function(){var e=await tD(),t=rD(e);return{state:e,scramble_string:t}}});var wm={};Lt(wm,{getRandomSquare1ScrambleString:()=>lD});var _m=y(()=>{\\\"use strict\\\";Em()});var O2=Symbol(\\\"Comlink.proxy\\\"),Gm=Symbol(\\\"Comlink.endpoint\\\"),Wm=Symbol(\\\"Comlink.releaseProxy\\\"),Wa=Symbol(\\\"Comlink.thrown\\\"),T2=e=>typeof e==\\\"object\\\"&&e!==null||typeof e==\\\"function\\\",Km={canHandle:e=>T2(e)&&e[O2],serialize(e){let{port1:t,port2:r}=new MessageChannel;return Gl(e,t),[r,[r]]},deserialize(e){return e.start(),qm(e)}},Qm={canHandle:e=>T2(e)&&Wa in e,serialize({value:e}){let t;return e instanceof Error?t={isError:!0,value:{message:e.message,name:e.name,stack:e.stack}}:t={isError:!1,value:e},[t,[]]},deserialize(e){throw e.isError?Object.assign(new Error(e.value.message),e.value):e.value}},G2=new Map([[\\\"proxy\\\",Km],[\\\"throw\\\",Qm]]);function Gl(e,t=self){t.addEventListener(\\\"message\\\",function r(n){if(!n||!n.data)return;let{id:l,type:o,path:i}=Object.assign({path:[]},n.data),a=(n.data.argumentList||[]).map(Xr),s;try{let f=i.slice(0,-1).reduce((p,g)=>p[g],e),u=i.reduce((p,g)=>p[g],e);switch(o){case\\\"GET\\\":s=u;break;case\\\"SET\\\":f[i.slice(-1)[0]]=Xr(n.data.value),s=!0;break;case\\\"APPLY\\\":s=u.apply(f,a);break;case\\\"CONSTRUCT\\\":{let p=new u(...a);s=Xm(p)}break;case\\\"ENDPOINT\\\":{let{port1:p,port2:g}=new MessageChannel;Gl(e,g),s=Hm(p,[p])}break;case\\\"RELEASE\\\":s=void 0;break;default:return}}catch(f){s={value:f,[Wa]:0}}Promise.resolve(s).catch(f=>({value:f,[Wa]:0})).then(f=>{let[u,p]=Qa(f);t.postMessage(Object.assign(Object.assign({},u),{id:l}),p),o===\\\"RELEASE\\\"&&(t.removeEventListener(\\\"message\\\",r),W2(t))})}),t.start&&t.start()}function jm(e){return e.constructor.name===\\\"MessagePort\\\"}function W2(e){jm(e)&&e.close()}function qm(e,t){return Ka(e,[],t)}function Xo(e){if(e)throw new Error(\\\"Proxy has been released and is not useable\\\")}function Ka(e,t=[],r=function(){}){let n=!1,l=new Proxy(r,{get(o,i){if(Xo(n),i===Wm)return()=>Pn(e,{type:\\\"RELEASE\\\",path:t.map(a=>a.toString())}).then(()=>{W2(e),n=!0});if(i===\\\"then\\\"){if(t.length===0)return{then:()=>l};let a=Pn(e,{type:\\\"GET\\\",path:t.map(s=>s.toString())}).then(Xr);return a.then.bind(a)}return Ka(e,[...t,i])},set(o,i,a){Xo(n);let[s,f]=Qa(a);return Pn(e,{type:\\\"SET\\\",path:[...t,i].map(u=>u.toString()),value:s},f).then(Xr)},apply(o,i,a){Xo(n);let s=t[t.length-1];if(s===Gm)return Pn(e,{type:\\\"ENDPOINT\\\"}).then(Xr);if(s===\\\"bind\\\")return Ka(e,t.slice(0,-1));let[f,u]=I2(a);return Pn(e,{type:\\\"APPLY\\\",path:t.map(p=>p.toString()),argumentList:f},u).then(Xr)},construct(o,i){Xo(n);let[a,s]=I2(i);return Pn(e,{type:\\\"CONSTRUCT\\\",path:t.map(f=>f.toString()),argumentList:a},s).then(Xr)}});return l}function Vm(e){return Array.prototype.concat.apply([],e)}function I2(e){let t=e.map(Qa);return[t.map(r=>r[0]),Vm(t.map(r=>r[1]))]}var K2=new WeakMap;function Hm(e,t){return K2.set(e,t),e}function Xm(e){return Object.assign(e,{[O2]:!0})}function Qa(e){for(let[t,r]of G2)if(r.canHandle(e)){let[n,l]=r.serialize(e);return[{type:\\\"HANDLER\\\",name:t,value:n},l]}return[{type:\\\"RAW\\\",value:e},K2.get(e)||[]]}function Xr(e){switch(e.type){case\\\"HANDLER\\\":return G2.get(e.name).deserialize(e.value);case\\\"RAW\\\":return e.value}}function Pn(e,t,r){return new Promise(n=>{let l=Zm();e.addEventListener(\\\"message\\\",function o(i){!i.data||!i.data.id||i.data.id!==l||(e.removeEventListener(\\\"message\\\",o),n(i.data))}),e.start&&e.start(),e.postMessage(Object.assign({id:l},t),r)})}function Zm(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join(\\\"-\\\")}function Jm(e){let t=new WeakMap;return{postMessage:e.postMessage.bind(e),addEventListener:(r,n)=>{let l=o=>{\\\"handleEvent\\\"in n?n.handleEvent({data:o}):n({data:o})};e.on(\\\"message\\\",l),t.set(n,l)},removeEventListener:(r,n)=>{let l=t.get(n);!l||(e.off(\\\"message\\\",l),t.delete(n))},nodeWorker:e}}var Q2=Jm;var Ym=typeof globalThis.Worker>\\\"u\\\"&&typeof globalThis.WorkerNavigator>\\\"u\\\",$m=\\\"node:w-orker-_threa-ds\\\",eL=()=>$m.replace(/-/g,\\\"\\\");async function tL(){let{parentPort:e}=await import(eL()).catch();return Q2(e)}function j2(e){Ym?(async()=>Gl(e,await tL()))():Gl(e)}Xe();ar();yt();Xe();ar();vt();yt();me();me();var mo=class extends tn{constructor(r){super();this.metric=r}traverseAlg(r){let n=0;for(let l of r.childAlgNodes())n+=this.traverseAlgNode(l);return n}traverseGrouping(r){let n=r.alg;return this.traverseAlg(n)*Math.abs(r.amount)}traverseMove(r){return this.metric(r)}traverseCommutator(r){return 2*(this.traverseAlg(r.A)+this.traverseAlg(r.B))}traverseConjugate(r){return 2*this.traverseAlg(r.A)+this.traverseAlg(r.B)}traversePause(r){return 0}traverseNewline(r){return 0}traverseLineComment(r){return 0}};function Ru(e){return\\\"A\\\"<=e&&e<=\\\"Z\\\"}function iB(e){let t=e.family;return Ru(t[0])&&t[t.length-1]===\\\"v\\\"||t===\\\"x\\\"||t===\\\"y\\\"||t===\\\"z\\\"||t===\\\"T\\\"?0:1}function aB(e){return 1}function sB(e){let t=e.family;return Ru(t[0])&&t[t.length-1]===\\\"v\\\"||t===\\\"x\\\"||t===\\\"y\\\"||t===\\\"z\\\"||t===\\\"T\\\"?0:Math.abs(e.amount)}var Ks=new mo(iB),Qs=Ks.traverseAlg.bind(Ks),fB=new mo(aB),uB=Ks.traverseAlg.bind(fB),du=new mo(sB),pB=du.traverseAlg.bind(du);me();var js=class extends tn{traverseAlg(t){let r=0;for(let n of t.childAlgNodes())r+=this.traverseAlgNode(n);return r}traverseGrouping(t){return this.traverseAlg(t.alg)*Math.abs(t.amount)}traverseMove(t){return 1}traverseCommutator(t){return 2*(this.traverseAlg(t.A)+this.traverseAlg(t.B))}traverseConjugate(t){return 2*this.traverseAlg(t.A)+this.traverseAlg(t.B)}traversePause(t){return 1}traverseNewline(t){return 0}traverseLineComment(t){return 0}},hu=new js,gB=hu.traverseAlg.bind(hu);vt();var cB=2,mB=!0,LB=!1;function BB(e,t){let r=[];return t.forEach(function(n){let l=new B(n);if(l.amount!==1)throw new Error(\\\"SGS cannot handle def moves with an amount other than 1 yet.\\\");let o=e.identityTransformation();for(let i=1;o=o.applyMove(l),!o.isIdentityTransformation();i++)r.push({move:l.modified({amount:i}),transformation:o})}),r}var zt=class{constructor(t,r,n){this.kpuzzle=t;this.sgs=r;this.searchMoves=BB(this.kpuzzle,n??Object.keys(this.kpuzzle.definition.moves))}async solve(t,r=cB,n){let l=t.experimentalToTransformation();if(!l)throw new Error(\\\"distinguishable pieces are not supported in tremble solver yt\\\");let o=null,i=1e6,a=(s,f,u)=>{if(f===0){let p=this.sgsPhaseSolve(s,i);if(!p)return;let g=u.concat(p).experimentalSimplify({cancel:{puzzleSpecificModWrap:\\\"canonical-centered\\\"},puzzleSpecificSimplifyOptions:{quantumMoveOrder:n}}),c=Qs(g);(o===null||c<i)&&(LB&&(console.log(`New best (${c} moves): ${g.toString()}`),console.log(`Tremble moves are: ${u.toString()}`)),o=g,i=c);return}for(let p of this.searchMoves)a(s.applyTransformation(p.transformation),f-1,u.concat([p.move]))};for(let s=0;s<=r;s++)a(l,s,new E);if(o===null)throw new Error(\\\"SGS search failed.\\\");return o}sgsPhaseSolve(t,r){let n=new Bt,l=t;for(let o of this.sgs.ordering){let i=o.pieceOrdering,a=\\\"\\\",s=l.invert();for(let u=0;u<i.length;u++){let p=i[u],g=p.orbitName,c=p.permutationIdx;a+=` ${s.transformationData[g].permutation[c]} ${s.transformationData[g].orientation[c]}`}let f=o.lookup[a];if(!f)throw new Error(\\\"Missing algorithm in sgs or esgs?\\\");if(n.experimentalPushAlg(f.alg),n.experimentalNumAlgNodes()>=r)return null;if(l=l.applyTransformation(f.transformation),mB)for(let u=0;u<i.length;u++){let p=i[u],g=p.orbitName,c=p.permutationIdx;if(l.transformationData[g].permutation[c]!==c||l.transformationData[g].orientation[c]!==0)throw new Error(\\\"bad SGS :-(\\\")}}return n.toAlg()}};async function Ui(e,t){let r=await sr(),n=e.identityTransformation();for(let l of t.ordering){let o=r(Object.values(l.lookup));n=n.applyTransformation(o.transformation)}return n.toKState()}Vt();var ut=Ke(()=>Promise.resolve().then(()=>(Eu(),bu)));var EB=3,wu=null;async function _u(){return wu||(wu=(async()=>{let e=await(await ut).cachedData222();return new zt(await Ie[\\\"2x2x2\\\"].kpuzzle(),e,\\\"URFLBD\\\".split(\\\"\\\"))})())}async function ku(){await _u()}async function Zs(e){return Ee(),await(await _u()).solve(e,EB,()=>4)}async function wB(e,t,r,n){let l=await we();await Bu(r.stateData[t].pieces);let o=e.definition.orbits[t],i=r.stateData[t].orientation,a=0;for(let s=0;s<o.numPieces;s++){let f=l(o.numOrientations);i[s]=f,a+=f}n&&\\\"orientationSum\\\"in n&&(i[0]=((i[0]+n.orientationSum-a)%o.numOrientations+o.numOrientations)%o.numOrientations)}async function _B(){let e=await Ie[\\\"2x2x2\\\"].kpuzzle(),t=new pe(e,JSON.parse(JSON.stringify(e.startState().stateData)));return await wB(e,\\\"CORNERS\\\",t,{orientationSum:0}),t}async function zu(){return await Zs(await _B())}A0();bi();Vt();var H0=Ke(()=>Promise.resolve().then(()=>(Ig(),Mg)));var jR=[[null,\\\"x\\\",\\\"x2\\\",\\\"x'\\\",\\\"z\\\",\\\"z'\\\"],[null,\\\"y\\\",\\\"y2\\\",\\\"y'\\\"]];async function Og(){return(await H0).initialize()}async function X0(){return(await H0).random444Scramble()}async function Tg(){return ol(await X0(),jR)}bi();me();vt();function qR(e){switch(e){case 5:return 60;case 6:return 80;default:return 100}}var VR=[[\\\"U\\\",\\\"D\\\"],[\\\"L\\\",\\\"R\\\"],[\\\"F\\\",\\\"B\\\"]],Gg=new Map;function HR(e){let t=Gg.get(e);if(t)return t;let r=[];for(let n of VR){let l=[];r.push(l);for(let o of n){l.push(new k(o)),e>3&&l.push(new k(`${o}w`));for(let i=3;i<=e/2;i++)l.push(new k(`${o}w`,i))}}return Gg.set(e,r),r}async function Lr(e){let t=await we(),r=await sr(),n=r,l=HR(e),o=qR(e),i=new Bt,a=0,s=new Set;for(;i.experimentalNumAlgNodes()<o;){let f=t(3);f!==a&&s.clear(),a=f;let u=r(l[a]),p=u.toString();s.has(p)||(s.add(p),i.push(new B(u,n([1,2,-1]))))}return i.toAlg()}var XR=[[null,\\\"3Rw\\\",\\\"3Rw2\\\",\\\"3Rw'\\\",\\\"3Fw\\\",\\\"3Fw'\\\"],[null,\\\"3Dw\\\",\\\"3Dw2\\\",\\\"3Dw'\\\"]];async function Wg(){return ol(await Lr(5),XR)}me();ar();Vt();yt();Vt();var Ac=Ke(()=>Promise.resolve().then(()=>(Dc(),Fc)));var AS=Ke(()=>Promise.resolve().then(()=>(L2(),m2)));async function Pc(){return Ee(),new E(await(await Ac).randomFTOScrambleString())}yt();Vt();var Xc=Ke(()=>Promise.resolve().then(()=>(Hc(),Vc)));async function Zc(){return Ee(),(await Xc).getRandomKilominxScramble()}me();yt();Vt();var pm=Ke(()=>Promise.resolve().then(()=>(um(),fm)));async function gm(){return Ee(),new E(await(await pm).randomMasterTetraminxScrambleString())}Xe();yt();var UF=2,cm=null;async function bF(){return cm||(cm=(async()=>{let e=await(await ut).cachedSGSDataMegaminx();return new zt(await(await ut).cachedMegaminxKPuzzleWithoutMO(),e,[\\\"U\\\",\\\"R\\\",\\\"F\\\",\\\"L\\\",\\\"BR\\\",\\\"BL\\\",\\\"FR\\\",\\\"FL\\\",\\\"DR\\\",\\\"DL\\\",\\\"B\\\",\\\"D\\\"])})())}async function mm(e){Ee();let t=await bF(),r=JSON.parse(JSON.stringify(e.stateData));r.CENTERS.orientation=new Array(12).fill(0);let n=new pe(await(await ut).cachedMegaminxKPuzzleWithoutMO(),r);return await t.solve(n,UF,()=>5)}ar();yt();var EF=3,Lm=null;async function wF(){return Lm||(Lm=(async()=>{let e=await(await ut).sgsDataPyraminx();return new zt(await Ie.pyraminx.kpuzzle(),e,\\\"RLUB\\\".split(\\\"\\\"))})())}async function x2(e){return Ee(),await(await wF()).solve(e,EF,()=>3)}async function _F(){return Ee(),Ui(await Ie.pyraminx.kpuzzle(),await(await ut).sgsDataPyraminxFixedOrientation())}async function Bm(){return x2(await _F())}yt();Vt();var dm=Ke(()=>Promise.resolve().then(()=>(L2(),m2)));async function Rm(){return Ee(),(await dm).getRandomRediCubeScramble()}Xe();yt();var kF=3,hm=null;async function zF(){return hm||(hm=(async()=>{let e=await(await ut).sgsDataSkewb();return new zt(await(await ut).skewbKPuzzleWithoutMOCached(),e,\\\"RLUB\\\".split(\\\"\\\"))})())}function CF(e){return new pe(e.kpuzzle,{CORNERS:e.stateData.CORNERS,CENTERS:{pieces:e.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}})}async function U2(e){return Ee(),await(await zF()).solve(CF(e),kF,n=>n.family===\\\"y\\\"?4:3)}async function NF(){return Ui(await(await ut).skewbKPuzzleWithoutMOCached(),await(await ut).sgsDataSkewbFixedCorner())}async function Fm(){return U2(await NF())}me();Vt();var km=Ke(()=>Promise.resolve().then(()=>(_m(),wm)));async function zm(){return E.fromString(await(await km).getRandomSquare1ScrambleString())}var oD=1e3;pu(!0);var Pm=!0;function iD(e){Pm=e}function Cm(){return(typeof performance>\\\"u\\\"?Date:performance).now()}async function ze(e,t,r){if(!Pm)return t();let n=Cm(),l=t();l?.then&&await l;let o=Cm();return console.warn(`${e}${r?.isPrefetch?\\\" (prefetched)\\\":\\\"\\\"}: ${Math.round(o-n)}ms`),l}var C2=new Map,N2=null;async function Nm(e,t){switch(e){case\\\"222\\\":return ze(\\\"random222Scramble\\\",zu,{isPrefetch:t?.isPrefetch});case\\\"333\\\":case\\\"333oh\\\":case\\\"333ft\\\":return ze(\\\"random333Scramble\\\",dl,{isPrefetch:t?.isPrefetch});case\\\"333fm\\\":return ze(\\\"random333FewestMovesScramble\\\",Up);case\\\"333bf\\\":case\\\"333mb\\\":return ze(\\\"random333OrientedScramble\\\",xp);case\\\"444\\\":return ze(\\\"random444Scramble\\\",X0,{isPrefetch:t?.isPrefetch});case\\\"444bf\\\":return ze(\\\"random444OrientedScramble\\\",Tg);case\\\"555\\\":return ze(\\\"bigCubeScramble(5)\\\",Lr.bind(Lr,5));case\\\"555bf\\\":return ze(\\\"oriented555RandomMoves\\\",Wg);case\\\"666\\\":return ze(\\\"bigCubeScramble(6)\\\",Lr.bind(Lr,6));case\\\"777\\\":return ze(\\\"bigCubeScramble(7)\\\",Lr.bind(Lr,7));case\\\"skewb\\\":return ze(\\\"randomSkewbFixedCornerScramble\\\",Fm);case\\\"pyram\\\":return ze(\\\"randomPyraminxScrambleFixedOrientation\\\",Bm);case\\\"sq1\\\":return ze(\\\"getRandomSquare1Scramble\\\",zm,{isPrefetch:t?.isPrefetch});case\\\"fto\\\":return ze(\\\"randomFTOScramble\\\",Pc,{isPrefetch:t?.isPrefetch});case\\\"master_tetraminx\\\":return ze(\\\"randomMasterTetraminxScramble\\\",gm);case\\\"kilominx\\\":return ze(\\\"randomKilominxScramble\\\",Zc,{isPrefetch:t?.isPrefetch});case\\\"redi_cube\\\":return ze(\\\"randomRediCubeScramble\\\",Rm,{isPrefetch:t?.isPrefetch});default:throw new Error(`unsupported event: ${e}`)}}var P2=\\\"auto\\\",M2={initialize:async e=>{switch(e){case\\\"222\\\":return ze(\\\"preInitialize222\\\",ku);case\\\"333\\\":case\\\"333oh\\\":case\\\"333ft\\\":return ze(\\\"initialize333\\\",Sp);case\\\"444\\\":return ze(\\\"initialize444\\\",Og);default:throw new Error(`unsupported event: ${e}`)}},setScramblePrefetchLevel(e){P2=e},randomScrambleForEvent:async e=>{let t=C2.get(e);return t?C2.delete(e):t=Nm(e),P2!==\\\"none\\\"&&t.then(()=>{N2&&clearTimeout(N2),N2=setTimeout(()=>{C2.set(e,Nm(e,{isPrefetch:!0}))},P2===\\\"immediate\\\"?0:oD)}),t},randomScrambleStringForEvent:async e=>(await M2.randomScrambleForEvent(e)).toString(),solve333ToString:async e=>{let t=new pe(await Ie[\\\"3x3x3\\\"].kpuzzle(),e);return(await D0(t)).toString()},solve222ToString:async e=>{let t=new pe(await Ie[\\\"2x2x2\\\"].kpuzzle(),e);return(await Zs(t)).toString()},solveSkewbToString:async e=>{let t=new pe(await Ie.skewb.kpuzzle(),e);return(await U2(t)).toString()},solvePyraminxToString:async e=>{let t=new pe(await Ie.pyraminx.kpuzzle(),e);return(await x2(t)).toString()},solveMegaminxToString:async e=>{let t=new pe(await Ie.megaminx.kpuzzle(),e);return(await mm(t)).toString()},setDebugMeasurePerf:async e=>{iD(e)}};j2(M2);\\n\";"],
5
- "mappings": ";AAAO,IAAM,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;",
6
- "names": []
7
- }