more generic directory structure