typedef int (*GetterFunc)(void);
typedef void (*SetterFunc)(int);
typedef struct
{
GetterFunc GetFoo;
GetterFunc GetBar;
SetterFunc SetFoo;
SetterFunc SetBar;
} Singleton;
Singleton* GetSingleton();
int main(void)
{
Singleton s1;
Singleton s2;
}
dHlwZWRlZiBpbnQgKCpHZXR0ZXJGdW5jKSh2b2lkKTsKdHlwZWRlZiB2b2lkICgqU2V0dGVyRnVuYykoaW50KTsKCnR5cGVkZWYgc3RydWN0CnsKCUdldHRlckZ1bmMgR2V0Rm9vOwoJR2V0dGVyRnVuYyBHZXRCYXI7CglTZXR0ZXJGdW5jIFNldEZvbzsKCVNldHRlckZ1bmMgU2V0QmFyOwp9IFNpbmdsZXRvbjsKClNpbmdsZXRvbiogR2V0U2luZ2xldG9uKCk7CgoKaW50IG1haW4odm9pZCkKewoJU2luZ2xldG9uIHMxOwoJU2luZ2xldG9uIHMyOwp9Cg==