docs: def base64_process(**kwargs):
      """
      Process base64 file io
      """
  
      str_fileToSave      = ""
      str_fileToRead      = ""
      str_action          = "encode"
      data                = None
  
      for k,v in kwargs.items():
          if k == 'action':           str_action          = v
          if k == 'payloadBytes':     data                = v
          if k == 'payloadFile':      str_fileToRead      = v
          if k == 'saveToFile':       str_fileToSave      = v
          # if k == 'sourcePath':       str_sourcePath      = v
  
      if str_action       == "encode":
          # Encode the contents of the file at targetPath as ASCII for transmission
          if len(str_fileToRead):
              with open(str_fileToRead, 'rb') as f:
                  data            = f.read()
                  f.close()
          data_b64            = base64.b64encode(data)
          with open(str_fileToSave, 'wb') as f:
              f.write(data_b64)
              f.close()
          return {
              'msg':              'Encode successful',
              'fileProcessed':    str_fileToSave,
              'status':           True
              # 'encodedBytes':     data_b64
          }
  
      if str_action       == "decode":
         # if len(data) % 4:
              # not a multiple of 4, add padding:
              # data += '=' * (4 - len(data) % 4)
  
          # adding 3 padding = will never succumb to the TypeError and will always produce the same result.
          # https://gist.github.com/perrygeo/ee7c65bb1541ff6ac770
          bytes_decoded     = base64.b64decode(data + "===")
          with open(str_fileToSave, 'wb') as f:
              f.write(bytes_decoded)
              f.close()
          return {
              'msg':              'Decode successful',
              'fileProcessed':    str_fileToSave,
              'status':           True
              # 'decodedBytes':     bytes_decoded
          }