def _str_to_bool(self, expr: T.Union[(str, T.List[str])]) -> bool:
    if (not expr):
        return False
    if isinstance(expr, list):
        expr_str = expr[0]
    else:
        expr_str = expr
    expr_str = expr_str.upper()
    return ((expr_str not in ['0', 'OFF', 'NO', 'FALSE', 'N', 'IGNORE']) and (not expr_str.endswith('NOTFOUND')))
def _str_to_bool(self, expr: T.Union[(str, T.List[str])]) -> bool:
    if (not expr):
        return False
    if isinstance(expr, list):
        expr_str = expr[0]
    else:
        expr_str = expr
    expr_str = expr_str.upper()
    return ((expr_str not in ['0', 'OFF', 'NO', 'FALSE', 'N', 'IGNORE']) and (not expr_str.endswith('NOTFOUND')))