refactoring obj.tcl