code: public static SymbolTable initialSymtab(_Private_LocalSymbolTableFactory lstFactory,
                                              SymbolTable defaultSystemSymtab,
                                              SymbolTable... imports)
      {
          if (imports == null || imports.length == 0)
          {
              return defaultSystemSymtab;
          }
  
          if (imports.length == 1 && imports[0].isSystemTable())
          {
              return imports[0];
          }
  
          return lstFactory.newLocalSymtab(defaultSystemSymtab, imports);
      }
docs: Returns a minimal symtab that, either system or local depending on the
  given values, that supports representation as an IonStruct. If the
  imports are empty, the default system symtab is returned.
  
  @param lstFactory
  the factory to use to build the local symbol table, never null
  @param defaultSystemSymtab
  the default system symtab, which will be used if the first
  import in {@code imports} isn't a system symtab, never null
  @param imports
  the set of shared symbol tables to import; may be null or empty.
  The first (and only the first) may be a system table, in which case the
  {@code defaultSystemSymtab} is ignored.