override public Obj UpdatedAt(long idx, Obj obj) { if (idx < 0 | idx >= length) { Miscellanea.SoftFail("Invalid sequence index"); } int offset = Offset(); Obj[] newItems = new Obj[length]; for (int i = 0; i < length; i++) { newItems[i] = i == idx ? obj : items[offset + i]; } return(new MasterSeqObj(newItems)); }