execute (not invoke)