def _case_convert_snake_to_camel(token: str) -> str:
    """Implements logic to convert a snake case token to a camel case one.
    """
    while True:
        try:
            # find next underscore
            underscore_loc = token.index('_')
        except ValueError:
            # converted all underscores
            break
        # is the underscore at the end of the string?
        if underscore_loc == len(token) - 1:
            break

        orig = token
        token = f'{orig[:underscore_loc]}{orig[underscore_loc+1].upper()}'
        # is there more after the capital?
        if len(orig) > underscore_loc+2:
            token += f'{orig[underscore_loc+2:]}'
    return token