| 
					
				 | 
			
			
				@@ -794,25 +794,119 @@ smalltalk.parser = (function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (result3 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           var result4 = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          if (input.substr(pos).match(/^[a-zA-Z0-9]/) !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            var result5 = input.charAt(pos); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          var savedPos3 = pos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (input.substr(pos).match(/^[a-zA-Z0-9:]/) !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result12 = input.charAt(pos); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             pos++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            var result5 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result12 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (reportMatchFailures) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              matchFailed("[a-zA-Z0-9]"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              matchFailed("[a-zA-Z0-9:]"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (result12 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result10 = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            while (result12 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              result10.push(result12); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (input.substr(pos).match(/^[a-zA-Z0-9:]/) !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                var result12 = input.charAt(pos); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                pos++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                var result12 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (reportMatchFailures) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  matchFailed("[a-zA-Z0-9:]"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result10 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          var result11 = result10 !== null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ? (function(digits) {return digits.join("")})(result10) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            : null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (result11 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result9 = result11; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result9 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            pos = savedPos3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (result9 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result5 = result9; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var savedPos2 = pos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result7 = parse_string(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result8 = result7 !== null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              ? (function(node) {return node._value()})(result7) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              : null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (result8 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result6 = result8; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result6 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              pos = savedPos2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (result6 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result5 = result6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result5 = null;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           while (result5 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             result4.push(result5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (input.substr(pos).match(/^[a-zA-Z0-9]/) !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              var result5 = input.charAt(pos); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var savedPos3 = pos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (input.substr(pos).match(/^[a-zA-Z0-9:]/) !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result12 = input.charAt(pos); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               pos++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              var result5 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result12 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               if (reportMatchFailures) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                matchFailed("[a-zA-Z0-9]"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                matchFailed("[a-zA-Z0-9:]"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (result12 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result10 = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              while (result12 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                result10.push(result12); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (input.substr(pos).match(/^[a-zA-Z0-9:]/) !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  var result12 = input.charAt(pos); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  pos++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  var result12 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  if (reportMatchFailures) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    matchFailed("[a-zA-Z0-9:]"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result10 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result11 = result10 !== null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              ? (function(digits) {return digits.join("")})(result10) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              : null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (result11 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result9 = result11; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result9 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              pos = savedPos3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (result9 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result5 = result9; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var savedPos2 = pos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result7 = parse_string(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              var result8 = result7 !== null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ? (function(node) {return node._value()})(result7) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                : null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (result8 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                var result6 = result8; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                var result6 = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                pos = savedPos2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (result6 !== null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                var result5 = result6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                var result5 = null;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           if (result4 !== null) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -827,8 +921,8 @@ smalltalk.parser = (function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         var result2 = result1 !== null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           ? (function(val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          		  return smalltalk.ValueNode._new() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         	   	._value_(smalltalk.symbolFor(val.join("").replace(/\"/ig, '"'))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          		  		    return smalltalk.ValueNode._new() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                         	   		    	   ._value_(smalltalk.symbolFor(val.join("").replace(/\"/ig, '"'))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                          	 })(result1[1]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           : null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (result2 !== null) { 
			 |