
var m0 = new Array(1)

m0[0] = new Array(50,34,9,17,57,42,2,9,52,36,12,20,61,43,5,33,48,40,33,42,51,42,13,29,59,52,6,21,58,30,29,36,30,21,3,21,43,36,9,36,52,36,1,18,62,45,4,6,71,5,60,62,127,61,21,37,61,60,18,24,56,59,0,3,59,35,37,36,35,36,5,21,49,33,24,9,45,28,8,24,36,35,11,19,28,38,21,22,53,45,3,0,35,43,9,3,38,44,15,31,44,50,3,18,43,44,24,33,42,33,18,28,44,42,0,5,60,44,10,26,54,46,31,39,62,54,39,46,55,46,5,37,33,26,17,26,44,36,37,36,45,36,22,38,50,44,38,36,40,32,36,35,54,61,35,43,42,43,28,43,32,24,43,33,61,52,6,13,52,45,19,27,44,38,13,12,38,28,12,19,28,13,19,11,45,37,11,10,13,28,33,18,28,43,10,19,24,16,27,34,43,53,19,27,37,44,34,42,53,43,20,28,46,38,14,30,43,60,28,36,60,50,18,8,50,60,8,25,60,50,27,28,50,60,28,27,60,50,25,8,50,40,8,18,40,50,27,34,44,36,34,41,50,44,42,50,44,50,41,50,36,27,18,33,27,26,33,16,26,35,16,10,35,36,10,20,36,29,50,43,29,20,43,36);
m0[0].base = new Array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,23,24,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,0);
m0[0].root =0;
m0[0].move =0;
var n0 = new Array();
var b0 = -1;
var pieces = "KDSLT ";
function g0(a,b)
{	gm(m0,n0,0,b0,'agrr4g0.htm',a,b);}
function MB50()
{b0=MB5(m0,n0,0,b0,'agrr4g0.htm'); GMS(m0,n0,0,b0,'agrr4g0.htm');}
function MB0()
{b0=MB(m0,n0,0,b0,'agrr4g0.htm'); GMS(m0,n0,0,b0,'agrr4g0.htm');}
function MF50()
{b0=MF5(m0,n0,0,b0,'agrr4g0.htm'); GMS(m0,n0,0,b0,'agrr4g0.htm');}
function MF0()
{b0=MF(m0,n0,0,b0,'agrr4g0.htm',true); iagrr40.value=GMS(m0,n0,0,b0,'agrr4g0.htm');}

var m1 = new Array(1)

m1[0] = new Array(52,36,12,28,62,45,1,18,61,25,6,21,51,43,5,26,60,62,127,61,11,19,50,42,4,6,71,5,58,30,15,23,30,39,3,12,57,51,8,16,25,32,26,8,61,60,14,30,45,30,23,30,39,30,6,14,59,45,5,7,51,61,7,31,45,31,21,31,30,12,18,12,61,44,31,21,54,46,21,38,44,38,2,38,32,59,38,47,59,45,0,5,45,54,47,38,56,58,13,29,36,29,38,29,43,35,12,18,58,59,28,35,54,18,35,42,18,9,29,38,49,42,5,53,59,35,53,48,60,12,14,21,12,10,48,50,10,34,50,42,62,61,38,47,61,60,8,35,34,35,21,28,35,39,47,2,60,51,42,10,9,2,10,2,51,43,2,1,39,31,28,21,46,38,19,27,55,39,1,41,43,51);
m1[0].base = new Array(0,1,2,3,4,5,6,7,8,8,9,10,11,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,0);
m1[0].root =0;
m1[0].move =0;
var n1 = new Array();
var b1 = -1;
var pieces = "KDSLT ";
function g1(a,b)
{	gm(m1,n1,1,b1,'agrr4g1.htm',a,b);}
function MB51()
{b1=MB5(m1,n1,1,b1,'agrr4g1.htm'); GMS(m1,n1,1,b1,'agrr4g1.htm');}
function MB1()
{b1=MB(m1,n1,1,b1,'agrr4g1.htm'); GMS(m1,n1,1,b1,'agrr4g1.htm');}
function MF51()
{b1=MF5(m1,n1,1,b1,'agrr4g1.htm'); GMS(m1,n1,1,b1,'agrr4g1.htm');}
function MF1()
{b1=MF(m1,n1,1,b1,'agrr4g1.htm',true); iagrr41.value=GMS(m1,n1,1,b1,'agrr4g1.htm');}

var m2 = new Array(1)

m2[0] = new Array(52,36,10,26,62,45,1,18,51,43,11,19,57,42,6,21,58,30,12,20,59,51,5,12,61,52,20,28,30,21,14,21,42,27,15,31,45,39,18,35,50,42,21,29,27,12,3,12,54,46,35,52,51,52,29,37,60,58,120,59,2,11,58,57,4,2,64,3,43,35,28,35,42,35,19,27,63,60,7,4,52,31,27,36,31,26,12,26,35,26,36,44,53,44,37,44,57,58,4,28,49,33,28,36,48,40,3,7,59,43,44,52,58,51,11,25,43,27,25,34,27,19,7,31,39,45,31,29,45,35,29,61,55,39,61,60,51,60,36,44,39,31,44,43,35,52,43,40,31,23,40,44,19,51,44,4,46,38,13,21,60,53,4,7,38,30,21,30,51,19,7,5,53,60,5,4,19,51,4,20,23,15,20,23,51,35,34,52,60,52,23,15,52,45,15,14,45,38,2,10,33,25,8,16,25,16,9,16,35,32,10,18,32,16);
m2[0].base = new Array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,28,29,30,31,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,0);
m2[0].root =0;
m2[0].move =0;
var n2 = new Array();
var b2 = -1;
var pieces = "KDSLT ";
function g2(a,b)
{	gm(m2,n2,2,b2,'agrr4g2.htm',a,b);}
function MB52()
{b2=MB5(m2,n2,2,b2,'agrr4g2.htm'); GMS(m2,n2,2,b2,'agrr4g2.htm');}
function MB2()
{b2=MB(m2,n2,2,b2,'agrr4g2.htm'); GMS(m2,n2,2,b2,'agrr4g2.htm');}
function MF52()
{b2=MF5(m2,n2,2,b2,'agrr4g2.htm'); GMS(m2,n2,2,b2,'agrr4g2.htm');}
function MF2()
{b2=MF(m2,n2,2,b2,'agrr4g2.htm',true); iagrr42.value=GMS(m2,n2,2,b2,'agrr4g2.htm');}

var m3 = new Array(1)

m3[0] = new Array(52,36,12,28,62,45,1,18,61,25,8,16,25,18,11,18,51,35,28,35,59,35,2,38,58,44,38,45,54,45,3,35,44,35,4,2,64,3,35,42,6,12,57,51,13,21,60,58,120,59,12,22,51,34,5,26,34,44,22,37,63,60,3,59,60,59,37,52,58,51,52,42,51,42,26,19,55,47,14,22,49,41,19,28,42,43,15,31,48,32,7,3,43,52,3,59,44,59,2,11,52,44,22,30,44,43,9,25,59,44,11,19,50,42,16,24,44,29,19,26,29,14,31,39,14,29,26,17,29,44,17,26,44,38,25,33,42,34,28,42,45,37,30,37,38,23,42,35,43,52,35,28,23,29,28,19,52,43,19,28,29,39,26,19,39,29,19,11,43,52,18,26,52,45,11,20,45,38,20,13,53,45,28,42,38,37,42,51,37,38,13,20,45,37,20,13,47,39,51,42,39,31,42,51,29,39,13,14,39,22,51,42,38,29,14,23,36,28,21,28,37,28,23,14,28,20,42,51,20,12,14,13,29,28,51,44,28,27,13,4,27,18,44,30,18,10,30,44,10,18,44,35,31,23);
m3[0].base = new Array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,17,18,19,20,21,22,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,0);
m3[0].root =0;
m3[0].move =0;
var n3 = new Array();
var b3 = -1;
var pieces = "KDSLT ";
function g3(a,b)
{	gm(m3,n3,3,b3,'agrr4g3.htm',a,b);}
function MB53()
{b3=MB5(m3,n3,3,b3,'agrr4g3.htm'); GMS(m3,n3,3,b3,'agrr4g3.htm');}
function MB3()
{b3=MB(m3,n3,3,b3,'agrr4g3.htm'); GMS(m3,n3,3,b3,'agrr4g3.htm');}
function MF53()
{b3=MF5(m3,n3,3,b3,'agrr4g3.htm'); GMS(m3,n3,3,b3,'agrr4g3.htm');}
function MF3()
{b3=MF(m3,n3,3,b3,'agrr4g3.htm',true); iagrr43.value=GMS(m3,n3,3,b3,'agrr4g3.htm');}

var m4 = new Array(1)

m4[0] = new Array(51,35,6,21,50,34,14,22,57,42,11,27,62,45,5,14,59,41,10,18,52,44,4,6,71,5,61,43,27,34,43,34,1,11,60,62,127,61,11,17,34,43,2,20,41,50,20,34,43,34,17,34,50,41,9,25,61,59,3,10,44,36,12,28,35,27,18,27,36,27,25,33,41,33,0,1,42,25,28,36,33,5,6,5,25,10,36,45,54,45,21,11,48,32,1,9,10,25,8,16,25,35,11,26,49,41,26,41,35,41,9,41,56,48,34,28,27,19,5,4,48,50,28,45,62,54);
m4[0].base = new Array(0,1,2,3,4,5,6,7,8,9,10,11,11,12,13,14,15,16,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,0);
m4[0].root =0;
m4[0].move =0;
var n4 = new Array();
var b4 = -1;
var pieces = "KDSLT ";
function g4(a,b)
{	gm(m4,n4,4,b4,'agrr4g4.htm',a,b);}
function MB54()
{b4=MB5(m4,n4,4,b4,'agrr4g4.htm'); GMS(m4,n4,4,b4,'agrr4g4.htm');}
function MB4()
{b4=MB(m4,n4,4,b4,'agrr4g4.htm'); GMS(m4,n4,4,b4,'agrr4g4.htm');}
function MF54()
{b4=MF5(m4,n4,4,b4,'agrr4g4.htm'); GMS(m4,n4,4,b4,'agrr4g4.htm');}
function MF4()
{b4=MF(m4,n4,4,b4,'agrr4g4.htm',true); iagrr44.value=GMS(m4,n4,4,b4,'agrr4g4.htm');}

var m5 = new Array(1)

m5[0] = new Array(52,36,10,26,57,42,11,19,51,43,1,18,62,52,14,22,54,46,5,14,61,54,12,20,60,62,127,61,6,12,62,63,0,1,48,40,4,6,71,5,53,37,9,17,46,38,13,29,36,29,20,29,38,29,2,29,52,46,29,2,42,52,2,9,50,42,3,11,52,62,18,3,62,45,3,20,54,47,12,29,63,62,6,7,58,51,11,25,59,50,9,45,61,45,20,35,42,35,29,35,50,59,35,45,59,45,25,49,56,59,49,40,46,36,1,3,36,30,3,4,30,20,5,13,45,27,40,32,59,60,32,50,51,44,14,42,20,35,42,35,44,35,26,35,60,4,7,14,27,35,14,23,35,44,8,24,37,29,23,14,44,35,14,23,35,37,23,14,29,21);
m5[0].base = new Array(0,1,2,3,4,5,6,7,8,9,10,11,12,12,13,14,15,16,17,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,0);
m5[0].root =0;
m5[0].move =0;
var n5 = new Array();
var b5 = -1;
var pieces = "KDSLT ";
function g5(a,b)
{	gm(m5,n5,5,b5,'agrr4g5.htm',a,b);}
function MB55()
{b5=MB5(m5,n5,5,b5,'agrr4g5.htm'); GMS(m5,n5,5,b5,'agrr4g5.htm');}
function MB5()
{b5=MB(m5,n5,5,b5,'agrr4g5.htm'); GMS(m5,n5,5,b5,'agrr4g5.htm');}
function MF55()
{b5=MF5(m5,n5,5,b5,'agrr4g5.htm'); GMS(m5,n5,5,b5,'agrr4g5.htm');}
function MF5()
{b5=MF(m5,n5,5,b5,'agrr4g5.htm',true); iagrr45.value=GMS(m5,n5,5,b5,'agrr4g5.htm');}

var m6 = new Array(1)

m6[0] = new Array(52,36,11,19,51,35,6,21,57,42,14,22,53,37,5,14,62,45,4,6,71,5,36,28,21,11,28,20,13,20,55,39,20,28,61,34,12,20,34,20,6,7,37,28,11,28,20,27,28,45,27,45,3,12,42,52,15,23,59,43,2,29,43,34,29,20,34,32,1,11,58,51,11,17,32,33,20,34,60,62,127,61,34,52,56,60,12,39);
m6[0].base = new Array(0,1,2,3,4,5,6,7,8,9,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,38,39,40,41,0);
m6[0].root =0;
m6[0].move =0;
var n6 = new Array();
var b6 = -1;
var pieces = "KDSLT ";
function g6(a,b)
{	gm(m6,n6,6,b6,'agrr4g6.htm',a,b);}
function MB56()
{b6=MB5(m6,n6,6,b6,'agrr4g6.htm'); GMS(m6,n6,6,b6,'agrr4g6.htm');}
function MB6()
{b6=MB(m6,n6,6,b6,'agrr4g6.htm'); GMS(m6,n6,6,b6,'agrr4g6.htm');}
function MF56()
{b6=MF5(m6,n6,6,b6,'agrr4g6.htm'); GMS(m6,n6,6,b6,'agrr4g6.htm');}
function MF6()
{b6=MF(m6,n6,6,b6,'agrr4g6.htm',true); iagrr46.value=GMS(m6,n6,6,b6,'agrr4g6.htm');}

var m7 = new Array(1)

m7[0] = new Array(52,36,6,21,57,42,11,27,36,27,21,27,61,34,10,18,51,35,2,29,42,27,18,27,34,43,29,43,59,43,1,18,62,45,12,20,58,37,5,33,50,42,33,19,37,19,3,19,60,62,127,61,15,23,61,60,4,6,71,5,45,28,18,28,60,28,0,1,28,44,9,25,48,40,8,24,43,51,5,2,44,46,6,7,46,45,7,6,45,46,6,15,46,45,2,10,55,47,15,6,45,46,6,15,46,45,14,22,56,60,15,14,51,37,19,37,45,37,25,33,40,33,24,33,37,45,33,42,49,42,1,41,60,58,13,21,45,44,14,13,62,61,41,49,44,52,49,17,61,60,13,12,60,51,12,19,53,37,17,49,58,50,49,57,50,48,10,18,52,53,18,17,51,50);
m7[0].base = new Array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,24,25,26,27,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,0);
m7[0].root =0;
m7[0].move =0;
var n7 = new Array();
var b7 = -1;
var pieces = "KDSLT ";
function g7(a,b)
{	gm(m7,n7,7,b7,'agrr4g7.htm',a,b);}
function MB57()
{b7=MB5(m7,n7,7,b7,'agrr4g7.htm'); GMS(m7,n7,7,b7,'agrr4g7.htm');}
function MB7()
{b7=MB(m7,n7,7,b7,'agrr4g7.htm'); GMS(m7,n7,7,b7,'agrr4g7.htm');}
function MF57()
{b7=MF5(m7,n7,7,b7,'agrr4g7.htm'); GMS(m7,n7,7,b7,'agrr4g7.htm');}
function MF7()
{b7=MF(m7,n7,7,b7,'agrr4g7.htm',true); iagrr47.value=GMS(m7,n7,7,b7,'agrr4g7.htm');}

var m8 = new Array(1)

m8[0] = new Array(62,45,12,20,54,46,9,17,61,54,2,9,60,62,127,61,6,21,49,41,5,12,58,49,4,6,71,5,51,43,11,27,50,34,10,26,52,44,1,18,57,42,8,16,48,40,3,10,42,52,5,3,59,50,27,34,41,34,3,11,56,57,0,1,61,59,21,38,55,47,38,28,45,28,18,28,49,28,10,28,57,17,9,54,17,1,28,1,62,54,11,9,50,32,9,49,52,37,1,9,44,36,14,22,47,39,12,21,32,4,6,14,39,31,9,12,31,23,14,23,4,6,21,35,59,63,23,30,63,31,30,38,31,39,12,39,46,39,49,53,54,63,38,46);
m8[0].base = new Array(0,1,2,3,4,5,6,6,7,8,9,10,11,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,0);
m8[0].root =0;
m8[0].move =0;
var n8 = new Array();
var b8 = -1;
var pieces = "KDSLT ";
function g8(a,b)
{	gm(m8,n8,8,b8,'agrr4g8.htm',a,b);}
function MB58()
{b8=MB5(m8,n8,8,b8,'agrr4g8.htm'); GMS(m8,n8,8,b8,'agrr4g8.htm');}
function MB8()
{b8=MB(m8,n8,8,b8,'agrr4g8.htm'); GMS(m8,n8,8,b8,'agrr4g8.htm');}
function MF58()
{b8=MF5(m8,n8,8,b8,'agrr4g8.htm'); GMS(m8,n8,8,b8,'agrr4g8.htm');}
function MF8()
{b8=MF(m8,n8,8,b8,'agrr4g8.htm',true); iagrr48.value=GMS(m8,n8,8,b8,'agrr4g8.htm');}

var m9 = new Array(1)

m9[0] = new Array(52,36,12,28,62,45,1,18,61,25,8,16,25,32,11,19,60,62,127,61,6,21,59,52,14,22,50,42,5,14,55,47,4,6,71,5,51,35,2,11,61,59,18,35,42,35,11,32,49,41,32,25,52,44,28,35,45,35,5,4,57,42,3,12,58,49,21,36,35,25,16,25,42,27,12,3,49,14,6,14,54,46,36,26,44,35,13,21,27,42,3,11,35,26,11,12,26,35,10,26,35,51,25,33,42,27);
m9[0].base = new Array(0,1,2,3,4,5,6,7,8,8,9,10,11,12,13,14,15,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,0);
m9[0].root =0;
m9[0].move =0;
var n9 = new Array();
var b9 = -1;
var pieces = "KDSLT ";
function g9(a,b)
{	gm(m9,n9,9,b9,'agrr4g9.htm',a,b);}
function MB59()
{b9=MB5(m9,n9,9,b9,'agrr4g9.htm'); GMS(m9,n9,9,b9,'agrr4g9.htm');}
function MB9()
{b9=MB(m9,n9,9,b9,'agrr4g9.htm'); GMS(m9,n9,9,b9,'agrr4g9.htm');}
function MF59()
{b9=MF5(m9,n9,9,b9,'agrr4g9.htm'); GMS(m9,n9,9,b9,'agrr4g9.htm');}
function MF9()
{b9=MF(m9,n9,9,b9,'agrr4g9.htm',true); iagrr49.value=GMS(m9,n9,9,b9,'agrr4g9.htm');}

var m10 = new Array(1)

m10[0] = new Array(49,33,12,28,48,40,11,27,52,44,5,19,58,49,6,21,50,34,10,18,62,45,3,12,34,27,18,27,61,52,4,6,71,5,33,25,2,29,60,62,127,61,1,11,40,32,0,2,51,43,2,10,57,51,5,2,59,41,11,26,41,48,29,43,52,43,26,43,51,41,10,50,56,57,12,10,45,60,50,49,57,49,43,49,48,49,10,42,49,42,2,42,41,24,42,10,60,45,6,5,61,59,5,12,62,61,15,23,59,57,21,11,24,41,9,17,57,59,12,20,45,51,19,33,53,37,13,21,51,45,10,42,37,29,20,12,41,35,28,35,45,35,11,28,35,20,28,34);
m10[0].base = new Array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,15,16,17,18,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,0);
m10[0].root =0;
m10[0].move =0;
var n10 = new Array();
var b10 = -1;
var pieces = "KDSLT ";
function g10(a,b)
{	gm(m10,n10,10,b10,'agrr4g10.htm',a,b);}
function MB510()
{b10=MB5(m10,n10,10,b10,'agrr4g10.htm'); GMS(m10,n10,10,b10,'agrr4g10.htm');}
function MB10()
{b10=MB(m10,n10,10,b10,'agrr4g10.htm'); GMS(m10,n10,10,b10,'agrr4g10.htm');}
function MF510()
{b10=MF5(m10,n10,10,b10,'agrr4g10.htm'); GMS(m10,n10,10,b10,'agrr4g10.htm');}
function MF10()
{b10=MF(m10,n10,10,b10,'agrr4g10.htm',true); iagrr410.value=GMS(m10,n10,10,b10,'agrr4g10.htm');}

var m11 = new Array(1)

m11[0] = new Array(52,36,12,28,62,45,1,18,61,25,8,16,25,18,11,18,51,35,2,38,35,28,3,59,60,59,4,2,64,3,59,52,5,26,58,30,3,4,30,44,38,45,54,45,4,28,44,26,28,26,57,42,6,12,56,59,12,22,63,62,26,31,62,63,9,25,52,44,31,47,59,62,7,4,62,46,47,46,53,46,13,29,63,59,29,36,42,36,22,28,49,41,4,5,36,51,18,26,55,47,5,3,59,61,28,18,51,36,3,27,61,53,25,33,50,34,33,42,98,98,36,42,27,28,42,36,2,9,46,38,14,30,45,37,30,37,53,37,18,33,37,29,28,12,48,32,33,50,44,37,9,17,32,24,17,9,36,26,9,18,26,16,50,35,16,33,18,9,24,16,9,8,29,21,35,20,37,46,20,35,33,18,35,18,21,18,12,44,46,39,44,41,18,10,8,16,10,15,16,17,38,30,17,18,30,22,18,19,22,14);
m11[0].base = new Array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,0);
m11[0].root =0;
m11[0].move =0;
var n11 = new Array();
var b11 = -1;
var pieces = "KDSLT ";
function g11(a,b)
{	gm(m11,n11,11,b11,'agrr4g11.htm',a,b);}
function MB511()
{b11=MB5(m11,n11,11,b11,'agrr4g11.htm'); GMS(m11,n11,11,b11,'agrr4g11.htm');}
function MB11()
{b11=MB(m11,n11,11,b11,'agrr4g11.htm'); GMS(m11,n11,11,b11,'agrr4g11.htm');}
function MF511()
{b11=MF5(m11,n11,11,b11,'agrr4g11.htm'); GMS(m11,n11,11,b11,'agrr4g11.htm');}
function MF11()
{b11=MF(m11,n11,11,b11,'agrr4g11.htm',true); iagrr411.value=GMS(m11,n11,11,b11,'agrr4g11.htm');}

var m12 = new Array(1)

m12[0] = new Array(51,35,6,21,58,37,14,22,57,51,5,14,52,36,11,19,50,42,4,6,71,5,61,34,1,18,35,27,18,24,34,52,9,17,53,45,10,26,55,39,21,31,37,55,12,20,54,46,20,27,36,27,5,4,51,36,13,29,36,30,15,23,30,20,2,20,27,20,19,27,59,51,24,34,52,34,27,34,60,58,120,59,3,51,59,51,4,20,62,47,0,4,58,59,20,44,63,61,44,43,61,53,4,44,47,62,31,21,53,52,21,27,52,44,27,44,59,52,43,51,52,51,44,61);
m12[0].base = new Array(0,1,2,3,4,5,6,7,8,9,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,0);
m12[0].root =0;
m12[0].move =0;
var n12 = new Array();
var b12 = -1;
var pieces = "KDSLT ";
function g12(a,b)
{	gm(m12,n12,12,b12,'agrr4g12.htm',a,b);}
function MB512()
{b12=MB5(m12,n12,12,b12,'agrr4g12.htm'); GMS(m12,n12,12,b12,'agrr4g12.htm');}
function MB12()
{b12=MB(m12,n12,12,b12,'agrr4g12.htm'); GMS(m12,n12,12,b12,'agrr4g12.htm');}
function MF512()
{b12=MF5(m12,n12,12,b12,'agrr4g12.htm'); GMS(m12,n12,12,b12,'agrr4g12.htm');}
function MF12()
{b12=MF(m12,n12,12,b12,'agrr4g12.htm',true); iagrr412.value=GMS(m12,n12,12,b12,'agrr4g12.htm');}

var m13 = new Array(1)

m13[0] = new Array(52,36,10,26,62,45,12,20,57,42,11,27,36,27,20,27,61,25,1,18,60,62,127,61,6,21,61,60,5,12,59,52,2,20,45,30,20,38,53,45,38,29,51,43,15,23,30,47,4,6,71,5,25,18,9,18,52,12,5,4,12,3);
m13[0].base = new Array(0,1,2,3,4,5,6,7,8,9,10,10,11,12,13,14,15,16,17,18,19,20,21,22,23,23,24,25,26,27,28,0);
m13[0].root =0;
m13[0].move =0;
var n13 = new Array();
var b13 = -1;
var pieces = "KDSLT ";
function g13(a,b)
{	gm(m13,n13,13,b13,'agrr4g13.htm',a,b);}
function MB513()
{b13=MB5(m13,n13,13,b13,'agrr4g13.htm'); GMS(m13,n13,13,b13,'agrr4g13.htm');}
function MB13()
{b13=MB(m13,n13,13,b13,'agrr4g13.htm'); GMS(m13,n13,13,b13,'agrr4g13.htm');}
function MF513()
{b13=MF5(m13,n13,13,b13,'agrr4g13.htm'); GMS(m13,n13,13,b13,'agrr4g13.htm');}
function MF13()
{b13=MF(m13,n13,13,b13,'agrr4g13.htm',true); iagrr413.value=GMS(m13,n13,13,b13,'agrr4g13.htm');}

var m14 = new Array(1)

m14[0] = new Array(52,36,10,26,62,45,1,18,51,35,26,35,45,35,8,16,57,42,12,20,35,41,6,21,58,30,5,12,61,52,21,36,30,12,36,42,12,3,42,59,3,17,59,49,56,57,49,32,17,44,32,42,57,49,42,52,60,52,4,6,71,5,44,26,5,4,26,19,9,25,50,42,18,12,41,24,12,29,19,33,11,27);
m14[0].base = new Array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,29,30,31,32,33,34,35,36,37,38,39,0);
m14[0].root =0;
m14[0].move =0;
var n14 = new Array();
var b14 = -1;
var pieces = "KDSLT ";
function g14(a,b)
{	gm(m14,n14,14,b14,'agrr4g14.htm',a,b);}
function MB514()
{b14=MB5(m14,n14,14,b14,'agrr4g14.htm'); GMS(m14,n14,14,b14,'agrr4g14.htm');}
function MB14()
{b14=MB(m14,n14,14,b14,'agrr4g14.htm'); GMS(m14,n14,14,b14,'agrr4g14.htm');}
function MF514()
{b14=MF5(m14,n14,14,b14,'agrr4g14.htm'); GMS(m14,n14,14,b14,'agrr4g14.htm');}
function MF14()
{b14=MF(m14,n14,14,b14,'agrr4g14.htm',true); iagrr414.value=GMS(m14,n14,14,b14,'agrr4g14.htm');}
var nMoves = new Array(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
var nLevels = new Array(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
var nNameCount = new Array(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
var nOld = new Array(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1);
baseName = 'agrr4';
var EmptyWhitePath = "../gif/w.gif";
var EmptyBlackPath = "../gif/b.gif";
// Copyright 98,99 by ChessBase GmbH, Germany
function Init( path )
{ gifs = new Array(6);
	for ( var i=0; i< 26; i++)
		gifs[i]= new Image();
	gifs[0].src = path + "b.gif";
	gifs[1].src = path + "bbb.gif";
	gifs[2].src = path + "bbw.gif";
	gifs[3].src = path + "bkb.gif";
	gifs[4].src = path + "bkw.gif";
	gifs[5].src = path + "bqb.gif";
	gifs[6].src = path + "bqw.gif";
	gifs[7].src = path + "brb.gif";
	gifs[8].src = path + "brw.gif";
	gifs[9].src = path + "bnb.gif";
	gifs[10].src = path + "bnw.gif";
	gifs[11].src = path + "wbb.gif";
	gifs[12].src = path + "wbw.gif";
	gifs[13].src = path + "wrb.gif";
	gifs[14].src = path + "wrw.gif";
	gifs[15].src = path + "wqb.gif";
	gifs[16].src = path + "wqw.gif";
	gifs[17].src = path + "wkb.gif";
	gifs[18].src = path + "wkw.gif";
	gifs[19].src = path + "wnb.gif";
	gifs[20].src = path + "wnw.gif";
	gifs[21].src = path + "wpb.gif";
	gifs[22].src = path + "wpw.gif";
	gifs[23].src = path + "bpb.gif";
	gifs[24].src = path + "wpb.gif";
	gifs[25].src = path + "b.gif";
}
function SyncPicture( base, basename )
{	if ( base > -1 ) return base;
	for ( i=0; i < document.images.length; i++ )
	{	if ( document.images[i].name != "" )
			if ( document.images[i].name == basename )
				return i;
			else if ( document.images[i].name.substring(0,3) == basename.substring(0,3) )
				i+= 63;
	}
	return -1;
}
function MF5( moves, names, nm, base, basename )
{	base = SyncPicture( base, basename );
	for ( i=0; nMoves[nm] < moves[nLevels[nm]].length / 2 && i < 10; i++ )
		MF( moves, names, nm, base, false );
	return base;
}
function MB5( moves, names, nm, base, basename )
{	base = SyncPicture( base, basename );
	for ( i=0; ( nMoves[nm] > 0 || nLevels[nm] > 0 ) && i < 10; i++ )
		MB( moves, names, nm, base );
	return base;
}
function GoStart( moves, names, nm, base, basename )
{	base = SyncPicture( base, basename );
	while ( nMoves[nm] > 0 || nLevels[nm] > 0 )
		MB( moves, names, nm, base );
	return base;
}
function GoEnd( moves, names, nm, base, basename )
{	base = SyncPicture( base, basename );
	while ( nMoves[nm] < moves[nLevels[nm]].length / 2 )
		MF( moves, names, nm, base, false );
	return base;
}
function MF( moves, names, nm, base, basename, bCheckV )
{	base = SyncPicture( base, basename );
	if ( bCheckV )
	{	var b = false;
		for ( i=0; i < moves.length; i++ )
			if ( i != nLevels[nm] && moves[i].root == nLevels[nm] && moves[i].move == nMoves[nm] )
				b = true;
		if ( b )
		{	var vf = window.open('', 'Frank', 'status=no,scrollbars=no,menubar=no,toolbar=no,width=240,height=160')
			with ( vf.document )
			{	open();
				write('<HTML><HEAD><TITLE>Varianten</TITLE></HEAD><BODY><DIV ID="disp"></DIV><LAYER id="NS"></LAYER></BODY></HTML>')
				close()
			}
			vf.erzeuger = self;
			var ihtml="<a href=\"javascript:erzeuger.MF(erzeuger.m" + nm +
						 ",erzeuger.n" + nm + "," + nm + ",erzeuger.b" + nm + ",'" + basename + "',false);";
			ihtml = ihtml + "erzeuger.GMS(erzeuger.m" + nm +
						",erzeuger.n" + nm + "," + nm + ",erzeuger.b" + nm + ",'" + basename + "');";
			ihtml = ihtml + "self.close()\">";
			ihtml = ihtml + "Hauptvariante - Main line" + "<\a>";
			ihtml = ihtml + "<BR>";
			var nCurrentLevel=nLevels[nm];
			var nMoveNum=nMoves[nm];
			for ( j=0; j < moves.length; j++ )
			{	if ( j != nCurrentLevel && moves[j].root == nCurrentLevel && moves[j].move == nMoveNum )
				{	gm( moves,names,nm,base,basename,1,j);
					var moveStr = GMS2( moves, names, nm, base, 1, j, basename );
					ihtml = ihtml + "<a href=\"javascript:erzeuger.gm(erzeuger.m" + nm +
						",erzeuger.n" + nm + "," + nm + ",erzeuger.b" + nm + ",'" + basename + "',";
					ihtml = ihtml + "1," + j + ");self.close()\">";
					ihtml = ihtml + moveStr + "<\a>";
					ihtml = ihtml + "<BR>";
					gm( moves,names,nm,base,basename,nMoveNum,nCurrentLevel);
				}
			}
			if ( document.all )
				vf.document.all.disp.innerHTML=ihtml
			else if ( document.layers )
			{	vf.document.layers[0].document.clear();
				vf.document.layers[0].document.write(ihtml);
				vf.document.layers[0].document.close();
			}
			return base;
		}
	}
	if ( nMoves[nm] < moves[nLevels[nm]].length / 2 )
	{	var n = nMoves[nm]*2;
		var from = moves[nLevels[nm]][ n ] & 0x3f;
		var to = moves[nLevels[nm]][ n+1 ] & 0x3f;
		names[ nNameCount[nm]   ] = document.images[ base + from ].src;
		names[ nNameCount[nm]+1 ] = document.images[ base + to ].src;
		var len = names[nNameCount[nm]].length;
		var nn = (Math.floor(( to / 8 )) + ( to % 8 ));
		var dest = ( nn % 2 ) == 1 ? "b" : "w";
		var piece = names[nNameCount[nm]].substring(len-6,len-5);
		if (( moves[nLevels[nm]][ n ] & 0x380 ) == 0x80 )
			piece = "q";
		else if (( moves[nLevels[nm]][ n ] & 0x380 ) == 0x100 )
			piece = "n";
		else if (( moves[nLevels[nm]][ n ] & 0x380 ) == 0x180 )
			piece = "b";
		else if (( moves[nLevels[nm]][ n ] & 0x380 ) == 0x200 )
			piece = "r";
		document.images[ base + to ].src = names[nNameCount[nm]].substring(0,len-6) + piece + dest + names[nNameCount[nm]].substring(len-4,len);
		nn = (Math.floor(( from / 8 )) + ( from % 8 ));
		if (( nn % 2 ) == 1 )
			document.images[ base + from ].src = EmptyBlackPath;
		else
			document.images[ base + from ].src = EmptyWhitePath;
		nMoves[nm]++;
		nNameCount[nm] = nNameCount[nm] + 2;
		if ( nMoves[nm] < moves[nLevels[nm]].length / 2 && ( moves[nLevels[nm]][ nMoves[nm]*2 ] & 0x40 ) == 0x40 )
			MF( moves, names, nm, base, bCheckV );
	}
	return base
}
function MB( moves, names, nm, base, basename )
{	base = SyncPicture( base, basename );
	if ( nMoves[nm] > 0 )
	{	nMoves[nm]--;
		nNameCount[nm] -= 2;
		var from = moves[nLevels[nm]][ nMoves[nm]*2 ] & 0x3f;
		var to = moves[nLevels[nm]][ nMoves[nm]*2+1 ] & 0x3f;
		document.images[ base + from ].src = names[ nNameCount[nm] ];
		document.images[ base + to ].src = names[ nNameCount[nm]+1 ];
		if (( moves[nLevels[nm]][ nMoves[nm]*2 ] & 0x40 ) == 0x40 )
			MB( moves, names, nm, base );
	}
	if ( nMoves[nm] == 0 )
		if ( nLevels[nm] > 0 )
		{	nMoves[nm] = moves[nLevels[nm]].move;
			nLevels[nm] = moves[nLevels[nm]].root;
			if (( moves[nLevels[nm]][nMoves[nm]*2] & 0x40 ) == 0x40 )
				nMoves[nm]--;
		}
	return base;
}
function GMS2(  moves, names, nm, base, nMoveNumber, nLevel, basename )
{	if ( nMoveNumber > 0 )
	{	var n = (nMoveNumber-1)*2;
		var off=1;
		for ( i=0; i <= n; i += 2 )
			if (( moves[nLevel][i] & 0x40 ) == 0x40 )
				off = off+1;
		var from = moves[nLevel][ n ] & 0x3f;
		var to = moves[nLevel][ n+1 ] & 0x3f;
		var len = document.images[ base + to ].src.length;
		var piece = document.images[ base + to ].src.substring(len-6,len-5);
		if ( piece == "q" )
			piece = pieces.substring(1,2);
		else if ( piece == "r" )
			piece = pieces.substring(4,5);
		else if ( piece == "b" )
			piece = pieces.substring(3,4);
		else if ( piece == "n" )
			piece = pieces.substring(2,3);
		else if ( piece ==  "k" )
			piece = pieces.substring(0,1);
		else piece = pieces.substring(5,6);
		var piece2 = "";
		if (( moves[nLevel][ n ] & 0x380 ) == 0x80 )
			piece2 = pieces.substring(1,2);
		else if (( moves[nLevel][ n ] & 0x380 ) == 0x100 )
			piece2 = pieces.substring(2,3);
		else if (( moves[nLevel][ n ] & 0x380 ) == 0x180 )
			piece2 = pieces.substring(3,4);
		else if (( moves[nLevel][ n ] & 0x380 ) == 0x200 )
			piece2 = pieces.substring(4,5);
		var lines = "abcdefgh";
		var rows = "87654321";
		var fromLine = from%8;
		var fromRow = Math.floor(from/8);
		var toLine = to%8;
		var toRow = Math.floor(to/8);
		var moveNumber = gmn( moves, nLevel ) + nMoveNumber-off;
		var result = (Math.floor((moveNumber)/2)+1).toString() + ". ";
		if ( document.images[ base + to ].src.substring(len-7,len-6) == "b" )
			result = result + "... ";
		if ( n >= 2 && (( moves[nLevel][n] & 0x40 ) == 0x40 ))
		{	if (( moves[nLevel][n-1] == 62 ) || ( moves[nLevel][n-1] == 6 ))
				result = result + "0-0"
			else if (( moves[nLevel][n-1] == 2 + 7 * 8 ) || ( moves[nLevel][n-1] == 2 + 0 * 8 ))
				result = result + "0-0-0"
			else
			{	var sep = "x";
				from = moves[nLevel][ n-2 ] & 0x3f;
				to = moves[nLevel][ n-1 ] & 0x3f;
				fromLine = from%8;
				fromRow = Math.floor(from/8);
				toLine = to%8;
				toRow = Math.floor(to/8);
				result = result	+ lines.substring( fromLine, fromLine+1 ) + rows.substring( fromRow, fromRow+1 )
										+ sep
										+ lines.substring( toLine, toLine+1 ) + rows.substring( toRow, toRow+1 )
										+ piece2 + " ep";
			}
		}
		else
		{	var len = names[ nNameCount[nm]-1 ].length;
			var substr = names[ nNameCount[nm]-1 ].substring( len-6, len );
			var sep = (( substr == "/w.gif" ) || ( substr == "\\w.gif" ) ||
						  ( substr == "/b.gif" ) || ( substr == "\\b.gif" )) ? "-" : "x";
			if ( piece2 != "" ) piece = "";
			result = result + piece.toUpperCase() + lines.substring( fromLine, fromLine+1 ) + rows.substring( fromRow, fromRow+1 )
				+ sep
				+ lines.substring( toLine, toLine+1 ) + rows.substring( toRow, toRow+1 )
				+ piece2;
		}
	}
	else
		result='';
	if (document.all)
	{	name = 'i' + baseName + nm;
		if ( result == '' )
			document.all.tags( "DIV" )[name].innerHTML = "Startposition";
		else
			document.all.tags( "DIV" )[name].innerHTML = "Position after " + result;
	}
	else if ( document.layers )
	{	document.layers[nm].document.layers[0].document.clear();
		var gesamt = "<center>Position after " + result + "</center>";
		document.layers[nm].document.layers[0].document.write(gesamt);
		document.layers[nm].document.layers[0].document.close();
	}
	return result;
}
function GMS( moves, names, nm, base, basename )
{	base = SyncPicture( base, basename );
	var nLevel = nLevels[nm];
	var nMoveNumber = nMoves[nm];
	if ( nMoveNumber >= 0 && nMoveNumber <= moves[nLevel].length / 2 )
	{	if ( document.all )
		{	if ( nOld[nm] != -1 )
				document.anchors[nOld[nm]].style.background="#FFF8B3";
			if ( nMoveNumber > 0 )
			{	nOld[nm] = moves[nLevel].base[nMoveNumber-1];
				document.anchors[nOld[nm]].style.background="gray";
			}
			else
				nOld[nm] = -1;
		}
		return GMS2( moves, names, nm, base, nMoveNumber, nLevel, basename );
	}
	else
		return "??";
}
function gm( moves, names, nm, base, basename, n, m )
{	base = SyncPicture( base, basename );
	GoStart(moves,names,nm,base,basename );
	gm_sub( moves,names,nm,base,basename,n,m);
	GMS( moves, names, nm, base, basename );
}
function gmn( moves, m )
{	if ( m > 0 )
	{	var off=0;
		var n2 = moves[m].move;
		var m2 = moves[m].root;
		for ( i=0; i <= n2*2; i += 2 )
			if (( moves[m2][i] & 0x40 ) == 0x40 )
				off = off+1;
		return gmn( moves, m2 ) + ( n2 - off );
	}
	return 0;
}
function gm_sub( moves, names, nm, base, basename, n, m )
{	if ( m > 0 )
	{	var off=0;
		var n2 = moves[m].move;
		var m2 = moves[m].root;
		for ( i=0; i <= n2*2; i += 2 )
			if (( moves[m2][i] & 0x40 ) == 0x40 )
				off = off+1;
		gm_sub( moves,names,nm,base, basename, n2-off, m2  );
	}
	nLevels[nm]=m;
	nMoves[nm]=0;
	for ( i=0; i < n; i++ )
		MF(moves,names,nm,base,basename, false);
}

