implementing save_collection