|  | @@ -4116,22 +4116,29 @@ smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  |  selector: "removeClass:",
 | 
	
		
			
				|  |  |  category: 'classes',
 | 
	
		
			
				|  |  | -fn: function (aClass) {
 | 
	
		
			
				|  |  | -    var self = this;
 | 
	
		
			
				|  |  | -    var $1;
 | 
	
		
			
				|  |  | -    $1 = smalltalk.send(aClass, "_isMetaclass", []);
 | 
	
		
			
				|  |  | -    if (smalltalk.assert($1)) {
 | 
	
		
			
				|  |  | -        smalltalk.send(self, "_error_", [smalltalk.send(smalltalk.send(aClass, "_asString", []), "__comma", [" is a Metaclass and cannot be removed!"])]);
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -    smalltalk.send(smalltalk.send(smalltalk.send(aClass, "_methodDictionary", []), "_values", []), "_do_", [function (each) {return smalltalk.send(aClass, "_removeCompiledMethod_", [each]);}]);
 | 
	
		
			
				|  |  | -    smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(aClass, "_class", []), "_methodDictionary", []), "_values", []), "_do_", [function (each) {return smalltalk.send(smalltalk.send(aClass, "_class", []), "_removeCompiledMethod_", [each]);}]);
 | 
	
		
			
				|  |  | -    smalltalk.send(self, "_basicDelete_", [smalltalk.send(aClass, "_name", [])]);
 | 
	
		
			
				|  |  | -    return self;
 | 
	
		
			
				|  |  | -},
 | 
	
		
			
				|  |  | +fn: function (aClass){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +var $1,$2,$3;
 | 
	
		
			
				|  |  | +$1=smalltalk.send(aClass,"_isMetaclass",[]);
 | 
	
		
			
				|  |  | +if(smalltalk.assert($1)){
 | 
	
		
			
				|  |  | +smalltalk.send(self,"_error_",[smalltalk.send(smalltalk.send(aClass,"_asString",[]),"__comma",[" is a Metaclass and cannot be removed!"])]);
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +smalltalk.send(smalltalk.send(smalltalk.send(aClass,"_methodDictionary",[]),"_values",[]),"_do_",[(function(each){
 | 
	
		
			
				|  |  | +return smalltalk.send(aClass,"_removeCompiledMethod_",[each]);
 | 
	
		
			
				|  |  | +})]);
 | 
	
		
			
				|  |  | +smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(aClass,"_class",[]),"_methodDictionary",[]),"_values",[]),"_do_",[(function(each){
 | 
	
		
			
				|  |  | +return smalltalk.send(smalltalk.send(aClass,"_class",[]),"_removeCompiledMethod_",[each]);
 | 
	
		
			
				|  |  | +})]);
 | 
	
		
			
				|  |  | +smalltalk.send(self,"_basicDelete_",[smalltalk.send(aClass,"_name",[])]);
 | 
	
		
			
				|  |  | +$2=smalltalk.send((smalltalk.ClassRemoved || ClassRemoved),"_new",[]);
 | 
	
		
			
				|  |  | +smalltalk.send($2,"_theClass_",[aClass]);
 | 
	
		
			
				|  |  | +$3=smalltalk.send($2,"_yourself",[]);
 | 
	
		
			
				|  |  | +smalltalk.send(smalltalk.send((smalltalk.SystemAnnouncer || SystemAnnouncer),"_current",[]),"_announce_",[$3]);
 | 
	
		
			
				|  |  | +return self},
 | 
	
		
			
				|  |  |  args: ["aClass"],
 | 
	
		
			
				|  |  | -source: "removeClass: aClass\x0a\x09aClass isMetaclass ifTrue: [self error: aClass asString, ' is a Metaclass and cannot be removed!'].\x0a\x09aClass methodDictionary values do: [:each |\x0a\x09\x09aClass removeCompiledMethod: each].\x0a\x09aClass class methodDictionary values do: [:each |\x0a\x09\x09aClass class removeCompiledMethod: each].\x0a\x09self basicDelete: aClass name",
 | 
	
		
			
				|  |  | -messageSends: ["ifTrue:", "error:", ",", "asString", "isMetaclass", "do:", "removeCompiledMethod:", "values", "methodDictionary", "class", "basicDelete:", "name"],
 | 
	
		
			
				|  |  | -referencedClasses: []
 | 
	
		
			
				|  |  | +source: "removeClass: aClass\x0a\x09aClass isMetaclass ifTrue: [self error: aClass asString, ' is a Metaclass and cannot be removed!'].\x0a    \x0a\x09aClass methodDictionary values do: [:each |\x0a\x09\x09aClass removeCompiledMethod: each].\x0a        \x0a\x09aClass class methodDictionary values do: [:each |\x0a\x09\x09aClass class removeCompiledMethod: each].\x0a        \x0a\x09self basicDelete: aClass name.\x0a    \x0a    SystemAnnouncer current\x0a    \x09announce: (ClassRemoved new\x0a        \x09theClass: aClass;\x0a            yourself)",
 | 
	
		
			
				|  |  | +messageSends: ["ifTrue:", "error:", ",", "asString", "isMetaclass", "do:", "removeCompiledMethod:", "values", "methodDictionary", "class", "basicDelete:", "name", "announce:", "theClass:", "new", "yourself", "current"],
 | 
	
		
			
				|  |  | +referencedClasses: ["ClassRemoved", "SystemAnnouncer"]
 | 
	
		
			
				|  |  |  }),
 | 
	
		
			
				|  |  |  smalltalk.Smalltalk);
 | 
	
		
			
				|  |  |  
 |