fun readLargeInt () = valOf (TextIO.scanStream (LargeInt.scan StringCvt.DEC) TextIO.stdIn) fun largeIntString n = if 0 <= n then LargeInt.toString n else "-" ^ LargeInt.toString (abs n) val () = let val a = readLargeInt () val b = readLargeInt () val c = readLargeInt () val d = readLargeInt () val n = a * c - b * d val m = b * c + a * d in print (largeIntString n ^ " " ^ largeIntString m ^ "\n") end