updated layout and file structure