Move invokeAction into own object