Index: trunk/ab5.0/jenga/include/common/Hashmap.h
===================================================================
--- trunk/ab5.0/jenga/include/common/Hashmap.h	(revision 532)
+++ trunk/ab5.0/jenga/include/common/Hashmap.h	(revision 564)
@@ -86,12 +86,36 @@
 	}
 
-	bool IsExist( const std::string &keyName ) const
+	bool IsExistDuplicationKeyName( const std::string &keyName ) const
 	{
 		int key = GetHash( keyName.c_str() );
 
 		if(hashArray[key]){
-			T *temp = hashArray[key];
+			const T *temp = hashArray[key];
 			while( true ){
 				if( temp->IsDuplication( keyName ) )
+				{
+					// 重複している
+					return true;
+				}
+
+				if( temp->GetChainNext() == NULL )
+				{
+					break;
+				}
+				temp = temp->GetChainNext();
+			}
+		}
+
+		return false;
+	}
+
+	bool IsExist( const T* value ) const
+	{
+		int key = GetHash( value->GetKeyName().c_str() );
+
+		if(hashArray[key]){
+			const T *temp = hashArray[key];
+			while( true ){
+				if( temp->IsDuplication( value ) )
 				{
 					// 重複している
