unsure how to do recursive