public virtual void Put(int index, Scriptable start, object value) { if (start == this) { start = prototype; } prototype.Put(index, start, value); }