+
+MERGE_NODE_WITH_SUBSEQUENT_COVERED_NODES:
+ next = node->next[0];
+ while (next && next->first <= node->last + 1) {
+ if (next->last > node->last)
+ node->last = next->last;
+
+ /* Delete node 'next' */
+ for (i = 0; i < node->level && i < next->level; i++) {
+ node->next[i] = next->next[i];
+ }
+
+ for (; i < next->level; i++) {
+ *update[i] = next->next[i];
+ }
+
+ delete next;
+
+ next = node->next[0];
+ }
+}
+
+void
+CallSet::add(CallNo call_no)
+{
+ this->add(call_no, call_no);