def find_all_indexes(text, pattern):
    """Return a list of starting indexes of all occurrences of pattern in text,
    or an empty list if not found."""
    assert isinstance(text, str), 'text is not a string: {}'.format(text)
    assert isinstance(pattern, str), 'pattern is not a string: {}'.format(text)


    # instead of starting at 0, I can start where i found patter and start at the index + 1
    index = 0
    window = len(pattern)
    indexes = []

    if pattern == '':
        # for empty pattern creates list of indecies of the text
        return list(range(len(text)))

    else:
        # greater or equals to catch the patter if it's last index
        while index <= len(text) - 1:
            if pattern == text[index:window + index]:
                indexes.append(index)
            index += 1

    return indexes