uses data_directory instead of setup script