code: def main(args=None):
      """Change the units-per-EM of fonts"""
  
      if args is None:
          import sys
  
          args = sys.argv[1:]
  
      from fontTools.ttLib import TTFont
      from fontTools.misc.cliTools import makeOutputFileName
      import argparse
  
      parser = argparse.ArgumentParser(
          "fonttools ttLib.scaleUpem",
          description="Change the units-per-EM of fonts",
      )
      parser.add_argument("font", metavar="font", help="Font file.")
      parser.add_argument(
          "new_upem",
          metavar="new-upem",
          help="New units-per-EM integer value.",
      )
      parser.add_argument(
          "--output-file",
          metavar="path",
          default=None,
          help="Output file.",
      )
  
      options = parser.parse_args(args)
  
      font = TTFont(options.font)
      new_upem = int(options.new_upem)
      output_file = (
          options.output_file
          if options.output_file is not None
          else makeOutputFileName(
              options.font, overWrite=True, suffix="-scaled"
          )
      )
  
      scale_upem(font, new_upem)
  
      print("Writing %s" % output_file)
      font.save(output_file)
  
imports: from fontTools.ttLib.ttVisitor import TTVisitor
  import fontTools.ttLib
  import fontTools.ttLib.tables.otBase
  import fontTools.ttLib.tables.otTables
  from fontTools.cffLib import VarStoreData
  import fontTools.cffLib.specializer
  from fontTools.varLib import builder
  from fontTools.misc.fixedTools import otRound
  from fontTools.ttLib.tables._g_l_y_f import VarComponentFlags
label_desc: Use image node_id 14 for calling a global function with example usage: main(args) without return types