#include <iostream>
#include <string>
#include <cstdlib>
#include <cassert>
#include <ctime>
#include <map>
using namespace std;
struct SBLnode {
string name;
SBLnode *next;
SBLnode * left, * right;
};
struct Queue {
SBLnode * first, * last;
};
typedef SBLnode* BST;
struct SBL {
Queue q;
BST root;
};
static const struct SBL EmptyStruct = { };
void SBL_init (SBL& sbl) {
sbl = EmptyStruct;
}
int main() {
// your code goes here
struct SBLnode initial;
initial.name = "initial";
struct Queue q;
q.first = &initial;
cout << q.first->name << endl;
struct SBL testInit;
testInit.q = q;
cout << testInit.q.first->name << endl;
SBL_init(testInit);
cout << testInit.q.first->name << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgogICAgI2luY2x1ZGUgPHN0cmluZz4KICAgICNpbmNsdWRlIDxjc3RkbGliPgogICAgI2luY2x1ZGUgPGNhc3NlcnQ+CiAgICAjaW5jbHVkZSA8Y3RpbWU+CiAgICAjaW5jbHVkZSA8bWFwPgogICAgCiAgICB1c2luZyBuYW1lc3BhY2Ugc3RkOwogICAgCiAgICAKICAgIHN0cnVjdCBTQkxub2RlIHsKICAgIAlzdHJpbmcgbmFtZTsKICAgIAlTQkxub2RlICpuZXh0OwogICAgCVNCTG5vZGUgKiBsZWZ0LCAqIHJpZ2h0OwogICAgfTsKICAgIAogICAgc3RydWN0IFF1ZXVlIHsKICAgIAlTQkxub2RlICogZmlyc3QsICogbGFzdDsKICAgIH07CiAgICAKICAgIHR5cGVkZWYgU0JMbm9kZSogQlNUOwogICAgCiAgICAKICAgIHN0cnVjdCBTQkwgewogICAgCVF1ZXVlIHE7CiAgICAJQlNUIHJvb3Q7CiAgICB9OwoKICAgIHN0YXRpYyBjb25zdCBzdHJ1Y3QgU0JMIEVtcHR5U3RydWN0ID0geyB9OwogICAgCiAgICB2b2lkIFNCTF9pbml0IChTQkwmIHNibCkgewogICAgCQogICAgCXNibCA9IEVtcHR5U3RydWN0OwogICAgCQogICAgfQoKaW50IG1haW4oKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglzdHJ1Y3QgU0JMbm9kZSBpbml0aWFsOwoJaW5pdGlhbC5uYW1lID0gImluaXRpYWwiOwoJc3RydWN0IFF1ZXVlIHE7CglxLmZpcnN0ID0gJmluaXRpYWw7Cgljb3V0IDw8IHEuZmlyc3QtPm5hbWUgPDwgZW5kbDsKCXN0cnVjdCBTQkwgdGVzdEluaXQ7Cgl0ZXN0SW5pdC5xID0gcTsKCWNvdXQgPDwgdGVzdEluaXQucS5maXJzdC0+bmFtZSA8PCBlbmRsOwoJU0JMX2luaXQodGVzdEluaXQpOwoJY291dCA8PCB0ZXN0SW5pdC5xLmZpcnN0LT5uYW1lIDw8IGVuZGw7CgoJcmV0dXJuIDA7Cn0=