var BU=BK();var BS=BK();var F7=BK();var F6=BK();var B6=-1;var CL=-1;var CT=-1;var BZ=7;var BV=BK();var BW=BK();var BX=BK();var C8=DV();var C9=DV();var CO=0;var CM=0;var CN=0;var FY='0123456789';var FZ='abcdefghijklmnopqrstuvwxyz';var upr='ABCDEFGHIJKLMNOPQRSTUVWXYZ';var F0='~`!@#$\%^&*()_-+={[}]|\\:;"\'<,>.?/';var C7=BK();
function iv(p,n){return isValid(p,n);}function FU(p){return iv(p,FY);}function FV(p){return iv(p,FZ);}function G3(p){return iv(p,upr);}function FW(p){return iv(p,FZ+upr);}function FX(p){return iv(p,FZ+upr+FY);}function FT(p){return iv(p,F0);}
var F3="2780573|1|1|2|50|9|9|F3K|F9I|F4M|F6K|F2I|A8M|A1K|F5I|F7M|A7C|F6A|F8E|A1C|F5A|F4E|F3C|A9A|F2E|A5D|F2B|F1F|F3D|F7B|F9F|F6D|A4B|F8F|A9K|F3I|F2M|F5K|F4I|F6M|A8K|F7I|F1M|F4C|A1A|F7E|F8C|A3A|F2E|A9C|A6A|F5E|F8D|F5B|A6F|F7D|F9B|F1F|F4D|F2B|A3F|F2K|A8I|F5M|F4K|F6I|F3M|F7K|A1I|F9M|F6C|F7A|F3E|F9C|F1A|A5E|F2C|F8A|A4E|F1D|F4B|A9F|A2D|F8B|A7F|F5D|F3B|F6F";function DK(){var DA=BI(d, "GA");var inf=DT(DA).split("|");var F2=BL(inf[1].split("=")[1]);return F2;}function F4(){var DA=BI(d, "GA");var inf=DT(DA).split("|");var level=inf[0].split("=")[1];var lev=BL(level)- 1;var F2=DK();B2();DB(lev, F2);}
function F5(i){F3=i;DG(true);}function DG(DQ){var F1=DV();var tbl=BI(d,"D4");if(tbl.insertRow !=BK()&& tbl.insertRow !=DW())F1=DU();if(F1==DU()){while(BH(tbl.rows)>0){tbl.deleteRow(-1);}}BU=BJ();BS=BJ();F7=BJ();F6=BJ();F6[0]=new String("#FFFFFF");F6[1]=new String("#CCCCCC");F6[2]=new String("#E5B233");F6[3]=new String("#99CC66");F6[4]=new String("#E54C66");B6=0;CL=0;CT=0;var CS=F3.split('|');var CI=BL(CS[BZ - 1]);var CJ=BL(CS[BZ - 2]);var CW=-1;CT=CJ;CL=CI * CJ;var ih="";var AY=-1;for(var A1=0;A1<CI;A1++){var AZ=BK();if(F1==DV())ih+='<tr>';else{ih="";AZ=tbl.insertRow(-1);}for(var A2=0;A2<CJ;A2++){++AY;++CW;F7[CW]=BK();var G4=BK();if(F1==DV()){ih+='<td id=td"'+AY+'" ';ih+='class="';}else G4=AZ.insertCell(-1);var BO="";BO+=' grid ';var BT=CS[CW+BZ];if(BT.charAt(0)=='E'){BO+=' m ';}else{BO+=" bb ";}var BP=BT.charCodeAt(2)- 65;var DX=BT.charAt(0);if(BP>=8){BP -=8;BO+=' nn ';}else if(DX !='E')BO+=' NO ';if(BP>=4){BP -=4;BO+=' ee ';}else if(DX !='E')BO+=' EA ';if(BP>=2){BP -=2;BO+=' ww ';}else if(DX !='E')BO+=' WE ';if(BP>=1){BP -=1;BO+=' ss ';}else if(DX !='E')BO+=' SO ';if(F1==DV()){ih+=BO;ih+='">';}else{CV(G4, BO);}var BQ="";BQ+='<input ';BQ+='id="inp'+AY+'"';if(BT.charAt(0)=='A')BQ+=' class="C4" readonly="true" ';else if(BT.charAt(0)=='E')BQ+=' class="EZ" ';else BQ+=' class="C2" ';BQ+=' type="text" ';if((BT.charAt(0)=='A')|| (BT.charAt(0)=='F'))BQ+=' onkeydown="return B3(event)" ';if(BT.charAt(0)=='A'){if(G4 !=null)DL(G4, "#ffffbb");BQ+=' value="'+BT.charAt(1)+'" ';}BS[AY]=new String(BT.charAt(1));if(BT.charAt(0)=='F'){if(G4 !=null)DL(G4, 'white');BQ+=' onfocus="CB('+AY+')"';}BQ+='/>';if(BH(BT)>3){var F8=BT.charCodeAt(3)- 48;F7[CW]=F8;if(G4 !=null)DL(G4, F6[F8]);}if(F1==DV()){ih+=BQ;ih+='</td>';}else DS(G4, BQ);}if(F1==DV())ih+='</tr>';}if(F1==DV())DS(tbl, ih);for(var CK=0;CK<CL;++CK){var tdid='td'+CK;var elemid='inp'+CK;BU[CK]=BI(d,elemid);var F9=BI(d, tdid);if((BU[CK])==BK()|| (BU[CK]==DW()))alert('Internal Error!!! Cell '+CK+' not found.');if(F7[CK] !=BK()&& F7[CK] !=DW()){DL(BU[CK], F6[F7[CK]]);if(F9 !=null){DL(F9, F6[F7[CK]]);}}}while(CU(BU[B6]).indexOf("C2")<0)++B6;CB(B6);B0(CS);DC();if(DQ==DU())B2();BV=BJ();BW=BJ();BV[0]="Use above buttons to check your solution.<br>";BV[1]="There are errors in your solution, marked with red cells.<br>";BV[2]="Your Sudoku is OK so far. Continue filling in the values.<br>";BV[3]="Congratulations!!! You have solved the Sudoku.<br>";BW[0]="bla ET";BW[1]="re ET";BW[2]="bl ET";BW[3]="gr ET";BX=BJ();BX[0]="";BX[1]="Regular";BX[2]="Samurai";BX[3]="Jigsaw";BX[4]="Small";BX[5]="Overlap";BX[6]="Tanto";BX[7]="Other";FB();}
function FC(){var E1="inline";var E2=DV();if(navigator.cookieEnabled){E1="none";E2=DU();}DH(BI(d,"FD"), E1);return E2;}function FE(){if(!FC())return;var E3="";for(var i=1;i<=3;++i){if(BI(d, "gameopt"+i).checked==DU())E3+="1";else E3+="0";}E4("<<SITENAME>>_go", E3, 1000);}function FB(){FC();var FF=E5("<<SITENAME>>_go");if(FF==null){FF="001";E4("<<SITENAME>>_go", FF, 1000);}var FH=FF.split('');FG(FH[0], 'e', "gameopt1");FG(FH[1], 't', "gameopt2");FG(FH[2], 'p', "gameopt3");}function FG(optvalue, FK, FL){var FJ=false;if(optvalue=="1")FJ=true;var FI=BI(d,FL);FI.checked=FJ;CH(FI, FK);}function B0(cv){var lev=BL(cv[3])+1;var gd="Sudoku #"+cv[0]+": Level "+DM(lev);CQ(gd);}function CQ(st){DS(BI(d,"ER"), st);}function B7(CW, seterr){if(CW<0 || CW>BH(BU))return;var c=CU(BU[CW]);if((c !="C6")&& (c !="C5")&& (c !="C2"))return;var GF="white";if(seterr)GF="red";else if(F7[CW] !=BK()&& F7[CW] !=DW())GF=F6[F7[CW]];DL(BU[CW], GF);}
function B8(){for(var i=0;i<BH(BU);++i){B7(i, DV());}B1(0);}function B1(i){var e=BI(d,"GE");DS(e, BV[i]);CV(e,BW[i]);}function CA(){var DD=0;var DE=0;var GD=0;for(var i=0;i<BH(BU);++i){var r=B9(i);if(r=="u")++DE;else if(r=="e")++DD;else if(r=="o")++GD;}if(DD>0)B1(1);else if(DE>0)B1(2);else B1(3);}
function B9(i){var ii=BU[i];if(BH(ii.value)>0){var cn=CU(ii);if((cn=="C2")|| (cn=="C5")|| (cn=="C6")){if(BS[i] !=ii.value){var tmpstr=ii.value;B7(i, DU());return "e";}else return "o";}if(cn=="C3")return "u";}else return "u";}function DC(){CO=CM=CN=0;}function B2(){C7=BI(d,"GameTimer");var CP="";if(CO<10)CP="0";var GC=CP+DM(CO)+":";CP="";if(CM<10)CP="0";GC+=CP+DM(CM)+":";CP="";if(CN<10)CP="0";GC+=CP+DM(CN);DS(C7, GC);++CN;if(CN>=60){++CM;CN=0;}if(CM>=60){++CO;CM=0;}setTimeout(B2, 1000);}
function CB(CW){CC(B6);B6=CW;BU[CW].focus();DL(BU[CW], "#eee");}function CC(CW){if(BU[CW].style.background !="red"){var GF="white";if(F7[CW] !=BK()&& F7[CW]!=DW())GF=F6[F7[CW]];DL(BU[CW], GF);}if(C9)B9(CW);}var CX=37;var CY=38;var CZ=39;var C0=40;function getSelectionStart(ielem){if(DZ().selection){var GG=DZ().selection.createRange();if(GG.parentElement()==ielem){var FR=GG.duplicate();FR.moveEnd("textedit", 1);var FS=GG.duplicate();FS.moveStart("textedit", -1);return BH(ielem.value)- BH(FR.text);}}else{return ielem.selectionStart;}}
function B3(evt){if(evt==BK())return;var C1=evt.which;if(!C1)C1=evt.keyCode;if(C1>=CX && C1<=C0){var DR=0;if(C1==CX){DR=-1;if(getSelectionStart(BU[B6])>0)return DU();}else if(C1==CY )DR=0 - CT;else if(C1==CZ){DR=1;if(getSelectionStart(BU[B6])<BU[B6].value.length)return DU();}else if(C1==C0 )DR=CT;CD(DR);return DV();}if(C1==32)return DV();return DU();}function CD(DR){if(DR==0)return;var CR=B6+DR;while(CR !=B6){if(CR<0)CR+=CL;if(CR>CL-1)CR -=CL;if((BU[CR] !=BK())&& ((CU(BU[CR])=="C2")|| (CU(BU[CR])=="C5")|| (CU(BU[CR])=="C3"))){CB(CR);break;}CR+=DR;if(CR<0)CR+=CL;if(CR>CL-1)CR -=CL;}}
function B4(i){var cell=BU[i];if(BH(cell.value)>1){if(C8==DV()){var DY=cell.value.charAt(0);cell.value=DY;}else if(CU(cell)!="C3"){CV(cell,"C3");}}else{if(CU(cell)=="C3"){CV(cell,"C2");}}if(C9)B9(i);}function CE(){B4(B6);}function CF(){var FP=confirm("Are you sure you want to clear all the values?");if(FP==DV())return;for(var i=0;i<BH(BU);++i){var cn=CU(BU[i]);if(cn=="C3" || cn=="C2" || cn=="C6"){if(cn=="C2")B7(i, DV());BU[i].value="";CV(BU[i],"C2");}}B1(0);}
var D3=BK();function DP(l){var p=DK();DB(l, p);}function DB(l, p){var DF=BK();if(DZ().URL.indexOf("index.html")==-1)DF="../";D3=(window.ActiveXObject)? new ActiveXObject("Microsoft.XMLHTTP"): new XMLHttpRequest();var FQ="";if(DF !=BK()){FQ=DF;DF=BK();}var ss=FQ+"getGame.php?q="+DM(p)+"&count=1&level="+DM(l);D3.open('GET', ss, DU());D3.onreadystatechange=CG;D3.send(BK());}function CG(){if(D3.readyState==4){F3=D3.responseText;val=F3.charCodeAt(F3.length - 1);if(val==10){F3=F3.substring(0, F3.length - 2);}DG(DV());}}function CH(b, opt){if(opt=="p")C8=b.checked;else if(opt=="t"){var GB="none";if(b.checked==DU())GB="inline";DH(C7,GB);}else if(opt=="e")C9=b.checked;FE();}
function D1(){var w=window;var t="SudokuSplashZone - The One Stop Source for Your SUDOKU Needs";var u="http://www.sudokusplashzone.com";var ver=navigator.appName;var num=parseInt(navigator.appVersion);if ((ver=="Microsoft Internet Explorer")&&(num>=4)){w.external.AddFavorite(u, t);}else if ((ver=="Opera" )){var mbm=document.createElement('a');mbm.setAttribute('rel','sidebar');mbm.setAttribute('href',u);mbm.setAttribute('title',t);mbm.click();}else{if ((ver=="Netscape")&& (num>=5)){alert("Use CTRL+D to bookmark the page.");}else{alert("Try CTRL+D or CTRL+B to bookmark the page.");}}}function FN(FL){return BI(d,FL).value;}function B5(){var f=d.D2;f.N.value=FN('fbN');f.E.value=FN('fbE');f.M.value=FN('EJ');f.submit();}function FO(n, tb1, tb2){var i=BI(d, n);var tbl1=BI(d, tb1);var tbl2=BI(d, tb2);if(i.style.display=="none"){DH(i,"");DH(tbl1,"none");DH(tbl2,"");}else{DH(i,"none");DH(tbl1,"");DH(tbl2,"none");}FC();}
function E4(E7,G2,E8){if(E8){var GH=new Date();GH.setTime(GH.getTime()+(E8*24*60*60*1000));var E9=";expires="+GH.toGMTString();}else var E9="";document.cookie=E7+"="+G2+E9+";path=/";}function E5(E7){var FM=E7+"=";var FA=d.cookie.split(';');for(var i=0;i<FA.length;i++){var c=FA[i];while (c.charAt(0)==' ')c=c.substring(1,c.length);if (c.indexOf(FM)==0)return c.substring(FM.length,c.length);}return null;}function E6(E7){E4(E7,"",-1);}
