@class_cloner
    def including_descent_validators(cls, *validators, **kw):
        """Return a class with additional descent *\*validators*.

        :param \*validators: one or more validator functions

        :param position: defaults to -1.  By default, additional validators
          are placed after existing descent validators.  Use 0 for before, or
          any other list index to splice in *validators* at that point.

        :returns: a new class
        """
        position = kw.pop('position', -1)
        if kw:
            raise TypeError('including_validators() got an '
                            'unexpected keyword argument %r' % (
                                kw.popitem()[0]))
        mutable = list(cls.descent_validators)
        if 0 < position:
            position = len(mutable) + 1 + position
        mutable[position:position] = list(validators)
        cls.descent_validators = mutable
        return cls
dataset/ETHPy150Open jek/flatland/flatland/schema/containers.py/Container.including_descent_validators/swapped operands of `<`