D='1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991' print((function (f, g, N) if N=="1" then return "0."..D end if N=="10" then return D:sub(1,1).."."..D:sub(2) end if N=="100" then return D:sub(1,2).."."..D:sub(3) end if #N==1 then return f(tonumber(N),0) end if N:sub(2,2)=="0" then return f(tonumber(N:sub(1,1)),1) end return g(tonumber(N:sub(1,1)),tonumber(N:sub(2,2))) end)(function (n, idx) local a={} local t=tonumber(D:sub(#D))*n local c=math.floor(t/10) table.insert(a,1,t%10) for i=#D-1,1,-1 do t=tonumber(D:sub(i,i))*n+c c=math.floor(t/10) table.insert(a,1,t%10) end if c~=0 then table.insert(a,1,c) end if idx+#a-#D==0 then table.insert(a,1,"0.") else table.insert(a,1+idx+#a-#D,".") end return table.concat(a) end, function (m, n) local a={} local t=tonumber(D:sub(#D)) local t2,t1=t*m,t*n local c2,c1=math.floor(t2/10),math.floor(t1/10) table.insert(a,1,t1%10) t=tonumber(D:sub(#D-1,#D-1)) t1=t*n+c1 c1=math.floor(t1/10) table.insert(a,1,(t2+t1)%10) local c=t2%10+t1%10>9 and 1 or 0 t2=t*m+c2 c2=math.floor(t2/10) for i=#D-2,1,-1 do t=tonumber(D:sub(i,i)) t1=t*n+c1 c1=math.floor(t1/10) table.insert(a,1,(t2%10+t1%10+c)%10) c=t2%10+t1%10+c>9 and 1 or 0 t2=t*m+c2 c2=math.floor(t2/10) end table.insert(a,1,t2+c1+c) table.insert(a,1+#a-#D,".") return table.concat(a) end, io.stdin:read("*l")))