public override object callOn(object obj, List args)
{
int origSize = m_orig.@params().sz();
object[] temp = new object[origSize];
m_bound.copyInto(temp, 0, m_bound.sz());
temp[m_bound.sz()] = obj;
args.copyInto(temp, m_bound.sz()+1, temp.Length-m_bound.sz()-1);
return m_orig.callList(new List(Sys.ObjType, temp));
}