public object Invoke(IContext context, object @this, object[] arguments)
{
object newthis = arguments[0];
object[] args = null;
if (arguments.Length > 1)
{
object argvalues = arguments[1];
if (argvalues is ArrayObject)
args = ((ArrayObject)argvalues).ToArray();
else
args = (object[])argvalues;
}
return ((ICallable)@this).Invoke(context, newthis, args);
}