added KeyValuePairSet