def nested_dict_get(dictionary, *keys, **kargs):
    """Get an item from a nested dictionary.

    Checks if an item exists in a nested level by keys in a dictionary and if
    yes returns it. Otherwise return default.

    Parameters
    ----------
        dictionary : dict
            The dictionary that is going to be parsed.

        keys : list(hashable)
            A list of keys.

        default : object, default=None
            The value to return, if the element is not found.

    Returns
    -------
        dict_elem : object
            Returns either the dictionary element or the value in default.

    """
    if len(kargs) == 1 and 'default':
        default = kargs['default']
    elif len(kargs) == 0:
        default = None
    else:
        raise TypeError('optional argument can only be "default"')
    element = dictionary
    for k in keys:
        if k in element:
            element = element[k]
        else:
            return default
    return element
