import java.math.BigInteger;
import java.util.Scanner;
import java.util.stream.IntStream;
class Ideone
{
IntStream.
of(2,
3,
5,
7,
11,
13,
17,
19,
23,
29,
31,
37,
41,
43,
47,
53,
59,
61,
67,
71,
73,
79,
83,
89,
97,
101,
103,
107,
109,
113,
127,
131,
137,
139,
149,
151,
157,
163,
167,
173).
mapToObj(BigInteger::valueOf
).
toArray(BigInteger[]::new);
public static void main
(String[] args
) {
try (Scanner in
= new Scanner
(System.
in)) { while (in.hasNextLong()) {
solve(in.nextLong());
}
}
}
static void solve(long m)
{
System.
out.
printf("%d -> %d%n", m, ans
); }
{
for (int i = 1; i <= fn; i++) {
nn = nn.multiply(primes[f]);
if (ans != null && nn.compareTo(ans) > 0) return ans;
long ns = solutions * (i * 2 + 1) - i;
if (ns > m) {
return ans == null || nn.compareTo(ans) < 0 ? nn : ans;
}
ans = solve(m, ns, nn, ans, f + 1, i);
}
return ans;
}
}
aW1wb3J0IGphdmEubWF0aC5CaWdJbnRlZ2VyOwppbXBvcnQgamF2YS51dGlsLlNjYW5uZXI7CmltcG9ydCBqYXZhLnV0aWwuc3RyZWFtLkludFN0cmVhbTsKCmNsYXNzIElkZW9uZQp7CiAgICBwcml2YXRlIHN0YXRpYyBCaWdJbnRlZ2VyW10gcHJpbWVzID0gCiAgICAgICAgICAgIEludFN0cmVhbS5vZigyLDMsNSw3LDExLDEzLDE3LDE5LDIzLDI5LDMxLDM3LDQxLDQzLDQ3LDUzLDU5LDYxLDY3LDcxLDczLDc5LDgzLDg5LDk3LDEwMSwxMDMsMTA3LDEwOSwxMTMsMTI3LDEzMSwxMzcsMTM5LDE0OSwxNTEsMTU3LDE2MywxNjcsMTczKS5tYXBUb09iaihCaWdJbnRlZ2VyOjp2YWx1ZU9mKS50b0FycmF5KEJpZ0ludGVnZXJbXTo6bmV3KTsKCiAgICAKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpCiAgICB7CiAgICAgICAgdHJ5IChTY2FubmVyIGluID0gbmV3IFNjYW5uZXIoU3lzdGVtLmluKSkgewogICAgICAgICAgICB3aGlsZSAoaW4uaGFzTmV4dExvbmcoKSkgewogICAgICAgICAgICAgICAgc29sdmUoaW4ubmV4dExvbmcoKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICAKICAgIAogICAgc3RhdGljIHZvaWQgc29sdmUobG9uZyBtKQogICAgewogICAgICAgIEJpZ0ludGVnZXIgYW5zID0gbSA8PSAwID8gQmlnSW50ZWdlci5PTkUgOiBzb2x2ZShtLCAxLCBCaWdJbnRlZ2VyLk9ORSwgbnVsbCwgMCwgNjQpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRmKCIlZCAtPiAlZCVuIiwgbSwgYW5zKTsKICAgIH0KICAgIAogICAgCiAgICBzdGF0aWMgQmlnSW50ZWdlciBzb2x2ZShsb25nIG0sIGxvbmcgc29sdXRpb25zLCBCaWdJbnRlZ2VyIG4sIEJpZ0ludGVnZXIgYW5zLCBpbnQgZiwgaW50IGZuKQogICAgewogICAgICAgIEJpZ0ludGVnZXIgbm4gPSBuOwogICAgICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IGZuOyBpKyspIHsKICAgICAgICAgICAgbm4gPSBubi5tdWx0aXBseShwcmltZXNbZl0pOwogICAgICAgICAgICBpZiAoYW5zICE9IG51bGwgJiYgbm4uY29tcGFyZVRvKGFucykgPiAwKSByZXR1cm4gYW5zOwogICAgICAgICAgICAKICAgICAgICAgICAgbG9uZyBucyA9IHNvbHV0aW9ucyAqIChpICogMiArIDEpIC0gaTsKICAgICAgICAgICAgaWYgKG5zID4gbSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGFucyA9PSBudWxsIHx8IG5uLmNvbXBhcmVUbyhhbnMpIDwgMCA/IG5uIDogYW5zOwogICAgICAgICAgICB9CiAgICAgICAgICAgIAogICAgICAgICAgICBhbnMgPSBzb2x2ZShtLCBucywgbm4sIGFucywgZiArIDEsIGkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYW5zOwogICAgfQp9Cg==