'May return a None object if it\'s padding'

@classmethod
def unpack_new(cls, raw, offset=0):

    (offset, (v,)) = of._unpack('!H', raw, offset)
    if (v == 0):
        return (offset, None)
    n_bits = (v & 1023)
    (offset, src) = nx_learn_spec_src.unpack_subclass(((v >> 13) & 1), n_bits, raw, offset)
    (offset, dst) = nx_learn_spec_dst.unpack_subclass(((v >> 11) & 3), n_bits, raw, offset)
    return (offset, cls(src, dst, n_bits))
