#include <iostream>
struct loop_counter {
loop_counter(int v) : val_(v) {}
explicit operator bool() const { return true; }
operator int() const { return val_; }
private:
int val_;
};
#define LOOP(begin, end, cnt_name) \
for(int cnt_name##__ = begin ; cnt_name##__ < end ; ++cnt_name##__) \
if(const loop_counter cnt_name = cnt_name##__)
int main(int argc, char** argv) {
LOOP(0, 10, i) {
//i = 10; // !!!yamero!!!
std::cout << i << std::endl;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKc3RydWN0IGxvb3BfY291bnRlciB7CiAgbG9vcF9jb3VudGVyKGludCB2KSA6IHZhbF8odikge30KICBleHBsaWNpdCBvcGVyYXRvciBib29sKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogICAgICAgICAgIG9wZXJhdG9yIGludCgpICBjb25zdCB7IHJldHVybiB2YWxfOyB9Cgpwcml2YXRlOgogIGludCB2YWxfOwp9OwoKI2RlZmluZSBMT09QKGJlZ2luLCBlbmQsIGNudF9uYW1lKSBcCiAgZm9yKGludCBjbnRfbmFtZSMjX18gPSBiZWdpbiA7IGNudF9uYW1lIyNfXyA8IGVuZCA7ICsrY250X25hbWUjI19fKSBcCiAgICBpZihjb25zdCBsb29wX2NvdW50ZXIgY250X25hbWUgPSBjbnRfbmFtZSMjX18pCgppbnQgbWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpIHsKICBMT09QKDAsIDEwLCBpKSB7CiAgICAvL2kgPSAxMDsgLy8gISEheWFtZXJvISEhCiAgICBzdGQ6OmNvdXQgPDwgaSA8PCBzdGQ6OmVuZGw7CiAgfQp9