code: @Override
    public ImmutableSet<Entry<K, V>> entrySet() {
      ImmutableSet<Entry<K, V>> result = entrySet;
      return (result == null) ? entrySet = createEntrySet() : result;
    }
docs: Returns an immutable set of the mappings in this map. The iteration order is specified by the
  method used to create this map. Typically, this is insertion order.