#include <iostream>
struct A{ int x; A() = default; A(const A& ) = default; A(A&&) = delete; };

void  foo(A &&x){ std::cout<<"&&" <<std::endl; }

void  foo(A &x){ std::cout<<"&" <<std::endl; }

int main() {
	foo(A());
	A a;
	foo(a);
	return 0;
}