code: private SoyMap newSoyMapFromJavaMap(Map<?, ?> javaMap) {
      Map<SoyValue, SoyValueProvider> map = Maps.newHashMapWithExpectedSize(javaMap.size());
      for (Map.Entry<?, ?> entry : javaMap.entrySet()) {
        map.put(convert(entry.getKey()).resolve(), convertLazy(entry.getValue()));
      }
      return SoyMapImpl.forProviderMap(map);
    }
docs: Creates a Soy map from a Java map. While this is O(n) in the map's shallow size, the Java
  values are converted into Soy values lazily and only once. The keys are converted eagerly.