UNPKG

jocly

Version:

Board games 3D/2D UI and AI web library

2 lines 361 kB
exports.model=Model={Game:{},Board:{},Move:{}},function(){var e;Model.Game.cbConstants={MASK:65535,FLAG_MOVE:65536,FLAG_CAPTURE:131072,FLAG_STOP:262144,FLAG_SCREEN_CAPTURE:524288,FLAG_CAPTURE_KING:1048576,FLAG_CAPTURE_NO_KING:2097152};var m="undefined"!=typeof Int32Array;Model.Game.cbUseTypedArrays=m,Model.Game.cbTypedArray=function(e){if(m){var h=new Int32Array(e.length);return h.set(e),h}for(var b=[],c=e.length,g=0;g<c;g++)b.push(e[g]);return b},Model.Game.cbShortRangeGraph=function(e,m,h,b){var c=this;void 0===b&&(b=196608);for(var g={},i=0;i<e.boardSize;i++)g[i]=[],(!h||i in h)&&m.forEach(function(m){var H=e.Graph(i,m);null!=H&&(!h||H in h)&&g[i].push(c.cbTypedArray([H|b]))});return g},Model.Game.cbLongRangeGraph=function(e,m,h,b,c){var g=this;void 0!==b&&null!=b||(b=196608),c||(c=1/0);for(var i={},H=0;H<e.boardSize;H++)i[H]=[],(!h||H in h)&&m.forEach(function(m){for(var a=[],R=e.Graph(H,m),C=0;null!=R&&(!h||R in h)&&(a.push(R|b),++C!=c);)R=e.Graph(R,m);a.length>0&&i[H].push(g.cbTypedArray(a))});return i},Model.Game.cbNullGraph=function(e){for(var m={},h=0;h<e.boardSize;h++)m[h]=[];return m},Model.Game.cbAuthorGraph=function(e){for(var m={},h=0;h<e.boardSize;h++){m[h]=[];for(var b=0;b<e.boardSize;b++)m[h].push([2293760|b])}return m},Model.Game.cbMergeGraphs=function(e){for(var m=[],h=0;h<e.boardSize;h++){m[h]=[];for(var b=1;b<arguments.length;b++)m[h]=m[h].concat(arguments[b][h])}return m},Model.Game.cbGetThreatGraph=function(){function e(m,h){for(var b in i){var c=i[b];if(!(c.p.length<h.length+1)){for(var g=!0,H=0;H<h.length;H++)if(h[H]!=c.p[H]){g=!1;break}if(g){var a=c.p[h.length],R=m[a];void 0===R&&(R={e:{}},m[a]=R),c.p.length==h.length+1&&(R.t=c.t,R.ts=c.ts,R.tk=c.tk,delete i[b]),h.push(a),e(R.e,h),h.pop()}}}}var m=this;this.cbUseScreenCapture=!1,this.cbUseCaptureKing=!1,this.cbUseCaptureNoKing=!1;for(var h={1:[],"-1":[]},b=[],c=0;c<this.g.boardSize;c++)this.g.pTypes.forEach(function(e,h){e.graph[c].forEach(function(e){for(var g=[],i=0;i<e.length;i++){var H=e[i];1048576&H?(m.cbUseCaptureKing=!0,g.unshift({d:65535&H,a:c,tk:h})):2097152&H?(m.cbUseCaptureNoKing=!0,g.unshift({d:65535&H,a:c,tnk:h})):131072&H?g.unshift({d:65535&H,a:c,t:h}):262144&H?g.unshift({d:65535&H,a:c}):524288&H&&(m.cbUseScreenCapture=!0,g.unshift({d:65535&H,a:c,ts:h}))}g.length>0&&b.push(g)})});var g={};b.forEach(function(e){e.forEach(function(m,h){var b=g[m.d];void 0===b&&(b={},g[m.d]=b);for(var c=[],i=h+1;i<e.length;i++)c.push(e[i].d);c.push(m.a);var H=c.join(","),a=b[H];void 0===a&&(a={p:c,t:{},ts:{},tk:{}},b[H]=a),void 0!==m.t?a.t[m.t]=!0:void 0!==m.tk?a.tk[m.tk]=!0:void 0!==m.ts&&(a.ts[m.ts]=!0)})});for(var c=0;c<m.g.boardSize;c++){var i=g[c],H={};e(H,[]),h[1][c]=H,h[-1][c]=H}return h},Model.Game.InitGame=function(){var m=this;this.cbVar=e=this.cbDefine(),this.g.boardSize=this.cbVar.geometry.boardSize,this.g.pTypes=this.cbGetPieceTypes(),this.g.threatGraph=this.cbGetThreatGraph(),this.g.distGraph=this.cbVar.geometry.GetDistances(),this.cbPiecesCount=0,this.g.castleablePiecesCount={1:0,"-1":0};for(var h in e.pieceTypes){var b=e.pieceTypes[h];if(b.castle){(b.initial||[]).forEach(function(e){m.g.castleablePiecesCount[e.s]++})}b.initial&&(this.cbPiecesCount+=b.initial.length)}for(var c=[],h=0;h<this.cbPiecesCount;h++)c.push(h);var g=Object.keys(e.pieceTypes);this.zobrist=new JocGame.Zobrist({board:{type:"array",size:this.cbVar.geometry.boardSize,values:c},who:{values:["1","-1"]},type:{type:"array",size:this.cbPiecesCount,values:g}})},Model.Game.cbGetPieceTypes=function(){for(var e=[],m={},h=0;h<this.cbVar.geometry.boardSize;h++)m[h]=[];for(var b in this.cbVar.pieceTypes){var c=this.cbVar.pieceTypes[b];e[b]={graph:c.graph||m,abbrev:c.abbrev||"",value:c.isKing?100:c.value||1,isKing:!!c.isKing,castle:!!c.castle,epTarget:!!c.epTarget,epCatch:!!c.epCatch}}return e},Model.Board.Init=function(e){this.zSign=0},Model.Board.InitialPosition=function(h){var b=this;this.board=m?new Int16Array(h.g.boardSize):[];for(var c=0;c<h.g.boardSize;c++)this.board[c]=-1;if(this.kings={},this.pieces=[],this.ending={1:!1,"-1":!1},this.lastMove=null,h.cbVar.castle&&(this.castled={1:!1,"-1":!1}),this.zSign=h.zobrist.update(0,"who",-1),this.noCaptCount=0,this.mWho=1,h.mInitial)this.mWho=h.mInitial.turn||1,h.mInitial.pieces.forEach(function(e){var m={};for(var h in e)e.hasOwnProperty(h)&&(m[h]=e[h]);b.pieces.push(m)}),h.mInitial.lastMove&&(this.lastMove={f:h.mInitial.lastMove.f,t:h.mInitial.lastMove.t}),void 0!==h.mInitial.noCaptCount&&(this.noCaptCount=h.mInitial.noCaptCount),h.cbVar.castle&&h.mInitial.castle&&(this.castled={1:{k:!!h.mInitial.castle[1]&&!!h.mInitial.castle[1].k,q:!!h.mInitial.castle[1]&&!!h.mInitial.castle[1].q},"-1":{k:!!h.mInitial.castle[-1]&&!!h.mInitial.castle[-1].k,q:!!h.mInitial.castle[-1]&&!!h.mInitial.castle[-1].q}});else for(var g in h.cbVar.pieceTypes)for(var i=h.cbVar.pieceTypes[g],H=i.initial||[],a=0;a<H.length;a++){var R=H[a],C={s:R.s,t:parseInt(g),p:R.p,m:!1};this.pieces.push(C)}if(this.pieces.sort(function(e,m){if(e.s!=m.s)return m.s-e.s;var b=h.cbVar.pieceTypes[e.t].value||100,c=h.cbVar.pieceTypes[m.t].value||100;return b!=c?b-c:e.p-m.p}),this.pieces.forEach(function(e,m){e.i=m,b.board[e.p]=m,h.g.pTypes[e.t].isKing&&(b.kings[e.s]=e.p),b.zSign=h.zobrist.update(b.zSign,"board",m,e.p),b.zSign=h.zobrist.update(b.zSign,"type",e.t,m)}),h.mInitial&&h.mInitial.enPassant){var c=e.geometry.PosByName(h.mInitial.enPassant);if(c>=0){var f,d=e.geometry.C(c),t=e.geometry.R(c);f=1==h.mInitial.turn?e.geometry.POS(d,t-1):e.geometry.POS(d,t+1),this.epTarget={p:c,i:this.board[f]}}}},Model.Board.CopyFrom=function(e){if(m)this.board=new Int16Array(e.board.length),this.board.set(e.board);else{this.board=[];for(var h=e.board,b=h.length,c=0;c<b;c++)this.board.push(h[c])}this.pieces=[];for(var g=e.pieces.length,c=0;c<g;c++){var i=e.pieces[c];this.pieces.push({s:i.s,p:i.p,t:i.t,i:i.i,m:i.m})}this.kings={1:e.kings[1],"-1":e.kings[-1]},this.check=e.check,e.lastMove?this.lastMove={f:e.lastMove.f,t:e.lastMove.t,c:e.lastMove.c}:this.lastMove=null,this.ending={1:e.ending[1],"-1":e.ending[-1]},void 0!==e.castled&&(this.castled={1:e.castled[1],"-1":e.castled[-1]}),this.noCaptCount=e.noCaptCount,e.epTarget?this.epTarget={p:e.epTarget.p,i:e.epTarget.i}:this.epTarget=null,this.mWho=e.mWho,this.zSign=e.zSign},Model.Board.cbApplyCastle=function(e,m,h){var b=e.cbVar.castle[m.f+"/"+m.cg],c=b.r[b.r.length-1],g=this.pieces[this.board[m.cg]],i=b.k[b.k.length-1],H=this.pieces[this.board[m.f]];return h&&(this.zSign=e.zobrist.update(this.zSign,"board",g.i,m.cg),this.zSign=e.zobrist.update(this.zSign,"board",g.i,c),this.zSign=e.zobrist.update(this.zSign,"board",H.i,m.f),this.zSign=e.zobrist.update(this.zSign,"board",H.i,i)),g.p=c,g.m=!0,this.board[m.cg]=-1,H.p=i,H.m=!0,this.board[m.f]=-1,this.board[c]=g.i,this.board[i]=H.i,this.castled[g.s]=!0,this.kings[H.s]=i,[{i:g.i,f:c,t:-1},{i:H.i,f:i,t:m.f,kp:m.f,who:H.s,m:!1},{i:g.i,f:-1,t:m.cg,m:!1,cg:!1}]},Model.Board.cbQuickApply=function(e,m){if(void 0!==m.cg)return this.cbApplyCastle(e,m,!1);var h=[],b=this.board[m.f],c=this.pieces[b];if(null!=m.c){h.unshift({i:m.c,f:-1,t:this.pieces[m.c].p});var g=this.pieces[m.c];this.board[g.p]=-1,g.p=-1}var i=this.kings[c.s];return e.g.pTypes[c.t].isKing&&(this.kings[c.s]=m.t),h.unshift({i:b,f:m.t,t:m.f,kp:i,who:c.s,ty:c.t}),c.p=m.t,void 0!==m.pr&&(c.t=m.pr),this.board[m.f]=-1,this.board[m.t]=b,h},Model.Board.cbQuickUnapply=function(e,m){for(var h=0;h<m.length;h++){var b=m[h],c=this.pieces[b.i];b.f>=0&&(c.p=-1,this.board[b.f]=-1),b.t>=0&&(c.p=b.t,this.board[b.t]=b.i),void 0!==b.m&&(c.m=b.m),void 0!==b.kp&&(this.kings[b.who]=b.kp),void 0!=b.ty&&(c.t=b.ty),void 0!=b.cg&&(this.castled[c.s]=b.cg)}},Model.Board.ApplyMove=function(e,m){var h=this.pieces[this.board[m.f]];if(void 0!==m.cg)this.cbApplyCastle(e,m,!0);else{if(this.zSign=e.zobrist.update(this.zSign,"board",h.i,m.f),this.board[h.p]=-1,void 0!==m.pr&&(this.zSign=e.zobrist.update(this.zSign,"type",h.t,h.i),h.t=m.pr,this.zSign=e.zobrist.update(this.zSign,"type",h.t,h.i)),null!=m.c){var b=this.pieces[m.c];this.zSign=e.zobrist.update(this.zSign,"board",b.i,b.p),this.board[b.p]=-1,b.p=-1,b.m=!0,this.noCaptCount=0}else this.noCaptCount++;h.p=m.t,h.m=!0,this.board[m.t]=h.i,this.zSign=e.zobrist.update(this.zSign,"board",h.i,m.t),e.g.pTypes[h.t].isKing&&(this.kings[h.s]=m.t)}this.check=!!m.ck,this.lastMove={f:m.f,t:m.t,c:m.c},void 0!==m.ko&&(this.ending[h.s]=m.ko),void 0!==m.ept?this.epTarget={p:m.ept,i:h.i}:this.epTarget=null,this.zSign=e.zobrist.update(this.zSign,"who",-this.mWho),this.zSign=e.zobrist.update(this.zSign,"who",this.mWho)},Model.Board.Evaluate=function(h){function b(m){var h=1/0;for(var b in e.geometry.corners)h=Math.min(h,a.distGraph[g.kings[m]][b]);return h-Math.sqrt(a.boardSize)}var c="debug"==arguments[3],g=this;this.mEvaluation=0;var i,H=this.mWho,a=h.g;if(m)i={1:{count:new Uint8Array(a.pTypes.length),byType:{}},"-1":{count:new Uint8Array(a.pTypes.length),byType:{}}};else{i={1:{count:[],byType:{}},"-1":{count:[],byType:{}}};for(var R=0;R<a.pTypes.length;R++)i[1].count[R]=i[-1].count[R]=0}if(h.mOptions.preventRepeat&&h.GetRepeatOccurence(this)>2)return this.mFinished=!0,void(this.mWinner=h.cbOnPerpetual?H*h.cbOnPerpetual:JocGame.DRAW);for(var C={1:0,"-1":0},f={1:a.distGraph[this.kings[-1]],"-1":a.distGraph[this.kings[1]]},d={1:0,"-1":0},t={1:0,"-1":0},r={1:0,"-1":0},x={1:0,"-1":0},n={1:!1,"-1":!1},s=this.pieces,E=s.length,R=0;R<E;R++){var o=s[R];if(o.p>=0){var p=o.s,l=a.pTypes[o.t];l.isKing?n[p]=o.m:C[p]+=l.value,l.castle&&!o.m&&x[p]++,t[p]++,d[p]+=f[p][o.p],r[p]+=e.geometry.distEdge[o.p];var A=i[p];A.count[o.t]++;var u=A.byType;void 0===u[o.t]?u[o.t]=[o]:u[o.t].push(o)}}if(this.lastMove&&null!=this.lastMove.c){var o=this.pieces[this.board[this.lastMove.t]];C[-o.s]+=this.cbStaticExchangeEval(h,o.p,o.s,{piece:o})}var v={1:0,"-1":0},G={1:0,"-1":0},M={1:0,"-1":0};this.ending[1]&&(G[1]=(d[1]-Math.sqrt(a.boardSize))/t[1],e.geometry.corners&&(M[1]=b(1))),this.ending[-1]&&(G[-1]=(d[-1]-Math.sqrt(a.boardSize))/t[-1],e.geometry.corners&&(M[1]=b(-1)));var y={pieceValue:C[1]-C[-1],pieceValueRatio:(C[1]-C[-1])/(C[1]+C[-1]+1),posValue:r[1]-r[-1],averageDistKing:d[1]/t[1]-d[-1]/t[-1],check:this.check?-H:0,endingKingFreedom:v[1]-v[-1],endingDistKing:G[1]-G[-1],distKingCorner:M[1]-M[-1]};e.castle&&(y.castle=(this.castled[1]?1:n[1]?0:x[1]/(a.castleablePiecesCount[1]+1))-(this.castled[-1]?1:n[-1]?0:x[-1]/(a.castleablePiecesCount[-1]+1))),e.evaluate&&e.evaluate.call(this,h,y,i);var S=h.mOptions.levelOptions;for(var K in y){var k=y[K],T=S[K+"Factor"]||0,z=k*T;c&&console.log(K,"=",k,"*",T,"=>",z),this.mEvaluation+=z}c&&console.log("Evaluation",this.mEvaluation)},Model.Board.cbGeneratePseudoLegalMoves=function(e){function m(m,c){var g=e.cbVar.promote;if(!g)return void b.push(c);var i=g.call(h,e,m,c);if(null!=i)if(0==i.length)b.push(c);else if(1==i.length)c.pr=i[0],b.push(c);else for(var H=0;H<i.length;H++){var a=i[H];b.push({f:c.f,t:c.t,c:c.c,pr:a,ept:c.ept,ep:c.ep,a:c.a})}}for(var h=this,b=[],c=e.cbVar,g=this.mWho,i=!c.castle||this.check||this.castled[g]?null:[],H=-1,a=this.pieces.length,R=0;R<a;R++){var C=this.pieces[R];if(!(C.p<0||C.s!=g)){var f=e.g.pTypes[C.t];f.isKing&&(C.m?i=null:H=C),i&&f.castle&&!C.m&&i.push(C);var d,t;d=f.graph[C.p],t=d.length;for(var r=0;r<t;r++)for(var x=d[r],n=!1,s=x.length,E=null,o=0;o<s;o++){var p=x[o],l=65535&p,A=this.board[l];if(!(A<0)||f.epCatch&&this.epTarget&&this.epTarget.p==l){if(!(524288&p)){var u;u=A<0?this.pieces[this.epTarget.i]:this.pieces[A],!(u.s!=C.s&&131072&p)||1048576&p&&!e.g.pTypes[u.t].isKing||2097152&p&&e.g.pTypes[u.t].isKing||m(C,{f:C.p,t:l,c:u.i,a:f.abbrev,ep:A<0});break}if(n){var u=this.pieces[A];u.s!=C.s&&m(C,{f:C.p,t:l,c:u.i,a:f.abbrev});break}n=!0}else 65536&p&&0==n&&m(C,{f:C.p,t:l,c:null,a:f.abbrev,ept:null!=E&&f.epTarget?E:void 0});E=l}}}if(i)for(var R=0;R<i.length;R++){var v=i[R],G=e.cbVar.castle[H.p+"/"+v.p];if(G){for(var M=!0,r=0;r<G.r.length;r++){var y=G.r[r];if(this.board[y]>=0&&y!=H.p&&y!=v.p){M=!1;break}}if(M){for(var S=!0,r=0;r<G.k.length;r++){var y=G.k[r];if(this.board[y]>=0&&y!=v.p&&y!=H.p||this.cbGetAttackers(e,y,g).length>0){S=!1;break}}S&&b.push({f:H.p,t:G.k[G.k.length-1],c:null,cg:v.p})}}}return b},Model.Board.cbStaticExchangeEval=function(e,m,h,b){var c=0,g=this.cbGetSmallestAttacker(e,m,h);if(g){var i=this.mWho;this.mWho=g.s;var H=this.cbQuickApply(e,{f:g.p,t:m,c:b.piece.i}),a=e.g.pTypes[b.piece.t].value;b.piece=g,c=Math.max(0,a-this.cbStaticExchangeEval(e,m,-h,b)),this.cbQuickUnapply(e,H),this.mWho=i}return c},Model.Board.cbGetSmallestAttacker=function(e,m,h){var b=this.cbGetAttackers(e,m,h);if(0==b.length)return null;for(var c=1/0,g=null,i=b.length,H=0;H<i;H++){var a=b[H],R=e.g.pTypes[a.t].value;R<c&&(c=R,g=a)}return g},Model.Board.cbCollectAttackers=function(e,m,h,b){for(var c in m){var g=m[c],i=this.board[c];if(i<0)this.cbCollectAttackers(e,g.e,h,b);else{var H=this.pieces[i];H.s==-e&&(g.t&&H.t in g.t||b&&g.tk&&H.t in g.tk)&&h.push(H)}}},Model.Board.cbCollectAttackersScreen=function(e,m,h,b,c){for(var g in m){var i=m[g],H=this.board[g];if(H<0)this.cbCollectAttackersScreen(e,i.e,h,b,c);else{var a=this.pieces[H];!c&&a.s==-e&&(i.t&&a.t in i.t||b&&i.tk&&a.t in i.tk)?h.push(a):c?c&&a.s==-e&&i.ts&&a.t in i.ts&&h.push(a):this.cbCollectAttackersScreen(e,i.e,h,b,!0)}}},Model.Board.cbGetAttackers=function(e,m,h,b){var c=[];return e.cbUseScreenCapture?this.cbCollectAttackersScreen(h,e.g.threatGraph[h][m],c,b,!1):this.cbCollectAttackers(h,e.g.threatGraph[h][m],c,b),c},Model.Board.GenerateMoves=function(e){var m=this.cbGeneratePseudoLegalMoves(e);this.mMoves=[];for(var h=!0,b=this.kings[this.mWho],c=m.length,g=0;g<c;g++){var i=m[g],H=this.cbQuickApply(e,i);if(!(this.cbGetAttackers(e,this.kings[this.mWho],this.mWho,!0).length>0)){var a=this.cbGetAttackers(e,this.kings[-this.mWho],-this.mWho,!0).length>0;i.ck=a,this.mMoves.push(i),i.f!=b&&(h=!1)}this.cbQuickUnapply(e,H)}if(0==this.mMoves.length)this.mFinished=!0,this.mWinner=e.cbOnStaleMate?e.cbOnStaleMate*this.mWho:JocGame.DRAW,this.check&&(this.mWinner=-this.mWho);else if(this.ending[this.mWho]){if(!h)for(var g=0;g<this.mMoves.length;g++)this.mMoves[g].ko=!1}else if(!this.ending[this.mWho]&&h&&!this.check)for(var g=0;g<this.mMoves.length;g++)this.mMoves[g].ko=!0},Model.Board.GetSignature=function(){return this.zSign},Model.Move.Init=function(e){for(var m in e)e.hasOwnProperty(m)&&(this[m]=e[m])},Model.Move.Equals=function(e){return this.f==e.f&&this.t==e.t&&this.pr==e.pr},Model.Move.CopyFrom=function(e){this.Init(e)},Model.Move.ToString=function(m){var h=this;switch(m=m||"natural"){case"natural":return function(){var m;if(void 0!==h.cg?m=e.castle[h.f+"/"+h.cg].n:(m=h.a||"",m+=e.geometry.PosName(h.f),null==h.c?m+="-":m+="x",m+=e.geometry.PosName(h.t)),void 0!==h.pr){var b=e.pieceTypes[h.pr];b&&b.abbrev&&b.abbrev.length>0&&!b.silentPromo&&(m+="="+b.abbrev)}return h.ck&&(m+="+"),m}();case"engine":return function(){var m=e.geometry.PosName(h.f)+e.geometry.PosName(h.t);if(void 0!=h.pr){var b=e.pieceTypes[h.pr];b&&b.abbrev&&b.abbrev.length>0&&!b.silentPromo&&(m+=b.abbrev)}return m}();default:return"??"}},Model.Board.CompactMoveString=function(m,h,b){"function"!=typeof h.ToString&&(h=m.CreateMove(h));var c=h.ToString(),g=/^([A-Z]?)([a-z])([1-9][0-9]*)([-x])([a-z])([1-9][0-9]*)(.*?)$/.exec(c);if(!g)return c;var i=g[7];if(b||(b={}),b.value||(b.value=[]),0==b.value.length){var H=this.mMoves;this.mMoves&&0!=this.mMoves.length||this.GenerateMoves(m);for(var a=0;a<this.mMoves.length;a++){var R=this.mMoves[a];"function"!=typeof R.ToString&&(R=m.CreateMove(R)),b.value.push({str:R.ToString(),move:R})}this.mMoves=H}var C=[];if(b.value.forEach(function(e){var m=/^([A-Z]?[a-z][1-9][0-9]*[-x][a-z][1-9][0-9]*)(.*?)$/.exec(e.str);m&&e.move.t==h.t&&(e.move.a||"")==g[1]&&m[2]==i&&C.push(e.move)}),1==C.length)return""==g[1]&&"x"==g[4]?g[2]+"x"+g[5]+g[6]+g[7]:g[1]+("x"==g[4]?"x":"")+g[5]+g[6]+g[7];if(e.geometry.CompactCrit)for(var f="",a=0;;a++){var d=e.geometry.CompactCrit(h.f,a);if(null==d)return c;f+=d;for(var t=[],r=0;r<C.length;r++){var x=C[r];e.geometry.CompactCrit(x.f,a)==d&&t.push(x)}if(console.assert(t.length>0),1==t.length)return g[1]+f+("x"==g[4]?"x":"")+g[5]+g[6]+g[7];C=t}return c},Model.Board.cbIntegrity=function(e){function m(e,m){e||console.error(m)}for(var h=this,b=0;b<this.board.length;b++){var c=this.board[b];if(c>=0){var g=h.pieces[c];m(void 0!==g,"no piece at pos"),m(g.p==b,"piece has different pos")}}for(var c=0;c<this.pieces.length;c++){var g=this.pieces[c];g.p>=0&&m(h.board[g.p]==c,"board index mismatch")}},Model.Board.ExportBoardState=function(e){return e.cbVar.geometry.ExportBoardState?e.cbVar.geometry.ExportBoardState(this,e.cbVar,e.mPlayedMoves.length):"not supported"},Model.Game.Import=function(m,h){var b,c=[],g={1:{},"-1":{}},i=null,H=0;if("pjn"==m){var a={status:!1,error:"parse"},R=h.split(" ");if(6!=R.length)return console.warn("FEN should have 6 parts"),a;var C=R[0].split("/"),f=e.geometry.fenHeight||e.geometry.height;if(C.length!=f)return console.warn("FEN board should have",f,"rows, got",C.length),a;var d={};for(var t in e.pieceTypes){var r=e.pieceTypes[t],x=r.fenAbbrev||r.abbrev||"X";d[x.toUpperCase()]={s:1,t:t},d[x.toLowerCase()]={s:-1,t:t}}var n=e.geometry.FenRowPos||function(m,h){return(e.geometry.height-1-m)*e.geometry.width+h};if(C.forEach(function(m,h){for(var b=0,g=0;g<m.length;g++){var i=m.substr(g,1),H=d[i];if(void 0!==H){var R=n(h,b);b++;for(var C={s:H.s,t:H.t,p:R},f=!0,t=e.pieceTypes[C.t].initial||[],r=0;r<t.length;r++){var x=t[r];x.s==C.s&&x.p==R&&(f=!1)}C.m=f,c.push(C)}else{if(isNaN(parseInt(i)))return console.warn("FEN invalid board spec",i),a;b+=parseInt(i)}}}),c.sort(function(e,m){return m.s-e.s}),"w"==R[1])b=1;else{if("b"!=R[1])return console.warn("FEN invalid turn spec",R[1]),a;b=-1}g[1].k=R[2].indexOf("K")>=0,g[1].q=R[2].indexOf("Q")>=0,g[-1].k=R[2].indexOf("k")>=0,g[-1].q=R[2].indexOf("q")>=0,i="-"==R[3]?null:R[3];var s=parseInt(R[4]);isNaN(s)||(H=s);var E={pieces:c,turn:b,castle:g,enPassant:i,noCaptCount:H};return e.importGame&&e.importGame.call(this,E,m,h),{status:!0,initial:E}}return{status:!1,error:"unsupported"}}}(),function(){Model.Game.cbBoardGeometryGrid=function(e,m){function h(m){return m%e}function b(m){return Math.floor(m/e)}function c(m,h){return h*e+m}function g(g,i){var H=h(g),a=b(g),R=H+i[0],C=a+i[1];return R<0||R>=e||C<0||C>=m?null:c(R,C)}function i(e){return String.fromCharCode("a".charCodeAt(0)+h(e))+(b(e)+1)}function H(e){var m=/^([a-z])([0-9]+)$/.exec(e);return m?c(m[1].charCodeAt(0)-"a".charCodeAt(0),parseInt(m[2])-1):-1}function a(e,m){return 0==m?String.fromCharCode("a".charCodeAt(0)+h(e)):1==m?b(e)+1:null}function R(){for(var c=[],g=0;g<e*m;g++){var i=[];c.push(i);for(var H=0;H<e*m;H++){var a=b(g),R=h(g),C=b(H),f=h(H);i.push(Math.max(Math.abs(a-C),Math.abs(R-f)))}}return c}function C(h,b,g){for(var H=[],a=m-1;a>=0;a--){for(var R="",C=0,f=0;f<e;f++){var d=h.board[c(f,a)];if(d<0)C++;else{C>0&&(R+=C,C=0);var t=h.pieces[d],r=b.pieceTypes[t.t].fenAbbrev||b.pieceTypes[t.t].abbrev||"?";-1==t.s?R+=r.toLowerCase():R+=r.toUpperCase()}}C&&(R+=C),H.push(R)}var x=H.join("/");x+=" ",1==h.mWho?x+="w":x+="b",x+=" ";var n="";return h.castled&&(!1===h.castled[1]?n+="KQ":(h.castled[1].k&&(n+="K"),h.castled[1].q&&(n+="Q")),!1===h.castled[-1]?n+="kq":(h.castled[-1].k&&(n+="k"),h.castled[-1].q&&(n+="q"))),0==n.length&&(n="-"),x+=n,x+=" ",h.epTarget?x+=i(h.epTarget.p):x+="-",x+=" ",x+=h.noCaptCount,x+=" ",x+=Math.floor(g/2)+1}return{boardSize:e*m,width:e,height:m,C:h,R:b,POS:c,Graph:g,PosName:i,PosByName:H,CompactCrit:a,GetDistances:R,distEdge:function(){for(var c=[],g=0;g<e*m;g++){var i=h(g),H=b(g);c[g]=Math.min(i,Math.abs(e-i-1),H,Math.abs(m-H-1))}return c}(),corners:function(){var h={};return h[c(0,0)]=1,h[c(0,m-1)]=1,h[c(e-1,0)]=1,h[c(e-1,m-1)]=1,h}(),ExportBoardState:C}},Model.Game.cbPawnGraph=function(e,m,h){for(var b=this,c={},g=0;g<e.boardSize;g++)if(!h||g in h){var i=[],H=e.Graph(g,[0,m]);null!=H&&(!h||H in h)&&i.push(b.cbTypedArray([H|b.cbConstants.FLAG_MOVE])),[-1,1].forEach(function(c){var H=e.Graph(g,[c,m]);null!=H&&(!h||H in h)&&i.push(b.cbTypedArray([H|b.cbConstants.FLAG_CAPTURE]))}),c[g]=i}else c[g]=[];return c},Model.Game.cbInitialPawnGraph=function(e,m,h){for(var b=this,c={},g=0;g<e.boardSize;g++)if(!h||g in h){var i=[],H=e.Graph(g,[0,m]);if(null!=H&&(!h||H in h)){var a=[H|b.cbConstants.FLAG_MOVE],R=e.Graph(H,[0,m]);null!=R&&(!h||R in h)&&a.push(R|b.cbConstants.FLAG_MOVE),i.push(b.cbTypedArray(a))}[-1,1].forEach(function(c){var H=e.Graph(g,[c,m]);null!=H&&(!h||H in h)&&i.push(b.cbTypedArray([H|b.cbConstants.FLAG_CAPTURE]))}),c[g]=i}else c[g]=[];return c},Model.Game.cbKingGraph=function(e,m){return this.cbShortRangeGraph(e,[[-1,-1],[-1,0],[-1,1],[0,-1],[0,1],[1,-1],[1,0],[1,1]],m)},Model.Game.cbKnightGraph=function(e,m){return this.cbShortRangeGraph(e,[[2,-1],[2,1],[-2,-1],[-2,1],[-1,2],[-1,-2],[1,2],[1,-2]],m)},Model.Game.cbHorseGraph=function(e){for(var m=this,h={},b=0;b<e.boardSize;b++)h[b]=[],[[1,0,2,-1],[1,0,2,1],[-1,0,-2,-1],[-1,0,-2,1],[0,1,-1,2],[0,-1,-1,-2],[0,1,1,2],[0,-1,1,-2]].forEach(function(c){var g=e.Graph(b,[c[0],c[1]]);if(null!=g){var i=e.Graph(b,[c[2],c[3]]);null!=i&&h[b].push(m.cbTypedArray([g|m.cbConstants.FLAG_STOP,i|m.cbConstants.FLAG_MOVE|m.cbConstants.FLAG_CAPTURE]))}});return h},Model.Game.cbRookGraph=function(e,m){return this.cbLongRangeGraph(e,[[0,-1],[0,1],[-1,0],[1,0]],m)},Model.Game.cbBishopGraph=function(e,m){return this.cbLongRangeGraph(e,[[1,-1],[1,1],[-1,1],[-1,-1]],m)},Model.Game.cbQueenGraph=function(e,m){return this.cbLongRangeGraph(e,[[0,-1],[0,1],[-1,0],[1,0],[1,-1],[1,1],[-1,1],[-1,-1]],m)},Model.Game.cbXQGeneralGraph=function(e,m){for(var h=this,b={},c=0;c<e.boardSize;c++)b[c]=[],[[-1,0,!1],[0,-1,!0],[0,1,!0],[1,0,!1]].forEach(function(g){var i=[],H=e.Graph(c,g);if(null!=H&&((!m||H in m)&&i.push(H|h.cbConstants.FLAG_MOVE|h.cbConstants.FLAG_CAPTURE),g[2]))for(var a=e.Graph(H,g);null!=a;)!m||a in m?i.push(a|h.cbConstants.FLAG_CAPTURE|h.cbConstants.FLAG_CAPTURE_KING):i.push(a|h.cbConstants.FLAG_STOP),a=e.Graph(a,g);i.length>0&&b[c].push(h.cbTypedArray(i))});return b},Model.Game.cbXQSoldierGraph=function(e,m){return this.cbShortRangeGraph(e,[[0,m]])},Model.Game.cbXQPromoSoldierGraph=function(e,m){return this.cbShortRangeGraph(e,[[0,m],[-1,0],[1,0]])},Model.Game.cbXQAdvisorGraph=function(e,m){return this.cbShortRangeGraph(e,[[1,1],[-1,1],[1,-1],[-1,-1]],m)},Model.Game.cbXQCannonGraph=function(e){return this.cbLongRangeGraph(e,[[0,-1],[0,1],[-1,0],[1,0]],null,this.cbConstants.FLAG_MOVE|this.cbConstants.FLAG_SCREEN_CAPTURE)},Model.Game.cbXQElephantGraph=function(e,m){for(var h=this,b={},c=0;c<e.boardSize;c++)b[c]=[],(!m||c in m)&&[[1,1,2,2],[1,-1,2,-2],[-1,1,-2,2],[-1,-1,-2,-2]].forEach(function(g){var i=e.Graph(c,[g[0],g[1]]);if(null!=i){var H=e.Graph(c,[g[2],g[3]]);null!=H&&(!m||H in m)&&b[c].push(h.cbTypedArray([i|h.cbConstants.FLAG_STOP,H|h.cbConstants.FLAG_MOVE|h.cbConstants.FLAG_CAPTURE]))}});return b},Model.Game.cbSilverGraph=function(e,m){return this.cbShortRangeGraph(e,[[0,m],[-1,-1],[-1,1],[1,-1],[1,1]])},Model.Game.cbFersGraph=function(e,m){return this.cbShortRangeGraph(e,[[-1,-1],[-1,1],[1,-1],[1,1]])},Model.Game.cbSchleichGraph=function(e,m){return this.cbShortRangeGraph(e,[[-1,0],[1,0],[0,-1],[0,1]])},Model.Game.cbAlfilGraph=function(e,m){return this.cbShortRangeGraph(e,[[-2,-2],[-2,2],[2,2],[2,-2]])}}(),function(){var e=Model.Game.cbBoardGeometryGrid(9,10);e.ADVISOR_AREA={3:1,5:1,13:1,21:1,23:1,66:1,68:1,76:1,84:1,86:1},e.ELEPHANT_AREA={1:{2:1,6:1,18:1,22:1,26:1,38:1,42:1},"-1":{83:1,87:1,63:1,67:1,71:1,47:1,51:1}},e.GENERAL_AREA={3:1,4:1,5:1,12:1,13:1,14:1,21:1,22:1,23:1,84:1,85:1,86:1,75:1,76:1,77:1,66:1,67:1,68:1},Model.Game.cbOnPerpetual=1,Model.Game.cbOnStaleMate=1,Model.Game.cbDefine=function(){return{geometry:e,pieceTypes:{0:{name:"pawn-w",aspect:"xq-pawn",graph:this.cbXQPromoSoldierGraph(e,1),abbrev:"",value:2,fenAbbrev:"P"},1:{name:"pawn-b",aspect:"xq-pawn",graph:this.cbXQPromoSoldierGraph(e,-1),abbrev:"",value:2,fenAbbrev:"P"},2:{name:"ipawn-w",aspect:"xq-pawn",graph:this.cbXQSoldierGraph(e,1),abbrev:"",value:1,fenAbbrev:"P",initial:[{s:1,p:27},{s:1,p:29},{s:1,p:31},{s:1,p:33},{s:1,p:35}]},3:{name:"ipawn-b",aspect:"xq-pawn",graph:this.cbXQSoldierGraph(e,-1),abbrev:"",value:1,fenAbbrev:"P",initial:[{s:-1,p:54},{s:-1,p:56},{s:-1,p:58},{s:-1,p:60},{s:-1,p:62}]},4:{name:"cannon",aspect:"xq-cannon",graph:this.cbXQCannonGraph(e),abbrev:"C",value:4.5,initial:[{s:1,p:19},{s:1,p:25},{s:-1,p:64},{s:-1,p:70}]},5:{name:"chariot",aspect:"xq-chariot",graph:this.cbRookGraph(e),abbrev:"R",value:9,initial:[{s:1,p:0},{s:1,p:8},{s:-1,p:81},{s:-1,p:89}]},6:{name:"horse",aspect:"xq-horse",graph:this.cbHorseGraph(e),abbrev:"H",value:4,initial:[{s:1,p:1},{s:1,p:7},{s:-1,p:82},{s:-1,p:88}]},7:{name:"elephant-w",aspect:"xq-elephant",graph:this.cbXQElephantGraph(e,e.ELEPHANT_AREA[1]),abbrev:"E",value:2,initial:[{s:1,p:2},{s:1,p:6}]},8:{name:"elephant-b",aspect:"xq-elephant",graph:this.cbXQElephantGraph(e,e.ELEPHANT_AREA[-1]),abbrev:"E",value:2,initial:[{s:-1,p:83},{s:-1,p:87}]},9:{name:"advisor",aspect:"xq-advisor",graph:this.cbXQAdvisorGraph(e,e.ADVISOR_AREA),abbrev:"A",value:2,initial:[{s:1,p:3},{s:1,p:5},{s:-1,p:84},{s:-1,p:86}]},10:{name:"general",aspect:"xq-general",isKing:!0,graph:this.cbXQGeneralGraph(e,e.GENERAL_AREA),abbrev:"K",initial:[{s:1,p:4},{s:-1,p:85}]}},promote:function(e,m,h){return 2==m.t&&h.t>=45?[0]:3==m.t&&h.t<45?[1]:[]}}},Model.Board.CompactMoveString=function(m,h){function b(e){return c.mWho>0?9-e:e+1}var c=this,g={0:"P",1:"P",2:"P",3:"P",4:"C",5:"R",6:"H",7:"E",8:"E",9:"A",10:"K"},i=function(m){var h=c.pieces[c.board[m.f]],i=g[h.t],H=i,a=e.C(m.f),R=e.C(m.t),C=e.R(m.f),f=e.R(m.t),d=[];return c.pieces.forEach(function(m){m.p>=0&&m.s==c.mWho&&g[m.t]==i&&e.C(m.p)==a&&d.push(m)}),d.sort(function(m,h){return(e.R(m.p)-e.R(h.p))*c.mWho}),1==d.length?H+=b(a):2==d.length?d[0]==h?H+="+":H+="-":3==d.length?d[0]==h?H+="+":d[1]==h?H+=b(a):H+="-":4==d.length?d[0]==h?H="++":d[1]==h?H+="+":d[2]==h?H+="-":H="--":5==d.length&&(d[0]==h?H="++":d[1]==h?H+="+":d[2]==h?H+=b(a):d[3]==h?H+="-":H="--"),C==f?H+="."+b(R):((f-C)*c.mWho>0?H+="+":H+="-",a!=R?H+=b(R):(c.mWho,H+=Math.abs(f-C))),H}(h),H=this.pieces[this.board[h.f]];if("P"==g[H.t]&&e.R(h.f)==e.R(h.t)){var a={};this.pieces.forEach(function(m){if(m.p>=0&&m.s==c.mWho&&"P"==g[m.t]){var h=e.C(m.p);void 0===a[h]?a[h]=1:a[h]++}});var R=0;for(var C in a)a[C]>1&&R++;R>1&&(i=b(e.C(h.f))+i.substr(1))}return i},Model.Move.ToString=function(e){function m(e){var m=e%9,h=(e-m)/9;return String.fromCharCode("a".charCodeAt(0)+m)+h}var h=this;return m(h.f)+m(h.t)}}(),Model.Board.StaticGenerateMoves=function(e){return this.PickMoveFromDatabase(e,this.MoveDatabase)},Model.Board.MoveDatabase={"1#262583924":[{m:"Ch3-h7",e:10},{m:"Ch3-g3",e:10},{m:"Hb1-a3",e:10},{m:"Cb3-f3",e:10},{m:"c4-c5",e:10},{m:"Cb3-e3",e:10},{m:"Cb3-a3",e:10},{m:"Cb3-c3",e:10},{m:"Hb1-c3",e:10},{m:"Eg1-e3",e:10},{m:"i4-i5",e:10},{m:"Cb3-g3",e:10},{m:"g4-g5",e:10},{m:"Hh1-g3",e:10},{m:"Hh1-i3",e:10},{m:"Af1-e2",e:10},{m:"Ch3-d3",e:10},{m:"Ch3-e3",e:10},{m:"Ch3-i3",e:10},{m:"Ec1-e3",e:10},{m:"Ch3-h5",e:10},{m:"Ch3-f3",e:10},{m:"Cb3-d3",e:10},{m:"a4-a5",e:10},{m:"Ad1-e2",e:10},{m:"Ch3-c3",e:10}],"-1#2073307342":[{m:"Hh10-g8",e:6.667},{m:"g7-g6",e:6.667}],"1#-1186147453":[{m:"Hh1-g3",e:5}],"-1#-151945653":[{m:"g7-g6",e:5}],"1#-2085910218":[{m:"Ch7-g7",e:5}],"-1#-1937696873":[{m:"Ri10-h10",e:5}],"1#-692032922":[{m:"Ri1-h1",e:5}],"-1#-597872298":[{m:"Ec10-e8",e:5}],"1#-254856779":[{m:"Rh1-h5",e:5}],"-1#1610923805":[{m:"Ch8-i8",e:5}],"1#1575345646":[{m:"Rh5xh10",e:5}],"-1#897675454":[{m:"Hg8xh10",e:5}],"1#1776569175":[{m:"Cb3-e3",e:5}],"-1#-1012605747":[{m:"Hb10-d9",e:5}],"1#-913923113":[{m:"Ra1-a2",e:5}],"-1#1086794620":[{m:"Ci8-g8",e:5}],"1#369119284":[{m:"Ra2-d2",e:5}],"-1#-1039887858":[{m:"Ra10-a9",e:5}],"1#-631436465":[{m:"e4-e5",e:5}],"-1#1574104579":[{m:"Hh10-i8",e:5}],"1#-710288897":[{m:"Cg7-f7",e:5}],"-1#377641432":[{m:"g6-g5",e:5}],"1#1863565167":[{m:"e5-e6",e:5}],"-1#-436320062":[{m:"g5xg4",e:5}],"1#-836065713":[{m:"Hg3-e4",e:5}],"-1#760681296":[{m:"e7xe6",e:5}],"1#-809462646":[{m:"Ce3xe6+",e:5}],"-1#827859334":[{m:"Hd9-e7",e:5}],"1#609052724":[{m:"Eg1-e3",e:5}],"-1#-1563136282":[{m:"g4-f4",e:5}],"1#1314254622":[{m:"Cf7xc7",e:5}],"-1#-2123546031":[{m:"Cg8-g7",e:5}],"1#-1014282927":[{m:"He4-c5",e:5}],"-1#1634180010":[{m:"Ra9-c9",e:5}],"1#1170758277":[{m:"Cc7xg7",e:5}],"-1#-684240150":[{m:"Hi8xg7",e:5}],"1#1417013285":[{m:"Rd2-d7",e:5}],"-1#-911585090":[{m:"Hg7-f5",e:5}],"1#-676303166":[{m:"Hc5-b7",e:5}],"-1#-1638137748":[{m:"Rc9xc4",e:5}],"1#65234845":[{m:"Hb1-a3",e:5}],"-1#473816005":[{m:"Rc4-d4",e:5}],"1#424381598":[{m:"Rd7-d8",e:5}],"-1#1329174947":[{m:"Rd4xd8",e:5}],"1#30739704":[{m:"Hb7xd8+",e:5}],"-1#-1072854546":[{m:"Ke10-e9",e:5}],"1#-511593909":[{m:"Hd8-c6",e:5}],"-1#262123663":[{m:"Cb8-a8",e:5}],"1#-962755761":[{m:"a4-a5",e:5}],"-1#-386718205":[{m:"Ke9-f9",e:5}],"1#-1888973421":[{m:"Hc6xa7",e:5}],"-1#-105894962":[{m:"Hf5-d4",e:5}],"1#1640378172":[{m:"Ce6xe8",e:5}],"-1#-1111051954":[{m:"Ca8xa5",e:5}],"1#-1509757421":[{m:"Ad1-e2",e:5}],"-1#-385089773":[{m:"Ca5-a4",e:5}],"1#144462631":[{m:"Ce8-h8",e:5}],"-1#-2070926388":[{m:"He7-g6",e:5}],"1#1134040221":[{m:"Ch8-h2",e:5}],"-1#-1178364511":[{m:"Af10-e9",e:5}],"1#-1251454669":[{m:"Ch2-f2+",e:5}],"-1#450775419":[{m:"Ae9-f8",e:5}],"1#1305978465":[{m:"Ha3-c4",e:5}],"-1#1760513955":[{m:"Ad10-e9",e:5}],"1#-2077329582":[{m:"Ha7-c8",e:5}],"-1#-288315301":[{m:"Kf9-f10",e:5}],"1#-712041316":[{m:"Hc8xe9",e:5}],"-1#-1757409066":[{m:"Ca4-a1+",e:5}],"1#-165831803":[{m:"Ec1-a3",e:5}],"-1#1496600442":[{m:"Hg6-e5",e:5}],"1#-1991270775":[{m:"Hc4-b2",e:5}],"-1#-1144881973":[{m:"Hd4-b3",e:5}],"1#1858708066":[{m:"He9xg10",e:5}],"-1#1820603850":[{m:"He5-c4",e:5}],"1#-2077957128":[{m:"Hg10xf8",e:5}],"-1#2038316223":[{m:"Hc4xa3",e:5}],"1#1280498126":[{m:"Hf8-e6+",e:5}],"-1#-1871679140":[{m:"f4-e4",e:5}],"1#1297562669":[{m:"He6-d8",e:5}],"-1#1742861911":[{m:"Hb3-d4",e:5}],"1#-1293276930":[],"1#248438707":[{m:"c4-c5",e:5}],"-1#-1042422981":[{m:"Ch8-e8",e:5}],"1#-1565224448":[{m:"Hh1-g3",e:5}],"-1#-318160952":[{m:"Cb8-c8",e:5}],"1#1643607466":[{m:"Ec1-e3",e:5}],"-1#-753820797":[{m:"Hb10-a8",e:5}],"1#-1719215231":[{m:"Hb1-d2",e:5}],"-1#1270991492":[{m:"Ri10-i9",e:5}],"1#174792416":[{m:"Ra1-b1",e:5}],"-1#1019735580":[{m:"Ra10-a9",e:5}],"1#614365021":[{m:"Ri1-h1",e:5}],"-1#771959917":[{m:"Ra9-d9",e:5}],"1#1100165582":[{m:"Hd2-f3",e:5}],"-1#1052324320":[{m:"Ce8xe4+",e:5}],"1#-25467127":[{m:"Af1-e2",e:5}],"-1#-1507684925":[{m:"Rd9-d5",e:5}],"1#1215810918":[{m:"Ch7-h5",e:5}],"-1#1372007086":[{m:"Ce4-f4",e:5}],"1#1997931650":[{m:"Cb3-b5",e:5}],"-1#1079989308":[{m:"Ri9-b9",e:5}],"1#20736499":[{m:"Cb5xd5",e:5}],"-1#1136235406":[{m:"Rb9xb1",e:5}],"1#-1817871678":[{m:"Ch5-e5+",e:5}],"-1#-733050407":[{m:"Eg10-e8",e:5}],"1#387167526":[{m:"Rh1xh10",e:5}],"-1#1407218187":[{m:"e7-e6",e:5}],"1#-248379524":[{m:"Ce5-h5",e:5}],"-1#-1227230105":[{m:"e6-e5",e:5}],"1#1511649491":[{m:"Cd5-d7",e:5}],"-1#1157670705":[{m:"Ad10-e9",e:5}],"1#-1446928448":[{m:"Cd7-e7",e:5}],"-1#-746133298":[{m:"Cf4-e4",e:5}],"1#-178796830":[{m:"Ce7xe4",e:5}],"-1#1892456024":[{m:"e5xe4",e:5}],"1#-1838986100":[{m:"Hf3-e5",e:5}],"-1#1994763325":[{m:"e4-f4",e:5}],"1#1087145488":[{m:"He5-f7",e:5}],"-1#210767394":[{m:"Cc8-c9",e:5}],"1#-651017971":[{m:"Ch5-e5",e:5}],"-1#-1629900266":[{m:"Rb1-b6",e:5}],"1#205583026":[{m:"c5-c6",e:5}],"-1#1671111694":[{m:"c7xc6",e:5}],"1#-235538270":[{m:"Hf7xe9",e:5}],"-1#-1244646448":[{m:"Ke10-d10",e:5}],"1#-869886295":[{m:"Rh10xf10+",e:5}],"-1#-799071231":[{m:"Kd10-d9",e:5}],"1#-160020958":[{m:"Rf10xf4",e:5}],"-1#-352258597":[{m:"Rb6-b8",e:5}],"1#131307030":[{m:"He9-g8",e:5}],"-1#-696389379":[{m:"Rb8-d8",e:5}],"1#1467627920":[{m:"Hg8-f10+",e:5}],"-1#-553730412":[{m:"Kd9-d10",e:5}],"1#-120070985":[{m:"Rf4-f9",e:5}],"-1#-1038648707":[{m:"Rd8-d5",e:5}],"1#2128600224":[{m:"Ce5-e4",e:5}],"-1#1477918374":[{m:"Rd5-d4",e:5}],"1#605585675":[{m:"Rf9-e9",e:5}],"-1#-1577696470":[{m:"Ee8-g10",e:5}],"1#1655406549":[{ m:"g4-g5",e:5}],"-1#778078520":[{m:"g6xg5",e:5}],"1#-1264303857":[{m:"Ee3xg5",e:5}],"-1#-248457905":[{m:"Rd4-d5",e:5}],"1#-1925223710":[{m:"Ce4-e3",e:5}],"-1#-620131479":[{m:"c6-c5",e:5}],"1#1428398344":[{m:"Hg3-e4",e:5}],"-1#-1235348457":[{m:"Eg10-e8",e:5}],"1#1963141352":[{m:"He4-f6",e:5}],"-1#1020382087":[{m:"Rd5-e5",e:5}],"1#-1738161821":[{m:"Re9-d9+",e:5}],"-1#440557935":[{m:"Kd10-e10",e:5}],"1#1672791062":[{m:"Hf10xe8",e:5}],"-1#1679634090":[{m:"c5-d5",e:5}],"1#-1323044448":[{m:"He8-g9+",e:5}],"-1#-1040683934":[{m:"Ke10-f10",e:5}],"1#-1129297776":[{m:"Ce3-f3+",e:5}],"-1#-559505220":[{m:"Re5-f5",e:5}],"1#-2137782022":[{m:"Hf6-e8+",e:5}],"-1#2044181777":[],"-1#291023442":[{m:"c7-c6",e:8},{m:"Ch8-e8",e:8},{m:"Hh10-i8",e:8}],"1#-767602327":[{m:"Eg1-e3",e:5}],"-1#1420187579":[{m:"Hb10-c8",e:5}],"1#1169573127":[{m:"Hb1-a3",e:5}],"-1#1516829023":[{m:"Hh10-i8",e:5}],"1#-770453853":[{m:"Ra1-a2",e:5}],"-1#1532118536":[{m:"Ri10-h10",e:5}],"1#18037753":[{m:"Ra2-d2",e:5}],"-1#-719849021":[{m:"Ec10-e8",e:5}],"1#-108660448":[{m:"Hh1-f2",e:5}],"-1#-808436815":[{m:"Ad10-e9",e:5}],"1#588317504":[{m:"Ri1-h1",e:5}],"-1#697063536":[{m:"Ch8-h4",e:5}],"1#201679642":[{m:"g4-g5",e:5}],"-1#1087280631":[{m:"i7-i6",e:5}],"1#1327717160":[{m:"Rd2-d7",e:5}],"-1#-755178573":[{m:"Ra10-d10",e:5}],"1#349364953":[{m:"Rd7-c7",e:5}],"-1#623918355":[{m:"Ch4xc4",e:5}],"1#-599193701":[{m:"Rh1xh10",e:5}],"-1#960172818":[{m:"Cc4xc7",e:5}],"1#-250681971":[{m:"Rh10-h2",e:5}],"-1#331618033":[{m:"Rd10-d2",e:5}],"1#355047200":[{m:"Cb3-c3",e:5}],"-1#532788281":[{m:"Cc7xc3",e:5}],"1#-1053561277":[{m:"Cg3xc3",e:5}],"-1#-1413808287":[{m:"Hc8-d6",e:5}],"1#-2130160414":[{m:"a4-a5",e:5}],"-1#-1352207954":[{m:"Hd6xe4",e:5}],"1#-1377185405":[{m:"Cc3-d3",e:5}],"-1#243127500":[{m:"c6-c5",e:5}],"1#-2141716819":[{m:"Rh2-h4",e:5}],"-1#-533470568":[{m:"He4-f6",e:5}],"1#-1729268500":[{m:"Ad1-e2",e:5}],"-1#-672897556":[{m:"Cb8-b6",e:5}],"1#437245139":[{m:"Ee3xc5",e:5}],"-1#719970781":[{m:"Cb6-e6+",e:5}],"1#933917811":[{m:"Cd3-e3",e:5}],"-1#-207429826":[{m:"Ke10-d10",e:5}],"1#-1974175161":[{m:"Hf2-e4",e:5}],"-1#281124865":[{m:"Rd2-d4",e:5}],"1#243044099":[{m:"Rh4-f4",e:5}],"-1#-1251833565":[{m:"Rd4xe4",e:5}],"1#-646282225":[{m:"Rf4xf6",e:5}],"-1#-1077126180":[{m:"Re4-d4",e:5}],"1#-59428291":[{m:"Rf6xe6",e:5}],"-1#137424360":[{m:"e7xe6",e:5}],"1#1390047891":[{m:"Ha3-b5",e:5}],"-1#1451117546":[{m:"Hi8-h6",e:5}],"1#-2129367084":[{m:"Hb5xa7",e:5}],"-1#-1752206275":[{m:"Hh6xi4",e:5}],"1#-437740110":[{m:"Ce3-d3+",e:5}],"-1#568342271":[{m:"Kd10-e10",e:5}],"1#1477874566":[{m:"Ha7-c8",e:5}],"-1#-692468570":[{m:"e6-e5",e:5}],"1#981057554":[{m:"a5-a6",e:5}],"-1#-1693052658":[{m:"Hi4xg5",e:5}],"1#961642341":[{m:"a6-a7",e:5}],"-1#-286498789":[{m:"e5-e4",e:5}],"1#1440855194":[{m:"a7-b7",e:5}],"-1#658940586":[{m:"g7-g6",e:5}],"1#1377588695":[{m:"b7-b8",e:5}],"-1#787620143":[{m:"Rd4-b4",e:5}],"1#903436782":[{m:"b8-a8",e:5}],"-1#1784382153":[{m:"Rb4-b1",e:5}],"1#465321332":[{m:"Ec5-a3",e:5}],"-1#1382575551":[{m:"Hg5-e6",e:5}],"1#-1242501424":[{m:"Hc8-d6",e:5}],"-1#-1905576064":[{m:"e4-d4",e:5}],"1#265026150":[{m:"Cd3-f3",e:5}],"-1#-1274507658":[{m:"g6-g5",e:5}],"1#-845584191":[{m:"Cf3-f9",e:5}],"-1#-1541866526":[{m:"Ee8-c6",e:5}],"1#767601212":[{m:"a8-a9",e:5}],"-1#-2059591608":[{m:"Rb1-b8",e:5}],"1#8524293":[{m:"Cf9-f3",e:5}],"-1#1761837350":[{m:"Rb8-d8",e:5}],"1#904526971":[{m:"Cf3-g3",e:5}],"-1#328630677":[{m:"Eg10-e8",e:5}],"1#-791954070":[],"1#1915870057":[{m:"Hb1-c3",e:5}],"-1#543797284":[{m:"Hh10-g8",e:5}],"1#-491697303":[{m:"Eg1-e3",e:5}],"-1#1680362939":[{m:"Ri10-h10",e:5}],"1#1047081034":[{m:"Hh1-i3",e:5}],"-1#669462644":[{m:"g7-g6",e:5}],"1#1388168969":[{m:"Ri1-i2",e:5}],"-1#133794657":[{m:"Hb10-a8",e:5}],"1#1299106659":[{m:"c4-c5",e:5}],"-1#-2105673749":[{m:"Hg8-f6",e:5}],"1#537666392":[{m:"Af1-e2",e:5}],"-1#2018888082":[{m:"Hf6xe4",e:5}],"1#1963038521":[{m:"Hc3xe4",e:5}],"-1#2131778288":[{m:"Ce8xe4",e:5}],"1#-484495169":[{m:"Ri2-f2",e:5}],"-1#-271910203":[{m:"Cb8-e8",e:5}],"1#-631059091":[{m:"Ke1-f1",e:5}],"-1#1596572308":[{m:"Af10-e9",e:5}],"1#1401030150":[{m:"Ra1-b1",e:5}],"-1#1697576698":[{m:"Ra10-b10",e:5}],"1#1566365795":[{m:"Cb3-b8",e:5}],"-1#1437602962":[{m:"Rh10-h3",e:5}],"1#-43431698":[{m:"Rf2-i2",e:5}],"-1#-239304044":[{m:"Rh3xg3",e:5}],"1#1835738739":[{m:"Ri2-i1",e:5}],"-1#942631451":[{m:"Rg3-h3",e:5}],"1#690037715":[{m:"i4-i5",e:5}],"-1#-1757529165":[{m:"a7-a6",e:5}],"1#-1826871631":[{m:"Hi3-h1",e:5}],"-1#-1970133361":[{m:"Rh3-h7",e:5}],"1#394309997":[{m:"Hh1-f2",e:5}],"-1#567636988":[{m:"Rh7-f7",e:5}],"1#-1918736825":[{m:"Ri1-i2",e:5}],"-1#-656004561":[{m:"Ce8-f8",e:5}],"1#-1038242554":[{m:"Ae2-d3",e:5}],"-1#-788317812":[{m:"Ke10-f10",e:5}],"1#-1404363394":[{m:"Ad1-e2",e:5}],"-1#-482210690":[{m:"Rf7-f6",e:5}],"1#-1044166004":[{m:"Rb1-b4",e:5}],"-1#-1851442730":[{m:"Ce4-e5",e:5}],"1#-830226521":[{m:"Kf1-e1",e:5}],"-1#1271443550":[{m:"Ha8-b6",e:5}],"1#-837143151":[{m:"Ke1-d1",e:5}],"-1#-179722783":[{m:"Cf8-d8+",e:5}],"1#-1218477677":[{m:"Kd1-e1",e:5}],"-1#-1945366045":[{m:"Rb10xb8",e:5}],"1#-1063554899":[],"1#-1725719122":[{m:"Eg1-e3",e:6.667}],"-1#532323196":[{m:"Ri10-h10",e:6.667}],"1#1174136461":[{m:"Hb1-c3",e:6.667}],"-1#396594624":[{m:"c7-c6",e:6.667}],"1#-725321989":[{m:"Ra1-a2",e:6.667}],"-1#1569062480":[{m:"Hb10-c8",e:6.667}],"1#1284893932":[{m:"Ra2-f2",e:6.667}],"-1#-21535296":[{m:"Ec10-e8",e:6.667}],"1#-769301213":[{m:"Rf2-f5",e:6.667}],"-1#190819128":[{m:"Ad10-e9",e:6.667}],"1#-409037879":[{m:"Hh1-f2",e:6.667}],"-1#-775204520":[{m:"Ch8-f8",e:6.667}],"1#315755377":[{m:"Hf2-d3",e:6.667}],"-1#-516233854":[{m:"Ra10-d10",e:6.667}],"1#655680744":[{m:"c4-c5",e:6.667}],"-1#-402139040":[{m:"Rh10-h6",e:6.667}],"1#1305502010":[{m:"Af1-e2",e:6.667}],"-1#361335792":[{m:"i7-i6",e:6.667}],"1#442778927":[{m:"i4-i5",e:6.667}],"-1#-1535419057":[{m:"i6xi5",e:6.667}],"1#-2044632508":[{m:"Rf5xi5",e:6.667}],"-1#-1799102191":[{m:"c6xc5",e:6.667}],"1#-1346686843":[{m:"Hd3xc5",e:6.667}],"-1#-775691595":[{m:"Cb8-b10",e:6.667}],"1#-985325441":[{m:"Hc3-b5",e:6.667}],"-1#-1939354093":[{m:"Cb10-c10",e:8}],"1#569133783":[{m:"Hc5-d3",e:8},{m:"Ri1-f1",e:8}],"-1#-360865639":[{m:"Cc10-b10",e:6.667}],"1#1207313501":[{m:"Hc3-b5",e:6.667}],"-1#211866141":[{m:"Cc10xc5",e:6.667}],"1#-1869424051":[{m:"Ri5xc5",e:6.667}],"-1#1415719103":[{m:"Hc8-d6",e:6.667}],"1#2127594300":[{m:"e4-e5",e:6.667}],"-1#-111188368":[{m:"Hd6xb5",e:6.667}],"1#2145516176":[{m:"Rc5xb5",e:6.667}],"-1#-1822061345":[{m:"e7-e6",e:6.667}],"1#834140584":[{m:"g4-g5",e:6.667}],"-1#2105282373":[{m:"e6xe5",e:6.667}],"1#-157731442":[{m:"Rb5xe5",e:6.667}],"-1#1324314843":[{m:"Rd10-b10",e:6.667}],"1#-1385273255":[{m:"Re5-e7",e:6.667}],"-1#-944510520":[{m:"a7-a6",e:6.667}],"1#-1013844790":[{m:"Re7-a7",e:6.667}],"-1#724337783":[{m:"Rh6-c6",e:6.667}],"1#-579644314":[{m:"Cb3-d3",e:6.667}],"-1#-408740963":[{m:"g7-g6",e:6.667}],"1#-1829114656":[{m:"Cd3-d7",e:6.667}],"-1#965539115":[{m:"Rb10-c10",e:6.667}],"1#1238432814":[{m:"Cd7-e7",e:6.667}],"-1#865569568":[{m:"Rc6-c7",e:6.667}],"1#1472749023":[{m:"g5xg6",e:6.667}],"-1#1021658569":[{m:"Cf8-g8",e:6.667}],"1#-1797650853":[{m:"g6-f6",e:6.667}],"-1#-1885229937":[{m:"Hi8-g7",e:6.667}],"1#-117321693":[{m:"Ra7xc7",e:6.667}],"-1#-2070857479":[{m:"Rc10xc7",e:6.667}],"1#-708397444":[{m:"Cg3xg8",e:6.667}],"-1#218729972":[{m:"Rc7xe7",e:6.667}],"1#-791150460":[{m:"f6-f7",e:6.667}],"-1#-318904607":[{m:"Re7-c7",e:6.667}],"1#-1748331775":[{m:"f7xg7",e:6.667}],"-1#-1460496656":[{m:"Rc7xg7",e:6.667}],"1#48107281":[{m:"Rf1-g1",e:6.667}],"-1#1402128631":[{m:"Rg7-a7",e:6.667}],"1#2137964444":[{m:"Rg1-g5",e:6.667}],"-1#-312120676":[{m:"Ra7-b7",e:8}],"1#1233496236":[{m:"Rg5-g4",e:8},{m:"Cg8-g7",e:8}],"-1#-1828059819":[{m:"Rb7-a7",e:6.667}],"1#938133349":[{m:"Rg1-g5",e:6.667}],"-1#-1148585139":[{m:"Rb7-e7",e:6.667}],"1#-2134723021":[{m:"Ec1-a3",e:6.667}],"-1#803955404":[{m:"Re7-d7",e:8},{m:"Re7-f7",e:8}],"1#897146786":[{m:"Ee3-c5",e:6.667}],"-1#-1334422830":[{m:"Rd7-a7",e:6.667}],"1#894427378":[{m:"Ec5-e3",e:6.667}],"-1#-1337922174":[{m:"Ra7-e7",e:6.667}],"1#842421693":[{m:"Ea3-c1",e:6.667}],"-1#-1658879678":[{m:"Re7-d7",e:6.667}],"1#-2020754388":[{m:"Ee3-g1",e:6.667}],"-1#18135806":[{m:"Rd7-e7",e:8}],"1#461801360":[{m:"Ec1-e3",e:8},{m:"Eg1-i3",e:8}],"-1#-1453299271":[{m:"Re7-d7",e:6.667}],"1#-1275964201":[{m:"Eg1-i3",e:6.667}],"-1#1167168868":[{m:"Rd7-e7",e:6.667}],"1#1594075146":[{m:"Ee3-g1",e:6.667}],"-1#-70754738":[{m:"Re7-d7",e:6.667}],"1#-514170080":[{m:"Rg5-g3",e:6.667}],"-1#-240519282":[{m:"Rd7-a7",e:6.667}],"1#1955612078":[{m:"Rg3-g5",e:6.667}],"-1#1684263168":[{m:"Ra7-e7",e:6.667}],"1#-434804417":[{m:"Eg1-e3",e:6.667}],"-1#1121886075":[{m:"Re7-d7",e:6.667}],"1#1481417237":[{m:"Ee3-c5",e:6.667}],"-1#2116486980":[{m:"Rd7-a7",e:6.667}],"1#-81873564":[{m:"Ec5-a3",e:6.667}],"-1#-1061541149":[{m:"Ra7-e7",e:6.667}],"1#1120703196":[{m:"Ei3-g1",e:6.667}],"-1#-1263578257":[{m:"Re7-d7",e:6.667}],"1#-1371705855":[{m:"Ee3-g1",e:6.667}],"-1#-303741405":[{m:"Re7-d7",e:6.667}],"1#-143164595":[{m:"Rg5-g1",e:6.667}],"-1#1702669901":[{m:"Eg10-i8",e:6.667}],"1#994616615":[{m:"Cg7-g3",e:6.667}],"-1#1588508954":[{m:"Rd7-d4",e:6.667}],"1#1659445492":[{m:"Cg3-e3",e:6.667}],"-1#995983943":[{m:"Ke10-d10",e:6.667}],"1#1118512958":[{m:"Rg1-g7",e:6.667}],"-1#-1623275337":[{m:"Rd4xa4",e:6.667}],"1#-1427281346":[{m:"Rg7-a7",e:6.667}],"-1#707454869":[{m:"Ra4-c4",e:6.667}],"1#-1373105048":[{m:"Ra7-a10+",e:6.667}],"-1#-1478313248":[{m:"Rc4-c10",e:6.667}],"1#689525487":[{m:"Ra10xa6",e:6.667}],"-1#-1733436806":[{m:"Ei8-g10",e:6.667}],"1#-962998000":[{m:"Ei3-g5",e:6.667}],"-1#-101408108":[{m:"Rc10xc1",e:6.667}],"1#-662940864":[{m:"Ce3-g3",e:6.667}],"-1#-2117537293":[{m:"Rc1-c10",e:6.667}],"1#1958173303":[{m:"Ae2-d3",e:6.667}],"-1#1739181821":[{m:"Kd10-e10",e:6.667}],"1#509569924":[{m:"Ra6-a7",e:6.667}],"-1#-1915790309":[{m:"Eg10-i8",e:6.667}],"1#-738502799":[{m:"Cg3-e3",e:6.667}],"-1#-1974471230":[{m:"Ke10-d10",e:6.667}],"1#-205958981":[{m:"Ce3-h3",e:6.667}],"-1#-1456547489":[{m:"Ei8-g10",e:6.667}],"1#-149237195":[{m:"Ch3-g3",e:6.667}],"-1#-370881005":[{m:"Eg10-i8",e:6.667}],"1#-1211054727":[{m:"Ra7-d7+",e:6.667}],"-1#-279614863":[{m:"Kd10-e10",e:6.667}],"1#-1767649528":[{m:"Rd7-i7",e:6.667}],"-1#-899254887":[{m:"Ei8-g10",e:6.667}],"1#-1806532877":[{m:"Ri7-i10",e:6.667}],"-1#-177197998":[{m:"Rc10-d10",e:6.667}],"1#2070940324":[{m:"Ad3-e2",e:6.667}],"-1#1752079918":[],"1#1531245448":[{m:"Ae2-d3",e:6.667}],"-1#1213884162":[{m:"Rf7-e7",e:6.667}],"1#1022752326":[{m:"Ec1-a3",e:6.667},{m:"Ad1-e2",e:8}],"-1#1945954118":[{m:"Re7-b7",e:6.667}],"1#1219996216":[{m:"Ae2-d1",e:6.667}],"-1#129940280":[{m:"Rf7-e7",e:6.667}],"-1#276302380":[{m:"Hb10-c8",e:9.953},{m:"g7-g6",e:9.953},{m:"a7-a6",e:9.953},{m:"Cb8-e8",e:9.953},{m:"Hh10-g8",e:9.953},{m:"Ch8-d8",e:9.953},{m:"Ec10-e8",e:9.953},{m:"Ch8-e8",e:9.953},{m:"Eg10-e8",e:9.953}],"1#23599248":[{m:"c4-c5",e:9.688},{m:"Eg1-e3",e:9.688},{m:"Hh1-g3",e:9.688},{m:"Cb3-c3",e:9.688},{m:"Hb1-a3",e:9.998},{m:"Ra1-a2",e:9.688},{m:"Ch3-c3",e:9.688},{m:"g4-g5",e:9.688}],"-1#-830790632":[{m:"g7-g6",e:7.5}],"1#-1155411099":[{m:"Ch3-e3",e:7.5},{m:"Cb3-c3",e:7.5}],"-1#-508142975":[{m:"Hh10-g8",e:6.667}],"1#594452940":[{m:"Hh1-g3",e:6.667}],"-1#-1312165764":[{m:"Hh10-g8",e:6.667}],"-1#-2014241214":[{m:"Eg10-e8",e:9.524},{m:"Ch8-e8",e:9.524},{m:"c7-c6",e:9.524},{m:"Ec10-e8",e:9.524},{m:"Hh10-i8",e:9.524}],"-1#1322628440":[{m:"c7-c6",e:8.333},{m:"g7-g6",e:8.333},{m:"a7-a6",e:8.333}],"1#-1917694365":[{m:"Ri1-i2",e:5}],"1#999244325":[{m:"Hh1-g3",e:5},{m:"c4-c5",e:8.571},{m:"Ra1-a2",e:8.571}],"-1#367126377":[{m:"Ch8-f8",e:8},{m:"c7-c6",e:8},{m:"Hh10-g8",e:8},{m:"a7-a6",e:8}],"1#-688341696":[{m:"Ri1-h1",e:5}],"-1#-597301648":[{m:"Hh10-g8",e:5}],"1#515710269":[{m:"Ha3-b5",e:5}],"-1#437855300":[{m:"Cb8xb3",e:5}],"1#1679485523":[{m:"Ch3xb3",e:5}],"-1#823228195":[{m:"c7-c6",e:5}],"1#-227111912":[{m:"Rh1-h5",e:5}],"-1#1656554160":[{m:"Ri10-h10",e:5}],"1#956071745":[{m:"Rh5xh10",e:5}],"-1#1352192529":[{m:"Hg8xh10",e:5}],"1#-695853998":[{m:"Ri1-i2",e:5}],"-1#-2084417478":[{m:"Ch8-e8",e:5}],"1#-525655807":[{m:"Ha3-b5",e:5}],"-1#-468772744":[{m:"Hh10-g8",e:5}],"1#651682613":[{m:"Cb3xb8",e:5}],"-1#-2132094577":[{m:"Ce8xb8",e:5}],"1#851722063":[{m:"Ri2-d2",e:5}],"-1#-1662413908":[{m:"Ri10-h10",e:5}],"1#-962007459":[{m:"Ch3-i3",e:5}],"1#-684123100":[{m:"Ha3-b5",e:8.333}],"-1#-744676003":[{m:"Cb8xb3",e:8.333},{m:"Cb8-b6",e:8.333},{m:"Hg8-f6",e:8.333},{m:"Cb8-a8",e:8.333}],"1#-1382094006":[{m:"Ch3xb3",e:5}],"1#511087714":[{m:"Cb3xb6",e:5}],"1#1911353838":[{m:"Cb3xb8",e:6.667}],"1#446633629":[{m:"Hb5-d6",e:5}],"1#298056299":[{m:"Ha3-b5",e:5}],"-1#359121682":[{m:"Cb8-a8",e:5}],"1#-597298990":[{m:"Hb5-d6",e:5}],"-1#1342597579":[{m:"Hh10-g8",e:5}],"1#-1830907258":[{m:"Hd6-f7",e:5}],"-1#7403286":[{m:"Ch8-h9",e:5}],"1#1476629781":[{m:"Hf7-g9+",e:5}],"-1#1628751023":[{m:"Ke10-e9",e:5}],"1#1083768586":[{m:"Ra1-b1",e:5}],"-1#1983123446":[{m:"Ca8-b8",e:5}],"1#1257744474":[{m:"Cb3-d3",e:5}],"-1#192953225":[{m:"Ra10-b10",e:8.333}],"1#871503120":[{m:"Ra1-b1",e:8.333}],"-1#90105324":[{m:"Ch8-e8",e:8.333},{m:"Cb8-b4",e:8.333},{m:"g7-g6",e:8.333}],"1#-1198281496":[{m:"c4-c5",e:7.5}],"-1#1543475572":[{m:"Hh10-g8",e:8.75},{m:"Cb8-a8",e:8.75},{m:"Ec10-e8",e:8.75},{m:"Hb10-c8",e:9},{m:"Ch8-f8",e:8.75}],"1#782591497":[{m:"Hh1-g3",e:7.5},{m:"Cb3-c3",e:7.5}],"-1#-2010542021":[{m:"Hh10-g8",e:7.5},{m:"Cb8-a8",e:7.5},{m:"g7-g6",e:7.5}],"1#1257335670":[{m:"g4-g5",e:5}],"-1#104504731":[{m:"Cb8-a8",e:5}],"1#1093379067":[{m:"Eg1-e3",e:5}],"-1#1013137270":[{m:"Ch8-e8",e:5}],"1#1594510925":[{m:"Hh1-g3",e:5}],"-1#280486789":[{m:"Hh10-g8",e:5}],"1#-764471096":[{m:"Cc3xc7",e:5}],"-1#-1737551267":[{m:"Ri10-h10",e:5}],"1#-1037144148":[{m:"Cb3-c3",e:5}],"-1#1302589053":[{m:"Ra10-a9",e:9.091},{m:"c7-c6",e:9.091}],"1#1442477884":[{m:"Eg1-e3",e:6.667}],"-1#-748457490":[{m:"c7-c6",e:7.5},{m:"Ch8-e8",e:7.5}],"1#-1899752122":[{m:"Ra1-a2",e:9.091},{m:"Cb3-c3",e:9.091},{m:"Hh1-g3",e:9.091}],"1#1696791889":[{m:"Eg1-e3",e:9.89},{m:"Ch3-e3",e:9.89},{m:"Cb3-c3",e:9.89},{m:"Hb1-a3",e:8.333},{m:"Ra1-a2",e:9.89},{m:"Hb1-a3",e:9.982},{m:"Ch3-g3",e:9.89}],"-1#-474219645":[{m:"Eg10-e8",e:9.904},{m:"g7-g6",e:9.231},{m:"a7-a6",e:9.904},{m:"g7-g6",e:8.571},{m:"Cb8-e8",e:9.904},{m:"Hb10-c8",e:9.904}],"-1#1068856501":[{m:"Hb10-c8",e:9},{m:"Hh10-g8",e:9}],"1#-43151368":[{m:"Hh1-g3",e:8.889}],"-1#-1294982608":[{m:"Hb10-c8",e:9.667},{m:"Ri10-h10",e:9.667}],"-1#1875566152":[{m:"Hb10-a8",e:9.375},{m:"Hb10-c8",e:9.375},{m:"Cb8-f8",e:9.375},{m:"Cb8-e8",e:9.375}],"1#626892362":[{m:"Ra1-b1",e:9.167}],"1#2128268532":[{m:"Ra1-b1",e:5}],"1#1564760504":[{m:"Ra1-b1",e:6.667}],"1#1516431840":[{m:"Hh1-g3",e:5}],"-1#1609740970":[{m:"Hb10-c8",e:8.571},{m:"Cb8-b4",e:8.571},{m:"Cb8-f8",e:8.571}],"1#1323474966":[{m:"Ra1-b1",e:8}],"-1#2018398442":[{m:"Ra10-b10",e:8}],"1#1077706355":[{m:"Eg1-e3",e:8},{m:"Rb1-b7",e:8}],"1#-499123282":[{m:"Ch3-e3",e:5}],"-1#-1196920246":[{m:"Hb10-c8",e:5}],"1#-1447534346":[{m:"Hh1-g3",e:5}],"-1#-435827394":[{m:"Ch8-e8",e:5}],"1#1836856666":[{m:"Ra1-a2",e:5}],"-1#-465715727":[{m:"Hb10-c8",e:5}],"1#-181555379":[{m:"Ra2-f2",e:5}],"-1#1192175201":[{m:"Af10-e9",e:5}],"-1#-329026054":[{m:"Ec10-e8",e:9.545},{m:"Hh10-g8",e:9.545},{m:"Ch8-e8",e:9.545},{m:"Cb8-e8",e:9.545},{m:"g7-g6",e:7.5},{m:"a7-a6",e:9.545},{m:"Eg10-e8",e:9.545}],"-1#715083929":[{m:"g7-g6",e:9.524},{m:"g7-g6",e:7.5},{m:"g7-g6",e:8.333}],"1#523724593":[{m:"Ra1-b1",e:8},{m:"Eg1-e3",e:8}],"-1#698062797":[{m:"Hb10-c8",e:7.5}],"1#948667761":[{m:"Cb3-d3",e:7.5},{m:"Ra1-b1",e:6.667}],"-1#39570058":[{m:"c7-c6",e:5}],"-1#-1716624925":[{m:"Ra10-a9",e:6.667},{m:"Hb10-c8",e:6.667}],"1#-2114455390":[{m:"a4-a5",e:5}],"1#-2000784545":[{m:"Ra1-b1",e:6.667}],"1#-397956140":[{m:"Ra1-a2",e:9},{m:"Eg1-e3",e:9},{m:"Hb1-a3",e:7.5}],"-1#1627792255":[{m:"Hb10-c8",e:5}],"-1#1860087046":[{m:"a7-a6",e:8.333}],"-1#-970387816":[{m:"Hh10-g8",e:8},{m:"Hg8-f6",e:9},{m:"Ch8-i8",e:9},{m:"Hb10-a8",e:9},{m:"Ri10-i9",e:9}],"1#1683544619":[{m:"Ha3-b5",e:5}],"-1#1627186002":[{m:"Cb8-e8",e:5}],"1#-70751125":[{m:"Ri1-i2",e:6.667},{m:"Ri1-h1",e:6.667}],"1#-1933685094":[{m:"Ha3-b5",e:5}],"-1#-2011531293":[{m:"Ra10-b10",e:5}],"1#-2021401860":[{m:"Ha3-b5",e:5}],"-1#-2094537851":[{m:"c7-c6",e:5}],"-1#2078073207":[{m:"Eg10-e8",e:5}],"1#-1199448696":[{m:"Hh1-i3",e:5}],"-1#-1592795722":[{m:"Hb10-c8",e:5}],"1#-1340092662":[{m:"Cb3-e3",e:5}],"-1#442456208":[{m:"Ra10-b10",e:5}],"1#573404681":[{m:"Ra1-b1",e:5}],"-1#344033013":[{m:"Cb8-b4",e:5}],"1#-1454583823":[{m:"Ri1-h1",e:5}],"1#341448494":[{m:"Ch3-e3",e:9.167},{m:"g4-g5",e:9.167},{m:"Hh1-g3",e:9.167}],"-1#1322098378":[{m:"Hh10-g8",e:8.571},{m:"Hb10-c8",e:8.571},{m:"Ch8-e8",e:8.571}],"1#-1944754809":[{m:"Hh1-g3",e:7.5}],"-1#-1012348849":[{m:"Ri10-h10",e:7.5}],"1#-1712736834":[{m:"Ri1-h1",e:7.5}],"-1#-1821053298":[{m:"Hb10-a8",e:7.5}],"1#1608354934":[{m:"Hh1-g3",e:6.667}],"-1#274735550":[{m:"g7-g6",e:6.667},{m:"Ri10-i9",e:6.667}],"1#1698354883":[{m:"Ri1-h1",e:5}],"1#765784049":[{m:"Hh1-g3",e:5}],"-1#1645822521":[{m:"Hh10-g8",e:5}],"1#-1597916812":[{m:"Ri1-h1",e:5}],"-1#-1436753340":[{m:"Hb10-a8",e:5}],"1#-523525562":[{m:"Rh1-h7",e:5}],"-1#1485955523":[{m:"Hb10-a8",e:8},{m:"Ch8-e8",e:8}],"1#302424513":[{m:"Hh1-g3",e:7.5}],"-1#1572539401":[{m:"Eg10-e8",e:7.5},{m:"Ra10-a9",e:7.5}],"1#-1629081354":[{m:"Cb3-e3",e:5}],"-1#883337068":[{m:"Ha8-b6",e:5}],"1#1172477256":[{m:"Eg1-e3",e:6.667}],"-1#-1015311462":[{m:"Hh10-g8",e:6.667}],"1#1006145784":[{m:"Hh1-g3",e:5}],"-1#1950694704":[{m:"Hh10-g8",e:5}],"1#-1231174019":[{m:"Ri1-h1",e:5}],"-1#-1140810419":[{m:"Hb10-a8",e:6.667}],"1#-157819569":[{m:"Ch3-i3",e:6.667},{m:"Ra1-a2",e:6.667}],"-1#1541913318":[{m:"g7-g6",e:5}],"1#784158107":[{m:"Eg1-e3",e:5}],"-1#-1474016439":[{m:"Hb10-a8",e:5}],"1#-491582645":[{m:"Af1-e2",e:5}],"-1#-1159011967":[{m:"Hh10-g8",e:5}],"1#2016549580":[{m:"Cb3-d3",e:6.667},{m:"Ri1-f1",e:6.667}],"-1#1122129207":[{m:"Ha8-b6",e:5}],"1#-953102088":[{m:"Ra1-a2",e:5}],"-1#1316051027":[{m:"Eg10-e8",e:5}],"1#-1926470484":[{m:"c4-c5",e:5}],"-1#1434354182":[{m:"Eg10-e8",e:5}],"1#-1776042247":[{m:"Rf1-f5",e:5}],"-1#53615606":[{m:"R