code: def Main():
    
    multiprocessing.freeze_support()
  
    input_reader = cli_tools.StdinInputReader()
    tool = psort_tool.PsortTool(input_reader=input_reader)
  
    if not tool.ParseArguments():
      return False
  
    have_list_option = False
    if tool.list_analysis_plugins:
      tool.ListAnalysisPlugins()
      have_list_option = True
  
    if tool.list_output_modules:
      tool.ListOutputModules()
      have_list_option = True
  
    if tool.list_language_identifiers:
      tool.ListLanguageIdentifiers()
      have_list_option = True
  
    if tool.list_timezones:
      tool.ListTimeZones()
      have_list_option = True
  
    if have_list_option:
      return True
  
    try:
      tool.ProcessStorage()
  
    except (KeyboardInterrupt, errors.UserAbort):
      logging.warning('Aborted by user.')
      return False
  
    except errors.BadConfigOption as exception:
      logging.warning(exception)
      return False
  
    return True
docs: The main function.