@classmethod
def from_mark5b_frame(cls, mark5b_frame, verify=True, **kwargs):
    """Construct an Mark5B over VDIF frame (EDV=0xab).

        Any additional keywords can be used to set VDIF header properties
        not found in the Mark 5B header (such as station).

        See https://vlbi.org/wp-content/uploads/2019/03/vdif_extension_0xab.pdf
        """
    m5h, m5pl = mark5b_frame.header, mark5b_frame.payload
    header = cls._header_class.from_mark5b_header(m5h, nchan=m5pl.
        sample_shape.nchan, bps=m5pl.bps, invalid_data=not mark5b_frame.
        valid, **kwargs)
    payload = cls._payload_class(m5pl.words, header)
    return cls(header, payload, verify)
