| 
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -104,7 +104,14 @@
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				// And.. they are moved back to stdext in MSVC 2013 (haven't checked 2012). That
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				// said, use unordered_map for MSVC 2010 and beyond is our safest bet.
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#elif defined(_MSC_VER)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				# if _MSC_VER >= 1600  // Since Visual Studio 2010
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				# if _MSC_VER >= 1900 // Since Visual Studio 2019
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#  define GOOGLE_PROTOBUF_HASH_NAMESPACE std
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#  include <unordered_map>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#  define GOOGLE_PROTOBUF_HASH_MAP_CLASS unordered_map
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#  include <unordered_set>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#  define GOOGLE_PROTOBUF_HASH_SET_CLASS unordered_set
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				# elif _MSC_VER >= 1600  // Since Visual Studio 2010
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#  define GOOGLE_PROTOBUF_HAS_CXX11_HASH
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#  define GOOGLE_PROTOBUF_HASH_COMPARE std::hash_compare
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				# elif _MSC_VER >= 1500  // Since Visual Studio 2008
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -233,7 +240,7 @@ namespace google {
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				      HashFcn hash_function() const { return HashFcn(); }
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    };
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#elif defined(_MSC_VER) && !defined(_STLPORT_VERSION)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#elif defined(_MSC_VER) && _MSC_VER < 1900 && !defined(_STLPORT_VERSION)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    template <typename Key>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    struct hash : public GOOGLE_PROTOBUF_HASH_COMPARE<Key> {
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
			
			 | 
			 | 
			
				
 
 |