rn_l
pp->rn_l = x;
rn = rn->rn_l;
rn = rn->rn_l;
tt = t->rn_l;
x = x->rn_l;
x = x->rn_l;
t->rn_l = tt;
x = x->rn_l;
tt = t->rn_l;
p->rn_l = t;
t->rn_l = x;
if (tt->rn_p->rn_l == x)
tt->rn_p->rn_l = tt;
x = tp->rn_l;
if (from->rn_p->rn_l == from)
from->rn_p->rn_l = to;
to->rn_l->rn_p = to;
if (tp->rn_l == tt)
tp->rn_l = x;
if (tp->rn_l == tt)
x = tp->rn_l;