restructured src layout