adding a retreat function