class CarStockStatus:
    STATUS_AVAILABLE = "available"
    STATUS_SOLD = "sold"
    STATUS_RESERVED = "reserved"
    STATUS_INACTIVE = "inactive"

    @classmethod
    def choices(cls):
        return (
            (cls.STATUS_AVAILABLE, "Available"),
            (cls.STATUS_SOLD, "Sold"),
            (cls.STATUS_RESERVED, "Reserved"),
            (cls.STATUS_INACTIVE, "Inactive"),
        )

    @classmethod
    def values(cls):
        return {
            cls.STATUS_AVAILABLE,
            cls.STATUS_SOLD,
            cls.STATUS_RESERVED,
            cls.STATUS_INACTIVE
        }

    @classmethod
    def is_valid(cls, value: str) -> bool:
        return value in cls.values()
