+/* Create a copy of SOURCE but with the default value of UP. */
+
+static INTERVAL
+reproduce_interval (INTERVAL source)
+{
+ register INTERVAL target = make_interval ();
+
+ target->total_length = source->total_length;
+ target->position = source->position;
+
+ copy_properties (source, target);
+
+ if (! NULL_LEFT_CHILD (source))
+ set_interval_left (target, reproduce_tree (source->left, target));
+ if (! NULL_RIGHT_CHILD (source))
+ set_interval_right (target, reproduce_tree (source->right, target));
+
+ return target;
+}
+