Si, si de ambos extremos lo puedes hacer, pero he hecho la versión de izquierda y derecha y viceversa, en un solo script.
Lo he optimizado en medida de lo posible sin tampoco romperme la cabeza todo lo posible.
La cosa es que para arriba y abajo, es totalmente análogo, si quieres te pongo un par de anotaciones de como tendrías que ponerlo.
Y eso, ya lo tengo listo. Solo que no esta testeado, ¿te lo paso así tal cual o cuando tengas las cosas insertadas lo testeo?