we must pass the block given to the retrieve method as well