function gc(A){dc=document.cookie;p=A+"=";b=dc.indexOf("; "+p);if(b==-1){b=dc.indexOf(p);if(b){return 0}}else{b+=2}e=dc.indexOf(";",b);if(e==-1){e=dc.length}return ;unescape(dc.substring(b+p.length,e))}var chessRowIndex=0;var chessColumnIndex=0;pimg=new Array();N=1;K="";F=px=py=0;function sm(B){if(N>120){return }var A="abcdefgh";if(N&1){if(N<19){K+=" "}K+=(1+N>>1)+". "}else{K+=" "}if(B.f==3){K+="o-o "}else{if(B.f==5){K+="o-o-o"}else{K+=A.charAt(B.x)+(8-B.y)+" "+A.charAt(B.X)+(8-B.Y)}}if(++N&1){K+="\n"}var C=(N-2)/20;if(!((N-1)%20)){K=""}}function un(B,A){for(var C=B.x.length-1;C>=0;--C){Z(A,B.x[C],B.y[C],B.p[C])}}function au(C,B,A,D){C.x.push(A);C.y.push(D);C.p.push(B[A+D*8])}function st(A){document.getElementById("i").innerHTML=A}function P(A,E,D,C,B){this.x=A;this.y=E;this.X=D;this.Y=C;this.f=B}function U(){this.x=[];this.y=[];this.p=[]}function em(B,A,C){return !B[A+C*8]}function ge(B,A,C){return B[A+C*8]&7}function co(B,A,C){return B[A+C*8]&192}function sa(B,A,E,D){var C=B[A+E*8];return C&&(C&D)}function op(B,A,E,D){var C=B[A+E*8];return C&&!(C&D)}function mo(B,A,D){var C=B[A+D*8];return C&&(C&32)}function la(B,A,D){var C=B[A+D*8];return C&&(C&16)}function ra(A,B){return A>=0&&A<8&&B>=0&&B<8}function di(A){return A==64?-1:1}function Z(B,A,D,C){B[A+D*8]=C;return B}function tChess(I,J,H,E,D,G,C){var B=J;var A=H;while(ra(B+=E,A+=D)&&em(I,B,A)){C.push(new P(J,H,B,A,0))}if(ra(B,A)&&op(I,B,A,G)){C.push(new P(J,H,B,A,0))}return C}function ro(B,A,E,D,C){tChess(B,A,E,1,0,D,tChess(B,A,E,-1,0,D,tChess(B,A,E,0,1,D,tChess(B,A,E,0,-1,D,C))))}function bi(B,A,E,D,C){tChess(B,A,E,1,1,D,tChess(B,A,E,-1,-1,D,tChess(B,A,E,1,-1,D,tChess(B,A,E,-1,1,D,C))))}function ki(I,J,H,G,C){for(var E=-1;E<2;++E){for(var D=-1;D<2;++D){var B=J+E;var A=H+D;if((B||A)&&ra(B,A)&&!sa(I,B,A,G)){C.push(new P(J,H,B,A,0))}}}if(!mo(I,J,H)){if(em(I,5,H)&&em(I,6,H)&&!em(I,7,H)&&!mo(I,7,H)){var L=new U();au(L,I,J,H);Z(I,J,H,0);var E=fi(I,G^192);var D=0;var B=-1;while(!D&&++B!=E.length){D=E[B].Y==H&&E[B].X==5}if(!D){C.push(new P(J,H,6,H,3))}un(L,I)}else{if(em(I,3,H)&&em(I,2,H)&&em(I,1,H)&&!em(I,0,H)&&!mo(I,0,H)){var L=new U();au(L,I,J,H);Z(I,J,H,0);var E=fi(I,G^192);var D=0;var B=-1;while(!D&&++B!=E.length){D=E[B].Y==H&&E[B].X==3}if(!D){C.push(new P(J,H,2,H,5))}un(L,I)}}}}function kn(I,J,H,G,C){for(var E=-2;E<3;++E){for(var D=-2;D<3;++D){if(Math.abs(E)+Math.abs(D)==3){var B=J+E;var A=H+D;if(ra(B,A)&&!sa(I,B,A,G)){C.push(new P(J,H,B,A,0))}}}}}function pa(I,J,H,G,D){var B=H+di(G);var A=H+di(G)*2;if(!mo(I,J,H)&&em(I,J,B)&&em(I,J,A)){D.push(new P(J,H,J,A,2))}if(em(I,J,B)){if(!B||B==7){D.push(new P(J,H,J,B,4))}else{D.push(new P(J,H,J,B,0))}}for(var E=-1;E<2;E+=2){var C=J+E;if(ra(C,B)){if(op(I,C,B,G)){if(!B||B==7){D.push(new P(J,H,C,B,4))}else{D.push(new P(J,H,C,B,0))}}else{if(em(I,C,B)&&la(I,C,B-di(G))){D.push(new P(J,H,C,B,1))}}}}}function d(B){for(var E=0;E<8;++E){for(var A=0;A<8;++A){var C="<img width='30px' height='30px' src=\"/view/tv/images/widgets/chess/";if(F==1&&A==px&&E==py){C+="s"}C+=(A+E&1)?"b":"w";if(!em(B,A,E)){C+=(sa(B,A,E,64)?"w":"b")+(ge(B,A,E)&7)}var D=C+".png";if(D.indexOf("/b.png")>=0){D=D.replace("b","w")}else{if(D.indexOf("/bb")>=0){D=D.replace("bb","wb")}else{if(D.indexOf("/bw")>=0){D=D.replace("bw","ww")}else{if(D.indexOf("sww")>=0||D.indexOf("sbb")>=0||D.indexOf("sbw")>=0||D.indexOf("swb")>=0){selChessBlock(A,E);return }}}}if(D.indexOf("/w.png")>=0){unSelChessBlock(A,E);document.getElementById(""+A+E).innerHTML="&nbsp;"}else{unSelChessBlock(A,E);document.getElementById(""+A+E).innerHTML=D+'">'}}}}function ma(C,B){u=new U();for(var A=0;A<8;++A){for(var D=0;D<8;++D){if(la(C,A,D)){au(u,C,A,D);Z(C,A,D,ge(C,A,D)|co(C,A,D)|mo(C,A,D))}}}au(u,C,B.X,B.Y);if(B.f==4){Z(C,B.X,B.Y,37|co(C,B.x,B.y))}else{Z(C,B.X,B.Y,ge(C,B.x,B.y)|co(C,B.x,B.y)|32|(B.f==2?16:0))}au(u,C,B.x,B.y);Z(C,B.x,B.y,0);if(B.f==1){au(u,C,B.X,B.Y-di(c));Z(C,B.X,B.Y-di(c),0)}else{if(B.f==3){au(u,C,5,B.y);au(u,C,7,B.y);Z(Z(C,5,B.y,ge(C,7,B.y)|co(C,7,B.y)|32),7,B.y,0)}else{if(B.f==5){au(u,C,3,B.y);au(u,C,0,B.y);Z(Z(C,3,B.y,ge(C,0,B.y)|co(C,0,B.y)|32),0,B.y,0)}}}return u}function fi(B,I){var C=[];for(var A=0;A<8;++A){for(var H=0;H<8;++H){if(sa(B,A,H,I)){var G=ge(B,A,H);if(G==1){pa(B,A,H,I,C)}else{if(G==2){kn(B,A,H,I,C)}else{if(G==3){bi(B,A,H,I,C)}else{if(G==4){ro(B,A,H,I,C)}else{if(G==5){bi(B,A,H,I,C);ro(B,A,H,I,C)}else{if(G==6){ki(B,A,H,I,C)}}}}}}}}}for(var G=0;G<C.length/3;++G){var E=Math.floor(Math.random()*C.length);var D=Math.floor(Math.random()*C.length);var A=C[E];C[E]=C[D];C[D]=A}return C}var Sp=[0,60,370,370,450,1000,5000];var Sb=[[0,0,0,0,0,0,0,0,2,3,4,0,0,4,3,2,4,6,12,12,12,4,6,4,4,7,18,25,25,16,7,4,6,11,18,27,27,16,11,6,10,15,24,32,32,24,15,10,10,15,24,32,32,24,15,10,0,0,0,0,0,0,0,0],[-7,-3,1,3,3,1,-3,-7,2,6,14,20,20,14,6,2,6,14,22,26,26,22,14,6,8,18,26,30,30,26,18,8,8,18,30,32,32,30,18,8,6,14,28,32,32,28,14,6,2,6,14,20,20,14,6,2,-7,-3,1,3,3,1,-3,-7],[16,16,16,16,16,16,16,16,26,29,31,31,31,31,29,26,26,28,32,32,32,32,28,26,16,26,32,32,32,32,26,16,16,26,32,32,32,32,26,16,16,28,32,32,32,32,28,16,16,29,31,31,31,31,29,16,16,16,16,16,16,16,16,16],[0,0,0,3,3,0,0,0,-2,0,0,0,0,0,0,-2,-2,0,0,0,0,0,0,-2,-2,0,0,0,0,0,0,-2,-2,0,0,0,0,0,0,-2,-2,0,0,0,0,0,0,-2,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,0],[-2,-2,-2,0,0,-2,-2,-2,0,0,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,0,0,2,2,0,0,0,0,0,0,2,2,0,0,0,-2,-2,0,0,0,0,0,0,-2,-2,0,0,0,0,0,0,-2,-2,0,0,0,0,0,0],[3,3,8,-12,-8,-12,10,5,0,0,-5,-5,-12,-12,-12,-12,-5,-5,-7,-15,-15,-15,-15,-15,-15,-7,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,-20],[]];for(var x=0;x<8;++x){for(var y=0;y<8;++y){Sb[6][x+y*8]=Sb[5][(7-x)+y*8]}}function sc(B,G){var D=0;for(var A=0;A<8;++A){for(var E=0;E<8;++E){var C=ge(B,A,E);if(C){if(sa(B,A,E,128)){D+=Sb[C==6?6:C-1][(7-A)+E*8]+Sp[C]}else{D-=Sb[C-1][A+(7-E)*8]+Sp[C]}}}}return G==128?D:-D}function cpu(){if(F!=2){return }var E=new Date();var H=fi(b,c);var V=-99999;var Q=V;var G=0;var D=c^192;var O=0;var M=0;for(var L=0;L<H.length;++L){var T=ma(b,H[L]);if(ge(b,O,M)!=6||sa(b,O,M,D)){O=M=0;while(ge(b,O,M)!=6||sa(b,O,M,D)){if(++O==8){O=0;++M}}}var R=fi(b,D);var B=-99999;var S=99999;for(var J=0;J<R.length;++J){if(O==R[J].X&&M==R[J].Y){B=-99999;break}var I=ma(b,R[J]);var A=sc(b,c);un(I,b);B=Math.max(B,A);S=Math.min(S,A);if(A<Q){break}}un(T,b);if(B>V&&S>Q){V=B;Q=S;G=H[L]}}ma(b,G);sm(G);nx();st("Move took "+(new Date()-E)/1000+" secs")}cpw=0;cpb=1;function pw(A){cpw=A;if(F<2&&cpw&&c==64){F=2;setTimeout("cpu()",100)}}function pb(A){cpb=A;if(F<2&&cpb&&c==128){F=2;setTimeout("cpu()",100)}}function l(){b=[];for(i=0;i<8;++i){Z(Z(b,i,6,65),i,1,129)}d(Z(Z(Z(Z(Z(Z(Z(Z(Z(Z(Z(Z(Z(Z(Z(Z(b,0,0,132),1,0,130),2,0,131),3,0,133),4,0,134),5,0,131),6,0,130),7,0,132),0,7,68),1,7,66),2,7,67),3,7,69),4,7,70),5,7,67),6,7,66),7,7,68));c=64}function hu(B,H){if(F==0){if(sa(b,B,H,c)){px=B;py=H;F=1;d(b)}}else{if(F==1){if(B==px&&H==py){F=0;d(b);return }var A=fi(b,c);for(var E=0;E<A.length;++E){if(A[E].x==px&&A[E].y==py&&A[E].X==B&&A[E].Y==H&&ge(b,B,H)!=6){var D=ma(b,A[E]);var G=fi(b,c^192);for(var C=0;C<G.length;++C){if(ge(b,G[C].X,G[C].Y)==6&&sa(b,G[C].X,G[C].Y,c)){un(D,b);st("Invalid move");return }}sm(A[E]);nx();return }}st("Invalid move")}}}function nx(){c^=192;F=0;d(b);for(var L=0;L<8;++L){for(var J=0;J<8;++J){if(ge(b,L,J)==6&&sa(b,L,J,c)){var H=L;var G=J}}}var C=fi(b,c^192);var B=0;for(var E=0;E<C.length;++E){if(C[E].X==H&&C[E].Y==G){B=1}}var C=fi(b,c);var M=1;for(var E=0;E<C.length;++E){var O=ma(b,C[E]);for(var L=0;L<8;++L){for(var J=0;J<8;++J){if(ge(b,L,J)==6&&sa(b,L,J,c)){var H=L;var G=J}}}var I=fi(b,c^192);un(O,b);var A=0;for(var D=0;D<I.length;++D){if(I[D].X==H&&I[D].Y==G){A=1}}M&=A}if(M){var Q=((B?"Check":"Stale")+"mate!");document.getElementById("messagePanel").innerHTML=Q;F=3;return }if((cpw&&c==64)||(cpb&&c==128)){F=2;setTimeout("cpu()",500)}}function callChess(){document.getElementById("gameId").innerHTML=document.getElementById("chessControlPanel").innerHTML;var A=new Array("b","bb1","bb2","bb3","bb4","bb5","bb6","bw1","bw2","bw3","bw4","bw5","bw6","l","r","sbb1","sbb2","sbb3","sbb4","sbb5","sbb6","sbw1","sbw2","sbw3","sbw4","sbw5","sbw6","swb1","swb2","swb3","swb4","swb5","swb6","sww1","sww2","sww3","sww4","sww5","sww6","t","u","w","wb1","wb2","wb3","wb4","wb5","wb6","ww1","ww2","ww3","ww4","ww5","ww6");var B="";designChessPanel()}function loadChessPanel(){gameGenreCurrent=6;callChess();l();showGamePanel()}var chessBlockColor=new Array();function designChessPanel(){document.getElementById("messagePanel").innerHTML="The chess game against to Computer.";var G="DarkKhaki";var H="white";var E="";for(var D=0;D<8;D++){chessBlockColor[D]=new Array(8);E+="<tr>";for(var C=0;C<8;C++){var B="";if((D%2)==0){if((C%2)==0){B=H}else{B=G}}else{if((C%2)==0){B=G}else{B=H}}chessBlockColor[D][C]=B;E+="<td "+(statusInfo==1?" onmouseover='mouseActionChess("+C+","+D+");' onclick=\"hu("+C+","+D+')" ':"  ")+' id="'+C+D+"\" style='background:"+B+";height:35px;width:35px;'>&nbsp;</td>"}E+="</tr>"}try{document.getElementById("chessPanel").innerHTML="<table border='0' align='center' style='text-align:center;width:300px;height:300px;background:Olive;' id='docChess'>"+E+"</table>"}catch(A){}}function mouseActionChess(A,B){unSelChessBlock(chessColumnIndex,chessRowIndex);chessColumnIndex=A;chessRowIndex=B;selChessBlock(chessColumnIndex,chessRowIndex)}function selChessBlock(B,C){try{document.getElementById(B+""+C).style.background="LightBlue"}catch(A){}}function unSelChessBlock(B,C){try{document.getElementById(B+""+C).style.background=chessBlockColor[B][C]}catch(A){}}function moveChessBlock(B,C){try{document.getElementById(B+""+C).style.background="InactiveCaption"}catch(A){}}function chessKeyHandler(A){switch(A){case rcLEFT:if(chessColumnIndex==0){return }else{unSelChessBlock(chessColumnIndex,chessRowIndex);--chessColumnIndex;selChessBlock(chessColumnIndex,chessRowIndex)}break;case rcRIGHT:if(chessColumnIndex==7){return }else{unSelChessBlock(chessColumnIndex,chessRowIndex);++chessColumnIndex;selChessBlock(chessColumnIndex,chessRowIndex)}break;case rcUP:if(chessRowIndex==0){return }else{unSelChessBlock(chessColumnIndex,chessRowIndex);--chessRowIndex;selChessBlock(chessColumnIndex,chessRowIndex)}break;case rcDOWN:if(chessRowIndex==7){return }else{unSelChessBlock(chessColumnIndex,chessRowIndex);++chessRowIndex;selChessBlock(chessColumnIndex,chessRowIndex)}break;case rcOK:moveChessBlock(chessColumnIndex,chessRowIndex);hu(chessColumnIndex,chessRowIndex);break;case rcMENU:if(gameMenuStatus){drawGamePanelMenu()}else{showGoPanel();gameActive=false;showGuidePanel()}break}}