generate files if they don't exist