[PR] avcodec/dstdec: add raw_dsd option to output the DSD bitstream (PR #23939)
Kacper Michajłow via ffmpeg-devel <[email protected]> Tue, 28 Jul 2026 12:41:59 -0000
| Newsgroups | gmane.comp.video.ffmpeg.devel |
|---|---|
| Message-ID | <178524252015.51.18076807248152324634@29965ddac10e> |
UFIgIzIzOTM5IG9wZW5lZCBieSBLYWNwZXIgTWljaGFqxYJvdyAoa2FzcGVyOTMpClVSTDogaHR0 cHM6Ly9jb2RlLmZmbXBlZy5vcmcvRkZtcGVnL0ZGbXBlZy9wdWxscy8yMzkzOQpQYXRjaCBVUkw6 IGh0dHBzOi8vY29kZS5mZm1wZWcub3JnL0ZGbXBlZy9GRm1wZWcvcHVsbHMvMjM5MzkucGF0Y2gK CgpGcm9tIDI1MWJkZmZmZmM2ZThmN2M2ZWI4ZmMxYTNhNWNhYWEyMWM4Mzc5YjYgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT9LYWNwZXI9MjBNaWNoYWo9QzU9ODJvdz89 IDxrYXNwZXI5M0BnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMjggSnVsIDIwMjYgMDE6NDE6MzYgKzAy MDAKU3ViamVjdDogW1BBVENIIDEvMl0gYXZjb2RlYy9kc3RkZWM6IGZpeCBkZWNvZGluZyBvZiB1 bmNvbXByZXNzZWQgZnJhbWVzCgpUaGUgRFNEIHBheWxvYWQgb2YgYW4gdW5jb21wcmVzc2VkIGZy YW1lIHdhcyBjb3BpZWQgcGFja2VkIGludG8gdGhlCm91dHB1dCBidWZmZXIsIGJ1dCB0aGUgaW4t cGxhY2UgRFNEIHRvIFBDTSBjb252ZXJzaW9uIGV4cGVjdHMgdGhlIERTRApieXRlcyBpbiBldmVy eSA0dGggYnl0ZSwgaW4gdGhlIHBsYWNlIG9mIHRoZSBmbG9hdCBzYW1wbGUgdGhleSBwcm9kdWNl LgoKVGhpcyB3YXMgYWx3YXlzIGJyb2tlbiwgYnV0IEkgZ3Vlc3MsIHRoZSB1bmNvbXByZXNzZWQg RFNUIGlzIHNvbWV0aGluZwp0aGF0IGV4aXN0cyBvbmx5IG9uIHBhcGVyLgotLS0KIGxpYmF2Y29k ZWMvZHN0ZGVjLmMgfCA5ICsrKysrKysrLQogMSBmaWxlIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvZHN0ZGVjLmMgYi9saWJh dmNvZGVjL2RzdGRlYy5jCmluZGV4IGQ3NDc2NzAxNDEuLjFkYjc0MmQxOTMgMTAwNjQ0Ci0tLSBh L2xpYmF2Y29kZWMvZHN0ZGVjLmMKKysrIGIvbGliYXZjb2RlYy9kc3RkZWMuYwpAQCAtMjY4LDEw ICsyNjgsMTcgQEAgc3RhdGljIGludCBkZWNvZGVfZnJhbWUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4 LCBBVkZyYW1lICpmcmFtZSwKICAgICAgICAgcmV0dXJuIHJldDsKIAogICAgIGlmICghZ2V0X2Jp dHMxKGdiKSkgeworICAgICAgICB1bnNpZ25lZCB0b3RhbCA9IGZyYW1lLT5uYl9zYW1wbGVzICog Y2hhbm5lbHM7CisgICAgICAgIHVuc2lnbmVkIG4gPSBGRk1JTihhdnBrdC0+c2l6ZSAtIDEsIHRv dGFsKTsKICAgICAgICAgc2tpcF9iaXRzMShnYik7CiAgICAgICAgIGlmIChnZXRfYml0cyhnYiwg NikpCiAgICAgICAgICAgICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKLSAgICAgICAgbWVt Y3B5KGZyYW1lLT5kYXRhWzBdLCBhdnBrdC0+ZGF0YSArIDEsIEZGTUlOKGF2cGt0LT5zaXplIC0g MSwgZnJhbWUtPm5iX3NhbXBsZXMgKiBjaGFubmVscykpOworICAgICAgICAvLyBEU0QgYnl0ZXMg YXJlIHN0b3JlZCBpbiBldmVyeSA0dGggYnl0ZSwgYXMgZXhwZWN0ZWQgYnkgdGhlCisgICAgICAg IC8vIGluLXBsYWNlIERTRCB0byBQQ00gY29udmVyc2lvbi4gUGFkIHNob3J0IGZyYW1lcyB3aXRo IHNpbGVuY2UuCisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspCisgICAgICAgICAgICBk c2RbaSAqIDRdID0gYXZwa3QtPmRhdGFbMSArIGldOworICAgICAgICBmb3IgKDsgaSA8IHRvdGFs OyBpKyspCisgICAgICAgICAgICBkc2RbaSAqIDRdID0gMHg2OTsKICAgICAgICAgZ290byBkc2Q7 CiAgICAgfQogCi0tIAoyLjUyLjAKCgpGcm9tIDc2NDgwOTVkZmVhNzk4ODMwYmY4MDE5YzQ0MDYx YmIxZDkwNTcwYzAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT9LYWNw ZXI9MjBNaWNoYWo9QzU9ODJvdz89IDxrYXNwZXI5M0BnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMjgg SnVsIDIwMjYgMDE6NDI6MDIgKzAyMDAKU3ViamVjdDogW1BBVENIIDIvMl0gYXZjb2RlYy9kc3Rk ZWM6IGFkZCByYXdfZHNkIG9wdGlvbiB0byBvdXRwdXQgdGhlIERTRAogYml0c3RyZWFtCgpXaGVu IGVuYWJsZWQsIG91dHB1dCB0aGUgbG9zc2xlc3NseSBkZWNvbXByZXNzZWQgRFNEIGJpdHN0cmVh bSBhcwp1bnNpZ25lZCA4LWJpdCBzYW1wbGVzIChvbmUgYnl0ZSBwZXIgOCBEU0QgYml0cywgTVNC IGZpcnN0LCBjaGFubmVscwppbnRlcmxlYXZlZCwgYXQgdGhlIHVzdWFsIERTRCBieXRlIHJhdGUp IGluc3RlYWQgb2YgY29udmVydGluZyB0byBmbG9hdApQQ00uIFRoaXMgYWxsb3dzIGJpdC1leGFj dCBwYXNzLXRocm91Z2ggb2YgRFNUIGNvbXByZXNzZWQgYXVkaW8sIGUuZy4KYXMgRFNELW92ZXIt UENNIChEb1ApIHRvIERTRCBjYXBhYmxlIGF1ZGlvIGRldmljZXMuCgpCeSBkZWZhdWx0IHRoZSBj b252ZXJzaW9uIHRvIFBDTSBpcyBkb25lIGFzIGJlZm9yZS4KLS0tCiBkb2MvZGVjb2RlcnMudGV4 aSAgICB8IDE4ICsrKysrKysrKysrKysrKwogbGliYXZjb2RlYy9kc3RkZWMuYyAgfCA1MiArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQogbGliYXZjb2RlYy92ZXJz aW9uLmggfCAgMiArLQogMyBmaWxlcyBjaGFuZ2VkLCA1OCBpbnNlcnRpb25zKCspLCAxNCBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2MvZGVjb2RlcnMudGV4aSBiL2RvYy9kZWNvZGVycy50 ZXhpCmluZGV4IGM4MTc3YzE1ZTcuLmNhNjVlMzc3NTkgMTAwNjQ0Ci0tLSBhL2RvYy9kZWNvZGVy cy50ZXhpCisrKyBiL2RvYy9kZWNvZGVycy50ZXhpCkBAIC0yODIsNiArMjgyLDI0IEBAIExvdWQg c291bmRzIGFyZSBmdWxseSBjb21wcmVzc2VkLiAgU29mdCBzb3VuZHMgYXJlIGVuaGFuY2VkLgog CiBAZW5kIHRhYmxlCiAKK0BzZWN0aW9uIGRzdAorCitEU1QgKERpcmVjdCBTdHJlYW0gVHJhbnNm ZXIpIGF1ZGlvIGRlY29kZXIuCisKK0xvc3NsZXNzIERTRCAoRGlyZWN0IFN0cmVhbSBEaWdpdGFs KSBjb21wcmVzc2lvbiwgdXNlZCBpbiBEU0RJRkYgZmlsZXMgYW5kCitvbiBTdXBlciBBdWRpbyBD RC4KKworQHN1YnNlY3Rpb24gRFNUIERlY29kZXIgT3B0aW9ucworCitAdGFibGUgQG9wdGlvbgor CitAaXRlbSAtcmF3X2RzZCBAdmFye2Jvb2xlYW59CitPdXRwdXQgdGhlIGxvc3NsZXNzbHkgZGVj b21wcmVzc2VkIHJhdyBEU0QgYml0c3RyZWFtIGFzIHVuc2lnbmVkIDgtYml0CitzYW1wbGVzIChv bmUgYnl0ZSBwZXIgOCBEU0QgYml0cywgbW9zdCBzaWduaWZpY2FudCBiaXQgZmlyc3QsIGNoYW5u ZWxzCitpbnRlcmxlYXZlZCkgaW5zdGVhZCBvZiBjb252ZXJ0aW5nIHRvIFBDTS4KKworQGVuZCB0 YWJsZQorCiBAc2VjdGlvbiBmbGFjCiAKIEZMQUMgYXVkaW8gZGVjb2Rlci4KZGlmZiAtLWdpdCBh L2xpYmF2Y29kZWMvZHN0ZGVjLmMgYi9saWJhdmNvZGVjL2RzdGRlYy5jCmluZGV4IDFkYjc0MmQx OTMuLjVlN2FmMGQ3MWYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvZHN0ZGVjLmMKKysrIGIvbGli YXZjb2RlYy9kc3RkZWMuYwpAQCAtMjcsNiArMjcsNyBAQAogCiAjaW5jbHVkZSAibGliYXZ1dGls L2ludHJlYWR3cml0ZS5oIgogI2luY2x1ZGUgImxpYmF2dXRpbC9tZW1faW50ZXJuYWwuaCIKKyNp bmNsdWRlICJsaWJhdnV0aWwvb3B0LmgiCiAjaW5jbHVkZSAibGliYXZ1dGlsL3JldmVyc2UuaCIK ICNpbmNsdWRlICJjb2RlY19pbnRlcm5hbC5oIgogI2luY2x1ZGUgImRlY29kZS5oIgpAQCAtNjcs NiArNjgsNyBAQCB0eXBlZGVmIHN0cnVjdCBUYWJsZSB7CiAKIHR5cGVkZWYgc3RydWN0IERTVENv bnRleHQgewogICAgIEFWQ2xhc3MgKmNsYXNzOworICAgIGludCByYXdfZHNkOwogCiAgICAgR2V0 Qml0Q29udGV4dCBnYjsKICAgICBBcml0aENvZGVyIGFjOwpAQCAtOTYsNyArOTgsNyBAQCBzdGF0 aWMgYXZfY29sZCBpbnQgZGVjb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgICAg ICByZXR1cm4gQVZFUlJPUl9QQVRDSFdFTENPTUU7CiAgICAgfQogCi0gICAgYXZjdHgtPnNhbXBs ZV9mbXQgPSBBVl9TQU1QTEVfRk1UX0ZMVDsKKyAgICBhdmN0eC0+c2FtcGxlX2ZtdCA9IHMtPnJh d19kc2QgPyBBVl9TQU1QTEVfRk1UX1U4IDogQVZfU0FNUExFX0ZNVF9GTFQ7CiAKICAgICBmb3Ig KGkgPSAwOyBpIDwgYXZjdHgtPmNoX2xheW91dC5uYl9jaGFubmVsczsgaSsrKQogICAgICAgICBt ZW1zZXQocy0+ZHNkY3R4W2ldLmJ1ZiwgMHg2OSwgc2l6ZW9mKHMtPmRzZGN0eFtpXS5idWYpKTsK QEAgLTI0OCw2ICsyNTAsNyBAQCBzdGF0aWMgaW50IGRlY29kZV9mcmFtZShBVkNvZGVjQ29udGV4 dCAqYXZjdHgsIEFWRnJhbWUgKmZyYW1lLAogICAgIHVuc2lnbmVkIGksIGNoLCBzYW1lX21hcCwg ZHN0X3hfYml0OwogICAgIHVuc2lnbmVkIGhhbGZfcHJvYltEU1RfTUFYX0NIQU5ORUxTXTsKICAg ICBjb25zdCBpbnQgY2hhbm5lbHMgPSBhdmN0eC0+Y2hfbGF5b3V0Lm5iX2NoYW5uZWxzOworICAg IGNvbnN0IGludCBicHMgPSBhdmN0eC0+c2FtcGxlX2ZtdCA9PSBBVl9TQU1QTEVfRk1UX1U4ID8g MSA6IDQ7CiAgICAgRFNUQ29udGV4dCAqcyA9IGF2Y3R4LT5wcml2X2RhdGE7CiAgICAgR2V0Qml0 Q29udGV4dCAqZ2IgPSAmcy0+Z2I7CiAgICAgQXJpdGhDb2RlciAqYWMgPSAmcy0+YWM7CkBAIC0y NzMsMTIgKzI3NiwxNyBAQCBzdGF0aWMgaW50IGRlY29kZV9mcmFtZShBVkNvZGVjQ29udGV4dCAq YXZjdHgsIEFWRnJhbWUgKmZyYW1lLAogICAgICAgICBza2lwX2JpdHMxKGdiKTsKICAgICAgICAg aWYgKGdldF9iaXRzKGdiLCA2KSkKICAgICAgICAgICAgIHJldHVybiBBVkVSUk9SX0lOVkFMSURE QVRBOwotICAgICAgICAvLyBEU0QgYnl0ZXMgYXJlIHN0b3JlZCBpbiBldmVyeSA0dGggYnl0ZSwg YXMgZXhwZWN0ZWQgYnkgdGhlCi0gICAgICAgIC8vIGluLXBsYWNlIERTRCB0byBQQ00gY29udmVy c2lvbi4gUGFkIHNob3J0IGZyYW1lcyB3aXRoIHNpbGVuY2UuCi0gICAgICAgIGZvciAoaSA9IDA7 IGkgPCBuOyBpKyspCi0gICAgICAgICAgICBkc2RbaSAqIDRdID0gYXZwa3QtPmRhdGFbMSArIGld OwotICAgICAgICBmb3IgKDsgaSA8IHRvdGFsOyBpKyspCi0gICAgICAgICAgICBkc2RbaSAqIDRd ID0gMHg2OTsKKyAgICAgICAgaWYgKGJwcyA9PSAxKSB7CisgICAgICAgICAgICBtZW1jcHkoZHNk LCBhdnBrdC0+ZGF0YSArIDEsIG4pOworICAgICAgICAgICAgbWVtc2V0KGRzZCArIG4sIDB4Njks IHRvdGFsIC0gbik7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAvLyBEU0QgYnl0ZXMg YXJlIHN0b3JlZCBpbiBldmVyeSA0dGggYnl0ZSwgYXMgZXhwZWN0ZWQgYnkgdGhlCisgICAgICAg ICAgICAvLyBpbi1wbGFjZSBEU0QgdG8gUENNIGNvbnZlcnNpb24uIFBhZCBzaG9ydCBmcmFtZXMg d2l0aCBzaWxlbmNlLgorICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IG47IGkrKykKKyAgICAg ICAgICAgICAgICBkc2RbaSAqIDRdID0gYXZwa3QtPmRhdGFbMSArIGldOworICAgICAgICAgICAg Zm9yICg7IGkgPCB0b3RhbDsgaSsrKQorICAgICAgICAgICAgICAgIGRzZFtpICogNF0gPSAweDY5 OworICAgICAgICB9CiAgICAgICAgIGdvdG8gZHNkOwogICAgIH0KIApAQCAtMzQzLDcgKzM1MSw3 IEBAIHN0YXRpYyBpbnQgZGVjb2RlX2ZyYW1lKEFWQ29kZWNDb250ZXh0ICphdmN0eCwgQVZGcmFt ZSAqZnJhbWUsCiAgICAgICAgIHJldHVybiByZXQ7CiAKICAgICBtZW1zZXQocy0+c3RhdHVzLCAw eEFBLCBzaXplb2Yocy0+c3RhdHVzKSk7Ci0gICAgbWVtc2V0KGRzZCwgMCwgZnJhbWUtPm5iX3Nh bXBsZXMgKiA0ICogY2hhbm5lbHMpOworICAgIG1lbXNldChkc2QsIDAsIGZyYW1lLT5uYl9zYW1w bGVzICogYnBzICogY2hhbm5lbHMpOwogCiAgICAgYWNfZ2V0KGFjLCBnYiwgcHJvYl9kc3RfeF9i aXQocy0+ZnNldHMuY29lZmZbMF1bMF0pLCAmZHN0X3hfYml0KTsKIApAQCAtMzcxLDcgKzM3OSw3 IEBAIHN0YXRpYyBpbnQgZGVjb2RlX2ZyYW1lKEFWQ29kZWNDb250ZXh0ICphdmN0eCwgQVZGcmFt ZSAqZnJhbWUsCiAKICAgICAgICAgICAgIGFjX2dldChhYywgZ2IsIHByb2IsICZyZXNpZHVhbCk7 CiAgICAgICAgICAgICB2ID0gKChwcmVkaWN0ID4+IDE1KSBeIHJlc2lkdWFsKSAmIDE7Ci0gICAg ICAgICAgICBkc2RbKChpID4+IDMpICogY2hhbm5lbHMgKyBjaCkgPDwgMl0gfD0gdiA8PCAoNyAt IChpICYgMHg3ICkpOworICAgICAgICAgICAgZHNkWygoaSA+PiAzKSAqIGNoYW5uZWxzICsgY2gp ICogYnBzXSB8PSB2IDw8ICg3IC0gKGkgJiAweDcgKSk7CiAKICAgICAgICAgICAgIEFWX1dMNjRB KHN0YXR1cyArIDgsIChBVl9STDY0QShzdGF0dXMgKyA4KSA8PCAxKSB8ICgoQVZfUkw2NEEoc3Rh dHVzKSA+PiA2MykgJiAxKSk7CiAgICAgICAgICAgICBBVl9XTDY0QShzdGF0dXMsIChBVl9STDY0 QShzdGF0dXMpIDw8IDEpIHwgdik7CkBAIC0zNzksMTAgKzM4NywxMiBAQCBzdGF0aWMgaW50IGRl Y29kZV9mcmFtZShBVkNvZGVjQ29udGV4dCAqYXZjdHgsIEFWRnJhbWUgKmZyYW1lLAogICAgIH0K IAogZHNkOgotICAgIGZvciAoaSA9IDA7IGkgPCBjaGFubmVsczsgaSsrKSB7Ci0gICAgICAgIGZm X2RzZDJwY21fdHJhbnNsYXRlKCZzLT5kc2RjdHhbaV0sIGZyYW1lLT5uYl9zYW1wbGVzLCAwLAot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZGF0YVswXSArIGkgKiA0LAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFubmVscyAqIDQsIHBjbSArIGksIGNoYW5uZWxz KTsKKyAgICBpZiAoYXZjdHgtPnNhbXBsZV9mbXQgPT0gQVZfU0FNUExFX0ZNVF9GTFQpIHsKKyAg ICAgICAgZm9yIChpID0gMDsgaSA8IGNoYW5uZWxzOyBpKyspIHsKKyAgICAgICAgICAgIGZmX2Rz ZDJwY21fdHJhbnNsYXRlKCZzLT5kc2RjdHhbaV0sIGZyYW1lLT5uYl9zYW1wbGVzLCAwLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWUtPmRhdGFbMF0gKyBpICogNCwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5uZWxzICogNCwgcGNtICsgaSwgY2hh bm5lbHMpOworICAgICAgICB9CiAgICAgfQogCiAgICAgKmdvdF9mcmFtZV9wdHIgPSAxOwpAQCAt MzkwLDExICs0MDAsMjcgQEAgZHNkOgogICAgIHJldHVybiBhdnBrdC0+c2l6ZTsKIH0KIAorI2Rl ZmluZSBPRkZTRVQoeCkgb2Zmc2V0b2YoRFNUQ29udGV4dCwgeCkKKyNkZWZpbmUgQUQgQVZfT1BU X0ZMQUdfQVVESU9fUEFSQU0gfCBBVl9PUFRfRkxBR19ERUNPRElOR19QQVJBTQorCitzdGF0aWMg Y29uc3QgQVZPcHRpb24gb3B0aW9uc1tdID0geworICAgIHsgInJhd19kc2QiLCAib3V0cHV0IHJh dyBEU0QgYml0c3RyZWFtIGluc3RlYWQgb2YgZGVjb2RpbmcgdG8gUENNIiwKKyAgICAgIE9GRlNF VChyYXdfZHNkKSwgQVZfT1BUX1RZUEVfQk9PTCwgeyAuaTY0ID0gMCB9LCAwLCAxLCBBRCB9LAor ICAgIHsgTlVMTCB9Cit9OworCitzdGF0aWMgY29uc3QgQVZDbGFzcyBkc3RfZGVjb2Rlcl9jbGFz cyA9IHsKKyAgICAuY2xhc3NfbmFtZSA9ICJEU1QgZGVjb2RlciIsCisgICAgLm9wdGlvbiAgICAg PSBvcHRpb25zLAorICAgIC52ZXJzaW9uICAgID0gTElCQVZVVElMX1ZFUlNJT05fSU5ULAorfTsK KwogY29uc3QgRkZDb2RlYyBmZl9kc3RfZGVjb2RlciA9IHsKICAgICAucC5uYW1lICAgICAgICAg PSAiZHN0IiwKICAgICBDT0RFQ19MT05HX05BTUUoIkRTVCAoRGlnaXRhbCBTdHJlYW0gVHJhbnNm ZXIpIiksCiAgICAgLnAudHlwZSAgICAgICAgID0gQVZNRURJQV9UWVBFX0FVRElPLAogICAgIC5w LmlkICAgICAgICAgICA9IEFWX0NPREVDX0lEX0RTVCwKKyAgICAucC5wcml2X2NsYXNzICAgPSAm ZHN0X2RlY29kZXJfY2xhc3MsCiAgICAgLnByaXZfZGF0YV9zaXplID0gc2l6ZW9mKERTVENvbnRl eHQpLAogICAgIC5pbml0ICAgICAgICAgICA9IGRlY29kZV9pbml0LAogICAgIEZGX0NPREVDX0RF Q09ERV9DQihkZWNvZGVfZnJhbWUpLApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy92ZXJzaW9uLmgg Yi9saWJhdmNvZGVjL3ZlcnNpb24uaAppbmRleCAzOWRiZWMwMjA4Li5iNjMzNjEyMzQxIDEwMDY0 NAotLS0gYS9saWJhdmNvZGVjL3ZlcnNpb24uaAorKysgYi9saWJhdmNvZGVjL3ZlcnNpb24uaApA QCAtMzAsNyArMzAsNyBAQAogI2luY2x1ZGUgInZlcnNpb25fbWFqb3IuaCIKIAogI2RlZmluZSBM SUJBVkNPREVDX1ZFUlNJT05fTUlOT1IgICA2Ci0jZGVmaW5lIExJQkFWQ09ERUNfVkVSU0lPTl9N SUNSTyAxMDEKKyNkZWZpbmUgTElCQVZDT0RFQ19WRVJTSU9OX01JQ1JPIDEwMgogCiAjZGVmaW5l IExJQkFWQ09ERUNfVkVSU0lPTl9JTlQgIEFWX1ZFUlNJT05fSU5UKExJQkFWQ09ERUNfVkVSU0lP Tl9NQUpPUiwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBMSUJBVkNPREVDX1ZFUlNJT05fTUlOT1IsIFwKLS0gCjIuNTIuMAoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZmZtcGVnLWRldmVsIG1haWxpbmcgbGlz dCAtLSBmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZwpUbyB1bnN1YnNjcmliZSBzZW5kIGFuIGVtYWls IHRvIGZmbXBlZy1kZXZlbC1sZWF2ZUBmZm1wZWcub3JnCg==