add prepare_data