var $a=true;var $b=false;function rleDecode($c){var $d=new Array;if($c.length==0)return $d;if(($c.length%2)!=0){alert("Invalid RLE data");return;};for(var i=0;i<$c.length;i+=2){var $e=$c[i];var $f=$c[i+1];for(var c=0;c<$f;c++)$d[$d.length]=$e;};return $d;};function asciiDecode($g){var $d=new Array;for(var i=0;i<$g.length;++i){var $h=$g.charCodeAt(i);if($h==35)$h=59;if($h>35){var $i=Math.floor(($h-36)/30);var $j=(($h-36)%30)+1;}else{var $i=($h-33)+3;var $j=1;};$d[i*2]=$i;$d[i*2+1]=$j;};return $d;};function readCookie($k){if(document.cookie.length>0){$l=document.cookie.indexOf($k+"=");if($l!=-1){$l=$l+$k.length+1;$m=document.cookie.indexOf(";",$l);if($m==-1)$m=document.cookie.length;return document.cookie.substring($l,$m);}};return "";};function createCookie($k,$n,$o,$p){var $q=new Date();$q.setDate($q.getDate()+$p);document.cookie=$k+"="+$n+(($p==null)?"":";expires="+$q.toGMTString())+(($o==null)?"":";path="+$o);};var $r=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,3,4,0,2,0,0,0,3,2,0,0,0,0,3],[0,0,0,0,0,1,1,4,1,1,0,1,1,1,1,1,1,0,1,1],[0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,4,0,0,3,2,0,0,0,0,0,0,0,0],[0,0,0,0,3,0,0,4,0,1,1,1,0,0,0,0,0,0,0,0],[0,0,0,1,1,1,1,4,0,0,0,0,0,0,0,0,2,0,0,0],[0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,1,0,0,0],[0,0,0,0,0,0,0,4,0,0,0,0,0,1,1,0,0,0,0,0],[0,0,0,4,0,0,0,4,0,0,3,1,1,0,0,0,0,0,0,0],[0,0,3,4,0,2,0,4,0,1,1,0,0,0,0,2,0,3,0,0],[0,0,1,4,1,1,1,4,1,0,0,0,0,0,1,1,1,1,1,0],[0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,4,0,0,0],[0,3,0,4,0,2,0,4,0,0,0,4,0,3,2,0,4,0,3,0],[0,1,1,1,1,1,1,4,1,1,1,4,1,1,1,1,4,1,1,0],[0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,0,4,0,0,0],[0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,0,4,0,0,0],[0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,0,4,0,0,0],[0,0,2,0,3,0,0,4,0,0,0,4,0,2,0,0,4,0,0,0],[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];var $s=[[5,10],[8,5],[-1,-1],[-1,-1],[4,15],[6,20],[12,25],[-1,-1]];var $t=[8,27];var $u=[-1,-1,-1,-1,-1];var $v=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,4,0,0,0,0,4,0,0,0,0,0,0,0,4,0,0],[0,0,0,0,4,0,0,3,0,4,0,0,2,0,0,3,0,4,0,3],[0,0,0,0,4,1,1,1,1,4,1,0,1,1,1,1,1,4,1,1],[0,0,0,0,4,0,0,0,0,4,0,0,0,0,0,0,0,4,0,0],[0,0,0,0,4,0,0,0,0,4,0,0,0,0,0,0,0,4,0,0],[0,0,4,0,4,0,4,0,0,4,0,0,0,4,0,0,0,4,0,0],[2,0,4,0,4,0,4,3,0,4,2,0,0,4,0,0,0,4,0,0],[1,1,4,1,1,1,4,1,1,4,1,0,1,4,1,1,1,1,1,1],[0,0,4,0,0,0,4,0,0,4,0,0,0,4,0,0,0,0,0,0],[0,0,4,0,0,0,4,0,0,4,0,0,0,4,0,0,0,0,0,0],[0,0,4,0,0,0,4,0,0,4,0,0,0,4,0,0,0,4,0,0],[3,0,4,0,0,0,4,3,0,4,0,0,0,4,0,0,0,4,0,3],[1,1,4,1,0,1,4,1,1,1,1,1,1,1,1,0,1,4,1,1],[0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,4,0,0],[0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,4,0,0],[0,0,4,0,0,0,4,0,0,4,0,0,0,0,0,0,0,4,0,0],[3,0,4,0,3,0,4,0,0,4,0,0,0,3,0,0,2,4,0,0],[1,1,4,1,1,1,1,0,1,4,1,0,1,1,1,0,1,4,1,1],[0,0,4,0,0,0,0,0,0,4,0,0,0,0,0,0,0,4,0,0],[0,0,4,0,0,0,0,0,0,4,0,0,0,0,0,0,0,4,0,0],[0,0,4,0,0,0,0,0,0,4,0,0,0,0,0,0,0,4,0,0],[2,0,4,2,0,3,0,0,0,4,0,0,3,0,0,2,0,4,0,0],[1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];var $w=[[1,25],[18,15],[6,5],[-1,-1],[11,15],[13,5],[-1,-1],[-1,-1]];var $x=[8,27];var $y=[-1,-1,-1,-1,-1];var $z=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0],[0,0,0,4,0,0,0,0,4,0,4,0,0,4,1,1,0,0,2,3],[0,0,0,4,3,0,0,2,4,0,4,0,0,4,0,0,1,0,1,1],[0,0,0,4,1,0,0,1,4,1,4,1,2,4,0,0,0,0,0,0],[0,0,0,4,0,0,0,0,4,0,4,0,1,1,0,2,0,0,0,3],[0,0,0,4,0,0,0,0,4,0,4,0,0,0,0,1,0,3,0,4],[2,3,0,4,0,0,0,0,4,0,4,0,0,0,0,0,0,1,0,4],[1,1,1,4,0,0,0,0,4,0,4,0,0,0,0,0,0,0,1,4],[0,0,0,4,0,0,0,0,4,0,4,0,0,0,0,0,0,0,0,4],[0,0,0,4,0,0,0,0,4,0,4,0,0,2,0,3,0,0,0,4],[0,4,0,4,0,0,0,0,4,0,4,0,1,1,0,1,0,0,0,4],[0,4,2,4,3,0,0,0,4,0,4,0,0,0,0,0,0,0,0,4],[1,4,1,1,1,0,0,0,4,0,4,0,0,0,0,0,0,0,1,1],[0,4,0,0,0,0,0,0,4,0,4,0,0,0,0,3,0,1,0,0],[0,4,0,0,0,0,0,0,4,0,4,0,0,0,0,1,0,0,0,0],[0,4,0,0,0,0,0,2,4,3,4,0,0,0,1,0,0,0,4,0],[0,4,0,0,0,0,0,1,1,1,1,0,1,0,0,0,3,0,4,0],[0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,4,0],[0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0],[0,4,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0],[0,4,2,1,1,0,0,0,0,0,0,0,0,2,0,3,0,0,4,0],[1,1,1,0,0,0,0,1,1,1,0,1,1,1,1,1,1,1,1,1],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];var $A=[[17,21],[2,11],[9,7],[-1,-1],[1,25],[8,20],[-1,-1],[-1,-1]];var $B=[8,27];var $C=[5,-1,-1,-1,-1];var $D=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0],[0,0,0,0,0,0,0,0,4,0,0,0,0,0,4,0,0,0,0,4],[0,0,0,0,0,0,0,0,4,2,0,0,0,2,4,0,0,0,0,4],[0,0,0,0,0,1,0,1,4,1,1,0,0,1,4,1,3,1,1,4],[0,0,0,0,1,0,0,0,4,0,0,0,0,0,4,0,0,0,0,4],[0,0,0,1,0,0,0,0,4,0,0,0,0,0,4,0,0,0,0,4],[3,0,1,0,0,0,0,0,4,0,0,0,0,0,4,0,0,0,0,4],[1,0,0,0,0,0,0,0,4,3,0,0,0,0,4,0,0,0,0,4],[0,0,0,0,0,0,0,0,4,1,1,0,0,1,4,0,1,3,1,4],[0,0,0,0,0,2,0,1,4,0,0,0,0,0,4,0,0,0,0,0],[0,0,0,0,0,1,0,0,4,0,0,0,0,0,4,0,0,0,0,0],[3,0,0,1,0,0,0,0,4,0,0,0,0,0,4,0,0,0,0,0],[1,1,0,0,0,0,0,0,4,0,0,0,0,3,4,0,0,0,0,0],[0,0,0,0,0,0,0,1,4,0,0,0,0,1,1,1,1,0,0,3],[0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,1,1],[0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,4,0,0,0,0,4,0,0,0,0,0,0,4,0,0,0,0],[2,0,0,4,0,0,0,3,4,0,0,0,0,0,0,4,3,0,0,0],[1,1,1,4,1,0,0,1,4,1,1,0,0,1,1,4,1,1,0,0],[0,0,0,4,0,0,0,0,4,0,0,0,0,0,0,4,0,0,0,1],[0,0,0,4,0,0,0,0,4,0,0,0,0,0,0,4,0,0,0,0],[0,0,0,4,0,0,0,0,4,0,0,0,0,0,0,4,0,0,0,0],[3,0,0,4,0,0,0,0,4,0,2,0,0,3,0,4,0,0,2,0],[1,1,1,1,1,0,1,1,1,1,1,0,0,1,1,1,1,1,1,1],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];var $E=[[4,25],[10,5],[17,5],[17,25],[10,20],[-1,-1],[-1,-1],[-1,-1]];var $F=[8,27];var $G=[11,-1,-1,-1,-1];var $H=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0],[0,0,0,0,4,0,0,0,0,0,0,0,4,3,0,2,0,0,0,0],[0,0,0,2,4,3,2,2,0,0,0,0,4,1,1,1,0,0,2,3],[0,0,0,1,4,1,1,1,0,0,0,0,4,0,0,0,0,0,1,1],[0,0,0,0,4,0,0,0,0,1,0,3,4,0,0,0,0,0,0,0],[0,0,0,0,4,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0],[0,0,4,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0],[3,0,4,0,4,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[1,1,4,1,4,1,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,4,0,4,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,4,0,4,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,4,0,4,0,0,4,0,0,0,0,4,0,0,0,0,0,0,0],[3,0,4,0,4,0,0,4,0,0,2,0,4,0,0,2,0,0,0,3],[1,1,1,1,1,1,0,4,0,3,1,1,4,1,1,1,0,0,0,1],[0,0,0,0,0,0,0,4,0,0,0,0,4,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0],[0,0,0,4,0,0,0,0,0,0,4,0,4,0,4,0,0,0,0,0],[3,0,0,4,0,3,0,4,0,0,4,0,4,0,4,0,0,0,0,0],[1,1,1,4,1,1,0,4,0,1,4,1,1,3,4,1,0,0,0,0],[0,0,0,4,0,0,0,4,0,0,4,0,0,0,4,0,0,0,0,0],[0,0,0,4,0,0,0,4,0,0,4,0,0,0,4,0,0,0,0,0],[0,0,0,4,0,0,0,4,0,0,4,0,0,0,4,0,0,0,0,0],[3,0,0,4,2,2,2,4,0,0,4,0,0,2,4,2,0,0,2,0],[1,1,0,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];var $I=[[1,20],[3,15],[1,10],[14,15],[15,20],[-1,-1],[-1,-1],[-1,-1]];var $J=[8,27];var $K=[16,-1,-1,-1,-1];var $L=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,4,0,3],[0,0,0,0,0,0,3,0,0,0,0,0,0,0,4,0,0,4,1,1],[0,0,0,3,0,0,1,0,1,0,0,0,3,0,4,0,0,4,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,1,1,4,1,1,4,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,4,0,0],[0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0],[2,0,2,2,4,0,0,3,0,0,0,0,0,0,0,0,0,4,0,3],[1,1,1,1,4,1,0,0,0,0,0,0,0,0,0,0,1,4,1,1],[0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,4,0,0,0,0,0,0,0,0,0,4,0,0,4,0,0],[0,0,0,0,4,0,0,2,0,0,0,0,3,0,4,0,3,4,0,0],[0,0,1,1,4,1,1,1,0,0,0,0,1,1,4,1,1,4,0,2],[0,0,0,0,4,0,0,0,0,0,0,0,0,0,4,0,0,4,1,1],[0,0,0,0,4,0,0,0,0,0,0,0,0,0,4,0,0,4,0,0],[4,0,0,0,4,0,0,0,0,0,0,0,0,0,4,0,0,4,0,0],[4,0,0,0,4,3,0,0,0,0,0,0,3,0,4,0,0,4,0,0],[4,1,0,1,4,1,0,0,0,0,0,0,1,1,1,0,0,4,0,0],[4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0],[4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0],[4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0],[4,0,3,0,0,0,0,0,0,0,0,2,2,2,2,0,3,4,0,0],[1,1,1,0,0,0,1,1,1,0,0,1,1,1,1,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];var $M=[[1,25],[1,10],[13,20],[18,10],[18,16],[-1,-1],[-1,-1],[-1,-1]];var $N=[8,27];var $O=[9,-1,-1,-1,-1];var $P=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,4,0,4,0,4,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,4,3,4,3,4,3,0,0,4,0,0,0,0,0,0],[0,0,0,0,0,4,0,4,0,4,0,0,2,4,0,3,0,0,0,0],[0,0,0,0,0,4,0,4,0,4,0,1,1,4,1,1,1,0,0,0],[0,0,0,0,0,4,0,4,0,4,0,0,0,4,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0],[0,4,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0],[0,4,0,2,0,0,0,3,0,0,0,0,0,4,0,4,0,0,0,0],[1,4,1,1,1,0,1,1,0,0,0,0,0,4,0,4,0,0,0,0],[0,4,0,0,0,0,0,0,0,0,0,0,1,1,1,4,3,0,0,0],[0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0],[0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0],[0,4,0,0,0,1,0,0,1,0,0,3,0,0,0,4,0,0,0,0],[1,4,1,0,0,1,0,0,1,0,1,1,0,0,0,4,0,0,0,0],[0,4,0,0,0,1,0,0,0,0,0,0,0,0,0,4,3,0,0,0],[0,4,0,0,0,1,0,3,2,0,0,0,0,0,1,1,1,0,0,0],[0,4,0,4,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0],[0,4,2,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,4,1,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,4,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[1,4,0,4,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0],[0,4,3,4,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0],[0,4,0,4,0,1,1,0,0,1,0,0,0,0,0,1,1,3,0,0],[0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];var $Q=[[1,10],[14,17],[13,5],[-1,-1],[0,22],[2,15],[-1,-1],[-1,-1]];var $R=[8,27];var $S=[18,-1,-1,-1,-1];var $T=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0],[0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0],[0,0,0,1,0,3,1,3,1,1,4,1,1,3,1,3,0,1,0,0],[0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0],[0,0,0,0,4,0,0,0,0,0,4,0,0,0,0,0,4,0,0,0],[0,0,0,0,4,0,0,0,0,0,4,0,0,0,0,0,4,0,0,0],[0,0,0,1,4,1,1,0,3,1,1,1,3,0,1,1,4,1,0,0],[0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0],[0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0],[0,0,0,0,4,0,0,0,0,0,4,0,0,0,0,0,4,0,0,0],[0,0,0,0,4,0,0,0,0,0,4,0,0,0,0,0,4,0,0,0],[0,0,1,1,1,1,3,0,1,1,4,1,1,0,3,1,1,1,1,0],[0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0],[0,0,0,4,0,0,0,0,0,0,4,0,0,0,0,0,0,4,0,0],[0,0,0,4,0,0,0,0,0,0,4,0,0,0,0,0,0,4,0,0],[0,0,1,4,1,3,0,1,1,1,1,1,1,1,0,3,1,4,1,0],[0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0],[0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0],[0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0],[0,2,2,4,2,2,2,0,2,2,2,2,2,2,2,2,2,4,2,2],[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];var $U=[[10,15],[10,5],[17,25],[-1,-1],[3,10],[17,10],[-1,-1],[-1,-1]];var $V=[7,27];var $W=[-1,-1,-1,-1,-1];var $X=160;var $Y=256;var $Z=[$r,$v,$z,$D,$H,$L,$P,$T];var $00=[$s,$w,$A,$E,$I,$M,$Q,$U];var $01=[$t,$x,$B,$F,$J,$N,$R,$V];var $02=[$u,$y,$C,$G,$K,$O,$S,$W];function LevelManager(){this.numXCells=20;this.numYCells=28;this.levelXMin=0;this.levelXMax=160;this.levelYMin=0;this.levelYMax=224;this.maxHens=8;this.maxLifts=5;this.blank=0;this.wall=1;this.grain=2;this.egg=3;this.ladder=4;this.lift=5;this.farmer=6;this.hen=7;this.decodeVal=function($e){if($e==34)$e=59;if($e==33)$e=-1;else $e-=35;return $e;};this.LoadLevels=function(){if(!$b)return;var $03=readCookie("levels");if($03==null||$03==""){return;};var $04=rleDecode(asciiDecode($03));var $05=0;for(var $06=0;$06<8;$06++){var $07=$Z[$06];for(var y=0;y<this.numYCells;++y){for(var x=0;x<this.numXCells;++x){$07[y][x]=$04[$05];$05++;}}};var $08=readCookie("chars");if($08==null||$08=="")return;$05=0;for(var $06=0;$06<8;$06++){var $09=$00[$06];var $0a=$02[$06];var $0b=$01[$06];$0b[0]=this.decodeVal($08.charCodeAt($05));$0b[1]=this.decodeVal($08.charCodeAt($05+1));$05+=2;for(var i=0;i<this.maxHens;i++){$09[i][0]=this.decodeVal($08.charCodeAt($05));$09[i][1]=this.decodeVal($08.charCodeAt($05+1));$05+=2;};for(var i=0;i<this.maxLifts;i++){$0a[i]=this.decodeVal($08.charCodeAt($05));$05++;}}}};var $0c=null;var $0d=null;var $0e=null;var $0f=null;var $0g=null;var $0h=null;var $0i=null;var $0j=null;var $0k=null;var $0l=33;var $0m=Math.floor(1000/$0l);function Rect(t,r,b,l){this.top=t;this.right=r;this.bottom=b;this.left=l;this.overlaps=function($0n){return(this.left<=$0n.right&&this.right>=$0n.left&&this.bottom>=$0n.top&&this.top<=$0n.bottom);}};function DownHandler(e){if(!e)var e=window.event;$0d.KeyDownHandler(e.keyCode);return true;};function UpHandler(e){if(!e)var e=window.event;$0d.KeyUpHandler(e.keyCode);return true;};function Keyboard(){this.upKeyCode=65;this.downKeyCode=90;this.leftKeyCode=188;this.rightKeyCode=190;this.jumpKeyCode=32;this.holdKeyCode=72;this.startKeyCode=83;this.redefineKeysKeyCode=75;this.oneKeyCode=49;this.twoKeyCode=50;this.threeKeyCode=51;this.fourKeyCode=52;this.escapeKeyCode=27;this.up=false;this.down=false;this.left=false;this.right=false;this.jump=false;this.hold=false;this.start=false;this.redefine=false;this.one=false;this.two=false;this.three=false;this.four=false;this.escape=false;this.keyNames=new Array;for(var i=0;i<33;++i)this.keyNames[i]="";for(var i=33;i<127;++i)this.keyNames[i]=String.fromCharCode(i);this.keyNames[8]="Backspace";this.keyNames[9]="Tab";this.keyNames[13]="Return";this.keyNames[16]="Shift";this.keyNames[17]="Control";this.keyNames[18]="Alt";this.keyNames[19]="Alt Gr";this.keyNames[20]="Caps Lock";this.keyNames[32]="Space";this.keyNames[33]="Page Up";this.keyNames[34]="Page Down";this.keyNames[35]="End";this.keyNames[36]="Home";this.keyNames[37]="Right";this.keyNames[38]="Up";this.keyNames[39]="Left";this.keyNames[40]="Down";this.keyNames[46]="Delete";this.currentKeyCode=-1;this.prevDocumentOnKeyDownHandler=document.onkeydown;this.prevDocumentOnKeyPressHandler=document.onkeypress;this.DisableBackspace=function(){this.prevDocumentOnKeyDownHandler=document.onkeydown;this.prevDocumentOnKeyPressHandler=document.onkeypress;if(typeof window.event!='undefined'){document.onkeydown=function(){if(event.srcElement.tagName.toUpperCase()!='INPUT')return(event.keyCode!=8);}}else{document.onkeypress=function(e){if(e.target.nodeName.toUpperCase()!='INPUT')return(e.keyCode!=8);}}};this.EnableBackspace=function(){if(typeof window.event!='undefined'){document.onkeydown=this.prevDocumentOnKeyDownHandler;}else{document.onkeypress=this.prevDocumentOnKeyPressHandler;}};this.IsReserved=function($0o){switch($0o){case this.holdKeyCode:case this.escapeKeyCode:return true;};return false;};this.GetCurrentKeyCode=function(){return this.currentKeyCode;};this.GetKeyCodeString=function($0o){var $d=this.keyNames[$0o];if(!$d)return " ";return $d;};this.SetUpCode=function($0o){this.upKeyCode=$0o;};this.SetDownCode=function($0o){this.downKeyCode=$0o;};this.SetLeftCode=function($0o){this.leftKeyCode=$0o;};this.SetRightCode=function($0o){this.rightKeyCode=$0o;};this.SetJumpCode=function($0o){this.jumpKeyCode=$0o;};this.GetUpCode=function(){return this.upKeyCode;};this.GetDownCode=function(){return this.downKeyCode;};this.GetLeftCode=function(){return this.leftKeyCode;};this.GetRightCode=function(){return this.rightKeyCode;};this.GetJumpCode=function(){return this.jumpKeyCode;};this.KeyDownHandler=function($0o){if($0o==this.startKeyCode)this.start=true;else if($0o==this.redefineKeysKeyCode)this.redefine=true;else if($0o==this.oneKeyCode)this.one=true;else if($0o==this.twoKeyCode)this.two=true;else if($0o==this.threeKeyCode)this.three=true;else if($0o==this.fourKeyCode)this.four=true;else if($0o==this.holdKeyCode)this.hold=true;else if($0o==this.escapeKeyCode)this.escape=true;if($0o==this.upKeyCode)this.up=true;else if($0o==this.downKeyCode)this.down=true;else if($0o==this.leftKeyCode)this.left=true;else if($0o==this.rightKeyCode)this.right=true;else if($0o==this.jumpKeyCode)this.jump=true;if(!this.IsReserved($0o))this.currentKeyCode=$0o;};this.KeyUpHandler=function($0o){if($0o==this.startKeyCode)this.start=false;else if($0o==this.redefineKeysKeyCode)this.redefine=false;else if($0o==this.oneKeyCode)this.one=false;else if($0o==this.twoKeyCode)this.two=false;else if($0o==this.threeKeyCode)this.three=false;else if($0o==this.fourKeyCode)this.four=false;else if($0o==this.holdKeyCode)this.hold=false;else if($0o==this.escapeKeyCode)this.escape=false;if($0o==this.upKeyCode)this.up=false;else if($0o==this.downKeyCode)this.down=false;else if($0o==this.leftKeyCode)this.left=false;else if($0o==this.rightKeyCode)this.right=false;else if($0o==this.jumpKeyCode)this.jump=false;if(this.currentKeyCode==$0o)this.currentKeyCode=-1;};this.Save=function(){var $n=this.upKeyCode.toString()+"@";$n+=this.downKeyCode.toString()+"@";$n+=this.leftKeyCode.toString()+"@";$n+=this.rightKeyCode.toString()+"@";$n+=this.jumpKeyCode.toString()+"@";createCookie("keys",$n,"/",365);};this.Load=function(){var $0p=readCookie("keys");if($0p==null||$0p=="")return;var $0q=0;var $0r=new Array;$0r.length=5;for(var i=0;i<5;++i){var $0s=$0p.indexOf("@",$0q);if($0s==-1)return;$0r[i]=parseInt($0p.substring($0q,$0s));$0q=$0s+1;};this.upKeyCode=$0r[0];this.downKeyCode=$0r[1];this.leftKeyCode=$0r[2];this.rightKeyCode=$0r[3];this.jumpKeyCode=$0r[4];delete $0r;$0r=null;};this.Load();};function LevelState($0t){this.cachedLevMgr=$0t;this.imageFiles=["blank","wall","grain","egg","ladder"];this.layout=null;this.imageCache=new Array;for(var i=0;i<this.imageFiles.length;++i){this.imageCache[i]=new Image;this.imageCache[i].src="images/"+this.imageFiles[i]+".gif";};this.levelStyleCache=new Array;for(var y=0;y<this.cachedLevMgr.numYCells;++y){this.levelStyleCache[y]=new Array;for(var x=0;x<this.cachedLevMgr.numXCells;++x)this.levelStyleCache[y][x]=null;};this.ClearLevel=function(){var $0u=document.getElementById("maindiv");var $0v=document.getElementById("levelDiv");if($0v!=null)$0u.removeChild($0v);};this.Reset=function($0w){this.layout=$0w;this.ClearLevel();var $0u=document.getElementById("maindiv");var $0v=document.createElement("DIV");$0v.id="levelDiv";$0v.style.position="absolute";$0v.style.width=this.cachedLevMgr.levelXMax<<1;$0v.style.height=this.cachedLevMgr.levelYMax;$0v.style.backgroundColor="#000000";$0u.appendChild($0v);for(var y=0;y<this.cachedLevMgr.numYCells;++y){var $0x=this.levelStyleCache[y];var $0y=$0w[y];for(var x=0;x<this.cachedLevMgr.numXCells;++x){if($0y[x]==this.cachedLevMgr.blank)continue;var $0z=document.createElement("IMG");$0z.src=this.imageCache[$0y[x]].src;$0z.style.position="absolute";$0z.style.left=x<<4;$0z.style.top=y<<3;$0v.appendChild($0z);$0x[x]=$0z.style;}}};this.ClearCellAt=function(x,y){this.layout[y][x]=0;this.levelStyleCache[y][x].visibility="hidden";}};function Lifts($0t){this.cachedLevMgr=$0t;this.width=10;this.height=4;this.cacheLiftStyle=new Array;this.initialLiftPositions=new Array;this.liftStartPosY=new Array;this.liftPosY=new Array;this.liftTopPos=new Array;this.maxLiftOffset=this.cachedLevMgr.levelYMax;this.levelHasLifts=0;this.numLifts=0;for(var i=0;i<(this.cachedLevMgr.maxLifts*2);++i){this.cacheLiftStyle[i]=document.getElementById("lift"+i.toString()).style;this.liftStartPosY[i]=this.cachedLevMgr.levelYMax-this.height;this.liftStartPosY[i]-=(i%2)?-80:0;};this.Reset=function($0A){this.initialLiftPositions.length=0;for(var i=0;i<$0A.length;i++){if($0A[i]!=-1)this.initialLiftPositions[this.initialLiftPositions.length]=$0A[i];};this.numLifts=(this.initialLiftPositions.length*2);for(var i=0;i<this.numLifts;++i){var $0B=(this.initialLiftPositions[i>>1]<<3)+3;this.liftPosY[i]=this.liftStartPosY[i];this.cacheLiftStyle[i].top=this.liftStartPosY[i];this.cacheLiftStyle[i].left=($0B<<1);this.cacheLiftStyle[i].visibility="visible";this.cacheLiftStyle[i].clip="rect("+this.liftPosY[i]+","+(this.width<<1)+","+this.height+",0)";};for(var i=this.numLifts;i<(this.cachedLevMgr.maxLifts*2);i++)this.cacheLiftStyle[i].visibility="hidden";};this.Update=function(){if(!this.numLifts)return;var $0C=0;var $0D=this.height;var $0E=0;for(var i=0;i<this.numLifts;++i){--this.liftPosY[i];if(this.liftPosY[i]<0)this.liftPosY[i]=this.maxLiftOffset;var $0F=this.liftPosY[i];$0G=$0F+this.height;$0C=($0F<0)?0:-$0F;$0D=this.height;if($0G>this.maxLiftOffset)$0D-=($0G-this.maxLiftOffset);var $0H=this.cacheLiftStyle[i];$0H.top=$0F;$0H.clip="rect("+$0C+","+(this.width<<1)+","+$0D+",0)";$0H=null;}};this.RayLiftCollision=function($0I,$0J){var $0K=this.cachedLevMgr.numYCells;var $d=($0K<<3);if(!this.numLifts)return $d;var $0L=10000;var $0M;for(var i=0;i<this.numLifts;++i){var $0N=(this.initialLiftPositions[i>>1]<<3)+3;if($0I<$0N||$0I>($0N+this.width))continue;$0M=(this.liftPosY[i]-$0J);if($0M<0)continue;if($0M<$0L){$0L=$0M;$d=this.liftPosY[i];}};return $d-1;}};function MotherDuck($0t){this.levelXMin=$0t.levelXMin+5;this.levelYMin=$0t.levelYMin;this.levelXMax=$0t.levelXMax-5;this.levelYMax=$0t.levelYMax-21;this.width=16;this.height=24;this.halfWidth=this.width>>1;this.halfHeight=this.height>>1;this.quaterWidth=this.width>>2;this.quaterHeight=this.height>>2;this.minXPos=(this.levelXMin+this.halfWidth);this.maxXPos=(this.levelXMax-this.halfWidth);this.minYPos=(this.levelYMin+this.halfHeight);this.maxYPos=(this.levelYMax-this.halfHeight);this.maxXVel=5;this.maxYVel=5;this.xStartPos=(4+this.halfWidth);this.yStartPos=(19+this.halfHeight);this.rect=new Rect();this.xPos=this.xStartPos;this.yPos=this.yStartPos;this.xAccel=1;this.yAccel=1;this.xVel=0;this.yVel=0;this.animFrameOffset=0;this.freed=0;this.domCacheImg=document.getElementById("motherDuckImage");this.domCacheStyle=this.domCacheImg.style;this.Reset=function($0O){this.xPos=this.xStartPos;this.yPos=this.yStartPos;this.xAccel=this.yAccel=1;this.xVel=this.yVel=0;this.animFrameOffset=0;var $0P=this.domCacheStyle;this.freed=$0O;if(this.freed)this.domCacheImg.src="images/motherduck.gif";else this.domCacheImg.src="images/motherduck_caged.gif";$0P.top=this.yPos-this.halfHeight;$0P.left=((this.xPos-this.halfWidth)<<1);$0P=0;this.Update();};this.ScreenBoundryCollide=function(){this.rect.left=this.xPos-this.halfWidth;this.rect.right=this.xPos+this.halfWidth;this.rect.bottom=this.yPos+this.halfHeight;this.rect.top=this.yPos-this.halfHeight;if(this.rect.left<this.levelXMin){this.xPos+=5+(this.levelXMin-this.rect.left);this.xVel=-this.xVel;}else if(this.rect.right>this.levelXMax){this.xPos-=5+(this.rect.right-this.levelXMax);this.xVel=-this.xVel;};if(this.rect.top<this.levelYMin){this.yPos+=5+(this.levelYMin-this.rect.top);this.yVel=-this.yVel;}else if(this.rect.bottom>this.levelYMax){this.yPos-=5+(this.rect.bottom-this.levelYMax);this.yVel=-this.yVel;}};this.GetRect=function(){if(this.freed){this.rect.left=this.xPos-this.quaterWidth;this.rect.right=this.xPos+this.quaterWidth;this.rect.bottom=this.yPos+this.quaterHeight;this.rect.top=this.yPos-this.quaterHeight;}else{this.rect.left=this.rect.top=1;this.rect.right=this.rect.bottom=-1;};return this.rect;};this.Update=function($0Q,$0R){var $0P=this.domCacheStyle;var $0S=(($0i.currentFrame&8)==8)+this.animFrameOffset;var $0T=($0S*32);if(this.freed){if(($0Q-this.xPos)>0){this.xAccel=1;this.animFrameOffset=0;}else{this.xAccel=-1;this.animFrameOffset=2;};if(($0R-this.yPos)>0)this.yAccel=1;else this.yAccel=-1;this.xVel+=this.xAccel;this.yVel+=this.yAccel;if(this.xVel>this.maxXVel)this.xVel=this.maxXVel;if(this.xVel<-this.maxXVel)this.xVel=-this.maxXVel;if(this.yVel>this.maxYVel)this.yVel=this.maxYVel;if(this.yVel<-this.maxYVel)this.yVel=-this.maxYVel;this.xPos+=this.xVel;this.yPos+=this.yVel;this.ScreenBoundryCollide();$0P.top=this.yPos-this.halfHeight;};$0P.left=((this.xPos-this.halfWidth)<<1)-$0T;$0P.clip="rect(0,"+($0T+32)+",24,"+$0T+")";$0P=null;}};function onAudioLoad(){};function mute($0U){$0c.stopAll();$0c.enable($0U);};function AudioSystem(){this.enabled=$a;this.leftRightSample=0;this.upDownSample=1;this.applauseSample=2;this.jumpSample=3;this.fallSample=4;this.eggSample=5;this.grainSample=6;this.tuneSample=7;this.playing=new Array;this.playing.length=8;this.audioTypeNone=0;this.audioTypeLiveAudio=1;this.audioTypeQuickTime=2;this.audioTypeWMP=3;this.audioTypeWMPPlugin=4;this.audioTypeOther=5;this.audioTypeWHATWG=6;this.audioSupport=this.audioTypeNone;this.audioMimeType=["","audio/wav","audio/wav","application/x-mplayer2","application/x-mplayer2","audio/wav"];this.Init=function(){if(!this.enabled)return;this.audioSupport=this.EnumerateAudioSupport();if(this.audioSupport==this.audioTypeNone)return;if(this.audioSupport==this.audioTypeWHATWG){this.cachedSamples=new Array;this.cachedSamples.length=8;this.cachedSamples[this.leftRightSample]=new $0V('sounds/leftright.wav');this.cachedSamples[this.upDownSample]=new $0V('sounds/updown.wav');this.cachedSamples[this.applauseSample]=new $0V('sounds/applause.wav');this.cachedSamples[this.jumpSample]=new $0V('sounds/jump.wav');this.cachedSamples[this.fallSample]=new $0V('sounds/fall.wav');this.cachedSamples[this.eggSample]=new $0V('sounds/egg.wav');this.cachedSamples[this.grainSample]=new $0V('sounds/grain.wav');this.cachedSamples[this.tuneSample]=new $0V('sounds/tune.wav');}else{var $0W=this.loadAudioSample("eggSound","sounds/egg",false);$0W+=this.loadAudioSample("grainSound","sounds/grain",false);$0W+=this.loadAudioSample("fallSound","sounds/fall",false);$0W+=this.loadAudioSample("jumpSound","sounds/jump",false);$0W+=this.loadAudioSample("tuneSound","sounds/tune",false);$0W+=this.loadAudioSample("upDownSound","sounds/updown",true);$0W+=this.loadAudioSample("applauseSound","sounds/applause",true);$0W+=this.loadAudioSample("leftRightSound","sounds/leftright",true);var element=document.getElementById("audioDiv");element.innerHTML=$0W;this.cachedSamples=[document.getElementById("leftRightSound"),document.getElementById("upDownSound"),document.getElementById("applauseSound"),document.getElementById("jumpSound"),document.getElementById("fallSound"),document.getElementById("eggSound"),document.getElementById("grainSound"),document.getElementById("tuneSound")];};for(var i=0;i<this.playing.length;++i)this.playing[i]=false;};this.EnumerateAudioSupport=function(){var $0X=navigator.userAgent.toLowerCase();if($0X.indexOf("windows")!=-1){if(($0X.indexOf("msie")==-1)&&navigator.mimeTypes){if(navigator.mimeTypes["application/x-ms-wmp"]&&navigator.mimeTypes["application/x-ms-wmp"].enabledPlugin){return this.audioTypeWMPPlugin;}else if($0X.indexOf("opera")!=-1){return this.audioTypeWHATWG;}else if(navigator.mimeTypes["audio/wav"]&&navigator.mimeTypes["audio/wav"].enabledPlugin){var $0Y=navigator.mimeTypes["audio/wav"].enabledPlugin.name.toLowerCase();if($0Y.indexOf("quicktime")!=-1)return this.audioTypeQuickTime;if($0Y.indexOf("liveaudio")!=-1)return this.audioTypeLiveAudio;return this.audioTypeOther;}}else{return this.audioTypeWMP;}}else{if(navigator.mimeTypes["audio/wav"]&&navigator.mimeTypes["audio/wav"].enabledPlugin)return this.audioTypeOther;};return this.audioTypeNone;};this.enable=function($0U){this.enabled=$0U;};this.getMimeType=function(){return this.audioMimeType[this.audioSupport];};this.loadAudioSample=function($0Z,$10,$11){var $g="";var $12=($11)?"1":"0";if(this.audioSupport==this.audioTypeWMP){$g='<object id="'+$0Z+'" height="0" width="0" name="'+$0Z+'" data="'+$10+'.wav" type="audio/x-ms-wma">';$g+='<param name="src" value="'+$10+'.wav">';$g+='<param name="autoStart" value="0">';$g+='<param name="Loop" value="'+$12+'">';$g+='</object>';}else if(this.audioSupport==this.audioTypeWMPPlugin){$g='<object id="'+$0Z+'" height="0" width="0" name="'+$0Z+'" data="'+$10+'.wav" type="application/x-ms-wmp">';$g+='<param name="src" value="'+$10+'.wav">';$g+='<param name="autoStart" value="0">';$g+='<param name="loop" value="'+$12+'">';$g+='</object>';}else{$g='<embed id="'+$0Z+'" name="'+$0Z+'" src="'+$10+'.wav" autostart="0" loop="'+$12+'" height="0" width="0" type="'+this.getMimeType()+'" onload="onAudioLoad();"></embed>';};return $g;};this.play=function($13){if(!this.enabled)return;if(this.playing[$13])return;switch(this.audioSupport){case this.audioTypeNone:break;case this.audioTypeLiveAudio:case this.audioTypeQuickTime:case this.audioTypeOther:case this.audioTypeWMP:try{this.cachedSamples[$13].Play();}catch(e){};break;case this.audioTypeWMPPlugin:try{this.cachedSamples[$13].controls.play();}catch(e){};break;case this.audioTypeWHATWG:if($13<3)this.cachedSamples[$13].loop();else this.cachedSamples[$13].play();break;};this.playing[$13]=true;switch($13){case this.leftRightSample:this.stop(this.jumpSample);this.stop(this.upDownSample);this.stop(this.fallSample);break;case this.upDownSample:this.stop(this.jumpSample);this.stop(this.leftRightSample);this.stop(this.fallSample);break;case this.applauseSample:this.stopAll();break;case this.jumpSample:this.stop(this.upDownSample);this.stop(this.leftRightSample);this.stop(this.fallSample);break;case this.fallSample:this.stop(this.upDownSample);this.stop(this.leftRightSample);this.stop(this.jumpSample);break;case this.tuneSample:this.stopAll();break;};};this.stop=function($13){if(!this.enabled)return;if(!this.playing[$13])return;switch(this.audioSupport){case this.audioTypeNone:break;case this.audioTypeLiveAudio:case this.audioTypeQuickTime:case this.audioTypeOther:case this.audioTypeWMP:try{this.cachedSamples[$13].Stop();}catch(e){};try{this.cachedSamples[$13].Rewind();}catch(e){};break;case this.audioTypeWMPPlugin:try{this.cachedSamples[$13].controls.stop();}catch(e){};break;case this.audioTypeWHATWG:this.cachedSamples[$13].stop();break;};this.playing[$13]=false;};this.stopAll=function(){if(!this.enabled)return;this.stop(this.upDownSample);this.stop(this.leftRightSample);this.stop(this.jumpSample);this.stop(this.fallSample);}};function Hens($0t){this.cachedLevMgr=$0t;this.width=8;this.height=20;this.walkRight=0;this.walkLeft=1;this.climbUp=2;this.climbDown=3;this.eatRight=4;this.eatLeft=5;this.walkAnimRight=[1,2,1,2];this.walkAnimLeft=[3,4,3,4];this.climbAnim=[7,8,7,8];this.eatAnimLeft=[9,10,9];this.eatAnimRight=[5,6,5];this.maxHens=8;this.numHensDefined=0;this.intialHenPositions=0;this.genRandNum=Math.random;this.henXPosition=new Array;this.henYPosition=new Array;this.henState=new Array;this.henCollRects=new Array;this.animSequence=new Array;this.domImgCache=new Array;this.domCache=new Array;for(var i=0;i<this.maxHens;++i){this.domImgCache[i]=document.getElementById("hen"+i.toString());this.domCache[i]=this.domImgCache[i].style;};this.GetHenRect=function($14){return this.henCollRects[$14];};this.IsHenDefined=function($14){return(this.initialHenPositions[$14][0]!=-1);};this.GetNumDefinedHens=function(){return this.numHensDefined;};this.GetHenStartX=function($14){return(this.initialHenPositions[$14][0]<<3);};this.GetHenStartY=function($14){return(this.initialHenPositions[$14][1]<<3);};this.Reset=function($15,$16){var $17=this.domCache;var $18=$0e;var $19=$18.layout;this.initialHenPositions=$15;this.animFrame=0;this.seed=0;var c=0;for(var i=0;i<$16;++i){if(!this.IsHenDefined(i))continue;this.henXPosition[c]=this.GetHenStartX(i);this.henYPosition[c]=this.GetHenStartY(i);var $1a=(this.henXPosition[c]>>3);var $1b=((this.henYPosition[c]+4)>>3);var $1c=$19[$1b+1][$1a];var $1d=$19[$1b-2][$1a];var $1e=($1d==this.cachedLevMgr.ladder);var $1f=($1c==this.cachedLevMgr.ladder);if($1e&&$1f)this.henState[c]=(this.genRandNum()>=0.5)?this.climbDown:this.climbUp;else if($1e)this.henState[c]=this.climbUp;else if($1f)this.henState[c]=this.climbDown;else this.henState[c]=this.walkRight;this.henCollRects[c]=new Rect(this.henYPosition[c]+8-4-this.height+4,this.henXPosition[c]+2+this.width-2,this.henYPosition[c]+8-4,this.henXPosition[c]+2);$17[c].left=(this.henXPosition[c]-8)<<1;$17[c].top=this.henYPosition[c]-this.height+8;$17[c].clip="rect(0,48,20,0)";$17[c].visibility="visible";++c;};this.numHensDefined=c;for(var i=c;i<this.maxHens;++i)$17[i].visibility="hidden";$19=null;$18=null;$17=null;};this.DoLadderDismount=function($1g,$1h,$1i){var $1j=this.cachedLevMgr.wall;var $1k=($1h==$1j);var $1l=($1i==$1j);if($1k&&$1l)return(this.genRandNum()>=0.5)?this.walkLeft:this.walkRight;else if($1k)return this.walkLeft;else if($1l)return this.walkRight;return $1g;};this.DoLadderMount=function($1g,$1m,$1c){if(this.genRandNum()>=0.5){var $1n=this.cachedLevMgr.ladder;var $1e=($1m==$1n);var $1f=($1c==$1n);if($1e&&$1f)$1g=(this.genRandNum()>=0.5)?this.climbDown:this.climbUp;else if($1e)$1g=this.climbUp;else if($1f)$1g=this.climbDown;};return $1g;};this.UpdateHenState=function($1g,$1o,$0F){var $18=$0e;var $19=$18.layout;var $1j=this.cachedLevMgr.wall;var $1n=this.cachedLevMgr.ladder;var $1p=this.cachedLevMgr.grain;var $1a=($1o>>3);var $1b=(($0F+4)>>3);var $1h=$19[$1b+1][$1a-1];var $1i=$19[$1b+1][$1a+1];var $1q=$19[$1b][$1a+1];var $1r=$19[$1b][$1a-1];var $1c=$19[$1b+1][$1a];var $1m=$19[$1b-1][$1a];var $1d=$19[$1b-2][$1a];if($1g==this.walkRight||$1g==this.walkLeft){if($1o<=this.cachedLevMgr.levelXMin)$1g=this.walkRight;if($1o>=(this.cachedLevMgr.levelXMax-this.width))$1g=this.walkLeft;};switch($1g){case this.walkRight:if(($1i!=$1j&&$1i!=$1n)||$1q==$1j)$1g=this.walkLeft;else if($1q==$1p){$1g=this.eatRight;this.animFrame=0;};$1g=this.DoLadderMount($1g,$1d,$1c);break;case this.walkLeft:if(($1h!=$1j&&$1h!=$1n)||$1r==$1j)$1g=this.walkRight;else if($1r==$1p){$1g=this.eatLeft;this.animFrame=0;};$1g=this.DoLadderMount($1g,$1d,$1c);break;case this.climbUp:if(($1d!=$1n))$1g=this.climbDown;$1g=this.DoLadderDismount($1g,$1h,$1i);break;case this.climbDown:if($1c!=$1n)$1g=this.climbUp;$1g=this.DoLadderDismount($1g,$1h,$1i);break;case this.eatLeft:if(this.animFrame==3)$1g=this.walkLeft;else if(this.animFrame==1)$18.ClearCellAt($1a-1,$1b);break;case this.eatRight:if(this.animFrame==3)$1g=this.walkRight;else if(this.animFrame==1)$18.ClearCellAt($1a+1,$1b);break;};$18=$19=null;return $1g;};this.Update=function(){var $1s=this.henXPosition;var $1t=this.henYPosition;var $1u=this.henState;var $17=this.domCache;++this.animFrame;var $1v=this.numHensDefined;for(var i=0;i<$1v;++i){if(($1s[i]%8)==0)$1u[i]=this.UpdateHenState($1u[i],$1s[i],$1t[i]);var $1w=this.henCollRects[i];switch($1u[i]){case this.walkRight:$1s[i]+=4;$1w.left+=4;$1w.right+=4;this.animFrame%=4;this.animSequence[i]=this.walkAnimRight[this.animFrame];break;case this.walkLeft:$1s[i]-=4;$1w.left-=4;$1w.right-=4;this.animFrame%=4;this.animSequence[i]=this.walkAnimLeft[this.animFrame];break;case this.climbUp:$1t[i]-=8;$1w.top-=8;$1w.bottom-=8;this.animFrame%=4;this.animSequence[i]=this.climbAnim[this.animFrame];break;case this.climbDown:$1t[i]+=8;$1w.top+=8;$1w.bottom+=8;this.animFrame%=4;this.animSequence[i]=this.climbAnim[this.animFrame];break;case this.eatLeft:this.animSequence[i]=this.eatAnimLeft[this.animFrame];break;case this.eatRight:this.animSequence[i]=this.eatAnimRight[this.animFrame];break;};var $1x=$17[i];var $1y=this.animSequence[i];var $1z=(($1y-1)*this.height);$1x.left=(($1s[i]-8)<<1);$1x.top=$1t[i]-this.height+8-$1z-1;$1x.clip="rect("+$1z+",48,"+($1y*this.height)+",0)";$1x=$1y=null;};$1s=$1t=$1u=$17=null;}};function Farmer($0t){this.cachedLevMgr=$0t;this.width=8;this.height=16;this.farmerStyleCache=document.getElementById("farmerImage").style;this.walkAnimRight=[1,2,1,3];this.walkAnimLeft=[4,5,4,6];this.climbAnim=[7,8,7,9];this.rect=new Rect(0,0,0,0);this.collRect=new Rect(0,0,0,0);this.stateWalking=0;this.stateClimbing=1;this.stateJumping=2;this.stateFalling=3;this.cacheAudio=$0c;this.animRate=25.0/$0l;this.animClimbing=0;this.animWalkLeft=1;this.animWalkRight=2;this.animJumpLadder=3;this.animResting=4;this.fallCount=0;this.Reset=function($1A){this.xPos=($1A[0]<<3);this.yPos=(($1A[1]-1)<<3)-1;this.prevXPos=this.xPos;this.prevYPos=this.yPos;this.state=this.stateWalking;this.animFrame=0;this.currentAnim=this.prevAnim=this.animWalkRight;this.xPosDelta=0;this.yVel=0;this.yAccel=0;this.dead=false;this.rect.left=this.xPos-(this.width>>1);this.rect.right=this.xPos+(this.width>>1);this.rect.bottom=this.yPos+1;this.rect.top=this.yPos-this.height;this.UpdateAnims();};this.OnEggCollision=function($1a,$1b){$0e.ClearCellAt($1a,$1b);$0i.OnEggCollected();this.cacheAudio.stop(this.cacheAudio.eggSample);this.cacheAudio.play(this.cacheAudio.eggSample);};this.OnGrainCollision=function($1a,$1b){$0e.ClearCellAt($1a,$1b);$0i.OnGrainCollected();this.cacheAudio.stop(this.cacheAudio.grainSample);this.cacheAudio.play(this.cacheAudio.grainSample);};this.OnHenCollide=function(){this.dead=true;this.cacheAudio.stop(this.cacheAudio.tuneSample);this.cacheAudio.play(this.cacheAudio.tuneSample);};this.IsObstructionLeft=function($1B){var $1b=this.yPos>>3;var $1C=$1B[$1b];var $1D=(this.xPos-3)>>3;var $1E=(this.xPos-2)>>3;if($1D<0)return true;if($1E<0)return true;var $1j=this.cachedLevMgr.wall;var $1F=(($1C[$1D]==$1j)&&($1C[$1E]!=$1j));if(this.prevYPos<this.yPos){$1F|=(($1C[$1E]==$1j)&&(((this.xPos-1)%8)==0));$1b-=1;if($1b>=0){$1F|=(($1B[$1b][$1E]==$1j)&&(((this.xPos-1)%8)==0));}};$1C=null;return $1F;};this.IsObstructionRight=function($1B){var $1b=this.yPos>>3;var $1C=$1B[$1b];var $1G=(this.xPos+2)>>3;var $1H=(this.xPos+1)>>3;if($1G>=this.cachedLevMgr.numXCells)return true;if($1H>=this.cachedLevMgr.numXCells)return true;var $1j=this.cachedLevMgr.wall;var $1I=(($1C[$1G]==$1j)&&($1C[$1H]!=$1j));if(this.prevYPos<this.yPos){$1I|=(($1C[$1H]==$1j)&&(((this.xPos+1)%8)==0));$1b-=1;if($1b>=0){$1I|=(($1B[$1b][$1H]==$1j)&&(((this.xPos+1)%8)==0));}};$1C=null;return $1I;};this.IsOverLadder=function($1B,$1J){if((this.rect.left%8)!=0)return false;var $1a=this.xPos>>3;var $1K=((this.yPos+1)>>3)-1;var top=((this.yPos+1)>>3)-2;if($1K>0&&$1K<this.cachedLevMgr.numYCells){if($1B[$1K][$1a]==this.cachedLevMgr.ladder)return true;};if(top>0&&top<this.cachedLevMgr.numYCells){if($1B[top][$1a]==this.cachedLevMgr.ladder)return true;};if($1J){var $1L=((this.yPos+1)>>3);if($1L>0&&$1L<this.cachedLevMgr.numYCells){if($1B[$1L][$1a]==this.cachedLevMgr.ladder)return true;}};return false;};this.CanDismount=function($1B){var $1L=this.yPos+1;if(($1L%8)!=0)return false;var $1a=this.xPos>>3;var $1b=$1L>>3;var $1j=this.cachedLevMgr.wall;var $1M=$1a-1;if($1M>=0){if($1B[$1b][$1M]==$1j)return true;};$1M=$1a+1;if($1M<this.cachedLevMgr.numXCells){if($1B[$1b][$1a+1]==$1j)return true;};return false;};this.JumpLeft=function(){this.state=this.stateJumping;this.xPosDelta=-1;this.yAccel=1;this.yVel=(-2<<2);this.currentAnim=this.animWalkLeft;this.cacheAudio.stop(this.cacheAudio.jumpSample);this.cacheAudio.play(this.cacheAudio.jumpSample);};this.JumpRight=function(){this.state=this.stateJumping;this.xPosDelta=1;this.yAccel=1;this.yVel=(-2<<2);this.currentAnim=this.animWalkRight;this.cacheAudio.stop(this.cacheAudio.jumpSample);this.cacheAudio.play(this.cacheAudio.jumpSample);};this.Jump=function($1N){this.state=this.stateJumping;this.xPosDelta=0;this.yAccel=1;this.yVel=(-2<<2);this.currentAnim=this.animResting;this.cacheAudio.play($1N);};this.ClimbUp=function($1B){this.state=this.stateClimbing;this.xPosDelta=0;this.yAccel=0;this.yVel=0;this.yPos+=((this.yPos&1)==0);var $1b=(this.yPos>>3)-2;if($1b>=0){var $1O=($1B[$1b][this.xPos>>3]!=this.cachedLevMgr.ladder);if(!$1O){this.yPos-=2;this.currentAnim=this.animClimbing;this.cacheAudio.play(this.cacheAudio.upDownSample);return false;}};this.cacheAudio.stop(this.cacheAudio.upDownSample);this.currentAnim=this.animResting;this.cacheAudio.stop(this.cacheAudio.jumpSample);return true;};this.ClimbDown=function($1B){this.state=this.stateClimbing;this.xPosDelta=0;this.yAccel=0;this.yVel=0;this.yPos+=((this.yPos&1)==0);var $1b=(this.yPos+1)>>3;if($1b<this.cachedLevMgr.numYCells){var $1P=($1B[$1b][this.xPos>>3]!=this.cachedLevMgr.ladder);if(!$1P){this.yPos+=2;this.currentAnim=this.animClimbing;this.cacheAudio.play(this.cacheAudio.upDownSample);return;}};this.cacheAudio.stop(this.cacheAudio.upDownSample);this.currentAnim=this.animResting;return true;};this.WalkLeft=function($1F){this.state=this.stateWalking;if(!$1F){this.xPosDelta=-1;this.currentAnim=this.animWalkLeft;this.cacheAudio.play(this.cacheAudio.leftRightSample);}};this.WalkRight=function($1I){this.state=this.stateWalking;if(!$1I){this.xPosDelta=1;this.currentAnim=this.animWalkRight;this.cacheAudio.play(this.cacheAudio.leftRightSample);}};this.UpdateJump=function($1F,$1I){if($1F&&this.xPosDelta<0)this.xPosDelta=-this.xPosDelta;if($1I&&this.xPosDelta>0)this.xPosDelta=-this.xPosDelta;};this.ProcessStateMachine=function(){var $1Q=$0d;var $18=$0e;var $1B=$18.layout;var $1R=($1Q.left&&!$1Q.right);var $1S=(!$1Q.left&&$1Q.right);var up=($1Q.up&&!$1Q.down);var $1T=(!$1Q.up&&$1Q.down);var $1U=($1Q.jump&&!up&&!$1T&&!$1R&&!$1S);var $1V=($1Q.jump&&$1R);var $1W=($1Q.jump&&$1S);var $1X=($1Q.jump&&up);var $1Y=($1Q.jump&&$1T);switch(this.state){case this.stateWalking:var $1Z=this.IsOverLadder($1B,this.CanDismount($1B));if($1V){this.JumpLeft();}else if($1W){this.JumpRight();}else if(up&&$1Z){this.ClimbUp($1B);}else if($1T&&$1Z){this.ClimbDown($1B);}else if($1R){this.WalkLeft(this.IsObstructionLeft($1B));}else if($1S){this.WalkRight(this.IsObstructionRight($1B));}else if($1U){this.Jump(this.cacheAudio.jumpSample);}else{this.currentAnim=this.animResting;this.cacheAudio.stop(this.cacheAudio.leftRightSample);};break;case this.stateClimbing:var $20=this.CanDismount($1B);if($1V){this.JumpLeft();}else if($1W){this.JumpRight();}else if($1Y||$1X){if(this.ClimbUp($1B)){this.Jump(this.cacheAudio.upDownSample);}else{if(this.prevAnim==this.animWalkLeft||this.prevAnim==this.animWalkRight)this.currentAnim=this.animJumpLadder;}}else if($1R&&$20){this.WalkLeft(this.IsObstructionLeft($1B));}else if($1S&&$20){this.WalkRight(this.IsObstructionRight($1B));}else if(up){this.ClimbUp($1B);}else if($1T){this.ClimbDown($1B);}else if($1U){this.Jump(this.cacheAudio.jumpSample);}else{this.currentAnim=this.animResting;this.cacheAudio.stop(this.cacheAudio.upDownSample);};break;case this.stateJumping:this.UpdateJump(this.IsObstructionLeft($1B),this.IsObstructionRight($1B));var $1Z=this.IsOverLadder($1B,this.CanDismount($1B));if($1V&&$1Z){this.JumpLeft();}else if($1W&&$1Z){this.JumpRight();}else if(up&&$1Z){this.ClimbUp($1B);if(this.prevAnim==this.animWalkLeft||this.prevAnim==this.animWalkRight)this.currentAnim=this.prevAnim;}else if($1T&&$1Z){this.ClimbDown($1B);if(this.prevAnim==this.animWalkLeft||this.prevAnim==this.animWalkRight)this.currentAnim=this.prevAnim;}else{this.cacheAudio.play(this.cacheAudio.jumpSample);};break;case this.stateFalling:this.currentAnim=this.animResting;break;};$1B=null;$18=null;$1Q=null;};this.RayLevelCollision=function($1B){var $21=this.cachedLevMgr.numXCells;var $0K=this.cachedLevMgr.numYCells;var $1n=this.cachedLevMgr.ladder;var $1j=this.cachedLevMgr.wall;var $1a=this.xPos>>3;if(this.yPos<=this.prevYPos){var $1b=(this.yPos>>3)+1;if(((this.yPos+1)%8)==0&&($1b<$0K)){var $0x=$1B[$1b];if($0x[$1a]==$1j)return this.yPos;if($0x[$1a]==$1n){if(($1a>0)&&$0x[$1a-1]==$1j)return this.yPos;if(($1a<($21-1))&&$0x[$1a+1]==$1j)return this.yPos;}};return($0K<<3)-1;};var $1b=(this.prevYPos>>3)+1;var $0x=null;while($1b<$0K){$0x=$1B[$1b];if($0x[$1a]==$1j)break;if($0x[$1a]==$1n){if(($1a>0)&&$0x[$1a-1]==$1j)break;if(($1a<($21-1))&&$0x[$1a+1]==$1j)break;};++$1b;};$0x=null;return($1b<<3)-1;};this.ScreenBoundryCollide=function(){if(this.rect.left<this.cachedLevMgr.levelXMin){this.xPos+=(this.cachedLevMgr.levelXMin-this.rect.left);this.xPosDelta=-this.xPosDelta;}else if(this.rect.right>this.cachedLevMgr.levelXMax){this.xPos-=(this.rect.right-this.cachedLevMgr.levelXMax);this.xPosDelta=-this.xPosDelta;};if(this.rect.top<this.cachedLevMgr.levelYMin){this.yPos+=(this.cachedLevMgr.levelYMin-this.rect.top);this.yVel=0;if(this.state!=this.stateJumping){this.dead=true;this.cacheAudio.stop(this.cacheAudio.tuneSample);this.cacheAudio.play(this.cacheAudio.tuneSample);}}else if(this.rect.bottom>=this.cachedLevMgr.levelYMax){this.yPos=(this.cachedLevMgr.levelYMax-1);this.dead=true;this.cacheAudio.stop(this.cacheAudio.tuneSample);this.cacheAudio.play(this.cacheAudio.tuneSample);}};this.UpdatePhysics=function(){this.prevYPos=this.yPos;this.prevXPos=this.xPos;this.yPos+=this.yVel>>2;this.xPos+=this.xPosDelta;this.yVel+=this.yAccel;this.rect.left=this.xPos-(this.width>>1);this.rect.right=this.xPos+(this.width>>1);this.rect.bottom=this.yPos+1;this.rect.top=this.yPos-this.height;};this.DetectHenCollisions=function(){var $22=$0g;this.collRect.left=this.rect.left+2;this.collRect.right=this.rect.right-2;this.collRect.top=this.rect.top+2;this.collRect.bottom=this.rect.bottom-2;var $1v=$22.GetNumDefinedHens();for(var i=0;i<$1v;++i){if(this.collRect.overlaps($22.GetHenRect(i))){this.OnHenCollide();break;}};if(this.collRect.overlaps($0f.GetRect()))this.OnHenCollide();$22=null;};this.Landed=function($23){if(this.state!=this.stateClimbing){this.state=this.stateWalking;this.yPos=this.prevYPos=$23;this.yAccel=this.yVel=this.xPosDelta=0;this.cacheAudio.stop(this.cacheAudio.jumpSample);this.cacheAudio.stop(this.cacheAudio.fallSample);}};this.Fall=function(){if(this.state==this.stateWalking){if(this.yVel==0){this.yAccel=1;this.yVel=1<<2;this.yPos+=1;this.fallCount=1+(this.xPosDelta==1);}else{if(--this.fallCount==0){this.state=this.stateFalling;this.xPosDelta=0;this.cacheAudio.play(this.cacheAudio.fallSample);}}}};this.CollisionDetection=function($1B){var $18=$0e;var $1B=$18.layout;this.ScreenBoundryCollide();var $23=this.RayLevelCollision($1B);var $24=$0j.RayLiftCollision(this.xPos,this.prevYPos);if($24>=(this.height-1)){if($24<$23)$23=$24;};if(this.yPos>=$23)this.Landed($23);else this.Fall();var $1a=this.xPos>>3;var $1b=this.yPos>>3;var $25=$1B[$1b][$1a];if($25==this.cachedLevMgr.egg)this.OnEggCollision($1a,$1b);else if($25==this.cachedLevMgr.grain)this.OnGrainCollision($1a,$1b);if(($1b-1)>=0){var $26=$1B[$1b-1][$1a];if($26==this.cachedLevMgr.egg)this.OnEggCollision($1a,$1b-1);else if($26==this.cachedLevMgr.grain)this.OnGrainCollision($1a,$1b-1);};this.DetectHenCollisions();$1B=null;$18=null;};this.UpdateAnims=function(){++this.animFrame;var $27=Math.floor(this.animFrame>>1)%4;var $28;switch(this.currentAnim){case this.animWalkLeft:$28=this.walkAnimLeft[$27];this.prevAnim=this.currentAnim;break;case this.animWalkRight:$28=this.walkAnimRight[$27];this.prevAnim=this.currentAnim;break;case this.animClimbing:$28=this.climbAnim[$27];this.prevAnim=this.currentAnim;break;case this.animJumpLadder:if(this.prevAnim==this.animWalkRight)$28=this.walkAnimRight[1];else if(this.prevAnim==this.animWalkLeft)$28=this.walkAnimLeft[1];else if(this.prevAnim==this.animClimbing)$28=this.climbAnim[0];break;case this.animResting:if(this.prevAnim==this.animWalkRight)$28=this.walkAnimRight[0];else if(this.prevAnim==this.animWalkLeft)$28=this.walkAnimLeft[0];else if(this.prevAnim==this.animClimbing)$28=this.climbAnim[0];break;};this.farmerStyleCache.clip="rect(0,"+($28*16)+",18,"+(($28-1)*16)+")";this.farmerStyleCache.left=((this.xPos-(this.width>>1))<<1)-(($28-1)*16);this.farmerStyleCache.top=(this.yPos)-this.height;};this.Update=function(){this.UpdatePhysics();this.CollisionDetection();if(this.dead)return;this.ProcessStateMachine();this.UpdateAnims();};this.GetXPos=function(){return this.xPos;};this.GetYPos=function(){return this.yPos;}};function Player(){this.prevHold=false;this.paused=false;this.score=0;this.numLives=5;this.numEggs=12;this.levelLayoutState=new Array;this.levelNum=0;this.bonus=1000;this.InitLevelState=function($29,$2a){for(var y=0;y<$29.length;++y){this.levelLayoutState[y]=new Array;for(var x=0;x<$29[y].length;++x)this.levelLayoutState[y][x]=$29[y][x];};this.numEggs=12;this.levelNum=$2a;};this.IsGameOver=function(){return(this.numLives==0);};this.GetCurrentLevel=function(){return this.levelNum;};this.GetLevelState=function(){return this.levelLayoutState;};this.GetScore=function(){return this.score;};this.IncrementScore=function($2b){this.score+=$2b;};this.GetLives=function(){return this.numLives;};this.DecrementLives=function(){--this.numLives;};this.IncrementLives=function(){++this.numLives;};this.DecrementEggs=function(){--this.numEggs;};this.GetNumEggs=function(){return this.numEggs;};this.SetBonus=function($2b){this.bonus=$2b;};this.GetBonus=function(){return this.bonus;}};function Game($0t){this.cachedLevMgr=$0t;this.players=new Array;this.cacheTimeStyle=[document.getElementById("time1").style,document.getElementById("time10").style,document.getElementById("time100").style];this.cacheLevelStyle=[document.getElementById("curlevel1").style,document.getElementById("curlevel10").style];this.cachePlayerStyle=[document.getElementById("curplayer").style];this.cacheBonusStyle=[document.getElementById("bonus1000").style,document.getElementById("bonus100").style,document.getElementById("bonus10").style,document.getElementById("bonus1").style];this.cacheLivesStyle=[document.getElementById("lifePlayer0").style,document.getElementById("lifePlayer1").style,document.getElementById("lifePlayer2").style,document.getElementById("lifePlayer3").style];this.cachePlayerScoresStyle=new Array;this.numPlayers=1;this.currentFrame=0;this.currentPlayer=0;this.currentTime=900;this.stopScoreTimeOut=0;this.deadTuneCounter=0;this.paused=false;this.prevhold=false;this.InitScoreDisplay=function(){var $2c=0;var $2d=document.getElementById("scorebar");var $2e=document.createElement("DIV");$2e.id="scoresdiv";$2d.appendChild($2e);for(var i=0;i<this.numPlayers;++i){this.cachePlayerScoresStyle[i]=new Array;for(var n=0;n<6;++n){var $2f=document.createElement("IMG");$2f.id="numeral"+$2c;++$2c;$2f.src="images/numerals.gif";$2f.style.position="absolute";$2e.appendChild($2f);this.cachePlayerScoresStyle[i][n]=$2f.style;}}};this.PlayerScore=function(){return this.players[this.currentPlayer].GetScore();};this.ClearScoreDisplay=function(){var $2e=document.getElementById("scoresdiv");if($2e!=null){var $2d=document.getElementById("scorebar");$2d.removeChild($2e);$2e=null;}};this.Init=function($2g){this.paused=false;this.prevhold=false;this.numPlayers=$2g;$0e=new LevelState(this.cachedLevMgr);$0f=new MotherDuck(this.cachedLevMgr);$0g=new Hens(this.cachedLevMgr);$0j=new Lifts(this.cachedLevMgr);$0h=new Farmer(this.cachedLevMgr);for(var i=0;i<this.numPlayers;++i){this.players[i]=new Player;this.players[i].InitLevelState($Z[0],0);this.cacheLivesStyle[i].visibility="visible";};this.currentPlayer=0;for(var i=this.numPlayers;i<4;++i)this.cacheLivesStyle[i].visibility="hidden";this.InitScoreDisplay();};this.Exit=function(){for(var i=0;i<this.numPlayers;++i){delete this.players[i];this.players[i]=null;};this.ClearScoreDisplay();delete $0h;delete $0j;delete $0g;delete $0f;delete $0e;$0h=null;$0j=null;$0g=null;$0f=null;$0e=null;};this.PrintNumberStyle=function($n,$2h,$2i,$2j,$2k,$2l){var $2m=Math.floor;var $2n;$2l*=100;for(var i=0;i<$2h;++i){$2o=$n%10;$2n=$2i[i];$2n.clip="rect(0,"+(($2o+1)*10+$2l)+",9,"+(($2o*10)+$2l)+")";$2n.left=$2j+(($2h-1-i)*10)-($2o*10)-$2l;$2n.top=$2k;if($n>0)$n=$2m($n/10);};$2n=null;};this.SetScore=function($2p,$2q){this.PrintNumberStyle($2q,6,this.cachePlayerScoresStyle[$2p],55+(68*$2p),7,($2p!=this.currentPlayer));};this.SetLives=function($2p,$2r){if($2r>8)$2r=8;var $2s=this.cacheLivesStyle[$2p];$2s.clip="rect(0,"+($2r*8)+",3,0)";$2s.left=55+(68*$2p);$2s.top=16;$2s=null;};this.SetLevelDisplay=function($n){this.PrintNumberStyle(($n+1),2,this.cacheLevelStyle,127,23,false);};this.SetBonusDisplay=function($n){this.PrintNumberStyle($n,4,this.cacheBonusStyle,203,23,false);};this.SetPlayerDisplay=function($n){this.PrintNumberStyle(($n+1),1,this.cachePlayerStyle,55,23,false);};this.SetTimeDisplay=function($n){this.PrintNumberStyle($n,3,this.cacheTimeStyle,289,23,false);};this.RefreshScoreBar=function(){for(var i=0;i<this.numPlayers;++i){this.SetScore(i,this.players[i].GetScore());this.SetLives(i,this.players[i].GetLives());}};this.IncrementScore=function($2b){var $2t=this.players[this.currentPlayer];$2t.IncrementScore($2b);this.SetScore(this.currentPlayer,$2t.GetScore());$2t=null;};this.DecrementLives=function(){var $2t=this.players[this.currentPlayer];$2t.DecrementLives();this.SetLives(this.currentPlayer,$2t.GetLives());$2t=null;};this.IncrementLives=function(){var $2t=this.players[this.currentPlayer];$2t.IncrementLives();this.SetLives(this.currentPlayer,$2t.GetLives());$2t=null;};this.OnEggCollected=function(){this.IncrementScore(100);this.players[this.currentPlayer].DecrementEggs();};this.OnGrainCollected=function(){this.IncrementScore(50);this.stopScoreTimeOut=128;};this.CalcNumRequiredHens=function($06){if($06<8)return 4;if($06<16)return 0;if($06<24)return 4;return 8;};this.IsMotherDuckFreed=function($06){if($06<8)return 0;return 1;};this.GetHenUpdateRate=function($06){if($06<32)return 16;return 10;};this.DoLevelCompleted=function(){var $2t=this.players[this.currentPlayer];var $2u=$2t.GetBonus();if($2u>0){$0c.play($0c.applauseSample);$2u-=10;if($2u<0){this.IncrementScore(10-$2u);$2u=0;}else this.IncrementScore(10);this.SetBonusDisplay($2u);$2t.SetBonus($2u);}else{$0c.stop($0c.applauseSample);this.IncrementLives();this.SelectLevel($2t.GetCurrentLevel()+1);}};this.SelectLevel=function($06){var $2t=this.players[this.currentPlayer];var $2v=$06%$Z.length;$2t.InitLevelState($Z[$2v],$06);$2t.SetBonus(1000);this.SetBonusDisplay(1000);this.SwitchPlayer(this.currentPlayer);};this.SwitchPlayer=function($2p){this.currentPlayer=$2p;var $2t=this.players[this.currentPlayer];var $2w=$2t.GetCurrentLevel();this.SetLevelDisplay($2w);$0e.Reset($2t.GetLevelState());this.currentTime=900;this.SetTimeDisplay(this.currentTime);$0g.Reset($00[$2w%$Z.length],this.CalcNumRequiredHens($2w));$0j.Reset($02[$2w%$Z.length]);$0h.Reset($01[$2w%$Z.length]);$0f.Reset(this.IsMotherDuckFreed($2w));this.RefreshScoreBar();this.SetPlayerDisplay(this.currentPlayer);};this.AdvancePlayer=function(){var $2x=this.FindNextPlayer();this.SwitchPlayer($2x);this.DecrementLives();};this.FindNextPlayer=function(){var $2y=this.currentPlayer;do{++$2y;if($2y>=this.numPlayers)$2y=0;if(!this.players[$2y].IsGameOver())break;}while(this.currentPlayer!=$2y);return $2y;};this.GameOver=function(){var $2x=this.FindNextPlayer();if(this.players[$2x].IsGameOver())return true;return false;};this.PlayerIsOut=function(){return this.players[this.currentPlayer].IsGameOver();};this.Update=function(){var $2t=this.players[this.currentPlayer];if($0h.dead){this.deadTuneCounter=78;$0c.play($0c.tuneSample);$0h.dead=false;};if(this.deadTuneCounter>0){--this.deadTuneCounter;if(this.deadTuneCounter>0)return 0;return 1;};if($2t.GetNumEggs()==0){this.DoLevelCompleted();return 0;};var $2z=$0d.hold;if($2z&&$0d.escape)return 2;if($2z&&!this.prevHold)this.paused=!this.paused;this.prevHold=$2z;if(this.paused)return 0;if((this.currentFrame%8)==0)$0f.Update($0h.GetXPos(),$0h.GetYPos());if((this.currentFrame%this.GetHenUpdateRate($2t.GetCurrentLevel()))==0)$0g.Update();$0j.Update();$0h.Update();++this.currentFrame;if(this.stopScoreTimeOut>0){--this.stopScoreTimeOut;}else{if((this.currentFrame%8)==0){--this.currentTime;this.SetTimeDisplay(this.currentTime);if(this.currentTime==0){this.deadTuneCounter=78;$0c.play($0c.tuneSample);}};if((this.currentFrame%32)==0){var $2u=$2t.GetBonus()-1;$2t.SetBonus($2u);this.SetBonusDisplay($2u);}};return 0;}};function HighScoreTable(){this.maxHighScores=10;this.highScoreTable=new Array;for(var i=0;i<this.maxHighScores;++i)this.highScoreTable[i]=[1000,"A&F"];this.SortOp=function(a,b){return a[0]<b[0];};this.CalcScorePosition=function($2q){for(var i=0;i<this.maxHighScores;++i){var $2A=this.highScoreTable[i][0];if($2q>=$2A)return i;};return this.maxHighScores;};this.InsertScore=function($2q){var $2B=this.CalcScorePosition($2q);this.highScoreTable[this.highScoreTable.length]=[$2q,""];this.highScoreTable.sort(this.SortOp);this.highScoreTable.length=this.maxHighScores;return $2B;};this.SetName=function($2B,name){this.highScoreTable[$2B][1]=name;this.Save();};this.GetScore=function($2B){return this.highScoreTable[$2B];};this.Save=function(){var $n="";for(var i=0;i<this.maxHighScores;++i){$n+=this.highScoreTable[i][0].toString();$n+="@";$n+=escape(this.highScoreTable[i][1]);$n+="@";};createCookie("scores",$n,"/",365);};this.Load=function(){var $0p=readCookie("scores");if($0p==null||$0p=="")return;var $0q=0;for(var i=0;i<this.maxHighScores;i++){var $0s=$0p.indexOf("@",$0q);if($0s==-1)return;this.highScoreTable[i][0]=parseInt($0p.substring($0q,$0s));$0q=$0s+1;$0s=$0p.indexOf("@",$0q);if($0s==-1)return;this.highScoreTable[i][1]=unescape($0p.substring($0q,$0s));$0q=$0s+1;}};this.Load();};var $2C=0;var $2D=1;var $2E=2;var $2F=3;var $2G=4;var $2H=5;var $2I=6;var $2J=7;var $2K=8;function GUIStateHighScores($2L){this.state=$2C;this.guiObj=$2L;this.timeOut=$0l*5;this.timer=0;this.PadScore=function($e){var $g=$e.toString();while($g.length<7)$g=" "+$g;return $g;};this.Enter=function(){this.guiObj.DisplayBanner();var $2M=5;var $g="HIGH SCORES";this.guiObj.Print($g,'yellow',(20-$g.length)<<3,7*8-1);var $2k=10*8-2;for(var i=0;i<$0k.highScoreTable.maxHighScores;++i){var $2N=$0k.highScoreTable.GetScore(i);var $g=(i+1).toString()+" "+this.PadScore($2N[0]);$g+=" "+$2N[1];this.guiObj.Print($g,'lime',(i==($0k.highScoreTable.maxHighScores-1))?1*16-4:2*16-4,$2k);$2k+=(8+$2M);};$2k=29*8-2;this.guiObj.Print("Press",'yellow',2*16,$2k);this.guiObj.Print("S",'cyan',8*16,$2k);this.guiObj.Print("to start",'yellow',10*16,$2k);$2k+=(8+$2M);this.guiObj.Print("K",'cyan',2*16,$2k);this.guiObj.Print("to change keys",'yellow',4*16,$2k);this.timer=this.timeOut;};this.Exit=function(){this.guiObj.ClearScreen();return 0;};this.Update=function(){var $1Q=$0d;var $d=this.state;if($1Q.start)$d=$2F;else if($1Q.redefine)$d=$2E;$1Q=null;--this.timer;if(this.timer>0)return $d;return $2J;}};function GUIStateEnterName($2L){this.state=$2K;this.guiObj=$2L;this.keyReleased=false;this.playersName="";this.score=0;this.position=0;this.nameEntry=null;this.nameEntryXPos=0;this.nameEntryYPos=0;this.PadScore=function($e){var $g=$e.toString();while($g.length<7)$g=" "+$g;return $g;};this.Enter=function($2q){this.timer=this.timeOut;this.playersName="";this.score=$2q;this.position=$0k.highScoreTable.InsertScore(this.score);var $2M=5;var $g="HIGH SCORES";this.guiObj.Print($g,'yellow',(20-$g.length)<<3,7*8-1);var $2k=10*8-2;for(var i=0;i<$0k.highScoreTable.maxHighScores;++i){var $2N=$0k.highScoreTable.GetScore(i);var $g=(i+1).toString()+" "+this.PadScore($2N[0]);if(i==this.position){this.guiObj.Print($g,'lime',(i==($0k.highScoreTable.maxHighScores-1))?1*16-4:2*16-4,$2k);this.guiObj.Print(">",'yellow',(i==($0k.highScoreTable.maxHighScores-1))?10*16-4:11*16-4,$2k);this.nameEntryXPos=(i==($0k.highScoreTable.maxHighScores-1))?11*16-4:12*16-4;this.nameEntryYPos=$2k;this.nameEntry=this.guiObj.CreateNameEntry('yellow',this.nameEntryXPos,this.nameEntryYPos);}else{$g+=" "+$2N[1];this.guiObj.Print($g,'lime',(i==($0k.highScoreTable.maxHighScores-1))?1*16-4:2*16-4,$2k);};$2k+=(8+$2M);};$2k=28*8-2;$g="ENTER YOUR NAME";this.guiObj.Print($g,'yellow',(20-$g.length)<<3,$2k);$2k+=(8+$2M);$g="Player "+($0i.currentPlayer+1);this.guiObj.Print($g,'magenta',(20-$g.length)<<3,$2k);$0d.DisableBackspace();};this.Exit=function(){this.guiObj.ClearScreen();$0d.EnableBackspace();return 0;};this.Update=function(){var $0o=$0d.GetCurrentKeyCode();if(!this.keyReleased){if($0o==-1)this.keyReleased=true;else return this.state;};if($0o==-1)return this.state;this.keyReleased=false;if($0o==13){$0k.highScoreTable.SetName(this.position,this.playersName);if($0i.GameOver()){$0i.Exit();return $2C;};$0i.AdvancePlayer();return $2G;};if($0o==46){if(this.playersName.length>0)this.playersName=this.playersName.substr(0,this.playersName.length-1);}else{if(this.playersName.length==8)return this.state;if($0o>=32&&$0o<127)this.playersName+=String.fromCharCode($0o);};this.guiObj.SetNameEntry(this.nameEntry,this.playersName,this.nameEntryXPos,this.nameEntryYPos);return this.state;}};function GUIStatePreview($2L){this.state=$2J;this.guiObj=$2L;this.timeOut=$0l*5;this.timer=0;this.fromWhere=0;this.Enter=function($2O){this.fromWhere=$2O;$0i.Init(1+Math.floor(Math.random()*4));$0i.SelectLevel(Math.floor(Math.random()*9));$0i.DecrementLives();document.getElementById("gamediv").style.visibility="visible";this.guiObj.guiDiv.style.visibility="hidden";this.timer=this.timeOut;};this.Exit=function($2L){document.getElementById("gamediv").style.visibility="hidden";$0i.Exit();this.guiObj.guiDiv.style.visibility="visible";return 0;};this.Update=function(){var $1Q=$0d;var $d=this.state;if($1Q.start)$d=$2F;else if($1Q.redefine)$d=$2E;$1Q=null;--this.timer;if(this.timer>0)return $d;if(this.fromWhere==0)return $2I;return $2C;}};function GUIStateInGame($2L){this.state=$2D;this.guiObj=$2L;this.Enter=function($2g){document.getElementById("gamediv").style.visibility="visible";this.guiObj.guiDiv.style.visibility="hidden";};this.Exit=function($2L){return 0;};this.Update=function(){var $d=$0i.Update();if($d==0)return this.state;else if($d==1){if($0i.PlayerIsOut())return $2H;document.getElementById("gamediv").style.visibility="hidden";$0i.AdvancePlayer();return $2G;}else if($d==2){document.getElementById("gamediv").style.visibility="hidden";$0i.Exit();this.guiObj.guiDiv.style.visibility="visible";return $2C;}}};function GUIStateKeys($2L){this.state=$2I;this.guiObj=$2L;this.ctrlStrings=["   Up .."," Down .."," Left ..","Right .."," Jump .."];this.ypos=(10<<3);this.spacing=(2<<3)+4;this.timeOut=$0l*5;this.timer=0;this.Enter=function(){this.guiObj.DisplayBanner();var $g="KEYS";this.guiObj.Print($g,'yellow',(20-$g.length)<<3,(6<<3)+7);var $2P=new Array;var $1Q=$0d;$2P[0]=$1Q.GetUpCode();$2P[1]=$1Q.GetDownCode();$2P[2]=$1Q.GetLeftCode();$2P[3]=$1Q.GetRightCode();$2P[4]=$1Q.GetJumpCode();this.ypos=(10<<3);for(var i=0;i<$2P.length;++i){this.guiObj.Print(this.ctrlStrings[i],'cyan',0,this.ypos);this.guiObj.Print("'"+$1Q.GetKeyCodeString($2P[i])+"'",'cyan',(9<<4),this.ypos);this.ypos+=this.spacing;};var $2M=5;this.ypos+=$2M;this.guiObj.Print(" Hold .. 'H'",'magenta',0,this.ypos);this.ypos+=this.spacing;this.guiObj.Print("Abort .. Escape +'H'",'magenta',0,this.ypos);$2k=29*8-2;this.guiObj.Print("Press",'yellow',2*16,$2k);this.guiObj.Print("S",'cyan',8*16,$2k);this.guiObj.Print("to start",'yellow',10*16,$2k);$2k+=(8+$2M);this.guiObj.Print("K",'cyan',2*16,$2k);this.guiObj.Print("to change keys",'yellow',4*16,$2k);this.timer=this.timeOut;};this.Exit=function(){this.guiObj.ClearScreen();return 1;};this.Update=function(){var $1Q=$0d;var $d=this.state;if($1Q.start)$d=$2F;else if($1Q.redefine)$d=$2E;$1Q=null;--this.timer;if(this.timer>0)return $d;return $2J;}};function GUIStateRedefineKeys($2L){this.state=$2E;this.guiObj=$2L;this.ypos=(10<<3);this.spacing=(2<<3)+4;this.keyReleased=false;this.keyCodes=new Array;this.numKeyCodesEntered=0;this.ctrlStrings=["   Up .."," Down .."," Left ..","Right .."," Jump .."];this.timeOut=$0l;this.timer=0;this.Enter=function(){this.numKeyCodesEntered=0;this.ypos=(10<<3);var $g="K E Y";this.guiObj.Print($g,'yellow',(20-$g.length)<<3,(2<<3)+2);$g="S E L E C T I O N";this.guiObj.Print($g,'yellow',(20-$g.length)<<3,(5<<3)+3);this.guiObj.Print(this.ctrlStrings[this.numKeyCodesEntered],'magenta',0,this.ypos);this.keyReleased=false;};this.Exit=function(){this.guiObj.ClearScreen();return 0;};this.Update=function(){if(this.timer>0){--this.timer;if(this.timer>0)return this.state;var $1Q=$0d;$1Q.SetUpCode(this.keyCodes[0]);$1Q.SetDownCode(this.keyCodes[1]);$1Q.SetLeftCode(this.keyCodes[2]);$1Q.SetRightCode(this.keyCodes[3]);$1Q.SetJumpCode(this.keyCodes[4]);$1Q.Save();return $2C;};var $0o=$0d.GetCurrentKeyCode();if(!this.keyReleased){if($0o==-1)this.keyReleased=true;else return this.state;};if($0o==-1)return this.state;if($0o==27||$0o=='H')return this.state;var i=0;for(;i<this.numKeyCodesEntered;++i){if(this.keyCodes[i]==$0o)break;};if(i==this.numKeyCodesEntered){this.keyCodes[this.numKeyCodesEntered]=$0o;this.guiObj.Print("'"+$0d.GetKeyCodeString($0o)+"'",'magenta',(9<<4),this.ypos);++this.numKeyCodesEntered;if(this.numKeyCodesEntered==5)this.timer=this.timeOut;else{this.ypos+=this.spacing;this.guiObj.Print(this.ctrlStrings[this.numKeyCodesEntered],'magenta',0,this.ypos);}};return this.state;}};function GUIStateNumPlayers($2L){this.state=$2F;this.guiObj=$2L;this.numPlayers=0;this.timeOut=$0l;this.time=0;this.Enter=function(){this.numPlayers=0;var $g="How many players?  ";this.guiObj.Print($g,'yellow',(20-$g.length)<<3,(16<<3)+2);};this.Exit=function(){$0i.Init(this.numPlayers);$0i.SelectLevel(0);$0i.DecrementLives();this.guiObj.ClearScreen();return 0;};this.Update=function(){if(this.numPlayers){--this.timer;if(this.timer==0)return $2G;}else{var $1Q=$0d;if($1Q.one)this.numPlayers=1;else if($1Q.two)this.numPlayers=2;else if($1Q.three)this.numPlayers=3;else if($1Q.four)this.numPlayers=4;if(this.numPlayers){this.timer=this.timeOut;this.guiObj.Print(this.numPlayers.toString(),'yellow',18<<4,(16<<3)+2);};$1Q=null;};return this.state;}};function GUIStateGetReady($2L){this.state=$2G;this.guiObj=$2L;this.timeOut=$0l*3;this.time=0;this.Enter=function(){this.guiObj.guiDiv.style.visibility="visible";var $g="Get Ready";this.guiObj.Print($g,'yellow',(20-$g.length)<<3,(16<<3)+2);$g="Player "+($0i.currentPlayer+1);this.guiObj.Print($g,'cyan',(20-$g.length)<<3,(19<<3)+3);this.timer=this.timeOut;};this.Exit=function(){this.guiObj.ClearScreen();return 0;};this.Update=function(){--this.timer;if(this.timer>0)return this.state;return $2D;}};function GUIStateGameOver($2L){this.state=$2H;this.guiObj=$2L;this.timeOut=$0l*3;this.time=0;this.Enter=function(){var $2Q=this.guiObj.guiDiv.style;$2Q.top=(15<<3)+2;var $g=" GAME OVER ";var $2R=$g.length;$2Q.left=(20-$2R)<<3;$2Q.width=$2R<<4;$2Q.height=6<<3;$2Q.visibility="visible";$g="GAME OVER";this.guiObj.Print($g,'cyan',($2R-$g.length)<<3,(1<<3)+2);$g="Player "+($0i.currentPlayer+1);this.guiObj.Print($g,'cyan',($2R-$g.length)<<3,(4<<3)+3);this.timer=this.timeOut;};this.Exit=function(){this.guiObj.ClearScreen();return $0i.PlayerScore();};this.Update=function(){--this.timer;if(this.timer>0)return this.state;document.getElementById("gamediv").style.visibility="hidden";if($0i.PlayerIsOut()){if($0k.highScoreTable.CalcScorePosition($0i.PlayerScore())<$0k.highScoreTable.maxHighScores)return $2K;return $2C;};$0i.AdvancePlayer();return $2G;}};function GUIUpdate(){$0k.Update();};function GUI(){this.states=[new GUIStateHighScores(this),new GUIStateInGame(this),new GUIStateRedefineKeys(this),new GUIStateNumPlayers(this),new GUIStateGetReady(this),new GUIStateGameOver(this),new GUIStateKeys(this),new GUIStatePreview(this),new GUIStateEnterName(this)];this.currentState=$2C;this.guiDiv=null;this.nameEntry=null;this.highScoreTable=null;this.Init=function(){this.highScoreTable=new HighScoreTable;this.guiDiv=this.CreateScreen();this.currentState=$2C;this.states[this.currentState].Enter();var $2S=new LevelManager;$2S.LoadLevels();$0i=new Game($2S);this.g_nTimerId=window.setTimeout("GUIUpdate()",$0m);this.date=new Date;this.ms=this.date.getTime();};this.Exit=function(){window.clearInterval(this.g_nTimerId);delete $0i;$0i=null;delete $2S;$2S=null;var $2T=this.states.length;for(var i=0;i<$2T;++i){delete this.states[i];this.states[i]=null;};delete this.highScoreTable;this.highScoreTable=null;};this.time=function(){var $2U=new Date;var $2V=$2U.getTime();delete $2U;$2U=null;return $2V;};this.Update=function(){window.clearTimeout(this.g_nTimerId);this.g_nTimerId=window.setTimeout("GUIUpdate()",$0m);var $2W=this.states[this.currentState].Update();if($2W!=this.currentState){var $d=this.states[this.currentState].Exit();this.currentState=$2W;this.states[$2W].Enter($d);}};this.DisplayBanner=function(){var $2X=document.createElement("IMG");$2X.src="images/banner2.gif";$2X.style.position="absolute";$2X.style.top=0;$2X.style.left=0;$2X.style.backgroundColor="#000000";this.guiDiv.appendChild($2X);};this.Print=function($g,$2Y,$2j,$2k){var $2Z=$g.length;var $30;var $31,$32;for(var i=0;i<$2Z;++i){$30=($g.charCodeAt(i)-32);$31=($30%20)<<4;$32=(Math.floor($30/20))<<3;var $2X=document.createElement("IMG");$2X.src="images/mode2font.gif";$2X.style.position="absolute";$2X.style.top=($2k-$32);$2X.style.left=($2j-$31);$2X.style.clip="rect("+$32+","+($31+16)+","+($32+8)+","+$31+")";$2X.style.backgroundColor=$2Y;this.guiDiv.appendChild($2X);$2j+=(1<<4);}};this.CreateNameEntry=function($2Y,$2j,$2k){var $33=new Array;var $30=0;var $31,$32;for(var i=0;i<8;++i){$31=($30%20)<<4;$32=(Math.floor($30/20))<<3;var $2X=document.createElement("IMG");$2X.src="images/mode2font.gif";$2X.style.position="absolute";$2X.style.top=($2k-$32);$2X.style.left=($2j-$31);$2X.style.clip="rect("+$32+","+($31+16)+","+($32+8)+","+$31+")";$2X.style.backgroundColor=$2Y;this.guiDiv.appendChild($2X);$2j+=(1<<4);$33[i]=$2X;};return $33;};this.SetNameEntry=function($33,$g,$2j,$2k){var $31,$32;for(var i=0;i<8;++i){if(i<$g.length)var $30=($g.charCodeAt(i)-32);else var $30=0;$31=($30%20)<<4;$32=(Math.floor($30/20))<<3;$33[i].style.top=($2k-$32);$33[i].style.left=($2j-$31);$33[i].style.clip="rect("+$32+","+($31+16)+","+($32+8)+","+$31+")";$2j+=(1<<4);}};this.CreateScreen=function(){var $34=document.getElementById("outerdiv");var screen=document.createElement("DIV");screen.style.position="absolute";screen.style.width=$X<<1;screen.style.height=$Y;screen.style.backgroundColor="#000000";$34.appendChild(screen);return screen;};this.ClearScreen=function(){var $35=this.CreateScreen();if(this.guiDiv!=null){var $34=document.getElementById("outerdiv");$34.removeChild(this.guiDiv);this.guiDiv=null;};this.guiDiv=$35;}};function load(){$0c=new AudioSystem();$0c.Init();$0d=new Keyboard();$0k=new GUI();$0k.Init();};function unload(){$0k.Exit();};



