H, W = map(int, input().split()) A, B = map(int, input().split()) R1, C1, R2, C2 = map(int, input().split()) P, Q = map(int, input().split()) def move(i, j, i2, j2): return abs(i - i2) + abs(j - j2) ans = 0 # 接近 if R1 <= A <= R2 and C1 <= B <= C2: # すでに領域にいる ans += 0 X, Y = A, B elif R1 <= A <= R2: X = A if B < C1: ans += C1 - B Y = C1 else: ans += B - C2 Y = C2 elif C1 <= B <= C2: Y = B if A < R1: ans += R1 - A X = R1 else: ans += A - R2 X = R2 else: if A < R1 and B < C1: ans += move(A, B, R1, C1) X, Y = R1, C1 elif A < R1 and B > C2: ans += move(A, B, R1, C2) X, Y = R1, C2 elif A > R2 and B < C1: ans += move(A, B, R2, C1) X, Y = R2, C1 else: ans += move(A, B, R2, C2) X, Y = R2, C2 # 処分 ans += move(X, Y, P, Q) # 帰還 ans += move(P, Q, A, B) print(ans)