NameSpace copy() { try { final NameSpace clone = (NameSpace) clone(); clone.thisReference = null; clone.variables = clone(variables); clone.methods = clone(methods); clone.importedClasses = clone(importedClasses); clone.importedPackages = clone(importedPackages); clone.importedCommands = clone(importedCommands); clone.importedObjects = clone(importedObjects); clone.importedStatic = clone(importedStatic); clone.names = clone(names); return clone; } catch (CloneNotSupportedException e) { throw new IllegalStateException(e); } }