Right
char c, *Left, *Right;
Right = FullPath+Length - 1;
while (Left < Right)
*Left++ = *Right;
*Right-- = c;
if (Right(current) == (ITEM *)0) {
current = Right(current);
Right(i) = (c == Cols(m)-1 || n == Nitems(m)-1) ? (ITEM *)0 :
Right(IthItem(m, left)) = IthItem(m, n);
Right(i) = (ITEM *) NULL;
Right(i) = IthItem(m, n + Rows(m));
Right(IthItem(m, left)) = IthItem(m, n);
if ((j = Right(j)) != sj) {