import Control.Monad import Data.Maybe import Data.List eqEdge xs = and $ zipWith (==) xs' (tail xs') where xs' = take 4 (sort xs) dist ((x1,y1),(x2,y2)) = (x2-x1)^2 + (y2-y1)^2 main = do [x1,y1,x2,y2,x3,y3] <- map read . words <$> getLine :: IO [Int] putStrLn $ maybe "-1" (unwords . map show) $ listToMaybe (square (x1,y1) (x2,y2) (x3,y3)) square p1 p2 p3 = do x4 <- [-100..100] y4 <- [-100..100] let p4 = (x4,y4) guard $ eqEdge (map dist [(p1,p2),(p1,p3),(p1,p4),(p2,p3),(p2,p4),(p3,p4)]) return [x4,y4]