def check_length(min_length: int,
                 max_length: int,
                 mode: str = 'and',
                 *args) -> bool:
    """
    check items length is between min_length and max_length
    :param min_length: minimum length
    :param max_length: maximum length
    :param mode: check mode, 'and': all items need clear length check, 'or': more than one item need clear length check
    :param args: items
    :return: status, [correct] or [incorrect]
    """
    if mode == 'and':
        for item in args:
            if not (min_length <= len(item) <= max_length):
                return False  # if found incorrect item, stop check-loop and return False
        return True  # if can't found incorrect item, return True
    else:
        for item in args:
            if min_length <= len(item) <= max_length:
                return True  # if found correct item, stop check-loop and return True
        return False