on_retrieve