updated to move whole length if direction is the same
stuff happened
make fixings