package engine;

public class UniqueSymbolGenerator {
	int symbolNum = 0;
	
	public String SymbolGenerator() {
		String symbol = "_" + symbolNum;
		symbolNum++;
		return symbol;
	}
	
}

@@ -12,16 +12,39 @@
 ine;%0D%0A%0D%0A
+import java.util.*;%0D%0A%0D%0A
 public c
@@ -78,31 +78,342 @@
 %7B%0D%0A%09
-int symbolNum = 0;%0D%0A%09%0D%0A
+private Map%3CString, String%3E varNames = new HashMap%3C%3E(); //Stores Variables and their values%0D%0A//%09int symbolNum = 0;%0D%0A%09%0D%0A%09//Generates a blank variable%0D%0A%09public void Generate()%0D%0A%09%7B%0D%0A%09%09Generate(%22%22);%0D%0A%09%7D%0D%0A%09//Generates a variable with the given value%0D%0A%09public void Generate(String input)%0D%0A%09%7B%0D%0A%09%09varNames.put(SymbolGen(), input);%0D%0A%09%7D%09%0D%0A%09%0D%0A//
 %09pub
@@ -444,16 +444,18 @@
 or() %7B%0D%0A
+//
 %09%09String
@@ -482,16 +482,18 @@
 olNum;%0D%0A
+//
 %09%09symbol
@@ -500,16 +500,18 @@
 Num++;%0D%0A
+//
 %09%09return
@@ -524,14 +524,128 @@
 l;%0D%0A
+//
 %09%7D
+%09
 %0D%0A%09%0D%0A
+%09//Creates next unique variable name%0D%0A%09public String SymbolGen()%0D%0A%09%7B%0D%0A%09%09return %22_Var%22 + varNames.size();%0D%0A%09%7D%09%0D%0A
 %7D%0D%0A

Update UniqueSymbolGenerator.java