v_parent
c->v_parent = p;
pp = p->v_parent;
c->v_parent = pp;
(t)->v_parent = (p)->v_parent,\
((p)->v_left = t->v_right) ? (t->v_right->v_parent = (p)) : 0,\
(t->v_right = (p))->v_parent = t,\
(t)->v_parent = (p)->v_parent,\
((p)->v_right = t->v_left) ? (t->v_left->v_parent = (p)) : 0,\
(t->v_left = (p))->v_parent = t,\
for (; (pp = p->v_parent) != NULL; p = pp, f = ff) {
if (p->v_parent == 0) /* is it the header? */
p = p->v_parent;