<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def pclass(self, bases):
 """ Create a ``pyrsistent.PClass`` subclass representing this class. :param tuple bases: Additional base classes to give the resulting class. These will appear to the left of ``PClass``. """

        def discard_constant_fields(cls, **kwargs):
            def ctor():
                return super(huh, cls).__new__(cls, **kwargs)
            try:
                return ctor()
            except AttributeError:
                if u"kind" in kwargs or u"apiVersion" in kwargs:
                    kwargs.pop("kind", None)
                    kwargs.pop("apiVersion", None)
                    return ctor()
                raise


        def lt_pclass(self, other):
            if isinstance(other, self.__class__):
                return sorted(self.serialize().items()) < sorted(other.serialize().items())
            return NotImplemented


        def eq_pclass(self, other):
            if isinstance(other, self.__class__):
                return sorted(self.serialize().items()) == sorted(other.serialize().items())
            return NotImplemented


        content = {
            attr.name: attr.pclass_field_for_attribute()
            for attr
            in self.attributes
        }
        content["__doc__"] = nativeString(self.doc)
        content["serialize"] = _serialize_with_omit
        content["__new__"] = discard_constant_fields
        content["__lt__"] = lt_pclass
        content["__eq__"] = eq_pclass
        content["__hash__"] = PClass.__hash__
        content = total_ordering(content)
        huh = type(nativeString(self.name), bases + (PClass,), content)
        return huh