protected static object[] MarshalArguments(IValue[] arguments) { var args = arguments.Select(x => MarshalIValue(x)).ToArray(); return args; }