code: def main(argv=None):
      
      args = None
      cmd = None
  
      try:
          args = parse_args(argv)
  
          if args.quiet:
              logger.setLevel(logging.CRITICAL)
  
          elif args.verbose:
              logger.setLevel(logging.DEBUG)
  
          cmd = args.func(args)
          ret = cmd.run_cmd()
      except KeyboardInterrupt:
          logger.exception("interrupted by the user")
          ret = 252
      except NotDvcRepoError:
          logger.exception("")
          ret = 253
      except DvcParserError:
          ret = 254
      except Exception:  # pylint: disable=broad-except
          logger.exception("unexpected error")
          ret = 255
  
      Analytics().send_cmd(cmd, args, ret)
  
      return ret
docs: Run dvc CLI command.
  
      Args:
          argv: optional list of arguments to parse. sys.argv is used by default.
  
      Returns:
          int: command's return code.