@throws illegalargumentexception if duplicate keys are provided
@description returns an immutable map containing the given entries, in order.
file : https_github_com_google_guava_git/guava/src/com/google/common/collect/ImmutableMap.java