only can complete action once