waiting_once approach change