reorganized structure of repo