public Option <ListZipper <A> > MoveLeftN(int n) { return(n == 0 ? this.Some() : n < 0 ? MoveRightN(Math.Abs(n)) : MoveLeft.SelectMany(z => z.MoveLeftN(n - 1))); }