restructure to app