#include<bits/stdc++.h>
#define IOF ios::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
#define ll long long
using namespace std;
class c{
int cnt;
public:
c():cnt(0){cout << "default\n";}
c(int x):cnt(x){cout << "param\n";}
int get_cnt(){return cnt;}
c operator++(){
cout << "pre\n";
return c(++cnt);
}
c operator++(int){
cout << "post\n";
return c(cnt++);
}
void operator = (c tmp){
cout << "equal\n";
cnt = tmp.cnt;
}
~c(){
cout << "des\n";
}
};
int main() {
c ob;
c ob1(3);
ob++;
++ob;
ob1++;
cout << ob.get_cnt() << ' ' << ob1.get_cnt() << '\n';
ob = ob1++;
cout << ob.get_cnt() << ' ' << ob1.get_cnt() << '\n';
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBJT0YgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpLCBjaW4udGllKG51bGxwdHIpLCBjb3V0LnRpZShudWxscHRyKTsKI2RlZmluZSBsbCBsb25nIGxvbmcKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNsYXNzIGN7CiAgaW50IGNudDsKICBwdWJsaWM6CiAgYygpOmNudCgwKXtjb3V0IDw8ICJkZWZhdWx0XG4iO30KICBjKGludCB4KTpjbnQoeCl7Y291dCA8PCAicGFyYW1cbiI7fQogIGludCBnZXRfY250KCl7cmV0dXJuIGNudDt9CiAgYyBvcGVyYXRvcisrKCl7CiAgICBjb3V0IDw8ICJwcmVcbiI7CiAgICByZXR1cm4gYygrK2NudCk7CiAgfQogIGMgb3BlcmF0b3IrKyhpbnQpewogICAgY291dCA8PCAicG9zdFxuIjsKICAgIHJldHVybiBjKGNudCsrKTsKCiAgfQogIHZvaWQgb3BlcmF0b3IgPSAoYyB0bXApewogICAgY291dCA8PCAiZXF1YWxcbiI7CiAgICBjbnQgPSB0bXAuY250OwogIH0KfmMoKXsKICBjb3V0IDw8ICJkZXNcbiI7Cn0KICAKfTsKCmludCBtYWluKCkgewpjIG9iOwpjIG9iMSgzKTsKb2IrKzsKKytvYjsKb2IxKys7CmNvdXQgPDwgb2IuZ2V0X2NudCgpIDw8ICcgJyA8PCBvYjEuZ2V0X2NudCgpICA8PCAnXG4nOwpvYiA9IG9iMSsrOwpjb3V0IDw8IG9iLmdldF9jbnQoKSA8PCAnICcgPDwgb2IxLmdldF9jbnQoKSAgPDwgJ1xuJzsKCgpyZXR1cm4gMDsKfQo=