restructuring the framework