code: def run(args: List[str],
          get_output: bool = False,
          encoding: str = sys.getdefaultencoding()) -> Tuple[str, str]:
      
      printable = " ".join(shlex.quote(x) for x in args).replace("\n", r"\n")
      log.debug("Running external command: {}", printable)
      if get_output:
          p = subprocess.run(args, stdout=subprocess.PIPE,
                             stderr=subprocess.PIPE, check=True)
          stdout, stderr = p.stdout.decode(encoding), p.stderr.decode(encoding)
      else:
          subprocess.check_call(args)
          stdout, stderr = "", ""
      return stdout, stderr
docs: Run an external command +/- return the results.
      Returns a ``(stdout, stderr)`` tuple (both are blank strings if the output
      wasn't wanted).