   }
 }
 ;
+var Shem = Shem || {};
 """
 
 


imports = (moduleName, names) ->
  validModuleName = validIdentifier moduleName
  for name in names
    validName = validIdentifier name
    jsVarDeclaration validName, (jsAccess validModuleName, validName)

ms.format = ms_format = (ctx, call) ->
  typeTable =

    name: dictName
    params: (map validIdentifier, allFieldNames)
    body: paramAssigns)
  # Not necessary
  # [(jsVarDeclaration dictName, (iife [constrFn, (jsReturn dictName)]))]
  [constrFn]

dictAccessors = (constrName, dictName, fieldNames) ->
