fun readLargeInt () = valOf (TextIO.scanStream (LargeInt.scan StringCvt.DEC) TextIO.stdIn) fun findAns 0 f1 f0 = f0 | findAns n f1 f0 = findAns (n - 1) (LargeWord.xorb (f1, f0)) f1 val () = let val f0 = readLargeInt () val f1 = readLargeInt () val n = readLargeInt () val ans = LargeWord.toLargeInt(findAns (n mod 3) (LargeWord.fromLargeInt f1) (LargeWord.fromLargeInt f0)) in print (LargeInt.toString ans ^ "\n") end