#include <iostream>

class A
{
	int n;
	
public:
	A(int& val) : n(val) { std::cout << "A(int&)\n"; }
	A(const int& val=0) : n(val) { std::cout << "A(const int&)\n"; }
	A(const A& val) : n(val.n) { std::cout << "A(const A&)\n"; }
};

int main()
{
	A a = 3;
	return 0;
}