private Db4objects.Db4o.Internal.ObjectReference Id_add1(Db4objects.Db4o.Internal.ObjectReference newRef) { int cmp = newRef._id - _id; if (cmp < 0) { if (_idPreceding == null) { _idPreceding = newRef; _idSize++; } else { _idPreceding = _idPreceding.Id_add1(newRef); if (_idSubsequent == null) { return(Id_rotateRight()); } return(Id_balance()); } } else { if (cmp > 0) { if (_idSubsequent == null) { _idSubsequent = newRef; _idSize++; } else { _idSubsequent = _idSubsequent.Id_add1(newRef); if (_idPreceding == null) { return(Id_rotateLeft()); } return(Id_balance()); } } } return(this); }