code: def decode(in_file, out_file=None, mode=None, quiet=False):
      """Decode uuencoded file"""
      #
      # Open the input file, if needed.
      #
      opened_files = []
      if in_file == "-":
          in_file = sys.stdin.buffer
      elif isinstance(in_file, str):
          in_file = open(in_file, "rb")
          opened_files.append(in_file)
  
      try:
          #
          # Read until a begin is encountered or we've exhausted the file
          #
          while True:
              hdr = in_file.readline()
              if not hdr:
                  raise Error("No valid begin line found in input file")
              if not hdr.startswith(b"begin"):
                  continue
              hdrfields = hdr.split(b" ", 2)
              if len(hdrfields) == 3 and hdrfields[0] == b"begin":
                  try:
                      int(hdrfields[1], 8)
                      break
                  except ValueError:
                      pass
          if out_file is None:
              # If the filename isn't ASCII, what's up with that?!?
              out_file = (
                  hdrfields[2].rstrip(b" \t\r\n\f").decode("ascii")
              )
              if os.path.exists(out_file):
                  raise Error(
                      f"Cannot overwrite existing file: {out_file}"
                  )
              if (
                  out_file.startswith(os.sep)
                  or f"..{os.sep}" in out_file
                  or (
                      os.altsep
                      and (
                          out_file.startswith(os.altsep)
                          or f"..{os.altsep}" in out_file
                      )
                  )
              ):
                  raise Error(
                      f"Refusing to write to {out_file} due to directory traversal"
                  )
          if mode is None:
              mode = int(hdrfields[1], 8)
          #
          # Open the output file
          #
          if out_file == "-":
              out_file = sys.stdout.buffer
          elif isinstance(out_file, str):
              fp = open(out_file, "wb")
              os.chmod(out_file, mode)
              out_file = fp
              opened_files.append(out_file)
          #
          # Main decoding loop
          #
          s = in_file.readline()
          while s and s.strip(b" \t\r\n\f") != b"end":
              try:
                  data = binascii.a2b_uu(s)
              except binascii.Error as v:
                  # Workaround for broken uuencoders by /Fredrik Lundh
                  nbytes = (((s[0] - 32) & 63) * 4 + 5) // 3
                  data = binascii.a2b_uu(s[:nbytes])
                  if not quiet:
                      sys.stderr.write("Warning: %s\n" % v)
              out_file.write(data)
              s = in_file.readline()
          if not s:
              raise Error("Truncated input file")
      finally:
          for f in opened_files:
              f.close()
  
file_path: catboost/contrib/tools/python3/src/Lib/uu.py
imports: import binascii
  import os
  import sys
  import warnings
label_desc: Use image node_id 2 for calling a global function with example usage: decode(in_file, out_file, mode, quiet) without return types