#include <iostream>
#include <vector>
using namespace std;

struct Your_Object
{
	Your_Object& operator=(const Your_Object& other)
	{
		// Write a proper assignment operator here
		cout << "hello from assignment operator"<<endl;
		return *this;
	}
};

int main() {
	
	Your_Object nullObj;
	std::vector<Your_Object> vec;
	vec.reserve(10); // Creates 10 empty objects calling default constructors
	
	Your_Object space5, space3; // Two objects to put in space5 and space3
	
	// Put objects in space 5 and 3
	vec[5] = space5;
	vec[3] = space3;
	
	// Move object in space 5 to another place
	vec[1] = vec[5];
	
	return 0;
}