fun readInt () = valOf (TextIO.scanStream (Int.scan StringCvt.DEC) TextIO.stdIn) fun pow (x, y) = let fun loop n = if n = 0 then 1.0 else x * loop (n - 1) in loop y end val () = let val p = readInt () val c = readInt () val primeDice = (Real.fromInt (2 + 3 + 5 + 7 + 11 + 13)) / 6.0 val compositeDice = (Real.fromInt (4 + 6 + 8 + 9 + 10 + 12)) / 6.0 val ans = pow (primeDice, p) * pow (compositeDice, c) in print ((Real.fmt (StringCvt.FIX (SOME 9)) ans) ^ "\n") end