def METHOD_NAME(
    self, func_name: str, num_inputs: Optional[int] = 0, param_names: List[str] = None
) -> VMFuncScope:
    """annotate a VM function."""
    _ffi_api.ExecBuilderEmitFunction(self, func_name, num_inputs, param_names)  # type: ignore
    return VMFuncScope(lambda: _ffi_api.ExecBuilderEndFunction(self, func_name))  # type: ignore