shutil needed if not uselink and for flatten