restructured the app