restructuring code submission