| 
					
				 | 
			
			
				@@ -335,9 +335,9 @@ function Smalltalk(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		imp = klass ? klass.fn.prototype[selector] : receiver.klass && receiver[selector]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if(imp) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			pushContext(receiver, selector, args); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			var context = pushContext(receiver, selector, args); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			call = imp.apply(receiver, args); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			popContext(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			popContext(context); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			return call; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			return messageNotUnderstood(receiver, selector, args); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -431,8 +431,7 @@ function Smalltalk(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return st.thisContext = c; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	function popContext() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		var context = st.thisContext; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	function popContext(context) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		st.thisContext = context.homeContext; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		context.homeContext = undefined; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		st.oldContext = context; 
			 |