add complete_all method