#include <iostream>
using namespace std;
void _gay();
void _gay2();
void(*gay)() = _gay;
void _gay()
{
printf("_gay\n");
static bool inited = false;
if (!inited)
{
printf("rare stuff here\n");
gay = _gay2;
inited = true;
}
_gay2();
}
void _gay2()
{
printf("_gay2\n");
printf("actual work\n");
}
int main() {
gay();
gay();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCBfZ2F5KCk7CnZvaWQgX2dheTIoKTsKCnZvaWQoKmdheSkoKSA9IF9nYXk7CgoKdm9pZCBfZ2F5KCkKewoJcHJpbnRmKCJfZ2F5XG4iKTsKCXN0YXRpYyBib29sIGluaXRlZCA9IGZhbHNlOwoJaWYgKCFpbml0ZWQpCgl7CgkJcHJpbnRmKCJyYXJlIHN0dWZmIGhlcmVcbiIpOwoJCWdheSA9IF9nYXkyOwoJCWluaXRlZCA9IHRydWU7Cgl9CgkKCV9nYXkyKCk7Cn0KCnZvaWQgX2dheTIoKQp7CglwcmludGYoIl9nYXkyXG4iKTsKCXByaW50ZigiYWN0dWFsIHdvcmtcbiIpOwp9CgoKaW50IG1haW4oKSB7CglnYXkoKTsKCWdheSgpOwoJcmV0dXJuIDA7Cn0=