def rsplit(text, token=' ', maxsplit=-1):
    """
    Returns a list of the words in the provided string, separated by the delimiter string (starting from right).
    :param text: the string should be rsplit
    :param token: token dividing the string into split groups; default is space.
    :param maxsplit: Number of splits to do; default is -1 which splits all the items.
    :return: list of string elements
    """
    if maxsplit == 0:
        result = [text]
    else:
        components = text.split(token)
        if maxsplit > 0:
            desired_length = maxsplit + 1
            result = []
            if len(components) > desired_length:
                result.append('')
                for index, value in enumerate(components):
                    if index < len(components) - maxsplit:
                        if index > 0:
                            result[0] += token
                        result[0] += value
                    else:
                        result.append(value)
        else:
            result = components
    return result