c=t=1;1.upto(50){|n|c<<=50;u=-t/c%2**n;p -~u/n;t+=c**9/~-c*u}