add function invocation pattern