| 
					
				 | 
			
			
				@@ -220,12 +220,10 @@ fn: function (){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) {  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_(_st((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})}))._ensure_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}))._ensure_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)})})),(3)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})),(3)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"testEnsure",{},globals.BlockClosureTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 source: "testEnsure\x0a\x09self assert: ([ 3 ] ensure: [ 4 ]) equals: 3", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -248,9 +246,8 @@ return _st((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st(_st($Error())._new())._signal(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx3) {$ctx3.fillBlock({},$ctx2,2)})}))._ensure_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx3) {$ctx3.fillBlock({},$ctx2,3)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})}),$Error()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"testEnsureRaises",{},globals.BlockClosureTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -326,14 +323,12 @@ var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) {  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})}))._numArgs(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}))._numArgs(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["numArgs"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($1,(0)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_(_st((function(a,b){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1,2)})}))._numArgs(),(2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}))._numArgs(),(2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"testNumArgs",{},globals.BlockClosureTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 source: "testNumArgs\x0a\x09self assert: [] numArgs equals: 0.\x0a\x09self assert: [ :a :b | ] numArgs equals: 2", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -354,9 +349,8 @@ self._assert_(_st((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st(_st($Error())._new())._signal(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})}))._on_do_($Error(),(function(ex){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1,2)})}))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"testOnDo",{},globals.BlockClosureTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 source: "testOnDo\x0a\x09self assert: ([ Error new signal ] on: Error do: [ :ex | true ])", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -392,9 +386,8 @@ return _st(x).__star(y); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({x:x,y:y},$ctx1,3)})}))._value_value_((2),(4)),(8)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_(_st((function(a,b,c){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b,c:c},$ctx1,4)})}))._value(),(1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}))._value(),(1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"testValue",{},globals.BlockClosureTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 source: "testValue\x0a\x09self assert: ([ 1+1 ] value) equals: 2.\x0a\x09self assert: ([ :x | x +1 ] value: 2) equals: 3.\x0a\x09self assert: ([ :x :y | x*y ] value: 2 value: 4) equals: 8.\x0a\x0a\x09\x22Arguments are optional in Amber. This isn't ANSI compliant.\x22\x0a\x0a\x09self assert: ([ :a :b :c | 1 ] value) equals: 1", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -412,9 +405,8 @@ var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) {  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var $1,$2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})}))._valueWithPossibleArguments_([(3), (4)]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}))._valueWithPossibleArguments_([(3), (4)]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["valueWithPossibleArguments:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($1,(1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=1; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -861,58 +853,50 @@ var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) {  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var $1,$2,$3,$5,$4,$6,$7,$8,$10,$9,$11,$13,$12,$16,$15,$14,$17,$19,$18,$22,$21,$20; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=true._and_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["and:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_($1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2=true._and_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["and:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._deny_($2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["deny:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $3=false._and_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,3)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["and:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._deny_($3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["deny:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $5=false._and_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,4)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["and:"]=4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $4=self._deny_($5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["deny:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $6=true._or_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,5)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["or:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_($6); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $7=true._or_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,6)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["or:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_($7); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $8=false._or_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,7)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["or:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_($8); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:"]=4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $10=false._or_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,8)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["or:"]=4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $9=self._deny_($10); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["deny:"]=4; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -927,9 +911,8 @@ $ctx1.sendIdx["assert:"]=5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $13=(1).__gt((0)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx[">"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $12=_st($13)._and_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,10)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["and:"]=6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._deny_($12); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["deny:"]=5; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -952,9 +935,8 @@ $ctx1.sendIdx["assert:"]=6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $19=(1).__gt((0)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx[">"]=6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $18=_st($19)._or_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,13)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["or:"]=6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_($18); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:"]=7; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1645,9 +1627,8 @@ var $2,$1,$3,$5,$4,$8,$7,$6,$11,$10,$9; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st($2)._collect_((function(each){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return each; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collect:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $3=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=2; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1656,9 +1637,8 @@ $ctx1.sendIdx["assert:equals:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $5=self._collectionWithNewValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collectionWithNewValue"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $4=_st($5)._collect_((function(each){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return each; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collect:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($4,self._collectionWithNewValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=2; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1683,9 +1663,8 @@ $ctx2.sendIdx["sampleNewValue"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1,4)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collect:"]=4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $9=_st($10)._detect_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,5)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($9,self._sampleNewValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_(_st(self._collection())._collect_((function(each){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1776,9 +1755,8 @@ return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["collection"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st($1)._detect_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx3) {$ctx3.fillBlock({},$ctx2,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["detect:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})}),$Error()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._should_raise_((function(){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1786,16 +1764,14 @@ return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["collection"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st($2)._detect_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx3) {$ctx3.fillBlock({},$ctx2,4)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["detect:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1,3)})}),$Error()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["should:raise:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $3=_st(self._sampleNewValueAsCollection())._detect_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,5)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["detect:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $4=self._sampleNewValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["sampleNewValue"]=1; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1841,34 +1817,28 @@ sentinel=_st($Object())._new(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $3=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2=_st($3)._detect_ifNone_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return sentinel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["detect:ifNone:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st($2).__tild_eq(sentinel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_($1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $5=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $4=_st($5)._detect_ifNone_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,3)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return sentinel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,4)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["detect:ifNone:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($4,sentinel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $6=_st(self._sampleNewValueAsCollection())._detect_ifNone_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,5)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return sentinel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,6)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["detect:ifNone:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $7=self._sampleNewValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["sampleNewValue"]=1; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1881,9 +1851,8 @@ $ctx2.sendIdx["sampleNewValue"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st(each).__eq($9); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["="]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,7)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return sentinel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,8)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["detect:ifNone:"]=4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $10=self._sampleNewValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["sampleNewValue"]=3; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1893,9 +1862,8 @@ self._assert_equals_(_st(self._collection())._detect_ifNone_((function(each){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st(each).__eq(self._sampleNewValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,9)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return sentinel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,10)})})),sentinel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})),sentinel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"testDetectIfNone",{sentinel:sentinel},globals.CollectionTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 source: "testDetectIfNone\x0a\x09| sentinel |\x0a\x09sentinel := Object new.\x0a\x09self assert: (self collection detect: [ true ] ifNone: [ sentinel ]) ~= sentinel.\x0a\x09self assert: (self collection detect: [ false ] ifNone: [ sentinel ]) equals: sentinel.\x0a\x09self assert: (self sampleNewValueAsCollection detect: [ true ] ifNone: [ sentinel ]) equals: self sampleNewValue.\x0a\x09self assert: (self collectionWithNewValue detect: [ :each | each = self sampleNewValue ] ifNone: [ sentinel ]) equals: self sampleNewValue.\x0a\x09self assert: (self collection detect: [ :each | each = self sampleNewValue ] ifNone: [ sentinel ]) equals: sentinel", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1955,18 +1923,16 @@ $ctx1.sendIdx["collectionClass"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2=_st($3)._new(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["new"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st($2)._ifEmpty_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (42); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["ifEmpty:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($1,(42)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $5=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $4=_st($5)._ifEmpty_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (42); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $6=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($4,$6); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1976,9 +1942,8 @@ $ctx1.sendIdx["collectionClass"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $8=_st($9)._new(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["new"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $7=_st($8)._ifNotEmpty_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (42); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,3)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["ifNotEmpty:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $11=self._collectionClass(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collectionClass"]=3; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1989,9 +1954,8 @@ $ctx1.sendIdx["assert:equals:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $13=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $12=_st($13)._ifNotEmpty_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (42); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,4)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($12,(42)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $16=self._collectionClass(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1999,43 +1963,35 @@ $ctx1.sendIdx["collectionClass"]=4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $15=_st($16)._new(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["new"]=4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $14=_st($15)._ifEmpty_ifNotEmpty_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (42); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,5)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (999); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,6)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["ifEmpty:ifNotEmpty:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($14,(42)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $18=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $17=_st($18)._ifEmpty_ifNotEmpty_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (42); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,7)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (999); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,8)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($17,(999)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $19=_st(_st(self._collectionClass())._new())._ifNotEmpty_ifEmpty_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (42); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,9)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (999); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,10)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["ifNotEmpty:ifEmpty:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($19,(999)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=7; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_(_st(self._collection())._ifNotEmpty_ifEmpty_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (42); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,11)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return (999); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,12)})})),(42)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})),(42)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"testIfEmptyFamily",{},globals.CollectionTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 source: "testIfEmptyFamily\x0a\x09self assert: (self collectionClass new ifEmpty: [ 42 ]) equals: 42.\x0a\x09self assert: (self collection ifEmpty: [ 42 ]) equals: self collection.\x0a\x0a\x09self assert: (self collectionClass new ifNotEmpty: [ 42 ]) equals: self collectionClass new.\x0a\x09self assert: (self collection ifNotEmpty: [ 42 ]) equals: 42.\x0a\x09\x0a\x09self assert: (self collectionClass new ifEmpty: [ 42 ] ifNotEmpty: [ 999 ]) equals: 42.\x0a\x09self assert: (self collection ifEmpty: [ 42 ] ifNotEmpty: [ 999 ]) equals: 999.\x0a\x0a\x09self assert: (self collectionClass new ifNotEmpty: [ 42 ] ifEmpty: [ 999 ]) equals: 999.\x0a\x09self assert: (self collection ifNotEmpty: [ 42 ] ifEmpty: [ 999 ]) equals: 42", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2129,9 +2085,8 @@ var $2,$1,$4,$3,$6,$5,$7,$9,$10,$8,$12,$13,$11,$14,$16,$17,$15; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st($2)._select_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["select:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $4=self._collectionClass(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collectionClass"]=1; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2142,9 +2097,8 @@ $ctx1.sendIdx["assert:equals:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $6=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $5=_st($6)._select_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["select:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $7=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["collection"]=3; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2450,11 +2404,10 @@ visited; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["collection"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st($2)._at_ifPresent_(each,(function(value1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 visited=value1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 visited; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return sentinel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx3) {$ctx3.fillBlock({value1:value1},$ctx2,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["at:ifPresent:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($1,nil); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["assert:equals:"]=1; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2467,11 +2420,10 @@ visited; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $4=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["collection"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $3=_st($4)._at_ifPresent_(index,(function(value2){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 visited=value2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 visited; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return sentinel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx3) {$ctx3.fillBlock({value2:value2},$ctx2,4)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($3,sentinel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["assert:equals:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self._assert_equals_(visited,_st(self._collection())._at_(index)); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2502,11 +2454,10 @@ visited; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["collection"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st($2)._at_ifPresent_ifAbsent_(each,(function(value1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 visited=value1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 visited; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return sentinel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx3) {$ctx3.fillBlock({value1:value1},$ctx2,2)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self._sampleNewValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx3.sendIdx["sampleNewValue"]=1; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2525,11 +2476,10 @@ visited; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $5=self._collection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx["collection"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $4=_st($5)._at_ifPresent_ifAbsent_(index,(function(value2){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 visited=value2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 visited; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return sentinel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx3) {$ctx3.fillBlock({value2:value2},$ctx2,5)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self._sampleNewValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx3) {$ctx3.fillBlock({},$ctx2,6)})})); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3385,16 +3335,14 @@ $ctx1.sendIdx["at:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($1,"world"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2=_st(d)._at_ifAbsent_("hello",(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return nil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["at:ifAbsent:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($2,"world"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._deny_(_st(_st(d)._at_ifAbsent_("foo",(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return nil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)})}))).__eq("world")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}))).__eq("world")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["deny:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $3=_st(d)._includesKey_("hello"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["includesKey:"]=1; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -4850,9 +4798,8 @@ return smalltalk.withContext(function($ctx1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._should_raise_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "hello"._at_ifAbsentPut_((6),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "a"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx3) {$ctx3.fillBlock({},$ctx2,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})}),$Error()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"testAtIfAbsentPut",{},globals.StringTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -5002,8 +4949,7 @@ $ctx1.sendIdx["="]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._deny_($1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["deny:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2="hello".__eq([]._at_ifAbsent_((1),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})}))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["="]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._deny_($2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["deny:"]=2; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -5806,30 +5752,26 @@ return smalltalk.withContext(function($ctx1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var $1,$2,$3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 testObject=self._jsObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st(testObject)._at_ifAbsent_("abc",(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "Property does not exist"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["at:ifAbsent:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($1,"Property does not exist"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $2=_st(testObject)._at_ifAbsent_("e",(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "Property does not exist"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["at:ifAbsent:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($2,nil); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $3=_st(testObject)._at_ifAbsent_("a",(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "Property does not exist"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,3)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["at:ifAbsent:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($3,(1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_(_st(testObject)._at_ifAbsent_("f",(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "Property does not exist"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,4)})})),nil); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})),nil); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"testAtIfAbsent",{testObject:testObject},globals.JSObjectProxyTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 source: "testAtIfAbsent\x0a\x09| testObject |\x0a\x09testObject := self jsObject.\x0a\x09self assert: (testObject at: 'abc' ifAbsent: [ 'Property does not exist' ]) equals: 'Property does not exist'.\x0a\x09self assert: (testObject at: 'e' ifAbsent: [ 'Property does not exist' ]) equals: nil.\x0a\x09self assert: (testObject at: 'a' ifAbsent: [ 'Property does not exist' ]) equals: 1.\x0a\x09self assert: (testObject at: 'f' ifAbsent: [ 'Property does not exist' ]) equals: nil.", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -5907,9 +5849,8 @@ $ctx2.sendIdx["asString"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "hello ".__comma($2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx[","]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1,1)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "not present"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["at:ifPresent:ifAbsent:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($1,"not present"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=1; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -5920,9 +5861,8 @@ $ctx2.sendIdx["asString"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "hello ".__comma($4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx[","]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1,3)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "not present"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,4)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["at:ifPresent:ifAbsent:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($3,"hello nil"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=2; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -5933,9 +5873,8 @@ $ctx2.sendIdx["asString"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "hello ".__comma($6); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx2.sendIdx[","]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1,5)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "not present"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,6)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["at:ifPresent:ifAbsent:"]=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self._assert_equals_($5,"hello 1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["assert:equals:"]=3; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -5943,9 +5882,8 @@ self._assert_equals_(_st(testObject)._at_ifPresent_ifAbsent_("f",(function(x){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "hello ".__comma(_st(x)._asString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1,7)})}),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "not present"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,8)})})),"hello nil"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})),"hello nil"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"testAtIfPresentIfAbsent",{testObject:testObject},globals.JSObjectProxyTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 source: "testAtIfPresentIfAbsent\x0a\x09| testObject |\x0a\x09testObject := self jsObject.\x0a\x09self assert: (testObject at: 'abc' ifPresent: [ :x|'hello ',x asString ] ifAbsent: [ 'not present' ]) equals: 'not present'.\x0a\x09self assert: (testObject at: 'e' ifPresent: [ :x|'hello ',x asString ] ifAbsent: [ 'not present' ]) equals: 'hello nil'.\x0a\x09self assert: (testObject at: 'a' ifPresent: [ :x|'hello ',x asString ] ifAbsent: [ 'not present' ]) equals: 'hello 1'.\x0a\x09self assert: (testObject at: 'f' ifPresent: [ :x|'hello ',x asString ] ifAbsent: [ 'not present' ]) equals: 'hello nil'.", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -6642,22 +6580,19 @@ _st((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self._deinstallTop(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})}))._on_do_($Error(),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["on:do:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 _st((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self._deinstallMiddle(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1,3)})}))._on_do_($Error(),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,4)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["on:do:"]=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 _st((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self._deinstallBottom(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1,5)})}))._on_do_($Error(),(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,6)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self}, function($ctx1) {$ctx1.fill(self,"tearDown",{},globals.MethodInheritanceTest)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 args: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 source: "tearDown\x0a\x09[ self deinstallTop ] on: Error do: [ ].\x0a\x09[ self deinstallMiddle ] on: Error do: [ ].\x0a\x09[ self deinstallBottom ] on: Error do: [ ]", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -7761,9 +7696,8 @@ function $Object(){return globals.Object||(typeof Object=="undefined"?nil:Object 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) {  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 o=_st($Object())._new(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 _st(o)._basicAt_put_("func",(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return "hello"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $ctx1.sendIdx["basicAt:put:"]=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 _st(o)._basicAt_put_("func2",(function(a){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) { 
			 |