var code=new Array("1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");

function decto35(deci) {
  cifra="";
  while (deci>35) {
 	q=Math.floor(deci/35);
	 r=deci-(q*35);
	 //alert(code[parseInt(r)]);
	 cifra=code[parseInt(r)]+cifra;
	 deci=q;
 }
 cifra=code[parseInt(deci)]+cifra;
 return cifra;
}

function stagtodec(tr) {
 vstag=0;
 car=tr.split("");
 for (i=0;i<car.length;i++) {
   y=car.length-1-i;
   ascii=car[y].charCodeAt(0)-49;
   if (ascii>8) {ascii-=7};
   vstag=vstag+(ascii*Math.pow(35,i));
 }
 return vstag;
}

function code_stag(lt,ln,azi,alz){
 lt=lt-35;
 ln=ln-6;
 lt=lt.roundTo(5)*100000;
 ln=ln.roundTo(5)*100000;
 stag1=decto35(lt)+"-"+decto35(ln);
 if ((azi!=undefined)&&(alz!=undefined)) {
   stag1+="-"+decto35(azi+100)+decto35(Math.floor(alz));
 }
 return stag1;
}

function decode_stag(sc){
 azi=0;
 alz=0;
 sp=sc.split("-");
 lt=(stagtodec(sp[0])/100000)+35;
 ln=(stagtodec(sp[1])/100000)+6;
 if (sp[2]) {azi=stagtodec(sp[2].substr(0,2))-100;alz=stagtodec(sp[2].substr(2))}
 dstag=new Array(lt,ln,azi,alz);
 return dstag;
}

