| 
					
				 | 
			
			
				@@ -117,7 +117,8 @@ define(['require', './compatibility'], function (require) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return child; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    var globals = {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    var jsGlobals = new Function("return this")(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    var globals = Object.create(jsGlobals); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     globals.SmalltalkSettings = {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     var api = {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     var brikz = new Brikz(api); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -485,20 +486,21 @@ define(['require', './compatibility'], function (require) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (!superclass || superclass == nil) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 superclass = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (globals[className] && globals[className].superclass == superclass) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                //            globals[className].superclass = superclass; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                globals[className].iVarNames = iVarNames || []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (pkg) globals[className].pkg = pkg; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var theClass = globals.hasOwnProperty(className) && globals[className]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (theClass && theClass.superclass == superclass) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                //            theClass.superclass = superclass; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                theClass.iVarNames = iVarNames || []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (pkg) theClass.pkg = pkg; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (fn) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    fn.prototype = globals[className].fn.prototype; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    globals[className].fn = fn; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    fn.prototype = theClass.fn.prototype; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    theClass.fn = fn; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     fn.prototype.constructor = fn; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (globals[className]) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    st.removeClass(globals[className]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (theClass) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    st.removeClass(theClass); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                globals[className] = klass({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                theClass = globals[className] = klass({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     className: className, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     superclass: superclass, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     pkg: pkg, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -507,11 +509,11 @@ define(['require', './compatibility'], function (require) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     wrapped: wrapped 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                addSubclass(globals[className]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                addSubclass(theClass); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            classes.addElement(globals[className]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            org.addOrganizationElement(pkg, globals[className]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            classes.addElement(theClass); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            org.addOrganizationElement(pkg, theClass); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         st.removeClass = function (klass) { 
			 |