#include <iostream>
#include <iomanip>
using namespace std;
class Ref
{
int &p;
public:
Ref(int&p):p(p){}
void out() { cout << (void*)&p << endl; }
};
class Val
{
int p;
public:
Val(int&p):p(p){}
void out() { cout << (void*)&p << endl; }
};
int main(int argc, char * argv[])
{
int x = 5;
cout << (void*)&x << endl;
Ref r(x);
Val v(x);
r.out();
v.out();
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW9tYW5pcD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpjbGFzcyBSZWYKewogICAgaW50ICZwOwpwdWJsaWM6CiAgICBSZWYoaW50JnApOnAocCl7fQogICAgdm9pZCBvdXQoKSB7IGNvdXQgPDwgKHZvaWQqKSZwIDw8IGVuZGw7IH0KfTsKCmNsYXNzIFZhbAp7CiAgICBpbnQgcDsKcHVibGljOgogICAgVmFsKGludCZwKTpwKHApe30KICAgIHZvaWQgb3V0KCkgeyBjb3V0IDw8ICh2b2lkKikmcCA8PCBlbmRsOyB9Cn07CgoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiBhcmd2W10pCnsKICAgIGludCB4ID0gNTsKICAgIGNvdXQgPDwgKHZvaWQqKSZ4IDw8IGVuZGw7CiAgICBSZWYgcih4KTsKICAgIFZhbCB2KHgpOwogICAgci5vdXQoKTsKICAgIHYub3V0KCk7Cn0K