restructuring dependecies