[#bsl-unordered_multimap-0e] = xref:bsl.adoc[bsl]::xref:bsl/unordered_multimap-0b0.adoc[unordered_multimap<KEY, VALUE, HASH, EQUAL, ALLOCATOR>] :relfileprefix: ../ :mrdocs: Deduce the template parameters `KEY` and `VALUE` from the `value_type` of the initializer_list supplied to the constructor of `unordered_multimap`. Deduce the template parameters `HASH`, `EQUAL` and `ALLOCATOR` from the other parameters supplied to the constructor of `unordered_multimap`. This deduction guide does not participate unless: (1) the supplied `HASH` is invokable with a `KEY`, (2) the supplied `EQUAL` is invokable with two `KEY`s, and (3) the supplied allocator meets the requirements of a standard allocator. == Synopsis Declared in `<bslstl_unorderedmultimap.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class KEY, class VALUE, class HASH = xref:bsl/hash-06.adoc[bsl::hash<KEY>], class EQUAL = xref:bsl/equal_to-0d.adoc[bsl::equal_to<KEY>], class ALLOCATOR = xref:bsl/allocator-0df.adoc[bsl::allocator<bsl::pair<KEY const, VALUE>>]> requires std::is_invocable_v<HASH, const KEY &> && std::is_invocable_v<EQUAL, const KEY &, const KEY &> && bsl::IsStdAllocator_v<ALLOCATOR> xref:bsl/unordered_multimap-0b0.adoc[unordered_multimap<KEY, VALUE, HASH, EQUAL, ALLOCATOR>]( std::initializer_list<bsl::pair<KEY const, VALUE>>, bsl::allocator_traits<ALLOCATOR>::size_type, HASH, EQUAL, ALLOCATOR) -> xref:bsl/unordered_multimap-0b0.adoc[unordered_multimap<KEY, VALUE, HASH, EQUAL, ALLOCATOR>]; ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#