Node<T> (@NotNull Node<T> n) { IntervalNode<T> root = (IntervalNode<T>)n; pushDelta(root.getParent()); pushDelta(root); while (root.getRight() != null) { root = root.getRight(); pushDelta(root); } return root; }