| 
					
				 | 
			
			
				@@ -369,15 +369,18 @@ function Smalltalk(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     st.removeMethod = function(method) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         var protocol = method.category; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var shouldDeleteProtocol; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         var klass = method.methodClass; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		var methods = klass.fn.prototype.methods; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        delete klass.fn.prototype[method.selector._asSelector()]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    delete klass.fn.prototype.methods[method.selector]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		delete klass.fn.prototype[method.selector._asSelector()]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		delete methods[method.selector]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        for(var i=0; i<klass.fn.prototype.methods; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if(klass.fn.prototype.methods[i].category == protocol) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                shouldDeleteProtocol = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		var selectors = Object.keys(methods); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		var shouldDeleteProtocol = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		for(var i= 0, l = selectors.length; i<l; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(methods[selectors[i]].category === protocol) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                shouldDeleteProtocol = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if(shouldDeleteProtocol) { 
			 |