#include <iostream>
int main()
{
double tmp = 1.;
double eps;
while(tmp != 0) {
eps = tmp;
tmp /= 2.;
}
if(eps == 0) {
std::cout << "(1)eps is zero!\n";
}
//std::cout << "eps before: " << eps;
if(eps == 0) {
std::cout << "(2)eps is zero!\n";
}
while(eps < 1.) {
tmp = eps;
eps *= 2.;
if(tmp == eps) {
printf("wtf?\n");
}
}
std::cout << "eps after: " << eps;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKaW50IG1haW4oKQp7CiAgICBkb3VibGUgdG1wID0gMS47CiAgICBkb3VibGUgZXBzOwogICAgd2hpbGUodG1wICE9IDApIHsKICAgICAgICBlcHMgPSB0bXA7CiAgICAgICAgdG1wIC89IDIuOwogICAgfQogICAgaWYoZXBzID09IDApIHsKICAgICAgICBzdGQ6OmNvdXQgPDwgIigxKWVwcyBpcyB6ZXJvIVxuIjsKICAgIH0KICAgIC8vc3RkOjpjb3V0IDw8ICJlcHMgYmVmb3JlOiAiIDw8IGVwczsKICAgIGlmKGVwcyA9PSAwKSB7CiAgICAgICAgc3RkOjpjb3V0IDw8ICIoMillcHMgaXMgemVybyFcbiI7CiAgICB9CgogICAgd2hpbGUoZXBzIDwgMS4pIHsKICAgICAgICB0bXAgPSBlcHM7CiAgICAgICAgZXBzICo9IDIuOwogICAgICAgIGlmKHRtcCA9PSBlcHMpIHsKICAgICAgICAgICAgcHJpbnRmKCJ3dGY/XG4iKTsKICAgICAgICB9CiAgICB9CiAgICAKICAgIHN0ZDo6Y291dCA8PCAiZXBzIGFmdGVyOiAiIDw8IGVwczsKfQo=