auto generate directories