#include <iostream>

template <typename T>
struct vec {
	void add(const T& a) {
		T t(a);
	}

	void add(T&& a) {
		
	}
};

struct mov {
	mov() = default;
	mov(const mov&) = delete;
	mov(mov&&) = default;
};

int main() {
	mov m;
	
	vec<mov> v;
	
	v.add(std::move(m));

	return 0;
}