one paramater recursive function