def METHOD_NAME(self, stream_state: Mapping[str, Any] = None) -> Iterator[FileInfo]:
    """
    :yield: url filepath to use in S3File()
    """
    stream_state = self._get_converted_stream_state(stream_state)
    prefix = self._provider.get("path_prefix")
    if prefix is None:
        prefix = ""
    msg = f"Iterating S3 bucket '{self._provider['bucket']}'"
    self.logger.info(msg + f" with prefix: '{prefix}' " if prefix != "" else msg)
    provider = self._provider
    client_config = None
    if S3File.use_aws_account(provider):
        session = boto3session.Session(
            aws_access_key_id=provider["aws_access_key_id"], aws_secret_access_key=provider["aws_secret_access_key"]
        )
    else:
        session = boto3session.Session()
        client_config = Config(signature_version=UNSIGNED)
    client = make_s3_client(provider, config=client_config, session=session)
    ctoken = None
    while True:
        # list_objects_v2 doesn't like a None value for ContinuationToken
        # so we don't set it if we don't have one.
        if ctoken:
            kwargs = dict(
                Bucket=provider["bucket"], Prefix=provider.get("path_prefix", ""), ContinuationToken=ctoken
            )  # type: ignore[unreachable]
        else:
            kwargs = dict(Bucket=provider["bucket"], Prefix=provider.get("path_prefix", ""))
        try:
            response = client.list_objects_v2(**kwargs)
            content = response["Contents"]
        except ClientError as e:
            message = e.response.get("Error", {}).get("Message", {})
            raise AirbyteTracedException(message, message, failure_type=FailureType.config_error)
        except KeyError:
            pass
        else:
            for file in content:
                if self.is_not_folder(file) and self._filter_by_last_modified_date(file, stream_state):
                    yield FileInfo(key=file["Key"], last_modified=file["LastModified"], size=file["Size"])
        ctoken = response.get("NextContinuationToken", None)
        if not ctoken:
            break