Added implementation for copy constructor