cubing 0.25.2 → 0.25.3

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 (71) hide show
  1. package/dist/esm/{2x2x2.sgs.json-NUOQFJWU.js → 2x2x2.sgs.json-MMXKAIKZ.js} +2 -2
  2. package/dist/esm/{2x2x2.sgs.json-NUOQFJWU.js.map → 2x2x2.sgs.json-MMXKAIKZ.js.map} +0 -0
  3. package/dist/esm/{3d-dynamic-AKACURPM.js → 3d-dynamic-N4H7XJWX.js} +18 -16
  4. package/dist/esm/{3d-dynamic-AKACURPM.js.map → 3d-dynamic-N4H7XJWX.js.map} +2 -2
  5. package/dist/esm/{444-solver-GNQ5BHCL.js → 444-solver-PV2GUWP2.js} +3 -3
  6. package/dist/esm/{444-solver-GNQ5BHCL.js.map → 444-solver-PV2GUWP2.js.map} +0 -0
  7. package/dist/esm/bluetooth/index.js +1 -1
  8. package/dist/esm/{chunk-FZJDXPAH.js → chunk-5GJ5C7NZ.js} +11 -34
  9. package/dist/esm/chunk-5GJ5C7NZ.js.map +7 -0
  10. package/dist/esm/chunk-BEXHMXCT.js +9 -0
  11. package/dist/esm/chunk-BEXHMXCT.js.map +7 -0
  12. package/dist/esm/{chunk-KRL5KQQK.js → chunk-F5WNHV7V.js} +2 -2
  13. package/dist/esm/{chunk-KRL5KQQK.js.map → chunk-F5WNHV7V.js.map} +2 -2
  14. package/dist/esm/chunk-IVQ4ITE2.js +33 -0
  15. package/dist/esm/chunk-IVQ4ITE2.js.map +7 -0
  16. package/dist/esm/{chunk-T5KQKRR3.js → chunk-KJZNEDOV.js} +2 -2
  17. package/dist/esm/{chunk-T5KQKRR3.js.map → chunk-KJZNEDOV.js.map} +0 -0
  18. package/dist/esm/{chunk-SNWS6JXI.js → chunk-LMZIKLXW.js} +79 -26
  19. package/dist/esm/chunk-LMZIKLXW.js.map +7 -0
  20. package/dist/esm/{chunk-ASJ2DADD.js → chunk-NGA3FW7U.js} +2 -2
  21. package/dist/esm/{chunk-ASJ2DADD.js.map → chunk-NGA3FW7U.js.map} +0 -0
  22. package/dist/esm/{chunk-L3PZ4XAT.js → chunk-OH2FLVZM.js} +7 -2
  23. package/dist/esm/{chunk-L3PZ4XAT.js.map → chunk-OH2FLVZM.js.map} +2 -2
  24. package/dist/esm/{chunk-QMZKTP7F.js → chunk-QEDC2QTN.js} +2 -2
  25. package/dist/esm/{chunk-QMZKTP7F.js.map → chunk-QEDC2QTN.js.map} +0 -0
  26. package/dist/esm/{chunk-CYKV7QC5.js → chunk-UNROETIO.js} +2 -2
  27. package/dist/esm/{chunk-CYKV7QC5.js.map → chunk-UNROETIO.js.map} +0 -0
  28. package/dist/esm/{chunk-5O24MNND.js → chunk-WDJDRVZZ.js} +6 -3
  29. package/dist/esm/chunk-WDJDRVZZ.js.map +7 -0
  30. package/dist/esm/{fto.dynamic-A3AASYQ6.js → fto.dynamic-UHH65HEC.js} +2 -2
  31. package/dist/esm/{fto.dynamic-A3AASYQ6.js.map → fto.dynamic-UHH65HEC.js.map} +0 -0
  32. package/dist/esm/kilominx.kpuzzle.svg-7XJBOKFU.js +83 -0
  33. package/dist/esm/kilominx.kpuzzle.svg-7XJBOKFU.js.map +7 -0
  34. package/dist/esm/{megaminx.sgs.json-KKR4VPHV.js → megaminx.sgs.json-3ZEDZMWF.js} +3 -3
  35. package/dist/esm/{megaminx.sgs.json-KKR4VPHV.js.map → megaminx.sgs.json-3ZEDZMWF.js.map} +0 -0
  36. package/dist/esm/puzzle-geometry/index.js +1 -1
  37. package/dist/esm/puzzles/index.js +3 -1
  38. package/dist/esm/{pyraminx.sgs.json-X37XL7MA.js → pyraminx.sgs.json-5IA2F65U.js} +3 -3
  39. package/dist/esm/{pyraminx.sgs.json-X37XL7MA.js.map → pyraminx.sgs.json-5IA2F65U.js.map} +0 -0
  40. package/dist/esm/scramble/index.js +5 -3
  41. package/dist/esm/search/index.js +5 -3
  42. package/dist/esm/{entry-2KUJYJBJ.js → search-worker-js-entry-AXEFSQVG.js} +21 -17
  43. package/dist/esm/search-worker-js-entry-AXEFSQVG.js.map +7 -0
  44. package/dist/esm/search-worker-ts-entry-OOL7WATY.js +22 -0
  45. package/dist/esm/search-worker-ts-entry-OOL7WATY.js.map +7 -0
  46. package/dist/esm/{skewb.sgs.json-MWONK6HT.js → skewb.sgs.json-6NDFH63U.js} +3 -3
  47. package/dist/esm/{skewb.sgs.json-MWONK6HT.js.map → skewb.sgs.json-6NDFH63U.js.map} +0 -0
  48. package/dist/esm/twisty/index.js +3 -2
  49. package/dist/esm/twisty/index.js.map +2 -2
  50. package/dist/esm/{worker-inside-generated-string-OBSDMXAS.js → worker-inside-generated-string-CSXWVF2Y.js} +99 -24
  51. package/dist/esm/worker-inside-generated-string-CSXWVF2Y.js.map +7 -0
  52. package/dist/types/puzzles/events.d.ts +8 -0
  53. package/dist/types/puzzles/implementations/kilominx/index.d.ts +2 -0
  54. package/dist/types/puzzles/implementations/kilominx/kilominx.kpuzzle.svg.d.ts +1 -0
  55. package/dist/types/puzzles/index.d.ts +6 -11
  56. package/dist/types/search/inside/{entry.d.ts → search-worker-js-entry.d.ts} +0 -0
  57. package/dist/types/search/inside/{search-worker-entry-path-getter.d.ts → search-worker-ts-entry-path-getter.d.ts} +0 -0
  58. package/dist/types/search/inside/{search-worker-entry.d.ts → search-worker-ts-entry.d.ts} +0 -0
  59. package/dist/types/search/inside/worker-guard.d.ts +3 -0
  60. package/dist/types/search/worker-inside-generated-string.d.ts +1 -1
  61. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.d.ts +1 -0
  62. package/dist/types/vendor/comlink-everywhere/inside/index.d.ts +3 -1
  63. package/package.json +1 -1
  64. package/dist/esm/chunk-5O24MNND.js.map +0 -7
  65. package/dist/esm/chunk-FZJDXPAH.js.map +0 -7
  66. package/dist/esm/chunk-SNWS6JXI.js.map +0 -7
  67. package/dist/esm/entry-2KUJYJBJ.js.map +0 -7
  68. package/dist/esm/search-worker-entry-ZJAXYGSH.js +0 -18
  69. package/dist/esm/search-worker-entry-ZJAXYGSH.js.map +0 -7
  70. package/dist/esm/worker-inside-generated-string-OBSDMXAS.js.map +0 -7
  71. package/dist/types/search/esm-test-worker.d.ts +0 -3
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/cubing/search/worker-inside-generated-string.js"],
4
+ "sourcesContent": ["export const workerSource = \"var b2=Object.defineProperty;var Cc=e=>b2(e,\\\"__esModule\\\",{value:!0});var U=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>{Cc(e);for(var r in t)b2(e,r,{get:t[r],enumerable:!0})};var rs=(e,t,r)=>{if(!t.has(e))throw TypeError(\\\"Cannot \\\"+r)};var d=(e,t,r)=>(rs(e,t,\\\"read from private field\\\"),r?r.call(e):t.get(e)),ne=(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)},q=(e,t,r,n)=>(rs(e,t,\\\"write to private field\\\"),n?n.call(e,r):t.set(e,r),r),ns=(e,t,r,n)=>({set _(o){q(e,t,o,r)},get _(){return d(e,t,n)}}),S2=(e,t,r)=>(rs(e,t,\\\"access private method\\\"),r);var Zc,pl,Te,Kt=U(()=>{Zc=!1,pl=class{is(t){return this instanceof t}as(t){return this instanceof t?this:null}},Te=class extends pl{constructor(){super();Zc&&Object.defineProperty(this,\\\"_debugStr\\\",{get:()=>this.toString()})}get log(){return console.log.bind(console,this,this.toString())}}});function P2(e,t=!0){if(!t)return e;switch(e){case 1:return-1;case-1:return 1}}function ss(e,t){return t===-1?Array.from(e).reverse():e}function M2(e){return Array.from(e).reverse()}var V,Dt=U(()=>{(function(r){r[r.Forwards=1]=\\\"Forwards\\\",r[r.Backwards=-1]=\\\"Backwards\\\"})(V||(V={}))});var po,pn,N2,as=U(()=>{po=2147483647,pn=\\\"2^31 - 1\\\",N2=-2147483648});var _r,pt,fs=U(()=>{Qt();pt=class{constructor(){ne(this,_r,[])}push(t){d(this,_r).push(t)}experimentalPushAlg(t){for(let r of t.units())this.push(r)}experimentalNumUnits(){return d(this,_r).length}toAlg(){return new z(d(this,_r))}reset(){q(this,_r,[])}};_r=new WeakMap});var Cr,Pr,ml,Ge,mo=U(()=>{Qt();Kt();Dt();ml=class extends Te{constructor(t,r){super();ne(this,Cr,void 0);ne(this,Pr,void 0);q(this,Cr,ir(t)),q(this,Pr,ir(r))}get A(){return d(this,Cr)}get B(){return d(this,Pr)}isIdentical(t){let r=t.as(ml);return!!(r?.A.isIdentical(this.A)&&r?.B.isIdentical(this.B))}invert(){return new ml(d(this,Pr),d(this,Cr))}*experimentalExpand(t=V.Forwards,r){r??(r=1/0),r===0?yield t===V.Forwards?this:this.invert():t===V.Forwards?(yield*this.A.experimentalExpand(V.Forwards,r-1),yield*this.B.experimentalExpand(V.Forwards,r-1),yield*this.A.experimentalExpand(V.Backwards,r-1),yield*this.B.experimentalExpand(V.Backwards,r-1)):(yield*this.B.experimentalExpand(V.Forwards,r-1),yield*this.A.experimentalExpand(V.Forwards,r-1),yield*this.B.experimentalExpand(V.Backwards,r-1),yield*this.A.experimentalExpand(V.Backwards,r-1))}toString(){return`[${d(this,Cr).toString()}, ${d(this,Pr).toString()}]`}},Ge=ml;Cr=new WeakMap,Pr=new WeakMap});var mn,Ln,Ll,Oe,Lo=U(()=>{Qt();Kt();Dt();Ll=class extends Te{constructor(t,r){super();ne(this,mn,void 0);ne(this,Ln,void 0);q(this,mn,ir(t)),q(this,Ln,ir(r))}get A(){return d(this,mn)}get B(){return d(this,Ln)}isIdentical(t){let r=t.as(Ll);return!!(r?.A.isIdentical(this.A)&&r?.B.isIdentical(this.B))}invert(){return new Ll(d(this,mn),d(this,Ln).invert())}*experimentalExpand(t,r){r??(r=1/0),r===0?yield t===V.Forwards?this:this.invert():(yield*this.A.experimentalExpand(V.Forwards,r-1),yield*this.B.experimentalExpand(t,r-1),yield*this.A.experimentalExpand(V.Backwards,r-1))}toString(){return`[${this.A}: ${this.B}]`}},Oe=Ll;mn=new WeakMap,Ln=new WeakMap});var sr,us,Ft,Bo=U(()=>{Kt();Dt();us=class extends Te{constructor(t){super();ne(this,sr,void 0);if(t.includes(`\\n`)||t.includes(\\\"\\\\r\\\"))throw new Error(\\\"LineComment cannot contain newline\\\");q(this,sr,t)}get text(){return d(this,sr)}isIdentical(t){let r=t;return t.is(us)&&d(this,sr)===d(r,sr)}invert(){return this}*experimentalExpand(t=V.Forwards,r=1/0){yield this}toString(){return`//${d(this,sr)}`}},Ft=us;sr=new WeakMap});var Je,Ro=U(()=>{Kt();Dt();Je=class extends Te{toString(){return`\\n`}isIdentical(t){return t.is(Je)}invert(){return this}*experimentalExpand(t=V.Forwards,r=1/0){yield this}}});var Xe,Do=U(()=>{Kt();Dt();Xe=class extends Te{toString(){return\\\".\\\"}isIdentical(t){return t.is(Xe)}invert(){return this}*experimentalExpand(t=V.Forwards,r=1/0){yield this}}});function Bl(e,t){return e?parseInt(e):t}function gs(e){return new Rl().parseAlg(e)}function G2(e){return new Rl().parseMove(e)}function O2(e){return new Rl().parseQuantumMove(e)}function $e(e,t,r){let n=e;return n.startCharIndex=t,n.endCharIndex=r,n}function I2(e,t){return\\\"startCharIndex\\\"in e&&(t.startCharIndex=e.startCharIndex),\\\"endCharIndex\\\"in e&&(t.endCharIndex=e.endCharIndex),t}var T2,Jc,Xc,$c,ep,tp,ot,O,Rl,cs=U(()=>{Qt();fs();mo();Lo();dl();Bo();jt();Ro();Do();T2=/^(\\\\d+)?('?)/,Jc=/^[_\\\\dA-Za-z]/,Xc=/^((([1-9]\\\\d*)-)?([1-9]\\\\d*))?([_A-Za-z]+)?/,$c=/^[^\\\\n]*/,ep=/^(-?\\\\d+), ?/,tp=/^(-?\\\\d+)\\\\)/;Rl=class{constructor(){ne(this,ot,\\\"\\\");ne(this,O,0)}parseAlg(t){q(this,ot,t),q(this,O,0);let r=this.parseAlgWithStopping([]);return this.mustBeAtEndOfInput(),r}parseMove(t){q(this,ot,t),q(this,O,0);let r=this.parseMoveImpl();return this.mustBeAtEndOfInput(),r}parseQuantumMove(t){q(this,ot,t),q(this,O,0);let r=this.parseQuantumMoveImpl();return this.mustBeAtEndOfInput(),r}mustBeAtEndOfInput(){if(d(this,O)!==d(this,ot).length)throw new Error(\\\"parsing unexpectedly ended early\\\")}parseAlgWithStopping(t){let r=d(this,O),n=d(this,O),o=new pt,l=!1,i=s=>{if(l)throw new Error(`Unexpected character at index ${s}. Are you missing a space?`)};e:for(;d(this,O)<d(this,ot).length;){let s=d(this,O);if(t.includes(d(this,ot)[d(this,O)]))return $e(o.toAlg(),r,n);if(this.tryConsumeNext(\\\" \\\")){l=!1,o.experimentalNumUnits()===0&&(r=d(this,O));continue e}else if(Jc.test(d(this,ot)[d(this,O)])){i(s);let f=this.parseMoveImpl();o.push(f),l=!0,n=d(this,O);continue e}else if(this.tryConsumeNext(\\\"(\\\")){i(s);let f=this.tryRegex(ep);if(f){let a=f[1],g=d(this,O),c=this.parseRegex(tp),u=$e(new B(new P(\\\"U_SQ_\\\"),parseInt(a)),s+1,s+1+a.length),p=$e(new B(new P(\\\"D_SQ_\\\"),parseInt(c[1])),g,d(this,O)-1),m=$e(new z([u,p]),s+1,d(this,O)-1);o.push($e(new gt(m),s,d(this,O))),l=!0,n=d(this,O);continue e}else{let a=this.parseAlgWithStopping([\\\")\\\"]);this.mustConsumeNext(\\\")\\\");let g=this.parseAmount();o.push($e(new gt(a,g),s,d(this,O))),l=!0,n=d(this,O);continue e}}else if(this.tryConsumeNext(\\\"[\\\")){i(s);let f=this.parseAlgWithStopping([\\\",\\\",\\\":\\\"]),a=this.popNext(),g=this.parseAlgWithStopping([\\\"]\\\"]);switch(this.mustConsumeNext(\\\"]\\\"),a){case\\\":\\\":o.push($e(new Oe(f,g),s,d(this,O))),l=!0,n=d(this,O);continue e;case\\\",\\\":o.push($e(new Ge(f,g),s,d(this,O))),l=!0,n=d(this,O);continue e;default:throw\\\"unexpected parsing error\\\"}}else if(this.tryConsumeNext(`\\n`)){o.push($e(new Je,s,d(this,O))),l=!1,n=d(this,O);continue e}else if(this.tryConsumeNext(\\\"/\\\"))if(this.tryConsumeNext(\\\"/\\\")){i(s);let[f]=this.parseRegex($c);o.push($e(new Ft(f),s,d(this,O))),l=!1,n=d(this,O);continue e}else{o.push($e(new B(\\\"_SLASH_\\\"),s,d(this,O))),l=!0,n=d(this,O);continue e}else if(this.tryConsumeNext(\\\".\\\")){i(s),o.push($e(new Xe,s,d(this,O))),l=!0,n=d(this,O);continue e}else throw new Error(`Unexpected character: ${this.popNext()}`)}if(d(this,O)!==d(this,ot).length)throw new Error(\\\"did not finish parsing?\\\");if(t.length>0)throw new Error(\\\"expected stopping\\\");return $e(o.toAlg(),r,n)}parseQuantumMoveImpl(){let[,,,t,r,n]=this.parseRegex(Xc);return new P(n,Bl(r,void 0),Bl(t,void 0))}parseMoveImpl(){let t=d(this,O);if(this.tryConsumeNext(\\\"/\\\"))return $e(new B(\\\"_SLASH_\\\"),t,d(this,O));let r=this.parseQuantumMoveImpl(),[n,o]=this.parseAmountAndTrackEmptyAbsAmount(),l=this.parseMoveSuffix();if(l){if(n<0)throw new Error(\\\"uh-oh\\\");if((l===\\\"++\\\"||l===\\\"--\\\")&&n!==1)throw new Error(\\\"Pochmann ++ or -- moves cannot have an amount other than 1.\\\");if((l===\\\"++\\\"||l===\\\"--\\\")&&!o)throw new Error(\\\"Pochmann ++ or -- moves cannot have an amount written as a number.\\\");if((l===\\\"+\\\"||l===\\\"-\\\")&&o)throw new Error(\\\"Clock dial moves must have an amount written as a natural number followed by + or -.\\\");l.startsWith(\\\"+\\\")&&(r=r.modified({family:`${r.family}_${l===\\\"+\\\"?\\\"PLUS\\\":\\\"PLUSPLUS\\\"}_`})),l.startsWith(\\\"-\\\")&&(r=r.modified({family:`${r.family}_${l===\\\"-\\\"?\\\"PLUS\\\":\\\"PLUSPLUS\\\"}_`}),n*=-1)}return $e(new B(r,n),t,d(this,O))}parseMoveSuffix(){return this.tryConsumeNext(\\\"+\\\")?this.tryConsumeNext(\\\"+\\\")?\\\"++\\\":\\\"+\\\":this.tryConsumeNext(\\\"-\\\")?this.tryConsumeNext(\\\"-\\\")?\\\"--\\\":\\\"-\\\":null}parseAmountAndTrackEmptyAbsAmount(){let t=d(this,O),[,r,n]=this.parseRegex(T2);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[Bl(r,1)*(n===\\\"'\\\"?-1:1),!r]}parseAmount(){let t=d(this,O),[,r,n]=this.parseRegex(T2);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 Bl(r,1)*(n===\\\"'\\\"?-1:1)}parseRegex(t){let r=t.exec(this.remaining());if(r===null)throw new Error(\\\"internal parsing error\\\");return q(this,O,d(this,O)+r[0].length),r}tryRegex(t){let r=t.exec(this.remaining());return r===null?null:(q(this,O,d(this,O)+r[0].length),r)}remaining(){return d(this,ot).slice(d(this,O))}popNext(){let t=d(this,ot)[d(this,O)];return ns(this,O)._++,t}tryConsumeNext(t){return d(this,ot)[d(this,O)]===t?(ns(this,O)._++,!0):!1}mustConsumeNext(t){let r=this.popNext();if(r!==t)throw new Error(`expected \\\\`${t}\\\\` while parsing, encountered ${r}`);return r}};ot=new WeakMap,O=new WeakMap});function Dl(e){W2.has(e)||(console.warn(e),W2.add(e))}var W2,ps=U(()=>{W2=new Set});var Bn,ms=U(()=>{Dt();as();Bn=class{constructor(t,r=1){if(this.quantum=t,this.amount=r,!Number.isInteger(this.amount)||this.amount<N2||this.amount>po)throw new Error(`Unit amount absolute value must be a non-negative integer from ${pn} to ${pn}.`)}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),o=P2(t,this.amount<0);for(let l=0;l<n;l++)yield*this.quantum.experimentalExpand(o,r)}}});var qt,Ie,We,Fl,P,ze,Rn,B,jt=U(()=>{Kt();Dt();as();cs();ps();ms();Fl=class extends pl{constructor(t,r,n){super();ne(this,qt,void 0);ne(this,Ie,void 0);ne(this,We,void 0);if(q(this,qt,t),q(this,Ie,r??null),q(this,We,n??null),Object.freeze(this),d(this,Ie)!==null&&(!Number.isInteger(d(this,Ie))||d(this,Ie)<1||d(this,Ie)>po))throw new Error(`QuantumMove inner layer must be a positive integer below ${pn}.`);if(d(this,We)!==null&&(!Number.isInteger(d(this,We))||d(this,We)<1||d(this,We)>po))throw new Error(`QuantumMove outer layer must be a positive integer below ${pn}.`);if(d(this,We)!==null&&d(this,Ie)!==null&&d(this,Ie)<=d(this,We))throw new Error(\\\"QuantumMove outer layer must be smaller than inner layer.\\\");if(d(this,We)!==null&&d(this,Ie)===null)throw new Error(\\\"QuantumMove with an outer layer must have an inner layer\\\")}static fromString(t){return O2(t)}modified(t){return new Fl(t.family??d(this,qt),t.innerLayer??d(this,Ie),t.outerLayer??d(this,We))}isIdentical(t){let r=t;return t.is(Fl)&&d(this,qt)===d(r,qt)&&d(this,Ie)===d(r,Ie)&&d(this,We)===d(r,We)}get family(){return d(this,qt)}get outerLayer(){return d(this,We)}get innerLayer(){return d(this,Ie)}experimentalExpand(){throw new Error(\\\"experimentalExpand() cannot be called on a `QuantumMove` directly.\\\")}toString(){let t=d(this,qt);return d(this,Ie)!==null&&(t=String(d(this,Ie))+t,d(this,We)!==null&&(t=String(d(this,We))+\\\"-\\\"+t)),t}},P=Fl;qt=new WeakMap,Ie=new WeakMap,We=new WeakMap;Rn=class extends Te{constructor(...t){super();ne(this,ze,void 0);if(typeof t[0]==\\\"string\\\")if(t[1]??null){q(this,ze,new Bn(P.fromString(t[0]),t[1]));return}else return Rn.fromString(t[0]);q(this,ze,new Bn(t[0],t[1]))}isIdentical(t){let r=t.as(Rn);return!!r&&d(this,ze).isIdentical(d(r,ze))}invert(){return I2(this,new Rn(d(this,ze).quantum,-this.amount))}*experimentalExpand(t=V.Forwards){t===V.Forwards?yield this:yield this.modified({amount:-this.amount})}get quantum(){return d(this,ze).quantum}modified(t){return new Rn(d(this,ze).quantum.modified(t),t.amount??this.amount)}static fromString(t){return G2(t)}get amount(){return d(this,ze).amount}get type(){return Dl(\\\"deprecated: type\\\"),\\\"blockMove\\\"}get family(){return d(this,ze).quantum.family??void 0}get outerLayer(){return d(this,ze).quantum.outerLayer??void 0}get innerLayer(){return d(this,ze).quantum.innerLayer??void 0}toString(){if(this.family===\\\"_SLASH_\\\")return\\\"/\\\";if(this.family.endsWith(\\\"_PLUS_\\\"))return d(this,ze).quantum.toString().slice(0,-6)+Math.abs(this.amount)+(this.amount<0?\\\"-\\\":\\\"+\\\");if(this.family.endsWith(\\\"_PLUSPLUS_\\\")){let t=Math.abs(this.amount);return d(this,ze).quantum.toString().slice(0,-10)+(t===1?\\\"\\\":t)+(this.amount<0?\\\"--\\\":\\\"++\\\")}return d(this,ze).quantum.toString()+d(this,ze).suffix()}},B=Rn;ze=new WeakMap});var K2,Q2,lt,hl,gt,dl=U(()=>{Qt();Kt();Dt();jt();ms();K2=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 P(\\\"U_SQ_\\\")),this.quantumD_SQ_||(this.quantumD_SQ_=new P(\\\"D_SQ_\\\"));let r=t.alg;if(r.experimentalNumUnits()===2){let[n,o]=r.units();if(n.as(B)?.quantum.isIdentical(this.quantumU_SQ_)&&o.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,o]}}return null}},Q2=new K2,hl=class extends Te{constructor(t,r){super();ne(this,lt,void 0);let n=ir(t);q(this,lt,new Bn(n,r))}isIdentical(t){let r=t;return t.is(hl)&&d(this,lt).isIdentical(d(r,lt))}get alg(){return d(this,lt).quantum}get amount(){return d(this,lt).amount}get experimentalRepetitionSuffix(){return d(this,lt).suffix()}invert(){return new hl(d(this,lt).quantum,-d(this,lt).amount)}*experimentalExpand(t=V.Forwards,r){r??(r=1/0),r===0?yield t===V.Forwards?this:this.invert():yield*d(this,lt).experimentalExpand(t,r-1)}static fromString(){throw new Error(\\\"unimplemented\\\")}toString(){return Q2.format(this)??`(${d(this,lt).quantum.toString()})${d(this,lt).suffix()}`}experimentalAsSquare1Tuple(){return Q2.tuple(this)}},gt=hl;lt=new WeakMap});var Al=U(()=>{dl();Bo();mo();Lo();jt();Ro();Do()});function ht(e,t){return e instanceof t}function j2(e){return ht(e,gt)||ht(e,Ft)||ht(e,Ge)||ht(e,Oe)||ht(e,B)||ht(e,Je)||ht(e,Xe)}var Ls=U(()=>{Al()});function q2(e,t,r){if(t.is(gt))return e.traverseGrouping(t,r);if(t.is(B))return e.traverseMove(t,r);if(t.is(Ge))return e.traverseCommutator(t,r);if(t.is(Oe))return e.traverseConjugate(t,r);if(t.is(Xe))return e.traversePause(t,r);if(t.is(Je))return e.traverseNewline(t,r);if(t.is(Ft))return e.traverseLineComment(t,r);throw new Error(\\\"unknown unit\\\")}function V2(e){if(e.is(gt)||e.is(B)||e.is(Ge)||e.is(Oe)||e.is(Xe)||e.is(Je)||e.is(Ft))return e;throw\\\"internal error: expected unit\\\"}var dn,Dn,yl,rp,Rs,Bs,H2,Y2,ds=U(()=>{dl();mo();jt();Ro();Do();Lo();Bo();dn=class{traverseUnit(t,r){return q2(this,t,r)}traverseIntoUnit(t,r){return V2(this.traverseUnit(t,r))}},Dn=class extends dn{traverseUnit(t){return q2(this,t,void 0)}traverseIntoUnit(t){return V2(this.traverseUnit(t))}},Rs=class extends dn{*traverseAlg(t,r){if(r.depth===0){yield*t.units();return}let n=[],o=null,l=r?.collapseMoves??!0;function i(a,g){var p;let c=S2(p=Rs,yl,rp).call(p,a,g,r);if(c===0)return!1;let u=new B(a.quantum,c);return n.push(u),o=u,!0}function s(a){l&&o?.is(B)&&a.is(B)&&o.quantum.isIdentical(a.quantum)?(n.pop(),i(o,a.amount)||(o=n.slice(-1)[0])):a.is(B)?i(a,0):(n.push(a),o=a)}let f={depth:r.depth?r.depth-1:null};for(let a of t.units())for(let g of this.traverseUnit(a,f))s(g);for(let a of n)yield a}*traverseGrouping(t,r){if(r.depth===0){yield t;return}let n={depth:r.depth?r.depth-1:null};yield new gt(this.traverseAlg(t.alg,n))}*traverseMove(t,r){yield t}*traverseCommutator(t,r){if(r.depth===0){yield t;return}let n={depth:r.depth?r.depth-1:null};yield new Ge(this.traverseAlg(t.A,n),this.traverseAlg(t.B,n))}*traverseConjugate(t,r){if(r.depth===0){yield t;return}let n={depth:r.depth?r.depth-1:null};yield new Oe(this.traverseAlg(t.A,n),this.traverseAlg(t.B,n))}*traversePause(t,r){yield t}*traverseNewline(t,r){yield t}*traverseLineComment(t,r){yield t}},Bs=Rs;yl=new WeakSet,rp=function(t,r,n){let o=t.amount+r;if(n?.quantumMoveOrder){let l=n.quantumMoveOrder(t.quantum),i=Math.floor(l/2)+1-l;o=(o%l+l-i)%l+i}return o},ne(Bs,yl);H2=new Bs,Y2=H2.traverseAlg.bind(H2)});function Z2(e){if(!e)return[];if(ht(e,z))return e.units();if(typeof e==\\\"string\\\")return gs(e).units();let t=e;if(typeof t[Symbol.iterator]==\\\"function\\\")return t;throw\\\"Invalid unit\\\"}function ir(e){return ht(e,z)?e:new z(e)}function np(e,t){return e.is(Je)||t.is(Je)?\\\"\\\":e.is(Ft)&&!t.is(Je)?`\\n`:\\\" \\\"}var it,Mr,z,Qt=U(()=>{Kt();Ls();Dt();cs();ds();Bo();jt();Ro();ps();Mr=class extends Te{constructor(t){super();ne(this,it,void 0);q(this,it,Array.from(Z2(t)));for(let r of d(this,it))if(!j2(r))throw new Error(\\\"An alg can only contain units.\\\")}isIdentical(t){let r=t;if(!t.is(Mr))return!1;let n=Array.from(d(this,it)),o=Array.from(d(r,it));if(n.length!==o.length)return!1;for(let l=0;l<n.length;l++)if(!n[l].isIdentical(o[l]))return!1;return!0}invert(){return new Mr(M2(Array.from(d(this,it)).map(t=>t.invert())))}*experimentalExpand(t=V.Forwards,r){r??(r=1/0);for(let n of ss(d(this,it),t))yield*n.experimentalExpand(t,r)}expand(t){return new Mr(this.experimentalExpand(V.Forwards,t?.depth??1/0))}*experimentalLeafMoves(){for(let t of this.experimentalExpand())t.is(B)&&(yield t)}concat(t){return new Mr(Array.from(d(this,it)).concat(Array.from(Z2(t))))}experimentalIsEmpty(){for(let t of d(this,it))return!1;return!0}static fromString(t){return gs(t)}*units(){for(let t of d(this,it))yield t}experimentalNumUnits(){return Array.from(d(this,it)).length}get type(){return Dl(\\\"deprecated: type\\\"),\\\"sequence\\\"}toString(){let t=\\\"\\\",r=null;for(let n of d(this,it))r&&(t+=np(r,n)),t+=n.toString(),r=n;return t}simplify(t){return new Mr(Y2(this,t??{}))}},z=Mr;it=new WeakMap});var op,J2=U(()=>{Qt();Al();mo();Lo();jt();Do();op={Sune:new z([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 z([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 z([new Ge(new z([new B(\\\"R\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",-2)]),new z([new Oe(new z([new B(\\\"R\\\",1)]),new z([new B(\\\"U\\\",1)]))]))]),Niklas:new z([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 z([new B(\\\"x\\\",-1),new Ge(new z([new Oe(new z([new B(\\\"R\\\",1)]),new z([new B(\\\"U\\\",-1)]))]),new z([new B(\\\"D\\\",1)])),new Ge(new z([new Oe(new z([new B(\\\"R\\\",1)]),new z([new B(\\\"U\\\",1)]))]),new z([new B(\\\"D\\\",1)])),new B(\\\"x\\\",1)]),FURURFCompact:new z([new Oe(new z([new B(\\\"F\\\",1)]),new z([new Ge(new z([new B(\\\"U\\\",1)]),new z([new B(\\\"R\\\",1)]))]))]),APermCompact:new z([new Oe(new z([new B(\\\"R\\\",2)]),new z([new Ge(new z([new B(\\\"F\\\",2)]),new z([new B(\\\"R\\\",-1),new B(\\\"B\\\",-1),new B(\\\"R\\\",1)]))]))]),FURURFMoves:new z([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 z([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 z([new Oe(new z([new B(\\\"F\\\",1)]),new z([new gt(new z([new Ge(new z([new B(\\\"R\\\",1)]),new z([new B(\\\"U\\\",1)]))]),3)]))]),TriplePause:new z([new Xe,new Xe,new Xe])}});var HF,X2=U(()=>{jt();HF={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'\\\")}});var $2=U(()=>{});var e0=U(()=>{Qt()});var Re=U(()=>{Qt();fs();ds();J2();X2();Al();jt();$2();e0();Ls();Dt()});function Fo(e,t,r){let n={};for(let o in e.orbits){let l=e.orbits[o],i=t[o],s=r[o];if(ho(l.numOrientations,s))n[o]=i;else if(ho(l.numOrientations,i))n[o]=s;else{let f=new Array(l.numPieces);if(l.numOrientations===1){for(let a=0;a<l.numPieces;a++)f[a]=i.permutation[s.permutation[a]];n[o]={permutation:f,orientation:i.orientation}}else{let a=new Array(l.numPieces);for(let g=0;g<l.numPieces;g++)a[g]=(i.orientation[s.permutation[g]]+s.orientation[g])%l.numOrientations,f[g]=i.permutation[s.permutation[g]];n[o]={permutation:f,orientation:a}}}}return n}function Ds(e,t,r){let n={};for(let o in e.orbits){let l=e.orbits[o],i=t[o],s=r[o];if(ho(l.numOrientations,s))n[o]=i;else{let f=new Array(l.numPieces);if(l.numOrientations===1){for(let a=0;a<l.numPieces;a++)f[a]=i.pieces[s.permutation[a]];n[o]={pieces:f,orientation:i.orientation}}else{let a=new Array(l.numPieces);for(let g=0;g<l.numPieces;g++)a[g]=(i.orientation[s.permutation[g]]+s.orientation[g])%l.numOrientations,f[g]=i.pieces[s.permutation[g]];n[o]={pieces:f,orientation:a}}}}return n}var Ul=U(()=>{Ao()});function lp(e){let t=r0.get(e);if(t)return t;let r=new Array(e),n=new Array(e);for(let l=0;l<e;l++)r[l]=l,n[l]=0;let o={permutation:r,orientation:n};return t0&&(Object.freeze(r),Object.freeze(n),Object.freeze(o)),r0.set(e,o),o}function n0(e){let t={};for(let[r,n]of Object.entries(e.orbits))t[r]=lp(n.numPieces);return t0&&Object.freeze(t),t}function o0(e,t){let r=t.quantum.toString(),n=e.definition.moves[r];if(n)return ar(e,n,t.amount);let o=e.definition.moves[t.toString()];if(o)return o;let l=e.definition.moves[t.invert().toString()];if(l)return ar(e,l,-1);throw new Error(`Invalid move for KPuzzle (${e.name()}): ${t}`)}var t0,r0,Fs=U(()=>{Ao();t0=!1,r0=new Map});var me,bl=U(()=>{Ul();yo();me=class{constructor(t,r){this.kpuzzle=t;this.stateData=r}static fromTransformation(t){let r=Ds(t.kpuzzle.definition,t.kpuzzle.definition.startStateData,t.transformationData);return new me(t.kpuzzle,r)}apply(t){return this.applyTransformation(this.kpuzzle.toTransformation(t))}applyTransformation(t){if(t.isIdentityTransformation())return new me(this.kpuzzle,this.stateData);let r=Ds(this.kpuzzle.definition,this.stateData,t.transformationData);return new me(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 o={permutation:n.pieces,orientation:n.orientation};t[r]=o}return new At(this.kpuzzle,t)}}});var Nr,fr,At,yo=U(()=>{Ao();Ul();Fs();bl();fr=class{constructor(t,r){this.kpuzzle=t;this.transformationData=r;ne(this,Nr,void 0)}invert(){return new fr(this.kpuzzle,hs(this.kpuzzle,this.transformationData))}isIdentityTransformation(){return d(this,Nr)??q(this,Nr,this.isIdentical(this.kpuzzle.identityTransformation()))}static experimentalConstructIdentity(t){let r=new fr(t,n0(t.definition));return q(r,Nr,!0),r}isIdentical(t){return l0(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 d(this,Nr)?new fr(this.kpuzzle,t.transformationData):d(t,Nr)?new fr(this.kpuzzle,this.transformationData):new fr(this.kpuzzle,Fo(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 me.fromTransformation(this)}repetitionOrder(){return i0(this.kpuzzle.definition,this)}selfMultiply(t){return new fr(this.kpuzzle,ar(this.kpuzzle,this.transformationData,t))}},At=fr;Nr=new WeakMap});function ho(e,t){let{permutation:r}=t,n=r.length;for(let o=0;o<n;o++)if(r[o]!==o)return!1;if(e>1){let{orientation:o}=t;for(let l=0;l<n;l++)if(o[l]!==0)return!1}return!0}function ip(e,t,r,n={}){for(let o=0;o<e.numPieces;o++)if(!n?.ignoreOrientation&&t.orientation[o]!==r.orientation[o]||!n?.ignorePermutation&&t.permutation[o]!==r.permutation[o])return!1;return!0}function l0(e,t,r){for(let[n,o]of Object.entries(e.definition.orbits))if(!ip(o,t[n],r[n]))return!1;return!0}function hs(e,t){let r={};for(let n in e.definition.orbits){let o=e.definition.orbits[n],l=t[n];if(ho(o.numOrientations,l))r[n]=l;else if(o.numOrientations===1){let i=new Array(o.numPieces);for(let s=0;s<o.numPieces;s++)i[l.permutation[s]]=s;r[n]={permutation:i,orientation:l.orientation}}else{let i=new Array(o.numPieces),s=new Array(o.numPieces);for(let f=0;f<o.numPieces;f++){let a=l.permutation[f];i[a]=f,s[a]=(o.numOrientations-l.orientation[f]+o.numOrientations)%o.numOrientations}r[n]={permutation:i,orientation:s}}}return r}function ar(e,t,r){if(r===1)return t;if(r<0)return ar(e,hs(e,t),-r);if(r===0){let{transformationData:l}=e.identityTransformation();return l}let n=t;r!==2&&(n=ar(e,t,Math.floor(r/2)));let o=Fo(e.definition,n,n);return r%2==0?o:Fo(e.definition,t,o)}function As(e,t){return t?As(t,e%t):e}function i0(e,t){let r=1;for(let n in e.orbits){let o=e.orbits[n],l=t.transformationData[n],i=new Array(o.numPieces);for(let s=0;s<o.numPieces;s++)if(!i[s]){let f=s,a=0,g=0;for(;i[f]=!0,a=a+l.orientation[f],g=g+1,f=l.permutation[f],f!==s;);a!==0&&(g=g*o.numOrientations/As(o.numOrientations,a)),r=r*g/As(r,g)}}return r}var s0,a0,f0,Ao=U(()=>{Re();Ul();yo();s0=class extends dn{traverseAlg(t,r){let n=null;for(let o of t.units())n?n=n.applyTransformation(this.traverseUnit(o,r)):n=this.traverseUnit(o,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),o=this.traverseAlg(t.B,r);return n.applyTransformation(o).applyTransformation(n.invert()).applyTransformation(o.invert())}traverseConjugate(t,r){let n=this.traverseAlg(t.A,r),o=this.traverseAlg(t.B,r);return n.applyTransformation(o).applyTransformation(n.invert())}traversePause(t,r){return r.identityTransformation()}traverseNewline(t,r){return r.identityTransformation()}traverseLineComment(t,r){return r.identityTransformation()}},a0=new s0,f0=a0.traverseAlg.bind(a0)});var Fn,Sl,Ee,ys=U(()=>{Re();Ao();Fs();bl();yo();Ee=class{constructor(t,r){this.definition=t;ne(this,Fn,new Map);ne(this,Sl,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=d(this,Fn).get(r);if(n)return new At(this,n);if(this.experimentalPGNotation){let l=this.experimentalPGNotation.lookupMove(t);if(!l)throw new Error(`could not map to internal move: ${t}`);return d(this,Fn).set(r,l),new At(this,l)}let o=o0(this,t);return d(this,Fn).set(r,o),new At(this,o)}algToTransformation(t){return typeof t==\\\"string\\\"&&(t=new z(t)),f0(t,this)}toTransformation(t){return typeof t==\\\"string\\\"?this.algToTransformation(t):t?.is?.(z)?this.algToTransformation(t):t?.is?.(B)?this.moveToTransformation(t):t}startState(){return new me(this,this.definition.startStateData)}canConvertStateToUniqueTransformation(){return d(this,Sl)??q(this,Sl,(()=>{for(let[t,r]of Object.entries(this.definition.orbits)){let n=new Array(r.numPieces).fill(!1);for(let o of this.definition.startStateData[t].pieces)n[o]=!0;for(let o of n)if(!o)return!1}return!0})())}get state(){throw new Error(\\\"KPuzzle is now a different (stateless) class.\\\")}reset(){throw new Error(\\\"KPuzzle is now a different (stateless) class.\\\")}applyMove(t){throw new Error(\\\"KPuzzle is now a different class. Try `.moveToTransformation()` to get the transformation for a move.\\\")}applyAlg(t){throw new Error(\\\"KPuzzle is now a different class. Try `.algToTransformation()` to get the transformation for an alg.\\\")}};Fn=new WeakMap,Sl=new WeakMap});var de,u0=U(()=>{de={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]}}}};de.moves.Uw=de.moves.u;de.moves.Lw=de.moves.l;de.moves.Fw=de.moves.f;de.moves.Rw=de.moves.r;de.moves.Bw=de.moves.b;de.moves.Dw=de.moves.d;de.moves.Rv=de.moves.x;de.moves.Uv=de.moves.y;de.moves.Fv=de.moves.z;de.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]}};de.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]}};de.moves.Bv={EDGES:{permutation:[8,5,10,1,9,7,11,3,4,0,6,2],orientation:[1,1,1,1,1,1,1,1,1,1,1,1]},CORNERS:{permutation:[4,7,1,0,5,3,2,6],orientation:[1,2,1,2,2,1,2,1]},CENTERS:{permutation:[3,0,2,5,4,1],orientation:[3,3,3,3,1,3]}}});var Us,He=U(()=>{ys();bl();yo();u0();ys();Us=new Ee(de)});var g0=U(()=>{He()});var sp,rA,c0=U(()=>{sp={\\\"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\\\"}},rA={...sp,fto:{puzzleID:\\\"fto\\\",eventName:\\\"Face-Turning Octahedron\\\"},master_tetraminx:{puzzleID:\\\"master_tetraminx\\\",eventName:\\\"Master Tetraminx\\\"}}});function Rp(e){switch(e){case S.Regular:return ap;case S.Dim:return mp;case S.Ignored:return fp;case S.OrientationStickers:return up;case S.Invisible:return gp;case S.IgnoreNonPrimary:return cp;case S.PermuteNonPrimary:return pp;case S.Ignoriented:return Lp;case S.OrientationWithoutPermutation:return Bp}}var S,hn,zt,Ke,An,xl,Tr,ap,fp,up,gp,cp,pp,mp,Lp,Bp,Uo,bo,So=U(()=>{(function(a){a.Regular=\\\"Regular\\\",a.Dim=\\\"Dim\\\",a.Ignored=\\\"Ignored\\\",a.OrientationStickers=\\\"OrientationStickers\\\",a.Invisible=\\\"Invisible\\\",a.Ignoriented=\\\"Ignoriented\\\",a.IgnoreNonPrimary=\\\"IgnoreNonPrimary\\\",a.PermuteNonPrimary=\\\"PermuteNonPrimary\\\",a.OrientationWithoutPermutation=\\\"OrientationWithoutPermutation\\\"})(S||(S={}));hn=class{constructor(t,r){this.stickerings=new Map;for(let[n,o]of Object.entries(t.definition.orbits))this.stickerings.set(n,new Array(o.numPieces).fill(r))}},zt=\\\"regular\\\",Ke=\\\"ignored\\\",An=\\\"oriented\\\",xl=\\\"invisible\\\",Tr=\\\"dim\\\",ap={facelets:[zt,zt,zt,zt,zt]},fp={facelets:[Ke,Ke,Ke,Ke,Ke]},up={facelets:[An,An,An,An,An]},gp={facelets:[xl,xl,xl,xl]},cp={facelets:[zt,Ke,Ke,Ke,Ke]},pp={facelets:[Tr,zt,zt,zt,zt]},mp={facelets:[Tr,Tr,Tr,Tr,Tr]},Lp={facelets:[Tr,Ke,Ke,Ke,Ke]},Bp={facelets:[An,Ke,Ke,Ke,Ke]};Uo=class extends hn{constructor(t){super(t,S.Regular)}set(t,r){for(let[n,o]of this.stickerings.entries())for(let l=0;l<o.length;l++)t.stickerings.get(n)[l]&&(o[l]=r);return this}toAppearance(){let t={orbits:{}};for(let[r,n]of this.stickerings.entries()){let o=[],l={pieces:o};t.orbits[r]=l;for(let i of n)o.push(Rp(i))}return t}},bo=class{constructor(t){this.kpuzzle=t}and(t){let r=new hn(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits)){e:for(let l=0;l<o.numPieces;l++){r.stickerings.get(n)[l]=!0;for(let i of t)if(!i.stickerings.get(n)[l]){r.stickerings.get(n)[l]=!1;continue e}}}return r}or(t){let r=new hn(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits)){e:for(let l=0;l<o.numPieces;l++){r.stickerings.get(n)[l]=!1;for(let i of t)if(i.stickerings.get(n)[l]){r.stickerings.get(n)[l]=!0;continue e}}}return r}not(t){let r=new hn(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits))for(let l=0;l<o.numPieces;l++)r.stickerings.get(n)[l]=!t.stickerings.get(n)[l];return r}all(){return this.and(this.moves([]))}move(t){let r=this.kpuzzle.moveToTransformation(t),n=new hn(this.kpuzzle,!1);for(let[o,l]of Object.entries(this.kpuzzle.definition.orbits))for(let i=0;i<l.numPieces;i++)(r.transformationData[o].permutation[i]!==i||r.transformationData[o].orientation[i]!==0)&&(n.stickerings.get(o)[i]=!0);return n}moves(t){return t.map(r=>this.move(r))}}});function dp(e){(async()=>{p0=e;let t=Array.from(document.body.querySelectorAll(\\\"twisty-player\\\"));console.log(`Setting the custom stickering for ${t.length} players!`);let r=[];for(let n of t)r.push((async()=>{let o=await n.experimentalModel.stickering.get();n.experimentalStickering=o===\\\"experimental-global-custom-1\\\"?\\\"experimental-global-custom-2\\\":\\\"experimental-global-custom-1\\\"})());await Promise.all(r),console.log(\\\"Success!\\\")})()}function m0(e,t){p0(e,t)}var p0,L0=U(()=>{So();p0=()=>{};globalThis.location&&new URL(location.href).searchParams.get(\\\"global-custom-stickerer\\\")===\\\"true\\\"&&(window.setGlobalCustomStickerer=dp,window.PieceStickering=S,console.log(\\\"Global custom stickerer enabled! (using: global-custom-stickerer=true)\\\"),console.log(\\\"Look here for inspiration:\\\",\\\"https://github.com/cubing/cubing.js/blob/81b5cab3e27d8defb39dd1e0a10bc9e8ba894d26/src/cubing/puzzles/stickerings/cube-stickerings.ts#L67\\\"))});async function _t(e,t){let r=await e.kpuzzle(),n=new Uo(r),o=new bo(r),l=()=>o.move(\\\"U\\\"),i=()=>o.or(o.moves([\\\"U\\\",\\\"D\\\"])),s=()=>o.not(i()),f=()=>o.or(o.moves([\\\"L\\\",\\\"R\\\"])),a=()=>o.not(f()),g=()=>o.or(o.moves([\\\"F\\\",\\\"B\\\"])),c=()=>o.not(g()),u=()=>o.not(l()),p=()=>o.and([l(),a(),c()]),m=()=>o.and([o.and(o.moves([\\\"F\\\",\\\"R\\\"])),o.not(i())]),L=()=>o.and(o.moves([\\\"D\\\",\\\"R\\\",\\\"F\\\"])),R=()=>o.or([L(),m()]),D=()=>o.or([o.and([a(),s()]),o.and([a(),c()]),o.and([s(),c()])]),A=()=>o.or([o.and([a(),i(),g()]),o.and([s(),f(),g()]),o.and([c(),i(),f()])]),y=()=>o.not(o.or([D(),A()])),k=()=>o.or([a(),o.and([l(),A()])]);function E(){n.set(u(),S.Dim)}function Q(){n.set(l(),S.PermuteNonPrimary),n.set(p(),S.Dim)}function $(){n.set(l(),S.IgnoreNonPrimary),n.set(p(),S.Regular)}function N(){n.set(l(),S.Ignoriented),n.set(p(),S.Dim)}switch(t){case\\\"full\\\":break;case\\\"PLL\\\":E(),Q();break;case\\\"CLS\\\":E(),n.set(o.and(o.moves([\\\"D\\\",\\\"R\\\",\\\"F\\\"])),S.Regular),n.set(l(),S.Ignoriented),n.set(o.and([l(),a(),c()]),S.Dim),n.set(o.and([l(),y()]),S.IgnoreNonPrimary);break;case\\\"OLL\\\":E(),$();break;case\\\"COLL\\\":E(),Q(),n.set(o.and([l(),y()]),S.Regular);break;case\\\"OCLL\\\":E(),N(),n.set(o.and([l(),y()]),S.IgnoreNonPrimary);break;case\\\"CLL\\\":E(),n.set(o.not(o.and([y(),l()])),S.Dim);break;case\\\"ELL\\\":E(),n.set(l(),S.Dim),n.set(o.and([l(),A()]),S.Regular);break;case\\\"ELS\\\":E(),$(),n.set(o.and([l(),y()]),S.Ignored),n.set(m(),S.Regular),n.set(L(),S.Ignored);break;case\\\"LL\\\":E();break;case\\\"F2L\\\":n.set(l(),S.Ignored);break;case\\\"ZBLL\\\":E(),n.set(l(),S.PermuteNonPrimary),n.set(p(),S.Dim),n.set(o.and([l(),y()]),S.Regular);break;case\\\"ZBLS\\\":E(),n.set(R(),S.Regular),$(),n.set(o.and([l(),y()]),S.Ignored);break;case\\\"WVLS\\\":case\\\"VLS\\\":E(),n.set(R(),S.Regular),$();break;case\\\"LS\\\":E(),n.set(R(),S.Regular),n.set(l(),S.Ignored),n.set(p(),S.Dim);break;case\\\"EO\\\":n.set(y(),S.Ignored),n.set(A(),S.OrientationWithoutPermutation);break;case\\\"EOline\\\":n.set(y(),S.Ignored),n.set(A(),S.OrientationWithoutPermutation),n.set(o.and(o.moves([\\\"D\\\",\\\"M\\\"])),S.Regular);break;case\\\"EOcross\\\":n.set(A(),S.OrientationWithoutPermutation),n.set(o.move(\\\"D\\\"),S.Regular),n.set(y(),S.Ignored);break;case\\\"CMLL\\\":n.set(u(),S.Dim),n.set(k(),S.Ignored),n.set(o.and([l(),y()]),S.Regular);break;case\\\"L6E\\\":n.set(o.not(k()),S.Dim);break;case\\\"L6EO\\\":n.set(o.not(k()),S.Dim),n.set(k(),S.OrientationWithoutPermutation),n.set(o.and([D(),i()]),S.OrientationStickers);break;case\\\"Daisy\\\":n.set(o.all(),S.Ignored),n.set(D(),S.Dim),n.set(o.and([o.move(\\\"D\\\"),D()]),S.Regular),n.set(o.and([o.move(\\\"U\\\"),A()]),S.IgnoreNonPrimary);break;case\\\"Cross\\\":n.set(o.all(),S.Ignored),n.set(D(),S.Dim),n.set(o.and([o.move(\\\"D\\\"),D()]),S.Regular),n.set(o.and([o.move(\\\"D\\\"),A()]),S.Regular);break;case\\\"2x2x2\\\":n.set(o.or(o.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),S.Ignored),n.set(o.and([o.or(o.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),D()]),S.Dim);break;case\\\"2x2x3\\\":n.set(o.all(),S.Dim),n.set(o.or(o.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),S.Ignored),n.set(o.and([o.or(o.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),D()]),S.Dim),n.set(o.and([o.move(\\\"F\\\"),o.not(o.or(o.moves([\\\"U\\\",\\\"R\\\"])))]),S.Regular);break;case\\\"Void Cube\\\":n.set(D(),S.Invisible);break;case\\\"picture\\\":case\\\"invisible\\\":n.set(o.all(),S.Invisible);break;case\\\"centers-only\\\":n.set(o.not(D()),S.Ignored);break;case\\\"experimental-global-custom-1\\\":case\\\"experimental-global-custom-2\\\":m0(n,o);break;default:console.warn(`Unsupported stickering for ${e.id}: ${t}. Setting all pieces to dim.`),n.set(o.and(o.moves([])),S.Dim)}return n.toAppearance()}async function yn(){return[\\\"full\\\",\\\"PLL\\\",\\\"CLS\\\",\\\"OLL\\\",\\\"COLL\\\",\\\"OCLL\\\",\\\"ELL\\\",\\\"ELS\\\",\\\"LL\\\",\\\"F2L\\\",\\\"ZBLL\\\",\\\"ZBLS\\\",\\\"WVLS\\\",\\\"VLS\\\",\\\"LS\\\",\\\"EO\\\",\\\"EOline\\\",\\\"EOcross\\\",\\\"CMLL\\\",\\\"L6E\\\",\\\"L6EO\\\",\\\"Daisy\\\",\\\"Cross\\\",\\\"2x2x2\\\",\\\"2x2x3\\\",\\\"Void Cube\\\",\\\"picture\\\",\\\"invisible\\\",\\\"centers-only\\\"]}var Un=U(()=>{So();L0()});function Se(e){let t=null;return()=>t??(t=e())}var ur=U(()=>{});var xo,B0=U(()=>{xo=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 o=0;this.prefixFree&&o<t.length;o++)n!==o&&t[n].startsWith(t[o])&&(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 o=-1;for(let l=0;l<this.facenames.length;l++)t.substr(n).startsWith(this.facenames[l])&&(o<0||this.facenames[l].length>this.facenames[o].length)&&(o=l);if(o>=0)r.push(o),n+=this.facenames[o].length;else throw new Error(\\\"Could not split \\\"+t+\\\" into face names.\\\")}return r}joinByFaceIndices(t){let r=\\\"\\\",n=[];for(let o=0;o<t.length;o++)n.push(r),n.push(this.facenames[t[o]]),this.prefixFree||(r=\\\"_\\\");return n.join(\\\"\\\")}spinmatch(t,r){if(t===r)return!0;try{let n=this.splitByFaceNames(t),o=this.splitByFaceNames(r);if(n.length!==o.length&&n.length<3)return!1;for(let l=0;l<n.length;l++){for(let s=0;s<l;s++)if(n[l]===n[s])return!1;let i=!1;for(let s=0;s<o.length;s++)if(n[l]===o[s]){i=!0;break}if(!i)return!1}return!0}catch(n){return!1}}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 o=this.gripnames[n];if(this.spinmatch(r,o))return o}return t}}});var bn,R0=U(()=>{bn=class{notationToInternal(t){return t}notationToExternal(t){return t}}});var wl,d0=U(()=>{Re();wl=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 P(\\\"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 P(\\\"T\\\",t.innerLayer,t.outerLayer),t.amount):this.child.notationToExternal(t)}}});var wo,D0=U(()=>{Re();wo=class{constructor(t,r){this.internalNames=t;this.externalNames=r}convertString(t,r,n){let o=\\\"\\\";(t.endsWith(\\\"v\\\")||t.endsWith(\\\"v\\\"))&&t<=\\\"_\\\"&&(o=t.slice(t.length-1),t=t.slice(0,t.length-1));let l=t.toUpperCase(),i=!1;return t!==l&&(i=!0,t=l),t=n.joinByFaceIndices(r.splitByFaceNames(t)),i&&(t=t.toLowerCase()),t+o}convert(t,r,n){let o=t.family,l=this.convertString(o,r,n);return o===l?t:new B(new P(l,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 vl,F0=U(()=>{Re();vl=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 P(\\\"L\\\",3,2),-2*t.amount);if(t.family===\\\"R--\\\")return new B(new P(\\\"L\\\",3,2),2*t.amount);if(t.family===\\\"D++\\\")return new B(new P(\\\"U\\\",3,2),-2*t.amount);if(t.family===\\\"D--\\\")return new B(new P(\\\"U\\\",3,2),2*t.amount);if(t.family===\\\"R_PLUSPLUS_\\\")return new B(new P(\\\"L\\\",3,2),-2*t.amount);if(t.family===\\\"D_PLUSPLUS_\\\")return new B(new P(\\\"U\\\",3,2),-2*t.amount)}if(t.family===\\\"y\\\")return new B(\\\"Uv\\\",t.amount)}return this.child.notationToInternal(t)}notationToExternal(t){return t.family===\\\"Uv\\\"?new B(new P(\\\"y\\\",t.innerLayer,t.outerLayer),t.amount):t.family===\\\"Dv\\\"?new B(\\\"y\\\",-t.amount):this.child.notationToExternal(t)}}});var El,h0=U(()=>{Re();El=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 P(\\\"D\\\",(this.slices+1)/2),t.amount):r===\\\"M\\\"?t=new B(new P(\\\"L\\\",(this.slices+1)/2),t.amount):r===\\\"S\\\"&&(t=new B(new P(\\\"F\\\",(this.slices+1)/2),t.amount))),this.slices>2&&(r===\\\"e\\\"?t=new B(new P(\\\"D\\\",this.slices-1,2),t.amount):r===\\\"m\\\"?t=new B(new P(\\\"L\\\",this.slices-1,2),t.amount):r===\\\"s\\\"&&(t=new B(new P(\\\"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 Dp,Fp,A0,y0,U0,vo,kl,b0=U(()=>{Re();Dp={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\\\"},Fp={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\\\"},A0={U:\\\"FRL\\\",L:\\\"FLD\\\",R:\\\"FDR\\\",B:\\\"DLR\\\"},y0=new P(\\\"y\\\"),U0=new P(\\\"Dv\\\"),vo=class{constructor(t){this.child=t;this.wcaHack=!1;this.map=Dp}notationToInternal(t){if(this.wcaHack&&t.innerLayer===2&&t.outerLayer===null){let n=A0[t.family];if(n)return new B(new P(n,t.innerLayer,t.outerLayer),t.amount)}let r=this.map[t.family];return r?new B(new P(r,t.innerLayer,t.outerLayer),t.amount):y0.isIdentical(t.quantum)?new B(U0,-t.amount):null}notationToExternal(t){if(this.wcaHack&&t.innerLayer===2&&t.outerLayer===null){for(let[r,n]of Object.entries(A0))if(this.child.spinmatch(t.family,n))return new B(new P(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 P(r,t.innerLayer,t.outerLayer),t.amount);return U0.isIdentical(t.quantum)?new B(y0,-t.amount):null}},kl=class extends vo{constructor(t){super(t);this.map=Fp}}});var S0,bs,x0,hp,Ss,w0,Ap,xs,v0,yp,zl,E0=U(()=>{Re();S0={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\\\"},bs=new P(\\\"x\\\"),x0=new P(\\\"Rv\\\"),hp=new P(\\\"Lv\\\"),Ss=new P(\\\"y\\\"),w0=new P(\\\"Uv\\\"),Ap=new P(\\\"Dv\\\"),xs=new P(\\\"z\\\"),v0=new P(\\\"Fv\\\"),yp=new P(\\\"Bv\\\"),zl=class{constructor(t){this.child=t}notationToInternal(t){if(t.innerLayer||t.outerLayer)return null;let r=S0[t.family];return r?new B(new P(r,t.outerLayer,t.innerLayer),t.amount):bs.isIdentical(t.quantum)?new B(x0,t.amount):Ss.isIdentical(t.quantum)?new B(w0,t.amount):xs.isIdentical(t.quantum)?new B(v0,t.amount):null}notationToExternal(t){for(let[r,n]of Object.entries(S0))if(this.child.spinmatchv(t.family,n))return new B(new P(r,t.innerLayer,t.outerLayer),t.amount);return x0.isIdentical(t.quantum)?new B(bs,t.amount):hp.isIdentical(t.quantum)?new B(bs,-t.amount):w0.isIdentical(t.quantum)?new B(Ss,t.amount):Ap.isIdentical(t.quantum)?new B(Ss,-t.amount):v0.isIdentical(t.quantum)?new B(xs,t.amount):yp.isIdentical(t.quantum)?new B(xs,-t.amount):null}}});var ws=U(()=>{R0();d0();D0();F0();h0();b0();E0()});function k0(e){let t=0,r={};for(;t<e.length&&e[t][0]===\\\"-\\\";){let o=e[t++];if(o===\\\"--rotations\\\")r.addRotations=!0;else if(o===\\\"--allmoves\\\")r.allMoves=!0;else if(o===\\\"--outerblockmoves\\\")r.outerBlockMoves=!0;else if(o===\\\"--vertexmoves\\\")r.vertexMoves=!0;else if(o===\\\"--nocorners\\\")r.includeCornerOrbits=!1;else if(o===\\\"--noedges\\\")r.includeEdgeOrbits=!1;else if(o===\\\"--noorientation\\\")r.fixedOrientation=!0;else if(o===\\\"--nocenters\\\")r.includeCenterOrbits=!1;else if(o===\\\"--omit\\\")r.excludeOrbits=e[t].split(\\\",\\\"),t++;else if(o===\\\"--moves\\\")r.moveList=e[t].split(\\\",\\\"),t++;else if(o===\\\"--optimize\\\")r.optimizeOrbits=!0;else if(o===\\\"--scramble\\\")r.scrambleAmount=100;else if(o===\\\"--fixcorner\\\")r.fixedPieceType=\\\"v\\\";else if(o===\\\"--fixedge\\\")r.fixedPieceType=\\\"e\\\";else if(o===\\\"--fixcenter\\\")r.fixedPieceType=\\\"f\\\";else if(o===\\\"--orientcenters\\\")r.orientCenters=!0;else if(o===\\\"--puzzleorientation\\\")r.puzzleOrientation=JSON.parse(e[t]),t++;else throw new Error(\\\"Bad option: \\\"+o)}return{puzzleDescription:Eo(e.slice(t).join(\\\" \\\")),options:r}}var vs,Es=U(()=>{_l();vs=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 gr(e){if(!ks[e]){let t=Array(e);for(let r=0;r<e;r++)t[r]=0;ks[e]=t}return ks[e]}function Ct(e){if(!zs[e]){let t=Array(e);for(let r=0;r<e;r++)t[r]=r;zs[e]=t}return zs[e]}function z0(e){return new mt(Ct(e))}function _0(e){let t=1;for(;e>1;)t*=e,e--;return t}function Up(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 _s(e,t){return e/Up(e,t)*t}var ks,zs,mt,Cl=U(()=>{ks=[],zs=[];mt=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 mt(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 mt(r)}inv(){let t=Array(this.n);for(let r=0;r<this.n;r++)t[this.p[r]]=r;return new mt(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 o=new Array;for(let l=n;!r[l];l=this.p[l])o.push(1+l),r[l]=!0;t.push(\\\"(\\\"+o.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 o=0;for(let l=n;!r[l];l=this.p[l])o++,r[l]=!0;t=_s(t,o)}return t}}});function Cs(e,t){let r=B.fromString(t),n=e.notationToExternal(r);return n===null||r===n?t:n.toString()}function C0(e,t){let r=e.moveops.length;if(r>30)throw new Error(\\\"Canon info too big for bitmask\\\");let n=[],o=[];for(let i=0;i<r;i++){let s=e.moveops[i];n.push(s.order());let f=0;for(let a=0;a<r;a++){if(a===i)continue;let g=e.moveops[a];s.mul(g).equal(g.mul(s))&&(f|=1<<a)}o.push(f)}let l={};l[0]=1;for(let i=0;i<100;i++){let s=0,f={},a=0;for(let g in l){let c=+g,u=l[c];s+=u,a++;for(let p=0;p<n.length;p++)if((c>>p&1)==0&&(c&o[p]&(1<<p)-1)==0){let m=c&o[p]|1<<p;f[m]===void 0&&(f[m]=0),f[m]+=(n[p]-1)*u}}t(`${i}: canonseq ${s} states ${a}`),l=f}}var ko,bp,Sn,yt,Vt,Ps,cr,xn,Ms,P0=U(()=>{Re();ws();Cl();ko=class{constructor(t,r){this.size=t;this.mod=r}reassemblySize(){return _0(this.size)*Math.pow(this.mod,this.size)}},bp=0;Sn=class{constructor(t,r,n,o,l){this.orbitnames=t;this.orbitdefs=r;this.solved=n;this.movenames=o;this.moveops=l}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 o=0;o<t.length;o++)n[t[o]]=r.orbits[o].toKPuzzle();return n}toKsolve(t,r=new bn){let n=[];n.push(\\\"Name \\\"+t),n.push(\\\"\\\");for(let o=0;o<this.orbitnames.length;o++)n.push(`Set ${this.orbitnames[o]} ${this.orbitdefs[o].size} ${this.orbitdefs[o].mod}`);n.push(\\\"\\\"),n.push(\\\"Solved\\\");for(let o=0;o<this.orbitnames.length;o++)this.solved.orbits[o].appendDefinition(n,this.orbitnames[o],!1,!1);n.push(\\\"End\\\");for(let o=0;o<this.movenames.length;o++){n.push(\\\"\\\");let l=Cs(r,this.movenames[o]),i=!1;l[l.length-1]===\\\"'\\\"&&(i=!0,l=l.substring(0,l.length-1)),n.push(\\\"Move \\\"+l);for(let s=0;s<this.orbitnames.length;s++)i?this.moveops[o].orbits[s].inv().appendDefinition(n,this.orbitnames[s],!0):this.moveops[o].orbits[s].appendDefinition(n,this.orbitnames[s],!0);n.push(\\\"End\\\")}return n}toKPuzzleDefinition(t){let r={},n={};for(let l=0;l<this.orbitnames.length;l++){r[this.orbitnames[l]]={numPieces:this.orbitdefs[l].size,numOrientations:this.orbitdefs[l].mod};let i=this.solved.orbits[l].toKPuzzle();n[this.orbitnames[l]]={pieces:i.permutation,orientation:i.orientation}}let o={};if(t)for(let l=0;l<this.movenames.length;l++)o[this.movenames[l]]=this.transformToKTransformationData(this.moveops[l]);return{name:`PG3D #${++bp}`,orbits:r,startStateData:n,moves:o}}optimize(){let t=[],r=[],n=[],o=[];for(let l=0;l<this.moveops.length;l++)o.push([]);for(let l=0;l<this.orbitdefs.length;l++){let i=this.orbitdefs[l].mod,s=this.orbitdefs[l].size,f=new Ms(s),a=new Array(this.orbitdefs[l].size);for(let p=0;p<s;p++)a[p]=!1;for(let p=0;p<this.moveops.length;p++)for(let m=0;m<s;m++)(this.moveops[p].orbits[l].perm[m]!==m||this.moveops[p].orbits[l].ori[m]!==0)&&(a[m]=!0,f.union(m,this.moveops[p].orbits[l].perm[m]));let g=!0;if(i>1){g=!1;let p=new Ms(this.orbitdefs[l].size*i);for(let m=0;m<this.moveops.length;m++)for(let L=0;L<s;L++)if(this.moveops[m].orbits[l].perm[L]!==L||this.moveops[m].orbits[l].ori[L]!==0)for(let R=0;R<i;R++)p.union(L*i+R,this.moveops[m].orbits[l].perm[L]*i+(R+this.moveops[m].orbits[l].ori[L])%i);for(let m=0;!g&&m<s;m++)for(let L=1;L<i;L++)p.find(m*i)===p.find(m*i+L)&&(g=!0);for(let m=0;!g&&m<s;m++)for(let L=0;L<m;L++)this.solved.orbits[l].perm[m]===this.solved.orbits[l].perm[L]&&(g=!0)}let c=-1,u=!1;for(let p=0;p<this.orbitdefs[l].size;p++)if(a[p]){let m=f.find(p);c<0?c=m:c!==m&&(u=!0)}for(let p=0;p<this.orbitdefs[l].size;p++){if(!a[p]||f.find(p)!==p)continue;let L=[],R=[],D=0;for(let A=0;A<this.orbitdefs[l].size;A++)f.find(A)===p&&(L[D]=A,R[A]=D,D++);if(u?t.push(`${this.orbitnames[l]}_p${p}`):t.push(this.orbitnames[l]),g){r.push(new ko(D,this.orbitdefs[l].mod)),n.push(this.solved.orbits[l].remapVS(L,D));for(let A=0;A<this.moveops.length;A++)o[A].push(this.moveops[A].orbits[l].remap(L,R,D))}else{r.push(new ko(D,1)),n.push(this.solved.orbits[l].remapVS(L,D).killOri());for(let A=0;A<this.moveops.length;A++)o[A].push(this.moveops[A].orbits[l].remap(L,R,D).killOri())}}}return new Sn(t,r,new xn(n),this.movenames,o.map(l=>new cr(l)))}scramble(t){this.solved=this.solved.mul(this.getScrambleTransformation(t))}getScrambleTransformation(t){t<100&&(t=100);let r=[];for(let o=0;o<this.moveops.length;o++)r[o]=this.moveops[o];for(let o=0;o<r.length;o++){let l=Math.floor(Math.random()*r.length),i=r[o];r[o]=r[l],r[l]=i}t<r.length&&(t=r.length);for(let o=0;o<t;o++){let l=Math.floor(Math.random()*r.length),i=Math.floor(Math.random()*r.length),s=Math.floor(Math.random()*this.moveops.length);r[l]=r[l].mul(r[i]).mul(this.moveops[s]),Math.random()<.1&&(r[l]=r[l].mul(this.moveops[s]))}let n=r[0];for(let o=1;o<r.length;o++)n=n.mul(r[o]);return n}reassemblySize(){let t=1;for(let r=0;r<this.orbitdefs.length;r++)t*=this.orbitdefs[r].reassemblySize();return t}},yt=class{constructor(t,r,n){this.perm=t;this.ori=r;this.orimod=n}static e(t,r){return new yt(Ct(t),gr(t),r)}mul(t){let r=this.perm.length,n=new Array(r);if(this.orimod===1){for(let o=0;o<r;o++)n[o]=this.perm[t.perm[o]];return new yt(n,this.ori,this.orimod)}else{let o=new Array(r);for(let l=0;l<r;l++)n[l]=this.perm[t.perm[l]],o[l]=(this.ori[t.perm[l]]+t.ori[l])%this.orimod;return new yt(n,o,this.orimod)}}inv(){let t=this.perm.length,r=new Array(t),n=new Array(t);for(let o=0;o<t;o++)r[this.perm[o]]=o,n[this.perm[o]]=(this.orimod-this.ori[o])%this.orimod;return new yt(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 mt(this.perm);let r=this.perm.length,n=new Array(r*t);for(let o=0;o<r;o++)for(let l=0;l<t;l++)n[o*t+l]=t*this.perm[o]+(this.ori[o]+l)%t;return new mt(n)}identicalPieces(){let t=[],r=this.perm.length,n=[];for(let o=0;o<r;o++){let l=this.perm[o];if(t[l]===void 0){let i=[o];t[l]=!0;for(let s=o+1;s<r;s++)this.perm[s]===l&&i.push(s);n.push(i)}}return n}order(){return this.toPerm().order()}isIdentity(){let t=this.perm.length;if(this.perm===Ct(t)&&this.ori===gr(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===gr(t))return!0;for(let r=0;r<t;r++)if(this.ori[r]!==0)return!1;return!0}remap(t,r,n){let o=new Array(n),l=new Array(n);for(let i=0;i<n;i++)o[i]=r[this.perm[t[i]]],l[i]=this.ori[t[i]];return new yt(o,l,this.orimod)}remapVS(t,r){let n=new Array(r),o=new Array(r),l=0,i=[];for(let s=0;s<r;s++){let f=this.perm[t[s]];i[f]===void 0&&(i[f]=l++),n[s]=i[f],o[s]=this.ori[t[s]]}return new yt(n,o,this.orimod)}appendDefinition(t,r,n,o=!0){if(!(o&&this.isIdentity())&&(t.push(r),t.push(this.perm.map(l=>l+1).join(\\\" \\\")),!this.zeroOris()))if(n){let l=new Array(this.ori.length);for(let i=0;i<l.length;i++)l[this.perm[i]]=this.ori[i];t.push(l.join(\\\" \\\"))}else t.push(this.ori.join(\\\" \\\"))}toKPuzzle(){let t=this.perm.length;return this.isIdentity()?(yt.kcache[t]||(yt.kcache[t]={permutation:Ct(t),orientation:gr(t)}),yt.kcache[t]):{permutation:this.perm,orientation:this.ori}}},Vt=yt;Vt.kcache=[];Ps=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 o of this.orbits){let l=o.toPerm();t.push(l),r+=l.n}let n=new Array(r);r=0;for(let o of t){for(let l=0;l<o.n;l++)n[r+l]=r+o.p[l];r+=o.n}return new mt(n)}identicalPieces(){let t=[],r=0;for(let n of this.orbits){let o=n.orimod,l=n.identicalPieces();for(let i=0;i<l.length;i++)t.push(l[i].map(s=>s*o+r));r+=o*n.perm.length}return t}order(){let t=1;for(let r of this.orbits)t=_s(t,r.order());return t}},cr=class extends Ps{constructor(t){super(t)}mul(t){return new cr(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,o=this.e();for(;t>0;)t&1&&(o=o.mul(n)),t>1&&(n=n.mul(n)),t>>=1;return o}inv(){return new cr(this.internalInv())}e(){return new cr(this.orbits.map(t=>Vt.e(t.perm.length,t.orimod)))}},xn=class extends Ps{constructor(t){super(t)}mul(t){return new xn(this.internalMul(t))}},Ms=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),o=this.find(r);n<o?this.heads[o]=n:n>o&&(this.heads[n]=o)}}});var Pl,M0=U(()=>{Pl={\\\"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 Ml(e){let t=new I(0,0,0,0);for(let r=0;r<e.length;r++)t=t.sum(e[r]);return t.smul(1/e.length)}function N0(e,t,r,n){let o=n[e].intersect3(n[t],n[r]);if(!o)return o;for(let l=0;l<n.length;l++)if(l!==e&&l!==t&&l!==r){let i=n[l].b*o.b+n[l].c*o.c+n[l].d*o.d;if(n[l].a>0&&i>n[l].a||n[l].a<0&&i<n[l].a)return!1}return o}var Gr,I,Nl=U(()=>{Gr=1e-9;I=class{constructor(t,r,n,o){this.a=t;this.b=r;this.c=n;this.d=o}mul(t){return new I(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 I(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 I(this.a/t,this.b/t,this.c/t,this.d/t)}makenormal(){return new I(0,this.b,this.c,this.d).normalize()}normalizeplane(){let t=Math.hypot(this.b,this.c,this.d);return new I(this.a/t,this.b/t,this.c/t,this.d/t)}smul(t){return new I(this.a*t,this.b*t,this.c*t,this.d*t)}sum(t){return new I(this.a+t.a,this.b+t.b,this.c+t.c,this.d+t.d)}sub(t){return new I(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 I(this.a,-this.b,-this.c,-this.d)}det3x3(t,r,n,o,l,i,s,f,a){return t*(l*a-i*f)+r*(i*s-o*a)+n*(o*f-l*s)}rotateplane(t){let r=t.mul(new I(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 I(0,1,0,0)).normalize():r<t&&r<n?this.cross(new I(0,0,1,0)).normalize():this.cross(new I(0,0,0,1)).normalize()}pointrotation(t){let r=this.normalize();if(t=t.normalize(),r.sub(t).len()<Gr)return new I(1,0,0,0);let n=r.sum(t);n.len()<Gr?n=n.orthogonal():n=n.normalize();let o=r.cross(n);return o.a=r.dot(n),o}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)<Gr?!1:new I(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>Gr?1:t<-Gr?-1:0}cutface(t){let r=this.a,n=0,o=null;for(let l=0;l<t.length;l++)n|=1<<this.side(t[l].dot(this)-r)+1;if((n&5)==5){o=[];let l=t.map(i=>this.side(i.dot(this)-r));for(let i=-1;i<=1;i+=2){let s=[];for(let f=0;f<t.length;f++){(l[f]===i||l[f]===0)&&s.push(t[f]);let a=(f+1)%t.length;if(l[f]+l[a]===0&&l[f]!==0){let g=t[f].dot(this)-r,c=t[a].dot(this)-r,u=g/(g-c),p=t[f].smul(1-u).sum(t[a].smul(u));s.push(p)}}o.push(s)}}return o}cutfaces(t){let r=[];for(let n=0;n<t.length;n++){let o=t[n],l=this.cutface(o);l?(r.push(l[0]),r.push(l[1])):r.push(o)}return r}faceside(t){let r=this.a;for(let n=0;n<t.length;n++){let o=this.side(t[n].dot(this)-r);if(o!==0)return o}throw new Error(\\\"Could not determine side of plane in faceside\\\")}sameplane(t){let r=this.normalize(),n=t.normalize();return r.dist(n)<Gr||r.dist(n.smul(-1))<Gr}makecut(t){return new I(t,this.b,this.c,this.d)}}});function T0(){let e=Math.sqrt(.5);return[new I(e,e,0,0),new I(e,0,e,0)]}function G0(){return[new I(.5,.5,.5,.5),new I(.5,.5,.5,-.5)]}function O0(){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 I(Math.cos(e),t*Math.sin(e),r*Math.sin(e),0),new I(.5,.5,.5,.5)]}function I0(){let e=1/6+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 I(Math.cos(n),e*Math.sin(n),t*Math.sin(n),0),new I(Math.cos(n),-e*Math.sin(n),t*Math.sin(n),0)]}function W0(){let e=Math.sqrt(.5);return[new I(.5,.5,.5,.5),new I(e,0,0,e)]}function K0(e){let t=[new I(1,0,0,0)];for(let r=0;r<t.length;r++)for(let n=0;n<e.length;n++){let o=e[n].mul(t[r]),l=o.smul(-1),i=!1;for(let s=0;s<t.length;s++)if(o.dist(t[s])<Tl||l.dist(t[s])<Tl){i=!0;break}i||t.push(o)}return t}function Ns(e,t){let r=[],n=[];for(let o=0;o<t.length;o++){let l=e.rotateplane(t[o]),i=!1;for(let s=0;s<r.length;s++)if(l.dist(r[s])<Tl){i=!0;break}i||(r.push(l),n.push(t[o]))}return n}function Ts(e){let t=[];for(let r=1;r<e.length;r++)for(let n=r+1;n<e.length;n++){let o=N0(0,r,n,e);if(o){let l=!1;for(let i=0;i<t.length;i++)if(o.dist(t[i])<Tl){l=!0;break}l||t.push(o)}}for(;;){let r=!1;for(let n=0;n<t.length;n++){let o=(n+1)%t.length;if(e[0].dot(t[n].cross(t[o]))<0){let l=t[n];t[n]=t[o],t[o]=l,r=!0}}if(!r)break}return t}var Tl,Q0=U(()=>{Nl();Tl=1e-9});function Gl(e,t){let r=e[0].p.length,n=z0(r),o=[],l=[],i=[],s=[],f=[];function a(p){for(let m=p.p.length-1;m>=0;m--){let L=p.p[m];if(L!==m){if(!o[m][L])return!1;p=p.mul(l[m][L])}}return!0}function g(p,m,L){s[p].push(m),f[p].push(L);for(let R=0;R<o[p].length;R++)o[p][R]&&c(p,o[p][R].mul(m),L+i[p][R])}function c(p,m,L){let R=m.p[p];if(!o[p][R]){o[p][R]=m,l[p][R]=m.inv(),i[p][R]=L;for(let A=0;A<s[p].length;A++)c(p,m.mul(s[p][A]),L+f[p][A]);return}let D=m.mul(l[p][R]);a(D)||g(p-1,D,L+i[p][R])}function u(){o=[],l=[],s=[],i=[],f=[];for(let L=0;L<r;L++)o.push([]),l.push([]),i.push([]),s.push([]),f.push([]),o[L][L]=n,l[L][L]=n,i[L][L]=0;let p=0,m=1;for(let L=0;L<e.length;L++){g(r-1,e[L],1),m=1;let R=0,D=0,A=[],y=new j0;for(let k=0;k<r;k++){let E=0,Q=0;for(let N=0;N<r;N++)o[k][N]&&(E++,Q+=i[k][N],k!==N&&p++);R+=s[k].length,m*=E,E>1&&y.multiply(E);let $=Q/E;A.push($),D+=$}t(`${L}: sz ${m} T ${R} sol ${D} none ${p} mults ${y.toString()}`)}return m}return u()}var j0,Gs=U(()=>{Cl();j0=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 Os(e){return e}function Is(e){}function Sp(e,t){let r=[];for(let n of e)for(let o of t)r.push(o.rotate(n));return r}function vp(){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 Ep(){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 kp(){return{4:[\\\"F\\\",\\\"D\\\",\\\"L\\\",\\\"R\\\"],6:[\\\"U\\\",\\\"D\\\",\\\"F\\\",\\\"B\\\",\\\"L\\\",\\\"R\\\"],8:[\\\"F\\\",\\\"BB\\\",\\\"D\\\",\\\"U\\\",\\\"BR\\\",\\\"L\\\",\\\"R\\\",\\\"BL\\\"],12:[\\\"L\\\",\\\"E\\\",\\\"F\\\",\\\"BF\\\",\\\"R\\\",\\\"I\\\",\\\"U\\\",\\\"D\\\",\\\"BR\\\",\\\"A\\\",\\\"BL\\\",\\\"C\\\"],20:[\\\"L\\\",\\\"S\\\",\\\"E\\\",\\\"O\\\",\\\"F\\\",\\\"B\\\",\\\"I\\\",\\\"P\\\",\\\"R\\\",\\\"K\\\",\\\"U\\\",\\\"D\\\",\\\"J\\\",\\\"A\\\",\\\"Q\\\",\\\"H\\\",\\\"G\\\",\\\"N\\\",\\\"M\\\",\\\"C\\\"]}}function zp(){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 Ol(e,t){for(let r=0;r<e.length;r++)if(e[r][0].dist(t)<xe)return r;throw new Error(\\\"Element not found\\\")}function q0(){return Pl}function V0(e){return Pl[e]}function Eo(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 o=1;o<t.length;o+=2){if(t[o]!==\\\"f\\\"&&t[o]!==\\\"v\\\"&&t[o]!==\\\"e\\\")return null;n.push({cutType:t[o],distance:parseFloat(t[o+1])})}return{shape:r,cuts:n}}function Ws(e,t={}){let r=Eo(e);if(r===null)throw new Error(\\\"Could not parse the puzzle description\\\");let n=new Wl(r,Object.assign({},{allMoves:!0},t));return n.allstickers(),n.genperms(),n}function vn(e,t){return Ws(Pl[e],t)}function _p(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 o=e[0],l=\\\"\\\";if(t[0]===0&&t[1]===r)o=o+\\\"v\\\";else if(t[0]===t[1])t[1]>0&&(l=String(t[1]+1));else if(t[0]===0)o=o.toLowerCase(),t[1]>1&&(l=String(t[1]+1));else throw`We only support slice and outer block moves right now. ${t}`;return[l+o,n]}function Cp(e,t){let r=[],n=0;for(;n<e.length;){n>0&&n<e.length&&e[n]===\\\"_\\\"&&n++;let o=\\\"\\\";for(let l of t)e.substr(n).startsWith(l[1])&&l[1].length>o.length&&(o=l[1]);if(o!==\\\"\\\")r.push(o),n+=o.length;else throw new Error(\\\"Could not split \\\"+e+\\\" into face names.\\\")}return r}function Il(e,t){return[e.b/t,-e.c/t,e.d/t]}function Ks(e,t){let r=[],n=e.length;for(let o=0;o<n;o++){let l=Il(e.get(n-o-1),t);r[3*o]=l[0],r[3*o+1]=l[1],r[3*o+2]=l[2]}return r}var wn,zo,xe,xp,wp,Wl,Or,_l=U(()=>{Re();B0();ws();Es();Cl();P0();M0();Q0();Nl();Gs();wn=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 I(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 o=0;o<this.length;o++)t+=this.coords[3*o],r+=this.coords[3*o+1],n+=this.coords[3*o+2];return new I(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 wn(r)}rotateforward(){let t=[];for(let r=1;r<this.length;r++)t.push(this.get(r));return t.push(this.get(0)),new wn(t)}},zo=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 zo(r[0]),this.right=new zo(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 wn(this.face)):r?(this.left?.collect(t,!1),this.right?.collect(t,!0)):(this.right?.collect(t,!1),this.left?.collect(t,!0)),t}};xe=1e-9,xp=\\\"PuzzleGeometry 0.1 Copyright 2018 Tomas Rokicki.\\\",wp=!1;Wl=class{constructor(t,r){this.puzzleDescription=t;this.cmovesbyslice=[];this.duplicatedFaces=[];this.duplicatedCubies=[];this.fixedCubie=-1;this.net=[];this.colors=[];this.faceorder=[];this.faceprecedence=[];this.notationMapper=new bn;this.addNotationMapper=\\\"\\\";this.setReidOrder=!1;let n=Os(\\\"genperms\\\");this.options=new vs(r),this.options.verbosity>0&&console.log(this.header(\\\"# \\\")),this.create(t),Is(n)}create(t){let{shape:r,cuts:n}=t;this.moveplanes=[],this.moveplanes2=[],this.faces=[],this.cubies=[];let o=null;switch(r){case\\\"c\\\":o=T0();break;case\\\"o\\\":o=W0();break;case\\\"i\\\":o=I0();break;case\\\"t\\\":o=G0();break;case\\\"d\\\":o=O0();break;default:throw new Error(\\\"Bad shape argument: \\\"+r)}this.rotations=K0(o),this.options.verbosity&&console.log(\\\"# Rotations: \\\"+this.rotations.length);let l=o[0];this.baseplanerot=Ns(l,this.rotations);let i=this.baseplanerot.map(h=>l.rotateplane(h));this.baseplanes=i,this.baseFaceCount=i.length;let s=vp()[i.length];this.net=s,this.colors=Ep()[i.length],this.faceorder=kp()[i.length],this.options.verbosity>0&&console.log(\\\"# Base planes: \\\"+i.length);let f=Ts(i),a=new I(0,0,0,0);this.options.verbosity>0&&console.log(\\\"# Face vertices: \\\"+f.length);let g=i[0].makenormal(),c=f[0].sum(f[1]).makenormal(),u=f[0].makenormal(),p=new I(1,g.b,g.c,g.d);this.options.verbosity>0&&console.log(\\\"# Boundary is \\\"+p);let L=Ns(p,this.rotations).map(h=>p.rotateplane(h)),R=Ts(L);this.edgedistance=R[0].sum(R[1]).smul(.5).dist(a),this.vertexdistance=R[0].dist(a);let D=[],A=[],y=!1,k=!1,E=!1;for(let h of n){let v=null,G=0;switch(h.cutType){case\\\"f\\\":v=g,G=1,y=!0;break;case\\\"v\\\":v=u,G=this.vertexdistance,E=!0;break;case\\\"e\\\":v=c,G=this.edgedistance,k=!0;break;default:throw new Error(\\\"Bad cut argument: \\\"+h.cutType)}D.push(v.makecut(h.distance)),A.push(h.distance<G)}this.options.addRotations&&(y||D.push(g.makecut(10)),E||D.push(u.makecut(10)),k||D.push(c.makecut(10))),this.basefaces=[];for(let h of this.baseplanerot){let v=h.rotateface(R);this.basefaces.push(new wn(v))}let Q=[],$=[],N=[],oe=[],b=R.length;function _(h,v,G){for(let K of h)if(K[0].dist(v)<xe){K.push(G);return}h.push([v,G])}for(let h=0;h<this.baseplanerot.length;h++){let v=this.baseplanerot[h].rotateface(R);for(let G=0;G<v.length;G++){let K=(G+1)%v.length,le=v[G].sum(v[K]).smul(.5);_(oe,le,h)}}let M=[];for(let h=0;h<this.baseplanerot.length;h++){let v=this.baseplanerot[h].rotateface(R),G=[];for(let K=0;K<v.length;K++){let le=(K+1)%v.length,Ve=v[K].sum(v[le]).smul(.5),ut=oe[Ol(oe,Ve)];if(h===ut[1])G.push(ut[2]);else if(h===ut[2])G.push(ut[1]);else throw new Error(\\\"Could not find edge\\\")}M.push(G)}let x={},w=[];w.push(s[0][0]),x[s[0][0]]=0,w[M[0][0]]=s[0][1],x[s[0][1]]=M[0][0];for(let h of s){let v=h[0],G=x[v];if(G===void 0)throw new Error(\\\"Bad edge description; first edge not connected\\\");let K=-1;for(let le=0;le<M[G].length;le++){let Ve=w[M[G][le]];if(Ve!==void 0&&Ve===h[1]){K=le;break}}if(K<0)throw new Error(\\\"First element of a net not known\\\");for(let le=2;le<h.length;le++){if(h[le]===\\\"\\\")continue;let Ve=M[G][(le+K-1)%b],ut=w[Ve];if(ut!==void 0&&ut!==h[le])throw new Error(\\\"Face mismatch in net\\\");w[Ve]=h[le],x[h[le]]=Ve}}for(let h=0;h<w.length;h++){let v=!1;for(let G=0;G<this.faceorder.length;G++)if(w[h]===this.faceorder[G]){this.faceprecedence[h]=G,v=!0;break}if(!v)throw new Error(\\\"Could not find face \\\"+w[h]+\\\" in face order list \\\"+this.faceorder)}for(let h=0;h<this.baseplanerot.length;h++){let v=this.baseplanerot[h].rotateface(R),G=p.rotateplane(this.baseplanerot[h]),K=w[h];Q.push([v,K]),$.push([G,K])}for(let h=0;h<this.baseplanerot.length;h++){let v=this.baseplanerot[h].rotateface(R),G=w[h];for(let K=0;K<v.length;K++){let le=(K+1)%v.length,Ve=v[K].sum(v[le]).smul(.5),ut=(K+2)%v.length,kc=v[le].sum(v[ut]).smul(.5),zc=Ol(oe,Ve),_c=Ol(oe,kc);_(N,v[le],[G,_c,zc])}}this.swizzler=new xo(Q.map(h=>h[1]));let C=this.swizzler.prefixFree?\\\"\\\":\\\"_\\\";for(let h=0;h<oe.length;h++){if(oe[h].length!==3)throw new Error(\\\"Bad length in edge names \\\"+oe[h]);let v=w[oe[h][1]],G=w[oe[h][2]];this.faceprecedence[oe[h][1]]<this.faceprecedence[oe[h][2]]?v=v+C+G:v=G+C+v,oe[h]=[oe[h][0],v]}for(let h=0;h<N.length;h++){if(N[h].length<4)throw new Error(\\\"Bad length in vertex names\\\");let v=1;for(let K=2;K<N[h].length;K++)this.faceprecedence[x[N[h][K][0]]]<this.faceprecedence[x[N[h][v][0]]]&&(v=K);let G=\\\"\\\";for(let K=1;K<N[h].length;K++){K===1?G=N[h][v][0]:G=G+C+N[h][v][0];for(let le=1;le<N[h].length;le++)if(N[h][v][1]===N[h][le][2]){v=le;break}}N[h]=[N[h][0],G]}this.options.verbosity>1&&(console.log(\\\"# Face precedence list: \\\"+this.faceorder.join(\\\" \\\")),console.log(\\\"# Face names: \\\"+Q.map(h=>h[1]).join(\\\" \\\")),console.log(\\\"# Edge names: \\\"+oe.map(h=>h[1]).join(\\\" \\\")),console.log(\\\"# Vertex names: \\\"+N.map(h=>h[1]).join(\\\" \\\")));let j=[];for(let h of $)j.push([h[0].makenormal(),h[1],\\\"f\\\"]);for(let h of oe)j.push([h[0].makenormal(),h[1],\\\"e\\\"]);for(let h of N)j.push([h[0].makenormal(),h[1],\\\"v\\\"]);this.facenames=Q,this.faceplanes=$,this.edgenames=oe,this.vertexnames=N,this.geonormals=j;let Z=j.map(h=>h[1]);this.swizzler.setGripNames(Z),this.options.verbosity>0&&console.log(\\\"# Distances: face \\\"+1+\\\" edge \\\"+this.edgedistance+\\\" vertex \\\"+this.vertexdistance);for(let h=0;h<D.length;h++)for(let v of this.rotations){let G=D[h].rotateplane(v),K=!1;for(let le of this.moveplanes)if(G.sameplane(le)){K=!0;break}K||(this.moveplanes.push(G),A[h]&&this.moveplanes2.push(G))}let ce=new zo(R),Le=this.moveplanes2.slice(),Ae=31;for(let h=0;h<Le.length;h++){let v=h+Math.floor((Le.length-h)*(Ae/65536));ce=ce.split(Le[v]),Le[v]=Le[h],Ae=(Ae*1657+101)%65536}let be=ce.collect([],!0);this.faces=be,this.options.verbosity>0&&console.log(\\\"# Faces is now \\\"+be.length),this.stickersperface=be.length;let kt=[],Ne=Ml(R);for(let h of this.rotations){let v=h.rotateface(R);Ne.dist(Ml(v))<xe&&kt.push(h)}let nt=new Array(be.length),ve=[];for(let h=0;h<be.length;h++){let v=be[h].centermass();ve.push([Ne.dist(v),v,h])}ve.sort((h,v)=>h[0]-v[0]);for(let h=0;h<be.length;h++){let v=ve[h][2];if(!nt[v]){nt[v]=!0;for(let G of kt){let K=be[v].rotate(G),le=K.centermass();for(let Ve=h+1;Ve<be.length&&!(ve[Ve][0]-ve[h][0]>xe);Ve++){let ut=ve[Ve][2];if(!nt[ut]&&le.dist(ve[Ve][1])<xe){nt[ut]=!0,be[ut]=K;break}}}}}this.shortedge=1e99;for(let h of be)for(let v=0;v<h.length;v++){let G=(v+1)%h.length,K=h.get(v).dist(h.get(G));K<this.shortedge&&(this.shortedge=K)}this.options.verbosity>0&&console.log(\\\"# Short edge is \\\"+this.shortedge),r===\\\"c\\\"&&y&&!k&&!E&&(this.addNotationMapper=\\\"NxNxNCubeMapper\\\",this.setReidOrder=!0),r===\\\"c\\\"&&E&&!y&&!k&&(this.addNotationMapper=\\\"SkewbMapper\\\"),r===\\\"t\\\"&&(E||y)&&!k&&(this.addNotationMapper=\\\"PyraminxOrTetraminxMapper\\\"),r===\\\"o\\\"&&y&&(this.notationMapper=new wo(this.swizzler,new xo([\\\"F\\\",\\\"D\\\",\\\"L\\\",\\\"BL\\\",\\\"R\\\",\\\"U\\\",\\\"BR\\\",\\\"B\\\"])),!k&&!E&&(this.addNotationMapper=\\\"FTOMapper\\\")),r===\\\"d\\\"&&y&&(this.addNotationMapper=\\\"MegaminxMapper\\\",this.notationMapper=new wo(this.swizzler,new xo([\\\"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 o of this.moveplanesets)if(o.length>0){let l=t.dot(o[0]),i=0,s=1;for(;s*2<=o.length;)s*=2;for(;s>0;s>>=1)i+s<=o.length&&l>o[i+s-1].a&&(i+=s);if(i<47)r=r+n(33+i);else if(i<47+47*47)r=r+n(33+47+Math.floor(i/47)-1)+n(33+i%47);else if(i<47+47*47+47*47*47)r=r+n(33+47+Math.floor((i-47)/(47*47)-1))+n(33+47+Math.floor((i-47)/47)%47)+n(33+i%47);else throw Error(\\\"Too many slices for cubie encoding\\\")}return r}keyface3(t){let r=t.centermass(),n=[];for(let o of this.moveplanesets)if(o.length>0){let l=r.dot(o[0]),i=0,s=1;for(;s*2<=o.length;)s*=2;for(;s>0;s>>=1)i+s<=o.length&&l>o[i+s-1].a&&(i+=s);n.push(i)}return n}findface(t){let r=this.keyface2(t),n=this.facelisthash.get(r);if(n.length===1)return n[0];for(let o=0;o+1<n.length;o++){let l=this.facelisthash.get(r)[o];if(Math.abs(t.dist(this.facecentermass[l]))<xe)return l}return n[n.length-1]}project2d(t,r,n){let o=this.facenames[t][0],l=(r+1)%o.length,i=this.baseplanes[t],s=o[l].sub(o[r]),f=s.len();s=s.normalize();let a=s.cross(i).normalize(),g=n[1].sub(n[0]),c=g.len()/f;g=g.normalize();let u=g.b,p=g.c,m=s.smul(u).sub(a.smul(p)).smul(c),L=a.smul(u).sum(s.smul(p)).smul(c),R=new I(0,n[0].b-m.dot(o[r]),n[0].c-L.dot(o[r]),0);return[m,L,R]}allstickers(){let t=Os(\\\"allstickers\\\");this.faces=Sp(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 b=0;b<this.faces.length;b++)this.facecentermass[b]=this.faces[b].centermass();let r=[],n=[];for(let b of this.moveplanes){let _=b.makenormal(),M=!1;for(let x of n)_.sameplane(x.makenormal())&&(M=!0);M||(n.push(_),r.push([]))}for(let b of this.moveplanes2){let _=b.makenormal();for(let M=0;M<n.length;M++)if(_.sameplane(n[M])){r[M].push(b);break}}for(let b=0;b<r.length;b++){let _=r[b].map(x=>x.normalizeplane()),M=n[b];for(let x=0;x<_.length;x++)_[x].makenormal().dist(M)>xe&&(_[x]=_[x].smul(-1));_.sort((x,w)=>x.a-w.a),r[b]=_}this.moveplanesets=r,this.moveplanenormals=n;let o=r.map(b=>b.length);this.options.verbosity>0&&console.log(\\\"# Move plane sets: \\\"+o);let l=[];for(let b=0;b<r.length;b++)l.push([]);for(let b of this.rotations){if(Math.abs(Math.abs(b.a)-1)<xe)continue;let _=b.makenormal();for(let M=0;M<r.length;M++)if(_.sameplane(n[M])){l[M].push(b);break}}this.moverotations=l;for(let b=0;b<l.length;b++){let _=l[b],M=_[0].makenormal();for(let x=0;x<_.length;x++)M.dist(_[x].makenormal())>xe&&(_[x]=_[x].smul(-1));_.sort((x,w)=>x.angle()-w.angle()),l[b][0].dot(n[b])<0&&_.reverse()}let i=l.map(b=>1+b.length);this.movesetorders=i;let s=[],f=\\\"?\\\";for(let b=0;b<r.length;b++){let _=n[b],M=null,x=null;for(let w of this.geonormals){let C=_.dot(w[0]);Math.abs(C-1)<xe?(x=[w[1],w[2]],f=w[2]):Math.abs(C+1)<xe&&(M=[w[1],w[2]],f=w[2])}if(x===null||M===null)throw new Error(\\\"Saw positive or negative sides as null\\\");s.push([x[0],x[1],M[0],M[1],1+r[b].length]),this.addNotationMapper===\\\"NxNxNCubeMapper\\\"&&f===\\\"f\\\"&&(this.notationMapper=new El(1+r[b].length),this.addNotationMapper=\\\"\\\"),this.addNotationMapper===\\\"SkewbMapper\\\"&&r[0].length===1&&(this.notationMapper=new zl(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 vo(this.swizzler),this.addNotationMapper=\\\"\\\"):(this.notationMapper=new kl(this.swizzler),this.addNotationMapper=\\\"\\\")),this.addNotationMapper===\\\"MegaminxMapper\\\"&&f===\\\"f\\\"&&(1+r[b].length===3&&(this.notationMapper=new vl(this.notationMapper)),this.addNotationMapper=\\\"\\\"),this.addNotationMapper===\\\"FTOMapper\\\"&&f===\\\"f\\\"&&(1+r[b].length===3&&(this.notationMapper=new wl(this.notationMapper,this.swizzler)),this.addNotationMapper=\\\"\\\")}this.movesetgeos=s;let a=new Map,g=this.faces;for(let b=0;b<g.length;b++){let _=g[b],M=this.keyface(_);if(!a.get(M))a.set(M,[b]);else{let x=a.get(M);if(x.push(b),x.length===this.baseFaceCount){this.options.verbosity>0&&console.log(\\\"# Splitting core.\\\");for(let w=0;w<x.length;w++){let C=M+\\\" \\\"+w;a.set(C,[x[w]])}}}}this.facelisthash=a,this.options.verbosity>0&&console.log(\\\"# Cubies: \\\"+a.size);let c=[],u=[],p=[];for(let b of a.values())if(b.length!==this.baseFaceCount){if(b.length>1){let _=b.map(C=>g[C].centermass()),M=Ml(_);for(let C=0;b.length>2;C++){let j=!1;for(let Z=0;Z<b.length;Z++){let ce=(Z+1)%b.length;if(M.dot(_[Z].cross(_[ce]))<0){let Le=_[Z];_[Z]=_[ce],_[ce]=Le;let Ae=b[Z];b[Z]=b[ce],b[ce]=Ae,j=!0}}if(!j)break;if(C>1e3)throw new Error(\\\"Bad epsilon math; too close to border\\\")}let x=0,w=b[x];for(let C=1;C<b.length;C++){let j=b[C];this.faceprecedence[this.getfaceindex(j)]<this.faceprecedence[this.getfaceindex(w)]&&(x=C,w=j)}if(x!==0){let C=b.slice();for(let j=0;j<b.length;j++)b[j]=C[(x+j)%b.length]}}for(let _=0;_<b.length;_++){let M=b[_];u[M]=c.length,p[M]=_}c.push(b)}this.cubies=c,this.facetocubie=u,this.facetoord=p;let m=[\\\"?\\\",\\\"CENTERS\\\",\\\"EDGES\\\",\\\"CORNERS\\\",\\\"C4RNER\\\",\\\"C5RNER\\\"],L=[],R=[0,0,0,0,0,0],D=[],A=[],y=0,k=[],E=[],Q=[],$=[],N=b=>c[b].map(_=>this.getfaceindex(_)).join(\\\" \\\"),oe=[];for(let b=0;b<c.length;b++){if(A[b])continue;let _=c[b];if(_.length===0)continue;let M={},x=0;Q.push(0),oe.push([]);let w=_.length,C=R[w]++,j=m[w];(j===void 0||w===this.baseFaceCount)&&(j=\\\"CORE\\\"),j=j+(C===0?\\\"\\\":C+1),L[y]=j,D[y]=w;let Z=[b],ce=0;for(A[b]=!0;ce<Z.length;){let Le=Z[ce++],Ae=N(Le);if((_.length>1||M[Ae]===void 0)&&(M[Ae]=x++),$[Le]=M[Ae],k[Le]=y,oe[y].push(Le),E[Le]=Q[y]++,Z.length<this.rotations.length){let be=this.facecentermass[c[Le][0]];for(let kt of l){let Ne=this.facetocubie[this.findface(be.rotatepoint(kt[0]))];A[Ne]||(Z.push(Ne),A[Ne]=!0)}}}y++}if(this.setReidOrder&&4<=this.stickersperface&&this.stickersperface<=9){let b=[[\\\"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\\\"]],_={};for(let M of b)for(let x=0;x<M.length;x++){let w=0;for(let C=0;C<M[x].length;C++)w|=1<<M[x].charCodeAt(C)-65;_[w]=x}for(let M of oe)for(let x of M){let w=0;for(let C of c[x])w|=1<<this.facenames[this.getfaceindex(C)][1].charCodeAt(0)-65;E[x]=_[w]}}if(this.cubiesetnums=k,this.cubieordnums=E,this.cubiesetnames=L,this.cubieords=Q,this.orbitoris=D,this.cubievaluemap=$,this.cubiesetcubies=oe,this.options.fixedPieceType!==null){for(let b=0;b<c.length;b++)if(this.options.fixedPieceType===\\\"v\\\"&&c[b].length>2||this.options.fixedPieceType===\\\"e\\\"&&c[b].length===2||this.options.fixedPieceType===\\\"f\\\"&&c[b].length===1){this.fixedCubie=b;break}if(this.fixedCubie<0)throw new Error(\\\"Could not find a cubie of type \\\"+this.options.fixedPieceType+\\\" to fix.\\\")}this.options.verbosity>0&&console.log(\\\"# Cubie orbit sizes \\\"+Q),Is(t)}unswizzle(t){let r=this.notationMapper.notationToInternal(t);return r===null?\\\"\\\":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 o=n[4],l,i;if(n[2]!==void 0){if(n[3]===void 0)throw new Error(\\\"Missing second number in range\\\");l=parseInt(n[2],10)}n[3]!==void 0&&(i=parseInt(n[3],10));let s=\\\"1\\\",f=1;return n[5]!==void 0&&(s=n[5],s[0]===\\\"'\\\"&&(s=\\\"-\\\"+s.substring(1)),f=parseInt(s,10)),new B(new P(o,i,l),f)}parseMove(t){let r=this.notationMapper.notationToInternal(t);if(r===null)throw new Error(\\\"Bad move \\\"+t.family);t=r;let n=t.family,o=!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),o=!0}n.endsWith(\\\"w\\\")&&n[0]<=\\\"Z\\\"&&(n=n.slice(0,-1).toLowerCase());let l,i=-1,s=this.swizzler.unswizzle(n),f=!1;for(let c=0;c<this.movesetgeos.length;c++){let u=this.movesetgeos[c];s===u[0]&&(f=!0,l=u,i=c),s===u[2]&&(f=!1,l=u,i=c)}let a=1,g=1;if(n.toUpperCase()!==n&&(g=2),l===void 0)throw new Error(\\\"Bad grip in move \\\"+t.family);if(t.outerLayer!==void 0&&(a=t.outerLayer),t.innerLayer!==void 0&&(t.outerLayer===void 0?(g=t.innerLayer,n<=\\\"Z\\\"?a=g:a=1):g=t.innerLayer),a--,g--,o&&(a=0,g=this.moveplanesets[i].length),a<0||a>this.moveplanesets[i].length||g<0||g>this.moveplanesets[i].length)throw new Error(\\\"Bad slice spec \\\"+a+\\\" \\\"+g+\\\" vs \\\"+this.moveplanesets[i].length);if(!wp&&a===0&&g===this.moveplanesets[i].length&&!o)throw new Error(\\\"! full puzzle rotations must be specified with v suffix.\\\");return[void 0,i,a,g,f,t.amount]}parsemove(t){let r=this.parseMove(this.stringToBlockMove(t));return r[0]=t,r}genperms(){let t=Os(\\\"genperms\\\");if(this.cmovesbyslice.length>0)return;let r=[];if(this.options.orientCenters){for(let n=0;n<this.cubies.length;n++)if(this.cubies[n].length===1){let o=this.cubies[n][0],l=this.getfaceindex(o);if(this.basefaces[l].centermass().dist(this.facecentermass[o])<xe){let i=this.basefaces[l].length;for(let s=1;s<i;s++)this.cubies[n].push(this.cubies[n][s-1]);this.duplicatedFaces[o]=i,this.duplicatedCubies[n]=i,this.orbitoris[this.cubiesetnums[n]]=i}}}for(let n=0;n<this.moveplanesets.length;n++){let o=this.moveplanesets[n],l=[],i=[o.length+1,0],s=1;for(;s*2<=o.length;)s*=2;for(let g=0;g<this.faces.length;g++){let c=0;if(o.length>0){let u=this.facecentermass[g].dot(o[0]);for(let p=s;p>0;p>>=1)c+p<=o.length&&u>o[c+p-1].a&&(c+=p);c=o.length-c}for(l.push(c);i.length<=c;)i.push(0);i[c]++}let f=new Array(i.length);for(let g=0;g<i.length;g++)f[g]=[];let a=[];for(let g=0;g<this.faces.length;g++){if(l[g]<0)continue;let c=[this.facetocubie[g],this.facetoord[g]],u=this.facecentermass[g],p=u,m=g,L=l[m];for(;;){l[m]=-1;let R=u.rotatepoint(this.moverotations[n][0]);if(R.dist(p)<xe)break;m=this.findface(R),c.push(this.facetocubie[m],this.facetoord[m]),u=R}if(c.length>2&&this.options.orientCenters&&(this.cubies[c[0]].length===1||this.duplicatedCubies[c[0]]>1)&&this.facecentermass[g].dist(this.basefaces[this.getfaceindex(g)].centermass())<xe){let R=this.faces[this.cubies[c[0]][0]];for(let D=0;D<c.length;D+=2){let A=this.faces[this.cubies[c[D]][0]],y=-1;for(let k=0;k<R.length;k++)if(A.get(k).dist(R.get(0))<xe){y=k;break}if(y<0)throw new Error(\\\"Couldn't find rotation of center faces; ignoring for now.\\\");c[D+1]=y,R=R.rotate(this.moverotations[n][0])}}if(c.length===2&&this.options.orientCenters)for(let R=1;R<this.movesetorders[n];R++)L===0?c.push(c[0],R):c.push(c[0],(this.movesetorders[n]-R)%this.movesetorders[n]);if(c.length>2&&!a[c[0]]){if(c.length!==2*this.movesetorders[n])throw new Error(\\\"Bad length in perm gen\\\");for(let R of c)f[L].push(R)}for(let R=0;R<c.length;R+=2)a[c[R]]=!0}for(let g=0;g<f.length;g++)f[g]=f[g].slice();r.push(f)}if(this.cmovesbyslice=r,this.options.moveList){let n=[];for(let o of this.options.moveList)n.push(this.parsemove(o));this.parsedmovelist=n}this.facelisthash.clear(),this.facecentermass=[],Is(t)}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 o of this.parsedmovelist)o[1]===t&&(o[4]?n.push([o[2],o[3]]):n.push([r-o[3],r-o[2]]),n.push(o[5]));else if(this.options.vertexMoves&&!this.options.allMoves){let o=this.movesetgeos[t];if(o[1]!==o[3])for(let l=0;l<r;l++)o[1]!==\\\"v\\\"?(this.options.outerBlockMoves?n.push([l+1,r]):n.push([l+1]),n.push(1)):(this.options.outerBlockMoves?n.push([0,l]):n.push([l,l]),n.push(1))}else for(let o=0;o<=r;o++)!this.options.allMoves&&o+o===r||(this.options.outerBlockMoves?o+o>r?n.push([o,r]):n.push([0,o]):n.push([o,o]),n.push(1));if(this.fixedCubie>=0){let o=this.keyface3(this.faces[this.cubies[this.fixedCubie][0]])[t],l=[];for(let i=0;i<n.length;i+=2){let s=n[i];if(o>=s[0]&&o<=s[1])if(s[0]===0)s=[s[1]+1,r];else if(r===s[1])s=[0,s[0]-1];else throw Error(\\\"fixed cubie option would disconnect move\\\");let f=!1;for(let a=0;a<l.length;a+=2)if(l[a][0]===s[0]&&l[a][1]===s[1]&&l[a+1]===n[i+1]){f=!0;break}f||(l.push(s),l.push(n[i+1]))}n=l}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+xp+`\\n`+t+`\\n`}writegap(){let t=this.getOrbitsDef(!1),r=[],n=[];for(let l=0;l<t.moveops.length;l++){let i=\\\"M_\\\"+Cs(this.notationMapper,t.movenames[l]),s=!1;i[i.length-1]===\\\"'\\\"&&(i=i.substring(0,i.length-1),s=!0),n.push(i),s?r.push(i+\\\":=\\\"+t.moveops[l].toPerm().inv().toGap()+\\\";\\\"):r.push(i+\\\":=\\\"+t.moveops[l].toPerm().toGap()+\\\";\\\")}r.push(\\\"Gen:=[\\\"),r.push(n.join(\\\",\\\")),r.push(\\\"];\\\");let o=t.solved.identicalPieces();return r.push(\\\"ip:=[\\\"+o.map(l=>\\\"[\\\"+l.map(i=>i+1).join(\\\",\\\")+\\\"]\\\").join(\\\",\\\")+\\\"];\\\"),r.push(\\\"# Size(Group(Gen));\\\"),r.push(\\\"# Size(Stabilizer(Group(Gen), ip, OnTuplesSets));\\\"),r.push(\\\"\\\"),this.header(\\\"# \\\")+r.join(`\\n`)}writeksolve(t=\\\"PuzzleGeometryPuzzle\\\"){let r=this.getOrbitsDef(!1);return this.header(\\\"# \\\")+r.toKsolve(t,this.notationMapper).join(`\\n`)}getKPuzzleDefinition(t=!0,r=!0){let o=this.getOrbitsDef(t,r).toKPuzzleDefinition(r);if(o.experimentalPuzzleDescription=this.puzzleDescription,!o)throw new Error(\\\"Missing definition!\\\");return o}getMoveFromBits(t,r,n,o,l,i){let s=[],f=[],a=[];for(let u of this.cubieords)f.push(Ct(u)),a.push(gr(u));for(let u=t[0];u<=t[1];u++){let p=o[u];for(let m=0;m<p.length;m+=2*i){let L=p.slice(m,m+2*i),R=this.cubiesetnums[L[0]];for(let y=0;y<L.length;y+=2)L[y]=this.cubieordnums[L[y]];let D=2,A=3;n&&(D=L.length-2,A=L.length-1),f[R]===Ct(this.cubieords[R])&&(f[R]=f[R].slice(),this.orbitoris[R]>1&&!this.options.fixedOrientation&&(a[R]=a[R].slice()));for(let y=0;y<L.length;y+=2)f[R][L[(y+D)%L.length]]=L[y],this.orbitoris[R]>1&&!this.options.fixedOrientation&&(a[R][L[y]]=(L[(y+A)%L.length]-L[(y+1)%L.length]+2*this.orbitoris[R])%this.orbitoris[R])}}let g=new Vt(Ct(24),gr(24),1);for(let u=0;u<this.cubiesetnames.length;u++)if(!(l&&!l[u]))if(this.orbitoris[u]===1||this.options.fixedOrientation)f[u]===Ct(g.perm.length)?(f[u]!==g.perm&&(g=new Vt(f[u],a[u],1)),s.push(g)):s.push(new Vt(f[u],a[u],1));else{let p=new Array(a[u].length);for(let m=0;m<f[u].length;m++)p[m]=a[u][f[u][m]];s.push(new Vt(f[u],p,this.orbitoris[u]))}let c=new cr(s);return r!==1&&(c=c.mulScalar(r)),c}omitSet(t){for(let r of this.options.excludeOrbits)if(r===t)return!0;return!1}diffmvsets(t,r,n,o){for(let l=0;l<t.length;l+=2){let i=!1;for(let s=0;!i&&s<r.length;s+=2)o?t[l][0]+r[s][1]===n&&t[l][1]+r[s][0]===n&&t[l+1]===r[s+1]&&(i=!0):t[l][0]===r[s][0]&&t[l][1]===r[s][1]&&t[l+1]===r[s+1]&&(i=!0);if(!i)return!0}return!1}getOrbitsDef(t,r=!0){let n=[];if(t)for(let u=0;u<this.cubiesetnames.length;u++)n.push(1);let o=[],l=[],i=[],s=[];for(let u=0;u<this.moveplanesets.length;u++){let p=this.getmovesets(u);i.push(p),this.options.addRotations?s.push(1):s.push(0)}if(this.options.moveList&&this.options.addRotations){for(let u=0;u<this.moverotations.length;u++)s[u]=0;for(let u=0;u<this.moveplanesets.length;u++)for(let p=0;p<this.moverotations.length;p++){let m=this.moveplanenormals[u];for(let L=1;L*2<=this.movesetorders[p];L++){if(m=m.rotatepoint(this.moverotations[p][0]),s[p]&L)continue;let R=-1,D=!1;for(let y=0;y<this.moveplanenormals.length;y++)if(m.dist(this.moveplanenormals[y])<xe){R=y;break}else if(m.dist(this.moveplanenormals[y].smul(-1))<xe){R=y,D=!0;break}if(R<0)throw new Error(\\\"Could not find rotation\\\");let A=i[R];(A.length!==i[u].length||this.moveplanesets[u].length!==this.moveplanesets[R].length||this.diffmvsets(A,i[u],this.moveplanesets[R].length,D))&&(s[p]|=L)}}for(let u=0;u<this.moverotations.length;u++)if(s[u]===0)s[u]=1;else if(s[u]===1)this.movesetorders[u]>3?s[u]=2:s[u]=0;else if(s[u]===3)s[u]=0;else throw new Error(\\\"Impossible addrot val\\\")}for(let u=0;u<this.moveplanesets.length;u++)s[u]!==0&&(i[u].push([0,this.moveplanesets[u].length]),i[u].push(s[u]));for(let u=0;u<this.moveplanesets.length;u++){let p=i[u],m=this.movesetorders[u];for(let D=0;D<p.length;D+=2)for(let A=0;A<D;A+=2)if(p[D]===p[A]&&p[D+1]===p[A+1])throw new Error(\\\"Redundant moves in moveset.\\\");let L=[];for(let D=0;D<p.length;D+=2)for(let A=p[D][0];A<=p[D][1];A++)L[A]=1;let R=this.cmovesbyslice[u];for(let D=0;D<R.length;D++){if(L[D]!==1)continue;let A=R[D];for(let y=0;y<A.length;y+=2*m){if(this.skipcubie(A[y]))continue;let k=this.cubiesetnums[A[y]];n[k]=1}}}for(let u=0;u<this.cubiesetnames.length;u++)if(!!n[u]){if(this.omitSet(this.cubiesetnames[u])){n[u]=0;continue}o.push(this.cubiesetnames[u]),l.push(new ko(this.cubieords[u],this.options.fixedOrientation?1:this.orbitoris[u]))}let f=[];for(let u=0;u<this.cubiesetnames.length;u++){if(!n[u]||this.omitSet(this.cubiesetnames[u]))continue;let p=[],m=[];for(let L=0;L<this.cubieords[u];L++){if(t)p.push(L);else{let R=this.cubiesetcubies[u][L];p.push(this.cubievaluemap[R])}m.push(0)}f.push(new Vt(p,m,this.options.fixedOrientation?1:this.orbitoris[u]))}let a=[],g=[];if(r)for(let u=0;u<this.moveplanesets.length;u++){let m=this.moveplanesets[u].length,L=i[u],R=this.movesetgeos[u];for(let D=0;D<L.length;D+=2){let A=L[D],y=_p(R,A,m),k=y[0],E=y[1];L[D+1]===1?a.push(k):a.push(k+L[D+1]);let Q=this.getMoveFromBits(A,L[D+1],E,this.cmovesbyslice[u],n,this.movesetorders[u]);g.push(Q)}}let c=new Sn(o,l,new xn(f),a,g);return this.options.optimizeOrbits&&(c=c.optimize()),this.options.scrambleAmount!==0&&c.scramble(this.options.scrambleAmount),c}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){C0(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 mt(t)}getOrientationRotation(t){let[r,[n,o,l]]=t[0],i=new I(0,n,-o,l),[s,[f,a,g]]=t[1],c=new I(0,f,-a,g),u=null,p=null,m=this.swizzler.unswizzle(r),L=this.swizzler.unswizzle(s);for(let y of this.geonormals)m===y[1]&&(u=y[0]),L===y[1]&&(p=y[0]);if(!u)throw new Error(\\\"Could not find feature \\\"+r);if(!p)throw new Error(\\\"Could not find feature \\\"+s);let R=u.pointrotation(i);return p.rotatepoint(R).unproject(i).pointrotation(c.unproject(i)).mul(R)}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=zp()[t]),!r)throw new Error(\\\"No default orientation?\\\");return this.getOrientationRotation(r)}generate2dmapping(t=800,r=500,n=10,o=!1,l=.92){t-=2*n,r-=2*n;function i(x,w){let C=x[1][0]-x[0][0],j=x[1][1]-x[0][1],Z=2*Math.PI/w,ce=Math.cos(Z),Le=Math.sin(Z);for(let Ae=2;Ae<w;Ae++){let be=C*ce+j*Le;j=j*ce-C*Le,C=be,x.push([x[Ae-1][0]+C,x[Ae-1][1]+j])}}this.genperms();let a=this.getboundarygeometry().facenames[0][0].length,g=this.net;if(g===null)throw new Error(\\\"No net?\\\");let c={},u=0,p=0,m=1,L=0;c[g[0][0]]=[[1,0],[0,0]],i(c[g[0][0]],a);for(let x of g){let w=x[0];if(!c[w])throw new Error(\\\"Bad edge description; first edge not connected.\\\");for(let C=1;C<x.length;C++){let j=x[C];j===\\\"\\\"||c[j]||(c[j]=[c[w][C%a],c[w][(C+a-1)%a]],i(c[j],a))}}for(let x in c){let w=c[x];for(let C of w)u=Math.min(u,C[0]),m=Math.max(m,C[0]),p=Math.min(p,C[1]),L=Math.max(L,C[1])}let R=Math.min(t/(m-u),r/(L-p)),D=.5*(t-R*(m+u)),A=.5*(r-R*(L+p)),y={},k=this.getboundarygeometry(),E={},Q=[[R+D,A],[D,A]];E[g[0][0]]=Q,i(E[g[0][0]],a),y[this.facenames[0][1]]=this.project2d(0,0,[new I(0,Q[0][0],Q[0][1],0),new I(0,Q[1][0],Q[1][1],0)]);let $=[];$[0]=0;for(let x of g){let w=x[0];if(!E[w])throw new Error(\\\"Bad edge description; first edge not connected.\\\");let C=-1;for(let Z=0;Z<k.facenames.length;Z++)if(w===k.facenames[Z][1]){C=Z;break}if(C<0)throw new Error(\\\"Could not find first face name \\\"+w);let j=k.facenames[C][0];for(let Z=1;Z<x.length;Z++){let ce=x[Z];if(ce===\\\"\\\"||E[ce])continue;E[ce]=[E[w][Z%a],E[w][(Z+a-1)%a]],i(E[ce],a);let Le=$[C],Ae=j[(Le+Z)%a].sum(j[(Le+Z+a-1)%a]).smul(.5),be=Ol(k.edgenames,Ae),kt=k.edgenames[be][1],Ne=Cp(kt,this.facenames),nt=Ne[w===Ne[0]?1:0],ve=-1;for(let v=0;v<k.facenames.length;v++)if(nt===k.facenames[v][1]){ve=v;break}if(ve<0)throw new Error(\\\"Could not find second face name\\\");let h=k.facenames[ve][0];for(let v=0;v<h.length;v++)if(h[v].sum(h[(v+1)%a]).smul(.5).dist(Ae)<=xe){let K=E[w][(Z+a-1)%a],le=E[w][Z%a];$[ve]=v,y[nt]=this.project2d(ve,v,[new I(0,le[0],le[1],0),new I(0,K[0],K[1],0)]);break}}}let N=0,oe=0,b=this.getInitial3DRotation();for(let x of this.faces){o&&(x=x.rotate(b));for(let w=0;w<x.length;w++)N=Math.max(N,Math.abs(x.get(w).b)),oe=Math.max(oe,Math.abs(x.get(w).c))}let _=Math.min(r/oe/2,(t-n)/N/4);return(x,w)=>{if(o){w=w.rotatepoint(b);let C=.5*n+.25*t,j=this.baseplanes[x].rotateplane(b).d<0?1:-1;return[n+t*.5+j*(C-w.b*_),n+r*.5+w.c*_]}else{let C=y[this.facenames[x][1]];return[n+l*w.dot(C[0])+C[2].b,n+r-l*w.dot(C[1])-C[2].c]}}}generatesvg(t=800,r=500,n=10,o=!1){let l=this.generate2dmapping(t,r,n,o);function i(u,p,m){return'<polygon id=\\\"'+u+'\\\" class=\\\"sticker\\\" style=\\\"fill: '+m+'\\\" points=\\\"'+p.map(L=>L[0]+\\\" \\\"+L[1]).join(\\\" \\\")+`\\\"/>\\n`}let s=this.getsolved(),f=[],a=[];for(let u=0;u<this.baseFaceCount;u++)f[u]=this.colors[this.facenames[u][1]];for(let u=0;u<this.faces.length;u++){let p=this.faces[u],m=Math.floor(u/this.stickersperface),L=[];for(let R=0;R<p.length;R++)L.push(l(m,p.get(R)));a.push(L)}let g=[];for(let u=0;u<this.baseFaceCount;u++){g.push(\\\"<g>\\\"),g.push(\\\"<title>\\\"+this.facenames[u][1]+`</title>\\n`);for(let p=0;p<this.stickersperface;p++){let m=u*this.stickersperface+p,L=this.facetocubie[m],R=this.facetoord[m],D=this.cubiesetnums[L],A=this.cubieordnums[L],y=this.graybyori(L)?\\\"#808080\\\":f[s.p[m]],k=this.cubiesetnames[D]+\\\"-l\\\"+A+\\\"-o\\\"+R;if(g.push(i(k,a[m],y)),this.duplicatedFaces[m])for(let E=1;E<this.duplicatedFaces[m];E++)k=this.cubiesetnames[D]+\\\"-l\\\"+A+\\\"-o\\\"+E,g.push(i(k,a[m],y))}g.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`+g.join(\\\"\\\")+\\\"</svg>\\\"}get3d(t){let r=[],n=this.getInitial3DRotation(),o=[],l=.52*this.basefaces[0].get(0).len();for(let a=0;a<this.basefaces.length;a++){let g=this.basefaces[a].rotate(n),c=this.facenames[a][1];o.push({coords:Ks(g,l),name:c})}for(let a=0;a<this.faces.length;a++){let g=Math.floor(a/this.stickersperface),c=this.facetocubie[a],u=this.facetoord[a],p=this.cubiesetnums[c],m=this.cubieordnums[c],L=this.graybyori(c)?\\\"#808080\\\":this.colors[this.facenames[g][1]];t?.stickerColors&&(L=t.stickerColors[a]);let R=this.faces[a].rotate(n);r.push({coords:Ks(R,l),color:L,orbit:this.cubiesetnames[p],ord:m,ori:u,face:g});let D=R;if(this.duplicatedFaces[a]){let A=D.length/this.duplicatedFaces[a];for(let y=1;y<this.duplicatedFaces[a];y++){for(let k=0;k<A;k++)D=D.rotateforward();r.push({coords:Ks(D,l),color:L,orbit:this.cubiesetnames[p],ord:m,ori:y,face:g,isDup:!0})}}}let i=[];for(let a=0;a<this.movesetgeos.length;a++){let g=this.movesetgeos[a],c=this.movesetorders[a];for(let u of this.geonormals)g[0]===u[1]&&g[1]===u[2]&&(i.push({coordinates:Il(u[0].rotatepoint(n),1),quantumMove:new B(g[0]),order:c}),i.push({coordinates:Il(u[0].rotatepoint(n).smul(-1),1),quantumMove:new B(g[2]),order:c}))}let s=this.generate2dmapping(2880,2160,0,!1,1),f=function(){let a=n.invrot();return function(g,c){let u=new I(0,c[0]*l,-c[1]*l,c[2]*l);u=u.rotatepoint(a);let p=s(g,u);return p[0]/=2880,p[1]=1-p[1]/2160,p}}().bind(this);return{stickers:r,faces:o,axis:i,unswizzle:this.unswizzle.bind(this),notationMapper:this.notationMapper,textureMapper:{getuv:f}}}getGeoNormal(t){let r=this.getInitial3DRotation(),n=this.swizzler.unswizzle(t);for(let o of this.geonormals)if(n===o[1]){let l=Il(o[0].rotatepoint(r),1);return Math.abs(l[0])<xe&&Math.abs(l[2])<xe&&(l[0]=0,l[2]=1e-6),l}}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 o=Gl(this.getMovesAsPerms(),t),l=n/o;t(`Ratio is ${l}`)}},Or=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 s of this.pg.parsedmovelist)s[1]===r[1]&&s[2]===r[2]&&s[3]===r[3]&&s[4]===r[4]&&(i=!0);if(!i)return null}let n=[r[2],r[3]];if(!r[4]){let i=this.pg.moveplanesets[r[1]].length;n=[i-r[3],i-r[2]]}let o=this.pg.getMoveFromBits(n,r[5],!r[4],this.pg.cmovesbyslice[r[1]],void 0,this.pg.movesetorders[r[1]]);return Sn.transformToKTransformationData(this.orbitNames,o)}}});var Kl={};ye(Kl,{ExperimentalPGNotation:()=>Or,PuzzleGeometry:()=>Wl,Quat:()=>I,getPG3DNamedPuzzles:()=>q0,getPuzzleDescriptionString:()=>V0,getPuzzleGeometryByDesc:()=>Ws,getPuzzleGeometryByName:()=>vn,parseOptions:()=>k0,parsePuzzleDescription:()=>Eo,schreierSims:()=>Gl});var En=U(()=>{_l();Es();Nl();Gs();_l()});async function Ir(e){return(await Promise.resolve().then(()=>(En(),Kl))).getPuzzleGeometryByName(e,{allMoves:!0,orientCenters:!0,addRotations:!0})}async function Pp(e,t){let r=await e,n=r.getKPuzzleDefinition(!0);n.name=t;let o=await Promise.resolve().then(()=>(En(),Kl)),l=new o.ExperimentalPGNotation(r,r.getOrbitsDef(!0));return new Ee(n,{experimentalPGNotation:l})}var Ql,jl,ql,Lt,Wr,pr=U(()=>{He();Un();ur();Lt=class{constructor(t){ne(this,Ql,void 0);ne(this,jl,void 0);ne(this,ql,void 0);this.pgId=t.pgID,this.id=t.id,this.fullName=t.fullName,this.inventedBy=t.inventedBy,this.inventionYear=t.inventionYear}pg(){return d(this,Ql)??q(this,Ql,Ir(this.pgId??this.id))}kpuzzle(){return d(this,jl)??q(this,jl,Pp(this.pg(),this.id))}svg(){return d(this,ql)??q(this,ql,(async()=>(await this.pg()).generatesvg())())}};Ql=new WeakMap,jl=new WeakMap,ql=new WeakMap;Wr=class extends Lt{constructor(){super(...arguments);this.stickerings=yn}appearance(t){return _t(this,t)}}});var H0={};ye(H0,{cube2x2x2KPuzzleDefinition:()=>Pt});var Pt,Y0=U(()=>{Pt={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]}}}};Pt.moves.Rv=Pt.moves.x;Pt.moves.Uv=Pt.moves.y;Pt.moves.Fv=Pt.moves.z;Pt.moves.Lv={CORNERS:{permutation:[1,7,6,2,0,3,5,4],orientation:[2,1,2,1,1,2,1,2]}};Pt.moves.Dv={CORNERS:{permutation:[3,0,1,2,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]}};Pt.moves.Bv={CORNERS:{permutation:[4,7,1,0,5,3,2,6],orientation:[1,2,1,2,2,1,2,1]}}});var Z0={};ye(Z0,{default:()=>Mp});var Mp,J0=U(()=>{Mp=`<?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 _o,X0=U(()=>{He();pr();ur();Un();_o={id:\\\"2x2x2\\\",fullName:\\\"2\\\\xD72\\\\xD72 Cube\\\",kpuzzle:Se(async()=>new Ee((await Promise.resolve().then(()=>(Y0(),H0))).cube2x2x2KPuzzleDefinition)),svg:async()=>(await Promise.resolve().then(()=>(J0(),Z0))).default,pg:Se(async()=>Ir(\\\"2x2x2\\\")),appearance:e=>_t(_o,e),stickerings:yn}});var $0={};ye($0,{default:()=>Np});var Np,ef=U(()=>{Np=`<?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 tf={};ye(tf,{default:()=>Tp});var Tp,rf=U(()=>{Tp=`<?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 Qs,nf=U(()=>{He();pr();ur();Un();Qs={id:\\\"3x3x3\\\",fullName:\\\"3\\\\xD73\\\\xD73 Cube\\\",inventedBy:[\\\"Ern\\\\u0151 Rubik\\\"],inventionYear:1974,kpuzzle:Se(async()=>Us),svg:Se(async()=>(await Promise.resolve().then(()=>(ef(),$0))).default),llSVG:Se(async()=>(await Promise.resolve().then(()=>(rf(),tf))).default),pg:Se(async()=>Ir(\\\"3x3x3\\\")),appearance:e=>_t(Qs,e),stickerings:yn}});var of={};ye(of,{clockKPuzzleDefinition:()=>Gp});var Gp,lf=U(()=>{Gp={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 sf={};ye(sf,{default:()=>Op});var Op,af=U(()=>{Op=`<?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 ff,uf=U(()=>{He();ur();ff={id:\\\"clock\\\",fullName:\\\"Clock\\\",inventedBy:[\\\"Christopher C. Wiggs\\\",\\\"Christopher J. Taylor\\\"],inventionYear:1988,kpuzzle:Se(async()=>new Ee((await Promise.resolve().then(()=>(lf(),of))).clockKPuzzleDefinition)),svg:Se(async()=>(await Promise.resolve().then(()=>(af(),sf))).default)}});async function gf(e,t){let r=await e.kpuzzle(),n=new Uo(r),o=new bo(r),l=()=>o.and([o.move(\\\"U\\\"),o.not(o.or(o.moves([\\\"F\\\",\\\"BL\\\",\\\"BR\\\"])))]),i=()=>o.and([o.move(\\\"U\\\"),o.not(o.move(\\\"F\\\"))]),s=()=>o.or([i(),o.and([o.move(\\\"F\\\"),o.not(o.or(o.moves([\\\"U\\\",\\\"BL\\\",\\\"BR\\\"])))])]),f=()=>o.not(o.or([o.and([o.move(\\\"U\\\"),o.move(\\\"F\\\")]),o.and([o.move(\\\"F\\\"),o.move(\\\"BL\\\")]),o.and([o.move(\\\"F\\\"),o.move(\\\"BR\\\")]),o.and([o.move(\\\"BL\\\"),o.move(\\\"BR\\\")])])),a=()=>o.not(o.or([o.and([o.move(\\\"F\\\"),o.move(\\\"BL\\\")]),o.and([o.move(\\\"F\\\"),o.move(\\\"BR\\\")]),o.and([o.move(\\\"BL\\\"),o.move(\\\"BR\\\")])]));switch(t){case\\\"full\\\":break;case\\\"experimental-fto-fc\\\":n.set(o.not(l()),S.Ignored);break;case\\\"experimental-fto-f2t\\\":n.set(o.not(i()),S.Ignored),n.set(l(),S.Dim);break;case\\\"experimental-fto-sc\\\":n.set(o.not(s()),S.Ignored),n.set(i(),S.Dim);break;case\\\"experimental-fto-l2c\\\":n.set(o.not(f()),S.Ignored),n.set(s(),S.Dim);break;case\\\"experimental-fto-lbt\\\":n.set(o.not(a()),S.Ignored),n.set(f(),S.Dim);break;case\\\"experimental-fto-l3t\\\":n.set(a(),S.Dim);break;default:console.warn(`Unsupported stickering for ${e.id}: ${t}. Setting all pieces to dim.`),n.set(o.and(o.moves([])),S.Dim)}return n.toAppearance()}async function cf(){return[\\\"full\\\",\\\"experimental-fto-fc\\\",\\\"experimental-fto-f2t\\\",\\\"experimental-fto-sc\\\",\\\"experimental-fto-l2c\\\",\\\"experimental-fto-lbt\\\",\\\"experimental-fto-l3t\\\"]}var pf=U(()=>{So()});var mf,Lf,Bf=U(()=>{pr();pf();mf=class extends Lt{constructor(){super({pgID:\\\"FTO\\\",id:\\\"fto\\\",fullName:\\\"Face-Turning Octahedron\\\",inventedBy:[\\\"Karl Rohrbach\\\",\\\"David Pitcher\\\"],inventionYear:1983});this.stickerings=cf}appearance(t){return gf(this,t)}},Lf=new mf});async function Rf(e,t){switch(t){case\\\"full\\\":case\\\"F2L\\\":case\\\"LL\\\":return _t(e,t);default:console.warn(`Unsupported stickering for ${e.id}: ${t}. Setting all pieces to dim.`)}return _t(e,\\\"full\\\")}async function df(){return[\\\"full\\\",\\\"F2L\\\",\\\"LL\\\"]}var Df=U(()=>{Un()});var Ff,hf,Af=U(()=>{pr();Df();Ff=class extends Lt{constructor(){super({id:\\\"megaminx\\\",fullName:\\\"Megaminx\\\",inventionYear:1981});this.stickerings=df}appearance(t){return Rf(this,t)}},hf=new Ff});var yf={};ye(yf,{default:()=>Ip});var Ip,Uf=U(()=>{Ip=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<!DOCTYPE svg PUBLIC \\\"-//W3C//DTD SVG 1.0//EN\\\"\\n \\\"http://www.w3.org/TR/2001/REC-SVG-20050904/DTD/svg11.dtd\\\">\\n<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"-20 -20 546 480\\\" preserveAspectRatio=\\\"xMidYMid meet\\\">\\n <defs>\\n </defs>\\n <title>pyraminx</title>\\n <defs>\\n <g id=\\\"stickerA\\\" transform=\\\"scale(1, 0.577350269)\\\">\\n <path\\n d=\\\"m 0,1.732050808 1,-1.732050808 1,1.732050808 z\\\"\\n stroke=\\\"black\\\" stroke-width=\\\"0.04px\\\" stroke-linecap=\\\"butt\\\" stroke-linejoin=\\\"round\\\"\\n />\\n </g>\\n <g id=\\\"stickerV\\\" transform=\\\"scale(1, 0.577350269)\\\">\\n <path\\n d=\\\"m 0,0 1,1.732050808 1,-1.732050808 z\\\"\\n stroke=\\\"black\\\" stroke-width=\\\"0.04px\\\" stroke-linecap=\\\"butt\\\" stroke-linejoin=\\\"round\\\"\\n />\\n </g>\\n </defs>\\n\\n<!-- 0 1 2 3 4 5 6 7 8 9 10 -->\\n<!-- | | | | | | | | | | | -->\\n<!-- 0 - L L L L L F R R R R R -->\\n<!-- 1 - L L L F F F R R R -->\\n<!-- 2 - L F F F F F R -->\\n<!-- 3 - D D D D D -->\\n<!-- 4 - D D D -->\\n<!-- 5 - D -->\\n\\n <g id=\\\"puzzle\\\" transform=\\\"translate(5, 5) scale(40, 69.28203232)\\\">\\n <!-- CORNERS -->\\n <use id=\\\"CORNERS-l0-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(5.2, 1.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l0-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(3, 0)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS-l0-o2\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(7.4, 0)\\\" style=\\\"fill: blue\\\"/>\\n\\n <use id=\\\"CORNERS-l3-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(4.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l3-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(4.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l3-o2\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(2, 1)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CORNERS-l2-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(6.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l2-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(8.4, 1)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"CORNERS-l2-o2\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(6.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n\\n <use id=\\\"CORNERS-l1-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(9.4, 0)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"CORNERS-l1-o2\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(1, 0)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS-l1-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(5.2, 4.2)\\\" style=\\\"fill: yellow\\\"/>\\n\\n <!-- \\\"TIPS\\\" -->\\n <!-- CORNERS2 -->\\n <use id=\\\"CORNERS2-l0-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(5.2, 0.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS2-l0-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(4, 0)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS2-l0-o2\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(6.4, 0)\\\" style=\\\"fill: blue\\\"/>\\n\\n <use id=\\\"CORNERS2-l3-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(3.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS2-l3-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(3.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS2-l3-o2\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(2, 2)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CORNERS2-l2-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(8.4, 2)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"CORNERS2-l2-o2\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(7.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS2-l2-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(7.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CORNERS2-l1-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(10.4,0)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"CORNERS2-l1-o2\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(0, 0)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS2-l1-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(5.2, 5.2)\\\" style=\\\"fill: yellow\\\"/>\\n\\n <!-- EDGES -->\\n <use id=\\\"EDGES-l0-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(4.2, 1.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"EDGES-l0-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(3, 1)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l5-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(6.2, 1.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"EDGES-l5-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(7.4, 1)\\\" style=\\\"fill: blue\\\"/>\\n\\n <use id=\\\"EDGES-l1-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(8.4, 0)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"EDGES-l1-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(2, 0)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l2-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(5.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l2-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(5.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"EDGES-l3-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(6.2, 4.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l3-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(9.4, 1)\\\" style=\\\"fill: blue\\\"/>\\n\\n <use id=\\\"EDGES-l4-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(4.2, 4.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l4-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(1, 1)\\\" style=\\\"fill: red\\\"/>\\n </g>\\n\\n</svg>`});var bf,Sf,xf=U(()=>{pr();ur();bf=class extends Lt{constructor(){super({id:\\\"pyraminx\\\",fullName:\\\"Pyraminx\\\",inventedBy:[\\\"Uwe Meffert\\\"]});this.svg=Se(async()=>(await Promise.resolve().then(()=>(Uf(),yf))).default)}},Sf=new bf});var wf={};ye(wf,{sq1HyperOrbitKPuzzleDefinition:()=>Wp});var Wp,vf=U(()=>{Wp={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 Ef={};ye(Ef,{default:()=>Kp});var Kp,kf=U(()=>{Kp=`<?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 zf,_f=U(()=>{He();ur();zf={id:\\\"square1\\\",fullName:\\\"Square-1\\\",inventedBy:[\\\"Karel Hr\\\\u0161el\\\",\\\"Vojtech Kopsk\\\\xFD\\\"],inventionYear:1990,kpuzzle:Se(async()=>new Ee((await Promise.resolve().then(()=>(vf(),wf))).sq1HyperOrbitKPuzzleDefinition)),svg:Se(async()=>(await Promise.resolve().then(()=>(kf(),Ef))).default)}});var Cf={};ye(Cf,{kilominxSVG:()=>Qp});var Qp,Pf=U(()=>{Qp=`<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-o1\\\" 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-o2\\\" 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-o1\\\" 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-o1\\\" 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-o0\\\" 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-o0\\\" 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-o2\\\" 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-o1\\\" 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-o0\\\" 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-o0\\\" 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-o0\\\" 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-o0\\\" 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-o1\\\" 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-o1\\\" 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-o2\\\" 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-o1\\\" 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-o2\\\" 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-o2\\\" 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-o0\\\" 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-o1\\\" 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-o2\\\" 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-o2\\\" 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-o2\\\" 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-o1\\\" 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-o2\\\" 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-o1\\\" 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-o1\\\" 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-o0\\\" 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-o1\\\" 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-o2\\\" 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-o1\\\" 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-o0\\\" 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-o0\\\" 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-o2\\\" 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-o0\\\" 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-o0\\\" 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-o0\\\" 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-o0\\\" 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-o2\\\" 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-o1\\\" 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-o2\\\" 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-o2\\\" 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 Mf,Nf=U(()=>{He();pr();ur();Mf={id:\\\"kilominx\\\",fullName:\\\"Kilominx\\\",kpuzzle:Se(async()=>{let e=await Ir(\\\"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(()=>(En(),Kl)),n=new r.ExperimentalPGNotation(e,e.getOrbitsDef(!0)),o=new Ee(t,{experimentalPGNotation:{lookupMove:i=>i.toString()===\\\"x2\\\"||i.toString()===\\\"x2'\\\"?l.transformationData:n.lookupMove(i)}}),l=o.algToTransformation(\\\"Rv2 Fv Uv'\\\");return t.moves.x2=l,o}),svg:Se(async()=>(await Promise.resolve().then(()=>(Pf(),Cf))).kilominxSVG)}});var ke,Ht=U(()=>{He();g0();c0();So();Un();pr();X0();nf();uf();Bf();Af();xf();_f();Nf();ke={\\\"3x3x3\\\":Qs,\\\"2x2x2\\\":_o,\\\"4x4x4\\\":new Wr({id:\\\"4x4x4\\\",fullName:\\\"4\\\\xD74\\\\xD74 Cube\\\"}),\\\"5x5x5\\\":new Wr({id:\\\"5x5x5\\\",fullName:\\\"5\\\\xD75\\\\xD75 Cube\\\"}),\\\"6x6x6\\\":new Wr({id:\\\"6x6x6\\\",fullName:\\\"6\\\\xD76\\\\xD76 Cube\\\"}),\\\"7x7x7\\\":new Wr({id:\\\"7x7x7\\\",fullName:\\\"7\\\\xD77\\\\xD77 Cube\\\"}),\\\"40x40x40\\\":new Wr({id:\\\"40x40x40\\\",fullName:\\\"40\\\\xD740\\\\xD740 Cube\\\"}),clock:ff,megaminx:hf,pyraminx:Sf,skewb:new Lt({id:\\\"skewb\\\",fullName:\\\"Skewb\\\",inventedBy:[\\\"Tony Durham\\\"]}),square1:zf,fto:Lf,gigaminx:new Lt({id:\\\"gigaminx\\\",fullName:\\\"Gigaminx\\\",inventedBy:[\\\"Tyler Fox\\\"],inventionYear:2006}),master_tetraminx:new Lt({pgID:\\\"master tetraminx\\\",id:\\\"master_tetraminx\\\",fullName:\\\"Master Tetraminx\\\",inventedBy:[\\\"Katsuhiko Okamoto\\\"],inventionYear:2002}),kilominx:Mf}});function Gf(e){Tf=e}function Qe(){if(!Tf)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 Tf,Mt=U(()=>{Tf=!1});async function Of(){return globalThis?.crypto?.getRandomValues?crypto.getRandomValues.bind(crypto):(await(jp??(jp=import(Vp())))).webcrypto.getRandomValues}var jp,qp,Vp,If=U(()=>{jp=null,qp=\\\"cr-yp-to\\\",Vp=()=>qp.replace(/-/g,\\\"\\\")});function Zp(e){let t=new Uint32Array(2);e(t);let r=t[0],n=t[1];return Math.floor(r*Hp)+Math.floor(n/Yp)}function Jp(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>Wf)throw new Error(`Called randomInt.below() with max == ${e}, which is larger than JavaScript can handle with integer precision.`)}async function je(){let e=await Of(),t=r=>{Jp(r);let n=Zp(e),o=Math.floor(Wf/r)*r;return n<o?n%r:t(r)};return t}var Wf,Hp,Yp,Vl=U(()=>{If();Wf=9007199254740992,Hp=2097152,Yp=2048});async function Yt(){let e=await je();return t=>t[e(t.length)]}var Kf=U(()=>{Vl()});async function Qf(e){for(let t=1;t<e.length;t++){let r=(await Xp)(t);[e[t],e[r]]=[e[r],e[t]]}}var Xp,Nt=U(()=>{Kf();Vl();Vl();Xp=je()});function Gt(e,t){let r=[],n=[];for(let g of t.split(`\\n`)){let c=g.split(\\\" \\\");if(!g.startsWith(\\\"SetOrder \\\")){if(g.startsWith(\\\"Alg \\\")){let u=z.fromString(g.substring(4));n.push({alg:u,transformation:e.algToTransformation(u)})}else if(g.startsWith(\\\"SubgroupSizes \\\"))for(let u=1;u<c.length;u++)r.push(parseInt(c[u]))}}let o={ordering:new Array(r.length)},l=[],i=0;l.push(0);let s=z.fromString(\\\"\\\"),f=e.identityTransformation();for(let g=0;g<r.length;g++)i+=r[g],l.push(i),n.splice(i-1,0,{alg:s,transformation:f});if(n.length!==i)throw Error(`Bad sgs; expected ${i-r.length} algs but saw ${n.length-r.length}`);let a={};for(let g in e.definition.orbits){let c=e.definition.orbits[g];a[g]=new Array(c.numPieces).fill(!1)}for(let g=r.length-1;g>=0;g--){let c=[];for(let p=l[g];p<l[g+1];p++){let m=n[p].transformation;for(let L in e.definition.orbits){let R=e.definition.orbits[L];for(let D=0;D<R.numPieces;D++)(m.transformationData[L].permutation[D]!==D||m.transformationData[L].orientation[D]!==0)&&(a[L][D]||(c.push({orbitName:L,permutationIdx:D}),a[L][D]=!0))}}let u={};for(let p=l[g];p<l[g+1];p++){let m=n[p].transformation.invert(),L=\\\"\\\";for(let R=0;R<c.length;R++){let D=c[R];L=`${L} ${m.transformationData[D.orbitName].permutation[D.permutationIdx]} ${m.transformationData[D.orbitName].orientation[D.permutationIdx]}`}u[L]=n[p],n[p].alg=n[p].alg.invert(),n[p].transformation=n[p].transformation.invert()}o.ordering[g]={pieceOrdering:c,lookup:u}}return o}var kn=U(()=>{Re()});var Jf={};ye(Jf,{cachedData222:()=>am,data222:()=>Zf});async function am(){return sm??(sm=Zf())}async function Zf(){return Gt(await _o.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 sm,Xf=U(()=>{Ht();kn();sm=null});async function zn(e,t){let r=new pt;r.experimentalPushAlg(e);for(let n of t){let o=(await Yt())(n);o!==null&&r.push(B.fromString(o))}return r.toAlg()}var Yl=U(()=>{Re();Nt()});function nu(e,t){return e.slice(t)+e.slice(0,t)}function Bm(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(nu(cm[e.stateData.EDGES.pieces[r]],e.stateData.EDGES.orientation[r]));for(let r=0;r<8;r++)t[1].push(nu(pm[e.stateData.CORNERS.pieces[r]],e.stateData.CORNERS.orientation[r]));return t.push(mm),t}function ou(e){let t=Bm(e);return Lm.map(([r,n,o])=>t[r][n][o]).join(\\\"\\\")}var cm,pm,mm,Lm,lu=U(()=>{cm=\\\"UF UR UB UL DF DR DB DL FR FL BR BL\\\".split(\\\" \\\"),pm=\\\"UFR URB UBL ULF DRF DFL DLB DBR\\\".split(\\\" \\\"),mm=\\\"U L F R B D\\\".split(\\\" \\\"),Lm=[[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 iu(e,t){let r=new me(e.kpuzzle,{EDGES:e.stateData.EDGES,CORNERS:e.stateData.CORNERS,CENTERS:{pieces:e.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}}).experimentalToTransformation(),n=new me(t.kpuzzle,{EDGES:t.stateData.EDGES,CORNERS:t.stateData.CORNERS,CENTERS:{pieces:t.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}}).experimentalToTransformation();return r.isIdentical(n)}function su(e,t){if(iu(e.startState(),t))return!1;for(let r of\\\"ULFRBD\\\")for(let n=1;n<4;n++){let o=e.moveToTransformation(new B(r,n)).toKState();if(iu(o,t))return!1}return!0}var au=U(()=>{Re();He()});var fu,uu=U(()=>{fu=[[\\\"R U'\\\",\\\"R2 B\\\",\\\"D2 B2\\\",\\\"D' L B'\\\",\\\"R' U'\\\",\\\"B\\\",\\\"D B2\\\",\\\"R' B\\\",\\\"L' U\\\",\\\"L2 B'\\\",\\\"B2\\\",\\\"D L B'\\\",\\\"L U\\\",\\\"B'\\\",\\\"U'\\\",\\\"R B\\\",\\\"D' B2\\\",\\\"L B'\\\",\\\"U2\\\",\\\"U L' B'\\\",\\\"\\\",\\\"U' L' B'\\\",\\\"U\\\",\\\"L' B'\\\"],[\\\"F2 L2\\\",\\\"F' L'\\\",\\\"R' F L2\\\",\\\"D' L2\\\",\\\"F L2\\\",\\\"F2 L'\\\",\\\"R' F' L'\\\",\\\"R2 F L2\\\",\\\"R2 F2 L'\\\",\\\"L2\\\",\\\"F L'\\\",\\\"D' L\\\",\\\"D2 L2\\\",\\\"R2 F' L'\\\",\\\"D L\\\",\\\"\\\",\\\"L2 F L'\\\",\\\"L F' L2\\\",\\\"L F L'\\\",\\\"F' L2\\\",\\\"L'\\\",\\\"D L2\\\",\\\"D F L'\\\",\\\"L\\\"],[\\\"R B U2 B'\\\",\\\"R2 B U' B'\\\",\\\"F2 B U B'\\\",\\\"F B2 L' B2\\\",\\\"B2 L B2\\\",\\\"B U' B'\\\",\\\"R2 B U2 B'\\\",\\\"R' B U' B'\\\",\\\"B2 L' B2\\\",\\\"F B U B'\\\",\\\"B2 U' B2\\\",\\\"B' L B\\\",\\\"L F' B D' B'\\\",\\\"B' U' B2 D B'\\\",\\\"B U2 B'\\\",\\\"R B U' B'\\\",\\\"B2 L2 B2\\\",\\\"D' B' L B\\\",\\\"B U B'\\\",\\\"F' B2 L' B2\\\",\\\"\\\",\\\"B2 L' B' U' B'\\\"],[\\\"U F2 L2 U'\\\",\\\"F' U L' U'\\\",\\\"F2 U L' U'\\\",\\\"U F L2 U'\\\",\\\"U2 B2 U2\\\",\\\"R' U' B U\\\",\\\"D2 U L U'\\\",\\\"D U2 B' U2\\\",\\\"U L2 U'\\\",\\\"F U L' U'\\\",\\\"D U L U'\\\",\\\"U2 B' U2\\\",\\\"\\\",\\\"U2 B' U' L' U'\\\",\\\"U2 L' U2\\\",\\\"U' B U\\\",\\\"U L U'\\\",\\\"D' U2 B' U2\\\",\\\"U L' U'\\\",\\\"U2 B U2\\\"],[\\\"R' D' F2\\\",\\\"F'\\\",\\\"F2\\\",\\\"D R F'\\\",\\\"R D' F2\\\",\\\"R2 F'\\\",\\\"D' F2\\\",\\\"R F'\\\",\\\"F2 R' D' F2\\\",\\\"F\\\",\\\"D2 F2\\\",\\\"D' R F'\\\",\\\"R2 D' F2\\\",\\\"R' F'\\\",\\\"D F2\\\",\\\"D2 R F'\\\",\\\"\\\",\\\"F R' D' F2\\\"],[\\\"R' D2 F' D F\\\",\\\"R F2 R2 F2\\\",\\\"R2 F' D2 F\\\",\\\"F' R2 D2 F\\\",\\\"L D' L'\\\",\\\"D F' D2 F\\\",\\\"F2 R2 F2\\\",\\\"R F' D2 F\\\",\\\"F' R2 D' F\\\",\\\"F' R' D2 F\\\",\\\"F2 R' F2\\\",\\\"L D L'\\\",\\\"F' R D' F\\\",\\\"F2 R F2\\\",\\\"F' D2 F\\\",\\\"\\\",\\\"L D2 R D' L'\\\",\\\"F' D2 F' R F2\\\",\\\"D2 R2 F2 R2 F2\\\",\\\"D F' D' F\\\",\\\"F' D F\\\"],[\\\"U F2 U'\\\",\\\"R U F' U'\\\",\\\"D R U F2 U'\\\",\\\"U F U'\\\",\\\"R2 U F2 U'\\\",\\\"R' U F' U'\\\",\\\"R U F2 U'\\\",\\\"R2 U F' U'\\\",\\\"\\\",\\\"U L D L' F U'\\\",\\\"F2 D' R D F2\\\",\\\"D2 U F U'\\\",\\\"R' U F2 U'\\\",\\\"U F' U'\\\",\\\"F2 D2 R D2 F2\\\",\\\"D U F U'\\\"],[\\\"R2\\\",\\\"R' B' D B\\\",\\\"D R'\\\",\\\"F' R2 F\\\",\\\"\\\",\\\"R B' D B\\\",\\\"R'\\\",\\\"B' D B\\\",\\\"D' R'\\\",\\\"D2 F' R2 F\\\",\\\"R\\\",\\\"R2 B' D B\\\",\\\"D2 R'\\\",\\\"B' D' B\\\"],[\\\"R2 D' R2\\\",\\\"F' R' F R\\\",\\\"R D' R2 D R'\\\",\\\"D2 R2 D2 R2\\\",\\\"R' D' F' R F\\\",\\\"U F D F' U'\\\",\\\"\\\",\\\"R2 D2 B R' B' R'\\\",\\\"R' F D' F2 R F\\\",\\\"R2 D R2\\\",\\\"F2 U F U' F\\\",\\\"R' D F' R F\\\",\\\"D R2 D2 R2\\\",\\\"U F D' F' U'\\\",\\\"D R' D2 F' R F\\\",\\\"R2 D2 R2\\\",\\\"U F D2 F' U'\\\",\\\"R' D2 F' R F\\\"],[\\\"B R B'\\\",\\\"F D F' B R2 B'\\\",\\\"D B R2 B'\\\",\\\"D2 B R' B'\\\",\\\"B R2 B'\\\",\\\"D B R' B'\\\",\\\"D' B R2 B'\\\",\\\"B R' B'\\\",\\\"\\\",\\\"B R2 B' D B R' B'\\\",\\\"D2 B R2 B'\\\",\\\"D' B R' B'\\\"],[\\\"\\\",\\\"R' D R F D2 F'\\\",\\\"R' D R\\\",\\\"D F D' F'\\\",\\\"R F' R' F\\\",\\\"F D' F'\\\",\\\"R' D' R\\\",\\\"F D2 F'\\\",\\\"R' D2 R\\\",\\\"F D F'\\\"],[\\\"\\\",\\\"F2 D2 R F' R' D2 F' D2 F'\\\",\\\"F2 D2 F' D' F D' F' D2 F'\\\",\\\"F2 D F2 D F2 D2 F2\\\",\\\"D2 F L D2 L' D2 F'\\\",\\\"D F D2 L D2 L' F'\\\",\\\"R' D B' D2 B D' R\\\",\\\"R' D2 B' D2 B R\\\",\\\"F D2 F' D F D F'\\\",\\\"F D' L D2 L' D F'\\\",\\\"B D' F D B' D' F'\\\",\\\"F D2 L D2 L' F'\\\",\\\"F D' L D L' D F'\\\",\\\"F L D2 L' D2 F'\\\",\\\"R' B' D2 B D2 R\\\"],[\\\"D'\\\",\\\"F L D L' D' F'\\\",\\\"D2\\\",\\\"L B D B' D' L'\\\",\\\"D\\\",\\\"B' L' D' L D B\\\",\\\"\\\",\\\"D F L D L' D' F'\\\"],[\\\"F' D2 F D F' D F\\\",\\\"F' D' R' D R F\\\",\\\"F' R' D' R D F\\\",\\\"B D R D' R' B'\\\",\\\"\\\",\\\"D B' D' L' D L B\\\"],[\\\"D F D F' D F D2 F'\\\",\\\"F' U2 B' R' B U2 F' L F' L' F'\\\",\\\"\\\",\\\"D2 L D L2 F L F2 D F\\\"],[\\\"L B' L' F L B L' F'\\\",\\\"F2 U F' D2 F U' F' D2 F'\\\",\\\"D' F' D B D' F D B'\\\",\\\"F L2 F R2 F' L2 F R2 F2\\\",\\\"D B D' F' D B' D' F\\\",\\\"R F L F' R' F L' F'\\\",\\\"\\\",\\\"D2 B L' U2 L B' D2 B L' U2 L B'\\\",\\\"D2 F R' U2 R F' D2 F R' U2 R F'\\\",\\\"R F L' F' R' F L F'\\\",\\\"D F D' B' D F' D' B\\\",\\\"L2 F2 L' B2 L F2 L' B2 L'\\\"],[\\\"L B R' B' L' B R B'\\\",\\\"R' B R F' R' B' R F\\\",\\\"L D2 L U L' D2 L U' L2\\\",\\\"\\\",\\\"D2 B' D2 F D' L2 F L2 F' D2 B D' F'\\\",\\\"D2 F' R' F R2 B' D2 B D2 R' F D2 F'\\\",\\\"L B L' F L B' L' F'\\\",\\\"F' D2 F' U' F D2 F' U F2\\\",\\\"D' B' D F D' B D F'\\\"],[\\\"\\\",\\\"D2 F' L U2 L' F D2 F' L U2 L' F\\\",\\\"D2 B' R U2 R' B D2 B' R U2 R' B\\\"]]});var Wu={};ye(Wu,{initialize:()=>iL,solveState:()=>sL});function gu(){}function dm(e){function t(){}return t.prototype=e||{},new t}function Dm(e){return e instanceof Array?e[0]:null}function Po(e,t,r){var n=Zl,o=Fm,l=Dm,i=n[e],s=l(i);i&&!s?H=i:(H=n[e]=t?o(t):{},H.castableTypeMap$=r,H.constructor=H,!t&&(H.typeMarker$=gu));for(var f=3;f<arguments.length;++f)arguments[f].prototype=H;s&&(H.___clazz$=s)}function Fm(e){var t=Zl;return dm(t[e])}function hm(){}function Jl(e){return e<<24>>24}function Ys(){this.typeName=null,this.simpleName=null,this.packageName=null,this.compoundName=null,this.canonicalName=null,this.typeId=null,this.arrayLiterals=null}function Zs(e,t){var r;return r=new Ys,r.packageName=e,r.compoundName=t,r}function Lr(e,t,r){var n;return n=Zs(e,t),Um(r,n),n}function Am(e,t){var r;return r=Zs(e,t),r.modifiers=2,r}function Xl(e,t){var r;return r=Zs(\\\"\\\",e),r.typeId=t,r.modifiers=1,r}function cu(e,t){var r=e.arrayLiterals=e.arrayLiterals||[];return r[t]||(r[t]=e.createClassLiteralForArray(t))}function ym(e){if(e.isPrimitive())return null;var t=e.typeId,r=Zl[t];return r}function Um(e,t){if(!!e){t.typeId=e;var r=ym(t);if(!r){Zl[e]=[t];return}r.___clazz$=t}}function ee(e,t){return cu(e,t)}function J(e,t,r,n,o,l){var i;return i=mu(o,n),te(ee(e,l),t,r,o,i),i}function tt(e,t,r,n,o,l){return pu(e,t,r,n,o,0,l)}function pu(e,t,r,n,o,l,i){var s,f,a,g,c;if(g=o[l],a=l==i-1,s=a?n:0,c=mu(s,g),te(ee(e,i-l),t[l],r[l],s,c),!a)for(++l,f=0;f<g;++f)c[f]=pu(e,t,r,n,o,l,i);return c}function te(e,t,r,n,o){return o.___clazz$=e,o.castableTypeMap$=t,o.typeMarker$=gu,o.__elementTypeId$=r,o.__elementTypeCategory$=n,o}function mu(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 o=0;o<t;++o)r[o]=n;return r}function Lu(e){var t,r,n;return t=e&et,r=e>>22&et,n=e<0?mr:0,bm(t,r,n)}function bm(e,t,r){return{l:e,m:t,h:r}}function Sm(e,t){var r,n,o;return r=e.l+t.l,n=e.m+t.m+(r>>22),o=e.h+t.h+(n>>22),{l:r&et,m:n&et,h:o&mr}}function Ot(e,t){return{l:e.l&t.l,m:e.m&t.m,h:e.h&t.h}}function Js(e){var t,r;return e>-129&&e<128?(t=e+128,ei==null&&(ei=J(oL,ae,293,256,0,1)),r=ei[t],!r&&(r=ei[t]=Lu(e)),r):Lu(e)}function Bu(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 Xs(e,t){return e.l!=t.l||e.m!=t.m||e.h!=t.h}function $s(e,t){return{l:e.l|t.l,m:e.m|t.m,h:e.h|t.h}}function $l(e,t){var r,n,o;return t&=63,t<22?(r=e.l<<t,n=e.m<<t|e.l>>22-t,o=e.h<<t|e.m>>22-t):t<44?(r=0,n=e.l<<t-22,o=e.m<<t-22|e.l>>44-t):(r=0,n=0,o=e.l<<t-44),{l:r&et,m:n&et,h:o&mr}}function Kr(e,t){var r,n,o,l,i;return t&=63,r=e.h,n=(r&Rm)!=0,n&&(r|=-1048576),t<22?(i=r>>t,l=e.m>>t|r<<22-t,o=e.l>>t|e.m<<22-t):t<44?(i=n?mr:0,l=r>>t-22,o=e.m>>t-22|r<<44-t):(i=n?mr:0,l=n?et:0,o=r>>t-44),{l:o&et,m:l&et,h:i&mr}}function Ru(e,t){var r,n,o;return r=e.l-t.l,n=e.m-t.m+(r>>22),o=e.h-t.h+(n>>22),{l:r&et,m:n&et,h:o&mr}}function Qr(e){return e.l|e.m<<22}function xm(e){this.string=e}function Br(e,t){return e>t?e:t}function ea(e,t){return e<t?e:t}function wm(e,t){return e.indexOf(t)}function vm(e){return Em(e,0,e.length)}function Em(e,t,r){for(var n=\\\"\\\",o=t;o<r;){var l=Math.min(o+1e4,r);n+=String.fromCharCode.apply(null,e.slice(o,l)),o=l}return n}function km(e){return String.fromCharCode(e&qe)}function du(e){return e.string+=\\\" \\\",e}function Du(e,t){return e.string+=t,e}function _m(){xm.call(this,\\\"\\\")}function ti(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 jr(){Fu||(Fu=!0,dr=tt(Fe,[ae,De],[11,0],7,[495,18],2),Gn=tt(Fe,[ae,De],[11,0],7,[324,18],2),Mn=tt(Fe,[ae,De],[11,0],7,[336,18],2),Rr=tt(Fe,[ae,De],[11,0],7,[495,8],2),oi=J(Ce,_e,0,20048,7,1),ni=J(Ce,_e,0,20791,7,1),Tn=J(Ce,_e,0,82945,7,1),_n=tt(Fe,[ae,De],[11,0],7,[2768,10],2),Pn=tt(Fe,[ae,De],[11,0],7,[2768,10],2),Nn=tt(Fe,[ae,De],[11,0],7,[24,10],2),To=tt(Fe,[ae,De],[11,0],7,[24,16],2),qr=tt(Fe,[ae,De],[11,0],7,[140,16],2),ri=J(Ce,_e,0,8305,7,1),Cn=J(Ce,_e,0,48441,7,1))}function Cm(e,t,r){return e.slice_0=dr[t.slice_0][r],e.flip=Mn[t.flip][(X(),Hr)[r<<3|t.fsym]],e.fsym=e.flip&7^t.fsym,e.flip>>=3,e.twist=Gn[t.twist][Hr[r<<3|t.tsym]],e.tsym=e.twist&7^t.tsym,e.twist>>=3,e.prun=Br(Br(st(oi,e.twist*495+Rr[e.slice_0][e.tsym]),st(ni,e.flip*495+Rr[e.slice_0][e.fsym])),st(Tn,e.twist<<11|hr[e.flip<<3|e.fsym^e.tsym])),e.prun}function Pm(e,t,r){return r=(X(),Io)[3][r],e.flipc=Mn[t.flipc>>3][Hr[r<<3|t.flipc&7]]^t.flipc&7,e.twistc=Gn[t.twistc>>3][Hr[r<<3|t.twistc&7]]^t.twistc&7,st(Tn,e.twistc>>3<<11|hr[e.flipc^e.twistc&7])}function hu(e,t,r){var n;return e.twist=(X(),Wo)[ai(t)],e.flip=Vr[si(t)],e.tsym=e.twist&7,e.twist=e.twist>>3,e.prun=st(Tn,e.twist<<11|hr[e.flip^e.tsym]),e.prun>r||(e.fsym=e.flip&7,e.flip=e.flip>>3,e.slice_0=494-Wn(t.ea,8,!0),e.prun=Br(e.prun,Br(st(oi,e.twist*495+Rr[e.slice_0][e.tsym]),st(ni,e.flip*495+Rr[e.slice_0][e.fsym]))),e.prun>r)?!1:(n=new ue,Go(t,1,n),Oo(t,1,n),e.twistc=Wo[ai(n)],e.flipc=Vr[si(n)],e.prun=Br(e.prun,st(Tn,e.twistc>>3<<11|hr[e.flipc^e.twistc&7])),e.prun<=r)}function Mo(){jr()}function st(e,t){return jr(),e[t>>3]>>(t<<2)&15}function Au(e){jr(),!(li==2||li==1&&!e)&&(li==0&&(Hm(),Mm(),Tm(),Om(),Nm(),X(),ia(2048,sa,Vr,vu=J(Fe,De,0,336,7,1),0),ia(2187,ga,Wo,ua=J(Fe,De,0,324,7,1),1),Gm(),Im(),Wm()),No(ri,Nn,To,_n,(X(),fa),584244,e),No(Cn,ta,qr,Pn,fa,514084,e),No(oi,dr,Rr,Gn,ua,431619,e),No(ni,dr,Rr,Mn,vu,431619,e),No(Tn,null,null,Gn,ua,103939,e),li=e?2:1)}function Mm(){var e,t,r,n;for(e=new ue,t=new ue,r=0;r<2768;r++)for(jm(e,(X(),On)[r]),n=0;n<10;n++)Dr(e,ge[(Ye(),bt)[n]],t),_n[r][n]=gi(Jt[ft(t.ca,8,!1)])&qe}function Nm(){var e,t,r,n,o;for(e=new ue,t=new ue,ta=tt(Fe,[ae,De],[11,0],7,[140,10],2),r=0;r<140;r++){for(Tu(e.ca,r%70,0,!1),o=0;o<10;o++)Dr(e,(X(),ge)[(Ye(),bt)[o]],t),ta[r][o]=Wn(t.ca,0,!1)+70*(165>>o&1^~~(r/70))&qe;for(n=0;n<16;n++)Go(e,(X(),at)[0][n],t),qr[r][n]=Wn(t.ca,0,!1)+70*~~(r/70)&qe}}function Tm(){var e,t,r,n;for(e=new ue,t=new ue,r=0;r<2768;r++)for(Su(e,(X(),On)[r]),n=0;n<10;n++)Bt(e,ge[(Ye(),bt)[n]],t),Pn[r][n]=Jt[ft(t.ea,8,!0)]}function Gm(){var e,t,r,n;for(e=new ue,t=new ue,r=0;r<336;r++)for(oa(e,(X(),sa)[r]),n=0;n<18;n++)Bt(e,ge[n],t),Mn[r][n]=Vr[si(t)]}function Om(){var e,t,r,n,o;for(e=new ue,t=new ue,r=0;r<24;r++){for(Yr(e.ea,r,12,!0),o=0;o<10;o++)Bt(e,(X(),ge)[(Ye(),bt)[o]],t),Nn[r][o]=ft(t.ea,12,!0)%24&qe;for(n=0;n<16;n++)Oo(e,(X(),at)[0][n],t),To[r][n]=ft(t.ea,12,!0)%24&qe}}function No(e,t,r,n,o,l,i){var s,f,a,g,c,u,p,m,L,R,D,A,y,k,E,Q,$,N,oe,b,_,M,x,w,C,j,Z,ce,Le,Ae,be,kt,Ne,nt,ve,h;if(y=l&15,D=(l>>4&1)==1?Hs:0,a=(l>>5&1)==1,s=l>>8&15,g=l>>12&15,c=l>>16&15,R=i?g:c,A=(1<<y)-1,f=t==null,m=f?2048:t.length,L=m*n.length,p=a?10:18,u=p==10?66:599186,E=(e[L>>3]>>(L<<2)&15)-1,E==-1){for(N=0;N<~~(L/8)+1;N++)e[N]=Co;e[0]^=1,E=0}for(;E<R;){for(C=(E+1)*Co^-1,oe=0;oe<e.length;oe++)ve=e[oe]^C,ve&=ve>>1,e[oe]+=ve&ve>>2&Co;for(M=E>s,Ae=M?E+2:E,Le=Ae*Co,k=M?E:E+2,++E,h=E^E+1,nt=0,N=0;N<L;++N,nt>>=4){if((N&7)==0&&(nt=e[N>>3],((nt^Le)-Co&~(nt^Le)&-2004318072)==0)){N+=7;continue}if((nt&15)==Ae)for(Z=N%m,be=~~(N/m),Q=0,$=0,f&&(Q=(X(),Vr)[Z],$=Q&7,Q>>=3),w=0;w<p;w++){if(Ne=n[be][w],f?ce=(X(),hr)[Mn[Q][Hr[w<<3|$]]^$^Ne&A]:ce=r[t[Z][w]][Ne&A],Ne>>=y,b=Ne*m+ce,j=e[b>>3]>>(b<<2)&15,j!=k){j<E-1&&(w+=u>>w&3);continue}if(M){e[N>>3]^=h<<(N<<2);break}for(e[b>>3]^=h<<(b<<2),x=1,kt=o[Ne];(kt>>=1)!=0;x++)(kt&1)==1&&(_=Ne*m,f?_+=(X(),hr)[Vr[ce]^x]:_+=r[ce][x^D>>(x<<1)&3],(e[_>>3]>>(_<<2)&15)==k&&(e[_>>3]^=h<<(_<<2)))}}}}function Im(){var e,t,r,n;for(e=new ue,t=new ue,r=0;r<324;r++)for(la(e,(X(),ga)[r]),n=0;n<18;n++)Dr(e,ge[n],t),Gn[r][n]=Wo[ai(t)]}function Wm(){var e,t,r,n,o,l,i,s;for(e=new ue,t=new ue,n=0;n<495;n++){for(Tu(e.ea,494-n,8,!0),l=0;l<18;l+=3)Bt(e,(X(),ge)[l],t),dr[n][l]=494-Wn(t.ea,8,!0)&qe;for(o=0;o<16;o+=2)Oo(e,(X(),at)[0][o],t),Rr[n][o>>1]=494-Wn(t.ea,8,!0)&qe}for(r=0;r<495;r++)for(o=0;o<18;o+=3)for(s=dr[r][o],i=1;i<3;i++)s=dr[s][o],dr[r][o+i]=s&qe}function X(){yu||(yu=!0,Zt=J(Ko,ae,7,16,0,1),ge=J(Ko,ae,7,18,0,1),pi=J(lL,ae,0,18,6,1),Eu=J(Ce,_e,0,48,7,1),Xt=tt(Ce,[ae,_e],[17,0],7,[16,16],2),at=tt(Ce,[ae,_e],[17,0],7,[16,16],2),Io=tt(Ce,[ae,_e],[17,0],7,[16,18],2),Hr=J(Ce,_e,0,144,7,1),Ar=tt(Ce,[ae,_e],[17,0],7,[16,18],2),sa=J(Fe,De,0,336,7,1),ga=J(Fe,De,0,324,7,1),On=J(Fe,De,0,2768,7,1),In=J(re,se,0,2768,7,1),aa=J(Fe,De,0,2768,7,1),ci=J(re,se,0,24,7,1),Vr=J(Fe,De,0,2048,7,1),Wo=J(Fe,De,0,2187,7,1),Jt=J(Fe,De,0,40320,7,1),hr=J(Fe,De,0,2688,7,1),ca=new Ut(2531,1373,67026819,1367),pa=new Ut(2089,1906,322752913,2040),mi=te(ee(re,2),ae,10,0,[te(ee(re,1),se,0,7,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),te(ee(re,1),se,0,7,[6,7,8,0,1,2,3,4,5,15,16,17,9,10,11,12,13,14]),te(ee(re,1),se,0,7,[3,4,5,6,7,8,0,1,2,12,13,14,15,16,17,9,10,11]),te(ee(re,1),se,0,7,[2,1,0,5,4,3,8,7,6,11,10,9,14,13,12,17,16,15]),te(ee(re,1),se,0,7,[8,7,6,2,1,0,5,4,3,17,16,15,11,10,9,14,13,12]),te(ee(re,1),se,0,7,[5,4,3,8,7,6,2,1,0,14,13,12,17,16,15,11,10,9])]),Vm(),Ym())}function ra(e){e.ca=te(ee(re,1),se,0,7,[0,1,2,3,4,5,6,7]),e.ea=te(ee(re,1),se,0,7,[0,2,4,6,8,10,12,14,16,18,20,22])}function Uu(e){!e.temps&&(e.temps=new ue),Dr(pa,e,e.temps),Dr(e.temps,ca,e),Bt(pa,e,e.temps),Bt(e.temps,ca,e)}function na(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 Km(e){return gi(Jt[ft(e.ca,8,!1)])}function Qm(e){return Jt[ft(e.ea,8,!0)]}function si(e){var t,r;for(r=0,t=0;t<11;t++)r=r<<1|e.ea[t]&1;return r}function ai(e){var t,r;for(r=0,t=0;t<7;t++)r+=(r<<1)+(e.ca[t]>>3);return r}function fi(e){var t,r;for(!e.temps&&(e.temps=new ue),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;na(e,e.temps)}function bu(e){var t,r,n,o,l,i,s;for(t=new xu(e),o=new ue,r=gi(Jt[ft(t.ca,8,!1)])>>4,i={l:0,m:0,h:0},s=0;s<6;s++){if(n=gi(Jt[ft(t.ca,8,!1)])>>4,r==n)for(l=0;l<16;l++)Go(t,at[0][l],o),ti(o.ca,e.ca)&&(Oo(t,at[0][l],o),ti(o.ea,e.ea)&&(i=$s(i,$l({l:1,m:0,h:0},(s<<4|l)<48?s<<4|l:48))));Uu(t),s%3==2&&fi(t)}return i}function jm(e,t){Yr(e.ca,t,8,!1)}function Su(e,t){Yr(e.ea,t,8,!0)}function oa(e,t){var r,n,o;for(n=0,r=10;r>=0;--r,t>>=1)n^=o=t&1,e.ea[r]=(e.ea[r]&-2|o)<<24>>24;e.ea[11]=(e.ea[11]&-2|n)<<24>>24}function la(e,t){var r,n,o;for(n=15,r=6;r>=0;--r,t=~~(t/3))n-=o=t%3,e.ca[r]=(e.ca[r]&7|o<<3)<<24>>24;e.ca[7]=(e.ca[7]&7|n%3<<3)<<24>>24}function qm(e){var t,r,n,o,l;for(l=0,o=0,n=0;n<12;n++)o|=1<<(e.ea[n]>>1),l^=e.ea[n]&1;if(o!=4095)return-2;if(l!=0)return-3;for(r=0,l=0,t=0;t<8;t++)r|=1<<(e.ca[t]&7),l+=e.ca[t]>>3;return r!=255?-4:l%3!=0?-5:(La(ft(e.ea,12,!0),12)^La(ft(e.ca,8,!1),8))!=0?-6:0}function Go(e,t,r){X();var n,o,l,i,s,f;for(f=Zt[at[0][t]],s=Zt[t],n=0;n<8;n++)l=f.ca[e.ca[s.ca[n]&7]&7]>>3,i=e.ca[s.ca[n]&7]>>3,o=l<3?i:(3-i)%3,r.ca[n]=(f.ca[e.ca[s.ca[n]&7]&7]&7|o<<3)<<24>>24}function Dr(e,t,r){X();var n,o,l;for(n=0;n<8;n++)o=e.ca[t.ca[n]&7]>>3,l=t.ca[n]>>3,r.ca[n]=(e.ca[t.ca[n]&7]&7|(o+l)%3<<3)<<24>>24}function ui(e,t,r){var n,o,l,i;for(n=0;n<8;n++)l=e.ca[t.ca[n]&7]>>3,i=t.ca[n]>>3,o=l+(l<3?i:6-i),o=o%3+(l<3==i<3?0:3),r.ca[n]=(e.ca[t.ca[n]&7]&7|o<<3)<<24>>24}function ue(){X(),ra(this)}function Ut(e,t,r,n){ra(this),Yr(this.ca,e,8,!1),la(this,t),Yr(this.ea,r,12,!0),oa(this,n)}function xu(e){ra(this),na(this,e)}function gi(e){return X(),e^Hs>>((e&15)<<1)&3}function Oo(e,t,r){X();var n,o,l;for(l=Zt[at[0][t]],o=Zt[t],n=0;n<12;n++)r.ea[n]=(l.ea[e.ea[o.ea[n]>>1]>>1]^e.ea[o.ea[n]>>1]&1^o.ea[n]&1)<<24>>24}function Bt(e,t,r){X();var n;for(n=0;n<12;n++)r.ea[n]=(e.ea[t.ea[n]>>1]^t.ea[n]&1)<<24>>24}function Fr(e,t,r){X();var n;return n=aa[e],r&&(n=n^Hs>>((n&15)<<1)&3),n&65520|Xt[n&15][t]}function wu(){return X(),0}function Vm(){var e,t;for(ge[0]=new Ut(15120,0,119750400,0),ge[3]=new Ut(21021,1494,323403417,0),ge[6]=new Ut(8064,1236,29441808,550),ge[9]=new Ut(9,0,5880,0),ge[12]=new Ut(1230,412,2949660,0),ge[15]=new Ut(224,137,328552,137),e=0;e<18;e+=3)for(t=0;t<2;t++)ge[e+t+1]=new ue,Bt(ge[e+t],ge[e],ge[e+t+1]),Dr(ge[e+t],ge[e],ge[e+t+1])}function Hm(){X();var e,t,r;for(ia(40320,On,Jt,fa=J(Fe,De,0,2768,7,1),2),e=new ue,r=0;r<2768;r++)Su(e,On[r]),In[r]=Wn(e.ea,0,!0)+La(On[r],8)*70<<24>>24,fi(e),aa[r]=Jt[ft(e.ea,8,!0)];for(t=0;t<24;t++)Yr(e.ea,t,12,!0),fi(e),ci[t]=ft(e.ea,12,!0)%24<<24>>24}function Ym(){var e,t,r,n,o,l,i,s,f,a,g,c,u,p,m,L;for(e=new ue,t=new ue,r=new Ut(28783,0,259268407,0),L=new Ut(15138,0,119765538,7),c=new Ut(5167,0,83473207,0),o=0;o<8;o++)c.ca[o]=Jl(c.ca[o]|24);for(l=0;l<16;l++)Zt[l]=new xu(e),ui(e,L,t),Bt(e,L,t),m=t,t=e,e=m,l%4==3&&(ui(m,c,t),Bt(m,c,t),m=t,t=e,e=m),l%8==7&&(ui(m,r,t),Bt(m,r,t),m=t,t=e,e=m);for(i=0;i<16;i++)for(f=0;f<16;f++)for(ui(Zt[i],Zt[f],e),g=0;g<16;g++)if(ti(Zt[g].ca,e.ca)){Xt[i][f]=g,at[g][f]=i;break}for(a=0;a<18;a++)for(p=0;p<16;p++){for(Go(ge[a],at[0][p],e),u=0;u<18;u++)if(ti(ge[u].ca,e.ca)){Io[p][a]=u,Ar[p][(Ye(),Kn)[a]]=Kn[u];break}p%2==0&&(Hr[a<<3|p>>1]=Io[p][a])}for(n=0;n<18;n++)for(pi[n]=bu(ge[n]),s=n,p=0;p<48;p++)Io[p%16][s]<n&&(Eu[p]|=1<<n),p%16==15&&(s=mi[2][s])}function ia(e,t,r,n,o){X();var l,i,s,f,a,g,c,u,p;for(l=new ue,s=new ue,i=0,a=0,p=o>=2?1:2,g=o!=1,f=0;f<e;f++)if(r[f]==0){switch(o){case 0:oa(l,f);break;case 1:la(l,f);break;case 2:Yr(l.ea,f,8,!0)}for(c=0;c<16;c+=p){switch(g?Oo(l,c,s):Go(l,c,s),o){case 0:a=si(s);break;case 1:a=ai(s);break;case 2:a=ft(s.ea,8,!0)}o==0&&(hr[i<<3|c>>1]=a&qe),a==f&&(n[i]=(n[i]|1<<~~(c/p))&qe),u=~~((i<<4|c)/p),r[a]=u&qe}t[i++]=f&qe}return i}function Zm(e,t,r,n,o,l,i,s){var f,a,g,c,u;if(c=Br(st((jr(),Cn),(i>>4)*140+qr[(X(),In)[s>>4]&255][at[i&15][s&15]]),Br(st(Cn,n*140+qr[In[t]&255][at[o][r]]),st(ri,t*24+To[l][r]))),c>e.maxDep2)return c-e.maxDep2;for(f=e.maxDep2;f>=c&&(u=_u(e,n,o,t,r,l,f,e.depth1,10),!(u<0));f--){for(f-=u,e.solLen=0,e.solution=new Iu,nL(e.solution,e.verbose,e.urfIdx,e.depth1),g=0;g<e.depth1+f;g++)Gu(e.solution,e.move[g]);for(a=e.preMoveLen-1;a>=0;a--)Gu(e.solution,e.preMoves[a]);e.solLen=e.solution.length_0}return f!=e.maxDep2?(e.maxDep2=ea(Pu,e.solLen-e.length1-1),Bu(e.probe,e.probeMin)?0:1):1}function Jm(e){var t,r,n,o,l,i,s,f,a,g,c,u,p,m,L;if(e.isRec=!1,Bu(e.probe,e.solution?e.probeMin:e.probeMax))return 0;for(e.probe=Sm(e.probe,{l:1,m:0,h:0}),n=e.valid1;n<e.depth1;n++)Dr(e.phase1Cubie[n],(X(),ge)[e.move[n]],e.phase1Cubie[n+1]),Bt(e.phase1Cubie[n],ge[e.move[n]],e.phase1Cubie[n+1]);for(e.valid1=e.depth1,s=Km(e.phase1Cubie[e.depth1]),f=s&15,s>>=4,a=Qm(e.phase1Cubie[e.depth1]),g=a&15,a>>=4,c=ft(e.phase1Cubie[e.depth1].ea,12,!0)%24,r=Fr(a,g,!1),t=Fr(s,f,!0),o=e.depth1==0?-1:e.move[e.depth1-1],l=e.preMoveLen==0?-1:e.preMoves[e.preMoveLen-1],L=0,m=(e.preMoveLen==0?1:2)*(e.depth1==0?1:2),u=0,p=(1<<m)-1;u<m;u++){if((p>>u&1)!=0){if(p&=~(1<<u),L=Zm(e,s,f,a,g,c,r,t),L==0||L>2)break;L==2&&(p&=4<<u)}if(p==0)break;(u&1)==0&&e.depth1>0?(i=(Ye(),Kn)[~~(o/3)*3+1],e.move[e.depth1-1]=bt[i]*2-e.move[e.depth1-1],c=(jr(),Nn)[c][i],s=_n[s][(X(),Ar)[f][i]],f=Xt[s&15][f],s>>=4,a=Pn[a][Ar[g][i]],g=Xt[a&15][g],a>>=4,t=Fr(s,f,!0),r=Fr(a,g,!1)):e.preMoveLen>0&&(i=(Ye(),Kn)[~~(l/3)*3+1],e.preMoves[e.preMoveLen-1]=bt[i]*2-e.preMoves[e.preMoveLen-1],c=(X(),ci)[(jr(),Nn)[ci[c]][i]],s=_n[t>>4][Ar[t&15][i]],t=s&-16|Xt[s&15][t&15],s=Fr(t>>4,t&15,!0),f=s&15,s>>=4,a=Pn[r>>4][Ar[r&15][i]],r=a&-16|Xt[a&15][r&15],a=Fr(r>>4,r&15,!1),g=a&15,a>>=4)}return e.depth1>0&&(e.move[e.depth1-1]=o),e.preMoveLen>0&&(e.preMoves[e.preMoveLen-1]=l),L==0?0:2}function Xm(e){var t;for(e.conjMask=0,e.selfSym=bu(e.cc),e.conjMask|=Xs(Ot(Kr(e.selfSym,16),{l:qe,m:0,h:0}),{l:0,m:0,h:0})?18:0,e.conjMask|=Xs(Ot(Kr(e.selfSym,32),{l:qe,m:0,h:0}),{l:0,m:0,h:0})?36:0,e.conjMask|=Xs(Ot(Kr(e.selfSym,48),{l:qe,m:0,h:0}),{l:0,m:0,h:0})?56:0,e.selfSym=Ot(e.selfSym,{l:et,m:et,h:15}),e.maxPreMoves=e.conjMask>7?0:20,t=0;t<6;t++)na(e.urfCubieCube[t],e.cc),hu(e.urfCoordCube[t],e.urfCubieCube[t],20),Uu(e.cc),t%3==2&&fi(e.cc)}function ku(e,t,r,n,o){var l,i,s,f,a,g;if(t.prun==0&&n<5)return e.allowShorter||n==0?(e.depth1-=n,a=Jm(e),e.depth1+=n,a):1;for(g=wu(Js(r)),l=0;l<18;l+=3)if(!(l==o||l==o-9)){for(s=0;s<3;s++)if(i=l+s,!(e.isRec&&i!=e.move[e.depth1-n]||g!=0&&(g&1<<i)!=0)){if(f=Cm(e.nodeUD[n],t,i),f>n)break;if(f==n)continue;if(f=Pm(e.nodeUD[n],t,i),f>n)break;if(f==n)continue;if(e.move[e.depth1-n]=i,e.valid1=ea(e.valid1,e.depth1-n),a=ku(e,e.nodeUD[n],r&Qr((X(),pi)[i]),n-1,l),a==0)return 0;if(a>=2)break}}return 1}function zu(e,t,r,n,o){var l,i,s;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==ma&&e.preMoveLen!=0,hu(e.nodeUD[e.depth1+1],n,e.depth1)&&ku(e,e.nodeUD[e.depth1+1],o,e.depth1,-1)==0))return 0;if(t==0||e.preMoveLen+ma>=e.length1)return 1;for(s=wu(Js(o)),(t==1||e.preMoveLen+1+ma>=e.length1)&&(s|=225207),r=~~(r/3)*3,l=0;l<18;l++){if(l==r||l==r-9||l==r+9){l+=2;continue}if(!(e.isRec&&l!=e.preMoves[e.maxPreMoves-t]||(s&1<<l)!=0)&&(Dr((X(),ge)[l],n,e.preMoveCubes[t]),Bt(ge[l],n,e.preMoveCubes[t]),e.preMoves[e.maxPreMoves-t]=l,i=zu(e,t-1,l,e.preMoveCubes[t],o&Qr(pi[l])),i==0))return 0}return 1}function _u(e,t,r,n,o,l,i,s,f){var a,g,c,u,p,m,L,R,D,A,y;if(t==0&&n==0&&l==0)return i;for(D=(Ye(),Qo)[f],L=0;L<10;L++){if((D>>L&1)!=0){L+=66>>L&3;continue}if(R=(jr(),Nn)[l][L],g=_n[n][(X(),Ar)[o][L]],c=Xt[g&15][o],g>>=4,p=Pn[t][Ar[r][L]],m=Xt[p&15][r],p>>=4,u=Fr(p,m,!1),a=Fr(g,c,!0),A=st(Cn,(u>>4)*140+qr[In[a>>4]&255][at[u&15][a&15]]),A>i+1)return i-A+1;if(A>=i){L+=66>>L&3&i-A;continue}if(A=Br(st(ri,g*24+To[R][c]),st(Cn,p*140+qr[In[g]&255][at[m][c]])),A>=i){L+=66>>L&3&i-A;continue}if(y=_u(e,p,m,g,c,R,i-1,s+1,L),y>=0)return e.move[s]=bt[L],y;if(y<-2)break;y<-1&&(L+=66>>L&3)}return-1}function $m(e){for(e.length1=e.isRec?e.length1:0;e.length1<e.solLen;e.length1++)for(e.maxDep2=ea(Pu,e.solLen-e.length1-1),e.urfIdx=e.isRec?e.urfIdx:0;e.urfIdx<6;e.urfIdx++)if((e.conjMask&1<<e.urfIdx)==0&&zu(e,e.maxPreMoves,-30,e.urfCubieCube[e.urfIdx],Qr(Ot(e.selfSym,{l:qe,m:0,h:0})))==0)return e.solution?Ou(e.solution):\\\"Error 8\\\";return e.solution?Ou(e.solution):\\\"Error 7\\\"}function eL(e,t){var r;return r=tL(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,Au(!1),Xm(e),$m(e))}function tL(e,t){var r,n,o,l;for(n=0,o=J(re,se,0,54,7,1),r=vm(te(ee(Fe,1),De,0,7,[t.charCodeAt(4),t.charCodeAt(13),t.charCodeAt(22),t.charCodeAt(31),t.charCodeAt(40),t.charCodeAt(49)])),l=0;l<54;l++){if(o[l]=wm(r,km(t.charCodeAt(l)))<<24>>24,o[l]==-1)return-1;n+=1<<(o[l]<<2)}return n!=10066329?-1:(rL(o,e.cc),qm(e.cc))}function Cu(){var e,t,r;for(this.move=J(Ce,_e,0,31,7,1),this.nodeUD=J(ii,ae,31,21,0,1),this.nodeRL=J(ii,ae,31,21,0,1),this.nodeFB=J(ii,ae,31,21,0,1),this.cc=new ue,this.urfCubieCube=J(Ko,ae,7,6,0,1),this.urfCoordCube=J(ii,ae,31,6,0,1),this.phase1Cubie=J(Ko,ae,7,21,0,1),this.preMoveCubes=J(Ko,ae,7,21,0,1),this.preMoves=J(Ce,_e,0,20,7,1),t=0;t<21;t++)this.nodeUD[t]=new Mo,this.nodeRL[t]=new Mo,this.nodeFB[t]=new Mo,this.phase1Cubie[t]=new ue;for(r=0;r<6;r++)this.urfCubieCube[r]=new ue,this.urfCoordCube[r]=new Mo;for(e=0;e<20;e++)this.preMoveCubes[e+1]=new ue}function Ye(){if(!Mu){Mu=!0;var e,t,r,n,o,l;for(Zr=te(ee(re,2),ae,10,0,[te(ee(re,1),se,0,7,[8,9,20]),te(ee(re,1),se,0,7,[6,18,38]),te(ee(re,1),se,0,7,[0,36,47]),te(ee(re,1),se,0,7,[2,45,11]),te(ee(re,1),se,0,7,[29,26,15]),te(ee(re,1),se,0,7,[27,44,24]),te(ee(re,1),se,0,7,[33,53,42]),te(ee(re,1),se,0,7,[35,17,51])]),er=te(ee(re,2),ae,10,0,[te(ee(re,1),se,0,7,[5,10]),te(ee(re,1),se,0,7,[7,19]),te(ee(re,1),se,0,7,[3,37]),te(ee(re,1),se,0,7,[1,46]),te(ee(re,1),se,0,7,[32,16]),te(ee(re,1),se,0,7,[28,25]),te(ee(re,1),se,0,7,[30,43]),te(ee(re,1),se,0,7,[34,52]),te(ee(re,1),se,0,7,[23,12]),te(ee(re,1),se,0,7,[21,41]),te(ee(re,1),se,0,7,[50,39]),te(ee(re,1),se,0,7,[48,14])]),$t=tt(Ce,[ae,_e],[17,0],7,[13,13],2),Ba=te(ee(zm,1),ae,2,4,[\\\"U \\\",\\\"U2\\\",\\\"U'\\\",\\\"R \\\",\\\"R2\\\",\\\"R'\\\",\\\"F \\\",\\\"F2\\\",\\\"F'\\\",\\\"D \\\",\\\"D2\\\",\\\"D'\\\",\\\"L \\\",\\\"L2\\\",\\\"L'\\\",\\\"B \\\",\\\"B2\\\",\\\"B'\\\"]),bt=te(ee(Ce,1),_e,0,7,[0,1,2,4,7,9,10,11,13,16,3,5,6,8,12,14,15,17]),Kn=J(Ce,_e,0,18,7,1),Qo=J(Ce,_e,0,11,7,1),t=0;t<18;t++)Kn[bt[t]]=t;for(r=0;r<10;r++)for(n=~~(bt[r]/3),Qo[r]=0,o=0;o<10;o++)l=~~(bt[o]/3),Qo[r]|=(n==l||n%3==l%3&&n>=l?1:0)<<o;for(Qo[10]=0,e=0;e<13;e++)for($t[e][0]=$t[e][e]=1,o=1;o<e;o++)$t[e][o]=$t[e-1][o-1]+$t[e-1][o]}}function Wn(e,t,r){Ye();var n,o,l,i,s;for(n=e.length-1,l=0,s=4,o=n;o>=0;o--)i=Nu(e[o],r),(i&12)==t&&(l+=$t[o][s--]);return l}function La(e,t){Ye();var r,n;for(n=0,r=t-2;r>=0;r--)n^=e%(t-r),e=~~(e/(t-r));return n&1}function ft(e,t,r){Ye();var n,o,l,i;for(o=0,i={l:1323536,m:2777561,h:1043915},n=0;n<t-1;n++)l=Nu(e[n],r)<<2,o=(t-n)*o+Qr(Ot(Kr(i,l),{l:15,m:0,h:0})),i=Ru(i,$l({l:1118480,m:279620,h:69905},l));return o}function Nu(e,t){return t?e>>1:e&7}function Tu(e,t,r,n){Ye();var o,l,i,s;for(o=e.length-1,s=4,l=o,i=o;i>=0;i--)t>=$t[i][s]?(t-=$t[i][s--],e[i]=Li(e[i],s|r,n)):((l&12)==r&&(l-=4),e[i]=Li(e[i],l--,n))}function Yr(e,t,r,n){Ye();var o,l,i,s,f,a;for(a={l:1323536,m:2777561,h:1043915},o={l:0,m:0,h:0},s=2;s<=r;s++)o=$s($l(o,4),Js(t%s)),t=~~(t/s);for(l=0;l<r-1;l++)f=(Qr(o)&15)<<2,o=Kr(o,4),e[l]=Li(e[l],Qr(Ot(Kr(a,f),{l:15,m:0,h:0})),n),i=Ru($l({l:1,m:0,h:0},f),{l:1,m:0,h:0}),a=$s(Ot(a,i),Ot(Kr(a,4),{l:~i.l&et,m:~i.m&et,h:~i.h&mr}));e[r-1]=Li(e[r-1],Qr(Ot(a,{l:15,m:0,h:0})),n)}function Li(e,t,r){return(r?t<<1|e&1:t|e&-8)<<24>>24}function rL(e,t){Ye();var r,n,o,l,i,s,f,a;for(l=0;l<8;l++)t.ca[l]=0;for(i=0;i<12;i++)t.ea[i]=0;for(s=0;s<8;s++){for(a=0;a<3&&!(e[Zr[s][a]]==0||e[Zr[s][a]]==3);a++);for(r=e[Zr[s][(a+1)%3]],n=e[Zr[s][(a+2)%3]],f=0;f<8;f++)if(r==~~(Zr[f][1]/9)&&n==~~(Zr[f][2]/9)){t.ca[s]=Jl(a%3<<3|f);break}}for(o=0;o<12;o++)for(f=0;f<12;f++){if(e[er[o][0]]==~~(er[f][0]/9)&&e[er[o][1]]==~~(er[f][1]/9)){t.ea[o]=Jl(f<<1);break}if(e[er[o][0]]==~~(er[f][1]/9)&&e[er[o][1]]==~~(er[f][0]/9)){t.ea[o]=Jl(f<<1|1);break}}}function Gu(e,t){var r,n,o;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){o=(t%3+e.moves[e.length_0-1]%3+1)%4,o==3?--e.length_0:e.moves[e.length_0-1]=r*3+o;return}if(e.length_0>1&&r%3==n%3&&r==~~(e.moves[e.length_0-2]/3)){o=(t%3+e.moves[e.length_0-2]%3+1)%4,o==3?(e.moves[e.length_0-2]=e.moves[e.length_0-1],--e.length_0):e.moves[e.length_0-2]=r*3+o;return}e.moves[e.length_0++]=t}function nL(e,t,r,n){e.verbose=t,e.urfIdx=r,e.depth1=n}function Ou(e){var t,r,n;if(r=new _m,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+=\\\". \\\"),du(Du(r,(Ye(),Ba)[(X(),mi)[n][e.moves[t]]]));else for(t=e.length_0-1;t>=0;t--)du(Du(r,(Ye(),Ba)[(X(),mi)[n][e.moves[t]]])),(e.verbose&1)!=0&&t==e.depth1&&(r.string+=\\\". \\\");return r.string}function Iu(){this.moves=J(Ce,_e,0,31,7,1)}var ae,et,mr,Rm,qe,De,_e,Hs,Co,se,H,Zl,ei,zm,Fu,qr,ta,_n,Cn,Pn,Mn,ri,To,Nn,Tn,Gn,Rr,ni,dr,oi,li,ii,yu,Zt,Jt,On,Vr,sa,hr,ci,In,aa,Hr,Io,Ar,Xt,at,vu,fa,ua,Wo,ga,Eu,ge,pi,ca,pa,mi,Ko,Pu,ma,Mu,$t,Qo,Zr,er,Ba,Kn,bt,Ce,oL,re,lL,Fe,iL,sL,Ku=U(()=>{ae={3:1},et=4194303,mr=1048575,Rm=524288,qe=65535,De={11:1,3:1},_e={17:1,3:1},Hs=14540032,Co=286331153,se={10:1,3:1},Zl={};Po(1,null,{},hm);Po(79,1,{},Ys);H.createClassLiteralForArray=function(t){var r;return r=new Ys,r.modifiers=4,t>1?r.componentType=cu(this,t-1):r.componentType=this,r};H.isPrimitive=function(){return(this.modifiers&1)!=0};zm=Lr(\\\"java.lang\\\",\\\"String\\\",2);Fu=!1;Po(31,1,{31:1},Mo);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;li=0,ii=Lr(\\\"org.cubing.min2phase.client\\\",\\\"CoordCube\\\",31),yu=!1;Ko=Lr(\\\"org.cubing.min2phase.client\\\",\\\"CubieCube\\\",7);Po(72,1,{},Cu);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;Pu=12,ma=7,Mu=!1;Po(150,1,{},Iu);H.depth1=0;H.length_0=0;H.urfIdx=0;H.verbose=0;Ce=Xl(\\\"int\\\",\\\"I\\\");Lr(\\\"com.google.gwt.lang\\\",\\\"CollapsedPropertyHolder\\\",252);Lr(\\\"com.google.gwt.lang\\\",\\\"JavaClassHierarchySetupUtil\\\",254);oL=Lr(\\\"com.google.gwt.lang\\\",\\\"LongLibBase/LongEmul\\\",null);Lr(\\\"com.google.gwt.lang\\\",\\\"ModuleUtils\\\",257);re=Xl(\\\"byte\\\",\\\"B\\\"),lL=Xl(\\\"long\\\",\\\"J\\\"),Fe=Xl(\\\"char\\\",\\\"C\\\");Lr(\\\"com.google.gwt.user.client.rpc\\\",\\\"XsrfToken\\\",null),Am(\\\"java.util\\\",\\\"Map/Entry\\\");iL=function(){Au(!1)},sL=function(e){return eL(new Cu,e)}});async function Qu(){let e=await ke[\\\"3x3x3\\\"].kpuzzle(),t=e.startState();for(let r of fu)t=t.applyAlg(z.fromString((await Yt())(r)));return su(e,t)?t:Qu()}function ju(){return aL??(aL=Promise.resolve().then(()=>(Ku(),Wu)))}async function Ra(e){return Qe(),z.fromString((await ju()).solveState(ou(e)))}async function Qn(){return Ra(await Qu())}async function qu(){(await ju()).initialize()}async function Vu(){return zn(await Qn(),fL)}async function Yu(){let e=new pt,t=await Qn();return e.experimentalPushAlg(Hu),e.experimentalPushAlg(t),e.experimentalPushAlg(Hu),e.toAlg()}var aL,fL,Hu,da=U(()=>{Re();Ht();Nt();Mt();Yl();lu();au();uu();aL=null;fL=[[null,\\\"Rw\\\",\\\"Rw2\\\",\\\"Rw'\\\",\\\"Fw\\\",\\\"Fw'\\\"],[null,\\\"Dw\\\",\\\"Dw2\\\",\\\"Dw'\\\"]];Hu=new z(\\\"R' U' F\\\")});function fe(e,...t){let r=t.length,n=e[t[r-1]];for(let o=r;o>0;o--)e[t[o]]=e[t[o-1]];return e[t[0]]=n,fe}function Zu(e,t,r,n){r=(r||8)-1;let o=1985229328,l=0;n??(n=0),n<0&&(t<<=1);for(let i=0;i<r;++i){let s=Da[r-i],f=~~(t/s);l^=f,t%=s,f<<=2,e[i]=o>>f&7;let a=(1<<f)-1;o=(o&a)+(o>>4&~a)}return n<0&&(l&1)!=0?(e[r]=e[r-1],e[r-1]=o&7):e[r]=o&7,e}var pe,Da,Ju=U(()=>{pe=[],Da=[1];for(let e=0;e<32;++e){pe[e]=[];for(let t=0;t<32;++t)pe[e][t]=0}for(let e=0;e<32;++e){pe[e][0]=pe[e][e]=1,Da[e+1]=Da[e]*(e+1);for(let t=1;t<e;++t)pe[e][t]=pe[e-1][t-1]+pe[e-1][t]}});var og={};ye(og,{initialize:()=>UB,random444Scramble:()=>bB});function T(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 BL(e){return new jo[e]}function ct(e,t,r,...n){let o=jo[e];o&&!o.___clazz$?Y=o.prototype:(!o&&(o=jo[e]=function(){}),Y=o.prototype=t<0?{}:BL(t),Y.castableTypeMap$=r);for(let l of n)l.prototype=Y;o.___clazz$&&(Y.___clazz$=o.___clazz$,o.___clazz$=null)}function yr(e){let t={};for(let r=0,n=e.length;r<n;++r)t[e[r]]=1;return t}function t1(){}function RL(e,t){let r=r1(0,t);return n1(e.___clazz$,e.castableTypeMap$,e.queryId$,r),r}function r1(e,t){let r=new Array(t);if(e===3)for(let n=0;n<t;++n){let o={m:0,l:0,h:0};o.l=o.m=o.h=0,r[n]=o}else if(e>0){let n=[null,0,!1][e];for(let o=0;o<t;++o)r[o]=n}return r}function Aa(e,t,r,n,o){let l=r1(o,n);return n1(e,t,r,l),l}function n1(e,t,r,n){return l1(),DL(n,ya,Ua),n.___clazz$=e,n.castableTypeMap$=t,n.queryId$=r,n}function Bi(e,t,r){return e[t]=r}function l1(){o1||(o1=!0,ya=[],Ua=[],dL(new t1,ya,Ua))}function dL(e,t,r){let n=0,o;for(let l in e)(o=e[l])&&(t[n]=l,r[n]=o,++n)}function DL(e,t,r){l1();for(let n=0,o=t.length;n<o;++n)e[t[n]]=r[n]}function FL(e,t){return e.castableTypeMap$&&!!e.castableTypeMap$[t]}function hL(e,t){return e!==null&&FL(e,t)}function AL(){if(i1)return!1;i1=!0,hi=T(15582,36),Ai=T(15582),xt=T(15582),Vn=T(48,48),wt=T(48,36),qn=T(48),xa=T(48)}function ba(e){e.ct=T(24)}function s1(e,t){let r,n;if(hL(t,$u)){for(r=t,n=0;n<24;++n)if(e.ct[n]!==r.ct[n])return!1;return!0}return!1}function Ri(e){let t,r,n;for(r=0,n=8,t=23;t>=0;--t)e.ct[t]===1&&(r+=pe[t][n--]);return r}function di(e){let t,r;if(jn!==null)return jn[Ri(e)];for(r=0;r<48;++r){if(t=wL(Ri(e)),t!==-1)return t*64+r;ie(e,0),r%2==1&&ie(e,1),r%8==7&&ie(e,2),r%16==15&&ie(e,3)}}function St(e,t){let r=t%3;switch(t=~~(t/3),t){case 0:F(e.ct,0,1,2,3,r);break;case 1:F(e.ct,16,17,18,19,r);break;case 2:F(e.ct,8,9,10,11,r);break;case 3:F(e.ct,4,5,6,7,r);break;case 4:F(e.ct,20,21,22,23,r);break;case 5:F(e.ct,12,13,14,15,r);break;case 6:F(e.ct,0,1,2,3,r),F(e.ct,8,20,12,16,r),F(e.ct,9,21,13,17,r);break;case 7:F(e.ct,16,17,18,19,r),F(e.ct,1,15,5,9,r),F(e.ct,2,12,6,10,r);break;case 8:F(e.ct,8,9,10,11,r),F(e.ct,2,19,4,21,r),F(e.ct,3,16,5,22,r);break;case 9:F(e.ct,4,5,6,7,r),F(e.ct,10,18,14,22,r),F(e.ct,11,19,15,23,r);break;case 10:F(e.ct,20,21,22,23,r),F(e.ct,0,8,4,14,r),F(e.ct,3,11,7,13,r);break;case 11:F(e.ct,12,13,14,15,r),F(e.ct,1,20,7,18,r),F(e.ct,0,23,6,17,r)}}function ie(e,t){switch(t){case 0:St(e,19),St(e,28);break;case 1:St(e,21),St(e,32);break;case 2:F(e.ct,0,3,1,2,1),F(e.ct,8,11,9,10,1),F(e.ct,4,7,5,6,1),F(e.ct,12,15,13,14,1),F(e.ct,16,19,21,22,1),F(e.ct,17,18,20,23,1);break;case 3:St(e,18),St(e,29),St(e,24),St(e,35)}}function a1(e,t){let r;for(r=0;r<t;++r)ie(e,0),r%2==1&&ie(e,1),r%8==7&&ie(e,2),r%16==15&&ie(e,3)}function Sa(e,t){let r,n;for(n=8,r=23;r>=0;--r)e.ct[r]=0,t>=pe[r][n]&&(t-=pe[r][n--],e.ct[r]=1)}function Di(e,t){let r;for(r=0;r<24;++r)e.ct[r]=t.ct[r]}function qo(){let e;for(ba(this),e=0;e<8;++e)this.ct[e]=1;for(e=8;e<24;++e)this.ct[e]=0}function Fi(e,t){let r;for(ba(this),r=0;r<24;++r)this.ct[r]=~~(e.ct[r]/2)===t?1:0}function Vo(e){let t;for(ba(this),t=0;t<24;++t)this.ct[t]=e[t]}function yL(){let e,t,r=new qo,n=new qo;for(e=0;e<15582;++e)for(Sa(n,Ai[e]),t=0;t<36;++t)Di(r,n),St(r,t),hi[e][t]=di(r)}function UL(){let e,t,r,n,o,l,i,s;for(Oi(xt),xt[0]=0,t=0,r=1;r!==15582;)for(l=t>4,s=l?-1:t,e=l?t:-1,++t,n=0;n<15582;++n)if(xt[n]===s){for(i=0;i<27;++i)if(o=~~hi[n][i]>>>6,xt[o]===e)if(++r,l){xt[n]=t;break}else xt[o]=t}}function bL(e){let t,r,n,o=new Vo(e.ct);for(n=0;n<48;++n){for(t=!0,r=0;r<24;++r)if(o.ct[r]!==~~(r/4)){t=!1;break}if(t)return n;ie(o,0),n%2==1&&ie(o,1),n%8==7&&ie(o,2),n%16==15&&ie(o,3)}return-1}function SL(){let e,t,r,n=new qo;for(e=0;e<24;++e)n.ct[e]=e;let o=new Vo(n.ct),l=new Vo(n.ct),i=new Vo(n.ct);for(e=0;e<48;++e){for(t=0;t<48;++t){for(r=0;r<48;++r)s1(n,o)&&(Vn[e][t]=r,r===0&&(qn[e]=t)),ie(o,0),r%2==1&&ie(o,1),r%8==7&&ie(o,2),r%16==15&&ie(o,3);ie(n,0),t%2==1&&ie(n,1),t%8==7&&ie(n,2),t%16==15&&ie(n,3)}ie(n,0),e%2==1&&ie(n,1),e%8==7&&ie(n,2),e%16==15&&ie(n,3)}for(e=0;e<48;++e)for(Di(n,l),a1(n,qn[e]),t=0;t<36;++t)for(Di(o,n),St(o,t),a1(o,e),r=0;r<36;++r)if(Di(i,l),St(i,r),s1(i,o)){wt[e][t]=r;break}for(Sa(n,0),e=0;e<48;++e)xa[qn[e]]=Ri(n),ie(n,0),e%2==1&&ie(n,1),e%8==7&&ie(n,2),e%16==15&&ie(n,3)}function xL(){let e,t,r,n,o=new qo,l=T(22984);for(t=0;t<22984;t++)l[t]=0;for(e=0,t=0;t<735471;++t)if((l[~~t>>>5]&1<<(t&31))==0){for(Sa(o,t),n=0;n<48;++n)r=Ri(o),l[~~r>>>5]|=1<<(r&31),jn!==null&&(jn[r]=e<<6|qn[n]),ie(o,0),n%2==1&&ie(o,1),n%8==7&&ie(o,2),n%16==15&&ie(o,3);Ai[e++]=t}}function wL(e){let t=LB(Ai,e);return t>=0?t:-1}function vL(){f1||(f1=!0,Si=T(70,28),bi=T(6435,28),L1=T(70,16),p1=T(6435,16),rt=T(450450),m1=[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 yi(e){let t,r,n;for(r=0,n=8,t=14;t>=0;--t)e.ct[t]!==e.ct[15]&&(r+=pe[t][n--]);return r}function Ui(e){let t,r,n;for(r=0,n=4,t=6;t>=0;--t)e.rl[t]!==e.rl[7]&&(r+=pe[t][n--]);return r*2+e.parity}function Hn(e,t){e.parity^=m1[t];let r=t%3;switch(t=~~(t/3),t){case 0:F(e.ct,0,1,2,3,r);break;case 1:F(e.rl,0,1,2,3,r);break;case 2:F(e.ct,8,9,10,11,r);break;case 3:F(e.ct,4,5,6,7,r);break;case 4:F(e.rl,4,5,6,7,r);break;case 5:F(e.ct,12,13,14,15,r);break;case 6:F(e.ct,0,1,2,3,r),F(e.rl,0,5,4,1,r),F(e.ct,8,9,12,13,r);break;case 7:F(e.rl,0,1,2,3,r),F(e.ct,1,15,5,9,r),F(e.ct,2,12,6,10,r);break;case 8:F(e.ct,8,9,10,11,r),F(e.rl,0,3,6,5,r),F(e.ct,3,2,5,4,r);break;case 9:F(e.ct,4,5,6,7,r),F(e.rl,3,2,7,6,r),F(e.ct,11,10,15,14,r);break;case 10:F(e.rl,4,5,6,7,r),F(e.ct,0,8,4,14,r),F(e.ct,3,11,7,13,r);break;case 11:F(e.ct,12,13,14,15,r),F(e.rl,1,4,7,2,r),F(e.ct,1,0,7,6,r)}}function Yn(e,t){switch(t){case 0:Hn(e,19),Hn(e,28);break;case 1:Hn(e,21),Hn(e,32);break;case 2:F(e.ct,0,3,1,2,1),F(e.ct,8,11,9,10,1),F(e.ct,4,7,5,6,1),F(e.ct,12,15,13,14,1),F(e.rl,0,3,5,6,1),F(e.rl,1,2,4,7,1)}}function u1(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 g1(e,t){let r,n;for(n=8,e.ct[15]=0,r=14;r>=0;--r)t>=pe[r][n]?(t-=pe[r][n--],e.ct[r]=1):e.ct[r]=0}function c1(e,t){let r,n;for(e.parity=t&1,t>>>=1,n=4,e.rl[7]=0,r=6;r>=0;--r)t>=pe[r][n]?(t-=pe[r][n--],e.rl[r]=1):e.rl[r]=0}function wa(){this.rl=T(8),this.ct=T(16)}function EL(){let e,t,r,n,o,l,i,s,f,a,g=new wa;for(o=0;o<70;++o)for(s=0;s<28;++s)c1(g,o),Hn(g,Xr[s]),Si[o][s]=Ui(g);for(o=0;o<70;++o)for(c1(g,o),i=0;i<16;++i)L1[o][i]=Ui(g),Yn(g,0),i%2==1&&Yn(g,1),i%8==7&&Yn(g,2);for(o=0;o<6435;++o)for(g1(g,o),i=0;i<16;++i)p1[o][i]=yi(g)&65535,Yn(g,0),i%2==1&&Yn(g,1),i%8==7&&Yn(g,2);for(o=0;o<6435;++o)for(s=0;s<28;++s)g1(g,o),Hn(g,Xr[s]),bi[o][s]=yi(g)&65535;for(Oi(rt),rt[0]=rt[18]=rt[28]=rt[46]=rt[54]=rt[56]=0,r=0,n=6;n!==450450;){let c=r>6,u=c?-1:r,p=c?r:-1;for(++r,o=0;o<450450;++o)if(rt[o]===u){for(e=~~(o/70),f=o%70,s=0;s<23;++s)if(t=bi[e][s],a=Si[f][s],l=t*70+a,rt[l]===p)if(++n,c){rt[o]=r;break}else rt[l]=r}}}function kL(){B1||(B1=!0,Ho=T(29400,20),d1=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1],Ur=T(29400),ka=[0,9,14,23,27,28,41,42,46,55,60,69],za=T(70))}function va(e){let t,r,n,o;for(r=0,o=4,t=6;t>=0;--t)e.ud[t]!==e.ud[7]&&(r+=pe[t][o--]);for(r*=35,o=4,t=6;t>=0;--t)e.fb[t]!==e.fb[7]&&(r+=pe[t][o--]);r*=12;let l=e.fb[7]^e.ud[7];for(n=0,o=4,t=7;t>=0;--t)e.rl[t]!==l&&(n+=pe[t][o--]);return e.parity+2*(r+za[n])}function zL(e,t){switch(e.parity^=d1[t],t){case 0:case 1:case 2:F(e.ud,0,1,2,3,t%3);break;case 3:F(e.rl,0,1,2,3,1);break;case 4:case 5:case 6:F(e.fb,0,1,2,3,(t-1)%3);break;case 7:case 8:case 9:F(e.ud,4,5,6,7,(t-1)%3);break;case 10:F(e.rl,4,5,6,7,1);break;case 11:case 12:case 13:F(e.fb,4,5,6,7,(t+1)%3);break;case 14:F(e.ud,0,1,2,3,1),F(e.rl,0,5,4,1,1),F(e.fb,0,5,4,1,1);break;case 15:F(e.rl,0,1,2,3,1),F(e.fb,1,4,7,2,1),F(e.ud,1,6,5,2,1);break;case 16:F(e.fb,0,1,2,3,1),F(e.ud,3,2,5,4,1),F(e.rl,0,3,6,5,1);break;case 17:F(e.ud,4,5,6,7,1),F(e.rl,3,2,7,6,1),F(e.fb,3,2,7,6,1);break;case 18:F(e.rl,4,5,6,7,1),F(e.fb,0,3,6,5,1),F(e.ud,0,3,4,7,1);break;case 19:F(e.fb,4,5,6,7,1),F(e.ud,0,7,6,1,1),F(e.rl,1,4,7,2,1)}}function R1(e,t,r){let n,o=(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^o;e.parity=o^r}function _L(e,t){let r,n,o,l;for(e.parity=t&1,t>>>=1,o=ka[t%12],t=~~(t/12),l=4,r=7;r>=0;--r)e.rl[r]=0,o>=pe[r][l]&&(o-=pe[r][l--],e.rl[r]=1);for(n=t%35,t=~~(t/35),l=4,e.fb[7]=0,r=6;r>=0;--r)n>=pe[r][l]?(n-=pe[r][l--],e.fb[r]=1):e.fb[r]=0;for(l=4,e.ud[7]=0,r=6;r>=0;--r)t>=pe[r][l]?(t-=pe[r][l--],e.ud[r]=1):e.ud[r]=0}function Ea(){this.ud=T(8),this.rl=T(8),this.fb=T(8)}function CL(){let e,t,r,n;for(r=0;r<12;++r)za[ka[r]]=r;let o=new Ea;for(r=0;r<29400;++r)for(n=0;n<20;++n)_L(o,r),zL(o,n),Ho[r][n]=va(o)&65535;for(Oi(Ur),Ur[0]=0,e=0,t=1;t!==29400;){for(r=0;r<29400;++r)if(Ur[r]===e)for(n=0;n<17;++n)Ur[Ho[r][n]]===-1&&(Ur[Ho[r][n]]=e+1,++t);++e}}function PL(e,t){let r;for(r=0;r<24;++r)e.ct[r]=t.ct[r]}function ML(e,t){let r=t%3;switch(t=~~(t/3),t){case 0:F(e.ct,0,1,2,3,r);break;case 1:F(e.ct,16,17,18,19,r);break;case 2:F(e.ct,8,9,10,11,r);break;case 3:F(e.ct,4,5,6,7,r);break;case 4:F(e.ct,20,21,22,23,r);break;case 5:F(e.ct,12,13,14,15,r);break;case 6:F(e.ct,0,1,2,3,r),F(e.ct,8,20,12,16,r),F(e.ct,9,21,13,17,r);break;case 7:F(e.ct,16,17,18,19,r),F(e.ct,1,15,5,9,r),F(e.ct,2,12,6,10,r);break;case 8:F(e.ct,8,9,10,11,r),F(e.ct,2,19,4,21,r),F(e.ct,3,16,5,22,r);break;case 9:F(e.ct,4,5,6,7,r),F(e.ct,10,18,14,22,r),F(e.ct,11,19,15,23,r);break;case 10:F(e.ct,20,21,22,23,r),F(e.ct,0,8,4,14,r),F(e.ct,3,11,7,13,r);break;case 11:F(e.ct,12,13,14,15,r),F(e.ct,1,20,7,18,r),F(e.ct,0,23,6,17,r)}}function _a(){let e;for(this.ct=T(24),e=0;e<24;++e)this.ct[e]=~~(e/4)}function D1(e){let t,r,n;for(_a.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 NL(){F1||(F1=!0,Rt=T(18),OL())}function h1(e){e.cp=[0,1,2,3,4,5,6,7],e.co=[0,0,0,0,0,0,0,0]}function A1(e,t){let r;for(r=0;r<8;++r)e.cp[r]=t.cp[r],e.co[r]=t.co[r]}function TL(e,t){!e.temps&&(e.temps=new xi),y1(e,Rt[t],e.temps),A1(e,e.temps)}function GL(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 y1(e,t,r){let n,o,l,i;for(n=0;n<8;++n)r.cp[n]=e.cp[t.cp[n]],l=e.co[t.cp[n]],i=t.co[n],o=l,o=o+(l<3?i:6-i),o=o%3,(l>=3?1:0)^(i>=3?1:0)&&(o=o+3),r.co[n]=o}function xi(){h1(this)}function br(e,t){h1(this),Zu(this.cp,e),GL(this,t)}function U1(e){br.call(this,e(40320),e(2187))}function OL(){let e,t;for(Rt[0]=new br(15120,0),Rt[3]=new br(21021,1494),Rt[6]=new br(8064,1236),Rt[9]=new br(9,0),Rt[12]=new br(1230,412),Rt[15]=new br(224,137),e=0;e<18;e+=3)for(t=0;t<2;++t)Rt[e+t+1]=new xi,y1(Rt[e+t],Rt[e],Rt[e+t+1])}function IL(){b1||(b1=!0,vt=T(1937880),ki=T(1538),zi=T(1538),eo=T(11880),k1=[0,1,6,3,4,5,2,7],Na=T(160,12),Ta=T(160,12),Ma=[1,1,1,3,12,60,360,2520,20160,181440,1814400,19958400,239500800],Pa=[0,2,4,6,1,3,7,5,8,9,10,11])}function Zn(e,t,r,n,o){let l=e.edgeo[o];e.edgeo[o]=e.edge[n],e.edge[n]=e.edgeo[r],e.edgeo[r]=e.edge[t],e.edge[t]=l}function Jn(e,t){let r,n,o,l,i;for(e.isStd||v1(e),n=0,i=1985229328,l=47768,r=0;r<t;++r)o=e.edge[r]<<2,n*=12-r,o>=32?(n+=l>>o-32&15,l-=4368<<o-32):(n+=i>>o&15,l-=4369,i-=286331152<<o);return n}function S1(e){let t,r=Jn(e,4);t=eo[r];let n=t&7;t>>=3,vi(e,n);let o=Jn(e,10)%20160;return t*20160+o}function wi(e,t){switch(e.isStd=!1,t){case 0:fe(e.edge,0,4,1,5),fe(e.edgeo,0,4,1,5);break;case 1:Be(e.edge,0,4,1,5),Be(e.edgeo,0,4,1,5);break;case 2:fe(e.edge,0,5,1,4),fe(e.edgeo,0,5,1,4);break;case 3:Be(e.edge,5,10,6,11),Be(e.edgeo,5,10,6,11);break;case 4:fe(e.edge,0,11,3,8),fe(e.edgeo,0,11,3,8);break;case 5:Be(e.edge,0,11,3,8),Be(e.edgeo,0,11,3,8);break;case 6:fe(e.edge,0,8,3,11),fe(e.edgeo,0,8,3,11);break;case 7:fe(e.edge,2,7,3,6),fe(e.edgeo,2,7,3,6);break;case 8:Be(e.edge,2,7,3,6),Be(e.edgeo,2,7,3,6);break;case 9:fe(e.edge,2,6,3,7),fe(e.edgeo,2,6,3,7);break;case 10:Be(e.edge,4,8,7,9),Be(e.edgeo,4,8,7,9);break;case 11:fe(e.edge,1,9,2,10),fe(e.edgeo,1,9,2,10);break;case 12:Be(e.edge,1,9,2,10),Be(e.edgeo,1,9,2,10);break;case 13:fe(e.edge,1,10,2,9),fe(e.edgeo,1,10,2,9);break;case 14:Be(e.edge,0,4,1,5),Be(e.edgeo,0,4,1,5),fe(e.edge,9,11),fe(e.edgeo,8,10);break;case 15:Be(e.edge,5,10,6,11),Be(e.edgeo,5,10,6,11),fe(e.edge,1,3),fe(e.edgeo,0,2);break;case 16:Be(e.edge,0,11,3,8),Be(e.edgeo,0,11,3,8),fe(e.edge,5,7),fe(e.edgeo,4,6);break;case 17:Be(e.edge,2,7,3,6),Be(e.edgeo,2,7,3,6),fe(e.edge,8,10),fe(e.edgeo,9,11);break;case 18:Be(e.edge,4,8,7,9),Be(e.edgeo,4,8,7,9),fe(e.edge,0,2),fe(e.edgeo,1,3);break;case 19:Be(e.edge,1,9,2,10),Be(e.edgeo,1,9,2,10),fe(e.edge,4,6),fe(e.edgeo,5,7)}}function Xn(e,t){switch(e.isStd=!1,t){case 0:wi(e,14),wi(e,17);break;case 1:Zn(e,11,5,10,6),Zn(e,5,10,6,11),Zn(e,1,2,3,0),Zn(e,4,9,7,8),Zn(e,8,4,9,7),Zn(e,0,1,2,3);break;case 2:dt(e,4,5),dt(e,5,4),dt(e,11,8),dt(e,8,11),dt(e,7,6),dt(e,6,7),dt(e,9,10),dt(e,10,9),dt(e,1,1),dt(e,0,0),dt(e,3,3),dt(e,2,2)}}function vi(e,t){for(;t>=2;)t-=2,Xn(e,1),Xn(e,2);t!==0&&Xn(e,0)}function Yo(e,t){let r,n,o,l,i,s;for(i=1985229328,s=47768,o=0,r=0;r<11;++r)if(n=Ma[11-r],l=~~(t/n),t=t%n,o^=l,l<<=2,l>=32){l=l-32,e.edge[r]=s>>l&15;let f=(1<<l)-1;s=(s&f)+(s>>4&~f)}else{e.edge[r]=i>>l&15;let f=(1<<l)-1;i=(i&f)+(i>>>4&~f)+(s<<28),s=s>>4}for((o&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 x1(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 w1(e,t){let r,n,o,l;for(e.temp===null&&(e.temp=T(12)),r=0;r<12;++r)e.temp[r]=r,e.edge[r]=t.ep[Pa[r]+12]%12;for(n=1,r=0;r<12;++r)for(;e.edge[r]!==r;)l=e.edge[r],e.edge[r]=e.edge[l],e.edge[l]=l,o=e.temp[r],e.temp[r]=e.temp[l],e.temp[l]=o,n^=1;for(r=0;r<12;++r)e.edge[r]=e.temp[t.ep[Pa[r]]%12];return n}function v1(e){let t;for(e.temp===null&&(e.temp=T(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 Be(e,t,r,n,o){let l;l=e[t],e[t]=e[n],e[n]=l,l=e[r],e[r]=e[o],e[o]=l}function dt(e,t,r){let n=e.edge[t];e.edge[t]=e.edgeo[r],e.edgeo[r]=n}function tr(){this.edge=T(12),this.edgeo=T(12)}function WL(){let e,t,r,n,o,l,i,s,f,a,g,c,u,p,m,L,R,D,A,y,k,E,Q=new tr,$=new tr,N=new tr;for(Oi(vt),s=0,Ei=1,Ca(vt,0,0);Ei!==31006080&&(m=s>9,i=s%3,l=(s+1)%3,a=m?3:i,e=m?i:3,!(s>=9));){for(c=0;c<31006080;c+=16)if(E=vt[~~c>>4],!(!m&&E===-1)){for(g=c,f=c+16;g<f;++g,E>>=2)if((E&3)===a){for(A=~~(g/20160),t=ki[A],n=g%20160,Yo(Q,t*20160+n),R=0;R<17;++R)if(r=$n(Q.edge,R<<3,4),y=eo[r],k=y&7,y>>=3,o=$n(Q.edge,R<<3|k,10)%20160,u=y*20160+o,Zo(vt,u)===e){if(Ca(vt,m?g:u,l),++Ei,m)break;if(D=zi[y],D!==1)for(x1($,Q),wi($,R),vi($,k),L=1;(D=~~D>>1&65535)!=0;++L)(D&1)==1&&(x1(N,$),vi(N,L),p=y*20160+Jn(N,10)%20160,Zo(vt,p)===e&&(Ca(vt,p,l),++Ei))}}}++s}}function Zo(e,t){return e[t>>4]>>((t&15)<<1)&3}function $n(e,t,r){let n,o,l,i,s,f=Ta[t],a=Na[t];for(o=0,s=1985229328,i=47768,n=0;n<r;++n)l=f[e[a[n]]]<<2,o*=12-n,l>=32?(o+=i>>l-32&15,i-=4368<<l-32):(o+=s>>l&15,i-=4369,s-=286331152<<l);return o}function E1(e){let t,r,n,o,l,i,s,f,a,g,c,u=new tr;if(i=0,l=Zo(vt,e),l===3)return 10;for(;e!==0;)for(l===0?l=2:--l,a=~~(e/20160),t=ki[a],n=e%20160,Yo(u,t*20160+n),f=0;f<17;++f)if(r=$n(u.edge,f<<3,4),g=eo[r],c=g&7,g>>=3,o=$n(u.edge,f<<3|c,10)%20160,s=g*20160+o,Zo(vt,s)===l){++i,e=s;break}return i}function KL(e,t){let r=Zo(vt,e);return r===3?10:(1227133513<<r>>t&3)+t-1}function QL(){let e,t,r,n=new tr;for(t=0;t<20;++t)for(r=0;r<8;++r){for(Yo(n,0),wi(n,t),vi(n,r),e=0;e<12;++e)Na[t<<3|r][e]=n.edge[e];for(v1(n),e=0;e<12;++e)Ta[t<<3|r][e]=n.temp[e]}}function jL(){let e,t,r,n,o=new tr,l=T(1485);for(t=0;t<1485;t++)l[t]=0;for(e=0,t=0;t<11880;++t)if((l[~~t>>>3]&1<<(t&7))==0){for(Yo(o,t*Ma[8]),n=0;n<8;++n)r=Jn(o,4),r===t&&(zi[e]=(zi[e]|1<<n)&65535),l[~~r>>3]=l[~~r>>3]|1<<(r&7),eo[r]=e<<3|k1[n],Xn(o,0),n%2==1&&(Xn(o,1),Xn(o,2));ki[e++]=t}}function Ca(e,t,r){e[t>>4]^=(3^r)<<((t&15)<<1)}function qL(){z1||(z1=!0)}function VL(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 HL(e,t){let r;for(r=0;r<24;++r)e.ep[r]=t.ep[r]}function YL(e,t){let r=t%3;switch(t=~~(t/3),t){case 0:F(e.ep,0,1,2,3,r),F(e.ep,12,13,14,15,r);break;case 1:F(e.ep,11,15,10,19,r),F(e.ep,23,3,22,7,r);break;case 2:F(e.ep,0,11,6,8,r),F(e.ep,12,23,18,20,r);break;case 3:F(e.ep,4,5,6,7,r),F(e.ep,16,17,18,19,r);break;case 4:F(e.ep,1,20,5,21,r),F(e.ep,13,8,17,9,r);break;case 5:F(e.ep,2,9,4,10,r),F(e.ep,14,21,16,22,r);break;case 6:F(e.ep,0,1,2,3,r),F(e.ep,12,13,14,15,r),F(e.ep,9,22,11,20,r);break;case 7:F(e.ep,11,15,10,19,r),F(e.ep,23,3,22,7,r),F(e.ep,2,16,6,12,r);break;case 8:F(e.ep,0,11,6,8,r),F(e.ep,12,23,18,20,r),F(e.ep,3,19,5,13,r);break;case 9:F(e.ep,4,5,6,7,r),F(e.ep,16,17,18,19,r),F(e.ep,8,23,10,21,r);break;case 10:F(e.ep,1,20,5,21,r),F(e.ep,13,8,17,9,r),F(e.ep,14,0,18,4,r);break;case 11:F(e.ep,2,9,4,10,r),F(e.ep,14,21,16,22,r),F(e.ep,7,15,1,17,r)}}function Ga(){let e;for(this.ep=T(24),e=0;e<24;++e)this.ep[e]=e}function _1(e){let t,r,n;for(Ga.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 ZL(){C1||(C1=!0,Oa=[35,1,34,2,4,6,22,5,19])}function P1(e){e.moveBuffer=T(60)}function JL(e,t){return e.value-t.value}function to(e,t){let r;for(HL(e.edge,t.edge),PL(e.center,t.center),A1(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 Sr(e){for(;e.centerAvail<e.moveLength;)ML(e.center,e.moveBuffer[e.centerAvail++]);return e.center}function M1(e){for(;e.cornerAvail<e.moveLength;)TL(e.corner,e.moveBuffer[e.cornerAvail++]%18);return e.corner}function Jo(e){for(;e.edgeAvail<e.moveLength;)YL(e.edge,e.moveBuffer[e.edgeAvail++]);return e.edge}function XL(e){let t,r,n,o,l,i,s=new Array(e.moveLength-(e.add1?2:0));for(r=0,t=0;t<e.length1;++t)s[r++]=e.moveBuffer[t];for(i=e.sym,t=e.length1+(e.add1?2:0);t<e.moveLength;++t)wt[i][e.moveBuffer[t]]>=27?(s[r++]=wt[i][e.moveBuffer[t]]-9,o=Oa[wt[i][e.moveBuffer[t]]-27],i=Vn[i][o]):s[r++]=wt[i][e.moveBuffer[t]];let f=Vn[qn[i]][bL(Sr(e))];for(l=\\\"\\\",i=f,t=r-1;t>=0;--t)n=s[t],n=~~(n/3)*3+(2-n%3),wt[i][n]>=27?(l=l+Ia[wt[i][n]-9]+\\\" \\\",o=Oa[wt[i][n]-27],i=Vn[i][o]):l=l+Ia[wt[i][n]]+\\\" \\\";return l}function Jr(e,t){e.moveBuffer[e.moveLength++]=t}function _i(){P1(this),this.edge=new Ga,this.center=new _a,this.corner=new xi}function Ci(e){_i.call(this),to(this,e)}function N1(e){P1(this),this.edge=new _1(e),this.center=new D1(e),this.corner=new U1(e)}function $L(e,t){return t.value-e.value}function Pi(e,t){return $L(e,t)}function T1(){}function eB(){if(G1)return;G1=!0;let e,t;for(Ia=[\\\"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'\\\"],Xr=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,19,21,22,23,25,28,30,31,32,34,36],Xo=[0,1,2,4,6,7,8,9,10,11,13,15,16,17,19,22,25,28,31,34,36],O1=T(37),I1=T(37),ro=T(37,36),Mi=T(29,28),Ni=T(21,20),Wa=T(36),$o=T(28),no=T(20),e=0;e<29;++e)O1[Xr[e]]=e;for(e=0;e<21;++e)I1[Xo[e]]=e;for(e=0;e<36;++e){for(t=0;t<36;++t)ro[e][t]=~~(e/3)==~~(t/3)||~~(e/3)%3==~~(t/3)%3&&e>t;ro[36][e]=!1}for(e=0;e<29;++e)for(t=0;t<28;++t)Mi[e][t]=ro[Xr[e]][Xr[t]];for(e=0;e<21;++e)for(t=0;t<20;++t)Ni[e][t]=ro[Xo[e]][Xo[t]];for(e=0;e<36;++e)for(Wa[e]=36,t=e;t<36;++t)if(!ro[e][t]){Wa[e]=t-1;break}for(e=0;e<28;++e)for($o[e]=28,t=e;t<28;++t)if(!Mi[e][t]){$o[e]=t-1;break}for(e=0;e<20;++e)for(no[e]=20,t=e;t<20;++t)if(!Ni[e][t]){no[e]=t-1;break}}function tB(e){let t,r,n,o,l,i,s,f,a,g,c,u;e.solution=\\\"\\\";let p=di(new Fi(Sr(e.c),0)),m=di(new Fi(Sr(e.c),1)),L=di(new Fi(Sr(e.c),2)),R=xt[~~p>>6],D=xt[~~m>>6],A=xt[~~L>>6];for(e.p1SolsCnt=0,e.arr2idx=0,uB(e.p1sols.heap),e.length1=(R<D?R:D)<A?R<D?R:D:A;e.length1<100&&!(A<=e.length1&&Ti(e,~~L>>>6,L&63,e.length1,-1,0)||R<=e.length1&&Ti(e,~~p>>>6,p&63,e.length1,-1,0)||D<=e.length1&&Ti(e,~~m>>>6,m&63,e.length1,-1,0));++e.length1);let y=hB(e.p1sols,Aa(yB,yr([pL,Fa,ha]),e1,0,0));y.sort(function(Q,$){return Q.value-$.value}),t=9;do{e:for(f=y[0].value;f<100;++f)for(i=0;i<y.length&&!(y[i].value>f);++i)if(!(f-y[i].length1>t)&&(to(e.c1,y[i]),u1(e.ct2,Sr(e.c1),Gi(Jo(e.c1).ep)),c=yi(e.ct2),u=Ui(e.ct2),e.length1=y[i].length1,e.length2=f-y[i].length1,W1(e,c,u,e.length2,28,0)))break e;++t}while(f===100);e.arr2.sort(function(Q,$){return Q.value-$.value}),s=0,r=13;do{e:for(a=e.arr2[0].value;a<100;++a)for(i=0;i<Math.min(e.arr2idx,100)&&!(e.arr2[i].value>a);++i)if(!(a-e.arr2[i].length1-e.arr2[i].length2>r)&&(l=w1(e.e12,Jo(e.arr2[i])),R1(e.ct3,Sr(e.arr2[i]),l^Gi(M1(e.arr2[i]).cp)),n=va(e.ct3),o=Jn(e.e12,10),g=E1(S1(e.e12)),g<=a-e.arr2[i].length1-e.arr2[i].length2&&K1(e,o,n,g,a-e.arr2[i].length1-e.arr2[i].length2,20,0))){s=i;break e}++r}while(a===100);let k=new Ci(e.arr2[s]);e.length1=k.length1,e.length2=k.length2;let E=a-e.length1-e.length2;for(i=0;i<E;++i)Jr(k,Xo[e.move3[i]]);e.solution=XL(k)}function rB(e,t){let r,n;for(to(e.c1,e.c),r=0;r<e.length1;++r)Jr(e.c1,e.move1[r]);switch(xa[t]){case 0:Jr(e.c1,24),Jr(e.c1,35),e.move1[e.length1]=24,e.move1[e.length1+1]=35,e.add1=!0,t=19;break;case 12869:Jr(e.c1,18),Jr(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}u1(e.ct2,Sr(e.c1),Gi(Jo(e.c1).ep));let o=yi(e.ct2),l=Ui(e.ct2),i=rt[o*70+l];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 Ci(e.c1):(n=DB(e.p1sols),n.value>e.c1.value&&to(n,e.c1)),sB(e.p1sols,n),e.p1SolsCnt===1e4}function nB(e){let t;for(to(e.c2,e.c1),t=0;t<e.length2;++t)Jr(e.c2,e.move2[t]);if(!VL(Jo(e.c2)))return!1;let r=w1(e.e12,Jo(e.c2));R1(e.ct3,Sr(e.c2),r^Gi(M1(e.c2).cp));let n=va(e.ct3);Jn(e.e12,10);let o=E1(S1(e.e12));return e.arr2[e.arr2idx]?to(e.arr2[e.arr2idx],e.c2):e.arr2[e.arr2idx]=new Ci(e.c2),e.arr2[e.arr2idx].value=e.length1+e.length2+Math.max(o,Ur[n]),e.arr2[e.arr2idx].length2=e.length2,++e.arr2idx,e.arr2idx===e.arr2.length}function oB(e,t){return j1(),e.c=new N1(t),tB(e),e.solution}function Ti(e,t,r,n,o,l){let i,s,f,a,g,c;if(t===0)return n===0&&rB(e,r);for(i=0;i<27;i+=3)if(!(i===o||i===o-9||i===o-18))for(a=0;a<3;++a){if(f=i+a,s=hi[t][wt[r][f]],g=xt[~~s>>>6],g>=n){if(g>n)break;continue}if(c=Vn[r][s&63],s>>>=6,e.move1[l]=f,Ti(e,s,c,n-1,i,l+1))return!0}return!1}function W1(e,t,r,n,o,l){let i,s,f,a;if(t===0&&rt[r]===0)return n===0&&nB(e);for(s=0;s<23;++s){if(Mi[o][s]){s=$o[s];continue}if(i=bi[t][s],a=Si[r][s],f=rt[i*70+a],f>=n){f>n&&(s=$o[s]);continue}if(e.move2[l]=Xr[s],W1(e,i,a,n-1,s,l+1))return!0}return!1}function K1(e,t,r,n,o,l,i){let s,f,a,g,c,u,p,m,L;if(o===0)return t===0&&r===0;for(Yo(e.tempe[i],t),c=0;c<17;++c){if(Ni[l][c]){c=no[c];continue}if(a=Ho[r][c],u=Ur[a],u>=o){u>o&&c<14&&(c=no[c]);continue}if(g=$n(e.tempe[i].edge,c<<3,10),s=~~(g/20160),m=eo[s],L=m&7,m>>=3,f=$n(e.tempe[i].edge,c<<3|L,10)%20160,p=KL(m*20160+f,n),p>=o){p>o&&c<14&&(c=no[c]);continue}if(K1(e,g,a,p,o-1,c,i+1))return e.move3[i]=c,!0}return!1}function Q1(){let e;for(this.p1sols=new $1(new T1),this.move1=T(15),this.move2=T(20),this.move3=T(20),this.c1=new _i,this.c2=new _i,this.ct2=new wa,this.ct3=new Ea,this.e12=new tr,this.tempe=T(20),this.arr2=T(100),e=0;e<20;++e)this.tempe[e]=new tr}function j1(){q1||(SL(),jn=T(735471),xL(),yL(),jn=null,UL(),EL(),CL(),QL(),jL(),WL(),q1=!0)}function lB(){V1||(V1=!0)}function Gi(e){let t,r,n,o;for(o=0,t=0,n=e.length;t<n;++t)for(r=t;r<n;++r)e[t]>e[r]&&(o^=1);return o}function F(e,t,r,n,o,l){let i;switch(l){case 0:i=e[o],e[o]=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[o],e[o]=i;return;case 2:i=e[t],e[t]=e[r],e[r]=e[n],e[n]=e[o],e[o]=i;return}}function H1(){}function Y1(e,t,r,n){let o=new H1;return o.typeName=e+t,J1(r!==0?-r:0)&&X1(r!==0?-r:0,o),o.modifiers=4,o.superclass=Ka,o.componentType=n,o}function Z1(e,t,r,n){let o=new H1;return o.typeName=e+t,J1(r)&&X1(r,o),o.superclass=n,o}function iB(e){let t=jo[e.seedId];return e=null,t}function J1(e){return typeof e==\\\"number\\\"&&e>0}function X1(e,t){let r;if(t.seedId=e,e===2)r=String.prototype;else if(e>0){let n=iB(t);if(n)r=n.prototype;else{n=jo[e]=function(){},n.___clazz$=t;return}}else return;r.___clazz$=t}function sB(e,t){if(dB(e,t))return!0}function aB(e){e.array=Aa(eg,yr([Fa,ha]),Xu,0,0)}function fB(e,t){return Bi(e.array,e.size++,t),!0}function uB(e){e.array=Aa(eg,yr([Fa,ha]),Xu,0,0),e.size=0}function xr(e,t){return e.array[t]}function gB(e,t){let r=e.array[t];return mB(e.array,t,1),--e.size,r}function oo(e,t,r){let n=e.array[t];return Bi(e.array,t,r),n}function cB(e,t){let r;for(t.length<e.size&&(t=RL(t,e.size)),r=0;r<e.size;++r)Bi(t,r,e.array[r]);return t.length>e.size&&Bi(t,e.size,null),t}function pB(){aB(this),this.array.length=500}function mB(e,t,r){e.splice(t,r)}function LB(e,t){let r,n,o,l;for(n=0,r=e.length-1;n<=r;)if(o=n+(~~(r-n)>>1),l=e[o],l<t)n=o+1;else if(l>t)r=o-1;else return o;return-n-1}function Oi(e){BB(e,e.length)}function BB(e,t){let r;for(r=0;r<t;++r)e[r]=-1}function RB(e,t){let r,n,o,l,i=e.heap.size,s=xr(e.heap,t);for(;t*2+1<i&&(r=(n=2*t+1,o=n+1,l=n,o<i&&Pi(xr(e.heap,o),xr(e.heap,n))<0&&(l=o),l),!(Pi(s,xr(e.heap,r))<0));)oo(e.heap,t,xr(e.heap,r)),t=r;oo(e.heap,t,s)}function dB(e,t){let r,n;for(n=e.heap.size,fB(e.heap,t);n>0;){if(r=n,n=~~((n-1)/2),Pi(xr(e.heap,n),t)<=0)return oo(e.heap,r,t),!0;oo(e.heap,r,xr(e.heap,n))}return oo(e.heap,n,t),!0}function DB(e){if(e.heap.size===0)return null;let t=xr(e.heap,0);return FB(e),t}function FB(e){let t=gB(e.heap,e.heap.size-1);0<e.heap.size&&(oo(e.heap,0,t),RB(e,0))}function hB(e,t){return cB(e.heap,t)}function $1(e){this.heap=new pB,this.cmp=e}function ng(){rg||(rg=!0,eB(),lB(),AL(),vL(),kL(),IL(),NL(),qL(),ZL(),tg=new Q1)}function UB(){ng(),j1()}async function bB(){Qe(),ng();let e=z.fromString(oB(tg,await je()));return(await Qn()).concat(e)}var Y,jo,uL,Xu,Fa,$u,gL,cL,e1,pL,mL,LL,ha,o1,ya,Ua,i1,xt,hi,xa,jn,Ai,qn,wt,Vn,f1,bi,rt,p1,m1,Si,L1,B1,Ho,d1,Ur,ka,za,F1,Rt,b1,Pa,Ei,vt,Ma,Na,Ta,eo,ki,k1,zi,z1,C1,Oa,G1,ro,Mi,Ni,Xr,Ia,Xo,Wa,$o,no,O1,I1,q1,V1,Ka,eg,AB,yB,tg,rg,lg=U(()=>{Re();da();Ju();Nt();Mt();jo={},uL={},Xu=0,Fa=30,$u=21,gL=22,cL=23,e1=24,pL=25,mL=34,LL=26,ha=40;ct(1,-1,uL);Y.value=null;ct(73,1,{},t1);Y.queryId$=0;o1=!1;i1=!1;ct(153,1,yr([$u]),qo,Fi,Vo);jn=null,f1=!1;ct(154,1,{},wa);Y.parity=0;B1=!1;ct(155,1,{},Ea);Y.parity=0;ct(156,1,{},_a,D1);F1=!1;ct(157,1,yr([gL]),xi,br,U1);Y.temps=null;b1=!1;ct(158,1,yr([cL]),tr);Y.isStd=!0;Y.temp=null;Ei=0,z1=!1;ct(159,1,{},Ga,_1);C1=!1;ct(160,1,yr([e1,mL]),_i,Ci,N1);Y.compareTo$=function(t){return JL(this,t)};Y.add1=!1;Y.center=null;Y.centerAvail=0;Y.corner=null;Y.cornerAvail=0;Y.edge=null;Y.edgeAvail=0;Y.length1=0;Y.length2=0;Y.length3=0;Y.moveLength=0;Y.sym=0;Y.value=0;ct(161,1,{},T1);Y.compare=function(t,r){return Pi(t,r)};G1=!1;ct(163,1,yr([LL]),Q1);Y.add1=!1;Y.arr2idx=0;Y.c=null;Y.length1=0;Y.length2=0;Y.p1SolsCnt=0;Y.solution=\\\"\\\";q1=!1,V1=!1;Y.val$outerIter=null;Y.size=0;ct(239,1,{},$1);Y.cmp=null;Y.heap=null;Ka=Z1(\\\"java.lang.\\\",\\\"Object\\\",1,null),eg=Y1(\\\"[Ljava.lang.\\\",\\\"Object;\\\",356,Ka),AB=Z1(\\\"cs.threephase.\\\",\\\"FullCube\\\",160,Ka),yB=Y1(\\\"[Lcs.threephase.\\\",\\\"FullCube;\\\",381,AB),rg=!1});var Ig={};ye(Ig,{randomFTOScrambleString:()=>bR});function el(e){if(e<2)return e;let t=1;for(let r=2;r<=e;r++)t*=r;return t}function Ii(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 gg(e,t,r,n,o=e-t-r-n){return Ii(e,t+r)*Ii(t+r,t)*Ii(n+o,n)}function zB(e){e=e.slice();let t=e.length,r=el(t-1),n=0;for(;t>1;){t--;let o=e[0];n+=o*r;for(let l=0;l<t;l++){let i=e[l+1];e[l]=i-(i>o)}r/=t}return n}function _B(e){let t=e.length,r=0;for(let n=0;n<t-1;n++)for(let o=n;o<t;o++)e[n]>e[o]&&(r^=1);return r}function ja(e,t){let r=[],n=el(t-1)/2,o=0;for(let l=0;l<t-1;l++)r[l]=e/n|0,e%=n,n/=t-1-l;r[t-1]=0;for(let l=t-2;l>=0;l--)for(let i=l+1;i<t;i++)r[i]>=r[l]?r[i]++:o^=1;return o===1&&([r[t-2],r[t-1]]=[r[t-1],r[t-2]]),r}function $r(e){return zB(e)>>1}function qa(e,t){let r=[0];for(let n=1;n<e;n++){let o=t(n+1);r[n]=r[o],r[o]=n}return r}function cg(e,t){let r=qa(e,t);return _B(r)===1&&([r[0],r[1]]=[r[1],r[0]]),r}function CB(e){return e|=0,31-Math.clz32(e^e-1)}function pg(e,t){e|=0,t|=0;let r=e+\\\" \\\"+t;if(Va[r])return Va[r];let n=Ii(e,t),o=new Uint32Array(n),l=new Uint32Array(1<<e).fill(-1);for(let i=0,s=(1<<t)-1;i<n;i++){o[i]=s,l[s]=i;let f=s|s-1;s=f+1|(~f&-~f)-1>>CB(s)+1}return Va[r]=[o,l]}function PB(e){e|=0;let t=0;for(;e!==0;)e&=e-1,t++;return t}function mg(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 MB(e,t){return mg(e)|mg(t)<<1}function lo(e,t,r,n,o){if(e|=0,t|=0,r|=0,n|=0,o|=0,e!==t+r+n+o)throw\\\"generate_comb4_lookup_tables: invalid parameters\\\";let l=[e,t,r,n,o].join(\\\" \\\");if(Ha[l])return Ha[l];let[i,s]=pg(e,r+o),[f,a]=pg(e,n+o),g=gg(e,t,r,n,o),c=new Uint32Array(g),u=new Uint32Array(4**e).fill(-1);for(let p=0,m=0;p<f.length;p++){let L=f[p];for(let R=0;R<i.length;R++){let D=i[R];if(PB(D&L)===o){let A=MB(D,L);c[m]=A,u[A]=m,m++}}}return Ha[l]=[c,u]}function Ze(e,t){let r=[];for(let n=0;n<t.length;n++)r[n]=e[t[n]];return r}function io(e,t,r){let n=[];for(let o=0;o<r.length;o++)n[o]=e[t[r[o]]];return n}function Ya(e,t){let r=[];for(let n=0;n<t;n++)r[n]=n;for(let n of e)for(let o=0;o<n.length;o++)r[n[o]]=n[(o+1)%n.length];return r}function en(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 o=n[r-1]+t[r-1],l=Array(o);for(let i=0;i<r;i++)t[i]&&(l[n[i]]=n[e[i]]);return l}function Za(e){let t=e.length,r=Array(t);for(let n=0;n<t;n++)r[e[n]]=n;return r}function NB(e,t){for(;e&&t;)[e,t]=[t%e,e];return Math.abs(e+t)}function TB(e,t){return e*t/NB(e,t)}function GB(e){let t=1,r=e.length,n=Array(r).fill(!1),o=-1;for(;o=n.indexOf(!1,o+1),o!==-1;){let l=0,i=o;for(;!n[i];)n[i]=!0,i=e[i],l++;t=TB(t,l)}return t}function VB(e,t){for(let r=0;r<6;r++){if(e===Et[wr[r][0]]&&t===Et[wr[r][2]])return[r,0];if(e===Et[wr[r][2]]&&t===Et[wr[r][0]])return[r,1]}throw\\\"unknown corner piece\\\"}function HB(e,t){for(let r=0;r<12;r++)if(e===Et[vr[r][0]]&&t===Et[vr[r][1]]||t===Et[vr[r][0]]&&e===Et[vr[r][1]])return r;throw\\\"unknown edge piece\\\"}function Ja(e,t){return VB(e[wr[t][0]],e[wr[t][2]])}function Qi(e,t){return HB(e[vr[t][0]],e[vr[t][1]])}function YB(e,t,r,n){let o=wr[t],l=wr[r].map(i=>Et[i]);n%2!=0&&(l=[l[2],l[3],l[0],l[1]]);for(let i=0;i<4;i++)e[o[i]]=l[i]}function ZB(e,t,r){let n=vr[t],o=vr[r].map(l=>Et[l]);for(let l=0;l<2;l++)e[n[l]]=o[l]}function Rg(e){let t=e.map(f=>Et[f]),n=Array(6).fill().map((f,a)=>Ja(t,a)).map(([f,a])=>f+6*a),o=n.concat(n.map(f=>(f+6)%12)),l=Array(12).fill().map((f,a)=>Qi(t,a)),i=Array(12).fill().map((f,a)=>tn.indexOf(e[tn[a]])),s=Array(12).fill().map((f,a)=>so.indexOf(e[so[a]]));return{cp:o,ep:l,ap:i,bp:s}}function XB(e){let t=Array(72),r=cg(5,e);r.push(5);let n=Array(4).fill().map(s=>e(2));n.push(n.reduce((s,f)=>s^f)),n.push(0);for(let s=0;s<6;s++)YB(t,s,r[s],n[s]);let o=cg(12,e);for(let s=0;s<12;s++)ZB(t,s,o[s]);let l=qa(12,e).map(s=>s/3|0),i=qa(12,e).map(s=>4+(s/3|0));for(let s=0;s<12;s++)t[tn[s]]=l[s],t[so[s]]=i[s];return t}function Dg(e,t=!1){if(t){let l=0,i=1,s=2,f=3,a=4,g=5,c=6,u=7;e=e.map(L=>L.slice());let p=[l,i,s,f,a,g,c,u],m=[[l,f,g,c,a,u,i,s],[u,i,l,c,f,g,a,s],[u,a,s,i,f,l,c,g],[s,a,g,f,c,l,i,u]];m=m.concat(m.map(L=>Za(L)));for(let L=0;L<e.length;L++)if(e[L][0]<4)e[L][0]=p[e[L][0]];else{let R=p[e[L][0]],D=e[L][1];e[L][0]=R,p=Ze(D===1?m[R^4]:m[R],p)}}let r=t?\\\"U L F R D BR B BL\\\".split(\\\" \\\"):JB,n=[\\\"0\\\",\\\"\\\",\\\"'\\\"];return e.map(([l,i])=>r[l]+n[i]).join(\\\" \\\")}function Er(e,t){for(let[r,n]of t)for(let o=0;o<n;o++)e=Ze(e,dg[r]);return e}function Fg(e){return e.map(([t,r])=>[t,(3-r)%3]).reverse()}function ji(e,t=!1){if(e.length===0)return[];let r=[],n;for(let[o,l]of e)n&&n[0]===o?(n[1]+=l,n[1]%=3,n[1]===0&&(r.pop(),n=r.length===0?void 0:r[r.length-1])):r.length>=2&&(n[0]^o)==4&&r[r.length-2][0]===o?(r[r.length-2][1]+=l,r[r.length-2][1]%=3,r[r.length-2][1]===0&&r.splice(r.length-2,1)):(n=[o,l],r.push(n));return t&&\\\"\\\"+e!=\\\"\\\"+r&&console.log(`simplified ${e} to ${r}`),r}function $B(e){return Dg(Fg(rR(XB(e),!0)),!0)}function ao(e,t,r,n,o,l){let i=gg(e,t,r,n,o),s=l.length,[f,a]=lo(e,t,r,n,o),g=Array(s).fill().map(()=>new Uint32Array(i));for(let c=0;c<i;c++){let u=f[c],p=Array(e);for(let m=0;m<e;m++)p[m]=u>>2*m&3;for(let m=0;m<s;m++){let R=Ze(p,l[m]).reduce((D,A,y)=>D|A<<2*y,0);g[m][c]=a[R]}}return g}function hg(e){let t=e[0].length,r=e.length,n=Array(r).fill().map(()=>new Uint32Array(t));for(let o=0;o<t;o++)for(let l=0;l<r;l++)n[l][e[l][o]]=o;return n}function nn(e,t){let r=e[0].length,n=t[0].length,o=e.length,l=Array(o).fill().map(()=>new Uint32Array(r*n));for(let i=0;i<n;i++)for(let s=0;s<r;s++){let f=s+r*i;for(let a=0;a<o;a++)l[a][f]=e[a][s]+r*t[a][i]}return l}function eR(e,t){let r=e.length,n=e[0].length,o=new Uint8Array(n);o[t]=1;let l=!1;for(;!l;){l=!0;for(let s=0;s<n;s++)if(!!o[s])for(let f=0;f<r;f++)o[e[f][s]]||(o[e[f][s]]=1,l=!1)}let i=new Int32Array(n).fill(-1);for(let s=0,f=0;s<n;s++)!o[s]||(i[s]=f,f++);return[e.map(s=>en(s,o)),i]}function tR(e,t){let r=e.length,n=e[0].length,o=new Int32Array(n).fill(-1);t.forEach(f=>{o[f]=0});let l=[t];for(let f=0;f<l.length;f++){let a=l[f];for(let g=0;g<r;g++){let c=e[g][a[0]];if(o[c]!==-1)continue;let u=a.map(m=>e[g][m]),p=l.length;l.push(u);for(let m of u){if(o[m]!==-1)throw\\\"quotienting failed\\\";o[m]=p}}}let i=l.length,s=Array(r).fill().map(()=>new Int32Array(i));for(let f=0;f<r;f++)for(let a=0;a<i;a++)s[f][a]=o[e[f][l[a][0]]];return[s,o]}function Ag(e,t,r){let n=e[0].length,o=e.length,l=new Int32Array(n).fill(-1);l[t]=r,l[r]=t;let i=!1;for(;!i;){i=!0;for(let s=0;s<n;s++){if(l[s]===-1)continue;let f=l[s];for(let a=0;a<o;a++){let g=a^1,c=e[a][s],u=e[g][e[g][f]];if(l[c]===-1)i=!1,l[c]=u,l[u]=c;else if(l[c]!==u)throw\\\"mirroring failed - is the initial map correct?\\\"}}}return l}function yg(e,t){let r=e[0].length,n=e.length,o=new Int8Array(r).fill(-1);for(let s of t)o[s]=0;let l=0,i=!1;for(;!i;){i=!0;for(let s=0;s<r;s++)if(o[s]===l)for(let f=0;f<n;f++){let a=e[f][s];for(;a!==s;)o[a]===-1&&(i=!1,o[a]=l+1),a=e[f][a]}l++}return o}function rR(e,t=!1){let r=sR(e).next().value,n=Er(e,r),o=(t?yR:AR)(n),l=ji(r.concat(o),!1);return Er(e,l).join(\\\"\\\")!==tl.join(\\\"\\\")&&(console.log(\\\"solving failed!\\\"),console.log(e),console.log(r),console.log(n),console.log(o),console.log(Er(e,l))),l}function oR(e){let[t,r]=lo(12,6,0,3,3),n=Array(12).fill().map((s,f)=>Qi(e,f)),o=n.indexOf(8)+12*n.indexOf(9)+12**2*n.indexOf(10)+12**3*n.indexOf(11),[l,i]=[tn,so].map(s=>{let f=s.map(a=>nR[e[a]]);return r[f.reduce((a,g,c)=>a|g<<2*c,0)]});return[o,l,i]}function Ug(){if(W.phase1_edge)return W.phase1_edge;let e=hg(rn.map(n=>n.ep)),t=nn(e,e),r=nn(t,t);return W.phase1_edge=r}function lR(){return nr.phase1_edge?nr.phase1_edge:nr.phase1_edge=yg(Ug(),[8+12*9+12**2*10+12**3*11])}function iR(){return W.phase1_centreA?W.phase1_centreA:W.phase1_centreA=ao(12,6,0,3,3,rn.map(e=>e.ap))}function bg(){return W.phase1_centreB?W.phase1_centreB:W.phase1_centreB=ao(12,6,0,3,3,rn.map(e=>e.bp))}function Sg(){if(nr.phase1_centre)return nr.phase1_centre;let[e,t]=lo(12,6,0,3,3),r=e.filter(n=>{let o=n>>12&3,l=n>>18&3;return o===2&&l===3}).map(n=>t[n]);return nr.phase1_centre=yg(bg(),r)}function*sR(e){let t=[Ug(),iR(),bg()],r=[lR(),Sg(),Sg()];yield*aR(oR(e),t,r,15)}function*aR(e,t,r,n){let o=e.length,l=0;for(let i=0;i<o;i++)l=Math.max(l,r[i][e[i]]);for(;l<=n;)yield*xg(e,t,r,l,-1),l++}function*xg(e,t,r,n,o){let l=3,i=8,s=Math.max(r[0][e[0]],r[1][e[1]],r[2][e[2]]);if(!(s>n)){if(n===0){yield[];return}if(!(s===0&&n===1))for(let f=0;f<i;f++){if(f===o||f===o-4)continue;let a=[];a[0]=t[0][f][e[0]],a[1]=t[1][f][e[1]],a[2]=t[2][f][e[2]];let g=1;for(;e.some((c,u)=>e[u]!=a[u]);){let c=xg(a,t,r,n-1,f);for(;;){let{value:u,done:p}=c.next();if(p)break;yield[[f,g]].concat(u)}a[0]=t[0][f][a[0]],a[1]=t[1][f][a[1]],a[2]=t[2][f][a[2]],g++}}}}function Xa(e){let[t,r]=lo(10,5,3,2,0),n=Array(8).fill().map((u,p)=>Qi(e,p)),o=n.indexOf(5)+8*n.indexOf(6)+8**2*n.indexOf(7),l=Array(5).fill().map((u,p)=>Ja(e,p)),i=Za(l.map(([u,p])=>u+5*p).concat(l.map(([u,p])=>u+5*(p^1)))),s=i.slice(0,5).map(u=>u%5),f=i.slice(0,5).map(u=>u/5|0),a=$r(s)*8+(f[0]^f[2])+2*(f[0]^f[3])+4*f[4],[g,c]=[tn,so].map(u=>{let p=Ze(u,uR).map(m=>fR[e[m]]);return r[p.reduce((m,L,R)=>m|L<<2*R,0)]});return kg(),Cg(),[g,c,_g[a]+40*Eg[o]]}function*qi(e){yield*LR(Xa(e),30)}function vg(){if(W.phase2_centre)return W.phase2_centre;let e=ao(10,5,3,2,0,rn.slice(0,4).map(r=>en(r.ap,wg))),t=ao(10,5,3,2,0,rn.slice(0,4).map(r=>en(r.bp,wg)));return W.phase2_centre=[e,t]}function kg(){if(W.phase2_edge)return W.phase2_edge;let e=hg(rn.slice(0,4).map(n=>n.ep.slice(0,8))),t=nn(e,nn(e,e)),r;return[r,Eg]=eR(t,501),W.phase2_edge=r}function zg(){if(W.phase2_corner)return W.phase2_corner;let t=el(5)/2*8,r=[!0,!0,!0,!0,!0,!1,!0,!0,!0,!0,!0,!1],n=Array(4).fill().map(()=>new Uint32Array(t)),o=rn.slice(0,4).map(l=>Za(en(l.cp,r)));for(let l=0;l<t;l++){let i=ja(l>>3,5),s=[0,0,l&1,l>>1&1,l>>2&1];s[1]=s[2]^s[3]^s[4];let f=Array(10);for(let a=0;a<5;a++)f[a]=i[a]+5*s[a],f[a+5]=i[a]+5*(s[a]^1);for(let a=0;a<4;a++){let g=Ze(o[a],f),c=g.slice(0,5).map(m=>m%5),u=g.slice(0,5).map(m=>m/5|0),p=(u[0]^u[2])+2*(u[0]^u[3])+4*u[4];n[a][l]=$r(c)*8+p}}return W.phase2_corner=n}function Cg(){return W.phase2_corner_compact||([W.phase2_corner_compact,_g]=tR(zg(),pR())),W.phase2_corner_compact}function $a(){if(W.phase2_ce)return W.phase2_ce;let e=Cg(),t=kg();return W.phase2_ce=nn(e,t)}function gR(){if(e2)return e2;let e=Xa(tl)[2];return e2=Ag($a(),e,e)}function cR(){let[e,t]=lo(10,5,3,2,0);return e.filter(r=>(r>>10&63)==41).map(r=>t[r])}function pR(){let e=zg(),t=e[0].length,r=Array(t).fill(!1);r[0]=!0;let n=!1;for(;!n;){n=!0;for(let o=0;o<t;o++)r[o]&&(r[e[0][o]]||(n=!1,r[e[0][o]]=!0),r[e[1][o]]||(n=!1,r[e[1][o]]=!0))}return r.map((o,l)=>l).filter(o=>r[o])}function mR(){if(nr.phase2_ace)return nr.phase2_ace;let[e,t]=vg(),r=$a(),n=2520,o=40*336,l=n*o,i=Xa(tl)[2],s=9,f=new Int8Array(l).fill(s);for(let a of cR())f[a+n*i]=0;for(let a=0;a<s-1;a++)for(let g=f.indexOf(a);g!==-1;g=f.indexOf(a,g+1)){let c=g%n,u=g/n|0;for(let p=0;p<4;p++){let m=e[p][c],L=r[p][u],R=m+n*L;f[R]===s&&(f[R]=a+1),m=e[p][m],L=r[p][L],R=m+n*L,f[R]===s&&(f[R]=a+1)}}return nr.phase2_ace=f}function*LR(e,t){let[r,n]=vg(),o=$a(),l=mR(),i=gR(),[s,f,a]=e,g=i[a],c=Math.max(l[s+2520*a],l[f+2520*g]);for(;c<=t;)yield*Pg(s,f,a,r,n,o,l,i,c,-1),c++}function*Pg(e,t,r,n,o,l,i,s,f,a){let g=Math.max(i[e+2520*r],i[t+2520*s[r]]);if(!(g>f)){if(f===0){yield[];return}else if(g===0)return;for(let c=0;c<4;c++){if(c===a)continue;let u=e,p=t,m=r;for(let L=1;L<=2;L++){u=n[c][u],p=o[c][p],m=l[c][m];let R=Pg(u,p,m,n,o,l,i,s,f-1,c);for(;;){let{value:D,done:A}=R.next();if(A)break;yield[[c,L]].concat(D)}}}}}function Hi(e){let[t,r]=lo(7,3,2,0,2),n=Array(5).fill().map((a,g)=>Qi(e,g)),o=$r(n),l=Array(4).fill().map((a,g)=>Ja(e,g)),i=$r(l.map(a=>a[0]))*2+l.find(a=>a[0]===0)[1],[s,f]=[tn,so].map(a=>{let g=Ze(a,BR).map(c=>e[c]%4);return r[g.reduce((c,u,p)=>c|u<<2*p,0)]});return[s+210*f,i+24*o]}function dR(){if(W.phase3_2gen_edge)return W.phase3_2gen_edge;let e=el(5)/2,t=Array(fo).fill().map(()=>new Uint32Array(e)),r=Vi.map(n=>n.ep.slice(0,5));for(let n=0;n<e;n++){let o=ja(n,5);for(let l=0;l<fo;l++)t[l][n]=$r(Ze(o,r[l]))}return W.phase3_2gen_edge=t}function DR(){if(W.phase3_2gen_corner)return W.phase3_2gen_corner;let t=el(4)/2*2,r=[!0,!0,!0,!0,!1,!1,!0,!0,!0,!0,!1,!1],n=Array(fo).fill().map(()=>new Uint32Array(t)),o=Vi.map(l=>en(l.cp,r).slice(0,4));for(let l=0;l<t;l+=2){let i=ja(l>>1,4),s=i.concat(i.map(f=>f+4));for(let f=0;f<fo;f++){let a=Ze(s,o[f]),g=a.map(u=>u%4),c=a.find(u=>u%4==0)>>2;n[f][l]=$r(g)*2+c,n[f][l+1]=$r(g)*2+(c^1)}}return W.phase3_2gen_corner=n}function Yi(){return W.phase3_2gen_corneredge?W.phase3_2gen_corneredge:W.phase3_2gen_corneredge=nn(DR(),dR())}function t2(){if(W.phase3_2gen_centre)return W.phase3_2gen_centre;let e=ao(7,3,2,0,2,Vi.map(r=>en(r.ap,Mg))),t=ao(7,3,2,0,2,Vi.map(r=>en(r.bp,Mg)));return W.phase3_2gen_centreA=e,W.phase3_2gen_centreB=t,W.phase3_2gen_centre=nn(e,t)}function Tg(){if(r2)return r2;let e=t2(),t=W.phase3_2gen_centreA,r=Yi(),n=t[0].length,o=r[0].length,l=n*o,i=25,s=or.map(u=>u.length),f=new Int8Array(l).fill(i),a=Hi(tl);f[a[0]%n+n*a[1]]=0;let g=0,c=!1;for(;!c&&g<i-1;){c=!0;let u=Array(fo).fill().map((D,A)=>A).filter(D=>s[D]+g<i);u.sort((D,A)=>s[D]-s[A]);let p=Ze(s,u),m=Ze(t,u),L=Ze(r,u),R=u.length;for(let D=f.indexOf(g);D!==-1;D=f.indexOf(g,D+1)){let A=D%n,y=D/n|0;for(let k=0;k<R;k++){let E=p[k],Q=m[k][A],$=L[k][y],N=Q+n*$;f[N]>g+E&&(c=!1,f[N]=g+E)}}g++}return r2=f}function Gg(){if(n2)return n2;let e=Yi().slice(0,2),t=Hi(tl);return n2=Ag(e,t[1],t[1])}function o2(e,t=Hi(e)){let[r,n]=t,o=r%210,l=Math.floor(r/210),i=t2(),s=W.phase3_2gen_centreA,f=W.phase3_2gen_centreB,a=Yi(),g=Tg(),c=Gg(),u=0;for(;;){let p=i2(o,l,n,s,f,a,g,c,u);for(let m of p)return m.map(L=>or[L]).flat();u++}}function Og(e,t=Hi(e)){let[r,n]=t,o=r%210,l=Math.floor(r/210),i=t2(),s=W.phase3_2gen_centreA,f=W.phase3_2gen_centreB,a=Yi(),g=Tg(),c=Gg(),u=o2(e).length,p=1/0,m;for(let L=u;L<=u+0;L++){let R=i2(o,l,n,s,f,a,g,c,L);for(let D of R){let A=D.map(E=>or[E]).flat(),y=ji(A),k=l2(y);k<p&&(p=k,m=y)}}return m}function FR(e){return(e-1)*(e-2)/2}function l2(e){let t=Dg(e,!0).replace(/'/g,\\\"\\\").split(\\\" \\\");return e.length+hR(t).map(FR).reduce((r,n)=>r+n,0)}function hR(e){if(e.length<3)return[];let t=e.length,r=[];for(let l=0;l<t-2;l++)r[l]=e[l]===e[l+2];r.push(!1);let n=-1,o=[];for(;n<t-2&&(n=r.indexOf(!0,n+1),n!==-1);){let l=r.indexOf(!1,n+1);o.push(l-n),n=l}return o}function*i2(e,t,r,n,o,l,i,s,f,a=-1){let g=i[e+210*r],c=i[t+210*s[r]],u=Math.max(g,c);if(!(u>f)){if(f===0){yield[];return}if(u!==0)for(let p=0;p<fo;p++){if(p===a&&RR[p]<=3)continue;let m=n[p][e],L=o[p][t],R=l[p][r],D=f-or[p].length;if(D<0)continue;let A=i2(m,L,R,n,o,l,i,s,D,p);for(;;){let{value:y,done:k}=A.next();if(k)break;yield[p].concat(y)}}}}function AR(e,t=200,r=24){let n=[],o=qi(e),l=Ze(e,It).map(f=>f^1),i=qi(l),s=Array(1e3);for(let f=0;f<t;f++){{let{value:a,done:g}=o.next();if(!g){let c=Er(e,a),u=a.concat(o2(c));if(u.length<=r)return u;u.length<s.length&&(s=u)}}{let{value:a,done:g}=i.next();if(!g){let c=Er(l,a),u=a.concat(o2(c)).map(([p,m])=>[p^2,m]);if(u.length<=r)return u;u.length<s.length&&(s=u)}}}return s}function yR(e,t=20,r=30){let n=[],o=qi(e),l=Ze(e,It).map(a=>a^1),i=qi(l),s,f=1/0;for(let a=0;a<t;a++){{let{value:g,done:c}=o.next();if(!c){let u=Er(e,g),p=ji(g.concat(Og(u))),m=l2(p);if(m<=r)return p;m<f&&(s=p,f=m)}}{let{value:g,done:c}=i.next();if(!c){let u=Er(l,g),p=ji(g.concat(Og(u)));p=p.map(([L,R])=>[L^2,R]);let m=l2(p);if(m<=r)return p;m<f&&(s=p,f=m)}}}return s}async function bR(){return $B(await UR)}var n7,o7,Va,Ha,tl,rl,OB,It,l7,Wi,Lg,IB,WB,KB,Ki,QB,Bg,jB,qB,Et,wr,vr,tn,so,dg,JB,rn,W,nr,nR,fR,uR,wg,Eg,_g,e2,BR,Mg,or,fo,Ng,Vi,RR,r2,n2,UR,Wg=U(()=>{Nt();[n7,o7]=(()=>{let e=new Int8Array(256*8),t=new Int8Array(256*8);for(let o=0;o<256;o++)for(let l=0,i=0;l<8;l++)(o>>>l&1)!=0&&(e[l<<8|o]=i,t[i<<8|o]=l,i++);function r(o){let l=255,i=2520,s=0;for(let f=0;f<6;f++){let a=o[f];s+=e[l|a<<8]*i,l&=~(1<<a),i/=7-f}return s}function n(o,l){let i=255,s=2520,f=0;for(let a=0;a<6;a++){let g=o/s|0;o-=g*s,f^=g&1;let c=t[i|g<<8];l[a]=c,i&=~(1<<c),s/=7-a}return l[6]=t[i|f<<8],l[7]=t[i|(f^1)<<8],l}return[r,n]})();Va={};Ha={};tl=Array(72).fill().map((e,t)=>t/9|0),rl=Ya([[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),OB=Ze(rl,rl),It=Array(72).fill().map((e,t)=>(t/18|0)*18+(t+9)%18),l7=Array(72).fill().map((e,t)=>(t/36|0)*36+(t+18)%36),Wi=Array(72).fill().map((e,t)=>(t+36)%72),Lg=io(Wi,OB,Wi),IB=io(It,rl,It),WB=io(It,Lg,It),KB=Ya([[10,24,30],[11,23,34],[12,19,33],[42,48,64],[41,52,65],[37,51,66]],72),Ki=Ze(rl,KB),QB=Ze(Ki,Ki),Bg=io(Wi,QB,Wi),jB=io(It,Ki,It),qB=io(It,Bg,It),Et=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]],vr=[[1,46],[3,39],[6,69],[10,37],[33,42],[12,48],[15,60],[24,51],[19,64],[28,55],[30,66],[21,57]],tn=Array(12).fill().map((e,t)=>(t/3|0)*9+[2,5,7][t%3]),so=tn.map(e=>e+36);dg=[rl,Lg,IB,WB,Ki,Bg,jB,qB],JB=[\\\"U\\\",\\\"L\\\",\\\"F\\\",\\\"R\\\",\\\"u\\\",\\\"l\\\",\\\"f\\\",\\\"r\\\"],rn=dg.map(Rg);W={},nr={},nR=[0,0,2,3,0,0,2,3];fR=[0,1,2,0,0,1,2,0],uR=[0,1,2,3,4,5,7,8,10,11],wg=[!0,!0,!0,!0,!0,!0,!1,!0,!0,!1,!0,!0];BR=[0,1,2,3,4,10,11],Mg=[!0,!0,!0,!0,!0,!1,!1,!1,!1,!1,!0,!0],or=[[[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]]];or=or.concat(or.map(e=>Fg(e)));fo=or.length,Ng=or.map(e=>Er(Ya([],72),e)),Vi=Ng.map(Rg),RR=Ng.map(GB);UR=je()});var Kg={};ye(Kg,{randomFTOScrambleString:()=>SR,sgsDataFTO:()=>wR});async function SR(){let{randomFTOScrambleString:e}=await Promise.resolve().then(()=>(Wg(),Ig));return e()}async function wR(){return xR??(xR=vR())}async function vR(){return Gt(await ke.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 xR,Qg=U(()=>{Ht();kn();xR=null});var nc={};ye(nc,{randomMasterTetraminxScrambleString:()=>nd});function nl(e){if(e<2)return e;let t=1;for(let r=2;r<=e;r++)t*=r;return t}function on(e){let t=Array(e);for(let r=0;r<e;r++)t[r]=r;return t}function ER(e){e=e.slice();let t=e.length,r=nl(t-1),n=0;for(;t>1;){t--;let o=e[0];n+=o*r;for(let l=0;l<t;l++){let i=e[l+1];e[l]=i-(i>o)}r/=t}return n}function Zi(e,t){let r=[],n=nl(t-1)/2,o=0;for(let l=0;l<t-1;l++)r[l]=e/n|0,e%=n,n/=t-1-l;r[t-1]=0;for(let l=t-2;l>=0;l--)for(let i=l+1;i<t;i++)r[i]>=r[l]?r[i]++:o^=1;return o===1&&([r[t-2],r[t-1]]=[r[t-1],r[t-2]]),r}function qg(e){return ER(e)>>1}function ln(e,t){let r=[];for(let n=0;n<t.length;n++)r[n]=e[t[n]];return r}function s2(e){let t=[];for(let r=0;r<e.length;r++)t[e[r]]=r;return t}function ol(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 kr(e,t){return e.length===0?on(t):e.map(r=>ol(r,t)).reduce(ln)}function kR(e,t){let r=Array(4);for(let i=0;i<4;i++)r[i]=(e.co[i]+t.co[i])%3;let n=ln(e.mp,t.mp),o=ln(e.wp,t.wp),l=ln(e.cp,t.cp);return{co:r,mp:n,wp:o,cp:l}}function Vg(e,t){return e>=4&&t>=4?!0:e<4&&t<4?e===t:(e^t)==4}function IR(e){let t=[\\\"0\\\",\\\"\\\",\\\"'\\\"];return e.map(([n,o])=>OR[n]+t[o]).join(\\\" \\\")}function WR(e){let t=Array(4);for(let l=0;l<4;l++)t[l]=e(3);let r=Zi(e(nl(6)/2),6);for(let l=0,i=0;l<6;l++){let s=l===5?i:e(2);i^=s,r[l]+=s*6,r[l+6]=(r[l]+6)%12}let n=Zi(e(nl(12)/2),12),o=Zi(e(nl(4)/2),4);return{co:t,mp:r,wp:n,cp:o}}function KR(e){return jR(WR(e))}function QR(e,t=!0,r=!1){let n=IR(KR(e));if(!t)return n;let o=[\\\"u\\\",\\\"l\\\",\\\"r\\\",\\\"b\\\"],l=[\\\"0\\\",\\\"\\\",\\\"'\\\"];if(!r){for(let u=0;u<4;u++){let p=e(3);p!==0&&(n+=\\\" \\\"+o[u]+l[p])}return n.trim()}let i=[],s=[],f=[];for(let u=0;u<4;u++)i[u]=e(3),s[u]=e(3),f[u]=(i[u]-s[u]+3)%3;let a=u=>u.filter(p=>p!==0).length;for(;!(a(s)>=1&&a(f)>=1&&a(s)+a(f)>=4);)for(let u=0;u<4;u++)s[u]=e(3),f[u]=(i[u]-s[u]+3)%3;let g=s.map((u,p)=>u!==0?o[p]+l[u]+\\\" \\\":\\\"\\\").join(\\\"\\\"),c=f.map((u,p)=>u!==0?\\\" \\\"+o[p]+l[u]:\\\"\\\").join(\\\"\\\");return g+n+c}function jR(e){let t=VR(e),r=[$g(),ec()],n=[$R(),ed()],o=ZR(t),l,i=new Set,s=performance.now();for(let f=0;f<22;f++){let{value:a,done:g}=o.next(),c=e;for(let[R,D]of a)for(let A=0;A<D;A++)c=kR(c,uo[R]);let u=JSON.stringify(c);if(i.has(u))continue;i.add(u);let p=JR(c),m=l?l.length-a.length-1:999999,L=td(p,r,n,m).next().value;if(L!==void 0&&((l===void 0||l.length>a.length+L.length)&&(l=a.concat(L)),performance.now()-s>300))break}return l}function qR(e){return e[3^e.indexOf(3)]}function VR(e){let t=ln(s2(e.mp),e.wp),r=(e.co.reduce((n,o)=>n+o)-qR(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*ZR(e){let t=0,r=Xg(),n=XR();for(;;)yield*Zg(...e,r,n,t,-1),t++}function*Zg(e,t,r,n,o,l,i,s,f,a){let g=sn,c=lr[e]+lr[t]+lr[r]+lr[n]+lr[o]+lr[l],u=Math.max(s[e%864+t*864],s[r%864+t*864],s[o%864+t*864],s[e%864+n*864],s[r%864+n*864],s[o%864+n*864],s[e%864+l*864],s[r%864+l*864],s[o%864+l*864],s[e%864+r*864],s[e%864+o*864],s[r%864+o*864],s[t%864+n*864],s[t%864+l*864],s[n%864+l*864],u2[c]);if(!(u>f)){if(f===0){yield[];return}if(!(u===0&&f===1))for(let p=0;p<g;p++){if(p===a||p<a&&Vg(p,a))continue;let m=e,L=t,R=r,D=n,A=o,y=l;for(let k=1;k<=2;k++){m=i[m][p],L=i[L][p],R=i[R][p],D=i[D][p],A=i[A][p],y=i[y][p];let E=Zg(m,L,R,D,A,y,i,s,f-1,p);for(;;){let{value:Q,done:$}=E.next();if($)break;yield[[p,k]].concat(Q)}}}}}function JR(e){let t=e.mp,r=qg(t.slice(0,6).map(i=>i%6)),n=t.slice(0,5).map((i,s)=>(i>=6)*2**s).reduce((i,s)=>i+s),o=e.co.map((i,s)=>i*3**s).reduce((i,s)=>i+s),l=e.cp.indexOf(0);return[r+360*l,n+32*o]}function Jg(){if(Ue.phase1pm)return Ue.phase1pm;let e=Array(6*12*12).fill().map(()=>Array(sn).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 o=t+6*r+72*n;for(let l=0;l<sn;l++){let i=Hg[l][t],s=a2[l][r],f=a2[l][n];i<6?e[o][l]=i+6*s+72*f:e[o][l]=i-6+6*f+72*s}}return Ue.phase1pm=e}function Xg(){if(Ue.phase1pcm)return Ue.phase1pcm;let e=Jg(),t=Array(e.length*3).fill().map(()=>Array(sn).fill(-1));for(let r=0;r<e.length;r++)for(let n=0;n<sn;n++){let o=e[r][n];t[r][n]=o+6*12*12*f2[n],t[r+6*12*12][n]=o+6*12*12*((f2[n]+1)%3),t[r+2*6*12*12][n]=o+6*12*12*((f2[n]+2)%3)}return Ue.phase1pcm=t}function XR(){if(Ue.phase1p2cp)return Ue.phase1p2cp;let e=Jg(),t=Xg(),r=new Int8Array((6*12*12)**2*3);r.fill(-1);let n=[0,1,2,3,4,5].map(l=>l+6*l+72*(l+6));for(let l=0;l<6;l++)for(let i=0;i<6;i++)l!==i&&(r[n[l]+864*n[i]]=0);let o=0;for(;;){let l=!1;for(let i=0;i<r.length;i++){if(r[i]!==o)continue;let s=i%864,f=Math.floor(i/864);for(let a=0;a<sn;a++){let g=s,c=f;for(let u=1;u<=2;u++){g=e[g][a],c=t[c][a];let p=g+864*c;r[p]===-1&&(l=!0,r[p]=o+1)}}}if(!l)break;o++}return Ue.phase1p2cp=r}function $g(){if(Ue.phase2pm)return Ue.phase2pm;let e=Array(1440).fill().map(()=>Array(Ji));for(let t=0;t<360;t++){let r=Zi(t,6);for(let n=0;n<6;n++)r[n+6]=r[n]+6;for(let n=0;n<Ji;n++){let o=ln(r,uo[n].mp),l=qg(o.slice(0,6).map(i=>i%6));for(let i=0;i<4;i++){let s=uo[n].cp[i];e[t+360*s][n]=l+360*i}}}return Ue.phase2pm=e}function ec(){if(Ue.phase2om)return Ue.phase2om;let e=Array(32*81).fill().map(()=>Array(Ji));for(let t=0;t<32;t++){let r=[0,1,2,3,4].map(o=>t>>o&1);r[5]=r.reduce((o,l)=>o^l);let n=[];for(let o=0;o<6;o++)n[o]=o+6*r[o],n[o+6]=o+6*(r[o]^1);for(let o=0;o<81;o++){let l=[0,1,2,3].map(i=>Math.floor(o/3**i)%3);for(let i=0;i<Ji;i++){let f=ln(n,uo[i].mp).slice(0,5).map(u=>+(u>=6)),a=0;for(let u=0;u<5;u++)a+=f[u]<<u;let g=l.map((u,p)=>(u+uo[i].co[p])%3),c=0;for(let u=0;u<4;u++)c+=g[u]*3**u;e[t+32*o][i]=a+32*c}}}return Ue.phase2om=e}function $R(){return Ue.phase2pp?Ue.phase2pp:Ue.phase2pp=tc($g(),[0])}function ed(){return Ue.phase2op?Ue.phase2op:Ue.phase2op=tc(ec(),[0])}function tc(e,t){let r=e.length,n=e[0].length,o=Array(r).fill(-1),l=t.slice(),i=[],s=0;for(;l.length>0;){i.length=0;for(let f of l)if(o[f]===-1){o[f]=s;for(let a=0;a<n;a++){let g=e[f][a];for(;g!=f;)i.push(g),g=e[g][a]}}[l,i]=[i,l],s+=1}return o}function*td(e,t,r,n){let o=e.length,l=0;for(let i=0;i<o;i++)l=Math.max(l,r[i][e[i]]);for(;l<=n;)yield*rc(e,t,r,l,-1),l++}function*rc(e,t,r,n,o){let l=e.length,i=t[0][0].length,s=0;for(let f=0;f<l;f++)s=Math.max(s,r[f][e[f]]);if(!(s>n)){if(n===0){yield[];return}if(!(s===0&&n===1))for(let f=0;f<i;f++){if(f===o||f<o&&Vg(f,o))continue;let a=e.slice();for(let c=0;c<l;c++)a[c]=t[c][e[c]][f];let g=1;for(;e.some((c,u)=>e[u]!=a[u]);){let c=rc(a,t,r,n-1,f);for(;;){let{value:u,done:p}=c.next();if(p)break;yield[[f,g]].concat(u)}for(let u=0;u<l;u++)a[u]=t[u][a[u]][f];g++}}}}async function nd(){return QR(await rd,!1)}var L7,B7,R7,zR,_R,CR,PR,MR,NR,TR,GR,uo,OR,sn,Ji,HR,Hg,YR,a2,f2,Yg,u2,lr,Ue,rd,oc=U(()=>{Nt();\\\"use strict\\\";[L7,B7]=(()=>{let e=new Int8Array(4096*12),t=new Int8Array(4096*12);for(let o=0;o<4096;o++)for(let l=0,i=0;l<12;l++)(o>>>l&1)!=0&&(e[l<<12|o]=i,t[i<<12|o]=l,i++);function r(o){let l=4095,i=19958400,s=0;for(let f=0;f<10;f++){let a=o[f];s+=e[l|a<<12]*i,l&=~(1<<a),i/=11-f}return s}function n(o,l){let i=4095,s=19958400,f=0;for(let a=0;a<10;a++){let g=o/s|0;o-=g*s,f^=g&1;let c=t[i|g<<12];l[a]=c,i&=~(1<<c),s/=11-a}return l[10]=t[i|f<<12],l[11]=t[i|(f^1)<<12],l}return[r,n]})();R7={co:[0,0,0,0],mp:on(12),wp:on(12),cp:[0,1,2,3]},zR={co:[2,0,0,0],mp:on(12),wp:ol([1,9,11],12),cp:[0,1,2,3]},_R={co:[0,2,0,0],mp:on(12),wp:ol([0,7,2],12),cp:[0,1,2,3]},CR={co:[0,0,2,0],mp:on(12),wp:ol([3,6,10],12),cp:[0,1,2,3]},PR={co:[0,0,0,2],mp:on(12),wp:ol([4,8,5],12),cp:[0,1,2,3]},MR={co:[2,0,0,0],mp:kr([[1,9,11],[7,3,5]],12),wp:kr([[1,9,11],[7,3,5]],12),cp:[0,2,3,1]},NR={co:[0,2,0,0],mp:kr([[0,7,2],[6,1,8]],12),wp:kr([[0,7,2],[6,1,8]],12),cp:[3,1,0,2]},TR={co:[0,0,2,0],mp:kr([[3,6,10],[9,0,4]],12),wp:kr([[3,6,10],[9,0,4]],12),cp:[1,3,2,0]},GR={co:[0,0,0,2],mp:kr([[4,8,5],[10,2,11]],12),wp:kr([[4,8,5],[10,2,11]],12),cp:[2,0,1,3]},uo=[MR,NR,TR,GR,zR,_R,CR,PR],OR=[\\\"u\\\",\\\"l\\\",\\\"r\\\",\\\"b\\\",\\\"U\\\",\\\"L\\\",\\\"R\\\",\\\"B\\\"],sn=8,Ji=4;HR=[],Hg=[],YR=[],a2=[];for(let e=0;e<sn;e++){let t=uo[e];HR[e]=t.mp,Hg[e]=s2(t.mp),YR[e]=t.wp,a2[e]=s2(t.wp)}f2=[0,0,0,0,2,2,2,2],Yg=[[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]],u2=new Int8Array(55);for(let e=0;e<25;e++)u2[e]=Yg[0][e],u2[e+30]=Yg[1][e];lr=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,o=2;t===e?o++:t===(e+6)%12&&o--,r===(e+6)%12?o++:r===e&&o--,lr[n]=o,lr[n+6*12*12]=lr[n+2*6*12*12]=o+5}Ue={};rd=je()});var sc={};ye(sc,{cachedMegaminxKPuzzleWithoutMO:()=>ll,cachedSGSDataMegaminx:()=>sd,sgsDataMegaminx:()=>ic});async function od(){let e=vn(\\\"megaminx\\\",{allMoves:!0,addRotations:!0}),t=new Ee(e.getKPuzzleDefinition(!0),{experimentalPGNotation:new Or(e,e.getOrbitsDef(!0))});return t.definition.name=\\\"megaminx\\\",t}async function ll(){return ld??(ld=od())}async function sd(){return id??(id=ic())}async function ic(){return Gt(await ll(),`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 ld,id,g2=U(()=>{He();En();kn();ld=null;id=null});var gc={};ye(gc,{sgsDataPyraminx:()=>uc,sgsDataPyraminxFixedOrientation:()=>c2});async function uc(){return ud??(ud=gd())}async function c2(){return{ordering:(await uc()).ordering.slice(2)}}async function gd(){return Gt(await ke.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 ud,p2=U(()=>{Ht();kn();ud=null});var Lc={};ye(Lc,{sgsDataSkewb:()=>mc,sgsDataSkewbFixedCorner:()=>L2,skewbKPuzzleWithoutMOCached:()=>Xi});async function Ld(){let e=vn(\\\"skewb\\\",{allMoves:!0,addRotations:!0});return new Ee(e.getKPuzzleDefinition(!0),{experimentalPGNotation:new Or(e,e.getOrbitsDef(!0))})}async function Xi(){return Bd??(Bd=Ld())}async function mc(){return Rd??(Rd=dd())}async function L2(){return{ordering:(await mc()).ordering.slice(1)}}async function dd(){return Gt(await Xi(),`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 Bd,Rd,B2=U(()=>{He();En();kn();Bd=null;Rd=null});var Sc={};ye(Sc,{getRandomSquare1ScrambleString:()=>jd});function yd(e,t){e.ul=t.ul,e.ur=t.ur,e.dl=t.dl,e.dr=t.dr,e.ml=t.ml}function dc(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 Ud(e){var t,r,n,o,l;for(n=0,e.arr[0]=Wt(e,0),o=1;o<24;++o)Wt(e,o)!=e.arr[n]&&(e.arr[++n]=Wt(e,o));for(l=0,t=0;t<16;++t)for(r=t+1;r<16;++r)e.arr[t]>e.arr[r]&&(l^=1);return l}function bd(e){var t,r,n,o;return o=e.ur&1118481,o|=~~o>>3,o|=~~o>>6,o=o&15|~~o>>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,il(Ud(e)<<24|n<<18|o<<12|t<<6|r)}function Sd(e,t){var r,n;for(r=0;r<8;++r)e.prm[r]=~~(~~Wt(e,r*3+1)>>1<<24)>>24;for(t.cornperm=ul(e.prm),t.topEdgeFirst=Wt(e,0)==Wt(e,1),r=t.topEdgeFirst?2:0,n=0;n<4;r+=3,++n)e.prm[n]=~~(~~Wt(e,r)>>1<<24)>>24;for(t.botEdgeFirst=Wt(e,12)==Wt(e,13),r=t.botEdgeFirst?14:12;n<8;r+=3,++n)e.prm[n]=~~(~~Wt(e,r)>>1<<24)>>24;t.edgeperm=ul(e.prm),t.ml=e.ml}function Wt(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 d2(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 D2(){this.arr=[],this.prm=[]}async function xd(){let e=await je();var t,r,n,o,l,i,s,f,a;for(t=new D2,n=go[e(3678)],l=19088743<<1|286331153,o=19088743<<1,s=i=8,r=0;r<24;r++)(n>>r&1)==0?(f=e(i)<<2,d2(t,23-r,o>>f&15),a=(1<<f)-1,o=(o&a)+(o>>4&~a),--i):(f=e(s)<<2,d2(t,23-r,l>>f&15),d2(t,22-r,l>>f&15),a=(1<<f)-1,l=(l&a)+(l>>4&~a),--s,++r);return t.ml=e(2),t}function wd(){}function vd(e){var t,r,n,o,l,i;for(yd(e.Search_d,e.Search_c),n=0;n<e.Search_length1;++n)dc(e.Search_d,e.Search_move[n]);for(Sd(e.Search_d,e.Search_sq),r=e.Search_sq.edgeperm,t=e.Search_sq.cornperm,l=e.Search_sq.ml,i=Math.max(he[e.Search_sq.edgeperm<<1|l],he[e.Search_sq.cornperm<<1|l]),n=i;n<e.Search_maxlen2;++n)if(es(e,r,t,e.Search_sq.topEdgeFirst,e.Search_sq.botEdgeFirst,l,n,e.Search_length1,0)){for(o=0;o<n;++o)dc(e.Search_d,e.Search_move[e.Search_length1+o]);return e.Search_sol_string=Ed(e,n+e.Search_length1),!0}return!1}function Ed(e,t){for(var r=\\\"\\\",n=0,o=0,l=t-1;l>=0;l--){var i=e.Search_move[l];i>0?(i=12-i,n=i>6?i-12:i):i<0?(i=12+i,o=i>6?i-12:i):(n==0&&o==0?r+=\\\" / \\\":r+=\\\"(\\\"+n+\\\", \\\"+o+\\\") / \\\",n=o=0)}return(n!==0||o!==0)&&(r+=\\\"(\\\"+n+\\\", \\\"+o+\\\")\\\"),r}function $i(e,t,r,n,o,l){var i,s,f;if(r==0&&n<4)return n==0&&vd(e);if(l!=0&&(f=ts[t],s=Pe[f],s<n&&(e.Search_move[o]=0,$i(e,f,s,n-1,o+1,0))))return!0;if(f=t,l<=0){for(i=0;i+=al[f],f=~~i>>4,i&=15,!(i>=12||(s=Pe[f],s>n));)if(s<n&&(e.Search_move[o]=i,$i(e,f,s,n-1,o+1,1)))return!0}if(f=t,l<=1){for(i=0;i+=sl[f],f=~~i>>4,i&=15,!(i>=6||(s=Pe[f],s>n));)if(s<n&&(e.Search_move[o]=-i,$i(e,f,s,n-1,o+1,2)))return!0}return!1}function es(e,t,r,n,o,l,i,s,f){var a,g,c,u,p,m,L;if(i==0&&!n&&o||f!=0&&n==o&&(c=gl[t],g=gl[r],he[c<<1|1-l]<i&&he[g<<1|1-l]<i&&(e.Search_move[s]=0,es(e,c,g,n,o,1-l,i-1,s+1,0))))return!0;if(f<=0)for(L=!n,c=L?un[t]:t,g=L?r:un[r],u=L?1:2,p=he[c<<1|l],m=he[g<<1|l];u<12&&p<=i&&p<=i;){if(p<i&&m<i&&(e.Search_move[s]=u,es(e,c,g,L,o,l,i-1,s+1,1)))return!0;L=!L,L?(c=un[c],p=he[c<<1|l],u+=1):(g=un[g],m=he[g<<1|l],u+=2)}if(f<=1)for(a=!o,c=a?an[t]:t,g=a?r:an[r],u=a?1:2,p=he[c<<1|l],m=he[g<<1|l];u<(i>3?6:12)&&p<=i&&p<=i;){if(p<i&&m<i&&(e.Search_move[s]=-u,es(e,c,g,n,a,l,i-1,s+1,2)))return!0;a=!a,a?(c=an[c],p=he[c<<1|l],u+=1):(g=an[g],m=he[g<<1|l],u+=2)}return!1}function kd(e,t){var r;for(e.Search_c=t,r=bd(t),e.Search_length1=Pe[r];e.Search_length1<100&&(e.Search_maxlen2=Math.min(31-e.Search_length1,17),!$i(e,r,Pe[r],e.Search_length1,0,-1));++e.Search_length1);return e.Search_sol_string}function Dc(){this.Search_move=[],this.Search_d=new D2,this.Search_sq=new yc}function zd(){}function _d(){Fc||(Fc=!0,fl=[0,3,6,12,15,24,27,30,48,51,54,60,63],go=[],Pe=[],al=[],sl=[],ts=[],Md())}function Cd(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((gn(e.bottom&63)&1)!=0);return(gn(e.bottom)&2)==0&&(e.Shape_parity^=r),t}function F2(e){var t;return t=bc(go,e.top<<12|e.bottom)<<1|e.Shape_parity,t}function h2(e,t){e.Shape_parity=t&1,e.top=go[~~t>>1],e.bottom=e.top&4095,e.top>>=12}function Pd(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((gn(e.top&63)&1)!=0);return(gn(e.top)&2)==0&&(e.Shape_parity^=r),t}function hc(){}function il(e){var t;return t=bc(go,e&16777215)<<1|~~e>>24,t}function Md(){var e,t,r,n,o,l,i,s,f,a,g,c,u,p,m,L;for(e=0,i=0;i<28561;++i)l=fl[i%13],r=fl[~~(i/13)%13],c=fl[~~(~~(i/13)/13)%13],g=fl[~~(~~(~~(i/13)/13)/13)],u=g<<18|c<<12|r<<6|l,gn(u)==16&&(go[e++]=u);for(a=new hc,i=0;i<7356;++i)h2(a,i),al[i]=Pd(a),al[i]|=F2(a)<<4,h2(a,i),sl[i]=Cd(a),sl[i]|=F2(a)<<4,h2(a,i),L=a.top&63,p=gn(L),m=gn(a.bottom&4032),a.Shape_parity^=1&~~(p&m)>>1,a.top=a.top&4032|~~a.bottom>>6&63,a.bottom=a.bottom&63|L<<6,ts[i]=F2(a);for(i=0;i<7536;++i)Pe[i]=-1;for(Pe[il(14378715)]=0,Pe[il(31157686)]=0,Pe[il(23967451)]=0,Pe[il(7191990)]=0,n=4,o=0,t=-1;n!=o;)for(o=n,++t,i=0;i<7536;++i)if(Pe[i]==t){f=0,s=i;do s=al[s],f+=s&15,s>>=4,Pe[s]==-1&&(++n,Pe[s]=t+1);while(f!=12);f=0,s=i;do s=sl[s],f+=s&15,s>>=4,Pe[s]==-1&&(++n,Pe[s]=t+1);while(f!=12);s=ts[i],Pe[s]==-1&&(++n,Pe[s]=t+1)}}function Nd(){}function Td(){if(!Ac){Ac=!0,he=[],gl=[],un=[],an=[],Uc=[1,1,2,6,24,120,720,5040],fn=[];for(var e=0;e<12;++e)fn[e]=[];Gd()}}function yc(){}function ul(e){var t,r,n,o;for(r=0,o=1985229328,t=0;t<7;++t)n=e[t]<<2,r=(8-t)*r+(~~o>>n&7),o-=286331152<<n;return r&65535}function Gd(){var e,t,r,n,o,l,i,s,f,a,g,c,u;for(o=0;o<12;++o)for(fn[o][0]=1,fn[o][o]=1,f=1;f<o;++f)fn[o][f]=fn[o-1][f-1]+fn[o-1][f];for(c=[],o=0;o<40320;++o)A2(c,o),u=c[2],c[2]=c[4],c[4]=u,u=c[3],c[3]=c[5],c[5]=u,gl[o]=ul(c),A2(c,o),u=c[0],c[0]=c[1],c[1]=c[2],c[2]=c[3],c[3]=u,un[o]=ul(c),A2(c,o),u=c[4],c[4]=c[5],c[5]=c[6],c[6]=c[7],c[7]=u,an[o]=ul(c);for(o=0;o<80640;++o)he[o]=-1;for(he[0]=0,t=0,r=1;r<80640;){s=t>=11,n=s?-1:t,e=s?t:-1,++t;e:for(o=0;o<80640;++o)if(he[o]==n){if(l=~~o>>1,g=o&1,i=gl[l]<<1|1-g,he[i]==e&&(++r,he[s?o:i]=~~(t<<24)>>24,s))continue e;for(i=l,a=0;a<4;++a)if(i=un[i],he[i<<1|g]==e&&(++r,he[s?o:i<<1|g]=~~(t<<24)>>24,s))continue e;for(a=0;a<4;++a)if(i=an[i],he[i<<1|g]==e&&(++r,he[s?o:i<<1|g]=~~(t<<24)>>24,s))continue e}}}function A2(e,t){var r,n,o,l,i;for(i=1985229328,r=0;r<7;++r)o=Uc[7-r],l=~~(t/o),t-=l*o,l<<=2,e[r]=~~((~~i>>l&7)<<24)>>24,n=(1<<l)-1,i=(i&n)+(~~i>>4&~n);e[7]=~~(i<<24)>>24}function Od(){}function gn(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 bc(e,t){var r,n,o,l;for(n=0,r=e.length-1;n<=r;)if(o=n+(~~(r-n)>>1),l=e[o],l<t)n=o+1;else if(l>t)r=o-1;else return o;return-n-1}async function jd(){return(await Qd()).scramble_string}var we,Fc,sl,go,Pe,al,ts,fl,Ac,an,fn,he,un,gl,Uc,y2,Id,Wd,Kd,Qd,xc=U(()=>{Nt();we=D2.prototype=wd.prototype;we.dl=10062778;we.dr=14536702;we.ml=0;we.ul=70195;we.ur=4544119;we=Dc.prototype=zd.prototype;we.Search_c=null;we.Search_length1=0;we.Search_maxlen2=0;we.Search_sol_string=null;Fc=!1;we=hc.prototype=Nd.prototype;we.bottom=0;we.Shape_parity=0;we.top=0;Ac=!1;we=yc.prototype=Od.prototype;we.botEdgeFirst=!1;we.cornperm=0;we.edgeperm=0;we.ml=0;we.topEdgeFirst=!1;y2=!1,Id=function(e,t,r){y2||(_d(),Td()),r&&r(\\\"Done initializing Square-1.\\\"),y2=!0,e!=null&&e()},Wd=async function(){return y2||Id(),xd()},Kd=function(e){var t=new Dc;return kd(t,e)},Qd=async function(){var e=await Wd(),t=Kd(e);return{state:e,scramble_string:t}}});var x2=Symbol(\\\"Comlink.proxy\\\"),Pc=Symbol(\\\"Comlink.endpoint\\\"),Mc=Symbol(\\\"Comlink.releaseProxy\\\"),os=Symbol(\\\"Comlink.thrown\\\"),w2=e=>typeof e==\\\"object\\\"&&e!==null||typeof e==\\\"function\\\",Nc={canHandle:e=>w2(e)&&e[x2],serialize(e){let{port1:t,port2:r}=new MessageChannel;return co(e,t),[r,[r]]},deserialize(e){return e.start(),Oc(e)}},Tc={canHandle:e=>w2(e)&&os 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}},v2=new Map([[\\\"proxy\\\",Nc],[\\\"throw\\\",Tc]]);function co(e,t=self){t.addEventListener(\\\"message\\\",function r(n){if(!n||!n.data)return;let{id:o,type:l,path:i}=Object.assign({path:[]},n.data),s=(n.data.argumentList||[]).map(zr),f;try{let a=i.slice(0,-1).reduce((c,u)=>c[u],e),g=i.reduce((c,u)=>c[u],e);switch(l){case\\\"GET\\\":f=g;break;case\\\"SET\\\":a[i.slice(-1)[0]]=zr(n.data.value),f=!0;break;case\\\"APPLY\\\":f=g.apply(a,s);break;case\\\"CONSTRUCT\\\":{let c=new g(...s);f=Kc(c)}break;case\\\"ENDPOINT\\\":{let{port1:c,port2:u}=new MessageChannel;co(e,u),f=Wc(c,[c])}break;case\\\"RELEASE\\\":f=void 0;break;default:return}}catch(a){f={value:a,[os]:0}}Promise.resolve(f).catch(a=>({value:a,[os]:0})).then(a=>{let[g,c]=is(a);t.postMessage(Object.assign(Object.assign({},g),{id:o}),c),l===\\\"RELEASE\\\"&&(t.removeEventListener(\\\"message\\\",r),E2(t))})}),t.start&&t.start()}function Gc(e){return e.constructor.name===\\\"MessagePort\\\"}function E2(e){Gc(e)&&e.close()}function Oc(e,t){return ls(e,[],t)}function cl(e){if(e)throw new Error(\\\"Proxy has been released and is not useable\\\")}function ls(e,t=[],r=function(){}){let n=!1,o=new Proxy(r,{get(l,i){if(cl(n),i===Mc)return()=>cn(e,{type:\\\"RELEASE\\\",path:t.map(s=>s.toString())}).then(()=>{E2(e),n=!0});if(i===\\\"then\\\"){if(t.length===0)return{then:()=>o};let s=cn(e,{type:\\\"GET\\\",path:t.map(f=>f.toString())}).then(zr);return s.then.bind(s)}return ls(e,[...t,i])},set(l,i,s){cl(n);let[f,a]=is(s);return cn(e,{type:\\\"SET\\\",path:[...t,i].map(g=>g.toString()),value:f},a).then(zr)},apply(l,i,s){cl(n);let f=t[t.length-1];if(f===Pc)return cn(e,{type:\\\"ENDPOINT\\\"}).then(zr);if(f===\\\"bind\\\")return ls(e,t.slice(0,-1));let[a,g]=k2(s);return cn(e,{type:\\\"APPLY\\\",path:t.map(c=>c.toString()),argumentList:a},g).then(zr)},construct(l,i){cl(n);let[s,f]=k2(i);return cn(e,{type:\\\"CONSTRUCT\\\",path:t.map(a=>a.toString()),argumentList:s},f).then(zr)}});return o}function Ic(e){return Array.prototype.concat.apply([],e)}function k2(e){let t=e.map(is);return[t.map(r=>r[0]),Ic(t.map(r=>r[1]))]}var z2=new WeakMap;function Wc(e,t){return z2.set(e,t),e}function Kc(e){return Object.assign(e,{[x2]:!0})}function is(e){for(let[t,r]of v2)if(r.canHandle(e)){let[n,o]=r.serialize(e);return[{type:\\\"HANDLER\\\",name:t,value:n},o]}return[{type:\\\"RAW\\\",value:e},z2.get(e)||[]]}function zr(e){switch(e.type){case\\\"HANDLER\\\":return v2.get(e.name).deserialize(e.value);case\\\"RAW\\\":return e.value}}function cn(e,t,r){return new Promise(n=>{let o=Qc();e.addEventListener(\\\"message\\\",function l(i){!i.data||!i.data.id||i.data.id!==o||(e.removeEventListener(\\\"message\\\",l),n(i.data))}),e.start&&e.start(),e.postMessage(Object.assign({id:o},t),r)})}function Qc(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join(\\\"-\\\")}function jc(e){let t=new WeakMap;return{postMessage:e.postMessage.bind(e),addEventListener:(r,n)=>{let o=l=>{\\\"handleEvent\\\"in n?n.handleEvent({data:l}):n({data:l})};e.on(\\\"message\\\",o),t.set(n,o)},removeEventListener:(r,n)=>{let o=t.get(n);!o||(e.off(\\\"message\\\",o),t.delete(n))},nodeWorker:e}}var _2=jc;var qc=typeof globalThis.Worker==\\\"undefined\\\"&&typeof globalThis.WorkerNavigator==\\\"undefined\\\",Vc=\\\"w-orker-_threa-ds\\\",Hc=()=>Vc.replace(/-/g,\\\"\\\");async function Yc(){let{parentPort:e}=await import(Hc()).catch();return _2(e)}function C2(e){qc?(async()=>{co(e,await Yc())})():co(e)}He();Ht();Mt();He();Ht();Nt();Mt();Re();Re();var js=class extends Dn{constructor(t){super();this.metric=t}traverseAlg(t){let r=0;for(let n of t.units())r+=this.traverseUnit(n);return r}traverseGrouping(t){let r=t.alg;return this.traverseAlg(r)*Math.abs(t.amount)}traverseMove(t){return this.metric(t)}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 0}traverseNewline(t){return 0}traverseLineComment(t){return 0}};function jf(e){return\\\"A\\\"<=e&&e<=\\\"Z\\\"}function $p(e){let t=e.family;return jf(t[0])&&t[t.length-1]===\\\"v\\\"||t===\\\"x\\\"||t===\\\"y\\\"||t===\\\"z\\\"||t===\\\"T\\\"?0:1}function em(e){let t=e.family;return jf(t[0])&&t[t.length-1]===\\\"v\\\"||t===\\\"x\\\"||t===\\\"y\\\"||t===\\\"z\\\"||t===\\\"T\\\"?0:Math.abs(e.amount)}var qf=new js($p),qs=qf.traverseAlg.bind(qf),Vf=new js(em),tm=Vf.traverseAlg.bind(Vf);Re();var Hf=class extends Dn{traverseAlg(t){let r=0;for(let n of t.units())r+=this.traverseUnit(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}},Yf=new Hf,rm=Yf.traverseAlg.bind(Yf);Nt();var nm=2,om=!0,lm=!1;function im(e,t){let r=[];return t.forEach(function(n){let o=new B(n);if(o.amount!==1)throw new Error(\\\"SGS cannot handle def moves with an amount other than 1 yet.\\\");let l=e.identityTransformation();for(let i=1;l=l.applyMove(o),!l.isIdentityTransformation();i++)r.push({move:o.modified({amount:i}),transformation:l})}),r}var Tt=class{constructor(t,r,n){this.kpuzzle=t;this.sgs=r;this.searchMoves=im(this.kpuzzle,n??Object.keys(this.kpuzzle.definition.moves))}async solve(t,r=nm,n){let o=t.experimentalToTransformation();if(!o)throw new Error(\\\"distinguishable pieces are not supported in tremble solver yt\\\");let l=null,i=1e6,s=(f,a,g)=>{if(a===0){let c=this.sgsPhaseSolve(f,i);if(!c)return;let u=g.concat(c).simplify({collapseMoves:!0,quantumMoveOrder:n}),p=qs(u);(l===null||p<i)&&(lm&&(console.log(`New best (${p} moves): ${u.toString()}`),console.log(`Tremble moves are: ${g.toString()}`)),l=u,i=p);return}for(let c of this.searchMoves)s(f.applyTransformation(c.transformation),a-1,g.concat([c.move]))};for(let f=0;f<=r;f++)s(o,f,new z);if(l===null)throw new Error(\\\"SGS search failed.\\\");return l}sgsPhaseSolve(t,r){let n=new pt,o=t;for(let l of this.sgs.ordering){let i=l.pieceOrdering,s=\\\"\\\",f=o.invert();for(let g=0;g<i.length;g++){let c=i[g],u=c.orbitName,p=c.permutationIdx;s+=` ${f.transformationData[u].permutation[p]} ${f.transformationData[u].orientation[p]}`}let a=l.lookup[s];if(!a)throw new Error(\\\"Missing algorithm in sgs or esgs?\\\");if(n.experimentalPushAlg(a.alg),n.experimentalNumUnits()>=r)return null;if(o=o.applyTransformation(a.transformation),om)for(let g=0;g<i.length;g++){let c=i[g],u=c.orbitName,p=c.permutationIdx;if(o.transformationData[u].permutation[p]!==p||o.transformationData[u].orientation[p]!==0)throw new Error(\\\"bad SGS :-(\\\")}}return n.toAlg()}};async function Hl(e,t){let r=await Yt(),n=e.identityTransformation();for(let o of t.ordering){let l=r(Object.values(o.lookup));n=n.applyTransformation(l.transformation)}return n.toKState()}var fm=3,$f=null;async function eu(){return $f||($f=(async()=>{let e=await(await Promise.resolve().then(()=>(Xf(),Jf))).cachedData222();return new Tt(await ke[\\\"2x2x2\\\"].kpuzzle(),e,\\\"URFLBD\\\".split(\\\"\\\"))})())}async function tu(){await eu()}async function Vs(e){return Qe(),await(await eu()).solve(e,fm,()=>4)}async function um(e,t,r,n){let o=await je();await Qf(r.stateData[t].pieces);let l=e.definition.orbits[t],i=r.stateData[t].orientation,s=0;for(let f=0;f<l.numPieces;f++){let a=o(l.numOrientations);i[f]=a,s+=a}n&&\\\"orientationSum\\\"in n&&(i[0]=((i[0]+n.orientationSum-s)%l.numOrientations+l.numOrientations)%l.numOrientations)}async function gm(){let e=await ke[\\\"2x2x2\\\"].kpuzzle(),t=new me(e,JSON.parse(JSON.stringify(e.startState().stateData)));return await um(e,\\\"CORNERS\\\",t,{orientationSum:0}),t}async function ru(){return await Vs(await gm())}da();Yl();var SB=[[null,\\\"x\\\",\\\"x2\\\",\\\"x'\\\",\\\"z\\\",\\\"z'\\\"],[null,\\\"y\\\",\\\"y2\\\",\\\"y'\\\"]],xB=null;function ig(){return xB??(xB=Promise.resolve().then(()=>(lg(),og)))}async function sg(){return(await ig()).initialize()}async function Qa(){return(await ig()).random444Scramble()}async function ag(){return zn(await Qa(),SB)}Yl();Re();Nt();function wB(e){switch(e){case 5:return 60;case 6:return 80;default:return 100}}var vB=[[\\\"U\\\",\\\"D\\\"],[\\\"L\\\",\\\"R\\\"],[\\\"F\\\",\\\"B\\\"]],fg=new Map;function EB(e){let t=fg.get(e);if(t)return t;let r=[];for(let n of vB){let o=[];r.push(o);for(let l of n){o.push(new P(l)),e>3&&o.push(new P(`${l}w`));for(let i=3;i<=e/2;i++)o.push(new P(`${l}w`,i))}}return fg.set(e,r),r}async function rr(e){let t=await je(),r=await Yt(),n=r,o=EB(e),l=wB(e),i=new pt,s=0,f=new Set;for(;i.experimentalNumUnits()<l;){let a=t(3);a!==s&&f.clear(),s=a;let g=r(o[s]),c=g.toString();f.has(c)||(f.add(c),i.push(new B(g,n([1,2,-1]))))}return i.toAlg()}var kB=[[null,\\\"3Rw\\\",\\\"3Rw2\\\",\\\"3Rw'\\\",\\\"3Fw\\\",\\\"3Fw'\\\"],[null,\\\"3Dw\\\",\\\"3Dw2\\\",\\\"3Dw'\\\"]];async function ug(){return zn(await rr(5),kB)}Re();Ht();Mt();async function jg(){Qe();let{randomFTOScrambleString:e}=await Promise.resolve().then(()=>(Qg(),Kg));return new z(await e())}Re();Mt();async function lc(){let{randomMasterTetraminxScrambleString:e}=await Promise.resolve().then(()=>(oc(),nc));return Qe(),new z(await e())}He();Mt();g2();var ad=2,ac=null;async function fd(){return ac||(ac=(async()=>{let t=await(await Promise.resolve().then(()=>(g2(),sc))).cachedSGSDataMegaminx();return new Tt(await ll(),t,[\\\"U\\\",\\\"R\\\",\\\"F\\\",\\\"L\\\",\\\"BR\\\",\\\"BL\\\",\\\"FR\\\",\\\"FL\\\",\\\"DR\\\",\\\"DL\\\",\\\"B\\\",\\\"D\\\"])})())}async function fc(e){Qe();let t=await fd(),r=JSON.parse(JSON.stringify(e.stateData));r.CENTERS.orientation=new Array(12).fill(0);let n=new me(await ll(),r);return await t.solve(n,ad,()=>5)}Ht();Mt();p2();var cd=3,cc=null;async function pd(){return cc||(cc=(async()=>{let t=await(await Promise.resolve().then(()=>(p2(),gc))).sgsDataPyraminx();return new Tt(await ke.pyraminx.kpuzzle(),t,\\\"RLUB\\\".split(\\\"\\\"))})())}async function m2(e){return Qe(),await(await pd()).solve(e,cd,()=>3)}async function md(){return Qe(),Hl(await ke.pyraminx.kpuzzle(),await c2())}async function pc(){return m2(await md())}He();Mt();B2();var Dd=3,Bc=null;async function Fd(){return Bc||(Bc=(async()=>{let e=await Promise.resolve().then(()=>(B2(),Lc)),t=await e.sgsDataSkewb();return new Tt(await e.skewbKPuzzleWithoutMOCached(),t,\\\"RLUB\\\".split(\\\"\\\"))})())}function hd(e){return new me(e.kpuzzle,{CORNERS:e.stateData.CORNERS,CENTERS:{pieces:e.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}})}async function R2(e){return Qe(),await(await Fd()).solve(hd(e),Dd,n=>n.family===\\\"y\\\"?4:3)}async function Ad(){return Hl(await Xi(),await L2())}async function Rc(){return R2(await Ad())}Re();var qd=null;function Vd(){return qd??(qd=Promise.resolve().then(()=>(xc(),Sc)))}async function wc(){return z.fromString(await(await Vd()).getRandomSquare1ScrambleString())}Gf(!0);var vc=!0;function Hd(e){vc=e}function Ec(){return(typeof performance==\\\"undefined\\\"?Date:performance).now()}async function Me(e,t){if(!vc)return t();let r=Ec(),n=t();n?.then&&await n;let o=Ec();return console.warn(`${e}: ${Math.round(o-r)}ms`),n}var U2={initialize:async e=>{switch(e){case\\\"222\\\":return Me(\\\"preInitialize222\\\",tu);case\\\"333\\\":case\\\"333oh\\\":case\\\"333ft\\\":return Me(\\\"initialize333\\\",qu);case\\\"444\\\":return Me(\\\"initialize444\\\",sg);default:throw new Error(`unsupported event: ${e}`)}},randomScrambleForEvent:async e=>{switch(e){case\\\"222\\\":return Me(\\\"random222Scramble\\\",ru);case\\\"333\\\":case\\\"333oh\\\":case\\\"333ft\\\":return Me(\\\"random333Scramble\\\",Qn);case\\\"333fm\\\":return Me(\\\"random333FewestMovesScramble\\\",Yu);case\\\"333bf\\\":case\\\"333mb\\\":return Me(\\\"random333OrientedScramble\\\",Vu);case\\\"444\\\":return Me(\\\"random444Scramble\\\",Qa);case\\\"444bf\\\":return Me(\\\"random444OrientedScramble\\\",ag);case\\\"555\\\":return Me(\\\"bigCubeScramble(5)\\\",rr.bind(rr,5));case\\\"555bf\\\":return Me(\\\"oriented555RandomMoves\\\",ug);case\\\"666\\\":return Me(\\\"bigCubeScramble(6)\\\",rr.bind(rr,6));case\\\"777\\\":return Me(\\\"bigCubeScramble(7)\\\",rr.bind(rr,7));case\\\"skewb\\\":return Me(\\\"randomSkewbFixedCornerScramble\\\",Rc);case\\\"pyram\\\":return Me(\\\"randomPyraminxScrambleFixedOrientation\\\",pc);case\\\"sq1\\\":return Me(\\\"getRandomSquare1Scramble\\\",wc);case\\\"fto\\\":return Me(\\\"randomFTOScramble\\\",jg);case\\\"master_tetraminx\\\":return Me(\\\"randomMasterTetraminxScramble\\\",lc);default:throw new Error(`unsupported event: ${e}`)}},randomScrambleStringForEvent:async e=>(await U2.randomScrambleForEvent(e)).toString(),solve333ToString:async e=>{let t=new me(await ke[\\\"3x3x3\\\"].kpuzzle(),e);return(await Ra(t)).toString()},solve222ToString:async e=>{let t=new me(await ke[\\\"2x2x2\\\"].kpuzzle(),e);return(await Vs(t)).toString()},solveSkewbToString:async e=>{let t=new me(await ke.skewb.kpuzzle(),e);return(await R2(t)).toString()},solvePyraminxToString:async e=>{let t=new me(await ke.pyraminx.kpuzzle(),e);return(await m2(t)).toString()},solveMegaminxToString:async e=>{let t=new me(await ke.megaminx.kpuzzle(),e);return(await fc(t)).toString()},setDebugMeasurePerf:async e=>{Hd(e)}};C2(U2);\\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;",
6
+ "names": []
7
+ }