fun readLargeInt () = valOf (TextIO.scanStream (LargeInt.scan StringCvt.DEC) TextIO.stdIn) fun findAns 1 w = w | findAns d w = findAns (d - 1) (w - (w div (d * d))) val () = let val w = readLargeInt () val d = readLargeInt () val ans = findAns d w in print (LargeInt.toString ans) end