implementing upward neighbour change
implementing downward neighbour change