docs: def _format_data(data):
          # type: (Union[str, IO]) -> Union[Tuple[None, str], Tuple[Optional[str], IO, str]]
          """Format field data according to whether it is a stream or
          a string for a form-data request.
  
          :param data: The request field data.
          :type data: str or file-like object.
          """
          if hasattr(data, 'read'):
              data = cast(IO, data)
              data_name = None
              try:
                  if data.name[0] != '<' and data.name[-1] != '>':
                      data_name = os.path.basename(data.name)
              except (AttributeError, TypeError):
                  pass
              return (data_name, data, "application/octet-stream")
          return (None, cast(str, data))