from typing import List
import re


def split_on_caps(input_str: str) -> List[str]:
    """Split a given string at uppercase characters.
    Taken from: https://stackoverflow.com/questions/2277352/split-a-string-at-uppercase-letters

    Args:
        input_str (str): string to split.

    Returns:
        List[str]: splits of the given string.
    """
    return re.findall("[A-Z][^A-Z]*", input_str)