docs: public SoySauce build() {
      if (scopedData == null) {
        scopedData = new SoySimpleScope();
      }
      if (loader == null) {
        loader = SoySauceBuilder.class.getClassLoader();
      }
      return new SoySauceImpl(
          new CompiledTemplates(readDelTemplatesFromMetaInf(loader), loader),
          scopedData.enterable(),
          userFunctions, // We don't need internal functions because they only matter at compile time
          ImmutableMap.<String, SoyPrintDirective>builder()
              // but internal directives are still required at render time.
              // in order to handle escaping logging function invocations.
              .putAll(InternalPlugins.internalDirectiveMap(scopedData))
              .putAll(userDirectives)
              .build(),
          userPluginInstances);
    }