#include <iostream>
struct abc {
int _a{0};
abc() = delete;
abc(int){ std::cout<<"ctor\n"; }
abc(const abc&){std::cout<<"copy ctor\n";}
abc& operator=(const abc&){std::cout<<"copy =\n"; return *this; }
abc(abc&&) = delete;
abc& operator=(abc&&) = delete;
};
int main() {
abc a(1);
abc b(2);
abc c = a;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKc3RydWN0IGFiYyB7CglpbnQgX2F7MH07CgkKCWFiYygpID0gZGVsZXRlOwoJYWJjKGludCl7IHN0ZDo6Y291dDw8ImN0b3JcbiI7IH0KCQoJYWJjKGNvbnN0IGFiYyYpe3N0ZDo6Y291dDw8ImNvcHkgY3RvclxuIjt9CglhYmMmIG9wZXJhdG9yPShjb25zdCBhYmMmKXtzdGQ6OmNvdXQ8PCJjb3B5ID1cbiI7IHJldHVybiAqdGhpczsgfQoJCglhYmMoYWJjJiYpID0gZGVsZXRlOwoJYWJjJiBvcGVyYXRvcj0oYWJjJiYpID0gZGVsZXRlOwp9OwoKaW50IG1haW4oKSB7CglhYmMgYSgxKTsKCQoJYWJjIGIoMik7CglhYmMgYyA9IGE7Cn0=