import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;

public class Euler751 {
    static final MathContext MC = new MathContext(100, RoundingMode.HALF_UP);

    static BigDecimal tauFromTheta(BigDecimal theta, int fracDigits) {
        BigDecimal b = theta;
        int a1 = b.intValue();

        StringBuilder repr = new StringBuilder();
        repr.append(a1).append(".");

        StringBuilder frac = new StringBuilder(fracDigits + 32);

        while (frac.length() < fracDigits) {
            BigDecimal a = new BigDecimal(b.toBigInteger(), MC);
            BigDecimal diff = b.subtract(a, MC).add(BigDecimal.ONE, MC);
            b = a.multiply(diff, MC);

            BigDecimal nextA = new BigDecimal(b.toBigInteger(), MC);
            frac.append(nextA.toBigInteger().toString());
        }

        frac.setLength(fracDigits);
        repr.append(frac);
        return new BigDecimal(repr.toString(), MC);
    }

    static BigDecimal fixedPointTheta() {
        BigDecimal theta = new BigDecimal("2.2", MC);
        for (int i = 0; i < 30; ++i) {
            theta = tauFromTheta(theta, 80);
        }
        return theta;
    }

    public static String solve() {
        BigDecimal theta = fixedPointTheta();
        BigDecimal rounded = theta.setScale(24, RoundingMode.HALF_UP);
        return rounded.toPlainString();
    }

    public static void main(String[] args) {
        System.out.println(solve());
    }
}
