integrate all, invoke ok