def split_on_uppercase(string: str):
    """
    Splits a string on any uppercase letter

    Parameters
    -----------
        string: str
            The string to split

    Returns
    -------
        list
            The string splitted
    """
    start = 0
    results = []
    string = str(string)
    length = len(string)
    for index, letter in enumerate(string):
        if letter.isupper() and (string[index - 1].islower() or (length > index + 1 and string[index + 1].islower())):
            results.append(string[start:index])
            start = index
    results.append(string[start:])
    return results