full app restructuring