@classmethod
    def _deserialize(cls, io):
        major_brand = FourCC.read(io)
        minor_version = U32BE.read(io)
        compatible_brands = []

        while True:
            try:
                brand = FourCC.read(io)
            except __HOLE__:
                break

            compatible_brands.append(brand)

        return cls(major_brand, minor_version,
                   compatible_brands)
dataset/ETHPy150Open chrippa/livestreamer/src/livestreamer/packages/flashmedia/box.py/BoxPayloadFTYP._deserialize