

     	var PLACE = 0 
	var LINE = "____________";
     	var NOUNSNUMBER = 59;
     	var VERBSNUMBER =9;
     	var OBJECTSNUMBER = 10;
     	var RAND = 25;
     	var CONTROL = 6;
     	var RAND1 = 15
     	var CONTROL1 = 1;
     	var RAND2 = 15
     	var CONTROL2 = 15;
     	var HOLD = 0;
     	var COMMA = ", "
     	var AND = " and "
     	var PERIOD = ". "
	var t = 0;
	var DIRECTIONS = "DIRECTIONS: Answer each question."
     	NOUNS = new Array ("","Robert","Joan","George","Jane","Tommy","Samantha","Donald","Betty","Eric","Erica","Steven","Stephanie","Ronald","Ricki","Tommy","Toni","Brian","Roberta","James","Ann","Josh","Brittany","Chris","Christine","Kevin","Judy","Carl","Erin","Edward","Ellen","Tim","Ronda","John","Sandy","Larry","Lori","Jeff","Abby","Sam","Jennifer","Arnold","Samantha","Terry","Lindsey","Neil","Rita","Kyle","Allyson","Warren","Janice","Les","Mary","Alan","Laura","Paul","Nancy","Manny","Marie","Michael","Paula")
     	EVENTS = new Array (" ran a race. ", " went to the library. "," visited the mall. "," raced to school. "," went to the gym. ", " walked to the store. ", " attended the lecture. ", " meet at the movie. ")     
     	WHICH = new Array (" first?"," second?"," last?")
     	CORRECT= new Array (5)
     	CHECK = new Array(59)
     	OBJECTS = new Array (" toys"," hockey cards"," books"," pencils"," stamps"," baseball cards"," magazines"," pens"," envelopes"," football cards"," pamphlets"," tablets")
     	ORDER = new Array("","first","second","third","fourth","fifth","sixth","seventh","eighth","ninth")
     	COUNTER = new Array(100)
 
	function CreateNumber ()
	{
	  	CHOOSE = Math.random() * 5;
	  	 CHOOSE = Math.round(CHOOSE);
	  	SELECT = Math.random() * 1;
	  	 SELECT = Math.round(SELECT);
		t++;
	  	n = Math.random() * NOUNSNUMBER + 1;
	 	 n = Math.round(n);
	   	CHECK[n] = 1
	  	n1 = Math.random() * NOUNSNUMBER + 1;
	 	 n1 = Math.round(n1);
	    	if (CHECK[n1] == 1) 
		{
			n1 = Math.random() * NOUNSNUMBER + 1;
	  		n1 = Math.round(n1);
	       	}
	      	if (CHECK[n1] == 1) 
		{
			n1 = Math.random() * NOUNSNUMBER + 1;
	  		n1 = Math.round(n1);
	       	}
	       	if (CHECK[n1] == 1) 
		{
			n1 = Math.random() * NOUNSNUMBER + 1;
	  		n1 = Math.round(n1);
	       	}
	   	CHECK[n1] = 1
	  	n2 = Math.random() * NOUNSNUMBER + 1;
	 	 n2 = Math.round(n2);
	    	if (CHECK[n2] == 1) 
		{
			n2 = Math.random() * NOUNSNUMBER + 1;
	  		n2 = Math.round(n2);
	       	}
	      	if (CHECK[n2] == 1) 
		{
			n2 = Math.random() * NOUNSNUMBER + 1;
	  		n2 = Math.round(n2);
	       	}
	       	if (CHECK[n2] == 1) 
		{
			n2 = Math.random() * NOUNSNUMBER + 1;
	  		n2 = Math.round(n2);
	       	}
	   	CHECK[n2] = 1
	  	n3 = Math.random() * NOUNSNUMBER + 1;
		 n3 = Math.round(n3);
	    	if (CHECK[n3] == 1) 
		{
			n3 = Math.random() * NOUNSNUMBER + 1;
	  		n3 = Math.round(n3);
	       	}
	      	if (CHECK[n3] == 1) 
		{
			n3 = Math.random() * NOUNSNUMBER + 1;
	  		n3 = Math.round(n3);
	       	}
	       	if (CHECK[n3] == 1) 
		{
			n3 = Math.random() * NOUNSNUMBER + 1;
	  		n3 = Math.round(n3);
	       	}
	    	if (CHECK[n3] == 1) 
		{
			n3 = Math.random() * NOUNSNUMBER + 1;
	  		n3 = Math.round(n3);
	       	}
	      	if (CHECK[n3] == 1) 
		{
			n3 = Math.random() * NOUNSNUMBER + 1;
	  		n3 = Math.round(n3);
	       	}
	       	if (CHECK[n3] == 1) 
		{
			n3 = Math.random() * NOUNSNUMBER + 1;
	  		n3 = Math.round(n3);
	       	}
	   	CHECK[n3] = 1
	  	n4 = Math.random() * NOUNSNUMBER + 1;
		 n4 = Math.round(n4);
	    	if (CHECK[n4] == 1) 
		{
			n4 = Math.random() * NOUNSNUMBER + 1;
	  		n4 = Math.round(n4);
	       	}
	      	if (CHECK[n4] == 1) 
		{
			n4 = Math.random() * NOUNSNUMBER + 1;
	  		n4 = Math.round(n4);
	       	}
	       	if (CHECK[n4] == 1) 
		{
			n4 = Math.random() * NOUNSNUMBER + 1;
	  		n4 = Math.round(n4);
	       	}
	    	if (CHECK[n4] == 1) 
		{
			n4 = Math.random() * NOUNSNUMBER + 1;
	  		n4 = Math.round(n4);
	       	}
	      	if (CHECK[n4] == 1) 
		{
			n4 = Math.random() * NOUNSNUMBER + 1;
	  		n4 = Math.round(n4);
	       	}
	       	if (CHECK[n4] == 1) 
		{
			n4 = Math.random() * NOUNSNUMBER + 1;
	  		n4 = Math.round(n4);
	       	}
	   	CHECK[n4] = 1
		PRONOUN = "he";
             	PRONOUN1 = "He";
	   	if (n/2 == Math.round(n/2))
		{
	     		PRONOUN = "she";
			PRONOUN1 = "She";
	    	}
	  	NUMBER = Math.random() * RAND + CONTROL;
	  	 NUMBER = Math.round(NUMBER);  
	  	NUMBER1 = Math.random() * RAND + CONTROL;
	 	 NUMBER1 = Math.round(NUMBER1);
	  	NUMBER2 = Math.random() * RAND + CONTROL;
	  	 NUMBER2 = Math.round(NUMBER2);
	  	NUMBER3 = Math.random() * RAND + CONTROL;
	  	 NUMBER3 = Math.round(NUMBER3);
	  	NUMB = Math.random() * RAND1 + CONTROL1;
	  	 NUMB = Math.round(NUMB);  
	  	NUMB1 = Math.random() * RAND1 + CONTROL1;
	  	 NUMB1 = Math.round(NUMB1);
	  	NUMB2 = Math.random() * RAND1 + CONTROL1;
	  	 NUMB2 = Math.round(NUMB2);
	  	NUMB3 = Math.random() * RAND1 + CONTROL1;
	  	 NUMB3 = Math.round(NUMB3);
      		switch(SELECT) 
		{  
			case 0:
	  			e = Math.random() * 7;
	  			 e = Math.round(e);
	  			w = Math.random() * 2;
	  			 w = Math.round(w);
	   			switch(w) 
				{
					case 0:
		  				CORRECT[t] = NOUNS[n];
					break; 
					case 1:
		  				CORRECT[t] = NOUNS[n1];
					break; 
					case 2:
		  				CORRECT[t] = NOUNS[n2];
					break; 
	     			} 
	  			m = Math.random() * 2;
	  			 m = Math.round(m);
	   			switch(m) 
				{
					case 0:
		  				NOUN = NOUNS[n] + COMMA + NOUNS[n1] + AND + NOUNS[n2] + EVENTS[e];
		   				if (CHOOSE== 2 || CHOOSE == 3)
						{
		      					NOUN = NOUNS[n] + COMMA + NOUNS[n1] + COMMA + NOUNS[n2] + AND + NOUNS[n3] + EVENTS[e];
		     				}
		  			 	if (CHOOSE== 4 || CHOOSE == 5 || CHOOSE == 6)
						{
		      					NOUN = NOUNS[n] + COMMA + NOUNS[n1] + COMMA + NOUNS[n3] + COMMA + NOUNS[n4] + AND + NOUNS[n2] + EVENTS[e];
		     				}
					break; 
					case 1:
		   				NOUN = NOUNS[n1] + COMMA + NOUNS[n] + AND + NOUNS[n2] + EVENTS[e];
		    				if (CHOOSE== 2 || CHOOSE == 3)
						{
		      					NOUN = NOUNS[n3] + COMMA + NOUNS[n1] + COMMA + NOUNS[n] + AND + NOUNS[n2] + EVENTS[e];
		     				}
		    				if (CHOOSE== 4 || CHOOSE == 5 || CHOOSE == 6)
						{
		      					NOUN = NOUNS[n3] + COMMA + NOUNS[n4] + COMMA + NOUNS[n] + COMMA + NOUNS[n1] + AND + NOUNS[n2] + EVENTS[e];
		     				}
					break; 
					case 2:
		   				NOUN = NOUNS[n2] + COMMA + NOUNS[n1] + AND + NOUNS[n] + EVENTS[e];
		    				if (CHOOSE== 2 || CHOOSE == 3)
						{
		      					NOUN = NOUNS[n2] + COMMA + NOUNS[n1] + COMMA + NOUNS[n3] + AND + NOUNS[n] + EVENTS[e];
		     				}
		    				if (CHOOSE== 4 || CHOOSE == 5 || CHOOSE == 6)
						{
		      					NOUN = NOUNS[n2] + COMMA + NOUNS[n] + COMMA + NOUNS[n4] + COMMA + NOUNS[n3] + AND + NOUNS[n1] + EVENTS[e];
		     				}
					break; 
	     			}
	   			switch (CHOOSE) 
				{	
					case 0:  
	  	   				PROBLEM = NOUN + NOUNS[n] + " arrived before " + NOUNS[n1] + PERIOD + NOUNS[n1] + " arrived before " + NOUNS[n2] + " but after " + NOUNS[n] + PERIOD + "Who arrived" + WHICH[w];
	   				break;
					case 1:
		   				PROBLEM = NOUN + NOUNS[n1] + " arrived before " + NOUNS[n2] + " but after " + NOUNS[n] + PERIOD + NOUNS[n] + " arrived before " + NOUNS[n1] + PERIOD + "Who arrived" + WHICH[w];    
	   				break;
					case 2:
		   				PROBLEM = NOUN + NOUNS[n1] + " arrived before " + NOUNS[n2]+ ", but after " +  NOUNS[n] + PERIOD + NOUNS[n] + " arrived before " + NOUNS[n3] + PERIOD + NOUNS[n3] + " arrived after " + NOUNS[n1] + ", but before " + NOUNS[n2] + PERIOD  + "Who arrived" + WHICH[w];   
					break;
					case 3:
		   				PROBLEM = NOUN  + NOUNS[n1] + " arrived before " + NOUNS[n2]+ ", but after " +  NOUNS[n] + PERIOD + NOUNS[n3] + " arrived after " + NOUNS[n1] + ", but before " + NOUNS[n2] + PERIOD  + "Who arrived" + WHICH[w]; 
	 				break;
					case 4:   
		   				PROBLEM = NOUN  + NOUNS[n3] + " arrived before " + NOUNS[n4]+ ", but after " +  NOUNS[n1] + PERIOD + NOUNS[n1] + " arrived after " + NOUNS[n] + ", but before " + NOUNS[n2] + PERIOD + NOUNS[n4] + " arrived before " + NOUNS[n2] + PERIOD + "Who arrived" + WHICH[w]; 
	       				break;
					case 5:   
		   				PROBLEM = NOUN  + NOUNS[n4] + " arrived before " + NOUNS[n2] + PERIOD + NOUNS[n3] + " arrived before " + NOUNS[n4]+ ", but after " +  NOUNS[n1] + PERIOD + NOUNS[n1] + " arrived after " + NOUNS[n] + ", but before " + NOUNS[n2] + PERIOD +  "Who arrived" + WHICH[w]; 
	        			break;
	       			}
	    		break;
      			case 1:
			  	CHOOSE = Math.random() * 6;
	  	 		 CHOOSE = Math.round(CHOOSE);
	   			YEARS = " years";
	   			YEARS1 = " years";
	   			switch (CHOOSE) 
				{	
					case 0:
		   				if(NUMBER <= NUMBER1) 
						{
							NUMBER = NUMBER + NUMBER1 + CONTROL;
		     				}
		   				CORRECT[t] = NUMBER;
  		   				HOLD = NUMBER - NUMBER1;
		    				if (HOLD == 1) 
						{
		      					YEARS = " year";
	            				}
		   					AGE = NUMBER + NUMBER1;
	  	   					PROBLEM = NOUNS[n] + " is " + HOLD + YEARS +" older than " + NOUNS[n1] + PERIOD + " Their total age is " + AGE + PERIOD + " How old is " + NOUNS[n] + "?"; 
	   				break;
					case 1:
		   				if(NUMBER <= NUMBER1) 
						{
							NUMBER = NUMBER + NUMBER1 + CONTROL;
		     				}
		   				CORRECT[t] = NUMBER1;
  		   				HOLD = NUMBER - NUMBER1;
		    				if (HOLD == 1) 
						{
		      					YEARS  = " year";
	            				}
		   				AGE = NUMBER + NUMBER1;
	  	   				PROBLEM = NOUNS[n] + " is " + HOLD + YEARS + " older than " + NOUNS[n1] + PERIOD + " Their total age is " + AGE + PERIOD + " How old is " + NOUNS[n1] + "?";      
	   				break;
					case 2:
		    				ORDER = " younger than ";
		    				ORDER1 = " younger than ";
		   				if(NUMBER >= NUMBER1) 
						{
							NUMBER++;
							ORDER = " older than ";
							HOLD = NUMBER - NUMBER1;
		     				}
		   				if(NUMBER >= NUMBER2) 
						{
							NUMBER++;
							NUMBER1++;
							ORDER1 = " older than ";
							HOLD1 = NUMBER - NUMBER2;
		     				}
		   				if(NUMBER < NUMBER1) 
						{
		       					HOLD = NUMBER1 - NUMBER;
		     				}	
		  				 if(NUMBER < NUMBER2) 
						{
		       					HOLD1 = NUMBER2 - NUMBER;
		     				}
						if (HOLD == 1) 
						{
		      	    				YEARS = " year";
	            	  			}
						if (HOLD1 == 1) 
						{
		      	    				 YEARS1 = " year";
	           	  			}
		   				AGE = NUMBER + NUMBER1 + NUMBER2;
		    				p = Math.random() * 2;
	   	    				 p = Math.round(p);
		  				switch(p) 
						{
	           					case 0:
		    						CORRECT[t] = NUMBER;
		    						NOUN = NOUNS[n];
	           					break;
		   					case 1:
		    						CORRECT[t] = NUMBER1;
		    						NOUN = NOUNS[n1];
	           					break;
		   					case 2:
		    						CORRECT[t] = NUMBER2;
		    						NOUN = NOUNS[n2];
	           					break;
		  				} 
	  	  				 PROBLEM = NOUNS[n] + " is " + HOLD + YEARS + ORDER + NOUNS[n1] + AND + HOLD1 + YEARS1 + ORDER1 + NOUNS[n2] + PERIOD + " Their total age is " + AGE + PERIOD + " How old is " + NOUN + "?";     
					break;
					case 3:
		  				o = Math.random() * 11;
	   	    				 o = Math.round(o);
		  				HOLD = NUMB - NUMB1;
		  				MORE = HOLD + " more than ";
		    				if (NUMB < NUMB1) 
						{
							HOLD = Math.abs(HOLD);
							MORE = HOLD + " less than ";
		       				}
		    				if (NUMB == NUMB1) 
						{
							MORE = " the same as ";
		       				}
		  				HOLD1 = NUMB1 - NUMB2;
		  				MORE1 = HOLD1 + " more than ";

		    				if (NUMB1 < NUMB2) 
						{
							HOLD1 = Math.abs(HOLD1);
							MORE1 = HOLD1 + " less than ";
		       				}
		    				if (NUMB1 == NUMB2) 
						{
							MORE1 = " the same as ";
		       				}
		  				HOLD2 = NUMB3 - NUMB;
		    				MORE2 = HOLD2 + " more than ";
		    				if (NUMB3 < NUMB) 
						{
							HOLD2 = Math.abs(HOLD2);
							MORE2 = HOLD2 + " less than ";
		       				}
		    				if (NUMB3 == NUMB) 
						{
							MORE2 = " the same as ";
		       				}

		  				c = Math.random() * 1;
	   	    				 c = Math.round(c);
		  				switch (c)
						 {	
		    					case 0:
		      						NOUN = NOUNS[n];
		      						CORRECT[t] = NUMB;
		     					break;
		     					case 1:
		      						NOUN = NOUNS[n3];
		      						CORRECT[t] = NUMB3;
		     					break;
		    				}
		   				AGE= NUMB + NUMB1 + NUMB2+ NUMB3;
		     				a = Math.random() * 1;
	   	     				 a = Math.round(a);
		   				if (a == 1) 
						{
		   					PROBLEM = "4 children have " + AGE + OBJECTS[o] + PERIOD + NOUNS[n] + " has " + MORE  + NOUNS[n1]+ ", who has " + MORE1 +  NOUNS[n2] + PERIOD + NOUNS[n3] + " has " + MORE2 +  NOUNS[n]+ PERIOD + NOUNS[n2] + " has "+ NUMB2 + PERIOD + " How many does " + NOUN + " have?"; 
	 	   				}
		  				 else 
						{
		  					 PROBLEM = "4 children have " + AGE + OBJECTS[o] + PERIOD + NOUNS[n] + " has " + MORE  + NOUNS[n1]+ ", who has " + MORE1 +  NOUNS[n2] + PERIOD + NOUNS[n3] + " has " + MORE2 +  NOUNS[n]+ PERIOD + " How many does " + NOUN + " have?"; 
	           				}
					break;
					case 4:
		   				CORRECT[t] = NUMBER1;
		   				AGE = NUMBER + NUMBER1 + NUMBER2 + NUMBER3 + NUMB;
		   				PROBLEM = "The team averages " + AGE + " points per game. " + NOUNS[n] + " averages " + NUMBER + " per game" + COMMA + NOUNS[n1] + " averages " + NUMB +" per game" + COMMA + NOUNS[n2] + " averages " + NUMBER2 + " per game" + AND + NOUNS[n3] + " averages " +  NUMBER3 + " per game" + PERIOD + "How many points a game did " + NOUNS[n4] + " average?"; 
	        			break;
					case 5:
		  				o = Math.random() * 5 + 2;
	   	    				 o = Math.round(o);
		 				o1 = Math.random() * 5 + 2;
	   	     				 o1 = Math.round(o1);
		    				if (o == o1)
						{
							o1++;
		     				}
		   				if (NUMBER < 15)
						{
			  				NUMBER4 = Math.random() * RAND2 + CONTROL2;
	   		    				NUMBER4 = Math.round(NUMBER4);
			   				NUMBER = NUMBER + NUMBER4;  
		     				}
						ANSWER = NUMBER / o;
						 ANSWER = Math.floor(ANSWER);
						ANSWER1 = NUMBER / o1;
						 ANSWER1 = Math.floor(ANSWER1);
		    				for (i=1; i <= ANSWER; i++) 
						{
							COUNTER[o * i] = 1;
						}
		    				for (i=1; i <= ANSWER1; i++) 
						{
							COUNTER[o1 * i] = 1;
						}
		    				for (i=1; i <= NUMBER; i++) 
						{
			  			if (COUNTER[i] == 1)
						{
			   				PLACE++;
							CORRECT[t] = PLACE;
			  			}
					}
		   				PROBLEM = NOUNS[n] + " has " + NUMBER + " blocks. " + PRONOUN1 + " paints every " + ORDER[o] + " block red and every " + ORDER[o1] + " block blue. How many blocks are painted?";  	   
	        			break;
					case 6: 
		  				o = Math.random() * 5 + 2;
	   	    				 o = Math.round(o);
		  				o1 = Math.random() * 5 + 2;
	   	    				 o1 = Math.round(o1);
		    				if (o == o1)
						{
							o1++;
		     				}
		    				if (NUMBER < 15)
						{
			  				NUMBER4 = Math.random() * RAND2 + CONTROL2;
	   		   				 NUMBER4 = Math.round(NUMBER4);
			   				NUMBER = NUMBER + NUMBER4;  
		     				}
						ANSWER = NUMBER / o;
			 			ANSWER = Math.floor(ANSWER);
						ANSWER1 = NUMBER / o1;
			 			ANSWER1 = Math.floor(ANSWER1);
		    				for (i=1; i <= ANSWER; i++) 
						{
							COUNTER[o * i] = 1;
						}
		    				for (i=1; i <= ANSWER1; i++) 
						{
							COUNTER[o1 * i] = 1;
						}
		    				for (i=1; i <= NUMBER; i++) 
						{
			  				if (COUNTER[i] == 1) 
							{
			   					HOLD++;
			  				}
						}
		     				CORRECT[t] = NUMBER - HOLD;
		   				PROBLEM = NOUNS[n] + " has " + NUMBER + " blocks. " + PRONOUN1 + " paints every " + ORDER[o] + " block red and every " + ORDER[o1] + " block blue. How many blocks are not painted?";  	     
	        			break;
	     				}
      				break;
          		}
	}

