| 
					
				 | 
			
			
				@@ -317,6 +317,10 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                      ._arguments_(pattern[1]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                      ._nodes_([sequence]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                          }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$c136 = "->", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$c137 = { type: "literal", value: "->", description: "\"->\"" }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$c138 = function(message, tail) { return tail._valueForReceiver_(message); }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$c139 = function(receiver, tail) { return tail._valueForReceiver_(receiver); }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         peg$currPos          = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         peg$reportedPos      = 0, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -488,7 +492,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsestart() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -506,7 +510,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseseparator() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -545,7 +549,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsecomments() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -670,7 +674,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsews() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 3, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 3, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -699,7 +703,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseidentifier() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 4, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 4, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -755,7 +759,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsekeyword() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 5, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 5, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -794,7 +798,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseselector() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 6, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 6, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -850,7 +854,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseclassName() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 7, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 7, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -906,7 +910,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsestring() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 8, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 8, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1004,7 +1008,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsesymbol() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 9, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 9, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1043,7 +1047,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsebareSymbol() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 10, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 10, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1079,7 +1083,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsenumber() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 11, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 11, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1112,7 +1116,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsenumberExp() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 12, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 12, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1165,7 +1169,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsehex() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 13, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 13, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1240,7 +1244,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsefloat() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 14, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 14, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1342,7 +1346,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseinteger() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 15, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 15, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1405,7 +1409,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseliteralArray() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 16, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 16, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1444,7 +1448,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsebareLiteralArray() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 17, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 17, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1483,7 +1487,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseliteralArrayRest() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 18, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 18, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1581,7 +1585,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsedynamicArray() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5, s6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 19, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 19, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1662,7 +1666,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsedynamicDictionary() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 20, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 20, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1681,7 +1685,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (s1 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         s2 = peg$parsews(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (s2 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          s3 = peg$parseexpressions(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s3 = peg$parseassociations(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           if (s3 === peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             s3 = peg$c37; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1728,7 +1732,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsepseudoVariable() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 21, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 21, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1794,7 +1798,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseparseTimeLiteral() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 22, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 22, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1824,7 +1828,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseruntimeLiteral() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 23, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 23, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1848,7 +1852,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseliteral() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 24, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 24, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1869,7 +1873,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsevariable() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 25, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 25, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1893,7 +1897,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsekeywordPair() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 26, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 26, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1938,7 +1942,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsebinarySelector() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 27, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 27, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1983,7 +1987,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsekeywordPattern() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5, s6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 28, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 28, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2070,7 +2074,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsebinaryPattern() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 29, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 29, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2115,7 +2119,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseunaryPattern() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 30, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 30, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2148,7 +2152,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseexpression() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 31, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 31, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2175,7 +2179,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseexpressionList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 32, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 32, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2226,7 +2230,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseexpressions() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 33, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 33, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2264,7 +2268,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseassignment() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 34, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 34, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2321,7 +2325,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseret() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 35, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 35, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2387,7 +2391,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsetemps() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5, s6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 36, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 36, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2485,7 +2489,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseblockParamList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5, s6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 37, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 37, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2605,7 +2609,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsesubexpression() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 38, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 38, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2668,7 +2672,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsestatements() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5, s6, s7; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 39, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 39, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2836,7 +2840,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsesequence() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 40, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 40, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2857,7 +2861,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsestSequence() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 41, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 41, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2908,7 +2912,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseblock() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5, s6, s7; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 42, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 42, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2989,7 +2993,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseoperand() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 43, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 43, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3013,7 +3017,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseunaryMessage() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 44, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 44, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3067,7 +3071,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseunaryTail() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 45, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 45, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3115,7 +3119,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parseunarySend() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 46, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 46, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3157,7 +3161,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsebinaryMessage() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 47, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 47, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3205,7 +3209,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsebinaryTail() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 48, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 48, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3241,7 +3245,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsebinarySend() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 49, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 49, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3277,7 +3281,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsekeywordMessage() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 50, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 50, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3349,7 +3353,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsekeywordSend() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 51, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 51, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3382,7 +3386,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsemessage() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 52, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 52, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3406,7 +3410,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsecascade() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 53, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 53, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3535,7 +3539,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsejsStatement() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 54, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 54, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3633,7 +3637,7 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     function peg$parsemethod() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       var s0, s1, s2, s3, s4, s5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var key    = peg$currPos * 56 + 55, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 55, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (cached) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3690,6 +3694,218 @@ globals.SmalltalkParser = (function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       return s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function peg$parseassociationMessage() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 56, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (cached) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$currPos = cached.nextPos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cached.result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      s0 = peg$currPos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      s1 = peg$parsews(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (s1 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (input.substr(peg$currPos, 2) === peg$c136) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s2 = peg$c136; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          peg$currPos += 2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s2 = peg$FAILED; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (peg$silentFails === 0) { peg$fail(peg$c137); } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (s2 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s3 = peg$parsews(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (s3 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            s4 = peg$parseunarySend(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (s4 === peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              s4 = peg$parseoperand(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (s4 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              peg$reportedPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              s1 = peg$c116(s2, s4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              s0 = s1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      peg$cache[key] = { nextPos: peg$currPos, result: s0 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function peg$parseassociationTail() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 57, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (cached) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$currPos = cached.nextPos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cached.result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      s0 = peg$parseassociationMessage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (s0 === peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        s0 = peg$currPos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        s1 = peg$parsebinaryMessage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (s1 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s2 = peg$parseassociationTail(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (s2 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            peg$reportedPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            s1 = peg$c138(s1, s2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            s0 = s1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      peg$cache[key] = { nextPos: peg$currPos, result: s0 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function peg$parseassociationSend() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var s0, s1, s2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 58, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (cached) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$currPos = cached.nextPos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cached.result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      s0 = peg$currPos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      s1 = peg$parseunarySend(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (s1 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        s2 = peg$parseassociationTail(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (s2 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          peg$reportedPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s1 = peg$c139(s1, s2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s0 = s1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      peg$cache[key] = { nextPos: peg$currPos, result: s0 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function peg$parseassociationList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var s0, s1, s2, s3, s4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 59, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (cached) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$currPos = cached.nextPos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cached.result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      s0 = peg$currPos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      s1 = peg$parsews(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (s1 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (input.charCodeAt(peg$currPos) === 46) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s2 = peg$c47; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          peg$currPos++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s2 = peg$FAILED; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (peg$silentFails === 0) { peg$fail(peg$c48); } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (s2 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s3 = peg$parsews(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (s3 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            s4 = peg$parseassociationSend(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (s4 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              peg$reportedPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              s1 = peg$c85(s4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              s0 = s1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      peg$cache[key] = { nextPos: peg$currPos, result: s0 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function peg$parseassociations() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var s0, s1, s2, s3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      var key    = peg$currPos * 61 + 60, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          cached = peg$cache[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (cached) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$currPos = cached.nextPos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cached.result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      s0 = peg$currPos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      s1 = peg$parseassociationSend(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (s1 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        s2 = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        s3 = peg$parseassociationList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        while (s3 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s2.push(s3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s3 = peg$parseassociationList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (s2 !== peg$FAILED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          peg$reportedPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s1 = peg$c86(s1, s2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s0 = s1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        peg$currPos = s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        s0 = peg$c1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      peg$cache[key] = { nextPos: peg$currPos, result: s0 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return s0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     peg$result = peg$startRuleFunction(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (peg$result !== peg$FAILED && peg$currPos === input.length) { 
			 |