code: def main(self):
          
          assert self.params.func, "No subcommand defined in `ElastiCluster.main()"
          try:
              return self.params.func()
          except Exception as err:
              log.error("Error: %s", err)
              if self.params.verbose > 2:
                  import traceback
                  traceback.print_exc()
              print("Aborting because of errors: {err}.".format(err=err))
              sys.exit(1)
docs: This is the main entry point of the ElastiCluster CLI.
  
          First the central configuration is created, which can be altered
          through the command line interface. Then the given command from
          the command line interface is called.