def _valmatch(vs, ss, op, varsort, semi, section):
    """
    Return `True` if for every paired *v* and *s* from *vs* and *ss*:
        v <> s (subsumption or equality if *semi* is `None`)
        v == s (equality)
        s == '*'
        s == '!' and v == `None`
        s == '[xyz]' and varsort == 'xyz'
    """
    if op in _EQUAL_OPS or semi is None:
        return all(
            s == v or  # value equality
            (s == '*' and v is not None) or  # non-null wildcard
            (
                v is None and (  # value is null (any or with matching varsort)
                    s == '!' or
                    (s[0], s[-1], s[1:-1]) == ('[', ']', varsort)
                )
            )
            for v, s in zip(vs, ss)
        )
    else:
        pass
def _valmatch ( vs , ss , op , varsort , semi , section ) : if op in _EQUAL_OPS or semi is None : return all ( s == v or ( s == '*' and v is not None ) or ( v is None and ( s == '!' or ( s [ 0 ] , s [ - 1 ] , s [ 1 : - 1 ] ) == ( '[' , ']' , varsort ) ) ) for v , s in zip ( vs , ss ) ) else : pass
Return `True` if for every paired *v* and *s* from *vs* and *ss*:
        v <> s (subsumption or equality if *semi* is `None`)
        v == s (equality)
        s == '*'
        s == '!' and v == `None`
        s == '[xyz]' and varsort == 'xyz'