var remainder = 0;
var answer_d = 0;
var m19 = 0;
var testn1=0;
var testn2=0;
var testglobal= 15;
var divi19longanswer="";
var valid_english = 0;
var valid_arabic = 0;


// ##########################################################################################
// Some of the variables in this program are not named clearly. The inconvinience is regretted.
// ##########################################################################################
function calc_anv(t,cond1) {

if  (t.s12.value == "") { 
     status1= t.dosimul.checked;
	 status2= t.docomb.checked;
	 
     t.reset();
	 if (status1==false) { t.dosimul.checked=false } else { t.dosimul.checked=true }
	 if (status2==false) { t.docomb.checked=false } else { t.docomb.checked=true }
	 
	 return; 
	 }

if (t.docomb.checked == false ) {
t.comb1.value = "" ; t.comb2.value = "" ; t.comb3.value = "" ; t.comb4.value = "" ;
t.comb5.value = "" ; t.comb6.value = "" ; t.comb7.value = "" ; t.comb8.value = "" ;
t.comb9.value = "" ; t.comb10.value = "" ; t.comb11.value = "" ; t.comb12.value = "" ;
t.comb13.value = "" ; t.comb14.value = "" ; t.comb15.value = "" ; t.comb16.value = "" ;
t.comb17.value = "" ; t.comb18.value = "" ;  t.comb19.value = "" ; t.comb20.value = "" ;
t.comb21.value = "" ; t.comb22.value = "" ; t.comb23.value = "" ; t.comb24.value = "" ;
}



if ((t.dosimul.checked == false) && (cond1 == 0))  { return; }
if (cond1 == 6) {  
stemp3 = t.livecalc.value;
temp4 = t.livecalc.status;
t.s12.value = temp3 + "" + temp4;
}

//if ((t.livecalc.status == "false") && (cond1 == 0)) { return; }

theKey = window.event.keyCode
if ((theKey == 33) || (theKey == 34) || (theKey == 35) || (theKey == 36) || (theKey == 37) || (theKey == 38) || 
(theKey == 39) || (theKey == 40) )
{ 
//return; 
}

temp1 = t.s12.value;
temp2 = t.entercustom.value;
// t.reset();
//  t.s12.value= temp1;
t.entercustom.value = temp2;

if ((t.s12.value == "") && (cond1 == 1)) { 
 alert("Please enter a text to analyze"); 
     t.reset(); 
 return; }

t.customecho.value = "";
val_A= 1;val_B= 2;val_C= 3;val_D= 4;val_E= 5;val_F= 6;val_G= 7;val_H= 8;val_I= 9;
val_J= 10;val_K= 11;val_L= 12;val_M= 13;val_N= 14;val_O= 15;val_P= 16;val_Q= 17;
val_R= 18;val_S= 19;val_T= 20;val_U= 21;val_V= 22;val_W= 23;val_X= 24;val_Y= 25;val_Z= 26;

var a12 = t.s12.value;
var lengg = a12.length;

a12= a12.toLowerCase();
anv1 = 0;
pnv1 = 0;
aanv1 = 0;
anv1n = 0;
aanv1n = 0;
pnv1n = 0;
val1=0;
val2=0;
val3=0;
val1n=0;
val2n=0;
num_val=0;
num_arabic_value=0;
var arabic_letter = "";
num_found=0;
arabic_num_found=0; 
num_spaces=0;
num_alphabets = 0;
num_numeric = 0;
num_numeric_arabic = 0;
num_arabic = 0;
num_nonalphanumeric = 0;

var str1 = "";
var str2 = "";
var str3 = "";
var str3c= "";

var str1n = "";
var str2n = "";
var str3n = "";
var arabic_str = "";
var arabic_letter = "";

strbreaklength = 20;

valid_english = 0;
valid_arabic = 0;

for (var i=0;i<lengg; i++) {

var temp_char=a12.charAt(i);

switch (temp_char) 
{ 
   case "a" : val1=1; val2=1; num_alphabets++; break; 
   case "b" : val1=2; val2=2; num_alphabets++; break; 
   case "c" : val1=3; val2=3; num_alphabets++; break; 
   case "d" : val1=4; val2=4; num_alphabets++; break; 
   case "e" : val1=5; val2=5; num_alphabets++; break; 
   case "f" : val1=6; val2=6; num_alphabets++; break; 
   case "g" : val1=7; val2=7; num_alphabets++; break; 
   case "h" : val1=8; val2=8; num_alphabets++; break; 
   case "i" : val1=9; val2=9; num_alphabets++; break; 
   case "j" : val1=10; val2=1; num_alphabets++; break; 
   case "k" : val1=11; val2=2; num_alphabets++; break; 
   case "l" : val1=12; val2=3; num_alphabets++; break; 
   case "m" : val1=13; val2=4; num_alphabets++; break; 
   case "n" : val1=14; val2=5; num_alphabets++; break; 
   case "o" : val1=15; val2=6; num_alphabets++; break; 
   case "p" : val1=16; val2=7; num_alphabets++; break; 
   case "q" : val1=17; val2=8; num_alphabets++; break; 
   case "r" : val1=18; val2=9; num_alphabets++; break; 
   case "s" : val1=19; val2=1; num_alphabets++; break; 
   case "t" : val1=20; val2=2; num_alphabets++; break; 
   case "u" : val1=21; val2=3; num_alphabets++; break; 
   case "v" : val1=22; val2=4; num_alphabets++; break; 
   case "w" : val1=23; val2=5; num_alphabets++; break; 
   case "x" : val1=24; val2=6; num_alphabets++; break; 
   case "y" : val1=25; val2=7; num_alphabets++; break; 
   case "z" : val1=26; val2=8; num_alphabets++; break; 
   case "1" : val1=0; val2=0; num_found=1; num_val=1; num_numeric++; break; 
   case "2" : val1=0; val2=0; num_found=1; num_val=2; num_numeric++; break; 
   case "3" : val1=0; val2=0; num_found=1; num_val=3; num_numeric++; break; 
   case "4" : val1=0; val2=0; num_found=1; num_val=4; num_numeric++; break; 
   case "5" : val1=0; val2=0; num_found=1; num_val=5; num_numeric++; break; 
   case "6" : val1=0; val2=0; num_found=1; num_val=6; num_numeric++; break; 
   case "7" : val1=0; val2=0; num_found=1; num_val=7; num_numeric++; break;
   case "8" : val1=0; val2=0; num_found=1; num_val=8; num_numeric++; break;
   case "9" : val1=0; val2=0; num_found=1; num_val=9; num_numeric++; break;
   case "0" : val1=0; val2=0; num_found=1; num_val=0; num_numeric++; break;
   
// alef + hamza
   case "\u0621": // hamza (hamza, alef:, same values)
   case "\u0674": val3=1; arabic_letter = "Hamza "; num_arabic++; break; // hamza
   case "\u0622":
   case "\u0623":
   case "\u0625":
   case "\u0627":
   case "\u0671":
   case "\u0672":
   case "\u0673":
   case "\u0675":
   case "\u0627": val3=1; arabic_letter = "Alif "; num_arabic++; break;
  
   case "\u0628": val3=2; num_arabic++; var arabic_letter = "Beh "; break;   // beh
   case "\u062c": val3=3; num_arabic++; var arabic_letter = "Jim "; break;   // jim   
   case "\u062f": val3=4; num_arabic++; var arabic_letter = "Dal "; break;   // dal   
   

   case "\u06c2": // heh
   case "\u06be":
   case "\u06c0":
   case "\u06d5":
   case "\u0654":
   case "\u06c1":
   case "\u06ff":
   case "\u0647": val3=5;  arabic_letter = "Heh "; num_arabic++; break;   // heh   
   


   case "\u0676": // waow
   case "\u0677":
   case "\u0648":
   case "\u06c4":
   case "\u06c5":
   case "\u06c6":
   case "\u06c7":
   case "\u06c8":
   case "\u06c9":
   case "\u06ca":
   case "\u06cb":
   case "\u06cf":
   case "\u0624": val3=6; arabic_letter = "Waow "; num_arabic++; break;   // waow


   case "\u0632": val3=7; arabic_letter = "Zeh "; num_arabic++; break;   // zeh

   case "\u0681": // hah
   case "\u0682":
   case "\u0685":
   case "\u062d": val3=8; arabic_letter = "Hah "; num_arabic++; break;   // hah

   case "\u069f": // toay / tah 
   case "\u0637": val3=9; arabic_letter = "Toay "; num_arabic++; break;   // toay / tah
   

   case "\u0678": // yeh
   case "\u0649":
   case "\u064a":
   case "\u06cc":
   case "\u06cd":
   case "\u06ce":
   case "\u06d1":
   case "\u06d2":
   case "\u06d3":
   case "\u06e6":
   case "\u0626": val3=10; arabic_letter = "Yeh "; num_arabic++; break;   // yeh

   
   case "\u06a9": // kaaf
   case "\u06aa":
   case "\u0643":
   case "\u06ab":
   case "\u06ac":
   case "\u06ae":
   case "\u0643": val3=20; arabic_letter = "Kaf "; num_arabic++; break;   // kaaf


   case "\u06b5": // laam
   case "\u06b6":
   case "\u06b7":
   case "\u06b8": 
   case "\u0644": val3=30; arabic_letter = "Laam "; num_arabic++; break;   // laam


   case "\u0645": val3=40; arabic_letter = "Mim "; num_arabic++; break;   // mim


   case "\u06b9": // noon
   case "\u06ba":
   case "\u06bc":
   case "\u06bd":
   case "\u0646": val3=50; arabic_letter = "Noon "; num_arabic++; break;   // noon

   case "\u069a": // seen
   case "\u069b":
   case "\u069c":
   case "\u0633": val3=60; arabic_letter = "Seen "; num_arabic++; break;   // seen


   case "\u06a0": // ain
   case "\u0639": val3=70; arabic_letter = "Ain "; num_arabic++; break;   // ain


   case "\u06a2":   // feh
   case "\u06a3":
   case "\u06a5":
   case "\u0641": val3=80; arabic_letter = "Feh "; num_arabic++; break;   // feh


   case "\u069e":
   case "\u069d":
   case "\u0635": val3=90; arabic_letter = "Sad "; num_arabic++; break;   // suad 


   case "\u06a7":
   case "\u06a8":
   case "\u06ff":
   case "\u0642": val3=100; arabic_letter = "Qaf "; num_arabic++; break;   // Qaaf
  

   case "\u0699":
   case "\u0691":
   case "\u0692":
   case "\u0693":
   case "\u0694":
   case "\u0695":
   case "\u0696":
   case "\u0697":
   case "\u06ef":
   case "\u0631": val3=200; arabic_letter = "Reh "; num_arabic++; break;   // Reh
 
   
   
   case "\u06fa": 
   case "\u0634": val3=300; arabic_letter = "Sheen "; num_arabic++; break;   // Sheen
   
   
   case "\u062a": // teh
   case "\u067c":
   case "\u067d":
   case "\u06c3":
   case "\u0629": val3=400; arabic_letter = "Teh "; num_arabic++; break;   // Teh
   
   
   case "\u062b": val3=500; arabic_letter = "Say "; num_arabic++; break;   // Say

   case "\u062e": val3=600; arabic_letter = "Khay "; num_arabic++; break;   //  khay
   
   case "\u0630": val3=700; arabic_letter = "Zaal "; num_arabic++; break;   //  zaal

   case "\u06fb":
   case "\u0636": val3=800; arabic_letter = "Zaad "; num_arabic++; break;   //  zaad


   case "\u0638": val3=900; arabic_letter = "Zoay "; num_arabic++; break;   //  zoay

   case "\u06fc":
   case "\u063a": val3=1000; arabic_letter = "Ghain "; num_arabic++; break;   //  ghain

   case "\u06f0":   
   case "\u0660": val3=0; arabic_num_found=1; num_arabic_value=0; num_numeric_arabic++; 
                  arabic_letter = "0 "; num_arabic++; break;   //  0


   case "\u06f1":   
   case "\u0661": val3=0; arabic_num_found=1; num_arabic_value=1; num_numeric_arabic++;
                  arabic_letter = "1 "; num_arabic++; break;   //  1

				  
   case "\u06f2":   
   case "\u0662": val3=0; arabic_num_found=1; num_arabic_value=2; num_numeric_arabic++; 
                  arabic_letter = "2 "; num_arabic++; break;   //  2


   case "\u06f3":   
   case "\u0663": val3=0; arabic_num_found=1; num_arabic_value=3; num_numeric_arabic++; 
                  arabic_letter = "3 "; num_arabic++; break;   //  3

   case "\u06f4":   
   case "\u0664": val3=0; arabic_num_found=1; num_arabic_value=4; num_numeric_arabic++; 
                  arabic_letter = "4 "; num_arabic++; break;   //  4

   case "\u06f5":   
   case "\u0665": val3=0; arabic_num_found=1; num_arabic_value=5; num_numeric_arabic++; 
                  arabic_letter = "5 "; num_arabic++; break;   //  5
   

   case "\u06f6":   
   case "\u0666": val3=0; arabic_num_found=1; num_arabic_value=6; num_numeric_arabic++; 
                  arabic_letter = "6 "; num_arabic++; break;   //  6

   case "\u06f7":   
   case "\u0667": val3=0; arabic_num_found=1; num_arabic_value=7; num_numeric_arabic++; 
                  arabic_letter = "7 "; num_arabic++; break;   //  7

   case "\u06f8":   
   case "\u0668": val3=0; arabic_num_found=1; num_arabic_value=8; num_numeric_arabic++; 
                  arabic_letter = "8 "; num_arabic++; break;   //  8
				  
   
   case "\u06f9":   
   case "\u0669": val3=0; arabic_num_found=1; num_arabic_value=9; num_numeric_arabic++; 
                  arabic_letter = "9 "; num_arabic++; break;   //  9
   
   case " " : val1=0; val2=0; val3=0; num_spaces++; break; 
   default  : val1=0; val2=0; val3=0; num_nonalphanumeric++;

} 

sval1 = val1;
sval2 = val2;
sval3 = val3;
sval3c= val3;

if (val2 == 0) { sval1 = ""; sval2 = "";  }
if (val3 == 0) { sval3 = ""; sval3c="";}

if (temp_char == " ") { sval1 = " "; sval2 = " "; sval3 = " "; sval3c=" "; arabic_letter = " "; }
arabic_str = arabic_str + arabic_letter;
str1 = str1 + sval1;
str2 = str2 + sval2;
str3 = str3 + sval3;
str3c = str3c + sval3c;

if (num_found == 1) {  str1n = str1n + sval1 + num_val; } else { str1n = str1n + sval1; }
if (num_found == 1) {  str2n = str2n + sval2 + num_val; } else { str2n = str2n + sval2; }

if (arabic_num_found == 1) {  str3n = str3n + sval3 + num_arabic_value; } else { str3n = str3n + sval3; }


anv1 = anv1 + val1;
pnv1 = pnv1 + val2;
aanv1= aanv1 + val3;

anv1n = anv1n + val1 + num_val;
pnv1n = pnv1n + val2 + num_val;
aanv1n = aanv1n + val3 + num_arabic_value;

val1=0;
val2=0;
val3=0;
num_val=0;
num_arabic_value = 0;
num_found=0;
arabic_num_found=0;
arabic_letter="";

} // end of for loop



  
if (num_alphabets >0 ) { valid_english = 1 ; };
if (num_arabic >0 ) { valid_arabic = 1 ; };


if ((num_alphabets < 1) && (num_numeric < 1) && (num_arabic < 1) ) { 
      alert("There are no valid characters to analyze."); 
      t.reset(); 
 return; }
 
 if ((num_alphabets < 1) && (num_arabic < 1)) { 
      alert("Only numbers were entered. Please try again."); 
      t.reset(); 
 return; }
 
 
 if ((num_arabic > 0) && (num_alphabets > 0)) { 
      alert("Arabic and English characters found together. Please enter seperately."); 
      t.reset(); 
 return; }
 
                           
 
 


   t.alphabets.value = num_alphabets;
   t.numeric.value = num_numeric + num_numeric_arabic;
   t.nonalphanumeric.value = num_nonalphanumeric;
   t.spaces.value = num_spaces;
   t.lenn.value = lengg;
   t.words.value = num_spaces + 1;
   
if (valid_english ==1) {
   t.numecho.value = str1; // ianv seq
   t.numecho2.value = str2;  // pnv seq

   t.pnvf.value = pnv1;
   t.anvf.value = anv1;

if (num_numeric != 0) { 
   t.pnvfn.value = pnv1n;
   t.anvfn.value = anv1n;
}
else {
   t.pnvfn.value = "";
   t.anvfn.value = "";
}

   t.anvseqecho.value = "";
   t.aanvfn.value = "";
   t.anvtrecho.value = "";
   t.aanvf.value = "";
   t.arabic.value = "";

} // end if valid english


if (valid_arabic ==1) {
   t.anvseqecho.value = str3;
   t.anvtrecho.value = arabic_str;
   t.aanvf.value = aanv1;
   t.arabic.value = num_arabic;
   t.numecho.value = str1; // ianv seq
   t.numecho2.value = str2;  // pnv seq
   
   if (num_numeric_arabic != 0) { 
   t.aanvfn.value = aanv1n;
     }
     else {
       t.aanvfn.value = "";
     }

   t.pnvf.value = "";
   t.anvf.value = "";
   t.pnvfn.value = "";
   t.anvfn.value = "";

  do_verse_test = 1;
  //if  (num_arabic < 50) { // == 19
  //                   HTML CODING
  //Test1: 
  // <TEXTAREA class=boxfont 
  // onclick="document.trig2.test1.createTextRange().execCommand('Copy')"  readOnly rows=5 cols=30 name=test1> </TEXTAREA>
						
  if  (do_verse_test==1) { // == 19
  
   // cleanup arabic string, delete extra spaces
   var cup_as= "";
   var len_as = str3c.length;                                                
   
   var got_char =0;

   for (var i=0;i<len_as; i++) {
       var temp_char=str3c.charAt(i);

	  // alert("Check i:"+ i + " tempchar: '" + temp_char + "'");

	
	   switch (temp_char)
           { 
		     case " " :  {
			 			 	    //SPACE
                     if ((i == 0) || (i == (len_as-1))) { 
					     break; }
				     if (i<(len_as-1)) {
					      var temp_char2=str3c.charAt(i+1);
							
				          if ((i>0) && (temp_char2 == " ")  ) { 
		   				     break; }  
			         	  if ((i>0) && (got_char ==0) ) { 
						     break; }  

				          }
							
				     cup_as = cup_as + " ";		 
			         break;
			       			} 
							
			default :   cup_as = cup_as + temp_char;
			            got_char =1;
				 
		   }
		   // end switch 
		   
	   
    } // end for
	
   var len_as = cup_as.length;
   num_spaces_real =0;
   for (var i=0;i<len_as; i++) {
       var temp_char=cup_as.charAt(i);
	   if (temp_char == " ") { num_spaces_real++; }
    }


  var values= new Array(26); 
   
  for (var i=0;i<26; i++) { 
      values[i]= ""; } 
   k=-1;
   
   for (var i=0;i<len_as; i++) {
       var temp_char=cup_as.charAt(i);
	   if (temp_char == "0") { values[k] = values[k] + temp_char; }
	     else {  k =k+1; values[k] = temp_char;  };
	    
	}


  test2="";
  for (var i=0;i<26; i++) { 
      test2 = test2 + ""+ values[i]; 
	  } 
	  
       

   var anvs= new Array(8); 
   var anvs_fl= new Array(8); 
   var lengths= new Array(8);
   var anv_series= new Array(8);

   anv_index=0;
   for (var i=0;i<8; i++) {
      anvs[i] = 0;
	  lengths[i]=0;
	  anv_series[i]= "";
	  anvs_fl[i]=0;
    };
   


   do_this=1;	
   for (var i=0;i<26; i++) {    
        if ((values[i]=="") && (do_this==1)) {
		   values[i]=" ";
		   do_this=0; }
   }
	  
   
   	
   var tempnum = 0;
   this_length = 0;
   lengths_index = 0;
   anv_series_index=0;
   anvs_fl_index=0;
   this_first=1;
   for (var i=0;i<26; i++) {
  
          if (values[i] == " ")  {
		        lengths_index++;		
				anv_index++; 
				anv_series_index++;
				this_length = 0;				

                anvs_fl[anvs_fl_index] = first_val -(-last_val);
				anvs_fl_index++;
				this_first=1;
			
				}
		  else if (values[i] != "") {
		  
		     anvs[anv_index] =  0 + anvs[anv_index] - (-values[i]);
			 anv_series[anv_series_index] = anv_series[anv_series_index] + "" +values[i];
			 if (this_first == 1) {
			    first_val = values[i];
				this_first =0;
                  }
			 	  
			 if (i!=25) {			   
			     if (values[i+1] == " ")  {		        
			        last_val = values[i];
				 }
			    }
			      
		  
		     this_length++;
 			 lengths[lengths_index] = this_length;
		    }
			
       }   
   
   
   do_this=1;	
   for (var i=25;i=0; i++) { 
           
        if ((values[i]==" ") && (do_this==1)) {
		   values[i]="";
		   do_this=0; }
   }
   
   
   test2="";test3="";test4="";test5="";
   for (var i=0;i<8; i++) {
            test2 = "" + test2 + anvs[i] + " - ";
            test3 = "" + test3 + anvs_fl[i] + " - ";
	        test4 = "" + test4 + lengths[i] + " - ";
	        test5 = "" + test5 + anv_series[i] + " - ";

	}

   
   

	// DONE getting the numbers. now arrange them and get 19 "facts"

  index1=1;
  fact2number = "";  fact3number = "";  fact4number = "";  fact5number = "";  fact6number = "";
  fact7number = "";  fact8number = "";  fact9number = "";  fact10number = "";  fact11number = "";
  fact12number = "";  fact13number = "";  fact14number = "";  fact15number = "";  fact16number = "";
  fact17number = "";  fact18number = "";  fact19number = "";  fact20number = "";  fact21number = "";
  fact22number = "";  fact23number = "";  fact24number = "";  fact25number = "";  fact26number = ""; 
  fact27number = "";  fact28number = "";  fact29number = "";  fact30number = "";  fact31number = ""; 
  fact32number = "";  fact33number = "";  fact34number = "";  fact35number = "";  fact36number = ""; 
  fact37number = "";  fact38number = "";  fact39number = "";  fact40number = "";  fact41number = "";
  fact42number = "";  fact43number = "";  fact44number = "";  fact45number = "";  fact46number = ""; 
  fact47number = "";  fact48number = "";  fact49number = "";  fact50number = "";  fact51number = ""; 
  fact52number = "";  fact53number = "";  fact54number = "";  fact55number = "";  fact56number = ""; 

  fact57number = "";  fact58number = "";  fact59number = "";  fact60number = "";  fact61number = "";
  fact62number = "";  fact63number = "";  fact64number = "";  fact65number = "";  fact66number = ""; 
  fact67number = "";  fact68number = "";  fact69number = "";  fact70number = "";  fact71number = ""; 
  fact72number = "";  fact73number = "";  fact74number = "";  fact75number = "";  fact76number = ""; 
  fact77number = "";  fact78number = "";  fact79number = "";  fact80number = "";  fact81number = "";
  fact82number = "";  fact83number = "";  fact84number = "";  fact85number = "";  fact86number = ""; 
  fact87number = "";  fact88number = "";  fact89number = "";  fact90number = "";  fact91number = ""; 
  fact92number = "";  fact93number = "";  fact94number = "";  fact95number = "";  fact96number = "";
  fact97number = "";  fact98number = "";  fact99number = "";  fact100number = "";  fact101number = ""; 
  fact102number = "";  fact103number = "";
  
   
  fact1number=num_arabic;
  fact1text = "Fact 1: 19 letters";
  index2=0;
  index5=0;
  index6=0;
  index7=0;
  index8=0;
  index9=0;
  index10=1;
  index94=0;
  tempf16_number = "";
  tempf19_number = "";
  k=1;
  k94=1;
  cum_sum_l=0;
  cum_sum_anvs=0;
  
  for (var i=0;i<=num_spaces_real; i++) {
  	   cum_sum_l = cum_sum_l + lengths[i];
	   cum_sum_anvs = cum_sum_anvs + anvs[i];
	   
       fact2number = fact2number + "" + index1 + " "+ lengths[i] + "  ";
       fact3number = fact3number + "" + index1 + " "+ anvs[i] + "  ";
       // fact33text="Sequence number, Word Size, Word ANV";
	   fact33number = fact33number + "" + index1 + " "+ lengths[i] + " " + anvs[i] + "  ";
       //fact34text="Sequence number, Word Size, Word ANV Series";
	   fact34number = fact34number + "" + index1 + " "+ lengths[i] + " " + anv_series[i] + "  ";   
  	   //fact41text="Sequence number, Word ANV, Word Size";
	   fact41number= fact41number + "" + index1 + " "+ anvs[i] + "  " + lengths[i] + "   ";
	   //fact42text="Sequence number, Word ANV, Word ANV Series";
	   fact42number= fact42number + "" + index1 + " "+ anvs[i] + "  " + anv_series[i] + "   ";	   
		   
       fact4number = fact4number + "" + index1 + " "+ anv_series[i] + "  ";
	   //fact49text="Sequence number, Word ANV Series, Word Size";
	   fact49number = fact49number + "" + index1 + " "+ anv_series[i] + " " + lengths[i] + "   ";
       //fact50text="Sequence number, Word ANV Series, Word ANV";
	   fact50number = fact50number + "" + index1 + " "+ anv_series[i] + " " + anvs[i] + "   ";
	   
       fact21number = fact21number + "" + lengths[i] + " " + index1 + "  ";
       fact22number = fact22number + "" + anvs[i] + " " + index1 + "  ";
       fact23number = fact23number + "" + anv_series[i] + " " + index1 + "  ";

  	
	   fact5number = fact5number + index1;
	   fact40number = fact40number + index1 + " " + lengths[i];
	   fact46number = fact46number + index1 + " " + anvs[i];
	   fact48number = fact48number + index1 + " " + anvs[i];
	   fact54number = fact54number + index1 + " " + anv_series[i];
	   fact61number = fact61number + index1 + " " + cum_sum_anvs;
	   fact63number = fact63number + index1 + " " + cum_sum_anvs;	   
	   fact69number = fact69number + "" + index1 + " " + cum_sum_l;
  	   fact71number = fact71number + "" + index1 + " " + cum_sum_l;
	   fact77number = fact77number + "" + index1 + " " + anvs_fl[i];
	   fact79number = fact79number + "" + index1 + " " + anvs_fl[i];
	   fact80number = fact80number + index1;
	   fact81number = fact81number + index1;
	   fact82number = fact82number + index1;
	   fact83number = fact83number + index1;
	   fact84number = fact84number + index1;
	   fact85number = fact85number + index1;
	   fact86number = fact86number + index1;
	   fact87number = fact87number + index1;
	   fact102number = fact102number + index1;
	   fact103number = fact103number + index1;
	   
	   
	   
	   
	   //fact5text="Sequence number, Local letter number, Individual ANV Value";
	   fact38number = fact38number + index1 + " " + lengths[i];
	   while (values[index2]!=" ") {
         fact5number = fact5number +  " "+ k + " "+ values[index2] + " ";			   
		 fact40number = fact40number + " "+ values[index2];	 
		 fact24number = fact24number +  " "+ k + " "+ values[index2] + " ";
		 fact20number = fact20number + " " + values[index2] + " " + k + " ";
		 fact46number = fact46number + " " + k;
		 fact48number = fact48number + " "+ values[index2];
		 fact54number = fact54number + " " + k;
		 fact61number = fact61number + " " + k;
		 fact63number = fact63number + " " + values[index2];
		 fact69number = fact69number + " " + k;
		 fact71number = fact71number + " " + values[index2];
		 fact77number = fact77number + " " + k;
		 fact79number = fact79number + " " + values[index2];
		 fact80number = fact80number + " " + k + " ";
 		 fact81number = fact81number + " " + k + " ";
 		 fact82number = fact82number + " " + k + " ";
		 fact83number = fact83number + " " + k + " ";
		 fact84number = fact84number + " " + k + " ";
		 fact85number = fact85number + " " + k + " ";
		 fact86number = fact86number + " " + k + " ";
		 fact87number = fact87number +  " " + k + " " + values[index2] + " ";
		 fact102number = fact102number + " " + values[index2] + " " + (index2-(-1));
		 fact103number = fact103number + " " + values[index2] + " " + k;
		 	
		 
		 
		 // Fact20text="Individual ANV Value, Letter number, Sequence number";
		 // fact40text="Sequence number, Word Size, Individual ANV Value";	 
		 // fact46text="Sequence number, Word ANV, Local letter number";
		 // fact48text="Sequence number, Word ANV, Individual ANV Value";
		 // fact54text="Sequence number, Word ANV Series, Local letter number";
         // fact61text="Sequence number, Cumulative ANV, Local letter number";		 
		 // fact63text="Sequence number, Cumulative ANV, Individual ANV Value";
		 // fact69text="Sequence number, Cumulative number letters, Local letter number";
         // fact71text="Sequence number, Cumulative number letters, Individual ANV Value";		 
		 // fact77text="Sequence number, First&Last ANV Values, Local letter number";
		 // fact79text="Sequence number, First&Last ANV Values, Individual ANV Value";

		 // fact80text="Sequence number, Local letter number, Word ANV";
         // fact81text="Sequence number, Local letter number, Word ANV Series";
         // fact82text="Sequence number, Local letter number, Word Size";
         // fact83text="Sequence number, Local letter number, Cumulative number letters";
         // fact84text="Sequence number, Local letter number, Cumulative ANV";
         // fact85text="Sequence number, Local letter number, First&Last ANV Values";
         // fact86text="Sequence number, Local letter number, Letter number";
         // fact87text="Sequence number, Local letter number, Individual ANV Value";
	     // fact102text="Sequence number, Individual ANV Value, Letter number";
         // fact103text="Sequence number, Individual ANV Value, Local letter number";

	   


		 
		 fact38number = fact38number + " " +k;	 
		 index2++;
		 k++;		 
 	    }
   	   if (values[index2] == " ") { k =1; index2++; }
   	   fact24number = fact24number + index1;
	   fact80number= fact80number + " " + anvs[i];
	   fact81number= fact81number + " " + anv_series[i];
	   fact82number= fact82number + " " + lengths[i];
	   fact83number= fact83number + " " + cum_sum_l;
	   fact84number= fact84number + " " + cum_sum_anvs;
	   fact85number= fact85number + " " + anvs_fl[i];
	   

	   
	   
	   fact5number = fact5number + "  ";
	   fact38number = fact38number + "  ";
	   fact40number = fact40number + "  ";
	   fact46number = fact46number + "  ";
	   fact48number = fact48number + "  ";
	   fact54number = fact54number + "  ";
	   fact61number = fact61number + "  ";
	   fact63number = fact63number + "  ";
	   fact69number = fact69number + "  ";
       fact71number = fact71number + "  ";
	   fact77number = fact77number + "  ";
	   fact79number = fact79number + "  ";
	   fact80number = fact80number + "  ";
	   fact81number = fact81number + "  ";
	   fact82number = fact82number + "  ";
	   fact83number = fact83number + "  ";
	   fact84number = fact84number + "  ";
	   fact85number = fact85number + "  ";
	   fact86number = fact86number + "  ";
	   fact87number = fact87number + "  ";
	   fact102number= fact102number+ "  ";
	   fact103number= fact103number+ "  ";
	   
	   
	   
	  // fact5text="Sequence number, Local letter number, Individual ANV Value";
      // fact38text="Sequence number, Word Size, Local letter number";	   
	
		
	   
		   

	   fact6number = fact6number + "" + index1 + " "+ anvs_fl[i] + "  ";
       //fact37text="Sequence number, Word Size, First&Last ANV Values";
	   fact37number = fact37number + "" + index1 + " "+ lengths[i] + " " + anvs_fl[i] + "  ";	   
	   //fact45text="Sequence number, Word ANV, First Last ANV Values";
	   fact45number = fact45number + "" + index1 + " "+ anvs[i] + " " + anvs_fl[i] + "  ";
	   //fact53text="Sequence number, Word ANV Series, First Last ANV Values";
	   fact53number = fact53number + "" + index1 + " "+ anv_series[i] + " " + anvs_fl[i] + "  ";
	   //fact72text="Sequence number, First&Last ANV Values, Word ANV";
	   fact72number = fact72number + "" + index1 + " "+ anvs_fl[i] + " " + anvs[i] + "  ";
	   //fact73text="Sequence number, First&Last ANV Values, Word ANV Series";
	   fact73number = fact73number + "" + index1 + " "+ anvs_fl[i] + " " + anv_series[i] + "  ";
       //fact74text="Sequence number, First&Last ANV Values, Word Size";
       fact74number = fact74number + "" + index1 + " "+ anvs_fl[i] + " " + lengths[i] + "  ";
	
		   
	    	   
			   
	   
       fact7number = fact7number + "" + index1 + " "+ (-(-anvs[i]) -(-lengths[i])) + "  ";
	   fact25number = fact25number + "" + (-(-anvs[i]) -(-lengths[i])) + " "+ index1 + "  ";
	    
       // Cummulative Letter numbers
	   fact8number = fact8number + "" + index1 + " "+ cum_sum_l + "  ";
       //fact36text="Sequence number, Word Size, Cummulative number letters";
	   fact36number = fact36number + "" + index1 + " " + lengths[i] + " "+ cum_sum_l + "  ";	   
	   //fact44text="Sequence number, Word ANV, Cumulative number letters";
	   fact44number = fact44number + "" + index1 + " " + anvs[i] + " "+ cum_sum_l + "  ";
	   // fact52text="Sequence number, Word ANV Series, Cumulative number letters";
	   fact52number = fact52number + "" + index1 + " " + anv_series[i] + " "+ cum_sum_l + "  ";
	   //fact64text="Sequence number, Cumulative number letters, Word ANV";
	   fact64number = fact64number + "" + index1 + " " + cum_sum_l + " "+ anvs[i] + "  ";
	   //fact65text="Sequence number, Cumulative number letters, Word ANV Series";
	   fact65number = fact65number + "" + index1 + " " + cum_sum_l + " "+ anv_series[i] + "  ";
       //fact66text="Sequence number, Cumulative number letters, Word Size";
	   fact66number = fact66number + "" + index1 + " " + cum_sum_l + " "+ lengths[i] + "  ";
	   //fact67text="Sequence number, Cumulative number letters, Cumulative ANV";
	   fact67number = fact67number + "" + index1 + " " + cum_sum_l + " "+ cum_sum_anvs + "  ";
       //fact68text="Sequence number, Cumulative number letters, First&Last ANV Values";
	   fact68number = fact68number + "" + index1 + " " + cum_sum_l + " "+ anvs_fl[i] + "  ";
       //fact75text="Sequence number, First&Last ANV Values, Cumulative number letters";  	   
	   fact75number = fact75number + "" + index1 + " " + anvs_fl[i] + " " + cum_sum_l + "  ";
	   //fact76text="Sequence number, First&Last ANV Values, Cumulative ANV";
	   fact76number = fact76number + "" + index1 + " " + anvs_fl[i] + " " + cum_sum_anvs + "  ";
	   
	   
		   
	   
		   
	   
	   
		   
	   
		   
	   

	   fact26number = fact26number + "" + cum_sum_l + " "+ index1 + "  ";
       //Cummulative ANV's
	   //fact9text="Sequence number, Cumulative ANV";
	   fact9number = fact9number + "" + index1 + " "+ cum_sum_anvs + "  ";
       //fact35text="Sequence number, Word Size, Cummulative ANV";
	   fact35number = fact35number + "" + index1 + " "+ lengths[i] + cum_sum_anvs + "  ";
	   //fact43text="Sequence number, Word ANV, Cumulative ANV";
	   fact43number = fact43number + "" + index1 + " " + anvs[i] + " "+ cum_sum_anvs + "  ";   
	   //fact51text="Sequence number, Word ANV Series, Cumulative ANV";
	   fact51number = fact51number + "" + index1 + " " + anv_series[i] + " "+ cum_sum_anvs + "  ";
       //fact56text="Sequence number, Cumulative ANV, Word ANV";	   
       fact56number = fact56number + "" + index1 + " " + cum_sum_anvs + "  " + anvs[i] + "  "; 
       //fact57text="Sequence number, Cumulative ANV, Word ANV Series";
	   fact57number = fact57number + "" + index1 + " " + cum_sum_anvs + "  " + anv_series[i] + "  ";		   
       //fact58text="Sequence number, Cumulative ANV, Word Size";
	   fact58number = fact58number + "" + index1 + " " + cum_sum_anvs + "  " + lengths[i] + "  ";
	   //fact59text="Sequence number, Cumulative ANV, Cumulative number letters";
	   fact59number = fact59number + "" + index1 + " " + cum_sum_anvs + "  " + cum_sum_l + "  ";
	   //fact60text="Sequence number, Cumulative ANV, First&Last ANV Values";
	   fact60number = fact60number + "" + index1 + " " + cum_sum_anvs + "  " + anvs_fl[i] + "  ";
		   
		   
	   
	   fact27number = fact27number + "" + cum_sum_anvs + " "+ index1 + "  ";
	   
  	   
	   while (values[index5]!=" ") {
		   fact11number = fact11number + " " + values[index5] + " " + (index6-(-1)) + " ";		 
		   index5++; index6++;		   
 	    }
   	   if (values[index5] == " ") {   fact11number = fact11number + index1; index5++; }
	   fact11number = fact11number + "  ";	 
    	   
	   
	   
       fact13number = fact13number + anvs[i] + " ";
	   fact14number = fact14number + lengths[i] + " " + anvs[i] + " " + anv_series[i] + " ";
   	   fact15number = fact15number + lengths[i] + " " + anv_series[i] + " " + anvs[i] + " ";
	   
	   
	      
	   while (values[index7]!=" ") {
		   fact12number = fact12number + values[index7] + " " + (index8-(-1)) + " ";
		   fact13number = fact13number + values[index7] + " " + (index8-(-1)) + " ";		   		 
		   index7++; index8++;		   
 	    }
   	   if (values[index7] == " ") {   fact12number = fact12number + anvs[i]; index7++; }
	   fact12number = fact12number + "  ";
	   fact13number = fact13number + "  ";
  	   fact14number = fact14number + "  ";
  	   fact15number = fact15number + "  ";
	   
	   

	   while (values[index9]!= " ") {     
	       tempf16_number = ""+ tempf16_number + index10 + "";
           index9++;index10++;
	   }
	   fact17number = fact17number + tempf16_number + (i-(-1)) + " ";
	   //fact17text="Letter number, Sequence number";
	   //fact39text="Sequence number, Word Size, Letter number";
	   fact39number = fact39number +  (i-(-1)) + lengths[i] + tempf16_number + " ";
	   //fact47text="Sequence number, Word ANV, Letter number";
	   fact47number = fact47number +  (i-(-1)) + " "+ anvs[i] + " " + tempf16_number + "   "; 
	   // fact55text="Sequence number, Word ANV Series, Letter number";
       fact55number = fact55number +  (i-(-1)) + " "+ anv_series[i] + " " + tempf16_number + "   ";
	   //fact62text="Sequence number, Cumulative ANV, Letter number";
	   fact62number = fact62number +  (i-(-1)) + " "+ cum_sum_anvs + " " + tempf16_number + "   ";
       //fact70text="Sequence number, Cumulative number letters, Letter number";
	   fact70number = fact70number +  (i-(-1)) + " "+ cum_sum_l + " " + tempf16_number + "   ";
	   //fact78text="Sequence number, First&Last ANV Values, Letter number";
	   fact78number = fact78number +  (i-(-1)) + " "+ anvs_fl[i] + " " + tempf16_number + "   ";
       fact86number= fact86number + " " + tempf16_number + "   "; // fact86 calculated partially above
	   
	   //fact88text="Sequence number, Letter number, Word ANV";
	   fact88number = fact88number +  (i-(-1)) + " "+ tempf16_number + " ";
	   
       //fact89text="Sequence number, Letter number, Word ANV Series";
	   fact89number = fact89number +  (i-(-1)) + " "+ tempf16_number + " " + anv_series[i];
       //fact90text="Sequence number, Letter number, Word Size";
	   fact90number = fact90number +  (i-(-1)) + " "+ tempf16_number + " " + lengths[i];
       //fact91text="Sequence number, Letter number, Cumulative number letters";
	   fact91number = fact91number +  (i-(-1)) + " "+ tempf16_number + " " + cum_sum_l ;
       //fact92text="Sequence number, Letter number, Cumulative ANV";
	   fact92number = fact92number +  (i-(-1)) + " "+ tempf16_number + " " + cum_sum_anvs;
       //fact93text="Sequence number, Letter number, First&Last ANV Values";
	   fact93number = fact93number +  (i-(-1)) + " "+ tempf16_number + " " + anvs_fl[i] ;
	  
		 
       //fact94text="Sequence number, Letter number, Local letter number";
       fact94number = fact94number +  (i-(-1)) + " "+ tempf16_number + " ";
	   //fact95text="Sequence number, Letter number, Individual ANV Value";
	   fact95number = fact95number +  (i-(-1)) + " "+ tempf16_number + " ";
		
	   fact96number = fact96number +  (i-(-1)) + " ";
	   fact97number = fact97number +  (i-(-1)) + " ";
	   fact98number = fact98number +  (i-(-1)) + " ";
	   fact99number = fact99number +  (i-(-1)) + " ";
	   fact100number = fact100number +  (i-(-1)) + " ";
	   fact101number = fact101number +  (i-(-1)) + " ";
	   fact102number = fact102number +  (i-(-1)) + " ";
	   fact103number = fact103number +  (i-(-1)) + " ";
	   
	   
	   while (values[index94]!=" ") {
         fact94number = fact94number + " " + k94;
		 fact95number = fact95number + " " + values[index94];
		 fact96number = fact96number + " " + values[index94];
		 fact97number = fact97number + " " + values[index94];
		 fact98number = fact98number + " " + values[index94];
		 fact99number = fact99number + " " + values[index94];
		 fact100number = fact100number + " " + values[index94];
		 fact101number = fact101number + " " + values[index94]; 
		 index94++;
		 k94++;		 
 	    }
   	   if (values[index94] == " ") { k94 =1; index94++; }
	   fact94number = fact94number + "  ";
	   fact95number = fact95number + "  ";
	   fact96number = fact96number + "  " + anvs[i];
	   fact97number = fact97number + "  " + anv_series[i];
	   fact98number = fact98number + "  " + lengths[i];
	   fact99number = fact99number + "  " + cum_sum_l;
	   fact100number = fact100number + "  " + cum_sum_anvs;
	   fact101number = fact101number + "  " + anvs_fl[i];
	   
	   
	   


	   //fact96text="Sequence number, Individual ANV Value, Word ANV";
       //fact97text="Sequence number, Individual ANV Value, Word ANV Series";
       //fact98text="Sequence number, Individual ANV Value, Word Size";
       //fact99text="Sequence number, Individual ANV Value, Cumulative number letters";
       //fact100text="Sequence number, Individual ANV Value, Cumulative ANV";
       //fact101text="Sequence number, Individual ANV Value, First&Last ANV Values";
       
	
   
	   

	
	   
	   
	   	   
		   

	   fact29number = fact29number + (i-(-1)) + tempf16_number + " ";
	   if (values[index9]==" ") {index9++;}
	   fact16number = fact16number - (-tempf16_number);
	   tempf16_number="";	   
	   
	   tempf19_number=tempf19_number + lengths[i];  
     
       index1++;
     }

   
  //t.test2.value = ; 
  //return;

  index3=0;	
  index4=1;
  for (var i=0;i<26; i++) {
    if ((values[i] != " ") && (values[i]!= "") ) {
	fact10number = fact10number + ""+ values[i] + (-(-index3)+1) + " " +  "  ";
	fact28number = fact28number + ""+ (-(-index3)+1) + values[i] + " " +  "  ";
	index3++;
	}

   } 

   fact18number = (num_spaces_real -(-1)) + ""+ num_arabic +  aanv1;
   fact19number= "1" + "19" + tempf19_number;
   
   fact29number = str3;
   fact30number = aanv1;
   fact31number = str3 + "  " + aanv1;
   fact32number = aanv1 + "  " + str3;
   
   
    fact1text="19 letters";
    fact2text="Sequence number, Word Size";
    fact3text="Sequence number, Word ANV";
	fact4text="Sequence number, Word ANV Series";
	fact5text="Sequence number, Local letter number, Individual ANV Value";
	fact6text="Sequence number, First&Last ANV values";
	fact7text="Sequence number, Word Size + Word ANV";
	fact8text="Sequence number, Cumulative number of letters";
	fact9text="Sequence number, Cumulative ANV";
	fact10text="Individual ANV, letter number";
	fact11text="Individual ANV, letter number, Sequence number";
	fact12text="Individual ANV, letter number, Word ANV";
	fact13text="Word ANV, Individual ANV, letter number";
	fact14text="Word Size, Word ANV, Word ANV Series";
	fact15text="Word Size, Word ANV Series, Word ANV";
	fact16text="Conjoined letter numbers, added";
	fact17text="Letter number, Sequence number";
	fact18text="Num Words, Num letters, Total ANV";
	fact19text="1 sentence, 19 letters, lengths of words";
    fact20text="Individual ANV, Local letter number, Word number";
	fact21text="Word Size, Sequence number";
	fact22text="Word ANV, Sequence number";
	fact23text="Word ANV Series, Sequence number";
	fact24text="Local letter number, Individual ANV Value, Sequence number";
	fact25text="Word Size + ANV, Sequence number";
	fact26text="Cumulative number of letters, Sequence number";
	fact27text="Cumulative ANV, Sequence number";
	fact28text="Letter number, Individual ANV";
	fact29text="ANV Sequence";
	fact30text="ANV Total";
	fact31text="ANVSeq, ANVAdd";
	fact32text="ANVAdd, ANVSeq";
	
// TO DO: from 38
	
	fact33text="Sequence number, Word Size, Word ANV";
    fact34text="Sequence number, Word Size, Word ANV Series";
    fact35text="Sequence number, Word Size, Cumulative ANV";
    fact36text="Sequence number, Word Size, Cumulative number letters";
    fact37text="Sequence number, Word Size, First&Last ANV Values";
    fact38text="Sequence number, Word Size, Local letter number";
    fact39text="Sequence number, Word Size, Letter number";
    fact40text="Sequence number, Word Size, Individual ANV Value";
    fact41text="Sequence number, Word ANV, Word Size";
    fact42text="Sequence number, Word ANV, Word ANV Series";
    fact43text="Sequence number, Word ANV, Cumulative ANV";
    fact44text="Sequence number, Word ANV, Cumulative number letters";
    fact45text="Sequence number, Word ANV, First&Last ANV Values";
    fact46text="Sequence number, Word ANV, Local letter number";
    fact47text="Sequence number, Word ANV, Letter number";
    fact48text="Sequence number, Word ANV, Individual ANV Value";
    fact49text="Sequence number, Word ANV Series, Word Size";
    fact50text="Sequence number, Word ANV Series, Word ANV";
    fact51text="Sequence number, Word ANV Series, Cumulative ANV";
    fact52text="Sequence number, Word ANV Series, Cumulative number letters";
    fact53text="Sequence number, Word ANV Series, First&Last ANV Values";
    fact54text="Sequence number, Word ANV Series, Local letter number";
    fact55text="Sequence number, Word ANV Series, Letter number";

	fact56text="Sequence number, Cumulative ANV, Word ANV";
    fact57text="Sequence number, Cumulative ANV, Word ANV Series";
    fact58text="Sequence number, Cumulative ANV, Word Size";
    fact59text="Sequence number, Cumulative ANV, Cumulative number letters";
    fact60text="Sequence number, Cumulative ANV, First&Last ANV Values";
    fact61text="Sequence number, Cumulative ANV, Local letter number";
    fact62text="Sequence number, Cumulative ANV, Letter number";
    fact63text="Sequence number, Cumulative ANV, Individual ANV Value";

	
    fact64text="Sequence number, Cumulative number letters, Word ANV";
    fact65text="Sequence number, Cumulative number letters, Word ANV Series";
    fact66text="Sequence number, Cumulative number letters, Word Size";
    fact67text="Sequence number, Cumulative number letters, Cumulative ANV";
    fact68text="Sequence number, Cumulative number letters, First&Last ANV Values";
    fact69text="Sequence number, Cumulative number letters, Local letter number";
    fact70text="Sequence number, Cumulative number letters, Letter number";
    fact71text="Sequence number, Cumulative number letters, Individual ANV Value";

    fact72text="Sequence number, First&Last ANV Values, Word ANV";
    fact73text="Sequence number, First&Last ANV Values, Word ANV Series";
    fact74text="Sequence number, First&Last ANV Values, Word Size";
    fact75text="Sequence number, First&Last ANV Values, Cumulative number letters";
    fact76text="Sequence number, First&Last ANV Values, Cumulative ANV";
    fact77text="Sequence number, First&Last ANV Values, Local letter number";
    fact78text="Sequence number, First&Last ANV Values, Letter number";
    fact79text="Sequence number, First&Last ANV Values, Individual ANV Value";

    fact80text="Sequence number, Local letter number, Word ANV";
    fact81text="Sequence number, Local letter number, Word ANV Series";
    fact82text="Sequence number, Local letter number, Word Size";
    fact83text="Sequence number, Local letter number, Cumulative number letters";
    fact84text="Sequence number, Local letter number, Cumulative ANV";
    fact85text="Sequence number, Local letter number, First&Last ANV Values";
    fact86text="Sequence number, Local letter number, Letter number";
    fact87text="Sequence number, Local letter number, Individual ANV Value";

    fact88text="Sequence number, Letter number, Word ANV";
    fact89text="Sequence number, Letter number, Word ANV Series";
    fact90text="Sequence number, Letter number, Word Size";
    fact91text="Sequence number, Letter number, Cumulative number letters";
    fact92text="Sequence number, Letter number, Cumulative ANV";
    fact93text="Sequence number, Letter number, First&Last ANV Values";
    fact94text="Sequence number, Letter number, Local letter number";
    fact95text="Sequence number, Letter number, Individual ANV Value";

    fact96text="Sequence number, Individual ANV Value, Word ANV";
    fact97text="Sequence number, Individual ANV Value, Word ANV Series";
    fact98text="Sequence number, Individual ANV Value, Word Size";
    fact99text="Sequence number, Individual ANV Value, Cumulative number letters";
    fact100text="Sequence number, Individual ANV Value, Cumulative ANV";
    fact101text="Sequence number, Individual ANV Value, First&Last ANV Values";
    fact102text="Sequence number, Individual ANV Value, Letter number";
    fact103text="Sequence number, Individual ANV Value, Local letter number";


	// 1,2,3,4
// Word Size, Word ANV Series, Cumulative ANV, Cumulative number letters;
// 5,6,7,8
// First&Last ANV Values, Local letter number, Letter number, Individual ANV Value




// ******  These have not been calculated: *****************

// 1,2
fact104text="Sequence number, Word Size, Word ANV Series, Cumulative ANV";
fact105text="Sequence number, Word Size, Word ANV Series, Cumulative number letters";
fact106text="Sequence number, Word Size, Word ANV Series, First&Last ANV Values";
fact107text="Sequence number, Word Size, Word ANV Series, Local letter number";
fact108text="Sequence number, Word Size, Word ANV Series, Letter number";
fact109text="Sequence number, Word Size, Word ANV Series, Individual ANV Value";

//2,1
fact110text="Sequence number, Word ANV Series, Word Size, Cumulative ANV";
fact111text="Sequence number, Word ANV Series, Word Size, Cumulative number letters";
fact112text="Sequence number, Word ANV Series, Word Size, First&Last ANV Values";
fact113text="Sequence number, Word ANV Series, Word Size, Local letter number";
fact114text="Sequence number, Word ANV Series, Word Size, Letter number";
fact115text="Sequence number, Word ANV Series, Word Size, Individual ANV Value";


//1,3
fact116text="Sequence number, Word Size, Cumulative ANV, Word ANV Series";
fact117text="Sequence number, Word Size, Cumulative ANV, Cumulative number letters";
fact118text="Sequence number, Word Size, Cumulative ANV, First&Last ANV Values";
fact119text="Sequence number, Word Size, Cumulative ANV, Local letter number";
fact120text="Sequence number, Word Size, Cumulative ANV, Letter number";
fact121text="Sequence number, Word Size, Cumulative ANV, Individual ANV Value";

//3,1
fact122text="Sequence number, Cumulative ANV, Word Size, Word ANV Series";
fact123text="Sequence number, Cumulative ANV, Word Size, Cumulative number letters";
fact124text="Sequence number, Cumulative ANV, Word Size, First&Last ANV Values";
fact125text="Sequence number, Cumulative ANV, Word Size, Local letter number";
fact126text="Sequence number, Cumulative ANV, Word Size, Letter number";
fact127text="Sequence number, Cumulative ANV, Word Size, Individual ANV Value";

// 1,4
fact128text="Sequence number, Word Size, Cumulative number letters, Word ANV Series";
fact129text="Sequence number, Word Size, Cumulative number letters, Cumulative ANV";
fact130text="Sequence number, Word Size, Cumulative number letters, First&Last ANV Values";
fact131text="Sequence number, Word Size, Cumulative number letters, Local letter number";
fact132text="Sequence number, Word Size, Cumulative number letters, Letter number";
fact133text="Sequence number, Word Size, Cumulative number letters, Individual ANV Value";

// 4,1
fact134text="Sequence number, Cumulative number letters, Word Size, Word ANV Series";
fact135text="Sequence number, Cumulative number letters, Word Size, Cumulative ANV";
fact136text="Sequence number, Cumulative number letters, Word Size, First&Last ANV Values";
fact137text="Sequence number, Cumulative number letters, Word Size, Local letter number";
fact138text="Sequence number, Cumulative number letters, Word Size, Letter number";
fact139text="Sequence number, Cumulative number letters, Word Size, Individual ANV Value";



	
	
	
	
	
	fact1result  = ldiv(fact1number,19, ("Fact 1 : "  + fact1text  + " - "));
	fact2result  = ldiv(fact2number,19, ("Fact 2 : "  + fact2text  + " - "));
	fact3result  = ldiv(fact3number,19, ("Fact 3 : "  + fact3text  + " - "));
	fact4result  = ldiv(fact4number,19, ("Fact 4 : "  + fact4text  + " - "));
	fact5result  = ldiv(fact5number,19, ("Fact 5 : "  + fact5text  + " - "));
	fact6result  = ldiv(fact6number,19, ("Fact 6 : "  + fact6text  + " - "));
	fact7result  = ldiv(fact7number,19, ("Fact 7 : "  + fact7text  + " - "));
	fact8result  = ldiv(fact8number,19, ("Fact 8 : "  + fact8text  + " - "));
	fact9result  = ldiv(fact9number,19, ("Fact 9 : "  + fact9text  + " - "));
	fact10result = ldiv(fact10number,19,("Fact 10 : " + fact10text + " - "));
	fact11result = ldiv(fact11number,19,("Fact 11 : " + fact11text + " - "));
	fact12result = ldiv(fact12number,19,("Fact 12 : " + fact12text + " - "));
	fact13result = ldiv(fact13number,19,("Fact 13 : " + fact13text + " - "));
	fact14result = ldiv(fact14number,19,("Fact 14 : " + fact14text + " - "));
	fact15result = ldiv(fact15number,19,("Fact 15 : " + fact15text + " - "));
	fact16result = ldiv(fact16number,19,("Fact 16 : " + fact16text + " - "));
	fact17result = ldiv(fact17number,19,("Fact 17 : " + fact17text + " - "));
	fact18result = ldiv(fact18number,19,("Fact 18 : " + fact18text + " - "));
	fact19result = ldiv(fact19number,19,("Fact 19 : " + fact19text + " - "));
	fact20result = ldiv(fact20number,19,("Fact 20 : " + fact20text + " - "));
	fact21result = ldiv(fact21number,19,("Fact 21 : " + fact21text + " - "));
	fact22result = ldiv(fact22number,19,("Fact 22 : " + fact22text + " - "));
	fact23result = ldiv(fact23number,19,("Fact 23 : " + fact23text + " - "));
	fact24result = ldiv(fact24number,19,("Fact 24 : " + fact24text + " - "));
	fact25result = ldiv(fact25number,19,("Fact 25 : " + fact25text + " - "));
	fact26result = ldiv(fact26number,19,("Fact 26 : " + fact26text + " - "));
	fact27result = ldiv(fact27number,19,("Fact 27 : " + fact27text + " - "));
	fact28result = ldiv(fact28number,19,("Fact 28 : " + fact28text + " - "));
	fact29result = ldiv(fact29number,19,("Fact 29 : " + fact29text + " - "));
	fact30result = ldiv(fact30number,19,("Fact 30 : " + fact30text + " - "));
	fact31result = ldiv(fact31number,19,("Fact 31 : " + fact31text + " - "));
	fact32result = ldiv(fact32number,19,("Fact 32 : " + fact32text + " - "));
	
	fact33result = ldiv(fact33number,19,("Fact 33 : " + fact33text + " - "));
	fact34result = ldiv(fact34number,19,("Fact 34 : " + fact34text + " - "));
	fact35result = ldiv(fact35number,19,("Fact 35 : " + fact35text + " - "));
	fact36result = ldiv(fact36number,19,("Fact 36 : " + fact36text + " - "));
	fact37result = ldiv(fact37number,19,("Fact 37 : " + fact37text + " - "));
	fact38result = ldiv(fact38number,19,("Fact 38 : " + fact38text + " - "));
	fact39result = ldiv(fact39number,19,("Fact 39 : " + fact39text + " - "));
	fact40result = ldiv(fact40number,19,("Fact 40 : " + fact40text + " - "));
	fact41result = ldiv(fact41number,19,("Fact 41 : " + fact41text + " - "));
	fact42result = ldiv(fact42number,19,("Fact 42 : " + fact42text + " - "));
	fact43result = ldiv(fact43number,19,("Fact 43 : " + fact43text + " - "));
	fact44result = ldiv(fact44number,19,("Fact 44 : " + fact44text + " - "));
	fact45result = ldiv(fact45number,19,("Fact 45 : " + fact45text + " - "));
	fact46result = ldiv(fact46number,19,("Fact 46 : " + fact46text + " - "));
	fact47result = ldiv(fact47number,19,("Fact 47 : " + fact47text + " - "));
	fact48result = ldiv(fact48number,19,("Fact 48 : " + fact48text + " - "));
	fact49result = ldiv(fact49number,19,("Fact 49 : " + fact49text + " - "));
	fact50result = ldiv(fact50number,19,("Fact 50 : " + fact50text + " - "));
	fact51result = ldiv(fact51number,19,("Fact 51 : " + fact51text + " - "));
	fact52result = ldiv(fact52number,19,("Fact 52 : " + fact52text + " - "));
	fact53result = ldiv(fact53number,19,("Fact 53 : " + fact53text + " - "));
	fact54result = ldiv(fact54number,19,("Fact 54 : " + fact54text + " - "));
	fact55result = ldiv(fact55number,19,("Fact 55 : " + fact55text + " - "));

    fact56result = ldiv(fact56number,19,("Fact 56 : " + fact56text + " - "));
	fact57result = ldiv(fact57number,19,("Fact 57 : " + fact57text + " - "));
	fact58result = ldiv(fact58number,19,("Fact 58 : " + fact58text + " - "));
	fact59result = ldiv(fact59number,19,("Fact 59 : " + fact59text + " - "));
	fact60result = ldiv(fact60number,19,("Fact 60 : " + fact60text + " - "));
	fact61result = ldiv(fact61number,19,("Fact 61 : " + fact61text + " - "));
	fact62result = ldiv(fact62number,19,("Fact 62 : " + fact62text + " - "));
	fact63result = ldiv(fact63number,19,("Fact 63 : " + fact63text + " - "));
	fact64result = ldiv(fact64number,19,("Fact 64 : " + fact64text + " - "));
	fact65result = ldiv(fact65number,19,("Fact 65 : " + fact65text + " - "));
	fact66result = ldiv(fact66number,19,("Fact 66 : " + fact66text + " - "));
	fact67result = ldiv(fact67number,19,("Fact 67 : " + fact67text + " - "));
	fact68result = ldiv(fact68number,19,("Fact 68 : " + fact68text + " - "));
	fact69result = ldiv(fact69number,19,("Fact 69 : " + fact69text + " - "));
	fact70result = ldiv(fact70number,19,("Fact 70 : " + fact70text + " - "));
	fact71result = ldiv(fact71number,19,("Fact 71 : " + fact71text + " - "));
	fact72result = ldiv(fact72number,19,("Fact 72 : " + fact72text + " - "));
	fact73result = ldiv(fact73number,19,("Fact 73 : " + fact73text + " - "));
	fact74result = ldiv(fact74number,19,("Fact 74 : " + fact74text + " - "));
	fact75result = ldiv(fact75number,19,("Fact 75 : " + fact75text + " - "));
	fact76result = ldiv(fact76number,19,("Fact 76 : " + fact76text + " - "));
	fact77result = ldiv(fact77number,19,("Fact 77 : " + fact77text + " - "));
	fact78result = ldiv(fact78number,19,("Fact 78 : " + fact78text + " - "));
	fact79result = ldiv(fact79number,19,("Fact 79 : " + fact79text + " - "));
    fact80result = ldiv(fact80number,19,("Fact 80 : " + fact80text + " - "));
	fact81result = ldiv(fact81number,19,("Fact 81 : " + fact81text + " - "));
	fact82result = ldiv(fact82number,19,("Fact 82 : " + fact82text + " - "));
	fact83result = ldiv(fact83number,19,("Fact 83 : " + fact83text + " - "));
	fact84result = ldiv(fact84number,19,("Fact 84 : " + fact84text + " - "));
	fact85result = ldiv(fact85number,19,("Fact 85 : " + fact85text + " - "));
	fact86result = ldiv(fact86number,19,("Fact 86 : " + fact86text + " - "));
	fact87result = ldiv(fact87number,19,("Fact 87 : " + fact87text + " - "));
	fact88result = ldiv(fact88number,19,("Fact 88 : " + fact88text + " - "));
	fact89result = ldiv(fact89number,19,("Fact 89 : " + fact89text + " - "));
	fact90result = ldiv(fact90number,19,("Fact 90 : " + fact90text + " - "));
	fact91result = ldiv(fact91number,19,("Fact 91 : " + fact91text + " - "));
	fact92result = ldiv(fact92number,19,("Fact 92 : " + fact92text + " - "));
	fact93result = ldiv(fact93number,19,("Fact 93 : " + fact93text + " - "));
	fact94result = ldiv(fact94number,19,("Fact 94 : " + fact94text + " - "));
	fact95result = ldiv(fact95number,19,("Fact 95 : " + fact95text + " - "));
	fact96result = ldiv(fact96number,19,("Fact 96 : " + fact96text + " - "));
	fact97result = ldiv(fact97number,19,("Fact 97 : " + fact97text + " - "));
	fact98result = ldiv(fact98number,19,("Fact 98 : " + fact98text + " - "));
	fact99result = ldiv(fact99number,19,("Fact 99 : " + fact99text + " - "));
    fact100result = ldiv(fact100number,19,("Fact 100 : " + fact100text + " - "));
	fact101result = ldiv(fact101number,19,("Fact 101 : " + fact101text + " - "));
	fact102result = ldiv(fact102number,19,("Fact 102 : " + fact102text + " - "));
	fact103result = ldiv(fact103number,19,("Fact 103 : " + fact103text + " - "));



	
	


	fr="";
	num_facts_found=0;
    if (fact1result != "") { num_facts_found++; fr =  fr + fact1result+ "\n";}
	if (fact2result != "") { num_facts_found++; fr =  fr + fact2result+ "\n";}
	if (fact3result != "") { num_facts_found++; fr =  fr + fact3result+ "\n";}
	if (fact4result != "") { num_facts_found++; fr =  fr + fact4result+ "\n";}
	if (fact5result != "") { num_facts_found++; fr =  fr + fact5result+ "\n";}
	if (fact6result != "") { num_facts_found++; fr =  fr + fact6result+ "\n";}
	if (fact7result != "") { num_facts_found++; fr =  fr + fact7result+ "\n";}
	if (fact8result != "") { num_facts_found++; fr =  fr + fact8result+ "\n";}
	if (fact9result != "") { num_facts_found++; fr =  fr + fact9result+ "\n";}
	if (fact10result != "") { num_facts_found++; fr =  fr + fact10result+ "\n";}
	if (fact11result != "") { num_facts_found++; fr =  fr + fact11result+ "\n";}
	if (fact12result != "") { num_facts_found++; fr =  fr + fact12result+ "\n";}
	if (fact13result != "") { num_facts_found++; fr =  fr + fact13result+ "\n";}
	if (fact14result != "") { num_facts_found++; fr =  fr + fact14result+ "\n";}
	if (fact15result != "") { num_facts_found++; fr =  fr + fact15result+ "\n";}
	if (fact16result != "") { num_facts_found++; fr =  fr + fact16result+ "\n";}
	if (fact17result != "") { num_facts_found++; fr =  fr + fact17result+ "\n";}
	if (fact18result != "") { num_facts_found++; fr =  fr + fact18result+ "\n";}
	if (fact19result != "") { num_facts_found++; fr =  fr + fact19result+ "\n";}
	if (fact21result != "") { num_facts_found++; fr =  fr + fact20result+ "\n";}
	if (fact21result != "") { num_facts_found++; fr =  fr + fact21result+ "\n";}
	if (fact22result != "") { num_facts_found++; fr =  fr + fact22result+ "\n";}
	if (fact23result != "") { num_facts_found++; fr =  fr + fact23result+ "\n";}
	if (fact24result != "") { num_facts_found++; fr =  fr + fact24result+ "\n";}
	if (fact25result != "") { num_facts_found++; fr =  fr + fact25result+ "\n";}
	if (fact26result != "") { num_facts_found++; fr =  fr + fact26result+ "\n";}
	if (fact27result != "") { num_facts_found++; fr =  fr + fact27result+ "\n";}
	if (fact28result != "") { num_facts_found++; fr =  fr + fact28result+ "\n";}
	if (fact29result != "") { num_facts_found++; fr =  fr + fact29result+ "\n";}
	if (fact30result != "") { num_facts_found++; fr =  fr + fact30result+ "\n";}
	if (fact31result != "") { num_facts_found++; fr =  fr + fact31result+ "\n";}
	if (fact32result != "") { num_facts_found++; fr =  fr + fact32result+ "\n";}
	if (fact33result != "") { num_facts_found++; fr =  fr + fact33result+ "\n";}
	if (fact34result != "") { num_facts_found++; fr =  fr + fact34result+ "\n";}
	if (fact35result != "") { num_facts_found++; fr =  fr + fact35result+ "\n";}
	if (fact36result != "") { num_facts_found++; fr =  fr + fact36result+ "\n";}
	if (fact37result != "") { num_facts_found++; fr =  fr + fact37result+ "\n";}
	if (fact38result != "") { num_facts_found++; fr =  fr + fact38result+ "\n";}
	if (fact39result != "") { num_facts_found++; fr =  fr + fact39result+ "\n";}
	if (fact40result != "") { num_facts_found++; fr =  fr + fact40result+ "\n";}
	if (fact41result != "") { num_facts_found++; fr =  fr + fact41result+ "\n";}
	if (fact42result != "") { num_facts_found++; fr =  fr + fact42result+ "\n";}
	if (fact43result != "") { num_facts_found++; fr =  fr + fact43result+ "\n";}
	if (fact44result != "") { num_facts_found++; fr =  fr + fact44result+ "\n";}
	if (fact45result != "") { num_facts_found++; fr =  fr + fact45result+ "\n";}
	if (fact46result != "") { num_facts_found++; fr =  fr + fact46result+ "\n";}
	if (fact47result != "") { num_facts_found++; fr =  fr + fact47result+ "\n";}
	if (fact48result != "") { num_facts_found++; fr =  fr + fact48result+ "\n";}
	if (fact49result != "") { num_facts_found++; fr =  fr + fact49result+ "\n";}
	if (fact50result != "") { num_facts_found++; fr =  fr + fact50result+ "\n";}
	if (fact51result != "") { num_facts_found++; fr =  fr + fact51result+ "\n";}
	if (fact52result != "") { num_facts_found++; fr =  fr + fact52result+ "\n";}
	if (fact53result != "") { num_facts_found++; fr =  fr + fact53result+ "\n";}
	if (fact54result != "") { num_facts_found++; fr =  fr + fact54result+ "\n";}
	if (fact55result != "") { num_facts_found++; fr =  fr + fact55result+ "\n";}

	if (fact56result != "") { num_facts_found++; fr =  fr + fact56result+ "\n";}
	if (fact57result != "") { num_facts_found++; fr =  fr + fact57result+ "\n";}
	if (fact58result != "") { num_facts_found++; fr =  fr + fact58result+ "\n";}
	if (fact59result != "") { num_facts_found++; fr =  fr + fact59result+ "\n";}
	if (fact60result != "") { num_facts_found++; fr =  fr + fact60result+ "\n";}
	if (fact61result != "") { num_facts_found++; fr =  fr + fact61result+ "\n";}
	if (fact62result != "") { num_facts_found++; fr =  fr + fact62result+ "\n";}
	if (fact63result != "") { num_facts_found++; fr =  fr + fact63result+ "\n";}
	if (fact64result != "") { num_facts_found++; fr =  fr + fact64result+ "\n";}
	if (fact65result != "") { num_facts_found++; fr =  fr + fact65result+ "\n";}
	if (fact66result != "") { num_facts_found++; fr =  fr + fact66result+ "\n";}
	if (fact67result != "") { num_facts_found++; fr =  fr + fact67result+ "\n";}
	if (fact68result != "") { num_facts_found++; fr =  fr + fact68result+ "\n";}
	if (fact69result != "") { num_facts_found++; fr =  fr + fact69result+ "\n";}
	if (fact70result != "") { num_facts_found++; fr =  fr + fact70result+ "\n";}
	if (fact71result != "") { num_facts_found++; fr =  fr + fact71result+ "\n";}
	if (fact72result != "") { num_facts_found++; fr =  fr + fact72result+ "\n";}
	if (fact73result != "") { num_facts_found++; fr =  fr + fact73result+ "\n";}
	if (fact74result != "") { num_facts_found++; fr =  fr + fact74result+ "\n";}
	if (fact75result != "") { num_facts_found++; fr =  fr + fact75result+ "\n";}
	if (fact76result != "") { num_facts_found++; fr =  fr + fact76result+ "\n";}
	if (fact77result != "") { num_facts_found++; fr =  fr + fact77result+ "\n";}
	if (fact78result != "") { num_facts_found++; fr =  fr + fact78result+ "\n";}
	if (fact79result != "") { num_facts_found++; fr =  fr + fact79result+ "\n";}
	if (fact80result != "") { num_facts_found++; fr =  fr + fact80result+ "\n";}
	if (fact81result != "") { num_facts_found++; fr =  fr + fact81result+ "\n";}
	if (fact82result != "") { num_facts_found++; fr =  fr + fact82result+ "\n";}
	if (fact83result != "") { num_facts_found++; fr =  fr + fact83result+ "\n";}
	if (fact84result != "") { num_facts_found++; fr =  fr + fact84result+ "\n";}
	if (fact85result != "") { num_facts_found++; fr =  fr + fact85result+ "\n";}
	if (fact86result != "") { num_facts_found++; fr =  fr + fact86result+ "\n";}
	if (fact87result != "") { num_facts_found++; fr =  fr + fact87result+ "\n";}
	if (fact88result != "") { num_facts_found++; fr =  fr + fact88result+ "\n";}
	if (fact89result != "") { num_facts_found++; fr =  fr + fact89result+ "\n";}
	if (fact90result != "") { num_facts_found++; fr =  fr + fact90result+ "\n";}
	if (fact91result != "") { num_facts_found++; fr =  fr + fact91result+ "\n";}
	if (fact92result != "") { num_facts_found++; fr =  fr + fact92result+ "\n";}
	if (fact93result != "") { num_facts_found++; fr =  fr + fact93result+ "\n";}
	if (fact94result != "") { num_facts_found++; fr =  fr + fact94result+ "\n";}
	if (fact95result != "") { num_facts_found++; fr =  fr + fact95result+ "\n";}
	if (fact96result != "") { num_facts_found++; fr =  fr + fact96result+ "\n";}
	if (fact97result != "") { num_facts_found++; fr =  fr + fact97result+ "\n";}
	if (fact98result != "") { num_facts_found++; fr =  fr + fact98result+ "\n";}
	if (fact99result != "") { num_facts_found++; fr =  fr + fact99result+ "\n";}
	if (fact100result != "") { num_facts_found++; fr =  fr + fact100result+ "\n";}
	if (fact101result != "") { num_facts_found++; fr =  fr + fact101result+ "\n";}
	if (fact102result != "") { num_facts_found++; fr =  fr + fact102result+ "\n";}
	if (fact103result != "") { num_facts_found++; fr =  fr + fact103result+ "\n";}

	
	
	

	fr = "Number of facts found: " + num_facts_found + "\n" + fr;
	
	

		
if (do_verse_test == 1) {	 
	t.arabictest.value = fr;	
///   IF VERSE TEST ON
}



	
} // if arabic < 50   
	 
} // end if arabic is valid



if (valid_english ==1) {
// start long division on IANV, which is
bynum=19;
t.show19by.value = ldiv(str1,19,"IANVSeq: ");
t.timesianv.value = m19;
t.ifyes.value = ldiv(anv1,19,"IANVAdd: ");
	   
// LONG division for 2nd number: PNV 
t.show19by2.value = ldiv(str2,19,"PNVSeq: ");
t.timespnv.value = m19;
t.ifyes2.value = ldiv(pnv1,19,"PNVAdd: ");
// End long divisions   

if (anv1 == anv1n) { t.divi19.value = ""; }
else {
ldiv(anv1n,19,"IANVAdd(n): ");
t.divi19.value = divi19longanswer;
}

remain = anv1 % 99;
if (remain == 0) { result = anv1 / 99;
t.ifyes99.value = "IANVadd: " + anv1 + " = " + "99 x " + result;  }
else { t.ifyes99.value = "" ;  }

if (anv1 == anv1n) { t.divi99.value = ""; }
else {
remain = anv1n % 99; 
if (remain == 0) { result = anv1n / 99;
t.divi99.value = "IANVadd(n): " + anv1n + " = " + "99 x " + result;  }
else { t.divi99.value =""; }
}

remain = anv1 % 66; 
if (remain == 0) { result = anv1 / 66;
t.ifyes66.value = "IANVadd: " + anv1 + " = " + "66 x " + result;  }
else { t.ifyes66.value = "" ;  }

if (anv1 == anv1n) { t.divi66.value = ""; }
else {
remain = anv1n % 66; 
if (remain == 0) { result = anv1n / 66;
t.divi66.value = "IANVadd(n): " + anv1n + " = " + "66 x " + result;  }
else {  t.divi66.value =""; }
}

remain = anv1 % 16; 
if (remain == 0) { result = anv1 / 16;
t.ifyes16.value = "IANVadd: " + anv1 + " = " + "16 x " + result;  }
else { t.ifyes16.value = "" ;  }

if (anv1 == anv1n) { t.divi16.value = ""; }
else {
remain = anv1n % 16; 
if (remain == 0) { result = anv1n / 16;
t.divi16.value = "IANVadd(n): " + anv1n + " = " + "16 x " + result;  }
else {  t.divi16.value =""; }
}

remain = anv1 % 29; 
if (remain == 0) { result = anv1 / 29;
t.ifyes29.value = "IANVadd: " + anv1 + " = " + "29 x " + result;  }
else { t.ifyes29.value = "" ;  }

if (anv1 == anv1n) { t.divi29.value = ""; }
else {
remain = anv1n % 29;
if (remain == 0) { result = anv1n / 29;
t.divi29.value = "IANVadd(n): " + anv1n + " = " + "29 x " + result;  }
else {  t.divi29.value =""; }
}

remain = anv1 % 92;
if (remain == 0) { result = anv1 / 92;
t.ifyes92.value = "IANVadd: " + anv1 + " = " + "92 x " + result;  }
else { t.ifyes92.value = "" ;  }

if (anv1 == anv1n) { t.divi92.value = ""; }
else {
remain = anv1n % 92; 
if (remain == 0) { result = anv1n / 92;
t.divi92.value = "IANVadd(n): " + anv1n + " = " + "92 x " + result;  }
else {  t.divi92.value =""; }
}

remain = anv1 % 3; 
if (remain == 0) { result = anv1 / 3;
t.ifyes3.value = "IANVadd: " + anv1 + " = " + "3 x " + result;  }
else { t.ifyes3.value = "" ;  }

if (anv1 == anv1n) { t.divi3.value = ""; }
else {
remain = anv1n % 3;
if (remain == 0) { result = anv1n / 3;
t.divi3.value = "IANVadd(n): " + anv1n + " = " + "3 x " + result;  }
else {  t.divi3.value =""; }
}

remain = anv1 % 7; 
if (remain == 0) { result = anv1 / 7;
t.ifyes7.value = "IANVadd: " + anv1 + " = " + "7 x " + result;  }
else { t.ifyes7.value = "" ;  }

if (anv1 == anv1n) { t.divi7.value = ""; }
else {
remain = anv1n % 7; 
if (remain == 0) { result = anv1n / 7;
t.divi7.value = "IANVadd(n): " + anv1n + " = " + "7 x " + result;  }
else {  t.divi7.value =""; }
}

remain = anv1 % 13; 
if (remain == 0) { result = anv1 / 13;
t.ifyes13.value = "IANVadd: " + anv1 + " = " + "13 x " + result;  }
else { t.ifyes13.value = "" ;  }

if (anv1 == anv1n) { t.divi13.value = ""; }
else {
remain = anv1n % 13; 
if (remain == 0) { result = anv1n / 13;
t.divi13.value = "IANVadd(n): " + anv1n + " = " + "13 x " + result;  }
else { t.divi13.value =""; }
}

remain = anv1 % 666; 
if (remain == 0) { result = anv1 / 666;
t.ifyes666.value = "IANVadd: " + anv1 + " = " + "666 x " + result;  }
else { t.ifyes666.value = "" ;  }

if (anv1 == anv1n) { t.divi666.value = ""; }
else {
remain = anv1n % 666; 
if (remain == 0) { result = anv1n / 666;
t.divi666.value = "IANVadd(n): " + anv1n + " = " + "666 x " + result;  }
else {  t.divi666.value =""; }
}

if (t.entercustom.value != "" ) {
t.customecho.value = t.entercustom.value;
remain = anv1 % t.entercustom.value; 
if (remain == 0) { result = anv1 / t.entercustom.value;
t.ifyescustom.value = "IANVadd: " + anv1 + " = " + t.entercustom.value + " x " + result;  }
else { t.ifyescustom.value = "" ;  }

if (anv1 == anv1n) { t.divicustom.value = ""; }
else {
remain = anv1n % t.entercustom.value; 
if (remain == 0) { result = anv1n / t.entercustom.value;
t.divicustom.value = "IANVadd(n): " + anv1n + " = " + t.entercustom.value+ " x " + result;  }
else { t.divicustom.value =""; }
}

} // if custom

// FOR Sum PNV
if (pnv1 == pnv1n) { t.divi192.value = ""; }
else {
t.divi192.value = ldiv(pnv1n,19,"PNVadd(n): ");
}

remain = pnv1 % 99; 
if (remain == 0) { result = pnv1 / 99;
t.ifyes992.value = "PNVadd: " + pnv1 + " = " + "99 x " + result;  }
else { t.ifyes992.value = "" ;  }

if (pnv1 == pnv1n) { t.divi992.value = ""; }
else {
remain = pnv1n % 99; 
if (remain == 0) { result = pnv1n / 99;
t.divi992.value = "PNVadd(n): " + pnv1n + " = " + "99 x " + result;  }
else {  t.divi992.value =""; }
}

remain = pnv1 % 66; 
if (remain == 0) { result = pnv1 / 66;
t.ifyes662.value = "PNVadd: " + pnv1 + " = " + "66 x " + result;  }
else { t.ifyes662.value = "" ;  }

if (pnv1 == pnv1n) { t.divi662.value = ""; }
else {
remain = pnv1n % 66; 
if (remain == 0) { result = pnv1n / 66;
t.divi662.value = "PNVadd(n): " + pnv1n + " = " + "66 x " + result;  }
else { t.divi662.value =""; }
//t.divi19.value  = "SAME " + pnv1n + " " + pnv1;
}

remain = pnv1 % 16; 
if (remain == 0) { result = pnv1 / 16;
t.ifyes162.value = "PNVadd: " + pnv1 + " = " + "16 x " + result;  }
else { t.ifyes162.value = "" ;  }

if (pnv1 == pnv1n) { t.divi162.value = ""; }
else {
remain = pnv1n % 16; 
if (remain == 0) { result = pnv1n / 16;
t.divi162.value = "PNVadd(n): " + pnv1n + " = " + "16 x " + result;  }
else { t.divi162.value =""; }
}

remain = pnv1 % 29; 
if (remain == 0) { result = pnv1 / 29;
t.ifyes292.value = "PNVadd: " + pnv1 + " = " + "29 x " + result;  }
else { t.ifyes292.value = "" ;  }

if (pnv1 == pnv1n) { t.divi292.value = ""; }
else {
remain = pnv1n % 29;
if (remain == 0) { result = pnv1n / 29;
t.divi292.value = "PNVadd(n): " + pnv1n + " = " + "29 x " + result;  }
else {  t.divi292.value =""; }
}

remain = pnv1 % 92;
if (remain == 0) { result = pnv1 / 92;
t.ifyes922.value = "PNVadd: " + pnv1 + " = " + "92 x " + result;  }
else { t.ifyes922.value = "" ;  }

if (pnv1 == pnv1n) { t.divi922.value = ""; }
else {
remain = pnv1n % 92; 
if (remain == 0) { result = pnv1n / 92;
t.divi92.value = "PNVadd(n): " + pnv1n + " = " + "92 x " + result;  }
else { t.divi922.value =""; }
}

remain = pnv1 % 3; 
if (remain == 0) { result = pnv1 / 3;
t.ifyes32.value = "PNVadd: " + pnv1 + " = " + "3 x " + result;  }
else { t.ifyes32.value = "" ;  }

if (pnv1 == pnv1n) { t.divi32.value = ""; }
else {
remain = pnv1n % 3;
if (remain == 0) { result = pnv1n / 3;
t.divi32.value = "PNVadd(n): " + pnv1n + " = " + "3 x " + result;  }
else { t.divi32.value =""; }
}

remain = pnv1 % 7; 
if (remain == 0) { result = pnv1 / 7;
t.ifyes72.value = "PNVadd: " + pnv1 + " = " + "7 x " + result;  }
else { t.ifyes72.value = "" ;  }

if (pnv1 == pnv1n) { t.divi72.value = ""; }
else {
remain = pnv1n % 7; 
if (remain == 0) { result = pnv1n / 7;
t.divi72.value = "PNVadd(n): " + pnv1n + " = " + "7 x " + result;  }
else {  t.divi72.value =""; }
}

remain = pnv1 % 13; 
if (remain == 0) { result = pnv1 / 13;
t.ifyes132.value = "PNVadd: " + pnv1 + " = " + "13 x " + result;  }
else { t.ifyes132.value = "" ;  }

if (pnv1 == pnv1n) { t.divi132.value = ""; }
else {
remain = pnv1n % 13; 
if (remain == 0) { result = pnv1n / 13;
t.divi132.value = "PNVadd(n): " + pnv1n + " = " + "13 x " + result;  }
else {  t.divi132.value =""; }
}

remain = pnv1 % 666; 
if (remain == 0) { result = pnv1 / 666;
t.ifyes6662.value = "PNVadd: " + pnv1 + " = " + "666 x " + result;  }
else { t.ifyes6662.value = "" ;  }

 if (pnv1 == pnv1n) { t.divi6662.value = ""; }
 else {
 remain = pnv1n % 666; 
 if (remain == 0) { result = pnv1n / 666;
 t.divi6662.value = "PNVadd(n): " + pnv1n + " = " + "666 x " + result;  }
 else {  t.divi6662.value =""; }
 }

if (t.entercustom.value != "" ) {
t.customecho.value = t.entercustom.value;
remain = pnv1 % t.entercustom.value;
if (remain == 0) { result = pnv1 / t.entercustom.value;
t.ifyescustom2.value = "PNVadd: " + pnv1 + " = " + t.entercustom.value + " x " + result;  }
else { t.ifyescustom2.value = "" ;  }

if (pnv1 == pnv1n) { t.divicustom2.value = ""; }
else {
remain = pnv1n % t.entercustom.value; 
if (remain == 0) { result = pnv1n / t.entercustom.value;
t.divicustom2.value = "PNVadd(n): " + pnv1n + " = " + t.entercustom.value+ " x " + result;  }
else {  t.divicustom2.value =""; }
}
}

if (t.docomb.checked == true)  { 

s1 = str1;
s2 = str2;
s3 = anv1;
s4 = pnv1;

comb1 = s1 + " " + s2 + " " + s3 + " " + s4;
comb2 = s1 + " " + s2 + " " + s4 + " " + s3;
comb3 = s1 + " " + s3 + " " + s2 + " " + s4;
comb4 = s1 + " " + s3 + " " + s4 + " " + s2;
comb5 = s1 + " " + s4 + " " + s2 + " " + s3;
comb6 = s1 + " " + s4 + " " + s3 + " " + s2;

comb7 = s2 + " " + s1 + " " + s3 + " " + s4;
comb8 = s2 + " " + s1 + " " + s4 + " " + s3;
comb9 = s2 + " " + s3 + " " + s1 + " " + s4;
comb10= s2 + " " + s3 + " " + s4 + " " + s1;
comb11= s2 + " " + s4 + " " + s1 + " " + s3;
comb12= s2 + " " + s4 + " " + s3 + " " + s1;

comb13= s3 + " " + s1 + " " + s2 + " " + s4;
comb14= s3 + " " + s1 + " " + s4 + " " + s2;
comb15= s3 + " " + s2 + " " + s1 + " " + s4;
comb16= s3 + " " + s2 + " " + s4 + " " + s1;
comb17= s3 + " " + s4 + " " + s1 + " " + s2;
comb18= s3 + " " + s4 + " " + s2 + " " + s1;

comb19= s4 + " " + s1 + " " + s2 + " " + s3;
comb20= s4 + " " + s1 + " " + s3 + " " + s2;
comb21= s4 + " " + s2 + " " + s1 + " " + s3;
comb22= s4 + " " + s2 + " " + s3 + " " + s1;
comb23= s4 + " " + s3 + " " + s1 + " " + s2;
comb24= s4 + " " + s3 + " " + s2 + " " + s1;

s1 = "IANVSeq";
s2 = "PNVSeq";
s3 = "IANVAdd";
s4 = "PNVAdd";

combs1 = "Combination - " + s1 + " " + s2 + " " + s3 + " " + s4+ " : ";
combs2 = "Combination - " + s1 + " " + s2 + " " + s4 + " " + s3+ " : ";
combs3 = "Combination - " + s1 + " " + s3 + " " + s2 + " " + s4+ " : ";
combs4 = "Combination - " + s1 + " " + s3 + " " + s4 + " " + s2+ " : ";
combs5 = "Combination - " + s1 + " " + s4 + " " + s2 + " " + s3+ " : ";
combs6 = "Combination - " + s1 + " " + s4 + " " + s3 + " " + s2+ " : ";

combs7 = "Combination - " + s2 + " " + s1 + " " + s3 + " " + s4+ " : ";
combs8 = "Combination - " + s2 + " " + s1 + " " + s4 + " " + s3+ " : ";
combs9 = "Combination - " + s2 + " " + s3 + " " + s1 + " " + s4+ " : ";
combs10= "Combination - " + s2 + " " + s3 + " " + s4 + " " + s1+ " : ";
combs11= "Combination - " + s2 + " " + s4 + " " + s1 + " " + s3+ " : ";
combs12= "Combination - " + s2 + " " + s4 + " " + s3 + " " + s1+ " : ";

combs13= "Combination - " + s3 + " " + s1 + " " + s2 + " " + s4+ " : ";
combs14= "Combination - " + s3 + " " + s1 + " " + s4 + " " + s2+ " : ";
combs15= "Combination - " + s3 + " " + s2 + " " + s1 + " " + s4+ " : ";
combs16= "Combination - " + s3 + " " + s2 + " " + s4 + " " + s1+ " : ";
combs17= "Combination - " + s3 + " " + s4 + " " + s1 + " " + s2+ " : ";
combs18= "Combination - " + s3 + " " + s4 + " " + s2 + " " + s1+ " : ";

combs19= "Combination - " + s4 + " " + s1 + " " + s2 + " " + s3+ " : ";
combs20= "Combination - " + s4 + " " + s1 + " " + s3 + " " + s2+ " : ";
combs21= "Combination - " + s4 + " " + s2 + " " + s1 + " " + s3+ " : ";
combs22= "Combination - " + s4 + " " + s2 + " " + s3 + " " + s1+ " : ";
combs23= "Combination - " + s4 + " " + s3 + " " + s1 + " " + s2+ " : ";
combs24= "Combination  - " + s4 + " " + s3 + " " + s2 + " " + s1+ " : ";

t.comb1.value = ldiv(comb1,19,combs1);
t.comb2.value = ldiv(comb2,19,combs2);
t.comb3.value = ldiv(comb3,19,combs3);
t.comb4.value = ldiv(comb4,19,combs4);
t.comb5.value = ldiv(comb5,19,combs5);
t.comb6.value = ldiv(comb6,19,combs6);

t.comb7.value = ldiv(comb7,19,combs7);
t.comb8.value = ldiv(comb8,19,combs8);
t.comb9.value = ldiv(comb9,19,combs9);
t.comb10.value = ldiv(comb10,19,combs10);
t.comb11.value = ldiv(comb11,19,combs11);
t.comb12.value = ldiv(comb12,19,combs12);

t.comb13.value = ldiv(comb13,19,combs13);
t.comb14.value = ldiv(comb14,19,combs14);
t.comb15.value = ldiv(comb15,19,combs15);
t.comb16.value = ldiv(comb16,19,combs16);
t.comb17.value = ldiv(comb17,19,combs17);
t.comb18.value = ldiv(comb18,19,combs18);

t.comb19.value = ldiv(comb19,19,combs19);
t.comb20.value = ldiv(comb20,19,combs20);
t.comb21.value = ldiv(comb21,19,combs21);
t.comb22.value = ldiv(comb22,19,combs22);
t.comb23.value = ldiv(comb23,19,combs23);
t.comb24.value = ldiv(comb24,19,combs24);
}

} // end if valid_english ==1


//////////////////////////////ARABIC checking//////////////////////////////////////////

if (valid_arabic ==1) {
// start long division on ANV, which is
bynum=19;
t.show19byanvseq.value = ldiv(str3,19,"ANVSeq: ");
t.timesanvseq.value = m19;
t.divi19anv.value = ldiv(aanv1,19,"ANVAdd: ");

if (aanv1 == aanv1n) { t.divi19anvn.value = ""; }
else {
ldiv(aanv1n,19,"ANVAdd(n): ");
t.divi19anvn.value = divi19longanswer;
}


remain = aanv1 % 99;
if (remain == 0) { result = aanv1 / 99;
t.divi99anv.value = "ANVadd: " + aanv1 + " = " + "99 x " + result;  }
else { t.divi99anv.value = "" ;  }


if (aanv1 == aanv1n) { t.divi99anvn.value = ""; }
else {
remain = aanv1n % 99; 
if (remain == 0) { result = aanv1n / 99;
t.divi99anvn.value = "ANVadd(n): " + aanv1n + " = " + "99 x " + result;  }
else { t.divi99anvn.value =""; }
}

// ----

remain = aanv1 % 66; 
if (remain == 0) { result = aanv1 / 66;
t.divi66anv.value = "ANVadd: " + aanv1 + " = " + "66 x " + result;  }
else { t.divi66anv.value = "" ;  }

if (aanv1 == aanv1n) { t.divi66.value = ""; }
else {
remain = aanv1n % 66; 
if (remain == 0) { result = aanv1n / 66;
t.divi66anvn.value = "ANVadd(n): " + aanv1n + " = " + "66 x " + result;  }
else {  t.divi66anvn.value =""; }
}

remain = aanv1 % 16; 
if (remain == 0) { result = aanv1 / 16;
t.divi16anv.value = "ANVadd: " + aanv1 + " = " + "16 x " + result;  }
else { t.divi16anv.value = "" ;  }

if (aanv1 == aanv1n) { t.divi16.value = ""; }
else {
remain = aanv1n % 16; 
if (remain == 0) { result = aanv1n / 16;
t.divi16anvn.value = "ANVadd(n): " + aanv1n + " = " + "16 x " + result;  }
else {  t.divi16anvn.value =""; }
}

remain = aanv1 % 29; 
if (remain == 0) { result = aanv1 / 29;
t.divi29anv.value = "ANVadd: " + aanv1 + " = " + "29 x " + result;  }
else { t.divi29anv.value = "" ;  }

if (aanv1 == aanv1n) { t.divi29.value = ""; }
else {
remain = aanv1n % 29;
if (remain == 0) { result = aanv1n / 29;
t.divi29anvn.value = "ANVadd(n): " + aanv1n + " = " + "29 x " + result;  }
else {  t.divi29anvn.value =""; }
}

remain = aanv1 % 92;
if (remain == 0) { result = aanv1 / 92;
t.divi92anv.value = "ANVadd: " + aanv1 + " = " + "92 x " + result;  }
else { t.divi92anv.value = "" ;  }

if (aanv1 == aanv1n) { t.divi92.value = ""; }
else {
remain = aanv1n % 92; 
if (remain == 0) { result = aanv1n / 92;
t.divi92anvn.value = "ANVadd(n): " + aanv1n + " = " + "92 x " + result;  }
else {  t.divi92anvn.value =""; }
}

remain = aanv1 % 3; 
if (remain == 0) { result = aanv1 / 3;
t.divi3anv.value = "ANVadd: " + aanv1 + " = " + "3 x " + result;  }
else { t.divi3anv.value = "" ;  }

if (aanv1 == aanv1n) { t.divi3.value = ""; }
else {
remain = aanv1n % 3;
if (remain == 0) { result = aanv1n / 3;
t.divi3anvn.value = "ANVadd(n): " + aanv1n + " = " + "3 x " + result;  }
else {  t.divi3anvn.value =""; }
}

remain = aanv1 % 7; 
if (remain == 0) { result = aanv1 / 7;
t.divi7anv.value = "ANVadd: " + aanv1 + " = " + "7 x " + result;  }
else { t.divi7anv.value = "" ;  }

if (aanv1 == aanv1n) { t.divi7.value = ""; }
else {
remain = aanv1n % 7; 
if (remain == 0) { result = aanv1n / 7;
t.divi7anvn.value = "ANVadd(n): " + aanv1n + " = " + "7 x " + result;  }
else {  t.divi7anvn.value =""; }
}

remain = aanv1 % 13; 
if (remain == 0) { result = aanv1 / 13;
t.divi13anv.value = "ANVadd: " + aanv1 + " = " + "13 x " + result;  }
else { t.divi13anv.value = "" ;  }

if (aanv1 == aanv1n) { t.divi13.value = ""; }
else {
remain = aanv1n % 13; 
if (remain == 0) { result = aanv1n / 13;
t.divi13anvn.value = "ANVadd(n): " + aanv1n + " = " + "13 x " + result;  }
else { t.divi13anvn.value =""; }
}

remain = aanv1 % 666; 
if (remain == 0) { result = aanv1 / 666;
t.divi666anv.value = "ANVadd: " + aanv1 + " = " + "666 x " + result;  }
else { t.divi666anv.value = "" ;  }

if (aanv1 == aanv1n) { t.divi666.value = ""; }
else {
remain = aanv1n % 666; 
if (remain == 0) { result = aanv1n / 666;
t.divi666anvn.value = "ANVadd(n): " + aanv1n + " = " + "666 x " + result;  }
else {  t.divi666anvn.value =""; }
}

if (t.entercustom.value != "" ) {
t.customecho.value = t.entercustom.value;
remain = aanv1 % t.entercustom.value; 
if (remain == 0) { result = aanv1 / t.entercustom.value;
t.divicustomanv.value = "ANVadd: " + aanv1 + " = " + t.entercustom.value + " x " + result;  }
else { t.divicustomanv.value = "" ;  }

if (aanv1 == aanv1n) { t.divicustom.value = ""; }
else {
remain = aanv1n % t.entercustom.value; 
if (remain == 0) { result = aanv1n / t.entercustom.value;
t.divicustomanvn.value = "ANVadd(n): " + aanv1n + " = " + t.entercustom.value+ " x " + result;  }
else { t.divicustomanvn.value =""; }
}

} // if custom


s1 = "ANVSeq";
s2 = "ANVAdd";

s11 = str3;
s22 = aanv1;

comb1 = s11 + " " + s22;
comb2 = s22 + " " + s11;

combs1 = "Combination - " + s1 + " " + s2 + " : ";
combs2 = "Combination - " + s2 + " " + s1 + " : ";

t.combanv1.value = ldiv(comb1,19,combs1);
t.combanv2.value = ldiv(comb2,19,combs2);

} // end if valid_arabic ==1





return true;
}


// ###################################################################################################################
// ###################################################################################################################
// ###################################################################################################################


function ldivtest (this_num,bynum) {
answer_d = 0;
strbreaklength = 20;
new_num = this_num;
temp1 = new_num;
// t.reset();
// t.testa.value = temp1;
var a1 = temp1;
a1 = a1 + "";
new_bynum = bynum + "";
var lennum = a1.length;
var bynum_l = new_bynum.length; 

a1= a1.toLowerCase();
var lengg = a1.length;
for (var i=0;i<lengg; i++) {
var temp_char=a1.charAt(i);
switch (temp_char) 
{ 
   case "1" : break; 
   case "2" : break; 
   case "3" : break; 
   case "4" : break; 
   case "5" : break; 
   case "6" : break; 
   case "7" : break;
   case "8" : break;
   case "9" : break;
   case "0" : break;
   case " " : break; 
   case "," : break;    
   case "\n" : break;   
   case "\f" : break;   
   case "\t" : break;  
   case "\r" : break;   
   default  : {
   alert("Please edit your number. Number can only contain digists 0~9, commas and spaces");
   return;}
  } 
}

b1= "";
for (var i=0;i<lennum; i++) {
 if ((a1.charAt(i)== "0") || (a1.charAt(i)== "1") || (a1.charAt(i)== "2") || (a1.charAt(i)== "3") || (a1.charAt(i)== "4") || (a1.charAt(i)== "5") || (a1.charAt(i)== "6") || (a1.charAt(i)== "7") || (a1.charAt(i)== "8") || (a1.charAt(i)== "9")) {
  b1 = b1 + a1.charAt(i);
 }
}
a1=b1;
lennum = a1.length;

if (lennum < 7) {
    remainder = a1 % bynum;
	if (remainder == 0)  { 
	result = a1 / bynum;
	answer_d = result;
	} 
	else { 
	answer_d = a1 / bynum;
	}
    return remainder; 
   }
else {
// number longer than 14. perform long division
  fchunk = a1.charAt(0) + a1.charAt(1);
  next2cum =2;
  if (fchunk < 19) { fchunk = fchunk + a1.charAt(2); next2cum++; }

  topn = Math.floor(fchunk / 19);
  topn =topn + "";
  rem1 = fchunk  - (topn * 19);
  i = 5;  
  while (next2cum < lennum)  {
    if (rem1 < 19) {
	  rem1 = rem1 + a1.charAt(next2cum);
	  next2cum++;
	  if (rem1 < 19) {
	   rem1 = rem1 + a1.charAt(next2cum);
	   next2cum++;
	   topn = topn + "0";
	    }
	  }
   newtop = Math.floor(rem1 / 19);
   topn = topn + newtop;
   rem1 = rem1  - ( newtop * 19);
   i = i+ 5;
 }

	if (rem1 == 0)  { 
    remainder = 0;
	topn1="";
    lennum1 = topn.length;
    countnow =0
    for (var i5=0;i5<lennum1; i5++) {
	tempchar1 = topn.charAt(i5);
	topn1 = topn1+ tempchar1;
	countnow = countnow+1;
	if (countnow == strbreaklength) {
		topn1 = topn1+ " ";
     	countnow = 0;
	}
	}
	answer_d = topn1;
	new_num=topn1;
	return remainder;
	} 

	else { 
  	remainder = rem1;
	return remainder;
   }

   } // end - IF long
  
}

// ###################################################################################################################
// ###################################################################################################################
// ###################################################################################################################

cooco = 2;
function ldiv (this_num,bynum,varname) {
if (this_num=="" || this_num==0 ) {  
   remainder="";  
   divi19longanswer="";
   return divi19longanswer;
   }

answer_d=0;
remainder=0;
m19=0;
temp1 = this_num;
temp2= temp1;
domoredivi=1;
remainder1 = ldivtest (temp1,19);
while (domoredivi==1) {
if (remainder1 ==0) {
m19 = m19+1;
new_num=answer_d;
hold_answer = answer_d;
last_remainder = remainder1;
remainder1 = ldivtest (new_num,19);
}
else {
domoredivi =0;
if (m19>0) { 
answer_d = hold_answer; 
remainder = last_remainder;
}
}
}
  
a1=" =";
for (var i=0;i<m19; i++) {
a1 = a1 + " 19 x ";
}
if (remainder == 0) {
if (m19 ==0) { a1= " = 19 x "; }
divi19longanswer = varname + temp2 + a1 + answer_d;
}
else { 
 divi19longanswer="";
}
return divi19longanswer;

}

// ############################################################################################
// ############################################################################################
// ############################################################################################
function ldivform (t,bynum)
{
// only for calculator

t.show19bycalc.value = "";
t.remaindere.value = "";
temp1 = t.testa.value;
ldiv(temp1,19,"");
t.show19bycalc.value = divi19longanswer;
t.remaindere.value = remainder;

}



// ###################################################################################################################
// ###################################################################################################################
// ###################################################################################################################

function saveCaret(elem)
{
  if ( elem.isTextEdit ) 
    elem.caretPos = document.selection.createRange();
}

function getCaretPos(elem)
{
  if ( elem.isTextEdit && elem.caretPos )
  {
    var bookmark = "~";
    var orig = elem.value;
    var caretPos = elem.caretPos;
    caretPos.text = bookmark;

    var i = elem.value.search( bookmark );
    window.status = "Caret is at character " + i;
    elem.value = orig;
//	caretPos.value = x1;
  }
}
